@spartan-ng/brain 0.0.1-alpha.562 → 0.0.1-alpha.564

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 (272) hide show
  1. package/accordion/index.d.ts +125 -10
  2. package/alert-dialog/index.d.ts +40 -13
  3. package/autocomplete/index.d.ts +113 -15
  4. package/avatar/index.d.ts +40 -8
  5. package/button/index.d.ts +15 -3
  6. package/calendar/index.d.ts +465 -29
  7. package/checkbox/index.d.ts +156 -3
  8. package/collapsible/index.d.ts +70 -8
  9. package/command/index.d.ts +147 -16
  10. package/core/index.d.ts +153 -11
  11. package/date-time/index.d.ts +321 -3
  12. package/date-time-luxon/index.d.ts +32 -1
  13. package/dialog/index.d.ts +225 -21
  14. package/fesm2022/spartan-ng-brain-accordion.mjs +12 -12
  15. package/fesm2022/spartan-ng-brain-accordion.mjs.map +1 -1
  16. package/fesm2022/spartan-ng-brain-alert-dialog.mjs +18 -18
  17. package/fesm2022/spartan-ng-brain-alert-dialog.mjs.map +1 -1
  18. package/fesm2022/spartan-ng-brain-autocomplete.mjs +18 -18
  19. package/fesm2022/spartan-ng-brain-autocomplete.mjs.map +1 -1
  20. package/fesm2022/spartan-ng-brain-avatar.mjs +12 -12
  21. package/fesm2022/spartan-ng-brain-avatar.mjs.map +1 -1
  22. package/fesm2022/spartan-ng-brain-button.mjs +3 -3
  23. package/fesm2022/spartan-ng-brain-button.mjs.map +1 -1
  24. package/fesm2022/spartan-ng-brain-calendar.mjs +42 -42
  25. package/fesm2022/spartan-ng-brain-calendar.mjs.map +1 -1
  26. package/fesm2022/spartan-ng-brain-checkbox.mjs +5 -5
  27. package/fesm2022/spartan-ng-brain-checkbox.mjs.map +1 -1
  28. package/fesm2022/spartan-ng-brain-collapsible.mjs +9 -9
  29. package/fesm2022/spartan-ng-brain-collapsible.mjs.map +1 -1
  30. package/fesm2022/spartan-ng-brain-command.mjs +29 -34
  31. package/fesm2022/spartan-ng-brain-command.mjs.map +1 -1
  32. package/fesm2022/spartan-ng-brain-core.mjs.map +1 -1
  33. package/fesm2022/spartan-ng-brain-date-time-luxon.mjs.map +1 -1
  34. package/fesm2022/spartan-ng-brain-date-time.mjs.map +1 -1
  35. package/fesm2022/spartan-ng-brain-dialog.mjs +24 -24
  36. package/fesm2022/spartan-ng-brain-dialog.mjs.map +1 -1
  37. package/fesm2022/spartan-ng-brain-form-field.mjs +3 -3
  38. package/fesm2022/spartan-ng-brain-form-field.mjs.map +1 -1
  39. package/fesm2022/spartan-ng-brain-forms.mjs +6 -6
  40. package/fesm2022/spartan-ng-brain-forms.mjs.map +1 -1
  41. package/fesm2022/spartan-ng-brain-hover-card.mjs +12 -12
  42. package/fesm2022/spartan-ng-brain-hover-card.mjs.map +1 -1
  43. package/fesm2022/spartan-ng-brain-input-otp.mjs +6 -6
  44. package/fesm2022/spartan-ng-brain-input-otp.mjs.map +1 -1
  45. package/fesm2022/spartan-ng-brain-label.mjs +3 -3
  46. package/fesm2022/spartan-ng-brain-label.mjs.map +1 -1
  47. package/fesm2022/spartan-ng-brain-menu.mjs +24 -24
  48. package/fesm2022/spartan-ng-brain-menu.mjs.map +1 -1
  49. package/fesm2022/spartan-ng-brain-navigation-menu.mjs +21 -21
  50. package/fesm2022/spartan-ng-brain-navigation-menu.mjs.map +1 -1
  51. package/fesm2022/spartan-ng-brain-popover.mjs +12 -12
  52. package/fesm2022/spartan-ng-brain-popover.mjs.map +1 -1
  53. package/fesm2022/spartan-ng-brain-progress.mjs +6 -6
  54. package/fesm2022/spartan-ng-brain-progress.mjs.map +1 -1
  55. package/fesm2022/spartan-ng-brain-radio-group.mjs +6 -6
  56. package/fesm2022/spartan-ng-brain-radio-group.mjs.map +1 -1
  57. package/fesm2022/spartan-ng-brain-resizable.mjs +10 -11
  58. package/fesm2022/spartan-ng-brain-resizable.mjs.map +1 -1
  59. package/fesm2022/spartan-ng-brain-select.mjs +33 -33
  60. package/fesm2022/spartan-ng-brain-select.mjs.map +1 -1
  61. package/fesm2022/spartan-ng-brain-separator.mjs +3 -3
  62. package/fesm2022/spartan-ng-brain-separator.mjs.map +1 -1
  63. package/fesm2022/spartan-ng-brain-sheet.mjs +21 -21
  64. package/fesm2022/spartan-ng-brain-sheet.mjs.map +1 -1
  65. package/fesm2022/spartan-ng-brain-slider.mjs +17 -17
  66. package/fesm2022/spartan-ng-brain-slider.mjs.map +1 -1
  67. package/fesm2022/spartan-ng-brain-switch.mjs +8 -8
  68. package/fesm2022/spartan-ng-brain-switch.mjs.map +1 -1
  69. package/fesm2022/spartan-ng-brain-tabs.mjs +15 -15
  70. package/fesm2022/spartan-ng-brain-tabs.mjs.map +1 -1
  71. package/fesm2022/spartan-ng-brain-toggle-group.mjs +6 -6
  72. package/fesm2022/spartan-ng-brain-toggle-group.mjs.map +1 -1
  73. package/fesm2022/spartan-ng-brain-toggle.mjs +3 -3
  74. package/fesm2022/spartan-ng-brain-toggle.mjs.map +1 -1
  75. package/fesm2022/spartan-ng-brain-tooltip.mjs +14 -14
  76. package/fesm2022/spartan-ng-brain-tooltip.mjs.map +1 -1
  77. package/fesm2022/spartan-ng-brain.mjs.map +1 -1
  78. package/form-field/index.d.ts +14 -1
  79. package/forms/index.d.ts +35 -3
  80. package/hover-card/index.d.ts +86 -5
  81. package/index.d.ts +2 -2
  82. package/input-otp/index.d.ts +82 -5
  83. package/label/index.d.ts +20 -3
  84. package/menu/index.d.ts +79 -17
  85. package/navigation-menu/index.d.ts +185 -13
  86. package/package.json +24 -24
  87. package/popover/index.d.ts +39 -9
  88. package/progress/index.d.ts +39 -6
  89. package/radio-group/index.d.ts +124 -6
  90. package/resizable/index.d.ts +103 -3
  91. package/select/index.d.ts +217 -21
  92. package/separator/index.d.ts +27 -4
  93. package/sheet/index.d.ts +51 -15
  94. package/slider/index.d.ts +100 -12
  95. package/switch/index.d.ts +141 -5
  96. package/tabs/index.d.ts +276 -10
  97. package/toggle/index.d.ts +30 -3
  98. package/toggle-group/index.d.ts +108 -6
  99. package/tooltip/index.d.ts +261 -10
  100. package/accordion/lib/brn-accordion-content.d.ts +0 -20
  101. package/accordion/lib/brn-accordion-item.d.ts +0 -28
  102. package/accordion/lib/brn-accordion-token.d.ts +0 -19
  103. package/accordion/lib/brn-accordion-trigger.d.ts +0 -16
  104. package/accordion/lib/brn-accordion.d.ts +0 -39
  105. package/alert-dialog/lib/brn-alert-dialog-content.d.ts +0 -6
  106. package/alert-dialog/lib/brn-alert-dialog-description.d.ts +0 -6
  107. package/alert-dialog/lib/brn-alert-dialog-overlay.d.ts +0 -6
  108. package/alert-dialog/lib/brn-alert-dialog-title.d.ts +0 -6
  109. package/alert-dialog/lib/brn-alert-dialog-trigger.d.ts +0 -10
  110. package/alert-dialog/lib/brn-alert-dialog.d.ts +0 -7
  111. package/autocomplete/lib/brn-autocomplete-empty.d.ts +0 -11
  112. package/autocomplete/lib/brn-autocomplete-group.d.ts +0 -8
  113. package/autocomplete/lib/brn-autocomplete-item.d.ts +0 -32
  114. package/autocomplete/lib/brn-autocomplete-item.token.d.ts +0 -4
  115. package/autocomplete/lib/brn-autocomplete-list.d.ts +0 -8
  116. package/autocomplete/lib/brn-autocomplete-search-input.d.ts +0 -13
  117. package/autocomplete/lib/brn-autocomplete.d.ts +0 -30
  118. package/autocomplete/lib/brn-autocomplete.token.d.ts +0 -5
  119. package/avatar/lib/brn-avatar.d.ts +0 -7
  120. package/avatar/lib/fallback/brn-avatar-fallback.d.ts +0 -9
  121. package/avatar/lib/fallback/index.d.ts +0 -1
  122. package/avatar/lib/image/brn-avatar-image.d.ts +0 -9
  123. package/avatar/lib/image/index.d.ts +0 -1
  124. package/avatar/lib/util/hex-color-for.d.ts +0 -1
  125. package/avatar/lib/util/index.d.ts +0 -3
  126. package/avatar/lib/util/initials.pipe.d.ts +0 -7
  127. package/avatar/lib/util/is-bright.d.ts +0 -1
  128. package/button/lib/brn-button.d.ts +0 -10
  129. package/calendar/lib/brn-calendar-cell-button.d.ts +0 -62
  130. package/calendar/lib/brn-calendar-cell.d.ts +0 -5
  131. package/calendar/lib/brn-calendar-grid.d.ts +0 -7
  132. package/calendar/lib/brn-calendar-header.d.ts +0 -7
  133. package/calendar/lib/brn-calendar-month-select.d.ts +0 -17
  134. package/calendar/lib/brn-calendar-next-button.d.ts +0 -13
  135. package/calendar/lib/brn-calendar-previous-button.d.ts +0 -13
  136. package/calendar/lib/brn-calendar-week.d.ts +0 -25
  137. package/calendar/lib/brn-calendar-weekday.d.ts +0 -28
  138. package/calendar/lib/brn-calendar-year-select.d.ts +0 -16
  139. package/calendar/lib/brn-calendar.d.ts +0 -74
  140. package/calendar/lib/brn-calendar.token.d.ts +0 -22
  141. package/calendar/lib/i18n/calendar-i18n.d.ts +0 -32
  142. package/calendar/lib/mode/brn-calendar-multiple.d.ts +0 -77
  143. package/calendar/lib/mode/brn-calendar-range.d.ts +0 -79
  144. package/checkbox/lib/brn-checkbox.d.ts +0 -151
  145. package/collapsible/lib/brn-collapsible-content.d.ts +0 -15
  146. package/collapsible/lib/brn-collapsible-token.d.ts +0 -16
  147. package/collapsible/lib/brn-collapsible-trigger.d.ts +0 -9
  148. package/collapsible/lib/brn-collapsible.d.ts +0 -24
  149. package/command/lib/brn-command-empty.d.ts +0 -11
  150. package/command/lib/brn-command-group.d.ts +0 -12
  151. package/command/lib/brn-command-item.d.ts +0 -42
  152. package/command/lib/brn-command-item.token.d.ts +0 -4
  153. package/command/lib/brn-command-list.d.ts +0 -8
  154. package/command/lib/brn-command-search-input.d.ts +0 -24
  155. package/command/lib/brn-command-search-input.token.d.ts +0 -4
  156. package/command/lib/brn-command.d.ts +0 -29
  157. package/command/lib/brn-command.token.d.ts +0 -11
  158. package/core/helpers/computed-previous.d.ts +0 -36
  159. package/core/helpers/create-hover-observable.d.ts +0 -7
  160. package/core/helpers/create-injection-token.d.ts +0 -20
  161. package/core/helpers/custom-element-class-settable.d.ts +0 -12
  162. package/core/helpers/debounced-signal.d.ts +0 -9
  163. package/core/helpers/dev-mode.d.ts +0 -5
  164. package/core/helpers/exposes-side.d.ts +0 -13
  165. package/core/helpers/exposes-state.d.ts +0 -13
  166. package/core/helpers/measure-dimensions.d.ts +0 -5
  167. package/core/helpers/table-classes-settable.d.ts +0 -16
  168. package/core/helpers/wait-for-element-animations.d.ts +0 -5
  169. package/core/helpers/zone-free.d.ts +0 -10
  170. package/date-time/lib/date-adapter.d.ts +0 -186
  171. package/date-time/lib/native-date-adapter.d.ts +0 -103
  172. package/date-time/lib/utc-date-adapter.d.ts +0 -28
  173. package/date-time-luxon/lib/date-adapter.d.ts +0 -29
  174. package/dialog/lib/brn-dialog-close.d.ts +0 -8
  175. package/dialog/lib/brn-dialog-content.d.ts +0 -12
  176. package/dialog/lib/brn-dialog-description.d.ts +0 -8
  177. package/dialog/lib/brn-dialog-options.d.ts +0 -26
  178. package/dialog/lib/brn-dialog-overlay.d.ts +0 -9
  179. package/dialog/lib/brn-dialog-ref.d.ts +0 -24
  180. package/dialog/lib/brn-dialog-state.d.ts +0 -1
  181. package/dialog/lib/brn-dialog-title.d.ts +0 -8
  182. package/dialog/lib/brn-dialog-token.d.ts +0 -29
  183. package/dialog/lib/brn-dialog-trigger.d.ts +0 -18
  184. package/dialog/lib/brn-dialog-utils.d.ts +0 -1
  185. package/dialog/lib/brn-dialog.d.ts +0 -61
  186. package/dialog/lib/brn-dialog.service.d.ts +0 -23
  187. package/form-field/lib/brn-form-field-control.d.ts +0 -11
  188. package/forms/lib/control-value-accessor.d.ts +0 -2
  189. package/forms/lib/error-options.d.ts +0 -14
  190. package/forms/lib/error-state-tracker.d.ts +0 -15
  191. package/hover-card/lib/brn-hover-card-content.service.d.ts +0 -72
  192. package/hover-card/lib/brn-hover-card.d.ts +0 -9
  193. package/input-otp/lib/brn-input-otp-slot.d.ts +0 -15
  194. package/input-otp/lib/brn-input-otp.d.ts +0 -61
  195. package/input-otp/lib/brn-input-otp.token.d.ts +0 -5
  196. package/label/lib/brn-label.d.ts +0 -15
  197. package/menu/lib/brn-context-menu-trigger.d.ts +0 -14
  198. package/menu/lib/brn-menu-align.d.ts +0 -4
  199. package/menu/lib/brn-menu-bar.d.ts +0 -6
  200. package/menu/lib/brn-menu-group.d.ts +0 -6
  201. package/menu/lib/brn-menu-item-checkbox.d.ts +0 -11
  202. package/menu/lib/brn-menu-item-radio.d.ts +0 -11
  203. package/menu/lib/brn-menu-item.d.ts +0 -10
  204. package/menu/lib/brn-menu-trigger.d.ts +0 -11
  205. package/menu/lib/brn-menu.d.ts +0 -11
  206. package/navigation-menu/lib/brn-navigation-menu-content.d.ts +0 -22
  207. package/navigation-menu/lib/brn-navigation-menu-content.service.d.ts +0 -44
  208. package/navigation-menu/lib/brn-navigation-menu-item-focusable.token.d.ts +0 -4
  209. package/navigation-menu/lib/brn-navigation-menu-item.d.ts +0 -23
  210. package/navigation-menu/lib/brn-navigation-menu-item.token.d.ts +0 -5
  211. package/navigation-menu/lib/brn-navigation-menu-link.d.ts +0 -22
  212. package/navigation-menu/lib/brn-navigation-menu-list.d.ts +0 -7
  213. package/navigation-menu/lib/brn-navigation-menu-trigger.d.ts +0 -44
  214. package/navigation-menu/lib/brn-navigation-menu.d.ts +0 -61
  215. package/navigation-menu/lib/brn-navigation-menu.token.d.ts +0 -5
  216. package/navigation-menu/lib/brn-parent-nav-menu.token.d.ts +0 -8
  217. package/popover/lib/brn-popover-close.d.ts +0 -6
  218. package/popover/lib/brn-popover-content.d.ts +0 -6
  219. package/popover/lib/brn-popover-trigger.d.ts +0 -10
  220. package/popover/lib/brn-popover.d.ts +0 -15
  221. package/progress/lib/brn-progress-indicator.d.ts +0 -6
  222. package/progress/lib/brn-progress.d.ts +0 -24
  223. package/progress/lib/brn-progress.token.d.ts +0 -4
  224. package/radio-group/lib/brn-radio-group.d.ts +0 -59
  225. package/radio-group/lib/brn-radio-group.token.d.ts +0 -4
  226. package/radio-group/lib/brn-radio.d.ts +0 -58
  227. package/resizable/lib/brn-resizable-group.d.ts +0 -37
  228. package/resizable/lib/brn-resizable-handle.d.ts +0 -26
  229. package/resizable/lib/brn-resizable-panel.d.ts +0 -39
  230. package/select/lib/brn-select-content.d.ts +0 -48
  231. package/select/lib/brn-select-content.token.d.ts +0 -4
  232. package/select/lib/brn-select-group.d.ts +0 -6
  233. package/select/lib/brn-select-label.d.ts +0 -9
  234. package/select/lib/brn-select-option.d.ts +0 -25
  235. package/select/lib/brn-select-placeholder.d.ts +0 -8
  236. package/select/lib/brn-select-trigger.d.ts +0 -24
  237. package/select/lib/brn-select-value-template.d.ts +0 -11
  238. package/select/lib/brn-select-value.d.ts +0 -18
  239. package/select/lib/brn-select.d.ts +0 -69
  240. package/select/lib/brn-select.token.d.ts +0 -4
  241. package/separator/lib/brn-separator.d.ts +0 -14
  242. package/separator/lib/brn-separator.token.d.ts +0 -7
  243. package/sheet/lib/brn-sheet-close.d.ts +0 -6
  244. package/sheet/lib/brn-sheet-content.d.ts +0 -8
  245. package/sheet/lib/brn-sheet-description.d.ts +0 -6
  246. package/sheet/lib/brn-sheet-overlay.d.ts +0 -6
  247. package/sheet/lib/brn-sheet-title.d.ts +0 -6
  248. package/sheet/lib/brn-sheet-trigger.d.ts +0 -10
  249. package/sheet/lib/brn-sheet.d.ts +0 -10
  250. package/slider/lib/brn-slider-range.d.ts +0 -7
  251. package/slider/lib/brn-slider-thumb.d.ts +0 -24
  252. package/slider/lib/brn-slider-tick.d.ts +0 -12
  253. package/slider/lib/brn-slider-track.d.ts +0 -12
  254. package/slider/lib/brn-slider-track.token.d.ts +0 -5
  255. package/slider/lib/brn-slider.d.ts +0 -39
  256. package/slider/lib/brn-slider.token.d.ts +0 -4
  257. package/switch/lib/brn-switch-thumb.d.ts +0 -5
  258. package/switch/lib/brn-switch.d.ts +0 -131
  259. package/tabs/lib/brn-tabs-content.d.ts +0 -15
  260. package/tabs/lib/brn-tabs-list.d.ts +0 -17
  261. package/tabs/lib/brn-tabs-paginated-list.d.ts +0 -196
  262. package/tabs/lib/brn-tabs-trigger.d.ts +0 -21
  263. package/tabs/lib/brn-tabs.d.ts +0 -38
  264. package/toggle/lib/brn-toggle.d.ts +0 -25
  265. package/toggle-group/lib/brn-toggle-group.d.ts +0 -68
  266. package/toggle-group/lib/brn-toggle-group.token.d.ts +0 -4
  267. package/toggle-group/lib/brn-toggle-item.d.ts +0 -31
  268. package/tooltip/lib/brn-tooltip-content-template.d.ts +0 -8
  269. package/tooltip/lib/brn-tooltip-content.d.ts +0 -73
  270. package/tooltip/lib/brn-tooltip-trigger.d.ts +0 -141
  271. package/tooltip/lib/brn-tooltip.d.ts +0 -7
  272. package/tooltip/lib/brn-tooltip.token.d.ts +0 -28
@@ -1,29 +1,465 @@
1
- import { BrnCalendar } from './lib/brn-calendar';
2
- import { BrnCalendarCell } from './lib/brn-calendar-cell';
3
- import { BrnCalendarCellButton } from './lib/brn-calendar-cell-button';
4
- import { BrnCalendarGrid } from './lib/brn-calendar-grid';
5
- import { BrnCalendarHeader } from './lib/brn-calendar-header';
6
- import { BrnCalendarMonthSelect } from './lib/brn-calendar-month-select';
7
- import { BrnCalendarNextButton } from './lib/brn-calendar-next-button';
8
- import { BrnCalendarPreviousButton } from './lib/brn-calendar-previous-button';
9
- import { BrnCalendarWeek } from './lib/brn-calendar-week';
10
- import { BrnCalendarWeekday } from './lib/brn-calendar-weekday';
11
- import { BrnCalendarYearSelect } from './lib/brn-calendar-year-select';
12
- import { BrnCalendarMulti } from './lib/mode/brn-calendar-multiple';
13
- import { BrnCalendarRange } from './lib/mode/brn-calendar-range';
14
- export * from './lib/brn-calendar';
15
- export * from './lib/brn-calendar-cell';
16
- export * from './lib/brn-calendar-cell-button';
17
- export * from './lib/brn-calendar-grid';
18
- export * from './lib/brn-calendar-header';
19
- export * from './lib/brn-calendar-month-select';
20
- export * from './lib/brn-calendar-next-button';
21
- export * from './lib/brn-calendar-previous-button';
22
- export * from './lib/brn-calendar-week';
23
- export * from './lib/brn-calendar-weekday';
24
- export * from './lib/brn-calendar-year-select';
25
- export * from './lib/brn-calendar.token';
26
- export * from './lib/i18n/calendar-i18n';
27
- export * from './lib/mode/brn-calendar-multiple';
28
- export * from './lib/mode/brn-calendar-range';
29
- export declare const BrnCalendarImports: readonly [typeof BrnCalendarCellButton, typeof BrnCalendarGrid, typeof BrnCalendarHeader, typeof BrnCalendarNextButton, typeof BrnCalendarPreviousButton, typeof BrnCalendarWeek, typeof BrnCalendarWeekday, typeof BrnCalendar, typeof BrnCalendarCell, typeof BrnCalendarMulti, typeof BrnCalendarRange, typeof BrnCalendarMonthSelect, typeof BrnCalendarYearSelect];
1
+ import * as _angular_core from '@angular/core';
2
+ import { Signal, WritableSignal, InjectionToken, Type, ExistingProvider, Provider, OnDestroy } from '@angular/core';
3
+ import * as _spartan_ng_brain_date_time from '@spartan-ng/brain/date-time';
4
+ import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
5
+ import * as _spartan_ng_brain_calendar from '@spartan-ng/brain/calendar';
6
+
7
+ declare class BrnCalendarCellButton<T> {
8
+ /** Access the date adapter */
9
+ protected readonly _dateAdapter: _spartan_ng_brain_date_time.BrnDateAdapter<T>;
10
+ /** Access the calendar component */
11
+ protected readonly _calendar: _spartan_ng_brain_calendar.BrnCalendarBase<T>;
12
+ /** Access the element ref */
13
+ private readonly _elementRef;
14
+ /** The date this cell represents */
15
+ readonly date: _angular_core.InputSignal<T>;
16
+ /** Whether this date is currently selected */
17
+ readonly selected: _angular_core.Signal<boolean>;
18
+ readonly start: _angular_core.Signal<boolean>;
19
+ readonly end: _angular_core.Signal<boolean>;
20
+ readonly betweenRange: _angular_core.Signal<boolean>;
21
+ /** Whether this date is focusable */
22
+ readonly focusable: _angular_core.Signal<boolean>;
23
+ readonly outside: _angular_core.Signal<boolean>;
24
+ /** Whether this date is today */
25
+ readonly today: _angular_core.Signal<boolean>;
26
+ /** Whether this date is disabled */
27
+ readonly disabled: _angular_core.Signal<boolean>;
28
+ /**
29
+ * Focus the previous cell.
30
+ */
31
+ protected focusPrevious(event: Event): void;
32
+ /**
33
+ * Focus the next cell.
34
+ */
35
+ protected focusNext(event: Event): void;
36
+ /**
37
+ * Focus the above cell.
38
+ */
39
+ protected focusAbove(event: Event): void;
40
+ /**
41
+ * Focus the below cell.
42
+ */
43
+ protected focusBelow(event: Event): void;
44
+ /**
45
+ * Focus the first date of the month.
46
+ */
47
+ protected focusFirst(event: Event): void;
48
+ /**
49
+ * Focus the last date of the month.
50
+ */
51
+ protected focusLast(event: Event): void;
52
+ /**
53
+ * Focus the same date in the previous month.
54
+ */
55
+ protected focusPreviousMonth(event: Event): void;
56
+ /**
57
+ * Focus the same date in the next month.
58
+ */
59
+ protected focusNextMonth(event: Event): void;
60
+ /**
61
+ * Get the direction of the element.
62
+ */
63
+ private getDirection;
64
+ focus(): void;
65
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarCellButton<any>, never>;
66
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarCellButton<any>, "button[brnCalendarCellButton]", never, { "date": { "alias": "date"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
67
+ }
68
+
69
+ declare class BrnCalendarHeader {
70
+ /** The unique id for the header */
71
+ readonly id: _angular_core.InputSignal<string>;
72
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarHeader, never>;
73
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarHeader, "[brnCalendarHeader]", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
74
+ }
75
+
76
+ interface BrnCalendarBase<T> {
77
+ isSelected: (date: T) => boolean;
78
+ selectDate: (date: T) => void;
79
+ constrainDate: (date: T) => T;
80
+ isDateDisabled: (date: T) => boolean;
81
+ setFocusedDate: (date: T) => void;
82
+ isStartOfRange: (date: T) => boolean;
83
+ isEndOfRange: (date: T) => boolean;
84
+ isBetweenRange: (date: T) => boolean;
85
+ disabled: Signal<boolean>;
86
+ focusedDate: WritableSignal<T>;
87
+ header: Signal<BrnCalendarHeader | undefined>;
88
+ days: Signal<T[]>;
89
+ }
90
+ declare const BrnCalendarToken: InjectionToken<BrnCalendarBase<unknown>>;
91
+ declare function provideBrnCalendar<T>(instance: Type<BrnCalendarBase<T>>): ExistingProvider;
92
+ /**
93
+ * Inject the calendar component.
94
+ */
95
+ declare function injectBrnCalendar<T>(): BrnCalendarBase<T>;
96
+
97
+ type Weekday = 0 | 1 | 2 | 3 | 4 | 5 | 6;
98
+ interface BrnCalendarI18n {
99
+ formatWeekdayName: (index: number) => string;
100
+ formatHeader: (month: number, year: number) => string;
101
+ formatYear: (year: number) => string;
102
+ formatMonth: (month: number) => string;
103
+ labelPrevious: () => string;
104
+ labelNext: () => string;
105
+ labelWeekday: (index: number) => string;
106
+ months: () => [string, string, string, string, string, string, string, string, string, string, string, string];
107
+ years: (startYear?: number, endYear?: number) => number[];
108
+ firstDayOfWeek: () => Weekday;
109
+ }
110
+ declare const BrnCalendarI18nToken: InjectionToken<BrnCalendarI18nService>;
111
+ /**
112
+ * Provide the calendar i18n configuration.
113
+ */
114
+ declare function provideBrnCalendarI18n(configuration?: BrnCalendarI18n): Provider;
115
+ /**
116
+ * Inject the calendar i18n configuration.
117
+ */
118
+ declare function injectBrnCalendarI18n(): BrnCalendarI18nService;
119
+ declare class BrnCalendarI18nService {
120
+ private readonly _config;
121
+ readonly config: _angular_core.Signal<BrnCalendarI18n>;
122
+ use(config: Partial<BrnCalendarI18n>): void;
123
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarI18nService, never>;
124
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<BrnCalendarI18nService>;
125
+ }
126
+
127
+ declare class BrnCalendar<T> implements BrnCalendarBase<T> {
128
+ private readonly _i18n;
129
+ /** Access the date adapter */
130
+ protected readonly _dateAdapter: _spartan_ng_brain_date_time.BrnDateAdapter<T>;
131
+ /** Access the change detector */
132
+ private readonly _changeDetector;
133
+ /** Access the injector */
134
+ private readonly _injector;
135
+ /** The minimum date that can be selected.*/
136
+ readonly min: _angular_core.InputSignal<T | undefined>;
137
+ /** The maximum date that can be selected. */
138
+ readonly max: _angular_core.InputSignal<T | undefined>;
139
+ /** Determine if the date picker is disabled. */
140
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
141
+ /** The selected value. */
142
+ readonly date: _angular_core.ModelSignal<T | undefined>;
143
+ /** Whether a specific date is disabled. */
144
+ readonly dateDisabled: _angular_core.InputSignal<(date: T) => boolean>;
145
+ /** The day the week starts on */
146
+ readonly weekStartsOn: _angular_core.InputSignalWithTransform<Weekday | undefined, NumberInput>;
147
+ protected readonly _weekStartsOn: _angular_core.Signal<Weekday>;
148
+ /** The default focused date. */
149
+ readonly defaultFocusedDate: _angular_core.InputSignal<T | undefined>;
150
+ /** @internal Access the header */
151
+ readonly header: _angular_core.Signal<BrnCalendarHeader | undefined>;
152
+ /** Store the cells */
153
+ protected readonly _cells: _angular_core.Signal<readonly BrnCalendarCellButton<T>[]>;
154
+ /**
155
+ * The focused date.
156
+ */
157
+ readonly focusedDate: _angular_core.WritableSignal<T>;
158
+ /**
159
+ * Get all the days to display, this is the days of the current month
160
+ * and the days of the previous and next month to fill the grid.
161
+ */
162
+ readonly days: _angular_core.Signal<T[]>;
163
+ /** @internal Constrain a date to the min and max boundaries */
164
+ constrainDate(date: T): T;
165
+ /** @internal Determine if a date is disabled */
166
+ isDateDisabled(date: T): boolean;
167
+ isSelected(date: T): boolean;
168
+ selectDate(date: T): void;
169
+ /** @internal Set the focused date */
170
+ setFocusedDate(date: T): void;
171
+ /**
172
+ * Determine if a date is the start of a range. In a date picker, this is always false.
173
+ * @param date The date to check.
174
+ * @returns Always false.
175
+ * @internal
176
+ */
177
+ isStartOfRange(_: T): boolean;
178
+ /**
179
+ * Determine if a date is the end of a range. In a date picker, this is always false.
180
+ * @param date The date to check.
181
+ * @returns Always false.
182
+ * @internal
183
+ */
184
+ isEndOfRange(_: T): boolean;
185
+ /**
186
+ * Determine if a date is between the start and end dates. In a date picker, this is always false.
187
+ * @param date The date to check.
188
+ * @returns True if the date is between the start and end dates, false otherwise.
189
+ * @internal
190
+ */
191
+ isBetweenRange(_: T): boolean;
192
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendar<any>, never>;
193
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendar<any>, "[brnCalendar]", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": false; "isSignal": true; }; "dateDisabled": { "alias": "dateDisabled"; "required": false; "isSignal": true; }; "weekStartsOn": { "alias": "weekStartsOn"; "required": false; "isSignal": true; }; "defaultFocusedDate": { "alias": "defaultFocusedDate"; "required": false; "isSignal": true; }; }, { "date": "dateChange"; }, ["header", "_cells"], never, true, never>;
194
+ }
195
+
196
+ declare class BrnCalendarCell {
197
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarCell, never>;
198
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarCell, "[brnCalendarCell]", never, {}, {}, never, never, true, never>;
199
+ }
200
+
201
+ declare class BrnCalendarGrid<T> {
202
+ /** Access the calendar component */
203
+ protected readonly _calendar: _spartan_ng_brain_calendar.BrnCalendarBase<T>;
204
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarGrid<any>, never>;
205
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarGrid<any>, "[brnCalendarGrid]", never, {}, {}, never, never, true, never>;
206
+ }
207
+
208
+ declare class BrnCalendarMonthSelect {
209
+ /** Access the select */
210
+ private readonly _select;
211
+ /** Access the calendar */
212
+ private readonly _calendar;
213
+ /** Access the date adapter */
214
+ private readonly _dateAdapter;
215
+ /** Access the calendar i18n */
216
+ protected readonly _i18n: _spartan_ng_brain_calendar.BrnCalendarI18nService;
217
+ protected readonly _selectedMonth: _angular_core.Signal<string>;
218
+ constructor();
219
+ /** Focus selected month */
220
+ protected monthSelected(selectedMonth: string): void;
221
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarMonthSelect, never>;
222
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarMonthSelect, "brn-select[brnCalendarMonthSelect]", never, {}, {}, never, never, true, never>;
223
+ }
224
+
225
+ declare class BrnCalendarNextButton {
226
+ /** Access the calendar */
227
+ private readonly _calendar;
228
+ /** Access the date adapter */
229
+ private readonly _dateAdapter;
230
+ /** Access the calendar i18n */
231
+ protected readonly _i18n: _spartan_ng_brain_calendar.BrnCalendarI18nService;
232
+ /** Focus the previous month */
233
+ protected focusPreviousMonth(): void;
234
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarNextButton, never>;
235
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarNextButton, "[brnCalendarNextButton]", never, {}, {}, never, never, true, never>;
236
+ }
237
+
238
+ declare class BrnCalendarPreviousButton {
239
+ /** Access the calendar */
240
+ private readonly _calendar;
241
+ /** Access the date adapter */
242
+ private readonly _dateAdapter;
243
+ /** Access the calendar i18n */
244
+ protected readonly _i18n: _spartan_ng_brain_calendar.BrnCalendarI18nService;
245
+ /** Focus the previous month */
246
+ protected focusPreviousMonth(): void;
247
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarPreviousButton, never>;
248
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarPreviousButton, "[brnCalendarPreviousButton]", never, {}, {}, never, never, true, never>;
249
+ }
250
+
251
+ declare class BrnCalendarWeek<T> implements OnDestroy {
252
+ /** Access the calendar */
253
+ private readonly _calendar;
254
+ /** Access the view container ref */
255
+ private readonly _viewContainerRef;
256
+ /** Access the change detector */
257
+ private readonly _changeDetector;
258
+ /** Access the template ref */
259
+ private readonly _templateRef;
260
+ protected readonly _weeks: _angular_core.Signal<T[][]>;
261
+ /** Store the view refs */
262
+ private _viewRefs;
263
+ static ngTemplateContextGuard<T>(_: BrnCalendarWeek<T>, ctx: unknown): ctx is BrnWeekContext<T>;
264
+ constructor();
265
+ private _renderWeeks;
266
+ ngOnDestroy(): void;
267
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarWeek<any>, never>;
268
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarWeek<any>, "[brnCalendarWeek]", never, {}, {}, never, never, true, never>;
269
+ }
270
+ interface BrnWeekContext<T> {
271
+ $implicit: T[];
272
+ }
273
+
274
+ declare class BrnCalendarWeekday<T> implements OnDestroy {
275
+ /** Access the calendar */
276
+ private readonly _calendar;
277
+ /** Access the date time adapter */
278
+ private readonly _dateAdapter;
279
+ /** Access the view container ref */
280
+ private readonly _viewContainerRef;
281
+ /** Access the change detector */
282
+ private readonly _changeDetector;
283
+ /** Access the template ref */
284
+ private readonly _templateRef;
285
+ /** Get the days of the week to display in the header. */
286
+ protected readonly _weekdays: _angular_core.Signal<T[]>;
287
+ /** Store the view refs */
288
+ private _viewRefs;
289
+ static ngTemplateContextGuard<T>(_: BrnCalendarWeekday<T>, ctx: unknown): ctx is BrnWeekdayContext;
290
+ constructor();
291
+ private _renderWeekdays;
292
+ ngOnDestroy(): void;
293
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarWeekday<any>, never>;
294
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarWeekday<any>, "[brnCalendarWeekday]", never, {}, {}, never, never, true, never>;
295
+ }
296
+ interface BrnWeekdayContext {
297
+ $implicit: number;
298
+ }
299
+
300
+ declare class BrnCalendarYearSelect {
301
+ /** Access the select */
302
+ private readonly _select;
303
+ /** Access the calendar */
304
+ private readonly _calendar;
305
+ /** Access the date adapter */
306
+ private readonly _dateAdapter;
307
+ /** Access the calendar i18n */
308
+ protected readonly _i18n: _spartan_ng_brain_calendar.BrnCalendarI18nService;
309
+ constructor();
310
+ /** Focus selected year */
311
+ protected yearSelected(year: number): void;
312
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarYearSelect, never>;
313
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarYearSelect, "brn-select[brnCalendarYearSelect]", never, {}, {}, never, never, true, never>;
314
+ }
315
+
316
+ declare class BrnCalendarMulti<T> implements BrnCalendarBase<T> {
317
+ private readonly _i18n;
318
+ /**
319
+ * Determine if a date is the start of a range. In a date picker, this is always false.
320
+ * @param date The date to check.
321
+ * @returns Always false.
322
+ * @internal
323
+ */
324
+ isStartOfRange(_: T): boolean;
325
+ /**
326
+ * Determine if a date is the end of a range. In a date picker, this is always false.
327
+ * @param date The date to check.
328
+ * @returns Always false.
329
+ * @internal
330
+ */
331
+ isEndOfRange(_: T): boolean;
332
+ /**
333
+ * Determine if a date is between the start and end dates. In a date picker, this is always false.
334
+ * @param date The date to check.
335
+ * @returns True if the date is between the start and end dates, false otherwise.
336
+ * @internal
337
+ */
338
+ isBetweenRange(_: T): boolean;
339
+ protected readonly _dateAdapter: _spartan_ng_brain_date_time.BrnDateAdapter<T>;
340
+ /** Access the change detector */
341
+ private readonly _changeDetector;
342
+ /** Access the injector */
343
+ private readonly _injector;
344
+ /** The minimum date that can be selected.*/
345
+ readonly min: _angular_core.InputSignal<T | undefined>;
346
+ /** The maximum date that can be selected. */
347
+ readonly max: _angular_core.InputSignal<T | undefined>;
348
+ /** The minimum selectable dates. */
349
+ readonly minSelection: _angular_core.InputSignalWithTransform<number | undefined, NumberInput>;
350
+ /** The maximum selectable dates. */
351
+ readonly maxSelection: _angular_core.InputSignalWithTransform<number | undefined, NumberInput>;
352
+ /** Determine if the date picker is disabled. */
353
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
354
+ /** The selected value. */
355
+ readonly date: _angular_core.ModelSignal<T[] | undefined>;
356
+ /** Whether a specific date is disabled. */
357
+ readonly dateDisabled: _angular_core.InputSignal<(date: T) => boolean>;
358
+ /** The day the week starts on */
359
+ readonly weekStartsOn: _angular_core.InputSignalWithTransform<Weekday | undefined, NumberInput>;
360
+ protected readonly _weekStartsOn: _angular_core.Signal<Weekday>;
361
+ /** The default focused date. */
362
+ readonly defaultFocusedDate: _angular_core.InputSignal<T | undefined>;
363
+ /** @internal Access the header */
364
+ readonly header: _angular_core.Signal<BrnCalendarHeader | undefined>;
365
+ /** Store the cells */
366
+ protected readonly _cells: _angular_core.Signal<readonly BrnCalendarCellButton<T>[]>;
367
+ /**
368
+ * The focused date.
369
+ */
370
+ readonly focusedDate: _angular_core.WritableSignal<T>;
371
+ /**
372
+ * Get all the days to display, this is the days of the current month
373
+ * and the days of the previous and next month to fill the grid.
374
+ */
375
+ readonly days: _angular_core.Signal<T[]>;
376
+ isSelected(date: T): boolean;
377
+ selectDate(date: T): void;
378
+ /** @internal Constrain a date to the min and max boundaries */
379
+ constrainDate(date: T): T;
380
+ /** @internal Determine if a date is disabled */
381
+ isDateDisabled(date: T): boolean;
382
+ /** @internal Set the focused date */
383
+ setFocusedDate(date: T): void;
384
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarMulti<any>, never>;
385
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarMulti<any>, "[brnCalendarMulti]", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "minSelection": { "alias": "minSelection"; "required": false; "isSignal": true; }; "maxSelection": { "alias": "maxSelection"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": false; "isSignal": true; }; "dateDisabled": { "alias": "dateDisabled"; "required": false; "isSignal": true; }; "weekStartsOn": { "alias": "weekStartsOn"; "required": false; "isSignal": true; }; "defaultFocusedDate": { "alias": "defaultFocusedDate"; "required": false; "isSignal": true; }; }, { "date": "dateChange"; }, ["header", "_cells"], never, true, never>;
386
+ }
387
+
388
+ declare class BrnCalendarRange<T> implements BrnCalendarBase<T> {
389
+ private readonly _i18n;
390
+ protected readonly _dateAdapter: _spartan_ng_brain_date_time.BrnDateAdapter<T>;
391
+ /** Access the change detector */
392
+ private readonly _changeDetector;
393
+ /** Access the injector */
394
+ private readonly _injector;
395
+ /** The minimum date that can be selected.*/
396
+ readonly min: _angular_core.InputSignal<T | undefined>;
397
+ /** The maximum date that can be selected. */
398
+ readonly max: _angular_core.InputSignal<T | undefined>;
399
+ /** Determine if the date picker is disabled. */
400
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
401
+ /** Whether a specific date is disabled. */
402
+ readonly dateDisabled: _angular_core.InputSignal<(date: T) => boolean>;
403
+ /** The day the week starts on */
404
+ readonly weekStartsOn: _angular_core.InputSignalWithTransform<Weekday | undefined, NumberInput>;
405
+ protected readonly _weekStartsOn: _angular_core.Signal<Weekday>;
406
+ /** The default focused date. */
407
+ readonly defaultFocusedDate: _angular_core.InputSignal<T | undefined>;
408
+ /** @internal Access the header */
409
+ readonly header: _angular_core.Signal<BrnCalendarHeader | undefined>;
410
+ /** Store the cells */
411
+ protected readonly _cells: _angular_core.Signal<readonly BrnCalendarCellButton<T>[]>;
412
+ /**
413
+ * The focused date.
414
+ */
415
+ readonly focusedDate: _angular_core.WritableSignal<T>;
416
+ /**
417
+ * The selected start date
418
+ */
419
+ readonly startDate: _angular_core.ModelSignal<T | undefined>;
420
+ /**
421
+ * The selected end date
422
+ */
423
+ readonly endDate: _angular_core.ModelSignal<T | undefined>;
424
+ /**
425
+ * Get all the days to display, this is the days of the current month
426
+ * and the days of the previous and next month to fill the grid.
427
+ */
428
+ readonly days: _angular_core.Signal<T[]>;
429
+ isSelected(date: T): boolean;
430
+ selectDate(date: T): void;
431
+ /** @internal Constrain a date to the min and max boundaries */
432
+ constrainDate(date: T): T;
433
+ /** @internal Determine if a date is disabled */
434
+ isDateDisabled(date: T): boolean;
435
+ /** @internal Set the focused date */
436
+ setFocusedDate(date: T): void;
437
+ /**
438
+ * Determine if a date is the start of a range.
439
+ * @param date The date to check.
440
+ * @returns Always false.
441
+ * @internal
442
+ */
443
+ isStartOfRange(date: T): boolean;
444
+ /**
445
+ * Determine if a date is the end of a range.
446
+ * @param date The date to check.
447
+ * @returns Always false.
448
+ * @internal
449
+ */
450
+ isEndOfRange(date: T): boolean;
451
+ /**
452
+ * Determine if a date is between the start and end dates.
453
+ * @param date The date to check.
454
+ * @returns True if the date is between the start and end dates, false otherwise.
455
+ * @internal
456
+ */
457
+ isBetweenRange(date: T): boolean;
458
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCalendarRange<any>, never>;
459
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BrnCalendarRange<any>, "[brnCalendarRange]", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "dateDisabled": { "alias": "dateDisabled"; "required": false; "isSignal": true; }; "weekStartsOn": { "alias": "weekStartsOn"; "required": false; "isSignal": true; }; "defaultFocusedDate": { "alias": "defaultFocusedDate"; "required": false; "isSignal": true; }; "startDate": { "alias": "startDate"; "required": false; "isSignal": true; }; "endDate": { "alias": "endDate"; "required": false; "isSignal": true; }; }, { "startDate": "startDateChange"; "endDate": "endDateChange"; }, ["header", "_cells"], never, true, never>;
460
+ }
461
+
462
+ declare const BrnCalendarImports: readonly [typeof BrnCalendarCellButton, typeof BrnCalendarGrid, typeof BrnCalendarHeader, typeof BrnCalendarNextButton, typeof BrnCalendarPreviousButton, typeof BrnCalendarWeek, typeof BrnCalendarWeekday, typeof BrnCalendar, typeof BrnCalendarCell, typeof BrnCalendarMulti, typeof BrnCalendarRange, typeof BrnCalendarMonthSelect, typeof BrnCalendarYearSelect];
463
+
464
+ export { BrnCalendar, BrnCalendarCell, BrnCalendarCellButton, BrnCalendarGrid, BrnCalendarHeader, BrnCalendarI18nService, BrnCalendarI18nToken, BrnCalendarImports, BrnCalendarMonthSelect, BrnCalendarMulti, BrnCalendarNextButton, BrnCalendarPreviousButton, BrnCalendarRange, BrnCalendarToken, BrnCalendarWeek, BrnCalendarWeekday, BrnCalendarYearSelect, injectBrnCalendar, injectBrnCalendarI18n, provideBrnCalendar, provideBrnCalendarI18n };
465
+ export type { BrnCalendarBase, Weekday };
@@ -1,3 +1,156 @@
1
- import { BrnCheckbox } from './lib/brn-checkbox';
2
- export * from './lib/brn-checkbox';
3
- export declare const BrnCheckboxImports: readonly [typeof BrnCheckbox];
1
+ import * as _angular_core from '@angular/core';
2
+ import { AfterContentInit, OnDestroy, ElementRef } from '@angular/core';
3
+ import { BooleanInput } from '@angular/cdk/coercion';
4
+ import { ControlValueAccessor } from '@angular/forms';
5
+ import { ChangeFn, TouchFn } from '@spartan-ng/brain/forms';
6
+
7
+ declare const BRN_CHECKBOX_VALUE_ACCESSOR: {
8
+ provide: _angular_core.InjectionToken<readonly ControlValueAccessor[]>;
9
+ useExisting: _angular_core.Type<any>;
10
+ multi: boolean;
11
+ };
12
+ declare class BrnCheckbox implements ControlValueAccessor, AfterContentInit, OnDestroy {
13
+ private readonly _destroyRef;
14
+ private readonly _renderer;
15
+ private readonly _elementRef;
16
+ private readonly _focusMonitor;
17
+ private readonly _cdr;
18
+ private readonly _document;
19
+ private readonly _isBrowser;
20
+ protected readonly _focusVisible: _angular_core.WritableSignal<boolean>;
21
+ protected readonly _focused: _angular_core.WritableSignal<boolean>;
22
+ /**
23
+ * The checked state of the checkbox.
24
+ * Can be bound with [(checked)] for two-way binding.
25
+ */
26
+ readonly checked: _angular_core.ModelSignal<boolean>;
27
+ /** Emits when checked state changes. */
28
+ readonly checkedChange: _angular_core.OutputEmitterRef<boolean>;
29
+ /**
30
+ * Read-only signal of current checkbox state.
31
+ * Use this when you only need to read state without changing it.
32
+ */
33
+ readonly isChecked: _angular_core.Signal<boolean>;
34
+ readonly indeterminate: _angular_core.ModelSignal<boolean>;
35
+ /**
36
+ * Computed data-state attribute value based on checked state.
37
+ * Returns 'checked', 'unchecked', or 'indeterminate'.
38
+ */
39
+ protected readonly _dataState: _angular_core.Signal<"indeterminate" | "checked" | "unchecked">;
40
+ /**
41
+ * Computed aria-checked attribute value for accessibility.
42
+ * Returns 'true', 'false', or 'mixed' (for indeterminate).
43
+ */
44
+ protected readonly _ariaChecked: _angular_core.Signal<"mixed" | "true" | "false">;
45
+ /**
46
+ * Unique identifier for checkbox component.
47
+ * When provided, inner button gets ID without '-checkbox' suffix.
48
+ * Auto-generates ID if not provided.
49
+ */
50
+ readonly id: _angular_core.InputSignal<string | null>;
51
+ /**
52
+ * Form control name for checkbox.
53
+ * When provided, inner button gets name without '-checkbox' suffix.
54
+ */
55
+ readonly name: _angular_core.InputSignal<string | null>;
56
+ /**
57
+ * CSS classes applied to inner button element.
58
+ */
59
+ readonly class: _angular_core.InputSignal<string | null>;
60
+ /**
61
+ * Accessibility label for screen readers.
62
+ * Use when no visible label exists.
63
+ */
64
+ readonly ariaLabel: _angular_core.InputSignal<string | null>;
65
+ /**
66
+ * ID of element that labels this checkbox for accessibility.
67
+ * Auto-set when checkbox is inside label element.
68
+ */
69
+ readonly ariaLabelledby: _angular_core.InputSignal<string | null>;
70
+ readonly mutableAriaLabelledby: _angular_core.WritableSignal<string | null>;
71
+ /**
72
+ * ID of element that describes this checkbox for accessibility.
73
+ */
74
+ readonly ariaDescribedby: _angular_core.InputSignal<string | null>;
75
+ /**
76
+ * Whether checkbox is required in a form.
77
+ */
78
+ readonly required: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
79
+ /**
80
+ * Whether checkbox is disabled.
81
+ * Disabled checkboxes cannot be toggled and indicate disabled state through data-disabled attribute.
82
+ */
83
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
84
+ /**
85
+ * Computed state for checkbox container and accessibility.
86
+ * Manages ID, name, and disabled state.
87
+ */
88
+ protected readonly _state: _angular_core.Signal<{
89
+ disabled: _angular_core.WritableSignal<boolean>;
90
+ name: string | null;
91
+ id: string | null;
92
+ }>;
93
+ protected _onChange: ChangeFn<boolean>;
94
+ private _onTouched;
95
+ /**
96
+ * Reference to the checkbox button element in the template.
97
+ */
98
+ readonly checkbox: _angular_core.Signal<ElementRef<HTMLButtonElement>>;
99
+ /**
100
+ * Event emitted when checkbox is blurred (loses focus).
101
+ * Used for form validation.
102
+ */
103
+ readonly touched: _angular_core.OutputEmitterRef<void>;
104
+ constructor();
105
+ /**
106
+ * Toggles checkbox between checked/unchecked states.
107
+ * If checkbox is indeterminate, sets to checked.
108
+ * Does nothing if checkbox is disabled.
109
+ */
110
+ toggle(): void;
111
+ ngAfterContentInit(): void;
112
+ ngOnDestroy(): void;
113
+ /**
114
+ * Gets proper ID for inner button element.
115
+ * Removes '-checkbox' suffix if present in container ID.
116
+ *
117
+ * @param idPassedToContainer - ID applied to container element
118
+ * @returns ID to use for inner button or null
119
+ */
120
+ protected _getCheckboxButtonId(idPassedToContainer: string | null | undefined): string | null;
121
+ /**
122
+ * Updates internal state when control value changes from outside.
123
+ * Handles boolean and 'indeterminate' values.
124
+ * Part of ControlValueAccessor interface.
125
+ *
126
+ * @param value - New checkbox state (true/false/'indeterminate')
127
+ */
128
+ writeValue(value: boolean): void;
129
+ /**
130
+ * Registers callback for value changes.
131
+ * Part of ControlValueAccessor interface.
132
+ *
133
+ * @param fn - Function to call when value changes
134
+ */
135
+ registerOnChange(fn: ChangeFn<boolean>): void;
136
+ /**
137
+ * Registers callback for touched events.
138
+ * Part of ControlValueAccessor interface.
139
+ *
140
+ * @param fn - Function to call when control is touched
141
+ */
142
+ registerOnTouched(fn: TouchFn): void;
143
+ /**
144
+ * Updates disabled state from form control.
145
+ * Part of ControlValueAccessor interface.
146
+ *
147
+ * @param isDisabled - Whether checkbox should be disabled
148
+ */
149
+ setDisabledState(isDisabled: boolean): void;
150
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrnCheckbox, never>;
151
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<BrnCheckbox, "brn-checkbox", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "ariaLabelledby": { "alias": "aria-labelledby"; "required": false; "isSignal": true; }; "ariaDescribedby": { "alias": "aria-describedby"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "checkedChange": "checkedChange"; "indeterminate": "indeterminateChange"; "touched": "touched"; }, never, ["*"], true, never>;
152
+ }
153
+
154
+ declare const BrnCheckboxImports: readonly [typeof BrnCheckbox];
155
+
156
+ export { BRN_CHECKBOX_VALUE_ACCESSOR, BrnCheckbox, BrnCheckboxImports };