@siemens/ix-angular 4.2.0 → 4.3.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.
package/READMEOSS.html CHANGED
Binary file
package/common/index.d.ts CHANGED
@@ -56,8 +56,17 @@ type ToastConfig = Omit<ToastConfig$1, 'message' | 'action'> & {
56
56
  };
57
57
 
58
58
  declare class ToastService {
59
+ /**
60
+ * Sets the position of the toast container
61
+ */
59
62
  setPosition(position: 'bottom-right' | 'top-right'): void;
63
+ /**
64
+ * Gets the position of the toast container
65
+ */
60
66
  getPosition(): "bottom-right" | "top-right";
67
+ /**
68
+ * Display a toast based on the provided configuration
69
+ */
61
70
  show(config: ToastConfig): Promise<_siemens_ix.ShowToastResult>;
62
71
  static ɵfac: i0.ɵɵFactoryDeclaration<ToastService, never>;
63
72
  static ɵprov: i0.ɵɵInjectableDeclaration<ToastService>;
@@ -68,22 +77,37 @@ declare class MessageService {
68
77
  actionId: string;
69
78
  payload: T;
70
79
  }>>;
80
+ /**
81
+ * Displays an info message modal with an info icon
82
+ */
71
83
  info(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise<TypedEvent<{
72
84
  actionId: string;
73
85
  payload: unknown;
74
86
  }>>;
87
+ /**
88
+ * Displays a warning message modal with a warning icon
89
+ */
75
90
  warning(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise<TypedEvent<{
76
91
  actionId: string;
77
92
  payload: unknown;
78
93
  }>>;
94
+ /**
95
+ * Displays an error message modal with an error icon
96
+ */
79
97
  error(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise<TypedEvent<{
80
98
  actionId: string;
81
99
  payload: unknown;
82
100
  }>>;
101
+ /**
102
+ * Displays a success message modal with a success icon
103
+ */
83
104
  success(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise<TypedEvent<{
84
105
  actionId: string;
85
106
  payload: unknown;
86
107
  }>>;
108
+ /**
109
+ * Displays a question message modal with a question icon
110
+ */
87
111
  question(title: string, message: string, textOkay: string, textCancel?: string, payloadOkay?: any, payloadCancel?: any): Promise<TypedEvent<{
88
112
  actionId: string;
89
113
  payload: unknown;
@@ -93,6 +117,9 @@ declare class MessageService {
93
117
  }
94
118
 
95
119
  declare class LoadingService {
120
+ /**
121
+ * Displays a loading modal with a message
122
+ */
96
123
  showModalLoading(message: string): ModalLoadingContext;
97
124
  static ɵfac: i0.ɵɵFactoryDeclaration<LoadingService, never>;
98
125
  static ɵprov: i0.ɵɵInjectableDeclaration<LoadingService>;
@@ -127,10 +127,10 @@ class ModalService {
127
127
  });
128
128
  return modalInstance;
129
129
  }
130
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ModalService, deps: [{ token: i0.ApplicationRef }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
131
- /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ModalService, providedIn: 'root' });
130
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModalService, deps: [{ token: i0.ApplicationRef }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
131
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModalService, providedIn: 'root' });
132
132
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ModalService, decorators: [{
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ModalService, decorators: [{
134
134
  type: Injectable,
135
135
  args: [{
136
136
  providedIn: 'root',
@@ -155,12 +155,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImpor
155
155
  * LICENSE file in the root directory of this source tree.
156
156
  */
157
157
  class ToastService {
158
+ /**
159
+ * Sets the position of the toast container
160
+ */
158
161
  setPosition(position) {
159
162
  getToastContainer().position = position;
160
163
  }
164
+ /**
165
+ * Gets the position of the toast container
166
+ */
161
167
  getPosition() {
162
168
  return getToastContainer().position;
163
169
  }
170
+ /**
171
+ * Display a toast based on the provided configuration
172
+ */
164
173
  async show(config) {
165
174
  if (typeof config.message === 'string' && !config.action) {
166
175
  return toast(config);
@@ -200,10 +209,10 @@ class ToastService {
200
209
  });
201
210
  return instance;
202
211
  }
203
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ToastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
204
- /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ToastService, providedIn: 'root' });
212
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ToastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
213
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ToastService, providedIn: 'root' });
205
214
  }
206
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ToastService, decorators: [{
215
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ToastService, decorators: [{
207
216
  type: Injectable,
208
217
  args: [{
209
218
  providedIn: 'root',
@@ -232,25 +241,40 @@ class MessageService {
232
241
  showMessage(config) {
233
242
  return showMessage(config);
234
243
  }
244
+ /**
245
+ * Displays an info message modal with an info icon
246
+ */
235
247
  info(title, message, textOkay, textCancel, payloadOkay, payloadCancel) {
236
248
  return showMessage.info(title, message, textOkay, textCancel, payloadOkay, payloadCancel);
237
249
  }
250
+ /**
251
+ * Displays a warning message modal with a warning icon
252
+ */
238
253
  warning(title, message, textOkay, textCancel, payloadOkay, payloadCancel) {
239
254
  return showMessage.warning(title, message, textOkay, textCancel, payloadOkay, payloadCancel);
240
255
  }
256
+ /**
257
+ * Displays an error message modal with an error icon
258
+ */
241
259
  error(title, message, textOkay, textCancel, payloadOkay, payloadCancel) {
242
260
  return showMessage.error(title, message, textOkay, textCancel, payloadOkay, payloadCancel);
243
261
  }
262
+ /**
263
+ * Displays a success message modal with a success icon
264
+ */
244
265
  success(title, message, textOkay, textCancel, payloadOkay, payloadCancel) {
245
266
  return showMessage.success(title, message, textOkay, textCancel, payloadOkay, payloadCancel);
246
267
  }
268
+ /**
269
+ * Displays a question message modal with a question icon
270
+ */
247
271
  question(title, message, textOkay, textCancel, payloadOkay, payloadCancel) {
248
272
  return showMessage.question(title, message, textOkay, textCancel, payloadOkay, payloadCancel);
249
273
  }
250
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: MessageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
251
- /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: MessageService, providedIn: 'root' });
274
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MessageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
275
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MessageService, providedIn: 'root' });
252
276
  }
253
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: MessageService, decorators: [{
277
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MessageService, decorators: [{
254
278
  type: Injectable,
255
279
  args: [{
256
280
  providedIn: 'root',
@@ -275,13 +299,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImpor
275
299
  * LICENSE file in the root directory of this source tree.
276
300
  */
277
301
  class LoadingService {
302
+ /**
303
+ * Displays a loading modal with a message
304
+ */
278
305
  showModalLoading(message) {
279
306
  return showModalLoading(message);
280
307
  }
281
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
282
- /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: LoadingService, providedIn: 'root' });
308
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
309
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoadingService, providedIn: 'root' });
283
310
  }
284
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: LoadingService, decorators: [{
311
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: LoadingService, decorators: [{
285
312
  type: Injectable,
286
313
  args: [{ providedIn: 'root' }]
287
314
  }] });
@@ -437,10 +464,10 @@ class ValueAccessor {
437
464
  }
438
465
  return classes;
439
466
  }
440
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ValueAccessor, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
441
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: ValueAccessor, isStandalone: true, inputs: { suppressClassMapping: "suppressClassMapping" }, host: { listeners: { "ixBlur": "_handleBlurEvent($event.target)" } }, ngImport: i0 });
467
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ValueAccessor, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
468
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: ValueAccessor, isStandalone: true, inputs: { suppressClassMapping: "suppressClassMapping" }, host: { listeners: { "ixBlur": "_handleBlurEvent($event.target)" } }, ngImport: i0 });
442
469
  }
443
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: ValueAccessor, decorators: [{
470
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: ValueAccessor, decorators: [{
444
471
  type: Directive
445
472
  }], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }, { type: undefined }], propDecorators: { suppressClassMapping: [{
446
473
  type: Input
@@ -468,10 +495,10 @@ class BooleanValueAccessorBaseDirective extends ValueAccessor {
468
495
  handleChangeEvent(el) {
469
496
  super.handleValueChange(el, el.checked);
470
497
  }
471
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: BooleanValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
472
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: BooleanValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "checkedChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
498
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: BooleanValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
499
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: BooleanValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "checkedChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
473
500
  }
474
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: BooleanValueAccessorBaseDirective, decorators: [{
501
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: BooleanValueAccessorBaseDirective, decorators: [{
475
502
  type: Directive
476
503
  }], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleChangeEvent: [{
477
504
  type: HostListener,
@@ -515,10 +542,10 @@ class RadioValueAccessorBaseDirective extends ValueAccessor {
515
542
  this.radioValueChangeSubscription.unsubscribe();
516
543
  }
517
544
  }
518
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: RadioValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
519
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: RadioValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "checkedChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
545
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: RadioValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
546
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: RadioValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "checkedChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
520
547
  }
521
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: RadioValueAccessorBaseDirective, decorators: [{
548
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: RadioValueAccessorBaseDirective, decorators: [{
522
549
  type: Directive
523
550
  }], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleChangeEvent: [{
524
551
  type: HostListener,
@@ -540,10 +567,10 @@ class SelectValueAccessorBaseDirective extends ValueAccessor {
540
567
  handleChangeEvent(el) {
541
568
  super.handleValueChange(el, el.value);
542
569
  }
543
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: SelectValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
544
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: SelectValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "valueChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
570
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SelectValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
571
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: SelectValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "valueChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
545
572
  }
546
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: SelectValueAccessorBaseDirective, decorators: [{
573
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: SelectValueAccessorBaseDirective, decorators: [{
547
574
  type: Directive
548
575
  }], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleChangeEvent: [{
549
576
  type: HostListener,
@@ -565,10 +592,10 @@ class TextValueAccessorBaseDirective extends ValueAccessor {
565
592
  handleInputEvent(el) {
566
593
  super.handleValueChange(el, el.value);
567
594
  }
568
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TextValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
569
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: TextValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "input": "handleInputEvent($event.target)", "valueChange": "handleInputEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
595
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TextValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
596
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: TextValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "input": "handleInputEvent($event.target)", "valueChange": "handleInputEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
570
597
  }
571
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TextValueAccessorBaseDirective, decorators: [{
598
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TextValueAccessorBaseDirective, decorators: [{
572
599
  type: Directive
573
600
  }], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleInputEvent: [{
574
601
  type: HostListener,
@@ -593,10 +620,10 @@ class DateValueAccessorBaseDirective extends ValueAccessor {
593
620
  handleInputEvent(el) {
594
621
  super.handleValueChange(el, el.value);
595
622
  }
596
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: DateValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
597
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: DateValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "valueChange": "handleInputEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
623
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DateValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
624
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: DateValueAccessorBaseDirective, isStandalone: true, host: { listeners: { "valueChange": "handleInputEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
598
625
  }
599
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: DateValueAccessorBaseDirective, decorators: [{
626
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DateValueAccessorBaseDirective, decorators: [{
600
627
  type: Directive
601
628
  }], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleInputEvent: [{
602
629
  type: HostListener,
@@ -629,10 +656,10 @@ class DropdownTriggerBaseDirective {
629
656
  ngOnChanges() {
630
657
  this.element.nativeElement.trigger = this.ixDropdownTrigger.el;
631
658
  }
632
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: DropdownTriggerBaseDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
633
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: DropdownTriggerBaseDirective, isStandalone: true, inputs: { ixDropdownTrigger: "ixDropdownTrigger" }, usesOnChanges: true, ngImport: i0 });
659
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DropdownTriggerBaseDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
660
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: DropdownTriggerBaseDirective, isStandalone: true, inputs: { ixDropdownTrigger: "ixDropdownTrigger" }, usesOnChanges: true, ngImport: i0 });
634
661
  }
635
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: DropdownTriggerBaseDirective, decorators: [{
662
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DropdownTriggerBaseDirective, decorators: [{
636
663
  type: Directive
637
664
  }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { ixDropdownTrigger: [{
638
665
  type: Input
@@ -694,10 +721,10 @@ class TreeBaseDirective {
694
721
  return treeItem;
695
722
  };
696
723
  }
697
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TreeBaseDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: 'proxyOutputs' }], target: i0.ɵɵFactoryTarget.Directive });
698
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.4", type: TreeBaseDirective, isStandalone: true, inputs: { renderItem: "renderItem" }, ngImport: i0 });
724
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TreeBaseDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: 'proxyOutputs' }], target: i0.ɵɵFactoryTarget.Directive });
725
+ /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: TreeBaseDirective, isStandalone: true, inputs: { renderItem: "renderItem" }, ngImport: i0 });
699
726
  }
700
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.4", ngImport: i0, type: TreeBaseDirective, decorators: [{
727
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TreeBaseDirective, decorators: [{
701
728
  type: Directive
702
729
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
703
730
  type: Inject,
@@ -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/providers/message/message.service.ts","../../common/src/providers/message/index.ts","../../common/src/providers/loading/loading.service.ts","../../common/src/providers/loading/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 close<TReason = any>(\n instance: { htmlElement: any },\n reason?: TReason\n ): void {\n if (typeof instance?.htmlElement?.closeModal === 'function') {\n instance.htmlElement.closeModal(reason);\n } else {\n throw new TypeError('Invalid modal instance: cannot close');\n }\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","import { Injectable } from '@angular/core';\nimport { MessageConfig, showMessage, TypedEvent } from '@siemens/ix';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MessageService {\n public showMessage<T>(config: MessageConfig<T>): Promise<\n TypedEvent<{\n actionId: string;\n payload: T;\n }>\n > {\n return showMessage(config);\n }\n\n public info(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.info(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n );\n }\n\n public warning(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.warning(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n );\n }\n\n public error(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.error(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n );\n }\n\n public success(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.success(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n );\n }\n\n public question(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.question(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\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\nexport { MessageService } from './message.service';\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 */\nimport { Injectable } from '@angular/core';\nimport { showModalLoading, ModalLoadingContext } from '@siemens/ix';\n\n@Injectable({ providedIn: 'root' })\nexport class LoadingService {\n public showModalLoading(message: string): ModalLoadingContext {\n return showModalLoading(message);\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 */\nexport { LoadingService } from './loading.service';\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 './providers/message';\nexport * from './providers/loading';\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":";;;;;AAAA;;;;;;;AAOG;MAGU,aAAa,CAAA;AAGK,IAAA,SAAA;AAF7B,IAAA,YAAY;AAEZ,IAAA,WAAA,CAA6B,SAAiB,EAAA;QAAjB,IAAA,CAAA,SAAS,GAAT,SAAS;IAAW;AAEjD,IAAA,IAAW,IAAI,GAAA;QACb,OAAO,IAAI,CAAC,SAAS;IACvB;AAEA;;;;AAIG;AACI,IAAA,KAAK,CAAC,MAAe,EAAA;AAC1B,QAAA,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;IACvC;AAEA;;;;AAIG;AACI,IAAA,OAAO,CAAC,MAAgB,EAAA;AAC7B,QAAA,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;IACzC;AACD;AAEK,MAAO,qBAGX,SAAQ,aAA6B,CAAA;AACrC,IAAA,eAAe,CAAC,OAAoB,EAAA;AAClC,QAAA,IAAI,CAAC,YAAY,GAAG,OAAO;IAC7B;AACD;;AC7CD;;;;;;;AAOG;MAwBU,YAAY,CAAA;AAEb,IAAA,MAAA;AACA,IAAA,wBAAA;AACA,IAAA,QAAA;AAHV,IAAA,WAAA,CACU,MAAsB,EACtB,wBAAkD,EAClD,QAAkB,EAAA;QAFlB,IAAA,CAAA,MAAM,GAAN,MAAM;QACN,IAAA,CAAA,wBAAwB,GAAxB,wBAAwB;QACxB,IAAA,CAAA,QAAQ,GAAR,QAAQ;IACf;IAEI,KAAK,CACV,QAA8B,EAC9B,MAAgB,EAAA;QAEhB,IAAI,OAAO,QAAQ,EAAE,WAAW,EAAE,UAAU,KAAK,UAAU,EAAE;AAC3D,YAAA,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC;QACzC;aAAO;AACL,YAAA,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC;QAC7D;IACF;IAEO,MAAM,IAAI,CAA6B,MAA0B,EAAA;AACtE,QAAA,MAAM,OAAO,GAAwB;AACnC,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB;AAED,QAAA,IAAI,MAAM,CAAC,OAAO,YAAY,IAAI,EAAE;AAClC,YAAA,OAAO,IAAI,CAAC,4BAA4B,CACtC,MAAM,CAAC,OAAO,EACd,MAAM,EACN,OAAO,CACR;QACH;AAEA,QAAA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,0BAA0B,CACzD,MAAM,CAAC,OAAO,EACd,MAAM,EACN,OAAO,CACR;AAED,QAAA,OAAO,aAAa;IACtB;AAEQ,IAAA,MAAM,4BAA4B,CACxC,aAA4B,EAC5B,MAA0B,EAC1B,OAA4B,EAAA;QAE5B,MAAM,WAAW,GAAG,IAAI,qBAAqB,CAAQ,OAAO,CAAC,IAAI,CAAC;QAElE,MAAM,YAAY,GAChB,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,aAAa,CAAC;AAEtE,QAAA,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC;AACpC,YAAA,SAAS,EAAE;AACT,gBAAA;AACE,oBAAA,OAAO,EAAE,aAAa;AACtB,oBAAA,QAAQ,EAAE,WAAW;AACtB,iBAAA;AACF,aAAA;YACD,MAAM,EAAE,IAAI,CAAC,QAAQ;AACtB,SAAA,CAAC;QAEF,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAEzC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;QACjD,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,UAAU;AAEhD,QAAA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAClD,OAAO,EACP,OAAO,CAAC,aAAa,EACrB,QAAQ,CAAC,QAAQ,EACjB,MAAM,CACP;AAED,QAAA,WAAW,CAAC,eAAe,CAAC,aAAa,CAAC,WAAW,CAAC;AAEtD,QAAA,OAAO,aAAa;IACtB;AAEQ,IAAA,MAAM,0BAA0B,CACtC,WAAiC,EACjC,MAA0B,EAC1B,OAA4B,EAAA;AAE5B,QAAA,MAAM,YAAY,GAAG,WAAW,CAAC,kBAAkB,CAAC;AAClD,YAAA,SAAS,EAAE,OAAO;AACnB,SAAA,CAAC;AAEF,QAAA,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;AAEpC,QAAA,OAAO,MAAM,IAAI,CAAC,mBAAmB,CACnC,OAAO,EACP,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EACzB,YAAY,EACZ,MAAM,CACP;IACH;IAEQ,MAAM,mBAAmB,CAC/B,OAA4B,EAC5B,WAAwB,EACxB,OAAgB,EAChB,MAA0B,EAAA;AAE1B,QAAA,OAAO,CAAC,KAAK,GAAG,CAAC,MAAW,KAAI;AAC9B,YAAA,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC;AACjC,QAAA,CAAC;AAED,QAAA,OAAO,CAAC,OAAO,GAAG,CAAC,MAAY,KAAI;AACjC,YAAA,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC;AACnC,QAAA,CAAC;QAED,OAAO,CAAC,aAAa,EAAE;AAEvB,QAAA,MAAM,aAAa,GAAG,MAAM,SAAS,CAAU;AAC7C,YAAA,GAAG,MAAM;AACT,YAAA,OAAO,EAAE,WAAW;AACrB,SAAA,CAAC;AAEF,QAAA,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAK;YAC9B,OAAO,CAAC,OAAO,EAAE;AACnB,QAAA,CAAC,CAAC;AAEF,QAAA,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,MAAK;YAChC,OAAO,CAAC,OAAO,EAAE;AACnB,QAAA,CAAC,CAAC;AACF,QAAA,OAAO,aAAa;IACtB;0HAhIW,YAAY,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAZ,uBAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cAFX,MAAM,EAAA,CAAA;;2FAEP,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;AC9BD;;;;;;;AAOG;;ACPH;;;;;;;AAOG;MAaU,YAAY,CAAA;AAChB,IAAA,WAAW,CAAC,QAAsC,EAAA;AACvD,QAAA,iBAAiB,EAAE,CAAC,QAAQ,GAAG,QAAQ;IACzC;IAEO,WAAW,GAAA;AAChB,QAAA,OAAO,iBAAiB,EAAE,CAAC,QAAQ;IACrC;IAEO,MAAM,IAAI,CAAC,MAAmB,EAAA;AACnC,QAAA,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AACxD,YAAA,OAAO,KAAK,CAAC,MAAuB,CAAC;QACvC;AAEA,QAAA,MAAM,OAAO,GAET;AACF,YAAA,KAAK,EAAE,IAAI;SACZ;AAED,QAAA,IAAI,IAAI,GAAqC,MAAM,CAAC,OAAiB;AACrE,QAAA,IAAI,YAAiB;AACrB,QAAA,IAAI,kBAAuB;AAC3B,QAAA,IAAI,UAAmC;AAEvC,QAAA,IAAI,MAAM,CAAC,OAAO,YAAY,WAAW,EAAE;AACzC,YAAA,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC;AAC/C,gBAAA,SAAS,EAAE,OAAO;AACnB,aAAA,CAAC;AACF,YAAA,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;YAChC,YAAY,CAAC,aAAa,EAAE;QAC9B;AACA,QAAA,IAAI,MAAM,CAAC,MAAM,YAAY,WAAW,EAAE;AACxC,YAAA,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC;AACpD,gBAAA,SAAS,EAAE,OAAO;AACnB,aAAA,CAAC;AACF,YAAA,UAAU,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;YAC5C,kBAAkB,CAAC,aAAa,EAAE;QACpC;AAEA,QAAA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC;AAC3B,YAAA,GAAG,MAAM;AACT,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,MAAM,EAAE,UAAU;AACnB,SAAA,CAAC;AAEF,QAAA,OAAO,CAAC,KAAK,GAAG,MAAK;YACnB,QAAQ,CAAC,KAAK,EAAE;AAClB,QAAA,CAAC;AAED,QAAA,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAK;YACzB,YAAY,EAAE,OAAO,EAAE;YACvB,kBAAkB,EAAE,OAAO,EAAE;AAC/B,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,QAAQ;IACjB;0HAxDW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAZ,uBAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cAFX,MAAM,EAAA,CAAA;;2FAEP,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACnBD;;;;;;;AAOG;;ACPH;;;;;;;AAOG;;MCDU,cAAc,CAAA;AAClB,IAAA,WAAW,CAAI,MAAwB,EAAA;AAM5C,QAAA,OAAO,WAAW,CAAC,MAAM,CAAC;IAC5B;IAEO,IAAI,CACT,KAAa,EACb,OAAe,EACf,QAAgB,EAChB,UAAmB,EACnB,WAAiB,EACjB,aAAmB,EAAA;AAEnB,QAAA,OAAO,WAAW,CAAC,IAAI,CACrB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,WAAW,EACX,aAAa,CACd;IACH;IAEO,OAAO,CACZ,KAAa,EACb,OAAe,EACf,QAAgB,EAChB,UAAmB,EACnB,WAAiB,EACjB,aAAmB,EAAA;AAEnB,QAAA,OAAO,WAAW,CAAC,OAAO,CACxB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,WAAW,EACX,aAAa,CACd;IACH;IAEO,KAAK,CACV,KAAa,EACb,OAAe,EACf,QAAgB,EAChB,UAAmB,EACnB,WAAiB,EACjB,aAAmB,EAAA;AAEnB,QAAA,OAAO,WAAW,CAAC,KAAK,CACtB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,WAAW,EACX,aAAa,CACd;IACH;IAEO,OAAO,CACZ,KAAa,EACb,OAAe,EACf,QAAgB,EAChB,UAAmB,EACnB,WAAiB,EACjB,aAAmB,EAAA;AAEnB,QAAA,OAAO,WAAW,CAAC,OAAO,CACxB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,WAAW,EACX,aAAa,CACd;IACH;IAEO,QAAQ,CACb,KAAa,EACb,OAAe,EACf,QAAgB,EAChB,UAAmB,EACnB,WAAiB,EACjB,aAAmB,EAAA;AAEnB,QAAA,OAAO,WAAW,CAAC,QAAQ,CACzB,KAAK,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,WAAW,EACX,aAAa,CACd;IACH;0HAlGW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAd,uBAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAFb,MAAM,EAAA,CAAA;;2FAEP,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACLD;;;;;;;AAOG;;ACPH;;;;;;;AAOG;MAKU,cAAc,CAAA;AAClB,IAAA,gBAAgB,CAAC,OAAe,EAAA;AACrC,QAAA,OAAO,gBAAgB,CAAC,OAAO,CAAC;IAClC;0HAHW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAd,uBAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cADD,MAAM,EAAA,CAAA;;2FACnB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACXlC;;;;;;;AAOG;;ACPH;;;;;;;AAOG;MAeU,aAAa,CAAA;AAiBZ,IAAA,QAAA;AACA,IAAA,UAAA;AACO,IAAA,sBAAA;AAhBZ,IAAA,OAAgB,oBAAoB,GAAG,KAAK;IAE3C,QAAQ,GAAyB,MAAK;;AAE9C,IAAA,CAAC;IACO,SAAS,GAAe,MAAK;;AAErC,IAAA,CAAC;AACS,IAAA,SAAS;AACX,IAAA,aAAa;IAEZ,oBAAoB,GAAG,KAAK;AAErC,IAAA,WAAA,CACY,QAAkB,EAClB,UAAsB,EACf,yBAAyB,KAAK,EAAA;QAFrC,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,UAAU,GAAV,UAAU;QACH,IAAA,CAAA,sBAAsB,GAAtB,sBAAsB;IACtC;AAEH,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK;QAC5D,IAAI,CAAC,UAAU,EAAE;IACnB;IAEA,iBAAiB,CAAC,EAAe,EAAE,KAAU,EAAA;QAC3C,IAAI,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AACxC,YAAA,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE;AAC5B,gBAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,gBAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACtB;YACA,IAAI,CAAC,UAAU,EAAE;QACnB;IACF;AAGA,IAAA,gBAAgB,CAAC,EAAO,EAAA;QACtB,IAAI,EAAE,KAAK,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;YACxC,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,UAAU,EAAE;QACnB;IACF;AAEA,IAAA,gBAAgB,CAAC,EAAwB,EAAA;AACvC,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;IACpB;AAEA,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA,IAAA,gBAAgB,CAAC,UAAmB,EAAA;QAClC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,GAAG,UAAU;IACrD;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AACtB,YAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE;QAClC;IACF;IAEA,eAAe,GAAA;AACb,QAAA,IAAI,SAAS,GAAG,IAAI,CAAC,oBAAoB,EAAE;QAE3C,IAAI,CAAC,SAAS,EAAE;YACd;QACF;AAEA,QAAA,IAAI,SAAS,CAAC,aAAa,EAAE;YAC3B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,MAAK;gBAC1D,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,CAAC,CAAC;QACJ;QAEA,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC;IAC3D;IAEA,oBAAoB,GAAA;QAClB,IAAI,SAAS,GAAqB,IAAI;AACtC,QAAA,IAAI;YACF,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAY,SAAS,CAAC;QACrD;AAAE,QAAA,MAAM;;QAER;AAEA,QAAA,OAAO,SAAS;IAClB;IAEA,UAAU,GAAA;AACR,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,EAAE;QAC7C,IAAI,CAAC,SAAS,EAAE;YACd;QACF;AACA,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC;IAC3C;IAEA,wBAAwB,CAAC,SAAoB,EAAE,UAAsB,EAAA;AACnE,QAAA,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO;QACrC,IAAI,WAAW,EAAE;AACf,YAAA,MAAM,cAAc,GAAG;gBACrB,eAAe;gBACf,kBAAkB;gBAClB,iBAAiB;gBACjB,aAAa;gBACb,gBAAgB;aACR;AACV,YAAA,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;gBAChC,IAAI,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,WAAW,EAAE;oBAC9C,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;oBACnD,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAa,KAAI;AACzC,wBAAA,KAAK,CAAC,GAAG,MAAM,CAAC;AAChB,wBAAA,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC;AACtC,oBAAA,CAAC;gBACH;AACF,YAAA,CAAC,CAAC;QACJ;IACF;IAEA,MAAM,mBAAmB,CAAC,OAAmB,EAAA;AAC3C,QAAA,IAAI,IAAI,CAAC,oBAAoB,EAAE;YAC7B;QACF;AACA,QAAA,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa;QAEnC,UAAU,CAAC,YAAW;YACpB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;AAEtC,YAAA,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS;AACjC,YAAA,SAAS,CAAC,MAAM,CACd,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,UAAU,EACV,aAAa,CACd;AACD,YAAA,SAAS,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;AAEzB,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,EAAE;AAC7C,YAAA,IAAI,SAAS,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC5C,gBAAA,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS;AAErC,gBAAA,MAAM,cAAc,GAAG,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC;gBAC/D,MAAM,sBAAsB,GAAG,MAAM,EAAE,QAAQ,IAAI,CAAC,OAAO;AAE3D,gBAAA,IAAI,cAAc,KAAK,KAAK,IAAI,sBAAsB,EAAE;AACtD,oBAAA,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC;gBACtC;YACF;AACF,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,UAAU,CAAC,OAAoB,EAAA;AAC7B,QAAA,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS;QACnC,MAAM,OAAO,GAAa,EAAE;AAC5B,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACzC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9B,IAAI,IAAI,EAAE,UAAU,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE;AACxD,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAA,GAAA,EAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA,CAAE,CAAC;YACzC;QACF;AACA,QAAA,OAAO,OAAO;IAChB;0HApKW,aAAa,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;8GAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB;2HAeU,oBAAoB,EAAA,CAAA;sBAA5B;gBAwBD,gBAAgB,EAAA,CAAA;sBADf,YAAY;uBAAC,QAAQ,EAAE,CAAC,eAAe,CAAC;;;AC3D3C;;;;;;;AAOG;AAMG,MAAO,iCAAkC,SAAQ,aAAa,CAAA;IAClE,WAAA,CAAY,QAAkB,EAAE,EAAc,EAAA;AAC5C,QAAA,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC;IAC3B;AAES,IAAA,UAAU,CAAC,KAAc,EAAA;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,GAAG,KAAK;AAC9D,QAAA,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC;IAC5C;AAGA,IAAA,iBAAiB,CAAC,EAAO,EAAA;QACvB,KAAK,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC;IACzC;0HAbW,iCAAiC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;8GAAjC,iCAAiC,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,kCAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAjC,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAD7C;sGAYC,iBAAiB,EAAA,CAAA;sBADhB,YAAY;uBAAC,eAAe,EAAE,CAAC,eAAe,CAAC;;;ACvBlD;;;;;;;AAOG;AAOG,MAAO,+BAAgC,SAAQ,aAAa,CAAA;AAExD,IAAA,4BAA4B;IAEpC,WAAA,CAAY,QAAkB,EAAE,EAAc,EAAA;AAC5C,QAAA,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;IACrB;IAES,eAAe,GAAA;QACtB,KAAK,CAAC,eAAe,EAAE;QACvB,IAAI,CAAC,2BAA2B,EAAE;IACpC;IAEQ,2BAA2B,GAAA;AACjC,QAAA,IAAI,CAAC,4BAA4B,GAAG,IAAI,CAAC,oBAAoB,EAAE,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC,KAAa,KAAI;AACzG,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACxB,QAAA,CAAC,CAAC;IACJ;AAES,IAAA,UAAU,CAAC,KAAa,EAAA;AAC/B,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO;YACnC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,KAAK,KAAK;AAC/C,QAAA,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC;IAC5C;AAGA,IAAA,iBAAiB,CAAC,EAAO,EAAA;QACvB,KAAK,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC;IACvC;IAES,WAAW,GAAA;QAClB,KAAK,CAAC,WAAW,EAAE;AACnB,QAAA,IAAI,IAAI,CAAC,4BAA4B,EAAE;AACrC,YAAA,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE;QACjD;IACF;0HApCW,+BAA+B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;8GAA/B,+BAA+B,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,kCAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAA/B,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAD3C;sGA4BC,iBAAiB,EAAA,CAAA;sBADhB,YAAY;uBAAC,eAAe,EAAE,CAAC,eAAe,CAAC;;;ACxClD;;;;;;;AAOG;AAMG,MAAO,gCAAiC,SAAQ,aAAa,CAAA;IACjE,WAAA,CAAY,QAAkB,EAAE,EAAc,EAAA;AAC5C,QAAA,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC;IAC3B;AAGA,IAAA,iBAAiB,CAAC,EAAO,EAAA;QACvB,KAAK,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC;IACvC;0HARW,gCAAgC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;8GAAhC,gCAAgC,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,aAAA,EAAA,kCAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAhC,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAD5C;sGAOC,iBAAiB,EAAA,CAAA;sBADhB,YAAY;uBAAC,aAAa,EAAE,CAAC,eAAe,CAAC;;;AClBhD;;;;;;;AAOG;AAMG,MAAO,8BAA+B,SAAQ,aAAa,CAAA;IAC/D,WAAA,CAAY,QAAkB,EAAE,EAAc,EAAA;AAC5C,QAAA,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC;IAC3B;AAIA,IAAA,gBAAgB,CAAC,EAAO,EAAA;QACtB,KAAK,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC;IACvC;0HATW,8BAA8B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;8GAA9B,8BAA8B,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iCAAA,EAAA,aAAA,EAAA,iCAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAA9B,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAD1C;sGAQC,gBAAgB,EAAA,CAAA;sBAFf,YAAY;uBAAC,OAAO,EAAE,CAAC,eAAe,CAAC;;sBACvC,YAAY;uBAAC,aAAa,EAAE,CAAC,eAAe,CAAC;;;ACnBhD;;;;;;;AAOG;AAMG,MAAO,8BAA+B,SAAQ,aAAa,CAAA;IAC/D,WAAA,CAAY,QAAkB,EAAE,EAAc,EAAA;AAC5C,QAAA,KAAK,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC;IAC3B;AAGA,IAAA,gBAAgB,CAAC,EAAO,EAAA;QACtB,KAAK,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC;IACvC;0HARW,8BAA8B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;8GAA9B,8BAA8B,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,aAAA,EAAA,iCAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAA9B,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAD1C;sGAOC,gBAAgB,EAAA,CAAA;sBADf,YAAY;uBAAC,aAAa,EAAE,CAAC,eAAe,CAAC;;;AClBhD;;;;;;;AAOG;;ACPH;;;;;;;AAOG;MAIU,4BAA4B,CAAA;AAGV,IAAA,OAAA;AAFpB,IAAA,iBAAiB;AAE1B,IAAA,WAAA,CAA6B,OAAmB,EAAA;QAAnB,IAAA,CAAA,OAAO,GAAP,OAAO;IAAe;IAEzC,WAAW,GAAA;AACnB,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE;IAChE;0HAPW,4BAA4B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;8GAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBADxC;+EAEU,iBAAiB,EAAA,CAAA;sBAAzB;;;ACZH;;;;;;;AAOG;MAmCU,iBAAiB,CAAA;AAgBhB,IAAA,CAAA;AAfZ,IAAA,WAAW,GAAG,IAAI,GAAG,EAAqC;IAE1D,IACI,UAAU,CAAC,QAA0B,EAAA;QACvC,MAAM,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;QAC7D,IAAI,CAAC,EAAwB,CAAC,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC;IAC3E;AAEU,IAAA,EAAE;AAEZ,IAAA,qBAAqB;AAErB,IAAA,WAAA,CACE,CAAoB,EACpB,CAAa,EACH,CAAS,EAEnB,YAAgE,EAAA;QAFtD,IAAA,CAAA,CAAC,GAAD,CAAC;QAIX,CAAC,CAAC,MAAM,EAAE;AACV,QAAA,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,aAAa;AACzB,QAAA,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;AAE7D,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CACrD,CAAC,YAAkD,KAAI;AACrD,YAAA,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY;AAE/B,YAAA,MAAM,CAAC,OAAO,CAAC,CAAC,kBAAkB,KAAI;gBACpC,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE;oBAC5C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE;AACnD,oBAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC;gBAC7C;AACF,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CACF;IACH;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,qBAAqB,EAAE,WAAW,EAAE;IAC3C;AAEA,IAAA,oBAAoB,CAAC,WAA6B,EAAA;QAChD,OAAO,CACL,CAAS,EACT,QAAa,EACb,EAAS,EACT,OAAoB,EACpB,MAA0C,KACxC;YACF,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,cAAc,CAAC;AACvD,YAAA,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW;YAC3C,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;AAEvC,YAAA,MAAM,YAAY,GAAG,WAAW,CAAC,kBAAkB,CAAC;gBAClD,SAAS,EAAE,QAAQ,CAAC,IAAI;AACzB,aAAA,CAAC;YAEF,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;YAC3C,YAAY,CAAC,aAAa,EAAE;AAE5B,YAAA,MAAM,CAAC,CAAC,QAAQ,EAAE,OAAO,KAAI;gBAC3B,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;AACvC,gBAAA,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW;gBAE3C,YAAY,CAAC,OAAO,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI;gBAE9C,YAAY,CAAC,aAAa,EAAE;AAC9B,YAAA,CAAC,CAAC;AAEF,YAAA,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC;YAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC;AAE5C,YAAA,OAAO,QAAQ;AACjB,QAAA,CAAC;IACH;AA3EW,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,mGAiBlB,cAAc,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;8GAjBb,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B;;0BAkBI,MAAM;2BAAC,cAAc;yCAbpB,UAAU,EAAA,CAAA;sBADb;;;AC7CH;;;;;;;AAOG;AAKG,SAAU,2BAA2B,CAAC,WAAgB,EAAA;IAC1D,OAAO;AACL,QAAA,OAAO,EAAE,iBAAiB;QAC1B,WAAW;AACX,QAAA,KAAK,EAAE,IAAI;KACZ;AACH;;AClBA;;;;;;;AAOG;;ACPH;;AAEG;;;;"}
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/providers/message/message.service.ts","../../common/src/providers/message/index.ts","../../common/src/providers/loading/loading.service.ts","../../common/src/providers/loading/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 close<TReason = any>(\n instance: { htmlElement: any },\n reason?: TReason\n ): void {\n if (typeof instance?.htmlElement?.closeModal === 'function') {\n instance.htmlElement.closeModal(reason);\n } else {\n throw new TypeError('Invalid modal instance: cannot close');\n }\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 /**\n * Sets the position of the toast container\n */\n public setPosition(position: 'bottom-right' | 'top-right') {\n getToastContainer().position = position;\n }\n\n /**\n * Gets the position of the toast container\n */\n public getPosition() {\n return getToastContainer().position;\n }\n\n /**\n * Display a toast based on the provided configuration\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","import { Injectable } from '@angular/core';\nimport { MessageConfig, showMessage, TypedEvent } from '@siemens/ix';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MessageService {\n public showMessage<T>(config: MessageConfig<T>): Promise<\n TypedEvent<{\n actionId: string;\n payload: T;\n }>\n > {\n return showMessage(config);\n }\n\n /**\n * Displays an info message modal with an info icon\n */\n public info(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.info(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n );\n }\n\n /**\n * Displays a warning message modal with a warning icon\n */\n public warning(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.warning(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n );\n }\n\n /**\n * Displays an error message modal with an error icon\n */\n public error(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.error(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n );\n }\n\n /**\n * Displays a success message modal with a success icon\n */\n public success(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.success(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\n );\n }\n\n /**\n * Displays a question message modal with a question icon\n */\n public question(\n title: string,\n message: string,\n textOkay: string,\n textCancel?: string,\n payloadOkay?: any,\n payloadCancel?: any\n ) {\n return showMessage.question(\n title,\n message,\n textOkay,\n textCancel,\n payloadOkay,\n payloadCancel\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\nexport { MessageService } from './message.service';\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 */\nimport { Injectable } from '@angular/core';\nimport { showModalLoading, ModalLoadingContext } from '@siemens/ix';\n\n@Injectable({ providedIn: 'root' })\nexport class LoadingService {\n /**\n * Displays a loading modal with a message\n */\n public showModalLoading(message: string): ModalLoadingContext {\n return showModalLoading(message);\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 */\nexport { LoadingService } from './loading.service';\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 './providers/message';\nexport * from './providers/loading';\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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"}