ngx-tethys 20.0.1 → 20.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/action/index.d.ts +3 -3
  3. package/affix/index.d.ts +1 -1
  4. package/alert/index.d.ts +3 -3
  5. package/anchor/index.d.ts +12 -6
  6. package/arrow-switcher/index.d.ts +6 -6
  7. package/autocomplete/index.d.ts +7 -7
  8. package/avatar/index.d.ts +9 -9
  9. package/back-top/index.d.ts +3 -3
  10. package/badge/index.d.ts +6 -6
  11. package/breadcrumb/index.d.ts +7 -7
  12. package/button/index.d.ts +19 -19
  13. package/calendar/index.d.ts +8 -8
  14. package/card/index.d.ts +6 -6
  15. package/carousel/index.d.ts +4 -4
  16. package/cascader/index.d.ts +24 -24
  17. package/collapse/index.d.ts +4 -4
  18. package/color-picker/index.d.ts +16 -16
  19. package/comment/index.d.ts +3 -3
  20. package/copy/index.d.ts +2 -2
  21. package/core/index.d.ts +22 -22
  22. package/date-picker/index.d.ts +111 -111
  23. package/date-range/index.d.ts +5 -5
  24. package/dialog/index.d.ts +18 -18
  25. package/divider/index.d.ts +3 -3
  26. package/drag-drop/index.d.ts +7 -7
  27. package/dropdown/index.d.ts +10 -10
  28. package/empty/index.d.ts +12 -12
  29. package/fesm2022/ngx-tethys-action.mjs +14 -12
  30. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  31. package/fesm2022/ngx-tethys-affix.mjs +7 -7
  32. package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
  33. package/fesm2022/ngx-tethys-alert.mjs +10 -10
  34. package/fesm2022/ngx-tethys-anchor.mjs +65 -28
  35. package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
  36. package/fesm2022/ngx-tethys-arrow-switcher.mjs +7 -7
  37. package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
  38. package/fesm2022/ngx-tethys-autocomplete.mjs +19 -18
  39. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  40. package/fesm2022/ngx-tethys-avatar.mjs +23 -22
  41. package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
  42. package/fesm2022/ngx-tethys-back-top.mjs +7 -7
  43. package/fesm2022/ngx-tethys-badge.mjs +7 -7
  44. package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
  45. package/fesm2022/ngx-tethys-breadcrumb.mjs +10 -10
  46. package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
  47. package/fesm2022/ngx-tethys-button.mjs +16 -16
  48. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  49. package/fesm2022/ngx-tethys-calendar.mjs +16 -16
  50. package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
  51. package/fesm2022/ngx-tethys-card.mjs +13 -13
  52. package/fesm2022/ngx-tethys-card.mjs.map +1 -1
  53. package/fesm2022/ngx-tethys-carousel.mjs +15 -15
  54. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  55. package/fesm2022/ngx-tethys-cascader.mjs +41 -34
  56. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  57. package/fesm2022/ngx-tethys-checkbox.mjs +7 -7
  58. package/fesm2022/ngx-tethys-collapse.mjs +10 -10
  59. package/fesm2022/ngx-tethys-color-picker.mjs +65 -57
  60. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  61. package/fesm2022/ngx-tethys-comment.mjs +13 -13
  62. package/fesm2022/ngx-tethys-copy.mjs +10 -10
  63. package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
  64. package/fesm2022/ngx-tethys-core.mjs +30 -25
  65. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  66. package/fesm2022/ngx-tethys-date-picker.mjs +184 -174
  67. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  68. package/fesm2022/ngx-tethys-date-range.mjs +16 -16
  69. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  70. package/fesm2022/ngx-tethys-dialog.mjs +24 -24
  71. package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
  72. package/fesm2022/ngx-tethys-divider.mjs +7 -7
  73. package/fesm2022/ngx-tethys-divider.mjs.map +1 -1
  74. package/fesm2022/ngx-tethys-dot.mjs +7 -7
  75. package/fesm2022/ngx-tethys-drag-drop.mjs +24 -24
  76. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  77. package/fesm2022/ngx-tethys-dropdown.mjs +48 -47
  78. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  79. package/fesm2022/ngx-tethys-empty.mjs +13 -13
  80. package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
  81. package/fesm2022/ngx-tethys-flexible-text.mjs +7 -7
  82. package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
  83. package/fesm2022/ngx-tethys-form.mjs +64 -61
  84. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  85. package/fesm2022/ngx-tethys-fullscreen.mjs +18 -15
  86. package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
  87. package/fesm2022/ngx-tethys-grid.mjs +34 -33
  88. package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
  89. package/fesm2022/ngx-tethys-guider.mjs +25 -24
  90. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  91. package/fesm2022/ngx-tethys-i18n.mjs +3 -3
  92. package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
  93. package/fesm2022/ngx-tethys-icon.mjs +15 -13
  94. package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
  95. package/fesm2022/ngx-tethys-image.mjs +31 -29
  96. package/fesm2022/ngx-tethys-image.mjs.map +1 -1
  97. package/fesm2022/ngx-tethys-input-number.mjs +17 -10
  98. package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
  99. package/fesm2022/ngx-tethys-input.mjs +27 -26
  100. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  101. package/fesm2022/ngx-tethys-layout.mjs +63 -63
  102. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  103. package/fesm2022/ngx-tethys-list.mjs +21 -18
  104. package/fesm2022/ngx-tethys-list.mjs.map +1 -1
  105. package/fesm2022/ngx-tethys-loading.mjs +7 -7
  106. package/fesm2022/ngx-tethys-mention.mjs +35 -31
  107. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  108. package/fesm2022/ngx-tethys-menu.mjs +26 -26
  109. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  110. package/fesm2022/ngx-tethys-message.mjs +24 -24
  111. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  112. package/fesm2022/ngx-tethys-native-table.mjs +1119 -0
  113. package/fesm2022/ngx-tethys-native-table.mjs.map +1 -0
  114. package/fesm2022/ngx-tethys-nav.mjs +27 -27
  115. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  116. package/fesm2022/ngx-tethys-notify.mjs +20 -20
  117. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  118. package/fesm2022/ngx-tethys-pagination.mjs +18 -18
  119. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  120. package/fesm2022/ngx-tethys-popover.mjs +22 -21
  121. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  122. package/fesm2022/ngx-tethys-progress.mjs +17 -17
  123. package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
  124. package/fesm2022/ngx-tethys-property-operation.mjs +11 -11
  125. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  126. package/fesm2022/ngx-tethys-property.mjs +15 -12
  127. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  128. package/fesm2022/ngx-tethys-radio.mjs +17 -17
  129. package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
  130. package/fesm2022/ngx-tethys-rate.mjs +12 -12
  131. package/fesm2022/ngx-tethys-rate.mjs.map +1 -1
  132. package/fesm2022/ngx-tethys-resizable.mjs +21 -18
  133. package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
  134. package/fesm2022/ngx-tethys-result.mjs +11 -11
  135. package/fesm2022/ngx-tethys-result.mjs.map +1 -1
  136. package/fesm2022/ngx-tethys-segment.mjs +19 -16
  137. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  138. package/fesm2022/ngx-tethys-select.mjs +95 -46
  139. package/fesm2022/ngx-tethys-select.mjs.map +1 -1
  140. package/fesm2022/ngx-tethys-shared.mjs +85 -81
  141. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  142. package/fesm2022/ngx-tethys-skeleton.mjs +32 -32
  143. package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
  144. package/fesm2022/ngx-tethys-slide.mjs +37 -36
  145. package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
  146. package/fesm2022/ngx-tethys-slider.mjs +11 -11
  147. package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
  148. package/fesm2022/ngx-tethys-space.mjs +10 -10
  149. package/fesm2022/ngx-tethys-statistic.mjs +7 -7
  150. package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
  151. package/fesm2022/ngx-tethys-stepper.mjs +22 -22
  152. package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
  153. package/fesm2022/ngx-tethys-strength.mjs +7 -7
  154. package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
  155. package/fesm2022/ngx-tethys-switch.mjs +7 -7
  156. package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
  157. package/fesm2022/ngx-tethys-table.mjs +28 -28
  158. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  159. package/fesm2022/ngx-tethys-tabs.mjs +13 -13
  160. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  161. package/fesm2022/ngx-tethys-tag.mjs +11 -11
  162. package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
  163. package/fesm2022/ngx-tethys-testing.mjs +1 -1
  164. package/fesm2022/ngx-tethys-testing.mjs.map +1 -1
  165. package/fesm2022/ngx-tethys-time-picker.mjs +22 -22
  166. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  167. package/fesm2022/ngx-tethys-timeline.mjs +14 -14
  168. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  169. package/fesm2022/ngx-tethys-tooltip.mjs +36 -29
  170. package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
  171. package/fesm2022/ngx-tethys-transfer.mjs +15 -15
  172. package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
  173. package/fesm2022/ngx-tethys-tree-select.mjs +17 -17
  174. package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
  175. package/fesm2022/ngx-tethys-tree.mjs +50 -43
  176. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  177. package/fesm2022/ngx-tethys-typography.mjs +16 -16
  178. package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
  179. package/fesm2022/ngx-tethys-upload.mjs +26 -25
  180. package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
  181. package/fesm2022/ngx-tethys-util.mjs +11 -5
  182. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  183. package/fesm2022/ngx-tethys-vote.mjs +7 -7
  184. package/fesm2022/ngx-tethys-watermark.mjs +18 -15
  185. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  186. package/fesm2022/ngx-tethys.mjs +1 -1
  187. package/fesm2022/ngx-tethys.mjs.map +1 -1
  188. package/flexible-text/index.d.ts +5 -5
  189. package/form/index.d.ts +26 -22
  190. package/fullscreen/index.d.ts +4 -4
  191. package/grid/index.d.ts +12 -12
  192. package/guider/index.d.ts +10 -10
  193. package/i18n/index.d.ts +1 -1
  194. package/icon/index.d.ts +3 -3
  195. package/image/index.d.ts +12 -12
  196. package/input/index.d.ts +23 -23
  197. package/input-number/index.d.ts +4 -4
  198. package/layout/index.d.ts +16 -16
  199. package/list/index.d.ts +16 -15
  200. package/mention/index.d.ts +4 -4
  201. package/menu/index.d.ts +7 -7
  202. package/message/index.d.ts +5 -5
  203. package/native-table/index.d.ts +305 -0
  204. package/native-table/styles/native-table.scss +174 -0
  205. package/nav/index.d.ts +12 -12
  206. package/notify/index.d.ts +1 -1
  207. package/package.json +5 -1
  208. package/pagination/index.d.ts +21 -17
  209. package/popover/index.d.ts +8 -8
  210. package/progress/index.d.ts +18 -18
  211. package/property/index.d.ts +6 -6
  212. package/property-operation/index.d.ts +3 -3
  213. package/radio/index.d.ts +6 -6
  214. package/rate/index.d.ts +5 -5
  215. package/resizable/index.d.ts +2 -2
  216. package/result/index.d.ts +8 -8
  217. package/schematics/testing/test-workspace.js +1 -0
  218. package/schematics/version.d.ts +1 -1
  219. package/schematics/version.js +1 -1
  220. package/segment/index.d.ts +9 -9
  221. package/select/index.d.ts +28 -22
  222. package/shared/index.d.ts +31 -30
  223. package/shared/option/styles/select-dropdown.scss +5 -2
  224. package/skeleton/index.d.ts +52 -52
  225. package/slide/index.d.ts +5 -5
  226. package/slider/index.d.ts +6 -6
  227. package/space/index.d.ts +1 -1
  228. package/statistic/index.d.ts +18 -18
  229. package/stepper/index.d.ts +8 -8
  230. package/styles/index.scss +1 -0
  231. package/switch/index.d.ts +2 -2
  232. package/table/index.d.ts +24 -24
  233. package/tabs/index.d.ts +6 -6
  234. package/testing/index.d.ts +1 -1
  235. package/time-picker/index.d.ts +21 -21
  236. package/timeline/index.d.ts +8 -8
  237. package/tooltip/index.d.ts +12 -12
  238. package/transfer/index.d.ts +16 -16
  239. package/tree/index.d.ts +28 -28
  240. package/tree-select/index.d.ts +13 -13
  241. package/typography/index.d.ts +3 -3
  242. package/upload/index.d.ts +4 -4
  243. package/util/index.d.ts +17 -7
  244. package/vote/index.d.ts +2 -2
  245. package/watermark/index.d.ts +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ngx-tethys-native-table.mjs","sources":["../../../src/native-table/services/table-style.service.ts","../../../src/native-table/table/table-content.component.ts","../../../src/native-table/table/table-inner-default.component.ts","../../../src/native-table/table/table-inner-scroll.component.ts","../../../src/native-table/table/table.component.ts","../../../src/native-table/table/table.component.html","../../../src/native-table/table/tbody.component.ts","../../../src/native-table/cell/th.directive.ts","../../../src/native-table/row/tr.directive.ts","../../../src/native-table/table/thead.component.ts","../../../src/native-table/cell/cell.directive.ts","../../../src/native-table/cell/td-selection.component.ts","../../../src/native-table/cell/th-selection.component.ts","../../../src/native-table/cell/th-sort.component.ts","../../../src/native-table/table-editable/edit-event-dispatcher.service.ts","../../../src/native-table/table-editable/edit-ref.ts","../../../src/native-table/constant.ts","../../../src/native-table/table-editable/table-editable.directive.ts","../../../src/native-table/table-editable/td-popover-edit.directive.ts","../../../src/native-table/table-editable/td-edit-open.directive.ts","../../../src/native-table/table-editable/td-edit-close.directive.ts","../../../src/native-table/native-table.module.ts","../../../src/native-table/ngx-tethys-native-table.ts"],"sourcesContent":["import { Injectable, TemplateRef, signal, computed, InputSignal } from '@angular/core';\nimport { BehaviorSubject, combineLatest, merge, ReplaySubject } from 'rxjs';\n\nimport { ThyNativeTableSize, ThyNativeTableTheme } from '../table.interface';\nimport { ThyTableEmptyOptions } from 'ngx-tethys/table';\nimport { ThyNativeTableThDirective } from '../cell/th.directive';\n\nexport interface ThyNativeTableThInfo {\n thyWidth?: InputSignal<string | number | null>;\n colspan?: number | string | null;\n colSpan?: number | string | null;\n}\n\n@Injectable()\nexport class ThyNativeTableStyleService {\n theadTemplate = signal<TemplateRef<any> | null>(null);\n columnCount = signal<number>(0);\n tableSize = signal<ThyNativeTableSize>('default');\n tableTheme = signal<ThyNativeTableTheme>('default');\n showEmpty = signal<boolean>(false);\n emptyOptions = signal<ThyTableEmptyOptions | null>(null);\n\n listOfThWidthConfigPx$ = new BehaviorSubject<ReadonlyArray<string | null>>([]);\n\n setTheadTemplate(template: TemplateRef<any>): void {\n this.theadTemplate.set(template);\n }\n\n setTableSize(size: ThyNativeTableSize): void {\n this.tableSize.set(size);\n }\n\n setTableTheme(theme: ThyNativeTableTheme): void {\n this.tableTheme.set(theme);\n }\n\n setShowEmpty(showEmpty: boolean): void {\n this.showEmpty.set(showEmpty);\n }\n\n setEmptyOptions(emptyOptions: ThyTableEmptyOptions): void {\n this.emptyOptions.set(emptyOptions);\n }\n\n setListOfTh(listOfTh: readonly ThyNativeTableThDirective[]): void {\n const listOfThPx = listOfTh.map(item => {\n const width = item.thyWidth();\n if (width === null || width === undefined) {\n return null;\n }\n if (typeof width === 'number') {\n return `${width}px`;\n }\n return width.toString();\n });\n this.listOfThWidthConfigPx$.next(listOfThPx);\n }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { SafeAny } from 'ngx-tethys/types';\n\nimport { ThyNativeTableLayout } from '../table.interface';\n\n@Component({\n selector: 'table[thy-native-table-content]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (listOfColWidth().length > 0) {\n <colgroup>\n @for (width of listOfColWidth(); track $index) {\n <col [style.width]=\"width\" [style.minWidth]=\"width\" />\n }\n </colgroup>\n }\n @if (theadTemplate()) {\n <thead class=\"thy-native-table-thead\">\n <ng-template [ngTemplateOutlet]=\"theadTemplate()!\"></ng-template>\n </thead>\n }\n @if (contentTemplate()) {\n <ng-template [ngTemplateOutlet]=\"contentTemplate()!\"></ng-template>\n }\n <ng-content></ng-content>\n @if (tfootTemplate()) {\n <tfoot class=\"thy-native-table-summary\">\n <ng-template [ngTemplateOutlet]=\"tfootTemplate()!\"></ng-template>\n </tfoot>\n }\n `,\n host: {\n '[style.table-layout]': 'tableLayout()',\n '[style.width]': 'scrollX()',\n class: 'thy-native-table-content'\n },\n imports: [NgTemplateOutlet]\n})\nexport class ThyNativeTableContentComponent {\n readonly tableLayout = input<ThyNativeTableLayout>('auto');\n\n readonly theadTemplate = input<TemplateRef<SafeAny> | null>(null);\n\n readonly contentTemplate = input<TemplateRef<SafeAny> | null>(null);\n\n readonly tfootTemplate = input<TemplateRef<SafeAny> | null>(null);\n\n readonly listOfColWidth = input<ReadonlyArray<string | null>>([]);\n\n readonly scrollX = input<string | null>(null);\n}\n","import { ChangeDetectionStrategy, Component, input, OnInit, TemplateRef, ViewEncapsulation } from '@angular/core';\n\nimport { ThyNativeTableLayout } from '../table.interface';\nimport { ThyNativeTableContentComponent } from './table-content.component';\nimport { SafeAny } from 'ngx-tethys/types';\n\n@Component({\n selector: 'thy-native-table-inner-default',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <div class=\"thy-native-table-content\">\n <table\n thy-native-table-content\n [tableLayout]=\"tableLayout()\"\n [listOfColWidth]=\"listOfColWidth()\"\n [theadTemplate]=\"theadTemplate()\"\n [contentTemplate]=\"contentTemplate()\"\n [tfootTemplate]=\"tfootTemplate()\"></table>\n </div>\n `,\n host: { class: 'thy-native-table-container' },\n imports: [ThyNativeTableContentComponent]\n})\nexport class ThyNativeTableInnerDefaultComponent implements OnInit {\n readonly tableLayout = input<ThyNativeTableLayout>('auto');\n readonly listOfColWidth = input<ReadonlyArray<string | null>>([]);\n readonly theadTemplate = input<TemplateRef<SafeAny> | null>(null);\n readonly contentTemplate = input<TemplateRef<SafeAny> | null>(null);\n readonly tfootTemplate = input<TemplateRef<SafeAny> | null>(null);\n\n ngOnInit(): void {}\n}\n","import { ChangeDetectionStrategy, Component, input, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { SafeAny } from 'ngx-tethys/types';\n\nimport { ThyNativeTableContentComponent } from './table-content.component';\n\n@Component({\n selector: 'thy-native-table-inner-scroll',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (scrollY()) {\n <div #tableHeaderElement class=\"thy-native-table-header\">\n <table\n thy-native-table-content\n [tableLayout]=\"'fixed'\"\n [scrollX]=\"scrollX()\"\n [listOfColWidth]=\"listOfColWidth()\"\n [theadTemplate]=\"theadTemplate()\"></table>\n </div>\n <div #tableBodyElement class=\"thy-native-table-body\" [style.max-height]=\"scrollY()\">\n <table\n thy-native-table-content\n [tableLayout]=\"'fixed'\"\n [scrollX]=\"scrollX()\"\n [listOfColWidth]=\"listOfColWidth()\"\n [contentTemplate]=\"contentTemplate()\"></table>\n </div>\n <div #tableFootElement class=\"thy-native-table-summary\">\n <table\n thy-native-table-content\n [tableLayout]=\"'fixed'\"\n [scrollX]=\"scrollX()\"\n [listOfColWidth]=\"listOfColWidth()\"\n [tfootTemplate]=\"tfootTemplate()\"></table>\n </div>\n } @else {\n <div class=\"thy-native-table-content\" [style.overflow-x]=\"scrollX() ? 'auto' : null\">\n <table\n thy-native-table-content\n [tableLayout]=\"'fixed'\"\n [scrollX]=\"scrollX()\"\n [listOfColWidth]=\"listOfColWidth()\"\n [theadTemplate]=\"theadTemplate()\"\n [contentTemplate]=\"contentTemplate()\"\n [tfootTemplate]=\"tfootTemplate()\"></table>\n </div>\n }\n `,\n host: { class: 'thy-native-table-container' },\n imports: [ThyNativeTableContentComponent]\n})\nexport class ThyNativeTableInnerScrollComponent<T = SafeAny> {\n readonly data = input<readonly T[]>([]);\n readonly scrollX = input<string | null>(null);\n readonly scrollY = input<string | null>(null);\n readonly contentTemplate = input<TemplateRef<SafeAny> | null>(null);\n readonly widthConfig = input<string[]>([]);\n readonly listOfColWidth = input<ReadonlyArray<string | null>>([]);\n readonly theadTemplate = input<TemplateRef<SafeAny> | null>(null);\n readonly tfootTemplate = input<TemplateRef<SafeAny> | null>(null);\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n OnInit,\n TemplateRef,\n computed,\n effect,\n inject,\n input,\n output,\n signal,\n DestroyRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { ThyNativeTableStyleService } from '../services/table-style.service';\nimport { ThyNativeTableLayout, ThyNativeTableScroll, ThyNativeTableSize, ThyNativeTableTheme } from '../table.interface';\nimport { ThyNativeTableInnerDefaultComponent } from './table-inner-default.component';\nimport { ThyNativeTableInnerScrollComponent } from './table-inner-scroll.component';\nimport { UpdateHostClassService } from 'ngx-tethys/core';\nimport { ThyPagination } from 'ngx-tethys/pagination';\nimport { ThyPage, ThyTableEmptyOptions } from 'ngx-tethys/table';\n\n@Component({\n selector: 'thy-native-table',\n exportAs: 'thyNativeTable',\n providers: [ThyNativeTableStyleService, UpdateHostClassService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n templateUrl: './table.component.html',\n host: {\n class: 'thy-native-table'\n },\n imports: [ThyNativeTableInnerDefaultComponent, ThyNativeTableInnerScrollComponent, ThyPagination]\n})\nexport class ThyNativeTableComponent<T = any> implements OnInit {\n private elementRef = inject(ElementRef);\n private cdr = inject(ChangeDetectorRef);\n private styleService = inject(ThyNativeTableStyleService);\n private destroyRef = inject(DestroyRef);\n private updateHostClassService = inject(UpdateHostClassService);\n\n readonly thyTableLayout = input<ThyNativeTableLayout>('auto');\n readonly thySize = input<ThyNativeTableSize>('md');\n readonly thyTheme = input<ThyNativeTableTheme>('default');\n\n readonly thyData = input<readonly T[]>([]);\n\n readonly thyShowPagination = input<boolean>(false);\n readonly thyPageIndex = input<number>(1);\n readonly thyPageSize = input<number>(20);\n readonly thyPageTotal = input<number>(0);\n readonly thyShowSizeChanger = input<boolean>(false);\n readonly thyPageSizeOptions = input<number[]>([20, 50, 100]);\n\n readonly thyPageIndexChange = output<number>();\n readonly thyPageSizeChange = output<number>();\n\n readonly thyScroll = input<ThyNativeTableScroll>({ x: null, y: null });\n\n readonly thyEmptyOptions = input<ThyTableEmptyOptions>({});\n\n /** data for ngFor tr */\n public data = computed<readonly T[]>(() => this.thyData());\n\n public theadTemplate = signal<TemplateRef<any> | null>(null);\n public listOfManualColWidth = signal<ReadonlyArray<string | null>>([]);\n\n public pagination = computed<ThyPage | null>(() => {\n if (!this.thyShowPagination()) {\n return null;\n }\n return {\n index: this.thyPageIndex() || this.defaultPagination.index,\n size: this.thyPageSize() || this.defaultPagination.size,\n sizeOptions: this.thyPageSizeOptions() || this.defaultPagination.sizeOptions\n };\n });\n\n defaultPagination = { index: 1, size: 20, sizeOptions: [20, 50, 100] };\n\n scrollX = computed(() => this.thyScroll().x || null);\n scrollY = computed(() => this.thyScroll().y || null);\n\n constructor(private tableElementRef: ElementRef) {\n effect(() => {\n this.updateTableClass();\n this.styleService.setEmptyOptions(this.thyEmptyOptions());\n });\n effect(() => {\n const showEmpty = this.thyData()?.length === 0;\n this.styleService.setShowEmpty(showEmpty);\n });\n effect(() => {\n this.theadTemplate.set(this.styleService.theadTemplate());\n });\n }\n\n ngOnInit(): void {\n this.updateHostClassService.initializeElement(this.tableElementRef.nativeElement);\n const { listOfThWidthConfigPx$ } = this.styleService;\n listOfThWidthConfigPx$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(listOfWidth => {\n this.listOfManualColWidth.set(listOfWidth);\n this.cdr.markForCheck();\n });\n }\n\n private setNativeTableClass() {\n const classNames: string[] = [];\n if (this.thySize()) {\n classNames.push(`native-table-${this.thySize()}`);\n }\n if (this.thyTheme()) {\n classNames.push(`native-table-${this.thyTheme()}`);\n }\n if (this.elementRef.nativeElement) {\n this.updateHostClassService.updateClass(classNames);\n }\n }\n\n public onPageIndexChange(event: number) {\n this.thyPageIndexChange.emit(event);\n }\n\n public onPageSizeChange(event: number) {\n this.thyPageSizeChange.emit(event);\n }\n\n private updateTableClass(): void {\n const size = this.thySize();\n const theme = this.thyTheme();\n if (size || theme) {\n this.styleService.setTableSize(size);\n this.styleService.setTableTheme(theme);\n this.setNativeTableClass();\n }\n }\n}\n","<div #tableMainElement class=\"thy-native-table-wrapper\">\n <ng-template #contentTemplate>\n <ng-content></ng-content>\n </ng-template>\n @if (scrollY() || scrollX()) {\n <thy-native-table-inner-scroll\n [scrollX]=\"scrollX()\"\n [scrollY]=\"scrollY()\"\n [contentTemplate]=\"contentTemplate\"\n [listOfColWidth]=\"listOfManualColWidth()\"\n [theadTemplate]=\"theadTemplate()\"></thy-native-table-inner-scroll>\n } @else {\n <thy-native-table-inner-default\n [tableLayout]=\"thyTableLayout()\"\n [listOfColWidth]=\"listOfManualColWidth()\"\n [theadTemplate]=\"theadTemplate()\"\n [contentTemplate]=\"contentTemplate\"></thy-native-table-inner-default>\n }\n @if (thyShowPagination()) {\n <div class=\"thy-table-pagination\">\n <thy-pagination\n [thyPageIndex]=\"pagination().index\"\n [thyTotal]=\"pagination().total\"\n [thyPageSize]=\"pagination().size\"\n [thyPageSizeOptions]=\"pagination().sizeOptions\"\n [thyShowSizeChanger]=\"thyShowSizeChanger()\"\n (thyPageIndexChange)=\"onPageIndexChange($event)\"\n (thyPageSizeChanged)=\"onPageSizeChange($event)\"></thy-pagination>\n </div>\n }\n</div>\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, inject } from '@angular/core';\n\nimport { ThyNativeTableStyleService } from '../services/table-style.service';\nimport { ThyEmpty } from 'ngx-tethys/empty';\n\n/* eslint-disable @angular-eslint/component-selector */\n@Component({\n selector: 'tbody',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <ng-content></ng-content>\n @if (showEmpty()) {\n <tr class=\"thy-table-empty\">\n <td colspan=\"100%\">\n <thy-empty\n [thyMessage]=\"emptyOptions()?.message\"\n [thyIconName]=\"emptyOptions()?.iconName\"\n [thySize]=\"emptyOptions()?.size\"\n [thyMarginTop]=\"emptyOptions()?.marginTop\"\n [thyTopAuto]=\"emptyOptions()?.topAuto\"></thy-empty>\n </td>\n </tr>\n }\n `,\n host: {\n '[class.thy-native-table-tbody]': 'isInsideNativeTable'\n },\n imports: [ThyEmpty]\n})\nexport class ThyNativeTableBodyComponent {\n private styleService = inject(ThyNativeTableStyleService, { optional: true });\n public isInsideNativeTable = !!this.styleService;\n\n public showEmpty = computed(() => this.styleService?.showEmpty() ?? false);\n public emptyOptions = computed(() => this.styleService?.emptyOptions() ?? null);\n\n constructor() {}\n}\n","import { Directive, effect, ElementRef, inject, input, OnChanges, Renderer2, SimpleChanges } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { ThyNativeTableThInfo } from '../services/table-style.service';\n\n/* eslint-disable @angular-eslint/directive-selector */\n@Directive({\n selector: 'th'\n})\nexport class ThyNativeTableThDirective implements ThyNativeTableThInfo {\n private renderer = inject(Renderer2);\n private el: HTMLElement = inject(ElementRef<HTMLElement>).nativeElement;\n\n changes$ = new Subject<void>();\n\n readonly thyWidth = input<string | number | null>(null);\n\n readonly thyColspan = input<string | number | null>(null);\n\n readonly thyColSpan = input<string | number | null>(null);\n\n readonly thyRowspan = input<string | number | null>(null);\n\n readonly thyRowSpan = input<string | number | null>(null);\n\n get colspan(): number | string | null {\n return this.thyColspan() || this.thyColSpan() || null;\n }\n\n get colSpan(): number | string | null {\n return this.thyColspan() || this.thyColSpan() || null;\n }\n\n constructor() {\n effect(() => {\n if (this.thyColspan() || this.thyColSpan()) {\n const col = this.colspan;\n if (col !== null && col !== undefined) {\n this.renderer.setAttribute(this.el, 'colspan', `${col}`);\n } else {\n this.renderer.removeAttribute(this.el, 'colspan');\n }\n }\n\n if (this.thyRowspan() || this.thyRowSpan()) {\n const row = this.thyRowspan() || this.thyRowSpan() || null;\n if (row !== null && row !== undefined) {\n this.renderer.setAttribute(this.el, 'rowspan', `${row}`);\n } else {\n this.renderer.removeAttribute(this.el, 'rowspan');\n }\n }\n\n if (this.thyWidth() || this.thyColspan() || this.thyColSpan()) {\n this.changes$.next();\n }\n });\n }\n}\n","import { AfterContentInit, ContentChildren, DestroyRef, Directive, QueryList, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Observable, ReplaySubject, combineLatest, merge } from 'rxjs';\nimport { map, mergeMap, startWith, switchMap } from 'rxjs/operators';\n\nimport { ThyNativeTableThDirective } from '../cell/th.directive';\nimport { ThyNativeTableStyleService } from '../services/table-style.service';\n\n/* eslint-disable @angular-eslint/directive-selector */\n@Directive({\n selector: 'tr:not([thyNativeTableMeasureRow]):not([thyNativeTableFixedRow])',\n host: {\n '[class.thy-native-table-row]': 'isInsideNativeTable'\n }\n})\nexport class ThyNativeTableTrDirective implements AfterContentInit {\n private destroyRef = inject(DestroyRef);\n private styleService = inject(ThyNativeTableStyleService, { optional: true });\n\n @ContentChildren(ThyNativeTableThDirective) listOfThDirective!: QueryList<ThyNativeTableThDirective>;\n\n private listOfColumns$ = new ReplaySubject<ThyNativeTableThDirective[]>(1);\n\n listOfColumnsChanges$: Observable<ThyNativeTableThDirective[]> = this.listOfColumns$.pipe(\n switchMap(list => merge(this.listOfColumns$, ...list.map(c => c.changes$)).pipe(mergeMap(() => this.listOfColumns$))),\n takeUntilDestroyed(this.destroyRef)\n );\n\n isInsideNativeTable = !!this.styleService;\n\n ngAfterContentInit(): void {\n if (this.styleService) {\n this.listOfThDirective.changes\n .pipe(startWith(this.listOfThDirective), takeUntilDestroyed(this.destroyRef))\n .subscribe(thDirectives => {\n const thList = thDirectives.toArray();\n this.listOfColumns$.next(thList);\n });\n }\n }\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n inject,\n DestroyRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { EMPTY, Observable, merge, of } from 'rxjs';\nimport { delay, map, mergeMap, startWith, switchMap } from 'rxjs/operators';\n\nimport { ThyNativeTableStyleService } from '../services/table-style.service';\nimport { ThyNativeTableTrDirective } from '../row/tr.directive';\n\n/* eslint-disable @angular-eslint/component-selector */\n@Component({\n selector: 'thead:not(.thy-native-table-thead)',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <ng-template #contentTemplate>\n <ng-content></ng-content>\n </ng-template>\n @if (!isInsideNativeTable) {\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"></ng-template>\n }\n `,\n imports: [NgTemplateOutlet]\n})\nexport class ThyNativeTableHeaderComponent implements AfterContentInit, AfterViewInit, OnInit {\n private styleService = inject(ThyNativeTableStyleService, { optional: true });\n private destroyRef = inject(DestroyRef);\n private el: HTMLElement = inject(ElementRef<HTMLElement>).nativeElement;\n private renderer = inject(Renderer2);\n\n public isInsideNativeTable = !!this.styleService;\n\n @ViewChild('contentTemplate', { static: true }) templateRef!: TemplateRef<any>;\n\n @ContentChildren(ThyNativeTableTrDirective, { descendants: true }) listOfTrDirective!: QueryList<ThyNativeTableTrDirective>;\n\n ngOnInit(): void {\n if (this.styleService) {\n this.styleService.setTheadTemplate(this.templateRef);\n }\n }\n\n ngAfterContentInit(): void {\n if (this.styleService) {\n const firstTableRow$ = this.listOfTrDirective.changes.pipe(\n startWith(this.listOfTrDirective),\n map(item => item && item.first),\n takeUntilDestroyed(this.destroyRef)\n ) as Observable<ThyNativeTableTrDirective>;\n\n const listOfColumnsChanges$ = firstTableRow$.pipe(\n switchMap(firstTableRow => {\n if (firstTableRow) {\n return firstTableRow.listOfColumnsChanges$;\n }\n return EMPTY;\n })\n );\n\n listOfColumnsChanges$.subscribe(data => {\n this.styleService!.setListOfTh(data);\n });\n }\n }\n\n ngAfterViewInit(): void {\n if (this.styleService) {\n this.renderer.removeChild(this.renderer.parentNode(this.el), this.el);\n }\n }\n}\n","import { Directive, inject } from '@angular/core';\n\nimport { ThyNativeTableStyleService } from '../services/table-style.service';\n\n/* eslint-disable @angular-eslint/directive-selector */\n@Directive({\n selector: 'th, td',\n host: {\n '[class.thy-native-table-cell]': 'isInsideTable'\n }\n})\nexport class ThyNativeTableCellDirective {\n isInsideTable = !!inject(ThyNativeTableStyleService, { optional: true });\n}\n","import { ChangeDetectionStrategy, Component, booleanAttribute, inject, input, output, OnInit, DestroyRef } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { ThyCheckbox } from 'ngx-tethys/checkbox';\n\n/* eslint-disable @angular-eslint/component-selector */\n@Component({\n selector: 'td[thyCellChecked],td[thyCellCheckbox]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <label\n thyCheckbox\n [ngModel]=\"thyCellChecked()\"\n [disabled]=\"thyDisabled()\"\n [thyIndeterminate]=\"thyIndeterminate()\"\n (ngModelChange)=\"onCheckedChange($event)\"></label>\n <ng-content></ng-content>\n `,\n host: {\n '[class.thy-native-table-selection-column]': 'thyCellCheckbox()'\n },\n imports: [FormsModule, ThyCheckbox]\n})\nexport class ThyNativeTableTdSelectionComponent<T> implements OnInit {\n readonly thyDisabled = input(false, { transform: booleanAttribute });\n readonly thyCellCheckbox = input(false, { transform: booleanAttribute });\n readonly thyCellChecked = input(false, { transform: booleanAttribute });\n readonly thyIndeterminate = input(false, { transform: booleanAttribute });\n\n readonly thyCheckedChange = output<boolean>();\n\n ngOnInit(): void {}\n\n onCheckedChange(checked: boolean): void {\n this.thyCheckedChange.emit(checked);\n }\n}\n","import { ChangeDetectionStrategy, Component, booleanAttribute, inject, input, output, OnInit } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { ThyCheckbox } from 'ngx-tethys/checkbox';\n\n/* eslint-disable @angular-eslint/component-selector */\n@Component({\n selector: 'th[thyHeaderCellChecked],th[thyHeaderCellCheckbox]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <label\n thyCheckbox\n [ngModel]=\"thyHeaderCellChecked()\"\n [thyDisabled]=\"thyDisabled()\"\n [thyIndeterminate]=\"thyIndeterminate()\"\n (ngModelChange)=\"onCheckedChange($event)\"></label>\n `,\n host: {\n '[class.thy-native-table-selection-column]': 'thyHeaderCellCheckbox()'\n },\n imports: [FormsModule, ThyCheckbox]\n})\nexport class ThyNativeTableThSelectionComponent<T> implements OnInit {\n readonly thyHeaderCellCheckbox = input(true, { transform: booleanAttribute });\n\n readonly thyDisabled = input(false, { transform: booleanAttribute });\n\n readonly thyHeaderCellChecked = input(false, { transform: booleanAttribute });\n\n readonly thyIndeterminate = input(false, { transform: booleanAttribute });\n\n readonly thyCheckedChange = output<boolean>();\n\n constructor() {}\n\n ngOnInit(): void {}\n\n onCheckedChange(checked: boolean): void {\n this.thyCheckedChange.emit(checked);\n }\n}\n","import { ChangeDetectionStrategy, Component, TemplateRef, booleanAttribute, input, output, OnInit, signal, computed } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\nimport { ThyIcon } from 'ngx-tethys/icon';\nimport { ThyNativeTableSortOrder } from '../table.interface';\n\n/* eslint-disable @angular-eslint/component-selector */\n@Component({\n selector: 'th[thyHeaderCellSortable]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <ng-content></ng-content>\n <span class=\"thy-native-table-column-sorter\" [class.thy-native-table-column-sorter-full]=\"isDown() && isUp()\">\n <span class=\"thy-native-table-column-sorter-inner\">\n @if (sortTriggerTemplate()) {\n <ng-template [ngTemplateOutlet]=\"sortTriggerTemplate()!\"></ng-template>\n } @else {\n @if (isUp()) {\n <thy-icon\n thyIconName=\"angle-up\"\n class=\"thy-native-table-column-sorter-up\"\n [class.active]=\"currentSortOrder() === 'asc'\" />\n }\n @if (isDown()) {\n <thy-icon\n thyIconName=\"angle-down\"\n class=\"thy-native-table-column-sorter-down\"\n [class.active]=\"currentSortOrder() === 'desc'\" />\n }\n }\n </span>\n </span>\n `,\n host: {\n '[class.thy-native-table-column-has-sorters]': 'thyHeaderCellSortable()',\n '[class.thy-native-table-column-sort]': 'currentSortOrder() === \"desc\" || currentSortOrder() === \"asc\"'\n },\n imports: [NgTemplateOutlet, ThyIcon]\n})\nexport class ThyNativeTableThSortComponent implements OnInit {\n readonly thyHeaderCellSortable = input(false, { transform: booleanAttribute });\n\n readonly thySortOrder = input<ThyNativeTableSortOrder | null>(null);\n\n readonly thySortDirections = input<ThyNativeTableSortOrder[]>(['asc', 'desc']);\n\n readonly sortTriggerTemplate = input<TemplateRef<any> | null>(null);\n\n readonly thySortOrderChange = output<string | null>();\n\n currentSortOrder = signal<ThyNativeTableSortOrder | null>(null);\n\n isUp = computed(() => {\n const directions = this.thySortDirections();\n return directions.indexOf('asc') !== -1;\n });\n\n isDown = computed(() => {\n const directions = this.thySortDirections();\n return directions.indexOf('desc') !== -1;\n });\n\n setSortOrder(order: ThyNativeTableSortOrder): void {\n this.currentSortOrder.set(order);\n }\n\n ngOnInit(): void {\n if (this.thySortOrder() !== null) {\n this.currentSortOrder.set(this.thySortOrder()!);\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\nimport { distinctUntilChanged, map, shareReplay } from 'rxjs/operators';\n\n@Injectable()\nexport class ThyNativeTableEditEventDispatcher {\n private editing = new Subject<HTMLElement | null>();\n private currentEditingCell: HTMLElement | null = null;\n\n readonly editing$ = this.editing.asObservable().pipe(distinctUntilChanged(), shareReplay(1));\n\n editingCell(element: HTMLElement): Observable<boolean> {\n return this.editing$.pipe(\n map(cell => cell === element),\n distinctUntilChanged()\n );\n }\n\n startEditing(cell: HTMLElement): void {\n this.currentEditingCell = cell;\n this.editing.next(cell);\n }\n\n stopEditing(): void {\n this.currentEditingCell = null;\n this.editing.next(null);\n }\n\n getCurrentEditingCell(): HTMLElement | null {\n return this.currentEditingCell;\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\nimport { ThyNativeTableEditEventDispatcher } from './edit-event-dispatcher.service';\n\n@Injectable()\nexport class ThyNativeTableEditRef {\n private dispatcher = inject(ThyNativeTableEditEventDispatcher);\n private afterClosedSubject = new Subject<void>();\n\n readonly afterClosed: Observable<void> = this.afterClosedSubject.asObservable();\n\n close(): void {\n this.dispatcher.stopEditing();\n this.afterClosedSubject.next();\n }\n}\n","export const THY_NATIVE_TABLE_CELL_SELECTOR = '.thy-native-table-cell-edit';\n\nexport const THY_NATIVE_TABLE_EDIT_PANE_SELECTOR = '.thy-native-table-popover-edit';\n\nexport const THY_NATIVE_TABLE_EDIT_OPEN_SELECTOR = '[thyEditOpen]';\n\nexport enum ThyNativeTableEditTrigger {\n CLICK = 'click',\n DBLCLICK = 'dblclick'\n}\n","import { AfterViewInit, DestroyRef, Directive, ElementRef, NgZone, inject, input } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport {\n THY_NATIVE_TABLE_CELL_SELECTOR,\n THY_NATIVE_TABLE_EDIT_OPEN_SELECTOR,\n THY_NATIVE_TABLE_EDIT_PANE_SELECTOR,\n ThyNativeTableEditTrigger\n} from '../constant';\nimport { ThyNativeTableEditEventDispatcher } from './edit-event-dispatcher.service';\n\n@Directive({\n selector: 'thy-native-table[thyEditable]',\n providers: [ThyNativeTableEditEventDispatcher]\n})\nexport class ThyNativeTableEditableDirective implements AfterViewInit {\n private elementRef = inject(ElementRef<HTMLElement>);\n private ngZone = inject(NgZone);\n private destroyRef = inject(DestroyRef);\n private dispatcher = inject(ThyNativeTableEditEventDispatcher);\n\n thyEditTrigger = input<ThyNativeTableEditTrigger>(ThyNativeTableEditTrigger.CLICK);\n\n ngAfterViewInit(): void {\n this.listenForEditEvents();\n }\n\n private listenForEditEvents(): void {\n const element = this.elementRef.nativeElement;\n this.ngZone.runOutsideAngular(() => {\n const trigger = this.thyEditTrigger();\n\n if (trigger === 'click') {\n fromEvent<MouseEvent>(element, 'click')\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(event => this.handleClickEdit(event));\n } else if (trigger === 'dblclick') {\n fromEvent<MouseEvent>(element, 'dblclick')\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(event => this.handleClickEdit(event));\n }\n\n fromEvent<KeyboardEvent>(document, 'keydown')\n .pipe(\n filter(event => event.key === 'Enter'),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe(event => this.handelEnterEvent(event));\n\n fromEvent<KeyboardEvent>(element, 'keydown')\n .pipe(\n filter(event => event.key === 'Escape'),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe(() => {\n this.ngZone.run(() => this.dispatcher.stopEditing());\n });\n\n fromEvent<MouseEvent>(document, 'click')\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(event => this.handleClickOutside(event));\n });\n }\n\n private handleClickEdit(event: MouseEvent): void {\n const target = event.target as HTMLElement;\n\n if (target.closest(THY_NATIVE_TABLE_EDIT_OPEN_SELECTOR)) {\n return;\n }\n\n const cell = target.closest(THY_NATIVE_TABLE_CELL_SELECTOR) as HTMLElement;\n if (cell) {\n this.ngZone.run(() => this.dispatcher.startEditing(cell));\n }\n }\n\n private handelEnterEvent(event: KeyboardEvent): void {\n const target = event.target as HTMLElement;\n\n if (target.closest(THY_NATIVE_TABLE_EDIT_PANE_SELECTOR)) {\n if (this.dispatcher.getCurrentEditingCell()) {\n event.preventDefault();\n this.ngZone.run(() => this.dispatcher.stopEditing());\n }\n }\n }\n\n private handleClickOutside(event: MouseEvent): void {\n const target = event.target as HTMLElement;\n const element = this.elementRef.nativeElement;\n\n if (!element.contains(target) && !target.closest(THY_NATIVE_TABLE_EDIT_PANE_SELECTOR)) {\n this.ngZone.run(() => this.dispatcher.stopEditing());\n }\n }\n}\n","import {\n AfterViewInit,\n DestroyRef,\n Directive,\n ElementRef,\n inject,\n Injector,\n Input,\n OnDestroy,\n TemplateRef,\n ViewContainerRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { ThyPopover, ThyPopoverRef } from 'ngx-tethys/popover';\n\nimport { ThyNativeTableEditEventDispatcher } from './edit-event-dispatcher.service';\nimport { ThyNativeTableEditRef } from './edit-ref';\n\n@Directive({\n selector: 'td[thyCellPopoverEdit]',\n\n providers: [ThyNativeTableEditRef],\n host: {\n class: 'thy-native-table-cell-edit'\n }\n})\nexport class ThyNativeTableTdPopoverEditDirective implements AfterViewInit, OnDestroy {\n private elementRef = inject(ElementRef<HTMLElement>);\n private viewContainerRef = inject(ViewContainerRef);\n private popover = inject(ThyPopover);\n private dispatcher = inject(ThyNativeTableEditEventDispatcher);\n private destroyRef = inject(DestroyRef);\n\n @Input('thyCellPopoverEdit') editTemplate!: TemplateRef<any>;\n\n private popoverRef?: ThyPopoverRef<any>;\n private focusoutUnsubscribe?: () => void;\n\n ngAfterViewInit(): void {\n this.dispatcher\n .editingCell(this.elementRef.nativeElement)\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(isEditing => {\n if (isEditing) {\n this.openPopover();\n } else {\n this.closePopover();\n }\n });\n }\n\n private openPopover(): void {\n if (this.popoverRef) {\n return;\n }\n\n if (!this.editTemplate) {\n return;\n }\n\n const tdElement = this.elementRef.nativeElement;\n const rect = tdElement.getBoundingClientRect();\n\n this.popoverRef = this.popover.open(this.editTemplate, {\n origin: tdElement,\n viewContainerRef: this.viewContainerRef,\n placement: 'bottom',\n offset: -rect.height,\n hasBackdrop: false,\n panelClass: 'thy-native-table-popover-edit',\n originActiveClass: 'thy-native-table-cell-editing',\n animationDisabled: true\n });\n\n this.popoverRef?.afterOpened().subscribe(() => {\n const popoverElement = document.querySelector('.thy-native-table-popover-edit') as HTMLElement;\n if (popoverElement) {\n popoverElement.style.width = `${rect.width}px`;\n popoverElement.style.minWidth = `${rect.width}px`;\n popoverElement.style.height = `${rect.height}px`;\n popoverElement.style.minHeight = `${rect.height}px`;\n this.listenFocusout(popoverElement);\n }\n });\n\n this.popoverRef?.afterClosed().subscribe(() => {\n this.popoverRef = undefined;\n this.focusoutUnsubscribe?.();\n });\n }\n\n private listenFocusout(popoverElement: HTMLElement): void {\n const handler = () => {\n // 延迟 100ms 检查焦点是否还在 popover 内\n // 避免在 popover 内部元素之间切换焦点时误关闭\n setTimeout(() => {\n if (document.activeElement && !popoverElement.contains(document.activeElement)) {\n this.dispatcher.stopEditing();\n }\n }, 100);\n };\n\n popoverElement.addEventListener('focusout', handler);\n this.focusoutUnsubscribe = () => {\n popoverElement.removeEventListener('focusout', handler);\n };\n }\n\n private closePopover(): void {\n this.popoverRef?.close();\n }\n\n ngOnDestroy(): void {\n this.closePopover();\n }\n}\n","import { DestroyRef, Directive, ElementRef, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent } from 'rxjs';\n\nimport { THY_NATIVE_TABLE_CELL_SELECTOR } from '../constant';\nimport { ThyNativeTableEditEventDispatcher } from './edit-event-dispatcher.service';\n\n@Directive({\n selector: '[thyEditOpen]'\n})\nexport class ThyNativeTableTdEditOpenDirective {\n readonly elementRef = inject(ElementRef<HTMLElement>);\n private dispatcher = inject(ThyNativeTableEditEventDispatcher);\n private destroyRef = inject(DestroyRef);\n\n constructor() {\n fromEvent<Event>(this.elementRef.nativeElement, 'click')\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((event: Event) => {\n event.stopPropagation();\n const cell = this.elementRef.nativeElement.closest(THY_NATIVE_TABLE_CELL_SELECTOR) as HTMLElement;\n if (cell) {\n this.dispatcher.startEditing(cell);\n }\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent } from 'rxjs';\n\nimport { ThyNativeTableEditRef } from './edit-ref';\n\n@Directive({\n selector: '[thyEditClose]'\n})\nexport class ThyNativeTableTdEditCloseDirective {\n private editRef = inject(ThyNativeTableEditRef);\n private elementRef = inject(ElementRef<HTMLElement>);\n private destroyRef = inject(DestroyRef);\n\n constructor() {\n fromEvent(this.elementRef.nativeElement, 'click')\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => {\n this.editRef.close();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyNativeTableComponent } from './table/table.component';\nimport { ThyNativeTableInnerDefaultComponent } from './table/table-inner-default.component';\nimport { ThyNativeTableInnerScrollComponent } from './table/table-inner-scroll.component';\nimport { ThyNativeTableBodyComponent } from './table/tbody.component';\nimport { ThyNativeTableHeaderComponent } from './table/thead.component';\nimport { ThyNativeTableTrDirective } from './row/tr.directive';\nimport { ThyNativeTableCellDirective } from './cell/cell.directive';\nimport { ThyNativeTableThDirective } from './cell/th.directive';\nimport { ThyNativeTableTdSelectionComponent } from './cell/td-selection.component';\nimport { ThyNativeTableThSelectionComponent } from './cell/th-selection.component';\nimport { ThyNativeTableThSortComponent } from './cell/th-sort.component';\nimport {\n ThyNativeTableEditableDirective,\n ThyNativeTableTdEditCloseDirective,\n ThyNativeTableTdEditOpenDirective,\n ThyNativeTableTdPopoverEditDirective\n} from './table-editable';\n\nconst EDIT_COMPONENTS = [\n ThyNativeTableEditableDirective,\n ThyNativeTableTdEditCloseDirective,\n ThyNativeTableTdEditOpenDirective,\n ThyNativeTableTdPopoverEditDirective\n];\n@NgModule({\n imports: [\n CommonModule,\n ThyNativeTableComponent,\n ThyNativeTableInnerScrollComponent,\n ThyNativeTableInnerDefaultComponent,\n ThyNativeTableBodyComponent,\n ThyNativeTableHeaderComponent,\n ThyNativeTableTrDirective,\n ThyNativeTableCellDirective,\n ThyNativeTableThDirective,\n ThyNativeTableTdSelectionComponent,\n ThyNativeTableThSelectionComponent,\n ThyNativeTableThSortComponent,\n ...EDIT_COMPONENTS\n ],\n exports: [\n ThyNativeTableComponent,\n ThyNativeTableInnerScrollComponent,\n ThyNativeTableInnerDefaultComponent,\n ThyNativeTableBodyComponent,\n ThyNativeTableHeaderComponent,\n ThyNativeTableTrDirective,\n ThyNativeTableCellDirective,\n ThyNativeTableThDirective,\n ThyNativeTableTdSelectionComponent,\n ThyNativeTableThSelectionComponent,\n ThyNativeTableThSortComponent,\n ...EDIT_COMPONENTS\n ]\n})\nexport class ThyNativeTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -21,10 +21,10 @@ class ThyIconNavLink {
21
21
  this.thyIconNavLinkIcon = input('', ...(ngDevMode ? [{ debugName: "thyIconNavLinkIcon" }] : []));
22
22
  this.thyIconNavLinkActive = input(false, ...(ngDevMode ? [{ debugName: "thyIconNavLinkActive", transform: coerceBooleanProperty }] : [{ transform: coerceBooleanProperty }]));
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyIconNavLink, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.14", type: ThyIconNavLink, isStandalone: true, selector: "[thyIconNavLink]", inputs: { thyIconNavLinkIcon: { classPropertyName: "thyIconNavLinkIcon", publicName: "thyIconNavLinkIcon", isSignal: true, isRequired: false, transformFunction: null }, thyIconNavLinkActive: { classPropertyName: "thyIconNavLinkActive", publicName: "thyIconNavLinkActive", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.active": "thyIconNavLinkActive()", "class.thy-icon-nav-link": "true" } }, ngImport: i0, template: '<ng-content></ng-content>@if (thyIconNavLinkIcon()) {<thy-icon [thyIconName]="thyIconNavLinkIcon()"></thy-icon>}', isInline: true, dependencies: [{ kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }] }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyIconNavLink, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: ThyIconNavLink, isStandalone: true, selector: "[thyIconNavLink]", inputs: { thyIconNavLinkIcon: { classPropertyName: "thyIconNavLinkIcon", publicName: "thyIconNavLinkIcon", isSignal: true, isRequired: false, transformFunction: null }, thyIconNavLinkActive: { classPropertyName: "thyIconNavLinkActive", publicName: "thyIconNavLinkActive", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.active": "thyIconNavLinkActive()", "class.thy-icon-nav-link": "true" } }, ngImport: i0, template: '<ng-content></ng-content>@if (thyIconNavLinkIcon()) {<thy-icon [thyIconName]="thyIconNavLinkIcon()"></thy-icon>}', isInline: true, dependencies: [{ kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }] }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyIconNavLink, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyIconNavLink, decorators: [{
28
28
  type: Component,
29
29
  args: [{
30
30
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -56,10 +56,10 @@ class ThyIconNav {
56
56
  this.updateClasses();
57
57
  });
58
58
  }
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyIconNav, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.14", type: ThyIconNav, isStandalone: true, selector: "thy-icon-nav", inputs: { thyType: { classPropertyName: "thyType", publicName: "thyType", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-icon-nav": "this.isIconNav" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyIconNav, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: ThyIconNav, isStandalone: true, selector: "thy-icon-nav", inputs: { thyType: { classPropertyName: "thyType", publicName: "thyType", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-icon-nav": "this.isIconNav" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
61
61
  }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyIconNav, decorators: [{
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyIconNav, decorators: [{
63
63
  type: Component,
64
64
  args: [{ selector: 'thy-icon-nav', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n" }]
65
65
  }], ctorParameters: () => [], propDecorators: { isIconNav: [{
@@ -153,10 +153,10 @@ class ThyNavItemDirective {
153
153
  removeClass(className) {
154
154
  this.hostRenderer.removeClass(className);
155
155
  }
156
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNavItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
157
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.14", type: ThyNavItemDirective, isStandalone: true, selector: "[thyNavLink],[thyNavItem]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, thyNavItemActive: { classPropertyName: "thyNavItemActive", publicName: "thyNavItemActive", isSignal: true, isRequired: false, transformFunction: null }, thyNavLinkActive: { classPropertyName: "thyNavLinkActive", publicName: "thyNavLinkActive", isSignal: true, isRequired: false, transformFunction: null }, thyNavItemDisabled: { classPropertyName: "thyNavItemDisabled", publicName: "thyNavItemDisabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.active": "thyNavItemActive() || thyNavLinkActive()", "class.disabled": "thyNavItemDisabled()" }, classAttribute: "thy-nav-item" }, queries: [{ propertyName: "links", predicate: i0.forwardRef(() => ThyNavItemDirective), descendants: true, isSignal: true }, { propertyName: "routers", predicate: RouterLinkActive, descendants: true, isSignal: true }], ngImport: i0 }); }
156
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
157
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.15", type: ThyNavItemDirective, isStandalone: true, selector: "[thyNavLink],[thyNavItem]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, thyNavItemActive: { classPropertyName: "thyNavItemActive", publicName: "thyNavItemActive", isSignal: true, isRequired: false, transformFunction: null }, thyNavLinkActive: { classPropertyName: "thyNavLinkActive", publicName: "thyNavLinkActive", isSignal: true, isRequired: false, transformFunction: null }, thyNavItemDisabled: { classPropertyName: "thyNavItemDisabled", publicName: "thyNavItemDisabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.active": "thyNavItemActive() || thyNavLinkActive()", "class.disabled": "thyNavItemDisabled()" }, classAttribute: "thy-nav-item" }, queries: [{ propertyName: "links", predicate: i0.forwardRef(() => ThyNavItemDirective), descendants: true, isSignal: true }, { propertyName: "routers", predicate: RouterLinkActive, descendants: true, isSignal: true }], ngImport: i0 }); }
158
158
  }
159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNavItemDirective, decorators: [{
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavItemDirective, decorators: [{
160
160
  type: Directive,
161
161
  args: [{
162
162
  selector: '[thyNavLink],[thyNavItem]',
@@ -222,10 +222,10 @@ class ThyNavInkBarDirective {
222
222
  hide() {
223
223
  this.elementRef.nativeElement.style.visibility = 'hidden';
224
224
  }
225
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNavInkBarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
226
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.14", type: ThyNavInkBarDirective, isStandalone: true, selector: "thy-nav-ink-bar, [thyNavInkBar]", inputs: { isVertical: { classPropertyName: "isVertical", publicName: "isVertical", isSignal: true, isRequired: false, transformFunction: null }, showInkBar: { classPropertyName: "showInkBar", publicName: "showInkBar", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-nav-ink-bar-animated": "animated()" }, classAttribute: "thy-nav-ink-bar" }, ngImport: i0 }); }
225
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavInkBarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
226
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.15", type: ThyNavInkBarDirective, isStandalone: true, selector: "thy-nav-ink-bar, [thyNavInkBar]", inputs: { isVertical: { classPropertyName: "isVertical", publicName: "isVertical", isSignal: true, isRequired: false, transformFunction: null }, showInkBar: { classPropertyName: "showInkBar", publicName: "showInkBar", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-nav-ink-bar-animated": "animated()" }, classAttribute: "thy-nav-ink-bar" }, ngImport: i0 }); }
227
227
  }
228
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNavInkBarDirective, decorators: [{
228
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavInkBarDirective, decorators: [{
229
229
  type: Directive,
230
230
  args: [{
231
231
  selector: 'thy-nav-ink-bar, [thyNavInkBar]',
@@ -246,10 +246,10 @@ class BypassSecurityTrustHtmlPipe {
246
246
  transform(format) {
247
247
  return this.sanitizer.bypassSecurityTrustHtml(format);
248
248
  }
249
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: BypassSecurityTrustHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
250
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.14", ngImport: i0, type: BypassSecurityTrustHtmlPipe, isStandalone: true, name: "bypassSecurityTrustHtml" }); }
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: BypassSecurityTrustHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
250
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: BypassSecurityTrustHtmlPipe, isStandalone: true, name: "bypassSecurityTrustHtml" }); }
251
251
  }
252
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: BypassSecurityTrustHtmlPipe, decorators: [{
252
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: BypassSecurityTrustHtmlPipe, decorators: [{
253
253
  type: Pipe,
254
254
  args: [{
255
255
  name: 'bypassSecurityTrustHtml'
@@ -465,10 +465,10 @@ class ThyNav {
465
465
  }
466
466
  setMoreBtnOffset() {
467
467
  const defaultMoreOperation = this.defaultMoreOperation();
468
- const computedStyle = window.getComputedStyle(defaultMoreOperation?.nativeElement);
468
+ const computedStyle = window.getComputedStyle(defaultMoreOperation.nativeElement);
469
469
  this.moreBtnOffset = {
470
- height: defaultMoreOperation?.nativeElement?.offsetHeight + parseFloat(computedStyle?.marginBottom) || 0,
471
- width: defaultMoreOperation?.nativeElement?.offsetWidth + parseFloat(computedStyle?.marginRight) || 0
470
+ height: defaultMoreOperation.nativeElement.offsetHeight + parseFloat(computedStyle?.marginBottom) || 0,
471
+ width: defaultMoreOperation.nativeElement.offsetWidth + parseFloat(computedStyle?.marginRight) || 0
472
472
  };
473
473
  }
474
474
  setNavItemDivider() {
@@ -529,7 +529,7 @@ class ThyNav {
529
529
  for (let i = 0; i < tabsLength; i += 1) {
530
530
  const _totalWidth = i === tabsLength - 1 ? totalWidth + tabs[i].offset.width : totalWidth + tabs[i].offset.width + tabItemRight;
531
531
  if (_totalWidth > this.wrapperOffset.width) {
532
- let moreOperationWidth = this.moreBtnOffset.width;
532
+ const moreOperationWidth = this.moreBtnOffset.width;
533
533
  if (totalWidth + moreOperationWidth <= this.wrapperOffset.width) {
534
534
  endIndex = i - 1;
535
535
  }
@@ -552,7 +552,7 @@ class ThyNav {
552
552
  for (let i = 0; i < tabsLength; i += 1) {
553
553
  const _totalHeight = totalHeight + tabs[i].offset.height;
554
554
  if (_totalHeight > this.wrapperOffset.height) {
555
- let moreOperationHeight = this.moreBtnOffset.height;
555
+ const moreOperationHeight = this.moreBtnOffset.height;
556
556
  if (totalHeight + moreOperationHeight <= this.wrapperOffset.height) {
557
557
  endIndex = i - 1;
558
558
  }
@@ -617,10 +617,10 @@ class ThyNav {
617
617
  this.navSubscription.unsubscribe();
618
618
  }
619
619
  }
620
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNav, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
621
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.14", type: ThyNav, isStandalone: true, selector: "thy-nav", inputs: { thyType: { classPropertyName: "thyType", publicName: "thyType", isSignal: true, isRequired: false, transformFunction: null }, thySize: { classPropertyName: "thySize", publicName: "thySize", isSignal: true, isRequired: false, transformFunction: null }, thyHorizontal: { classPropertyName: "thyHorizontal", publicName: "thyHorizontal", isSignal: true, isRequired: false, transformFunction: null }, thyVertical: { classPropertyName: "thyVertical", publicName: "thyVertical", isSignal: true, isRequired: false, transformFunction: null }, thyFill: { classPropertyName: "thyFill", publicName: "thyFill", isSignal: true, isRequired: false, transformFunction: null }, thyResponsive: { classPropertyName: "thyResponsive", publicName: "thyResponsive", isSignal: true, isRequired: false, transformFunction: null }, thyPauseReCalculate: { classPropertyName: "thyPauseReCalculate", publicName: "thyPauseReCalculate", isSignal: true, isRequired: false, transformFunction: null }, thyInsideClosable: { classPropertyName: "thyInsideClosable", publicName: "thyInsideClosable", isSignal: true, isRequired: false, transformFunction: null }, thyPopoverOptions: { classPropertyName: "thyPopoverOptions", publicName: "thyPopoverOptions", isSignal: true, isRequired: false, transformFunction: null }, thyExtra: { classPropertyName: "thyExtra", publicName: "thyExtra", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-nav": "true", "class.thy-nav--vertical": "thyVertical()", "class.thy-nav--fill": "thyFill()" } }, queries: [{ propertyName: "routers", predicate: RouterLinkActive, descendants: true, isSignal: true }, { propertyName: "moreOperation", first: true, predicate: ["more"], descendants: true, isSignal: true }, { propertyName: "morePopover", first: true, predicate: ["morePopover"], descendants: true, isSignal: true }, { propertyName: "extra", first: true, predicate: ["extra"], descendants: true, isSignal: true }, { propertyName: "links", predicate: ThyNavItemDirective, descendants: true }], viewQueries: [{ propertyName: "defaultMoreOperation", first: true, predicate: ["moreOperationContainer"], descendants: true, isSignal: true }, { propertyName: "inkBar", first: true, predicate: ThyNavInkBarDirective, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"thy-nav-list\" [ngClass]=\"horizontal() ? 'justify-content-' + horizontal() : ''\" #navList>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n @if (thyResponsive()) {\n <a\n href=\"javascript:;\"\n class=\"thy-nav-more-container\"\n [class.d-none]=\"!showMore()\"\n [class.invisible]=\"!initialized\"\n #moreOperationContainer\n thyNavLink\n [thyNavItemActive]=\"moreActive\"\n (click)=\"openMoreMenu($event, navListPopover)\">\n @if (moreOperation()) {\n <ng-container [ngTemplateOutlet]=\"moreOperation()\"></ng-container>\n } @else {\n {{ locale().more }}\n <thy-icon thyIconName=\"angle-down\" class=\"thy-nav-more-icon\"></thy-icon>\n }\n </a>\n }\n @if (thyExtra() || extra()) {\n <div class=\"thy-nav-extra\">\n <ng-container [ngTemplateOutlet]=\"thyExtra() || extra()\"></ng-container>\n </div>\n }\n <thy-nav-ink-bar [showInkBar]=\"showInkBar\" [isVertical]=\"thyVertical()\"></thy-nav-ink-bar>\n</div>\n\n<ng-template #navListPopover>\n @if (morePopover()) {\n <ng-container [ngTemplateOutlet]=\"morePopover()\" [ngTemplateOutletContext]=\"{ $implicit: hiddenItems }\"></ng-container>\n } @else {\n <thy-dropdown-menu thyImmediateRender>\n @for (item of hiddenItems; track $index) {\n <span\n class=\"thy-nav-item-more\"\n thyDropdownMenuItem\n [thyDropdownMenuItemActive]=\"item.isActive\"\n (click)=\"navItemClick(item)\"\n [innerHTML]=\"item.elementRef.nativeElement.innerHTML | bypassSecurityTrustHtml\"></span>\n }\n </thy-dropdown-menu>\n }\n</ng-template>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: ThyNavItemDirective, selector: "[thyNavLink],[thyNavItem]", inputs: ["id", "thyNavItemActive", "thyNavLinkActive", "thyNavItemDisabled"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: ThyNavInkBarDirective, selector: "thy-nav-ink-bar, [thyNavInkBar]", inputs: ["isVertical", "showInkBar"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }, { kind: "directive", type: ThyDropdownMenuItemActiveDirective, selector: "[thyDropdownMenuItemActive]", inputs: ["thyDropdownMenuItemActive"] }, { kind: "pipe", type: BypassSecurityTrustHtmlPipe, name: "bypassSecurityTrustHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
620
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNav, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
621
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: ThyNav, isStandalone: true, selector: "thy-nav", inputs: { thyType: { classPropertyName: "thyType", publicName: "thyType", isSignal: true, isRequired: false, transformFunction: null }, thySize: { classPropertyName: "thySize", publicName: "thySize", isSignal: true, isRequired: false, transformFunction: null }, thyHorizontal: { classPropertyName: "thyHorizontal", publicName: "thyHorizontal", isSignal: true, isRequired: false, transformFunction: null }, thyVertical: { classPropertyName: "thyVertical", publicName: "thyVertical", isSignal: true, isRequired: false, transformFunction: null }, thyFill: { classPropertyName: "thyFill", publicName: "thyFill", isSignal: true, isRequired: false, transformFunction: null }, thyResponsive: { classPropertyName: "thyResponsive", publicName: "thyResponsive", isSignal: true, isRequired: false, transformFunction: null }, thyPauseReCalculate: { classPropertyName: "thyPauseReCalculate", publicName: "thyPauseReCalculate", isSignal: true, isRequired: false, transformFunction: null }, thyInsideClosable: { classPropertyName: "thyInsideClosable", publicName: "thyInsideClosable", isSignal: true, isRequired: false, transformFunction: null }, thyPopoverOptions: { classPropertyName: "thyPopoverOptions", publicName: "thyPopoverOptions", isSignal: true, isRequired: false, transformFunction: null }, thyExtra: { classPropertyName: "thyExtra", publicName: "thyExtra", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-nav": "true", "class.thy-nav--vertical": "thyVertical()", "class.thy-nav--fill": "thyFill()" } }, queries: [{ propertyName: "routers", predicate: RouterLinkActive, descendants: true, isSignal: true }, { propertyName: "moreOperation", first: true, predicate: ["more"], descendants: true, isSignal: true }, { propertyName: "morePopover", first: true, predicate: ["morePopover"], descendants: true, isSignal: true }, { propertyName: "extra", first: true, predicate: ["extra"], descendants: true, isSignal: true }, { propertyName: "links", predicate: ThyNavItemDirective, descendants: true }], viewQueries: [{ propertyName: "defaultMoreOperation", first: true, predicate: ["moreOperationContainer"], descendants: true, isSignal: true }, { propertyName: "inkBar", first: true, predicate: ThyNavInkBarDirective, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"thy-nav-list\" [ngClass]=\"horizontal() ? 'justify-content-' + horizontal() : ''\" #navList>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n @if (thyResponsive()) {\n <a\n href=\"javascript:;\"\n class=\"thy-nav-more-container\"\n [class.d-none]=\"!showMore()\"\n [class.invisible]=\"!initialized\"\n #moreOperationContainer\n thyNavLink\n [thyNavItemActive]=\"moreActive\"\n (click)=\"openMoreMenu($event, navListPopover)\">\n @if (moreOperation()) {\n <ng-container [ngTemplateOutlet]=\"moreOperation()\"></ng-container>\n } @else {\n {{ locale().more }}\n <thy-icon thyIconName=\"angle-down\" class=\"thy-nav-more-icon\"></thy-icon>\n }\n </a>\n }\n @if (thyExtra() || extra()) {\n <div class=\"thy-nav-extra\">\n <ng-container [ngTemplateOutlet]=\"thyExtra() || extra()\"></ng-container>\n </div>\n }\n <thy-nav-ink-bar [showInkBar]=\"showInkBar\" [isVertical]=\"thyVertical()\"></thy-nav-ink-bar>\n</div>\n\n<ng-template #navListPopover>\n @if (morePopover()) {\n <ng-container [ngTemplateOutlet]=\"morePopover()\" [ngTemplateOutletContext]=\"{ $implicit: hiddenItems }\"></ng-container>\n } @else {\n <thy-dropdown-menu thyImmediateRender>\n @for (item of hiddenItems; track $index) {\n <span\n class=\"thy-nav-item-more\"\n thyDropdownMenuItem\n [thyDropdownMenuItemActive]=\"item.isActive\"\n (click)=\"navItemClick(item)\"\n [innerHTML]=\"item.elementRef.nativeElement.innerHTML | bypassSecurityTrustHtml\"></span>\n }\n </thy-dropdown-menu>\n }\n</ng-template>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: ThyNavItemDirective, selector: "[thyNavLink],[thyNavItem]", inputs: ["id", "thyNavItemActive", "thyNavLinkActive", "thyNavItemDisabled"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: ThyNavInkBarDirective, selector: "thy-nav-ink-bar, [thyNavInkBar]", inputs: ["isVertical", "showInkBar"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }, { kind: "directive", type: ThyDropdownMenuItemActiveDirective, selector: "[thyDropdownMenuItemActive]", inputs: ["thyDropdownMenuItemActive"] }, { kind: "pipe", type: BypassSecurityTrustHtmlPipe, name: "bypassSecurityTrustHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
622
622
  }
623
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNav, decorators: [{
623
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNav, decorators: [{
624
624
  type: Component,
625
625
  args: [{ selector: 'thy-nav', host: {
626
626
  '[class.thy-nav]': 'true',
@@ -643,8 +643,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImpo
643
643
  }], routers: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => RouterLinkActive), { ...{ descendants: true }, isSignal: true }] }], moreOperation: [{ type: i0.ContentChild, args: ['more', { isSignal: true }] }], morePopover: [{ type: i0.ContentChild, args: ['morePopover', { isSignal: true }] }], extra: [{ type: i0.ContentChild, args: ['extra', { isSignal: true }] }], defaultMoreOperation: [{ type: i0.ViewChild, args: ['moreOperationContainer', { isSignal: true }] }], inkBar: [{ type: i0.ViewChild, args: [i0.forwardRef(() => ThyNavInkBarDirective), { isSignal: true }] }] } });
644
644
 
645
645
  class ThyNavModule {
646
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
647
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.14", ngImport: i0, type: ThyNavModule, imports: [CommonModule,
646
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
647
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: ThyNavModule, imports: [CommonModule,
648
648
  ThyIconModule,
649
649
  ThyPopoverModule,
650
650
  ThyDropdownModule,
@@ -655,7 +655,7 @@ class ThyNavModule {
655
655
  ThyIconNavLink,
656
656
  BypassSecurityTrustHtmlPipe,
657
657
  ThyNavInkBarDirective], exports: [ThyNav, ThyNavItemDirective, ThyIconNav, ThyIconNavLink, BypassSecurityTrustHtmlPipe] }); }
658
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNavModule, imports: [CommonModule,
658
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavModule, imports: [CommonModule,
659
659
  ThyIconModule,
660
660
  ThyPopoverModule,
661
661
  ThyDropdownModule,
@@ -663,7 +663,7 @@ class ThyNavModule {
663
663
  ThyNav,
664
664
  ThyIconNavLink] }); }
665
665
  }
666
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImport: i0, type: ThyNavModule, decorators: [{
666
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavModule, decorators: [{
667
667
  type: NgModule,
668
668
  args: [{
669
669
  imports: [