{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/dialogs/iframe-dialog/src/iframe-dialog.props.ts","../../../../../projects/components/widgets/dialogs/iframe-dialog/src/iframe-dialog.component.ts","../../../../../projects/components/widgets/dialogs/iframe-dialog/src/iframe-dialog.component.html","../../../../../projects/components/widgets/dialogs/iframe-dialog/src/index.ts"],"sourcesContent":["import { PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n    register(\n        'wm-iframedialog',\n        new Map(\n            [\n                ['animation', PROP_STRING],\n                ['class', PROP_STRING],\n                ['closable', {value: true, PROP_BOOLEAN}],\n                ['encodeurl', {value: false, ...PROP_BOOLEAN}],\n                ['height', {value: '400px', ...PROP_STRING}],\n                ['iconclass', {value: 'wi wi-globe', PROP_STRING}],\n                ['iconheight', PROP_STRING],\n                ['iconmargin', PROP_STRING],\n                ['iconurl', PROP_STRING],\n                ['iconwidth', PROP_STRING],\n                ['modal', {value: false, ...PROP_BOOLEAN}],\n                ['name', PROP_STRING],\n                ['oktext', {value: 'OK', ...PROP_STRING}],\n                ['showactions', {value: true, ...PROP_BOOLEAN}],\n                ['showheader', {value: true, ...PROP_BOOLEAN}],\n                ['tabindex', {value: 0, ...PROP_NUMBER}],\n                ['headinglevel', {value: 'h4', ...PROP_STRING}],\n                ['title', {value: 'External Content', ...PROP_STRING}],\n                ['url', {value: '//www.wavemaker.com', ...PROP_STRING}]\n            ]\n        )\n    );\n};\n","import {\n    Attribute,\n    Component,\n    Inject,\n    Injector,\n    OnInit,\n    OnDestroy,\n    Optional,\n    TemplateRef,\n    ViewChild\n} from '@angular/core';\n\nimport {toBoolean} from '@wm/core';\nimport { provideAsDialogRef, provideAsWidgetRef } from '@wm/components/base';\nimport { BaseDialog, DialogBodyDirective, DialogFooterDirective, DialogHeaderComponent } from '@wm/components/dialogs';\n\nimport { registerProps } from './iframe-dialog.props';\nimport { IframeComponent } from '@wm/components/basic/iframe';\nimport { ButtonComponent } from '@wm/components/input/button';\n\nconst DIALOG_CLS = 'app-dialog modal-dialog app-iframe-dialog';\nconst WIDGET_INFO = {widgetType: 'wm-iframedialog'};\n\n@Component({\n    standalone: true,\n    imports: [IframeComponent, DialogBodyDirective, DialogFooterDirective, DialogHeaderComponent, ButtonComponent],\n    selector: 'div[wmIframeDialog]',\n    templateUrl: './iframe-dialog.component.html',\n    providers: [\n        provideAsWidgetRef(IframeDialogComponent),\n        provideAsDialogRef(IframeDialogComponent)\n    ]\n})\nexport class IframeDialogComponent extends BaseDialog implements OnInit, OnDestroy {\n    static initializeProps = registerProps();\n\n    @ViewChild('dialogTemplate' , { static: true }) dialogTemplate: TemplateRef<any>;\n\n    constructor(\n        inj: Injector,\n        @Attribute('class') dialogClass: string,\n        @Attribute('modal') modal: string | boolean,\n        @Attribute('closable') closable: string | boolean,\n        @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any\n    ) {\n        if (modal === null || modal === undefined) {\n            modal = false;\n        }\n\n        if (closable === null || closable === undefined) {\n            closable = true;\n        }\n\n        // setting the backdrop to 'static' will not close the dialog on backdrop click\n        const backdrop: boolean | 'static' = toBoolean(modal) ? 'static' : true;\n\n        super(\n            inj,\n            WIDGET_INFO,\n            {\n                class: `${DIALOG_CLS} ${dialogClass || ''}`,\n                backdrop,\n                keyboard: !toBoolean(modal)\n            },\n            explicitContext\n        );\n    }\n\n    protected getTemplateRef(): TemplateRef<any> {\n        return this.dialogTemplate;\n    }\n\n    /**\n     * Click event handler for the ok button\n     * invokes on-ok event callback\n     * @param {Event} $event\n     */\n    onOk($event: Event) {\n        this.invokeEventCallback('ok', {$event});\n    }\n\n    ngOnInit() {\n        super.ngOnInit();\n        this.register(this.viewParent);\n    }\n\n    ngOnDestroy() {\n        // MEMORY LEAK FIX: Clear ViewChild reference\n        this.dialogTemplate = null;\n\n        super.ngOnDestroy();\n    }\n}\n","<ng-template #dialogTemplate>\n  @if (showheader) {\n    <div wmDialogHeader [closable]=\"closable\"\n      [iconclass]=\"iconclass\"\n      [iconurl]=\"iconurl\"\n      [iconwidth]=\"iconwidth\"\n      [iconheight]=\"iconheight\"\n      [iconmargin]=\"iconmargin\"\n      [heading]=\"title\"\n      [headinglevel]=\"headinglevel\"\n      [title]=\"title\"\n      [titleid]=\"titleId\"\n    ></div>\n  }@else if (!showheader && title) {\n      <h4 [id]=\"titleId\" class=\"sr-only\">\n          {{ title }}\n      </h4>\n  }\n  <div wmDialogBody>\n    <div wmIframe encodeurl.bind=\"encodeurl\" iframesrc.bind=\"url\" height.bind=\"height\" width.bind=\"width\" hint.bind=\"hint\"></div>\n  </div>\n  @if (showactions) {\n    <div wmDialogFooter>\n      <button (click)=\"onOk($event)\" [attr.aria-label]=\"oktext\" caption.bind=\"oktext\" class=\"btn-primary ok-action\"\n      wmButton></button>\n    </div>\n  }\n</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}