@builder.io/sdk 1.1.27-4 → 1.1.27-5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/.envrc +1 -0
  2. package/.task/checksum/build +1 -0
  3. package/CHANGELOG.md +1 -1
  4. package/Taskfile.yaml +15 -0
  5. package/coverage/clover.xml +6 -0
  6. package/coverage/coverage-final.json +1 -0
  7. package/coverage/lcov-report/base.css +224 -0
  8. package/coverage/lcov-report/block-navigation.js +87 -0
  9. package/coverage/lcov-report/favicon.png +0 -0
  10. package/coverage/lcov-report/index.html +101 -0
  11. package/coverage/lcov-report/prettify.css +1 -0
  12. package/coverage/lcov-report/prettify.js +2 -0
  13. package/coverage/lcov-report/query-string.class.ts.html +328 -0
  14. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  15. package/coverage/lcov-report/sorter.js +196 -0
  16. package/coverage/lcov-report/url.ts.html +253 -0
  17. package/coverage/lcov.info +0 -0
  18. package/dist/index.browser.js +1 -1
  19. package/dist/index.browser.js.map +1 -1
  20. package/dist/index.cjs.js +107 -62
  21. package/dist/index.cjs.js.map +1 -1
  22. package/dist/index.esm.js +107 -62
  23. package/dist/index.esm.js.map +1 -1
  24. package/dist/index.umd.js +107 -62
  25. package/dist/index.umd.js.map +1 -1
  26. package/dist/package.json +1 -1
  27. package/dist/src/builder.class.d.ts +0 -5
  28. package/dist/src/builder.class.js +31 -52
  29. package/dist/src/builder.class.js.map +1 -1
  30. package/dist/src/functions/fetch.function.d.ts +2 -2
  31. package/dist/src/functions/fetch.function.js +10 -7
  32. package/dist/src/functions/fetch.function.js.map +1 -1
  33. package/dist/src/functions/to-error.d.ts +13 -0
  34. package/dist/src/functions/to-error.js +22 -0
  35. package/dist/src/functions/to-error.js.map +1 -0
  36. package/dist/src/url.d.ts +9 -0
  37. package/dist/src/url.js +51 -0
  38. package/dist/src/url.js.map +1 -0
  39. package/dist/src/url.test.d.ts +1 -0
  40. package/dist/src/url.test.js +129 -0
  41. package/dist/src/url.test.js.map +1 -0
  42. package/dist/tsconfig.tsbuildinfo +1 -0
  43. package/package.json +1 -1
  44. package/tsconfig.json +15 -3
@@ -0,0 +1,253 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for url.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="prettify.css" />
9
+ <link rel="stylesheet" href="base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="index.html">All files</a> url.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">100% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>56/56</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">71.42% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>5/7</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">75% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>3/4</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>56/56</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a>
96
+ <a name='L31'></a><a href='#L31'>31</a>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a>
113
+ <a name='L48'></a><a href='#L48'>48</a>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a>
119
+ <a name='L54'></a><a href='#L54'>54</a>
120
+ <a name='L55'></a><a href='#L55'>55</a>
121
+ <a name='L56'></a><a href='#L56'>56</a>
122
+ <a name='L57'></a><a href='#L57'>57</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">5x</span>
123
+ <span class="cline-any cline-yes">1x</span>
124
+ <span class="cline-any cline-yes">1x</span>
125
+ <span class="cline-any cline-yes">1x</span>
126
+ <span class="cline-any cline-yes">1x</span>
127
+ <span class="cline-any cline-yes">1x</span>
128
+ <span class="cline-any cline-yes">1x</span>
129
+ <span class="cline-any cline-yes">1x</span>
130
+ <span class="cline-any cline-yes">5x</span>
131
+ <span class="cline-any cline-yes">5x</span>
132
+ <span class="cline-any cline-yes">5x</span>
133
+ <span class="cline-any cline-yes">5x</span>
134
+ <span class="cline-any cline-yes">5x</span>
135
+ <span class="cline-any cline-yes">5x</span>
136
+ <span class="cline-any cline-yes">5x</span>
137
+ <span class="cline-any cline-yes">5x</span>
138
+ <span class="cline-any cline-yes">5x</span>
139
+ <span class="cline-any cline-yes">5x</span>
140
+ <span class="cline-any cline-yes">5x</span>
141
+ <span class="cline-any cline-yes">5x</span>
142
+ <span class="cline-any cline-yes">5x</span>
143
+ <span class="cline-any cline-yes">1x</span>
144
+ <span class="cline-any cline-yes">1x</span>
145
+ <span class="cline-any cline-yes">1x</span>
146
+ <span class="cline-any cline-yes">1x</span>
147
+ <span class="cline-any cline-yes">1x</span>
148
+ <span class="cline-any cline-yes">1x</span>
149
+ <span class="cline-any cline-yes">5x</span>
150
+ <span class="cline-any cline-yes">5x</span>
151
+ <span class="cline-any cline-yes">5x</span>
152
+ <span class="cline-any cline-yes">5x</span>
153
+ <span class="cline-any cline-yes">5x</span>
154
+ <span class="cline-any cline-yes">5x</span>
155
+ <span class="cline-any cline-yes">2x</span>
156
+ <span class="cline-any cline-yes">2x</span>
157
+ <span class="cline-any cline-yes">2x</span>
158
+ <span class="cline-any cline-yes">3x</span>
159
+ <span class="cline-any cline-yes">3x</span>
160
+ <span class="cline-any cline-yes">3x</span>
161
+ <span class="cline-any cline-yes">3x</span>
162
+ <span class="cline-any cline-yes">3x</span>
163
+ <span class="cline-any cline-yes">3x</span>
164
+ <span class="cline-any cline-yes">3x</span>
165
+ <span class="cline-any cline-yes">3x</span>
166
+ <span class="cline-any cline-yes">3x</span>
167
+ <span class="cline-any cline-yes">3x</span>
168
+ <span class="cline-any cline-yes">3x</span>
169
+ <span class="cline-any cline-yes">5x</span>
170
+ <span class="cline-any cline-yes">5x</span>
171
+ <span class="cline-any cline-yes">5x</span>
172
+ <span class="cline-any cline-yes">5x</span>
173
+ <span class="cline-any cline-yes">5x</span>
174
+ <span class="cline-any cline-yes">5x</span>
175
+ <span class="cline-any cline-yes">5x</span>
176
+ <span class="cline-any cline-yes">5x</span>
177
+ <span class="cline-any cline-yes">1x</span>
178
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="fstat-no" title="function not covered" >import { UrlWithStringQuery } from 'url';</span>
179
+ &nbsp;
180
+ type Fix&lt;T&gt; = { [P in keyof T]: T[P] | null };
181
+ &nbsp;
182
+ // It seems that the types for UrlWithStringQuery are not correct.
183
+ export type UrlLike = Fix&lt;UrlWithStringQuery&gt;;
184
+ &nbsp;
185
+ export function emptyUrl(): UrlLike {
186
+ return {
187
+ query: null,
188
+ port: null,
189
+ auth: null,
190
+ hash: null,
191
+ host: null,
192
+ hostname: null,
193
+ href: null,
194
+ path: null,
195
+ pathname: null,
196
+ protocol: null,
197
+ search: null,
198
+ slashes: null,
199
+ };
200
+ }
201
+ &nbsp;
202
+ // Replacement for `url.parse` using `URL` global object that works with relative paths.
203
+ // Assumptions: this function operates in a NodeJS environment.
204
+ export function parse(url: string): UrlLike {
205
+ const out: UrlLike = emptyUrl();
206
+ &nbsp;
207
+ let u;
208
+ const pathOnly = url === '' || url[0] === '/';
209
+ &nbsp;
210
+ if (pathOnly) {
211
+ u = new URL(url, 'http://0.0.0.0/');
212
+ out.href = u.href;
213
+ out.href = out.href.slice(14); // remove 'http://0.0.0.0/'
214
+ } else {
215
+ u = new URL(url);
216
+ out.href = u.href;
217
+ out.port = u.port === '' ? <span class="branch-0 cbranch-no" title="branch not covered" >null : u.port;</span>
218
+ out.hash = u.hash === '' ? <span class="branch-0 cbranch-no" title="branch not covered" >null : u.hash;</span>
219
+ out.host = u.host;
220
+ out.hostname = u.hostname;
221
+ out.href = u.href;
222
+ out.pathname = u.pathname;
223
+ out.protocol = u.protocol;
224
+ out.slashes = url[u.protocol.length] === '/'; // check if the mimetype is proceeded by a slash
225
+ }
226
+ &nbsp;
227
+ out.search = u.search;
228
+ out.query = u.search.slice(1); // remove '?'
229
+ out.path = `${u.pathname}${u.search}`;
230
+ out.pathname = u.pathname;
231
+ &nbsp;
232
+ return out;
233
+ }
234
+ &nbsp;</pre></td></tr></table></pre>
235
+
236
+ <div class='push'></div><!-- for sticky footer -->
237
+ </div><!-- /wrapper -->
238
+ <div class='footer quiet pad2 space-top1 center small'>
239
+ Code coverage generated by
240
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
241
+ at Fri Aug 05 2022 13:54:41 GMT-0400 (Eastern Daylight Time)
242
+ </div>
243
+ <script src="prettify.js"></script>
244
+ <script>
245
+ window.onload = function () {
246
+ prettyPrint();
247
+ };
248
+ </script>
249
+ <script src="sorter.js"></script>
250
+ <script src="block-navigation.js"></script>
251
+ </body>
252
+ </html>
253
+
File without changes
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define("@builder.io/sdk",["exports"],t):t(e.BuilderIO={})}(this,function(exports){"use strict";var __assign=function(){return(__assign=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};!function(){if("undefined"==typeof window||"function"==typeof window.CustomEvent)return!1;window.CustomEvent=function(e,t){t=t||{bubbles:!1,cancelable:!1,detail:null};var i=document.createEvent("CustomEvent");return i.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),i}}();var isSafari="undefined"!=typeof window&&/^((?!chrome|android).)*safari/i.test(window.navigator.userAgent);function nextTick(e){if("function"==typeof setImmediate&&"undefined"==typeof window)return setImmediate(e);if(isSafari||"undefined"==typeof MutationObserver)setTimeout(e);else{var t=0,i=new MutationObserver(function(){return e()}),n=document.createTextNode("");i.observe(n,{characterData:!0}),n.data=String(t=++t)}}var PROPERTY_NAME_DENY_LIST=Object.freeze(["__proto__","prototype","constructor"]),QueryString=function(){function e(){}return e.parseDeep=function(e){var t=this.parse(e);return this.deepen(t)},e.stringifyDeep=function(e){var t=this.flatten(e);return this.stringify(t)},e.parse=function(e){for(var t={},i=("?"===e[0]?e.substr(1):e).split("&"),n=0;n<i.length;n++){var r=i[n].split("=");try{t[decodeURIComponent(r[0])]=decodeURIComponent(r[1]||"")}catch(e){}}return t},e.stringify=function(e){var t="";for(var i in e)if(e.hasOwnProperty(i)){var n=e[i];t&&(t+="&"),t+=encodeURIComponent(i)+"="+encodeURIComponent(n)}return t},e.deepen=function(e){var t={};for(var i in e){for(var n=t,r=i.split("."),o=r.pop(),s=0,a=r;s<a.length;s++){var u=a[s];assertAllowedPropertyName(u),n=n[u]=n[u]||{}}n[o]=e[i]}return t},e.flatten=function(e,t,i){for(var n in void 0===i&&(i={}),e){var r=e[n],o=t?t+"."+n:n;r&&"object"==typeof r?this.flatten(r,o,i):i[o]=r}return i},e}();function assertAllowedPropertyName(e){if(PROPERTY_NAME_DENY_LIST.indexOf(e)>=0)throw new Error('Property name "'.concat(e,'" is not allowed'))}var version="1.1.27-3",Subscription=function(){function e(e,t){this.listeners=e,this.listener=t,this.unsubscribed=!1,this.otherSubscriptions=[]}return Object.defineProperty(e.prototype,"closed",{get:function(){return this.unsubscribed},enumerable:!1,configurable:!0}),e.prototype.add=function(e){this.otherSubscriptions.push(e)},e.prototype.unsubscribe=function(){if(!this.unsubscribed){if(this.listener&&this.listeners){var e=this.listeners.indexOf(this.listener);e>-1&&this.listeners.splice(e,1)}this.otherSubscriptions.forEach(function(e){return e.unsubscribe()}),this.unsubscribed=!0}},e}(),BehaviorSubject=function(){function e(e){this.value=e,this.listeners=[],this.errorListeners=[]}return e.prototype.next=function(e){this.value=e;for(var t=0,i=this.listeners;t<i.length;t++){(0,i[t])(e)}},e.prototype.map=function(t){var i=new e(t(this.value));return this.subscribe(function(e){i.next(t(e))}),this.catch(function(e){i.error(e)}),i},e.prototype.catch=function(e){return this.errorListeners.push(e),new Subscription(this.errorListeners,e)},e.prototype.error=function(e){for(var t=0,i=this.errorListeners;t<i.length;t++){(0,i[t])(e)}},e.prototype.subscribe=function(e,t){return this.listeners.push(e),t&&this.errorListeners.push(t),new Subscription(this.listeners,e)},e.prototype.toPromise=function(){var e=this;return new Promise(function(t,i){var n=e.subscribe(function(e){t(e),n.unsubscribe()},function(e){i(e),n.unsubscribe()})})},e.prototype.promise=function(){return this.toPromise()},e}(),State={Pending:"Pending",Fulfilled:"Fulfilled",Rejected:"Rejected"};function isFunction(e){return e&&"function"==typeof e}function isObject(e){return e&&"object"==typeof e}var TinyPromise=function(){function e(e){this._state=State.Pending,this._handlers=[],this._value=null,e(this._resolve.bind(this),this._reject.bind(this))}return e.prototype._resolve=function(t){var i=this;if(t instanceof e)t.then(this._resolve.bind(this),this._reject.bind(this));else if(isObject(t)||isFunction(t)){var n=!1;try{var r=t.then;isFunction(r)?r.call(t,function(e){n||i._resolve(e),n=!0},function(e){n||i._reject(e),n=!0}):this._fulfill(t)}catch(e){n||this._reject(e)}}else this._fulfill(t)},e.prototype._fulfill=function(e){var t=this;this._state=State.Fulfilled,this._value=e,this._handlers.forEach(function(e){return t._callHandler(e)})},e.prototype._reject=function(e){var t=this;this._state=State.Rejected,this._value=e,this._handlers.forEach(function(e){return t._callHandler(e)})},e.prototype._isPending=function(){return this._state===State.Pending},e.prototype._isFulfilled=function(){return this._state===State.Fulfilled},e.prototype._isRejected=function(){return this._state===State.Rejected},e.prototype._addHandler=function(e,t){this._handlers.push({onFulfilled:e,onRejected:t})},e.prototype._callHandler=function(e){this._isFulfilled()&&isFunction(e.onFulfilled)?e.onFulfilled(this._value):this._isRejected()&&isFunction(e.onRejected)&&e.onRejected(this._value)},e.prototype.then=function(t,i){var n=this;switch(this._state){case State.Pending:return new e(function(e,r){n._addHandler(function(i){nextTick(function(){try{isFunction(t)?e(t(i)):e(i)}catch(e){r(e)}})},function(t){nextTick(function(){try{isFunction(i)?e(i(t)):r(t)}catch(e){r(e)}})})});case State.Fulfilled:return new e(function(e,i){nextTick(function(){try{isFunction(t)?e(t(n._value)):e(n._value)}catch(e){i(e)}})});case State.Rejected:return new e(function(e,t){nextTick(function(){try{isFunction(i)?e(i(n._value)):t(n._value)}catch(e){t(e)}})})}},e}(),Promise$1="undefined"!=typeof Promise?Promise:TinyPromise,serverOnlyRequire;try{serverOnlyRequire=eval("require")}catch(e){serverOnlyRequire=function(){return null}}var serverOnlyRequire$1=serverOnlyRequire;function promiseResolve(e){return new Promise$1(function(t){return t(e)})}function tinyFetch(e,t){return void 0===t&&(t={}),new Promise$1(function(i,n){var r=new XMLHttpRequest;if(r.open(t.method||"get",e,!0),t.headers)for(var o in t.headers)r.setRequestHeader(o,t.headers[o]);function s(){var e=[],t=[],i={},n=void 0;return r.getAllResponseHeaders().replace(/^(.*?):[^\S\n]*([\s\S]*?)$/gm,function(r,o,s){var a=o;return e.push(a=a.toLowerCase()),t.push([a,s]),n=i[a],i[a]=n?"".concat(n,",").concat(s):s,""}),{ok:2==(r.status/100|0),status:r.status,statusText:r.statusText,url:r.responseURL,clone:s,text:function(){return promiseResolve(r.responseText)},json:function(){return promiseResolve(r.responseText).then(JSON.parse)},blob:function(){return promiseResolve(new Blob([r.response]))},headers:{keys:function(){return e},entries:function(){return t},get:function(e){return i[e.toLowerCase()]},has:function(e){return e.toLowerCase()in i}}}}r.withCredentials="include"===t.credentials,r.onload=function(){i(s())},r.onerror=n,r.send(t.body)})}var fetch="object"==typeof global&&"function"==typeof global.fetch?global.fetch:"undefined"==typeof window?serverOnlyRequire$1("node-fetch"):void 0!==window.fetch?window.fetch:tinyFetch;function assign(e){for(var t=[],i=1;i<arguments.length;i++)t[i-1]=arguments[i];for(var n=Object(e),r=1;r<arguments.length;r++){var o=arguments[r];if(null!=o)for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(n[s]=o[s])}return n}function throttle(e,t,i){var n,r,o;void 0===i&&(i={});var s=null,a=0,u=function(){a=!1===i.leading?0:Date.now(),s=null,o=e.apply(n,r),s||(n=r=null)};return function(){var c=Date.now();a||!1!==i.leading||(a=c);var d=t-(c-a);return n=this,r=arguments,d<=0||d>t?(s&&(clearTimeout(s),s=null),a=c,o=e.apply(n,r),s||(n=r=null)):s||!1===i.trailing||(s=setTimeout(u,d)),o}}var camelCaseToKebabCase=function(e){return e?e.replace(/([A-Z])/g,function(e){return"-".concat(e[0].toLowerCase())}):""},Animator=function(){function e(){}return e.prototype.bindAnimations=function(e){for(var t=0,i=e;t<i.length;t++){var n=i[t];switch(n.trigger){case"pageLoad":this.triggerAnimation(n);break;case"hover":this.bindHoverAnimation(n);break;case"scrollInView":this.bindScrollInViewAnimation(n)}}},e.prototype.warnElementNotPresent=function(e){console.warn("Cannot animate element: element with ID ".concat(e," not found!"))},e.prototype.augmentAnimation=function(e,t){for(var i=this.getAllStylesUsed(e),n=getComputedStyle(t),r=0,o=[e.steps[0].styles,e.steps[e.steps.length-1].styles];r<o.length;r++)for(var s=o[r],a=0,u=i;a<u.length;a++){var c=u[a];c in s||(s[c]=n[c])}},e.prototype.getAllStylesUsed=function(e){for(var t=[],i=0,n=e.steps;i<n.length;i++){var r=n[i];for(var o in r.styles)-1===t.indexOf(o)&&t.push(o)}return t},e.prototype.triggerAnimation=function(e){var t=this,i=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));i.length?Array.from(i).forEach(function(i){t.augmentAnimation(e,i),i.style.transition="none",i.style.transitionDelay="0",assign(i.style,e.steps[0].styles),setTimeout(function(){i.style.transition="all ".concat(e.duration,"s ").concat(camelCaseToKebabCase(e.easing)),e.delay&&(i.style.transitionDelay=e.delay+"s"),assign(i.style,e.steps[1].styles),setTimeout(function(){i.style.transition="",i.style.transitionDelay=""},1e3*(e.delay||0)+1e3*e.duration+100)})}):this.warnElementNotPresent(e.elementId||e.id||"")},e.prototype.bindHoverAnimation=function(e){var t=this,i=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));i.length?Array.from(i).forEach(function(i){t.augmentAnimation(e,i);var n=e.steps[0].styles,r=e.steps[1].styles;function o(){assign(i.style,n)}o(),i.addEventListener("mouseenter",function(){assign(i.style,r)}),i.addEventListener("mouseleave",o),setTimeout(function(){i.style.transition="all ".concat(e.duration,"s ").concat(camelCaseToKebabCase(e.easing)),e.delay&&(i.style.transitionDelay=e.delay+"s")})}):this.warnElementNotPresent(e.elementId||e.id||"")},e.prototype.bindScrollInViewAnimation=function(e){var t=this,i=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));i.length?Array.from(i).forEach(function(i){t.augmentAnimation(e,i);var n=!1;function r(){var t,r,s;!n&&(t=i.getBoundingClientRect(),r=window.innerHeight,s=0*r,t.bottom>s&&t.top<r-s)&&(n=!0,setTimeout(function(){assign(i.style,e.steps[1].styles),document.removeEventListener("scroll",o),setTimeout(function(){i.style.transition="",i.style.transitionDelay=""},1e3*(1e3*e.duration+(e.delay||0))+100)}))}var o=throttle(r,200,{leading:!1});var s=e.steps[0].styles;assign(i.style,s),setTimeout(function(){i.style.transition="all ".concat(e.duration,"s ").concat(camelCaseToKebabCase(e.easing)),e.delay&&(i.style.transitionDelay=e.delay+"s")}),document.addEventListener("scroll",o,{capture:!0,passive:!0}),r()}):this.warnElementNotPresent(e.elementId||e.id||"")},e}();function getTopLevelDomain(e){var t=e.split(".");return t.length>2?t.slice(1).join("."):e}var fieldContentRegExp=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Cookies=function(){function e(e,t){this.request=e,this.response=t}return e.prototype.get=function(e){var t=this.request.headers.cookie;if(t){var i=t.match(getPattern(e));if(i)return i[1]}},e.prototype.set=function(e,t,i){var n=this.response,r=this.request,o=n.getHeader("Set-Cookie")||[],s=void 0!==this.secure?!!this.secure:"https"===r.protocol||r.connection.encrypted,a=new Cookie(e,t,i);if("string"==typeof o&&(o=[o]),!s&&i&&i.secure)throw new Error("Cannot send secure cookie over unencrypted connection");return a.secure=s,i&&"secure"in i&&(a.secure=!!i.secure),a.domain=r.headers.host&&getTopLevelDomain(r.headers.host),pushCookie(o,a),n.setHeader.call(n,"Set-Cookie",o),this},e}(),Cookie=function(){function e(e,t,i){if(this.path="/",this.domain=void 0,this.httpOnly=!0,this.sameSite=!1,this.secure=!1,this.overwrite=!1,this.name="",this.value="",!fieldContentRegExp.test(e))throw new TypeError("argument name is invalid");if(t&&!fieldContentRegExp.test(t))throw new TypeError("argument value is invalid");t||(this.expires=new Date(0)),this.name=e,this.value=t||"",i.expires&&(this.expires=i.expires),i.secure&&(this.secure=i.secure)}return e.prototype.toString=function(){return"".concat(this.name,"=").concat(this.value)},e.prototype.toHeader=function(){var e=this.toString();return this.maxAge&&(this.expires=new Date(Date.now()+this.maxAge)),this.path&&(e+="; path=".concat(this.path)),this.expires&&(e+="; expires=".concat(this.expires.toUTCString())),this.domain&&(e+="; domain=".concat(this.domain)),e+="; SameSite=".concat(!0===this.sameSite?"strict":"None"),this.secure&&(e+="; secure"),this.httpOnly&&(e+="; httponly"),e},e}();function getPattern(e){return new RegExp("(?:^|;) *".concat(e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"=([^;]*)"))}function pushCookie(e,t){if(t.overwrite)for(var i=e.length-1;i>=0;i--)0===e[i].indexOf("".concat(t.name,"="))&&e.splice(i,1);e.push(t.toHeader())}function omit(e){for(var t=[],i=1;i<arguments.length;i++)t[i-1]=arguments[i];for(var n=Object.assign({},e),r=0,o=t;r<o.length;r++){delete n[o[r]]}return n}function uuidv4(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})}function uuid(){return uuidv4().replace(/-/g,"")}function pad(e,t){for(;e.length<t;)e="0"+e;return e}function fold(e,t){var i,n;if(0===t.length)return e;for(i=0,n=t.length;i<n;i++)e=(e<<5)-e+t.charCodeAt(i),e|=0;return e<0?-2*e:e}function foldObject(e,t,i){return Object.keys(t).sort().reduce(function(e,n){return foldValue(e,t[n],n,i)},e)}function foldValue(e,t,i,n){var r=fold(fold(fold(e,i),toString(t)),typeof t);if(null===t)return fold(r,"null");if(void 0===t)return fold(r,"undefined");if("object"==typeof t||"function"==typeof t){if(-1!==n.indexOf(t))return fold(r,"[Circular]"+i);n.push(t);var o=foldObject(r,t,n);if(!("valueOf"in t)||"function"!=typeof t.valueOf)return o;try{return fold(o,String(t.valueOf()))}catch(e){return fold(o,"[valueOf exception]"+(e.stack||e.message))}}return fold(r,t.toString())}function toString(e){return Object.prototype.toString.call(e)}function sum(e){return pad(foldValue(0,e,"",[]).toString(16),8)}var hashSum=sum;function datePlusMinutes(e){return void 0===e&&(e=30),new Date(Date.now()+6e4*e)}var isPositiveNumber=function(e){return"number"==typeof e&&!isNaN(e)&&e>=0},isReactNative="object"==typeof navigator&&"ReactNative"===navigator.product,validEnvList=["production","qa","test","development","dev","cdn-qa","cloud","fast","cdn2","cdn-prod"];function getQueryParam(e,t){for(var i=(e.split("?")[1]||"").split("&"),n=0;n<i.length;n++){var r=i[n].split("=");if(decodeURIComponent(r[0])===t)return decodeURIComponent(r[1])}return null}var urlParser={parse:function(e){var t=document.createElement("a");t.href=e;for(var i={},n="username password host hostname port protocol origin pathname search hash".split(" "),r=n.length;r--;)i[n[r]]=t[n[r]];return!i.pathname&&""!==i.pathname||"string"!=typeof i.pathname||0===i.pathname.indexOf("/")||(i.pathname="/"+i.pathname),i}},parse=isReactNative?function(){return{}}:"object"==typeof window?urlParser.parse:serverOnlyRequire$1("url").parse;function setCookie(e,t,i){try{var n="";i&&(n="; expires="+i.toUTCString());var r=!isBrowser||"https:"===location.protocol;document.cookie=e+"="+(t||"")+n+"; path=/"+"; domain=".concat(getTopLevelDomain(location.hostname))+(r?";secure ; SameSite=None":"")}catch(e){console.warn("Could not set cookie",e)}}function getCookie(e){try{return decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null}catch(e){console.warn("Could not get cookie",e)}}function size(e){return Object.keys(e).length}function find(e,t){for(var i=e,n=i.length>>>0,r=arguments[1],o=0;o<n;o++){var s=i[o];if(t.call(r,s,o,i))return s}}var sessionStorageKey="builderSessionId",localStorageKey="builderVisitorId",isBrowser="undefined"!=typeof window&&!isReactNative,isIframe=isBrowser&&window.top!==window.self;function BuilderComponent(e){return void 0===e&&(e={}),Builder.Component(e)}var Builder=function(){function e(t,i,n,r,o){void 0===t&&(t=null),void 0===r&&(r=!1),void 0===o&&(o=null);var s=this;if(this.request=i,this.response=n,this.eventsQueue=[],this.throttledClearEventsQueue=throttle(function(){s.processEventsQueue(),s.setCookie(sessionStorageKey,s.sessionId,datePlusMinutes(30))},5),this.env="production",this.sessionId=this.getSessionId(),this.targetContent=!0,this.contentPerRequest=1,this.allowCustomFonts=!0,this.cookies=null,this.cachebust=!1,this.overrideParams="",this.noCache=!1,this.preview=!1,this.canTrack$=new BehaviorSubject(!this.browserTrackingDisabled),this.apiKey$=new BehaviorSubject(null),this.authToken$=new BehaviorSubject(null),this.userAttributesChanged=new BehaviorSubject(null),this.editingMode$=new BehaviorSubject(isIframe),this.editingModel$=new BehaviorSubject(null),this.userAgent="object"==typeof navigator&&navigator.userAgent||"",this.trackingHooks=[],this.visitorId=this.getVisitorId(),this.autoTrack=!!e.isBrowser&&!(this.isDevelopmentEnv||e.isBrowser&&-1!==location.search.indexOf("builder.preview=")),this.trackingUserAttributes={},this.blockContentLoading="",this.observersByKey={},this.noEditorUpdates={},this.overrides={},this.getContentQueue=null,this.priorContentQueue=null,this.testCookiePrefix="builder.tests",this.cookieQueue=[],e.isBrowser&&!r&&e.singletonInstance)return e.singletonInstance;this.request&&this.response&&(this.setUserAgent(this.request.headers["user-agent"]||""),this.cookies=new Cookies(this.request,this.response)),t&&(this.apiKey=t),o&&(this.authToken=o),isBrowser&&this.bindMessageListeners(),isIframe&&this.messageFrameLoaded(),this.canTrack$.subscribe(function(e){if(e){if("undefined"!=typeof sessionStorage)try{sessionStorage.getItem(sessionStorageKey)||sessionStorage.setItem(sessionStorageKey,s.sessionId)}catch(e){console.debug("Session storage error",e)}s.eventsQueue.length&&s.throttledClearEventsQueue(),s.cookieQueue.length&&(s.cookieQueue.forEach(function(e){s.setCookie(e[0],e[1])}),s.cookieQueue.length=0)}}),isBrowser&&(this.setTestsFromUrl(),this.getOverridesFromQueryString())}return e.register=function(t,i){var n=this.registry[t];if(n||(n=this.registry[t]=[]),n.push(i),e.isBrowser){var r={type:"builder.register",data:{type:t,info:i}};try{parent.postMessage(r,"*"),parent!==window&&window.postMessage(r,"*")}catch(e){console.debug("Could not postmessage",e)}}this.registryChange.next(this.registry)},e.registerEditor=function(t){if(e.isBrowser){window.postMessage({type:"builder.registerEditor",data:omit(t,"component")},"*");var i=location.hostname;e.isTrustedHost(i)||console.error("Builder.registerEditor() called in the wrong environment! You cannot load custom editors from your app, they must be loaded through the Builder.io app itself. Follow the readme here for more details: https://github.com/builderio/builder/tree/master/plugins/cloudinary or contact chat us in our Spectrum community for help: https://spectrum.chat/builder")}this.editors.push(t)},e.registerPlugin=function(e){this.plugins.push(e)},e.registerAction=function(e){this.actions.push(e)},e.registerTrustedHost=function(e){this.trustedHosts.push(e)},e.isTrustedHost=function(e){return this.trustedHosts.findIndex(function(t){return t===e||e.endsWith(".".concat(t))})>-1},e.runAction=function(e){if(!("string"==typeof e?find(this.actions,function(t){return t.name===e}):e))throw new Error("Action not found: ".concat(e))},e.fields=function(e,t){var i;null===(i=window.parent)||void 0===i||i.postMessage({type:"builder.fields",data:{name:e,fields:t}},"*")},e.set=function(t){e.register("editor.settings",t)},e.import=function(t){if(e.isBrowser){var i=window.System;if(i)return i.import("https://cdn.builder.io/systemjs/".concat(t));console.warn("System.js not available. Please include System.js when using Builder.import")}else console.warn("Builder.import used on the server - this should only be used in the browser")},Object.defineProperty(e,"editingPage",{get:function(){return this._editingPage},set:function(e){this._editingPage=e,isBrowser&&isIframe&&(e?document.body.classList.add("builder-editing-page"):document.body.classList.remove("builder-editing-page"))},enumerable:!1,configurable:!0}),e.prepareComponentSpecToSend=function(e){return __assign(__assign(__assign({},e),e.inputs&&{inputs:e.inputs.map(function(e){for(var t,i=0,n=["onChange","showIf"];i<n.length;i++){var r=n[i];if(e[r]&&"function"==typeof e[r]){var o=e[r];e=__assign(__assign({},e),((t={})[r]="return (".concat(o.toString(),").apply(this, arguments)"),t))}}return e})}),{hooks:Object.keys(e.hooks||{}).reduce(function(t,i){var n=e.hooks&&e.hooks[i];return n?(t[i]="string"==typeof n?n:"return (".concat(n.toString(),").apply(this, arguments)"),t):t},{}),class:void 0})},e.registerBlock=function(e,t){this.registerComponent(e,t)},e.registerComponent=function(e,t){var i,n=__assign(__assign({class:e},e.builderOptions),t);if(this.addComponent(n),t.models&&this.singletonInstance.editingModel?isBrowser&&t.models.includes(this.singletonInstance.editingModel):isBrowser){var r=this.prepareComponentSpecToSend(n);null===(i=window.parent)||void 0===i||i.postMessage({type:"builder.registerComponent",data:r},"*")}},e.addComponent=function(e){var t=find(this.components,function(t){return t.name===e.name});if(t){if(t.class&&!e.class)return;this.components.splice(this.components.indexOf(t),1,e)}else this.components.push(e)},e.component=function(e){var t=this;return void 0===e&&(e={}),function(i){var n,r=__assign(__assign({},e),{class:i});r.name||(r.name=i.name),t.addComponent(r);var o=t.prepareComponentSpecToSend(r);return isBrowser&&(null===(n=window.parent)||void 0===n||n.postMessage({type:"builder.registerComponent",data:o},"*")),i}},Object.defineProperty(e,"Component",{get:function(){return this.component},enumerable:!1,configurable:!0}),e.prototype.processEventsQueue=function(){if(this.eventsQueue.length){var t=this.eventsQueue;this.eventsQueue=[];for(var i=__assign(__assign({},e.overrideUserAttributes),this.trackingUserAttributes),n=0,r=t;n<r.length;n++){var o=r[n];o.data.metadata||(o.data.metadata={}),o.data.metadata.user||(o.data.metadata.user={}),Object.assign(o.data.metadata.user,i,o.data.metadata.user)}var s=this.host;fetch("".concat(s,"/api/v1/track"),{method:"POST",body:JSON.stringify({events:t}),headers:{"content-type":"application/json"},mode:"cors"}).catch(function(){})}},Object.defineProperty(e.prototype,"browserTrackingDisabled",{get:function(){return e.isBrowser&&Boolean(window.builderNoTrack||!navigator.cookieEnabled)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"canTrack",{get:function(){return this.canTrack$.value},set:function(e){this.canTrack!==e&&this.canTrack$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"editingMode",{get:function(){return this.editingMode$.value},set:function(e){e!==this.editingMode&&this.editingMode$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"editingModel",{get:function(){return this.editingModel$.value},set:function(e){e!==this.editingModel&&this.editingModel$.next(e)},enumerable:!1,configurable:!0}),e.prototype.findParentElement=function(e,t,i){if(void 0===i&&(i=!0),!(e instanceof HTMLElement))return null;var n=i?e:e.parentElement;do{if(!n)return null;if(t(n))return n}while(n=n.parentElement);return null},e.prototype.findBuilderParent=function(e){return this.findParentElement(e,function(e){var t=e.getAttribute("builder-id")||e.id;return Boolean(t&&0===t.indexOf("builder-"))})},e.prototype.setUserAgent=function(e){this.userAgent=e||""},e.prototype.setTrackingHook=function(e){this.trackingHooks.push(e)},e.prototype.track=function(t,i,n){if(void 0===i&&(i={}),!isIframe&&isBrowser&&!e.isPreviewing){var r=this.apiKey;if(r){for(var o=JSON.parse(JSON.stringify({type:t,data:__assign(__assign({},omit(i,"meta")),{metadata:__assign(__assign({sdkVersion:e.VERSION,url:location.href},i.meta),i.metadata),ownerId:r,userAttributes:this.getUserAttributes(),sessionId:this.sessionId,visitorId:this.visitorId})})),s=0,a=this.trackingHooks;s<a.length;s++){var u=(0,a[s])(o,n||{});u&&(o=u)}this.eventsQueue.push(o),this.canTrack&&this.throttledClearEventsQueue()}else console.error('Builder integration error: Looks like the Builder SDK has not been initialized properly (your API key has not been set). Make sure you are calling `builder.init("«YOUR-API-KEY»");` as early as possible in your application\'s code.')}},e.prototype.getSessionId=function(){var t=this,i=null;try{e.isBrowser&&"undefined"!=typeof sessionStorage&&(i=this.getCookie(sessionStorageKey))}catch(e){console.debug("Session storage error",e)}return i||(i=uuid()),e.isBrowser&&setTimeout(function(){try{t.canTrack&&t.setCookie(sessionStorageKey,i,datePlusMinutes(30))}catch(e){console.debug("Cookie setting error",e)}}),i},e.prototype.getVisitorId=function(){var t=this;if(this.visitorId)return this.visitorId;var i=null;try{e.isBrowser&&"undefined"!=typeof localStorage&&(i=localStorage.getItem(localStorageKey))}catch(e){console.debug("Local storage error",e)}return i||(i=uuid()),this.visitorId=i,e.isBrowser&&setTimeout(function(){try{t.canTrack&&"undefined"!=typeof localStorage&&i&&localStorage.setItem(localStorageKey,i)}catch(e){console.debug("Session storage error",e)}}),i},e.prototype.trackImpression=function(t,i,n,r){isIframe||!isBrowser||e.isPreviewing||this.track("impression",{contentId:t,variationId:i!==t?i:void 0,metadata:n},r)},e.prototype.trackConversion=function(t,i,n,r,o){if(!isIframe&&isBrowser&&!e.isPreviewing){var s="object"==typeof i?i:r,a="string"==typeof i?i:void 0;this.track("conversion",{amount:t,variationId:n,meta:s,contentId:a},o)}},Object.defineProperty(e.prototype,"isDevelopmentEnv",{get:function(){return e.isIframe||e.isBrowser&&("localhost"===location.hostname||""!==location.port)||"production"!==this.env},enumerable:!1,configurable:!0}),e.prototype.trackInteraction=function(t,i,n,r,o){if(void 0===n&&(n=!1),!isIframe&&isBrowser&&!e.isPreviewing){var s=r&&r.target,a=s&&this.findBuilderParent(s),u={};if(r){var c=r.clientX,d=r.clientY;if(s){var l=c-(g=s.getBoundingClientRect()).left,h=d-g.top,p=y(l/g.width),f=y(h/g.height);u.targetOffset={x:p,y:f}}if(a){var g;l=c-(g=a.getBoundingClientRect()).left,h=d-g.top,p=y(l/g.width),f=y(h/g.height);u.builderTargetOffset={x:p,y:f}}}var v=a&&(a.getAttribute("builder-id")||a.id);v&&a&&(u.builderElementIndex=[].slice.call(document.getElementsByClassName(v)).indexOf(a)),this.track("click",{contentId:t,metadata:u,variationId:i!==t?i:void 0,unique:!n,targetBuilderElement:v||void 0},o)}function y(e){return Math.round(1e3*e)/1e3}},e.prototype.component=function(t){return void 0===t&&(t={}),e.component(t)},Object.defineProperty(e.prototype,"apiKey",{get:function(){return this.apiKey$.value},set:function(e){this.apiKey$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"authToken",{get:function(){return this.authToken$.value},set:function(e){this.authToken$.next(e)},enumerable:!1,configurable:!0}),e.prototype.modifySearch=function(e){return e.replace(/(^|&|\?)(builder_.*?)=/gi,function(e,t,i){return t+i.replace(/_/g,".")+"="})},e.prototype.setTestsFromUrl=function(){var e=this.getLocation().search,t=QueryString.parseDeep(this.modifySearch(e||"").substr(1)),i=t.builder&&t.builder.tests;if(i&&"object"==typeof i)for(var n in i)i.hasOwnProperty(n)&&this.setTestCookie(n,i[n])},e.prototype.resetOverrides=function(){e.overrideUserAttributes={},this.cachebust=!1,this.noCache=!1,this.preview=!1,this.editingModel=null,this.overrides={},this.env="production",this.userAgent="",this.request=void 0,this.response=void 0},e.prototype.getOverridesFromQueryString=function(){var t=this.getLocation(),i=QueryString.parseDeep(this.modifySearch(t.search||"").substr(1)),n=i.builder;if(n){var r=n.userAttributes,o=n.overrides,s=n.env,a=(n.host,n.api),u=n.cachebust,c=n.noCache,d=n.preview,l=n.editing,h=n.frameEditing,p=n.params;if(r&&this.setUserAttributes(r),o&&(this.overrides=o),validEnvList.indexOf(s||a)>-1&&(this.env=s||a),e.isEditing){var f=h||l||d;f&&"true"!==f&&(this.editingModel=f)}u&&(this.cachebust=!0),c&&(this.noCache=!0),d&&(this.preview=!0),i&&(this.overrideParams=p)}},e.prototype.messageFrameLoaded=function(){var e;null===(e=window.parent)||void 0===e||e.postMessage({type:"builder.loaded",data:{value:!0}},"*")},e.prototype.bindMessageListeners=function(){var t=this;isBrowser&&addEventListener("message",function(i){var n,r,o,s,a,u=parse(i.origin),c=-1===["builder.register","builder.registerComponent"].indexOf(null===(n=i.data)||void 0===n?void 0:n.type),d=u.hostname&&e.isTrustedHost(u.hostname);if(!c||d){var l=i.data;if(l)switch(l.type){case"builder.ping":null===(r=window.parent)||void 0===r||r.postMessage({type:"builder.pong",data:{}},"*");break;case"builder.register":if(i.source===window)break;var h=l.data;if(!h)break;var p=h.type,f=h.info,g=e.registry[p];g||(g=e.registry[p]=[]),g.push(f),e.registryChange.next(e.registry);break;case"builder.settingsChange":if(i.source===window)break;var v=l.data;if(!v)break;Object.assign(e.settings,v),e.settingsChange.next(e.settings);break;case"builder.registerEditor":if(i.source===window)break;var y=l.data;if(!y)break;var m=!!y.component;e.editors.every(function(t,i){return y.name!==t.name||!(t.component&&!m)&&(e.editors[i]=t,!1)});break;case"builder.triggerAnimation":e.animator.triggerAnimation(l.data);break;case"builder.contentUpdate":var b=l.data.key||l.data.alias||l.data.entry||l.data.modelName,w=l.data.data,k=t.observersByKey[b];k&&!t.noEditorUpdates[b]&&k.next([w]);break;case"builder.getComponents":null===(o=window.parent)||void 0===o||o.postMessage({type:"builder.components",data:e.components.map(function(t){return e.prepareComponentSpecToSend(t)})},"*");break;case"builder.editingModel":t.editingModel=l.data.model;break;case"builder.registerComponent":var C=l.data;e.addComponent(C);break;case"builder.blockContentLoading":"string"==typeof l.data.model&&(t.blockContentLoading=l.data.model);break;case"builder.editingMode":l.data?(t.editingMode=!0,document.body.classList.add("builder-editing")):(t.editingMode=!1,document.body.classList.remove("builder-editing"));break;case"builder.editingPageMode":var S=l.data;e.editingPage=S;break;case"builder.overrideUserAttributes":var _=l.data;assign(e.overrideUserAttributes,_),t.flushGetContentQueue(!0);break;case"builder.overrideTestGroup":var x=l.data,T=x.variationId,B=x.contentId;T&&B&&(t.setTestCookie(B,T),t.flushGetContentQueue(!0));break;case"builder.evaluate":var O=l.data.text,P=l.data.arguments||[],I=l.data.id,E=new Function(O),A=void 0,j=null;try{A=E.apply(t,P)}catch(e){j=e}j?null===(s=window.parent)||void 0===s||s.postMessage({type:"builder.evaluateError",data:{id:I,error:j.message}},"*"):A&&"function"==typeof A.then?A.then(function(e){var t;null===(t=window.parent)||void 0===t||t.postMessage({type:"builder.evaluateResult",data:{id:I,result:e}},"*")}).catch(console.error):null===(a=window.parent)||void 0===a||a.postMessage({type:"builder.evaluateResult",data:{result:A,id:I}},"*")}}})},Object.defineProperty(e.prototype,"defaultCanTrack",{get:function(){return Boolean(e.isBrowser&&navigator.userAgent.trim()&&!navigator.userAgent.match(/bot|crawler|spider|robot|crawling|prerender|google|baidu|bing|msn|duckduckbot|teoma|slurp|yandex|phantom|headless|selenium|puppeteer/i)&&!this.browserTrackingDisabled)},enumerable:!1,configurable:!0}),e.prototype.init=function(e,t,i,n,r){return void 0===t&&(t=this.defaultCanTrack),i&&(this.request=i),n&&(this.response=n),this.canTrack=t,this.apiKey=e,r&&(this.authToken=r),this},Object.defineProperty(e.prototype,"previewingModel",{get:function(){var e=this.getLocation().search;return QueryString.parse((e||"").substr(1))["builder.preview"]},enumerable:!1,configurable:!0}),e.prototype.getLocation=function(){var e={};return this.request?e=parse(this.request.url):"object"==typeof location&&(e=parse(location.href)),""===e.pathname&&(e.pathname="/"),e},e.prototype.getUserAttributes=function(t){void 0===t&&(t=this.userAgent||"");var i={Android:function(){return t.match(/Android/i)},BlackBerry:function(){return t.match(/BlackBerry/i)},iOS:function(){return t.match(/iPhone|iPod/i)},Opera:function(){return t.match(/Opera Mini/i)},Windows:function(){return t.match(/IEMobile/i)||t.match(/WPDesktop/i)},any:function(){return i.Android()||i.BlackBerry()||i.iOS()||i.Opera()||i.Windows()}},n=t.match(/Tablet|iPad/i),r=this.getLocation();return __assign({urlPath:r.pathname,host:r.host||r.hostname,device:n?"tablet":i.any()?"mobile":"desktop"},e.overrideUserAttributes)},e.prototype.setUserAttributes=function(t){assign(e.overrideUserAttributes,t),this.userAttributesChanged.next(t)},e.prototype.setTrackingUserAttributes=function(e){assign(this.trackingUserAttributes,e)},e.prototype.get=function(t,i){void 0===i&&(i={});var n=this;return e.isBrowser?(i.apiKey&&!this.apiKey&&(this.apiKey=i.apiKey),i.authToken&&!this.authToken&&(this.authToken=i.authToken)):(n=new e(i.apiKey||this.apiKey,i.req,i.res,void 0,i.authToken||this.authToken)).setUserAttributes(this.getUserAttributes()),n.queueGetContent(t,i).map(function(t){var i=t&&t[0];if(e.isStatic)return i;var n=i&&i.data;return n?(void 0!==n.blocksString&&(n.blocks=JSON.parse(n.blocksString),delete n.blocksString),{data:n,id:i.id,variationId:i.testVariationId||i.variationId||null,testVariationId:i.testVariationId||i.variationId||null,testVariationName:i.testVariationName||null,lastUpdated:i.lastUpdated||null}):null})},e.prototype.queueGetContent=function(t,i){var n=this;void 0===i&&(i={});var r=i.key||i.alias||t,o=this.editingModel===t,s=this.observersByKey[r];"DEMO"!==this.apiKey||this.overrides[r]||i.initialContent||(i.initialContent=[]);var a=i.initialContent;if(s&&(!s.value||i.cache))return s.value&&nextTick(function(){s.next(s.value)}),s;if(o&&e.isBrowser&&parent.postMessage({type:"builder.updateContent",data:{options:i}},"*"),!a)if(this.getContentQueue||(this.getContentQueue=[]),this.getContentQueue.push(__assign(__assign({},i),{model:t,key:r})),this.getContentQueue&&this.getContentQueue.length>=this.contentPerRequest){var u=this.getContentQueue.slice();this.getContentQueue=[],nextTick(function(){n.flushGetContentQueue(!1,u)})}else nextTick(function(){n.flushGetContentQueue()});var c=new BehaviorSubject(null);return this.observersByKey[r]=c,i.noEditorUpdates&&(this.noEditorUpdates[r]=!0),a&&nextTick(function(){c.next(a)}),c},e.prototype.requestUrl=function(t,i){return e.isBrowser?fetch(t,i).then(function(e){return e.json()}):new Promise(function(e,n){var r=parse(t),o="http:"===r.protocol?serverOnlyRequire$1("http"):serverOnlyRequire$1("https"),s={host:r.hostname,port:r.port,path:r.pathname+r.search,headers:__assign({},null===i||void 0===i?void 0:i.headers)};o.get(s,function(t){var i="";t.setEncoding("utf8"),t.on("data",function(e){i+=e}),t.on("end",function(){try{e(JSON.parse(i))}catch(e){if("SyntaxError"===(null===e||void 0===e?void 0:e.name)){var t=new Error("[Builder.io] ERROR: invalid response.\nRequest: ".concat(JSON.stringify(s,null,2),"\nResponse Data: ").concat(i,"\n"));n(t)}n(e)}})}).on("error",function(e){n(e)})})},Object.defineProperty(e.prototype,"host",{get:function(){switch(this.env){case"qa":return"https://qa.builder.io";case"test":return"https://builder-io-test.web.app";case"fast":return"https://fast.builder.io";case"cloud":return"https://cloud.builder.io";case"cdn2":return"https://cdn2.builder.io";case"cdn-qa":return"https://cdn-qa.builder.io";case"development":case"dev":return"http://localhost:5000";case"cdn-prod":return"https://cdn.builder.io";default:return e.overrideHost||"https://cdn.builder.io"}},enumerable:!1,configurable:!0}),e.prototype.flushGetContentQueue=function(t,i){var n=this;if(void 0===t&&(t=!1),!this.apiKey)throw new Error("Fetching content failed, expected apiKey to be defined instead got: ".concat(this.apiKey));if(t||this.getContentQueue){var r=i||(t?this.priorContentQueue:this.getContentQueue)||[];this.getOverridesFromQueryString();var o=__assign({omit:r[0].omit||"meta.componentsUsed",apiKey:this.apiKey},r[0].options);r[0].fields&&(o.fields=r[0].fields),r[0].format&&(o.format=r[0].format);var s="undefined"!=typeof location?QueryString.parseDeep(location.search.substr(1)):{},a=r&&r[0].userAttributes?r[0].userAttributes:this.targetContent?this.getUserAttributes():{urlPath:this.getLocation().pathname};if(r.find(function(e){return!!e.includeUrl})){var u=this.getLocation();u.origin&&(o.url="".concat(u.origin).concat(u.pathname).concat(u.search))}var c=null===i||void 0===i?void 0:i.find(function(e){return e.url});if((null===c||void 0===c?void 0:c.url)&&(a.urlPath=c.url.split("?")[0]),o.userAttributes=a,t||i||(this.priorContentQueue=r,this.getContentQueue=null),(this.cachebust||isIframe||s.cachebust||s["builder.cachebust"]||"production"!==this.env)&&(o.cachebust=!0),e.isEditing&&(o.isEditing=!0),(this.noCache||"production"!==this.env)&&(o.noCache=!0),size(this.overrides))for(var d in this.overrides)this.overrides.hasOwnProperty(d)&&(o["overrides.".concat(d)]=this.overrides[d]);e.isReact||(o.prerender=!0);for(var l=0,h=r;l<h.length;l++){var p=h[l];p.format&&(o.format=p.format),p.static&&(o.static=p.static),p.cachebust&&(o.cachebust=p.cachebust),isPositiveNumber(p.cacheSeconds)&&(o.cacheSeconds=p.cacheSeconds),isPositiveNumber(p.staleCacheSeconds)&&(o.staleCacheSeconds=p.staleCacheSeconds);for(var f=0,g=["prerender","extractCss","limit","offset","query","preview","model","entry","rev","static"];f<g.length;f++){var v=p[d=g[f]];void 0!==v&&(o.options=o.options||{},o.options[p.key]=o.options[p.key]||{},o.options[p.key][d]=JSON.stringify(v))}}this.preview&&(o.preview="true");var y=Object.keys(o).length>0,m=this.host,b=r.map(function(e){return encodeURIComponent(e.key)}).join(",");if(this.overrideParams)assign(o,omit(QueryString.parse(this.overrideParams),"apiKey"));var w=QueryString.stringifyDeep(o),k=o.format,C={headers:{}};return this.authToken&&(C.headers=__assign(__assign({},C.headers),{Authorization:"Bearer ".concat(this.authToken)})),this.requestUrl("".concat(m,"/api/v1/").concat("solid"===k||"react"===k?"codegen":"query","/").concat(this.apiKey,"/").concat(b)+(o&&y?"?".concat(w):""),C).then(function(t){for(var i=0,o=r;i<o.length;i++){var s=o[i],a=s.key;if(s.model!==n.blockContentLoading||s.noEditorUpdates){n.editingModel===s.model&&e.isEditing&&parent.postMessage({type:"builder.updateContent",data:{options:s}},"*");var u=n.observersByKey[a];if(!u)return;var c=t[a],d=c;if(c){var l=e.isServer?d:n.processResultsForTests(d);u.next(l)}else{if((n.getLocation().search||"").includes("builder.preview="+s.model)){u.next([{id:"preview",name:"Preview",data:{}}])}u.next([])}}}},function(e){for(var t=0,i=r;t<i.length;t++){var o=i[t],s=n.observersByKey[o.key];if(!s)return;s.error(e)}})}},e.prototype.processResultsForTests=function(e){var t,i=this,n=e.map(function(e){if(!e.variations)return e;var t=i.getTestCookie(e.id),n=t===e.id?e:e.variations[t];if(n)return __assign(__assign({},e),{data:n.data,variationId:t,testVariationId:t,testVariationName:n.name});if(i.canTrack&&e.variations&&size(e.variations)){var r=0,o=Math.random();for(var s in e.variations){var a=e.variations[s];if(o<(r+=a.testRatio)){i.setTestCookie(e.id,a.id);var u=a.name||(a.id===e.id?"Default variation":"");return __assign(__assign({},e),{data:a.data,variationId:a.id,testVariationId:a.id,variationName:u,testVariationName:u})}}i.setTestCookie(e.id,e.id)}return __assign(__assign(__assign({},e),{variationId:e.id}),e.variations&&size(e.variations)&&{testVariationId:e.id,testVariationName:"Default variation"})});return isIframe&&(null===(t=window.parent)||void 0===t||t.postMessage({type:"builder.contentResults",data:{results:n}},"*")),n},e.prototype.getTestCookie=function(e){return this.getCookie("".concat(this.testCookiePrefix,".").concat(e))},e.prototype.setTestCookie=function(e,t){if(this.canTrack){var i=new Date;return i.setDate(i.getDate()+30),this.setCookie("".concat(this.testCookiePrefix,".").concat(e),t,i)}this.cookieQueue.push([e,t])},e.prototype.getCookie=function(t){return this.cookies?this.cookies.get(t):e.isBrowser&&getCookie(t)},e.prototype.setCookie=function(t,i,n){return!this.cookies||e.isServer&&e.isStatic?e.isBrowser&&setCookie(t,i,n):this.cookies.set(t,i,{expires:n,secure:"https:"===this.getLocation().protocol})},e.prototype.getContent=function(e,t){if(void 0===t&&(t={}),!this.apiKey)throw new Error("Fetching content from model ".concat(e," failed, expected apiKey to be defined instead got: ").concat(this.apiKey));return this.queueGetContent(e,t)},e.prototype.getAll=function(t,i){void 0===i&&(i={});var n=this;return e.isBrowser?i.apiKey&&!this.apiKey&&(this.apiKey=i.apiKey):(n=new e(i.apiKey||this.apiKey,i.req,i.res)).setUserAttributes(this.getUserAttributes()),n.getContent(t,__assign(__assign({limit:30},i),{key:i.key||e.isBrowser?"".concat(t,":").concat(hashSum(omit(i,"initialContent","req","res"))):void 0})).promise()},e.VERSION=version,e.components=[],e.isStatic=!0,e.animator=new Animator,e.nextTick=nextTick,e.throttle=throttle,e.editors=[],e.trustedHosts=["builder.io","localhost"],e.plugins=[],e.actions=[],e.registry={},e.registryChange=new BehaviorSubject({}),e._editingPage=!1,e.isIframe=isIframe,e.isBrowser=isBrowser,e.isReactNative=isReactNative,e.isServer=!isBrowser&&!isReactNative,e.previewingModel=e.isBrowser&&getQueryParam(location.href,"builder.preview"),e.settings={},e.settingsChange=new BehaviorSubject({}),e.isEditing=Boolean(isIframe&&(document.referrer&&document.referrer.match(/builder\.io|localhost:1234/)||-1!==location.search.indexOf("builder.frameEditing="))),e.isPreviewing=Boolean(isBrowser&&(-1!==location.search.indexOf("builder.preview=")||-1!==location.search.indexOf("builder.frameEditing="))),e.isReact=!1,e.overrideUserAttributes={},e}(),builder=new Builder(null,void 0,void 0,!0);Builder.singletonInstance=builder,exports.Builder=Builder,exports.BuilderComponent=BuilderComponent,exports.isBrowser=isBrowser,exports.BehaviorSubject=BehaviorSubject,exports.Subscription=Subscription,exports.builder=builder,Object.defineProperty(exports,"__esModule",{value:!0})});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define("@builder.io/sdk",["exports"],t):t(e.BuilderIO={})}(this,function(exports){"use strict";var __assign=function(){return(__assign=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};!function(){if("undefined"==typeof window||"function"==typeof window.CustomEvent)return!1;window.CustomEvent=function(e,t){t=t||{bubbles:!1,cancelable:!1,detail:null};var n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n}}();var isSafari="undefined"!=typeof window&&/^((?!chrome|android).)*safari/i.test(window.navigator.userAgent);function nextTick(e){if("function"==typeof setImmediate&&"undefined"==typeof window)return setImmediate(e);if(isSafari||"undefined"==typeof MutationObserver)setTimeout(e);else{var t=0,n=new MutationObserver(function(){return e()}),i=document.createTextNode("");n.observe(i,{characterData:!0}),i.data=String(t=++t)}}var PROPERTY_NAME_DENY_LIST=Object.freeze(["__proto__","prototype","constructor"]),QueryString=function(){function e(){}return e.parseDeep=function(e){var t=this.parse(e);return this.deepen(t)},e.stringifyDeep=function(e){var t=this.flatten(e);return this.stringify(t)},e.parse=function(e){for(var t={},n=("?"===e[0]?e.substr(1):e).split("&"),i=0;i<n.length;i++){var r=n[i].split("=");try{t[decodeURIComponent(r[0])]=decodeURIComponent(r[1]||"")}catch(e){}}return t},e.stringify=function(e){var t="";for(var n in e)if(e.hasOwnProperty(n)){var i=e[n];t&&(t+="&"),t+=encodeURIComponent(n)+"="+encodeURIComponent(i)}return t},e.deepen=function(e){var t={};for(var n in e){for(var i=t,r=n.split("."),o=r.pop(),s=0,a=r;s<a.length;s++){var u=a[s];assertAllowedPropertyName(u),i=i[u]=i[u]||{}}i[o]=e[n]}return t},e.flatten=function(e,t,n){for(var i in void 0===n&&(n={}),e){var r=e[i],o=t?t+"."+i:i;r&&"object"==typeof r?this.flatten(r,o,n):n[o]=r}return n},e}();function assertAllowedPropertyName(e){if(PROPERTY_NAME_DENY_LIST.indexOf(e)>=0)throw new Error('Property name "'.concat(e,'" is not allowed'))}var version="1.1.27-4",Subscription=function(){function e(e,t){this.listeners=e,this.listener=t,this.unsubscribed=!1,this.otherSubscriptions=[]}return Object.defineProperty(e.prototype,"closed",{get:function(){return this.unsubscribed},enumerable:!1,configurable:!0}),e.prototype.add=function(e){this.otherSubscriptions.push(e)},e.prototype.unsubscribe=function(){if(!this.unsubscribed){if(this.listener&&this.listeners){var e=this.listeners.indexOf(this.listener);e>-1&&this.listeners.splice(e,1)}this.otherSubscriptions.forEach(function(e){return e.unsubscribe()}),this.unsubscribed=!0}},e}(),BehaviorSubject=function(){function e(e){this.value=e,this.listeners=[],this.errorListeners=[]}return e.prototype.next=function(e){this.value=e;for(var t=0,n=this.listeners;t<n.length;t++){(0,n[t])(e)}},e.prototype.map=function(t){var n=new e(t(this.value));return this.subscribe(function(e){n.next(t(e))}),this.catch(function(e){n.error(e)}),n},e.prototype.catch=function(e){return this.errorListeners.push(e),new Subscription(this.errorListeners,e)},e.prototype.error=function(e){for(var t=0,n=this.errorListeners;t<n.length;t++){(0,n[t])(e)}},e.prototype.subscribe=function(e,t){return this.listeners.push(e),t&&this.errorListeners.push(t),new Subscription(this.listeners,e)},e.prototype.toPromise=function(){var e=this;return new Promise(function(t,n){var i=e.subscribe(function(e){t(e),i.unsubscribe()},function(e){n(e),i.unsubscribe()})})},e.prototype.promise=function(){return this.toPromise()},e}(),State={Pending:"Pending",Fulfilled:"Fulfilled",Rejected:"Rejected"};function isFunction(e){return e&&"function"==typeof e}function isObject(e){return e&&"object"==typeof e}var TinyPromise=function(){function e(e){this._state=State.Pending,this._handlers=[],this._value=null,e(this._resolve.bind(this),this._reject.bind(this))}return e.prototype._resolve=function(t){var n=this;if(t instanceof e)t.then(this._resolve.bind(this),this._reject.bind(this));else if(isObject(t)||isFunction(t)){var i=!1;try{var r=t.then;isFunction(r)?r.call(t,function(e){i||n._resolve(e),i=!0},function(e){i||n._reject(e),i=!0}):this._fulfill(t)}catch(e){i||this._reject(e)}}else this._fulfill(t)},e.prototype._fulfill=function(e){var t=this;this._state=State.Fulfilled,this._value=e,this._handlers.forEach(function(e){return t._callHandler(e)})},e.prototype._reject=function(e){var t=this;this._state=State.Rejected,this._value=e,this._handlers.forEach(function(e){return t._callHandler(e)})},e.prototype._isPending=function(){return this._state===State.Pending},e.prototype._isFulfilled=function(){return this._state===State.Fulfilled},e.prototype._isRejected=function(){return this._state===State.Rejected},e.prototype._addHandler=function(e,t){this._handlers.push({onFulfilled:e,onRejected:t})},e.prototype._callHandler=function(e){this._isFulfilled()&&isFunction(e.onFulfilled)?e.onFulfilled(this._value):this._isRejected()&&isFunction(e.onRejected)&&e.onRejected(this._value)},e.prototype.then=function(t,n){var i=this;switch(this._state){case State.Pending:return new e(function(e,r){i._addHandler(function(n){nextTick(function(){try{isFunction(t)?e(t(n)):e(n)}catch(e){r(e)}})},function(t){nextTick(function(){try{isFunction(n)?e(n(t)):r(t)}catch(e){r(e)}})})});case State.Fulfilled:return new e(function(e,n){nextTick(function(){try{isFunction(t)?e(t(i._value)):e(i._value)}catch(e){n(e)}})});case State.Rejected:return new e(function(e,t){nextTick(function(){try{isFunction(n)?e(n(i._value)):t(i._value)}catch(e){t(e)}})})}},e}(),Promise$1="undefined"!=typeof Promise?Promise:TinyPromise,serverOnlyRequire;try{serverOnlyRequire=eval("require")}catch(e){serverOnlyRequire=function(){return null}}var serverOnlyRequire$1=serverOnlyRequire,fetch;function promiseResolve(e){return new Promise$1(function(t){return t(e)})}function tinyFetch(e,t){return void 0===t&&(t={}),new Promise$1(function(n,i){var r=new XMLHttpRequest;if(r.open(t.method||"get",e,!0),t.headers)for(var o in t.headers)r.setRequestHeader(o,t.headers[o]);function s(){var e=[],t=[],n={},i=void 0;return r.getAllResponseHeaders().replace(/^(.*?):[^\S\n]*([\s\S]*?)$/gm,function(r,o,s){var a=o;return e.push(a=a.toLowerCase()),t.push([a,s]),i=n[a],n[a]=i?"".concat(i,",").concat(s):s,""}),{ok:2==(r.status/100|0),status:r.status,statusText:r.statusText,url:r.responseURL,clone:s,text:function(){return promiseResolve(r.responseText)},json:function(){return promiseResolve(r.responseText).then(JSON.parse)},blob:function(){return promiseResolve(new Blob([r.response]))},headers:{keys:function(){return e},entries:function(){return t},get:function(e){return n[e.toLowerCase()]},has:function(e){return e.toLowerCase()in n}}}}r.withCredentials="include"===t.credentials,r.onload=function(){n(s())},r.onerror=i,r.send(t.body)})}function assign(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];for(var i=Object(e),r=1;r<arguments.length;r++){var o=arguments[r];if(null!=o)for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&(i[s]=o[s])}return i}function throttle(e,t,n){var i,r,o;void 0===n&&(n={});var s=null,a=0,u=function(){a=!1===n.leading?0:Date.now(),s=null,o=e.apply(i,r),s||(i=r=null)};return function(){var c=Date.now();a||!1!==n.leading||(a=c);var l=t-(c-a);return i=this,r=arguments,l<=0||l>t?(s&&(clearTimeout(s),s=null),a=c,o=e.apply(i,r),s||(i=r=null)):s||!1===n.trailing||(s=setTimeout(u,l)),o}}globalThis.fetch&&(fetch=globalThis.fetch),"undefined"==typeof window&&(null!==fetch&&void 0!==fetch||(fetch=serverOnlyRequire$1("node-fetch"))),null!==fetch&&void 0!==fetch||(fetch=tinyFetch);var camelCaseToKebabCase=function(e){return e?e.replace(/([A-Z])/g,function(e){return"-".concat(e[0].toLowerCase())}):""},Animator=function(){function e(){}return e.prototype.bindAnimations=function(e){for(var t=0,n=e;t<n.length;t++){var i=n[t];switch(i.trigger){case"pageLoad":this.triggerAnimation(i);break;case"hover":this.bindHoverAnimation(i);break;case"scrollInView":this.bindScrollInViewAnimation(i)}}},e.prototype.warnElementNotPresent=function(e){console.warn("Cannot animate element: element with ID ".concat(e," not found!"))},e.prototype.augmentAnimation=function(e,t){for(var n=this.getAllStylesUsed(e),i=getComputedStyle(t),r=0,o=[e.steps[0].styles,e.steps[e.steps.length-1].styles];r<o.length;r++)for(var s=o[r],a=0,u=n;a<u.length;a++){var c=u[a];c in s||(s[c]=i[c])}},e.prototype.getAllStylesUsed=function(e){for(var t=[],n=0,i=e.steps;n<i.length;n++){var r=i[n];for(var o in r.styles)-1===t.indexOf(o)&&t.push(o)}return t},e.prototype.triggerAnimation=function(e){var t=this,n=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));n.length?Array.from(n).forEach(function(n){t.augmentAnimation(e,n),n.style.transition="none",n.style.transitionDelay="0",assign(n.style,e.steps[0].styles),setTimeout(function(){n.style.transition="all ".concat(e.duration,"s ").concat(camelCaseToKebabCase(e.easing)),e.delay&&(n.style.transitionDelay=e.delay+"s"),assign(n.style,e.steps[1].styles),setTimeout(function(){n.style.transition="",n.style.transitionDelay=""},1e3*(e.delay||0)+1e3*e.duration+100)})}):this.warnElementNotPresent(e.elementId||e.id||"")},e.prototype.bindHoverAnimation=function(e){var t=this,n=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));n.length?Array.from(n).forEach(function(n){t.augmentAnimation(e,n);var i=e.steps[0].styles,r=e.steps[1].styles;function o(){assign(n.style,i)}o(),n.addEventListener("mouseenter",function(){assign(n.style,r)}),n.addEventListener("mouseleave",o),setTimeout(function(){n.style.transition="all ".concat(e.duration,"s ").concat(camelCaseToKebabCase(e.easing)),e.delay&&(n.style.transitionDelay=e.delay+"s")})}):this.warnElementNotPresent(e.elementId||e.id||"")},e.prototype.bindScrollInViewAnimation=function(e){var t=this,n=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));n.length?Array.from(n).forEach(function(n){t.augmentAnimation(e,n);var i=!1;function r(){var t,r,s;!i&&(t=n.getBoundingClientRect(),r=window.innerHeight,s=0*r,t.bottom>s&&t.top<r-s)&&(i=!0,setTimeout(function(){assign(n.style,e.steps[1].styles),document.removeEventListener("scroll",o),setTimeout(function(){n.style.transition="",n.style.transitionDelay=""},1e3*(1e3*e.duration+(e.delay||0))+100)}))}var o=throttle(r,200,{leading:!1});var s=e.steps[0].styles;assign(n.style,s),setTimeout(function(){n.style.transition="all ".concat(e.duration,"s ").concat(camelCaseToKebabCase(e.easing)),e.delay&&(n.style.transitionDelay=e.delay+"s")}),document.addEventListener("scroll",o,{capture:!0,passive:!0}),r()}):this.warnElementNotPresent(e.elementId||e.id||"")},e}();function getTopLevelDomain(e){var t=e.split(".");return t.length>2?t.slice(1).join("."):e}var fieldContentRegExp=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Cookies=function(){function e(e,t){this.request=e,this.response=t}return e.prototype.get=function(e){var t=this.request.headers.cookie;if(t){var n=t.match(getPattern(e));if(n)return n[1]}},e.prototype.set=function(e,t,n){var i=this.response,r=this.request,o=i.getHeader("Set-Cookie")||[],s=void 0!==this.secure?!!this.secure:"https"===r.protocol||r.connection.encrypted,a=new Cookie(e,t,n);if("string"==typeof o&&(o=[o]),!s&&n&&n.secure)throw new Error("Cannot send secure cookie over unencrypted connection");return a.secure=s,n&&"secure"in n&&(a.secure=!!n.secure),a.domain=r.headers.host&&getTopLevelDomain(r.headers.host),pushCookie(o,a),i.setHeader.call(i,"Set-Cookie",o),this},e}(),Cookie=function(){function e(e,t,n){if(this.path="/",this.domain=void 0,this.httpOnly=!0,this.sameSite=!1,this.secure=!1,this.overwrite=!1,this.name="",this.value="",!fieldContentRegExp.test(e))throw new TypeError("argument name is invalid");if(t&&!fieldContentRegExp.test(t))throw new TypeError("argument value is invalid");t||(this.expires=new Date(0)),this.name=e,this.value=t||"",n.expires&&(this.expires=n.expires),n.secure&&(this.secure=n.secure)}return e.prototype.toString=function(){return"".concat(this.name,"=").concat(this.value)},e.prototype.toHeader=function(){var e=this.toString();return this.maxAge&&(this.expires=new Date(Date.now()+this.maxAge)),this.path&&(e+="; path=".concat(this.path)),this.expires&&(e+="; expires=".concat(this.expires.toUTCString())),this.domain&&(e+="; domain=".concat(this.domain)),e+="; SameSite=".concat(!0===this.sameSite?"strict":"None"),this.secure&&(e+="; secure"),this.httpOnly&&(e+="; httponly"),e},e}();function getPattern(e){return new RegExp("(?:^|;) *".concat(e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"=([^;]*)"))}function pushCookie(e,t){if(t.overwrite)for(var n=e.length-1;n>=0;n--)0===e[n].indexOf("".concat(t.name,"="))&&e.splice(n,1);e.push(t.toHeader())}function omit(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];for(var i=Object.assign({},e),r=0,o=t;r<o.length;r++){delete i[o[r]]}return i}function uuidv4(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)})}function uuid(){return uuidv4().replace(/-/g,"")}function emptyUrl(){return{query:null,port:null,auth:null,hash:null,host:null,hostname:null,href:null,path:null,pathname:null,protocol:null,search:null,slashes:null}}function parse(e){var t,n=emptyUrl();return""===e||"/"===e[0]?(t=new URL(e,"http://0.0.0.0/"),n.href=t.href,n.href=n.href.slice(14)):(t=new URL(e),n.href=t.href,n.port=""===t.port?null:t.port,n.hash=""===t.hash?null:t.hash,n.host=t.host,n.hostname=t.hostname,n.href=t.href,n.pathname=t.pathname,n.protocol=t.protocol,n.slashes="/"===e[t.protocol.length]),n.search=t.search,n.query=t.search.slice(1),n.path="".concat(t.pathname).concat(t.search),n.pathname=t.pathname,n}function pad(e,t){for(;e.length<t;)e="0"+e;return e}function fold(e,t){var n,i;if(0===t.length)return e;for(n=0,i=t.length;n<i;n++)e=(e<<5)-e+t.charCodeAt(n),e|=0;return e<0?-2*e:e}function foldObject(e,t,n){return Object.keys(t).sort().reduce(function(e,i){return foldValue(e,t[i],i,n)},e)}function foldValue(e,t,n,i){var r=fold(fold(fold(e,n),toString(t)),typeof t);if(null===t)return fold(r,"null");if(void 0===t)return fold(r,"undefined");if("object"==typeof t||"function"==typeof t){if(-1!==i.indexOf(t))return fold(r,"[Circular]"+n);i.push(t);var o=foldObject(r,t,i);if(!("valueOf"in t)||"function"!=typeof t.valueOf)return o;try{return fold(o,String(t.valueOf()))}catch(e){return fold(o,"[valueOf exception]"+(e.stack||e.message))}}return fold(r,t.toString())}function toString(e){return Object.prototype.toString.call(e)}function sum(e){return pad(foldValue(0,e,"",[]).toString(16),8)}var hashSum=sum;function toError(e){return e instanceof Error?e:new Error(String(e))}function datePlusMinutes(e){return void 0===e&&(e=30),new Date(Date.now()+6e4*e)}var isPositiveNumber=function(e){return"number"==typeof e&&!isNaN(e)&&e>=0},isReactNative="object"==typeof navigator&&"ReactNative"===navigator.product,validEnvList=["production","qa","test","development","dev","cdn-qa","cloud","fast","cdn2","cdn-prod"];function getQueryParam(e,t){for(var n=(e.split("?")[1]||"").split("&"),i=0;i<n.length;i++){var r=n[i].split("=");if(decodeURIComponent(r[0])===t)return decodeURIComponent(r[1])}return null}var urlParser={parse:function(e){var t=document.createElement("a");t.href=e;for(var n={},i=0,r=["username","password","host","hostname","port","protocol","origin","pathname","search","hash"];i<r.length;i++){var o=r[i];n[o]=t[o]}return!n.pathname&&""!==n.pathname||"string"!=typeof n.pathname||0===n.pathname.indexOf("/")||(n.pathname="/"+n.pathname),n}},parse$1=isReactNative?function(){return emptyUrl()}:"object"==typeof window?urlParser.parse:parse;function setCookie(e,t,n){try{var i="";n&&(i="; expires="+n.toUTCString());var r=!isBrowser||"https:"===location.protocol;document.cookie=e+"="+(t||"")+i+"; path=/"+"; domain=".concat(getTopLevelDomain(location.hostname))+(r?";secure ; SameSite=None":"")}catch(e){console.warn("Could not set cookie",e)}}function getCookie(e){try{return decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null}catch(e){console.warn("Could not get cookie",e)}}function size(e){return Object.keys(e).length}function find(e,t){for(var n=e,i=n.length>>>0,r=arguments[1],o=0;o<i;o++){var s=n[o];if(t.call(r,s,o,n))return s}}var sessionStorageKey="builderSessionId",localStorageKey="builderVisitorId",isBrowser="undefined"!=typeof window&&!isReactNative,isIframe=isBrowser&&window.top!==window.self;function BuilderComponent(e){return void 0===e&&(e={}),Builder.Component(e)}var Builder=function(){function e(t,n,i,r,o){void 0===t&&(t=null),void 0===r&&(r=!1),void 0===o&&(o=null);var s=this;if(this.request=n,this.response=i,this.eventsQueue=[],this.throttledClearEventsQueue=throttle(function(){s.processEventsQueue(),s.setCookie(sessionStorageKey,s.sessionId,datePlusMinutes(30))},5),this.env="production",this.sessionId=this.getSessionId(),this.targetContent=!0,this.contentPerRequest=1,this.allowCustomFonts=!0,this.cookies=null,this.cachebust=!1,this.overrideParams="",this.noCache=!1,this.preview=!1,this.canTrack$=new BehaviorSubject(!this.browserTrackingDisabled),this.apiKey$=new BehaviorSubject(null),this.authToken$=new BehaviorSubject(null),this.userAttributesChanged=new BehaviorSubject(null),this.editingMode$=new BehaviorSubject(isIframe),this.editingModel$=new BehaviorSubject(null),this.userAgent="object"==typeof navigator&&navigator.userAgent||"",this.trackingHooks=[],this.visitorId=this.getVisitorId(),this.autoTrack=!!e.isBrowser&&!(this.isDevelopmentEnv||e.isBrowser&&-1!==location.search.indexOf("builder.preview=")),this.trackingUserAttributes={},this.blockContentLoading="",this.observersByKey={},this.noEditorUpdates={},this.overrides={},this.getContentQueue=null,this.priorContentQueue=null,this.testCookiePrefix="builder.tests",this.cookieQueue=[],e.isBrowser&&!r&&e.singletonInstance)return e.singletonInstance;this.request&&this.response&&(this.setUserAgent(this.request.headers["user-agent"]||""),this.cookies=new Cookies(this.request,this.response)),t&&(this.apiKey=t),o&&(this.authToken=o),isBrowser&&this.bindMessageListeners(),isIframe&&this.messageFrameLoaded(),this.canTrack$.subscribe(function(e){if(e){if("undefined"!=typeof sessionStorage)try{sessionStorage.getItem(sessionStorageKey)||sessionStorage.setItem(sessionStorageKey,s.sessionId)}catch(e){console.debug("Session storage error",e)}s.eventsQueue.length&&s.throttledClearEventsQueue(),s.cookieQueue.length&&(s.cookieQueue.forEach(function(e){s.setCookie(e[0],e[1])}),s.cookieQueue.length=0)}}),isBrowser&&(this.setTestsFromUrl(),this.getOverridesFromQueryString())}return e.register=function(t,n){var i=this.registry[t];if(i||(i=this.registry[t]=[]),i.push(n),e.isBrowser){var r={type:"builder.register",data:{type:t,info:n}};try{parent.postMessage(r,"*"),parent!==window&&window.postMessage(r,"*")}catch(e){console.debug("Could not postmessage",e)}}this.registryChange.next(this.registry)},e.registerEditor=function(t){if(e.isBrowser){window.postMessage({type:"builder.registerEditor",data:omit(t,"component")},"*");var n=location.hostname;e.isTrustedHost(n)||console.error("Builder.registerEditor() called in the wrong environment! You cannot load custom editors from your app, they must be loaded through the Builder.io app itself. Follow the readme here for more details: https://github.com/builderio/builder/tree/master/plugins/cloudinary or contact chat us in our Spectrum community for help: https://spectrum.chat/builder")}this.editors.push(t)},e.registerPlugin=function(e){this.plugins.push(e)},e.registerAction=function(e){this.actions.push(e)},e.registerTrustedHost=function(e){this.trustedHosts.push(e)},e.isTrustedHost=function(e){return this.trustedHosts.findIndex(function(t){return t===e||e.endsWith(".".concat(t))})>-1},e.runAction=function(e){if(!("string"==typeof e?find(this.actions,function(t){return t.name===e}):e))throw new Error("Action not found: ".concat(e))},e.fields=function(e,t){var n;null===(n=window.parent)||void 0===n||n.postMessage({type:"builder.fields",data:{name:e,fields:t}},"*")},e.set=function(t){e.register("editor.settings",t)},e.import=function(t){if(e.isBrowser){var n=window.System;if(n)return n.import("https://cdn.builder.io/systemjs/".concat(t));console.warn("System.js not available. Please include System.js when using Builder.import")}else console.warn("Builder.import used on the server - this should only be used in the browser")},Object.defineProperty(e,"editingPage",{get:function(){return this._editingPage},set:function(e){this._editingPage=e,isBrowser&&isIframe&&(e?document.body.classList.add("builder-editing-page"):document.body.classList.remove("builder-editing-page"))},enumerable:!1,configurable:!0}),e.prepareComponentSpecToSend=function(e){return __assign(__assign(__assign({},e),e.inputs&&{inputs:e.inputs.map(function(e){for(var t,n=0,i=["onChange","showIf"];n<i.length;n++){var r=i[n];if(e[r]&&"function"==typeof e[r]){var o=e[r];e=__assign(__assign({},e),((t={})[r]="return (".concat(o.toString(),").apply(this, arguments)"),t))}}return e})}),{hooks:Object.keys(e.hooks||{}).reduce(function(t,n){var i=e.hooks&&e.hooks[n];return i?(t[n]="string"==typeof i?i:"return (".concat(i.toString(),").apply(this, arguments)"),t):t},{}),class:void 0})},e.registerBlock=function(e,t){this.registerComponent(e,t)},e.registerComponent=function(e,t){var n,i=__assign(__assign({class:e},e.builderOptions),t);if(this.addComponent(i),t.models&&this.singletonInstance.editingModel?isBrowser&&t.models.includes(this.singletonInstance.editingModel):isBrowser){var r=this.prepareComponentSpecToSend(i);null===(n=window.parent)||void 0===n||n.postMessage({type:"builder.registerComponent",data:r},"*")}},e.addComponent=function(e){var t=find(this.components,function(t){return t.name===e.name});if(t){if(t.class&&!e.class)return;this.components.splice(this.components.indexOf(t),1,e)}else this.components.push(e)},e.component=function(e){var t=this;return void 0===e&&(e={}),function(n){var i,r=__assign(__assign({},e),{class:n});r.name||(r.name=n.name),t.addComponent(r);var o=t.prepareComponentSpecToSend(r);return isBrowser&&(null===(i=window.parent)||void 0===i||i.postMessage({type:"builder.registerComponent",data:o},"*")),n}},Object.defineProperty(e,"Component",{get:function(){return this.component},enumerable:!1,configurable:!0}),e.prototype.processEventsQueue=function(){if(this.eventsQueue.length){var t=this.eventsQueue;this.eventsQueue=[];for(var n=__assign(__assign({},e.overrideUserAttributes),this.trackingUserAttributes),i=0,r=t;i<r.length;i++){var o=r[i];o.data.metadata||(o.data.metadata={}),o.data.metadata.user||(o.data.metadata.user={}),Object.assign(o.data.metadata.user,n,o.data.metadata.user)}var s=this.host;fetch("".concat(s,"/api/v1/track"),{method:"POST",body:JSON.stringify({events:t}),headers:{"content-type":"application/json"},mode:"cors"}).catch(function(){})}},Object.defineProperty(e.prototype,"browserTrackingDisabled",{get:function(){return e.isBrowser&&Boolean(window.builderNoTrack||!navigator.cookieEnabled)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"canTrack",{get:function(){return this.canTrack$.value},set:function(e){this.canTrack!==e&&this.canTrack$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"editingMode",{get:function(){return this.editingMode$.value},set:function(e){e!==this.editingMode&&this.editingMode$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"editingModel",{get:function(){return this.editingModel$.value},set:function(e){e!==this.editingModel&&this.editingModel$.next(e)},enumerable:!1,configurable:!0}),e.prototype.findParentElement=function(e,t,n){if(void 0===n&&(n=!0),!(e instanceof HTMLElement))return null;var i=n?e:e.parentElement;do{if(!i)return null;if(t(i))return i}while(i=i.parentElement);return null},e.prototype.findBuilderParent=function(e){return this.findParentElement(e,function(e){var t=e.getAttribute("builder-id")||e.id;return Boolean(t&&0===t.indexOf("builder-"))})},e.prototype.setUserAgent=function(e){this.userAgent=e||""},e.prototype.setTrackingHook=function(e){this.trackingHooks.push(e)},e.prototype.track=function(t,n,i){if(void 0===n&&(n={}),!isIframe&&isBrowser&&!e.isPreviewing){var r=this.apiKey;if(r){for(var o=JSON.parse(JSON.stringify({type:t,data:__assign(__assign({},omit(n,"meta")),{metadata:__assign(__assign({sdkVersion:e.VERSION,url:location.href},n.meta),n.metadata),ownerId:r,userAttributes:this.getUserAttributes(),sessionId:this.sessionId,visitorId:this.visitorId})})),s=0,a=this.trackingHooks;s<a.length;s++){var u=(0,a[s])(o,i||{});u&&(o=u)}this.eventsQueue.push(o),this.canTrack&&this.throttledClearEventsQueue()}else console.error('Builder integration error: Looks like the Builder SDK has not been initialized properly (your API key has not been set). Make sure you are calling `builder.init("«YOUR-API-KEY»");` as early as possible in your application\'s code.')}},e.prototype.getSessionId=function(){var t=this,n=null;try{e.isBrowser&&"undefined"!=typeof sessionStorage&&(n=this.getCookie(sessionStorageKey))}catch(e){console.debug("Session storage error",e)}return n||(n=uuid()),e.isBrowser&&setTimeout(function(){try{t.canTrack&&t.setCookie(sessionStorageKey,n,datePlusMinutes(30))}catch(e){console.debug("Cookie setting error",e)}}),n},e.prototype.getVisitorId=function(){var t=this;if(this.visitorId)return this.visitorId;var n=null;try{e.isBrowser&&"undefined"!=typeof localStorage&&(n=localStorage.getItem(localStorageKey))}catch(e){console.debug("Local storage error",e)}return n||(n=uuid()),this.visitorId=n,e.isBrowser&&setTimeout(function(){try{t.canTrack&&"undefined"!=typeof localStorage&&n&&localStorage.setItem(localStorageKey,n)}catch(e){console.debug("Session storage error",e)}}),n},e.prototype.trackImpression=function(t,n,i,r){isIframe||!isBrowser||e.isPreviewing||this.track("impression",{contentId:t,variationId:n!==t?n:void 0,metadata:i},r)},e.prototype.trackConversion=function(t,n,i,r,o){if(!isIframe&&isBrowser&&!e.isPreviewing){var s="object"==typeof n?n:r,a="string"==typeof n?n:void 0;this.track("conversion",{amount:t,variationId:i,meta:s,contentId:a},o)}},Object.defineProperty(e.prototype,"isDevelopmentEnv",{get:function(){return e.isIframe||e.isBrowser&&("localhost"===location.hostname||""!==location.port)||"production"!==this.env},enumerable:!1,configurable:!0}),e.prototype.trackInteraction=function(t,n,i,r,o){if(void 0===i&&(i=!1),!isIframe&&isBrowser&&!e.isPreviewing){var s=r&&r.target,a=s&&this.findBuilderParent(s),u={};if(r){var c=r.clientX,l=r.clientY;if(s){var d=c-(g=s.getBoundingClientRect()).left,h=l-g.top,p=m(d/g.width),f=m(h/g.height);u.targetOffset={x:p,y:f}}if(a){var g;d=c-(g=a.getBoundingClientRect()).left,h=l-g.top,p=m(d/g.width),f=m(h/g.height);u.builderTargetOffset={x:p,y:f}}}var v=a&&(a.getAttribute("builder-id")||a.id);v&&a&&(u.builderElementIndex=[].slice.call(document.getElementsByClassName(v)).indexOf(a)),this.track("click",{contentId:t,metadata:u,variationId:n!==t?n:void 0,unique:!i,targetBuilderElement:v||void 0},o)}function m(e){return Math.round(1e3*e)/1e3}},e.prototype.component=function(t){return void 0===t&&(t={}),e.component(t)},Object.defineProperty(e.prototype,"apiKey",{get:function(){return this.apiKey$.value},set:function(e){this.apiKey$.next(e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"authToken",{get:function(){return this.authToken$.value},set:function(e){this.authToken$.next(e)},enumerable:!1,configurable:!0}),e.prototype.modifySearch=function(e){return e.replace(/(^|&|\?)(builder_.*?)=/gi,function(e,t,n){return t+n.replace(/_/g,".")+"="})},e.prototype.setTestsFromUrl=function(){var e=this.getLocation().search,t=QueryString.parseDeep(this.modifySearch(e||"").substr(1)),n=t.builder&&t.builder.tests;if(n&&"object"==typeof n)for(var i in n)n.hasOwnProperty(i)&&this.setTestCookie(i,n[i])},e.prototype.resetOverrides=function(){e.overrideUserAttributes={},this.cachebust=!1,this.noCache=!1,this.preview=!1,this.editingModel=null,this.overrides={},this.env="production",this.userAgent="",this.request=void 0,this.response=void 0},e.prototype.getOverridesFromQueryString=function(){var t=this.getLocation(),n=QueryString.parseDeep(this.modifySearch(t.search||"").substr(1)),i=n.builder;if(i){var r=i.userAttributes,o=i.overrides,s=i.env,a=(i.host,i.api),u=i.cachebust,c=i.noCache,l=i.preview,d=i.editing,h=i.frameEditing,p=i.params;if(r&&this.setUserAttributes(r),o&&(this.overrides=o),validEnvList.indexOf(s||a)>-1&&(this.env=s||a),e.isEditing){var f=h||d||l;f&&"true"!==f&&(this.editingModel=f)}u&&(this.cachebust=!0),c&&(this.noCache=!0),l&&(this.preview=!0),n&&(this.overrideParams=p)}},e.prototype.messageFrameLoaded=function(){var e;null===(e=window.parent)||void 0===e||e.postMessage({type:"builder.loaded",data:{value:!0}},"*")},e.prototype.bindMessageListeners=function(){var t=this;isBrowser&&addEventListener("message",function(n){var i,r,o,s,a,u=parse$1(n.origin),c=-1===["builder.register","builder.registerComponent"].indexOf(null===(i=n.data)||void 0===i?void 0:i.type),l=u.hostname&&e.isTrustedHost(u.hostname);if(!c||l){var d=n.data;if(d)switch(d.type){case"builder.ping":null===(r=window.parent)||void 0===r||r.postMessage({type:"builder.pong",data:{}},"*");break;case"builder.register":if(n.source===window)break;var h=d.data;if(!h)break;var p=h.type,f=h.info,g=e.registry[p];g||(g=e.registry[p]=[]),g.push(f),e.registryChange.next(e.registry);break;case"builder.settingsChange":if(n.source===window)break;var v=d.data;if(!v)break;Object.assign(e.settings,v),e.settingsChange.next(e.settings);break;case"builder.registerEditor":if(n.source===window)break;var m=d.data;if(!m)break;var y=!!m.component;e.editors.every(function(t,n){return m.name!==t.name||!(t.component&&!y)&&(e.editors[n]=t,!1)});break;case"builder.triggerAnimation":e.animator.triggerAnimation(d.data);break;case"builder.contentUpdate":var b=d.data.key||d.data.alias||d.data.entry||d.data.modelName,w=d.data.data,k=t.observersByKey[b];k&&!t.noEditorUpdates[b]&&k.next([w]);break;case"builder.getComponents":null===(o=window.parent)||void 0===o||o.postMessage({type:"builder.components",data:e.components.map(function(t){return e.prepareComponentSpecToSend(t)})},"*");break;case"builder.editingModel":t.editingModel=d.data.model;break;case"builder.registerComponent":var C=d.data;e.addComponent(C);break;case"builder.blockContentLoading":"string"==typeof d.data.model&&(t.blockContentLoading=d.data.model);break;case"builder.editingMode":d.data?(t.editingMode=!0,document.body.classList.add("builder-editing")):(t.editingMode=!1,document.body.classList.remove("builder-editing"));break;case"builder.editingPageMode":var S=d.data;e.editingPage=S;break;case"builder.overrideUserAttributes":var _=d.data;assign(e.overrideUserAttributes,_),t.flushGetContentQueue(!0);break;case"builder.overrideTestGroup":var x=d.data,T=x.variationId,B=x.contentId;T&&B&&(t.setTestCookie(B,T),t.flushGetContentQueue(!0));break;case"builder.evaluate":var I=d.data.text,P=d.data.arguments||[],O=d.data.id,E=new Function(I),A=void 0,j=null;try{A=E.apply(t,P)}catch(e){j=toError(e)}j?null===(s=window.parent)||void 0===s||s.postMessage({type:"builder.evaluateError",data:{id:O,error:j.message}},"*"):A&&"function"==typeof A.then?A.then(function(e){var t;null===(t=window.parent)||void 0===t||t.postMessage({type:"builder.evaluateResult",data:{id:O,result:e}},"*")}).catch(console.error):null===(a=window.parent)||void 0===a||a.postMessage({type:"builder.evaluateResult",data:{result:A,id:O}},"*")}}})},Object.defineProperty(e.prototype,"defaultCanTrack",{get:function(){return Boolean(e.isBrowser&&navigator.userAgent.trim()&&!navigator.userAgent.match(/bot|crawler|spider|robot|crawling|prerender|google|baidu|bing|msn|duckduckbot|teoma|slurp|yandex|phantom|headless|selenium|puppeteer/i)&&!this.browserTrackingDisabled)},enumerable:!1,configurable:!0}),e.prototype.init=function(e,t,n,i,r){return void 0===t&&(t=this.defaultCanTrack),n&&(this.request=n),i&&(this.response=i),this.canTrack=t,this.apiKey=e,r&&(this.authToken=r),this},Object.defineProperty(e.prototype,"previewingModel",{get:function(){var e=this.getLocation().search;return QueryString.parse((e||"").substr(1))["builder.preview"]},enumerable:!1,configurable:!0}),e.prototype.getLocation=function(){var e,t={};return this.request?t=parse$1(null!==(e=this.request.url)&&void 0!==e?e:""):"object"==typeof location&&(t=parse$1(location.href)),""===t.pathname&&(t.pathname="/"),t},e.prototype.getUserAttributes=function(t){void 0===t&&(t=this.userAgent||"");var n={Android:function(){return t.match(/Android/i)},BlackBerry:function(){return t.match(/BlackBerry/i)},iOS:function(){return t.match(/iPhone|iPod/i)},Opera:function(){return t.match(/Opera Mini/i)},Windows:function(){return t.match(/IEMobile/i)||t.match(/WPDesktop/i)},any:function(){return n.Android()||n.BlackBerry()||n.iOS()||n.Opera()||n.Windows()}},i=t.match(/Tablet|iPad/i),r=this.getLocation();return __assign({urlPath:r.pathname,host:r.host||r.hostname,device:i?"tablet":n.any()?"mobile":"desktop"},e.overrideUserAttributes)},e.prototype.setUserAttributes=function(t){assign(e.overrideUserAttributes,t),this.userAttributesChanged.next(t)},e.prototype.setTrackingUserAttributes=function(e){assign(this.trackingUserAttributes,e)},e.prototype.get=function(t,n){void 0===n&&(n={});var i=this;return e.isBrowser?(n.apiKey&&!this.apiKey&&(this.apiKey=n.apiKey),n.authToken&&!this.authToken&&(this.authToken=n.authToken)):(i=new e(n.apiKey||this.apiKey,n.req,n.res,void 0,n.authToken||this.authToken)).setUserAttributes(this.getUserAttributes()),i.queueGetContent(t,n).map(function(t){var n=t&&t[0];if(e.isStatic)return n;var i=n&&n.data;return i?(void 0!==i.blocksString&&(i.blocks=JSON.parse(i.blocksString),delete i.blocksString),{data:i,id:n.id,variationId:n.testVariationId||n.variationId||null,testVariationId:n.testVariationId||n.variationId||null,testVariationName:n.testVariationName||null,lastUpdated:n.lastUpdated||null}):null})},e.prototype.queueGetContent=function(t,n){var i=this;void 0===n&&(n={});var r=n.key||n.alias||t,o=this.editingModel===t,s=this.observersByKey[r];"DEMO"!==this.apiKey||this.overrides[r]||n.initialContent||(n.initialContent=[]);var a=n.initialContent;if(s&&(!s.value||n.cache))return s.value&&nextTick(function(){s.next(s.value)}),s;if(o&&e.isBrowser&&parent.postMessage({type:"builder.updateContent",data:{options:n}},"*"),!a)if(this.getContentQueue||(this.getContentQueue=[]),this.getContentQueue.push(__assign(__assign({},n),{model:t,key:r})),this.getContentQueue&&this.getContentQueue.length>=this.contentPerRequest){var u=this.getContentQueue.slice();this.getContentQueue=[],nextTick(function(){i.flushGetContentQueue(!1,u)})}else nextTick(function(){i.flushGetContentQueue()});var c=new BehaviorSubject(null);return this.observersByKey[r]=c,n.noEditorUpdates&&(this.noEditorUpdates[r]=!0),a&&nextTick(function(){c.next(a)}),c},Object.defineProperty(e.prototype,"host",{get:function(){switch(this.env){case"qa":return"https://qa.builder.io";case"test":return"https://builder-io-test.web.app";case"fast":return"https://fast.builder.io";case"cloud":return"https://cloud.builder.io";case"cdn2":return"https://cdn2.builder.io";case"cdn-qa":return"https://cdn-qa.builder.io";case"development":case"dev":return"http://localhost:5000";case"cdn-prod":return"https://cdn.builder.io";default:return e.overrideHost||"https://cdn.builder.io"}},enumerable:!1,configurable:!0}),e.prototype.flushGetContentQueue=function(t,n){var i=this;if(void 0===t&&(t=!1),!this.apiKey)throw new Error("Fetching content failed, expected apiKey to be defined instead got: ".concat(this.apiKey));if(t||this.getContentQueue){var r=n||(t?this.priorContentQueue:this.getContentQueue)||[];this.getOverridesFromQueryString();var o=__assign({omit:r[0].omit||"meta.componentsUsed",apiKey:this.apiKey},r[0].options);r[0].fields&&(o.fields=r[0].fields),r[0].format&&(o.format=r[0].format);var s="undefined"!=typeof location?QueryString.parseDeep(location.search.substr(1)):{},a=r&&r[0].userAttributes?r[0].userAttributes:this.targetContent?this.getUserAttributes():{urlPath:this.getLocation().pathname};if(r.find(function(e){return!!e.includeUrl})){var u=this.getLocation();u.origin&&(o.url="".concat(u.origin).concat(u.pathname).concat(u.search))}var c=null===n||void 0===n?void 0:n.find(function(e){return e.url});if((null===c||void 0===c?void 0:c.url)&&(a.urlPath=c.url.split("?")[0]),o.userAttributes=a,t||n||(this.priorContentQueue=r,this.getContentQueue=null),(this.cachebust||isIframe||s.cachebust||s["builder.cachebust"]||"production"!==this.env)&&(o.cachebust=!0),e.isEditing&&(o.isEditing=!0),(this.noCache||"production"!==this.env)&&(o.noCache=!0),size(this.overrides))for(var l in this.overrides)this.overrides.hasOwnProperty(l)&&(o["overrides.".concat(l)]=this.overrides[l]);e.isReact||(o.prerender=!0);for(var d=0,h=r;d<h.length;d++){var p=h[d];p.format&&(o.format=p.format),p.static&&(o.static=p.static),p.cachebust&&(o.cachebust=p.cachebust),isPositiveNumber(p.cacheSeconds)&&(o.cacheSeconds=p.cacheSeconds),isPositiveNumber(p.staleCacheSeconds)&&(o.staleCacheSeconds=p.staleCacheSeconds);for(var f=0,g=["prerender","extractCss","limit","offset","query","preview","model","entry","rev","static"];f<g.length;f++){var v=p[l=g[f]];void 0!==v&&(o.options=o.options||{},o.options[p.key]=o.options[p.key]||{},o.options[p.key][l]=JSON.stringify(v))}}this.preview&&(o.preview="true");var m=Object.keys(o).length>0,y=this.host,b=r.map(function(e){return encodeURIComponent(e.key)}).join(",");if(this.overrideParams)assign(o,omit(QueryString.parse(this.overrideParams),"apiKey"));var w=QueryString.stringifyDeep(o),k=o.format,C={headers:{}};this.authToken&&(C.headers=__assign(__assign({},C.headers),{Authorization:"Bearer ".concat(this.authToken)}));var S="solid"===k||"react"===k?"codegen":"query",_="".concat(y,"/api/v1/").concat(S,"/").concat(this.apiKey,"/").concat(b)+(o&&m?"?".concat(w):"");return fetch(_,C).then(function(e){return e.json()}).then(function(t){for(var n=0,o=r;n<o.length;n++){var s=o[n],a=s.key;if(s.model!==i.blockContentLoading||s.noEditorUpdates){i.editingModel===s.model&&e.isEditing&&parent.postMessage({type:"builder.updateContent",data:{options:s}},"*");var u=i.observersByKey[a];if(!u)return;var c=t[a],l=c;if(c){var d=e.isServer?l:i.processResultsForTests(l);u.next(d)}else{if((i.getLocation().search||"").includes("builder.preview="+s.model)){u.next([{id:"preview",name:"Preview",data:{}}])}u.next([])}}}},function(e){for(var t=0,n=r;t<n.length;t++){var o=n[t],s=i.observersByKey[o.key];if(!s)return;s.error(e)}})}},e.prototype.processResultsForTests=function(e){var t,n=this,i=e.map(function(e){if(!e.variations)return e;var t=n.getTestCookie(e.id),i=t===e.id?e:e.variations[t];if(i)return __assign(__assign({},e),{data:i.data,variationId:t,testVariationId:t,testVariationName:i.name});if(n.canTrack&&e.variations&&size(e.variations)){var r=0,o=Math.random();for(var s in e.variations){var a=e.variations[s];if(o<(r+=a.testRatio)){n.setTestCookie(e.id,a.id);var u=a.name||(a.id===e.id?"Default variation":"");return __assign(__assign({},e),{data:a.data,variationId:a.id,testVariationId:a.id,variationName:u,testVariationName:u})}}n.setTestCookie(e.id,e.id)}return __assign(__assign(__assign({},e),{variationId:e.id}),e.variations&&size(e.variations)&&{testVariationId:e.id,testVariationName:"Default variation"})});return isIframe&&(null===(t=window.parent)||void 0===t||t.postMessage({type:"builder.contentResults",data:{results:i}},"*")),i},e.prototype.getTestCookie=function(e){return this.getCookie("".concat(this.testCookiePrefix,".").concat(e))},e.prototype.setTestCookie=function(e,t){if(this.canTrack){var n=new Date;return n.setDate(n.getDate()+30),this.setCookie("".concat(this.testCookiePrefix,".").concat(e),t,n)}this.cookieQueue.push([e,t])},e.prototype.getCookie=function(t){return this.cookies?this.cookies.get(t):e.isBrowser&&getCookie(t)},e.prototype.setCookie=function(t,n,i){return!this.cookies||e.isServer&&e.isStatic?e.isBrowser&&setCookie(t,n,i):this.cookies.set(t,n,{expires:i,secure:"https:"===this.getLocation().protocol})},e.prototype.getContent=function(e,t){if(void 0===t&&(t={}),!this.apiKey)throw new Error("Fetching content from model ".concat(e," failed, expected apiKey to be defined instead got: ").concat(this.apiKey));return this.queueGetContent(e,t)},e.prototype.getAll=function(t,n){void 0===n&&(n={});var i=this;return e.isBrowser?n.apiKey&&!this.apiKey&&(this.apiKey=n.apiKey):(i=new e(n.apiKey||this.apiKey,n.req,n.res)).setUserAttributes(this.getUserAttributes()),i.getContent(t,__assign(__assign({limit:30},n),{key:n.key||e.isBrowser?"".concat(t,":").concat(hashSum(omit(n,"initialContent","req","res"))):void 0})).promise()},e.VERSION=version,e.components=[],e.isStatic=!0,e.animator=new Animator,e.nextTick=nextTick,e.throttle=throttle,e.editors=[],e.trustedHosts=["builder.io","localhost"],e.plugins=[],e.actions=[],e.registry={},e.registryChange=new BehaviorSubject({}),e._editingPage=!1,e.isIframe=isIframe,e.isBrowser=isBrowser,e.isReactNative=isReactNative,e.isServer=!isBrowser&&!isReactNative,e.previewingModel=e.isBrowser&&getQueryParam(location.href,"builder.preview"),e.settings={},e.settingsChange=new BehaviorSubject({}),e.isEditing=Boolean(isIframe&&(document.referrer&&document.referrer.match(/builder\.io|localhost:1234/)||-1!==location.search.indexOf("builder.frameEditing="))),e.isPreviewing=Boolean(isBrowser&&(-1!==location.search.indexOf("builder.preview=")||-1!==location.search.indexOf("builder.frameEditing="))),e.isReact=!1,e.overrideUserAttributes={},e}(),builder=new Builder(null,void 0,void 0,!0);Builder.singletonInstance=builder,exports.Builder=Builder,exports.BuilderComponent=BuilderComponent,exports.isBrowser=isBrowser,exports.BehaviorSubject=BehaviorSubject,exports.Subscription=Subscription,exports.builder=builder,Object.defineProperty(exports,"__esModule",{value:!0})});
2
2
  //# sourceMappingURL=index.browser.js.map