@zohodesk/library-platform 1.1.3-exp.3 → 1.1.3-temp-1

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.
Files changed (72) hide show
  1. package/es/bc/zlist/Constants.js +3 -1
  2. package/es/bc/zrecord/Constants.js +3 -1
  3. package/es/cc/table-connected/Properties.js +16 -0
  4. package/es/cc/table-list/Constants.js +4 -0
  5. package/es/cc/table-list/Properties.js +25 -0
  6. package/es/cc/table-list/row/Properties.js +44 -0
  7. package/es/index.js +2 -1
  8. package/es/library/dot/components/table-list/frameworks/hooks/useDropIndicator.js +8 -0
  9. package/es/library/dot/components/table-list/frameworks/hooks/useRowData.js +8 -0
  10. package/es/library/dot/components/table-list/frameworks/hooks/useTableRowReorder.js +105 -0
  11. package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +85 -15
  12. package/es/library/dot/components/table-list/frameworks/ui/css/TableList.module.css +241 -1
  13. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Header.js +28 -4
  14. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Rows.js +25 -9
  15. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/MassAction.js +11 -2
  16. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +50 -8
  17. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowSelection.js +6 -1
  18. package/es/library/dot/components/table-list/frameworks/utils/getHeaderClasses.js +37 -0
  19. package/es/library/dot/components/table-list/frameworks/utils/getTableListClassName.js +37 -0
  20. package/es/library/dot/components/table-list/frameworks/utils/reOrder.js +90 -0
  21. package/es/library/dot/legacy-to-new-arch/text-area/frameworks/ui/TextAreaView.js +1 -1
  22. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ClientActionsAdapter.js +96 -0
  23. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/EventHandlersFactory.js +11 -3
  24. package/es/platform/client-actions/template-resolver/index.js +1 -0
  25. package/es/platform/client-actions/translators/context-resolver/index.js +6 -6
  26. package/es/platform/components/table-connected/adapters/controllers/ReOrderFinishController.js +21 -0
  27. package/es/platform/components/table-connected/adapters/resources/SmartTableResource.js +14 -0
  28. package/es/platform/components/table-connected/frameworks/EventHandlersFactory.js +5 -2
  29. package/es/platform/components/table-connected/frameworks/ListSdkFactory.js +4 -2
  30. package/es/platform/components/table-connected/frameworks/TableConnectedView.js +5 -1
  31. package/es/platform/data-source/http-template/reOrderRecord.js +44 -0
  32. package/es/platform/data-source/index.js +2 -0
  33. package/es/platform/sdk/application/interfaces/gateways/AbstractResource.js +1 -2
  34. package/es/platform/sdk/domain/entities/ResourceManager.js +1 -1
  35. package/es/platform/zform/adapters/presenter/FormTranslator.js +6 -127
  36. package/es/platform/zform/adapters/presenter/translators/SectionTranslator.js +32 -0
  37. package/es/platform/zform/adapters/presenter/translators/fields/BooleanFieldTranslator.js +20 -0
  38. package/es/platform/zform/adapters/presenter/translators/fields/CurrencyFieldTranslator.js +30 -0
  39. package/es/platform/zform/adapters/presenter/translators/fields/DateFieldTranslator.js +21 -0
  40. package/es/platform/zform/adapters/presenter/translators/fields/DateTimeFieldTranslator.js +21 -0
  41. package/es/platform/zform/adapters/presenter/translators/fields/DecimalFieldTranslator.js +30 -0
  42. package/es/platform/zform/adapters/presenter/translators/fields/EmailFieldTranslator.js +30 -0
  43. package/es/platform/zform/adapters/presenter/translators/fields/LookUpFieldTranslator.js +30 -0
  44. package/es/platform/zform/adapters/presenter/translators/fields/MultiselectFieldTranslator.js +29 -0
  45. package/es/platform/zform/adapters/presenter/translators/fields/NumberFieldTranslator.js +30 -0
  46. package/es/platform/zform/adapters/presenter/translators/fields/PercentageFieldTranslator.js +30 -0
  47. package/es/platform/zform/adapters/presenter/translators/fields/PhoneFieldTranslator.js +30 -0
  48. package/es/platform/zform/adapters/presenter/translators/fields/PicklistFieldTranslator.js +29 -0
  49. package/es/platform/zform/adapters/presenter/translators/fields/TextAreaFieldTranslator.js +30 -0
  50. package/es/platform/zform/adapters/presenter/translators/fields/TextFieldTranslator.js +27 -0
  51. package/es/platform/zform/adapters/presenter/translators/fields/URLFieldTranslator.js +30 -0
  52. package/es/platform/zform/adapters/presenter/translators/fields/index.js +15 -0
  53. package/es/platform/zform/applications/usecases/MyFormSuccessUseCase.js +3 -1
  54. package/es/platform/zform/domain/ZField.js +66 -17
  55. package/es/platform/zform/domain/ZSection.js +20 -7
  56. package/es/platform/zlist/adapters/controllers/ReOrderController.js +25 -0
  57. package/es/platform/zlist/adapters/controllers/ReOrderFailedController.js +26 -0
  58. package/es/platform/zlist/adapters/gateways/Repository.js +7 -0
  59. package/es/platform/zlist/adapters/gateways/Service.js +8 -0
  60. package/es/platform/zlist/adapters/presenters/TableTranslator.js +6 -2
  61. package/es/platform/zlist/adapters/presenters/translators/ColumnTranslator.js +9 -10
  62. package/es/platform/zlist/adapters/presenters/utils/DefaultClientActions.js +1 -1
  63. package/es/platform/zlist/applications/interfaces/input/ReOrderRecordUseCaseInput.js +1 -0
  64. package/es/platform/zlist/applications/usecases/ReOrderFailedUseCase.js +22 -0
  65. package/es/platform/zlist/applications/usecases/ReOrderUseCase.js +25 -0
  66. package/es/platform/zlist/applications/usecases/RecordSuccessCallbackUsecase.js +24 -3
  67. package/es/platform/zlist/domain/entities/List.js +66 -2
  68. package/es/platform/zlist/frameworks/EventHandlersFactory.js +7 -3
  69. package/es/platform/zlist/frameworks/ZListBehaviourFactory.js +2 -1
  70. package/es/platform/zrecord/domain/entities/GetReOrderRecordsStrategy.js +40 -0
  71. package/es/platform/zrecord/domain/entities/RecordsManager.js +3 -1
  72. package/package.json +6 -3
@@ -0,0 +1,25 @@
1
+ import AbstractController from "./AbstractController";
2
+ export default class ReOrderController extends AbstractController {
3
+ handle(event) {
4
+ const {
5
+ state,
6
+ updateState,
7
+ dispatch,
8
+ action
9
+ } = event;
10
+ const {
11
+ newIndex,
12
+ oldIndex
13
+ } = action.payload;
14
+ const {
15
+ reOrderUseCase
16
+ } = this.service;
17
+ reOrderUseCase.updateDependency(state, updateState);
18
+ reOrderUseCase.execute({
19
+ dispatch,
20
+ newIndex,
21
+ oldIndex
22
+ });
23
+ }
24
+
25
+ }
@@ -0,0 +1,26 @@
1
+ import AbstractController from "./AbstractController";
2
+ export default class ReOrderController extends AbstractController {
3
+ handle(event) {
4
+ const {
5
+ state,
6
+ updateState,
7
+ dispatch,
8
+ action
9
+ } = event;
10
+ const {
11
+ newIndex,
12
+ oldIndex
13
+ } = action.payload;
14
+ const {
15
+ reOrderFailedUseCase
16
+ } = this.service;
17
+ reOrderFailedUseCase.updateDependency(state, updateState);
18
+ reOrderFailedUseCase.execute({
19
+ dispatch,
20
+ newIndex,
21
+ oldIndex,
22
+ metaData: action.metaData
23
+ });
24
+ }
25
+
26
+ }
@@ -39,6 +39,13 @@ class Repository {
39
39
  return list;
40
40
  }
41
41
 
42
+ getRecords() {
43
+ const {
44
+ zrecord
45
+ } = this.state.behaviours;
46
+ return zrecord.records;
47
+ }
48
+
42
49
  getZListState() {
43
50
  const {
44
51
  zlist
@@ -13,6 +13,8 @@ import RecordExecuteFailedUseCase from "../../applications/usecases/RecordExecut
13
13
  import UpdateSuccessUseCase from "../../applications/usecases/UpdateSuccessUseCase";
14
14
  import DeleteSuccessUseCase from "../../applications/usecases/DeleteSuccessUseCase";
15
15
  import RecordSuccessCallbackUsecase from "../../applications/usecases/RecordSuccessCallbackUsecase";
16
+ import ReOrderUseCase from "../../applications/usecases/ReOrderUseCase";
17
+ import ReOrderFailedUseCase from "../../applications/usecases/ReOrderFailedUseCase";
16
18
 
17
19
  class Service {
18
20
  constructor(dependencies) {
@@ -44,6 +46,10 @@ class Service {
44
46
 
45
47
  _defineProperty(this, "deleteSuccessUseCase", void 0);
46
48
 
49
+ _defineProperty(this, "reOrderUseCase", void 0);
50
+
51
+ _defineProperty(this, "reOrderFailedUseCase", void 0);
52
+
47
53
  this.initializeUseCase = new InitializeUseCase(this.dependencies);
48
54
  this.propertiesChangeUseCase = new PropertiesChangeUseCase(this.dependencies);
49
55
  this.fetchMoreUseCase = new FetchMoreUseCase(this.dependencies);
@@ -57,6 +63,8 @@ class Service {
57
63
  this.recordUpdateUseCase = new RecordUpdateUseCase(this.dependencies);
58
64
  this.updateSuccessUseCase = new UpdateSuccessUseCase(this.dependencies);
59
65
  this.deleteSuccessUseCase = new DeleteSuccessUseCase(this.dependencies);
66
+ this.reOrderUseCase = new ReOrderUseCase(this.dependencies);
67
+ this.reOrderFailedUseCase = new ReOrderFailedUseCase(this.dependencies);
60
68
  }
61
69
 
62
70
  }
@@ -26,7 +26,8 @@ export default class TableTranslator {
26
26
  } = state;
27
27
  const {
28
28
  componentMapping,
29
- context
29
+ context,
30
+ reOrderConfig
30
31
  } = properties;
31
32
  const {
32
33
  localStorage: localStorageBehaviour,
@@ -48,7 +49,8 @@ export default class TableTranslator {
48
49
  } = fallbackToDefault(behaviours, {}); // FIX: behaviours should be available by default
49
50
 
50
51
  const {
51
- sortBy
52
+ sortBy,
53
+ isReOrderLoading
52
54
  } = fallbackToDefault(zlist, {}); // FIX: zlist should be available by default
53
55
 
54
56
  const {
@@ -103,6 +105,7 @@ export default class TableTranslator {
103
105
  properties,
104
106
  behaviours,
105
107
  viewModel: {
108
+ reOrderConfig,
106
109
  selection: SelectionTranslator(state),
107
110
  focussedRow: focussedIndex,
108
111
  sortBy,
@@ -120,6 +123,7 @@ export default class TableTranslator {
120
123
  },
121
124
  keyboardControlsConfig,
122
125
  isLoading,
126
+ isReOrderLoading,
123
127
  emptyStateUiType: componentMapping.emptyState || '',
124
128
  data: fields.length ? data : {
125
129
  headers: EMPTY_ARRAY,
@@ -34,7 +34,8 @@ function ColumnTranslator(field, record, fieldComponentMapping, fieldActions, co
34
34
  console.warn(`The string format for componentMapping will soon be deprecated. Please update to the new JSON format. REF : ${JSON.stringify(fieldEntry)}`);
35
35
  }
36
36
 
37
- const value = isCustomField ? (_record$cf = record.cf) === null || _record$cf === void 0 ? void 0 : _record$cf[name] : record[name];
37
+ let tempValue = undefined;
38
+ let value = isCustomField ? (_record$cf = record.cf) === null || _record$cf === void 0 ? void 0 : _record$cf[name] : record[name];
38
39
  const actions = ClientActionsTranslator.transform(fieldActions, {
39
40
  field,
40
41
  record
@@ -56,7 +57,12 @@ function ColumnTranslator(field, record, fieldComponentMapping, fieldActions, co
56
57
  }
57
58
 
58
59
  if (field.type == "LookUp") {
59
- value.url = getLookupUrlConstructions({
60
+ // temp fix for when lookup field don't have value !object
61
+ tempValue = typeof value !== 'object' ? {
62
+ name: value,
63
+ id: value
64
+ } : value;
65
+ tempValue.url = getLookupUrlConstructions({
60
66
  field,
61
67
  value,
62
68
  context
@@ -72,7 +78,7 @@ function ColumnTranslator(field, record, fieldComponentMapping, fieldActions, co
72
78
  if (fieldEntry && typeof fieldEntry === 'object') {
73
79
  let data = {
74
80
  actions,
75
- ...fieldTranslator(field, finalValue, {
81
+ ...fieldTranslator(field, tempValue ? tempValue : finalValue, {
76
82
  recordId: record.id
77
83
  })
78
84
  };
@@ -82,16 +88,9 @@ function ColumnTranslator(field, record, fieldComponentMapping, fieldActions, co
82
88
  context
83
89
  });
84
90
  data.type = fieldEntry.UIComponentName;
85
- console.log(data, "====>>> custom field modal");
86
91
  return data;
87
92
  }
88
93
 
89
- console.log({
90
- actions,
91
- ...fieldTranslator(field, finalValue, {
92
- recordId: record.id
93
- })
94
- }, "====>>> normal pre-defined field modal");
95
94
  return {
96
95
  actions,
97
96
  ...fieldTranslator(field, finalValue, {
@@ -39,7 +39,7 @@ class DefaultClientActions {
39
39
  },
40
40
  conditions: {
41
41
  fields: [{
42
- fieldName: 'field.isSortable',
42
+ fieldName: '{{@context.field.isSortable}}',
43
43
  condition: '=',
44
44
  value: ['true']
45
45
  }],
@@ -0,0 +1,22 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class ReOrderFailedUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ metaData
7
+ } = input;
8
+ const {
9
+ repository,
10
+ presenter
11
+ } = this.dependencies;
12
+ const list = repository.getList();
13
+
14
+ if (metaData.isReOrder) {
15
+ list.reOrderEnded();
16
+ presenter.updateView(list.toObject());
17
+ }
18
+ }
19
+
20
+ }
21
+
22
+ export default ReOrderFailedUseCase;
@@ -0,0 +1,25 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class ReOrderUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ dispatch,
7
+ newIndex,
8
+ oldIndex
9
+ } = input;
10
+ const {
11
+ repository,
12
+ presenter
13
+ } = this.dependencies;
14
+ const list = repository.getList();
15
+ list.reOrderStarted();
16
+ presenter.updateView(list.toObject());
17
+ dispatch(list.getReOrderRecordAction({
18
+ newIndex,
19
+ oldIndex
20
+ }));
21
+ }
22
+
23
+ }
24
+
25
+ export default ReOrderUseCase;
@@ -1,18 +1,39 @@
1
+ import { SET_RECORDS } from "../../../../bc/zrecord/Constants";
1
2
  import AbstractUseCase from "./AbstractUseCase";
2
3
 
3
4
  class RecordSuccessCallbackUsecase extends AbstractUseCase {
4
- execute(input) {
5
- const {
5
+ execute(_ref) {
6
+ var _metaData$sourceMetaD;
7
+
8
+ let {
6
9
  dispatch,
7
10
  payload,
8
11
  metaData
9
- } = input;
12
+ } = _ref;
10
13
  const {
11
14
  repository,
12
15
  presenter
13
16
  } = this.dependencies;
14
17
  const list = repository.getList();
15
18
 
19
+ if ((_metaData$sourceMetaD = metaData.sourceMetaData) !== null && _metaData$sourceMetaD !== void 0 && _metaData$sourceMetaD.isReOrder) {
20
+ list.reOrderEnded();
21
+ presenter.updateView(list.toObject()); // convert to separate use-case
22
+
23
+ const {
24
+ oldIndex,
25
+ newIndex
26
+ } = payload.response;
27
+ const records = repository.getRecords();
28
+ const reordered = oldIndex === newIndex ? records : list.arrayMoveImmutable(records, oldIndex, newIndex);
29
+ dispatch({
30
+ type: SET_RECORDS,
31
+ payload: {
32
+ records: reordered
33
+ }
34
+ });
35
+ }
36
+
16
37
  if (list.isAcknowledgeBySortBy(metaData)) {
17
38
  list.setSortBy(metaData);
18
39
  presenter.updateView(list.toObject());
@@ -1,26 +1,36 @@
1
1
  import { RECORD_EXECUTE, RECORD_FETCH_MORE, RECORD_REFETCH, RecordApiActionName } from "../../../../bc/zrecord/Constants";
2
2
  import { FIELD_EXECUTE, FIELD_REFETCH } from "../../../../bc/zfield/Constants";
3
- import { ZLIST_RECORD_DELETE_FAILED, ZLIST_RECORD_DELETE_SUCCEEDED, ZLIST_RECORD_UPDATE_FAILED, ZLIST_RECORD_UPDATE_SUCCEEDED } from "../../../../bc/zlist/Constants";
3
+ import { ZLIST_RECORD_DELETE_FAILED, ZLIST_RECORD_DELETE_SUCCEEDED, ZLIST_RECORD_UPDATE_FAILED, ZLIST_RECORD_UPDATE_SUCCEEDED, ZLIST_RECORD_REORDER_FAILED } from "../../../../bc/zlist/Constants";
4
4
  import { CLIENTACTION_BEHAVIOUR_EXECUTE } from "../../../client-actions/bc/zclient-actions/Constants";
5
5
  import { SmartTableConstants } from "../../../../cc/table-connected";
6
6
  import SortBy from "./SortBy";
7
7
 
8
8
  class List {
9
- constructor(limit, sortBy, query, context, errorRecordFailed) {
9
+ constructor(limit, sortBy, query, context, isReOrderLoading, errorRecordFailed) {
10
10
  this.limit = limit;
11
11
  this.sortBy = sortBy;
12
12
  this.query = query;
13
13
  this.context = context;
14
+ this.isReOrderLoading = isReOrderLoading;
14
15
  this.errorRecordFailed = errorRecordFailed;
15
16
  }
16
17
 
17
18
  toObject() {
18
19
  return {
19
20
  sortBy: this.sortBy.toObject(),
21
+ isReOrderLoading: this.isReOrderLoading,
20
22
  errorRecordFailed: this.errorRecordFailed
21
23
  };
22
24
  }
23
25
 
26
+ reOrderStarted() {
27
+ this.isReOrderLoading = true;
28
+ }
29
+
30
+ reOrderEnded() {
31
+ this.isReOrderLoading = false;
32
+ }
33
+
24
34
  setSortBy(sortBy) {
25
35
  this.sortBy = new SortBy(sortBy.id, sortBy.name, sortBy.order);
26
36
  }
@@ -265,6 +275,21 @@ class List {
265
275
  });
266
276
  }
267
277
 
278
+ if (actionName === RecordApiActionName.GET_REORDERRECORD) {
279
+ const {
280
+ error
281
+ } = payload;
282
+ actions.push({
283
+ type: ZLIST_RECORD_REORDER_FAILED,
284
+ payload: {
285
+ error
286
+ },
287
+ metaData: {
288
+ isReOrder: true
289
+ }
290
+ });
291
+ }
292
+
268
293
  return actions;
269
294
  }
270
295
 
@@ -282,6 +307,28 @@ class List {
282
307
  };
283
308
  }
284
309
 
310
+ getReOrderRecordAction(_ref2) {
311
+ let {
312
+ newIndex,
313
+ oldIndex
314
+ } = _ref2;
315
+ const props = this.createApiProps();
316
+ return {
317
+ type: RECORD_EXECUTE,
318
+ metaData: {
319
+ isReOrder: true
320
+ },
321
+ payload: {
322
+ actionName: RecordApiActionName.GET_REORDERRECORD,
323
+ props: { ...props,
324
+ newIndex,
325
+ oldIndex
326
+ },
327
+ apiName: 'records'
328
+ }
329
+ };
330
+ }
331
+
285
332
  createMoreRecordFetchAction() {
286
333
  const props = this.createApiProps();
287
334
  return {
@@ -348,6 +395,23 @@ class List {
348
395
  };
349
396
  }
350
397
 
398
+ arrayMoveImmutable(data, fromIndex, toIndex) {
399
+ if (fromIndex === toIndex) {
400
+ return [...data];
401
+ }
402
+
403
+ const newOrder = [...data];
404
+ const startIndex = fromIndex < 0 ? newOrder.length + fromIndex : fromIndex;
405
+ const endIndex = toIndex < 0 ? newOrder.length + toIndex : toIndex;
406
+
407
+ if (startIndex >= 0 && startIndex < newOrder.length) {
408
+ const [item] = newOrder.splice(startIndex, 1);
409
+ newOrder.splice(endIndex, 0, item);
410
+ }
411
+
412
+ return newOrder;
413
+ }
414
+
351
415
  createAvailableFieldsRefetchAction() {
352
416
  const props = this.createApiProps();
353
417
  return {
@@ -4,7 +4,7 @@ import Service from "../adapters/gateways/Service";
4
4
  import Repository from "../adapters/gateways/Repository";
5
5
  import MountController from "../adapters/controllers/MountController";
6
6
  import PropertiesChangeController from "../adapters/controllers/PropertiesChangeController";
7
- import { ZLIST_DELETE_RECORD, ZLIST_DELETE_RECORDS, ZLIST_FETCH_MORE, ZLIST_RECORD_DELETE_SUCCEEDED, ZLIST_RECORD_UPDATE, ZLIST_RECORD_UPDATE_SUCCEEDED, ZLIST_SORT } from "../../../bc/zlist/Constants";
7
+ import { ZLIST_DELETE_RECORD, ZLIST_DELETE_RECORDS, ZLIST_FETCH_MORE, ZLIST_RECORD_DELETE_SUCCEEDED, ZLIST_RECORD_UPDATE, ZLIST_RECORD_UPDATE_SUCCEEDED, ZLIST_SORT, ZLIST_RECORD_REORDER, ZLIST_RECORD_REORDER_FAILED } from "../../../bc/zlist/Constants";
8
8
  import FetchMoreController from "../adapters/controllers/FetchMoreController";
9
9
  import SortController from "../adapters/controllers/SortController";
10
10
  import FieldChangeController from "../adapters/controllers/FieldChangeController";
@@ -20,6 +20,8 @@ import UpdateSuccessController from "../adapters/controllers/UpdateSuccessContro
20
20
  import DeleteSuccessController from "../adapters/controllers/DeleteSuccessController";
21
21
  import Presenter from "../adapters/presenters/Presenters";
22
22
  import RecordSuccessCallbackController from "../adapters/controllers/RecordSuccessCallbackController";
23
+ import ReOrderController from "../adapters/controllers/ReOrderController";
24
+ import ReOrderFailedController from "../adapters/controllers/ReOrderFailedController";
23
25
  export default class ActionHandlersFactory {
24
26
  static create() {
25
27
  const repository = new Repository();
@@ -44,8 +46,10 @@ export default class ActionHandlersFactory {
44
46
  [RECORD_EXECUTE_SUCCESS_CALLBACK]: new RecordSuccessCallbackController(service).handle,
45
47
  [ZLIST_RECORD_UPDATE_SUCCEEDED]: new UpdateSuccessController(service).handle,
46
48
  // ({ dispatch, action }) => dispatch({ type: 'SMART_TABLE#RECORD_UPDATED', payload: action.payload }),
47
- [ZLIST_RECORD_DELETE_SUCCEEDED]: new DeleteSuccessController(service).handle // ({ dispatch, action }) => dispatch({ type: 'SMART_TABLE#RECORD_DELETED', payload: { id: action.payload.id } })
48
-
49
+ [ZLIST_RECORD_DELETE_SUCCEEDED]: new DeleteSuccessController(service).handle,
50
+ // ({ dispatch, action }) => dispatch({ type: 'SMART_TABLE#RECORD_DELETED', payload: { id: action.payload.id } })
51
+ [ZLIST_RECORD_REORDER]: new ReOrderController(service).handle,
52
+ [ZLIST_RECORD_REORDER_FAILED]: new ReOrderFailedController(service).handle
49
53
  };
50
54
  }
51
55
 
@@ -9,7 +9,8 @@ export default class ZListBehaviourFactory {
9
9
  id: '',
10
10
  name: '',
11
11
  order: 'none'
12
- }
12
+ },
13
+ isReOrderLoading: false
13
14
  }),
14
15
  eventHandlers: EventHandlersFactory.create(),
15
16
  properties: Properties
@@ -0,0 +1,40 @@
1
+ import { RECORD_EXECUTE_FAILED, RECORD_EXECUTE_SUCCEEDED, RECORD_EXECUTE_SUCCEEDED_NO_CONTENT } from "../../../../bc/zrecord/Constants";
2
+ export default class ReOrderRecordStrategy {
3
+ createSuccessEvents(response, metaData) {
4
+ const events = [];
5
+ let {
6
+ oldIndex,
7
+ newIndex
8
+ } = metaData.props;
9
+ events.push({
10
+ type: RECORD_EXECUTE_SUCCEEDED,
11
+ payload: {
12
+ oldIndex,
13
+ newIndex
14
+ },
15
+ metaData
16
+ });
17
+ return events;
18
+ }
19
+
20
+ createNoContentEvents(metaData) {
21
+ const events = [];
22
+ events.push({
23
+ type: RECORD_EXECUTE_SUCCEEDED_NO_CONTENT,
24
+ payload: {},
25
+ metaData
26
+ });
27
+ return events;
28
+ }
29
+
30
+ createFailureEvents(error, metaData) {
31
+ const events = [];
32
+ events.push({
33
+ type: RECORD_EXECUTE_FAILED,
34
+ payload: {},
35
+ metaData
36
+ });
37
+ return events;
38
+ }
39
+
40
+ }
@@ -5,11 +5,13 @@ import UpdateRecordStrategy from "./UpdateRecordStrategy";
5
5
  import DeleteRecordStrategy from "./DeleteRecordStrategy";
6
6
  import DeleteMultipleRecordStrategy from "./DeleteMultipleRecordStrategy";
7
7
  import GetRecordsStrategy from "./GetRecordsStrategy";
8
+ import GetReOrderRecordsStrategy from "./GetReOrderRecordsStrategy";
8
9
  const recordExecuteStrategiesMap = {
9
10
  [RecordApiActionName.UPDATE_RECORD]: new UpdateRecordStrategy(),
10
11
  [RecordApiActionName.DELETE_RECORD]: new DeleteRecordStrategy(),
11
12
  [RecordApiActionName.DELETE_RECORDS]: new DeleteMultipleRecordStrategy(),
12
- [RecordApiActionName.GET_RECORDS]: new GetRecordsStrategy()
13
+ [RecordApiActionName.GET_RECORDS]: new GetRecordsStrategy(),
14
+ [RecordApiActionName.GET_REORDERRECORD]: new GetReOrderRecordsStrategy()
13
15
  };
14
16
  export default class RecordsManager {
15
17
  constructor(records) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zohodesk/library-platform",
3
- "version": "1.1.3-exp.3",
3
+ "version": "1.1.3-temp-1",
4
4
  "description": "",
5
5
  "main": "es/index.js",
6
6
  "files": [
@@ -44,7 +44,7 @@
44
44
  "@typescript-eslint/parser": "^7.11.0",
45
45
  "@zoho/SecurityJS": "5.0.2",
46
46
  "@zohodesk-private/css-variable-migrator": "^1.0.7",
47
- "@zohodesk-private/desk-components": "1.3.7",
47
+ "@zohodesk-private/desk-components": "1.0.0-temp-53.3",
48
48
  "@zohodesk-private/node-plugins": "1.1.9",
49
49
  "@zohodesk/a11y": "2.2.6",
50
50
  "@zohodesk/codestandard-analytics": "0.0.2",
@@ -52,6 +52,7 @@
52
52
  "@zohodesk/components": "1.2.62",
53
53
  "@zohodesk/dot": "1.7.8",
54
54
  "@zohodesk/eslint-plugin-architecturerules": "0.0.5-exp-3",
55
+ "@zohodesk/eslint-plugin-no-hardcoding": "1.0.6",
55
56
  "@zohodesk/hooks": "2.0.5",
56
57
  "@zohodesk/icons": "1.0.72",
57
58
  "@zohodesk/layout": "3.1.0",
@@ -75,7 +76,7 @@
75
76
  "typescript": "4.9.5"
76
77
  },
77
78
  "peerDependencies": {
78
- "@zohodesk-private/desk-components": "1.3.7",
79
+ "@zohodesk-private/desk-components": "1.0.0-temp-53.3",
79
80
  "@zohodesk/a11y": "2.2.6",
80
81
  "@zohodesk/components": "1.2.62",
81
82
  "@zohodesk/dot": "1.7.8",
@@ -89,7 +90,9 @@
89
90
  "react-sortable-hoc": "1.11.0"
90
91
  },
91
92
  "dependencies": {
93
+ "@zohodesk/i18n": "^1.0.0-beta.33",
92
94
  "ajv": "6.12.6",
95
+ "array-move": "^4.0.0",
93
96
  "jsep": "0.3.5",
94
97
  "object-path-immutable": "4.1.2"
95
98
  }