{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/dialogs/alert-dialog/src/alert-dialog.props.ts","../../../../../projects/components/widgets/dialogs/alert-dialog/src/alert-dialog.component.ts","../../../../../projects/components/widgets/dialogs/alert-dialog/src/alert-dialog.component.html","../../../../../projects/components/widgets/dialogs/alert-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-alertdialog',\n        new Map(\n            [\n                ['alerttype', {value: 'error', ...PROP_STRING}],\n                ['animation', PROP_STRING],\n                ['class', PROP_STRING],\n                ['closable', {value: true, PROP_BOOLEAN}],\n                ['iconclass', {value: 'wi wi-warning', PROP_STRING}],\n                ['iconheight', PROP_STRING],\n                ['iconmargin', PROP_STRING],\n                ['iconurl', PROP_STRING],\n                ['iconwidth', PROP_STRING],\n                ['message', {value: 'Am an alert box!', ...PROP_STRING}],\n                ['modal', {value: false, ...PROP_BOOLEAN}],\n                ['name', PROP_STRING],\n                ['oktext', {value: 'OK', ...PROP_STRING}],\n                ['tabindex', {value: 0, ...PROP_NUMBER}],\n                ['headinglevel', {value: 'h4', ...PROP_STRING}],\n                ['title', {value: 'Alert', ...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 { App, toBoolean } from '@wm/core';\nimport { IWidgetConfig, provideAsDialogRef, provideAsWidgetRef, TextContentDirective } from '@wm/components/base';\nimport { BaseDialog, DialogBodyDirective, DialogFooterDirective, DialogHeaderComponent } from '@wm/components/dialogs';\n\nimport { registerProps } from './alert-dialog.props';\nimport { ButtonComponent } from \"@wm/components/input/button\";\n\nconst DIALOG_CLS = 'app-dialog modal-dialog app-alert-dialog';\n\nconst WIDGET_INFO: IWidgetConfig = { widgetType: 'wm-alertdialog' };\n\nconst alertMap: Record<string, string> = {\n  information: 'info',\n  error: 'danger',\n  success: 'success',\n  warning: 'warning'\n};\n\n@Component({\n    standalone: true,\n    imports: [TextContentDirective, DialogBodyDirective, DialogFooterDirective, DialogHeaderComponent, ButtonComponent],\n    selector: 'div[wmAlertDialog]',\n    templateUrl: './alert-dialog.component.html',\n    providers: [\n        provideAsWidgetRef(AlertDialogComponent),\n        provideAsDialogRef(AlertDialogComponent)\n    ]\n})\nexport class AlertDialogComponent extends BaseDialog implements OnInit, OnDestroy {\n    static initializeProps = registerProps();\n    isPrism: boolean;\n    alerttype: any;\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        public app: App\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     this.isPrism = this.app.isPrism;\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.alerttype = alertMap[this.alerttype] ?? this.alerttype;\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    <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\"></div>\n    <div wmDialogBody>\n        <p class=\"app-dialog-message text-{{alerttype}}\" [class.app-label]=\"isPrism\"  [textContent]=\"message\"></p>\n    </div>\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</ng-template>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;AAEO,MAAM,aAAa,GAAG,MAAK;AAC9B,IAAA,QAAQ,CACJ,gBAAgB,EAChB,IAAI,GAAG,CACH;QACI,CAAC,WAAW,EAAE,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,WAAW,EAAC,CAAC;QAC/C,CAAC,WAAW,EAAE,WAAW,CAAC;QAC1B,CAAC,OAAO,EAAE,WAAW,CAAC;QACtB,CAAC,UAAU,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAC,CAAC;QACzC,CAAC,WAAW,EAAE,EAAC,KAAK,EAAE,eAAe,EAAE,WAAW,EAAC,CAAC;QACpD,CAAC,YAAY,EAAE,WAAW,CAAC;QAC3B,CAAC,YAAY,EAAE,WAAW,CAAC;QAC3B,CAAC,SAAS,EAAE,WAAW,CAAC;QACxB,CAAC,WAAW,EAAE,WAAW,CAAC;QAC1B,CAAC,SAAS,EAAE,EAAC,KAAK,EAAE,kBAAkB,EAAE,GAAG,WAAW,EAAC,CAAC;QACxD,CAAC,OAAO,EAAE,EAAC,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,EAAC,CAAC;QAC1C,CAAC,MAAM,EAAE,WAAW,CAAC;QACrB,CAAC,QAAQ,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,WAAW,EAAC,CAAC;QACzC,CAAC,UAAU,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,GAAG,WAAW,EAAC,CAAC;QACxC,CAAC,cAAc,EAAE,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,WAAW,EAAC,CAAC;QAC/C,CAAC,OAAO,EAAE,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,WAAW,EAAC;AAC7C,KAAA,CACJ,CACJ;AACL,CAAC;;ACPD,MAAM,UAAU,GAAG,0CAA0C;AAE7D,MAAM,WAAW,GAAkB,EAAE,UAAU,EAAE,gBAAgB,EAAE;AAEnE,MAAM,QAAQ,GAA2B;AACvC,IAAA,WAAW,EAAE,MAAM;AACnB,IAAA,KAAK,EAAE,QAAQ;AACf,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,OAAO,EAAE;CACV;AAYK,MAAO,oBAAqB,SAAQ,UAAU,CAAA;AACzC,IAAA,SAAA,IAAA,CAAA,eAAe,GAAG,aAAa,EAAhB,CAAmB;IAMzC,WAAA,CACI,GAAa,EACO,WAAmB,EACnB,KAAuB,EACpB,QAA0B,EACT,eAAoB,EACrD,GAAQ,EAAA;QAEf,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;YACvC,KAAK,GAAG,KAAK;QACjB;QAEA,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC7C,QAAQ,GAAG,IAAI;QACnB;;AAGA,QAAA,MAAM,QAAQ,GAAuB,SAAS,CAAC,KAAK,CAAC,GAAG,QAAQ,GAAG,IAAI;AAEvE,QAAA,KAAK,CACD,GAAG,EACH,WAAW,EACX;AACI,YAAA,KAAK,EAAE,CAAA,EAAG,UAAU,IAAI,WAAW,IAAI,EAAE,CAAA,CAAE;YAC3C,QAAQ;AACR,YAAA,QAAQ,EAAE,CAAC,SAAS,CAAC,KAAK;SAC7B,EACD,eAAe,CAClB;QAtBM,IAAA,CAAA,GAAG,GAAH,GAAG;QAuBb,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO;IAChC;IAEU,cAAc,GAAA;QACpB,OAAO,IAAI,CAAC,cAAc;IAC9B;AAEA;;;;AAIG;AACH,IAAA,IAAI,CAAC,MAAa,EAAA;QACd,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC;IAC9C;IAEA,QAAQ,GAAA;QACJ,KAAK,CAAC,QAAQ,EAAE;AAChB,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS;AAC3D,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;IAClC;IAEA,WAAW,GAAA;;AAEP,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI;QAE1B,KAAK,CAAC,WAAW,EAAE;IACvB;AA/DS,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,0CASd,OAAO,EAAA,SAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACP,OAAO,EAAA,SAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACP,UAAU,8BACb,kBAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,GAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAZrB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,SAAA,EALlB;YACP,kBAAkB,CAAC,oBAAoB,CAAC;YACxC,kBAAkB,CAAC,oBAAoB;SAC1C,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtCL,wwBAmBA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDac,oBAAoB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,mBAAmB,8DAAE,qBAAqB,EAAA,QAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,qBAAqB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,YAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,cAAA,EAAA,YAAA,EAAA,SAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAQzG,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAVhC,SAAS;AACM,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EAAA,OAAA,EACP,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,eAAe,CAAC,EAAA,QAAA,EACzG,oBAAoB,EAAA,SAAA,EAEnB;AACP,wBAAA,kBAAkB,CAAA,oBAAA,CAAsB;AACxC,wBAAA,kBAAkB,CAAA,oBAAA;AACrB,qBAAA,EAAA,QAAA,EAAA,wwBAAA,EAAA;;0BAWI,SAAS;2BAAC,OAAO;;0BACjB,SAAS;2BAAC,OAAO;;0BACjB,SAAS;2BAAC,UAAU;;0BACpB,MAAM;2BAAC,kBAAkB;;0BAAG;2DAPc,cAAc,EAAA,CAAA;sBAA5D,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,gBAAgB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;;AE7CjD;;AAEG;;;;"}