@skedulo/mex-types 1.35.0 → 1.36.0

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.
@@ -1,4 +1,4 @@
1
- import { BaseFlatPageViewComponentModel, SkedButtonTheme } from '../view';
1
+ import { FlatPageViewComponentTypes, SkedButtonTheme } from '../view';
2
2
  import { SelectPageOnlineSource } from '../view';
3
3
  export type DollarExpressionType = string;
4
4
  export type DataExpressionType = string;
@@ -57,7 +57,7 @@ export type RoutingPageDef = {
57
57
  };
58
58
  };
59
59
  export type RoutingPageUI = {
60
- items: (BaseFlatPageViewComponentModel | DynamicContent)[];
60
+ items: (FlatPageViewComponentTypes | DynamicContent)[];
61
61
  description?: LocalizedKey;
62
62
  submitText?: LocalizedKey;
63
63
  };
@@ -97,14 +97,14 @@ export interface ButtonGroupItemComponentModel {
97
97
  * {label: 'Open Selector', value: 'openSelector'}
98
98
  * ]
99
99
  */
100
- behavior: ButtonBehaviorComponentModel;
100
+ behavior: ButtonBehaviorComponentModelTypes;
101
101
  disabled?: DataExpressionType;
102
102
  icon?: IconName;
103
103
  }
104
104
  export interface ButtonBehaviorComponentModel {
105
- type: ButtonBehaviorType;
105
+ type: 'custom' | 'sms' | 'phone' | 'openUrl' | 'email' | 'openSelector' | 'routing';
106
106
  }
107
- export type ButtonBehaviorType = 'custom' | 'sms' | 'phone' | 'openUrl' | 'email' | 'openSelector' | 'routing';
107
+ export type ButtonBehaviorComponentModelTypes = CustomFunctionButtonBehaviorComponentModel | PhoneButtonBehaviorComponentModel | SMSButtonBehaviorComponentModel | OpenURLButtonBehaviorComponentModel | EmailButtonBehaviorComponentModel | RoutingBehaviorComponentModel;
108
108
  export interface CustomFunctionButtonBehaviorComponentModel extends ButtonBehaviorComponentModel {
109
109
  functionExpression: DataExpressionType;
110
110
  /**
@@ -43,7 +43,7 @@ type MexBaseMetadata = {
43
43
  summary?: string;
44
44
  /**
45
45
  * @label Email
46
- * @hidden true
46
+ * @form-builder-hidden true
47
47
  */
48
48
  email?: string;
49
49
  /**
@@ -57,12 +57,12 @@ type MexBaseMetadata = {
57
57
  * @label Attachment destination
58
58
  * @placeholder Enter object name
59
59
  * @tooltip Specify the object where attachments will be stored
60
- * @hidden true
60
+ * @form-builder-hidden true
61
61
  */
62
62
  hasAttachments?: string[];
63
63
  /**
64
64
  * @label Static resources
65
- * @hidden true
65
+ * @form-builder-hidden true
66
66
  */
67
67
  staticResourcesId?: string;
68
68
  /**
@@ -108,7 +108,7 @@ interface MexMetadataForJob extends MexBaseMetadata {
108
108
  /**
109
109
  * @label Mandatory expression
110
110
  * @tooltip Job types where this form will be mandatory
111
- * @hidden true
111
+ * @form-builder-hidden true
112
112
  */
113
113
  mandatoryExpression?: string | AsyncExpressionType;
114
114
  }
@@ -150,7 +150,7 @@ export type MexMetadataPayload = MexMetadataForJob | MexMetadataForResource;
150
150
  * @options [{label: 'UID', value: 'uid'}]
151
151
  * @placeholder Please input the value
152
152
  * @tooltip Explain more details for this field
153
- * @hidden true
153
+ * @form-builder-hidden true
154
154
  * @readonly true
155
155
  * @min 0
156
156
  * @max 999
@@ -167,11 +167,11 @@ export type MexMetadataPayload = MexMetadataForJob | MexMetadataForResource;
167
167
  export interface MexDef {
168
168
  /**
169
169
  * Auto generated UID
170
- * @hidden true
170
+ * @form-builder-hidden true
171
171
  */
172
172
  uid: string;
173
173
  /**
174
- * @hidden true
174
+ * @form-builder-hidden true
175
175
  */
176
176
  tenantId: string;
177
177
  /**
@@ -191,12 +191,12 @@ export interface MexDef {
191
191
  defId: string;
192
192
  /**
193
193
  * A long number version value, [defId - version] is unique pair
194
- * @hidden true
194
+ * @form-builder-hidden true
195
195
  */
196
196
  version: number;
197
197
  /**
198
198
  * Semver version of compatible engine version
199
- * @hidden true
199
+ * @form-builder-hidden true
200
200
  */
201
201
  engineVersion: string;
202
202
  /**
@@ -210,7 +210,7 @@ export interface MexDef {
210
210
  /**
211
211
  * Similar to formdef, but it stores the formdef value after validating, for example:
212
212
  * a customFunctionMetadata should be an aws lambda arn instead of a pure js function
213
- * @hidden true
213
+ * @form-builder-hidden true
214
214
  */
215
215
  internalMetadata?: InternalFormDef;
216
216
  /**
@@ -227,35 +227,35 @@ export interface MexDef {
227
227
  * ]
228
228
  * @label Status
229
229
  * @dataType singleselect
230
- * @hidden true
230
+ * @form-builder-hidden true
231
231
  */
232
232
  status: DefStatus;
233
233
  /**
234
234
  * Form uploaded timestamp
235
235
  * @dataType datetime
236
- * @hidden true
236
+ * @form-builder-hidden true
237
237
  */
238
238
  uploadedAt: Date;
239
239
  /**
240
240
  * Form installed timestamp
241
241
  * @dataType datetime
242
- * @hidden true
242
+ * @form-builder-hidden true
243
243
  */
244
244
  installedAt?: Date;
245
245
  /**
246
246
  * Form built timestamp
247
247
  * @dataType datetime
248
- * @hidden true
248
+ * @form-builder-hidden true
249
249
  */
250
250
  builtAt?: Date;
251
251
  /**
252
252
  * This form definition has been uploaded by
253
- * @hidden true
253
+ * @form-builder-hidden true
254
254
  */
255
255
  uploadedBy: string;
256
256
  /**
257
257
  * This form definition has been installed by
258
- * @hidden true
258
+ * @form-builder-hidden true
259
259
  */
260
260
  installedBy?: string;
261
261
  }
@@ -1,7 +1,7 @@
1
1
  import { ButtonGroupItemComponentModel, DataExpressionType, DynamicContent, FunctionExpressionType, GroupByFeatureModel, ListPageAddNewDefaultDataType, LocalizedKey, OneLevelBindingObject, OnlineDeleteDataQuery, OnlineFetchDataQuery, OnlineFetchListDataQuery, OnlineUpsertDataQuery, OrderByModel, RoutingType, ValueExpressionType } from '../common';
2
2
  import { BaseListPageViewComponentModel } from '../view';
3
3
  import { BaseComponentModel } from '../common';
4
- import { BaseFlatPageViewComponentModel } from '../view';
4
+ import { FlatPageViewComponentTypes } from '../view';
5
5
  import { ValidatorDefinitionModel } from '../validator';
6
6
  /**
7
7
  * @area formProperties
@@ -21,10 +21,9 @@ export type UIDefinition = {
21
21
  * @tooltip Users will not be able to submit this form when the job is in any of the chosen job statuses
22
22
  */
23
23
  readonly?: boolean;
24
- /**
25
- * @deprecated Use content from { UIDefinition.content.pages }
26
- */
27
- pages?: AllPageComponentModel[];
24
+ pages: {
25
+ [key: string]: AllPageComponentModel;
26
+ };
28
27
  /**
29
28
  * @version 1.14.0
30
29
  */
@@ -84,11 +83,11 @@ export interface BasePageComponentModel extends BaseComponentModel {
84
83
  /**
85
84
  * @label Wipe existing data
86
85
  */
87
- wipeExistingData: boolean;
86
+ wipeExistingData?: boolean;
88
87
  /**
89
88
  * @label Default page data
90
89
  */
91
- defaultPageData: DefaultPageData;
90
+ defaultPageData?: DefaultPageData;
92
91
  events?: {
93
92
  onInitialized?: FunctionExpressionType;
94
93
  onPreDataSave?: FunctionExpressionType;
@@ -97,7 +96,7 @@ export interface BasePageComponentModel extends BaseComponentModel {
97
96
  /**
98
97
  * @version: 1.10.0
99
98
  */
100
- dataObserver: DataObserverObject[];
99
+ dataObserver?: DataObserverObject[];
101
100
  }
102
101
  /**
103
102
  * @version: 1.10.0
@@ -189,7 +188,7 @@ export interface TagModel {
189
188
  /**
190
189
  * @label Type
191
190
  */
192
- type: 'fixed' | 'dynamic';
191
+ type?: 'fixed' | 'dynamic';
193
192
  /**
194
193
  * @label Items
195
194
  */
@@ -300,7 +299,7 @@ export interface ListPageAdvancedFilterModel extends WithAdvancedFilterUI {
300
299
  };
301
300
  }
302
301
  export type ListPageAdvancedFilterUI = {
303
- items: (BaseFlatPageViewComponentModel | DynamicContent)[];
302
+ items: (FlatPageViewComponentTypes | DynamicContent)[];
304
303
  description?: LocalizedKey;
305
304
  submitText?: LocalizedKey;
306
305
  };
@@ -313,6 +312,7 @@ interface ButtonGroupViewComponentModel {
313
312
  * @value flat
314
313
  */
315
314
  export interface FlatPageComponentModel extends BasePageComponentModel {
315
+ type: 'flat';
316
316
  /**
317
317
  * @label Delete Button
318
318
  */
@@ -354,11 +354,11 @@ export interface FlatPageComponentModel extends BasePageComponentModel {
354
354
  /**
355
355
  * @label Add Upsert page
356
356
  */
357
- upsert: {
358
- insertTitle: LocalizedKey;
359
- updateTitle: LocalizedKey;
360
- insertButtonText: LocalizedKey;
361
- defaultDataForNewObject: OneLevelBindingObject;
357
+ upsert?: {
358
+ insertTitle?: LocalizedKey;
359
+ updateTitle?: LocalizedKey;
360
+ insertButtonText?: LocalizedKey;
361
+ defaultDataForNewObject?: OneLevelBindingObject;
362
362
  validator?: ValidatorDefinitionModel;
363
363
  /**
364
364
  * @label Read Only condition
@@ -374,7 +374,7 @@ export interface FlatPageComponentModel extends BasePageComponentModel {
374
374
  * @hidden true
375
375
  * @deprecated Use items in { FlatPageComponentModel.singleDef.flatComponents }
376
376
  */
377
- items?: (BaseFlatPageViewComponentModel | DynamicContent)[];
377
+ items?: (FlatPageViewComponentTypes | DynamicContent)[];
378
378
  header?: FlatPageHeaderModel;
379
379
  /**
380
380
  * @label Description
@@ -386,7 +386,21 @@ export interface FlatPageComponentModel extends BasePageComponentModel {
386
386
  onRemoved?: FunctionExpressionType;
387
387
  };
388
388
  mode?: FlatPageMode;
389
- stepDef?: FlatPageStepModeDefModel;
389
+ }
390
+ export type FlatPageComponentModelTypes = SingleFlatPageComponentModel | StepsFlatPageComponentModel;
391
+ export interface SingleFlatPageComponentModel extends FlatPageComponentModel {
392
+ mode?: 'single' | undefined;
393
+ /**
394
+ * @label Items
395
+ */
396
+ items: FlatPageViewComponentTypes[];
397
+ }
398
+ export interface StepsFlatPageComponentModel extends FlatPageComponentModel {
399
+ mode?: 'steps';
400
+ /**
401
+ * @debug-description Required for steps mode
402
+ */
403
+ stepDef: FlatPageStepModeDefModel;
390
404
  /**
391
405
  * @version 1.13.0
392
406
  */
@@ -410,7 +424,7 @@ export type ReloadRequest = {
410
424
  * @version 1.13.0
411
425
  */
412
426
  export type FlatPageSingleModeDefModel = {
413
- flatComponents?: (BaseFlatPageViewComponentModel | DynamicContent)[];
427
+ flatComponents?: (FlatPageViewComponentTypes | DynamicContent)[];
414
428
  list?: SublistOfFlatPageComponentModel;
415
429
  };
416
430
  export type FlatPageStepModeDefModel = {
@@ -432,7 +446,7 @@ export type FlatPageStepModel = {
432
446
  stepRecognizedOnInitCondition?: DataExpressionType;
433
447
  };
434
448
  export type FlatPageStepUIModel = {
435
- items: (BaseFlatPageViewComponentModel | DynamicContent)[];
449
+ items: (FlatPageViewComponentTypes | DynamicContent)[];
436
450
  validator?: ValidatorDefinitionModel;
437
451
  };
438
452
  export type FlatPageStepRoutingLogic = {
@@ -505,5 +519,5 @@ export interface MessageBoxModel {
505
519
  */
506
520
  theme: ValueExpressionType;
507
521
  }
508
- export type AllPageComponentModel = ListPageComponentModel | FlatPageComponentModel;
522
+ export type AllPageComponentModel = ListPageComponentModel | FlatPageComponentModelTypes;
509
523
  export {};
@@ -1,6 +1,6 @@
1
1
  import { DataExpressionType, LocalizedKey, OnlineFetchDataQuery } from '../common';
2
2
  export interface BaseValidatorModel {
3
- type: 'expression' | 'customFunction' | 'asyncExpression';
3
+ type: string;
4
4
  }
5
5
  export interface AsyncExpressionValidatorModel extends BaseValidatorModel {
6
6
  type: 'asyncExpression';
@@ -14,7 +14,8 @@ export interface ExpressionValidatorModel extends BaseValidatorModel {
14
14
  expression: DataExpressionType;
15
15
  }
16
16
  export interface CustomFunctionValidatorModel extends BaseValidatorModel {
17
- type: 'customFunction';
18
17
  functionName: string;
18
+ type: 'customFunction';
19
19
  }
20
- export type ValidatorDefinitionModel = BaseValidatorModel[] | BaseValidatorModel;
20
+ export type ValidatorDefinitionModel = ValidatorModelTypes[] | ValidatorModelTypes;
21
+ export type ValidatorModelTypes = ExpressionValidatorModel | CustomFunctionValidatorModel;
@@ -9,6 +9,7 @@ export interface BaseFlatPageViewComponentModel extends BaseComponentModel {
9
9
  */
10
10
  showIfExpression?: DataExpressionType;
11
11
  }
12
+ export type FlatPageViewComponentTypes = TextViewComponentModel | TextEditorViewComponentModel | ReadonlyTextViewComponentModel | ButtonGroupViewComponentModel | AttachmentsEditorViewComponentModel | SignatureEditorViewComponentModel | ToggleEditorViewComponentModel | DateTimePickerViewComponentModel | SectionViewComponentModel | MenuListViewComponentModel | SelectEditorViewComponentModel | MultiSelectEditorViewComponentModel | ChartViewComponentTypes | AddressSelectEditorViewComponentModel;
12
13
  /**
13
14
  * @area Components
14
15
  * @value textView
@@ -28,14 +29,11 @@ export interface TextViewComponentModel extends BaseFlatPageViewComponentModel {
28
29
  * @tooltip Text added here will be shown in mobile forms as a readonly paragraph
29
30
  */
30
31
  text: LocalizedKey;
32
+ type: 'textView';
31
33
  }
32
34
  export type KeyboardType = 'default' | 'email-address' | 'numeric' | 'phone-pad' | 'number-pad' | 'decimal-pad';
33
35
  export type TextEditorDataType = 'string' | 'integer' | 'decimal';
34
36
  export interface CommonEditorViewComponentModel extends BaseFlatPageViewComponentModel {
35
- /**
36
- * @label Label
37
- */
38
- title: LocalizedKey;
39
37
  /**
40
38
  * @label Validator
41
39
  * @referenceTo ExpressionValidatorModel
@@ -71,13 +69,19 @@ export interface CommonEditorEvents {
71
69
  */
72
70
  onValueChanged?: FunctionExpressionType;
73
71
  }
74
- export interface CommonEditorWithPlaceholder {
72
+ export interface WithPlaceholder {
75
73
  /**
76
74
  * @label Placeholder text
77
75
  * @tooltip Enter a short text that informs the users of what to enter in the field.
78
76
  */
79
77
  placeholder?: LocalizedKey;
80
78
  }
79
+ export interface WithTitle {
80
+ /**
81
+ * @label Label
82
+ */
83
+ title: LocalizedKey;
84
+ }
81
85
  /**
82
86
  * @area Components
83
87
  * @value textEditor
@@ -85,7 +89,7 @@ export interface CommonEditorWithPlaceholder {
85
89
  * @label Text input
86
90
  * @fieldOrders ['title', 'caption', 'keyboardType', 'placeholder', 'mandatory', 'multiline', 'showIfExpression']
87
91
  */
88
- export interface TextEditorViewComponentModel extends CommonEditorViewComponentModel, CommonEditorWithPlaceholder {
92
+ export interface TextEditorViewComponentModel extends CommonEditorViewComponentModel, WithPlaceholder, WithTitle {
89
93
  /**
90
94
  * TODO: need no enhance to remove typeAdhoc
91
95
  * @label Keyboard type
@@ -121,6 +125,7 @@ export interface TextEditorViewComponentModel extends CommonEditorViewComponentM
121
125
  * @label Features
122
126
  */
123
127
  features?: TextEditorFeaturesModel;
128
+ type: 'textEditor';
124
129
  /**
125
130
  * @label Symbol
126
131
  */
@@ -139,11 +144,12 @@ export interface TextEditorFeaturesModel {
139
144
  * @label Read-only label
140
145
  * @fieldOrders ['title', 'text', 'caption', 'showIfExpression']
141
146
  */
142
- export interface ReadonlyTextViewComponentModel extends CommonEditorViewComponentModel, CommonEditorWithPlaceholder {
147
+ export interface ReadonlyTextViewComponentModel extends CommonEditorViewComponentModel, WithPlaceholder, WithTitle {
143
148
  /**
144
149
  * @label Text
145
150
  */
146
151
  text?: LocalizedKey;
152
+ type: 'readonlyTextView';
147
153
  }
148
154
  export type SkedButtonTheme = 'success' | 'primary' | 'default';
149
155
  /**
@@ -151,8 +157,9 @@ export type SkedButtonTheme = 'success' | 'primary' | 'default';
151
157
  * @value buttonGroup
152
158
  * @label Button group
153
159
  */
154
- export interface ButtonGroupViewComponentModel extends BaseFlatPageViewComponentModel, CommonEditorWithPlaceholder {
160
+ export interface ButtonGroupViewComponentModel extends BaseFlatPageViewComponentModel, WithPlaceholder {
155
161
  items: ButtonGroupItemComponentModel[];
162
+ type: 'buttonGroup';
156
163
  }
157
164
  /**
158
165
  * @area Components
@@ -193,7 +200,7 @@ export interface SubListEditorViewComponentModel extends CommonEditorViewCompone
193
200
  * @label Item click destination
194
201
  * @typeAdhoc string
195
202
  */
196
- itemClickDestination: RoutingType;
203
+ itemClickDestination?: RoutingType;
197
204
  }
198
205
  /**
199
206
  * @area Components
@@ -202,7 +209,8 @@ export interface SubListEditorViewComponentModel extends CommonEditorViewCompone
202
209
  * @label Attachment
203
210
  * @fieldOrders ['title', 'caption', 'mandatory', 'showIfExpression']
204
211
  */
205
- export interface AttachmentsEditorViewComponentModel extends CommonEditorViewComponentModel {
212
+ export interface AttachmentsEditorViewComponentModel extends CommonEditorViewComponentModel, WithTitle {
213
+ type: 'attachmentsEditor';
206
214
  /**
207
215
  * @label Source expression
208
216
  */
@@ -214,7 +222,7 @@ export interface AttachmentsEditorViewComponentModel extends CommonEditorViewCom
214
222
  /**
215
223
  * @label Attachment category name
216
224
  */
217
- attachmentCategoryName: string;
225
+ attachmentCategoryName?: string;
218
226
  /**
219
227
  * @version 1.10.0
220
228
  */
@@ -231,7 +239,7 @@ export interface AttachmentsEditorViewAddFilesOptionsModel {
231
239
  * @value bodyMapEditor
232
240
  * @label Body map
233
241
  */
234
- export interface BodyMapViewComponentModel extends CommonEditorViewComponentModel {
242
+ export interface BodyMapViewComponentModel extends CommonEditorViewComponentModel, WithTitle {
235
243
  /**
236
244
  * @label Source expression
237
245
  */
@@ -248,7 +256,8 @@ export interface BodyMapViewComponentModel extends CommonEditorViewComponentMode
248
256
  * @label Signature
249
257
  * @fieldOrders ['title', 'caption', 'mandatory', 'enableFullName', 'showIfExpression']
250
258
  */
251
- export interface SignatureEditorViewComponentModel extends CommonEditorViewComponentModel {
259
+ export interface SignatureEditorViewComponentModel extends CommonEditorViewComponentModel, WithTitle {
260
+ type: 'signatureEditor';
252
261
  /**
253
262
  * @label Source expression
254
263
  */
@@ -280,13 +289,14 @@ export interface ToggleEditorViewComponentModel extends CommonEditorViewComponen
280
289
  /**
281
290
  * @label Title
282
291
  */
283
- title: LocalizedKey;
292
+ title?: LocalizedKey;
293
+ type: 'toggleEditor';
284
294
  /**
285
295
  * TODO: Remove typeAdhoc for union type, and dynamic form need to support Array of object
286
296
  * @label Validator
287
297
  * @referenceTo ExpressionValidatorModel
288
298
  */
289
- validator: ValidatorDefinitionModel;
299
+ validator?: ValidatorDefinitionModel;
290
300
  /**
291
301
  * @label Items
292
302
  */
@@ -304,11 +314,11 @@ export interface ToggleEditorItemModel {
304
314
  /**
305
315
  * @label On Value
306
316
  */
307
- onValue: any;
317
+ onValue?: any;
308
318
  /**
309
319
  * @label Off Value
310
320
  */
311
- offValue: any;
321
+ offValue?: any;
312
322
  /**
313
323
  * @label Title
314
324
  */
@@ -321,7 +331,8 @@ export interface ToggleEditorItemModel {
321
331
  * @label Date & time
322
332
  * @fieldOrders ['title', 'caption', 'mandatory', 'showIfExpression']
323
333
  */
324
- export interface DateTimePickerViewComponentModel extends CommonEditorViewComponentModel, CommonEditorWithPlaceholder {
334
+ export interface DateTimePickerViewComponentModel extends CommonEditorViewComponentModel, WithPlaceholder, WithTitle {
335
+ type: 'dateTimeEditor';
325
336
  /**
326
337
  * @label Mode
327
338
  * @typeAdhoc singleselect
@@ -362,25 +373,26 @@ export interface BaseSublistViewComponentModel extends BaseComponentModel {
362
373
  * @value section
363
374
  */
364
375
  export interface SectionViewComponentModel extends BaseFlatPageViewComponentModel {
376
+ type: 'section';
365
377
  /**
366
378
  * @label Title
367
379
  */
368
- title: LocalizedKey;
380
+ title?: LocalizedKey;
369
381
  /**
370
382
  * @label Body
371
383
  */
372
- body: LocalizedKey;
384
+ body?: LocalizedKey;
373
385
  /**
374
386
  * @label Caption
375
387
  * @typeAdhoc textarea
376
388
  * @maxLength 1000
377
389
  * @tooltip Enter a description or guideline to provide more context. This text will display under the component label
378
390
  */
379
- caption: LocalizedKey;
391
+ caption?: LocalizedKey;
380
392
  /**
381
393
  * @label items
382
394
  */
383
- items: (BaseFlatPageViewComponentModel | DynamicContent)[];
395
+ items: (FlatPageViewComponentTypes | DynamicContent)[];
384
396
  }
385
397
  /**
386
398
  * @area Components
@@ -389,6 +401,7 @@ export interface SectionViewComponentModel extends BaseFlatPageViewComponentMode
389
401
  * @description Display a list of options or actions
390
402
  */
391
403
  export interface MenuListViewComponentModel extends BaseFlatPageViewComponentModel {
404
+ type: 'menuList';
392
405
  items: MenuListItem[];
393
406
  }
394
407
  export interface MenuListItem extends BaseFlatPageViewComponentModel {
@@ -402,13 +415,13 @@ export interface MenuListItem extends BaseFlatPageViewComponentModel {
402
415
  * @maxLength 1000
403
416
  * @tooltip Enter a description or guideline to provide more context. This text will display under the component label
404
417
  */
405
- caption: LocalizedKey;
418
+ caption?: LocalizedKey;
406
419
  /**
407
420
  * TODO: Remove typeAdhoc for union type
408
421
  * @label Item click destination
409
422
  * @typeAdhoc string
410
423
  */
411
- itemClickDestination: RoutingType;
424
+ itemClickDestination?: RoutingType;
412
425
  /**
413
426
  * @label Badge Text
414
427
  */
@@ -421,32 +434,32 @@ export interface MenuListItem extends BaseFlatPageViewComponentModel {
421
434
  export interface BaseSelectEditor {
422
435
  /**
423
436
  * @label Structure expression
424
- * @hidden true
437
+ * @form-builder-hidden true
425
438
  */
426
439
  structureExpression?: DataExpressionType;
427
440
  /**
428
441
  * @label Source expression
429
- * @hidden true
442
+ * @form-builder-hidden true
430
443
  */
431
444
  sourceExpression: DataExpressionType;
432
445
  /**
433
446
  * @label Display expression
434
- * @hidden true
447
+ * @form-builder-hidden true
435
448
  */
436
449
  displayExpression: DataExpressionType;
437
450
  /**
438
451
  * @label Filter expression
439
- * @hidden true
452
+ * @form-builder-hidden true
440
453
  */
441
454
  filterExpression?: DataExpressionType;
442
455
  /**
443
456
  * @label Online source
444
- * @hidden true
457
+ * @form-builder-hidden true
445
458
  */
446
459
  onlineSource?: SelectPageOnlineSource;
447
460
  /**
448
461
  * @label Select page
449
- * @hidden true
462
+ * @form-builder-hidden true
450
463
  */
451
464
  selectPage: {
452
465
  /**
@@ -456,11 +469,11 @@ export interface BaseSelectEditor {
456
469
  /**
457
470
  * @label Item caption
458
471
  */
459
- itemCaption: LocalizedKey;
472
+ itemCaption?: LocalizedKey;
460
473
  /**
461
474
  * @label Empty text
462
475
  */
463
- emptyText: LocalizedKey;
476
+ emptyText?: LocalizedKey;
464
477
  /**
465
478
  * @label Title
466
479
  */
@@ -495,10 +508,11 @@ export interface BaseSelectEditor {
495
508
  * @label Drop-down
496
509
  * @fieldOrders ['title', 'caption', 'placeholder', 'mandatory', 'options', 'showIfExpression']
497
510
  */
498
- export interface SelectEditorViewComponentModel extends CommonEditorViewComponentModel, CommonEditorWithPlaceholder, BaseSelectEditor {
511
+ export interface SelectEditorViewComponentModel extends CommonEditorViewComponentModel, WithPlaceholder, BaseSelectEditor {
512
+ type: 'selectEditor';
499
513
  /**
500
514
  * @label Value expression
501
- * @hidden true
515
+ * @form-builder-hidden true
502
516
  */
503
517
  valueExpression: DataExpressionType;
504
518
  /**
@@ -519,13 +533,14 @@ export interface SelectEditorViewComponentModel extends CommonEditorViewComponen
519
533
  * @label Multi-select drop-down
520
534
  * @fieldOrders ['title', 'caption', 'placeholder', 'mandatory', 'options', 'showIfExpression']
521
535
  */
522
- export interface MultiSelectEditorViewComponentModel extends CommonEditorViewComponentModel, CommonEditorWithPlaceholder, BaseSelectEditor {
536
+ export interface MultiSelectEditorViewComponentModel extends CommonEditorViewComponentModel, WithPlaceholder, BaseSelectEditor {
537
+ type: 'multiSelectEditor';
523
538
  /**
524
- * @hidden true
539
+ * @form-builder-hidden true
525
540
  */
526
- displayDataInSearchPageExpression: DataExpressionType;
541
+ displayDataInSearchPageExpression?: DataExpressionType;
527
542
  /**
528
- * @hidden true
543
+ * @form-builder-hidden true
529
544
  */
530
545
  constructResultObject?: ConstructResultObject;
531
546
  valueExpression?: DataExpressionType;
@@ -533,14 +548,14 @@ export interface MultiSelectEditorViewComponentModel extends CommonEditorViewCom
533
548
  * TODO: Remove typeAdhoc for union type, and dynamic form need to support Array of object
534
549
  * @label Validator
535
550
  * @referenceTo ExpressionValidatorModel
536
- * @hidden true
551
+ * @form-builder-hidden true
537
552
  */
538
553
  validator: ValidatorDefinitionModel;
539
554
  }
540
555
  /**
541
556
  * @version 1.14.0
542
557
  */
543
- export interface AddressSelectEditorViewComponentModel extends CommonEditorViewComponentModel, CommonEditorWithPlaceholder {
558
+ export interface AddressSelectEditorViewComponentModel extends CommonEditorViewComponentModel, WithPlaceholder {
544
559
  structureExpression: DataExpressionType;
545
560
  displayExpression: DataExpressionType;
546
561
  selectPage?: {
@@ -554,7 +569,7 @@ export interface AddressSelectEditorViewComponentModel extends CommonEditorViewC
554
569
  * @label Number input
555
570
  * @fieldOrders ['title', 'caption', 'placeholder', 'mandatory', 'showIfExpression']
556
571
  */
557
- export interface NumberEditorViewComponentModel extends CommonEditorViewComponentModel, CommonEditorWithPlaceholder {
572
+ export interface NumberEditorViewComponentModel extends CommonEditorViewComponentModel, WithPlaceholder {
558
573
  /**
559
574
  * @label Value expression
560
575
  */
@@ -638,7 +653,7 @@ export interface ContactSmsMethodModel extends ContactMethodModel {
638
653
  phoneNumberExpression: DataExpressionType;
639
654
  }
640
655
  export type ChartType = 'line' | 'bar' | 'pie' | 'multi-lines';
641
- export type ChartViewComponentTypes = LineChartViewComponentModel | MultiLinesChartViewComponentModel | PieChartViewComponentModel | BarChartViewComponentModel;
656
+ export type ChartViewComponentTypes = SingleLineChartViewComponentModel | MultiLinesChartViewComponentModel | PieChartViewComponentModel | BarChartViewComponentModel;
642
657
  export type ChartTypeTheme = 'default' | 'success' | 'primary' | 'danger' | 'warning';
643
658
  /**
644
659
  * @version 1.12.0
@@ -11,7 +11,9 @@ export interface BaseListPageViewComponentModel extends BaseComponentModel {
11
11
  */
12
12
  tags?: TagModel;
13
13
  }
14
+ export type ListPageViewComponentTypes = TitleAndCaptionViewComponentModel;
14
15
  export interface TitleAndCaptionViewComponentModel extends BaseListPageViewComponentModel {
16
+ type: 'titleAndCaption';
15
17
  title: LocalizedKey;
16
18
  caption: LocalizedKey;
17
19
  headerContent?: ListItemHeaderContent;
@@ -17,5 +17,5 @@ export type SelectPageSearchBarConfig = {
17
17
  /**
18
18
  * @label Placeholder
19
19
  */
20
- placeholder: LocalizedKey;
20
+ placeholder?: LocalizedKey;
21
21
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skedulo/mex-types",
3
- "version": "1.35.0",
3
+ "version": "1.36.0",
4
4
  "engines": {
5
5
  "node": "18"
6
6
  },