ng-primitives 0.89.0 → 0.91.0

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 (389) hide show
  1. package/a11y/index.d.ts +98 -3
  2. package/accordion/index.d.ts +361 -7
  3. package/ai/index.d.ts +238 -16
  4. package/autofill/index.d.ts +62 -1
  5. package/avatar/index.d.ts +155 -5
  6. package/breadcrumbs/index.d.ts +200 -7
  7. package/button/index.d.ts +39 -3
  8. package/checkbox/index.d.ts +137 -2
  9. package/combobox/index.d.ts +414 -8
  10. package/common/index.d.ts +31 -4
  11. package/date-picker/index.d.ts +714 -18
  12. package/date-time/index.d.ts +289 -3
  13. package/date-time-luxon/index.d.ts +31 -1
  14. package/dialog/index.d.ts +253 -9
  15. package/fesm2022/ng-primitives-a11y.mjs +42 -58
  16. package/fesm2022/ng-primitives-a11y.mjs.map +1 -1
  17. package/fesm2022/ng-primitives-accordion.mjs +249 -225
  18. package/fesm2022/ng-primitives-accordion.mjs.map +1 -1
  19. package/fesm2022/ng-primitives-ai.mjs +61 -58
  20. package/fesm2022/ng-primitives-ai.mjs.map +1 -1
  21. package/fesm2022/ng-primitives-autofill.mjs +55 -38
  22. package/fesm2022/ng-primitives-autofill.mjs.map +1 -1
  23. package/fesm2022/ng-primitives-avatar.mjs +105 -145
  24. package/fesm2022/ng-primitives-avatar.mjs.map +1 -1
  25. package/fesm2022/ng-primitives-breadcrumbs.mjs +106 -49
  26. package/fesm2022/ng-primitives-breadcrumbs.mjs.map +1 -1
  27. package/fesm2022/ng-primitives-button.mjs +20 -42
  28. package/fesm2022/ng-primitives-button.mjs.map +1 -1
  29. package/fesm2022/ng-primitives-checkbox.mjs +110 -84
  30. package/fesm2022/ng-primitives-checkbox.mjs.map +1 -1
  31. package/fesm2022/ng-primitives-combobox.mjs +82 -78
  32. package/fesm2022/ng-primitives-combobox.mjs.map +1 -1
  33. package/fesm2022/ng-primitives-common.mjs +5 -5
  34. package/fesm2022/ng-primitives-common.mjs.map +1 -1
  35. package/fesm2022/ng-primitives-date-picker.mjs +119 -112
  36. package/fesm2022/ng-primitives-date-picker.mjs.map +1 -1
  37. package/fesm2022/ng-primitives-dialog.mjs +48 -47
  38. package/fesm2022/ng-primitives-dialog.mjs.map +1 -1
  39. package/fesm2022/ng-primitives-file-upload.mjs +56 -48
  40. package/fesm2022/ng-primitives-file-upload.mjs.map +1 -1
  41. package/fesm2022/ng-primitives-focus-trap.mjs +9 -8
  42. package/fesm2022/ng-primitives-focus-trap.mjs.map +1 -1
  43. package/fesm2022/ng-primitives-form-field.mjs +97 -64
  44. package/fesm2022/ng-primitives-form-field.mjs.map +1 -1
  45. package/fesm2022/ng-primitives-input-otp.mjs +44 -43
  46. package/fesm2022/ng-primitives-input-otp.mjs.map +1 -1
  47. package/fesm2022/ng-primitives-input.mjs +38 -54
  48. package/fesm2022/ng-primitives-input.mjs.map +1 -1
  49. package/fesm2022/ng-primitives-interactions.mjs +59 -54
  50. package/fesm2022/ng-primitives-interactions.mjs.map +1 -1
  51. package/fesm2022/ng-primitives-internal.mjs +14 -14
  52. package/fesm2022/ng-primitives-internal.mjs.map +1 -1
  53. package/fesm2022/ng-primitives-listbox.mjs +52 -50
  54. package/fesm2022/ng-primitives-listbox.mjs.map +1 -1
  55. package/fesm2022/ng-primitives-menu.mjs +86 -72
  56. package/fesm2022/ng-primitives-menu.mjs.map +1 -1
  57. package/fesm2022/ng-primitives-meter.mjs +38 -35
  58. package/fesm2022/ng-primitives-meter.mjs.map +1 -1
  59. package/fesm2022/ng-primitives-pagination.mjs +83 -74
  60. package/fesm2022/ng-primitives-pagination.mjs.map +1 -1
  61. package/fesm2022/ng-primitives-popover.mjs +67 -60
  62. package/fesm2022/ng-primitives-popover.mjs.map +1 -1
  63. package/fesm2022/ng-primitives-portal.mjs +11 -12
  64. package/fesm2022/ng-primitives-portal.mjs.map +1 -1
  65. package/fesm2022/ng-primitives-progress.mjs +43 -40
  66. package/fesm2022/ng-primitives-progress.mjs.map +1 -1
  67. package/fesm2022/ng-primitives-radio.mjs +35 -33
  68. package/fesm2022/ng-primitives-radio.mjs.map +1 -1
  69. package/fesm2022/ng-primitives-resize.mjs +4 -4
  70. package/fesm2022/ng-primitives-resize.mjs.map +1 -1
  71. package/fesm2022/ng-primitives-roving-focus.mjs +264 -237
  72. package/fesm2022/ng-primitives-roving-focus.mjs.map +1 -1
  73. package/fesm2022/ng-primitives-search.mjs +9 -9
  74. package/fesm2022/ng-primitives-search.mjs.map +1 -1
  75. package/fesm2022/ng-primitives-select.mjs +73 -69
  76. package/fesm2022/ng-primitives-select.mjs.map +1 -1
  77. package/fesm2022/ng-primitives-separator.mjs +7 -7
  78. package/fesm2022/ng-primitives-separator.mjs.map +1 -1
  79. package/fesm2022/ng-primitives-slider.mjs +287 -253
  80. package/fesm2022/ng-primitives-slider.mjs.map +1 -1
  81. package/fesm2022/ng-primitives-state.mjs +173 -3
  82. package/fesm2022/ng-primitives-state.mjs.map +1 -1
  83. package/fesm2022/ng-primitives-switch.mjs +105 -101
  84. package/fesm2022/ng-primitives-switch.mjs.map +1 -1
  85. package/fesm2022/ng-primitives-tabs.mjs +48 -43
  86. package/fesm2022/ng-primitives-tabs.mjs.map +1 -1
  87. package/fesm2022/ng-primitives-textarea.mjs +33 -41
  88. package/fesm2022/ng-primitives-textarea.mjs.map +1 -1
  89. package/fesm2022/ng-primitives-toast.mjs +19 -19
  90. package/fesm2022/ng-primitives-toast.mjs.map +1 -1
  91. package/fesm2022/ng-primitives-toggle-group.mjs +160 -159
  92. package/fesm2022/ng-primitives-toggle-group.mjs.map +1 -1
  93. package/fesm2022/ng-primitives-toggle.mjs +81 -68
  94. package/fesm2022/ng-primitives-toggle.mjs.map +1 -1
  95. package/fesm2022/ng-primitives-toolbar.mjs +31 -40
  96. package/fesm2022/ng-primitives-toolbar.mjs.map +1 -1
  97. package/fesm2022/ng-primitives-tooltip.mjs +68 -60
  98. package/fesm2022/ng-primitives-tooltip.mjs.map +1 -1
  99. package/fesm2022/ng-primitives-utils.mjs +50 -37
  100. package/fesm2022/ng-primitives-utils.mjs.map +1 -1
  101. package/file-upload/index.d.ts +148 -4
  102. package/focus-trap/index.d.ts +98 -2
  103. package/form-field/index.d.ts +266 -7
  104. package/index.d.ts +2 -2
  105. package/input/index.d.ts +84 -2
  106. package/input-otp/index.d.ts +247 -4
  107. package/interactions/index.d.ts +295 -16
  108. package/internal/index.d.ts +201 -10
  109. package/listbox/index.d.ts +209 -6
  110. package/menu/index.d.ts +297 -8
  111. package/meter/index.d.ts +67 -6
  112. package/package.json +28 -28
  113. package/pagination/index.d.ts +211 -7
  114. package/popover/index.d.ts +224 -5
  115. package/portal/index.d.ts +389 -6
  116. package/progress/index.d.ts +124 -6
  117. package/radio/index.d.ts +140 -5
  118. package/resize/index.d.ts +29 -1
  119. package/roving-focus/index.d.ts +154 -4
  120. package/schematics/ng-add/schema.d.ts +0 -1
  121. package/schematics/ng-generate/__snapshots__/index.spec.ts.snap +1 -1
  122. package/schematics/ng-generate/templates/checkbox/checkbox.__fileSuffix@dasherize__.ts.template +2 -2
  123. package/schematics/ng-generate/templates/slider/slider.__fileSuffix@dasherize__.ts.template +6 -3
  124. package/schematics/ng-generate/templates/switch/switch.__fileSuffix@dasherize__.ts.template +2 -2
  125. package/schematics/ng-generate/templates/toggle/toggle.__fileSuffix@dasherize__.ts.template +2 -2
  126. package/schematics/ng-generate/templates/toggle-group/toggle-group.__fileSuffix@dasherize__.ts.template +2 -2
  127. package/schematics/ng-generate/templates/toolbar/toolbar.__fileSuffix@dasherize__.ts.template +1 -1
  128. package/search/index.d.ts +66 -3
  129. package/select/index.d.ts +341 -8
  130. package/separator/index.d.ts +30 -2
  131. package/slider/index.d.ts +471 -10
  132. package/state/index.d.ts +68 -11
  133. package/switch/index.d.ts +151 -3
  134. package/tabs/index.d.ts +222 -7
  135. package/textarea/index.d.ts +87 -2
  136. package/toast/index.d.ts +219 -4
  137. package/toggle/index.d.ts +98 -2
  138. package/toggle-group/index.d.ts +168 -5
  139. package/toolbar/index.d.ts +43 -2
  140. package/tooltip/index.d.ts +214 -5
  141. package/utils/index.d.ts +170 -9
  142. package/a11y/active-descendant/active-descendant.d.ts +0 -42
  143. package/a11y/visually-hidden/visually-hidden-state.d.ts +0 -17
  144. package/a11y/visually-hidden/visually-hidden.d.ts +0 -50
  145. package/accordion/accordion/accordion-state.d.ts +0 -17
  146. package/accordion/accordion/accordion.d.ts +0 -50
  147. package/accordion/accordion-content/accordion-content.d.ts +0 -40
  148. package/accordion/accordion-item/accordion-item-state.d.ts +0 -17
  149. package/accordion/accordion-item/accordion-item.d.ts +0 -50
  150. package/accordion/accordion-trigger/accordion-trigger.d.ts +0 -31
  151. package/accordion/config/accordion-config.d.ts +0 -32
  152. package/ai/prompt-composer/prompt-composer-state.d.ts +0 -17
  153. package/ai/prompt-composer/prompt-composer.d.ts +0 -23
  154. package/ai/prompt-composer-dictation/prompt-composer-dictation-state.d.ts +0 -17
  155. package/ai/prompt-composer-dictation/prompt-composer-dictation.d.ts +0 -29
  156. package/ai/prompt-composer-input/prompt-composer-input-state.d.ts +0 -17
  157. package/ai/prompt-composer-input/prompt-composer-input.d.ts +0 -16
  158. package/ai/prompt-composer-submit/prompt-composer-submit-state.d.ts +0 -17
  159. package/ai/prompt-composer-submit/prompt-composer-submit.d.ts +0 -15
  160. package/ai/thread/thread-state.d.ts +0 -17
  161. package/ai/thread/thread.d.ts +0 -23
  162. package/ai/thread-message/thread-message-state.d.ts +0 -17
  163. package/ai/thread-message/thread-message.d.ts +0 -11
  164. package/ai/thread-suggestion/thread-suggestion-state.d.ts +0 -17
  165. package/ai/thread-suggestion/thread-suggestion.d.ts +0 -14
  166. package/ai/thread-viewport/thread-viewport-state.d.ts +0 -17
  167. package/ai/thread-viewport/thread-viewport.d.ts +0 -34
  168. package/autofill/autofill/autofill.d.ts +0 -19
  169. package/avatar/avatar/avatar-state.d.ts +0 -17
  170. package/avatar/avatar/avatar.d.ts +0 -29
  171. package/avatar/avatar-fallback/avatar-fallback.d.ts +0 -37
  172. package/avatar/avatar-image/avatar-image.d.ts +0 -27
  173. package/avatar/config/avatar-config.d.ts +0 -21
  174. package/breadcrumbs/breadcrumb-ellipsis/breadcrumb-ellipsis.d.ts +0 -8
  175. package/breadcrumbs/breadcrumb-item/breadcrumb-item.d.ts +0 -8
  176. package/breadcrumbs/breadcrumb-link/breadcrumb-link.d.ts +0 -9
  177. package/breadcrumbs/breadcrumb-list/breadcrumb-list.d.ts +0 -8
  178. package/breadcrumbs/breadcrumb-page/breadcrumb-page.d.ts +0 -8
  179. package/breadcrumbs/breadcrumb-separator/breadcrumb-separator.d.ts +0 -8
  180. package/breadcrumbs/breadcrumbs/breadcrumbs.d.ts +0 -8
  181. package/button/button/button-state.d.ts +0 -17
  182. package/button/button/button.d.ts +0 -15
  183. package/button/button/setup-button.d.ts +0 -15
  184. package/checkbox/checkbox/checkbox-state.d.ts +0 -17
  185. package/checkbox/checkbox/checkbox.d.ts +0 -45
  186. package/combobox/combobox/combobox-state.d.ts +0 -17
  187. package/combobox/combobox/combobox.d.ts +0 -222
  188. package/combobox/combobox-button/combobox-button.d.ts +0 -18
  189. package/combobox/combobox-dropdown/combobox-dropdown.d.ts +0 -21
  190. package/combobox/combobox-input/combobox-input.d.ts +0 -36
  191. package/combobox/combobox-option/combobox-option.d.ts +0 -51
  192. package/combobox/combobox-portal/combobox-portal.d.ts +0 -37
  193. package/combobox/config/combobox-config.d.ts +0 -28
  194. package/combobox/utils.d.ts +0 -9
  195. package/common/header/header-token.d.ts +0 -10
  196. package/common/header/header.d.ts +0 -13
  197. package/common/types/orientation.d.ts +0 -1
  198. package/common/types/selection.d.ts +0 -1
  199. package/date-picker/config/date-picker-config.d.ts +0 -22
  200. package/date-picker/date-picker/date-picker-first-day-of-week.d.ts +0 -29
  201. package/date-picker/date-picker/date-picker-state.d.ts +0 -9
  202. package/date-picker/date-picker/date-picker.d.ts +0 -129
  203. package/date-picker/date-picker-cell/date-picker-cell.d.ts +0 -20
  204. package/date-picker/date-picker-cell-render/date-picker-cell-render-token.d.ts +0 -12
  205. package/date-picker/date-picker-cell-render/date-picker-cell-render.d.ts +0 -39
  206. package/date-picker/date-picker-date-button/date-picker-date-button-token.d.ts +0 -7
  207. package/date-picker/date-picker-date-button/date-picker-date-button.d.ts +0 -114
  208. package/date-picker/date-picker-grid/date-picker-grid.d.ts +0 -16
  209. package/date-picker/date-picker-label/date-picker-label-token.d.ts +0 -7
  210. package/date-picker/date-picker-label/date-picker-label.d.ts +0 -20
  211. package/date-picker/date-picker-next-month/date-picker-next-month.d.ts +0 -34
  212. package/date-picker/date-picker-previous-month/date-picker-previous-month.d.ts +0 -34
  213. package/date-picker/date-picker-row-render/date-picker-row-render-token.d.ts +0 -12
  214. package/date-picker/date-picker-row-render/date-picker-row-render.d.ts +0 -65
  215. package/date-picker/date-range-picker/date-range-picker-state.d.ts +0 -19
  216. package/date-picker/date-range-picker/date-range-picker.d.ts +0 -149
  217. package/date-time/date-adapter/date-adapter-token.d.ts +0 -11
  218. package/date-time/date-adapter/date-adapter.d.ts +0 -169
  219. package/date-time/native-date-adapter/native-date-adapter.d.ts +0 -106
  220. package/date-time-luxon/luxon-date-adapter/luxon-date-adapter.d.ts +0 -28
  221. package/dialog/config/dialog-config.d.ts +0 -41
  222. package/dialog/dialog/dialog-ref.d.ts +0 -45
  223. package/dialog/dialog/dialog-state.d.ts +0 -17
  224. package/dialog/dialog/dialog.d.ts +0 -37
  225. package/dialog/dialog/dialog.service.d.ts +0 -69
  226. package/dialog/dialog-description/dialog-description.d.ts +0 -12
  227. package/dialog/dialog-overlay/dialog-overlay.d.ts +0 -16
  228. package/dialog/dialog-title/dialog-title.d.ts +0 -12
  229. package/dialog/dialog-trigger/dialog-trigger.d.ts +0 -26
  230. package/file-upload/file-dropzone/file-drop-filter.d.ts +0 -2
  231. package/file-upload/file-dropzone/file-dropzone-state.d.ts +0 -17
  232. package/file-upload/file-dropzone/file-dropzone.d.ts +0 -55
  233. package/file-upload/file-upload/file-upload-state.d.ts +0 -17
  234. package/file-upload/file-upload/file-upload.d.ts +0 -72
  235. package/focus-trap/focus-trap/focus-trap-state.d.ts +0 -17
  236. package/focus-trap/focus-trap/focus-trap.d.ts +0 -85
  237. package/form-field/description/description.d.ts +0 -17
  238. package/form-field/error/error.d.ts +0 -32
  239. package/form-field/form-control/form-control-state.d.ts +0 -17
  240. package/form-field/form-control/form-control.d.ts +0 -44
  241. package/form-field/form-field/form-field-state.d.ts +0 -17
  242. package/form-field/form-field/form-field.d.ts +0 -119
  243. package/form-field/label/label.d.ts +0 -30
  244. package/input/input/input-state.d.ts +0 -17
  245. package/input/input/input.d.ts +0 -34
  246. package/input-otp/input-otp/input-otp-state.d.ts +0 -17
  247. package/input-otp/input-otp/input-otp.d.ts +0 -133
  248. package/input-otp/input-otp-input/input-otp-input.d.ts +0 -57
  249. package/input-otp/input-otp-slot/input-otp-slot.d.ts +0 -45
  250. package/interactions/config/interactions-config.d.ts +0 -30
  251. package/interactions/focus/focus-interaction.d.ts +0 -14
  252. package/interactions/focus/focus.d.ts +0 -19
  253. package/interactions/focus-visible/focus-visible-interaction.d.ts +0 -12
  254. package/interactions/focus-visible/focus-visible.d.ts +0 -19
  255. package/interactions/hover/hover-interaction.d.ts +0 -17
  256. package/interactions/hover/hover.d.ts +0 -31
  257. package/interactions/interactions/interactions.d.ts +0 -20
  258. package/interactions/move/move.d.ts +0 -114
  259. package/interactions/press/press-interaction.d.ts +0 -14
  260. package/interactions/press/press.d.ts +0 -26
  261. package/internal/exit-animation/exit-animation-manager.d.ts +0 -17
  262. package/internal/exit-animation/exit-animation.d.ts +0 -26
  263. package/internal/signals/explicit-effect.d.ts +0 -19
  264. package/internal/style-injector/style-injector.d.ts +0 -44
  265. package/internal/utilities/dom-removal.d.ts +0 -6
  266. package/internal/utilities/element-ref.d.ts +0 -6
  267. package/internal/utilities/mutation-observer.d.ts +0 -39
  268. package/internal/utilities/overflow.d.ts +0 -13
  269. package/internal/utilities/resize.d.ts +0 -31
  270. package/internal/utilities/scrolling.d.ts +0 -1
  271. package/listbox/listbox/listbox-state.d.ts +0 -17
  272. package/listbox/listbox/listbox.d.ts +0 -101
  273. package/listbox/listbox-header/listbox-header.d.ts +0 -9
  274. package/listbox/listbox-option/listbox-option.d.ts +0 -68
  275. package/listbox/listbox-section/listbox-section.d.ts +0 -9
  276. package/listbox/listbox-trigger/listbox-trigger.d.ts +0 -13
  277. package/menu/config/menu-config.d.ts +0 -44
  278. package/menu/menu/menu-token.d.ts +0 -11
  279. package/menu/menu/menu.d.ts +0 -22
  280. package/menu/menu-item/menu-item.d.ts +0 -30
  281. package/menu/menu-trigger/menu-trigger-state.d.ts +0 -17
  282. package/menu/menu-trigger/menu-trigger.d.ts +0 -98
  283. package/menu/submenu-trigger/submenu-trigger-state.d.ts +0 -17
  284. package/menu/submenu-trigger/submenu-trigger.d.ts +0 -88
  285. package/meter/meter/meter-state.d.ts +0 -17
  286. package/meter/meter/meter.d.ts +0 -27
  287. package/meter/meter-indicator/meter-indicator.d.ts +0 -7
  288. package/meter/meter-label/meter-label.d.ts +0 -10
  289. package/meter/meter-track/meter-track.d.ts +0 -5
  290. package/meter/meter-value/meter-value.d.ts +0 -5
  291. package/pagination/pagination/pagination-state.d.ts +0 -17
  292. package/pagination/pagination/pagination.d.ts +0 -45
  293. package/pagination/pagination-button/pagination-button.d.ts +0 -39
  294. package/pagination/pagination-first/pagination-first.d.ts +0 -28
  295. package/pagination/pagination-last/pagination-last.d.ts +0 -28
  296. package/pagination/pagination-next/pagination-next.d.ts +0 -31
  297. package/pagination/pagination-previous/pagination-previous.d.ts +0 -31
  298. package/popover/config/popover-config.d.ts +0 -64
  299. package/popover/popover/popover.d.ts +0 -18
  300. package/popover/popover-arrow/popover-arrow.d.ts +0 -6
  301. package/popover/popover-trigger/popover-trigger-state.d.ts +0 -19
  302. package/popover/popover-trigger/popover-trigger.d.ts +0 -128
  303. package/portal/offset.d.ts +0 -39
  304. package/portal/overlay-arrow.d.ts +0 -1
  305. package/portal/overlay-token.d.ts +0 -12
  306. package/portal/overlay.d.ts +0 -214
  307. package/portal/portal.d.ts +0 -94
  308. package/portal/scroll-strategy.d.ts +0 -23
  309. package/progress/progress/progress-state.d.ts +0 -17
  310. package/progress/progress/progress.d.ts +0 -61
  311. package/progress/progress-indicator/progress-indicator.d.ts +0 -17
  312. package/progress/progress-label/progress-label.d.ts +0 -14
  313. package/progress/progress-track/progress-track.d.ts +0 -9
  314. package/progress/progress-value/progress-value.d.ts +0 -9
  315. package/radio/radio-group/radio-group-state.d.ts +0 -18
  316. package/radio/radio-group/radio-group.d.ts +0 -54
  317. package/radio/radio-indicator/radio-indicator.d.ts +0 -21
  318. package/radio/radio-item/radio-item-state.d.ts +0 -18
  319. package/radio/radio-item/radio-item.d.ts +0 -45
  320. package/resize/resize/resize.d.ts +0 -26
  321. package/roving-focus/roving-focus-group/roving-focus-group-state.d.ts +0 -17
  322. package/roving-focus/roving-focus-group/roving-focus-group-token.d.ts +0 -21
  323. package/roving-focus/roving-focus-group/roving-focus-group.d.ts +0 -94
  324. package/roving-focus/roving-focus-item/roving-focus-item.d.ts +0 -53
  325. package/search/search/search-state.d.ts +0 -17
  326. package/search/search/search.d.ts +0 -36
  327. package/search/search-clear/search-clear.d.ts +0 -16
  328. package/select/config/select-config.d.ts +0 -28
  329. package/select/native-select/native-select-state.d.ts +0 -17
  330. package/select/native-select/native-select.d.ts +0 -22
  331. package/select/select/select-state.d.ts +0 -17
  332. package/select/select/select.d.ts +0 -172
  333. package/select/select-dropdown/select-dropdown.d.ts +0 -17
  334. package/select/select-option/select-option.d.ts +0 -51
  335. package/select/select-portal/select-portal.d.ts +0 -37
  336. package/separator/config/separator-config.d.ts +0 -22
  337. package/separator/separator/separator.d.ts +0 -11
  338. package/slider/range-slider/range-slider/range-slider-state.d.ts +0 -17
  339. package/slider/range-slider/range-slider/range-slider.d.ts +0 -115
  340. package/slider/range-slider/range-slider-range/range-slider-range.d.ts +0 -12
  341. package/slider/range-slider/range-slider-thumb/range-slider-thumb.d.ts +0 -44
  342. package/slider/range-slider/range-slider-track/range-slider-track.d.ts +0 -22
  343. package/slider/slider/slider-state.d.ts +0 -17
  344. package/slider/slider/slider.d.ts +0 -58
  345. package/slider/slider-range/slider-range.d.ts +0 -12
  346. package/slider/slider-thumb/slider-thumb.d.ts +0 -29
  347. package/slider/slider-track/slider-track.d.ts +0 -22
  348. package/switch/switch/switch-state.d.ts +0 -17
  349. package/switch/switch/switch.d.ts +0 -49
  350. package/switch/switch-thumb/switch-thumb.d.ts +0 -13
  351. package/tabs/config/tabs-config.d.ts +0 -32
  352. package/tabs/tab-button/tab-button.d.ts +0 -59
  353. package/tabs/tab-list/tab-list.d.ts +0 -12
  354. package/tabs/tab-panel/tab-panel-token.d.ts +0 -8
  355. package/tabs/tab-panel/tab-panel.d.ts +0 -38
  356. package/tabs/tabset/tabset-state.d.ts +0 -17
  357. package/tabs/tabset/tabset.d.ts +0 -71
  358. package/textarea/textarea/textarea-state.d.ts +0 -17
  359. package/textarea/textarea/textarea.d.ts +0 -19
  360. package/toast/config/toast-config.d.ts +0 -70
  361. package/toast/toast/toast-context.d.ts +0 -3
  362. package/toast/toast/toast-manager.d.ts +0 -49
  363. package/toast/toast/toast-options.d.ts +0 -34
  364. package/toast/toast/toast-timer.d.ts +0 -14
  365. package/toast/toast/toast.d.ts +0 -72
  366. package/toggle/toggle/toggle-state.d.ts +0 -17
  367. package/toggle/toggle/toggle.d.ts +0 -44
  368. package/toggle-group/config/toggle-group-config.d.ts +0 -32
  369. package/toggle-group/toggle-group/toggle-group-state.d.ts +0 -17
  370. package/toggle-group/toggle-group/toggle-group.d.ts +0 -64
  371. package/toggle-group/toggle-group-item/toggle-group-item-state.d.ts +0 -17
  372. package/toggle-group/toggle-group-item/toggle-group-item.d.ts +0 -34
  373. package/toolbar/toolbar/toolbar-state.d.ts +0 -17
  374. package/toolbar/toolbar/toolbar.d.ts +0 -20
  375. package/tooltip/config/tooltip-config.d.ts +0 -59
  376. package/tooltip/tooltip/tooltip.d.ts +0 -17
  377. package/tooltip/tooltip-arrow/tooltip-arrow.d.ts +0 -6
  378. package/tooltip/tooltip-text-content/tooltip-text-content.component.d.ts +0 -14
  379. package/tooltip/tooltip-trigger/tooltip-trigger-state.d.ts +0 -17
  380. package/tooltip/tooltip-trigger/tooltip-trigger.d.ts +0 -126
  381. package/utils/forms/providers.d.ts +0 -6
  382. package/utils/forms/status.d.ts +0 -16
  383. package/utils/forms/types.d.ts +0 -8
  384. package/utils/helpers/attributes.d.ts +0 -2
  385. package/utils/helpers/disposables.d.ts +0 -40
  386. package/utils/helpers/unique-id.d.ts +0 -6
  387. package/utils/helpers/validators.d.ts +0 -51
  388. package/utils/observables/take-until-destroyed.d.ts +0 -10
  389. package/utils/signals/index.d.ts +0 -22
@@ -1,71 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
- import { signal, Directive, InjectionToken, inject, input, numberAttribute, computed, ElementRef, HostListener } from '@angular/core';
2
+ import { InjectionToken, inject, signal, computed, input, numberAttribute, Directive } from '@angular/core';
3
+ import { injectElementRef } from 'ng-primitives/internal';
4
+ import { createPrimitive, dataBinding, styleBinding, listener } from 'ng-primitives/state';
3
5
  import { injectDisposables } from 'ng-primitives/utils';
4
- import { createStateToken, createStateProvider, createStateInjector, createState } from 'ng-primitives/state';
5
- import * as i1 from 'ng-primitives/a11y';
6
- import { injectVisuallyHiddenState, NgpVisuallyHidden } from 'ng-primitives/a11y';
7
-
8
- /**
9
- * The state token for the Avatar primitive.
10
- */
11
- const NgpAvatarStateToken = createStateToken('Avatar');
12
- /**
13
- * Provides the Avatar state.
14
- */
15
- const provideAvatarState = createStateProvider(NgpAvatarStateToken);
16
- /**
17
- * Injects the Avatar state.
18
- */
19
- const injectAvatarState = createStateInjector(NgpAvatarStateToken);
20
- /**
21
- * The Avatar state registration function.
22
- */
23
- const avatarState = createState(NgpAvatarStateToken);
24
-
25
- /**
26
- * Apply the `ngpAvatar` directive to an element that represents the avatar. This directive is a container for the image and/or fallback.
27
- */
28
- class NgpAvatar {
29
- constructor() {
30
- /**
31
- * Store the current status of the avatar.
32
- * @internal
33
- */
34
- this.status = signal(NgpAvatarStatus.Idle);
35
- /**
36
- * The avatar state.
37
- */
38
- this.state = avatarState(this);
39
- }
40
- /**
41
- * Set the avatar status.
42
- * @param status The status to set.
43
- * @internal
44
- */
45
- setStatus(status) {
46
- this.status.set(status);
47
- }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpAvatar, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
49
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpAvatar, isStandalone: true, selector: "[ngpAvatar]", host: { properties: { "attr.data-status": "status()" } }, providers: [provideAvatarState()], exportAs: ["ngpAvatar"], ngImport: i0 }); }
50
- }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpAvatar, decorators: [{
52
- type: Directive,
53
- args: [{
54
- selector: '[ngpAvatar]',
55
- exportAs: 'ngpAvatar',
56
- providers: [provideAvatarState()],
57
- host: {
58
- '[attr.data-status]': 'status()',
59
- },
60
- }]
61
- }] });
62
- var NgpAvatarStatus;
63
- (function (NgpAvatarStatus) {
64
- NgpAvatarStatus["Idle"] = "idle";
65
- NgpAvatarStatus["Loading"] = "loading";
66
- NgpAvatarStatus["Loaded"] = "loaded";
67
- NgpAvatarStatus["Error"] = "error";
68
- })(NgpAvatarStatus || (NgpAvatarStatus = {}));
6
+ import { ngpVisuallyHidden } from 'ng-primitives/a11y';
69
7
 
70
8
  const defaultAvatarConfig = {
71
9
  delay: 0,
@@ -92,122 +30,144 @@ function injectAvatarConfig() {
92
30
  return inject(NgpAvatarConfigToken, { optional: true }) ?? defaultAvatarConfig;
93
31
  }
94
32
 
33
+ const [NgpAvatarStateToken, ngpAvatar, injectAvatarState, provideAvatarState] = createPrimitive('NgpAvatar', ({}) => {
34
+ const element = injectElementRef();
35
+ const status = signal(NgpAvatarStatus.Idle, ...(ngDevMode ? [{ debugName: "status" }] : []));
36
+ // Host bindings
37
+ dataBinding(element, 'data-status', status);
38
+ function setStatus(newStatus) {
39
+ status.set(newStatus);
40
+ }
41
+ return {
42
+ status,
43
+ setStatus,
44
+ };
45
+ });
46
+ var NgpAvatarStatus;
47
+ (function (NgpAvatarStatus) {
48
+ NgpAvatarStatus["Idle"] = "idle";
49
+ NgpAvatarStatus["Loading"] = "loading";
50
+ NgpAvatarStatus["Loaded"] = "loaded";
51
+ NgpAvatarStatus["Error"] = "error";
52
+ })(NgpAvatarStatus || (NgpAvatarStatus = {}));
53
+
54
+ const [NgpAvatarFallbackStateToken, ngpAvatarFallback, injectAvatarFallbackState, provideAvatarFallbackState,] = createPrimitive('NgpAvatarFallback', ({}) => {
55
+ const avatar = injectAvatarState();
56
+ const element = injectElementRef();
57
+ const disposables = injectDisposables();
58
+ const delayElapsed = signal(false, ...(ngDevMode ? [{ debugName: "delayElapsed" }] : []));
59
+ const visible = computed(() => delayElapsed() && avatar().status() !== NgpAvatarStatus.Loaded, ...(ngDevMode ? [{ debugName: "visible" }] : []));
60
+ disposables.setTimeout(() => delayElapsed.set(true), 0);
61
+ styleBinding(element, 'display', () => (visible() ? null : 'none'));
62
+ return {};
63
+ });
64
+
95
65
  /**
96
66
  * Apply the `ngpAvatarFallback` directive to an element that represents the user in the absence of an image. This is typically the user's initials.
97
67
  */
98
68
  class NgpAvatarFallback {
99
69
  constructor() {
100
- /**
101
- * Access the avatar
102
- */
103
- this.avatar = injectAvatarState();
104
70
  /**
105
71
  * Access the global configuration.
106
72
  */
107
73
  this.config = injectAvatarConfig();
108
- /**
109
- * Access the disposable utilities.
110
- */
111
- this.disposables = injectDisposables();
112
74
  /**
113
75
  * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.
114
76
  * @default 0
115
77
  */
116
- this.delay = input(this.config.delay, {
117
- alias: 'ngpAvatarFallbackDelay',
118
- transform: numberAttribute,
119
- });
120
- /**
121
- * Determine if this element should be hidden.
122
- * @returns True if the element should be visible
123
- */
124
- this.visible = computed(() =>
125
- // we need to check if the element can render and if the avatar is not in a loaded state
126
- this.delayElapsed() && this.avatar().status() !== NgpAvatarStatus.Loaded);
127
- /**
128
- * Determine the delay has elapsed, and we can show the fallback.
129
- */
130
- this.delayElapsed = signal(false);
131
- }
132
- ngOnInit() {
133
- this.disposables.setTimeout(() => this.delayElapsed.set(true), this.delay());
78
+ this.delay = input(this.config.delay, ...(ngDevMode ? [{ debugName: "delay", alias: 'ngpAvatarFallbackDelay',
79
+ transform: numberAttribute }] : [{
80
+ alias: 'ngpAvatarFallbackDelay',
81
+ transform: numberAttribute,
82
+ }]));
83
+ ngpAvatarFallback({ delay: this.delay });
134
84
  }
135
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpAvatarFallback, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
136
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.11", type: NgpAvatarFallback, isStandalone: true, selector: "[ngpAvatarFallback]", inputs: { delay: { classPropertyName: "delay", publicName: "ngpAvatarFallbackDelay", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.display": "visible() ? null : \"none\"" } }, exportAs: ["ngpAvatarFallback"], ngImport: i0 }); }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpAvatarFallback, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
86
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.9", type: NgpAvatarFallback, isStandalone: true, selector: "[ngpAvatarFallback]", inputs: { delay: { classPropertyName: "delay", publicName: "ngpAvatarFallbackDelay", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["ngpAvatarFallback"], ngImport: i0 }); }
137
87
  }
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpAvatarFallback, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpAvatarFallback, decorators: [{
139
89
  type: Directive,
140
90
  args: [{
141
91
  selector: '[ngpAvatarFallback]',
142
92
  exportAs: 'ngpAvatarFallback',
143
- host: {
144
- '[style.display]': 'visible() ? null : "none"',
145
- },
146
93
  }]
147
- }] });
94
+ }], ctorParameters: () => [], propDecorators: { delay: [{ type: i0.Input, args: [{ isSignal: true, alias: "ngpAvatarFallbackDelay", required: false }] }] } });
95
+
96
+ const [NgpAvatarImageStateToken, ngpAvatarImage, injectAvatarImageState, provideAvatarImageState,] = createPrimitive('NgpAvatarImage', ({}) => {
97
+ const avatar = injectAvatarState();
98
+ const element = injectElementRef();
99
+ const visuallyHidden = ngpVisuallyHidden({});
100
+ // initially mark the avatar as loading
101
+ setStatus(NgpAvatarStatus.Loading);
102
+ // if there is no src, we can report this as an error
103
+ if (!element.nativeElement.src) {
104
+ setStatus(NgpAvatarStatus.Error);
105
+ }
106
+ // if the image has already loaded, we can report this to the avatar
107
+ if (element.nativeElement.complete) {
108
+ setStatus(NgpAvatarStatus.Loaded);
109
+ }
110
+ // host listeners
111
+ listener(element, 'load', () => setStatus(NgpAvatarStatus.Loaded));
112
+ listener(element, 'error', () => setStatus(NgpAvatarStatus.Error));
113
+ function setStatus(state) {
114
+ avatar().setStatus(state);
115
+ visuallyHidden.setVisibility(state === NgpAvatarStatus.Loaded);
116
+ }
117
+ return {};
118
+ });
148
119
 
149
120
  /**
150
121
  * Apply the `ngpAvatarImage` directive to an element that represents the avatar image. This would typically be an `img` element or a `div` with a background image.
151
122
  */
152
123
  class NgpAvatarImage {
124
+ constructor() {
125
+ ngpAvatarImage({});
126
+ }
127
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpAvatarImage, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
128
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpAvatarImage, isStandalone: true, selector: "img[ngpAvatarImage]", exportAs: ["ngpAvatarImage"], ngImport: i0 }); }
129
+ }
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpAvatarImage, decorators: [{
131
+ type: Directive,
132
+ args: [{
133
+ selector: 'img[ngpAvatarImage]',
134
+ exportAs: 'ngpAvatarImage',
135
+ }]
136
+ }], ctorParameters: () => [] });
137
+
138
+ /**
139
+ * Apply the `ngpAvatar` directive to an element that represents the avatar. This directive is a container for the image and/or fallback.
140
+ */
141
+ class NgpAvatar {
153
142
  constructor() {
154
143
  /**
155
- * Control the visibility of the image.
156
- */
157
- this.visuallyHidden = injectVisuallyHiddenState();
158
- /**
159
- * Access the avatar
160
- */
161
- this.avatar = injectAvatarState();
162
- /**
163
- * Access the image element ref.
144
+ * The avatar state.
164
145
  */
165
- this.elementRef = inject(ElementRef);
166
- }
167
- ngOnInit() {
168
- // mark the avatar as loading
169
- this.setState(NgpAvatarStatus.Loading);
170
- // if there is no src, we can report this as an error
171
- if (!this.elementRef.nativeElement.src) {
172
- this.setState(NgpAvatarStatus.Error);
173
- }
174
- // if the image has already loaded, we can report this to the avatar
175
- if (this.elementRef.nativeElement.complete) {
176
- this.setState(NgpAvatarStatus.Loaded);
177
- }
178
- }
179
- onLoad() {
180
- this.setState(NgpAvatarStatus.Loaded);
181
- }
182
- onError() {
183
- this.setState(NgpAvatarStatus.Error);
146
+ this.state = ngpAvatar({});
184
147
  }
185
- setState(state) {
186
- this.avatar().setStatus(state);
187
- // if the state is loaded then we should make the image visible
188
- this.visuallyHidden().setVisibility(state === NgpAvatarStatus.Loaded);
148
+ /**
149
+ * Set the avatar status.
150
+ * @param status The status to set.
151
+ * @internal
152
+ */
153
+ setStatus(status) {
154
+ this.state.setStatus(status);
189
155
  }
190
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpAvatarImage, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
191
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpAvatarImage, isStandalone: true, selector: "img[ngpAvatarImage]", host: { listeners: { "load": "onLoad()", "error": "onError()" } }, exportAs: ["ngpAvatarImage"], hostDirectives: [{ directive: i1.NgpVisuallyHidden }], ngImport: i0 }); }
156
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpAvatar, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
157
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpAvatar, isStandalone: true, selector: "[ngpAvatar]", providers: [provideAvatarState()], exportAs: ["ngpAvatar"], ngImport: i0 }); }
192
158
  }
193
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpAvatarImage, decorators: [{
159
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpAvatar, decorators: [{
194
160
  type: Directive,
195
161
  args: [{
196
- selector: 'img[ngpAvatarImage]',
197
- exportAs: 'ngpAvatarImage',
198
- hostDirectives: [NgpVisuallyHidden],
162
+ selector: '[ngpAvatar]',
163
+ exportAs: 'ngpAvatar',
164
+ providers: [provideAvatarState()],
199
165
  }]
200
- }], propDecorators: { onLoad: [{
201
- type: HostListener,
202
- args: ['load']
203
- }], onError: [{
204
- type: HostListener,
205
- args: ['error']
206
- }] } });
166
+ }] });
207
167
 
208
168
  /**
209
169
  * Generated bundle index. Do not edit.
210
170
  */
211
171
 
212
- export { NgpAvatar, NgpAvatarFallback, NgpAvatarImage, NgpAvatarStatus, injectAvatarState, provideAvatarConfig, provideAvatarState };
172
+ export { NgpAvatar, NgpAvatarFallback, NgpAvatarFallbackStateToken, NgpAvatarImage, NgpAvatarImageStateToken, NgpAvatarStateToken, NgpAvatarStatus, injectAvatarFallbackState, injectAvatarImageState, injectAvatarState, ngpAvatar, ngpAvatarFallback, ngpAvatarImage, provideAvatarConfig, provideAvatarFallbackState, provideAvatarImageState, provideAvatarState };
213
173
  //# sourceMappingURL=ng-primitives-avatar.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-primitives-avatar.mjs","sources":["../../../../packages/ng-primitives/avatar/src/avatar/avatar-state.ts","../../../../packages/ng-primitives/avatar/src/avatar/avatar.ts","../../../../packages/ng-primitives/avatar/src/config/avatar-config.ts","../../../../packages/ng-primitives/avatar/src/avatar-fallback/avatar-fallback.ts","../../../../packages/ng-primitives/avatar/src/avatar-image/avatar-image.ts","../../../../packages/ng-primitives/avatar/src/ng-primitives-avatar.ts"],"sourcesContent":["import {\n createState,\n createStateInjector,\n createStateProvider,\n createStateToken,\n} from 'ng-primitives/state';\nimport type { NgpAvatar } from './avatar';\n\n/**\n * The state token for the Avatar primitive.\n */\nexport const NgpAvatarStateToken = createStateToken<NgpAvatar>('Avatar');\n\n/**\n * Provides the Avatar state.\n */\nexport const provideAvatarState = createStateProvider(NgpAvatarStateToken);\n\n/**\n * Injects the Avatar state.\n */\nexport const injectAvatarState = createStateInjector<NgpAvatar>(NgpAvatarStateToken);\n\n/**\n * The Avatar state registration function.\n */\nexport const avatarState = createState(NgpAvatarStateToken);\n","import { Directive, signal } from '@angular/core';\nimport { avatarState, provideAvatarState } from './avatar-state';\n\n/**\n * Apply the `ngpAvatar` directive to an element that represents the avatar. This directive is a container for the image and/or fallback.\n */\n@Directive({\n selector: '[ngpAvatar]',\n exportAs: 'ngpAvatar',\n providers: [provideAvatarState()],\n host: {\n '[attr.data-status]': 'status()',\n },\n})\nexport class NgpAvatar {\n /**\n * Store the current status of the avatar.\n * @internal\n */\n readonly status = signal(NgpAvatarStatus.Idle);\n\n /**\n * The avatar state.\n */\n protected readonly state = avatarState<NgpAvatar>(this);\n\n /**\n * Set the avatar status.\n * @param status The status to set.\n * @internal\n */\n setStatus(status: NgpAvatarStatus): void {\n this.status.set(status);\n }\n}\n\nexport enum NgpAvatarStatus {\n Idle = 'idle',\n Loading = 'loading',\n Loaded = 'loaded',\n Error = 'error',\n}\n","import { InjectionToken, Provider, inject } from '@angular/core';\n\nexport interface NgpAvatarConfig {\n /**\n * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.\n * @default 0\n */\n delay: number;\n}\n\nexport const defaultAvatarConfig: NgpAvatarConfig = {\n delay: 0,\n};\n\nexport const NgpAvatarConfigToken = new InjectionToken<NgpAvatarConfig>('NgpAvatarConfigToken');\n\n/**\n * Provide the avatar config\n * @param config The avatar config\n * @returns The provider\n */\nexport function provideAvatarConfig(config: Partial<NgpAvatarConfig>): Provider[] {\n return [\n {\n provide: NgpAvatarConfigToken,\n useValue: { ...defaultAvatarConfig, ...config },\n },\n ];\n}\n\n/**\n * Inject the avatar config\n * @returns The global avatar config\n */\nexport function injectAvatarConfig(): NgpAvatarConfig {\n return inject(NgpAvatarConfigToken, { optional: true }) ?? defaultAvatarConfig;\n}\n","import { NumberInput } from '@angular/cdk/coercion';\nimport { computed, Directive, input, numberAttribute, OnInit, signal } from '@angular/core';\nimport { injectDisposables } from 'ng-primitives/utils';\nimport { NgpAvatarStatus } from '../avatar/avatar';\nimport { injectAvatarState } from '../avatar/avatar-state';\nimport { injectAvatarConfig } from '../config/avatar-config';\n\n/**\n * Apply the `ngpAvatarFallback` directive to an element that represents the user in the absence of an image. This is typically the user's initials.\n */\n@Directive({\n selector: '[ngpAvatarFallback]',\n exportAs: 'ngpAvatarFallback',\n host: {\n '[style.display]': 'visible() ? null : \"none\"',\n },\n})\nexport class NgpAvatarFallback implements OnInit {\n /**\n * Access the avatar\n */\n private readonly avatar = injectAvatarState();\n\n /**\n * Access the global configuration.\n */\n private readonly config = injectAvatarConfig();\n\n /**\n * Access the disposable utilities.\n */\n private readonly disposables = injectDisposables();\n\n /**\n * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.\n * @default 0\n */\n readonly delay = input<number, NumberInput>(this.config.delay, {\n alias: 'ngpAvatarFallbackDelay',\n transform: numberAttribute,\n });\n\n /**\n * Determine if this element should be hidden.\n * @returns True if the element should be visible\n */\n protected readonly visible = computed(\n () =>\n // we need to check if the element can render and if the avatar is not in a loaded state\n this.delayElapsed() && this.avatar().status() !== NgpAvatarStatus.Loaded,\n );\n\n /**\n * Determine the delay has elapsed, and we can show the fallback.\n */\n private delayElapsed = signal(false);\n\n ngOnInit(): void {\n this.disposables.setTimeout(() => this.delayElapsed.set(true), this.delay());\n }\n}\n","import { Directive, ElementRef, HostListener, inject, OnInit } from '@angular/core';\nimport { injectVisuallyHiddenState, NgpVisuallyHidden } from 'ng-primitives/a11y';\nimport { NgpAvatarStatus } from '../avatar/avatar';\nimport { injectAvatarState } from '../avatar/avatar-state';\n\n/**\n * Apply the `ngpAvatarImage` directive to an element that represents the avatar image. This would typically be an `img` element or a `div` with a background image.\n */\n@Directive({\n selector: 'img[ngpAvatarImage]',\n exportAs: 'ngpAvatarImage',\n hostDirectives: [NgpVisuallyHidden],\n})\nexport class NgpAvatarImage implements OnInit {\n /**\n * Control the visibility of the image.\n */\n protected readonly visuallyHidden = injectVisuallyHiddenState();\n\n /**\n * Access the avatar\n */\n private readonly avatar = injectAvatarState();\n\n /**\n * Access the image element ref.\n */\n private readonly elementRef = inject<ElementRef<HTMLImageElement>>(ElementRef);\n\n ngOnInit(): void {\n // mark the avatar as loading\n this.setState(NgpAvatarStatus.Loading);\n\n // if there is no src, we can report this as an error\n if (!this.elementRef.nativeElement.src) {\n this.setState(NgpAvatarStatus.Error);\n }\n\n // if the image has already loaded, we can report this to the avatar\n if (this.elementRef.nativeElement.complete) {\n this.setState(NgpAvatarStatus.Loaded);\n }\n }\n\n @HostListener('load')\n protected onLoad(): void {\n this.setState(NgpAvatarStatus.Loaded);\n }\n\n @HostListener('error')\n protected onError(): void {\n this.setState(NgpAvatarStatus.Error);\n }\n\n private setState(state: NgpAvatarStatus) {\n this.avatar().setStatus(state);\n\n // if the state is loaded then we should make the image visible\n this.visuallyHidden().setVisibility(state === NgpAvatarStatus.Loaded);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-primitives-avatar.mjs","sources":["../../../../packages/ng-primitives/avatar/src/config/avatar-config.ts","../../../../packages/ng-primitives/avatar/src/avatar/avatar-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-fallback/avatar-fallback-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-fallback/avatar-fallback.ts","../../../../packages/ng-primitives/avatar/src/avatar-image/avatar-image-state.ts","../../../../packages/ng-primitives/avatar/src/avatar-image/avatar-image.ts","../../../../packages/ng-primitives/avatar/src/avatar/avatar.ts","../../../../packages/ng-primitives/avatar/src/ng-primitives-avatar.ts"],"sourcesContent":["import { InjectionToken, Provider, inject } from '@angular/core';\n\nexport interface NgpAvatarConfig {\n /**\n * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.\n * @default 0\n */\n delay: number;\n}\n\nexport const defaultAvatarConfig: NgpAvatarConfig = {\n delay: 0,\n};\n\nexport const NgpAvatarConfigToken = new InjectionToken<NgpAvatarConfig>('NgpAvatarConfigToken');\n\n/**\n * Provide the avatar config\n * @param config The avatar config\n * @returns The provider\n */\nexport function provideAvatarConfig(config: Partial<NgpAvatarConfig>): Provider[] {\n return [\n {\n provide: NgpAvatarConfigToken,\n useValue: { ...defaultAvatarConfig, ...config },\n },\n ];\n}\n\n/**\n * Inject the avatar config\n * @returns The global avatar config\n */\nexport function injectAvatarConfig(): NgpAvatarConfig {\n return inject(NgpAvatarConfigToken, { optional: true }) ?? defaultAvatarConfig;\n}\n","import { signal, Signal } from '@angular/core';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, dataBinding } from 'ng-primitives/state';\n\nexport interface NgpAvatarState {\n /**\n * The avatar status.\n */\n status: Signal<NgpAvatarStatus>;\n\n /**\n * Set the avatar status.\n */\n setStatus(status: NgpAvatarStatus): void;\n}\n\nexport interface NgpAvatarProps {}\n\nexport const [NgpAvatarStateToken, ngpAvatar, injectAvatarState, provideAvatarState] =\n createPrimitive('NgpAvatar', ({}: NgpAvatarProps) => {\n const element = injectElementRef();\n const status = signal(NgpAvatarStatus.Idle);\n\n // Host bindings\n dataBinding(element, 'data-status', status);\n\n function setStatus(newStatus: NgpAvatarStatus): void {\n status.set(newStatus);\n }\n\n return {\n status,\n setStatus,\n };\n });\n\nexport enum NgpAvatarStatus {\n Idle = 'idle',\n Loading = 'loading',\n Loaded = 'loaded',\n Error = 'error',\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, styleBinding } from 'ng-primitives/state';\nimport { injectDisposables } from 'ng-primitives/utils';\nimport { injectAvatarState, NgpAvatarStatus } from '../avatar/avatar-state';\n\nexport interface NgpAvatarFallbackState {}\n\nexport interface NgpAvatarFallbackProps {\n /**\n * The delay before showing the fallback.\n */\n delay?: Signal<number>;\n}\n\nexport const [\n NgpAvatarFallbackStateToken,\n ngpAvatarFallback,\n injectAvatarFallbackState,\n provideAvatarFallbackState,\n] = createPrimitive('NgpAvatarFallback', ({}: NgpAvatarFallbackProps) => {\n const avatar = injectAvatarState();\n const element = injectElementRef();\n const disposables = injectDisposables();\n\n const delayElapsed = signal(false);\n const visible = computed(() => delayElapsed() && avatar().status() !== NgpAvatarStatus.Loaded);\n\n disposables.setTimeout(() => delayElapsed.set(true), 0);\n\n styleBinding(element, 'display', () => (visible() ? null : 'none'));\n\n return {};\n});\n","import { NumberInput } from '@angular/cdk/coercion';\nimport { Directive, input, numberAttribute } from '@angular/core';\nimport { injectAvatarConfig } from '../config/avatar-config';\nimport { ngpAvatarFallback } from './avatar-fallback-state';\n\n/**\n * Apply the `ngpAvatarFallback` directive to an element that represents the user in the absence of an image. This is typically the user's initials.\n */\n@Directive({\n selector: '[ngpAvatarFallback]',\n exportAs: 'ngpAvatarFallback',\n})\nexport class NgpAvatarFallback {\n /**\n * Access the global configuration.\n */\n private readonly config = injectAvatarConfig();\n\n /**\n * Define a delay before the fallback is shown. This is useful to only show the fallback for those with slower connections.\n * @default 0\n */\n readonly delay = input<number, NumberInput>(this.config.delay, {\n alias: 'ngpAvatarFallbackDelay',\n transform: numberAttribute,\n });\n\n constructor() {\n ngpAvatarFallback({ delay: this.delay });\n }\n}\n","import { ngpVisuallyHidden } from 'ng-primitives/a11y';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { createPrimitive, listener } from 'ng-primitives/state';\nimport { injectAvatarState, NgpAvatarStatus } from '../avatar/avatar-state';\n\nexport interface NgpAvatarImageState {}\n\nexport interface NgpAvatarImageProps {}\n\nexport const [\n NgpAvatarImageStateToken,\n ngpAvatarImage,\n injectAvatarImageState,\n provideAvatarImageState,\n] = createPrimitive('NgpAvatarImage', ({}: NgpAvatarImageProps) => {\n const avatar = injectAvatarState();\n const element = injectElementRef<HTMLImageElement>();\n const visuallyHidden = ngpVisuallyHidden({});\n\n // initially mark the avatar as loading\n setStatus(NgpAvatarStatus.Loading);\n\n // if there is no src, we can report this as an error\n if (!element.nativeElement.src) {\n setStatus(NgpAvatarStatus.Error);\n }\n\n // if the image has already loaded, we can report this to the avatar\n if (element.nativeElement.complete) {\n setStatus(NgpAvatarStatus.Loaded);\n }\n\n // host listeners\n listener(element, 'load', () => setStatus(NgpAvatarStatus.Loaded));\n listener(element, 'error', () => setStatus(NgpAvatarStatus.Error));\n\n function setStatus(state: NgpAvatarStatus) {\n avatar().setStatus(state);\n visuallyHidden.setVisibility(state === NgpAvatarStatus.Loaded);\n }\n\n return {};\n});\n","import { Directive } from '@angular/core';\nimport { ngpAvatarImage } from './avatar-image-state';\n\n/**\n * Apply the `ngpAvatarImage` directive to an element that represents the avatar image. This would typically be an `img` element or a `div` with a background image.\n */\n@Directive({\n selector: 'img[ngpAvatarImage]',\n exportAs: 'ngpAvatarImage',\n})\nexport class NgpAvatarImage {\n constructor() {\n ngpAvatarImage({});\n }\n}\n","import { Directive } from '@angular/core';\nimport { ngpAvatar, NgpAvatarStatus, provideAvatarState } from './avatar-state';\n\n/**\n * Apply the `ngpAvatar` directive to an element that represents the avatar. This directive is a container for the image and/or fallback.\n */\n@Directive({\n selector: '[ngpAvatar]',\n exportAs: 'ngpAvatar',\n providers: [provideAvatarState()],\n})\nexport class NgpAvatar {\n /**\n * The avatar state.\n */\n private readonly state = ngpAvatar({});\n\n /**\n * Set the avatar status.\n * @param status The status to set.\n * @internal\n */\n setStatus(status: NgpAvatarStatus): void {\n this.state.setStatus(status);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,138 +1,195 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Directive } from '@angular/core';
3
+ import { injectElementRef } from 'ng-primitives/internal';
4
+ import { createPrimitive, attrBinding } from 'ng-primitives/state';
3
5
  import { ngpInteractions } from 'ng-primitives/interactions';
4
6
 
7
+ const [NgpBreadcrumbEllipsisStateToken, ngpBreadcrumbEllipsis, injectBreadcrumbEllipsisState, provideBreadcrumbEllipsisState,] = createPrimitive('NgpBreadcrumbEllipsis', ({}) => {
8
+ const element = injectElementRef();
9
+ // Host bindings
10
+ attrBinding(element, 'role', 'presentation');
11
+ attrBinding(element, 'aria-hidden', 'true');
12
+ return {};
13
+ });
14
+
5
15
  /**
6
16
  * Apply `ngpBreadcrumbEllipsis` to elements that represent collapsed breadcrumb items.
7
17
  */
8
18
  class NgpBreadcrumbEllipsis {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbEllipsis, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpBreadcrumbEllipsis, isStandalone: true, selector: "[ngpBreadcrumbEllipsis]", host: { attributes: { "role": "presentation", "aria-hidden": "true" } }, exportAs: ["ngpBreadcrumbEllipsis"], ngImport: i0 }); }
19
+ constructor() {
20
+ ngpBreadcrumbEllipsis({});
21
+ }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbEllipsis, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
23
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpBreadcrumbEllipsis, isStandalone: true, selector: "[ngpBreadcrumbEllipsis]", providers: [provideBreadcrumbEllipsisState()], exportAs: ["ngpBreadcrumbEllipsis"], ngImport: i0 }); }
11
24
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbEllipsis, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbEllipsis, decorators: [{
13
26
  type: Directive,
14
27
  args: [{
15
28
  selector: '[ngpBreadcrumbEllipsis]',
16
29
  exportAs: 'ngpBreadcrumbEllipsis',
17
- host: {
18
- role: 'presentation',
19
- 'aria-hidden': 'true',
20
- },
30
+ providers: [provideBreadcrumbEllipsisState()],
21
31
  }]
22
- }] });
32
+ }], ctorParameters: () => [] });
33
+
34
+ const [NgpBreadcrumbItemStateToken, ngpBreadcrumbItem, injectBreadcrumbItemState, provideBreadcrumbItemState,] = createPrimitive('NgpBreadcrumbItem', ({}) => {
35
+ const element = injectElementRef();
36
+ // Host bindings
37
+ attrBinding(element, 'role', 'listitem');
38
+ return {};
39
+ });
23
40
 
24
41
  /**
25
42
  * Apply `ngpBreadcrumbItem` to each list item in the breadcrumb trail.
26
43
  */
27
44
  class NgpBreadcrumbItem {
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
29
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpBreadcrumbItem, isStandalone: true, selector: "[ngpBreadcrumbItem]", host: { attributes: { "role": "listitem" } }, exportAs: ["ngpBreadcrumbItem"], ngImport: i0 }); }
45
+ constructor() {
46
+ ngpBreadcrumbItem({});
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
49
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpBreadcrumbItem, isStandalone: true, selector: "[ngpBreadcrumbItem]", providers: [provideBreadcrumbItemState()], exportAs: ["ngpBreadcrumbItem"], ngImport: i0 }); }
30
50
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbItem, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbItem, decorators: [{
32
52
  type: Directive,
33
53
  args: [{
34
54
  selector: '[ngpBreadcrumbItem]',
35
55
  exportAs: 'ngpBreadcrumbItem',
36
- host: {
37
- role: 'listitem',
38
- },
56
+ providers: [provideBreadcrumbItemState()],
39
57
  }]
40
- }] });
58
+ }], ctorParameters: () => [] });
59
+
60
+ const [NgpBreadcrumbLinkStateToken, ngpBreadcrumbLink, injectBreadcrumbLinkState, provideBreadcrumbLinkState,] = createPrimitive('NgpBreadcrumbLink', ({}) => {
61
+ // Set up interactions for hover, press, and focus-visible
62
+ ngpInteractions({ hover: true, press: true, focusVisible: true });
63
+ return {};
64
+ });
41
65
 
42
66
  /**
43
67
  * Apply `ngpBreadcrumbLink` to anchors or buttons that navigate to a breadcrumb destination.
44
68
  */
45
69
  class NgpBreadcrumbLink {
46
70
  constructor() {
47
- ngpInteractions({ hover: true, press: true, focusVisible: true });
71
+ ngpBreadcrumbLink({});
48
72
  }
49
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbLink, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
50
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpBreadcrumbLink, isStandalone: true, selector: "[ngpBreadcrumbLink]", exportAs: ["ngpBreadcrumbLink"], ngImport: i0 }); }
73
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbLink, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
74
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpBreadcrumbLink, isStandalone: true, selector: "[ngpBreadcrumbLink]", providers: [provideBreadcrumbLinkState()], exportAs: ["ngpBreadcrumbLink"], ngImport: i0 }); }
51
75
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbLink, decorators: [{
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbLink, decorators: [{
53
77
  type: Directive,
54
78
  args: [{
55
79
  selector: '[ngpBreadcrumbLink]',
56
80
  exportAs: 'ngpBreadcrumbLink',
81
+ providers: [provideBreadcrumbLinkState()],
57
82
  }]
58
83
  }], ctorParameters: () => [] });
59
84
 
85
+ const [NgpBreadcrumbListStateToken, ngpBreadcrumbList, injectBreadcrumbListState, provideBreadcrumbListState,] = createPrimitive('NgpBreadcrumbList', ({}) => {
86
+ const element = injectElementRef();
87
+ // Host bindings
88
+ attrBinding(element, 'role', 'list');
89
+ return {};
90
+ });
91
+
60
92
  /**
61
93
  * Apply `ngpBreadcrumbList` to the ordered list that groups breadcrumb items.
62
94
  */
63
95
  class NgpBreadcrumbList {
64
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbList, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
65
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpBreadcrumbList, isStandalone: true, selector: "[ngpBreadcrumbList]", host: { attributes: { "role": "list" } }, exportAs: ["ngpBreadcrumbList"], ngImport: i0 }); }
96
+ constructor() {
97
+ ngpBreadcrumbList({});
98
+ }
99
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbList, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
100
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpBreadcrumbList, isStandalone: true, selector: "[ngpBreadcrumbList]", providers: [provideBreadcrumbListState()], exportAs: ["ngpBreadcrumbList"], ngImport: i0 }); }
66
101
  }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbList, decorators: [{
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbList, decorators: [{
68
103
  type: Directive,
69
104
  args: [{
70
105
  selector: '[ngpBreadcrumbList]',
71
106
  exportAs: 'ngpBreadcrumbList',
72
- host: {
73
- role: 'list',
74
- },
107
+ providers: [provideBreadcrumbListState()],
75
108
  }]
76
- }] });
109
+ }], ctorParameters: () => [] });
110
+
111
+ const [NgpBreadcrumbPageStateToken, ngpBreadcrumbPage, injectBreadcrumbPageState, provideBreadcrumbPageState,] = createPrimitive('NgpBreadcrumbPage', ({}) => {
112
+ const element = injectElementRef();
113
+ // Host bindings
114
+ attrBinding(element, 'aria-current', 'page');
115
+ return {};
116
+ });
77
117
 
78
118
  /**
79
119
  * Apply `ngpBreadcrumbPage` to non-link content that represents the active page.
80
120
  */
81
121
  class NgpBreadcrumbPage {
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbPage, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
83
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpBreadcrumbPage, isStandalone: true, selector: "[ngpBreadcrumbPage]", host: { attributes: { "aria-current": "page" } }, exportAs: ["ngpBreadcrumbPage"], ngImport: i0 }); }
122
+ constructor() {
123
+ ngpBreadcrumbPage({});
124
+ }
125
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbPage, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
126
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpBreadcrumbPage, isStandalone: true, selector: "[ngpBreadcrumbPage]", providers: [provideBreadcrumbPageState()], exportAs: ["ngpBreadcrumbPage"], ngImport: i0 }); }
84
127
  }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbPage, decorators: [{
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbPage, decorators: [{
86
129
  type: Directive,
87
130
  args: [{
88
131
  selector: '[ngpBreadcrumbPage]',
89
132
  exportAs: 'ngpBreadcrumbPage',
90
- host: {
91
- 'aria-current': 'page',
92
- },
133
+ providers: [provideBreadcrumbPageState()],
93
134
  }]
94
- }] });
135
+ }], ctorParameters: () => [] });
136
+
137
+ const [NgpBreadcrumbSeparatorStateToken, ngpBreadcrumbSeparator, injectBreadcrumbSeparatorState, provideBreadcrumbSeparatorState,] = createPrimitive('NgpBreadcrumbSeparator', ({}) => {
138
+ const element = injectElementRef();
139
+ // Host bindings
140
+ attrBinding(element, 'role', 'presentation');
141
+ attrBinding(element, 'aria-hidden', 'true');
142
+ return {};
143
+ });
95
144
 
96
145
  /**
97
146
  * Apply `ngpBreadcrumbSeparator` between breadcrumb items to render a visual divider.
98
147
  */
99
148
  class NgpBreadcrumbSeparator {
100
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbSeparator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
101
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpBreadcrumbSeparator, isStandalone: true, selector: "[ngpBreadcrumbSeparator]", host: { attributes: { "role": "presentation", "aria-hidden": "true" } }, exportAs: ["ngpBreadcrumbSeparator"], ngImport: i0 }); }
149
+ constructor() {
150
+ ngpBreadcrumbSeparator({});
151
+ }
152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbSeparator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
153
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpBreadcrumbSeparator, isStandalone: true, selector: "[ngpBreadcrumbSeparator]", providers: [provideBreadcrumbSeparatorState()], exportAs: ["ngpBreadcrumbSeparator"], ngImport: i0 }); }
102
154
  }
103
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbSeparator, decorators: [{
155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbSeparator, decorators: [{
104
156
  type: Directive,
105
157
  args: [{
106
158
  selector: '[ngpBreadcrumbSeparator]',
107
159
  exportAs: 'ngpBreadcrumbSeparator',
108
- host: {
109
- role: 'presentation',
110
- 'aria-hidden': 'true',
111
- },
160
+ providers: [provideBreadcrumbSeparatorState()],
112
161
  }]
113
- }] });
162
+ }], ctorParameters: () => [] });
163
+
164
+ const [NgpBreadcrumbsStateToken, ngpBreadcrumbs, injectBreadcrumbsState, provideBreadcrumbsState,] = createPrimitive('NgpBreadcrumbs', ({}) => {
165
+ const element = injectElementRef();
166
+ // Host bindings
167
+ attrBinding(element, 'role', 'navigation');
168
+ return {};
169
+ });
114
170
 
115
171
  /**
116
172
  * Apply `ngpBreadcrumbs` to the navigation element that wraps the breadcrumb trail.
117
173
  */
118
174
  class NgpBreadcrumbs {
119
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbs, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
120
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.11", type: NgpBreadcrumbs, isStandalone: true, selector: "[ngpBreadcrumbs]", host: { attributes: { "role": "navigation" } }, exportAs: ["ngpBreadcrumbs"], ngImport: i0 }); }
175
+ constructor() {
176
+ ngpBreadcrumbs({});
177
+ }
178
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbs, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
179
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: NgpBreadcrumbs, isStandalone: true, selector: "[ngpBreadcrumbs]", providers: [provideBreadcrumbsState()], exportAs: ["ngpBreadcrumbs"], ngImport: i0 }); }
121
180
  }
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NgpBreadcrumbs, decorators: [{
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: NgpBreadcrumbs, decorators: [{
123
182
  type: Directive,
124
183
  args: [{
125
184
  selector: '[ngpBreadcrumbs]',
126
185
  exportAs: 'ngpBreadcrumbs',
127
- host: {
128
- role: 'navigation',
129
- },
186
+ providers: [provideBreadcrumbsState()],
130
187
  }]
131
- }] });
188
+ }], ctorParameters: () => [] });
132
189
 
133
190
  /**
134
191
  * Generated bundle index. Do not edit.
135
192
  */
136
193
 
137
- export { NgpBreadcrumbEllipsis, NgpBreadcrumbItem, NgpBreadcrumbLink, NgpBreadcrumbList, NgpBreadcrumbPage, NgpBreadcrumbSeparator, NgpBreadcrumbs };
194
+ export { NgpBreadcrumbEllipsis, NgpBreadcrumbEllipsisStateToken, NgpBreadcrumbItem, NgpBreadcrumbItemStateToken, NgpBreadcrumbLink, NgpBreadcrumbLinkStateToken, NgpBreadcrumbList, NgpBreadcrumbListStateToken, NgpBreadcrumbPage, NgpBreadcrumbPageStateToken, NgpBreadcrumbSeparator, NgpBreadcrumbSeparatorStateToken, NgpBreadcrumbs, NgpBreadcrumbsStateToken, injectBreadcrumbEllipsisState, injectBreadcrumbItemState, injectBreadcrumbLinkState, injectBreadcrumbListState, injectBreadcrumbPageState, injectBreadcrumbSeparatorState, injectBreadcrumbsState, ngpBreadcrumbEllipsis, ngpBreadcrumbItem, ngpBreadcrumbLink, ngpBreadcrumbList, ngpBreadcrumbPage, ngpBreadcrumbSeparator, ngpBreadcrumbs, provideBreadcrumbEllipsisState, provideBreadcrumbItemState, provideBreadcrumbLinkState, provideBreadcrumbListState, provideBreadcrumbPageState, provideBreadcrumbSeparatorState, provideBreadcrumbsState };
138
195
  //# sourceMappingURL=ng-primitives-breadcrumbs.mjs.map