@ng-formworks/core 18.6.7 → 18.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/framework-library/framework-library.service.mjs +3 -3
- package/esm2022/lib/framework-library/framework.mjs +3 -3
- package/esm2022/lib/framework-library/no-framework.component.mjs +3 -3
- package/esm2022/lib/framework-library/no-framework.module.mjs +4 -4
- package/esm2022/lib/framework-library/no.framework.mjs +3 -3
- package/esm2022/lib/json-schema-form.component.mjs +30 -9
- package/esm2022/lib/json-schema-form.module.mjs +4 -4
- package/esm2022/lib/json-schema-form.service.mjs +65 -7
- package/esm2022/lib/shared/json-schema.functions.mjs +2 -9
- package/esm2022/lib/shared/jsonpointer.functions.mjs +3 -3
- 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 +6 -6
- package/esm2022/lib/widget-library/button.component.mjs +3 -3
- package/esm2022/lib/widget-library/checkbox.component.mjs +3 -3
- package/esm2022/lib/widget-library/checkboxes.component.mjs +3 -3
- package/esm2022/lib/widget-library/element-attribute.directive.mjs +3 -3
- package/esm2022/lib/widget-library/file.component.mjs +3 -3
- package/esm2022/lib/widget-library/hidden.component.mjs +3 -3
- package/esm2022/lib/widget-library/index.mjs +4 -2
- package/esm2022/lib/widget-library/input.component.mjs +10 -5
- package/esm2022/lib/widget-library/item-title.component.mjs +43 -0
- package/esm2022/lib/widget-library/message.component.mjs +3 -3
- package/esm2022/lib/widget-library/none.component.mjs +3 -3
- package/esm2022/lib/widget-library/number.component.mjs +8 -5
- package/esm2022/lib/widget-library/one-of.component.mjs +3 -3
- package/esm2022/lib/widget-library/orderable.directive.mjs +3 -3
- package/esm2022/lib/widget-library/radios.component.mjs +3 -3
- package/esm2022/lib/widget-library/root.component.mjs +15 -7
- package/esm2022/lib/widget-library/section.component.mjs +3 -3
- package/esm2022/lib/widget-library/select-framework.component.mjs +3 -3
- package/esm2022/lib/widget-library/select-widget.component.mjs +3 -3
- package/esm2022/lib/widget-library/select.component.mjs +3 -3
- package/esm2022/lib/widget-library/selectcheckbox.component.mjs +3 -3
- package/esm2022/lib/widget-library/stop-propagation.directive.mjs +3 -3
- package/esm2022/lib/widget-library/submit.component.mjs +3 -3
- package/esm2022/lib/widget-library/tab.component.mjs +3 -3
- package/esm2022/lib/widget-library/tabs.component.mjs +18 -5
- package/esm2022/lib/widget-library/template.component.mjs +3 -3
- package/esm2022/lib/widget-library/textarea.component.mjs +8 -5
- package/esm2022/lib/widget-library/widget-library.module.mjs +6 -5
- package/esm2022/lib/widget-library/widget-library.service.mjs +3 -3
- package/fesm2022/ng-formworks-core.mjs +338 -142
- 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/root.component.d.ts +1 -0
- package/lib/widget-library/tabs.component.d.ts +6 -2
- package/lib/widget-library/widget-library.module.d.ts +8 -7
- package/package.json +1 -1
|
@@ -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, isObject as isObject$1, pick, 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';
|
|
@@ -29,10 +29,10 @@ class Framework {
|
|
|
29
29
|
this.stylesheets = [];
|
|
30
30
|
this.scripts = [];
|
|
31
31
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
33
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Framework, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
33
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Framework }); }
|
|
34
34
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: Framework, decorators: [{
|
|
36
36
|
type: Injectable
|
|
37
37
|
}] });
|
|
38
38
|
|
|
@@ -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
|
/**
|
|
@@ -2473,10 +2516,10 @@ class JsonPointer {
|
|
|
2473
2516
|
}
|
|
2474
2517
|
console.error('parseObjectPath error: Input object path must be a string.');
|
|
2475
2518
|
}
|
|
2476
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
2477
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
2519
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonPointer, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2520
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonPointer }); }
|
|
2478
2521
|
}
|
|
2479
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
2522
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonPointer, decorators: [{
|
|
2480
2523
|
type: Injectable
|
|
2481
2524
|
}] });
|
|
2482
2525
|
|
|
@@ -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) {
|
|
@@ -6317,11 +6353,21 @@ function fixNestedArrayLayout(options) {
|
|
|
6317
6353
|
: cloneDeep(builtLayout.items[0]); //copy first
|
|
6318
6354
|
newItem._id = uniqueId("new_");
|
|
6319
6355
|
builtLayout.items.unshift(newItem);
|
|
6356
|
+
// builtLayout.items=[newItem, ...builtLayout.items];
|
|
6320
6357
|
}
|
|
6321
|
-
|
|
6322
|
-
|
|
6358
|
+
}
|
|
6359
|
+
else if (numActualItems > numDataItems) {
|
|
6360
|
+
let numItemsToRemove = numActualItems - numDataItems;
|
|
6361
|
+
for (let i = 0; i < numItemsToRemove; i++) {
|
|
6362
|
+
builtLayout.items.pop();
|
|
6363
|
+
//builtLayout.items=builtLayout.items.slice(0, -1);
|
|
6364
|
+
//builtLayout.items.slice(0, -1);
|
|
6323
6365
|
}
|
|
6324
6366
|
}
|
|
6367
|
+
if (builtLayout.options.listItems) {
|
|
6368
|
+
builtLayout.options.listItems = numDataItems;
|
|
6369
|
+
}
|
|
6370
|
+
//builtLayout.items=[...builtLayout.items];
|
|
6325
6371
|
indices[builtLayout.dataPointer] = indices[builtLayout.dataPointer] || -1;
|
|
6326
6372
|
indexPos++;
|
|
6327
6373
|
builtLayout.items.forEach((item, index) => {
|
|
@@ -7693,7 +7739,7 @@ class JsonSchemaFormService {
|
|
|
7693
7739
|
// Set values of any related controls in copyValueTo array
|
|
7694
7740
|
if (isArray(ctx.options.copyValueTo)) {
|
|
7695
7741
|
for (const item of ctx.options.copyValueTo) {
|
|
7696
|
-
const targetControl = getControl(this.formGroup, item);
|
|
7742
|
+
const targetControl = this.formGroup && getControl(this.formGroup, item);
|
|
7697
7743
|
if (isObject(targetControl) &&
|
|
7698
7744
|
typeof targetControl.setValue === 'function') {
|
|
7699
7745
|
targetControl.setValue(value);
|
|
@@ -7768,7 +7814,8 @@ class JsonSchemaFormService {
|
|
|
7768
7814
|
getFormControlValue(ctx) {
|
|
7769
7815
|
if (!ctx || !ctx.layoutNode ||
|
|
7770
7816
|
!isDefined(ctx.layoutNode().dataPointer) ||
|
|
7771
|
-
ctx.layoutNode().type === '$ref'
|
|
7817
|
+
ctx.layoutNode().type === '$ref'
|
|
7818
|
+
|| this.formGroup == null) {
|
|
7772
7819
|
return null;
|
|
7773
7820
|
}
|
|
7774
7821
|
const schemaPointer = ctx.layoutNode()?.isITEItem ? ctx.layoutNode()?.schemaPointer : null;
|
|
@@ -7778,7 +7825,7 @@ class JsonSchemaFormService {
|
|
|
7778
7825
|
return control ? control.value : null;
|
|
7779
7826
|
}
|
|
7780
7827
|
getFormControlGroup(ctx) {
|
|
7781
|
-
if (!ctx || !ctx.layoutNode || !isDefined(ctx.layoutNode().dataPointer)) {
|
|
7828
|
+
if (!ctx || !ctx.layoutNode || !isDefined(ctx.layoutNode().dataPointer) || this.formGroup == null) {
|
|
7782
7829
|
return null;
|
|
7783
7830
|
}
|
|
7784
7831
|
const schemaPointer = ctx.layoutNode()?.isITEItem ? ctx.layoutNode()?.schemaPointer : null;
|
|
@@ -7906,10 +7953,66 @@ class JsonSchemaFormService {
|
|
|
7906
7953
|
JsonPointer.remove(this.layout, this.getLayoutPointer(ctx));
|
|
7907
7954
|
return true;
|
|
7908
7955
|
}
|
|
7909
|
-
|
|
7910
|
-
|
|
7956
|
+
//TODO fix-doesnt seem to work for nested array
|
|
7957
|
+
adjustLayout(layout, newData, currLayoutIndex = [0], currDataIndex = []) {
|
|
7958
|
+
const createWidgetCtx = (layoutNode, layoutIndex, dataIndex) => {
|
|
7959
|
+
return {
|
|
7960
|
+
layoutNode: () => { return layoutNode; },
|
|
7961
|
+
layoutIndex: () => { return layoutIndex; },
|
|
7962
|
+
dataIndex: () => { return dataIndex; },
|
|
7963
|
+
};
|
|
7964
|
+
};
|
|
7965
|
+
// console.log(`adjustLayout currLayoutIndex:${currLayoutIndex}`);
|
|
7966
|
+
if (layout.items && _isArray(newData)) {
|
|
7967
|
+
let ctx = createWidgetCtx({
|
|
7968
|
+
...layout,
|
|
7969
|
+
$ref: layout.$ref || layout.items[0]?.dataPointer,
|
|
7970
|
+
dataPointer: layout.items[0]?.dataPointer,
|
|
7971
|
+
arrayItem: true,
|
|
7972
|
+
arrayItemType: "list"
|
|
7973
|
+
}, [...currLayoutIndex.slice(0, currLayoutIndex.length - 1), layout.items.length - 1], [...currDataIndex.slice(0, currDataIndex.length - 1), layout.items.length - 1]);
|
|
7974
|
+
const lengthDifference = newData.length - layout.items.filter(litem => {
|
|
7975
|
+
return litem?.type != "$ref";
|
|
7976
|
+
}).length;
|
|
7977
|
+
if (lengthDifference > 0) {
|
|
7978
|
+
// Add missing controls if newData has more items
|
|
7979
|
+
for (let i = 0; i < lengthDifference; i++) {
|
|
7980
|
+
this.addItem(ctx);
|
|
7981
|
+
}
|
|
7982
|
+
}
|
|
7983
|
+
else if (lengthDifference < 0) {
|
|
7984
|
+
let numToRemove = layout.items.filter(litem => {
|
|
7985
|
+
return litem?.type != "$ref";
|
|
7986
|
+
})
|
|
7987
|
+
.length - newData.length;
|
|
7988
|
+
// Remove extra controls if newData has fewer items
|
|
7989
|
+
for (let i = 0; i < numToRemove; i++) {
|
|
7990
|
+
let oldDataIndex = ctx.dataIndex();
|
|
7991
|
+
let lastDataIndex = oldDataIndex[oldDataIndex.length - 1];
|
|
7992
|
+
let updatedLayoutIndex = [...currLayoutIndex.slice(0, currLayoutIndex.length - 1), 0];
|
|
7993
|
+
let updatedDataIndex = [...oldDataIndex.slice(0, oldDataIndex.length - 1), 0];
|
|
7994
|
+
ctx = createWidgetCtx(ctx.layoutNode(), updatedLayoutIndex, updatedDataIndex);
|
|
7995
|
+
let removed = this.removeItem(ctx);
|
|
7996
|
+
// if(removed){
|
|
7997
|
+
//}
|
|
7998
|
+
}
|
|
7999
|
+
}
|
|
8000
|
+
return;
|
|
8001
|
+
}
|
|
8002
|
+
if (_isArray(layout)) {
|
|
8003
|
+
layout.forEach((layoutNode, ind) => {
|
|
8004
|
+
//if(layoutNode.items){
|
|
8005
|
+
let layoutMappedData = layoutNode.dataPointer ? JsonPointer.get(newData, layoutNode.dataPointer)
|
|
8006
|
+
: undefined;
|
|
8007
|
+
this.adjustLayout(layoutNode, layoutMappedData, [...currLayoutIndex, ind], [...currDataIndex, ind]);
|
|
8008
|
+
///}
|
|
8009
|
+
});
|
|
8010
|
+
}
|
|
8011
|
+
}
|
|
8012
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8013
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormService }); }
|
|
7911
8014
|
}
|
|
7912
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8015
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormService, decorators: [{
|
|
7913
8016
|
type: Injectable
|
|
7914
8017
|
}], ctorParameters: () => [] });
|
|
7915
8018
|
|
|
@@ -7940,10 +8043,10 @@ class SelectWidgetComponent {
|
|
|
7940
8043
|
}
|
|
7941
8044
|
}
|
|
7942
8045
|
}
|
|
7943
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
7944
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.
|
|
8046
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectWidgetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8047
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.14", type: SelectWidgetComponent, selector: "select-widget-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: "widgetContainer", first: true, predicate: ["widgetContainer"], descendants: true, read: ViewContainerRef, isSignal: true }], usesOnChanges: true, ngImport: i0, template: `<div #widgetContainer></div>`, isInline: true }); }
|
|
7945
8048
|
}
|
|
7946
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8049
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectWidgetComponent, decorators: [{
|
|
7947
8050
|
type: Component,
|
|
7948
8051
|
args: [{
|
|
7949
8052
|
// tslint:disable-next-line:component-selector
|
|
@@ -7958,10 +8061,10 @@ class NoFrameworkComponent {
|
|
|
7958
8061
|
this.layoutIndex = input(undefined);
|
|
7959
8062
|
this.dataIndex = input(undefined);
|
|
7960
8063
|
}
|
|
7961
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
7962
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8064
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoFrameworkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8065
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: NoFrameworkComponent, selector: "no-framework", 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: "<select-widget-widget [dataIndex]=\"dataIndex()\" [layoutIndex]=\"layoutIndex()\" [layoutNode]=\"layoutNode()\">\r\n</select-widget-widget>", dependencies: [{ kind: "component", type: SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
|
|
7963
8066
|
}
|
|
7964
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8067
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoFrameworkComponent, decorators: [{
|
|
7965
8068
|
type: Component,
|
|
7966
8069
|
args: [{ selector: 'no-framework', template: "<select-widget-widget [dataIndex]=\"dataIndex()\" [layoutIndex]=\"layoutIndex()\" [layoutNode]=\"layoutNode()\">\r\n</select-widget-widget>" }]
|
|
7967
8070
|
}] });
|
|
@@ -7974,10 +8077,10 @@ class NoFramework extends Framework {
|
|
|
7974
8077
|
this.text = 'None (plain HTML)';
|
|
7975
8078
|
this.framework = NoFrameworkComponent;
|
|
7976
8079
|
}
|
|
7977
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
7978
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
8080
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8081
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoFramework }); }
|
|
7979
8082
|
}
|
|
7980
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8083
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoFramework, decorators: [{
|
|
7981
8084
|
type: Injectable
|
|
7982
8085
|
}] });
|
|
7983
8086
|
|
|
@@ -7999,10 +8102,10 @@ class ElementAttributeDirective {
|
|
|
7999
8102
|
}
|
|
8000
8103
|
}
|
|
8001
8104
|
}
|
|
8002
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8003
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
8105
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ElementAttributeDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8106
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ElementAttributeDirective, selector: "[attributes]", inputs: { attributes: "attributes" }, usesOnChanges: true, ngImport: i0 }); }
|
|
8004
8107
|
}
|
|
8005
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ElementAttributeDirective, decorators: [{
|
|
8006
8109
|
type: Directive,
|
|
8007
8110
|
args: [{
|
|
8008
8111
|
selector: '[attributes]',
|
|
@@ -8039,10 +8142,10 @@ class StopPropagationDirective {
|
|
|
8039
8142
|
// Call each stored unsubscribe function to clean up listeners
|
|
8040
8143
|
this.unsubscribeFunctions.forEach(unsub => unsub());
|
|
8041
8144
|
}
|
|
8042
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8043
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
8145
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StopPropagationDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8146
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: StopPropagationDirective, selector: "[appStopPropagation]", inputs: { events: ["appStopPropagation", "events"] }, ngImport: i0 }); }
|
|
8044
8147
|
}
|
|
8045
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8148
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StopPropagationDirective, decorators: [{
|
|
8046
8149
|
type: Directive,
|
|
8047
8150
|
args: [{
|
|
8048
8151
|
selector: '[appStopPropagation]', standalone: false
|
|
@@ -8076,11 +8179,11 @@ class AddReferenceComponent {
|
|
|
8076
8179
|
layoutIndex: this.layoutIndex().slice(0, -1),
|
|
8077
8180
|
layoutNode: this.jsf.getParentNode(this)
|
|
8078
8181
|
};
|
|
8079
|
-
return parent.layoutNode.add ||
|
|
8080
|
-
this.jsf.setArrayItemTitle(parent, this.layoutNode(), this.itemCount);
|
|
8182
|
+
return parent.layoutNode && (parent.layoutNode.add ||
|
|
8183
|
+
this.jsf.setArrayItemTitle(parent, this.layoutNode(), this.itemCount));
|
|
8081
8184
|
}
|
|
8082
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8083
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8185
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AddReferenceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8186
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", 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: `
|
|
8084
8187
|
<section [class]="options?.htmlClass || ''" align="end">
|
|
8085
8188
|
<button *ngIf="showAddButton"
|
|
8086
8189
|
[class]="options?.fieldHtmlClass || ''"
|
|
@@ -8094,7 +8197,7 @@ class AddReferenceComponent {
|
|
|
8094
8197
|
</button>
|
|
8095
8198
|
</section>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: StopPropagationDirective, selector: "[appStopPropagation]", inputs: ["appStopPropagation"] }], changeDetection: i0.ChangeDetectionStrategy.Default }); }
|
|
8096
8199
|
}
|
|
8097
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8200
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AddReferenceComponent, decorators: [{
|
|
8098
8201
|
type: Component,
|
|
8099
8202
|
args: [{
|
|
8100
8203
|
// tslint:disable-next-line:component-selector
|
|
@@ -8140,8 +8243,8 @@ class ButtonComponent {
|
|
|
8140
8243
|
ngOnDestroy() {
|
|
8141
8244
|
this.jsf.updateValue(this, null);
|
|
8142
8245
|
}
|
|
8143
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8144
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8246
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8247
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: ButtonComponent, selector: "button-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: `
|
|
8145
8248
|
<div
|
|
8146
8249
|
[class]="options?.htmlClass || ''">
|
|
8147
8250
|
<button
|
|
@@ -8161,7 +8264,7 @@ class ButtonComponent {
|
|
|
8161
8264
|
</button>
|
|
8162
8265
|
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: StopPropagationDirective, selector: "[appStopPropagation]", inputs: ["appStopPropagation"] }] }); }
|
|
8163
8266
|
}
|
|
8164
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8267
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
8165
8268
|
type: Component,
|
|
8166
8269
|
args: [{
|
|
8167
8270
|
// tslint:disable-next-line:component-selector
|
|
@@ -8222,8 +8325,8 @@ class CheckboxComponent {
|
|
|
8222
8325
|
ngOnDestroy() {
|
|
8223
8326
|
this.jsf.updateValue(this, null);
|
|
8224
8327
|
}
|
|
8225
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8226
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8328
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8329
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CheckboxComponent, selector: "checkbox-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: `
|
|
8227
8330
|
<label
|
|
8228
8331
|
[attr.for]="'control' + layoutNode()?._id"
|
|
8229
8332
|
[class]="options?.itemLabelHtmlClass || ''">
|
|
@@ -8255,7 +8358,7 @@ class CheckboxComponent {
|
|
|
8255
8358
|
[innerHTML]="options?.title"></span>
|
|
8256
8359
|
</label>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
|
|
8257
8360
|
}
|
|
8258
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8361
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CheckboxComponent, decorators: [{
|
|
8259
8362
|
type: Component,
|
|
8260
8363
|
args: [{
|
|
8261
8364
|
// tslint:disable-next-line:component-selector
|
|
@@ -8333,8 +8436,8 @@ class CheckboxesComponent {
|
|
|
8333
8436
|
this.formControl.reset(nullVal);
|
|
8334
8437
|
this.controlValue = null;
|
|
8335
8438
|
}
|
|
8336
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8337
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8439
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CheckboxesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8440
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CheckboxesComponent, selector: "checkboxes-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: `
|
|
8338
8441
|
<label *ngIf="options?.title"
|
|
8339
8442
|
[class]="options?.labelHtmlClass || ''"
|
|
8340
8443
|
[style.display]="options?.notitle ? 'none' : ''"
|
|
@@ -8384,7 +8487,7 @@ class CheckboxesComponent {
|
|
|
8384
8487
|
</div>
|
|
8385
8488
|
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
8386
8489
|
}
|
|
8387
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8490
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CheckboxesComponent, decorators: [{
|
|
8388
8491
|
type: Component,
|
|
8389
8492
|
args: [{
|
|
8390
8493
|
// tslint:disable-next-line:component-selector
|
|
@@ -8461,10 +8564,10 @@ class FileComponent {
|
|
|
8461
8564
|
ngOnDestroy() {
|
|
8462
8565
|
this.jsf.updateValue(this, null);
|
|
8463
8566
|
}
|
|
8464
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8465
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8567
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8568
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: FileComponent, selector: "file-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: ``, isInline: true }); }
|
|
8466
8569
|
}
|
|
8467
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8570
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FileComponent, decorators: [{
|
|
8468
8571
|
type: Component,
|
|
8469
8572
|
args: [{
|
|
8470
8573
|
// tslint:disable-next-line:component-selector
|
|
@@ -8488,8 +8591,8 @@ class HiddenComponent {
|
|
|
8488
8591
|
ngOnDestroy() {
|
|
8489
8592
|
this.jsf.updateValue(this, null);
|
|
8490
8593
|
}
|
|
8491
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8492
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8594
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HiddenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8595
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: HiddenComponent, selector: "hidden-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: `
|
|
8493
8596
|
<input *ngIf="boundControl"
|
|
8494
8597
|
[formControl]="formControl"
|
|
8495
8598
|
[id]="'control' + layoutNode()?._id"
|
|
@@ -8502,7 +8605,7 @@ class HiddenComponent {
|
|
|
8502
8605
|
type="hidden"
|
|
8503
8606
|
[value]="controlValue">`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
|
|
8504
8607
|
}
|
|
8505
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8608
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HiddenComponent, decorators: [{
|
|
8506
8609
|
type: Component,
|
|
8507
8610
|
args: [{
|
|
8508
8611
|
// tslint:disable-next-line:component-selector
|
|
@@ -8544,10 +8647,15 @@ class InputComponent {
|
|
|
8544
8647
|
this.jsf.updateValue(this, event.target.value);
|
|
8545
8648
|
}
|
|
8546
8649
|
ngOnDestroy() {
|
|
8547
|
-
|
|
8650
|
+
//needed to be done in timeout for when dynamic/condition based
|
|
8651
|
+
//titles depend on the formControls value but the formControl
|
|
8652
|
+
//is also destroyed
|
|
8653
|
+
setTimeout(() => {
|
|
8654
|
+
this.jsf.updateValue(this, null);
|
|
8655
|
+
});
|
|
8548
8656
|
}
|
|
8549
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8550
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8657
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8658
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", 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: `
|
|
8551
8659
|
<div [class]="options?.htmlClass || ''" >
|
|
8552
8660
|
<label *ngIf="options?.title"
|
|
8553
8661
|
[attr.for]="'control' + layoutNode()?._id"
|
|
@@ -8596,7 +8704,7 @@ class InputComponent {
|
|
|
8596
8704
|
</datalist>
|
|
8597
8705
|
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: ElementAttributeDirective, selector: "[attributes]", inputs: ["attributes"] }, { kind: "directive", type: StopPropagationDirective, selector: "[appStopPropagation]", inputs: ["appStopPropagation"] }] }); }
|
|
8598
8706
|
}
|
|
8599
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8707
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: InputComponent, decorators: [{
|
|
8600
8708
|
type: Component,
|
|
8601
8709
|
args: [{
|
|
8602
8710
|
// tslint:disable-next-line:component-selector
|
|
@@ -8652,6 +8760,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
8652
8760
|
}]
|
|
8653
8761
|
}] });
|
|
8654
8762
|
|
|
8763
|
+
// item-title.component.ts
|
|
8764
|
+
class ItemTitleComponent {
|
|
8765
|
+
constructor(jsf) {
|
|
8766
|
+
this.jsf = jsf;
|
|
8767
|
+
}
|
|
8768
|
+
ngOnChanges(changes) {
|
|
8769
|
+
this.updateTitle();
|
|
8770
|
+
}
|
|
8771
|
+
ngOnInit() {
|
|
8772
|
+
// Calculate the title once on init, or subscribe to changes here
|
|
8773
|
+
this.updateTitle();
|
|
8774
|
+
this.dataChangesSubs = this.jsf.dataChanges.subscribe((val) => {
|
|
8775
|
+
this.updateTitle();
|
|
8776
|
+
});
|
|
8777
|
+
}
|
|
8778
|
+
updateTitle() {
|
|
8779
|
+
this.title = this.jsf.setArrayItemTitle(this.ctx, this.item, this.index);
|
|
8780
|
+
}
|
|
8781
|
+
ngOnDestroy() {
|
|
8782
|
+
this.dataChangesSubs?.unsubscribe();
|
|
8783
|
+
}
|
|
8784
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ItemTitleComponent, deps: [{ token: JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8785
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ItemTitleComponent, selector: "item-title", inputs: { item: "item", index: "index", ctx: "ctx" }, usesOnChanges: true, ngImport: i0, template: `<div>{{ title }}</div>`, isInline: true }); }
|
|
8786
|
+
}
|
|
8787
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ItemTitleComponent, decorators: [{
|
|
8788
|
+
type: Component,
|
|
8789
|
+
args: [{
|
|
8790
|
+
selector: 'item-title',
|
|
8791
|
+
template: `<div>{{ title }}</div>`,
|
|
8792
|
+
standalone: false
|
|
8793
|
+
// Consider using ChangeDetectionStrategy.OnPush here for maximum efficiency
|
|
8794
|
+
}]
|
|
8795
|
+
}], ctorParameters: () => [{ type: JsonSchemaFormService }], propDecorators: { item: [{
|
|
8796
|
+
type: Input
|
|
8797
|
+
}], index: [{
|
|
8798
|
+
type: Input
|
|
8799
|
+
}], ctx: [{
|
|
8800
|
+
type: Input
|
|
8801
|
+
}] } });
|
|
8802
|
+
|
|
8655
8803
|
class MessageComponent {
|
|
8656
8804
|
constructor() {
|
|
8657
8805
|
this.jsf = inject(JsonSchemaFormService);
|
|
@@ -8665,13 +8813,13 @@ class MessageComponent {
|
|
|
8665
8813
|
this.message = this.options.help || this.options.helpvalue ||
|
|
8666
8814
|
this.options.msg || this.options.message;
|
|
8667
8815
|
}
|
|
8668
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8669
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8816
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8817
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: MessageComponent, selector: "message-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: `
|
|
8670
8818
|
<span *ngIf="message"
|
|
8671
8819
|
[class]="options?.labelHtmlClass || ''"
|
|
8672
8820
|
[innerHTML]="message"></span>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
8673
8821
|
}
|
|
8674
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8822
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MessageComponent, decorators: [{
|
|
8675
8823
|
type: Component,
|
|
8676
8824
|
args: [{
|
|
8677
8825
|
// tslint:disable-next-line:component-selector
|
|
@@ -8689,10 +8837,10 @@ class NoneComponent {
|
|
|
8689
8837
|
this.layoutIndex = input(undefined);
|
|
8690
8838
|
this.dataIndex = input(undefined);
|
|
8691
8839
|
}
|
|
8692
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8693
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8840
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8841
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: NoneComponent, selector: "none-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: ``, isInline: true }); }
|
|
8694
8842
|
}
|
|
8695
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8843
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoneComponent, decorators: [{
|
|
8696
8844
|
type: Component,
|
|
8697
8845
|
args: [{
|
|
8698
8846
|
// tslint:disable-next-line:component-selector
|
|
@@ -8730,10 +8878,13 @@ class NumberComponent {
|
|
|
8730
8878
|
this.jsf.updateValue(this, event.target.value);
|
|
8731
8879
|
}
|
|
8732
8880
|
ngOnDestroy() {
|
|
8733
|
-
|
|
8881
|
+
//see cpmments in input component
|
|
8882
|
+
setTimeout(() => {
|
|
8883
|
+
this.jsf.updateValue(this, null);
|
|
8884
|
+
});
|
|
8734
8885
|
}
|
|
8735
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8736
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
8886
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8887
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", 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: `
|
|
8737
8888
|
<div #divElt [class]="options?.htmlClass || ''" >
|
|
8738
8889
|
<label *ngIf="options?.title"
|
|
8739
8890
|
[attr.for]="'control' + layoutNode()?._id"
|
|
@@ -8781,7 +8932,7 @@ class NumberComponent {
|
|
|
8781
8932
|
<span *ngIf="layoutNode()?.type === 'range'" [innerHTML]="controlValue"></span>
|
|
8782
8933
|
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: ElementAttributeDirective, selector: "[attributes]", inputs: ["attributes"] }, { kind: "directive", type: StopPropagationDirective, selector: "[appStopPropagation]", inputs: ["appStopPropagation"] }] }); }
|
|
8783
8934
|
}
|
|
8784
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
8935
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberComponent, decorators: [{
|
|
8785
8936
|
type: Component,
|
|
8786
8937
|
args: [{
|
|
8787
8938
|
// tslint:disable-next-line:component-selector
|
|
@@ -8874,10 +9025,10 @@ class SelectFrameworkComponent {
|
|
|
8874
9025
|
//this.changeDetectorRef.detectChanges();
|
|
8875
9026
|
}
|
|
8876
9027
|
}
|
|
8877
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
8878
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.
|
|
9028
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectFrameworkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9029
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.14", type: SelectFrameworkComponent, selector: "select-framework-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: "widgetContainer", first: true, predicate: ["widgetContainer"], descendants: true, read: ViewContainerRef, isSignal: true }], usesOnChanges: true, ngImport: i0, template: `<div #widgetContainer></div>`, isInline: true }); }
|
|
8879
9030
|
}
|
|
8880
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
9031
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectFrameworkComponent, decorators: [{
|
|
8881
9032
|
type: Component,
|
|
8882
9033
|
args: [{
|
|
8883
9034
|
// tslint:disable-next-line:component-selector
|
|
@@ -8889,6 +9040,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
8889
9040
|
class TabsComponent {
|
|
8890
9041
|
constructor() {
|
|
8891
9042
|
this.jsf = inject(JsonSchemaFormService);
|
|
9043
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
8892
9044
|
this.selectedItem = 0;
|
|
8893
9045
|
this.showAddTab = true;
|
|
8894
9046
|
this.layoutNode = input(undefined);
|
|
@@ -8902,6 +9054,13 @@ class TabsComponent {
|
|
|
8902
9054
|
}
|
|
8903
9055
|
this.itemCount = this.layoutNode().items.length - 1;
|
|
8904
9056
|
this.updateControl();
|
|
9057
|
+
//TODO review/test-introduced to fix dynamic titles not updating
|
|
9058
|
+
//when their conditional linked field is destroyed
|
|
9059
|
+
//-forces change detection!
|
|
9060
|
+
//-commented out, causing other issues
|
|
9061
|
+
this.dataChangesSubs = this.jsf.dataChanges.subscribe((val) => {
|
|
9062
|
+
//this.cdr.detectChanges();
|
|
9063
|
+
});
|
|
8905
9064
|
}
|
|
8906
9065
|
select(index) {
|
|
8907
9066
|
const layoutNode = this.layoutNode();
|
|
@@ -8926,8 +9085,11 @@ class TabsComponent {
|
|
|
8926
9085
|
setTabTitle(item, index) {
|
|
8927
9086
|
return this.jsf.setArrayItemTitle(this, item, index);
|
|
8928
9087
|
}
|
|
8929
|
-
|
|
8930
|
-
|
|
9088
|
+
ngOnDestroy() {
|
|
9089
|
+
this.dataChangesSubs?.unsubscribe();
|
|
9090
|
+
}
|
|
9091
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9092
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: TabsComponent, selector: "tabs-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: `
|
|
8931
9093
|
<ul
|
|
8932
9094
|
[class]="options?.labelHtmlClass || ''">
|
|
8933
9095
|
<li *ngFor="let item of layoutNode()?.items; let i = index"
|
|
@@ -8949,6 +9111,7 @@ class TabsComponent {
|
|
|
8949
9111
|
/>
|
|
8950
9112
|
{{setTabTitle(item, i)}}
|
|
8951
9113
|
</a>
|
|
9114
|
+
|
|
8952
9115
|
</li>
|
|
8953
9116
|
</ul>
|
|
8954
9117
|
|
|
@@ -8979,7 +9142,7 @@ class TabsComponent {
|
|
|
8979
9142
|
</ng-container>
|
|
8980
9143
|
</div>`, isInline: true, styles: ["a{cursor:pointer}.ngf-hidden{display:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
|
|
8981
9144
|
}
|
|
8982
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
9145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabsComponent, decorators: [{
|
|
8983
9146
|
type: Component,
|
|
8984
9147
|
args: [{ selector: 'tabs-widget', template: `
|
|
8985
9148
|
<ul
|
|
@@ -9003,6 +9166,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
9003
9166
|
/>
|
|
9004
9167
|
{{setTabTitle(item, i)}}
|
|
9005
9168
|
</a>
|
|
9169
|
+
|
|
9006
9170
|
</li>
|
|
9007
9171
|
</ul>
|
|
9008
9172
|
|
|
@@ -9123,14 +9287,14 @@ class OneOfComponent {
|
|
|
9123
9287
|
ngOnDestroy() {
|
|
9124
9288
|
//this.jsf.updateValue(this, null);
|
|
9125
9289
|
}
|
|
9126
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
9127
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
9290
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: OneOfComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9291
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: OneOfComponent, selector: "one-of-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: `<h4>{{this.options?.description}}</h4>
|
|
9128
9292
|
<tabs-widget #tabs [layoutNode]="layoutNode()"
|
|
9129
9293
|
[layoutIndex]="layoutIndex()"
|
|
9130
9294
|
[dataIndex]="dataIndex()" >
|
|
9131
9295
|
</tabs-widget>`, isInline: true, dependencies: [{ kind: "component", type: TabsComponent, selector: "tabs-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
|
|
9132
9296
|
}
|
|
9133
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
9297
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: OneOfComponent, decorators: [{
|
|
9134
9298
|
type: Component,
|
|
9135
9299
|
args: [{
|
|
9136
9300
|
// tslint:disable-next-line:component-selector
|
|
@@ -9171,8 +9335,8 @@ class RadiosComponent {
|
|
|
9171
9335
|
ngOnDestroy() {
|
|
9172
9336
|
this.jsf.updateValue(this, null);
|
|
9173
9337
|
}
|
|
9174
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
9175
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
9338
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RadiosComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9339
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: RadiosComponent, selector: "radios-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: `
|
|
9176
9340
|
<label *ngIf="options?.title"
|
|
9177
9341
|
[attr.for]="'control' + layoutNode()?._id"
|
|
9178
9342
|
[class]="options?.labelHtmlClass || ''"
|
|
@@ -9229,7 +9393,7 @@ class RadiosComponent {
|
|
|
9229
9393
|
</div>
|
|
9230
9394
|
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
9231
9395
|
}
|
|
9232
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
9396
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RadiosComponent, decorators: [{
|
|
9233
9397
|
type: Component,
|
|
9234
9398
|
args: [{
|
|
9235
9399
|
// tslint:disable-next-line:component-selector
|
|
@@ -9296,6 +9460,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
9296
9460
|
class RootComponent {
|
|
9297
9461
|
constructor() {
|
|
9298
9462
|
this.jsf = inject(JsonSchemaFormService);
|
|
9463
|
+
this.cdr = inject(ChangeDetectorRef);
|
|
9299
9464
|
this.dataIndex = input(undefined);
|
|
9300
9465
|
this.layoutIndex = input(undefined);
|
|
9301
9466
|
this.layout = input(undefined);
|
|
@@ -9403,6 +9568,8 @@ class RootComponent {
|
|
|
9403
9568
|
return this._getSelectFrameworkInputsRaw(layoutItem, i);
|
|
9404
9569
|
}
|
|
9405
9570
|
}
|
|
9571
|
+
//TODO investigate-causing layout issue with layout,for now
|
|
9572
|
+
//removed from template
|
|
9406
9573
|
trackByFn(index, item) {
|
|
9407
9574
|
return item._id ?? index;
|
|
9408
9575
|
}
|
|
@@ -9418,6 +9585,7 @@ class RootComponent {
|
|
|
9418
9585
|
if (changes['layout'] || changes['dataIndex'] || changes['layoutIndex']) {
|
|
9419
9586
|
// Clear the entire cache of the memoized function
|
|
9420
9587
|
this._getSelectFrameworkInputsMemoized.cache.clear();
|
|
9588
|
+
this.cdr.markForCheck();
|
|
9421
9589
|
}
|
|
9422
9590
|
}
|
|
9423
9591
|
showWidget(layoutNode) {
|
|
@@ -9428,6 +9596,10 @@ class RootComponent {
|
|
|
9428
9596
|
this.jsf.dataChanges.subscribe((val) => {
|
|
9429
9597
|
//this.selectframeworkInputCache?.clear();
|
|
9430
9598
|
this._getSelectFrameworkInputsMemoized.cache.clear();
|
|
9599
|
+
//TODO-fix for now changed to detectChanges-
|
|
9600
|
+
//used to updated the dynamic titles in tab compnents
|
|
9601
|
+
this.cdr.markForCheck();
|
|
9602
|
+
// this.cdr.detectChanges();-breaks oneOf/ matdatepicker
|
|
9431
9603
|
});
|
|
9432
9604
|
}
|
|
9433
9605
|
}
|
|
@@ -9437,8 +9609,8 @@ class RootComponent {
|
|
|
9437
9609
|
this._getSelectFrameworkInputsMemoized.cache.clear();
|
|
9438
9610
|
this.dataChangesSubs?.unsubscribe();
|
|
9439
9611
|
}
|
|
9440
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
9441
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
9612
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RootComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9613
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: RootComponent, selector: "root-widget", inputs: { dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, isOrderable: { classPropertyName: "isOrderable", publicName: "isOrderable", isSignal: true, isRequired: false, transformFunction: null }, isFlexItem: { classPropertyName: "isFlexItem", publicName: "isFlexItem", isSignal: true, isRequired: false, transformFunction: null }, memoizationEnabled: { classPropertyName: "memoizationEnabled", publicName: "memoizationEnabled", isSignal: true, isRequired: false, transformFunction: null } }, usesOnChanges: true, ngImport: i0, template: `
|
|
9442
9614
|
<div cdkDropList (cdkDropListDropped)="drop($event)"
|
|
9443
9615
|
[class.flex-inherit]="true"
|
|
9444
9616
|
[cdkDropListSortPredicate]="sortPredicate"
|
|
@@ -9449,7 +9621,7 @@ class RootComponent {
|
|
|
9449
9621
|
You must explicitly disable dragging on the main element
|
|
9450
9622
|
and re-enable it only when using the handle.
|
|
9451
9623
|
-->
|
|
9452
|
-
<div *ngFor="let layoutItem of layout(); let i = index;
|
|
9624
|
+
<div *ngFor="let layoutItem of layout(); let i = index;"
|
|
9453
9625
|
cdkDrag [cdkDragStartDelay]="{touch:1000,mouse:0}"
|
|
9454
9626
|
[cdkDragDisabled]="!isDraggable(layoutItem)"
|
|
9455
9627
|
[class.form-flex-item]="isFlexItem()"
|
|
@@ -9491,7 +9663,7 @@ class RootComponent {
|
|
|
9491
9663
|
</div>
|
|
9492
9664
|
`, isInline: true, styles: ["[draggable=true]{transition:all .15s cubic-bezier(.4,0,.2,1)}[draggable=true]:hover{cursor:move;box-shadow:2px 2px 4px #0003;position:relative;z-index:10;margin:-1px 1px 1px -1px}[draggable=true].drag-target-top{box-shadow:0 -2px #000;position:relative;z-index:20}[draggable=true].drag-target-bottom{box-shadow:0 2px #000;position:relative;z-index:20}.flex-inherit{display:inherit;flex-flow:inherit;flex-wrap:inherit;flex-direction:inherit;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2$1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
9493
9665
|
}
|
|
9494
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
9666
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RootComponent, decorators: [{
|
|
9495
9667
|
type: Component,
|
|
9496
9668
|
args: [{ selector: 'root-widget', template: `
|
|
9497
9669
|
<div cdkDropList (cdkDropListDropped)="drop($event)"
|
|
@@ -9504,7 +9676,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
9504
9676
|
You must explicitly disable dragging on the main element
|
|
9505
9677
|
and re-enable it only when using the handle.
|
|
9506
9678
|
-->
|
|
9507
|
-
<div *ngFor="let layoutItem of layout(); let i = index;
|
|
9679
|
+
<div *ngFor="let layoutItem of layout(); let i = index;"
|
|
9508
9680
|
cdkDrag [cdkDragStartDelay]="{touch:1000,mouse:0}"
|
|
9509
9681
|
[cdkDragDisabled]="!isDraggable(layoutItem)"
|
|
9510
9682
|
[class.form-flex-item]="isFlexItem()"
|
|
@@ -9608,8 +9780,8 @@ class SectionComponent {
|
|
|
9608
9780
|
return this.options[attribute];
|
|
9609
9781
|
}
|
|
9610
9782
|
}
|
|
9611
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
9612
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
9783
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9784
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: SectionComponent, selector: "section-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: `
|
|
9613
9785
|
<div *ngIf="containerType === 'div'"
|
|
9614
9786
|
[class]="options?.htmlClass || ''"
|
|
9615
9787
|
[class.expandable]="options?.expandable && !expanded"
|
|
@@ -9672,7 +9844,7 @@ class SectionComponent {
|
|
|
9672
9844
|
</div>
|
|
9673
9845
|
</fieldset>`, isInline: true, styles: [".legend{font-weight:700}.expandable>legend:before,.expandable>label:before{content:\"\\25b6\";padding-right:.3em;font-family:auto}.expanded>legend:before,.expanded>label:before{content:\"\\25bc\";padding-right:.2em}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: RootComponent, selector: "root-widget", inputs: ["dataIndex", "layoutIndex", "layout", "isOrderable", "isFlexItem", "memoizationEnabled"] }] }); }
|
|
9674
9846
|
}
|
|
9675
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
9847
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SectionComponent, decorators: [{
|
|
9676
9848
|
type: Component,
|
|
9677
9849
|
args: [{ selector: 'section-widget', template: `
|
|
9678
9850
|
<div *ngIf="containerType === 'div'"
|
|
@@ -9788,8 +9960,8 @@ class SelectComponent {
|
|
|
9788
9960
|
this.formControl.reset(nullVal);
|
|
9789
9961
|
this.controlValue = null;
|
|
9790
9962
|
}
|
|
9791
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
9792
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
9963
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9964
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: SelectComponent, selector: "select-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: `
|
|
9793
9965
|
<div
|
|
9794
9966
|
[class]="options?.htmlClass || ''">
|
|
9795
9967
|
<label *ngIf="options?.title"
|
|
@@ -9873,7 +10045,7 @@ class SelectComponent {
|
|
|
9873
10045
|
</select>
|
|
9874
10046
|
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.SelectMultipleControlValueAccessor, selector: "select[multiple][formControlName],select[multiple][formControl],select[multiple][ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
|
|
9875
10047
|
}
|
|
9876
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
10048
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectComponent, decorators: [{
|
|
9877
10049
|
type: Component,
|
|
9878
10050
|
args: [{
|
|
9879
10051
|
// tslint:disable-next-line:component-selector
|
|
@@ -10000,8 +10172,8 @@ class SubmitComponent {
|
|
|
10000
10172
|
this.jsf.updateValue(this, event.target.value);
|
|
10001
10173
|
}
|
|
10002
10174
|
}
|
|
10003
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10004
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
10175
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SubmitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10176
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: SubmitComponent, selector: "submit-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: `
|
|
10005
10177
|
<div
|
|
10006
10178
|
[class]="options?.htmlClass || ''">
|
|
10007
10179
|
<input
|
|
@@ -10019,7 +10191,7 @@ class SubmitComponent {
|
|
|
10019
10191
|
>
|
|
10020
10192
|
</div>`, isInline: true, dependencies: [{ kind: "directive", type: StopPropagationDirective, selector: "[appStopPropagation]", inputs: ["appStopPropagation"] }] }); }
|
|
10021
10193
|
}
|
|
10022
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
10194
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SubmitComponent, decorators: [{
|
|
10023
10195
|
type: Component,
|
|
10024
10196
|
args: [{
|
|
10025
10197
|
// tslint:disable-next-line:component-selector
|
|
@@ -10071,10 +10243,10 @@ class TemplateComponent {
|
|
|
10071
10243
|
}
|
|
10072
10244
|
}
|
|
10073
10245
|
}
|
|
10074
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10075
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.
|
|
10246
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10247
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.14", type: TemplateComponent, selector: "template-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: "widgetContainer", first: true, predicate: ["widgetContainer"], descendants: true, read: ViewContainerRef, isSignal: true }], usesOnChanges: true, ngImport: i0, template: `<div #widgetContainer></div>`, isInline: true }); }
|
|
10076
10248
|
}
|
|
10077
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
10249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TemplateComponent, decorators: [{
|
|
10078
10250
|
type: Component,
|
|
10079
10251
|
args: [{
|
|
10080
10252
|
// tslint:disable-next-line:component-selector
|
|
@@ -10100,10 +10272,13 @@ class TextareaComponent {
|
|
|
10100
10272
|
this.jsf.updateValue(this, event.target.value);
|
|
10101
10273
|
}
|
|
10102
10274
|
ngOnDestroy() {
|
|
10103
|
-
|
|
10275
|
+
//see cpmments in input component
|
|
10276
|
+
setTimeout(() => {
|
|
10277
|
+
this.jsf.updateValue(this, null);
|
|
10278
|
+
});
|
|
10104
10279
|
}
|
|
10105
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10106
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
10280
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextareaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10281
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", 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: `
|
|
10107
10282
|
<div
|
|
10108
10283
|
[class]="options?.htmlClass || ''">
|
|
10109
10284
|
<label *ngIf="options?.title"
|
|
@@ -10139,7 +10314,7 @@ class TextareaComponent {
|
|
|
10139
10314
|
(input)="updateValue($event)">{{controlValue}}</textarea>
|
|
10140
10315
|
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
|
|
10141
10316
|
}
|
|
10142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
10317
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextareaComponent, decorators: [{
|
|
10143
10318
|
type: Component,
|
|
10144
10319
|
args: [{
|
|
10145
10320
|
// tslint:disable-next-line:component-selector
|
|
@@ -10379,10 +10554,10 @@ class WidgetLibraryService {
|
|
|
10379
10554
|
activeWidgets: this.activeWidgets,
|
|
10380
10555
|
};
|
|
10381
10556
|
}
|
|
10382
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10383
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
10557
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: WidgetLibraryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
10558
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: WidgetLibraryService, providedIn: 'root' }); }
|
|
10384
10559
|
}
|
|
10385
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
10560
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: WidgetLibraryService, decorators: [{
|
|
10386
10561
|
type: Injectable,
|
|
10387
10562
|
args: [{
|
|
10388
10563
|
providedIn: 'root',
|
|
@@ -10541,10 +10716,10 @@ class FrameworkLibraryService {
|
|
|
10541
10716
|
return actFramework.unregisterTheme(name);
|
|
10542
10717
|
}
|
|
10543
10718
|
}
|
|
10544
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10545
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
10719
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FrameworkLibraryService, deps: [{ token: Framework }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
10720
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FrameworkLibraryService, providedIn: 'root' }); }
|
|
10546
10721
|
}
|
|
10547
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
10722
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FrameworkLibraryService, decorators: [{
|
|
10548
10723
|
type: Injectable,
|
|
10549
10724
|
args: [{
|
|
10550
10725
|
providedIn: 'root',
|
|
@@ -10620,8 +10795,8 @@ class SelectCheckboxComponent {
|
|
|
10620
10795
|
this.formControl.reset(nullVal);
|
|
10621
10796
|
this.controlValue = null;
|
|
10622
10797
|
}
|
|
10623
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10624
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
10798
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectCheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10799
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: SelectCheckboxComponent, selector: "selectcheckbox-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: `
|
|
10625
10800
|
<div
|
|
10626
10801
|
[class]="options?.htmlClass || ''">
|
|
10627
10802
|
<select *ngIf="boundControl"
|
|
@@ -10674,7 +10849,7 @@ class SelectCheckboxComponent {
|
|
|
10674
10849
|
|
|
10675
10850
|
</div>`, isInline: true, styles: [".select-box{font-size:16px;border:none;appearance:none;-webkit-appearance:none;-moz-appearance:none;height:25px;overflow:hidden;text-overflow:ellipsis;background-color:#fff;color:#000;background-color:transparent}.select-box:focus{outline:none}.select-option{font-size:20px;color:#000;background-color:#fff;display:inline-block}.unchecked:before{content:\"\\2610\";left:5px;top:50%;transform:translateY(-50%);font-size:30px}.checked:before{content:\"\\2611\";left:5px;top:50%;transform:translateY(-50%);font-size:30px}.select-option:checked{background-image:linear-gradient(0deg,#fff 0% 100%);color:#000}.select-box[multiple]:focus{background-color:transparent;color:#00f;-webkit-text-fill-color:black}.display-inline-block{display:inline-block}.bs4-option,.bs3-option{width:14px;height:14px;border:solid 1px;color:#a9a9a9;min-block-size:auto;border-radius:3px}.bs4-option:checked[type=checkbox],.bs3-option:checked[type=checkbox]{background-image:url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3C!--%20License%3A%20MIT.%20Made%20by%20jaynewey%3A%20https%3A%2F%2Fgithub.com%2Fjaynewey%2Fcharm-icons%20--%3E%3Csvg%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20fill%3D%22none%22%20stroke%3D%22%23000000%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222.5%22%3E%3Cpolyline%20points%3D%224%208.75%2C6.25%2012.25%2C13.25%203.5%22%2F%3E%3C%2Fsvg%3E);background-color:#00ced1}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectMultipleControlValueAccessor, selector: "select[multiple][formControlName],select[multiple][formControl],select[multiple][ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
10676
10851
|
}
|
|
10677
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
10852
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectCheckboxComponent, decorators: [{
|
|
10678
10853
|
type: Component,
|
|
10679
10854
|
args: [{ selector: 'selectcheckbox-widget', template: `
|
|
10680
10855
|
<div
|
|
@@ -10740,8 +10915,8 @@ class TabComponent {
|
|
|
10740
10915
|
ngOnInit() {
|
|
10741
10916
|
this.options = this.layoutNode().options || {};
|
|
10742
10917
|
}
|
|
10743
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10744
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
10918
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10919
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: TabComponent, selector: "tab-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: `
|
|
10745
10920
|
<div [class]="options?.htmlClass || ''">
|
|
10746
10921
|
<root-widget
|
|
10747
10922
|
[dataIndex]="dataIndex()"
|
|
@@ -10749,7 +10924,7 @@ class TabComponent {
|
|
|
10749
10924
|
[layout]="layoutNode().items"></root-widget>
|
|
10750
10925
|
</div>`, isInline: true, dependencies: [{ kind: "component", type: RootComponent, selector: "root-widget", inputs: ["dataIndex", "layoutIndex", "layout", "isOrderable", "isFlexItem", "memoizationEnabled"] }] }); }
|
|
10751
10926
|
}
|
|
10752
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
10927
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabComponent, decorators: [{
|
|
10753
10928
|
type: Component,
|
|
10754
10929
|
args: [{
|
|
10755
10930
|
// tslint:disable-next-line:component-selector
|
|
@@ -10879,10 +11054,10 @@ class OrderableDirective {
|
|
|
10879
11054
|
this.draggableStateSubscription.unsubscribe();
|
|
10880
11055
|
}
|
|
10881
11056
|
}
|
|
10882
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10883
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.
|
|
11057
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: OrderableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
11058
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.14", type: OrderableDirective, selector: "[orderable]", inputs: { orderable: { classPropertyName: "orderable", publicName: "orderable", isSignal: true, isRequired: false, transformFunction: null }, 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 }); }
|
|
10884
11059
|
}
|
|
10885
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
11060
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: OrderableDirective, decorators: [{
|
|
10886
11061
|
type: Directive,
|
|
10887
11062
|
args: [{
|
|
10888
11063
|
// tslint:disable-next-line:directive-selector
|
|
@@ -10896,15 +11071,15 @@ const BASIC_WIDGETS = [
|
|
|
10896
11071
|
MessageComponent, NoneComponent, NumberComponent, RadiosComponent,
|
|
10897
11072
|
RootComponent, SectionComponent, SelectComponent, SelectFrameworkComponent,
|
|
10898
11073
|
SelectWidgetComponent, SubmitComponent, TabComponent, TabsComponent,
|
|
10899
|
-
TemplateComponent, TextareaComponent, SelectCheckboxComponent
|
|
11074
|
+
TemplateComponent, TextareaComponent, SelectCheckboxComponent, ItemTitleComponent
|
|
10900
11075
|
];
|
|
10901
11076
|
|
|
10902
11077
|
class WidgetLibraryModule {
|
|
10903
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10904
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
10905
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
11078
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: WidgetLibraryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11079
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", 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] }); }
|
|
11080
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: WidgetLibraryModule, imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule] }); }
|
|
10906
11081
|
}
|
|
10907
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
11082
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: WidgetLibraryModule, decorators: [{
|
|
10908
11083
|
type: NgModule,
|
|
10909
11084
|
args: [{
|
|
10910
11085
|
imports: [CommonModule, FormsModule, ReactiveFormsModule, DragDropModule
|
|
@@ -10916,13 +11091,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10916
11091
|
|
|
10917
11092
|
// No framework - plain HTML controls (styles from form layout only)
|
|
10918
11093
|
class NoFrameworkModule {
|
|
10919
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10920
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
10921
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
11094
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoFrameworkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11095
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: NoFrameworkModule, declarations: [NoFrameworkComponent], imports: [CommonModule, WidgetLibraryModule], exports: [NoFrameworkComponent] }); }
|
|
11096
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoFrameworkModule, providers: [
|
|
10922
11097
|
{ provide: Framework, useClass: NoFramework, multi: true }
|
|
10923
11098
|
], imports: [CommonModule, WidgetLibraryModule] }); }
|
|
10924
11099
|
}
|
|
10925
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
11100
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NoFrameworkModule, decorators: [{
|
|
10926
11101
|
type: NgModule,
|
|
10927
11102
|
args: [{
|
|
10928
11103
|
imports: [CommonModule, WidgetLibraryModule],
|
|
@@ -11149,11 +11324,26 @@ class JsonSchemaFormComponent {
|
|
|
11149
11324
|
if (this.formValuesInput.indexOf('.') === -1) {
|
|
11150
11325
|
changedData = this.getInputValue(this.formValuesInput);
|
|
11151
11326
|
//this[this.formValuesInput];
|
|
11152
|
-
this.setFormValues(changedData, resetFirst);
|
|
11153
11327
|
}
|
|
11154
11328
|
else {
|
|
11155
11329
|
const [input, key] = this.formValuesInput.split('.');
|
|
11156
11330
|
changedData = this.getInputValue(input)[key];
|
|
11331
|
+
}
|
|
11332
|
+
//TODO -review if any of the the array sizes changed then the
|
|
11333
|
+
//layout array sizes need to be resynced to match
|
|
11334
|
+
//-for now jsf.adjustLayout doesnt seem to work with nested arrays
|
|
11335
|
+
//so entire form is reinited
|
|
11336
|
+
let arraySizesChanged = !compareObjectArraySizes(changedData, this.jsf.data);
|
|
11337
|
+
if (arraySizesChanged) {
|
|
11338
|
+
this.initializeForm(changedData);
|
|
11339
|
+
if (this.onChange) {
|
|
11340
|
+
this.onChange(changedData);
|
|
11341
|
+
}
|
|
11342
|
+
if (this.onTouched) {
|
|
11343
|
+
this.onTouched(changedData);
|
|
11344
|
+
}
|
|
11345
|
+
}
|
|
11346
|
+
else {
|
|
11157
11347
|
this.setFormValues(changedData, resetFirst);
|
|
11158
11348
|
}
|
|
11159
11349
|
// If anything else has changed, re-render the entire form
|
|
@@ -11178,7 +11368,7 @@ class JsonSchemaFormComponent {
|
|
|
11178
11368
|
.forEach(input => this.previousInputs[input] = this.getInputValue(input));
|
|
11179
11369
|
}
|
|
11180
11370
|
}
|
|
11181
|
-
setFormValues(formValues, resetFirst = true) {
|
|
11371
|
+
setFormValues(formValues, resetFirst = true, emitFormEvent = true, usePatch = true) {
|
|
11182
11372
|
if (formValues) {
|
|
11183
11373
|
const newFormValues = this.objectWrap ? formValues['1'] : formValues;
|
|
11184
11374
|
if (!this.jsf.formGroup) {
|
|
@@ -11186,10 +11376,15 @@ class JsonSchemaFormComponent {
|
|
|
11186
11376
|
this.activateForm();
|
|
11187
11377
|
}
|
|
11188
11378
|
else if (resetFirst) { //changed to avoid reset events
|
|
11189
|
-
this.jsf.formGroup.reset({}, { emitEvent:
|
|
11379
|
+
this.jsf.formGroup.reset({}, { emitEvent: emitFormEvent });
|
|
11190
11380
|
}
|
|
11191
11381
|
if (this.jsf.formGroup) { //changed to avoid reset events
|
|
11192
|
-
|
|
11382
|
+
if (usePatch) {
|
|
11383
|
+
this.jsf.formGroup.patchValue(newFormValues, { emitEvent: emitFormEvent });
|
|
11384
|
+
}
|
|
11385
|
+
else {
|
|
11386
|
+
this.jsf.formGroup.setValue(newFormValues, { emitEvent: emitFormEvent });
|
|
11387
|
+
}
|
|
11193
11388
|
}
|
|
11194
11389
|
if (this.onChange) {
|
|
11195
11390
|
this.onChange(newFormValues);
|
|
@@ -11201,6 +11396,7 @@ class JsonSchemaFormComponent {
|
|
|
11201
11396
|
else {
|
|
11202
11397
|
this.jsf.formGroup.reset();
|
|
11203
11398
|
}
|
|
11399
|
+
this.changeDetector.markForCheck();
|
|
11204
11400
|
}
|
|
11205
11401
|
submitForm() {
|
|
11206
11402
|
const validData = this.jsf.validData;
|
|
@@ -11684,10 +11880,10 @@ class JsonSchemaFormComponent {
|
|
|
11684
11880
|
}
|
|
11685
11881
|
}
|
|
11686
11882
|
}
|
|
11687
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
11688
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.
|
|
11883
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11884
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: JsonSchemaFormComponent, selector: "json-schema-form", inputs: { schema: { classPropertyName: "schema", publicName: "schema", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, framework: { classPropertyName: "framework", publicName: "framework", isSignal: true, isRequired: false, transformFunction: null }, widgets: { classPropertyName: "widgets", publicName: "widgets", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null }, JSONSchema: { classPropertyName: "JSONSchema", publicName: "JSONSchema", isSignal: true, isRequired: false, transformFunction: null }, UISchema: { classPropertyName: "UISchema", publicName: "UISchema", isSignal: true, isRequired: false, transformFunction: null }, formData: { classPropertyName: "formData", publicName: "formData", isSignal: true, isRequired: false, transformFunction: null }, ngModel: { classPropertyName: "ngModel", publicName: "ngModel", isSignal: true, isRequired: false, transformFunction: null }, language: { classPropertyName: "language", publicName: "language", isSignal: true, isRequired: false, transformFunction: null }, loadExternalAssets: { classPropertyName: "loadExternalAssets", publicName: "loadExternalAssets", isSignal: true, isRequired: false, transformFunction: null }, debug: { classPropertyName: "debug", publicName: "debug", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: "theme", publicName: "theme", isSignal: true, isRequired: false, transformFunction: null }, ajvOptions: { classPropertyName: "ajvOptions", publicName: "ajvOptions", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onChanges: "onChanges", onSubmit: "onSubmit", isValid: "isValid", validationErrors: "validationErrors", formSchema: "formSchema", formLayout: "formLayout", dataChange: "dataChange", modelChange: "modelChange", formDataChange: "formDataChange", ngModelChange: "ngModelChange" }, providers: [JsonSchemaFormService, JSON_SCHEMA_FORM_VALUE_ACCESSOR], usesOnChanges: true, ngImport: i0, template: "<form [autocomplete]=\"jsf?.formOptions?.autocomplete ? 'on' : 'off'\" class=\"json-schema-form\" (ngSubmit)=\"submitForm()\">\r\n <root-widget [layout]=\"jsf?.layout\"></root-widget>\r\n</form>\r\n<div *ngIf=\"debug() || jsf?.formOptions?.debug\">\r\n Debug output:\r\n <pre>{{debugOutput}}</pre>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: RootComponent, selector: "root-widget", inputs: ["dataIndex", "layoutIndex", "layout", "isOrderable", "isFlexItem", "memoizationEnabled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11689
11885
|
}
|
|
11690
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
11886
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormComponent, decorators: [{
|
|
11691
11887
|
type: Component,
|
|
11692
11888
|
args: [{ selector: 'json-schema-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [JsonSchemaFormService, JSON_SCHEMA_FORM_VALUE_ACCESSOR], template: "<form [autocomplete]=\"jsf?.formOptions?.autocomplete ? 'on' : 'off'\" class=\"json-schema-form\" (ngSubmit)=\"submitForm()\">\r\n <root-widget [layout]=\"jsf?.layout\"></root-widget>\r\n</form>\r\n<div *ngIf=\"debug() || jsf?.formOptions?.debug\">\r\n Debug output:\r\n <pre>{{debugOutput}}</pre>\r\n</div>" }]
|
|
11693
11889
|
}], propDecorators: { value: [{
|
|
@@ -11695,13 +11891,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
11695
11891
|
}] } });
|
|
11696
11892
|
|
|
11697
11893
|
class JsonSchemaFormModule {
|
|
11698
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
11699
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
11894
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11895
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormModule, declarations: [JsonSchemaFormComponent], imports: [CommonModule, FormsModule, ReactiveFormsModule,
|
|
11700
11896
|
WidgetLibraryModule, NoFrameworkModule], exports: [JsonSchemaFormComponent, WidgetLibraryModule] }); }
|
|
11701
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
11897
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormModule, imports: [CommonModule, FormsModule, ReactiveFormsModule,
|
|
11702
11898
|
WidgetLibraryModule, NoFrameworkModule, WidgetLibraryModule] }); }
|
|
11703
11899
|
}
|
|
11704
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
11900
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: JsonSchemaFormModule, decorators: [{
|
|
11705
11901
|
type: NgModule,
|
|
11706
11902
|
args: [{
|
|
11707
11903
|
imports: [
|
|
@@ -11721,5 +11917,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
11721
11917
|
* Generated bundle index. Do not edit.
|
|
11722
11918
|
*/
|
|
11723
11919
|
|
|
11724
|
-
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 };
|
|
11920
|
+
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 };
|
|
11725
11921
|
//# sourceMappingURL=ng-formworks-core.mjs.map
|