@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,16 @@
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
+ export class AbstractResource {
4
+ constructor() {
5
+ _defineProperty(this, "dependencies", void 0);
6
+ }
7
+
8
+ initialize() {}
9
+
10
+ updateDependencies(dependencies) {
11
+ this.dependencies = dependencies;
12
+ }
13
+
14
+ destroy() {}
15
+
16
+ }
@@ -0,0 +1,11 @@
1
+ import ResourceNamesEnum from "../../../bc/sdk/ResourceNamesEnum";
2
+ import { sdkRegistry } from "./SdkRegistry";
3
+ export const sdk = {
4
+ [ResourceNamesEnum.SMART_TABLE](instanceName) {
5
+ return sdkRegistry.getResourceInstance({
6
+ resourceName: ResourceNamesEnum.SMART_TABLE,
7
+ instanceName
8
+ });
9
+ }
10
+
11
+ };
@@ -0,0 +1,72 @@
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 { Service } from "../adapters/gateways/Service";
4
+ import { Repository } from "../adapters/gateways/Repository";
5
+ import { Presenter } from "../adapters/presenters/Presenter";
6
+ export class SdkManager {
7
+ // Define a more specific type if needed
8
+ constructor() {
9
+ _defineProperty(this, "presentedData", void 0);
10
+
11
+ _defineProperty(this, "state", {});
12
+
13
+ _defineProperty(this, "service", void 0);
14
+
15
+ // Initialize the service with necessary dependencies
16
+ const repository = new Repository([]);
17
+ const presenter = new Presenter();
18
+ const dependencies = {
19
+ repository,
20
+ presenter
21
+ };
22
+ this.service = new Service(dependencies);
23
+ this.setPresentedData = this.setPresentedData.bind(this);
24
+ }
25
+
26
+ setPresentedData(data) {
27
+ this.presentedData = data;
28
+ }
29
+
30
+ createResourceInstance(input) {
31
+ const {
32
+ createResourceInstanceUseCase
33
+ } = this.service;
34
+ createResourceInstanceUseCase.updateDependencies(this.state, this.setPresentedData);
35
+ createResourceInstanceUseCase.execute(input);
36
+ }
37
+
38
+ destructResourceInstance(input) {
39
+ const {
40
+ destructResourceInstanceUseCase
41
+ } = this.service;
42
+ destructResourceInstanceUseCase.updateDependencies(this.state, this.setPresentedData);
43
+ destructResourceInstanceUseCase.execute(input);
44
+ }
45
+
46
+ syncStateWithResource(input) {
47
+ const {
48
+ syncStateWithResourceUseCase
49
+ } = this.service;
50
+ syncStateWithResourceUseCase.updateDependencies(this.state, this.setPresentedData);
51
+ syncStateWithResourceUseCase.execute(input);
52
+ }
53
+
54
+ registerResource(input) {
55
+ const {
56
+ registerResourceUseCase
57
+ } = this.service;
58
+ registerResourceUseCase.updateDependencies(this.state, this.setPresentedData);
59
+ registerResourceUseCase.execute(input);
60
+ }
61
+
62
+ getResourceInstance(input) {
63
+ const {
64
+ getResourceInstanceUseCase
65
+ } = this.service;
66
+ getResourceInstanceUseCase.updateDependencies(this.state, this.setPresentedData);
67
+ getResourceInstanceUseCase.execute(input);
68
+ return this.presentedData;
69
+ }
70
+
71
+ }
72
+ export const sdkRegistry = new SdkManager();
@@ -0,0 +1,11 @@
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
+ export class AbstractController {
4
+ constructor(service) {
5
+ _defineProperty(this, "service", void 0);
6
+
7
+ this.service = service;
8
+ this.handle = this.handle.bind(this);
9
+ }
10
+
11
+ }
@@ -0,0 +1,19 @@
1
+ import { AbstractController } from "./AbstractController";
2
+ export class DestructController extends AbstractController {
3
+ handle(_ref) {
4
+ let {
5
+ state
6
+ } = _ref;
7
+ const {
8
+ service
9
+ } = this;
10
+ const instanceName = state.properties.instanceName;
11
+ const {
12
+ destructResourceInstanceUseCase
13
+ } = service;
14
+ destructResourceInstanceUseCase.execute({
15
+ instanceName
16
+ });
17
+ }
18
+
19
+ }
@@ -0,0 +1,19 @@
1
+ import { AbstractController } from "./AbstractController";
2
+ export class InitializeController extends AbstractController {
3
+ handle(_ref) {
4
+ let {
5
+ state
6
+ } = _ref;
7
+ const {
8
+ service
9
+ } = this;
10
+ const instanceName = state.properties.instanceName;
11
+ const {
12
+ createResourceInstanceUseCase
13
+ } = service;
14
+ createResourceInstanceUseCase.execute({
15
+ instanceName
16
+ });
17
+ }
18
+
19
+ }
@@ -0,0 +1,24 @@
1
+ import { AbstractController } from "./AbstractController";
2
+ export class SyncStateWithResourceController extends AbstractController {
3
+ handle(_ref) {
4
+ let {
5
+ state,
6
+ dispatch,
7
+ updateState
8
+ } = _ref;
9
+ const {
10
+ service
11
+ } = this;
12
+ const instanceName = state.properties.instanceName;
13
+ const {
14
+ syncStateWithResourceUseCase
15
+ } = service;
16
+ syncStateWithResourceUseCase.execute({
17
+ instanceName,
18
+ state,
19
+ dispatch,
20
+ updateState: updateState
21
+ });
22
+ }
23
+
24
+ }
@@ -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
+ import { BehaviourResourceConnector } from "../../domain/entities/BehaviourResourceConnector";
4
+ export class Repository {
5
+ constructor() {
6
+ _defineProperty(this, "resourceNames", void 0);
7
+
8
+ _defineProperty(this, "resourceManager", void 0);
9
+ }
10
+
11
+ init(resourceNames, resourceManager) {
12
+ this.resourceNames = resourceNames;
13
+ this.resourceManager = resourceManager;
14
+ }
15
+
16
+ getBehaviourResourceConnector() {
17
+ const {
18
+ resourceNames,
19
+ resourceManager
20
+ } = this;
21
+ const behaviourResourceConnector = new BehaviourResourceConnector(resourceNames, resourceManager);
22
+ return behaviourResourceConnector;
23
+ }
24
+
25
+ }
@@ -0,0 +1,43 @@
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
+ export class ResourceManagerGateWay {
4
+ constructor() {
5
+ _defineProperty(this, "sdkRegistry", void 0);
6
+ }
7
+
8
+ init(sdkRegistry) {
9
+ this.sdkRegistry = sdkRegistry;
10
+ }
11
+
12
+ createResourceInstance(resourceName, instanceName) {
13
+ this.sdkRegistry.createResourceInstance({
14
+ resourceName,
15
+ instanceName
16
+ });
17
+ }
18
+
19
+ destructResourceInstance(resourceName, instanceName) {
20
+ this.sdkRegistry.destructResourceInstance({
21
+ resourceName,
22
+ instanceName
23
+ });
24
+ }
25
+
26
+ syncStateWithResource(_ref) {
27
+ let {
28
+ resourceName,
29
+ instanceName,
30
+ state,
31
+ dispatch,
32
+ updateState
33
+ } = _ref;
34
+ this.sdkRegistry.syncStateWithResource({
35
+ resourceName,
36
+ instanceName,
37
+ state,
38
+ dispatch,
39
+ updateState
40
+ });
41
+ }
42
+
43
+ }
@@ -0,0 +1,19 @@
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 { CreateResourceInstanceUseCase } from "../../applications/usecases/CreateResourceInstanceUseCase";
4
+ import { DestructResourceInstanceUseCase } from "../../applications/usecases/DestructResourceInstanceUseCase";
5
+ import { SyncStateWithResourceUseCase } from "../../applications/usecases/SyncStateWithResourceUseCase";
6
+ export class Service {
7
+ constructor(dependencies) {
8
+ _defineProperty(this, "createResourceInstanceUseCase", void 0);
9
+
10
+ _defineProperty(this, "destructResourceInstanceUseCase", void 0);
11
+
12
+ _defineProperty(this, "syncStateWithResourceUseCase", void 0);
13
+
14
+ this.createResourceInstanceUseCase = new CreateResourceInstanceUseCase(dependencies);
15
+ this.destructResourceInstanceUseCase = new DestructResourceInstanceUseCase(dependencies);
16
+ this.syncStateWithResourceUseCase = new SyncStateWithResourceUseCase(dependencies);
17
+ }
18
+
19
+ }
@@ -0,0 +1,6 @@
1
+ export default class AbstractUseCase {
2
+ constructor(dependencies) {
3
+ this.dependencies = dependencies;
4
+ }
5
+
6
+ }
@@ -0,0 +1,3 @@
1
+ import { StateInterface, DispatchFunction, UpdateState } from "../../../../sdk/domain/entities/interfaces/StateInterface"; //
2
+
3
+ export { StateInterface, DispatchFunction, UpdateState };
@@ -0,0 +1,14 @@
1
+ import AbstractUseCase from "../AbstractUseCase";
2
+ export class CreateResourceInstanceUseCase extends AbstractUseCase {
3
+ execute(_ref) {
4
+ let {
5
+ instanceName
6
+ } = _ref;
7
+ const {
8
+ repository
9
+ } = this.dependencies;
10
+ const behaviourResourceConnector = repository.getBehaviourResourceConnector();
11
+ behaviourResourceConnector.createResourceInstances(instanceName);
12
+ }
13
+
14
+ }
@@ -0,0 +1,14 @@
1
+ import AbstractUseCase from "../AbstractUseCase";
2
+ export class DestructResourceInstanceUseCase extends AbstractUseCase {
3
+ execute(_ref) {
4
+ let {
5
+ instanceName
6
+ } = _ref;
7
+ const {
8
+ repository
9
+ } = this.dependencies;
10
+ const behaviourResourceConnector = repository.getBehaviourResourceConnector();
11
+ behaviourResourceConnector.destructResourceInstances(instanceName);
12
+ }
13
+
14
+ }
@@ -0,0 +1,22 @@
1
+ import AbstractUseCase from "../AbstractUseCase";
2
+ export class SyncStateWithResourceUseCase extends AbstractUseCase {
3
+ execute(_ref) {
4
+ let {
5
+ instanceName,
6
+ state,
7
+ dispatch,
8
+ updateState
9
+ } = _ref;
10
+ const {
11
+ repository
12
+ } = this.dependencies;
13
+ const behaviourResourceConnector = repository.getBehaviourResourceConnector();
14
+ behaviourResourceConnector.syncStateWithResources({
15
+ instanceName,
16
+ state,
17
+ dispatch,
18
+ updateState
19
+ });
20
+ }
21
+
22
+ }
@@ -0,0 +1,49 @@
1
+ export class BehaviourResourceConnector {
2
+ constructor(resourceNames, resourceManager) {
3
+ this.resourceNames = resourceNames;
4
+ this.resourceManager = resourceManager;
5
+ }
6
+
7
+ createResourceInstances(instanceName) {
8
+ const {
9
+ resourceNames,
10
+ resourceManager
11
+ } = this;
12
+ resourceNames.forEach(resourceName => {
13
+ resourceManager.createResourceInstance(resourceName, instanceName);
14
+ });
15
+ }
16
+
17
+ destructResourceInstances(instanceName) {
18
+ const {
19
+ resourceNames,
20
+ resourceManager
21
+ } = this;
22
+ resourceNames.forEach(resourceName => {
23
+ resourceManager.destructResourceInstance(resourceName, instanceName);
24
+ });
25
+ }
26
+
27
+ syncStateWithResources(_ref) {
28
+ let {
29
+ instanceName,
30
+ state,
31
+ dispatch,
32
+ updateState
33
+ } = _ref;
34
+ const {
35
+ resourceNames,
36
+ resourceManager
37
+ } = this;
38
+ resourceNames.forEach(resourceName => {
39
+ resourceManager.syncStateWithResource({
40
+ resourceName,
41
+ instanceName,
42
+ state,
43
+ dispatch,
44
+ updateState
45
+ });
46
+ });
47
+ }
48
+
49
+ }
@@ -0,0 +1,2 @@
1
+ import { StateInterface, DispatchFunction, UpdateState } from "../../../../sdk/domain/entities/interfaces/StateInterface";
2
+ export { StateInterface, DispatchFunction, UpdateState };
@@ -0,0 +1,29 @@
1
+ import LifeCycleEvents from "../../../cc/component/LifeCycleEventsEnum";
2
+ import { Repository } from "../adapters/gateways/Repository";
3
+ import { Service } from "../adapters/gateways/Service";
4
+ import { InitializeController } from "../adapters/controllers/InitializeController";
5
+ import { DestructController } from "../adapters/controllers/DestructController";
6
+ import { SyncStateWithResourceController } from "../adapters/controllers/SyncStateWithResourceController";
7
+ import { ResourceManagerGateWay } from "../adapters/gateways/ResourceManagerGateWay";
8
+ import { sdkRegistry } from "../../sdk/frameworks/SdkRegistry";
9
+
10
+ class EventHandlerFactory {
11
+ static create(resourceNames) {
12
+ const resourceManager = new ResourceManagerGateWay();
13
+ resourceManager.init(sdkRegistry);
14
+ const repository = new Repository();
15
+ repository.init(resourceNames, resourceManager);
16
+ const dependencies = {
17
+ repository
18
+ };
19
+ const service = new Service(dependencies);
20
+ return {
21
+ [LifeCycleEvents.MOUNT]: new InitializeController(service).handle,
22
+ [LifeCycleEvents.STATE_UPDATED]: new SyncStateWithResourceController(service).handle,
23
+ [LifeCycleEvents.UN_MOUNT]: new DestructController(service).handle
24
+ };
25
+ }
26
+
27
+ }
28
+
29
+ export default EventHandlerFactory;
@@ -0,0 +1,16 @@
1
+ import SdkProperties from "../../../bc/sdk/Properties";
2
+ import EventHandlerFactory from "./EventHandlerFactory";
3
+
4
+ class SdkBehaviourFactory {
5
+ static create(resourceNames) {
6
+ return {
7
+ name: 'sdkBehaviour',
8
+ setInitialState: () => ({}),
9
+ eventHandlers: EventHandlerFactory.create(resourceNames),
10
+ properties: SdkProperties
11
+ };
12
+ }
13
+
14
+ }
15
+
16
+ export default SdkBehaviourFactory;
@@ -61,7 +61,7 @@ class FieldManager {
61
61
  const {
62
62
  apiName
63
63
  } = metaData;
64
- return apiName === 'availableFields' || apiName === 'selectedFields';
64
+ return apiName === 'availableFields' || apiName === 'selectedFields' || apiName === FieldApiName.UPDATE_SELECTED_FIELDS;
65
65
  }
66
66
 
67
67
  startFetching(apiName) {
@@ -85,6 +85,8 @@ class FieldManager {
85
85
  this.fields = data;
86
86
  } else if (apiName === FieldApiName.SELECTED_FIELDS) {
87
87
  this.selectedFields = data;
88
+ } else if (apiName === FieldApiName.UPDATE_SELECTED_FIELDS) {
89
+ this.selectedFields = data;
88
90
  }
89
91
  }
90
92
 
@@ -1,6 +1,7 @@
1
1
  var FieldApiName = /*#__PURE__*/function (FieldApiName) {
2
2
  FieldApiName["AVAILABLE_FIELDS"] = "availableFields";
3
3
  FieldApiName["SELECTED_FIELDS"] = "selectedFields";
4
+ FieldApiName["UPDATE_SELECTED_FIELDS"] = "updateSelectedFields";
4
5
  return FieldApiName;
5
6
  }(FieldApiName || {});
6
7
 
@@ -4,7 +4,12 @@ class ZFieldBehaviourFactory {
4
4
  static create(apiTemplates) {
5
5
  return {
6
6
  name: 'zfield',
7
- setInitialState: () => ({}),
7
+ setInitialState: () => ({
8
+ fields: [],
9
+ selectedFields: [],
10
+ isFieldsFetching: false,
11
+ isSelectedFieldsFetching: false
12
+ }),
8
13
  eventHandlers: ActionHandlerFactory.create(apiTemplates),
9
14
  properties: {}
10
15
  };
@@ -3,7 +3,7 @@ import FormSubmitController from "../../adapters/controllers/FormSubmitControlle
3
3
  import FormRepository from "../../adapters/gateway/FormRepository";
4
4
  import FormPresenter from "../../adapters/presenter/FormPresenter";
5
5
  import Service from "../../adapters/gateway/Service";
6
- import LifeCycleAction from "../../../../cc/architecture/LifeCycleActionEnum";
6
+ import LifeCycleEvents from "../../../../cc/component/LifeCycleEventsEnum";
7
7
  import InitializeController from "../../adapters/controllers/IntializeController";
8
8
  import { ZFORM_DEPENDENCY_MAPPINGS_REQUEST, ZFORM_DEPENDENCY_MAPPINGS_SUCCESS, ZFORM_FIELD_VALUE_CHANGE_REQUEST, ZFORM_MY_FORM_REQUEST, ZFORM_MY_FORM_SUCCESS, ZFORM_MY_LAYOUTS_SUCCESS, ZFORM_SET_FIELD_ERROR_MESSAGE, ZFORM_SUBMIT_SUCCESS, ZFORM_VALIDATE_FIELD_REQUEST, ZFORM_VALIDATE_SUBMIT_FIELD_HAS_ERROR_MESSAGE, ZFORM_VALIDATION_ERROR, ZFORM_VALIDATION_RULES_REQUEST, ZFORM_VALIDATION_RULES_SUCCESS } from "../../../../bc/zform/Symbol";
9
9
  import MyLayoutSuccessController from "../../adapters/controllers/MyLayoutSuccessController";
@@ -57,7 +57,7 @@ class EventHandlersFactory {
57
57
  const setFieldErrorMessageController = new SetFieldErrorMessageController(service);
58
58
  const validateErrorMessageController = new ValidateErrorMessageController(service);
59
59
  return {
60
- [LifeCycleAction.MOUNT]: initializeController.handle,
60
+ [LifeCycleEvents.MOUNT]: initializeController.handle,
61
61
  [ZFORM_MY_LAYOUTS_SUCCESS]: myLayoutSuccessController.handle,
62
62
  [ZFORM_MY_FORM_REQUEST]: myFormRequestController.handle,
63
63
  [ZFORM_MY_FORM_SUCCESS]: myFormSuccessController.handle,
@@ -21,7 +21,8 @@ class Repository {
21
21
  context
22
22
  } = this.state.properties;
23
23
  const {
24
- sortBy
24
+ sortBy,
25
+ errorRecordFailed
25
26
  } = this.getZListState();
26
27
  const list = ListFactory.createList({
27
28
  context,
@@ -32,7 +33,8 @@ class Repository {
32
33
  ...query
33
34
  },
34
35
  sortBy: new SortBy(sortBy.id, sortBy.name, sortBy.order),
35
- limit: 50
36
+ limit: 50,
37
+ errorRecordFailed
36
38
  });
37
39
  return list;
38
40
  }
@@ -0,0 +1,94 @@
1
+ /* eslint-disable @zohodesk/architecturerules/define-property-schema */
2
+
3
+ /* eslint-disable max-lines-per-function */
4
+ import ClientActionsTranslator from "../../../client-actions/translators/client-actions-translator";
5
+ import DefaultClientActions from "./utils/DefaultClientActions";
6
+ import { i18NProviderUtils } from '@zohodesk/i18n';
7
+ export default function SelectionTranslator(state) {
8
+ const {
9
+ behaviours,
10
+ properties
11
+ } = state;
12
+ const {
13
+ columnChooserConfig,
14
+ selectionConfig,
15
+ context,
16
+ moduleName
17
+ } = properties;
18
+ const {
19
+ zfield,
20
+ selection,
21
+ columnChooser
22
+ } = behaviours;
23
+ const {
24
+ selected,
25
+ hasAllSelected
26
+ } = selection;
27
+ const availableFields = zfield.fields;
28
+ const columnChooserProps = getColumnChooserProps(columnChooser, availableFields, context, moduleName);
29
+ const clientActions = generateClientActions(selectionConfig, columnChooserConfig, hasAllSelected, columnChooserProps);
30
+ const contextAppliedActions = ClientActionsTranslator.transform(clientActions, context);
31
+ return {
32
+ selected,
33
+ hasAllSelected,
34
+ actions: contextAppliedActions
35
+ };
36
+ }
37
+
38
+ function generateClientActions(selectionConfig, columnChooserConfig, hasAllSelected, columnChooserProps) {
39
+ const clientActions = [];
40
+
41
+ if (selectionConfig.isEnabled) {
42
+ if (columnChooserConfig.isEnabled) {
43
+ const columnChooserAction = DefaultClientActions.createColumnChooserAction(columnChooserProps);
44
+ clientActions.push(columnChooserAction);
45
+ } else if (selectionConfig.isSelectAllEnabled) {
46
+ const selectAllColumnsAction = DefaultClientActions.createSelectAllAction(hasAllSelected);
47
+ clientActions.push(selectAllColumnsAction);
48
+ }
49
+ }
50
+
51
+ return clientActions;
52
+ }
53
+
54
+ function getColumnChooserProps(columnChooser) {
55
+ var _context$modules, _context$modules$find;
56
+
57
+ let availableFields = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
58
+ let context = arguments.length > 2 ? arguments[2] : undefined;
59
+ let moduleName = arguments.length > 3 ? arguments[3] : undefined;
60
+ const {
61
+ searchText: searchString,
62
+ fieldsOrder,
63
+ selected,
64
+ isMaxSelectionReached
65
+ } = columnChooser;
66
+ const fieldMap = mapFieldsToObject(availableFields);
67
+ const disabledFieldName = (_context$modules = context.modules) === null || _context$modules === void 0 ? void 0 : (_context$modules$find = _context$modules.find(module => module.apiKey === moduleName)) === null || _context$modules$find === void 0 ? void 0 : _context$modules$find.nameField;
68
+ const columnChooserOptions = fieldsOrder.map(fieldName => getOption(fieldMap[fieldName], !!selected[fieldName], disabledFieldName === fieldName));
69
+ return {
70
+ options: columnChooserOptions,
71
+ searchString,
72
+ hasSearch: searchString !== '' || columnChooserOptions.length > 3,
73
+ // errorMessage: isMaxSelectionReached ? "You've reached the limit of 15 columns." : ''
74
+ errorMessage: isMaxSelectionReached ? i18NProviderUtils.getI18NValue("support.ticket.table.max.colmun") : ''
75
+ };
76
+ }
77
+
78
+ function getOption(field, checked, disabled) {
79
+ return {
80
+ id: field.name,
81
+ disabled,
82
+ locked: false,
83
+ // TODO - field.isLocked,
84
+ value: field.i18NLabel,
85
+ checked
86
+ };
87
+ }
88
+
89
+ function mapFieldsToObject(availableFields) {
90
+ return availableFields.reduce((acc, field) => {
91
+ acc[field.name] = field;
92
+ return acc;
93
+ }, {});
94
+ }