@skedulo/mex-types 1.28.4 → 1.30.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/FlatPageViewComponentModel';
1
+ import { BaseFlatPageViewComponentModel, SkedButtonTheme } from '../view';
2
2
  import { SelectPageOnlineSource } from '../view';
3
3
  export type DollarExpressionType = string;
4
4
  export type DataExpressionType = string;
@@ -6,6 +6,16 @@ export type ValueExpressionType = string | ValueExpressionLogic[];
6
6
  export type LocalizedKey = string;
7
7
  export type OneLevelBindingObject = any;
8
8
  export type FunctionExpressionType = string;
9
+ /**
10
+ * @version 1.24.0
11
+ * @description online mode only
12
+ * Call the API using the query prop, then execute the expression with the data context and response from that API
13
+ * Used in mandatoryExpression
14
+ */
15
+ export type AsyncExpressionType = {
16
+ expression: DataExpressionType;
17
+ query: OnlineFetchDataQuery;
18
+ };
9
19
  export type TimezoneType = 'none' | 'job' | 'local';
10
20
  export type ValueExpressionLogic = {
11
21
  condition?: DataExpressionType;
@@ -1,4 +1,5 @@
1
1
  import { UIDefinition } from 'src/page';
2
+ import { AsyncExpressionType } from './CommonTypes';
2
3
  /**
3
4
  * Form definition status.
4
5
  * State flow:
@@ -109,7 +110,7 @@ interface MexMetadataForJob extends MexBaseMetadata {
109
110
  * @tooltip Job types where this form will be mandatory
110
111
  * @hidden true
111
112
  */
112
- mandatoryExpression?: string;
113
+ mandatoryExpression?: string | AsyncExpressionType;
113
114
  }
114
115
  /**
115
116
  * @area Metadata
@@ -1 +1 @@
1
- {"version":3,"file":"MexDefs.js","sourceRoot":"","sources":["../../src/common/MexDefs.ts"],"names":[],"mappings":";AAAA,iDAAiD;;;AAIjD;;;;;GAKG;AACH,IAAY,SA6BX;AA7BD,WAAY,SAAS;IACnB;;OAEG;IACH,4BAAe,CAAA;IACf;;OAEG;IACH,oCAAuB,CAAA;IACvB;;OAEG;IACH,oCAAuB,CAAA;IACvB;;OAEG;IACH,wCAA2B,CAAA;IAC3B;;OAEG;IACH,gDAAmC,CAAA;IACnC;;OAEG;IACH,oDAAuC,CAAA;IACvC;;OAEG;IACH,8BAAiB,CAAA;AACnB,CAAC,EA7BW,SAAS,yBAAT,SAAS,QA6BpB;AAgQD,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;AACnB,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B"}
1
+ {"version":3,"file":"MexDefs.js","sourceRoot":"","sources":["../../src/common/MexDefs.ts"],"names":[],"mappings":";AAAA,iDAAiD;;;AAKjD;;;;;GAKG;AACH,IAAY,SA6BX;AA7BD,WAAY,SAAS;IACnB;;OAEG;IACH,4BAAe,CAAA;IACf;;OAEG;IACH,oCAAuB,CAAA;IACvB;;OAEG;IACH,oCAAuB,CAAA;IACvB;;OAEG;IACH,wCAA2B,CAAA;IAC3B;;OAEG;IACH,gDAAmC,CAAA;IACnC;;OAEG;IACH,oDAAuC,CAAA;IACvC;;OAEG;IACH,8BAAiB,CAAA;AACnB,CAAC,EA7BW,SAAS,yBAAT,SAAS,QA6BpB;AAgQD,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;AACnB,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B"}
@@ -1,8 +1,8 @@
1
- import { ButtonGroupItemComponentModel, DataExpressionType, FunctionExpressionType, GroupByFeatureModel, ListPageAddNewDefaultDataType, LocalizedKey, OneLevelBindingObject, OnlineDeleteDataQuery, OnlineFetchDataQuery, OnlineFetchListDataQuery, OnlineUpsertDataQuery, OrderByModel, RoutingType, ValueExpressionType } from '../common/CommonTypes';
2
- import { BaseListPageViewComponentModel } from '../view/ListPageViewComponentModel';
3
- import { BaseComponentModel } from '../common/BaseComponentModel';
4
- import { BaseFlatPageViewComponentModel } from '../view/FlatPageViewComponentModel';
5
- import { ValidatorDefinitionModel } from '../validator/ValidatorModel';
1
+ import { ButtonGroupItemComponentModel, DataExpressionType, FunctionExpressionType, GroupByFeatureModel, ListPageAddNewDefaultDataType, LocalizedKey, OneLevelBindingObject, OnlineDeleteDataQuery, OnlineFetchDataQuery, OnlineFetchListDataQuery, OnlineUpsertDataQuery, OrderByModel, RoutingType, ValueExpressionType } from '../common';
2
+ import { BaseListPageViewComponentModel } from '../view';
3
+ import { BaseComponentModel } from '../common';
4
+ import { BaseFlatPageViewComponentModel } from '../view';
5
+ import { ValidatorDefinitionModel } from '../validator';
6
6
  /**
7
7
  * @area formProperties
8
8
  */
@@ -168,11 +168,7 @@ export interface TagItemModel {
168
168
  * @label List
169
169
  * @value list
170
170
  */
171
- export interface ListPageComponentModel extends BasePageComponentModel {
172
- /**
173
- * @label List header
174
- */
175
- header?: ListPageHeaderModel;
171
+ export interface ListPageComponentModel extends BasePageComponentModel, SublistOfFlatPageComponentModel {
176
172
  /**
177
173
  * @label List header title
178
174
  * @deprecated Use title in { ListPageComponentModel.header.title }
@@ -183,53 +179,19 @@ export interface ListPageComponentModel extends BasePageComponentModel {
183
179
  * @deprecated Use description in { ListPageComponentModel.header.description }
184
180
  */
185
181
  headerDescription?: LocalizedKey;
186
- /**
187
- * @label Add New button
188
- */
189
- addNew: AddNewButtonData;
190
182
  /**
191
183
  * @label Button group
192
184
  * @deprecated Use buttonGroup in { ListPageComponentModel.header.buttonGroup }
193
185
  */
194
186
  buttonGroup?: ButtonGroupViewComponentModel;
195
- /**
196
- * @label Data Source
197
- * @description Define only when using offline mode
198
- */
199
- sourceExpression?: DataExpressionType;
200
187
  /**
201
188
  * @label Enable Search
202
189
  */
203
190
  search?: ListPageSearchComponentModel;
204
- /**
205
- * @label Empty text
206
- */
207
- emptyText: LocalizedKey;
208
- /**
209
- * @label Layout
210
- */
211
- itemLayout: BaseListPageViewComponentModel;
212
191
  /**
213
192
  * @label Footer text
214
193
  */
215
194
  footerText?: string;
216
- /**
217
- * @label Click Destination
218
- */
219
- itemClickDestination: RoutingType;
220
- /**
221
- * @label Add a section
222
- */
223
- hasSection?: GroupByFeatureModel;
224
- /**
225
- * @label Order by
226
- */
227
- orderBy?: OrderByModel;
228
- /**
229
- * @label Online mode definition
230
- * @version 1.10.0
231
- */
232
- onlineMode?: ListPageOnlineModeModel;
233
195
  }
234
196
  /**
235
197
  * @version 1.10.0
@@ -371,6 +333,7 @@ export interface FlatPageComponentModel extends BasePageComponentModel {
371
333
  /**
372
334
  * @label Items
373
335
  * @hidden true
336
+ * @deprecated Use items in { FlatPageComponentModel.singleDef.flatComponents }
374
337
  */
375
338
  items?: BaseFlatPageViewComponentModel[];
376
339
  header?: FlatPageHeaderModel;
@@ -385,6 +348,10 @@ export interface FlatPageComponentModel extends BasePageComponentModel {
385
348
  };
386
349
  mode?: FlatPageMode;
387
350
  stepDef?: FlatPageStepModeDefModel;
351
+ /**
352
+ * @version 1.13.0
353
+ */
354
+ singleDef?: FlatPageSingleModeDefModel;
388
355
  }
389
356
  /**
390
357
  * @version 1.10.0
@@ -400,6 +367,13 @@ export type ReloadRequest = {
400
367
  key: string;
401
368
  args: OneLevelBindingObject;
402
369
  };
370
+ /**
371
+ * @version 1.13.0
372
+ */
373
+ export type FlatPageSingleModeDefModel = {
374
+ flatComponents?: BaseFlatPageViewComponentModel[];
375
+ list?: SublistOfFlatPageComponentModel;
376
+ };
403
377
  export type FlatPageStepModeDefModel = {
404
378
  stepValue: DataExpressionType;
405
379
  autoSubmit?: DataExpressionType | boolean;
@@ -435,6 +409,46 @@ export interface BasePageHeaderModel {
435
409
  */
436
410
  messageAlert?: MessageAlertModel;
437
411
  }
412
+ export interface SublistOfFlatPageComponentModel {
413
+ /**
414
+ * @label List header
415
+ */
416
+ header?: ListPageHeaderModel;
417
+ /**
418
+ * @label Add New button
419
+ */
420
+ addNew: AddNewButtonData;
421
+ /**
422
+ * @label Data Source
423
+ * @description Define only when using offline mode
424
+ */
425
+ sourceExpression?: DataExpressionType;
426
+ /**
427
+ * @label Empty text
428
+ */
429
+ emptyText: LocalizedKey;
430
+ /**
431
+ * @label Layout
432
+ */
433
+ itemLayout: BaseListPageViewComponentModel;
434
+ /**
435
+ * @label Click Destination
436
+ */
437
+ itemClickDestination: RoutingType;
438
+ /**
439
+ * @label Add a section
440
+ */
441
+ hasSection?: GroupByFeatureModel;
442
+ /**
443
+ * @label Order by
444
+ */
445
+ orderBy?: OrderByModel;
446
+ /**
447
+ * @label Online mode definition
448
+ * @version 1.10.0
449
+ */
450
+ onlineMode?: ListPageOnlineModeModel;
451
+ }
438
452
  export interface ListPageHeaderModel extends BasePageHeaderModel {
439
453
  buttonGroup?: ButtonGroupViewComponentModel;
440
454
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skedulo/mex-types",
3
- "version": "1.28.4",
3
+ "version": "1.30.0",
4
4
  "engines": {
5
5
  "node": "18"
6
6
  },