@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,1020 +0,0 @@
1
- import { Grid, Tag } from '@zeedhi/common';
2
- import { Config, Http, Loader, SimpleControllerBuilder } from '@zeedhi/core';
3
- import {
4
- ITekConfig,
5
- ITekGridLayoutInfo,
6
- TekGrid,
7
- TekGridLayoutOptions,
8
- ITekGridProps,
9
- } from '../../../../src';
10
- import { flushPromises } from '../../__helpers__';
11
-
12
- let savedLayouts: string = '';
13
- const testLayouts: ITekGridLayoutInfo = {
14
- layouts: {
15
- 'Name first': {
16
- name: 'Name first',
17
- gridWidth: '544px',
18
- columns: [
19
- {
20
- name: 'id',
21
- width: '34px',
22
- isVisible: true,
23
- grouped: false,
24
- },
25
- {
26
- name: 'name',
27
- width: '107px',
28
- isVisible: true,
29
- grouped: false,
30
- },
31
- {
32
- name: 'salary',
33
- width: '114px',
34
- isVisible: true,
35
- grouped: false,
36
- },
37
- ],
38
- },
39
- },
40
- };
41
-
42
- const setupInstance = (props: Partial<ITekGridProps> = {}) => {
43
- const instance = new TekGrid({
44
- name: 'Grid',
45
- component: 'TekGrid',
46
- columns: [
47
- { name: 'first' },
48
- { name: 'second' },
49
- { name: 'third' },
50
- ],
51
- datasource: {
52
- limit: 2,
53
- page: 1,
54
- data: [
55
- { id: 1 },
56
- { id: 2 },
57
- { id: 3 },
58
- { id: 4 },
59
- { id: 5 },
60
- { id: 6 },
61
- { id: 7 },
62
- ],
63
- },
64
- ...props,
65
- });
66
- const elem = document.createElement('DIV');
67
- instance.onCreated();
68
- instance.onMounted(elem);
69
-
70
- return instance;
71
- };
72
-
73
- describe('LayoutOptions', () => {
74
- beforeAll(() => {
75
- Loader.setBuilder(new SimpleControllerBuilder());
76
- });
77
-
78
- describe('constructor()', () => {
79
- it('should create layout options object', () => {
80
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
81
-
82
- expect(instance.currentLayoutName).toBe('');
83
- expect(instance.layouts).toEqual({});
84
- expect(instance.layoutNames).toEqual([]);
85
- expect(instance.originalColumnProps).toEqual([]);
86
- });
87
- });
88
-
89
- describe('mounted()', () => {
90
- it('should store the original column props of a TekGrid', () => {
91
- const tag = new Tag({
92
- name: 'toolbar',
93
- component: 'ZdTag',
94
- tag: 'span',
95
- });
96
- const grid = setupInstance({
97
- name: 'grid',
98
- component: 'TekGrid',
99
- columns: [
100
- { name: 'id' },
101
- { name: 'name' },
102
- { name: 'salary' },
103
- {
104
- name: 'date1',
105
- filterProps: {
106
- name: 'date1-filter',
107
- helperValue: 'TODAY',
108
- },
109
- },
110
- {
111
- name: 'date2',
112
- filterProps: [
113
- {
114
- name: 'date2-filter1',
115
- helperValue: 'TODAY',
116
- },
117
- {
118
- name: 'date2-filter2',
119
- helperValue: 'TOMORROW',
120
- },
121
- ],
122
- },
123
- ],
124
- });
125
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
126
- instance.parent = tag;
127
- tag.parent = grid;
128
-
129
- instance.onMounted({} as HTMLElement);
130
-
131
- expect(instance.originalDatasourceDynamicFilter).toEqual({});
132
- expect(instance.originalDatasourceFilter).toEqual({});
133
- expect(instance.originalColumnProps).toEqual([
134
- {
135
- name: 'id',
136
- isVisible: true,
137
- fixed: false,
138
- grouped: false,
139
- minWidth: undefined,
140
- maxWidth: undefined,
141
- aggregation: undefined,
142
- align: 'left',
143
- groupOpened: false,
144
- label: '',
145
- filterHelperValue: [],
146
- width: undefined,
147
- },
148
- {
149
- name: 'name',
150
- isVisible: true,
151
- fixed: false,
152
- grouped: false,
153
- minWidth: undefined,
154
- maxWidth: undefined,
155
- aggregation: undefined,
156
- align: 'left',
157
- groupOpened: false,
158
- label: '',
159
- filterHelperValue: [],
160
- width: undefined,
161
- },
162
- {
163
- name: 'salary',
164
- isVisible: true,
165
- fixed: false,
166
- grouped: false,
167
- minWidth: undefined,
168
- maxWidth: undefined,
169
- aggregation: undefined,
170
- align: 'left',
171
- groupOpened: false,
172
- label: '',
173
- filterHelperValue: [],
174
- width: undefined,
175
- },
176
- {
177
- name: 'date1',
178
- isVisible: true,
179
- fixed: false,
180
- grouped: false,
181
- minWidth: undefined,
182
- maxWidth: undefined,
183
- aggregation: undefined,
184
- align: 'left',
185
- groupOpened: false,
186
- label: '',
187
- filterHelperValue: 'TODAY',
188
- width: undefined
189
- },
190
- {
191
- name: 'date2',
192
- isVisible: true,
193
- fixed: false,
194
- grouped: false,
195
- minWidth: undefined,
196
- maxWidth: undefined,
197
- aggregation: undefined,
198
- align: 'left',
199
- groupOpened: false,
200
- label: '',
201
- filterHelperValue: ['TODAY', 'TOMORROW'],
202
- width: undefined,
203
- },
204
- ]);
205
- });
206
-
207
- it('should store the original column props of a normal Grid', () => {
208
- const grid = new Grid({
209
- name: 'grid',
210
- component: 'Grid',
211
- columns: [
212
- { name: 'id', maxWidth: '200px', minWidth: '100px' },
213
- { name: 'name' },
214
- { name: 'salary' },
215
- ],
216
- });
217
- grid.onCreated();
218
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
219
- instance.parent = grid;
220
-
221
- instance.onMounted({} as HTMLElement);
222
-
223
- expect(instance.originalColumnProps).toEqual([
224
- {
225
- name: 'id',
226
- isVisible: true,
227
- maxWidth: '200px',
228
- minWidth: '100px',
229
- aggregation: undefined,
230
- align: 'left',
231
- groupOpened: undefined,
232
- label: '',
233
- filterHelperValue: '',
234
- fixed: false,
235
- grouped: undefined,
236
- },
237
- {
238
- name: 'name',
239
- isVisible: true,
240
- minWidth: undefined,
241
- maxWidth: undefined,
242
- aggregation: undefined,
243
- align: 'left',
244
- groupOpened: undefined,
245
- label: '',
246
- filterHelperValue: '',
247
- fixed: false,
248
- grouped: undefined,
249
- },
250
- {
251
- name: 'salary',
252
- isVisible: true,
253
- minWidth: undefined,
254
- maxWidth: undefined,
255
- aggregation: undefined,
256
- align: 'left',
257
- groupOpened: undefined,
258
- label: '',
259
- filterHelperValue: '',
260
- fixed: false,
261
- grouped: undefined,
262
- },
263
- ]);
264
- });
265
- });
266
-
267
- describe('loadLayouts()', () => {
268
- it('should load using event', async () => {
269
- const layouts: ITekGridLayoutInfo = {
270
- currentLayoutName: 'Name first',
271
- layouts: {
272
- 'Name first': {
273
- name: 'Name first',
274
- gridWidth: '544px',
275
- columns: [
276
- {
277
- name: 'id',
278
- width: '34px',
279
- isVisible: true,
280
- grouped: false,
281
- },
282
- {
283
- name: 'name',
284
- width: '107px',
285
- isVisible: true,
286
- grouped: false,
287
- },
288
- {
289
- name: 'salary',
290
- width: '114px',
291
- isVisible: true,
292
- grouped: false,
293
- },
294
- ],
295
- },
296
- },
297
- };
298
-
299
- const tag = new Tag({
300
- name: 'toolbar',
301
- component: 'ZdTag',
302
- tag: 'span',
303
- });
304
- const grid = setupInstance({
305
- name: 'grid',
306
- component: 'TekGrid',
307
- columns: [
308
- { name: 'id' },
309
- { name: 'name' },
310
- { name: 'salary' },
311
- ],
312
- events: {
313
- loadLayouts: async () => layouts,
314
- },
315
- });
316
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
317
- instance.parent = tag;
318
- tag.parent = grid;
319
-
320
- await instance.onMounted({} as HTMLElement);
321
-
322
- expect(instance.currentLayoutName).toBe('Name first');
323
- expect(instance.layoutNames).toEqual(['Name first']);
324
- expect(instance.layouts).toEqual(layouts.layouts);
325
- });
326
-
327
- it('should load using localStorage', async () => {
328
- const tag = new Tag({
329
- name: 'toolbar',
330
- component: 'ZdTag',
331
- tag: 'span',
332
- });
333
- const grid = setupInstance({
334
- name: 'grid',
335
- component: 'TekGrid',
336
- columns: [
337
- { name: 'id' },
338
- { name: 'name' },
339
- { name: 'salary' },
340
- ],
341
- });
342
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
343
- instance.parent = tag;
344
- tag.parent = grid;
345
-
346
- const localStorageMock = (function () { // eslint-disable-line func-names
347
- return {
348
- getItem(): string {
349
- return JSON.stringify(testLayouts);
350
- },
351
- setItem(_name: string, value: string) {
352
- savedLayouts = value;
353
- },
354
- };
355
- }());
356
-
357
- Object.defineProperty(window, 'localStorage', {
358
- value: localStorageMock,
359
- });
360
-
361
- await instance.onMounted({} as HTMLElement);
362
-
363
- expect(instance.currentLayoutName).toBe('');
364
- expect(instance.layoutNames).toEqual(['Name first']);
365
- expect(instance.layouts).toEqual(testLayouts.layouts);
366
- });
367
- });
368
-
369
- describe('newLayout()', () => {
370
- it('should add new layout', () => {
371
- const newLayout = {
372
- name: 'Name first',
373
- gridWidth: '544px',
374
- columns: [
375
- {
376
- name: 'id',
377
- width: '34px',
378
- isVisible: true,
379
- grouped: false,
380
- },
381
- {
382
- name: 'name',
383
- width: '107px',
384
- isVisible: true,
385
- grouped: false,
386
- },
387
- {
388
- name: 'salary',
389
- width: '114px',
390
- isVisible: true,
391
- grouped: false,
392
- },
393
- ],
394
- };
395
- const tag = new Tag({
396
- name: 'toolbar',
397
- component: 'ZdTag',
398
- tag: 'span',
399
- });
400
- const grid = setupInstance({
401
- name: 'grid',
402
- component: 'TekGrid',
403
- columns: [
404
- { name: 'id' },
405
- { name: 'name' },
406
- { name: 'salary' },
407
- ],
408
- });
409
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
410
- instance.parent = tag;
411
- tag.parent = grid;
412
-
413
- instance.onMounted({} as HTMLElement);
414
-
415
- instance.newLayout(newLayout);
416
-
417
- expect(instance.currentLayoutName).toBe('Name first');
418
- expect(instance.layoutNames).toEqual(['Name first']);
419
- expect(instance.layouts).toEqual({ 'Name first': newLayout });
420
- expect(savedLayouts).toBe(JSON.stringify({
421
- currentLayoutName: 'Name first',
422
- layouts: { 'Name first': newLayout },
423
- }));
424
- });
425
- });
426
-
427
- describe('addLayout()', () => {
428
- it('should add new layout and not change current layout', () => {
429
- const newLayout = {
430
- name: 'Name first',
431
- gridWidth: '544px',
432
- columns: [
433
- {
434
- name: 'id',
435
- width: '34px',
436
- isVisible: true,
437
- grouped: false,
438
- },
439
- {
440
- name: 'name',
441
- width: '107px',
442
- isVisible: true,
443
- grouped: false,
444
- },
445
- {
446
- name: 'salary',
447
- width: '114px',
448
- isVisible: true,
449
- grouped: false,
450
- },
451
- ],
452
- };
453
- const tag = new Tag({
454
- name: 'toolbar',
455
- component: 'ZdTag',
456
- tag: 'span',
457
- });
458
- const grid = setupInstance({
459
- name: 'grid',
460
- component: 'TekGrid',
461
- columns: [
462
- { name: 'id' },
463
- { name: 'name' },
464
- { name: 'salary' },
465
- ],
466
- });
467
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
468
- instance.parent = tag;
469
- tag.parent = grid;
470
-
471
- instance.onMounted({} as HTMLElement);
472
-
473
- instance.addLayout(newLayout);
474
-
475
- expect(instance.currentLayoutName).toBe('');
476
- expect(instance.layoutNames).toEqual(['Name first']);
477
- expect(instance.layouts).toEqual({ 'Name first': newLayout });
478
- expect(savedLayouts).toBe(JSON.stringify({
479
- currentLayoutName: '',
480
- layouts: { 'Name first': newLayout },
481
- }));
482
- });
483
- });
484
-
485
- describe('applyLayout()', () => {
486
- it('should change Layout and save layout', async () => {
487
- let viewCalled = false;
488
- const tag = new Tag({
489
- name: 'toolbar',
490
- component: 'ZdTag',
491
- tag: 'span',
492
- });
493
- const grid = setupInstance({
494
- name: 'grid',
495
- component: 'TekGrid',
496
- columns: [
497
- { name: 'id' },
498
- { name: 'name' },
499
- { name: 'salary' },
500
- ],
501
- });
502
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
503
- instance.viewApplyLayout = () => { viewCalled = true; };
504
- instance.parent = tag;
505
- tag.parent = grid;
506
-
507
- await instance.onMounted({} as HTMLElement);
508
-
509
- expect(instance.currentLayoutName).toBe('');
510
- instance.applyLayout('Name first');
511
- expect(instance.currentLayoutName).toBe('Name first');
512
- expect(viewCalled).toBeTruthy();
513
- });
514
-
515
- it('should change Layout and save layout using event', async () => {
516
- let eventSavedLayouts: ITekGridLayoutInfo = {};
517
- const tag = new Tag({
518
- name: 'toolbar',
519
- component: 'ZdTag',
520
- tag: 'span',
521
- });
522
- const grid = setupInstance({
523
- name: 'grid',
524
- component: 'TekGrid',
525
- columns: [
526
- { name: 'id' },
527
- { name: 'name' },
528
- { name: 'salary' },
529
- ],
530
- events: {
531
- saveLayouts: ({ layouts }) => { eventSavedLayouts = layouts; },
532
- },
533
- });
534
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
535
- instance.parent = tag;
536
- tag.parent = grid;
537
-
538
- await instance.onMounted({} as HTMLElement);
539
-
540
- expect(instance.currentLayoutName).toBe('');
541
- instance.applyLayout('Name first');
542
- expect(instance.currentLayoutName).toBe('Name first');
543
- expect(eventSavedLayouts.currentLayoutName).toBe('Name first');
544
- });
545
- });
546
-
547
- describe('deleteLayout()', () => {
548
- it('should delete layout and save', async () => {
549
- const tag = new Tag({
550
- name: 'toolbar',
551
- component: 'ZdTag',
552
- tag: 'span',
553
- });
554
- const grid = setupInstance({
555
- name: 'grid',
556
- component: 'TekGrid',
557
- columns: [
558
- { name: 'id' },
559
- { name: 'name' },
560
- { name: 'salary' },
561
- ],
562
- });
563
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
564
- instance.parent = tag;
565
- tag.parent = grid;
566
-
567
- await instance.onMounted({} as HTMLElement);
568
-
569
- instance.applyLayout('Name first');
570
- expect(instance.currentLayoutName).toBe('Name first');
571
- expect(instance.layoutNames).toEqual(['Name first']);
572
- instance.deleteLayout('Name first');
573
- expect(instance.currentLayoutName).toBe('');
574
- expect(instance.layoutNames).toEqual([]);
575
- });
576
-
577
- it('should delete layout without applying layout', async () => {
578
- const tag = new Tag({
579
- name: 'toolbar',
580
- component: 'ZdTag',
581
- tag: 'span',
582
- });
583
- const grid = setupInstance({
584
- name: 'grid',
585
- component: 'TekGrid',
586
- columns: [
587
- { name: 'id' },
588
- { name: 'name' },
589
- { name: 'salary' },
590
- ],
591
- });
592
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
593
- instance.parent = tag;
594
- tag.parent = grid;
595
-
596
- await instance.onMounted({} as HTMLElement);
597
-
598
- expect(instance.currentLayoutName).toBe('');
599
- expect(instance.layoutNames).toEqual(['Name first']);
600
- instance.deleteLayout('Name first');
601
- expect(instance.currentLayoutName).toBe('');
602
- expect(instance.layoutNames).toEqual([]);
603
- });
604
- });
605
-
606
- describe('updateLayout()', () => {
607
- it('should update layout and save', async () => {
608
- const tag = new Tag({
609
- name: 'toolbar',
610
- component: 'ZdTag',
611
- tag: 'span',
612
- });
613
- const grid = setupInstance({
614
- name: 'grid',
615
- component: 'TekGrid',
616
- columns: [
617
- { name: 'id' },
618
- { name: 'name' },
619
- { name: 'salary' },
620
- ],
621
- });
622
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
623
- instance.parent = tag;
624
- tag.parent = grid;
625
-
626
- await instance.onMounted({} as HTMLElement);
627
-
628
- instance.updateLayout('Name first', {
629
- name: 'Name first',
630
- gridWidth: '500px',
631
- filter: {
632
- name: 'a',
633
- },
634
- dynamicFilter: {
635
- name: [
636
- {
637
- operation: 'CONTAINS',
638
- relation: 'AND',
639
- value: 'a',
640
- },
641
- ],
642
- },
643
- });
644
-
645
- expect(instance.currentLayoutName).toBe('Name first');
646
- expect(instance.layoutNames).toEqual(['Name first']);
647
- expect(instance.layouts).toEqual({
648
- 'Name first': {
649
- name: 'Name first',
650
- gridWidth: '500px',
651
- columns: instance.originalColumnProps,
652
- filter: {
653
- name: 'a',
654
- },
655
- dynamicFilter: {
656
- name: [
657
- {
658
- operation: 'CONTAINS',
659
- relation: 'AND',
660
- value: 'a',
661
- },
662
- ],
663
- },
664
- },
665
- });
666
- });
667
- });
668
-
669
- describe('discardChanges()', () => {
670
- it('should discard changes and restore layout', async () => {
671
- const layouts: ITekGridLayoutInfo = {
672
- currentLayoutName: 'Name first',
673
- layouts: {
674
- 'Name first': {
675
- name: 'Name first',
676
- gridWidth: '544px',
677
- columns: [
678
- {
679
- name: 'id',
680
- width: '34px',
681
- isVisible: true,
682
- grouped: false,
683
- },
684
- {
685
- name: 'name',
686
- width: '107px',
687
- isVisible: true,
688
- grouped: false,
689
- },
690
- {
691
- name: 'salary',
692
- width: '114px',
693
- isVisible: true,
694
- grouped: false,
695
- },
696
- ],
697
- },
698
- },
699
- };
700
-
701
- let viewCalled = false;
702
-
703
- const tag = new Tag({
704
- name: 'toolbar',
705
- component: 'ZdTag',
706
- tag: 'span',
707
- });
708
- const grid = setupInstance({
709
- name: 'grid',
710
- component: 'TekGrid',
711
- columns: [
712
- { name: 'id' },
713
- { name: 'name' },
714
- { name: 'salary' },
715
- ],
716
- events: {
717
- loadLayouts: async () => layouts,
718
- },
719
- });
720
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
721
- instance.viewApplyLayout = () => { viewCalled = true; };
722
- instance.parent = tag;
723
- tag.parent = grid;
724
-
725
- await instance.onMounted({} as HTMLElement);
726
- instance.applyLayout('Name first');
727
- expect(viewCalled).toBeTruthy();
728
- expect(instance.layoutEdited).toBeFalsy();
729
- expect(instance.currentLayoutName).toBe('Name first');
730
-
731
- instance.layoutEdited = true;
732
-
733
- instance.discardChanges();
734
- expect(instance.layoutEdited).toBeFalsy();
735
- });
736
- });
737
-
738
- describe('updateDefaultLayout()', () => {
739
- it('should update default layout', async () => {
740
- const tag = new Tag({
741
- name: 'toolbar',
742
- component: 'ZdTag',
743
- tag: 'span',
744
- });
745
- const grid = setupInstance({
746
- name: 'grid',
747
- component: 'TekGrid',
748
- columns: [
749
- { name: 'id' },
750
- { name: 'name' },
751
- { name: 'salary' },
752
- ],
753
- });
754
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
755
- instance.parent = tag;
756
- tag.parent = grid;
757
-
758
- await instance.onMounted({} as HTMLElement);
759
-
760
- expect(instance.originalDatasourceOrder).toEqual([]);
761
- expect(instance.originalDatasourceFilter).toEqual({});
762
- expect(instance.originalDatasourceDynamicFilter).toEqual({});
763
- expect(instance.originalColumnProps.map((item) => item.name)).toEqual(['id', 'name', 'salary']);
764
-
765
- const newDynamicFilter = {
766
- name: [
767
- {
768
- operation: 'CONTAINS',
769
- relation: 'AND',
770
- value: 'a',
771
- },
772
- ],
773
- };
774
-
775
- instance.updateDefaultLayout({
776
- name: '',
777
- columns: [
778
- { name: 'name' },
779
- { name: 'id' },
780
- { name: 'hire_date' },
781
- ],
782
- order: ['name.asc'],
783
- filter: {
784
- name: 'a',
785
- },
786
- dynamicFilter: newDynamicFilter,
787
- });
788
-
789
- expect(instance.originalDatasourceOrder).toEqual(['name.asc']);
790
- expect(instance.originalDatasourceFilter).toEqual({ name: 'a' });
791
- expect(instance.originalDatasourceDynamicFilter).toEqual(newDynamicFilter);
792
- expect(instance.originalColumnProps.map((item) => item.name)).toEqual(['name', 'id', 'hire_date', 'salary']);
793
- });
794
-
795
- it('should update default layout with some values', async () => {
796
- const tag = new Tag({
797
- name: 'toolbar',
798
- component: 'ZdTag',
799
- tag: 'span',
800
- });
801
- const grid = setupInstance({
802
- name: 'grid',
803
- component: 'TekGrid',
804
- columns: [
805
- { name: 'id' },
806
- { name: 'name' },
807
- { name: 'salary' },
808
- ],
809
- });
810
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
811
- instance.parent = tag;
812
- tag.parent = grid;
813
-
814
- await instance.onMounted({} as HTMLElement);
815
-
816
- const applyLayoutSpy = jest.spyOn(instance, 'applyLayout');
817
-
818
- expect(instance.originalColumnProps.map((item) => item.name)).toEqual(['id', 'name', 'salary']);
819
-
820
- instance.updateDefaultLayout({
821
- name: 'default',
822
- columns: [
823
- { name: 'name' },
824
- { name: 'id' },
825
- { name: 'hire_date' },
826
- ],
827
- });
828
-
829
- expect(instance.originalColumnProps.map((item) => item.name)).toEqual(['name', 'id', 'hire_date', 'salary']);
830
- expect(applyLayoutSpy).toBeCalled();
831
- });
832
- });
833
-
834
- describe('loadLayouts()/saveLayouts()', () => {
835
- it('should load layouts using config endpoint', async () => {
836
- (Config as ITekConfig).loadGridLayoutsEndPoint = '/loadLayoutsRoute';
837
- const tag = new Tag({
838
- name: 'toolbar',
839
- component: 'ZdTag',
840
- tag: 'span',
841
- });
842
- const grid = setupInstance({
843
- name: 'grid',
844
- component: 'TekGrid',
845
- columns: [
846
- { name: 'id' },
847
- { name: 'name' },
848
- { name: 'salary' },
849
- ],
850
- });
851
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
852
- instance.parent = tag;
853
- tag.parent = grid;
854
-
855
- const layouts = {
856
- currentLayoutName: 'layout-test',
857
- layouts: {
858
- 'layout-test': {
859
- name: 'layout-test',
860
- gridWidth: '100px',
861
- columns: [
862
- {
863
- name: 'id',
864
- label: 'ID',
865
- },
866
- ],
867
- },
868
- },
869
- };
870
-
871
- const spy = jest.spyOn(Http, 'get').mockImplementation(() => Promise.resolve({ data: { data: { layouts } } }));
872
-
873
- await instance.onMounted({} as HTMLElement);
874
- await grid.onMounted({} as HTMLElement);
875
-
876
- await flushPromises();
877
- expect(spy).toHaveBeenCalled();
878
- expect(instance.layouts).toEqual({
879
- 'layout-test': {
880
- name: 'layout-test',
881
- gridWidth: '100px',
882
- columns: [
883
- {
884
- name: 'id',
885
- label: 'ID',
886
- },
887
- ],
888
- },
889
- });
890
- spy.mockReset();
891
- (Config as ITekConfig).loadGridLayoutsEndPoint = '';
892
- });
893
-
894
- it('should load layouts using config endpoint with array data', async () => {
895
- (Config as ITekConfig).loadGridLayoutsEndPoint = '/loadLayoutsRoute';
896
- const tag = new Tag({
897
- name: 'toolbar',
898
- component: 'ZdTag',
899
- tag: 'span',
900
- });
901
- const grid = setupInstance({
902
- name: 'grid',
903
- component: 'TekGrid',
904
- columns: [
905
- { name: 'id' },
906
- { name: 'name' },
907
- { name: 'salary' },
908
- ],
909
- });
910
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
911
- instance.parent = tag;
912
- tag.parent = grid;
913
-
914
- const layouts = {
915
- currentLayoutName: 'layout-test',
916
- layouts: {
917
- 'layout-test': {
918
- name: 'layout-test',
919
- gridWidth: '100px',
920
- columns: [
921
- {
922
- name: 'id',
923
- label: 'ID',
924
- },
925
- ],
926
- },
927
- },
928
- };
929
-
930
- const spy = jest.spyOn(Http, 'get').mockImplementation(() => Promise.resolve({ data: { data: [{ layouts }] } }));
931
-
932
- await instance.onMounted({} as HTMLElement);
933
- await grid.onMounted({} as HTMLElement);
934
-
935
- await flushPromises();
936
- expect(spy).toHaveBeenCalled();
937
- expect(instance.layouts).toEqual({
938
- 'layout-test': {
939
- name: 'layout-test',
940
- gridWidth: '100px',
941
- columns: [
942
- {
943
- name: 'id',
944
- label: 'ID',
945
- },
946
- ],
947
- },
948
- });
949
- spy.mockReset();
950
- (Config as ITekConfig).loadGridLayoutsEndPoint = '';
951
- });
952
-
953
- it('should load layouts using config endpoint with empty data', async () => {
954
- (Config as ITekConfig).loadGridLayoutsEndPoint = '/loadLayoutsRoute';
955
- const tag = new Tag({
956
- name: 'toolbar',
957
- component: 'ZdTag',
958
- tag: 'span',
959
- });
960
- const grid = setupInstance({
961
- name: 'grid',
962
- component: 'TekGrid',
963
- columns: [
964
- { name: 'id' },
965
- { name: 'name' },
966
- { name: 'salary' },
967
- ],
968
- });
969
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
970
- instance.parent = tag;
971
- tag.parent = grid;
972
-
973
- const spy = jest.spyOn(Http, 'get').mockImplementation(() => Promise.resolve({ data: { data: '' } }));
974
-
975
- await instance.onMounted({} as HTMLElement);
976
- grid.onMounted({} as HTMLElement);
977
-
978
- await flushPromises();
979
- expect(spy).toHaveBeenCalled();
980
- expect(instance.layouts).toEqual({});
981
- spy.mockReset();
982
- (Config as ITekConfig).loadGridLayoutsEndPoint = '';
983
- });
984
-
985
- it('should save layout using endpoint', async () => {
986
- (Config as ITekConfig).saveGridLayoutsEndPoint = '/saveLayoutsRoute';
987
- const tag = new Tag({
988
- name: 'toolbar',
989
- component: 'ZdTag',
990
- tag: 'span',
991
- });
992
- const grid = setupInstance({
993
- name: 'grid',
994
- component: 'TekGrid',
995
- columns: [
996
- { name: 'id' },
997
- { name: 'name' },
998
- { name: 'salary' },
999
- ],
1000
- });
1001
- const layouts = {
1002
- name: 'layout-test',
1003
- gridWidth: '100px',
1004
- columns: [
1005
- {
1006
- name: 'id',
1007
- label: 'ID',
1008
- },
1009
- ],
1010
- };
1011
- const instance = new TekGridLayoutOptions({ name: 'layout', component: 'TekGridLayoutOptions' });
1012
- instance.grid = grid;
1013
- instance.parent = tag;
1014
- tag.parent = grid;
1015
- instance.newLayout(layouts);
1016
- expect(instance.currentLayoutName).toBe('layout-test');
1017
- (Config as ITekConfig).saveGridLayoutsEndPoint = '';
1018
- });
1019
- });
1020
- });