ngx-t-forms-types 0.0.26 → 0.0.28

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.
@@ -32,6 +32,7 @@ export const DefaultInputConfig = {
32
32
  AllFormInputPrimaryKeys.Validators,
33
33
  AllFormInputPrimaryKeys.HintLabel,
34
34
  AllFormInputPrimaryKeys.MatOptions,
35
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
35
36
  ],
36
37
  elementTemplate: {
37
38
  element: ElementTypes.Input,
@@ -60,6 +61,7 @@ export const DefaultInputConfig = {
60
61
  AllFormInputPrimaryKeys.Appearance,
61
62
  AllFormInputPrimaryKeys.FormControlName,
62
63
  AllFormInputPrimaryKeys.Validators, // Assuming Validators is also needed here
64
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
63
65
  ],
64
66
  elementTemplate: {
65
67
  element: ElementTypes.Location,
@@ -94,6 +96,7 @@ export const DefaultInputConfig = {
94
96
  AllFormInputPrimaryKeys.Type,
95
97
  AllFormInputPrimaryKeys.Value,
96
98
  AllFormInputPrimaryKeys.MatOptions,
99
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
97
100
  ],
98
101
  elementTemplate: {
99
102
  element: ElementTypes.AutoCompleteInput,
@@ -130,6 +133,7 @@ export const DefaultInputConfig = {
130
133
  AllFormInputPrimaryKeys.HintLabel,
131
134
  AllFormInputPrimaryKeys.TrueLabel,
132
135
  AllFormInputPrimaryKeys.FalseLabel,
136
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
133
137
  ],
134
138
  elementTemplate: {
135
139
  element: ElementTypes.Toggle,
@@ -176,6 +180,7 @@ export const DefaultInputConfig = {
176
180
  SpecialElementKeys.MatOptionsApiCall,
177
181
  AllFormInputPrimaryKeys.OptionSelectType,
178
182
  AllFormInputPrimaryKeys.AllowMultipleSelection,
183
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
179
184
  ],
180
185
  elementTemplate: {
181
186
  element: ElementTypes.Select,
@@ -219,7 +224,8 @@ export const DefaultInputConfig = {
219
224
  AllFormInputPrimaryKeys.DataType,
220
225
  SpecialElementKeys.MatOptionsApiCall,
221
226
  AllFormInputPrimaryKeys.AllowMultipleSelection,
222
- AllFormInputPrimaryKeys.PaginationSelectionConfig
227
+ AllFormInputPrimaryKeys.PaginationSelectionConfig,
228
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
223
229
  ],
224
230
  elementTemplate: {
225
231
  element: ElementTypes.PaginatedSelectionTable,
@@ -253,6 +259,7 @@ export const DefaultInputConfig = {
253
259
  AllFormInputPrimaryKeys.ColSize,
254
260
  AllFormInputPrimaryKeys.Value,
255
261
  AllFormInputPrimaryKeys.HintLabel,
262
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
256
263
  ],
257
264
  elementTemplate: {
258
265
  element: ElementTypes.IconSelect,
@@ -296,6 +303,7 @@ export const DefaultInputConfig = {
296
303
  FormInputKeys.Autocomplete,
297
304
  FormInputKeys.Placeholder,
298
305
  AllFormInputPrimaryKeys.Wrap,
306
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
299
307
  ],
300
308
  elementTemplate: {
301
309
  element: ElementTypes.Textarea,
@@ -341,6 +349,7 @@ export const DefaultInputConfig = {
341
349
  FormInputKeys.PrefixIcon,
342
350
  FormInputKeys.PrefixText,
343
351
  FormInputKeys.SuffixText,
352
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
344
353
  ],
345
354
  elementTemplate: {
346
355
  element: ElementTypes.DatePicker,
@@ -384,6 +393,7 @@ export const DefaultInputConfig = {
384
393
  FormInputKeys.PrefixIcon,
385
394
  FormInputKeys.PrefixText,
386
395
  FormInputKeys.SuffixText,
396
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
387
397
  ],
388
398
  elementTemplate: {
389
399
  element: ElementTypes.DateRangePicker,
@@ -425,6 +435,7 @@ export const DefaultInputConfig = {
425
435
  AllFormInputPrimaryKeys.Value,
426
436
  AllFormInputPrimaryKeys.FileType,
427
437
  FormInputKeys.Accept,
438
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
428
439
  ],
429
440
  elementTemplate: {
430
441
  element: ElementTypes.FileUpload,
@@ -459,6 +470,7 @@ export const DefaultInputConfig = {
459
470
  AllFormInputPrimaryKeys.Validators,
460
471
  AllFormInputPrimaryKeys.Required,
461
472
  AllFormInputPrimaryKeys.Value,
473
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
462
474
  ],
463
475
  elementTemplate: {
464
476
  element: ElementTypes.Signature,
@@ -548,6 +560,7 @@ export const DefaultInputConfig = {
548
560
  AllFormInputPrimaryKeys.Validators,
549
561
  AllFormInputPrimaryKeys.Required,
550
562
  AllFormInputPrimaryKeys.Value,
563
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
551
564
  ],
552
565
  elementTemplate: {
553
566
  element: ElementTypes.ImageCapture,
@@ -629,6 +642,7 @@ export const DefaultInputConfig = {
629
642
  AllFormInputPrimaryKeys.HintLabel,
630
643
  AllFormInputPrimaryKeys.WorkflowPickerConfig,
631
644
  AllFormInputPrimaryKeys.AllowMultipleSelection,
645
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
632
646
  ],
633
647
  elementTemplate: {
634
648
  element: ElementTypes.WorkflowDocumentPicker,
@@ -663,7 +677,8 @@ export const DefaultInputConfig = {
663
677
  AllFormInputPrimaryKeys.AdjudicationStep,
664
678
  AllFormInputPrimaryKeys.AdjudicationPointTypes,
665
679
  AllFormInputPrimaryKeys.MinLength,
666
- AllFormInputPrimaryKeys.MaxLength
680
+ AllFormInputPrimaryKeys.MaxLength,
681
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
667
682
  ],
668
683
  elementTemplate: {
669
684
  element: ElementTypes.WorkflowAdjudication,
@@ -734,7 +749,8 @@ export const DefaultInputConfig = {
734
749
  AllFormInputPrimaryKeys.MatOptions,
735
750
  AllFormInputPrimaryKeys.FormInputs,
736
751
  AllFormInputPrimaryKeys.HandleLabel,
737
- SpecialElementKeys.MultipleInputAvailableOperations
752
+ SpecialElementKeys.MultipleInputAvailableOperations,
753
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
738
754
  ],
739
755
  elementTemplate: {
740
756
  element: ElementTypes.MultipleInput,
@@ -769,7 +785,8 @@ export const DefaultInputConfig = {
769
785
  AllFormInputPrimaryKeys.Required,
770
786
  AllFormInputPrimaryKeys.Value,
771
787
  AllFormInputPrimaryKeys.HintLabel,
772
- AllFormInputPrimaryKeys.RichTextEditorLibrary
788
+ AllFormInputPrimaryKeys.RichTextEditorLibrary,
789
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
773
790
  ],
774
791
  elementTemplate: {
775
792
  element: ElementTypes.Editor,
@@ -802,7 +819,8 @@ export const DefaultInputConfig = {
802
819
  SpecialElementKeys.ShowAllMcoaSegments,
803
820
  AllFormInputPrimaryKeys.TourContent,
804
821
  AllFormInputPrimaryKeys.MatOptions,
805
- AllFormInputPrimaryKeys.MscoaConfig
822
+ AllFormInputPrimaryKeys.MscoaConfig,
823
+ AllFormInputPrimaryKeys.ConditionalInputConfig,
806
824
  ],
807
825
  elementTemplate: {
808
826
  element: ElementTypes.MscoaSelection,
@@ -38,7 +38,19 @@ export declare enum ElementEditorTypes {
38
38
  MapMatOptionsKeys = "mapMatOptionsKeys",
39
39
  FormPayloadProjection = "formPayloadProjection",
40
40
  /** Opt-in JSON body template ({@link PayloadTemplate}) for a POST value/options fetch. */
41
- PayloadTemplate = "payloadTemplate"
41
+ PayloadTemplate = "payloadTemplate",
42
+ /** JSON request-header template ({@link HeaderTemplate}) for a value/options fetch (GET and POST alike). */
43
+ HeaderTemplate = "headerTemplate",
44
+ /** JSON query-parameter template ({@link QueryTemplate}) for a value/options fetch (GET and POST alike). */
45
+ QueryTemplate = "queryTemplate",
46
+ /**
47
+ * Composite editor owning a whole `matOptions.fetch.<slot>` API config:
48
+ * endpoint selection, query parameters, headers, body mapping/template and
49
+ * response mapping in one place. Replaces the seven per-slice rows in the
50
+ * default config; the individual editTypes above remain renderable for
51
+ * host-supplied custom `editorSections`.
52
+ */
53
+ ApiEndpointConfig = "apiEndpointConfig"
42
54
  }
43
55
  export interface ElementEditorConfigInterface {
44
56
  editorSections: Array<ElementEditorConfigSectionInterface>;
@@ -33,6 +33,18 @@ export var ElementEditorTypes;
33
33
  ElementEditorTypes["FormPayloadProjection"] = "formPayloadProjection";
34
34
  /** Opt-in JSON body template ({@link PayloadTemplate}) for a POST value/options fetch. */
35
35
  ElementEditorTypes["PayloadTemplate"] = "payloadTemplate";
36
+ /** JSON request-header template ({@link HeaderTemplate}) for a value/options fetch (GET and POST alike). */
37
+ ElementEditorTypes["HeaderTemplate"] = "headerTemplate";
38
+ /** JSON query-parameter template ({@link QueryTemplate}) for a value/options fetch (GET and POST alike). */
39
+ ElementEditorTypes["QueryTemplate"] = "queryTemplate";
40
+ /**
41
+ * Composite editor owning a whole `matOptions.fetch.<slot>` API config:
42
+ * endpoint selection, query parameters, headers, body mapping/template and
43
+ * response mapping in one place. Replaces the seven per-slice rows in the
44
+ * default config; the individual editTypes above remain renderable for
45
+ * host-supplied custom `editorSections`.
46
+ */
47
+ ElementEditorTypes["ApiEndpointConfig"] = "apiEndpointConfig";
36
48
  })(ElementEditorTypes || (ElementEditorTypes = {}));
37
49
  // interface TStringExpressionValidationTest{
38
50
  // expression: string;
@@ -818,21 +818,26 @@ export var ElementConfig = {
818
818
  id: "865658d5-6ba4-4402-952f-731cfaeefb76"
819
819
  },
820
820
  {
821
+ // The composite endpoint editor owns the WHOLE fetch slot:
822
+ // endpoint pick, query params, headers, body mapping/template
823
+ // and response mapping in one card. It replaced the seven
824
+ // per-slice rows (ApiCall, Header/Query templates, body-mode
825
+ // chip, RequiredInputs, PayloadTemplate, ApiValueAccessRules);
826
+ // those editTypes stay renderable for host-supplied custom
827
+ // editorSections. NO clearOnChange — the composite emits
828
+ // complete slot values and manages endpoint switching itself.
821
829
  name: SpecialElementKeys.Default,
822
830
  deepBind: ['matOptions', 'fetch', 'value'],
823
- editType: ElementEditorTypes.ApiCall,
831
+ editType: ElementEditorTypes.ApiEndpointConfig,
824
832
  additionalTest: [
825
833
  {
826
834
  expression: `source === ${DataSources.Api}`,
827
835
  deepBind: ['matOptions', 'fetch', 'value', 'source'],
828
836
  },
829
837
  ],
830
- clearOnChange: [
831
- ['matOptions', 'fetch', 'value'],
832
- ],
833
- hint: `Select an API endpoint from your Postman collection to fetch values. Configure headers, payload format, and response mapping as needed.`,
834
- label: 'Select API endpoint',
835
- id: "95724e64-9d5b-4260-866c-4ada95670b46"
838
+ hint: `Select the API endpoint and configure the whole request in one place: query parameters, headers, body and response mapping.`,
839
+ label: 'API endpoint',
840
+ id: "c9e2f7a4-1b58-4d03-9a6e-2f84c1b0d597"
836
841
  },
837
842
  {
838
843
  name: SpecialElementKeys.Default,
@@ -848,102 +853,6 @@ export var ElementConfig = {
848
853
  label: 'Configure MongoDB pipeline',
849
854
  id: "7b2989ae-2f54-4849-93d0-aff56ac12ef2"
850
855
  },
851
- {
852
- name: SpecialElementKeys.Default,
853
- deepBind: ['matOptions', 'fetch', 'value', 'backEndConfig', 'requestBodyMode'],
854
- additionalTest: [
855
- {
856
- // Only once an API endpoint is configured for the value.
857
- testType: 'exists',
858
- deepBind: ['matOptions', 'fetch', 'value'],
859
- },
860
- ],
861
- editType: ElementEditorTypes.ChipSelect,
862
- label: 'Request body configuration',
863
- hint: 'Choose how the POST body is built: map required inputs, or author a JSON payload template. Only one is used.',
864
- defaultValue: 'mappedInputs',
865
- // NO clearOnChange. Both configurations are kept side by side —
866
- // `requestBodyMode` alone decides which one the runtime uses, and the
867
- // two editors below are shown/hidden by their `additionalTest`. Clearing
868
- // here destroyed the author's work on every mode toggle, and — because
869
- // the editor emits `defaultValue` on init when the bound key is absent —
870
- // wiped `minimumInputRequired` merely on OPENING an existing POST fetch.
871
- // A fetch left with no `minimumInputRequired` key then crashed
872
- // `getAllFunctionTypes`, silently disabling the whole input.
873
- options: [
874
- { label: 'Map inputs', value: 'mappedInputs' },
875
- { label: 'JSON template', value: 'template' },
876
- ],
877
- id: "a1d2f3e4-5b6c-4d7e-8f90-1a2b3c4d5e6f"
878
- },
879
- {
880
- name: SpecialElementKeys.Default,
881
- deepBind: [
882
- 'matOptions',
883
- 'fetch',
884
- 'value',
885
- 'backEndConfig',
886
- 'minimumInputRequired',
887
- ],
888
- additionalTest: [
889
- {
890
- testType: 'exists',
891
- deepBind: [
892
- 'matOptions',
893
- 'fetch',
894
- 'value',
895
- 'backEndConfig',
896
- 'minimumInputRequired',
897
- ],
898
- },
899
- {
900
- // Hidden while the author is using a payload template instead.
901
- expression: 'requestBodyMode !== template',
902
- deepBind: ['matOptions', 'fetch', 'value', 'backEndConfig', 'requestBodyMode'],
903
- },
904
- ],
905
- hint: `These are payload fields that are required to be filled in order to fetch data from the selected source`,
906
- editType: ElementEditorTypes.RequiredInputs,
907
- label: 'Set up required inputs',
908
- id: "2d0f1e18-897b-4c28-97bc-3078be09f8ee"
909
- },
910
- {
911
- name: SpecialElementKeys.Default,
912
- deepBind: [
913
- 'matOptions',
914
- 'fetch',
915
- 'value',
916
- 'backEndConfig',
917
- 'payloadTemplate',
918
- ],
919
- additionalTest: [
920
- {
921
- // Shown only when the author has chosen template mode.
922
- expression: 'requestBodyMode === template',
923
- deepBind: ['matOptions', 'fetch', 'value', 'backEndConfig', 'requestBodyMode'],
924
- },
925
- ],
926
- hint: `Author the POST request body as JSON. Type $ to insert a field as {{inputId}}; every other literal is a fixed default. This supersedes the required-input mapping.`,
927
- editType: ElementEditorTypes.PayloadTemplate,
928
- label: 'Payload template',
929
- id: "b3f6a1c2-7d8e-4a90-8c11-2e5f0a9b7c34"
930
- },
931
- {
932
- name: SpecialElementKeys.Default,
933
- deepBind: ['matOptions', 'fetch', 'value', 'valueAccessRules'],
934
- hint: `Map the fetched data to the input value. This is useful when the fetched data is an object and you want to map a specific field to the input value.It also allow data transformation before setting the value`,
935
- fetchOptions: ['matOptions', 'fetch', 'value', '_id'],
936
- additionalTest: [
937
- {
938
- testType: 'exists',
939
- // Because only Api calls have value access rules
940
- deepBind: ['matOptions', 'fetch', 'value'],
941
- },
942
- ],
943
- editType: ElementEditorTypes.ApiValueAccessRules,
944
- label: 'Map value to fetched data',
945
- id: "26939f46-e8ed-404c-886e-2838495d56e6"
946
- },
947
856
  ]
948
857
  },
949
858
  {
@@ -1023,103 +932,20 @@ export var ElementConfig = {
1023
932
  id: "4e31a786-ec96-4b42-8156-31357958c032"
1024
933
  },
1025
934
  {
935
+ // Composite endpoint editor — see the value-slot twin above.
1026
936
  name: SpecialElementKeys.Default,
1027
937
  deepBind: ['matOptions', 'fetch', 'options'],
938
+ editType: ElementEditorTypes.ApiEndpointConfig,
1028
939
  additionalTest: [
1029
940
  {
1030
941
  expression: "source === api",
1031
942
  deepBind: ['matOptions', 'fetch', 'options', 'source'],
1032
943
  },
1033
944
  ],
1034
- editType: ElementEditorTypes.ApiCall,
1035
- label: 'Select API to fetch data from',
945
+ hint: `Select the API endpoint and configure the whole request in one place: query parameters, headers, body and response mapping.`,
946
+ label: 'API endpoint',
1036
947
  id: "df9e2a34-7bf5-411e-a265-14ca4f85166d"
1037
948
  },
1038
- {
1039
- name: SpecialElementKeys.Default,
1040
- deepBind: ['matOptions', 'fetch', 'options', 'backEndConfig', 'requestBodyMode'],
1041
- additionalTest: [
1042
- {
1043
- testType: 'exists',
1044
- deepBind: ['matOptions', 'fetch', 'options'],
1045
- },
1046
- ],
1047
- editType: ElementEditorTypes.ChipSelect,
1048
- label: 'Request body configuration',
1049
- hint: 'Choose how the POST body is built: map required inputs, or author a JSON payload template. Only one is used.',
1050
- defaultValue: 'mappedInputs',
1051
- // NO clearOnChange — see the value-slot twin above. This one cleared
1052
- // ['matOptions','fetch','options'], i.e. the ENTIRE options fetch config
1053
- // (endpoint, method, source and all), on the editor's init emit.
1054
- options: [
1055
- { label: 'Map required inputs', value: 'mappedInputs' },
1056
- { label: 'Payload template (JSON)', value: 'template' },
1057
- ],
1058
- id: "e2c4a6b8-1d3f-4a5b-9c7e-0f1a2b3c4d5e"
1059
- },
1060
- {
1061
- name: SpecialElementKeys.Default,
1062
- deepBind: [
1063
- 'matOptions',
1064
- 'fetch',
1065
- 'options',
1066
- 'backEndConfig',
1067
- 'minimumInputRequired',
1068
- ],
1069
- additionalTest: [
1070
- {
1071
- testType: 'exists',
1072
- deepBind: [
1073
- 'matOptions',
1074
- 'fetch',
1075
- 'options',
1076
- 'backEndConfig',
1077
- 'minimumInputRequired',
1078
- ],
1079
- },
1080
- {
1081
- expression: 'requestBodyMode !== template',
1082
- deepBind: ['matOptions', 'fetch', 'options', 'backEndConfig', 'requestBodyMode'],
1083
- },
1084
- ],
1085
- editType: ElementEditorTypes.RequiredInputs,
1086
- label: 'Set up required inputs',
1087
- id: "ce8f3b42-340d-4f3e-8d6a-13c93251173f"
1088
- },
1089
- {
1090
- name: SpecialElementKeys.Default,
1091
- deepBind: [
1092
- 'matOptions',
1093
- 'fetch',
1094
- 'options',
1095
- 'backEndConfig',
1096
- 'payloadTemplate',
1097
- ],
1098
- additionalTest: [
1099
- {
1100
- expression: 'requestBodyMode === template',
1101
- deepBind: ['matOptions', 'fetch', 'options', 'backEndConfig', 'requestBodyMode'],
1102
- },
1103
- ],
1104
- hint: `Author the POST request body as JSON. Type $ to insert a field as {{inputId}}; every other literal is a fixed default. This supersedes the required-input mapping.`,
1105
- editType: ElementEditorTypes.PayloadTemplate,
1106
- label: 'Payload template',
1107
- id: "c7a2e4d1-9b0f-4e63-a5d8-71f3b2c6e089"
1108
- },
1109
- {
1110
- name: SpecialElementKeys.Default,
1111
- deepBind: ['matOptions', 'fetch', 'options', 'valueAccessRules'],
1112
- fetchOptions: ['matOptions', 'fetch', 'options', '_id'],
1113
- additionalTest: [
1114
- {
1115
- testType: 'exists',
1116
- deepBind: ['matOptions', 'fetch', 'options'],
1117
- },
1118
- ],
1119
- editType: ElementEditorTypes.ApiValueAccessRules,
1120
- label: 'Map option value to fetched data',
1121
- id: "e24ce283-4cea-497e-b692-feeb4f3afbed"
1122
- },
1123
949
  ]
1124
950
  },
1125
951
  {
@@ -1233,6 +1059,13 @@ export var ElementConfig = {
1233
1059
  deepBind: ['validators'],
1234
1060
  id: "babd1b19-aa49-41b6-bd06-1c34ea2b9fe0"
1235
1061
  },
1062
+ {
1063
+ name: AllFormInputPrimaryKeys.ConditionalInputConfig,
1064
+ editType: ElementEditorTypes.ConditionalInputConfig,
1065
+ label: 'Conditional display',
1066
+ deepBind: ['conditionalInputConfig'],
1067
+ id: "3f2b1c74-9d6e-4a58-9b2f-27c5a1e4d803"
1068
+ },
1236
1069
  ],
1237
1070
  },
1238
1071
  ],
@@ -26,10 +26,22 @@ export interface Body {
26
26
  raw: string;
27
27
  options: Option;
28
28
  }
29
+ /**
30
+ * One query-string entry on a captured Postman request URL. Postman marks a
31
+ * param the author unticked with `disabled: true` — such entries are excluded
32
+ * when seeding a fetch config's `capturedQuery`.
33
+ */
34
+ export interface IUrlQueryParam {
35
+ key: string;
36
+ value: string;
37
+ disabled?: boolean;
38
+ }
29
39
  export interface Url {
30
40
  raw: string;
31
41
  host: string[];
32
42
  path: string[];
43
+ /** Structured query params of the captured URL (absent when the URL has none). */
44
+ query?: IUrlQueryParam[];
33
45
  }
34
46
  export interface Request {
35
47
  method: 'GET' | 'POST' | 'PUT' | 'DELETE';
@@ -97,6 +97,12 @@ export interface IStoreFunctions {
97
97
  saveUserSignature: (signature: PointGroup[]) => Observable<void>;
98
98
  httpPostDataFunction: (url: string, data: any, options?: any) => Observable<any>;
99
99
  httpGetDataFunction: (url: string, options?: any) => Observable<any>;
100
+ /**
101
+ * Transport for a per-input value/options fetch whose `httpMethod` is `'PUT'`.
102
+ * Optional: when the host does not provide it, the library falls back to its
103
+ * own `HttpClient.put(url, data, options)` with the options bag forwarded.
104
+ */
105
+ httpPutDataFunction?: (url: string, data: any, options?: any) => Observable<any>;
100
106
  getCurrentStepMicroflowSubmissions: () => Observable<{
101
107
  submissions: any[];
102
108
  columnMapping: AdjResponseReviewColumnMapping;
@@ -1,5 +1,6 @@
1
1
  import { IStoreFunctions } from "./IStoreFunctions.js";
2
2
  import { Moment } from 'moment';
3
+ import type { FormSubmissionHandleInterface } from "../Form/formSubmissionHandleInterface.js";
3
4
  export interface IFinancialCycles {
4
5
  CURRENT_FINANCIAL_CYCLE: string;
5
6
  CURRENT_FINANCIAL_CYCLE_START_DATE: Moment;
@@ -16,5 +17,37 @@ export interface IFinancialCycles {
16
17
  export interface NgxTFormsConfig {
17
18
  base_url?: string;
18
19
  formBuilder: IStoreFunctions;
20
+ /**
21
+ * Submission configuration pre-inserted into every NEW form the builder creates.
22
+ *
23
+ * Applies ONLY at new-form creation. Forms loaded from storage keep whatever they
24
+ * already carry — including nothing — so an author can delete the pre-inserted
25
+ * endpoints and have that stick. Changing this value never rewrites existing forms.
26
+ *
27
+ * The value is deep-copied per form, so the builder editing one form's submission
28
+ * config can never mutate this object or leak into the next new form. API entry
29
+ * `_id`s are copied verbatim, so the same default yields the same ids across forms.
30
+ *
31
+ * Omit it and new forms start with `{ submissionAPI: [] }`, exactly as before.
32
+ *
33
+ * @example
34
+ * provideNgxTForms({
35
+ * formBuilder: myStoreFunctions,
36
+ * defaultSubmissionHandle: {
37
+ * innerComponentShowSubmitButton: false,
38
+ * submissionAPI: [{
39
+ * _id: '80eca6b1-923a-4c0e-a863-2f56a7e52a67',
40
+ * name: 'Generate/Update WF Document',
41
+ * httpEndPoint: '{{$iserve-back-end-url}}/api/form/generateWFFormValues',
42
+ * httpMethod: 'POST',
43
+ * postFormData: true,
44
+ * backEndConfig: { minimumInputRequired: [] },
45
+ * source: DataSources.Api,
46
+ * projectFormData: 'data:{$formValue}',
47
+ * }],
48
+ * },
49
+ * })
50
+ */
51
+ defaultSubmissionHandle?: FormSubmissionHandleInterface;
19
52
  [key: string]: string | Object | undefined;
20
53
  }
@@ -65,6 +65,83 @@ export type PayloadTemplate = {
65
65
  * configuration.
66
66
  */
67
67
  export type RequestBodyMode = 'mappedInputs' | 'template';
68
+ /**
69
+ * A single header value in a {@link HeaderTemplate}.
70
+ *
71
+ * Scalars only — an HTTP header value is text on the wire, so a number/boolean
72
+ * literal is stringified at request time. Nesting is deliberately not expressible:
73
+ * a header has no structure to nest into.
74
+ */
75
+ export type HeaderTemplateValue = string | number | boolean;
76
+ /**
77
+ * Declarative request headers for a value/options fetch, authored in the same
78
+ * JSON editor as {@link PayloadTemplate} and resolved with the same
79
+ * `{{inputId}}` token syntax.
80
+ *
81
+ * A value that is EXACTLY `"{{inputId}}"` is replaced by that input's live value
82
+ * (stringified); a value that merely CONTAINS token(s) is interpolated
83
+ * (`"Bearer {{accessToken}}"`); every other literal is a fixed default. Header
84
+ * names are always literal.
85
+ *
86
+ * Applies to GET as well as POST — headers are a transport concern, not a body
87
+ * concern. The resolved map is merged into
88
+ * {@link APIDataFetchingConfigurationInterface.httpHeaderOptions}`.headers`
89
+ * (the template wins on a name collision) before the request is issued.
90
+ *
91
+ * Like a payload template, a token that resolves empty keeps the fetch **idle**:
92
+ * a request that would go out without its `Authorization`/tenant header is a
93
+ * request that fails, so the engine waits for the bound field instead of issuing
94
+ * a doomed call.
95
+ *
96
+ * @example
97
+ * headerTemplate: {
98
+ * Authorization: 'Bearer {{accessToken}}',
99
+ * 'x-tenant-id': '{{municipality}}',
100
+ * 'Content-Type': 'application/json',
101
+ * }
102
+ */
103
+ export type HeaderTemplate = {
104
+ [headerName: string]: HeaderTemplateValue;
105
+ };
106
+ /**
107
+ * A single query-parameter value in a {@link QueryTemplate}.
108
+ *
109
+ * Scalars only — a URL query parameter is text on the wire, so a number/boolean
110
+ * literal is stringified at request time. The exact structural twin of
111
+ * {@link HeaderTemplateValue}.
112
+ */
113
+ export type QueryTemplateValue = string | number | boolean;
114
+ /**
115
+ * Declarative URL query parameters for a value/options fetch — the exact
116
+ * structural twin of {@link HeaderTemplate}, resolved with the same
117
+ * `{{inputId}}` token syntax.
118
+ *
119
+ * A value that is EXACTLY `"{{inputId}}"` is replaced by that input's live value
120
+ * (stringified); a value that merely CONTAINS token(s) is interpolated
121
+ * (`"za-{{province}}"`); every other literal is a fixed default. Parameter
122
+ * names are always literal.
123
+ *
124
+ * Applies to GET as well as POST — query parameters are a transport concern.
125
+ * The resolved map is merged into
126
+ * {@link APIDataFetchingConfigurationInterface.httpHeaderOptions}`.params`
127
+ * (the template wins on a name collision) before the request is issued; any
128
+ * literal query text already inside `httpEndPoint` is left untouched and the
129
+ * HTTP layer appends the params after it.
130
+ *
131
+ * Like a header template, a token that resolves empty keeps the fetch **idle**:
132
+ * a request missing a bound parameter would return the wrong data, so the
133
+ * engine waits for the bound field instead.
134
+ *
135
+ * @example
136
+ * queryTemplate: {
137
+ * financialYear: '{{financialYear}}',
138
+ * department: '{{departmentId}}',
139
+ * pageSize: 50,
140
+ * }
141
+ */
142
+ export type QueryTemplate = {
143
+ [paramName: string]: QueryTemplateValue;
144
+ };
68
145
  export interface APIDataFetchingConfigurationInterface extends DataFetchingBaseConfig {
69
146
  _id: string;
70
147
  name: string;
@@ -89,6 +166,39 @@ export interface APIDataFetchingConfigurationInterface extends DataFetchingBaseC
89
166
  includeHeaders?: string[];
90
167
  } | boolean;
91
168
  };
169
+ /**
170
+ * Author-configured request headers, optionally bound to live form values (see
171
+ * {@link HeaderTemplate}). Merged over {@link httpHeaderOptions}`.headers` at
172
+ * request time; absent means "send exactly what `httpHeaderOptions` says",
173
+ * which is the historical behaviour.
174
+ */
175
+ headerTemplate?: HeaderTemplate;
176
+ /**
177
+ * The headers captured from the selected endpoint (e.g. the Postman request's
178
+ * enabled headers). Persisted only to seed {@link headerTemplate}'s editor so
179
+ * it never opens blank; never sent on its own.
180
+ */
181
+ capturedHeaders?: HeaderTemplate;
182
+ /**
183
+ * Author-configured URL query parameters, optionally bound to live form values
184
+ * (see {@link QueryTemplate}). Merged over {@link httpHeaderOptions}`.params`
185
+ * at request time; absent means "send exactly what `httpHeaderOptions` says",
186
+ * which is the historical behaviour.
187
+ */
188
+ queryTemplate?: QueryTemplate;
189
+ /**
190
+ * The query parameters captured from the selected endpoint's URL (e.g. the
191
+ * Postman request's enabled `url.query` entries). Persisted only to seed
192
+ * {@link queryTemplate}'s editor so it never opens blank; never sent on its
193
+ * own — mirrors {@link capturedHeaders}.
194
+ */
195
+ capturedQuery?: QueryTemplate;
196
+ /**
197
+ * The endpoint's documentation captured verbatim from the Postman request's
198
+ * `description`. Display-only (the editor's Docs tab); never sent, never
199
+ * interpreted — mirrors the other `captured*` seeds.
200
+ */
201
+ capturedDocs?: string;
92
202
  backEndConfig: {
93
203
  /**
94
204
  * The default/mapTo mapping that shapes the POST body in `'mappedInputs'` mode.
@@ -1,7 +1,72 @@
1
+ import { InputObservedForChange } from "./FormControlCustomValidatorsInterface.js";
2
+ /**
3
+ * One conditional-display rule declared on a form input's
4
+ * `conditionalInputConfig`.
5
+ *
6
+ * ### Two shapes, one field
7
+ *
8
+ * The interface carries an **expression** half (read by the engine) and a
9
+ * legacy **descriptive** half (read by external consumers that render authoring
10
+ * guidance). This mirrors `ConfigurationValidTestInterface`, which solved the
11
+ * same migration by making the legacy fields optional and adding `expression`
12
+ * alongside them.
13
+ *
14
+ * - A rule with an `expression` participates in the runtime visibility gate.
15
+ * - A rule without one is inert to the engine — it is descriptive metadata only,
16
+ * and the input stays visible as far as that rule is concerned.
17
+ *
18
+ * ### Combination
19
+ *
20
+ * Multiple rules combine with **AND**: the input is revealed only when every
21
+ * expression-bearing rule evaluates to `true`. This matches how every other
22
+ * show-gate in the form builder composes (`additionalTest` entries are all
23
+ * applied with `.every`). An absent or empty array means *always visible*.
24
+ *
25
+ * @example Reveal a phone-number field only when the contact method is 'phone'.
26
+ * ```ts
27
+ * conditionalInputConfig: [{
28
+ * id: 'reveal-phone',
29
+ * expression: 'contactMethod === "phone"',
30
+ * inputsObservedForChanges: [{ inputId: 'a1b2', variable: 'contactMethod' }],
31
+ * }]
32
+ * ```
33
+ */
1
34
  export interface ConditionalInputRule {
2
- formControlName: string;
3
- label: string;
4
- testType: string;
5
- valueMatch: string;
35
+ /** Stable rule identifier. */
6
36
  id: string;
37
+ /**
38
+ * Predicate expression over the observed inputs' values. Evaluating to
39
+ * `true` means the input is **REVEALED**.
40
+ *
41
+ * Same DSL as a custom validator's `expression`, with the opposite polarity:
42
+ * a validator's `true` means *invalid*, a rule's `true` means *shown*.
43
+ */
44
+ expression?: string;
45
+ /**
46
+ * Dependency list auto-derived from {@link ConditionalInputRule.expression},
47
+ * exactly as custom validators derive theirs. Each entry binds a variable
48
+ * name used in the expression to the input whose value supplies it.
49
+ */
50
+ inputsObservedForChanges?: InputObservedForChange[];
51
+ /**
52
+ * @deprecated Legacy descriptive shape. Never read by the engine; retained
53
+ * because external consumers render it as authoring guidance. Author new
54
+ * rules with {@link ConditionalInputRule.expression}.
55
+ */
56
+ formControlName?: string;
57
+ /**
58
+ * @deprecated Legacy descriptive shape — see
59
+ * {@link ConditionalInputRule.formControlName}.
60
+ */
61
+ label?: string;
62
+ /**
63
+ * @deprecated Legacy descriptive shape — see
64
+ * {@link ConditionalInputRule.formControlName}.
65
+ */
66
+ testType?: string;
67
+ /**
68
+ * @deprecated Legacy descriptive shape — see
69
+ * {@link ConditionalInputRule.formControlName}.
70
+ */
71
+ valueMatch?: string;
7
72
  }
@@ -3,6 +3,11 @@ export declare enum MinInputTypes {
3
3
  Default = "default",
4
4
  MapTo = "mapto",
5
5
  MapDocFilter = "mapDocFilter",
6
+ /**
7
+ * @deprecated Never implemented. No editor offers it, no runtime handles it —
8
+ * a `bind` entry leaves its fetch permanently idle. The runtime now surfaces a
9
+ * config error when it encounters one. Re-map the entry as {@link MapTo}.
10
+ */
6
11
  Bind = "bind"
7
12
  }
8
13
  export declare enum JsDataTypes {
@@ -3,6 +3,11 @@ export var MinInputTypes;
3
3
  MinInputTypes["Default"] = "default";
4
4
  MinInputTypes["MapTo"] = "mapto";
5
5
  MinInputTypes["MapDocFilter"] = "mapDocFilter";
6
+ /**
7
+ * @deprecated Never implemented. No editor offers it, no runtime handles it —
8
+ * a `bind` entry leaves its fetch permanently idle. The runtime now surfaces a
9
+ * config error when it encounters one. Re-map the entry as {@link MapTo}.
10
+ */
6
11
  MinInputTypes["Bind"] = "bind";
7
12
  })(MinInputTypes || (MinInputTypes = {}));
8
13
  export var JsDataTypes;
@@ -1,8 +1,9 @@
1
1
  import { IFolderItem, IPostmanCollection } from "../FormBuilder/postmanCollection.js";
2
2
  import { IWorkflowDocListCols, IWorkflowStepOption } from "../FormBuilder/workflowSelectionConfig.js";
3
3
  import { TreeNode } from "../FormSlide/accessTree.js";
4
- import { APIDataFetchingConfigurationInterface, InputAPIDataId, MongoDbPipeLineConfigInterface, PayloadTemplate, PayloadTemplateValue, RequestBodyMode } from "./APIDataFetchingConfigurationInterface.js";
4
+ import { APIDataFetchingConfigurationInterface, HeaderTemplate, HeaderTemplateValue, InputAPIDataId, MongoDbPipeLineConfigInterface, PayloadTemplate, PayloadTemplateValue, QueryTemplate, QueryTemplateValue, RequestBodyMode } from "./APIDataFetchingConfigurationInterface.js";
5
5
  import { AutocapitalizeOptions, AutocompleteOptions, ElementTypes, IBasicFormInput, IFormElementTemplate, InputDataTypes, InputPipeTypes, InputTypes, OptionSelectTypes } from "./BasicFormInputInterface.js";
6
+ import { ConditionalInputRule } from "./ConditionalInputRule.js";
6
7
  import { IDateRangePickerInput } from "./DateRangePickerInput.js";
7
8
  import { AllDocumentFileExtensions, AllImageFileExtensions, FileUploadInputValueInterface, IFileUploadInput, InputFileType, UploadTypes } from "./FileUploadInputInterface.js";
8
9
  import { DraftFormControlCustomValidator, FormControlCustomValidatorsInterface, InputObservedForChange } from "./FormControlCustomValidatorsInterface.js";
@@ -25,4 +26,4 @@ import { CalculationFunctions, calculationVariableInterface } from "./calculatio
25
26
  import { IRichTextEditor, RichTextEditorType } from "./RichTextEditorInput.js";
26
27
  import { ValidationError, ValidationOptions } from "./schema.js";
27
28
  import { IUserSignature } from "./userSignature.js";
28
- export { ElementTypes, InputTypes, InputPipeTypes, AutocapitalizeOptions, AutocompleteOptions, InputDataTypes, MinInputTypes, IFormElementTemplate, IBasicFormInput, IFileUploadInput, IDateRangePickerInput, ITextareaProperties, IToggleInput, IMatrixInput, IMultiple, IMultipleInputCal, IScoaInput, TableConfigurationsInterface, TableColumnConfigInterface, FormControlCustomValidatorsInterface, InputObservedForChange, DraftFormControlCustomValidator, IFormValidationOverride, MinimumInputRequiredInterface, MinInputMapInput, CalculatedFieldRules, calculationVariableInterface, APIDataFetchingConfigurationInterface, PayloadTemplate, PayloadTemplateValue, RequestBodyMode, IGetTreeResponse, CalculationFunctions, TreeNode, IPostmanCollection, IFolderItem, FileUploadInputValueInterface, AllDocumentFileExtensions, AllImageFileExtensions, UploadTypes, InputFileType, IScoaAccount, IScoaInputConfig, ITableScoaSelectionRow, ScoaSegmentValue, ScoaSegmentValueBag, IIncludedSegmentConfig, AccountingBasis, ScoaAccountTree, IUserSignature, ValidationOptions, ValidationError, MatDataOptionsInterface, MongoDbPipeLineConfigInterface, InputAPIDataId, FormInputBasicOptionInterface, ScoaInterface, ScoaInnerInput, IAccountSegmentTreeKeys, IWorkflowDocumentPicker, IWorkflowDocumentPickerConfig, IWorkflowDocumentStepFilter, IDocumentPickerFilter, IDocumentPage, IDocumentQueryRequest, IDocumentReference, DocumentPickerFilterOperator, DocumentPickerFilterValueSource, DocumentPickerFilterValueType, DOCUMENT_PICKER_FILTER_OPERATORS, DOCUMENT_PICKER_FILTER_VALUE_SOURCES, DOCUMENT_PICKER_FILTER_VALUE_TYPES, workflowStepStatus, IWorkflowDocListCols, IWorkflowStepOption, JsDataTypes, AdjudicationSteps, IWorkflowAdjudicationInput, WorkflowAdjudicationScoreSheetValue, WorkflowAdjudicationMicroFlowReviewValue, WorkflowAdjudicationResponseElectedSupplierSelectionValue, ScoreSheetItem, AdjResponseReviewColumnMapping, OptionSelectTypes, ISelectInputInterface, MultipleInputAvailableOperations, RichTextEditorType, IRichTextEditor, };
29
+ export { ElementTypes, InputTypes, InputPipeTypes, AutocapitalizeOptions, AutocompleteOptions, InputDataTypes, MinInputTypes, IFormElementTemplate, IBasicFormInput, IFileUploadInput, ConditionalInputRule, IDateRangePickerInput, ITextareaProperties, IToggleInput, IMatrixInput, IMultiple, IMultipleInputCal, IScoaInput, TableConfigurationsInterface, TableColumnConfigInterface, FormControlCustomValidatorsInterface, InputObservedForChange, DraftFormControlCustomValidator, IFormValidationOverride, MinimumInputRequiredInterface, MinInputMapInput, CalculatedFieldRules, calculationVariableInterface, APIDataFetchingConfigurationInterface, PayloadTemplate, PayloadTemplateValue, RequestBodyMode, HeaderTemplate, HeaderTemplateValue, QueryTemplate, QueryTemplateValue, IGetTreeResponse, CalculationFunctions, TreeNode, IPostmanCollection, IFolderItem, FileUploadInputValueInterface, AllDocumentFileExtensions, AllImageFileExtensions, UploadTypes, InputFileType, IScoaAccount, IScoaInputConfig, ITableScoaSelectionRow, ScoaSegmentValue, ScoaSegmentValueBag, IIncludedSegmentConfig, AccountingBasis, ScoaAccountTree, IUserSignature, ValidationOptions, ValidationError, MatDataOptionsInterface, MongoDbPipeLineConfigInterface, InputAPIDataId, FormInputBasicOptionInterface, ScoaInterface, ScoaInnerInput, IAccountSegmentTreeKeys, IWorkflowDocumentPicker, IWorkflowDocumentPickerConfig, IWorkflowDocumentStepFilter, IDocumentPickerFilter, IDocumentPage, IDocumentQueryRequest, IDocumentReference, DocumentPickerFilterOperator, DocumentPickerFilterValueSource, DocumentPickerFilterValueType, DOCUMENT_PICKER_FILTER_OPERATORS, DOCUMENT_PICKER_FILTER_VALUE_SOURCES, DOCUMENT_PICKER_FILTER_VALUE_TYPES, workflowStepStatus, IWorkflowDocListCols, IWorkflowStepOption, JsDataTypes, AdjudicationSteps, IWorkflowAdjudicationInput, WorkflowAdjudicationScoreSheetValue, WorkflowAdjudicationMicroFlowReviewValue, WorkflowAdjudicationResponseElectedSupplierSelectionValue, ScoreSheetItem, AdjResponseReviewColumnMapping, OptionSelectTypes, ISelectInputInterface, MultipleInputAvailableOperations, RichTextEditorType, IRichTextEditor, };
@@ -1,6 +1,12 @@
1
1
  import { IIncludedSegmentConfig } from "../../formInput/index.js";
2
2
  /** Plain-union mirror of Angular Material's `MatFormFieldAppearance` (no `@angular/material` dependency). */
3
3
  type MatFormFieldAppearance = 'fill' | 'outline';
4
+ /**
5
+ * FROZEN legacy snapshot of the pre-upgrade rule shape. Deliberately NOT kept in
6
+ * step with the canonical {@link ConditionalInputRule} — this module describes
7
+ * the *old* document a form is upgraded FROM, so widening it would misdescribe
8
+ * the input of the upgrade.
9
+ */
4
10
  interface conditionalInputRule {
5
11
  formControlName: string;
6
12
  label: string;
@@ -22,6 +22,10 @@ const minimumInputRequiredSchema = Joi.object({
22
22
  activeChangeId: Joi.string().optional(),
23
23
  primaryKey: Joi.boolean().optional()
24
24
  });
25
+ /** A flat `header name → scalar value` map (see `HeaderTemplate`). */
26
+ const headerTemplateSchema = Joi.object().pattern(Joi.string(), Joi.alternatives().try(Joi.string().allow(''), Joi.number(), Joi.boolean()));
27
+ /** A flat `param name → scalar value` map (see `QueryTemplate`) — twin of the header schema. */
28
+ const queryTemplateSchema = Joi.object().pattern(Joi.string(), Joi.alternatives().try(Joi.string().allow(''), Joi.number(), Joi.boolean()));
25
29
  const APIDataFetchingConfigurationSchema = Joi.object({
26
30
  _id: Joi.string().required(),
27
31
  name: Joi.string().required(),
@@ -42,6 +46,19 @@ const APIDataFetchingConfigurationSchema = Joi.object({
42
46
  withCredentials: Joi.boolean().optional(),
43
47
  transferCache: Joi.alternatives().try(Joi.object({ includeHeaders: Joi.array().items(Joi.string()).optional() }), Joi.boolean()).optional()
44
48
  }).optional(),
49
+ // Author-configured headers, values optionally carrying {{inputId}} tokens bound to
50
+ // live form values. Flat by construction — a header value is text on the wire, so
51
+ // only scalars are accepted (numbers/booleans are stringified at request time).
52
+ headerTemplate: headerTemplateSchema.optional(),
53
+ // Headers captured from the selected endpoint; seeds the editor, never sent alone.
54
+ capturedHeaders: headerTemplateSchema.optional(),
55
+ // Author-configured URL query params, values optionally carrying {{inputId}} tokens.
56
+ // Flat scalars only — a query param is text on the wire.
57
+ queryTemplate: queryTemplateSchema.optional(),
58
+ // Query params captured from the endpoint's URL; seeds the editor, never sent alone.
59
+ capturedQuery: queryTemplateSchema.optional(),
60
+ // The endpoint's Postman description, verbatim; display-only (Docs tab).
61
+ capturedDocs: Joi.string().allow('').optional(),
45
62
  backEndConfig: Joi.object({
46
63
  // Optional: a 'template'-mode fetch shapes its body from payloadTemplate and
47
64
  // carries no mapping; GET fetches never had one. Readers default it to [].
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngx-t-forms-types",
3
- "version": "0.0.26",
3
+ "version": "0.0.28",
4
4
  "description": "Typings and interfaces for the ngx-t-forms library for dynamic forms.",
5
5
  "keywords": [
6
6
  "typings",
@@ -1,31 +0,0 @@
1
- declare enum EditType {
2
- Input = "input",
3
- Toggle = "toggle",
4
- ChipSelect = "chipSelect",
5
- OptionSelect = "optionSelect",
6
- Range = "range",
7
- MinMaxValue = "minMaxValue",
8
- DocumentPropertyPicker = "documentPropertyPicker",
9
- ManualDocumentPropertyPicker = "manualDocumentPropertyPicker",
10
- FormInputSelector = "formInputSelector",
11
- SelectAForm = "selectAForm",
12
- WorkflowPicker = "workflowPicker",
13
- WorkflowStepPicker = "workflowStepPicker",
14
- WorkflowDocumentListLabels = "workflowDocumentListLabels",
15
- DecisionGateSettings = "decisionGateSettings",
16
- EscalateTask = "escalateTask",
17
- AddMembers = "addMembers",
18
- MultipleInputConfigurations = "multipleInputConfigurations",
19
- TableConfigSetup = "tableConfigSetup",
20
- SelectionOptions = "selectionOptions",
21
- ApiValueAccessRules = "apiValueAccessRules",
22
- RequiredInputs = "requiredInputs",
23
- ChartAxis = "chartAxis",
24
- Series = "series",
25
- MongoPipelineBuilder = "mongoPipelineBuilder",
26
- ApiCall = "apiCall",
27
- ConfigMscoaSegments = "configMscoaSegments",
28
- ConfigMscoaAdditionalInputs = "configMscoaAdditionalInputs",
29
- Validators = "validators",
30
- CalculatedFieldRules = "calculatedFieldRules"
31
- }
@@ -1,40 +0,0 @@
1
- "use strict";
2
- var EditType;
3
- (function (EditType) {
4
- // Basic Input Types
5
- EditType["Input"] = "input";
6
- EditType["Toggle"] = "toggle";
7
- EditType["ChipSelect"] = "chipSelect";
8
- EditType["OptionSelect"] = "optionSelect";
9
- EditType["Range"] = "range";
10
- EditType["MinMaxValue"] = "minMaxValue";
11
- // Document/Form Pickers
12
- EditType["DocumentPropertyPicker"] = "documentPropertyPicker";
13
- EditType["ManualDocumentPropertyPicker"] = "manualDocumentPropertyPicker";
14
- EditType["FormInputSelector"] = "formInputSelector";
15
- EditType["SelectAForm"] = "selectAForm";
16
- // Workflow Related
17
- EditType["WorkflowPicker"] = "workflowPicker";
18
- EditType["WorkflowStepPicker"] = "workflowStepPicker";
19
- EditType["WorkflowDocumentListLabels"] = "workflowDocumentListLabels";
20
- EditType["DecisionGateSettings"] = "decisionGateSettings";
21
- EditType["EscalateTask"] = "escalateTask";
22
- EditType["AddMembers"] = "addMembers";
23
- // Multiple Configurations
24
- EditType["MultipleInputConfigurations"] = "multipleInputConfigurations";
25
- EditType["TableConfigSetup"] = "tableConfigSetup";
26
- EditType["SelectionOptions"] = "selectionOptions";
27
- EditType["ApiValueAccessRules"] = "apiValueAccessRules";
28
- EditType["RequiredInputs"] = "requiredInputs";
29
- // Chart/Report Related
30
- EditType["ChartAxis"] = "chartAxis";
31
- EditType["Series"] = "series";
32
- EditType["MongoPipelineBuilder"] = "mongoPipelineBuilder";
33
- EditType["ApiCall"] = "apiCall";
34
- // MSCOA Related
35
- EditType["ConfigMscoaSegments"] = "configMscoaSegments";
36
- EditType["ConfigMscoaAdditionalInputs"] = "configMscoaAdditionalInputs";
37
- // Validation/Rules
38
- EditType["Validators"] = "validators";
39
- EditType["CalculatedFieldRules"] = "calculatedFieldRules";
40
- })(EditType || (EditType = {}));