@researchdatabox/sails-ng-common 0.2.1 → 5.0.0-RC1
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/dist/src/config/base-field-component.model.d.ts +26 -0
- package/dist/src/config/base-field-component.model.js +29 -0
- package/dist/src/config/base-field-component.outline.d.ts +108 -0
- package/dist/src/config/base-field-component.outline.js +3 -0
- package/dist/src/config/component/accordion.model.d.ts +103 -0
- package/dist/src/config/component/accordion.model.js +127 -0
- package/dist/src/config/component/accordion.outline.d.ts +162 -0
- package/dist/src/config/component/accordion.outline.js +13 -0
- package/dist/src/config/component/action-row-layout.model.d.ts +28 -0
- package/dist/src/config/component/action-row-layout.model.js +35 -0
- package/dist/src/config/component/action-row-layout.outline.d.ts +36 -0
- package/dist/src/config/component/action-row-layout.outline.js +6 -0
- package/dist/src/config/component/cancel-button.model.d.ts +48 -0
- package/dist/src/config/component/cancel-button.model.js +58 -0
- package/dist/src/config/component/cancel-button.outline.d.ts +85 -0
- package/dist/src/config/component/cancel-button.outline.js +6 -0
- package/dist/src/config/component/checkbox-input.model.d.ts +67 -0
- package/dist/src/config/component/checkbox-input.model.js +79 -0
- package/dist/src/config/component/checkbox-input.outline.d.ts +93 -0
- package/dist/src/config/component/checkbox-input.outline.js +8 -0
- package/dist/src/config/component/checkbox-tree.model.d.ts +68 -0
- package/dist/src/config/component/checkbox-tree.model.js +80 -0
- package/dist/src/config/component/checkbox-tree.outline.d.ts +105 -0
- package/dist/src/config/component/checkbox-tree.outline.js +8 -0
- package/dist/src/config/component/content.model.d.ts +46 -0
- package/dist/src/config/component/content.model.js +56 -0
- package/dist/src/config/component/content.outline.d.ts +74 -0
- package/dist/src/config/component/content.outline.js +6 -0
- package/dist/src/config/component/data-location.model.d.ts +83 -0
- package/dist/src/config/component/data-location.model.js +95 -0
- package/dist/src/config/component/data-location.outline.d.ts +124 -0
- package/dist/src/config/component/data-location.outline.js +6 -0
- package/dist/src/config/component/date-input.model.d.ts +67 -0
- package/dist/src/config/component/date-input.model.js +80 -0
- package/dist/src/config/component/date-input.outline.d.ts +88 -0
- package/dist/src/config/component/date-input.outline.js +8 -0
- package/dist/src/config/component/default-layout.model.d.ts +22 -0
- package/dist/src/config/component/default-layout.model.js +30 -0
- package/dist/src/config/component/default-layout.outline.d.ts +29 -0
- package/dist/src/config/component/default-layout.outline.js +5 -0
- package/dist/src/config/component/delete-button.model.d.ts +46 -0
- package/dist/src/config/component/delete-button.model.js +48 -0
- package/dist/src/config/component/delete-button.outline.d.ts +89 -0
- package/dist/src/config/component/delete-button.outline.js +5 -0
- package/dist/src/config/component/dropdown-input.model.d.ts +65 -0
- package/dist/src/config/component/dropdown-input.model.js +78 -0
- package/dist/src/config/component/dropdown-input.outline.d.ts +92 -0
- package/dist/src/config/component/dropdown-input.outline.js +8 -0
- package/dist/src/config/component/file-upload.model.d.ts +67 -0
- package/dist/src/config/component/file-upload.model.js +81 -0
- package/dist/src/config/component/file-upload.outline.d.ts +99 -0
- package/dist/src/config/component/file-upload.outline.js +8 -0
- package/dist/src/config/component/group.model.d.ts +61 -0
- package/dist/src/config/component/group.model.js +75 -0
- package/dist/src/config/component/group.outline.d.ts +83 -0
- package/dist/src/config/component/group.outline.js +8 -0
- package/dist/src/config/component/inline-layout.model.d.ts +22 -0
- package/dist/src/config/component/inline-layout.model.js +29 -0
- package/dist/src/config/component/inline-layout.outline.d.ts +29 -0
- package/dist/src/config/component/inline-layout.outline.js +5 -0
- package/dist/src/config/component/integration-status.model.d.ts +49 -0
- package/dist/src/config/component/integration-status.model.js +65 -0
- package/dist/src/config/component/integration-status.outline.d.ts +61 -0
- package/dist/src/config/component/integration-status.outline.js +5 -0
- package/dist/src/config/component/map.model.d.ts +69 -0
- package/dist/src/config/component/map.model.js +86 -0
- package/dist/src/config/component/map.outline.d.ts +110 -0
- package/dist/src/config/component/map.outline.js +8 -0
- package/dist/src/config/component/pdf-list.model.d.ts +68 -0
- package/dist/src/config/component/pdf-list.model.js +71 -0
- package/dist/src/config/component/pdf-list.outline.d.ts +97 -0
- package/dist/src/config/component/pdf-list.outline.js +6 -0
- package/dist/src/config/component/publish-data-location-refresh.model.d.ts +39 -0
- package/dist/src/config/component/publish-data-location-refresh.model.js +52 -0
- package/dist/src/config/component/publish-data-location-refresh.outline.d.ts +58 -0
- package/dist/src/config/component/publish-data-location-refresh.outline.js +5 -0
- package/dist/src/config/component/publish-data-location-selector.model.d.ts +78 -0
- package/dist/src/config/component/publish-data-location-selector.model.js +104 -0
- package/dist/src/config/component/publish-data-location-selector.outline.d.ts +110 -0
- package/dist/src/config/component/publish-data-location-selector.outline.js +6 -0
- package/dist/src/config/component/question-tree.helper.d.ts +58 -0
- package/dist/src/config/component/question-tree.helper.js +291 -0
- package/dist/src/config/component/question-tree.model.d.ts +64 -0
- package/dist/src/config/component/question-tree.model.js +80 -0
- package/dist/src/config/component/question-tree.outline.d.ts +314 -0
- package/dist/src/config/component/question-tree.outline.js +9 -0
- package/dist/src/config/component/radio-input.model.d.ts +65 -0
- package/dist/src/config/component/radio-input.model.js +77 -0
- package/dist/src/config/component/radio-input.outline.d.ts +91 -0
- package/dist/src/config/component/radio-input.outline.js +8 -0
- package/dist/src/config/component/record-metadata-retriever.model.d.ts +41 -0
- package/dist/src/config/component/record-metadata-retriever.model.js +57 -0
- package/dist/src/config/component/record-metadata-retriever.outline.d.ts +53 -0
- package/dist/src/config/component/record-metadata-retriever.outline.js +5 -0
- package/dist/src/config/component/record-selector.model.d.ts +61 -0
- package/dist/src/config/component/record-selector.model.js +61 -0
- package/dist/src/config/component/record-selector.outline.d.ts +91 -0
- package/dist/src/config/component/record-selector.outline.js +6 -0
- package/dist/src/config/component/repeatable.model.d.ts +91 -0
- package/dist/src/config/component/repeatable.model.js +112 -0
- package/dist/src/config/component/repeatable.outline.d.ts +115 -0
- package/dist/src/config/component/repeatable.outline.js +10 -0
- package/dist/src/config/component/reusable.model.d.ts +42 -0
- package/dist/src/config/component/reusable.model.js +57 -0
- package/dist/src/config/component/reusable.outline.d.ts +55 -0
- package/dist/src/config/component/reusable.outline.js +6 -0
- package/dist/src/config/component/rich-text-editor.model.d.ts +65 -0
- package/dist/src/config/component/rich-text-editor.model.js +79 -0
- package/dist/src/config/component/rich-text-editor.outline.d.ts +92 -0
- package/dist/src/config/component/rich-text-editor.outline.js +8 -0
- package/dist/src/config/component/save-button.model.d.ts +49 -0
- package/dist/src/config/component/save-button.model.js +59 -0
- package/dist/src/config/component/save-button.outline.d.ts +90 -0
- package/dist/src/config/component/save-button.outline.js +6 -0
- package/dist/src/config/component/save-status.model.d.ts +42 -0
- package/dist/src/config/component/save-status.model.js +60 -0
- package/dist/src/config/component/save-status.outline.d.ts +58 -0
- package/dist/src/config/component/save-status.outline.js +6 -0
- package/dist/src/config/component/simple-input.model.d.ts +62 -0
- package/dist/src/config/component/simple-input.model.js +75 -0
- package/dist/src/config/component/simple-input.outline.d.ts +86 -0
- package/dist/src/config/component/simple-input.outline.js +9 -0
- package/dist/src/config/component/suggested-validation-summary.model.d.ts +45 -0
- package/dist/src/config/component/suggested-validation-summary.model.js +61 -0
- package/dist/src/config/component/suggested-validation-summary.outline.d.ts +57 -0
- package/dist/src/config/component/suggested-validation-summary.outline.js +5 -0
- package/dist/src/config/component/tab-content.model.d.ts +63 -0
- package/dist/src/config/component/tab-content.model.js +77 -0
- package/dist/src/config/component/tab-content.outline.d.ts +98 -0
- package/dist/src/config/component/tab-content.outline.js +8 -0
- package/dist/src/config/component/tab-nav-button.model.d.ts +45 -0
- package/dist/src/config/component/tab-nav-button.model.js +55 -0
- package/dist/src/config/component/tab-nav-button.outline.d.ts +70 -0
- package/dist/src/config/component/tab-nav-button.outline.js +6 -0
- package/dist/src/config/component/tab.model.d.ts +71 -0
- package/dist/src/config/component/tab.model.js +84 -0
- package/dist/src/config/component/tab.outline.d.ts +112 -0
- package/dist/src/config/component/tab.outline.js +9 -0
- package/dist/src/config/component/text-area.model.d.ts +63 -0
- package/dist/src/config/component/text-area.model.js +76 -0
- package/dist/src/config/component/text-area.outline.d.ts +87 -0
- package/dist/src/config/component/text-area.outline.js +8 -0
- package/dist/src/config/component/typeahead-input.model.d.ts +83 -0
- package/dist/src/config/component/typeahead-input.model.js +97 -0
- package/dist/src/config/component/typeahead-input.outline.d.ts +199 -0
- package/dist/src/config/component/typeahead-input.outline.js +10 -0
- package/dist/src/config/component/validation-summary.model.d.ts +42 -0
- package/dist/src/config/component/validation-summary.model.js +60 -0
- package/dist/src/config/component/validation-summary.outline.d.ts +63 -0
- package/dist/src/config/component/validation-summary.outline.js +6 -0
- package/dist/src/config/dictionary.model.d.ts +648 -0
- package/dist/src/config/dictionary.model.js +181 -0
- package/dist/src/config/dictionary.outline.d.ts +96 -0
- package/dist/src/config/dictionary.outline.js +3 -0
- package/dist/src/config/field-component.model.d.ts +7 -0
- package/dist/src/config/field-component.model.js +11 -0
- package/dist/src/config/field-component.outline.d.ts +20 -0
- package/dist/src/config/field-component.outline.js +3 -0
- package/dist/src/config/field-layout.model.d.ts +19 -0
- package/dist/src/config/field-layout.model.js +23 -0
- package/dist/src/config/field-layout.outline.d.ts +42 -0
- package/dist/src/config/field-layout.outline.js +3 -0
- package/dist/src/config/field-model.model.d.ts +21 -0
- package/dist/src/config/field-model.model.js +24 -0
- package/dist/src/config/field-model.outline.d.ts +63 -0
- package/dist/src/config/field-model.outline.js +3 -0
- package/dist/src/config/field.model.d.ts +12 -0
- package/dist/src/config/field.model.js +12 -0
- package/dist/src/config/field.outline.d.ts +19 -0
- package/dist/src/config/field.outline.js +3 -0
- package/dist/src/config/form-behaviour.outline.d.ts +128 -0
- package/dist/src/config/form-behaviour.outline.js +40 -0
- package/dist/src/config/form-component.model.d.ts +38 -0
- package/dist/src/config/form-component.model.js +36 -0
- package/dist/src/config/form-component.outline.d.ts +305 -0
- package/dist/src/config/form-component.outline.js +27 -0
- package/dist/src/config/form-config.model.d.ts +33 -0
- package/dist/src/config/form-config.model.js +36 -0
- package/dist/src/config/form-config.outline.d.ts +111 -0
- package/dist/src/config/form-config.outline.js +3 -0
- package/dist/src/config/form-override.model.d.ts +146 -0
- package/dist/src/config/form-override.model.js +1523 -0
- package/dist/src/config/form-override.outline.d.ts +15 -0
- package/dist/src/config/form-override.outline.js +3 -0
- package/dist/src/config/form-prehydrate.outline.d.ts +17 -0
- package/dist/src/config/form-prehydrate.outline.js +5 -0
- package/dist/src/config/form-types.model.d.ts +6 -0
- package/dist/src/config/form-types.model.js +23 -0
- package/dist/src/config/form-types.outline.d.ts +48 -0
- package/dist/src/config/form-types.outline.js +137 -0
- package/dist/src/config/helpers.d.ts +31 -0
- package/dist/src/config/helpers.js +122 -0
- package/dist/src/config/names/naming-helpers.d.ts +112 -0
- package/dist/src/config/names/naming-helpers.js +188 -0
- package/dist/src/config/names/query-helpers.d.ts +43 -0
- package/dist/src/config/names/query-helpers.js +59 -0
- package/dist/src/config/shared.outline.d.ts +54 -0
- package/dist/src/config/shared.outline.js +41 -0
- package/dist/src/config/visitor/base.model.d.ts +143 -0
- package/dist/src/config/visitor/base.model.js +336 -0
- package/dist/src/config/visitor/base.outline.d.ts +146 -0
- package/dist/src/config/visitor/base.outline.js +3 -0
- package/dist/src/config/visitor/common.model.d.ts +119 -0
- package/dist/src/config/visitor/common.model.js +422 -0
- package/dist/src/date-format-helpers.d.ts +1 -0
- package/dist/src/date-format-helpers.js +21 -0
- package/dist/src/handlebars-helpers.d.ts +258 -0
- package/dist/src/handlebars-helpers.js +715 -0
- package/dist/src/html-helpers.d.ts +15 -0
- package/dist/src/html-helpers.js +42 -0
- package/dist/src/index.d.ts +118 -3
- package/dist/src/index.js +127 -2
- package/dist/src/jsonata-helpers.d.ts +40 -0
- package/dist/src/jsonata-helpers.js +118 -0
- package/dist/src/logger.interface.d.ts +14 -0
- package/dist/src/logger.interface.js +3 -0
- package/dist/src/record.model.d.ts +23 -0
- package/dist/src/record.model.js +19 -1
- package/dist/src/report.model.d.ts +46 -0
- package/dist/src/status.model.d.ts +22 -0
- package/dist/src/status.model.js +28 -0
- package/dist/src/template.outline.d.ts +82 -0
- package/dist/src/template.outline.js +14 -0
- package/dist/src/translation-helpers.d.ts +26 -0
- package/dist/src/translation-helpers.js +71 -0
- package/dist/src/validation/form.model.d.ts +306 -24
- package/dist/src/validation/form.model.js +29 -1
- package/dist/src/validation/helpers.d.ts +15 -7
- package/dist/src/validation/helpers.js +49 -13
- package/dist/src/validation/validators-support.d.ts +39 -2
- package/dist/src/validation/validators-support.js +162 -12
- package/dist/src/validation/validators.d.ts +28 -0
- package/dist/src/validation/validators.js +531 -0
- package/package.json +51 -34
- package/LICENSE +0 -674
- package/dist/src/validation/index.d.ts +0 -3
- package/dist/src/validation/index.js +0 -20
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { FieldComponentConfig, FieldComponentDefinition } from "../field-component.model";
|
|
2
|
+
import { FieldModelConfig, FieldModelDefinition } from "../field-model.model";
|
|
3
|
+
import { FormComponentDefinition } from "../form-component.model";
|
|
4
|
+
import { FormConfigVisitorOutline } from "../visitor/base.outline";
|
|
5
|
+
import { TextAreaFieldComponentConfigOutline, TextAreaFieldComponentDefinitionOutline, TextAreaFieldModelConfigOutline, TextAreaFieldModelDefinitionOutline, TextAreaFormComponentDefinitionOutline, TextAreaModelValueType } from "./text-area.outline";
|
|
6
|
+
import { AvailableFieldLayoutDefinitionOutlines } from "../dictionary.outline";
|
|
7
|
+
export declare class TextAreaFieldComponentConfig extends FieldComponentConfig implements TextAreaFieldComponentConfigOutline {
|
|
8
|
+
rows: number;
|
|
9
|
+
cols: number;
|
|
10
|
+
placeholder?: string;
|
|
11
|
+
constructor();
|
|
12
|
+
}
|
|
13
|
+
export declare class TextAreaFieldComponentDefinition extends FieldComponentDefinition implements TextAreaFieldComponentDefinitionOutline {
|
|
14
|
+
class: "TextAreaComponent";
|
|
15
|
+
config?: TextAreaFieldComponentConfigOutline;
|
|
16
|
+
constructor();
|
|
17
|
+
accept(visitor: FormConfigVisitorOutline): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
export declare class TextAreaFieldModelConfig extends FieldModelConfig<TextAreaModelValueType> implements TextAreaFieldModelConfigOutline {
|
|
20
|
+
constructor();
|
|
21
|
+
}
|
|
22
|
+
export declare class TextAreaFieldModelDefinition extends FieldModelDefinition<TextAreaModelValueType> implements TextAreaFieldModelDefinitionOutline {
|
|
23
|
+
class: "TextAreaModel";
|
|
24
|
+
config?: TextAreaFieldModelConfigOutline;
|
|
25
|
+
constructor();
|
|
26
|
+
accept(visitor: FormConfigVisitorOutline): Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
export declare class TextAreaFormComponentDefinition extends FormComponentDefinition implements TextAreaFormComponentDefinitionOutline {
|
|
29
|
+
component: TextAreaFieldComponentDefinitionOutline;
|
|
30
|
+
model?: TextAreaFieldModelDefinitionOutline;
|
|
31
|
+
layout?: AvailableFieldLayoutDefinitionOutlines;
|
|
32
|
+
constructor();
|
|
33
|
+
accept(visitor: FormConfigVisitorOutline): Promise<void>;
|
|
34
|
+
}
|
|
35
|
+
export declare const TextAreaMap: ({
|
|
36
|
+
kind: "FieldComponentConfigKind";
|
|
37
|
+
def: typeof TextAreaFieldComponentConfig;
|
|
38
|
+
class?: undefined;
|
|
39
|
+
} | {
|
|
40
|
+
kind: "FieldComponentDefinitionKind";
|
|
41
|
+
def: typeof TextAreaFieldComponentDefinition;
|
|
42
|
+
class: "TextAreaComponent";
|
|
43
|
+
} | {
|
|
44
|
+
kind: "FieldModelConfigKind";
|
|
45
|
+
def: typeof TextAreaFieldModelConfig;
|
|
46
|
+
class?: undefined;
|
|
47
|
+
} | {
|
|
48
|
+
kind: "FieldModelDefinitionKind";
|
|
49
|
+
def: typeof TextAreaFieldModelDefinition;
|
|
50
|
+
class: "TextAreaModel";
|
|
51
|
+
} | {
|
|
52
|
+
kind: "FormComponentDefinitionKind";
|
|
53
|
+
def: typeof TextAreaFormComponentDefinition;
|
|
54
|
+
class: "TextAreaComponent";
|
|
55
|
+
})[];
|
|
56
|
+
export declare const TextAreaDefaults: {
|
|
57
|
+
FormComponentDefinitionKind: {
|
|
58
|
+
TextAreaComponent: {
|
|
59
|
+
FieldComponentDefinitionKind: "TextAreaComponent";
|
|
60
|
+
FieldModelDefinitionKind: "TextAreaModel";
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TextAreaDefaults = exports.TextAreaMap = exports.TextAreaFormComponentDefinition = exports.TextAreaFieldModelDefinition = exports.TextAreaFieldModelConfig = exports.TextAreaFieldComponentDefinition = exports.TextAreaFieldComponentConfig = void 0;
|
|
4
|
+
const field_component_model_1 = require("../field-component.model");
|
|
5
|
+
const field_model_model_1 = require("../field-model.model");
|
|
6
|
+
const form_component_model_1 = require("../form-component.model");
|
|
7
|
+
const shared_outline_1 = require("../shared.outline");
|
|
8
|
+
const text_area_outline_1 = require("./text-area.outline");
|
|
9
|
+
/* Text Area Component */
|
|
10
|
+
class TextAreaFieldComponentConfig extends field_component_model_1.FieldComponentConfig {
|
|
11
|
+
rows = 2;
|
|
12
|
+
cols = 20;
|
|
13
|
+
placeholder = '';
|
|
14
|
+
constructor() {
|
|
15
|
+
super();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.TextAreaFieldComponentConfig = TextAreaFieldComponentConfig;
|
|
19
|
+
class TextAreaFieldComponentDefinition extends field_component_model_1.FieldComponentDefinition {
|
|
20
|
+
class = text_area_outline_1.TextAreaComponentName;
|
|
21
|
+
config;
|
|
22
|
+
constructor() {
|
|
23
|
+
super();
|
|
24
|
+
}
|
|
25
|
+
async accept(visitor) {
|
|
26
|
+
await visitor.visitTextAreaFieldComponentDefinition(this);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.TextAreaFieldComponentDefinition = TextAreaFieldComponentDefinition;
|
|
30
|
+
/* Text Area Model */
|
|
31
|
+
class TextAreaFieldModelConfig extends field_model_model_1.FieldModelConfig {
|
|
32
|
+
constructor() {
|
|
33
|
+
super();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.TextAreaFieldModelConfig = TextAreaFieldModelConfig;
|
|
37
|
+
class TextAreaFieldModelDefinition extends field_model_model_1.FieldModelDefinition {
|
|
38
|
+
class = text_area_outline_1.TextAreaModelName;
|
|
39
|
+
config;
|
|
40
|
+
constructor() {
|
|
41
|
+
super();
|
|
42
|
+
}
|
|
43
|
+
async accept(visitor) {
|
|
44
|
+
await visitor.visitTextAreaFieldModelDefinition(this);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.TextAreaFieldModelDefinition = TextAreaFieldModelDefinition;
|
|
48
|
+
/* Text Area Form Component */
|
|
49
|
+
class TextAreaFormComponentDefinition extends form_component_model_1.FormComponentDefinition {
|
|
50
|
+
component;
|
|
51
|
+
model;
|
|
52
|
+
layout;
|
|
53
|
+
constructor() {
|
|
54
|
+
super();
|
|
55
|
+
}
|
|
56
|
+
async accept(visitor) {
|
|
57
|
+
await visitor.visitTextAreaFormComponentDefinition(this);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
exports.TextAreaFormComponentDefinition = TextAreaFormComponentDefinition;
|
|
61
|
+
exports.TextAreaMap = [
|
|
62
|
+
{ kind: shared_outline_1.FieldComponentConfigKind, def: TextAreaFieldComponentConfig },
|
|
63
|
+
{ kind: shared_outline_1.FieldComponentDefinitionKind, def: TextAreaFieldComponentDefinition, class: text_area_outline_1.TextAreaComponentName },
|
|
64
|
+
{ kind: shared_outline_1.FieldModelConfigKind, def: TextAreaFieldModelConfig },
|
|
65
|
+
{ kind: shared_outline_1.FieldModelDefinitionKind, def: TextAreaFieldModelDefinition, class: text_area_outline_1.TextAreaModelName },
|
|
66
|
+
{ kind: shared_outline_1.FormComponentDefinitionKind, def: TextAreaFormComponentDefinition, class: text_area_outline_1.TextAreaComponentName },
|
|
67
|
+
];
|
|
68
|
+
exports.TextAreaDefaults = {
|
|
69
|
+
[shared_outline_1.FormComponentDefinitionKind]: {
|
|
70
|
+
[text_area_outline_1.TextAreaComponentName]: {
|
|
71
|
+
[shared_outline_1.FieldComponentDefinitionKind]: text_area_outline_1.TextAreaComponentName,
|
|
72
|
+
[shared_outline_1.FieldModelDefinitionKind]: text_area_outline_1.TextAreaModelName,
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbmZpZy9jb21wb25lbnQvdGV4dC1hcmVhLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9FQUdrQztBQUVsQyw0REFHOEI7QUFDOUIsa0VBQWlFO0FBRWpFLHNEQUsyQjtBQUMzQiwyREFNNkI7QUFJN0IseUJBQXlCO0FBR3pCLE1BQWEsNEJBQTZCLFNBQVEsNENBQW9CO0lBQzNELElBQUksR0FBVyxDQUFDLENBQUM7SUFDakIsSUFBSSxHQUFXLEVBQUUsQ0FBQztJQUNsQixXQUFXLEdBQVksRUFBRSxDQUFDO0lBRWpDO1FBQ0ksS0FBSyxFQUFFLENBQUM7SUFDWixDQUFDO0NBQ0o7QUFSRCxvRUFRQztBQUdELE1BQWEsZ0NBQWlDLFNBQVEsZ0RBQXdCO0lBQzFFLEtBQUssR0FBRyx5Q0FBcUIsQ0FBQztJQUM5QixNQUFNLENBQXVDO0lBRTdDO1FBQ0ksS0FBSyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFpQztRQUMxQyxNQUFNLE9BQU8sQ0FBQyxxQ0FBcUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5RCxDQUFDO0NBQ0o7QUFYRCw0RUFXQztBQUdELHFCQUFxQjtBQUdyQixNQUFhLHdCQUF5QixTQUFRLG9DQUF3QztJQUNsRjtRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztDQUNKO0FBSkQsNERBSUM7QUFFRCxNQUFhLDRCQUE2QixTQUFRLHdDQUE0QztJQUMxRixLQUFLLEdBQUcscUNBQWlCLENBQUM7SUFDMUIsTUFBTSxDQUFtQztJQUV6QztRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBaUM7UUFDMUMsTUFBTSxPQUFPLENBQUMsaUNBQWlDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUQsQ0FBQztDQUNKO0FBWEQsb0VBV0M7QUFFRCw4QkFBOEI7QUFHOUIsTUFBYSwrQkFBZ0MsU0FBUSw4Q0FBdUI7SUFDakUsU0FBUyxDQUEyQztJQUNwRCxLQUFLLENBQXVDO0lBQzVDLE1BQU0sQ0FBMEM7SUFFdkQ7UUFDSSxLQUFLLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQWlDO1FBQzFDLE1BQU0sT0FBTyxDQUFDLG9DQUFvQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdELENBQUM7Q0FDSjtBQVpELDBFQVlDO0FBRVksUUFBQSxXQUFXLEdBQUc7SUFDdkIsRUFBQyxJQUFJLEVBQUUseUNBQXdCLEVBQUUsR0FBRyxFQUFFLDRCQUE0QixFQUFDO0lBQ25FLEVBQUMsSUFBSSxFQUFFLDZDQUE0QixFQUFFLEdBQUcsRUFBRSxnQ0FBZ0MsRUFBRSxLQUFLLEVBQUUseUNBQXFCLEVBQUM7SUFDekcsRUFBQyxJQUFJLEVBQUUscUNBQW9CLEVBQUUsR0FBRyxFQUFFLHdCQUF3QixFQUFDO0lBQzNELEVBQUMsSUFBSSxFQUFFLHlDQUF3QixFQUFFLEdBQUcsRUFBRSw0QkFBNEIsRUFBRSxLQUFLLEVBQUUscUNBQWlCLEVBQUM7SUFDN0YsRUFBQyxJQUFJLEVBQUUsNENBQTJCLEVBQUUsR0FBRyxFQUFFLCtCQUErQixFQUFFLEtBQUssRUFBQyx5Q0FBcUIsRUFBQztDQUN6RyxDQUFDO0FBQ1csUUFBQSxnQkFBZ0IsR0FBRztJQUM1QixDQUFDLDRDQUEyQixDQUFDLEVBQUU7UUFDM0IsQ0FBQyx5Q0FBcUIsQ0FBQyxFQUFFO1lBQ3JCLENBQUMsNkNBQTRCLENBQUMsRUFBRSx5Q0FBcUI7WUFDckQsQ0FBQyx5Q0FBd0IsQ0FBQyxFQUFFLHFDQUFpQjtTQUNoRDtLQUNKO0NBQ0osQ0FBQyJ9
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { AvailableFieldLayoutDefinitionFrames, AvailableFieldLayoutDefinitionOutlines } from "../dictionary.outline";
|
|
2
|
+
import { FieldModelConfigFrame, FieldModelConfigOutline, FieldModelDefinitionFrame, FieldModelDefinitionOutline } from "../field-model.outline";
|
|
3
|
+
import { FieldComponentConfigFrame, FieldComponentConfigOutline, FieldComponentDefinitionFrame, FieldComponentDefinitionOutline } from "../field-component.outline";
|
|
4
|
+
import { FormComponentDefinitionFrame, FormComponentDefinitionOutline } from "../form-component.outline";
|
|
5
|
+
import { FieldComponentConfigFrameKindType, FieldComponentConfigKindType, FieldComponentDefinitionFrameKindType, FieldComponentDefinitionKindType, FieldModelConfigFrameKindType, FieldModelConfigKindType, FieldModelDefinitionFrameKindType, FieldModelDefinitionKindType, FormComponentDefinitionFrameKindType, FormComponentDefinitionKindType } from "../shared.outline";
|
|
6
|
+
export declare const TextAreaComponentName: "TextAreaComponent";
|
|
7
|
+
export type TextAreaComponentNameType = typeof TextAreaComponentName;
|
|
8
|
+
export interface TextAreaFieldComponentConfigFrame extends FieldComponentConfigFrame {
|
|
9
|
+
rows: number;
|
|
10
|
+
cols: number;
|
|
11
|
+
placeholder?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface TextAreaFieldComponentConfigOutline extends TextAreaFieldComponentConfigFrame, FieldComponentConfigOutline {
|
|
14
|
+
rows: number;
|
|
15
|
+
cols: number;
|
|
16
|
+
placeholder?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface TextAreaFieldComponentDefinitionFrame extends FieldComponentDefinitionFrame {
|
|
19
|
+
class: TextAreaComponentNameType;
|
|
20
|
+
config?: TextAreaFieldComponentConfigFrame;
|
|
21
|
+
}
|
|
22
|
+
export interface TextAreaFieldComponentDefinitionOutline extends TextAreaFieldComponentDefinitionFrame, FieldComponentDefinitionOutline {
|
|
23
|
+
class: TextAreaComponentNameType;
|
|
24
|
+
config?: TextAreaFieldComponentConfigOutline;
|
|
25
|
+
}
|
|
26
|
+
export declare const TextAreaModelName: "TextAreaModel";
|
|
27
|
+
export type TextAreaModelNameType = typeof TextAreaModelName;
|
|
28
|
+
export type TextAreaModelValueType = string;
|
|
29
|
+
export interface TextAreaFieldModelConfigFrame extends FieldModelConfigFrame<TextAreaModelValueType> {
|
|
30
|
+
}
|
|
31
|
+
export interface TextAreaFieldModelConfigOutline extends TextAreaFieldModelConfigFrame, FieldModelConfigOutline<TextAreaModelValueType> {
|
|
32
|
+
}
|
|
33
|
+
export interface TextAreaFieldModelDefinitionFrame extends FieldModelDefinitionFrame<TextAreaModelValueType> {
|
|
34
|
+
class: TextAreaModelNameType;
|
|
35
|
+
config?: TextAreaFieldModelConfigFrame;
|
|
36
|
+
}
|
|
37
|
+
export interface TextAreaFieldModelDefinitionOutline extends TextAreaFieldModelDefinitionFrame, FieldModelDefinitionOutline<TextAreaModelValueType> {
|
|
38
|
+
class: TextAreaModelNameType;
|
|
39
|
+
config?: TextAreaFieldModelConfigOutline;
|
|
40
|
+
}
|
|
41
|
+
export interface TextAreaFormComponentDefinitionFrame extends FormComponentDefinitionFrame {
|
|
42
|
+
component: TextAreaFieldComponentDefinitionFrame;
|
|
43
|
+
model?: TextAreaFieldModelDefinitionFrame;
|
|
44
|
+
layout?: AvailableFieldLayoutDefinitionFrames;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Configures multiline plain-text entry and its model value.
|
|
48
|
+
*
|
|
49
|
+
* @extensionPoint Use `TextAreaComponent` with `TextAreaModel` for long-form unformatted text fields.
|
|
50
|
+
* @see https://github.com/redbox-mint/redbox-portal/wiki/Configuring-Record-Forms
|
|
51
|
+
*/
|
|
52
|
+
export interface TextAreaFormComponentDefinitionOutline extends TextAreaFormComponentDefinitionFrame, FormComponentDefinitionOutline {
|
|
53
|
+
component: TextAreaFieldComponentDefinitionOutline;
|
|
54
|
+
model?: TextAreaFieldModelDefinitionOutline;
|
|
55
|
+
layout?: AvailableFieldLayoutDefinitionOutlines;
|
|
56
|
+
}
|
|
57
|
+
export type TextAreaTypes = {
|
|
58
|
+
kind: FieldComponentConfigFrameKindType;
|
|
59
|
+
class: TextAreaFieldComponentConfigFrame;
|
|
60
|
+
} | {
|
|
61
|
+
kind: FieldComponentDefinitionFrameKindType;
|
|
62
|
+
class: TextAreaFieldComponentDefinitionFrame;
|
|
63
|
+
} | {
|
|
64
|
+
kind: FieldModelConfigFrameKindType;
|
|
65
|
+
class: TextAreaFieldModelConfigFrame;
|
|
66
|
+
} | {
|
|
67
|
+
kind: FieldModelDefinitionFrameKindType;
|
|
68
|
+
class: TextAreaFieldModelDefinitionFrame;
|
|
69
|
+
} | {
|
|
70
|
+
kind: FormComponentDefinitionFrameKindType;
|
|
71
|
+
class: TextAreaFormComponentDefinitionFrame;
|
|
72
|
+
} | {
|
|
73
|
+
kind: FieldComponentConfigKindType;
|
|
74
|
+
class: TextAreaFieldComponentConfigOutline;
|
|
75
|
+
} | {
|
|
76
|
+
kind: FieldComponentDefinitionKindType;
|
|
77
|
+
class: TextAreaFieldComponentDefinitionOutline;
|
|
78
|
+
} | {
|
|
79
|
+
kind: FieldModelConfigKindType;
|
|
80
|
+
class: TextAreaFieldModelConfigOutline;
|
|
81
|
+
} | {
|
|
82
|
+
kind: FieldModelDefinitionKindType;
|
|
83
|
+
class: TextAreaFieldModelDefinitionOutline;
|
|
84
|
+
} | {
|
|
85
|
+
kind: FormComponentDefinitionKindType;
|
|
86
|
+
class: TextAreaFormComponentDefinitionOutline;
|
|
87
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TextAreaModelName = exports.TextAreaComponentName = void 0;
|
|
4
|
+
/* Text Area Component */
|
|
5
|
+
exports.TextAreaComponentName = "TextAreaComponent";
|
|
6
|
+
/* Text Area Model */
|
|
7
|
+
exports.TextAreaModelName = "TextAreaModel";
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hcmVhLm91dGxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2NvbXBvbmVudC90ZXh0LWFyZWEub3V0bGluZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFzQkEseUJBQXlCO0FBRVosUUFBQSxxQkFBcUIsR0FBRyxtQkFBNEIsQ0FBQztBQTJCbEUscUJBQXFCO0FBRVIsUUFBQSxpQkFBaUIsR0FBRyxlQUF3QixDQUFDIn0=
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { FieldModelConfig, FieldModelDefinition } from "../field-model.model";
|
|
2
|
+
import { FormComponentDefinition } from "../form-component.model";
|
|
3
|
+
import { FormConfigVisitorOutline } from "../visitor/base.outline";
|
|
4
|
+
import { FieldComponentConfig, FieldComponentDefinition } from "../field-component.model";
|
|
5
|
+
import { AvailableFieldLayoutDefinitionOutlines } from "../dictionary.outline";
|
|
6
|
+
import type { HistoricalVocabMode } from "./dropdown-input.outline";
|
|
7
|
+
import { TypeaheadInputFieldComponentConfigOutline, TypeaheadInputFieldComponentDefinitionOutline, TypeaheadInputFieldModelConfigOutline, TypeaheadInputFieldModelDefinitionOutline, TypeaheadInputFormComponentDefinitionOutline, TypeaheadInputPermissiveFieldComponentConfigOutline, TypeaheadInputModelValueType, TypeaheadOption, TypeaheadSourceType, TypeaheadValueMode } from "./typeahead-input.outline";
|
|
8
|
+
export declare class TypeaheadInputFieldComponentConfig extends FieldComponentConfig implements TypeaheadInputPermissiveFieldComponentConfigOutline {
|
|
9
|
+
sourceType: TypeaheadSourceType;
|
|
10
|
+
staticOptions: TypeaheadOption[];
|
|
11
|
+
vocabRef?: string;
|
|
12
|
+
queryId?: string;
|
|
13
|
+
serviceId?: string;
|
|
14
|
+
provider?: string;
|
|
15
|
+
resultArrayProperty?: string;
|
|
16
|
+
labelField?: string;
|
|
17
|
+
labelTemplate?: string;
|
|
18
|
+
valueField?: string;
|
|
19
|
+
minChars: number;
|
|
20
|
+
debounceMs: number;
|
|
21
|
+
maxResults: number;
|
|
22
|
+
requireSelection: boolean;
|
|
23
|
+
valueMode: TypeaheadValueMode;
|
|
24
|
+
optionObjectFields?: Record<string, string>;
|
|
25
|
+
cacheResults: boolean;
|
|
26
|
+
multiSelect: boolean;
|
|
27
|
+
placeholder?: string;
|
|
28
|
+
noResultsMessageKey: "@typeahead-no-matches-found";
|
|
29
|
+
readOnlyAfterSelect?: boolean;
|
|
30
|
+
historicalVocabMode?: HistoricalVocabMode;
|
|
31
|
+
constructor();
|
|
32
|
+
}
|
|
33
|
+
export declare class TypeaheadInputFieldComponentDefinition extends FieldComponentDefinition implements TypeaheadInputFieldComponentDefinitionOutline {
|
|
34
|
+
class: "TypeaheadInputComponent";
|
|
35
|
+
config?: TypeaheadInputFieldComponentConfigOutline;
|
|
36
|
+
constructor();
|
|
37
|
+
accept(visitor: FormConfigVisitorOutline): Promise<void>;
|
|
38
|
+
}
|
|
39
|
+
export declare class TypeaheadInputFieldModelConfig extends FieldModelConfig<TypeaheadInputModelValueType> implements TypeaheadInputFieldModelConfigOutline {
|
|
40
|
+
constructor();
|
|
41
|
+
}
|
|
42
|
+
export declare class TypeaheadInputFieldModelDefinition extends FieldModelDefinition<TypeaheadInputModelValueType> implements TypeaheadInputFieldModelDefinitionOutline {
|
|
43
|
+
class: "TypeaheadInputModel";
|
|
44
|
+
config?: TypeaheadInputFieldModelConfigOutline;
|
|
45
|
+
constructor();
|
|
46
|
+
accept(visitor: FormConfigVisitorOutline): Promise<void>;
|
|
47
|
+
}
|
|
48
|
+
export declare class TypeaheadInputFormComponentDefinition extends FormComponentDefinition implements TypeaheadInputFormComponentDefinitionOutline {
|
|
49
|
+
component: TypeaheadInputFieldComponentDefinitionOutline;
|
|
50
|
+
model?: TypeaheadInputFieldModelDefinitionOutline;
|
|
51
|
+
layout?: AvailableFieldLayoutDefinitionOutlines;
|
|
52
|
+
constructor();
|
|
53
|
+
accept(visitor: FormConfigVisitorOutline): Promise<void>;
|
|
54
|
+
}
|
|
55
|
+
export declare const TypeaheadInputMap: ({
|
|
56
|
+
kind: "FieldComponentConfigKind";
|
|
57
|
+
def: typeof TypeaheadInputFieldComponentConfig;
|
|
58
|
+
class?: undefined;
|
|
59
|
+
} | {
|
|
60
|
+
kind: "FieldComponentDefinitionKind";
|
|
61
|
+
def: typeof TypeaheadInputFieldComponentDefinition;
|
|
62
|
+
class: "TypeaheadInputComponent";
|
|
63
|
+
} | {
|
|
64
|
+
kind: "FieldModelConfigKind";
|
|
65
|
+
def: typeof TypeaheadInputFieldModelConfig;
|
|
66
|
+
class?: undefined;
|
|
67
|
+
} | {
|
|
68
|
+
kind: "FieldModelDefinitionKind";
|
|
69
|
+
def: typeof TypeaheadInputFieldModelDefinition;
|
|
70
|
+
class: "TypeaheadInputModel";
|
|
71
|
+
} | {
|
|
72
|
+
kind: "FormComponentDefinitionKind";
|
|
73
|
+
def: typeof TypeaheadInputFormComponentDefinition;
|
|
74
|
+
class: "TypeaheadInputComponent";
|
|
75
|
+
})[];
|
|
76
|
+
export declare const TypeaheadInputDefaults: {
|
|
77
|
+
FormComponentDefinitionKind: {
|
|
78
|
+
TypeaheadInputComponent: {
|
|
79
|
+
FieldComponentDefinitionKind: "TypeaheadInputComponent";
|
|
80
|
+
FieldModelDefinitionKind: "TypeaheadInputModel";
|
|
81
|
+
};
|
|
82
|
+
};
|
|
83
|
+
};
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TypeaheadInputDefaults = exports.TypeaheadInputMap = exports.TypeaheadInputFormComponentDefinition = exports.TypeaheadInputFieldModelDefinition = exports.TypeaheadInputFieldModelConfig = exports.TypeaheadInputFieldComponentDefinition = exports.TypeaheadInputFieldComponentConfig = void 0;
|
|
4
|
+
const field_model_model_1 = require("../field-model.model");
|
|
5
|
+
const form_component_model_1 = require("../form-component.model");
|
|
6
|
+
const shared_outline_1 = require("../shared.outline");
|
|
7
|
+
const field_component_model_1 = require("../field-component.model");
|
|
8
|
+
const typeahead_input_outline_1 = require("./typeahead-input.outline");
|
|
9
|
+
/* Typeahead Input Component */
|
|
10
|
+
class TypeaheadInputFieldComponentConfig extends field_component_model_1.FieldComponentConfig {
|
|
11
|
+
sourceType = "static";
|
|
12
|
+
staticOptions = [];
|
|
13
|
+
vocabRef;
|
|
14
|
+
queryId;
|
|
15
|
+
serviceId;
|
|
16
|
+
provider;
|
|
17
|
+
resultArrayProperty;
|
|
18
|
+
labelField;
|
|
19
|
+
labelTemplate;
|
|
20
|
+
valueField;
|
|
21
|
+
minChars = 2;
|
|
22
|
+
debounceMs = 250;
|
|
23
|
+
maxResults = 25;
|
|
24
|
+
requireSelection = false;
|
|
25
|
+
valueMode = "value";
|
|
26
|
+
// Optional projection used by optionObject mode when forms need a custom
|
|
27
|
+
// stored object instead of label/value/sourceType.
|
|
28
|
+
optionObjectFields;
|
|
29
|
+
cacheResults = true;
|
|
30
|
+
multiSelect = false;
|
|
31
|
+
placeholder;
|
|
32
|
+
noResultsMessageKey = typeahead_input_outline_1.TypeaheadInputDefaultNoResultsMessageKey;
|
|
33
|
+
readOnlyAfterSelect;
|
|
34
|
+
historicalVocabMode;
|
|
35
|
+
constructor() {
|
|
36
|
+
super();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.TypeaheadInputFieldComponentConfig = TypeaheadInputFieldComponentConfig;
|
|
40
|
+
class TypeaheadInputFieldComponentDefinition extends field_component_model_1.FieldComponentDefinition {
|
|
41
|
+
class = typeahead_input_outline_1.TypeaheadInputComponentName;
|
|
42
|
+
config;
|
|
43
|
+
constructor() {
|
|
44
|
+
super();
|
|
45
|
+
}
|
|
46
|
+
async accept(visitor) {
|
|
47
|
+
await visitor.visitTypeaheadInputFieldComponentDefinition(this);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.TypeaheadInputFieldComponentDefinition = TypeaheadInputFieldComponentDefinition;
|
|
51
|
+
/* Typeahead Input Model */
|
|
52
|
+
class TypeaheadInputFieldModelConfig extends field_model_model_1.FieldModelConfig {
|
|
53
|
+
constructor() {
|
|
54
|
+
super();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.TypeaheadInputFieldModelConfig = TypeaheadInputFieldModelConfig;
|
|
58
|
+
class TypeaheadInputFieldModelDefinition extends field_model_model_1.FieldModelDefinition {
|
|
59
|
+
class = typeahead_input_outline_1.TypeaheadInputModelName;
|
|
60
|
+
config;
|
|
61
|
+
constructor() {
|
|
62
|
+
super();
|
|
63
|
+
}
|
|
64
|
+
async accept(visitor) {
|
|
65
|
+
await visitor.visitTypeaheadInputFieldModelDefinition(this);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
exports.TypeaheadInputFieldModelDefinition = TypeaheadInputFieldModelDefinition;
|
|
69
|
+
/* Typeahead Input Form Component */
|
|
70
|
+
class TypeaheadInputFormComponentDefinition extends form_component_model_1.FormComponentDefinition {
|
|
71
|
+
component;
|
|
72
|
+
model;
|
|
73
|
+
layout;
|
|
74
|
+
constructor() {
|
|
75
|
+
super();
|
|
76
|
+
}
|
|
77
|
+
async accept(visitor) {
|
|
78
|
+
await visitor.visitTypeaheadInputFormComponentDefinition(this);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
exports.TypeaheadInputFormComponentDefinition = TypeaheadInputFormComponentDefinition;
|
|
82
|
+
exports.TypeaheadInputMap = [
|
|
83
|
+
{ kind: shared_outline_1.FieldComponentConfigKind, def: TypeaheadInputFieldComponentConfig },
|
|
84
|
+
{ kind: shared_outline_1.FieldComponentDefinitionKind, def: TypeaheadInputFieldComponentDefinition, class: typeahead_input_outline_1.TypeaheadInputComponentName },
|
|
85
|
+
{ kind: shared_outline_1.FieldModelConfigKind, def: TypeaheadInputFieldModelConfig },
|
|
86
|
+
{ kind: shared_outline_1.FieldModelDefinitionKind, def: TypeaheadInputFieldModelDefinition, class: typeahead_input_outline_1.TypeaheadInputModelName },
|
|
87
|
+
{ kind: shared_outline_1.FormComponentDefinitionKind, def: TypeaheadInputFormComponentDefinition, class: typeahead_input_outline_1.TypeaheadInputComponentName },
|
|
88
|
+
];
|
|
89
|
+
exports.TypeaheadInputDefaults = {
|
|
90
|
+
[shared_outline_1.FormComponentDefinitionKind]: {
|
|
91
|
+
[typeahead_input_outline_1.TypeaheadInputComponentName]: {
|
|
92
|
+
[shared_outline_1.FieldComponentDefinitionKind]: typeahead_input_outline_1.TypeaheadInputComponentName,
|
|
93
|
+
[shared_outline_1.FieldModelDefinitionKind]: typeahead_input_outline_1.TypeaheadInputModelName,
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
};
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWFoZWFkLWlucHV0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbmZpZy9jb21wb25lbnQvdHlwZWFoZWFkLWlucHV0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDREQUE4RTtBQUM5RSxrRUFBa0U7QUFFbEUsc0RBTTJCO0FBQzNCLG9FQUEwRjtBQUcxRix1RUFjbUM7QUFFbkMsK0JBQStCO0FBRS9CLE1BQWEsa0NBQW1DLFNBQVEsNENBQW9CO0lBQ3hFLFVBQVUsR0FBd0IsUUFBUSxDQUFDO0lBQzNDLGFBQWEsR0FBc0IsRUFBRSxDQUFDO0lBQ3RDLFFBQVEsQ0FBVTtJQUNsQixPQUFPLENBQVU7SUFDakIsU0FBUyxDQUFVO0lBQ25CLFFBQVEsQ0FBVTtJQUNsQixtQkFBbUIsQ0FBVTtJQUM3QixVQUFVLENBQVU7SUFDcEIsYUFBYSxDQUFVO0lBQ3ZCLFVBQVUsQ0FBVTtJQUNwQixRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ2IsVUFBVSxHQUFHLEdBQUcsQ0FBQztJQUNqQixVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ2hCLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUN6QixTQUFTLEdBQXVCLE9BQU8sQ0FBQztJQUN4Qyx5RUFBeUU7SUFDekUsbURBQW1EO0lBQ25ELGtCQUFrQixDQUEwQjtJQUM1QyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDcEIsV0FBVyxDQUFVO0lBQ3JCLG1CQUFtQixHQUFHLGtFQUF3QyxDQUFDO0lBQy9ELG1CQUFtQixDQUFXO0lBQzlCLG1CQUFtQixDQUF1QjtJQUUxQztRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztDQUNKO0FBN0JELGdGQTZCQztBQUVELE1BQWEsc0NBQXVDLFNBQVEsZ0RBQXdCO0lBQ2hGLEtBQUssR0FBRyxxREFBMkIsQ0FBQztJQUNwQyxNQUFNLENBQTZDO0lBRW5EO1FBQ0ksS0FBSyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFpQztRQUMxQyxNQUFNLE9BQU8sQ0FBQywyQ0FBMkMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwRSxDQUFDO0NBQ0o7QUFYRCx3RkFXQztBQUVELDJCQUEyQjtBQUUzQixNQUFhLDhCQUErQixTQUFRLG9DQUE4QztJQUM5RjtRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztDQUNKO0FBSkQsd0VBSUM7QUFFRCxNQUFhLGtDQUFtQyxTQUFRLHdDQUFrRDtJQUN0RyxLQUFLLEdBQUcsaURBQXVCLENBQUM7SUFDaEMsTUFBTSxDQUF5QztJQUUvQztRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBaUM7UUFDMUMsTUFBTSxPQUFPLENBQUMsdUNBQXVDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEUsQ0FBQztDQUNKO0FBWEQsZ0ZBV0M7QUFFRCxvQ0FBb0M7QUFFcEMsTUFBYSxxQ0FBc0MsU0FBUSw4Q0FBdUI7SUFDdkUsU0FBUyxDQUFpRDtJQUMxRCxLQUFLLENBQTZDO0lBQ2xELE1BQU0sQ0FBMEM7SUFFdkQ7UUFDSSxLQUFLLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQWlDO1FBQzFDLE1BQU0sT0FBTyxDQUFDLDBDQUEwQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25FLENBQUM7Q0FDSjtBQVpELHNGQVlDO0FBRVksUUFBQSxpQkFBaUIsR0FBRztJQUM3QixFQUFFLElBQUksRUFBRSx5Q0FBd0IsRUFBRSxHQUFHLEVBQUUsa0NBQWtDLEVBQUU7SUFDM0UsRUFBRSxJQUFJLEVBQUUsNkNBQTRCLEVBQUUsR0FBRyxFQUFFLHNDQUFzQyxFQUFFLEtBQUssRUFBRSxxREFBMkIsRUFBRTtJQUN2SCxFQUFFLElBQUksRUFBRSxxQ0FBb0IsRUFBRSxHQUFHLEVBQUUsOEJBQThCLEVBQUU7SUFDbkUsRUFBRSxJQUFJLEVBQUUseUNBQXdCLEVBQUUsR0FBRyxFQUFFLGtDQUFrQyxFQUFFLEtBQUssRUFBRSxpREFBdUIsRUFBRTtJQUMzRyxFQUFFLElBQUksRUFBRSw0Q0FBMkIsRUFBRSxHQUFHLEVBQUUscUNBQXFDLEVBQUUsS0FBSyxFQUFFLHFEQUEyQixFQUFFO0NBQ3hILENBQUM7QUFFVyxRQUFBLHNCQUFzQixHQUFHO0lBQ2xDLENBQUMsNENBQTJCLENBQUMsRUFBRTtRQUMzQixDQUFDLHFEQUEyQixDQUFDLEVBQUU7WUFDM0IsQ0FBQyw2Q0FBNEIsQ0FBQyxFQUFFLHFEQUEyQjtZQUMzRCxDQUFDLHlDQUF3QixDQUFDLEVBQUUsaURBQXVCO1NBQ3REO0tBQ0o7Q0FDSixDQUFDIn0=
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { FieldComponentConfigFrameKindType, FieldComponentConfigKindType, FieldComponentDefinitionFrameKindType, FieldComponentDefinitionKindType, FieldModelConfigFrameKindType, FieldModelConfigKindType, FieldModelDefinitionFrameKindType, FieldModelDefinitionKindType, FormComponentDefinitionFrameKindType, FormComponentDefinitionKindType } from "../shared.outline";
|
|
2
|
+
import { FieldComponentConfigFrame, FieldComponentConfigOutline, FieldComponentDefinitionFrame, FieldComponentDefinitionOutline } from "../field-component.outline";
|
|
3
|
+
import { FieldModelConfigFrame, FieldModelConfigOutline, FieldModelDefinitionFrame, FieldModelDefinitionOutline } from "../field-model.outline";
|
|
4
|
+
import { FormComponentDefinitionFrame, FormComponentDefinitionOutline } from "../form-component.outline";
|
|
5
|
+
import { AvailableFieldLayoutDefinitionFrames, AvailableFieldLayoutDefinitionOutlines } from "../dictionary.outline";
|
|
6
|
+
import type { HistoricalVocabMode } from "./dropdown-input.outline";
|
|
7
|
+
export declare const TypeaheadInputComponentName: "TypeaheadInputComponent";
|
|
8
|
+
export type TypeaheadInputComponentNameType = typeof TypeaheadInputComponentName;
|
|
9
|
+
export declare const TypeaheadInputDefaultNoResultsMessageKey: "@typeahead-no-matches-found";
|
|
10
|
+
export declare const TypeaheadSourceTypes: readonly ["static", "vocabulary", "namedQuery", "external", "service"];
|
|
11
|
+
export type TypeaheadSourceType = typeof TypeaheadSourceTypes[number];
|
|
12
|
+
export type TypeaheadValueMode = "value" | "optionObject";
|
|
13
|
+
export type TypeaheadStoredSourceType = TypeaheadSourceType | "freeText";
|
|
14
|
+
/**
|
|
15
|
+
* Maps stored object property names to paths on the selected option/raw result.
|
|
16
|
+
* Use this only with valueMode: "optionObject" when a form needs a domain-specific
|
|
17
|
+
* stored object, for example { dc_title: "dc_title", grant_number: "grant_number" }.
|
|
18
|
+
* When omitted, optionObject mode keeps the legacy label/value/sourceType shape.
|
|
19
|
+
*/
|
|
20
|
+
export type TypeaheadOptionObjectFields = Record<string, string>;
|
|
21
|
+
export interface TypeaheadOption {
|
|
22
|
+
label: string;
|
|
23
|
+
value: string;
|
|
24
|
+
sourceType?: TypeaheadStoredSourceType;
|
|
25
|
+
/**
|
|
26
|
+
* Indicates the option came from a historical/deprecated vocabulary entry.
|
|
27
|
+
* This source metadata is preserved even when the option remains selectable.
|
|
28
|
+
*/
|
|
29
|
+
historical?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Indicates the option should be shown but cannot be selected in the current UI state.
|
|
32
|
+
* Historical vocabulary values are disabled in `historicalVocabMode: 'disable'`, but
|
|
33
|
+
* non-historical options may also be disabled for unrelated reasons.
|
|
34
|
+
*/
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
raw?: unknown;
|
|
37
|
+
}
|
|
38
|
+
export interface TypeaheadInputFieldComponentConfigCommonFrame extends FieldComponentConfigFrame {
|
|
39
|
+
/**
|
|
40
|
+
* Static options are required for sourceType: "static"; remote configs may
|
|
41
|
+
* still carry an empty array from older defaults, so this remains common.
|
|
42
|
+
*/
|
|
43
|
+
staticOptions?: TypeaheadOption[];
|
|
44
|
+
labelField?: string;
|
|
45
|
+
labelTemplate?: string;
|
|
46
|
+
valueField?: string;
|
|
47
|
+
minChars?: number;
|
|
48
|
+
debounceMs?: number;
|
|
49
|
+
maxResults?: number;
|
|
50
|
+
requireSelection?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* "value" stores the selected option value as a string.
|
|
53
|
+
* "optionObject" stores an object. Without optionObjectFields that object is
|
|
54
|
+
* { label, value, sourceType }; with optionObjectFields it uses the configured
|
|
55
|
+
* persisted property names and source paths.
|
|
56
|
+
*/
|
|
57
|
+
valueMode?: TypeaheadValueMode;
|
|
58
|
+
optionObjectFields?: TypeaheadOptionObjectFields;
|
|
59
|
+
cacheResults?: boolean;
|
|
60
|
+
multiSelect?: boolean;
|
|
61
|
+
placeholder?: string;
|
|
62
|
+
/**
|
|
63
|
+
* Translation key rendered when a completed lookup returns no options.
|
|
64
|
+
* Omit it to use TypeaheadInputDefaultNoResultsMessageKey.
|
|
65
|
+
*/
|
|
66
|
+
noResultsMessageKey?: string;
|
|
67
|
+
readOnlyAfterSelect?: boolean;
|
|
68
|
+
historicalVocabMode?: HistoricalVocabMode;
|
|
69
|
+
}
|
|
70
|
+
export interface TypeaheadStaticSourceConfigFrame extends TypeaheadInputFieldComponentConfigCommonFrame {
|
|
71
|
+
sourceType?: "static";
|
|
72
|
+
}
|
|
73
|
+
export interface TypeaheadVocabularySourceConfigFrame extends TypeaheadInputFieldComponentConfigCommonFrame {
|
|
74
|
+
sourceType: "vocabulary";
|
|
75
|
+
vocabRef?: string;
|
|
76
|
+
}
|
|
77
|
+
export interface TypeaheadNamedQuerySourceConfigFrame extends TypeaheadInputFieldComponentConfigCommonFrame {
|
|
78
|
+
sourceType: "namedQuery";
|
|
79
|
+
queryId?: string;
|
|
80
|
+
/**
|
|
81
|
+
* Some existing hooks use vocabRef as the domain identifier for namedQuery
|
|
82
|
+
* typeaheads, for example ROR-backed lookups. Runtime validation still keys
|
|
83
|
+
* namedQuery sources from queryId, but the frame accepts vocabRef so those
|
|
84
|
+
* configs remain type-safe and can be migrated without blocking compilation.
|
|
85
|
+
*/
|
|
86
|
+
vocabRef?: string;
|
|
87
|
+
}
|
|
88
|
+
export interface TypeaheadExternalSourceConfigFrame extends TypeaheadInputFieldComponentConfigCommonFrame {
|
|
89
|
+
sourceType: "external";
|
|
90
|
+
provider?: string;
|
|
91
|
+
resultArrayProperty?: string;
|
|
92
|
+
}
|
|
93
|
+
export interface TypeaheadServiceSourceConfigFrame extends TypeaheadInputFieldComponentConfigCommonFrame {
|
|
94
|
+
sourceType: "service";
|
|
95
|
+
serviceId?: string;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Source-specific config shape for TypeScript-authored forms. The source-specific
|
|
99
|
+
* IDs remain optional so runtime validator tests can still exercise missing config.
|
|
100
|
+
*/
|
|
101
|
+
export type TypeaheadInputSourceConfigFrame = TypeaheadStaticSourceConfigFrame | TypeaheadVocabularySourceConfigFrame | TypeaheadNamedQuerySourceConfigFrame | TypeaheadExternalSourceConfigFrame | TypeaheadServiceSourceConfigFrame;
|
|
102
|
+
/**
|
|
103
|
+
* The public config frame uses sourceType as a discriminant while keeping required
|
|
104
|
+
* source values runtime-validated for JSON, migrated, and intentionally invalid forms.
|
|
105
|
+
*/
|
|
106
|
+
export type TypeaheadInputFieldComponentConfigFrame = TypeaheadInputSourceConfigFrame;
|
|
107
|
+
export type TypeaheadInputFieldComponentConfigOutline = TypeaheadInputFieldComponentConfigFrame & FieldComponentConfigOutline;
|
|
108
|
+
/**
|
|
109
|
+
* Runtime defaults stay permissive because the constructed config class has to
|
|
110
|
+
* carry every possible source property before a concrete sourceType is known.
|
|
111
|
+
*/
|
|
112
|
+
export interface TypeaheadInputPermissiveFieldComponentConfigOutline extends TypeaheadInputFieldComponentConfigCommonFrame, FieldComponentConfigOutline {
|
|
113
|
+
sourceType?: TypeaheadSourceType;
|
|
114
|
+
vocabRef?: string;
|
|
115
|
+
queryId?: string;
|
|
116
|
+
serviceId?: string;
|
|
117
|
+
provider?: string;
|
|
118
|
+
resultArrayProperty?: string;
|
|
119
|
+
}
|
|
120
|
+
export interface TypeaheadInputFieldComponentDefinitionFrame extends FieldComponentDefinitionFrame {
|
|
121
|
+
class: TypeaheadInputComponentNameType;
|
|
122
|
+
config?: TypeaheadInputFieldComponentConfigFrame;
|
|
123
|
+
}
|
|
124
|
+
export interface TypeaheadInputFieldComponentDefinitionOutline extends TypeaheadInputFieldComponentDefinitionFrame, FieldComponentDefinitionOutline {
|
|
125
|
+
class: TypeaheadInputComponentNameType;
|
|
126
|
+
config?: TypeaheadInputFieldComponentConfigOutline;
|
|
127
|
+
}
|
|
128
|
+
export declare const TypeaheadInputModelName: "TypeaheadInputModel";
|
|
129
|
+
export type TypeaheadInputModelNameType = typeof TypeaheadInputModelName;
|
|
130
|
+
export interface TypeaheadInputModelOptionValue {
|
|
131
|
+
label?: string;
|
|
132
|
+
value?: string;
|
|
133
|
+
sourceType?: TypeaheadStoredSourceType;
|
|
134
|
+
/**
|
|
135
|
+
* Allows configured object-mode fields such as dc_title/grant_number while
|
|
136
|
+
* keeping backwards compatibility with legacy label/value/sourceType objects.
|
|
137
|
+
*/
|
|
138
|
+
[key: string]: unknown;
|
|
139
|
+
}
|
|
140
|
+
export type TypeaheadInputModelValueType = string | TypeaheadInputModelOptionValue | null;
|
|
141
|
+
export interface TypeaheadInputFieldModelConfigFrame extends FieldModelConfigFrame<TypeaheadInputModelValueType> {
|
|
142
|
+
}
|
|
143
|
+
export interface TypeaheadInputFieldModelConfigOutline extends TypeaheadInputFieldModelConfigFrame, FieldModelConfigOutline<TypeaheadInputModelValueType> {
|
|
144
|
+
}
|
|
145
|
+
export interface TypeaheadInputFieldModelDefinitionFrame extends FieldModelDefinitionFrame<TypeaheadInputModelValueType> {
|
|
146
|
+
class: TypeaheadInputModelNameType;
|
|
147
|
+
config?: TypeaheadInputFieldModelConfigFrame;
|
|
148
|
+
}
|
|
149
|
+
export interface TypeaheadInputFieldModelDefinitionOutline extends TypeaheadInputFieldModelDefinitionFrame, FieldModelDefinitionOutline<TypeaheadInputModelValueType> {
|
|
150
|
+
class: TypeaheadInputModelNameType;
|
|
151
|
+
config?: TypeaheadInputFieldModelConfigOutline;
|
|
152
|
+
}
|
|
153
|
+
export interface TypeaheadInputFormComponentDefinitionFrame extends FormComponentDefinitionFrame {
|
|
154
|
+
component: TypeaheadInputFieldComponentDefinitionFrame;
|
|
155
|
+
model?: TypeaheadInputFieldModelDefinitionFrame;
|
|
156
|
+
layout?: AvailableFieldLayoutDefinitionFrames;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Configures searchable typeahead selection from local or remote choices.
|
|
160
|
+
*
|
|
161
|
+
* @extensionPoint Use `TypeaheadInputComponent` with `TypeaheadInputModel` and the supported lookup configuration.
|
|
162
|
+
* @see https://github.com/redbox-mint/redbox-portal/wiki/Configuring-Record-Forms
|
|
163
|
+
*/
|
|
164
|
+
export interface TypeaheadInputFormComponentDefinitionOutline extends TypeaheadInputFormComponentDefinitionFrame, FormComponentDefinitionOutline {
|
|
165
|
+
component: TypeaheadInputFieldComponentDefinitionOutline;
|
|
166
|
+
model?: TypeaheadInputFieldModelDefinitionOutline;
|
|
167
|
+
layout?: AvailableFieldLayoutDefinitionOutlines;
|
|
168
|
+
}
|
|
169
|
+
export type TypeaheadInputTypes = {
|
|
170
|
+
kind: FieldComponentConfigFrameKindType;
|
|
171
|
+
class: TypeaheadInputFieldComponentConfigFrame;
|
|
172
|
+
} | {
|
|
173
|
+
kind: FieldComponentDefinitionFrameKindType;
|
|
174
|
+
class: TypeaheadInputFieldComponentDefinitionFrame;
|
|
175
|
+
} | {
|
|
176
|
+
kind: FieldModelConfigFrameKindType;
|
|
177
|
+
class: TypeaheadInputFieldModelConfigFrame;
|
|
178
|
+
} | {
|
|
179
|
+
kind: FieldModelDefinitionFrameKindType;
|
|
180
|
+
class: TypeaheadInputFieldModelDefinitionFrame;
|
|
181
|
+
} | {
|
|
182
|
+
kind: FormComponentDefinitionFrameKindType;
|
|
183
|
+
class: TypeaheadInputFormComponentDefinitionFrame;
|
|
184
|
+
} | {
|
|
185
|
+
kind: FieldComponentConfigKindType;
|
|
186
|
+
class: TypeaheadInputFieldComponentConfigOutline;
|
|
187
|
+
} | {
|
|
188
|
+
kind: FieldComponentDefinitionKindType;
|
|
189
|
+
class: TypeaheadInputFieldComponentDefinitionOutline;
|
|
190
|
+
} | {
|
|
191
|
+
kind: FieldModelConfigKindType;
|
|
192
|
+
class: TypeaheadInputFieldModelConfigOutline;
|
|
193
|
+
} | {
|
|
194
|
+
kind: FieldModelDefinitionKindType;
|
|
195
|
+
class: TypeaheadInputFieldModelDefinitionOutline;
|
|
196
|
+
} | {
|
|
197
|
+
kind: FormComponentDefinitionKindType;
|
|
198
|
+
class: TypeaheadInputFormComponentDefinitionOutline;
|
|
199
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TypeaheadInputModelName = exports.TypeaheadSourceTypes = exports.TypeaheadInputDefaultNoResultsMessageKey = exports.TypeaheadInputComponentName = void 0;
|
|
4
|
+
/* Typeahead Input Component */
|
|
5
|
+
exports.TypeaheadInputComponentName = "TypeaheadInputComponent";
|
|
6
|
+
exports.TypeaheadInputDefaultNoResultsMessageKey = "@typeahead-no-matches-found";
|
|
7
|
+
exports.TypeaheadSourceTypes = ["static", "vocabulary", "namedQuery", "external", "service"];
|
|
8
|
+
/* Typeahead Input Model */
|
|
9
|
+
exports.TypeaheadInputModelName = "TypeaheadInputModel";
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWFoZWFkLWlucHV0Lm91dGxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29uZmlnL2NvbXBvbmVudC90eXBlYWhlYWQtaW5wdXQub3V0bGluZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUE0QkEsK0JBQStCO0FBQ2xCLFFBQUEsMkJBQTJCLEdBQUcseUJBQWtDLENBQUM7QUFFakUsUUFBQSx3Q0FBd0MsR0FBRyw2QkFBc0MsQ0FBQztBQUVsRixRQUFBLG9CQUFvQixHQUFHLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBVSxDQUFDO0FBMEkzRywyQkFBMkI7QUFDZCxRQUFBLHVCQUF1QixHQUFHLHFCQUE4QixDQUFDIn0=
|