@apipass/inputs 1.0.167 → 1.0.170
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/ace-editor-input/ace-editor-input.component.d.ts +45 -0
- package/esm2022/ace-editor-input/ace-editor-input.component.mjs +162 -0
- package/esm2022/inputs.module.mjs +10 -5
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/apipass-inputs.mjs +161 -5
- package/fesm2022/apipass-inputs.mjs.map +1 -1
- package/inputs.module.d.ts +22 -21
- package/package.json +3 -2
- package/public-api.d.ts +1 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { AfterContentInit } from '@angular/core';
|
|
2
|
+
import { DndDropEvent } from 'ngx-drag-drop';
|
|
3
|
+
import { AceEditorComponent } from '../ace-editor/component';
|
|
4
|
+
import { ValueAccessorBase } from '../value-acessor-base';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class AceEditorInputComponent extends ValueAccessorBase<string> implements AfterContentInit {
|
|
7
|
+
editor: AceEditorComponent;
|
|
8
|
+
title: string | undefined;
|
|
9
|
+
description: string | undefined;
|
|
10
|
+
previousStepsOutputAttributes: Record<string, {
|
|
11
|
+
type: string;
|
|
12
|
+
attributes: Record<string, any>;
|
|
13
|
+
}>;
|
|
14
|
+
mode: 'json' | 'html' | 'sql' | 'xml' | 'text';
|
|
15
|
+
ngAfterContentInit(): void;
|
|
16
|
+
private createAceEditorCustomCompletions;
|
|
17
|
+
beautify(): void;
|
|
18
|
+
setEditorCustomCompletions(editor: any, includeBrackets: boolean): void;
|
|
19
|
+
protected getOutputAttributesCodeCompletions(props: {
|
|
20
|
+
prefixIdentifier: string;
|
|
21
|
+
outputAttributes: Record<string, {
|
|
22
|
+
type: string;
|
|
23
|
+
attributes: Record<string, any>;
|
|
24
|
+
}>;
|
|
25
|
+
includeArrayMethods?: boolean;
|
|
26
|
+
includeBrackets?: boolean;
|
|
27
|
+
}): Array<{
|
|
28
|
+
caption: string;
|
|
29
|
+
value: string;
|
|
30
|
+
meta: string;
|
|
31
|
+
score: number;
|
|
32
|
+
}>;
|
|
33
|
+
private createCompletion;
|
|
34
|
+
parseItem(props: {
|
|
35
|
+
currentPath: string;
|
|
36
|
+
attributes: any;
|
|
37
|
+
includeArrayMethods?: boolean;
|
|
38
|
+
includeBrackets?: boolean;
|
|
39
|
+
}): string[];
|
|
40
|
+
private parseArrayItem;
|
|
41
|
+
private getArrayMethodsCodeCompletions;
|
|
42
|
+
onDropOnEditor(editor: AceEditorComponent, $event: DndDropEvent, addBrackets?: boolean): void;
|
|
43
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AceEditorInputComponent, never>;
|
|
44
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AceEditorInputComponent, "ace-editor-input", never, { "title": { "alias": "title"; "required": false; }; "description": { "alias": "description"; "required": false; }; "previousStepsOutputAttributes": { "alias": "previousStepsOutputAttributes"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; }, {}, never, never, false, never>;
|
|
45
|
+
}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { Component, forwardRef, Input, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { AceEditorComponent } from '../ace-editor/component';
|
|
3
|
+
import { ValueAccessorBase } from '../value-acessor-base';
|
|
4
|
+
import { beautifyRawDataContent } from '@apipass/frontend-utils';
|
|
5
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/common";
|
|
8
|
+
import * as i2 from "ngx-drag-drop";
|
|
9
|
+
import * as i3 from "@apipass/buttons";
|
|
10
|
+
import * as i4 from "../ace-editor/component";
|
|
11
|
+
class AceEditorInputComponent extends ValueAccessorBase {
|
|
12
|
+
editor;
|
|
13
|
+
title;
|
|
14
|
+
description;
|
|
15
|
+
previousStepsOutputAttributes = {};
|
|
16
|
+
mode;
|
|
17
|
+
ngAfterContentInit() {
|
|
18
|
+
this.createAceEditorCustomCompletions();
|
|
19
|
+
}
|
|
20
|
+
createAceEditorCustomCompletions() {
|
|
21
|
+
setTimeout(() => {
|
|
22
|
+
if (this.editor?.setCustomCompletions) {
|
|
23
|
+
this.setEditorCustomCompletions(this.editor, true);
|
|
24
|
+
}
|
|
25
|
+
}, 500);
|
|
26
|
+
}
|
|
27
|
+
beautify() {
|
|
28
|
+
const rawDataContent = this.editor.getEditor().getSession().getValue();
|
|
29
|
+
if (rawDataContent) {
|
|
30
|
+
const formattedContent = beautifyRawDataContent(rawDataContent);
|
|
31
|
+
this.editor.getEditor().getSession().setValue(formattedContent);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
setEditorCustomCompletions(editor, includeBrackets) {
|
|
35
|
+
editor.setCustomCompletions(this.getOutputAttributesCodeCompletions({
|
|
36
|
+
prefixIdentifier: '$',
|
|
37
|
+
outputAttributes: this.previousStepsOutputAttributes,
|
|
38
|
+
includeBrackets
|
|
39
|
+
}));
|
|
40
|
+
}
|
|
41
|
+
getOutputAttributesCodeCompletions(props) {
|
|
42
|
+
let attributesPaths = [];
|
|
43
|
+
for (const outputAttributesKey in props.outputAttributes) {
|
|
44
|
+
const outputAttribute = props.outputAttributes[outputAttributesKey];
|
|
45
|
+
const currentPath = `${props.prefixIdentifier}.${outputAttributesKey}`;
|
|
46
|
+
attributesPaths.push(this.createCompletion(currentPath, props.includeBrackets));
|
|
47
|
+
attributesPaths = attributesPaths.concat(this.parseItem({
|
|
48
|
+
...props,
|
|
49
|
+
currentPath,
|
|
50
|
+
attributes: outputAttribute.attributes
|
|
51
|
+
}));
|
|
52
|
+
}
|
|
53
|
+
return attributesPaths.map(value => {
|
|
54
|
+
return {
|
|
55
|
+
caption: value,
|
|
56
|
+
value,
|
|
57
|
+
meta: 'Step attribute',
|
|
58
|
+
score: 0
|
|
59
|
+
};
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
createCompletion(completion, includeBrackets) {
|
|
63
|
+
return includeBrackets ? `{{${completion}}}` : completion;
|
|
64
|
+
}
|
|
65
|
+
parseItem(props) {
|
|
66
|
+
let attributesPaths = [];
|
|
67
|
+
const currentPath = props.currentPath;
|
|
68
|
+
for (const attributeName in props.attributes) {
|
|
69
|
+
const attributeValue = props.attributes[attributeName];
|
|
70
|
+
const attributeTypeIsInvalid = typeof attributeValue?.type !== 'string' && !(attributeValue?.type instanceof String);
|
|
71
|
+
if (attributeValue?.type && attributeTypeIsInvalid) {
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
const attributeType = attributeValue?.type?.toUpperCase();
|
|
75
|
+
if (['STRING', 'NUMBER', 'BOOLEAN', 'AUTHORIZATION'].includes(attributeType)) {
|
|
76
|
+
attributesPaths.push(this.createCompletion(`${currentPath}.${attributeName}`, props.includeBrackets));
|
|
77
|
+
}
|
|
78
|
+
else if (attributeType === 'OBJECT') {
|
|
79
|
+
attributesPaths.push(this.createCompletion(`${currentPath}.${attributeName}`, props.includeBrackets));
|
|
80
|
+
attributesPaths = attributesPaths.concat(this.parseItem({
|
|
81
|
+
...props,
|
|
82
|
+
currentPath: `${currentPath}.${attributeName}`,
|
|
83
|
+
attributes: attributeValue.child ?? attributeValue.properties
|
|
84
|
+
}));
|
|
85
|
+
}
|
|
86
|
+
else if (attributeType === 'ARRAY') {
|
|
87
|
+
const arrayPaths = this.parseArrayItem(currentPath, attributeName, attributesPaths, props, attributeValue);
|
|
88
|
+
attributesPaths = attributesPaths.concat(arrayPaths);
|
|
89
|
+
}
|
|
90
|
+
else if (!attributeValue?.type) {
|
|
91
|
+
attributesPaths = attributesPaths.concat(this.parseItem({
|
|
92
|
+
...props,
|
|
93
|
+
currentPath,
|
|
94
|
+
attributes: { [attributeName]: { type: attributeValue } }
|
|
95
|
+
}));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return attributesPaths;
|
|
99
|
+
}
|
|
100
|
+
parseArrayItem(currentPath, attributeName, attributesPaths, props, attributeValue) {
|
|
101
|
+
attributesPaths.push(this.createCompletion(`${currentPath}.${attributeName}`, props.includeBrackets));
|
|
102
|
+
if (props.includeArrayMethods) {
|
|
103
|
+
attributesPaths = attributesPaths.concat(this.getArrayMethodsCodeCompletions(`${currentPath}.${attributeName}`));
|
|
104
|
+
}
|
|
105
|
+
attributesPaths.push(this.createCompletion(`${currentPath}.${attributeName}[0]`, props.includeBrackets));
|
|
106
|
+
attributesPaths = attributesPaths.concat(this.parseItem({
|
|
107
|
+
...props,
|
|
108
|
+
currentPath: `${currentPath}.${attributeName}[0]`,
|
|
109
|
+
attributes: attributeValue.child ?? attributeValue.properties
|
|
110
|
+
}));
|
|
111
|
+
return attributesPaths;
|
|
112
|
+
}
|
|
113
|
+
getArrayMethodsCodeCompletions(currentPath) {
|
|
114
|
+
return [
|
|
115
|
+
`${currentPath}.concat()`,
|
|
116
|
+
`${currentPath}.filter((element) => )`,
|
|
117
|
+
`${currentPath}.find((element) => )`,
|
|
118
|
+
`${currentPath}.forEach((element) => )`,
|
|
119
|
+
`${currentPath}.includes()`,
|
|
120
|
+
`${currentPath}.indexOf()`,
|
|
121
|
+
`${currentPath}.map((element) => )`,
|
|
122
|
+
`${currentPath}.push()`,
|
|
123
|
+
`${currentPath}.sort()`
|
|
124
|
+
];
|
|
125
|
+
}
|
|
126
|
+
onDropOnEditor(editor, $event, addBrackets) {
|
|
127
|
+
if ($event.data) {
|
|
128
|
+
let dropText = $event.data;
|
|
129
|
+
if (addBrackets) {
|
|
130
|
+
dropText = `{{${dropText}}}`;
|
|
131
|
+
}
|
|
132
|
+
editor.draggedText = dropText;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AceEditorInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
136
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: AceEditorInputComponent, selector: "ace-editor-input", inputs: { title: "title", description: "description", previousStepsOutputAttributes: "previousStepsOutputAttributes", mode: "mode" }, providers: [{
|
|
137
|
+
provide: NG_VALUE_ACCESSOR,
|
|
138
|
+
useExisting: forwardRef(() => AceEditorInputComponent),
|
|
139
|
+
multi: true
|
|
140
|
+
}], viewQueries: [{ propertyName: "editor", first: true, predicate: ["editor"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ace-editor-input\">\n <div class=\"code-header\">\n <label class=\"info-label bold\">\n <div *ngIf=\"title\">{{ title }}</div>\n <small>{{ description }}</small>\n </label>\n <primary-button [size]=\"'slim'\"\n [label]=\"'Beautify'\"\n (onClick)=\"beautify()\">\n </primary-button>\n </div>\n <ace-editor\n #editor\n [(text)]=\"value\"\n [options]=\"{enableBasicAutocompletion: true, enableSnippets: true, enableLiveAutocompletion: true, keyboardHandler: 'ace/keyboard/vscode'}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDropOnEditor(editor, $event, true)\"\n [mode]=\"mode\"\n [autoUpdateContent]=\"true\"\n class=\"ace-editor\"\n ></ace-editor>\n</div>\n", styles: [".ace-editor-input{width:100%}.ace-editor-input .ace-editor{height:530px;min-height:200px}.ace-editor-input .code-header{justify-content:space-between;display:flex;width:100%;margin-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }, { kind: "component", type: i3.PrimaryButtonComponent, selector: "primary-button", inputs: ["label", "btnDisabled", "icon", "suffixIcon", "selected", "btnClass", "size"], outputs: ["onClick"] }, { kind: "component", type: i4.AceEditorComponent, selector: "ace-editor", inputs: ["style", "options", "readOnly", "theme", "mode", "value", "text", "autoUpdateContent", "durationBeforeCallback"], outputs: ["textChanged", "textChange", "beforeDropEvent", "afterDropEvent"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
141
|
+
}
|
|
142
|
+
export { AceEditorInputComponent };
|
|
143
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AceEditorInputComponent, decorators: [{
|
|
144
|
+
type: Component,
|
|
145
|
+
args: [{ selector: 'ace-editor-input', providers: [{
|
|
146
|
+
provide: NG_VALUE_ACCESSOR,
|
|
147
|
+
useExisting: forwardRef(() => AceEditorInputComponent),
|
|
148
|
+
multi: true
|
|
149
|
+
}], encapsulation: ViewEncapsulation.None, template: "<div class=\"ace-editor-input\">\n <div class=\"code-header\">\n <label class=\"info-label bold\">\n <div *ngIf=\"title\">{{ title }}</div>\n <small>{{ description }}</small>\n </label>\n <primary-button [size]=\"'slim'\"\n [label]=\"'Beautify'\"\n (onClick)=\"beautify()\">\n </primary-button>\n </div>\n <ace-editor\n #editor\n [(text)]=\"value\"\n [options]=\"{enableBasicAutocompletion: true, enableSnippets: true, enableLiveAutocompletion: true, keyboardHandler: 'ace/keyboard/vscode'}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDropOnEditor(editor, $event, true)\"\n [mode]=\"mode\"\n [autoUpdateContent]=\"true\"\n class=\"ace-editor\"\n ></ace-editor>\n</div>\n", styles: [".ace-editor-input{width:100%}.ace-editor-input .ace-editor{height:530px;min-height:200px}.ace-editor-input .code-header{justify-content:space-between;display:flex;width:100%;margin-bottom:5px}\n"] }]
|
|
150
|
+
}], propDecorators: { editor: [{
|
|
151
|
+
type: ViewChild,
|
|
152
|
+
args: ['editor']
|
|
153
|
+
}], title: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], description: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], previousStepsOutputAttributes: [{
|
|
158
|
+
type: Input
|
|
159
|
+
}], mode: [{
|
|
160
|
+
type: Input
|
|
161
|
+
}] } });
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNlLWVkaXRvci1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2FjZS1lZGl0b3ItaW5wdXQvYWNlLWVkaXRvci1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2FjZS1lZGl0b3ItaW5wdXQvYWNlLWVkaXRvci1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUU1RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBRW5ELE1BV2EsdUJBQXdCLFNBQVEsaUJBQXlCO0lBRzdELE1BQU0sQ0FBcUI7SUFFekIsS0FBSyxDQUFvQjtJQUN6QixXQUFXLENBQW9CO0lBQy9CLDZCQUE2QixHQUFzRSxFQUFFLENBQUE7SUFDckcsSUFBSSxDQUEwQztJQUV2RCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGdDQUFnQyxFQUFFLENBQUE7SUFDekMsQ0FBQztJQUVPLGdDQUFnQztRQUN0QyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLG9CQUFvQixFQUFFO2dCQUNyQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQzthQUNwRDtRQUNILENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtJ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QVcsRUFBRTtnQkFDZixRQUFRLEdBQUcsS0FBSyxRQUFRLElBQUksQ0FBQTthQUM3QjtZQUNELE1BQU0sQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFBO1NBQzlCO0lBQ0gsQ0FBQzt1R0EvSVUsdUJBQXVCOzJGQUF2Qix1QkFBdUIsaUxBUHZCLENBQUM7Z0JBQ1YsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDdEQsS0FBSyxFQUFFLElBQUk7YUFDWixDQUFDLG1KQ2ZKLG13QkFxQkE7O1NESGEsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBWG5DLFNBQVM7K0JBQ0Usa0JBQWtCLGFBR2pCLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsd0JBQXdCLENBQUM7NEJBQ3RELEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUMsaUJBQ2EsaUJBQWlCLENBQUMsSUFBSTs4QkFLOUIsTUFBTTtzQkFEWixTQUFTO3VCQUFDLFFBQVE7Z0JBR1YsS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csNkJBQTZCO3NCQUFyQyxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgRG5kRHJvcEV2ZW50IH0gZnJvbSAnbmd4LWRyYWctZHJvcCdcbmltcG9ydCB7IEFjZUVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uL2FjZS1lZGl0b3IvY29tcG9uZW50J1xuaW1wb3J0IHsgVmFsdWVBY2Nlc3NvckJhc2UgfSBmcm9tICcuLi92YWx1ZS1hY2Vzc29yLWJhc2UnXG5pbXBvcnQgeyBiZWF1dGlmeVJhd0RhdGFDb250ZW50IH0gZnJvbSAnQGFwaXBhc3MvZnJvbnRlbmQtdXRpbHMnXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNlLWVkaXRvci1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnYWNlLWVkaXRvci1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydhY2UtZWRpdG9yLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBY2VFZGl0b3JJbnB1dENvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgQWNlRWRpdG9ySW5wdXRDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yQmFzZTxzdHJpbmc+IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG5cbiAgQFZpZXdDaGlsZCgnZWRpdG9yJylcbiAgcHVibGljIGVkaXRvcjogQWNlRWRpdG9yQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgQElucHV0KCkgZGVzY3JpcHRpb246IHN0cmluZyB8IHVuZGVmaW5lZFxuICBASW5wdXQoKSBwcmV2aW91c1N0ZXBzT3V0cHV0QXR0cmlidXRlczogUmVjb3JkPHN0cmluZywgeyB0eXBlOiBzdHJpbmcsIGF0dHJpYnV0ZXM6IFJlY29yZDxzdHJpbmcsIGFueT4gfT4gPSB7fVxuICBASW5wdXQoKSBtb2RlOiAnanNvbicgfCAnaHRtbCcgfCAnc3FsJyB8ICd4bWwnIHwgJ3RleHQnXG5cbiAgbmdBZnRlckNvbnRlbnRJbml0ICgpOiB2b2lkIHtcbiAgICB0aGlzLmNyZWF0ZUFjZUVkaXRvckN1c3RvbUNvbXBsZXRpb25zKClcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQWNlRWRpdG9yQ3VzdG9tQ29tcGxldGlvbnMoKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5lZGl0b3I/LnNldEN1c3RvbUNvbXBsZXRpb25zKSB7XG4gICAgICAgIHRoaXMuc2V0RWRpdG9yQ3VzdG9tQ29tcGxldGlvbnModGhpcy5lZGl0b3IsIHRydWUpO1xuICAgICAgfVxuICAgIH0sIDUwMClcbiAgfVxuXG4gIHB1YmxpYyBiZWF1dGlmeSgpOiB2b2lkIHtcbiAgICBjb25zdCByYXdEYXRhQ29udGVudCA9IHRoaXMuZWRpdG9yLmdldEVkaXRvcigpLmdldFNlc3Npb24oKS5nZXRWYWx1ZSgpO1xuICAgIGlmIChyYXdEYXRhQ29udGVudCkge1xuICAgICAgY29uc3QgZm9ybWF0dGVkQ29udGVudCA9IGJlYXV0aWZ5UmF3RGF0YUNvbnRlbnQocmF3RGF0YUNvbnRlbnQpO1xuICAgICAgdGhpcy5lZGl0b3IuZ2V0RWRpdG9yKCkuZ2V0U2Vzc2lvbigpLnNldFZhbHVlKGZvcm1hdHRlZENvbnRlbnQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZXRFZGl0b3JDdXN0b21Db21wbGV0aW9ucyhlZGl0b3I6IGFueSwgaW5jbHVkZUJyYWNrZXRzOiBib29sZWFuKTogdm9pZCB7XG4gICAgZWRpdG9yLnNldEN1c3RvbUNvbXBsZXRpb25zKHRoaXMuZ2V0T3V0cHV0QXR0cmlidXRlc0NvZGVDb21wbGV0aW9ucyh7XG4gICAgICBwcmVmaXhJZGVudGlmaWVyOiAnJCcsXG4gICAgICBvdXRwdXRBdHRyaWJ1dGVzOiB0aGlzLnByZXZpb3VzU3RlcHNPdXRwdXRBdHRyaWJ1dGVzLFxuICAgICAgaW5jbHVkZUJyYWNrZXRzXG4gICAgfSkpXG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0T3V0cHV0QXR0cmlidXRlc0NvZGVDb21wbGV0aW9ucyhwcm9wczoge1xuICAgIHByZWZpeElkZW50aWZpZXI6IHN0cmluZ1xuICAgIG91dHB1dEF0dHJpYnV0ZXM6IFJlY29yZDxzdHJpbmcsIHsgdHlwZTogc3RyaW5nLCBhdHRyaWJ1dGVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IH0+XG4gICAgaW5jbHVkZUFycmF5TWV0aG9kcz86IGJvb2xlYW5cbiAgICBpbmNsdWRlQnJhY2tldHM/OiBib29sZWFuXG4gIH0pOiBBcnJheTx7IGNhcHRpb246IHN0cmluZywgdmFsdWU6IHN0cmluZywgbWV0YTogc3RyaW5nLCBzY29yZTogbnVtYmVyIH0+IHtcbiAgICBsZXQgYXR0cmlidXRlc1BhdGhzOiBzdHJpbmdbXSA9IFtdXG4gICAgZm9yIChjb25zdCBvdXRwdXRBdHRyaWJ1dGVzS2V5IGluIHByb3BzLm91dHB1dEF0dHJpYnV0ZXMpIHtcbiAgICAgIGNvbnN0IG91dHB1dEF0dHJpYnV0ZSA9IHByb3BzLm91dHB1dEF0dHJpYnV0ZXNbb3V0cHV0QXR0cmlidXRlc0tleV1cbiAgICAgIGNvbnN0IGN1cnJlbnRQYXRoID0gYCR7cHJvcHMucHJlZml4SWRlbnRpZmllcn0uJHtvdXRwdXRBdHRyaWJ1dGVzS2V5fWA7XG4gICAgICBhdHRyaWJ1dGVzUGF0aHMucHVzaCh0aGlzLmNyZWF0ZUNvbXBsZXRpb24oY3VycmVudFBhdGgsIHByb3BzLmluY2x1ZGVCcmFja2V0cykpXG4gICAgICBhdHRyaWJ1dGVzUGF0aHMgPSBhdHRyaWJ1dGVzUGF0aHMuY29uY2F0KHRoaXMucGFyc2VJdGVtKHtcbiAgICAgICAgLi4ucHJvcHMsXG4gICAgICAgIGN1cnJlbnRQYXRoLFxuICAgICAgICBhdHRyaWJ1dGVzOiBvdXRwdXRBdHRyaWJ1dGUuYXR0cmlidXRlc1xuICAgICAgfSkpXG4gICAgfVxuICAgIHJldHVybiBhdHRyaWJ1dGVzUGF0aHMubWFwKHZhbHVlID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGNhcHRpb246IHZhbHVlLFxuICAgICAgICB2YWx1ZSxcbiAgICAgICAgbWV0YTogJ1N0ZXAgYXR0cmlidXRlJyxcbiAgICAgICAgc2NvcmU6IDBcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVDb21wbGV0aW9uKGNvbXBsZXRpb246IHN0cmluZywgaW5jbHVkZUJyYWNrZXRzOiBib29sZWFuKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaW5jbHVkZUJyYWNrZXRzID8gYHt7JHtjb21wbGV0aW9ufX19YCA6IGNvbXBsZXRpb25cbiAgfVxuXG4gIHB1YmxpYyBwYXJzZUl0ZW0ocHJvcHM6IHsgY3VycmVudFBhdGg6IHN0cmluZywgYXR0cmlidXRlcywgaW5jbHVkZUFycmF5TWV0aG9kcz86IGJvb2xlYW4sIGluY2x1ZGVCcmFja2V0cz86IGJvb2xlYW4gfSk6IHN0cmluZ1tdIHtcbiAgICBsZXQgYXR0cmlidXRlc1BhdGhzOiBzdHJpbmdbXSA9IFtdXG4gICAgY29uc3QgY3VycmVudFBhdGggPSBwcm9wcy5jdXJyZW50UGF0aFxuICAgIGZvciAoY29uc3QgYXR0cmlidXRlTmFtZSBpbiBwcm9wcy5hdHRyaWJ1dGVzKSB7XG4gICAgICBjb25zdCBhdHRyaWJ1dGVWYWx1ZSA9IHByb3BzLmF0dHJpYnV0ZXNbYXR0cmlidXRlTmFtZV1cbiAgICAgIGNvbnN0IGF0dHJpYnV0ZVR5cGVJc0ludmFsaWQgPSB0eXBlb2YgYXR0cmlidXRlVmFsdWU/LnR5cGUgIT09ICdzdHJpbmcnICYmICEoYXR0cmlidXRlVmFsdWU/LnR5cGUgaW5zdGFuY2VvZiBTdHJpbmcpO1xuICAgICAgaWYgKGF0dHJpYnV0ZVZhbHVlPy50eXBlICYmIGF0dHJpYnV0ZVR5cGVJc0ludmFsaWQpIHtcbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGNvbnN0IGF0dHJpYnV0ZVR5cGUgPSBhdHRyaWJ1dGVWYWx1ZT8udHlwZT8udG9VcHBlckNhc2UoKTtcbiAgICAgIGlmIChbJ1NUUklORycsICdOVU1CRVInLCAnQk9PTEVBTicsICdBVVRIT1JJWkFUSU9OJ10uaW5jbHVkZXMoYXR0cmlidXRlVHlwZSkpIHtcbiAgICAgICAgYXR0cmlidXRlc1BhdGhzLnB1c2godGhpcy5jcmVhdGVDb21wbGV0aW9uKGAke2N1cnJlbnRQYXRofS4ke2F0dHJpYnV0ZU5hbWV9YCwgcHJvcHMuaW5jbHVkZUJyYWNrZXRzKSlcbiAgICAgIH0gZWxzZSBpZiAoYXR0cmlidXRlVHlwZSA9PT0gJ09CSkVDVCcpIHtcbiAgICAgICAgYXR0cmlidXRlc1BhdGhzLnB1c2godGhpcy5jcmVhdGVDb21wbGV0aW9uKGAke2N1cnJlbnRQYXRofS4ke2F0dHJpYnV0ZU5hbWV9YCwgcHJvcHMuaW5jbHVkZUJyYWNrZXRzKSlcbiAgICAgICAgYXR0cmlidXRlc1BhdGhzID0gYXR0cmlidXRlc1BhdGhzLmNvbmNhdCh0aGlzLnBhcnNlSXRlbSh7XG4gICAgICAgICAgLi4ucHJvcHMsXG4gICAgICAgICAgY3VycmVudFBhdGg6IGAke2N1cnJlbnRQYXRofS4ke2F0dHJpYnV0ZU5hbWV9YCxcbiAgICAgICAgICBhdHRyaWJ1dGVzOiBhdHRyaWJ1dGVWYWx1ZS5jaGlsZCA/PyBhdHRyaWJ1dGVWYWx1ZS5wcm9wZXJ0aWVzXG4gICAgICAgIH0pKVxuICAgICAgfSBlbHNlIGlmIChhdHRyaWJ1dGVUeXBlID09PSAnQVJSQVknKSB7XG4gICAgICAgIGNvbnN0IGFycmF5UGF0aHMgPSB0aGlzLnBhcnNlQXJyYXlJdGVtKGN1cnJlbnRQYXRoLCBhdHRyaWJ1dGVOYW1lLCBhdHRyaWJ1dGVzUGF0aHMsIHByb3BzLCBhdHRyaWJ1dGVWYWx1ZSk7XG4gICAgICAgIGF0dHJpYnV0ZXNQYXRocyA9IGF0dHJpYnV0ZXNQYXRocy5jb25jYXQoYXJyYXlQYXRocyk7XG4gICAgICB9IGVsc2UgaWYgKCFhdHRyaWJ1dGVWYWx1ZT8udHlwZSkge1xuICAgICAgICBhdHRyaWJ1dGVzUGF0aHMgPSBhdHRyaWJ1dGVzUGF0aHMuY29uY2F0KHRoaXMucGFyc2VJdGVtKHtcbiAgICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgICBjdXJyZW50UGF0aCxcbiAgICAgICAgICBhdHRyaWJ1dGVzOiB7IFthdHRyaWJ1dGVOYW1lXTogeyB0eXBlOiBhdHRyaWJ1dGVWYWx1ZSB9IH1cbiAgICAgICAgfSkpXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBhdHRyaWJ1dGVzUGF0aHNcbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VBcnJheUl0ZW0oY3VycmVudFBhdGg6IHN0cmluZywgYXR0cmlidXRlTmFtZTogc3RyaW5nLCBhdHRyaWJ1dGVzUGF0aHM6IHN0cmluZ1tdLCBwcm9wczoge1xuICAgIGN1cnJlbnRQYXRoOiBzdHJpbmdcbiAgICBhdHRyaWJ1dGVzXG4gICAgaW5jbHVkZUFycmF5TWV0aG9kcz86IGJvb2xlYW5cbiAgICBpbmNsdWRlQnJhY2tldHM/OiBib29sZWFuXG4gIH0sIGF0dHJpYnV0ZVZhbHVlKTogc3RyaW5nW10ge1xuICAgIGF0dHJpYnV0ZXNQYXRocy5wdXNoKHRoaXMuY3JlYXRlQ29tcGxldGlvbihgJHtjdXJyZW50UGF0aH0uJHthdHRyaWJ1dGVOYW1lfWAsIHByb3BzLmluY2x1ZGVCcmFja2V0cykpXG4gICAgaWYgKHByb3BzLmluY2x1ZGVBcnJheU1ldGhvZHMpIHtcbiAgICAgIGF0dHJpYnV0ZXNQYXRocyA9IGF0dHJpYnV0ZXNQYXRocy5jb25jYXQodGhpcy5nZXRBcnJheU1ldGhvZHNDb2RlQ29tcGxldGlvbnMoYCR7Y3VycmVudFBhdGh9LiR7YXR0cmlidXRlTmFtZX1gKSlcbiAgICB9XG4gICAgYXR0cmlidXRlc1BhdGhzLnB1c2godGhpcy5jcmVhdGVDb21wbGV0aW9uKGAke2N1cnJlbnRQYXRofS4ke2F0dHJpYnV0ZU5hbWV9WzBdYCwgcHJvcHMuaW5jbHVkZUJyYWNrZXRzKSlcbiAgICBhdHRyaWJ1dGVzUGF0aHMgPSBhdHRyaWJ1dGVzUGF0aHMuY29uY2F0KHRoaXMucGFyc2VJdGVtKHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgY3VycmVudFBhdGg6IGAke2N1cnJlbnRQYXRofS4ke2F0dHJpYnV0ZU5hbWV9WzBdYCxcbiAgICAgIGF0dHJpYnV0ZXM6IGF0dHJpYnV0ZVZhbHVlLmNoaWxkID8/IGF0dHJpYnV0ZVZhbHVlLnByb3BlcnRpZXNcbiAgICB9KSlcbiAgICByZXR1cm4gYXR0cmlidXRlc1BhdGhzO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBcnJheU1ldGhvZHNDb2RlQ29tcGxldGlvbnMoY3VycmVudFBhdGg6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gW1xuICAgICAgYCR7Y3VycmVudFBhdGh9LmNvbmNhdCgpYCxcbiAgICAgIGAke2N1cnJlbnRQYXRofS5maWx0ZXIoKGVsZW1lbnQpID0+IClgLFxuICAgICAgYCR7Y3VycmVudFBhdGh9LmZpbmQoKGVsZW1lbnQpID0+IClgLFxuICAgICAgYCR7Y3VycmVudFBhdGh9LmZvckVhY2goKGVsZW1lbnQpID0+IClgLFxuICAgICAgYCR7Y3VycmVudFBhdGh9LmluY2x1ZGVzKClgLFxuICAgICAgYCR7Y3VycmVudFBhdGh9LmluZGV4T2YoKWAsXG4gICAgICBgJHtjdXJyZW50UGF0aH0ubWFwKChlbGVtZW50KSA9PiApYCxcbiAgICAgIGAke2N1cnJlbnRQYXRofS5wdXNoKClgLFxuICAgICAgYCR7Y3VycmVudFBhdGh9LnNvcnQoKWBcbiAgICBdXG4gIH1cblxuICBwdWJsaWMgb25Ecm9wT25FZGl0b3IoZWRpdG9yOiBBY2VFZGl0b3JDb21wb25lbnQsICRldmVudDogRG5kRHJvcEV2ZW50LCBhZGRCcmFja2V0cz86IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAoJGV2ZW50LmRhdGEpIHtcbiAgICAgIGxldCBkcm9wVGV4dCA9ICRldmVudC5kYXRhXG4gICAgICBpZiAoYWRkQnJhY2tldHMpIHtcbiAgICAgICAgZHJvcFRleHQgPSBge3ske2Ryb3BUZXh0fX19YFxuICAgICAgfVxuICAgICAgZWRpdG9yLmRyYWdnZWRUZXh0ID0gZHJvcFRleHRcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImFjZS1lZGl0b3ItaW5wdXRcIj5cbiAgPGRpdiBjbGFzcz1cImNvZGUtaGVhZGVyXCI+XG4gICAgPGxhYmVsIGNsYXNzPVwiaW5mby1sYWJlbCBib2xkXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwidGl0bGVcIj57eyB0aXRsZSB9fTwvZGl2PlxuICAgICAgPHNtYWxsPnt7IGRlc2NyaXB0aW9uIH19PC9zbWFsbD5cbiAgICA8L2xhYmVsPlxuICAgIDxwcmltYXJ5LWJ1dHRvbiBbc2l6ZV09XCInc2xpbSdcIlxuICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ0JlYXV0aWZ5J1wiXG4gICAgICAgICAgICAgICAgICAgIChvbkNsaWNrKT1cImJlYXV0aWZ5KClcIj5cbiAgICA8L3ByaW1hcnktYnV0dG9uPlxuICA8L2Rpdj5cbiAgPGFjZS1lZGl0b3JcbiAgICAjZWRpdG9yXG4gICAgWyh0ZXh0KV09XCJ2YWx1ZVwiXG4gICAgW29wdGlvbnNdPVwie2VuYWJsZUJhc2ljQXV0b2NvbXBsZXRpb246IHRydWUsIGVuYWJsZVNuaXBwZXRzOiB0cnVlLCBlbmFibGVMaXZlQXV0b2NvbXBsZXRpb246IHRydWUsIGtleWJvYXJkSGFuZGxlcjogJ2FjZS9rZXlib2FyZC92c2NvZGUnfVwiXG4gICAgZG5kRHJvcHpvbmUgW2RuZEFsbG93RXh0ZXJuYWxdPVwidHJ1ZVwiIChkbmREcm9wKT1cIm9uRHJvcE9uRWRpdG9yKGVkaXRvciwgJGV2ZW50LCB0cnVlKVwiXG4gICAgW21vZGVdPVwibW9kZVwiXG4gICAgW2F1dG9VcGRhdGVDb250ZW50XT1cInRydWVcIlxuICAgIGNsYXNzPVwiYWNlLWVkaXRvclwiXG4gID48L2FjZS1lZGl0b3I+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -36,6 +36,7 @@ import { NgScrollbarModule } from 'ngx-scrollbar';
|
|
|
36
36
|
import { NgxMaskDirective, NgxMaskPipe, provideNgxMask } from 'ngx-mask';
|
|
37
37
|
import { KeyValueInputComponent } from './input-key-value/key-value-input.component';
|
|
38
38
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
39
|
+
import { AceEditorInputComponent } from './ace-editor-input/ace-editor-input.component';
|
|
39
40
|
import * as i0 from "@angular/core";
|
|
40
41
|
class InputsModule {
|
|
41
42
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -55,7 +56,8 @@ class InputsModule {
|
|
|
55
56
|
AceEditorDirective,
|
|
56
57
|
DebouceInputDirective,
|
|
57
58
|
InputDateTimeIntervalComponent,
|
|
58
|
-
KeyValueInputComponent
|
|
59
|
+
KeyValueInputComponent,
|
|
60
|
+
AceEditorInputComponent], imports: [RouterModule,
|
|
59
61
|
CommonModule,
|
|
60
62
|
FormsModule,
|
|
61
63
|
MatFormFieldModule,
|
|
@@ -92,7 +94,8 @@ class InputsModule {
|
|
|
92
94
|
InputDateTimeIntervalComponent,
|
|
93
95
|
NgxMaskDirective,
|
|
94
96
|
NgxMaskPipe,
|
|
95
|
-
KeyValueInputComponent
|
|
97
|
+
KeyValueInputComponent,
|
|
98
|
+
AceEditorInputComponent] });
|
|
96
99
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputsModule, providers: [
|
|
97
100
|
{
|
|
98
101
|
provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,
|
|
@@ -170,7 +173,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
170
173
|
AceEditorDirective,
|
|
171
174
|
DebouceInputDirective,
|
|
172
175
|
InputDateTimeIntervalComponent,
|
|
173
|
-
KeyValueInputComponent
|
|
176
|
+
KeyValueInputComponent,
|
|
177
|
+
AceEditorInputComponent
|
|
174
178
|
],
|
|
175
179
|
exports: [
|
|
176
180
|
SelectBoxComponent,
|
|
@@ -190,7 +194,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
190
194
|
InputDateTimeIntervalComponent,
|
|
191
195
|
NgxMaskDirective,
|
|
192
196
|
NgxMaskPipe,
|
|
193
|
-
KeyValueInputComponent
|
|
197
|
+
KeyValueInputComponent,
|
|
198
|
+
AceEditorInputComponent
|
|
194
199
|
],
|
|
195
200
|
providers: [
|
|
196
201
|
{
|
|
@@ -208,4 +213,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
208
213
|
]
|
|
209
214
|
}]
|
|
210
215
|
}] });
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvaW5wdXRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDekUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUE7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFBO0FBQ3BHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3pDLE9B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QixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsb0JBQW9CO3dCQUNwQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsNEJBQTRCO3dCQUM1QixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixxQkFBcUI7d0JBQ3JCLDhCQUE4Qjt3QkFDOUIsZ0JBQWdCO3dCQUNoQixXQUFXO3dCQUNYLHNCQUFzQjtxQkFDdkI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw4QkFBOEI7NEJBQ3ZDLFFBQVEsRUFBRTtnQ0FDUixVQUFVLEVBQUUsU0FBUztnQ0FDckIsZUFBZSxFQUFFLFNBQVM7NkJBQzNCO3lCQUNGO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxpQ0FBaUM7NEJBQzFDLFFBQVEsRUFBRSwrQkFBK0I7eUJBQzFDO3dCQUNELGNBQWMsRUFBRTtxQkFDakI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgU2VsZWN0RW51bUNvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LWVudW0vc2VsZWN0LWVudW0uY29tcG9uZW50J1xuaW1wb3J0IHsgTUFUX0ZPUk1fRklFTERfREVGQVVMVF9PUFRJT05TLCBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJ1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCdcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCdcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnXG5pbXBvcnQgeyBJbnB1dFRleHRDb21wb25lbnQgfSBmcm9tICcuL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQnXG5pbXBvcnQgeyBJbnB1dEF2YXRhckNvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQtYXZhdGFyL2lucHV0LWF2YXRhci5jb21wb25lbnQnXG5pbXBvcnQgeyBGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZmllbGQvZmllbGQuY29tcG9uZW50J1xuaW1wb3J0IHsgU2VsZWN0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QtYm94L3NlbGVjdC1ib3guY29tcG9uZW50J1xuaW1wb3J0IHsgTWF0U2VsZWN0SW5maW5pdGVTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL3NlbGVjdC1ib3gvbWF0LXNlbGVjdC1pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCdcbmltcG9ydCB7IEN1c3RvbVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vY3VzdG9tLXNlbGVjdC9jdXN0b20tc2VsZWN0LmNvbXBvbmVudCdcbmltcG9ydCB7IERuZE1vZHVsZSB9IGZyb20gJ25neC1kcmFnLWRyb3AnXG5pbXBvcnQgeyBJY29uc01vZHVsZSB9IGZyb20gJ0BhcGlwYXNzL2ljb25zJ1xuaW1wb3J0IHsgUGlwZU1vZHVsZSB9IGZyb20gJ0BhcGlwYXNzL3BpcGVzJ1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuaW1wb3J0IHsgSW5wdXRGaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1maWxlL2lucHV0LWZpbGUuY29tcG9uZW50J1xuaW1wb3J0IHsgQWNlRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9hY2UtZWRpdG9yL2NvbXBvbmVudCdcbmltcG9ydCB7IEFjZUVkaXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vYWNlLWVkaXRvci9kaXJlY3RpdmUnXG5pbXBvcnQgeyBJbnB1dE51bWJlckNvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQtbnVtYmVyL2lucHV0LW51bWJlci5jb21wb25lbnQnXG5pbXBvcnQgeyBJbnB1dEJvb2xlYW5Db21wb25lbnQgfSBmcm9tICcuL2lucHV0LWJvb2xlYW4vaW5wdXQtYm9vbGVhbi5jb21wb25lbnQnXG5pbXBvcnQgeyBCdXR0b25zTW9kdWxlIH0gZnJvbSAnQGFwaXBhc3MvYnV0dG9ucydcbmltcG9ydCB7IERlYm91Y2VJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4vZGVib3VuY2UtbW9kZWwtZGlyZWN0aXZlL2RlYm91Y2VJbnB1dC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBPdmVybGF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknXG5pbXBvcnQgeyBTZWxlY3RJbnRlcnBvbGF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QtaW50ZXJwb2xhdGlvbi9zZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQnXG5pbXBvcnQgeyBJbnB1dEltYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1pbWFnZS9pbnB1dC1pbWFnZS5jb21wb25lbnQnXG5pbXBvcnQgeyBJbnB1dERhdGVUaW1lSW50ZXJ2YWxDb21wb25lbnQgfSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS1pbnRlcnZhbC9pbnB1dC1kYXRlLXRpbWUtaW50ZXJ2YWwuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIERlZmF1bHRNYXRDYWxlbmRhclJhbmdlU3RyYXRlZ3ksXG4gIE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSxcbiAgTWF0RGF0ZXBpY2tlck1vZHVsZVxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE1hdE5hdGl2ZURhdGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdENhcmRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7IE5nU2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnbmd4LXNjcm9sbGJhcic7XG5pbXBvcnQgeyBOZ3hNYXNrRGlyZWN0aXZlLCBOZ3hNYXNrUGlwZSwgcHJvdmlkZU5neE1hc2sgfSBmcm9tICduZ3gtbWFzayc7XG5pbXBvcnQgeyBLZXlWYWx1ZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1rZXktdmFsdWUva2V5LXZhbHVlLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIFJvdXRlck1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBOZ1NlbGVjdE1vZHVsZSxcbiAgICBQaXBlTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgSWNvbnNNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBEbmRNb2R1bGUsXG4gICAgQnV0dG9uc01vZHVsZSxcbiAgICBPdmVybGF5TW9kdWxlLFxuICAgIE1hdENhcmRNb2R1bGUsXG4gICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICBNYXROYXRpdmVEYXRlTW9kdWxlLFxuICAgIE5nU2Nyb2xsYmFyTW9kdWxlLFxuICAgIE5neE1hc2tEaXJlY3RpdmUsXG4gICAgTmd4TWFza1BpcGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWF0U2VsZWN0SW5maW5pdGVTY3JvbGxEaXJlY3RpdmUsXG4gICAgU2VsZWN0Qm94Q29tcG9uZW50LFxuICAgIFNlbGVjdEVudW1Db21wb25lbnQsXG4gICAgSW5wdXRUZXh0Q29tcG9uZW50LFxuICAgIElucHV0TnVtYmVyQ29tcG9uZW50LFxuICAgIElucHV0Qm9vbGVhbkNvbXBvbmVudCxcbiAgICBJbnB1dEF2YXRhckNvbXBvbmVudCxcbiAgICBJbnB1dEltYWdlQ29tcG9uZW50LFxuICAgIElucHV0RmlsZUNvbXBvbmVudCxcbiAgICBDdXN0b21TZWxlY3RDb21wb25lbnQsXG4gICAgU2VsZWN0SW50ZXJwb2xhdGlvbkNvbXBvbmVudCxcbiAgICBGaWVsZENvbXBvbmVudCxcbiAgICBBY2VFZGl0b3JDb21wb25lbnQsXG4gICAgQWNlRWRpdG9yRGlyZWN0aXZlLFxuICAgIERlYm91Y2VJbnB1dERpcmVjdGl2ZSxcbiAgICBJbnB1dERhdGVUaW1lSW50ZXJ2YWxDb21wb25lbnQsXG4gICAgS2V5VmFsdWVJbnB1dENvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2VsZWN0Qm94Q29tcG9uZW50LFxuICAgIFNlbGVjdEVudW1Db21wb25lbnQsXG4gICAgSW5wdXRUZXh0Q29tcG9uZW50LFxuICAgIElucHV0TnVtYmVyQ29tcG9uZW50LFxuICAgIElucHV0Qm9vbGVhbkNvbXBvbmVudCxcbiAgICBJbnB1dEF2YXRhckNvbXBvbmVudCxcbiAgICBJbnB1dEltYWdlQ29tcG9uZW50LFxuICAgIElucHV0RmlsZUNvbXBvbmVudCxcbiAgICBDdXN0b21TZWxlY3RDb21wb25lbnQsXG4gICAgU2VsZWN0SW50ZXJwb2xhdGlvbkNvbXBvbmVudCxcbiAgICBGaWVsZENvbXBvbmVudCxcbiAgICBBY2VFZGl0b3JDb21wb25lbnQsXG4gICAgQWNlRWRpdG9yRGlyZWN0aXZlLFxuICAgIERlYm91Y2VJbnB1dERpcmVjdGl2ZSxcbiAgICBJbnB1dERhdGVUaW1lSW50ZXJ2YWxDb21wb25lbnQsXG4gICAgTmd4TWFza0RpcmVjdGl2ZSxcbiAgICBOZ3hNYXNrUGlwZSxcbiAgICBLZXlWYWx1ZUlucHV0Q29tcG9uZW50XG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1BVF9GT1JNX0ZJRUxEX0RFRkFVTFRfT1BUSU9OUyxcbiAgICAgIHVzZVZhbHVlOiB7XG4gICAgICAgIGFwcGVhcmFuY2U6ICdvdXRsaW5lJyxcbiAgICAgICAgc3Vic2NyaXB0U2l6aW5nOiAnZHluYW1pYydcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSxcbiAgICAgIHVzZUNsYXNzOiBEZWZhdWx0TWF0Q2FsZW5kYXJSYW5nZVN0cmF0ZWd5XG4gICAgfSxcbiAgICBwcm92aWRlTmd4TWFzaygpXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRzTW9kdWxlIHtcbn1cbiJdfQ==
|
|
216
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvaW5wdXRzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDekUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUE7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFBO0FBQ3BHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3pDLE9B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Qjt3QkFDckIsOEJBQThCO3dCQUM5QixzQkFBc0I7d0JBQ3RCLHVCQUF1QjtxQkFDeEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLG9CQUFvQjt3QkFDcEIscUJBQXFCO3dCQUNyQixvQkFBb0I7d0JBQ3BCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixxQkFBcUI7d0JBQ3JCLDRCQUE0Qjt3QkFDNUIsY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQiw4QkFBOEI7d0JBQzlCLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCxzQkFBc0I7d0JBQ3RCLHVCQUF1QjtxQkFDeEI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw4QkFBOEI7NEJBQ3ZDLFFBQVEsRUFBRTtnQ0FDUixVQUFVLEVBQUUsU0FBUztnQ0FDckIsZUFBZSxFQUFFLFNBQVM7NkJBQzNCO3lCQUNGO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxpQ0FBaUM7NEJBQzFDLFFBQVEsRUFBRSwrQkFBK0I7eUJBQzFDO3dCQUNELGNBQWMsRUFBRTtxQkFDakI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgU2VsZWN0RW51bUNvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LWVudW0vc2VsZWN0LWVudW0uY29tcG9uZW50J1xuaW1wb3J0IHsgTUFUX0ZPUk1fRklFTERfREVGQVVMVF9PUFRJT05TLCBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJ1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCdcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCdcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJ1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnXG5pbXBvcnQgeyBJbnB1dFRleHRDb21wb25lbnQgfSBmcm9tICcuL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQnXG5pbXBvcnQgeyBJbnB1dEF2YXRhckNvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQtYXZhdGFyL2lucHV0LWF2YXRhci5jb21wb25lbnQnXG5pbXBvcnQgeyBGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZmllbGQvZmllbGQuY29tcG9uZW50J1xuaW1wb3J0IHsgU2VsZWN0Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QtYm94L3NlbGVjdC1ib3guY29tcG9uZW50J1xuaW1wb3J0IHsgTWF0U2VsZWN0SW5maW5pdGVTY3JvbGxEaXJlY3RpdmUgfSBmcm9tICcuL3NlbGVjdC1ib3gvbWF0LXNlbGVjdC1pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCdcbmltcG9ydCB7IEN1c3RvbVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vY3VzdG9tLXNlbGVjdC9jdXN0b20tc2VsZWN0LmNvbXBvbmVudCdcbmltcG9ydCB7IERuZE1vZHVsZSB9IGZyb20gJ25neC1kcmFnLWRyb3AnXG5pbXBvcnQgeyBJY29uc01vZHVsZSB9IGZyb20gJ0BhcGlwYXNzL2ljb25zJ1xuaW1wb3J0IHsgUGlwZU1vZHVsZSB9IGZyb20gJ0BhcGlwYXNzL3BpcGVzJ1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuaW1wb3J0IHsgSW5wdXRGaWxlQ29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1maWxlL2lucHV0LWZpbGUuY29tcG9uZW50J1xuaW1wb3J0IHsgQWNlRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9hY2UtZWRpdG9yL2NvbXBvbmVudCdcbmltcG9ydCB7IEFjZUVkaXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vYWNlLWVkaXRvci9kaXJlY3RpdmUnXG5pbXBvcnQgeyBJbnB1dE51bWJlckNvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQtbnVtYmVyL2lucHV0LW51bWJlci5jb21wb25lbnQnXG5pbXBvcnQgeyBJbnB1dEJvb2xlYW5Db21wb25lbnQgfSBmcm9tICcuL2lucHV0LWJvb2xlYW4vaW5wdXQtYm9vbGVhbi5jb21wb25lbnQnXG5pbXBvcnQgeyBCdXR0b25zTW9kdWxlIH0gZnJvbSAnQGFwaXBhc3MvYnV0dG9ucydcbmltcG9ydCB7IERlYm91Y2VJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4vZGVib3VuY2UtbW9kZWwtZGlyZWN0aXZlL2RlYm91Y2VJbnB1dC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBPdmVybGF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknXG5pbXBvcnQgeyBTZWxlY3RJbnRlcnBvbGF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QtaW50ZXJwb2xhdGlvbi9zZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQnXG5pbXBvcnQgeyBJbnB1dEltYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1pbWFnZS9pbnB1dC1pbWFnZS5jb21wb25lbnQnXG5pbXBvcnQgeyBJbnB1dERhdGVUaW1lSW50ZXJ2YWxDb21wb25lbnQgfSBmcm9tICcuL2lucHV0LWRhdGUtdGltZS1pbnRlcnZhbC9pbnB1dC1kYXRlLXRpbWUtaW50ZXJ2YWwuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIERlZmF1bHRNYXRDYWxlbmRhclJhbmdlU3RyYXRlZ3ksXG4gIE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSxcbiAgTWF0RGF0ZXBpY2tlck1vZHVsZVxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE1hdE5hdGl2ZURhdGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdENhcmRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7IE5nU2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnbmd4LXNjcm9sbGJhcic7XG5pbXBvcnQgeyBOZ3hNYXNrRGlyZWN0aXZlLCBOZ3hNYXNrUGlwZSwgcHJvdmlkZU5neE1hc2sgfSBmcm9tICduZ3gtbWFzayc7XG5pbXBvcnQgeyBLZXlWYWx1ZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC1rZXktdmFsdWUva2V5LXZhbHVlLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcbmltcG9ydCB7IEFjZUVkaXRvcklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9hY2UtZWRpdG9yLWlucHV0L2FjZS1lZGl0b3ItaW5wdXQuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIFJvdXRlck1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBOZ1NlbGVjdE1vZHVsZSxcbiAgICBQaXBlTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgSWNvbnNNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBEbmRNb2R1bGUsXG4gICAgQnV0dG9uc01vZHVsZSxcbiAgICBPdmVybGF5TW9kdWxlLFxuICAgIE1hdENhcmRNb2R1bGUsXG4gICAgTWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICBNYXROYXRpdmVEYXRlTW9kdWxlLFxuICAgIE5nU2Nyb2xsYmFyTW9kdWxlLFxuICAgIE5neE1hc2tEaXJlY3RpdmUsXG4gICAgTmd4TWFza1BpcGUsXG4gICAgTWF0Q2hlY2tib3hNb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgTWF0U2VsZWN0SW5maW5pdGVTY3JvbGxEaXJlY3RpdmUsXG4gICAgU2VsZWN0Qm94Q29tcG9uZW50LFxuICAgIFNlbGVjdEVudW1Db21wb25lbnQsXG4gICAgSW5wdXRUZXh0Q29tcG9uZW50LFxuICAgIElucHV0TnVtYmVyQ29tcG9uZW50LFxuICAgIElucHV0Qm9vbGVhbkNvbXBvbmVudCxcbiAgICBJbnB1dEF2YXRhckNvbXBvbmVudCxcbiAgICBJbnB1dEltYWdlQ29tcG9uZW50LFxuICAgIElucHV0RmlsZUNvbXBvbmVudCxcbiAgICBDdXN0b21TZWxlY3RDb21wb25lbnQsXG4gICAgU2VsZWN0SW50ZXJwb2xhdGlvbkNvbXBvbmVudCxcbiAgICBGaWVsZENvbXBvbmVudCxcbiAgICBBY2VFZGl0b3JDb21wb25lbnQsXG4gICAgQWNlRWRpdG9yRGlyZWN0aXZlLFxuICAgIERlYm91Y2VJbnB1dERpcmVjdGl2ZSxcbiAgICBJbnB1dERhdGVUaW1lSW50ZXJ2YWxDb21wb25lbnQsXG4gICAgS2V5VmFsdWVJbnB1dENvbXBvbmVudCxcbiAgICBBY2VFZGl0b3JJbnB1dENvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2VsZWN0Qm94Q29tcG9uZW50LFxuICAgIFNlbGVjdEVudW1Db21wb25lbnQsXG4gICAgSW5wdXRUZXh0Q29tcG9uZW50LFxuICAgIElucHV0TnVtYmVyQ29tcG9uZW50LFxuICAgIElucHV0Qm9vbGVhbkNvbXBvbmVudCxcbiAgICBJbnB1dEF2YXRhckNvbXBvbmVudCxcbiAgICBJbnB1dEltYWdlQ29tcG9uZW50LFxuICAgIElucHV0RmlsZUNvbXBvbmVudCxcbiAgICBDdXN0b21TZWxlY3RDb21wb25lbnQsXG4gICAgU2VsZWN0SW50ZXJwb2xhdGlvbkNvbXBvbmVudCxcbiAgICBGaWVsZENvbXBvbmVudCxcbiAgICBBY2VFZGl0b3JDb21wb25lbnQsXG4gICAgQWNlRWRpdG9yRGlyZWN0aXZlLFxuICAgIERlYm91Y2VJbnB1dERpcmVjdGl2ZSxcbiAgICBJbnB1dERhdGVUaW1lSW50ZXJ2YWxDb21wb25lbnQsXG4gICAgTmd4TWFza0RpcmVjdGl2ZSxcbiAgICBOZ3hNYXNrUGlwZSxcbiAgICBLZXlWYWx1ZUlucHV0Q29tcG9uZW50LFxuICAgIEFjZUVkaXRvcklucHV0Q29tcG9uZW50XG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1BVF9GT1JNX0ZJRUxEX0RFRkFVTFRfT1BUSU9OUyxcbiAgICAgIHVzZVZhbHVlOiB7XG4gICAgICAgIGFwcGVhcmFuY2U6ICdvdXRsaW5lJyxcbiAgICAgICAgc3Vic2NyaXB0U2l6aW5nOiAnZHluYW1pYydcbiAgICAgIH1cbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSxcbiAgICAgIHVzZUNsYXNzOiBEZWZhdWx0TWF0Q2FsZW5kYXJSYW5nZVN0cmF0ZWd5XG4gICAgfSxcbiAgICBwcm92aWRlTmd4TWFzaygpXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRzTW9kdWxlIHtcbn1cbiJdfQ==
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -20,5 +20,6 @@ export * from './input-number/input-number.component';
|
|
|
20
20
|
export * from './input-boolean/input-boolean.component';
|
|
21
21
|
export * from './input-date-time-interval/public-api';
|
|
22
22
|
export * from './input-key-value/key-value-input.component';
|
|
23
|
+
export * from './ace-editor-input/ace-editor-input.component';
|
|
23
24
|
export * from 'ngx-mask';
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJDQUEyQyxDQUFBO0FBQ3pELGNBQWMsOENBQThDLENBQUE7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQTtBQUUzRCxjQUFjLGlCQUFpQixDQUFBO0FBQy9CLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLHlCQUF5QixDQUFBO0FBRXZDLGNBQWMsd0JBQXdCLENBQUE7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQTtBQUV0QyxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyx1REFBdUQsQ0FBQTtBQUNyRSxjQUFjLHlDQUF5QyxDQUFBO0FBQ3ZELGNBQWMsb0NBQW9DLENBQUE7QUFFbEQsY0FBYyx1Q0FBdUMsQ0FBQTtBQUNyRCxjQUFjLG1DQUFtQyxDQUFBO0FBQ2pELGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyxtQ0FBbUMsQ0FBQTtBQUNqRCxjQUFjLHVDQUF1QyxDQUFBO0FBQ3JELGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyx1Q0FBdUMsQ0FBQTtBQUNyRCxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsK0NBQStDLENBQUE7QUFFN0QsY0FBYyxVQUFVLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICdAYW5ndWxhci1tYXRlcmlhbC1jb21wb25lbnRzL2NvbG9yLXBpY2tlcidcbmV4cG9ydCAqIGZyb20gJ0Bhbmd1bGFyLW1hdGVyaWFsLWNvbXBvbmVudHMvZGF0ZXRpbWUtcGlja2VyJ1xuZXhwb3J0ICogZnJvbSAnQGFuZ3VsYXItbWF0ZXJpYWwtY29tcG9uZW50cy9tb21lbnQtYWRhcHRlcidcblxuZXhwb3J0ICogZnJvbSAnLi9pbnB1dHMubW9kdWxlJ1xuZXhwb3J0ICogZnJvbSAnLi92YWx1ZS1hY2Vzc29yLWJhc2UnXG5leHBvcnQgKiBmcm9tICcuL2RlYm91bmNlLW1vZGVsLWRpcmVjdGl2ZS9kZWJvdWNlSW5wdXQuZGlyZWN0aXZlJ1xuZXhwb3J0ICogZnJvbSAnLi9maWVsZC9maWVsZC5jb21wb25lbnQnXG5cbmV4cG9ydCAqIGZyb20gJy4vYWNlLWVkaXRvci9kaXJlY3RpdmUnXG5leHBvcnQgKiBmcm9tICcuL2FjZS1lZGl0b3IvY29tcG9uZW50J1xuXG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdC1ib3gvc2VsZWN0LWJveC5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdC1lbnVtL3NlbGVjdC1lbnVtLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0LWludGVycG9sYXRpb24vc2VsZWN0LWludGVycG9sYXRpb24uY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9jdXN0b20tc2VsZWN0L2N1c3RvbS1zZWxlY3QuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9jdXN0b20tc2VsZWN0L2N1c3RvbS1zZWxlY3QtaXRlbSdcblxuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1hdmF0YXIvaW5wdXQtYXZhdGFyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtZmlsZS9pbnB1dC1maWxlLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtaW1hZ2UvaW5wdXQtaW1hZ2UuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC10ZXh0L2lucHV0LXRleHQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1udW1iZXIvaW5wdXQtbnVtYmVyLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtYm9vbGVhbi9pbnB1dC1ib29sZWFuLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtZGF0ZS10aW1lLWludGVydmFsL3B1YmxpYy1hcGknXG5leHBvcnQgKiBmcm9tICcuL2lucHV0LWtleS12YWx1ZS9rZXktdmFsdWUtaW5wdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9hY2UtZWRpdG9yLWlucHV0L2FjZS1lZGl0b3ItaW5wdXQuY29tcG9uZW50J1xuXG5leHBvcnQgKiBmcm9tICduZ3gtbWFzaydcbiJdfQ==
|
|
@@ -47,6 +47,7 @@ import { NgxMaskDirective, NgxMaskPipe, provideNgxMask } from 'ngx-mask';
|
|
|
47
47
|
export * from 'ngx-mask';
|
|
48
48
|
import { MatCardModule } from '@angular/material/card';
|
|
49
49
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
50
|
+
import { beautifyRawDataContent } from '@apipass/frontend-utils';
|
|
50
51
|
import moment$1 from 'moment';
|
|
51
52
|
|
|
52
53
|
class ValueAccessorBase {
|
|
@@ -2302,6 +2303,157 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
2302
2303
|
type: Output
|
|
2303
2304
|
}] } });
|
|
2304
2305
|
|
|
2306
|
+
class AceEditorInputComponent extends ValueAccessorBase {
|
|
2307
|
+
editor;
|
|
2308
|
+
title;
|
|
2309
|
+
description;
|
|
2310
|
+
previousStepsOutputAttributes = {};
|
|
2311
|
+
mode;
|
|
2312
|
+
ngAfterContentInit() {
|
|
2313
|
+
this.createAceEditorCustomCompletions();
|
|
2314
|
+
}
|
|
2315
|
+
createAceEditorCustomCompletions() {
|
|
2316
|
+
setTimeout(() => {
|
|
2317
|
+
if (this.editor?.setCustomCompletions) {
|
|
2318
|
+
this.setEditorCustomCompletions(this.editor, true);
|
|
2319
|
+
}
|
|
2320
|
+
}, 500);
|
|
2321
|
+
}
|
|
2322
|
+
beautify() {
|
|
2323
|
+
const rawDataContent = this.editor.getEditor().getSession().getValue();
|
|
2324
|
+
if (rawDataContent) {
|
|
2325
|
+
const formattedContent = beautifyRawDataContent(rawDataContent);
|
|
2326
|
+
this.editor.getEditor().getSession().setValue(formattedContent);
|
|
2327
|
+
}
|
|
2328
|
+
}
|
|
2329
|
+
setEditorCustomCompletions(editor, includeBrackets) {
|
|
2330
|
+
editor.setCustomCompletions(this.getOutputAttributesCodeCompletions({
|
|
2331
|
+
prefixIdentifier: '$',
|
|
2332
|
+
outputAttributes: this.previousStepsOutputAttributes,
|
|
2333
|
+
includeBrackets
|
|
2334
|
+
}));
|
|
2335
|
+
}
|
|
2336
|
+
getOutputAttributesCodeCompletions(props) {
|
|
2337
|
+
let attributesPaths = [];
|
|
2338
|
+
for (const outputAttributesKey in props.outputAttributes) {
|
|
2339
|
+
const outputAttribute = props.outputAttributes[outputAttributesKey];
|
|
2340
|
+
const currentPath = `${props.prefixIdentifier}.${outputAttributesKey}`;
|
|
2341
|
+
attributesPaths.push(this.createCompletion(currentPath, props.includeBrackets));
|
|
2342
|
+
attributesPaths = attributesPaths.concat(this.parseItem({
|
|
2343
|
+
...props,
|
|
2344
|
+
currentPath,
|
|
2345
|
+
attributes: outputAttribute.attributes
|
|
2346
|
+
}));
|
|
2347
|
+
}
|
|
2348
|
+
return attributesPaths.map(value => {
|
|
2349
|
+
return {
|
|
2350
|
+
caption: value,
|
|
2351
|
+
value,
|
|
2352
|
+
meta: 'Step attribute',
|
|
2353
|
+
score: 0
|
|
2354
|
+
};
|
|
2355
|
+
});
|
|
2356
|
+
}
|
|
2357
|
+
createCompletion(completion, includeBrackets) {
|
|
2358
|
+
return includeBrackets ? `{{${completion}}}` : completion;
|
|
2359
|
+
}
|
|
2360
|
+
parseItem(props) {
|
|
2361
|
+
let attributesPaths = [];
|
|
2362
|
+
const currentPath = props.currentPath;
|
|
2363
|
+
for (const attributeName in props.attributes) {
|
|
2364
|
+
const attributeValue = props.attributes[attributeName];
|
|
2365
|
+
const attributeTypeIsInvalid = typeof attributeValue?.type !== 'string' && !(attributeValue?.type instanceof String);
|
|
2366
|
+
if (attributeValue?.type && attributeTypeIsInvalid) {
|
|
2367
|
+
continue;
|
|
2368
|
+
}
|
|
2369
|
+
const attributeType = attributeValue?.type?.toUpperCase();
|
|
2370
|
+
if (['STRING', 'NUMBER', 'BOOLEAN', 'AUTHORIZATION'].includes(attributeType)) {
|
|
2371
|
+
attributesPaths.push(this.createCompletion(`${currentPath}.${attributeName}`, props.includeBrackets));
|
|
2372
|
+
}
|
|
2373
|
+
else if (attributeType === 'OBJECT') {
|
|
2374
|
+
attributesPaths.push(this.createCompletion(`${currentPath}.${attributeName}`, props.includeBrackets));
|
|
2375
|
+
attributesPaths = attributesPaths.concat(this.parseItem({
|
|
2376
|
+
...props,
|
|
2377
|
+
currentPath: `${currentPath}.${attributeName}`,
|
|
2378
|
+
attributes: attributeValue.child ?? attributeValue.properties
|
|
2379
|
+
}));
|
|
2380
|
+
}
|
|
2381
|
+
else if (attributeType === 'ARRAY') {
|
|
2382
|
+
const arrayPaths = this.parseArrayItem(currentPath, attributeName, attributesPaths, props, attributeValue);
|
|
2383
|
+
attributesPaths = attributesPaths.concat(arrayPaths);
|
|
2384
|
+
}
|
|
2385
|
+
else if (!attributeValue?.type) {
|
|
2386
|
+
attributesPaths = attributesPaths.concat(this.parseItem({
|
|
2387
|
+
...props,
|
|
2388
|
+
currentPath,
|
|
2389
|
+
attributes: { [attributeName]: { type: attributeValue } }
|
|
2390
|
+
}));
|
|
2391
|
+
}
|
|
2392
|
+
}
|
|
2393
|
+
return attributesPaths;
|
|
2394
|
+
}
|
|
2395
|
+
parseArrayItem(currentPath, attributeName, attributesPaths, props, attributeValue) {
|
|
2396
|
+
attributesPaths.push(this.createCompletion(`${currentPath}.${attributeName}`, props.includeBrackets));
|
|
2397
|
+
if (props.includeArrayMethods) {
|
|
2398
|
+
attributesPaths = attributesPaths.concat(this.getArrayMethodsCodeCompletions(`${currentPath}.${attributeName}`));
|
|
2399
|
+
}
|
|
2400
|
+
attributesPaths.push(this.createCompletion(`${currentPath}.${attributeName}[0]`, props.includeBrackets));
|
|
2401
|
+
attributesPaths = attributesPaths.concat(this.parseItem({
|
|
2402
|
+
...props,
|
|
2403
|
+
currentPath: `${currentPath}.${attributeName}[0]`,
|
|
2404
|
+
attributes: attributeValue.child ?? attributeValue.properties
|
|
2405
|
+
}));
|
|
2406
|
+
return attributesPaths;
|
|
2407
|
+
}
|
|
2408
|
+
getArrayMethodsCodeCompletions(currentPath) {
|
|
2409
|
+
return [
|
|
2410
|
+
`${currentPath}.concat()`,
|
|
2411
|
+
`${currentPath}.filter((element) => )`,
|
|
2412
|
+
`${currentPath}.find((element) => )`,
|
|
2413
|
+
`${currentPath}.forEach((element) => )`,
|
|
2414
|
+
`${currentPath}.includes()`,
|
|
2415
|
+
`${currentPath}.indexOf()`,
|
|
2416
|
+
`${currentPath}.map((element) => )`,
|
|
2417
|
+
`${currentPath}.push()`,
|
|
2418
|
+
`${currentPath}.sort()`
|
|
2419
|
+
];
|
|
2420
|
+
}
|
|
2421
|
+
onDropOnEditor(editor, $event, addBrackets) {
|
|
2422
|
+
if ($event.data) {
|
|
2423
|
+
let dropText = $event.data;
|
|
2424
|
+
if (addBrackets) {
|
|
2425
|
+
dropText = `{{${dropText}}}`;
|
|
2426
|
+
}
|
|
2427
|
+
editor.draggedText = dropText;
|
|
2428
|
+
}
|
|
2429
|
+
}
|
|
2430
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AceEditorInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
2431
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: AceEditorInputComponent, selector: "ace-editor-input", inputs: { title: "title", description: "description", previousStepsOutputAttributes: "previousStepsOutputAttributes", mode: "mode" }, providers: [{
|
|
2432
|
+
provide: NG_VALUE_ACCESSOR,
|
|
2433
|
+
useExisting: forwardRef(() => AceEditorInputComponent),
|
|
2434
|
+
multi: true
|
|
2435
|
+
}], viewQueries: [{ propertyName: "editor", first: true, predicate: ["editor"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ace-editor-input\">\n <div class=\"code-header\">\n <label class=\"info-label bold\">\n <div *ngIf=\"title\">{{ title }}</div>\n <small>{{ description }}</small>\n </label>\n <primary-button [size]=\"'slim'\"\n [label]=\"'Beautify'\"\n (onClick)=\"beautify()\">\n </primary-button>\n </div>\n <ace-editor\n #editor\n [(text)]=\"value\"\n [options]=\"{enableBasicAutocompletion: true, enableSnippets: true, enableLiveAutocompletion: true, keyboardHandler: 'ace/keyboard/vscode'}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDropOnEditor(editor, $event, true)\"\n [mode]=\"mode\"\n [autoUpdateContent]=\"true\"\n class=\"ace-editor\"\n ></ace-editor>\n</div>\n", styles: [".ace-editor-input{width:100%}.ace-editor-input .ace-editor{height:530px;min-height:200px}.ace-editor-input .code-header{justify-content:space-between;display:flex;width:100%;margin-bottom:5px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6$1.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }, { kind: "component", type: i3$3.PrimaryButtonComponent, selector: "primary-button", inputs: ["label", "btnDisabled", "icon", "suffixIcon", "selected", "btnClass", "size"], outputs: ["onClick"] }, { kind: "component", type: AceEditorComponent, selector: "ace-editor", inputs: ["style", "options", "readOnly", "theme", "mode", "value", "text", "autoUpdateContent", "durationBeforeCallback"], outputs: ["textChanged", "textChange", "beforeDropEvent", "afterDropEvent"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
2436
|
+
}
|
|
2437
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: AceEditorInputComponent, decorators: [{
|
|
2438
|
+
type: Component,
|
|
2439
|
+
args: [{ selector: 'ace-editor-input', providers: [{
|
|
2440
|
+
provide: NG_VALUE_ACCESSOR,
|
|
2441
|
+
useExisting: forwardRef(() => AceEditorInputComponent),
|
|
2442
|
+
multi: true
|
|
2443
|
+
}], encapsulation: ViewEncapsulation.None, template: "<div class=\"ace-editor-input\">\n <div class=\"code-header\">\n <label class=\"info-label bold\">\n <div *ngIf=\"title\">{{ title }}</div>\n <small>{{ description }}</small>\n </label>\n <primary-button [size]=\"'slim'\"\n [label]=\"'Beautify'\"\n (onClick)=\"beautify()\">\n </primary-button>\n </div>\n <ace-editor\n #editor\n [(text)]=\"value\"\n [options]=\"{enableBasicAutocompletion: true, enableSnippets: true, enableLiveAutocompletion: true, keyboardHandler: 'ace/keyboard/vscode'}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDropOnEditor(editor, $event, true)\"\n [mode]=\"mode\"\n [autoUpdateContent]=\"true\"\n class=\"ace-editor\"\n ></ace-editor>\n</div>\n", styles: [".ace-editor-input{width:100%}.ace-editor-input .ace-editor{height:530px;min-height:200px}.ace-editor-input .code-header{justify-content:space-between;display:flex;width:100%;margin-bottom:5px}\n"] }]
|
|
2444
|
+
}], propDecorators: { editor: [{
|
|
2445
|
+
type: ViewChild,
|
|
2446
|
+
args: ['editor']
|
|
2447
|
+
}], title: [{
|
|
2448
|
+
type: Input
|
|
2449
|
+
}], description: [{
|
|
2450
|
+
type: Input
|
|
2451
|
+
}], previousStepsOutputAttributes: [{
|
|
2452
|
+
type: Input
|
|
2453
|
+
}], mode: [{
|
|
2454
|
+
type: Input
|
|
2455
|
+
}] } });
|
|
2456
|
+
|
|
2305
2457
|
class InputsModule {
|
|
2306
2458
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2307
2459
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.2", ngImport: i0, type: InputsModule, declarations: [MatSelectInfiniteScrollDirective,
|
|
@@ -2320,7 +2472,8 @@ class InputsModule {
|
|
|
2320
2472
|
AceEditorDirective,
|
|
2321
2473
|
DebouceInputDirective,
|
|
2322
2474
|
InputDateTimeIntervalComponent,
|
|
2323
|
-
KeyValueInputComponent
|
|
2475
|
+
KeyValueInputComponent,
|
|
2476
|
+
AceEditorInputComponent], imports: [RouterModule,
|
|
2324
2477
|
CommonModule,
|
|
2325
2478
|
FormsModule,
|
|
2326
2479
|
MatFormFieldModule,
|
|
@@ -2357,7 +2510,8 @@ class InputsModule {
|
|
|
2357
2510
|
InputDateTimeIntervalComponent,
|
|
2358
2511
|
NgxMaskDirective,
|
|
2359
2512
|
NgxMaskPipe,
|
|
2360
|
-
KeyValueInputComponent
|
|
2513
|
+
KeyValueInputComponent,
|
|
2514
|
+
AceEditorInputComponent] });
|
|
2361
2515
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputsModule, providers: [
|
|
2362
2516
|
{
|
|
2363
2517
|
provide: MAT_FORM_FIELD_DEFAULT_OPTIONS,
|
|
@@ -2434,7 +2588,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
2434
2588
|
AceEditorDirective,
|
|
2435
2589
|
DebouceInputDirective,
|
|
2436
2590
|
InputDateTimeIntervalComponent,
|
|
2437
|
-
KeyValueInputComponent
|
|
2591
|
+
KeyValueInputComponent,
|
|
2592
|
+
AceEditorInputComponent
|
|
2438
2593
|
],
|
|
2439
2594
|
exports: [
|
|
2440
2595
|
SelectBoxComponent,
|
|
@@ -2454,7 +2609,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
2454
2609
|
InputDateTimeIntervalComponent,
|
|
2455
2610
|
NgxMaskDirective,
|
|
2456
2611
|
NgxMaskPipe,
|
|
2457
|
-
KeyValueInputComponent
|
|
2612
|
+
KeyValueInputComponent,
|
|
2613
|
+
AceEditorInputComponent
|
|
2458
2614
|
],
|
|
2459
2615
|
providers: [
|
|
2460
2616
|
{
|
|
@@ -2907,5 +3063,5 @@ class TimeIntervalValueBuilder {
|
|
|
2907
3063
|
* Generated bundle index. Do not edit.
|
|
2908
3064
|
*/
|
|
2909
3065
|
|
|
2910
|
-
export { AceEditorComponent, AceEditorDirective, CurrentMonthInterval, CustomSelectComponent, CustomSelectItem, DebouceInputDirective, DefaultIntervalsBuilder, FieldComponent, InputAvatarComponent, InputBooleanComponent, InputDateTimeIntervalComponent, InputFileComponent, InputImageComponent, InputNumberComponent, InputTextComponent, InputsModule, KeyValueInputComponent, LastFiveMinutesInterval, LastHourInterval, LastMinuteInterval, LastMonthInterval, LastOneWeekInterval, LastQuarterInterval, LastTenMinutesInterval, LastThirtyMinutesInterval, LastThreeHoursInterval, LastTwoHoursInterval, LastYearInterval, SelectBoxComponent, SelectEnumComponent, SelectInterpolationComponent, ThisQuarterInterval, ThisWeekInterval, ThisYearInterval, TimeIntervalValue, TimeIntervalValueBuilder, TimeIntervalsBuilder, TodayInterval, ValueAccessorBase, YesterdayInterval };
|
|
3066
|
+
export { AceEditorComponent, AceEditorDirective, AceEditorInputComponent, CurrentMonthInterval, CustomSelectComponent, CustomSelectItem, DebouceInputDirective, DefaultIntervalsBuilder, FieldComponent, InputAvatarComponent, InputBooleanComponent, InputDateTimeIntervalComponent, InputFileComponent, InputImageComponent, InputNumberComponent, InputTextComponent, InputsModule, KeyValueInputComponent, LastFiveMinutesInterval, LastHourInterval, LastMinuteInterval, LastMonthInterval, LastOneWeekInterval, LastQuarterInterval, LastTenMinutesInterval, LastThirtyMinutesInterval, LastThreeHoursInterval, LastTwoHoursInterval, LastYearInterval, SelectBoxComponent, SelectEnumComponent, SelectInterpolationComponent, ThisQuarterInterval, ThisWeekInterval, ThisYearInterval, TimeIntervalValue, TimeIntervalValueBuilder, TimeIntervalsBuilder, TodayInterval, ValueAccessorBase, YesterdayInterval };
|
|
2911
3067
|
//# sourceMappingURL=apipass-inputs.mjs.map
|