@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,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { useRef } from 'react';
2
2
  import Table from '@zohodesk-private/desk-components/es/table/Table/Table';
3
3
  import Header from "./sub-components/Header";
4
4
  import Body from "./sub-components/Body";
@@ -7,7 +7,9 @@ import NoData from "./sub-components/NoData";
7
7
  import ErrorState from "./sub-components/ErrorState";
8
8
  import Loading from "./sub-components/Loading";
9
9
  import ColumnResizingLine from "./sub-components/ColumnResizingLine";
10
- import handleScroll from "./handlers/HandleScroll"; // @ts-ignore
10
+ import handleScroll from "./handlers/HandleScroll";
11
+ import { useTableRowReorder } from "../hooks/useTableRowReorder";
12
+ import { SortableContainer } from 'react-sortable-hoc'; // @ts-ignore
11
13
 
12
14
  import style from "./css/TableList.module.css";
13
15
 
@@ -16,6 +18,7 @@ function TableListView(_ref2, _ref) {
16
18
  state,
17
19
  helpers
18
20
  } = _ref2;
21
+ const TableRef = useRef(null);
19
22
  const {
20
23
  dispatch
21
24
  } = helpers;
@@ -23,10 +26,12 @@ function TableListView(_ref2, _ref) {
23
26
  data,
24
27
  isLoading,
25
28
  resizerState,
29
+ reOrderConfig,
26
30
  selectionConfig,
27
31
  isFlexibleColumns,
28
32
  rowCursor,
29
33
  rowActionsConfig,
34
+ keyboardControlsConfig,
30
35
  selection,
31
36
  emptyStateUiType,
32
37
  isError
@@ -43,27 +48,40 @@ function TableListView(_ref2, _ref) {
43
48
 
44
49
  const isDataEmpty = !hasRows && !isLoading && !isError; // TODO: derive from state.properties
45
50
 
51
+ const isKeyboardControlsEnabled = keyboardControlsConfig.isEnabled;
52
+
53
+ const getTableRef = ref => {
54
+ TableRef.current = ref;
55
+ };
56
+
46
57
  return /*#__PURE__*/React.createElement("div", {
47
58
  className: style.wrapper,
48
59
  ref: _ref
49
60
  }, /*#__PURE__*/React.createElement(Table, {
61
+ ref: getTableRef,
50
62
  $event_onScroll: e => handleScroll(dispatch, {
51
63
  scrollEvent: e
52
64
  })
53
65
  }, renderHeader({
54
66
  headers,
55
67
  resizerState,
68
+ reOrderConfig,
56
69
  selectionConfig,
57
70
  selection,
71
+ isKeyboardControlsEnabled,
58
72
  isFlexibleColumns,
59
73
  hasRowActions,
60
74
  rowActionsColumnWidth,
61
75
  dispatch
62
76
  }), renderBody({
77
+ TableRef,
78
+ dispatch,
63
79
  headers,
64
80
  rows,
65
81
  isFlexibleColumns,
82
+ reOrderConfig,
66
83
  selectionConfig,
84
+ isKeyboardControlsEnabled,
67
85
  rowCursor,
68
86
  hasRowActions,
69
87
  rowActionsColumnWidth,
@@ -83,51 +101,101 @@ function renderHeader(_ref3) {
83
101
  let {
84
102
  headers,
85
103
  resizerState,
104
+ reOrderConfig,
86
105
  selectionConfig,
87
106
  selection,
107
+ isKeyboardControlsEnabled,
88
108
  isFlexibleColumns,
89
109
  hasRowActions,
90
110
  rowActionsColumnWidth,
91
111
  dispatch
92
112
  } = _ref3;
93
113
  return /*#__PURE__*/React.createElement(Header, {
114
+ isReorderEnabled: reOrderConfig.isEnabled,
94
115
  isSelectionEnabled: selectionConfig.isEnabled,
95
- isSelectAllEnabled: selectionConfig.isSelectAllEnabled,
96
- hasAllSelected: selection.hasAllSelected,
97
116
  isResizerEnabled: resizerState.isEnabled,
117
+ isKeyboardControlsEnabled: isKeyboardControlsEnabled,
98
118
  currentlyResizingColumn: resizerState.currentlyResizingColumn,
99
119
  isCurrentlyResizing: resizerState.isCurrentlyResizing,
100
120
  resizerExtraWidth: resizerState.extraWidth,
101
121
  isFlexibleColumns: isFlexibleColumns,
102
122
  hasRowActions: hasRowActions,
103
123
  rowActionsColumnWidth: rowActionsColumnWidth,
124
+ actions: selection.actions,
104
125
  headers: headers,
105
126
  dispatch: dispatch
106
127
  });
107
128
  }
108
129
 
130
+ const SortableTableContainer = SortableContainer(props => {
131
+ const {
132
+ hasRows,
133
+ isFlexibleColumns,
134
+ children
135
+ } = props;
136
+ return /*#__PURE__*/React.createElement(Body, {
137
+ hasRows: hasRows,
138
+ isFlexibleColumns: isFlexibleColumns
139
+ }, children);
140
+ });
141
+
109
142
  function renderBody(_ref4) {
110
143
  let {
144
+ TableRef,
145
+ dispatch,
111
146
  headers,
112
147
  rows,
113
148
  isFlexibleColumns,
149
+ reOrderConfig,
114
150
  selectionConfig,
151
+ isKeyboardControlsEnabled,
115
152
  rowCursor,
116
153
  hasRowActions,
117
154
  rowActionsColumnWidth,
118
155
  hasRows
119
156
  } = _ref4;
120
- return /*#__PURE__*/React.createElement(Body, {
157
+ const {
158
+ rowData,
159
+ dropIndicator,
160
+ handleSortStart,
161
+ handleSortEnd,
162
+ handleSortOver,
163
+ getHelperDimensions
164
+ } = useTableRowReorder({
165
+ rows,
166
+ TableRef,
167
+ dispatch
168
+ });
169
+
170
+ if (!hasRows) {
171
+ return null;
172
+ }
173
+
174
+ return /*#__PURE__*/React.createElement(SortableTableContainer, {
121
175
  hasRows: hasRows,
122
- isFlexibleColumns: isFlexibleColumns
176
+ isFlexibleColumns: isFlexibleColumns,
177
+ helperClass: `${style.dragging}`,
178
+ useDragHandle: true,
179
+ helperContainer: () => TableRef.current,
180
+ onSortStart: handleSortStart,
181
+ onSortEnd: handleSortEnd,
182
+ onSortOver: handleSortOver,
183
+ getHelperDimensions: getHelperDimensions,
184
+ axis: "y",
185
+ lockAxis: "y",
186
+ lockToContainerEdges: true,
187
+ distance: 1
123
188
  }, /*#__PURE__*/React.createElement(Rows, {
124
189
  headers: headers,
125
- rows: rows,
190
+ rows: rowData,
126
191
  isFlexibleColumns: isFlexibleColumns,
192
+ isReorderEnabled: reOrderConfig.isEnabled,
127
193
  isSelectionEnabled: selectionConfig.isEnabled,
128
194
  rowCursor: rowCursor,
129
195
  hasRowActions: hasRowActions,
130
- rowActionsColumnWidth: rowActionsColumnWidth
196
+ rowActionsColumnWidth: rowActionsColumnWidth,
197
+ isKeyboardControlsEnabled: isKeyboardControlsEnabled,
198
+ dropIndicator: dropIndicator
131
199
  }));
132
200
  }
133
201
 
@@ -1,33 +1,47 @@
1
1
  .loader {
2
2
  padding: var(--zd_size40) 0
3
3
  }
4
+
4
5
  .wrapper {
5
6
  height: 100% ;
6
7
  width: 100% ;
7
8
  position: relative
8
9
  }
10
+
9
11
  .resizerSpace {
10
12
  width: calc(var(--local_table_resizer_extra_space, 0) * var(--zd_size1));
11
13
  flex-shrink: 0
12
14
  }
15
+
13
16
  .contentWrapper {
14
17
  composes: sticky from '~@zohodesk/components/es/common/common.module.css';
15
18
  }
19
+
16
20
  [dir=ltr] .contentWrapper {
17
21
  left: 0 ;
18
22
  }
23
+
19
24
  [dir=rtl] .contentWrapper {
20
25
  right: 0 ;
21
26
  }
27
+
22
28
  .initialLoading {
23
29
  height: calc(100% - (var(--zd_size100)))
24
30
  }
31
+
25
32
  .emptyContent {
26
33
  padding: var(--zd_size160) 0 var(--zd_size60)
27
34
  }
35
+
28
36
  .errorContent {
29
37
  padding: var(--zd_size60) 0
30
38
  }
39
+
40
+ .headerWithActions,
41
+ .fieldWithActions {
42
+ gap: var(--zd_size6)
43
+ }
44
+
31
45
  .actions {
32
46
  gap: var(--zd_size8)
33
47
  }
@@ -35,9 +49,141 @@
35
49
  .rowCursor_default {
36
50
  cursor: default
37
51
  }
52
+
38
53
  .rowCursor_pointer {
39
54
  cursor: pointer
40
55
  }
56
+
41
57
  .rowCursor_not-allowed {
42
58
  cursor: not-allowed
43
- }
59
+ }
60
+
61
+ .dragging {
62
+ overflow: hidden;
63
+ box-shadow: var(--local_tablelist_box_shadow);
64
+ }
65
+
66
+ :global(.GLOBAL_ZDDC_tableList).dragging .dragHandleContainer {
67
+ /* css:theme-validation:ignore */
68
+ color: var(--local_drag_handle_hover_color);
69
+ background-color: var(--local_drag_handle_dragging_bg);
70
+ }
71
+
72
+ :global(.GLOBAL_ZDDC_tableList).dragging .dragHandleContainer,
73
+ :global(.GLOBAL_ZDDC_tableList:hover) .dragHandleContainer,
74
+ :global(.GLOBAL_ZDDC_tableList:focus-within) .dragHandleContainer {
75
+ visibility: visible;
76
+ opacity: 1;
77
+ }
78
+
79
+ .dragHandleContainer {
80
+ opacity: 0;
81
+ visibility: hidden;
82
+ }
83
+
84
+ .dragHandleWrapper {
85
+ align-self: stretch;
86
+ composes: sticky from '~@zohodesk/components/es/common/common.module.css';
87
+ z-index: 1;
88
+ /* css:theme-validation:ignore */
89
+ padding: 0 ;
90
+ background-color: var(--local_tablelist_bg);
91
+ }
92
+
93
+ [dir=ltr] .dragHandleWrapper {
94
+ left: 0 ;
95
+ }
96
+
97
+ [dir=rtl] .dragHandleWrapper {
98
+ right: 0 ;
99
+ }
100
+
101
+ .rowDropIndicator {
102
+ width: 100% ;
103
+ height: var(--zd_size2) ;
104
+ /* css:theme-validation:ignore */
105
+ position: absolute;
106
+ z-index: 2;
107
+ background-color: var(--local_tablelist_drop_highlight_bg);
108
+ }
109
+
110
+ .dropIndicatorTop {
111
+ top: 0 ;
112
+ }
113
+
114
+ .dropIndicatorBottom {
115
+ bottom: calc( var(--zd_size3) * -1 ) ;
116
+ }
117
+
118
+ [dir=ltr] .offsetLeft0 {
119
+ left: 0 !important;
120
+ }
121
+
122
+ [dir=rtl] .offsetLeft0 {
123
+ right: 0 !important;
124
+ }
125
+
126
+ [dir=ltr] .offsetLeft8 {
127
+ left: var(--zd_size8) !important;
128
+ }
129
+
130
+ [dir=rtl] .offsetLeft8 {
131
+ right: var(--zd_size8) !important;
132
+ }
133
+
134
+ [dir=ltr] .offsetLeft24 {
135
+ left: var(--zd_size24) !important;
136
+ }
137
+
138
+ [dir=rtl] .offsetLeft24 {
139
+ right: var(--zd_size24) !important;
140
+ }
141
+
142
+ [dir=ltr] .paddingLeft0 {
143
+ padding-left: 0 ;
144
+ }
145
+
146
+ [dir=rtl] .paddingLeft0 {
147
+ padding-right: 0 ;
148
+ }
149
+
150
+ [dir=ltr] .paddingLeft8 {
151
+ padding-left: var(--zd_size8) !important;
152
+ }
153
+
154
+ [dir=rtl] .paddingLeft8 {
155
+ padding-right: var(--zd_size8) !important;
156
+ }
157
+
158
+ [dir=ltr] .paddingLeft16 {
159
+ padding-left: var(--zd_size16) !important;
160
+ }
161
+
162
+ [dir=rtl] .paddingLeft16 {
163
+ padding-right: var(--zd_size16) !important;
164
+ }
165
+
166
+ [dir=ltr] .paddingRight8 {
167
+ padding-right: var(--zd_size8) !important;
168
+ }
169
+
170
+ [dir=rtl] .paddingRight8 {
171
+ padding-left: var(--zd_size8) !important;
172
+ }
173
+
174
+ [dir=ltr] .paddingRight16 {
175
+ padding-right: var(--zd_size16) !important;
176
+ }
177
+
178
+ [dir=rtl] .paddingRight16 {
179
+ padding-left: var(--zd_size16) !important;
180
+ }
181
+
182
+ [dir=ltr] .paddingRight24 {
183
+ padding-right: var(--zd_size24) !important;
184
+ }
185
+
186
+ [dir=rtl] .paddingRight24 {
187
+ padding-left: var(--zd_size24) !important;
188
+ }
189
+
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- import TableHeader from '@zohodesk-private/desk-components/es/table/TableHeader/TableHeader'; // import TableHeaderRow from '@zohodesk-private/desk-components/es/table/TableHeader/TableHeaderRow';
2
+ import TableHeader from '@zohodesk-private/desk-components/es/table/TableHeader/TableHeader';
3
+ import TableHeadFirstNode from '@zohodesk-private/desk-components/es/table/TableHeadFirstNode/TableHeadFirstNode'; // import TableHeaderRow from '@zohodesk-private/desk-components/es/table/TableHeader/TableHeaderRow';
3
4
 
4
5
  const TableHeaderRow = _ref => {
5
6
  let {
@@ -8,16 +9,18 @@ const TableHeaderRow = _ref => {
8
9
  return /*#__PURE__*/React.createElement(React.Fragment, null, children);
9
10
  };
10
11
 
11
- import SelectAll from "./header/SelectAll";
12
+ import MassAction from "./header/MassAction";
12
13
  import Headers from "./header/Headers";
13
14
  import ActionColumn from "./header/ActionColumn";
14
15
  import ResizerExtraSpace from "./header/ResizerExtraSpace";
16
+ import style from "./../../ui/css/TableList.module.css";
15
17
 
16
18
  function Header(_ref2) {
17
19
  let {
20
+ isReorderEnabled,
18
21
  isSelectionEnabled,
19
- isSelectAllEnabled,
20
- hasAllSelected,
22
+ actions,
23
+ isKeyboardControlsEnabled,
21
24
  isResizerEnabled,
22
25
  currentlyResizingColumn,
23
26
  isCurrentlyResizing,
@@ -35,19 +38,33 @@ function Header(_ref2) {
35
38
 
36
39
  return /*#__PURE__*/React.createElement(TableHeader, {
37
40
  $flag_isColumnsFlexible: isFlexibleColumns,
38
- $flag_padding: !isSelectionEnabled
39
- }, /*#__PURE__*/React.createElement(TableHeaderRow, null, renderSelectAll(isSelectionEnabled, isSelectAllEnabled, hasAllSelected, dispatch), renderHeaders(headers, currentlyResizingColumn, isResizerEnabled, isFlexibleColumns, dispatch), renderActionColumn(hasRowActions, rowActionsColumnWidth), renderResizerExtraSpace(isCurrentlyResizing, resizerExtraWidth)));
41
+ $flag_padding: !isSelectionEnabled && !isReorderEnabled,
42
+ $flag_hasHighlighter: isKeyboardControlsEnabled
43
+ }, /*#__PURE__*/React.createElement(TableHeaderRow, null, renderReOrderColumn(isSelectionEnabled, isReorderEnabled, isKeyboardControlsEnabled), rendermassAction(isSelectionEnabled, isReorderEnabled, isKeyboardControlsEnabled, actions), renderHeaders(headers, currentlyResizingColumn, isResizerEnabled, isFlexibleColumns, dispatch), renderActionColumn(hasRowActions, rowActionsColumnWidth), renderResizerExtraSpace(isCurrentlyResizing, resizerExtraWidth)));
40
44
  }
41
45
 
42
- function renderSelectAll(isSelectionEnabled, isSelectAllEnabled, hasAllSelected, dispatch) {
43
- return /*#__PURE__*/React.createElement(SelectAll, {
46
+ function rendermassAction(isSelectionEnabled, isReorderEnabled, isKeyboardControlsEnabled, actions) {
47
+ return /*#__PURE__*/React.createElement(MassAction, {
44
48
  isSelectionEnabled: isSelectionEnabled,
45
- isSelectAllEnabled: isSelectAllEnabled,
46
- hasAllSelected: hasAllSelected,
47
- dispatch: dispatch
49
+ isReorderEnabled: isReorderEnabled,
50
+ isKeyboardControlsEnabled: isKeyboardControlsEnabled,
51
+ actions: actions
48
52
  });
49
53
  }
50
54
 
55
+ function renderReOrderColumn(isSelectionEnabled, isReorderEnabled, isKeyboardControlsEnabled) {
56
+ if (isReorderEnabled) {
57
+ return /*#__PURE__*/React.createElement(TableHeadFirstNode, {
58
+ customStyle: {
59
+ container: isKeyboardControlsEnabled && isSelectionEnabled ? style.paddingRight16 : isKeyboardControlsEnabled ? `${style.offsetLeft8} ${style.paddingRight8}` : style.offsetLeft0
60
+ },
61
+ $customProps_container: {
62
+ $data_width: 24
63
+ }
64
+ }, /*#__PURE__*/React.createElement(React.Fragment, null));
65
+ }
66
+ }
67
+
51
68
  function renderHeaders(headers, currentlyResizingColumn, isResizerEnabled, isFlexibleColumns, dispatch) {
52
69
  return /*#__PURE__*/React.createElement(Headers, {
53
70
  headers: headers,
@@ -1,28 +1,40 @@
1
1
  import React from 'react';
2
2
  import Row from "./row/Row";
3
+ import { SortableElement } from 'react-sortable-hoc';
4
+ const SortableRow = SortableElement(props => /*#__PURE__*/React.createElement(Row, { ...props
5
+ }));
3
6
 
4
- function Rows(_ref) {
7
+ const Rows = _ref => {
5
8
  let {
6
9
  headers,
7
10
  rows,
8
11
  isFlexibleColumns,
12
+ isReorderEnabled,
9
13
  isSelectionEnabled,
10
14
  rowCursor,
11
15
  hasRowActions,
12
- rowActionsColumnWidth
16
+ rowActionsColumnWidth,
17
+ isKeyboardControlsEnabled,
18
+ dropIndicator
13
19
  } = _ref;
14
- return rows.map((row, index) => /*#__PURE__*/React.createElement(Row, {
15
- key: index,
16
- ...getRowProps(row, headers, isFlexibleColumns, isSelectionEnabled, rowCursor, hasRowActions, rowActionsColumnWidth)
17
- }));
18
- }
20
+ return rows.map((row, index) => {
21
+ const isDroppable = dropIndicator.index !== null ? dropIndicator.index === index ? true : false : false;
22
+ const dropPosition = dropIndicator.position;
23
+ return /*#__PURE__*/React.createElement(SortableRow, {
24
+ key: `${row.id}`,
25
+ index: index,
26
+ ...getRowProps(row, headers, isFlexibleColumns, isReorderEnabled, isSelectionEnabled, rowCursor, hasRowActions, rowActionsColumnWidth, isKeyboardControlsEnabled, isDroppable, dropPosition)
27
+ });
28
+ });
29
+ };
19
30
 
20
- function getRowProps(row, headers, isFlexibleColumns, isSelectionEnabled, rowCursor, hasRowActions, rowActionsColumnWidth) {
31
+ function getRowProps(row, headers, isFlexibleColumns, isReorderEnabled, isSelectionEnabled, rowCursor, hasRowActions, rowActionsColumnWidth, isKeyboardControlsEnabled, isDroppable, dropPosition) {
21
32
  const {
22
33
  id,
23
34
  columns,
24
35
  isSelected,
25
36
  isSelectable,
37
+ isFocussed,
26
38
  selectionTooltip,
27
39
  rowActionLocation
28
40
  } = row;
@@ -33,12 +45,17 @@ function getRowProps(row, headers, isFlexibleColumns, isSelectionEnabled, rowCur
33
45
  rowActionLocation,
34
46
  isSelected,
35
47
  isSelectable,
48
+ isFocussed,
36
49
  selectionTooltip,
37
50
  isFlexibleColumns,
51
+ isReorderEnabled,
38
52
  isSelectionEnabled,
39
53
  cursor: rowCursor,
40
54
  hasActions: hasRowActions,
41
- rowActionsColumnWidth
55
+ isKeyboardControlsEnabled,
56
+ rowActionsColumnWidth,
57
+ isDroppable,
58
+ dropPosition
42
59
  };
43
60
  }
44
61
 
@@ -4,7 +4,9 @@ import TableHeading from '@zohodesk-private/desk-components/es/table/TableHeadin
4
4
  import { AlignmentOfFlex } from "../../../../../../../../cc/table-list/data-types/Header";
5
5
  import ActionEventMediator from "../../../../../../../../platform/client-actions/components/action-event-mediator/frameworks/ui/ActionEventMediator";
6
6
  import { ActionViewGap } from "../../../../../../../../platform/client-actions/components/interfaces/ActionViewModel";
7
- import ColumnResizer from "./ColumnResizer";
7
+ import ColumnResizer from "./ColumnResizer"; // @ts-ignore
8
+
9
+ import style from "./../../css/TableList.module.css";
8
10
 
9
11
  function HeaderData(_ref) {
10
12
  let {
@@ -39,7 +41,10 @@ function HeaderData(_ref) {
39
41
  $ui_displayMode: 'flex',
40
42
  $ui_alignItems: 'center',
41
43
  $ui_justifyContent: AlignmentOfFlex[alignment]
42
- } : null
44
+ } : null,
45
+ customStyle: hasActions ? {
46
+ tableHead: style.headerWithActions
47
+ } : undefined
43
48
  }, /*#__PURE__*/React.createElement(TableHeading, {
44
49
  $i18n_text: text
45
50
  }), hasActions ? /*#__PURE__*/React.createElement(ActionEventMediator, {
@@ -0,0 +1,45 @@
1
+ import React from 'react';
2
+ import TableHeadFirstNode from '@zohodesk-private/desk-components/es/table/TableHeadFirstNode/TableHeadFirstNode';
3
+ import TableHeading from '@zohodesk-private/desk-components/es/table/TableHeading/TableHeading';
4
+ import ActionEventMediator from "../../../../../../../../platform/client-actions/components/action-event-mediator/frameworks/ui/ActionEventMediator";
5
+ import style from "./../../../ui/css/TableList.module.css";
6
+
7
+ function MassAction(_ref) {
8
+ let {
9
+ isSelectionEnabled,
10
+ isReorderEnabled,
11
+ isKeyboardControlsEnabled,
12
+ actions
13
+ } = _ref;
14
+
15
+ if (!isSelectionEnabled) {
16
+ return null;
17
+ }
18
+
19
+ const customPropsContainer = isReorderEnabled && isSelectionEnabled ? {
20
+ $data_width: 56
21
+ } : {};
22
+
23
+ if (!actions || actions.length === 0) {
24
+ return /*#__PURE__*/React.createElement(TableHeadFirstNode, {
25
+ customStyle: {
26
+ container: isReorderEnabled && isSelectionEnabled ? `${style.offsetLeft24} ${style.paddingRight24}` : isKeyboardControlsEnabled && isSelectionEnabled ? `${style.offsetLeft8} ${style.paddingRight16}` : isKeyboardControlsEnabled ? style.offsetLeft8 : style.offsetLeft0
27
+ },
28
+ $customProps_container: customPropsContainer
29
+ }, /*#__PURE__*/React.createElement(TableHeading, {
30
+ $i18n_text: "M/A",
31
+ $i18n_tooltip: "Mass Action"
32
+ }));
33
+ }
34
+
35
+ return /*#__PURE__*/React.createElement(TableHeadFirstNode, {
36
+ customStyle: {
37
+ container: isReorderEnabled && isSelectionEnabled ? `${style.offsetLeft24} ${style.paddingRight24}` : isKeyboardControlsEnabled && isSelectionEnabled ? `${style.offsetLeft8} ${style.paddingRight16}` : isKeyboardControlsEnabled ? style.offsetLeft8 : style.offsetLeft0
38
+ },
39
+ $customProps_container: customPropsContainer
40
+ }, /*#__PURE__*/React.createElement(ActionEventMediator, {
41
+ actions: actions
42
+ }));
43
+ }
44
+
45
+ export default MassAction;