@apipass/schemas 1.0.7 → 1.0.8

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.
Files changed (57) hide show
  1. package/base-schema.component.d.ts +12 -12
  2. package/{esm2020 → esm2022}/apipass-schemas.mjs +4 -4
  3. package/esm2022/base-schema.component.mjs +38 -0
  4. package/{esm2020 → esm2022}/public-api.mjs +16 -16
  5. package/{esm2020 → esm2022}/schema-custom-attributes/schema-custom-attributes.mjs +169 -169
  6. package/esm2022/schema-fields.service.mjs +81 -0
  7. package/esm2022/schema-form/schema-array/array-session/array-session.mjs +141 -0
  8. package/{esm2020 → esm2022}/schema-form/schema-array/schema-array.mjs +219 -220
  9. package/esm2022/schema-form/schema-form.mjs +107 -0
  10. package/esm2022/schema-form/schema-input/field-render/field-render.mjs +76 -0
  11. package/esm2022/schema-form/schema-input/input-render/boolean-input/boolean-input.component.mjs +51 -0
  12. package/esm2022/schema-form/schema-input/input-render/input-render.mjs +193 -0
  13. package/esm2022/schema-form/schema-input/input-render/number-input/number-input.component.mjs +49 -0
  14. package/esm2022/schema-form/schema-input/schema-input.mjs +95 -0
  15. package/esm2022/schema-form/schema-object/schema-object.mjs +125 -0
  16. package/esm2022/schema-form-render.mjs +126 -0
  17. package/{esm2020 → esm2022}/schema-form-render.module.mjs +109 -108
  18. package/esm2022/schema-validation-field.mjs +18 -0
  19. package/{esm2020 → esm2022}/struct.utils.mjs +8 -8
  20. package/esm2022/type-script-compile/type-script-compile.base.mjs +115 -0
  21. package/{fesm2020 → fesm2022}/apipass-schemas.mjs +1571 -1563
  22. package/fesm2022/apipass-schemas.mjs.map +1 -0
  23. package/index.d.ts +5 -5
  24. package/package.json +15 -21
  25. package/public-api.d.ts +16 -16
  26. package/schema-custom-attributes/schema-custom-attributes.d.ts +21 -21
  27. package/schema-fields.service.d.ts +14 -14
  28. package/schema-form/schema-array/array-session/array-session.d.ts +19 -19
  29. package/schema-form/schema-array/schema-array.d.ts +31 -32
  30. package/schema-form/schema-form.d.ts +31 -31
  31. package/schema-form/schema-input/field-render/field-render.d.ts +16 -16
  32. package/schema-form/schema-input/input-render/boolean-input/boolean-input.component.d.ts +15 -15
  33. package/schema-form/schema-input/input-render/input-render.d.ts +29 -29
  34. package/schema-form/schema-input/input-render/number-input/number-input.component.d.ts +15 -15
  35. package/schema-form/schema-input/schema-input.d.ts +18 -19
  36. package/schema-form/schema-object/schema-object.d.ts +34 -34
  37. package/schema-form-render.d.ts +31 -31
  38. package/schema-form-render.module.d.ts +23 -23
  39. package/schema-validation-field.d.ts +23 -23
  40. package/struct.utils.d.ts +1 -1
  41. package/type-script-compile/type-script-compile.base.d.ts +17 -17
  42. package/esm2020/base-schema.component.mjs +0 -37
  43. package/esm2020/schema-fields.service.mjs +0 -80
  44. package/esm2020/schema-form/schema-array/array-session/array-session.mjs +0 -143
  45. package/esm2020/schema-form/schema-form.mjs +0 -107
  46. package/esm2020/schema-form/schema-input/field-render/field-render.mjs +0 -69
  47. package/esm2020/schema-form/schema-input/input-render/boolean-input/boolean-input.component.mjs +0 -46
  48. package/esm2020/schema-form/schema-input/input-render/input-render.mjs +0 -192
  49. package/esm2020/schema-form/schema-input/input-render/number-input/number-input.component.mjs +0 -44
  50. package/esm2020/schema-form/schema-input/schema-input.mjs +0 -96
  51. package/esm2020/schema-form/schema-object/schema-object.mjs +0 -123
  52. package/esm2020/schema-form-render.mjs +0 -126
  53. package/esm2020/schema-validation-field.mjs +0 -14
  54. package/esm2020/type-script-compile/type-script-compile.base.mjs +0 -114
  55. package/fesm2015/apipass-schemas.mjs +0 -1801
  56. package/fesm2015/apipass-schemas.mjs.map +0 -1
  57. package/fesm2020/apipass-schemas.mjs.map +0 -1
@@ -1,126 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { BaseSchemaComponent } from './base-schema.component';
3
- import { onDropStruct } from './struct.utils';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "./schema-form/schema-form";
7
- import * as i3 from "./schema-custom-attributes/schema-custom-attributes";
8
- function SchemaFormRenderComponent_div_0_div_2_div_1_Template(rf, ctx) { if (rf & 1) {
9
- const _r6 = i0.ɵɵgetCurrentView();
10
- i0.ɵɵelementStart(0, "div", 6)(1, "div", 7)(2, "label", 8);
11
- i0.ɵɵtext(3);
12
- i0.ɵɵelementEnd();
13
- i0.ɵɵelementStart(4, "schema-custom-attributes", 9);
14
- i0.ɵɵlistener("modelChange", function SchemaFormRenderComponent_div_0_div_2_div_1_Template_schema_custom_attributes_modelChange_4_listener($event) { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r5.model.customAttributes = $event); });
15
- i0.ɵɵelementEnd()()();
16
- } if (rf & 2) {
17
- const ctx_r4 = i0.ɵɵnextContext(3);
18
- i0.ɵɵadvance(3);
19
- i0.ɵɵtextInterpolate(ctx_r4.additionalAttributesLabel);
20
- i0.ɵɵadvance(1);
21
- i0.ɵɵproperty("customAttributeRemoveLabel", ctx_r4.customAttributeRemoveLabel)("newCustomFieldNameLabel", ctx_r4.newCustomFieldNameLabel)("newCustomFieldValueLabel", ctx_r4.newCustomFieldValueLabel)("newCustomFieldAddLabel", ctx_r4.newCustomFieldAddLabel)("newCustomFieldSaveLabel", ctx_r4.newCustomFieldSaveLabel)("newCustomFieldCancelLabel", ctx_r4.newCustomFieldCancelLabel)("model", ctx_r4.model.customAttributes)("onDropFunction", ctx_r4.onDrop);
22
- } }
23
- function SchemaFormRenderComponent_div_0_div_2_Template(rf, ctx) { if (rf & 1) {
24
- i0.ɵɵelementStart(0, "div", 4);
25
- i0.ɵɵtemplate(1, SchemaFormRenderComponent_div_0_div_2_div_1_Template, 5, 9, "div", 5);
26
- i0.ɵɵelementEnd();
27
- } if (rf & 2) {
28
- const ctx_r1 = i0.ɵɵnextContext(2);
29
- i0.ɵɵadvance(1);
30
- i0.ɵɵproperty("ngIf", ctx_r1.model && ctx_r1.customProperties);
31
- } }
32
- function SchemaFormRenderComponent_div_0_Template(rf, ctx) { if (rf & 1) {
33
- const _r8 = i0.ɵɵgetCurrentView();
34
- i0.ɵɵelementStart(0, "div", 1)(1, "schema-form", 2);
35
- i0.ɵɵlistener("modelChange", function SchemaFormRenderComponent_div_0_Template_schema_form_modelChange_1_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r7.model = $event); });
36
- i0.ɵɵelementEnd();
37
- i0.ɵɵtemplate(2, SchemaFormRenderComponent_div_0_div_2_Template, 2, 1, "div", 3);
38
- i0.ɵɵelementEnd();
39
- } if (rf & 2) {
40
- const ctx_r0 = i0.ɵɵnextContext();
41
- i0.ɵɵadvance(1);
42
- i0.ɵɵproperty("selectPlaceHolderLabel", ctx_r0.selectPlaceHolderLabel)("selectSearchPlaceHolderLabel", ctx_r0.selectSearchPlaceHolderLabel)("selectClearLabel", ctx_r0.selectClearLabel)("selectNotFoundLabel", ctx_r0.selectNotFoundLabel)("requiredLabel", ctx_r0.requiredLabel)("addItemLabel", ctx_r0.addItemLabel)("addLoopLabel", ctx_r0.addLoopLabel)("additionalAttributesLabel", ctx_r0.additionalAttributesLabel)("customAttributeRemoveLabel", ctx_r0.customAttributeRemoveLabel)("newCustomFieldNameLabel", ctx_r0.newCustomFieldNameLabel)("newCustomFieldValueLabel", ctx_r0.newCustomFieldValueLabel)("newCustomFieldAddLabel", ctx_r0.newCustomFieldAddLabel)("newCustomFieldSaveLabel", ctx_r0.newCustomFieldSaveLabel)("newCustomFieldCancelLabel", ctx_r0.newCustomFieldCancelLabel)("idPrefix", ctx_r0.idPrefix)("model", ctx_r0.model)("schemas", ctx_r0.schemas)("editing", ctx_r0.editing);
43
- i0.ɵɵadvance(1);
44
- i0.ɵɵproperty("ngForOf", ctx_r0.schemas);
45
- } }
46
- export class SchemaFormRenderComponent extends BaseSchemaComponent {
47
- constructor() {
48
- super(...arguments);
49
- this.requiredLabel = '(required)';
50
- this.addItemLabel = 'Add Item';
51
- this.addLoopLabel = 'Add Loop';
52
- this.additionalAttributesLabel = 'Additional Fields';
53
- this.customAttributeRemoveLabel = 'Remove';
54
- this.newCustomFieldNameLabel = 'Name';
55
- this.newCustomFieldValueLabel = 'Value';
56
- this.newCustomFieldAddLabel = 'Add';
57
- this.newCustomFieldSaveLabel = 'Save';
58
- this.newCustomFieldCancelLabel = 'Cancel';
59
- this.selectPlaceHolderLabel = 'Select Item';
60
- this.selectSearchPlaceHolderLabel = 'Search';
61
- this.selectClearLabel = 'Clear';
62
- this.selectNotFoundLabel = 'No Items Found';
63
- this.schemas = [];
64
- this.customProperties = false;
65
- this.editing = false;
66
- this.loaded = false;
67
- }
68
- ngAfterContentInit() {
69
- this.loaded = true;
70
- }
71
- onDrop($event, modelElement) {
72
- return onDropStruct($event, modelElement);
73
- }
74
- getId(index) {
75
- return `${this.idPrefix}-struct-${index}`;
76
- }
77
- }
78
- SchemaFormRenderComponent.ɵfac = /*@__PURE__*/ function () { let ɵSchemaFormRenderComponent_BaseFactory; return function SchemaFormRenderComponent_Factory(t) { return (ɵSchemaFormRenderComponent_BaseFactory || (ɵSchemaFormRenderComponent_BaseFactory = i0.ɵɵgetInheritedFactory(SchemaFormRenderComponent)))(t || SchemaFormRenderComponent); }; }();
79
- SchemaFormRenderComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SchemaFormRenderComponent, selectors: [["schema-form-render"]], inputs: { requiredLabel: "requiredLabel", addItemLabel: "addItemLabel", addLoopLabel: "addLoopLabel", additionalAttributesLabel: "additionalAttributesLabel", customAttributeRemoveLabel: "customAttributeRemoveLabel", newCustomFieldNameLabel: "newCustomFieldNameLabel", newCustomFieldValueLabel: "newCustomFieldValueLabel", newCustomFieldAddLabel: "newCustomFieldAddLabel", newCustomFieldSaveLabel: "newCustomFieldSaveLabel", newCustomFieldCancelLabel: "newCustomFieldCancelLabel", selectPlaceHolderLabel: "selectPlaceHolderLabel", selectSearchPlaceHolderLabel: "selectSearchPlaceHolderLabel", selectClearLabel: "selectClearLabel", selectNotFoundLabel: "selectNotFoundLabel", idPrefix: "idPrefix", schemas: "schemas", customProperties: "customProperties", editing: "editing", inputType: "inputType" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [["class", "schema", 4, "ngIf"], [1, "schema"], [3, "selectPlaceHolderLabel", "selectSearchPlaceHolderLabel", "selectClearLabel", "selectNotFoundLabel", "requiredLabel", "addItemLabel", "addLoopLabel", "additionalAttributesLabel", "customAttributeRemoveLabel", "newCustomFieldNameLabel", "newCustomFieldValueLabel", "newCustomFieldAddLabel", "newCustomFieldSaveLabel", "newCustomFieldCancelLabel", "idPrefix", "model", "schemas", "editing", "modelChange"], ["class", "schema-properties", 4, "ngFor", "ngForOf"], [1, "schema-properties"], ["class", "row struct-custom-properties", 4, "ngIf"], [1, "row", "struct-custom-properties"], [1, "col-md-12"], [1, "info-label", "bold"], [3, "customAttributeRemoveLabel", "newCustomFieldNameLabel", "newCustomFieldValueLabel", "newCustomFieldAddLabel", "newCustomFieldSaveLabel", "newCustomFieldCancelLabel", "model", "onDropFunction", "modelChange"]], template: function SchemaFormRenderComponent_Template(rf, ctx) { if (rf & 1) {
80
- i0.ɵɵtemplate(0, SchemaFormRenderComponent_div_0_Template, 3, 19, "div", 0);
81
- } if (rf & 2) {
82
- i0.ɵɵproperty("ngIf", ctx.loaded);
83
- } }, dependencies: [i1.NgForOf, i1.NgIf, i2.SchemaFormComponent, i3.SchemaCustomAttributesComponent], styles: [".schema[_ngcontent-%COMP%] .info-label{display:block}.schema[_ngcontent-%COMP%] input.form-control{width:calc(100% - 24px);padding:11px;border:1px solid #DDD;border-radius:3px;background:#FFF}.schema[_ngcontent-%COMP%] input.form-control:disabled{background:#ccc}.schema[_ngcontent-%COMP%] select.form-control{width:100%;padding:11px;border-radius:4px;border:1px solid #DDD;color:#777;cursor:pointer}.schema[_ngcontent-%COMP%] .ng-select-container{height:38px!important;min-height:38px!important}.schema[_ngcontent-%COMP%] .btn-outline-primary{padding:5px 15px;background:var(--color-primary);border:1px solid var(--color-secondary);color:var(--color-secondary);border-radius:4px;cursor:pointer}.schema[_ngcontent-%COMP%] .btn-outline-primary:hover{background:var(--color-primary-hover)}.schema[_ngcontent-%COMP%] .subsection-item-title{color:var(--color-primary)}.schema[_ngcontent-%COMP%] array-session .subsection-element{color:var(--color-primary)}"] });
84
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SchemaFormRenderComponent, [{
85
- type: Component,
86
- args: [{ selector: 'schema-form-render', template: "<div class=\"schema\" *ngIf=\"loaded\">\r\n <schema-form\r\n [selectPlaceHolderLabel]=\"selectPlaceHolderLabel\"\r\n [selectSearchPlaceHolderLabel]=\"selectSearchPlaceHolderLabel\"\r\n [selectClearLabel]=\"selectClearLabel\"\r\n [selectNotFoundLabel]=\"selectNotFoundLabel\"\r\n [requiredLabel]=\"requiredLabel\"\r\n [addItemLabel]=\"addItemLabel\"\r\n [addLoopLabel]=\"addLoopLabel\"\r\n [additionalAttributesLabel]=\"additionalAttributesLabel\"\r\n [customAttributeRemoveLabel]=\"customAttributeRemoveLabel\"\r\n [newCustomFieldNameLabel]=\"newCustomFieldNameLabel\"\r\n [newCustomFieldValueLabel]=\"newCustomFieldValueLabel\"\r\n [newCustomFieldAddLabel]=\"newCustomFieldAddLabel\"\r\n [newCustomFieldSaveLabel]=\"newCustomFieldSaveLabel\"\r\n [newCustomFieldCancelLabel]=\"newCustomFieldCancelLabel\"\r\n [idPrefix]=\"idPrefix\"\r\n [(model)]=\"model\"\r\n [schemas]=\"schemas\"\r\n [editing]=\"this.editing\"></schema-form>\r\n\r\n <div class=\"schema-properties\" *ngFor=\"let schema of schemas; let i = index\">\r\n <div class=\"row struct-custom-properties\" *ngIf=\"this.model && customProperties\">\r\n <div class=\"col-md-12\">\r\n <label class=\"info-label bold\">{{ this.additionalAttributesLabel }}</label>\r\n <schema-custom-attributes\r\n [customAttributeRemoveLabel]=\"customAttributeRemoveLabel\"\r\n [newCustomFieldNameLabel]=\"newCustomFieldNameLabel\"\r\n [newCustomFieldValueLabel]=\"newCustomFieldValueLabel\"\r\n [newCustomFieldAddLabel]=\"newCustomFieldAddLabel\"\r\n [newCustomFieldSaveLabel]=\"newCustomFieldSaveLabel\"\r\n [newCustomFieldCancelLabel]=\"newCustomFieldCancelLabel\"\r\n [(model)]=\"model.customAttributes\"\r\n [onDropFunction]=\"onDrop\">\r\n </schema-custom-attributes>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [".schema ::ng-deep .info-label{display:block}.schema ::ng-deep input.form-control{width:calc(100% - 24px);padding:11px;border:1px solid #DDD;border-radius:3px;background:#FFF}.schema ::ng-deep input.form-control:disabled{background:#ccc}.schema ::ng-deep select.form-control{width:100%;padding:11px;border-radius:4px;border:1px solid #DDD;color:#777;cursor:pointer}.schema ::ng-deep .ng-select-container{height:38px!important;min-height:38px!important}.schema ::ng-deep .btn-outline-primary{padding:5px 15px;background:var(--color-primary);border:1px solid var(--color-secondary);color:var(--color-secondary);border-radius:4px;cursor:pointer}.schema ::ng-deep .btn-outline-primary:hover{background:var(--color-primary-hover)}.schema ::ng-deep .subsection-item-title{color:var(--color-primary)}.schema ::ng-deep array-session .subsection-element{color:var(--color-primary)}\n"] }]
87
- }], null, { requiredLabel: [{
88
- type: Input
89
- }], addItemLabel: [{
90
- type: Input
91
- }], addLoopLabel: [{
92
- type: Input
93
- }], additionalAttributesLabel: [{
94
- type: Input
95
- }], customAttributeRemoveLabel: [{
96
- type: Input
97
- }], newCustomFieldNameLabel: [{
98
- type: Input
99
- }], newCustomFieldValueLabel: [{
100
- type: Input
101
- }], newCustomFieldAddLabel: [{
102
- type: Input
103
- }], newCustomFieldSaveLabel: [{
104
- type: Input
105
- }], newCustomFieldCancelLabel: [{
106
- type: Input
107
- }], selectPlaceHolderLabel: [{
108
- type: Input
109
- }], selectSearchPlaceHolderLabel: [{
110
- type: Input
111
- }], selectClearLabel: [{
112
- type: Input
113
- }], selectNotFoundLabel: [{
114
- type: Input
115
- }], idPrefix: [{
116
- type: Input
117
- }], schemas: [{
118
- type: Input
119
- }], customProperties: [{
120
- type: Input
121
- }], editing: [{
122
- type: Input
123
- }], inputType: [{
124
- type: Input
125
- }] }); })();
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0tcmVuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvc2NoZW1hcy9zcmMvc2NoZW1hLWZvcm0tcmVuZGVyLnRzIiwiLi4vLi4vLi4vcHJvamVjdHMvc2NoZW1hcy9zcmMvc2NoZW1hLWZvcm0tcmVuZGVyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBRTdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7Ozs7OztJQ21CekMsOEJBQWlGLGFBQUEsZUFBQTtJQUU5QyxZQUFvQztJQUFBLGlCQUFRO0lBQzNFLG1EQVE0QjtJQUQxQix1TkFBVyxzREFDaEIsSUFEdUM7SUFFcEMsaUJBQTJCLEVBQUEsRUFBQTs7O0lBVkksZUFBb0M7SUFBcEMsc0RBQW9DO0lBRWpFLGVBQXlEO0lBQXpELDhFQUF5RCwyREFBQSw2REFBQSx5REFBQSwyREFBQSwrREFBQSx3Q0FBQSxpQ0FBQTs7O0lBTGpFLDhCQUE2RTtJQUMzRSxzRkFjTTtJQUNSLGlCQUFNOzs7SUFmdUMsZUFBb0M7SUFBcEMsOERBQW9DOzs7O0lBdEJuRiw4QkFBbUMscUJBQUE7SUFpQi9CLHNPQUFpQjtJQUVRLGlCQUFjO0lBRXpDLGdGQWdCTTtJQUVSLGlCQUFNOzs7SUFyQ0YsZUFBaUQ7SUFBakQsc0VBQWlELHFFQUFBLDZDQUFBLG1EQUFBLHVDQUFBLHFDQUFBLHFDQUFBLCtEQUFBLGlFQUFBLDJEQUFBLDZEQUFBLHlEQUFBLDJEQUFBLCtEQUFBLDZCQUFBLHVCQUFBLDJCQUFBLDJCQUFBO0lBbUJELGVBQVk7SUFBWix3Q0FBWTs7QURYaEUsTUFBTSxPQUFPLHlCQUEwQixTQUFRLG1CQUFtQjtJQUxsRTs7UUFNa0Isa0JBQWEsR0FBRyxZQUFZLENBQUE7UUFDNUIsaUJBQVksR0FBRyxVQUFVLENBQUE7UUFDekIsaUJBQVksR0FBRyxVQUFVLENBQUE7UUFDekIsOEJBQXlCLEdBQUcsbUJBQW1CLENBQUE7UUFDL0MsK0JBQTBCLEdBQUcsUUFBUSxDQUFBO1FBQ3JDLDRCQUF1QixHQUFHLE1BQU0sQ0FBQTtRQUNoQyw2QkFBd0IsR0FBRyxPQUFPLENBQUE7UUFDbEMsMkJBQXNCLEdBQUcsS0FBSyxDQUFBO1FBQzlCLDRCQUF1QixHQUFHLE1BQU0sQ0FBQTtRQUNoQyw4QkFBeUIsR0FBRyxRQUFRLENBQUE7UUFDcEMsMkJBQXNCLEdBQUcsYUFBYSxDQUFBO1FBQ3RDLGlDQUE0QixHQUFHLFFBQVEsQ0FBQTtRQUN2QyxxQkFBZ0IsR0FBRyxPQUFPLENBQUE7UUFDMUIsd0JBQW1CLEdBQUcsZ0JBQWdCLENBQUE7UUFHN0MsWUFBTyxHQUFHLEVBQUUsQ0FBQTtRQUNaLHFCQUFnQixHQUFHLEtBQUssQ0FBQTtRQUN4QixZQUFPLEdBQUcsS0FBSyxDQUFBO1FBR3hCLFdBQU0sR0FBRyxLQUFLLENBQUE7S0FhZjtJQVhDLGtCQUFrQjtRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQTtJQUNwQixDQUFDO0lBRUQsTUFBTSxDQUFFLE1BQW9CLEVBQUUsWUFBaUI7UUFDN0MsT0FBTyxZQUFZLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRCxLQUFLLENBQUUsS0FBYTtRQUNsQixPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsV0FBVyxLQUFLLEVBQUUsQ0FBQTtJQUMzQyxDQUFDOztxUkFsQ1UseUJBQXlCLFNBQXpCLHlCQUF5Qjs0RUFBekIseUJBQXlCO1FDVnRDLDJFQXVDTTs7UUF2Q2UsaUNBQVk7O3VGRFVwQix5QkFBeUI7Y0FMckMsU0FBUzsyQkFDRSxvQkFBb0I7Z0JBS2QsYUFBYTtrQkFBNUIsS0FBSztZQUNVLFlBQVk7a0JBQTNCLEtBQUs7WUFDVSxZQUFZO2tCQUEzQixLQUFLO1lBQ1UseUJBQXlCO2tCQUF4QyxLQUFLO1lBQ1UsMEJBQTBCO2tCQUF6QyxLQUFLO1lBQ1UsdUJBQXVCO2tCQUF0QyxLQUFLO1lBQ1Usd0JBQXdCO2tCQUF2QyxLQUFLO1lBQ1Usc0JBQXNCO2tCQUFyQyxLQUFLO1lBQ1UsdUJBQXVCO2tCQUF0QyxLQUFLO1lBQ1UseUJBQXlCO2tCQUF4QyxLQUFLO1lBQ1Usc0JBQXNCO2tCQUFyQyxLQUFLO1lBQ1UsNEJBQTRCO2tCQUEzQyxLQUFLO1lBQ1UsZ0JBQWdCO2tCQUEvQixLQUFLO1lBQ1UsbUJBQW1CO2tCQUFsQyxLQUFLO1lBRUcsUUFBUTtrQkFBaEIsS0FBSztZQUNHLE9BQU87a0JBQWYsS0FBSztZQUNHLGdCQUFnQjtrQkFBeEIsS0FBSztZQUNHLE9BQU87a0JBQWYsS0FBSztZQUNHLFNBQVM7a0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgQmFzZVNjaGVtYUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS1zY2hlbWEuY29tcG9uZW50J1xyXG5pbXBvcnQgeyBEbmREcm9wRXZlbnQgfSBmcm9tICduZ3gtZHJhZy1kcm9wJ1xyXG5pbXBvcnQgeyBvbkRyb3BTdHJ1Y3QgfSBmcm9tICcuL3N0cnVjdC51dGlscydcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2NoZW1hLWZvcm0tcmVuZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJ3NjaGVtYS1mb3JtLXJlbmRlci5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zY2hlbWEtZm9ybS1yZW5kZXIuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTY2hlbWFGb3JtUmVuZGVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZVNjaGVtYUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZExhYmVsID0gJyhyZXF1aXJlZCknXHJcbiAgQElucHV0KCkgcHVibGljIGFkZEl0ZW1MYWJlbCA9ICdBZGQgSXRlbSdcclxuICBASW5wdXQoKSBwdWJsaWMgYWRkTG9vcExhYmVsID0gJ0FkZCBMb29wJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGRpdGlvbmFsQXR0cmlidXRlc0xhYmVsID0gJ0FkZGl0aW9uYWwgRmllbGRzJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21BdHRyaWJ1dGVSZW1vdmVMYWJlbCA9ICdSZW1vdmUnXHJcbiAgQElucHV0KCkgcHVibGljIG5ld0N1c3RvbUZpZWxkTmFtZUxhYmVsID0gJ05hbWUnXHJcbiAgQElucHV0KCkgcHVibGljIG5ld0N1c3RvbUZpZWxkVmFsdWVMYWJlbCA9ICdWYWx1ZSdcclxuICBASW5wdXQoKSBwdWJsaWMgbmV3Q3VzdG9tRmllbGRBZGRMYWJlbCA9ICdBZGQnXHJcbiAgQElucHV0KCkgcHVibGljIG5ld0N1c3RvbUZpZWxkU2F2ZUxhYmVsID0gJ1NhdmUnXHJcbiAgQElucHV0KCkgcHVibGljIG5ld0N1c3RvbUZpZWxkQ2FuY2VsTGFiZWwgPSAnQ2FuY2VsJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RQbGFjZUhvbGRlckxhYmVsID0gJ1NlbGVjdCBJdGVtJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RTZWFyY2hQbGFjZUhvbGRlckxhYmVsID0gJ1NlYXJjaCdcclxuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0Q2xlYXJMYWJlbCA9ICdDbGVhcidcclxuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0Tm90Rm91bmRMYWJlbCA9ICdObyBJdGVtcyBGb3VuZCdcclxuXHJcbiAgQElucHV0KCkgaWRQcmVmaXg6IHN0cmluZyB8IHVuZGVmaW5lZFxyXG4gIEBJbnB1dCgpIHNjaGVtYXMgPSBbXVxyXG4gIEBJbnB1dCgpIGN1c3RvbVByb3BlcnRpZXMgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIGVkaXRpbmcgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIGlucHV0VHlwZTogc3RyaW5nIHwgdW5kZWZpbmVkXHJcblxyXG4gIGxvYWRlZCA9IGZhbHNlXHJcblxyXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCAoKTogdm9pZCB7XHJcbiAgICB0aGlzLmxvYWRlZCA9IHRydWVcclxuICB9XHJcblxyXG4gIG9uRHJvcCAoJGV2ZW50OiBEbmREcm9wRXZlbnQsIG1vZGVsRWxlbWVudDogYW55KTogYW55IHtcclxuICAgIHJldHVybiBvbkRyb3BTdHJ1Y3QoJGV2ZW50LCBtb2RlbEVsZW1lbnQpXHJcbiAgfVxyXG5cclxuICBnZXRJZCAoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7dGhpcy5pZFByZWZpeH0tc3RydWN0LSR7aW5kZXh9YFxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwic2NoZW1hXCIgKm5nSWY9XCJsb2FkZWRcIj5cclxuICA8c2NoZW1hLWZvcm1cclxuICAgIFtzZWxlY3RQbGFjZUhvbGRlckxhYmVsXT1cInNlbGVjdFBsYWNlSG9sZGVyTGFiZWxcIlxyXG4gICAgW3NlbGVjdFNlYXJjaFBsYWNlSG9sZGVyTGFiZWxdPVwic2VsZWN0U2VhcmNoUGxhY2VIb2xkZXJMYWJlbFwiXHJcbiAgICBbc2VsZWN0Q2xlYXJMYWJlbF09XCJzZWxlY3RDbGVhckxhYmVsXCJcclxuICAgIFtzZWxlY3ROb3RGb3VuZExhYmVsXT1cInNlbGVjdE5vdEZvdW5kTGFiZWxcIlxyXG4gICAgW3JlcXVpcmVkTGFiZWxdPVwicmVxdWlyZWRMYWJlbFwiXHJcbiAgICBbYWRkSXRlbUxhYmVsXT1cImFkZEl0ZW1MYWJlbFwiXHJcbiAgICBbYWRkTG9vcExhYmVsXT1cImFkZExvb3BMYWJlbFwiXHJcbiAgICBbYWRkaXRpb25hbEF0dHJpYnV0ZXNMYWJlbF09XCJhZGRpdGlvbmFsQXR0cmlidXRlc0xhYmVsXCJcclxuICAgIFtjdXN0b21BdHRyaWJ1dGVSZW1vdmVMYWJlbF09XCJjdXN0b21BdHRyaWJ1dGVSZW1vdmVMYWJlbFwiXHJcbiAgICBbbmV3Q3VzdG9tRmllbGROYW1lTGFiZWxdPVwibmV3Q3VzdG9tRmllbGROYW1lTGFiZWxcIlxyXG4gICAgW25ld0N1c3RvbUZpZWxkVmFsdWVMYWJlbF09XCJuZXdDdXN0b21GaWVsZFZhbHVlTGFiZWxcIlxyXG4gICAgW25ld0N1c3RvbUZpZWxkQWRkTGFiZWxdPVwibmV3Q3VzdG9tRmllbGRBZGRMYWJlbFwiXHJcbiAgICBbbmV3Q3VzdG9tRmllbGRTYXZlTGFiZWxdPVwibmV3Q3VzdG9tRmllbGRTYXZlTGFiZWxcIlxyXG4gICAgW25ld0N1c3RvbUZpZWxkQ2FuY2VsTGFiZWxdPVwibmV3Q3VzdG9tRmllbGRDYW5jZWxMYWJlbFwiXHJcbiAgICBbaWRQcmVmaXhdPVwiaWRQcmVmaXhcIlxyXG4gICAgWyhtb2RlbCldPVwibW9kZWxcIlxyXG4gICAgW3NjaGVtYXNdPVwic2NoZW1hc1wiXHJcbiAgICBbZWRpdGluZ109XCJ0aGlzLmVkaXRpbmdcIj48L3NjaGVtYS1mb3JtPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwic2NoZW1hLXByb3BlcnRpZXNcIiAqbmdGb3I9XCJsZXQgc2NoZW1hIG9mIHNjaGVtYXM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgc3RydWN0LWN1c3RvbS1wcm9wZXJ0aWVzXCIgKm5nSWY9XCJ0aGlzLm1vZGVsICYmIGN1c3RvbVByb3BlcnRpZXNcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImluZm8tbGFiZWwgYm9sZFwiPnt7IHRoaXMuYWRkaXRpb25hbEF0dHJpYnV0ZXNMYWJlbCB9fTwvbGFiZWw+XHJcbiAgICAgICAgPHNjaGVtYS1jdXN0b20tYXR0cmlidXRlc1xyXG4gICAgICAgICAgW2N1c3RvbUF0dHJpYnV0ZVJlbW92ZUxhYmVsXT1cImN1c3RvbUF0dHJpYnV0ZVJlbW92ZUxhYmVsXCJcclxuICAgICAgICAgIFtuZXdDdXN0b21GaWVsZE5hbWVMYWJlbF09XCJuZXdDdXN0b21GaWVsZE5hbWVMYWJlbFwiXHJcbiAgICAgICAgICBbbmV3Q3VzdG9tRmllbGRWYWx1ZUxhYmVsXT1cIm5ld0N1c3RvbUZpZWxkVmFsdWVMYWJlbFwiXHJcbiAgICAgICAgICBbbmV3Q3VzdG9tRmllbGRBZGRMYWJlbF09XCJuZXdDdXN0b21GaWVsZEFkZExhYmVsXCJcclxuICAgICAgICAgIFtuZXdDdXN0b21GaWVsZFNhdmVMYWJlbF09XCJuZXdDdXN0b21GaWVsZFNhdmVMYWJlbFwiXHJcbiAgICAgICAgICBbbmV3Q3VzdG9tRmllbGRDYW5jZWxMYWJlbF09XCJuZXdDdXN0b21GaWVsZENhbmNlbExhYmVsXCJcclxuICAgICAgICAgIFsobW9kZWwpXT1cIm1vZGVsLmN1c3RvbUF0dHJpYnV0ZXNcIlxyXG4gICAgICAgICAgW29uRHJvcEZ1bmN0aW9uXT1cIm9uRHJvcFwiPlxyXG4gICAgICAgIDwvc2NoZW1hLWN1c3RvbS1hdHRyaWJ1dGVzPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,14 +0,0 @@
1
- export class SchemaValidationField {
2
- constructor(emptyFields, invalidMinLengthFields, invalidMaxLengthFields) {
3
- this.emptyFields = emptyFields;
4
- this.invalidMinLengthFields = invalidMinLengthFields;
5
- this.invalidMaxLengthFields = invalidMaxLengthFields;
6
- }
7
- isValidSchemaFields() {
8
- return this.emptyFields?.length < 1 && this.invalidMinLengthFields?.length < 1 && this.invalidMaxLengthFields?.length < 1;
9
- }
10
- isInvalidSchemaFields() {
11
- return !this.isValidSchemaFields();
12
- }
13
- }
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLXZhbGlkYXRpb24tZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9zY2hlbWFzL3NyYy9zY2hlbWEtdmFsaWRhdGlvbi1maWVsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsTUFBTSxPQUFPLHFCQUFxQjtJQU1oQyxZQUFhLFdBQTRCLEVBQUUsc0JBQXVDLEVBQUUsc0JBQXVDO1FBQ3pILElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFBO1FBQzlCLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxzQkFBc0IsQ0FBQTtRQUNwRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsc0JBQXNCLENBQUE7SUFDdEQsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsTUFBTSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsTUFBTSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsTUFBTSxHQUFHLENBQUMsQ0FBQTtJQUMzSCxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQTtJQUNwQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBTdHJ1Y3RGaWVsZFR5cGUgPSBBcnJheTx7XHJcbiAgdGl0bGU/OiBzdHJpbmdcclxuICBpZDogc3RyaW5nXHJcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcclxuICBwcm9wZXJ0eU9yZGVyPzogbnVtYmVyXHJcbiAgbWluTGVuZ3RoPzogbnVtYmVyXHJcbiAgbWF4TGVuZ3RoPzogbnVtYmVyXHJcbn0+XHJcblxyXG5leHBvcnQgdHlwZSBFcnJvcnNMYWJlbCA9IEFycmF5PHtcclxuICB0eXBlOiBzdHJpbmdcclxuICBmaWVsZE5hbWU/OiBzdHJpbmdcclxuICBtaW5MZW5ndGg/OiBudW1iZXJcclxuICBtYXhMZW5ndGg/OiBudW1iZXJcclxufT5cclxuXHJcbmV4cG9ydCBjbGFzcyBTY2hlbWFWYWxpZGF0aW9uRmllbGQge1xuICBlbXB0eUZpZWxkczogU3RydWN0RmllbGRUeXBlXHJcbiAgaW52YWxpZE1pbkxlbmd0aEZpZWxkczogU3RydWN0RmllbGRUeXBlXHJcbiAgaW52YWxpZE1heExlbmd0aEZpZWxkczogU3RydWN0RmllbGRUeXBlXHJcbiAgdmFsaWRhdGlvbkVycm9yc0xhYmVsOiBFcnJvcnNMYWJlbCB8IHVuZGVmaW5lZFxyXG5cclxuICBjb25zdHJ1Y3RvciAoZW1wdHlGaWVsZHM6IFN0cnVjdEZpZWxkVHlwZSwgaW52YWxpZE1pbkxlbmd0aEZpZWxkczogU3RydWN0RmllbGRUeXBlLCBpbnZhbGlkTWF4TGVuZ3RoRmllbGRzOiBTdHJ1Y3RGaWVsZFR5cGUpIHtcclxuICAgIHRoaXMuZW1wdHlGaWVsZHMgPSBlbXB0eUZpZWxkc1xyXG4gICAgdGhpcy5pbnZhbGlkTWluTGVuZ3RoRmllbGRzID0gaW52YWxpZE1pbkxlbmd0aEZpZWxkc1xyXG4gICAgdGhpcy5pbnZhbGlkTWF4TGVuZ3RoRmllbGRzID0gaW52YWxpZE1heExlbmd0aEZpZWxkc1xyXG4gIH1cclxuXHJcbiAgaXNWYWxpZFNjaGVtYUZpZWxkcyAoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5lbXB0eUZpZWxkcz8ubGVuZ3RoIDwgMSAmJiB0aGlzLmludmFsaWRNaW5MZW5ndGhGaWVsZHM/Lmxlbmd0aCA8IDEgJiYgdGhpcy5pbnZhbGlkTWF4TGVuZ3RoRmllbGRzPy5sZW5ndGggPCAxXHJcbiAgfVxyXG5cclxuICBpc0ludmFsaWRTY2hlbWFGaWVsZHMgKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICF0aGlzLmlzVmFsaWRTY2hlbWFGaWVsZHMoKVxyXG4gIH1cbn1cclxuIl19
@@ -1,114 +0,0 @@
1
- import { Injectable, Optional, SkipSelf } from '@angular/core';
2
- import { FormControl, Validators } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- export class TypeScriptCompileBase {
5
- getTranslate(text) {
6
- return text;
7
- }
8
- addItemToFormProperties(formProperties, item, key) {
9
- this.translateProperties(item);
10
- if (item.minLength && item.minLength > 0) {
11
- formProperties[key] = new FormControl([null, [Validators.required]]);
12
- }
13
- else {
14
- formProperties[key] = new FormControl([null]);
15
- }
16
- }
17
- compileProperties(input) {
18
- const compiledProperties = [];
19
- const formProperties = {};
20
- let inputData = {};
21
- const inputToCompile = JSON.parse(JSON.stringify(input));
22
- this.translateProperties(inputToCompile);
23
- if (inputToCompile.properties) {
24
- if (inputToCompile.type === 'array') {
25
- inputData = [];
26
- }
27
- if (inputToCompile.type === 'object') {
28
- inputData = {};
29
- }
30
- inputToCompile.id = 'inputData';
31
- this.proccessProperties(inputToCompile, formProperties, 'inputData');
32
- this.translateProperties(inputToCompile);
33
- compiledProperties.push(inputToCompile);
34
- }
35
- else if (inputToCompile.type === 'array') {
36
- inputToCompile.id = 'inputData';
37
- inputData = [];
38
- this.addItemToFormProperties(formProperties, inputToCompile, 'inputData');
39
- compiledProperties.push(inputToCompile);
40
- }
41
- else if (!inputToCompile.type) {
42
- for (let index = 0; index < Object.keys(inputToCompile).length; index++) {
43
- const key = Object.keys(inputToCompile)[index];
44
- const item = inputToCompile[key];
45
- item.id = key;
46
- if (item.type === 'array') {
47
- inputData[item.id] = [];
48
- }
49
- if (item.type === 'object') {
50
- inputData[item.id] = {};
51
- }
52
- this.proccessProperties(item, formProperties, key);
53
- this.translateProperties(item);
54
- compiledProperties.push(item);
55
- }
56
- }
57
- compiledProperties.sort((a, b) => a.propertyOrder - b.propertyOrder);
58
- return { compiledProperties, formProperties, inputData };
59
- }
60
- translateProperties(input) {
61
- if (input?.title) {
62
- input.title = this.getTranslate(input.title);
63
- }
64
- if (input?.description) {
65
- input.description = this.getTranslate(input.description);
66
- }
67
- if (input?.options instanceof Array) {
68
- input?.options.forEach((option) => {
69
- option.value = this.getTranslate(option.value);
70
- });
71
- }
72
- }
73
- proccessProperties(item, formProperties, key) {
74
- this.translateProperties(item);
75
- if (this.hasProperties(item)) {
76
- const arFieldsChild = [];
77
- for (let indexChild = 0; indexChild < Object.keys(item.properties).length; indexChild++) {
78
- const keyChild = Object.keys(item.properties)[indexChild];
79
- const itemChild = item.properties[keyChild];
80
- itemChild.id = keyChild;
81
- if (this.hasProperties(itemChild)) {
82
- this.proccessProperties(itemChild, formProperties, keyChild);
83
- arFieldsChild.push(itemChild);
84
- }
85
- else {
86
- this.addItemToFormProperties(formProperties, itemChild, keyChild);
87
- arFieldsChild.push(itemChild);
88
- }
89
- }
90
- item.properties = arFieldsChild;
91
- }
92
- else {
93
- this.addItemToFormProperties(formProperties, item, key);
94
- }
95
- }
96
- hasProperties(item) {
97
- return item.type === 'object' || (item.type === 'array' && item.properties);
98
- }
99
- }
100
- TypeScriptCompileBase.ɵfac = function TypeScriptCompileBase_Factory(t) { return new (t || TypeScriptCompileBase)(); };
101
- TypeScriptCompileBase.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: TypeScriptCompileBase, factory: TypeScriptCompileBase.ɵfac, providedIn: 'root' });
102
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TypeScriptCompileBase, [{
103
- type: Injectable,
104
- args: [{ providedIn: 'root' }]
105
- }], null, null); })();
106
- export function APIPASS_TYPESCRIPT_COMPILE_BASE_PROVIDER_FACTORY(parentIntl) {
107
- return parentIntl || new TypeScriptCompileBase();
108
- }
109
- export const APIPASS_TYPESCRIPT_COMPILE_INTL_PROVIDER = {
110
- provide: TypeScriptCompileBase,
111
- deps: [[new Optional(), new SkipSelf(), TypeScriptCompileBase]],
112
- useFactory: APIPASS_TYPESCRIPT_COMPILE_BASE_PROVIDER_FACTORY
113
- };
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1zY3JpcHQtY29tcGlsZS5iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2NoZW1hcy9zcmMvdHlwZS1zY3JpcHQtY29tcGlsZS90eXBlLXNjcmlwdC1jb21waWxlLmJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7O0FBR3hELE1BQU0sT0FBTyxxQkFBcUI7SUFDdEIsWUFBWSxDQUFFLElBQVk7UUFDbEMsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRVMsdUJBQXVCLENBQUUsY0FBbUIsRUFBRSxJQUFTLEVBQUUsR0FBVztRQUM1RSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDOUIsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxFQUFFO1lBQ3hDLGNBQWMsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUE7U0FDckU7YUFBTTtZQUNMLGNBQWMsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7U0FDOUM7SUFDSCxDQUFDO0lBRU0saUJBQWlCLENBQUUsS0FBVTtRQUtsQyxNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQTtRQUM3QixNQUFNLGNBQWMsR0FBRyxFQUFFLENBQUE7UUFDekIsSUFBSSxTQUFTLEdBQVEsRUFBRSxDQUFBO1FBQ3ZCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFL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QUksQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFBO1NBQ3hEO0lBQ0gsQ0FBQztJQUVTLGFBQWEsQ0FBRSxJQUFTO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDN0UsQ0FBQzs7MEZBdEdVLHFCQUFxQjsyRUFBckIscUJBQXFCLFdBQXJCLHFCQUFxQixtQkFEUixNQUFNO3VGQUNuQixxQkFBcUI7Y0FEakMsVUFBVTtlQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7QUEwR2xDLE1BQU0sVUFBVSxnREFBZ0QsQ0FBRSxVQUFpQztJQUNqRyxPQUFPLFVBQVUsSUFBSSxJQUFJLHFCQUFxQixFQUFFLENBQUE7QUFDbEQsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLHdDQUF3QyxHQUFRO0lBQzNELE9BQU8sRUFBRSxxQkFBcUI7SUFDOUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLElBQUksUUFBUSxFQUFFLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUMvRCxVQUFVLEVBQUUsZ0RBQWdEO0NBQzdELENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIFR5cGVTY3JpcHRDb21waWxlQmFzZSB7XHJcbiAgcHJvdGVjdGVkIGdldFRyYW5zbGF0ZSAodGV4dDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0ZXh0XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgYWRkSXRlbVRvRm9ybVByb3BlcnRpZXMgKGZvcm1Qcm9wZXJ0aWVzOiBhbnksIGl0ZW06IGFueSwga2V5OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMudHJhbnNsYXRlUHJvcGVydGllcyhpdGVtKVxyXG4gICAgaWYgKGl0ZW0ubWluTGVuZ3RoICYmIGl0ZW0ubWluTGVuZ3RoID4gMCkge1xyXG4gICAgICBmb3JtUHJvcGVydGllc1trZXldID0gbmV3IEZvcm1Db250cm9sKFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZm9ybVByb3BlcnRpZXNba2V5XSA9IG5ldyBGb3JtQ29udHJvbChbbnVsbF0pXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY29tcGlsZVByb3BlcnRpZXMgKGlucHV0OiBhbnkpOiB7XHJcbiAgICBjb21waWxlZFByb3BlcnRpZXM6IGFueVxyXG4gICAgZm9ybVByb3BlcnRpZXM6IGFueVxyXG4gICAgaW5wdXREYXRhOiBhbnlcclxuICB9IHtcclxuICAgIGNvbnN0IGNvbXBpbGVkUHJvcGVydGllcyA9IFtdXHJcbiAgICBjb25zdCBmb3JtUHJvcGVydGllcyA9IHt9XHJcbiAgICBsZXQgaW5wdXREYXRhOiBhbnkgPSB7fVxyXG4gICAgY29uc3QgaW5wdXRUb0NvbXBpbGUgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGlucHV0KSlcclxuICAgIHRoaXMudHJhbnNsYXRlUHJvcGVydGllcyhpbnB1dFRvQ29tcGlsZSlcclxuXHJcbiAgICBpZiAoaW5wdXRUb0NvbXBpbGUucHJvcGVydGllcykge1xyXG4gICAgICBpZiAoaW5wdXRUb0NvbXBpbGUudHlwZSA9PT0gJ2FycmF5Jykge1xyXG4gICAgICAgIGlucHV0RGF0YSA9IFtdXHJcbiAgICAgIH1cclxuICAgICAgaWYgKGlucHV0VG9Db21waWxlLnR5cGUgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgaW5wdXREYXRhID0ge31cclxuICAgICAgfVxyXG4gICAgICBpbnB1dFRvQ29tcGlsZS5pZCA9ICdpbnB1dERhdGEnXHJcbiAgICAgIHRoaXMucHJvY2Nlc3NQcm9wZXJ0aWVzKGlucHV0VG9Db21waWxlLCBmb3JtUHJvcGVydGllcywgJ2lucHV0RGF0YScpXHJcbiAgICAgIHRoaXMudHJhbnNsYXRlUHJvcGVydGllcyhpbnB1dFRvQ29tcGlsZSlcclxuICAgICAgY29tcGlsZWRQcm9wZXJ0aWVzLnB1c2goaW5wdXRUb0NvbXBpbGUpXHJcbiAgICB9IGVsc2UgaWYgKGlucHV0VG9Db21waWxlLnR5cGUgPT09ICdhcnJheScpIHtcclxuICAgICAgaW5wdXRUb0NvbXBpbGUuaWQgPSAnaW5wdXREYXRhJ1xyXG4gICAgICBpbnB1dERhdGEgPSBbXVxyXG4gICAgICB0aGlzLmFkZEl0ZW1Ub0Zvcm1Qcm9wZXJ0aWVzKGZvcm1Qcm9wZXJ0aWVzLCBpbnB1dFRvQ29tcGlsZSwgJ2lucHV0RGF0YScpXHJcbiAgICAgIGNvbXBpbGVkUHJvcGVydGllcy5wdXNoKGlucHV0VG9Db21waWxlKVxyXG4gICAgfSBlbHNlIGlmICghaW5wdXRUb0NvbXBpbGUudHlwZSkge1xyXG4gICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgT2JqZWN0LmtleXMoaW5wdXRUb0NvbXBpbGUpLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICAgIGNvbnN0IGtleSA9IE9iamVjdC5rZXlzKGlucHV0VG9Db21waWxlKVtpbmRleF1cclxuICAgICAgICBjb25zdCBpdGVtID0gaW5wdXRUb0NvbXBpbGVba2V5XVxyXG4gICAgICAgIGl0ZW0uaWQgPSBrZXlcclxuXHJcbiAgICAgICAgaWYgKGl0ZW0udHlwZSA9PT0gJ2FycmF5Jykge1xyXG4gICAgICAgICAgaW5wdXREYXRhW2l0ZW0uaWRdID0gW11cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChpdGVtLnR5cGUgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICBpbnB1dERhdGFbaXRlbS5pZF0gPSB7fVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnByb2NjZXNzUHJvcGVydGllcyhpdGVtLCBmb3JtUHJvcGVydGllcywga2V5KVxyXG4gICAgICAgIHRoaXMudHJhbnNsYXRlUHJvcGVydGllcyhpdGVtKVxyXG4gICAgICAgIGNvbXBpbGVkUHJvcGVydGllcy5wdXNoKGl0ZW0pXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjb21waWxlZFByb3BlcnRpZXMuc29ydCgoYSwgYikgPT4gYS5wcm9wZXJ0eU9yZGVyIC0gYi5wcm9wZXJ0eU9yZGVyKVxyXG4gICAgcmV0dXJuIHsgY29tcGlsZWRQcm9wZXJ0aWVzLCBmb3JtUHJvcGVydGllcywgaW5wdXREYXRhIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB0cmFuc2xhdGVQcm9wZXJ0aWVzIChpbnB1dDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoaW5wdXQ/LnRpdGxlKSB7XHJcbiAgICAgIGlucHV0LnRpdGxlID0gdGhpcy5nZXRUcmFuc2xhdGUoaW5wdXQudGl0bGUpXHJcbiAgICB9XHJcbiAgICBpZiAoaW5wdXQ/LmRlc2NyaXB0aW9uKSB7XHJcbiAgICAgIGlucHV0LmRlc2NyaXB0aW9uID0gdGhpcy5nZXRUcmFuc2xhdGUoaW5wdXQuZGVzY3JpcHRpb24pXHJcbiAgICB9XHJcbiAgICBpZiAoaW5wdXQ/Lm9wdGlvbnMgaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICBpbnB1dD8ub3B0aW9ucy5mb3JFYWNoKChvcHRpb246IGFueSkgPT4ge1xyXG4gICAgICAgIG9wdGlvbi52YWx1ZSA9IHRoaXMuZ2V0VHJhbnNsYXRlKG9wdGlvbi52YWx1ZSlcclxuICAgICAgfSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBwcm9jY2Vzc1Byb3BlcnRpZXMgKGl0ZW06IGFueSwgZm9ybVByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBrZXk6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy50cmFuc2xhdGVQcm9wZXJ0aWVzKGl0ZW0pXHJcbiAgICBpZiAodGhpcy5oYXNQcm9wZXJ0aWVzKGl0ZW0pKSB7XHJcbiAgICAgIGNvbnN0IGFyRmllbGRzQ2hpbGQgPSBbXVxyXG4gICAgICBmb3IgKGxldCBpbmRleENoaWxkID0gMDsgaW5kZXhDaGlsZCA8IE9iamVjdC5rZXlzKGl0ZW0ucHJvcGVydGllcykubGVuZ3RoOyBpbmRleENoaWxkKyspIHtcclxuICAgICAgICBjb25zdCBrZXlDaGlsZCA9IE9iamVjdC5rZXlzKGl0ZW0ucHJvcGVydGllcylbaW5kZXhDaGlsZF1cclxuICAgICAgICBjb25zdCBpdGVtQ2hpbGQgPSBpdGVtLnByb3BlcnRpZXNba2V5Q2hpbGRdXHJcbiAgICAgICAgaXRlbUNoaWxkLmlkID0ga2V5Q2hpbGRcclxuICAgICAgICBpZiAodGhpcy5oYXNQcm9wZXJ0aWVzKGl0ZW1DaGlsZCkpIHtcclxuICAgICAgICAgIHRoaXMucHJvY2Nlc3NQcm9wZXJ0aWVzKGl0ZW1DaGlsZCwgZm9ybVByb3BlcnRpZXMsIGtleUNoaWxkKVxyXG4gICAgICAgICAgYXJGaWVsZHNDaGlsZC5wdXNoKGl0ZW1DaGlsZClcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5hZGRJdGVtVG9Gb3JtUHJvcGVydGllcyhmb3JtUHJvcGVydGllcywgaXRlbUNoaWxkLCBrZXlDaGlsZClcclxuICAgICAgICAgIGFyRmllbGRzQ2hpbGQucHVzaChpdGVtQ2hpbGQpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGl0ZW0ucHJvcGVydGllcyA9IGFyRmllbGRzQ2hpbGRcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuYWRkSXRlbVRvRm9ybVByb3BlcnRpZXMoZm9ybVByb3BlcnRpZXMsIGl0ZW0sIGtleSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBoYXNQcm9wZXJ0aWVzIChpdGVtOiBhbnkpOiBhbnkge1xyXG4gICAgcmV0dXJuIGl0ZW0udHlwZSA9PT0gJ29iamVjdCcgfHwgKGl0ZW0udHlwZSA9PT0gJ2FycmF5JyAmJiBpdGVtLnByb3BlcnRpZXMpXHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gQVBJUEFTU19UWVBFU0NSSVBUX0NPTVBJTEVfQkFTRV9QUk9WSURFUl9GQUNUT1JZIChwYXJlbnRJbnRsOiBUeXBlU2NyaXB0Q29tcGlsZUJhc2UpOiBhbnkge1xyXG4gIHJldHVybiBwYXJlbnRJbnRsIHx8IG5ldyBUeXBlU2NyaXB0Q29tcGlsZUJhc2UoKVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgQVBJUEFTU19UWVBFU0NSSVBUX0NPTVBJTEVfSU5UTF9QUk9WSURFUjogYW55ID0ge1xyXG4gIHByb3ZpZGU6IFR5cGVTY3JpcHRDb21waWxlQmFzZSxcclxuICBkZXBzOiBbW25ldyBPcHRpb25hbCgpLCBuZXcgU2tpcFNlbGYoKSwgVHlwZVNjcmlwdENvbXBpbGVCYXNlXV0sXHJcbiAgdXNlRmFjdG9yeTogQVBJUEFTU19UWVBFU0NSSVBUX0NPTVBJTEVfQkFTRV9QUk9WSURFUl9GQUNUT1JZXHJcbn1cclxuIl19