@siemens/ix-angular 3.1.0 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/READMEOSS.html +10 -61
- package/angular-component-lib/utils.d.ts +9 -0
- package/common/directives/control-value-accessors/boolean-value-accessor.d.ts +10 -0
- package/common/directives/control-value-accessors/date-value-accessor.d.ts +9 -0
- package/common/directives/control-value-accessors/index.d.ts +5 -0
- package/common/directives/control-value-accessors/radio-value-accessor.d.ts +14 -0
- package/common/directives/control-value-accessors/select-value-accessor.d.ts +9 -0
- package/common/directives/control-value-accessors/text-value-accessor.d.ts +9 -0
- package/common/directives/control-value-accessors/value-accessor.d.ts +30 -0
- package/common/directives/dropdown-trigger.d.ts +10 -0
- package/common/directives/tree.d.ts +26 -0
- package/common/index.d.ts +6 -0
- package/common/providers/modal/index.d.ts +3 -0
- package/common/providers/modal/modal-ref.d.ts +21 -0
- package/common/providers/modal/modal.config.d.ts +6 -0
- package/common/providers/modal/modal.service.d.ts +20 -0
- package/common/providers/toast/index.d.ts +2 -0
- package/common/providers/toast/toast.config.d.ts +6 -0
- package/common/providers/toast/toast.service.d.ts +9 -0
- package/common/utils/create-value-accessor-provider.d.ts +2 -0
- package/components.d.ts +1374 -0
- package/declare-components.d.ts +2 -0
- package/directives/control-value-accessors/boolean-value-accessor.d.ts +8 -0
- package/directives/control-value-accessors/date-value-accessor.d.ts +8 -0
- package/directives/control-value-accessors/index.d.ts +5 -0
- package/directives/control-value-accessors/radio-value-accessor.d.ts +8 -0
- package/directives/control-value-accessors/select-value-accessor.d.ts +8 -0
- package/directives/control-value-accessors/text-value-accessor.d.ts +8 -0
- package/directives/dropdown-trigger.d.ts +10 -0
- package/esm2022/angular-component-lib/utils.mjs +59 -0
- package/esm2022/common/directives/control-value-accessors/boolean-value-accessor.mjs +32 -0
- package/esm2022/common/directives/control-value-accessors/date-value-accessor.mjs +28 -0
- package/esm2022/common/directives/control-value-accessors/index.mjs +14 -0
- package/esm2022/common/directives/control-value-accessors/radio-value-accessor.mjs +50 -0
- package/esm2022/common/directives/control-value-accessors/select-value-accessor.mjs +28 -0
- package/esm2022/common/directives/control-value-accessors/text-value-accessor.mjs +31 -0
- package/esm2022/common/directives/control-value-accessors/value-accessor.mjs +157 -0
- package/esm2022/common/directives/dropdown-trigger.mjs +28 -0
- package/esm2022/common/directives/tree.mjs +70 -0
- package/esm2022/common/index.mjs +15 -0
- package/esm2022/common/providers/modal/index.mjs +11 -0
- package/esm2022/common/providers/modal/modal-ref.mjs +41 -0
- package/esm2022/common/providers/modal/modal.config.mjs +10 -0
- package/esm2022/common/providers/modal/modal.service.mjs +90 -0
- package/esm2022/common/providers/toast/index.mjs +11 -0
- package/esm2022/common/providers/toast/toast.config.mjs +10 -0
- package/esm2022/common/providers/toast/toast.service.mjs +67 -0
- package/esm2022/common/siemens-ix-angular-common.mjs +5 -0
- package/esm2022/common/utils/create-value-accessor-provider.mjs +17 -0
- package/esm2022/components.mjs +2865 -0
- package/esm2022/declare-components.mjs +108 -0
- package/esm2022/directives/control-value-accessors/boolean-value-accessor.mjs +26 -0
- package/esm2022/directives/control-value-accessors/date-value-accessor.mjs +26 -0
- package/esm2022/directives/control-value-accessors/index.mjs +14 -0
- package/esm2022/directives/control-value-accessors/radio-value-accessor.mjs +26 -0
- package/esm2022/directives/control-value-accessors/select-value-accessor.mjs +26 -0
- package/esm2022/directives/control-value-accessors/text-value-accessor.mjs +26 -0
- package/esm2022/directives/dropdown-trigger.mjs +31 -0
- package/esm2022/index.mjs +19 -0
- package/esm2022/ix-icon.mjs +40 -0
- package/esm2022/module.mjs +78 -0
- package/esm2022/providers/modal/index.mjs +11 -0
- package/esm2022/providers/modal/modal.service.mjs +28 -0
- package/esm2022/providers/theme/index.mjs +10 -0
- package/esm2022/providers/theme/theme.service.mjs +40 -0
- package/esm2022/providers/toast/index.mjs +2 -0
- package/esm2022/providers/toast/toast.service.mjs +34 -0
- package/esm2022/siemens-ix-angular.mjs +5 -0
- package/esm2022/standalone/angular-component-lib/utils.mjs +59 -0
- package/esm2022/standalone/components.mjs +3188 -0
- package/esm2022/standalone/directives/control-value-accessors/boolean-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/control-value-accessors/date-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/control-value-accessors/index.mjs +14 -0
- package/esm2022/standalone/directives/control-value-accessors/radio-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/control-value-accessors/select-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/control-value-accessors/text-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/dropdown-trigger.mjs +32 -0
- package/esm2022/standalone/index.mjs +18 -0
- package/esm2022/standalone/internal-components.mjs +25 -0
- package/esm2022/standalone/ix-icon.mjs +44 -0
- package/esm2022/standalone/providers/modal.mjs +28 -0
- package/esm2022/standalone/providers/toast.mjs +35 -0
- package/esm2022/standalone/siemens-ix-angular-standalone.mjs +5 -0
- package/esm2022/standalone/tree.mjs +41 -0
- package/esm2022/standalone/utils/value-accessor-directives.mjs +23 -0
- package/esm2022/tree.mjs +39 -0
- package/esm2022/utils/app-initialize.mjs +25 -0
- package/fesm2022/siemens-ix-angular-common.mjs +664 -0
- package/fesm2022/siemens-ix-angular-common.mjs.map +1 -0
- package/fesm2022/siemens-ix-angular-standalone.mjs +3483 -0
- package/fesm2022/siemens-ix-angular-standalone.mjs.map +1 -0
- package/fesm2022/siemens-ix-angular.mjs +3345 -0
- package/fesm2022/siemens-ix-angular.mjs.map +1 -0
- package/index.d.ts +10 -0
- package/ix-icon.d.ts +12 -0
- package/module.d.ts +17 -0
- package/package.json +2 -7
- package/providers/modal/index.d.ts +2 -0
- package/providers/modal/modal.service.d.ts +15 -0
- package/providers/theme/index.d.ts +1 -0
- package/providers/theme/theme.service.d.ts +15 -0
- package/providers/toast/index.d.ts +2 -0
- package/providers/toast/toast.service.d.ts +11 -0
- package/standalone/angular-component-lib/utils.d.ts +9 -0
- package/standalone/components.d.ts +1374 -0
- package/standalone/directives/control-value-accessors/boolean-value-accessor.d.ts +11 -0
- package/standalone/directives/control-value-accessors/date-value-accessor.d.ts +11 -0
- package/standalone/directives/control-value-accessors/index.d.ts +5 -0
- package/standalone/directives/control-value-accessors/radio-value-accessor.d.ts +11 -0
- package/standalone/directives/control-value-accessors/select-value-accessor.d.ts +11 -0
- package/standalone/directives/control-value-accessors/text-value-accessor.d.ts +11 -0
- package/standalone/directives/dropdown-trigger.d.ts +10 -0
- package/standalone/index.d.ts +9 -0
- package/standalone/internal-components.d.ts +1 -0
- package/standalone/ix-icon.d.ts +9 -0
- package/standalone/providers/modal.d.ts +11 -0
- package/standalone/providers/toast.d.ts +11 -0
- package/standalone/tree.d.ts +9 -0
- package/standalone/utils/value-accessor-directives.d.ts +16 -0
- package/tree.d.ts +9 -0
- package/utils/app-initialize.d.ts +1 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import * as d from './components';
|
|
2
|
+
export declare const DIRECTIVES: (typeof d.IxActionCard | typeof d.IxApplication | typeof d.IxApplicationHeader | typeof d.IxAvatar | typeof d.IxBasicNavigation | typeof d.IxBlind | typeof d.IxBreadcrumb | typeof d.IxBreadcrumbItem | typeof d.IxButton | typeof d.IxCard | typeof d.IxCardAccordion | typeof d.IxCardContent | typeof d.IxCardList | typeof d.IxCardTitle | typeof d.IxCategoryFilter | typeof d.IxCheckbox | typeof d.IxCheckboxGroup | typeof d.IxChip | typeof d.IxCol | typeof d.IxContent | typeof d.IxContentHeader | typeof d.IxCustomField | typeof d.IxDateDropdown | typeof d.IxDateInput | typeof d.IxDatePicker | typeof d.IxDatetimePicker | typeof d.IxDivider | typeof d.IxDrawer | typeof d.IxDropdown | typeof d.IxDropdownButton | typeof d.IxDropdownHeader | typeof d.IxDropdownItem | typeof d.IxDropdownQuickActions | typeof d.IxEmptyState | typeof d.IxEventList | typeof d.IxEventListItem | typeof d.IxExpandingSearch | typeof d.IxFieldLabel | typeof d.IxFilterChip | typeof d.IxFlipTile | typeof d.IxFlipTileContent | typeof d.IxGroup | typeof d.IxGroupContextMenu | typeof d.IxGroupItem | typeof d.IxHelperText | typeof d.IxIconButton | typeof d.IxIconToggleButton | typeof d.IxInput | typeof d.IxInputGroup | typeof d.IxKeyValue | typeof d.IxKeyValueList | typeof d.IxKpi | typeof d.IxLayoutAuto | typeof d.IxLayoutGrid | typeof d.IxLinkButton | typeof d.IxMapNavigation | typeof d.IxMapNavigationOverlay | typeof d.IxMenu | typeof d.IxMenuAbout | typeof d.IxMenuAboutItem | typeof d.IxMenuAboutNews | typeof d.IxMenuAvatar | typeof d.IxMenuAvatarItem | typeof d.IxMenuCategory | typeof d.IxMenuItem | typeof d.IxMenuSettings | typeof d.IxMenuSettingsItem | typeof d.IxMessageBar | typeof d.IxModal | typeof d.IxModalContent | typeof d.IxModalFooter | typeof d.IxModalHeader | typeof d.IxNumberInput | typeof d.IxPagination | typeof d.IxPane | typeof d.IxPaneLayout | typeof d.IxPill | typeof d.IxProgressIndicator | typeof d.IxPushCard | typeof d.IxRadio | typeof d.IxRadioGroup | typeof d.IxRow | typeof d.IxSelect | typeof d.IxSelectItem | typeof d.IxSlider | typeof d.IxSpinner | typeof d.IxSplitButton | typeof d.IxTabItem | typeof d.IxTabs | typeof d.IxTextarea | typeof d.IxTile | typeof d.IxTimeInput | typeof d.IxTimePicker | typeof d.IxToast | typeof d.IxToastContainer | typeof d.IxToggle | typeof d.IxToggleButton | typeof d.IxTooltip | typeof d.IxTreeItem | typeof d.IxTypography | typeof d.IxUpload | typeof d.IxValidationTooltip | typeof d.IxWorkflowStep | typeof d.IxWorkflowSteps)[];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ElementRef, Injector } from '@angular/core';
|
|
2
|
+
import { BooleanValueAccessorBaseDirective } from '@siemens/ix-angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class IxBooleanValueAccessorDirective extends BooleanValueAccessorBaseDirective {
|
|
5
|
+
constructor(injector: Injector, el: ElementRef);
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IxBooleanValueAccessorDirective, never>;
|
|
7
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IxBooleanValueAccessorDirective, "ix-checkbox,ix-toggle", never, {}, {}, never, never, false, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ElementRef, Injector } from '@angular/core';
|
|
2
|
+
import { DateValueAccessorBaseDirective } from '@siemens/ix-angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class IxDateValueAccessorDirective extends DateValueAccessorBaseDirective {
|
|
5
|
+
constructor(injector: Injector, el: ElementRef);
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IxDateValueAccessorDirective, never>;
|
|
7
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IxDateValueAccessorDirective, "ix-date-input", never, {}, {}, never, never, false, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ElementRef, Injector } from '@angular/core';
|
|
2
|
+
import { RadioValueAccessorBaseDirective } from '@siemens/ix-angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class IxRadioValueAccessorDirective extends RadioValueAccessorBaseDirective {
|
|
5
|
+
constructor(injector: Injector, el: ElementRef);
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IxRadioValueAccessorDirective, never>;
|
|
7
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IxRadioValueAccessorDirective, "ix-radio", never, {}, {}, never, never, false, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ElementRef, Injector } from '@angular/core';
|
|
2
|
+
import { SelectValueAccessorBaseDirective } from '@siemens/ix-angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class IxSelectValueAccessorDirective extends SelectValueAccessorBaseDirective {
|
|
5
|
+
constructor(injector: Injector, el: ElementRef);
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IxSelectValueAccessorDirective, never>;
|
|
7
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IxSelectValueAccessorDirective, "ix-select", never, {}, {}, never, never, false, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ElementRef, Injector } from '@angular/core';
|
|
2
|
+
import { TextValueAccessorBaseDirective } from '@siemens/ix-angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class IxTextValueAccessorDirective extends TextValueAccessorBaseDirective {
|
|
5
|
+
constructor(injector: Injector, el: ElementRef);
|
|
6
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IxTextValueAccessorDirective, never>;
|
|
7
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IxTextValueAccessorDirective, "ix-input,ix-number-input,ix-textarea", never, {}, {}, never, never, false, never>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ElementRef } from '@angular/core';
|
|
2
|
+
import { DropdownTriggerBaseDirective } from '@siemens/ix-angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class IxDropdownTriggerDirective extends DropdownTriggerBaseDirective {
|
|
5
|
+
ixDropdownTrigger: any;
|
|
6
|
+
constructor(element: ElementRef);
|
|
7
|
+
protected ngOnChanges(): void;
|
|
8
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IxDropdownTriggerDirective, never>;
|
|
9
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IxDropdownTriggerDirective, "[ixDropdownTrigger]", never, { "ixDropdownTrigger": { "alias": "ixDropdownTrigger"; "required": false; }; }, {}, never, never, false, never>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
import { fromEvent } from 'rxjs';
|
|
4
|
+
export const proxyInputs = (Cmp, inputs) => {
|
|
5
|
+
const Prototype = Cmp.prototype;
|
|
6
|
+
inputs.forEach((item) => {
|
|
7
|
+
Object.defineProperty(Prototype, item, {
|
|
8
|
+
get() {
|
|
9
|
+
return this.el[item];
|
|
10
|
+
},
|
|
11
|
+
set(val) {
|
|
12
|
+
this.z.runOutsideAngular(() => (this.el[item] = val));
|
|
13
|
+
},
|
|
14
|
+
/**
|
|
15
|
+
* In the event that proxyInputs is called
|
|
16
|
+
* multiple times re-defining these inputs
|
|
17
|
+
* will cause an error to be thrown. As a result
|
|
18
|
+
* we set configurable: true to indicate these
|
|
19
|
+
* properties can be changed.
|
|
20
|
+
*/
|
|
21
|
+
configurable: true,
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
export const proxyMethods = (Cmp, methods) => {
|
|
26
|
+
const Prototype = Cmp.prototype;
|
|
27
|
+
methods.forEach((methodName) => {
|
|
28
|
+
Prototype[methodName] = function () {
|
|
29
|
+
const args = arguments;
|
|
30
|
+
return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));
|
|
31
|
+
};
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
export const proxyOutputs = (instance, el, events) => {
|
|
35
|
+
events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));
|
|
36
|
+
};
|
|
37
|
+
export const defineCustomElement = (tagName, customElement) => {
|
|
38
|
+
if (customElement !== undefined && typeof customElements !== 'undefined' && !customElements.get(tagName)) {
|
|
39
|
+
customElements.define(tagName, customElement);
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
// tslint:disable-next-line: only-arrow-functions
|
|
43
|
+
export function ProxyCmp(opts) {
|
|
44
|
+
const decorator = function (cls) {
|
|
45
|
+
const { defineCustomElementFn, inputs, methods } = opts;
|
|
46
|
+
if (defineCustomElementFn !== undefined) {
|
|
47
|
+
defineCustomElementFn();
|
|
48
|
+
}
|
|
49
|
+
if (inputs) {
|
|
50
|
+
proxyInputs(cls, inputs);
|
|
51
|
+
}
|
|
52
|
+
if (methods) {
|
|
53
|
+
proxyMethods(cls, methods);
|
|
54
|
+
}
|
|
55
|
+
return cls;
|
|
56
|
+
};
|
|
57
|
+
return decorator;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYW5ndWxhci1jb21wb25lbnQtbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixvQkFBb0I7QUFDcEIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFRLEVBQUUsTUFBZ0IsRUFBRSxFQUFFO0lBQ3hELE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7SUFDaEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ3RCLE1BQU0sQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRTtZQUNyQyxHQUFHO2dCQUNELE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2QixDQUFDO1lBQ0QsR0FBRyxDQUFDLEdBQVE7Z0JBQ1YsSUFBSSxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN4RCxDQUFDO1lBQ0Q7Ozs7OztlQU1HO1lBQ0gsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxHQUFRLEVBQUUsT0FBaUIsRUFBRSxFQUFFO0lBQzFELE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7SUFDaEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1FBQzdCLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRztZQUN0QixNQUFNLElBQUksR0FBRyxTQUFTLENBQUM7WUFDdkIsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNsRixDQUFDLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLFFBQWEsRUFBRSxFQUFPLEVBQUUsTUFBZ0IsRUFBRSxFQUFFO0lBQ3ZFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xGLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsT0FBZSxFQUFFLGFBQWtCLEVBQUUsRUFBRTtJQUN6RSxJQUFJLGFBQWEsS0FBSyxTQUFTLElBQUksT0FBTyxjQUFjLEtBQUssV0FBVyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ3pHLGNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ2hELENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixpREFBaUQ7QUFDakQsTUFBTSxVQUFVLFFBQVEsQ0FBQyxJQUF5RTtJQUNoRyxNQUFNLFNBQVMsR0FBRyxVQUFVLEdBQVE7UUFDbEMsTUFBTSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFFeEQsSUFBSSxxQkFBcUIsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN4QyxxQkFBcUIsRUFBRSxDQUFDO1FBQzFCLENBQUM7UUFFRCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsV0FBVyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMzQixDQUFDO1FBQ0QsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLFlBQVksQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxDQUFDO0lBQ0YsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlICovXG4vKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBwcm94eUlucHV0cyA9IChDbXA6IGFueSwgaW5wdXRzOiBzdHJpbmdbXSkgPT4ge1xuICBjb25zdCBQcm90b3R5cGUgPSBDbXAucHJvdG90eXBlO1xuICBpbnB1dHMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShQcm90b3R5cGUsIGl0ZW0sIHtcbiAgICAgIGdldCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxbaXRlbV07XG4gICAgICB9LFxuICAgICAgc2V0KHZhbDogYW55KSB7XG4gICAgICAgIHRoaXMuei5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiAodGhpcy5lbFtpdGVtXSA9IHZhbCkpO1xuICAgICAgfSxcbiAgICAgIC8qKlxuICAgICAgICogSW4gdGhlIGV2ZW50IHRoYXQgcHJveHlJbnB1dHMgaXMgY2FsbGVkXG4gICAgICAgKiBtdWx0aXBsZSB0aW1lcyByZS1kZWZpbmluZyB0aGVzZSBpbnB1dHNcbiAgICAgICAqIHdpbGwgY2F1c2UgYW4gZXJyb3IgdG8gYmUgdGhyb3duLiBBcyBhIHJlc3VsdFxuICAgICAgICogd2Ugc2V0IGNvbmZpZ3VyYWJsZTogdHJ1ZSB0byBpbmRpY2F0ZSB0aGVzZVxuICAgICAgICogcHJvcGVydGllcyBjYW4gYmUgY2hhbmdlZC5cbiAgICAgICAqL1xuICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgIH0pO1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBwcm94eU1ldGhvZHMgPSAoQ21wOiBhbnksIG1ldGhvZHM6IHN0cmluZ1tdKSA9PiB7XG4gIGNvbnN0IFByb3RvdHlwZSA9IENtcC5wcm90b3R5cGU7XG4gIG1ldGhvZHMuZm9yRWFjaCgobWV0aG9kTmFtZSkgPT4ge1xuICAgIFByb3RvdHlwZVttZXRob2ROYW1lXSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IGFyZ3MgPSBhcmd1bWVudHM7XG4gICAgICByZXR1cm4gdGhpcy56LnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHRoaXMuZWxbbWV0aG9kTmFtZV0uYXBwbHkodGhpcy5lbCwgYXJncykpO1xuICAgIH07XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHByb3h5T3V0cHV0cyA9IChpbnN0YW5jZTogYW55LCBlbDogYW55LCBldmVudHM6IHN0cmluZ1tdKSA9PiB7XG4gIGV2ZW50cy5mb3JFYWNoKChldmVudE5hbWUpID0+IChpbnN0YW5jZVtldmVudE5hbWVdID0gZnJvbUV2ZW50KGVsLCBldmVudE5hbWUpKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVmaW5lQ3VzdG9tRWxlbWVudCA9ICh0YWdOYW1lOiBzdHJpbmcsIGN1c3RvbUVsZW1lbnQ6IGFueSkgPT4ge1xuICBpZiAoY3VzdG9tRWxlbWVudCAhPT0gdW5kZWZpbmVkICYmIHR5cGVvZiBjdXN0b21FbGVtZW50cyAhPT0gJ3VuZGVmaW5lZCcgJiYgIWN1c3RvbUVsZW1lbnRzLmdldCh0YWdOYW1lKSkge1xuICAgIGN1c3RvbUVsZW1lbnRzLmRlZmluZSh0YWdOYW1lLCBjdXN0b21FbGVtZW50KTtcbiAgfVxufTtcblxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBvbmx5LWFycm93LWZ1bmN0aW9uc1xuZXhwb3J0IGZ1bmN0aW9uIFByb3h5Q21wKG9wdHM6IHsgZGVmaW5lQ3VzdG9tRWxlbWVudEZuPzogKCkgPT4gdm9pZDsgaW5wdXRzPzogYW55OyBtZXRob2RzPzogYW55IH0pIHtcbiAgY29uc3QgZGVjb3JhdG9yID0gZnVuY3Rpb24gKGNsczogYW55KSB7XG4gICAgY29uc3QgeyBkZWZpbmVDdXN0b21FbGVtZW50Rm4sIGlucHV0cywgbWV0aG9kcyB9ID0gb3B0cztcblxuICAgIGlmIChkZWZpbmVDdXN0b21FbGVtZW50Rm4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuKCk7XG4gICAgfVxuXG4gICAgaWYgKGlucHV0cykge1xuICAgICAgcHJveHlJbnB1dHMoY2xzLCBpbnB1dHMpO1xuICAgIH1cbiAgICBpZiAobWV0aG9kcykge1xuICAgICAgcHJveHlNZXRob2RzKGNscywgbWV0aG9kcyk7XG4gICAgfVxuICAgIHJldHVybiBjbHM7XG4gIH07XG4gIHJldHVybiBkZWNvcmF0b3I7XG59XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2025 Siemens AG
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import { Directive, HostListener } from '@angular/core';
|
|
10
|
+
import { ValueAccessor } from './value-accessor';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class BooleanValueAccessorBaseDirective extends ValueAccessor {
|
|
13
|
+
constructor(injector, el) {
|
|
14
|
+
super(injector, el, true);
|
|
15
|
+
}
|
|
16
|
+
writeValue(value) {
|
|
17
|
+
this.elementRef.nativeElement.checked = this.lastValue = value;
|
|
18
|
+
super.mapNgToIxClassNames(this.elementRef);
|
|
19
|
+
}
|
|
20
|
+
handleChangeEvent(el) {
|
|
21
|
+
super.handleValueChange(el, el.checked);
|
|
22
|
+
}
|
|
23
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BooleanValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: BooleanValueAccessorBaseDirective, host: { listeners: { "checkedChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BooleanValueAccessorBaseDirective, decorators: [{
|
|
27
|
+
type: Directive
|
|
28
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleChangeEvent: [{
|
|
29
|
+
type: HostListener,
|
|
30
|
+
args: ['checkedChange', ['$event.target']]
|
|
31
|
+
}] } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9vbGVhbi12YWx1ZS1hY2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2NvbW1vbi9zcmMvZGlyZWN0aXZlcy9jb250cm9sLXZhbHVlLWFjY2Vzc29ycy9ib29sZWFuLXZhbHVlLWFjY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBd0IsTUFBTSxlQUFlLENBQUM7QUFDOUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUdqRCxNQUFNLE9BQU8saUNBQWtDLFNBQVEsYUFBYTtJQUNsRSxZQUFZLFFBQWtCLEVBQUUsRUFBYztRQUM1QyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRVEsVUFBVSxDQUFDLEtBQWM7UUFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQy9ELEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUdELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUMsQ0FBQzsySEFiVSxpQ0FBaUM7K0dBQWpDLGlDQUFpQzs7NEZBQWpDLGlDQUFpQztrQkFEN0MsU0FBUztzR0FZUixpQkFBaUI7c0JBRGhCLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFNQRFgtRmlsZUNvcHlyaWdodFRleHQ6IDIwMjUgU2llbWVucyBBR1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgRWxlbWVudFJlZiwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL3ZhbHVlLWFjY2Vzc29yJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgQm9vbGVhblZhbHVlQWNjZXNzb3JCYXNlRGlyZWN0aXZlIGV4dGVuZHMgVmFsdWVBY2Nlc3NvciB7XG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3RvciwgZWw6IEVsZW1lbnRSZWYpIHtcbiAgICBzdXBlcihpbmplY3RvciwgZWwsIHRydWUpO1xuICB9XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNoZWNrZWQgPSB0aGlzLmxhc3RWYWx1ZSA9IHZhbHVlO1xuICAgIHN1cGVyLm1hcE5nVG9JeENsYXNzTmFtZXModGhpcy5lbGVtZW50UmVmKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NoZWNrZWRDaGFuZ2UnLCBbJyRldmVudC50YXJnZXQnXSlcbiAgaGFuZGxlQ2hhbmdlRXZlbnQoZWw6IGFueSk6IHZvaWQge1xuICAgIHN1cGVyLmhhbmRsZVZhbHVlQ2hhbmdlKGVsLCBlbC5jaGVja2VkKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2025 Siemens AG
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import { Directive, HostListener } from '@angular/core';
|
|
10
|
+
import { ValueAccessor } from './value-accessor';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class DateValueAccessorBaseDirective extends ValueAccessor {
|
|
13
|
+
constructor(injector, el) {
|
|
14
|
+
super(injector, el, true);
|
|
15
|
+
}
|
|
16
|
+
handleInputEvent(el) {
|
|
17
|
+
super.handleValueChange(el, el.value);
|
|
18
|
+
}
|
|
19
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DateValueAccessorBaseDirective, host: { listeners: { "valueChange": "handleInputEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DateValueAccessorBaseDirective, decorators: [{
|
|
23
|
+
type: Directive
|
|
24
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleInputEvent: [{
|
|
25
|
+
type: HostListener,
|
|
26
|
+
args: ['valueChange', ['$event.target']]
|
|
27
|
+
}] } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS12YWx1ZS1hY2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2NvbW1vbi9zcmMvZGlyZWN0aXZlcy9jb250cm9sLXZhbHVlLWFjY2Vzc29ycy9kYXRlLXZhbHVlLWFjY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFFSCxPQUFPLEVBQXdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUdqRCxNQUFNLE9BQU8sOEJBQStCLFNBQVEsYUFBYTtJQUMvRCxZQUFZLFFBQWtCLEVBQUUsRUFBYztRQUM1QyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBR0QsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixLQUFLLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDOzJIQVJVLDhCQUE4QjsrR0FBOUIsOEJBQThCOzs0RkFBOUIsOEJBQThCO2tCQUQxQyxTQUFTO3NHQU9SLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBTUERYLUZpbGVDb3B5cmlnaHRUZXh0OiAyMDI1IFNpZW1lbnMgQUdcbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0b3IsIERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi92YWx1ZS1hY2Nlc3Nvcic7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIERhdGVWYWx1ZUFjY2Vzc29yQmFzZURpcmVjdGl2ZSBleHRlbmRzIFZhbHVlQWNjZXNzb3Ige1xuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IsIGVsOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoaW5qZWN0b3IsIGVsLCB0cnVlKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3ZhbHVlQ2hhbmdlJywgWyckZXZlbnQudGFyZ2V0J10pXG4gIGhhbmRsZUlucHV0RXZlbnQoZWw6IGFueSk6IHZvaWQge1xuICAgIHN1cGVyLmhhbmRsZVZhbHVlQ2hhbmdlKGVsLCBlbC52YWx1ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2025 Siemens AG
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
export * from './boolean-value-accessor';
|
|
10
|
+
export * from './radio-value-accessor';
|
|
11
|
+
export * from './select-value-accessor';
|
|
12
|
+
export * from './text-value-accessor';
|
|
13
|
+
export * from './date-value-accessor';
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb21tb24vc3JjL2RpcmVjdGl2ZXMvY29udHJvbC12YWx1ZS1hY2Nlc3NvcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUVILGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBTUERYLUZpbGVDb3B5cmlnaHRUZXh0OiAyMDI1IFNpZW1lbnMgQUdcbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9ib29sZWFuLXZhbHVlLWFjY2Vzc29yJztcbmV4cG9ydCAqIGZyb20gJy4vcmFkaW8tdmFsdWUtYWNjZXNzb3InO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QtdmFsdWUtYWNjZXNzb3InO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0LXZhbHVlLWFjY2Vzc29yJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS12YWx1ZS1hY2Nlc3Nvcic7XG4iXX0=
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2025 Siemens AG
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import { Directive, HostListener } from '@angular/core';
|
|
10
|
+
import { ValueAccessor } from './value-accessor';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class RadioValueAccessorBaseDirective extends ValueAccessor {
|
|
13
|
+
radioValueChangeSubscription;
|
|
14
|
+
constructor(injector, el) {
|
|
15
|
+
super(injector, el);
|
|
16
|
+
}
|
|
17
|
+
ngAfterViewInit() {
|
|
18
|
+
super.ngAfterViewInit();
|
|
19
|
+
this.handleRadioGroupValueChange();
|
|
20
|
+
}
|
|
21
|
+
handleRadioGroupValueChange() {
|
|
22
|
+
this.radioValueChangeSubscription = this.getAssignedNgControl()?.valueChanges?.subscribe((value) => {
|
|
23
|
+
this.lastValue = value;
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
writeValue(value) {
|
|
27
|
+
this.lastValue = value;
|
|
28
|
+
this.elementRef.nativeElement.checked =
|
|
29
|
+
this.elementRef.nativeElement.value === value;
|
|
30
|
+
super.mapNgToIxClassNames(this.elementRef);
|
|
31
|
+
}
|
|
32
|
+
handleChangeEvent(el) {
|
|
33
|
+
super.handleValueChange(el, el.value);
|
|
34
|
+
}
|
|
35
|
+
ngOnDestroy() {
|
|
36
|
+
super.ngOnDestroy();
|
|
37
|
+
if (this.radioValueChangeSubscription) {
|
|
38
|
+
this.radioValueChangeSubscription.unsubscribe();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
42
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: RadioValueAccessorBaseDirective, host: { listeners: { "checkedChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioValueAccessorBaseDirective, decorators: [{
|
|
45
|
+
type: Directive
|
|
46
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleChangeEvent: [{
|
|
47
|
+
type: HostListener,
|
|
48
|
+
args: ['checkedChange', ['$event.target']]
|
|
49
|
+
}] } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tdmFsdWUtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb21tb24vc3JjL2RpcmVjdGl2ZXMvY29udHJvbC12YWx1ZS1hY2Nlc3NvcnMvcmFkaW8tdmFsdWUtYWNjZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUF3QixNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBSWpELE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxhQUFhO0lBRXhELDRCQUE0QixDQUFnQjtJQUVwRCxZQUFZLFFBQWtCLEVBQUUsRUFBYztRQUM1QyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFUSxlQUFlO1FBQ3RCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU8sMkJBQTJCO1FBQ2pDLElBQUksQ0FBQyw0QkFBNEIsR0FBRyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxZQUFZLEVBQUUsU0FBUyxDQUFDLENBQUMsS0FBYSxFQUFFLEVBQUU7WUFDekcsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsVUFBVSxDQUFDLEtBQWE7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTztZQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDO1FBQ2hELEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUdELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVRLFdBQVc7UUFDbEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDOzJIQXBDVSwrQkFBK0I7K0dBQS9CLCtCQUErQjs7NEZBQS9CLCtCQUErQjtrQkFEM0MsU0FBUztzR0E0QlIsaUJBQWlCO3NCQURoQixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBTUERYLUZpbGVDb3B5cmlnaHRUZXh0OiAyMDI1IFNpZW1lbnMgQUdcbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIEVsZW1lbnRSZWYsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnLi92YWx1ZS1hY2Nlc3Nvcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgUmFkaW9WYWx1ZUFjY2Vzc29yQmFzZURpcmVjdGl2ZSBleHRlbmRzIFZhbHVlQWNjZXNzb3Ige1xuXG4gIHByaXZhdGUgcmFkaW9WYWx1ZUNoYW5nZVN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IsIGVsOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoaW5qZWN0b3IsIGVsKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcbiAgICB0aGlzLmhhbmRsZVJhZGlvR3JvdXBWYWx1ZUNoYW5nZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVSYWRpb0dyb3VwVmFsdWVDaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5yYWRpb1ZhbHVlQ2hhbmdlU3Vic2NyaXB0aW9uID0gdGhpcy5nZXRBc3NpZ25lZE5nQ29udHJvbCgpPy52YWx1ZUNoYW5nZXM/LnN1YnNjcmliZSgodmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMubGFzdFZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA9XG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9PT0gdmFsdWU7XG4gICAgc3VwZXIubWFwTmdUb0l4Q2xhc3NOYW1lcyh0aGlzLmVsZW1lbnRSZWYpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2hlY2tlZENoYW5nZScsIFsnJGV2ZW50LnRhcmdldCddKVxuICBoYW5kbGVDaGFuZ2VFdmVudChlbDogYW55KTogdm9pZCB7XG4gICAgc3VwZXIuaGFuZGxlVmFsdWVDaGFuZ2UoZWwsIGVsLnZhbHVlKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCkge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgaWYgKHRoaXMucmFkaW9WYWx1ZUNoYW5nZVN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5yYWRpb1ZhbHVlQ2hhbmdlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2025 Siemens AG
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import { Directive, HostListener } from '@angular/core';
|
|
10
|
+
import { ValueAccessor } from './value-accessor';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class SelectValueAccessorBaseDirective extends ValueAccessor {
|
|
13
|
+
constructor(injector, el) {
|
|
14
|
+
super(injector, el, true);
|
|
15
|
+
}
|
|
16
|
+
handleChangeEvent(el) {
|
|
17
|
+
super.handleValueChange(el, el.value);
|
|
18
|
+
}
|
|
19
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SelectValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: SelectValueAccessorBaseDirective, host: { listeners: { "valueChange": "handleChangeEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SelectValueAccessorBaseDirective, decorators: [{
|
|
23
|
+
type: Directive
|
|
24
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleChangeEvent: [{
|
|
25
|
+
type: HostListener,
|
|
26
|
+
args: ['valueChange', ['$event.target']]
|
|
27
|
+
}] } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXZhbHVlLWFjY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29tbW9uL3NyYy9kaXJlY3RpdmVzL2NvbnRyb2wtdmFsdWUtYWNjZXNzb3JzL3NlbGVjdC12YWx1ZS1hY2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztHQU9HO0FBRUgsT0FBTyxFQUF3QixTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFHakQsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLGFBQWE7SUFDakUsWUFBWSxRQUFrQixFQUFFLEVBQWM7UUFDNUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUdELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEMsQ0FBQzsySEFSVSxnQ0FBZ0M7K0dBQWhDLGdDQUFnQzs7NEZBQWhDLGdDQUFnQztrQkFENUMsU0FBUztzR0FPUixpQkFBaUI7c0JBRGhCLFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFNQRFgtRmlsZUNvcHlyaWdodFRleHQ6IDIwMjUgU2llbWVucyBBR1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG5pbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RvciwgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL3ZhbHVlLWFjY2Vzc29yJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgU2VsZWN0VmFsdWVBY2Nlc3NvckJhc2VEaXJlY3RpdmUgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yIHtcbiAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yLCBlbDogRWxlbWVudFJlZikge1xuICAgIHN1cGVyKGluamVjdG9yLCBlbCwgdHJ1ZSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd2YWx1ZUNoYW5nZScsIFsnJGV2ZW50LnRhcmdldCddKVxuICBoYW5kbGVDaGFuZ2VFdmVudChlbDogYW55KTogdm9pZCB7XG4gICAgc3VwZXIuaGFuZGxlVmFsdWVDaGFuZ2UoZWwsIGVsLnZhbHVlKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2025 Siemens AG
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import { Directive, HostListener } from '@angular/core';
|
|
10
|
+
import { ValueAccessor } from './value-accessor';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class TextValueAccessorBaseDirective extends ValueAccessor {
|
|
13
|
+
constructor(injector, el) {
|
|
14
|
+
super(injector, el, true);
|
|
15
|
+
}
|
|
16
|
+
handleInputEvent(el) {
|
|
17
|
+
super.handleValueChange(el, el.value);
|
|
18
|
+
}
|
|
19
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TextValueAccessorBaseDirective, deps: [{ token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TextValueAccessorBaseDirective, host: { listeners: { "input": "handleInputEvent($event.target)", "valueChange": "handleInputEvent($event.target)" } }, usesInheritance: true, ngImport: i0 });
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TextValueAccessorBaseDirective, decorators: [{
|
|
23
|
+
type: Directive
|
|
24
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }], propDecorators: { handleInputEvent: [{
|
|
25
|
+
type: HostListener,
|
|
26
|
+
args: ['input', ['$event.target']]
|
|
27
|
+
}, {
|
|
28
|
+
type: HostListener,
|
|
29
|
+
args: ['valueChange', ['$event.target']]
|
|
30
|
+
}] } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC12YWx1ZS1hY2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2NvbW1vbi9zcmMvZGlyZWN0aXZlcy9jb250cm9sLXZhbHVlLWFjY2Vzc29ycy90ZXh0LXZhbHVlLWFjY2Vzc29yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFFSCxPQUFPLEVBQXdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUdqRCxNQUFNLE9BQU8sOEJBQStCLFNBQVEsYUFBYTtJQUMvRCxZQUFZLFFBQWtCLEVBQUUsRUFBYztRQUM1QyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBSUQsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixLQUFLLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDOzJIQVRVLDhCQUE4QjsrR0FBOUIsOEJBQThCOzs0RkFBOUIsOEJBQThCO2tCQUQxQyxTQUFTO3NHQVFSLGdCQUFnQjtzQkFGZixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQzs7c0JBQ3ZDLFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFNQRFgtRmlsZUNvcHlyaWdodFRleHQ6IDIwMjUgU2llbWVucyBBR1xuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG5pbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RvciwgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuL3ZhbHVlLWFjY2Vzc29yJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgVGV4dFZhbHVlQWNjZXNzb3JCYXNlRGlyZWN0aXZlIGV4dGVuZHMgVmFsdWVBY2Nlc3NvciB7XG4gIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3RvciwgZWw6IEVsZW1lbnRSZWYpIHtcbiAgICBzdXBlcihpbmplY3RvciwgZWwsIHRydWUpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignaW5wdXQnLCBbJyRldmVudC50YXJnZXQnXSlcbiAgQEhvc3RMaXN0ZW5lcigndmFsdWVDaGFuZ2UnLCBbJyRldmVudC50YXJnZXQnXSlcbiAgaGFuZGxlSW5wdXRFdmVudChlbDogYW55KTogdm9pZCB7XG4gICAgc3VwZXIuaGFuZGxlVmFsdWVDaGFuZ2UoZWwsIGVsLnZhbHVlKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2025 Siemens AG
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import { Directive, HostListener, Input, } from '@angular/core';
|
|
10
|
+
import { NgControl } from '@angular/forms';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export class ValueAccessor {
|
|
13
|
+
injector;
|
|
14
|
+
elementRef;
|
|
15
|
+
checkRequiredValidator;
|
|
16
|
+
static ANGULAR_CLASS_PREFIX = 'ng-';
|
|
17
|
+
onChange = () => {
|
|
18
|
+
/**/
|
|
19
|
+
};
|
|
20
|
+
onTouched = () => {
|
|
21
|
+
/**/
|
|
22
|
+
};
|
|
23
|
+
lastValue;
|
|
24
|
+
statusChanges;
|
|
25
|
+
suppressClassMapping = false;
|
|
26
|
+
constructor(injector, elementRef, checkRequiredValidator = false) {
|
|
27
|
+
this.injector = injector;
|
|
28
|
+
this.elementRef = elementRef;
|
|
29
|
+
this.checkRequiredValidator = checkRequiredValidator;
|
|
30
|
+
}
|
|
31
|
+
writeValue(value) {
|
|
32
|
+
this.elementRef.nativeElement.value = this.lastValue = value;
|
|
33
|
+
this.setClasses();
|
|
34
|
+
}
|
|
35
|
+
handleValueChange(el, value) {
|
|
36
|
+
if (el === this.elementRef.nativeElement) {
|
|
37
|
+
if (value !== this.lastValue) {
|
|
38
|
+
this.lastValue = value;
|
|
39
|
+
this.onChange(value);
|
|
40
|
+
}
|
|
41
|
+
this.setClasses();
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
_handleBlurEvent(el) {
|
|
45
|
+
if (el === this.elementRef.nativeElement) {
|
|
46
|
+
this.onTouched();
|
|
47
|
+
this.setClasses();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
registerOnChange(fn) {
|
|
51
|
+
this.onChange = fn;
|
|
52
|
+
}
|
|
53
|
+
registerOnTouched(fn) {
|
|
54
|
+
this.onTouched = fn;
|
|
55
|
+
}
|
|
56
|
+
setDisabledState(isDisabled) {
|
|
57
|
+
this.elementRef.nativeElement.disabled = isDisabled;
|
|
58
|
+
}
|
|
59
|
+
ngOnDestroy() {
|
|
60
|
+
if (this.statusChanges) {
|
|
61
|
+
this.statusChanges.unsubscribe();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
ngAfterViewInit() {
|
|
65
|
+
let ngControl = this.getAssignedNgControl();
|
|
66
|
+
if (!ngControl) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (ngControl.statusChanges) {
|
|
70
|
+
this.statusChanges = ngControl.statusChanges.subscribe(() => {
|
|
71
|
+
this.setClasses();
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
this.detourFormControlMethods(ngControl, this.elementRef);
|
|
75
|
+
}
|
|
76
|
+
getAssignedNgControl() {
|
|
77
|
+
let ngControl = null;
|
|
78
|
+
try {
|
|
79
|
+
ngControl = this.injector.get(NgControl);
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
/* No FormControl or ngModel binding */
|
|
83
|
+
}
|
|
84
|
+
return ngControl;
|
|
85
|
+
}
|
|
86
|
+
setClasses() {
|
|
87
|
+
const ngControl = this.getAssignedNgControl();
|
|
88
|
+
if (!ngControl) {
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
this.mapNgToIxClassNames(this.elementRef);
|
|
92
|
+
}
|
|
93
|
+
detourFormControlMethods(ngControl, elementRef) {
|
|
94
|
+
const formControl = ngControl.control;
|
|
95
|
+
if (formControl) {
|
|
96
|
+
const methodsToPatch = [
|
|
97
|
+
'markAsTouched',
|
|
98
|
+
'markAllAsTouched',
|
|
99
|
+
'markAsUntouched',
|
|
100
|
+
'markAsDirty',
|
|
101
|
+
'markAsPristine',
|
|
102
|
+
];
|
|
103
|
+
methodsToPatch.forEach((method) => {
|
|
104
|
+
if (typeof formControl[method] !== 'undefined') {
|
|
105
|
+
const oldFn = formControl[method].bind(formControl);
|
|
106
|
+
formControl[method] = (...params) => {
|
|
107
|
+
oldFn(...params);
|
|
108
|
+
this.mapNgToIxClassNames(elementRef);
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
async mapNgToIxClassNames(element) {
|
|
115
|
+
if (this.suppressClassMapping) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
const input = element.nativeElement;
|
|
119
|
+
setTimeout(async () => {
|
|
120
|
+
const classes = this.getClasses(input);
|
|
121
|
+
const classList = input.classList;
|
|
122
|
+
classList.remove('ix-valid', 'ix-invalid', 'ix-touched', 'ix-untouched', 'ix-dirty', 'ix-pristine');
|
|
123
|
+
classList.add(...classes);
|
|
124
|
+
const ngControl = this.getAssignedNgControl();
|
|
125
|
+
if (ngControl && this.checkRequiredValidator) {
|
|
126
|
+
const { errors, touched } = ngControl;
|
|
127
|
+
const hasOtherErrors = errors && Object.keys(errors).length > 1;
|
|
128
|
+
const isRequiredButUntouched = errors?.required && !touched;
|
|
129
|
+
if (hasOtherErrors === false && isRequiredButUntouched) {
|
|
130
|
+
input.classList.remove('ix-invalid');
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
getClasses(element) {
|
|
136
|
+
const classList = element.classList;
|
|
137
|
+
const classes = [];
|
|
138
|
+
for (let i = 0; i < classList.length; i++) {
|
|
139
|
+
const item = classList.item(i);
|
|
140
|
+
if (item?.startsWith(ValueAccessor.ANGULAR_CLASS_PREFIX)) {
|
|
141
|
+
classes.push(`ix-${item.substring(3)}`);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
return classes;
|
|
145
|
+
}
|
|
146
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ValueAccessor, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive });
|
|
147
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ValueAccessor, inputs: { suppressClassMapping: "suppressClassMapping" }, host: { listeners: { "ixBlur": "_handleBlurEvent($event.target)" } }, ngImport: i0 });
|
|
148
|
+
}
|
|
149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ValueAccessor, decorators: [{
|
|
150
|
+
type: Directive
|
|
151
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }, { type: undefined }], propDecorators: { suppressClassMapping: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], _handleBlurEvent: [{
|
|
154
|
+
type: HostListener,
|
|
155
|
+
args: ['ixBlur', ['$event.target']]
|
|
156
|
+
}] } });
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb21tb24vc3JjL2RpcmVjdGl2ZXMvY29udHJvbC12YWx1ZS1hY2Nlc3NvcnMvdmFsdWUtYWNjZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUVILE9BQU8sRUFLTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUlqRSxNQUFNLE9BQU8sYUFBYTtJQWlCWjtJQUNBO0lBQ087SUFoQlosTUFBTSxDQUFVLG9CQUFvQixHQUFHLEtBQUssQ0FBQztJQUU1QyxRQUFRLEdBQXlCLEdBQUcsRUFBRTtRQUM1QyxJQUFJO0lBQ04sQ0FBQyxDQUFDO0lBQ00sU0FBUyxHQUFlLEdBQUcsRUFBRTtRQUNuQyxJQUFJO0lBQ04sQ0FBQyxDQUFDO0lBQ1EsU0FBUyxDQUFNO0lBQ2pCLGFBQWEsQ0FBZ0I7SUFFNUIsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0lBRXRDLFlBQ1ksUUFBa0IsRUFDbEIsVUFBc0IsRUFDZix5QkFBeUIsS0FBSztRQUZyQyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDZiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQVE7SUFDOUMsQ0FBQztJQUVKLFVBQVUsQ0FBQyxLQUFVO1FBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUM3RCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQWUsRUFBRSxLQUFVO1FBQzNDLElBQUksRUFBRSxLQUFLLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUM7WUFD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QixFQUFFLENBQUM7b0JBQ3ZELEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUN2QyxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFvQjtRQUM3QixNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ3BDLE1BQU0sT0FBTyxHQUFhLEVBQUUsQ0FBQztRQUM3QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzFDLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0IsSUFBSSxJQUFJLEVBQUUsVUFBVSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUM7Z0JBQ3pELE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUMxQyxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7MkhBcEtVLGFBQWE7K0dBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFEekIsU0FBUzsySEFlQyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBd0JOLGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFFBQVEsRUFBRSxDQUFDLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBTUERYLUZpbGVDb3B5cmlnaHRUZXh0OiAyMDI1IFNpZW1lbnMgQUdcbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4gKlxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKi9cblxuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0b3IsXG4gIE9uRGVzdHJveSxcbiAgRGlyZWN0aXZlLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgVmFsdWVBY2Nlc3NvclxuICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcbntcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBBTkdVTEFSX0NMQVNTX1BSRUZJWCA9ICduZy0nO1xuXG4gIHByaXZhdGUgb25DaGFuZ2U6ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge1xuICAgIC8qKi9cbiAgfTtcbiAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7XG4gICAgLyoqL1xuICB9O1xuICBwcm90ZWN0ZWQgbGFzdFZhbHVlOiBhbnk7XG4gIHByaXZhdGUgc3RhdHVzQ2hhbmdlcz86IFN1YnNjcmlwdGlvbjtcblxuICBASW5wdXQoKSBzdXBwcmVzc0NsYXNzTWFwcGluZyA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJvdGVjdGVkIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGVja1JlcXVpcmVkVmFsaWRhdG9yID0gZmFsc2VcbiAgKSB7fVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLnNldENsYXNzZXMoKTtcbiAgfVxuXG4gIGhhbmRsZVZhbHVlQ2hhbmdlKGVsOiBIVE1MRWxlbWVudCwgdmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGlmIChlbCA9PT0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5sYXN0VmFsdWUpIHtcbiAgICAgICAgdGhpcy5sYXN0VmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICB9XG4gICAgICB0aGlzLnNldENsYXNzZXMoKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdpeEJsdXInLCBbJyRldmVudC50YXJnZXQnXSlcbiAgX2hhbmRsZUJsdXJFdmVudChlbDogYW55KTogdm9pZCB7XG4gICAgaWYgKGVsID09PSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIHRoaXMuc2V0Q2xhc3NlcygpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdHVzQ2hhbmdlcykge1xuICAgICAgdGhpcy5zdGF0dXNDaGFuZ2VzLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGxldCBuZ0NvbnRyb2wgPSB0aGlzLmdldEFzc2lnbmVkTmdDb250cm9sKCk7XG5cbiAgICBpZiAoIW5nQ29udHJvbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChuZ0NvbnRyb2wuc3RhdHVzQ2hhbmdlcykge1xuICAgICAgdGhpcy5zdGF0dXNDaGFuZ2VzID0gbmdDb250cm9sLnN0YXR1c0NoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5zZXRDbGFzc2VzKCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLmRldG91ckZvcm1Db250cm9sTWV0aG9kcyhuZ0NvbnRyb2wsIHRoaXMuZWxlbWVudFJlZik7XG4gIH1cblxuICBnZXRBc3NpZ25lZE5nQ29udHJvbCgpOiBOZ0NvbnRyb2wgfCBudWxsIHtcbiAgICBsZXQgbmdDb250cm9sOiBOZ0NvbnRyb2wgfCBudWxsID0gbnVsbDtcbiAgICB0cnkge1xuICAgICAgbmdDb250cm9sID0gdGhpcy5pbmplY3Rvci5nZXQ8TmdDb250cm9sPihOZ0NvbnRyb2wpO1xuICAgIH0gY2F0Y2gge1xuICAgICAgLyogTm8gRm9ybUNvbnRyb2wgb3IgbmdNb2RlbCBiaW5kaW5nICovXG4gICAgfVxuXG4gICAgcmV0dXJuIG5nQ29udHJvbDtcbiAgfVxuXG4gIHNldENsYXNzZXMoKSB7XG4gICAgY29uc3QgbmdDb250cm9sID0gdGhpcy5nZXRBc3NpZ25lZE5nQ29udHJvbCgpO1xuICAgIGlmICghbmdDb250cm9sKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMubWFwTmdUb0l4Q2xhc3NOYW1lcyh0aGlzLmVsZW1lbnRSZWYpO1xuICB9XG5cbiAgZGV0b3VyRm9ybUNvbnRyb2xNZXRob2RzKG5nQ29udHJvbDogTmdDb250cm9sLCBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgY29uc3QgZm9ybUNvbnRyb2wgPSBuZ0NvbnRyb2wuY29udHJvbDtcbiAgICBpZiAoZm9ybUNvbnRyb2wpIHtcbiAgICAgIGNvbnN0IG1ldGhvZHNUb1BhdGNoID0gW1xuICAgICAgICAnbWFya0FzVG91Y2hlZCcsXG4gICAgICAgICdtYXJrQWxsQXNUb3VjaGVkJyxcbiAgICAgICAgJ21hcmtBc1VudG91Y2hlZCcsXG4gICAgICAgICdtYXJrQXNEaXJ0eScsXG4gICAgICAgICdtYXJrQXNQcmlzdGluZScsXG4gICAgICBdIGFzIGNvbnN0O1xuICAgICAgbWV0aG9kc1RvUGF0Y2guZm9yRWFjaCgobWV0aG9kKSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgZm9ybUNvbnRyb2xbbWV0aG9kXSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICBjb25zdCBvbGRGbiA9IGZvcm1Db250cm9sW21ldGhvZF0uYmluZChmb3JtQ29udHJvbCk7XG4gICAgICAgICAgZm9ybUNvbnRyb2xbbWV0aG9kXSA9ICguLi5wYXJhbXM6IGFueVtdKSA9PiB7XG4gICAgICAgICAgICBvbGRGbiguLi5wYXJhbXMpO1xuICAgICAgICAgICAgdGhpcy5tYXBOZ1RvSXhDbGFzc05hbWVzKGVsZW1lbnRSZWYpO1xuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIG1hcE5nVG9JeENsYXNzTmFtZXMoZWxlbWVudDogRWxlbWVudFJlZik6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLnN1cHByZXNzQ2xhc3NNYXBwaW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGlucHV0ID0gZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuXG4gICAgc2V0VGltZW91dChhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBjbGFzc2VzID0gdGhpcy5nZXRDbGFzc2VzKGlucHV0KTtcblxuICAgICAgY29uc3QgY2xhc3NMaXN0ID0gaW5wdXQuY2xhc3NMaXN0O1xuICAgICAgY2xhc3NMaXN0LnJlbW92ZShcbiAgICAgICAgJ2l4LXZhbGlkJyxcbiAgICAgICAgJ2l4LWludmFsaWQnLFxuICAgICAgICAnaXgtdG91Y2hlZCcsXG4gICAgICAgICdpeC11bnRvdWNoZWQnLFxuICAgICAgICAnaXgtZGlydHknLFxuICAgICAgICAnaXgtcHJpc3RpbmUnXG4gICAgICApO1xuICAgICAgY2xhc3NMaXN0LmFkZCguLi5jbGFzc2VzKTtcblxuICAgICAgY29uc3QgbmdDb250cm9sID0gdGhpcy5nZXRBc3NpZ25lZE5nQ29udHJvbCgpO1xuICAgICAgaWYgKG5nQ29udHJvbCAmJiB0aGlzLmNoZWNrUmVxdWlyZWRWYWxpZGF0b3IpIHtcbiAgICAgICAgY29uc3QgeyBlcnJvcnMsIHRvdWNoZWQgfSA9IG5nQ29udHJvbDtcblxuICAgICAgICBjb25zdCBoYXNPdGhlckVycm9ycyA9IGVycm9ycyAmJiBPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA+IDE7XG4gICAgICAgIGNvbnN0IGlzUmVxdWlyZWRCdXRVbnRvdWNoZWQgPSBlcnJvcnM/LnJlcXVpcmVkICYmICF0b3VjaGVkO1xuXG4gICAgICAgIGlmIChoYXNPdGhlckVycm9ycyA9PT0gZmFsc2UgJiYgaXNSZXF1aXJlZEJ1dFVudG91Y2hlZCkge1xuICAgICAgICAgIGlucHV0LmNsYXNzTGlzdC5yZW1vdmUoJ2l4LWludmFsaWQnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0Q2xhc3NlcyhlbGVtZW50OiBIVE1MRWxlbWVudCkge1xuICAgIGNvbnN0IGNsYXNzTGlzdCA9IGVsZW1lbnQuY2xhc3NMaXN0O1xuICAgIGNvbnN0IGNsYXNzZXM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjbGFzc0xpc3QubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGl0ZW0gPSBjbGFzc0xpc3QuaXRlbShpKTtcbiAgICAgIGlmIChpdGVtPy5zdGFydHNXaXRoKFZhbHVlQWNjZXNzb3IuQU5HVUxBUl9DTEFTU19QUkVGSVgpKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaChgaXgtJHtpdGVtLnN1YnN0cmluZygzKX1gKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNsYXNzZXM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SPDX-FileCopyrightText: 2024 Siemens AG
|
|
3
|
+
*
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
5
|
+
*
|
|
6
|
+
* This source code is licensed under the MIT license found in the
|
|
7
|
+
* LICENSE file in the root directory of this source tree.
|
|
8
|
+
*/
|
|
9
|
+
import { Directive, Input } from '@angular/core';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class DropdownTriggerBaseDirective {
|
|
12
|
+
element;
|
|
13
|
+
ixDropdownTrigger;
|
|
14
|
+
constructor(element) {
|
|
15
|
+
this.element = element;
|
|
16
|
+
}
|
|
17
|
+
ngOnChanges() {
|
|
18
|
+
this.element.nativeElement.trigger = this.ixDropdownTrigger.el;
|
|
19
|
+
}
|
|
20
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DropdownTriggerBaseDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
21
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DropdownTriggerBaseDirective, inputs: { ixDropdownTrigger: "ixDropdownTrigger" }, usesOnChanges: true, ngImport: i0 });
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DropdownTriggerBaseDirective, decorators: [{
|
|
24
|
+
type: Directive
|
|
25
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { ixDropdownTrigger: [{
|
|
26
|
+
type: Input
|
|
27
|
+
}] } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tdHJpZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvbW1vbi9zcmMvZGlyZWN0aXZlcy9kcm9wZG93bi10cmlnZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHN0QsTUFBTSxPQUFPLDRCQUE0QjtJQUdWO0lBRnBCLGlCQUFpQixDQUFPO0lBRWpDLFlBQTZCLE9BQW1CO1FBQW5CLFlBQU8sR0FBUCxPQUFPLENBQVk7SUFBRyxDQUFDO0lBRTFDLFdBQVc7UUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7SUFDakUsQ0FBQzsySEFQVSw0QkFBNEI7K0dBQTVCLDRCQUE0Qjs7NEZBQTVCLDRCQUE0QjtrQkFEeEMsU0FBUzsrRUFFQyxpQkFBaUI7c0JBQXpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogU1BEWC1GaWxlQ29weXJpZ2h0VGV4dDogMjAyNCBTaWVtZW5zIEFHXG4gKlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIGZvdW5kIGluIHRoZVxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLlxuICovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duVHJpZ2dlckJhc2VEaXJlY3RpdmUge1xuICBASW5wdXQoKSBpeERyb3Bkb3duVHJpZ2dlciE6IGFueTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnQ6IEVsZW1lbnRSZWYpIHt9XG5cbiAgcHJvdGVjdGVkIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnRyaWdnZXIgPSB0aGlzLml4RHJvcGRvd25UcmlnZ2VyLmVsO1xuICB9XG59XG4iXX0=
|