@zohodesk/library-platform 1.1.12 → 1.1.13

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 (375) hide show
  1. package/es/bc/action-band/Constants.js +4 -0
  2. package/es/bc/action-band/Properties.js +10 -0
  3. package/es/bc/action-band/index.js +1 -0
  4. package/es/bc/app-context/Properties.js +19 -0
  5. package/es/bc/float-pagination/ActionHandlers.js +1 -0
  6. package/es/bc/float-pagination/Constants.js +4 -0
  7. package/es/bc/float-pagination/Properties.js +18 -0
  8. package/es/bc/float-pagination/index.js +2 -0
  9. package/es/bc/index.js +0 -1
  10. package/es/bc/sdk/ResourceNamesEnum.js +1 -0
  11. package/es/bc/search/Constants.js +3 -0
  12. package/es/bc/search/EventHandlers.js +1 -0
  13. package/es/bc/search/Properties.js +11 -0
  14. package/es/bc/search/index.js +2 -0
  15. package/es/bc/search-box/ActionHandlers.js +1 -0
  16. package/es/bc/search-box/Constants.js +4 -0
  17. package/es/bc/search-box/Properties.js +18 -0
  18. package/es/bc/search-box/index.js +2 -0
  19. package/es/bc/sort-by/ActionHandlers.js +1 -1
  20. package/es/bc/sort-by/Constants.js +2 -2
  21. package/es/bc/sort-by/Properties.js +13 -11
  22. package/es/bc/sort-by/Types.js +10 -0
  23. package/es/bc/sort-by/types/SortByBehaviourState.js +1 -0
  24. package/es/bc/zfield/Constants.js +5 -1
  25. package/es/bc/zlist/Constants.js +0 -1
  26. package/es/bc/zlist/Types.js +27 -0
  27. package/es/bc/zrecord/Constants.js +2 -0
  28. package/es/bc/zrecord/Schemas.js +29 -0
  29. package/es/bc/zrecord/Types.js +45 -0
  30. package/es/cc/action-band/Properties.js +83 -0
  31. package/es/cc/action-band/SdkContract.js +13 -0
  32. package/es/cc/action-band/constants/Events.js +1 -0
  33. package/es/cc/action-band/constants/ExternalConstants.js +7 -0
  34. package/es/cc/action-band/constants/index.js +2 -0
  35. package/es/cc/action-band/index.js +3 -0
  36. package/es/cc/action-icon/Properties.js +20 -1
  37. package/es/cc/checkbox/Properties.js +2 -1
  38. package/es/cc/email/Properties.js +8 -0
  39. package/es/cc/fields/field/Types.js +31 -23
  40. package/es/cc/floating-pagination/Constants.js +6 -0
  41. package/es/cc/floating-pagination/Events.js +8 -0
  42. package/es/cc/floating-pagination/Properties.js +56 -0
  43. package/es/cc/floating-pagination/index.js +3 -0
  44. package/es/cc/highlighted-value/Properties.js +18 -0
  45. package/es/cc/link/Properties.js +13 -3
  46. package/es/cc/list-item/Properties.js +10 -0
  47. package/es/cc/more-dropdown/Properties.js +4 -0
  48. package/es/cc/radio-dropdown/Constants.js +6 -0
  49. package/es/cc/radio-dropdown/Data.js +1 -0
  50. package/es/cc/radio-dropdown/Events.js +42 -0
  51. package/es/cc/radio-dropdown/Properties.js +142 -0
  52. package/es/cc/radio-dropdown/index.js +4 -0
  53. package/es/cc/ribbon/Properties.js +59 -0
  54. package/es/cc/ribbon/index.js +1 -0
  55. package/es/cc/search/Constants.js +6 -0
  56. package/es/cc/search/Events.js +17 -0
  57. package/es/cc/search/Properties.js +11 -0
  58. package/es/cc/search/index.js +3 -0
  59. package/es/cc/sort-dropdown/Constants.js +7 -0
  60. package/es/cc/sort-dropdown/Events.js +46 -0
  61. package/es/cc/sort-dropdown/Properties.js +135 -0
  62. package/es/cc/sort-dropdown/index.js +3 -0
  63. package/es/cc/switch/Properties.js +2 -2
  64. package/es/cc/table-connected/Properties.js +16 -0
  65. package/es/cc/table-connected/SdkContract.js +24 -0
  66. package/es/cc/table-connected/constants/Events.js +2 -0
  67. package/es/cc/table-list/Actions.js +0 -2
  68. package/es/cc/table-list/Constants.js +1 -1
  69. package/es/cc/table-list/Events.js +0 -2
  70. package/es/cc/table-list/Properties.js +35 -38
  71. package/es/cc/table-list/data-types/FloatPaginationConfig.js +1 -0
  72. package/es/cc/tag/Constants.js +6 -0
  73. package/es/cc/tag/Data.js +14 -0
  74. package/es/cc/tag/EventHandlers.js +1 -0
  75. package/es/cc/tag/Events.js +26 -0
  76. package/es/cc/{tags/model/TagModel.js → tag/Model.js} +6 -2
  77. package/es/cc/tag/Properties.js +104 -0
  78. package/es/cc/tag/index.js +6 -0
  79. package/es/cc/tags/Data.js +0 -6
  80. package/es/cc/tags/model/index.js +1 -1
  81. package/es/cc/tags-list-dropdown/Constants.js +5 -0
  82. package/es/cc/tags-list-dropdown/Data.js +1 -0
  83. package/es/cc/tags-list-dropdown/Events.js +14 -0
  84. package/es/cc/tags-list-dropdown/Properties.js +96 -0
  85. package/es/cc/tags-list-dropdown/index.js +4 -0
  86. package/es/index.js +1 -1
  87. package/es/library/behaviours/action-band/adapters/controllers/AbstractController.js +10 -0
  88. package/es/library/behaviours/action-band/adapters/controllers/MountController.js +21 -0
  89. package/es/library/behaviours/action-band/adapters/gateways/Repository.js +24 -0
  90. package/es/library/behaviours/action-band/adapters/gateways/Service.js +11 -0
  91. package/es/library/behaviours/action-band/applications/interfaces/State.js +1 -0
  92. package/es/library/behaviours/action-band/applications/interfaces/UseCaseDependencies.js +1 -0
  93. package/es/library/behaviours/action-band/applications/interfaces/gateways/IRepository.js +1 -0
  94. package/es/library/behaviours/action-band/applications/interfaces/gateways/IService.js +1 -0
  95. package/es/library/behaviours/action-band/applications/interfaces/input/InitializeInput.js +1 -0
  96. package/es/library/behaviours/action-band/applications/usecases/AbstractUseCase.js +17 -0
  97. package/es/library/behaviours/action-band/applications/usecases/InitializeUseCase.js +20 -0
  98. package/es/library/behaviours/action-band/domain/entities/ActionBand.js +95 -0
  99. package/es/library/behaviours/action-band/domain/entities/interfaces/IActionBand.js +1 -0
  100. package/es/library/behaviours/action-band/domain/entities/interfaces/IActionModel.js +1 -0
  101. package/es/library/behaviours/action-band/domain/entities/interfaces/IApiPropsModel.js +1 -0
  102. package/es/library/behaviours/action-band/domain/entities/interfaces/Properties.js +1 -0
  103. package/es/library/behaviours/action-band/frameworks/ActionBandBehaviourFactory.js +21 -0
  104. package/es/library/behaviours/action-band/frameworks/ActionHandlersFactory.js +17 -0
  105. package/es/library/behaviours/clip-wrap/adapters/controllers/DestructController.js +3 -3
  106. package/es/library/behaviours/clip-wrap/adapters/controllers/InitializeController.js +3 -3
  107. package/es/library/behaviours/clip-wrap/adapters/gateway/Service.js +4 -0
  108. package/es/library/behaviours/float-pagination/adapters/controllers/AbstractController.js +9 -0
  109. package/es/library/behaviours/float-pagination/adapters/controllers/DestructController.js +18 -0
  110. package/es/library/behaviours/float-pagination/adapters/controllers/FloatPaginationController.js +25 -0
  111. package/es/library/behaviours/float-pagination/adapters/controllers/InitializeController.js +18 -0
  112. package/es/library/behaviours/float-pagination/adapters/controllers/ScrollBottomController.js +23 -0
  113. package/es/library/behaviours/float-pagination/adapters/controllers/ScrollTopController.js +23 -0
  114. package/es/library/behaviours/float-pagination/adapters/controllers/UpdateIndexController.js +30 -0
  115. package/es/library/behaviours/float-pagination/adapters/gateway/Repository.js +27 -0
  116. package/es/library/behaviours/float-pagination/adapters/gateway/Service.js +20 -0
  117. package/es/library/behaviours/float-pagination/adapters/presenter/Presenter.js +16 -0
  118. package/es/library/behaviours/float-pagination/applications/interfaces/UseCaseDependencies.js +1 -0
  119. package/es/library/behaviours/float-pagination/applications/interfaces/gateways/IRepository.js +1 -0
  120. package/es/library/behaviours/float-pagination/applications/interfaces/gateways/IService.js +1 -0
  121. package/es/library/behaviours/float-pagination/applications/interfaces/input/DestructInputModel.js +1 -0
  122. package/es/library/behaviours/float-pagination/applications/interfaces/input/FloatPaginationInputModel.js +1 -0
  123. package/es/library/behaviours/float-pagination/applications/interfaces/input/InitializeInputModel.js +1 -0
  124. package/es/library/behaviours/float-pagination/applications/interfaces/input/ScrollTopInputModel.js +1 -0
  125. package/es/library/behaviours/float-pagination/applications/interfaces/input/ScrollbottomInputModel.js +1 -0
  126. package/es/library/behaviours/float-pagination/applications/interfaces/input/UpdateIndexInputModel.js +1 -0
  127. package/es/library/behaviours/float-pagination/applications/interfaces/output/FloatPaginationOutputModel.js +1 -0
  128. package/es/library/behaviours/float-pagination/applications/interfaces/output/IPresenter.js +1 -0
  129. package/es/library/behaviours/float-pagination/applications/usecases/AbstractUseCase.js +17 -0
  130. package/es/library/behaviours/float-pagination/applications/usecases/DestructUsecase.js +15 -0
  131. package/es/library/behaviours/float-pagination/applications/usecases/FloatPaginationUseCase.js +31 -0
  132. package/es/library/behaviours/float-pagination/applications/usecases/InitializeUsecase.js +16 -0
  133. package/es/library/behaviours/float-pagination/applications/usecases/ScrollBottomUseCase.js +23 -0
  134. package/es/library/behaviours/float-pagination/applications/usecases/ScrollTopUseCase.js +23 -0
  135. package/es/library/behaviours/float-pagination/applications/usecases/UpdateIndexUseCase.js +28 -0
  136. package/es/library/behaviours/float-pagination/domain/entities/FloatPagination.js +28 -0
  137. package/es/library/behaviours/float-pagination/domain/entities/interfaces/IFloatPagination.js +1 -0
  138. package/es/library/behaviours/float-pagination/frameworks/ui/ActionsHandlerFactory.js +37 -0
  139. package/es/library/behaviours/float-pagination/frameworks/ui/FloatPaginationBehaviourFactory.js +21 -0
  140. package/es/library/behaviours/float-pagination/frameworks/utils.js +70 -0
  141. package/es/library/behaviours/keyboard-controls/adapters/gateways/Repository.js +2 -1
  142. package/es/library/behaviours/keyboard-controls/applications/usecases/SpacePress.js +1 -1
  143. package/es/library/behaviours/keyboard-controls/domain/entities/KeyboardControls.js +6 -1
  144. package/es/library/behaviours/list-selection/domain/entities/ListItemSelection.js +21 -18
  145. package/es/library/behaviours/search/adapters/controllers/AbstractController.js +9 -0
  146. package/es/library/behaviours/search/adapters/controllers/SearchController.js +26 -0
  147. package/es/library/behaviours/search/adapters/controllers/UpdatePropertiesController.js +27 -0
  148. package/es/library/behaviours/search/adapters/gateway/Repository.js +20 -0
  149. package/es/library/behaviours/search/adapters/gateway/Service.js +12 -0
  150. package/es/library/behaviours/search/adapters/presenter/Presenter.js +16 -0
  151. package/es/library/behaviours/search/adapters/presenter/SearchTranslator.js +6 -0
  152. package/es/library/behaviours/search/applications/interfaces/UseCaseDependencies.js +1 -0
  153. package/es/library/behaviours/search/applications/interfaces/gateways/IRepository.js +1 -0
  154. package/es/library/behaviours/search/applications/interfaces/gateways/IService.js +1 -0
  155. package/es/library/behaviours/search/applications/interfaces/input/SearchInputModel.js +1 -0
  156. package/es/library/behaviours/search/applications/interfaces/input/UpdatePropertiesInputModel.js +1 -0
  157. package/es/library/behaviours/search/applications/interfaces/output/IPresenter.js +1 -0
  158. package/es/library/behaviours/search/applications/interfaces/output/SearchOutputModel.js +1 -0
  159. package/es/library/behaviours/search/applications/usecases/AbstractUseCase.js +17 -0
  160. package/es/library/behaviours/search/applications/usecases/SearchUseCase.js +28 -0
  161. package/es/library/behaviours/search/applications/usecases/UpdatePropertiesUsecase.js +25 -0
  162. package/es/library/behaviours/search/domain/entities/Search.js +23 -0
  163. package/es/library/behaviours/search/domain/entities/interfaces/ISearch.js +1 -0
  164. package/es/library/behaviours/search/frameworks/ui/EventHandlerFactory.js +25 -0
  165. package/es/library/behaviours/search/frameworks/ui/SearchStringStoreBehaviourFactory.js +26 -0
  166. package/es/library/behaviours/search-box/adapters/controllers/AbstractController.js +9 -0
  167. package/es/library/behaviours/search-box/adapters/controllers/ClearSearchController.js +21 -0
  168. package/es/library/behaviours/search-box/adapters/controllers/SearchController.js +26 -0
  169. package/es/library/behaviours/search-box/adapters/gateway/Repository.js +28 -0
  170. package/es/library/behaviours/search-box/adapters/gateway/Service.js +12 -0
  171. package/es/library/behaviours/search-box/adapters/presenter/Presenter.js +21 -0
  172. package/es/library/behaviours/search-box/applications/interfaces/UseCaseDependencies.js +1 -0
  173. package/es/library/behaviours/search-box/applications/interfaces/gateways/IRepository.js +1 -0
  174. package/es/library/behaviours/search-box/applications/interfaces/gateways/IService.js +1 -0
  175. package/es/library/behaviours/search-box/applications/interfaces/input/ClearSearchInputModel.js +1 -0
  176. package/es/library/behaviours/search-box/applications/interfaces/input/SearchInputModel.js +1 -0
  177. package/es/library/behaviours/search-box/applications/interfaces/output/IPresenter.js +1 -0
  178. package/es/library/behaviours/search-box/applications/interfaces/output/SearchOutputModel.js +1 -0
  179. package/es/library/behaviours/search-box/applications/usecases/AbstractUseCase.js +17 -0
  180. package/es/library/behaviours/search-box/applications/usecases/ClearSearchUseCase.js +24 -0
  181. package/es/library/behaviours/search-box/applications/usecases/SearchUseCase.js +25 -0
  182. package/es/library/behaviours/search-box/domain/entities/Search.js +22 -0
  183. package/es/library/behaviours/search-box/domain/entities/interfaces/ISearch.js +1 -0
  184. package/es/library/behaviours/search-box/frameworks/ui/ActionsHandlerFactory.js +24 -0
  185. package/es/library/behaviours/search-box/frameworks/ui/SearchBehaviourFactory.js +26 -0
  186. package/es/library/behaviours/sort-by/adapters/controllers/{SortBy.js → SortByController.js} +6 -6
  187. package/es/library/behaviours/sort-by/adapters/gateway/Repository.js +18 -6
  188. package/es/library/behaviours/sort-by/adapters/gateway/Service.js +2 -2
  189. package/es/library/behaviours/sort-by/adapters/presenter/Presenter.js +8 -1
  190. package/es/library/behaviours/sort-by/applications/interfaces/input/UpdateSortByUseCaseInputModel.js +1 -0
  191. package/es/library/behaviours/sort-by/applications/interfaces/output/SearchOutputModel.js +1 -0
  192. package/es/library/behaviours/sort-by/applications/usecases/{SortBy.js → SortByUseCase.js} +12 -13
  193. package/es/library/behaviours/sort-by/applications/usecases/UpdateSortByUseCase.js +25 -0
  194. package/es/library/behaviours/sort-by/domain/entities/SortBy.js +11 -25
  195. package/es/library/behaviours/sort-by/frameworks/ui/ActionsHandlerFactory.js +7 -5
  196. package/es/library/behaviours/sort-by/frameworks/ui/SortByBehaviourFactory.js +17 -7
  197. package/es/library/custom-component/adapters/gateways/event-manager/EventManager.js +5 -0
  198. package/es/library/custom-component/domain/entities/ComponentProperties.js +1 -1
  199. package/es/library/custom-component/domain/entities/Logger.js +3 -3
  200. package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +7 -1
  201. package/es/library/dot/components/table-list/adapters/controllers/ScrollController.js +2 -2
  202. package/es/library/dot/components/table-list/adapters/controllers/index.js +0 -2
  203. package/es/library/dot/components/table-list/frameworks/ui/EventHandlersFactory.js +1 -2
  204. package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +24 -1
  205. package/es/library/dot/components/table-list/frameworks/ui/css/TableList.module.css +19 -2
  206. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +4 -6
  207. package/es/library/dot/legacy-to-new-arch/action-band-components/search/frameworks/ui/Search.js +41 -0
  208. package/es/library/dot/legacy-to-new-arch/action-band-components/search/frameworks/ui/SearchTranslator.js +16 -0
  209. package/es/library/dot/legacy-to-new-arch/action-band-components/search/frameworks/ui/SearchView.js +37 -0
  210. package/es/library/dot/legacy-to-new-arch/action-icon/frameworks/ui/ActionIconView.js +5 -1
  211. package/es/library/dot/legacy-to-new-arch/email/frameworks/ui/EmailView.js +4 -2
  212. package/es/library/dot/legacy-to-new-arch/floating-pagination/frameworks/ui/FloatingPagination.js +10 -0
  213. package/es/library/dot/legacy-to-new-arch/floating-pagination/frameworks/ui/FloatingPaginationView.js +47 -0
  214. package/es/library/dot/legacy-to-new-arch/highlighted-value/frameworks/ui/HighlightedValueView.js +6 -1
  215. package/es/library/dot/legacy-to-new-arch/index.js +3 -1
  216. package/es/library/dot/legacy-to-new-arch/link/frameworks/ui/LinkView.js +4 -2
  217. package/es/library/dot/legacy-to-new-arch/list-item/frameworks/ui/ListItemView.js +4 -0
  218. package/es/library/dot/legacy-to-new-arch/radio-dropdown/frameworks/ui/RadioDropdown.js +12 -0
  219. package/es/library/dot/legacy-to-new-arch/radio-dropdown/frameworks/ui/RadioDropdownView.js +125 -0
  220. package/es/library/dot/legacy-to-new-arch/radio-dropdown/frameworks/ui/css/RadioDropdown.module.css +23 -0
  221. package/es/library/dot/legacy-to-new-arch/ribbon/frameworks/ui/Ribbon.js +10 -0
  222. package/es/library/dot/legacy-to-new-arch/ribbon/frameworks/ui/RibbonView.js +37 -0
  223. package/es/library/dot/legacy-to-new-arch/sort-dropdown/frameworks/ui/SortDropdown.js +31 -0
  224. package/es/library/dot/legacy-to-new-arch/sort-dropdown/frameworks/ui/SortDropdownTranslator.js +33 -0
  225. package/es/library/dot/legacy-to-new-arch/sort-dropdown/frameworks/ui/SortDropdownView.js +83 -0
  226. package/es/library/dot/legacy-to-new-arch/table-field-components/checkbox-field/frameworks/ui/CheckboxField.js +12 -2
  227. package/es/library/dot/legacy-to-new-arch/table-field-components/checkbox-field/frameworks/ui/CheckboxFieldView.js +8 -5
  228. package/es/library/dot/legacy-to-new-arch/table-field-components/checkbox-field/frameworks/ui/EventHandlersFactory.js +3 -3
  229. package/es/library/dot/legacy-to-new-arch/table-field-components/email-field/frameworks/ui/EmailField.js +3 -3
  230. package/es/library/dot/legacy-to-new-arch/table-field-components/email-field/frameworks/ui/EmailFieldView.js +8 -6
  231. package/es/library/dot/legacy-to-new-arch/table-field-components/highlighted-value-field/frameworks/ui/EventHandlersFactory.js +26 -0
  232. package/es/library/dot/legacy-to-new-arch/table-field-components/highlighted-value-field/frameworks/ui/HighlightedValueField.js +23 -0
  233. package/es/library/dot/legacy-to-new-arch/table-field-components/highlighted-value-field/frameworks/ui/HighlightedValueFieldView.js +24 -0
  234. package/es/library/dot/legacy-to-new-arch/table-field-components/index.js +22 -5
  235. package/es/library/dot/legacy-to-new-arch/table-field-components/labeled-avatar-field/frameworks/ui/EventHandlersFactory.js +26 -0
  236. package/es/library/dot/legacy-to-new-arch/table-field-components/labeled-avatar-field/frameworks/ui/LabeledAvatarField.js +23 -0
  237. package/es/library/dot/legacy-to-new-arch/table-field-components/labeled-avatar-field/frameworks/ui/LabeledAvatarFieldView.js +22 -0
  238. package/es/library/dot/legacy-to-new-arch/table-field-components/link-field/frameworks/ui/EventHandlersFactory.js +26 -0
  239. package/es/library/dot/legacy-to-new-arch/table-field-components/link-field/frameworks/ui/LinkField.js +23 -0
  240. package/es/library/dot/legacy-to-new-arch/table-field-components/link-field/frameworks/ui/LinkFieldView.js +26 -0
  241. package/es/library/dot/legacy-to-new-arch/table-field-components/lookup-field/frameworks/ui/LookupFieldView.js +1 -1
  242. package/es/library/dot/legacy-to-new-arch/table-field-components/phone-field/frameworks/ui/PhoneFieldView.js +1 -1
  243. package/es/library/dot/legacy-to-new-arch/table-field-components/radio-dropdown-field/frameworks/ui/EventHandlersFactory.js +46 -0
  244. package/es/library/dot/legacy-to-new-arch/table-field-components/radio-dropdown-field/frameworks/ui/RadioDropdownField.js +49 -0
  245. package/es/library/dot/legacy-to-new-arch/table-field-components/radio-dropdown-field/frameworks/ui/RadioDropdownFieldView.js +43 -0
  246. package/es/library/dot/legacy-to-new-arch/table-field-components/radio-dropdown-field/frameworks/ui/css/RadioDropdownField.module.css +3 -0
  247. package/es/library/dot/legacy-to-new-arch/table-field-components/switch-field/frameworks/ui/EventHandlersFactory.js +3 -3
  248. package/es/library/dot/legacy-to-new-arch/table-field-components/switch-field/frameworks/ui/SwitchField.js +14 -4
  249. package/es/library/dot/legacy-to-new-arch/table-field-components/switch-field/frameworks/ui/SwitchFieldView.js +8 -4
  250. package/es/library/dot/legacy-to-new-arch/table-field-components/tag-field/frameworks/ui/EventHandlersFactory.js +26 -0
  251. package/es/library/dot/legacy-to-new-arch/table-field-components/tag-field/frameworks/ui/TagField.js +23 -0
  252. package/es/library/dot/legacy-to-new-arch/table-field-components/tag-field/frameworks/ui/TagFieldView.js +34 -0
  253. package/es/library/dot/legacy-to-new-arch/table-field-components/tags-field/frameworks/ui/EventHandlersFactory.js +26 -0
  254. package/es/library/dot/legacy-to-new-arch/table-field-components/tags-field/frameworks/ui/TagsField.js +23 -0
  255. package/es/library/dot/legacy-to-new-arch/table-field-components/tags-field/frameworks/ui/TagsFieldView.js +18 -0
  256. package/es/library/dot/legacy-to-new-arch/table-field-components/tags-list-dropdown-field/frameworks/ui/TagsListDropdownField.js +44 -0
  257. package/es/library/dot/legacy-to-new-arch/table-field-components/tags-list-dropdown-field/frameworks/ui/TagsListDropdownFieldView.js +24 -0
  258. package/es/library/dot/legacy-to-new-arch/table-field-components/text-field/frameworks/ui/EventHandlersFactory.js +26 -0
  259. package/es/library/dot/legacy-to-new-arch/table-field-components/text-field/frameworks/ui/TextField.js +23 -0
  260. package/es/library/dot/legacy-to-new-arch/table-field-components/text-field/frameworks/ui/TextFieldView.js +20 -0
  261. package/es/library/dot/legacy-to-new-arch/table-field-components/url-field/frameworks/ui/UrlFieldView.js +1 -1
  262. package/es/library/dot/legacy-to-new-arch/tag/frameworks/ui/Tag.js +11 -0
  263. package/es/library/dot/legacy-to-new-arch/tag/frameworks/ui/Tag.module.css +8 -0
  264. package/es/library/dot/legacy-to-new-arch/tag/frameworks/ui/TagView.js +96 -0
  265. package/es/library/dot/legacy-to-new-arch/tags-list-dropdown/frameworks/ui/TagContractAdapter.js +24 -0
  266. package/es/library/dot/legacy-to-new-arch/tags-list-dropdown/frameworks/ui/TagsListDropdown.js +12 -0
  267. package/es/library/dot/legacy-to-new-arch/tags-list-dropdown/frameworks/ui/TagsListDropdownView.js +42 -0
  268. package/es/platform/client-actions/components/interfaces/ActionViewModel.js +1 -0
  269. package/es/platform/client-actions/components/row-actions-renderer/frameworks/ui/RowActions/RowActionsRenderer.module.css +4 -0
  270. package/es/platform/client-scripts/bc/zclient-scripts-execution/Constants.js +2 -4
  271. package/es/platform/client-scripts/behaviour/zclient-scripts-execution/domain/entities/ClientScriptExecutor.js +33 -60
  272. package/es/platform/client-scripts/behaviour/zclient-scripts-fetch/domain/entities/interfaces/ClientScriptModel.js +5 -1
  273. package/es/platform/components/index.js +2 -1
  274. package/es/platform/components/smart-action-band/adapters/presenters/ActionBandTranslator.js +73 -0
  275. package/es/platform/components/smart-action-band/adapters/presenters/translators/interfaces/ActionBandTranslatorState.js +1 -0
  276. package/es/platform/components/smart-action-band/adapters/presenters/utils/DefaultClientActions.js +147 -0
  277. package/es/platform/components/smart-action-band/adapters/resources/SmartActionBandResource.js +46 -0
  278. package/es/platform/components/smart-action-band/applications/interfaces/ISmartActionBandResource.js +1 -0
  279. package/es/platform/components/smart-action-band/applications/interfaces/State.js +1 -0
  280. package/es/platform/components/smart-action-band/applications/interfaces/UseCaseDependencies.js +1 -0
  281. package/es/platform/components/smart-action-band/applications/interfaces/output/IPresenter.js +1 -0
  282. package/es/platform/components/smart-action-band/applications/usecases/AbstractUseCase.js +18 -0
  283. package/es/platform/components/smart-action-band/domain/entities/interfaces/Properties.js +1 -0
  284. package/es/platform/components/smart-action-band/frameworks/EventHandlersFactory.js +106 -0
  285. package/es/platform/components/smart-action-band/frameworks/SmartActionBand.js +5 -0
  286. package/es/platform/components/smart-action-band/frameworks/SmartActionBandFactory.js +55 -0
  287. package/es/platform/components/smart-action-band/frameworks/SmartActionBandSdkFactory.js +24 -0
  288. package/es/platform/components/smart-action-band/frameworks/SmartActionBandView.js +48 -0
  289. package/es/platform/components/table-connected/adapters/controllers/ScrollController.js +29 -8
  290. package/es/platform/components/table-connected/adapters/controllers/ScrollEndReachedController.js +23 -0
  291. package/es/platform/components/table-connected/adapters/resources/SmartTableResource.js +172 -8
  292. package/es/platform/components/table-connected/frameworks/EventHandlersFactory.js +39 -6
  293. package/es/platform/components/table-connected/frameworks/TableConnectedFactory.js +7 -1
  294. package/es/platform/components/table-connected/frameworks/TableConnectedView.js +2 -0
  295. package/es/platform/data-source/http-template/getComponentMapping.js +17 -0
  296. package/es/platform/data-source/http-template/getRecords.js +1 -0
  297. package/es/platform/data-source/index.js +3 -1
  298. package/es/platform/sdk/frameworks/Sdk.js +7 -0
  299. package/es/platform/zfield/applications/usecases/FetchSuccessUseCase.js +33 -0
  300. package/es/platform/zfield/domain/entities/fields-manager/FieldsManager.js +5 -0
  301. package/es/platform/zlist/adapters/controllers/RefreshRecordsRequestedController.js +21 -0
  302. package/es/platform/zlist/adapters/controllers/SortController.js +2 -2
  303. package/es/platform/zlist/adapters/gateways/Repository.js +6 -11
  304. package/es/platform/zlist/adapters/gateways/Service.js +2 -0
  305. package/es/platform/zlist/adapters/presenters/TableTranslator.js +57 -13
  306. package/es/platform/zlist/adapters/presenters/translators/ColumnTranslator.js +57 -49
  307. package/es/platform/zlist/adapters/presenters/translators/FieldVariations.js +25 -0
  308. package/es/platform/zlist/adapters/presenters/translators/Header.js +29 -21
  309. package/es/platform/zlist/adapters/presenters/translators/HeadersTranslator.js +3 -3
  310. package/es/platform/zlist/adapters/presenters/translators/Row.js +16 -2
  311. package/es/platform/zlist/adapters/presenters/translators/RowsTranslator.js +3 -1
  312. package/es/platform/zlist/adapters/presenters/translators/fields/BooleanFieldTranslator.js +87 -12
  313. package/es/platform/zlist/adapters/presenters/translators/fields/CurrencyFieldTranslator.js +66 -11
  314. package/es/platform/zlist/adapters/presenters/translators/fields/DateFieldTranslator.js +33 -8
  315. package/es/platform/zlist/adapters/presenters/translators/fields/DateTimeFieldTranslator.js +33 -8
  316. package/es/platform/zlist/adapters/presenters/translators/fields/DecimalFieldTranslator.js +16 -9
  317. package/es/platform/zlist/adapters/presenters/translators/fields/EmailFieldTranslator.js +29 -9
  318. package/es/platform/zlist/adapters/presenters/translators/fields/FormulaFieldTranslator.js +23 -27
  319. package/es/platform/zlist/adapters/presenters/translators/fields/LookUpFieldTranslator.js +106 -17
  320. package/es/platform/zlist/adapters/presenters/translators/fields/MultiLineFieldTranslator.js +16 -9
  321. package/es/platform/zlist/adapters/presenters/translators/fields/MultiSelectFieldTranslator.js +100 -26
  322. package/es/platform/zlist/adapters/presenters/translators/fields/NumberFieldTranslator.js +16 -9
  323. package/es/platform/zlist/adapters/presenters/translators/fields/PercentageFieldTranslator.js +16 -9
  324. package/es/platform/zlist/adapters/presenters/translators/fields/PhoneFieldTranslator.js +32 -9
  325. package/es/platform/zlist/adapters/presenters/translators/fields/PickListFieldTranslator.js +167 -26
  326. package/es/platform/zlist/adapters/presenters/translators/fields/SingleLineFieldTranslator.js +16 -9
  327. package/es/platform/zlist/adapters/presenters/translators/fields/URLFieldTranslator.js +32 -9
  328. package/es/platform/zlist/adapters/presenters/utils/DateAndTimeFormat.js +25 -0
  329. package/es/platform/zlist/adapters/presenters/utils/DefaultClientActions.js +7 -4
  330. package/es/platform/zlist/adapters/presenters/utils/fieldSortLabels.js +38 -0
  331. package/es/platform/zlist/applications/entities-factory/ListFactory.js +2 -2
  332. package/es/platform/zlist/applications/interfaces/input/GetSortConfigUseCaseInputModel.js +1 -0
  333. package/es/platform/zlist/applications/interfaces/input/RefreshRecordsRequestedUseCaseInputModel.js +1 -0
  334. package/es/platform/zlist/applications/interfaces/input/SetSortConfigUseCaseInputModel.js +1 -0
  335. package/es/platform/zlist/applications/usecases/GetSortConfigUseCase.js +17 -0
  336. package/es/platform/zlist/applications/usecases/RecordSuccessCallbackUsecase.js +1 -1
  337. package/es/platform/zlist/applications/usecases/RefreshRecordsRequestedUseCase.js +17 -0
  338. package/es/platform/zlist/applications/usecases/SetSortConfigUseCase.js +26 -0
  339. package/es/platform/zlist/applications/usecases/SortUseCase.js +6 -6
  340. package/es/platform/zlist/domain/entities/List.js +32 -16
  341. package/es/platform/zlist/domain/entities/interfaces/Properties.js +5 -5
  342. package/es/platform/zlist/frameworks/EventHandlersFactory.js +3 -4
  343. package/es/platform/zlist/frameworks/ZListBehaviourFactory.js +15 -13
  344. package/es/platform/zrecord/adapters/controllers/FilterRecordLocalController.js +28 -0
  345. package/es/platform/zrecord/adapters/gateways/Repository.js +5 -2
  346. package/es/platform/zrecord/adapters/gateways/Service.js +2 -0
  347. package/es/platform/zrecord/applications/entities-factory/RecordsManagerFactory.js +2 -2
  348. package/es/platform/zrecord/applications/interfaces/input/ClearAllFiltersUseCaseInputModel.js +1 -0
  349. package/es/platform/zrecord/applications/interfaces/input/FilterRecordInputModel.js +1 -0
  350. package/es/platform/zrecord/applications/interfaces/input/GetFilterConditionUseCaseInputModel.js +1 -0
  351. package/es/platform/zrecord/applications/interfaces/input/GetFilterConfigUseCaseInputModel.js +1 -0
  352. package/es/platform/zrecord/applications/interfaces/input/RefreshRecordsUseCaseInputModel.js +1 -0
  353. package/es/platform/zrecord/applications/interfaces/input/SetFilterUseCaseInputModel.js +1 -0
  354. package/es/platform/zrecord/applications/usecases/ClearAllFiltersUseCase.js +24 -0
  355. package/es/platform/zrecord/applications/usecases/FilterRecordUseCase.js +21 -0
  356. package/es/platform/zrecord/applications/usecases/GetFilterConditionUseCase.js +15 -0
  357. package/es/platform/zrecord/applications/usecases/GetFilterConfigUseCase.js +15 -0
  358. package/es/platform/zrecord/applications/usecases/RefreshRecordsUseCase.js +14 -0
  359. package/es/platform/zrecord/applications/usecases/SetFilterUseCase.js +29 -0
  360. package/es/platform/zrecord/domain/entities/Filter.js +247 -0
  361. package/es/platform/zrecord/domain/entities/RecordsManager.js +43 -1
  362. package/es/platform/zrecord/domain/entities/interfaces/IFilter.js +1 -0
  363. package/es/platform/zrecord/frameworks/ActionsHandlersFactory.js +4 -1
  364. package/es/platform/zrecord/frameworks/RecordBehaviourFactory.js +11 -1
  365. package/package.json +20 -19
  366. package/es/bc/sort-by/SortOrderEnum.js +0 -8
  367. package/es/library/behaviours/sort-by/frameworks/ui/DemoBehaviour.js +0 -20
  368. package/es/library/dot/components/table-list/adapters/controllers/SortByController.js +0 -25
  369. package/es/library/dot/components/table-list/adapters/controllers/SortedController.js +0 -18
  370. package/es/library/dot/components/table-list/frameworks/ui/handlers/HandleSortClick.js +0 -12
  371. package/es/platform/zlist/adapters/gateways/SortBy.js +0 -38
  372. package/es/platform/zlist/domain/entities/SortBy.js +0 -58
  373. /package/es/{library/behaviours/sort-by/applications/interfaces/output/SortByOutputModel.js → bc/float-pagination/types/FloatPaginationBehaviourState.js} +0 -0
  374. /package/es/{platform/zlist/applications/interfaces/gateways/ISortBy.js → bc/list-selection/Types.js} +0 -0
  375. /package/es/{platform/zlist/domain/entities/interfaces/ISortBy.js → bc/search-box/types/SearchBehaviourState.js} +0 -0
@@ -0,0 +1,247 @@
1
+ import { CommonComparators, TextComparators, NumberComparators, DateComparators, ConditionTokens } from "../../../../bc/zrecord/Types";
2
+ export class Filter {
3
+ constructor(config, condition, queryString) {
4
+ this.config = config;
5
+ this.condition = condition;
6
+ this.queryString = queryString;
7
+ }
8
+
9
+ getFilterQuery() {
10
+ return this.queryString;
11
+ }
12
+
13
+ getConfig() {
14
+ return this.config;
15
+ }
16
+
17
+ getCondition() {
18
+ return this.condition;
19
+ }
20
+
21
+ toObject() {
22
+ return {
23
+ config: this.config,
24
+ condition: this.condition,
25
+ queryString: this.queryString
26
+ };
27
+ }
28
+
29
+ setConfig(config) {
30
+ const condition = this.convertConfigToCondition(config);
31
+ const queryString = this.convertConditionToQueryStringRecursive(condition);
32
+ this.config = config;
33
+ this.condition = condition;
34
+ this.queryString = queryString;
35
+ }
36
+ /**
37
+ * input:
38
+ * {
39
+ * conditions: [
40
+ * { fieldName: 'productCode', condition: "isn't", value: '12345' },
41
+ * { fieldName: 'quantity', condition: 'is', value: 100 },
42
+ * { fieldName: 'category', condition: 'contains', value: 'electronics' },
43
+ * { fieldName: 'discount', condition: 'is not empty', value: null }
44
+ * ],
45
+ * pattern: "((1and2)or(3and4))"
46
+ * }
47
+ *
48
+ * output:
49
+ * {
50
+ * type: 'OR',
51
+ * conditions: [
52
+ * {
53
+ * type: 'AND',
54
+ * conditions: [
55
+ * { type: 'CONDITION', fieldName: 'productCode', condition: "isn't", value: '12345' },
56
+ * { type: 'CONDITION', fieldName: 'quantity', condition: 'is', value: 100 }
57
+ * ]
58
+ * },
59
+ * {
60
+ * type: 'AND',
61
+ * conditions: [
62
+ * { type: 'CONDITION', fieldName: 'category', condition: 'contains', value: 'electronics' },
63
+ * { type: 'CONDITION', fieldName: 'discount', condition: 'is not empty', value: null }
64
+ * ]
65
+ * }
66
+ * ]
67
+ * }
68
+ */
69
+
70
+
71
+ convertConfigToCondition(config) {
72
+ const {
73
+ conditions,
74
+ pattern
75
+ } = config;
76
+
77
+ if (conditions.length === 0 || pattern.trim() === '') {
78
+ return null;
79
+ } // Tokenize the pattern
80
+
81
+
82
+ const tokens = this.tokenizePattern(pattern);
83
+ const aliases = this.generateAliases(conditions);
84
+ let pos = 0;
85
+
86
+ const parseExpression = () => {
87
+ if (tokens[pos] === '(') {
88
+ pos++; // skip '('
89
+
90
+ const left = parseExpression();
91
+
92
+ if (pos < tokens.length && tokens[pos] === ')') {
93
+ pos++; // skip ')'
94
+
95
+ return left;
96
+ }
97
+
98
+ const operator = tokens[pos];
99
+ pos++; // skip operator
100
+
101
+ const right = parseExpression();
102
+
103
+ if (tokens[pos] === ')') {
104
+ pos++; // skip ')'
105
+ }
106
+
107
+ return {
108
+ type: operator === 'AND' ? ConditionTokens.AND : ConditionTokens.OR,
109
+ conditions: [left, right]
110
+ };
111
+ } else if (/^\d+$/.test(tokens[pos])) {
112
+ const alias = tokens[pos];
113
+ pos++;
114
+ return aliases[alias];
115
+ }
116
+
117
+ throw new Error('Invalid pattern');
118
+ };
119
+
120
+ return parseExpression();
121
+ } // Helper method to tokenize the pattern string (e.g. "(1and2)")
122
+
123
+
124
+ tokenizePattern(pattern) {
125
+ return pattern.replace(/\(/g, ' ( ').replace(/\)/g, ' ) ').replace(/and/g, ' AND ').replace(/or/g, ' OR ').replace(/not/g, ' NOT ').split(/\s+/).filter(token => token.length > 0);
126
+ } // Helper method to create aliases for the conditions (e.g. "1", "2")
127
+
128
+
129
+ generateAliases(conditions) {
130
+ const aliases = {};
131
+ conditions.forEach((condition, index) => {
132
+ const alias = String(index + 1); // Starting with "1"
133
+
134
+ aliases[alias] = {
135
+ type: ConditionTokens.CONDITION,
136
+ fieldName: condition.fieldName,
137
+ condition: condition.condition,
138
+ value: condition.value
139
+ };
140
+ });
141
+ return aliases;
142
+ }
143
+ /**
144
+ * input:
145
+ * {
146
+ * type: 'OR',
147
+ * conditions: [
148
+ * {
149
+ * type: 'AND',
150
+ * conditions: [
151
+ * { type: 'CONDITION', fieldName: 'productCode', condition: "isn't", value: '12345' },
152
+ * { type: 'CONDITION', fieldName: 'quantity', condition: 'is', value: 100 }
153
+ * ]
154
+ * },
155
+ * {
156
+ * type: 'AND',
157
+ * conditions: [
158
+ * { type: 'CONDITION', fieldName: 'category', condition: 'contains', value: 'electronics' },
159
+ * { type: 'CONDITION', fieldName: 'discount', condition: 'is not empty', value: null }
160
+ * ]
161
+ * }
162
+ * ]
163
+ * }
164
+ *
165
+ * output:
166
+ * "((productCode != 12345 AND quantity = 100) OR (category.contains('electronics') AND discount.isNotEmpty()))"
167
+ */
168
+
169
+
170
+ convertConditionToQueryStringRecursive(condition) {
171
+ if (!condition) {
172
+ return '';
173
+ }
174
+
175
+ if (condition.type === ConditionTokens.CONDITION) {
176
+ const {
177
+ fieldName,
178
+ condition: comp,
179
+ value
180
+ } = condition;
181
+
182
+ switch (comp) {
183
+ case CommonComparators.ISEMPTY:
184
+ return `${fieldName}.isEmpty()`;
185
+
186
+ case CommonComparators.ISNOTEMPTY:
187
+ return `${fieldName}.isNotEmpty()`;
188
+
189
+ case TextComparators.IS:
190
+ return `${fieldName} = '${value}'`;
191
+
192
+ case TextComparators.ISNT:
193
+ return `${fieldName} != '${value}'`;
194
+
195
+ case TextComparators.STARTSWITH:
196
+ return `${fieldName}.startsWith('${value}')`;
197
+
198
+ case TextComparators.ENDSWITH:
199
+ return `${fieldName}.endsWith('${value}')`;
200
+
201
+ case TextComparators.CONTAINS:
202
+ return `${fieldName}.contains('${value}')`;
203
+
204
+ case TextComparators.DOESNTCONTAIN:
205
+ return `!${fieldName}.contains('${value}')`;
206
+
207
+ case NumberComparators.EQUAL:
208
+ return `${fieldName} = ${value}`;
209
+
210
+ case NumberComparators.NOTEQUAL:
211
+ return `${fieldName} != ${value}`;
212
+
213
+ case NumberComparators.LESSTHAN:
214
+ return `${fieldName} < ${value}`;
215
+
216
+ case NumberComparators.LESSTHANEQUAL:
217
+ return `${fieldName} <= ${value}`;
218
+
219
+ case NumberComparators.GREATERTHAN:
220
+ return `${fieldName} > ${value}`;
221
+
222
+ case NumberComparators.GREATERTHANEQUAL:
223
+ return `${fieldName} >= ${value}`;
224
+
225
+ case DateComparators.ISAFTER:
226
+ return `${fieldName} > '${value}'`;
227
+
228
+ case DateComparators.ISBEFORE:
229
+ return `${fieldName} < '${value}'`;
230
+
231
+ case DateComparators.BETWEEN:
232
+ return `${fieldName}.between('${value.start}', '${value.end}')`;
233
+
234
+ case DateComparators.NOTBETWEEN:
235
+ return `!${fieldName}.between('${value.start}', '${value.end}')`;
236
+
237
+ default:
238
+ return '';
239
+ }
240
+ } else {
241
+ const operator = condition.type === ConditionTokens.AND ? ' AND ' : ' OR ';
242
+ const parts = condition.conditions.map(c => this.convertConditionToQueryStringRecursive(c));
243
+ return `(${parts.join(operator)})`;
244
+ }
245
+ }
246
+
247
+ }
@@ -14,11 +14,18 @@ const recordExecuteStrategiesMap = {
14
14
  [RecordApiActionName.GET_REORDERRECORD]: new GetReOrderRecordsStrategy()
15
15
  };
16
16
  export default class RecordsManager {
17
- constructor(records) {
17
+ constructor(records, filter, isLocalSearchEnabled) {
18
18
  this.records = records;
19
+ this.filter = filter;
20
+ this.isLocalSearchEnabled = isLocalSearchEnabled;
21
+ this.isLocalSearchEnabled = false;
19
22
  }
20
23
 
21
24
  createDataSourceExecuteEvent(props, actionName, metaData) {
25
+ if (actionName === RecordApiActionName.GET_RECORDS && props.filter === undefined) {
26
+ props.filter = this.filter.getFilterQuery();
27
+ }
28
+
22
29
  return {
23
30
  type: DATA_SOURCE_EXECUTE,
24
31
  payload: {
@@ -249,6 +256,18 @@ export default class RecordsManager {
249
256
  this.records.updateRecord(recordId, record);
250
257
  }
251
258
 
259
+ getFilterCondition() {
260
+ return this.filter.getCondition();
261
+ }
262
+
263
+ getFilterConfig() {
264
+ return this.filter.getConfig();
265
+ }
266
+
267
+ setFilterConfig(filterConfig) {
268
+ this.filter.setConfig(filterConfig);
269
+ }
270
+
252
271
  deleteMultipleRecord(recordIds) {
253
272
  this.records.deleteMultipleRecord(recordIds);
254
273
  }
@@ -257,9 +276,32 @@ export default class RecordsManager {
257
276
  return apiName === 'records';
258
277
  }
259
278
 
279
+ filterRecordsLocal(queryString, records) {
280
+ let filteredRecords = records;
281
+ const regex = /contains\(\s*['"]([^'"]*)['"]\s*\)/;
282
+ const match = queryString.match(regex);
283
+ const keyword = match[1];
284
+
285
+ if (keyword.trim().length > 0) {
286
+ const key = keyword.toLowerCase();
287
+ filteredRecords = filteredRecords.filter(record => Object.values(record).some(v => String(v ?? "").toLowerCase().includes(key)));
288
+ }
289
+
290
+ return filteredRecords;
291
+ }
292
+
293
+ setIsLocalSearchEnabled(isEnabled) {
294
+ this.isLocalSearchEnabled = isEnabled;
295
+ }
296
+
260
297
  toObject() {
261
298
  const recordsObj = this.records.toObject();
299
+ const queryString = this.filter.toObject().queryString;
300
+ const localRecordsObj = queryString.length > 0 ? this.filterRecordsLocal(queryString, recordsObj.data) : recordsObj.data;
262
301
  return {
302
+ filter: this.filter.toObject(),
303
+ localRecords: localRecordsObj,
304
+ isLocalSearchEnabled: this.isLocalSearchEnabled,
263
305
  records: recordsObj.data,
264
306
  hasMore: recordsObj.hasMore,
265
307
  isFetching: recordsObj.isFetching
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable max-lines-per-function */
2
- import { APPEND_RECORDS, RECORD_EXECUTE, RECORD_FETCH_MORE, RECORD_FIELD_CHANGE, RECORD_LOCAL_MULTIPLE_DELETE, RECORD_LOCAL_UPDATE, SET_RECORDS, RECORD_REFETCH, RECORD_EXECUTE_SUCCEEDED, RECORD_EXECUTE_SUCCEEDED_NO_CONTENT, RECORD_EXECUTE_FAILED, RECORD_EXECUTE_SUCCESS_NO_CONTENT_CALLBACK, RECORD_EXECUTE_SUCCESS_CALLBACK, RECORD_EXECUTE_FAIL_CALLBACK, CREATE_RECORD, RECORD_MARK_AS_READ, RECORD_MARK_AS_UNREAD } from "../../../bc/zrecord/Constants";
2
+ import { APPEND_RECORDS, RECORD_EXECUTE, RECORD_FETCH_MORE, RECORD_FIELD_CHANGE, RECORD_LOCAL_MULTIPLE_DELETE, RECORD_LOCAL_UPDATE, SET_RECORDS, RECORD_REFETCH, RECORD_EXECUTE_SUCCEEDED, RECORD_EXECUTE_SUCCEEDED_NO_CONTENT, RECORD_EXECUTE_FAILED, RECORD_EXECUTE_SUCCESS_NO_CONTENT_CALLBACK, RECORD_EXECUTE_SUCCESS_CALLBACK, RECORD_EXECUTE_FAIL_CALLBACK, CREATE_RECORD, RECORD_MARK_AS_READ, RECORD_MARK_AS_UNREAD, RECORD_LOCAL_FILTER } from "../../../bc/zrecord/Constants";
3
3
  import MountController from "../adapters/controllers/MountController";
4
4
  import Presenter from "../adapters/presenters/Presenter";
5
5
  import Repository from "../adapters/gateways/Repository";
@@ -19,6 +19,7 @@ import FetchStateStopController from "../adapters/controllers/FetchStateStopCont
19
19
  import CreateRecordController from "../adapters/controllers/CreateRecordController";
20
20
  import MarkAsReadController from "../adapters/controllers/MarkAsReadController";
21
21
  import MarkAsUnReadController from "../adapters/controllers/MarkAsUnReadController";
22
+ import FilterRecordLocalController from "../adapters/controllers/FilterRecordLocalController";
22
23
  export default class ActionsHandlersFactory {
23
24
  static create(apiDetails) {
24
25
  const presenter = new Presenter();
@@ -44,6 +45,7 @@ export default class ActionsHandlersFactory {
44
45
  const createRecordController = new CreateRecordController(service);
45
46
  const markAsReadController = new MarkAsReadController(service);
46
47
  const markAsUnReadController = new MarkAsUnReadController(service);
48
+ const filterRecordLocalController = new FilterRecordLocalController(service);
47
49
  return {
48
50
  MOUNT: mountController.handle,
49
51
  [RECORD_MARK_AS_READ]: markAsReadController.handle,
@@ -62,6 +64,7 @@ export default class ActionsHandlersFactory {
62
64
  [RECORD_FIELD_CHANGE]: fieldChangeController.handle,
63
65
  [RECORD_LOCAL_UPDATE]: recordUpdateLocalController.handle,
64
66
  [RECORD_EXECUTE_SUCCESS_NO_CONTENT_CALLBACK]: noContentController.handle,
67
+ [RECORD_LOCAL_FILTER]: filterRecordLocalController.handle,
65
68
  [CREATE_RECORD]: createRecordController.handle
66
69
  };
67
70
  }
@@ -1,11 +1,21 @@
1
1
  import ActionsHandlersFactory from "./ActionsHandlersFactory";
2
+ import { initialFilterConfig } from "../../../bc/zrecord/Types";
2
3
  export default class RecordBehaviourFactory {
3
4
  static create(apiDetails) {
4
5
  return {
5
6
  name: 'zrecord',
6
7
  eventHandlers: ActionsHandlersFactory.create(apiDetails),
7
8
  properties: {},
8
- setInitialState: () => ({})
9
+ setInitialState: () => {
10
+ const filterRestoreObjectInitial = {
11
+ config: initialFilterConfig,
12
+ condition: null,
13
+ queryString: ''
14
+ };
15
+ return {
16
+ filter: filterRestoreObjectInitial
17
+ };
18
+ }
9
19
  };
10
20
  }
11
21
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zohodesk/library-platform",
3
- "version": "1.1.12",
3
+ "version": "1.1.13",
4
4
  "description": "",
5
5
  "main": "es/index.js",
6
6
  "files": [
@@ -42,23 +42,23 @@
42
42
  "@typescript-eslint/parser": "^7.11.0",
43
43
  "@zoho/SecurityJS": "7.2.4",
44
44
  "@zohodesk-private/css-variable-migrator": "^1.0.8",
45
- "@zohodesk-private/desk-components": "1.3.16",
45
+ "@zohodesk-private/desk-components": "1.4.7",
46
46
  "@zohodesk-private/dot-registry": "0.0.2",
47
47
  "@zohodesk-private/node-plugins": "1.1.9",
48
- "@zohodesk/a11y": "2.3.6",
48
+ "@zohodesk/a11y": "2.3.8",
49
49
  "@zohodesk/codestandard-analytics": "1.0.2",
50
50
  "@zohodesk/codestandard-validator": "1.0.0",
51
- "@zohodesk/components": "1.4.18",
52
- "@zohodesk/dot": "1.7.17",
53
- "@zohodesk/dotkit": "1.0.3",
51
+ "@zohodesk/components": "1.5.8",
52
+ "@zohodesk/dot": "1.8.6",
53
+ "@zohodesk/dotkit": "1.0.7",
54
54
  "@zohodesk/eslint-plugin-architecturerules": "0.0.6-exp-4",
55
55
  "@zohodesk/eslint-plugin-no-hardcoding": "1.0.6-platform-1",
56
- "@zohodesk/hooks": "2.0.5",
57
- "@zohodesk/icons": "1.1.0",
56
+ "@zohodesk/hooks": "2.0.6",
57
+ "@zohodesk/icons": "1.1.5",
58
58
  "@zohodesk/layout": "3.1.0",
59
- "@zohodesk/svg": "1.2.1",
60
- "@zohodesk/utils": "1.3.15",
61
- "@zohodesk/variables": "1.1.0",
59
+ "@zohodesk/svg": "1.2.6",
60
+ "@zohodesk/utils": "1.3.16",
61
+ "@zohodesk/variables": "1.2.0",
62
62
  "@zohodesk/virtualizer": "1.0.13",
63
63
  "babel-jest": "29.7.0",
64
64
  "color": "4.2.3",
@@ -77,17 +77,18 @@
77
77
  "typescript": "4.9.5"
78
78
  },
79
79
  "peerDependencies": {
80
- "@zohodesk-private/desk-components": "1.3.16",
80
+ "@zoho/SecurityJS": "7.2.4",
81
+ "@zohodesk-private/desk-components": "1.4.7",
81
82
  "@zohodesk-private/dot-registry": "0.0.2",
82
- "@zohodesk/a11y": "2.3.6",
83
- "@zohodesk/components": "1.4.18",
84
- "@zohodesk/dot": "1.7.17",
85
- "@zohodesk/dotkit": "1.0.3",
86
- "@zohodesk/hooks": "2.0.5",
83
+ "@zohodesk/a11y": "2.3.8",
84
+ "@zohodesk/components": "1.5.8",
85
+ "@zohodesk/dot": "1.8.6",
86
+ "@zohodesk/dotkit": "1.0.7",
87
+ "@zohodesk/hooks": "2.0.6",
87
88
  "@zohodesk/i18n": "1.0.0-beta.31",
88
- "@zohodesk/icons": "1.1.0",
89
+ "@zohodesk/icons": "1.1.5",
89
90
  "@zohodesk/layout": "3.1.0",
90
- "@zohodesk/svg": "1.2.1",
91
+ "@zohodesk/svg": "1.2.6",
91
92
  "@zohodesk/utils": "1.3.15",
92
93
  "color": "4.2.3",
93
94
  "react-sortable-hoc": "1.11.0"
@@ -1,8 +0,0 @@
1
- var SortOrder = /*#__PURE__*/function (SortOrder) {
2
- SortOrder["NONE"] = "none";
3
- SortOrder["ASC"] = "ascending";
4
- SortOrder["DES"] = "descending";
5
- return SortOrder;
6
- }(SortOrder || {});
7
-
8
- export default SortOrder;
@@ -1,20 +0,0 @@
1
- import Properties from "../../../../../bc/sort-by/Properties";
2
-
3
- // REVIEW: Class never used
4
- class DemoBehaviour {
5
- static create() {
6
- return {
7
- name: 'demo_behaviour',
8
- setInitialState: () => ({}),
9
- properties: Properties,
10
- eventHandlers: {
11
- "DEMO": () => {
12
- alert('demo');
13
- }
14
- }
15
- };
16
- }
17
-
18
- }
19
-
20
- export default DemoBehaviour;
@@ -1,25 +0,0 @@
1
- import { SORTBY_SORT } from "../../../../../../bc/sort-by/Constants";
2
- import AbstractController from "./AbstractController";
3
-
4
- class SortByController extends AbstractController {
5
- handle(event) {
6
- const {
7
- dispatch,
8
- action
9
- } = event;
10
- const {
11
- id,
12
- name
13
- } = action.payload;
14
- dispatch({
15
- type: SORTBY_SORT,
16
- payload: {
17
- id,
18
- name
19
- }
20
- });
21
- }
22
-
23
- }
24
-
25
- export default SortByController;
@@ -1,18 +0,0 @@
1
- import { ZLIST_FETCH_SORTED } from "../../../../../../bc/zlist/Constants";
2
- import AbstractController from "./AbstractController";
3
-
4
- class SortedController extends AbstractController {
5
- handle(event) {
6
- const {
7
- action,
8
- dispatch
9
- } = event;
10
- dispatch({
11
- type: ZLIST_FETCH_SORTED,
12
- payload: action.payload
13
- });
14
- }
15
-
16
- }
17
-
18
- export default SortedController;
@@ -1,12 +0,0 @@
1
- import { TableListConstants } from "../../../../../../../cc";
2
- export default function handleSortClick(dispatch, _ref) {
3
- let {
4
- id
5
- } = _ref;
6
- dispatch({
7
- type: TableListConstants.TABLE_LIST_SORTED,
8
- payload: {
9
- id
10
- }
11
- });
12
- }
@@ -1,38 +0,0 @@
1
- import SortOrder from "../../../../bc/sort-by/SortOrderEnum";
2
-
3
- class SortBy {
4
- toQueryString(sortBy) {
5
- const {
6
- name,
7
- order
8
- } = sortBy;
9
- let sortQueryString = '';
10
-
11
- if (order === SortOrder.ASC) {
12
- sortQueryString = name;
13
- } else if (order === SortOrder.DES) {
14
- sortQueryString = `-${name}`;
15
- }
16
-
17
- return sortQueryString;
18
- }
19
-
20
- toObject(sortBy) {
21
- let sortByParsed = sortBy.split('-');
22
-
23
- if (sortByParsed[0] === '-') {
24
- return {
25
- name: sortByParsed[1],
26
- order: SortOrder.DES
27
- };
28
- } else {
29
- return {
30
- name: sortByParsed[0],
31
- order: SortOrder.ASC
32
- };
33
- }
34
- }
35
-
36
- }
37
-
38
- export default SortBy;
@@ -1,58 +0,0 @@
1
- import { SortOrder } from "./interfaces/Properties";
2
-
3
- class SortBy {
4
- constructor(id, name, order) {
5
- this.id = id;
6
- this.name = name;
7
- this.order = order;
8
- }
9
-
10
- toObject() {
11
- return {
12
- id: this.id,
13
- name: this.name,
14
- order: this.order
15
- };
16
- }
17
-
18
- toQueryString() {
19
- const {
20
- name,
21
- order
22
- } = this;
23
- let sortQueryString = '';
24
-
25
- if (order === SortOrder.DES) {
26
- sortQueryString = `-${name}`;
27
- } else if (order === SortOrder.ASC) {
28
- sortQueryString = name;
29
- }
30
-
31
- return sortQueryString;
32
- }
33
-
34
- doSorting(id, name) {
35
- if (this.id === id) {
36
- this.toggleSort();
37
- } else {
38
- this.resetSortBy(id, name);
39
- }
40
- }
41
-
42
- toggleSort() {
43
- if (this.order === SortOrder.ASC) {
44
- this.order = SortOrder.DES;
45
- } else {
46
- this.order = SortOrder.ASC;
47
- }
48
- }
49
-
50
- resetSortBy(id, name) {
51
- this.id = id;
52
- this.name = name;
53
- this.order = SortOrder.ASC;
54
- }
55
-
56
- }
57
-
58
- export default SortBy;