@ngneers/controls 0.0.1-pre1 → 0.0.1-pre2

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 (195) hide show
  1. package/LICENSE +21 -0
  2. package/fesm2022/ngneers-controls-accordion.mjs +194 -0
  3. package/fesm2022/ngneers-controls-accordion.mjs.map +1 -0
  4. package/fesm2022/ngneers-controls-api-ng.mjs +668 -0
  5. package/fesm2022/ngneers-controls-api-ng.mjs.map +1 -0
  6. package/fesm2022/ngneers-controls-api.mjs +256 -227
  7. package/fesm2022/ngneers-controls-api.mjs.map +1 -1
  8. package/fesm2022/ngneers-controls-avatar.mjs +70 -0
  9. package/fesm2022/ngneers-controls-avatar.mjs.map +1 -0
  10. package/fesm2022/ngneers-controls-base.mjs +397 -0
  11. package/fesm2022/ngneers-controls-base.mjs.map +1 -0
  12. package/fesm2022/ngneers-controls-breadcrumb.mjs +74 -0
  13. package/fesm2022/ngneers-controls-breadcrumb.mjs.map +1 -0
  14. package/fesm2022/ngneers-controls-button-group.mjs +51 -0
  15. package/fesm2022/ngneers-controls-button-group.mjs.map +1 -0
  16. package/fesm2022/ngneers-controls-button.mjs +62 -0
  17. package/fesm2022/ngneers-controls-button.mjs.map +1 -0
  18. package/fesm2022/ngneers-controls-calendar-time-C7UnIFzU.mjs +63 -0
  19. package/fesm2022/ngneers-controls-calendar-time-C7UnIFzU.mjs.map +1 -0
  20. package/fesm2022/ngneers-controls-calendar.mjs +468 -0
  21. package/fesm2022/ngneers-controls-calendar.mjs.map +1 -0
  22. package/fesm2022/ngneers-controls-checkbox.mjs +58 -0
  23. package/fesm2022/ngneers-controls-checkbox.mjs.map +1 -0
  24. package/fesm2022/ngneers-controls-chip.mjs +52 -0
  25. package/fesm2022/ngneers-controls-chip.mjs.map +1 -0
  26. package/fesm2022/ngneers-controls-defer.mjs +43 -0
  27. package/fesm2022/ngneers-controls-defer.mjs.map +1 -0
  28. package/fesm2022/ngneers-controls-dialog.mjs +329 -33
  29. package/fesm2022/ngneers-controls-dialog.mjs.map +1 -1
  30. package/fesm2022/ngneers-controls-directives.mjs +443 -0
  31. package/fesm2022/ngneers-controls-directives.mjs.map +1 -0
  32. package/fesm2022/ngneers-controls-drawer.mjs +232 -0
  33. package/fesm2022/ngneers-controls-drawer.mjs.map +1 -0
  34. package/fesm2022/ngneers-controls-edit-inplace.mjs +120 -0
  35. package/fesm2022/ngneers-controls-edit-inplace.mjs.map +1 -0
  36. package/fesm2022/ngneers-controls-filter.mjs +516 -0
  37. package/fesm2022/ngneers-controls-filter.mjs.map +1 -0
  38. package/fesm2022/ngneers-controls-i18n-de-CdTPeBiR.mjs +87 -0
  39. package/fesm2022/ngneers-controls-i18n-de-CdTPeBiR.mjs.map +1 -0
  40. package/fesm2022/ngneers-controls-i18n-en-Cfp2pOLY.mjs +87 -0
  41. package/fesm2022/ngneers-controls-i18n-en-Cfp2pOLY.mjs.map +1 -0
  42. package/fesm2022/ngneers-controls-i18n.mjs +57 -0
  43. package/fesm2022/ngneers-controls-i18n.mjs.map +1 -0
  44. package/fesm2022/ngneers-controls-icon-calendar-z5xA9wTT.mjs +4 -0
  45. package/fesm2022/ngneers-controls-icon-calendar-z5xA9wTT.mjs.map +1 -0
  46. package/fesm2022/ngneers-controls-icon-check-DdAQ9k-T.mjs +4 -0
  47. package/fesm2022/ngneers-controls-icon-check-DdAQ9k-T.mjs.map +1 -0
  48. package/fesm2022/ngneers-controls-icon-chevron_down-HO-z-xOr.mjs +4 -0
  49. package/fesm2022/ngneers-controls-icon-chevron_down-HO-z-xOr.mjs.map +1 -0
  50. package/fesm2022/ngneers-controls-icon-chevron_left-CC5psi16.mjs +4 -0
  51. package/fesm2022/ngneers-controls-icon-chevron_left-CC5psi16.mjs.map +1 -0
  52. package/fesm2022/ngneers-controls-icon-chevron_right-BRxlzx4G.mjs +4 -0
  53. package/fesm2022/ngneers-controls-icon-chevron_right-BRxlzx4G.mjs.map +1 -0
  54. package/fesm2022/ngneers-controls-icon-chevron_up-cqhPO7g2.mjs +4 -0
  55. package/fesm2022/ngneers-controls-icon-chevron_up-cqhPO7g2.mjs.map +1 -0
  56. package/fesm2022/ngneers-controls-icon-ellipsis-DXIGA1sk.mjs +4 -0
  57. package/fesm2022/ngneers-controls-icon-ellipsis-DXIGA1sk.mjs.map +1 -0
  58. package/fesm2022/ngneers-controls-icon-filter-oU7E6Xgr.mjs +4 -0
  59. package/fesm2022/ngneers-controls-icon-filter-oU7E6Xgr.mjs.map +1 -0
  60. package/fesm2022/ngneers-controls-icon-filter_solid-CqIKuR4N.mjs +4 -0
  61. package/fesm2022/ngneers-controls-icon-filter_solid-CqIKuR4N.mjs.map +1 -0
  62. package/fesm2022/ngneers-controls-icon-magnifying_glass-T4Hzbkig.mjs +4 -0
  63. package/fesm2022/ngneers-controls-icon-magnifying_glass-T4Hzbkig.mjs.map +1 -0
  64. package/fesm2022/ngneers-controls-icon-minus-oGDEFO4E.mjs +4 -0
  65. package/fesm2022/ngneers-controls-icon-minus-oGDEFO4E.mjs.map +1 -0
  66. package/fesm2022/ngneers-controls-icon-sort-CRD4tafz.mjs +4 -0
  67. package/fesm2022/ngneers-controls-icon-sort-CRD4tafz.mjs.map +1 -0
  68. package/fesm2022/ngneers-controls-icon-sort_down-DiFB1P6R.mjs +4 -0
  69. package/fesm2022/ngneers-controls-icon-sort_down-DiFB1P6R.mjs.map +1 -0
  70. package/fesm2022/ngneers-controls-icon-sort_up-Bq_q3hIi.mjs +4 -0
  71. package/fesm2022/ngneers-controls-icon-sort_up-Bq_q3hIi.mjs.map +1 -0
  72. package/fesm2022/ngneers-controls-icon-xmark-BZKZORiu.mjs +4 -0
  73. package/fesm2022/ngneers-controls-icon-xmark-BZKZORiu.mjs.map +1 -0
  74. package/fesm2022/ngneers-controls-icon.mjs +60 -18
  75. package/fesm2022/ngneers-controls-icon.mjs.map +1 -1
  76. package/fesm2022/ngneers-controls-inplace.mjs +107 -0
  77. package/fesm2022/ngneers-controls-inplace.mjs.map +1 -0
  78. package/fesm2022/ngneers-controls-input-field.mjs +141 -0
  79. package/fesm2022/ngneers-controls-input-field.mjs.map +1 -0
  80. package/fesm2022/ngneers-controls-input-mask.mjs +282 -0
  81. package/fesm2022/ngneers-controls-input-mask.mjs.map +1 -0
  82. package/fesm2022/ngneers-controls-input.mjs +69 -0
  83. package/fesm2022/ngneers-controls-input.mjs.map +1 -0
  84. package/fesm2022/ngneers-controls-item-view.mjs +441 -0
  85. package/fesm2022/ngneers-controls-item-view.mjs.map +1 -0
  86. package/fesm2022/ngneers-controls-list-box.mjs +157 -53
  87. package/fesm2022/ngneers-controls-list-box.mjs.map +1 -1
  88. package/fesm2022/ngneers-controls-menu.mjs +332 -0
  89. package/fesm2022/ngneers-controls-menu.mjs.map +1 -0
  90. package/fesm2022/ngneers-controls-message.mjs +29 -0
  91. package/fesm2022/ngneers-controls-message.mjs.map +1 -0
  92. package/fesm2022/ngneers-controls-paginator.mjs +111 -0
  93. package/fesm2022/ngneers-controls-paginator.mjs.map +1 -0
  94. package/fesm2022/ngneers-controls-popover.mjs +129 -40
  95. package/fesm2022/ngneers-controls-popover.mjs.map +1 -1
  96. package/fesm2022/ngneers-controls-progress.mjs +82 -0
  97. package/fesm2022/ngneers-controls-progress.mjs.map +1 -0
  98. package/fesm2022/ngneers-controls-scroller.mjs +155 -78
  99. package/fesm2022/ngneers-controls-scroller.mjs.map +1 -1
  100. package/fesm2022/ngneers-controls-select-button.mjs +55 -0
  101. package/fesm2022/ngneers-controls-select-button.mjs.map +1 -0
  102. package/fesm2022/ngneers-controls-select.mjs +313 -103
  103. package/fesm2022/ngneers-controls-select.mjs.map +1 -1
  104. package/fesm2022/ngneers-controls-slider.mjs +155 -0
  105. package/fesm2022/ngneers-controls-slider.mjs.map +1 -0
  106. package/fesm2022/ngneers-controls-spinner.mjs +169 -0
  107. package/fesm2022/ngneers-controls-spinner.mjs.map +1 -0
  108. package/fesm2022/ngneers-controls-splitter.mjs +717 -0
  109. package/fesm2022/ngneers-controls-splitter.mjs.map +1 -0
  110. package/fesm2022/ngneers-controls-switch.mjs +39 -0
  111. package/fesm2022/ngneers-controls-switch.mjs.map +1 -0
  112. package/fesm2022/ngneers-controls-table.mjs +379 -0
  113. package/fesm2022/ngneers-controls-table.mjs.map +1 -0
  114. package/fesm2022/ngneers-controls-tabs.mjs +287 -0
  115. package/fesm2022/ngneers-controls-tabs.mjs.map +1 -0
  116. package/fesm2022/ngneers-controls-tag.mjs +29 -0
  117. package/fesm2022/ngneers-controls-tag.mjs.map +1 -0
  118. package/fesm2022/ngneers-controls-toast.mjs +184 -0
  119. package/fesm2022/ngneers-controls-toast.mjs.map +1 -0
  120. package/fesm2022/ngneers-controls-toggle-button.mjs +65 -0
  121. package/fesm2022/ngneers-controls-toggle-button.mjs.map +1 -0
  122. package/fesm2022/ngneers-controls-tooltip.mjs +454 -0
  123. package/fesm2022/ngneers-controls-tooltip.mjs.map +1 -0
  124. package/fesm2022/ngneers-controls-utils-ng.mjs +227 -0
  125. package/fesm2022/ngneers-controls-utils-ng.mjs.map +1 -0
  126. package/fesm2022/ngneers-controls-utils.mjs +217 -60
  127. package/fesm2022/ngneers-controls-utils.mjs.map +1 -1
  128. package/fesm2022/ngneers-controls.mjs.map +1 -1
  129. package/package.json +167 -32
  130. package/types/ngneers-controls-accordion.d.ts +114 -0
  131. package/types/ngneers-controls-api-ng.d.ts +291 -0
  132. package/types/ngneers-controls-api.d.ts +99 -0
  133. package/types/ngneers-controls-avatar.d.ts +50 -0
  134. package/types/ngneers-controls-base.d.ts +166 -0
  135. package/types/ngneers-controls-breadcrumb.d.ts +86 -0
  136. package/types/ngneers-controls-button-group.d.ts +30 -0
  137. package/types/ngneers-controls-button.d.ts +34 -0
  138. package/types/ngneers-controls-calendar.d.ts +275 -0
  139. package/types/ngneers-controls-checkbox.d.ts +38 -0
  140. package/types/ngneers-controls-chip.d.ts +37 -0
  141. package/types/ngneers-controls-defer.d.ts +22 -0
  142. package/types/ngneers-controls-dialog.d.ts +218 -0
  143. package/types/ngneers-controls-directives.d.ts +146 -0
  144. package/types/ngneers-controls-drawer.d.ts +220 -0
  145. package/types/ngneers-controls-edit-inplace.d.ts +182 -0
  146. package/types/ngneers-controls-filter.d.ts +304 -0
  147. package/types/ngneers-controls-i18n.d.ts +108 -0
  148. package/types/ngneers-controls-icon.d.ts +74 -0
  149. package/types/ngneers-controls-inplace.d.ts +95 -0
  150. package/types/ngneers-controls-input-field.d.ts +159 -0
  151. package/types/ngneers-controls-input-mask.d.ts +83 -0
  152. package/types/ngneers-controls-input.d.ts +27 -0
  153. package/types/ngneers-controls-item-view.d.ts +211 -0
  154. package/types/ngneers-controls-list-box.d.ts +216 -0
  155. package/types/ngneers-controls-menu.d.ts +178 -0
  156. package/types/ngneers-controls-message.d.ts +19 -0
  157. package/types/ngneers-controls-paginator.d.ts +162 -0
  158. package/types/ngneers-controls-popover.d.ts +101 -0
  159. package/types/ngneers-controls-progress.d.ts +44 -0
  160. package/types/ngneers-controls-scroller.d.ts +137 -0
  161. package/types/ngneers-controls-select-button.d.ts +37 -0
  162. package/types/ngneers-controls-select.d.ts +314 -0
  163. package/types/ngneers-controls-slider.d.ts +53 -0
  164. package/types/ngneers-controls-spinner.d.ts +105 -0
  165. package/types/ngneers-controls-splitter.d.ts +391 -0
  166. package/types/ngneers-controls-switch.d.ts +18 -0
  167. package/types/ngneers-controls-table.d.ts +157 -0
  168. package/types/ngneers-controls-tabs.d.ts +106 -0
  169. package/types/ngneers-controls-tag.d.ts +19 -0
  170. package/types/ngneers-controls-toast.d.ts +70 -0
  171. package/types/ngneers-controls-toggle-button.d.ts +46 -0
  172. package/types/ngneers-controls-tooltip.d.ts +188 -0
  173. package/types/ngneers-controls-utils-ng.d.ts +57 -0
  174. package/types/ngneers-controls-utils.d.ts +130 -0
  175. package/api/index.d.ts +0 -134
  176. package/custom-types/index.d.ts +0 -7
  177. package/dialog/index.d.ts +0 -43
  178. package/fesm2022/ngneers-controls-custom-types.mjs +0 -4
  179. package/fesm2022/ngneers-controls-custom-types.mjs.map +0 -1
  180. package/fesm2022/ngneers-controls-form-field.mjs +0 -33
  181. package/fesm2022/ngneers-controls-form-field.mjs.map +0 -1
  182. package/fesm2022/ngneers-controls-lazy-cacher.mjs +0 -30
  183. package/fesm2022/ngneers-controls-lazy-cacher.mjs.map +0 -1
  184. package/fesm2022/ngneers-controls-text-field.mjs +0 -23
  185. package/fesm2022/ngneers-controls-text-field.mjs.map +0 -1
  186. package/form-field/index.d.ts +0 -19
  187. package/icon/index.d.ts +0 -30
  188. package/lazy-cacher/index.d.ts +0 -14
  189. package/list-box/index.d.ts +0 -58
  190. package/popover/index.d.ts +0 -41
  191. package/scroller/index.d.ts +0 -95
  192. package/select/index.d.ts +0 -86
  193. package/text-field/index.d.ts +0 -10
  194. package/utils/index.d.ts +0 -36
  195. /package/{index.d.ts → types/ngneers-controls.d.ts} +0 -0
@@ -0,0 +1,157 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { TemplateRef, OnDestroy, OnInit } from '@angular/core';
3
+ import * as _ngneers_controls_api_ng from '@ngneers/controls/api/ng';
4
+ import * as _ngneers_controls_themes from '@ngneers/controls-themes';
5
+ import { PaginationState } from '@ngneers/controls/paginator';
6
+ import { NgnBase } from '@ngneers/controls/base';
7
+ import * as _ngneers_controls_filter from '@ngneers/controls/filter';
8
+ import { NgnFilterConfig, NgnFilterDataType } from '@ngneers/controls/filter';
9
+ import { AllKeysOfUnion } from '@ngneers/controls/utils';
10
+ import { NgnScrollerItem } from '@ngneers/controls/scroller';
11
+
12
+ type FormattedTableRow<T> = {
13
+ kind: 'data' | 'header' | 'footer';
14
+ id: T[keyof T] & (string | number);
15
+ data: T;
16
+ index: number;
17
+ };
18
+
19
+ declare abstract class NgnTableTemplates<T extends object> extends NgnBase<'table'> {
20
+ private readonly _headerTemplate;
21
+ private readonly _bodyTemplate;
22
+ protected readonly headerTemplate: _angular_core.Signal<TemplateRef<unknown> | undefined>;
23
+ protected readonly bodyTemplate: _angular_core.Signal<TemplateRef<{
24
+ $implicit: FormattedTableRow<T>;
25
+ }> | undefined>;
26
+ /**
27
+ * Types for the calendar templates.
28
+ */
29
+ readonly templateTypes: {
30
+ /**
31
+ * Type of the template variable for the body template.
32
+ */
33
+ body: {
34
+ $implicit: FormattedTableRow<T>;
35
+ };
36
+ } & {
37
+ $implicit: {
38
+ body: Partial<{
39
+ $implicit: FormattedTableRow<T>;
40
+ }>;
41
+ };
42
+ };
43
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTableTemplates<any>, never>;
44
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgnTableTemplates<any>, "ng-component", never, {}, {}, ["_headerTemplate", "_bodyTemplate"], never, true, never>;
45
+ }
46
+
47
+ declare class NgnTableTh extends NgnBase<'table'> implements OnDestroy, OnInit {
48
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"table", ["root", "table", "virtual", "head", "body", "cell", "row", "foot", "even", "striped", "spacer", "sort-control", "sortable-column", "sorted-column", "filter-control", "filterable-column", "filtered-column"], readonly [_ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"icon", ["root", "default"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"filter", ["root", "inline", "input-field", "summary", "icon", "popover-content", "rows", "row", "operator", "value", "row-actions", "match", "footer"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"select", ["root", "combobox", "input", "icon", "input-editable", "popover-content", "filter", "filter-icon", "list-box", "list-box-empty"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"list-box", ["root", "empty", "invalid", "item", "group", "default-item", "default-group", "scroller", "item-selected", "item-highlighted"], readonly [_ngneers_controls_themes.ControlTemplate<"checkbox", ["root", "input", "box", "box-checked", "box-indeterminate", "box-icon", "anim-box-icon-enter", "anim-box-icon-leave", "invalid"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>, _ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"paginator", ["root", "page-size-options"], readonly [_ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"item-view", ["root", "item", "item-overflowing", "more-items", "more-items-hidden", "more-items-default", "hidden-separator"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>>;
49
+ private _table?;
50
+ readonly ngnTableTh: _angular_core.InputSignal<string>;
51
+ constructor();
52
+ ngOnInit(): void;
53
+ ngOnDestroy(): void;
54
+ private prepareDom;
55
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTableTh, never>;
56
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgnTableTh, "[ngnTableTh]", never, { "ngnTableTh": { "alias": "ngnTableTh"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
57
+ }
58
+
59
+ declare class NgnTable<T extends object, K extends keyof T> extends NgnTableTemplates<T> {
60
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"table", ["root", "table", "virtual", "head", "body", "cell", "row", "foot", "even", "striped", "spacer", "sort-control", "sortable-column", "sorted-column", "filter-control", "filterable-column", "filtered-column"], readonly [_ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"icon", ["root", "default"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"filter", ["root", "inline", "input-field", "summary", "icon", "popover-content", "rows", "row", "operator", "value", "row-actions", "match", "footer"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"select", ["root", "combobox", "input", "icon", "input-editable", "popover-content", "filter", "filter-icon", "list-box", "list-box-empty"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"list-box", ["root", "empty", "invalid", "item", "group", "default-item", "default-group", "scroller", "item-selected", "item-highlighted"], readonly [_ngneers_controls_themes.ControlTemplate<"checkbox", ["root", "input", "box", "box-checked", "box-indeterminate", "box-icon", "anim-box-icon-enter", "anim-box-icon-leave", "invalid"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>, _ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"paginator", ["root", "page-size-options"], readonly [_ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"item-view", ["root", "item", "item-overflowing", "more-items", "more-items-hidden", "more-items-default", "hidden-separator"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>>;
61
+ private readonly _registeredHeaderCells;
62
+ readonly rows: _angular_core.InputSignal<readonly T[]>;
63
+ readonly rowHeight: _angular_core.InputSignal<number | undefined>;
64
+ readonly fieldId: _angular_core.InputSignal<K>;
65
+ readonly virtual: _angular_core.InputSignal<boolean>;
66
+ readonly virtualPadding: _angular_core.InputSignal<number>;
67
+ readonly striped: _angular_core.InputSignal<boolean>;
68
+ readonly paginator: _angular_core.InputSignal<boolean>;
69
+ protected readonly trackById: (item: T) => unknown;
70
+ readonly sort: _angular_core.ModelSignal<{
71
+ column: Extract<AllKeysOfUnion<T>, string>;
72
+ direction: "asc" | "desc";
73
+ } | null>;
74
+ readonly filters: _angular_core.ModelSignal<{ [key in Extract<AllKeysOfUnion<T>, string>]?: NgnFilterConfig | undefined; } | null>;
75
+ protected readonly pageState: _angular_core.WritableSignal<PaginationState | null>;
76
+ protected readonly formattedRows: _angular_core.Signal<FormattedTableRow<T>[]>;
77
+ protected readonly pagedRows: _angular_core.Signal<FormattedTableRow<T>[]>;
78
+ private readonly _filteredRows;
79
+ private readonly _sortedRows;
80
+ protected readonly columnCount: _angular_core.Signal<number>;
81
+ protected pageChanged(event: PaginationState): void;
82
+ column<V extends AllKeysOfUnion<T> & string>(column: V): V;
83
+ registerHeaderCell(cell: NgnTableTh): void;
84
+ unregisterHeaderCell(cell: NgnTableTh): void;
85
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTable<any, any>, never>;
86
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgnTable<any, any>, "ngn-table", never, { "rows": { "alias": "rows"; "required": true; "isSignal": true; }; "rowHeight": { "alias": "rowHeight"; "required": false; "isSignal": true; }; "fieldId": { "alias": "fieldId"; "required": true; "isSignal": true; }; "virtual": { "alias": "virtual"; "required": false; "isSignal": true; }; "virtualPadding": { "alias": "virtualPadding"; "required": false; "isSignal": true; }; "striped": { "alias": "striped"; "required": false; "isSignal": true; }; "paginator": { "alias": "paginator"; "required": false; "isSignal": true; }; "sort": { "alias": "sort"; "required": false; "isSignal": true; }; "filters": { "alias": "filters"; "required": false; "isSignal": true; }; }, { "sort": "sortChange"; "filters": "filtersChange"; }, never, never, true, never>;
87
+ }
88
+
89
+ declare class NgnTableBodyTr<T> extends NgnScrollerItem {
90
+ readonly ngnTableBodyTr: _angular_core.InputSignal<FormattedTableRow<T>>;
91
+ readonly ngnScrollerItem: _angular_core.InputSignal<object>;
92
+ private readonly _element;
93
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"table", ["root", "table", "virtual", "head", "body", "cell", "row", "foot", "even", "striped", "spacer", "sort-control", "sortable-column", "sorted-column", "filter-control", "filterable-column", "filtered-column"], readonly [_ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"icon", ["root", "default"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"filter", ["root", "inline", "input-field", "summary", "icon", "popover-content", "rows", "row", "operator", "value", "row-actions", "match", "footer"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"select", ["root", "combobox", "input", "icon", "input-editable", "popover-content", "filter", "filter-icon", "list-box", "list-box-empty"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"list-box", ["root", "empty", "invalid", "item", "group", "default-item", "default-group", "scroller", "item-selected", "item-highlighted"], readonly [_ngneers_controls_themes.ControlTemplate<"checkbox", ["root", "input", "box", "box-checked", "box-indeterminate", "box-icon", "anim-box-icon-enter", "anim-box-icon-leave", "invalid"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>, _ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"paginator", ["root", "page-size-options"], readonly [_ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"item-view", ["root", "item", "item-overflowing", "more-items", "more-items-hidden", "more-items-default", "hidden-separator"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>>;
94
+ constructor();
95
+ private prepareDom;
96
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTableBodyTr<any>, never>;
97
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgnTableBodyTr<any>, "[ngnTableBodyTr]", never, { "ngnTableBodyTr": { "alias": "ngnTableBodyTr"; "required": true; "isSignal": true; }; "ngnScrollerItem": { "alias": "ngnScrollerItem"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
98
+ }
99
+
100
+ declare class NgnTableTd extends NgnBase<'table'> {
101
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"table", ["root", "table", "virtual", "head", "body", "cell", "row", "foot", "even", "striped", "spacer", "sort-control", "sortable-column", "sorted-column", "filter-control", "filterable-column", "filtered-column"], readonly [_ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"icon", ["root", "default"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"filter", ["root", "inline", "input-field", "summary", "icon", "popover-content", "rows", "row", "operator", "value", "row-actions", "match", "footer"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"select", ["root", "combobox", "input", "icon", "input-editable", "popover-content", "filter", "filter-icon", "list-box", "list-box-empty"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"list-box", ["root", "empty", "invalid", "item", "group", "default-item", "default-group", "scroller", "item-selected", "item-highlighted"], readonly [_ngneers_controls_themes.ControlTemplate<"checkbox", ["root", "input", "box", "box-checked", "box-indeterminate", "box-icon", "anim-box-icon-enter", "anim-box-icon-leave", "invalid"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>, _ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"paginator", ["root", "page-size-options"], readonly [_ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"item-view", ["root", "item", "item-overflowing", "more-items", "more-items-hidden", "more-items-default", "hidden-separator"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>>;
102
+ protected readonly columnIndex: _angular_core.WritableSignal<number>;
103
+ constructor();
104
+ private prepareDom;
105
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTableTd, never>;
106
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgnTableTd, "[ngnTableTd]", never, {}, {}, never, never, true, never>;
107
+ }
108
+
109
+ declare class NgnTableHeadTr extends NgnBase<'table'> {
110
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"table", ["root", "table", "virtual", "head", "body", "cell", "row", "foot", "even", "striped", "spacer", "sort-control", "sortable-column", "sorted-column", "filter-control", "filterable-column", "filtered-column"], readonly [_ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"icon", ["root", "default"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"filter", ["root", "inline", "input-field", "summary", "icon", "popover-content", "rows", "row", "operator", "value", "row-actions", "match", "footer"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"select", ["root", "combobox", "input", "icon", "input-editable", "popover-content", "filter", "filter-icon", "list-box", "list-box-empty"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"list-box", ["root", "empty", "invalid", "item", "group", "default-item", "default-group", "scroller", "item-selected", "item-highlighted"], readonly [_ngneers_controls_themes.ControlTemplate<"checkbox", ["root", "input", "box", "box-checked", "box-indeterminate", "box-icon", "anim-box-icon-enter", "anim-box-icon-leave", "invalid"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>, _ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"paginator", ["root", "page-size-options"], readonly [_ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"item-view", ["root", "item", "item-overflowing", "more-items", "more-items-hidden", "more-items-default", "hidden-separator"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>>;
111
+ constructor();
112
+ private prepareDom;
113
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTableHeadTr, never>;
114
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgnTableHeadTr, "[ngnTableHeadTr]", never, {}, {}, never, never, true, never>;
115
+ }
116
+
117
+ declare class NgnTableModule {
118
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTableModule, never>;
119
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<NgnTableModule, never, [typeof NgnTable, typeof NgnTableBodyTr, typeof NgnTableTd, typeof NgnTableTh, typeof NgnTableHeadTr], [typeof NgnTable, typeof NgnTableBodyTr, typeof NgnTableTd, typeof NgnTableTh, typeof NgnTableHeadTr]>;
120
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<NgnTableModule>;
121
+ }
122
+
123
+ declare class NgnTableFilterableColumn implements OnDestroy {
124
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"table", ["root", "table", "virtual", "head", "body", "cell", "row", "foot", "even", "striped", "spacer", "sort-control", "sortable-column", "sorted-column", "filter-control", "filterable-column", "filtered-column"], readonly [_ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"icon", ["root", "default"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"filter", ["root", "inline", "input-field", "summary", "icon", "popover-content", "rows", "row", "operator", "value", "row-actions", "match", "footer"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"select", ["root", "combobox", "input", "icon", "input-editable", "popover-content", "filter", "filter-icon", "list-box", "list-box-empty"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"list-box", ["root", "empty", "invalid", "item", "group", "default-item", "default-group", "scroller", "item-selected", "item-highlighted"], readonly [_ngneers_controls_themes.ControlTemplate<"checkbox", ["root", "input", "box", "box-checked", "box-indeterminate", "box-icon", "anim-box-icon-enter", "anim-box-icon-leave", "invalid"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>, _ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"paginator", ["root", "page-size-options"], readonly [_ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"item-view", ["root", "item", "item-overflowing", "more-items", "more-items-hidden", "more-items-default", "hidden-separator"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>>;
125
+ private readonly _element;
126
+ private readonly _columnId;
127
+ readonly ngnTableFilterableColumn: _angular_core.InputSignal<unknown>;
128
+ private readonly _ngnActionButton;
129
+ private readonly _ngnFilter;
130
+ private readonly _table;
131
+ private readonly _rows;
132
+ protected readonly filter: _angular_core.Signal<_ngneers_controls_filter.NgnFilterConfig | undefined>;
133
+ readonly ngnTableFilterableColumnType: _angular_core.InputSignal<NgnFilterDataType>;
134
+ readonly ngnTableFilterableColumnItems: _angular_core.InputSignal<string[] | null | undefined>;
135
+ constructor();
136
+ ngOnDestroy(): void;
137
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTableFilterableColumn, never>;
138
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgnTableFilterableColumn, "[ngnTableFilterableColumn]", never, { "ngnTableFilterableColumn": { "alias": "ngnTableFilterableColumn"; "required": false; "isSignal": true; }; "ngnTableFilterableColumnType": { "alias": "ngnTableFilterableColumnType"; "required": true; "isSignal": true; }; "ngnTableFilterableColumnItems": { "alias": "ngnTableFilterableColumnItems"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
139
+ }
140
+
141
+ declare class NgnTableSortableColumn implements OnDestroy {
142
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"table", ["root", "table", "virtual", "head", "body", "cell", "row", "foot", "even", "striped", "spacer", "sort-control", "sortable-column", "sorted-column", "filter-control", "filterable-column", "filtered-column"], readonly [_ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"icon", ["root", "default"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"filter", ["root", "inline", "input-field", "summary", "icon", "popover-content", "rows", "row", "operator", "value", "row-actions", "match", "footer"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"select", ["root", "combobox", "input", "icon", "input-editable", "popover-content", "filter", "filter-icon", "list-box", "list-box-empty"], readonly [_ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"list-box", ["root", "empty", "invalid", "item", "group", "default-item", "default-group", "scroller", "item-selected", "item-highlighted"], readonly [_ngneers_controls_themes.ControlTemplate<"checkbox", ["root", "input", "box", "box-checked", "box-indeterminate", "box-icon", "anim-box-icon-enter", "anim-box-icon-leave", "invalid"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"scroller", ["root", "virtual", "item", "spacer", "item-sticky"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"input-field", ["root", "host", "disabled", "readonly", "invalid", "label", "clear-button", `labelKind-${string}`], readonly [_ngneers_controls_themes.ControlTemplate<"input", ["root", "invalid", "empty"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>, _ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>, _ngneers_controls_themes.ControlTemplate<"popover", ["root", "content", "content-closing", "anim-in", "anim-out"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"paginator", ["root", "page-size-options"], readonly [_ngneers_controls_themes.ControlTemplate<"button", ["root", "inline", "loading", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>, _ngneers_controls_themes.ControlTemplate<"item-view", ["root", "item", "item-overflowing", "more-items", "more-items-hidden", "more-items-default", "hidden-separator"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>]>]>>;
143
+ private readonly _element;
144
+ readonly ngnTableSortableColumn: _angular_core.InputSignal<unknown>;
145
+ private readonly _table;
146
+ protected readonly sort: _angular_core.Signal<"asc" | "desc" | null>;
147
+ private readonly columnId;
148
+ private readonly _ngnIcon;
149
+ constructor();
150
+ ngOnDestroy(): void;
151
+ protected toggleSort(): void;
152
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTableSortableColumn, never>;
153
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgnTableSortableColumn, "[ngnTableSortableColumn]", never, { "ngnTableSortableColumn": { "alias": "ngnTableSortableColumn"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
154
+ }
155
+
156
+ export { NgnTable, NgnTableBodyTr, NgnTableFilterableColumn, NgnTableHeadTr, NgnTableModule, NgnTableSortableColumn, NgnTableTd, NgnTableTh };
157
+ export type { FormattedTableRow };
@@ -0,0 +1,106 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { TemplateRef, AfterViewInit } from '@angular/core';
3
+ import * as _ngneers_controls_api_ng from '@ngneers/controls/api/ng';
4
+ import * as _ngneers_controls_themes from '@ngneers/controls-themes';
5
+ import { NgnBase } from '@ngneers/controls/base';
6
+
7
+ declare abstract class TabsTemplates extends NgnBase<'tabs'> {
8
+ private readonly _userHeaderLeftTemplate;
9
+ /**
10
+ * Set a custom template for the left side of the tabs header.
11
+ * Can also be set using an `<ng-template>` element with `#headerLeft` template reference variable.
12
+ */
13
+ readonly templateHeaderLeft: _angular_core.InputSignal<TemplateRef<unknown> | null>;
14
+ protected readonly headerLeftTemplate: _angular_core.Signal<TemplateRef<unknown> | null>;
15
+ private readonly _userHeaderRightTemplate;
16
+ /**
17
+ * Set a custom template for the right side of the tabs header.
18
+ * Can also be set using an `<ng-template>` element with `#headerRight` template reference variable.
19
+ */
20
+ readonly templateHeaderRight: _angular_core.InputSignal<TemplateRef<unknown> | null>;
21
+ protected readonly headerRightTemplate: _angular_core.Signal<TemplateRef<unknown> | null>;
22
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabsTemplates, never>;
23
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TabsTemplates, never, never, { "templateHeaderLeft": { "alias": "templateHeaderLeft"; "required": false; "isSignal": true; }; "templateHeaderRight": { "alias": "templateHeaderRight"; "required": false; "isSignal": true; }; }, {}, ["_userHeaderLeftTemplate", "_userHeaderRightTemplate"], never, true, never>;
24
+ }
25
+
26
+ /**
27
+ * @category control
28
+ */
29
+ declare class NgnTabs extends TabsTemplates implements AfterViewInit {
30
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"tabs", ["root", "headers-container", "headers", "header", "header-active", "header-active-indicator", "scroll-left", "scroll-right", "content"], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>>;
31
+ /**
32
+ * Whether to lazy load the tab contents when they become visible.
33
+ */
34
+ readonly lazy: _angular_core.InputSignalWithTransform<boolean, unknown>;
35
+ /**
36
+ * Whether to cache the tab contents. Only applies to {@link lazy} loaded tabs.
37
+ */
38
+ readonly cache: _angular_core.InputSignalWithTransform<boolean, unknown>;
39
+ /**
40
+ * Get or set the active tab ID.
41
+ */
42
+ readonly activeTab: _angular_core.ModelSignal<string>;
43
+ /**
44
+ * Icon for the left scroll button.
45
+ */
46
+ readonly iconScrollLeft: _angular_core.InputSignal<string | undefined>;
47
+ /**
48
+ * Icon for the right scroll button.
49
+ */
50
+ readonly iconScrollRight: _angular_core.InputSignal<string | undefined>;
51
+ protected readonly isFirstRender: _angular_core.WritableSignal<boolean>;
52
+ protected readonly elementId: string;
53
+ protected readonly indicatorWidth: _angular_core.WritableSignal<number>;
54
+ protected readonly indicatorLeft: _angular_core.WritableSignal<number>;
55
+ private readonly _tabs;
56
+ private readonly _tabList;
57
+ private readonly _tabListScrollDirective;
58
+ private readonly _tabListScroll;
59
+ private readonly _tabListSize;
60
+ private readonly _renderedTabHeaders;
61
+ private readonly _headerElements;
62
+ private readonly _headerSizes;
63
+ protected readonly headers: _angular_core.Signal<{
64
+ id: string;
65
+ template: _angular_core.TemplateRef<unknown> | undefined;
66
+ }[]>;
67
+ protected readonly contents: _angular_core.Signal<{
68
+ id: string;
69
+ template: _angular_core.TemplateRef<unknown> | undefined;
70
+ }[]>;
71
+ private readonly _totalTabsWidth;
72
+ protected readonly tabsOverflowingRight: _angular_core.Signal<boolean>;
73
+ protected readonly tabsOverflowingLeft: _angular_core.Signal<boolean>;
74
+ constructor();
75
+ ngAfterViewInit(): void;
76
+ protected selectTab(tabId: string): void;
77
+ protected handleTabKeyPress(event: KeyboardEvent, tabId: string): void;
78
+ private ensureTabHeaderIsScrolledIntoView;
79
+ private calculateHeaderSliceWidth;
80
+ private getCutOffTabHeaders;
81
+ protected scrollHeaders(direction: 'left' | 'right'): void;
82
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTabs, never>;
83
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgnTabs, "ngn-tabs", never, { "lazy": { "alias": "lazy"; "required": false; "isSignal": true; }; "cache": { "alias": "cache"; "required": false; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": false; "isSignal": true; }; "iconScrollLeft": { "alias": "iconScrollLeft"; "required": false; "isSignal": true; }; "iconScrollRight": { "alias": "iconScrollRight"; "required": false; "isSignal": true; }; }, { "activeTab": "activeTabChange"; }, ["_tabs"], never, true, never>;
84
+ }
85
+
86
+ /**
87
+ * @category control
88
+ */
89
+ declare class NgnTab extends NgnBase<'tabs'> {
90
+ protected readonly theme: null;
91
+ /**
92
+ * The unique identifier for the tab.
93
+ */
94
+ readonly tabId: _angular_core.InputSignal<string>;
95
+ /**
96
+ * Useful for accessing the {@link tabId} in a safe way, without worrying about timing.
97
+ */
98
+ readonly safeTabId: _angular_core.WritableSignal<string | null>;
99
+ readonly content: _angular_core.Signal<TemplateRef<unknown> | undefined>;
100
+ readonly header: _angular_core.Signal<TemplateRef<unknown> | undefined>;
101
+ constructor();
102
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnTab, never>;
103
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgnTab, "ngn-tab", never, { "tabId": { "alias": "tabId"; "required": true; "isSignal": true; }; }, {}, ["content", "header"], never, true, never>;
104
+ }
105
+
106
+ export { NgnTab, NgnTabs };
@@ -0,0 +1,19 @@
1
+ import * as i0 from '@angular/core';
2
+ import * as _ngneers_controls_api_ng from '@ngneers/controls/api/ng';
3
+ import * as _ngneers_controls_themes from '@ngneers/controls-themes';
4
+ import { NgnBase } from '@ngneers/controls/base';
5
+
6
+ /**
7
+ * @category control
8
+ */
9
+ declare class NgnTag extends NgnBase<'tag'> {
10
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"tag", ["root", "content", "icon", `kind-${string}`, `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>>;
11
+ /**
12
+ * Set an icon to display before the text.
13
+ */
14
+ readonly icon: i0.InputSignal<string | undefined>;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgnTag, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgnTag, "ngn-tag", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
17
+ }
18
+
19
+ export { NgnTag };
@@ -0,0 +1,70 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { TemplateRef, Provider, InjectionToken, Injector, OnInit } from '@angular/core';
3
+ import { CustomColor, IconType } from '@ngneers/controls-custom-types';
4
+ import * as _ngneers_controls_api_ng from '@ngneers/controls/api/ng';
5
+ import * as _ngneers_controls_themes from '@ngneers/controls-themes';
6
+ import { NgnBase } from '@ngneers/controls/base';
7
+
8
+ type HeaderTemplateType = {
9
+ header?: string;
10
+ closable: boolean;
11
+ closeToast: () => void;
12
+ };
13
+ type ContentTemplateType = {
14
+ content?: string;
15
+ };
16
+ type NgnToastOptionsMeta = {
17
+ closable?: boolean;
18
+ color?: CustomColor;
19
+ icon?: IconType;
20
+ autoHide?: number | false;
21
+ };
22
+ type NgnToastOptions = NgnToastOptionsMeta & {
23
+ header?: string;
24
+ content?: string;
25
+ headerTemplate?: TemplateRef<HeaderTemplateType>;
26
+ contentTemplate?: TemplateRef<ContentTemplateType>;
27
+ };
28
+ type NgnToastRef = {
29
+ hide: () => void;
30
+ };
31
+
32
+ type NgnToastFeature = {
33
+ providers: Provider[];
34
+ };
35
+ declare const NGN_TOAST_USER_DEFAULTS: InjectionToken<NgnToastOptionsMeta>;
36
+ declare function withToasts(defaultOptions?: NgnToastOptionsMeta): NgnToastFeature;
37
+
38
+ declare class ToastCreator {
39
+ private readonly _manager;
40
+ constructor();
41
+ show(options: NgnToastOptions): NgnToastRef;
42
+ }
43
+ declare function injectToastCreator(injector?: Injector): ToastCreator;
44
+
45
+ /**
46
+ * @category control
47
+ */
48
+ declare class NgnToast extends NgnBase<'toast'> implements OnInit {
49
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"toast", ["root", "host", "anim-enter", "anim-leave", "defaultHeader", "defaultHeaderText", "defaultContent", `color-${string}`], readonly _ngneers_controls_themes.ControlTemplate<string, string[], readonly any[]>[]>>;
50
+ readonly header: _angular_core.InputSignal<string | undefined>;
51
+ readonly content: _angular_core.InputSignal<string | undefined>;
52
+ readonly icon: _angular_core.InputSignal<string | undefined>;
53
+ readonly closeIcon: _angular_core.InputSignal<string | undefined>;
54
+ readonly closable: _angular_core.InputSignal<boolean | undefined>;
55
+ readonly autoHide: _angular_core.InputSignal<number | false | undefined>;
56
+ readonly templateContent: _angular_core.InputSignal<TemplateRef<ContentTemplateType> | null | undefined>;
57
+ readonly templateHeader: _angular_core.InputSignal<TemplateRef<HeaderTemplateType> | null | undefined>;
58
+ readonly closeToast: _angular_core.OutputEmitterRef<void>;
59
+ private _closeTimeout?;
60
+ ngOnInit(): void;
61
+ private startHideTimer;
62
+ protected close(): void;
63
+ protected mouseEnter(): void;
64
+ protected mouseLeave(): void;
65
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnToast, never>;
66
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgnToast, "ngn-toast", never, { "header": { "alias": "header"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "closeIcon": { "alias": "closeIcon"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "autoHide": { "alias": "autoHide"; "required": false; "isSignal": true; }; "templateContent": { "alias": "templateContent"; "required": false; "isSignal": true; }; "templateHeader": { "alias": "templateHeader"; "required": false; "isSignal": true; }; }, { "closeToast": "closeToast"; }, never, never, true, never>;
67
+ }
68
+
69
+ export { NGN_TOAST_USER_DEFAULTS, NgnToast, injectToastCreator, withToasts };
70
+ export type { ContentTemplateType, HeaderTemplateType, NgnToastFeature, NgnToastOptions, NgnToastOptionsMeta, NgnToastRef };
@@ -0,0 +1,46 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import * as _ngneers_controls_api_ng from '@ngneers/controls/api/ng';
3
+ import * as _ngneers_controls_themes from '@ngneers/controls-themes';
4
+ import { ValueControlBase } from '@ngneers/controls/base';
5
+
6
+ /**
7
+ * @category control
8
+ */
9
+ declare class NgnToggleButton extends ValueControlBase<'toggleButton', boolean> {
10
+ protected readonly theme: _ngneers_controls_api_ng.ControlTemplateInfo<_ngneers_controls_themes.ControlTemplate<"toggle-button", ["root", "invalid", "button", "label", "active", "placeholder", "placeholder-active"], readonly []>>;
11
+ /**
12
+ * Optional labels for on and off states.
13
+ * If not provided, the {@link label} input will be used.
14
+ */
15
+ readonly labelOn: _angular_core.InputSignal<string | undefined>;
16
+ /**
17
+ * Optional labels for on and off states.
18
+ * If not provided, the {@link label} input will be used.
19
+ */
20
+ readonly labelOff: _angular_core.InputSignal<string | undefined>;
21
+ /**
22
+ * Optional icon for the button. Can be used instead of the label or in combination with it.
23
+ * If {@link iconOn} and {@link iconOff} are provided, they will take precedence over this input for their respective states.
24
+ */
25
+ readonly icon: _angular_core.InputSignal<string | undefined>;
26
+ /**
27
+ * Optional icons for on and off states.
28
+ * If not provided, the {@link icon} input will be used.
29
+ */
30
+ readonly iconOn: _angular_core.InputSignal<string | undefined>;
31
+ /**
32
+ * Optional icons for on and off states.
33
+ * If not provided, the {@link icon} input will be used.
34
+ */
35
+ readonly iconOff: _angular_core.InputSignal<string | undefined>;
36
+ /**
37
+ * If true, the button will always have the width of the longest possible content.
38
+ * @default false
39
+ */
40
+ readonly fixedWidth: _angular_core.InputSignal<boolean>;
41
+ toggle(): void;
42
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgnToggleButton, never>;
43
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgnToggleButton, "ngn-toggle-button", never, { "labelOn": { "alias": "labelOn"; "required": false; "isSignal": true; }; "labelOff": { "alias": "labelOff"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconOn": { "alias": "iconOn"; "required": false; "isSignal": true; }; "iconOff": { "alias": "iconOff"; "required": false; "isSignal": true; }; "fixedWidth": { "alias": "fixedWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
44
+ }
45
+
46
+ export { NgnToggleButton };