@zohodesk/library-platform 1.1.2 → 1.1.3

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 (147) hide show
  1. package/es/bc/column-chooser/Constants.js +4 -0
  2. package/es/bc/column-chooser/EventHandlers.js +2 -0
  3. package/es/bc/column-chooser/Events.js +59 -0
  4. package/es/bc/column-chooser/Properties.js +18 -0
  5. package/es/bc/keyboard-controls/Constants.js +5 -0
  6. package/es/bc/keyboard-controls/Events.js +51 -0
  7. package/es/bc/keyboard-controls/Properties.js +11 -0
  8. package/es/bc/keyboard-controls/types/KeyboardControlBehaviourState.js +1 -0
  9. package/es/bc/zlist/Properties.js +15 -0
  10. package/es/cc/fields/field/Properties.js +10 -1
  11. package/es/cc/fields/index.js +1 -1
  12. package/es/cc/table-column-chooser/Constants.js +6 -0
  13. package/es/cc/table-column-chooser/Events.js +69 -0
  14. package/es/cc/table-column-chooser/Properties.js +122 -0
  15. package/es/cc/table-column-chooser/index.js +3 -0
  16. package/es/cc/table-connected/Properties.js +16 -0
  17. package/es/cc/table-connected/constants/Events.js +4 -1
  18. package/es/cc/table-list/Properties.js +27 -1
  19. package/es/cc/table-list/data-types/KeyboardControlsConfig.js +1 -0
  20. package/es/cc/table-list/row/Properties.js +18 -0
  21. package/es/desk-frameworks/table-connected/adapters/controllers/ColumnChooserOpenedController.js +36 -0
  22. package/es/desk-frameworks/table-connected/adapters/controllers/ColumnChooserUpdateController.js +25 -0
  23. package/es/desk-frameworks/table-connected/frameworks/EventHandlersFactory.js +8 -2
  24. package/es/desk-frameworks/table-connected/frameworks/TableConnectedFactory.js +5 -2
  25. package/es/desk-frameworks/table-connected/frameworks/TableConnectedView.js +9 -6
  26. package/es/library/behaviours/keyboard-controls/adapters/controllers/AbstractController.js +9 -0
  27. package/es/library/behaviours/keyboard-controls/adapters/controllers/DestructController.js +20 -0
  28. package/es/library/behaviours/keyboard-controls/adapters/controllers/DownArrowPressController.js +20 -0
  29. package/es/library/behaviours/keyboard-controls/adapters/controllers/EnterPressController.js +24 -0
  30. package/es/library/behaviours/keyboard-controls/adapters/controllers/FocusNextController.js +20 -0
  31. package/es/library/behaviours/keyboard-controls/adapters/controllers/FocusPreviousController.js +20 -0
  32. package/es/library/behaviours/keyboard-controls/adapters/controllers/InitializeController.js +20 -0
  33. package/es/library/behaviours/keyboard-controls/adapters/controllers/SpacePressController.js +24 -0
  34. package/es/library/behaviours/keyboard-controls/adapters/controllers/UpArrowPressController.js +20 -0
  35. package/es/library/behaviours/keyboard-controls/adapters/gateways/KeyboardHandler.js +81 -0
  36. package/es/library/behaviours/keyboard-controls/adapters/gateways/Repository.js +47 -0
  37. package/es/library/behaviours/keyboard-controls/adapters/gateways/Service.js +40 -0
  38. package/es/library/behaviours/keyboard-controls/adapters/presenters/Presenter.js +39 -0
  39. package/es/library/behaviours/keyboard-controls/applications/interfaces/UseCase.js +0 -0
  40. package/es/library/behaviours/keyboard-controls/applications/interfaces/UseCaseDependencies.js +1 -0
  41. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IKeyboardHandler.js +1 -0
  42. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IRepository.js +1 -0
  43. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IService.js +1 -0
  44. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/DestructInputModel.js +1 -0
  45. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/DownArrowPressInputModel.js +1 -0
  46. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/EnterPressInputModel.js +1 -0
  47. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/FocusNextInputModel.js +1 -0
  48. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/FocusPreviousInputModel.js +1 -0
  49. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/InitializeInputModel.js +1 -0
  50. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/RowActionInputModel.js +1 -0
  51. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/SelectionInputModel.js +1 -0
  52. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/SpacePressInputModel.js +1 -0
  53. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/UpArrowPressInputModel.js +1 -0
  54. package/es/library/behaviours/keyboard-controls/applications/interfaces/output/IPresenter.js +1 -0
  55. package/es/library/behaviours/keyboard-controls/applications/interfaces/output/OutputModel.js +1 -0
  56. package/es/library/behaviours/keyboard-controls/applications/usecases/AbstractUseCase.js +19 -0
  57. package/es/library/behaviours/keyboard-controls/applications/usecases/DestructUsecase.js +17 -0
  58. package/es/library/behaviours/keyboard-controls/applications/usecases/DownArrowPress.js +16 -0
  59. package/es/library/behaviours/keyboard-controls/applications/usecases/EnterPress.js +19 -0
  60. package/es/library/behaviours/keyboard-controls/applications/usecases/FocusNextUsecase.js +16 -0
  61. package/es/library/behaviours/keyboard-controls/applications/usecases/FocusPreviousUsecase.js +16 -0
  62. package/es/library/behaviours/keyboard-controls/applications/usecases/InitializeUsecase.js +20 -0
  63. package/es/library/behaviours/keyboard-controls/applications/usecases/SpacePress.js +19 -0
  64. package/es/library/behaviours/keyboard-controls/applications/usecases/UpArrowPress.js +16 -0
  65. package/es/library/behaviours/keyboard-controls/domain/entities/KeyboardControls.js +87 -0
  66. package/es/library/behaviours/keyboard-controls/domain/entities/interface/IKeyboardControls.js +1 -0
  67. package/es/library/behaviours/keyboard-controls/domain/entities/interface/KeyboardControlModel.js +1 -0
  68. package/es/library/behaviours/keyboard-controls/frameworks/EventHandlerFactory.js +48 -0
  69. package/es/library/behaviours/keyboard-controls/frameworks/KeyboardControlBehaviourFactory.js +23 -0
  70. package/es/library/custom-component/frameworks/ui/ComponentRegistry.js +8 -0
  71. package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +4 -0
  72. package/es/library/dot/components/table-list/adapters/controllers/KeyboardRowClickController.js +36 -0
  73. package/es/library/dot/components/table-list/adapters/controllers/KeyboardRowSelectController.js +31 -0
  74. package/es/library/dot/components/table-list/adapters/controllers/index.js +3 -1
  75. package/es/library/dot/components/table-list/adapters/presenters/TableTranslator.js +5 -3
  76. package/es/library/dot/components/table-list/frameworks/ui/EventHandlersFactory.js +4 -1
  77. package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +10 -3
  78. package/es/library/dot/components/table-list/frameworks/ui/css/TableList.module.css +3 -0
  79. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Header.js +9 -10
  80. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Rows.js +7 -3
  81. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/HeaderData.js +7 -2
  82. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/MassAction.js +28 -0
  83. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +5 -0
  84. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowData.js +7 -2
  85. package/es/library/dot/legacy-to-new-arch/table-column-chooser/frameworks/ui/TableColumnChooser.js +11 -0
  86. package/es/library/dot/legacy-to-new-arch/table-column-chooser/frameworks/ui/TableColumnChooserView.js +79 -0
  87. package/es/library/dot/legacy-to-new-arch/table-field-components/lookup-field/frameworks/ui/LookupFieldView.js +6 -8
  88. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActionsRenderer.module.css +0 -6
  89. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActionsRendererView.js +1 -1
  90. package/es/platform/column-chooser/adapters/controllers/AbstractController.js +10 -0
  91. package/es/platform/column-chooser/adapters/controllers/ColumnChooserCloseController.js +21 -0
  92. package/es/platform/column-chooser/adapters/controllers/ColumnChooserOpenController.js +26 -0
  93. package/es/platform/column-chooser/adapters/controllers/ColumnChooserReorderController.js +26 -0
  94. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSaveController.js +21 -0
  95. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSearchController.js +24 -0
  96. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSelectController.js +26 -0
  97. package/es/platform/column-chooser/adapters/gateways/Repository.js +38 -0
  98. package/es/platform/column-chooser/adapters/gateways/Service.js +34 -0
  99. package/es/platform/column-chooser/adapters/gateways/State.js +1 -0
  100. package/es/platform/column-chooser/adapters/presenters/Presenter.js +25 -0
  101. package/es/platform/column-chooser/applications/interfaces/UsecaseDependencies.js +1 -0
  102. package/es/platform/column-chooser/applications/interfaces/gateways/IRepository.js +1 -0
  103. package/es/platform/column-chooser/applications/interfaces/gateways/IService.js +1 -0
  104. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserCloseInput.js +1 -0
  105. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserOpenInput.js +1 -0
  106. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserReorderInput.js +1 -0
  107. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSaveInput.js +1 -0
  108. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSearchInput.js +1 -0
  109. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSelectInput.js +1 -0
  110. package/es/platform/column-chooser/applications/interfaces/output/BehaviourState.js +1 -0
  111. package/es/platform/column-chooser/applications/interfaces/output/IPresenter.js +1 -0
  112. package/es/platform/column-chooser/applications/usecases/AbstractUseCase.js +18 -0
  113. package/es/platform/column-chooser/applications/usecases/ColumnChooserCloseUseCase.js +34 -0
  114. package/es/platform/column-chooser/applications/usecases/ColumnChooserOpenUseCase.js +20 -0
  115. package/es/platform/column-chooser/applications/usecases/ColumnChooserReorderUseCase.js +20 -0
  116. package/es/platform/column-chooser/applications/usecases/ColumnChooserSaveUseCase.js +31 -0
  117. package/es/platform/column-chooser/applications/usecases/ColumnChooserSearchUseCase.js +19 -0
  118. package/es/platform/column-chooser/applications/usecases/ColumnChooserSelectUseCase.js +26 -0
  119. package/es/platform/column-chooser/domain/entities/ColumnChooserImp.js +95 -0
  120. package/es/platform/column-chooser/domain/entities/ReorderEntityImp.js +35 -0
  121. package/es/platform/column-chooser/domain/entities/SearchEntityImp.js +28 -0
  122. package/es/platform/column-chooser/domain/entities/SelectEntityImp.js +58 -0
  123. package/es/platform/column-chooser/domain/entities/interfaces/ColumnChooser.js +1 -0
  124. package/es/platform/column-chooser/domain/entities/interfaces/ReorderEntity.js +1 -0
  125. package/es/platform/column-chooser/domain/entities/interfaces/SearchEntity.js +1 -0
  126. package/es/platform/column-chooser/domain/entities/interfaces/SelectEntity.js +1 -0
  127. package/es/platform/column-chooser/frameworks/ColumnChooserBehaviourFactory.js +19 -0
  128. package/es/platform/column-chooser/frameworks/EventHandlersFactory.js +30 -0
  129. package/es/platform/data-source/http-template/updateSelectedFields.js +28 -0
  130. package/es/platform/data-source/index.js +2 -0
  131. package/es/platform/zfield/domain/entities/fields-manager/FieldsManager.js +3 -1
  132. package/es/platform/zfield/domain/entities/interfaces/FieldApiName.js +1 -0
  133. package/es/platform/zfield/frameworks/ZFieldBehaviourFactory.js +6 -1
  134. package/es/platform/zlist/adapters/gateways/Repository.js +4 -2
  135. package/es/platform/zlist/adapters/presenters/SelectionTranslator.js +92 -0
  136. package/es/platform/zlist/adapters/presenters/TableTranslator.js +32 -19
  137. package/es/platform/zlist/adapters/presenters/translators/ColumnTranslator.js +63 -4
  138. package/es/platform/zlist/adapters/presenters/translators/Row.js +1 -1
  139. package/es/platform/zlist/adapters/presenters/translators/fields/LookUpFieldTranslator.js +6 -6
  140. package/es/platform/zlist/adapters/presenters/translators/interfaces/State.js +2 -1
  141. package/es/platform/zlist/adapters/presenters/utils/DefaultClientActions.js +78 -6
  142. package/es/platform/zlist/applications/entities-factory/ListFactory.js +3 -2
  143. package/es/platform/zlist/applications/usecases/FetchMoreUseCase.js +4 -1
  144. package/es/platform/zlist/applications/usecases/RecordExecuteFailedUseCase.js +3 -1
  145. package/es/platform/zlist/domain/entities/List.js +14 -2
  146. package/package.json +6 -4
  147. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/SelectAll.js +0 -26
@@ -8,19 +8,19 @@ const LookUpFieldTranslator = (field, value, appendToActionPayload) => {
8
8
  } = field;
9
9
  const {
10
10
  id,
11
- firstName,
12
- lastName,
13
- photoURL = ''
11
+ name: nameValue,
12
+ photoURL,
13
+ url
14
14
  } = value;
15
- const lookupName = `${firstName} ${lastName}`;
16
15
  return LookupFieldModel({
17
16
  uiType: uiType || FieldTypes.LookUpField,
18
17
  appendToActionPayload,
19
18
  name,
20
19
  value: {
21
20
  id,
22
- name: lookupName,
23
- photoURL
21
+ name: nameValue,
22
+ photoURL,
23
+ url
24
24
  }
25
25
  });
26
26
  };
@@ -1 +1,2 @@
1
- export {};
1
+ import { BehaviourState as ColumnChooserBehaviourState } from "../../../../../column-chooser/applications/interfaces/output/BehaviourState";
2
+ export { ColumnChooserBehaviourState };
@@ -1,8 +1,18 @@
1
+ /* eslint-disable max-lines-per-function */
1
2
  import ClientAction from "../../../../client-actions/behaviour/zclient-actions/domain/entities/ClientAction";
3
+ import { TableListConstants } from "../../../../../cc/table-list";
4
+ import { CheckboxConstants } from "../../../../../cc/checkbox";
5
+ const CHECKBOX_TOGGLED = CheckboxConstants.CHECKBOX_TOGGLED;
6
+ const TABLE_LIST_TOGGLE_ALL_SELECTION = TableListConstants.TABLE_LIST_TOGGLE_ALL_SELECTION;
2
7
 
3
8
  class DefaultClientActions {
4
9
  static constructAction(clientAction) {
5
- return new ClientAction(clientAction).toObject();
10
+ return new ClientAction({ ...clientAction,
11
+ modules: ['MODULE'],
12
+ component: 'SmartTable',
13
+ modifiedTime: '2024-11-21T06:11:59.000Z',
14
+ createdTime: '2024-11-21T06:11:59.000Z'
15
+ }).toObject();
6
16
  }
7
17
 
8
18
  static constructSortAction() {
@@ -37,16 +47,78 @@ class DefaultClientActions {
37
47
  },
38
48
  location: 'header_actions',
39
49
  id: '4000000080009',
40
- modules: ['MODULE'],
41
- name: 'SortBy Action',
42
- component: 'SmartTable',
43
- modifiedTime: '2024-11-21T06:11:59.000Z',
44
- createdTime: '2024-11-21T06:11:59.000Z'
50
+ name: 'SortBy Action'
45
51
  });
46
52
  }
47
53
 
48
54
  static createSortActions(fields, clientActions) {
49
55
  return [...clientActions, this.constructSortAction()];
56
+ } // TODO: maxLimit: 15,
57
+ // TODO: saveLabel: 'Save',
58
+ // TODO: cancelLabel: 'Cancel',
59
+ // TODO: searchPlaceholder: 'Search',
60
+ // TODO: iconTooltip: 'Column Chooser',
61
+ // TODO: heading: 'Select & Reorder Column',
62
+ // TODO: infoText: 'Info Content',
63
+ // TODO: emptySearchMessage: 'No Results',
64
+ // TODO: maxLimitMessage: "You've reached the limit of 15 columns."
65
+
66
+
67
+ static createColumnChooserAction(_ref) {
68
+ let {
69
+ options,
70
+ searchString,
71
+ hasSearch,
72
+ errorMessage
73
+ } = _ref;
74
+ return this.constructAction({
75
+ uiComponentMapping: {
76
+ component: 'TableColumnChooser',
77
+ name: 'ColumnChooser',
78
+ propertiesValueMapping: {
79
+ options,
80
+ searchString,
81
+ hasSearch,
82
+ errorMessage
83
+ },
84
+ eventMappings: [],
85
+ id: '4000000080013'
86
+ },
87
+ conditions: {
88
+ fields: [],
89
+ pattern: '1'
90
+ },
91
+ location: 'non_field_header_actions',
92
+ id: '4000000080019',
93
+ name: 'ColumnChooser Action'
94
+ });
95
+ }
96
+
97
+ static createSelectAllAction() {
98
+ let isChecked = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
99
+ return this.constructAction({
100
+ uiComponentMapping: {
101
+ component: 'TableSelectAll',
102
+ name: 'SelectAll',
103
+ propertiesValueMapping: {
104
+ checked: isChecked
105
+ },
106
+ eventMappings: [{
107
+ payloadValueMapping: {},
108
+ sourceEvent: CHECKBOX_TOGGLED,
109
+ targetEvent: TABLE_LIST_TOGGLE_ALL_SELECTION,
110
+ id: '4000000080025'
111
+ }],
112
+ id: '4000000080023'
113
+ },
114
+ conditions: {
115
+ fields: [],
116
+ pattern: '1'
117
+ },
118
+ location: 'non_field_header_actions',
119
+ id: '4000000080029',
120
+ name: 'SelectAll Action'
121
+ });
50
122
  }
51
123
 
52
124
  }
@@ -6,9 +6,10 @@ class ListFactory {
6
6
  limit,
7
7
  sortBy,
8
8
  query,
9
- context
9
+ context,
10
+ errorRecordFailed
10
11
  } = input;
11
- return new List(limit, sortBy, query, context);
12
+ return new List(limit, sortBy, query, context, errorRecordFailed);
12
13
  }
13
14
 
14
15
  }
@@ -9,7 +9,10 @@ class FetchMoreUseCase extends AbstractUseCase {
9
9
  repository
10
10
  } = this.dependencies;
11
11
  const list = repository.getList();
12
- dispatch(list.createMoreRecordFetchAction());
12
+
13
+ if (!list.getErrorRecordFailed()) {
14
+ dispatch(list.createMoreRecordFetchAction());
15
+ }
13
16
  }
14
17
 
15
18
  }
@@ -8,10 +8,12 @@ class RecordExecuteFailedUseCase extends AbstractUseCase {
8
8
  payload
9
9
  } = input;
10
10
  const {
11
- repository
11
+ repository,
12
+ presenter
12
13
  } = this.dependencies;
13
14
  const list = repository.getList();
14
15
  const actions = list.getRecordExecuteFailedActions(payload, metaData);
16
+ presenter.updateView(list.toObject());
15
17
  actions.forEach(action => {
16
18
  dispatch(action);
17
19
  });
@@ -6,16 +6,18 @@ import { SmartTableConstants } from "../../../../cc/table-connected";
6
6
  import SortBy from "./SortBy";
7
7
 
8
8
  class List {
9
- constructor(limit, sortBy, query, context) {
9
+ constructor(limit, sortBy, query, context, errorRecordFailed) {
10
10
  this.limit = limit;
11
11
  this.sortBy = sortBy;
12
12
  this.query = query;
13
13
  this.context = context;
14
+ this.errorRecordFailed = errorRecordFailed;
14
15
  }
15
16
 
16
17
  toObject() {
17
18
  return {
18
- sortBy: this.sortBy.toObject()
19
+ sortBy: this.sortBy.toObject(),
20
+ errorRecordFailed: this.errorRecordFailed
19
21
  };
20
22
  }
21
23
 
@@ -207,12 +209,22 @@ class List {
207
209
  return actions;
208
210
  }
209
211
 
212
+ getErrorRecordFailed() {
213
+ return this.errorRecordFailed;
214
+ }
215
+
210
216
  getRecordExecuteFailedActions(payload, metaData) {
211
217
  const {
212
218
  actionName
213
219
  } = metaData;
214
220
  const actions = [];
215
221
 
222
+ if (actionName === RecordApiActionName.GET_RECORDS) {
223
+ if (metaData.isAppend) {
224
+ this.errorRecordFailed = true;
225
+ }
226
+ }
227
+
216
228
  if (actionName === RecordApiActionName.DELETE_RECORD) {
217
229
  const {
218
230
  recordId,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zohodesk/library-platform",
3
- "version": "1.1.2",
3
+ "version": "1.1.3",
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.2",
47
+ "@zohodesk-private/desk-components": "1.0.0-temp-52",
48
48
  "@zohodesk-private/node-plugins": "1.1.9",
49
49
  "@zohodesk/a11y": "2.2.6",
50
50
  "@zohodesk/codestandard-analytics": "0.0.2",
@@ -71,11 +71,12 @@
71
71
  "jest-stare": "2.5.2",
72
72
  "jsep": "^0.3.5",
73
73
  "prettier": "3.3.3",
74
+ "react-sortable-hoc": "1.11.0",
74
75
  "ts-jest": "29.2.6",
75
76
  "typescript": "4.9.5"
76
77
  },
77
78
  "peerDependencies": {
78
- "@zohodesk-private/desk-components": "1.3.2",
79
+ "@zohodesk-private/desk-components": "1.0.0-temp-52",
79
80
  "@zohodesk/a11y": "2.2.6",
80
81
  "@zohodesk/components": "1.2.62",
81
82
  "@zohodesk/dot": "1.7.8",
@@ -85,7 +86,8 @@
85
86
  "@zohodesk/layout": "3.1.0",
86
87
  "@zohodesk/svg": "1.1.27",
87
88
  "@zohodesk/utils": "1.3.14",
88
- "color": "4.2.3"
89
+ "color": "4.2.3",
90
+ "react-sortable-hoc": "1.11.0"
89
91
  },
90
92
  "dependencies": {
91
93
  "ajv": "6.12.6",
@@ -1,26 +0,0 @@
1
- import React from 'react';
2
- import CheckBox from '@zohodesk/components/es/CheckBox/CheckBox';
3
- import TableHeadFirstNode from '@zohodesk-private/desk-components/es/table/TableHeadFirstNode/TableHeadFirstNode';
4
- import { TableListConstants } from "../../../../../../../../cc/table-list";
5
-
6
- function SelectAll(_ref) {
7
- let {
8
- isSelectionEnabled,
9
- isSelectAllEnabled,
10
- hasAllSelected,
11
- dispatch
12
- } = _ref;
13
-
14
- if (!isSelectionEnabled) {
15
- return null;
16
- }
17
-
18
- return /*#__PURE__*/React.createElement(TableHeadFirstNode, null, isSelectAllEnabled && /*#__PURE__*/React.createElement(CheckBox, {
19
- checked: hasAllSelected,
20
- onChange: () => dispatch({
21
- type: TableListConstants.TABLE_LIST_TOGGLE_ALL_SELECTION
22
- })
23
- }));
24
- }
25
-
26
- export default SelectAll;