{"version":3,"file":"builder.io-sdk-angular.mjs","sources":["../../../src/index-helpers/top-of-file.ts","../../../src/components/dynamic-renderer/dynamic-renderer.helpers.ts","../../../src/components/dynamic-renderer/dynamic-renderer.ts","../../../src/constants/target.ts","../../../src/functions/get-class-prop-name.ts","../../../src/blocks/button/button.ts","../../../src/context/builder.context.ts","../../../src/context/components.context.ts","../../../src/helpers/logger.ts","../../../src/functions/get.ts","../../../src/functions/is-browser.ts","../../../src/helpers/search/search.ts","../../../src/functions/is-iframe.ts","../../../src/functions/is-editing.ts","../../../src/functions/track/helpers.ts","../../../src/constants/sdk-version.ts","../../../src/helpers/sdk-headers.ts","../../../src/helpers/nullable.ts","../../../src/helpers/url.ts","../../../src/helpers/cookie.ts","../../../src/helpers/uuid.ts","../../../src/helpers/sessionId.ts","../../../src/helpers/localStorage.ts","../../../src/helpers/visitorId.ts","../../../src/functions/log-fetch.ts","../../../src/functions/track/index.ts","../../../src/functions/evaluate/helpers.ts","../../../src/functions/evaluate/edge-runtime/acorn-interpreter.ts","../../../src/functions/evaluate/edge-runtime/edge-runtime.ts","../../../src/functions/evaluate/choose-eval.ts","../../../src/functions/evaluate/evaluate.ts","../../../src/functions/get-block-component-options.ts","../../../src/helpers/omit.ts","../../../src/functions/traverse.ts","../../../src/functions/extract-localized-values.ts","../../../src/functions/fast-clone.ts","../../../src/functions/set.ts","../../../src/functions/transform-block.ts","../../../src/functions/get-processed-block.ts","../../../src/components/dynamic-div.ts","../../../src/functions/camel-to-kebab-case.ts","../../../src/components/block/animator.ts","../../../src/functions/extract-text-styles.ts","../../../src/helpers/css.ts","../../../src/functions/transform-style-property.ts","../../../src/functions/get-style.ts","../../../src/components/block/block.helpers.ts","../../../src/functions/event-handler-name.ts","../../../src/functions/get-block-actions-handler.ts","../../../src/functions/get-block-actions.ts","../../../src/functions/transform-block-properties.ts","../../../src/functions/get-block-properties.ts","../../../src/components/block/components/block-wrapper.ts","../../../src/functions/is-previewing.ts","../../../src/functions/register-component.ts","../../../src/functions/register.ts","../../../src/functions/set-editor-settings.ts","../../../src/functions/get-builder-search-params/index.ts","../../../src/functions/is-from-trusted-host.ts","../../../src/scripts/init-editing.ts","../../../src/helpers/subscribe-to-editor.ts","../../../src/helpers/ab-tests.ts","../../../src/helpers/no-serialize-wrapper.ts","../../../src/helpers/user-attributes.ts","../../../src/helpers/canTrack.ts","../../../src/helpers/preview-lru-cache/get.ts","../../../src/functions/get-global-this.ts","../../../src/functions/get-fetch.ts","../../../src/helpers/flatten.ts","../../../src/types/api-version.ts","../../../src/functions/get-content/generate-content-url.ts","../../../src/functions/get-content/index.ts","../../../src/functions/fetch-builder-props.ts","../../../src/components/awaiter.ts","../../../src/helpers/find-block.ts","../../../src/components/live-edit.ts","../../../src/components/block/components/interactive-element.ts","../../../src/components/block/components/component-ref/component-ref.helpers.ts","../../../src/components/block/components/component-ref/component-ref.ts","../../../src/components/block/components/repeated-block.ts","../../../src/constants/device-sizes.ts","../../../src/components/inlined-styles.ts","../../../src/components/block/components/block-styles.ts","../../../src/components/block/components/live-edit-block-styles.ts","../../../src/components/block/components/style-wrapper.ts","../../../src/components/block/block.ts","../../../src/components/blocks/blocks-wrapper.ts","../../../src/components/blocks/blocks.ts","../../../src/blocks/columns/helpers.ts","../../../src/blocks/columns/columns.ts","../../../src/blocks/fragment/fragment.ts","../../../src/blocks/image/image.helpers.ts","../../../src/blocks/image/image.ts","../../../src/blocks/section/section.ts","../../../src/blocks/personalization-container/helpers/inlined-fns.ts","../../../src/blocks/personalization-container/helpers.ts","../../../src/blocks/accordion/component-info.ts","../../../src/blocks/accordion/helpers.ts","../../../src/blocks/accordion/accordion.ts","../../../src/blocks/button/component-info.ts","../../../src/blocks/columns/component-info.ts","../../../src/blocks/fragment/component-info.ts","../../../src/constants/file-types.ts","../../../src/blocks/image/component-info.ts","../../../src/blocks/personalization-container/component-info.ts","../../../src/components/inlined-script.ts","../../../src/blocks/personalization-container/personalization-container.ts","../../../src/blocks/section/component-info.ts","../../../src/blocks/slot/component-info.ts","../../../src/blocks/slot/slot.ts","../../../src/blocks/symbol/component-info.ts","../../../src/blocks/tabs/component-info.ts","../../../src/blocks/tabs/tabs.ts","../../../src/blocks/text/component-info.ts","../../../src/blocks/text/text.ts","../../../src/blocks/custom-code/component-info.ts","../../../src/blocks/custom-code/custom-code.ts","../../../src/blocks/embed/component-info.ts","../../../src/blocks/embed/helpers.ts","../../../src/blocks/embed/embed.ts","../../../src/blocks/form/form/component-info.ts","../../../src/functions/get-env.ts","../../../src/blocks/form/form/form.ts","../../../src/blocks/form/input/component-info.ts","../../../src/blocks/form/input/input.ts","../../../src/blocks/form/select/component-info.ts","../../../src/blocks/form/select/select.ts","../../../src/blocks/form/submit-button/component-info.ts","../../../src/blocks/form/submit-button/submit-button.ts","../../../src/blocks/form/textarea/component-info.ts","../../../src/blocks/form/textarea/textarea.ts","../../../src/blocks/img/component-info.ts","../../../src/blocks/img/img.ts","../../../src/blocks/video/component-info.ts","../../../src/blocks/video/video.ts","../../../src/constants/extra-components.ts","../../../src/constants/builder-registered-components.ts","../../../src/components/content-variants/inlined-fns.ts","../../../src/components/content-variants/helpers.ts","../../../src/functions/track/interaction.ts","../../../src/components/content/components/enable-editor.helpers.ts","../../../src/components/content/components/styles.helpers.ts","../../../src/components/content/components/enable-editor.ts","../../../src/components/content/components/styles.ts","../../../src/components/content/content.helpers.ts","../../../src/components/content/content.ts","../../../src/components/content-variants/content-variants.ts","../../../src/blocks/symbol/symbol.helpers.ts","../../../src/blocks/symbol/symbol.ts","../../../src/index.ts","../../../src/builder.io-sdk-angular.ts"],"sourcesContent":["// no-op\n// this file exists in case a target needs to add logic to the top of the index file in an\n// override.\nexport default undefined","/**\n * https://developer.mozilla.org/en-US/docs/Glossary/Empty_element\n */\nconst EMPTY_HTML_ELEMENTS = new Set(['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'keygen', 'link', 'meta', 'param', 'source', 'track', 'wbr']);\nexport const isEmptyElement = (tagName: any): boolean => {\n  return typeof tagName === 'string' && EMPTY_HTML_ELEMENTS.has(tagName.toLowerCase());\n}","import { CommonModule } from '@angular/common';\nimport { Component, ElementRef, input, viewChild, Renderer2, SimpleChanges, TemplateRef, ViewContainerRef, signal, computed } from '@angular/core';\nimport { isEmptyElement } from './dynamic-renderer.helpers';\n\n\n@Component({\n  selector: 'dynamic-renderer, DynamicRenderer',\n  template: `\n    <ng-template #tagnameTemplate><ng-content></ng-content></ng-template>\n    <ng-container *ngIf=\"!isEmptyElement(effectiveTagName())\">\n      <ng-container *ngIf=\"tagNameIsString()\">\n        <ng-container\n          *ngComponentOutlet=\"\n            mappedComponent();\n            inputs: {\n              attributes: attributes(),\n              actionAttributes: actionAttributes(),\n              tagName: tagName()\n            };\n            content: myContent\n          \"\n        ></ng-container>\n      </ng-container>\n      <ng-container *ngIf=\"!tagNameIsString() && dynamicTagName() !== ''\">\n        <ng-container\n          *ngComponentOutlet=\"\n            effectiveTagName();\n            inputs: {\n              attributes: attributes(),\n              actionAttributes: actionAttributes(),\n              tagName: tagName()\n            };\n            content: myContent\n          \"\n        ></ng-container>\n      </ng-container>\n       <ng-container *ngIf=\"!tagNameIsString() && dynamicTagName() === ''\">\n        <ng-container\n          *ngComponentOutlet=\"\n            effectiveTagName();\n            inputs: {\n              attributes: attributes(),\n              actionAttributes: actionAttributes(),\n            };\n            content: myContent\n          \"\n        ></ng-container>\n      </ng-container>\n    </ng-container>\n    <ng-container *ngIf=\"!!isEmptyElement(effectiveTagName())\">\n      <ng-container\n        *ngComponentOutlet=\"\n          effectiveTagName();\n          inputs: {\n            attributes: attributes(),\n            actionAttributes: actionAttributes(),\n          };\n          content: myContent\n        \"\n      ></ng-container>\n    </ng-container>\n  `,\n  standalone: true,\n  imports: [CommonModule],\n  styles: [':host { display: contents; }'],\n})\nexport default class DynamicRenderer {\n  isEmptyElement = isEmptyElement;\n\n  TagName = input.required<any>();\n  attributes = input.required<any>();\n  actionAttributes = input.required<any>();\n  tagName = signal<string>('');\n\n  tagnameTemplateRef = viewChild<TemplateRef<any>>('tagnameTemplate');\n  private _processedTagName = signal<any>(null);\n\n  myContent?: any[][];\n\n  tagNameIsString = computed(() => typeof this.TagName() === 'string');\n  \n  dynamicTagName = computed(() => this.tagName());\n  \n  effectiveTagName = computed(() => this._processedTagName());\n  \n  mappedComponent = computed(() => {\n    if (this.tagNameIsString()) {\n      return this.getComponentType(this.TagName());\n    }\n    return null;\n  });\n\n  constructor(private vcRef: ViewContainerRef) {}\n\n  private tagComponentMap: { [key: string]: any } = {\n    'a': DynamicA,\n    'button': DynamicButton,\n    'div': DynamicDiv,\n    'span': DynamicSpan,\n    'p': DynamicP,\n    'img': DynamicImg,\n    'input': DynamicInput,\n    'textarea': DynamicTextarea,\n    'select': DynamicSelect,\n    'option': DynamicOption,\n    'form': DynamicForm,\n    'label': DynamicLabel,\n    'ul': DynamicUl,\n    'li': DynamicLi,\n    'table': DynamicTable,\n    'tr': DynamicTr,\n    'td': DynamicTd,\n    'th': DynamicTh,\n    'thead': DynamicThead,\n    'tbody': DynamicTbody,\n    'footer': DynamicFooter,\n    'header': DynamicHeader,\n    'nav': DynamicNav,\n    'section': DynamicSection,\n    'article': DynamicArticle,\n    'aside': DynamicAside,\n    'h1': DynamicH1,\n    'h2': DynamicH2,\n    'h3': DynamicH3,\n    'h4': DynamicH4,\n    'h5': DynamicH5,\n    'h6': DynamicH6,\n    'blockquote': DynamicBlockquote,\n    'code': DynamicCode,\n    'pre': DynamicPre,\n    'figure': DynamicFigure,\n    'figcaption': DynamicFigcaption,\n    'video': DynamicVideo,\n    'audio': DynamicAudio,\n    'canvas': DynamicCanvas,\n    'iframe': DynamicIframe\n  };\n\n  getComponentType(tagName: string): any {\n    return this.tagComponentMap[tagName] || DynamicElement;\n  }\n\n  ngAfterContentInit() {\n    if (this.tagNameIsString()) {\n      if (this.tagComponentMap[this.TagName()]) {\n        this._processedTagName.set(this.tagComponentMap[this.TagName()]);\n      } else {\n        this.tagName.set(this.TagName());\n        this._processedTagName.set(DynamicElement);\n      }\n    } else {\n      this._processedTagName.set(this.TagName());\n    }\n    this.myContent = [this.vcRef.createEmbeddedView(this.tagnameTemplateRef()).rootNodes];\n  }\n}\n\n@Component({\n  selector: 'dynamic-a, DynamicA',\n  template: ` <a #v ><ng-content></ng-content></a> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicA {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-button, DynamicButton',\n  template: ` <button #v ><ng-content></ng-content></button> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicButton {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-div, DynamicDiv',\n  template: ` <div #v ><ng-content></ng-content></div> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicDiv {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-span, DynamicSpan',\n  template: ` <span #v ><ng-content></ng-content></span> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicSpan {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-p, DynamicP',\n  template: ` <p #v ><ng-content></ng-content></p> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicP {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-img, DynamicImg',\n  template: ` <img #v /> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicImg {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-input, DynamicInput',\n  template: ` <input #v /> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicInput {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-textarea, DynamicTextarea',\n  template: ` <textarea #v ><ng-content></ng-content></textarea> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicTextarea {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-select, DynamicSelect',\n  template: ` <select #v ><ng-content></ng-content></select> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicSelect {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-option, DynamicOption',\n  template: ` <option #v ><ng-content></ng-content></option> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicOption {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-form, DynamicForm',\n  template: ` <form #v ><ng-content></ng-content></form> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicForm {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-label, DynamicLabel',\n  template: ` <label #v ><ng-content></ng-content></label> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicLabel {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-ul, DynamicUl',\n  template: ` <ul #v ><ng-content></ng-content></ul> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicUl {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-li, DynamicLi',\n  template: ` <li #v ><ng-content></ng-content></li> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicLi {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-table, DynamicTable',\n  template: ` <table #v ><ng-content></ng-content></table> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicTable {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-tr, DynamicTr',\n  template: ` <tr #v ><ng-content></ng-content></tr> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicTr {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-td, DynamicTd',\n  template: ` <td #v ><ng-content></ng-content></td> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicTd {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-th, DynamicTh',\n  template: ` <th #v ><ng-content></ng-content></th> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicTh {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-thead, DynamicThead',\n  template: ` <thead #v ><ng-content></ng-content></thead> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicThead {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-tbody, DynamicTbody',\n  template: ` <tbody #v ><ng-content></ng-content></tbody> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicTbody {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-footer, DynamicFooter',\n  template: ` <footer #v ><ng-content></ng-content></footer> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicFooter {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-header, DynamicHeader',\n  template: ` <header #v ><ng-content></ng-content></header> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicHeader {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-nav, DynamicNav',\n  template: ` <nav #v ><ng-content></ng-content></nav> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicNav {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-section, DynamicSection',\n  template: ` <section #v ><ng-content></ng-content></section> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicSection {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-article, DynamicArticle',\n  template: ` <article #v ><ng-content></ng-content></article> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicArticle {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-aside, DynamicAside',\n  template: ` <aside #v ><ng-content></ng-content></aside> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicAside {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-h1, DynamicH1',\n  template: ` <h1 #v ><ng-content></ng-content></h1> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicH1 {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-h2, DynamicH2',\n  template: ` <h2 #v ><ng-content></ng-content></h2> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicH2 {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-h3, DynamicH3',\n  template: ` <h3 #v ><ng-content></ng-content></h3> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicH3 {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-h4, DynamicH4',\n  template: ` <h4 #v ><ng-content></ng-content></h4> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicH4 {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-h5, DynamicH5',\n  template: ` <h5 #v ><ng-content></ng-content></h5> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicH5 {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-h6, DynamicH6',\n  template: ` <h6 #v ><ng-content></ng-content></h6> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicH6 {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-blockquote, DynamicBlockquote',\n  template: ` <blockquote #v ><ng-content></ng-content></blockquote> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicBlockquote {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-code, DynamicCode',\n  template: ` <code #v ><ng-content></ng-content></code> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicCode {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-pre, DynamicPre',\n  template: ` <pre #v ><ng-content></ng-content></pre> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicPre {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-figure, DynamicFigure',\n  template: ` <figure #v ><ng-content></ng-content></figure> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicFigure {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-figcaption, DynamicFigcaption',\n  template: ` <figcaption #v ><ng-content></ng-content></figcaption> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicFigcaption {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-video, DynamicVideo',\n  template: ` <video #v ><ng-content></ng-content></video> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicVideo {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-audio, DynamicAudio',\n  template: ` <audio #v ><ng-content></ng-content></audio> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicAudio {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-canvas, DynamicCanvas',\n  template: ` <canvas #v ><ng-content></ng-content></canvas> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicCanvas {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n@Component({\n  selector: 'dynamic-iframe, DynamicIframe',\n  template: ` <iframe #v ><ng-content></ng-content></iframe> `,\n  standalone: true,\n  styles: [':host { display: contents; }'],\n})\nexport class DynamicIframe {\n  attributes = input.required<any>();\n  actionAttributes = input<any | undefined>();\n  tagName = input<string | undefined>();\n  \n  v = viewChild<ElementRef>('v');\n  _listenerFns = new Map<string, () => void>();\n  constructor(private renderer: Renderer2) {}\n  setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n    const target = changes ? changes : value;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(key, this.renderer.listen(el, key.replace('on', '').toLowerCase(), target[key]));\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n  ngAfterViewInit() {\n    this.setAttributes(this.v()?.nativeElement, this.attributes());\n  }\n  ngOnChanges(changes: SimpleChanges) {\n    if (changes.attributes) {\n      this.setAttributes(this.v()?.nativeElement, this.attributes(), changes.attributes.currentValue);\n    }\n  }\n  ngOnDestroy() {\n    this._listenerFns.forEach(fn => fn());\n  }\n}\n\n  @Component({\n      selector: 'dynamic-element',\n      template: '<ng-content></ng-content>',\n      standalone: true\n    })\n\n    export class DynamicElement {\n      tagName = input<string>();\n      attributes = input<any>();\n      actionAttributes = input<any>();\n    \n      private _element!: HTMLElement;\n      private _listenerFns = new Map<string, () => void>();\n    \n      constructor(private hostRef: ElementRef, private renderer: Renderer2) {}\n    \n      ngOnInit() {\n        if(this.tagName()){\n          this._element = this.renderer.createElement(this.tagName());\n          this.renderer.appendChild(this.hostRef.nativeElement, this._element);\n          this.setAttributes(this._element, this.attributes());\n        }\n      }\n\n      ngAfterViewInit(){\n        if(this.hostRef.nativeElement.children.length > 1){\n          this.renderer.appendChild(this.hostRef.nativeElement.children[1], this.hostRef.nativeElement.children[0]);\n        }\n      }\n    \n      ngOnDestroy() {\n        this._listenerFns.forEach((fn) => fn());\n      }\n    \n      setAttributes(el: any, attributes: any) {\n        if (!attributes) return;\n        Object.keys(attributes).forEach((key) => {\n          if (key.startsWith('on')) {\n            if (this._listenerFns.has(key)) {\n              this._listenerFns.get(key)!();\n            }\n            const eventType = key.replace('on', '').toLowerCase();\n            this._listenerFns.set(key, this.renderer.listen(el, eventType, attributes[key]));\n          } else {\n            this.renderer.setAttribute(el, key, attributes[key] ?? '');\n          }\n        });\n      }\n    }","type Target = import('../types/targets').Target;\n/** This file should be overriden for each framework. Ideally this would be implemented in Mitosis.  */\nexport const TARGET = 'angular' as Target;\n","import { TARGET } from '../constants/target';\nexport const getClassPropName = () => {\n  switch (TARGET) {\n    case 'react':\n    case 'reactNative':\n    case 'rsc':\n      return 'className';\n    case 'svelte':\n    case 'vue':\n    case 'solid':\n    case 'qwik':\n    case 'angular':\n      return 'class';\n  }\n}","import { Component, input, effect, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport DynamicRenderer from \"../../components/dynamic-renderer/dynamic-renderer\";\nimport { getClassPropName } from \"../../functions/get-class-prop-name\";\nimport { filterAttrs } from \"../helpers\";\nimport type { ButtonProps } from \"./button.types\";\n\n@Component({\n  selector: \"builder-button\",\n  standalone: true,\n  imports: [CommonModule, DynamicRenderer],\n  template: `\n    <dynamic-renderer\n      [attributes]=\"attrs()\"\n      [TagName]=\"link() ? builderLinkComponent() || 'a' : 'button'\"\n      [actionAttributes]=\"{}\"\n    >\n      {{text()}}\n    </dynamic-renderer>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Button {\n  attributes: InputSignal<ButtonProps[\"attributes\"]> =\n    input<ButtonProps[\"attributes\"]>();\n  link: InputSignal<ButtonProps[\"link\"]> = input<ButtonProps[\"link\"]>();\n  openLinkInNewTab: InputSignal<ButtonProps[\"openLinkInNewTab\"]> =\n    input<ButtonProps[\"openLinkInNewTab\"]>();\n  builderLinkComponent: InputSignal<ButtonProps[\"builderLinkComponent\"]> =\n    input<ButtonProps[\"builderLinkComponent\"]>();\n  text: InputSignal<ButtonProps[\"text\"]> = input<ButtonProps[\"text\"]>();\n\n  attrs() {\n    return {\n      ...this.attributes(),\n      [getClassPropName()]: `${this.link() ? \"\" : \"builder-button\"} ${\n        this.attributes()[getClassPropName()] || \"\"\n      }`,\n      ...(this.link()\n        ? {\n            href: this.link(),\n            target: this.openLinkInNewTab() ? \"_blank\" : undefined,\n            role: \"link\",\n          }\n        : {\n            role: \"button\",\n          }),\n    };\n  }\n\n  constructor() {}\n}\n","import { Injectable } from \"@angular/core\";\n\n@Injectable({\n  providedIn: \"root\",\n})\nexport default class BuilderContext {\n  content: any = null;\n  context: any = {};\n  localState: any = undefined;\n  rootSetState() {}\n  rootState: any = {};\n  apiKey: any = null;\n  apiVersion: any = undefined;\n  componentInfos: any = {};\n  inheritedStyles: any = {};\n  BlocksWrapper: any = \"div\";\n  BlocksWrapperProps: any = {};\n  nonce: any = \"\";\n  model: any = \"\";\n\n  constructor() {}\n}\n","import { Injectable } from \"@angular/core\";\n\n@Injectable({\n  providedIn: \"root\",\n})\nexport default class ComponentsContext {\n  registeredComponents: any = {};\n\n  constructor() {}\n}\n","export const MSG_PREFIX = '[Builder.io]: ';\nexport const logger = {\n  log: (...message: any[]) => console.log(MSG_PREFIX, ...message),\n  error: (...message: any[]) => console.error(MSG_PREFIX, ...message),\n  warn: (...message: any[]) => console.warn(MSG_PREFIX, ...message),\n  debug: (...message: any[]) => console.debug(MSG_PREFIX, ...message)\n}","export const get = (obj: any, path: string, defaultValue?: any) => {\n  const result = String.prototype.split.call(path, /[,[\\].]+?/).filter(Boolean).reduce((res, key) => res !== null && res !== undefined ? res[key] : res, obj);\n  return result === undefined || result === obj ? defaultValue : result;\n}","export function isBrowser(): boolean {\n  return typeof window !== 'undefined' && typeof document !== 'undefined';\n}","export type QueryObject = Record<string, string | string[]>;\nexport const convertSearchParamsToQueryObject = (searchParams: URLSearchParams): QueryObject => {\n  const options: Record<string, string> = {};\n  searchParams.forEach((value, key) => {\n    options[key] = value;\n  });\n  return options;\n};\nexport const normalizeSearchParams = (searchParams: QueryObject | URLSearchParams): QueryObject => searchParams instanceof URLSearchParams ? convertSearchParamsToQueryObject(searchParams) : searchParams;\nexport type Search = URLSearchParams | string | QueryObject;\nexport const getSearchString = (search: Search): string => {\n  if (typeof search === 'string') {\n    return search;\n  } else if (search instanceof URLSearchParams) {\n    return search.toString();\n  }\n  return new URLSearchParams((search as any)).toString();\n}","import { isBrowser } from './is-browser';\nexport function isIframe(): boolean {\n  return isBrowser() && window.self !== window.top;\n}","import { TARGET } from '../constants/target';\nimport { getSearchString, type Search } from '../helpers/search/search';\nimport { isIframe } from './is-iframe';\nexport function isEditing(search?: Search) {\n  return isIframe() && (TARGET === 'reactNative' ||\n  // accessing window.location.search is safe here because `isIframe()` is only `true` if we're in a browser.\n  getSearchString(search || window.location.search).indexOf('builder.frameEditing=') !== -1);\n}","import { TARGET } from '../../constants/target';\nimport type { Nullable } from '../../helpers/nullable';\nimport { isBrowser } from '../is-browser';\nconst getLocation = (): Nullable<URL> => {\n  if (TARGET === 'reactNative') {\n    return null;\n  } else if (isBrowser()) {\n    const parsedLocation = new URL(location.href);\n\n    // IE11 bug with parsed path being empty string\n    // causes issues with our user targeting\n    if (parsedLocation.pathname === '') {\n      parsedLocation.pathname = '/';\n    }\n    return parsedLocation;\n  } else {\n    console.warn('Cannot get location for tracking in non-browser environment');\n    return null;\n  }\n};\nconst getUserAgent = () => typeof navigator === 'object' && navigator.userAgent || '';\nexport const getUserAttributes = () => {\n  const userAgent = getUserAgent();\n  const isMobile = {\n    Android() {\n      return userAgent.match(/Android/i);\n    },\n    BlackBerry() {\n      return userAgent.match(/BlackBerry/i);\n    },\n    iOS() {\n      return userAgent.match(/iPhone|iPod/i);\n    },\n    Opera() {\n      return userAgent.match(/Opera Mini/i);\n    },\n    Windows() {\n      return userAgent.match(/IEMobile/i) || userAgent.match(/WPDesktop/i);\n    },\n    any() {\n      return isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows() || TARGET === 'reactNative';\n    }\n  };\n  const isTablet = userAgent.match(/Tablet|iPad/i);\n  const url = getLocation();\n  return {\n    urlPath: url?.pathname,\n    host: url?.host || url?.hostname,\n    device: isTablet ? 'tablet' : isMobile.any() ? 'mobile' : 'desktop'\n  };\n}","export const SDK_VERSION = \"0.25.0\"\n","import { SDK_VERSION } from '../constants/sdk-version';\nimport { TARGET } from '../constants/target';\nexport const getSdkHeaders = () => ({\n  'X-Builder-SDK': TARGET,\n  'X-Builder-SDK-GEN': '2',\n  'X-Builder-SDK-Version': SDK_VERSION\n})","export type Nullable<T> = T | null | undefined;\nexport const checkIsDefined = <T,>(maybeT: Nullable<T>): maybeT is T => maybeT !== null && maybeT !== undefined","/**\n * Only gets one level up from hostname\n * wwww.example.com -> example.com\n * www.example.co.uk -> example.co.uk\n */\nexport const getTopLevelDomain = (host: string) => {\n  if (host === 'localhost' || host === '127.0.0.1') {\n    return host;\n  }\n  const parts = host.split('.');\n  if (parts.length > 2) {\n    return parts.slice(1).join('.');\n  }\n  return host;\n}","import { isBrowser } from '../functions/is-browser';\nimport type { CanTrack } from '../types/can-track';\nimport { logger } from './logger';\nimport { checkIsDefined } from './nullable';\nimport { getTopLevelDomain } from './url';\ntype GetCookieArgs = {\n  name: string;\n} & CanTrack;\nexport const getCookieSync = ({\n  name,\n  canTrack\n}: GetCookieArgs): string | undefined => {\n  try {\n    if (!canTrack) {\n      return undefined;\n    }\n\n    /**\n     * Extracted from MDN docs\n     * https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie#example_2_get_a_sample_cookie_named_test2\n     */\n    return document.cookie.split('; ').find(row => row.startsWith(`${name}=`))?.split('=')[1];\n  } catch (err: any) {\n    logger.warn('[COOKIE] GET error: ', err?.message || err);\n    return undefined;\n  }\n};\n/**\n * NOTE: This function is `async` because its react-native override is async. Do not remove the `async` keyword!\n * The sync version is only safe to use in code blocks that `react-native` is guaranteed not to not run.\n */\nexport const getCookie = async (args: GetCookieArgs) => getCookieSync(args);\ntype CookieConfiguration = Array<['expires', string] | ['path', '/'] | ['domain', string] | ['secure', ''] | ['SameSite', 'None'] | [string, string] | []>;\nconst stringifyCookie = (cookie: CookieConfiguration): string => cookie.map(([key, value]) => value ? `${key}=${value}` : key).filter(checkIsDefined).join('; ');\nconst SECURE_CONFIG: CookieConfiguration = [['secure', ''], ['SameSite', 'None']];\nconst createCookieString = ({\n  name,\n  value,\n  expires\n}: {\n  name: string;\n  value: string;\n  expires?: Date;\n}) => {\n  const secure = isBrowser() ? location.protocol === 'https:' : true;\n  const secureObj: CookieConfiguration = secure ? SECURE_CONFIG : [[]];\n\n  // TODO: need to know if secure server side\n  const expiresObj: CookieConfiguration = expires ? [['expires', expires.toUTCString()]] : [[]];\n  const cookieValue: CookieConfiguration = [[name, value], ...expiresObj, ['path', '/'], ['domain', getTopLevelDomain(window.location.hostname)], ...secureObj];\n  const cookie = stringifyCookie(cookieValue);\n  return cookie;\n};\n\n/**\n * NOTE: This function is `async` because its react-native override is async. Do not remove the `async` keyword!\n */\nexport const setCookie = async ({\n  name,\n  value,\n  expires,\n  canTrack\n}: {\n  name: string;\n  value: string;\n  expires?: Date;\n} & CanTrack): Promise<void> => {\n  try {\n    if (!canTrack) {\n      return;\n    }\n    const cookie = createCookieString({\n      name,\n      value,\n      expires\n    });\n    document.cookie = cookie;\n  } catch (err: any) {\n    logger.warn('[COOKIE] SET error: ', err?.message || err);\n  }\n}","/**\n * @credit https://stackoverflow.com/a/2117523\n */\nexport function uuidv4() {\n  return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n    const r = Math.random() * 16 | 0,\n      v = c == 'x' ? r : r & 0x3 | 0x8;\n    return v.toString(16);\n  });\n}\n\n/**\n * Slightly cleaner and smaller UUIDs\n */\nexport function uuid() {\n  return uuidv4().replace(/-/g, '');\n}","import type { CanTrack } from '../types/can-track';\nimport { getCookie, setCookie } from './cookie';\nimport { checkIsDefined } from './nullable';\nimport { uuid } from './uuid';\nconst SESSION_LOCAL_STORAGE_KEY = 'builderSessionId';\nexport const getSessionId = async ({\n  canTrack\n}: CanTrack): Promise<string | undefined> => {\n  if (!canTrack) {\n    return undefined;\n  }\n  const sessionId = await getCookie({\n    name: SESSION_LOCAL_STORAGE_KEY,\n    canTrack\n  });\n  if (checkIsDefined(sessionId)) {\n    return sessionId;\n  } else {\n    const newSessionId = createSessionId();\n    setSessionId({\n      id: newSessionId,\n      canTrack\n    });\n    return newSessionId;\n  }\n};\nexport const createSessionId = () => uuid();\nexport const setSessionId = ({\n  id,\n  canTrack\n}: {\n  id: string;\n} & CanTrack) => setCookie({\n  name: SESSION_LOCAL_STORAGE_KEY,\n  value: id,\n  canTrack\n})","import { isBrowser } from '../functions/is-browser';\nimport type { CanTrack } from '../types/can-track';\nimport type { Nullable } from './nullable';\nconst getLocalStorage = () => isBrowser() && typeof localStorage !== 'undefined' ? localStorage : undefined;\nexport const getLocalStorageItem = ({\n  key,\n  canTrack\n}: {\n  key: string;\n} & CanTrack): Nullable<string> => {\n  try {\n    if (canTrack) {\n      return getLocalStorage()?.getItem(key);\n    }\n    return undefined;\n  } catch (err) {\n    console.debug('[LocalStorage] GET error: ', err);\n    return undefined;\n  }\n};\nexport const setLocalStorageItem = ({\n  key,\n  canTrack,\n  value\n}: {\n  key: string;\n  value: string;\n} & CanTrack) => {\n  try {\n    if (canTrack) {\n      getLocalStorage()?.setItem(key, value);\n    }\n  } catch (err) {\n    console.debug('[LocalStorage] SET error: ', err);\n  }\n}","import type { CanTrack } from '../types/can-track';\nimport { getLocalStorageItem, setLocalStorageItem } from './localStorage';\nimport { checkIsDefined } from './nullable';\nimport { uuid } from './uuid';\nconst VISITOR_LOCAL_STORAGE_KEY = 'builderVisitorId';\nexport const getVisitorId = ({\n  canTrack\n}: CanTrack): string | undefined => {\n  if (!canTrack) {\n    return undefined;\n  }\n  const visitorId = getLocalStorageItem({\n    key: VISITOR_LOCAL_STORAGE_KEY,\n    canTrack\n  });\n  if (checkIsDefined(visitorId)) {\n    return visitorId;\n  } else {\n    const newVisitorId = createVisitorId();\n    setVisitorId({\n      id: newVisitorId,\n      canTrack\n    });\n    return newVisitorId;\n  }\n};\nexport const createVisitorId = () => uuid();\nexport const setVisitorId = ({\n  id,\n  canTrack\n}: {\n  id: string;\n} & CanTrack) => setLocalStorageItem({\n  key: VISITOR_LOCAL_STORAGE_KEY,\n  value: id,\n  canTrack\n})","import { logger } from '../helpers/logger';\nexport function logFetch(url: string) {\n  if (typeof process !== 'undefined' && process.env?.DEBUG) {\n    if (String(process.env.DEBUG) == 'true') {\n      logger.log(url);\n    }\n  }\n}","import { TARGET } from '../../constants/target';\nimport { logger } from '../../helpers/logger';\nimport { getSdkHeaders } from '../../helpers/sdk-headers';\nimport { getSessionId } from '../../helpers/sessionId';\nimport { getVisitorId } from '../../helpers/visitorId';\nimport type { CanTrack } from '../../types/can-track';\nimport type { Dictionary } from '../../types/typescript';\nimport { isBrowser } from '../is-browser';\nimport { isEditing } from '../is-editing';\nimport { logFetch } from '../log-fetch';\nimport { getUserAttributes } from './helpers';\ninterface Event {\n  /**\n   * The type of your event.\n   *\n   * Examples: `click`, `conversion`, `pageview`, `impression`\n   */\n  type: string;\n  data: {\n    /**\n     * (Optional) The content's ID. Useful if this event pertains to a specific piece of content.\n     */\n    contentId?: string;\n    /**\n     * This is the ID of the space that the content belongs to.\n     */\n    ownerId: string;\n    /**\n     * (Optional) metadata that you want to provide with your event.\n     */\n    metadata?: Dictionary<any>;\n    /**\n     * Session ID of the user. This is provided by the SDK by checking session storage.\n     */\n    sessionId: string | undefined;\n    /**\n     * Visitor ID of the user. This is provided by the SDK by checking cookies.\n     */\n    visitorId: string | undefined;\n    /**\n     * (Optional) If running an A/B test, the ID of the variation that the user is in.\n     */\n    variationId?: string;\n    [index: string]: any;\n  };\n}\ntype TrackingData = {\n  visitorId: string | undefined;\n  sessionId: string | undefined;\n};\nconst getTrackingEventData = async ({\n  canTrack\n}: CanTrack): Promise<TrackingData> => {\n  if (!canTrack) {\n    return {\n      visitorId: undefined,\n      sessionId: undefined\n    };\n  }\n  const sessionId = await getSessionId({\n    canTrack\n  });\n  const visitorId = getVisitorId({\n    canTrack\n  });\n  return {\n    sessionId,\n    visitorId\n  };\n};\ntype EventProperties = Pick<Event, 'type'> & Pick<Event['data'], 'contentId' | 'variationId' | 'metadata'> & {\n  /**\n   * Your organization's API key.\n   */\n  apiKey: Event['data']['ownerId'];\n  /**\n   * (Optional) Any additional (non-metadata) properties to add to the event.\n   */\n  [index: string]: any;\n};\nexport type EventProps = EventProperties & CanTrack;\nconst createEvent = async ({\n  type: eventType,\n  canTrack,\n  apiKey,\n  metadata,\n  ...properties\n}: EventProps): Promise<Event> => ({\n  type: eventType,\n  data: {\n    ...properties,\n    metadata: {\n      url: location.href,\n      ...metadata\n    },\n    ...(await getTrackingEventData({\n      canTrack\n    })),\n    userAttributes: getUserAttributes(),\n    ownerId: apiKey\n  }\n});\nexport async function _track({\n  apiHost,\n  ...eventProps\n}: EventProps & {\n  apiHost?: string;\n}) {\n  if (!eventProps.apiKey) {\n    logger.error('Missing API key for track call. Please provide your API key.');\n    return;\n  }\n  if (!eventProps.canTrack) {\n    return;\n  }\n  if (isEditing()) {\n    return;\n  }\n  if (!(isBrowser() || TARGET === 'reactNative')) {\n    return;\n  }\n  const baseUrl = apiHost || 'https://cdn.builder.io';\n  const url = `${baseUrl}/api/v1/track`;\n  logFetch(url);\n  return fetch(url, {\n    method: 'POST',\n    body: JSON.stringify({\n      events: [await createEvent(eventProps)]\n    }),\n    headers: {\n      'content-type': 'application/json',\n      ...getSdkHeaders()\n    },\n    mode: 'cors'\n  }).catch(err => {\n    console.error('Failed to track: ', err);\n  });\n}\nexport const track = (args: EventProperties) => _track({\n  ...args,\n  canTrack: true\n})","import type { BuilderContextInterface, BuilderRenderState } from '../../context/types';\nimport { isBrowser } from '../is-browser';\nimport { isEditing } from '../is-editing';\nimport { getUserAttributes } from '../track/helpers';\nimport { _track } from '../track/index';\nexport type TrackingContext = {\n  apiKey: string | null;\n  canTrack?: boolean;\n  contentId?: string;\n  variationId?: string;\n};\nexport type EvaluatorArgs = Omit<ExecutorArgs, 'builder' | 'event'> & {\n  event?: Event;\n  isExpression?: boolean;\n  trackingContext?: TrackingContext;\n};\nexport type BuilderGlobals = {\n  isEditing: boolean | undefined;\n  isBrowser: boolean | undefined;\n  isServer: boolean | undefined;\n  getUserAttributes: typeof getUserAttributes;\n  trackConversion: (amount?: number, customProperties?: Record<string, any>) => void;\n};\nexport type ExecutorArgs = Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'> & {\n  code: string;\n  builder: BuilderGlobals;\n  event: Event | undefined;\n};\nexport type Executor = (args: ExecutorArgs) => any;\nexport type FunctionArguments = ReturnType<typeof getFunctionArguments>;\nexport const getFunctionArguments = ({\n  builder,\n  context,\n  event,\n  state\n}: Pick<ExecutorArgs, 'builder' | 'context' | 'event'> & {\n  state: BuilderRenderState;\n}) => {\n  return Object.entries({\n    state,\n    Builder: builder,\n    // legacy\n    builder,\n    context,\n    event\n  });\n};\nexport const getBuilderGlobals = (trackingContext?: TrackingContext): BuilderGlobals => ({\n  isEditing: isEditing(),\n  isBrowser: isBrowser(),\n  isServer: !isBrowser(),\n  getUserAttributes: () => getUserAttributes(),\n  trackConversion: (amount?: number, customProperties?: Record<string, any>) => {\n    if (!trackingContext?.apiKey || trackingContext?.canTrack === false) {\n      return;\n    }\n    _track({\n      type: 'conversion',\n      apiKey: trackingContext.apiKey,\n      canTrack: trackingContext.canTrack ?? true,\n      contentId: trackingContext.contentId,\n      variationId: trackingContext.variationId !== trackingContext.contentId ? trackingContext.variationId : undefined,\n      metadata: {\n        ...(customProperties || {}),\n        ...(amount !== undefined ? {\n          amount\n        } : {})\n      }\n    });\n  }\n});\nexport const parseCode = (code: string, {\n  isExpression = true\n}: Pick<EvaluatorArgs, 'isExpression'>) => {\n  // Be able to handle simple expressions like \"state.foo\" or \"1 + 1\"\n  // as well as full blocks like \"var foo = \"bar\"; return foo\"\n  const useReturn =\n  // we disable this for cases where we definitely don't want a return\n  isExpression && !(code.includes(';') || code.includes(' return ') || code.trim().startsWith('return '));\n  const useCode = useReturn ? `return (${code});` : code;\n  return useCode;\n};\nexport function flattenState({\n  rootState,\n  localState,\n  rootSetState\n}: {\n  rootState: Record<string | symbol, any>;\n  localState: Record<string | symbol, any> | undefined;\n  rootSetState: ((rootState: BuilderRenderState) => void) | undefined;\n}): BuilderRenderState {\n  return new Proxy(rootState, {\n    get: (target, prop) => {\n      if (localState && prop in localState) {\n        return localState[prop];\n      }\n      const val = target[prop];\n      if (typeof val === 'object' && val !== null) {\n        return flattenState({\n          rootState: val,\n          localState: undefined,\n          rootSetState: rootSetState ? subState => {\n            target[prop] = subState;\n            rootSetState(target);\n          } : undefined\n        });\n      }\n      return val;\n    },\n    set: (target, prop, value) => {\n      if (localState && prop in localState) {\n        throw new Error('Writing to local state is not allowed as it is read-only.');\n      }\n      target[prop] = value;\n      rootSetState?.(target);\n      return true;\n    }\n  });\n}","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\n/* eslint-disable */\n\n/*\n\n Copyright 2012 Marijn Haverbeke\n SPDX-License-Identifier: MIT\n*/\nvar p;\nvar ca = function (a) {\n  function b(f) {\n    return 48 > f ? 36 === f : 58 > f ? !0 : 65 > f ? !1 : 91 > f ? !0 : 97 > f ? 95 === f : 123 > f ? !0 : 170 <= f && Jc.test(String.fromCharCode(f));\n  }\n  function d(f) {\n    return 65 > f ? 36 === f : 91 > f ? !0 : 97 > f ? 95 === f : 123 > f ? !0 : 170 <= f && Pb.test(String.fromCharCode(f));\n  }\n  function c(f, g) {\n    var l = r;\n    for (var n = 1, w = 0;;) {\n      Sa.lastIndex = w;\n      var J = Sa.exec(l);\n      if (J && J.index < f) ++n, w = J.index + J[0].length;else break;\n    }\n    l = {\n      line: n,\n      ab: f - w\n    };\n    g += \" (\" + l.line + \":\" + l.ab + \")\";\n    g = new SyntaxError(g);\n    g.j = f;\n    g.X = l;\n    g.o = m;\n    throw g;\n  }\n  function e(f) {\n    f = f.split(\" \");\n    for (var g = Object.create(null), l = 0; l < f.length; l++) g[f[l]] = !0;\n    return function (n) {\n      return g[n] || !1;\n    };\n  }\n  function h() {\n    this.line = la;\n    this.ab = m - X;\n  }\n  function k(f, g) {\n    oa = m;\n    z.C && (cb = new h());\n    x = f;\n    C();\n    T = g;\n    ya = f.m;\n  }\n  function q() {\n    for (var f = m, g = z.va && z.C && new h(), l = r.charCodeAt(m += 2); m < pa && 10 !== l && 13 !== l && 8232 !== l && 8233 !== l;) ++m, l = r.charCodeAt(m);\n    z.va && z.va(!1, r.slice(f + 2, m), f, m, g, z.C && new h());\n  }\n  function C() {\n    for (; m < pa;) {\n      var f = r.charCodeAt(m);\n      if (32 === f) ++m;else if (13 === f) ++m, f = r.charCodeAt(m), 10 === f && ++m, z.C && (++la, X = m);else if (10 === f || 8232 === f || 8233 === f) ++m, z.C && (++la, X = m);else if (8 < f && 14 > f) ++m;else if (47 === f) {\n        if (f = r.charCodeAt(m + 1), 42 === f) {\n          f = void 0;\n          var g = z.va && z.C && new h(),\n            l = m,\n            n = r.indexOf(\"*/\", m += 2);\n          -1 === n && c(m - 2, \"Unterminated comment\");\n          m = n + 2;\n          if (z.C) for (Sa.lastIndex = l; (f = Sa.exec(r)) && f.index < m;) ++la, X = f.index + f[0].length;\n          z.va && z.va(!0, r.slice(l + 2, n), l, m, g, z.C && new h());\n        } else if (47 === f) q();else break;\n      } else if (160 === f) ++m;else if (5760 <= f && Kc.test(String.fromCharCode(f))) ++m;else break;\n    }\n  }\n  function U(f) {\n    switch (f) {\n      case 46:\n        f = r.charCodeAt(m + 1);\n        48 <= f && 57 >= f ? Qb(!0) : (++m, k(Rb));\n        return;\n      case 40:\n        return ++m, k(Y);\n      case 41:\n        return ++m, k(W);\n      case 59:\n        return ++m, k(Z);\n      case 44:\n        return ++m, k(ha);\n      case 91:\n        return ++m, k(db);\n      case 93:\n        return ++m, k(eb);\n      case 123:\n        return ++m, k(za);\n      case 125:\n        return ++m, k(qa);\n      case 58:\n        return ++m, k(Aa);\n      case 63:\n        return ++m, k(Sb);\n      case 48:\n        if (f = r.charCodeAt(m + 1), 120 === f || 88 === f) {\n          m += 2;\n          f = Ba(16);\n          null === f && c(I + 2, \"Expected hexadecimal number\");\n          d(r.charCodeAt(m)) && c(m, \"Identifier directly after number\");\n          k(Ca, f);\n          return;\n        }\n      case 49:\n      case 50:\n      case 51:\n      case 52:\n      case 53:\n      case 54:\n      case 55:\n      case 56:\n      case 57:\n        return Qb(!1);\n      case 34:\n      case 39:\n        m++;\n        for (var g = \"\";;) {\n          m >= pa && c(I, \"Unterminated string constant\");\n          var l = r.charCodeAt(m);\n          if (l === f) {\n            ++m;\n            k(Ta, g);\n            break;\n          }\n          if (92 === l) {\n            l = r.charCodeAt(++m);\n            var n = /^[0-7]+/.exec(r.slice(m, m + 3));\n            for (n && (n = n[0]); n && 255 < parseInt(n, 8);) n = n.slice(0, -1);\n            \"0\" === n && (n = null);\n            ++m;\n            if (n) S && c(m - 2, \"Octal literal in strict mode\"), g += String.fromCharCode(parseInt(n, 8)), m += n.length - 1;else switch (l) {\n              case 110:\n                g += \"\\n\";\n                break;\n              case 114:\n                g += \"\\r\";\n                break;\n              case 120:\n                g += String.fromCharCode(Ua(2));\n                break;\n              case 117:\n                g += String.fromCharCode(Ua(4));\n                break;\n              case 85:\n                g += String.fromCharCode(Ua(8));\n                break;\n              case 116:\n                g += \"\\t\";\n                break;\n              case 98:\n                g += \"\\b\";\n                break;\n              case 118:\n                g += \"\\v\";\n                break;\n              case 102:\n                g += \"\\f\";\n                break;\n              case 48:\n                g += \"\\x00\";\n                break;\n              case 13:\n                10 === r.charCodeAt(m) && ++m;\n              case 10:\n                z.C && (X = m, ++la);\n                break;\n              default:\n                g += String.fromCharCode(l);\n            }\n          } else 13 !== l && 10 !== l && 8232 !== l && 8233 !== l || c(I, \"Unterminated string constant\"), g += String.fromCharCode(l), ++m;\n        }\n        return;\n      case 47:\n        f = r.charCodeAt(m + 1);\n        ya ? (++m, Tb()) : 61 === f ? F(ma, 2) : F(Ub, 1);\n        return;\n      case 37:\n      case 42:\n        61 === r.charCodeAt(m + 1) ? F(ma, 2) : F(Lc, 1);\n        return;\n      case 124:\n      case 38:\n        g = r.charCodeAt(m + 1);\n        g === f ? F(124 === f ? Vb : Wb, 2) : 61 === g ? F(ma, 2) : F(124 === f ? Mc : Nc, 1);\n        return;\n      case 94:\n        61 === r.charCodeAt(m + 1) ? F(ma, 2) : F(Oc, 1);\n        return;\n      case 43:\n      case 45:\n        g = r.charCodeAt(m + 1);\n        g === f ? 45 === g && 62 === r.charCodeAt(m + 2) && Va.test(r.slice(ia, m)) ? (m += 3, q(), C(), N()) : F(Pc, 2) : 61 === g ? F(ma, 2) : F(Qc, 1);\n        return;\n      case 60:\n      case 62:\n        g = r.charCodeAt(m + 1);\n        l = 1;\n        g === f ? (l = 62 === f && 62 === r.charCodeAt(m + 2) ? 3 : 2, 61 === r.charCodeAt(m + l) ? F(ma, l + 1) : F(Rc, l)) : 33 === g && 60 === f && 45 === r.charCodeAt(m + 2) && 45 === r.charCodeAt(m + 3) ? (m += 4, q(), C(), N()) : (61 === g && (l = 61 === r.charCodeAt(m + 2) ? 3 : 2), F(Sc, l));\n        return;\n      case 61:\n      case 33:\n        61 === r.charCodeAt(m + 1) ? F(Tc, 61 === r.charCodeAt(m + 2) ? 3 : 2) : F(61 === f ? Xb : Yb, 1);\n        return;\n      case 126:\n        return F(Yb, 1);\n    }\n    return !1;\n  }\n  function N(f) {\n    f ? m = I + 1 : I = m;\n    z.C && (fb = new h());\n    if (f) return Tb();\n    if (m >= pa) return k(gb);\n    f = r.charCodeAt(m);\n    if (d(f) || 92 === f) return Zb();\n    if (!1 === U(f)) {\n      f = String.fromCharCode(f);\n      if (\"\\\\\" === f || Pb.test(f)) return Zb();\n      c(m, \"Unexpected character '\" + f + \"'\");\n    }\n  }\n  function F(f, g) {\n    var l = r.slice(m, m + g);\n    m += g;\n    k(f, l);\n  }\n  function Tb() {\n    for (var f, g, l = m;;) {\n      m >= pa && c(l, \"Unterminated regexp\");\n      var n = r.charAt(m);\n      Va.test(n) && c(l, \"Unterminated regexp\");\n      if (f) f = !1;else {\n        if (\"[\" === n) g = !0;else if (\"]\" === n && g) g = !1;else if (\"/\" === n && !g) break;\n        f = \"\\\\\" === n;\n      }\n      ++m;\n    }\n    f = r.slice(l, m);\n    ++m;\n    (g = $b()) && !/^[gmi]*$/.test(g) && c(l, \"Invalid regexp flag\");\n    try {\n      var w = new RegExp(f, g);\n    } catch (J) {\n      throw J instanceof SyntaxError && c(l, J.message), J;\n    }\n    k(ac, w);\n  }\n  function Ba(f, g) {\n    for (var l = m, n = 0, w = void 0 === g ? Infinity : g, J = 0; J < w; ++J) {\n      var P = r.charCodeAt(m);\n      P = 97 <= P ? P - 97 + 10 : 65 <= P ? P - 65 + 10 : 48 <= P && 57 >= P ? P - 48 : Infinity;\n      if (P >= f) break;\n      ++m;\n      n = n * f + P;\n    }\n    return m === l || void 0 !== g && m - l !== g ? null : n;\n  }\n  function Qb(f) {\n    var g = m,\n      l = !1,\n      n = 48 === r.charCodeAt(m);\n    f || null !== Ba(10) || c(g, \"Invalid number\");\n    46 === r.charCodeAt(m) && (++m, Ba(10), l = !0);\n    f = r.charCodeAt(m);\n    if (69 === f || 101 === f) f = r.charCodeAt(++m), 43 !== f && 45 !== f || ++m, null === Ba(10) && c(g, \"Invalid number\"), l = !0;\n    d(r.charCodeAt(m)) && c(m, \"Identifier directly after number\");\n    f = r.slice(g, m);\n    var w;\n    l ? w = parseFloat(f) : n && 1 !== f.length ? /[89]/.test(f) || S ? c(g, \"Invalid number\") : w = parseInt(f, 8) : w = parseInt(f, 10);\n    k(Ca, w);\n  }\n  function Ua(f) {\n    f = Ba(16, f);\n    null === f && c(I, \"Bad character escape sequence\");\n    return f;\n  }\n  function $b() {\n    ra = !1;\n    for (var f, g = !0, l = m;;) {\n      var n = r.charCodeAt(m);\n      if (b(n)) ra && (f += r.charAt(m)), ++m;else if (92 === n) {\n        ra || (f = r.slice(l, m));\n        ra = !0;\n        117 !== r.charCodeAt(++m) && c(m, \"Expecting Unicode escape sequence \\\\uXXXX\");\n        ++m;\n        n = Ua(4);\n        var w = String.fromCharCode(n);\n        w || c(m - 1, \"Invalid Unicode escape\");\n        (g ? d(n) : b(n)) || c(m - 4, \"Invalid Unicode escape\");\n        f += w;\n      } else break;\n      g = !1;\n    }\n    return ra ? f : r.slice(l, m);\n  }\n  function Zb() {\n    var f = $b(),\n      g = sa;\n    !ra && Uc(f) && (g = Vc[f]);\n    k(g, f);\n  }\n  function B() {\n    hb = I;\n    ia = oa;\n    ib = cb;\n    N();\n  }\n  function jb(f) {\n    S = f;\n    m = I;\n    if (z.C) for (; m < X;) X = r.lastIndexOf(\"\\n\", X - 2) + 1, --la;\n    C();\n    N();\n  }\n  function bc() {\n    this.type = null;\n    this.start = I;\n    this.end = null;\n  }\n  function cc() {\n    this.start = fb;\n    this.end = null;\n    kb && (this.source = kb);\n  }\n  function L() {\n    var f = new bc();\n    z.C && (f.X = new cc());\n    z.vb && (f.sourceFile = z.vb);\n    z.Xa && (f.j = [I, 0]);\n    return f;\n  }\n  function ja(f) {\n    var g = new bc();\n    g.start = f.start;\n    z.C && (g.X = new cc(), g.X.start = f.X.start);\n    z.Xa && (g.j = [f.j[0], 0]);\n    return g;\n  }\n  function y(f, g) {\n    f.type = g;\n    f.end = ia;\n    z.C && (f.X.end = ib);\n    z.Xa && (f.j[1] = ia);\n    return f;\n  }\n  function lb(f) {\n    return \"ExpressionStatement\" === f.type && \"Literal\" === f.la.type && \"use strict\" === f.la.value;\n  }\n  function E(f) {\n    return x === f ? (B(), !0) : !1;\n  }\n  function Wa() {\n    return !z.fc && (x === gb || x === qa || Va.test(r.slice(ia, I)));\n  }\n  function na() {\n    E(Z) || Wa() || aa();\n  }\n  function G(f) {\n    x === f ? B() : aa();\n  }\n  function aa() {\n    c(I, \"Unexpected token\");\n  }\n  function Xa(f) {\n    \"Identifier\" !== f.type && \"MemberExpression\" !== f.type && c(f.start, \"Assigning to rvalue\");\n    S && \"Identifier\" === f.type && Ya(f.name) && c(f.start, \"Assigning to \" + f.name + \" in strict mode\");\n  }\n  function V() {\n    (x === Ub || x === ma && \"/=\" === T) && N(!0);\n    var f = x,\n      g = L();\n    switch (f) {\n      case mb:\n      case dc:\n        B();\n        var l = f === mb;\n        E(Z) || Wa() ? g.label = null : x !== sa ? aa() : (g.label = ba(), na());\n        for (var n = 0; n < H.length; ++n) {\n          var w = H[n];\n          if (null === g.label || w.name === g.label.name) {\n            if (null !== w.kind && (l || \"loop\" === w.kind)) break;\n            if (g.label && l) break;\n          }\n        }\n        n === H.length && c(g.start, \"Unsyntactic \" + f.l);\n        return y(g, l ? \"BreakStatement\" : \"ContinueStatement\");\n      case ec:\n        return B(), na(), y(g, \"DebuggerStatement\");\n      case fc:\n        return B(), H.push(nb), g.body = V(), H.pop(), G(ob), g.test = Da(), na(), y(g, \"DoWhileStatement\");\n      case gc:\n        B();\n        H.push(nb);\n        G(Y);\n        if (x === Z) return pb(g, null);\n        if (x === qb) return f = L(), B(), hc(f, !0), y(f, \"VariableDeclaration\"), 1 === f.fa.length && E(Za) ? ic(g, f) : pb(g, f);\n        f = O(!1, !0);\n        return E(Za) ? (Xa(f), ic(g, f)) : pb(g, f);\n      case rb:\n        return B(), sb(g, !0);\n      case jc:\n        return B(), g.test = Da(), g.da = V(), g.alternate = E(kc) ? V() : null, y(g, \"IfStatement\");\n      case lc:\n        return Ea || z.Ib || c(I, \"'return' outside of function\"), B(), E(Z) || Wa() ? g.K = null : (g.K = O(), na()), y(g, \"ReturnStatement\");\n      case tb:\n        B();\n        g.Qb = Da();\n        g.tb = [];\n        G(za);\n        for (H.push(Wc); x !== qa;) x === ub || x === mc ? (f = x === ub, n && y(n, \"SwitchCase\"), g.tb.push(n = L()), n.da = [], B(), f ? n.test = O() : (l && c(hb, \"Multiple default clauses\"), l = !0, n.test = null), G(Aa)) : (n || aa(), n.da.push(V()));\n        n && y(n, \"SwitchCase\");\n        B();\n        H.pop();\n        return y(g, \"SwitchStatement\");\n      case nc:\n        return B(), Va.test(r.slice(ia, I)) && c(ia, \"Illegal newline after throw\"), g.K = O(), na(), y(g, \"ThrowStatement\");\n      case oc:\n        return B(), g.block = Fa(), g.Ea = null, x === pc && (f = L(), B(), G(Y), f.Ua = ba(), S && Ya(f.Ua.name) && c(f.Ua.start, \"Binding \" + f.Ua.name + \" in strict mode\"), G(W), f.body = Fa(), g.Ea = y(f, \"CatchClause\")), g.fb = E(qc) ? Fa() : null, g.Ea || g.fb || c(g.start, \"Missing catch or finally clause\"), y(g, \"TryStatement\");\n      case qb:\n        return B(), hc(g), na(), y(g, \"VariableDeclaration\");\n      case ob:\n        return B(), g.test = Da(), H.push(nb), g.body = V(), H.pop(), y(g, \"WhileStatement\");\n      case rc:\n        return S && c(I, \"'with' in strict mode\"), B(), g.object = Da(), g.body = V(), y(g, \"WithStatement\");\n      case za:\n        return Fa();\n      case Z:\n        return B(), y(g, \"EmptyStatement\");\n      default:\n        l = T;\n        w = O();\n        if (f === sa && \"Identifier\" === w.type && E(Aa)) {\n          for (n = 0; n < H.length; ++n) H[n].name === l && c(w.start, \"Label '\" + l + \"' is already declared\");\n          H.push({\n            name: l,\n            kind: x.W ? \"loop\" : x === tb ? \"switch\" : null\n          });\n          g.body = V();\n          H.pop();\n          g.label = w;\n          return y(g, \"LabeledStatement\");\n        }\n        g.la = w;\n        na();\n        return y(g, \"ExpressionStatement\");\n    }\n  }\n  function Da() {\n    G(Y);\n    var f = O();\n    G(W);\n    return f;\n  }\n  function Fa(f) {\n    var g = L(),\n      l = !0,\n      n = !1;\n    g.body = [];\n    for (G(za); !E(qa);) {\n      var w = V();\n      g.body.push(w);\n      if (l && f && lb(w)) {\n        var J = n;\n        jb(n = !0);\n      }\n      l = !1;\n    }\n    n && !J && jb(!1);\n    return y(g, \"BlockStatement\");\n  }\n  function pb(f, g) {\n    f.ua = g;\n    G(Z);\n    f.test = x === Z ? null : O();\n    G(Z);\n    f.update = x === W ? null : O();\n    G(W);\n    f.body = V();\n    H.pop();\n    return y(f, \"ForStatement\");\n  }\n  function ic(f, g) {\n    f.left = g;\n    f.right = O();\n    G(W);\n    f.body = V();\n    H.pop();\n    return y(f, \"ForInStatement\");\n  }\n  function hc(f, g) {\n    f.fa = [];\n    for (f.kind = \"var\";;) {\n      var l = L();\n      l.id = ba();\n      S && Ya(l.id.name) && c(l.id.start, \"Binding \" + l.id.name + \" in strict mode\");\n      l.ua = E(Xb) ? O(!0, g) : null;\n      f.fa.push(y(l, \"VariableDeclarator\"));\n      if (!E(ha)) break;\n    }\n  }\n  function O(f, g) {\n    var l = vb(g);\n    if (!f && x === ha) {\n      f = ja(l);\n      for (f.xb = [l]; E(ha);) f.xb.push(vb(g));\n      return y(f, \"SequenceExpression\");\n    }\n    return l;\n  }\n  function vb(f) {\n    var g = wb(xb(), -1, f);\n    if (E(Sb)) {\n      var l = ja(g);\n      l.test = g;\n      l.da = O(!0);\n      G(Aa);\n      l.alternate = O(!0, f);\n      g = y(l, \"ConditionalExpression\");\n    }\n    return x.Cb ? (l = ja(g), l.operator = T, l.left = g, B(), l.right = vb(f), Xa(g), y(l, \"AssignmentExpression\")) : g;\n  }\n  function wb(f, g, l) {\n    var n = x.L;\n    if (null !== n && (!l || x !== Za) && n > g) {\n      var w = ja(f);\n      w.left = f;\n      w.operator = T;\n      f = x;\n      B();\n      w.right = wb(xb(), n, l);\n      n = y(w, f === Vb || f === Wb ? \"LogicalExpression\" : \"BinaryExpression\");\n      return wb(n, g, l);\n    }\n    return f;\n  }\n  function xb() {\n    if (x.prefix) {\n      var f = L(),\n        g = x.$b;\n      f.operator = T;\n      ya = f.prefix = !0;\n      B();\n      f.K = xb();\n      g ? Xa(f.K) : S && \"delete\" === f.operator && \"Identifier\" === f.K.type && c(f.start, \"Deleting local variable in strict mode\");\n      return y(f, g ? \"UpdateExpression\" : \"UnaryExpression\");\n    }\n    for (g = Ga($a()); x.cc && !Wa();) f = ja(g), f.operator = T, f.prefix = !1, f.K = g, Xa(g), B(), g = y(f, \"UpdateExpression\");\n    return g;\n  }\n  function Ga(f, g) {\n    if (E(Rb)) {\n      var l = ja(f);\n      l.object = f;\n      l.Wa = ba(!0);\n      l.bb = !1;\n      return Ga(y(l, \"MemberExpression\"), g);\n    }\n    return E(db) ? (l = ja(f), l.object = f, l.Wa = O(), l.bb = !0, G(eb), Ga(y(l, \"MemberExpression\"), g)) : !g && E(Y) ? (l = ja(f), l.callee = f, l.arguments = yb(W, !1), Ga(y(l, \"CallExpression\"), g)) : f;\n  }\n  function $a() {\n    switch (x) {\n      case sc:\n        var f = L();\n        B();\n        return y(f, \"ThisExpression\");\n      case sa:\n        return ba();\n      case Ca:\n      case Ta:\n      case ac:\n        return f = L(), f.value = T, f.raw = r.slice(I, oa), B(), y(f, \"Literal\");\n      case tc:\n      case uc:\n      case vc:\n        return f = L(), f.value = x.$a, f.raw = x.l, B(), y(f, \"Literal\");\n      case Y:\n        f = fb;\n        var g = I;\n        B();\n        var l = O();\n        l.start = g;\n        l.end = oa;\n        z.C && (l.X.start = f, l.X.end = cb);\n        z.Xa && (l.j = [g, oa]);\n        G(W);\n        return l;\n      case db:\n        return f = L(), B(), f.elements = yb(eb, !0, !0), y(f, \"ArrayExpression\");\n      case za:\n        f = L();\n        g = !0;\n        l = !1;\n        f.h = [];\n        for (B(); !E(qa);) {\n          if (g) g = !1;else if (G(ha), z.sb && E(qa)) break;\n          var n = {\n              key: x === Ca || x === Ta ? $a() : ba(!0)\n            },\n            w = !1;\n          if (E(Aa)) {\n            n.value = O(!0);\n            var J = n.kind = \"init\";\n          } else \"Identifier\" !== n.key.type || \"get\" !== n.key.name && \"set\" !== n.key.name ? aa() : (w = l = !0, J = n.kind = n.key.name, n.key = x === Ca || x === Ta ? $a() : ba(!0), x !== Y && aa(), n.value = sb(L(), !1));\n          if (\"Identifier\" === n.key.type && (S || l)) for (var P = 0; P < f.h.length; ++P) {\n            var ta = f.h[P];\n            if (ta.key.name === n.key.name) {\n              var zb = J === ta.kind || w && \"init\" === ta.kind || \"init\" === J && (\"get\" === ta.kind || \"set\" === ta.kind);\n              zb && !S && \"init\" === J && \"init\" === ta.kind && (zb = !1);\n              zb && c(n.key.start, \"Redefinition of property\");\n            }\n          }\n          f.h.push(n);\n        }\n        return y(f, \"ObjectExpression\");\n      case rb:\n        return f = L(), B(), sb(f, !1);\n      case wc:\n        return f = L(), B(), f.callee = Ga($a(), !0), f.arguments = E(Y) ? yb(W, !1) : Xc, y(f, \"NewExpression\");\n    }\n    aa();\n  }\n  function sb(f, g) {\n    x === sa ? f.id = ba() : g ? aa() : f.id = null;\n    f.oa = [];\n    var l = !0;\n    for (G(Y); !E(W);) l ? l = !1 : G(ha), f.oa.push(ba());\n    l = Ea;\n    var n = H;\n    Ea = !0;\n    H = [];\n    f.body = Fa(!0);\n    Ea = l;\n    H = n;\n    if (S || f.body.body.length && lb(f.body.body[0])) for (l = f.id ? -1 : 0; l < f.oa.length; ++l) if (n = 0 > l ? f.id : f.oa[l], (xc(n.name) || Ya(n.name)) && c(n.start, \"Defining '\" + n.name + \"' in strict mode\"), 0 <= l) for (var w = 0; w < l; ++w) n.name === f.oa[w].name && c(n.start, \"Argument name clash in strict mode\");\n    return y(f, g ? \"FunctionDeclaration\" : \"FunctionExpression\");\n  }\n  function yb(f, g, l) {\n    for (var n = [], w = !0; !E(f);) {\n      if (w) w = !1;else if (G(ha), g && z.sb && E(f)) break;\n      n.push(l && x === ha ? null : O(!0));\n    }\n    return n;\n  }\n  function ba(f) {\n    var g = L();\n    f && \"everywhere\" === z.yb && (f = !1);\n    x === sa ? (!f && (z.yb && Yc(T) || S && xc(T)) && -1 === r.slice(I, oa).indexOf(\"\\\\\") && c(I, \"The keyword '\" + T + \"' is reserved\"), g.name = T) : f && x.l ? g.name = x.l : aa();\n    ya = !1;\n    B();\n    return y(g, \"Identifier\");\n  }\n  a.version = \"0.5.0\";\n  var z,\n    r = \"\",\n    pa,\n    kb;\n  a.parse = function (f, g) {\n    r = String(f);\n    pa = r.length;\n    z = g || {};\n    for (var l in yc) Object.prototype.hasOwnProperty.call(z, l) || (z[l] = yc[l]);\n    kb = z.sourceFile;\n    la = 1;\n    m = X = 0;\n    ya = !0;\n    C();\n    l = z.dc;\n    hb = ia = m;\n    z.C && (ib = new h());\n    Ea = S = !1;\n    H = [];\n    N();\n    f = l || L();\n    g = !0;\n    l || (f.body = []);\n    for (; x !== gb;) l = V(), f.body.push(l), g && lb(l) && jb(!0), g = !1;\n    return y(f, \"Program\");\n  };\n  var yc = {\n      fc: !1,\n      sb: !0,\n      yb: !1,\n      Ib: !1,\n      C: !1,\n      va: null,\n      Xa: !1,\n      dc: null,\n      sourceFile: null,\n      vb: null\n    },\n    m = 0,\n    I = 0,\n    oa = 0,\n    fb,\n    cb,\n    x,\n    T,\n    ya,\n    la,\n    X,\n    hb = 0,\n    ia = 0,\n    ib,\n    Ea,\n    H,\n    S,\n    Xc = [],\n    Ca = {\n      type: \"num\"\n    },\n    ac = {\n      type: \"regexp\"\n    },\n    Ta = {\n      type: \"string\"\n    },\n    sa = {\n      type: \"name\"\n    },\n    gb = {\n      type: \"eof\"\n    },\n    mb = {\n      l: \"break\"\n    },\n    ub = {\n      l: \"case\",\n      m: !0\n    },\n    pc = {\n      l: \"catch\"\n    },\n    dc = {\n      l: \"continue\"\n    },\n    ec = {\n      l: \"debugger\"\n    },\n    mc = {\n      l: \"default\"\n    },\n    fc = {\n      l: \"do\",\n      W: !0\n    },\n    kc = {\n      l: \"else\",\n      m: !0\n    },\n    qc = {\n      l: \"finally\"\n    },\n    gc = {\n      l: \"for\",\n      W: !0\n    },\n    rb = {\n      l: \"function\"\n    },\n    jc = {\n      l: \"if\"\n    },\n    lc = {\n      l: \"return\",\n      m: !0\n    },\n    tb = {\n      l: \"switch\"\n    },\n    nc = {\n      l: \"throw\",\n      m: !0\n    },\n    oc = {\n      l: \"try\"\n    },\n    qb = {\n      l: \"var\"\n    },\n    ob = {\n      l: \"while\",\n      W: !0\n    },\n    rc = {\n      l: \"with\"\n    },\n    wc = {\n      l: \"new\",\n      m: !0\n    },\n    sc = {\n      l: \"this\"\n    },\n    tc = {\n      l: \"null\",\n      $a: null\n    },\n    uc = {\n      l: \"true\",\n      $a: !0\n    },\n    vc = {\n      l: \"false\",\n      $a: !1\n    },\n    Za = {\n      l: \"in\",\n      L: 7,\n      m: !0\n    },\n    Vc = {\n      \"break\": mb,\n      \"case\": ub,\n      \"catch\": pc,\n      \"continue\": dc,\n      \"debugger\": ec,\n      \"default\": mc,\n      \"do\": fc,\n      \"else\": kc,\n      \"finally\": qc,\n      \"for\": gc,\n      \"function\": rb,\n      \"if\": jc,\n      \"return\": lc,\n      \"switch\": tb,\n      \"throw\": nc,\n      \"try\": oc,\n      \"var\": qb,\n      \"while\": ob,\n      \"with\": rc,\n      \"null\": tc,\n      \"true\": uc,\n      \"false\": vc,\n      \"new\": wc,\n      \"in\": Za,\n      \"instanceof\": {\n        l: \"instanceof\",\n        L: 7,\n        m: !0\n      },\n      \"this\": sc,\n      \"typeof\": {\n        l: \"typeof\",\n        prefix: !0,\n        m: !0\n      },\n      \"void\": {\n        l: \"void\",\n        prefix: !0,\n        m: !0\n      },\n      \"delete\": {\n        l: \"delete\",\n        prefix: !0,\n        m: !0\n      }\n    },\n    db = {\n      type: \"[\",\n      m: !0\n    },\n    eb = {\n      type: \"]\"\n    },\n    za = {\n      type: \"{\",\n      m: !0\n    },\n    qa = {\n      type: \"}\"\n    },\n    Y = {\n      type: \"(\",\n      m: !0\n    },\n    W = {\n      type: \")\"\n    },\n    ha = {\n      type: \",\",\n      m: !0\n    },\n    Z = {\n      type: \";\",\n      m: !0\n    },\n    Aa = {\n      type: \":\",\n      m: !0\n    },\n    Rb = {\n      type: \".\"\n    },\n    Sb = {\n      type: \"?\",\n      m: !0\n    },\n    Ub = {\n      L: 10,\n      m: !0\n    },\n    Xb = {\n      Cb: !0,\n      m: !0\n    },\n    ma = {\n      Cb: !0,\n      m: !0\n    },\n    Pc = {\n      cc: !0,\n      prefix: !0,\n      $b: !0\n    },\n    Yb = {\n      prefix: !0,\n      m: !0\n    },\n    Vb = {\n      L: 1,\n      m: !0\n    },\n    Wb = {\n      L: 2,\n      m: !0\n    },\n    Mc = {\n      L: 3,\n      m: !0\n    },\n    Oc = {\n      L: 4,\n      m: !0\n    },\n    Nc = {\n      L: 5,\n      m: !0\n    },\n    Tc = {\n      L: 6,\n      m: !0\n    },\n    Sc = {\n      L: 7,\n      m: !0\n    },\n    Rc = {\n      L: 8,\n      m: !0\n    },\n    Qc = {\n      L: 9,\n      prefix: !0,\n      m: !0\n    },\n    Lc = {\n      L: 10,\n      m: !0\n    },\n    Yc = e(\"class enum extends super const export import\"),\n    xc = e(\"implements interface let package private protected public static yield\"),\n    Ya = e(\"eval arguments\"),\n    Uc = e(\"break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this\"),\n    Kc = /[\\u1680\\u180e\\u2000-\\u200a\\u202f\\u205f\\u3000\\ufeff]/,\n    Pb = RegExp(\"[\\u00aa\\u00b5\\u00ba\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ec\\u02ee\\u0370-\\u0374\\u0376\\u0377\\u037a-\\u037d\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0481\\u048a-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0620-\\u064a\\u066e\\u066f\\u0671-\\u06d3\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\\u0712-\\u072f\\u074d-\\u07a5\\u07b1\\u07ca-\\u07ea\\u07f4\\u07f5\\u07fa\\u0800-\\u0815\\u081a\\u0824\\u0828\\u0840-\\u0858\\u08a0\\u08a2-\\u08ac\\u0904-\\u0939\\u093d\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097f\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc\\u09dd\\u09df-\\u09e1\\u09f0\\u09f1\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd\\u0ad0\\u0ae0\\u0ae1\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bd0\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c3d\\u0c58\\u0c59\\u0c60\\u0c61\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\\u0ce0\\u0ce1\\u0cf1\\u0cf2\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d\\u0d4e\\u0d60\\u0d61\\u0d7a-\\u0d7f\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0edc-\\u0edf\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6c\\u0f88-\\u0f8c\\u1000-\\u102a\\u103f\\u1050-\\u1055\\u105a-\\u105d\\u1061\\u1065\\u1066\\u106e-\\u1070\\u1075-\\u1081\\u108e\\u10a0-\\u10c5\\u10c7\\u10cd\\u10d0-\\u10fa\\u10fc-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\\u166f-\\u167f\\u1681-\\u169a\\u16a0-\\u16ea\\u16ee-\\u16f0\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1a20-\\u1a54\\u1aa7\\u1b05-\\u1b33\\u1b45-\\u1b4b\\u1b83-\\u1ba0\\u1bae\\u1baf\\u1bba-\\u1be5\\u1c00-\\u1c23\\u1c4d-\\u1c4f\\u1c5a-\\u1c7d\\u1ce9-\\u1cec\\u1cee-\\u1cf1\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u2160-\\u2188\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u2e2f\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u31a0-\\u31ba\\u31f0-\\u31ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\ua000-\\ua48c\\ua4d0-\\ua4fd\\ua500-\\ua60c\\ua610-\\ua61f\\ua62a\\ua62b\\ua640-\\ua66e\\ua67f-\\ua697\\ua6a0-\\ua6ef\\ua717-\\ua71f\\ua722-\\ua788\\ua78b-\\ua78e\\ua790-\\ua793\\ua7a0-\\ua7aa\\ua7f8-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua822\\ua840-\\ua873\\ua882-\\ua8b3\\ua8f2-\\ua8f7\\ua8fb\\ua90a-\\ua925\\ua930-\\ua946\\ua960-\\ua97c\\ua984-\\ua9b2\\ua9cf\\uaa00-\\uaa28\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa60-\\uaa76\\uaa7a\\uaa80-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaadd\\uaae0-\\uaaea\\uaaf2-\\uaaf4\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uabc0-\\uabe2\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40\\ufb41\\ufb43\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc]\"),\n    Jc = RegExp(\"[\\u00aa\\u00b5\\u00ba\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02c1\\u02c6-\\u02d1\\u02e0-\\u02e4\\u02ec\\u02ee\\u0370-\\u0374\\u0376\\u0377\\u037a-\\u037d\\u0386\\u0388-\\u038a\\u038c\\u038e-\\u03a1\\u03a3-\\u03f5\\u03f7-\\u0481\\u048a-\\u0527\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05d0-\\u05ea\\u05f0-\\u05f2\\u0620-\\u064a\\u066e\\u066f\\u0671-\\u06d3\\u06d5\\u06e5\\u06e6\\u06ee\\u06ef\\u06fa-\\u06fc\\u06ff\\u0710\\u0712-\\u072f\\u074d-\\u07a5\\u07b1\\u07ca-\\u07ea\\u07f4\\u07f5\\u07fa\\u0800-\\u0815\\u081a\\u0824\\u0828\\u0840-\\u0858\\u08a0\\u08a2-\\u08ac\\u0904-\\u0939\\u093d\\u0950\\u0958-\\u0961\\u0971-\\u0977\\u0979-\\u097f\\u0985-\\u098c\\u098f\\u0990\\u0993-\\u09a8\\u09aa-\\u09b0\\u09b2\\u09b6-\\u09b9\\u09bd\\u09ce\\u09dc\\u09dd\\u09df-\\u09e1\\u09f0\\u09f1\\u0a05-\\u0a0a\\u0a0f\\u0a10\\u0a13-\\u0a28\\u0a2a-\\u0a30\\u0a32\\u0a33\\u0a35\\u0a36\\u0a38\\u0a39\\u0a59-\\u0a5c\\u0a5e\\u0a72-\\u0a74\\u0a85-\\u0a8d\\u0a8f-\\u0a91\\u0a93-\\u0aa8\\u0aaa-\\u0ab0\\u0ab2\\u0ab3\\u0ab5-\\u0ab9\\u0abd\\u0ad0\\u0ae0\\u0ae1\\u0b05-\\u0b0c\\u0b0f\\u0b10\\u0b13-\\u0b28\\u0b2a-\\u0b30\\u0b32\\u0b33\\u0b35-\\u0b39\\u0b3d\\u0b5c\\u0b5d\\u0b5f-\\u0b61\\u0b71\\u0b83\\u0b85-\\u0b8a\\u0b8e-\\u0b90\\u0b92-\\u0b95\\u0b99\\u0b9a\\u0b9c\\u0b9e\\u0b9f\\u0ba3\\u0ba4\\u0ba8-\\u0baa\\u0bae-\\u0bb9\\u0bd0\\u0c05-\\u0c0c\\u0c0e-\\u0c10\\u0c12-\\u0c28\\u0c2a-\\u0c33\\u0c35-\\u0c39\\u0c3d\\u0c58\\u0c59\\u0c60\\u0c61\\u0c85-\\u0c8c\\u0c8e-\\u0c90\\u0c92-\\u0ca8\\u0caa-\\u0cb3\\u0cb5-\\u0cb9\\u0cbd\\u0cde\\u0ce0\\u0ce1\\u0cf1\\u0cf2\\u0d05-\\u0d0c\\u0d0e-\\u0d10\\u0d12-\\u0d3a\\u0d3d\\u0d4e\\u0d60\\u0d61\\u0d7a-\\u0d7f\\u0d85-\\u0d96\\u0d9a-\\u0db1\\u0db3-\\u0dbb\\u0dbd\\u0dc0-\\u0dc6\\u0e01-\\u0e30\\u0e32\\u0e33\\u0e40-\\u0e46\\u0e81\\u0e82\\u0e84\\u0e87\\u0e88\\u0e8a\\u0e8d\\u0e94-\\u0e97\\u0e99-\\u0e9f\\u0ea1-\\u0ea3\\u0ea5\\u0ea7\\u0eaa\\u0eab\\u0ead-\\u0eb0\\u0eb2\\u0eb3\\u0ebd\\u0ec0-\\u0ec4\\u0ec6\\u0edc-\\u0edf\\u0f00\\u0f40-\\u0f47\\u0f49-\\u0f6c\\u0f88-\\u0f8c\\u1000-\\u102a\\u103f\\u1050-\\u1055\\u105a-\\u105d\\u1061\\u1065\\u1066\\u106e-\\u1070\\u1075-\\u1081\\u108e\\u10a0-\\u10c5\\u10c7\\u10cd\\u10d0-\\u10fa\\u10fc-\\u1248\\u124a-\\u124d\\u1250-\\u1256\\u1258\\u125a-\\u125d\\u1260-\\u1288\\u128a-\\u128d\\u1290-\\u12b0\\u12b2-\\u12b5\\u12b8-\\u12be\\u12c0\\u12c2-\\u12c5\\u12c8-\\u12d6\\u12d8-\\u1310\\u1312-\\u1315\\u1318-\\u135a\\u1380-\\u138f\\u13a0-\\u13f4\\u1401-\\u166c\\u166f-\\u167f\\u1681-\\u169a\\u16a0-\\u16ea\\u16ee-\\u16f0\\u1700-\\u170c\\u170e-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176c\\u176e-\\u1770\\u1780-\\u17b3\\u17d7\\u17dc\\u1820-\\u1877\\u1880-\\u18a8\\u18aa\\u18b0-\\u18f5\\u1900-\\u191c\\u1950-\\u196d\\u1970-\\u1974\\u1980-\\u19ab\\u19c1-\\u19c7\\u1a00-\\u1a16\\u1a20-\\u1a54\\u1aa7\\u1b05-\\u1b33\\u1b45-\\u1b4b\\u1b83-\\u1ba0\\u1bae\\u1baf\\u1bba-\\u1be5\\u1c00-\\u1c23\\u1c4d-\\u1c4f\\u1c5a-\\u1c7d\\u1ce9-\\u1cec\\u1cee-\\u1cf1\\u1cf5\\u1cf6\\u1d00-\\u1dbf\\u1e00-\\u1f15\\u1f18-\\u1f1d\\u1f20-\\u1f45\\u1f48-\\u1f4d\\u1f50-\\u1f57\\u1f59\\u1f5b\\u1f5d\\u1f5f-\\u1f7d\\u1f80-\\u1fb4\\u1fb6-\\u1fbc\\u1fbe\\u1fc2-\\u1fc4\\u1fc6-\\u1fcc\\u1fd0-\\u1fd3\\u1fd6-\\u1fdb\\u1fe0-\\u1fec\\u1ff2-\\u1ff4\\u1ff6-\\u1ffc\\u2071\\u207f\\u2090-\\u209c\\u2102\\u2107\\u210a-\\u2113\\u2115\\u2119-\\u211d\\u2124\\u2126\\u2128\\u212a-\\u212d\\u212f-\\u2139\\u213c-\\u213f\\u2145-\\u2149\\u214e\\u2160-\\u2188\\u2c00-\\u2c2e\\u2c30-\\u2c5e\\u2c60-\\u2ce4\\u2ceb-\\u2cee\\u2cf2\\u2cf3\\u2d00-\\u2d25\\u2d27\\u2d2d\\u2d30-\\u2d67\\u2d6f\\u2d80-\\u2d96\\u2da0-\\u2da6\\u2da8-\\u2dae\\u2db0-\\u2db6\\u2db8-\\u2dbe\\u2dc0-\\u2dc6\\u2dc8-\\u2dce\\u2dd0-\\u2dd6\\u2dd8-\\u2dde\\u2e2f\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303c\\u3041-\\u3096\\u309d-\\u309f\\u30a1-\\u30fa\\u30fc-\\u30ff\\u3105-\\u312d\\u3131-\\u318e\\u31a0-\\u31ba\\u31f0-\\u31ff\\u3400-\\u4db5\\u4e00-\\u9fcc\\ua000-\\ua48c\\ua4d0-\\ua4fd\\ua500-\\ua60c\\ua610-\\ua61f\\ua62a\\ua62b\\ua640-\\ua66e\\ua67f-\\ua697\\ua6a0-\\ua6ef\\ua717-\\ua71f\\ua722-\\ua788\\ua78b-\\ua78e\\ua790-\\ua793\\ua7a0-\\ua7aa\\ua7f8-\\ua801\\ua803-\\ua805\\ua807-\\ua80a\\ua80c-\\ua822\\ua840-\\ua873\\ua882-\\ua8b3\\ua8f2-\\ua8f7\\ua8fb\\ua90a-\\ua925\\ua930-\\ua946\\ua960-\\ua97c\\ua984-\\ua9b2\\ua9cf\\uaa00-\\uaa28\\uaa40-\\uaa42\\uaa44-\\uaa4b\\uaa60-\\uaa76\\uaa7a\\uaa80-\\uaaaf\\uaab1\\uaab5\\uaab6\\uaab9-\\uaabd\\uaac0\\uaac2\\uaadb-\\uaadd\\uaae0-\\uaaea\\uaaf2-\\uaaf4\\uab01-\\uab06\\uab09-\\uab0e\\uab11-\\uab16\\uab20-\\uab26\\uab28-\\uab2e\\uabc0-\\uabe2\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufa6d\\ufa70-\\ufad9\\ufb00-\\ufb06\\ufb13-\\ufb17\\ufb1d\\ufb1f-\\ufb28\\ufb2a-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40\\ufb41\\ufb43\\ufb44\\ufb46-\\ufbb1\\ufbd3-\\ufd3d\\ufd50-\\ufd8f\\ufd92-\\ufdc7\\ufdf0-\\ufdfb\\ufe70-\\ufe74\\ufe76-\\ufefc\\uff21-\\uff3a\\uff41-\\uff5a\\uff66-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc\\u0300-\\u036f\\u0483-\\u0487\\u0591-\\u05bd\\u05bf\\u05c1\\u05c2\\u05c4\\u05c5\\u05c7\\u0610-\\u061a\\u0620-\\u0649\\u0672-\\u06d3\\u06e7-\\u06e8\\u06fb-\\u06fc\\u0730-\\u074a\\u0800-\\u0814\\u081b-\\u0823\\u0825-\\u0827\\u0829-\\u082d\\u0840-\\u0857\\u08e4-\\u08fe\\u0900-\\u0903\\u093a-\\u093c\\u093e-\\u094f\\u0951-\\u0957\\u0962-\\u0963\\u0966-\\u096f\\u0981-\\u0983\\u09bc\\u09be-\\u09c4\\u09c7\\u09c8\\u09d7\\u09df-\\u09e0\\u0a01-\\u0a03\\u0a3c\\u0a3e-\\u0a42\\u0a47\\u0a48\\u0a4b-\\u0a4d\\u0a51\\u0a66-\\u0a71\\u0a75\\u0a81-\\u0a83\\u0abc\\u0abe-\\u0ac5\\u0ac7-\\u0ac9\\u0acb-\\u0acd\\u0ae2-\\u0ae3\\u0ae6-\\u0aef\\u0b01-\\u0b03\\u0b3c\\u0b3e-\\u0b44\\u0b47\\u0b48\\u0b4b-\\u0b4d\\u0b56\\u0b57\\u0b5f-\\u0b60\\u0b66-\\u0b6f\\u0b82\\u0bbe-\\u0bc2\\u0bc6-\\u0bc8\\u0bca-\\u0bcd\\u0bd7\\u0be6-\\u0bef\\u0c01-\\u0c03\\u0c46-\\u0c48\\u0c4a-\\u0c4d\\u0c55\\u0c56\\u0c62-\\u0c63\\u0c66-\\u0c6f\\u0c82\\u0c83\\u0cbc\\u0cbe-\\u0cc4\\u0cc6-\\u0cc8\\u0cca-\\u0ccd\\u0cd5\\u0cd6\\u0ce2-\\u0ce3\\u0ce6-\\u0cef\\u0d02\\u0d03\\u0d46-\\u0d48\\u0d57\\u0d62-\\u0d63\\u0d66-\\u0d6f\\u0d82\\u0d83\\u0dca\\u0dcf-\\u0dd4\\u0dd6\\u0dd8-\\u0ddf\\u0df2\\u0df3\\u0e34-\\u0e3a\\u0e40-\\u0e45\\u0e50-\\u0e59\\u0eb4-\\u0eb9\\u0ec8-\\u0ecd\\u0ed0-\\u0ed9\\u0f18\\u0f19\\u0f20-\\u0f29\\u0f35\\u0f37\\u0f39\\u0f41-\\u0f47\\u0f71-\\u0f84\\u0f86-\\u0f87\\u0f8d-\\u0f97\\u0f99-\\u0fbc\\u0fc6\\u1000-\\u1029\\u1040-\\u1049\\u1067-\\u106d\\u1071-\\u1074\\u1082-\\u108d\\u108f-\\u109d\\u135d-\\u135f\\u170e-\\u1710\\u1720-\\u1730\\u1740-\\u1750\\u1772\\u1773\\u1780-\\u17b2\\u17dd\\u17e0-\\u17e9\\u180b-\\u180d\\u1810-\\u1819\\u1920-\\u192b\\u1930-\\u193b\\u1951-\\u196d\\u19b0-\\u19c0\\u19c8-\\u19c9\\u19d0-\\u19d9\\u1a00-\\u1a15\\u1a20-\\u1a53\\u1a60-\\u1a7c\\u1a7f-\\u1a89\\u1a90-\\u1a99\\u1b46-\\u1b4b\\u1b50-\\u1b59\\u1b6b-\\u1b73\\u1bb0-\\u1bb9\\u1be6-\\u1bf3\\u1c00-\\u1c22\\u1c40-\\u1c49\\u1c5b-\\u1c7d\\u1cd0-\\u1cd2\\u1d00-\\u1dbe\\u1e01-\\u1f15\\u200c\\u200d\\u203f\\u2040\\u2054\\u20d0-\\u20dc\\u20e1\\u20e5-\\u20f0\\u2d81-\\u2d96\\u2de0-\\u2dff\\u3021-\\u3028\\u3099\\u309a\\ua640-\\ua66d\\ua674-\\ua67d\\ua69f\\ua6f0-\\ua6f1\\ua7f8-\\ua800\\ua806\\ua80b\\ua823-\\ua827\\ua880-\\ua881\\ua8b4-\\ua8c4\\ua8d0-\\ua8d9\\ua8f3-\\ua8f7\\ua900-\\ua909\\ua926-\\ua92d\\ua930-\\ua945\\ua980-\\ua983\\ua9b3-\\ua9c0\\uaa00-\\uaa27\\uaa40-\\uaa41\\uaa4c-\\uaa4d\\uaa50-\\uaa59\\uaa7b\\uaae0-\\uaae9\\uaaf2-\\uaaf3\\uabc0-\\uabe1\\uabec\\uabed\\uabf0-\\uabf9\\ufb20-\\ufb28\\ufe00-\\ufe0f\\ufe20-\\ufe26\\ufe33\\ufe34\\ufe4d-\\ufe4f\\uff10-\\uff19\\uff3f]\"),\n    Va = /[\\n\\r\\u2028\\u2029]/,\n    Sa = /\\r\\n|[\\n\\r\\u2028\\u2029]/g,\n    ra,\n    nb = {\n      kind: \"loop\"\n    },\n    Wc = {\n      kind: \"switch\"\n    };\n};\n\n// BUILDER.IO: replace below line:\n// \"object\"===typeof exports&&\"object\"===typeof module?ca(exports):\"function\"===typeof define&&define.jc?define([\"exports\"],ca):ca(this.j||(this.j={}));\n// with this:\nvar __this = __this = \"undefined\" === typeof globalThis ? this : globalThis;\nca(__this.j || (__this.j = {}));\n\n/*\n Copyright 2013 Google LLC\n SPDX-License-Identifier: Apache-2.0\n*/\nfunction t(a, b) {\n  \"string\" === typeof a && (a = da(a, \"code\"));\n  var d = a.constructor;\n  this.ya = function () {\n    return new d({\n      options: {}\n    });\n  };\n  var c = this.ya(),\n    e;\n  for (e in a) c[e] = \"body\" === e ? a[e].slice() : a[e];\n  this.ra = c;\n  this.ca = [];\n  this.qb = b;\n  this.za = !1;\n  this.ba = [];\n  this.Ya = 0;\n  this.rb = Object.create(null);\n  a = /^step([A-Z]\\w*)$/;\n  var h, k;\n  for (k in this) \"function\" === typeof this[k] && (h = k.match(a)) && (this.rb[h[1]] = this[k].bind(this));\n  this.N = ea(this, this.ra, null);\n  this.Na = this.N.object;\n  this.ra = da(this.ba.join(\"\\n\"), \"polyfills\");\n  this.ba = void 0;\n  fa(this.ra);\n  h = new u(this.ra, this.N);\n  h.done = !1;\n  this.o = [h];\n  this.Eb();\n  this.value = void 0;\n  this.ra = c;\n  h = new u(this.ra, this.N);\n  h.done = !1;\n  this.o.length = 0;\n  this.o[0] = h;\n}\nvar ka = {\n    C: !0,\n    kc: 5\n  },\n  ua = {\n    configurable: !0,\n    enumerable: !0,\n    writable: !1\n  },\n  v = {\n    configurable: !0,\n    enumerable: !1,\n    writable: !0\n  },\n  A = {\n    configurable: !0,\n    enumerable: !1,\n    writable: !1\n  },\n  va = {\n    configurable: !1,\n    enumerable: !1,\n    writable: !1\n  },\n  wa = {\n    configurable: !1,\n    enumerable: !0,\n    writable: !0\n  },\n  xa = {\n    STEP_ERROR: !0\n  },\n  Ha = {\n    SCOPE_REFERENCE: !0\n  },\n  Ia = {\n    VALUE_IN_DESCRIPTOR: !0\n  },\n  Ja = {\n    REGEXP_TIMEOUT: !0\n  },\n  Ka = [],\n  La = null,\n  Ma = null,\n  Na = \"undefined\" === typeof globalThis ? this : globalThis,\n  Oa = [\"onmessage = function(e) {\", \"var result;\", \"var data = e.data;\", \"switch (data[0]) {\", \"case 'split':\", \"result = data[1].split(data[2], data[3]);\", \"break;\", \"case 'match':\", \"result = data[1].match(data[2]);\", \"break;\", \"case 'search':\", \"result = data[1].search(data[2]);\", \"break;\", \"case 'replace':\", \"result = data[1].replace(data[2], data[3]);\", \"break;\", \"case 'exec':\", \"var regexp = data[1];\", \"regexp.lastIndex = data[2];\", \"result = [regexp.exec(data[3]), data[1].lastIndex];\", \"break;\", \"default:\", \"throw Error('Unknown RegExp operation: ' + data[0]);\", \"}\", \"postMessage(result);\", \"close();\", \"};\"];\nfunction Pa(a) {\n  var b = a >>> 0;\n  return b === Number(a) ? b : NaN;\n}\nfunction Qa(a) {\n  var b = a >>> 0;\n  return String(b) === String(a) && 4294967295 !== b ? b : NaN;\n}\nfunction fa(a, b, d) {\n  b ? a.start = b : delete a.start;\n  d ? a.end = d : delete a.end;\n  for (var c in a) if (\"loc\" !== c && a.hasOwnProperty(c)) {\n    var e = a[c];\n    e && \"object\" === typeof e && fa(e, b, d);\n  }\n}\nt.prototype.REGEXP_MODE = 2;\nt.prototype.REGEXP_THREAD_TIMEOUT = 1E3;\nt.prototype.POLYFILL_TIMEOUT = 1E3;\np = t.prototype;\np.P = !1;\np.Ka = !1;\np.Kb = 0;\np.ic = 0;\nfunction da(a, b) {\n  var d = {},\n    c;\n  for (c in ka) d[c] = ka[c];\n  d.sourceFile = b;\n  return Na.j.parse(a, d);\n}\np.Jb = function (a) {\n  var b = this.o[0];\n  if (!b || \"Program\" !== b.node.type) throw Error(\"Expecting original AST to start with a Program node\");\n  \"string\" === typeof a && (a = da(a, \"appendCode\" + this.Kb++));\n  if (!a || \"Program\" !== a.type) throw Error(\"Expecting new AST to start with a Program node\");\n  Ra(this, a, b.scope);\n  Array.prototype.push.apply(b.node.body, a.body);\n  b.node.body.jb = null;\n  b.done = !1;\n};\np.lb = function () {\n  var a = this.o,\n    b;\n  do {\n    var d = a[a.length - 1];\n    if (this.za) break;else if (!d || \"Program\" === d.node.type && d.done) {\n      if (!this.ca.length) return !1;\n      d = this.ca[0];\n      if (!d || d.time > Date.now()) d = null;else {\n        this.ca.shift();\n        0 <= d.interval && ab(this, d, d.interval);\n        var c = new u(d.node, d.scope);\n        d.zb && (c.ia = 2, c.B = this.Na, c.U = d.zb, c.Qa = !0, c.F = d.Lb);\n        d = c;\n      }\n      if (!d) break;\n    }\n    c = d.node;\n    var e = Ma;\n    Ma = this;\n    try {\n      var h = this.rb[c.type](a, d, c);\n    } catch (k) {\n      if (k !== xa) throw this.value !== k && (this.value = void 0), k;\n    } finally {\n      Ma = e;\n    }\n    h && a.push(h);\n    if (this.P) throw this.value = void 0, Error(\"Getter not supported in this context\");\n    if (this.Ka) throw this.value = void 0, Error(\"Setter not supported in this context\");\n    b || c.end || (b = Date.now() + this.POLYFILL_TIMEOUT);\n  } while (!c.end && b > Date.now());\n  return !0;\n};\np.Eb = function () {\n  for (; !this.za && this.lb(););\n  return this.za;\n};\nfunction bb(a, b) {\n  a.g(b, \"NaN\", NaN, va);\n  a.g(b, \"Infinity\", Infinity, va);\n  a.g(b, \"undefined\", void 0, va);\n  a.g(b, \"window\", b, ua);\n  a.g(b, \"this\", b, va);\n  a.g(b, \"self\", b);\n  a.M = new D(null);\n  a.Z = new D(a.M);\n  Ab(a, b);\n  Bb(a, b);\n  b.xa = a.M;\n  a.g(b, \"constructor\", a.v, v);\n  Cb(a, b);\n  Db(a, b);\n  Eb(a, b);\n  Fb(a, b);\n  Gb(a, b);\n  Hb(a, b);\n  Ib(a, b);\n  Jb(a, b);\n  Kb(a, b);\n  var d = a.i(function () {\n    throw EvalError(\"Can't happen\");\n  }, !1);\n  d.eval = !0;\n  a.g(b, \"eval\", d, v);\n  a.g(b, \"parseInt\", a.i(parseInt, !1), v);\n  a.g(b, \"parseFloat\", a.i(parseFloat, !1), v);\n  a.g(b, \"isNaN\", a.i(isNaN, !1), v);\n  a.g(b, \"isFinite\", a.i(isFinite, !1), v);\n  for (var c = [[escape, \"escape\"], [unescape, \"unescape\"], [decodeURI, \"decodeURI\"], [decodeURIComponent, \"decodeURIComponent\"], [encodeURI, \"encodeURI\"], [encodeURIComponent, \"encodeURIComponent\"]], e = 0; e < c.length; e++) d = function (h) {\n    return function (k) {\n      try {\n        return h(k);\n      } catch (q) {\n        K(a, a.Gb, q.message);\n      }\n    };\n  }(c[e][0]), a.g(b, c[e][1], a.i(d, !1), v);\n  d = function (h) {\n    return Lb(a, !1, arguments);\n  };\n  a.g(b, \"setTimeout\", a.i(d, !1), v);\n  d = function (h) {\n    return Lb(a, !0, arguments);\n  };\n  a.g(b, \"setInterval\", a.i(d, !1), v);\n  d = function (h) {\n    Mb(a, h);\n  };\n  a.g(b, \"clearTimeout\", a.i(d, !1), v);\n  d = function (h) {\n    Mb(a, h);\n  };\n  a.g(b, \"clearInterval\", a.i(d, !1), v);\n  a.OBJECT = a.v;\n  a.OBJECT_PROTO = a.M;\n  a.FUNCTION = a.O;\n  a.FUNCTION_PROTO = a.Z;\n  a.ARRAY = a.qa;\n  a.ARRAY_PROTO = a.La;\n  a.REGEXP = a.I;\n  a.REGEXP_PROTO = a.Ma;\n  a.DATE = a.$;\n  a.DATE_PROTO = a.nb;\n  a.qb && a.qb(a, b);\n}\np.Wb = 0;\nfunction Ab(a, b) {\n  var d = /^[A-Za-z_$][\\w$]*$/;\n  var c = function (e) {\n    var h = arguments.length ? String(arguments[arguments.length - 1]) : \"\",\n      k = Array.prototype.slice.call(arguments, 0, -1).join(\",\").trim();\n    if (k) {\n      k = k.split(/\\s*,\\s*/);\n      for (var q = 0; q < k.length; q++) {\n        var C = k[q];\n        d.test(C) || K(a, a.T, \"Invalid function argument: \" + C);\n      }\n      k = k.join(\", \");\n    }\n    try {\n      var U = da(\"(function(\" + k + \") {\" + h + \"})\", \"function\" + a.Wb++);\n    } catch (N) {\n      K(a, a.T, \"Invalid code: \" + N.message);\n    }\n    1 !== U.body.length && K(a, a.T, \"Invalid code in function body\");\n    return Nb(a, U.body[0].la, a.N, \"anonymous\");\n  };\n  a.O = a.i(c, !0);\n  a.g(b, \"Function\", a.O, v);\n  a.g(a.O, \"prototype\", a.Z, v);\n  a.g(a.Z, \"constructor\", a.O, v);\n  a.Z.Ta = function () {};\n  a.Z.Ta.id = a.Ya++;\n  a.Z.Ab = !0;\n  a.g(a.Z, \"length\", 0, A);\n  a.Z.H = \"Function\";\n  c = function (e, h) {\n    var k = a.o[a.o.length - 1];\n    k.U = this;\n    k.B = e;\n    k.F = [];\n    null !== h && void 0 !== h && (h instanceof D ? k.F = Ob(a, h) : K(a, a.j, \"CreateListFromArrayLike called on non-object\"));\n    k.eb = !1;\n  };\n  M(a, a.O, \"apply\", c);\n  c = function (e) {\n    var h = a.o[a.o.length - 1];\n    h.U = this;\n    h.B = e;\n    h.F = [];\n    for (var k = 1; k < arguments.length; k++) h.F.push(arguments[k]);\n    h.eb = !1;\n  };\n  M(a, a.O, \"call\", c);\n  a.ba.push(\"Object.defineProperty(Function.prototype, 'bind',\", \"{configurable: true, writable: true, value:\", \"function bind(oThis) {\", \"if (typeof this !== 'function') {\", \"throw TypeError('What is trying to be bound is not callable');\", \"}\", \"var aArgs   = Array.prototype.slice.call(arguments, 1),\", \"fToBind = this,\", \"fNOP    = function() {},\", \"fBound  = function() {\", \"return fToBind.apply(this instanceof fNOP\", \"? this\", \": oThis,\", \"aArgs.concat(Array.prototype.slice.call(arguments)));\", \"};\", \"if (this.prototype) {\", \"fNOP.prototype = this.prototype;\", \"}\", \"fBound.prototype = new fNOP();\", \"return fBound;\", \"}\", \"});\", \"\");\n  c = function () {\n    return String(this);\n  };\n  M(a, a.O, \"toString\", c);\n  a.g(a.O, \"toString\", a.i(c, !1), v);\n  c = function () {\n    return this.valueOf();\n  };\n  M(a, a.O, \"valueOf\", c);\n  a.g(a.O, \"valueOf\", a.i(c, !1), v);\n}\nfunction Bb(a, b) {\n  function d(e) {\n    void 0 !== e && null !== e || K(a, a.j, \"Cannot convert '\" + e + \"' to object\");\n  }\n  var c = function (e) {\n    if (void 0 === e || null === e) return zc(a) ? this : a.s(a.M);\n    if (!(e instanceof D)) {\n      var h = a.s(Ac(a, e));\n      h.data = e;\n      return h;\n    }\n    return e;\n  };\n  a.v = a.i(c, !0);\n  a.g(a.v, \"prototype\", a.M, v);\n  a.g(a.M, \"constructor\", a.v, v);\n  a.g(b, \"Object\", a.v, v);\n  c = function (e) {\n    d(e);\n    return Bc(a, Object.getOwnPropertyNames(e instanceof D ? e.h : e));\n  };\n  a.g(a.v, \"getOwnPropertyNames\", a.i(c, !1), v);\n  c = function (e) {\n    d(e);\n    e instanceof D && (e = e.h);\n    return Bc(a, Object.keys(e));\n  };\n  a.g(a.v, \"keys\", a.i(c, !1), v);\n  c = function (e) {\n    if (null === e) return a.s(null);\n    e instanceof D || K(a, a.j, \"Object prototype may only be an Object or null, not \" + e);\n    return a.s(e);\n  };\n  a.g(a.v, \"create\", a.i(c, !1), v);\n  a.ba.push(\"(function() {\", \"var create_ = Object.create;\", \"Object.create = function create(proto, props) {\", \"var obj = create_(proto);\", \"props && Object.defineProperties(obj, props);\", \"return obj;\", \"};\", \"})();\", \"\");\n  c = function (e, h, k) {\n    h = String(h);\n    e instanceof D || K(a, a.j, \"Object.defineProperty called on non-object: \" + e);\n    k instanceof D || K(a, a.j, \"Property description must be an object\");\n    !e.preventExtensions || h in e.h || K(a, a.j, \"Can't define property '\" + h + \"', object is not extensible\");\n    a.g(e, h, Ia, k.h);\n    return e;\n  };\n  a.g(a.v, \"defineProperty\", a.i(c, !1), v);\n  a.ba.push(\"(function() {\", \"var defineProperty_ = Object.defineProperty;\", \"Object.defineProperty = function defineProperty(obj, prop, d1) {\", \"var d2 = {};\", \"if ('configurable' in d1) d2.configurable = d1.configurable;\", \"if ('enumerable' in d1) d2.enumerable = d1.enumerable;\", \"if ('writable' in d1) d2.writable = d1.writable;\", \"if ('value' in d1) d2.value = d1.value;\", \"if ('get' in d1) d2.get = d1.get;\", \"if ('set' in d1) d2.set = d1.set;\", \"return defineProperty_(obj, prop, d2);\", \"};\", \"})();\", \"Object.defineProperty(Object, 'defineProperties',\", \"{configurable: true, writable: true, value:\", \"function defineProperties(obj, props) {\", \"var keys = Object.keys(props);\", \"for (var i = 0; i < keys.length; i++) {\", \"Object.defineProperty(obj, keys[i], props[keys[i]]);\", \"}\", \"return obj;\", \"}\", \"});\", \"\");\n  c = function (e, h) {\n    e instanceof D || K(a, a.j, \"Object.getOwnPropertyDescriptor called on non-object: \" + e);\n    h = String(h);\n    if (h in e.h) {\n      var k = Object.getOwnPropertyDescriptor(e.h, h),\n        q = e.V[h];\n      e = e.Y[h];\n      h = a.s(a.M);\n      q || e ? (a.g(h, \"get\", q), a.g(h, \"set\", e)) : (a.g(h, \"value\", k.value), a.g(h, \"writable\", k.writable));\n      a.g(h, \"configurable\", k.configurable);\n      a.g(h, \"enumerable\", k.enumerable);\n      return h;\n    }\n  };\n  a.g(a.v, \"getOwnPropertyDescriptor\", a.i(c, !1), v);\n  c = function (e) {\n    d(e);\n    return Ac(a, e);\n  };\n  a.g(a.v, \"getPrototypeOf\", a.i(c, !1), v);\n  c = function (e) {\n    return !!e && !e.preventExtensions;\n  };\n  a.g(a.v, \"isExtensible\", a.i(c, !1), v);\n  c = function (e) {\n    e instanceof D && (e.preventExtensions = !0);\n    return e;\n  };\n  a.g(a.v, \"preventExtensions\", a.i(c, !1), v);\n  M(a, a.v, \"toString\", D.prototype.toString);\n  M(a, a.v, \"toLocaleString\", D.prototype.toString);\n  M(a, a.v, \"valueOf\", D.prototype.valueOf);\n  c = function (e) {\n    d(this);\n    return this instanceof D ? String(e) in this.h : this.hasOwnProperty(e);\n  };\n  M(a, a.v, \"hasOwnProperty\", c);\n  c = function (e) {\n    d(this);\n    return this instanceof D ? Object.prototype.propertyIsEnumerable.call(this.h, e) : this.propertyIsEnumerable(e);\n  };\n  M(a, a.v, \"propertyIsEnumerable\", c);\n  c = function (e) {\n    for (;;) {\n      e = Ac(a, e);\n      if (!e) return !1;\n      if (e === this) return !0;\n    }\n  };\n  M(a, a.v, \"isPrototypeOf\", c);\n}\nfunction Cb(a, b) {\n  var d = function (c) {\n    var e = zc(a) ? this : Cc(a),\n      h = arguments[0];\n    if (1 === arguments.length && \"number\" === typeof h) isNaN(Pa(h)) && K(a, a.ob, \"Invalid array length: \" + h), e.h.length = h;else {\n      for (h = 0; h < arguments.length; h++) e.h[h] = arguments[h];\n      e.h.length = h;\n    }\n    return e;\n  };\n  a.qa = a.i(d, !0);\n  a.La = a.qa.h.prototype;\n  a.g(b, \"Array\", a.qa, v);\n  d = function (c) {\n    return c && \"Array\" === c.H;\n  };\n  a.g(a.qa, \"isArray\", a.i(d, !1), v);\n  a.g(a.La, \"length\", 0, {\n    configurable: !1,\n    enumerable: !1,\n    writable: !0\n  });\n  a.La.H = \"Array\";\n  a.ba.push(\"(function() {\", \"function createArrayMethod_(f) {\", \"Object.defineProperty(Array.prototype, f.name,\", \"{configurable: true, writable: true, value: f});\", \"}\", \"createArrayMethod_(\", \"function pop() {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"if (!len || len < 0) {\", \"o.length = 0;\", \"return undefined;\", \"}\", \"len--;\", \"var x = o[len];\", \"delete o[len];\", \"o.length = len;\", \"return x;\", \"}\", \");\", \"createArrayMethod_(\", \"function push(var_args) {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"for (var i = 0; i < arguments.length; i++) {\", \"o[len] = arguments[i];\", \"len++;\", \"}\", \"o.length = len;\", \"return len;\", \"}\", \");\", \"createArrayMethod_(\", \"function shift() {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"if (!len || len < 0) {\", \"o.length = 0;\", \"return undefined;\", \"}\", \"var value = o[0];\", \"for (var i = 0; i < len - 1; i++) {\", \"if ((i + 1) in o) {\", \"o[i] = o[i + 1];\", \"} else {\", \"delete o[i];\", \"}\", \"}\", \"delete o[i];\", \"o.length = len - 1;\", \"return value;\", \"}\", \");\", \"createArrayMethod_(\", \"function unshift(var_args) {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"if (!len || len < 0) {\", \"len = 0;\", \"}\", \"for (var i = len - 1; i >= 0; i--) {\", \"if (i in o) {\", \"o[i + arguments.length] = o[i];\", \"} else {\", \"delete o[i + arguments.length];\", \"}\", \"}\", \"for (var i = 0; i < arguments.length; i++) {\", \"o[i] = arguments[i];\", \"}\", \"return (o.length = len + arguments.length);\", \"}\", \");\", \"createArrayMethod_(\", \"function reverse() {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"if (!len || len < 2) {\", \"return o;\", \"}\", \"for (var i = 0; i < len / 2 - 0.5; i++) {\", \"var x = o[i];\", \"var hasX = i in o;\", \"if ((len - i - 1) in o) {\", \"o[i] = o[len - i - 1];\", \"} else {\", \"delete o[i];\", \"}\", \"if (hasX) {\", \"o[len - i - 1] = x;\", \"} else {\", \"delete o[len - i - 1];\", \"}\", \"}\", \"return o;\", \"}\", \");\", \"createArrayMethod_(\", \"function indexOf(searchElement, fromIndex) {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"var n = fromIndex | 0;\", \"if (!len || n >= len) {\", \"return -1;\", \"}\", \"var i = Math.max(n >= 0 ? n : len - Math.abs(n), 0);\", \"while (i < len) {\", \"if (i in o && o[i] === searchElement) {\", \"return i;\", \"}\", \"i++;\", \"}\", \"return -1;\", \"}\", \");\", \"createArrayMethod_(\", \"function lastIndexOf(searchElement, fromIndex) {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"if (!len) {\", \"return -1;\", \"}\", \"var n = len - 1;\", \"if (arguments.length > 1) {\", \"n = fromIndex | 0;\", \"if (n) {\", \"n = (n > 0 || -1) * Math.floor(Math.abs(n));\", \"}\", \"}\", \"var i = n >= 0 ? Math.min(n, len - 1) : len - Math.abs(n);\", \"while (i >= 0) {\", \"if (i in o && o[i] === searchElement) {\", \"return i;\", \"}\", \"i--;\", \"}\", \"return -1;\", \"}\", \");\", \"createArrayMethod_(\", \"function slice(start, end) {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"start |= 0;\", \"start = (start >= 0) ? start : Math.max(0, len + start);\", \"if (typeof end !== 'undefined') {\", \"if (end !== Infinity) {\", \"end |= 0;\", \"}\", \"if (end < 0) {\", \"end = len + end;\", \"} else {\", \"end = Math.min(end, len);\", \"}\", \"} else {\", \"end = len;\", \"}\", \"var size = end - start;\", \"var cloned = new Array(size);\", \"for (var i = 0; i < size; i++) {\", \"if ((start + i) in o) {\", \"cloned[i] = o[start + i];\", \"}\", \"}\", \"return cloned;\", \"}\", \");\", \"createArrayMethod_(\", \"function splice(start, deleteCount, var_args) {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"start |= 0;\", \"if (start < 0) {\", \"start = Math.max(len + start, 0);\", \"} else {\", \"start = Math.min(start, len);\", \"}\", \"if (arguments.length < 1) {\", \"deleteCount = len - start;\", \"} else {\", \"deleteCount |= 0;\", \"deleteCount = Math.max(0, Math.min(deleteCount, len - start));\", \"}\", \"var removed = [];\", \"for (var i = start; i < start + deleteCount; i++) {\", \"if (i in o) {\", \"removed.push(o[i]);\", \"} else {\", \"removed.length++;\", \"}\", \"if ((i + deleteCount) in o) {\", \"o[i] = o[i + deleteCount];\", \"} else {\", \"delete o[i];\", \"}\", \"}\", \"for (var i = start + deleteCount; i < len - deleteCount; i++) {\", \"if ((i + deleteCount) in o) {\", \"o[i] = o[i + deleteCount];\", \"} else {\", \"delete o[i];\", \"}\", \"}\", \"for (var i = len - deleteCount; i < len; i++) {\", \"delete o[i];\", \"}\", \"len -= deleteCount;\", \"var arl = arguments.length - 2;\", \"for (var i = len - 1; i >= start; i--) {\", \"if (i in o) {\", \"o[i + arl] = o[i];\", \"} else {\", \"delete o[i + arl];\", \"}\", \"}\", \"len += arl;\", \"for (var i = 2; i < arguments.length; i++) {\", \"o[start + i - 2] = arguments[i];\", \"}\", \"o.length = len;\", \"return removed;\", \"}\", \");\", \"createArrayMethod_(\", \"function concat(var_args) {\", \"if (!this) throw TypeError();\", \"var o = Object(this);\", \"var cloned = [];\", \"for (var i = -1; i < arguments.length; i++) {\", \"var value = (i === -1) ? o : arguments[i];\", \"if (Array.isArray(value)) {\", \"for (var j = 0, l = value.length; j < l; j++) {\", \"if (j in value) {\", \"cloned.push(value[j]);\", \"} else {\", \"cloned.length++;\", \"}\", \"}\", \"} else {\", \"cloned.push(value);\", \"}\", \"}\", \"return cloned;\", \"}\", \");\", \"createArrayMethod_(\", \"function join(opt_separator) {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"var sep = typeof opt_separator === 'undefined' ?\", \"',' : ('' + opt_separator);\", \"var str = '';\", \"for (var i = 0; i < len; i++) {\", \"if (i && sep) str += sep;\", \"str += (o[i] === null || o[i] === undefined) ? '' : o[i];\", \"}\", \"return str;\", \"}\", \");\", \"createArrayMethod_(\", \"function every(callbackfn, thisArg) {\", \"if (!this || typeof callbackfn !== 'function') throw TypeError();\", \"var t, k = 0;\", \"var o = Object(this), len = o.length >>> 0;\", \"if (arguments.length > 1) t = thisArg;\", \"while (k < len) {\", \"if (k in o && !callbackfn.call(t, o[k], k, o)) return false;\", \"k++;\", \"}\", \"return true;\", \"}\", \");\", \"createArrayMethod_(\", \"function filter(fun, var_args) {\", \"if (this === void 0 || this === null || typeof fun !== 'function') throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"var res = [];\", \"var thisArg = arguments.length >= 2 ? arguments[1] : void 0;\", \"for (var i = 0; i < len; i++) {\", \"if (i in o) {\", \"var val = o[i];\", \"if (fun.call(thisArg, val, i, o)) res.push(val);\", \"}\", \"}\", \"return res;\", \"}\", \");\", \"createArrayMethod_(\", \"function forEach(callback, thisArg) {\", \"if (!this || typeof callback !== 'function') throw TypeError();\", \"var t, k = 0;\", \"var o = Object(this), len = o.length >>> 0;\", \"if (arguments.length > 1) t = thisArg;\", \"while (k < len) {\", \"if (k in o) callback.call(t, o[k], k, o);\", \"k++;\", \"}\", \"}\", \");\", \"createArrayMethod_(\", \"function map(callback, thisArg) {\", \"if (!this || typeof callback !== 'function') throw TypeError();\", \"var t, k = 0;\", \"var o = Object(this), len = o.length >>> 0;\", \"if (arguments.length > 1) t = thisArg;\", \"var a = new Array(len);\", \"while (k < len) {\", \"if (k in o) a[k] = callback.call(t, o[k], k, o);\", \"k++;\", \"}\", \"return a;\", \"}\", \");\", \"createArrayMethod_(\", \"function reduce(callback /*, initialValue*/) {\", \"if (!this || typeof callback !== 'function') throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"var k = 0, value;\", \"if (arguments.length === 2) {\", \"value = arguments[1];\", \"} else {\", \"while (k < len && !(k in o)) k++;\", \"if (k >= len) {\", \"throw TypeError('Reduce of empty array with no initial value');\", \"}\", \"value = o[k++];\", \"}\", \"for (; k < len; k++) {\", \"if (k in o) value = callback(value, o[k], k, o);\", \"}\", \"return value;\", \"}\", \");\", \"createArrayMethod_(\", \"function reduceRight(callback /*, initialValue*/) {\", \"if (null === this || 'undefined' === typeof this || 'function' !== typeof callback) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"var k = len - 1, value;\", \"if (arguments.length >= 2) {\", \"value = arguments[1];\", \"} else {\", \"while (k >= 0 && !(k in o)) k--;\", \"if (k < 0) {\", \"throw TypeError('Reduce of empty array with no initial value');\", \"}\", \"value = o[k--];\", \"}\", \"for (; k >= 0; k--) {\", \"if (k in o) value = callback(value, o[k], k, o);\", \"}\", \"return value;\", \"}\", \");\", \"createArrayMethod_(\", \"function some(fun/*, thisArg*/) {\", \"if (!this || typeof fun !== 'function') throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"var thisArg = arguments.length >= 2 ? arguments[1] : void 0;\", \"for (var i = 0; i < len; i++) {\", \"if (i in o && fun.call(thisArg, o[i], i, o)) return true;\", \"}\", \"return false;\", \"}\", \");\", \"createArrayMethod_(\", \"function sort(opt_comp) {\", \"if (!this) throw TypeError();\", \"if (typeof opt_comp !== 'function') {\", \"opt_comp = undefined;\", \"}\", \"for (var i = 0; i < this.length; i++) {\", \"var changes = 0;\", \"for (var j = 0; j < this.length - i - 1; j++) {\", \"if (opt_comp ? (opt_comp(this[j], this[j + 1]) > 0) :\", \"(String(this[j]) > String(this[j + 1]))) {\", \"var swap = this[j];\", \"var hasSwap = j in this;\", \"if ((j + 1) in this) {\", \"this[j] = this[j + 1];\", \"} else {\", \"delete this[j];\", \"}\", \"if (hasSwap) {\", \"this[j + 1] = swap;\", \"} else {\", \"delete this[j + 1];\", \"}\", \"changes++;\", \"}\", \"}\", \"if (!changes) break;\", \"}\", \"return this;\", \"}\", \");\", \"createArrayMethod_(\", \"function toLocaleString() {\", \"if (!this) throw TypeError();\", \"var o = Object(this), len = o.length >>> 0;\", \"var out = [];\", \"for (var i = 0; i < len; i++) {\", \"out[i] = (o[i] === null || o[i] === undefined) ? '' : o[i].toLocaleString();\", \"}\", \"return out.join(',');\", \"}\", \");\", \"})();\", \"\");\n}\nfunction Db(a, b) {\n  var d = function (c) {\n    c = arguments.length ? Na.String(c) : \"\";\n    return zc(a) ? (this.data = c, this) : c;\n  };\n  a.J = a.i(d, !0);\n  a.g(b, \"String\", a.J, v);\n  a.g(a.J, \"fromCharCode\", a.i(String.fromCharCode, !1), v);\n  b = \"charAt charCodeAt concat indexOf lastIndexOf slice substr substring toLocaleLowerCase toLocaleUpperCase toLowerCase toUpperCase trim\".split(\" \");\n  for (d = 0; d < b.length; d++) M(a, a.J, b[d], String.prototype[b[d]]);\n  d = function (c, e, h) {\n    e = a.R(e);\n    h = a.R(h);\n    try {\n      return String(this).localeCompare(c, e, h);\n    } catch (k) {\n      K(a, a.D, \"localeCompare: \" + k.message);\n    }\n  };\n  M(a, a.J, \"localeCompare\", d);\n  d = function (c, e, h) {\n    var k = String(this);\n    e = e ? Number(e) : void 0;\n    if (Q(a, c, a.I) && (c = c.data, Dc(a, c, h), 2 === a.REGEXP_MODE)) {\n      if (La) c = Ec(a, \"string.split(separator, limit)\", {\n        string: k,\n        separator: c,\n        limit: e\n      }, c, h), c !== Ja && h(Bc(a, c));else {\n        var q = a.ha(),\n          C = Fc(a, c, q, h);\n        q.onmessage = function (U) {\n          clearTimeout(C);\n          h(Bc(a, U.data));\n        };\n        q.postMessage([\"split\", k, c, e]);\n      }\n      return;\n    }\n    c = k.split(c, e);\n    h(Bc(a, c));\n  };\n  Gc(a, a.J, \"split\", d);\n  d = function (c, e) {\n    var h = String(this);\n    c = Q(a, c, a.I) ? c.data : new RegExp(c);\n    Dc(a, c, e);\n    if (2 === a.REGEXP_MODE) {\n      if (La) c = Ec(a, \"string.match(regexp)\", {\n        string: h,\n        regexp: c\n      }, c, e), c !== Ja && e(c && Bc(a, c));else {\n        var k = a.ha(),\n          q = Fc(a, c, k, e);\n        k.onmessage = function (C) {\n          clearTimeout(q);\n          e(C.data && Bc(a, C.data));\n        };\n        k.postMessage([\"match\", h, c]);\n      }\n    } else c = h.match(c), e(c && Bc(a, c));\n  };\n  Gc(a, a.J, \"match\", d);\n  d = function (c, e) {\n    var h = String(this);\n    Q(a, c, a.I) ? c = c.data : c = new RegExp(c);\n    Dc(a, c, e);\n    if (2 === a.REGEXP_MODE) {\n      if (La) c = Ec(a, \"string.search(regexp)\", {\n        string: h,\n        regexp: c\n      }, c, e), c !== Ja && e(c);else {\n        var k = a.ha(),\n          q = Fc(a, c, k, e);\n        k.onmessage = function (C) {\n          clearTimeout(q);\n          e(C.data);\n        };\n        k.postMessage([\"search\", h, c]);\n      }\n    } else e(h.search(c));\n  };\n  Gc(a, a.J, \"search\", d);\n  d = function (c, e, h) {\n    var k = String(this);\n    e = String(e);\n    if (Q(a, c, a.I) && (c = c.data, Dc(a, c, h), 2 === a.REGEXP_MODE)) {\n      if (La) c = Ec(a, \"string.replace(substr, newSubstr)\", {\n        string: k,\n        substr: c,\n        newSubstr: e\n      }, c, h), c !== Ja && h(c);else {\n        var q = a.ha(),\n          C = Fc(a, c, q, h);\n        q.onmessage = function (U) {\n          clearTimeout(C);\n          h(U.data);\n        };\n        q.postMessage([\"replace\", k, c, e]);\n      }\n      return;\n    }\n    h(k.replace(c, e));\n  };\n  Gc(a, a.J, \"replace\", d);\n  a.ba.push(\"(function() {\", \"var replace_ = String.prototype.replace;\", \"String.prototype.replace = function replace(substr, newSubstr) {\", \"if (typeof newSubstr !== 'function') {\", \"return replace_.call(this, substr, newSubstr);\", \"}\", \"var str = this;\", \"if (substr instanceof RegExp) {\", \"var subs = [];\", \"var m = substr.exec(str);\", \"while (m) {\", \"m.push(m.index, str);\", \"var inject = newSubstr.apply(null, m);\", \"subs.push([m.index, m[0].length, inject]);\", \"m = substr.global ? substr.exec(str) : null;\", \"}\", \"for (var i = subs.length - 1; i >= 0; i--) {\", \"str = str.substring(0, subs[i][0]) + subs[i][2] + str.substring(subs[i][0] + subs[i][1]);\", \"}\", \"} else {\", \"var i = str.indexOf(substr);\", \"if (i !== -1) {\", \"var inject = newSubstr(str.substr(i, substr.length), i, str);\", \"str = str.substring(0, i) + inject + str.substring(i + substr.length);\", \"}\", \"}\", \"return str;\", \"};\", \"})();\", \"\");\n}\nfunction Eb(a, b) {\n  a.mb = a.i(function (d) {\n    d = Na.Boolean(d);\n    return zc(a) ? (this.data = d, this) : d;\n  }, !0);\n  a.g(b, \"Boolean\", a.mb, v);\n}\nfunction Fb(a, b) {\n  var d = function (c) {\n    c = arguments.length ? Na.Number(c) : 0;\n    return zc(a) ? (this.data = c, this) : c;\n  };\n  a.aa = a.i(d, !0);\n  a.g(b, \"Number\", a.aa, v);\n  b = [\"MAX_VALUE\", \"MIN_VALUE\", \"NaN\", \"NEGATIVE_INFINITY\", \"POSITIVE_INFINITY\"];\n  for (d = 0; d < b.length; d++) a.g(a.aa, b[d], Number[b[d]], va);\n  d = function (c) {\n    try {\n      return Number(this).toExponential(c);\n    } catch (e) {\n      K(a, a.D, e.message);\n    }\n  };\n  M(a, a.aa, \"toExponential\", d);\n  d = function (c) {\n    try {\n      return Number(this).toFixed(c);\n    } catch (e) {\n      K(a, a.D, e.message);\n    }\n  };\n  M(a, a.aa, \"toFixed\", d);\n  d = function (c) {\n    try {\n      return Number(this).toPrecision(c);\n    } catch (e) {\n      K(a, a.D, e.message);\n    }\n  };\n  M(a, a.aa, \"toPrecision\", d);\n  d = function (c) {\n    try {\n      return Number(this).toString(c);\n    } catch (e) {\n      K(a, a.D, e.message);\n    }\n  };\n  M(a, a.aa, \"toString\", d);\n  d = function (c, e) {\n    c = c ? a.R(c) : void 0;\n    e = e ? a.R(e) : void 0;\n    try {\n      return Number(this).toLocaleString(c, e);\n    } catch (h) {\n      K(a, a.D, \"toLocaleString: \" + h.message);\n    }\n  };\n  M(a, a.aa, \"toLocaleString\", d);\n}\nfunction Gb(a, b) {\n  var d = function (e, h) {\n    if (!zc(a)) return Na.Date();\n    var k = [null].concat(Array.from(arguments));\n    this.data = new (Function.prototype.bind.apply(Na.Date, k))();\n    return this;\n  };\n  a.$ = a.i(d, !0);\n  a.nb = a.$.h.prototype;\n  a.g(b, \"Date\", a.$, v);\n  a.g(a.$, \"now\", a.i(Date.now, !1), v);\n  a.g(a.$, \"parse\", a.i(Date.parse, !1), v);\n  a.g(a.$, \"UTC\", a.i(Date.UTC, !1), v);\n  b = \"getDate getDay getFullYear getHours getMilliseconds getMinutes getMonth getSeconds getTime getTimezoneOffset getUTCDate getUTCDay getUTCFullYear getUTCHours getUTCMilliseconds getUTCMinutes getUTCMonth getUTCSeconds getYear setDate setFullYear setHours setMilliseconds setMinutes setMonth setSeconds setTime setUTCDate setUTCFullYear setUTCHours setUTCMilliseconds setUTCMinutes setUTCMonth setUTCSeconds setYear toDateString toISOString toJSON toGMTString toLocaleDateString toLocaleString toLocaleTimeString toTimeString toUTCString\".split(\" \");\n  for (var c = 0; c < b.length; c++) d = function (e) {\n    return function (h) {\n      var k = this.data;\n      k instanceof Date || K(a, a.j, e + \" not called on a Date\");\n      for (var q = [], C = 0; C < arguments.length; C++) q[C] = a.R(arguments[C]);\n      return k[e].apply(k, q);\n    };\n  }(b[c]), M(a, a.$, b[c], d);\n}\nfunction Hb(a, b) {\n  var d = function (c, e) {\n    if (zc(a)) var h = this;else {\n      if (void 0 === e && Q(a, c, a.I)) return c;\n      h = a.s(a.Ma);\n    }\n    c = void 0 === c ? \"\" : String(c);\n    e = e ? String(e) : \"\";\n    /^[gmi]*$/.test(e) || K(a, a.T, \"Invalid regexp flag: \" + e);\n    try {\n      var k = new Na.RegExp(c, e);\n    } catch (q) {\n      K(a, a.T, q.message);\n    }\n    Hc(a, h, k);\n    return h;\n  };\n  a.I = a.i(d, !0);\n  a.Ma = a.I.h.prototype;\n  a.g(b, \"RegExp\", a.I, v);\n  a.g(a.I.h.prototype, \"global\", void 0, A);\n  a.g(a.I.h.prototype, \"ignoreCase\", void 0, A);\n  a.g(a.I.h.prototype, \"multiline\", void 0, A);\n  a.g(a.I.h.prototype, \"source\", \"(?:)\", A);\n  a.ba.push(\"Object.defineProperty(RegExp.prototype, 'test',\", \"{configurable: true, writable: true, value:\", \"function test(str) {\", \"return !!this.exec(str);\", \"}\", \"});\");\n  d = function (c, e) {\n    function h(N) {\n      if (N) {\n        var F = Bc(a, N);\n        a.g(F, \"index\", N.index);\n        a.g(F, \"input\", N.input);\n        return F;\n      }\n      return null;\n    }\n    var k = this.data;\n    c = String(c);\n    k.lastIndex = Number(a.G(this, \"lastIndex\"));\n    Dc(a, k, e);\n    if (2 === a.REGEXP_MODE) {\n      if (La) c = Ec(a, \"regexp.exec(string)\", {\n        string: c,\n        regexp: k\n      }, k, e), c !== Ja && (a.g(this, \"lastIndex\", k.lastIndex), e(h(c)));else {\n        var q = a.ha(),\n          C = Fc(a, k, q, e),\n          U = this;\n        q.onmessage = function (N) {\n          clearTimeout(C);\n          a.g(U, \"lastIndex\", N.data[1]);\n          e(h(N.data[0]));\n        };\n        q.postMessage([\"exec\", k, k.lastIndex, c]);\n      }\n    } else c = k.exec(c), a.g(this, \"lastIndex\", k.lastIndex), e(h(c));\n  };\n  Gc(a, a.I, \"exec\", d);\n}\nfunction Ib(a, b) {\n  function d(c) {\n    var e = a.i(function (h) {\n      var k = zc(a) ? this : a.Aa(e);\n      Ic(a, k, h);\n      return k;\n    }, !0);\n    a.g(e, \"prototype\", a.Aa(a.D), v);\n    a.g(e.h.prototype, \"name\", c, v);\n    a.g(b, c, e, v);\n    return e;\n  }\n  a.D = a.i(function (c) {\n    var e = zc(a) ? this : a.Aa(a.D);\n    Ic(a, e, c);\n    return e;\n  }, !0);\n  a.g(b, \"Error\", a.D, v);\n  a.g(a.D.h.prototype, \"message\", \"\", v);\n  a.g(a.D.h.prototype, \"name\", \"Error\", v);\n  d(\"EvalError\");\n  a.ob = d(\"RangeError\");\n  a.pb = d(\"ReferenceError\");\n  a.T = d(\"SyntaxError\");\n  a.j = d(\"TypeError\");\n  a.Gb = d(\"URIError\");\n}\nfunction Jb(a, b) {\n  var d = a.s(a.M);\n  a.g(b, \"Math\", d, v);\n  var c = \"E LN2 LN10 LOG2E LOG10E PI SQRT1_2 SQRT2\".split(\" \");\n  for (b = 0; b < c.length; b++) a.g(d, c[b], Math[c[b]], A);\n  c = \"abs acos asin atan atan2 ceil cos exp floor log max min pow random round sin sqrt tan\".split(\" \");\n  for (b = 0; b < c.length; b++) a.g(d, c[b], a.i(Math[c[b]], !1), v);\n}\nfunction Kb(a, b) {\n  var d = a.s(a.M);\n  a.g(b, \"JSON\", d, v);\n  b = function (c) {\n    try {\n      var e = JSON.parse(String(c));\n    } catch (h) {\n      K(a, a.T, h.message);\n    }\n    return a.Ia(e);\n  };\n  a.g(d, \"parse\", a.i(b, !1));\n  b = function (c, e, h) {\n    e && \"Function\" === e.H ? K(a, a.j, \"Function replacer on JSON.stringify not supported\") : e && \"Array\" === e.H ? (e = Ob(a, e), e = e.filter(function (q) {\n      return \"string\" === typeof q || \"number\" === typeof q;\n    })) : e = null;\n    \"string\" !== typeof h && \"number\" !== typeof h && (h = void 0);\n    c = a.R(c);\n    try {\n      var k = JSON.stringify(c, e, h);\n    } catch (q) {\n      K(a, a.j, q.message);\n    }\n    return k;\n  };\n  a.g(d, \"stringify\", a.i(b, !1));\n}\nfunction Q(a, b, d) {\n  if (null === b || void 0 === b || !d) return !1;\n  d = d.h.prototype;\n  if (b === d) return !0;\n  for (b = Ac(a, b); b;) {\n    if (b === d) return !0;\n    b = b.xa;\n  }\n  return !1;\n}\nfunction Hc(a, b, d) {\n  b.data = new RegExp(d.source, d.flags);\n  a.g(b, \"lastIndex\", d.lastIndex, v);\n  a.g(b, \"source\", d.source, A);\n  a.g(b, \"global\", d.global, A);\n  a.g(b, \"ignoreCase\", d.ignoreCase, A);\n  a.g(b, \"multiline\", d.multiline, A);\n}\nfunction Ic(a, b, d) {\n  d && a.g(b, \"message\", String(d), v);\n  d = [];\n  for (var c = a.o.length - 1; 0 <= c; c--) {\n    var e = a.o[c],\n      h = e.node;\n    \"CallExpression\" === h.type && (e = e.U) && d.length && (d[d.length - 1].Ob = a.G(e, \"name\"));\n    !h.X || d.length && \"CallExpression\" !== h.type || d.push({\n      Nb: h.X\n    });\n  }\n  c = String(a.G(b, \"name\"));\n  h = String(a.G(b, \"message\"));\n  h = c + \": \" + h + \"\\n\";\n  for (c = 0; c < d.length; c++) {\n    var k = d[c].Nb;\n    e = d[c].Ob;\n    k = k.source + \":\" + k.start.line + \":\" + k.start.ab;\n    h = e ? h + (\"  at \" + e + \" (\" + k + \")\\n\") : h + (\"  at \" + k + \"\\n\");\n  }\n  a.g(b, \"stack\", h.trim(), v);\n}\np.ha = function () {\n  var a = this.ha.Mb;\n  a || (a = new Blob([Oa.join(\"\\n\")], {\n    type: \"application/javascript\"\n  }), this.ha.Mb = a);\n  return new Worker(URL.createObjectURL(a));\n};\nfunction Ec(a, b, d, c, e) {\n  var h = {\n    timeout: a.REGEXP_THREAD_TIMEOUT\n  };\n  try {\n    return La.runInNewContext(b, d, h);\n  } catch (k) {\n    e(null), K(a, a.D, \"RegExp Timeout: \" + c);\n  }\n  return Ja;\n}\nfunction Dc(a, b, d) {\n  if (0 === a.REGEXP_MODE) var c = !1;else if (1 === a.REGEXP_MODE) c = !0;else if (La) c = !0;else if (\"function\" === typeof Worker && \"function\" === typeof URL) c = !0;else if (\"function\" === typeof require) {\n    try {\n      La = require(\"vm\");\n    } catch (e) {}\n    c = !!La;\n  } else c = !1;\n  c || (d(null), K(a, a.D, \"Regular expressions not supported: \" + b));\n}\nfunction Fc(a, b, d, c) {\n  return setTimeout(function () {\n    d.terminate();\n    c(null);\n    try {\n      K(a, a.D, \"RegExp Timeout: \" + b);\n    } catch (e) {}\n  }, a.REGEXP_THREAD_TIMEOUT);\n}\np.Aa = function (a) {\n  return this.s(a && a.h.prototype);\n};\np.s = function (a) {\n  if (\"object\" !== typeof a) throw Error(\"Non object prototype\");\n  a = new D(a);\n  Q(this, a, this.D) && (a.H = \"Error\");\n  return a;\n};\nfunction Cc(a) {\n  var b = a.s(a.La);\n  a.g(b, \"length\", 0, {\n    configurable: !1,\n    enumerable: !1,\n    writable: !0\n  });\n  b.H = \"Array\";\n  return b;\n}\nfunction Zc(a, b, d) {\n  var c = a.s(a.Z);\n  d ? (d = a.s(a.M), a.g(c, \"prototype\", d, v), a.g(d, \"constructor\", c, v)) : c.Ab = !0;\n  a.g(c, \"length\", b, A);\n  c.H = \"Function\";\n  return c;\n}\nfunction Nb(a, b, d, c) {\n  var e = Zc(a, b.oa.length, !0);\n  e.Va = d;\n  e.node = b;\n  a.g(e, \"name\", b.id ? String(b.id.name) : c || \"\", A);\n  return e;\n}\np.i = function (a, b) {\n  b = Zc(this, a.length, b);\n  b.Ta = a;\n  a.id = this.Ya++;\n  this.g(b, \"name\", a.name, A);\n  return b;\n};\np.ub = function (a) {\n  var b = Zc(this, a.length, !0);\n  b.Za = a;\n  a.id = this.Ya++;\n  this.g(b, \"name\", a.name, A);\n  return b;\n};\np.Ia = function (a) {\n  if (a instanceof D) throw Error(\"Object is already pseudo\");\n  if (null === a || void 0 === a || !0 === a || !1 === a || \"string\" === typeof a || \"number\" === typeof a) return a;\n  if (a instanceof RegExp) {\n    var b = this.s(this.Ma);\n    Hc(this, b, a);\n    return b;\n  }\n  if (a instanceof Date) return b = this.s(this.nb), b.data = new Date(a.valueOf()), b;\n  if (\"function\" === typeof a) {\n    var d = this;\n    b = Object.getOwnPropertyDescriptor(a, \"prototype\");\n    return this.i(function () {\n      var e = Array.prototype.slice.call(arguments).map(function (h) {\n        return d.R(h);\n      });\n      e = a.apply(d, e);\n      return d.Ia(e);\n    }, !!b);\n  }\n  if (Array.isArray(a)) {\n    b = Cc(this);\n    for (var c = 0; c < a.length; c++) c in a && this.g(b, c, this.Ia(a[c]));\n    return b;\n  }\n  b = this.s(this.M);\n  for (c in a) this.g(b, c, this.Ia(a[c]));\n  return b;\n};\np.R = function (a, b) {\n  if (\"object\" !== typeof a && \"function\" !== typeof a || null === a) return a;\n  if (!(a instanceof D)) throw Error(\"Object is not pseudo\");\n  if (Q(this, a, this.I)) return b = new RegExp(a.data.source, a.data.flags), b.lastIndex = a.data.lastIndex, b;\n  if (Q(this, a, this.$)) return new Date(a.data.valueOf());\n  b = b || {\n    hb: [],\n    Sa: []\n  };\n  var d = b.hb.indexOf(a);\n  if (-1 !== d) return b.Sa[d];\n  b.hb.push(a);\n  if (Q(this, a, this.qa)) {\n    d = [];\n    b.Sa.push(d);\n    for (var c = this.G(a, \"length\"), e = 0; e < c; e++) $c(this, a, e) && (d[e] = this.R(this.G(a, e), b));\n  } else for (c in d = {}, b.Sa.push(d), a.h) e = this.R(a.h[c], b), Object.defineProperty(d, c, {\n    value: e,\n    writable: !0,\n    enumerable: !0,\n    configurable: !0\n  });\n  b.hb.pop();\n  b.Sa.pop();\n  return d;\n};\nfunction Bc(a, b) {\n  for (var d = Cc(a), c = Object.getOwnPropertyNames(b), e = 0; e < c.length; e++) a.g(d, c[e], b[c[e]]);\n  return d;\n}\nfunction Ob(a, b) {\n  var d = [],\n    c;\n  for (c in b.h) d[c] = a.G(b, c);\n  d.length = Pa(a.G(b, \"length\")) || 0;\n  return d;\n}\nfunction Ac(a, b) {\n  switch (typeof b) {\n    case \"number\":\n      return a.aa.h.prototype;\n    case \"boolean\":\n      return a.mb.h.prototype;\n    case \"string\":\n      return a.J.h.prototype;\n  }\n  return b ? b.xa : null;\n}\np.G = function (a, b) {\n  if (this.P) throw Error(\"Getter not supported in that context\");\n  b = String(b);\n  void 0 !== a && null !== a || K(this, this.j, \"Cannot read property '\" + b + \"' of \" + a);\n  if (\"object\" === typeof a && !(a instanceof D)) throw TypeError(\"Expecting native value or pseudo object\");\n  if (\"length\" === b) {\n    if (Q(this, a, this.J)) return String(a).length;\n  } else if (64 > b.charCodeAt(0) && Q(this, a, this.J)) {\n    var d = Qa(b);\n    if (!isNaN(d) && d < String(a).length) return String(a)[d];\n  }\n  do if (a.h && b in a.h) return (d = a.V[b]) ? (this.P = !0, d) : a.h[b]; while (a = Ac(this, a));\n};\nfunction $c(a, b, d) {\n  if (!(b instanceof D)) throw TypeError(\"Primitive data type has no properties\");\n  d = String(d);\n  if (\"length\" === d && Q(a, b, a.J)) return !0;\n  if (Q(a, b, a.J)) {\n    var c = Qa(d);\n    if (!isNaN(c) && c < String(b).length) return !0;\n  }\n  do if (b.h && d in b.h) return !0; while (b = Ac(a, b));\n  return !1;\n}\np.g = function (a, b, d, c) {\n  if (this.Ka) throw Error(\"Setter not supported in that context\");\n  b = String(b);\n  void 0 !== a && null !== a || K(this, this.j, \"Cannot set property '\" + b + \"' of \" + a);\n  if (\"object\" === typeof a && !(a instanceof D)) throw TypeError(\"Expecting native value or pseudo object\");\n  c && (\"get\" in c || \"set\" in c) && (\"value\" in c || \"writable\" in c) && K(this, this.j, \"Invalid property descriptor. Cannot both specify accessors and a value or writable attribute\");\n  var e = !this.o || ad(this).S;\n  if (a instanceof D) {\n    if (Q(this, a, this.J)) {\n      var h = Qa(b);\n      if (\"length\" === b || !isNaN(h) && h < String(a).length) {\n        e && K(this, this.j, \"Cannot assign to read only property '\" + b + \"' of String '\" + a.data + \"'\");\n        return;\n      }\n    }\n    if (\"Array\" === a.H) if (h = a.h.length, \"length\" === b) {\n      if (c) {\n        if (!(\"value\" in c)) return;\n        d = c.value;\n      }\n      d = Pa(d);\n      isNaN(d) && K(this, this.ob, \"Invalid array length\");\n      if (d < h) for (k in a.h) {\n        var k = Qa(k);\n        !isNaN(k) && d <= k && delete a.h[k];\n      }\n    } else isNaN(k = Qa(b)) || (a.h.length = Math.max(h, k + 1));\n    if (!a.preventExtensions || b in a.h) {\n      if (c) {\n        e = {};\n        \"get\" in c && c.get && (a.V[b] = c.get, e.get = this.g.ac);\n        \"set\" in c && c.set && (a.Y[b] = c.set, e.set = this.g.bc);\n        \"configurable\" in c && (e.configurable = c.configurable);\n        \"enumerable\" in c && (e.enumerable = c.enumerable);\n        \"writable\" in c && (e.writable = c.writable, delete a.V[b], delete a.Y[b]);\n        \"value\" in c ? (e.value = c.value, delete a.V[b], delete a.Y[b]) : d !== Ia && (e.value = d, delete a.V[b], delete a.Y[b]);\n        try {\n          Object.defineProperty(a.h, b, e);\n        } catch (q) {\n          K(this, this.j, \"Cannot redefine property: \" + b);\n        }\n        \"get\" in c && !c.get && delete a.V[b];\n        \"set\" in c && !c.set && delete a.Y[b];\n      } else {\n        if (d === Ia) throw ReferenceError(\"Value not specified\");\n        for (c = a; !(b in c.h);) if (c = Ac(this, c), !c) {\n          c = a;\n          break;\n        }\n        if (c.Y && c.Y[b]) return this.Ka = !0, c.Y[b];\n        if (c.V && c.V[b]) e && K(this, this.j, \"Cannot set property '\" + b + \"' of object '\" + a + \"' which only has a getter\");else try {\n          a.h[b] = d;\n        } catch (q) {\n          e && K(this, this.j, \"Cannot assign to read only property '\" + b + \"' of object '\" + a + \"'\");\n        }\n      }\n    } else e && K(this, this.j, \"Can't add property '\" + b + \"', object is not extensible\");\n  } else e && K(this, this.j, \"Can't create property '\" + b + \"' on '\" + a + \"'\");\n};\np.g.ac = function () {\n  throw Error(\"Placeholder getter\");\n};\np.g.bc = function () {\n  throw Error(\"Placeholder setter\");\n};\nfunction M(a, b, d, c) {\n  a.g(b.h.prototype, d, a.i(c, !1), v);\n}\nfunction Gc(a, b, d, c) {\n  a.g(b.h.prototype, d, a.ub(c), v);\n}\nfunction ad(a) {\n  a = a.o[a.o.length - 1].scope;\n  if (!a) throw Error(\"No scope found\");\n  return a;\n}\nfunction ea(a, b, d) {\n  var c = !1;\n  if (d && d.S) c = !0;else {\n    var e = b.body && b.body[0];\n    e && e.la && \"Literal\" === e.la.type && \"use strict\" === e.la.value && (c = !0);\n  }\n  e = a.s(null);\n  c = new bd(d, c, e);\n  d || bb(a, c.object);\n  Ra(a, b, c);\n  return c;\n}\nfunction cd(a, b, d) {\n  if (!b) throw Error(\"parentScope required\");\n  a = d || a.s(null);\n  return new bd(b, b.S, a);\n}\nfunction dd(a, b) {\n  for (var d = ad(a); d && d !== a.N;) {\n    if (b in d.object.h) return d.object.h[b];\n    d = d.Va;\n  }\n  if (d === a.N && $c(a, d.object, b)) return a.G(d.object, b);\n  d = a.o[a.o.length - 1].node;\n  \"UnaryExpression\" === d.type && \"typeof\" === d.operator || K(a, a.pb, b + \" is not defined\");\n}\nfunction ed(a, b, d) {\n  for (var c = ad(a), e = c.S; c && c !== a.N;) {\n    if (b in c.object.h) {\n      try {\n        c.object.h[b] = d;\n      } catch (h) {\n        e && K(a, a.j, \"Cannot assign to read only variable '\" + b + \"'\");\n      }\n      return;\n    }\n    c = c.Va;\n  }\n  if (c === a.N && (!e || $c(a, c.object, b))) return a.g(c.object, b, d);\n  K(a, a.pb, b + \" is not defined\");\n}\nfunction Ra(a, b, d) {\n  if (b.jb) var c = b.jb;else {\n    c = Object.create(null);\n    switch (b.type) {\n      case \"VariableDeclaration\":\n        for (var e = 0; e < b.fa.length; e++) c[b.fa[e].id.name] = !0;\n        break;\n      case \"FunctionDeclaration\":\n        c[b.id.name] = b;\n        break;\n      case \"BlockStatement\":\n      case \"CatchClause\":\n      case \"DoWhileStatement\":\n      case \"ForInStatement\":\n      case \"ForStatement\":\n      case \"IfStatement\":\n      case \"LabeledStatement\":\n      case \"Program\":\n      case \"SwitchCase\":\n      case \"SwitchStatement\":\n      case \"TryStatement\":\n      case \"WithStatement\":\n      case \"WhileStatement\":\n        var h = b.constructor,\n          k;\n        for (k in b) if (\"loc\" !== k) {\n          var q = b[k];\n          if (q && \"object\" === typeof q) if (Array.isArray(q)) for (e = 0; e < q.length; e++) {\n            if (q[e] && q[e].constructor === h) {\n              var C = Ra(a, q[e], d);\n              for (k in C) c[k] = C[k];\n            }\n          } else if (q.constructor === h) for (k in C = Ra(a, q, d), C) c[k] = C[k];\n        }\n    }\n    b.jb = c;\n  }\n  for (k in c) !0 === c[k] ? a.g(d.object, k, void 0, wa) : a.g(d.object, k, Nb(a, c[k], d), wa);\n  return c;\n}\nfunction zc(a) {\n  return a.o[a.o.length - 1].isConstructor;\n}\nfunction fd(a, b) {\n  return b[0] === Ha ? dd(a, b[1]) : a.G(b[0], b[1]);\n}\nfunction gd(a, b, d) {\n  return b[0] === Ha ? ed(a, b[1], d) : a.g(b[0], b[1], d);\n}\nfunction K(a, b, d) {\n  if (!a.N) throw void 0 === d ? b : d;\n  void 0 !== d && b instanceof D && (b = a.Aa(b), Ic(a, b, d));\n  hd(a, 4, b);\n  throw xa;\n}\nfunction hd(a, b, d, c) {\n  if (0 === b) throw TypeError(\"Should not unwind for NORMAL completions\");\n  var e = a.o;\n  a: for (; 0 < e.length; e.pop()) {\n    var h = e[e.length - 1];\n    switch (h.node.type) {\n      case \"TryStatement\":\n        h.ea = {\n          type: b,\n          value: d,\n          label: c\n        };\n        return;\n      case \"CallExpression\":\n      case \"NewExpression\":\n        if (3 === b) {\n          h.value = d;\n          return;\n        }\n        if (4 !== b) throw Error(\"Unsynatctic break/continue not rejected by Acorn\");\n        break;\n      case \"Program\":\n        h.done = !0;\n        break a;\n    }\n    if (1 === b) {\n      if (c ? h.labels && -1 !== h.labels.indexOf(c) : h.W || h.Zb) {\n        e.pop();\n        return;\n      }\n    } else if (2 === b && (c ? h.labels && -1 !== h.labels.indexOf(c) : h.W)) return;\n  }\n  Q(a, d, a.D) ? (b = {\n    EvalError: EvalError,\n    RangeError: RangeError,\n    ReferenceError: ReferenceError,\n    SyntaxError: SyntaxError,\n    TypeError: TypeError,\n    URIError: URIError\n  }, c = String(a.G(d, \"name\")), e = a.G(d, \"message\").valueOf(), b = (b[c] || Error)(e), b.stack = String(a.G(d, \"stack\"))) : b = String(d);\n  a.value = b;\n  throw b;\n}\nfunction R(a, b) {\n  switch (b.type) {\n    case \"ArrayExpression\":\n      return \"[...]\";\n    case \"BinaryExpression\":\n    case \"LogicalExpression\":\n      return R(a, b.left) + \" \" + b.operator + \" \" + R(a, b.right);\n    case \"CallExpression\":\n      return R(a, b.callee) + \"(...)\";\n    case \"ConditionalExpression\":\n      return R(a, b.test) + \" ? \" + R(a, b.da) + \" : \" + R(a, b.alternate);\n    case \"Identifier\":\n      return b.name;\n    case \"Literal\":\n      return b.raw;\n    case \"MemberExpression\":\n      var d = R(a, b.object);\n      a = R(a, b.Wa);\n      return b.bb ? d + \"[\" + a + \"]\" : d + \".\" + a;\n    case \"NewExpression\":\n      return \"new \" + R(a, b.callee) + \"(...)\";\n    case \"ObjectExpression\":\n      return \"{...}\";\n    case \"ThisExpression\":\n      return \"this\";\n    case \"UnaryExpression\":\n      return b.operator + \" \" + R(a, b.K);\n    case \"UpdateExpression\":\n      return d = R(a, b.K), b.prefix ? b.operator + d : d + b.operator;\n  }\n  return \"???\";\n}\nfunction Lb(a, b, d) {\n  var c = a.o[a.o.length - 1],\n    e = Array.from(d),\n    h = e.shift();\n  d = Math.max(Number(e.shift() || 0), 0);\n  var k = a.ya();\n  if (h instanceof D && \"Function\" === h.H) {\n    var q = h;\n    k.type = \"CallExpression\";\n    c = c.scope;\n  } else {\n    try {\n      var C = da(String(h), \"taskCode\" + a.ic++);\n    } catch (U) {\n      K(a, a.T, \"Invalid code: \" + U.message);\n    }\n    k.type = \"EvalProgram_\";\n    k.body = C.body;\n    c = c.node.arguments[0];\n    fa(k, c ? c.start : void 0, c ? c.end : void 0);\n    c = a.N;\n    e.length = 0;\n  }\n  b = new id(q, e, c, k, b ? d : -1);\n  ab(a, b, d);\n  return b.Db;\n}\nfunction ab(a, b, d) {\n  b.time = Date.now() + d;\n  a.ca.push(b);\n  a.ca.sort(function (c, e) {\n    return c.time - e.time;\n  });\n}\nfunction Mb(a, b) {\n  for (var d = 0; d < a.ca.length; d++) if (a.ca[d].Db == b) {\n    a.ca.splice(d, 1);\n    break;\n  }\n}\nfunction jd(a, b, d) {\n  if (!a.P) throw Error(\"Unexpected call to createGetter\");\n  a.P = !1;\n  d = Array.isArray(d) ? d[0] : d;\n  var c = a.ya();\n  c.type = \"CallExpression\";\n  a = new u(c, a.o[a.o.length - 1].scope);\n  a.ia = 2;\n  a.B = d;\n  a.U = b;\n  a.Qa = !0;\n  a.F = [];\n  return a;\n}\nfunction kd(a, b, d, c) {\n  if (!a.Ka) throw Error(\"Unexpected call to createSetter\");\n  a.Ka = !1;\n  d = Array.isArray(d) ? d[0] : a.Na;\n  var e = a.ya();\n  e.type = \"CallExpression\";\n  a = new u(e, a.o[a.o.length - 1].scope);\n  a.ia = 2;\n  a.B = d;\n  a.U = b;\n  a.Qa = !0;\n  a.F = [c];\n  return a;\n}\nfunction ld(a, b) {\n  return void 0 === b || null === b ? a.Na : b instanceof D ? b : (a = a.s(Ac(a, b)), a.data = b, a);\n}\np.Xb = function () {\n  return this.N;\n};\np.Yb = function () {\n  return this.o;\n};\np.ec = function (a) {\n  this.o = a;\n};\nfunction u(a, b) {\n  this.node = a;\n  this.scope = b;\n}\nfunction bd(a, b, d) {\n  this.Va = a;\n  this.S = b;\n  this.object = d;\n}\nfunction D(a) {\n  this.V = Object.create(null);\n  this.Y = Object.create(null);\n  this.h = Object.create(null);\n  this.xa = a;\n}\np = D.prototype;\np.xa = null;\np.H = \"Object\";\np.data = null;\np.toString = function () {\n  if (!Ma) return \"[object Interpreter.Object]\";\n  if (!(this instanceof D)) return String(this);\n  if (\"Array\" === this.H) {\n    var a = Ka;\n    a.push(this);\n    try {\n      var b = [],\n        d = this.h.length,\n        c = !1;\n      1024 < d && (d = 1E3, c = !0);\n      for (var e = 0; e < d; e++) {\n        var h = this.h[e];\n        b[e] = h instanceof D && -1 !== a.indexOf(h) ? \"...\" : h;\n      }\n      c && b.push(\"...\");\n    } finally {\n      a.pop();\n    }\n    return b.join(\",\");\n  }\n  if (\"Error\" === this.H) {\n    a = Ka;\n    if (-1 !== a.indexOf(this)) return \"[object Error]\";\n    d = this;\n    do if (\"name\" in d.h) {\n      b = d.h.name;\n      break;\n    } while (d = d.xa);\n    d = this;\n    do if (\"message\" in d.h) {\n      c = d.h.message;\n      break;\n    } while (d = d.xa);\n    a.push(this);\n    try {\n      b = b && String(b), c = c && String(c);\n    } finally {\n      a.pop();\n    }\n    return c ? b + \": \" + c : String(b);\n  }\n  return null !== this.data ? String(this.data) : \"[object \" + this.H + \"]\";\n};\np.valueOf = function () {\n  return !Ma || void 0 === this.data || null === this.data || this.data instanceof RegExp ? this : this.data instanceof Date ? this.data.valueOf() : this.data;\n};\nfunction id(a, b, d, c, e) {\n  this.zb = a;\n  this.Lb = b;\n  this.scope = d;\n  this.node = c;\n  this.interval = e;\n  this.Db = ++md;\n  this.time = 0;\n}\nvar md = 0;\nt.prototype.stepArrayExpression = function (a, b, d) {\n  d = d.elements;\n  var c = b.A || 0;\n  b.Oa ? (this.g(b.Oa, c, b.value), c++) : (b.Oa = Cc(this), b.Oa.h.length = d.length);\n  for (; c < d.length;) {\n    if (d[c]) return b.A = c, new u(d[c], b.scope);\n    c++;\n  }\n  a.pop();\n  a[a.length - 1].value = b.Oa;\n};\nt.prototype.stepAssignmentExpression = function (a, b, d) {\n  if (!b.ja) return b.ja = !0, b = new u(d.left, b.scope), b.sa = !0, b;\n  if (!b.Da) {\n    b.Fa || (b.Fa = b.value);\n    b.Ba && (b.ma = b.value);\n    if (!b.Ba && \"=\" !== d.operator && (a = fd(this, b.Fa), b.ma = a, this.P)) return b.Ba = !0, jd(this, a, b.Fa);\n    b.Da = !0;\n    \"=\" === d.operator && \"Identifier\" === d.left.type && (b.Pa = d.left.name);\n    return new u(d.right, b.scope);\n  }\n  if (b.ta) a.pop(), a[a.length - 1].value = b.ib;else {\n    var c = b.ma,\n      e = b.value;\n    switch (d.operator) {\n      case \"=\":\n        c = e;\n        break;\n      case \"+=\":\n        c += e;\n        break;\n      case \"-=\":\n        c -= e;\n        break;\n      case \"*=\":\n        c *= e;\n        break;\n      case \"/=\":\n        c /= e;\n        break;\n      case \"%=\":\n        c %= e;\n        break;\n      case \"<<=\":\n        c <<= e;\n        break;\n      case \">>=\":\n        c >>= e;\n        break;\n      case \">>>=\":\n        c >>>= e;\n        break;\n      case \"&=\":\n        c &= e;\n        break;\n      case \"^=\":\n        c ^= e;\n        break;\n      case \"|=\":\n        c |= e;\n        break;\n      default:\n        throw SyntaxError(\"Unknown assignment expression: \" + d.operator);\n    }\n    if (d = gd(this, b.Fa, c)) return b.ta = !0, b.ib = c, kd(this, d, b.Fa, c);\n    a.pop();\n    a[a.length - 1].value = c;\n  }\n};\nt.prototype.stepBinaryExpression = function (a, b, d) {\n  if (!b.ja) return b.ja = !0, new u(d.left, b.scope);\n  if (!b.Da) return b.Da = !0, b.ma = b.value, new u(d.right, b.scope);\n  a.pop();\n  var c = b.ma;\n  b = b.value;\n  switch (d.operator) {\n    case \"==\":\n      d = c == b;\n      break;\n    case \"!=\":\n      d = c != b;\n      break;\n    case \"===\":\n      d = c === b;\n      break;\n    case \"!==\":\n      d = c !== b;\n      break;\n    case \">\":\n      d = c > b;\n      break;\n    case \">=\":\n      d = c >= b;\n      break;\n    case \"<\":\n      d = c < b;\n      break;\n    case \"<=\":\n      d = c <= b;\n      break;\n    case \"+\":\n      d = c + b;\n      break;\n    case \"-\":\n      d = c - b;\n      break;\n    case \"*\":\n      d = c * b;\n      break;\n    case \"/\":\n      d = c / b;\n      break;\n    case \"%\":\n      d = c % b;\n      break;\n    case \"&\":\n      d = c & b;\n      break;\n    case \"|\":\n      d = c | b;\n      break;\n    case \"^\":\n      d = c ^ b;\n      break;\n    case \"<<\":\n      d = c << b;\n      break;\n    case \">>\":\n      d = c >> b;\n      break;\n    case \">>>\":\n      d = c >>> b;\n      break;\n    case \"in\":\n      b instanceof D || K(this, this.j, \"'in' expects an object, not '\" + b + \"'\");\n      d = $c(this, b, c);\n      break;\n    case \"instanceof\":\n      Q(this, b, this.O) || K(this, this.j, \"'instanceof' expects an object, not '\" + b + \"'\");\n      d = c instanceof D ? Q(this, c, b) : !1;\n      break;\n    default:\n      throw SyntaxError(\"Unknown binary operator: \" + d.operator);\n  }\n  a[a.length - 1].value = d;\n};\nt.prototype.stepBlockStatement = function (a, b, d) {\n  var c = b.A || 0;\n  if (d = d.body[c]) return b.A = c + 1, new u(d, b.scope);\n  a.pop();\n};\nt.prototype.stepBreakStatement = function (a, b, d) {\n  hd(this, 1, void 0, d.label && d.label.name);\n};\nt.prototype.Hb = 0;\nt.prototype.stepCallExpression = function (a, b, d) {\n  if (!b.ia) {\n    b.ia = 1;\n    var c = new u(d.callee, b.scope);\n    c.sa = !0;\n    return c;\n  }\n  if (1 === b.ia) {\n    b.ia = 2;\n    var e = b.value;\n    if (Array.isArray(e)) {\n      if (b.U = fd(this, e), e[0] === Ha ? b.Pb = \"eval\" === e[1] : b.B = e[0], e = b.U, this.P) return b.ia = 1, jd(this, e, b.value);\n    } else b.U = e;\n    b.F = [];\n    b.A = 0;\n  }\n  e = b.U;\n  if (!b.Qa) {\n    0 !== b.A && b.F.push(b.value);\n    if (d.arguments[b.A]) return new u(d.arguments[b.A++], b.scope);\n    if (\"NewExpression\" === d.type) {\n      e instanceof D && !e.Ab || K(this, this.j, R(this, d.callee) + \" is not a constructor\");\n      if (e === this.qa) b.B = Cc(this);else {\n        var h = e.h.prototype;\n        if (\"object\" !== typeof h || null === h) h = this.M;\n        b.B = this.s(h);\n      }\n      b.isConstructor = !0;\n    }\n    b.Qa = !0;\n  }\n  if (b.eb) a.pop(), a[a.length - 1].value = b.isConstructor && \"object\" !== typeof b.value ? b.B : b.value;else {\n    b.eb = !0;\n    e instanceof D || K(this, this.j, R(this, d.callee) + \" is not a function\");\n    if (a = e.node) {\n      d = ea(this, a.body, e.Va);\n      c = Cc(this);\n      for (e = 0; e < b.F.length; e++) this.g(c, e, b.F[e]);\n      this.g(d.object, \"arguments\", c);\n      for (e = 0; e < a.oa.length; e++) this.g(d.object, a.oa[e].name, b.F.length > e ? b.F[e] : void 0);\n      d.S || (b.B = ld(this, b.B));\n      this.g(d.object, \"this\", b.B, ua);\n      b.value = void 0;\n      return new u(a.body, d);\n    }\n    if (e.eval) {\n      if (e = b.F[0], \"string\" !== typeof e) b.value = e;else {\n        try {\n          c = da(String(e), \"eval\" + this.Hb++);\n        } catch (q) {\n          K(this, this.T, \"Invalid code: \" + q.message);\n        }\n        e = this.ya();\n        e.type = \"EvalProgram_\";\n        e.body = c.body;\n        fa(e, d.start, d.end);\n        d = b.Pb ? b.scope : this.N;\n        d.S ? d = ea(this, c, d) : Ra(this, c, d);\n        this.value = void 0;\n        return new u(e, d);\n      }\n    } else if (e.Ta) b.scope.S || (b.B = ld(this, b.B)), b.value = e.Ta.apply(b.B, b.F);else if (e.Za) {\n      var k = this;\n      c = e.Za.length - 1;\n      c = b.F.concat(Array(c)).slice(0, c);\n      c.push(function (q) {\n        b.value = q;\n        k.za = !1;\n      });\n      this.za = !0;\n      b.scope.S || (b.B = ld(this, b.B));\n      e.Za.apply(b.B, c);\n    } else K(this, this.j, R(this, d.callee) + \" is not callable\");\n  }\n};\nt.prototype.stepConditionalExpression = function (a, b, d) {\n  var c = b.na || 0;\n  if (0 === c) return b.na = 1, new u(d.test, b.scope);\n  if (1 === c) {\n    b.na = 2;\n    if ((c = !!b.value) && d.da) return new u(d.da, b.scope);\n    if (!c && d.alternate) return new u(d.alternate, b.scope);\n    this.value = void 0;\n  }\n  a.pop();\n  \"ConditionalExpression\" === d.type && (a[a.length - 1].value = b.value);\n};\nt.prototype.stepContinueStatement = function (a, b, d) {\n  hd(this, 2, void 0, d.label && d.label.name);\n};\nt.prototype.stepDebuggerStatement = function (a) {\n  a.pop();\n};\nt.prototype.stepDoWhileStatement = function (a, b, d) {\n  \"DoWhileStatement\" === d.type && void 0 === b.ga && (b.value = !0, b.ga = !0);\n  if (!b.ga) return b.ga = !0, new u(d.test, b.scope);\n  if (!b.value) a.pop();else if (d.body) return b.ga = !1, b.W = !0, new u(d.body, b.scope);\n};\nt.prototype.stepEmptyStatement = function (a) {\n  a.pop();\n};\nt.prototype.stepEvalProgram_ = function (a, b, d) {\n  var c = b.A || 0;\n  if (d = d.body[c]) return b.A = c + 1, new u(d, b.scope);\n  a.pop();\n  a[a.length - 1].value = this.value;\n};\nt.prototype.stepExpressionStatement = function (a, b, d) {\n  if (!b.ka) return this.value = void 0, b.ka = !0, new u(d.la, b.scope);\n  a.pop();\n  this.value = b.value;\n};\nt.prototype.stepForInStatement = function (a, b, d) {\n  if (!b.Ub && (b.Ub = !0, d.left.fa && d.left.fa[0].ua)) return b.scope.S && K(this, this.T, \"for-in loop variable declaration may not have an initializer\"), new u(d.left, b.scope);\n  if (!b.Ca) return b.Ca = !0, b.pa || (b.pa = b.value), new u(d.right, b.scope);\n  b.W || (b.W = !0, b.u = b.value, b.kb = Object.create(null));\n  if (void 0 === b.Ra) a: for (;;) {\n    if (b.u instanceof D) for (b.wa || (b.wa = Object.getOwnPropertyNames(b.u.h));;) {\n      var c = b.wa.shift();\n      if (void 0 === c) break;\n      if (Object.prototype.hasOwnProperty.call(b.u.h, c) && !b.kb[c] && (b.kb[c] = !0, Object.prototype.propertyIsEnumerable.call(b.u.h, c))) {\n        b.Ra = c;\n        break a;\n      }\n    } else if (null !== b.u && void 0 !== b.u) for (b.wa || (b.wa = Object.getOwnPropertyNames(b.u));;) {\n      c = b.wa.shift();\n      if (void 0 === c) break;\n      b.kb[c] = !0;\n      if (Object.prototype.propertyIsEnumerable.call(b.u, c)) {\n        b.Ra = c;\n        break a;\n      }\n    }\n    b.u = Ac(this, b.u);\n    b.wa = null;\n    if (null === b.u) {\n      a.pop();\n      return;\n    }\n  }\n  if (!b.wb) if (b.wb = !0, a = d.left, \"VariableDeclaration\" === a.type) b.pa = [Ha, a.fa[0].id.name];else return b.pa = null, b = new u(a, b.scope), b.sa = !0, b;\n  b.pa || (b.pa = b.value);\n  if (!b.ta && (b.ta = !0, a = b.Ra, c = gd(this, b.pa, a))) return kd(this, c, b.pa, a);\n  b.Ra = void 0;\n  b.wb = !1;\n  b.ta = !1;\n  if (d.body) return new u(d.body, b.scope);\n};\nt.prototype.stepForStatement = function (a, b, d) {\n  switch (b.na) {\n    default:\n      b.na = 1;\n      if (d.ua) return new u(d.ua, b.scope);\n      break;\n    case 1:\n      b.na = 2;\n      if (d.test) return new u(d.test, b.scope);\n      break;\n    case 2:\n      b.na = 3;\n      if (d.test && !b.value) a.pop();else return b.W = !0, new u(d.body, b.scope);\n      break;\n    case 3:\n      if (b.na = 1, d.update) return new u(d.update, b.scope);\n  }\n};\nt.prototype.stepFunctionDeclaration = function (a) {\n  a.pop();\n};\nt.prototype.stepFunctionExpression = function (a, b, d) {\n  a.pop();\n  b = a[a.length - 1];\n  a = b.scope;\n  d.id && (a = cd(this, a));\n  b.value = Nb(this, d, a, b.Pa);\n  d.id && this.g(a.object, d.id.name, b.value, ua);\n};\nt.prototype.stepIdentifier = function (a, b, d) {\n  a.pop();\n  if (b.sa) a[a.length - 1].value = [Ha, d.name];else {\n    b = dd(this, d.name);\n    if (this.P) return jd(this, b, this.Na);\n    a[a.length - 1].value = b;\n  }\n};\nt.prototype.stepIfStatement = t.prototype.stepConditionalExpression;\nt.prototype.stepLabeledStatement = function (a, b, d) {\n  a.pop();\n  a = b.labels || [];\n  a.push(d.label.name);\n  b = new u(d.body, b.scope);\n  b.labels = a;\n  return b;\n};\nt.prototype.stepLiteral = function (a, b, d) {\n  a.pop();\n  b = d.value;\n  b instanceof RegExp && (d = this.s(this.Ma), Hc(this, d, b), b = d);\n  a[a.length - 1].value = b;\n};\nt.prototype.stepLogicalExpression = function (a, b, d) {\n  if (\"&&\" !== d.operator && \"||\" !== d.operator) throw SyntaxError(\"Unknown logical operator: \" + d.operator);\n  if (!b.ja) return b.ja = !0, new u(d.left, b.scope);\n  if (b.Da) a.pop(), a[a.length - 1].value = b.value;else if (\"&&\" === d.operator && !b.value || \"||\" === d.operator && b.value) a.pop(), a[a.length - 1].value = b.value;else return b.Da = !0, new u(d.right, b.scope);\n};\nt.prototype.stepMemberExpression = function (a, b, d) {\n  if (!b.Ca) return b.Ca = !0, new u(d.object, b.scope);\n  if (d.bb) {\n    if (b.Vb) d = b.value;else return b.u = b.value, b.Vb = !0, new u(d.Wa, b.scope);\n  } else b.u = b.value, d = d.Wa.name;\n  a.pop();\n  if (b.sa) a[a.length - 1].value = [b.u, d];else {\n    d = this.G(b.u, d);\n    if (this.P) return jd(this, d, b.u);\n    a[a.length - 1].value = d;\n  }\n};\nt.prototype.stepNewExpression = t.prototype.stepCallExpression;\nt.prototype.stepObjectExpression = function (a, b, d) {\n  var c = b.A || 0,\n    e = d.h[c];\n  if (b.u) {\n    var h = b.Pa;\n    b.Ja[h] || (b.Ja[h] = {});\n    b.Ja[h][e.kind] = b.value;\n    b.A = ++c;\n    e = d.h[c];\n  } else b.u = this.s(this.M), b.Ja = Object.create(null);\n  if (e) {\n    var k = e.key;\n    if (\"Identifier\" === k.type) h = k.name;else if (\"Literal\" === k.type) h = k.value;else throw SyntaxError(\"Unknown object structure: \" + k.type);\n    b.Pa = h;\n    return new u(e.value, b.scope);\n  }\n  for (k in b.Ja) d = b.Ja[k], \"get\" in d || \"set\" in d ? this.g(b.u, k, Ia, {\n    configurable: !0,\n    enumerable: !0,\n    get: d.get,\n    set: d.set\n  }) : this.g(b.u, k, d.init);\n  a.pop();\n  a[a.length - 1].value = b.u;\n};\nt.prototype.stepProgram = function (a, b, d) {\n  if (a = d.body.shift()) return b.done = !1, new u(a, b.scope);\n  b.done = !0;\n};\nt.prototype.stepReturnStatement = function (a, b, d) {\n  if (d.K && !b.ka) return b.ka = !0, new u(d.K, b.scope);\n  hd(this, 3, b.value);\n};\nt.prototype.stepSequenceExpression = function (a, b, d) {\n  var c = b.A || 0;\n  if (d = d.xb[c]) return b.A = c + 1, new u(d, b.scope);\n  a.pop();\n  a[a.length - 1].value = b.value;\n};\nt.prototype.stepSwitchStatement = function (a, b, d) {\n  if (!b.ga) return b.ga = 1, new u(d.Qb, b.scope);\n  1 === b.ga && (b.ga = 2, b.hc = b.value, b.cb = -1);\n  for (;;) {\n    var c = b.gb || 0,\n      e = d.tb[c];\n    if (b.Ha || !e || e.test) {\n      if (e || b.Ha || -1 === b.cb) {\n        if (e) {\n          if (!b.Ha && !b.Fb && e.test) return b.Fb = !0, new u(e.test, b.scope);\n          if (b.Ha || b.value === b.hc) {\n            b.Ha = !0;\n            var h = b.A || 0;\n            if (e.da[h]) return b.Zb = !0, b.A = h + 1, new u(e.da[h], b.scope);\n          }\n          b.Fb = !1;\n          b.A = 0;\n          b.gb = c + 1;\n        } else {\n          a.pop();\n          break;\n        }\n      } else b.Ha = !0, b.gb = b.cb;\n    } else b.cb = c, b.gb = c + 1;\n  }\n};\nt.prototype.stepThisExpression = function (a) {\n  a.pop();\n  a[a.length - 1].value = dd(this, \"this\");\n};\nt.prototype.stepThrowStatement = function (a, b, d) {\n  if (b.ka) K(this, b.value);else return b.ka = !0, new u(d.K, b.scope);\n};\nt.prototype.stepTryStatement = function (a, b, d) {\n  if (!b.Rb) return b.Rb = !0, new u(d.block, b.scope);\n  if (b.ea && 4 === b.ea.type && !b.Tb && d.Ea) return b.Tb = !0, a = cd(this, b.scope), this.g(a.object, d.Ea.Ua.name, b.ea.value), b.ea = void 0, new u(d.Ea.body, a);\n  if (!b.Sb && d.fb) return b.Sb = !0, new u(d.fb, b.scope);\n  a.pop();\n  b.ea && hd(this, b.ea.type, b.ea.value, b.ea.label);\n};\nt.prototype.stepUnaryExpression = function (a, b, d) {\n  if (!b.ka) return b.ka = !0, a = new u(d.K, b.scope), a.sa = \"delete\" === d.operator, a;\n  a.pop();\n  var c = b.value;\n  switch (d.operator) {\n    case \"-\":\n      c = -c;\n      break;\n    case \"+\":\n      c = +c;\n      break;\n    case \"!\":\n      c = !c;\n      break;\n    case \"~\":\n      c = ~c;\n      break;\n    case \"delete\":\n      d = !0;\n      if (Array.isArray(c)) {\n        var e = c[0];\n        e === Ha && (e = b.scope);\n        c = String(c[1]);\n        try {\n          delete e.h[c];\n        } catch (h) {\n          b.scope.S ? K(this, this.j, \"Cannot delete property '\" + c + \"' of '\" + e + \"'\") : d = !1;\n        }\n      }\n      c = d;\n      break;\n    case \"typeof\":\n      c = c && \"Function\" === c.H ? \"function\" : typeof c;\n      break;\n    case \"void\":\n      c = void 0;\n      break;\n    default:\n      throw SyntaxError(\"Unknown unary operator: \" + d.operator);\n  }\n  a[a.length - 1].value = c;\n};\nt.prototype.stepUpdateExpression = function (a, b, d) {\n  if (!b.ja) return b.ja = !0, a = new u(d.K, b.scope), a.sa = !0, a;\n  b.Ga || (b.Ga = b.value);\n  b.Ba && (b.ma = b.value);\n  if (!b.Ba) {\n    var c = fd(this, b.Ga);\n    b.ma = c;\n    if (this.P) return b.Ba = !0, jd(this, c, b.Ga);\n  }\n  if (b.ta) a.pop(), a[a.length - 1].value = b.ib;else {\n    c = Number(b.ma);\n    if (\"++\" === d.operator) var e = c + 1;else if (\"--\" === d.operator) e = c - 1;else throw SyntaxError(\"Unknown update expression: \" + d.operator);\n    d = d.prefix ? e : c;\n    if (c = gd(this, b.Ga, e)) return b.ta = !0, b.ib = d, kd(this, c, b.Ga, e);\n    a.pop();\n    a[a.length - 1].value = d;\n  }\n};\nt.prototype.stepVariableDeclaration = function (a, b, d) {\n  d = d.fa;\n  var c = b.A || 0,\n    e = d[c];\n  b.Bb && e && (ed(this, e.id.name, b.value), b.Bb = !1, e = d[++c]);\n  for (; e;) {\n    if (e.ua) return b.A = c, b.Bb = !0, b.Pa = e.id.name, new u(e.ua, b.scope);\n    e = d[++c];\n  }\n  a.pop();\n};\nt.prototype.stepWithStatement = function (a, b, d) {\n  if (!b.Ca) return b.Ca = !0, new u(d.object, b.scope);\n  a.pop();\n  a = cd(this, b.scope, b.value);\n  return new u(d.body, a);\n};\nt.prototype.stepWhileStatement = t.prototype.stepDoWhileStatement;\nNa.Interpreter = t;\nt.prototype.step = t.prototype.lb;\nt.prototype.run = t.prototype.Eb;\nt.prototype.appendCode = t.prototype.Jb;\nt.prototype.createObject = t.prototype.Aa;\nt.prototype.createObjectProto = t.prototype.s;\nt.prototype.createAsyncFunction = t.prototype.ub;\nt.prototype.createNativeFunction = t.prototype.i;\nt.prototype.getProperty = t.prototype.G;\nt.prototype.setProperty = t.prototype.g;\nt.prototype.nativeToPseudo = t.prototype.Ia;\nt.prototype.pseudoToNative = t.prototype.R;\nt.prototype.getGlobalScope = t.prototype.Xb;\nt.prototype.getStateStack = t.prototype.Yb;\nt.prototype.setStateStack = t.prototype.ec;\nt.VALUE_IN_DESCRIPTOR = Ia;\n\n// BUILDER.IO: export Interpreter\nexport default (t as Class)","import type { ExecutorArgs } from '../helpers';\nimport { flattenState, getFunctionArguments } from '../helpers';\nimport Interpreter from './acorn-interpreter';\n\n/**\n * https://stackoverflow.com/a/46503625\n */\nfunction patchInterpreter() {\n  const originalGetProperty = Interpreter.prototype.getProperty;\n  const originalSetProperty = Interpreter.prototype.setProperty;\n  function newGetProperty(this: typeof Interpreter, obj: any, name: any) {\n    if (obj == null || !obj._connected) {\n      return originalGetProperty.call(this, obj, name);\n    }\n    const value = obj._connected[name];\n    if (Array.isArray(value)) {\n      return this.nativeToPseudo(value);\n    }\n    if (typeof value === 'object') {\n      // if the value is an object itself, create another connected object\n      return this.createConnectedObject(value);\n    }\n    return value;\n  }\n  function newSetProperty(this: typeof Interpreter, obj: any, name: any, value: any, opt_descriptor: any) {\n    if (obj == null || !obj._connected) {\n      return originalSetProperty.call(this, obj, name, value, opt_descriptor);\n    }\n    obj._connected[name] = this.pseudoToNative(value);\n  }\n  const getKeys: string[] = [];\n  const setKeys: string[] = [];\n  for (const key of Object.keys(Interpreter.prototype)) {\n    if (Interpreter.prototype[key] === originalGetProperty) {\n      getKeys.push(key);\n    }\n    if (Interpreter.prototype[key] === originalSetProperty) {\n      setKeys.push(key);\n    }\n  }\n  for (const key of getKeys) {\n    Interpreter.prototype[key] = newGetProperty;\n  }\n  for (const key of setKeys) {\n    Interpreter.prototype[key] = newSetProperty;\n  }\n  Interpreter.prototype.createConnectedObject = function (obj: any) {\n    const connectedObject = this.createObject(this.OBJECT);\n    connectedObject._connected = obj;\n    return connectedObject;\n  };\n}\npatchInterpreter();\nconst processCode = (code: string) => {\n  return code\n  // strip async/await polyfill: remove anything before 'function main()'\n  .replace(/^.*?function main\\(\\)/, `\nvar __awaiter = function (e, t, n, r) {return r()},\n__generator = function (e, t) { return t() };\nfunction main()`)\n  // replace ?. with .\n  .replace(/\\?\\./g, '.');\n};\nconst getJSONValName = (val: string) => val + 'JSON';\nexport const runInEdge = ({\n  builder,\n  context,\n  event,\n  rootState,\n  localState,\n  rootSetState,\n  code\n}: ExecutorArgs) => {\n  const state = flattenState({\n    rootState,\n    localState,\n    rootSetState\n  });\n  const properties = getFunctionArguments({\n    builder,\n    context,\n    event,\n    state\n  });\n\n  /**\n   * Deserialize all properties from JSON strings to JS objects\n   */\n  const prependedCode = properties.map(([key]) => {\n    const jsonValName = getJSONValName(key);\n    if (key === 'state') {\n      return ``;\n    }\n    return `var ${key} = ${jsonValName} === undefined ? undefined : JSON.parse(${jsonValName});`;\n  }).join('\\n');\n  const cleanedCode = processCode(code);\n  if (cleanedCode === '') return;\n  const transformed = `\nfunction theFunction() {\n  ${prependedCode}\n\n  ${cleanedCode}\n}\ntheFunction();\n`;\n  const initFunc = function (interpreter: any, globalObject: any) {\n    /**\n     * serialize all function args to JSON strings\n     */\n    properties.forEach(([key, val]) => {\n      if (key === 'state') {\n        interpreter.setProperty(globalObject, key, interpreter.createConnectedObject(val), interpreter.READONLY_DESCRIPTOR);\n      } else {\n        const jsonVal = JSON.stringify(val);\n        interpreter.setProperty(globalObject, getJSONValName(key), jsonVal);\n      }\n    });\n  };\n  const myInterpreter = new Interpreter(transformed, initFunc);\n  myInterpreter.run();\n  const output = myInterpreter.pseudoToNative(myInterpreter.value);\n  return output;\n}","/*\n * THIS FILE IS EXPECTED TO EXIST WITH THIS EXACT NAME BY SUBSEQUENT BUNDLE STEPS THAT TRANSFORM IT.\n * DO NOT RENAME THIS FILE.\n */\nimport { isBrowser } from '../is-browser';\nimport { runInBrowser } from './browser-runtime/browser';\nimport type { ExecutorArgs } from './helpers';\n\n/**\n * THIS IS A MAGICAL IMPORT. It is aliased by the build process of every SDK configuration, so that\n * it points to the correct runtime for that configuration, which are expected to live exactly at:\n *  - ./browser-runtime/index.js\n *  - ./node-runtime/index.js\n *  - ./edge-runtime/index.js\n *\n * We have code in `/output-generation` that does this aliasing, and is re-used by each SDK.\n * Also, each individual `tsconfig.json` aliases this import to the browser runtime so that the\n * types can be resolved correctly.\n */\nimport { evaluator } from \"./edge-runtime/index\";\nimport { shouldForceBrowserRuntimeInNode } from './should-force-browser-runtime-in-node';\n\n/**\n * Even though we have separate runtimes for browser/node/edge, sometimes frameworks will\n * end up sending the server runtime code to the browser (most notably in dev mode).\n */\nexport const chooseBrowserOrServerEval = args => evaluator(args);","import { logger } from '../../helpers/logger';\nimport { get } from '../get';\nimport { chooseBrowserOrServerEval } from './choose-eval';\nimport type { EvaluatorArgs, ExecutorArgs } from './helpers';\nimport { getBuilderGlobals, parseCode } from './helpers';\ntype EvalValue = unknown;\n\n/**\n * handles multi-level gets on state: `state.x.y.z`\n * does not handle bracket notation\n * see https://regexr.com/87a9j\n */\nconst STATE_GETTER_REGEX = /^(return )?(\\s*)?state(?<getPath>(\\.\\w+)+)(\\s*);?$/;\n\n/**\n * Handles multi-level gets on state transpiled by rollup with virtual index.\n * see https://regexr.com/87ai4\n */\nconst VIRTUAL_INDEX_REGEX = /(\\s)*var(\\s)+_virtual_index(\\s)*=(\\s)*state(?<getPath>(\\.\\w+)+)(\\s*);?(\\s)*return(\\s)*_virtual_index(\\s)*/;\nexport const getSimpleExpressionGetPath = (code: string) => {\n  return STATE_GETTER_REGEX.exec(code.trim())?.groups?.getPath?.slice(1) || VIRTUAL_INDEX_REGEX.exec(code.trim())?.groups?.getPath?.slice(1);\n};\nexport function evaluate({\n  code,\n  context,\n  localState,\n  rootState,\n  rootSetState,\n  event,\n  isExpression = true,\n  trackingContext\n}: EvaluatorArgs): EvalValue {\n  if (code.trim() === '') {\n    return undefined;\n  }\n\n  /**\n   * For very simple expressions like \"state.foo\" we can optimize by skipping\n   * the executor altogether.\n   * We try not to take many risks with this optimizations, so we only do it for\n   * `state.{path}` expressions.\n   */\n  const getPath = getSimpleExpressionGetPath(code.trim());\n  if (getPath) {\n    return get({\n      ...rootState,\n      ...localState\n    }, getPath);\n  }\n  const args: ExecutorArgs = {\n    code: parseCode(code, {\n      isExpression\n    }),\n    builder: getBuilderGlobals(trackingContext),\n    context,\n    event,\n    rootSetState,\n    rootState,\n    localState\n  };\n  try {\n    const newEval = chooseBrowserOrServerEval(args);\n    return newEval;\n  } catch (e: any) {\n    logger.error('Failed code evaluation: ' + e.message, {\n      code\n    });\n    return undefined;\n  }\n}","import type { BuilderContextInterface } from '../context/types';\nimport type { BuilderBlock } from '../types/builder-block';\nimport { evaluate } from './evaluate/evaluate';\nexport function getBlockComponentOptions(block: BuilderBlock, context: Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'>) {\n  return {\n    ...block.component?.options,\n    ...(block as any).options,\n    ...evaluateTextComponentTextOption(block, context)\n  };\n}\nconst evaluateTextComponentTextOption = (block: BuilderBlock, context: Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'>) => {\n  if (block.component?.name === 'Text' && block.component.options?.text && typeof block.component.options.text === 'string') {\n    return {\n      ...block.component.options,\n      text: block.component.options.text.replace(/{{([^}]+)}}/g, (_match: string, group: string) => (evaluate({\n        code: group,\n        context,\n        localState: context.localState,\n        rootState: context.rootState,\n        rootSetState: context.rootSetState\n      }) as string))\n    };\n  }\n}","export function omit<T extends object>(obj: T, ...values: (keyof T)[]): Partial<T> {\n  const newObject = Object.assign({}, obj);\n  for (const key of values) {\n    delete (newObject as any)[key];\n  }\n  return newObject;\n}","type TraverseCallback = (value: any, update: (newValue: any) => void) => void;\n\n/**\n * Recursively traverses an object or array, invoking a callback on each value.\n *\n * @param {any} obj - The object or array to traverse. Can also handle primitives, null, or undefined.\n * @param {TraverseCallback} callback - The function to invoke on each value. Receives the current value\n * and an `update` function to modify the value in its parent container.\n * @param {any} [parent=null] - The parent object or array of the current value. Used internally.\n * @param {any} [key=null] - The key or index of the current value in its parent. Used internally.\n * @param {WeakSet} [visited=new WeakSet()] - Tracks visited objects to handle circular references. Used internally.\n *\n * @example\n * // Example: Doubling all numbers in an object\n * const obj = { a: 1, b: [2, 3, { c: 4 }] };\n * traverse(obj, (value, update) => {\n *   if (typeof value === 'number') {\n *     update(value * 2);\n *   }\n * });\n * console.log(obj); // { a: 2, b: [4, 6, { c: 8 }] }\n *\n * @example\n * // Example: Handling circular references\n * const obj = { a: 1 };\n * obj.self = obj;\n * traverse(obj, (value, update) => {\n *   if (typeof value === 'number') {\n *     update(value * 2);\n *   }\n * });\n * console.log(obj.a); // 2\n */\nexport function traverse(obj: any, callback: TraverseCallback, parent: any = null, key: any = null, visited = new WeakSet()): void {\n  if (obj == null || typeof obj !== 'object') {\n    callback(obj, (newValue: any) => {\n      if (parent !== null && key !== null) {\n        parent[key] = newValue;\n      }\n    });\n    return;\n  }\n  if (visited.has(obj)) {\n    return;\n  }\n  visited.add(obj);\n  if (Array.isArray(obj)) {\n    obj.forEach((item, index) => {\n      const update = (newValue: any) => {\n        obj[index] = newValue;\n      };\n      callback(item, update);\n      traverse(item, callback, obj, index, visited);\n    });\n  } else {\n    Object.entries(obj).forEach(([key, value]) => {\n      const update = (newValue: any) => {\n        obj[key] = newValue;\n      };\n      callback(value, update);\n      traverse(value, callback, obj, key, visited);\n    });\n  }\n}","import type { BuilderBlock } from '../types/builder-block';\nimport { traverse } from './traverse';\nfunction isLocalizedField(value: any) {\n  return value && typeof value === 'object' && value['@type'] === '@builder.io/core:LocalizedValue';\n}\nfunction containsLocalizedValues(data: Record<string, any>) {\n  if (!data || !Object.getOwnPropertyNames(data).length) {\n    return false;\n  }\n  let hasLocalizedValues = false;\n  traverse(data, value => {\n    if (isLocalizedField(value)) {\n      hasLocalizedValues = true;\n      return;\n    }\n  });\n  return hasLocalizedValues;\n}\nfunction extractLocalizedValues(data: Record<string, any>, locale: string) {\n  if (!data || !Object.getOwnPropertyNames(data).length) {\n    return {};\n  }\n  traverse(data, (value, update) => {\n    if (isLocalizedField(value)) {\n      update(value[locale] ?? undefined);\n    }\n  });\n  return data;\n}\nexport function resolveLocalizedValues(block: BuilderBlock, locale: string | undefined) {\n  if (block.component?.options && containsLocalizedValues(block.component?.options)) {\n    if (!locale) {\n      console.warn('[Builder.io] In order to use localized fields in Builder, you must pass a locale prop to the BuilderComponent or to options object while fetching the content to resolve localized fields. Learn more: https://www.builder.io/c/docs/localization-inline#targeting-and-inline-localization');\n    }\n    block.component.options = extractLocalizedValues(block.component.options, locale ?? 'Default');\n  }\n  return block;\n}","/**\n * We need to serialize values to a string in case there are Proxy values, as is the case with SolidJS etc.\n */\nexport const fastClone = <T extends object,>(obj: T): T => JSON.parse(JSON.stringify(obj))","/**\n * Minimal implementation of lodash's _.set\n * https://lodash.com/docs/4.17.15#set\n *\n * See ./set.test.ts for usage examples\n */\nexport const set = (obj: any, _path: string | string[], value: any) => {\n  if (Object(obj) !== obj) {\n    return obj;\n  }\n  const path: string[] = Array.isArray(_path) ? _path : (_path.toString().match(/[^.[\\]]+/g) as string[]);\n  path.slice(0, -1).reduce((a, c, i) => Object(a[c]) === a[c] ? a[c] : a[c] = Math.abs(Number(path[i + 1])) >> 0 === +path[i + 1] ? [] : {}, obj)[path[path.length - 1]] = value;\n  return obj;\n}","import type { BuilderBlock } from '../types/builder-block';\n\n// Noope way for targets to make modifications to the block object if/as needed\nexport function transformBlock(block: BuilderBlock): BuilderBlock {\n  return block;\n}","import { TARGET } from '../constants/target';\nimport type { BuilderContextInterface } from '../context/types';\nimport { omit } from '../helpers/omit';\nimport type { BuilderBlock } from '../types/builder-block';\nimport { evaluate } from './evaluate/index';\nimport { resolveLocalizedValues } from './extract-localized-values';\nimport { fastClone } from './fast-clone';\nimport { set } from './set';\nimport { transformBlock } from './transform-block';\n\n// Deep clone a block but without cloning any child blocks\nexport function deepCloneWithConditions<T = any>(obj: T): T {\n  if (obj === null || typeof obj !== 'object') {\n    return obj;\n  }\n  if (Array.isArray(obj)) {\n    return (obj.map((item: any) => deepCloneWithConditions(item)) as T);\n  }\n  if ((obj as any)['@type'] === '@builder.io/sdk:Element') {\n    return obj;\n  }\n  const clonedObj: any = {};\n  for (const key in obj) {\n    if (key !== 'meta' && Object.prototype.hasOwnProperty.call(obj, key)) {\n      clonedObj[key] = deepCloneWithConditions(obj[key]);\n    }\n  }\n  return clonedObj;\n}\nconst IS_SDK_WITHOUT_CACHED_PROCESSED_BLOCK = ['svelte', 'vue', 'angular', 'qwik', 'solid'].includes(TARGET);\nconst getCopy = (block: BuilderBlock): BuilderBlock => {\n  if (IS_SDK_WITHOUT_CACHED_PROCESSED_BLOCK) {\n    const copy = fastClone(block);\n    const copied = {\n      ...copy,\n      properties: {\n        ...copy.properties\n      },\n      actions: {\n        ...copy.actions\n      }\n    };\n    return copied;\n  } else {\n    const copy = (deepCloneWithConditions(omit(block, 'children', 'meta')) as BuilderBlock);\n    return {\n      ...copy,\n      properties: {\n        ...copy.properties\n      },\n      actions: {\n        ...copy.actions\n      },\n      children: block.children,\n      meta: block.meta\n    };\n  }\n};\nconst evaluateBindings = ({\n  block,\n  context,\n  localState,\n  rootState,\n  rootSetState\n}: {\n  block: BuilderBlock;\n} & Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'>): BuilderBlock => {\n  if (!block.bindings) {\n    return block;\n  }\n  const copied = getCopy(block);\n  for (const binding in block.bindings) {\n    const expression = block.bindings[binding];\n    const value = evaluate({\n      code: expression,\n      localState,\n      rootState,\n      rootSetState,\n      context\n    });\n    set(copied, binding, value);\n  }\n  return copied;\n};\nexport function getProcessedBlock({\n  block,\n  context,\n  localState,\n  rootState,\n  rootSetState\n}: {\n  block: BuilderBlock;\n} & Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'>): BuilderBlock {\n  let transformedBlock = transformBlock(block);\n  transformedBlock = evaluateBindings({\n    block: transformedBlock,\n    localState,\n    rootState,\n    rootSetState,\n    context\n  });\n  transformedBlock = resolveLocalizedValues(transformedBlock, (rootState.locale as string | undefined));\n  return transformedBlock;\n}","import { CommonModule } from '@angular/common';\n// fails because type imports cannot be injected\n// eslint-disable-next-line @typescript-eslint/consistent-type-imports\nimport {\n  Component,\n  ElementRef,\n  Renderer2,\n  input,\n  viewChild,\n} from '@angular/core';\n\n@Component({\n  selector: 'dynamic-div, DynamicDiv',\n  template: `\n    <div\n      #v\n      (click)=\"onClick() && onClick()($event)\"\n      (mouseenter)=\"onMouseEnter() && onMouseEnter()($event)\"\n    >\n      <ng-content></ng-content>\n    </div>\n  `,\n  standalone: true,\n  imports: [CommonModule],\n  styles: [\n    ':host { display: contents; }',\n    '.this-blocks-wrapper { display: flex; flex-direction: column; align-items: stretch; }',\n  ],\n})\nexport default class DynamicDiv {\n  attributes = input<any>(undefined);\n  actionAttributes = input<any>(undefined);\n  BlockWrapperProps = input<any>(undefined);\n  builderPath = input<any>(undefined, { alias: 'builder-path' });\n  builderParentId = input<any>(undefined, { alias: 'builder-parent-id' });\n  BlocksWrapperProps = input<any>(undefined);\n  contentWrapperProps = input<any>(undefined);\n  builderModel = input<any>(undefined, { alias: 'builder-model' });\n  builderContentId = input<any>(undefined, { alias: 'builder-content-id' });\n  ref = input<any>(undefined);\n  classProp = input<any>(undefined, { alias: 'class' });\n  style = input<any>(undefined);\n  showContentProps = input<any>(undefined);\n  onClick = input<any>(undefined);\n  onMouseEnter = input<any>(undefined);\n  onKeyPress = input<any>(undefined);\n  hidden = input<any>(undefined);\n  ariaHidden = input<any>(undefined, { alias: 'aria-hidden' });\n  className = input<any>(undefined);\n\n  v = viewChild<ElementRef>('v');\n\n  private _listenerFns = new Map<string, () => void>();\n\n  constructor(private renderer: Renderer2) {}\n\n  ngAfterViewInit() {\n    const el = this.v()?.nativeElement;\n    if (!el) {\n      return;\n    }\n    this.setAttributes(el, this.attributes());\n    this.setAttributes(el, this.actionAttributes());\n    this.setAttributes(el, this.showContentProps());\n    this.setAttribute(\n      el,\n      'class',\n      [this.classProp() ?? '', this.className() ?? ''].join(' ').trim()\n    );\n    this.handleStyleProp(el, this.style());\n    this.setAttribute(el, 'builder-parent-id', this.builderParentId());\n    this.setAttribute(el, 'builder-path', this.builderPath());\n    this.setAttribute(el, 'builder-model', this.builderModel());\n    this.setAttribute(el, 'builder-content-id', this.builderContentId());\n    this.setAttribute(el, 'hidden', this.hidden());\n    this.setAttribute(el, 'aria-hidden', this.ariaHidden());\n  }\n\n  ngOnChanges(changes) {\n    const el = this.v()?.nativeElement;\n    if (!el) {\n      return;\n    }\n\n    if (Object.keys(changes).length === 0) {\n      return;\n    }\n\n    if (\n      changes.attributes &&\n      JSON.stringify(changes.attributes.currentValue) !==\n        JSON.stringify(changes.attributes.previousValue)\n    ) {\n      this.setAttributes(\n        el,\n        this.attributes(),\n        changes.attributes.currentValue\n      );\n    }\n    if (\n      changes.actionAttributes &&\n      Object.keys(changes.actionAttributes.currentValue).length > 0\n    ) {\n      this.setAttributes(\n        el,\n        this.actionAttributes(),\n        changes.actionAttributes.currentValue\n      );\n    }\n    if (changes.showContentProps) {\n      this.setAttributes(\n        el,\n        this.showContentProps(),\n        changes.showContentProps.currentValue\n      );\n    }\n    if (changes.classProp || changes.className) {\n      this.setAttribute(\n        el,\n        'class',\n        [this.classProp() ?? '', this.className() ?? ''].join(' ').trim()\n      );\n    }\n    if (changes.style) this.handleStyleProp(el, this.style());\n    if (changes.builderParentId)\n      this.setAttribute(el, 'builder-parent-id', this.builderParentId());\n    if (changes.builderPath)\n      this.setAttribute(el, 'builder-path', this.builderPath());\n    if (changes.builderModel)\n      this.setAttribute(el, 'builder-model', this.builderModel());\n    if (changes.builderContentId)\n      this.setAttribute(el, 'builder-content-id', this.builderContentId());\n    if (changes.hidden) this.setAttribute(el, 'hidden', this.hidden());\n    if (changes.ariaHidden)\n      this.setAttribute(el, 'aria-hidden', this.ariaHidden());\n  }\n\n  private setAttributes(el: any, value: any, changes?: any) {\n    if (!el) return;\n\n    const target = changes ? changes : value;\n\n    if (!target) return;\n\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith('on')) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace('on', '').toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key, target[key] ?? '');\n      }\n    });\n  }\n\n  private setAttribute(el: HTMLElement, key: string, value: any) {\n    if (value) {\n      this.renderer.setAttribute(el, key, value);\n    }\n  }\n\n  private handleStyleProp(el: HTMLElement, style: any) {\n    if (!style) return;\n    if (typeof style === 'object') {\n      Object.entries(style).forEach(([key, value]) => {\n        this.renderer.setStyle(el, key, value);\n      });\n    } else {\n      this.renderer.setAttribute(el, 'style', style);\n    }\n  }\n\n  ngOnDestroy() {\n    this._listenerFns.forEach((fn) => fn());\n  }\n}\n","export const camelToKebabCase = (str?: string) => str ? str.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, '$1-$2').toLowerCase() : ''","import { TARGET } from '../../constants/target';\nimport { camelToKebabCase } from '../../functions/camel-to-kebab-case';\nimport type { BuilderAnimation } from '../../types/builder-block';\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction throttle(func: Function, wait: number, options: any = {}) {\n  let context: any;\n  let args: any;\n  let result: any;\n  let timeout = (null as any);\n  let previous = 0;\n  const later = function () {\n    previous = options.leading === false ? 0 : Date.now();\n    timeout = null;\n    result = func.apply(context, args);\n    if (!timeout) context = args = null;\n  };\n  return function (this: any) {\n    const now = Date.now();\n    if (!previous && options.leading === false) previous = now;\n    const remaining = wait - (now - previous);\n    // eslint-disable-next-line @typescript-eslint/no-this-alias\n    context = this;\n    // eslint-disable-next-line prefer-rest-params\n    args = arguments;\n    if (remaining <= 0 || remaining > wait) {\n      if (timeout) {\n        clearTimeout(timeout);\n        timeout = null;\n      }\n      previous = now;\n      result = func.apply(context, args);\n      if (!timeout) context = args = null;\n    } else if (!timeout && options.trailing !== false) {\n      timeout = setTimeout(later, remaining);\n    }\n    return result;\n  };\n}\nfunction assign(target: object, ..._args: any[]) {\n  const to = Object(target);\n  for (let index = 1; index < arguments.length; index++) {\n    // eslint-disable-next-line prefer-rest-params\n    const nextSource = arguments[index];\n    if (nextSource != null) {\n      // Skip over if undefined or null\n      for (const nextKey in nextSource) {\n        // Avoid bugs when hasOwnProperty is shadowed\n        if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {\n          to[nextKey] = nextSource[nextKey];\n        }\n      }\n    }\n  }\n  return to;\n}\nexport function bindAnimations(animations: BuilderAnimation[]) {\n  if (TARGET === 'reactNative') {\n    return;\n  }\n  for (const animation of animations) {\n    switch (animation.trigger) {\n      case 'pageLoad':\n        triggerAnimation(animation);\n        break;\n      case 'scrollInView':\n        bindScrollInViewAnimation(animation);\n        break;\n    }\n  }\n}\nfunction warnElementNotPresent(id: string) {\n  console.warn(`Cannot animate element: element with ID ${id} not found!`);\n}\nfunction augmentAnimation(animation: BuilderAnimation, element: HTMLElement) {\n  const stylesUsed = getAllStylesUsed(animation);\n  const computedStyle: any = getComputedStyle(element);\n  // const computedStyle = getComputedStyle(element);\n  // // FIXME: this will break if original load is in one reponsive size then resize to another hmmm\n  // Need to use transform instead of left since left can change on screen sizes\n  const firstStyles = animation.steps[0].styles;\n  const lastStyles = animation.steps[animation.steps.length - 1]!.styles;\n  const bothStyles = [firstStyles, lastStyles];\n\n  // FIXME: this won't work as expected for augmented animations - may need the editor itself to manage this\n  for (const styles of bothStyles) {\n    for (const style of stylesUsed) {\n      if (!(style in styles)) {\n        styles[(style as any)] = computedStyle[style];\n      }\n    }\n  }\n}\nfunction getAllStylesUsed(animation: BuilderAnimation) {\n  const properties: (keyof CSSStyleDeclaration)[] = [];\n  for (const step of animation.steps) {\n    for (const key in step.styles) {\n      if (properties.indexOf((key as any)) === -1) {\n        properties.push((key as any));\n      }\n    }\n  }\n  return properties;\n}\nexport function triggerAnimation(animation: BuilderAnimation) {\n  // TODO: do for ALL elements\n  const elements = (Array.prototype.slice.call(document.getElementsByClassName(animation.elementId || animation.id || '')) as HTMLElement[]);\n  if (!elements.length) {\n    warnElementNotPresent(animation.elementId || animation.id || '');\n    return;\n  }\n  Array.from(elements).forEach(element => {\n    augmentAnimation(animation, element);\n    // TODO: do this properly, may have other animations of different properties\n\n    // TODO: only override the properties\n    // TODO: if there is an entrance and hover animation, the transition duration will get effed\n    // element.setAttribute('style', '');\n\n    // const styledUsed = this.getAllStylesUsed(animation);\n    element.style.transition = 'none';\n    element.style.transitionDelay = '0';\n    assign(element.style, animation.steps[0].styles);\n    // TODO: queue/batch these timeouts\n    // TODO: only include properties explicitly set in the animation\n    // using Object.keys(styles)\n    setTimeout(() => {\n      element.style.transition = `all ${animation.duration}s ${camelToKebabCase(animation.easing)}`;\n      if (animation.delay) {\n        element.style.transitionDelay = animation.delay + 's';\n      }\n      assign(element.style, animation.steps[1].styles);\n      // TODO: maybe remove/reset transitoin property after animation duration\n\n      // TODO: queue timers\n      setTimeout(() => {\n        // TODO: what if has other transition (reset back to what it was)\n        element.style.transition = '';\n        element.style.transitionDelay = '';\n      }, (animation.delay || 0) * 1000 + animation.duration * 1000 + 100);\n    });\n  });\n}\n\n// TODO: unbind on element remove\nexport function bindScrollInViewAnimation(animation: BuilderAnimation) {\n  // TODO: apply to ALL matching elements\n  const elements = (Array.prototype.slice.call(document.getElementsByClassName(animation.elementId || animation.id || '')) as HTMLElement[]);\n  if (!elements.length) {\n    warnElementNotPresent(animation.elementId || animation.id || '');\n    return;\n  }\n\n  // TODO: if server side rendered and scrolled into view don't animate...\n  Array.from(elements).forEach(element => {\n    augmentAnimation(animation, element);\n    let triggered = false;\n    let pendingAnimation = false;\n    function immediateOnScroll() {\n      if (!triggered && isScrolledIntoView(element)) {\n        triggered = true;\n        pendingAnimation = true;\n        setTimeout(() => {\n          assign(element!.style, animation.steps[1].styles);\n          if (!animation.repeat) {\n            document.removeEventListener('scroll', onScroll);\n          }\n          setTimeout(() => {\n            pendingAnimation = false;\n            if (!animation.repeat) {\n              element.style.transition = '';\n              element.style.transitionDelay = '';\n            }\n          }, (animation.duration + (animation.delay || 0)) * 1000 + 100);\n        });\n      } else if (animation.repeat && triggered && !pendingAnimation && !isScrolledIntoView(element)) {\n        // we want to repeat the animation every time the the element is out of view and back again\n        triggered = false;\n        assign(element!.style, animation.steps[0].styles);\n      }\n    }\n\n    // TODO: roll all of these in one for more efficiency of checking all the rects\n    const onScroll = throttle(immediateOnScroll, 200, {\n      leading: false\n    });\n\n    // TODO: fully in view or partially\n    function isScrolledIntoView(elem: HTMLElement) {\n      const rect = elem.getBoundingClientRect();\n      const windowHeight = window.innerHeight;\n      const thresholdPercent = (animation.thresholdPercent || 0) / 100;\n      const threshold = thresholdPercent * windowHeight;\n\n      // TODO: partial in view? or what if element is larger than screen itself\n      return rect.bottom > threshold && rect.top < windowHeight - threshold // Element is peeking top or bottom\n      // (rect.top > 0 && rect.bottom < window.innerHeight) || // element fits within the screen and is fully on screen (not hanging off at all)\n      // (rect.top < 0 && rect.bottom > window.innerHeight) // element is larger than the screen and hangs over the top and bottom\n      ;\n    }\n    const defaultState = animation.steps[0].styles;\n    function attachDefaultState() {\n      assign(element!.style, defaultState);\n    }\n    attachDefaultState();\n\n    // TODO: queue/batch these timeouts!\n    setTimeout(() => {\n      element.style.transition = `all ${animation.duration}s ${camelToKebabCase(animation.easing)}`;\n      if (animation.delay) {\n        element.style.transitionDelay = animation.delay + 's';\n      }\n    });\n\n    // TODO: one listener for everything\n    document.addEventListener('scroll', onScroll, ({\n      capture: true,\n      passive: true\n    } as any));\n\n    // Do an initial check\n    immediateOnScroll();\n  });\n}","const TEXT_STYLE_KEYS = ['color', 'whiteSpace', 'direction', 'hyphens', 'overflowWrap'];\n\n/**\n * Check if the key represent a CSS style property that applies to text\n * See MDN docs for refrence of what properties apply to text.\n * https://developer.mozilla.org/en-US/docs/Learn/CSS/Styling_text/Fundamentals#summary\n */\nconst isTextStyle = (key: string) => {\n  return TEXT_STYLE_KEYS.includes(key) || key.startsWith('font') || key.startsWith('text') || key.startsWith('letter') || key.startsWith('line') || key.startsWith('word') || key.startsWith('writing');\n};\n\n/**\n * Extract styles that apply to text from a style object.\n */\nexport const extractTextStyles = (styles: Partial<CSSStyleDeclaration>) => {\n  const textStyles: Partial<CSSStyleDeclaration> = {};\n  // eslint-disable-next-line @typescript-eslint/no-explicit-any\n  Object.entries(styles).forEach(([key, value]: [any, any]) => {\n    if (isTextStyle(key)) {\n      textStyles[key] = value;\n    }\n  });\n  return textStyles;\n}","import { camelToKebabCase } from '../functions/camel-to-kebab-case';\nimport { checkIsDefined } from './nullable';\nexport const convertStyleMapToCSSArray = (style: Partial<CSSStyleDeclaration>): string[] => {\n  const cssProps = Object.entries(style).map(([key, value]) => {\n    if (typeof value === 'string') {\n      return `${camelToKebabCase(key)}: ${value};`;\n    } else {\n      return undefined;\n    }\n  });\n  return cssProps.filter(checkIsDefined);\n};\nexport const convertStyleMapToCSS = (style: Partial<CSSStyleDeclaration>): string => convertStyleMapToCSSArray(style).join('\\n');\nexport const createCssClass = ({\n  mediaQuery,\n  className,\n  styles\n}: {\n  mediaQuery?: string;\n  className: string;\n  styles: Partial<CSSStyleDeclaration>;\n}) => {\n  const cssClass = `.${className} {\n    ${convertStyleMapToCSS(styles)}\n  }`;\n  if (mediaQuery) {\n    return `${mediaQuery} {\n      ${cssClass}\n    }`;\n  } else {\n    return cssClass;\n  }\n}","import type { BuilderContextInterface } from '../context/types';\nimport type { BuilderBlock } from '../types/builder-block';\nexport function transformStyleProperty({\n  style\n}: {\n  style: Partial<CSSStyleDeclaration>;\n  context: BuilderContextInterface;\n  block: BuilderBlock;\n}) {\n  return style;\n}","import { TARGET } from '../constants/target';\nimport type { BuilderContextInterface } from '../context/types';\nimport { convertStyleMapToCSSArray } from '../helpers/css';\nimport type { BuilderBlock } from '../types/builder-block';\nimport { transformStyleProperty } from './transform-style-property';\nexport const getStyle = ({\n  block,\n  context\n}: {\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n}) => {\n  return mapStyleObjToStrIfNeeded(transformStyleProperty({\n    style: block.style || {},\n    context,\n    block\n  }));\n};\n\n/**\n * Svelte does not support style attribute as an object so we need to flatten it.\n *\n * Additionally, Svelte, Vue and other frameworks use kebab-case styles, so we need to convert them.\n */\nexport function mapStyleObjToStrIfNeeded(style: Partial<CSSStyleDeclaration>): string | Partial<CSSStyleDeclaration> {\n  switch (TARGET) {\n    case 'svelte':\n    case 'vue':\n    case 'solid':\n    case 'angular':\n      return convertStyleMapToCSSArray(style).join(' ');\n    case 'qwik':\n    case 'reactNative':\n    case 'react':\n    case 'rsc':\n      return style;\n  }\n}","import type { BuilderContextInterface, RegisteredComponent, RegisteredComponents } from '../../context/types';\nimport { evaluate } from '../../functions/evaluate/index';\nimport { extractTextStyles } from '../../functions/extract-text-styles';\nimport { getStyle } from '../../functions/get-style';\nimport type { BuilderBlock } from '../../types/builder-block';\nimport type { RepeatData } from './types';\nconst checkIsComponentRestricted = (component: RegisteredComponent | null | undefined, model: string) => {\n  if (!component) return true;\n  if (!model) return false;\n  return component.models && component.models.length > 0 && !component.models.includes(model);\n};\nexport const getComponent = ({\n  block,\n  registeredComponents,\n  model\n}: {\n  block: BuilderBlock;\n  registeredComponents: RegisteredComponents;\n  model: string;\n}) => {\n  const componentName = block.component?.name;\n  if (!componentName) {\n    return null;\n  }\n  const ref = registeredComponents[componentName];\n  if (!ref || checkIsComponentRestricted(ref, model)) {\n    // TODO: Public doc page with more info about this message\n    console.warn(`\n      Could not find a registered component named \"${componentName}\". \n      If you registered it, is the file that registered it imported by the file that needs to render it?`);\n    return undefined;\n  } else {\n    return ref;\n  }\n};\nexport const getRepeatItemData = ({\n  block,\n  context\n}: {\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n}): RepeatData[] | undefined => {\n  /**\n   * we don't use `state.processedBlock` here because the processing done within its logic includes evaluating the block's bindings,\n   * which will not work if there is a repeat.\n   */\n  const {\n    repeat,\n    ...blockWithoutRepeat\n  } = block;\n  if (!repeat?.collection) {\n    return undefined;\n  }\n  const itemsArray = evaluate({\n    code: repeat.collection,\n    localState: context.localState,\n    rootState: context.rootState,\n    rootSetState: context.rootSetState,\n    context: context.context\n  });\n  if (!Array.isArray(itemsArray)) {\n    return undefined;\n  }\n  const collectionName = repeat.collection.split('.').pop();\n  const itemNameToUse = repeat.itemName || (collectionName ? collectionName + 'Item' : 'item');\n  const repeatArray = itemsArray.map<RepeatData>((item, index) => ({\n    context: {\n      ...context,\n      localState: {\n        ...context.localState,\n        $index: index,\n        $item: item,\n        [itemNameToUse]: item,\n        [`$${itemNameToUse}Index`]: index\n      }\n    },\n    block: blockWithoutRepeat\n  }));\n  return repeatArray;\n};\nexport const getInheritedStyles = ({\n  block,\n  context\n}: {\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n}) => {\n  const style = getStyle({\n    block,\n    context\n  });\n  if (!style) {\n    return {};\n  }\n  return extractTextStyles(style);\n};\nexport const provideLinkComponent = (block: RegisteredComponent | null | undefined, linkComponent: any) => {\n  if (block?.shouldReceiveBuilderProps?.builderLinkComponent) return {\n    builderLinkComponent: linkComponent\n  };\n  return {};\n};\nexport const provideRegisteredComponents = (block: RegisteredComponent | null | undefined, registeredComponents: RegisteredComponents, model: string) => {\n  if (block?.shouldReceiveBuilderProps?.builderComponents) {\n    const filteredRegisteredComponents = Object.fromEntries(Object.entries(registeredComponents).filter(([_, component]) => {\n      return !checkIsComponentRestricted(component, model);\n    }));\n    return {\n      builderComponents: filteredRegisteredComponents\n    };\n  }\n  return {};\n};\nexport const provideBuilderBlock = (block: RegisteredComponent | null | undefined, builderBlock: BuilderBlock) => {\n  if (block?.shouldReceiveBuilderProps?.builderBlock) return {\n    builderBlock\n  };\n  return {};\n};\nexport const provideBuilderContext = (block: RegisteredComponent | null | undefined, context: BuilderContextInterface) => {\n  if (block?.shouldReceiveBuilderProps?.builderContext) return {\n    builderContext: context\n  };\n  return {};\n};\nexport const generateKey = (index: number) => {\n  //This does not handle the case in Qwik\n  return index.toString();\n}","function capitalizeFirstLetter(string: string) {\n  return string.charAt(0).toUpperCase() + string.slice(1);\n}\nexport const getEventHandlerName = (key: string) => `on${capitalizeFirstLetter(key)}`","import type { BuilderContextInterface } from '../context/types';\nimport type { BuilderBlock } from '../types/builder-block';\nimport type { TrackingContext } from './evaluate/helpers';\nimport { evaluate } from './evaluate/index';\ntype Options = {\n  block: BuilderBlock;\n  trackingContext?: TrackingContext;\n} & Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'>;\ntype EventHandler = (event: Event) => any;\nexport const createEventHandler = (value: string, options: Options): EventHandler => event => evaluate({\n  code: value,\n  context: options.context,\n  localState: options.localState,\n  rootState: options.rootState,\n  rootSetState: options.rootSetState,\n  event,\n  isExpression: false,\n  trackingContext: options.trackingContext\n})","import { TARGET } from '../constants/target';\nimport type { BuilderContextInterface } from '../context/types';\nimport type { BuilderBlock } from '../types/builder-block';\nimport type { TrackingContext } from './evaluate/helpers';\nimport { getEventHandlerName } from './event-handler-name';\nimport { createEventHandler } from './get-block-actions-handler';\ntype Actions = {\n  [index: string]: (event: Event) => any;\n};\nexport function getBlockActions(options: {\n  block: BuilderBlock;\n  stripPrefix?: boolean;\n  trackingContext?: TrackingContext;\n} & Pick<BuilderContextInterface, 'localState' | 'context' | 'rootState' | 'rootSetState'>): Actions {\n  const obj: Actions = {};\n  const optionActions = options.block.actions ?? {};\n  for (const key in optionActions) {\n    // eslint-disable-next-line no-prototype-builtins\n    if (!optionActions.hasOwnProperty(key)) {\n      continue;\n    }\n    const value = optionActions[key];\n    let eventHandlerName = getEventHandlerName(key);\n    if (options.stripPrefix) {\n      switch (TARGET) {\n        case 'vue':\n          eventHandlerName = eventHandlerName.replace('v-on:', '');\n          break;\n        case 'svelte':\n          eventHandlerName = eventHandlerName.replace('on:', '');\n          break;\n      }\n    }\n    obj[eventHandlerName] = createEventHandler(value, options);\n  }\n  return obj;\n}","import type { BuilderContextInterface } from '../context/types';\nimport type { BuilderBlock } from '../types/builder-block';\nexport function transformBlockProperties<T>({\n  properties\n}: {\n  properties: T;\n  context: BuilderContextInterface;\n  block: BuilderBlock;\n}) {\n  return properties;\n}","import type { BuilderContextInterface } from '../context/types';\nimport type { BuilderBlock } from '../types/builder-block';\nimport { getClassPropName } from './get-class-prop-name';\nimport { getStyle } from './get-style';\nimport { transformBlockProperties } from './transform-block-properties';\nconst extractRelevantRootBlockProperties = (block: BuilderBlock) => {\n  // currently we are only spreading the `href` property\n  // TO-DO: potentially spread all properties from block, but only if they are not already defined by BuilderBlock\n\n  // const {\n  //   '@type': _type,\n  //   '@version': _version,\n  //   id: _id,\n  //   tagName: _tagName,\n  //   layerName: _layerName,\n  //   groupLocked: _groupLocked,\n  //   layerLocked: _layerLocked,\n  //   class: _class,\n  //   children: _children,\n  //   responsiveStyles: _responsiveStyles,\n  //   component: _component,\n  //   bindings: _bindings,\n  //   meta: _meta,\n  //   actions: _actions,\n  //   properties: _properties,\n  //   code: _code,\n  //   repeat: _repeat,\n  //   animations: _animations,\n  //   style: _style,\n  //   hide: _hide,\n  //   show: _show,\n  //   // anything set by dynamic bindings outside of predefined `BuilderBlock` properties\n  //   ...remainingBlockProperties\n  // } = block;\n\n  return {\n    href: (block as any).href\n  };\n};\nexport function getBlockProperties({\n  block,\n  context\n}: {\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n}) {\n  const properties = {\n    ...extractRelevantRootBlockProperties(block),\n    ...block.properties,\n    'builder-id': block.id,\n    style: getStyle({\n      block,\n      context\n    }),\n    [getClassPropName()]: [block.id, 'builder-block', block.class, block.properties?.class].filter(Boolean).join(' ')\n  };\n  return transformBlockProperties({\n    properties,\n    context,\n    block\n  });\n}","import { Component, input, effect, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ntype BlockWrapperProps = {\n  Wrapper: string;\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n  children?: any;\n};\n\n/**\n * This component renders a block's wrapper HTML element (from the block's `tagName` property).\n */\n\nimport type { BuilderContextInterface } from \"../../../context/types\";\nimport { getBlockActions } from \"../../../functions/get-block-actions\";\nimport { getBlockProperties } from \"../../../functions/get-block-properties\";\nimport type { BuilderBlock } from \"../../../types/builder-block\";\nimport DynamicRenderer from \"../../dynamic-renderer/dynamic-renderer\";\n\n@Component({\n  selector: \"block-wrapper\",\n  standalone: true,\n  imports: [CommonModule, DynamicRenderer],\n  template: `\n    <dynamic-renderer\n      [TagName]=\"Wrapper()\"\n      [attributes]=\"getBlockProperties({\n          block: block(),\n          context: context()\n        })\"\n      [actionAttributes]=\"getBlockActions({\n          block: block(),\n          rootState: context().rootState,\n          rootSetState: context().rootSetState,\n          localState: context().localState,\n          context: context().context,\n          stripPrefix: true,\n          trackingContext: {\n            apiKey: context().apiKey,\n            canTrack: context().canTrack ?? true,\n            contentId: context().content?.id,\n            variationId: context().content?.testVariationId\n          }\n        })\"\n    >\n      <ng-content></ng-content>\n    </dynamic-renderer>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class BlockWrapper {\n  protected readonly getBlockProperties = getBlockProperties;\n  protected readonly getBlockActions = getBlockActions;\n\n  Wrapper: InputSignal<BlockWrapperProps[\"Wrapper\"]> =\n    input<BlockWrapperProps[\"Wrapper\"]>();\n  block: InputSignal<BlockWrapperProps[\"block\"]> =\n    input<BlockWrapperProps[\"block\"]>();\n  context: InputSignal<BlockWrapperProps[\"context\"]> =\n    input<BlockWrapperProps[\"context\"]>();\n\n  constructor() {}\n}\n","import type { Search } from '../helpers/search/search';\nimport { getSearchString } from '../helpers/search/search';\nimport { isBrowser } from './is-browser';\n\n/**\n * Checks the current URL's search parameters to see if it is attempting to\n * preview Builder Content.\n *\n * When called on the client, it uses `window.location.search`.\n * When called on the server (SSR), it requires a `search` argument.\n *\n * @param search - The search parameters to check. Can be a URL string (containing the search parameters), `URLSearchParams`, or a key-value object containing the search parameters.\n * @returns `true` if the current page is being previewed, `false` otherwise.\n */\nexport function isPreviewing(search?: Search) {\n  const searchToUse = search || (isBrowser() ? window.location.search : undefined);\n\n  /**\n   * If this function is called on the server without an explicit `search` argument,\n   * then it can't check if the user is previewing, and will return `false`.\n   */\n  if (!searchToUse) {\n    return false;\n  }\n  const normalizedSearch = getSearchString(searchToUse);\n  return Boolean(normalizedSearch.indexOf('builder.preview=') !== -1);\n}","import type { ComponentInfo } from '../types/components';\nexport const createRegisterComponentMessage = (info: ComponentInfo) => ({\n  type: 'builder.registerComponent',\n  data: serializeIncludingFunctions(info)\n});\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst serializeFn = (fnValue: Function) => {\n  const fnStr = fnValue.toString().trim();\n\n  // we need to account for a few different fn syntaxes:\n  // 1. `function name(args) => {code}`\n  // 2. `name(args) => {code}`\n  // 3. `(args) => {}`\n  // 4. `args => {}`\n  // 5. `async function(args) {code}`\n  // 6. `async (args) => {}`\n  // 7. `async args => {}`\n  const isArrowWithoutParens = /^[a-zA-Z0-9_]+\\s*=>/i.test(fnStr);\n  const appendFunction = !fnStr.startsWith('function') && !fnStr.startsWith('async') && !fnStr.startsWith('(') && !isArrowWithoutParens;\n  return `return (${appendFunction ? 'function ' : ''}${fnStr}).apply(this, arguments)`;\n};\nexport function serializeIncludingFunctions(info: ComponentInfo) {\n  return JSON.parse(JSON.stringify(info, (key, value) => {\n    if (typeof value === 'function') {\n      return serializeFn(value);\n    }\n    return value;\n  }));\n}","import type { BuilderBlock } from '../types/builder-block';\nimport type { DeepPartial } from '../types/deep-partial';\nimport type { Input } from '../types/input';\nimport { isBrowser } from './is-browser';\nimport { serializeIncludingFunctions } from './register-component';\nexport interface Action {\n  name: string;\n  inputs?: readonly Input[];\n  returnType?: Input;\n  action: (options: Record<string, any>) => string;\n  /**\n   * Is an action for expression (e.g. calculating a binding like a formula\n   * to fill a value based on locale) or a function (e.g. something to trigger\n   * on an event like add to cart) or either (e.g. a custom code block)\n   */\n  kind: 'expression' | 'function' | 'any';\n  /**\n   * Globally unique ID for an action, e.g. \"@builder.io:setState\"\n   */\n  id: string;\n}\nexport interface InsertMenuItem {\n  name: string;\n  icon?: string;\n  item: DeepPartial<BuilderBlock>;\n}\nexport interface InsertMenuConfig {\n  name: string;\n  priority?: number;\n  persist?: boolean;\n  advanced?: boolean;\n  items: InsertMenuItem[];\n}\nconst registry: {\n  [key: string]: any[];\n} = {};\nexport function register(type: 'insertMenu', info: InsertMenuConfig): void;\nexport function register(type: string, info: any): void;\nexport function register(type: string, info: any) {\n  if (type === 'plugin') {\n    info = serializeIncludingFunctions(info);\n  }\n  let typeList = registry[type];\n  if (!typeList) {\n    typeList = registry[type] = [];\n  }\n  typeList.push(info);\n  if (isBrowser()) {\n    const message = {\n      type: 'builder.register',\n      data: {\n        type,\n        info\n      }\n    };\n    try {\n      parent.postMessage(message, '*');\n      if (parent !== window) {\n        window.postMessage(message, '*');\n      }\n    } catch (err) {\n      console.debug('Could not postmessage', err);\n    }\n  }\n}\nexport function registerAction(action: Action) {\n  if (isBrowser()) {\n    const actionClone = JSON.parse(JSON.stringify(action));\n    if (action.action) {\n      actionClone.action = action.action.toString();\n    }\n    window.parent?.postMessage({\n      type: 'builder.registerAction',\n      data: actionClone\n    }, '*');\n  }\n}","import { isBrowser } from './is-browser';\nconst settings: Settings = {};\nexport type Settings = {\n  customInsertMenu?: boolean;\n};\nexport function setEditorSettings(newSettings: Settings) {\n  if (isBrowser()) {\n    Object.assign(settings, newSettings);\n    const message = {\n      type: 'builder.settingsChange',\n      data: settings\n    };\n    parent.postMessage(message, '*');\n  }\n}","import type { QueryObject } from '../../helpers/search/search';\nimport { normalizeSearchParams } from '../../helpers/search/search';\nimport { isBrowser } from '../is-browser';\nconst BUILDER_SEARCHPARAMS_PREFIX = 'builder.';\nconst BUILDER_OPTIONS_PREFIX = 'options.';\n\n/**\n * Receives a `URLSearchParams` object or a regular query object, and returns\n * the subset of query params that are relevant to the Builder SDK.\n *\n * Outputs a key-value object to be passed to `fetchOneEntry` or `fetchEntries`\n * functions as the `options` argument.\n *\n * NOTE: This function is generally not needed. Instead, it is recommended to use `isPreviewing()`\n * to check if the current page requires previewed content.\n *\n * @returns\n */\nexport const getBuilderSearchParams = (_options: QueryObject | URLSearchParams | undefined) => {\n  if (!_options) {\n    return {};\n  }\n  const options = normalizeSearchParams(_options);\n  const newOptions: QueryObject = {};\n  Object.keys(options).forEach(key => {\n    if (key.startsWith(BUILDER_SEARCHPARAMS_PREFIX)) {\n      const trimmedKey = key.replace(BUILDER_SEARCHPARAMS_PREFIX, '').replace(BUILDER_OPTIONS_PREFIX, '');\n      newOptions[trimmedKey] = options[key];\n    }\n  });\n  return newOptions;\n};\nexport const getBuilderSearchParamsFromWindow = () => {\n  if (!isBrowser()) {\n    return {};\n  }\n  const searchParams = new URLSearchParams(window.location.search);\n  return getBuilderSearchParams(searchParams);\n}","const DEFAULT_TRUSTED_HOSTS = ['*.beta.builder.io', 'beta.builder.io', 'builder.io', 'localhost', 'qa.builder.io'];\nexport function isFromTrustedHost(trustedHosts: string[] | undefined, e: {\n  origin: string;\n}): boolean {\n  if (!e.origin.startsWith('http') && !e.origin.startsWith('https')) {\n    return false;\n  }\n  const url = new URL(e.origin),\n    hostname = url.hostname;\n  return (trustedHosts || DEFAULT_TRUSTED_HOSTS).findIndex(trustedHost => trustedHost.startsWith('*.') ? hostname.endsWith(trustedHost.slice(1)) : trustedHost === hostname) > -1;\n}","import { SDK_VERSION } from '../constants/sdk-version';\nimport { TARGET } from '../constants/target';\nimport { isBrowser } from '../functions/is-browser';\nimport { isFromTrustedHost } from '../functions/is-from-trusted-host';\nlet isSetupForEditing = false;\nexport const setupBrowserForEditing = (options: {\n  modelName: string;\n  apiKey: string;\n  enrich?: boolean;\n  includeRefs?: boolean;\n  locale?: string;\n  trustedHosts?: string[];\n}) => {\n  if (isSetupForEditing) {\n    return;\n  }\n  isSetupForEditing = true;\n  if (isBrowser()) {\n    window.parent?.postMessage({\n      type: 'builder.sdkInfo',\n      data: {\n        target: TARGET,\n        version: SDK_VERSION,\n        supportsPatchUpdates: false,\n        // Supports builder-model=\"...\" attribute which is needed to\n        // scope our '+ add block' button styling\n        supportsAddBlockScoping: true,\n        supportsCustomBreakpoints: true,\n        modelName: options.modelName,\n        apiKey: options.apiKey,\n        supportsXSmallBreakpoint: TARGET === 'reactNative' ? false : true,\n        blockLevelPersonalization: true\n      }\n    }, '*');\n    window.parent?.postMessage({\n      type: 'builder.updateContent',\n      data: {\n        options\n      }\n    }, '*');\n    window.addEventListener('message', (event: MessageEvent) => {\n      if (!isFromTrustedHost(options.trustedHosts, event)) {\n        return;\n      }\n      const {\n        data\n      } = event;\n      if (!data?.type) {\n        return;\n      }\n      switch (data.type) {\n        case 'builder.evaluate':\n          {\n            const text = data.data.text;\n            const args = data.data.arguments || [];\n            const id = data.data.id;\n            // tslint:disable-next-line:no-function-constructor-with-string-args\n            const fn = new Function(text);\n            let result: any;\n            let error: Error | null = null;\n            try {\n              // eslint-disable-next-line prefer-spread\n              result = fn.apply(null, args);\n            } catch (err) {\n              error = (err as Error);\n            }\n            if (error) {\n              window.parent?.postMessage({\n                type: 'builder.evaluateError',\n                data: {\n                  id,\n                  error: error.message\n                }\n              }, '*');\n            } else {\n              if (result && typeof result.then === 'function') {\n                (result as Promise<any>).then(finalResult => {\n                  window.parent?.postMessage({\n                    type: 'builder.evaluateResult',\n                    data: {\n                      id,\n                      result: finalResult\n                    }\n                  }, '*');\n                }).catch(console.error);\n              } else {\n                window.parent?.postMessage({\n                  type: 'builder.evaluateResult',\n                  data: {\n                    result,\n                    id\n                  }\n                }, '*');\n              }\n            }\n            break;\n          }\n      }\n    });\n  }\n}","import type { ContentProps } from '../components/content/content.types';\nimport { isBrowser } from '../functions/is-browser';\nimport { isFromTrustedHost } from '../functions/is-from-trusted-host';\nimport { setupBrowserForEditing } from '../scripts/init-editing';\nimport type { BuilderAnimation } from '../types/builder-block';\nimport type { BuilderContent } from '../types/builder-content';\nimport type { Dictionary } from '../types/typescript';\nimport { logger } from './logger';\nexport type EditType = 'client' | 'server' | undefined;\ntype ContentListener = Required<Pick<ContentProps, 'model' | 'trustedHosts'>> & {\n  callbacks: {\n    contentUpdate: (updatedContent: BuilderContent, editType?: EditType) => void;\n    stateUpdate: (newState: Dictionary<string>, editType?: EditType) => void;\n    animation: (updatedContent: BuilderAnimation) => void;\n    configureSdk: (updatedContent: any) => void;\n  };\n};\nexport const createEditorListener = ({\n  model,\n  trustedHosts,\n  callbacks\n}: ContentListener) => {\n  return (event: MessageEvent<any>): void => {\n    if (!isFromTrustedHost(trustedHosts, event)) {\n      return;\n    }\n    const {\n      data\n    } = event;\n    if (data) {\n      switch (data.type) {\n        case 'builder.configureSdk':\n          {\n            callbacks.configureSdk(data.data);\n            break;\n          }\n        case 'builder.triggerAnimation':\n          {\n            callbacks.animation(data.data);\n            break;\n          }\n        case 'builder.resetState':\n          {\n            const messageContent = data.data;\n            const modelName = messageContent.model;\n            const newState = messageContent?.state;\n            const editType = messageContent.editType;\n            if (modelName === model && newState) {\n              callbacks.stateUpdate(newState, editType);\n            }\n            break;\n          }\n        case 'builder.contentUpdate':\n          {\n            const messageContent = data.data;\n            const key = messageContent.key || messageContent.alias || messageContent.entry || messageContent.modelName;\n            const contentData = messageContent.data;\n            const editType = messageContent.editType;\n            if (key === model) {\n              callbacks.contentUpdate(contentData, editType);\n            }\n            break;\n          }\n      }\n    }\n  };\n};\ntype SubscribeToEditor = ({\n  model,\n  apiKey,\n  callback,\n  trustedHosts\n}: {\n  /**\n   * The Builder `model` to subscribe to\n   */\n  model: string;\n  /**\n   * Builder API Key to use for the editor.\n   */\n  apiKey: string;\n  /**\n   * The callback function to call when the content is updated.\n   */\n  callback: (updatedContent: BuilderContent) => void;\n  /**\n   * List of hosts to allow editing content from.\n   */\n  trustedHosts?: string[] | undefined;\n}) => () => void;\n\n/**\n * Subscribes to the Builder editor and listens to `content` updates of a certain `model`.\n * Sends the updated `content` to the `callback` function.\n */\nexport const subscribeToEditor: SubscribeToEditor = ({\n  model,\n  apiKey,\n  callback,\n  trustedHosts\n}) => {\n  if (!isBrowser) {\n    logger.warn('`subscribeToEditor` only works in the browser. It currently seems to be running on the server.');\n    return () => {};\n  }\n  setupBrowserForEditing({\n    modelName: model,\n    apiKey\n  });\n  const listener = createEditorListener({\n    callbacks: {\n      contentUpdate: callback,\n      animation: () => {},\n      configureSdk: () => {},\n      stateUpdate: () => {}\n    },\n    model,\n    trustedHosts\n  });\n  window.addEventListener('message', listener);\n  return () => {\n    window.removeEventListener('message', listener);\n  };\n}","import { TARGET } from '../constants/target';\nimport { checkIsDefined } from '../helpers/nullable';\nimport type { BuilderContent, BuilderContentVariation } from '../types/builder-content';\nimport type { CanTrack } from '../types/can-track';\nimport type { Nullable, Overwrite } from '../types/typescript';\nimport { getCookie, getCookieSync, setCookie } from './cookie';\nimport { logger } from './logger';\nconst BUILDER_STORE_PREFIX = 'builder.tests';\nconst getContentTestKey = (id: string) => `${BUILDER_STORE_PREFIX}.${id}`;\nconst getContentVariationCookie = ({\n  contentId\n}: {\n  contentId: string;\n}) => getCookie({\n  name: getContentTestKey(contentId),\n  canTrack: true\n});\nconst getContentVariationCookieSync = ({\n  contentId\n}: {\n  contentId: string;\n}) => getCookieSync({\n  name: getContentTestKey(contentId),\n  canTrack: true\n});\nconst setContentVariationCookie = ({\n  contentId,\n  value\n}: {\n  contentId: string;\n  value: string;\n}) => setCookie({\n  name: getContentTestKey(contentId),\n  value,\n  canTrack: true\n});\ntype BuilderContentWithVariations = Overwrite<BuilderContent, Required<Pick<BuilderContent, 'variations' | 'id'>>>;\nconst checkIsBuilderContentWithVariations = (item: BuilderContent): item is BuilderContentWithVariations => checkIsDefined(item.id) && checkIsDefined(item.variations) && Object.keys(item.variations).length > 0;\n\n/**\n * Randomly assign a variation to a user\n */\nconst getRandomVariationId = ({\n  id,\n  variations\n}: BuilderContentWithVariations) => {\n  let n = 0;\n  const random = Math.random();\n\n  // loop over variations test ratios, incrementing a counter,\n  // until we find the variation that this user should be assigned to\n  for (const id in variations) {\n    const testRatio = variations[id]?.testRatio;\n    n += testRatio!;\n    if (random < n) {\n      return id;\n    }\n  }\n\n  // the variations array does not include the default variation.\n  // if we arrive here, then it means that the random number fits in the default variation bucket.\n  return id;\n};\nconst getAndSetVariantId = (args: BuilderContentWithVariations) => {\n  // if variation not found in storage, assign a random variation to this user\n  const randomVariationId = getRandomVariationId(args);\n\n  // store variation in cookies/storage\n  setContentVariationCookie({\n    contentId: args.id,\n    value: randomVariationId\n  }).catch(err => {\n    logger.error('could not store A/B test variation: ', err);\n  });\n  return randomVariationId;\n};\ntype TestFields = {\n  data?: BuilderContentVariation['data'];\n  testVariationId?: string;\n  testVariationName: string;\n};\nconst getTestFields = ({\n  item,\n  testGroupId\n}: {\n  item: BuilderContentWithVariations;\n  testGroupId: string;\n}): TestFields => {\n  const variationValue = item.variations[testGroupId];\n  if (testGroupId === item.id ||\n  // handle edge-case where `testGroupId` points to non-existing variation\n  !variationValue) {\n    return {\n      testVariationId: item.id,\n      testVariationName: 'Default'\n    };\n  } else {\n    return {\n      data: variationValue.data,\n      testVariationId: variationValue.id,\n      testVariationName: variationValue.name || (variationValue.id === item.id ? 'Default' : '')\n    };\n  }\n};\nexport const handleABTestingSync = ({\n  item,\n  canTrack\n}: {\n  item: Nullable<BuilderContent>;\n} & CanTrack): Nullable<BuilderContent> => {\n  /**\n   * We cannot SSR in React-Native.\n   */\n  if (TARGET === 'reactNative') return item;\n  if (!canTrack) {\n    return item;\n  }\n  if (!item) {\n    return undefined;\n  }\n  if (!checkIsBuilderContentWithVariations(item)) {\n    return item;\n  }\n  const testGroupId = getContentVariationCookieSync({\n    contentId: item.id\n  }) || getAndSetVariantId({\n    variations: item.variations,\n    id: item.id\n  });\n  const variationValue = getTestFields({\n    item,\n    testGroupId\n  });\n  return {\n    ...item,\n    ...variationValue\n  };\n};\nexport const handleABTesting = async ({\n  item,\n  canTrack\n}: {\n  item: BuilderContent;\n} & CanTrack): Promise<BuilderContent> => {\n  if (!canTrack) {\n    return item;\n  }\n  if (!checkIsBuilderContentWithVariations(item)) {\n    return item;\n  }\n  const cookieValue = await getContentVariationCookie({\n    contentId: item.id\n  });\n  const testGroupId = cookieValue || getAndSetVariantId({\n    variations: item.variations,\n    id: item.id\n  });\n  const variationValue = getTestFields({\n    item,\n    testGroupId\n  });\n  return {\n    ...item,\n    ...variationValue\n  };\n}","export function noSerializeWrapper(fn: () => void) {\n  return fn;\n}","import { TARGET } from '../constants/target';\nimport { isBrowser } from '../functions/is-browser';\nimport { getCookieSync, setCookie } from './cookie';\nimport { noSerializeWrapper } from './no-serialize-wrapper';\nexport interface UserAttributes {\n  [key: string]: any;\n}\nexport const USER_ATTRIBUTES_COOKIE_NAME = 'builder.userAttributes';\nexport function createUserAttributesService() {\n  let canTrack = true;\n  const subscribers = new Set<(attrs: UserAttributes) => void>();\n  return {\n    setUserAttributes(newAttrs: UserAttributes) {\n      if (!isBrowser()) {\n        return;\n      }\n      const userAttributes: UserAttributes = {\n        ...this.getUserAttributes(),\n        ...newAttrs\n      };\n      setCookie({\n        name: USER_ATTRIBUTES_COOKIE_NAME,\n        value: JSON.stringify(userAttributes),\n        canTrack\n      });\n      subscribers.forEach(callback => callback(userAttributes));\n    },\n    getUserAttributes() {\n      if (!isBrowser()) {\n        return {};\n      }\n      return JSON.parse(getCookieSync({\n        name: USER_ATTRIBUTES_COOKIE_NAME,\n        canTrack\n      }) || '{}');\n    },\n    subscribeOnUserAttributesChange(callback: (attrs: UserAttributes) => void, {\n      fireImmediately\n    }: {\n      fireImmediately?: boolean;\n    } = {}) {\n      subscribers.add(callback);\n      if (fireImmediately) {\n        callback(this.getUserAttributes());\n      }\n      return noSerializeWrapper(function () {\n        subscribers.delete(callback);\n      });\n    },\n    setCanTrack(value: boolean) {\n      canTrack = value;\n    }\n  };\n}\nlet _userAttributesService: ReturnType<typeof createUserAttributesService>;\nif (isBrowser() && TARGET === 'qwik') {\n  if (!(window as any).__BUILDER_USER_ATTRIBUTES_SERVICE__) {\n    (window as any).__BUILDER_USER_ATTRIBUTES_SERVICE__ = createUserAttributesService();\n  }\n  _userAttributesService = (window as any).__BUILDER_USER_ATTRIBUTES_SERVICE__;\n} else {\n  _userAttributesService = createUserAttributesService();\n}\nexport const userAttributesService = _userAttributesService;\nexport const setClientUserAttributes = (attributes: UserAttributes) => {\n  userAttributesService.setUserAttributes(attributes);\n}","import { checkIsDefined } from './nullable';\nimport { userAttributesService } from './user-attributes';\nexport const getDefaultCanTrack = (canTrack?: boolean) => {\n  const result = checkIsDefined(canTrack) ? canTrack : true;\n  userAttributesService.setCanTrack(result);\n  return result;\n}","import type { BuilderContent } from '../../types/builder-content';\nexport function getPreviewContent(_searchParams: URLSearchParams): BuilderContent | undefined {\n  return undefined;\n}","type Global = typeof global | typeof window | typeof self | typeof globalThis;\nexport function getGlobalThis(): Global {\n  if (typeof globalThis !== 'undefined') {\n    return globalThis;\n  }\n  if (typeof window !== 'undefined') {\n    return window;\n  }\n  if (typeof global !== 'undefined') {\n    return global;\n  }\n  if (typeof self !== 'undefined') {\n    return self;\n  }\n  return globalThis;\n}","import { getGlobalThis } from './get-global-this';\nfunction getFetch(): typeof global.fetch {\n  const globalFetch: typeof global.fetch = getGlobalThis().fetch;\n  if (typeof globalFetch === 'undefined') {\n    console.warn(`Builder SDK could not find a global fetch function. Make sure you have a polyfill for fetch in your project. \n      For more information, read https://github.com/BuilderIO/this-package-uses-fetch`);\n    throw new Error('Builder SDK could not find a global `fetch` function');\n  }\n  return globalFetch;\n}\nexport const fetch = getFetch()","/**\n * Convert deep object to a flat object with dots\n *\n * { foo: { bar: 'baz' }} -> { 'foo.bar': 'baz' }\n */\nexport function flatten<T extends Record<string, any>>(object: T, path: string | null = null, separator = '.'): T {\n  return Object.keys(object).reduce((acc: T, key: string): T => {\n    const value = object[key];\n    const newPath = [path, key].filter(Boolean).join(separator);\n    const isObject = [typeof value === 'object', value !== null, !(Array.isArray(value) && value.length === 0)].every(Boolean);\n    return isObject ? {\n      ...acc,\n      ...flatten(value, newPath, separator)\n    } : {\n      ...acc,\n      [newPath]: value\n    };\n  }, ({} as T));\n}\n\n/**\n * Flatten a nested MongoDB query object into a flat object with dot-separated keys.\n * $ keys are not flattened and are left as is.\n *\n * { foo: { bar: { $gt: 5 }}} -> { 'foo.bar': { '$gt': 5 }}\n * { foo: {'bar.id': { $elemMatch: { 'baz.id': { $in: ['abc', 'bcd'] }}}}} -> { 'foo.bar.id': { '$elemMatch': { 'baz.id': { '$in': ['abc', 'bcd'] }}}}\n */\nexport function flattenMongoQuery(obj: any, _current?: any, _res: any = {}): {\n  [key: string]: string;\n} {\n  for (const key in obj) {\n    const value = obj[key];\n    const newKey = _current ? _current + '.' + key : key;\n    if (value && typeof value === 'object' && !Array.isArray(value) && !Object.keys(value).find(item => item.startsWith('$'))) {\n      flattenMongoQuery(value, newKey, _res);\n    } else {\n      _res[newKey] = value;\n    }\n  }\n  return _res;\n}\n\n/**\n * Unflatten a flat object with dot-separated keys back into a nested object.\n *\n * { 'foo.bar': 'baz' } -> { foo: { bar: 'baz' }}\n */\nexport function unflatten(obj: any): any {\n  const result: any = {};\n  for (const key in obj) {\n    const parts = key.split('.');\n    let current = result;\n    for (let i = 0; i < parts.length; i++) {\n      const part = parts[i];\n      if (i === parts.length - 1) {\n        current[part] = obj[key];\n      } else {\n        current[part] = current[part] || {};\n        current = current[part];\n      }\n    }\n  }\n  return result;\n}","export type ApiVersion = 'v3';\nexport const DEFAULT_API_VERSION: ApiVersion = 'v3'","import { flatten, flattenMongoQuery, unflatten } from '../../helpers/flatten';\nimport { normalizeSearchParams } from '../../helpers/search/search';\nimport { DEFAULT_API_VERSION } from '../../types/api-version';\nimport { getBuilderSearchParamsFromWindow } from '../get-builder-search-params/index';\nimport { isBrowser } from '../is-browser';\nimport type { GetContentOptions } from './types';\nconst isPositiveNumber = (thing: unknown) => typeof thing === 'number' && !isNaN(thing) && thing >= 0;\nexport const generateContentUrl = (options: GetContentOptions): URL => {\n  const {\n    limit = 30,\n    userAttributes,\n    query,\n    model,\n    apiKey,\n    enrich,\n    locale,\n    apiVersion = DEFAULT_API_VERSION,\n    fields,\n    omit,\n    offset,\n    cacheSeconds,\n    staleCacheSeconds,\n    sort,\n    includeUnpublished,\n    apiHost\n  } = options;\n  if (!apiKey) {\n    throw new Error('Missing API key');\n  }\n  if (!['v3'].includes(apiVersion)) {\n    throw new Error(`Invalid apiVersion: expected 'v3', received '${apiVersion}'`);\n  }\n\n  // if we are fetching an array of content, we disable noTraverse for perf reasons.\n  const noTraverse = limit !== 1;\n  const baseUrl = apiHost || 'https://cdn.builder.io';\n  const url = new URL(`${baseUrl}/api/${apiVersion}/content/${model}`);\n  url.searchParams.set('apiKey', apiKey);\n  url.searchParams.set('limit', String(limit));\n  url.searchParams.set('noTraverse', String(noTraverse));\n  url.searchParams.set('includeRefs', String(true));\n  if (locale) {\n    url.searchParams.set('locale', locale);\n  }\n  let finalUserAttributes: Record<string, any> = userAttributes || {};\n  if (enrich) url.searchParams.set('enrich', String(enrich));\n  url.searchParams.set('omit', omit ?? 'meta.componentsUsed');\n  if (fields) {\n    url.searchParams.set('fields', fields);\n  }\n  if (Number.isFinite(offset) && offset! > -1) {\n    url.searchParams.set('offset', String(Math.floor(offset!)));\n  }\n  if (typeof includeUnpublished === 'boolean') {\n    url.searchParams.set('includeUnpublished', String(includeUnpublished));\n  }\n  if (cacheSeconds && isPositiveNumber(cacheSeconds)) {\n    url.searchParams.set('cacheSeconds', String(cacheSeconds));\n  }\n  if (staleCacheSeconds && isPositiveNumber(staleCacheSeconds)) {\n    url.searchParams.set('staleCacheSeconds', String(staleCacheSeconds));\n  }\n  if (sort) {\n    const flattened = flatten({\n      sort\n    });\n    for (const key in flattened) {\n      url.searchParams.set(key, JSON.stringify((flattened as any)[key]));\n    }\n  }\n\n  // TODO: how to express 'offset' in the url - as direct queryparam or as flattened in options[key] ?\n\n  const queryOptions = {\n    ...getBuilderSearchParamsFromWindow(),\n    ...normalizeSearchParams(options.options || {})\n  };\n  finalUserAttributes = {\n    ...finalUserAttributes,\n    ...getUserAttributesAsJSON(queryOptions)\n  };\n  const flattened = flatten(queryOptions);\n  for (const key in flattened) {\n    url.searchParams.set(key, String(flattened[key]));\n  }\n  if (Object.keys(finalUserAttributes).length > 0) {\n    url.searchParams.set('userAttributes', JSON.stringify(finalUserAttributes));\n  }\n  if (query) {\n    const flattened = flattenMongoQuery({\n      query\n    });\n    for (const key in flattened) {\n      url.searchParams.set(key, JSON.stringify(flattened[key]));\n    }\n  }\n  return url;\n};\nconst getUserAttributesFromQueryOptions = (queryOptions: any) => {\n  const newUserAttributes: any = {};\n  for (const key in queryOptions) {\n    if (key.startsWith('userAttributes.')) {\n      newUserAttributes[key] = queryOptions[key];\n      delete queryOptions[key];\n    }\n  }\n  return newUserAttributes;\n};\nconst getUserAttributesAsJSON = (queryOptions: any) => {\n  if (isBrowser() && queryOptions['preview'] === 'BUILDER_STUDIO') {\n    queryOptions['userAttributes.urlPath'] = window.location.pathname;\n    queryOptions['userAttributes.host'] = window.location.host;\n    const queryOptionsForUserAttributes = getUserAttributesFromQueryOptions(queryOptions);\n    const {\n      userAttributes\n    } = unflatten(queryOptionsForUserAttributes);\n    return userAttributes;\n  }\n  return {};\n}","import { TARGET } from '../../constants/target';\nimport { handleABTesting } from '../../helpers/ab-tests';\nimport { getDefaultCanTrack } from '../../helpers/canTrack';\nimport { logger } from '../../helpers/logger';\nimport { getPreviewContent } from '../../helpers/preview-lru-cache/get';\nimport { getSdkHeaders } from '../../helpers/sdk-headers';\nimport type { BuilderContent } from '../../types/builder-content';\nimport { fetch } from '../get-fetch';\nimport { isBrowser } from '../is-browser';\nimport { generateContentUrl } from './generate-content-url';\nimport type { GetContentOptions } from './types';\nconst checkContentHasResults = (content: ContentResponse): content is ContentResults => 'results' in content;\n\n/**\n * Returns the first content entry that matches the given options.\n */\nexport async function fetchOneEntry(options: GetContentOptions): Promise<BuilderContent | null> {\n  const finalLocale = options.locale || options.userAttributes?.locale;\n  if (finalLocale) {\n    options.locale = finalLocale;\n    options.userAttributes = {\n      locale: finalLocale,\n      ...options.userAttributes\n    };\n  }\n  const allContent = await fetchEntries({\n    ...options,\n    limit: 1\n  });\n  if (allContent) {\n    return allContent[0] || null;\n  }\n  return null;\n}\ntype ContentResults = {\n  results: BuilderContent[];\n};\ntype ContentResponse = ContentResults | {\n  status: number;\n  message: string;\n};\nconst _fetchContent = async (options: GetContentOptions) => {\n  const url = generateContentUrl(options);\n  const _fetch = options.fetch ?? fetch;\n  const fetchOptions = {\n    ...options.fetchOptions,\n    headers: {\n      ...(options.fetchOptions as any)?.headers,\n      ...getSdkHeaders()\n    }\n  };\n  const res = await _fetch(url.href, fetchOptions);\n  const content = await (res.json() as Promise<ContentResponse>);\n  return content;\n};\n\n/**\n * @internal Exported only for testing purposes. Do not use.\n */\nexport const _processContentResult = async (options: GetContentOptions, content: ContentResults, url: URL = generateContentUrl(options)): Promise<BuilderContent[]> => {\n  const canTrack = getDefaultCanTrack(options.canTrack);\n  const isPreviewing = url.search.includes(`preview=`);\n  if (TARGET === 'rsc' && isPreviewing) {\n    const newResults: BuilderContent[] = [];\n    for (const item of content.results) {\n      const previewContent = getPreviewContent(url.searchParams);\n      newResults.push(previewContent || item);\n    }\n    content.results = newResults;\n  }\n  if (!canTrack) return content.results;\n  if (!(isBrowser() || TARGET === 'reactNative')) return content.results;\n\n  /**\n   * For client-side navigations, it is ideal to handle AB testing at this point instead of using our\n   * complex multi-rendering variants approach, which is only needed for SSR'd content.\n   *\n   * This is also where react-native would handle AB testing.\n   */\n  try {\n    const newResults: BuilderContent[] = [];\n    for (const item of content.results) {\n      newResults.push(await handleABTesting({\n        item,\n        canTrack\n      }));\n    }\n    content.results = newResults;\n  } catch (e) {\n    logger.error('Could not process A/B tests. ', e);\n  }\n  return content.results;\n};\n\n/**\n * Returns a paginated array of entries that match the given options.\n */\nexport async function fetchEntries(options: GetContentOptions) {\n  const url = generateContentUrl(options);\n  const content = await _fetchContent(options);\n  if (!checkContentHasResults(content)) {\n    logger.error('Error fetching data. ', {\n      url,\n      content,\n      options\n    });\n    throw content;\n  }\n  return _processContentResult(options, content);\n}","import type { ContentVariantsPrps } from '../components/content-variants/content-variants.types';\nimport type { Dictionary } from '../types/typescript';\nimport { getBuilderSearchParams } from './get-builder-search-params/index';\nimport { fetchOneEntry } from './get-content/index';\nimport type { GetContentOptions } from './get-content/types';\ntype GetBuilderPropsOptions = (Omit<GetContentOptions, 'model'> & {\n  model?: string;\n}) & ({\n  /**\n   * The current URL path. Used to determine the `urlPath` for targeting content.\n   *\n   * Cannot be used with `url`.\n   */\n  path: string;\n\n  /**\n   * The current URL search params. Used to parse the `searchParams` for targeting content.\n   *\n   * Cannot be used with `url`.\n   */\n  searchParams?: URLSearchParams | Dictionary<string | string[]>;\n  url?: undefined;\n} | {\n  /**\n   * The current URL. Used to determine the `urlPath` for targeting content and\n   * to parse the `searchParams` for targeting content.\n   *\n   * Cannot be used with `path` or `searchParams`.\n   */\n  url: URL;\n  path?: undefined;\n  searchParams?: undefined;\n} | {\n  url?: undefined;\n  path?: undefined;\n  searchParams?: undefined;\n});\n\n/**\n * Given an `apiKey` and `url` (or `path` + `searchParams`), provides all props that `Content` needs to render Builder Content.\n *\n * @example\n * ```jsx\n * const builderProps = await fetchBuilderProps({\n *    apiKey: 'API_KEY',\n *    // provide `url`\n *    url: yourPageUrl,\n *    // OR provide `path` + `searchParams`\n *    path: yourPath,\n *    searchParams: yourSearchParams,\n * });\n *\n * return <Content {...builderProps} />;\n * ```\n */\nexport const fetchBuilderProps = async (_args: GetBuilderPropsOptions): Promise<ContentVariantsPrps> => {\n  const urlPath = _args.path || _args.url?.pathname || _args.userAttributes?.urlPath;\n  const getContentArgs: GetContentOptions = {\n    ..._args,\n    apiKey: _args.apiKey,\n    model: _args.model || 'page',\n    userAttributes: {\n      ..._args.userAttributes,\n      ...(urlPath ? {\n        urlPath\n      } : {})\n    },\n    options: getBuilderSearchParams(_args.searchParams || _args.url?.searchParams || _args.options)\n  };\n  return {\n    apiKey: getContentArgs.apiKey,\n    model: getContentArgs.model,\n    content: await fetchOneEntry(getContentArgs)\n  };\n}","import { Component, input, effect, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport type { AwaiterProps } from \"./awaiter.types\";\n\n@Component({\n  selector: \"awaiter\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <ng-container><ng-content></ng-content></ng-container>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Awaiter {\n  load: InputSignal<AwaiterProps[\"load\"]> = input<AwaiterProps[\"load\"]>();\n  props: InputSignal<AwaiterProps[\"props\"]> = input<AwaiterProps[\"props\"]>();\n  attributes: InputSignal<AwaiterProps[\"attributes\"]> =\n    input<AwaiterProps[\"attributes\"]>();\n  fallback: InputSignal<AwaiterProps[\"fallback\"]> =\n    input<AwaiterProps[\"fallback\"]>();\n\n  constructor() {}\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n      /** this is a hack to include unused props */\n      const _ = {\n        a: this.load(),\n        b: this.props(),\n        c: this.attributes(),\n        d: this.fallback(),\n      };\n    }\n  }\n}\n","import type { BuilderBlock, BuilderContent } from '../server-index';\n\n/**\n * Recursively searches for a block by ID.\n *\n * @param content The Builder content to search through.\n * @param id The ID of the block to search for.\n * @returns The block if found, otherwise null.\n */\nexport const findBlockById = (content: BuilderContent, id: string): BuilderBlock | null => {\n  return findBlockInTree(content.data?.blocks, id);\n};\n\n/**\n * Helper function to recursively search through block tree.\n *\n * @param blocks The blocks to search through.\n * @param id The ID of the block to search for.\n * @returns The block if found, otherwise null.\n * @private This is an internal implementation detail.\n */\nexport const findBlockInTree = (blocks: BuilderBlock[] | undefined, id: string): BuilderBlock | null => {\n  if (!blocks) return null;\n  for (const block of blocks) {\n    if (block.id === id) return block;\n    if (block.children) {\n      const child = findBlockInTree(block.children, id);\n      if (child) return child;\n    }\n    if (block.component?.name === 'Columns' && block.component?.options?.columns) {\n      for (const column of block.component.options.columns) {\n        if (column.blocks) {\n          const child = findBlockInTree(column.blocks, id);\n          if (child) return child;\n        }\n      }\n    }\n  }\n  return null;\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  ViewContainerRef,\n  TemplateRef,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ntype LiveEditProps = {\n  children?: any;\n  id?: any;\n  Wrapper?: any;\n  attributes?: any;\n};\n\nimport { BuilderContext } from \"../context/index\";\nimport { findBlockById } from \"../helpers/find-block\";\n\n@Component({\n  selector: \"live-edit\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <ng-template #wrapperTemplate><ng-content></ng-content></ng-template>\n    <ng-container\n      *ngComponentOutlet=\"\n              Wrapper();\n        inputs: dynamicProps_mhxjjt();\n              content: myContent();\n              \"\n    ></ng-container>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class LiveEdit {\n  myContent = signal<any[]>([]);\n  wrapperTemplateRef = viewChild<TemplateRef<any>>(\"wrapperTemplate\");\n\n  id: InputSignal<LiveEditProps[\"id\"]> = input<LiveEditProps[\"id\"]>();\n  attributes: InputSignal<LiveEditProps[\"attributes\"]> =\n    input<LiveEditProps[\"attributes\"]>();\n  Wrapper: InputSignal<LiveEditProps[\"Wrapper\"]> =\n    input<LiveEditProps[\"Wrapper\"]>();\n\n  block = computed(() => {\n    return findBlockById(this.context.content!, this.id());\n  });\n  options = computed(() => {\n    return this.block()?.component?.options || {};\n  });\n  dynamicProps_mhxjjt = computed(() => {\n    return { ...this.options(), attributes: this.attributes() };\n  });\n\n  constructor(\n    public context: BuilderContext,\n    private viewContainer: ViewContainerRef\n  ) {}\n\n  _updateView() {\n    this.myContent.set([\n      this.viewContainer.createEmbeddedView(this.wrapperTemplateRef())\n        .rootNodes,\n    ]);\n  }\n\n  ngAfterContentInit() {\n    this._updateView();\n  }\n}\n","import {\n  Component,\n  viewChild,\n  ElementRef,\n  ViewContainerRef,\n  TemplateRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nexport type InteractiveElementProps = {\n  Wrapper: any;\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n  wrapperProps: Dictionary<any>;\n  includeBlockProps: boolean;\n  children?: any;\n};\n\nimport { TARGET } from \"../../../constants/target\";\nimport type { BuilderContextInterface } from \"../../../context/types\";\nimport { getBlockActions } from \"../../../functions/get-block-actions\";\nimport { getBlockProperties } from \"../../../functions/get-block-properties\";\nimport { isEditing } from \"../../../server-index\";\nimport type { BuilderBlock } from \"../../../types/builder-block\";\nimport type { Dictionary } from \"../../../types/typescript\";\nimport Awaiter from \"../../awaiter\";\nimport LiveEdit from \"../../live-edit\";\nimport { reflectComponentType } from \"@angular/core\";\n\n@Component({\n  selector: \"interactive-element\",\n  standalone: true,\n  imports: [CommonModule, LiveEdit, Awaiter],\n  template: `\n    <ng-template #wrapperTemplate><ng-content></ng-content></ng-template>\n    @if(Wrapper().load){\n    <awaiter\n      [load]=\"Wrapper().load\"\n      [fallback]=\"Wrapper().fallback\"\n      [props]=\"wrapperProps()\"\n      [attributes]=\"attributes()\"\n    >\n      <ng-content></ng-content>\n    </awaiter>\n    }@else{ @if(TARGET === 'rsc' && isEditing()){\n    <live-edit\n      [Wrapper]=\"Wrapper()\"\n      [id]=\"block().id || ''\"\n      [attributes]=\"attributes()\"\n    >\n      <ng-content></ng-content>\n    </live-edit>\n    }@else{\n    <ng-container\n      *ngComponentOutlet=\"\n              Wrapper();\n        inputs: dynamicProps_z2itiz();\n              content: myContent();\n              \"\n    ></ng-container>\n    } }\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class InteractiveElement {\n  protected readonly TARGET = TARGET;\n  protected readonly isEditing = isEditing;\n\n  myContent = signal<any[]>([]);\n  wrapperTemplateRef = viewChild<TemplateRef<any>>(\"wrapperTemplate\");\n\n  wrapperProps: InputSignal<InteractiveElementProps[\"wrapperProps\"]> =\n    input<InteractiveElementProps[\"wrapperProps\"]>();\n  block: InputSignal<InteractiveElementProps[\"block\"]> =\n    input<InteractiveElementProps[\"block\"]>();\n  includeBlockProps: InputSignal<InteractiveElementProps[\"includeBlockProps\"]> =\n    input<InteractiveElementProps[\"includeBlockProps\"]>();\n  context: InputSignal<InteractiveElementProps[\"context\"]> =\n    input<InteractiveElementProps[\"context\"]>();\n  Wrapper: InputSignal<InteractiveElementProps[\"Wrapper\"]> =\n    input<InteractiveElementProps[\"Wrapper\"]>();\n\n  forceRenderCount = signal(0);\n\n  private _listenerFns = new Map();\n        attributes = computed(() => {\n    return this.includeBlockProps()\n      ? {\n          ...getBlockProperties({\n            block: this.block(),\n            context: this.context(),\n          }),\n          ...getBlockActions({\n            block: this.block(),\n            rootState: this.context().rootState,\n            rootSetState: this.context().rootSetState,\n            localState: this.context().localState,\n            context: this.context().context,\n            trackingContext: {\n              apiKey: this.context().apiKey,\n              canTrack: this.context().canTrack ?? true,\n              contentId: this.context().content?.id,\n              variationId: this.context().content?.testVariationId,\n            },\n          }),\n        }\n      : {};\n  });\n  targetWrapperProps = computed(() => {\n    return this.wrapperProps();\n  });\n  dynamicProps_z2itiz = computed(() => {\n    return { ...(this.filterPropsThatWrapperNeeds(this.targetWrapperProps())), ...(this.hasAttributesInput(this.Wrapper()) && { attributes: this.attributes() }) };\n  });\n  hasAttributesInput(component): boolean {\n    return !!reflectComponentType(component)?.inputs.find(\n      (input) => input.propName === \"attributes\"\n    );\n  }\n  filterPropsThatWrapperNeeds(allProps: any) {\n    const definedPropNames = reflectComponentType(this.Wrapper()).inputs.map(\n      (prop) => prop.propName\n    );\n    return definedPropNames.reduce((acc, propName) => {\n      acc[propName] = allProps[propName];\n      return acc;\n    }, {});\n  }\n  updateAttributes(\n    el: HTMLElement,\n    attributes: {\n      [key: string]: any;\n    }\n  ): void {\n    Object.keys(attributes).forEach((attr) => {\n      if (attr.startsWith(\"on\")) {\n        if (this._listenerFns.has(attr)) {\n          this._listenerFns.get(attr)!();\n        }\n        this._listenerFns.set(\n          attr,\n          this.renderer.listen(\n            el,\n            attr.replace(\"on\", \"\").toLowerCase(),\n            attributes[attr]\n          )\n        );\n      } else if (attr === \"class\" && attributes[attr]) {\n        const classes = attributes[attr].split(\" \");\n        classes.forEach((cls: string) =>\n          this.renderer.addClass(el, cls.trim())\n        );\n      } else {\n        this.renderer.setAttribute(\n          el,\n          attr.toLowerCase(),\n          attributes[attr] ?? \"\"\n        );\n      }\n    });\n  }\n\n  constructor(\n    private viewContainer: ViewContainerRef,\n    private renderer: Renderer2\n  ) {}\n\n  _updateView() {\n    this.myContent.set([\n      this.viewContainer.createEmbeddedView(this.wrapperTemplateRef())\n        .rootNodes,\n    ]);\n  }\n\n  ngAfterViewInit() {\n    if (!this.hasAttributesInput(this.Wrapper())) {\n      const wrapperElement =\n        this.wrapperTemplateRef()?.elementRef.nativeElement?.nextElementSibling;\n      if (wrapperElement) {\n        this.updateAttributes(wrapperElement, this.attributes());\n      }\n    }\n  }\n  ngAfterContentInit() {\n    this._updateView();\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import type { BuilderContextInterface, RegisteredComponents } from '../../../../context/types';\nimport { getBlockProperties } from '../../../../functions/get-block-properties';\nimport type { BuilderBlock } from '../../../../types/builder-block';\nimport type { BuilderDataProps } from '../../../../types/builder-props';\nimport type { InteractiveElementProps } from '../interactive-element';\ntype ComponentOptions = BuilderDataProps & {\n  [index: string]: any;\n  attributes?: {\n    [index: string]: any;\n  };\n};\nexport interface ComponentProps {\n  componentRef: any;\n  componentOptions: ComponentOptions;\n  blockChildren: BuilderBlock[];\n  context: BuilderContextInterface;\n  registeredComponents: RegisteredComponents;\n  linkComponent: any;\n  builderBlock: BuilderBlock;\n  includeBlockProps: boolean;\n  isInteractive: boolean | undefined;\n}\nexport const getWrapperProps = ({\n  componentOptions,\n  builderBlock,\n  context,\n  componentRef,\n  includeBlockProps,\n  isInteractive,\n  contextValue\n}: Omit<ComponentProps, 'blockChildren' | 'registeredComponents'> & {\n  contextValue: BuilderContextInterface;\n}) => {\n  const wrapperPropsWithAttributes = {\n    ...componentOptions,\n    /**\n     * If `noWrap` is set to `true`, then the block's props/attributes are provided to the\n     * component itself directly. Otherwise, they are provided to the wrapper element.\n     */\n    ...(includeBlockProps ? {\n      attributes: getBlockProperties({\n        block: builderBlock,\n        context: contextValue\n      })\n    } : {})\n  };\n  const interactiveElementProps: InteractiveElementProps = {\n    Wrapper: componentRef,\n    block: builderBlock,\n    context,\n    wrapperProps: componentOptions,\n    includeBlockProps\n  };\n  return isInteractive ? interactiveElementProps : wrapperPropsWithAttributes;\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  ViewContainerRef,\n  TemplateRef,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { wrapComponentRef } from \"../../../content/wrap-component-ref\";\nimport Block from \"../../block\";\nimport InteractiveElement from \"../interactive-element\";\nimport type { ComponentProps } from \"./component-ref.helpers\";\nimport { getWrapperProps } from \"./component-ref.helpers\";\nimport { forwardRef } from \"@angular/core\";\n\n@Component({\n  selector: \"component-ref\",\n  standalone: true,\n  imports: [CommonModule, forwardRef(() => Block)],\n  template: `\n    <ng-template #wrapperTemplate>\n      @if(componentRef()){ @for (child of blockChildren();track trackByChild0(i,\n      child);let i = $index) {\n      <block\n        [block]=\"child\"\n        [context]=\"context()\"\n        [registeredComponents]=\"registeredComponents()\"\n        [linkComponent]=\"linkComponent()\"\n      ></block>\n      } }\n    </ng-template>\n    @if(componentRef()){\n    <ng-container\n      *ngComponentOutlet=\"\n              Wrapper();\n        inputs: dynamicProps_vn4rls();\n              content: myContent();\n              \"\n    ></ng-container>\n    }\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class ComponentRef {\n  protected readonly getWrapperProps = getWrapperProps;\n\n  myContent = signal<any[]>([]);\n  wrapperTemplateRef = viewChild<TemplateRef<any>>(\"wrapperTemplate\");\n\n  isInteractive: InputSignal<ComponentProps[\"isInteractive\"]> =\n    input<ComponentProps[\"isInteractive\"]>();\n  componentRef: InputSignal<ComponentProps[\"componentRef\"]> =\n    input<ComponentProps[\"componentRef\"]>();\n  componentOptions: InputSignal<ComponentProps[\"componentOptions\"]> =\n    input<ComponentProps[\"componentOptions\"]>();\n  builderBlock: InputSignal<ComponentProps[\"builderBlock\"]> =\n    input<ComponentProps[\"builderBlock\"]>();\n  context: InputSignal<ComponentProps[\"context\"]> =\n    input<ComponentProps[\"context\"]>();\n  linkComponent: InputSignal<ComponentProps[\"linkComponent\"]> =\n    input<ComponentProps[\"linkComponent\"]>();\n  includeBlockProps: InputSignal<ComponentProps[\"includeBlockProps\"]> =\n    input<ComponentProps[\"includeBlockProps\"]>();\n  blockChildren: InputSignal<ComponentProps[\"blockChildren\"]> =\n    input<ComponentProps[\"blockChildren\"]>();\n  registeredComponents: InputSignal<ComponentProps[\"registeredComponents\"]> =\n    input<ComponentProps[\"registeredComponents\"]>();\n\n  shouldUpdate = signal(false);\n  Wrapper = signal(undefined);\n\n  dynamicProps_vn4rls = computed(() => {\n    return {\n      ...getWrapperProps({\n        componentOptions: this.componentOptions(),\n        builderBlock: this.builderBlock(),\n        context: this.context(),\n        componentRef: this.componentRef(),\n        linkComponent: this.linkComponent(),\n        includeBlockProps: this.includeBlockProps(),\n        isInteractive: this.isInteractive(),\n        contextValue: this.context(),\n      }),\n    };\n  });\n  trackByChild0(_: number, child: any) {\n    return child.id;\n  }\n\n  constructor(private viewContainer: ViewContainerRef) {}\n\n  ngOnInit() {\n    this.Wrapper.set(\n      this.isInteractive() ? InteractiveElement : this.componentRef()\n    );\n  }\n\n  _updateView() {\n    this.myContent.set([\n      this.viewContainer.createEmbeddedView(this.wrapperTemplateRef())\n        .rootNodes,\n    ]);\n  }\n\n  ngAfterContentInit() {\n    this._updateView();\n  }\n}\n","import { Component, input, effect, signal, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ntype Props = Omit<BlockProps, \"context\"> & {\n  repeatContext: BuilderContextInterface;\n};\n\nimport BuilderContext from \"../../../context/builder.context\";\nimport type { BuilderContextInterface } from \"../../../context/types\";\nimport type { BlockProps } from \"../block\";\nimport Block from \"../block\";\nimport { forwardRef } from \"@angular/core\";\n\n@Component({\n  selector: \"repeated-block\",\n  standalone: true,\n  imports: [CommonModule, forwardRef(() => Block)],\n  template: `\n    <block\n      [block]=\"block()\"\n      [context]=\"store()\"\n      [registeredComponents]=\"registeredComponents()\"\n      [linkComponent]=\"linkComponent()\"\n    ></block>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class RepeatedBlock {\n  repeatContext: InputSignal<Props[\"repeatContext\"]> =\n    input<Props[\"repeatContext\"]>();\n  block: InputSignal<Props[\"block\"]> = input<Props[\"block\"]>();\n  registeredComponents: InputSignal<Props[\"registeredComponents\"]> =\n    input<Props[\"registeredComponents\"]>();\n  linkComponent: InputSignal<Props[\"linkComponent\"]> =\n    input<Props[\"linkComponent\"]>();\n\n  store = signal(undefined);\n\n  constructor() {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.repeatContext();\n          // ---\n\n          this.store.set(this.repeatContext());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngOnInit() {\n    this.store.set(this.repeatContext());\n  }\n}\n","import { fastClone } from '../functions/fast-clone';\nexport type SizeName = 'large' | 'medium' | 'small' | 'xsmall';\ninterface Size {\n  min: number;\n  default: number;\n  max: number;\n}\nconst SIZES: Record<SizeName, Size> = {\n  xsmall: {\n    min: 0,\n    default: 160,\n    max: 320\n  },\n  small: {\n    min: 321,\n    default: 321,\n    max: 640\n  },\n  medium: {\n    min: 641,\n    default: 642,\n    max: 991\n  },\n  large: {\n    min: 990,\n    default: 991,\n    max: 1200\n  }\n};\nexport const getMaxWidthQueryForSize = (size: SizeName, sizeValues = SIZES) => `@media (max-width: ${sizeValues[size].max}px)`;\ninterface Breakpoints {\n  xsmall?: number;\n  small?: number;\n  medium?: number;\n}\nexport const getSizesForBreakpoints = (breakpoints: Breakpoints) => {\n  const newSizes = fastClone(SIZES); // Note: this helps to get a deep clone of fields like small, medium etc\n\n  if (!breakpoints) {\n    return newSizes;\n  }\n  const {\n    xsmall,\n    small,\n    medium\n  } = breakpoints;\n  if (xsmall) {\n    const xsmallMin = Math.floor(xsmall / 2);\n    newSizes.xsmall = {\n      max: xsmall,\n      min: xsmallMin,\n      default: xsmallMin + 1\n    };\n  }\n  if (!small || !medium) {\n    return newSizes;\n  }\n  const smallMin = xsmall ? newSizes.xsmall.max + 1 : Math.floor(small / 2);\n  newSizes.small = {\n    max: small,\n    min: smallMin,\n    default: smallMin + 1\n  };\n  const mediumMin = newSizes.small.max + 1;\n  newSizes.medium = {\n    max: medium,\n    min: mediumMin,\n    default: mediumMin + 1\n  };\n  const largeMin = newSizes.medium.max + 1;\n  newSizes.large = {\n    max: 2000,\n    // TODO: decide upper limit\n    min: largeMin,\n    default: largeMin + 1\n  };\n  return newSizes;\n}","import { CommonModule } from '@angular/common';\n// fails because type imports cannot be injected\n// eslint-disable-next-line @typescript-eslint/consistent-type-imports\nimport { Component, ElementRef, input, Renderer2 } from '@angular/core';\n\ninterface Props {\n  styles: string;\n  id: string;\n  nonce: string;\n}\n\n@Component({\n  selector: 'inlined-styles, InlinedStyles',\n  template: ``,\n  standalone: true,\n  imports: [CommonModule],\n  styles: [\n    `\n      :host {\n        display: contents;\n      }\n    `,\n  ],\n})\nexport default class InlinedStyles {\n  styles = input.required<Props['styles']>();\n  id = input.required<Props['id']>();\n  nonce = input.required<Props['nonce']>();\n\n  styleElement!: HTMLStyleElement;\n\n  constructor(\n    private renderer: Renderer2,\n    private elRef: ElementRef\n  ) {}\n\n  ngOnChanges(changes) {\n    if (changes.styles) {\n      if (this.styleElement) {\n        this.styleElement.textContent = this.styles();\n      } else {\n        this.styleElement = this.renderer.createElement('style');\n        this.renderer.setAttribute(this.styleElement, 'data-id', this.id());\n        this.renderer.appendChild(\n          this.styleElement,\n          this.renderer.createText(this.styles())\n        );\n        this.renderer.setAttribute(this.styleElement, 'nonce', this.nonce());\n        this.renderer.appendChild(this.elRef.nativeElement, this.styleElement);\n      }\n    }\n  }\n}\n","import { Component, input, effect, computed, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nexport type BlockStylesProps = {\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n};\n\nimport {\n  getMaxWidthQueryForSize,\n  getSizesForBreakpoints,\n} from \"../../../constants/device-sizes\";\nimport { TARGET } from \"../../../constants/target\";\nimport type { BuilderContextInterface } from \"../../../context/types\";\nimport { camelToKebabCase } from \"../../../functions/camel-to-kebab-case\";\nimport { createCssClass } from \"../../../helpers/css\";\nimport { checkIsDefined } from \"../../../helpers/nullable\";\nimport type { BuilderBlock } from \"../../../types/builder-block\";\nimport InlinedStyles from \"../../inlined-styles\";\n\n@Component({\n  selector: \"block-styles\",\n  standalone: true,\n  imports: [CommonModule, InlinedStyles],\n  template: `\n    @if(TARGET !== 'reactNative' && css() && canShowBlock()){\n    <inlined-styles\n      id=\"builderio-block\"\n      [styles]=\"css()\"\n      [nonce]=\"context().nonce\"\n    ></inlined-styles>\n    }\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class BlockStyles {\n  protected readonly TARGET = TARGET;\n\n  block: InputSignal<BlockStylesProps[\"block\"]> =\n    input<BlockStylesProps[\"block\"]>();\n  context: InputSignal<BlockStylesProps[\"context\"]> =\n    input<BlockStylesProps[\"context\"]>();\n\n  canShowBlock = computed(() => {\n    const processedBlock = this.block();\n    // only render styles for blocks that are visible\n    if (checkIsDefined(processedBlock.hide)) {\n      return !processedBlock.hide;\n    }\n    if (checkIsDefined(processedBlock.show)) {\n      return processedBlock.show;\n    }\n    return true;\n  });\n  css = computed(() => {\n    const processedBlock = this.block();\n    const styles = processedBlock.responsiveStyles;\n    const content = this.context().content;\n    const sizesWithUpdatedBreakpoints = getSizesForBreakpoints(\n      content?.meta?.breakpoints || {}\n    );\n    const contentHasXSmallBreakpoint = Boolean(\n      content?.meta?.breakpoints?.xsmall\n    );\n    const largeStyles = styles?.large;\n    const mediumStyles = styles?.medium;\n    const smallStyles = styles?.small;\n    const xsmallStyles = styles?.xsmall;\n    const className = processedBlock.id;\n    if (!className) {\n      return \"\";\n    }\n    const largeStylesClass = largeStyles\n      ? createCssClass({\n          className,\n          styles: largeStyles,\n        })\n      : \"\";\n    const mediumStylesClass = mediumStyles\n      ? createCssClass({\n          className,\n          styles: mediumStyles,\n          mediaQuery: getMaxWidthQueryForSize(\n            \"medium\",\n            sizesWithUpdatedBreakpoints\n          ),\n        })\n      : \"\";\n    const smallStylesClass = smallStyles\n      ? createCssClass({\n          className,\n          styles: smallStyles,\n          mediaQuery: getMaxWidthQueryForSize(\n            \"small\",\n            sizesWithUpdatedBreakpoints\n          ),\n        })\n      : \"\";\n    const xsmallStylesClass =\n      xsmallStyles && contentHasXSmallBreakpoint\n        ? createCssClass({\n            className,\n            styles: xsmallStyles,\n            mediaQuery: getMaxWidthQueryForSize(\n              \"xsmall\",\n              sizesWithUpdatedBreakpoints\n            ),\n          })\n        : \"\";\n    const hoverAnimation =\n      processedBlock.animations &&\n      processedBlock.animations.find((item) => item.trigger === \"hover\");\n    let hoverStylesClass = \"\";\n    if (hoverAnimation) {\n      const hoverStyles = hoverAnimation.steps?.[1]?.styles || {};\n      hoverStylesClass =\n        createCssClass({\n          className: `${className}:hover`,\n          styles: {\n            ...hoverStyles,\n            transition: `all ${hoverAnimation.duration}s ${camelToKebabCase(\n              hoverAnimation.easing\n            )}`,\n            transitionDelay: hoverAnimation.delay\n              ? `${hoverAnimation.delay}s`\n              : \"0s\",\n          },\n        }) || \"\";\n    }\n    return [\n      largeStylesClass,\n      mediumStylesClass,\n      smallStylesClass,\n      xsmallStylesClass,\n      hoverStylesClass,\n    ].join(\" \");\n  });\n\n  constructor() {}\n}\n","import { Component, input, effect, computed, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ntype LiveEditBlockStylesProps = {\n  id?: any;\n  contextProvider: BuilderContextInterface;\n};\n\nimport {\n  getMaxWidthQueryForSize,\n  getSizesForBreakpoints,\n} from \"../../../constants/device-sizes\";\nimport { TARGET } from \"../../../constants/target\";\nimport { camelToKebabCase } from \"../../../functions/camel-to-kebab-case\";\nimport { getProcessedBlock } from \"../../../functions/get-processed-block\";\nimport { createCssClass } from \"../../../helpers/css\";\nimport { findBlockById } from \"../../../helpers/find-block\";\nimport { checkIsDefined } from \"../../../helpers/nullable\";\nimport type {\n  BuilderBlock,\n  BuilderContextInterface,\n} from \"../../../server-index\";\nimport InlinedStyles from \"../../inlined-styles\";\n\n@Component({\n  selector: \"live-edit-block-styles\",\n  standalone: true,\n  imports: [CommonModule, InlinedStyles],\n  template: `\n    @if(TARGET === 'rsc' && css() && canShowBlock()){\n    <inlined-styles\n      id=\"builderio-block\"\n      [styles]=\"css()\"\n      [nonce]=\"contextProvider().nonce\"\n    ></inlined-styles>\n    }\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class LiveEditBlockStyles {\n  protected readonly TARGET = TARGET;\n\n  contextProvider: InputSignal<LiveEditBlockStylesProps[\"contextProvider\"]> =\n    input<LiveEditBlockStylesProps[\"contextProvider\"]>();\n  id: InputSignal<LiveEditBlockStylesProps[\"id\"]> =\n    input<LiveEditBlockStylesProps[\"id\"]>();\n\n  block = computed(() => {\n    return findBlockById(this.contextProvider().content!, this.id());\n  });\n  processedBlock = computed(() => {\n    const foundBlock = this.block();\n    if (!foundBlock) {\n      return null;\n    }\n    const blockToUse = foundBlock.repeat?.collection\n      ? foundBlock\n      : getProcessedBlock({\n          block: foundBlock,\n          localState: this.contextProvider().localState,\n          rootState: this.contextProvider().rootState,\n          rootSetState: this.contextProvider().rootSetState,\n          context: this.contextProvider().context,\n        });\n    return blockToUse;\n  });\n  canShowBlock = computed(() => {\n    if (checkIsDefined(this.processedBlock()?.hide)) {\n      return !this.processedBlock()?.hide;\n    }\n    if (checkIsDefined(this.processedBlock()?.show)) {\n      return this.processedBlock()?.show;\n    }\n    return true;\n  });\n  css = computed(() => {\n    const styles = this.processedBlock()?.responsiveStyles;\n    const content = this.contextProvider().content;\n    const sizesWithUpdatedBreakpoints = getSizesForBreakpoints(\n      content?.meta?.breakpoints || {}\n    );\n    const contentHasXSmallBreakpoint = Boolean(\n      content?.meta?.breakpoints?.xsmall\n    );\n    const largeStyles = styles?.large;\n    const mediumStyles = styles?.medium;\n    const smallStyles = styles?.small;\n    const xsmallStyles = styles?.xsmall;\n    const className = this.processedBlock()?.id;\n    if (!className) {\n      return \"\";\n    }\n    const largeStylesClass = largeStyles\n      ? createCssClass({\n          className,\n          styles: largeStyles,\n        })\n      : \"\";\n    const mediumStylesClass = mediumStyles\n      ? createCssClass({\n          className,\n          styles: mediumStyles,\n          mediaQuery: getMaxWidthQueryForSize(\n            \"medium\",\n            sizesWithUpdatedBreakpoints\n          ),\n        })\n      : \"\";\n    const smallStylesClass = smallStyles\n      ? createCssClass({\n          className,\n          styles: smallStyles,\n          mediaQuery: getMaxWidthQueryForSize(\n            \"small\",\n            sizesWithUpdatedBreakpoints\n          ),\n        })\n      : \"\";\n    const xsmallStylesClass =\n      xsmallStyles && contentHasXSmallBreakpoint\n        ? createCssClass({\n            className,\n            styles: xsmallStyles,\n            mediaQuery: getMaxWidthQueryForSize(\n              \"xsmall\",\n              sizesWithUpdatedBreakpoints\n            ),\n          })\n        : \"\";\n    const hoverAnimation =\n      this.processedBlock().animations &&\n      this.processedBlock().animations.find((item) => item.trigger === \"hover\");\n    let hoverStylesClass = \"\";\n    if (hoverAnimation) {\n      const hoverStyles = hoverAnimation.steps?.[1]?.styles || {};\n      hoverStylesClass =\n        createCssClass({\n          className: `${className}:hover`,\n          styles: {\n            ...hoverStyles,\n            transition: `all ${hoverAnimation.duration}s ${camelToKebabCase(\n              hoverAnimation.easing\n            )}`,\n            transitionDelay: hoverAnimation.delay\n              ? `${hoverAnimation.delay}s`\n              : \"0s\",\n          },\n        }) || \"\";\n    }\n    return [\n      largeStylesClass,\n      mediumStylesClass,\n      smallStylesClass,\n      xsmallStylesClass,\n      hoverStylesClass,\n    ].join(\" \");\n  });\n\n  constructor() {}\n}\n","import { Component, input, effect, signal, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ntype StyleWrapperProps = {\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n  id?: string;\n};\n\nimport { TARGET } from \"../../../constants/target\";\nimport { BuilderContext } from \"../../../context/index\";\nimport {\n  isEditing,\n  BuilderBlock,\n  BuilderContextInterface,\n} from \"../../../server-index\";\nimport BlockStyles from \"./block-styles\";\nimport LiveEditBlockStyles from \"./live-edit-block-styles\";\n\n@Component({\n  selector: \"style-wrapper\",\n  standalone: true,\n  imports: [CommonModule, BlockStyles, LiveEditBlockStyles],\n  template: `\n    @if(isHydrated()){ @if(TARGET === 'rsc' && isClientEditing()){\n    <live-edit-block-styles\n      [id]=\"block().id\"\n      [contextProvider]=\"contextProvider\"\n    ></live-edit-block-styles>\n    }@else{\n    <block-styles [block]=\"block()\" [context]=\"context()\"></block-styles>\n    } }@else{\n    <block-styles [block]=\"block()\" [context]=\"context()\"></block-styles>\n    }\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class StyleWrapper {\n  protected readonly TARGET = TARGET;\n\n  block: InputSignal<StyleWrapperProps[\"block\"]> =\n    input<StyleWrapperProps[\"block\"]>();\n  context: InputSignal<StyleWrapperProps[\"context\"]> =\n    input<StyleWrapperProps[\"context\"]>();\n\n  isClientEditing = signal(false);\n  isHydrated = signal(false);\n\n  constructor(public contextProvider: BuilderContext) {}\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n    }\n  }\n}\n","import {\n  Component,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nexport type BlockProps = {\n  block: BuilderBlock;\n  context: BuilderContextInterface;\n  registeredComponents: RegisteredComponents;\n  linkComponent: any;\n};\n\nimport { TARGET } from \"../../constants/target\";\nimport type {\n  BuilderContextInterface,\n  RegisteredComponents,\n} from \"../../context/types\";\nimport { getBlockComponentOptions } from \"../../functions/get-block-component-options\";\nimport { getProcessedBlock } from \"../../functions/get-processed-block\";\nimport { isPreviewing } from \"../../server-index\";\nimport type { BuilderBlock } from \"../../types/builder-block\";\nimport DynamicDiv from \"../dynamic-div\";\nimport { bindAnimations } from \"./animator\";\nimport {\n  generateKey,\n  getComponent,\n  getInheritedStyles,\n  getRepeatItemData,\n  provideBuilderBlock,\n  provideBuilderContext,\n  provideLinkComponent,\n  provideRegisteredComponents,\n} from \"./block.helpers\";\nimport BlockWrapper from \"./components/block-wrapper\";\nimport type { ComponentProps } from \"./components/component-ref/component-ref.helpers\";\nimport ComponentRef from \"./components/component-ref/component-ref\";\nimport RepeatedBlock from \"./components/repeated-block\";\nimport StyleWrapper from \"./components/style-wrapper\";\n\n@Component({\n  selector: \"block\",\n  standalone: true,\n  imports: [\n    CommonModule,\n    StyleWrapper,\n    RepeatedBlock,\n    ComponentRef,\n    BlockWrapper,\n    Block,\n  ],\n  template: `\n    @if(canShowBlock()){\n    <style-wrapper\n      [block]=\"processedBlock()\"\n      [context]=\"context()\"\n      [id]=\"block().id\"\n    ></style-wrapper>\n    @if(!blockComponent()?.noWrap){ @if(!repeatItem()){\n    <block-wrapper\n      [Wrapper]=\"Tag()\"\n      [block]=\"processedBlock()\"\n      [context]=\"context()\"\n    >\n      <component-ref\n        [componentRef]=\"componentRefProps().componentRef\"\n        [componentOptions]=\"componentRefProps().componentOptions\"\n        [blockChildren]=\"componentRefProps().blockChildren\"\n        [context]=\"componentRefProps().context\"\n        [registeredComponents]=\"componentRefProps().registeredComponents\"\n        [linkComponent]=\"componentRefProps().linkComponent\"\n        [builderBlock]=\"componentRefProps().builderBlock\"\n        [includeBlockProps]=\"componentRefProps().includeBlockProps\"\n        [isInteractive]=\"componentRefProps().isInteractive\"\n      ></component-ref>\n\n      @for (child of childrenWithoutParentComponent();track trackByChild0(i,\n      child);let i = $index) {\n      <block\n        [block]=\"child\"\n        [registeredComponents]=\"registeredComponents()\"\n        [linkComponent]=\"linkComponent()\"\n        [context]=\"context()\"\n      ></block>\n      }\n    </block-wrapper>\n    }@else{ @for (data of repeatItem();track trackByData1(index, data);let index\n    = $index) {\n    <repeated-block\n      [repeatContext]=\"data.context\"\n      [block]=\"data.block\"\n      [registeredComponents]=\"registeredComponents()\"\n      [linkComponent]=\"linkComponent()\"\n    ></repeated-block>\n    } } }@else{ @if(!repeatItem()){\n    <component-ref\n      [componentRef]=\"componentRefProps().componentRef\"\n      [componentOptions]=\"componentRefProps().componentOptions\"\n      [blockChildren]=\"componentRefProps().blockChildren\"\n      [context]=\"componentRefProps().context\"\n      [registeredComponents]=\"componentRefProps().registeredComponents\"\n      [linkComponent]=\"componentRefProps().linkComponent\"\n      [builderBlock]=\"componentRefProps().builderBlock\"\n      [includeBlockProps]=\"componentRefProps().includeBlockProps\"\n      [isInteractive]=\"componentRefProps().isInteractive\"\n    ></component-ref>\n    }@else{ @for (data of repeatItem();track trackByData2(index, data);let index\n    = $index) {\n    <repeated-block\n      [repeatContext]=\"data.context\"\n      [block]=\"data.block\"\n      [registeredComponents]=\"registeredComponents()\"\n      [linkComponent]=\"linkComponent()\"\n    ></repeated-block>\n    } } } }\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Block {\n  protected readonly generateKey = generateKey;\n\n  block: InputSignal<BlockProps[\"block\"]> = input<BlockProps[\"block\"]>();\n  context: InputSignal<BlockProps[\"context\"]> = input<BlockProps[\"context\"]>();\n  registeredComponents: InputSignal<BlockProps[\"registeredComponents\"]> =\n    input<BlockProps[\"registeredComponents\"]>();\n  linkComponent: InputSignal<BlockProps[\"linkComponent\"]> =\n    input<BlockProps[\"linkComponent\"]>();\n\n  _processedBlock = signal({\n    value: null as BuilderBlock | null,\n    update: false,\n  });\n\n  repeatItem = computed(() => {\n    return getRepeatItemData({\n      block: this.block(),\n      context: this.context(),\n    });\n  });\n  processedBlock = computed(() => {\n    const blockToUse = this.block().repeat?.collection\n      ? this.block()\n      : getProcessedBlock({\n          block: this.block(),\n          localState: this.context().localState,\n          rootState: this.context().rootState,\n          rootSetState: this.context().rootSetState,\n          context: this.context().context,\n        });\n    return blockToUse;\n  });\n  blockComponent = computed(() => {\n    return getComponent({\n      block: this.processedBlock(),\n      registeredComponents: this.registeredComponents(),\n      model: this.context().model,\n    });\n  });\n  Tag = computed(() => {\n    const shouldUseLink =\n      this.block().tagName === \"a\" ||\n      this.processedBlock().properties?.href ||\n      this.processedBlock().href;\n    if (shouldUseLink) {\n      return this.linkComponent() || \"a\";\n    }\n    return this.block().tagName || DynamicDiv;\n  });\n  canShowBlock = computed(() => {\n    if (this.block().repeat?.collection) {\n      if (this.repeatItem()?.length) return true;\n      return false;\n    }\n    const shouldHide =\n      \"hide\" in this.processedBlock() ? this.processedBlock().hide : false;\n    const shouldShow =\n      \"show\" in this.processedBlock() ? this.processedBlock().show : true;\n    return shouldShow && !shouldHide;\n  });\n  childrenWithoutParentComponent = computed(() => {\n    /**\n     * When there is no `componentRef`, there might still be children that need to be rendered. In this case,\n     * we render them outside of `componentRef`.\n     * NOTE: We make sure not to render this if `repeatItemData` is non-null, because that means we are rendering an array of\n     * blocks, and the children will be repeated within those blocks.\n     */\n    const shouldRenderChildrenOutsideRef =\n      !this.blockComponent()?.component && !this.repeatItem();\n    return shouldRenderChildrenOutsideRef\n      ? this.processedBlock().children ?? []\n      : [];\n  });\n  componentRefProps = computed(() => {\n    return {\n      blockChildren: this.processedBlock().children ?? [],\n      componentRef: this.blockComponent()?.component,\n      componentOptions: {\n        ...getBlockComponentOptions(this.processedBlock(), this.context()),\n        ...provideBuilderBlock(this.blockComponent(), this.processedBlock()),\n        ...provideBuilderContext(this.blockComponent(), this.context()),\n        ...provideLinkComponent(this.blockComponent(), this.linkComponent()),\n        ...provideRegisteredComponents(\n          this.blockComponent(),\n          this.registeredComponents(),\n          this.context().model\n        ),\n      },\n      context: this.context(),\n      linkComponent: this.linkComponent(),\n      registeredComponents: this.registeredComponents(),\n      builderBlock: this.processedBlock(),\n      includeBlockProps: this.blockComponent()?.noWrap === true,\n      isInteractive: !(this.blockComponent()?.isRSC && TARGET === \"rsc\"),\n    };\n  });\n  trackByChild0(_: number, child: any) {\n    return child.id;\n  }\n  trackByData1(index: number, data: any) {\n    return generateKey(index);\n  }\n  trackByData2(index: number, data: any) {\n    return generateKey(index);\n  }\n\n  constructor() {}\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n      const blockId = this.processedBlock().id;\n      const animations = this.processedBlock().animations;\n      if (animations && blockId) {\n        // in Angular, the DynamicDiv sets attributes (builder-id) on the element late (ngAfterViewInit)\n        // so we need to wait for them to be attached to the DOM before calling this else we'll not find the element\n        requestAnimationFrame(() => {\n          bindAnimations(\n            animations.map((animation) => ({\n              ...animation,\n              elementId: blockId,\n            }))\n          );\n        });\n      }\n    }\n  }\n}\n","import {\n  Component,\n  viewChild,\n  ElementRef,\n  ViewContainerRef,\n  TemplateRef,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nexport type BlocksWrapperProps = {\n  blocks: BuilderBlock[] | undefined;\n  parent: string | undefined;\n  path: string | undefined;\n  styleProp: Record<string, any> | undefined;\n  /**\n   * The element that wraps each list of blocks. Defaults to a `div` element ('ScrollView' in React Native).\n   */\n  BlocksWrapper: any;\n  /**\n   * Props to be applied to the wrapping element of blocks. Can be set in two ways:\n   * 1. Globally via `<Content blocksWrapperProps={{...}}/>` - applies to all blocks wrappers in the Content\n   * 2. Locally via `<Blocks BlocksWrapperProps={{...}}/>` - applies only to this specific blocks instance and overrides global props\n   *\n   * For merging both global and local props, spread the context props before adding your own:\n   * ```\n   * <Blocks\n   *   BlocksWrapperProps={{\n   *     ...builderContext.BlocksWrapperProps,\n   *     'data-test-id': 'my-test-id'\n   *   }}\n   * />\n   * ```\n   */\n  BlocksWrapperProps: any;\n  children?: any;\n  classNameProp?: string;\n};\n\nimport { isEditing } from \"../../functions/is-editing\";\nimport type { BuilderBlock } from \"../../types/builder-block\";\n\n@Component({\n  selector: \"blocks-wrapper\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <ng-template #blockswrapperTemplate><ng-content></ng-content></ng-template>\n    <ng-container\n      *ngComponentOutlet=\"\n              BlocksWrapper();\n        inputs: dynamicProps_d6h9d();\n              content: myContent();\n              \"\n    ></ng-container>\n  `,\n  styles: `:host { display: contents; }\n        .this-blocks-wrapper {\n          display: flex;\n          flex-direction: column;\n          align-items: stretch;\n        }\n`,\n})\nexport default class BlocksWrapper {\n  myContent = signal<any[]>([]);\n  blockswrapperTemplateRef = viewChild<TemplateRef<any>>(\n    \"blockswrapperTemplate\"\n  );\n\n  blocks: InputSignal<BlocksWrapperProps[\"blocks\"]> =\n    input<BlocksWrapperProps[\"blocks\"]>();\n  classNameProp: InputSignal<BlocksWrapperProps[\"classNameProp\"]> =\n    input<BlocksWrapperProps[\"classNameProp\"]>();\n  path: InputSignal<BlocksWrapperProps[\"path\"]> =\n    input<BlocksWrapperProps[\"path\"]>();\n  parent: InputSignal<BlocksWrapperProps[\"parent\"]> =\n    input<BlocksWrapperProps[\"parent\"]>();\n  styleProp: InputSignal<BlocksWrapperProps[\"styleProp\"]> =\n    input<BlocksWrapperProps[\"styleProp\"]>();\n  BlocksWrapperProps: InputSignal<BlocksWrapperProps[\"BlocksWrapperProps\"]> =\n    input<BlocksWrapperProps[\"BlocksWrapperProps\"]>();\n  BlocksWrapper: InputSignal<BlocksWrapperProps[\"BlocksWrapper\"]> =\n    input<BlocksWrapperProps[\"BlocksWrapper\"]>();\n\n  blocksWrapperRef = viewChild<ElementRef>(\"blocksWrapperRef\");\n\n  shouldUpdate = signal(false);\n\n  className = computed(() => {\n    return [\n      \"builder-blocks\",\n      !this.blocks()?.length ? \"no-blocks\" : \"\",\n      this.classNameProp(),\n    ]\n      .filter(Boolean)\n      .join(\" \");\n  });\n  dataPath = computed(() => {\n    if (!this.path()) {\n      return undefined;\n    }\n    const thisPrefix = \"this.\";\n    const pathPrefix = \"component.options.\";\n    return this.path().startsWith(thisPrefix)\n      ? this.path().replace(thisPrefix, \"\")\n      : this.path().startsWith(pathPrefix)\n      ? this.path()\n      : `${pathPrefix}${this.path() || \"\"}`;\n  });\n  dynamicProps_d6h9d = computed(() => {\n    return {\n      ref: this.blocksWrapperRef(),\n      class: this.className() + \" this-blocks-wrapper\",\n      \"builder-path\": this.dataPath(),\n      \"builder-parent-id\": this.parent(),\n      style: this.styleProp(),\n      onClick: this.onClick.bind(this),\n      onMouseEnter: this.onMouseEnter.bind(this),\n      onKeyPress: this.onClick.bind(this),\n      ...this.BlocksWrapperProps(),\n    };\n  });\n  onClick() {\n    if (isEditing() && !this.blocks()?.length) {\n      window.parent?.postMessage(\n        {\n          type: \"builder.clickEmptyBlocks\",\n          data: {\n            parentElementId: this.parent(),\n            dataPath: this.dataPath(),\n          },\n        },\n        \"*\"\n      );\n    }\n  }\n  onMouseEnter() {\n    if (isEditing() && !this.blocks()?.length) {\n      window.parent?.postMessage(\n        {\n          type: \"builder.hoverEmptyBlocks\",\n          data: {\n            parentElementId: this.parent(),\n            dataPath: this.dataPath(),\n          },\n        },\n        \"*\"\n      );\n    }\n  }\n\n  constructor(private viewContainer: ViewContainerRef) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.blocks();\n          // ---\n\n          this.shouldUpdate.set(true);\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  _updateView() {\n    this.myContent.set([\n      this.viewContainer.createEmbeddedView(this.blockswrapperTemplateRef())\n        .rootNodes,\n    ]);\n  }\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n    }\n  }\n  ngAfterContentInit() {\n    this._updateView();\n  }\n  ngAfterContentChecked() {\n    if (this.shouldUpdate()) {\n      this._updateView();\n      this.shouldUpdate.set(false);\n    }\n  }\n}\n","import { Component, input, effect, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport BuilderContext from \"../../context/builder.context\";\nimport ComponentsContext from \"../../context/components.context\";\nimport Block from \"../block/block\";\nimport BlocksWrapper from \"./blocks-wrapper\";\nimport type { BlocksProps } from \"./blocks.types\";\n\n@Component({\n  selector: \"blocks\",\n  standalone: true,\n  imports: [CommonModule, BlocksWrapper, Block],\n  template: `\n    <blocks-wrapper\n      [blocks]=\"blocks()\"\n      [parent]=\"parent()\"\n      [path]=\"path()\"\n      [styleProp]=\"styleProp()\"\n      [BlocksWrapperProps]=\"BlocksWrapperProps() || context()?.BlocksWrapperProps || builderContext?.BlocksWrapperProps\"\n      [classNameProp]=\"className()\"\n      [BlocksWrapper]=\"context()?.BlocksWrapper || builderContext?.BlocksWrapper\"\n    >\n      <ng-content></ng-content>\n      @if(blocks()){ @for (block of blocks();track trackByBlock0(i, block);let i\n      = $index) {\n      <block\n        [block]=\"block\"\n        [linkComponent]=\"linkComponent()\"\n        [context]=\"context() || builderContext\"\n        [registeredComponents]=\"registeredComponents() || componentsContext?.registeredComponents\"\n      ></block>\n      } }\n    </blocks-wrapper>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Blocks {\n  protected readonly BlocksWrapper = BlocksWrapper;\n\n  blocks: InputSignal<BlocksProps[\"blocks\"]> = input<BlocksProps[\"blocks\"]>();\n  parent: InputSignal<BlocksProps[\"parent\"]> = input<BlocksProps[\"parent\"]>();\n  path: InputSignal<BlocksProps[\"path\"]> = input<BlocksProps[\"path\"]>();\n  styleProp: InputSignal<BlocksProps[\"styleProp\"]> =\n    input<BlocksProps[\"styleProp\"]>();\n  BlocksWrapperProps: InputSignal<BlocksProps[\"BlocksWrapperProps\"]> =\n    input<BlocksProps[\"BlocksWrapperProps\"]>();\n  context: InputSignal<BlocksProps[\"context\"]> =\n    input<BlocksProps[\"context\"]>();\n  className: InputSignal<BlocksProps[\"className\"]> =\n    input<BlocksProps[\"className\"]>();\n  linkComponent: InputSignal<BlocksProps[\"linkComponent\"]> =\n    input<BlocksProps[\"linkComponent\"]>();\n  registeredComponents: InputSignal<BlocksProps[\"registeredComponents\"]> =\n    input<BlocksProps[\"registeredComponents\"]>();\n\n  trackByBlock0(_: number, block: any) {\n    return block.id;\n  }\n\n  constructor(\n    public builderContext: BuilderContext,\n    public componentsContext: ComponentsContext\n  ) {}\n}\n","export const getColumnsClass = (id?: string) => {\n  return `builder-columns ${id}-breakpoints`;\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ntype CSSVal = string | number;\n\nimport Blocks from \"../../components/blocks/blocks\";\nimport DynamicDiv from \"../../components/dynamic-div\";\nimport DynamicRenderer from \"../../components/dynamic-renderer/dynamic-renderer\";\nimport InlinedStyles from \"../../components/inlined-styles\";\nimport type { SizeName } from \"../../constants/device-sizes\";\nimport { getSizesForBreakpoints } from \"../../constants/device-sizes\";\nimport { TARGET } from \"../../constants/target\";\nimport { deoptSignal } from \"../../functions/deopt\";\nimport { getClassPropName } from \"../../functions/get-class-prop-name\";\nimport { mapStyleObjToStrIfNeeded } from \"../../functions/get-style\";\nimport type { Dictionary } from \"../../types/typescript\";\nimport type { Column, ColumnProps } from \"./columns.types\";\nimport { getColumnsClass } from \"./helpers\";\n\n@Component({\n  selector: \"columns\",\n  standalone: true,\n  imports: [CommonModule, InlinedStyles, DynamicRenderer, Blocks],\n  template: `\n    <div\n      [class]=\"getColumnsClass(builderBlock()?.id) + ' div'\"\n      [ngStyle]=\"columnsCssVars()\"\n      #elRef0\n    >\n      @if(TARGET !== 'reactNative'){\n      <inlined-styles\n        id=\"builderio-columns\"\n        [styles]=\"columnsStyles()\"\n        [nonce]=\"builderContext().nonce\"\n      ></inlined-styles>\n      } @for (column of columns();track trackByColumn0(index, column);let index\n      = $index) {\n      <dynamic-renderer\n        [TagName]=\"getTagName(column)\"\n        [actionAttributes]=\"{}\"\n        [attributes]=\"getAttributes(column, index)\"\n      >\n        <blocks\n          [path]=\"templateStr_9tnc0u(column, index)\"\n          [parent]=\"builderBlock().id\"\n          [context]=\"builderContext()\"\n          [registeredComponents]=\"builderComponents()\"\n          [linkComponent]=\"builderLinkComponent()\"\n          [blocks]=\"column.blocks\"\n          [styleProp]=\"{\n          flexGrow: '1'\n        }\"\n        ></blocks>\n      </dynamic-renderer>\n      }\n    </div>\n  `,\n  styles: `:host { display: contents; }\n        .div {\n          display: flex;\n          line-height: normal;\n          height: 100%;\n        }\n`,\n})\nexport default class Columns {\n  protected readonly getColumnsClass = getColumnsClass;\n  protected readonly TARGET = TARGET;\n\n  space: InputSignal<ColumnProps[\"space\"]> = input<ColumnProps[\"space\"]>();\n  columns: InputSignal<ColumnProps[\"columns\"]> =\n    input<ColumnProps[\"columns\"]>();\n  stackColumnsAt: InputSignal<ColumnProps[\"stackColumnsAt\"]> =\n    input<ColumnProps[\"stackColumnsAt\"]>();\n  builderLinkComponent: InputSignal<ColumnProps[\"builderLinkComponent\"]> =\n    input<ColumnProps[\"builderLinkComponent\"]>();\n  reverseColumnsWhenStacked: InputSignal<\n    ColumnProps[\"reverseColumnsWhenStacked\"]\n  > = input<ColumnProps[\"reverseColumnsWhenStacked\"]>();\n  builderContext: InputSignal<ColumnProps[\"builderContext\"]> =\n    input<ColumnProps[\"builderContext\"]>();\n  builderBlock: InputSignal<ColumnProps[\"builderBlock\"]> =\n    input<ColumnProps[\"builderBlock\"]>();\n  builderComponents: InputSignal<ColumnProps[\"builderComponents\"]> =\n    input<ColumnProps[\"builderComponents\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  _listenerFns = new Map();\n\n  gutterSize = computed(() => {\n    return typeof this.space() === \"number\" ? this.space() || 0 : 20;\n  });\n  cols = computed(() => {\n    return this.columns() || [];\n  });\n  stackAt = computed(() => {\n    return this.stackColumnsAt() || \"tablet\";\n  });\n  flexDir = computed(() => {\n    return this.stackColumnsAt() === \"never\"\n      ? \"row\"\n      : this.reverseColumnsWhenStacked()\n      ? \"column-reverse\"\n      : \"column\";\n  });\n  getTagName(column: Column) {\n    return column.link ? this.builderLinkComponent() || \"a\" : DynamicDiv;\n  }\n  getWidth(index: number) {\n    return this.cols()[index]?.width || 100 / this.cols().length;\n  }\n  getColumnCssWidth(index: number) {\n    const width = this.getWidth(index);\n    const subtractWidth =\n      this.gutterSize() * (this.cols().length - 1) * (width / 100);\n    return `calc(${width}% - ${subtractWidth}px)`;\n  }\n  getTabletStyle({\n    stackedStyle,\n    desktopStyle,\n  }: {\n    stackedStyle: CSSVal;\n    desktopStyle: CSSVal;\n  }) {\n    return this.stackAt() === \"tablet\" ? stackedStyle : desktopStyle;\n  }\n  getMobileStyle({\n    stackedStyle,\n    desktopStyle,\n  }: {\n    stackedStyle: CSSVal;\n    desktopStyle: CSSVal;\n  }) {\n    return this.stackAt() === \"never\" ? desktopStyle : stackedStyle;\n  }\n  columnsCssVars() {\n    return {\n      \"--flex-dir\": this.flexDir(),\n      \"--flex-dir-tablet\": this.getTabletStyle({\n        stackedStyle: this.flexDir(),\n        desktopStyle: \"row\",\n      }),\n    } as Dictionary<string>;\n  }\n  columnCssVars(index: number) {\n    const gutter = index === 0 ? 0 : this.gutterSize();\n    const width = this.getColumnCssWidth(index);\n    const gutterPixels = `${gutter}px`;\n    const mobileWidth = \"100%\";\n    const mobileMarginLeft = 0;\n    const marginLeftKey = \"margin-left\";\n    const sharedStyles = {\n      display: \"flex\",\n      flexDirection: \"column\",\n      alignItems: \"stretch\",\n    };\n    return {\n      ...sharedStyles,\n      width,\n      [marginLeftKey]: gutterPixels,\n      \"--column-width-mobile\": this.getMobileStyle({\n        stackedStyle: mobileWidth,\n        desktopStyle: width,\n      }),\n      \"--column-margin-left-mobile\": this.getMobileStyle({\n        stackedStyle: mobileMarginLeft,\n        desktopStyle: gutterPixels,\n      }),\n      \"--column-width-tablet\": this.getTabletStyle({\n        stackedStyle: mobileWidth,\n        desktopStyle: width,\n      }),\n      \"--column-margin-left-tablet\": this.getTabletStyle({\n        stackedStyle: mobileMarginLeft,\n        desktopStyle: gutterPixels,\n      }),\n    } as Dictionary<string>;\n  }\n  getWidthForBreakpointSize(size: SizeName) {\n    const breakpointSizes = getSizesForBreakpoints(\n      this.builderContext().content?.meta?.breakpoints || {}\n    );\n    return breakpointSizes[size].max;\n  }\n  columnsStyles() {\n    const childColumnDiv = `.${\n      this.builderBlock().id\n    }-breakpoints .builder-column:first-of-type`;\n    return `\n        @media (max-width: ${this.getWidthForBreakpointSize(\"medium\")}px) {\n          .${this.builderBlock().id}-breakpoints {\n            flex-direction: var(--flex-dir-tablet);\n            align-items: stretch;\n          }\n\n          ${childColumnDiv} {\n            width: var(--column-width-tablet) !important;\n            margin-left: var(--column-margin-left-tablet) !important;\n          }\n        }\n\n        @media (max-width: ${this.getWidthForBreakpointSize(\"small\")}px) {\n          .${this.builderBlock().id}-breakpoints {\n            flex-direction: var(--flex-dir);\n            align-items: stretch;\n          }\n\n          ${childColumnDiv} {\n            width: var(--column-width-mobile) !important;\n            margin-left: var(--column-margin-left-mobile) !important;\n          }\n        },\n      `;\n  }\n  getAttributes(column: any, index: number) {\n    return {\n      ...{},\n      ...(column.link\n        ? {\n            href: column.link,\n          }\n        : {}),\n      [getClassPropName()]: \"builder-column\",\n      style: mapStyleObjToStrIfNeeded(this.columnCssVars(index)),\n    };\n  }\n  templateStr_9tnc0u(column, index) {\n    return `columns.${index}.blocks`;\n  }\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n  trackByColumn0(index: number, column: any) {\n    return index;\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import { Component, effect } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport type { FragmentProps } from \"./fragment.types\";\n\n@Component({\n  selector: \"fragment-component\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <span><ng-content></ng-content></span>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class FragmentComponent {\n  constructor() {}\n}\n","// Taken from (and modified) the shopify theme script repo\n// https://github.com/Shopify/theme-scripts/blob/bcfb471f2a57d439e2f964a1bb65b67708cc90c3/packages/theme-images/images.js#L59\nfunction removeProtocol(path: string) {\n  return path.replace(/http(s)?:/, '');\n}\nfunction updateQueryParam(uri = '', key: string, value: string | number | boolean): string {\n  const re = new RegExp('([?&])' + key + '=.*?(&|$)', 'i');\n  const separator = uri.indexOf('?') !== -1 ? '&' : '?';\n  if (uri.match(re)) {\n    return uri.replace(re, '$1' + key + '=' + encodeURIComponent(value) + '$2');\n  }\n  return uri + separator + key + '=' + encodeURIComponent(value);\n}\nfunction getShopifyImageUrl(src: string, size: string): string | null {\n  if (!src || !src?.match(/cdn\\.shopify\\.com/) || !size) {\n    return src;\n  }\n  if (size === 'master') {\n    return removeProtocol(src);\n  }\n  const match = src.match(/(_\\d+x(\\d+)?)?(\\.(jpg|jpeg|gif|png|bmp|bitmap|tiff|tif)(\\?v=\\d+)?)/i);\n  if (match) {\n    const prefix = src.split(match[0]);\n    const suffix = match[3];\n    const useSize = size.match('x') ? size : `${size}x`;\n    return removeProtocol(`${prefix[0]}_${useSize}${suffix}`);\n  }\n  return null;\n}\nexport function getSrcSet(url: string): string {\n  if (!url) {\n    return url;\n  }\n  const sizes = [100, 200, 400, 800, 1200, 1600, 2000];\n  if (url.match(/builder\\.io/)) {\n    let srcUrl = url;\n    const widthInSrc = Number(url.split('?width=')[1]);\n    if (!isNaN(widthInSrc)) {\n      srcUrl = `${srcUrl} ${widthInSrc}w`;\n    }\n    return sizes.filter(size => size !== widthInSrc).map(size => `${updateQueryParam(url, 'width', size)} ${size}w`).concat([srcUrl]).join(', ');\n  }\n  if (url.match(/cdn\\.shopify\\.com/)) {\n    return sizes.map(size => [getShopifyImageUrl(url, `${size}x${size}`), size]).filter(([sizeUrl]) => !!sizeUrl).map(([sizeUrl, size]) => `${sizeUrl} ${size}w`).concat([url]).join(', ');\n  }\n  return url;\n}","import { Component, input, effect, computed, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { getSrcSet } from \"./image.helpers\";\nimport type { ImageProps } from \"./image.types\";\n\n@Component({\n  selector: \"image\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <ng-container>\n      <picture>\n        @if(webpSrcSet()){\n        <source type=\"image/webp\" [attr.srcset]=\"webpSrcSet()\" />\n        }\n        <img\n          [attr.loading]=\"highPriority() ? 'eager' : 'lazy'\"\n          [attr.fetchpriority]=\"highPriority() ? 'high' : 'auto'\"\n          [attr.alt]=\"altText()\"\n          [attr.title]=\"title()\"\n          [attr.role]=\"altText() ? undefined : 'presentation'\"\n          [ngStyle]=\"objSpread_style_kr3gse()\"\n          [class]=\"'builder-image' + (className() ? ' ' + className() : '') + ' img'\"\n          [attr.src]=\"image()\"\n          [attr.srcset]=\"srcSetToUse()\"\n          [attr.sizes]=\"sizes()\"\n        />\n      </picture>\n      @if(aspectRatio() && !(builderBlock()?.children?.length && fitContent())){\n      <div\n        class=\"builder-image-sizer div\"\n        [ngStyle]=\"{\n          paddingTop: aspectRatio()! * 100 + '%'\n        }\"\n      ></div>\n      } @if(builderBlock()?.children?.length && fitContent()){\n      <ng-content></ng-content>\n      } @if(!fitContent() && builderBlock()?.children?.length){\n      <div class=\"div-2\"><ng-content></ng-content></div>\n      }\n    </ng-container>\n  `,\n  styles: `:host { display: contents; }\n        .img {\n          opacity: 1;\n          transition: opacity 0.2s ease-in-out;\n        }\n        .div {\n          width: 100%;\n          pointer-events: none;\n          font-size: 0;\n        }\n        .div-2 {\n          display: flex;\n          flex-direction: column;\n          align-items: stretch;\n          position: absolute;\n          top: 0;\n          left: 0;\n          width: 100%;\n          height: 100%;\n        }\n`,\n})\nexport default class Image {\n  image: InputSignal<ImageProps[\"image\"]> = input<ImageProps[\"image\"]>();\n  src: InputSignal<ImageProps[\"src\"]> = input<ImageProps[\"src\"]>();\n  srcset: InputSignal<ImageProps[\"srcset\"]> = input<ImageProps[\"srcset\"]>();\n  noWebp: InputSignal<ImageProps[\"noWebp\"]> = input<ImageProps[\"noWebp\"]>();\n  aspectRatio: InputSignal<ImageProps[\"aspectRatio\"]> =\n    input<ImageProps[\"aspectRatio\"]>();\n  highPriority: InputSignal<ImageProps[\"highPriority\"]> =\n    input<ImageProps[\"highPriority\"]>();\n  altText: InputSignal<ImageProps[\"altText\"]> = input<ImageProps[\"altText\"]>();\n  title: InputSignal<ImageProps[\"title\"]> = input<ImageProps[\"title\"]>();\n  backgroundPosition: InputSignal<ImageProps[\"backgroundPosition\"]> =\n    input<ImageProps[\"backgroundPosition\"]>();\n  backgroundSize: InputSignal<ImageProps[\"backgroundSize\"]> =\n    input<ImageProps[\"backgroundSize\"]>();\n  className: InputSignal<ImageProps[\"className\"]> =\n    input<ImageProps[\"className\"]>();\n  sizes: InputSignal<ImageProps[\"sizes\"]> = input<ImageProps[\"sizes\"]>();\n  builderBlock: InputSignal<ImageProps[\"builderBlock\"]> =\n    input<ImageProps[\"builderBlock\"]>();\n  fitContent: InputSignal<ImageProps[\"fitContent\"]> =\n    input<ImageProps[\"fitContent\"]>();\n\n  srcSetToUse = computed(() => {\n    const imageToUse = this.image() || this.src();\n    const url = imageToUse;\n    if (\n      !url ||\n      // We can auto add srcset for cdn.builder.io and shopify\n      // images, otherwise you can supply this prop manually\n      !(\n        typeof url === \"string\" &&\n        (url.match(/builder\\.io/) || url.match(/cdn\\.shopify\\.com/))\n      )\n    ) {\n      return this.srcset();\n    }\n    if (this.noWebp()) {\n      return undefined; // no need to add srcset to svg images\n    }\n    if (this.srcset() && this.image()?.includes(\"builder.io/api/v1/image\")) {\n      if (!this.srcset().includes(this.image().split(\"?\")[0])) {\n        console.debug(\"Removed given srcset\");\n        return getSrcSet(url);\n      }\n    } else if (this.image() && !this.srcset()) {\n      return getSrcSet(url);\n    }\n    return getSrcSet(url);\n  });\n  webpSrcSet = computed(() => {\n    if (this.srcSetToUse()?.match(/builder\\.io/) && !this.noWebp()) {\n      return this.srcSetToUse().replace(/\\?/g, \"?format=webp&\");\n    } else {\n      return \"\";\n    }\n  });\n  aspectRatioCss = computed(() => {\n    const aspectRatioStyles = {\n      position: \"absolute\",\n      height: \"100%\",\n      width: \"100%\",\n      left: \"0px\",\n      top: \"0px\",\n    } as const;\n    const out = this.aspectRatio() ? aspectRatioStyles : undefined;\n    return out;\n  });\n  objSpread_style_kr3gse = computed(() => {\n    return {\n      objectPosition: this.backgroundPosition() || \"center\",\n      objectFit: this.backgroundSize() || \"cover\",\n      ...this.aspectRatioCss(),\n    };\n  });\n\n  constructor() {}\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n    }\n  }\n}\n","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { filterAttrs } from \"../helpers\";\nimport type { SectionProps } from \"./section.types\";\nimport { setAttrs } from \"../helpers\";\n\n@Component({\n  selector: \"section-component\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <section\n      #elRef0\n      [ngStyle]=\"{\n          width: '100%',\n          alignSelf: 'stretch',\n          flexGrow: 1,\n          boxSizing: 'border-box',\n          maxWidth: maxWidth() || 1200,\n          display: 'flex',\n          flexDirection: 'column',\n          alignItems: 'stretch',\n          marginLeft: 'auto',\n          marginRight: 'auto'\n        }\"\n    >\n      <ng-content></ng-content>\n    </section>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class SectionComponent {\n  attributes: InputSignal<SectionProps[\"attributes\"]> =\n    input<SectionProps[\"attributes\"]>();\n  maxWidth: InputSignal<SectionProps[\"maxWidth\"]> =\n    input<SectionProps[\"maxWidth\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  _listenerFns = new Map();\n\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n    this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","/**\n * WARNING: This file contains functions that get stringified and inlined into the HTML at build-time.\n * They cannot import anything.\n */\n\nimport type { Query, UserAttributes } from '../helpers';\nimport { type PersonalizationContainerProps } from '../personalization-container.types';\nexport function filterWithCustomTargeting(userAttributes: UserAttributes, query: Query[], startDate?: string, endDate?: string) {\n  function isString(val: unknown): val is string {\n    return typeof val === 'string';\n  }\n  function isNumber(val: unknown): val is number {\n    return typeof val === 'number';\n  }\n  function objectMatchesQuery(userattr: UserAttributes, query: Query): boolean {\n    const result = (() => {\n      const property = query.property;\n      const operator = query.operator;\n      let testValue = query.value;\n      if (query && query.property === 'urlPath' && query.value && typeof query.value === 'string' && query.value !== '/' && query.value.endsWith('/')) {\n        testValue = query.value.slice(0, -1);\n      }\n      if (!(property && operator)) {\n        return true;\n      }\n      if (Array.isArray(testValue)) {\n        if (operator === 'isNot') {\n          return testValue.every(val => objectMatchesQuery(userattr, {\n            property,\n            operator,\n            value: val\n          }));\n        }\n        return !!testValue.find(val => objectMatchesQuery(userattr, {\n          property,\n          operator,\n          value: val\n        }));\n      }\n      const value = userattr[property];\n      if (Array.isArray(value)) {\n        return value.includes(testValue);\n      }\n      switch (operator) {\n        case 'is':\n          return value === testValue;\n        case 'isNot':\n          return value !== testValue;\n        case 'contains':\n          return (isString(value) || Array.isArray(value)) && value.includes(String(testValue));\n        case 'startsWith':\n          return isString(value) && value.startsWith(String(testValue));\n        case 'endsWith':\n          return isString(value) && value.endsWith(String(testValue));\n        case 'greaterThan':\n          return isNumber(value) && isNumber(testValue) && value > testValue;\n        case 'lessThan':\n          return isNumber(value) && isNumber(testValue) && value < testValue;\n        case 'greaterThanOrEqualTo':\n          return isNumber(value) && isNumber(testValue) && value >= testValue;\n        case 'lessThanOrEqualTo':\n          return isNumber(value) && isNumber(testValue) && value <= testValue;\n        default:\n          return false;\n      }\n    })();\n    return result;\n  }\n  const item = {\n    query,\n    startDate,\n    endDate\n  };\n  const now = userAttributes.date && new Date(userAttributes.date) || new Date();\n  if (item.startDate && new Date(item.startDate) > now) {\n    return false;\n  } else if (item.endDate && new Date(item.endDate) < now) {\n    return false;\n  }\n  if (!item.query || !item.query.length) {\n    return true;\n  }\n  return item.query.every((filter: Query) => {\n    return objectMatchesQuery(userAttributes, filter);\n  });\n}\nexport function updateVisibilityStylesScript(variants: PersonalizationContainerProps['variants'], blockId: string, isHydrationTarget: boolean, locale?: string) {\n  function getCookie(name: string) {\n    const nameEQ = name + '=';\n    const ca = document.cookie.split(';');\n    for (let i = 0; i < ca.length; i++) {\n      let c = ca[i];\n      while (c.charAt(0) == ' ') c = c.substring(1, c.length);\n      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);\n    }\n    return null;\n  }\n  const visibilityStylesEl = (document.currentScript?.previousElementSibling as HTMLStyleElement);\n  if (!visibilityStylesEl) {\n    return;\n  }\n  if (isHydrationTarget) {\n    visibilityStylesEl.remove();\n    const currentScript = document.currentScript;\n    if (currentScript) {\n      currentScript.remove();\n    }\n  } else {\n    const attributes = JSON.parse(getCookie('builder.userAttributes') || '{}');\n    if (locale) {\n      attributes.locale = locale;\n    }\n    const winningVariantIndex = variants?.findIndex(function (variant) {\n      return (window as any).filterWithCustomTargeting(attributes, variant.query, variant.startDate, variant.endDate);\n    });\n    if (winningVariantIndex !== -1) {\n      let newStyleStr = variants?.map((_, index) => {\n        if (index === winningVariantIndex) return '';\n        return `div[data-variant-id=\"${blockId}-${index}\"] { display: none !important; } `;\n      }).join('') || '';\n      newStyleStr += `div[data-variant-id=\"${blockId}-default\"] { display: none !important; } `;\n      visibilityStylesEl.innerHTML = newStyleStr;\n    }\n  }\n}\nexport const PERSONALIZATION_SCRIPT = \"function getPersonalizedVariant(variants, blockId, isHydrationTarget, locale) {\\n  if (!navigator.cookieEnabled) {\\n    return;\\n  }\\n  function getCookie(name) {\\n    const nameEQ = name + '=';\\n    const ca = document.cookie.split(';');\\n    for (let i = 0; i < ca.length; i++) {\\n      let c = ca[i];\\n      while (c.charAt(0) == ' ') c = c.substring(1, c.length);\\n      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);\\n    }\\n    return null;\\n  }\\n  const attributes = JSON.parse(getCookie('builder.userAttributes') || '{}');\\n  if (locale) {\\n    attributes.locale = locale;\\n  }\\n  const winningVariantIndex = variants?.findIndex(function (variant) {\\n    return window.filterWithCustomTargeting(attributes, variant.query, variant.startDate, variant.endDate);\\n  });\\n  const parentDiv = document.currentScript?.parentElement;\\n  const variantId = parentDiv?.getAttribute('data-variant-id');\\n  const isDefaultVariant = variantId === `${blockId}-default`;\\n  const isWinningVariant = winningVariantIndex !== -1 && variantId === `${blockId}-${winningVariantIndex}` || winningVariantIndex === -1 && isDefaultVariant;\\n  if (isWinningVariant && !isDefaultVariant) {\\n    parentDiv?.removeAttribute('hidden');\\n    parentDiv?.removeAttribute('aria-hidden');\\n  } else if (!isWinningVariant && isDefaultVariant) {\\n    parentDiv?.setAttribute('hidden', 'true');\\n    parentDiv?.setAttribute('aria-hidden', 'true');\\n  }\\n  if (isHydrationTarget) {\\n    if (!isWinningVariant) {\\n      const itsStyleEl = parentDiv?.previousElementSibling;\\n      if (itsStyleEl) {\\n        itsStyleEl.remove();\\n      }\\n      parentDiv?.remove();\\n    }\\n    const thisScript = document.currentScript;\\n    if (thisScript) {\\n      thisScript.remove();\\n    }\\n  }\\n}\";\nexport const FILTER_WITH_CUSTOM_TARGETING_SCRIPT = \"function filterWithCustomTargeting(userAttributes, query, startDate, endDate) {\\n  function isString(val) {\\n    return typeof val === 'string';\\n  }\\n  function isNumber(val) {\\n    return typeof val === 'number';\\n  }\\n  function objectMatchesQuery(userattr, query) {\\n    const result = (() => {\\n      const property = query.property;\\n      const operator = query.operator;\\n      let testValue = query.value;\\n      if (query && query.property === 'urlPath' && query.value && typeof query.value === 'string' && query.value !== '/' && query.value.endsWith('/')) {\\n        testValue = query.value.slice(0, -1);\\n      }\\n      if (!(property && operator)) {\\n        return true;\\n      }\\n      if (Array.isArray(testValue)) {\\n        if (operator === 'isNot') {\\n          return testValue.every(val => objectMatchesQuery(userattr, {\\n            property,\\n            operator,\\n            value: val\\n          }));\\n        }\\n        return !!testValue.find(val => objectMatchesQuery(userattr, {\\n          property,\\n          operator,\\n          value: val\\n        }));\\n      }\\n      const value = userattr[property];\\n      if (Array.isArray(value)) {\\n        return value.includes(testValue);\\n      }\\n      switch (operator) {\\n        case 'is':\\n          return value === testValue;\\n        case 'isNot':\\n          return value !== testValue;\\n        case 'contains':\\n          return (isString(value) || Array.isArray(value)) && value.includes(String(testValue));\\n        case 'startsWith':\\n          return isString(value) && value.startsWith(String(testValue));\\n        case 'endsWith':\\n          return isString(value) && value.endsWith(String(testValue));\\n        case 'greaterThan':\\n          return isNumber(value) && isNumber(testValue) && value > testValue;\\n        case 'lessThan':\\n          return isNumber(value) && isNumber(testValue) && value < testValue;\\n        case 'greaterThanOrEqualTo':\\n          return isNumber(value) && isNumber(testValue) && value >= testValue;\\n        case 'lessThanOrEqualTo':\\n          return isNumber(value) && isNumber(testValue) && value <= testValue;\\n        default:\\n          return false;\\n      }\\n    })();\\n    return result;\\n  }\\n  const item = {\\n    query,\\n    startDate,\\n    endDate\\n  };\\n  const now = userAttributes.date && new Date(userAttributes.date) || new Date();\\n  if (item.startDate && new Date(item.startDate) > now) {\\n    return false;\\n  } else if (item.endDate && new Date(item.endDate) < now) {\\n    return false;\\n  }\\n  if (!item.query || !item.query.length) {\\n    return true;\\n  }\\n  return item.query.every(filter => {\\n    return objectMatchesQuery(userAttributes, filter);\\n  });\\n}\";\nexport const UPDATE_VISIBILITY_STYLES_SCRIPT = \"function updateVisibilityStylesScript(variants, blockId, isHydrationTarget, locale) {\\n  function getCookie(name) {\\n    const nameEQ = name + '=';\\n    const ca = document.cookie.split(';');\\n    for (let i = 0; i < ca.length; i++) {\\n      let c = ca[i];\\n      while (c.charAt(0) == ' ') c = c.substring(1, c.length);\\n      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);\\n    }\\n    return null;\\n  }\\n  const visibilityStylesEl = document.currentScript?.previousElementSibling;\\n  if (!visibilityStylesEl) {\\n    return;\\n  }\\n  if (isHydrationTarget) {\\n    visibilityStylesEl.remove();\\n    const currentScript = document.currentScript;\\n    if (currentScript) {\\n      currentScript.remove();\\n    }\\n  } else {\\n    const attributes = JSON.parse(getCookie('builder.userAttributes') || '{}');\\n    if (locale) {\\n      attributes.locale = locale;\\n    }\\n    const winningVariantIndex = variants?.findIndex(function (variant) {\\n      return window.filterWithCustomTargeting(attributes, variant.query, variant.startDate, variant.endDate);\\n    });\\n    if (winningVariantIndex !== -1) {\\n      let newStyleStr = variants?.map((_, index) => {\\n        if (index === winningVariantIndex) return '';\\n        return `div[data-variant-id=\\\"${blockId}-${index}\\\"] { display: none !important; } `;\\n      }).join('') || '';\\n      newStyleStr += `div[data-variant-id=\\\"${blockId}-default\\\"] { display: none !important; } `;\\n      visibilityStylesEl.innerHTML = newStyleStr;\\n    }\\n  }\\n}\";","import { TARGET } from '../../constants/target';\nimport { isBrowser } from '../../functions/is-browser';\nimport { isEditing } from '../../functions/is-editing';\nimport type { BuilderBlock } from '../../types/builder-block';\nimport type { Target } from '../../types/targets';\nimport { FILTER_WITH_CUSTOM_TARGETING_SCRIPT, PERSONALIZATION_SCRIPT, UPDATE_VISIBILITY_STYLES_SCRIPT } from './helpers/inlined-fns';\nimport type { PersonalizationContainerProps } from './personalization-container.types';\nexport const DEFAULT_INDEX = 'default';\nconst FILTER_WITH_CUSTOM_TARGETING_SCRIPT_FN_NAME = 'filterWithCustomTargeting';\nconst BUILDER_IO_PERSONALIZATION_SCRIPT_FN_NAME = 'builderIoPersonalization';\nconst UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME = 'updateVisibilityStylesScript';\nexport type UserAttributes = {\n  date?: string | Date;\n  urlPath?: string;\n  [key: string]: any;\n};\ntype QueryOperator = 'is' | 'isNot' | 'contains' | 'startsWith' | 'endsWith' | 'greaterThan' | 'lessThan' | 'greaterThanOrEqualTo' | 'lessThanOrEqualTo';\ntype QueryValue = string | number | boolean | Array<string | number | boolean>;\nexport type Query = {\n  property: string;\n  operator: QueryOperator;\n  value: QueryValue;\n};\ntype BlocksToRenderReturnType = {\n  blocks: BuilderBlock[];\n  path: string;\n  index: number | typeof DEFAULT_INDEX;\n};\n\n/**\n * SDKs that support Variant Containers\n */\nexport const SDKS_SUPPORTING_PERSONALIZATION = (['react', 'vue', 'svelte', 'qwik'] as Target[]);\n\n/**\n * After hydration, we reset the tree\n * These SDKs handle Personalization Container in a special way:\n * - first, the inlined script will help us add `display: none`, `aria-hidden: true` and `hidden: true` to the non-winning variants\n * - then, on mount / when the component is hydrated - we reset the tree with only the winning variant and deleting the entire tree\n *\n * This helps us to avoid flicker and show the correct / winning variant initially and then once we've hydrated we show the winning variant\n * and keep a track of the cookies to update to the correct variant dynamically when the cookie updates.\n */\nexport const SDKS_REQUIRING_RESET_APPROACH = (['vue', 'svelte', 'qwik'] as Target[]);\nexport function checkShouldRenderVariants(variants: PersonalizationContainerProps['variants'], canTrack: boolean) {\n  const hasVariants = variants && variants.length > 0;\n  if (TARGET === 'reactNative') return false;\n  if (!hasVariants) return false;\n  if (!canTrack) return false;\n  if (SDKS_REQUIRING_RESET_APPROACH.includes(TARGET)) return true;\n  if (isBrowser()) return false;\n  return true;\n}\nexport function getBlocksToRender({\n  variants,\n  previewingIndex,\n  isHydrated,\n  filteredVariants,\n  fallbackBlocks\n}: {\n  variants: PersonalizationContainerProps['variants'];\n  previewingIndex?: number | null;\n  isHydrated: boolean;\n  filteredVariants: PersonalizationContainerProps['variants'];\n  fallbackBlocks?: BuilderBlock[];\n}): BlocksToRenderReturnType {\n  const fallback: BlocksToRenderReturnType = {\n    blocks: fallbackBlocks ?? [],\n    path: 'this.children',\n    index: DEFAULT_INDEX\n  };\n  if (isHydrated && isEditing()) {\n    // If editing a specific variant\n    if (typeof previewingIndex === 'number' && previewingIndex < (variants?.length ?? 0)) {\n      const variant = variants?.[previewingIndex];\n      if (variant) {\n        return {\n          blocks: variant.blocks,\n          path: `variants.${previewingIndex}.blocks`,\n          index: previewingIndex\n        };\n      }\n    }\n    // Otherwise we're editing the default variant\n    return fallback;\n  }\n\n  // If we're on the browser, check if there's a winning variant\n  if (isBrowser()) {\n    const winningVariant = filteredVariants?.[0];\n    if (winningVariant && variants) {\n      const variantIndex = variants.indexOf(winningVariant);\n      if (variantIndex !== -1) {\n        return {\n          blocks: winningVariant.blocks,\n          path: `variants.${variantIndex}.blocks`,\n          index: variantIndex\n        };\n      }\n    }\n  }\n\n  // If no winning variant or we are on the server, return the default variant\n  return fallback;\n}\nexport const getInitPersonalizationVariantsFnsScriptString = () => {\n  return `\n  window.${FILTER_WITH_CUSTOM_TARGETING_SCRIPT_FN_NAME} = ${FILTER_WITH_CUSTOM_TARGETING_SCRIPT}\n  window.${BUILDER_IO_PERSONALIZATION_SCRIPT_FN_NAME} = ${PERSONALIZATION_SCRIPT}\n  window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME} = ${UPDATE_VISIBILITY_STYLES_SCRIPT}\n  `;\n};\nconst isHydrationTarget = TARGET === 'react';\nexport const getPersonalizationScript = (variants: PersonalizationContainerProps['variants'], blockId: string, locale?: string) => {\n  return `window.${BUILDER_IO_PERSONALIZATION_SCRIPT_FN_NAME}(${JSON.stringify(variants)}, \"${blockId}\", ${isHydrationTarget}${locale ? `, \"${locale}\"` : ''})`;\n};\nexport const getUpdateVisibilityStylesScript = (variants: PersonalizationContainerProps['variants'], blockId: string, locale?: string) => {\n  return `window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME}(${JSON.stringify(variants)}, \"${blockId}\", ${isHydrationTarget}${locale ? `, \"${locale}\"` : ''})`;\n};\nexport { filterWithCustomTargeting } from './helpers/inlined-fns'","import type { ComponentInfo } from '../../types/components';\nconst defaultTitle = {\n  '@type': '@builder.io/sdk:Element',\n  layerName: 'Accordion item title',\n  responsiveStyles: {\n    large: {\n      marginTop: '10px',\n      position: 'relative',\n      display: 'flex',\n      alignItems: 'stretch',\n      flexDirection: 'column',\n      paddingBottom: '10px'\n    }\n  },\n  children: [{\n    '@type': '@builder.io/sdk:Element',\n    responsiveStyles: {\n      large: {\n        textAlign: 'left',\n        display: 'flex',\n        flexDirection: 'column'\n      }\n    },\n    component: {\n      name: 'Text',\n      options: {\n        text: 'I am an accordion title. Click me!'\n      }\n    }\n  }]\n};\nconst defaultDetail = {\n  '@type': '@builder.io/sdk:Element',\n  layerName: 'Accordion item detail',\n  responsiveStyles: {\n    large: {\n      position: 'relative',\n      display: 'flex',\n      alignItems: 'stretch',\n      flexDirection: 'column',\n      marginTop: '10px',\n      paddingBottom: '10px'\n    }\n  },\n  children: [{\n    '@type': '@builder.io/sdk:Element',\n    responsiveStyles: {\n      large: {\n        paddingTop: '50px',\n        textAlign: 'left',\n        display: 'flex',\n        flexDirection: 'column',\n        paddingBottom: '50px'\n      }\n    },\n    component: {\n      name: 'Text',\n      options: {\n        text: 'I am an accordion detail, hello!'\n      }\n    }\n  }]\n};\nexport const componentInfo: ComponentInfo = {\n  name: 'Builder:Accordion',\n  canHaveChildren: true,\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FagZ9n5CUKRfbL9t6CaJOyVSK4Es2%2Ffab6c1fd3fe542408cbdec078bca7f35',\n  defaultStyles: {\n    display: 'flex',\n    flexDirection: 'column',\n    alignItems: 'stretch'\n  },\n  inputs: [{\n    name: 'items',\n    type: 'list',\n    broadcast: true,\n    subFields: [{\n      name: 'title',\n      type: 'uiBlocks',\n      hideFromUI: true,\n      defaultValue: [defaultTitle]\n    }, {\n      name: 'detail',\n      type: 'uiBlocks',\n      hideFromUI: true,\n      defaultValue: [defaultDetail]\n    }],\n    defaultValue: [{\n      title: [defaultTitle],\n      detail: [defaultDetail]\n    }, {\n      title: [defaultTitle],\n      detail: [defaultDetail]\n    }],\n    showIf: (options: Map<string, any>) => !options.get('useChildrenForItems')\n  }, {\n    name: 'oneAtATime',\n    helperText: 'Only allow opening one at a time (collapse all others when new item openned)',\n    type: 'boolean',\n    defaultValue: false\n  }, {\n    name: 'grid',\n    helperText: 'Display as a grid',\n    type: 'boolean',\n    defaultValue: false\n  }, {\n    name: 'gridRowWidth',\n    helperText: 'Display as a grid',\n    type: 'string',\n    showIf: (options: Map<string, any>) => options.get('grid'),\n    defaultValue: '25%'\n  }, {\n    name: 'useChildrenForItems',\n    type: 'boolean',\n    helperText: 'Use child elements for each slide, instead of the array. Useful for dynamically repeating items',\n    advanced: true,\n    defaultValue: false,\n    onChange: (options: Map<string, any>) => {\n      if (options.get('useChildrenForItems') === true) {\n        options.set('items', []);\n      }\n    }\n  }],\n  shouldReceiveBuilderProps: {\n    builderBlock: true,\n    builderContext: true,\n    builderComponents: true,\n    builderLinkComponent: true\n  }\n}","export const convertOrderNumberToString = (order: number) => {\n  return order.toString();\n}","import {\n  Component,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport Blocks from \"../../components/blocks/index\";\nimport { camelToKebabCase } from \"../../functions/camel-to-kebab-case\";\nimport type { Dictionary } from \"../../types/typescript\";\nimport type { AccordionProps } from \"./accordion.types\";\nimport { convertOrderNumberToString } from \"./helpers\";\n\n@Component({\n  selector: \"accordion\",\n  standalone: true,\n  imports: [CommonModule, Blocks],\n  template: `\n    <div class=\"builder-accordion\" [ngStyle]=\"accordionStyles()\">\n      @for (item of items();track trackByItem0(index, item);let index = $index)\n      {\n      <ng-container>\n        <div\n          [class]=\"getAccordionTitleClassName(index)\"\n          [ngStyle]=\"objSpread_style_oaowqb(item, index)\"\n          [attr.data-index]=\"index\"\n          (click)=\"onClick(index)\"\n        >\n          <blocks\n            [blocks]=\"item.title\"\n            [path]=\"templateStr_z2r7ff(item, index)\"\n            [parent]=\"builderBlock().id\"\n            [context]=\"builderContext()\"\n            [registeredComponents]=\"builderComponents()\"\n            [linkComponent]=\"builderLinkComponent()\"\n          ></blocks>\n        </div>\n        @if(open().includes(index)){\n        <div\n          [class]=\"getAccordionDetailClassName(index)\"\n          [ngStyle]=\"accordionDetailStyles()\"\n        >\n          <blocks\n            [blocks]=\"item.detail\"\n            [path]=\"templateStr_x0msw(item, index)\"\n            [parent]=\"builderBlock().id\"\n            [context]=\"builderContext()\"\n            [registeredComponents]=\"builderComponents()\"\n            [linkComponent]=\"builderLinkComponent()\"\n          ></blocks>\n        </div>\n        }\n      </ng-container>\n      }\n    </div>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Accordion {\n  grid: InputSignal<AccordionProps[\"grid\"]> = input<AccordionProps[\"grid\"]>();\n  oneAtATime: InputSignal<AccordionProps[\"oneAtATime\"]> =\n    input<AccordionProps[\"oneAtATime\"]>();\n  items: InputSignal<AccordionProps[\"items\"]> =\n    input<AccordionProps[\"items\"]>();\n  gridRowWidth: InputSignal<AccordionProps[\"gridRowWidth\"]> =\n    input<AccordionProps[\"gridRowWidth\"]>();\n  builderBlock: InputSignal<AccordionProps[\"builderBlock\"]> =\n    input<AccordionProps[\"builderBlock\"]>();\n  builderContext: InputSignal<AccordionProps[\"builderContext\"]> =\n    input<AccordionProps[\"builderContext\"]>();\n  builderComponents: InputSignal<AccordionProps[\"builderComponents\"]> =\n    input<AccordionProps[\"builderComponents\"]>();\n  builderLinkComponent: InputSignal<AccordionProps[\"builderLinkComponent\"]> =\n    input<AccordionProps[\"builderLinkComponent\"]>();\n\n  open = signal([]);\n\n  onlyOneAtATime = computed(() => {\n    return Boolean(this.grid() || this.oneAtATime());\n  });\n  accordionStyles = computed(() => {\n    const styles = {\n      display: \"flex\" as \"flex\" | \"none\",\n      alignItems: \"stretch\" as\n        | \"stretch\"\n        | \"flex-start\"\n        | \"flex-end\"\n        | \"center\"\n        | \"baseline\",\n      flexDirection: \"column\" as\n        | \"column\"\n        | \"row\"\n        | \"column-reverse\"\n        | \"row-reverse\",\n      ...(this.grid() && {\n        flexDirection: \"row\" as\n          | \"column\"\n          | \"row\"\n          | \"column-reverse\"\n          | \"row-reverse\",\n        alignItems: \"flex-start\" as\n          | \"stretch\"\n          | \"flex-start\"\n          | \"flex-end\"\n          | \"center\"\n          | \"baseline\",\n        flexWrap: \"wrap\" as \"nowrap\" | \"wrap\",\n      }),\n    };\n    return styles;\n  });\n  accordionTitleStyles = computed(() => {\n    const shared = {\n      display: \"flex\",\n      flexDirection: \"column\",\n    };\n    const styles = {\n      ...shared,\n      alignItems: \"stretch\",\n      cursor: \"pointer\",\n    };\n    return Object.fromEntries(\n      Object.entries(styles).filter(([_, value]) => value !== undefined)\n    ) as Dictionary<string>;\n  });\n  openGridItemOrder = computed(() => {\n    let itemOrder: number | null = null;\n    const getOpenGridItemPosition = this.grid() && this.open().length;\n    if (getOpenGridItemPosition && document) {\n      const openItemIndex = this.open()[0];\n      const openItem = document.querySelector(\n        `.builder-accordion-title[data-index=\"${openItemIndex}\"]`\n      );\n      let subjectItem = openItem;\n      itemOrder = openItemIndex;\n      if (subjectItem) {\n        let prevItemRect = subjectItem.getBoundingClientRect();\n        while ((subjectItem = subjectItem && subjectItem.nextElementSibling)) {\n          if (subjectItem) {\n            if (subjectItem.classList.contains(\"builder-accordion-detail\")) {\n              continue;\n            }\n            const subjectItemRect = subjectItem.getBoundingClientRect();\n            if (subjectItemRect.left > prevItemRect.left) {\n              const index = parseInt(\n                subjectItem.getAttribute(\"data-index\") || \"\",\n                10\n              );\n              if (!isNaN(index)) {\n                prevItemRect = subjectItemRect;\n                itemOrder = index;\n              }\n            } else {\n              break;\n            }\n          }\n        }\n      }\n    }\n    if (typeof itemOrder === \"number\") {\n      itemOrder = itemOrder + 1;\n    }\n    return itemOrder;\n  });\n  accordionDetailStyles = computed(() => {\n    const styles = {\n      ...{\n        order:\n          typeof this.openGridItemOrder() === \"number\"\n            ? (this.openGridItemOrder() as number)\n            : undefined,\n      },\n      ...(this.grid() && {\n        width: \"100%\",\n      }),\n    };\n    return Object.fromEntries(\n      Object.entries(styles).filter(([_, value]) => value !== undefined)\n    ) as Dictionary<string>;\n  });\n  getAccordionTitleClassName(index: number) {\n    return `builder-accordion-title builder-accordion-title-${\n      this.open().includes(index) ? \"open\" : \"closed\"\n    }`;\n  }\n  getAccordionDetailClassName(index: number) {\n    return `builder-accordion-detail builder-accordion-detail-${\n      this.open().includes(index) ? \"open\" : \"closed\"\n    }`;\n  }\n  onClick(index: number) {\n    if (this.open().includes(index)) {\n      this.open.set(\n        this.onlyOneAtATime()\n          ? []\n          : this.open().filter((item) => item !== index)\n      );\n    } else {\n      this.open.set(\n        this.onlyOneAtATime() ? [index] : this.open().concat(index)\n      );\n    }\n  }\n  objSpread_style_oaowqb(item, index) {\n    return {\n      ...this.accordionTitleStyles(),\n      ...(this.grid() && {\n        width: this.gridRowWidth(),\n        ...({\n          order:\n            this.openGridItemOrder() !== null\n              ? convertOrderNumberToString(index)\n              : convertOrderNumberToString(index + 1),\n        } as any),\n      }),\n    };\n  }\n  templateStr_z2r7ff(item, index) {\n    return `items.${index}.title`;\n  }\n  templateStr_x0msw(item, index) {\n    return `items.${index}.detail`;\n  }\n  trackByItem0(index: number, item: any) {\n    return index;\n  }\n\n  constructor() {}\n}\n","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Core:Button',\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F81a15681c3e74df09677dfc57a615b13',\n  defaultStyles: {\n    // TODO: make min width more intuitive and set one\n    appearance: 'none',\n    paddingTop: '15px',\n    paddingBottom: '15px',\n    paddingLeft: '25px',\n    paddingRight: '25px',\n    backgroundColor: '#000000',\n    color: 'white',\n    borderRadius: '4px',\n    textAlign: 'center',\n    cursor: 'pointer'\n  },\n  inputs: [{\n    name: 'text',\n    type: 'text',\n    defaultValue: 'Click me!',\n    bubble: true\n  }, {\n    name: 'link',\n    type: 'url',\n    bubble: true\n  }, {\n    name: 'openLinkInNewTab',\n    type: 'boolean',\n    defaultValue: false,\n    friendlyName: 'Open link in new tab'\n  }],\n  static: true,\n  noWrap: true,\n  shouldReceiveBuilderProps: {\n    builderLinkComponent: true\n  }\n}","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  // TODO: ways to statically preprocess JSON for references, functions, etc\n  name: 'Columns',\n  isRSC: true,\n  inputs: [{\n    name: 'columns',\n    type: 'array',\n    broadcast: true,\n    subFields: [{\n      name: 'blocks',\n      type: 'array',\n      hideFromUI: true,\n      defaultValue: [{\n        '@type': '@builder.io/sdk:Element',\n        responsiveStyles: {\n          large: {\n            display: 'flex',\n            flexDirection: 'column',\n            alignItems: 'stretch',\n            flexShrink: '0',\n            position: 'relative',\n            marginTop: '30px',\n            textAlign: 'center',\n            lineHeight: 'normal',\n            height: 'auto',\n            minHeight: '20px',\n            minWidth: '20px',\n            overflow: 'hidden'\n          }\n        },\n        component: {\n          name: 'Image',\n          options: {\n            image: 'https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d',\n            backgroundPosition: 'center',\n            backgroundSize: 'cover',\n            aspectRatio: 0.7004048582995948\n          }\n        }\n      }, {\n        '@type': '@builder.io/sdk:Element',\n        responsiveStyles: {\n          large: {\n            display: 'flex',\n            flexDirection: 'column',\n            alignItems: 'stretch',\n            flexShrink: '0',\n            position: 'relative',\n            marginTop: '30px',\n            textAlign: 'center',\n            lineHeight: 'normal',\n            height: 'auto'\n          }\n        },\n        component: {\n          name: 'Text',\n          options: {\n            text: '<p>Enter some text...</p>'\n          }\n        }\n      }]\n    }, {\n      name: 'width',\n      type: 'number',\n      hideFromUI: true,\n      helperText: 'Width %, e.g. set to 50 to fill half of the space'\n    }, {\n      name: 'link',\n      type: 'url',\n      helperText: 'Optionally set a url that clicking this column will link to'\n    }],\n    defaultValue: [{\n      blocks: [{\n        '@type': '@builder.io/sdk:Element',\n        responsiveStyles: {\n          large: {\n            display: 'flex',\n            flexDirection: 'column',\n            alignItems: 'stretch',\n            flexShrink: '0',\n            position: 'relative',\n            marginTop: '30px',\n            textAlign: 'center',\n            lineHeight: 'normal',\n            height: 'auto',\n            minHeight: '20px',\n            minWidth: '20px',\n            overflow: 'hidden'\n          }\n        },\n        component: {\n          name: 'Image',\n          options: {\n            image: 'https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d',\n            backgroundPosition: 'center',\n            backgroundSize: 'cover',\n            aspectRatio: 0.7004048582995948\n          }\n        }\n      }, {\n        '@type': '@builder.io/sdk:Element',\n        responsiveStyles: {\n          large: {\n            display: 'flex',\n            flexDirection: 'column',\n            alignItems: 'stretch',\n            flexShrink: '0',\n            position: 'relative',\n            marginTop: '30px',\n            textAlign: 'center',\n            lineHeight: 'normal',\n            height: 'auto'\n          }\n        },\n        component: {\n          name: 'Text',\n          options: {\n            text: '<p>Enter some text...</p>'\n          }\n        }\n      }]\n    }, {\n      blocks: [{\n        '@type': '@builder.io/sdk:Element',\n        responsiveStyles: {\n          large: {\n            display: 'flex',\n            flexDirection: 'column',\n            alignItems: 'stretch',\n            flexShrink: '0',\n            position: 'relative',\n            marginTop: '30px',\n            textAlign: 'center',\n            lineHeight: 'normal',\n            height: 'auto',\n            minHeight: '20px',\n            minWidth: '20px',\n            overflow: 'hidden'\n          }\n        },\n        component: {\n          name: 'Image',\n          options: {\n            image: 'https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d',\n            backgroundPosition: 'center',\n            backgroundSize: 'cover',\n            aspectRatio: 0.7004048582995948\n          }\n        }\n      }, {\n        '@type': '@builder.io/sdk:Element',\n        responsiveStyles: {\n          large: {\n            display: 'flex',\n            flexDirection: 'column',\n            alignItems: 'stretch',\n            flexShrink: '0',\n            position: 'relative',\n            marginTop: '30px',\n            textAlign: 'center',\n            lineHeight: 'normal',\n            height: 'auto'\n          }\n        },\n        component: {\n          name: 'Text',\n          options: {\n            text: '<p>Enter some text...</p>'\n          }\n        }\n      }]\n    }],\n    onChange: (options: Map<string, any>) => {\n      function clearWidths() {\n        columns.forEach(col => {\n          col.delete('width');\n        });\n      }\n      const columns: Array<Map<string, any>> = options.get('columns');\n      if (Array.isArray(columns)) {\n        const containsColumnWithWidth = !!columns.find(col => col.get('width'));\n        if (containsColumnWithWidth) {\n          const containsColumnWithoutWidth = !!columns.find(col => !col.get('width'));\n          if (containsColumnWithoutWidth) {\n            clearWidths();\n          } else {\n            const sumWidths = columns.reduce((memo, col) => {\n              return memo + col.get('width');\n            }, 0);\n            const widthsDontAddUp = sumWidths !== 100;\n            if (widthsDontAddUp) {\n              clearWidths();\n            }\n          }\n        }\n      }\n    }\n  }, {\n    name: 'space',\n    type: 'number',\n    defaultValue: 20,\n    helperText: 'Size of gap between columns',\n    advanced: true\n  }, {\n    name: 'stackColumnsAt',\n    type: 'string',\n    defaultValue: 'tablet',\n    helperText: 'Convert horizontal columns to vertical at what device size',\n    enum: ['tablet', 'mobile', 'never'],\n    advanced: true\n  }, {\n    name: 'reverseColumnsWhenStacked',\n    type: 'boolean',\n    defaultValue: false,\n    helperText: 'When stacking columns for mobile devices, reverse the ordering',\n    advanced: true\n  }],\n  shouldReceiveBuilderProps: {\n    builderBlock: true,\n    builderContext: true,\n    builderComponents: true,\n    builderLinkComponent: true\n  }\n}","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Fragment',\n  static: true,\n  hidden: true,\n  canHaveChildren: true,\n  noWrap: true\n}","export const IMAGE_FILE_TYPES = ['jpeg', 'jpg', 'png', 'svg', 'webp', 'gif', 'jfif', 'pjpeg', 'pjp', 'apng', 'avif', 'tif', 'tiff', 'heif', 'bmp', 'eps', 'raw', 'cr2', 'nef', 'orf', 'sr2', 'psd', 'heic', 'dib', 'ai'];\nexport const VIDEO_FILE_TYPES = ['mp4', 'webm', 'mkv', 'flv', 'vob', 'ogv', 'ogg', 'drc', 'gif', 'gifv', 'mng', 'avi', 'mov', 'qt', 'mts', 'm2ts', 'ts', 'wmv', 'yuv', 'rm', 'rmvb', 'viv', 'asf', 'amv', 'm4p', 'mpeg', 'mpe', 'm2v', 'm4v', 'svi', '3gp', '3g2', 'mxf', 'roq', 'nsv', 'f4v', 'f4p', 'f4a', 'f4b']","import { IMAGE_FILE_TYPES } from '../../constants/file-types';\nimport type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Image',\n  static: true,\n  image: 'https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4',\n  defaultStyles: {\n    position: 'relative',\n    minHeight: '20px',\n    minWidth: '20px',\n    overflow: 'hidden'\n  },\n  canHaveChildren: true,\n  inputs: [{\n    name: 'image',\n    type: 'file',\n    bubble: true,\n    allowedFileTypes: IMAGE_FILE_TYPES,\n    required: true,\n    defaultValue: 'https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F72c80f114dc149019051b6852a9e3b7a',\n    onChange: (options: Map<string, any>): void | Promise<void> => {\n      const DEFAULT_ASPECT_RATIO = 0.7041;\n      options.delete('srcset');\n      options.delete('noWebp');\n      function loadImage(url: string, timeout = 60000): Promise<HTMLImageElement> {\n        return new Promise((resolve, reject) => {\n          const img = document.createElement('img');\n          let loaded = false;\n          img.onload = () => {\n            loaded = true;\n            resolve(img);\n          };\n          img.addEventListener('error', event => {\n            console.warn('Image load failed', event.error);\n            reject(event.error);\n          });\n          img.src = url;\n          setTimeout(() => {\n            if (!loaded) {\n              reject(new Error('Image load timed out'));\n            }\n          }, timeout);\n        });\n      }\n      function round(num: number) {\n        return Math.round(num * 1000) / 1000;\n      }\n      const value = options.get('image');\n      const aspectRatio = options.get('aspectRatio');\n\n      // For SVG images - don't render as webp, keep them as SVG\n      fetch(value).then(res => res.blob()).then(blob => {\n        if (blob.type.includes('svg')) {\n          options.set('noWebp', true);\n        }\n      });\n      if (value && (!aspectRatio || aspectRatio === DEFAULT_ASPECT_RATIO)) {\n        return loadImage(value).then(img => {\n          const possiblyUpdatedAspectRatio = options.get('aspectRatio');\n          if (options.get('image') === value && (!possiblyUpdatedAspectRatio || possiblyUpdatedAspectRatio === DEFAULT_ASPECT_RATIO)) {\n            if (img.width && img.height) {\n              options.set('aspectRatio', round(img.height / img.width));\n              options.set('height', img.height);\n              options.set('width', img.width);\n            }\n          }\n        });\n      }\n    }\n  }, {\n    name: 'backgroundSize',\n    type: 'text',\n    defaultValue: 'cover',\n    enum: [{\n      label: 'contain',\n      value: 'contain',\n      helperText: 'The image should never get cropped'\n    }, {\n      label: 'cover',\n      value: 'cover',\n      helperText: \"The image should fill it's box, cropping when needed\"\n    }]\n  }, {\n    name: 'backgroundPosition',\n    type: 'text',\n    defaultValue: 'center',\n    enum: ['center', 'top', 'left', 'right', 'bottom', 'top left', 'top right', 'bottom left', 'bottom right']\n  }, {\n    name: 'altText',\n    type: 'string',\n    helperText: 'Text to display when the user has images off'\n  }, {\n    name: 'title',\n    type: 'string',\n    helperText: 'Text to display when hovering over the asset'\n  }, {\n    name: 'height',\n    type: 'number',\n    hideFromUI: true\n  }, {\n    name: 'width',\n    type: 'number',\n    hideFromUI: true\n  }, {\n    name: 'sizes',\n    type: 'string',\n    hideFromUI: true\n  }, {\n    name: 'srcset',\n    type: 'string',\n    hideFromUI: true\n  }, {\n    name: 'lazy',\n    type: 'boolean',\n    defaultValue: true,\n    hideFromUI: true\n  }, {\n    name: 'fitContent',\n    type: 'boolean',\n    helperText: \"When child blocks are provided, fit to them instead of using the image's aspect ratio\",\n    defaultValue: true\n  }, {\n    name: 'highPriority',\n    type: 'boolean',\n    advanced: true,\n    helperText: 'Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page.'\n  }, {\n    name: 'aspectRatio',\n    type: 'number',\n    helperText: \"This is the ratio of height/width, e.g. set to 1.5 for a 300px wide and 200px tall photo. Set to 0 to not force the image to maintain it's aspect ratio\",\n    advanced: true,\n    defaultValue: 0.7041\n  }],\n  shouldReceiveBuilderProps: {\n    builderBlock: true\n  }\n}","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'PersonalizationContainer',\n  shouldReceiveBuilderProps: {\n    builderBlock: true,\n    builderContext: true,\n    builderComponents: true\n  },\n  noWrap: true,\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F37229ed30d8c41dfb10b8cca1992053a',\n  canHaveChildren: true,\n  inputs: [{\n    name: 'variants',\n    defaultValue: [],\n    behavior: 'personalizationVariantList',\n    type: 'list',\n    subFields: [{\n      name: 'name',\n      type: 'text'\n    }, {\n      name: 'query',\n      friendlyName: 'Targeting rules',\n      type: 'BuilderQuery',\n      defaultValue: []\n    }, {\n      name: 'startDate',\n      type: 'date'\n    }, {\n      name: 'endDate',\n      type: 'date'\n    }, {\n      name: 'blocks',\n      type: 'uiBlocks',\n      hideFromUI: true,\n      defaultValue: []\n    }]\n  }]\n}","import { CommonModule } from '@angular/common';\n// fails because type imports cannot be injected\n// eslint-disable-next-line @typescript-eslint/consistent-type-imports\nimport { Component, ElementRef, input, Renderer2 } from '@angular/core';\n\ninterface Props {\n  scriptStr: string;\n  id: string;\n  nonce: string;\n}\n\n@Component({\n  selector: 'inlined-script, InlinedScript',\n  template: ``,\n  standalone: true,\n  imports: [CommonModule],\n  styles: [\n    `\n      :host {\n        display: contents;\n      }\n    `,\n  ],\n})\nexport default class InlinedScript {\n  scriptStr = input.required<Props['scriptStr']>();\n  id = input.required<Props['id']>();\n  nonce = input.required<Props['nonce']>();\n\n  constructor(\n    private renderer: Renderer2,\n    private elRef: ElementRef\n  ) {}\n\n  ngOnInit() {\n    const script = this.renderer.createElement('script');\n    script.text = this.scriptStr();\n    this.renderer.setAttribute(script, 'data-id', this.id());\n    this.renderer.setAttribute(script, 'nonce', this.nonce());\n    this.renderer.appendChild(this.elRef.nativeElement, script);\n  }\n}\n","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport Blocks from \"../../components/blocks/blocks\";\nimport InlinedScript from \"../../components/inlined-script\";\nimport InlinedStyles from \"../../components/inlined-styles\";\nimport { TARGET } from \"../../constants/target\";\nimport { getClassPropName } from \"../../functions/get-class-prop-name\";\nimport { isEditing } from \"../../functions/is-editing\";\nimport { isPreviewing } from \"../../functions/is-previewing\";\nimport { getDefaultCanTrack } from \"../../helpers/canTrack\";\nimport { userAttributesService } from \"../../helpers/user-attributes\";\nimport { filterAttrs } from \"../helpers\";\nimport {\n  checkShouldRenderVariants,\n  DEFAULT_INDEX,\n  filterWithCustomTargeting,\n  getBlocksToRender,\n  getPersonalizationScript,\n  getUpdateVisibilityStylesScript,\n  SDKS_REQUIRING_RESET_APPROACH,\n} from \"./helpers\";\nimport type { PersonalizationContainerProps } from \"./personalization-container.types\";\nimport { setAttrs } from \"../helpers\";\n\n@Component({\n  selector: \"personalization-container\",\n  standalone: true,\n  imports: [CommonModule, Blocks, InlinedStyles, InlinedScript],\n  template: `\n    <div #rootRef #elRef0>\n      @if(shouldResetVariants() &&\n      SDKS_REQUIRING_RESET_APPROACH.includes(TARGET)){\n      <blocks\n        [blocks]=\"blocksToRender().blocks\"\n        [parent]=\"builderBlock()?.id\"\n        [path]=\"blocksToRender().path\"\n        [context]=\"builderContext()\"\n        [registeredComponents]=\"builderComponents()\"\n        [BlocksWrapperProps]=\"objSpread_BlocksWrapperProps_oi5c20()\"\n      ></blocks>\n      } @if(!shouldResetVariants() &&\n      SDKS_REQUIRING_RESET_APPROACH.includes(TARGET) ||\n      !SDKS_REQUIRING_RESET_APPROACH.includes(TARGET)){\n      @if(shouldRenderVariants()){\n      <inlined-styles\n        [nonce]=\"builderContext()?.nonce || ''\"\n        [styles]=\"hideVariantsStyleString()\"\n        [id]=\"templateStr_lw6jtt()\"\n      ></inlined-styles>\n      <inlined-script\n        [nonce]=\"builderContext()?.nonce || ''\"\n        [scriptStr]=\"updateVisibilityStylesScript()\"\n        [id]=\"templateStr_rpibqx()\"\n      ></inlined-script>\n\n      @for (variant of variants();track trackByVariant0(index, variant);let\n      index = $index) {\n      <blocks\n        [BlocksWrapperProps]=\"objSpread_BlocksWrapperProps_wq9i0g(variant, index)\"\n        [blocks]=\"variant.blocks\"\n        [parent]=\"builderBlock()?.id\"\n        [path]=\"templateStr_q6jkc(variant, index)\"\n        [context]=\"builderContext()\"\n        [registeredComponents]=\"builderComponents()\"\n      >\n        <inlined-script\n          [nonce]=\"builderContext()?.nonce || ''\"\n          [scriptStr]=\"scriptStr()\"\n          [id]=\"templateStr_cbpzp5(variant, index)\"\n        ></inlined-script>\n      </blocks>\n      } }\n      <blocks\n        [blocks]=\"blocksToRender().blocks\"\n        [parent]=\"builderBlock()?.id\"\n        [path]=\"blocksToRender().path\"\n        [context]=\"builderContext()\"\n        [registeredComponents]=\"builderComponents()\"\n        [BlocksWrapperProps]=\"objSpread_BlocksWrapperProps_oi5c20()\"\n      >\n        @if(shouldRenderVariants()){\n        <inlined-script\n          [nonce]=\"builderContext()?.nonce || ''\"\n          [scriptStr]=\"scriptStr()\"\n          [id]=\"templateStr_f5w03p()\"\n        ></inlined-script>\n        }\n      </blocks>\n      }\n    </div>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class PersonalizationContainer {\n  protected readonly SDKS_REQUIRING_RESET_APPROACH =\n    SDKS_REQUIRING_RESET_APPROACH;\n  protected readonly TARGET = TARGET;\n\n  builderContext: InputSignal<PersonalizationContainerProps[\"builderContext\"]> =\n    input<PersonalizationContainerProps[\"builderContext\"]>();\n  variants: InputSignal<PersonalizationContainerProps[\"variants\"]> =\n    input<PersonalizationContainerProps[\"variants\"]>();\n  builderBlock: InputSignal<PersonalizationContainerProps[\"builderBlock\"]> =\n    input<PersonalizationContainerProps[\"builderBlock\"]>();\n  attributes: InputSignal<PersonalizationContainerProps[\"attributes\"]> =\n    input<PersonalizationContainerProps[\"attributes\"]>();\n  previewingIndex: InputSignal<\n    PersonalizationContainerProps[\"previewingIndex\"]\n  > = input<PersonalizationContainerProps[\"previewingIndex\"]>();\n  builderComponents: InputSignal<\n    PersonalizationContainerProps[\"builderComponents\"]\n  > = input<PersonalizationContainerProps[\"builderComponents\"]>();\n\n  rootRef = viewChild<ElementRef>(\"rootRef\");\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  userAttributes = signal(userAttributesService.getUserAttributes());\n  scriptStr = signal(undefined);\n  updateVisibilityStylesScript = signal(undefined);\n  unsubscribers = signal([]);\n  shouldRenderVariants = signal(undefined);\n  shouldResetVariants = signal(false);\n  _listenerFns = new Map();\n\n  attrs = computed(() => {\n    return {\n      ...this.attributes(),\n      ...{},\n      [getClassPropName()]: `builder-personalization-container ${\n        this.attributes()[getClassPropName()] || \"\"\n      }`,\n    };\n  });\n  filteredVariants = computed(() => {\n    return (this.variants() || []).filter((variant) => {\n      return filterWithCustomTargeting(\n        {\n          ...(this.builderContext()?.rootState?.locale\n            ? {\n                locale: this.builderContext()?.rootState?.locale,\n              }\n            : {}),\n          ...(this.userAttributes() as any),\n        },\n        variant.query,\n        variant.startDate,\n        variant.endDate\n      );\n    });\n  });\n  blocksToRender = computed(() => {\n    return getBlocksToRender({\n      variants: this.variants(),\n      fallbackBlocks: this.builderBlock()?.children,\n      isHydrated: this.shouldResetVariants(),\n      filteredVariants: this.filteredVariants(),\n      previewingIndex: this.previewingIndex(),\n    });\n  });\n  hideVariantsStyleString = computed(() => {\n    return (this.variants() || [])\n      .map(\n        (_, index) =>\n          `div[data-variant-id=\"${\n            this.builderBlock()?.id\n          }-${index}\"] { display: none !important; } `\n      )\n      .join(\"\");\n  });\n  objSpread_BlocksWrapperProps_oi5c20 = computed(() => {\n    return {\n      ...this.builderContext()?.BlocksWrapperProps,\n      \"data-variant-id\": `${this.builderBlock()?.id}-${\n        this.blocksToRender().index\n      }`,\n    };\n  });\n  templateStr_lw6jtt() {\n    return `variants-styles-${this.builderBlock()?.id}`;\n  }\n  templateStr_rpibqx() {\n    return `variants-visibility-script-${this.builderBlock()?.id}`;\n  }\n  objSpread_BlocksWrapperProps_wq9i0g(variant, index) {\n    return {\n      ...this.builderContext()?.BlocksWrapperProps,\n      \"aria-hidden\": true,\n      hidden: true,\n      \"data-variant-id\": `${this.builderBlock()?.id}-${index}`,\n    };\n  }\n  templateStr_q6jkc(variant, index) {\n    return `component.options.variants.${index}.blocks`;\n  }\n  templateStr_cbpzp5(variant, index) {\n    return `variants-script-${this.builderBlock()?.id}-${index}`;\n  }\n  templateStr_f5w03p() {\n    return `variants-script-${this.builderBlock()?.id}-${DEFAULT_INDEX}`;\n  }\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n  trackByVariant0(index: number, variant: any) {\n    return `${this.builderBlock()?.id}-${index}`;\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.attrs());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngOnInit() {\n    this.shouldRenderVariants.set(\n      checkShouldRenderVariants(\n        this.variants(),\n        getDefaultCanTrack(this.builderContext()?.canTrack)\n      )\n    );\n    this.updateVisibilityStylesScript.set(\n      getUpdateVisibilityStylesScript(\n        this.variants(),\n        this.builderBlock()?.id || \"none\",\n        this.builderContext()?.rootState?.locale as string | undefined\n      )\n    );\n    this.scriptStr.set(\n      getPersonalizationScript(\n        this.variants(),\n        this.builderBlock()?.id || \"none\",\n        this.builderContext()?.rootState?.locale as string | undefined\n      )\n    );\n  }\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n      this.shouldResetVariants.set(true);\n      const unsub = userAttributesService.subscribeOnUserAttributesChange(\n        (attrs) => {\n          this.userAttributes.set(attrs);\n        },\n        {\n          fireImmediately: TARGET === \"qwik\",\n        }\n      );\n      if (!(isEditing() || isPreviewing())) {\n        const variant = this.filteredVariants()[0];\n        if (this.rootRef()?.nativeElement) {\n          this.rootRef()?.nativeElement.dispatchEvent(\n            new CustomEvent(\"builder.variantLoaded\", {\n              detail: {\n                variant: variant || DEFAULT_INDEX,\n                content: this.builderContext()?.content,\n              },\n              bubbles: true,\n            })\n          );\n          const observer = new IntersectionObserver((entries) => {\n            entries.forEach((entry) => {\n              if (entry.isIntersecting && this.rootRef()?.nativeElement) {\n                this.rootRef()?.nativeElement.dispatchEvent(\n                  new CustomEvent(\"builder.variantDisplayed\", {\n                    detail: {\n                      variant: variant || DEFAULT_INDEX,\n                      content: this.builderContext()?.content,\n                    },\n                    bubbles: true,\n                  })\n                );\n              }\n            });\n          });\n          observer.observe(this.rootRef()?.nativeElement);\n        }\n      }\n      this.unsubscribers().push(unsub);\n    }\n    this.setAttributes(this.elRef0()?.nativeElement, this.attrs());\n  }\n\n  ngOnDestroy() {\n    this.unsubscribers().forEach((unsub) => unsub());\n  }\n}\n","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Core:Section',\n  static: true,\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F682efef23ace49afac61748dd305c70a',\n  inputs: [{\n    name: 'maxWidth',\n    type: 'number',\n    defaultValue: 1200\n  }, {\n    name: 'lazyLoad',\n    type: 'boolean',\n    defaultValue: false,\n    advanced: true,\n    description: 'Only render this section when in view'\n  }],\n  defaultStyles: {\n    paddingLeft: '20px',\n    paddingRight: '20px',\n    paddingTop: '50px',\n    paddingBottom: '50px',\n    marginTop: '0px',\n    width: '100vw',\n    marginLeft: 'calc(50% - 50vw)'\n  },\n  canHaveChildren: true,\n  defaultChildren: [{\n    '@type': '@builder.io/sdk:Element',\n    responsiveStyles: {\n      large: {\n        textAlign: 'center'\n      }\n    },\n    component: {\n      name: 'Text',\n      options: {\n        text: \"<p><b>I am a section! My content keeps from getting too wide, so that it's easy to read even on big screens.</b></p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur</p>\"\n      }\n    }\n  }]\n}","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Slot',\n  isRSC: true,\n  description: 'Allow child blocks to be inserted into this content when used as a Symbol',\n  docsLink: 'https://www.builder.io/c/docs/symbols-with-blocks',\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F3aad6de36eae43b59b52c85190fdef56',\n  // Maybe wrap this for canHaveChildren so bind children to this hm\n  inputs: [{\n    name: 'name',\n    type: 'string',\n    required: true,\n    defaultValue: 'children'\n  }],\n  shouldReceiveBuilderProps: {\n    builderContext: true,\n    builderComponents: true\n  }\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nexport type DropzoneProps = BuilderDataProps &\n  BuilderComponentsProp & {\n    name: string;\n    attributes: any;\n  };\n\nimport Blocks from \"../../components/blocks/blocks\";\nimport { deoptSignal } from \"../../functions/deopt\";\nimport type { BuilderBlock } from \"../../types/builder-block\";\nimport type {\n  BuilderComponentsProp,\n  BuilderDataProps,\n} from \"../../types/builder-props\";\n\n@Component({\n  selector: \"slot\",\n  standalone: true,\n  imports: [CommonModule, Blocks],\n  template: `\n    <div\n      [ngStyle]=\"{\n          pointerEvents: 'auto'\n        }\"\n      #elRef0\n    >\n      <blocks\n        [parent]=\"objSpread_parent_76vll8()\"\n        [path]=\"templateStr_y9vvxs()\"\n        [context]=\"builderContext()\"\n        [registeredComponents]=\"builderComponents()\"\n        [blocks]=\"objSpread_blocks_j4a76r()\"\n      ></blocks>\n    </div>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Slot {\n  builderContext: InputSignal<DropzoneProps[\"builderContext\"]> =\n    input<DropzoneProps[\"builderContext\"]>();\n  name: InputSignal<DropzoneProps[\"name\"]> = input<DropzoneProps[\"name\"]>();\n  builderComponents: InputSignal<DropzoneProps[\"builderComponents\"]> =\n    input<DropzoneProps[\"builderComponents\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  _listenerFns = new Map();\n\n  objSpread_parent_76vll8 = computed(() => {\n    return this.builderContext().context?.symbolId as string;\n  });\n  objSpread_blocks_j4a76r = computed(() => {\n    return this.builderContext().rootState?.[this.name()] as BuilderBlock[];\n  });\n  templateStr_y9vvxs() {\n    return `symbol.data.${this.name()}`;\n  }\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(\n            this.elRef0()?.nativeElement,\n            !this.builderContext().context?.symbolId && {\n              \"builder-slot\": this.name(),\n            }\n          );\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(\n      this.elRef0()?.nativeElement,\n      !this.builderContext().context?.symbolId && {\n        \"builder-slot\": this.name(),\n      }\n    );\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Symbol',\n  noWrap: true,\n  static: true,\n  isRSC: true,\n  inputs: [{\n    name: 'symbol',\n    type: 'uiSymbol'\n  }, {\n    name: 'dataOnly',\n    helperText: \"Make this a data symbol that doesn't display any UI\",\n    type: 'boolean',\n    defaultValue: false,\n    advanced: true,\n    hideFromUI: true\n  }, {\n    name: 'inheritState',\n    helperText: 'Inherit the parent component state and data',\n    type: 'boolean',\n    defaultValue: false,\n    advanced: true\n  }, {\n    name: 'renderToLiquid',\n    helperText: 'Render this symbols contents to liquid. Turn off to fetch with javascript and use custom targeting',\n    type: 'boolean',\n    defaultValue: false,\n    advanced: true,\n    hideFromUI: true\n  }, {\n    name: 'useChildren',\n    hideFromUI: true,\n    type: 'boolean'\n  }],\n  shouldReceiveBuilderProps: {\n    builderBlock: true,\n    builderContext: true,\n    builderComponents: true,\n    builderLinkComponent: true\n  }\n}","import type { ComponentInfo } from '../../types/components';\nconst defaultTab = {\n  '@type': '@builder.io/sdk:Element',\n  responsiveStyles: {\n    large: {\n      paddingLeft: '20px',\n      paddingRight: '20px',\n      paddingTop: '10px',\n      paddingBottom: '10px',\n      minWidth: '100px',\n      textAlign: 'center',\n      display: 'flex',\n      flexDirection: 'column',\n      cursor: 'pointer',\n      userSelect: 'none'\n    }\n  },\n  component: {\n    name: 'Text',\n    options: {\n      text: 'New tab'\n    }\n  }\n};\nconst defaultElement = {\n  '@type': '@builder.io/sdk:Element',\n  responsiveStyles: {\n    large: {\n      height: '200px',\n      display: 'flex',\n      marginTop: '20px',\n      flexDirection: 'column'\n    }\n  },\n  component: {\n    name: 'Text',\n    options: {\n      text: 'New tab content '\n    }\n  }\n};\nexport const componentInfo: ComponentInfo = {\n  name: 'Builder: Tabs',\n  inputs: [{\n    name: 'tabs',\n    type: 'list',\n    broadcast: true,\n    subFields: [{\n      name: 'label',\n      type: 'uiBlocks',\n      hideFromUI: true,\n      defaultValue: [defaultTab]\n    }, {\n      name: 'content',\n      type: 'uiBlocks',\n      hideFromUI: true,\n      defaultValue: [defaultElement]\n    }],\n    defaultValue: [{\n      label: [{\n        ...defaultTab,\n        component: {\n          name: 'Text',\n          options: {\n            text: 'Tab 1'\n          }\n        }\n      }],\n      content: [{\n        ...defaultElement,\n        component: {\n          name: 'Text',\n          options: {\n            text: 'Tab 1 content'\n          }\n        }\n      }]\n    }, {\n      label: [{\n        ...defaultTab,\n        component: {\n          name: 'Text',\n          options: {\n            text: 'Tab 2'\n          }\n        }\n      }],\n      content: [{\n        ...defaultElement,\n        component: {\n          name: 'Text',\n          options: {\n            text: 'Tab 2 content'\n          }\n        }\n      }]\n    }]\n  }, {\n    name: 'activeTabStyle',\n    type: 'uiStyle',\n    helperText: 'CSS styles for the active tab',\n    defaultValue: {\n      backgroundColor: 'rgba(0, 0, 0, 0.1)'\n    }\n  }, {\n    name: 'defaultActiveTab',\n    type: 'number',\n    helperText: 'Default tab to open to. Set to \"1\" for the first tab, \"2\" for the second, or choose \"0\" for none',\n    defaultValue: 1,\n    advanced: true\n  }, {\n    name: 'collapsible',\n    type: 'boolean',\n    helperText: 'If on, clicking an open tab closes it so no tabs are active',\n    defaultValue: false,\n    advanced: true\n  }, {\n    name: 'tabHeaderLayout',\n    type: 'enum',\n    helperText: 'Change the layout of the tab headers (uses justify-content)',\n    defaultValue: 'flex-start',\n    enum: [{\n      label: 'Center',\n      value: 'center'\n    }, {\n      label: 'Space between',\n      value: 'space-between'\n    }, {\n      label: 'Space around',\n      value: 'space-around'\n    }, {\n      label: 'Left',\n      value: 'flex-start'\n    }, {\n      label: 'Right',\n      value: 'flex-end'\n    }]\n  }],\n  shouldReceiveBuilderProps: {\n    builderBlock: true,\n    builderContext: true,\n    builderComponents: true,\n    builderLinkComponent: true\n  }\n}","import { Component, input, effect, signal, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport Blocks from \"../../components/blocks/blocks\";\nimport type { BuilderBlock } from \"../../types/builder-block\";\nimport type { TabsProps } from \"./tabs.types\";\n\n@Component({\n  selector: \"tabs\",\n  standalone: true,\n  imports: [CommonModule, Blocks],\n  template: `\n    <div>\n      <div\n        class=\"builder-tabs-wrap\"\n        [ngStyle]=\"{\n          display: 'flex',\n          flexDirection: 'row',\n          justifyContent: tabHeaderLayout() || 'flex-start',\n          overflow: 'auto'\n        }\"\n      >\n        @for (tab of tabs();track trackByTab0(index, tab);let index = $index) {\n        <span\n          [class]=\"templateStr_1fubij(tab, index)\"\n          [ngStyle]=\"getTabStyle(index)\"\n          (click)=\"onClick(index)\"\n        >\n          <blocks\n            [parent]=\"builderBlock().id\"\n            [path]=\"templateStr_fz5znr(tab, index)\"\n            [blocks]=\"tab.label\"\n            [context]=\"builderContext()\"\n            [registeredComponents]=\"builderComponents()\"\n            [linkComponent]=\"builderLinkComponent()\"\n          ></blocks>\n        </span>\n        }\n      </div>\n      @if(activeTabContent(activeTab())){\n      <div>\n        <blocks\n          [parent]=\"builderBlock().id\"\n          [path]=\"templateStr_nlekn6()\"\n          [blocks]=\"activeTabContent(activeTab())\"\n          [context]=\"builderContext()\"\n          [registeredComponents]=\"builderComponents()\"\n          [linkComponent]=\"builderLinkComponent()\"\n        ></blocks>\n      </div>\n      }\n    </div>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Tabs {\n  defaultActiveTab: InputSignal<TabsProps[\"defaultActiveTab\"]> =\n    input<TabsProps[\"defaultActiveTab\"]>();\n  tabs: InputSignal<TabsProps[\"tabs\"]> = input<TabsProps[\"tabs\"]>();\n  activeTabStyle: InputSignal<TabsProps[\"activeTabStyle\"]> =\n    input<TabsProps[\"activeTabStyle\"]>();\n  collapsible: InputSignal<TabsProps[\"collapsible\"]> =\n    input<TabsProps[\"collapsible\"]>();\n  tabHeaderLayout: InputSignal<TabsProps[\"tabHeaderLayout\"]> =\n    input<TabsProps[\"tabHeaderLayout\"]>();\n  builderBlock: InputSignal<TabsProps[\"builderBlock\"]> =\n    input<TabsProps[\"builderBlock\"]>();\n  builderContext: InputSignal<TabsProps[\"builderContext\"]> =\n    input<TabsProps[\"builderContext\"]>();\n  builderComponents: InputSignal<TabsProps[\"builderComponents\"]> =\n    input<TabsProps[\"builderComponents\"]>();\n  builderLinkComponent: InputSignal<TabsProps[\"builderLinkComponent\"]> =\n    input<TabsProps[\"builderLinkComponent\"]>();\n\n  activeTab = signal(undefined);\n\n  activeTabContent(active: number) {\n    return this.tabs() && this.tabs()[active].content;\n  }\n  getTabStyle(index: number) {\n    return index === this.activeTab() ? this.activeTabStyle() : {};\n  }\n  onClick(index: number) {\n    if (index === this.activeTab() && this.collapsible()) {\n      this.activeTab.set(-1);\n    } else {\n      this.activeTab.set(index);\n    }\n  }\n  templateStr_1fubij(tab, index) {\n    return `builder-tab-wrap ${\n      this.activeTab() === index ? \"builder-tab-active\" : \"\"\n    }`;\n  }\n  templateStr_fz5znr(tab, index) {\n    return `tabs.${index}.label`;\n  }\n  templateStr_nlekn6() {\n    return `tabs.${this.activeTab()}.content`;\n  }\n  trackByTab0(index: number, tab: any) {\n    return index;\n  }\n\n  constructor() {}\n\n  ngOnInit() {\n    this.activeTab.set(\n      this.defaultActiveTab() ? this.defaultActiveTab() - 1 : 0\n    );\n  }\n}\n","import { TARGET } from '../../constants/target';\nimport type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  shouldReceiveBuilderProps: TARGET === 'reactNative' ? {\n    builderBlock: true,\n    builderContext: true\n  } : {},\n  name: 'Text',\n  static: true,\n  image: 'https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-text_fields-24px%20(1).svg?alt=media&token=12177b73-0ee3-42ca-98c6-0dd003de1929',\n  inputs: [{\n    name: 'text',\n    type: 'html',\n    required: true,\n    autoFocus: true,\n    bubble: true,\n    defaultValue: 'Enter some text...'\n  }],\n  defaultStyles: {\n    lineHeight: 'normal',\n    height: 'auto',\n    textAlign: 'center'\n  }\n}","import {\n  Component,\n  input,\n  effect,\n  ChangeDetectionStrategy,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\n\nimport type { TextProps } from \"./text.types\";\n\n@Component({\n  selector: \"text\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <div\n      class=\"builder-text\"\n      [innerHTML]=\"sanitizer.bypassSecurityTrustHtml(text()?.toString() || '')\"\n      [ngStyle]=\"{\n          outline: 'none'\n        }\"\n    ></div>\n  `,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  styles: `:host { display: contents; }`,\n})\nexport default class Text {\n  text: InputSignal<TextProps[\"text\"]> = input<TextProps[\"text\"]>();\n\n  constructor(protected sanitizer: DomSanitizer) {}\n}\n","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Custom Code',\n  static: true,\n  requiredPermissions: ['editCode'],\n  inputs: [{\n    name: 'code',\n    type: 'html',\n    required: true,\n    defaultValue: '<p>Hello there, I am custom HTML code!</p>',\n    code: true\n  }, {\n    name: 'replaceNodes',\n    type: 'boolean',\n    helperText: 'Preserve server rendered dom nodes',\n    advanced: true\n  }, {\n    name: 'scriptsClientOnly',\n    type: 'boolean',\n    defaultValue: false,\n    helperText: 'Only print and run scripts on the client. Important when scripts influence DOM that could be replaced when client loads',\n    advanced: true\n  }]\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  input,\n  effect,\n  signal,\n  ChangeDetectionStrategy,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\n\nexport interface CustomCodeProps {\n  code: string;\n  replaceNodes?: boolean;\n}\n\nimport { isEditing } from \"../../functions/is-editing\";\nimport { logger } from \"../../helpers/logger\";\n\n@Component({\n  selector: \"custom-code\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <div\n      #elementRef\n      [class]=\"'builder-custom-code' + (replaceNodes() ? ' replace-nodes' : '')\"\n      [innerHTML]=\"sanitizer.bypassSecurityTrustHtml(code())\"\n    ></div>\n  `,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  styles: `:host { display: contents; }`,\n})\nexport default class CustomCode {\n  code: InputSignal<CustomCodeProps[\"code\"]> = input<CustomCodeProps[\"code\"]>();\n  replaceNodes: InputSignal<CustomCodeProps[\"replaceNodes\"]> =\n    input<CustomCodeProps[\"replaceNodes\"]>();\n\n  elementRef = viewChild<ElementRef>(\"elementRef\");\n\n  scriptsInserted = signal([]);\n  scriptsRun = signal([]);\n\n  runScripts() {\n    if (\n      !this.elementRef()?.nativeElement ||\n      !this.elementRef()?.nativeElement?.getElementsByTagName ||\n      typeof window === \"undefined\"\n    ) {\n      return;\n    }\n    const scripts =\n      this.elementRef()?.nativeElement.getElementsByTagName(\"script\");\n    for (let i = 0; i < scripts.length; i++) {\n      const script = scripts[i];\n      if (script.src) {\n        if (this.scriptsInserted().includes(script.src)) {\n          continue;\n        }\n        this.scriptsInserted().push(script.src);\n        const newScript = document.createElement(\"script\");\n        newScript.async = true;\n        newScript.src = script.src;\n        document.head.appendChild(newScript);\n      } else if (\n        !script.type ||\n        [\n          \"text/javascript\",\n          \"application/javascript\",\n          \"application/ecmascript\",\n        ].includes(script.type)\n      ) {\n        if (this.scriptsRun().includes(script.innerText)) {\n          continue;\n        }\n        try {\n          requestAnimationFrame(() => {\n            this.scriptsRun().push(script.innerText);\n            new Function(script.innerText)();\n          });\n        } catch (error) {\n          logger.warn(\n            \"[BUILDER.IO] `CustomCode`: Error running script:\",\n            error\n          );\n        }\n      }\n    }\n  }\n\n  constructor(protected sanitizer: DomSanitizer) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.code();\n          // ---\n\n          if (isEditing()) {\n            setTimeout(() => {\n              this.runScripts();\n            }, 0);\n          }\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n      this.runScripts();\n    }\n  }\n}\n","import type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Embed',\n  static: true,\n  inputs: [{\n    name: 'url',\n    type: 'url',\n    required: true,\n    defaultValue: '',\n    helperText: 'e.g. enter a youtube url, google map, etc'\n  }, {\n    name: 'content',\n    type: 'html',\n    defaultValue: '<div style=\"padding: 20px; text-align: center\">(Choose an embed URL)<div>',\n    hideFromUI: true\n  }]\n}","const SCRIPT_MIME_TYPES = ['text/javascript', 'application/javascript', 'application/ecmascript'];\nexport const isJsScript = (script: HTMLScriptElement) => SCRIPT_MIME_TYPES.includes(script.type)","import {\n  Component,\n  viewChild,\n  ElementRef,\n  input,\n  effect,\n  signal,\n  ChangeDetectionStrategy,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { DomSanitizer } from \"@angular/platform-browser\";\n\nexport interface EmbedProps {\n  content: string;\n}\n\nimport { logger } from \"../../helpers/logger\";\nimport { isJsScript } from \"./helpers\";\n\n@Component({\n  selector: \"builder-embed\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <div\n      class=\"builder-embed\"\n      #elem\n      [innerHTML]=\"sanitizer.bypassSecurityTrustHtml(content())\"\n    ></div>\n  `,\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  styles: `:host { display: contents; }`,\n})\nexport default class Embed {\n  content: InputSignal<EmbedProps[\"content\"]> = input<EmbedProps[\"content\"]>();\n\n  elem = viewChild<ElementRef>(\"elem\");\n\n  scriptsInserted = signal([]);\n  scriptsRun = signal([]);\n  ranInitFn = signal(false);\n\n  findAndRunScripts() {\n    if (\n      !this.elem()?.nativeElement ||\n      !this.elem()?.nativeElement.getElementsByTagName\n    )\n      return;\n    const scripts = this.elem()?.nativeElement.getElementsByTagName(\"script\");\n    for (let i = 0; i < scripts.length; i++) {\n      const script = scripts[i];\n      if (script.src && !this.scriptsInserted().includes(script.src)) {\n        this.scriptsInserted().push(script.src);\n        const newScript = document.createElement(\"script\");\n        newScript.async = true;\n        newScript.src = script.src;\n        document.head.appendChild(newScript);\n      } else if (\n        isJsScript(script) &&\n        !this.scriptsRun().includes(script.innerText)\n      ) {\n        try {\n          requestAnimationFrame(() => {\n            this.scriptsRun().push(script.innerText);\n            new Function(script.innerText)();\n          });\n        } catch (error) {\n          logger.warn(\"[BUILDER.IO] `Embed`: Error running script:\", error);\n        }\n      }\n    }\n  }\n\n  constructor(protected sanitizer: DomSanitizer) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.elem();\n          this.ranInitFn();\n          // ---\n\n          if (this.elem()?.nativeElement && !this.ranInitFn()) {\n            this.ranInitFn.set(true);\n            this.findAndRunScripts();\n          }\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n}\n","import type { ComponentInfo } from '../../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Form:Form',\n  // editableTags: ['builder-form-error']\n  defaults: {\n    responsiveStyles: {\n      large: {\n        marginTop: '15px',\n        paddingBottom: '15px'\n      }\n    }\n  },\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fef36d2a846134910b64b88e6d18c5ca5',\n  inputs: [{\n    name: 'sendSubmissionsTo',\n    type: 'string',\n    // TODO: save to builder data and user can download as csv\n    // TODO: easy for mode too or computed add/remove fields form mode\n    // so you can edit details and high level mode at same time...\n    // Later - more integrations like mailchimp\n    // /api/v1/form-submit?to=mailchimp\n    enum: [{\n      label: 'Send to email',\n      value: 'email',\n      helperText: 'Send form submissions to the email address of your choosing'\n    }, {\n      label: 'Custom',\n      value: 'custom',\n      helperText: 'Handle where the form requests go manually with a little code, e.g. to your own custom backend'\n    }],\n    defaultValue: 'email'\n  }, {\n    name: 'sendSubmissionsToEmail',\n    type: 'string',\n    required: true,\n    // TODO: required: () => options.get(\"sendSubmissionsTo\") === \"email\"\n    defaultValue: 'your@email.com',\n    showIf: 'options.get(\"sendSubmissionsTo\") === \"email\"'\n  }, {\n    name: 'sendWithJs',\n    type: 'boolean',\n    helperText: 'Set to false to use basic html form action',\n    defaultValue: true,\n    showIf: 'options.get(\"sendSubmissionsTo\") === \"custom\"'\n  }, {\n    name: 'name',\n    type: 'string',\n    defaultValue: 'My form'\n    // advanced: true\n  }, {\n    name: 'action',\n    type: 'string',\n    helperText: 'URL to send the form data to',\n    showIf: 'options.get(\"sendSubmissionsTo\") === \"custom\"'\n  }, {\n    name: 'contentType',\n    type: 'string',\n    defaultValue: 'application/json',\n    advanced: true,\n    // TODO: do automatically if file input\n    enum: ['application/json', 'multipart/form-data', 'application/x-www-form-urlencoded'],\n    showIf: 'options.get(\"sendSubmissionsTo\") === \"custom\" && options.get(\"sendWithJs\") === true'\n  }, {\n    name: 'method',\n    type: 'string',\n    showIf: 'options.get(\"sendSubmissionsTo\") === \"custom\"',\n    defaultValue: 'POST',\n    advanced: true\n  }, {\n    name: 'previewState',\n    type: 'string',\n    // TODO: persist: false flag\n    enum: ['unsubmitted', 'sending', 'success', 'error'],\n    defaultValue: 'unsubmitted',\n    helperText: 'Choose a state to edit, e.g. choose \"success\" to show what users see on success and edit the message',\n    showIf: 'options.get(\"sendSubmissionsTo\") !== \"zapier\" && options.get(\"sendWithJs\") === true'\n  }, {\n    name: 'successUrl',\n    type: 'url',\n    helperText: 'Optional URL to redirect the user to on form submission success',\n    showIf: 'options.get(\"sendSubmissionsTo\") !== \"zapier\" && options.get(\"sendWithJs\") === true'\n  }, {\n    name: 'resetFormOnSubmit',\n    type: 'boolean',\n    showIf: \"options.get('sendSubmissionsTo') === 'custom' && options.get('sendWithJs') === true\",\n    advanced: true\n  }, {\n    name: 'successMessage',\n    type: 'uiBlocks',\n    hideFromUI: true,\n    defaultValue: [{\n      '@type': '@builder.io/sdk:Element',\n      responsiveStyles: {\n        large: {\n          marginTop: '10px'\n        }\n      },\n      component: {\n        name: 'Text',\n        options: {\n          text: '<span>Thanks!</span>'\n        }\n      }\n    }]\n  }, {\n    name: 'validate',\n    type: 'boolean',\n    defaultValue: true,\n    advanced: true\n  }, {\n    name: 'errorMessagePath',\n    type: 'text',\n    advanced: true,\n    helperText: 'Path to where to get the error message from in a JSON response to display to the user, e.g. \"error.message\" for a response like { \"error\": { \"message\": \"this username is taken\" }}'\n  }, {\n    name: 'errorMessage',\n    type: 'uiBlocks',\n    hideFromUI: true,\n    defaultValue: [{\n      '@type': '@builder.io/sdk:Element',\n      responsiveStyles: {\n        large: {\n          marginTop: '10px'\n        }\n      },\n      bindings: {\n        'component.options.text': 'state.formErrorMessage || block.component.options.text'\n      },\n      component: {\n        name: 'Text',\n        options: {\n          text: '<span>Form submission error :( Please check your answers and try again</span>'\n        }\n      }\n    }]\n  }, {\n    name: 'sendingMessage',\n    type: 'uiBlocks',\n    hideFromUI: true,\n    defaultValue: [{\n      '@type': '@builder.io/sdk:Element',\n      responsiveStyles: {\n        large: {\n          marginTop: '10px'\n        }\n      },\n      component: {\n        name: 'Text',\n        options: {\n          text: '<span>Sending...</span>'\n        }\n      }\n    }]\n  }, {\n    name: 'customHeaders',\n    type: 'map',\n    valueType: {\n      type: 'string'\n    },\n    advanced: true,\n    showIf: 'options.get(\"sendSubmissionsTo\") === \"custom\" && options.get(\"sendWithJs\") === true'\n  }],\n  noWrap: true,\n  canHaveChildren: true,\n  defaultChildren: [{\n    '@type': '@builder.io/sdk:Element',\n    responsiveStyles: {\n      large: {\n        marginTop: '10px'\n      }\n    },\n    component: {\n      name: 'Text',\n      options: {\n        text: '<span>Enter your name</span>'\n      }\n    }\n  }, {\n    '@type': '@builder.io/sdk:Element',\n    responsiveStyles: {\n      large: {\n        marginTop: '10px'\n      }\n    },\n    component: {\n      name: 'Form:Input',\n      options: {\n        name: 'name',\n        placeholder: 'Jane Doe'\n      }\n    }\n  }, {\n    '@type': '@builder.io/sdk:Element',\n    responsiveStyles: {\n      large: {\n        marginTop: '10px'\n      }\n    },\n    component: {\n      name: 'Text',\n      options: {\n        text: '<span>Enter your email</span>'\n      }\n    }\n  }, {\n    '@type': '@builder.io/sdk:Element',\n    responsiveStyles: {\n      large: {\n        marginTop: '10px'\n      }\n    },\n    component: {\n      name: 'Form:Input',\n      options: {\n        name: 'email',\n        placeholder: 'jane@doe.com'\n      }\n    }\n  }, {\n    '@type': '@builder.io/sdk:Element',\n    responsiveStyles: {\n      large: {\n        marginTop: '10px'\n      }\n    },\n    component: {\n      name: 'Form:SubmitButton',\n      options: {\n        text: 'Submit'\n      }\n    }\n  }],\n  shouldReceiveBuilderProps: {\n    builderBlock: true,\n    builderContext: true,\n    builderComponents: true,\n    builderLinkComponent: true\n  }\n}","export const validEnvList = ['production', 'qa', 'test', 'development', 'dev', 'cdn-qa', 'cloud', 'fast', 'cdn2', 'cdn-prod'];\nexport const getEnv = (): string => {\n  const env = process.env.NODE_ENV || 'production';\n  return validEnvList.includes(env) ? env : 'production';\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\n/**\n * This import is used by the Svelte SDK. Do not remove.\n */\n\nexport type FormProps = BuilderDataProps &\n  BuilderComponentsProp &\n  BuilderLinkComponentProp & {\n    attributes?: any;\n    name?: string;\n    action?: string;\n    validate?: boolean;\n    method?: string;\n    sendSubmissionsTo?: string;\n    sendSubmissionsToEmail?: string;\n    sendWithJs?: boolean;\n    contentType?: string;\n    customHeaders?: {\n      [key: string]: string;\n    };\n    successUrl?: string;\n    previewState?: FormState;\n    successMessage?: BuilderBlock[];\n    errorMessage?: BuilderBlock[];\n    sendingMessage?: BuilderBlock[];\n    resetFormOnSubmit?: boolean;\n    errorMessagePath?: string;\n    children?: any;\n  };\n/**\n * This import is used by the Svelte SDK. Do not remove.\n */\n\nexport type FormState = \"unsubmitted\" | \"sending\" | \"success\" | \"error\";\n\nimport Blocks from \"../../../components/blocks/blocks\";\nimport { getEnv } from \"../../../functions/get-env\";\nimport { get } from \"../../../functions/get\";\nimport { isEditing } from \"../../../functions/is-editing\";\nimport { set } from \"../../../functions/set\";\nimport type { BuilderBlock } from \"../../../types/builder-block\";\nimport type {\n  BuilderComponentsProp,\n  BuilderDataProps,\n  BuilderLinkComponentProp,\n} from \"../../../types/builder-props\";\nimport type { Dictionary } from \"../../../types/typescript\";\nimport { filterAttrs } from \"../../helpers\";\nimport { logFetch } from \"../../../functions/log-fetch\";\nimport { setAttrs } from \"../../helpers\";\n\n@Component({\n  selector: \"form-component\",\n  standalone: true,\n  imports: [CommonModule, Blocks],\n  template: `\n    <form\n      [attr.validate]=\"validate()\"\n      #formRef\n      [attr.action]=\"!sendWithJs() && action()\"\n      [attr.method]=\"method()\"\n      [attr.name]=\"name()\"\n      (submit)=\"onSubmit($event)\"\n      #elRef0\n    >\n      <ng-content></ng-content>\n      @if(submissionState() === 'error'){\n      <blocks\n        path=\"errorMessage\"\n        [blocks]=\"errorMessage()!\"\n        [context]=\"builderContext()\"\n      ></blocks>\n      } @if(submissionState() === 'sending'){\n      <blocks\n        path=\"sendingMessage\"\n        [blocks]=\"sendingMessage()!\"\n        [context]=\"builderContext()\"\n      ></blocks>\n      } @if(submissionState() === 'error' && responseData()){\n      <pre class=\"builder-form-error-text pre\">\n        {{errorResponse(responseData())}}</pre\n      >\n      } @if(submissionState() === 'success'){\n      <blocks\n        path=\"successMessage\"\n        [blocks]=\"successMessage()!\"\n        [context]=\"builderContext()\"\n      ></blocks>\n      }\n    </form>\n  `,\n  styles: `:host { display: contents; }\n        .pre {\n          padding: 10px;\n          color: red;\n          text-align: center;\n        }\n`,\n})\nexport default class FormComponent {\n  builderContext: InputSignal<FormProps[\"builderContext\"]> =\n    input<FormProps[\"builderContext\"]>();\n  previewState: InputSignal<FormProps[\"previewState\"]> =\n    input<FormProps[\"previewState\"]>();\n  sendWithJs: InputSignal<FormProps[\"sendWithJs\"]> =\n    input<FormProps[\"sendWithJs\"]>();\n  sendSubmissionsTo: InputSignal<FormProps[\"sendSubmissionsTo\"]> =\n    input<FormProps[\"sendSubmissionsTo\"]>();\n  action: InputSignal<FormProps[\"action\"]> = input<FormProps[\"action\"]>();\n  customHeaders: InputSignal<FormProps[\"customHeaders\"]> =\n    input<FormProps[\"customHeaders\"]>();\n  contentType: InputSignal<FormProps[\"contentType\"]> =\n    input<FormProps[\"contentType\"]>();\n  sendSubmissionsToEmail: InputSignal<FormProps[\"sendSubmissionsToEmail\"]> =\n    input<FormProps[\"sendSubmissionsToEmail\"]>();\n  name: InputSignal<FormProps[\"name\"]> = input<FormProps[\"name\"]>();\n  method: InputSignal<FormProps[\"method\"]> = input<FormProps[\"method\"]>();\n  errorMessagePath: InputSignal<FormProps[\"errorMessagePath\"]> =\n    input<FormProps[\"errorMessagePath\"]>();\n  resetFormOnSubmit: InputSignal<FormProps[\"resetFormOnSubmit\"]> =\n    input<FormProps[\"resetFormOnSubmit\"]>();\n  successUrl: InputSignal<FormProps[\"successUrl\"]> =\n    input<FormProps[\"successUrl\"]>();\n  validate: InputSignal<FormProps[\"validate\"]> = input<FormProps[\"validate\"]>();\n  attributes: InputSignal<FormProps[\"attributes\"]> =\n    input<FormProps[\"attributes\"]>();\n  errorMessage: InputSignal<FormProps[\"errorMessage\"]> =\n    input<FormProps[\"errorMessage\"]>();\n  sendingMessage: InputSignal<FormProps[\"sendingMessage\"]> =\n    input<FormProps[\"sendingMessage\"]>();\n  successMessage: InputSignal<FormProps[\"successMessage\"]> =\n    input<FormProps[\"successMessage\"]>();\n\n  formRef = viewChild<ElementRef>(\"formRef\");\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  formState = signal(\"unsubmitted\");\n  responseData = signal(null);\n  formErrorMessage = signal(\"\");\n  _listenerFns = new Map();\n\n  mergeNewRootState(newData: Dictionary<any>) {\n    const combinedState = {\n      ...this.builderContext().rootState,\n      ...newData,\n    };\n    if (this.builderContext().rootSetState) {\n      this.builderContext().rootSetState?.(combinedState);\n    } else {\n      this.builderContext().rootState = combinedState;\n    }\n  }\n  submissionState() {\n    return (isEditing() && this.previewState()) || this.formState();\n  }\n  errorResponse(response: any) {\n    return JSON.stringify(response, null, 2);\n  }\n  onSubmit(event: any) {\n    const sendWithJsProp =\n      this.sendWithJs() || this.sendSubmissionsTo() === \"email\";\n    if (this.sendSubmissionsTo() === \"zapier\") {\n      event.preventDefault();\n    } else if (sendWithJsProp) {\n      if (!(this.action() || this.sendSubmissionsTo() === \"email\")) {\n        event.preventDefault();\n        return;\n      }\n      event.preventDefault();\n      const el = event.currentTarget || event.target;\n      const headers = this.customHeaders() || {};\n      let body: any;\n      const formData = new FormData(el);\n\n      // TODO: maybe support null\n      const formPairs: {\n        key: string;\n        value: File | boolean | number | string | FileList;\n      }[] = Array.from(el.querySelectorAll(\"input,select,textarea\"))\n        .filter((el) => !!(el as HTMLInputElement).name)\n        .filter(\n          (el) =>\n            !!(el as HTMLInputElement).name &&\n            ((el as HTMLInputElement).type !== \"radio\" ||\n              (el as HTMLInputElement).checked)\n        )\n        .map((el) => {\n          let value: any;\n          const key = (el as HTMLImageElement).name;\n          if (el instanceof HTMLInputElement) {\n            if (el.type === \"radio\") {\n              if (el.checked) {\n                value = el.value;\n                return {\n                  key,\n                  value,\n                };\n              }\n            } else if (el.type === \"checkbox\") {\n              value = el.checked;\n            } else if (el.type === \"number\" || el.type === \"range\") {\n              const num = el.valueAsNumber;\n              if (!isNaN(num)) {\n                value = num;\n              }\n            } else if (el.type === \"file\") {\n              // TODO: one vs multiple files\n              value = el.files;\n            } else {\n              value = el.value;\n            }\n          } else {\n            value = (el as HTMLInputElement).value;\n          }\n          return {\n            key,\n            value,\n          };\n        });\n      let formContentType = this.contentType();\n      if (this.sendSubmissionsTo() === \"email\") {\n        formContentType = \"multipart/form-data\";\n      }\n      Array.from(formPairs).forEach(({ value }) => {\n        if (\n          value instanceof File ||\n          (Array.isArray(value) && value[0] instanceof File) ||\n          value instanceof FileList\n        ) {\n          formContentType = \"multipart/form-data\";\n        }\n      });\n\n      // TODO: send as urlEncoded or multipart by default\n      // because of ease of use and reliability in browser API\n      // for encoding the form?\n      if (formContentType !== \"application/json\") {\n        body = formData;\n      } else {\n        // Json\n        const json = {};\n        Array.from(formPairs).forEach(({ value, key }) => {\n          set(json, key, value);\n        });\n        body = JSON.stringify(json);\n      }\n      if (formContentType && formContentType !== \"multipart/form-data\") {\n        if (\n          /* Zapier doesn't allow content-type header to be sent from browsers */\n          !(sendWithJsProp && this.action()?.includes(\"zapier.com\"))\n        ) {\n          headers[\"content-type\"] = formContentType;\n        }\n      }\n      const presubmitEvent = new CustomEvent(\"presubmit\", {\n        detail: {\n          body,\n        },\n      });\n      if (this.formRef()?.nativeElement) {\n        this.formRef()?.nativeElement.dispatchEvent(presubmitEvent);\n        if (presubmitEvent.defaultPrevented) {\n          return;\n        }\n      }\n      this.formState.set(\"sending\");\n      if (\n        this.sendSubmissionsTo() === \"email\" &&\n        (this.sendSubmissionsToEmail() === \"your@email.com\" ||\n          !this.sendSubmissionsToEmail())\n      ) {\n        const message =\n          \"SubmissionsToEmail is required when sendSubmissionsTo is set to email\";\n        console.error(message);\n        this.formState.set(\"error\");\n        this.mergeNewRootState({\n          formErrorMessage: message,\n        });\n        return;\n      }\n      const formUrl = `${\n        getEnv() === \"dev\" ? \"http://localhost:5000\" : \"https://builder.io\"\n      }/api/v1/form-submit?apiKey=${this.builderContext().apiKey}&to=${btoa(\n        this.sendSubmissionsToEmail() || \"\"\n      )}&name=${encodeURIComponent(this.name() || \"\")}`;\n      const url =\n        this.sendSubmissionsTo() === \"email\"\n          ? formUrl\n          : this.action()!; /* TODO: throw error if no action URL */\n\n      logFetch(url);\n      fetch(url, {\n        body,\n        headers,\n        method: this.method() || \"post\",\n      }).then(\n        async (res) => {\n          let body;\n          const contentType = res.headers.get(\"content-type\");\n          if (contentType && contentType.indexOf(\"application/json\") !== -1) {\n            body = await res.json();\n          } else {\n            body = await res.text();\n          }\n          if (!res.ok) {\n            const submitErrorEvent = new CustomEvent(\"submit:error\", {\n              detail: {\n                error: body,\n                status: res.status,\n              },\n            });\n            if (this.formRef()?.nativeElement?.nativeElement) {\n              this.formRef()?.nativeElement?.nativeElement.dispatchEvent(\n                submitErrorEvent\n              );\n              if (submitErrorEvent.defaultPrevented) {\n                return;\n              }\n            }\n            this.responseData.set(body);\n            this.formState.set(\"error\");\n            let message = this.errorMessagePath()\n              ? get(body, this.errorMessagePath())\n              : body.message || body.error || body;\n            if (typeof message !== \"string\") {\n              message = JSON.stringify(message);\n            }\n            this.formErrorMessage.set(message);\n            this.mergeNewRootState({\n              formErrorMessage: message,\n            });\n            return;\n          }\n          this.responseData.set(body);\n          this.formState.set(res.ok ? \"success\" : \"error\");\n          if (res.ok) {\n            const submitSuccessEvent = new CustomEvent(\"submit:success\", {\n              detail: {\n                res,\n                body,\n              },\n            });\n            if (this.formRef()?.nativeElement) {\n              this.formRef()?.nativeElement.dispatchEvent(submitSuccessEvent);\n              if (submitSuccessEvent.defaultPrevented) {\n                return;\n              }\n              /* TODO: option to turn this on/off? */\n              if (this.resetFormOnSubmit() !== false) {\n                this.formRef()?.nativeElement.reset();\n              }\n            }\n\n            /* TODO: client side route event first that can be preventDefaulted */\n            if (this.successUrl()) {\n              if (this.formRef()?.nativeElement) {\n                const event = new CustomEvent(\"route\", {\n                  detail: {\n                    url: this.successUrl(),\n                  },\n                });\n                this.formRef()?.nativeElement.dispatchEvent(event);\n                if (!event.defaultPrevented) {\n                  location.href = this.successUrl();\n                }\n              } else {\n                location.href = this.successUrl();\n              }\n            }\n          }\n        },\n        (err) => {\n          const submitErrorEvent = new CustomEvent(\"submit:error\", {\n            detail: {\n              error: err,\n            },\n          });\n          if (this.formRef()?.nativeElement) {\n            this.formRef()?.nativeElement.dispatchEvent(submitErrorEvent);\n            if (submitErrorEvent.defaultPrevented) {\n              return;\n            }\n          }\n          this.responseData.set(err);\n          this.formState.set(\"error\");\n        }\n      );\n    }\n  }\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n    this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import type { ComponentInfo } from '../../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Form:Input',\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fad6f37889d9e40bbbbc72cdb5875d6ca',\n  inputs: [{\n    name: 'type',\n    type: 'text',\n    enum: ['text', 'number', 'email', 'url', 'checkbox', 'radio', 'range', 'date', 'datetime-local', 'search', 'tel', 'time', 'file', 'month', 'week', 'password', 'color', 'hidden'],\n    defaultValue: 'text'\n  }, {\n    name: 'name',\n    type: 'string',\n    required: true,\n    helperText: 'Every input in a form needs a unique name describing what it takes, e.g. \"email\"'\n  }, {\n    name: 'placeholder',\n    type: 'string',\n    defaultValue: 'Hello there',\n    helperText: 'Text to display when there is no value'\n  },\n  // TODO: handle value vs default value automatically like ng-model\n  {\n    name: 'defaultValue',\n    type: 'string'\n  }, {\n    name: 'value',\n    type: 'string',\n    advanced: true\n  }, {\n    name: 'required',\n    type: 'boolean',\n    helperText: 'Is this input required to be filled out to submit a form',\n    defaultValue: false\n  }],\n  noWrap: true,\n  static: true,\n  defaultStyles: {\n    paddingTop: '10px',\n    paddingBottom: '10px',\n    paddingLeft: '10px',\n    paddingRight: '10px',\n    borderRadius: '3px',\n    borderWidth: '1px',\n    borderStyle: 'solid',\n    borderColor: '#ccc'\n  }\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\n/**\n * This import is used by the Svelte SDK. Do not remove.\n */\n\nexport interface FormInputProps {\n  type?: string;\n  attributes?: any;\n  name?: string;\n  value?: string;\n  placeholder?: string;\n  defaultValue?: string;\n  required?: boolean;\n}\n\nimport { isEditing } from \"../../../functions/is-editing\";\nimport { filterAttrs } from \"../../helpers\";\nimport { setAttrs } from \"../../helpers\";\n\n@Component({\n  selector: \"form-input-component\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <input\n      #elRef0\n      [attr.placeholder]=\"placeholder()\"\n      [attr.type]=\"type()\"\n      [attr.name]=\"name()\"\n      [attr.value]=\"value()\"\n      [attr.defaultValue]=\"defaultValue()\"\n      [attr.required]=\"required()\"\n    />\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class FormInputComponent {\n  protected readonly isEditing = isEditing;\n\n  attributes: InputSignal<FormInputProps[\"attributes\"]> =\n    input<FormInputProps[\"attributes\"]>();\n  defaultValue: InputSignal<FormInputProps[\"defaultValue\"]> =\n    input<FormInputProps[\"defaultValue\"]>();\n  placeholder: InputSignal<FormInputProps[\"placeholder\"]> =\n    input<FormInputProps[\"placeholder\"]>();\n  type: InputSignal<FormInputProps[\"type\"]> = input<FormInputProps[\"type\"]>();\n  name: InputSignal<FormInputProps[\"name\"]> = input<FormInputProps[\"name\"]>();\n  value: InputSignal<FormInputProps[\"value\"]> =\n    input<FormInputProps[\"value\"]>();\n  required: InputSignal<FormInputProps[\"required\"]> =\n    input<FormInputProps[\"required\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  _listenerFns = new Map();\n\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n    this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import type { ComponentInfo } from '../../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Form:Select',\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F83acca093fb24aaf94dee136e9a4b045',\n  defaultStyles: {\n    alignSelf: 'flex-start'\n  },\n  inputs: [{\n    name: 'options',\n    type: 'list',\n    required: true,\n    subFields: [{\n      name: 'value',\n      type: 'text',\n      required: true\n    }, {\n      name: 'name',\n      type: 'text'\n    }],\n    defaultValue: [{\n      value: 'option 1'\n    }, {\n      value: 'option 2'\n    }]\n  }, {\n    name: 'name',\n    type: 'string',\n    required: true,\n    helperText: 'Every select in a form needs a unique name describing what it gets, e.g. \"email\"'\n  }, {\n    name: 'defaultValue',\n    type: 'string'\n  }, {\n    name: 'value',\n    type: 'string',\n    advanced: true\n  }, {\n    name: 'required',\n    type: 'boolean',\n    defaultValue: false\n  }],\n  static: true,\n  noWrap: true\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\n/**\n * This import is used by the Svelte SDK. Do not remove.\n */\n\nexport interface FormSelectProps {\n  options?: {\n    name?: string;\n    value: string;\n  }[];\n  attributes?: any;\n  name?: string;\n  value?: string;\n  defaultValue?: string;\n  required?: boolean;\n}\n\nimport { isEditing } from \"../../../functions/is-editing\";\nimport { filterAttrs } from \"../../helpers\";\nimport { setAttrs } from \"../../helpers\";\n\n@Component({\n  selector: \"select-component\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <select\n      #elRef0\n      [attr.value]=\"value()\"\n      [attr.defaultValue]=\"defaultValue()\"\n      [attr.name]=\"name()\"\n      [attr.required]=\"required()\"\n    >\n      @for (option of options();track trackByOption0(index, option);let index =\n      $index) {\n      <option [attr.value]=\"option.value\">\n        {{option.name || option.value}}\n      </option>\n      }\n    </select>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class SelectComponent {\n  protected readonly isEditing = isEditing;\n\n  attributes: InputSignal<FormSelectProps[\"attributes\"]> =\n    input<FormSelectProps[\"attributes\"]>();\n  value: InputSignal<FormSelectProps[\"value\"]> =\n    input<FormSelectProps[\"value\"]>();\n  defaultValue: InputSignal<FormSelectProps[\"defaultValue\"]> =\n    input<FormSelectProps[\"defaultValue\"]>();\n  name: InputSignal<FormSelectProps[\"name\"]> = input<FormSelectProps[\"name\"]>();\n  required: InputSignal<FormSelectProps[\"required\"]> =\n    input<FormSelectProps[\"required\"]>();\n  options: InputSignal<FormSelectProps[\"options\"]> =\n    input<FormSelectProps[\"options\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  _listenerFns = new Map();\n\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n  trackByOption0(index: number, option: any) {\n    return `${option.name}-${index}`;\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n    this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import type { ComponentInfo } from '../../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Form:SubmitButton',\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fdf2820ffed1f4349a94c40b3221f5b98',\n  defaultStyles: {\n    appearance: 'none',\n    paddingTop: '15px',\n    paddingBottom: '15px',\n    paddingLeft: '25px',\n    paddingRight: '25px',\n    backgroundColor: '#3898EC',\n    color: 'white',\n    borderRadius: '4px',\n    cursor: 'pointer'\n  },\n  inputs: [{\n    name: 'text',\n    type: 'text',\n    defaultValue: 'Click me'\n  }],\n  static: true,\n  noWrap: true\n  // TODO: optional children? maybe as optional form input\n  // that only shows if advanced setting is flipped\n  // TODO: defaultChildren\n  // canHaveChildren: true,\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\n/**\n * This import is used by the Svelte SDK. Do not remove.\n */\n\nexport interface ButtonProps {\n  attributes?: any;\n  text?: string;\n}\n\nimport { filterAttrs } from \"../../helpers\";\nimport { setAttrs } from \"../../helpers\";\n\n@Component({\n  selector: \"submit-button\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <button type=\"submit\" #elRef0>{{text()}}</button>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class SubmitButton {\n  attributes: InputSignal<ButtonProps[\"attributes\"]> =\n    input<ButtonProps[\"attributes\"]>();\n  text: InputSignal<ButtonProps[\"text\"]> = input<ButtonProps[\"text\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  _listenerFns = new Map();\n\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n    this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import type { ComponentInfo } from '../../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Form:TextArea',\n  image: 'https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Ff74a2f3de58c4c3e939204e5b6b8f6c3',\n  inputs: [{\n    advanced: true,\n    name: 'value',\n    type: 'string'\n  }, {\n    name: 'name',\n    type: 'string',\n    required: true,\n    helperText: 'Every input in a form needs a unique name describing what it gets, e.g. \"email\"'\n  }, {\n    name: 'defaultValue',\n    type: 'string'\n  }, {\n    name: 'placeholder',\n    type: 'string',\n    defaultValue: 'Hello there'\n  }, {\n    name: 'required',\n    type: 'boolean',\n    defaultValue: false\n  }],\n  defaultStyles: {\n    paddingTop: '10px',\n    paddingBottom: '10px',\n    paddingLeft: '10px',\n    paddingRight: '10px',\n    borderRadius: '3px',\n    borderWidth: '1px',\n    borderStyle: 'solid',\n    borderColor: '#ccc'\n  },\n  static: true,\n  noWrap: true\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\n/**\n * This import is used by the Svelte SDK. Do not remove.\n */\n\nexport interface TextareaProps {\n  attributes?: any;\n  name?: string;\n  value?: string;\n  defaultValue?: string;\n  placeholder?: string;\n  required?: boolean;\n}\n\nimport { filterAttrs } from \"../../helpers\";\nimport { setAttrs } from \"../../helpers\";\n\n@Component({\n  selector: \"builder-textarea\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <textarea\n      #elRef0\n      [attr.placeholder]=\"placeholder()\"\n      [attr.name]=\"name()\"\n      [attr.value]=\"value()\"\n      [attr.defaultValue]=\"defaultValue()\"\n      [attr.required]=\"required()\"\n    ></textarea>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Textarea {\n  attributes: InputSignal<TextareaProps[\"attributes\"]> =\n    input<TextareaProps[\"attributes\"]>();\n  placeholder: InputSignal<TextareaProps[\"placeholder\"]> =\n    input<TextareaProps[\"placeholder\"]>();\n  name: InputSignal<TextareaProps[\"name\"]> = input<TextareaProps[\"name\"]>();\n  value: InputSignal<TextareaProps[\"value\"]> = input<TextareaProps[\"value\"]>();\n  defaultValue: InputSignal<TextareaProps[\"defaultValue\"]> =\n    input<TextareaProps[\"defaultValue\"]>();\n  required: InputSignal<TextareaProps[\"required\"]> =\n    input<TextareaProps[\"required\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  _listenerFns = new Map();\n\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n    this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import { IMAGE_FILE_TYPES } from '../../constants/file-types';\nimport type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Raw:Img',\n  hideFromInsertMenu: true,\n  image: 'https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4',\n  inputs: [{\n    name: 'image',\n    bubble: true,\n    type: 'file',\n    allowedFileTypes: IMAGE_FILE_TYPES,\n    required: true\n  }, {\n    name: 'backgroundSize',\n    type: 'text',\n    defaultValue: 'cover',\n    enum: [{\n      label: 'contain',\n      value: 'contain',\n      helperText: 'The image should never get cropped'\n    }, {\n      label: 'cover',\n      value: 'cover',\n      helperText: \"The image should fill it's box, cropping when needed\"\n    }]\n  }, {\n    name: 'backgroundPosition',\n    type: 'text',\n    defaultValue: 'center',\n    enum: ['center', 'top', 'left', 'right', 'bottom', 'top left', 'top right', 'bottom left', 'bottom right']\n  }, {\n    name: 'altText',\n    type: 'string',\n    helperText: 'Text to display when the user has images off'\n  }, {\n    name: 'title',\n    type: 'string',\n    helperText: 'Text to display when hovering over the asset'\n  }, {\n    name: 'aspectRatio',\n    type: 'number',\n    helperText: \"This is the ratio of height/width, e.g. set to 1.5 for a 300px wide and 200px tall photo. Set to 0 to not force the image to maintain it's aspect ratio\",\n    advanced: true,\n    defaultValue: 0.7041\n  }],\n  noWrap: true\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\n/**\n * This import is used by the Svelte SDK. Do not remove.\n */\n\nexport interface ImgProps {\n  attributes?: any;\n  imgSrc?: string; // TODO(misko): I think this is unused\n  image?: string;\n  altText?: string;\n  backgroundSize?: \"cover\" | \"contain\";\n  backgroundPosition?:\n    | \"center\"\n    | \"top\"\n    | \"left\"\n    | \"right\"\n    | \"bottom\"\n    | \"top left\"\n    | \"top right\"\n    | \"bottom left\"\n    | \"bottom right\";\n  aspectRatio?: number;\n  title?: string;\n}\n\nimport { isEditing } from \"../../functions/is-editing\";\nimport { filterAttrs } from \"../helpers\";\nimport { getSrcSet } from \"../image/image.helpers\";\nimport { getClassPropName } from \"../../functions/get-class-prop-name\";\n\n@Component({\n  selector: \"img-component\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <img\n      loading=\"lazy\"\n      [attr.alt]=\"altText()\"\n      [attr.title]=\"title()\"\n      [attr.src]=\"imgSrc() || image()\"\n      #elRef0\n      [ngStyle]=\"objSpread_style_59ligj()\"\n    />\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class ImgComponent {\n  protected readonly isEditing = isEditing;\n\n  imgSrc: InputSignal<ImgProps[\"imgSrc\"]> = input<ImgProps[\"imgSrc\"]>();\n  image: InputSignal<ImgProps[\"image\"]> = input<ImgProps[\"image\"]>();\n  attributes: InputSignal<ImgProps[\"attributes\"]> =\n    input<ImgProps[\"attributes\"]>();\n  altText: InputSignal<ImgProps[\"altText\"]> = input<ImgProps[\"altText\"]>();\n  title: InputSignal<ImgProps[\"title\"]> = input<ImgProps[\"title\"]>();\n  backgroundSize: InputSignal<ImgProps[\"backgroundSize\"]> =\n    input<ImgProps[\"backgroundSize\"]>();\n  backgroundPosition: InputSignal<ImgProps[\"backgroundPosition\"]> =\n    input<ImgProps[\"backgroundPosition\"]>();\n  aspectRatio: InputSignal<ImgProps[\"aspectRatio\"]> =\n    input<ImgProps[\"aspectRatio\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  _listenerFns = new Map();\n\n  srcSetToUse = computed(() => {\n    const url = this.imgSrc() || this.image();\n    if (!url || typeof url !== \"string\") {\n      return undefined;\n    }\n\n    // We can auto add srcset for cdn.builder.io images\n    if (!url.match(/builder\\.io/)) {\n      return undefined;\n    }\n    return getSrcSet(url);\n  });\n  imgAttrs = computed(() => {\n    const attrs = {\n      ...this.attributes(),\n      ...{},\n      [getClassPropName()]: `builder-raw-img ${\n        this.attributes()[getClassPropName()] || \"\"\n      }`,\n    } as Record<string, any>;\n    delete attrs.style;\n    return attrs;\n  });\n  objSpread_style_59ligj = computed(() => {\n    return {\n      objectFit: this.backgroundSize() || \"cover\",\n      objectPosition: this.backgroundPosition() || \"center\",\n      aspectRatio: this.aspectRatio() || undefined,\n      ...(this.attributes()?.style || {}),\n    };\n  });\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.imgAttrs());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    this.setAttributes(this.elRef0()?.nativeElement, this.imgAttrs());\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","import { IMAGE_FILE_TYPES, VIDEO_FILE_TYPES } from '../../constants/file-types';\nimport type { ComponentInfo } from '../../types/components';\nexport const componentInfo: ComponentInfo = {\n  name: 'Video',\n  canHaveChildren: true,\n  defaultStyles: {\n    minHeight: '20px',\n    minWidth: '20px'\n  },\n  image: 'https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-videocam-24px%20(1).svg?alt=media&token=49a84e4a-b20e-4977-a650-047f986874bb',\n  inputs: [{\n    name: 'video',\n    type: 'file',\n    allowedFileTypes: VIDEO_FILE_TYPES,\n    bubble: true,\n    defaultValue: 'https://cdn.builder.io/o/assets%2FYJIGb4i01jvw0SRdL5Bt%2Fd27731a526464deba0016216f5f9e570%2Fcompressed?apiKey=YJIGb4i01jvw0SRdL5Bt&token=d27731a526464deba0016216f5f9e570&alt=media&optimized=true',\n    required: true\n  }, {\n    name: 'posterImage',\n    type: 'file',\n    allowedFileTypes: IMAGE_FILE_TYPES,\n    helperText: 'Image to show before the video plays'\n  }, {\n    name: 'autoPlay',\n    type: 'boolean',\n    defaultValue: true\n  }, {\n    name: 'controls',\n    type: 'boolean',\n    defaultValue: false\n  }, {\n    name: 'muted',\n    type: 'boolean',\n    defaultValue: true\n  }, {\n    name: 'loop',\n    type: 'boolean',\n    defaultValue: true\n  }, {\n    name: 'playsInline',\n    type: 'boolean',\n    defaultValue: true\n  }, {\n    name: 'fit',\n    type: 'text',\n    defaultValue: 'cover',\n    enum: ['contain', 'cover', 'fill', 'auto']\n  }, {\n    name: 'preload',\n    type: 'text',\n    defaultValue: 'metadata',\n    enum: ['auto', 'metadata', 'none']\n  }, {\n    name: 'fitContent',\n    type: 'boolean',\n    helperText: 'When child blocks are provided, fit to them instead of using the aspect ratio',\n    defaultValue: true,\n    advanced: true\n  }, {\n    name: 'position',\n    type: 'text',\n    defaultValue: 'center',\n    enum: ['center', 'top', 'left', 'right', 'bottom', 'top left', 'top right', 'bottom left', 'bottom right']\n  }, {\n    name: 'height',\n    type: 'number',\n    advanced: true\n  }, {\n    name: 'width',\n    type: 'number',\n    advanced: true\n  }, {\n    name: 'aspectRatio',\n    type: 'number',\n    advanced: true,\n    defaultValue: 0.7004048582995948\n  }, {\n    name: 'lazyLoad',\n    type: 'boolean',\n    helperText: 'Load this video \"lazily\" - as in only when a user scrolls near the video. Recommended for optmized performance and bandwidth consumption',\n    defaultValue: true,\n    advanced: true\n  }],\n  shouldReceiveBuilderProps: {\n    builderBlock: true\n  }\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport type { VideoProps } from \"./video.types\";\n\n@Component({\n  selector: \"builder-video\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <div\n      [ngStyle]=\"{\n          position: 'relative'\n        }\"\n    >\n      <video\n        class=\"builder-video\"\n        #elRef0\n        #videoRef\n        [attr.preload]=\"lazyLoad() ? 'none' : preload() || 'metadata'\"\n        [ngStyle]=\"objSpread_style_8mtss2()\"\n        [attr.poster]=\"posterImage()\"\n      >\n        <source type=\"video/mp4\" #elRef1 />\n      </video>\n      @if(aspectRatio() && !(fitContent() && builderBlock()?.children?.length)){\n      <div\n        [ngStyle]=\"{\n          width: '100%',\n          paddingTop: aspectRatio()! * 100 + '%',\n          pointerEvents: 'none',\n          fontSize: '0px'\n        }\"\n      ></div>\n      } @if(builderBlock()?.children?.length && fitContent()){\n      <div\n        [ngStyle]=\"{\n          display: 'flex',\n          flexDirection: 'column',\n          alignItems: 'stretch'\n        }\"\n      >\n        <ng-content></ng-content>\n      </div>\n      } @if(builderBlock()?.children?.length && !fitContent()){\n      <div\n        [ngStyle]=\"{\n          pointerEvents: 'none',\n          display: 'flex',\n          flexDirection: 'column',\n          alignItems: 'stretch',\n          position: 'absolute',\n          top: '0',\n          left: '0',\n          width: '100%',\n          height: '100%'\n        }\"\n      >\n        <ng-content></ng-content>\n      </div>\n      }\n    </div>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Video {\n  lazyLoad: InputSignal<VideoProps[\"lazyLoad\"]> =\n    input<VideoProps[\"lazyLoad\"]>();\n  autoPlay: InputSignal<VideoProps[\"autoPlay\"]> =\n    input<VideoProps[\"autoPlay\"]>();\n  muted: InputSignal<VideoProps[\"muted\"]> = input<VideoProps[\"muted\"]>();\n  controls: InputSignal<VideoProps[\"controls\"]> =\n    input<VideoProps[\"controls\"]>();\n  loop: InputSignal<VideoProps[\"loop\"]> = input<VideoProps[\"loop\"]>();\n  playsInline: InputSignal<VideoProps[\"playsInline\"]> =\n    input<VideoProps[\"playsInline\"]>();\n  preload: InputSignal<VideoProps[\"preload\"]> = input<VideoProps[\"preload\"]>();\n  attributes: InputSignal<VideoProps[\"attributes\"]> =\n    input<VideoProps[\"attributes\"]>();\n  fit: InputSignal<VideoProps[\"fit\"]> = input<VideoProps[\"fit\"]>();\n  position: InputSignal<VideoProps[\"position\"]> =\n    input<VideoProps[\"position\"]>();\n  aspectRatio: InputSignal<VideoProps[\"aspectRatio\"]> =\n    input<VideoProps[\"aspectRatio\"]>();\n  posterImage: InputSignal<VideoProps[\"posterImage\"]> =\n    input<VideoProps[\"posterImage\"]>();\n  video: InputSignal<VideoProps[\"video\"]> = input<VideoProps[\"video\"]>();\n  fitContent: InputSignal<VideoProps[\"fitContent\"]> =\n    input<VideoProps[\"fitContent\"]>();\n  builderBlock: InputSignal<VideoProps[\"builderBlock\"]> =\n    input<VideoProps[\"builderBlock\"]>();\n\n  videoRef = viewChild<ElementRef>(\"videoRef\");\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n  elRef1 = viewChild<ElementRef>(\"elRef1\");\n\n  lazyVideoObserver = signal(undefined);\n  _listenerFns = new Map();\n\n  videoProps = computed(() => {\n    return {\n      ...(this.autoPlay() === true\n        ? {\n            autoPlay: true,\n          }\n        : {}),\n      ...(this.muted() === true\n        ? {\n            muted: true,\n          }\n        : {}),\n      ...(this.controls() === true\n        ? {\n            controls: true,\n          }\n        : {}),\n      ...(this.loop() === true\n        ? {\n            loop: true,\n          }\n        : {}),\n      ...(this.playsInline() === true\n        ? {\n            playsInline: true,\n          }\n        : {}),\n    };\n  });\n  spreadProps = computed(() => {\n    return {\n      ...this.videoProps(),\n    };\n  });\n  objSpread_style_8mtss2 = computed(() => {\n    return {\n      width: \"100%\",\n      height: \"100%\",\n      ...this.attributes()?.style,\n      objectFit: this.fit(),\n      objectPosition: this.position(),\n      // Hack to get object fit to work as expected and\n      // not have the video overflow\n      borderRadius: \"1px\",\n      ...(this.aspectRatio()\n        ? {\n            position: \"absolute\",\n          }\n        : null),\n    };\n  });\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.spreadProps());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(\n            this.elRef1()?.nativeElement,\n            this.lazyLoad()\n              ? {\n                  \"data-src\": this.video(),\n                }\n              : {\n                  src: this.video(),\n                }\n          );\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n      if (this.lazyLoad()) {\n        const oberver = new IntersectionObserver(function (entries) {\n          entries.forEach(function (entry) {\n            if (!entry.isIntersecting) return;\n            const videoElement = entry.target as HTMLVideoElement;\n            try {\n              // Convert HTMLCollection to Array and filter for source elements\n              Array.from(videoElement.children)\n                .filter(\n                  (child): child is HTMLSourceElement =>\n                    child instanceof HTMLElement && child.tagName === \"SOURCE\"\n                )\n                .forEach((source) => {\n                  const src = source.dataset.src;\n                  if (src) {\n                    source.src = src;\n                  }\n                });\n              videoElement.load();\n              oberver.unobserve(videoElement);\n            } catch (error) {\n              console.error(\"Error loading lazy video:\", error);\n            }\n          });\n        });\n        if (this.videoRef()?.nativeElement) {\n          oberver.observe(this.videoRef()?.nativeElement);\n        }\n        this.lazyVideoObserver.set(oberver);\n      }\n    }\n    this.setAttributes(this.elRef0()?.nativeElement, this.spreadProps());\n    this.setAttributes(\n      this.elRef1()?.nativeElement,\n      this.lazyLoad()\n        ? {\n            \"data-src\": this.video(),\n          }\n        : {\n            src: this.video(),\n          }\n    );\n  }\n\n  ngOnDestroy() {\n    if (this.lazyVideoObserver()) {\n      this.lazyVideoObserver().disconnect();\n    }\n  }\n}\n","/**\n * These are in a separate file because React Native does not support them (yet).\n * Having them in a separate file allows us to override it to be empty in the\n * React Native SDK.\n */\n\nimport { componentInfo as customCodeInfo } from '../blocks/custom-code/component-info';\nimport { default as customCode } from '../blocks/custom-code/index';\nimport { componentInfo as embedComponentInfo } from '../blocks/embed/component-info';\nimport { default as embed } from '../blocks/embed/index';\nimport { componentInfo as formComponentInfo } from '../blocks/form/form/component-info';\nimport { default as Form } from '../blocks/form/form/index';\nimport { componentInfo as formInputComponentInfo } from '../blocks/form/input/component-info';\nimport { default as FormInput } from '../blocks/form/input/index';\nimport { componentInfo as formSelectComponentInfo } from '../blocks/form/select/component-info';\nimport { default as FormSelect } from '../blocks/form/select/index';\nimport { componentInfo as formSubmitButtonComponentInfo } from '../blocks/form/submit-button/component-info';\nimport { default as FormSubmitButton } from '../blocks/form/submit-button/index';\nimport { componentInfo as textAreaComponentInfo } from '../blocks/form/textarea/component-info';\nimport { default as Textarea } from '../blocks/form/textarea/index';\nimport { componentInfo as imgComponentInfo } from '../blocks/img/component-info';\nimport { default as Img } from '../blocks/img/index';\nimport { componentInfo as videoComponentInfo } from '../blocks/video/component-info';\nimport { default as Video } from '../blocks/video/index';\nimport type { RegisteredComponent } from '../context/types';\nimport { TARGET } from './target';\nexport const getExtraComponents: () => RegisteredComponent[] = () => [{\n  component: customCode,\n  ...customCodeInfo\n}, {\n  component: embed,\n  ...embedComponentInfo\n}, ...(TARGET === 'rsc' ? [] : [{\n  component: Form,\n  ...formComponentInfo\n}, {\n  component: FormInput,\n  ...formInputComponentInfo\n}, {\n  component: FormSubmitButton,\n  ...formSubmitButtonComponentInfo\n}, {\n  component: FormSelect,\n  ...formSelectComponentInfo\n}, {\n  component: Textarea,\n  ...textAreaComponentInfo\n}]), {\n  component: Img,\n  ...imgComponentInfo\n}, {\n  component: Video,\n  ...videoComponentInfo\n}]","import { componentInfo as accordionComponentInfo } from '../blocks/accordion/component-info';\nimport { default as Accordion } from '../blocks/accordion/index';\nimport { componentInfo as buttonComponentInfo } from '../blocks/button/component-info';\nimport { default as Button } from '../blocks/button/index';\nimport { componentInfo as columnsComponentInfo } from '../blocks/columns/component-info';\nimport { default as Columns } from '../blocks/columns/index';\nimport { componentInfo as fragmentComponentInfo } from '../blocks/fragment/component-info';\nimport { default as Fragment } from '../blocks/fragment/index';\nimport { componentInfo as imageComponentInfo } from '../blocks/image/component-info';\nimport { default as Image } from '../blocks/image/index';\nimport { componentInfo as personalizationContainerComponentInfo } from '../blocks/personalization-container/component-info';\nimport { SDKS_SUPPORTING_PERSONALIZATION } from '../blocks/personalization-container/helpers';\nimport { default as PersonalizationContainer } from '../blocks/personalization-container/index';\nimport { componentInfo as sectionComponentInfo } from '../blocks/section/component-info';\nimport { default as Section } from '../blocks/section/index';\nimport { componentInfo as slotComponentInfo } from '../blocks/slot/component-info';\nimport { default as Slot } from '../blocks/slot/index';\nimport { componentInfo as symbolComponentInfo } from '../blocks/symbol/component-info';\nimport { default as Symbol } from '../blocks/symbol/index';\nimport { componentInfo as tabsComponentInfo } from '../blocks/tabs/component-info';\nimport { default as Tabs } from '../blocks/tabs/index';\nimport { componentInfo as textComponentInfo } from '../blocks/text/component-info';\nimport { default as Text } from '../blocks/text/index';\nimport type { RegisteredComponent } from '../context/types';\nimport { getExtraComponents } from './extra-components';\nimport { TARGET } from './target';\n\n/**\n * Returns a list of all registered components.\n * NOTE: This needs to be a function to work around ESM circular dependencies.\n */\nexport const getDefaultRegisteredComponents: () => RegisteredComponent[] = () => [{\n  component: Button,\n  ...buttonComponentInfo\n}, {\n  component: Columns,\n  ...columnsComponentInfo\n}, {\n  component: Fragment,\n  ...fragmentComponentInfo\n}, {\n  component: Image,\n  ...imageComponentInfo\n}, {\n  component: Section,\n  ...sectionComponentInfo\n}, {\n  component: Slot,\n  ...slotComponentInfo\n}, {\n  component: Symbol,\n  ...symbolComponentInfo\n}, {\n  component: Text,\n  ...textComponentInfo\n}, ...(SDKS_SUPPORTING_PERSONALIZATION.includes(TARGET) ? [{\n  component: PersonalizationContainer,\n  ...personalizationContainerComponentInfo\n}] : []), ...(TARGET === 'rsc' ? [] : [{\n  component: Tabs,\n  ...tabsComponentInfo\n}, {\n  component: Accordion,\n  ...accordionComponentInfo\n}]), ...getExtraComponents()]","/**\n * WARNING: This file contains functions that get stringified and inlined into the HTML at build-time.\n * They cannot import anything.\n */\n\ntype VariantData = {\n  id: string;\n  testRatio?: number;\n};\n\n/**\n * For more information on how this works,\n * see our [SSR A/B Test Docs](https://github.com/BuilderIO/builder/tree/main/packages/sdks/src/SSR_AB_TEST.md)\n */\n\n/**\n * For more information on how this works,\n * see our [SSR A/B Test Docs](https://github.com/BuilderIO/builder/tree/main/packages/sdks/docs/SSR_AB_TEST.md)\n */\n\nexport const UPDATE_COOKIES_AND_STYLES_SCRIPT = \"function updateCookiesAndStyles(contentId, variants, isHydrationTarget, isAngularSDK) {\\n  function getAndSetVariantId() {\\n    function setCookie(name, value, days) {\\n      let expires = '';\\n      if (days) {\\n        const date = new Date();\\n        date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);\\n        expires = '; expires=' + date.toUTCString();\\n      }\\n      document.cookie = name + '=' + (value || '') + expires + '; path=/' + '; Secure; SameSite=None';\\n    }\\n    function getCookie(name) {\\n      const nameEQ = name + '=';\\n      const ca = document.cookie.split(';');\\n      for (let i = 0; i < ca.length; i++) {\\n        let c = ca[i];\\n        while (c.charAt(0) === ' ') c = c.substring(1, c.length);\\n        if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\\n      }\\n      return null;\\n    }\\n    const cookieName = `builder.tests.${contentId}`;\\n    const variantInCookie = getCookie(cookieName);\\n    const availableIDs = variants.map(vr => vr.id).concat(contentId);\\n    if (variantInCookie && availableIDs.includes(variantInCookie)) {\\n      return variantInCookie;\\n    }\\n    let n = 0;\\n    const random = Math.random();\\n    for (let i = 0; i < variants.length; i++) {\\n      const variant = variants[i];\\n      const testRatio = variant.testRatio;\\n      n += testRatio;\\n      if (random < n) {\\n        setCookie(cookieName, variant.id);\\n        return variant.id;\\n      }\\n    }\\n    setCookie(cookieName, contentId);\\n    return contentId;\\n  }\\n  const winningVariantId = getAndSetVariantId();\\n  let styleEl = document.currentScript?.previousElementSibling;\\n  if (isAngularSDK) {\\n    styleEl = document.currentScript?.parentElement?.previousElementSibling?.querySelector('style');\\n  }\\n  if (isHydrationTarget) {\\n    styleEl.remove();\\n    const thisScriptEl = document.currentScript;\\n    thisScriptEl?.remove();\\n  } else {\\n    const newStyleStr = variants.concat({\\n      id: contentId\\n    }).filter(variant => variant.id !== winningVariantId).map(value => {\\n      return `.variant-${value.id} {  display: none; }\\n        `;\\n    }).join('');\\n    styleEl.innerHTML = newStyleStr;\\n  }\\n}\";\nexport const UPDATE_VARIANT_VISIBILITY_SCRIPT = \"function updateVariantVisibility(variantContentId, defaultContentId, isHydrationTarget) {\\n  if (!navigator.cookieEnabled) {\\n    return;\\n  }\\n  function getCookie(name) {\\n    const nameEQ = name + '=';\\n    const ca = document.cookie.split(';');\\n    for (let i = 0; i < ca.length; i++) {\\n      let c = ca[i];\\n      while (c.charAt(0) === ' ') c = c.substring(1, c.length);\\n      if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\\n    }\\n    return null;\\n  }\\n  const cookieName = `builder.tests.${defaultContentId}`;\\n  const winningVariant = getCookie(cookieName);\\n  const parentDiv = document.currentScript?.parentElement;\\n  const isDefaultContent = variantContentId === defaultContentId;\\n  const isWinningVariant = winningVariant === variantContentId;\\n  if (isWinningVariant && !isDefaultContent) {\\n    parentDiv?.removeAttribute('hidden');\\n    parentDiv?.removeAttribute('aria-hidden');\\n  } else if (!isWinningVariant && isDefaultContent) {\\n    parentDiv?.setAttribute('hidden', 'true');\\n    parentDiv?.setAttribute('aria-hidden', 'true');\\n  }\\n  if (isHydrationTarget) {\\n    if (!isWinningVariant) {\\n      parentDiv?.remove();\\n    }\\n    const thisScriptEl = document.currentScript;\\n    thisScriptEl?.remove();\\n  }\\n  return;\\n}\";","import { TARGET } from '../../constants/target';\nimport { isBrowser } from '../../functions/is-browser';\nimport type { Nullable } from '../../helpers/nullable';\nimport type { BuilderContent } from '../../types/builder-content';\nimport type { Target } from '../../types/targets';\nimport { UPDATE_COOKIES_AND_STYLES_SCRIPT, UPDATE_VARIANT_VISIBILITY_SCRIPT } from './inlined-fns';\n\n/**\n * We hardcode explicit function names here, because the `.toString()` of a function can change depending on the bundler.\n * Some bundlers will minify the fn name, etc.\n *\n * So we hardcode the function names here, and then use those names in the script string to make sure the function names are consistent.\n */\nconst UPDATE_COOKIES_AND_STYLES_SCRIPT_NAME = 'builderIoAbTest';\nconst UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME = 'builderIoRenderContent';\nexport const getVariants = (content: Nullable<BuilderContent>) => Object.values(content?.variations || {}).map(variant => ({\n  ...variant,\n  testVariationId: variant.id,\n  id: content?.id\n}));\nexport const checkShouldRenderVariants = ({\n  canTrack,\n  content\n}: {\n  canTrack: Nullable<boolean>;\n  content: Nullable<BuilderContent>;\n}) => {\n  const hasVariants = getVariants(content).length > 0;\n\n  /**\n   * We cannot SSR in React-Native.\n   */\n  if (TARGET === 'reactNative') return false;\n  if (!hasVariants) return false;\n  if (!canTrack) return false;\n\n  /**\n   * For Vue and Svelte, we need to (initially) render the variants. This is to avoid hydration mismatch errors.\n   *\n   * Unlike React, Vue's hydration checks are shallow and do not check the attributes/contents of each element, so we\n   * are able to modify the `hidden` HTML attributes and `display` CSS properties without causing a hydration mismatch error.\n   *\n   * NOTE: For Solid/Svelte: after the app is hydrated, we strip the variants from the DOM (on mount) to reduce the amount of HTML in the DOM.\n   * This isn't necessary, just a nice to have.\n   */\n  if (TARGET === 'vue' || TARGET === 'svelte') return true;\n  if (isBrowser()) return false;\n  return true;\n};\ntype VariantData = {\n  id: string;\n  testRatio?: number;\n};\nconst getIsHydrationTarget = (target: Target) => target === 'react' || target === 'reactNative';\nconst isAngularSDK = TARGET === 'angular';\nconst isHydrationTarget = getIsHydrationTarget(TARGET);\nexport const getInitVariantsFnsScriptString = () => `\n  window.${UPDATE_COOKIES_AND_STYLES_SCRIPT_NAME} = ${UPDATE_COOKIES_AND_STYLES_SCRIPT}\n  window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME} = ${UPDATE_VARIANT_VISIBILITY_SCRIPT}\n  `;\nexport const getUpdateCookieAndStylesScript = (variants: VariantData[], contentId: string) => `\n  window.${UPDATE_COOKIES_AND_STYLES_SCRIPT_NAME}(\n    \"${contentId}\",${JSON.stringify(variants)}, ${isHydrationTarget}, ${isAngularSDK}\n  )`;\nexport const getUpdateVariantVisibilityScript = ({\n  contentId,\n  variationId\n}: {\n  variationId: string;\n  contentId: string;\n}) => `window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME}(\n    \"${variationId}\", \"${contentId}\", ${isHydrationTarget}\n  )`","function round(num: number) {\n  return Math.round(num * 1000) / 1000;\n}\nconst findParentElement = (target: HTMLElement, callback: (element: HTMLElement) => boolean, checkElement = true): HTMLElement | null => {\n  if (!(target instanceof HTMLElement)) {\n    return null;\n  }\n  let parent: HTMLElement | null = checkElement ? target : target.parentElement;\n  do {\n    if (!parent) {\n      return null;\n    }\n    const matches = callback(parent);\n    if (matches) {\n      return parent;\n    }\n  } while (parent = parent.parentElement);\n  return null;\n};\nconst findBuilderParent = (target: HTMLElement) => findParentElement(target, el => {\n  const id = el.getAttribute('builder-id') || el.id;\n  return Boolean(id?.indexOf('builder-') === 0);\n});\ntype Offset = {\n  x: number;\n  y: number;\n};\nconst computeOffset = ({\n  event,\n  target\n}: {\n  event: MouseEvent;\n  target: HTMLElement;\n}): Offset => {\n  const targetRect = target.getBoundingClientRect();\n  const xOffset = event.clientX - targetRect.left;\n  const yOffset = event.clientY - targetRect.top;\n  const xRatio = round(xOffset / targetRect.width);\n  const yRatio = round(yOffset / targetRect.height);\n  return {\n    x: xRatio,\n    y: yRatio\n  };\n};\nexport const getInteractionPropertiesForEvent = (event: MouseEvent) => {\n  const target = (event.target as HTMLElement | null);\n  const targetBuilderElement = target && findBuilderParent(target);\n  const builderId = targetBuilderElement?.getAttribute('builder-id') || targetBuilderElement?.id;\n  return {\n    targetBuilderElement: builderId || undefined,\n    metadata: {\n      targetOffset: target ? computeOffset({\n        event,\n        target\n      }) : undefined,\n      builderTargetOffset: targetBuilderElement ? computeOffset({\n        event,\n        target: targetBuilderElement\n      }) : undefined,\n      builderElementIndex: targetBuilderElement && builderId ? ([] as Element[]).slice.call(document.getElementsByClassName(builderId)).indexOf(targetBuilderElement) : undefined\n    }\n  };\n}","import { TARGET } from '../../../constants/target';\nimport { isEditing } from '../../../functions/is-editing';\nimport { isPreviewing } from '../../../functions/is-previewing';\nimport type { Target } from '../../../types/targets';\n\n/**\n * SDKS that use the elementRef approach to enable visual editing.\n * We don't need to render the div for other SDKs as they attach event listeners to the window.\n */\nexport const SDKS_USING_ELEMENT_REF_APPROACH = (['svelte', 'qwik', 'vue'] as Target[]);\n\n/**\n * We need to attach this div only when content exists or isPreviewing/isEditing even when content is null,\n * as we need to set the elementRef and allow previewing and visual editing\n */\nexport const needsElementRefDivForEditing = () => {\n  return SDKS_USING_ELEMENT_REF_APPROACH.includes(TARGET) && (isEditing() || isPreviewing());\n}","export interface CustomFont {\n  family?: string;\n  kind?: string;\n  fileUrl?: string;\n  files?: {\n    [key: string]: string;\n  };\n}\nconst getCssFromFont = (font: CustomFont) => {\n  // TODO: compute what font sizes are used and only load those.......\n  const family = font.family + (font.kind && !font.kind.includes('#') ? ', ' + font.kind : '');\n  const name = family.split(',')[0];\n  const url = font.fileUrl ?? font?.files?.regular;\n  let str = '';\n  if (url && family && name) {\n    str += `\n@font-face {\nfont-family: \"${family}\";\nsrc: local(\"${name}\"), url('${url}') format('woff2');\nfont-display: fallback;\nfont-weight: 400;\n}\n      `.trim();\n  }\n  if (font.files) {\n    for (const weight in font.files) {\n      const isNumber = String(Number(weight)) === weight;\n      if (!isNumber) {\n        continue;\n      }\n      // TODO: maybe limit number loaded\n      const weightUrl = font.files[weight];\n      if (weightUrl && weightUrl !== url) {\n        str += `\n@font-face {\nfont-family: \"${family}\";\nsrc: url('${weightUrl}') format('woff2');\nfont-display: fallback;\nfont-weight: ${weight};\n}\n        `.trim();\n      }\n    }\n  }\n  return str;\n};\nexport const getFontCss = ({\n  customFonts\n}: {\n  customFonts?: CustomFont[];\n}) => {\n  // TODO: flag for this\n  // if (!this.builder.allowCustomFonts) {\n  //   return '';\n  // }\n  // TODO: separate internal data from external\n  return customFonts?.map(font => getCssFromFont(font))?.join(' ') || '';\n};\nexport const getCss = ({\n  cssCode,\n  contentId\n}: {\n  cssCode?: string;\n  contentId?: string;\n}) => {\n  if (!cssCode) {\n    return '';\n  }\n  if (!contentId) {\n    return cssCode;\n  }\n\n  // Allow using `&` in custom CSS code like @emotion\n  // E.g. `& .foobar { ... }` to scope CSS\n  // TODO: handle if '&' is within a string like `content: \"&\"`\n  return cssCode?.replace(/&/g, `div[builder-content-id=\"${contentId}\"]`) || '';\n};\nconst DEFAULT_STYLES = `\n.builder-button {\n  all: unset;\n}\n\n.builder-text > p:first-of-type, .builder-text > .builder-paragraph:first-of-type {\n  margin: 0;\n}\n.builder-text > p, .builder-text > .builder-paragraph {\n  color: inherit;\n  line-height: inherit;\n  letter-spacing: inherit;\n  font-weight: inherit;\n  font-size: inherit;\n  text-align: inherit;\n  font-family: inherit;\n}\n`;\nexport const getDefaultStyles = (isNested: boolean | undefined) => {\n  return !isNested ? DEFAULT_STYLES : '';\n};\nexport const getWrapperClassName = (variationId?: string) => {\n  return `variant-${variationId}`;\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  ViewContainerRef,\n  TemplateRef,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ntype BuilderEditorProps = Omit<\n  ContentProps,\n  | \"customComponents\"\n  | \"apiVersion\"\n  | \"isSsrAbTest\"\n  | \"blocksWrapper\"\n  | \"blocksWrapperProps\"\n  | \"linkComponent\"\n> & {\n  builderContextSignal: BuilderContextInterface;\n  setBuilderContextSignal?: (signal: any) => any;\n  children?: any;\n};\ninterface BuilderRequest {\n  \"@type\": \"@builder.io/core:Request\";\n  request: {\n    url: string;\n    query?: {\n      [key: string]: string;\n    };\n    headers?: {\n      [key: string]: string;\n    };\n    method: \"GET\" | \"POST\" | \"PUT\" | \"PATCH\" | \"DELETE\";\n    body?: any;\n  };\n  options?: {\n    [key: string]: any;\n  };\n  bindings?: {\n    [key: string]: string;\n  };\n}\n\nimport builderContext from \"../../../context/builder.context\";\nimport type { BuilderContextInterface } from \"../../../context/types\";\nimport { evaluate } from \"../../../functions/evaluate/index\";\nimport { fastClone } from \"../../../functions/fast-clone\";\nimport { fetchOneEntry } from \"../../../functions/get-content/index\";\nimport { isBrowser } from \"../../../functions/is-browser\";\nimport { isEditing } from \"../../../functions/is-editing\";\nimport { isPreviewing } from \"../../../functions/is-previewing\";\nimport { logFetch } from \"../../../functions/log-fetch\";\nimport { createRegisterComponentMessage } from \"../../../functions/register-component\";\nimport { _track } from \"../../../functions/track/index\";\nimport { getInteractionPropertiesForEvent } from \"../../../functions/track/interaction\";\nimport { getDefaultCanTrack } from \"../../../helpers/canTrack\";\nimport { getCookieSync } from \"../../../helpers/cookie\";\nimport { postPreviewContent } from \"../../../helpers/preview-lru-cache/set\";\nimport {\n  createEditorListener,\n  EditType,\n} from \"../../../helpers/subscribe-to-editor\";\nimport { setupBrowserForEditing } from \"../../../scripts/init-editing\";\nimport type { BuilderContent } from \"../../../types/builder-content\";\nimport type { ComponentInfo } from \"../../../types/components\";\nimport type { Dictionary } from \"../../../types/typescript\";\nimport { triggerAnimation } from \"../../block/animator\";\nimport DynamicDiv from \"../../dynamic-div\";\nimport type {\n  BuilderComponentStateChange,\n  ContentProps,\n} from \"../content.types\";\nimport { needsElementRefDivForEditing } from \"./enable-editor.helpers\";\nimport { getWrapperClassName } from \"./styles.helpers\";\n\n@Component({\n  selector: \"enable-editor\",\n  standalone: true,\n  imports: [CommonModule],\n  template: `\n    <ng-template #contentwrapperTemplate><ng-content></ng-content></ng-template>\n    @if(builderContextSignal().content || needsElementRefDivForEditing()){\n    <ng-container\n      *ngComponentOutlet=\"\n              ContentWrapper();\n        inputs: dynamicProps_sb7chb();\n              content: myContent();\n              \"\n    ></ng-container>\n    }\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class EnableEditor {\n  protected readonly needsElementRefDivForEditing =\n    needsElementRefDivForEditing;\n  protected readonly getWrapperClassName = getWrapperClassName;\n\n  myContent = signal<any[]>([]);\n  contentwrapperTemplateRef = viewChild<TemplateRef<any>>(\n    \"contentwrapperTemplate\"\n  );\n\n  isNestedRender: InputSignal<BuilderEditorProps[\"isNestedRender\"]> =\n    input<BuilderEditorProps[\"isNestedRender\"]>();\n  locale: InputSignal<BuilderEditorProps[\"locale\"]> =\n    input<BuilderEditorProps[\"locale\"]>();\n  enrich: InputSignal<BuilderEditorProps[\"enrich\"]> =\n    input<BuilderEditorProps[\"enrich\"]>();\n  trustedHosts: InputSignal<BuilderEditorProps[\"trustedHosts\"]> =\n    input<BuilderEditorProps[\"trustedHosts\"]>();\n  model: InputSignal<BuilderEditorProps[\"model\"]> =\n    input<BuilderEditorProps[\"model\"]>();\n  apiKey: InputSignal<BuilderEditorProps[\"apiKey\"]> =\n    input<BuilderEditorProps[\"apiKey\"]>();\n  builderContextSignal: InputSignal<\n    BuilderEditorProps[\"builderContextSignal\"]\n  > = input<BuilderEditorProps[\"builderContextSignal\"]>();\n  canTrack: InputSignal<BuilderEditorProps[\"canTrack\"]> =\n    input<BuilderEditorProps[\"canTrack\"]>();\n  apiHost: InputSignal<BuilderEditorProps[\"apiHost\"]> =\n    input<BuilderEditorProps[\"apiHost\"]>();\n  content: InputSignal<BuilderEditorProps[\"content\"]> =\n    input<BuilderEditorProps[\"content\"]>();\n  context: InputSignal<BuilderEditorProps[\"context\"]> =\n    input<BuilderEditorProps[\"context\"]>();\n  data: InputSignal<BuilderEditorProps[\"data\"]> =\n    input<BuilderEditorProps[\"data\"]>();\n  showContent: InputSignal<BuilderEditorProps[\"showContent\"]> =\n    input<BuilderEditorProps[\"showContent\"]>();\n  contentWrapper: InputSignal<BuilderEditorProps[\"contentWrapper\"]> =\n    input<BuilderEditorProps[\"contentWrapper\"]>();\n  contentWrapperProps: InputSignal<BuilderEditorProps[\"contentWrapperProps\"]> =\n    input<BuilderEditorProps[\"contentWrapperProps\"]>();\n\n  elementRef = viewChild<ElementRef>(\"elementRef\");\n\n  hasExecuted = signal<boolean>(false);\n  contextValue = signal<any>(undefined);\n  prevData = signal(null);\n  prevLocale = signal(\"\");\n  ContentWrapper = signal(undefined);\n  httpReqsData = signal({});\n  httpReqsPending = signal({});\n  clicked = signal(false);\n\n  showContentProps = computed(() => {\n    return this.showContent()\n      ? {}\n      : {\n          hidden: true,\n          \"aria-hidden\": true,\n        };\n  });\n  dynamicProps_sb7chb = computed(() => {\n    return {\n      ref: this.elementRef(),\n      onClick: this.onClick.bind(this),\n      \"builder-content-id\": this.builderContextSignal().content?.id,\n      \"builder-model\": this.model(),\n      className: getWrapperClassName(\n        this.content()?.testVariationId || this.content()?.id\n      ),\n      style: {\n        display:\n          !this.builderContextSignal().content && needsElementRefDivForEditing()\n            ? \"none\"\n            : undefined,\n      },\n      ...this.showContentProps(),\n      ...this.contentWrapperProps(),\n    };\n  });\n  mergeNewRootState(newData: Dictionary<any>, editType?: EditType) {\n    const combinedState = {\n      ...this.builderContextSignal().rootState,\n      ...newData,\n    };\n    if (this.builderContextSignal().rootSetState) {\n      this.builderContextSignal().rootSetState?.(combinedState);\n    } else {\n      this.builderContextSignal().rootState = combinedState;\n    }\n    if (this.builderContextSignal().rootSetState) {\n      this.builderContextSignal().rootSetState(combinedState);\n    } else {\n      this.builderContextSignal().rootState = combinedState;\n    }\n  }\n  mergeNewContent(newContent: BuilderContent, editType?: EditType) {\n    const newContentValue = {\n      ...this.builderContextSignal().content,\n      ...newContent,\n      data: {\n        ...this.builderContextSignal().content?.data,\n        ...newContent?.data,\n      },\n      meta: {\n        ...this.builderContextSignal().content?.meta,\n        ...newContent?.meta,\n        breakpoints:\n          newContent?.meta?.breakpoints ||\n          this.builderContextSignal().content?.meta?.breakpoints,\n      },\n    };\n    this.builderContextSignal().content = newContentValue;\n  }\n  processMessage(event: MessageEvent) {\n    return createEditorListener({\n      model: this.model(),\n      trustedHosts: this.trustedHosts(),\n      callbacks: {\n        configureSdk: (messageContent) => {\n          const { breakpoints, contentId } = messageContent;\n          if (\n            !contentId ||\n            contentId !== this.builderContextSignal().content?.id\n          ) {\n            return;\n          }\n          if (breakpoints) {\n            this.mergeNewContent({\n              meta: {\n                breakpoints,\n              },\n            });\n          }\n        },\n        animation: (animation) => {\n          triggerAnimation(animation);\n        },\n        contentUpdate: (newContent, editType) => {\n          this.mergeNewContent(newContent, editType);\n        },\n        stateUpdate: (newState, editType) => {\n          this.mergeNewRootState(newState, editType);\n        },\n      },\n    })(event);\n  }\n  onClick(event: any) {\n    if (this.builderContextSignal().content) {\n      const variationId = this.builderContextSignal().content?.testVariationId;\n      const contentId = this.builderContextSignal().content?.id;\n      _track({\n        apiHost: this.apiHost(),\n        type: \"click\",\n        canTrack: getDefaultCanTrack(this.canTrack()),\n        contentId,\n        apiKey: this.apiKey(),\n        variationId: variationId !== contentId ? variationId : undefined,\n        ...getInteractionPropertiesForEvent(event),\n        unique: !this.clicked(),\n      });\n    }\n    if (!this.clicked()) {\n      this.clicked.set(true);\n    }\n  }\n  runHttpRequests() {\n    const requests: {\n      [key: string]: string | any;\n    } = this.builderContextSignal().content?.data?.httpRequests ?? {};\n    Object.entries(requests).forEach(\n      ([key, httpRequest]: [string, BuilderRequest | string]) => {\n        if (!httpRequest) return;\n        const isCoreRequest =\n          typeof httpRequest === \"object\" &&\n          httpRequest[\"@type\"] === \"@builder.io/core:Request\";\n\n        // request already in progress\n        if (this.httpReqsPending()[key]) return;\n\n        // request already completed, and not in edit mode\n        if (this.httpReqsData()[key] && !isEditing()) return;\n        const url = isCoreRequest\n          ? httpRequest.request.url\n          : (httpRequest as string);\n        this.httpReqsPending.update((httpReqsPending) => {\n          httpReqsPending[key] = true;\n          return httpReqsPending;\n        });\n        const evaluatedUrl = url.replace(\n          /{{([^}]+)}}/g,\n          (_match: string, group: string) =>\n            String(\n              evaluate({\n                code: group,\n                context: this.context() || {},\n                localState: undefined,\n                rootState: this.builderContextSignal().rootState,\n                rootSetState: this.builderContextSignal().rootSetState,\n              })\n            )\n        );\n        const fetchRequestObj = isCoreRequest\n          ? {\n              url: evaluatedUrl,\n              method: httpRequest.request.method,\n              headers: httpRequest.request.headers,\n              body: httpRequest.request.body,\n            }\n          : {\n              url: evaluatedUrl,\n              method: \"GET\",\n            };\n        logFetch(JSON.stringify(fetchRequestObj));\n        const fetchOptions = {\n          method: fetchRequestObj.method,\n          headers: fetchRequestObj.headers,\n          body: fetchRequestObj.body,\n        };\n        if (fetchRequestObj.method === \"GET\") {\n          delete fetchOptions.body;\n        }\n        fetch(fetchRequestObj.url, fetchOptions)\n          .then((response) => response.json())\n          .then((json) => {\n            this.mergeNewRootState({\n              [key]: json,\n            });\n            this.httpReqsData.update((httpReqsData) => {\n              httpReqsData[key] = true;\n              return httpReqsData;\n            });\n          })\n          .catch((err) => {\n            console.error(\n              \"error fetching dynamic data\",\n              JSON.stringify(httpRequest),\n              err\n            );\n          })\n          .finally(() => {\n            this.httpReqsPending.update((httpReqsPending) => {\n              httpReqsPending[key] = false;\n              return httpReqsPending;\n            });\n          });\n      }\n    );\n  }\n  emitStateUpdate() {\n    if (isEditing()) {\n      window.dispatchEvent(\n        new CustomEvent<BuilderComponentStateChange>(\n          \"builder:component:stateChange\",\n          {\n            detail: {\n              state: fastClone(this.builderContextSignal().rootState),\n              ref: {\n                name: this.model(),\n              },\n            },\n          }\n        )\n      );\n    }\n  }\n\n  constructor(private viewContainer: ViewContainerRef) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.content();\n          // ---\n\n          if (this.content()) {\n            const nextId = this.content()?.id;\n            const currentId = this.builderContextSignal().content?.id;\n            if (nextId && nextId !== currentId) {\n              setTimeout(() => {\n                this.runHttpRequests();\n              });\n            }\n            this.mergeNewContent(this.content());\n          }\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.emitStateUpdate();\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.data();\n          // ---\n\n          if (this.data()) {\n            if (this.prevData() === this.data()) {\n              return;\n            }\n            this.mergeNewRootState(this.data());\n            this.prevData.set(this.data());\n          }\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.locale();\n          // ---\n\n          if (this.locale()) {\n            if (this.prevLocale() === this.locale()) {\n              return;\n            }\n            this.mergeNewRootState({\n              locale: this.locale(),\n            });\n            this.prevLocale.set(this.locale());\n          }\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngOnInit() {\n    this.ContentWrapper.set(this.contentWrapper() || DynamicDiv);\n    this.contextValue.set(this.builderContextSignal());\n    this.runHttpRequests();\n    this.emitStateUpdate();\n  }\n\n  _updateView() {\n    this.myContent.set([\n      this.viewContainer.createEmbeddedView(this.contentwrapperTemplateRef())\n        .rootNodes,\n    ]);\n  }\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n      if (isBrowser()) {\n        if (isEditing() && !this.isNestedRender()) {\n          window.addEventListener(\"message\", this.processMessage.bind(this));\n          setupBrowserForEditing({\n            ...(this.locale()\n              ? {\n                  locale: this.locale(),\n                }\n              : {}),\n            ...(this.enrich()\n              ? {\n                  enrich: this.enrich(),\n                }\n              : {}),\n            ...(this.trustedHosts()\n              ? {\n                  trustedHosts: this.trustedHosts(),\n                }\n              : {}),\n            modelName: this.model() ?? \"\",\n            apiKey: this.apiKey(),\n          });\n          Object.values<ComponentInfo>(\n            this.builderContextSignal().componentInfos\n          ).forEach((registeredComponent) => {\n            if (\n              !registeredComponent.models?.length ||\n              registeredComponent.models.includes(this.model())\n            ) {\n              const message =\n                createRegisterComponentMessage(registeredComponent);\n              window.parent?.postMessage(message, \"*\");\n            }\n          });\n          window.addEventListener(\n            \"builder:component:stateChangeListenerActivated\",\n            this.emitStateUpdate.bind(this)\n          );\n        }\n        const shouldTrackImpression =\n          this.builderContextSignal().content &&\n          getDefaultCanTrack(this.canTrack());\n        const winningVariantId = getCookieSync({\n          name: `builder.tests.${this.builderContextSignal().content?.id}`,\n          canTrack: true,\n        });\n        const variationId =\n          this.builderContextSignal().content?.testVariationId;\n        if (shouldTrackImpression && variationId === winningVariantId) {\n          const contentId = this.builderContextSignal().content?.id;\n          const apiKeyProp = this.apiKey();\n          _track({\n            apiHost: this.apiHost(),\n            type: \"impression\",\n            canTrack: true,\n            contentId,\n            apiKey: apiKeyProp!,\n            variationId:\n              winningVariantId !== contentId ? winningVariantId : undefined,\n          });\n        }\n\n        /**\n         * Override normal content in preview mode.\n         * We ignore this when editing, since the edited content is already being sent from the editor via post messages.\n         */\n        if (isPreviewing() && !isEditing()) {\n          const searchParams = new URL(location.href).searchParams;\n          const searchParamPreviewModel = searchParams.get(\"builder.preview\");\n          const searchParamPreviewId = searchParams.get(\n            `builder.overrides.${searchParamPreviewModel}`\n          );\n          const previewApiKey =\n            searchParams.get(\"apiKey\") || searchParams.get(\"builder.space\");\n\n          /**\n           * Make sure that:\n           * - the preview model name is the same as the one we're rendering, since there can be multiple models rendered\n           *  at the same time, e.g. header/page/footer.\n           * - the API key is the same, since we don't want to preview content from other organizations.\n           * - if there is content, that the preview ID is the same as that of the one we receive.\n           *\n           * TO-DO: should we only update the state when there is a change?\n           **/\n          if (\n            searchParamPreviewModel === \"BUILDER_STUDIO\" ||\n            (searchParamPreviewModel === this.model() &&\n              previewApiKey === this.apiKey() &&\n              (!this.content() || searchParamPreviewId === this.content().id))\n          ) {\n            fetchOneEntry({\n              model: this.model(),\n              apiKey: this.apiKey(),\n              apiVersion: this.builderContextSignal().apiVersion,\n              ...(searchParamPreviewModel === \"BUILDER_STUDIO\" &&\n              this.context()?.symbolId\n                ? {\n                    query: {\n                      id: this.context().symbolId,\n                    },\n                  }\n                : {}),\n            }).then((content) => {\n              if (content) {\n                this.mergeNewContent(content);\n              }\n            });\n          }\n        }\n      }\n    }\n  }\n  ngAfterContentInit() {\n    this._updateView();\n  }\n\n  ngOnDestroy() {\n    if (isBrowser()) {\n      window.removeEventListener(\"message\", this.processMessage.bind(this));\n      window.removeEventListener(\n        \"builder:component:stateChangeListenerActivated\",\n        this.emitStateUpdate.bind(this)\n      );\n    }\n  }\n}\n","import { Component, input, effect, signal, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ninterface Props extends BuilderNonceProp {\n  cssCode?: string;\n  customFonts?: CustomFont[];\n  contentId?: string;\n  isNestedRender?: boolean;\n}\n\nimport type { BuilderNonceProp } from \"../../../types/builder-props\";\nimport InlinedStyles from \"../../inlined-styles\";\nimport type { CustomFont } from \"./styles.helpers\";\nimport { getCss, getDefaultStyles, getFontCss } from \"./styles.helpers\";\n\n@Component({\n  selector: \"content-styles\",\n  standalone: true,\n  imports: [CommonModule, InlinedStyles],\n  template: `\n    <inlined-styles\n      id=\"builderio-content\"\n      [styles]=\"injectedStyles()\"\n      [nonce]=\"nonce()\"\n    ></inlined-styles>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class ContentStyles {\n  cssCode: InputSignal<Props[\"cssCode\"]> = input<Props[\"cssCode\"]>();\n  contentId: InputSignal<Props[\"contentId\"]> = input<Props[\"contentId\"]>();\n  customFonts: InputSignal<Props[\"customFonts\"]> =\n    input<Props[\"customFonts\"]>();\n  isNestedRender: InputSignal<Props[\"isNestedRender\"]> =\n    input<Props[\"isNestedRender\"]>();\n  nonce: InputSignal<Props[\"nonce\"]> = input<Props[\"nonce\"]>();\n\n  injectedStyles = signal(undefined);\n\n  constructor() {}\n\n  ngOnInit() {\n    this.injectedStyles.set(\n      `\n${getCss({\n  cssCode: this.cssCode(),\n  contentId: this.contentId(),\n})}\n${getFontCss({\n  customFonts: this.customFonts(),\n})}\n${getDefaultStyles(this.isNestedRender())}\n`.trim()\n    );\n  }\n}\n","import type { BuilderRenderState } from '../../context/types';\nimport type { BuilderContent } from '../../types/builder-content';\nimport type { Nullable } from '../../types/typescript';\nimport type { ContentProps } from './content.types';\nexport const getRootStateInitialValue = ({\n  content,\n  data,\n  locale\n}: Pick<ContentProps, 'content' | 'data' | 'locale'>) => {\n  const defaultValues: BuilderRenderState = {};\n  const initialState = content?.data?.state || {};\n\n  // set default values for content state inputs\n  content?.data?.inputs?.forEach(input => {\n    if (input.name && input.defaultValue !== undefined) {\n      defaultValues[input.name] = input.defaultValue;\n    }\n  });\n  return {\n    ...defaultValues,\n    ...initialState,\n    ...data,\n    ...(locale ? {\n      locale\n    } : {})\n  };\n};\nexport const getContentInitialValue = ({\n  content,\n  data\n}: Pick<ContentProps, 'content' | 'data'>): Nullable<BuilderContent> => {\n  return !content ? undefined : {\n    ...content,\n    data: {\n      ...content?.data,\n      ...data\n    },\n    meta: content?.meta\n  };\n}","import { Component, input, effect, signal, InputSignal } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { getDefaultRegisteredComponents } from \"../../constants/builder-registered-components\";\nimport { TARGET } from \"../../constants/target\";\nimport ComponentsContext from \"../../context/components.context\";\nimport type {\n  BuilderContextInterface,\n  BuilderRenderState,\n  RegisteredComponents,\n} from \"../../context/types\";\nimport { evaluate } from \"../../functions/evaluate/evaluate\";\nimport { serializeIncludingFunctions } from \"../../functions/register-component\";\nimport { logger } from \"../../helpers/logger\";\nimport type { ComponentInfo } from \"../../types/components\";\nimport type { Dictionary } from \"../../types/typescript\";\nimport Blocks from \"../blocks/blocks\";\nimport { getUpdateVariantVisibilityScript } from \"../content-variants/helpers\";\nimport DynamicDiv from \"../dynamic-div\";\nimport InlinedScript from \"../inlined-script\";\nimport EnableEditor from \"./components/enable-editor\";\nimport ContentStyles from \"./components/styles\";\nimport {\n  getContentInitialValue,\n  getRootStateInitialValue,\n} from \"./content.helpers\";\nimport type { ContentProps } from \"./content.types\";\nimport { wrapComponentRef } from \"./wrap-component-ref\";\n\n@Component({\n  selector: \"content-component\",\n  standalone: true,\n  imports: [CommonModule, EnableEditor, InlinedScript, ContentStyles, Blocks],\n  template: `\n    <enable-editor\n      [apiHost]=\"apiHost()\"\n      [nonce]=\"nonce()\"\n      [content]=\"content()\"\n      [data]=\"data()\"\n      [model]=\"model()\"\n      [context]=\"context()\"\n      [apiKey]=\"apiKey()\"\n      [canTrack]=\"canTrack()\"\n      [locale]=\"locale()\"\n      [enrich]=\"enrich()\"\n      [showContent]=\"showContent()\"\n      [builderContextSignal]=\"builderContextSignal()\"\n      [contentWrapper]=\"contentWrapper()\"\n      [contentWrapperProps]=\"contentWrapperProps()\"\n      [trustedHosts]=\"trustedHosts()\"\n      [isNestedRender]=\"isNestedRender()\"\n    >\n      @if(isSsrAbTest()){\n      <inlined-script\n        id=\"builderio-variant-visibility\"\n        [scriptStr]=\"scriptStr()\"\n        [nonce]=\"nonce() || ''\"\n      ></inlined-script>\n      } @if(TARGET !== 'reactNative'){\n      <content-styles\n        [nonce]=\"nonce() || ''\"\n        [isNestedRender]=\"isNestedRender()\"\n        [contentId]=\"builderContextSignal().content?.id\"\n        [cssCode]=\"builderContextSignal().content?.data?.cssCode\"\n        [customFonts]=\"builderContextSignal().content?.data?.customFonts\"\n      ></content-styles>\n      }\n      <blocks\n        [blocks]=\"builderContextSignal().content?.data?.blocks\"\n        [context]=\"builderContextSignal()\"\n        [registeredComponents]=\"registeredComponents()\"\n        [linkComponent]=\"linkComponent()\"\n      ></blocks>\n    </enable-editor>\n  `,\n  styles: `:host { display: contents; }`,\n  host: { ngSkipHydration: \"true\" },\n})\nexport default class ContentComponent {\n  protected readonly TARGET = TARGET;\n\n  content: InputSignal<ContentProps[\"content\"]> =\n    input<ContentProps[\"content\"]>();\n  data: InputSignal<ContentProps[\"data\"]> = input<ContentProps[\"data\"]>();\n  locale: InputSignal<ContentProps[\"locale\"]> = input<ContentProps[\"locale\"]>();\n  apiKey: InputSignal<ContentProps[\"apiKey\"]> = input<ContentProps[\"apiKey\"]>();\n  context: InputSignal<ContentProps[\"context\"]> =\n    input<ContentProps[\"context\"]>();\n  customComponents: InputSignal<ContentProps[\"customComponents\"]> =\n    input<ContentProps[\"customComponents\"]>();\n  canTrack: InputSignal<ContentProps[\"canTrack\"]> =\n    input<ContentProps[\"canTrack\"]>();\n  apiVersion: InputSignal<ContentProps[\"apiVersion\"]> =\n    input<ContentProps[\"apiVersion\"]>();\n  blocksWrapper: InputSignal<ContentProps[\"blocksWrapper\"]> =\n    input<ContentProps[\"blocksWrapper\"]>();\n  blocksWrapperProps: InputSignal<ContentProps[\"blocksWrapperProps\"]> =\n    input<ContentProps[\"blocksWrapperProps\"]>();\n  nonce: InputSignal<ContentProps[\"nonce\"]> = input<ContentProps[\"nonce\"]>();\n  model: InputSignal<ContentProps[\"model\"]> = input<ContentProps[\"model\"]>();\n  apiHost: InputSignal<ContentProps[\"apiHost\"]> =\n    input<ContentProps[\"apiHost\"]>();\n  enrich: InputSignal<ContentProps[\"enrich\"]> = input<ContentProps[\"enrich\"]>();\n  showContent: InputSignal<ContentProps[\"showContent\"]> =\n    input<ContentProps[\"showContent\"]>();\n  contentWrapper: InputSignal<ContentProps[\"contentWrapper\"]> =\n    input<ContentProps[\"contentWrapper\"]>();\n  contentWrapperProps: InputSignal<ContentProps[\"contentWrapperProps\"]> =\n    input<ContentProps[\"contentWrapperProps\"]>();\n  trustedHosts: InputSignal<ContentProps[\"trustedHosts\"]> =\n    input<ContentProps[\"trustedHosts\"]>();\n  isNestedRender: InputSignal<ContentProps[\"isNestedRender\"]> =\n    input<ContentProps[\"isNestedRender\"]>();\n  isSsrAbTest: InputSignal<ContentProps[\"isSsrAbTest\"]> =\n    input<ContentProps[\"isSsrAbTest\"]>();\n  linkComponent: InputSignal<ContentProps[\"linkComponent\"]> =\n    input<ContentProps[\"linkComponent\"]>();\n\n  scriptStr = signal(undefined);\n  registeredComponents = signal(undefined);\n  builderContextSignal = signal<BuilderContextInterface>(undefined);\n\n  contentSetState(newRootState: BuilderRenderState) {\n    this.builderContextSignal.update((builderContextSignal) => ({\n      ...builderContextSignal,\n      rootState: newRootState,\n    }));\n  }\n\n  constructor() {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.content();\n          this.data();\n          this.locale();\n          // ---\n\n          const updateContentAndRootState = () => {\n            const nextId = this.content()?.id;\n            const currentId = this.builderContextSignal().content?.id;\n            if (nextId && nextId !== currentId) {\n              // Update content and root state to reflect the new entry\n              this.builderContextSignal.update((builderContextSignal) => ({\n                ...builderContextSignal,\n                content: getContentInitialValue({\n                  content: this.content(),\n                  data: this.data(),\n                }),\n              }));\n              this.builderContextSignal.update((builderContextSignal) => ({\n                ...builderContextSignal,\n                rootState: getRootStateInitialValue({\n                  content: this.content(),\n                  data: this.data(),\n                  locale: this.locale(),\n                }),\n              }));\n\n              // Update AB-test visibility script\n              this.scriptStr.set(\n                getUpdateVariantVisibilityScript({\n                  variationId: this.content()?.testVariationId || \"\",\n                  contentId: nextId,\n                })\n              );\n            }\n          };\n          updateContentAndRootState();\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngOnInit() {\n    this.builderContextSignal.set({\n      content: getContentInitialValue({\n        content: this.content(),\n        data: this.data(),\n      }),\n      localState: undefined,\n      rootState: getRootStateInitialValue({\n        content: this.content(),\n        data: this.data(),\n        locale: this.locale(),\n      }),\n      rootSetState: this.contentSetState.bind(this),\n      context: this.context() || {},\n      canTrack: this.canTrack(),\n      apiKey: this.apiKey(),\n      apiVersion: this.apiVersion(),\n      componentInfos: [\n        ...getDefaultRegisteredComponents(),\n        ...(this.customComponents() || []),\n      ].reduce<Dictionary<ComponentInfo>>(\n        (acc, { component: _, ...info }) => ({\n          ...acc,\n          [info.name]: serializeIncludingFunctions(info),\n        }),\n        {}\n      ),\n      inheritedStyles: {},\n      BlocksWrapper: this.blocksWrapper() || DynamicDiv,\n      BlocksWrapperProps: this.blocksWrapperProps() || {},\n      nonce: this.nonce() || \"\",\n      model: this.model(),\n    });\n    this.registeredComponents.set(\n      [\n        ...getDefaultRegisteredComponents(),\n        ...(this.customComponents() || []),\n      ].reduce<RegisteredComponents>(\n        (acc, { component, ...info }) => ({\n          ...acc,\n          [info.name]: {\n            component: component,\n            ...serializeIncludingFunctions(info),\n          },\n        }),\n        {}\n      )\n    );\n    this.scriptStr.set(\n      getUpdateVariantVisibilityScript({\n        // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain\n        variationId: this.content()?.testVariationId!,\n        // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain\n        contentId: this.content()?.id!,\n      })\n    );\n    if (!this.apiKey()) {\n      logger.error(\n        \"No API key provided to `Content` component. This can cause issues. Please provide an API key using the `apiKey` prop.\"\n      );\n    }\n\n    // run any dynamic JS code attached to content\n    const jsCode = this.builderContextSignal().content?.data?.jsCode;\n    if (jsCode) {\n      evaluate({\n        code: jsCode,\n        context: this.context() || {},\n        localState: undefined,\n        rootState: this.builderContextSignal().rootState,\n        rootSetState: (newState) => {\n          this.builderContextSignal().rootSetState?.(newState);\n        },\n        isExpression: false,\n      });\n    }\n  }\n}\n","import {\n  Component,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\ntype VariantsProviderProps = ContentVariantsPrps & {\n  /**\n   * For internal use only. Do not provide this prop.\n   */\n  isNestedRender?: boolean;\n};\n\nimport {\n  SDKS_SUPPORTING_PERSONALIZATION,\n  getInitPersonalizationVariantsFnsScriptString,\n} from \"../../blocks/personalization-container/helpers\";\nimport { TARGET } from \"../../constants/target\";\nimport { handleABTestingSync } from \"../../helpers/ab-tests\";\nimport { getDefaultCanTrack } from \"../../helpers/canTrack\";\nimport ContentComponent from \"../content/content\";\nimport InlinedScript from \"../inlined-script\";\nimport InlinedStyles from \"../inlined-styles\";\nimport type { ContentVariantsPrps } from \"./content-variants.types\";\nimport {\n  checkShouldRenderVariants,\n  getInitVariantsFnsScriptString,\n  getUpdateCookieAndStylesScript,\n  getVariants,\n} from \"./helpers\";\n\n@Component({\n  selector: \"builder-content, content-variants\",\n  standalone: true,\n  imports: [CommonModule, InlinedScript, InlinedStyles, ContentComponent],\n  template: `\n    <ng-container>\n      @if(!isNestedRender() && TARGET !== 'reactNative'){\n      <inlined-script\n        id=\"builderio-init-variants-fns\"\n        [scriptStr]=\"getInitVariantsFnsScriptString()\"\n        [nonce]=\"nonce() || ''\"\n      ></inlined-script>\n      @if(SDKS_SUPPORTING_PERSONALIZATION.includes(TARGET)){\n      <inlined-script\n        id=\"builderio-init-personalization-variants-fns\"\n        [nonce]=\"nonce() || ''\"\n        [scriptStr]=\"getInitPersonalizationVariantsFnsScriptString()\"\n      ></inlined-script>\n      } } @if(shouldRenderVariants()){\n      <inlined-styles\n        id=\"builderio-variants\"\n        [styles]=\"hideVariantsStyleString()\"\n        [nonce]=\"nonce() || ''\"\n      ></inlined-styles>\n      <inlined-script\n        id=\"builderio-variants-visibility\"\n        [scriptStr]=\"updateCookieAndStylesScriptStr()\"\n        [nonce]=\"nonce() || ''\"\n      ></inlined-script>\n\n      @for (variant of getVariants(content());track trackByVariant0(i,\n      variant);let i = $index) {\n      <content-component\n        [apiHost]=\"apiHost()\"\n        [isNestedRender]=\"isNestedRender()\"\n        [nonce]=\"nonce()\"\n        [content]=\"variant\"\n        [showContent]=\"false\"\n        [model]=\"model()\"\n        [data]=\"data()\"\n        [context]=\"context()\"\n        [apiKey]=\"apiKey()\"\n        [apiVersion]=\"apiVersion()\"\n        [customComponents]=\"customComponents()\"\n        [linkComponent]=\"linkComponent()\"\n        [canTrack]=\"canTrack()\"\n        [locale]=\"locale()\"\n        [enrich]=\"enrich()\"\n        [isSsrAbTest]=\"shouldRenderVariants()\"\n        [blocksWrapper]=\"blocksWrapper()\"\n        [blocksWrapperProps]=\"blocksWrapperProps()\"\n        [contentWrapper]=\"contentWrapper()\"\n        [contentWrapperProps]=\"contentWrapperProps()\"\n        [trustedHosts]=\"trustedHosts()\"\n      ></content-component>\n      } }\n      <content-component\n        [apiHost]=\"apiHost()\"\n        [nonce]=\"nonce()\"\n        [isNestedRender]=\"isNestedRender()\"\n        [content]=\"defaultContent()\"\n        [showContent]=\"true\"\n        [model]=\"model()\"\n        [data]=\"data()\"\n        [context]=\"context()\"\n        [apiKey]=\"apiKey()\"\n        [apiVersion]=\"apiVersion()\"\n        [customComponents]=\"customComponents()\"\n        [linkComponent]=\"linkComponent()\"\n        [canTrack]=\"canTrack()\"\n        [locale]=\"locale()\"\n        [enrich]=\"enrich()\"\n        [isSsrAbTest]=\"shouldRenderVariants()\"\n        [blocksWrapper]=\"blocksWrapper()\"\n        [blocksWrapperProps]=\"blocksWrapperProps()\"\n        [contentWrapper]=\"contentWrapper()\"\n        [contentWrapperProps]=\"contentWrapperProps()\"\n        [trustedHosts]=\"trustedHosts()\"\n      ></content-component>\n    </ng-container>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class ContentVariants {\n  protected readonly TARGET = TARGET;\n  protected readonly getInitVariantsFnsScriptString =\n    getInitVariantsFnsScriptString;\n  protected readonly SDKS_SUPPORTING_PERSONALIZATION =\n    SDKS_SUPPORTING_PERSONALIZATION;\n  protected readonly getInitPersonalizationVariantsFnsScriptString =\n    getInitPersonalizationVariantsFnsScriptString;\n  protected readonly getVariants = getVariants;\n\n  canTrack: InputSignal<VariantsProviderProps[\"canTrack\"]> =\n    input<VariantsProviderProps[\"canTrack\"]>();\n  content: InputSignal<VariantsProviderProps[\"content\"]> =\n    input<VariantsProviderProps[\"content\"]>();\n  isNestedRender: InputSignal<VariantsProviderProps[\"isNestedRender\"]> =\n    input<VariantsProviderProps[\"isNestedRender\"]>();\n  nonce: InputSignal<VariantsProviderProps[\"nonce\"]> =\n    input<VariantsProviderProps[\"nonce\"]>();\n  apiHost: InputSignal<VariantsProviderProps[\"apiHost\"]> =\n    input<VariantsProviderProps[\"apiHost\"]>();\n  model: InputSignal<VariantsProviderProps[\"model\"]> =\n    input<VariantsProviderProps[\"model\"]>();\n  data: InputSignal<VariantsProviderProps[\"data\"]> =\n    input<VariantsProviderProps[\"data\"]>();\n  context: InputSignal<VariantsProviderProps[\"context\"]> =\n    input<VariantsProviderProps[\"context\"]>();\n  apiKey: InputSignal<VariantsProviderProps[\"apiKey\"]> =\n    input<VariantsProviderProps[\"apiKey\"]>();\n  apiVersion: InputSignal<VariantsProviderProps[\"apiVersion\"]> =\n    input<VariantsProviderProps[\"apiVersion\"]>();\n  customComponents: InputSignal<VariantsProviderProps[\"customComponents\"]> =\n    input<VariantsProviderProps[\"customComponents\"]>();\n  linkComponent: InputSignal<VariantsProviderProps[\"linkComponent\"]> =\n    input<VariantsProviderProps[\"linkComponent\"]>();\n  locale: InputSignal<VariantsProviderProps[\"locale\"]> =\n    input<VariantsProviderProps[\"locale\"]>();\n  enrich: InputSignal<VariantsProviderProps[\"enrich\"]> =\n    input<VariantsProviderProps[\"enrich\"]>();\n  blocksWrapper: InputSignal<VariantsProviderProps[\"blocksWrapper\"]> =\n    input<VariantsProviderProps[\"blocksWrapper\"]>();\n  blocksWrapperProps: InputSignal<VariantsProviderProps[\"blocksWrapperProps\"]> =\n    input<VariantsProviderProps[\"blocksWrapperProps\"]>();\n  contentWrapper: InputSignal<VariantsProviderProps[\"contentWrapper\"]> =\n    input<VariantsProviderProps[\"contentWrapper\"]>();\n  contentWrapperProps: InputSignal<\n    VariantsProviderProps[\"contentWrapperProps\"]\n  > = input<VariantsProviderProps[\"contentWrapperProps\"]>();\n  trustedHosts: InputSignal<VariantsProviderProps[\"trustedHosts\"]> =\n    input<VariantsProviderProps[\"trustedHosts\"]>();\n\n  shouldRenderVariants = signal(undefined);\n\n  updateCookieAndStylesScriptStr = computed(() => {\n    return getUpdateCookieAndStylesScript(\n      getVariants(this.content()).map((value) => ({\n        id: value.testVariationId!,\n        testRatio: value.testRatio,\n      })),\n      this.content()?.id || \"\"\n    );\n  });\n  hideVariantsStyleString = computed(() => {\n    return getVariants(this.content())\n      .map((value) => `.variant-${value.testVariationId} { display: none; } `)\n      .join(\"\");\n  });\n  defaultContent = computed(() => {\n    return this.shouldRenderVariants()\n      ? {\n          ...this.content(),\n          testVariationId: this.content()?.id,\n        }\n      : handleABTestingSync({\n          item: this.content(),\n          canTrack: getDefaultCanTrack(this.canTrack()),\n        });\n  });\n  trackByVariant0(_: number, variant: any) {\n    return variant.testVariationId;\n  }\n\n  constructor() {}\n\n  ngOnInit() {\n    this.shouldRenderVariants.set(\n      checkShouldRenderVariants({\n        canTrack: getDefaultCanTrack(this.canTrack()),\n        content: this.content(),\n      })\n    );\n  }\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n      /**\n       * For Solid/Svelte: we unmount the non-winning variants post-hydration.\n       */\n    }\n  }\n}\n","import type { BuilderContextInterface } from '../../context/types';\nimport { fetchOneEntry } from '../../functions/get-content/index';\nimport { logger } from '../../helpers/logger';\nimport type { BuilderContent } from '../../types/builder-content';\nexport interface SymbolInfo {\n  model?: string;\n  entry?: string;\n  data?: any;\n  content?: BuilderContent;\n  inline?: boolean;\n  dynamic?: boolean;\n  ownerId?: string;\n  global?: boolean;\n}\nexport const fetchSymbolContent = async ({\n  builderContextValue,\n  symbol\n}: {\n  symbol: SymbolInfo | undefined;\n  builderContextValue: BuilderContextInterface;\n}) => {\n  /**\n   * If:\n   * - we have a symbol prop\n   * - yet it does not have any content\n   * - and we have not already stored content from before\n   * - and it has a model name\n   *\n   * then we want to re-fetch the symbol content.\n   */\n  if (symbol?.model &&\n  // This is a hack, we should not need to check for this, but it is needed for Svelte.\n  builderContextValue?.apiKey) {\n    return fetchOneEntry({\n      model: symbol.model,\n      apiKey: symbol.global && symbol.ownerId ? symbol.ownerId : builderContextValue.apiKey,\n      apiVersion: builderContextValue.apiVersion,\n      ...(symbol?.entry && {\n        query: {\n          id: symbol.entry\n        }\n      })\n    }).catch(err => {\n      logger.error('Could not fetch symbol content: ', err);\n      return undefined;\n    });\n  }\n  return undefined;\n}","import {\n  Component,\n  viewChild,\n  ElementRef,\n  Renderer2,\n  input,\n  effect,\n  signal,\n  computed,\n  InputSignal,\n} from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport ContentVariants from \"../../components/content-variants/index\";\nimport type { BuilderContent } from \"../../types/builder-content\";\nimport { filterAttrs } from \"../helpers\";\nimport DynamicDiv from \"../../components/dynamic-div\";\nimport { getClassPropName } from \"../../functions/get-class-prop-name\";\nimport type { Nullable } from \"../../types/typescript\";\nimport { setAttrs } from \"../helpers\";\nimport { fetchSymbolContent } from \"./symbol.helpers\";\nimport type { SymbolProps } from \"./symbol.types\";\n\n@Component({\n  selector: \"builder-symbol\",\n  standalone: true,\n  imports: [CommonModule, ContentVariants],\n  template: `\n    <div #elRef0 [class]=\"className()\">\n      <content-variants\n        [nonce]=\"builderContext().nonce\"\n        [isNestedRender]=\"true\"\n        [apiVersion]=\"builderContext().apiVersion\"\n        [apiKey]=\"symbol()?.global && symbol()?.ownerId ? symbol().ownerId : builderContext().apiKey!\"\n        [context]=\"objSpread_context_c7ynf9()\"\n        [customComponents]=\"customComponents()\"\n        [data]=\"objSpread_data_9gx4sl()\"\n        [canTrack]=\"builderContext().canTrack\"\n        [model]=\"symbol()?.model ?? ''\"\n        [content]=\"contentToUse()\"\n        [linkComponent]=\"builderLinkComponent()\"\n        [blocksWrapper]=\"blocksWrapper()\"\n        [contentWrapper]=\"contentWrapper()\"\n      ></content-variants>\n    </div>\n  `,\n  styles: `:host { display: contents; }`,\n})\nexport default class Symbol {\n  symbol: InputSignal<SymbolProps[\"symbol\"]> = input<SymbolProps[\"symbol\"]>();\n  builderComponents: InputSignal<SymbolProps[\"builderComponents\"]> =\n    input<SymbolProps[\"builderComponents\"]>();\n  attributes: InputSignal<SymbolProps[\"attributes\"]> =\n    input<SymbolProps[\"attributes\"]>();\n  dynamic: InputSignal<SymbolProps[\"dynamic\"]> =\n    input<SymbolProps[\"dynamic\"]>();\n  builderContext: InputSignal<SymbolProps[\"builderContext\"]> =\n    input<SymbolProps[\"builderContext\"]>();\n  builderBlock: InputSignal<SymbolProps[\"builderBlock\"]> =\n    input<SymbolProps[\"builderBlock\"]>();\n  builderLinkComponent: InputSignal<SymbolProps[\"builderLinkComponent\"]> =\n    input<SymbolProps[\"builderLinkComponent\"]>();\n\n  elRef0 = viewChild<ElementRef>(\"elRef0\");\n\n  contentToUse = signal(undefined);\n  symbolEntry = signal(undefined);\n  _listenerFns = new Map();\n\n  blocksWrapper = computed(() => {\n    return DynamicDiv;\n  });\n  contentWrapper = computed(() => {\n    return DynamicDiv;\n  });\n  customComponents = computed(() => {\n    return Object.values(this.builderComponents());\n  });\n  className = computed(() => {\n    return [\n      ...[this.attributes()[getClassPropName()]],\n      \"builder-symbol\",\n      this.symbol()?.inline ? \"builder-inline-symbol\" : undefined,\n      this.symbol()?.dynamic || this.dynamic()\n        ? \"builder-dynamic-symbol\"\n        : undefined,\n    ]\n      .filter(Boolean)\n      .join(\" \");\n  });\n  objSpread_context_c7ynf9 = computed(() => {\n    return {\n      ...this.builderContext().context,\n      symbolId: this.builderBlock()?.id,\n    };\n  });\n  objSpread_data_9gx4sl = computed(() => {\n    return {\n      ...this.symbol()?.data,\n      ...this.builderContext().localState,\n      ...this.contentToUse()?.data?.state,\n    };\n  });\n  setContent() {\n    if (this.contentToUse() && this.symbolEntry() === this.symbol()?.entry)\n      return;\n    fetchSymbolContent({\n      symbol: this.symbol(),\n      builderContextValue: this.builderContext(),\n    }).then((newContent) => {\n      if (newContent) {\n        this.contentToUse.set(newContent);\n        this.symbolEntry.set(this.symbol()?.entry);\n      }\n    });\n  }\n  setAttributes(el: HTMLElement, value: any, changes?: any) {\n    if (!el) {\n      return;\n    }\n    const target = typeof changes === \"undefined\" ? value : changes;\n    Object.keys(target).forEach((key) => {\n      if (key.startsWith(\"on\")) {\n        if (this._listenerFns.has(key)) {\n          this._listenerFns.get(key)!();\n        }\n        this._listenerFns.set(\n          key,\n          this.renderer.listen(\n            el,\n            key.replace(\"on\", \"\").toLowerCase(),\n            target[key]\n          )\n        );\n      } else {\n        this.renderer.setAttribute(el, key.toLowerCase(), target[key] ?? \"\");\n      }\n    });\n  }\n\n  constructor(private renderer: Renderer2) {\n    if (typeof window !== \"undefined\") {\n      effect(\n        () => {\n          // --- Mitosis: Workaround to make sure the effect() is triggered ---\n          this.symbol();\n          // ---\n\n          this.setContent();\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n      effect(\n        () => {\n          this.setAttributes(this.elRef0()?.nativeElement, {});\n        },\n        {\n          allowSignalWrites: true, // Enable writing to signals inside effects\n        }\n      );\n    }\n  }\n\n  ngOnInit() {\n    this.symbolEntry.set(this.symbol()?.entry);\n    this.contentToUse.set(this.symbol()?.content);\n  }\n\n  ngAfterViewInit() {\n    if (typeof window !== \"undefined\") {\n    }\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n    this.setAttributes(this.elRef0()?.nativeElement, this.attributes());\n    this.setAttributes(this.elRef0()?.nativeElement, {});\n  }\n\n  ngOnDestroy() {\n    for (const fn of this._listenerFns.values()) {\n      fn();\n    }\n  }\n}\n","// ignore prettier formatting for this file because the order of exports is meaningful\n// prettier-ignore\nexport * from './index-helpers/top-of-file';\n\n/**\n * In the React SDK, this file is marked with `use client`.\n */\n// prettier-ignore\nexport * from './index-helpers/blocks-exports';\n\n/**\n * In the React SDK, this file is not marked with `use client`, to allow\n * NextJS App Directory to use the SDK helper functions without issues.\n */\nexport * from './server-index'","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["DynamicDiv","this","Interpreter","evaluator","fetch","i1.BuilderContext","i2","UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME","checkShouldRenderVariants","isHydrationTarget","componentInfo","i1","customCode","customCodeInfo","embed","embedComponentInfo","Form","formComponentInfo","FormInput","formInputComponentInfo","FormSubmitButton","formSubmitButtonComponentInfo","FormSelect","formSelectComponentInfo","textAreaComponentInfo","Img","imgComponentInfo","videoComponentInfo","buttonComponentInfo","columnsComponentInfo","Fragment","fragmentComponentInfo","imageComponentInfo","Section","sectionComponentInfo","slotComponentInfo","symbolComponentInfo","textComponentInfo","personalizationContainerComponentInfo","tabsComponentInfo","accordionComponentInfo"],"mappings":"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"}