@wemake4u/form-player-se 1.0.23 → 1.0.25
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/esm2022/lib/components/actionsCellRenderer/actionsCellRenderer.component.mjs +69 -0
- package/esm2022/lib/components/deleteRowRenderer/deleteRowRenderer.component.mjs +25 -0
- package/esm2022/lib/components/hostCellRenderer/hostCellRenderer.component.mjs +101 -0
- package/esm2022/lib/components/objectURLRenderer/objectURLRenderer.component.mjs +27 -0
- package/esm2022/lib/components/setFilter/setFilter.component.mjs +111 -0
- package/esm2022/lib/dialog/dialog.component.mjs +15 -7
- package/esm2022/lib/directives/collapse.directive.mjs +20 -12
- package/esm2022/lib/directives/date.directive.mjs +2 -2
- package/esm2022/lib/directives/dialog.directive.mjs +2 -1
- package/esm2022/lib/directives/dropdown.directive.mjs +23 -5
- package/esm2022/lib/directives/formIndex.directive.mjs +25 -0
- package/esm2022/lib/directives/grid.directive.mjs +94 -17
- package/esm2022/lib/directives/readonly.directive.mjs +101 -0
- package/esm2022/lib/directives/updateblur.directive.mjs +10 -3
- package/esm2022/lib/dynamic-fields/dynamic-fields.component.mjs +64 -26
- package/esm2022/lib/dynamic-form/dynamic-form.component.mjs +96 -95
- package/esm2022/lib/dynamic-host/dynamic-host.component.mjs +121 -0
- package/esm2022/lib/locale/locale-de.mjs +3 -2
- package/esm2022/lib/locale/locale-en.mjs +3 -2
- package/esm2022/lib/locale/locale-es.mjs +3 -2
- package/esm2022/lib/locale/locale-fr.mjs +3 -2
- package/esm2022/lib/locale/locale-it.mjs +3 -2
- package/esm2022/lib/locale/locale-pt.mjs +3 -2
- package/esm2022/lib/services/chart.service.mjs +62 -56
- package/esm2022/lib/services/dialog.service.mjs +1 -1
- package/esm2022/lib/services/feel.service.mjs +186 -19
- package/esm2022/lib/services/form.service.mjs +360 -0
- package/esm2022/lib/services/formatter.service.mjs +68 -54
- package/esm2022/lib/services/function.service.mjs +9 -5
- package/esm2022/lib/services/global.service.mjs +42 -0
- package/esm2022/lib/services/grid.service.mjs +189 -53
- package/esm2022/lib/services/metadata.service.mjs +1 -8
- package/esm2022/lib/services/programmability.service.mjs +338 -64
- package/esm2022/lib/services/weak.service.mjs +3 -5
- package/esm2022/lib/utils/feelable.mjs +28 -0
- package/esm2022/lib/utils/groupByRow.mjs +3 -1
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/wemake4u-form-player-se.mjs +1896 -577
- package/fesm2022/wemake4u-form-player-se.mjs.map +1 -1
- package/lib/components/actionsCellRenderer/actionsCellRenderer.component.d.ts +18 -0
- package/lib/components/deleteRowRenderer/deleteRowRenderer.component.d.ts +49 -0
- package/lib/components/hostCellRenderer/hostCellRenderer.component.d.ts +29 -0
- package/lib/components/objectURLRenderer/objectURLRenderer.component.d.ts +50 -0
- package/lib/{utils/setFilter.d.ts → components/setFilter/setFilter.component.d.ts} +1 -0
- package/lib/dialog/dialog.component.d.ts +11 -0
- package/lib/directives/collapse.directive.d.ts +7 -4
- package/lib/directives/dropdown.directive.d.ts +4 -0
- package/lib/directives/formIndex.directive.d.ts +10 -0
- package/lib/directives/grid.directive.d.ts +21 -4
- package/lib/directives/readonly.directive.d.ts +28 -0
- package/lib/dynamic-fields/dynamic-fields.component.d.ts +28 -4
- package/lib/dynamic-form/dynamic-form.component.d.ts +20 -10
- package/lib/dynamic-host/dynamic-host.component.d.ts +27 -0
- package/lib/locale/locale-de.d.ts +1 -0
- package/lib/locale/locale-en.d.ts +1 -0
- package/lib/locale/locale-es.d.ts +1 -0
- package/lib/locale/locale-fr.d.ts +1 -0
- package/lib/locale/locale-it.d.ts +1 -0
- package/lib/locale/locale-pt.d.ts +1 -0
- package/lib/locale/locale.d.ts +7 -0
- package/lib/services/chart.service.d.ts +5 -2
- package/lib/services/dialog.service.d.ts +0 -1
- package/lib/services/feel.service.d.ts +8 -0
- package/lib/services/form.service.d.ts +51 -0
- package/lib/services/formatter.service.d.ts +8 -6
- package/lib/services/function.service.d.ts +1 -1
- package/lib/services/global.service.d.ts +16 -0
- package/lib/services/grid.service.d.ts +16 -4
- package/lib/services/metadata.service.d.ts +0 -3
- package/lib/services/programmability.service.d.ts +33 -5
- package/lib/utils/feelable.d.ts +2 -0
- package/lib/utils/groupByRow.d.ts +2 -0
- package/package.json +2 -2
- package/public-api.d.ts +1 -0
- package/esm2022/lib/directives/disable.directive.mjs +0 -71
- package/esm2022/lib/directives/disableform.directive.mjs +0 -42
- package/esm2022/lib/utils/gridCells.mjs +0 -108
- package/esm2022/lib/utils/patchForm.mjs +0 -75
- package/esm2022/lib/utils/setFilter.mjs +0 -111
- package/lib/directives/disable.directive.d.ts +0 -20
- package/lib/directives/disableform.directive.d.ts +0 -17
- package/lib/utils/gridCells.d.ts +0 -110
- package/lib/utils/patchForm.d.ts +0 -9
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/forms";
|
|
4
|
+
import * as i2 from "../services/global.service";
|
|
5
|
+
export class ReadOnlyDirective {
|
|
6
|
+
ngControl;
|
|
7
|
+
global;
|
|
8
|
+
el;
|
|
9
|
+
renderer;
|
|
10
|
+
readonly = null;
|
|
11
|
+
placeholder = null;
|
|
12
|
+
componentRef;
|
|
13
|
+
properties;
|
|
14
|
+
constructor(ngControl, global, el, renderer) {
|
|
15
|
+
this.ngControl = ngControl;
|
|
16
|
+
this.global = global;
|
|
17
|
+
this.el = el;
|
|
18
|
+
this.renderer = renderer;
|
|
19
|
+
}
|
|
20
|
+
disableClass = "is-disabled";
|
|
21
|
+
readonlyClass = "is-readonly";
|
|
22
|
+
lightReadonlyClass = "light-readonly";
|
|
23
|
+
sub;
|
|
24
|
+
ngOnInit() {
|
|
25
|
+
const control = this.ngControl.control;
|
|
26
|
+
if (control) {
|
|
27
|
+
this.sub = control.statusChanges.subscribe(_ => {
|
|
28
|
+
this.apply();
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
ngOnDestroy() {
|
|
33
|
+
this.sub?.unsubscribe();
|
|
34
|
+
}
|
|
35
|
+
ngOnChanges(changes) {
|
|
36
|
+
if (changes["readonly"]) {
|
|
37
|
+
this.apply();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
apply() {
|
|
41
|
+
const control = this.ngControl.control;
|
|
42
|
+
if (!control)
|
|
43
|
+
return;
|
|
44
|
+
if (control.disabled) {
|
|
45
|
+
this.toggleClass(true, this.disableClass);
|
|
46
|
+
this.overridePlaceholder(false);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
this.toggleClass(false, this.disableClass);
|
|
50
|
+
const readonly = this.readonly === true;
|
|
51
|
+
this.ngControl.valueAccessor?.setDisabledState(readonly);
|
|
52
|
+
if (this.useLightReadonly()) {
|
|
53
|
+
this.toggleClass(readonly, this.lightReadonlyClass);
|
|
54
|
+
this.overridePlaceholder(readonly);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
this.toggleClass(readonly, this.readonlyClass);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
toggleClass(value, className) {
|
|
62
|
+
if (value) {
|
|
63
|
+
this.renderer.addClass(this.el.nativeElement, className);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
this.renderer.removeClass(this.el.nativeElement, className);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
overridePlaceholder(value) {
|
|
70
|
+
if ('placeholder' in this.componentRef) {
|
|
71
|
+
this.componentRef.placeholder = value
|
|
72
|
+
? "-"
|
|
73
|
+
: this.placeholder;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
useLightReadonly() {
|
|
77
|
+
const value = this.properties?.useLightReadonly
|
|
78
|
+
|| this.global.getProperty("useLightReadonly", "yes");
|
|
79
|
+
if (value !== "yes" && value !== "no")
|
|
80
|
+
return true;
|
|
81
|
+
return (value === "yes");
|
|
82
|
+
}
|
|
83
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReadOnlyDirective, deps: [{ token: i1.NgControl }, { token: i2.GlobalService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
84
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ReadOnlyDirective, isStandalone: true, selector: "[readonly]", inputs: { readonly: "readonly", placeholder: "placeholder", componentRef: "componentRef", properties: "properties" }, usesOnChanges: true, ngImport: i0 });
|
|
85
|
+
}
|
|
86
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReadOnlyDirective, decorators: [{
|
|
87
|
+
type: Directive,
|
|
88
|
+
args: [{
|
|
89
|
+
selector: '[readonly]',
|
|
90
|
+
standalone: true
|
|
91
|
+
}]
|
|
92
|
+
}], ctorParameters: () => [{ type: i1.NgControl }, { type: i2.GlobalService }, { type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { readonly: [{
|
|
93
|
+
type: Input
|
|
94
|
+
}], placeholder: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], componentRef: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], properties: [{
|
|
99
|
+
type: Input
|
|
100
|
+
}] } });
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZG9ubHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvZGlyZWN0aXZlcy9yZWFkb25seS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW1ELE1BQU0sZUFBZSxDQUFDOzs7O0FBU2xHLE1BQU0sT0FBTyxpQkFBaUI7SUFNUjtJQUNSO0lBQ0E7SUFDQTtJQVJILFFBQVEsR0FBbUIsSUFBSSxDQUFDO0lBQ2hDLFdBQVcsR0FBa0IsSUFBSSxDQUFDO0lBQ2xDLFlBQVksQ0FBTTtJQUNsQixVQUFVLENBQU07SUFFekIsWUFBb0IsU0FBb0IsRUFDNUIsTUFBcUIsRUFDckIsRUFBYyxFQUNkLFFBQW1CO1FBSFgsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUM1QixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQ3JCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQy9CLENBQUM7SUFFTyxZQUFZLEdBQVcsYUFBYSxDQUFDO0lBQ3JDLGFBQWEsR0FBVyxhQUFhLENBQUM7SUFDdEMsa0JBQWtCLEdBQVcsZ0JBQWdCLENBQUM7SUFFOUMsR0FBRyxDQUFnQjtJQUUzQixRQUFRO1FBQ04sTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7UUFDdkMsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQzdDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7SUFFTyxLQUFLO1FBQ1gsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7UUFDdkMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQ3JCLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUMxQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDM0MsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUM7WUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFxQixFQUFFLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2xFLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7Z0JBQ3BELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNyQyxDQUFDO2lCQUNJLENBQUM7Z0JBQ0osSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ2pELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVPLFdBQVcsQ0FBQyxLQUFjLEVBQUUsU0FBaUI7UUFDbkQsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQzNELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDOUQsQ0FBQztJQUNILENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxLQUFjO1FBQ3hDLElBQUksYUFBYSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsR0FBRyxLQUFLO2dCQUNuQyxDQUFDLENBQUMsR0FBRztnQkFDTCxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLGdCQUFnQjtlQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN4RCxJQUFJLEtBQUssS0FBSyxLQUFLLElBQUksS0FBSyxLQUFLLElBQUk7WUFDbkMsT0FBTyxJQUFJLENBQUM7UUFDZCxPQUFPLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7d0dBL0VVLGlCQUFpQjs0RkFBakIsaUJBQWlCOzs0RkFBakIsaUJBQWlCO2tCQUo3QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7MkpBRVUsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgRWxlbWVudFJlZiwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEdsb2JhbFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9nbG9iYWwuc2VydmljZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tyZWFkb25seV0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlYWRPbmx5RGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSByZWFkb25seTogYm9vbGVhbiB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBjb21wb25lbnRSZWY6IGFueTtcclxuICBASW5wdXQoKSBwcm9wZXJ0aWVzOiBhbnk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmdDb250cm9sOiBOZ0NvbnRyb2xcclxuICAgICwgcHJpdmF0ZSBnbG9iYWw6IEdsb2JhbFNlcnZpY2VcclxuICAgICwgcHJpdmF0ZSBlbDogRWxlbWVudFJlZlxyXG4gICAgLCBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZGlzYWJsZUNsYXNzOiBzdHJpbmcgPSBcImlzLWRpc2FibGVkXCI7XHJcbiAgcHJpdmF0ZSByZWFkb25seUNsYXNzOiBzdHJpbmcgPSBcImlzLXJlYWRvbmx5XCI7XHJcbiAgcHJpdmF0ZSBsaWdodFJlYWRvbmx5Q2xhc3M6IHN0cmluZyA9IFwibGlnaHQtcmVhZG9ubHlcIjtcclxuXHJcbiAgcHJpdmF0ZSBzdWI/OiBTdWJzY3JpcHRpb247XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMubmdDb250cm9sLmNvbnRyb2w7XHJcbiAgICBpZiAoY29udHJvbCkge1xyXG4gICAgICB0aGlzLnN1YiA9IGNvbnRyb2wuc3RhdHVzQ2hhbmdlcy5zdWJzY3JpYmUoXyA9PiB7XHJcbiAgICAgICAgdGhpcy5hcHBseSgpOyAgICAgICAgXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnN1Yj8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzW1wicmVhZG9ubHlcIl0pIHtcclxuICAgICAgdGhpcy5hcHBseSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhcHBseSgpIHtcclxuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLm5nQ29udHJvbC5jb250cm9sO1xyXG4gICAgaWYgKCFjb250cm9sKSByZXR1cm47XHJcbiAgICBpZiAoY29udHJvbC5kaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLnRvZ2dsZUNsYXNzKHRydWUsIHRoaXMuZGlzYWJsZUNsYXNzKTtcclxuICAgICAgdGhpcy5vdmVycmlkZVBsYWNlaG9sZGVyKGZhbHNlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudG9nZ2xlQ2xhc3MoZmFsc2UsIHRoaXMuZGlzYWJsZUNsYXNzKTtcclxuICAgICAgY29uc3QgcmVhZG9ubHkgPSB0aGlzLnJlYWRvbmx5ID09PSB0cnVlO1xyXG4gICAgICAodGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciBhcyBhbnkpPy5zZXREaXNhYmxlZFN0YXRlKHJlYWRvbmx5KTtcclxuICAgICAgaWYgKHRoaXMudXNlTGlnaHRSZWFkb25seSgpKSB7XHJcbiAgICAgICAgdGhpcy50b2dnbGVDbGFzcyhyZWFkb25seSwgdGhpcy5saWdodFJlYWRvbmx5Q2xhc3MpO1xyXG4gICAgICAgIHRoaXMub3ZlcnJpZGVQbGFjZWhvbGRlcihyZWFkb25seSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgdGhpcy50b2dnbGVDbGFzcyhyZWFkb25seSwgdGhpcy5yZWFkb25seUNsYXNzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB0b2dnbGVDbGFzcyh2YWx1ZTogYm9vbGVhbiwgY2xhc3NOYW1lOiBzdHJpbmcpIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgY2xhc3NOYW1lKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5lbC5uYXRpdmVFbGVtZW50LCBjbGFzc05hbWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvdmVycmlkZVBsYWNlaG9sZGVyKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICBpZiAoJ3BsYWNlaG9sZGVyJyBpbiB0aGlzLmNvbXBvbmVudFJlZikge1xyXG4gICAgICB0aGlzLmNvbXBvbmVudFJlZi5wbGFjZWhvbGRlciA9IHZhbHVlXHJcbiAgICAgICAgPyBcIi1cIlxyXG4gICAgICAgIDogdGhpcy5wbGFjZWhvbGRlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXNlTGlnaHRSZWFkb25seSgpIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5wcm9wZXJ0aWVzPy51c2VMaWdodFJlYWRvbmx5XHJcbiAgICAgIHx8IHRoaXMuZ2xvYmFsLmdldFByb3BlcnR5KFwidXNlTGlnaHRSZWFkb25seVwiLCBcInllc1wiKTtcclxuICAgIGlmICh2YWx1ZSAhPT0gXCJ5ZXNcIiAmJiB2YWx1ZSAhPT0gXCJub1wiKVxyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIHJldHVybiAodmFsdWUgPT09IFwieWVzXCIpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -9,11 +9,18 @@ export class UpdateBlurDirective {
|
|
|
9
9
|
ngAfterViewInit() {
|
|
10
10
|
if (this.sirioInput?.control?.updateOn === 'blur') {
|
|
11
11
|
const writeValue = this.sirioInput.writeValue;
|
|
12
|
+
let changed = false;
|
|
12
13
|
this.sirioInput.writeValue = function (value, event = false) {
|
|
13
|
-
|
|
14
|
+
if (this.value !== value) {
|
|
15
|
+
changed = true;
|
|
16
|
+
writeValue.bind(this)(value, false);
|
|
17
|
+
}
|
|
14
18
|
};
|
|
15
19
|
this.sirioInput.onBlur = function (event) {
|
|
16
|
-
|
|
20
|
+
if (changed) {
|
|
21
|
+
changed = false;
|
|
22
|
+
writeValue.bind(this)(this.value, true);
|
|
23
|
+
}
|
|
17
24
|
};
|
|
18
25
|
}
|
|
19
26
|
}
|
|
@@ -29,4 +36,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
29
36
|
}], ctorParameters: () => [{ type: i1.SirioInputComponent, decorators: [{
|
|
30
37
|
type: Host
|
|
31
38
|
}] }] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlYmx1ci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9kaXJlY3RpdmVzL3VwZGF0ZWJsdXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWlCLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTy9ELE1BQU0sT0FBTyxtQkFBbUI7SUFFRjtJQUE1QixZQUE0QixVQUErQjtRQUEvQixlQUFVLEdBQVYsVUFBVSxDQUFxQjtJQUFJLENBQUM7SUFFaEUsZUFBZTtRQUViLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsUUFBUSxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBRWxELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDO1lBRTlDLElBQUksT0FBTyxHQUFHLEtBQUssQ0FBQztZQUVwQixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsR0FBRyxVQUFVLEtBQVUsRUFBRSxLQUFLLEdBQUcsS0FBSztnQkFDOUQsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLEtBQUssRUFBRSxDQUFDO29CQUN6QixPQUFPLEdBQUcsSUFBSSxDQUFDO29CQUNmLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUN0QyxDQUFDO1lBQ0gsQ0FBQyxDQUFDO1lBRUYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsVUFBVSxLQUFVO2dCQUMzQyxJQUFJLE9BQU8sRUFBRSxDQUFDO29CQUNaLE9BQU8sR0FBRyxLQUFLLENBQUM7b0JBQ2hCLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDMUMsQ0FBQztZQUNILENBQUMsQ0FBQTtRQUNILENBQUM7SUFDSCxDQUFDO3dHQTFCVSxtQkFBbUI7NEZBQW5CLG1CQUFtQjs7NEZBQW5CLG1CQUFtQjtrQkFKL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzswQkFHYyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBBZnRlclZpZXdJbml0LCBIb3N0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpcmlvSW5wdXRDb21wb25lbnQgfSBmcm9tICduZ3gtc2lyaW8tbGliJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3VwZGF0ZUJsdXJdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVcGRhdGVCbHVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBIb3N0KCkgcHJpdmF0ZSBzaXJpb0lucHV0OiBTaXJpb0lucHV0Q29tcG9uZW50KSB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0aGlzLnNpcmlvSW5wdXQ/LmNvbnRyb2w/LnVwZGF0ZU9uID09PSAnYmx1cicpIHtcclxuXHJcbiAgICAgIGNvbnN0IHdyaXRlVmFsdWUgPSB0aGlzLnNpcmlvSW5wdXQud3JpdGVWYWx1ZTtcclxuXHJcbiAgICAgIGxldCBjaGFuZ2VkID0gZmFsc2U7XHJcbiAgICAgIFxyXG4gICAgICB0aGlzLnNpcmlvSW5wdXQud3JpdGVWYWx1ZSA9IGZ1bmN0aW9uICh2YWx1ZTogYW55LCBldmVudCA9IGZhbHNlKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudmFsdWUgIT09IHZhbHVlKSB7XHJcbiAgICAgICAgICBjaGFuZ2VkID0gdHJ1ZTtcclxuICAgICAgICAgIHdyaXRlVmFsdWUuYmluZCh0aGlzKSh2YWx1ZSwgZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfTtcclxuXHJcbiAgICAgIHRoaXMuc2lyaW9JbnB1dC5vbkJsdXIgPSBmdW5jdGlvbiAoZXZlbnQ6IGFueSkge1xyXG4gICAgICAgIGlmIChjaGFuZ2VkKSB7XHJcbiAgICAgICAgICBjaGFuZ2VkID0gZmFsc2U7XHJcbiAgICAgICAgICB3cml0ZVZhbHVlLmJpbmQodGhpcykodGhpcy52YWx1ZSwgdHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|