@siemens/ix-angular 3.1.1 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,9 +11,15 @@ import { defineCustomElement as defineIxApplicationSwitchModal } from '@siemens/
11
11
  import { defineCustomElement as defineIxBurgerMenu } from '@siemens/ix/components/ix-menu-expand-icon.js';
12
12
  import { defineCustomElement as defineIxDateTimeCard } from '@siemens/ix/components/ix-date-time-card.js';
13
13
  import { defineCustomElement as defineIxModalLoading } from '@siemens/ix/components/ix-modal-loading.js';
14
+ import { defineCustomElement as defineIxIcon } from '@siemens/ix-icons/components/ix-icon.js';
15
+ /**
16
+ * Define custom elements during usage of the library to ensure that all
17
+ * components are registered before they are used.
18
+ */
14
19
  defineIxApplicationSwitchModal();
15
20
  defineIxApplicationSidebar();
16
21
  defineIxDateTimeCard();
17
22
  defineIxBurgerMenu();
18
23
  defineIxModalLoading();
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3N0YW5kYWxvbmUvc3JjL2ludGVybmFsLWNvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUNILE9BQU8sRUFBRSxtQkFBbUIsSUFBSSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3JILE9BQU8sRUFBRSxtQkFBbUIsSUFBSSw4QkFBOEIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzlILE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzFHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzFHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxvQkFBb0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXpHLDhCQUE4QixFQUFFLENBQUM7QUFDakMsMEJBQTBCLEVBQUUsQ0FBQztBQUM3QixvQkFBb0IsRUFBRSxDQUFDO0FBQ3ZCLGtCQUFrQixFQUFFLENBQUM7QUFDckIsb0JBQW9CLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBTUERYLUZpbGVDb3B5cmlnaHRUZXh0OiAyMDI0IFNpZW1lbnMgQUdcbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhBcHBsaWNhdGlvblNpZGViYXIgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWFwcGxpY2F0aW9uLXNpZGViYXIuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEFwcGxpY2F0aW9uU3dpdGNoTW9kYWwgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWFwcGxpY2F0aW9uLXN3aXRjaC1tb2RhbC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4QnVyZ2VyTWVudSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtbWVudS1leHBhbmQtaWNvbi5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4RGF0ZVRpbWVDYXJkIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1kYXRlLXRpbWUtY2FyZC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TW9kYWxMb2FkaW5nIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1tb2RhbC1sb2FkaW5nLmpzJztcblxuZGVmaW5lSXhBcHBsaWNhdGlvblN3aXRjaE1vZGFsKCk7XG5kZWZpbmVJeEFwcGxpY2F0aW9uU2lkZWJhcigpO1xuZGVmaW5lSXhEYXRlVGltZUNhcmQoKTtcbmRlZmluZUl4QnVyZ2VyTWVudSgpO1xuZGVmaW5lSXhNb2RhbExvYWRpbmcoKTtcbiJdfQ==
24
+ defineIxIcon();
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3N0YW5kYWxvbmUvc3JjL2ludGVybmFsLWNvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUNILE9BQU8sRUFBRSxtQkFBbUIsSUFBSSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3JILE9BQU8sRUFBRSxtQkFBbUIsSUFBSSw4QkFBOEIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQzlILE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzFHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzFHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxvQkFBb0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxZQUFZLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUU5Rjs7O0dBR0c7QUFDSCw4QkFBOEIsRUFBRSxDQUFDO0FBQ2pDLDBCQUEwQixFQUFFLENBQUM7QUFDN0Isb0JBQW9CLEVBQUUsQ0FBQztBQUN2QixrQkFBa0IsRUFBRSxDQUFDO0FBQ3JCLG9CQUFvQixFQUFFLENBQUM7QUFDdkIsWUFBWSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogU1BEWC1GaWxlQ29weXJpZ2h0VGV4dDogMjAyNCBTaWVtZW5zIEFHXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICovXG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4QXBwbGljYXRpb25TaWRlYmFyIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1hcHBsaWNhdGlvbi1zaWRlYmFyLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhBcHBsaWNhdGlvblN3aXRjaE1vZGFsIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1hcHBsaWNhdGlvbi1zd2l0Y2gtbW9kYWwuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEJ1cmdlck1lbnUgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW1lbnUtZXhwYW5kLWljb24uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeERhdGVUaW1lQ2FyZCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZGF0ZS10aW1lLWNhcmQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeE1vZGFsTG9hZGluZyB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtbW9kYWwtbG9hZGluZy5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4SWNvbiB9IGZyb20gJ0BzaWVtZW5zL2l4LWljb25zL2NvbXBvbmVudHMvaXgtaWNvbi5qcyc7XG5cbi8qKlxuICogRGVmaW5lIGN1c3RvbSBlbGVtZW50cyBkdXJpbmcgdXNhZ2Ugb2YgdGhlIGxpYnJhcnkgdG8gZW5zdXJlIHRoYXQgYWxsXG4gKiBjb21wb25lbnRzIGFyZSByZWdpc3RlcmVkIGJlZm9yZSB0aGV5IGFyZSB1c2VkLlxuICovXG5kZWZpbmVJeEFwcGxpY2F0aW9uU3dpdGNoTW9kYWwoKTtcbmRlZmluZUl4QXBwbGljYXRpb25TaWRlYmFyKCk7XG5kZWZpbmVJeERhdGVUaW1lQ2FyZCgpO1xuZGVmaW5lSXhCdXJnZXJNZW51KCk7XG5kZWZpbmVJeE1vZGFsTG9hZGluZygpO1xuZGVmaW5lSXhJY29uKCk7XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { closeModal, dismissModal, showModal, getToastContainer, toast } from '@siemens/ix';
2
2
  import * as i0 from '@angular/core';
3
- import { Type, Injector, ElementRef, Injectable, HostListener, Input, Directive, Inject } from '@angular/core';
3
+ import { Type, Injector, ElementRef, Injectable, TemplateRef, HostListener, Input, Directive, Inject } from '@angular/core';
4
4
  import { NgControl, NG_VALUE_ACCESSOR } from '@angular/forms';
5
5
 
6
6
  /*
@@ -154,26 +154,41 @@ class ToastService {
154
154
  return getToastContainer().position;
155
155
  }
156
156
  async show(config) {
157
- if (typeof config.message === 'string') {
157
+ if (typeof config.message === 'string' && !config.action) {
158
158
  return toast(config);
159
159
  }
160
160
  const context = {
161
161
  close: null,
162
162
  };
163
- const embeddedView = config.message.createEmbeddedView({
164
- $implicit: context,
165
- });
166
- const node = embeddedView.rootNodes[0];
163
+ let node = config.message;
164
+ let embeddedView;
165
+ let embeddedViewAction;
166
+ let nodeAction;
167
+ if (config.message instanceof TemplateRef) {
168
+ embeddedView = config.message.createEmbeddedView({
169
+ $implicit: context,
170
+ });
171
+ node = embeddedView.rootNodes[0];
172
+ embeddedView.detectChanges();
173
+ }
174
+ if (config.action instanceof TemplateRef) {
175
+ embeddedViewAction = config.action.createEmbeddedView({
176
+ $implicit: context,
177
+ });
178
+ nodeAction = embeddedViewAction.rootNodes[0];
179
+ embeddedViewAction.detectChanges();
180
+ }
167
181
  const instance = await toast({
168
182
  ...config,
169
183
  message: node,
184
+ action: nodeAction,
170
185
  });
171
186
  context.close = () => {
172
187
  instance.close();
173
188
  };
174
- embeddedView.detectChanges();
175
189
  instance.onClose.once(() => {
176
- embeddedView.destroy();
190
+ embeddedView?.destroy();
191
+ embeddedViewAction?.destroy();
177
192
  });
178
193
  return instance;
179
194
  }
@@ -397,9 +412,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
397
412
  * LICENSE file in the root directory of this source tree.
398
413
  */
399
414
  class RadioValueAccessorBaseDirective extends ValueAccessor {
415
+ radioValueChangeSubscription;
400
416
  constructor(injector, el) {
401
417
  super(injector, el);
402
418
  }
419
+ ngAfterViewInit() {
420
+ super.ngAfterViewInit();
421
+ this.handleRadioGroupValueChange();
422
+ }
423
+ handleRadioGroupValueChange() {
424
+ this.radioValueChangeSubscription = this.getAssignedNgControl()?.valueChanges?.subscribe((value) => {
425
+ this.lastValue = value;
426
+ });
427
+ }
403
428
  writeValue(value) {
404
429
  this.lastValue = value;
405
430
  this.elementRef.nativeElement.checked =
@@ -409,6 +434,12 @@ class RadioValueAccessorBaseDirective extends ValueAccessor {
409
434
  handleChangeEvent(el) {
410
435
  super.handleValueChange(el, el.value);
411
436
  }
437
+ ngOnDestroy() {
438
+ super.ngOnDestroy();
439
+ if (this.radioValueChangeSubscription) {
440
+ this.radioValueChangeSubscription.unsubscribe();
441
+ }
442
+ }
412
443
  /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
413
444
  /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: RadioValueAccessorBaseDirective, host: { listeners: { "checkedChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
414
445
  }
@@ -1 +1 @@
1
- {"version":3,"file":"siemens-ix-angular-common.mjs","sources":["../../common/src/providers/modal/modal-ref.ts","../../common/src/providers/modal/modal.service.ts","../../common/src/providers/modal/index.ts","../../common/src/providers/toast/toast.service.ts","../../common/src/providers/toast/toast.config.ts","../../common/src/providers/toast/index.ts","../../common/src/directives/control-value-accessors/value-accessor.ts","../../common/src/directives/control-value-accessors/boolean-value-accessor.ts","../../common/src/directives/control-value-accessors/radio-value-accessor.ts","../../common/src/directives/control-value-accessors/select-value-accessor.ts","../../common/src/directives/control-value-accessors/text-value-accessor.ts","../../common/src/directives/control-value-accessors/date-value-accessor.ts","../../common/src/directives/control-value-accessors/index.ts","../../common/src/directives/dropdown-trigger.ts","../../common/src/directives/tree.ts","../../common/src/utils/create-value-accessor-provider.ts","../../common/src/index.ts","../../common/src/siemens-ix-angular-common.ts"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { closeModal, dismissModal } from '@siemens/ix';\n\nexport class IxActiveModal<TData = any, TReason = any> {\n modalElement: HTMLElement;\n\n constructor(private readonly modalData?: TData) {}\n\n public get data() {\n return this.modalData;\n }\n\n /**\n * Close the active modal\n *\n * @param reason\n */\n public close(reason: TReason) {\n closeModal(this.modalElement, reason);\n }\n\n /**\n * Dismiss the active modal\n *\n * @param reason\n */\n public dismiss(reason?: TReason) {\n dismissModal(this.modalElement, reason);\n }\n}\n\nexport class InternalIxActiveModal<\n TData = any,\n TReason = any\n> extends IxActiveModal<TData, TReason> {\n setModalElement(element: HTMLElement) {\n this.modalElement = element;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n ApplicationRef,\n ComponentFactoryResolver,\n ElementRef,\n Injectable,\n Injector,\n TemplateRef,\n Type,\n ViewRef,\n} from '@angular/core';\nimport { closeModal, dismissModal, showModal } from '@siemens/ix';\nimport { InternalIxActiveModal, IxActiveModal } from './modal-ref';\nimport { ModalConfig } from './modal.config';\n\nexport type ModalContext<T> = {\n close: ((result: any) => void) | null;\n dismiss: ((result?: any) => void) | null;\n data?: T;\n};\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalService {\n constructor(\n private appRef: ApplicationRef,\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector\n ) {}\n\n public async open<TData = any, TReason = any>(config: ModalConfig<TData>) {\n const context: ModalContext<TData> = {\n close: null,\n dismiss: null,\n data: config.data,\n };\n\n if (config.content instanceof Type) {\n return this.createContentByComponentType<TData, TReason>(\n config.content,\n config,\n context\n );\n }\n\n const modalInstance = await this.createContentByTemplateRef<TData, TReason>(\n config.content,\n config,\n context\n );\n\n return modalInstance;\n }\n\n private async createContentByComponentType<TData = any, TReason = any>(\n componentType: Type<unknown>,\n config: ModalConfig<TData>,\n context: ModalContext<TData>\n ) {\n const activeModal = new InternalIxActiveModal<TData>(context.data);\n\n const modalFactory =\n this.componentFactoryResolver.resolveComponentFactory(componentType);\n\n const modalInjector = Injector.create({\n providers: [\n {\n provide: IxActiveModal,\n useValue: activeModal,\n },\n ],\n parent: this.injector,\n });\n\n const instance = modalFactory.create(modalInjector);\n this.appRef.attachView(instance.hostView);\n\n const element = instance.injector.get(ElementRef);\n element.nativeElement.style.display = 'contents';\n\n const modalInstance = await this.createModalInstance<TData, TReason>(\n context,\n element.nativeElement,\n instance.hostView,\n config\n );\n\n activeModal.setModalElement(modalInstance.htmlElement);\n\n return modalInstance;\n }\n\n private async createContentByTemplateRef<TData = any, TReason = any>(\n templateRef: TemplateRef<unknown>,\n config: ModalConfig<TData>,\n context: ModalContext<TData>\n ) {\n const embeddedView = templateRef.createEmbeddedView({\n $implicit: context,\n });\n\n this.appRef.attachView(embeddedView);\n\n return await this.createModalInstance<TData, TReason>(\n context,\n embeddedView.rootNodes[0],\n embeddedView,\n config\n );\n }\n\n private async createModalInstance<TData = any, TReason = any>(\n context: ModalContext<TData>,\n htmlElement: HTMLElement,\n viewRef: ViewRef,\n config: ModalConfig<TData>\n ) {\n context.close = (result: any) => {\n closeModal(htmlElement, result);\n };\n\n context.dismiss = (result?: any) => {\n dismissModal(htmlElement, result);\n };\n\n viewRef.detectChanges();\n\n const modalInstance = await showModal<TReason>({\n ...config,\n content: htmlElement,\n });\n\n modalInstance.onClose.once(() => {\n viewRef.destroy();\n });\n\n modalInstance.onDismiss.once(() => {\n viewRef.destroy();\n });\n return modalInstance;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport { IxActiveModal } from './modal-ref';\nexport { ModalContext, ModalService } from './modal.service';\nexport { ModalConfig } from './modal.config';\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Injectable } from '@angular/core';\nimport {\n getToastContainer,\n toast,\n ToastConfig as IxToastConfig,\n} from '@siemens/ix';\nimport { ToastConfig } from './toast.config';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ToastService {\n public setPosition(position: 'bottom-right' | 'top-right') {\n getToastContainer().position = position;\n }\n\n public getPosition() {\n return getToastContainer().position;\n }\n\n public async show(config: ToastConfig) {\n if (typeof config.message === 'string') {\n return toast(config as IxToastConfig);\n }\n\n const context: {\n close: (() => void) | null;\n } = {\n close: null,\n };\n\n const embeddedView = config.message.createEmbeddedView({\n $implicit: context,\n });\n\n const node: HTMLElement = embeddedView.rootNodes[0];\n const instance = await toast({\n ...config,\n message: node,\n });\n\n context.close = () => {\n instance.close();\n };\n\n embeddedView.detectChanges();\n\n instance.onClose.once(() => {\n embeddedView.destroy();\n });\n\n return instance;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { TemplateRef } from '@angular/core';\nimport { ToastConfig as IxToastConfig } from '@siemens/ix';\n\nexport type ToastConfig = Omit<IxToastConfig, 'message'> & {\n message: string | TemplateRef<any>;\n};\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport * from './toast.service';\nexport * from './toast.config';\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n AfterViewInit,\n ElementRef,\n Injector,\n OnDestroy,\n Directive,\n HostListener,\n Input,\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { Subscription } from 'rxjs';\n\n@Directive()\nexport class ValueAccessor\n implements ControlValueAccessor, AfterViewInit, OnDestroy\n{\n public static readonly ANGULAR_CLASS_PREFIX = 'ng-';\n\n private onChange: (value: any) => void = () => {\n /**/\n };\n private onTouched: () => void = () => {\n /**/\n };\n protected lastValue: any;\n private statusChanges?: Subscription;\n\n @Input() suppressClassMapping = false;\n\n constructor(\n protected injector: Injector,\n protected elementRef: ElementRef,\n private readonly checkRequiredValidator = false\n ) {}\n\n writeValue(value: any): void {\n this.elementRef.nativeElement.value = this.lastValue = value;\n this.setClasses();\n }\n\n handleValueChange(el: HTMLElement, value: any): void {\n if (el === this.elementRef.nativeElement) {\n if (value !== this.lastValue) {\n this.lastValue = value;\n this.onChange(value);\n }\n this.setClasses();\n }\n }\n\n @HostListener('ixBlur', ['$event.target'])\n _handleBlurEvent(el: any): void {\n if (el === this.elementRef.nativeElement) {\n this.onTouched();\n this.setClasses();\n }\n }\n\n registerOnChange(fn: (value: any) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.elementRef.nativeElement.disabled = isDisabled;\n }\n\n ngOnDestroy(): void {\n if (this.statusChanges) {\n this.statusChanges.unsubscribe();\n }\n }\n\n ngAfterViewInit(): void {\n let ngControl = this.getAssignedNgControl();\n\n if (!ngControl) {\n return;\n }\n\n if (ngControl.statusChanges) {\n this.statusChanges = ngControl.statusChanges.subscribe(() => {\n this.setClasses();\n });\n }\n\n this.detourFormControlMethods(ngControl, this.elementRef);\n }\n\n getAssignedNgControl(): NgControl | null {\n let ngControl: NgControl | null = null;\n try {\n ngControl = this.injector.get<NgControl>(NgControl);\n } catch {\n /* No FormControl or ngModel binding */\n }\n\n return ngControl;\n }\n\n setClasses() {\n const ngControl = this.getAssignedNgControl();\n if (!ngControl) {\n return;\n }\n this.mapNgToIxClassNames(this.elementRef);\n }\n\n detourFormControlMethods(ngControl: NgControl, elementRef: ElementRef) {\n const formControl = ngControl.control;\n if (formControl) {\n const methodsToPatch = [\n 'markAsTouched',\n 'markAllAsTouched',\n 'markAsUntouched',\n 'markAsDirty',\n 'markAsPristine',\n ] as const;\n methodsToPatch.forEach((method) => {\n if (typeof formControl[method] !== 'undefined') {\n const oldFn = formControl[method].bind(formControl);\n formControl[method] = (...params: any[]) => {\n oldFn(...params);\n this.mapNgToIxClassNames(elementRef);\n };\n }\n });\n }\n }\n\n async mapNgToIxClassNames(element: ElementRef): Promise<void> {\n if (this.suppressClassMapping) {\n return;\n }\n const input = element.nativeElement;\n\n setTimeout(async () => {\n const classes = this.getClasses(input);\n\n const classList = input.classList;\n classList.remove(\n 'ix-valid',\n 'ix-invalid',\n 'ix-touched',\n 'ix-untouched',\n 'ix-dirty',\n 'ix-pristine'\n );\n classList.add(...classes);\n\n const ngControl = this.getAssignedNgControl();\n if (ngControl && this.checkRequiredValidator) {\n const { errors, touched } = ngControl;\n\n const hasOtherErrors = errors && Object.keys(errors).length > 1;\n const isRequiredButUntouched = errors?.required && !touched;\n\n if (hasOtherErrors === false && isRequiredButUntouched) {\n input.classList.remove('ix-invalid');\n }\n }\n });\n }\n\n getClasses(element: HTMLElement) {\n const classList = element.classList;\n const classes: string[] = [];\n for (let i = 0; i < classList.length; i++) {\n const item = classList.item(i);\n if (item?.startsWith(ValueAccessor.ANGULAR_CLASS_PREFIX)) {\n classes.push(`ix-${item.substring(3)}`);\n }\n }\n return classes;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Directive, HostListener, ElementRef, Injector } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class BooleanValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el, true);\n }\n\n override writeValue(value: boolean): void {\n this.elementRef.nativeElement.checked = this.lastValue = value;\n super.mapNgToIxClassNames(this.elementRef);\n }\n\n @HostListener('checkedChange', ['$event.target'])\n handleChangeEvent(el: any): void {\n super.handleValueChange(el, el.checked);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Directive, HostListener, ElementRef, Injector } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class RadioValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el);\n }\n\n override writeValue(value: string): void {\n this.lastValue = value;\n this.elementRef.nativeElement.checked =\n this.elementRef.nativeElement.value === value;\n super.mapNgToIxClassNames(this.elementRef);\n }\n\n @HostListener('checkedChange', ['$event.target'])\n handleChangeEvent(el: any): void {\n super.handleValueChange(el, el.value);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { ElementRef, Injector, Directive, HostListener } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class SelectValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el, true);\n }\n\n @HostListener('valueChange', ['$event.target'])\n handleChangeEvent(el: any): void {\n super.handleValueChange(el, el.value);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { ElementRef, Injector, Directive, HostListener } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class TextValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el, true);\n }\n\n @HostListener('input', ['$event.target'])\n @HostListener('valueChange', ['$event.target'])\n handleInputEvent(el: any): void {\n super.handleValueChange(el, el.value);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { ElementRef, Injector, Directive, HostListener } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class DateValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el, true);\n }\n\n @HostListener('valueChange', ['$event.target'])\n handleInputEvent(el: any): void {\n super.handleValueChange(el, el.value);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport * from './boolean-value-accessor';\nexport * from './radio-value-accessor';\nexport * from './select-value-accessor';\nexport * from './text-value-accessor';\nexport * from './date-value-accessor';\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { Directive, ElementRef, Input } from '@angular/core';\n\n@Directive()\nexport class DropdownTriggerBaseDirective {\n @Input() ixDropdownTrigger!: any;\n\n constructor(private readonly element: ElementRef) {}\n\n protected ngOnChanges() {\n this.element.nativeElement.trigger = this.ixDropdownTrigger.el;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n Inject,\n Input,\n NgZone,\n OnDestroy,\n TemplateRef,\n} from '@angular/core';\nimport type {\n TreeContext as ICwTreeTreeContext,\n TreeContext,\n UpdateCallback,\n Components,\n} from '@siemens/ix';\nimport { Subscription } from 'rxjs';\n\nexport declare interface TreeBaseDirective\n extends Omit<Components.IxTree, 'renderItem'> {\n /**\n * Context changed\n */\n contextChange: EventEmitter<CustomEvent<ICwTreeTreeContext>>;\n /**\n * Emits removed nodes\n */\n nodeRemoved: EventEmitter<CustomEvent<any>>;\n}\n\n@Directive()\nexport class TreeBaseDirective implements OnDestroy {\n renderCache = new Map<HTMLElement, EmbeddedViewRef<any>>();\n\n @Input()\n set renderItem(template: TemplateRef<any>) {\n const itemRenderFunction = this.generateItemRenderer(template);\n (this.el as HTMLIxTreeElement).renderItem = itemRenderFunction.bind(this);\n }\n\n protected el: HTMLElement;\n\n onRemovedSubscription!: Subscription;\n\n constructor(\n c: ChangeDetectorRef,\n r: ElementRef,\n protected z: NgZone,\n @Inject('proxyOutputs')\n proxyOutputs: (instance: any, el: any, events: string[]) => void\n ) {\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['contextChange', 'nodeRemoved']);\n\n this.onRemovedSubscription = this.nodeRemoved.subscribe(\n (removedEvent: CustomEvent<HTMLIxTreeItemElement[]>) => {\n const { detail } = removedEvent;\n\n detail.forEach((removedItemElement) => {\n if (this.renderCache.has(removedItemElement)) {\n this.renderCache.get(removedItemElement)?.destroy();\n this.renderCache.delete(removedItemElement);\n }\n });\n }\n );\n }\n\n ngOnDestroy(): void {\n this.onRemovedSubscription?.unsubscribe();\n }\n\n generateItemRenderer(templateRef: TemplateRef<any>) {\n return (\n _: number,\n itemData: any,\n __: any[],\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => {\n const treeItem = document.createElement('ix-tree-item');\n treeItem.hasChildren = itemData.hasChildren;\n treeItem.context = context[itemData.id];\n\n const embeddedView = templateRef.createEmbeddedView({\n $implicit: itemData.data,\n });\n\n const container = embeddedView.rootNodes[0];\n embeddedView.detectChanges();\n\n update((itemData, context) => {\n treeItem.context = context[itemData.id];\n treeItem.hasChildren = itemData.hasChildren;\n\n embeddedView.context.$implicit = itemData.data;\n\n embeddedView.detectChanges();\n });\n\n treeItem.appendChild(container);\n this.renderCache.set(treeItem, embeddedView);\n\n return treeItem;\n };\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Provider } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport function createValueAccessorProvider(useExisting: any): Provider {\n return {\n provide: NG_VALUE_ACCESSOR,\n useExisting,\n multi: true,\n };\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport * from './providers/modal';\nexport * from './providers/toast';\nexport * from './directives/control-value-accessors';\nexport { DropdownTriggerBaseDirective } from './directives/dropdown-trigger';\nexport { TreeBaseDirective } from './directives/tree';\nexport { createValueAccessorProvider } from './utils/create-value-accessor-provider';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"siemens-ix-angular-common.mjs","sources":["../../common/src/providers/modal/modal-ref.ts","../../common/src/providers/modal/modal.service.ts","../../common/src/providers/modal/index.ts","../../common/src/providers/toast/toast.service.ts","../../common/src/providers/toast/toast.config.ts","../../common/src/providers/toast/index.ts","../../common/src/directives/control-value-accessors/value-accessor.ts","../../common/src/directives/control-value-accessors/boolean-value-accessor.ts","../../common/src/directives/control-value-accessors/radio-value-accessor.ts","../../common/src/directives/control-value-accessors/select-value-accessor.ts","../../common/src/directives/control-value-accessors/text-value-accessor.ts","../../common/src/directives/control-value-accessors/date-value-accessor.ts","../../common/src/directives/control-value-accessors/index.ts","../../common/src/directives/dropdown-trigger.ts","../../common/src/directives/tree.ts","../../common/src/utils/create-value-accessor-provider.ts","../../common/src/index.ts","../../common/src/siemens-ix-angular-common.ts"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { closeModal, dismissModal } from '@siemens/ix';\n\nexport class IxActiveModal<TData = any, TReason = any> {\n modalElement: HTMLElement;\n\n constructor(private readonly modalData?: TData) {}\n\n public get data() {\n return this.modalData;\n }\n\n /**\n * Close the active modal\n *\n * @param reason\n */\n public close(reason: TReason) {\n closeModal(this.modalElement, reason);\n }\n\n /**\n * Dismiss the active modal\n *\n * @param reason\n */\n public dismiss(reason?: TReason) {\n dismissModal(this.modalElement, reason);\n }\n}\n\nexport class InternalIxActiveModal<\n TData = any,\n TReason = any\n> extends IxActiveModal<TData, TReason> {\n setModalElement(element: HTMLElement) {\n this.modalElement = element;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport {\n ApplicationRef,\n ComponentFactoryResolver,\n ElementRef,\n Injectable,\n Injector,\n TemplateRef,\n Type,\n ViewRef,\n} from '@angular/core';\nimport { closeModal, dismissModal, showModal } from '@siemens/ix';\nimport { InternalIxActiveModal, IxActiveModal } from './modal-ref';\nimport { ModalConfig } from './modal.config';\n\nexport type ModalContext<T> = {\n close: ((result: any) => void) | null;\n dismiss: ((result?: any) => void) | null;\n data?: T;\n};\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ModalService {\n constructor(\n private appRef: ApplicationRef,\n private componentFactoryResolver: ComponentFactoryResolver,\n private injector: Injector\n ) {}\n\n public async open<TData = any, TReason = any>(config: ModalConfig<TData>) {\n const context: ModalContext<TData> = {\n close: null,\n dismiss: null,\n data: config.data,\n };\n\n if (config.content instanceof Type) {\n return this.createContentByComponentType<TData, TReason>(\n config.content,\n config,\n context\n );\n }\n\n const modalInstance = await this.createContentByTemplateRef<TData, TReason>(\n config.content,\n config,\n context\n );\n\n return modalInstance;\n }\n\n private async createContentByComponentType<TData = any, TReason = any>(\n componentType: Type<unknown>,\n config: ModalConfig<TData>,\n context: ModalContext<TData>\n ) {\n const activeModal = new InternalIxActiveModal<TData>(context.data);\n\n const modalFactory =\n this.componentFactoryResolver.resolveComponentFactory(componentType);\n\n const modalInjector = Injector.create({\n providers: [\n {\n provide: IxActiveModal,\n useValue: activeModal,\n },\n ],\n parent: this.injector,\n });\n\n const instance = modalFactory.create(modalInjector);\n this.appRef.attachView(instance.hostView);\n\n const element = instance.injector.get(ElementRef);\n element.nativeElement.style.display = 'contents';\n\n const modalInstance = await this.createModalInstance<TData, TReason>(\n context,\n element.nativeElement,\n instance.hostView,\n config\n );\n\n activeModal.setModalElement(modalInstance.htmlElement);\n\n return modalInstance;\n }\n\n private async createContentByTemplateRef<TData = any, TReason = any>(\n templateRef: TemplateRef<unknown>,\n config: ModalConfig<TData>,\n context: ModalContext<TData>\n ) {\n const embeddedView = templateRef.createEmbeddedView({\n $implicit: context,\n });\n\n this.appRef.attachView(embeddedView);\n\n return await this.createModalInstance<TData, TReason>(\n context,\n embeddedView.rootNodes[0],\n embeddedView,\n config\n );\n }\n\n private async createModalInstance<TData = any, TReason = any>(\n context: ModalContext<TData>,\n htmlElement: HTMLElement,\n viewRef: ViewRef,\n config: ModalConfig<TData>\n ) {\n context.close = (result: any) => {\n closeModal(htmlElement, result);\n };\n\n context.dismiss = (result?: any) => {\n dismissModal(htmlElement, result);\n };\n\n viewRef.detectChanges();\n\n const modalInstance = await showModal<TReason>({\n ...config,\n content: htmlElement,\n });\n\n modalInstance.onClose.once(() => {\n viewRef.destroy();\n });\n\n modalInstance.onDismiss.once(() => {\n viewRef.destroy();\n });\n return modalInstance;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport { IxActiveModal } from './modal-ref';\nexport { ModalContext, ModalService } from './modal.service';\nexport { ModalConfig } from './modal.config';\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Injectable, TemplateRef } from '@angular/core';\nimport {\n getToastContainer,\n toast,\n ToastConfig as IxToastConfig,\n} from '@siemens/ix';\nimport { ToastConfig } from './toast.config';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ToastService {\n public setPosition(position: 'bottom-right' | 'top-right') {\n getToastContainer().position = position;\n }\n\n public getPosition() {\n return getToastContainer().position;\n }\n\n public async show(config: ToastConfig) {\n if (typeof config.message === 'string' && !config.action) {\n return toast(config as IxToastConfig);\n }\n\n const context: {\n close: (() => void) | null;\n } = {\n close: null,\n };\n\n let node: HTMLElement | string | undefined = config.message as string;\n let embeddedView: any;\n let embeddedViewAction: any;\n let nodeAction: HTMLElement | undefined;\n\n if (config.message instanceof TemplateRef) {\n embeddedView = config.message.createEmbeddedView({\n $implicit: context,\n });\n node = embeddedView.rootNodes[0];\n embeddedView.detectChanges();\n }\n if (config.action instanceof TemplateRef) {\n embeddedViewAction = config.action.createEmbeddedView({\n $implicit: context,\n });\n nodeAction = embeddedViewAction.rootNodes[0];\n embeddedViewAction.detectChanges();\n }\n\n const instance = await toast({\n ...config,\n message: node,\n action: nodeAction,\n });\n\n context.close = () => {\n instance.close();\n };\n\n instance.onClose.once(() => {\n embeddedView?.destroy();\n embeddedViewAction?.destroy();\n });\n\n return instance;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { TemplateRef } from '@angular/core';\nimport { ToastConfig as IxToastConfig } from '@siemens/ix';\n\nexport type ToastConfig = Omit<IxToastConfig, 'message' | 'action'> & {\n message?: string | TemplateRef<any>;\n action?: TemplateRef<any>;\n};\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport * from './toast.service';\nexport * from './toast.config';\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n AfterViewInit,\n ElementRef,\n Injector,\n OnDestroy,\n Directive,\n HostListener,\n Input,\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { Subscription } from 'rxjs';\n\n@Directive()\nexport class ValueAccessor\n implements ControlValueAccessor, AfterViewInit, OnDestroy\n{\n public static readonly ANGULAR_CLASS_PREFIX = 'ng-';\n\n private onChange: (value: any) => void = () => {\n /**/\n };\n private onTouched: () => void = () => {\n /**/\n };\n protected lastValue: any;\n private statusChanges?: Subscription;\n\n @Input() suppressClassMapping = false;\n\n constructor(\n protected injector: Injector,\n protected elementRef: ElementRef,\n private readonly checkRequiredValidator = false\n ) {}\n\n writeValue(value: any): void {\n this.elementRef.nativeElement.value = this.lastValue = value;\n this.setClasses();\n }\n\n handleValueChange(el: HTMLElement, value: any): void {\n if (el === this.elementRef.nativeElement) {\n if (value !== this.lastValue) {\n this.lastValue = value;\n this.onChange(value);\n }\n this.setClasses();\n }\n }\n\n @HostListener('ixBlur', ['$event.target'])\n _handleBlurEvent(el: any): void {\n if (el === this.elementRef.nativeElement) {\n this.onTouched();\n this.setClasses();\n }\n }\n\n registerOnChange(fn: (value: any) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.elementRef.nativeElement.disabled = isDisabled;\n }\n\n ngOnDestroy(): void {\n if (this.statusChanges) {\n this.statusChanges.unsubscribe();\n }\n }\n\n ngAfterViewInit(): void {\n let ngControl = this.getAssignedNgControl();\n\n if (!ngControl) {\n return;\n }\n\n if (ngControl.statusChanges) {\n this.statusChanges = ngControl.statusChanges.subscribe(() => {\n this.setClasses();\n });\n }\n\n this.detourFormControlMethods(ngControl, this.elementRef);\n }\n\n getAssignedNgControl(): NgControl | null {\n let ngControl: NgControl | null = null;\n try {\n ngControl = this.injector.get<NgControl>(NgControl);\n } catch {\n /* No FormControl or ngModel binding */\n }\n\n return ngControl;\n }\n\n setClasses() {\n const ngControl = this.getAssignedNgControl();\n if (!ngControl) {\n return;\n }\n this.mapNgToIxClassNames(this.elementRef);\n }\n\n detourFormControlMethods(ngControl: NgControl, elementRef: ElementRef) {\n const formControl = ngControl.control;\n if (formControl) {\n const methodsToPatch = [\n 'markAsTouched',\n 'markAllAsTouched',\n 'markAsUntouched',\n 'markAsDirty',\n 'markAsPristine',\n ] as const;\n methodsToPatch.forEach((method) => {\n if (typeof formControl[method] !== 'undefined') {\n const oldFn = formControl[method].bind(formControl);\n formControl[method] = (...params: any[]) => {\n oldFn(...params);\n this.mapNgToIxClassNames(elementRef);\n };\n }\n });\n }\n }\n\n async mapNgToIxClassNames(element: ElementRef): Promise<void> {\n if (this.suppressClassMapping) {\n return;\n }\n const input = element.nativeElement;\n\n setTimeout(async () => {\n const classes = this.getClasses(input);\n\n const classList = input.classList;\n classList.remove(\n 'ix-valid',\n 'ix-invalid',\n 'ix-touched',\n 'ix-untouched',\n 'ix-dirty',\n 'ix-pristine'\n );\n classList.add(...classes);\n\n const ngControl = this.getAssignedNgControl();\n if (ngControl && this.checkRequiredValidator) {\n const { errors, touched } = ngControl;\n\n const hasOtherErrors = errors && Object.keys(errors).length > 1;\n const isRequiredButUntouched = errors?.required && !touched;\n\n if (hasOtherErrors === false && isRequiredButUntouched) {\n input.classList.remove('ix-invalid');\n }\n }\n });\n }\n\n getClasses(element: HTMLElement) {\n const classList = element.classList;\n const classes: string[] = [];\n for (let i = 0; i < classList.length; i++) {\n const item = classList.item(i);\n if (item?.startsWith(ValueAccessor.ANGULAR_CLASS_PREFIX)) {\n classes.push(`ix-${item.substring(3)}`);\n }\n }\n return classes;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Directive, HostListener, ElementRef, Injector } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class BooleanValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el, true);\n }\n\n override writeValue(value: boolean): void {\n this.elementRef.nativeElement.checked = this.lastValue = value;\n super.mapNgToIxClassNames(this.elementRef);\n }\n\n @HostListener('checkedChange', ['$event.target'])\n handleChangeEvent(el: any): void {\n super.handleValueChange(el, el.checked);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Directive, HostListener, ElementRef, Injector } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\nimport { Subscription } from 'rxjs';\n\n@Directive()\nexport class RadioValueAccessorBaseDirective extends ValueAccessor {\n\n private radioValueChangeSubscription?: Subscription;\n\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el);\n }\n\n override ngAfterViewInit() {\n super.ngAfterViewInit();\n this.handleRadioGroupValueChange();\n }\n\n private handleRadioGroupValueChange(): void {\n this.radioValueChangeSubscription = this.getAssignedNgControl()?.valueChanges?.subscribe((value: string) => {\n this.lastValue = value;\n });\n }\n\n override writeValue(value: string): void {\n this.lastValue = value;\n this.elementRef.nativeElement.checked =\n this.elementRef.nativeElement.value === value;\n super.mapNgToIxClassNames(this.elementRef);\n }\n\n @HostListener('checkedChange', ['$event.target'])\n handleChangeEvent(el: any): void {\n super.handleValueChange(el, el.value);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n if (this.radioValueChangeSubscription) {\n this.radioValueChangeSubscription.unsubscribe();\n }\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { ElementRef, Injector, Directive, HostListener } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class SelectValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el, true);\n }\n\n @HostListener('valueChange', ['$event.target'])\n handleChangeEvent(el: any): void {\n super.handleValueChange(el, el.value);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { ElementRef, Injector, Directive, HostListener } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class TextValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el, true);\n }\n\n @HostListener('input', ['$event.target'])\n @HostListener('valueChange', ['$event.target'])\n handleInputEvent(el: any): void {\n super.handleValueChange(el, el.value);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { ElementRef, Injector, Directive, HostListener } from '@angular/core';\nimport { ValueAccessor } from './value-accessor';\n\n@Directive()\nexport class DateValueAccessorBaseDirective extends ValueAccessor {\n constructor(injector: Injector, el: ElementRef) {\n super(injector, el, true);\n }\n\n @HostListener('valueChange', ['$event.target'])\n handleInputEvent(el: any): void {\n super.handleValueChange(el, el.value);\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport * from './boolean-value-accessor';\nexport * from './radio-value-accessor';\nexport * from './select-value-accessor';\nexport * from './text-value-accessor';\nexport * from './date-value-accessor';\n","/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { Directive, ElementRef, Input } from '@angular/core';\n\n@Directive()\nexport class DropdownTriggerBaseDirective {\n @Input() ixDropdownTrigger!: any;\n\n constructor(private readonly element: ElementRef) {}\n\n protected ngOnChanges() {\n this.element.nativeElement.trigger = this.ixDropdownTrigger.el;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n Inject,\n Input,\n NgZone,\n OnDestroy,\n TemplateRef,\n} from '@angular/core';\nimport type {\n TreeContext as ICwTreeTreeContext,\n TreeContext,\n UpdateCallback,\n Components,\n} from '@siemens/ix';\nimport { Subscription } from 'rxjs';\n\nexport declare interface TreeBaseDirective\n extends Omit<Components.IxTree, 'renderItem'> {\n /**\n * Context changed\n */\n contextChange: EventEmitter<CustomEvent<ICwTreeTreeContext>>;\n /**\n * Emits removed nodes\n */\n nodeRemoved: EventEmitter<CustomEvent<any>>;\n}\n\n@Directive()\nexport class TreeBaseDirective implements OnDestroy {\n renderCache = new Map<HTMLElement, EmbeddedViewRef<any>>();\n\n @Input()\n set renderItem(template: TemplateRef<any>) {\n const itemRenderFunction = this.generateItemRenderer(template);\n (this.el as HTMLIxTreeElement).renderItem = itemRenderFunction.bind(this);\n }\n\n protected el: HTMLElement;\n\n onRemovedSubscription!: Subscription;\n\n constructor(\n c: ChangeDetectorRef,\n r: ElementRef,\n protected z: NgZone,\n @Inject('proxyOutputs')\n proxyOutputs: (instance: any, el: any, events: string[]) => void\n ) {\n c.detach();\n this.el = r.nativeElement;\n proxyOutputs(this, this.el, ['contextChange', 'nodeRemoved']);\n\n this.onRemovedSubscription = this.nodeRemoved.subscribe(\n (removedEvent: CustomEvent<HTMLIxTreeItemElement[]>) => {\n const { detail } = removedEvent;\n\n detail.forEach((removedItemElement) => {\n if (this.renderCache.has(removedItemElement)) {\n this.renderCache.get(removedItemElement)?.destroy();\n this.renderCache.delete(removedItemElement);\n }\n });\n }\n );\n }\n\n ngOnDestroy(): void {\n this.onRemovedSubscription?.unsubscribe();\n }\n\n generateItemRenderer(templateRef: TemplateRef<any>) {\n return (\n _: number,\n itemData: any,\n __: any[],\n context: TreeContext,\n update: (callback: UpdateCallback) => void\n ) => {\n const treeItem = document.createElement('ix-tree-item');\n treeItem.hasChildren = itemData.hasChildren;\n treeItem.context = context[itemData.id];\n\n const embeddedView = templateRef.createEmbeddedView({\n $implicit: itemData.data,\n });\n\n const container = embeddedView.rootNodes[0];\n embeddedView.detectChanges();\n\n update((itemData, context) => {\n treeItem.context = context[itemData.id];\n treeItem.hasChildren = itemData.hasChildren;\n\n embeddedView.context.$implicit = itemData.data;\n\n embeddedView.detectChanges();\n });\n\n treeItem.appendChild(container);\n this.renderCache.set(treeItem, embeddedView);\n\n return treeItem;\n };\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Provider } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport function createValueAccessorProvider(useExisting: any): Provider {\n return {\n provide: NG_VALUE_ACCESSOR,\n useExisting,\n multi: true,\n };\n}\n","/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nexport * from './providers/modal';\nexport * from './providers/toast';\nexport * from './directives/control-value-accessors';\nexport { DropdownTriggerBaseDirective } from './directives/dropdown-trigger';\nexport { TreeBaseDirective } from './directives/tree';\nexport { createValueAccessorProvider } from './utils/create-value-accessor-provider';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}