@ng-formworks/core 17.6.8 → 17.6.9
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/json-schema-form.component.mjs +27 -6
- package/esm2022/lib/json-schema-form.service.mjs +62 -4
- package/esm2022/lib/shared/json-schema.functions.mjs +2 -9
- package/esm2022/lib/shared/layout.functions.mjs +15 -5
- package/esm2022/lib/shared/utility.functions.mjs +44 -1
- package/esm2022/lib/widget-library/add-reference.component.mjs +3 -3
- package/esm2022/lib/widget-library/index.mjs +4 -2
- package/esm2022/lib/widget-library/input.component.mjs +7 -2
- package/esm2022/lib/widget-library/item-title.component.mjs +43 -0
- package/esm2022/lib/widget-library/number.component.mjs +5 -2
- package/esm2022/lib/widget-library/root.component.mjs +5 -3
- package/esm2022/lib/widget-library/tabs.component.mjs +4 -3
- package/esm2022/lib/widget-library/textarea.component.mjs +5 -2
- package/esm2022/lib/widget-library/widget-library.module.mjs +3 -2
- package/fesm2022/ng-formworks-core.mjs +209 -31
- package/fesm2022/ng-formworks-core.mjs.map +1 -1
- package/lib/json-schema-form.component.d.ts +1 -1
- package/lib/json-schema-form.service.d.ts +1 -0
- package/lib/shared/layout.functions.d.ts +1 -0
- package/lib/shared/utility.functions.d.ts +15 -0
- package/lib/shared/validator.functions.d.ts +1 -1
- package/lib/widget-library/index.d.ts +3 -1
- package/lib/widget-library/item-title.component.d.ts +19 -0
- package/lib/widget-library/widget-library.module.d.ts +8 -7
- package/package.json +1 -1
|
@@ -24,8 +24,9 @@ export class TabsComponent {
|
|
|
24
24
|
//TODO review/test-introduced to fix dynamic titles not updating
|
|
25
25
|
//when their conditional linked field is destroyed
|
|
26
26
|
//-forces change detection!
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
//-commented out, causing other issues
|
|
28
|
+
this.dataChangesSubs = this.jsf.dataChanges.subscribe((val) => {
|
|
29
|
+
//this.cdr.detectChanges();
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
32
|
select(index) {
|
|
@@ -163,4 +164,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
163
164
|
</ng-container>
|
|
164
165
|
</div>`, standalone: false, styles: ["a{cursor:pointer}.ngf-hidden{display:none}\n"] }]
|
|
165
166
|
}] });
|
|
166
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL3dpZGdldC1saWJyYXJ5L3RhYnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQXFCLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7OztBQStEcEUsTUFBTSxPQUFPLGFBQWE7SUE1RDFCO1FBNkRVLFFBQUcsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNwQyxRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFHeEMsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNULGVBQVUsR0FBRyxLQUFLLENBQU0sU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztLQStDakQ7SUE3Q0MsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBQztZQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1NBQzlDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLGdFQUFnRTtRQUNoRSxrREFBa0Q7UUFDbEQsMkJBQTJCO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBQyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUs7UUFDVixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDckMsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUU7WUFDM0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztnQkFDZixVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzNDLFdBQVcsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDckQsU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ2xELENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0QjtRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFFRCxhQUFhO1FBQ1gsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM3RSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEtBQUssTUFBTTtZQUMxQixJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLEVBQ3JEO1lBQ0EsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7U0FDekI7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLElBQVMsRUFBRSxLQUFhO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGVBQWUsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN0QyxDQUFDOytHQXZEVSxhQUFhO21HQUFiLGFBQWEsb2RBekRkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FtREQ7OzRGQU1FLGFBQWE7a0JBNUR6QixTQUFTOytCQUVFLGFBQWEsWUFDYjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBbURELGNBSUssS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBpbmplY3QsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtU2VydmljZSB9IGZyb20gJy4uL2pzb24tc2NoZW1hLWZvcm0uc2VydmljZSc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAndGFicy13aWRnZXQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8dWxcclxuICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmxhYmVsSHRtbENsYXNzIHx8ICcnXCI+XHJcbiAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBsYXlvdXROb2RlKCk/Lml0ZW1zOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgICBbY2xhc3NdPVwiKG9wdGlvbnM/Lml0ZW1MYWJlbEh0bWxDbGFzcyB8fCAnJykgKyAoc2VsZWN0ZWRJdGVtID09PSBpID9cclxuICAgICAgICAgICgnICcgKyAob3B0aW9ucz8uYWN0aXZlQ2xhc3MgfHwgJycpICsgJyAnICsgKG9wdGlvbnM/LnN0eWxlPy5zZWxlY3RlZCB8fCAnJykpIDpcclxuICAgICAgICAgICgnICcgKyBvcHRpb25zPy5zdHlsZT8udW5zZWxlY3RlZCkpXCJcclxuICAgICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcclxuICAgICAgICBkYXRhLXRhYnM+XHJcbiAgICAgICAgPGEgKm5nSWY9XCJzaG93QWRkVGFiIHx8IGl0ZW0udHlwZSAhPT0gJyRyZWYnXCJcclxuICAgICAgICAgICBbY2xhc3NdPVwiJ25hdi1saW5rJyArIChzZWxlY3RlZEl0ZW0gPT09IGkgPyAoJyAnICsgb3B0aW9ucz8uYWN0aXZlQ2xhc3MgKyAnICcgKyBvcHRpb25zPy5zdHlsZT8uc2VsZWN0ZWQpIDpcclxuICAgICAgICAgICAgKCcgJyArIG9wdGlvbnM/LnN0eWxlPy51bnNlbGVjdGVkKSlcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cInNlbGVjdChpKVwiPlxyXG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIFt2YWx1ZV09XCJpXCIgKm5nSWY9XCJvcHRpb25zPy50YWJNb2RlPT0nb25lT2ZNb2RlJ1wiIFxyXG4gICAgICAgICAgIG5hbWU9XCJ0YWJTZWxlY3Rpb25cIiBcclxuICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkSXRlbVwiXHJcbiAgICAgICAgICAgW2NsYXNzXT1cIihvcHRpb25zPy53aWRnZXRfcmFkaW9DbGFzcyB8fCAnJylcIlxyXG4gICAgICAgICAgIFt2YWx1ZV09XCJpXCIgXHJcbiAgICAgICAgICAgKGNoYW5nZSk9XCJzZWxlY3QoaSlcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICAgIHt7c2V0VGFiVGl0bGUoaXRlbSwgaSl9fVxyXG4gICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgXHJcbiAgICAgIDwvbGk+XHJcbiAgICA8L3VsPlxyXG5cclxuICAgIDxkaXYgKm5nRm9yPVwibGV0IGxheW91dEl0ZW0gb2YgbGF5b3V0Tm9kZSgpPy5pdGVtczsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgIFtjbGFzc109XCIob3B0aW9ucz8uaHRtbENsYXNzIHx8ICcnKSArIChzZWxlY3RlZEl0ZW0gIT0gaT8nIG5nZi1oaWRkZW4nOicnKSBcIj5cclxuICAgICAgICA8IS0tZm9yIG5vdyB0aGUgb25seSBkaWZmZXJlbmNlIGJldHdlZW4gb25lT2ZNb2RlIGFuZCB0aGUgZGVmYXVsdCBcclxuICAgICAgICAgIGlzIHRoYXQgb25lT2ZNb2RlIHVzZXMgdGhlICpuZ0lmPVwic2VsZWN0ZWRJdGVtID09PSBpXCIgY2xhdXNlLCB3aGljaCBhdXRvbWF0aWNhbGx5XHJcbiAgICAgICAgICBkZXN0cm95cyB0aGUgdGFicyB0aGF0IGFyZSBub3QgcmVuZGVyZWQgd2hpbGUgZGVmYXVsdCBtb2RlIG9ubHkgaGlkZSB0aGVtXHJcbiAgICAgICAgICB0aGUgdXBzaG90IGlzIHRoYXQgb25seSB0aGUgYWN0aXZlIHRhYnMgdmFsdWUgd2lsbCBiZSB1c2VkXHJcbiAgICAgICAgLS0+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb25zPy50YWJNb2RlPT0nb25lT2ZNb2RlJ1wiPlxyXG4gICAgICAgIDxzZWxlY3QtZnJhbWV3b3JrLXdpZGdldCAqbmdJZj1cInNlbGVjdGVkSXRlbSA9PT0gaVwiXHJcbiAgICAgICAgICBbY2xhc3NdPVwiKG9wdGlvbnM/LmZpZWxkSHRtbENsYXNzIHx8ICcnKSArXHJcbiAgICAgICAgICAgICcgJyArIChvcHRpb25zPy5hY3RpdmVDbGFzcyB8fCAnJykgK1xyXG4gICAgICAgICAgICAnICcgKyAob3B0aW9ucz8uc3R5bGU/LnNlbGVjdGVkIHx8ICcnKVwiXHJcbiAgICAgICAgICBbZGF0YUluZGV4XT1cImxheW91dE5vZGUoKT8uZGF0YVR5cGUgPT09ICdhcnJheScgPyAoZGF0YUluZGV4KCkgfHwgW10pLmNvbmNhdChpKSA6IGRhdGFJbmRleCgpXCJcclxuICAgICAgICAgIFtsYXlvdXRJbmRleF09XCIobGF5b3V0SW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpXCJcclxuICAgICAgICAgIFtsYXlvdXROb2RlXT1cImxheW91dEl0ZW1cIj48L3NlbGVjdC1mcmFtZXdvcmstd2lkZ2V0PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj4gXHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb25zPy50YWJNb2RlICE9J29uZU9mTW9kZSdcIj5cclxuICAgICAgICA8c2VsZWN0LWZyYW1ld29yay13aWRnZXQgXHJcbiAgICAgICAgICBbY2xhc3NdPVwiKG9wdGlvbnM/LmZpZWxkSHRtbENsYXNzIHx8ICcnKSArXHJcbiAgICAgICAgICAgICcgJyArIChvcHRpb25zPy5hY3RpdmVDbGFzcyB8fCAnJykgK1xyXG4gICAgICAgICAgICAnICcgKyAob3B0aW9ucz8uc3R5bGU/LnNlbGVjdGVkIHx8ICcnKVwiXHJcbiAgICAgICAgICBbZGF0YUluZGV4XT1cImxheW91dE5vZGUoKT8uZGF0YVR5cGUgPT09ICdhcnJheScgPyAoZGF0YUluZGV4KCkgfHwgW10pLmNvbmNhdChpKSA6IGRhdGFJbmRleCgpXCJcclxuICAgICAgICAgIFtsYXlvdXRJbmRleF09XCIobGF5b3V0SW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpXCJcclxuICAgICAgICAgIFtsYXlvdXROb2RlXT1cImxheW91dEl0ZW1cIj48L3NlbGVjdC1mcmFtZXdvcmstd2lkZ2V0PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj4gXHJcbiAgICA8L2Rpdj5gLFxyXG4gICAgc3R5bGVzOiBbYCBhIHsgY3Vyc29yOiBwb2ludGVyOyB9IFxyXG4gICAgICAgIC5uZ2YtaGlkZGVue2Rpc3BsYXk6bm9uZX1cclxuICAgICAgYF0sXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFic0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCxPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUganNmID0gaW5qZWN0KEpzb25TY2hlbWFGb3JtU2VydmljZSk7XHJcbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xyXG4gIG9wdGlvbnM6IGFueTtcclxuICBpdGVtQ291bnQ6IG51bWJlcjtcclxuICBzZWxlY3RlZEl0ZW0gPSAwO1xyXG4gIHNob3dBZGRUYWIgPSB0cnVlO1xyXG4gIHJlYWRvbmx5IGxheW91dE5vZGUgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgbGF5b3V0SW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBkYXRhSW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICBkYXRhQ2hhbmdlc1N1YnM6U3Vic2NyaXB0aW9uO1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5sYXlvdXROb2RlKCkub3B0aW9ucyB8fCB7fTtcclxuICAgIGlmKHRoaXMub3B0aW9ucy5zZWxlY3RlZFRhYil7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gdGhpcy5vcHRpb25zLnNlbGVjdGVkVGFiO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pdGVtQ291bnQgPSB0aGlzLmxheW91dE5vZGUoKS5pdGVtcy5sZW5ndGggLSAxO1xyXG4gICAgdGhpcy51cGRhdGVDb250cm9sKCk7XHJcbiAgICAvL1RPRE8gcmV2aWV3L3Rlc3QtaW50cm9kdWNlZCB0byBmaXggZHluYW1pYyB0aXRsZXMgbm90IHVwZGF0aW5nXHJcbiAgICAvL3doZW4gdGhlaXIgY29uZGl0aW9uYWwgbGlua2VkIGZpZWxkIGlzIGRlc3Ryb3llZFxyXG4gICAgLy8tZm9yY2VzIGNoYW5nZSBkZXRlY3Rpb24hXHJcbiAgICB0aGlzLmpzZi5kYXRhQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbCk9PntcclxuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgc2VsZWN0KGluZGV4KSB7XHJcbiAgICBjb25zdCBsYXlvdXROb2RlID0gdGhpcy5sYXlvdXROb2RlKCk7XHJcbiAgICBpZiAobGF5b3V0Tm9kZS5pdGVtc1tpbmRleF0udHlwZSA9PT0gJyRyZWYnKSB7XHJcbiAgICAgIHRoaXMuaXRlbUNvdW50ID0gbGF5b3V0Tm9kZS5pdGVtcy5sZW5ndGg7XHJcbiAgICAgIHRoaXMuanNmLmFkZEl0ZW0oe1xyXG4gICAgICAgIGxheW91dE5vZGU6IHNpZ25hbChsYXlvdXROb2RlLml0ZW1zW2luZGV4XSksXHJcbiAgICAgICAgbGF5b3V0SW5kZXg6IHNpZ25hbCh0aGlzLmxheW91dEluZGV4KCkuY29uY2F0KGluZGV4KSksXHJcbiAgICAgICAgZGF0YUluZGV4OiBzaWduYWwodGhpcy5kYXRhSW5kZXgoKS5jb25jYXQoaW5kZXgpKVxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cm9sKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IGluZGV4O1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ29udHJvbCgpIHtcclxuICAgIGNvbnN0IGxhc3RJdGVtID0gdGhpcy5sYXlvdXROb2RlKCkuaXRlbXNbdGhpcy5sYXlvdXROb2RlKCkuaXRlbXMubGVuZ3RoIC0gMV07XHJcbiAgICBpZiAobGFzdEl0ZW0udHlwZSA9PT0gJyRyZWYnICYmXHJcbiAgICAgIHRoaXMuaXRlbUNvdW50ID49IChsYXN0SXRlbS5vcHRpb25zLm1heEl0ZW1zIHx8IDEwMDApXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5zaG93QWRkVGFiID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRUYWJUaXRsZShpdGVtOiBhbnksIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuanNmLnNldEFycmF5SXRlbVRpdGxlKHRoaXMsIGl0ZW0sIGluZGV4KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kYXRhQ2hhbmdlc1N1YnM/LnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL3dpZGdldC1saWJyYXJ5L3RhYnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQXFCLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7OztBQStEcEUsTUFBTSxPQUFPLGFBQWE7SUE1RDFCO1FBNkRVLFFBQUcsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNwQyxRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFHeEMsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNULGVBQVUsR0FBRyxLQUFLLENBQU0sU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztLQWdEakQ7SUE5Q0MsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBQztZQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1NBQzlDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLGdFQUFnRTtRQUNoRSxrREFBa0Q7UUFDbEQsMkJBQTJCO1FBQzNCLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsZUFBZSxHQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBQyxFQUFFO1lBQ3ZELDJCQUEyQjtRQUMvQixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSztRQUNWLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRTtZQUMzQyxJQUFJLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDO2dCQUNmLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0MsV0FBVyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNyRCxTQUFTLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDbEQsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3RCO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzdFLElBQUksUUFBUSxDQUFDLElBQUksS0FBSyxNQUFNO1lBQzFCLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsRUFDckQ7WUFDQSxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsSUFBUyxFQUFFLEtBQWE7UUFDbEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsZUFBZSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3RDLENBQUM7K0dBeERVLGFBQWE7bUdBQWIsYUFBYSxvZEF6RGQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQW1ERDs7NEZBTUUsYUFBYTtrQkE1RHpCLFNBQVM7K0JBRUUsYUFBYSxZQUNiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FtREQsY0FJSyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQsIGluamVjdCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgSnNvblNjaGVtYUZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vanNvbi1zY2hlbWEtZm9ybS5zZXJ2aWNlJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICd0YWJzLXdpZGdldCcsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDx1bFxyXG4gICAgICBbY2xhc3NdPVwib3B0aW9ucz8ubGFiZWxIdG1sQ2xhc3MgfHwgJydcIj5cclxuICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGxheW91dE5vZGUoKT8uaXRlbXM7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICAgIFtjbGFzc109XCIob3B0aW9ucz8uaXRlbUxhYmVsSHRtbENsYXNzIHx8ICcnKSArIChzZWxlY3RlZEl0ZW0gPT09IGkgP1xyXG4gICAgICAgICAgKCcgJyArIChvcHRpb25zPy5hY3RpdmVDbGFzcyB8fCAnJykgKyAnICcgKyAob3B0aW9ucz8uc3R5bGU/LnNlbGVjdGVkIHx8ICcnKSkgOlxyXG4gICAgICAgICAgKCcgJyArIG9wdGlvbnM/LnN0eWxlPy51bnNlbGVjdGVkKSlcIlxyXG4gICAgICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIlxyXG4gICAgICAgIGRhdGEtdGFicz5cclxuICAgICAgICA8YSAqbmdJZj1cInNob3dBZGRUYWIgfHwgaXRlbS50eXBlICE9PSAnJHJlZidcIlxyXG4gICAgICAgICAgIFtjbGFzc109XCInbmF2LWxpbmsnICsgKHNlbGVjdGVkSXRlbSA9PT0gaSA/ICgnICcgKyBvcHRpb25zPy5hY3RpdmVDbGFzcyArICcgJyArIG9wdGlvbnM/LnN0eWxlPy5zZWxlY3RlZCkgOlxyXG4gICAgICAgICAgICAoJyAnICsgb3B0aW9ucz8uc3R5bGU/LnVuc2VsZWN0ZWQpKVwiXHJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0KGkpXCI+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInJhZGlvXCIgW3ZhbHVlXT1cImlcIiAqbmdJZj1cIm9wdGlvbnM/LnRhYk1vZGU9PSdvbmVPZk1vZGUnXCIgXHJcbiAgICAgICAgICAgbmFtZT1cInRhYlNlbGVjdGlvblwiIFxyXG4gICAgICAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0ZWRJdGVtXCJcclxuICAgICAgICAgICBbY2xhc3NdPVwiKG9wdGlvbnM/LndpZGdldF9yYWRpb0NsYXNzIHx8ICcnKVwiXHJcbiAgICAgICAgICAgW3ZhbHVlXT1cImlcIiBcclxuICAgICAgICAgICAoY2hhbmdlKT1cInNlbGVjdChpKVwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgICAge3tzZXRUYWJUaXRsZShpdGVtLCBpKX19XHJcbiAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICBcclxuICAgICAgPC9saT5cclxuICAgIDwvdWw+XHJcblxyXG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgbGF5b3V0SXRlbSBvZiBsYXlvdXROb2RlKCk/Lml0ZW1zOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgW2NsYXNzXT1cIihvcHRpb25zPy5odG1sQ2xhc3MgfHwgJycpICsgKHNlbGVjdGVkSXRlbSAhPSBpPycgbmdmLWhpZGRlbic6JycpIFwiPlxyXG4gICAgICAgIDwhLS1mb3Igbm93IHRoZSBvbmx5IGRpZmZlcmVuY2UgYmV0d2VlbiBvbmVPZk1vZGUgYW5kIHRoZSBkZWZhdWx0IFxyXG4gICAgICAgICAgaXMgdGhhdCBvbmVPZk1vZGUgdXNlcyB0aGUgKm5nSWY9XCJzZWxlY3RlZEl0ZW0gPT09IGlcIiBjbGF1c2UsIHdoaWNoIGF1dG9tYXRpY2FsbHlcclxuICAgICAgICAgIGRlc3Ryb3lzIHRoZSB0YWJzIHRoYXQgYXJlIG5vdCByZW5kZXJlZCB3aGlsZSBkZWZhdWx0IG1vZGUgb25seSBoaWRlIHRoZW1cclxuICAgICAgICAgIHRoZSB1cHNob3QgaXMgdGhhdCBvbmx5IHRoZSBhY3RpdmUgdGFicyB2YWx1ZSB3aWxsIGJlIHVzZWRcclxuICAgICAgICAtLT5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9wdGlvbnM/LnRhYk1vZGU9PSdvbmVPZk1vZGUnXCI+XHJcbiAgICAgICAgPHNlbGVjdC1mcmFtZXdvcmstd2lkZ2V0ICpuZ0lmPVwic2VsZWN0ZWRJdGVtID09PSBpXCJcclxuICAgICAgICAgIFtjbGFzc109XCIob3B0aW9ucz8uZmllbGRIdG1sQ2xhc3MgfHwgJycpICtcclxuICAgICAgICAgICAgJyAnICsgKG9wdGlvbnM/LmFjdGl2ZUNsYXNzIHx8ICcnKSArXHJcbiAgICAgICAgICAgICcgJyArIChvcHRpb25zPy5zdHlsZT8uc2VsZWN0ZWQgfHwgJycpXCJcclxuICAgICAgICAgIFtkYXRhSW5kZXhdPVwibGF5b3V0Tm9kZSgpPy5kYXRhVHlwZSA9PT0gJ2FycmF5JyA/IChkYXRhSW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpIDogZGF0YUluZGV4KClcIlxyXG4gICAgICAgICAgW2xheW91dEluZGV4XT1cIihsYXlvdXRJbmRleCgpIHx8IFtdKS5jb25jYXQoaSlcIlxyXG4gICAgICAgICAgW2xheW91dE5vZGVdPVwibGF5b3V0SXRlbVwiPjwvc2VsZWN0LWZyYW1ld29yay13aWRnZXQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPiBcclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9wdGlvbnM/LnRhYk1vZGUgIT0nb25lT2ZNb2RlJ1wiPlxyXG4gICAgICAgIDxzZWxlY3QtZnJhbWV3b3JrLXdpZGdldCBcclxuICAgICAgICAgIFtjbGFzc109XCIob3B0aW9ucz8uZmllbGRIdG1sQ2xhc3MgfHwgJycpICtcclxuICAgICAgICAgICAgJyAnICsgKG9wdGlvbnM/LmFjdGl2ZUNsYXNzIHx8ICcnKSArXHJcbiAgICAgICAgICAgICcgJyArIChvcHRpb25zPy5zdHlsZT8uc2VsZWN0ZWQgfHwgJycpXCJcclxuICAgICAgICAgIFtkYXRhSW5kZXhdPVwibGF5b3V0Tm9kZSgpPy5kYXRhVHlwZSA9PT0gJ2FycmF5JyA/IChkYXRhSW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpIDogZGF0YUluZGV4KClcIlxyXG4gICAgICAgICAgW2xheW91dEluZGV4XT1cIihsYXlvdXRJbmRleCgpIHx8IFtdKS5jb25jYXQoaSlcIlxyXG4gICAgICAgICAgW2xheW91dE5vZGVdPVwibGF5b3V0SXRlbVwiPjwvc2VsZWN0LWZyYW1ld29yay13aWRnZXQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPiBcclxuICAgIDwvZGl2PmAsXHJcbiAgICBzdHlsZXM6IFtgIGEgeyBjdXJzb3I6IHBvaW50ZXI7IH0gXHJcbiAgICAgICAgLm5nZi1oaWRkZW57ZGlzcGxheTpub25lfVxyXG4gICAgICBgXSxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSBqc2YgPSBpbmplY3QoSnNvblNjaGVtYUZvcm1TZXJ2aWNlKTtcclxuICBwcml2YXRlIGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgb3B0aW9uczogYW55O1xyXG4gIGl0ZW1Db3VudDogbnVtYmVyO1xyXG4gIHNlbGVjdGVkSXRlbSA9IDA7XHJcbiAgc2hvd0FkZFRhYiA9IHRydWU7XHJcbiAgcmVhZG9ubHkgbGF5b3V0Tm9kZSA9IGlucHV0PGFueT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBsYXlvdXRJbmRleCA9IGlucHV0PG51bWJlcltdPih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGRhdGFJbmRleCA9IGlucHV0PG51bWJlcltdPih1bmRlZmluZWQpO1xyXG4gIGRhdGFDaGFuZ2VzU3ViczpTdWJzY3JpcHRpb247XHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmxheW91dE5vZGUoKS5vcHRpb25zIHx8IHt9O1xyXG4gICAgaWYodGhpcy5vcHRpb25zLnNlbGVjdGVkVGFiKXtcclxuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW0gPSB0aGlzLm9wdGlvbnMuc2VsZWN0ZWRUYWI7XHJcbiAgICB9XHJcbiAgICB0aGlzLml0ZW1Db3VudCA9IHRoaXMubGF5b3V0Tm9kZSgpLml0ZW1zLmxlbmd0aCAtIDE7XHJcbiAgICB0aGlzLnVwZGF0ZUNvbnRyb2woKTtcclxuICAgIC8vVE9ETyByZXZpZXcvdGVzdC1pbnRyb2R1Y2VkIHRvIGZpeCBkeW5hbWljIHRpdGxlcyBub3QgdXBkYXRpbmdcclxuICAgIC8vd2hlbiB0aGVpciBjb25kaXRpb25hbCBsaW5rZWQgZmllbGQgaXMgZGVzdHJveWVkXHJcbiAgICAvLy1mb3JjZXMgY2hhbmdlIGRldGVjdGlvbiFcclxuICAgIC8vLWNvbW1lbnRlZCBvdXQsIGNhdXNpbmcgb3RoZXIgaXNzdWVzXHJcbiAgICB0aGlzLmRhdGFDaGFuZ2VzU3Vicz10aGlzLmpzZi5kYXRhQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbCk9PntcclxuICAgICAgICAvL3RoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBzZWxlY3QoaW5kZXgpIHtcclxuICAgIGNvbnN0IGxheW91dE5vZGUgPSB0aGlzLmxheW91dE5vZGUoKTtcclxuICAgIGlmIChsYXlvdXROb2RlLml0ZW1zW2luZGV4XS50eXBlID09PSAnJHJlZicpIHtcclxuICAgICAgdGhpcy5pdGVtQ291bnQgPSBsYXlvdXROb2RlLml0ZW1zLmxlbmd0aDtcclxuICAgICAgdGhpcy5qc2YuYWRkSXRlbSh7XHJcbiAgICAgICAgbGF5b3V0Tm9kZTogc2lnbmFsKGxheW91dE5vZGUuaXRlbXNbaW5kZXhdKSxcclxuICAgICAgICBsYXlvdXRJbmRleDogc2lnbmFsKHRoaXMubGF5b3V0SW5kZXgoKS5jb25jYXQoaW5kZXgpKSxcclxuICAgICAgICBkYXRhSW5kZXg6IHNpZ25hbCh0aGlzLmRhdGFJbmRleCgpLmNvbmNhdChpbmRleCkpXHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyb2woKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVDb250cm9sKCkge1xyXG4gICAgY29uc3QgbGFzdEl0ZW0gPSB0aGlzLmxheW91dE5vZGUoKS5pdGVtc1t0aGlzLmxheW91dE5vZGUoKS5pdGVtcy5sZW5ndGggLSAxXTtcclxuICAgIGlmIChsYXN0SXRlbS50eXBlID09PSAnJHJlZicgJiZcclxuICAgICAgdGhpcy5pdGVtQ291bnQgPj0gKGxhc3RJdGVtLm9wdGlvbnMubWF4SXRlbXMgfHwgMTAwMClcclxuICAgICkge1xyXG4gICAgICB0aGlzLnNob3dBZGRUYWIgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFRhYlRpdGxlKGl0ZW06IGFueSwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5qc2Yuc2V0QXJyYXlJdGVtVGl0bGUodGhpcywgaXRlbSwgaW5kZXgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhdGFDaGFuZ2VzU3Vicz8udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -20,7 +20,10 @@ export class TextareaComponent {
|
|
|
20
20
|
this.jsf.updateValue(this, event.target.value);
|
|
21
21
|
}
|
|
22
22
|
ngOnDestroy() {
|
|
23
|
-
|
|
23
|
+
//see cpmments in input component
|
|
24
|
+
setTimeout(() => {
|
|
25
|
+
this.jsf.updateValue(this, null);
|
|
26
|
+
});
|
|
24
27
|
}
|
|
25
28
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TextareaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
29
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: TextareaComponent, selector: "textarea-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
@@ -101,4 +104,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
101
104
|
</div>`,
|
|
102
105
|
}]
|
|
103
106
|
}] });
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZm9ybXdvcmtzLWNvcmUvc3JjL2xpYi93aWRnZXQtbGlicmFyeS90ZXh0YXJlYS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQTBDcEUsTUFBTSxPQUFPLGlCQUFpQjtJQXZDOUI7UUF3Q1UsUUFBRyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBSzVDLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBRVosZUFBVSxHQUFHLEtBQUssQ0FBTSxTQUFTLENBQUMsQ0FBQztRQUNuQyxnQkFBVyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztRQUN6QyxjQUFTLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO0tBaUJqRDtJQWZDLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO1FBQy9DLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLO1FBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFdBQVc7UUFDVCxpQ0FBaUM7UUFDakMsVUFBVSxDQUFDLEdBQUUsRUFBRTtZQUNiLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7K0dBM0JVLGlCQUFpQjttR0FBakIsaUJBQWlCLHdkQXBDbEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FrQ0Q7OzRGQUVFLGlCQUFpQjtrQkF2QzdCLFNBQVM7bUJBQUM7b0JBQ1QsOENBQThDO29CQUM5QyxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FrQ0Q7aUJBQ1YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgaW5wdXQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgSnNvblNjaGVtYUZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vanNvbi1zY2hlbWEtZm9ybS5zZXJ2aWNlJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICd0ZXh0YXJlYS13aWRnZXQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2XHJcbiAgICAgIFtjbGFzc109XCJvcHRpb25zPy5odG1sQ2xhc3MgfHwgJydcIj5cclxuICAgICAgPGxhYmVsICpuZ0lmPVwib3B0aW9ucz8udGl0bGVcIlxyXG4gICAgICAgIFthdHRyLmZvcl09XCInY29udHJvbCcgKyBsYXlvdXROb2RlKCk/Ll9pZFwiXHJcbiAgICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmxhYmVsSHRtbENsYXNzIHx8ICcnXCJcclxuICAgICAgICBbc3R5bGUuZGlzcGxheV09XCJvcHRpb25zPy5ub3RpdGxlID8gJ25vbmUnIDogJydcIlxyXG4gICAgICAgIFtpbm5lckhUTUxdPVwib3B0aW9ucz8udGl0bGVcIj48L2xhYmVsPlxyXG4gICAgICA8dGV4dGFyZWEgKm5nSWY9XCJib3VuZENvbnRyb2xcIlxyXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiXHJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCInY29udHJvbCcgKyBsYXlvdXROb2RlKCk/Ll9pZCArICdTdGF0dXMnXCJcclxuICAgICAgICBbYXR0ci5tYXhsZW5ndGhdPVwib3B0aW9ucz8ubWF4TGVuZ3RoXCJcclxuICAgICAgICBbYXR0ci5taW5sZW5ndGhdPVwib3B0aW9ucz8ubWluTGVuZ3RoXCJcclxuICAgICAgICBbYXR0ci5wYXR0ZXJuXT1cIm9wdGlvbnM/LnBhdHRlcm5cIlxyXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cIm9wdGlvbnM/LnBsYWNlaG9sZGVyXCJcclxuICAgICAgICBbYXR0ci5yZWFkb25seV09XCJvcHRpb25zPy5yZWFkb25seSA/ICdyZWFkb25seScgOiBudWxsXCJcclxuICAgICAgICBbYXR0ci5yZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXHJcbiAgICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmZpZWxkSHRtbENsYXNzIHx8ICcnXCJcclxuICAgICAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZSgpPy5faWRcIlxyXG4gICAgICAgIFtuYW1lXT1cImNvbnRyb2xOYW1lXCI+PC90ZXh0YXJlYT5cclxuICAgICAgPHRleHRhcmVhICpuZ0lmPVwiIWJvdW5kQ29udHJvbFwiXHJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCInY29udHJvbCcgKyBsYXlvdXROb2RlKCk/Ll9pZCArICdTdGF0dXMnXCJcclxuICAgICAgICBbYXR0ci5tYXhsZW5ndGhdPVwib3B0aW9ucz8ubWF4TGVuZ3RoXCJcclxuICAgICAgICBbYXR0ci5taW5sZW5ndGhdPVwib3B0aW9ucz8ubWluTGVuZ3RoXCJcclxuICAgICAgICBbYXR0ci5wYXR0ZXJuXT1cIm9wdGlvbnM/LnBhdHRlcm5cIlxyXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cIm9wdGlvbnM/LnBsYWNlaG9sZGVyXCJcclxuICAgICAgICBbYXR0ci5yZWFkb25seV09XCJvcHRpb25zPy5yZWFkb25seSA/ICdyZWFkb25seScgOiBudWxsXCJcclxuICAgICAgICBbYXR0ci5yZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXHJcbiAgICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmZpZWxkSHRtbENsYXNzIHx8ICcnXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiY29udHJvbERpc2FibGVkXCJcclxuICAgICAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZSgpPy5faWRcIlxyXG4gICAgICAgIFtuYW1lXT1cImNvbnRyb2xOYW1lXCJcclxuICAgICAgICBbdmFsdWVdPVwiY29udHJvbFZhbHVlXCJcclxuICAgICAgICAoaW5wdXQpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiPnt7Y29udHJvbFZhbHVlfX08L3RleHRhcmVhPlxyXG4gICAgPC9kaXY+YCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRleHRhcmVhQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSBqc2YgPSBpbmplY3QoSnNvblNjaGVtYUZvcm1TZXJ2aWNlKTtcclxuXHJcbiAgZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcclxuICBjb250cm9sTmFtZTogc3RyaW5nO1xyXG4gIGNvbnRyb2xWYWx1ZTogYW55O1xyXG4gIGNvbnRyb2xEaXNhYmxlZCA9IGZhbHNlO1xyXG4gIGJvdW5kQ29udHJvbCA9IGZhbHNlO1xyXG4gIG9wdGlvbnM6IGFueTtcclxuICByZWFkb25seSBsYXlvdXROb2RlID0gaW5wdXQ8YW55Pih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGxheW91dEluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgZGF0YUluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5sYXlvdXROb2RlKCkub3B0aW9ucyB8fCB7fTtcclxuICAgIHRoaXMuanNmLmluaXRpYWxpemVDb250cm9sKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlVmFsdWUoZXZlbnQpIHtcclxuICAgIHRoaXMuanNmLnVwZGF0ZVZhbHVlKHRoaXMsIGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgfVxyXG4gIFxyXG4gIG5nT25EZXN0cm95ICgpIHtcclxuICAgIC8vc2VlIGNwbW1lbnRzIGluIGlucHV0IGNvbXBvbmVudFxyXG4gICAgc2V0VGltZW91dCgoKT0+e1xyXG4gICAgICB0aGlzLmpzZi51cGRhdGVWYWx1ZSh0aGlzLCBudWxsKTtcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -30,9 +30,10 @@ import * as i20 from "./tabs.component";
|
|
|
30
30
|
import * as i21 from "./template.component";
|
|
31
31
|
import * as i22 from "./textarea.component";
|
|
32
32
|
import * as i23 from "./selectcheckbox.component";
|
|
33
|
+
import * as i24 from "./item-title.component";
|
|
33
34
|
export class WidgetLibraryModule {
|
|
34
35
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
35
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, declarations: [i1.AddReferenceComponent, i2.OneOfComponent, i3.ButtonComponent, i4.CheckboxComponent, i5.CheckboxesComponent, i6.FileComponent, i7.HiddenComponent, i8.InputComponent, i9.MessageComponent, i10.NoneComponent, i11.NumberComponent, i12.RadiosComponent, i13.RootComponent, i14.SectionComponent, i15.SelectComponent, i16.SelectFrameworkComponent, i17.SelectWidgetComponent, i18.SubmitComponent, i19.TabComponent, i20.TabsComponent, i21.TemplateComponent, i22.TextareaComponent, i23.SelectCheckboxComponent, OrderableDirective, ElementAttributeDirective, StopPropagationDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule], exports: [i1.AddReferenceComponent, i2.OneOfComponent, i3.ButtonComponent, i4.CheckboxComponent, i5.CheckboxesComponent, i6.FileComponent, i7.HiddenComponent, i8.InputComponent, i9.MessageComponent, i10.NoneComponent, i11.NumberComponent, i12.RadiosComponent, i13.RootComponent, i14.SectionComponent, i15.SelectComponent, i16.SelectFrameworkComponent, i17.SelectWidgetComponent, i18.SubmitComponent, i19.TabComponent, i20.TabsComponent, i21.TemplateComponent, i22.TextareaComponent, i23.SelectCheckboxComponent, OrderableDirective, ElementAttributeDirective, StopPropagationDirective] }); }
|
|
36
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, declarations: [i1.AddReferenceComponent, i2.OneOfComponent, i3.ButtonComponent, i4.CheckboxComponent, i5.CheckboxesComponent, i6.FileComponent, i7.HiddenComponent, i8.InputComponent, i9.MessageComponent, i10.NoneComponent, i11.NumberComponent, i12.RadiosComponent, i13.RootComponent, i14.SectionComponent, i15.SelectComponent, i16.SelectFrameworkComponent, i17.SelectWidgetComponent, i18.SubmitComponent, i19.TabComponent, i20.TabsComponent, i21.TemplateComponent, i22.TextareaComponent, i23.SelectCheckboxComponent, i24.ItemTitleComponent, OrderableDirective, ElementAttributeDirective, StopPropagationDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule], exports: [i1.AddReferenceComponent, i2.OneOfComponent, i3.ButtonComponent, i4.CheckboxComponent, i5.CheckboxesComponent, i6.FileComponent, i7.HiddenComponent, i8.InputComponent, i9.MessageComponent, i10.NoneComponent, i11.NumberComponent, i12.RadiosComponent, i13.RootComponent, i14.SectionComponent, i15.SelectComponent, i16.SelectFrameworkComponent, i17.SelectWidgetComponent, i18.SubmitComponent, i19.TabComponent, i20.TabsComponent, i21.TemplateComponent, i22.TextareaComponent, i23.SelectCheckboxComponent, i24.ItemTitleComponent, OrderableDirective, ElementAttributeDirective, StopPropagationDirective] }); }
|
|
36
37
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule] }); }
|
|
37
38
|
}
|
|
38
39
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, decorators: [{
|
|
@@ -44,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
44
45
|
exports: [...BASIC_WIDGETS, OrderableDirective, ElementAttributeDirective, StopPropagationDirective]
|
|
45
46
|
}]
|
|
46
47
|
}] });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWxpYnJhcnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZm9ybXdvcmtzLWNvcmUvc3JjL2xpYi93aWRnZXQtbGlicmFyeS93aWRnZXQtbGlicmFyeS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzNELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVF4RSxNQUFNLE9BQU8sbUJBQW1COytHQUFuQixtQkFBbUI7Z0hBQW5CLG1CQUFtQiwraEJBSEssa0JBQWtCLEVBQUMseUJBQXlCLEVBQUMsd0JBQXdCLGFBRjVGLFlBQVksRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUMsY0FBYywyaEJBRzNDLGtCQUFrQixFQUFDLHlCQUF5QixFQUFDLHdCQUF3QjtnSEFFeEYsbUJBQW1CLFlBTGxCLFlBQVksRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUMsY0FBYzs7NEZBSzlELG1CQUFtQjtrQkFOL0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFDLGNBQWM7cUJBQ3pFO29CQUNFLFlBQVksRUFBRSxDQUFDLEdBQUcsYUFBYSxFQUFFLGtCQUFrQixFQUFDLHlCQUF5QixFQUFDLHdCQUF3QixDQUFDO29CQUN2RyxPQUFPLEVBQUUsQ0FBQyxHQUFHLGFBQWEsRUFBRSxrQkFBa0IsRUFBQyx5QkFBeUIsRUFBQyx3QkFBd0IsQ0FBQztpQkFDckciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRWxlbWVudEF0dHJpYnV0ZURpcmVjdGl2ZSB9IGZyb20gJy4vZWxlbWVudC1hdHRyaWJ1dGUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQkFTSUNfV0lER0VUUyB9IGZyb20gJy4vaW5kZXgnO1xyXG5pbXBvcnQgeyBPcmRlcmFibGVEaXJlY3RpdmUgfSBmcm9tICcuL29yZGVyYWJsZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUgfSBmcm9tICcuL3N0b3AtcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSxEcmFnRHJvcE1vZHVsZVxyXG4gXSxcclxuICAgIGRlY2xhcmF0aW9uczogWy4uLkJBU0lDX1dJREdFVFMsIE9yZGVyYWJsZURpcmVjdGl2ZSxFbGVtZW50QXR0cmlidXRlRGlyZWN0aXZlLFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZV0sXHJcbiAgICBleHBvcnRzOiBbLi4uQkFTSUNfV0lER0VUUywgT3JkZXJhYmxlRGlyZWN0aXZlLEVsZW1lbnRBdHRyaWJ1dGVEaXJlY3RpdmUsU3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgV2lkZ2V0TGlicmFyeU1vZHVsZSB7XHJcbn1cclxuIl19
|
|
@@ -9,6 +9,7 @@ import Ajv2019 from 'ajv/dist/2019';
|
|
|
9
9
|
import jsonDraft6 from 'ajv/lib/refs/json-schema-draft-06.json';
|
|
10
10
|
import jsonDraft7 from 'ajv/lib/refs/json-schema-draft-07.json';
|
|
11
11
|
import cloneDeep from 'lodash/cloneDeep';
|
|
12
|
+
import _isArray from 'lodash/isArray';
|
|
12
13
|
import { from, Observable, forkJoin, Subject, BehaviorSubject, lastValueFrom } from 'rxjs';
|
|
13
14
|
import { some, isNil, isEmpty as isEmpty$1, pick, isObject as isObject$1, isEqual as isEqual$2, memoize } from 'lodash';
|
|
14
15
|
import isEqual$1 from 'lodash/isEqual';
|
|
@@ -16,7 +17,6 @@ import { map, takeUntil } from 'rxjs/operators';
|
|
|
16
17
|
import omit from 'lodash/omit';
|
|
17
18
|
import filter from 'lodash/filter';
|
|
18
19
|
import map$1 from 'lodash/map';
|
|
19
|
-
import _isArray from 'lodash/isArray';
|
|
20
20
|
import _isPlainObject from 'lodash/isPlainObject';
|
|
21
21
|
import uniqueId from 'lodash/uniqueId';
|
|
22
22
|
import * as i2$1 from '@angular/cdk/drag-drop';
|
|
@@ -1457,6 +1457,49 @@ function hasNonNullValue(obj) {
|
|
|
1457
1457
|
return !isNil(value);
|
|
1458
1458
|
});
|
|
1459
1459
|
}
|
|
1460
|
+
/**
|
|
1461
|
+
* Recursively compares array sizes of nested arrays
|
|
1462
|
+
*
|
|
1463
|
+
* @param obj1 - The object to check.
|
|
1464
|
+
* @param obj2 - The object to check.
|
|
1465
|
+
* @returns `false` if at least one nested array size mismatches`.
|
|
1466
|
+
*
|
|
1467
|
+
* @example
|
|
1468
|
+
* const obj1 = { a: ['a','aa'], b:{c:[1,11,11]} };
|
|
1469
|
+
* const obj2 = { a: ['ee','dd'], b:{c:[2]} };
|
|
1470
|
+
*
|
|
1471
|
+
* console.log(compareObjectArraySizes(obj1,obj1)); // Output: false
|
|
1472
|
+
* mismatch will be on path b/c
|
|
1473
|
+
*/
|
|
1474
|
+
function compareObjectArraySizes(obj1, obj2, comparePath = "") {
|
|
1475
|
+
if (isArray(obj1) && isArray(obj2)) {
|
|
1476
|
+
if (obj1.length != obj2.length) {
|
|
1477
|
+
console.log(`size mismatch at ${comparePath}`);
|
|
1478
|
+
return false; // immediately return false on mismatch
|
|
1479
|
+
}
|
|
1480
|
+
else {
|
|
1481
|
+
for (let ind = 0; ind < obj1.length; ind++) {
|
|
1482
|
+
const item1 = obj1[ind];
|
|
1483
|
+
const item2 = obj2[ind];
|
|
1484
|
+
const result = compareObjectArraySizes(item1, item2, `${comparePath}/${ind}`);
|
|
1485
|
+
if (result === false) {
|
|
1486
|
+
return false; // propagate false if mismatch is found
|
|
1487
|
+
}
|
|
1488
|
+
}
|
|
1489
|
+
}
|
|
1490
|
+
}
|
|
1491
|
+
if (isObject(obj1) && !isArray(obj1)) {
|
|
1492
|
+
for (let key in obj1) {
|
|
1493
|
+
if (obj2.hasOwnProperty(key)) {
|
|
1494
|
+
const result = compareObjectArraySizes(obj1[key], obj2[key], `${comparePath}/${key}`);
|
|
1495
|
+
if (result === false) {
|
|
1496
|
+
return false; // propagate false if mismatch is found
|
|
1497
|
+
}
|
|
1498
|
+
}
|
|
1499
|
+
}
|
|
1500
|
+
}
|
|
1501
|
+
return true; // all checks passed
|
|
1502
|
+
}
|
|
1460
1503
|
|
|
1461
1504
|
class JsonPointer {
|
|
1462
1505
|
/**
|
|
@@ -4643,14 +4686,7 @@ function convertJSONSchemaIfToCondition(schema, layoutNode, negate = false) {
|
|
|
4643
4686
|
.join("")
|
|
4644
4687
|
: "";
|
|
4645
4688
|
let modelPath = parentPath ? `model.${parentPath}` : "model";
|
|
4646
|
-
let checkPath = modelPath.split('.')
|
|
4647
|
-
.map((_, index, array) => {
|
|
4648
|
-
return array.slice(0, index + 1).join('.'); // Build each part of the path dynamically
|
|
4649
|
-
}).join(' && '); // Join the parts with '&&'
|
|
4650
|
-
// .reduce((accumulator, currentPart, index) => {
|
|
4651
|
-
// const currentExpression = index === 0 ? currentPart : `${accumulator}.${currentPart}`;
|
|
4652
|
-
// return index === 0 ? currentExpression : `${accumulator} && ${currentExpression}`;
|
|
4653
|
-
// }, '');
|
|
4689
|
+
let checkPath = modelPath.replace(/\[/g, ".[").split('.').join("?.");
|
|
4654
4690
|
if (schema.if) {
|
|
4655
4691
|
Object.keys(schema.if.properties).forEach((ifProp, ind) => {
|
|
4656
4692
|
let amper = ind > 0 ? "&" : "";
|
|
@@ -6201,7 +6237,7 @@ function buildLayout_original(jsf, widgetLibrary) {
|
|
|
6201
6237
|
return formLayout;
|
|
6202
6238
|
}
|
|
6203
6239
|
//TODO-review:this implements a quick 'post' fix rather than an
|
|
6204
|
-
//
|
|
6240
|
+
//integrated ideal fix
|
|
6205
6241
|
function buildLayout(jsf, widgetLibrary) {
|
|
6206
6242
|
let layout = buildLayout_original(jsf, widgetLibrary);
|
|
6207
6243
|
if (jsf.formValues) {
|
|
@@ -6313,11 +6349,21 @@ function fixNestedArrayLayout(options) {
|
|
|
6313
6349
|
: cloneDeep(builtLayout.items[0]); //copy first
|
|
6314
6350
|
newItem._id = uniqueId("new_");
|
|
6315
6351
|
builtLayout.items.unshift(newItem);
|
|
6352
|
+
// builtLayout.items=[newItem, ...builtLayout.items];
|
|
6316
6353
|
}
|
|
6317
|
-
|
|
6318
|
-
|
|
6354
|
+
}
|
|
6355
|
+
else if (numActualItems > numDataItems) {
|
|
6356
|
+
let numItemsToRemove = numActualItems - numDataItems;
|
|
6357
|
+
for (let i = 0; i < numItemsToRemove; i++) {
|
|
6358
|
+
builtLayout.items.pop();
|
|
6359
|
+
//builtLayout.items=builtLayout.items.slice(0, -1);
|
|
6360
|
+
//builtLayout.items.slice(0, -1);
|
|
6319
6361
|
}
|
|
6320
6362
|
}
|
|
6363
|
+
if (builtLayout.options.listItems) {
|
|
6364
|
+
builtLayout.options.listItems = numDataItems;
|
|
6365
|
+
}
|
|
6366
|
+
//builtLayout.items=[...builtLayout.items];
|
|
6321
6367
|
indices[builtLayout.dataPointer] = indices[builtLayout.dataPointer] || -1;
|
|
6322
6368
|
indexPos++;
|
|
6323
6369
|
builtLayout.items.forEach((item, index) => {
|
|
@@ -7689,7 +7735,7 @@ class JsonSchemaFormService {
|
|
|
7689
7735
|
// Set values of any related controls in copyValueTo array
|
|
7690
7736
|
if (isArray(ctx.options.copyValueTo)) {
|
|
7691
7737
|
for (const item of ctx.options.copyValueTo) {
|
|
7692
|
-
const targetControl = getControl(this.formGroup, item);
|
|
7738
|
+
const targetControl = this.formGroup && getControl(this.formGroup, item);
|
|
7693
7739
|
if (isObject(targetControl) &&
|
|
7694
7740
|
typeof targetControl.setValue === 'function') {
|
|
7695
7741
|
targetControl.setValue(value);
|
|
@@ -7764,7 +7810,8 @@ class JsonSchemaFormService {
|
|
|
7764
7810
|
getFormControlValue(ctx) {
|
|
7765
7811
|
if (!ctx || !ctx.layoutNode ||
|
|
7766
7812
|
!isDefined(ctx.layoutNode().dataPointer) ||
|
|
7767
|
-
ctx.layoutNode().type === '$ref'
|
|
7813
|
+
ctx.layoutNode().type === '$ref'
|
|
7814
|
+
|| this.formGroup == null) {
|
|
7768
7815
|
return null;
|
|
7769
7816
|
}
|
|
7770
7817
|
const schemaPointer = ctx.layoutNode()?.isITEItem ? ctx.layoutNode()?.schemaPointer : null;
|
|
@@ -7774,7 +7821,7 @@ class JsonSchemaFormService {
|
|
|
7774
7821
|
return control ? control.value : null;
|
|
7775
7822
|
}
|
|
7776
7823
|
getFormControlGroup(ctx) {
|
|
7777
|
-
if (!ctx || !ctx.layoutNode || !isDefined(ctx.layoutNode().dataPointer)) {
|
|
7824
|
+
if (!ctx || !ctx.layoutNode || !isDefined(ctx.layoutNode().dataPointer) || this.formGroup == null) {
|
|
7778
7825
|
return null;
|
|
7779
7826
|
}
|
|
7780
7827
|
const schemaPointer = ctx.layoutNode()?.isITEItem ? ctx.layoutNode()?.schemaPointer : null;
|
|
@@ -7902,6 +7949,62 @@ class JsonSchemaFormService {
|
|
|
7902
7949
|
JsonPointer.remove(this.layout, this.getLayoutPointer(ctx));
|
|
7903
7950
|
return true;
|
|
7904
7951
|
}
|
|
7952
|
+
//TODO fix-doesnt seem to work for nested array
|
|
7953
|
+
adjustLayout(layout, newData, currLayoutIndex = [0], currDataIndex = []) {
|
|
7954
|
+
const createWidgetCtx = (layoutNode, layoutIndex, dataIndex) => {
|
|
7955
|
+
return {
|
|
7956
|
+
layoutNode: () => { return layoutNode; },
|
|
7957
|
+
layoutIndex: () => { return layoutIndex; },
|
|
7958
|
+
dataIndex: () => { return dataIndex; },
|
|
7959
|
+
};
|
|
7960
|
+
};
|
|
7961
|
+
// console.log(`adjustLayout currLayoutIndex:${currLayoutIndex}`);
|
|
7962
|
+
if (layout.items && _isArray(newData)) {
|
|
7963
|
+
let ctx = createWidgetCtx({
|
|
7964
|
+
...layout,
|
|
7965
|
+
$ref: layout.$ref || layout.items[0]?.dataPointer,
|
|
7966
|
+
dataPointer: layout.items[0]?.dataPointer,
|
|
7967
|
+
arrayItem: true,
|
|
7968
|
+
arrayItemType: "list"
|
|
7969
|
+
}, [...currLayoutIndex.slice(0, currLayoutIndex.length - 1), layout.items.length - 1], [...currDataIndex.slice(0, currDataIndex.length - 1), layout.items.length - 1]);
|
|
7970
|
+
const lengthDifference = newData.length - layout.items.filter(litem => {
|
|
7971
|
+
return litem?.type != "$ref";
|
|
7972
|
+
}).length;
|
|
7973
|
+
if (lengthDifference > 0) {
|
|
7974
|
+
// Add missing controls if newData has more items
|
|
7975
|
+
for (let i = 0; i < lengthDifference; i++) {
|
|
7976
|
+
this.addItem(ctx);
|
|
7977
|
+
}
|
|
7978
|
+
}
|
|
7979
|
+
else if (lengthDifference < 0) {
|
|
7980
|
+
let numToRemove = layout.items.filter(litem => {
|
|
7981
|
+
return litem?.type != "$ref";
|
|
7982
|
+
})
|
|
7983
|
+
.length - newData.length;
|
|
7984
|
+
// Remove extra controls if newData has fewer items
|
|
7985
|
+
for (let i = 0; i < numToRemove; i++) {
|
|
7986
|
+
let oldDataIndex = ctx.dataIndex();
|
|
7987
|
+
let lastDataIndex = oldDataIndex[oldDataIndex.length - 1];
|
|
7988
|
+
let updatedLayoutIndex = [...currLayoutIndex.slice(0, currLayoutIndex.length - 1), 0];
|
|
7989
|
+
let updatedDataIndex = [...oldDataIndex.slice(0, oldDataIndex.length - 1), 0];
|
|
7990
|
+
ctx = createWidgetCtx(ctx.layoutNode(), updatedLayoutIndex, updatedDataIndex);
|
|
7991
|
+
let removed = this.removeItem(ctx);
|
|
7992
|
+
// if(removed){
|
|
7993
|
+
//}
|
|
7994
|
+
}
|
|
7995
|
+
}
|
|
7996
|
+
return;
|
|
7997
|
+
}
|
|
7998
|
+
if (_isArray(layout)) {
|
|
7999
|
+
layout.forEach((layoutNode, ind) => {
|
|
8000
|
+
//if(layoutNode.items){
|
|
8001
|
+
let layoutMappedData = layoutNode.dataPointer ? JsonPointer.get(newData, layoutNode.dataPointer)
|
|
8002
|
+
: undefined;
|
|
8003
|
+
this.adjustLayout(layoutNode, layoutMappedData, [...currLayoutIndex, ind], [...currDataIndex, ind]);
|
|
8004
|
+
///}
|
|
8005
|
+
});
|
|
8006
|
+
}
|
|
8007
|
+
}
|
|
7905
8008
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: JsonSchemaFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
7906
8009
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: JsonSchemaFormService }); }
|
|
7907
8010
|
}
|
|
@@ -8072,8 +8175,8 @@ class AddReferenceComponent {
|
|
|
8072
8175
|
layoutIndex: this.layoutIndex().slice(0, -1),
|
|
8073
8176
|
layoutNode: this.jsf.getParentNode(this)
|
|
8074
8177
|
};
|
|
8075
|
-
return parent.layoutNode.add ||
|
|
8076
|
-
this.jsf.setArrayItemTitle(parent, this.layoutNode(), this.itemCount);
|
|
8178
|
+
return parent.layoutNode && (parent.layoutNode.add ||
|
|
8179
|
+
this.jsf.setArrayItemTitle(parent, this.layoutNode(), this.itemCount));
|
|
8077
8180
|
}
|
|
8078
8181
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AddReferenceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8079
8182
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: AddReferenceComponent, selector: "add-reference-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
@@ -8540,7 +8643,12 @@ class InputComponent {
|
|
|
8540
8643
|
this.jsf.updateValue(this, event.target.value);
|
|
8541
8644
|
}
|
|
8542
8645
|
ngOnDestroy() {
|
|
8543
|
-
|
|
8646
|
+
//needed to be done in timeout for when dynamic/condition based
|
|
8647
|
+
//titles depend on the formControls value but the formControl
|
|
8648
|
+
//is also destroyed
|
|
8649
|
+
setTimeout(() => {
|
|
8650
|
+
this.jsf.updateValue(this, null);
|
|
8651
|
+
});
|
|
8544
8652
|
}
|
|
8545
8653
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8546
8654
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: InputComponent, selector: "input-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
@@ -8648,6 +8756,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
8648
8756
|
}]
|
|
8649
8757
|
}] });
|
|
8650
8758
|
|
|
8759
|
+
// item-title.component.ts
|
|
8760
|
+
class ItemTitleComponent {
|
|
8761
|
+
constructor(jsf) {
|
|
8762
|
+
this.jsf = jsf;
|
|
8763
|
+
}
|
|
8764
|
+
ngOnChanges(changes) {
|
|
8765
|
+
this.updateTitle();
|
|
8766
|
+
}
|
|
8767
|
+
ngOnInit() {
|
|
8768
|
+
// Calculate the title once on init, or subscribe to changes here
|
|
8769
|
+
this.updateTitle();
|
|
8770
|
+
this.dataChangesSubs = this.jsf.dataChanges.subscribe((val) => {
|
|
8771
|
+
this.updateTitle();
|
|
8772
|
+
});
|
|
8773
|
+
}
|
|
8774
|
+
updateTitle() {
|
|
8775
|
+
this.title = this.jsf.setArrayItemTitle(this.ctx, this.item, this.index);
|
|
8776
|
+
}
|
|
8777
|
+
ngOnDestroy() {
|
|
8778
|
+
this.dataChangesSubs?.unsubscribe();
|
|
8779
|
+
}
|
|
8780
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ItemTitleComponent, deps: [{ token: JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8781
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ItemTitleComponent, selector: "item-title", inputs: { item: "item", index: "index", ctx: "ctx" }, usesOnChanges: true, ngImport: i0, template: `<div>{{ title }}</div>`, isInline: true }); }
|
|
8782
|
+
}
|
|
8783
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ItemTitleComponent, decorators: [{
|
|
8784
|
+
type: Component,
|
|
8785
|
+
args: [{
|
|
8786
|
+
selector: 'item-title',
|
|
8787
|
+
template: `<div>{{ title }}</div>`,
|
|
8788
|
+
standalone: false
|
|
8789
|
+
// Consider using ChangeDetectionStrategy.OnPush here for maximum efficiency
|
|
8790
|
+
}]
|
|
8791
|
+
}], ctorParameters: () => [{ type: JsonSchemaFormService }], propDecorators: { item: [{
|
|
8792
|
+
type: Input
|
|
8793
|
+
}], index: [{
|
|
8794
|
+
type: Input
|
|
8795
|
+
}], ctx: [{
|
|
8796
|
+
type: Input
|
|
8797
|
+
}] } });
|
|
8798
|
+
|
|
8651
8799
|
class MessageComponent {
|
|
8652
8800
|
constructor() {
|
|
8653
8801
|
this.jsf = inject(JsonSchemaFormService);
|
|
@@ -8726,7 +8874,10 @@ class NumberComponent {
|
|
|
8726
8874
|
this.jsf.updateValue(this, event.target.value);
|
|
8727
8875
|
}
|
|
8728
8876
|
ngOnDestroy() {
|
|
8729
|
-
|
|
8877
|
+
//see cpmments in input component
|
|
8878
|
+
setTimeout(() => {
|
|
8879
|
+
this.jsf.updateValue(this, null);
|
|
8880
|
+
});
|
|
8730
8881
|
}
|
|
8731
8882
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NumberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8732
8883
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: NumberComponent, selector: "number-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "inputControl", first: true, predicate: ["inputControl"], descendants: true }, { propertyName: "div", first: true, predicate: ["divElt"], descendants: true }], ngImport: i0, template: `
|
|
@@ -8902,8 +9053,9 @@ class TabsComponent {
|
|
|
8902
9053
|
//TODO review/test-introduced to fix dynamic titles not updating
|
|
8903
9054
|
//when their conditional linked field is destroyed
|
|
8904
9055
|
//-forces change detection!
|
|
8905
|
-
|
|
8906
|
-
|
|
9056
|
+
//-commented out, causing other issues
|
|
9057
|
+
this.dataChangesSubs = this.jsf.dataChanges.subscribe((val) => {
|
|
9058
|
+
//this.cdr.detectChanges();
|
|
8907
9059
|
});
|
|
8908
9060
|
}
|
|
8909
9061
|
select(index) {
|
|
@@ -9412,6 +9564,8 @@ class RootComponent {
|
|
|
9412
9564
|
return this._getSelectFrameworkInputsRaw(layoutItem, i);
|
|
9413
9565
|
}
|
|
9414
9566
|
}
|
|
9567
|
+
//TODO investigate-causing layout issue with layout,for now
|
|
9568
|
+
//removed from template
|
|
9415
9569
|
trackByFn(index, item) {
|
|
9416
9570
|
return item._id ?? index;
|
|
9417
9571
|
}
|
|
@@ -9463,7 +9617,7 @@ class RootComponent {
|
|
|
9463
9617
|
You must explicitly disable dragging on the main element
|
|
9464
9618
|
and re-enable it only when using the handle.
|
|
9465
9619
|
-->
|
|
9466
|
-
<div *ngFor="let layoutItem of layout(); let i = index;
|
|
9620
|
+
<div *ngFor="let layoutItem of layout(); let i = index;"
|
|
9467
9621
|
cdkDrag [cdkDragStartDelay]="{touch:1000,mouse:0}"
|
|
9468
9622
|
[cdkDragDisabled]="!isDraggable(layoutItem)"
|
|
9469
9623
|
[class.form-flex-item]="isFlexItem()"
|
|
@@ -9518,7 +9672,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
9518
9672
|
You must explicitly disable dragging on the main element
|
|
9519
9673
|
and re-enable it only when using the handle.
|
|
9520
9674
|
-->
|
|
9521
|
-
<div *ngFor="let layoutItem of layout(); let i = index;
|
|
9675
|
+
<div *ngFor="let layoutItem of layout(); let i = index;"
|
|
9522
9676
|
cdkDrag [cdkDragStartDelay]="{touch:1000,mouse:0}"
|
|
9523
9677
|
[cdkDragDisabled]="!isDraggable(layoutItem)"
|
|
9524
9678
|
[class.form-flex-item]="isFlexItem()"
|
|
@@ -10114,7 +10268,10 @@ class TextareaComponent {
|
|
|
10114
10268
|
this.jsf.updateValue(this, event.target.value);
|
|
10115
10269
|
}
|
|
10116
10270
|
ngOnDestroy() {
|
|
10117
|
-
|
|
10271
|
+
//see cpmments in input component
|
|
10272
|
+
setTimeout(() => {
|
|
10273
|
+
this.jsf.updateValue(this, null);
|
|
10274
|
+
});
|
|
10118
10275
|
}
|
|
10119
10276
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TextareaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10120
10277
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: TextareaComponent, selector: "textarea-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
@@ -10910,12 +11067,12 @@ const BASIC_WIDGETS = [
|
|
|
10910
11067
|
MessageComponent, NoneComponent, NumberComponent, RadiosComponent,
|
|
10911
11068
|
RootComponent, SectionComponent, SelectComponent, SelectFrameworkComponent,
|
|
10912
11069
|
SelectWidgetComponent, SubmitComponent, TabComponent, TabsComponent,
|
|
10913
|
-
TemplateComponent, TextareaComponent, SelectCheckboxComponent
|
|
11070
|
+
TemplateComponent, TextareaComponent, SelectCheckboxComponent, ItemTitleComponent
|
|
10914
11071
|
];
|
|
10915
11072
|
|
|
10916
11073
|
class WidgetLibraryModule {
|
|
10917
11074
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10918
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, declarations: [AddReferenceComponent, OneOfComponent, ButtonComponent, CheckboxComponent, CheckboxesComponent, FileComponent, HiddenComponent, InputComponent, MessageComponent, NoneComponent, NumberComponent, RadiosComponent, RootComponent, SectionComponent, SelectComponent, SelectFrameworkComponent, SelectWidgetComponent, SubmitComponent, TabComponent, TabsComponent, TemplateComponent, TextareaComponent, SelectCheckboxComponent, OrderableDirective, ElementAttributeDirective, StopPropagationDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule], exports: [AddReferenceComponent, OneOfComponent, ButtonComponent, CheckboxComponent, CheckboxesComponent, FileComponent, HiddenComponent, InputComponent, MessageComponent, NoneComponent, NumberComponent, RadiosComponent, RootComponent, SectionComponent, SelectComponent, SelectFrameworkComponent, SelectWidgetComponent, SubmitComponent, TabComponent, TabsComponent, TemplateComponent, TextareaComponent, SelectCheckboxComponent, OrderableDirective, ElementAttributeDirective, StopPropagationDirective] }); }
|
|
11075
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, declarations: [AddReferenceComponent, OneOfComponent, ButtonComponent, CheckboxComponent, CheckboxesComponent, FileComponent, HiddenComponent, InputComponent, MessageComponent, NoneComponent, NumberComponent, RadiosComponent, RootComponent, SectionComponent, SelectComponent, SelectFrameworkComponent, SelectWidgetComponent, SubmitComponent, TabComponent, TabsComponent, TemplateComponent, TextareaComponent, SelectCheckboxComponent, ItemTitleComponent, OrderableDirective, ElementAttributeDirective, StopPropagationDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule], exports: [AddReferenceComponent, OneOfComponent, ButtonComponent, CheckboxComponent, CheckboxesComponent, FileComponent, HiddenComponent, InputComponent, MessageComponent, NoneComponent, NumberComponent, RadiosComponent, RootComponent, SectionComponent, SelectComponent, SelectFrameworkComponent, SelectWidgetComponent, SubmitComponent, TabComponent, TabsComponent, TemplateComponent, TextareaComponent, SelectCheckboxComponent, ItemTitleComponent, OrderableDirective, ElementAttributeDirective, StopPropagationDirective] }); }
|
|
10919
11076
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule] }); }
|
|
10920
11077
|
}
|
|
10921
11078
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: WidgetLibraryModule, decorators: [{
|
|
@@ -11163,11 +11320,26 @@ class JsonSchemaFormComponent {
|
|
|
11163
11320
|
if (this.formValuesInput.indexOf('.') === -1) {
|
|
11164
11321
|
changedData = this.getInputValue(this.formValuesInput);
|
|
11165
11322
|
//this[this.formValuesInput];
|
|
11166
|
-
this.setFormValues(changedData, resetFirst);
|
|
11167
11323
|
}
|
|
11168
11324
|
else {
|
|
11169
11325
|
const [input, key] = this.formValuesInput.split('.');
|
|
11170
11326
|
changedData = this.getInputValue(input)[key];
|
|
11327
|
+
}
|
|
11328
|
+
//TODO -review if any of the the array sizes changed then the
|
|
11329
|
+
//layout array sizes need to be resynced to match
|
|
11330
|
+
//-for now jsf.adjustLayout doesnt seem to work with nested arrays
|
|
11331
|
+
//so entire form is reinited
|
|
11332
|
+
let arraySizesChanged = !compareObjectArraySizes(changedData, this.jsf.data);
|
|
11333
|
+
if (arraySizesChanged) {
|
|
11334
|
+
this.initializeForm(changedData);
|
|
11335
|
+
if (this.onChange) {
|
|
11336
|
+
this.onChange(changedData);
|
|
11337
|
+
}
|
|
11338
|
+
if (this.onTouched) {
|
|
11339
|
+
this.onTouched(changedData);
|
|
11340
|
+
}
|
|
11341
|
+
}
|
|
11342
|
+
else {
|
|
11171
11343
|
this.setFormValues(changedData, resetFirst);
|
|
11172
11344
|
}
|
|
11173
11345
|
// If anything else has changed, re-render the entire form
|
|
@@ -11192,7 +11364,7 @@ class JsonSchemaFormComponent {
|
|
|
11192
11364
|
.forEach(input => this.previousInputs[input] = this.getInputValue(input));
|
|
11193
11365
|
}
|
|
11194
11366
|
}
|
|
11195
|
-
setFormValues(formValues, resetFirst = true) {
|
|
11367
|
+
setFormValues(formValues, resetFirst = true, emitFormEvent = true, usePatch = true) {
|
|
11196
11368
|
if (formValues) {
|
|
11197
11369
|
const newFormValues = this.objectWrap ? formValues['1'] : formValues;
|
|
11198
11370
|
if (!this.jsf.formGroup) {
|
|
@@ -11200,10 +11372,15 @@ class JsonSchemaFormComponent {
|
|
|
11200
11372
|
this.activateForm();
|
|
11201
11373
|
}
|
|
11202
11374
|
else if (resetFirst) { //changed to avoid reset events
|
|
11203
|
-
this.jsf.formGroup.reset({}, { emitEvent:
|
|
11375
|
+
this.jsf.formGroup.reset({}, { emitEvent: emitFormEvent });
|
|
11204
11376
|
}
|
|
11205
11377
|
if (this.jsf.formGroup) { //changed to avoid reset events
|
|
11206
|
-
|
|
11378
|
+
if (usePatch) {
|
|
11379
|
+
this.jsf.formGroup.patchValue(newFormValues, { emitEvent: emitFormEvent });
|
|
11380
|
+
}
|
|
11381
|
+
else {
|
|
11382
|
+
this.jsf.formGroup.setValue(newFormValues, { emitEvent: emitFormEvent });
|
|
11383
|
+
}
|
|
11207
11384
|
}
|
|
11208
11385
|
if (this.onChange) {
|
|
11209
11386
|
this.onChange(newFormValues);
|
|
@@ -11215,6 +11392,7 @@ class JsonSchemaFormComponent {
|
|
|
11215
11392
|
else {
|
|
11216
11393
|
this.jsf.formGroup.reset();
|
|
11217
11394
|
}
|
|
11395
|
+
this.changeDetector.markForCheck();
|
|
11218
11396
|
}
|
|
11219
11397
|
submitForm() {
|
|
11220
11398
|
const validData = this.jsf.validData;
|
|
@@ -11735,5 +11913,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
11735
11913
|
* Generated bundle index. Do not edit.
|
|
11736
11914
|
*/
|
|
11737
11915
|
|
|
11738
|
-
export { AddReferenceComponent, BASIC_WIDGETS, ButtonComponent, CheckboxComponent, CheckboxesComponent, ElementAttributeDirective, FileComponent, Framework, FrameworkLibraryService, HiddenComponent, InputComponent, JsonPointer, JsonSchemaFormComponent, JsonSchemaFormModule, JsonSchemaFormService, JsonValidators, MessageComponent, NoneComponent, NumberComponent, OneOfComponent, OrderableDirective, RadiosComponent, RootComponent, SectionComponent, SelectCheckboxComponent, SelectComponent, SelectFrameworkComponent, SelectWidgetComponent, StopPropagationDirective, SubmitComponent, TabComponent, TabsComponent, TemplateComponent, TextareaComponent, WidgetLibraryModule, WidgetLibraryService, _executeAsyncValidators, _executeValidators, _mergeErrors, _mergeObjects, _toPromise, addClasses, buildFormGroup, buildFormGroupTemplate, buildLayout, buildLayoutFromSchema, buildSchemaFromData, buildSchemaFromLayout, buildTitleMap, checkInlineType, combineAllOf, commonItems, convertSchemaToDraft6, copy, deValidationMessages, enValidationMessages, esValidationMessages, fixRequiredArrayProperties, fixTitle, forEach, forEachCopy, formatFormData, frValidationMessages, getControl, getControlValidators, getFromSchema, getInputType, getLayoutNode, getSubSchema, getTitleMapFromOneOf, getType, hasNonNullValue, hasOwn, hasValue, inArray, isArray, isBoolean, isDate, isDefined, isEmpty, isFunction, isInputRequired, isInteger, isMap, isNumber, isObject, isObservable, isPrimitive, isPromise, isSet, isString, isType, itValidationMessages, mapLayout, mergeFilteredObject, mergeSchemas, path2ControlKey, ptValidationMessages, removeRecursiveReferences, resolveSchemaReferences, setControl, setRequiredFields, toJavaScriptType, toObservable, toSchemaType, toTitleCase, uniqueItems, updateInputOptions, xor, zhValidationMessages };
|
|
11916
|
+
export { AddReferenceComponent, BASIC_WIDGETS, ButtonComponent, CheckboxComponent, CheckboxesComponent, ElementAttributeDirective, FileComponent, Framework, FrameworkLibraryService, HiddenComponent, InputComponent, ItemTitleComponent, JsonPointer, JsonSchemaFormComponent, JsonSchemaFormModule, JsonSchemaFormService, JsonValidators, MessageComponent, NoneComponent, NumberComponent, OneOfComponent, OrderableDirective, RadiosComponent, RootComponent, SectionComponent, SelectCheckboxComponent, SelectComponent, SelectFrameworkComponent, SelectWidgetComponent, StopPropagationDirective, SubmitComponent, TabComponent, TabsComponent, TemplateComponent, TextareaComponent, WidgetLibraryModule, WidgetLibraryService, _executeAsyncValidators, _executeValidators, _mergeErrors, _mergeObjects, _toPromise, addClasses, buildFormGroup, buildFormGroupTemplate, buildLayout, buildLayoutFromSchema, buildSchemaFromData, buildSchemaFromLayout, buildTitleMap, checkInlineType, combineAllOf, commonItems, convertSchemaToDraft6, copy, deValidationMessages, enValidationMessages, esValidationMessages, fixRequiredArrayProperties, fixTitle, forEach, forEachCopy, formatFormData, frValidationMessages, getControl, getControlValidators, getFromSchema, getInputType, getLayoutNode, getSubSchema, getTitleMapFromOneOf, getType, hasNonNullValue, hasOwn, hasValue, inArray, isArray, isBoolean, isDate, isDefined, isEmpty, isFunction, isInputRequired, isInteger, isMap, isNumber, isObject, isObservable, isPrimitive, isPromise, isSet, isString, isType, itValidationMessages, mapLayout, mergeFilteredObject, mergeSchemas, path2ControlKey, ptValidationMessages, removeRecursiveReferences, resolveSchemaReferences, setControl, setRequiredFields, toJavaScriptType, toObservable, toSchemaType, toTitleCase, uniqueItems, updateInputOptions, xor, zhValidationMessages };
|
|
11739
11917
|
//# sourceMappingURL=ng-formworks-core.mjs.map
|