{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/basic/html/src/html.props.ts","../../../../../projects/components/widgets/basic/html/src/html.directive.ts","../../../../../projects/components/widgets/basic/html/src/index.ts"],"sourcesContent":["import {PROP_BOOLEAN, PROP_STRING, register} from '@wm/components/base';\n\nexport const registerProps = () => {\n    register(\n        'wm-html',\n        new Map(\n            [\n                ['class', PROP_STRING],\n                ['content', PROP_STRING],\n                ['hint', PROP_STRING],\n                ['arialabel', PROP_STRING],\n                ['name', PROP_STRING],\n                ['show', {value: true, ...PROP_BOOLEAN}]\n            ]\n        )\n    );\n};\n","import {Attribute, Directive, Inject, Injector, OnInit, Optional, SecurityContext} from '@angular/core';\n\nimport {setCSS, setProperty} from '@wm/core';\nimport { IWidgetConfig, provideAsWidgetRef, SanitizePipe, StylableComponent, styler } from '@wm/components/base';\n\nimport { registerProps } from './html.props';\n\nconst DEFAULT_CLS = 'app-html-container';\nconst WIDGET_CONFIG: IWidgetConfig = {\n    widgetType: 'wm-html',\n    hostClass: DEFAULT_CLS\n};\n\n@Directive({\n  standalone: true,\n    selector: '[wmHtml]',\n    providers: [\n        provideAsWidgetRef(HtmlDirective)\n    ],\n    exportAs: 'wmHtml'\n})\nexport class HtmlDirective extends StylableComponent implements OnInit {\n    static initializeProps = registerProps();\n    public content: string;\n\n    constructor(\n        inj: Injector,\n        @Attribute('height') height: string,\n        @Attribute('content.bind') private boundContent: string,\n        private sanitizePipe:SanitizePipe,\n        @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any\n    ) {\n        super(inj, WIDGET_CONFIG, explicitContext);\n\n        // if the height is provided set the overflow to auto\n        if (height) {\n            setCSS(this.nativeElement, 'overflow', 'auto');\n        }\n\n        styler(this.nativeElement, this);\n    }\n\n    ngOnInit() {\n        super.ngOnInit();\n        if (this.boundContent) {\n            this.nativeElement.innerHTML = '';\n        }\n        if (!this.content && this.nativeElement.innerHTML) {\n            this.content = this.nativeElement.innerHTML;\n        }\n    }\n\n    onPropertyChange(key: string, nv: any, ov?: any) {\n        // Guard against property changes after component destruction\n        // This can happen when property changes are queued asynchronously\n        if (this.isDestroyed) {\n            return;\n        }\n\n        if (key === 'content') {\n            // Check for trustPipe safe values\n            let bindContent = this.nativeElement.getAttribute('content.bind');\n            let safeValue = bindContent ? nv && bindContent.includes('trustAs:') : false;\n            if (typeof nv === 'object' && safeValue) {\n                setProperty(this.nativeElement, 'innerHTML', nv[Object.keys(nv)[0]]);\n            }  else {\n                // Guard against sanitizePipe being null/undefined\n                if (this.sanitizePipe) {\n                    setProperty(this.nativeElement, 'innerHTML', this.sanitizePipe.transform(nv, SecurityContext.HTML));\n                } else {\n                    // Fallback to textContent if sanitizePipe is not available\n                    setProperty(this.nativeElement, 'textContent', nv);\n                }\n            }\n        } else {\n            super.onPropertyChange(key, nv, ov);\n        }\n    }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}