@acorex/components 21.0.2-next.3 → 21.0.2-next.31

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 (341) hide show
  1. package/{types/acorex-components-accordion.d.ts → accordion/index.d.ts} +1 -0
  2. package/{types/acorex-components-button.d.ts → button/index.d.ts} +3 -3
  3. package/{types/acorex-components-button-group.d.ts → button-group/index.d.ts} +12 -14
  4. package/{types/acorex-components-calendar.d.ts → calendar/index.d.ts} +74 -20
  5. package/{types/acorex-components-check-box.d.ts → check-box/index.d.ts} +1 -1
  6. package/{types/acorex-components-chips.d.ts → chips/index.d.ts} +8 -3
  7. package/collapse/README.md +3 -0
  8. package/collapse/index.d.ts +174 -0
  9. package/conversation2/README.md +8 -6
  10. package/{types/acorex-components-conversation2.d.ts → conversation2/index.d.ts} +2879 -2848
  11. package/{types/acorex-components-data-pager.d.ts → data-pager/index.d.ts} +2 -0
  12. package/{types/acorex-components-data-table.d.ts → data-table/index.d.ts} +261 -12
  13. package/{types/acorex-components-datetime-box.d.ts → datetime-box/index.d.ts} +6 -2
  14. package/{types/acorex-components-datetime-picker.d.ts → datetime-picker/index.d.ts} +6 -2
  15. package/drawer-legacy/README.md +3 -0
  16. package/drawer-legacy/index.d.ts +86 -0
  17. package/{types/acorex-components-dropdown-button.d.ts → dropdown-button/index.d.ts} +2 -4
  18. package/fesm2022/acorex-components-accordion.mjs +22 -17
  19. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  20. package/fesm2022/acorex-components-action-sheet.mjs +17 -17
  21. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  22. package/fesm2022/acorex-components-alert.mjs +14 -14
  23. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  24. package/fesm2022/acorex-components-aspect-ratio.mjs +4 -4
  25. package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
  26. package/fesm2022/acorex-components-audio-wave.mjs +11 -12
  27. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  28. package/fesm2022/acorex-components-autocomplete.mjs +9 -9
  29. package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
  30. package/fesm2022/acorex-components-avatar.mjs +13 -13
  31. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  32. package/fesm2022/acorex-components-badge.mjs +10 -10
  33. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  34. package/fesm2022/acorex-components-bottom-navigation.mjs +12 -12
  35. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  36. package/fesm2022/acorex-components-breadcrumbs.mjs +12 -12
  37. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  38. package/fesm2022/acorex-components-button-group.mjs +26 -41
  39. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  40. package/fesm2022/acorex-components-button.mjs +22 -22
  41. package/fesm2022/acorex-components-button.mjs.map +1 -1
  42. package/fesm2022/acorex-components-calendar.mjs +123 -20
  43. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  44. package/fesm2022/acorex-components-check-box.mjs +11 -11
  45. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  46. package/fesm2022/acorex-components-chips.mjs +14 -12
  47. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  48. package/fesm2022/acorex-components-circular-progress.mjs +11 -13
  49. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  50. package/fesm2022/acorex-components-code-editor.mjs +14 -14
  51. package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
  52. package/fesm2022/acorex-components-collapse.mjs +366 -0
  53. package/fesm2022/acorex-components-collapse.mjs.map +1 -0
  54. package/fesm2022/acorex-components-color-box.mjs +11 -11
  55. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  56. package/fesm2022/acorex-components-color-palette.mjs +31 -31
  57. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  58. package/fesm2022/acorex-components-command.mjs +11 -11
  59. package/fesm2022/acorex-components-command.mjs.map +1 -1
  60. package/fesm2022/acorex-components-comment.mjs +33 -33
  61. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  62. package/fesm2022/acorex-components-conversation.mjs +63 -63
  63. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  64. package/fesm2022/acorex-components-conversation2.mjs +5736 -3689
  65. package/fesm2022/acorex-components-conversation2.mjs.map +1 -1
  66. package/fesm2022/acorex-components-cron-job.mjs +55 -55
  67. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  68. package/fesm2022/acorex-components-data-list.mjs +6 -6
  69. package/fesm2022/acorex-components-data-list.mjs.map +1 -1
  70. package/fesm2022/acorex-components-data-pager.mjs +55 -38
  71. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  72. package/fesm2022/acorex-components-data-table.mjs +496 -60
  73. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  74. package/fesm2022/acorex-components-datetime-box.mjs +14 -10
  75. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  76. package/fesm2022/acorex-components-datetime-input.mjs +10 -10
  77. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  78. package/fesm2022/acorex-components-datetime-picker.mjs +15 -11
  79. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  80. package/fesm2022/acorex-components-decorators.mjs +41 -48
  81. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  82. package/fesm2022/acorex-components-dialog.mjs +13 -13
  83. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  84. package/fesm2022/acorex-components-drawer-legacy.mjs +218 -0
  85. package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -0
  86. package/fesm2022/acorex-components-drawer.mjs +17 -16
  87. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  88. package/fesm2022/acorex-components-dropdown-button.mjs +11 -19
  89. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  90. package/fesm2022/acorex-components-dropdown.mjs +18 -18
  91. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  92. package/fesm2022/acorex-components-editor.mjs +12 -12
  93. package/fesm2022/acorex-components-editor.mjs.map +1 -1
  94. package/fesm2022/acorex-components-fab.mjs +9 -9
  95. package/fesm2022/acorex-components-fab.mjs.map +1 -1
  96. package/fesm2022/acorex-components-file-explorer.mjs +307 -0
  97. package/fesm2022/acorex-components-file-explorer.mjs.map +1 -0
  98. package/fesm2022/acorex-components-flow-chart.mjs +22 -23
  99. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
  100. package/fesm2022/acorex-components-form.mjs +27 -35
  101. package/fesm2022/acorex-components-form.mjs.map +1 -1
  102. package/fesm2022/acorex-components-grid-layout-builder.mjs +14 -13
  103. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  104. package/fesm2022/acorex-components-image-editor.mjs +48 -48
  105. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  106. package/fesm2022/acorex-components-image.mjs +10 -10
  107. package/fesm2022/acorex-components-image.mjs.map +1 -1
  108. package/fesm2022/acorex-components-json-viewer.mjs +9 -9
  109. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  110. package/fesm2022/acorex-components-kanban.mjs +7 -9
  111. package/fesm2022/acorex-components-kanban.mjs.map +1 -1
  112. package/fesm2022/acorex-components-kbd.mjs +10 -10
  113. package/fesm2022/acorex-components-kbd.mjs.map +1 -1
  114. package/fesm2022/acorex-components-label.mjs +9 -9
  115. package/fesm2022/acorex-components-label.mjs.map +1 -1
  116. package/fesm2022/acorex-components-list.mjs +10 -10
  117. package/fesm2022/acorex-components-list.mjs.map +1 -1
  118. package/fesm2022/acorex-components-loading-dialog.mjs +12 -12
  119. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  120. package/fesm2022/acorex-components-loading.mjs +21 -21
  121. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  122. package/fesm2022/acorex-components-map.mjs +15 -15
  123. package/fesm2022/acorex-components-map.mjs.map +1 -1
  124. package/fesm2022/acorex-components-media-viewer.mjs +45 -45
  125. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  126. package/fesm2022/acorex-components-menu.mjs +124 -50
  127. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  128. package/fesm2022/{acorex-components-modal-acorex-components-modal-DWNqU6or.mjs → acorex-components-modal-acorex-components-modal-DwBY73dZ.mjs} +24 -24
  129. package/fesm2022/acorex-components-modal-acorex-components-modal-DwBY73dZ.mjs.map +1 -0
  130. package/fesm2022/acorex-components-modal-modal-content.component-DPMt_zaI.mjs +212 -0
  131. package/fesm2022/acorex-components-modal-modal-content.component-DPMt_zaI.mjs.map +1 -0
  132. package/fesm2022/acorex-components-modal.mjs +1 -1
  133. package/fesm2022/acorex-components-navbar.mjs +9 -9
  134. package/fesm2022/acorex-components-navbar.mjs.map +1 -1
  135. package/fesm2022/acorex-components-notification.mjs +13 -13
  136. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  137. package/fesm2022/acorex-components-number-box-legacy.mjs +430 -0
  138. package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -0
  139. package/fesm2022/acorex-components-number-box.mjs +51 -13
  140. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  141. package/fesm2022/acorex-components-otp.mjs +10 -10
  142. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  143. package/fesm2022/acorex-components-page.mjs +10 -10
  144. package/fesm2022/acorex-components-page.mjs.map +1 -1
  145. package/fesm2022/acorex-components-paint.mjs +40 -35
  146. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  147. package/fesm2022/acorex-components-password-box.mjs +23 -15
  148. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  149. package/fesm2022/acorex-components-pdf-reader.mjs +9 -9
  150. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  151. package/fesm2022/acorex-components-phone-box.mjs +10 -10
  152. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  153. package/fesm2022/acorex-components-picker.mjs +20 -20
  154. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  155. package/fesm2022/acorex-components-popover.mjs +8 -8
  156. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  157. package/fesm2022/acorex-components-popup.mjs +42 -18
  158. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  159. package/fesm2022/acorex-components-progress-bar.mjs +9 -11
  160. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  161. package/fesm2022/acorex-components-qrcode.mjs +10 -10
  162. package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
  163. package/fesm2022/acorex-components-query-builder.mjs +9 -9
  164. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  165. package/fesm2022/acorex-components-radio.mjs +9 -10
  166. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  167. package/fesm2022/acorex-components-rail-navigation.mjs +38 -40
  168. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  169. package/fesm2022/acorex-components-range-slider.mjs +11 -11
  170. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  171. package/fesm2022/acorex-components-rate-picker.mjs +35 -20
  172. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  173. package/fesm2022/acorex-components-rest-api-generator.mjs +28 -28
  174. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  175. package/fesm2022/acorex-components-result.mjs +8 -8
  176. package/fesm2022/acorex-components-result.mjs.map +1 -1
  177. package/fesm2022/acorex-components-routing-progress.mjs +8 -8
  178. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  179. package/fesm2022/acorex-components-rrule.mjs +11 -11
  180. package/fesm2022/acorex-components-rrule.mjs.map +1 -1
  181. package/fesm2022/acorex-components-scheduler-picker.mjs +180 -174
  182. package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
  183. package/fesm2022/acorex-components-scheduler.mjs +52 -52
  184. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  185. package/fesm2022/acorex-components-scss.mjs +22 -0
  186. package/fesm2022/acorex-components-scss.mjs.map +1 -0
  187. package/fesm2022/acorex-components-search-box.mjs +11 -17
  188. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  189. package/fesm2022/acorex-components-select-box.mjs +15 -21
  190. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  191. package/fesm2022/acorex-components-selection-list-2.mjs +12 -12
  192. package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
  193. package/fesm2022/acorex-components-selection-list.mjs +10 -10
  194. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  195. package/fesm2022/acorex-components-side-menu.mjs +439 -81
  196. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  197. package/fesm2022/acorex-components-skeleton.mjs +8 -8
  198. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  199. package/fesm2022/acorex-components-slider.mjs +13 -13
  200. package/fesm2022/acorex-components-slider.mjs.map +1 -1
  201. package/fesm2022/acorex-components-sliding-item.mjs +19 -19
  202. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  203. package/fesm2022/acorex-components-step-wizard.mjs +18 -17
  204. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  205. package/fesm2022/acorex-components-switch.mjs +14 -14
  206. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  207. package/fesm2022/acorex-components-tabs.mjs +17 -17
  208. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  209. package/fesm2022/acorex-components-tag-box.mjs +10 -10
  210. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  211. package/fesm2022/acorex-components-tag.mjs +10 -10
  212. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  213. package/fesm2022/acorex-components-text-area.mjs +9 -9
  214. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  215. package/fesm2022/acorex-components-text-box.mjs +12 -12
  216. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  217. package/fesm2022/acorex-components-time-duration.mjs +8 -8
  218. package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
  219. package/fesm2022/acorex-components-time-line.mjs +14 -14
  220. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  221. package/fesm2022/acorex-components-toast.mjs +13 -13
  222. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  223. package/fesm2022/acorex-components-toolbar.mjs +10 -10
  224. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  225. package/fesm2022/acorex-components-tooltip.mjs +25 -16
  226. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  227. package/fesm2022/acorex-components-tree-view-legacy.mjs +511 -0
  228. package/fesm2022/acorex-components-tree-view-legacy.mjs.map +1 -0
  229. package/fesm2022/acorex-components-tree-view.mjs +13 -13
  230. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  231. package/fesm2022/acorex-components-uploader.mjs +17 -17
  232. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  233. package/fesm2022/acorex-components-video-player.mjs +9 -9
  234. package/fesm2022/acorex-components-video-player.mjs.map +1 -1
  235. package/fesm2022/acorex-components-wysiwyg.mjs +45 -45
  236. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  237. package/fesm2022/acorex-components.mjs.map +1 -1
  238. package/file-explorer/README.md +3 -0
  239. package/file-explorer/index.d.ts +103 -0
  240. package/{types/acorex-components-form.d.ts → form/index.d.ts} +24 -24
  241. package/{types/acorex-components-grid-layout-builder.d.ts → grid-layout-builder/index.d.ts} +1 -0
  242. package/{types/acorex-components-loading.d.ts → loading/index.d.ts} +1 -1
  243. package/{types/acorex-components-menu.d.ts → menu/index.d.ts} +53 -13
  244. package/{types/acorex-components-number-box.d.ts → number-box/index.d.ts} +9 -0
  245. package/number-box-legacy/README.md +3 -0
  246. package/number-box-legacy/index.d.ts +191 -0
  247. package/package.json +140 -116
  248. package/{types/acorex-components-paint.d.ts → paint/index.d.ts} +6 -1
  249. package/{types/acorex-components-popup.d.ts → popup/index.d.ts} +11 -1
  250. package/{types/acorex-components-radio.d.ts → radio/index.d.ts} +1 -1
  251. package/{types/acorex-components-rate-picker.d.ts → rate-picker/index.d.ts} +15 -5
  252. package/{types/acorex-components-scheduler-picker.d.ts → scheduler-picker/index.d.ts} +81 -82
  253. package/scss/README.md +3 -0
  254. package/scss/index.d.ts +10 -0
  255. package/{types/acorex-components-select-box.d.ts → select-box/index.d.ts} +1 -2
  256. package/side-menu/index.d.ts +173 -0
  257. package/{types/acorex-components-slider.d.ts → slider/index.d.ts} +2 -2
  258. package/{types/acorex-components-step-wizard.d.ts → step-wizard/index.d.ts} +2 -1
  259. package/{types/acorex-components-tabs.d.ts → tabs/index.d.ts} +1 -1
  260. package/{types/acorex-components-tag.d.ts → tag/index.d.ts} +3 -3
  261. package/tree-view-legacy/README.md +3 -0
  262. package/tree-view-legacy/index.d.ts +184 -0
  263. package/fesm2022/acorex-components-modal-acorex-components-modal-DWNqU6or.mjs.map +0 -1
  264. package/fesm2022/acorex-components-modal-modal-content.component-DplJbJyk.mjs +0 -214
  265. package/fesm2022/acorex-components-modal-modal-content.component-DplJbJyk.mjs.map +0 -1
  266. package/types/acorex-components-side-menu.d.ts +0 -111
  267. /package/{types/acorex-components-action-sheet.d.ts → action-sheet/index.d.ts} +0 -0
  268. /package/{types/acorex-components-alert.d.ts → alert/index.d.ts} +0 -0
  269. /package/{types/acorex-components-aspect-ratio.d.ts → aspect-ratio/index.d.ts} +0 -0
  270. /package/{types/acorex-components-audio-wave.d.ts → audio-wave/index.d.ts} +0 -0
  271. /package/{types/acorex-components-autocomplete.d.ts → autocomplete/index.d.ts} +0 -0
  272. /package/{types/acorex-components-avatar.d.ts → avatar/index.d.ts} +0 -0
  273. /package/{types/acorex-components-badge.d.ts → badge/index.d.ts} +0 -0
  274. /package/{types/acorex-components-bottom-navigation.d.ts → bottom-navigation/index.d.ts} +0 -0
  275. /package/{types/acorex-components-breadcrumbs.d.ts → breadcrumbs/index.d.ts} +0 -0
  276. /package/{types/acorex-components-circular-progress.d.ts → circular-progress/index.d.ts} +0 -0
  277. /package/{types/acorex-components-code-editor.d.ts → code-editor/index.d.ts} +0 -0
  278. /package/{types/acorex-components-color-box.d.ts → color-box/index.d.ts} +0 -0
  279. /package/{types/acorex-components-color-palette.d.ts → color-palette/index.d.ts} +0 -0
  280. /package/{types/acorex-components-command.d.ts → command/index.d.ts} +0 -0
  281. /package/{types/acorex-components-comment.d.ts → comment/index.d.ts} +0 -0
  282. /package/{types/acorex-components-conversation.d.ts → conversation/index.d.ts} +0 -0
  283. /package/{types/acorex-components-cron-job.d.ts → cron-job/index.d.ts} +0 -0
  284. /package/{types/acorex-components-data-list.d.ts → data-list/index.d.ts} +0 -0
  285. /package/{types/acorex-components-datetime-input.d.ts → datetime-input/index.d.ts} +0 -0
  286. /package/{types/acorex-components-decorators.d.ts → decorators/index.d.ts} +0 -0
  287. /package/{types/acorex-components-dialog.d.ts → dialog/index.d.ts} +0 -0
  288. /package/{types/acorex-components-drawer.d.ts → drawer/index.d.ts} +0 -0
  289. /package/{types/acorex-components-dropdown.d.ts → dropdown/index.d.ts} +0 -0
  290. /package/{types/acorex-components-editor.d.ts → editor/index.d.ts} +0 -0
  291. /package/{types/acorex-components-fab.d.ts → fab/index.d.ts} +0 -0
  292. /package/{types/acorex-components-flow-chart.d.ts → flow-chart/index.d.ts} +0 -0
  293. /package/{types/acorex-components-image.d.ts → image/index.d.ts} +0 -0
  294. /package/{types/acorex-components-image-editor.d.ts → image-editor/index.d.ts} +0 -0
  295. /package/{types/acorex-components.d.ts → index.d.ts} +0 -0
  296. /package/{types/acorex-components-json-viewer.d.ts → json-viewer/index.d.ts} +0 -0
  297. /package/{types/acorex-components-kanban.d.ts → kanban/index.d.ts} +0 -0
  298. /package/{types/acorex-components-kbd.d.ts → kbd/index.d.ts} +0 -0
  299. /package/{types/acorex-components-label.d.ts → label/index.d.ts} +0 -0
  300. /package/{types/acorex-components-list.d.ts → list/index.d.ts} +0 -0
  301. /package/{types/acorex-components-loading-dialog.d.ts → loading-dialog/index.d.ts} +0 -0
  302. /package/{types/acorex-components-map.d.ts → map/index.d.ts} +0 -0
  303. /package/{types/acorex-components-media-viewer.d.ts → media-viewer/index.d.ts} +0 -0
  304. /package/{types/acorex-components-modal.d.ts → modal/index.d.ts} +0 -0
  305. /package/{types/acorex-components-navbar.d.ts → navbar/index.d.ts} +0 -0
  306. /package/{types/acorex-components-notification.d.ts → notification/index.d.ts} +0 -0
  307. /package/{types/acorex-components-otp.d.ts → otp/index.d.ts} +0 -0
  308. /package/{types/acorex-components-page.d.ts → page/index.d.ts} +0 -0
  309. /package/{types/acorex-components-password-box.d.ts → password-box/index.d.ts} +0 -0
  310. /package/{types/acorex-components-pdf-reader.d.ts → pdf-reader/index.d.ts} +0 -0
  311. /package/{types/acorex-components-phone-box.d.ts → phone-box/index.d.ts} +0 -0
  312. /package/{types/acorex-components-picker.d.ts → picker/index.d.ts} +0 -0
  313. /package/{types/acorex-components-popover.d.ts → popover/index.d.ts} +0 -0
  314. /package/{types/acorex-components-progress-bar.d.ts → progress-bar/index.d.ts} +0 -0
  315. /package/{types/acorex-components-qrcode.d.ts → qrcode/index.d.ts} +0 -0
  316. /package/{types/acorex-components-query-builder.d.ts → query-builder/index.d.ts} +0 -0
  317. /package/{types/acorex-components-rail-navigation.d.ts → rail-navigation/index.d.ts} +0 -0
  318. /package/{types/acorex-components-range-slider.d.ts → range-slider/index.d.ts} +0 -0
  319. /package/{types/acorex-components-rest-api-generator.d.ts → rest-api-generator/index.d.ts} +0 -0
  320. /package/{types/acorex-components-result.d.ts → result/index.d.ts} +0 -0
  321. /package/{types/acorex-components-routing-progress.d.ts → routing-progress/index.d.ts} +0 -0
  322. /package/{types/acorex-components-rrule.d.ts → rrule/index.d.ts} +0 -0
  323. /package/{types/acorex-components-scheduler.d.ts → scheduler/index.d.ts} +0 -0
  324. /package/{types/acorex-components-search-box.d.ts → search-box/index.d.ts} +0 -0
  325. /package/{types/acorex-components-selection-list.d.ts → selection-list/index.d.ts} +0 -0
  326. /package/{types/acorex-components-selection-list-2.d.ts → selection-list-2/index.d.ts} +0 -0
  327. /package/{types/acorex-components-skeleton.d.ts → skeleton/index.d.ts} +0 -0
  328. /package/{types/acorex-components-sliding-item.d.ts → sliding-item/index.d.ts} +0 -0
  329. /package/{types/acorex-components-switch.d.ts → switch/index.d.ts} +0 -0
  330. /package/{types/acorex-components-tag-box.d.ts → tag-box/index.d.ts} +0 -0
  331. /package/{types/acorex-components-text-area.d.ts → text-area/index.d.ts} +0 -0
  332. /package/{types/acorex-components-text-box.d.ts → text-box/index.d.ts} +0 -0
  333. /package/{types/acorex-components-time-duration.d.ts → time-duration/index.d.ts} +0 -0
  334. /package/{types/acorex-components-time-line.d.ts → time-line/index.d.ts} +0 -0
  335. /package/{types/acorex-components-toast.d.ts → toast/index.d.ts} +0 -0
  336. /package/{types/acorex-components-toolbar.d.ts → toolbar/index.d.ts} +0 -0
  337. /package/{types/acorex-components-tooltip.d.ts → tooltip/index.d.ts} +0 -0
  338. /package/{types/acorex-components-tree-view.d.ts → tree-view/index.d.ts} +0 -0
  339. /package/{types/acorex-components-uploader.d.ts → uploader/index.d.ts} +0 -0
  340. /package/{types/acorex-components-video-player.d.ts → video-player/index.d.ts} +0 -0
  341. /package/{types/acorex-components-wysiwyg.d.ts → wysiwyg/index.d.ts} +0 -0
@@ -1,4 +1,4 @@
1
- import { MXBaseComponent, convertArrayToDataSource, AXComponent, AXRippleDirective, AXCommonModule } from '@acorex/cdk/common';
1
+ import { MXBaseComponent, convertArrayToDataSource, AXComponent, AXRippleDirective, AXListDataSource, AXPagedComponent, AXCommonModule } from '@acorex/cdk/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { EventEmitter, signal, Input, Output, Injectable, inject, ElementRef, Renderer2, NgZone, ChangeDetectorRef, DOCUMENT, PLATFORM_ID, HostListener, Directive, ViewChild, ChangeDetectionStrategy, ViewEncapsulation, Component, effect, computed, untracked, ContentChildren, ContentChild, NgModule } from '@angular/core';
4
4
  import { isEqual, cloneDeep } from 'lodash-es';
@@ -23,8 +23,9 @@ import { AXDataPagerComponent, AXDataPagerNumericSelectorComponent, AXDataPagerP
23
23
  import { AXResultModule } from '@acorex/components/result';
24
24
  import { AXSkeletonComponent, AXSkeletonModule } from '@acorex/components/skeleton';
25
25
  import { moveItemInArray, CdkDropList, CdkDrag, CdkDragPlaceholder, CdkDragHandle } from '@angular/cdk/drag-drop';
26
- import { CdkScrollable, ScrollingModule } from '@angular/cdk/scrolling';
26
+ import { CdkScrollable, CdkVirtualScrollableElement, CdkVirtualScrollViewport, CdkFixedSizeVirtualScroll, CdkVirtualForOf, ScrollingModule } from '@angular/cdk/scrolling';
27
27
  import { AXTooltipDirective } from '@acorex/components/tooltip';
28
+ import sum from 'lodash-es/sum';
28
29
 
29
30
  class AXBaseDataTable extends MXBaseComponent {
30
31
  constructor() {
@@ -136,10 +137,10 @@ class AXBaseDataTable extends MXBaseComponent {
136
137
  this.selectedRows = this.selectedRows.filter((c) => !removedRowIds.includes(typeof c === 'object' ? c[key] : c));
137
138
  //this.selectedRows = this.selectedRows.filter((c) => !rows.includes(c));
138
139
  }
139
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXBaseDataTable, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
140
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXBaseDataTable }); }
140
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXBaseDataTable, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
141
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXBaseDataTable }); }
141
142
  }
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXBaseDataTable, decorators: [{
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXBaseDataTable, decorators: [{
143
144
  type: Injectable
144
145
  }], propDecorators: { dataSource: [{
145
146
  type: Input
@@ -168,16 +169,20 @@ class AXDataTableColumnComponent {
168
169
  this.width = 'auto';
169
170
  this.allowSorting = false;
170
171
  this.allowResizing = false;
172
+ /**
173
+ * When true, shows the cell content as tooltip on hover (via `axTooltip`).
174
+ */
175
+ this.hasTitle = false;
171
176
  this.sortIndex = undefined;
172
177
  this.sortOrder = undefined;
173
178
  }
174
179
  get cssClass() {
175
180
  return null;
176
181
  }
177
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
178
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableColumnComponent }); }
182
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
183
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableColumnComponent }); }
179
184
  }
180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableColumnComponent, decorators: [{
185
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableColumnComponent, decorators: [{
181
186
  type: Injectable
182
187
  }], propDecorators: { caption: [{
183
188
  type: Input
@@ -189,6 +194,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
189
194
  type: Input
190
195
  }], allowResizing: [{
191
196
  type: Input
197
+ }], hasTitle: [{
198
+ type: Input
192
199
  }], sortIndex: [{
193
200
  type: Input
194
201
  }], sortOrder: [{
@@ -259,10 +266,10 @@ class AXDataTableColumnResizableDirective {
259
266
  this.cdr.reattach(); // Reattach the change detector
260
267
  }
261
268
  }
262
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableColumnResizableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
263
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", type: AXDataTableColumnResizableDirective, isStandalone: true, selector: "[ax-table-column-resizble]", inputs: { column: ["ax-table-column-resizble", "column"] }, host: { listeners: { "mousedown": "onMouseDown($event)" } }, ngImport: i0 }); }
269
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableColumnResizableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
270
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.3", type: AXDataTableColumnResizableDirective, isStandalone: true, selector: "[ax-table-column-resizble]", inputs: { column: ["ax-table-column-resizble", "column"] }, host: { listeners: { "mousedown": "onMouseDown($event)" } }, ngImport: i0 }); }
264
271
  }
265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableColumnResizableDirective, decorators: [{
272
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableColumnResizableDirective, decorators: [{
266
273
  type: Directive,
267
274
  args: [{ selector: '[ax-table-column-resizble]' }]
268
275
  }], ctorParameters: () => [], propDecorators: { column: [{
@@ -345,7 +352,7 @@ class AXDataTableTextColumnComponent extends AXDataTableColumnComponent {
345
352
  return `cl-${this.dataField}`;
346
353
  }
347
354
  /**
348
- * Returns the display text for a row cell. Used for cell tooltip when title is enabled on the table.
355
+ * Returns the display text for a row cell. Used for cell tooltip when the column has `hasTitle`.
349
356
  */
350
357
  getCellDisplayText(rowData) {
351
358
  if (rowData == null)
@@ -357,8 +364,8 @@ class AXDataTableTextColumnComponent extends AXDataTableColumnComponent {
357
364
  const value = rowData[dataField];
358
365
  return !this.format ? value : this.formatService.format(value, this.format, this.formatOptions);
359
366
  }
360
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableTextColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
361
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: AXDataTableTextColumnComponent, isStandalone: true, selector: "ax-text-column", inputs: { width: "width", caption: "caption", allowSorting: "allowSorting", allowResizing: "allowResizing", fixed: "fixed", customExpandIcon: "customExpandIcon", customCollapseIcon: "customCollapseIcon", dataField: "dataField", expandHandler: "expandHandler", wrapText: "wrapText", cellTemplate: "cellTemplate", footerTemplate: "footerTemplate", headerTemplate: "headerTemplate", format: "format", formatOptions: "formatOptions" }, providers: [
367
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableTextColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
368
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXDataTableTextColumnComponent, isStandalone: true, selector: "ax-text-column", inputs: { width: "width", caption: "caption", allowSorting: "allowSorting", allowResizing: "allowResizing", fixed: "fixed", hasTitle: "hasTitle", customExpandIcon: "customExpandIcon", customCollapseIcon: "customCollapseIcon", dataField: "dataField", expandHandler: "expandHandler", wrapText: "wrapText", cellTemplate: "cellTemplate", footerTemplate: "footerTemplate", headerTemplate: "headerTemplate", format: "format", formatOptions: "formatOptions" }, providers: [
362
369
  {
363
370
  provide: AXDataTableColumnComponent,
364
371
  useExisting: AXDataTableTextColumnComponent,
@@ -367,7 +374,7 @@ class AXDataTableTextColumnComponent extends AXDataTableColumnComponent {
367
374
  ], viewQueries: [{ propertyName: "_contentCellTemplate", first: true, predicate: ["cell"], descendants: true }, { propertyName: "_contentFooterTemplate", first: true, predicate: ["footer"], descendants: true }, { propertyName: "_contentHeaderTemplate", first: true, predicate: ["header"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
368
375
  <ng-template #header>{{ caption }}</ng-template>
369
376
  <ng-template #cell let-row>
370
- <div class="flex items-center gap-2">
377
+ <div class="ax-flex ax-items-center ax-gap-2">
371
378
  @if (expandHandler && (row.data?.[grid.hasChildrenField] !== false || (row.data?.children?.length ?? 0) > 0)) {
372
379
  <div
373
380
  (click)="handleExpandRow(row)"
@@ -376,7 +383,7 @@ class AXDataTableTextColumnComponent extends AXDataTableColumnComponent {
376
383
  [style.padding-inline-start.rem]="row.data?.__meta__?.level * 2"
377
384
  >
378
385
  @if (loadingRow() === row) {
379
- <i class="fas fa-spinner-third animate-twSpin animate-infinite"></i>
386
+ <i class="fas fa-spinner-third ax-animate-twSpin ax-animate-infinite"></i>
380
387
  } @else {
381
388
  @if (row.data?.__meta__?.expanded) {
382
389
  <i [class]="customCollapseIcon || 'fas fa-chevron-down'"></i>
@@ -398,14 +405,14 @@ __decorate([
398
405
  __metadata("design:paramtypes", [Object, String]),
399
406
  __metadata("design:returntype", String)
400
407
  ], AXDataTableTextColumnComponent.prototype, "getDisplayText", null);
401
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableTextColumnComponent, decorators: [{
408
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableTextColumnComponent, decorators: [{
402
409
  type: Component,
403
410
  args: [{
404
411
  selector: 'ax-text-column',
405
412
  template: `
406
413
  <ng-template #header>{{ caption }}</ng-template>
407
414
  <ng-template #cell let-row>
408
- <div class="flex items-center gap-2">
415
+ <div class="ax-flex ax-items-center ax-gap-2">
409
416
  @if (expandHandler && (row.data?.[grid.hasChildrenField] !== false || (row.data?.children?.length ?? 0) > 0)) {
410
417
  <div
411
418
  (click)="handleExpandRow(row)"
@@ -414,7 +421,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
414
421
  [style.padding-inline-start.rem]="row.data?.__meta__?.level * 2"
415
422
  >
416
423
  @if (loadingRow() === row) {
417
- <i class="fas fa-spinner-third animate-twSpin animate-infinite"></i>
424
+ <i class="fas fa-spinner-third ax-animate-twSpin ax-animate-infinite"></i>
418
425
  } @else {
419
426
  @if (row.data?.__meta__?.expanded) {
420
427
  <i [class]="customCollapseIcon || 'fas fa-chevron-down'"></i>
@@ -438,7 +445,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
438
445
  },
439
446
  { provide: AXComponent, useExisting: AXDataTableTextColumnComponent },
440
447
  ],
441
- inputs: ['width', 'caption', 'allowSorting', 'allowResizing', 'fixed'],
448
+ inputs: ['width', 'caption', 'allowSorting', 'allowResizing', 'fixed', 'hasTitle'],
442
449
  }]
443
450
  }], propDecorators: { customExpandIcon: [{
444
451
  type: Input
@@ -649,8 +656,8 @@ class AXRowDropdownCommandColumnComponent extends AXBaseRowCommandColumnComponen
649
656
  };
650
657
  this.onItemClick.emit(args);
651
658
  }
652
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowDropdownCommandColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
653
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: AXRowDropdownCommandColumnComponent, isStandalone: true, selector: "ax-dropdown-command-column", inputs: { width: "width", caption: "caption", fixed: "fixed", footerTemplate: "footerTemplate", emptyStateTemplate: "emptyStateTemplate", emptyStateText: "emptyStateText", items: "items" }, outputs: { onItemClick: "onItemClick" }, providers: [
659
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowDropdownCommandColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
660
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXRowDropdownCommandColumnComponent, isStandalone: true, selector: "ax-dropdown-command-column", inputs: { width: "width", caption: "caption", fixed: "fixed", footerTemplate: "footerTemplate", emptyStateTemplate: "emptyStateTemplate", emptyStateText: "emptyStateText", items: "items" }, outputs: { onItemClick: "onItemClick" }, providers: [
654
661
  {
655
662
  provide: AXDataTableColumnComponent,
656
663
  useExisting: AXRowDropdownCommandColumnComponent,
@@ -701,7 +708,7 @@ class AXRowDropdownCommandColumnComponent extends AXBaseRowCommandColumnComponen
701
708
  <ng-template #footer></ng-template>
702
709
  `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: AXRippleDirective, selector: "[axRipple]", inputs: ["axRipple", "axRippleColor"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items", "closeParentOnClick", "lockOnLoading"], outputs: ["onItemClick"] }, { kind: "component", type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
703
710
  }
704
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowDropdownCommandColumnComponent, decorators: [{
711
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowDropdownCommandColumnComponent, decorators: [{
705
712
  type: Component,
706
713
  args: [{
707
714
  selector: 'ax-dropdown-command-column',
@@ -871,8 +878,8 @@ class AXRowCommandColumnComponent extends AXBaseRowCommandColumnComponent {
871
878
  };
872
879
  this.onItemClick.emit(args);
873
880
  }
874
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowCommandColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
875
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: AXRowCommandColumnComponent, isStandalone: true, selector: "ax-command-column", inputs: { width: "width", caption: "caption", fixed: "fixed", footerTemplate: "footerTemplate", items: "items" }, outputs: { onItemClick: "onItemClick" }, providers: [
881
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowCommandColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
882
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXRowCommandColumnComponent, isStandalone: true, selector: "ax-command-column", inputs: { width: "width", caption: "caption", fixed: "fixed", footerTemplate: "footerTemplate", items: "items" }, outputs: { onItemClick: "onItemClick" }, providers: [
876
883
  {
877
884
  provide: AXDataTableColumnComponent,
878
885
  useExisting: AXRowCommandColumnComponent,
@@ -889,7 +896,7 @@ class AXRowCommandColumnComponent extends AXBaseRowCommandColumnComponent {
889
896
  [disabled]="command.item.disabled || commandLoading()"
890
897
  [class.ax-state-disabled]="command.item.disabled"
891
898
  [axRipple]="!command.item.disabled"
892
- [look]="command.item.look ?? 'blank'"
899
+ [look]="command.item.look ?? 'solid'"
893
900
  (onClick)="handleOnItemClick($event, command.item, row.data)"
894
901
  >
895
902
  <ax-icon [icon]="command.item.icon"></ax-icon>
@@ -902,7 +909,7 @@ class AXRowCommandColumnComponent extends AXBaseRowCommandColumnComponent {
902
909
  </ng-template>
903
910
  <ng-template #footer></ng-template> `, isInline: true, dependencies: [{ kind: "directive", type: AXRippleDirective, selector: "[axRipple]", inputs: ["axRipple", "axRippleColor"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
904
911
  }
905
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowCommandColumnComponent, decorators: [{
912
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowCommandColumnComponent, decorators: [{
906
913
  type: Component,
907
914
  args: [{
908
915
  selector: 'ax-command-column',
@@ -918,7 +925,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
918
925
  [disabled]="command.item.disabled || commandLoading()"
919
926
  [class.ax-state-disabled]="command.item.disabled"
920
927
  [axRipple]="!command.item.disabled"
921
- [look]="command.item.look ?? 'blank'"
928
+ [look]="command.item.look ?? 'solid'"
922
929
  (onClick)="handleOnItemClick($event, command.item, row.data)"
923
930
  >
924
931
  <ax-icon [icon]="command.item.icon"></ax-icon>
@@ -1013,8 +1020,8 @@ class AXRowExpandColumnComponent extends AXDataTableColumnComponent {
1013
1020
  get loadingEnabled() {
1014
1021
  return false;
1015
1022
  }
1016
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowExpandColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1017
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: AXRowExpandColumnComponent, isStandalone: true, selector: "ax-expand-column", inputs: { width: "width", caption: "caption", fixed: "fixed" }, providers: [
1023
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowExpandColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1024
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXRowExpandColumnComponent, isStandalone: true, selector: "ax-expand-column", inputs: { width: "width", caption: "caption", fixed: "fixed" }, providers: [
1018
1025
  {
1019
1026
  provide: AXDataTableColumnComponent,
1020
1027
  useExisting: AXRowExpandColumnComponent,
@@ -1030,7 +1037,7 @@ class AXRowExpandColumnComponent extends AXDataTableColumnComponent {
1030
1037
  [style.padding-inline-start.rem]="row.data?.__meta__?.level * 1.5"
1031
1038
  >
1032
1039
  @if (loadingRow() === row) {
1033
- <i class="fas fa-spinner-third animate-twSpin animate-infinite"></i>
1040
+ <i class="fas fa-spinner-third ax-animate-twSpin ax-animate-infinite"></i>
1034
1041
  } @else {
1035
1042
  @if (row.data?.__meta__?.expanded) {
1036
1043
  <i class="fas fa-chevron-down"></i>
@@ -1044,7 +1051,7 @@ class AXRowExpandColumnComponent extends AXDataTableColumnComponent {
1044
1051
  <ng-template #footer></ng-template>
1045
1052
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1046
1053
  }
1047
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowExpandColumnComponent, decorators: [{
1054
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowExpandColumnComponent, decorators: [{
1048
1055
  type: Component,
1049
1056
  args: [{
1050
1057
  selector: 'ax-expand-column',
@@ -1058,7 +1065,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
1058
1065
  [style.padding-inline-start.rem]="row.data?.__meta__?.level * 1.5"
1059
1066
  >
1060
1067
  @if (loadingRow() === row) {
1061
- <i class="fas fa-spinner-third animate-twSpin animate-infinite"></i>
1068
+ <i class="fas fa-spinner-third ax-animate-twSpin ax-animate-infinite"></i>
1062
1069
  } @else {
1063
1070
  @if (row.data?.__meta__?.expanded) {
1064
1071
  <i class="fas fa-chevron-down"></i>
@@ -1166,8 +1173,8 @@ class AXRowIndexColumnComponent extends AXDataTableColumnComponent {
1166
1173
  get cssClass() {
1167
1174
  return 'ax-index-column';
1168
1175
  }
1169
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowIndexColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1170
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: AXRowIndexColumnComponent, isStandalone: true, selector: "ax-index-column", inputs: { width: "width", caption: "caption", fixed: "fixed", footerTemplate: "footerTemplate", padZero: "padZero" }, providers: [
1176
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowIndexColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1177
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.3", type: AXRowIndexColumnComponent, isStandalone: true, selector: "ax-index-column", inputs: { width: "width", caption: "caption", fixed: "fixed", footerTemplate: "footerTemplate", padZero: "padZero" }, providers: [
1171
1178
  AXUnsubscriber,
1172
1179
  {
1173
1180
  provide: AXDataTableColumnComponent,
@@ -1180,7 +1187,7 @@ class AXRowIndexColumnComponent extends AXDataTableColumnComponent {
1180
1187
  </ng-template>
1181
1188
  <ng-template #footer></ng-template> `, isInline: true, dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXFormatPipe, name: "format" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1182
1189
  }
1183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowIndexColumnComponent, decorators: [{
1190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowIndexColumnComponent, decorators: [{
1184
1191
  type: Component,
1185
1192
  args: [{
1186
1193
  selector: 'ax-index-column',
@@ -1322,8 +1329,8 @@ class AXRowSelectColumnComponent extends AXDataTableColumnComponent {
1322
1329
  get cssClass() {
1323
1330
  return 'ax-select-column';
1324
1331
  }
1325
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowSelectColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1326
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: AXRowSelectColumnComponent, isStandalone: true, selector: "ax-select-column", inputs: { width: "width", caption: "caption", fixed: "fixed" }, providers: [
1332
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowSelectColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1333
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.3", type: AXRowSelectColumnComponent, isStandalone: true, selector: "ax-select-column", inputs: { width: "width", caption: "caption", fixed: "fixed" }, providers: [
1327
1334
  {
1328
1335
  provide: AXDataTableColumnComponent,
1329
1336
  useExisting: AXRowSelectColumnComponent,
@@ -1353,7 +1360,7 @@ class AXRowSelectColumnComponent extends AXDataTableColumnComponent {
1353
1360
  </ng-template>
1354
1361
  <ng-template #footer></ng-template> `, isInline: true, dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "component", type: i2$1.AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "color", "value", "name", "id", "isLoading", "indeterminate"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1355
1362
  }
1356
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXRowSelectColumnComponent, decorators: [{
1363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowSelectColumnComponent, decorators: [{
1357
1364
  type: Component,
1358
1365
  args: [{
1359
1366
  selector: 'ax-select-column',
@@ -1415,10 +1422,6 @@ class AXDataTableComponent extends AXBaseDataTable {
1415
1422
  this._zone = inject(NgZone);
1416
1423
  this.document = inject(DOCUMENT);
1417
1424
  this.platformID = inject(PLATFORM_ID);
1418
- /**
1419
- * When true, shows the cell content as tooltip (title attribute) on hover.
1420
- */
1421
- this.title = false;
1422
1425
  /**
1423
1426
  * @ignore
1424
1427
  */
@@ -1747,7 +1750,7 @@ class AXDataTableComponent extends AXBaseDataTable {
1747
1750
  });
1748
1751
  }
1749
1752
  /**
1750
- * Returns the display text for a cell. Used for the native title (tooltip) on each cell.
1753
+ * Returns the display text for a cell. Used for the cell tooltip when the column has `hasTitle`.
1751
1754
  */
1752
1755
  getCellTooltipText(column, rowData) {
1753
1756
  if (rowData == null || typeof rowData !== 'object')
@@ -2259,16 +2262,16 @@ class AXDataTableComponent extends AXBaseDataTable {
2259
2262
  }
2260
2263
  }
2261
2264
  }
2262
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2263
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: AXDataTableComponent, isStandalone: true, selector: "ax-data-table", inputs: { dataSource: "dataSource", selectedRows: "selectedRows", parentField: "parentField", hasChildrenField: "hasChildrenField", rowDetailsTemplate: "rowDetailsTemplate", title: "title", rowTemplate: "rowTemplate", emptyTemplate: "emptyTemplate", noDataTemplate: "noDataTemplate", alternative: "alternative", showHeader: "showHeader", fixedHeader: "fixedHeader", showFooter: "showFooter", fixedFooter: "fixedFooter", itemHeight: "itemHeight", allowReordering: "allowReordering", paging: "paging", fetchDataMode: "fetchDataMode", loading: "loading", focusedRow: "focusedRow" }, outputs: { selectedRowsChange: "selectedRowsChange", focusedRowChange: "focusedRowChange", onRowClick: "onRowClick", onRowDbClick: "onRowDbClick", onColumnsOrderChanged: "onColumnsOrderChanged", onColumnSizeChanged: "onColumnSizeChanged", onPageChanged: "onPageChanged" }, host: { attributes: { "ngSkipHydration": "true" } }, providers: [
2265
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2266
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXDataTableComponent, isStandalone: true, selector: "ax-data-table", inputs: { dataSource: "dataSource", selectedRows: "selectedRows", parentField: "parentField", hasChildrenField: "hasChildrenField", rowDetailsTemplate: "rowDetailsTemplate", rowTemplate: "rowTemplate", emptyTemplate: "emptyTemplate", noDataTemplate: "noDataTemplate", alternative: "alternative", showHeader: "showHeader", fixedHeader: "fixedHeader", showFooter: "showFooter", fixedFooter: "fixedFooter", itemHeight: "itemHeight", allowReordering: "allowReordering", paging: "paging", fetchDataMode: "fetchDataMode", loading: "loading", focusedRow: "focusedRow" }, outputs: { selectedRowsChange: "selectedRowsChange", focusedRowChange: "focusedRowChange", onRowClick: "onRowClick", onRowDbClick: "onRowDbClick", onColumnsOrderChanged: "onColumnsOrderChanged", onColumnSizeChanged: "onColumnSizeChanged", onPageChanged: "onPageChanged" }, host: { attributes: { "ngSkipHydration": "true" } }, providers: [
2264
2267
  { provide: AXBaseDataTable, useExisting: AXDataTableComponent },
2265
2268
  AXUnsubscriber,
2266
2269
  { provide: AXComponent, useExisting: AXDataTableComponent },
2267
- ], queries: [{ propertyName: "customDataPager", first: true, predicate: AXDataPagerComponent, descendants: true, static: true }, { propertyName: "columns", predicate: AXDataTableColumnComponent }], viewQueries: [{ propertyName: "dataPager", first: true, predicate: ["dataPager"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"> </ng-content>\n<div class=\"ax-data-table-wrapper\">\n <table>\n @if (showHeader) {\n <thead [ngClass]=\"{ 'ax-data-table-sticky-header': fixedHeader }\">\n <tr\n [cdkDropListDisabled]=\"!allowReordering\"\n cdkDropList\n cdkScrollable\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-start\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n @for (c of normalColumnsList(); track $index) {\n <th\n cdkDrag\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </th>\n }\n <th></th>\n @for (c of endFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n </tr>\n </thead>\n }\n <tbody [ngClass]=\"{ 'ax-data-table-row-alternative': alternative }\">\n @if (showNoDataLoadedYet) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (noDataTemplate) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-data-yet' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else if (!displayedRows().length) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (emptyTemplate) {\n <ng-container [ngTemplateOutlet]=\"emptyTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-record' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else {\n @for (row of displayedRows(); let rowIndex = $index; track rowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row, rowIndex } }\"\n ></ng-container>\n }\n\n <ng-template #rowTemp let-data=\"data\">\n @if (rowTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n >\n </ng-container>\n } @else {\n <tr\n [class.ax-state-focused]=\"focusedRow && data.row === focusedRow\"\n [attr.data-index]=\"data.rowIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(data.row)\"\n style.height=\"{{ itemHeight }}px\"\n style.max-height=\"{{ itemHeight }}px\"\n (click)=\"handleRowClick($event, data.row)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"title && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n <td><div class=\"ax-bg\"></div></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </td>\n }\n </tr>\n @if (data.row?.__meta__?.expanded) {\n @if (rowDetailsTemplate) {\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n <td class=\"ax-data-table-row-details\" [attr.colspan]=\"normalColumnsList().length + 1\">\n <ng-container\n [ngTemplateOutlet]=\"rowDetailsTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n ></ng-container>\n </td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n </tr>\n }\n @for (childRow of data.row.children; let childRowIndex = $index; track childRowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row: childRow, rowIndex: childRowIndex } }\"\n ></ng-container>\n }\n }\n }\n </ng-template>\n\n <tr class=\"empty-row\"></tr>\n }\n </tbody>\n @if (showFooter) {\n <tfoot [ngClass]=\"{ 'ax-data-table-sticky-footer': fixedFooter }\">\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-start\"\n [class.ax-data-table-sticky-footer-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </td>\n }\n <td></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n@if (paging) {\n <div class=\"ax-table-footer\" #footerContainer>\n <ng-template #customPager>\n <ng-content select=\"ax-data-pager\"></ng-content>\n </ng-template>\n\n @if (customDataPager) {\n <ng-container [ngTemplateOutlet]=\"customPager\"></ng-container>\n } @else {\n <ax-data-pager\n #dataPager\n [displayMode]=\"'custom'\"\n (onChanged)=\"handleChangePage($event)\"\n [total]=\"dataSource.totalCount\"\n [size]=\"dataSource.pageSize\"\n [isLoading]=\"isLoading()\"\n >\n <ax-prefix class=\"ax-data-table-numeric-paging\">\n <ax-data-pager-numeric-selector> </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes> </ax-data-pager-page-sizes>\n </ax-prefix>\n <ax-prefix class=\"ax-data-table-input-paging\">\n <ax-data-pager-prev-buttons> </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector> </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons> </ax-data-pager-next-buttons>\n </ax-prefix>\n <ax-suffix class=\"ax-data-table-info\">\n <ax-data-pager-info> </ax-data-pager-info>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh({ reset: false })\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-data-pager>\n }\n </div>\n}\n<ng-content select=\"ax-footer\"> </ng-content>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer components{ax-data-table{height:100%;min-height:inherit;border-radius:var(--ax-sys-border-radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));width:100%;font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-leading:calc(var(--spacing,.25rem) * 4);line-height:calc(var(--spacing,.25rem) * 4);flex-direction:column;display:flex;position:relative;overflow:hidden}ax-data-table td.ax-data-table-empty-data{height:calc(var(--spacing,.25rem) * 32);border-bottom-style:var(--tw-border-style);width:100%;padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 8);text-align:center;vertical-align:middle;border-bottom-width:0;top:50%;transform:translateY(-50%);background-color:#0000!important;position:absolute!important}ax-data-table td.ax-data-table-empty-data span{height:100%;font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));color:rgba(var(--ax-sys-color-surface));justify-content:center;align-items:center;display:flex}ax-data-table .ax-data-table-wrapper{border-radius:var(--ax-sys-border-radius);flex:1;width:100%;overflow:auto}ax-data-table .ax-data-table-wrapper table{table-layout:fixed;width:100%;height:100%;display:table;overflow-x:auto}ax-data-table .ax-data-table-wrapper table thead{border-start-start-radius:var(--ax-sys-border-radius);border-start-end-radius:var(--ax-sys-border-radius);overflow:hidden}ax-data-table .ax-data-table-wrapper table thead th{height:calc(var(--spacing,.25rem) * 10);border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-bottom-style:var(--tw-border-style);background-color:var(--color-lighter);color:var(--color-on-lighter);border-bottom-width:1px;border-color:var(--color-border-lighter);padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 3);text-align:start;--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;position:relative;overflow:hidden;border-color:rgba(var(--ax-sys-color-border-surface))!important}ax-data-table .ax-data-table-wrapper table thead th:where(.ax-dark,.ax-dark *){background-color:var(--color-darker);color:var(--color-on-darker);border-color:var(--color-border-darker)}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-light-surface))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle{top:calc(var(--spacing,.25rem) * 0);right:calc(var(--spacing,.25rem) * 0);bottom:calc(var(--spacing,.25rem) * 0);height:100%;width:calc(var(--spacing,.25rem) * 1);cursor:col-resize;background-color:#0000;position:absolute}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover{background-color:rgba(var(--ax-sys-color-primary-light-surface))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-primary-dark-surface))}ax-data-table .ax-data-table-wrapper table thead th .ax-caption{align-items:center;gap:calc(var(--spacing,.25rem) * 2);display:flex}ax-data-table .ax-data-table-wrapper table thead th:last-child{border-inline-end-style:var(--tw-border-style);border-inline-end-width:0}ax-data-table .ax-data-table-wrapper table thead.ax-data-table-sticky-header{top:calc(var(--spacing,.25rem) * 0);z-index:3;border-block-style:var(--tw-border-style);--tw-shadow:inset 1px 1px 0px 2px var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-block-width:0;position:sticky}@media screen and (min-width:768px){ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell{z-index:2;border-inline-style:var(--tw-border-style);border-inline-width:0;position:sticky}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start{--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.isLast{--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.isLast:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.isFirst{--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.isFirst:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell{z-index:2;border-inline-style:var(--tw-border-style);border-inline-width:0;position:sticky}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start{--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.isLast{--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.isLast:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.isFirst{--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.isFirst:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}ax-data-table .ax-data-table-wrapper table tbody tr td{z-index:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-data-table-cell-tooltip-wrapper{min-height:inherit;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-bg{top:calc(var(--spacing,.25rem) * 0);left:calc(var(--spacing,.25rem) * 0);z-index:-1;border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));opacity:.3;background-color:#0000;width:100%;height:100%;position:absolute}ax-data-table .ax-data-table-wrapper table tbody tr{height:calc(var(--spacing,.25rem) * 10);max-height:calc(var(--spacing,.25rem) * 10);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-surface))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-primary-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-primary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column):where(.ax-dark,.ax-dark *){color:rgba(var(--ax-sys-color-on-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-on-primary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-on-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-primary-dark-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-surface))}ax-data-table .ax-data-table-wrapper table tbody .empty-row{background-color:var(--color-red-500,oklch(63.7% .237 25.331))!important;height:auto!important}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td{background-color:rgba(var(--ax-sys-color-light-surface));color:rgba(var(--ax-sys-color-on-light-surface))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) ax-skeleton{width:25%}ax-data-table .ax-data-table-wrapper table tbody td{min-width:calc(var(--spacing,.25rem) * 8);border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-lightest-surface));padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 2);vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;position:relative;overflow:hidden}ax-data-table .ax-data-table-wrapper table tbody td:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-darkest-surface))}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler{cursor:pointer;padding-inline:calc(var(--spacing,.25rem) * 1)}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler.has-parent{padding-inline-start:calc(var(--spacing,.25rem) * 6)!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column{background-color:rgba(var(--ax-sys-color-light-surface));text-align:center;text-overflow:ellipsis;white-space:nowrap;color:rgba(var(--ax-sys-color-on-light-surface));overflow:hidden}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-dark-surface));color:rgba(var(--ax-sys-color-on-dark-surface))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column{text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column button.ax-state-disabled{cursor:not-allowed!important;opacity:.5!important;position:relative!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column>div{inset-inline-start:calc(var(--spacing,.25rem) * 0);justify-content:center;align-items:center;width:100%;display:flex;position:absolute;top:50%;transform:translateY(-50%)}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{width:1.4rem;height:1.4rem}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button ax-icon{font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{cursor:pointer;border-style:var(--tw-border-style);text-overflow:ellipsis;white-space:nowrap;border-width:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover:not(ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-selected,ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-disabled){opacity:.75}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:active{opacity:1}ax-data-table .ax-data-table-wrapper table tbody td:last-child{border-inline-end-style:var(--tw-border-style);border-inline-end-width:0}ax-data-table .ax-data-table-wrapper table tbody td ax-skeleton{height:calc(var(--spacing,.25rem) * 3.5);border-radius:var(--radius-md,.375rem);width:33.3333%}ax-data-table .ax-data-table-wrapper table tfoot tr td{height:calc(var(--spacing,.25rem) * 10);border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-lighter-surface));padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 3);text-align:start;--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);text-overflow:ellipsis;white-space:nowrap;color:rgba(var(--ax-sys-color-on-lighter-surface));text-transform:uppercase;position:relative;overflow:hidden}ax-data-table .ax-data-table-wrapper table tfoot tr td:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-darker-surface));color:rgba(var(--ax-sys-color-on-darker-surface))}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-light-surface))}@media screen and (min-width:768px){ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell{z-index:2;border-inline-style:var(--tw-border-style);border-inline-width:0;position:sticky}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start{--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.isLast{--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end{--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.isFirst{--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}ax-data-table .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{z-index:3;border-block-style:var(--tw-border-style);--tw-shadow:1px 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface))), 0 -1px 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-block-width:0;position:sticky;bottom:-1px}@media screen and (min-width:768px){ax-data-table .ax-data-table-wrapper table .sticky-end{inset-inline-end:var(--sticky-end)}ax-data-table .ax-data-table-wrapper table .sticky-start{inset-inline-start:var(--sticky-start)}}ax-data-table ax-data-pager{justify-content:center}@media(min-width:48rem){ax-data-table ax-data-pager{justify-content:space-between}}ax-data-table .ax-table-footer{border-collapse:collapse;border-top-style:var(--tw-border-style);border-top-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));min-height:max-content;padding-inline:calc(var(--spacing,.25rem) * 3.5);overflow:hidden}ax-data-table .ax-table-footer .ax-table-info{flex:1;justify-content:space-between;align-items:center;display:flex}ax-data-table .ax-data-table-numeric-paging{display:none}@media(min-width:64rem){ax-data-table .ax-data-table-numeric-paging{display:flex}}ax-data-table .ax-data-table-input-paging{display:flex}@media(min-width:64rem){ax-data-table .ax-data-table-input-paging{display:none}}ax-data-table .ax-data-table-info{justify-content:center;align-items:center;display:none}@media(min-width:48rem){ax-data-table .ax-data-table-info{display:flex}}ax-data-table .ax-data-table-info ax-text{color:rgba(var(--ax-sys-color-on-surface))}.cdk-drag-preview{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-surface));padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 3);text-align:start;--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);color:rgba(var(--ax-sys-color-on-surface));text-transform:uppercase;--tw-shadow:0 5px 5px -3px var(--tw-shadow-color,rgba(var(--ax-sys-color-primary-900),.2)), 0 8px 10px 1px var(--tw-shadow-color,rgba(var(--ax-sys-color-primary-900),.14)), 0 3px 14px 2px var(--tw-shadow-color,rgba(var(--ax-sys-color-primary-900),.12));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);position:relative}.ax-dropdown-command-empty-state-text{font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)))}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "component", type: AXDataPagerComponent, selector: "ax-data-pager", inputs: ["value", "name", "disabled", "readonly", "isLoading", "size", "total", "displayMode"], outputs: ["valueChange", "onValueChanged", "disabledChange", "readonlyChange", "displayModeChange", "onChanged"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDataPagerNumericSelectorComponent, selector: "ax-data-pager-numeric-selector" }, { kind: "component", type: AXDataPagerPageSizesComponent, selector: "ax-data-pager-page-sizes", inputs: ["sizes"] }, { kind: "component", type: AXDataPagerPrevButtonsComponent, selector: "ax-data-pager-prev-buttons" }, { kind: "component", type: AXDataPagerInputSelectorComponent, selector: "ax-data-pager-input-selector" }, { kind: "component", type: AXDataPagerNextButtonsComponent, selector: "ax-data-pager-next-buttons" }, { kind: "component", type: AXDataPagerInfoComponent, selector: "ax-data-pager-info", inputs: ["text"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "directive", type: AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2270
+ ], queries: [{ propertyName: "customDataPager", first: true, predicate: AXDataPagerComponent, descendants: true, static: true }, { propertyName: "columns", predicate: AXDataTableColumnComponent }], viewQueries: [{ propertyName: "dataPager", first: true, predicate: ["dataPager"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"> </ng-content>\n<div class=\"ax-data-table-wrapper\">\n <table>\n @if (showHeader) {\n <thead [ngClass]=\"{ 'ax-data-table-sticky-header': fixedHeader }\">\n <tr\n [cdkDropListDisabled]=\"!allowReordering\"\n cdkDropList\n cdkScrollable\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-start\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n @for (c of normalColumnsList(); track $index) {\n <th\n cdkDrag\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </th>\n }\n <th></th>\n @for (c of endFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n </tr>\n </thead>\n }\n <tbody [ngClass]=\"{ 'ax-data-table-row-alternative': alternative }\">\n @if (showNoDataLoadedYet) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (noDataTemplate) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-data-yet' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else if (!displayedRows().length) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (emptyTemplate) {\n <ng-container [ngTemplateOutlet]=\"emptyTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-record' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else {\n @for (row of displayedRows(); let rowIndex = $index; track rowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row, rowIndex } }\"\n ></ng-container>\n }\n\n <ng-template #rowTemp let-data=\"data\">\n @if (rowTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n >\n </ng-container>\n } @else {\n <tr\n [class.ax-state-focused]=\"focusedRow && data.row === focusedRow\"\n [attr.data-index]=\"data.rowIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(data.row)\"\n style.height=\"{{ itemHeight }}px\"\n style.max-height=\"{{ itemHeight }}px\"\n (click)=\"handleRowClick($event, data.row)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n <td><div class=\"ax-bg\"></div></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n </tr>\n @if (data.row?.__meta__?.expanded) {\n @if (rowDetailsTemplate) {\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n <td class=\"ax-data-table-row-details\" [attr.colspan]=\"normalColumnsList().length + 1\">\n <ng-container\n [ngTemplateOutlet]=\"rowDetailsTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n ></ng-container>\n </td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n </tr>\n }\n @for (childRow of data.row.children; let childRowIndex = $index; track childRowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row: childRow, rowIndex: childRowIndex } }\"\n ></ng-container>\n }\n }\n }\n </ng-template>\n\n <tr class=\"empty-row\"></tr>\n }\n </tbody>\n @if (showFooter) {\n <tfoot [ngClass]=\"{ 'ax-data-table-sticky-footer': fixedFooter }\">\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-start\"\n [class.ax-data-table-sticky-footer-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </td>\n }\n <td></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n@if (paging) {\n <div class=\"ax-table-footer\" #footerContainer>\n <ng-template #customPager>\n <ng-content select=\"ax-data-pager\"></ng-content>\n </ng-template>\n\n @if (customDataPager) {\n <ng-container [ngTemplateOutlet]=\"customPager\"></ng-container>\n } @else {\n <ax-data-pager\n #dataPager\n [displayMode]=\"'custom'\"\n (onChanged)=\"handleChangePage($event)\"\n [total]=\"dataSource.totalCount\"\n [size]=\"dataSource.pageSize\"\n [isLoading]=\"isLoading()\"\n >\n <ax-prefix class=\"ax-data-table-numeric-paging\">\n <ax-data-pager-numeric-selector> </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes> </ax-data-pager-page-sizes>\n </ax-prefix>\n <ax-prefix class=\"ax-data-table-input-paging\">\n <ax-data-pager-prev-buttons> </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector> </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons> </ax-data-pager-next-buttons>\n </ax-prefix>\n <ax-suffix class=\"ax-data-table-info\">\n <ax-data-pager-info> </ax-data-pager-info>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh({ reset: false })\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-data-pager>\n }\n </div>\n}\n<ng-content select=\"ax-footer\"> </ng-content>\n", styles: ["ax-data-table{--ax-comp-data-table-font-size: .875rem;--ax-comp-data-table-line-height: 1rem;--ax-comp-data-table-border-color: var(--ax-sys-color-border-surface);--ax-comp-data-table-border-radius: var(--ax-sys-border-radius);--ax-comp-data-table-column-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-lightest-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-primary-lightest-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-lighter-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-interactive-bg-color: var(--ax-sys-color-light-surface)}.ax-dark ax-data-table{--ax-comp-data-table-column-bg-color: var(--ax-sys-color-darkest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-dark-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-dark-surface)}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table{display:flex;flex-direction:column;height:100%;width:100%;font-size:var(--ax-comp-data-table-font-size);line-height:var(--ax-comp-data-table-line-height);border-radius:var(--ax-comp-data-table-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));position:relative;min-height:inherit;overflow:hidden}ax-data-table td.ax-data-table-empty-data{background:transparent!important;position:absolute!important;padding:2rem 1rem;text-align:center;vertical-align:middle;height:8rem;border-bottom:none;top:50%;transform:translateY(-50%);width:100%}ax-data-table td.ax-data-table-empty-data span{color:rgb(var(--ax-sys-color-ghost-500));font-size:var(--ax-comp-data-table-font-size);display:flex;height:100%;align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper{overflow:auto;width:100%;flex:1;border-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table{display:table;height:100%;width:100%;table-layout:fixed;overflow-x:auto}ax-data-table .ax-data-table-wrapper table thead{overflow:hidden;border-start-end-radius:var(--ax-comp-data-table-border-radius);border-start-start-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table thead th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-header-bg-color));color:rgba(var(--ax-comp-data-table-header-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle{position:absolute;inset-inline-end:0px;top:0;bottom:0;width:.25rem;height:100%;cursor:col-resize;background:transparent}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover{background-color:rgba(var(--ax-comp-data-table-handler-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-data-table .ax-data-table-wrapper table thead th:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table thead.ax-data-table-sticky-header{position:sticky;top:0;border-top:none;border-bottom:none;z-index:3;box-shadow:inset 1px 1px 0 2px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell{position:sticky;z-index:2;background-color:rgba(var(--ax-comp-data-table-column-bg-color));border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tbody tr td{z-index:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-data-table-cell-tooltip-wrapper{position:relative;min-height:inherit}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-bg{top:0;left:0;z-index:-1;width:100%;height:100%;position:absolute;border-inline-end:1px solid rgba(var(--ax-comp-data-table-border-color));background-color:transparent;opacity:.3}ax-data-table .ax-data-table-wrapper table tbody .empty-row{height:auto!important}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td{background-color:rgba(var(--ax-comp-data-table-alternative-bg-color));color:rgba(var(--ax-comp-data-table-alternative-text-color))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) ax-skeleton{width:25%}ax-data-table .ax-data-table-wrapper table tbody tr{height:2.5rem;max-height:2.5rem}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-focus-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-focus-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-column-bg-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.5rem;padding-bottom:.5rem;vertical-align:middle}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler{padding-inline-start:.25rem;padding-inline-end:.25rem;cursor:pointer}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler.has-parent{padding-inline-start:1.5rem!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-comp-data-table-index-bg-color));color:rgba(var(--ax-comp-data-table-index-text-color));text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column{text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button{--ax-comp-button-font-size: .75rem;--ax-comp-button-padding-x: .25rem;--ax-comp-button-decorator-padding-x: .25rem;--ax-comp-button-icon-only-font-size: .875rem;--ax-sys-size-base: 1.5rem;margin-left:.25rem;margin-right:.25rem}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button ax-loading .ax-loader{width:.75rem!important;height:.75rem!important;border-width:2px!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-comp-data-table-border-radius);border-style:none;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover:not(ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-selected,ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-disabled){opacity:.75}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:active{opacity:1}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-data-table .ax-data-table-wrapper table tbody td:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table tbody td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem;background-color:rgba(var(--ax-comp-data-table-skeleton-bg-color))}ax-data-table .ax-data-table-wrapper table tfoot tr td{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-footer-bg-color));color:rgba(var(--ax-comp-data-table-footer-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{position:sticky;bottom:-1px;border-top:none;border-bottom:none;z-index:3;box-shadow:1px 0 rgba(var(--ax-comp-data-table-border-color)),0 -1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table .sticky-end{inset-inline-end:var(--sticky-end)}ax-data-table .ax-data-table-wrapper table .sticky-start{inset-inline-start:var(--sticky-start)}}ax-data-table ax-data-pager{justify-content:center}ax-data-table .ax-table-footer{border-top-width:1px;border-collapse:collapse;overflow:hidden;border-color:rgba(var(--ax-comp-data-table-border-color));padding-inline-start:.875rem;padding-inline-end:.875rem;min-height:max-content}ax-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-data-table .ax-data-table-numeric-paging{display:none}ax-data-table .ax-data-table-input-paging{display:flex}ax-data-table .ax-data-table-info{display:none}@media (min-width: 1024px){ax-data-table .ax-data-table-numeric-paging{display:flex}ax-data-table .ax-data-table-input-paging{display:none}}@media (min-width: 768px){ax-data-table .ax-data-table-info{display:flex;align-items:center}ax-data-table ax-data-pager{justify-content:space-between}}.cdk-drag-preview{border-bottom-width:1px;border-inline-end-width:1px;box-shadow:0 5px 5px -3px rgba(var(--ax-sys-color-primary-900),.2),0 8px 10px 1px rgba(var(--ax-sys-color-primary-900),.14),0 3px 14px 2px rgba(var(--ax-sys-color-primary-900),.12);border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-sys-color-surface));color:rgba(var(--ax-sys-color-surface-fore));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}.ax-dropdown-command-empty-state-text{color:rgba(var(--ax-sys-color-on-surface-variant-500));font-size:.75rem}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "component", type: AXDataPagerComponent, selector: "ax-data-pager", inputs: ["value", "name", "disabled", "readonly", "isLoading", "size", "total", "displayMode"], outputs: ["valueChange", "onValueChanged", "disabledChange", "readonlyChange", "displayModeChange", "onChanged"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDataPagerNumericSelectorComponent, selector: "ax-data-pager-numeric-selector" }, { kind: "component", type: AXDataPagerPageSizesComponent, selector: "ax-data-pager-page-sizes", inputs: ["sizes"] }, { kind: "component", type: AXDataPagerPrevButtonsComponent, selector: "ax-data-pager-prev-buttons" }, { kind: "component", type: AXDataPagerInputSelectorComponent, selector: "ax-data-pager-input-selector" }, { kind: "component", type: AXDataPagerNextButtonsComponent, selector: "ax-data-pager-next-buttons" }, { kind: "component", type: AXDataPagerInfoComponent, selector: "ax-data-pager-info", inputs: ["text"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "directive", type: AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2268
2271
  }
2269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableComponent, decorators: [{
2272
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableComponent, decorators: [{
2270
2273
  type: Component,
2271
- args: [{ selector: 'ax-data-table', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { ngSkipHydration: 'true' }, inputs: ['dataSource', 'selectedRows', 'parentField', 'hasChildrenField', 'rowDetailsTemplate', 'title'], outputs: ['selectedRowsChange'], providers: [
2274
+ args: [{ selector: 'ax-data-table', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { ngSkipHydration: 'true' }, inputs: ['dataSource', 'selectedRows', 'parentField', 'hasChildrenField', 'rowDetailsTemplate'], outputs: ['selectedRowsChange'], providers: [
2272
2275
  { provide: AXBaseDataTable, useExisting: AXDataTableComponent },
2273
2276
  AXUnsubscriber,
2274
2277
  { provide: AXComponent, useExisting: AXDataTableComponent },
@@ -2292,7 +2295,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2292
2295
  AsyncPipe,
2293
2296
  AXTranslatorPipe,
2294
2297
  AXTooltipDirective
2295
- ], template: "<ng-content select=\"ax-header\"> </ng-content>\n<div class=\"ax-data-table-wrapper\">\n <table>\n @if (showHeader) {\n <thead [ngClass]=\"{ 'ax-data-table-sticky-header': fixedHeader }\">\n <tr\n [cdkDropListDisabled]=\"!allowReordering\"\n cdkDropList\n cdkScrollable\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-start\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n @for (c of normalColumnsList(); track $index) {\n <th\n cdkDrag\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </th>\n }\n <th></th>\n @for (c of endFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n </tr>\n </thead>\n }\n <tbody [ngClass]=\"{ 'ax-data-table-row-alternative': alternative }\">\n @if (showNoDataLoadedYet) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (noDataTemplate) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-data-yet' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else if (!displayedRows().length) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (emptyTemplate) {\n <ng-container [ngTemplateOutlet]=\"emptyTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-record' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else {\n @for (row of displayedRows(); let rowIndex = $index; track rowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row, rowIndex } }\"\n ></ng-container>\n }\n\n <ng-template #rowTemp let-data=\"data\">\n @if (rowTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n >\n </ng-container>\n } @else {\n <tr\n [class.ax-state-focused]=\"focusedRow && data.row === focusedRow\"\n [attr.data-index]=\"data.rowIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(data.row)\"\n style.height=\"{{ itemHeight }}px\"\n style.max-height=\"{{ itemHeight }}px\"\n (click)=\"handleRowClick($event, data.row)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"title && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n <td><div class=\"ax-bg\"></div></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </td>\n }\n </tr>\n @if (data.row?.__meta__?.expanded) {\n @if (rowDetailsTemplate) {\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n <td class=\"ax-data-table-row-details\" [attr.colspan]=\"normalColumnsList().length + 1\">\n <ng-container\n [ngTemplateOutlet]=\"rowDetailsTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n ></ng-container>\n </td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n </tr>\n }\n @for (childRow of data.row.children; let childRowIndex = $index; track childRowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row: childRow, rowIndex: childRowIndex } }\"\n ></ng-container>\n }\n }\n }\n </ng-template>\n\n <tr class=\"empty-row\"></tr>\n }\n </tbody>\n @if (showFooter) {\n <tfoot [ngClass]=\"{ 'ax-data-table-sticky-footer': fixedFooter }\">\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-start\"\n [class.ax-data-table-sticky-footer-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </td>\n }\n <td></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n@if (paging) {\n <div class=\"ax-table-footer\" #footerContainer>\n <ng-template #customPager>\n <ng-content select=\"ax-data-pager\"></ng-content>\n </ng-template>\n\n @if (customDataPager) {\n <ng-container [ngTemplateOutlet]=\"customPager\"></ng-container>\n } @else {\n <ax-data-pager\n #dataPager\n [displayMode]=\"'custom'\"\n (onChanged)=\"handleChangePage($event)\"\n [total]=\"dataSource.totalCount\"\n [size]=\"dataSource.pageSize\"\n [isLoading]=\"isLoading()\"\n >\n <ax-prefix class=\"ax-data-table-numeric-paging\">\n <ax-data-pager-numeric-selector> </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes> </ax-data-pager-page-sizes>\n </ax-prefix>\n <ax-prefix class=\"ax-data-table-input-paging\">\n <ax-data-pager-prev-buttons> </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector> </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons> </ax-data-pager-next-buttons>\n </ax-prefix>\n <ax-suffix class=\"ax-data-table-info\">\n <ax-data-pager-info> </ax-data-pager-info>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh({ reset: false })\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-data-pager>\n }\n </div>\n}\n<ng-content select=\"ax-footer\"> </ng-content>\n", styles: ["@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer components{ax-data-table{height:100%;min-height:inherit;border-radius:var(--ax-sys-border-radius);border-style:var(--tw-border-style);border-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));width:100%;font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-leading:calc(var(--spacing,.25rem) * 4);line-height:calc(var(--spacing,.25rem) * 4);flex-direction:column;display:flex;position:relative;overflow:hidden}ax-data-table td.ax-data-table-empty-data{height:calc(var(--spacing,.25rem) * 32);border-bottom-style:var(--tw-border-style);width:100%;padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 8);text-align:center;vertical-align:middle;border-bottom-width:0;top:50%;transform:translateY(-50%);background-color:#0000!important;position:absolute!important}ax-data-table td.ax-data-table-empty-data span{height:100%;font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));color:rgba(var(--ax-sys-color-surface));justify-content:center;align-items:center;display:flex}ax-data-table .ax-data-table-wrapper{border-radius:var(--ax-sys-border-radius);flex:1;width:100%;overflow:auto}ax-data-table .ax-data-table-wrapper table{table-layout:fixed;width:100%;height:100%;display:table;overflow-x:auto}ax-data-table .ax-data-table-wrapper table thead{border-start-start-radius:var(--ax-sys-border-radius);border-start-end-radius:var(--ax-sys-border-radius);overflow:hidden}ax-data-table .ax-data-table-wrapper table thead th{height:calc(var(--spacing,.25rem) * 10);border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-bottom-style:var(--tw-border-style);background-color:var(--color-lighter);color:var(--color-on-lighter);border-bottom-width:1px;border-color:var(--color-border-lighter);padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 3);text-align:start;--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;position:relative;overflow:hidden;border-color:rgba(var(--ax-sys-color-border-surface))!important}ax-data-table .ax-data-table-wrapper table thead th:where(.ax-dark,.ax-dark *){background-color:var(--color-darker);color:var(--color-on-darker);border-color:var(--color-border-darker)}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-light-surface))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle{top:calc(var(--spacing,.25rem) * 0);right:calc(var(--spacing,.25rem) * 0);bottom:calc(var(--spacing,.25rem) * 0);height:100%;width:calc(var(--spacing,.25rem) * 1);cursor:col-resize;background-color:#0000;position:absolute}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover{background-color:rgba(var(--ax-sys-color-primary-light-surface))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-primary-dark-surface))}ax-data-table .ax-data-table-wrapper table thead th .ax-caption{align-items:center;gap:calc(var(--spacing,.25rem) * 2);display:flex}ax-data-table .ax-data-table-wrapper table thead th:last-child{border-inline-end-style:var(--tw-border-style);border-inline-end-width:0}ax-data-table .ax-data-table-wrapper table thead.ax-data-table-sticky-header{top:calc(var(--spacing,.25rem) * 0);z-index:3;border-block-style:var(--tw-border-style);--tw-shadow:inset 1px 1px 0px 2px var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-block-width:0;position:sticky}@media screen and (min-width:768px){ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell{z-index:2;border-inline-style:var(--tw-border-style);border-inline-width:0;position:sticky}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start{--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.isLast{--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.isLast:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.isFirst{--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.isFirst:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell{z-index:2;border-inline-style:var(--tw-border-style);border-inline-width:0;position:sticky}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start{--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.isLast{--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.isLast:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.isFirst{--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.isFirst:where(:dir(rtl),[dir=rtl],[dir=rtl] *){--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}ax-data-table .ax-data-table-wrapper table tbody tr td{z-index:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-data-table-cell-tooltip-wrapper{min-height:inherit;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-bg{top:calc(var(--spacing,.25rem) * 0);left:calc(var(--spacing,.25rem) * 0);z-index:-1;border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));opacity:.3;background-color:#0000;width:100%;height:100%;position:absolute}ax-data-table .ax-data-table-wrapper table tbody tr{height:calc(var(--spacing,.25rem) * 10);max-height:calc(var(--spacing,.25rem) * 10);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-surface))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-primary-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-primary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column):where(.ax-dark,.ax-dark *){color:rgba(var(--ax-sys-color-on-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-on-primary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-on-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-primary-dark-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-surface))}ax-data-table .ax-data-table-wrapper table tbody .empty-row{background-color:var(--color-red-500,oklch(63.7% .237 25.331))!important;height:auto!important}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td{background-color:rgba(var(--ax-sys-color-light-surface));color:rgba(var(--ax-sys-color-on-light-surface))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) ax-skeleton{width:25%}ax-data-table .ax-data-table-wrapper table tbody td{min-width:calc(var(--spacing,.25rem) * 8);border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-lightest-surface));padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 2);vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;position:relative;overflow:hidden}ax-data-table .ax-data-table-wrapper table tbody td:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-darkest-surface))}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler{cursor:pointer;padding-inline:calc(var(--spacing,.25rem) * 1)}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler.has-parent{padding-inline-start:calc(var(--spacing,.25rem) * 6)!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column{background-color:rgba(var(--ax-sys-color-light-surface));text-align:center;text-overflow:ellipsis;white-space:nowrap;color:rgba(var(--ax-sys-color-on-light-surface));overflow:hidden}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-dark-surface));color:rgba(var(--ax-sys-color-on-dark-surface))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column{text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column button.ax-state-disabled{cursor:not-allowed!important;opacity:.5!important;position:relative!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column>div{inset-inline-start:calc(var(--spacing,.25rem) * 0);justify-content:center;align-items:center;width:100%;display:flex;position:absolute;top:50%;transform:translateY(-50%)}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{width:1.4rem;height:1.4rem}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button ax-icon{font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{cursor:pointer;border-style:var(--tw-border-style);text-overflow:ellipsis;white-space:nowrap;border-width:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover:not(ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-selected,ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-disabled){opacity:.75}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:active{opacity:1}ax-data-table .ax-data-table-wrapper table tbody td:last-child{border-inline-end-style:var(--tw-border-style);border-inline-end-width:0}ax-data-table .ax-data-table-wrapper table tbody td ax-skeleton{height:calc(var(--spacing,.25rem) * 3.5);border-radius:var(--radius-md,.375rem);width:33.3333%}ax-data-table .ax-data-table-wrapper table tfoot tr td{height:calc(var(--spacing,.25rem) * 10);border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-lighter-surface));padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 3);text-align:start;--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);text-overflow:ellipsis;white-space:nowrap;color:rgba(var(--ax-sys-color-on-lighter-surface));text-transform:uppercase;position:relative;overflow:hidden}ax-data-table .ax-data-table-wrapper table tfoot tr td:where(.ax-dark,.ax-dark *){background-color:rgba(var(--ax-sys-color-darker-surface));color:rgba(var(--ax-sys-color-on-darker-surface))}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-light-surface))}@media screen and (min-width:768px){ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell{z-index:2;border-inline-style:var(--tw-border-style);border-inline-width:0;position:sticky}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start{--tw-shadow:inset -1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.isLast{--tw-shadow:inset -2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end{--tw-shadow:inset 1px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.isFirst{--tw-shadow:inset 2px 0 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}ax-data-table .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{z-index:3;border-block-style:var(--tw-border-style);--tw-shadow:1px 0 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface))), 0 -1px 0 var(--tw-shadow-color,rgba(var(--ax-sys-color-border-surface)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-block-width:0;position:sticky;bottom:-1px}@media screen and (min-width:768px){ax-data-table .ax-data-table-wrapper table .sticky-end{inset-inline-end:var(--sticky-end)}ax-data-table .ax-data-table-wrapper table .sticky-start{inset-inline-start:var(--sticky-start)}}ax-data-table ax-data-pager{justify-content:center}@media(min-width:48rem){ax-data-table ax-data-pager{justify-content:space-between}}ax-data-table .ax-table-footer{border-collapse:collapse;border-top-style:var(--tw-border-style);border-top-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));min-height:max-content;padding-inline:calc(var(--spacing,.25rem) * 3.5);overflow:hidden}ax-data-table .ax-table-footer .ax-table-info{flex:1;justify-content:space-between;align-items:center;display:flex}ax-data-table .ax-data-table-numeric-paging{display:none}@media(min-width:64rem){ax-data-table .ax-data-table-numeric-paging{display:flex}}ax-data-table .ax-data-table-input-paging{display:flex}@media(min-width:64rem){ax-data-table .ax-data-table-input-paging{display:none}}ax-data-table .ax-data-table-info{justify-content:center;align-items:center;display:none}@media(min-width:48rem){ax-data-table .ax-data-table-info{display:flex}}ax-data-table .ax-data-table-info ax-text{color:rgba(var(--ax-sys-color-on-surface))}.cdk-drag-preview{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px;border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-surface));padding-inline:calc(var(--spacing,.25rem) * 4);padding-block:calc(var(--spacing,.25rem) * 3);text-align:start;--tw-font-weight:var(--font-weight-medium,500);font-weight:var(--font-weight-medium,500);color:rgba(var(--ax-sys-color-on-surface));text-transform:uppercase;--tw-shadow:0 5px 5px -3px var(--tw-shadow-color,rgba(var(--ax-sys-color-primary-900),.2)), 0 8px 10px 1px var(--tw-shadow-color,rgba(var(--ax-sys-color-primary-900),.14)), 0 3px 14px 2px var(--tw-shadow-color,rgba(var(--ax-sys-color-primary-900),.12));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);position:relative}.ax-dropdown-command-empty-state-text{font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)))}}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}\n/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */\n"] }]
2298
+ ], template: "<ng-content select=\"ax-header\"> </ng-content>\n<div class=\"ax-data-table-wrapper\">\n <table>\n @if (showHeader) {\n <thead [ngClass]=\"{ 'ax-data-table-sticky-header': fixedHeader }\">\n <tr\n [cdkDropListDisabled]=\"!allowReordering\"\n cdkDropList\n cdkScrollable\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-start\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n @for (c of normalColumnsList(); track $index) {\n <th\n cdkDrag\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </th>\n }\n <th></th>\n @for (c of endFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n </tr>\n </thead>\n }\n <tbody [ngClass]=\"{ 'ax-data-table-row-alternative': alternative }\">\n @if (showNoDataLoadedYet) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (noDataTemplate) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-data-yet' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else if (!displayedRows().length) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (emptyTemplate) {\n <ng-container [ngTemplateOutlet]=\"emptyTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-record' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else {\n @for (row of displayedRows(); let rowIndex = $index; track rowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row, rowIndex } }\"\n ></ng-container>\n }\n\n <ng-template #rowTemp let-data=\"data\">\n @if (rowTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n >\n </ng-container>\n } @else {\n <tr\n [class.ax-state-focused]=\"focusedRow && data.row === focusedRow\"\n [attr.data-index]=\"data.rowIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(data.row)\"\n style.height=\"{{ itemHeight }}px\"\n style.max-height=\"{{ itemHeight }}px\"\n (click)=\"handleRowClick($event, data.row)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n <td><div class=\"ax-bg\"></div></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n </tr>\n @if (data.row?.__meta__?.expanded) {\n @if (rowDetailsTemplate) {\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n <td class=\"ax-data-table-row-details\" [attr.colspan]=\"normalColumnsList().length + 1\">\n <ng-container\n [ngTemplateOutlet]=\"rowDetailsTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n ></ng-container>\n </td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n </tr>\n }\n @for (childRow of data.row.children; let childRowIndex = $index; track childRowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row: childRow, rowIndex: childRowIndex } }\"\n ></ng-container>\n }\n }\n }\n </ng-template>\n\n <tr class=\"empty-row\"></tr>\n }\n </tbody>\n @if (showFooter) {\n <tfoot [ngClass]=\"{ 'ax-data-table-sticky-footer': fixedFooter }\">\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-start\"\n [class.ax-data-table-sticky-footer-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </td>\n }\n <td></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n@if (paging) {\n <div class=\"ax-table-footer\" #footerContainer>\n <ng-template #customPager>\n <ng-content select=\"ax-data-pager\"></ng-content>\n </ng-template>\n\n @if (customDataPager) {\n <ng-container [ngTemplateOutlet]=\"customPager\"></ng-container>\n } @else {\n <ax-data-pager\n #dataPager\n [displayMode]=\"'custom'\"\n (onChanged)=\"handleChangePage($event)\"\n [total]=\"dataSource.totalCount\"\n [size]=\"dataSource.pageSize\"\n [isLoading]=\"isLoading()\"\n >\n <ax-prefix class=\"ax-data-table-numeric-paging\">\n <ax-data-pager-numeric-selector> </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes> </ax-data-pager-page-sizes>\n </ax-prefix>\n <ax-prefix class=\"ax-data-table-input-paging\">\n <ax-data-pager-prev-buttons> </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector> </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons> </ax-data-pager-next-buttons>\n </ax-prefix>\n <ax-suffix class=\"ax-data-table-info\">\n <ax-data-pager-info> </ax-data-pager-info>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh({ reset: false })\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-data-pager>\n }\n </div>\n}\n<ng-content select=\"ax-footer\"> </ng-content>\n", styles: ["ax-data-table{--ax-comp-data-table-font-size: .875rem;--ax-comp-data-table-line-height: 1rem;--ax-comp-data-table-border-color: var(--ax-sys-color-border-surface);--ax-comp-data-table-border-radius: var(--ax-sys-border-radius);--ax-comp-data-table-column-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-lightest-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-primary-lightest-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-lighter-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-interactive-bg-color: var(--ax-sys-color-light-surface)}.ax-dark ax-data-table{--ax-comp-data-table-column-bg-color: var(--ax-sys-color-darkest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-dark-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-dark-surface)}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table{display:flex;flex-direction:column;height:100%;width:100%;font-size:var(--ax-comp-data-table-font-size);line-height:var(--ax-comp-data-table-line-height);border-radius:var(--ax-comp-data-table-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));position:relative;min-height:inherit;overflow:hidden}ax-data-table td.ax-data-table-empty-data{background:transparent!important;position:absolute!important;padding:2rem 1rem;text-align:center;vertical-align:middle;height:8rem;border-bottom:none;top:50%;transform:translateY(-50%);width:100%}ax-data-table td.ax-data-table-empty-data span{color:rgb(var(--ax-sys-color-ghost-500));font-size:var(--ax-comp-data-table-font-size);display:flex;height:100%;align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper{overflow:auto;width:100%;flex:1;border-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table{display:table;height:100%;width:100%;table-layout:fixed;overflow-x:auto}ax-data-table .ax-data-table-wrapper table thead{overflow:hidden;border-start-end-radius:var(--ax-comp-data-table-border-radius);border-start-start-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table thead th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-header-bg-color));color:rgba(var(--ax-comp-data-table-header-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle{position:absolute;inset-inline-end:0px;top:0;bottom:0;width:.25rem;height:100%;cursor:col-resize;background:transparent}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover{background-color:rgba(var(--ax-comp-data-table-handler-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-data-table .ax-data-table-wrapper table thead th:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table thead.ax-data-table-sticky-header{position:sticky;top:0;border-top:none;border-bottom:none;z-index:3;box-shadow:inset 1px 1px 0 2px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell{position:sticky;z-index:2;background-color:rgba(var(--ax-comp-data-table-column-bg-color));border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tbody tr td{z-index:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-data-table-cell-tooltip-wrapper{position:relative;min-height:inherit}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-bg{top:0;left:0;z-index:-1;width:100%;height:100%;position:absolute;border-inline-end:1px solid rgba(var(--ax-comp-data-table-border-color));background-color:transparent;opacity:.3}ax-data-table .ax-data-table-wrapper table tbody .empty-row{height:auto!important}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td{background-color:rgba(var(--ax-comp-data-table-alternative-bg-color));color:rgba(var(--ax-comp-data-table-alternative-text-color))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) ax-skeleton{width:25%}ax-data-table .ax-data-table-wrapper table tbody tr{height:2.5rem;max-height:2.5rem}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-focus-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-focus-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-column-bg-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.5rem;padding-bottom:.5rem;vertical-align:middle}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler{padding-inline-start:.25rem;padding-inline-end:.25rem;cursor:pointer}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler.has-parent{padding-inline-start:1.5rem!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-comp-data-table-index-bg-color));color:rgba(var(--ax-comp-data-table-index-text-color));text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column{text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button{--ax-comp-button-font-size: .75rem;--ax-comp-button-padding-x: .25rem;--ax-comp-button-decorator-padding-x: .25rem;--ax-comp-button-icon-only-font-size: .875rem;--ax-sys-size-base: 1.5rem;margin-left:.25rem;margin-right:.25rem}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button ax-loading .ax-loader{width:.75rem!important;height:.75rem!important;border-width:2px!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-comp-data-table-border-radius);border-style:none;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover:not(ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-selected,ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-disabled){opacity:.75}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:active{opacity:1}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-data-table .ax-data-table-wrapper table tbody td:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table tbody td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem;background-color:rgba(var(--ax-comp-data-table-skeleton-bg-color))}ax-data-table .ax-data-table-wrapper table tfoot tr td{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-footer-bg-color));color:rgba(var(--ax-comp-data-table-footer-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{position:sticky;bottom:-1px;border-top:none;border-bottom:none;z-index:3;box-shadow:1px 0 rgba(var(--ax-comp-data-table-border-color)),0 -1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table .sticky-end{inset-inline-end:var(--sticky-end)}ax-data-table .ax-data-table-wrapper table .sticky-start{inset-inline-start:var(--sticky-start)}}ax-data-table ax-data-pager{justify-content:center}ax-data-table .ax-table-footer{border-top-width:1px;border-collapse:collapse;overflow:hidden;border-color:rgba(var(--ax-comp-data-table-border-color));padding-inline-start:.875rem;padding-inline-end:.875rem;min-height:max-content}ax-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-data-table .ax-data-table-numeric-paging{display:none}ax-data-table .ax-data-table-input-paging{display:flex}ax-data-table .ax-data-table-info{display:none}@media (min-width: 1024px){ax-data-table .ax-data-table-numeric-paging{display:flex}ax-data-table .ax-data-table-input-paging{display:none}}@media (min-width: 768px){ax-data-table .ax-data-table-info{display:flex;align-items:center}ax-data-table ax-data-pager{justify-content:space-between}}.cdk-drag-preview{border-bottom-width:1px;border-inline-end-width:1px;box-shadow:0 5px 5px -3px rgba(var(--ax-sys-color-primary-900),.2),0 8px 10px 1px rgba(var(--ax-sys-color-primary-900),.14),0 3px 14px 2px rgba(var(--ax-sys-color-primary-900),.12);border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-sys-color-surface));color:rgba(var(--ax-sys-color-surface-fore));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}.ax-dropdown-command-empty-state-text{color:rgba(var(--ax-sys-color-on-surface-variant-500));font-size:.75rem}\n"] }]
2296
2299
  }], propDecorators: { dataPager: [{
2297
2300
  type: ViewChild,
2298
2301
  args: ['dataPager']
@@ -2301,8 +2304,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2301
2304
  args: [AXDataPagerComponent, {
2302
2305
  static: true,
2303
2306
  }]
2304
- }], title: [{
2305
- type: Input
2306
2307
  }], rowTemplate: [{
2307
2308
  type: Input
2308
2309
  }], emptyTemplate: [{
@@ -2348,7 +2349,439 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2348
2349
  args: [AXDataTableColumnComponent]
2349
2350
  }] } });
2350
2351
 
2352
+ /**
2353
+ * Component for a data table with infinite scrolling capabilities.
2354
+ *
2355
+ * @category Components
2356
+ */
2357
+ class AXInfiniteScrollDataTableComponent extends AXBaseDataTable {
2358
+ constructor() {
2359
+ super(...arguments);
2360
+ this.document = inject(DOCUMENT);
2361
+ this.platformID = inject(PLATFORM_ID);
2362
+ this.ngZone = inject(NgZone);
2363
+ /**
2364
+ * Emits an event when the page changes.
2365
+ *
2366
+ * @event
2367
+ */
2368
+ this.onPageChanged = new EventEmitter();
2369
+ /**
2370
+ * @ignore
2371
+ */
2372
+ this.clickSubject = new Subject();
2373
+ /**
2374
+ * Emits an event when a row is clicked.
2375
+ *
2376
+ * @event
2377
+ */
2378
+ this.onRowClick = new EventEmitter();
2379
+ /**
2380
+ * Emits an event when a row is double-clicked.
2381
+ *
2382
+ * @event
2383
+ */
2384
+ this.onRowDbClick = new EventEmitter();
2385
+ /**
2386
+ * Controls the visibility of the table header.
2387
+ *
2388
+ * @defaultValue true
2389
+ */
2390
+ this.showHeader = true;
2391
+ /**
2392
+ * Defines the mode for fetching data.
2393
+ *
2394
+ * @defaultValue 'auto'
2395
+ */
2396
+ this.fetchDataMode = 'auto';
2397
+ /**
2398
+ * Configuration for the loading state of the data table.
2399
+ *
2400
+ * @defaultValue { enabled: true, animation: true }
2401
+ */
2402
+ this.loading = {
2403
+ enabled: true,
2404
+ animation: true,
2405
+ };
2406
+ /**
2407
+ * @ignore
2408
+ */
2409
+ this.isLoading = signal(true, ...(ngDevMode ? [{ debugName: "isLoading" }] : []));
2410
+ /**
2411
+ * @ignore
2412
+ */
2413
+ this.hasItems = false;
2414
+ /**
2415
+ * @ignore
2416
+ */
2417
+ this.totalRows = 0;
2418
+ /**
2419
+ * @ignore
2420
+ */
2421
+ this.currentPage = 0;
2422
+ /**
2423
+ * @ignore
2424
+ */
2425
+ this.totalPages = 0;
2426
+ /**
2427
+ * @ignore
2428
+ */
2429
+ this.startRowIndex = 0;
2430
+ /**
2431
+ * @ignore
2432
+ */
2433
+ this.lastIndex = 0;
2434
+ /**
2435
+ * Event emitted when the focused row changes.
2436
+ *
2437
+ * @event
2438
+ */
2439
+ this.focusedRowChange = new EventEmitter();
2440
+ /**
2441
+ * Defines the height of each item in the table.
2442
+ *
2443
+ * @default 40
2444
+ */
2445
+ this.itemHeight = 40;
2446
+ /**
2447
+ * @ignore
2448
+ */
2449
+ this.width = '100%';
2450
+ /**
2451
+ * @ignore
2452
+ */
2453
+ this.height = '100%';
2454
+ /**
2455
+ * Emitted when the scroll index changes in the table.
2456
+ *
2457
+ * @event
2458
+ */
2459
+ this.onScrolledIndexChanged = new EventEmitter();
2460
+ }
2461
+ /**
2462
+ * @ignore
2463
+ */
2464
+ startFixedColumn() {
2465
+ return this.columns?.toArray().filter((c) => c.fixed == 'start') ?? [];
2466
+ }
2467
+ /**
2468
+ * @ignore
2469
+ */
2470
+ endFixedColumn() {
2471
+ return this.columns?.toArray().filter((c) => c.fixed == 'end') ?? [];
2472
+ }
2473
+ /**
2474
+ * @ignore
2475
+ */
2476
+ notFixedColumn() {
2477
+ return this.columns?.toArray().filter((c) => !c.fixed) ?? [];
2478
+ }
2479
+ /**
2480
+ * @ignore
2481
+ */
2482
+ notFixedColumnCount() {
2483
+ return this.columns?.toArray().filter((c) => !c.fixed).length ?? 0;
2484
+ }
2485
+ /**
2486
+ * @ignore
2487
+ */
2488
+ fixedColumnCount() {
2489
+ return this.columns?.toArray().filter((c) => c.fixed).length ?? 0;
2490
+ }
2491
+ /**
2492
+ * Retrieves the currently focused row.
2493
+ */
2494
+ get focusedRow() {
2495
+ return this._focusedRow;
2496
+ }
2497
+ /**
2498
+ * Sets the currently focused row and emits a change event.
2499
+ *
2500
+ * @param v - The row data to be set as focused.
2501
+ */
2502
+ set focusedRow(v) {
2503
+ this._focusedRow = v;
2504
+ this.focusedRowChange.emit(v);
2505
+ }
2506
+ trackByIdx(i) {
2507
+ return i;
2508
+ }
2509
+ /**
2510
+ * @ignore
2511
+ */
2512
+ ngOnInit() {
2513
+ super.ngOnInit();
2514
+ this.listDataSource = new AXListDataSource({
2515
+ source: this.dataSource,
2516
+ });
2517
+ this.listDataSource.source.onLoadingChanged.subscribe((data) => {
2518
+ this.isLoading.set(data);
2519
+ });
2520
+ this.listDataSource.source.onChanged.subscribe((data) => {
2521
+ this.totalRows = data.totalCount;
2522
+ this.hasItems = data.totalCount > 0;
2523
+ setTimeout(() => {
2524
+ this.render();
2525
+ }, 100);
2526
+ });
2527
+ //
2528
+ this.clickSubject
2529
+ .pipe(buffer(this.clickSubject.pipe(debounceTime(250))), filter((clickArray) => clickArray.length === 2))
2530
+ .subscribe((clickArray) => {
2531
+ this.handleRowDoubleClick(clickArray[0].event, clickArray[0].item);
2532
+ });
2533
+ }
2534
+ /**
2535
+ * @ignore
2536
+ */
2537
+ _handleOnscrolledIndexChange(e) {
2538
+ this.lastIndex = e;
2539
+ this.onScrolledIndexChanged.emit({
2540
+ component: this,
2541
+ index: this.lastIndex,
2542
+ isUserInteraction: true,
2543
+ });
2544
+ }
2545
+ /**
2546
+ * @ignore
2547
+ */
2548
+ ngDoCheck() {
2549
+ //this.copyFixedColumns();
2550
+ this.updateHScroll();
2551
+ //
2552
+ this.updateWidth();
2553
+ this.updateHeight();
2554
+ //
2555
+ this.updateTotalCount();
2556
+ }
2557
+ /**
2558
+ * @ignore
2559
+ */
2560
+ updateTotalCount() {
2561
+ this.startRowIndex = this.lastIndex;
2562
+ if (this.startRowIndex < 1)
2563
+ this.startRowIndex = 1;
2564
+ if (this.startRowIndex > this.totalRows)
2565
+ this.startRowIndex = this.totalRows;
2566
+ }
2567
+ /**
2568
+ * @ignore
2569
+ */
2570
+ updateHeight() {
2571
+ this.height = `calc(100% - ${(this.headerContainer?.nativeElement.clientHeight ?? 0) + (this.footerContainer?.nativeElement.clientHeight ?? 0)}px)`;
2572
+ }
2573
+ /**
2574
+ * @ignore
2575
+ */
2576
+ updateWidth() {
2577
+ if (this.columns && this.columns.length) {
2578
+ const sumPx = sum(this.columns.toArray().map((c) => (typeof c.width == 'number' ? c.width : Number(c.width.replace('px', '')))));
2579
+ this.width = `${Math.max(sumPx, this.getHostElement().clientWidth - 5)}px`;
2580
+ }
2581
+ }
2582
+ /**
2583
+ * @ignore
2584
+ */
2585
+ updateHScroll() {
2586
+ this.ngZone.runOutsideAngular(() => {
2587
+ if (this.headerContainer) {
2588
+ const headerContainer = this.headerContainer.nativeElement;
2589
+ const left = this.scrollableContainer.nativeElement.scrollLeft;
2590
+ headerContainer.style.transform = `translateX(${-left}px)`;
2591
+ }
2592
+ });
2593
+ }
2594
+ /**
2595
+ * @ignore
2596
+ */
2597
+ // Function to copy fixed columns
2598
+ copyFixedColumns() {
2599
+ const originalRows = Array.from(this.viewport._contentWrapper.nativeElement.querySelectorAll('tr'));
2600
+ const fixedColumnTable = this.getHostElement().querySelector('.ax-body-fixed-columns > table > tbody');
2601
+ fixedColumnTable.querySelectorAll('tr').forEach((n) => n.remove());
2602
+ if (isPlatformBrowser(this.platformID)) {
2603
+ for (const row of originalRows) {
2604
+ const fixedCells = Array.from(row.querySelectorAll('[data-fixed="start"]'));
2605
+ const fixedRow = this.document.createElement('tr');
2606
+ for (const cell of fixedCells) {
2607
+ const clonedCell = cell.cloneNode(true);
2608
+ fixedRow.appendChild(clonedCell);
2609
+ }
2610
+ fixedColumnTable.appendChild(fixedRow);
2611
+ }
2612
+ }
2613
+ const scrollTop = this.getHostElement().querySelector('.cdk-virtual-scrollable').scrollTop;
2614
+ fixedColumnTable.style.transform = `translateY(${-scrollTop}px)`;
2615
+ }
2616
+ /**
2617
+ * Updates the viewport by checking its size and scrolling to the last index.
2618
+ * Marks the component for change detection.
2619
+ * @ignore
2620
+ */
2621
+ render() {
2622
+ this.viewport.checkViewportSize();
2623
+ this.viewport.scrollToIndex(this.lastIndex);
2624
+ this.cdr.markForCheck();
2625
+ }
2626
+ /**
2627
+ * Resets the index to zero and refreshes the data source.
2628
+ * @ignore
2629
+ */
2630
+ refresh() {
2631
+ this.lastIndex = 0;
2632
+ this.listDataSource.refresh();
2633
+ }
2634
+ /**
2635
+ * @ignore
2636
+ */
2637
+ handleRowClick(event, item) {
2638
+ this.handleRowSingleClick(event, item);
2639
+ this.clickSubject.next({ event, item });
2640
+ }
2641
+ /**
2642
+ * @ignore
2643
+ */
2644
+ handleRowSingleClick(event, item) {
2645
+ if (this.focusedRow == item) {
2646
+ this.focusedRow = null;
2647
+ }
2648
+ else {
2649
+ this.focusedRow = item;
2650
+ }
2651
+ //
2652
+ this.onRowClick.emit({
2653
+ component: this,
2654
+ data: item,
2655
+ isUserInteraction: true,
2656
+ });
2657
+ }
2658
+ /**
2659
+ * @ignore
2660
+ */
2661
+ handleRowDoubleClick(e, item) {
2662
+ this.focusedRow = item;
2663
+ //
2664
+ this.onRowDbClick.emit({
2665
+ component: this,
2666
+ data: item,
2667
+ isUserInteraction: true,
2668
+ });
2669
+ }
2670
+ /**
2671
+ * Handles column header clicks to toggle sorting on the column.
2672
+ *
2673
+ * @param e - The mouse event triggered by the click.
2674
+ * @param column - The column that was clicked.
2675
+ * @ignore
2676
+ */
2677
+ handleColumnClick(e, column) {
2678
+ if (column instanceof AXDataTableTextColumnComponent) {
2679
+ const sort = this.dataSource.query.sort.find((c) => c.field == column.dataField);
2680
+ if (!sort) {
2681
+ this.dataSource.query.sort.push({
2682
+ field: column.dataField,
2683
+ dir: 'asc',
2684
+ });
2685
+ }
2686
+ else {
2687
+ if (sort.dir == 'asc') {
2688
+ sort.dir = 'desc';
2689
+ }
2690
+ else {
2691
+ this.dataSource.query.sort = this.dataSource.query.sort.filter((c) => c != sort);
2692
+ }
2693
+ }
2694
+ this.refresh();
2695
+ }
2696
+ }
2697
+ /**
2698
+ * @ignore
2699
+ */
2700
+ getSort(column) {
2701
+ if (column instanceof AXDataTableTextColumnComponent) {
2702
+ const sort = this.dataSource.query.sort.find((c) => c.field == column.dataField);
2703
+ return sort ? (sort.dir == 'asc' ? 'ax-icon-arrow-long-down' : 'ax-icon-arrow-long-up') : undefined;
2704
+ }
2705
+ return undefined;
2706
+ }
2707
+ /**
2708
+ * @ignore
2709
+ */
2710
+ _handleOnScroll() {
2711
+ this.updateHScroll();
2712
+ }
2713
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXInfiniteScrollDataTableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2714
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXInfiniteScrollDataTableComponent, isStandalone: true, selector: "ax-infinite-scroll-data-table", inputs: { dataSource: "dataSource", rowTemplate: "rowTemplate", emptyTemplate: "emptyTemplate", showHeader: "showHeader", fetchDataMode: "fetchDataMode", loading: "loading", focusedRow: "focusedRow", itemHeight: "itemHeight" }, outputs: { selectedRowsChange: "selectedRowsChange", onPageChanged: "onPageChanged", onRowClick: "onRowClick", onRowDbClick: "onRowDbClick", focusedRowChange: "focusedRowChange", onScrolledIndexChanged: "onScrolledIndexChanged" }, providers: [
2715
+ { provide: AXPagedComponent, useExisting: AXInfiniteScrollDataTableComponent },
2716
+ {
2717
+ provide: AXBaseDataTable,
2718
+ useExisting: AXInfiniteScrollDataTableComponent,
2719
+ },
2720
+ { provide: AXComponent, useExisting: AXInfiniteScrollDataTableComponent },
2721
+ ], queries: [{ propertyName: "columns", predicate: AXDataTableColumnComponent }], viewQueries: [{ propertyName: "viewport", first: true, predicate: CdkVirtualScrollViewport, descendants: true, static: true }, { propertyName: "headerContainer", first: true, predicate: ["headerContainer"], descendants: true }, { propertyName: "footerContainer", first: true, predicate: ["footerContainer"], descendants: true }, { propertyName: "scrollableContainer", first: true, predicate: ["scrolling"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"> </ng-content>\n<!------------------- Header contents ------------------->\n@if (showHeader) {\n <div class=\"ax-header-content\">\n <div class=\"ax-header-columns\">\n <table tabindex=\"0\" [style.width]=\"width\" #headerContainer>\n <thead>\n <tr>\n @for (c of notFixedColumn(); track c.name) {\n <th\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container [ngTemplateOutlet]=\"c.renderHeaderTemplate\"></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n <!-- @if(c.allowResizing)\n {\n <div class=\"ax-resize-handle\" [ax-table-column-resizble]=\"c\"></div>\n } -->\n </th>\n }\n <th></th>\n </tr>\n </thead>\n </table>\n </div>\n </div>\n}\n\n<!------------------- Body contents ------------------->\n<div [style.height]=\"height\" class=\"ax-body-content\">\n <div class=\"ax-body-columns\">\n <div cdkVirtualScrollingElement #scrolling [style.height]=\"'100%'\" (scroll)=\"_handleOnScroll()\">\n <cdk-virtual-scroll-viewport\n [itemSize]=\"itemHeight\"\n [style.--item-height]=\"itemHeight + 'px'\"\n (scrolledIndexChange)=\"_handleOnscrolledIndexChange($event)\"\n >\n <table tabindex=\"0\" class=\"ax-table-body ax-relative\" [style.width]=\"width\">\n <colgroup>\n @for (c of notFixedColumn(); track c.name) {\n <col [style.width]=\"c.width\" />\n }\n <col />\n </colgroup>\n <tbody>\n <ng-container\n *cdkVirtualFor=\"\n let item of listDataSource;\n templateCacheSize: 100;\n let i = index;\n trackBy: trackByIdx;\n let rIndex = index\n \"\n >\n <!------------------- custom row template------------------->\n @if (rowTemplate !== null) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n >\n </ng-container>\n } @else {\n <!------------------- normal row template------------------->\n <tr\n [class.ax-state-focused]=\"focusedRow && item === focusedRow\"\n [attr.data-index]=\"rIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(item)\"\n (click)=\"handleRowClick($event, item)\"\n >\n <!------------------- start fixed column ------------------->\n\n <!------------------- Not fixed column ------------------->\n @for (c of notFixedColumn(); track c.name) {\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"c.cssClass\">\n @if (item && !isLoading()) {\n <!------------------- render cell ------------------->\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n ></ng-container>\n } @else {\n <!------------------- render loading ------------------->\n @if (c.loadingEnabled && loading) {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n </td>\n }\n <td></td>\n </tr>\n }\n </ng-container>\n </tbody>\n </table>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n<div class=\"ax-table-footer\" #footerContainer>\n <div class=\"ax-table-info\">\n <div>Showing {{ startRowIndex }} of {{ totalRows }} items</div>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh()\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </div>\n <ng-content select=\"ax-footer\"> </ng-content>\n</div>\n", styles: ["ax-infinite-scroll-data-table{display:block;height:100%;overflow:hidden;border-radius:var(--ax-sys-border-radius);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));font-size:.875rem;line-height:1.25rem}ax-infinite-scroll-data-table table{table-layout:fixed}ax-infinite-scroll-data-table .ax-header-content{position:relative;height:3rem;overflow:hidden}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th.ax-column-fixed{pointer-events:auto}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th:not(.ax-column-fixed){visibility:hidden;background-color:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns{height:100%}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table{height:100%;overflow:hidden;border-start-end-radius:var(--ax-sys-border-radius);border-start-start-radius:var(--ax-sys-border-radius)}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.75rem 1rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive{cursor:pointer}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-secondary-200))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle{position:absolute;right:0;top:0;bottom:0;width:4px;cursor:col-resize;background:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle:hover{background-color:rgba(var(--ax-sys-color-secondary-300))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content{position:relative}ax-infinite-scroll-data-table .ax-body-content .ax-body-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns{height:100%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table{border-collapse:collapse}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) td{background-color:rgba(var(--ax-sys-color-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) ax-skeleton{width:25%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr{height:2.5rem}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-400));color:rgba(var(--ax-sys-color-on-primary))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.5rem 1rem;vertical-align:middle}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-sys-color-surface));text-align:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-sys-border-radius);border-style:none;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover:not(ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-selected,ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-disabled){opacity:.75}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:active{opacity:1}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem}ax-infinite-scroll-data-table .ax-table-footer{border-collapse:collapse;overflow:hidden;border-top-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:.5rem .875rem}ax-infinite-scroll-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "directive", type: CdkVirtualScrollableElement, selector: "[cdkVirtualScrollingElement]" }, { kind: "component", type: CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2722
+ }
2723
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXInfiniteScrollDataTableComponent, decorators: [{
2724
+ type: Component,
2725
+ args: [{ selector: 'ax-infinite-scroll-data-table', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
2726
+ { provide: AXPagedComponent, useExisting: AXInfiniteScrollDataTableComponent },
2727
+ {
2728
+ provide: AXBaseDataTable,
2729
+ useExisting: AXInfiniteScrollDataTableComponent,
2730
+ },
2731
+ { provide: AXComponent, useExisting: AXInfiniteScrollDataTableComponent },
2732
+ ], outputs: ['selectedRowsChange'], inputs: ['dataSource'], imports: [
2733
+ NgTemplateOutlet,
2734
+ AXDecoratorIconComponent,
2735
+ CdkVirtualScrollableElement,
2736
+ CdkVirtualScrollViewport,
2737
+ CdkFixedSizeVirtualScroll,
2738
+ CdkVirtualForOf,
2739
+ AXSkeletonComponent,
2740
+ AXButtonComponent,
2741
+ ], template: "<ng-content select=\"ax-header\"> </ng-content>\n<!------------------- Header contents ------------------->\n@if (showHeader) {\n <div class=\"ax-header-content\">\n <div class=\"ax-header-columns\">\n <table tabindex=\"0\" [style.width]=\"width\" #headerContainer>\n <thead>\n <tr>\n @for (c of notFixedColumn(); track c.name) {\n <th\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container [ngTemplateOutlet]=\"c.renderHeaderTemplate\"></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n <!-- @if(c.allowResizing)\n {\n <div class=\"ax-resize-handle\" [ax-table-column-resizble]=\"c\"></div>\n } -->\n </th>\n }\n <th></th>\n </tr>\n </thead>\n </table>\n </div>\n </div>\n}\n\n<!------------------- Body contents ------------------->\n<div [style.height]=\"height\" class=\"ax-body-content\">\n <div class=\"ax-body-columns\">\n <div cdkVirtualScrollingElement #scrolling [style.height]=\"'100%'\" (scroll)=\"_handleOnScroll()\">\n <cdk-virtual-scroll-viewport\n [itemSize]=\"itemHeight\"\n [style.--item-height]=\"itemHeight + 'px'\"\n (scrolledIndexChange)=\"_handleOnscrolledIndexChange($event)\"\n >\n <table tabindex=\"0\" class=\"ax-table-body ax-relative\" [style.width]=\"width\">\n <colgroup>\n @for (c of notFixedColumn(); track c.name) {\n <col [style.width]=\"c.width\" />\n }\n <col />\n </colgroup>\n <tbody>\n <ng-container\n *cdkVirtualFor=\"\n let item of listDataSource;\n templateCacheSize: 100;\n let i = index;\n trackBy: trackByIdx;\n let rIndex = index\n \"\n >\n <!------------------- custom row template------------------->\n @if (rowTemplate !== null) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n >\n </ng-container>\n } @else {\n <!------------------- normal row template------------------->\n <tr\n [class.ax-state-focused]=\"focusedRow && item === focusedRow\"\n [attr.data-index]=\"rIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(item)\"\n (click)=\"handleRowClick($event, item)\"\n >\n <!------------------- start fixed column ------------------->\n\n <!------------------- Not fixed column ------------------->\n @for (c of notFixedColumn(); track c.name) {\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"c.cssClass\">\n @if (item && !isLoading()) {\n <!------------------- render cell ------------------->\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n ></ng-container>\n } @else {\n <!------------------- render loading ------------------->\n @if (c.loadingEnabled && loading) {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n </td>\n }\n <td></td>\n </tr>\n }\n </ng-container>\n </tbody>\n </table>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n<div class=\"ax-table-footer\" #footerContainer>\n <div class=\"ax-table-info\">\n <div>Showing {{ startRowIndex }} of {{ totalRows }} items</div>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh()\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </div>\n <ng-content select=\"ax-footer\"> </ng-content>\n</div>\n", styles: ["ax-infinite-scroll-data-table{display:block;height:100%;overflow:hidden;border-radius:var(--ax-sys-border-radius);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));font-size:.875rem;line-height:1.25rem}ax-infinite-scroll-data-table table{table-layout:fixed}ax-infinite-scroll-data-table .ax-header-content{position:relative;height:3rem;overflow:hidden}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th.ax-column-fixed{pointer-events:auto}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th:not(.ax-column-fixed){visibility:hidden;background-color:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns{height:100%}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table{height:100%;overflow:hidden;border-start-end-radius:var(--ax-sys-border-radius);border-start-start-radius:var(--ax-sys-border-radius)}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.75rem 1rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive{cursor:pointer}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-secondary-200))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle{position:absolute;right:0;top:0;bottom:0;width:4px;cursor:col-resize;background:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle:hover{background-color:rgba(var(--ax-sys-color-secondary-300))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content{position:relative}ax-infinite-scroll-data-table .ax-body-content .ax-body-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns{height:100%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table{border-collapse:collapse}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) td{background-color:rgba(var(--ax-sys-color-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) ax-skeleton{width:25%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr{height:2.5rem}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-400));color:rgba(var(--ax-sys-color-on-primary))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.5rem 1rem;vertical-align:middle}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-sys-color-surface));text-align:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-sys-border-radius);border-style:none;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover:not(ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-selected,ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-disabled){opacity:.75}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:active{opacity:1}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem}ax-infinite-scroll-data-table .ax-table-footer{border-collapse:collapse;overflow:hidden;border-top-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:.5rem .875rem}ax-infinite-scroll-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}\n"] }]
2742
+ }], propDecorators: { columns: [{
2743
+ type: ContentChildren,
2744
+ args: [AXDataTableColumnComponent]
2745
+ }], onPageChanged: [{
2746
+ type: Output
2747
+ }], onRowClick: [{
2748
+ type: Output
2749
+ }], onRowDbClick: [{
2750
+ type: Output
2751
+ }], rowTemplate: [{
2752
+ type: Input
2753
+ }], emptyTemplate: [{
2754
+ type: Input
2755
+ }], showHeader: [{
2756
+ type: Input
2757
+ }], fetchDataMode: [{
2758
+ type: Input
2759
+ }], loading: [{
2760
+ type: Input
2761
+ }], focusedRowChange: [{
2762
+ type: Output
2763
+ }], focusedRow: [{
2764
+ type: Input
2765
+ }], itemHeight: [{
2766
+ type: Input
2767
+ }], viewport: [{
2768
+ type: ViewChild,
2769
+ args: [CdkVirtualScrollViewport, { static: true }]
2770
+ }], onScrolledIndexChanged: [{
2771
+ type: Output
2772
+ }], headerContainer: [{
2773
+ type: ViewChild,
2774
+ args: ['headerContainer']
2775
+ }], footerContainer: [{
2776
+ type: ViewChild,
2777
+ args: ['footerContainer']
2778
+ }], scrollableContainer: [{
2779
+ type: ViewChild,
2780
+ args: ['scrolling', { static: true }]
2781
+ }] } });
2782
+
2351
2783
  const COMPONENT = [
2784
+ AXInfiniteScrollDataTableComponent,
2352
2785
  AXDataTableComponent,
2353
2786
  AXDataTableTextColumnComponent,
2354
2787
  AXRowIndexColumnComponent,
@@ -2378,8 +2811,8 @@ const MODULES = [
2378
2811
  CdkDragHandle,
2379
2812
  ];
2380
2813
  class AXDataTableModule {
2381
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2382
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableModule, imports: [CommonModule,
2814
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2815
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableModule, imports: [CommonModule,
2383
2816
  AXCommonModule,
2384
2817
  ScrollingModule,
2385
2818
  AXTranslationModule,
@@ -2395,14 +2828,16 @@ class AXDataTableModule {
2395
2828
  CdkDropList,
2396
2829
  CdkDrag,
2397
2830
  CdkDragPlaceholder,
2398
- CdkDragHandle, AXDataTableComponent,
2831
+ CdkDragHandle, AXInfiniteScrollDataTableComponent,
2832
+ AXDataTableComponent,
2399
2833
  AXDataTableTextColumnComponent,
2400
2834
  AXRowIndexColumnComponent,
2401
2835
  AXRowSelectColumnComponent,
2402
2836
  AXRowExpandColumnComponent,
2403
2837
  AXRowCommandColumnComponent,
2404
2838
  AXRowDropdownCommandColumnComponent,
2405
- AXDataTableColumnResizableDirective], exports: [AXDataTableComponent,
2839
+ AXDataTableColumnResizableDirective], exports: [AXInfiniteScrollDataTableComponent,
2840
+ AXDataTableComponent,
2406
2841
  AXDataTableTextColumnComponent,
2407
2842
  AXRowIndexColumnComponent,
2408
2843
  AXRowSelectColumnComponent,
@@ -2410,7 +2845,7 @@ class AXDataTableModule {
2410
2845
  AXRowCommandColumnComponent,
2411
2846
  AXRowDropdownCommandColumnComponent,
2412
2847
  AXDataTableColumnResizableDirective] }); }
2413
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableModule, imports: [CommonModule,
2848
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableModule, imports: [CommonModule,
2414
2849
  AXCommonModule,
2415
2850
  ScrollingModule,
2416
2851
  AXTranslationModule,
@@ -2421,12 +2856,13 @@ class AXDataTableModule {
2421
2856
  AXDecoratorModule,
2422
2857
  AXDropdownModule,
2423
2858
  AXFormatModule,
2424
- AXDataPagerModule, AXDataTableComponent,
2859
+ AXDataPagerModule, AXInfiniteScrollDataTableComponent,
2860
+ AXDataTableComponent,
2425
2861
  AXRowSelectColumnComponent,
2426
2862
  AXRowCommandColumnComponent,
2427
2863
  AXRowDropdownCommandColumnComponent] }); }
2428
2864
  }
2429
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXDataTableModule, decorators: [{
2865
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableModule, decorators: [{
2430
2866
  type: NgModule,
2431
2867
  args: [{
2432
2868
  imports: [...MODULES, ...COMPONENT],
@@ -2439,5 +2875,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
2439
2875
  * Generated bundle index. Do not edit.
2440
2876
  */
2441
2877
 
2442
- export { AXBaseDataTable, AXBaseRowCommandColumnComponent, AXDataTableColumnComponent, AXDataTableColumnResizableDirective, AXDataTableComponent, AXDataTableModule, AXDataTableTextColumnComponent, AXRowCommandColumnComponent, AXRowDropdownCommandColumnComponent, AXRowExpandColumnComponent, AXRowIndexColumnComponent, AXRowSelectColumnComponent };
2878
+ export { AXBaseDataTable, AXBaseRowCommandColumnComponent, AXDataTableColumnComponent, AXDataTableColumnResizableDirective, AXDataTableComponent, AXDataTableModule, AXDataTableTextColumnComponent, AXInfiniteScrollDataTableComponent, AXRowCommandColumnComponent, AXRowDropdownCommandColumnComponent, AXRowExpandColumnComponent, AXRowIndexColumnComponent, AXRowSelectColumnComponent };
2443
2879
  //# sourceMappingURL=acorex-components-data-table.mjs.map