@zohodesk/library-platform 1.1.2 → 1.1.3-exp.2

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 (273) hide show
  1. package/README.md +3 -3
  2. package/es/bc/column-chooser/Constants.js +4 -0
  3. package/es/bc/column-chooser/EventHandlers.js +2 -0
  4. package/es/bc/column-chooser/Events.js +59 -0
  5. package/es/bc/column-chooser/Properties.js +18 -0
  6. package/es/bc/keyboard-controls/Constants.js +5 -0
  7. package/es/bc/keyboard-controls/Events.js +51 -0
  8. package/es/bc/keyboard-controls/Properties.js +11 -0
  9. package/es/bc/keyboard-controls/types/KeyboardControlBehaviourState.js +1 -0
  10. package/es/bc/sdk/EventHandlers.js +1 -0
  11. package/es/bc/sdk/Properties.js +10 -0
  12. package/es/bc/sdk/ResourceNamesEnum.js +6 -0
  13. package/es/bc/zlist/Constants.js +3 -1
  14. package/es/bc/zlist/Properties.js +15 -0
  15. package/es/bc/zrecord/Constants.js +3 -1
  16. package/es/cc/action-location/Constants.js +5 -3
  17. package/es/cc/architecture/LifeCycleActionEnum.js +2 -8
  18. package/es/cc/component/LifeCycleEventsEnum.js +9 -0
  19. package/es/cc/fields/field/Properties.js +10 -1
  20. package/es/cc/fields/index.js +1 -1
  21. package/es/cc/table-column-chooser/Constants.js +6 -0
  22. package/es/cc/table-column-chooser/Events.js +69 -0
  23. package/es/cc/table-column-chooser/Properties.js +122 -0
  24. package/es/cc/table-column-chooser/index.js +3 -0
  25. package/es/cc/table-connected/Properties.js +32 -0
  26. package/es/cc/table-connected/constants/Events.js +4 -1
  27. package/es/cc/table-list/Constants.js +4 -0
  28. package/es/cc/table-list/Properties.js +43 -1
  29. package/es/cc/table-list/data-types/KeyboardControlsConfig.js +1 -0
  30. package/es/cc/table-list/row/Properties.js +53 -0
  31. package/es/index.js +5 -2
  32. package/es/library/behaviours/keyboard-controls/adapters/controllers/AbstractController.js +9 -0
  33. package/es/library/behaviours/keyboard-controls/adapters/controllers/DestructController.js +20 -0
  34. package/es/library/behaviours/keyboard-controls/adapters/controllers/DownArrowPressController.js +20 -0
  35. package/es/library/behaviours/keyboard-controls/adapters/controllers/EnterPressController.js +24 -0
  36. package/es/library/behaviours/keyboard-controls/adapters/controllers/FocusNextController.js +20 -0
  37. package/es/library/behaviours/keyboard-controls/adapters/controllers/FocusPreviousController.js +20 -0
  38. package/es/library/behaviours/keyboard-controls/adapters/controllers/InitializeController.js +20 -0
  39. package/es/library/behaviours/keyboard-controls/adapters/controllers/SpacePressController.js +24 -0
  40. package/es/library/behaviours/keyboard-controls/adapters/controllers/UpArrowPressController.js +20 -0
  41. package/es/library/behaviours/keyboard-controls/adapters/gateways/KeyboardHandler.js +81 -0
  42. package/es/library/behaviours/keyboard-controls/adapters/gateways/Repository.js +47 -0
  43. package/es/library/behaviours/keyboard-controls/adapters/gateways/Service.js +40 -0
  44. package/es/library/behaviours/keyboard-controls/adapters/presenters/Presenter.js +39 -0
  45. package/es/library/behaviours/keyboard-controls/applications/interfaces/UseCase.js +0 -0
  46. package/es/library/behaviours/keyboard-controls/applications/interfaces/UseCaseDependencies.js +1 -0
  47. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IKeyboardHandler.js +1 -0
  48. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IRepository.js +1 -0
  49. package/es/library/behaviours/keyboard-controls/applications/interfaces/gateways/IService.js +1 -0
  50. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/DestructInputModel.js +1 -0
  51. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/DownArrowPressInputModel.js +1 -0
  52. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/EnterPressInputModel.js +1 -0
  53. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/FocusNextInputModel.js +1 -0
  54. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/FocusPreviousInputModel.js +1 -0
  55. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/InitializeInputModel.js +1 -0
  56. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/RowActionInputModel.js +1 -0
  57. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/SelectionInputModel.js +1 -0
  58. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/SpacePressInputModel.js +1 -0
  59. package/es/library/behaviours/keyboard-controls/applications/interfaces/input/UpArrowPressInputModel.js +1 -0
  60. package/es/library/behaviours/keyboard-controls/applications/interfaces/output/IPresenter.js +1 -0
  61. package/es/library/behaviours/keyboard-controls/applications/interfaces/output/OutputModel.js +1 -0
  62. package/es/library/behaviours/keyboard-controls/applications/usecases/AbstractUseCase.js +19 -0
  63. package/es/library/behaviours/keyboard-controls/applications/usecases/DestructUsecase.js +20 -0
  64. package/es/library/behaviours/keyboard-controls/applications/usecases/DownArrowPress.js +16 -0
  65. package/es/library/behaviours/keyboard-controls/applications/usecases/EnterPress.js +19 -0
  66. package/es/library/behaviours/keyboard-controls/applications/usecases/FocusNextUsecase.js +16 -0
  67. package/es/library/behaviours/keyboard-controls/applications/usecases/FocusPreviousUsecase.js +16 -0
  68. package/es/library/behaviours/keyboard-controls/applications/usecases/InitializeUsecase.js +20 -0
  69. package/es/library/behaviours/keyboard-controls/applications/usecases/SpacePress.js +19 -0
  70. package/es/library/behaviours/keyboard-controls/applications/usecases/UpArrowPress.js +16 -0
  71. package/es/library/behaviours/keyboard-controls/domain/entities/KeyboardControls.js +87 -0
  72. package/es/library/behaviours/keyboard-controls/domain/entities/interface/IKeyboardControls.js +1 -0
  73. package/es/library/behaviours/keyboard-controls/domain/entities/interface/KeyboardControlModel.js +1 -0
  74. package/es/library/behaviours/keyboard-controls/frameworks/EventHandlerFactory.js +48 -0
  75. package/es/library/behaviours/keyboard-controls/frameworks/KeyboardControlBehaviourFactory.js +23 -0
  76. package/es/library/behaviours/list-selection/frameworks/ActionHandlerFactory.js +4 -3
  77. package/es/library/custom-component/applications/entities-factory/BehavioursFactory.js +18 -16
  78. package/es/library/custom-component/applications/usecases/UpdatePropertyUseCase.js +3 -0
  79. package/es/library/custom-component/applications/usecases/UpdateStateUseCase.js +5 -1
  80. package/es/library/custom-component/domain/entities/Component.js +4 -0
  81. package/es/library/custom-component/domain/entities/LifeCycleAction.js +14 -3
  82. package/es/library/custom-component/frameworks/ui/ComponentRegistry.js +8 -0
  83. package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +4 -0
  84. package/es/library/dot/components/action-location/frameworks/ui/EventHandlersFactory.js +1 -1
  85. package/es/library/dot/components/table-list/adapters/controllers/KeyboardRowClickController.js +36 -0
  86. package/es/library/dot/components/table-list/adapters/controllers/KeyboardRowSelectController.js +31 -0
  87. package/es/library/dot/components/table-list/adapters/controllers/index.js +3 -1
  88. package/es/library/dot/components/table-list/adapters/presenters/TableTranslator.js +5 -3
  89. package/es/library/dot/components/table-list/frameworks/hooks/useDropIndicator.js +8 -0
  90. package/es/library/dot/components/table-list/frameworks/hooks/useRowData.js +8 -0
  91. package/es/library/dot/components/table-list/frameworks/hooks/useTableRowReorder.js +93 -0
  92. package/es/library/dot/components/table-list/frameworks/ui/EventHandlersFactory.js +4 -1
  93. package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +76 -8
  94. package/es/library/dot/components/table-list/frameworks/ui/css/TableList.module.css +147 -1
  95. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Header.js +28 -11
  96. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Rows.js +26 -9
  97. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/HeaderData.js +7 -2
  98. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/MassAction.js +45 -0
  99. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +60 -10
  100. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowData.js +7 -2
  101. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowSelection.js +11 -0
  102. package/es/library/dot/components/table-list/frameworks/utils/reOrder.js +76 -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/client-actions/translators/client-actions-translator/index.js +5 -2
  111. package/es/platform/client-actions/translators/condition-resolver/field-evaluators/GetResolvedContextFieldValue.js +3 -2
  112. package/es/platform/client-actions/translators/context-resolver/index.js +1 -4
  113. package/es/platform/column-chooser/adapters/controllers/AbstractController.js +10 -0
  114. package/es/platform/column-chooser/adapters/controllers/ColumnChooserCloseController.js +21 -0
  115. package/es/platform/column-chooser/adapters/controllers/ColumnChooserOpenController.js +26 -0
  116. package/es/platform/column-chooser/adapters/controllers/ColumnChooserReorderController.js +26 -0
  117. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSaveController.js +21 -0
  118. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSearchController.js +24 -0
  119. package/es/platform/column-chooser/adapters/controllers/ColumnChooserSelectController.js +26 -0
  120. package/es/platform/column-chooser/adapters/gateways/Repository.js +38 -0
  121. package/es/platform/column-chooser/adapters/gateways/Service.js +34 -0
  122. package/es/platform/column-chooser/adapters/gateways/State.js +1 -0
  123. package/es/platform/column-chooser/adapters/presenters/Presenter.js +25 -0
  124. package/es/platform/column-chooser/applications/interfaces/UsecaseDependencies.js +1 -0
  125. package/es/platform/column-chooser/applications/interfaces/gateways/IRepository.js +1 -0
  126. package/es/platform/column-chooser/applications/interfaces/gateways/IService.js +1 -0
  127. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserCloseInput.js +1 -0
  128. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserOpenInput.js +1 -0
  129. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserReorderInput.js +1 -0
  130. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSaveInput.js +1 -0
  131. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSearchInput.js +1 -0
  132. package/es/platform/column-chooser/applications/interfaces/input/ColumnChooserSelectInput.js +1 -0
  133. package/es/platform/column-chooser/applications/interfaces/output/BehaviourState.js +1 -0
  134. package/es/platform/column-chooser/applications/interfaces/output/IPresenter.js +1 -0
  135. package/es/platform/column-chooser/applications/usecases/AbstractUseCase.js +18 -0
  136. package/es/platform/column-chooser/applications/usecases/ColumnChooserCloseUseCase.js +34 -0
  137. package/es/platform/column-chooser/applications/usecases/ColumnChooserOpenUseCase.js +20 -0
  138. package/es/platform/column-chooser/applications/usecases/ColumnChooserReorderUseCase.js +20 -0
  139. package/es/platform/column-chooser/applications/usecases/ColumnChooserSaveUseCase.js +31 -0
  140. package/es/platform/column-chooser/applications/usecases/ColumnChooserSearchUseCase.js +19 -0
  141. package/es/platform/column-chooser/applications/usecases/ColumnChooserSelectUseCase.js +26 -0
  142. package/es/platform/column-chooser/domain/entities/ColumnChooserImp.js +95 -0
  143. package/es/platform/column-chooser/domain/entities/ReorderEntityImp.js +35 -0
  144. package/es/platform/column-chooser/domain/entities/SearchEntityImp.js +28 -0
  145. package/es/platform/column-chooser/domain/entities/SelectEntityImp.js +58 -0
  146. package/es/platform/column-chooser/domain/entities/interfaces/ColumnChooser.js +1 -0
  147. package/es/platform/column-chooser/domain/entities/interfaces/ReorderEntity.js +1 -0
  148. package/es/platform/column-chooser/domain/entities/interfaces/SearchEntity.js +1 -0
  149. package/es/platform/column-chooser/domain/entities/interfaces/SelectEntity.js +1 -0
  150. package/es/platform/column-chooser/frameworks/ColumnChooserBehaviourFactory.js +19 -0
  151. package/es/platform/column-chooser/frameworks/EventHandlersFactory.js +30 -0
  152. package/es/platform/components/form-connected/frameworks/FormConnectedFactory.js +33 -0
  153. package/es/{desk-frameworks → platform/components}/form-connected/frameworks/FormConnectedView.js +1 -1
  154. package/es/{desk-frameworks → platform/components}/form-connected/frameworks/FormSdkFactory.js +3 -14
  155. package/es/platform/components/table-connected/adapters/controllers/ColumnChooserOpenedController.js +28 -0
  156. package/es/platform/components/table-connected/adapters/controllers/ColumnChooserUpdateController.js +25 -0
  157. package/es/platform/components/table-connected/adapters/controllers/ReOrderFinishController.js +21 -0
  158. package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ResizeByMouseController.js +1 -1
  159. package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ResizeEndController.js +1 -1
  160. package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ResizeFinishController.js +1 -1
  161. package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ResizeStartController.js +2 -2
  162. package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ScrollController.js +1 -1
  163. package/es/platform/components/table-connected/adapters/resources/SmartTableResource.js +251 -0
  164. package/es/platform/components/table-connected/application/interfaces/ISmartTableResource.js +1 -0
  165. package/es/{desk-frameworks → platform/components}/table-connected/frameworks/EventHandlersFactory.js +29 -15
  166. package/es/platform/components/table-connected/frameworks/ListSdkFactory.js +57 -0
  167. package/es/platform/components/table-connected/frameworks/TableConnectedFactory.js +76 -0
  168. package/es/{desk-frameworks → platform/components}/table-connected/frameworks/TableConnectedView.js +13 -8
  169. package/es/platform/data-source/http-template/reOrderRecord.js +44 -0
  170. package/es/platform/data-source/http-template/updateSelectedFields.js +28 -0
  171. package/es/platform/data-source/index.js +4 -0
  172. package/es/platform/sdk/adapters/gateways/Repository.js +31 -0
  173. package/es/platform/sdk/adapters/gateways/Service.js +27 -0
  174. package/es/platform/sdk/adapters/presenters/Presenter.js +16 -0
  175. package/es/platform/sdk/application/interfaces/UsecaseDependencies.js +1 -0
  176. package/es/platform/sdk/application/interfaces/gateways/AbstractResource.js +13 -0
  177. package/es/platform/sdk/application/interfaces/gateways/IRepository.js +1 -0
  178. package/es/platform/sdk/application/interfaces/gateways/ISdkManager.js +1 -0
  179. package/es/platform/sdk/application/interfaces/gateways/IService.js +1 -0
  180. package/es/platform/sdk/application/interfaces/input/CreateResourceInstanceUseCaseInputModel.js +1 -0
  181. package/es/platform/sdk/application/interfaces/input/DestructResourceInstanceUseCaseInputModel.js +1 -0
  182. package/es/platform/sdk/application/interfaces/input/GetResourceInstanceUseCaseInputModel.js +1 -0
  183. package/es/platform/sdk/application/interfaces/input/RegisterResourceInputModel.js +1 -0
  184. package/es/platform/sdk/application/interfaces/input/SyncStateWithResourceInputModel.js +1 -0
  185. package/es/platform/sdk/application/interfaces/output/ISdkPresenter.js +3 -0
  186. package/es/platform/sdk/application/usecases/AbstractUseCase.js +16 -0
  187. package/es/platform/sdk/application/usecases/CreateResourceInstanceUseCase.js +16 -0
  188. package/es/platform/sdk/application/usecases/DestructResourceInstanceUseCase.js +16 -0
  189. package/es/platform/sdk/application/usecases/GetResourceInstanceUseCase.js +17 -0
  190. package/es/platform/sdk/application/usecases/RegisterResourceUseCase.js +16 -0
  191. package/es/platform/sdk/application/usecases/SyncStateWithResourceUseCase.js +25 -0
  192. package/es/platform/sdk/domain/entities/ResourceManager.js +95 -0
  193. package/es/platform/sdk/domain/entities/interfaces/IResourceManager.js +1 -0
  194. package/es/platform/sdk/domain/entities/interfaces/ResourceManagerRestoreModel.js +1 -0
  195. package/es/platform/sdk/domain/entities/interfaces/SdkResource.js +1 -0
  196. package/es/platform/sdk/domain/entities/interfaces/SdkResourceDependencies.js +1 -0
  197. package/es/platform/sdk/domain/entities/interfaces/StateInterface.js +1 -0
  198. package/es/platform/sdk/frameworks/Sdk.js +11 -0
  199. package/es/platform/sdk/frameworks/SdkRegistry.js +72 -0
  200. package/es/platform/sdk-behaviour/adapters/controllers/AbstractController.js +11 -0
  201. package/es/platform/sdk-behaviour/adapters/controllers/DestructController.js +19 -0
  202. package/es/platform/sdk-behaviour/adapters/controllers/InitializeController.js +19 -0
  203. package/es/platform/sdk-behaviour/adapters/controllers/SyncStateWithResourceController.js +24 -0
  204. package/es/platform/sdk-behaviour/adapters/gateways/Repository.js +25 -0
  205. package/es/platform/sdk-behaviour/adapters/gateways/ResourceManagerGateWay.js +43 -0
  206. package/es/platform/sdk-behaviour/adapters/gateways/Service.js +19 -0
  207. package/es/platform/sdk-behaviour/applications/AbstractUseCase.js +6 -0
  208. package/es/platform/sdk-behaviour/applications/interfaces/UsecaseDependencies.js +1 -0
  209. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IRepository.js +1 -0
  210. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IResourceManagerGateWay.js +3 -0
  211. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IService.js +1 -0
  212. package/es/platform/sdk-behaviour/applications/interfaces/input/CreateResourceInstanceUseCaseInputModel.js +1 -0
  213. package/es/platform/sdk-behaviour/applications/interfaces/input/DestructResourceInstanceUseCaseInputModel.js +1 -0
  214. package/es/platform/sdk-behaviour/applications/interfaces/input/SyncStateWithResourceUseCaseInputModel.js +1 -0
  215. package/es/platform/sdk-behaviour/applications/usecases/CreateResourceInstanceUseCase.js +14 -0
  216. package/es/platform/sdk-behaviour/applications/usecases/DestructResourceInstanceUseCase.js +14 -0
  217. package/es/platform/sdk-behaviour/applications/usecases/SyncStateWithResourceUseCase.js +22 -0
  218. package/es/platform/sdk-behaviour/domain/entities/BehaviourResourceConnector.js +49 -0
  219. package/es/platform/sdk-behaviour/domain/entities/interfaces/IBehaviourResourceConnector.js +1 -0
  220. package/es/platform/sdk-behaviour/domain/entities/interfaces/IResourceManagerProxy.js +2 -0
  221. package/es/platform/sdk-behaviour/frameworks/EventHandlerFactory.js +29 -0
  222. package/es/platform/sdk-behaviour/frameworks/SdkBehaviourFactory.js +16 -0
  223. package/es/platform/zfield/domain/entities/fields-manager/FieldsManager.js +3 -1
  224. package/es/platform/zfield/domain/entities/interfaces/FieldApiName.js +1 -0
  225. package/es/platform/zfield/frameworks/ZFieldBehaviourFactory.js +6 -1
  226. package/es/platform/zform/frameworks/ui/EventHandlerFactory.js +2 -2
  227. package/es/platform/zlist/adapters/controllers/ReOrderController.js +25 -0
  228. package/es/platform/zlist/adapters/controllers/ReOrderFailedController.js +26 -0
  229. package/es/platform/zlist/adapters/gateways/Repository.js +11 -2
  230. package/es/platform/zlist/adapters/gateways/Service.js +8 -0
  231. package/es/platform/zlist/adapters/presenters/SelectionTranslator.js +94 -0
  232. package/es/platform/zlist/adapters/presenters/TableTranslator.js +40 -20
  233. package/es/platform/zlist/adapters/presenters/translators/ColumnTranslator.js +63 -5
  234. package/es/platform/zlist/adapters/presenters/translators/Header.js +5 -2
  235. package/es/platform/zlist/adapters/presenters/translators/ResizerStateTranslator.js +7 -3
  236. package/es/platform/zlist/adapters/presenters/translators/Row.js +1 -1
  237. package/es/platform/zlist/adapters/presenters/translators/fields/LookUpFieldTranslator.js +6 -6
  238. package/es/platform/zlist/adapters/presenters/translators/interfaces/State.js +2 -1
  239. package/es/platform/zlist/adapters/presenters/utils/DefaultClientActions.js +79 -7
  240. package/es/platform/zlist/applications/entities-factory/ListFactory.js +3 -2
  241. package/es/platform/zlist/applications/interfaces/input/GetContextUseCaseInput.js +1 -0
  242. package/es/platform/zlist/applications/interfaces/input/ReOrderRecordUseCaseInput.js +1 -0
  243. package/es/platform/zlist/applications/interfaces/input/UpdateMultipleRecordUseCaseInput.js +1 -0
  244. package/es/platform/zlist/applications/usecases/DeleteMultipleRecordUseCase.js +23 -2
  245. package/es/platform/zlist/applications/usecases/DeleteSingleRecordUseCase.js +9 -0
  246. package/es/platform/zlist/applications/usecases/FetchMoreUseCase.js +4 -1
  247. package/es/platform/zlist/applications/usecases/GetContextUseCase.js +18 -0
  248. package/es/platform/zlist/applications/usecases/ReOrderFailedUseCase.js +22 -0
  249. package/es/platform/zlist/applications/usecases/ReOrderUseCase.js +25 -0
  250. package/es/platform/zlist/applications/usecases/RecordExecuteFailedUseCase.js +3 -1
  251. package/es/platform/zlist/applications/usecases/RecordSuccessCallbackUsecase.js +24 -3
  252. package/es/platform/zlist/applications/usecases/RecordUpdateUseCase.js +9 -0
  253. package/es/platform/zlist/applications/usecases/UpdateMultipleRecordUseCase.js +34 -0
  254. package/es/platform/zlist/domain/entities/List.js +91 -3
  255. package/es/platform/zlist/frameworks/EventHandlersFactory.js +10 -6
  256. package/es/platform/zlist/frameworks/ZListBehaviourFactory.js +2 -1
  257. package/es/platform/zrecord/applications/interfaces/input/GetMultipleRecordUsecaseInputModel.js +1 -0
  258. package/es/platform/zrecord/applications/interfaces/input/GetSingleRecordUseCaseInputModel.js +1 -0
  259. package/es/platform/zrecord/applications/usecases/GetMultipleRecordUseCase.js +16 -0
  260. package/es/platform/zrecord/applications/usecases/GetSingleRecordUseCase.js +17 -0
  261. package/es/platform/zrecord/domain/entities/GetReOrderRecordsStrategy.js +40 -0
  262. package/es/platform/zrecord/domain/entities/Records.js +9 -4
  263. package/es/platform/zrecord/domain/entities/RecordsManager.js +11 -1
  264. package/package.json +12 -8
  265. package/es/desk-frameworks/form-connected/frameworks/FormConnectedFactory.js +0 -33
  266. package/es/desk-frameworks/table-connected/frameworks/ListSdkFactory.js +0 -172
  267. package/es/desk-frameworks/table-connected/frameworks/TableConnectedFactory.js +0 -53
  268. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/SelectAll.js +0 -26
  269. /package/es/{desk-frameworks → platform/components}/form-connected/frameworks/EventHandlersFactory.js +0 -0
  270. /package/es/{desk-frameworks → platform/components}/form-connected/frameworks/FormConnected.js +0 -0
  271. /package/es/{desk-frameworks → platform/components}/index.js +0 -0
  272. /package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/AbstractController.js +0 -0
  273. /package/es/{desk-frameworks → platform/components}/table-connected/frameworks/TableConnected.js +0 -0
@@ -1,12 +1,14 @@
1
1
  import React from 'react';
2
2
  import TableRow from '@zohodesk-private/desk-components/es/table/TableList/TableList';
3
+ import DragHandle from '@zohodesk-private/desk-components/es/DragHandle/DragHandle';
3
4
  import RowSelection from "./RowSelection";
4
5
  import Columns from "./Columns";
5
6
  import RowActions from "./RowActions";
6
7
  import { createCustomComponent } from "../../../../../../../custom-component";
7
8
  import { RowEventHandlersFactory } from "./RowEventHandlersFactory";
8
9
  import TableRowProperties from "../../../../../../../../cc/table-list/row/Properties";
9
- import TableRowConstants from "../../../../../../../../cc/table-list/row/Constants"; // @ts-ignore
10
+ import TableRowConstants from "../../../../../../../../cc/table-list/row/Constants";
11
+ import { SortableHandle } from 'react-sortable-hoc'; // @ts-ignore
10
12
 
11
13
  import style from "../../css/TableList.module.css";
12
14
 
@@ -19,10 +21,15 @@ function RowView(_ref, ref) {
19
21
  dispatch
20
22
  } = helpers;
21
23
  const {
24
+ isReorderEnabled,
22
25
  isSelectionEnabled,
23
26
  isSelected,
24
27
  isSelectable,
25
- selectionTooltip
28
+ isKeyboardControlsEnabled,
29
+ isFocussed,
30
+ selectionTooltip,
31
+ isDroppable,
32
+ dropPosition
26
33
  } = state.properties;
27
34
  const {
28
35
  id,
@@ -37,11 +44,14 @@ function RowView(_ref, ref) {
37
44
  type,
38
45
  actions
39
46
  } = rowActionLocation;
40
- return /*#__PURE__*/React.createElement(TableRow, {
47
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TableRow, {
41
48
  key: id,
42
49
  ref: ref,
43
50
  testId: id,
44
- $flag_padding: !isSelectionEnabled,
51
+ $flag_padding: !isSelectionEnabled && !isReorderEnabled,
52
+ $flag_active: isSelected,
53
+ $flag_hasHighlighter: isKeyboardControlsEnabled,
54
+ $flag_isHighlighted: isFocussed,
45
55
  $event_onClick: () => dispatch({
46
56
  type: TableRowConstants.TABLE_ROW_CLICKED,
47
57
  payload: {
@@ -51,8 +61,14 @@ function RowView(_ref, ref) {
51
61
  customStyle: {
52
62
  $pointer: style[`rowCursor_${cursor}`]
53
63
  }
54
- }, renderRowSelection({
64
+ }, renderReorderer({
65
+ isSelectionEnabled,
66
+ isReorderEnabled,
67
+ isKeyboardControlsEnabled
68
+ }), renderRowSelection({
55
69
  isSelectionEnabled,
70
+ isReorderEnabled,
71
+ isKeyboardControlsEnabled,
56
72
  id,
57
73
  selectionTooltip,
58
74
  isSelected,
@@ -66,12 +82,16 @@ function RowView(_ref, ref) {
66
82
  columnWidth: rowActionsColumnWidth,
67
83
  type,
68
84
  actions
69
- }));
85
+ }), isDroppable && /*#__PURE__*/React.createElement("div", {
86
+ className: `${style.rowDropIndicator} ${dropPosition === 'downward' && style.dropIndicatorTop} ${dropPosition === 'upward' && style.dropIndicatorBottom}`
87
+ })));
70
88
  }
71
89
 
72
90
  function renderRowSelection(_ref2) {
73
91
  let {
74
92
  isSelectionEnabled,
93
+ isReorderEnabled,
94
+ isKeyboardControlsEnabled,
75
95
  id,
76
96
  selectionTooltip,
77
97
  isSelected,
@@ -80,6 +100,8 @@ function renderRowSelection(_ref2) {
80
100
  } = _ref2;
81
101
  return /*#__PURE__*/React.createElement(RowSelection, {
82
102
  isSelectionEnabled: isSelectionEnabled,
103
+ isReorderEnabled: isReorderEnabled,
104
+ isKeyboardControlsEnabled: isKeyboardControlsEnabled,
83
105
  id: id,
84
106
  tooltip: selectionTooltip,
85
107
  selected: isSelected,
@@ -88,24 +110,52 @@ function renderRowSelection(_ref2) {
88
110
  });
89
111
  }
90
112
 
91
- function renderColumns(_ref3) {
113
+ function renderReorderer(_ref3) {
114
+ let {
115
+ isSelectionEnabled,
116
+ isReorderEnabled,
117
+ isKeyboardControlsEnabled
118
+ } = _ref3;
119
+ const DragHandler = SortableHandle(_ref4 => {
120
+ let {
121
+ isSelectionEnabled,
122
+ isReorderEnabled,
123
+ isKeyboardControlsEnabled
124
+ } = _ref4;
125
+ return /*#__PURE__*/React.createElement("td", {
126
+ tabIndex: 0,
127
+ className: `${style.dragHandleWrapper} ${isKeyboardControlsEnabled && isSelectionEnabled && !isReorderEnabled ? style.paddingRight16 : isKeyboardControlsEnabled ? `${style.offsetLeft8} ${style.paddingLeft0} ${style.paddingRight8}` : `${style.offsetLeft0} ${style.paddingLeft8}`}`
128
+ }, /*#__PURE__*/React.createElement(DragHandle, {
129
+ customStyle: {
130
+ container: `${style.dragHandleContainer} `
131
+ }
132
+ }));
133
+ });
134
+ return isReorderEnabled ? /*#__PURE__*/React.createElement(DragHandler, {
135
+ isSelectionEnabled: isSelectionEnabled,
136
+ isReorderEnabled: isReorderEnabled,
137
+ isKeyboardControlsEnabled: isKeyboardControlsEnabled
138
+ }) : null;
139
+ }
140
+
141
+ function renderColumns(_ref5) {
92
142
  let {
93
143
  columns,
94
144
  isFlexibleColumns
95
- } = _ref3;
145
+ } = _ref5;
96
146
  return /*#__PURE__*/React.createElement(Columns, {
97
147
  data: columns,
98
148
  isFlexibleColumns: isFlexibleColumns
99
149
  });
100
150
  }
101
151
 
102
- function renderRowActions(_ref4) {
152
+ function renderRowActions(_ref6) {
103
153
  let {
104
154
  hasActions,
105
155
  columnWidth,
106
156
  actions,
107
157
  type
108
- } = _ref4;
158
+ } = _ref6;
109
159
  return /*#__PURE__*/React.createElement(RowActions, {
110
160
  hasActions: hasActions,
111
161
  columnWidth: columnWidth,
@@ -3,7 +3,9 @@ import TableData from '@zohodesk-private/desk-components/es/table/TableData/Tabl
3
3
  import ActionEventMediator from "../../../../../../../../platform/client-actions/components/action-event-mediator/frameworks/ui/ActionEventMediator";
4
4
  import { ActionViewGap } from "../../../../../../../../platform/client-actions/components/interfaces/ActionViewModel";
5
5
  import { AlignmentOfFlex } from "../../../../../../../../cc/table-list/data-types/Header";
6
- import FieldComponent from "../field/FieldComponent";
6
+ import FieldComponent from "../field/FieldComponent"; // @ts-ignore
7
+
8
+ import style from "./../../css/TableList.module.css";
7
9
  export default function RowData(_ref) {
8
10
  let {
9
11
  field,
@@ -25,7 +27,10 @@ export default function RowData(_ref) {
25
27
  $ui_displayMode: 'flex',
26
28
  $ui_alignItems: 'center',
27
29
  $ui_justifyContent: AlignmentOfFlex[alignment]
28
- } : null
30
+ } : null,
31
+ customStyle: hasActions ? {
32
+ tableData: style.fieldWithActions
33
+ } : undefined
29
34
  }, /*#__PURE__*/React.createElement(FieldComponent, {
30
35
  type: type,
31
36
  fieldProps: props
@@ -1,10 +1,13 @@
1
1
  import React from 'react';
2
2
  import TableListSelect from '@zohodesk-private/desk-components/es/table/TableListSelect/TableListSelect';
3
3
  import { TableListConstants } from "../../../../../../../../cc/table-list";
4
+ import style from "./../../css/TableList.module.css";
4
5
 
5
6
  function RowSelection(_ref) {
6
7
  let {
7
8
  isSelectionEnabled,
9
+ isReorderEnabled,
10
+ isKeyboardControlsEnabled,
8
11
  id,
9
12
  tooltip,
10
13
  selected,
@@ -16,10 +19,18 @@ function RowSelection(_ref) {
16
19
  return null;
17
20
  }
18
21
 
22
+ const customPropsContainer = isReorderEnabled && isSelectionEnabled ? {
23
+ $data_width: 56
24
+ } : {};
19
25
  return /*#__PURE__*/React.createElement(TableListSelect, {
20
26
  $data_id: id,
21
27
  $i18n_tooltip: tooltip,
22
28
  $flag_checked: selected,
29
+ customStyle: {
30
+ container: isReorderEnabled && isSelectionEnabled ? `${style.offsetLeft24} ${style.paddingRight24}` : isKeyboardControlsEnabled && isSelectionEnabled ? `${style.paddingRight16} ${style.offsetLeft8}` : isKeyboardControlsEnabled ? style.offsetLeft8 : style.offsetLeft0
31
+ },
32
+ $customProps_container: customPropsContainer,
33
+ $flag_disabled: !selectable,
23
34
  $event_onChange: (_, event) => dispatch({
24
35
  type: TableListConstants.TABLE_LIST_TOGGLE_ITEM_SELECTION,
25
36
  payload: {
@@ -0,0 +1,76 @@
1
+ function reorderImmutableArray(arr, fromIndex, toIndex) {
2
+ const start = fromIndex < 0 ? arr.length + fromIndex : fromIndex;
3
+
4
+ if (start >= 0 && start < arr.length) {
5
+ const end = toIndex < 0 ? arr.length + toIndex : toIndex;
6
+ const [item] = arr.splice(start, 1);
7
+ arr.splice(end, 0, item);
8
+ }
9
+ }
10
+
11
+ export function reorderArray(arr, fromIndex, toIndex) {
12
+ const copy = [...arr];
13
+ reorderImmutableArray(copy, fromIndex, toIndex);
14
+ return copy;
15
+ }
16
+ export function parseCssNumberWithUnit(value) {
17
+ if (typeof value !== "string") return null;
18
+ const regex = /^(-?\d+(\.\d+)?)([a-z%]*)$/i;
19
+ const match = value.trim().match(regex);
20
+ if (!match) return null;
21
+ return {
22
+ number: parseFloat(match[1]),
23
+ unit: match[3] || ""
24
+ };
25
+ }
26
+ export function setTableUserSelect(ref, value) {
27
+ if (ref.current) {
28
+ ref.current.style.userSelect = value;
29
+ }
30
+ }
31
+ export function adjustHelperElementPosition(ref, draggingClass) {
32
+ if (ref.current) {
33
+ const TableScrollLeft = ref.current.scrollLeft;
34
+ const helperElement = ref.current.querySelector(`.${draggingClass}`);
35
+
36
+ if (helperElement) {
37
+ const helperLeft = parseCssNumberWithUnit(helperElement.style.left);
38
+
39
+ if (helperLeft && helperLeft.unit === 'px') {
40
+ helperElement.style.left = `${helperLeft.number + TableScrollLeft}px`;
41
+ }
42
+ }
43
+ }
44
+ }
45
+ export function getDropIndicator(_ref) {
46
+ let {
47
+ index,
48
+ oldIndex,
49
+ newIndex,
50
+ rowsLength
51
+ } = _ref;
52
+ const isMovingDown = newIndex > oldIndex;
53
+ let dropIndex, normalizedDropIndex, dropPosition;
54
+
55
+ if (isMovingDown) {
56
+ dropIndex = newIndex < index ? newIndex : newIndex + 1;
57
+ } else {
58
+ dropIndex = newIndex <= index ? newIndex - 1 : newIndex;
59
+ }
60
+
61
+ normalizedDropIndex = dropIndex;
62
+ dropPosition = isMovingDown ? 'downward' : 'upward';
63
+
64
+ if (dropIndex < 0) {
65
+ normalizedDropIndex = 0;
66
+ dropPosition = 'downward';
67
+ } else if (dropIndex >= rowsLength) {
68
+ normalizedDropIndex = rowsLength - 1;
69
+ dropPosition = 'upward';
70
+ }
71
+
72
+ return {
73
+ index: normalizedDropIndex,
74
+ position: dropPosition
75
+ };
76
+ }
@@ -0,0 +1,11 @@
1
+ import { createCustomComponent } from "../../../../../custom-component";
2
+ import { TableColumnChooserProperties } from "../../../../../../cc/table-column-chooser";
3
+ import TableColumnChooserView from "./TableColumnChooserView";
4
+ const TableColumnChooser = createCustomComponent({
5
+ name: 'TableColumnChooser',
6
+ View: TableColumnChooserView,
7
+ properties: TableColumnChooserProperties,
8
+ events: [],
9
+ eventHandlers: {}
10
+ });
11
+ export default TableColumnChooser;
@@ -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,
@@ -20,8 +20,11 @@ export default class ClientActionsTranslator {
20
20
  }
21
21
 
22
22
  static transform(actions, context) {
23
- const resolvedActions = ActionContextResolver.resolveActions(actions, context);
24
- const evaluatedActions = resolvedActions.filter(action => ConditionResolver.evaluateCondition(action.conditions, context, action.id));
23
+ const replacementContext = {
24
+ "@context": context
25
+ };
26
+ const resolvedActions = ActionContextResolver.resolveActions(actions, replacementContext);
27
+ const evaluatedActions = resolvedActions.filter(action => ConditionResolver.evaluateCondition(action.conditions, replacementContext, action.id));
25
28
  const finalTransformedActions = evaluatedActions.map(action => this.transformToActionViewModel(action));
26
29
  return finalTransformedActions;
27
30
  }
@@ -1,6 +1,7 @@
1
+ import TemplateResolver from "../../../template-resolver";
1
2
  export function getResolvedContextFieldValue(context, field) {
2
- if (field.includes(".")) {
3
- let value = field.split(".").reduce((obj, key) => obj && obj[key], context);
3
+ if (field.includes('.')) {
4
+ let value = TemplateResolver.replaceContextVariables(field, context);
4
5
  return value;
5
6
  }
6
7
 
@@ -45,10 +45,7 @@ export class ActionContextResolver {
45
45
  }
46
46
 
47
47
  static resolveActions(actions, context) {
48
- const replacementContext = {
49
- "@context": context
50
- };
51
- return actions ? actions.map(action => this.resolveAction(action, replacementContext)) : [];
48
+ return actions ? actions.map(action => this.resolveAction(action, context)) : [];
52
49
  }
53
50
 
54
51
  }
@@ -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;