@ngbase/adk 0.1.1 → 0.1.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 (275) hide show
  1. package/a11y/accessibility-group.d.ts +2 -5
  2. package/accordion/accordion-item.d.ts +7 -1
  3. package/accordion/public-api.d.ts +1 -1
  4. package/autocomplete/autocomplete-input.d.ts +2 -4
  5. package/autocomplete/autocomplete.d.ts +13 -4
  6. package/avatar/avatar.d.ts +1 -1
  7. package/breadcrumb/breadcrumb.d.ts +2 -3
  8. package/breadcrumb/public-api.d.ts +1 -1
  9. package/carousel/carousel.d.ts +3 -3
  10. package/checkbox/checkbox.d.ts +11 -3
  11. package/checkbox/public-api.d.ts +1 -1
  12. package/chip/chip.d.ts +2 -2
  13. package/datepicker/calendar.d.ts +3 -3
  14. package/datepicker/datepicker-trigger.d.ts +22 -5
  15. package/datepicker/datepicker.d.ts +4 -3
  16. package/datepicker/time.d.ts +2 -2
  17. package/dialog/dialog.d.ts +1 -1
  18. package/drag/drag.d.ts +1 -2
  19. package/fesm2022/ngbase-adk-a11y.mjs +29 -26
  20. package/fesm2022/ngbase-adk-a11y.mjs.map +1 -1
  21. package/fesm2022/ngbase-adk-accordion.mjs +16 -3
  22. package/fesm2022/ngbase-adk-accordion.mjs.map +1 -1
  23. package/fesm2022/ngbase-adk-autocomplete.mjs +23 -52
  24. package/fesm2022/ngbase-adk-autocomplete.mjs.map +1 -1
  25. package/fesm2022/ngbase-adk-avatar.mjs +2 -2
  26. package/fesm2022/ngbase-adk-avatar.mjs.map +1 -1
  27. package/fesm2022/ngbase-adk-breadcrumb.mjs +2 -2
  28. package/fesm2022/ngbase-adk-breadcrumb.mjs.map +1 -1
  29. package/fesm2022/ngbase-adk-carousel.mjs +7 -7
  30. package/fesm2022/ngbase-adk-carousel.mjs.map +1 -1
  31. package/fesm2022/ngbase-adk-checkbox.mjs +8 -6
  32. package/fesm2022/ngbase-adk-checkbox.mjs.map +1 -1
  33. package/fesm2022/ngbase-adk-chip.mjs +4 -2
  34. package/fesm2022/ngbase-adk-chip.mjs.map +1 -1
  35. package/fesm2022/ngbase-adk-datepicker.mjs +187 -350
  36. package/fesm2022/ngbase-adk-datepicker.mjs.map +1 -1
  37. package/fesm2022/ngbase-adk-dialog.mjs +14 -15
  38. package/fesm2022/ngbase-adk-dialog.mjs.map +1 -1
  39. package/fesm2022/ngbase-adk-drag.mjs +1 -2
  40. package/fesm2022/ngbase-adk-drag.mjs.map +1 -1
  41. package/fesm2022/ngbase-adk-form-field.mjs +2 -156
  42. package/fesm2022/ngbase-adk-form-field.mjs.map +1 -1
  43. package/fesm2022/ngbase-adk-list.mjs +2 -2
  44. package/fesm2022/ngbase-adk-list.mjs.map +1 -1
  45. package/fesm2022/ngbase-adk-mask.mjs +5 -3
  46. package/fesm2022/ngbase-adk-mask.mjs.map +1 -1
  47. package/fesm2022/ngbase-adk-menu.mjs +34 -34
  48. package/fesm2022/ngbase-adk-menu.mjs.map +1 -1
  49. package/fesm2022/ngbase-adk-otp.mjs +164 -0
  50. package/fesm2022/ngbase-adk-otp.mjs.map +1 -0
  51. package/fesm2022/ngbase-adk-pagination.mjs +10 -67
  52. package/fesm2022/ngbase-adk-pagination.mjs.map +1 -1
  53. package/fesm2022/ngbase-adk-popover.mjs +434 -556
  54. package/fesm2022/ngbase-adk-popover.mjs.map +1 -1
  55. package/fesm2022/ngbase-adk-portal.mjs +5 -10
  56. package/fesm2022/ngbase-adk-portal.mjs.map +1 -1
  57. package/fesm2022/ngbase-adk-radio.mjs +8 -19
  58. package/fesm2022/ngbase-adk-radio.mjs.map +1 -1
  59. package/fesm2022/ngbase-adk-resizable.mjs +10 -43
  60. package/fesm2022/ngbase-adk-resizable.mjs.map +1 -1
  61. package/fesm2022/ngbase-adk-select.mjs +87 -185
  62. package/fesm2022/ngbase-adk-select.mjs.map +1 -1
  63. package/fesm2022/ngbase-adk-sheet.mjs +95 -0
  64. package/fesm2022/ngbase-adk-sheet.mjs.map +1 -0
  65. package/fesm2022/ngbase-adk-sidenav.mjs +2 -2
  66. package/fesm2022/ngbase-adk-sidenav.mjs.map +1 -1
  67. package/fesm2022/ngbase-adk-slider.mjs +12 -23
  68. package/fesm2022/ngbase-adk-slider.mjs.map +1 -1
  69. package/fesm2022/ngbase-adk-sonner.mjs +13 -63
  70. package/fesm2022/ngbase-adk-sonner.mjs.map +1 -1
  71. package/fesm2022/ngbase-adk-stepper.mjs +16 -114
  72. package/fesm2022/ngbase-adk-stepper.mjs.map +1 -1
  73. package/fesm2022/ngbase-adk-switch.mjs +2 -2
  74. package/fesm2022/ngbase-adk-switch.mjs.map +1 -1
  75. package/fesm2022/ngbase-adk-table.mjs +17 -35
  76. package/fesm2022/ngbase-adk-table.mjs.map +1 -1
  77. package/fesm2022/ngbase-adk-tabs.mjs +14 -94
  78. package/fesm2022/ngbase-adk-tabs.mjs.map +1 -1
  79. package/fesm2022/ngbase-adk-test.mjs +11 -1
  80. package/fesm2022/ngbase-adk-test.mjs.map +1 -1
  81. package/fesm2022/ngbase-adk-tooltip.mjs +49 -39
  82. package/fesm2022/ngbase-adk-tooltip.mjs.map +1 -1
  83. package/fesm2022/ngbase-adk-tour.mjs +3 -3
  84. package/fesm2022/ngbase-adk-tour.mjs.map +1 -1
  85. package/fesm2022/ngbase-adk-tree.mjs +11 -43
  86. package/fesm2022/ngbase-adk-tree.mjs.map +1 -1
  87. package/fesm2022/ngbase-adk-utils.mjs +12 -9
  88. package/fesm2022/ngbase-adk-utils.mjs.map +1 -1
  89. package/form-field/public-api.d.ts +0 -1
  90. package/mask/mask.d.ts +1 -2
  91. package/menu/menu-trigger.d.ts +3 -3
  92. package/menu/menu.d.ts +13 -7
  93. package/otp/index.d.ts +5 -0
  94. package/{form-field → otp}/otp.d.ts +1 -1
  95. package/otp/public-api.d.ts +1 -0
  96. package/package.json +27 -19
  97. package/pagination/pagination.d.ts +7 -3
  98. package/popover/base-popover.service.d.ts +1 -1
  99. package/popover/popover-arrow.ng.d.ts +34 -0
  100. package/popover/popover.d.ts +17 -7
  101. package/popover/popover.service.d.ts +5 -4
  102. package/popover/public-api.d.ts +1 -0
  103. package/popover/utils.d.ts +32 -48
  104. package/portal/dialog-ref.d.ts +0 -1
  105. package/portal/portal-base.service.d.ts +3 -3
  106. package/portal/portal-close.directive.d.ts +3 -2
  107. package/radio/radio.d.ts +5 -1
  108. package/resizable/resizable-group.d.ts +2 -2
  109. package/resizable/resizable.d.ts +2 -2
  110. package/select/option-group.d.ts +3 -3
  111. package/select/option.d.ts +1 -1
  112. package/select/select-base.d.ts +8 -6
  113. package/select/select.d.ts +6 -3
  114. package/sheet/index.d.ts +5 -0
  115. package/sheet/public-api.d.ts +2 -0
  116. package/sheet/sheet.d.ts +26 -0
  117. package/sheet/sheet.service.d.ts +13 -0
  118. package/sidenav/public-api.d.ts +1 -1
  119. package/sidenav/sidenav.d.ts +1 -1
  120. package/slider/public-api.d.ts +1 -1
  121. package/slider/slider.d.ts +6 -5
  122. package/sonner/sonner.d.ts +2 -1
  123. package/stepper/animation.d.ts +1 -1
  124. package/stepper/step.d.ts +1 -1
  125. package/stepper/stepper.d.ts +2 -2
  126. package/switch/switch.d.ts +1 -1
  127. package/table/body-row.d.ts +3 -3
  128. package/table/head-row.d.ts +3 -3
  129. package/table/table.d.ts +3 -3
  130. package/tabs/tab-group.d.ts +4 -4
  131. package/tabs/tab.d.ts +2 -2
  132. package/test/utils.d.ts +19 -3
  133. package/tooltip/public-api.d.ts +1 -1
  134. package/tooltip/tooltip.d.ts +5 -1
  135. package/tooltip/tooltip.directive.d.ts +1 -1
  136. package/tooltip/tooltip.service.d.ts +4 -2
  137. package/tour/tour.service.d.ts +3 -4
  138. package/tree/public-api.d.ts +2 -2
  139. package/tree/tree-node.d.ts +2 -2
  140. package/tree/tree.d.ts +2 -2
  141. package/utils/utils.d.ts +5 -4
  142. package/schematics/collection.json +0 -15
  143. package/schematics/components/files/accordion/accordion.ts.template +0 -55
  144. package/schematics/components/files/accordion/index.ts.template +0 -5
  145. package/schematics/components/files/alert/alert.ts.template +0 -62
  146. package/schematics/components/files/alert/index.ts.template +0 -1
  147. package/schematics/components/files/autocomplete/autocomplete.ts.template +0 -48
  148. package/schematics/components/files/autocomplete/index.ts.template +0 -5
  149. package/schematics/components/files/avatar/avatar.ts.template +0 -31
  150. package/schematics/components/files/avatar/index.ts.template +0 -1
  151. package/schematics/components/files/badge/badge.ts.template +0 -11
  152. package/schematics/components/files/badge/index.ts.template +0 -1
  153. package/schematics/components/files/breadcrumb/breadcrumb.ts.template +0 -49
  154. package/schematics/components/files/breadcrumb/index.ts.template +0 -1
  155. package/schematics/components/files/button/button.ts.template +0 -29
  156. package/schematics/components/files/button/index.ts.template +0 -5
  157. package/schematics/components/files/card/card.ts.template +0 -11
  158. package/schematics/components/files/card/index.ts.template +0 -5
  159. package/schematics/components/files/carousel/carousel.ts.template +0 -44
  160. package/schematics/components/files/carousel/index.ts.template +0 -1
  161. package/schematics/components/files/checkbox/checkbox.ts.template +0 -46
  162. package/schematics/components/files/checkbox/focus-style.directive.ts.template +0 -12
  163. package/schematics/components/files/checkbox/index.ts.template +0 -6
  164. package/schematics/components/files/chip/chip.ts.template +0 -36
  165. package/schematics/components/files/chip/index.ts.template +0 -1
  166. package/schematics/components/files/color-picker/color-picker.ts.template +0 -104
  167. package/schematics/components/files/color-picker/index.ts.template +0 -5
  168. package/schematics/components/files/command/command.ts.template +0 -82
  169. package/schematics/components/files/command/index.ts.template +0 -1
  170. package/schematics/components/files/datepicker/calendar.ts.template +0 -117
  171. package/schematics/components/files/datepicker/datepicker-trigger.ts.template +0 -27
  172. package/schematics/components/files/datepicker/datepicker.ts.template +0 -28
  173. package/schematics/components/files/datepicker/index.ts.template +0 -3
  174. package/schematics/components/files/datepicker/time.ts.template +0 -46
  175. package/schematics/components/files/dialog/dialog.ts.template +0 -89
  176. package/schematics/components/files/dialog/index.ts.template +0 -5
  177. package/schematics/components/files/drawer/drawer.ts.template +0 -104
  178. package/schematics/components/files/drawer/index.ts.template +0 -5
  179. package/schematics/components/files/form-field/index.ts.template +0 -7
  180. package/schematics/components/files/form-field/input-style.directive.ts.template +0 -11
  181. package/schematics/components/files/form-field/input.ts.template +0 -100
  182. package/schematics/components/files/form-field/otp.ts.template +0 -37
  183. package/schematics/components/files/hover-card/hover-card.ts.template +0 -13
  184. package/schematics/components/files/hover-card/index.ts.template +0 -5
  185. package/schematics/components/files/icon/icon.ts.template +0 -16
  186. package/schematics/components/files/icon/index.ts.template +0 -1
  187. package/schematics/components/files/inline-edit/index.ts.template +0 -1
  188. package/schematics/components/files/inline-edit/inline-edit.ts.template +0 -24
  189. package/schematics/components/files/keys/index.ts.template +0 -5
  190. package/schematics/components/files/keys/key.ts.template +0 -35
  191. package/schematics/components/files/list/index.ts.template +0 -5
  192. package/schematics/components/files/list/list.ts.template +0 -28
  193. package/schematics/components/files/mask/index.ts.template +0 -1
  194. package/schematics/components/files/mask/mask.ts.template +0 -8
  195. package/schematics/components/files/menu/context-menu.ts.template +0 -14
  196. package/schematics/components/files/menu/index.ts.template +0 -8
  197. package/schematics/components/files/menu/mention.ts.template +0 -14
  198. package/schematics/components/files/menu/menu.ts.template +0 -37
  199. package/schematics/components/files/menu/navigation-menu.ts.template +0 -8
  200. package/schematics/components/files/pagination/index.ts.template +0 -1
  201. package/schematics/components/files/pagination/pagination.ts.template +0 -71
  202. package/schematics/components/files/picasa/index.ts.template +0 -1
  203. package/schematics/components/files/picasa/picasa-base.component.ts.template +0 -80
  204. package/schematics/components/files/picasa/picasa.component.ts.template +0 -57
  205. package/schematics/components/files/picasa/picasa.directive.ts.template +0 -41
  206. package/schematics/components/files/picasa/picase.service.ts.template +0 -24
  207. package/schematics/components/files/popover/index.ts.template +0 -1
  208. package/schematics/components/files/popover/popover.ts.template +0 -87
  209. package/schematics/components/files/progress/index.ts.template +0 -5
  210. package/schematics/components/files/progress/progress.ts.template +0 -14
  211. package/schematics/components/files/radio/index.ts.template +0 -5
  212. package/schematics/components/files/radio/radio.ts.template +0 -40
  213. package/schematics/components/files/resizable/index.ts.template +0 -5
  214. package/schematics/components/files/resizable/resizable.ts.template +0 -56
  215. package/schematics/components/files/scroll-area/index.ts.template +0 -1
  216. package/schematics/components/files/scroll-area/scroll-area.ts.template +0 -40
  217. package/schematics/components/files/select/index.ts.template +0 -8
  218. package/schematics/components/files/select/list-selection.ts.template +0 -15
  219. package/schematics/components/files/select/option.ts.template +0 -34
  220. package/schematics/components/files/select/select-input.ts.template +0 -21
  221. package/schematics/components/files/select/select.ts.template +0 -96
  222. package/schematics/components/files/selectable/index.ts.template +0 -1
  223. package/schematics/components/files/selectable/selectable.ts.template +0 -34
  224. package/schematics/components/files/separator/index.ts.template +0 -5
  225. package/schematics/components/files/separator/separator.ts.template +0 -19
  226. package/schematics/components/files/sheet/index.ts.template +0 -5
  227. package/schematics/components/files/sheet/sheet.ts.template +0 -134
  228. package/schematics/components/files/sidenav/index.ts.template +0 -1
  229. package/schematics/components/files/sidenav/sidenav.ts.template +0 -48
  230. package/schematics/components/files/skeleton/index.ts.template +0 -1
  231. package/schematics/components/files/skeleton/skeleton.ts.template +0 -15
  232. package/schematics/components/files/slider/index.ts.template +0 -5
  233. package/schematics/components/files/slider/slider.ts.template +0 -42
  234. package/schematics/components/files/sonner/index.ts.template +0 -5
  235. package/schematics/components/files/sonner/sonner.ts.template +0 -58
  236. package/schematics/components/files/spinner/index.ts.template +0 -1
  237. package/schematics/components/files/spinner/spinner.ts.template +0 -79
  238. package/schematics/components/files/stepper/index.ts.template +0 -1
  239. package/schematics/components/files/stepper/stepper.ts.template +0 -88
  240. package/schematics/components/files/switch/index.ts.template +0 -5
  241. package/schematics/components/files/switch/switch.ts.template +0 -29
  242. package/schematics/components/files/table/body-cell.ts.template +0 -19
  243. package/schematics/components/files/table/body-row.ts.template +0 -21
  244. package/schematics/components/files/table/column.ts.template +0 -8
  245. package/schematics/components/files/table/head-cell.ts.template +0 -19
  246. package/schematics/components/files/table/head-row.ts.template +0 -27
  247. package/schematics/components/files/table/index.ts.template +0 -26
  248. package/schematics/components/files/table/table.ts.template +0 -20
  249. package/schematics/components/files/tabs/index.ts.template +0 -5
  250. package/schematics/components/files/tabs/tab.ts.template +0 -89
  251. package/schematics/components/files/theme/index.ts.template +0 -2
  252. package/schematics/components/files/theme/theme-button.component.ts.template +0 -26
  253. package/schematics/components/files/theme/theme.component.ts.template +0 -165
  254. package/schematics/components/files/theme/theme.service.ts.template +0 -44
  255. package/schematics/components/files/toggle/index.ts.template +0 -5
  256. package/schematics/components/files/toggle/toggle.ts.template +0 -13
  257. package/schematics/components/files/toggle-group/index.ts.template +0 -5
  258. package/schematics/components/files/toggle-group/toggle-group.ts.template +0 -25
  259. package/schematics/components/files/tooltip/index.ts.template +0 -5
  260. package/schematics/components/files/tooltip/tooltip.ts.template +0 -40
  261. package/schematics/components/files/tour/index.ts.template +0 -3
  262. package/schematics/components/files/tour/tour-step.ts.template +0 -8
  263. package/schematics/components/files/tour/tour.service.ts.template +0 -7
  264. package/schematics/components/files/tour/tour.ts.template +0 -8
  265. package/schematics/components/files/tree/index.ts.template +0 -1
  266. package/schematics/components/files/tree/tree.ts.template +0 -66
  267. package/schematics/components/index.d.ts +0 -3
  268. package/schematics/components/index.js +0 -17
  269. package/schematics/components/index.js.map +0 -1
  270. package/schematics/components/index.ts +0 -29
  271. package/schematics/components/schema.d.ts +0 -6
  272. package/schematics/components/schema.js +0 -3
  273. package/schematics/components/schema.js.map +0 -1
  274. package/schematics/components/schema.json +0 -137
  275. package/schematics/components/schema.ts +0 -6
@@ -26,11 +26,8 @@ export declare class AccessibleGroup {
26
26
  private isOn;
27
27
  readonly elements: import("@angular/core").WritableSignal<AccessibleItem<any>[]>;
28
28
  readonly items: import("@angular/core").Signal<AccessibleItem<any>[]>;
29
- readonly focusChanged: import("@angular/core").OutputEmitterRef<{
30
- current: AccessibleItem;
31
- previous?: AccessibleItem;
32
- }>;
33
29
  constructor();
30
+ private itemChanged;
34
31
  handleFocusIn: (_: FocusEvent) => void;
35
32
  handleFocusOut: (event: FocusEvent) => void;
36
33
  on: () => void;
@@ -45,5 +42,5 @@ export declare class AccessibleGroup {
45
42
  register(item: AccessibleItem): void;
46
43
  unregister(item: AccessibleItem): void;
47
44
  static ɵfac: i0.ɵɵFactoryDeclaration<AccessibleGroup, never>;
48
- static ɵdir: i0.ɵɵDirectiveDeclaration<AccessibleGroup, "[ngbAccessibleGroup]", never, { "ayId": { "alias": "ayId"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledby": { "alias": "ariaLabelledby"; "required": false; "isSignal": true; }; "isPopup": { "alias": "isPopup"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "clickable": { "alias": "clickable"; "required": false; "isSignal": true; }; "initialFocus": { "alias": "initialFocus"; "required": false; "isSignal": true; }; }, { "ayId": "ayIdChange"; "clickable": "clickableChange"; "focusChanged": "focusChanged"; }, never, never, true, never>;
45
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AccessibleGroup, "[ngbAccessibleGroup]", never, { "ayId": { "alias": "ayId"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledby": { "alias": "ariaLabelledby"; "required": false; "isSignal": true; }; "isPopup": { "alias": "isPopup"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "clickable": { "alias": "clickable"; "required": false; "isSignal": true; }; "initialFocus": { "alias": "initialFocus"; "required": false; "isSignal": true; }; }, { "ayId": "ayIdChange"; "clickable": "clickableChange"; }, never, never, true, never>;
49
46
  }
@@ -3,8 +3,14 @@ export declare class NgbAccordion {
3
3
  private accordionService;
4
4
  readonly expanded: import("@angular/core").ModelSignal<boolean>;
5
5
  readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
6
+ readonly opened: import("@angular/core").OutputEmitterRef<boolean>;
7
+ readonly closed: import("@angular/core").OutputEmitterRef<boolean>;
6
8
  readonly id: string;
7
9
  toggle(): void;
8
10
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbAccordion, never>;
9
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgbAccordion, "[ngbAccordion]", ["ngbAccordion"], { "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "expanded": "expandedChange"; }, never, never, true, never>;
11
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbAccordion, "[ngbAccordion]", ["ngbAccordion"], { "expanded": { "alias": "expanded"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "expanded": "expandedChange"; "opened": "opened"; "closed": "closed"; }, never, never, true, never>;
10
12
  }
13
+ export declare function aliasAccordion(accordion: typeof NgbAccordion): {
14
+ provide: typeof NgbAccordion;
15
+ useExisting: typeof NgbAccordion;
16
+ };
@@ -1,4 +1,4 @@
1
1
  export { NgbAccordionGroup } from './accordion-group';
2
- export { NgbAccordion } from './accordion-item';
2
+ export { NgbAccordion, aliasAccordion } from './accordion-item';
3
3
  export { NgbAccordionHeader } from './accordion-header';
4
4
  export { NgbAccordionContent, slideAnimation } from './accordion-content';
@@ -7,15 +7,13 @@ export declare class NgbAutocompleteInput<T> {
7
7
  readonly autoComplete: NgbAutocomplete<any>;
8
8
  readonly input: InputBase<any>;
9
9
  readonly el: ElementRef<HTMLInputElement>;
10
+ readonly isChip: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
10
11
  readonly ngbAutocompleteInput: import("@angular/core").OutputEmitterRef<string>;
11
- readonly options: import("@angular/core").InputSignal<T[]>;
12
- readonly filterFn: import("@angular/core").InputSignal<((query: string, value: T, values: T[]) => boolean) | undefined>;
13
- readonly filteredOptions: import("@angular/core").Signal<T[]>;
14
12
  constructor();
15
13
  onFocus(): void;
16
14
  close(): void;
17
15
  updateValue(value: string): void;
18
16
  updateSearch(value: string): void;
19
17
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbAutocompleteInput<any>, never>;
20
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgbAutocompleteInput<any>, "[ngbAutocompleteInput]", ["ngbAutocompleteInput"], { "options": { "alias": "options"; "required": false; "isSignal": true; }; "filterFn": { "alias": "filterFn"; "required": false; "isSignal": true; }; }, { "ngbAutocompleteInput": "ngbAutocompleteInput"; }, never, never, true, [{ directive: typeof i1.InputBase; inputs: { "value": "value"; }; outputs: { "valueChange": "valueChange"; }; }]>;
18
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbAutocompleteInput<any>, "[ngbAutocompleteInput]", ["ngbAutocompleteInput"], { "isChip": { "alias": "isChip"; "required": false; "isSignal": true; }; }, { "ngbAutocompleteInput": "ngbAutocompleteInput"; }, never, never, true, [{ directive: typeof i1.InputBase; inputs: { "value": "value"; }; outputs: { "valueChange": "valueChange"; }; }]>;
21
19
  }
@@ -1,18 +1,27 @@
1
1
  import { Type } from '@angular/core';
2
2
  import { NgbChip } from '@ngbase/adk/chip';
3
3
  import { SelectBase } from '@ngbase/adk/select';
4
+ import { FilterOptions } from '@ngbase/adk/utils';
4
5
  import { NgbAutocompleteInput } from './autocomplete-input';
5
6
  import * as i0 from "@angular/core";
6
7
  export declare class NgbAutocomplete<T> extends SelectBase<T> {
7
- searchInput: import("@angular/core").Signal<NgbAutocompleteInput<any> | undefined>;
8
- chips: import("@angular/core").Signal<readonly NgbChip<any>[]>;
8
+ readonly searchInput: import("@angular/core").Signal<NgbAutocompleteInput<any> | undefined>;
9
+ readonly chips: import("@angular/core").Signal<readonly NgbChip<any>[]>;
10
+ readonly filterFn: import("@angular/core").InputSignal<(option: string) => string>;
11
+ readonly queryFn: import("@angular/core").InputSignal<((query: string, option: any) => boolean) | undefined>;
12
+ readonly filterOptions: import("@angular/core").InputSignal<FilterOptions<T> | undefined>;
13
+ readonly optionsFilter: {
14
+ search: import("@angular/core").WritableSignal<string>;
15
+ list: import("@angular/core").WritableSignal<T[]>;
16
+ filteredList: import("@angular/core").Signal<T[]>;
17
+ };
9
18
  constructor();
10
19
  prevent(ev: MouseEvent): void;
11
20
  private updateInputValue;
12
21
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbAutocomplete<any>, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<NgbAutocomplete<any>, "[ngbAutocomplete]", never, {}, {}, ["searchInput", "chips"], ["ngb-chip, ngb-chip-group", "input", "*"], true, never>;
22
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbAutocomplete<any>, "[ngbAutocomplete]", never, { "filterFn": { "alias": "filterFn"; "required": false; "isSignal": true; }; "queryFn": { "alias": "queryFn"; "required": false; "isSignal": true; }; "filterOptions": { "alias": "filterOptions"; "required": false; "isSignal": true; }; }, {}, ["searchInput", "chips"], never, true, never>;
14
23
  }
15
- export declare function provideAutocomplete<T>(autocomplete: Type<NgbAutocomplete<T>>): (({
24
+ export declare function aliasAutocomplete<T>(autocomplete: Type<NgbAutocomplete<T>>): (({
16
25
  provide: import("@angular/core").InjectionToken<readonly import("@angular/forms").ControlValueAccessor[]>;
17
26
  useExisting: Type<any>;
18
27
  multi: boolean;
@@ -16,7 +16,7 @@ export declare class NgbAvatarGroup {
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbAvatarGroup, never>;
17
17
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgbAvatarGroup, "[ngbAvatarGroup]", never, { "reverse": { "alias": "reverse"; "required": false; "isSignal": true; }; "left": { "alias": "left"; "required": false; "isSignal": true; }; }, {}, ["avatars"], never, true, never>;
18
18
  }
19
- export declare function provideAvatar(avatar: Type<NgbAvatar>): {
19
+ export declare function aliasAvatar(avatar: Type<NgbAvatar>): {
20
20
  provide: typeof NgbAvatar;
21
21
  useExisting: Type<NgbAvatar>;
22
22
  };
@@ -1,4 +1,3 @@
1
- import { Type } from '@angular/core';
2
1
  import * as i0 from "@angular/core";
3
2
  export declare class NgbBreadcrumb {
4
3
  private breadcrumbs;
@@ -6,7 +5,7 @@ export declare class NgbBreadcrumb {
6
5
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbBreadcrumb, never>;
7
6
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgbBreadcrumb, "[ngbBreadcrumb]", never, {}, {}, never, never, true, never>;
8
7
  }
9
- export declare function provideBreadcrumb(breadcrumb: Type<NgbBreadcrumb>): {
8
+ export declare function aliasBreadcrumb(breadcrumb: typeof NgbBreadcrumb): {
10
9
  provide: typeof NgbBreadcrumb;
11
- useExisting: Type<NgbBreadcrumb>;
10
+ useExisting: typeof NgbBreadcrumb;
12
11
  };
@@ -1,4 +1,4 @@
1
1
  export { NgbBreadcrumbs } from './breadcrumbs';
2
- export { NgbBreadcrumb, provideBreadcrumb } from './breadcrumb';
2
+ export { NgbBreadcrumb, aliasBreadcrumb } from './breadcrumb';
3
3
  export { NgbBreadcrumbLink } from './breadcrumb-link';
4
4
  export { NgbBreadcrumbSeparatorAria, NgbBreadcrumbSeparator } from './breadcrumb-separator';
@@ -10,13 +10,13 @@ export declare class NgbCarouselContainer {
10
10
  export declare class NgbCarouselSubContainer {
11
11
  private el;
12
12
  private dir;
13
- updateScrollPosition(x: number, skipDirection?: boolean): void;
13
+ updateScrollPosition(x: number): void;
14
14
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbCarouselSubContainer, never>;
15
15
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgbCarouselSubContainer, "[ngbCarouselSubContainer]", never, {}, {}, never, never, true, never>;
16
16
  }
17
17
  export declare class NgbCarousel {
18
- private drag;
19
18
  private dir;
19
+ private drag;
20
20
  private mainContainer;
21
21
  private subContainer;
22
22
  private items;
@@ -55,7 +55,7 @@ export declare class NgbCarousel {
55
55
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbCarousel, never>;
56
56
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgbCarousel, "[ngbCarousel]", ["ngbCarousel"], {}, {}, ["items"], never, true, never>;
57
57
  }
58
- export declare function provideCarousel(carousel: typeof NgbCarousel): {
58
+ export declare function aliasCarousel(carousel: typeof NgbCarousel): {
59
59
  provide: typeof NgbCarousel;
60
60
  useExisting: typeof NgbCarousel;
61
61
  };
@@ -7,10 +7,10 @@ export declare class CheckboxButton {
7
7
  }
8
8
  export declare class NgbCheckbox implements ControlValueAccessor {
9
9
  readonly id: string;
10
- readonly disabled: import("@angular/core").InputSignal<boolean>;
11
10
  readonly checked: import("@angular/core").ModelSignal<boolean>;
12
- readonly change: import("@angular/core").OutputEmitterRef<boolean>;
11
+ readonly disabled: import("@angular/core").InputSignal<boolean>;
13
12
  readonly indeterminate: import("@angular/core").InputSignal<boolean>;
13
+ readonly change: import("@angular/core").OutputEmitterRef<boolean>;
14
14
  onChange: (_: any) => void;
15
15
  onTouched: () => void;
16
16
  updateValue(): void;
@@ -18,5 +18,13 @@ export declare class NgbCheckbox implements ControlValueAccessor {
18
18
  registerOnChange(fn: any): void;
19
19
  registerOnTouched(fn: any): void;
20
20
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbCheckbox, never>;
21
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgbCheckbox, "[ngbCheckbox]", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "change": "change"; }, never, never, true, never>;
21
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbCheckbox, "[ngbCheckbox]", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "change": "change"; }, never, never, true, never>;
22
22
  }
23
+ export declare function aliasCheckbox(checkbox: typeof NgbCheckbox): ({
24
+ provide: import("@angular/core").InjectionToken<readonly import("@angular/forms").ControlValueAccessor[]>;
25
+ useExisting: import("@angular/core").Type<any>;
26
+ multi: boolean;
27
+ } | {
28
+ provide: typeof NgbCheckbox;
29
+ useExisting: typeof NgbCheckbox;
30
+ })[];
@@ -1 +1 @@
1
- export { CheckboxButton, NgbCheckbox } from './checkbox';
1
+ export { aliasCheckbox, CheckboxButton, NgbCheckbox } from './checkbox';
package/chip/chip.d.ts CHANGED
@@ -13,7 +13,7 @@ export declare class NgbChip<T = any> {
13
13
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbChip<any>, never>;
14
14
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgbChip<any>, "[ngbChip]", never, { "removable": { "alias": "removable"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "close": "close"; }, never, never, true, never>;
15
15
  }
16
- export declare const provideChip: (chip: typeof NgbChip) => {
16
+ export declare function aliasChip(chip: typeof NgbChip): {
17
17
  provide: typeof NgbChip;
18
18
  useExisting: typeof NgbChip;
19
- }[];
19
+ };
@@ -113,9 +113,9 @@ export declare class NgbCalendar<D> implements OnDestroy {
113
113
  toggleView(): void;
114
114
  ngOnDestroy(): void;
115
115
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbCalendar<any>, never>;
116
- static ɵcmp: i0.ɵɵComponentDeclaration<NgbCalendar<any>, "ngb-calendar", never, { "first": { "alias": "first"; "required": false; "isSignal": true; }; "last": { "alias": "last"; "required": false; "isSignal": true; }; "index": { "alias": "index"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
116
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbCalendar<any>, "ngb-calendar", never, { "first": { "alias": "first"; "required": false; "isSignal": true; }; "last": { "alias": "last"; "required": false; "isSignal": true; }; "index": { "alias": "index"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
117
117
  }
118
- export declare function provideCalendar<D>(cal: typeof NgbCalendar): {
118
+ export declare function aliasCalendar<D>(cal: typeof NgbCalendar<D>): {
119
119
  provide: typeof NgbCalendar;
120
- useExisting: typeof NgbCalendar;
120
+ useExisting: typeof NgbCalendar<D>;
121
121
  };
@@ -1,11 +1,22 @@
1
- import { ElementRef, InjectionToken, TemplateRef } from '@angular/core';
1
+ import { ElementRef, InjectionToken, Signal, TemplateRef } from '@angular/core';
2
2
  import { InputBase } from '@ngbase/adk/form-field';
3
3
  import { NgbDatePicker } from './datepicker';
4
+ import { NgbSelectTarget } from '@ngbase/adk/select';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@ngbase/adk/form-field";
7
+ export declare class NgbEndDate<D> {
8
+ readonly el: ElementRef<HTMLInputElement>;
9
+ readonly inputS: InputBase<any>;
10
+ readonly ngbEndDate: import("@angular/core").InputSignal<NgbDatepickerTrigger<D>>;
11
+ hidden: boolean;
12
+ constructor();
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgbEndDate<any>, never>;
14
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbEndDate<any>, "[ngbEndDate]", ["ngbEndDate"], { "ngbEndDate": { "alias": "ngbEndDate"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.InputBase; inputs: { "value": "value"; }; outputs: { "valueChange": "valueChange"; }; }]>;
15
+ }
6
16
  export declare class NgbDatepickerTrigger<D> {
7
17
  readonly el: ElementRef<any>;
8
18
  readonly inputS: InputBase<any>;
19
+ readonly target: NgbSelectTarget | null;
9
20
  private readonly injector;
10
21
  readonly adapter: import("@ngbase/adk/datepicker").NgbAdpterInterface<D>;
11
22
  readonly popover: {
@@ -13,26 +24,32 @@ export declare class NgbDatepickerTrigger<D> {
13
24
  closeAll: () => void;
14
25
  };
15
26
  private datepicker;
16
- readonly noOfCalendars: import("@angular/core").InputSignalWithTransform<number, number>;
27
+ readonly noOfCalendars: import("@angular/core").InputSignalWithTransform<number, string | number>;
17
28
  readonly range: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
18
29
  readonly time: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
19
30
  readonly format: import("@angular/core").InputSignal<string>;
20
31
  readonly fieldFormat: import("@angular/core").InputSignal<string>;
21
- private displayFormat;
22
32
  readonly dateFilter: import("@angular/core").InputSignal<(date: D) => boolean>;
23
33
  readonly pickerType: import("@angular/core").InputSignal<"year" | "month" | "date">;
24
34
  readonly pickerTemplate: import("@angular/core").InputSignal<TemplateRef<any> | null>;
35
+ private displayFormat;
25
36
  close?: VoidFunction;
37
+ private readonly inputValue;
38
+ endDate?: NgbEndDate<D>;
26
39
  constructor();
27
40
  private getInputValue;
28
41
  open(): void;
29
42
  updateInput(dates: (D | null)[]): void;
30
43
  updateField(filtered: D[]): void;
31
44
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbDatepickerTrigger<any>, never>;
32
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgbDatepickerTrigger<any>, "[ngbDatepickerTrigger]", ["ngbDatepickerTrigger"], { "noOfCalendars": { "alias": "noOfCalendars"; "required": false; "isSignal": true; }; "range": { "alias": "range"; "required": false; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "fieldFormat": { "alias": "fieldFormat"; "required": false; "isSignal": true; }; "dateFilter": { "alias": "dateFilter"; "required": false; "isSignal": true; }; "pickerType": { "alias": "pickerType"; "required": false; "isSignal": true; }; "pickerTemplate": { "alias": "pickerTemplate"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.InputBase; inputs: {}; outputs: {}; }]>;
45
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbDatepickerTrigger<any>, "[ngbDatepickerTrigger]", ["ngbDatepickerTrigger"], { "noOfCalendars": { "alias": "noOfCalendars"; "required": false; "isSignal": true; }; "range": { "alias": "range"; "required": false; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "fieldFormat": { "alias": "fieldFormat"; "required": false; "isSignal": true; }; "dateFilter": { "alias": "dateFilter"; "required": false; "isSignal": true; }; "pickerType": { "alias": "pickerType"; "required": false; "isSignal": true; }; "pickerTemplate": { "alias": "pickerTemplate"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.InputBase; inputs: { "value": "value"; }; outputs: { "valueChange": "valueChange"; }; }]>;
33
46
  }
47
+ export declare function aliasDatePickerTrigger<D>(trigger: typeof NgbDatepickerTrigger<D>): {
48
+ provide: typeof NgbDatepickerTrigger;
49
+ useExisting: typeof NgbDatepickerTrigger<D>;
50
+ };
34
51
  export interface DatePickerOptions<D> {
35
- value: D[];
52
+ value: Signal<D[]>;
36
53
  pickerType: 'date' | 'month' | 'year';
37
54
  noOfCalendars: number;
38
55
  range: boolean;
@@ -1,4 +1,4 @@
1
- import { TemplateRef } from '@angular/core';
1
+ import { Injector, TemplateRef } from '@angular/core';
2
2
  import { AccessibleGroup } from '@ngbase/adk/a11y';
3
3
  import { DatePickerOptions } from './datepicker-trigger';
4
4
  import * as i0 from "@angular/core";
@@ -11,6 +11,7 @@ export declare class DatepickerGroup<D> {
11
11
  static ɵdir: i0.ɵɵDirectiveDeclaration<DatepickerGroup<any>, "[ngbDatepickerGroup]", ["ngbDatepickerGroup"], {}, {}, never, never, true, [{ directive: typeof i1.AccessibleGroup; inputs: {}; outputs: {}; }]>;
12
12
  }
13
13
  export declare class NgbDatePicker<D> {
14
+ readonly injector: Injector;
14
15
  private datepickerTrigger;
15
16
  private dialogRef;
16
17
  readonly adapter: import("@ngbase/adk/datepicker").NgbAdpterInterface<D>;
@@ -46,9 +47,9 @@ export declare class NgbDatePicker<D> {
46
47
  selectMonth(month: number, year: number): void;
47
48
  toggleView(): void;
48
49
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbDatePicker<any>, never>;
49
- static ɵcmp: i0.ɵɵComponentDeclaration<NgbDatePicker<any>, "[ngbDatepicker]", never, { "dateFilter": { "alias": "dateFilter"; "required": false; "isSignal": true; }; "pickerType": { "alias": "pickerType"; "required": false; "isSignal": true; }; "noOfCalendar": { "alias": "noOfCalendar"; "required": false; "isSignal": true; }; "range": { "alias": "range"; "required": false; "isSignal": true; }; }, { "noOfCalendar": "noOfCalendarChange"; "range": "rangeChange"; }, never, never, true, never>;
50
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbDatePicker<any>, "[ngbDatepicker]", never, { "dateFilter": { "alias": "dateFilter"; "required": false; "isSignal": true; }; "pickerType": { "alias": "pickerType"; "required": false; "isSignal": true; }; "noOfCalendar": { "alias": "noOfCalendar"; "required": false; "isSignal": true; }; "range": { "alias": "range"; "required": false; "isSignal": true; }; }, { "noOfCalendar": "noOfCalendarChange"; "range": "rangeChange"; }, never, never, true, never>;
50
51
  }
51
- export declare function provideDatePicker<D>(picker: typeof NgbDatePicker<D>): {
52
+ export declare function aliasDatePicker<D>(picker: typeof NgbDatePicker<D>): {
52
53
  provide: typeof NgbDatePicker;
53
54
  useExisting: typeof NgbDatePicker<D>;
54
55
  };
@@ -30,9 +30,9 @@ export declare class NgbTimePicker implements ControlValueAccessor {
30
30
  registerOnChange(fn: any): void;
31
31
  registerOnTouched(fn: any): void;
32
32
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbTimePicker, never>;
33
- static ɵcmp: i0.ɵɵComponentDeclaration<NgbTimePicker, "[ngbTime]", never, { "is24": { "alias": "is24"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
33
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgbTimePicker, "[ngbTime]", never, { "is24": { "alias": "is24"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
34
34
  }
35
- export declare function provideTimePicker(picker: typeof NgbTimePicker): ({
35
+ export declare function aliasTimePicker(picker: typeof NgbTimePicker): ({
36
36
  provide: import("@angular/core").InjectionToken<readonly import("@angular/forms").ControlValueAccessor[]>;
37
37
  useExisting: import("@angular/core").Type<any>;
38
38
  multi: boolean;
@@ -43,7 +43,7 @@ export declare class NgbDialogClose {
43
43
  static ɵfac: i0.ɵɵFactoryDeclaration<NgbDialogClose, never>;
44
44
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgbDialogClose, "[ngbDialogClose]", never, {}, {}, never, never, true, [{ directive: typeof i2.NgbPortalClose; inputs: { "ngbPortalClose": "ngbDialogClose"; }; outputs: {}; }]>;
45
45
  }
46
- export declare function provideDialog(dialog: typeof NgbDialogContainer): {
46
+ export declare function aliasDialog(dialog: typeof NgbDialogContainer): {
47
47
  provide: typeof NgbDialogContainer;
48
48
  useExisting: typeof NgbDialogContainer;
49
49
  };
package/drag/drag.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ElementRef, NgZone } from '@angular/core';
1
+ import { ElementRef } from '@angular/core';
2
2
  import { Subject } from 'rxjs';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class DragData {
@@ -22,7 +22,6 @@ export declare class DragHandle {
22
22
  }
23
23
  export declare class Drag {
24
24
  readonly el: ElementRef<any>;
25
- readonly zone: NgZone;
26
25
  readonly document: Document;
27
26
  readonly handle: import("@angular/core").Signal<ElementRef<any> | undefined>;
28
27
  readonly events: Subject<DragData>;
@@ -1,6 +1,6 @@
1
1
  import { DOCUMENT } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { signal, Injectable, inject, ElementRef, model, input, booleanAttribute, linkedSignal, computed, output, effect, untracked, Directive, ApplicationRef, afterRender } from '@angular/core';
3
+ import { signal, Injectable, inject, ElementRef, model, input, booleanAttribute, linkedSignal, computed, effect, untracked, Directive, output, ApplicationRef, afterRender } from '@angular/core';
4
4
  import { Directionality } from '@ngbase/adk/bidi';
5
5
  import { documentListener, isClient } from '@ngbase/adk/utils';
6
6
  import { Subject } from 'rxjs';
@@ -57,6 +57,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
57
57
  }], ctorParameters: () => [] });
58
58
 
59
59
  class AccessibleGroup {
60
+ // readonly focusChanged = output<{ current: AccessibleItem; previous?: AccessibleItem }>();
60
61
  constructor() {
61
62
  this.allyService = inject(AccessibilityService);
62
63
  this.el = inject(ElementRef);
@@ -80,7 +81,7 @@ class AccessibleGroup {
80
81
  this._loop = linkedSignal(this.loop);
81
82
  this._columns = linkedSignal(this.columns);
82
83
  this._initialFocus = linkedSignal(this.initialFocus);
83
- this.isOn = signal(false);
84
+ this.isOn = false;
84
85
  this.elements = signal([]);
85
86
  this.items = computed(() => {
86
87
  const _ = this._ayId() || '';
@@ -95,9 +96,8 @@ class AccessibleGroup {
95
96
  });
96
97
  return items;
97
98
  });
98
- this.focusChanged = output();
99
99
  this.handleFocusIn = (_) => {
100
- if (!this.isOn()) {
100
+ if (!this.isOn) {
101
101
  // console.log(`focus in ${this._ayId()}`);
102
102
  this.on();
103
103
  }
@@ -119,7 +119,8 @@ class AccessibleGroup {
119
119
  });
120
120
  }
121
121
  this.document.addEventListener('keydown', this.onKeyDown);
122
- this.isOn.set(true);
122
+ this.isOn = true;
123
+ this.itemChanged();
123
124
  this.el.nativeElement.tabIndex = -1;
124
125
  };
125
126
  this.off = () => {
@@ -130,7 +131,8 @@ class AccessibleGroup {
130
131
  });
131
132
  }
132
133
  this.document.removeEventListener('keydown', this.onKeyDown);
133
- this.isOn.set(false);
134
+ this.isOn = false;
135
+ this.itemChanged();
134
136
  this.el.nativeElement.tabIndex = 0;
135
137
  };
136
138
  this.onKeyDown = (event) => {
@@ -269,22 +271,7 @@ class AccessibleGroup {
269
271
  });
270
272
  }
271
273
  });
272
- effect(() => {
273
- const items = this.items();
274
- const isOn = this.isOn();
275
- untracked(() => {
276
- items.forEach(item => item.blur());
277
- // console.log('group', this._ayId(), items.length, isOn);
278
- this.log('focus', items.length, isOn, this._initialFocus());
279
- let item = this.focusedItem?.deref();
280
- if (items.length && isOn && this._initialFocus()) {
281
- if (!item || !items.includes(item)) {
282
- item = items[0];
283
- }
284
- this.focusItem(item);
285
- }
286
- });
287
- });
274
+ effect(() => this.itemChanged());
288
275
  effect(() => {
289
276
  const isPopup = this._isPopup();
290
277
  untracked(() => {
@@ -298,6 +285,22 @@ class AccessibleGroup {
298
285
  });
299
286
  });
300
287
  }
288
+ itemChanged() {
289
+ const items = this.items();
290
+ const isOn = this.isOn;
291
+ untracked(() => {
292
+ items.forEach(item => item.blur());
293
+ // console.log('group', this._ayId(), items.length, isOn);
294
+ this.log('focus', items.length, isOn, this._initialFocus());
295
+ let item = this.focusedItem?.deref();
296
+ if (items.length && isOn && this._initialFocus()) {
297
+ if (!item || !items.includes(item)) {
298
+ item = items[0];
299
+ }
300
+ this.focusItem(item);
301
+ }
302
+ });
303
+ }
301
304
  findNextOrPreviousLevelItem(currentIndex, direction, items) {
302
305
  const currentItem = items[currentIndex];
303
306
  const currentLevel = currentItem.level();
@@ -335,9 +338,9 @@ class AccessibleGroup {
335
338
  this.focusedItem = new WeakRef(nextItem);
336
339
  nextItem.focus(!this.allyService.usingMouse && !this._isPopup(), !this.allyService.usingMouse);
337
340
  // this.focusCount++;
338
- if (this.clickable())
341
+ if (this.clickable() && !this.allyService.usingMouse)
339
342
  nextItem.click();
340
- this.focusChanged.emit({ current: nextItem, previous: previousItem });
343
+ // this.focusChanged.emit({ current: nextItem, previous: previousItem });
341
344
  }
342
345
  }
343
346
  // it should start from the current index and move to the next item based on the direction
@@ -384,7 +387,7 @@ class AccessibleGroup {
384
387
  this.elements.update(x => x.filter(y => y !== item));
385
388
  }
386
389
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: AccessibleGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
387
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.0.0", type: AccessibleGroup, isStandalone: true, selector: "[ngbAccessibleGroup]", inputs: { ayId: { classPropertyName: "ayId", publicName: "ayId", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledby: { classPropertyName: "ariaLabelledby", publicName: "ariaLabelledby", isSignal: true, isRequired: false, transformFunction: null }, isPopup: { classPropertyName: "isPopup", publicName: "isPopup", isSignal: true, isRequired: false, transformFunction: null }, loop: { classPropertyName: "loop", publicName: "loop", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, initialFocus: { classPropertyName: "initialFocus", publicName: "initialFocus", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ayId: "ayIdChange", clickable: "clickableChange", focusChanged: "focusChanged" }, host: { attributes: { "role": "group", "tabindex": "0" }, properties: { "attr.aria-label": "_ariaLabel()", "attr.aria-labelledby": "_ariaLabelledby()", "attr.aria-disabled": "_disabled()" } }, ngImport: i0 }); }
390
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.0.0", type: AccessibleGroup, isStandalone: true, selector: "[ngbAccessibleGroup]", inputs: { ayId: { classPropertyName: "ayId", publicName: "ayId", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledby: { classPropertyName: "ariaLabelledby", publicName: "ariaLabelledby", isSignal: true, isRequired: false, transformFunction: null }, isPopup: { classPropertyName: "isPopup", publicName: "isPopup", isSignal: true, isRequired: false, transformFunction: null }, loop: { classPropertyName: "loop", publicName: "loop", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, initialFocus: { classPropertyName: "initialFocus", publicName: "initialFocus", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ayId: "ayIdChange", clickable: "clickableChange" }, host: { attributes: { "role": "group", "tabindex": "0" }, properties: { "attr.aria-label": "_ariaLabel()", "attr.aria-labelledby": "_ariaLabelledby()", "attr.aria-disabled": "_disabled()" } }, ngImport: i0 }); }
388
391
  }
389
392
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: AccessibleGroup, decorators: [{
390
393
  type: Directive,
@@ -466,7 +469,7 @@ class AccessibleItem {
466
469
  // console.log('scrollIntoView', isKeyboard);
467
470
  if (focus)
468
471
  this.el.focus();
469
- // this.el.classList.add('bg-muted-background');
472
+ // this.el.classList.add('bg-muted');
470
473
  this.el.setAttribute('data-focus', 'true');
471
474
  if (isKeyboard)
472
475
  this.el.scrollIntoView({ block: 'nearest' });