@zohodesk/library-platform 1.1.2 → 1.1.3-exp.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 (235) 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/sdk/EventHandlers.js +1 -0
  10. package/es/bc/sdk/Properties.js +10 -0
  11. package/es/bc/sdk/ResourceNamesEnum.js +6 -0
  12. package/es/bc/zlist/Properties.js +15 -0
  13. package/es/cc/action-location/Constants.js +5 -3
  14. package/es/cc/architecture/LifeCycleActionEnum.js +2 -8
  15. package/es/cc/component/LifeCycleEventsEnum.js +9 -0
  16. package/es/cc/fields/field/Properties.js +10 -1
  17. package/es/cc/fields/index.js +1 -1
  18. package/es/cc/table-column-chooser/Constants.js +6 -0
  19. package/es/cc/table-column-chooser/Events.js +69 -0
  20. package/es/cc/table-column-chooser/Properties.js +122 -0
  21. package/es/cc/table-column-chooser/index.js +3 -0
  22. package/es/cc/table-connected/Properties.js +16 -0
  23. package/es/cc/table-connected/constants/Events.js +4 -1
  24. package/es/cc/table-list/Properties.js +27 -1
  25. package/es/cc/table-list/data-types/KeyboardControlsConfig.js +1 -0
  26. package/es/cc/table-list/row/Properties.js +18 -0
  27. package/es/desk-frameworks/table-connected/adapters/controllers/ColumnChooserOpenedController.js +36 -0
  28. package/es/desk-frameworks/table-connected/adapters/controllers/ColumnChooserUpdateController.js +25 -0
  29. package/es/desk-frameworks/table-connected/frameworks/EventHandlersFactory.js +18 -7
  30. package/es/desk-frameworks/table-connected/frameworks/ListSdkFactory.js +15 -130
  31. package/es/desk-frameworks/table-connected/frameworks/TableConnectedFactory.js +13 -2
  32. package/es/desk-frameworks/table-connected/frameworks/TableConnectedView.js +9 -6
  33. package/es/desk-frameworks/table-connected/frameworks/resources/ISmartTableResource.js +1 -0
  34. package/es/desk-frameworks/table-connected/frameworks/resources/SmartTableResource.js +233 -0
  35. package/es/index.js +3 -1
  36. package/es/library/behaviours/keyboard-controls/adapters/controllers/AbstractController.js +9 -0
  37. package/es/library/behaviours/keyboard-controls/adapters/controllers/DestructController.js +20 -0
  38. package/es/library/behaviours/keyboard-controls/adapters/controllers/DownArrowPressController.js +20 -0
  39. package/es/library/behaviours/keyboard-controls/adapters/controllers/EnterPressController.js +24 -0
  40. package/es/library/behaviours/keyboard-controls/adapters/controllers/FocusNextController.js +20 -0
  41. package/es/library/behaviours/keyboard-controls/adapters/controllers/FocusPreviousController.js +20 -0
  42. package/es/library/behaviours/keyboard-controls/adapters/controllers/InitializeController.js +20 -0
  43. package/es/library/behaviours/keyboard-controls/adapters/controllers/SpacePressController.js +24 -0
  44. package/es/library/behaviours/keyboard-controls/adapters/controllers/UpArrowPressController.js +20 -0
  45. package/es/library/behaviours/keyboard-controls/adapters/gateways/KeyboardHandler.js +81 -0
  46. package/es/library/behaviours/keyboard-controls/adapters/gateways/Repository.js +47 -0
  47. package/es/library/behaviours/keyboard-controls/adapters/gateways/Service.js +40 -0
  48. package/es/library/behaviours/keyboard-controls/adapters/presenters/Presenter.js +39 -0
  49. package/es/library/behaviours/keyboard-controls/applications/interfaces/UseCase.js +0 -0
  50. package/es/library/behaviours/keyboard-controls/applications/interfaces/UseCaseDependencies.js +1 -0
  51. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IKeyboardHandler.js +1 -0
  52. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IRepository.js +1 -0
  53. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IService.js +1 -0
  54. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/DestructInputModel.js +1 -0
  55. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/DownArrowPressInputModel.js +1 -0
  56. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/EnterPressInputModel.js +1 -0
  57. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/FocusNextInputModel.js +1 -0
  58. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/FocusPreviousInputModel.js +1 -0
  59. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/InitializeInputModel.js +1 -0
  60. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/RowActionInputModel.js +1 -0
  61. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/SelectionInputModel.js +1 -0
  62. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/SpacePressInputModel.js +1 -0
  63. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/UpArrowPressInputModel.js +1 -0
  64. package/es/library/behaviours/keyboard-controls/applications/interfaces/output/IPresenter.js +1 -0
  65. package/es/library/behaviours/keyboard-controls/applications/interfaces/output/OutputModel.js +1 -0
  66. package/es/library/behaviours/keyboard-controls/applications/usecases/AbstractUseCase.js +19 -0
  67. package/es/library/behaviours/keyboard-controls/applications/usecases/DestructUsecase.js +20 -0
  68. package/es/library/behaviours/keyboard-controls/applications/usecases/DownArrowPress.js +16 -0
  69. package/es/library/behaviours/keyboard-controls/applications/usecases/EnterPress.js +19 -0
  70. package/es/library/behaviours/keyboard-controls/applications/usecases/FocusNextUsecase.js +16 -0
  71. package/es/library/behaviours/keyboard-controls/applications/usecases/FocusPreviousUsecase.js +16 -0
  72. package/es/library/behaviours/keyboard-controls/applications/usecases/InitializeUsecase.js +20 -0
  73. package/es/library/behaviours/keyboard-controls/applications/usecases/SpacePress.js +19 -0
  74. package/es/library/behaviours/keyboard-controls/applications/usecases/UpArrowPress.js +16 -0
  75. package/es/library/behaviours/keyboard-controls/domain/entities/KeyboardControls.js +87 -0
  76. package/es/library/behaviours/keyboard-controls/domain/entities/interface/IKeyboardControls.js +1 -0
  77. package/es/library/behaviours/keyboard-controls/domain/entities/interface/KeyboardControlModel.js +1 -0
  78. package/es/library/behaviours/keyboard-controls/frameworks/EventHandlerFactory.js +48 -0
  79. package/es/library/behaviours/keyboard-controls/frameworks/KeyboardControlBehaviourFactory.js +23 -0
  80. package/es/library/behaviours/list-selection/frameworks/ActionHandlerFactory.js +4 -3
  81. package/es/library/custom-component/applications/entities-factory/BehavioursFactory.js +18 -16
  82. package/es/library/custom-component/applications/usecases/UpdatePropertyUseCase.js +3 -0
  83. package/es/library/custom-component/applications/usecases/UpdateStateUseCase.js +5 -1
  84. package/es/library/custom-component/domain/entities/Component.js +4 -0
  85. package/es/library/custom-component/domain/entities/LifeCycleAction.js +14 -3
  86. package/es/library/custom-component/frameworks/ui/ComponentRegistry.js +8 -0
  87. package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +4 -0
  88. package/es/library/dot/components/action-location/frameworks/ui/EventHandlersFactory.js +1 -1
  89. package/es/library/dot/components/table-list/adapters/controllers/KeyboardRowClickController.js +36 -0
  90. package/es/library/dot/components/table-list/adapters/controllers/KeyboardRowSelectController.js +31 -0
  91. package/es/library/dot/components/table-list/adapters/controllers/index.js +3 -1
  92. package/es/library/dot/components/table-list/adapters/presenters/TableTranslator.js +5 -3
  93. package/es/library/dot/components/table-list/frameworks/ui/EventHandlersFactory.js +4 -1
  94. package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +10 -3
  95. package/es/library/dot/components/table-list/frameworks/ui/css/TableList.module.css +3 -0
  96. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Header.js +9 -10
  97. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Rows.js +7 -3
  98. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/HeaderData.js +7 -2
  99. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/MassAction.js +28 -0
  100. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +5 -0
  101. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowData.js +7 -2
  102. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowSelection.js +1 -0
  103. package/es/library/dot/legacy-to-new-arch/table-column-chooser/frameworks/ui/TableColumnChooser.js +11 -0
  104. package/es/library/dot/legacy-to-new-arch/table-column-chooser/frameworks/ui/TableColumnChooserView.js +79 -0
  105. package/es/library/dot/legacy-to-new-arch/table-column-filter/frameworks/ui/TableColumnFilterView.js +8 -4
  106. package/es/library/dot/legacy-to-new-arch/table-field-components/lookup-field/frameworks/ui/LookupFieldView.js +6 -8
  107. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/EventHandlersFactory.js +4 -3
  108. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActionsRenderer.module.css +0 -6
  109. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActionsRendererView.js +1 -1
  110. package/es/platform/column-chooser/adapters/controllers/AbstractController.js +10 -0
  111. package/es/platform/column-chooser/adapters/controllers/ColumnChooserCloseController.js +21 -0
  112. package/es/platform/column-chooser/adapters/controllers/ColumnChooserOpenController.js +26 -0
  113. package/es/platform/column-chooser/adapters/controllers/ColumnChooserReorderController.js +26 -0
  114. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSaveController.js +21 -0
  115. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSearchController.js +24 -0
  116. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSelectController.js +26 -0
  117. package/es/platform/column-chooser/adapters/gateways/Repository.js +38 -0
  118. package/es/platform/column-chooser/adapters/gateways/Service.js +34 -0
  119. package/es/platform/column-chooser/adapters/gateways/State.js +1 -0
  120. package/es/platform/column-chooser/adapters/presenters/Presenter.js +25 -0
  121. package/es/platform/column-chooser/applications/interfaces/UsecaseDependencies.js +1 -0
  122. package/es/platform/column-chooser/applications/interfaces/gateways/IRepository.js +1 -0
  123. package/es/platform/column-chooser/applications/interfaces/gateways/IService.js +1 -0
  124. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserCloseInput.js +1 -0
  125. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserOpenInput.js +1 -0
  126. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserReorderInput.js +1 -0
  127. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSaveInput.js +1 -0
  128. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSearchInput.js +1 -0
  129. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSelectInput.js +1 -0
  130. package/es/platform/column-chooser/applications/interfaces/output/BehaviourState.js +1 -0
  131. package/es/platform/column-chooser/applications/interfaces/output/IPresenter.js +1 -0
  132. package/es/platform/column-chooser/applications/usecases/AbstractUseCase.js +18 -0
  133. package/es/platform/column-chooser/applications/usecases/ColumnChooserCloseUseCase.js +34 -0
  134. package/es/platform/column-chooser/applications/usecases/ColumnChooserOpenUseCase.js +20 -0
  135. package/es/platform/column-chooser/applications/usecases/ColumnChooserReorderUseCase.js +20 -0
  136. package/es/platform/column-chooser/applications/usecases/ColumnChooserSaveUseCase.js +31 -0
  137. package/es/platform/column-chooser/applications/usecases/ColumnChooserSearchUseCase.js +19 -0
  138. package/es/platform/column-chooser/applications/usecases/ColumnChooserSelectUseCase.js +26 -0
  139. package/es/platform/column-chooser/domain/entities/ColumnChooserImp.js +95 -0
  140. package/es/platform/column-chooser/domain/entities/ReorderEntityImp.js +35 -0
  141. package/es/platform/column-chooser/domain/entities/SearchEntityImp.js +28 -0
  142. package/es/platform/column-chooser/domain/entities/SelectEntityImp.js +58 -0
  143. package/es/platform/column-chooser/domain/entities/interfaces/ColumnChooser.js +1 -0
  144. package/es/platform/column-chooser/domain/entities/interfaces/ReorderEntity.js +1 -0
  145. package/es/platform/column-chooser/domain/entities/interfaces/SearchEntity.js +1 -0
  146. package/es/platform/column-chooser/domain/entities/interfaces/SelectEntity.js +1 -0
  147. package/es/platform/column-chooser/frameworks/ColumnChooserBehaviourFactory.js +19 -0
  148. package/es/platform/column-chooser/frameworks/EventHandlersFactory.js +30 -0
  149. package/es/platform/data-source/http-template/updateSelectedFields.js +28 -0
  150. package/es/platform/data-source/index.js +2 -0
  151. package/es/platform/sdk/adapters/gateways/Repository.js +31 -0
  152. package/es/platform/sdk/adapters/gateways/Service.js +27 -0
  153. package/es/platform/sdk/adapters/presenters/Presenter.js +16 -0
  154. package/es/platform/sdk/application/interfaces/UsecaseDependencies.js +1 -0
  155. package/es/platform/sdk/application/interfaces/gateways/IRepository.js +1 -0
  156. package/es/platform/sdk/application/interfaces/gateways/ISdkManager.js +1 -0
  157. package/es/platform/sdk/application/interfaces/gateways/IService.js +1 -0
  158. package/es/platform/sdk/application/interfaces/input/CreateResourceInstanceUseCaseInputModel.js +1 -0
  159. package/es/platform/sdk/application/interfaces/input/DestructResourceInstanceUseCaseInputModel.js +1 -0
  160. package/es/platform/sdk/application/interfaces/input/GetResourceInstanceUseCaseInputModel.js +1 -0
  161. package/es/platform/sdk/application/interfaces/input/RegisterResourceInputModel.js +1 -0
  162. package/es/platform/sdk/application/interfaces/input/SyncStateWithResourceInputModel.js +1 -0
  163. package/es/platform/sdk/application/interfaces/output/ISdkPresenter.js +3 -0
  164. package/es/platform/sdk/application/usecases/AbstractUseCase.js +16 -0
  165. package/es/platform/sdk/application/usecases/CreateResourceInstanceUseCase.js +16 -0
  166. package/es/platform/sdk/application/usecases/DestructResourceInstanceUseCase.js +16 -0
  167. package/es/platform/sdk/application/usecases/GetResourceInstanceUseCase.js +17 -0
  168. package/es/platform/sdk/application/usecases/RegisterResourceUseCase.js +16 -0
  169. package/es/platform/sdk/application/usecases/SyncStateWithResourceUseCase.js +25 -0
  170. package/es/platform/sdk/domain/entities/ResourceManager.js +95 -0
  171. package/es/platform/sdk/domain/entities/interfaces/IResourceManager.js +1 -0
  172. package/es/platform/sdk/domain/entities/interfaces/ResourceManagerRestoreModel.js +1 -0
  173. package/es/platform/sdk/domain/entities/interfaces/SdkResource.js +1 -0
  174. package/es/platform/sdk/domain/entities/interfaces/SdkResourceDependencies.js +1 -0
  175. package/es/platform/sdk/domain/entities/interfaces/StateInterface.js +1 -0
  176. package/es/platform/sdk/frameworks/AbstractResource.js +16 -0
  177. package/es/platform/sdk/frameworks/Sdk.js +11 -0
  178. package/es/platform/sdk/frameworks/SdkRegistry.js +72 -0
  179. package/es/platform/sdk-behaviour/adapters/controllers/AbstractController.js +11 -0
  180. package/es/platform/sdk-behaviour/adapters/controllers/DestructController.js +19 -0
  181. package/es/platform/sdk-behaviour/adapters/controllers/InitializeController.js +19 -0
  182. package/es/platform/sdk-behaviour/adapters/controllers/SyncStateWithResourceController.js +24 -0
  183. package/es/platform/sdk-behaviour/adapters/gateways/Repository.js +25 -0
  184. package/es/platform/sdk-behaviour/adapters/gateways/ResourceManagerGateWay.js +43 -0
  185. package/es/platform/sdk-behaviour/adapters/gateways/Service.js +19 -0
  186. package/es/platform/sdk-behaviour/applications/AbstractUseCase.js +6 -0
  187. package/es/platform/sdk-behaviour/applications/interfaces/UsecaseDependencies.js +1 -0
  188. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IRepository.js +1 -0
  189. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IResourceManagerGateWay.js +3 -0
  190. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IService.js +1 -0
  191. package/es/platform/sdk-behaviour/applications/interfaces/input/CreateResourceInstanceUseCaseInputModel.js +1 -0
  192. package/es/platform/sdk-behaviour/applications/interfaces/input/DestructResourceInstanceUseCaseInputModel.js +1 -0
  193. package/es/platform/sdk-behaviour/applications/interfaces/input/SyncStateWithResourceUseCaseInputModel.js +1 -0
  194. package/es/platform/sdk-behaviour/applications/usecases/CreateResourceInstanceUseCase.js +14 -0
  195. package/es/platform/sdk-behaviour/applications/usecases/DestructResourceInstanceUseCase.js +14 -0
  196. package/es/platform/sdk-behaviour/applications/usecases/SyncStateWithResourceUseCase.js +22 -0
  197. package/es/platform/sdk-behaviour/domain/entities/BehaviourResourceConnector.js +49 -0
  198. package/es/platform/sdk-behaviour/domain/entities/interfaces/IBehaviourResourceConnector.js +1 -0
  199. package/es/platform/sdk-behaviour/domain/entities/interfaces/IResourceManagerProxy.js +2 -0
  200. package/es/platform/sdk-behaviour/frameworks/EventHandlerFactory.js +29 -0
  201. package/es/platform/sdk-behaviour/frameworks/SdkBehaviourFactory.js +16 -0
  202. package/es/platform/zfield/domain/entities/fields-manager/FieldsManager.js +3 -1
  203. package/es/platform/zfield/domain/entities/interfaces/FieldApiName.js +1 -0
  204. package/es/platform/zfield/frameworks/ZFieldBehaviourFactory.js +6 -1
  205. package/es/platform/zform/frameworks/ui/EventHandlerFactory.js +2 -2
  206. package/es/platform/zlist/adapters/gateways/Repository.js +4 -2
  207. package/es/platform/zlist/adapters/presenters/SelectionTranslator.js +94 -0
  208. package/es/platform/zlist/adapters/presenters/TableTranslator.js +35 -19
  209. package/es/platform/zlist/adapters/presenters/translators/ColumnTranslator.js +63 -4
  210. package/es/platform/zlist/adapters/presenters/translators/Header.js +5 -2
  211. package/es/platform/zlist/adapters/presenters/translators/ResizerStateTranslator.js +7 -3
  212. package/es/platform/zlist/adapters/presenters/translators/Row.js +1 -1
  213. package/es/platform/zlist/adapters/presenters/translators/fields/LookUpFieldTranslator.js +6 -6
  214. package/es/platform/zlist/adapters/presenters/translators/interfaces/State.js +2 -1
  215. package/es/platform/zlist/adapters/presenters/utils/DefaultClientActions.js +78 -6
  216. package/es/platform/zlist/applications/entities-factory/ListFactory.js +3 -2
  217. package/es/platform/zlist/applications/interfaces/input/GetContextUseCaseInput.js +1 -0
  218. package/es/platform/zlist/applications/interfaces/input/UpdateMultipleRecordUseCaseInput.js +1 -0
  219. package/es/platform/zlist/applications/usecases/DeleteMultipleRecordUseCase.js +23 -2
  220. package/es/platform/zlist/applications/usecases/DeleteSingleRecordUseCase.js +9 -0
  221. package/es/platform/zlist/applications/usecases/FetchMoreUseCase.js +4 -1
  222. package/es/platform/zlist/applications/usecases/GetContextUseCase.js +18 -0
  223. package/es/platform/zlist/applications/usecases/RecordExecuteFailedUseCase.js +3 -1
  224. package/es/platform/zlist/applications/usecases/RecordUpdateUseCase.js +9 -0
  225. package/es/platform/zlist/applications/usecases/UpdateMultipleRecordUseCase.js +34 -0
  226. package/es/platform/zlist/domain/entities/List.js +26 -2
  227. package/es/platform/zlist/frameworks/EventHandlersFactory.js +3 -3
  228. package/es/platform/zrecord/applications/interfaces/input/GetMultipleRecordUsecaseInputModel.js +1 -0
  229. package/es/platform/zrecord/applications/interfaces/input/GetSingleRecordUseCaseInputModel.js +1 -0
  230. package/es/platform/zrecord/applications/usecases/GetMultipleRecordUseCase.js +16 -0
  231. package/es/platform/zrecord/applications/usecases/GetSingleRecordUseCase.js +17 -0
  232. package/es/platform/zrecord/domain/entities/Records.js +9 -4
  233. package/es/platform/zrecord/domain/entities/RecordsManager.js +8 -0
  234. package/package.json +10 -8
  235. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/SelectAll.js +0 -26
@@ -0,0 +1,79 @@
1
+ /* eslint-disable max-lines-per-function */
2
+ import React from 'react';
3
+ import ColumnChooser from '@zohodesk-private/desk-components/es/ColumnChooser/ColumnChooser';
4
+ import { TableColumnChooserConstants } from "../../../../../../cc/table-column-chooser";
5
+
6
+ function TableColumnChooserView(_ref, ref) {
7
+ let {
8
+ state,
9
+ helpers
10
+ } = _ref;
11
+ const {
12
+ dispatch
13
+ } = helpers;
14
+ const {
15
+ options,
16
+ tooltip,
17
+ heading,
18
+ infoText,
19
+ hasSearch,
20
+ searchString,
21
+ searchPlaceholder
22
+ } = state.properties;
23
+ const {
24
+ emptyMessage,
25
+ errorMessage,
26
+ saveLabel,
27
+ cancelLabel
28
+ } = state.properties;
29
+ return /*#__PURE__*/React.createElement(ColumnChooser, {
30
+ options: options,
31
+ getRef: ref,
32
+ tooltip: tooltip,
33
+ heading: heading,
34
+ infoText: infoText,
35
+ emptyMessage: emptyMessage,
36
+ getHelperContainer: () => document.querySelector('[data-id="table"]'),
37
+ hasSearch: hasSearch,
38
+ searchString: searchString,
39
+ searchPlacholder: searchPlaceholder,
40
+ onSearch: searchString => dispatch({
41
+ type: TableColumnChooserConstants.COLUMN_CHOOSER_SEARCH_REQUESTED,
42
+ payload: {
43
+ searchString
44
+ }
45
+ }),
46
+ onClearSearch: () => dispatch({
47
+ type: TableColumnChooserConstants.COLUMN_CHOOSER_SEARCH_REQUESTED,
48
+ payload: {
49
+ searchString: ''
50
+ }
51
+ }),
52
+ onOpen: () => dispatch({
53
+ type: TableColumnChooserConstants.COLUMN_CHOOSER_OPEN_REQUESTED
54
+ }),
55
+ onClose: () => dispatch({
56
+ type: TableColumnChooserConstants.COLUMN_CHOOSER_CLOSE_REQUESTED
57
+ }),
58
+ onSelect: data => dispatch({
59
+ type: TableColumnChooserConstants.COLUMN_CHOOSER_SELECT_REQUESTED,
60
+ payload: {
61
+ data
62
+ }
63
+ }),
64
+ onReorder: reOrderedIndex => dispatch({
65
+ type: TableColumnChooserConstants.COLUMN_CHOOSER_REORDER_REQUESTED,
66
+ payload: {
67
+ reOrderedIndex
68
+ }
69
+ }),
70
+ onSave: () => dispatch({
71
+ type: TableColumnChooserConstants.COLUMN_CHOOSER_SAVE_REQUESTED
72
+ }),
73
+ errorMessage: errorMessage,
74
+ saveLabel: saveLabel,
75
+ cancelLabel: cancelLabel
76
+ });
77
+ }
78
+
79
+ export default TableColumnChooserView;
@@ -54,9 +54,10 @@ function TableColumnFilterView(_ref, ref) {
54
54
  searchText
55
55
  }
56
56
  });
57
- }; // For SingleSelectFilter, pass selectedOption (object)
58
- // For MultiSelectFilter, pass selectedOptions (array)
57
+ };
59
58
 
59
+ const isFiltered = isMultiSelect ? Array.isArray(selectedOptions) && selectedOptions.length > 0 : selectedOptions && Object.keys(selectedOptions).length > 0; // For SingleSelectFilter, pass selectedOption (object)
60
+ // For MultiSelectFilter, pass selectedOptions (array)
60
61
 
61
62
  const commonProps = {
62
63
  customProps: {
@@ -72,9 +73,12 @@ function TableColumnFilterView(_ref, ref) {
72
73
  }
73
74
  },
74
75
  customStyle: {
75
- container: `${style.container} ${(isMultiSelect ? Array.isArray(selectedOptions) && selectedOptions.length > 0 : selectedOptions && Object.keys(selectedOptions).length > 0) ? style.active : ''}`
76
+ container: `${style.container} ${isFiltered ? style.active : ''}`
76
77
  }
77
- }
78
+ },
79
+ iconButtonProps: isFiltered ? {
80
+ isActive: true
81
+ } : undefined
78
82
  }
79
83
  }
80
84
  },
@@ -1,19 +1,17 @@
1
1
  import React from 'react';
2
- import Tag from '@zohodesk/components/es/Tag/Tag';
2
+ import Link from "../../../../link/frameworks/ui/Link";
3
3
  export function LookupFieldView(_ref, ref) {
4
4
  let {
5
5
  state
6
6
  } = _ref;
7
7
  const {
8
8
  name,
9
- photoURL
9
+ url
10
10
  } = state.properties.value;
11
- return /*#__PURE__*/React.createElement(Tag, {
11
+ return /*#__PURE__*/React.createElement(Link, {
12
12
  getRef: ref,
13
- text: name,
14
- hasAvatar: true,
15
- initial: name,
16
- imageURL: photoURL,
17
- tooltip: name
13
+ label: name,
14
+ variant: "secondary",
15
+ href: url
18
16
  });
19
17
  }
@@ -6,6 +6,7 @@ import PropertiesChangeUseCase from "../../applications/usecases/PropertiesChang
6
6
  import MountController from "../../adapters/controllers/MountController";
7
7
  import UnmountController from "../../adapters/controllers/UnmountController";
8
8
  import PropertiesChangeController from "../../adapters/controllers/PropertiesChangeController";
9
+ import LifeCycleEvents from "../../../../../../cc/component/LifeCycleEventsEnum";
9
10
  export default class EventHandlersFactory {
10
11
  static create() {
11
12
  const repository = new Repository();
@@ -21,9 +22,9 @@ export default class EventHandlersFactory {
21
22
  const unmountController = new UnmountController(destroyUseCase);
22
23
  const propertiesChangeController = new PropertiesChangeController(propertiesChangeUseCase);
23
24
  return {
24
- ['ActionEventMediator#MOUNT']: initializeController.handle,
25
- ['ActionEventMediator#UPDATE_PROPERTIES']: propertiesChangeController.handle,
26
- ['ActionEventMediator#UNMOUNT']: unmountController.handle
25
+ [`ActionEventMediator#${LifeCycleEvents.MOUNT}`]: initializeController.handle,
26
+ [`ActionEventMediator#${LifeCycleEvents.UPDATE_PROPERTIES}`]: propertiesChangeController.handle,
27
+ [`ActionEventMediator#${LifeCycleEvents.UN_MOUNT}`]: unmountController.handle
27
28
  };
28
29
  }
29
30
 
@@ -1,9 +1,3 @@
1
- [dir=ltr] .actions {
2
- padding-left: var(--zd_size6)
3
- }[dir=rtl] .actions {
4
- padding-right: var(--zd_size6)
5
- }
6
-
7
1
  .gap_small {
8
2
  gap: var(--zd_size4)
9
3
  }
@@ -17,7 +17,7 @@ function RowActionsRendererView(_ref, ref) {
17
17
  ref: ref,
18
18
  $ui_displayMode: "inline",
19
19
  $ui_alignItems: "center",
20
- $ui_className: `${style.actions} ${gap !== ActionViewGap.NONE ? style[`gap_${gap}`] : ''}`
20
+ $ui_className: `${gap !== ActionViewGap.NONE ? style[`gap_${gap}`] : ''}`
21
21
  }, actions.map((action, index) => {
22
22
  return /*#__PURE__*/React.createElement(DynamicActionComponent, {
23
23
  action: action,
@@ -0,0 +1,10 @@
1
+ class AbstractController {
2
+ constructor(service) {
3
+ this.service = service;
4
+ this.handle = this.handle.bind(this);
5
+ } // TODO: Add event type
6
+
7
+
8
+ }
9
+
10
+ export default AbstractController;
@@ -0,0 +1,21 @@
1
+ import AbstractController from "./AbstractController";
2
+
3
+ class ColumnChooserCloseController extends AbstractController {
4
+ handle(event) {
5
+ const {
6
+ state,
7
+ updateState,
8
+ dispatch
9
+ } = event;
10
+ const {
11
+ columnChooserCloseUseCase
12
+ } = this.service;
13
+ columnChooserCloseUseCase.updateDependencies(state, updateState);
14
+ columnChooserCloseUseCase.execute({
15
+ dispatch
16
+ });
17
+ }
18
+
19
+ }
20
+
21
+ export default ColumnChooserCloseController;
@@ -0,0 +1,26 @@
1
+ import AbstractController from "./AbstractController";
2
+
3
+ class ColumnChooserOpenController extends AbstractController {
4
+ handle(event) {
5
+ const {
6
+ state,
7
+ action,
8
+ updateState
9
+ } = event;
10
+ const {
11
+ order,
12
+ selectedArray
13
+ } = action.payload;
14
+ const {
15
+ columnChooserOpenUseCase
16
+ } = this.service;
17
+ columnChooserOpenUseCase.updateDependencies(state, updateState);
18
+ columnChooserOpenUseCase.execute({
19
+ order,
20
+ selectedArray
21
+ });
22
+ }
23
+
24
+ }
25
+
26
+ export default ColumnChooserOpenController;
@@ -0,0 +1,26 @@
1
+ import AbstractController from "./AbstractController";
2
+
3
+ class ColumnChooserReorderController extends AbstractController {
4
+ handle(event) {
5
+ const {
6
+ state,
7
+ action,
8
+ updateState
9
+ } = event;
10
+ const {
11
+ oldIndex: fromIndex,
12
+ newIndex: toIndex
13
+ } = action.payload.reOrderedIndex;
14
+ const {
15
+ columnChooserReorderUseCase
16
+ } = this.service;
17
+ columnChooserReorderUseCase.updateDependencies(state, updateState);
18
+ columnChooserReorderUseCase.execute({
19
+ fromIndex,
20
+ toIndex
21
+ });
22
+ }
23
+
24
+ }
25
+
26
+ export default ColumnChooserReorderController;
@@ -0,0 +1,21 @@
1
+ import AbstractController from "./AbstractController";
2
+
3
+ class ColumnChooserSaveController extends AbstractController {
4
+ handle(event) {
5
+ const {
6
+ state,
7
+ updateState,
8
+ dispatch
9
+ } = event;
10
+ const {
11
+ columnChooserSaveUseCase
12
+ } = this.service;
13
+ columnChooserSaveUseCase.updateDependencies(state, updateState);
14
+ columnChooserSaveUseCase.execute({
15
+ dispatch
16
+ });
17
+ }
18
+
19
+ }
20
+
21
+ export default ColumnChooserSaveController;
@@ -0,0 +1,24 @@
1
+ import AbstractController from "./AbstractController";
2
+
3
+ class ColumnChooserSearchController extends AbstractController {
4
+ handle(event) {
5
+ const {
6
+ state,
7
+ action,
8
+ updateState
9
+ } = event;
10
+ const {
11
+ searchString: searchText
12
+ } = action.payload;
13
+ const {
14
+ columnChooserSearchUseCase
15
+ } = this.service;
16
+ columnChooserSearchUseCase.updateDependencies(state, updateState);
17
+ columnChooserSearchUseCase.execute({
18
+ searchText
19
+ });
20
+ }
21
+
22
+ }
23
+
24
+ export default ColumnChooserSearchController;
@@ -0,0 +1,26 @@
1
+ import AbstractController from "./AbstractController";
2
+
3
+ class ColumnChooserSelectController extends AbstractController {
4
+ handle(event) {
5
+ const {
6
+ state,
7
+ action,
8
+ updateState
9
+ } = event;
10
+ const {
11
+ id: columnId,
12
+ isChecked
13
+ } = action.payload.data;
14
+ const {
15
+ columnChooserSelectUseCase
16
+ } = this.service;
17
+ columnChooserSelectUseCase.updateDependencies(state, updateState);
18
+ columnChooserSelectUseCase.execute({
19
+ columnId,
20
+ isChecked
21
+ });
22
+ }
23
+
24
+ }
25
+
26
+ export default ColumnChooserSelectController;
@@ -0,0 +1,38 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import { DEFAULT_COLUMN_CHOOSE_MAX_COUNT } from "../../../../bc/column-chooser/Constants";
4
+ import ColumnChooserImp from "../../domain/entities/ColumnChooserImp";
5
+ import ReorderEntityImp from "../../domain/entities/ReorderEntityImp";
6
+ import SearchEntityImp from "../../domain/entities/SearchEntityImp";
7
+ import SelectEntityImp from "../../domain/entities/SelectEntityImp";
8
+
9
+ class Repository {
10
+ constructor() {
11
+ _defineProperty(this, "state", void 0);
12
+ }
13
+
14
+ init(state) {
15
+ this.state = state;
16
+ }
17
+
18
+ getColumnChooser() {
19
+ const {
20
+ columnChooser
21
+ } = this.state.behaviours;
22
+ const reorderEntity = new ReorderEntityImp(columnChooser.order);
23
+ const searchEntity = this.createSearchEntity();
24
+ const selectEntity = new SelectEntityImp(columnChooser.selected, DEFAULT_COLUMN_CHOOSE_MAX_COUNT);
25
+ return new ColumnChooserImp(columnChooser.isSaved, reorderEntity, searchEntity, selectEntity);
26
+ }
27
+
28
+ createSearchEntity() {
29
+ const {
30
+ columnChooser,
31
+ zfield
32
+ } = this.state.behaviours;
33
+ return new SearchEntityImp(columnChooser.searchText, fieldName => zfield.fields.find(f => f.name === fieldName).i18NLabel);
34
+ }
35
+
36
+ }
37
+
38
+ export default Repository;
@@ -0,0 +1,34 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import ColumnChooserOpenUseCase from "../../applications/usecases/ColumnChooserOpenUseCase";
4
+ import ColumnChooserSelectUseCase from "../../applications/usecases/ColumnChooserSelectUseCase";
5
+ import ColumnChooserReorderUseCase from "../../applications/usecases/ColumnChooserReorderUseCase";
6
+ import ColumnChooserSearchUseCase from "../../applications/usecases/ColumnChooserSearchUseCase";
7
+ import ColumnChooserSaveUseCase from "../../applications/usecases/ColumnChooserSaveUseCase";
8
+ import ColumnChooserCloseUseCase from "../../applications/usecases/ColumnChooserCloseUseCase";
9
+
10
+ class Service {
11
+ constructor(dependencies) {
12
+ _defineProperty(this, "columnChooserOpenUseCase", void 0);
13
+
14
+ _defineProperty(this, "columnChooserSelectUseCase", void 0);
15
+
16
+ _defineProperty(this, "columnChooserReorderUseCase", void 0);
17
+
18
+ _defineProperty(this, "columnChooserSearchUseCase", void 0);
19
+
20
+ _defineProperty(this, "columnChooserSaveUseCase", void 0);
21
+
22
+ _defineProperty(this, "columnChooserCloseUseCase", void 0);
23
+
24
+ this.columnChooserOpenUseCase = new ColumnChooserOpenUseCase(dependencies);
25
+ this.columnChooserSelectUseCase = new ColumnChooserSelectUseCase(dependencies);
26
+ this.columnChooserReorderUseCase = new ColumnChooserReorderUseCase(dependencies);
27
+ this.columnChooserSearchUseCase = new ColumnChooserSearchUseCase(dependencies);
28
+ this.columnChooserSaveUseCase = new ColumnChooserSaveUseCase(dependencies);
29
+ this.columnChooserCloseUseCase = new ColumnChooserCloseUseCase(dependencies);
30
+ }
31
+
32
+ }
33
+
34
+ export default Service;
@@ -0,0 +1,25 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ class Presenter {
4
+ constructor() {
5
+ _defineProperty(this, "updateState", void 0);
6
+
7
+ _defineProperty(this, "state", void 0);
8
+ }
9
+
10
+ updateDependencies(state, updateState) {
11
+ this.state = state;
12
+ this.updateState = updateState;
13
+ }
14
+
15
+ updateView(view) {
16
+ this.updateState({ ...this.state,
17
+ behaviours: { ...this.state.behaviours,
18
+ columnChooser: view
19
+ }
20
+ });
21
+ }
22
+
23
+ }
24
+
25
+ export default Presenter;
@@ -0,0 +1,18 @@
1
+ class AbstractUseCase {
2
+ constructor(dependencies) {
3
+ this.dependencies = dependencies;
4
+ }
5
+
6
+ // TODO: Add type for state and updateState
7
+ updateDependencies(state, updateState) {
8
+ const {
9
+ repository,
10
+ presenter
11
+ } = this.dependencies;
12
+ repository.init(state);
13
+ presenter.updateDependencies(state, updateState);
14
+ }
15
+
16
+ }
17
+
18
+ export default AbstractUseCase;
@@ -0,0 +1,34 @@
1
+ import { COLUMN_CHOOSER_BEHAVIOUR_CANCELED } from "../../../../bc/column-chooser/Constants";
2
+ import AbstractUseCase from "./AbstractUseCase";
3
+
4
+ class ColumnChooserCloseUseCase extends AbstractUseCase {
5
+ execute(_ref) {
6
+ let {
7
+ dispatch
8
+ } = _ref;
9
+ const {
10
+ repository,
11
+ presenter
12
+ } = this.dependencies;
13
+ const columnChooser = repository.getColumnChooser();
14
+ const selectedArray = columnChooser.getSelectedWithOrder();
15
+ const order = columnChooser.getOrder();
16
+ const isSaved = columnChooser.hasBeenSaved();
17
+ columnChooser.init([], []);
18
+ columnChooser.markAsUnsaved();
19
+ presenter.updateView(columnChooser.toObject());
20
+
21
+ if (!isSaved) {
22
+ dispatch({
23
+ type: COLUMN_CHOOSER_BEHAVIOUR_CANCELED,
24
+ payload: {
25
+ selectedArray,
26
+ order
27
+ }
28
+ });
29
+ }
30
+ }
31
+
32
+ }
33
+
34
+ export default ColumnChooserCloseUseCase;
@@ -0,0 +1,20 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class ColumnChooserOpenUseCase extends AbstractUseCase {
4
+ execute(_ref) {
5
+ let {
6
+ order,
7
+ selectedArray
8
+ } = _ref;
9
+ const {
10
+ repository,
11
+ presenter
12
+ } = this.dependencies;
13
+ const columnChooser = repository.getColumnChooser();
14
+ columnChooser.init(order, selectedArray);
15
+ presenter.updateView(columnChooser.toObject());
16
+ }
17
+
18
+ }
19
+
20
+ export default ColumnChooserOpenUseCase;
@@ -0,0 +1,20 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class ColumnChooserReorderUseCase extends AbstractUseCase {
4
+ execute(_ref) {
5
+ let {
6
+ fromIndex,
7
+ toIndex
8
+ } = _ref;
9
+ const {
10
+ repository,
11
+ presenter
12
+ } = this.dependencies;
13
+ const columnChooser = repository.getColumnChooser();
14
+ columnChooser.arrayMoveImmutable(fromIndex, toIndex);
15
+ presenter.updateView(columnChooser.toObject());
16
+ }
17
+
18
+ }
19
+
20
+ export default ColumnChooserReorderUseCase;
@@ -0,0 +1,31 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+ import { COLUMN_CHOOSER_BEHAVIOUR_UPDATED } from "../../../../bc/column-chooser/Constants";
3
+
4
+ class ColumnChooserSaveUseCase extends AbstractUseCase {
5
+ execute(_ref) {
6
+ let {
7
+ dispatch
8
+ } = _ref;
9
+ const {
10
+ repository,
11
+ presenter
12
+ } = this.dependencies;
13
+ const columnChooser = repository.getColumnChooser();
14
+ const selectedArray = columnChooser.getSelectedWithOrder();
15
+ const order = columnChooser.getOrder();
16
+ columnChooser.markAsSaved();
17
+ presenter.updateView(columnChooser.toObject()); // TODO: exposer.columnChooserUpdated({ fields });
18
+
19
+ dispatch({
20
+ type: COLUMN_CHOOSER_BEHAVIOUR_UPDATED,
21
+ payload: {
22
+ selectedArray,
23
+ order
24
+ }
25
+ });
26
+ presenter.updateView(columnChooser.toObject());
27
+ }
28
+
29
+ }
30
+
31
+ export default ColumnChooserSaveUseCase;
@@ -0,0 +1,19 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class ColumnChooserSearchUseCase extends AbstractUseCase {
4
+ execute(_ref) {
5
+ let {
6
+ searchText
7
+ } = _ref;
8
+ const {
9
+ repository,
10
+ presenter
11
+ } = this.dependencies;
12
+ const columnChooser = repository.getColumnChooser();
13
+ columnChooser.setSearchText(searchText);
14
+ presenter.updateView(columnChooser.toObject());
15
+ }
16
+
17
+ }
18
+
19
+ export default ColumnChooserSearchUseCase;
@@ -0,0 +1,26 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class ColumnChooserSelectUseCase extends AbstractUseCase {
4
+ execute(_ref) {
5
+ let {
6
+ columnId,
7
+ isChecked
8
+ } = _ref;
9
+ const {
10
+ repository,
11
+ presenter
12
+ } = this.dependencies;
13
+ const columnChooser = repository.getColumnChooser();
14
+
15
+ if (isChecked) {
16
+ columnChooser.select(columnId);
17
+ } else {
18
+ columnChooser.deselect(columnId);
19
+ }
20
+
21
+ presenter.updateView(columnChooser.toObject());
22
+ }
23
+
24
+ }
25
+
26
+ export default ColumnChooserSelectUseCase;