@zeedhi/vuetify 1.112.0 → 3.0.0

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 (573) hide show
  1. package/dist/zd-vuetify.css +1 -0
  2. package/dist/zd-vuetify.js +24569 -0
  3. package/package.json +29 -35
  4. package/rollup.config.prod.js +26 -0
  5. package/rollup.scss.config.js +9 -9
  6. package/src/components/index.ts +305 -0
  7. package/src/components/tek-grid/TekGrid.ts +320 -0
  8. package/src/components/tek-grid/TekGrid.vue +235 -0
  9. package/src/components/tek-grid/column-filter/TekGridColumnFilter.ts +243 -0
  10. package/src/components/tek-grid/column-filter/TekGridColumnFilter.vue +93 -0
  11. package/src/components/tek-grid/column-header/TekGridHeaderRow.ts +147 -0
  12. package/src/components/tek-grid/column-header/TekGridHeaderRow.vue +78 -0
  13. package/src/components/tek-grid/columns-button/TekGridColumnsButton.ts +97 -0
  14. package/src/components/tek-grid/columns-button/TekGridColumnsButton.vue +273 -0
  15. package/src/components/tek-grid/columns-button/TekGridColumnsOptionsController.ts +469 -0
  16. package/src/components/tek-grid/columns-button/TekGridColumnsOptionsModal.ts +512 -0
  17. package/src/components/tek-grid/filter-button/TekGridFilterButton.ts +46 -0
  18. package/src/components/tek-grid/filter-button/TekGridFilterButton.vue +28 -0
  19. package/src/components/tek-grid/indentation/TekGridIndentation.ts +21 -0
  20. package/src/components/tek-grid/indentation/TekGridIndentation.vue +33 -0
  21. package/src/components/tek-grid/layout-options/TekGridLayoutOptions.ts +117 -0
  22. package/src/components/tek-grid/layout-options/TekGridLayoutOptions.vue +172 -0
  23. package/src/components/tek-grid/row/TekGridFooterRow.ts +62 -0
  24. package/src/components/tek-grid/row/TekGridFooterRow.vue +64 -0
  25. package/src/components/tek-grid/row/TekGridGroupRow.ts +65 -0
  26. package/src/components/tek-grid/row/TekGridGroupRow.vue +65 -0
  27. package/src/components/tooltip-overflow/ZdTooltipOverflow.ts +63 -0
  28. package/src/components/tooltip-overflow/ZdTooltipOverflow.vue +63 -0
  29. package/src/components/zd-activator-wrapper/ZdActivatorWrapper.ts +37 -0
  30. package/src/components/zd-activator-wrapper/ZdActivatorWrapper.vue +16 -0
  31. package/src/components/zd-alert/ZdAlert.ts +132 -0
  32. package/src/components/zd-alert/ZdAlert.vue +84 -0
  33. package/src/components/zd-badge/ZdBadge.ts +32 -0
  34. package/src/components/zd-badge/ZdBadge.vue +73 -0
  35. package/src/components/zd-breadcrumbs/ZdBreadcrumbs.ts +61 -0
  36. package/src/components/zd-breadcrumbs/ZdBreadcrumbs.vue +53 -0
  37. package/src/components/zd-button/ZdButton.ts +249 -0
  38. package/src/components/zd-button/ZdButton.vue +135 -0
  39. package/src/components/zd-button-group/ZdButtonGroup.ts +113 -0
  40. package/src/components/zd-button-group/ZdButtonGroup.vue +66 -0
  41. package/src/components/zd-card/ZdCard.ts +139 -0
  42. package/src/components/zd-card/ZdCard.vue +113 -0
  43. package/src/components/zd-carousel/ZdCarousel.ts +268 -0
  44. package/src/components/zd-carousel/ZdCarousel.vue +243 -0
  45. package/src/components/zd-checkbox/ZdCheckbox.ts +47 -0
  46. package/src/components/zd-checkbox/ZdCheckbox.vue +50 -0
  47. package/src/components/zd-checkbox-multiple/ZdCheckboxMultiple.ts +69 -0
  48. package/src/components/zd-checkbox-multiple/ZdCheckboxMultiple.vue +146 -0
  49. package/src/components/zd-chip/ZdChip.ts +96 -0
  50. package/src/components/zd-chip/ZdChip.vue +131 -0
  51. package/src/components/zd-code-viewer/ZdCodeViewer.ts +65 -0
  52. package/src/components/zd-code-viewer/ZdCodeViewer.vue +187 -0
  53. package/src/components/zd-code-viewer/prism.ts +15 -0
  54. package/src/components/zd-col/ZdCol.ts +50 -0
  55. package/src/components/zd-col/ZdCol.vue +26 -0
  56. package/src/components/zd-collapse-card/ZdCollapseCard.ts +97 -0
  57. package/src/components/zd-collapse-card/ZdCollapseCard.vue +147 -0
  58. package/src/components/zd-component/ZdComponent.ts +324 -0
  59. package/src/components/zd-component/ZdComponentRender.ts +16 -0
  60. package/src/components/zd-container/ZdContainer.ts +47 -0
  61. package/src/components/zd-container/ZdContainer.vue +41 -0
  62. package/src/components/zd-currency/ZdCurrency.ts +28 -0
  63. package/src/components/zd-currency/ZdCurrency.vue +9 -0
  64. package/src/components/zd-date-input/ZdDateInput.ts +265 -0
  65. package/src/components/zd-date-input/ZdDateInput.vue +156 -0
  66. package/src/components/zd-dialog/ZdDialog.ts +39 -0
  67. package/src/components/zd-dialog/ZdDialog.vue +80 -0
  68. package/src/components/zd-divider/ZdDivider.ts +32 -0
  69. package/src/components/zd-divider/ZdDivider.vue +14 -0
  70. package/src/components/zd-dropdown/ZdDropdown.ts +98 -0
  71. package/src/components/zd-dropdown/ZdDropdown.vue +97 -0
  72. package/src/components/zd-footer/ZdFooter.ts +82 -0
  73. package/src/components/zd-footer/ZdFooter.vue +122 -0
  74. package/src/components/zd-form/ZdForm.ts +97 -0
  75. package/src/components/zd-form/ZdForm.vue +71 -0
  76. package/src/components/zd-frame/ZdFrame.ts +80 -0
  77. package/src/components/zd-frame/ZdFrame.vue +44 -0
  78. package/src/components/zd-frame-page/ZdFramePage.ts +25 -0
  79. package/src/components/zd-frame-page/ZdFramePage.vue +18 -0
  80. package/src/components/zd-grid/ZdGrid.ts +341 -0
  81. package/src/components/zd-grid/ZdGrid.vue +350 -0
  82. package/src/components/zd-grid/cell/ZdGridAction.ts +14 -0
  83. package/src/components/zd-grid/cell/ZdGridAction.vue +22 -0
  84. package/src/components/zd-grid/cell/ZdGridCell.ts +69 -0
  85. package/src/components/zd-grid/cell/ZdGridCell.vue +40 -0
  86. package/src/components/zd-grid/cell/ZdGridCellContent.ts +72 -0
  87. package/src/components/zd-grid/cell/ZdGridCellContent.vue +31 -0
  88. package/src/components/zd-grid/cell/ZdGridCheckbox.ts +41 -0
  89. package/src/components/zd-grid/cell/ZdGridCheckbox.vue +30 -0
  90. package/src/components/zd-grid/column-header/ZdGridColumnHeader.ts +78 -0
  91. package/src/components/zd-grid/column-header/ZdGridColumnHeader.vue +82 -0
  92. package/src/components/zd-grid/column-header/ZdGridHeaderIcon.ts +34 -0
  93. package/src/components/zd-grid/column-header/ZdGridHeaderIcon.vue +33 -0
  94. package/src/components/zd-grid/column-header/ZdGridHeaderRow.ts +114 -0
  95. package/src/components/zd-grid/column-header/ZdGridHeaderRow.vue +83 -0
  96. package/src/components/zd-grid/column-header/ZdGridSort.ts +34 -0
  97. package/src/components/zd-grid/column-header/ZdGridSort.vue +34 -0
  98. package/src/components/zd-grid/composables/grid-instance.ts +17 -0
  99. package/src/components/zd-grid/footer/ZdGridFooter.ts +19 -0
  100. package/src/components/zd-grid/footer/ZdGridFooter.vue +29 -0
  101. package/src/components/zd-grid/helper/ZdGridHelper.ts +14 -0
  102. package/src/components/zd-grid/helper/ZdGridHelper.vue +17 -0
  103. package/src/components/zd-grid/row/TableRow.ts +27 -0
  104. package/src/components/zd-grid/row/TableRow.vue +20 -0
  105. package/src/components/zd-grid/row/ZdGridRow.ts +78 -0
  106. package/src/components/zd-grid/row/ZdGridRow.vue +47 -0
  107. package/src/components/zd-grid/toolbar/ZdGridToolbar.ts +19 -0
  108. package/src/components/zd-grid/toolbar/ZdGridToolbar.vue +36 -0
  109. package/src/components/zd-grid-editable/ZdGridEditable.ts +235 -0
  110. package/src/components/zd-grid-editable/ZdGridEditable.vue +160 -0
  111. package/src/components/zd-grid-editable/cell/ZdGridEditableCell.ts +165 -0
  112. package/src/components/zd-grid-editable/cell/ZdGridEditableCell.vue +152 -0
  113. package/src/components/zd-grid-editable/row/ZdGridEditableRow.ts +114 -0
  114. package/src/components/zd-grid-editable/row/ZdGridEditableRow.vue +42 -0
  115. package/src/components/zd-header/ZdHeader.ts +119 -0
  116. package/src/components/zd-header/ZdHeader.vue +144 -0
  117. package/src/components/zd-icon/ZdIcon.ts +67 -0
  118. package/src/components/zd-icon/ZdIcon.vue +32 -0
  119. package/src/components/zd-image/ZdImage.ts +53 -0
  120. package/src/components/zd-image/ZdImage.vue +80 -0
  121. package/src/components/zd-increment/ZdIncrement.ts +42 -0
  122. package/src/components/zd-increment/ZdIncrement.vue +23 -0
  123. package/src/components/zd-input/ZdInput.ts +189 -0
  124. package/src/components/zd-iterable/ZdIterable.ts +40 -0
  125. package/src/components/zd-iterable/ZdIterableNoData.ts +23 -0
  126. package/src/components/zd-iterable/ZdIterableNoData.vue +53 -0
  127. package/src/components/zd-iterable/zd-iterable-columns-button/ZdIterableColumnsButton.ts +56 -0
  128. package/src/components/zd-iterable/zd-iterable-columns-button/ZdIterableColumnsButton.vue +50 -0
  129. package/src/components/zd-iterable/zd-iterable-page-info/ZdIterablePageInfo.ts +24 -0
  130. package/src/components/zd-iterable/zd-iterable-page-info/ZdIterablePageInfo.vue +21 -0
  131. package/src/components/zd-iterable/zd-iterable-page-size/ZdIterablePageSize.ts +60 -0
  132. package/src/components/zd-iterable/zd-iterable-page-size/ZdIterablePageSize.vue +17 -0
  133. package/src/components/zd-iterable/zd-iterable-pagination/ZdIterablePagination.ts +39 -0
  134. package/src/components/zd-iterable/zd-iterable-pagination/ZdIterablePagination.vue +42 -0
  135. package/src/components/zd-iterable/zd-search/ZdSearch.ts +46 -0
  136. package/src/components/zd-iterable/zd-search/ZdSearch.vue +18 -0
  137. package/src/components/zd-iterable-component-render/ZdIterableComponentRender.ts +115 -0
  138. package/src/components/zd-iterable-component-render/ZdIterableComponentRender.vue +152 -0
  139. package/src/components/zd-layout/ZdLayout.ts +46 -0
  140. package/src/components/zd-layout/ZdLayout.vue +22 -0
  141. package/src/components/zd-list/ZdList.scss +41 -0
  142. package/src/components/zd-list/ZdList.ts +89 -0
  143. package/src/components/zd-list/ZdList.vue +41 -0
  144. package/src/components/zd-list/ZdListGroup.ts +43 -0
  145. package/src/components/zd-list/ZdListGroup.vue +88 -0
  146. package/src/components/zd-list/ZdListItem.ts +71 -0
  147. package/src/components/zd-list/ZdListItem.vue +55 -0
  148. package/src/components/zd-loading/ZdLoading.ts +68 -0
  149. package/src/components/zd-loading/ZdLoading.vue +66 -0
  150. package/src/components/zd-login/ZdLogin.ts +73 -0
  151. package/src/components/zd-login/ZdLogin.vue +303 -0
  152. package/src/components/zd-login/ZdLoginButton.ts +32 -0
  153. package/src/components/zd-login/ZdLoginButton.vue +10 -0
  154. package/src/components/zd-main/ZdMain.ts +38 -0
  155. package/src/components/zd-main/ZdMain.vue +18 -0
  156. package/src/components/zd-master-detail/ZdMasterDetail.ts +53 -0
  157. package/src/components/zd-master-detail/ZdMasterDetail.vue +31 -0
  158. package/src/components/zd-menu/ZdMenu.ts +337 -0
  159. package/src/components/zd-menu/ZdMenu.vue +160 -0
  160. package/src/components/zd-menu/ZdMenuButton.ts +47 -0
  161. package/src/components/zd-menu/ZdMenuButton.vue +11 -0
  162. package/src/components/zd-menu/ZdMenuGroup.ts +73 -0
  163. package/src/components/zd-menu/ZdMenuGroup.vue +92 -0
  164. package/src/components/zd-menu/ZdMenuLink.ts +69 -0
  165. package/src/components/zd-menu/ZdMenuLink.vue +31 -0
  166. package/src/components/zd-menu/ZdMenuSeparator.ts +31 -0
  167. package/src/components/zd-menu/ZdMenuSeparator.vue +17 -0
  168. package/src/components/zd-modal/ZdModal.ts +146 -0
  169. package/src/components/zd-modal/ZdModal.vue +144 -0
  170. package/src/components/zd-modal/ZdModalCloseButton.ts +40 -0
  171. package/src/components/zd-modal/ZdModalCloseButton.vue +12 -0
  172. package/src/components/zd-month/ZdMonth.ts +55 -0
  173. package/src/components/zd-month/ZdMonth.vue +11 -0
  174. package/src/components/zd-number-input/ZdNumberInput.ts +96 -0
  175. package/src/components/zd-number-input/ZdNumberInput.vue +17 -0
  176. package/src/components/zd-password/ZdPassword.ts +27 -0
  177. package/src/components/zd-password/ZdPassword.vue +9 -0
  178. package/src/components/zd-progress/ZdProgress.ts +56 -0
  179. package/src/components/zd-progress/ZdProgress.vue +31 -0
  180. package/src/components/zd-radio/ZdRadio.ts +71 -0
  181. package/src/components/zd-radio/ZdRadio.vue +57 -0
  182. package/src/components/zd-row/ZdRow.ts +48 -0
  183. package/src/components/zd-row/ZdRow.vue +39 -0
  184. package/src/components/zd-select/ZdSelect.ts +222 -0
  185. package/src/components/zd-select/ZdSelect.vue +214 -0
  186. package/src/components/zd-select-multiple/ZdSelectMultiple.ts +389 -0
  187. package/src/components/zd-select-multiple/ZdSelectMultiple.vue +300 -0
  188. package/src/components/zd-svg-map/ZdSvgMap.ts +233 -0
  189. package/src/components/zd-svg-map/ZdSvgMap.vue +88 -0
  190. package/src/components/zd-switch/ZdSwitch.ts +45 -0
  191. package/src/components/zd-switch/ZdSwitch.vue +65 -0
  192. package/src/components/zd-table/ZdTable.ts +47 -0
  193. package/src/components/zd-table/ZdTable.vue +84 -0
  194. package/src/components/zd-tabs/ZdTab.ts +100 -0
  195. package/src/components/zd-tabs/ZdTab.vue +51 -0
  196. package/src/components/zd-tabs/ZdTabItem.ts +20 -0
  197. package/src/components/zd-tabs/ZdTabItem.vue +40 -0
  198. package/src/components/zd-tabs/ZdTabs.ts +92 -0
  199. package/src/components/zd-tabs/ZdTabs.vue +124 -0
  200. package/src/components/zd-tag/ZdTag.ts +39 -0
  201. package/src/components/zd-tag/ZdTag.vue +27 -0
  202. package/src/components/zd-text/ZdText.ts +40 -0
  203. package/src/components/zd-text/ZdText.vue +44 -0
  204. package/src/components/zd-text-input/ZdTextInput.ts +208 -0
  205. package/src/components/zd-text-input/ZdTextInput.vue +347 -0
  206. package/src/components/zd-textarea/ZdTextarea.ts +82 -0
  207. package/src/components/zd-textarea/ZdTextarea.vue +204 -0
  208. package/src/components/zd-time/ZdTime.ts +209 -0
  209. package/src/components/zd-time/ZdTime.vue +65 -0
  210. package/src/components/zd-toggleable/ZdToggleable.ts +16 -0
  211. package/src/components/zd-tooltip/ZdTooltip.ts +97 -0
  212. package/src/components/zd-tooltip/ZdTooltip.vue +34 -0
  213. package/src/components/zd-tree/ZdTree.ts +264 -0
  214. package/src/components/zd-tree/ZdTree.vue +335 -0
  215. package/src/components/zd-tree/ZdTreeAfterTitle.ts +21 -0
  216. package/src/components/zd-tree/ZdTreeAfterTitle.vue +25 -0
  217. package/src/components/zd-tree/ZdTreeCheckbox.ts +110 -0
  218. package/src/components/zd-tree/ZdTreeCheckbox.vue +43 -0
  219. package/src/components/zd-tree-grid/ZdTreeGrid.ts +127 -0
  220. package/src/components/zd-tree-grid/ZdTreeGrid.vue +199 -0
  221. package/src/components/zd-tree-grid/cell/ZdTreeGridCell.ts +93 -0
  222. package/src/components/zd-tree-grid/cell/ZdTreeGridCell.vue +133 -0
  223. package/src/components/zd-tree-grid/row/ZdTreeGridRow.ts +95 -0
  224. package/src/components/zd-tree-grid/row/ZdTreeGridRow.vue +48 -0
  225. package/src/composables/cellSelection.ts +49 -0
  226. package/src/composables/columnDrag.ts +105 -0
  227. package/src/composables/columnResize.ts +159 -0
  228. package/src/composables/density.ts +19 -0
  229. package/src/composables/doubleClick.ts +39 -0
  230. package/src/composables/fixedColumns.ts +131 -0
  231. package/src/composables/gridColorVars.ts +41 -0
  232. package/src/composables/gridColumns.ts +112 -0
  233. package/src/composables/gridSelection.ts +113 -0
  234. package/src/composables/gridSorting.ts +27 -0
  235. package/src/composables/hasSlot.ts +32 -0
  236. package/src/composables/index.ts +16 -0
  237. package/src/composables/maska.ts +47 -0
  238. package/src/composables/tableNavigation.ts +163 -0
  239. package/src/composables/useTableLayout.ts +293 -0
  240. package/src/composables/virtualScroll.ts +140 -0
  241. package/src/composables/watchUrl.ts +21 -0
  242. package/src/errors/index.ts +2 -0
  243. package/src/errors/not-provided.ts +12 -0
  244. package/src/errors/row-not-found.ts +10 -0
  245. package/src/errors/zeedhi-error.ts +8 -0
  246. package/src/index.ts +67 -0
  247. package/src/propsMixins/heightProps.ts +17 -0
  248. package/src/propsMixins/index.ts +6 -0
  249. package/src/propsMixins/interfaces.ts +3 -0
  250. package/src/propsMixins/widthProps.ts +13 -0
  251. package/src/shims-vue.d.ts +6 -0
  252. package/src/styles/_zd-input.scss +206 -0
  253. package/src/styles/index.scss +37 -0
  254. package/src/styles/moon-design-system.css +31 -0
  255. package/src/utils/buildProps.ts +5 -0
  256. package/src/utils/fillHeight.ts +17 -0
  257. package/src/utils/icons/icons.ts +36 -0
  258. package/src/utils/index.ts +7 -0
  259. package/src/utils/isArrayOperation.ts +5 -0
  260. package/src/utils/logger/logger.ts +7 -0
  261. package/src/utils/mergeDictionaries.ts +27 -0
  262. package/src/utils/plugins/formatSizePlugin.ts +6 -0
  263. package/src/utils/plugins/getIconPlugin.ts +12 -0
  264. package/src/utils/plugins/index.ts +5 -0
  265. package/src/utils/plugins/plugins.d.ts +12 -0
  266. package/src/utils/plugins/styleObjectPlugin.ts +13 -0
  267. package/types/components/index.d.ts +87 -2
  268. package/types/components/tek-grid/TekGrid.d.ts +7258 -0
  269. package/types/components/tek-grid/TekGrid.ts.d.ts +7258 -0
  270. package/types/components/tek-grid/column-filter/TekGridColumnFilter.d.ts +129 -0
  271. package/types/components/tek-grid/column-filter/TekGridColumnFilter.ts.d.ts +129 -0
  272. package/types/components/tek-grid/column-header/TekGridHeaderRow.d.ts +225 -0
  273. package/types/components/tek-grid/column-header/TekGridHeaderRow.ts.d.ts +225 -0
  274. package/types/components/tek-grid/columns-button/TekGridColumnsButton.d.ts +2432 -0
  275. package/types/components/tek-grid/columns-button/TekGridColumnsButton.ts.d.ts +2432 -0
  276. package/types/components/tek-grid/columns-button/TekGridColumnsOptionsController.d.ts +65 -0
  277. package/types/components/tek-grid/columns-button/TekGridColumnsOptionsModal.d.ts +9 -0
  278. package/types/components/tek-grid/filter-button/TekGridFilterButton.d.ts +2920 -0
  279. package/types/components/tek-grid/filter-button/TekGridFilterButton.ts.d.ts +2920 -0
  280. package/types/components/tek-grid/indentation/TekGridIndentation.d.ts +32 -0
  281. package/types/components/tek-grid/indentation/TekGridIndentation.ts.d.ts +32 -0
  282. package/types/components/tek-grid/layout-options/TekGridLayoutOptions.d.ts +1892 -0
  283. package/types/components/tek-grid/layout-options/TekGridLayoutOptions.ts.d.ts +1892 -0
  284. package/types/components/tek-grid/row/TekGridFooterRow.d.ts +90 -0
  285. package/types/components/tek-grid/row/TekGridFooterRow.ts.d.ts +90 -0
  286. package/types/components/tek-grid/row/TekGridGroupRow.d.ts +87 -0
  287. package/types/components/tek-grid/row/TekGridGroupRow.ts.d.ts +87 -0
  288. package/types/components/tooltip-overflow/ZdTooltipOverflow.d.ts +50 -0
  289. package/types/components/tooltip-overflow/ZdTooltipOverflow.ts.d.ts +50 -0
  290. package/types/components/zd-activator-wrapper/ZdActivatorWrapper.d.ts +25 -0
  291. package/types/components/zd-activator-wrapper/ZdActivatorWrapper.ts.d.ts +25 -0
  292. package/types/components/zd-alert/ZdAlert.d.ts +882 -12
  293. package/types/components/zd-alert/ZdAlert.ts.d.ts +884 -0
  294. package/types/components/zd-badge/ZdBadge.d.ts +624 -11
  295. package/types/components/zd-badge/ZdBadge.ts.d.ts +624 -0
  296. package/types/components/zd-breadcrumbs/ZdBreadcrumbs.d.ts +692 -10
  297. package/types/components/zd-breadcrumbs/ZdBreadcrumbs.ts.d.ts +697 -0
  298. package/types/components/zd-button/ZdButton.d.ts +1151 -27
  299. package/types/components/zd-button/ZdButton.ts.d.ts +1158 -0
  300. package/types/components/zd-button-group/ZdButtonGroup.d.ts +782 -23
  301. package/types/components/zd-button-group/ZdButtonGroup.ts.d.ts +785 -0
  302. package/types/components/zd-card/ZdCard.d.ts +1024 -28
  303. package/types/components/zd-card/ZdCard.ts.d.ts +1028 -0
  304. package/types/components/zd-carousel/ZdCarousel.d.ts +2007 -70
  305. package/types/components/zd-carousel/ZdCarousel.ts.d.ts +2007 -0
  306. package/types/components/zd-checkbox/ZdCheckbox.d.ts +641 -9
  307. package/types/components/zd-checkbox/ZdCheckbox.ts.d.ts +642 -0
  308. package/types/components/zd-checkbox-multiple/ZdCheckboxMultiple.d.ts +2006 -14
  309. package/types/components/zd-checkbox-multiple/ZdCheckboxMultiple.ts.d.ts +2010 -0
  310. package/types/components/zd-chip/ZdChip.d.ts +1254 -21
  311. package/types/components/zd-chip/ZdChip.ts.d.ts +1256 -0
  312. package/types/components/zd-code-viewer/ZdCodeViewer.d.ts +791 -0
  313. package/types/components/zd-code-viewer/ZdCodeViewer.ts.d.ts +791 -0
  314. package/types/components/{zd-code-editor → zd-code-viewer}/prism.d.ts +7 -7
  315. package/types/components/zd-col/ZdCol.d.ts +740 -19
  316. package/types/components/zd-col/ZdCol.ts.d.ts +741 -0
  317. package/types/components/zd-collapse-card/ZdCollapseCard.d.ts +1580 -40
  318. package/types/components/zd-collapse-card/ZdCollapseCard.ts.d.ts +1583 -0
  319. package/types/components/zd-component/ZdComponent.d.ts +104 -43
  320. package/types/components/zd-component/ZdComponentRender.d.ts +80 -11
  321. package/types/components/zd-container/ZdContainer.d.ts +722 -19
  322. package/types/components/zd-container/ZdContainer.ts.d.ts +722 -0
  323. package/types/components/zd-currency/ZdCurrency.d.ts +2024 -10
  324. package/types/components/zd-currency/ZdCurrency.ts.d.ts +2024 -0
  325. package/types/components/zd-date-input/ZdDateInput.d.ts +960 -0
  326. package/types/components/zd-date-input/ZdDateInput.ts.d.ts +960 -0
  327. package/types/components/zd-dialog/ZdDialog.d.ts +251 -4
  328. package/types/components/zd-dialog/ZdDialog.ts.d.ts +262 -0
  329. package/types/components/zd-divider/ZdDivider.d.ts +623 -11
  330. package/types/components/zd-divider/ZdDivider.ts.d.ts +623 -0
  331. package/types/components/zd-dropdown/ZdDropdown.d.ts +835 -31
  332. package/types/components/zd-dropdown/ZdDropdown.ts.d.ts +836 -0
  333. package/types/components/zd-footer/ZdFooter.d.ts +1258 -29
  334. package/types/components/zd-footer/ZdFooter.ts.d.ts +1262 -0
  335. package/types/components/zd-form/ZdForm.d.ts +118 -24
  336. package/types/components/zd-form/ZdForm.ts.d.ts +118 -0
  337. package/types/components/zd-frame/ZdFrame.d.ts +138 -26
  338. package/types/components/zd-frame/ZdFrame.ts.d.ts +138 -0
  339. package/types/components/zd-frame-page/ZdFramePage.d.ts +804 -9
  340. package/types/components/zd-frame-page/ZdFramePage.ts.d.ts +805 -0
  341. package/types/components/zd-grid/ZdGrid.d.ts +7299 -120
  342. package/types/components/zd-grid/ZdGrid.ts.d.ts +7304 -0
  343. package/types/components/zd-grid/cell/ZdGridAction.d.ts +14 -0
  344. package/types/components/zd-grid/cell/ZdGridAction.ts.d.ts +14 -0
  345. package/types/components/zd-grid/cell/ZdGridCell.d.ts +68 -0
  346. package/types/components/zd-grid/cell/ZdGridCell.ts.d.ts +68 -0
  347. package/types/components/zd-grid/cell/ZdGridCellContent.d.ts +58 -0
  348. package/types/components/zd-grid/cell/ZdGridCellContent.ts.d.ts +58 -0
  349. package/types/components/zd-grid/cell/ZdGridCheckbox.d.ts +53 -0
  350. package/types/components/zd-grid/cell/ZdGridCheckbox.ts.d.ts +53 -0
  351. package/types/components/zd-grid/column-header/ZdGridColumnHeader.d.ts +112 -0
  352. package/types/components/zd-grid/column-header/ZdGridColumnHeader.ts.d.ts +112 -0
  353. package/types/components/zd-grid/column-header/ZdGridHeaderIcon.d.ts +46 -0
  354. package/types/components/zd-grid/column-header/ZdGridHeaderIcon.ts.d.ts +46 -0
  355. package/types/components/zd-grid/column-header/ZdGridHeaderRow.d.ts +165 -0
  356. package/types/components/zd-grid/column-header/ZdGridHeaderRow.ts.d.ts +165 -0
  357. package/types/components/zd-grid/column-header/ZdGridSort.d.ts +47 -0
  358. package/types/components/zd-grid/column-header/ZdGridSort.ts.d.ts +47 -0
  359. package/types/components/zd-grid/composables/grid-instance.d.ts +2085 -0
  360. package/types/components/zd-grid/footer/ZdGridFooter.d.ts +2087 -0
  361. package/types/components/zd-grid/footer/ZdGridFooter.ts.d.ts +2087 -0
  362. package/types/components/zd-grid/helper/ZdGridHelper.d.ts +16 -0
  363. package/types/components/zd-grid/helper/ZdGridHelper.ts.d.ts +16 -0
  364. package/types/components/zd-grid/row/TableRow.d.ts +34 -0
  365. package/types/components/zd-grid/row/TableRow.ts.d.ts +34 -0
  366. package/types/components/zd-grid/row/ZdGridRow.d.ts +105 -0
  367. package/types/components/zd-grid/row/ZdGridRow.ts.d.ts +105 -0
  368. package/types/components/zd-grid/toolbar/ZdGridToolbar.d.ts +2086 -0
  369. package/types/components/zd-grid/toolbar/ZdGridToolbar.ts.d.ts +2086 -0
  370. package/types/components/zd-grid-editable/ZdGridEditable.d.ts +8663 -0
  371. package/types/components/zd-grid-editable/ZdGridEditable.ts.d.ts +8663 -0
  372. package/types/components/zd-grid-editable/cell/ZdGridEditableCell.d.ts +637 -0
  373. package/types/components/zd-grid-editable/cell/ZdGridEditableCell.ts.d.ts +637 -0
  374. package/types/components/zd-grid-editable/row/ZdGridEditableRow.d.ts +126 -0
  375. package/types/components/zd-grid-editable/row/ZdGridEditableRow.ts.d.ts +126 -0
  376. package/types/components/zd-header/ZdHeader.d.ts +1316 -32
  377. package/types/components/zd-header/ZdHeader.ts.d.ts +1320 -0
  378. package/types/components/zd-icon/ZdIcon.d.ts +379 -15
  379. package/types/components/zd-icon/ZdIcon.ts.d.ts +383 -0
  380. package/types/components/zd-image/ZdImage.d.ts +748 -18
  381. package/types/components/zd-image/ZdImage.ts.d.ts +753 -0
  382. package/types/components/zd-increment/ZdIncrement.d.ts +2069 -12
  383. package/types/components/zd-increment/ZdIncrement.ts.d.ts +2069 -0
  384. package/types/components/zd-input/ZdInput.d.ts +200 -44
  385. package/types/components/zd-iterable/ZdIterable.d.ts +130 -43
  386. package/types/components/zd-iterable/ZdIterableNoData.d.ts +2089 -0
  387. package/types/components/zd-iterable/ZdIterableNoData.ts.d.ts +2089 -0
  388. package/types/components/zd-iterable/zd-iterable-columns-button/ZdIterableColumnsButton.d.ts +1641 -20
  389. package/types/components/zd-iterable/zd-iterable-columns-button/ZdIterableColumnsButton.ts.d.ts +1645 -0
  390. package/types/components/zd-iterable/zd-iterable-page-info/ZdIterablePageInfo.d.ts +1081 -9
  391. package/types/components/zd-iterable/zd-iterable-page-info/ZdIterablePageInfo.ts.d.ts +1081 -0
  392. package/types/components/zd-iterable/zd-iterable-page-size/ZdIterablePageSize.d.ts +2762 -19
  393. package/types/components/zd-iterable/zd-iterable-page-size/ZdIterablePageSize.ts.d.ts +2763 -0
  394. package/types/components/zd-iterable/zd-iterable-pagination/ZdIterablePagination.d.ts +1625 -33
  395. package/types/components/zd-iterable/zd-iterable-pagination/ZdIterablePagination.ts.d.ts +1627 -0
  396. package/types/components/zd-iterable/zd-search/ZdSearch.d.ts +763 -19
  397. package/types/components/zd-iterable/zd-search/ZdSearch.ts.d.ts +766 -0
  398. package/types/components/zd-iterable-component-render/ZdIterableComponentRender.d.ts +2480 -21
  399. package/types/components/zd-iterable-component-render/ZdIterableComponentRender.ts.d.ts +2484 -0
  400. package/types/components/zd-layout/ZdLayout.d.ts +647 -0
  401. package/types/components/zd-layout/ZdLayout.ts.d.ts +647 -0
  402. package/types/components/zd-list/ZdList.d.ts +1140 -27
  403. package/types/components/zd-list/ZdList.ts.d.ts +1140 -0
  404. package/types/components/zd-list/ZdListGroup.d.ts +1332 -12
  405. package/types/components/zd-list/ZdListGroup.ts.d.ts +1332 -0
  406. package/types/components/zd-list/ZdListItem.d.ts +848 -19
  407. package/types/components/zd-list/ZdListItem.ts.d.ts +848 -0
  408. package/types/components/zd-loading/ZdLoading.d.ts +350 -19
  409. package/types/components/zd-loading/ZdLoading.ts.d.ts +350 -0
  410. package/types/components/zd-login/ZdLogin.d.ts +1063 -32
  411. package/types/components/zd-login/ZdLogin.ts.d.ts +1072 -0
  412. package/types/components/zd-login/ZdLoginButton.d.ts +1908 -9
  413. package/types/components/zd-login/ZdLoginButton.ts.d.ts +1910 -0
  414. package/types/components/zd-main/ZdMain.d.ts +619 -0
  415. package/types/components/zd-main/ZdMain.ts.d.ts +619 -0
  416. package/types/components/zd-master-detail/ZdMasterDetail.d.ts +683 -16
  417. package/types/components/zd-master-detail/ZdMasterDetail.ts.d.ts +684 -0
  418. package/types/components/zd-menu/ZdMenu.d.ts +4480 -40
  419. package/types/components/zd-menu/ZdMenu.ts.d.ts +4484 -0
  420. package/types/components/zd-menu/ZdMenuButton.d.ts +1141 -12
  421. package/types/components/zd-menu/ZdMenuButton.ts.d.ts +1142 -0
  422. package/types/components/zd-menu/ZdMenuGroup.d.ts +6280 -13
  423. package/types/components/zd-menu/ZdMenuGroup.ts.d.ts +6286 -0
  424. package/types/components/zd-menu/ZdMenuLink.d.ts +10433 -14
  425. package/types/components/zd-menu/ZdMenuLink.ts.d.ts +10437 -0
  426. package/types/components/zd-menu/ZdMenuSeparator.d.ts +600 -9
  427. package/types/components/zd-menu/ZdMenuSeparator.ts.d.ts +600 -0
  428. package/types/components/zd-modal/ZdModal.d.ts +8 -34
  429. package/types/components/zd-modal/ZdModal.ts.d.ts +10 -0
  430. package/types/components/zd-modal/ZdModalCloseButton.d.ts +1136 -12
  431. package/types/components/zd-modal/ZdModalCloseButton.ts.d.ts +1137 -0
  432. package/types/components/zd-month/ZdMonth.d.ts +2217 -12
  433. package/types/components/zd-month/ZdMonth.ts.d.ts +2217 -0
  434. package/types/components/zd-number-input/ZdNumberInput.d.ts +2021 -0
  435. package/types/components/zd-number-input/ZdNumberInput.ts.d.ts +2021 -0
  436. package/types/components/zd-password/ZdPassword.d.ts +2011 -6
  437. package/types/components/zd-password/ZdPassword.ts.d.ts +2014 -0
  438. package/types/components/zd-progress/ZdProgress.d.ts +856 -13
  439. package/types/components/zd-progress/ZdProgress.ts.d.ts +859 -0
  440. package/types/components/zd-radio/ZdRadio.d.ts +677 -10
  441. package/types/components/zd-radio/ZdRadio.ts.d.ts +682 -0
  442. package/types/components/zd-row/ZdRow.d.ts +734 -18
  443. package/types/components/zd-row/ZdRow.ts.d.ts +734 -0
  444. package/types/components/zd-select/ZdSelect.d.ts +313 -88
  445. package/types/components/zd-select/ZdSelect.ts.d.ts +313 -0
  446. package/types/components/zd-select-multiple/ZdSelectMultiple.d.ts +330 -64
  447. package/types/components/zd-select-multiple/ZdSelectMultiple.ts.d.ts +333 -0
  448. package/types/components/zd-svg-map/ZdSvgMap.d.ts +410 -57
  449. package/types/components/zd-svg-map/ZdSvgMap.ts.d.ts +414 -0
  450. package/types/components/zd-switch/ZdSwitch.d.ts +1915 -8
  451. package/types/components/zd-switch/ZdSwitch.ts.d.ts +1918 -0
  452. package/types/components/zd-table/ZdTable.d.ts +1092 -17
  453. package/types/components/zd-table/ZdTable.ts.d.ts +1092 -0
  454. package/types/components/zd-tabs/ZdTab.d.ts +671 -9
  455. package/types/components/zd-tabs/ZdTab.ts.d.ts +674 -0
  456. package/types/components/zd-tabs/ZdTabItem.d.ts +268 -8
  457. package/types/components/zd-tabs/ZdTabItem.ts.d.ts +268 -0
  458. package/types/components/zd-tabs/ZdTabs.d.ts +926 -17
  459. package/types/components/zd-tabs/ZdTabs.ts.d.ts +929 -0
  460. package/types/components/zd-tag/ZdTag.d.ts +613 -11
  461. package/types/components/zd-tag/ZdTag.ts.d.ts +613 -0
  462. package/types/components/zd-text/ZdText.d.ts +668 -17
  463. package/types/components/zd-text/ZdText.ts.d.ts +670 -0
  464. package/types/components/zd-text-input/ZdTextInput.d.ts +739 -41
  465. package/types/components/zd-text-input/ZdTextInput.ts.d.ts +746 -0
  466. package/types/components/zd-textarea/ZdTextarea.d.ts +875 -22
  467. package/types/components/zd-textarea/ZdTextarea.ts.d.ts +877 -0
  468. package/types/components/zd-time/ZdTime.d.ts +2221 -36
  469. package/types/components/zd-time/ZdTime.ts.d.ts +2224 -0
  470. package/types/components/zd-toggleable/ZdToggleable.d.ts +199 -11
  471. package/types/components/zd-tooltip/ZdTooltip.d.ts +779 -21
  472. package/types/components/zd-tooltip/ZdTooltip.ts.d.ts +781 -0
  473. package/types/components/zd-tree/ZdTree.d.ts +1863 -40
  474. package/types/components/zd-tree/ZdTree.ts.d.ts +1878 -0
  475. package/types/components/zd-tree/ZdTreeAfterTitle.d.ts +26 -11
  476. package/types/components/zd-tree/ZdTreeAfterTitle.ts.d.ts +26 -0
  477. package/types/components/zd-tree/ZdTreeCheckbox.d.ts +72 -15
  478. package/types/components/zd-tree/ZdTreeCheckbox.ts.d.ts +74 -0
  479. package/types/components/zd-tree-grid/ZdTreeGrid.d.ts +4172 -26
  480. package/types/components/zd-tree-grid/ZdTreeGrid.ts.d.ts +4178 -0
  481. package/types/components/zd-tree-grid/cell/ZdTreeGridCell.d.ts +92 -0
  482. package/types/components/zd-tree-grid/cell/ZdTreeGridCell.ts.d.ts +92 -0
  483. package/types/components/zd-tree-grid/row/ZdTreeGridRow.d.ts +124 -0
  484. package/types/components/zd-tree-grid/row/ZdTreeGridRow.ts.d.ts +124 -0
  485. package/types/composables/cellSelection.d.ts +281 -0
  486. package/types/composables/columnDrag.d.ts +9 -0
  487. package/types/composables/columnResize.d.ts +18 -0
  488. package/types/composables/density.d.ts +12 -0
  489. package/types/composables/doubleClick.d.ts +6 -0
  490. package/types/composables/fixedColumns.d.ts +14 -0
  491. package/types/composables/gridColorVars.d.ts +13 -0
  492. package/types/composables/gridColumns.d.ts +285 -0
  493. package/types/composables/gridSelection.d.ts +15 -0
  494. package/types/composables/gridSorting.d.ts +17 -0
  495. package/types/composables/hasSlot.d.ts +8 -0
  496. package/types/composables/index.d.ts +16 -0
  497. package/types/composables/maska.d.ts +16 -0
  498. package/types/composables/tableNavigation.d.ts +11 -0
  499. package/types/composables/useTableLayout.d.ts +25 -0
  500. package/types/composables/virtualScroll.d.ts +26 -0
  501. package/types/composables/watchUrl.d.ts +8 -0
  502. package/types/errors/index.d.ts +2 -0
  503. package/types/errors/not-provided.d.ts +7 -0
  504. package/types/errors/row-not-found.d.ts +7 -0
  505. package/types/errors/zeedhi-error.d.ts +6 -0
  506. package/types/index.d.ts +19 -16
  507. package/types/propsMixins/heightProps.d.ts +17 -0
  508. package/types/propsMixins/index.d.ts +5 -0
  509. package/types/propsMixins/interfaces.d.ts +2 -0
  510. package/types/propsMixins/widthProps.d.ts +13 -0
  511. package/types/utils/buildProps.d.ts +2 -0
  512. package/types/utils/index.d.ts +7 -0
  513. package/types/utils/isArrayOperation.d.ts +2 -0
  514. package/types/utils/logger/logger.d.ts +3 -0
  515. package/types/utils/mergeDictionaries.d.ts +3 -0
  516. package/types/utils/plugins/formatSizePlugin.d.ts +1 -2
  517. package/types/utils/plugins/getIconPlugin.d.ts +1 -2
  518. package/types/utils/plugins/index.d.ts +2 -8
  519. package/types/utils/plugins/styleObjectPlugin.d.ts +1 -2
  520. package/vitest.config.ts +14 -0
  521. package/dist/zd-style.css +0 -147
  522. package/dist/zd-vuetify.esm.js +0 -64841
  523. package/dist/zd-vuetify.umd.js +0 -64951
  524. package/types/components/public.d.ts +0 -99
  525. package/types/components/zd-apex-chart/ZdApexChart.d.ts +0 -32
  526. package/types/components/zd-code-editor/ZdCodeEditor.d.ts +0 -23
  527. package/types/components/zd-dashboard/ZdDashboard.d.ts +0 -41
  528. package/types/components/zd-date/ZdDate.d.ts +0 -48
  529. package/types/components/zd-date/ZdDateRange.d.ts +0 -44
  530. package/types/components/zd-file-input/ZdFileInput.d.ts +0 -38
  531. package/types/components/zd-grid/ZdGridEditable.d.ts +0 -28
  532. package/types/components/zd-grid/subcomponents/ZdGridFooter.d.ts +0 -6
  533. package/types/components/zd-grid/subcomponents/ZdGridTop.d.ts +0 -6
  534. package/types/components/zd-grid/subcomponents/cell/ZdGridAction.d.ts +0 -15
  535. package/types/components/zd-grid/subcomponents/cell/ZdGridCell.d.ts +0 -24
  536. package/types/components/zd-grid/subcomponents/cell/ZdGridCellContent.d.ts +0 -28
  537. package/types/components/zd-grid/subcomponents/cell/ZdGridCellEdit.d.ts +0 -15
  538. package/types/components/zd-grid/subcomponents/cell/ZdGridCheckbox.d.ts +0 -15
  539. package/types/components/zd-grid/subcomponents/cell/ZdGridEditableCell.d.ts +0 -49
  540. package/types/components/zd-grid/subcomponents/cell/ZdGridEditableCellContent.d.ts +0 -52
  541. package/types/components/zd-grid/subcomponents/cell/ZdGridRow.d.ts +0 -12
  542. package/types/components/zd-grid/subcomponents/column-header/ZdGridColumnHeader.d.ts +0 -19
  543. package/types/components/zd-grid/subcomponents/column-header/ZdGridSortIcon.d.ts +0 -8
  544. package/types/components/zd-grid/subcomponents/helper/ZdGridHelper.d.ts +0 -4
  545. package/types/components/zd-iterable/ZdIterablePageComponent.d.ts +0 -10
  546. package/types/components/zd-iterable/zd-iterable-no-data/ZdIterableNoData.d.ts +0 -8
  547. package/types/components/zd-list/ZdListItemContent.d.ts +0 -8
  548. package/types/components/zd-number/ZdNumber.d.ts +0 -20
  549. package/types/components/zd-range-slider/ZdRangeSlider.d.ts +0 -39
  550. package/types/components/zd-select-tree/ZdSelectTree.d.ts +0 -48
  551. package/types/components/zd-select-tree-multiple/ZdSelectTreeMultiple.d.ts +0 -39
  552. package/types/components/zd-selectable-list/ZdSelectableList.d.ts +0 -23
  553. package/types/components/zd-speed-dial/ZdSpeedDial.d.ts +0 -18
  554. package/types/components/zd-steppers/ZdSteppers.d.ts +0 -16
  555. package/types/components/zd-tree-grid/ZdTreeGridEditable.d.ts +0 -21
  556. package/types/components/zd-tree-grid/cell/ZdTreeGridCellActionContent.d.ts +0 -13
  557. package/types/components/zd-tree-grid/cell/ZdTreeGridCellContent.d.ts +0 -13
  558. package/types/mixins/editable-mixin/EditableMixin.d.ts +0 -77
  559. package/types/mixins/index.d.ts +0 -4
  560. package/types/mixins/navigable-table-mixin/NavigableTableMixin.d.ts +0 -26
  561. package/types/mixins/themeable/Themeable.d.ts +0 -16
  562. package/types/utils/colors.d.ts +0 -2
  563. package/types/utils/decorators.d.ts +0 -3
  564. package/types/utils/get-activator.d.ts +0 -11
  565. package/types/utils/plugins/doubleClickPlugin.d.ts +0 -10
  566. package/types/utils/plugins/isDarkPlugin.d.ts +0 -3
  567. package/types/utils/plugins/isLightPlugin.d.ts +0 -3
  568. package/types/utils/plugins/isMobilePlugin.d.ts +0 -2
  569. package/types/utils/plugins/onVisiblePlugin.d.ts +0 -5
  570. package/types/utils/plugins/solidColorPlugin.d.ts +0 -2
  571. package/types/v-components/index.d.ts +0 -3
  572. package/types/v-components/v-menu/ZdVMenu.d.ts +0 -8
  573. package/types/v-components/v-tooltip/ZdVTooltip.d.ts +0 -8
@@ -0,0 +1,117 @@
1
+ import { ITekGridLayout, Input, TekGridLayoutOptions, TekRestDatasource } from '@zeedhi/common';
2
+ import { IEventParam } from '@zeedhi/core';
3
+ import { defineComponent, mergeProps, onMounted, ref } from 'vue';
4
+ import { ZdComponentRenderProps, useCreateInstance, useTableLayout } from '../../..';
5
+
6
+ export const TekGridLayoutOptionsProps = {
7
+ ...ZdComponentRenderProps,
8
+ // Zeedhi 3.0
9
+ };
10
+
11
+ const layoutOptionsComponent = defineComponent({
12
+ props: TekGridLayoutOptionsProps,
13
+ inheritAttrs: false,
14
+ setup(props, ctx) {
15
+ const { instance, root } = useCreateInstance<TekGridLayoutOptions>(props, ctx, TekGridLayoutOptions);
16
+
17
+ const { applyLayout: applyTekGridLayout, getColumnElements, getTableWidth } = useTableLayout();
18
+
19
+ onMounted(() => {
20
+ instance.viewApplyLayout = applyLayout;
21
+ instance.viewGetCurrentLayout = getCurrentLayout;
22
+ });
23
+
24
+ const confirmLayoutClick = ({ component }: IEventParam<Input>) => {
25
+ const layoutName = component.value;
26
+ if (layoutName) {
27
+ const newLayout: ITekGridLayout = getCurrentLayout(layoutName);
28
+ instance.newLayout(newLayout);
29
+ }
30
+
31
+ menuActive.value = false;
32
+ component.value = '';
33
+ };
34
+
35
+ const datasourceDynamicFilter = () => {
36
+ const datasource = instance.grid.datasource;
37
+ if (datasource instanceof TekRestDatasource) return datasource.dynamicFilter;
38
+ return {};
39
+ };
40
+
41
+ const changeLayout = (layout: ITekGridLayout) => {
42
+ instance.updateLayout(layout.name, getCurrentLayout(layout.name));
43
+ };
44
+
45
+ const applyLayout = (layout?: ITekGridLayout) => {
46
+ const defaultLayout = {
47
+ originalDatasourceOrder: instance.originalDatasourceOrder,
48
+ originalDatasourceFilter: instance.originalDatasourceFilter,
49
+ originalColumnProps: instance.originalColumnProps,
50
+ originalDatasourceDynamicFilter: instance.originalDatasourceDynamicFilter,
51
+ };
52
+ applyTekGridLayout({ layout, defaultLayout, changeLayoutCallback: changeLayout });
53
+ menuActive.value = false;
54
+ };
55
+
56
+ const getCurrentLayout = (layoutName: string) => {
57
+ const { grid } = instance;
58
+
59
+ const gridWidth = getTableWidth();
60
+ const columnElementsDict = getColumnElements();
61
+
62
+ return {
63
+ name: layoutName,
64
+ gridWidth,
65
+ order: grid.datasource.order,
66
+ filter: grid.datasource.filter,
67
+ dynamicFilter: datasourceDynamicFilter(),
68
+ columns: grid.columns.map((column: any, index) => {
69
+ const columnElement = columnElementsDict[index];
70
+ return {
71
+ name: column.name,
72
+ label: column.label,
73
+ align: column.align,
74
+ width: columnElement ? window.getComputedStyle(columnElement).width : 'unset',
75
+ minWidth: column.minWidth,
76
+ maxWidth: column.maxWidth,
77
+ isVisible: column.isVisible,
78
+ fixed: column.fixed,
79
+ grouped: column.grouped,
80
+ groupOpened: column.groupOpened,
81
+ aggregation: column.aggregation,
82
+ filterHelperValue: instance.getHelperValue(column),
83
+ };
84
+ }),
85
+ };
86
+ };
87
+
88
+ const menuActive = ref(false);
89
+
90
+ const applyOrUpdateLayout = (event: Event, layoutName: string) => {
91
+ if (instance.layoutEdited) {
92
+ instance.updateLayout(layoutName, getCurrentLayout(layoutName));
93
+ event.stopImmediatePropagation();
94
+ menuActive.value = false;
95
+ } else {
96
+ instance.applyLayout(layoutName);
97
+ }
98
+ };
99
+
100
+ const deleteLayout = (event: Event, layoutName: string) => {
101
+ instance.deleteLayout(layoutName);
102
+ event.stopImmediatePropagation();
103
+ };
104
+
105
+ return {
106
+ instance,
107
+ root,
108
+ menuActive,
109
+ confirmLayoutClick,
110
+ applyOrUpdateLayout,
111
+ deleteLayout,
112
+ mergeProps,
113
+ };
114
+ },
115
+ });
116
+
117
+ export default layoutOptionsComponent;
@@ -0,0 +1,172 @@
1
+ <template>
2
+ <v-menu
3
+ :id="instance.name"
4
+ :name="instance.name"
5
+ :class="['tek-grid-layout-options', instance.cssClass]"
6
+ :style="instance.cssStyle"
7
+ v-model="menuActive"
8
+ offset-y
9
+ :closeOnContentClick="false"
10
+ >
11
+ <template v-slot:activator="{ props: onMenu }">
12
+ <v-tooltip bottom>
13
+ <template v-slot:activator="{ props: onTooltip }">
14
+ <v-badge
15
+ v-show="instance.isVisible"
16
+ overlap
17
+ class="tek-grid-layout-options-badge"
18
+ dot
19
+ :offsetX="12"
20
+ :offsetY="12"
21
+ :value="instance.layoutEdited"
22
+ >
23
+ <zd-activator-wrapper
24
+ ref="root"
25
+ v-bind="mergeProps(onMenu, onTooltip)"
26
+ :child-props="{
27
+ component: 'ZdButton',
28
+ name: instance.name + '_button',
29
+ icon: true,
30
+ iconName: 'mdi-table-star',
31
+ isVisible: instance.isVisible,
32
+ }"
33
+ ></zd-activator-wrapper>
34
+ </v-badge>
35
+ </template>
36
+ <span>{{ $t('LAYOUT') + (instance.currentLayoutName || $t('DEFAULT_LAYOUT')) }}</span>
37
+ </v-tooltip>
38
+ </template>
39
+ <v-list>
40
+ <v-list-item
41
+ :class="['tek-grid-layout-item-header', { edited: instance.layoutEdited }]"
42
+ >
43
+ {{ instance.layoutEdited ? $t('LAYOUT_MODIFIED') : $t('LAYOUT_NOT_MODIFIED')}}
44
+ </v-list-item>
45
+ <v-list-item>
46
+ <zd-text-input
47
+ :name="instance.name+'_new_layout'"
48
+ ref="inputNewLayout"
49
+ v-bind="{
50
+ showHelper: false,
51
+ showLabel: false,
52
+ placeholder: 'NEW_LAYOUT',
53
+ appendOuterIcon: 'mdi-check',
54
+ autofocus: true,
55
+ autofill: false,
56
+ keyMap: {
57
+ enter: {
58
+ event: confirmLayoutClick,
59
+ input: true,
60
+ active: true,
61
+ },
62
+ },
63
+ events: {
64
+ appendOuterIconClick: confirmLayoutClick,
65
+ },
66
+ }"
67
+ />
68
+ </v-list-item>
69
+ <v-list-item
70
+ v-if="!instance.layoutEdited"
71
+ :class="['tek-grid-layout-item', {
72
+ selected: instance.currentLayoutName === ''
73
+ }]"
74
+ @click="instance.applyLayout('')"
75
+ >
76
+ {{ $t('DEFAULT_LAYOUT') }}
77
+ </v-list-item>
78
+ <v-list-item
79
+ v-for="item in instance.layoutNames"
80
+ :key="item"
81
+ :class="['tek-grid-layout-item', {
82
+ selected: item === instance.currentLayoutName
83
+ }]"
84
+ @click="applyOrUpdateLayout($event, item)"
85
+ >
86
+ {{ item }}
87
+ <span v-if="!instance.layoutEdited" class="tek-grid-layout-item-buttons">
88
+ <zd-button
89
+ :name="'tek-grid-layout-item-delete_' + instance.name + item"
90
+ v-bind="{
91
+ small: true,
92
+ icon: true,
93
+ iconName: 'mdi-trash-can-outline',
94
+ events: {
95
+ click: ({ event }) => { deleteLayout(event, item) },
96
+ },
97
+ }"
98
+ />
99
+ </span>
100
+ </v-list-item>
101
+ <v-list-item
102
+ v-if="instance.layoutEdited"
103
+ :class="['tek-grid-layout-item-discard']"
104
+ @click="instance.discardChanges()"
105
+ >
106
+ <zd-button small color="error darken-2" width="100%" name="tek-grid-layout-item-discard-changes" label="LAYOUT_DISCART_CHANGES"></zd-button>
107
+ </v-list-item>
108
+ </v-list>
109
+ </v-menu>
110
+ </template>
111
+
112
+ <script lang="ts" src="./TekGridLayoutOptions.ts"></script>
113
+
114
+ <style lang="scss">
115
+ .tek-grid-layout-options {
116
+ &-badge {
117
+ .v-badge__badge {
118
+ font-size: var(--zd-font-caption-size);
119
+ font-weight: var(--zd-font-caption-weight);
120
+ line-height: 14px;
121
+ pointer-events: none;
122
+ background-color: var(--zd-badge-background-color) !important;
123
+
124
+ span {
125
+ color: var(--zd-badge-text-color) !important;
126
+ }
127
+ }
128
+ }
129
+ }
130
+
131
+ .tek-grid-layout-item {
132
+ font-size: 13px;
133
+ cursor: pointer;
134
+ min-height: 30px;
135
+
136
+ &.selected {
137
+ font-weight: 700;
138
+ }
139
+
140
+ &:hover {
141
+ &.theme--light {
142
+ background: #eee;
143
+ }
144
+ }
145
+
146
+ .tek-grid-layout-item-buttons {
147
+ position: absolute;
148
+ right: 16px;
149
+
150
+ .v-icon {
151
+ font-size: 18px;
152
+ }
153
+ }
154
+ }
155
+
156
+ .tek-grid-layout-item-header {
157
+ max-width: 270px;
158
+ font-size: 13px;
159
+ font-weight: bold;
160
+ color: var(--v-primary-base) !important;
161
+ line-height: 18px;
162
+
163
+ &.edited {
164
+ color: var(--v-error-darken2) !important;
165
+ }
166
+ }
167
+
168
+ .tek-grid-layout-item-discard {
169
+ min-height: 30px;
170
+ padding-top: 10px;
171
+ }
172
+ </style>
@@ -0,0 +1,62 @@
1
+ import { GridColumn } from '@zeedhi/common';
2
+ import { IDictionary } from '@zeedhi/core';
3
+ import { PropType, defineComponent } from 'vue';
4
+
5
+ export default defineComponent({
6
+ props: {
7
+ isSelected: {
8
+ type: Boolean,
9
+ required: true,
10
+ },
11
+ selectable: {
12
+ type: Boolean,
13
+ required: true,
14
+ },
15
+ selectionDisabled: {
16
+ type: Boolean,
17
+ required: true,
18
+ },
19
+ cellSelection: {
20
+ type: Boolean,
21
+ required: true,
22
+ },
23
+ isCurrent: {
24
+ type: Function as PropType<(args: { row: IDictionary; column?: GridColumn }) => boolean>,
25
+ required: true,
26
+ },
27
+ columns: {
28
+ type: Array as PropType<GridColumn[]>,
29
+ required: true,
30
+ },
31
+ row: {
32
+ type: Object as PropType<IDictionary>,
33
+ required: true,
34
+ },
35
+ fixedLeft: {
36
+ type: Object as PropType<IDictionary>,
37
+ required: true,
38
+ },
39
+ fixedRight: {
40
+ type: Object as PropType<IDictionary>,
41
+ required: true,
42
+ },
43
+ },
44
+ emits: ['focusin'],
45
+ setup(props, { emit }) {
46
+ const focusin = (event: Event) => {
47
+ emit('focusin', { event, row: props.row });
48
+ };
49
+
50
+ const getLevel = (row: IDictionary) => {
51
+ if (!row.groupHeaders) return 0;
52
+
53
+ const { length } = row.groupHeaders;
54
+ return length + 1;
55
+ };
56
+
57
+ return {
58
+ focusin,
59
+ getLevel,
60
+ };
61
+ },
62
+ });
@@ -0,0 +1,64 @@
1
+ <template>
2
+ <table-row
3
+ :cssClass="[
4
+ 'tek-grid-footer-row',
5
+ { 'tek-grid-footer-row--summary': row.groupSummary }
6
+ ]"
7
+ >
8
+ <td
9
+ v-if="selectable"
10
+ :class="[
11
+ 'zd-grid__cell',
12
+ 'zd-grid__cell--fixed',
13
+ 'zd-grid__selectable-cell',
14
+ ]"
15
+ ></td>
16
+ <zd-grid-cell
17
+ v-for="(column, index) in columns" :key="column.name"
18
+ :row="row"
19
+ :column="column"
20
+ :cssClass="[
21
+ {
22
+ 'zd-grid__cell--fixed': column.fixed,
23
+ 'zd-grid__action-cell--fixed': column.actionFixed,
24
+ },
25
+ ]"
26
+ :cssStyle="[{
27
+ left: column.fixed ? fixedLeft[column.name] : 'unset',
28
+ right: column.actionFixed ? fixedRight[column.name] : 'unset',
29
+ }]"
30
+ :cellSelection="cellSelection"
31
+ :isCurrent="isCurrent({ row, column })"
32
+ v-memo="[row, column, fixedLeft, fixedRight, cellSelection, isCurrent({ row, column })]"
33
+ @focus="cellFocus($event, column)"
34
+ @focusin="focusin($event, column)"
35
+ >
36
+ <template #prepend>
37
+ <tek-grid-indentation
38
+ v-if="index === 0"
39
+ footer
40
+ :level="getLevel(row)"
41
+ ></tek-grid-indentation>
42
+ </template>
43
+ </zd-grid-cell>
44
+ </table-row>
45
+ </template>
46
+
47
+ <script lang="ts" src="./TekGridFooterRow"></script>
48
+
49
+ <style lang="scss">
50
+ .tek-grid-footer-row {
51
+ &--summary {
52
+ background: var(--row-active-color);
53
+
54
+ .zd-grid__cell-content {
55
+ font-size: 15px;
56
+ }
57
+ }
58
+
59
+ .zd-grid__cell-content {
60
+ padding: 0 8px;
61
+ font-weight: bold;
62
+ }
63
+ }
64
+ </style>
@@ -0,0 +1,65 @@
1
+ import { GridColumn } from '@zeedhi/common';
2
+ import { IDictionary } from '@zeedhi/core';
3
+ import { PropType, defineComponent } from 'vue';
4
+
5
+ export default defineComponent({
6
+ props: {
7
+ isSelected: {
8
+ type: Boolean,
9
+ required: true,
10
+ },
11
+ isCurrentRow: {
12
+ type: Boolean,
13
+ required: true,
14
+ },
15
+ selectable: {
16
+ type: Boolean,
17
+ required: true,
18
+ },
19
+ selectionDisabled: {
20
+ type: Boolean,
21
+ required: true,
22
+ },
23
+ cellSelection: {
24
+ type: Boolean,
25
+ required: true,
26
+ },
27
+ isCurrent: {
28
+ type: Function as PropType<(args: { row: IDictionary; column?: GridColumn }) => boolean>,
29
+ required: true,
30
+ },
31
+ row: {
32
+ type: Object as PropType<IDictionary>,
33
+ required: true,
34
+ },
35
+ indeterminate: {
36
+ type: Boolean,
37
+ required: true,
38
+ },
39
+ },
40
+ emits: ['click', 'checkboxClick', 'focusin', 'expandClick'],
41
+ setup(props, { emit }) {
42
+ const click = (event: Event) => {
43
+ emit('click', event);
44
+ };
45
+
46
+ const checkboxClick = (event: Event) => {
47
+ emit('checkboxClick', event);
48
+ };
49
+
50
+ const focusin = (event: Event) => {
51
+ emit('focusin', { event, row: props.row });
52
+ };
53
+
54
+ const expandClick = (event: Event) => {
55
+ emit('expandClick', { event, row: props.row });
56
+ };
57
+
58
+ return {
59
+ click,
60
+ focusin,
61
+ checkboxClick,
62
+ expandClick,
63
+ };
64
+ },
65
+ });
@@ -0,0 +1,65 @@
1
+ <template>
2
+ <table-row
3
+ :class="[
4
+ 'tek-grid-group-row',
5
+ { 'tek-grid-row-group--summary': row.groupSummary }
6
+ ]"
7
+ :isCurrentRow="isCurrentRow"
8
+ @click="click($event)"
9
+ >
10
+ <zd-grid-checkbox
11
+ v-if="selectable"
12
+ :disabled="selectionDisabled"
13
+ :isSelected="isSelected"
14
+ :indeterminate="indeterminate"
15
+ :cellSelection="cellSelection"
16
+ :isCurrent="isCurrent({ row })"
17
+ @focusin="focusin($event)"
18
+ @click.stop="checkboxClick($event)"
19
+ />
20
+
21
+ <td
22
+ :colspan="999"
23
+ :class="
24
+ [
25
+ 'zd-grid__cell',
26
+ 'text-left',
27
+ 'tek-grid-group-cell',
28
+ 'zd-grid__cell--fixed',
29
+ ]"
30
+ :style="`left: ${(selectable ? 40 : 0)}px`"
31
+ :tabindex="cellSelection ? 0 : ''"
32
+ >
33
+ <span
34
+ :class="[
35
+ 'tek-grid-group-cell__container'
36
+ ]"
37
+ :style="`left: ${(selectable ? 48 : 8)}px`"
38
+ >
39
+ <tek-grid-indentation
40
+ :level="row.groupHeaders.length"
41
+ ></tek-grid-indentation>
42
+ <v-icon
43
+ :class="{ closed: !row.groupOpened }"
44
+ @click="expandClick($event)"
45
+ :key="`${row.groupIndex}_${row.groupValue}`"
46
+ >{{ $getIcon('expand') }}</v-icon>
47
+ <span class="tek-grid__group-text zd-ml-2">{{ (row.groupLabel? row.groupLabel + ': ': '') + row.groupValue }}</span>
48
+ </span>
49
+ </td>
50
+ </table-row>
51
+ </template>
52
+
53
+ <script lang="ts" src="./TekGridGroupRow"></script>
54
+
55
+ <style lang="scss">
56
+ .tek-grid-group-cell {
57
+ font-weight: bold;
58
+
59
+ &__container {
60
+ height: 100%;
61
+ align-items: center;
62
+ position: sticky;
63
+ }
64
+ }
65
+ </style>
@@ -0,0 +1,63 @@
1
+ import { computed, defineComponent, onMounted, onUnmounted, ref, useTemplateRef } from 'vue';
2
+
3
+ export default defineComponent({
4
+ props: {
5
+ overflow: {
6
+ type: [String, Number],
7
+ },
8
+ value: {
9
+ type: [String, Number, Boolean],
10
+ },
11
+ classes: {
12
+ type: Array,
13
+ default: () => [],
14
+ },
15
+ styles: {
16
+ type: Array,
17
+ default: () => [],
18
+ },
19
+ tag: {
20
+ type: String,
21
+ default: 'span',
22
+ },
23
+ },
24
+ emits: ['click'],
25
+ setup(props, { emit }) {
26
+ let observer: ResizeObserver;
27
+
28
+ const labelRef = useTemplateRef<HTMLElement | null>('value');
29
+ const clientWidth = ref(0);
30
+
31
+ onMounted(() => {
32
+ observer = new ResizeObserver(() => {
33
+ if (labelRef.value) {
34
+ clientWidth.value = labelRef.value.clientWidth;
35
+ }
36
+ });
37
+ if (labelRef.value) observer.observe(labelRef.value);
38
+ });
39
+
40
+ onUnmounted(() => {
41
+ if (observer) observer.disconnect();
42
+ });
43
+
44
+ const tooltipDisabled = computed(() => {
45
+ const labelEl = labelRef.value;
46
+ if (!labelEl) return true;
47
+
48
+ const overflow = clientWidth.value < labelEl.scrollWidth;
49
+
50
+ return !(overflow || Number.isInteger(props.overflow));
51
+ });
52
+
53
+ const click = (event: Event) => {
54
+ emit('click', event);
55
+ };
56
+
57
+ const isNumber = (overflow?: string | number) => {
58
+ return typeof overflow === 'number' || !Number.isNaN(Number(overflow));
59
+ };
60
+
61
+ return { tooltipDisabled, click, isNumber };
62
+ },
63
+ });
@@ -0,0 +1,63 @@
1
+ <template>
2
+ <component
3
+ :is="tag"
4
+ v-bind="{
5
+ ref: 'value'
6
+ }"
7
+ :class="[
8
+ 'zd-tooltip-overflow',
9
+ {
10
+ 'zd-tooltip-overflow--hidden': overflow === 'hidden',
11
+ 'zd-tooltip-overflow--wrap': overflow === 'wrap',
12
+ 'zd-tooltip-overflow--ellipsis': overflow === 'ellipsis',
13
+ },
14
+ isNumber(overflow)
15
+ ? `zd-tooltip-overflow--clamp zd-tooltip-overflow--clamp-${overflow}`
16
+ : '',
17
+ ...classes,
18
+ ]"
19
+ :style="styles"
20
+ @click="click($event)"
21
+ >
22
+ <v-tooltip
23
+ location="bottom"
24
+ :openOnClick="false"
25
+ :text="$t(String(value))"
26
+ :disabled="tooltipDisabled"
27
+ activator="parent"
28
+ ></v-tooltip>
29
+ <slot></slot>
30
+ </component>
31
+ </template>
32
+
33
+ <script lang="ts" src="./ZdTooltipOverflow.ts"></script>
34
+
35
+ <style lang="scss" scoped>
36
+ .zd-tooltip-overflow {
37
+ &--hidden {
38
+ text-overflow: unset;
39
+ }
40
+
41
+ &--wrap {
42
+ white-space: pre-wrap;
43
+ }
44
+
45
+ &--clamp {
46
+ white-space: normal;
47
+ -webkit-box-orient: vertical;
48
+ display: -webkit-box;
49
+
50
+ &-2 { -webkit-line-clamp: 2; }
51
+ &-3 { -webkit-line-clamp: 3; }
52
+ &-4 { -webkit-line-clamp: 4; }
53
+ &-5 { -webkit-line-clamp: 5; }
54
+ }
55
+
56
+ &--ellipsis {
57
+ overflow: hidden;
58
+ text-overflow: ellipsis;
59
+ overflow-wrap: break-word;
60
+ white-space: pre;
61
+ }
62
+ }
63
+ </style>
@@ -0,0 +1,37 @@
1
+ import { IEventParam } from '@zeedhi/core';
2
+ import { defineComponent } from 'vue';
3
+
4
+ /**
5
+ * Component used as a wrapper for zeedhi components to make the events
6
+ * compatible with VTooltip and VMenu
7
+ */
8
+ const component = defineComponent({
9
+ props: {
10
+ childProps: {
11
+ type: Object,
12
+ required: true,
13
+ },
14
+ parent: {
15
+ type: Object,
16
+ },
17
+ },
18
+ inheritAttrs: false,
19
+ setup(_props, ctx) {
20
+ /**
21
+ * Receives a zd-event and reemits in a format compatible with VTooltip and VMenu
22
+ */
23
+ const reemitEvent = (param: IEventParam<any> | Event, name: string) => {
24
+ if (param instanceof Event) {
25
+ ctx.emit(name, param);
26
+ return;
27
+ }
28
+ ctx.emit(name, param.event);
29
+ };
30
+
31
+ return {
32
+ reemitEvent,
33
+ };
34
+ },
35
+ });
36
+
37
+ export default component;