@zeedhi/common 3.0.2 → 3.0.3

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 (383) hide show
  1. package/coverage/clover.xml +1858 -3152
  2. package/coverage/coverage-final.json +143 -172
  3. package/coverage/lcov-report/index.html +40 -130
  4. package/coverage/lcov-report/src/components/index.html +5 -5
  5. package/coverage/lcov-report/src/components/index.ts.html +154 -160
  6. package/coverage/lcov-report/src/components/zd-alert/alert.ts.html +3 -3
  7. package/coverage/lcov-report/src/components/zd-alert/index.html +1 -1
  8. package/coverage/lcov-report/src/components/zd-badge/badge.ts.html +3 -3
  9. package/coverage/lcov-report/src/components/zd-badge/index.html +1 -1
  10. package/coverage/lcov-report/src/components/zd-breadcrumbs/breadcrumbs.ts.html +3 -3
  11. package/coverage/lcov-report/src/components/zd-breadcrumbs/index.html +1 -1
  12. package/coverage/lcov-report/src/components/zd-button/button.ts.html +35 -35
  13. package/coverage/lcov-report/src/components/zd-button/index.html +1 -1
  14. package/coverage/lcov-report/src/components/zd-button-group/button-group.ts.html +3 -3
  15. package/coverage/lcov-report/src/components/zd-button-group/index.html +1 -1
  16. package/coverage/lcov-report/src/components/zd-card/card.ts.html +3 -3
  17. package/coverage/lcov-report/src/components/zd-card/index.html +1 -1
  18. package/coverage/lcov-report/src/components/zd-carousel/carousel.ts.html +3 -3
  19. package/coverage/lcov-report/src/components/zd-carousel/index.html +1 -1
  20. package/coverage/lcov-report/src/components/zd-checkbox/checkbox.ts.html +5 -5
  21. package/coverage/lcov-report/src/components/zd-checkbox/index.html +1 -1
  22. package/coverage/lcov-report/src/components/zd-checkbox-multiple/checkbox-multiple.ts.html +6 -6
  23. package/coverage/lcov-report/src/components/zd-checkbox-multiple/index.html +1 -1
  24. package/coverage/lcov-report/src/components/zd-chip/chip.ts.html +3 -3
  25. package/coverage/lcov-report/src/components/zd-chip/index.html +1 -1
  26. package/coverage/lcov-report/src/components/zd-code-viewer/code-viewer.ts.html +4 -4
  27. package/coverage/lcov-report/src/components/zd-code-viewer/index.html +1 -1
  28. package/coverage/lcov-report/src/components/zd-col/col.ts.html +3 -3
  29. package/coverage/lcov-report/src/components/zd-col/index.html +1 -1
  30. package/coverage/lcov-report/src/components/zd-collapse-card/collapse-card.ts.html +3 -3
  31. package/coverage/lcov-report/src/components/zd-collapse-card/index.html +1 -1
  32. package/coverage/lcov-report/src/components/zd-component/child-not-found.ts.html +2 -2
  33. package/coverage/lcov-report/src/components/zd-component/component-render.ts.html +5 -5
  34. package/coverage/lcov-report/src/components/zd-component/component.ts.html +63 -63
  35. package/coverage/lcov-report/src/components/zd-component/index.html +1 -1
  36. package/coverage/lcov-report/src/components/zd-container/container.ts.html +3 -3
  37. package/coverage/lcov-report/src/components/zd-container/index.html +1 -1
  38. package/coverage/lcov-report/src/components/zd-currency/currency.ts.html +9 -9
  39. package/coverage/lcov-report/src/components/zd-currency/index.html +1 -1
  40. package/coverage/lcov-report/src/components/zd-date-input/date-input.ts.html +33 -15
  41. package/coverage/lcov-report/src/components/zd-date-input/index.html +7 -7
  42. package/coverage/lcov-report/src/components/zd-date-range/date-range.ts.html +146 -38
  43. package/coverage/lcov-report/src/components/zd-date-range/index.html +9 -9
  44. package/coverage/lcov-report/src/components/zd-dialog/dialog.ts.html +30 -30
  45. package/coverage/lcov-report/src/components/zd-dialog/index.html +1 -1
  46. package/coverage/lcov-report/src/components/zd-divider/divider.ts.html +3 -3
  47. package/coverage/lcov-report/src/components/zd-divider/index.html +1 -1
  48. package/coverage/lcov-report/src/components/zd-dropdown/dropdown.ts.html +3 -3
  49. package/coverage/lcov-report/src/components/zd-dropdown/index.html +1 -1
  50. package/coverage/lcov-report/src/components/zd-footer/footer.ts.html +3 -3
  51. package/coverage/lcov-report/src/components/zd-footer/index.html +1 -1
  52. package/coverage/lcov-report/src/components/zd-form/form.ts.html +22 -22
  53. package/coverage/lcov-report/src/components/zd-form/index.html +1 -1
  54. package/coverage/lcov-report/src/components/zd-frame/frame.ts.html +7 -7
  55. package/coverage/lcov-report/src/components/zd-frame/index.html +1 -1
  56. package/coverage/lcov-report/src/components/zd-frame-page/frame-page.ts.html +4 -4
  57. package/coverage/lcov-report/src/components/zd-frame-page/index.html +1 -1
  58. package/coverage/lcov-report/src/components/zd-grid/data-navigator.ts.html +3 -3
  59. package/coverage/lcov-report/src/components/zd-grid/data-selector.ts.html +4 -4
  60. package/coverage/lcov-report/src/components/zd-grid/grid-column.ts.html +11 -11
  61. package/coverage/lcov-report/src/components/zd-grid/grid-events.ts.html +4 -4
  62. package/coverage/lcov-report/src/components/zd-grid/grid.ts.html +85 -85
  63. package/coverage/lcov-report/src/components/zd-grid/index.html +1 -1
  64. package/coverage/lcov-report/src/components/zd-grid/index.ts.html +12 -12
  65. package/coverage/lcov-report/src/components/zd-grid/iterable-table.ts.html +11 -11
  66. package/coverage/lcov-report/src/components/zd-grid/keymap-merger.ts.html +15 -15
  67. package/coverage/lcov-report/src/components/zd-grid/keymap-navigation.ts.html +3 -3
  68. package/coverage/lcov-report/src/components/zd-grid/table-action-builder.ts.html +5 -5
  69. package/coverage/lcov-report/src/components/zd-grid/view-navigator.ts.html +3 -3
  70. package/coverage/lcov-report/src/components/zd-grid-editable/data-editor-with-add.ts.html +32 -32
  71. package/coverage/lcov-report/src/components/zd-grid-editable/data-editor.ts.html +15 -15
  72. package/coverage/lcov-report/src/components/zd-grid-editable/errors/index.html +1 -1
  73. package/coverage/lcov-report/src/components/zd-grid-editable/errors/index.ts.html +3 -3
  74. package/coverage/lcov-report/src/components/zd-grid-editable/errors/not-editing.ts.html +2 -2
  75. package/coverage/lcov-report/src/components/zd-grid-editable/errors/row-not-found.ts.html +2 -2
  76. package/coverage/lcov-report/src/components/zd-grid-editable/grid-column-editable.ts.html +7 -7
  77. package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable-controller.ts.html +3 -3
  78. package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable-events.ts.html +5 -5
  79. package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable.ts.html +9 -9
  80. package/coverage/lcov-report/src/components/zd-grid-editable/index.html +5 -5
  81. package/coverage/lcov-report/src/components/zd-grid-editable/index.ts.html +13 -10
  82. package/coverage/lcov-report/src/components/zd-grid-editable/keymap-editing.ts.html +3 -3
  83. package/coverage/lcov-report/src/components/zd-header/header.ts.html +3 -3
  84. package/coverage/lcov-report/src/components/zd-header/index.html +1 -1
  85. package/coverage/lcov-report/src/components/zd-icon/icon.ts.html +3 -3
  86. package/coverage/lcov-report/src/components/zd-icon/index.html +1 -1
  87. package/coverage/lcov-report/src/components/zd-image/image.ts.html +3 -3
  88. package/coverage/lcov-report/src/components/zd-image/index.html +1 -1
  89. package/coverage/lcov-report/src/components/zd-increment/increment.ts.html +5 -5
  90. package/coverage/lcov-report/src/components/zd-increment/index.html +1 -1
  91. package/coverage/lcov-report/src/components/zd-input/index.html +1 -1
  92. package/coverage/lcov-report/src/components/zd-input/input-factory.ts.html +4 -4
  93. package/coverage/lcov-report/src/components/zd-input/input.ts.html +48 -48
  94. package/coverage/lcov-report/src/components/zd-iterable/column-not-found.ts.html +2 -2
  95. package/coverage/lcov-report/src/components/zd-iterable/column.ts.html +96 -96
  96. package/coverage/lcov-report/src/components/zd-iterable/conditions-manager.ts.html +24 -24
  97. package/coverage/lcov-report/src/components/zd-iterable/index.html +15 -15
  98. package/coverage/lcov-report/src/components/zd-iterable/iterable-columns-button-controller.ts.html +3 -3
  99. package/coverage/lcov-report/src/components/zd-iterable/iterable-columns-button.ts.html +15 -15
  100. package/coverage/lcov-report/src/components/zd-iterable/iterable-controller.ts.html +4 -4
  101. package/coverage/lcov-report/src/components/zd-iterable/iterable-page-component.ts.html +5 -5
  102. package/coverage/lcov-report/src/components/zd-iterable/iterable-page-info.ts.html +3 -3
  103. package/coverage/lcov-report/src/components/zd-iterable/iterable-page-size.ts.html +5 -5
  104. package/coverage/lcov-report/src/components/zd-iterable/iterable-pagination.ts.html +3 -3
  105. package/coverage/lcov-report/src/components/zd-iterable/iterable.ts.html +43 -43
  106. package/coverage/lcov-report/src/components/zd-iterable/search.ts.html +8 -8
  107. package/coverage/lcov-report/src/components/zd-iterable-component-render/index.html +1 -1
  108. package/coverage/lcov-report/src/components/zd-iterable-component-render/iterable-component-render.ts.html +5 -5
  109. package/coverage/lcov-report/src/components/zd-layout/index.html +1 -1
  110. package/coverage/lcov-report/src/components/zd-layout/layout.ts.html +3 -3
  111. package/coverage/lcov-report/src/components/zd-list/index.html +1 -1
  112. package/coverage/lcov-report/src/components/zd-list/item-not-found.ts.html +2 -2
  113. package/coverage/lcov-report/src/components/zd-list/list-group.ts.html +4 -4
  114. package/coverage/lcov-report/src/components/zd-list/list-item.ts.html +3 -3
  115. package/coverage/lcov-report/src/components/zd-list/list.ts.html +4 -4
  116. package/coverage/lcov-report/src/components/zd-loading/index.html +1 -1
  117. package/coverage/lcov-report/src/components/zd-loading/loading.ts.html +3 -3
  118. package/coverage/lcov-report/src/components/zd-login/index.html +1 -1
  119. package/coverage/lcov-report/src/components/zd-login/login-button.ts.html +4 -4
  120. package/coverage/lcov-report/src/components/zd-login/login.ts.html +3 -3
  121. package/coverage/lcov-report/src/components/zd-main/index.html +1 -1
  122. package/coverage/lcov-report/src/components/zd-main/main.ts.html +3 -3
  123. package/coverage/lcov-report/src/components/zd-master-detail/detail-not-found.ts.html +3 -3
  124. package/coverage/lcov-report/src/components/zd-master-detail/index.html +1 -1
  125. package/coverage/lcov-report/src/components/zd-master-detail/master-detail.ts.html +6 -6
  126. package/coverage/lcov-report/src/components/zd-master-detail/master-not-found.ts.html +3 -3
  127. package/coverage/lcov-report/src/components/zd-menu/index.html +1 -1
  128. package/coverage/lcov-report/src/components/zd-menu/menu-button.ts.html +4 -4
  129. package/coverage/lcov-report/src/components/zd-menu/menu-group.ts.html +3 -3
  130. package/coverage/lcov-report/src/components/zd-menu/menu-link.ts.html +3 -3
  131. package/coverage/lcov-report/src/components/zd-menu/menu-separator.ts.html +3 -3
  132. package/coverage/lcov-report/src/components/zd-menu/menu.ts.html +4 -4
  133. package/coverage/lcov-report/src/components/zd-modal/index.html +1 -1
  134. package/coverage/lcov-report/src/components/zd-modal/modal-close-button.ts.html +4 -4
  135. package/coverage/lcov-report/src/components/zd-modal/modal.ts.html +27 -27
  136. package/coverage/lcov-report/src/components/zd-month/index.html +1 -1
  137. package/coverage/lcov-report/src/components/zd-month/month.ts.html +6 -6
  138. package/coverage/lcov-report/src/components/zd-number-input/index.html +1 -1
  139. package/coverage/lcov-report/src/components/zd-number-input/number-input.ts.html +9 -9
  140. package/coverage/lcov-report/src/components/zd-password/index.html +1 -1
  141. package/coverage/lcov-report/src/components/zd-password/password.ts.html +7 -7
  142. package/coverage/lcov-report/src/components/zd-progress/index.html +1 -1
  143. package/coverage/lcov-report/src/components/zd-progress/progress.ts.html +3 -3
  144. package/coverage/lcov-report/src/components/zd-radio/index.html +1 -1
  145. package/coverage/lcov-report/src/components/zd-radio/radio.ts.html +6 -6
  146. package/coverage/lcov-report/src/components/zd-row/index.html +1 -1
  147. package/coverage/lcov-report/src/components/zd-row/row.ts.html +3 -3
  148. package/coverage/lcov-report/src/components/zd-select/index.html +1 -1
  149. package/coverage/lcov-report/src/components/zd-select/select.ts.html +9 -9
  150. package/coverage/lcov-report/src/components/zd-select-multiple/index.html +1 -1
  151. package/coverage/lcov-report/src/components/zd-select-multiple/select-multiple.ts.html +5 -5
  152. package/coverage/lcov-report/src/components/zd-svg-map/index.html +1 -1
  153. package/coverage/lcov-report/src/components/zd-svg-map/svg-map.ts.html +4 -4
  154. package/coverage/lcov-report/src/components/zd-switch/index.html +1 -1
  155. package/coverage/lcov-report/src/components/zd-switch/switch.ts.html +5 -5
  156. package/coverage/lcov-report/src/components/zd-table/index.html +1 -1
  157. package/coverage/lcov-report/src/components/zd-table/table.ts.html +4 -4
  158. package/coverage/lcov-report/src/components/zd-tabs/index.html +1 -1
  159. package/coverage/lcov-report/src/components/zd-tabs/tab-not-found.ts.html +2 -2
  160. package/coverage/lcov-report/src/components/zd-tabs/tab.ts.html +3 -3
  161. package/coverage/lcov-report/src/components/zd-tabs/tabs.ts.html +5 -5
  162. package/coverage/lcov-report/src/components/zd-tag/index.html +1 -1
  163. package/coverage/lcov-report/src/components/zd-tag/tag.ts.html +4 -4
  164. package/coverage/lcov-report/src/components/zd-text/index.html +1 -1
  165. package/coverage/lcov-report/src/components/zd-text/text.ts.html +10 -10
  166. package/coverage/lcov-report/src/components/zd-text-input/index.html +1 -1
  167. package/coverage/lcov-report/src/components/zd-text-input/text-input.ts.html +25 -16
  168. package/coverage/lcov-report/src/components/zd-textarea/index.html +1 -1
  169. package/coverage/lcov-report/src/components/zd-textarea/textarea.ts.html +5 -5
  170. package/coverage/lcov-report/src/components/zd-time/index.html +7 -7
  171. package/coverage/lcov-report/src/components/zd-time/time-format-selector.ts.html +2 -2
  172. package/coverage/lcov-report/src/components/zd-time/time.ts.html +32 -14
  173. package/coverage/lcov-report/src/components/zd-toggleable/index.html +1 -1
  174. package/coverage/lcov-report/src/components/zd-toggleable/toggleable.ts.html +5 -5
  175. package/coverage/lcov-report/src/components/zd-tooltip/index.html +1 -1
  176. package/coverage/lcov-report/src/components/zd-tooltip/tooltip.ts.html +3 -3
  177. package/coverage/lcov-report/src/components/zd-tree/index.html +1 -1
  178. package/coverage/lcov-report/src/components/zd-tree/tree.ts.html +7 -7
  179. package/coverage/lcov-report/src/components/zd-tree-grid/index.html +1 -1
  180. package/coverage/lcov-report/src/components/zd-tree-grid/index.ts.html +7 -7
  181. package/coverage/lcov-report/src/components/zd-tree-grid/iterable-tree.ts.html +2 -2
  182. package/coverage/lcov-report/src/components/zd-tree-grid/keymap-tree.ts.html +2 -2
  183. package/coverage/lcov-report/src/components/zd-tree-grid/tree-data-navigator.ts.html +3 -3
  184. package/coverage/lcov-report/src/components/zd-tree-grid/tree-data-selector.ts.html +3 -3
  185. package/coverage/lcov-report/src/components/zd-tree-grid/tree-grid.ts.html +11 -11
  186. package/coverage/lcov-report/src/error/delete-rows.ts.html +3 -3
  187. package/coverage/lcov-report/src/error/index.html +9 -24
  188. package/coverage/lcov-report/src/{utils/is-nil.ts.html → error/index.ts.html} +13 -13
  189. package/coverage/lcov-report/src/error/non-initialized.ts.html +5 -5
  190. package/coverage/lcov-report/src/error/zeedhi-error.ts.html +3 -3
  191. package/coverage/lcov-report/src/index.html +5 -5
  192. package/coverage/lcov-report/src/index.ts.html +13 -13
  193. package/coverage/lcov-report/src/services/index.html +1 -1
  194. package/coverage/lcov-report/src/services/index.ts.html +5 -5
  195. package/coverage/lcov-report/src/services/zd-alert/alert-queue.ts.html +3 -3
  196. package/coverage/lcov-report/src/services/zd-alert/alert-replace.ts.html +3 -3
  197. package/coverage/lcov-report/src/services/zd-alert/alert-service.ts.html +5 -5
  198. package/coverage/lcov-report/src/services/zd-alert/alert-stack.ts.html +3 -3
  199. package/coverage/lcov-report/src/services/zd-alert/index.html +1 -1
  200. package/coverage/lcov-report/src/services/zd-alert/index.ts.html +6 -6
  201. package/coverage/lcov-report/src/services/zd-dialog/dialog-service.ts.html +4 -4
  202. package/coverage/lcov-report/src/services/zd-dialog/index.html +1 -1
  203. package/coverage/lcov-report/src/services/zd-loading/index.html +1 -1
  204. package/coverage/lcov-report/src/services/zd-loading/loading-service.ts.html +2 -2
  205. package/coverage/lcov-report/src/services/zd-modal/index.html +1 -1
  206. package/coverage/lcov-report/src/services/zd-modal/modal-service.ts.html +10 -10
  207. package/coverage/lcov-report/src/utils/data-value-out/data-value-out.ts.html +3 -3
  208. package/coverage/lcov-report/src/utils/data-value-out/index.html +1 -1
  209. package/coverage/lcov-report/src/utils/data-value-out/index.ts.html +3 -3
  210. package/coverage/lcov-report/src/utils/datasource-searcher/datasource-searcher.ts.html +3 -3
  211. package/coverage/lcov-report/src/utils/datasource-searcher/index.html +1 -1
  212. package/coverage/lcov-report/src/utils/datasource-searcher/index.ts.html +3 -3
  213. package/coverage/lcov-report/src/utils/icons/icons.ts.html +6 -6
  214. package/coverage/lcov-report/src/utils/icons/index.html +1 -1
  215. package/coverage/lcov-report/src/utils/index.html +7 -22
  216. package/coverage/lcov-report/src/utils/index.ts.html +10 -19
  217. package/coverage/lcov-report/src/utils/omit/index.html +1 -1
  218. package/coverage/lcov-report/src/utils/omit/omit.ts.html +2 -2
  219. package/coverage/lcov-report/src/utils/theme/index.html +1 -1
  220. package/coverage/lcov-report/src/utils/theme/theme.ts.html +4 -4
  221. package/coverage/lcov-report/src/utils/tree-data-structure/index.html +1 -1
  222. package/coverage/lcov-report/src/utils/tree-data-structure/index.ts.html +3 -3
  223. package/coverage/lcov-report/src/utils/tree-data-structure/tree-data-structure.ts.html +2 -2
  224. package/coverage/lcov-report/src/utils/unique-by/index.html +1 -1
  225. package/coverage/lcov-report/src/utils/unique-by/unique-by.ts.html +3 -3
  226. package/coverage/lcov-report/tests/unit/components/zd-component/ComponentMock.ts.html +1 -1
  227. package/coverage/lcov-report/tests/unit/components/zd-component/index.html +1 -1
  228. package/coverage/lcov.info +2471 -5080
  229. package/dist/types/components/index.d.ts +0 -1
  230. package/dist/types/components/zd-date-input/date-input.d.ts +1 -0
  231. package/dist/types/components/zd-date-range/date-range.d.ts +8 -2
  232. package/dist/types/components/zd-grid-editable/index.d.ts +1 -0
  233. package/dist/types/components/zd-text-input/interfaces.d.ts +1 -0
  234. package/dist/types/components/zd-text-input/text-input.d.ts +1 -0
  235. package/dist/types/components/zd-time/time.d.ts +1 -0
  236. package/dist/types/error/index.d.ts +1 -0
  237. package/dist/types/index.d.ts +1 -0
  238. package/dist/types/utils/index.d.ts +0 -3
  239. package/dist/zd-common.js +185 -3432
  240. package/dist/zd-common.min.js +185 -3432
  241. package/package.json +3 -3
  242. package/src/components/index.ts +0 -2
  243. package/src/components/zd-date-input/date-input.ts +6 -0
  244. package/src/components/zd-date-range/date-range.ts +47 -11
  245. package/src/components/zd-grid-editable/index.ts +1 -0
  246. package/src/components/zd-text-input/interfaces.ts +1 -0
  247. package/src/components/zd-text-input/text-input.ts +3 -0
  248. package/src/components/zd-time/time.ts +7 -1
  249. package/src/error/index.ts +1 -0
  250. package/src/index.ts +1 -0
  251. package/src/utils/index.ts +0 -3
  252. package/coverage/lcov-report/src/components/tek-grid/columns-searcher.ts.html +0 -151
  253. package/coverage/lcov-report/src/components/tek-grid/dynamic-filter-datasource-factory.ts.html +0 -145
  254. package/coverage/lcov-report/src/components/tek-grid/filter-helper.ts.html +0 -145
  255. package/coverage/lcov-report/src/components/tek-grid/grid-filter-button.ts.html +0 -1351
  256. package/coverage/lcov-report/src/components/tek-grid/grouped-data-manager.ts.html +0 -1429
  257. package/coverage/lcov-report/src/components/tek-grid/grouped-data-selector.ts.html +0 -205
  258. package/coverage/lcov-report/src/components/tek-grid/grouped-view-navigator.ts.html +0 -340
  259. package/coverage/lcov-report/src/components/tek-grid/index.html +0 -326
  260. package/coverage/lcov-report/src/components/tek-grid/index.ts.html +0 -139
  261. package/coverage/lcov-report/src/components/tek-grid/interfaces.ts.html +0 -1072
  262. package/coverage/lcov-report/src/components/tek-grid/keymap-grouped.ts.html +0 -148
  263. package/coverage/lcov-report/src/components/tek-grid/layout-options.ts.html +0 -829
  264. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/index.html +0 -161
  265. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/index.ts.html +0 -94
  266. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/interfaces.ts.html +0 -193
  267. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/tek-memory-datasource.ts.html +0 -1027
  268. package/coverage/lcov-report/src/components/tek-grid/tek-datasource/tek-rest-datasource.ts.html +0 -757
  269. package/coverage/lcov-report/src/components/tek-grid/tek-grid-column.ts.html +0 -664
  270. package/coverage/lcov-report/src/components/tek-grid/tek-grid-columns-button/index.html +0 -131
  271. package/coverage/lcov-report/src/components/tek-grid/tek-grid-columns-button/tek-grid-columns-button-controller.ts.html +0 -169
  272. package/coverage/lcov-report/src/components/tek-grid/tek-grid-columns-button/tek-grid-columns-button.ts.html +0 -196
  273. package/coverage/lcov-report/src/components/tek-grid/tek-grid-controller.ts.html +0 -505
  274. package/coverage/lcov-report/src/components/tek-grid/tek-grid-events.ts.html +0 -400
  275. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/export-options/button-option.ts.html +0 -163
  276. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/export-options/index.html +0 -146
  277. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/export-options/index.ts.html +0 -94
  278. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/export-options/multi-option.ts.html +0 -340
  279. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/index.html +0 -131
  280. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/index.ts.html +0 -91
  281. package/coverage/lcov-report/src/components/tek-grid/tek-grid-toolbar-provider/tek-grid-toolbar-provider.ts.html +0 -1186
  282. package/coverage/lcov-report/src/components/tek-grid/tek-grid.ts.html +0 -3451
  283. package/coverage/lcov-report/src/components/zd-code-editor/code-editor.ts.html +0 -1045
  284. package/coverage/lcov-report/src/components/zd-code-editor/index.html +0 -116
  285. package/coverage/lcov-report/src/components/zd-field-group/field-group.ts.html +0 -325
  286. package/coverage/lcov-report/src/components/zd-field-group/index.html +0 -116
  287. package/coverage/lcov-report/src/error/tek-grid-delete-rows.ts.html +0 -130
  288. package/coverage/lcov-report/src/error/teknisa-common-error.ts.html +0 -109
  289. package/coverage/lcov-report/src/utils/is-filled-object/index.html +0 -116
  290. package/coverage/lcov-report/src/utils/is-filled-object/is-filled-object.ts.html +0 -100
  291. package/coverage/lcov-report/tests/unit/__helpers__/component-event-helper.ts.html +0 -106
  292. package/coverage/lcov-report/tests/unit/__helpers__/flush-promises-helper.ts.html +0 -94
  293. package/coverage/lcov-report/tests/unit/__helpers__/index.html +0 -146
  294. package/coverage/lcov-report/tests/unit/__helpers__/mock-http-get-helper.ts.html +0 -172
  295. package/dist/types/components/tek-breadcrumb-header/breadcrumb-header.d.ts +0 -14
  296. package/dist/types/components/tek-breadcrumb-header/interfaces.d.ts +0 -7
  297. package/dist/types/components/tek-grid/columns-searcher.d.ts +0 -5
  298. package/dist/types/components/tek-grid/dynamic-filter-datasource-factory.d.ts +0 -6
  299. package/dist/types/components/tek-grid/filter-helper.d.ts +0 -7
  300. package/dist/types/components/tek-grid/grid-filter-button.d.ts +0 -27
  301. package/dist/types/components/tek-grid/grouped-data-manager.d.ts +0 -82
  302. package/dist/types/components/tek-grid/grouped-data-selector.d.ts +0 -7
  303. package/dist/types/components/tek-grid/grouped-view-navigator.d.ts +0 -14
  304. package/dist/types/components/tek-grid/index.d.ts +0 -18
  305. package/dist/types/components/tek-grid/interfaces.d.ts +0 -259
  306. package/dist/types/components/tek-grid/keymap-grouped.d.ts +0 -7
  307. package/dist/types/components/tek-grid/layout-options.d.ts +0 -39
  308. package/dist/types/components/tek-grid/tek-datasource/index.d.ts +0 -3
  309. package/dist/types/components/tek-grid/tek-datasource/interfaces.d.ts +0 -16
  310. package/dist/types/components/tek-grid/tek-datasource/tek-memory-datasource.d.ts +0 -93
  311. package/dist/types/components/tek-grid/tek-datasource/tek-rest-datasource.d.ts +0 -95
  312. package/dist/types/components/tek-grid/tek-grid-column.d.ts +0 -42
  313. package/dist/types/components/tek-grid/tek-grid-columns-button/tek-grid-columns-button-controller.d.ts +0 -8
  314. package/dist/types/components/tek-grid/tek-grid-columns-button/tek-grid-columns-button.d.ts +0 -12
  315. package/dist/types/components/tek-grid/tek-grid-controller.d.ts +0 -31
  316. package/dist/types/components/tek-grid/tek-grid-events.d.ts +0 -31
  317. package/dist/types/components/tek-grid/tek-grid-toolbar-provider/export-options/button-option.d.ts +0 -17
  318. package/dist/types/components/tek-grid/tek-grid-toolbar-provider/export-options/index.d.ts +0 -3
  319. package/dist/types/components/tek-grid/tek-grid-toolbar-provider/export-options/interfaces.d.ts +0 -5
  320. package/dist/types/components/tek-grid/tek-grid-toolbar-provider/export-options/multi-option.d.ts +0 -12
  321. package/dist/types/components/tek-grid/tek-grid-toolbar-provider/index.d.ts +0 -2
  322. package/dist/types/components/tek-grid/tek-grid-toolbar-provider/tek-grid-toolbar-provider.d.ts +0 -23
  323. package/dist/types/components/tek-grid/tek-grid.d.ts +0 -220
  324. package/dist/types/components/zd-field-group/field-group.d.ts +0 -53
  325. package/dist/types/components/zd-field-group/interfaces.d.ts +0 -16
  326. package/dist/types/components/zd-number/interfaces.d.ts +0 -8
  327. package/dist/types/components/zd-number/number.d.ts +0 -43
  328. package/dist/types/error/tek-grid-delete-rows.d.ts +0 -7
  329. package/dist/types/error/teknisa-common-error.d.ts +0 -6
  330. package/dist/types/utils/config/config.d.ts +0 -7
  331. package/dist/types/utils/is-filled-object/is-filled-object.d.ts +0 -2
  332. package/dist/types/utils/is-nil.d.ts +0 -1
  333. package/src/components/tek-grid/columns-searcher.ts +0 -22
  334. package/src/components/tek-grid/dynamic-filter-datasource-factory.ts +0 -20
  335. package/src/components/tek-grid/filter-helper.ts +0 -20
  336. package/src/components/tek-grid/grid-filter-button.ts +0 -422
  337. package/src/components/tek-grid/grouped-data-manager.ts +0 -448
  338. package/src/components/tek-grid/grouped-data-selector.ts +0 -40
  339. package/src/components/tek-grid/grouped-view-navigator.ts +0 -85
  340. package/src/components/tek-grid/index.ts +0 -18
  341. package/src/components/tek-grid/interfaces.ts +0 -329
  342. package/src/components/tek-grid/keymap-grouped.ts +0 -21
  343. package/src/components/tek-grid/layout-options.ts +0 -248
  344. package/src/components/tek-grid/tek-datasource/index.ts +0 -3
  345. package/src/components/tek-grid/tek-datasource/interfaces.ts +0 -36
  346. package/src/components/tek-grid/tek-datasource/tek-memory-datasource.ts +0 -314
  347. package/src/components/tek-grid/tek-datasource/tek-rest-datasource.ts +0 -224
  348. package/src/components/tek-grid/tek-grid-column.ts +0 -193
  349. package/src/components/tek-grid/tek-grid-columns-button/tek-grid-columns-button-controller.ts +0 -28
  350. package/src/components/tek-grid/tek-grid-columns-button/tek-grid-columns-button.ts +0 -37
  351. package/src/components/tek-grid/tek-grid-controller.ts +0 -140
  352. package/src/components/tek-grid/tek-grid-events.ts +0 -105
  353. package/src/components/tek-grid/tek-grid-toolbar-provider/export-options/button-option.ts +0 -26
  354. package/src/components/tek-grid/tek-grid-toolbar-provider/export-options/index.ts +0 -3
  355. package/src/components/tek-grid/tek-grid-toolbar-provider/export-options/interfaces.ts +0 -6
  356. package/src/components/tek-grid/tek-grid-toolbar-provider/export-options/multi-option.ts +0 -85
  357. package/src/components/tek-grid/tek-grid-toolbar-provider/index.ts +0 -2
  358. package/src/components/tek-grid/tek-grid-toolbar-provider/tek-grid-toolbar-provider.ts +0 -367
  359. package/src/components/tek-grid/tek-grid.ts +0 -1122
  360. package/src/error/tek-grid-delete-rows.ts +0 -15
  361. package/src/error/teknisa-common-error.ts +0 -8
  362. package/src/utils/config/config.ts +0 -8
  363. package/src/utils/is-filled-object/is-filled-object.ts +0 -5
  364. package/src/utils/is-nil.ts +0 -3
  365. package/tests/unit/components/tek-grid/button-option.spec.ts +0 -49
  366. package/tests/unit/components/tek-grid/columns-searcher.spec.ts +0 -112
  367. package/tests/unit/components/tek-grid/dynamic-filter-datasource-factory.spec.ts +0 -90
  368. package/tests/unit/components/tek-grid/filter-helper.spec.ts +0 -52
  369. package/tests/unit/components/tek-grid/grid-filter-button.spec.ts +0 -842
  370. package/tests/unit/components/tek-grid/grouped-data-manager.spec.ts +0 -593
  371. package/tests/unit/components/tek-grid/grouped-data-selector.spec.ts +0 -136
  372. package/tests/unit/components/tek-grid/grouped-view-navigator.spec.ts +0 -244
  373. package/tests/unit/components/tek-grid/keymap-grouped.spec.ts +0 -20
  374. package/tests/unit/components/tek-grid/layout-options.spec.ts +0 -1020
  375. package/tests/unit/components/tek-grid/multi-option.spec.ts +0 -139
  376. package/tests/unit/components/tek-grid/tek-grid-column.spec.ts +0 -312
  377. package/tests/unit/components/tek-grid/tek-grid-columns-button.spec.ts +0 -228
  378. package/tests/unit/components/tek-grid/tek-grid-controller.spec.ts +0 -253
  379. package/tests/unit/components/tek-grid/tek-grid-events.spec.ts +0 -186
  380. package/tests/unit/components/tek-grid/tek-grid-toolbar-provider.spec.ts +0 -34
  381. package/tests/unit/components/tek-grid/tek-grid.spec.ts +0 -895
  382. package/tests/unit/components/tek-grid/tek-memory-datasource.spec.ts +0 -482
  383. package/tests/unit/components/tek-grid/tek-rest-datasource.spec.ts +0 -422
@@ -1,842 +0,0 @@
1
- /* eslint-disable no-underscore-dangle */
2
-
3
- import {
4
- Button, Form, IButton, IForm, IModal, Modal, ModalService,
5
- } from '@zeedhi/common';
6
- import {
7
- Http, Metadata, DateHelper,
8
- Loader,
9
- SimpleControllerBuilder,
10
- } from '@zeedhi/core';
11
- import {
12
- ITekGridFilterButton,
13
- TekGrid, TekGridFilterButton, TekRestDatasource,
14
- } from '../../../../src';
15
- import { flushPromises, getChild, setClick } from '../../__helpers__';
16
-
17
- jest.mock('lodash.debounce', () => jest.fn((fn) => fn));
18
-
19
- // jest.useFakeTimers();
20
-
21
- const clickOnFilterButton = (grid: TekGrid, event?: any) => {
22
- const buttonProps = getChild<ITekGridFilterButton>(grid.toolbarSlot, `${grid.name}_filterButton`);
23
- const filterButton = new TekGridFilterButton(buttonProps);
24
- setClick(filterButton, event);
25
-
26
- return filterButton;
27
- };
28
-
29
- describe('TekGridFilterButton', () => {
30
- beforeAll(() => {
31
- Loader.setBuilder(new SimpleControllerBuilder());
32
- });
33
-
34
- beforeEach(() => {
35
- // clear all metadata instances before testing
36
- const { instances } = Metadata as any;
37
- Object.keys(instances).forEach((key) => {
38
- Metadata.clearInstance(key, instances[key].componentId);
39
- });
40
-
41
- // jest.clearAllTimers();
42
- });
43
-
44
- describe('loadGrid()', () => {
45
- it('should load grid by the gridName', () => {
46
- const instance = new TekGrid({
47
- name: 'grid-1',
48
- component: 'TekGrid',
49
- });
50
- instance.onCreated();
51
-
52
- const filterButton = new TekGridFilterButton({
53
- name: 'columns-button-1',
54
- component: 'TekGridColumnsButton',
55
- gridName: 'grid-1',
56
- });
57
-
58
- expect(filterButton.grid).toEqual(instance);
59
- });
60
-
61
- it('should load grid by the gridName', () => {
62
- const instance = new TekGrid({
63
- name: 'grid-1',
64
- component: 'TekGrid',
65
- });
66
- instance.onCreated();
67
-
68
- const filterButton = new TekGridFilterButton({
69
- name: 'columns-button-1',
70
- component: 'TekGridColumnsButton',
71
- grid: instance,
72
- });
73
-
74
- expect(filterButton.grid).toEqual(instance);
75
- });
76
-
77
- it('should load grid by the gridName', () => {
78
- const instance = new TekGrid({
79
- name: 'grid-1',
80
- component: 'TekGrid',
81
- });
82
- instance.onCreated();
83
- const filterButton = new TekGridFilterButton({
84
- name: 'columns-button-1',
85
- component: 'TekGridColumnsButton',
86
- });
87
-
88
- filterButton.loadGrid('grid-1');
89
-
90
- expect(filterButton.grid).toEqual(instance);
91
- });
92
- });
93
-
94
- describe('filterClick()', () => {
95
- it('should call createFilterFromColumns', () => {
96
- const instance = new TekGrid({
97
- name: 'grid_filterClick1',
98
- component: 'TekGrid',
99
- });
100
- instance.onCreated();
101
-
102
- const formInstance = new Form({
103
- name: 'form',
104
- component: 'ZdForm',
105
- });
106
-
107
- const spy = jest.spyOn(ModalService, 'create');
108
- const spyMetadata = jest.spyOn(Metadata, 'getInstance').mockImplementation(() => formInstance);
109
- instance.onCreated();
110
-
111
- const button = clickOnFilterButton(instance);
112
- button.onCreated();
113
-
114
- expect(spy).toHaveBeenCalledTimes(1);
115
- button.click();
116
- expect(spy).toHaveBeenCalledTimes(1);
117
- expect(button.isVisible).toBeFalsy();
118
-
119
- button.onBeforeDestroy();
120
-
121
- spy.mockReset();
122
- spyMetadata.mockReset();
123
- });
124
-
125
- it('should call events', () => {
126
- let filterClickCalled = false;
127
- const instance = new TekGrid({
128
- name: 'grid_filterClick2',
129
- component: 'TekGrid',
130
- events: {
131
- filterClick: () => { filterClickCalled = true; },
132
- },
133
- });
134
-
135
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal) => new Modal(modal));
136
-
137
- instance.onCreated();
138
- clickOnFilterButton(instance);
139
-
140
- expect(filterClickCalled).toBeTruthy();
141
-
142
- spy.mockReset();
143
- });
144
-
145
- it('should not call saveEditedRows if filterClick call preventDefault', () => {
146
- let filterClickCalled = false;
147
- const instance = new TekGrid({
148
- name: 'grid_filterClick3',
149
- component: 'TekGrid',
150
- events: {
151
- filterClick: () => { filterClickCalled = true; },
152
- },
153
- });
154
-
155
- const spy = jest.spyOn(ModalService, 'create');
156
-
157
- instance.onCreated();
158
- clickOnFilterButton(instance, { defaultPrevented: true });
159
-
160
- expect(filterClickCalled).toBeTruthy();
161
- expect(spy).not.toHaveBeenCalled();
162
-
163
- spy.mockReset();
164
- });
165
-
166
- it('should create modal with no form elements', () => {
167
- const instance = new TekGrid({
168
- name: 'grid_filterClick4',
169
- component: 'TekGrid',
170
- columns: [
171
- { name: 'id' },
172
- { name: 'name', filterable: false, filterProps: { name: 'name_edit', label: 'name' } },
173
- ],
174
- });
175
-
176
- let formElements: any = [];
177
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
178
- const form = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
179
- formElements = form.children;
180
-
181
- return new Modal(modal);
182
- });
183
- instance.onCreated();
184
- clickOnFilterButton(instance);
185
-
186
- expect(formElements).toEqual([]);
187
- spy.mockReset();
188
- });
189
-
190
- it('should create modal with filterable form elements', () => {
191
- const instance = new TekGrid({
192
- name: 'grid_filterClick5',
193
- component: 'TekGrid',
194
- columns: [
195
- { name: 'id' },
196
- { name: 'name', filterable: true, filterProps: [{ name: 'name_edit', label: 'name' }] },
197
- ],
198
- });
199
-
200
- let formElements: any = [];
201
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
202
- const form = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
203
- formElements = form.children;
204
-
205
- return new Modal(modal);
206
- });
207
- instance.onCreated();
208
- clickOnFilterButton(instance);
209
-
210
- expect(formElements[0].name).toBe('grid_filterClick5-filter-AND-CONTAINS-name-0');
211
-
212
- spy.mockReset();
213
- });
214
-
215
- it('when creating a SelectMultiple filter, default should not add showCheckboxAll prop', () => {
216
- const instance = new TekGrid({
217
- name: 'grid_filterClick5',
218
- component: 'TekGrid',
219
- columns: [
220
- {
221
- name: 'id',
222
- filterable: true,
223
- filterProps: [{
224
- name: 'id_edit', label: 'id', component: 'ZdSelectMultiple', showCheckboxAll: false,
225
- }],
226
- },
227
- {
228
- name: 'name',
229
- filterable: true,
230
- filterProps: [{ name: 'name_edit', label: 'name', component: 'ZdSelectMultiple' }],
231
- },
232
- ],
233
- });
234
-
235
- let formElements: any = [];
236
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
237
- const form = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
238
- formElements = form.children;
239
-
240
- return new Modal(modal);
241
- });
242
- instance.onCreated();
243
- clickOnFilterButton(instance);
244
-
245
- expect(formElements[0].showCheckboxAll).toBeFalsy();
246
- expect(formElements[1].showCheckboxAll).toBeFalsy();
247
-
248
- spy.mockReset();
249
- });
250
-
251
- it('when using the prop showCheckboxAllFilter, should add showCheckboxAll prop to SelectMultiple filters', () => {
252
- const instance = new TekGrid({
253
- name: 'grid_filterClick5',
254
- component: 'TekGrid',
255
- showCheckboxAllFilter: true,
256
- columns: [
257
- {
258
- name: 'id',
259
- filterable: true,
260
- filterProps: [{
261
- name: 'id_edit', label: 'id', component: 'ZdSelectMultiple', showCheckboxAll: false,
262
- }],
263
- },
264
- {
265
- name: 'name',
266
- filterable: true,
267
- filterProps: [{ name: 'name_edit', label: 'name', component: 'ZdSelectMultiple' }],
268
- },
269
- ],
270
- });
271
-
272
- let formElements: any = [];
273
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
274
- const form = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
275
- formElements = form.children;
276
-
277
- return new Modal(modal);
278
- });
279
- instance.onCreated();
280
- clickOnFilterButton(instance);
281
-
282
- expect(formElements[0].showCheckboxAll).toBeFalsy();
283
- expect(formElements[1].showCheckboxAll).toBeTruthy();
284
-
285
- spy.mockReset();
286
- });
287
-
288
- it('should create modal with filterable and ordered form elements', () => {
289
- const instance = new TekGrid({
290
- name: 'grid-filter-order',
291
- component: 'TekGrid',
292
- columns: [
293
- { name: 'id' },
294
- {
295
- name: 'first_name',
296
- filterable: true,
297
- filterProps: [{ name: 'first_name_edit', label: 'first_name' }],
298
- },
299
- {
300
- name: 'last_name',
301
- filterable: true,
302
- filterIndex: 1,
303
- filterProps: [{ name: 'last_name_edit', label: 'last_name' }],
304
- },
305
- {
306
- name: 'dob',
307
- filterable: true,
308
- filterIndex: 0,
309
- filterProps: [{ name: 'dob_edit', label: 'dob' }],
310
- },
311
- ],
312
- });
313
-
314
- let formElements: any = [];
315
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
316
- const form = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
317
- formElements = form.children;
318
-
319
- return new Modal(modal);
320
- });
321
- instance.onCreated();
322
-
323
- clickOnFilterButton(instance);
324
-
325
- expect(formElements[0].name).toBe('grid-filter-order-filter-AND-CONTAINS-dob-0');
326
- expect(formElements[1].name).toBe('grid-filter-order-filter-AND-CONTAINS-last_name-0');
327
- expect(formElements[2].name).toBe('grid-filter-order-filter-AND-CONTAINS-first_name-0');
328
-
329
- spy.mockReset();
330
- });
331
-
332
- it('should create modal with filterable form elements and TekRestDatasource', () => {
333
- const instance = new TekGrid({
334
- name: 'grid_filterClick6',
335
- component: 'TekGrid',
336
- datasource: {
337
- type: 'tek-rest',
338
- lazyLoad: true,
339
- },
340
- columns: [
341
- {
342
- name: 'id',
343
- filterProps: [{ name: 'id_edit' }],
344
- },
345
- {
346
- name: 'name',
347
- componentProps: { name: 'name_edit', component: 'ZdSelect' },
348
- filterProps: [{
349
- name: 'name_edit', label: 'name', operation: 'NOT_EQUALS', relation: 'OR',
350
- }],
351
- },
352
- ],
353
- });
354
-
355
- let formElements: any = [];
356
- let form: IForm;
357
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
358
- form = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
359
- formElements = form.children;
360
-
361
- return new Modal(modal);
362
- });
363
- instance.onCreated();
364
-
365
- clickOnFilterButton(instance);
366
-
367
- expect(formElements[0].name).toBe('grid_filterClick6-filter-AND-CONTAINS-id-0');
368
- expect(formElements[1].name).toBe('grid_filterClick6-filter-OR-NOT_EQUALS-name-0');
369
- expect(formElements[1].component).toBe('ZdSelect');
370
-
371
- spy.mockReset();
372
- });
373
-
374
- it('should create modal with helper component', () => {
375
- const instance = new TekGrid({
376
- name: 'grid_filterClick7',
377
- component: 'TekGrid',
378
- datasource: {
379
- type: 'tek-rest',
380
- lazyLoad: true,
381
- },
382
- columns: [
383
- {
384
- name: 'id',
385
- filterProps: [{ name: 'id_edit' }],
386
- },
387
- {
388
- name: 'date',
389
- componentProps: { name: 'date_edit', component: 'ZdDate' },
390
- filterProps: [
391
- {
392
- name: 'date_edit1',
393
- label: 'date1',
394
- operation: 'NOT_EQUALS',
395
- relation: 'OR',
396
- helperOptions: [
397
- 'TODAY',
398
- 'TOMORROW',
399
- ],
400
- },
401
- {
402
- name: 'date_edit2',
403
- label: 'date2',
404
- showLabel: false,
405
- operation: 'NOT_EQUALS',
406
- relation: 'OR',
407
- helperOptions: [
408
- 'TODAY',
409
- 'TOMORROW',
410
- ],
411
- },
412
- ],
413
- },
414
- ],
415
- });
416
-
417
- let formElements: any = [];
418
- let form: IForm;
419
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
420
- form = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
421
- formElements = form.children;
422
-
423
- return new Modal(modal);
424
- });
425
- const dateHelperSpy = jest.spyOn(DateHelper, 'getLabel').mockImplementation((name: string) => name);
426
-
427
- instance.onCreated();
428
- clickOnFilterButton(instance);
429
-
430
- expect(formElements[0].name).toBe('grid_filterClick7-filter-AND-CONTAINS-id-0');
431
- expect(formElements[1].name).toBe('grid_filterClick7-filter-OR-NOT_EQUALS-date-0');
432
- expect(formElements[2].name).toBe('grid_filterClick7-filter-OR-NOT_EQUALS-date-1');
433
-
434
- spy.mockReset();
435
- dateHelperSpy.mockReset();
436
- });
437
-
438
- it('should load form values from datasource', () => {
439
- const instance = new TekGrid({
440
- name: 'grid_filterClick10',
441
- component: 'TekGrid',
442
- datasource: {
443
- filter: {
444
- id: '',
445
- name: 'teste',
446
- phone: '9',
447
- },
448
- },
449
- columns: [
450
- {
451
- name: 'id',
452
- },
453
- {
454
- name: 'name',
455
- },
456
- {
457
- name: 'phone',
458
- },
459
- ],
460
- });
461
-
462
- let formProps: IForm = {} as IForm;
463
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
464
- formProps = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
465
-
466
- return new Modal(modal);
467
- });
468
- instance.onCreated();
469
- clickOnFilterButton(instance);
470
-
471
- const formObject = new Form(formProps);
472
- formObject.onMounted({} as HTMLElement);
473
-
474
- expect(formObject.value).toEqual({
475
- 'grid_filterClick10-filter-AND-CONTAINS-name-0': 'teste',
476
- 'grid_filterClick10-filter-AND-CONTAINS-phone-0': '9',
477
- });
478
- spy.mockReset();
479
- });
480
-
481
- it('should apply filter from form to tekdatasource', async () => {
482
- const httpSpy = jest.spyOn(Http, 'get').mockImplementation(() => Promise.resolve({
483
- data: {
484
- data: [
485
- { id: 1, name: 'employee 1', department: 1 },
486
- { id: 2, name: 'employee 2', department: 1 },
487
- { id: 3, name: 'employee 3', department: 1 },
488
- { id: 4, name: 'employee 4', department: 2 },
489
- { id: 5, name: 'employee 5', department: 2 },
490
- ],
491
- pagination: {
492
- page: 1,
493
- total: 5,
494
- limit: 15,
495
- },
496
- },
497
- }));
498
- const instance = new TekGrid({
499
- name: 'grid_filterClick11',
500
- component: 'TekGrid',
501
- datasource: {
502
- type: 'tek-rest',
503
- },
504
- columns: [
505
- {
506
- name: 'id',
507
- filterProps: [{ name: 'id_edit', operation: 'IN', relation: 'AND' }],
508
- },
509
- {
510
- name: 'name',
511
- componentProps: { name: 'name_edit', component: 'ZdSelect' },
512
- filterProps: [{
513
- name: 'name_edit', label: 'name', operation: 'NOT_EQUALS', relation: 'OR',
514
- }],
515
- },
516
- {
517
- name: 'phone',
518
- filterProps: [{ name: 'phone_edit' }],
519
- },
520
- {
521
- name: 'salary',
522
- filterProps: [
523
- { name: 'salary_min', operation: 'GREATER_THAN_EQUALS', relation: 'AND' },
524
- { name: 'salary_max', operation: 'LESS_THAN_EQUALS', relation: 'AND' },
525
- ],
526
- },
527
- ],
528
- });
529
-
530
- let form: IForm = { name: 'form', component: 'ZdForm' };
531
- let applyButton: IButton = { name: 'apply', component: 'ZdButton' };
532
- const spyModalService = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
533
- form = getChild(modal.children || [], `${instance.name}-filter-form`);
534
-
535
- const modalFooter = getChild(modal.children || [], `${instance.name}-filter-footer`);
536
- applyButton = getChild(modalFooter.rightSlot, `${instance.name}-filter-okButton`);
537
-
538
- return new Modal(modal);
539
- });
540
-
541
- instance.onCreated();
542
-
543
- const buttonProps = getChild<ITekGridFilterButton>(instance.toolbarSlot, `${instance.name}_filterButton`);
544
- const button = new TekGridFilterButton(buttonProps);
545
- setClick(button);
546
-
547
- await flushPromises();
548
-
549
- const formObject = new Form(form);
550
- const spyMetadata = jest.spyOn(Metadata, 'getInstance').mockImplementation(() => formObject);
551
- const spyDatasourceGet = jest.spyOn(instance.datasource, 'get');
552
- formObject.value = {
553
- 'grid_filterClick11-filter-AND-IN-id-0': ['1', '2', '3'],
554
- 'grid_filterClick11-filter-OR-NOT_EQUALS-name-0': 'teste',
555
- 'grid_filterClick11-filter-AND-CONTAINS-phone-0': '',
556
- 'grid_filterClick11-filter-AND-GREATER_THAN_EQUALS-salary-0': '1000',
557
- 'grid_filterClick11-filter-AND-LESS_THAN_EQUALS-salary-0': '2000',
558
- };
559
- const applyButtonObject = new Button(applyButton);
560
- formObject.validate = () => {
561
- return new Promise((resolve) => {
562
- resolve({ valid: false });
563
- });
564
- };
565
- setClick(applyButtonObject);
566
- expect((instance.datasource as TekRestDatasource).dynamicFilter).toEqual({});
567
-
568
- formObject.validate = () => {
569
- return new Promise((resolve) => {
570
- resolve({ valid: true });
571
- });
572
- };
573
- setClick(applyButtonObject);
574
-
575
- await flushPromises();
576
-
577
- expect((instance.datasource as TekRestDatasource).dynamicFilter).toEqual({
578
- id: [
579
- {
580
- operation: 'IN',
581
- relation: 'AND',
582
- value: ['1', '2', '3'],
583
- },
584
- ],
585
- name: [
586
- {
587
- operation: 'NOT_EQUALS',
588
- relation: 'OR',
589
- value: 'teste',
590
- },
591
- ],
592
- salary: [
593
- {
594
- operation: 'GREATER_THAN_EQUALS',
595
- relation: 'AND',
596
- value: '1000',
597
- },
598
- {
599
- operation: 'LESS_THAN_EQUALS',
600
- relation: 'AND',
601
- value: '2000',
602
- },
603
- ],
604
- });
605
- expect(instance.columnHasFilter('name')).toBeTruthy();
606
- expect(spyDatasourceGet).toHaveBeenCalled();
607
- spyMetadata.mockReset();
608
- spyDatasourceGet.mockReset();
609
- spyModalService.mockReset();
610
- httpSpy.mockReset();
611
- });
612
-
613
- it('should clear data from form', () => {
614
- const httpSpy = jest.spyOn(Http, 'get').mockImplementation(() => Promise.resolve({
615
- data: {
616
- data: [
617
- { id: 1, name: 'employee 1', department: 1 },
618
- { id: 2, name: 'employee 2', department: 1 },
619
- { id: 3, name: 'employee 3', department: 1 },
620
- { id: 4, name: 'employee 4', department: 2 },
621
- { id: 5, name: 'employee 5', department: 2 },
622
- ],
623
- pagination: {
624
- page: 1,
625
- total: 5,
626
- limit: 15,
627
- },
628
- },
629
- }));
630
- const instance = new TekGrid({
631
- name: 'grid_filterClick12',
632
- component: 'TekGrid',
633
- datasource: {
634
- type: 'tek-rest',
635
- },
636
- columns: [
637
- {
638
- name: 'id',
639
- filterProps: [{ name: 'id_edit', operation: 'IN', relation: 'AND' }],
640
- },
641
- {
642
- name: 'name',
643
- componentProps: { name: 'name_edit', component: 'ZdSelect' },
644
- filterProps: [{
645
- name: 'name_edit', label: 'name', operation: 'NOT_EQUALS', relation: 'OR',
646
- }],
647
- },
648
- {
649
- name: 'phone',
650
- filterProps: [{ name: 'phone_edit' }],
651
- },
652
- {
653
- name: 'salary',
654
- filterProps: [
655
- { name: 'salary_min', operation: 'GREATER_THAN_EQUALS', relation: 'AND' },
656
- { name: 'salary_max', operation: 'LESS_THAN_EQUALS', relation: 'AND' },
657
- ],
658
- },
659
- ],
660
- });
661
-
662
- let form: IForm = { name: 'form', component: 'ZdForm' };
663
- let clearButton: IButton = { name: 'clear', component: 'ZdButton' };
664
- const spyModalService = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
665
- form = getChild(modal.children || [], `${instance.name}-filter-form`);
666
-
667
- const modalFooter = getChild(modal.children || [], `${instance.name}-filter-footer`);
668
- clearButton = getChild(modalFooter.leftSlot, `${instance.name}-filter-clearButton`);
669
-
670
- return new Modal(modal);
671
- });
672
-
673
- instance.onCreated();
674
-
675
- const buttonProps = getChild<ITekGridFilterButton>(instance.toolbarSlot, `${instance.name}_filterButton`);
676
- const button = new TekGridFilterButton(buttonProps);
677
- setClick(button);
678
-
679
- const formObject = new Form(form);
680
- const spyMetadata = jest.spyOn(Metadata, 'getInstance').mockImplementation(() => formObject);
681
- const spyDatasourceGet = jest.spyOn(instance.datasource, 'get');
682
- formObject.value = {
683
- 'grid_filterClick12-filter-AND-IN-id-0': ['1', '2', '3'],
684
- 'grid_filterClick12-filter-OR-NOT_EQUALS-name-0': 'teste',
685
- 'grid_filterClick12-filter-AND-CONTAINS-phone-0': '',
686
- 'grid_filterClick12-filter-AND-GREATER_THAN_EQUALS-salary-0': '1000',
687
- 'grid_filterClick12-filter-AND-LESS_THAN_EQUALS-salary-0': '2000',
688
- };
689
- const clearButtonObject = new Button(clearButton);
690
- setClick(clearButtonObject);
691
- expect(formObject.value).toEqual({
692
- 'grid_filterClick12-filter-AND-IN-id-0': null,
693
- 'grid_filterClick12-filter-OR-NOT_EQUALS-name-0': null,
694
- 'grid_filterClick12-filter-AND-CONTAINS-phone-0': null,
695
- 'grid_filterClick12-filter-AND-GREATER_THAN_EQUALS-salary-0': null,
696
- 'grid_filterClick12-filter-AND-LESS_THAN_EQUALS-salary-0': null,
697
- });
698
- spyMetadata.mockReset();
699
- spyDatasourceGet.mockReset();
700
- spyModalService.mockReset();
701
- httpSpy.mockReset();
702
- });
703
-
704
- it('should apply filter from form to datasource', async () => {
705
- let beforeApplyFilterCalled = false;
706
- let changeLayoutCalled = false;
707
- const instance = new TekGrid({
708
- name: 'grid_filterClick13',
709
- component: 'TekGrid',
710
- columns: [
711
- {
712
- name: 'id',
713
- },
714
- {
715
- name: 'name',
716
- },
717
- {
718
- name: 'phone',
719
- },
720
- {
721
- name: 'salary',
722
- },
723
- ],
724
- events: {
725
- beforeApplyFilter: () => { beforeApplyFilterCalled = true; },
726
- changeLayout: () => { changeLayoutCalled = true; },
727
- },
728
- });
729
-
730
- instance.onCreated();
731
-
732
- let form: IForm = { name: 'form', component: 'ZdForm' };
733
- let applyButton: IButton = { name: 'apply', component: 'ZdButton' };
734
- const spyModalService = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
735
- form = getChild(modal.children || [], `${instance.name}-filter-form`);
736
-
737
- const modalFooter = getChild(modal.children || [], `${instance.name}-filter-footer`);
738
- applyButton = getChild(modalFooter.rightSlot, `${instance.name}-filter-okButton`);
739
-
740
- return new Modal(modal);
741
- });
742
-
743
- clickOnFilterButton(instance);
744
-
745
- const formObject = new Form(form);
746
- const spyMetadata = jest.spyOn(Metadata, 'getInstance').mockImplementation(() => formObject);
747
- const spyDatasourceGet = jest.spyOn(instance.datasource, 'get');
748
- formObject.value = {
749
- 'grid_filterClick13-filter-AND-CONTAINS-id-0': '1;2;3',
750
- 'grid_filterClick13-filter-AND-CONTAINS-name-0': 'teste',
751
- 'grid_filterClick13-filter-AND-CONTAINS-phone-0': '',
752
- 'grid_filterClick13-filter-AND-CONTAINS-salary-0': '1000',
753
- };
754
- const applyButtonObject = new Button(applyButton);
755
- setClick(applyButtonObject);
756
-
757
- await flushPromises();
758
-
759
- expect(instance.datasource.filter).toEqual({
760
- id: '1;2;3',
761
- name: 'teste',
762
- salary: '1000',
763
- });
764
- expect(beforeApplyFilterCalled).toBeTruthy();
765
- expect(changeLayoutCalled).toBeTruthy();
766
- expect(instance.columnHasFilter('name')).toBeTruthy();
767
-
768
- setClick(applyButtonObject, { defaultPrevented: true });
769
- expect(spyDatasourceGet).toHaveBeenCalledTimes(1);
770
- spyMetadata.mockReset();
771
- spyDatasourceGet.mockReset();
772
- spyModalService.mockReset();
773
- });
774
-
775
- it('should load form values from tekdatasource', () => {
776
- const instance = new TekGrid({
777
- name: 'grid_filterClick9',
778
- component: 'TekGrid',
779
- datasource: {
780
- type: 'tek-rest',
781
- lazyLoad: true,
782
- dynamicFilter: {
783
- name: [
784
- {
785
- operation: 'NOT_EQUALS',
786
- relation: 'OR',
787
- value: 'teste',
788
- },
789
- ],
790
- phone: [
791
- {
792
- value: '9',
793
- },
794
- ],
795
- },
796
- },
797
- columns: [
798
- {
799
- name: 'id',
800
- filterProps: [{ name: 'id_edit' }],
801
- },
802
- {
803
- name: 'name',
804
- componentProps: { name: 'name_edit', component: 'ZdSelect' },
805
- filterProps: {
806
- name: 'name_edit', label: 'name', operation: 'NOT_EQUALS', relation: 'OR',
807
- },
808
- },
809
- {
810
- name: 'phone',
811
- filterProps: [{ name: 'phone_edit' }],
812
- },
813
- ],
814
- });
815
-
816
- let form: IForm = { name: 'form', component: 'ZdForm' };
817
- const spy = jest.spyOn(ModalService, 'create').mockImplementation((modal: IModal) => {
818
- form = getChild<IForm>(modal.children || [], `${instance.name}-filter-form`);
819
-
820
- return new Modal(modal);
821
- });
822
- instance.onCreated();
823
-
824
- clickOnFilterButton(instance);
825
-
826
- expect(form.name).toBe('grid_filterClick9-filter-form');
827
- const formObject = new Form(form);
828
- formObject.value = {
829
- 'grid_filterClick9-filter-AND_CONTAINS-id-0': null,
830
- 'grid_filterClick9-filter-OR-NOT_EQUALS-name-0': null,
831
- 'grid_filterClick9-filter-AND-CONTAINS-phone-0': null,
832
- };
833
- formObject.onMounted({} as HTMLElement);
834
- expect(formObject.value).toEqual({
835
- 'grid_filterClick9-filter-AND_CONTAINS-id-0': null,
836
- 'grid_filterClick9-filter-OR-NOT_EQUALS-name-0': 'teste',
837
- 'grid_filterClick9-filter-AND-CONTAINS-phone-0': '9',
838
- });
839
- spy.mockReset();
840
- });
841
- });
842
- });