@slotted/angular 0.1.0-beta.1 → 0.1.0-beta.10

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 (588) hide show
  1. package/README.md +4 -0
  2. package/docs/AGENTS.snippet.md +12 -0
  3. package/docs/alert.json +7 -1
  4. package/docs/alert.md +3 -3
  5. package/docs/app-shell.examples.md +1 -1
  6. package/docs/app-shell.json +5 -5
  7. package/docs/app-shell.md +2 -2
  8. package/docs/avatar.json +22 -1
  9. package/docs/avatar.md +5 -3
  10. package/docs/badge.json +7 -1
  11. package/docs/badge.md +3 -3
  12. package/docs/button-group.json +2 -0
  13. package/docs/button-group.md +1 -1
  14. package/docs/button.json +51 -11
  15. package/docs/button.md +10 -6
  16. package/docs/calendar.json +8 -1
  17. package/docs/calendar.md +1 -0
  18. package/docs/cascader.json +1 -0
  19. package/docs/cascader.md +1 -1
  20. package/docs/chart.examples.md +1 -1
  21. package/docs/chart.json +10 -1
  22. package/docs/chart.md +3 -2
  23. package/docs/checkbox.json +7 -0
  24. package/docs/checkbox.md +1 -0
  25. package/docs/code-block.json +92 -92
  26. package/docs/code-block.md +69 -69
  27. package/docs/combobox.json +1 -0
  28. package/docs/combobox.md +1 -1
  29. package/docs/currency-field.json +40 -1
  30. package/docs/currency-field.md +5 -1
  31. package/docs/data-grid.examples.md +2 -2
  32. package/docs/data-grid.json +24 -7
  33. package/docs/data-grid.md +1 -1
  34. package/docs/data-grid.props.md +6 -4
  35. package/docs/data-list.json +2 -1
  36. package/docs/data-list.md +1 -1
  37. package/docs/date-field.json +9 -1
  38. package/docs/date-field.md +3 -2
  39. package/docs/date-picker.examples.md +36 -0
  40. package/docs/date-picker.json +20 -5
  41. package/docs/date-picker.md +5 -4
  42. package/docs/datetime-field.json +1 -0
  43. package/docs/datetime-field.md +1 -1
  44. package/docs/dialog.examples.md +158 -136
  45. package/docs/dialog.json +35 -11
  46. package/docs/dialog.md +4 -2
  47. package/docs/dialog.props.md +1 -1
  48. package/docs/drawer.json +5 -0
  49. package/docs/drawer.md +1 -0
  50. package/docs/entity-picker.json +19 -4
  51. package/docs/entity-picker.md +8 -6
  52. package/docs/event-calendar.json +7 -0
  53. package/docs/event-calendar.md +1 -0
  54. package/docs/filter-bar.json +118 -118
  55. package/docs/filter-bar.md +79 -79
  56. package/docs/form.json +2 -1
  57. package/docs/form.md +1 -1
  58. package/docs/guidelines/README.md +27 -0
  59. package/docs/guidelines/async-feedback.md +129 -0
  60. package/docs/guidelines/browsing.md +74 -0
  61. package/docs/guidelines/builders.md +97 -0
  62. package/docs/guidelines/composition.md +143 -0
  63. package/docs/guidelines/conversations.md +59 -0
  64. package/docs/guidelines/errors-and-conflicts.md +71 -0
  65. package/docs/guidelines/forms.md +202 -0
  66. package/docs/guidelines/index.md +129 -0
  67. package/docs/guidelines/layout-alignment.md +95 -0
  68. package/docs/guidelines/ledgers.md +45 -0
  69. package/docs/guidelines/list-pages.md +206 -0
  70. package/docs/guidelines/overviews.md +76 -0
  71. package/docs/guidelines/own-elements.md +115 -0
  72. package/docs/guidelines/reading-permissions.md +55 -0
  73. package/docs/guidelines/record-pages.md +178 -0
  74. package/docs/guidelines/reports.md +123 -0
  75. package/docs/guidelines/shell-composition.md +94 -0
  76. package/docs/guidelines/workspaces.md +46 -0
  77. package/docs/icon.json +3 -1
  78. package/docs/icon.md +3 -3
  79. package/docs/index.md +12 -0
  80. package/docs/inline-message.json +14 -2
  81. package/docs/inline-message.md +4 -3
  82. package/docs/list-item.json +9 -1
  83. package/docs/list-item.md +3 -3
  84. package/docs/list.json +19 -1
  85. package/docs/list.md +3 -1
  86. package/docs/markdown.json +79 -79
  87. package/docs/markdown.md +65 -65
  88. package/docs/menu.json +12 -0
  89. package/docs/menu.md +2 -0
  90. package/docs/message.json +7 -1
  91. package/docs/message.md +3 -3
  92. package/docs/multi-select.json +1 -0
  93. package/docs/multi-select.md +1 -1
  94. package/docs/notification-center.json +4 -0
  95. package/docs/notification-center.md +2 -2
  96. package/docs/number-field.json +1 -0
  97. package/docs/number-field.md +1 -1
  98. package/docs/otp-input.json +1 -0
  99. package/docs/otp-input.md +1 -1
  100. package/docs/page-header.json +4 -3
  101. package/docs/page-header.md +2 -2
  102. package/docs/page.json +1 -0
  103. package/docs/page.md +1 -0
  104. package/docs/popover.json +1 -1
  105. package/docs/progress-indicator.json +4 -3
  106. package/docs/progress-indicator.md +4 -4
  107. package/docs/prompt-composer.json +41 -1
  108. package/docs/prompt-composer.md +5 -1
  109. package/docs/rating.json +5 -3
  110. package/docs/rating.md +5 -5
  111. package/docs/section.json +27 -15
  112. package/docs/section.md +11 -9
  113. package/docs/segmented-control.json +36 -12
  114. package/docs/segmented-control.md +17 -1
  115. package/docs/select.json +1 -0
  116. package/docs/select.md +1 -1
  117. package/docs/side-navigation.json +1 -0
  118. package/docs/side-navigation.md +1 -1
  119. package/docs/skills/build-own-element/SKILL.md +90 -0
  120. package/docs/skills/compose-screen/SKILL.md +95 -0
  121. package/docs/skills/index.md +9 -0
  122. package/docs/skills/review-screen/SKILL.md +77 -0
  123. package/docs/skills/theme-app/SKILL.md +87 -0
  124. package/docs/skills/waiting-states/SKILL.md +143 -0
  125. package/docs/sparkline.json +5 -2
  126. package/docs/sparkline.md +4 -4
  127. package/docs/split-button.json +4 -1
  128. package/docs/split-button.md +3 -3
  129. package/docs/stat-card.json +5 -1
  130. package/docs/stat-card.md +3 -3
  131. package/docs/table.examples.md +3 -3
  132. package/docs/table.json +85 -3
  133. package/docs/table.md +12 -1
  134. package/docs/tabs.json +17 -7
  135. package/docs/tabs.md +3 -2
  136. package/docs/tag.json +14 -4
  137. package/docs/tag.md +6 -6
  138. package/docs/tags-input.json +29 -2
  139. package/docs/tags-input.md +4 -1
  140. package/docs/text-field.json +2 -1
  141. package/docs/text-field.md +2 -2
  142. package/docs/textarea.json +1 -0
  143. package/docs/textarea.md +1 -1
  144. package/docs/time-field.json +1 -0
  145. package/docs/time-field.md +1 -1
  146. package/docs/timeline.json +138 -132
  147. package/docs/timeline.md +125 -125
  148. package/docs/toast.json +7 -1
  149. package/docs/toast.md +3 -3
  150. package/docs/toggle-group.json +14 -3
  151. package/docs/toggle-group.md +3 -3
  152. package/docs/toggle.json +12 -3
  153. package/docs/toggle.md +3 -3
  154. package/docs/tokens.md +467 -0
  155. package/docs/tour.json +1 -1
  156. package/docs/typography.json +4 -2
  157. package/docs/typography.md +4 -4
  158. package/fesm2022/slotted-angular-accordion.mjs +4 -2
  159. package/fesm2022/slotted-angular-accordion.mjs.map +1 -1
  160. package/fesm2022/slotted-angular-action-bar.mjs +22 -11
  161. package/fesm2022/slotted-angular-action-bar.mjs.map +1 -1
  162. package/fesm2022/slotted-angular-action-sheet.mjs +42 -29
  163. package/fesm2022/slotted-angular-action-sheet.mjs.map +1 -1
  164. package/fesm2022/slotted-angular-alert.mjs +18 -11
  165. package/fesm2022/slotted-angular-alert.mjs.map +1 -1
  166. package/fesm2022/slotted-angular-app-shell.mjs +111 -61
  167. package/fesm2022/slotted-angular-app-shell.mjs.map +1 -1
  168. package/fesm2022/slotted-angular-aspect-ratio.mjs +4 -2
  169. package/fesm2022/slotted-angular-aspect-ratio.mjs.map +1 -1
  170. package/fesm2022/slotted-angular-attachment.mjs +31 -20
  171. package/fesm2022/slotted-angular-attachment.mjs.map +1 -1
  172. package/fesm2022/slotted-angular-avatar-group.mjs +9 -6
  173. package/fesm2022/slotted-angular-avatar-group.mjs.map +1 -1
  174. package/fesm2022/slotted-angular-avatar.mjs +14 -7
  175. package/fesm2022/slotted-angular-avatar.mjs.map +1 -1
  176. package/fesm2022/slotted-angular-badge.mjs +14 -10
  177. package/fesm2022/slotted-angular-badge.mjs.map +1 -1
  178. package/fesm2022/slotted-angular-breadcrumb.mjs +26 -18
  179. package/fesm2022/slotted-angular-breadcrumb.mjs.map +1 -1
  180. package/fesm2022/slotted-angular-button-group.mjs +7 -4
  181. package/fesm2022/slotted-angular-button-group.mjs.map +1 -1
  182. package/fesm2022/slotted-angular-button.mjs +90 -29
  183. package/fesm2022/slotted-angular-button.mjs.map +1 -1
  184. package/fesm2022/slotted-angular-calendar.mjs +235 -58
  185. package/fesm2022/slotted-angular-calendar.mjs.map +1 -1
  186. package/fesm2022/slotted-angular-card.mjs +18 -16
  187. package/fesm2022/slotted-angular-card.mjs.map +1 -1
  188. package/fesm2022/slotted-angular-carousel.mjs +22 -11
  189. package/fesm2022/slotted-angular-carousel.mjs.map +1 -1
  190. package/fesm2022/slotted-angular-cascader.mjs +166 -66
  191. package/fesm2022/slotted-angular-cascader.mjs.map +1 -1
  192. package/fesm2022/slotted-angular-chart.mjs +53 -20
  193. package/fesm2022/slotted-angular-chart.mjs.map +1 -1
  194. package/fesm2022/slotted-angular-checkbox-group.mjs +5 -3
  195. package/fesm2022/slotted-angular-checkbox-group.mjs.map +1 -1
  196. package/fesm2022/slotted-angular-checkbox.mjs +23 -9
  197. package/fesm2022/slotted-angular-checkbox.mjs.map +1 -1
  198. package/fesm2022/slotted-angular-code-block.mjs +29 -15
  199. package/fesm2022/slotted-angular-code-block.mjs.map +1 -1
  200. package/fesm2022/slotted-angular-collapsible.mjs +20 -15
  201. package/fesm2022/slotted-angular-collapsible.mjs.map +1 -1
  202. package/fesm2022/slotted-angular-color-picker.mjs +77 -22
  203. package/fesm2022/slotted-angular-color-picker.mjs.map +1 -1
  204. package/fesm2022/slotted-angular-column-manager.mjs +68 -31
  205. package/fesm2022/slotted-angular-column-manager.mjs.map +1 -1
  206. package/fesm2022/slotted-angular-combobox.mjs +112 -39
  207. package/fesm2022/slotted-angular-combobox.mjs.map +1 -1
  208. package/fesm2022/slotted-angular-command-palette.mjs +150 -54
  209. package/fesm2022/slotted-angular-command-palette.mjs.map +1 -1
  210. package/fesm2022/slotted-angular-container.mjs +6 -4
  211. package/fesm2022/slotted-angular-container.mjs.map +1 -1
  212. package/fesm2022/slotted-angular-context-menu.mjs +5 -4
  213. package/fesm2022/slotted-angular-context-menu.mjs.map +1 -1
  214. package/fesm2022/slotted-angular-currency-field.mjs +149 -32
  215. package/fesm2022/slotted-angular-currency-field.mjs.map +1 -1
  216. package/fesm2022/slotted-angular-dashboard-grid.mjs +142 -63
  217. package/fesm2022/slotted-angular-dashboard-grid.mjs.map +1 -1
  218. package/fesm2022/slotted-angular-data-grid.mjs +354 -113
  219. package/fesm2022/slotted-angular-data-grid.mjs.map +1 -1
  220. package/fesm2022/slotted-angular-data-list.mjs +83 -50
  221. package/fesm2022/slotted-angular-data-list.mjs.map +1 -1
  222. package/fesm2022/slotted-angular-date-field.mjs +74 -25
  223. package/fesm2022/slotted-angular-date-field.mjs.map +1 -1
  224. package/fesm2022/slotted-angular-date-picker.mjs +112 -40
  225. package/fesm2022/slotted-angular-date-picker.mjs.map +1 -1
  226. package/fesm2022/slotted-angular-date-range-picker.mjs +45 -22
  227. package/fesm2022/slotted-angular-date-range-picker.mjs.map +1 -1
  228. package/fesm2022/slotted-angular-datetime-field.mjs +48 -16
  229. package/fesm2022/slotted-angular-datetime-field.mjs.map +1 -1
  230. package/fesm2022/slotted-angular-datetime-picker.mjs +41 -29
  231. package/fesm2022/slotted-angular-datetime-picker.mjs.map +1 -1
  232. package/fesm2022/slotted-angular-datetime-range-picker.mjs +115 -48
  233. package/fesm2022/slotted-angular-datetime-range-picker.mjs.map +1 -1
  234. package/fesm2022/slotted-angular-description-list.mjs +33 -19
  235. package/fesm2022/slotted-angular-description-list.mjs.map +1 -1
  236. package/fesm2022/slotted-angular-detail-panel.mjs +29 -18
  237. package/fesm2022/slotted-angular-detail-panel.mjs.map +1 -1
  238. package/fesm2022/slotted-angular-dialog.mjs +72 -30
  239. package/fesm2022/slotted-angular-dialog.mjs.map +1 -1
  240. package/fesm2022/slotted-angular-divider.mjs +7 -5
  241. package/fesm2022/slotted-angular-divider.mjs.map +1 -1
  242. package/fesm2022/slotted-angular-drawer.mjs +53 -29
  243. package/fesm2022/slotted-angular-drawer.mjs.map +1 -1
  244. package/fesm2022/slotted-angular-entity-picker.mjs +468 -75
  245. package/fesm2022/slotted-angular-entity-picker.mjs.map +1 -1
  246. package/fesm2022/slotted-angular-event-calendar.mjs +275 -108
  247. package/fesm2022/slotted-angular-event-calendar.mjs.map +1 -1
  248. package/fesm2022/slotted-angular-field-group.mjs +14 -7
  249. package/fesm2022/slotted-angular-field-group.mjs.map +1 -1
  250. package/fesm2022/slotted-angular-field.mjs +35 -15
  251. package/fesm2022/slotted-angular-field.mjs.map +1 -1
  252. package/fesm2022/slotted-angular-filter-bar.mjs +112 -51
  253. package/fesm2022/slotted-angular-filter-bar.mjs.map +1 -1
  254. package/fesm2022/slotted-angular-form.mjs +18 -10
  255. package/fesm2022/slotted-angular-form.mjs.map +1 -1
  256. package/fesm2022/slotted-angular-fullscreen.mjs +14 -8
  257. package/fesm2022/slotted-angular-fullscreen.mjs.map +1 -1
  258. package/fesm2022/slotted-angular-grid.mjs +4 -2
  259. package/fesm2022/slotted-angular-grid.mjs.map +1 -1
  260. package/fesm2022/slotted-angular-highlight.mjs +5 -3
  261. package/fesm2022/slotted-angular-highlight.mjs.map +1 -1
  262. package/fesm2022/slotted-angular-hover-card.mjs +5 -4
  263. package/fesm2022/slotted-angular-hover-card.mjs.map +1 -1
  264. package/fesm2022/slotted-angular-icon.mjs +6 -3
  265. package/fesm2022/slotted-angular-icon.mjs.map +1 -1
  266. package/fesm2022/slotted-angular-image.mjs +13 -10
  267. package/fesm2022/slotted-angular-image.mjs.map +1 -1
  268. package/fesm2022/slotted-angular-import-export-center.mjs +167 -99
  269. package/fesm2022/slotted-angular-import-export-center.mjs.map +1 -1
  270. package/fesm2022/slotted-angular-inline-message.mjs +88 -13
  271. package/fesm2022/slotted-angular-inline-message.mjs.map +1 -1
  272. package/fesm2022/slotted-angular-inline.mjs +4 -2
  273. package/fesm2022/slotted-angular-inline.mjs.map +1 -1
  274. package/fesm2022/slotted-angular-kbd.mjs +11 -7
  275. package/fesm2022/slotted-angular-kbd.mjs.map +1 -1
  276. package/fesm2022/slotted-angular-link.mjs +5 -3
  277. package/fesm2022/slotted-angular-link.mjs.map +1 -1
  278. package/fesm2022/slotted-angular-list-item.mjs +21 -18
  279. package/fesm2022/slotted-angular-list-item.mjs.map +1 -1
  280. package/fesm2022/slotted-angular-list.mjs +37 -22
  281. package/fesm2022/slotted-angular-list.mjs.map +1 -1
  282. package/fesm2022/slotted-angular-listbox.mjs +39 -21
  283. package/fesm2022/slotted-angular-listbox.mjs.map +1 -1
  284. package/fesm2022/slotted-angular-loading-overlay.mjs +59 -22
  285. package/fesm2022/slotted-angular-loading-overlay.mjs.map +1 -1
  286. package/fesm2022/slotted-angular-markdown.mjs +31 -19
  287. package/fesm2022/slotted-angular-markdown.mjs.map +1 -1
  288. package/fesm2022/slotted-angular-menu.mjs +51 -29
  289. package/fesm2022/slotted-angular-menu.mjs.map +1 -1
  290. package/fesm2022/slotted-angular-menubar.mjs +4 -2
  291. package/fesm2022/slotted-angular-menubar.mjs.map +1 -1
  292. package/fesm2022/slotted-angular-message-scroller.mjs +28 -15
  293. package/fesm2022/slotted-angular-message-scroller.mjs.map +1 -1
  294. package/fesm2022/slotted-angular-message.mjs +113 -51
  295. package/fesm2022/slotted-angular-message.mjs.map +1 -1
  296. package/fesm2022/slotted-angular-multi-select.mjs +189 -87
  297. package/fesm2022/slotted-angular-multi-select.mjs.map +1 -1
  298. package/fesm2022/slotted-angular-navigation-menu.mjs +34 -26
  299. package/fesm2022/slotted-angular-navigation-menu.mjs.map +1 -1
  300. package/fesm2022/slotted-angular-notification-center.mjs +108 -65
  301. package/fesm2022/slotted-angular-notification-center.mjs.map +1 -1
  302. package/fesm2022/slotted-angular-number-field.mjs +23 -11
  303. package/fesm2022/slotted-angular-number-field.mjs.map +1 -1
  304. package/fesm2022/slotted-angular-otp-input.mjs +13 -8
  305. package/fesm2022/slotted-angular-otp-input.mjs.map +1 -1
  306. package/fesm2022/slotted-angular-page-header.mjs +75 -45
  307. package/fesm2022/slotted-angular-page-header.mjs.map +1 -1
  308. package/fesm2022/slotted-angular-page.mjs +38 -10
  309. package/fesm2022/slotted-angular-page.mjs.map +1 -1
  310. package/fesm2022/slotted-angular-pagination.mjs +35 -22
  311. package/fesm2022/slotted-angular-pagination.mjs.map +1 -1
  312. package/fesm2022/slotted-angular-popover.mjs +32 -19
  313. package/fesm2022/slotted-angular-popover.mjs.map +1 -1
  314. package/fesm2022/slotted-angular-progress-indicator.mjs +236 -52
  315. package/fesm2022/slotted-angular-progress-indicator.mjs.map +1 -1
  316. package/fesm2022/slotted-angular-prompt-composer.mjs +41 -20
  317. package/fesm2022/slotted-angular-prompt-composer.mjs.map +1 -1
  318. package/fesm2022/slotted-angular-prose.mjs +14 -11
  319. package/fesm2022/slotted-angular-prose.mjs.map +1 -1
  320. package/fesm2022/slotted-angular-radio-group.mjs +15 -9
  321. package/fesm2022/slotted-angular-radio-group.mjs.map +1 -1
  322. package/fesm2022/slotted-angular-rating.mjs +138 -82
  323. package/fesm2022/slotted-angular-rating.mjs.map +1 -1
  324. package/fesm2022/slotted-angular-result-state.mjs +16 -12
  325. package/fesm2022/slotted-angular-result-state.mjs.map +1 -1
  326. package/fesm2022/slotted-angular-saved-views.mjs +43 -16
  327. package/fesm2022/slotted-angular-saved-views.mjs.map +1 -1
  328. package/fesm2022/slotted-angular-scroll-area.mjs +13 -5
  329. package/fesm2022/slotted-angular-scroll-area.mjs.map +1 -1
  330. package/fesm2022/slotted-angular-section.mjs +53 -18
  331. package/fesm2022/slotted-angular-section.mjs.map +1 -1
  332. package/fesm2022/slotted-angular-segmented-control.mjs +37 -11
  333. package/fesm2022/slotted-angular-segmented-control.mjs.map +1 -1
  334. package/fesm2022/slotted-angular-select.mjs +184 -94
  335. package/fesm2022/slotted-angular-select.mjs.map +1 -1
  336. package/fesm2022/slotted-angular-side-navigation.mjs +46 -35
  337. package/fesm2022/slotted-angular-side-navigation.mjs.map +1 -1
  338. package/fesm2022/slotted-angular-skeleton.mjs +32 -16
  339. package/fesm2022/slotted-angular-skeleton.mjs.map +1 -1
  340. package/fesm2022/slotted-angular-slider.mjs +31 -11
  341. package/fesm2022/slotted-angular-slider.mjs.map +1 -1
  342. package/fesm2022/slotted-angular-sparkline.mjs +41 -14
  343. package/fesm2022/slotted-angular-sparkline.mjs.map +1 -1
  344. package/fesm2022/slotted-angular-split-button.mjs +25 -11
  345. package/fesm2022/slotted-angular-split-button.mjs.map +1 -1
  346. package/fesm2022/slotted-angular-splitter.mjs +11 -9
  347. package/fesm2022/slotted-angular-splitter.mjs.map +1 -1
  348. package/fesm2022/slotted-angular-stack.mjs +4 -2
  349. package/fesm2022/slotted-angular-stack.mjs.map +1 -1
  350. package/fesm2022/slotted-angular-stat-card.mjs +35 -28
  351. package/fesm2022/slotted-angular-stat-card.mjs.map +1 -1
  352. package/fesm2022/slotted-angular-status-indicator.mjs +22 -8
  353. package/fesm2022/slotted-angular-status-indicator.mjs.map +1 -1
  354. package/fesm2022/slotted-angular-stepper.mjs +40 -15
  355. package/fesm2022/slotted-angular-stepper.mjs.map +1 -1
  356. package/fesm2022/slotted-angular-switch.mjs +15 -10
  357. package/fesm2022/slotted-angular-switch.mjs.map +1 -1
  358. package/fesm2022/slotted-angular-table-of-contents.mjs +29 -21
  359. package/fesm2022/slotted-angular-table-of-contents.mjs.map +1 -1
  360. package/fesm2022/slotted-angular-table.mjs +243 -73
  361. package/fesm2022/slotted-angular-table.mjs.map +1 -1
  362. package/fesm2022/slotted-angular-tabs.mjs +42 -18
  363. package/fesm2022/slotted-angular-tabs.mjs.map +1 -1
  364. package/fesm2022/slotted-angular-tag.mjs +19 -12
  365. package/fesm2022/slotted-angular-tag.mjs.map +1 -1
  366. package/fesm2022/slotted-angular-tags-input.mjs +253 -28
  367. package/fesm2022/slotted-angular-tags-input.mjs.map +1 -1
  368. package/fesm2022/slotted-angular-text-field.mjs +49 -15
  369. package/fesm2022/slotted-angular-text-field.mjs.map +1 -1
  370. package/fesm2022/slotted-angular-textarea.mjs +5 -3
  371. package/fesm2022/slotted-angular-textarea.mjs.map +1 -1
  372. package/fesm2022/slotted-angular-time-field.mjs +48 -14
  373. package/fesm2022/slotted-angular-time-field.mjs.map +1 -1
  374. package/fesm2022/slotted-angular-time-picker.mjs +32 -20
  375. package/fesm2022/slotted-angular-time-picker.mjs.map +1 -1
  376. package/fesm2022/slotted-angular-time-range-picker.mjs +113 -46
  377. package/fesm2022/slotted-angular-time-range-picker.mjs.map +1 -1
  378. package/fesm2022/slotted-angular-timeline.mjs +135 -64
  379. package/fesm2022/slotted-angular-timeline.mjs.map +1 -1
  380. package/fesm2022/slotted-angular-toast.mjs +43 -31
  381. package/fesm2022/slotted-angular-toast.mjs.map +1 -1
  382. package/fesm2022/slotted-angular-toggle-group.mjs +25 -8
  383. package/fesm2022/slotted-angular-toggle-group.mjs.map +1 -1
  384. package/fesm2022/slotted-angular-toggle.mjs +9 -4
  385. package/fesm2022/slotted-angular-toggle.mjs.map +1 -1
  386. package/fesm2022/slotted-angular-toolbar.mjs +22 -11
  387. package/fesm2022/slotted-angular-toolbar.mjs.map +1 -1
  388. package/fesm2022/slotted-angular-tooltip.mjs +15 -6
  389. package/fesm2022/slotted-angular-tooltip.mjs.map +1 -1
  390. package/fesm2022/slotted-angular-top-navigation.mjs +64 -44
  391. package/fesm2022/slotted-angular-top-navigation.mjs.map +1 -1
  392. package/fesm2022/slotted-angular-tour.mjs +47 -22
  393. package/fesm2022/slotted-angular-tour.mjs.map +1 -1
  394. package/fesm2022/slotted-angular-transfer.mjs +69 -30
  395. package/fesm2022/slotted-angular-transfer.mjs.map +1 -1
  396. package/fesm2022/slotted-angular-tree.mjs +74 -26
  397. package/fesm2022/slotted-angular-tree.mjs.map +1 -1
  398. package/fesm2022/slotted-angular-typography.mjs +8 -4
  399. package/fesm2022/slotted-angular-typography.mjs.map +1 -1
  400. package/fesm2022/slotted-angular-upload.mjs +125 -57
  401. package/fesm2022/slotted-angular-upload.mjs.map +1 -1
  402. package/fesm2022/slotted-angular-visually-hidden.mjs +4 -2
  403. package/fesm2022/slotted-angular-visually-hidden.mjs.map +1 -1
  404. package/fesm2022/slotted-angular-wizard.mjs +163 -65
  405. package/fesm2022/slotted-angular-wizard.mjs.map +1 -1
  406. package/package.json +3 -3
  407. package/types/slotted-angular-accordion.d.ts.map +1 -1
  408. package/types/slotted-angular-action-bar.d.ts.map +1 -1
  409. package/types/slotted-angular-action-sheet.d.ts.map +1 -1
  410. package/types/slotted-angular-alert.d.ts +2 -2
  411. package/types/slotted-angular-alert.d.ts.map +1 -1
  412. package/types/slotted-angular-app-shell.d.ts +11 -3
  413. package/types/slotted-angular-app-shell.d.ts.map +1 -1
  414. package/types/slotted-angular-aspect-ratio.d.ts.map +1 -1
  415. package/types/slotted-angular-attachment.d.ts +1 -1
  416. package/types/slotted-angular-attachment.d.ts.map +1 -1
  417. package/types/slotted-angular-avatar-group.d.ts.map +1 -1
  418. package/types/slotted-angular-avatar.d.ts +11 -3
  419. package/types/slotted-angular-avatar.d.ts.map +1 -1
  420. package/types/slotted-angular-badge.d.ts +1 -1
  421. package/types/slotted-angular-badge.d.ts.map +1 -1
  422. package/types/slotted-angular-breadcrumb.d.ts.map +1 -1
  423. package/types/slotted-angular-button-group.d.ts +1 -1
  424. package/types/slotted-angular-button-group.d.ts.map +1 -1
  425. package/types/slotted-angular-button.d.ts +33 -13
  426. package/types/slotted-angular-button.d.ts.map +1 -1
  427. package/types/slotted-angular-calendar.d.ts +30 -2
  428. package/types/slotted-angular-calendar.d.ts.map +1 -1
  429. package/types/slotted-angular-card.d.ts.map +1 -1
  430. package/types/slotted-angular-carousel.d.ts.map +1 -1
  431. package/types/slotted-angular-cascader.d.ts.map +1 -1
  432. package/types/slotted-angular-chart.d.ts +10 -0
  433. package/types/slotted-angular-chart.d.ts.map +1 -1
  434. package/types/slotted-angular-checkbox-group.d.ts.map +1 -1
  435. package/types/slotted-angular-checkbox.d.ts +7 -1
  436. package/types/slotted-angular-checkbox.d.ts.map +1 -1
  437. package/types/slotted-angular-code-block.d.ts +1 -1
  438. package/types/slotted-angular-code-block.d.ts.map +1 -1
  439. package/types/slotted-angular-collapsible.d.ts +1 -1
  440. package/types/slotted-angular-collapsible.d.ts.map +1 -1
  441. package/types/slotted-angular-color-picker.d.ts.map +1 -1
  442. package/types/slotted-angular-column-manager.d.ts.map +1 -1
  443. package/types/slotted-angular-combobox.d.ts +5 -1
  444. package/types/slotted-angular-combobox.d.ts.map +1 -1
  445. package/types/slotted-angular-command-palette.d.ts +10 -1
  446. package/types/slotted-angular-command-palette.d.ts.map +1 -1
  447. package/types/slotted-angular-container.d.ts.map +1 -1
  448. package/types/slotted-angular-context-menu.d.ts.map +1 -1
  449. package/types/slotted-angular-currency-field.d.ts +63 -15
  450. package/types/slotted-angular-currency-field.d.ts.map +1 -1
  451. package/types/slotted-angular-dashboard-grid.d.ts.map +1 -1
  452. package/types/slotted-angular-data-grid.d.ts +49 -4
  453. package/types/slotted-angular-data-grid.d.ts.map +1 -1
  454. package/types/slotted-angular-data-list.d.ts.map +1 -1
  455. package/types/slotted-angular-date-field.d.ts +11 -1
  456. package/types/slotted-angular-date-field.d.ts.map +1 -1
  457. package/types/slotted-angular-date-picker.d.ts +38 -12
  458. package/types/slotted-angular-date-picker.d.ts.map +1 -1
  459. package/types/slotted-angular-date-range-picker.d.ts +0 -1
  460. package/types/slotted-angular-date-range-picker.d.ts.map +1 -1
  461. package/types/slotted-angular-datetime-field.d.ts.map +1 -1
  462. package/types/slotted-angular-datetime-picker.d.ts +0 -1
  463. package/types/slotted-angular-datetime-picker.d.ts.map +1 -1
  464. package/types/slotted-angular-datetime-range-picker.d.ts +0 -1
  465. package/types/slotted-angular-datetime-range-picker.d.ts.map +1 -1
  466. package/types/slotted-angular-description-list.d.ts.map +1 -1
  467. package/types/slotted-angular-detail-panel.d.ts.map +1 -1
  468. package/types/slotted-angular-dialog.d.ts +10 -3
  469. package/types/slotted-angular-dialog.d.ts.map +1 -1
  470. package/types/slotted-angular-divider.d.ts.map +1 -1
  471. package/types/slotted-angular-drawer.d.ts +7 -1
  472. package/types/slotted-angular-drawer.d.ts.map +1 -1
  473. package/types/slotted-angular-entity-picker.d.ts +63 -15
  474. package/types/slotted-angular-entity-picker.d.ts.map +1 -1
  475. package/types/slotted-angular-event-calendar.d.ts +9 -2
  476. package/types/slotted-angular-event-calendar.d.ts.map +1 -1
  477. package/types/slotted-angular-field-group.d.ts.map +1 -1
  478. package/types/slotted-angular-field.d.ts.map +1 -1
  479. package/types/slotted-angular-filter-bar.d.ts.map +1 -1
  480. package/types/slotted-angular-form.d.ts.map +1 -1
  481. package/types/slotted-angular-fullscreen.d.ts.map +1 -1
  482. package/types/slotted-angular-grid.d.ts.map +1 -1
  483. package/types/slotted-angular-highlight.d.ts.map +1 -1
  484. package/types/slotted-angular-hover-card.d.ts.map +1 -1
  485. package/types/slotted-angular-icon.d.ts +2 -2
  486. package/types/slotted-angular-icon.d.ts.map +1 -1
  487. package/types/slotted-angular-image.d.ts.map +1 -1
  488. package/types/slotted-angular-import-export-center.d.ts.map +1 -1
  489. package/types/slotted-angular-inline-message.d.ts +25 -25
  490. package/types/slotted-angular-inline-message.d.ts.map +1 -1
  491. package/types/slotted-angular-inline.d.ts.map +1 -1
  492. package/types/slotted-angular-kbd.d.ts.map +1 -1
  493. package/types/slotted-angular-link.d.ts.map +1 -1
  494. package/types/slotted-angular-list-item.d.ts +1 -1
  495. package/types/slotted-angular-list-item.d.ts.map +1 -1
  496. package/types/slotted-angular-list.d.ts +42 -27
  497. package/types/slotted-angular-list.d.ts.map +1 -1
  498. package/types/slotted-angular-listbox.d.ts.map +1 -1
  499. package/types/slotted-angular-loading-overlay.d.ts.map +1 -1
  500. package/types/slotted-angular-markdown.d.ts.map +1 -1
  501. package/types/slotted-angular-menu.d.ts +11 -2
  502. package/types/slotted-angular-menu.d.ts.map +1 -1
  503. package/types/slotted-angular-menubar.d.ts.map +1 -1
  504. package/types/slotted-angular-message-scroller.d.ts.map +1 -1
  505. package/types/slotted-angular-message.d.ts +1 -1
  506. package/types/slotted-angular-message.d.ts.map +1 -1
  507. package/types/slotted-angular-multi-select.d.ts +15 -1
  508. package/types/slotted-angular-multi-select.d.ts.map +1 -1
  509. package/types/slotted-angular-navigation-menu.d.ts.map +1 -1
  510. package/types/slotted-angular-notification-center.d.ts +1 -1
  511. package/types/slotted-angular-notification-center.d.ts.map +1 -1
  512. package/types/slotted-angular-number-field.d.ts.map +1 -1
  513. package/types/slotted-angular-otp-input.d.ts.map +1 -1
  514. package/types/slotted-angular-page-header.d.ts +4 -4
  515. package/types/slotted-angular-page-header.d.ts.map +1 -1
  516. package/types/slotted-angular-page.d.ts.map +1 -1
  517. package/types/slotted-angular-pagination.d.ts.map +1 -1
  518. package/types/slotted-angular-popover.d.ts.map +1 -1
  519. package/types/slotted-angular-progress-indicator.d.ts +8 -1
  520. package/types/slotted-angular-progress-indicator.d.ts.map +1 -1
  521. package/types/slotted-angular-prompt-composer.d.ts +11 -2
  522. package/types/slotted-angular-prompt-composer.d.ts.map +1 -1
  523. package/types/slotted-angular-prose.d.ts.map +1 -1
  524. package/types/slotted-angular-radio-group.d.ts.map +1 -1
  525. package/types/slotted-angular-rating.d.ts +1 -1
  526. package/types/slotted-angular-rating.d.ts.map +1 -1
  527. package/types/slotted-angular-result-state.d.ts.map +1 -1
  528. package/types/slotted-angular-saved-views.d.ts.map +1 -1
  529. package/types/slotted-angular-scroll-area.d.ts.map +1 -1
  530. package/types/slotted-angular-section.d.ts +11 -3
  531. package/types/slotted-angular-section.d.ts.map +1 -1
  532. package/types/slotted-angular-segmented-control.d.ts +15 -2
  533. package/types/slotted-angular-segmented-control.d.ts.map +1 -1
  534. package/types/slotted-angular-select.d.ts +12 -2
  535. package/types/slotted-angular-select.d.ts.map +1 -1
  536. package/types/slotted-angular-side-navigation.d.ts.map +1 -1
  537. package/types/slotted-angular-skeleton.d.ts.map +1 -1
  538. package/types/slotted-angular-slider.d.ts.map +1 -1
  539. package/types/slotted-angular-sparkline.d.ts +7 -1
  540. package/types/slotted-angular-sparkline.d.ts.map +1 -1
  541. package/types/slotted-angular-split-button.d.ts +2 -2
  542. package/types/slotted-angular-split-button.d.ts.map +1 -1
  543. package/types/slotted-angular-splitter.d.ts.map +1 -1
  544. package/types/slotted-angular-stack.d.ts.map +1 -1
  545. package/types/slotted-angular-stat-card.d.ts +1 -1
  546. package/types/slotted-angular-stat-card.d.ts.map +1 -1
  547. package/types/slotted-angular-status-indicator.d.ts +1 -1
  548. package/types/slotted-angular-status-indicator.d.ts.map +1 -1
  549. package/types/slotted-angular-stepper.d.ts +1 -1
  550. package/types/slotted-angular-stepper.d.ts.map +1 -1
  551. package/types/slotted-angular-switch.d.ts.map +1 -1
  552. package/types/slotted-angular-table-of-contents.d.ts.map +1 -1
  553. package/types/slotted-angular-table.d.ts +63 -6
  554. package/types/slotted-angular-table.d.ts.map +1 -1
  555. package/types/slotted-angular-tabs.d.ts +3 -4
  556. package/types/slotted-angular-tabs.d.ts.map +1 -1
  557. package/types/slotted-angular-tag.d.ts +1 -1
  558. package/types/slotted-angular-tag.d.ts.map +1 -1
  559. package/types/slotted-angular-tags-input.d.ts +33 -1
  560. package/types/slotted-angular-tags-input.d.ts.map +1 -1
  561. package/types/slotted-angular-text-field.d.ts.map +1 -1
  562. package/types/slotted-angular-textarea.d.ts.map +1 -1
  563. package/types/slotted-angular-theme.d.ts +1 -1
  564. package/types/slotted-angular-time-field.d.ts.map +1 -1
  565. package/types/slotted-angular-time-picker.d.ts +0 -1
  566. package/types/slotted-angular-time-picker.d.ts.map +1 -1
  567. package/types/slotted-angular-time-range-picker.d.ts +0 -1
  568. package/types/slotted-angular-time-range-picker.d.ts.map +1 -1
  569. package/types/slotted-angular-timeline.d.ts +1 -1
  570. package/types/slotted-angular-timeline.d.ts.map +1 -1
  571. package/types/slotted-angular-toast.d.ts +3 -3
  572. package/types/slotted-angular-toast.d.ts.map +1 -1
  573. package/types/slotted-angular-toggle-group.d.ts +8 -2
  574. package/types/slotted-angular-toggle-group.d.ts.map +1 -1
  575. package/types/slotted-angular-toggle.d.ts +1 -1
  576. package/types/slotted-angular-toggle.d.ts.map +1 -1
  577. package/types/slotted-angular-toolbar.d.ts.map +1 -1
  578. package/types/slotted-angular-tooltip.d.ts.map +1 -1
  579. package/types/slotted-angular-top-navigation.d.ts.map +1 -1
  580. package/types/slotted-angular-tour.d.ts.map +1 -1
  581. package/types/slotted-angular-transfer.d.ts.map +1 -1
  582. package/types/slotted-angular-tree.d.ts.map +1 -1
  583. package/types/slotted-angular-typography.d.ts +1 -1
  584. package/types/slotted-angular-typography.d.ts.map +1 -1
  585. package/types/slotted-angular-upload.d.ts +2 -2
  586. package/types/slotted-angular-upload.d.ts.map +1 -1
  587. package/types/slotted-angular-visually-hidden.d.ts.map +1 -1
  588. package/types/slotted-angular-wizard.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"slotted-angular-pagination.mjs","sources":["../../pagination/src/pagination.constants.ts","../../pagination/src/pagination.ts","../../pagination/src/slotted-angular-pagination.ts"],"sourcesContent":["import { InjectionToken, inject } from '@angular/core';\n\nexport type PaginationPageReason = 'pointer' | 'keyboard' | 'programmatic';\nexport type PaginationPageSizeReason = 'select' | 'programmatic';\nexport type PaginationLive = 'polite' | 'off';\n\nexport const PAGINATION_DEFAULT_PAGE_SIZE = 20;\nexport const PAGINATION_DEFAULT_PAGE_SIZE_OPTIONS = [10, 20, 50, 100];\n\nexport interface PaginationDefaults {\n boundaryCount?: number;\n defaultPageSize?: number;\n live?: PaginationLive;\n pageSizeOptions?: readonly number[];\n siblingCount?: number;\n}\n\nexport const PAGINATION_DEFAULTS_TOKEN = new InjectionToken<PaginationDefaults>(\n 'slotted pagination defaults',\n { providedIn: 'root', factory: (): PaginationDefaults => ({}) },\n);\n\n/**\n * An application decides once how wide its rows of pages are, how many items a\n * page holds, and whether a page change is announced. A paginator that states\n * any of those itself still wins: an explicit input is never overridden by the\n * token. Its words come from the language in force (`provideSlotted`).\n */\nexport function providePaginationDefaults(defaults: PaginationDefaults) {\n return { provide: PAGINATION_DEFAULTS_TOKEN, useValue: defaults };\n}\n\nexport function injectPaginationDefaults(): PaginationDefaults {\n return inject(PAGINATION_DEFAULTS_TOKEN);\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n Directive,\n effect,\n ElementRef,\n HostAttributeToken,\n inject,\n input,\n numberAttribute,\n output,\n signal,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\nimport { injectMessages } from '@slotted/angular/i18n';\nimport { SlGlyph, SlIcon } from '@slotted/angular/icon';\nimport {\n paginationMessages,\n type PaginationMessages,\n type PartialMessages,\n} from '@slotted/core/i18n';\nimport { clampPage, itemRange, pageItems, totalPages } from '@slotted/core/pagination';\nimport { createControllable } from '@slotted/core/state';\nimport type { ChangeRequest } from '@slotted/core/state';\n\nimport {\n injectPaginationDefaults,\n PAGINATION_DEFAULT_PAGE_SIZE,\n PAGINATION_DEFAULT_PAGE_SIZE_OPTIONS,\n type PaginationLive,\n type PaginationPageReason,\n type PaginationPageSizeReason,\n} from './pagination.constants';\n\n/**\n * Moving between pages of a collection the consumer owns.\n *\n * **It never fetches and never slices.** The collection is the consumer's, and\n * a family that held a copy of it would hold a stale one. `count` and\n * `pageSize` are all the arithmetic needs, and `@slotted/core/pagination` does\n * that arithmetic once for both bindings.\n *\n * **It never invents a total.** A collection whose total the server does not\n * know states no `count`; the row of numbers is then not drawn at all, and the\n * two triggers plus a sentence are the whole paginator.\n *\n * **The page can move by itself, twice.** A collection that shrinks under a\n * reader leaves them past the end, and a change of page size moves the window\n * they are looking through. Both emit `programmatic`, so a consumer holding\n * the value follows rather than guessing.\n */\n@Component({\n selector: 'nav[slPagination]',\n standalone: true,\n template: '<ng-content></ng-content>',\n styleUrls: ['../../../styles/src/pagination/pagination.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slPagination',\n host: {\n 'data-ui': 'pagination',\n 'data-part': 'root',\n '[attr.aria-label]': 'accessibleLabel()',\n '[attr.aria-busy]': 'loading() ? \"true\" : null',\n '[attr.data-disabled]': 'disabled() ? \"\" : null',\n '[attr.data-loading]': 'loading() ? \"\" : null',\n },\n})\nexport class SlPagination {\n /**\n * Present means controlled, for the life of the component. Both values take\n * `undefined` as their unset state rather than a number, because a paginator\n * that read a default as the consumer's answer would never own its own page.\n */\n readonly pageValue = input(undefined, { alias: 'page', transform: optionalNumber });\n readonly defaultPage = input(1, { transform: numberAttribute });\n readonly pageSizeValue = input(undefined, { alias: 'pageSize', transform: optionalNumber });\n readonly defaultPageSize = input(undefined, { transform: optionalNumber });\n readonly count = input(undefined, { transform: optionalNumber });\n readonly siblingCount = input(undefined, { transform: optionalNumber });\n readonly boundaryCount = input(undefined, { transform: optionalNumber });\n readonly pageSizeOptions = input<readonly number[] | undefined>(undefined);\n /**\n * Words laid over the catalog of the language in force, key by key: the\n * landmark's name (`label`), the controls, and the sentences.\n */\n readonly messages = input<PartialMessages<PaginationMessages> | undefined>(undefined);\n readonly live = input<PaginationLive | undefined>(undefined);\n readonly disabled = input(false, { transform: booleanAttribute });\n readonly loading = input(false, { transform: booleanAttribute });\n /** Turns every page and every trigger into an anchor with a destination. */\n readonly itemHref = input<((page: number) => string) | undefined>(undefined);\n\n /**\n * Emitted before either value moves, carrying what it replaces, the reason\n * and the event. Neither is the second half of a two-way binding: one slot\n * can carry none of those.\n */\n readonly pageChange = output<ChangeRequest<number>>();\n readonly pageSizeChange = output<ChangeRequest<number>>();\n\n private readonly ownPage = signal<number | undefined>(undefined);\n private readonly ownSize = signal<number | undefined>(undefined);\n\n readonly page = computed(() => this.pageValue() ?? this.ownPage() ?? this.defaultPage());\n readonly pageSize = computed(\n () =>\n this.pageSizeValue() ??\n this.ownSize() ??\n this.defaultPageSize() ??\n this.defaults.defaultPageSize ??\n PAGINATION_DEFAULT_PAGE_SIZE,\n );\n\n private readonly defaults = injectPaginationDefaults();\n private readonly ownLabel = inject(new HostAttributeToken('aria-label'), { optional: true });\n\n /** The family's words in the language in force, with this paginator's `messages` laid over them. */\n readonly t = injectMessages(paginationMessages, this.messages);\n readonly accessibleLabel = computed(() => this.ownLabel ?? this.t('label'));\n readonly liveValue = computed(() => this.live() ?? this.defaults.live ?? 'polite');\n readonly sizeOptions = computed(\n () =>\n this.pageSizeOptions() ??\n this.defaults.pageSizeOptions ??\n PAGINATION_DEFAULT_PAGE_SIZE_OPTIONS,\n );\n\n readonly pages = computed(() => {\n const count = this.count();\n return count === undefined\n ? Number.POSITIVE_INFINITY\n : totalPages({ count, pageSize: this.pageSize() });\n });\n readonly currentPage = computed(() => {\n const count = this.count();\n return count === undefined\n ? Math.max(1, Math.trunc(this.page()))\n : clampPage(this.page(), this.pages());\n });\n readonly items = computed(() => {\n const count = this.count();\n if (count === undefined) return [];\n return pageItems({\n boundaryCount: this.boundaryCount() ?? this.defaults.boundaryCount ?? 1,\n count,\n page: this.currentPage(),\n pageSize: this.pageSize(),\n siblingCount: this.siblingCount() ?? this.defaults.siblingCount ?? 1,\n });\n });\n readonly range = computed(() => {\n const count = this.count();\n return count === undefined\n ? { start: 0, end: 0 }\n : itemRange({ count, page: this.currentPage(), pageSize: this.pageSize() });\n });\n\n readonly inert = computed(() => this.disabled() || this.loading());\n readonly canGoPrevious = computed(() => !this.inert() && this.currentPage() > 1);\n readonly canGoNext = computed(\n () => !this.inert() && (this.count() === undefined || this.currentPage() < this.pages()),\n );\n\n constructor() {\n /**\n * The one move nobody asked for: the collection shrank under a reader who\n * was past its new end. It runs in an effect rather than in the computed\n * that noticed it, because a computed that emitted an event would emit one\n * every time anything read it.\n */\n effect(() => {\n const clamped = this.currentPage();\n if (untracked(() => this.page()) === clamped) return;\n this.move(clamped, 'programmatic');\n });\n }\n\n goToPage(next: number, reason: PaginationPageReason = 'pointer', source?: Event) {\n if (this.inert()) return;\n const count = this.count();\n const target =\n count === undefined ? Math.max(1, Math.trunc(next)) : clampPage(next, this.pages());\n this.move(target, reason, source);\n }\n\n reset(source?: Event) {\n this.goToPage(this.defaultPage(), 'programmatic', source);\n }\n\n next(reason: PaginationPageReason = 'pointer', source?: Event) {\n this.goToPage(this.currentPage() + 1, reason, source);\n }\n\n previous(reason: PaginationPageReason = 'pointer', source?: Event) {\n this.goToPage(this.currentPage() - 1, reason, source);\n }\n\n /**\n * Changing how many rows a page holds moves the reader, and where they land\n * is a decision. Clamping leaves someone on page seven at the end of the\n * collection; resetting to page one throws away where they were. Angular\n * Material takes the third answer and so does this: the first item of the\n * current page stays visible.\n */\n setPageSize(next: number, reason: PaginationPageSizeReason = 'select', source?: Event) {\n if (this.inert()) return;\n const size = Math.max(1, Math.trunc(next));\n const previous = this.pageSize();\n if (size === previous) return;\n\n const firstItem = (this.currentPage() - 1) * previous;\n const state = createControllable<number>({\n controlled: this.pageSizeValue(),\n initial: previous,\n onRequest: (request) => this.pageSizeChange.emit(request),\n });\n if (!state.request(size, reason, source)) return;\n this.ownSize.set(size);\n\n const count = this.count();\n if (count === undefined) return;\n const kept = clampPage(Math.floor(firstItem / size) + 1, totalPages({ count, pageSize: size }));\n if (kept !== this.currentPage()) this.move(kept, 'programmatic', source);\n }\n\n private move(next: number, reason: PaginationPageReason, source?: Event) {\n const previous = untracked(() => this.page());\n const state = createControllable<number>({\n controlled: untracked(() => this.pageValue()),\n initial: previous,\n onRequest: (request) => this.pageChange.emit(request),\n });\n if (state.request(next, reason, source)) this.ownPage.set(next);\n }\n}\n\n/**\n * A control that moves the page, on the consumer's own `button` or `a`.\n *\n * A button that cannot move takes the native `disabled`. An anchor cannot: it\n * has no such attribute, and one that kept its `href` would still navigate on\n * a middle click — so an unavailable link loses its destination and says\n * `aria-disabled`, the shape the `link` family already ships.\n */\n@Directive()\nabstract class SlPaginationTrigger {\n protected readonly pagination = inject(SlPagination);\n private readonly ownLabel = inject(new HostAttributeToken('aria-label'), { optional: true });\n\n abstract readonly part: 'first' | 'previous' | 'next' | 'last';\n protected abstract target(): number;\n protected abstract usable(): boolean;\n protected abstract defaultLabel(): string;\n\n /** A button says it cannot move with the native `disabled`; only an anchor needs `aria-disabled`. */\n readonly anchor = inject<ElementRef<HTMLElement>>(ElementRef).nativeElement.tagName === 'A';\n readonly accessibleLabel = computed(() => this.ownLabel ?? this.defaultLabel());\n readonly unavailable = computed(() => !this.usable());\n readonly href = computed(() =>\n this.unavailable() ? null : (this.pagination.itemHref()?.(this.target()) ?? null),\n );\n\n activate(event: Event) {\n if (this.unavailable()) return;\n this.pagination.goToPage(this.target(), 'pointer', event);\n }\n}\n\n/**\n * One chevron for a step and two for an end, drawn unless the consumer wrote\n * content of their own. Every one points along the reading direction and\n * mirrors with it; the stylesheet turns the two that point back.\n */\nconst STEP_TRIGGER_TEMPLATE = `<ng-content\n ><span slIcon directional><svg slGlyph name=\"chevron-right\"></svg></span\n></ng-content>`;\nconst END_TRIGGER_TEMPLATE = `<ng-content\n ><span slIcon directional><svg slGlyph name=\"chevrons-right\"></svg></span\n></ng-content>`;\n\nconst triggerHost = {\n '[attr.aria-label]': 'accessibleLabel()',\n '[attr.aria-disabled]': 'anchor && unavailable() ? \"true\" : null',\n '[attr.data-loading]': 'pagination.loading() ? \"\" : null',\n '[attr.href]': 'href()',\n '[disabled]': 'unavailable()',\n '(click)': 'activate($event)',\n} as const;\n\n@Component({\n selector: '[slPaginationFirst]',\n standalone: true,\n exportAs: 'slPaginationFirst',\n imports: [SlGlyph, SlIcon],\n template: END_TRIGGER_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n ...triggerHost,\n 'data-part': 'first',\n '[attr.data-disabled]': 'unavailable() && !pagination.loading() ? \"\" : null',\n },\n})\nexport class SlPaginationFirst extends SlPaginationTrigger {\n override readonly part = 'first' as const;\n protected override target = () => 1;\n protected override usable = () => this.pagination.canGoPrevious();\n protected override defaultLabel = () => this.pagination.t('first');\n}\n\n@Component({\n selector: '[slPaginationPrevious]',\n standalone: true,\n exportAs: 'slPaginationPrevious',\n imports: [SlGlyph, SlIcon],\n template: STEP_TRIGGER_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n ...triggerHost,\n 'data-part': 'previous',\n '[attr.data-disabled]': 'unavailable() && !pagination.loading() ? \"\" : null',\n },\n})\nexport class SlPaginationPrevious extends SlPaginationTrigger {\n override readonly part = 'previous' as const;\n protected override target = () => this.pagination.currentPage() - 1;\n protected override usable = () => this.pagination.canGoPrevious();\n protected override defaultLabel = () => this.pagination.t('previous');\n}\n\n@Component({\n selector: '[slPaginationNext]',\n standalone: true,\n exportAs: 'slPaginationNext',\n imports: [SlGlyph, SlIcon],\n template: STEP_TRIGGER_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n ...triggerHost,\n 'data-part': 'next',\n '[attr.data-disabled]': 'unavailable() && !pagination.loading() ? \"\" : null',\n },\n})\nexport class SlPaginationNext extends SlPaginationTrigger {\n override readonly part = 'next' as const;\n protected override target = () => this.pagination.currentPage() + 1;\n protected override usable = () => this.pagination.canGoNext();\n protected override defaultLabel = () => this.pagination.t('next');\n}\n\n@Component({\n selector: '[slPaginationLast]',\n standalone: true,\n exportAs: 'slPaginationLast',\n imports: [SlGlyph, SlIcon],\n template: END_TRIGGER_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n ...triggerHost,\n 'data-part': 'last',\n '[attr.data-disabled]': 'unavailable() && !pagination.loading() ? \"\" : null',\n },\n})\nexport class SlPaginationLast extends SlPaginationTrigger {\n override readonly part = 'last' as const;\n protected override target = () => this.pagination.pages();\n protected override usable = () => this.pagination.canGoNext();\n protected override defaultLabel = () => this.pagination.t('last');\n}\n\n/**\n * The row of page numbers, and the sentence that replaces it below the\n * family's own breakpoint. Both are rendered and exactly one is displayed, so\n * neither is announced twice. A paginator over a collection whose total the\n * server does not know renders nothing here.\n */\n@Component({\n selector: 'sl-pagination-items',\n standalone: true,\n template: `\n @if (pagination.count() !== undefined) {\n <ul data-part=\"list\">\n @for (item of pagination.items(); track item.type === 'page' ? item.value : item.side) {\n <li data-part=\"item\">\n @if (item.type === 'page') {\n @if (pagination.itemHref(); as href) {\n <a\n [attr.aria-current]=\"item.value === pagination.currentPage() ? 'page' : null\"\n [attr.aria-disabled]=\"pagination.inert() ? 'true' : null\"\n [attr.aria-label]=\"pagination.t('page', { page: item.value })\"\n [attr.data-disabled]=\"pagination.disabled() ? '' : null\"\n [attr.data-loading]=\"pagination.loading() ? '' : null\"\n [attr.href]=\"pagination.inert() ? null : href(item.value)\"\n data-part=\"page\"\n (click)=\"pagination.goToPage(item.value, 'pointer', $event)\"\n >{{ item.value }}</a\n >\n } @else {\n <button\n [attr.aria-current]=\"item.value === pagination.currentPage() ? 'page' : null\"\n [attr.aria-label]=\"pagination.t('page', { page: item.value })\"\n [attr.data-disabled]=\"pagination.disabled() ? '' : null\"\n [attr.data-loading]=\"pagination.loading() ? '' : null\"\n [disabled]=\"pagination.inert()\"\n data-part=\"page\"\n type=\"button\"\n (click)=\"pagination.goToPage(item.value, 'pointer', $event)\"\n >\n {{ item.value }}\n </button>\n }\n } @else {\n <span aria-hidden=\"true\" data-part=\"ellipsis\">&#8230;</span>\n }\n </li>\n }\n </ul>\n <span data-part=\"summary\">{{\n pagination.t('summary', { page: pagination.currentPage(), pages: pagination.pages() })\n }}</span>\n }\n `,\n styleUrls: ['../../../styles/src/pagination/pagination.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slPaginationItems',\n host: { style: 'display: contents' },\n})\nexport class SlPaginationItems {\n readonly pagination = inject(SlPagination);\n}\n\n/**\n * \"21–40 of 482\", and the polite live region that announces a page change. One\n * region announcing one sentence is the whole of the announcement.\n */\n@Component({\n selector: 'p[slPaginationStatus]',\n standalone: true,\n template: '<ng-content>{{ text() }}</ng-content>',\n styleUrls: ['../../../styles/src/pagination/pagination.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slPaginationStatus',\n host: {\n 'data-part': 'status',\n '[attr.aria-live]': 'pagination.liveValue()',\n },\n})\nexport class SlPaginationStatus {\n readonly pagination = inject(SlPagination);\n readonly text = computed(() => {\n const range = this.pagination.range();\n return this.pagination.t('range', {\n start: range.start,\n end: range.end,\n count: this.pagination.count() ?? 0,\n });\n });\n}\n\n/**\n * How many items a page holds.\n *\n * A native `select`, wrapped by its own label. `select` in a later wave owns\n * the styled listbox; a paginator that could not change its page size until\n * then is not one a table can use. Wrapping rather than pointing gives the\n * control its accessible name from the platform, with no generated id.\n */\n@Component({\n selector: 'sl-pagination-page-size',\n standalone: true,\n imports: [SlGlyph, SlIcon],\n template: `\n <label data-part=\"page-size-label\">\n <ng-content>{{ pagination.t('pageSize') }}</ng-content>\n <select\n [disabled]=\"pagination.inert()\"\n [value]=\"pagination.pageSize()\"\n data-part=\"page-size\"\n (change)=\"onChange($event)\"\n >\n @for (size of pagination.sizeOptions(); track size) {\n <option [value]=\"size\">{{ size }}</option>\n }\n </select>\n <span slIcon><svg slGlyph name=\"chevron-down\"></svg></span>\n </label>\n `,\n styleUrls: ['../../../styles/src/pagination/pagination.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slPaginationPageSize',\n host: { style: 'display: contents' },\n})\nexport class SlPaginationPageSize {\n readonly pagination = inject(SlPagination);\n\n onChange(event: Event) {\n const value = Number((event.target as HTMLSelectElement).value);\n this.pagination.setPageSize(value, 'select', event);\n }\n}\n\n/**\n * Absence has to survive the transform: `numberAttribute` maps an unset input\n * to `NaN`, and a paginator that read that would invent a total the server\n * never gave it.\n */\nfunction optionalNumber(value: number | string | undefined) {\n if (value === undefined || value === null || value === '') return undefined;\n const parsed = numberAttribute(value);\n return Number.isFinite(parsed) ? parsed : undefined;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;AAMO,MAAM,4BAA4B,GAAG;AACrC,MAAM,oCAAoC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG;AAU7D,MAAM,yBAAyB,GAAG,IAAI,cAAc,CACzD,6BAA6B,EAC7B,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAA2B,EAAE,CAAC,EAAE;AAGjE;;;;;AAKG;AACG,SAAU,yBAAyB,CAAC,QAA4B,EAAA;IACpE,OAAO,EAAE,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,QAAQ,EAAE;AACnE;SAEgB,wBAAwB,GAAA;AACtC,IAAA,OAAO,MAAM,CAAC,yBAAyB,CAAC;AAC1C;;ACGA;;;;;;;;;;;;;;;;AAgBG;MAkBU,YAAY,CAAA;AACvB;;;;AAIG;AACM,IAAA,SAAS,GAAG,KAAK,CAAC,SAAS,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,WAAA,EAAA,8BAAA,EAAA,CAAA,EAAI,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,GAAG;IAC1E,WAAW,GAAG,KAAK,CAAC,CAAC,mFAAI,SAAS,EAAE,eAAe,EAAA,CAAG;AACtD,IAAA,aAAa,GAAG,KAAK,CAAC,SAAS,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,eAAA,EAAA,8BAAA,EAAA,CAAA,EAAI,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,GAAG;IAClF,eAAe,GAAG,KAAK,CAAC,SAAS,uFAAI,SAAS,EAAE,cAAc,EAAA,CAAG;IACjE,KAAK,GAAG,KAAK,CAAC,SAAS,6EAAI,SAAS,EAAE,cAAc,EAAA,CAAG;IACvD,YAAY,GAAG,KAAK,CAAC,SAAS,oFAAI,SAAS,EAAE,cAAc,EAAA,CAAG;IAC9D,aAAa,GAAG,KAAK,CAAC,SAAS,qFAAI,SAAS,EAAE,cAAc,EAAA,CAAG;IAC/D,eAAe,GAAG,KAAK,CAAgC,SAAS;wFAAC;AAC1E;;;AAGG;IACM,QAAQ,GAAG,KAAK,CAAkD,SAAS;iFAAC;IAC5E,IAAI,GAAG,KAAK,CAA6B,SAAS;6EAAC;IACnD,QAAQ,GAAG,KAAK,CAAC,KAAK,gFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;IACxD,OAAO,GAAG,KAAK,CAAC,KAAK,+EAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;;IAEvD,QAAQ,GAAG,KAAK,CAAyC,SAAS;iFAAC;AAE5E;;;;AAIG;IACM,UAAU,GAAG,MAAM,EAAyB;IAC5C,cAAc,GAAG,MAAM,EAAyB;IAExC,OAAO,GAAG,MAAM,CAAqB,SAAS;gFAAC;IAC/C,OAAO,GAAG,MAAM,CAAqB,SAAS;gFAAC;AAEvD,IAAA,IAAI,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;6EAAC;IAC/E,QAAQ,GAAG,QAAQ,CAC1B,MACE,IAAI,CAAC,aAAa,EAAE;QACpB,IAAI,CAAC,OAAO,EAAE;QACd,IAAI,CAAC,eAAe,EAAE;QACtB,IAAI,CAAC,QAAQ,CAAC,eAAe;QAC7B,4BAA4B;iFAC/B;IAEgB,QAAQ,GAAG,wBAAwB,EAAE;AACrC,IAAA,QAAQ,GAAG,MAAM,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;IAGnF,CAAC,GAAG,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,QAAQ,CAAC;AACrD,IAAA,eAAe,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;wFAAC;AAClE,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ;kFAAC;IACzE,WAAW,GAAG,QAAQ,CAC7B,MACE,IAAI,CAAC,eAAe,EAAE;QACtB,IAAI,CAAC,QAAQ,CAAC,eAAe;QAC7B,oCAAoC;oFACvC;AAEQ,IAAA,KAAK,GAAG,QAAQ,CAAC,MAAK;AAC7B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;QAC1B,OAAO,KAAK,KAAK;cACb,MAAM,CAAC;AACT,cAAE,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;IACtD,CAAC;8EAAC;AACO,IAAA,WAAW,GAAG,QAAQ,CAAC,MAAK;AACnC,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;QAC1B,OAAO,KAAK,KAAK;AACf,cAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AACrC,cAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IAC1C,CAAC;oFAAC;AACO,IAAA,KAAK,GAAG,QAAQ,CAAC,MAAK;AAC7B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;QAC1B,IAAI,KAAK,KAAK,SAAS;AAAE,YAAA,OAAO,EAAE;AAClC,QAAA,OAAO,SAAS,CAAC;AACf,YAAA,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC;YACvE,KAAK;AACL,YAAA,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE;AACxB,YAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;AACzB,YAAA,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC;AACrE,SAAA,CAAC;IACJ,CAAC;8EAAC;AACO,IAAA,KAAK,GAAG,QAAQ,CAAC,MAAK;AAC7B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;QAC1B,OAAO,KAAK,KAAK;cACb,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;cAClB,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC/E,CAAC;8EAAC;AAEO,IAAA,KAAK,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;8EAAC;AACzD,IAAA,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC;sFAAC;AACvE,IAAA,SAAS,GAAG,QAAQ,CAC3B,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,KAAK,EAAE,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;kFACzF;AAED,IAAA,WAAA,GAAA;AACE;;;;;AAKG;QACH,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE;YAClC,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO;gBAAE;AAC9C,YAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;AACpC,QAAA,CAAC,CAAC;IACJ;AAEA,IAAA,QAAQ,CAAC,IAAY,EAAE,MAAA,GAA+B,SAAS,EAAE,MAAc,EAAA;QAC7E,IAAI,IAAI,CAAC,KAAK,EAAE;YAAE;AAClB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,QAAA,MAAM,MAAM,GACV,KAAK,KAAK,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QACrF,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IACnC;AAEA,IAAA,KAAK,CAAC,MAAc,EAAA;AAClB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC;IAC3D;AAEA,IAAA,IAAI,CAAC,MAAA,GAA+B,SAAS,EAAE,MAAc,EAAA;AAC3D,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC;IACvD;AAEA,IAAA,QAAQ,CAAC,MAAA,GAA+B,SAAS,EAAE,MAAc,EAAA;AAC/D,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC;IACvD;AAEA;;;;;;AAMG;AACH,IAAA,WAAW,CAAC,IAAY,EAAE,MAAA,GAAmC,QAAQ,EAAE,MAAc,EAAA;QACnF,IAAI,IAAI,CAAC,KAAK,EAAE;YAAE;AAClB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC1C,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;QAChC,IAAI,IAAI,KAAK,QAAQ;YAAE;AAEvB,QAAA,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,QAAQ;QACrD,MAAM,KAAK,GAAG,kBAAkB,CAAS;AACvC,YAAA,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE;AAChC,YAAA,OAAO,EAAE,QAAQ;AACjB,YAAA,SAAS,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;AAC1D,SAAA,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC;YAAE;AAC1C,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AAEtB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;QAC1B,IAAI,KAAK,KAAK,SAAS;YAAE;QACzB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/F,QAAA,IAAI,IAAI,KAAK,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC;IAC1E;AAEQ,IAAA,IAAI,CAAC,IAAY,EAAE,MAA4B,EAAE,MAAc,EAAA;AACrE,QAAA,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,kBAAkB,CAAS;YACvC,UAAU,EAAE,SAAS,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;AAC7C,YAAA,OAAO,EAAE,QAAQ;AACjB,YAAA,SAAS,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;AACtD,SAAA,CAAC;QACF,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;IACjE;uGAtKW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,4pEAdb,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wpPAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAc1B,YAAY,EAAA,UAAA,EAAA,CAAA;kBAjBxB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EAAA,UAAA,EACjB,IAAI,EAAA,QAAA,EACN,2BAA2B,mBAEpB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAC3B,cAAc,EAAA,IAAA,EAClB;AACJ,wBAAA,SAAS,EAAE,YAAY;AACvB,wBAAA,WAAW,EAAE,MAAM;AACnB,wBAAA,mBAAmB,EAAE,mBAAmB;AACxC,wBAAA,kBAAkB,EAAE,2BAA2B;AAC/C,wBAAA,sBAAsB,EAAE,wBAAwB;AAChD,wBAAA,qBAAqB,EAAE,uBAAuB;AAC/C,qBAAA,EAAA,MAAA,EAAA,CAAA,wpPAAA,CAAA,EAAA;;AA2KH;;;;;;;AAOG;AACH,MACe,mBAAmB,CAAA;AACb,IAAA,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC;AACnC,IAAA,QAAQ,GAAG,MAAM,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;IAQnF,MAAM,GAAG,MAAM,CAA0B,UAAU,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,GAAG;AAClF,IAAA,eAAe,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,EAAE;wFAAC;IACtE,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE;oFAAC;AAC5C,IAAA,IAAI,GAAG,QAAQ,CAAC,MACvB,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,CAAC;6EAClF;AAED,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,IAAI,IAAI,CAAC,WAAW,EAAE;YAAE;AACxB,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC;IAC3D;uGApBa,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBADjC;;AAwBD;;;;AAIG;AACH,MAAM,qBAAqB,GAAG,CAAA;;eAEf;AACf,MAAM,oBAAoB,GAAG,CAAA;;eAEd;AAEf,MAAM,WAAW,GAAG;AAClB,IAAA,mBAAmB,EAAE,mBAAmB;AACxC,IAAA,sBAAsB,EAAE,yCAAyC;AACjE,IAAA,qBAAqB,EAAE,kCAAkC;AACzD,IAAA,aAAa,EAAE,QAAQ;AACvB,IAAA,YAAY,EAAE,eAAe;AAC7B,IAAA,SAAS,EAAE,kBAAkB;CACrB;AAeJ,MAAO,iBAAkB,SAAQ,mBAAmB,CAAA;IACtC,IAAI,GAAG,OAAgB;AACtB,IAAA,MAAM,GAAG,MAAM,CAAC;IAChB,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AAC9C,IAAA,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;uGAJvD,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,2CAAA,EAAA,mBAAA,EAAA,oCAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sDAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,4GAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EATlB,OAAO,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,MAAM,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FASd,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAb7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;AAC1B,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACJ,wBAAA,GAAG,WAAW;AACd,wBAAA,WAAW,EAAE,OAAO;AACpB,wBAAA,sBAAsB,EAAE,oDAAoD;AAC7E,qBAAA;AACF,iBAAA;;AAqBK,MAAO,oBAAqB,SAAQ,mBAAmB,CAAA;IACzC,IAAI,GAAG,UAAmB;AACzB,IAAA,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC;IAChD,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE;AAC9C,IAAA,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;uGAJ1D,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,2CAAA,EAAA,mBAAA,EAAA,oCAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sDAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,sBAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,2GAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EATrB,OAAO,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,MAAM,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FASd,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAbhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;AAC1B,oBAAA,QAAQ,EAAE,qBAAqB;oBAC/B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACJ,wBAAA,GAAG,WAAW;AACd,wBAAA,WAAW,EAAE,UAAU;AACvB,wBAAA,sBAAsB,EAAE,oDAAoD;AAC7E,qBAAA;AACF,iBAAA;;AAqBK,MAAO,gBAAiB,SAAQ,mBAAmB,CAAA;IACrC,IAAI,GAAG,MAAe;AACrB,IAAA,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC;IAChD,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC1C,IAAA,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;uGAJtD,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,2CAAA,EAAA,mBAAA,EAAA,oCAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sDAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,2GAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EATjB,OAAO,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,MAAM,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FASd,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAb5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;AAC1B,oBAAA,QAAQ,EAAE,qBAAqB;oBAC/B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACJ,wBAAA,GAAG,WAAW;AACd,wBAAA,WAAW,EAAE,MAAM;AACnB,wBAAA,sBAAsB,EAAE,oDAAoD;AAC7E,qBAAA;AACF,iBAAA;;AAqBK,MAAO,gBAAiB,SAAQ,mBAAmB,CAAA;IACrC,IAAI,GAAG,MAAe;IACrB,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;IACtC,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;AAC1C,IAAA,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;uGAJtD,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,2CAAA,EAAA,mBAAA,EAAA,oCAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,sDAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,4GAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EATjB,OAAO,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,MAAM,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FASd,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAb5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;AAC1B,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,IAAI,EAAE;AACJ,wBAAA,GAAG,WAAW;AACd,wBAAA,WAAW,EAAE,MAAM;AACnB,wBAAA,sBAAsB,EAAE,oDAAoD;AAC7E,qBAAA;AACF,iBAAA;;AAQD;;;;;AAKG;MAqDU,iBAAiB,CAAA;AACnB,IAAA,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC;uGAD/B,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAjDlB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wpPAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAOU,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBApD7B,SAAS;+BACE,qBAAqB,EAAA,UAAA,EACnB,IAAI,EAAA,QAAA,EACN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CT,EAAA,CAAA,EAAA,eAAA,EAEgB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAC3B,mBAAmB,EAAA,IAAA,EACvB,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAA,MAAA,EAAA,CAAA,wpPAAA,CAAA,EAAA;;AAMtC;;;AAGG;MAcU,kBAAkB,CAAA;AACpB,IAAA,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC;AACjC,IAAA,IAAI,GAAG,QAAQ,CAAC,MAAK;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;AACrC,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;AACpC,SAAA,CAAC;IACJ,CAAC;6EAAC;uGATS,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,gOAVnB,uCAAuC,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wpPAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAUtC,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAb9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAAA,UAAA,EACrB,IAAI,EAAA,QAAA,EACN,uCAAuC,mBAEhC,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAC3B,oBAAoB,EAAA,IAAA,EACxB;AACJ,wBAAA,WAAW,EAAE,QAAQ;AACrB,wBAAA,kBAAkB,EAAE,wBAAwB;AAC7C,qBAAA,EAAA,MAAA,EAAA,CAAA,wpPAAA,CAAA,EAAA;;AAcH;;;;;;;AAOG;MA2BU,oBAAoB,CAAA;AACtB,IAAA,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC;AAE1C,IAAA,QAAQ,CAAC,KAAY,EAAA;QACnB,MAAM,KAAK,GAAG,MAAM,CAAE,KAAK,CAAC,MAA4B,CAAC,KAAK,CAAC;QAC/D,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC;IACrD;uGANW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,EAAA,QAAA,EAAA,CAAA,sBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAtBrB;;;;;;;;;;;;;;;GAeT,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,wpPAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAhBS,OAAO,oFAAE,MAAM,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,OAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAuBd,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBA1BhC,SAAS;+BACE,yBAAyB,EAAA,UAAA,EACvB,IAAI,EAAA,OAAA,EACP,CAAC,OAAO,EAAE,MAAM,CAAC,EAAA,QAAA,EAChB;;;;;;;;;;;;;;;AAeT,EAAA,CAAA,EAAA,eAAA,EAEgB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAC3B,sBAAsB,EAAA,IAAA,EAC1B,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAA,MAAA,EAAA,CAAA,wpPAAA,CAAA,EAAA;;AAWtC;;;;AAIG;AACH,SAAS,cAAc,CAAC,KAAkC,EAAA;IACxD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE;AAAE,QAAA,OAAO,SAAS;AAC3E,IAAA,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC;AACrC,IAAA,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS;AACrD;;ACpgBA;;AAEG;;"}
1
+ {"version":3,"file":"slotted-angular-pagination.mjs","sources":["../../pagination/src/pagination.constants.ts","../../pagination/src/pagination.ts","../../pagination/src/slotted-angular-pagination.ts"],"sourcesContent":["import { InjectionToken, inject } from '@angular/core';\n\nexport type PaginationPageReason = 'pointer' | 'keyboard' | 'programmatic';\nexport type PaginationPageSizeReason = 'select' | 'programmatic';\nexport type PaginationLive = 'polite' | 'off';\n\nexport const PAGINATION_DEFAULT_PAGE_SIZE = 20;\nexport const PAGINATION_DEFAULT_PAGE_SIZE_OPTIONS = [10, 20, 50, 100];\n\nexport interface PaginationDefaults {\n boundaryCount?: number;\n defaultPageSize?: number;\n live?: PaginationLive;\n pageSizeOptions?: readonly number[];\n siblingCount?: number;\n}\n\nexport const PAGINATION_DEFAULTS_TOKEN = new InjectionToken<PaginationDefaults>(\n 'slotted pagination defaults',\n { providedIn: 'root', factory: (): PaginationDefaults => ({}) },\n);\n\n/**\n * An application decides once how wide its rows of pages are, how many items a\n * page holds, and whether a page change is announced. A paginator that states\n * any of those itself still wins: an explicit input is never overridden by the\n * token. Its words come from the language in force (`provideSlotted`).\n */\nexport function providePaginationDefaults(defaults: PaginationDefaults) {\n return { provide: PAGINATION_DEFAULTS_TOKEN, useValue: defaults };\n}\n\nexport function injectPaginationDefaults(): PaginationDefaults {\n return inject(PAGINATION_DEFAULTS_TOKEN);\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n Directive,\n effect,\n ElementRef,\n HostAttributeToken,\n inject,\n input,\n numberAttribute,\n output,\n signal,\n untracked,\n ViewEncapsulation,\n} from '@angular/core';\nimport { injectMessages } from '@slotted/angular/i18n';\nimport { SlGlyph, SlIcon } from '@slotted/angular/icon';\nimport {\n paginationMessages,\n type PaginationMessages,\n type PartialMessages,\n} from '@slotted/core/i18n';\nimport { clampPage, itemRange, pageItems, totalPages } from '@slotted/core/pagination';\nimport { createControllable } from '@slotted/core/state';\nimport type { ChangeRequest } from '@slotted/core/state';\n\nimport {\n injectPaginationDefaults,\n PAGINATION_DEFAULT_PAGE_SIZE,\n PAGINATION_DEFAULT_PAGE_SIZE_OPTIONS,\n type PaginationLive,\n type PaginationPageReason,\n type PaginationPageSizeReason,\n} from './pagination.constants';\n\n/**\n * Moving between pages of a collection the consumer owns.\n *\n * **It never fetches and never slices.** The collection is the consumer's, and\n * a family that held a copy of it would hold a stale one. `count` and\n * `pageSize` are all the arithmetic needs, and `@slotted/core/pagination` does\n * that arithmetic once for both bindings.\n *\n * **It never invents a total.** A collection whose total the server does not\n * know states no `count`; the row of numbers is then not drawn at all, and the\n * two triggers plus a sentence are the whole paginator.\n *\n * **The page can move by itself, twice.** A collection that shrinks under a\n * reader leaves them past the end, and a change of page size moves the window\n * they are looking through. Both emit `programmatic`, so a consumer holding\n * the value follows rather than guessing.\n */\n@Component({\n selector: 'nav[slPagination]',\n standalone: true,\n template: '<ng-content></ng-content>',\n styleUrls: ['../../../styles/src/pagination/pagination.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slPagination',\n host: {\n 'data-ui': 'pagination',\n 'data-ui-pagination': '',\n 'data-part': 'root',\n 'data-part-root': '',\n '[attr.aria-label]': 'accessibleLabel()',\n '[attr.aria-busy]': 'loading() ? \"true\" : null',\n '[attr.data-disabled]': 'disabled() ? \"\" : null',\n '[attr.data-loading]': 'loading() ? \"\" : null',\n },\n})\nexport class SlPagination {\n /**\n * Present means controlled, for the life of the component. Both values take\n * `undefined` as their unset state rather than a number, because a paginator\n * that read a default as the consumer's answer would never own its own page.\n */\n readonly pageValue = input(undefined, { alias: 'page', transform: optionalNumber });\n readonly defaultPage = input(1, { transform: numberAttribute });\n readonly pageSizeValue = input(undefined, { alias: 'pageSize', transform: optionalNumber });\n readonly defaultPageSize = input(undefined, { transform: optionalNumber });\n readonly count = input(undefined, { transform: optionalNumber });\n readonly siblingCount = input(undefined, { transform: optionalNumber });\n readonly boundaryCount = input(undefined, { transform: optionalNumber });\n readonly pageSizeOptions = input<readonly number[] | undefined>(undefined);\n /**\n * Words laid over the catalog of the language in force, key by key: the\n * landmark's name (`label`), the controls, and the sentences.\n */\n readonly messages = input<PartialMessages<PaginationMessages> | undefined>(undefined);\n readonly live = input<PaginationLive | undefined>(undefined);\n readonly disabled = input(false, { transform: booleanAttribute });\n readonly loading = input(false, { transform: booleanAttribute });\n /** Turns every page and every trigger into an anchor with a destination. */\n readonly itemHref = input<((page: number) => string) | undefined>(undefined);\n\n /**\n * Emitted before either value moves, carrying what it replaces, the reason\n * and the event. Neither is the second half of a two-way binding: one slot\n * can carry none of those.\n */\n readonly pageChange = output<ChangeRequest<number>>();\n readonly pageSizeChange = output<ChangeRequest<number>>();\n\n private readonly ownPage = signal<number | undefined>(undefined);\n private readonly ownSize = signal<number | undefined>(undefined);\n\n readonly page = computed(() => this.pageValue() ?? this.ownPage() ?? this.defaultPage());\n readonly pageSize = computed(\n () =>\n this.pageSizeValue() ??\n this.ownSize() ??\n this.defaultPageSize() ??\n this.defaults.defaultPageSize ??\n PAGINATION_DEFAULT_PAGE_SIZE,\n );\n\n private readonly defaults = injectPaginationDefaults();\n private readonly ownLabel = inject(new HostAttributeToken('aria-label'), { optional: true });\n\n /** The family's words in the language in force, with this paginator's `messages` laid over them. */\n readonly t = injectMessages(paginationMessages, this.messages);\n readonly accessibleLabel = computed(() => this.ownLabel ?? this.t('label'));\n readonly liveValue = computed(() => this.live() ?? this.defaults.live ?? 'polite');\n readonly sizeOptions = computed(\n () =>\n this.pageSizeOptions() ??\n this.defaults.pageSizeOptions ??\n PAGINATION_DEFAULT_PAGE_SIZE_OPTIONS,\n );\n\n readonly pages = computed(() => {\n const count = this.count();\n return count === undefined\n ? Number.POSITIVE_INFINITY\n : totalPages({ count, pageSize: this.pageSize() });\n });\n readonly currentPage = computed(() => {\n const count = this.count();\n return count === undefined\n ? Math.max(1, Math.trunc(this.page()))\n : clampPage(this.page(), this.pages());\n });\n readonly items = computed(() => {\n const count = this.count();\n if (count === undefined) return [];\n return pageItems({\n boundaryCount: this.boundaryCount() ?? this.defaults.boundaryCount ?? 1,\n count,\n page: this.currentPage(),\n pageSize: this.pageSize(),\n siblingCount: this.siblingCount() ?? this.defaults.siblingCount ?? 1,\n });\n });\n readonly range = computed(() => {\n const count = this.count();\n return count === undefined\n ? { start: 0, end: 0 }\n : itemRange({ count, page: this.currentPage(), pageSize: this.pageSize() });\n });\n\n readonly inert = computed(() => this.disabled() || this.loading());\n readonly canGoPrevious = computed(() => !this.inert() && this.currentPage() > 1);\n readonly canGoNext = computed(\n () => !this.inert() && (this.count() === undefined || this.currentPage() < this.pages()),\n );\n\n constructor() {\n /**\n * The one move nobody asked for: the collection shrank under a reader who\n * was past its new end. It runs in an effect rather than in the computed\n * that noticed it, because a computed that emitted an event would emit one\n * every time anything read it.\n */\n effect(() => {\n const clamped = this.currentPage();\n if (untracked(() => this.page()) === clamped) return;\n this.move(clamped, 'programmatic');\n });\n }\n\n goToPage(next: number, reason: PaginationPageReason = 'pointer', source?: Event) {\n if (this.inert()) return;\n const count = this.count();\n const target =\n count === undefined ? Math.max(1, Math.trunc(next)) : clampPage(next, this.pages());\n this.move(target, reason, source);\n }\n\n reset(source?: Event) {\n this.goToPage(this.defaultPage(), 'programmatic', source);\n }\n\n next(reason: PaginationPageReason = 'pointer', source?: Event) {\n this.goToPage(this.currentPage() + 1, reason, source);\n }\n\n previous(reason: PaginationPageReason = 'pointer', source?: Event) {\n this.goToPage(this.currentPage() - 1, reason, source);\n }\n\n /**\n * Changing how many rows a page holds moves the reader, and where they land\n * is a decision. Clamping leaves someone on page seven at the end of the\n * collection; resetting to page one throws away where they were. Angular\n * Material takes the third answer and so does this: the first item of the\n * current page stays visible.\n */\n setPageSize(next: number, reason: PaginationPageSizeReason = 'select', source?: Event) {\n if (this.inert()) return;\n const size = Math.max(1, Math.trunc(next));\n const previous = this.pageSize();\n if (size === previous) return;\n\n const firstItem = (this.currentPage() - 1) * previous;\n const state = createControllable<number>({\n controlled: this.pageSizeValue(),\n initial: previous,\n onRequest: (request) => this.pageSizeChange.emit(request),\n });\n if (!state.request(size, reason, source)) return;\n this.ownSize.set(size);\n\n const count = this.count();\n if (count === undefined) return;\n const kept = clampPage(Math.floor(firstItem / size) + 1, totalPages({ count, pageSize: size }));\n if (kept !== this.currentPage()) this.move(kept, 'programmatic', source);\n }\n\n private move(next: number, reason: PaginationPageReason, source?: Event) {\n const previous = untracked(() => this.page());\n const state = createControllable<number>({\n controlled: untracked(() => this.pageValue()),\n initial: previous,\n onRequest: (request) => this.pageChange.emit(request),\n });\n if (state.request(next, reason, source)) this.ownPage.set(next);\n }\n}\n\n/**\n * A control that moves the page, on the consumer's own `button` or `a`.\n *\n * A button that cannot move takes the native `disabled`. An anchor cannot: it\n * has no such attribute, and one that kept its `href` would still navigate on\n * a middle click — so an unavailable link loses its destination and says\n * `aria-disabled`, the shape the `link` family already ships.\n */\n@Directive()\nabstract class SlPaginationTrigger {\n protected readonly pagination = inject(SlPagination);\n private readonly ownLabel = inject(new HostAttributeToken('aria-label'), { optional: true });\n\n abstract readonly part: 'first' | 'previous' | 'next' | 'last';\n protected abstract target(): number;\n protected abstract usable(): boolean;\n protected abstract defaultLabel(): string;\n\n /** A button says it cannot move with the native `disabled`; only an anchor needs `aria-disabled`. */\n readonly anchor = inject<ElementRef<HTMLElement>>(ElementRef).nativeElement.tagName === 'A';\n readonly accessibleLabel = computed(() => this.ownLabel ?? this.defaultLabel());\n readonly unavailable = computed(() => !this.usable());\n readonly href = computed(() =>\n this.unavailable() ? null : (this.pagination.itemHref()?.(this.target()) ?? null),\n );\n\n activate(event: Event) {\n if (this.unavailable()) return;\n this.pagination.goToPage(this.target(), 'pointer', event);\n }\n}\n\n/**\n * One chevron for a step and two for an end, drawn unless the consumer wrote\n * content of their own. Every one points along the reading direction and\n * mirrors with it; the stylesheet turns the two that point back.\n */\nconst STEP_TRIGGER_TEMPLATE = `<ng-content\n ><span slIcon directional><svg slGlyph name=\"chevron-right\"></svg></span\n></ng-content>`;\nconst END_TRIGGER_TEMPLATE = `<ng-content\n ><span slIcon directional><svg slGlyph name=\"chevrons-right\"></svg></span\n></ng-content>`;\n\nconst triggerHost = {\n '[attr.aria-label]': 'accessibleLabel()',\n '[attr.aria-disabled]': 'anchor && unavailable() ? \"true\" : null',\n '[attr.data-loading]': 'pagination.loading() ? \"\" : null',\n '[attr.href]': 'href()',\n '[disabled]': 'unavailable()',\n '(click)': 'activate($event)',\n} as const;\n\n@Component({\n selector: '[slPaginationFirst]',\n standalone: true,\n exportAs: 'slPaginationFirst',\n imports: [SlGlyph, SlIcon],\n template: END_TRIGGER_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n ...triggerHost,\n 'data-part': 'first',\n 'data-part-first': '',\n '[attr.data-disabled]': 'unavailable() && !pagination.loading() ? \"\" : null',\n },\n})\nexport class SlPaginationFirst extends SlPaginationTrigger {\n override readonly part = 'first' as const;\n protected override target = () => 1;\n protected override usable = () => this.pagination.canGoPrevious();\n protected override defaultLabel = () => this.pagination.t('first');\n}\n\n@Component({\n selector: '[slPaginationPrevious]',\n standalone: true,\n exportAs: 'slPaginationPrevious',\n imports: [SlGlyph, SlIcon],\n template: STEP_TRIGGER_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n ...triggerHost,\n 'data-part': 'previous',\n 'data-part-previous': '',\n '[attr.data-disabled]': 'unavailable() && !pagination.loading() ? \"\" : null',\n },\n})\nexport class SlPaginationPrevious extends SlPaginationTrigger {\n override readonly part = 'previous' as const;\n protected override target = () => this.pagination.currentPage() - 1;\n protected override usable = () => this.pagination.canGoPrevious();\n protected override defaultLabel = () => this.pagination.t('previous');\n}\n\n@Component({\n selector: '[slPaginationNext]',\n standalone: true,\n exportAs: 'slPaginationNext',\n imports: [SlGlyph, SlIcon],\n template: STEP_TRIGGER_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n ...triggerHost,\n 'data-part': 'next',\n 'data-part-next': '',\n '[attr.data-disabled]': 'unavailable() && !pagination.loading() ? \"\" : null',\n },\n})\nexport class SlPaginationNext extends SlPaginationTrigger {\n override readonly part = 'next' as const;\n protected override target = () => this.pagination.currentPage() + 1;\n protected override usable = () => this.pagination.canGoNext();\n protected override defaultLabel = () => this.pagination.t('next');\n}\n\n@Component({\n selector: '[slPaginationLast]',\n standalone: true,\n exportAs: 'slPaginationLast',\n imports: [SlGlyph, SlIcon],\n template: END_TRIGGER_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n ...triggerHost,\n 'data-part': 'last',\n 'data-part-last': '',\n '[attr.data-disabled]': 'unavailable() && !pagination.loading() ? \"\" : null',\n },\n})\nexport class SlPaginationLast extends SlPaginationTrigger {\n override readonly part = 'last' as const;\n protected override target = () => this.pagination.pages();\n protected override usable = () => this.pagination.canGoNext();\n protected override defaultLabel = () => this.pagination.t('last');\n}\n\n/**\n * The row of page numbers, and the sentence that replaces it below the\n * family's own breakpoint. Both are rendered and exactly one is displayed, so\n * neither is announced twice. A paginator over a collection whose total the\n * server does not know renders nothing here.\n */\n@Component({\n selector: 'sl-pagination-items',\n standalone: true,\n template: `\n @if (pagination.count() !== undefined) {\n <ul data-part=\"list\" data-part-list=\"\">\n @for (item of pagination.items(); track item.type === 'page' ? item.value : item.side) {\n <li data-part=\"item\" data-part-item=\"\">\n @if (item.type === 'page') {\n @if (pagination.itemHref(); as href) {\n <a\n [attr.aria-current]=\"item.value === pagination.currentPage() ? 'page' : null\"\n [attr.aria-disabled]=\"pagination.inert() ? 'true' : null\"\n [attr.aria-label]=\"pagination.t('page', { page: item.value })\"\n [attr.data-disabled]=\"pagination.disabled() ? '' : null\"\n [attr.data-loading]=\"pagination.loading() ? '' : null\"\n [attr.href]=\"pagination.inert() ? null : href(item.value)\"\n data-part=\"page\"\n data-part-page=\"\"\n (click)=\"pagination.goToPage(item.value, 'pointer', $event)\"\n >{{ item.value }}</a\n >\n } @else {\n <button\n [attr.aria-current]=\"item.value === pagination.currentPage() ? 'page' : null\"\n [attr.aria-label]=\"pagination.t('page', { page: item.value })\"\n [attr.data-disabled]=\"pagination.disabled() ? '' : null\"\n [attr.data-loading]=\"pagination.loading() ? '' : null\"\n [disabled]=\"pagination.inert()\"\n data-part=\"page\"\n data-part-page=\"\"\n type=\"button\"\n (click)=\"pagination.goToPage(item.value, 'pointer', $event)\"\n >\n {{ item.value }}\n </button>\n }\n } @else {\n <span aria-hidden=\"true\" data-part=\"ellipsis\" data-part-ellipsis=\"\">&#8230;</span>\n }\n </li>\n }\n </ul>\n <span data-part=\"summary\" data-part-summary=\"\">{{\n pagination.t('summary', { page: pagination.currentPage(), pages: pagination.pages() })\n }}</span>\n }\n `,\n styleUrls: ['../../../styles/src/pagination/pagination.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slPaginationItems',\n host: { style: 'display: contents' },\n})\nexport class SlPaginationItems {\n readonly pagination = inject(SlPagination);\n}\n\n/**\n * \"21–40 of 482\", and the polite live region that announces a page change. One\n * region announcing one sentence is the whole of the announcement.\n */\n@Component({\n selector: 'p[slPaginationStatus]',\n standalone: true,\n template: '<ng-content>{{ text() }}</ng-content>',\n styleUrls: ['../../../styles/src/pagination/pagination.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slPaginationStatus',\n host: {\n 'data-part': 'status',\n 'data-part-status': '',\n '[attr.aria-live]': 'pagination.liveValue()',\n },\n})\nexport class SlPaginationStatus {\n readonly pagination = inject(SlPagination);\n readonly text = computed(() => {\n const range = this.pagination.range();\n return this.pagination.t('range', {\n start: range.start,\n end: range.end,\n count: this.pagination.count() ?? 0,\n });\n });\n}\n\n/**\n * How many items a page holds.\n *\n * A native `select`, wrapped by its own label. `select` in a later wave owns\n * the styled listbox; a paginator that could not change its page size until\n * then is not one a table can use. Wrapping rather than pointing gives the\n * control its accessible name from the platform, with no generated id.\n */\n@Component({\n selector: 'sl-pagination-page-size',\n standalone: true,\n imports: [SlGlyph, SlIcon],\n template: `\n <label data-part=\"page-size-label\" data-part-page-size-label=\"\">\n <ng-content>{{ pagination.t('pageSize') }}</ng-content>\n <select\n [disabled]=\"pagination.inert()\"\n [value]=\"pagination.pageSize()\"\n data-part=\"page-size\"\n data-part-page-size=\"\"\n (change)=\"onChange($event)\"\n >\n @for (size of pagination.sizeOptions(); track size) {\n <option [value]=\"size\">{{ size }}</option>\n }\n </select>\n <span slIcon><svg slGlyph name=\"chevron-down\"></svg></span>\n </label>\n `,\n styleUrls: ['../../../styles/src/pagination/pagination.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n exportAs: 'slPaginationPageSize',\n host: { style: 'display: contents' },\n})\nexport class SlPaginationPageSize {\n readonly pagination = inject(SlPagination);\n\n onChange(event: Event) {\n const value = Number((event.target as HTMLSelectElement).value);\n this.pagination.setPageSize(value, 'select', event);\n }\n}\n\n/**\n * Absence has to survive the transform: `numberAttribute` maps an unset input\n * to `NaN`, and a paginator that read that would invent a total the server\n * never gave it.\n */\nfunction optionalNumber(value: number | string | undefined) {\n if (value === undefined || value === null || value === '') return undefined;\n const parsed = numberAttribute(value);\n return Number.isFinite(parsed) ? parsed : undefined;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { createControllable } from '@slotted/core/state';
3
3
  import * as i0 from '@angular/core';
4
4
  import { InjectionToken, inject, Injectable, booleanAttribute, numberAttribute, model, input, output, signal, computed, Directive, ElementRef, DestroyRef, TemplateRef, ViewContainerRef, effect, HostAttributeToken, ViewEncapsulation, ChangeDetectionStrategy, Component, afterEveryRender } from '@angular/core';
5
5
  import { injectMessages } from '@slotted/angular/i18n';
6
+ import { writeSelectorKey } from '@slotted/core/selector-key';
6
7
  import { createDismissableLayer } from '@slotted/core/dismissable-layer';
7
8
  import { createPortalRoot } from '@slotted/core/portal';
8
9
  import { createPositioner } from '@slotted/core/positioner';
@@ -417,8 +418,8 @@ class SlPopoverLayer {
417
418
  return;
418
419
  const document = this.comment.ownerDocument;
419
420
  const layer = document.createElement('div');
420
- layer.setAttribute('data-ui', 'popover');
421
- layer.setAttribute('data-part', 'root');
421
+ writeSelectorKey(layer, 'ui', 'popover');
422
+ writeSelectorKey(layer, 'part', 'root');
422
423
  const view = this.viewContainer.createEmbeddedView(this.template);
423
424
  view.detectChanges();
424
425
  layer.appendChild(this.guard(document));
@@ -441,7 +442,7 @@ class SlPopoverLayer {
441
442
  }
442
443
  guard(document) {
443
444
  const guard = document.createElement('span');
444
- guard.setAttribute('data-part', 'focus-guard');
445
+ writeSelectorKey(guard, 'part', 'focus-guard');
445
446
  guard.setAttribute('aria-hidden', 'true');
446
447
  guard.tabIndex = 0;
447
448
  guard.addEventListener('focus', () => {
@@ -492,7 +493,13 @@ class SlPopoverLayer {
492
493
  ...options,
493
494
  ...(arrow ? { arrow, arrowPadding: this.popover.resolvedArrowPadding() } : {}),
494
495
  });
495
- void this.positioner.update().then(() => this.positioned.set(true));
496
+ /* `data-open` is written on the element in the task that opened the panel,
497
+ with the position, rather than by the effect on the next check. */
498
+ void this.positioner.update().then(() => {
499
+ if (this.popover.isOpen())
500
+ layer.setAttribute('data-open', '');
501
+ this.positioned.set(true);
502
+ });
496
503
  }
497
504
  /**
498
505
  * One layer in the single stack, and only while it is open. It is not modal:
@@ -621,23 +628,24 @@ class SlPopoverContent {
621
628
  inject(DestroyRef).onDestroy(() => this.popover.contentNode.set(null));
622
629
  }
623
630
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverContent, deps: [], target: i0.ɵɵFactoryTarget.Component });
624
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverContent, isStandalone: true, selector: "[slPopoverContent]", host: { attributes: { "data-part": "content", "tabindex": "-1" }, properties: { "attr.role": "role()", "attr.id": "popover.contentId", "attr.aria-labelledby": "labelledBy()", "attr.aria-describedby": "describedBy()" } }, exportAs: ["slPopoverContent"], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["@layer slotted.components{[data-ui=popover]{--_gap: var(--slotted-popover-gap, var(--slotted-space-4, .5rem));--_surface: var(--slotted-popover-surface, var(--slotted-surface-raised, #ffffff));--_text: var(--slotted-popover-text, var(--slotted-text, #0f172a));--_border-color: var(--slotted-popover-border-color, var(--slotted-border-subtle, #e2e8f0));--_border-width: var(--slotted-border-width-thin, 1px);--_radius: var(--slotted-popover-radius, var(--slotted-radius-lg, 8px));--_shadow: var(--slotted-popover-shadow, var(--slotted-shadow-md));--_arrow-size: var(--slotted-popover-arrow-size, .625rem);--_arrow-tip-radius: var(--slotted-popover-arrow-tip-radius, var(--slotted-radius-xs, 2px));--_inset-block: var(--slotted-popover-padding-block, var(--slotted-space-5, .75rem));--_inset-inline: var(--slotted-popover-padding-inline, var(--slotted-space-6, 1rem));--_row-gap: var(--slotted-control-gap-md, .5rem);--_title-font-size: var(--slotted-font-size-lg, 1rem);--_font-size: var(--slotted-font-size-md, .875rem);--_measure: var(--slotted-popover-measure, 20rem);position:absolute;inset-block-start:0;z-index:calc(var(--slotted-z-index-popover, 1100) + var(--slotted-layer-depth, 0));isolation:isolate;box-sizing:border-box;padding:var(--_gap);inline-size:max-content;max-inline-size:min(var(--_measure),var(--slotted-positioner-available-width, 100vw));pointer-events:none;opacity:0;--_enter-distance: var(--slotted-space-2, .25rem);translate:0 calc(-1 * var(--_enter-distance));transition:opacity var(--slotted-duration-short) var(--slotted-easing-exit),translate var(--slotted-duration-short) var(--slotted-easing-exit)}[data-ui=popover][data-side=top]{translate:0 var(--_enter-distance)}[data-ui=popover]:is([data-side=left],[data-side=right]){translate:0 0}[data-ui=popover][data-open]{opacity:1;translate:0 0;transition:none}[data-ui=popover][data-open][data-positioned]{animation:slotted-popover-enter-down var(--slotted-duration-medium) var(--slotted-easing-enter)}[data-ui=popover][data-open][data-positioned][data-side=top]{animation-name:slotted-popover-enter-up}[data-ui=popover][data-open][data-positioned]:is([data-side=left],[data-side=right]){animation-name:slotted-popover-fade}@keyframes slotted-popover-enter-down{0%{opacity:0;translate:0 calc(-1 * var(--_enter-distance))}}@keyframes slotted-popover-enter-up{0%{opacity:0;translate:0 var(--_enter-distance)}}@keyframes slotted-popover-fade{0%{opacity:0}}@media(prefers-reduced-motion:reduce){[data-ui=popover],[data-ui=popover][data-side=top],[data-ui=popover][data-side=left],[data-ui=popover][data-side=right]{translate:0 0;transition:opacity var(--slotted-duration-short) var(--slotted-easing-exit)}[data-ui=popover][data-open][data-positioned],[data-ui=popover][data-open][data-positioned][data-side=top],[data-ui=popover][data-open][data-positioned][data-side=left],[data-ui=popover][data-open][data-positioned][data-side=right]{animation-name:slotted-popover-fade}}[data-ui=popover][data-detached]{visibility:hidden}[data-ui=popover][data-size=sm]{--_inset-block: var(--slotted-popover-padding-block-sm, var(--slotted-space-4, .5rem));--_inset-inline: var(--slotted-popover-padding-inline-sm, var(--slotted-space-5, .75rem));--_title-font-size: var(--slotted-font-size-md, .875rem);--_font-size: var(--slotted-font-size-sm, .8125rem);--_measure: var(--slotted-popover-measure-sm, 16rem)}[data-ui=popover][data-size=lg]{--_inset-block: var(--slotted-popover-padding-block-lg, var(--slotted-space-6, 1rem));--_inset-inline: var(--slotted-popover-padding-inline-lg, var(--slotted-space-7, 1.25rem));--_title-font-size: var(--slotted-font-size-xl, 1.125rem);--_measure: var(--slotted-popover-measure-lg, 24rem)}[data-ui=popover][data-width=anchor]{inline-size:calc(var(--slotted-positioner-anchor-width, 0px) + 2 * var(--_gap));max-inline-size:var(--slotted-positioner-available-width, 100vw)}[data-ui=popover]>[data-part=focus-guard]{position:absolute;inline-size:1px;block-size:1px;padding:0;overflow:hidden;opacity:0;outline:none;pointer-events:none}[data-ui=popover]>[data-part=content]{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-inline-size:100%;max-block-size:calc(var(--slotted-positioner-available-height, 100vh) - 2 * var(--_gap));border:var(--_border-width) solid var(--_border-color);border-radius:var(--_radius);background:var(--_surface);color:var(--_text);box-shadow:var(--_shadow);overflow:clip;font-family:var(--slotted-font-family-sans, ui-sans-serif, system-ui, sans-serif);font-size:var(--_font-size);line-height:var(--slotted-line-height-md, 1.5);text-align:start;pointer-events:auto;outline:none}[data-ui=popover]>[data-part=content]>:only-child:not([data-part=header],[data-part=body],[data-part=footer]){grid-row:2;min-block-size:0}[data-ui=popover]>[data-part=content]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, currentColor);outline-offset:calc(-1 * var(--slotted-focus-ring-width, 2px))}[data-ui=popover]>[data-part=content]>[data-part=header]{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--_row-gap);row-gap:var(--slotted-space-2, .25rem);align-items:start;padding-block:var(--_inset-block);padding-inline:var(--_inset-inline)}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=title]{grid-column:1;margin:0;font-family:var( --slotted-font-family-heading, var(--slotted-font-family-sans, ui-sans-serif, system-ui, sans-serif) );font-size:var(--_title-font-size);font-weight:var(--slotted-font-weight-semibold, 600);line-height:var(--slotted-line-height-lg, 1.5);color:var(--_text);overflow-wrap:anywhere;unicode-bidi:plaintext}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=description]{grid-column:1;margin:0;font-size:var(--slotted-font-size-sm, .8125rem);line-height:var(--slotted-line-height-sm, 1.45);color:var(--slotted-text-muted, #5b6b7f);overflow-wrap:anywhere;unicode-bidi:plaintext}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=close]{grid-column:2;grid-row:1;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;inline-size:var(--slotted-control-height-sm, 30px);block-size:var(--slotted-control-height-sm, 30px);margin-block-start:calc(-1 * var(--slotted-space-2, .25rem));margin-inline-end:calc(-1 * var(--slotted-space-3, .375rem));padding:0;border:0;border-radius:var(--slotted-control-radius, var(--slotted-radius-sm, 4px));background:transparent;color:var(--slotted-text-muted, #5b6b7f);cursor:pointer;transition:background-color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard)),color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=close]:enabled:hover{background:var(--slotted-tone-secondary-subtle-hover, rgb(15 23 42 / .06));color:var(--_text)}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=close]:enabled:active{background:var(--slotted-tone-secondary-subtle-active, rgb(15 23 42 / .1))}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=close]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, currentColor);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui=popover]>[data-part=content]>[data-part=body]{grid-row:2;min-block-size:0;overflow-x:hidden;overflow-y:auto;overflow-inline:hidden;overflow-block:auto;overscroll-behavior:contain;overflow-wrap:anywhere;unicode-bidi:plaintext;padding-inline:var(--_inset-inline);padding-block-end:var(--_inset-block);background:linear-gradient(var(--_surface) 30%,transparent) center top / 100% var(--_inset-block) no-repeat local,linear-gradient(transparent,var(--_surface) 70%) center bottom / 100% var(--_inset-block) no-repeat local,radial-gradient(farthest-side at 50% 0,color-mix(in oklab,var(--_text) 12%,transparent),transparent) center top / 100% var(--slotted-space-3, .375rem) no-repeat scroll,radial-gradient(farthest-side at 50% 100%,color-mix(in oklab,var(--_text) 12%,transparent),transparent) center bottom / 100% var(--slotted-space-3, .375rem) no-repeat scroll}[data-ui=popover]>[data-part=content]>[data-part=body]:first-child{padding-block-start:var(--_inset-block)}[data-ui=popover]>[data-part=content]>[data-part=footer]{grid-row:3;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--_row-gap);padding-block:var(--_inset-block);padding-inline:var(--_inset-inline);border-block-start:var(--_border-width) solid var(--_border-color)}[data-ui=popover]>[data-part=arrow]{--_arrow-x: clamp( calc(var(--_gap) + var(--_radius)), var(--slotted-positioner-arrow-x, 0px), calc(100% - var(--_gap) - var(--_radius) - var(--_arrow-size)) );--_arrow-y: clamp( calc(var(--_gap) + var(--_radius)), var(--slotted-positioner-arrow-y, 0px), calc(100% - var(--_gap) - var(--_radius) - var(--_arrow-size)) );position:absolute;z-index:1;inline-size:var(--_arrow-size);block-size:var(--_arrow-size);rotate:45deg;background:var(--_surface);border:0 solid var(--_border-color)}[data-ui=popover][data-side=top]>[data-part=arrow]{left:var(--_arrow-x);top:auto;bottom:calc(var(--_gap) - var(--_arrow-size) / 2);border-right-width:var(--_border-width);border-bottom-width:var(--_border-width);border-bottom-right-radius:var(--_arrow-tip-radius)}[data-ui=popover][data-side=bottom]>[data-part=arrow]{left:var(--_arrow-x);top:calc(var(--_gap) - var(--_arrow-size) / 2);bottom:auto;border-top-width:var(--_border-width);border-left-width:var(--_border-width);border-top-left-radius:var(--_arrow-tip-radius)}[data-ui=popover][data-side=left]>[data-part=arrow]{top:var(--_arrow-y);left:auto;right:calc(var(--_gap) - var(--_arrow-size) / 2);border-top-width:var(--_border-width);border-right-width:var(--_border-width);border-top-right-radius:var(--_arrow-tip-radius)}[data-ui=popover][data-side=right]>[data-part=arrow]{top:var(--_arrow-y);left:calc(var(--_gap) - var(--_arrow-size) / 2);right:auto;border-bottom-width:var(--_border-width);border-left-width:var(--_border-width);border-bottom-left-radius:var(--_arrow-tip-radius)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
631
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverContent, isStandalone: true, selector: "[slPopoverContent]", host: { attributes: { "data-part": "content", "data-part-content": "", "tabindex": "-1" }, properties: { "attr.role": "role()", "attr.id": "popover.contentId", "attr.aria-labelledby": "labelledBy()", "attr.aria-describedby": "describedBy()" } }, exportAs: ["slPopoverContent"], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["@layer slotted.components{[data-ui-popover]{--_gap: var(--slotted-popover-gap, var(--slotted-space-4, .5rem));--_surface: var(--slotted-popover-surface, var(--slotted-surface-raised, #ffffff));--_text: var(--slotted-popover-text, var(--slotted-text, #0f172a));--_border-color: var(--slotted-popover-border-color, var(--slotted-border-subtle, #e2e8f0));--_border-width: var(--slotted-border-width-thin, 1px);--_radius: var(--slotted-popover-radius, var(--slotted-radius-lg, 8px));--_shadow: var(--slotted-popover-shadow, var(--slotted-shadow-md));--_arrow-size: var(--slotted-popover-arrow-size, .625rem);--_arrow-tip-radius: var(--slotted-popover-arrow-tip-radius, var(--slotted-radius-xs, 2px));--_inset-block: var(--slotted-popover-padding-block, var(--slotted-space-5, .75rem));--_inset-inline: var(--slotted-popover-padding-inline, var(--slotted-space-6, 1rem));--_row-gap: var(--slotted-control-gap-md, .5rem);--_title-font-size: var(--slotted-font-size-lg, 1rem);--_font-size: var(--slotted-font-size-md, .875rem);--_measure: var(--slotted-popover-measure, 20rem);position:absolute;inset-block-start:0;z-index:calc(var(--slotted-z-index-popover, 1100) + var(--slotted-layer-depth, 0));isolation:isolate;box-sizing:border-box;padding:var(--_gap);inline-size:max-content;max-inline-size:min(var(--_measure),var(--slotted-positioner-available-width, 100vw));pointer-events:none;opacity:0;--_enter-distance: var(--slotted-space-2, .25rem);translate:0 calc(-1 * var(--_enter-distance));transition:opacity var(--slotted-duration-short) var(--slotted-easing-exit),translate var(--slotted-duration-short) var(--slotted-easing-exit)}[data-ui-popover][data-side=top]{translate:0 var(--_enter-distance)}[data-ui-popover]:is([data-side=left],[data-side=right]){translate:0 0}[data-ui-popover][data-open]{opacity:1;translate:0 0;transition:none}[data-ui-popover][data-open][data-positioned]{animation:slotted-popover-enter-down var(--slotted-duration-medium) var(--slotted-easing-enter)}[data-ui-popover][data-open][data-positioned][data-side=top]{animation-name:slotted-popover-enter-up}[data-ui-popover][data-open][data-positioned]:is([data-side=left],[data-side=right]){animation-name:slotted-popover-fade}@keyframes slotted-popover-enter-down{0%{opacity:0;translate:0 calc(-1 * var(--_enter-distance))}}@keyframes slotted-popover-enter-up{0%{opacity:0;translate:0 var(--_enter-distance)}}@keyframes slotted-popover-fade{0%{opacity:0}}@media(prefers-reduced-motion:reduce){[data-ui-popover],[data-ui-popover][data-side=top],[data-ui-popover][data-side=left],[data-ui-popover][data-side=right]{translate:0 0;transition:opacity var(--slotted-duration-short) var(--slotted-easing-exit)}[data-ui-popover][data-open][data-positioned],[data-ui-popover][data-open][data-positioned][data-side=top],[data-ui-popover][data-open][data-positioned][data-side=left],[data-ui-popover][data-open][data-positioned][data-side=right]{animation-name:slotted-popover-fade}}[data-ui-popover][data-detached]{visibility:hidden}[data-ui-popover][data-size=sm]{--_inset-block: var(--slotted-popover-padding-block-sm, var(--slotted-space-4, .5rem));--_inset-inline: var(--slotted-popover-padding-inline-sm, var(--slotted-space-5, .75rem));--_title-font-size: var(--slotted-font-size-md, .875rem);--_font-size: var(--slotted-font-size-sm, .8125rem);--_measure: var(--slotted-popover-measure-sm, 16rem)}[data-ui-popover][data-size=lg]{--_inset-block: var(--slotted-popover-padding-block-lg, var(--slotted-space-6, 1rem));--_inset-inline: var(--slotted-popover-padding-inline-lg, var(--slotted-space-7, 1.25rem));--_title-font-size: var(--slotted-font-size-xl, 1.125rem);--_measure: var(--slotted-popover-measure-lg, 24rem)}[data-ui-popover][data-width=anchor]{inline-size:calc(var(--slotted-positioner-anchor-width, 0px) + 2 * var(--_gap));max-inline-size:var(--slotted-positioner-available-width, 100vw)}[data-ui-popover]>[data-part-focus-guard]{position:absolute;inline-size:1px;block-size:1px;padding:0;overflow:hidden;opacity:0;outline:none;pointer-events:none}[data-ui-popover]>[data-part-content]{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-inline-size:100%;max-block-size:calc(var(--slotted-positioner-available-height, 100vh) - 2 * var(--_gap));border:var(--_border-width) solid var(--_border-color);border-radius:var(--_radius);background:var(--_surface);color:var(--_text);box-shadow:var(--_shadow);overflow:clip;font-family:var(--slotted-font-family-sans, ui-sans-serif, system-ui, sans-serif);font-size:var(--_font-size);line-height:var(--slotted-line-height-md, 1.5);text-align:start;pointer-events:auto;outline:none}[data-ui-popover]>[data-part-content]>:only-child:not([data-part-header],[data-part-body],[data-part-footer]){grid-row:2;min-block-size:0}[data-ui-popover]>[data-part-content]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, currentColor);outline-offset:calc(-1 * var(--slotted-focus-ring-width, 2px))}[data-ui-popover]>[data-part-content]>[data-part-header]{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--_row-gap);row-gap:var(--slotted-space-2, .25rem);align-items:start;padding-block:var(--_inset-block);padding-inline:var(--_inset-inline)}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-title]{grid-column:1;margin:0;font-family:var( --slotted-font-family-heading, var(--slotted-font-family-sans, ui-sans-serif, system-ui, sans-serif) );font-size:var(--_title-font-size);font-weight:var(--slotted-font-weight-semibold, 600);line-height:var(--slotted-line-height-lg, 1.5);color:var(--_text);overflow-wrap:anywhere;unicode-bidi:plaintext}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-description]{grid-column:1;margin:0;font-size:var(--slotted-font-size-sm, .8125rem);line-height:var(--slotted-line-height-sm, 1.45);color:var(--slotted-text-muted, #5b6b7f);overflow-wrap:anywhere;unicode-bidi:plaintext}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-close]{grid-column:2;grid-row:1;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;inline-size:var(--slotted-control-height-sm, 30px);block-size:var(--slotted-control-height-sm, 30px);margin-block-start:calc(-1 * var(--slotted-space-2, .25rem));margin-inline-end:calc(-1 * var(--slotted-space-3, .375rem));padding:0;border:0;border-radius:var(--slotted-control-radius, var(--slotted-radius-sm, 4px));background:transparent;color:var(--slotted-text-muted, #5b6b7f);cursor:pointer;transition:background-color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard)),color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-close]:enabled:hover{background:var(--slotted-tone-secondary-subtle-hover, rgb(15 23 42 / .06));color:var(--_text)}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-close]:enabled:active{background:var(--slotted-tone-secondary-subtle-active, rgb(15 23 42 / .1))}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-close]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, currentColor);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui-popover]>[data-part-content]>[data-part-body]{grid-row:2;min-block-size:0;overflow-x:hidden;overflow-y:auto;overflow-inline:hidden;overflow-block:auto;overscroll-behavior:contain;overflow-wrap:anywhere;unicode-bidi:plaintext;padding-inline:var(--_inset-inline);padding-block-end:var(--_inset-block);background:linear-gradient(var(--_surface) 30%,transparent) center top / 100% var(--_inset-block) no-repeat local,linear-gradient(transparent,var(--_surface) 70%) center bottom / 100% var(--_inset-block) no-repeat local,radial-gradient(farthest-side at 50% 0,color-mix(in oklab,var(--_text) 12%,transparent),transparent) center top / 100% var(--slotted-space-3, .375rem) no-repeat scroll,radial-gradient(farthest-side at 50% 100%,color-mix(in oklab,var(--_text) 12%,transparent),transparent) center bottom / 100% var(--slotted-space-3, .375rem) no-repeat scroll}[data-ui-popover]>[data-part-content]>[data-part-body]:first-child{padding-block-start:var(--_inset-block)}[data-ui-popover]>[data-part-content]>[data-part-footer]{grid-row:3;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--_row-gap);padding-block:var(--_inset-block);padding-inline:var(--_inset-inline);border-block-start:var(--_border-width) solid var(--_border-color)}[data-ui-popover]>[data-part-arrow]{--_arrow-x: clamp( calc(var(--_gap) + var(--_radius)), var(--slotted-positioner-arrow-x, 0px), calc(100% - var(--_gap) - var(--_radius) - var(--_arrow-size)) );--_arrow-y: clamp( calc(var(--_gap) + var(--_radius)), var(--slotted-positioner-arrow-y, 0px), calc(100% - var(--_gap) - var(--_radius) - var(--_arrow-size)) );position:absolute;z-index:1;inline-size:var(--_arrow-size);block-size:var(--_arrow-size);rotate:45deg;background:var(--_surface);border:0 solid var(--_border-color)}[data-ui-popover][data-side=top]>[data-part-arrow]{left:var(--_arrow-x);top:auto;bottom:calc(var(--_gap) - var(--_arrow-size) / 2);border-right-width:var(--_border-width);border-bottom-width:var(--_border-width);border-bottom-right-radius:var(--_arrow-tip-radius)}[data-ui-popover][data-side=bottom]>[data-part-arrow]{left:var(--_arrow-x);top:calc(var(--_gap) - var(--_arrow-size) / 2);bottom:auto;border-top-width:var(--_border-width);border-left-width:var(--_border-width);border-top-left-radius:var(--_arrow-tip-radius)}[data-ui-popover][data-side=left]>[data-part-arrow]{top:var(--_arrow-y);left:auto;right:calc(var(--_gap) - var(--_arrow-size) / 2);border-top-width:var(--_border-width);border-right-width:var(--_border-width);border-top-right-radius:var(--_arrow-tip-radius)}[data-ui-popover][data-side=right]>[data-part-arrow]{top:var(--_arrow-y);left:calc(var(--_gap) - var(--_arrow-size) / 2);right:auto;border-bottom-width:var(--_border-width);border-left-width:var(--_border-width);border-bottom-left-radius:var(--_arrow-tip-radius)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
625
632
  }
626
633
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverContent, decorators: [{
627
634
  type: Component,
628
635
  args: [{ selector: '[slPopoverContent]', standalone: true, exportAs: 'slPopoverContent', template: '<ng-content />', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
629
636
  'data-part': 'content',
637
+ 'data-part-content': '',
630
638
  tabindex: '-1',
631
639
  '[attr.role]': 'role()',
632
640
  '[attr.id]': 'popover.contentId',
633
641
  '[attr.aria-labelledby]': 'labelledBy()',
634
642
  '[attr.aria-describedby]': 'describedBy()',
635
- }, styles: ["@layer slotted.components{[data-ui=popover]{--_gap: var(--slotted-popover-gap, var(--slotted-space-4, .5rem));--_surface: var(--slotted-popover-surface, var(--slotted-surface-raised, #ffffff));--_text: var(--slotted-popover-text, var(--slotted-text, #0f172a));--_border-color: var(--slotted-popover-border-color, var(--slotted-border-subtle, #e2e8f0));--_border-width: var(--slotted-border-width-thin, 1px);--_radius: var(--slotted-popover-radius, var(--slotted-radius-lg, 8px));--_shadow: var(--slotted-popover-shadow, var(--slotted-shadow-md));--_arrow-size: var(--slotted-popover-arrow-size, .625rem);--_arrow-tip-radius: var(--slotted-popover-arrow-tip-radius, var(--slotted-radius-xs, 2px));--_inset-block: var(--slotted-popover-padding-block, var(--slotted-space-5, .75rem));--_inset-inline: var(--slotted-popover-padding-inline, var(--slotted-space-6, 1rem));--_row-gap: var(--slotted-control-gap-md, .5rem);--_title-font-size: var(--slotted-font-size-lg, 1rem);--_font-size: var(--slotted-font-size-md, .875rem);--_measure: var(--slotted-popover-measure, 20rem);position:absolute;inset-block-start:0;z-index:calc(var(--slotted-z-index-popover, 1100) + var(--slotted-layer-depth, 0));isolation:isolate;box-sizing:border-box;padding:var(--_gap);inline-size:max-content;max-inline-size:min(var(--_measure),var(--slotted-positioner-available-width, 100vw));pointer-events:none;opacity:0;--_enter-distance: var(--slotted-space-2, .25rem);translate:0 calc(-1 * var(--_enter-distance));transition:opacity var(--slotted-duration-short) var(--slotted-easing-exit),translate var(--slotted-duration-short) var(--slotted-easing-exit)}[data-ui=popover][data-side=top]{translate:0 var(--_enter-distance)}[data-ui=popover]:is([data-side=left],[data-side=right]){translate:0 0}[data-ui=popover][data-open]{opacity:1;translate:0 0;transition:none}[data-ui=popover][data-open][data-positioned]{animation:slotted-popover-enter-down var(--slotted-duration-medium) var(--slotted-easing-enter)}[data-ui=popover][data-open][data-positioned][data-side=top]{animation-name:slotted-popover-enter-up}[data-ui=popover][data-open][data-positioned]:is([data-side=left],[data-side=right]){animation-name:slotted-popover-fade}@keyframes slotted-popover-enter-down{0%{opacity:0;translate:0 calc(-1 * var(--_enter-distance))}}@keyframes slotted-popover-enter-up{0%{opacity:0;translate:0 var(--_enter-distance)}}@keyframes slotted-popover-fade{0%{opacity:0}}@media(prefers-reduced-motion:reduce){[data-ui=popover],[data-ui=popover][data-side=top],[data-ui=popover][data-side=left],[data-ui=popover][data-side=right]{translate:0 0;transition:opacity var(--slotted-duration-short) var(--slotted-easing-exit)}[data-ui=popover][data-open][data-positioned],[data-ui=popover][data-open][data-positioned][data-side=top],[data-ui=popover][data-open][data-positioned][data-side=left],[data-ui=popover][data-open][data-positioned][data-side=right]{animation-name:slotted-popover-fade}}[data-ui=popover][data-detached]{visibility:hidden}[data-ui=popover][data-size=sm]{--_inset-block: var(--slotted-popover-padding-block-sm, var(--slotted-space-4, .5rem));--_inset-inline: var(--slotted-popover-padding-inline-sm, var(--slotted-space-5, .75rem));--_title-font-size: var(--slotted-font-size-md, .875rem);--_font-size: var(--slotted-font-size-sm, .8125rem);--_measure: var(--slotted-popover-measure-sm, 16rem)}[data-ui=popover][data-size=lg]{--_inset-block: var(--slotted-popover-padding-block-lg, var(--slotted-space-6, 1rem));--_inset-inline: var(--slotted-popover-padding-inline-lg, var(--slotted-space-7, 1.25rem));--_title-font-size: var(--slotted-font-size-xl, 1.125rem);--_measure: var(--slotted-popover-measure-lg, 24rem)}[data-ui=popover][data-width=anchor]{inline-size:calc(var(--slotted-positioner-anchor-width, 0px) + 2 * var(--_gap));max-inline-size:var(--slotted-positioner-available-width, 100vw)}[data-ui=popover]>[data-part=focus-guard]{position:absolute;inline-size:1px;block-size:1px;padding:0;overflow:hidden;opacity:0;outline:none;pointer-events:none}[data-ui=popover]>[data-part=content]{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-inline-size:100%;max-block-size:calc(var(--slotted-positioner-available-height, 100vh) - 2 * var(--_gap));border:var(--_border-width) solid var(--_border-color);border-radius:var(--_radius);background:var(--_surface);color:var(--_text);box-shadow:var(--_shadow);overflow:clip;font-family:var(--slotted-font-family-sans, ui-sans-serif, system-ui, sans-serif);font-size:var(--_font-size);line-height:var(--slotted-line-height-md, 1.5);text-align:start;pointer-events:auto;outline:none}[data-ui=popover]>[data-part=content]>:only-child:not([data-part=header],[data-part=body],[data-part=footer]){grid-row:2;min-block-size:0}[data-ui=popover]>[data-part=content]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, currentColor);outline-offset:calc(-1 * var(--slotted-focus-ring-width, 2px))}[data-ui=popover]>[data-part=content]>[data-part=header]{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--_row-gap);row-gap:var(--slotted-space-2, .25rem);align-items:start;padding-block:var(--_inset-block);padding-inline:var(--_inset-inline)}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=title]{grid-column:1;margin:0;font-family:var( --slotted-font-family-heading, var(--slotted-font-family-sans, ui-sans-serif, system-ui, sans-serif) );font-size:var(--_title-font-size);font-weight:var(--slotted-font-weight-semibold, 600);line-height:var(--slotted-line-height-lg, 1.5);color:var(--_text);overflow-wrap:anywhere;unicode-bidi:plaintext}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=description]{grid-column:1;margin:0;font-size:var(--slotted-font-size-sm, .8125rem);line-height:var(--slotted-line-height-sm, 1.45);color:var(--slotted-text-muted, #5b6b7f);overflow-wrap:anywhere;unicode-bidi:plaintext}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=close]{grid-column:2;grid-row:1;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;inline-size:var(--slotted-control-height-sm, 30px);block-size:var(--slotted-control-height-sm, 30px);margin-block-start:calc(-1 * var(--slotted-space-2, .25rem));margin-inline-end:calc(-1 * var(--slotted-space-3, .375rem));padding:0;border:0;border-radius:var(--slotted-control-radius, var(--slotted-radius-sm, 4px));background:transparent;color:var(--slotted-text-muted, #5b6b7f);cursor:pointer;transition:background-color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard)),color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=close]:enabled:hover{background:var(--slotted-tone-secondary-subtle-hover, rgb(15 23 42 / .06));color:var(--_text)}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=close]:enabled:active{background:var(--slotted-tone-secondary-subtle-active, rgb(15 23 42 / .1))}[data-ui=popover]>[data-part=content]>[data-part=header]>[data-part=close]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, currentColor);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui=popover]>[data-part=content]>[data-part=body]{grid-row:2;min-block-size:0;overflow-x:hidden;overflow-y:auto;overflow-inline:hidden;overflow-block:auto;overscroll-behavior:contain;overflow-wrap:anywhere;unicode-bidi:plaintext;padding-inline:var(--_inset-inline);padding-block-end:var(--_inset-block);background:linear-gradient(var(--_surface) 30%,transparent) center top / 100% var(--_inset-block) no-repeat local,linear-gradient(transparent,var(--_surface) 70%) center bottom / 100% var(--_inset-block) no-repeat local,radial-gradient(farthest-side at 50% 0,color-mix(in oklab,var(--_text) 12%,transparent),transparent) center top / 100% var(--slotted-space-3, .375rem) no-repeat scroll,radial-gradient(farthest-side at 50% 100%,color-mix(in oklab,var(--_text) 12%,transparent),transparent) center bottom / 100% var(--slotted-space-3, .375rem) no-repeat scroll}[data-ui=popover]>[data-part=content]>[data-part=body]:first-child{padding-block-start:var(--_inset-block)}[data-ui=popover]>[data-part=content]>[data-part=footer]{grid-row:3;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--_row-gap);padding-block:var(--_inset-block);padding-inline:var(--_inset-inline);border-block-start:var(--_border-width) solid var(--_border-color)}[data-ui=popover]>[data-part=arrow]{--_arrow-x: clamp( calc(var(--_gap) + var(--_radius)), var(--slotted-positioner-arrow-x, 0px), calc(100% - var(--_gap) - var(--_radius) - var(--_arrow-size)) );--_arrow-y: clamp( calc(var(--_gap) + var(--_radius)), var(--slotted-positioner-arrow-y, 0px), calc(100% - var(--_gap) - var(--_radius) - var(--_arrow-size)) );position:absolute;z-index:1;inline-size:var(--_arrow-size);block-size:var(--_arrow-size);rotate:45deg;background:var(--_surface);border:0 solid var(--_border-color)}[data-ui=popover][data-side=top]>[data-part=arrow]{left:var(--_arrow-x);top:auto;bottom:calc(var(--_gap) - var(--_arrow-size) / 2);border-right-width:var(--_border-width);border-bottom-width:var(--_border-width);border-bottom-right-radius:var(--_arrow-tip-radius)}[data-ui=popover][data-side=bottom]>[data-part=arrow]{left:var(--_arrow-x);top:calc(var(--_gap) - var(--_arrow-size) / 2);bottom:auto;border-top-width:var(--_border-width);border-left-width:var(--_border-width);border-top-left-radius:var(--_arrow-tip-radius)}[data-ui=popover][data-side=left]>[data-part=arrow]{top:var(--_arrow-y);left:auto;right:calc(var(--_gap) - var(--_arrow-size) / 2);border-top-width:var(--_border-width);border-right-width:var(--_border-width);border-top-right-radius:var(--_arrow-tip-radius)}[data-ui=popover][data-side=right]>[data-part=arrow]{top:var(--_arrow-y);left:calc(var(--_gap) - var(--_arrow-size) / 2);right:auto;border-bottom-width:var(--_border-width);border-left-width:var(--_border-width);border-bottom-left-radius:var(--_arrow-tip-radius)}}\n"] }]
643
+ }, styles: ["@layer slotted.components{[data-ui-popover]{--_gap: var(--slotted-popover-gap, var(--slotted-space-4, .5rem));--_surface: var(--slotted-popover-surface, var(--slotted-surface-raised, #ffffff));--_text: var(--slotted-popover-text, var(--slotted-text, #0f172a));--_border-color: var(--slotted-popover-border-color, var(--slotted-border-subtle, #e2e8f0));--_border-width: var(--slotted-border-width-thin, 1px);--_radius: var(--slotted-popover-radius, var(--slotted-radius-lg, 8px));--_shadow: var(--slotted-popover-shadow, var(--slotted-shadow-md));--_arrow-size: var(--slotted-popover-arrow-size, .625rem);--_arrow-tip-radius: var(--slotted-popover-arrow-tip-radius, var(--slotted-radius-xs, 2px));--_inset-block: var(--slotted-popover-padding-block, var(--slotted-space-5, .75rem));--_inset-inline: var(--slotted-popover-padding-inline, var(--slotted-space-6, 1rem));--_row-gap: var(--slotted-control-gap-md, .5rem);--_title-font-size: var(--slotted-font-size-lg, 1rem);--_font-size: var(--slotted-font-size-md, .875rem);--_measure: var(--slotted-popover-measure, 20rem);position:absolute;inset-block-start:0;z-index:calc(var(--slotted-z-index-popover, 1100) + var(--slotted-layer-depth, 0));isolation:isolate;box-sizing:border-box;padding:var(--_gap);inline-size:max-content;max-inline-size:min(var(--_measure),var(--slotted-positioner-available-width, 100vw));pointer-events:none;opacity:0;--_enter-distance: var(--slotted-space-2, .25rem);translate:0 calc(-1 * var(--_enter-distance));transition:opacity var(--slotted-duration-short) var(--slotted-easing-exit),translate var(--slotted-duration-short) var(--slotted-easing-exit)}[data-ui-popover][data-side=top]{translate:0 var(--_enter-distance)}[data-ui-popover]:is([data-side=left],[data-side=right]){translate:0 0}[data-ui-popover][data-open]{opacity:1;translate:0 0;transition:none}[data-ui-popover][data-open][data-positioned]{animation:slotted-popover-enter-down var(--slotted-duration-medium) var(--slotted-easing-enter)}[data-ui-popover][data-open][data-positioned][data-side=top]{animation-name:slotted-popover-enter-up}[data-ui-popover][data-open][data-positioned]:is([data-side=left],[data-side=right]){animation-name:slotted-popover-fade}@keyframes slotted-popover-enter-down{0%{opacity:0;translate:0 calc(-1 * var(--_enter-distance))}}@keyframes slotted-popover-enter-up{0%{opacity:0;translate:0 var(--_enter-distance)}}@keyframes slotted-popover-fade{0%{opacity:0}}@media(prefers-reduced-motion:reduce){[data-ui-popover],[data-ui-popover][data-side=top],[data-ui-popover][data-side=left],[data-ui-popover][data-side=right]{translate:0 0;transition:opacity var(--slotted-duration-short) var(--slotted-easing-exit)}[data-ui-popover][data-open][data-positioned],[data-ui-popover][data-open][data-positioned][data-side=top],[data-ui-popover][data-open][data-positioned][data-side=left],[data-ui-popover][data-open][data-positioned][data-side=right]{animation-name:slotted-popover-fade}}[data-ui-popover][data-detached]{visibility:hidden}[data-ui-popover][data-size=sm]{--_inset-block: var(--slotted-popover-padding-block-sm, var(--slotted-space-4, .5rem));--_inset-inline: var(--slotted-popover-padding-inline-sm, var(--slotted-space-5, .75rem));--_title-font-size: var(--slotted-font-size-md, .875rem);--_font-size: var(--slotted-font-size-sm, .8125rem);--_measure: var(--slotted-popover-measure-sm, 16rem)}[data-ui-popover][data-size=lg]{--_inset-block: var(--slotted-popover-padding-block-lg, var(--slotted-space-6, 1rem));--_inset-inline: var(--slotted-popover-padding-inline-lg, var(--slotted-space-7, 1.25rem));--_title-font-size: var(--slotted-font-size-xl, 1.125rem);--_measure: var(--slotted-popover-measure-lg, 24rem)}[data-ui-popover][data-width=anchor]{inline-size:calc(var(--slotted-positioner-anchor-width, 0px) + 2 * var(--_gap));max-inline-size:var(--slotted-positioner-available-width, 100vw)}[data-ui-popover]>[data-part-focus-guard]{position:absolute;inline-size:1px;block-size:1px;padding:0;overflow:hidden;opacity:0;outline:none;pointer-events:none}[data-ui-popover]>[data-part-content]{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-inline-size:100%;max-block-size:calc(var(--slotted-positioner-available-height, 100vh) - 2 * var(--_gap));border:var(--_border-width) solid var(--_border-color);border-radius:var(--_radius);background:var(--_surface);color:var(--_text);box-shadow:var(--_shadow);overflow:clip;font-family:var(--slotted-font-family-sans, ui-sans-serif, system-ui, sans-serif);font-size:var(--_font-size);line-height:var(--slotted-line-height-md, 1.5);text-align:start;pointer-events:auto;outline:none}[data-ui-popover]>[data-part-content]>:only-child:not([data-part-header],[data-part-body],[data-part-footer]){grid-row:2;min-block-size:0}[data-ui-popover]>[data-part-content]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, currentColor);outline-offset:calc(-1 * var(--slotted-focus-ring-width, 2px))}[data-ui-popover]>[data-part-content]>[data-part-header]{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--_row-gap);row-gap:var(--slotted-space-2, .25rem);align-items:start;padding-block:var(--_inset-block);padding-inline:var(--_inset-inline)}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-title]{grid-column:1;margin:0;font-family:var( --slotted-font-family-heading, var(--slotted-font-family-sans, ui-sans-serif, system-ui, sans-serif) );font-size:var(--_title-font-size);font-weight:var(--slotted-font-weight-semibold, 600);line-height:var(--slotted-line-height-lg, 1.5);color:var(--_text);overflow-wrap:anywhere;unicode-bidi:plaintext}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-description]{grid-column:1;margin:0;font-size:var(--slotted-font-size-sm, .8125rem);line-height:var(--slotted-line-height-sm, 1.45);color:var(--slotted-text-muted, #5b6b7f);overflow-wrap:anywhere;unicode-bidi:plaintext}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-close]{grid-column:2;grid-row:1;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;inline-size:var(--slotted-control-height-sm, 30px);block-size:var(--slotted-control-height-sm, 30px);margin-block-start:calc(-1 * var(--slotted-space-2, .25rem));margin-inline-end:calc(-1 * var(--slotted-space-3, .375rem));padding:0;border:0;border-radius:var(--slotted-control-radius, var(--slotted-radius-sm, 4px));background:transparent;color:var(--slotted-text-muted, #5b6b7f);cursor:pointer;transition:background-color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard)),color var(--slotted-control-transition-duration, var(--slotted-duration-short)) var(--slotted-control-transition-easing, var(--slotted-easing-standard))}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-close]:enabled:hover{background:var(--slotted-tone-secondary-subtle-hover, rgb(15 23 42 / .06));color:var(--_text)}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-close]:enabled:active{background:var(--slotted-tone-secondary-subtle-active, rgb(15 23 42 / .1))}[data-ui-popover]>[data-part-content]>[data-part-header]>[data-part-close]:focus-visible{outline:var(--slotted-focus-ring-width, 2px) solid var(--slotted-focus-ring-color, currentColor);outline-offset:var(--slotted-focus-ring-offset, 2px)}[data-ui-popover]>[data-part-content]>[data-part-body]{grid-row:2;min-block-size:0;overflow-x:hidden;overflow-y:auto;overflow-inline:hidden;overflow-block:auto;overscroll-behavior:contain;overflow-wrap:anywhere;unicode-bidi:plaintext;padding-inline:var(--_inset-inline);padding-block-end:var(--_inset-block);background:linear-gradient(var(--_surface) 30%,transparent) center top / 100% var(--_inset-block) no-repeat local,linear-gradient(transparent,var(--_surface) 70%) center bottom / 100% var(--_inset-block) no-repeat local,radial-gradient(farthest-side at 50% 0,color-mix(in oklab,var(--_text) 12%,transparent),transparent) center top / 100% var(--slotted-space-3, .375rem) no-repeat scroll,radial-gradient(farthest-side at 50% 100%,color-mix(in oklab,var(--_text) 12%,transparent),transparent) center bottom / 100% var(--slotted-space-3, .375rem) no-repeat scroll}[data-ui-popover]>[data-part-content]>[data-part-body]:first-child{padding-block-start:var(--_inset-block)}[data-ui-popover]>[data-part-content]>[data-part-footer]{grid-row:3;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--_row-gap);padding-block:var(--_inset-block);padding-inline:var(--_inset-inline);border-block-start:var(--_border-width) solid var(--_border-color)}[data-ui-popover]>[data-part-arrow]{--_arrow-x: clamp( calc(var(--_gap) + var(--_radius)), var(--slotted-positioner-arrow-x, 0px), calc(100% - var(--_gap) - var(--_radius) - var(--_arrow-size)) );--_arrow-y: clamp( calc(var(--_gap) + var(--_radius)), var(--slotted-positioner-arrow-y, 0px), calc(100% - var(--_gap) - var(--_radius) - var(--_arrow-size)) );position:absolute;z-index:1;inline-size:var(--_arrow-size);block-size:var(--_arrow-size);rotate:45deg;background:var(--_surface);border:0 solid var(--_border-color)}[data-ui-popover][data-side=top]>[data-part-arrow]{left:var(--_arrow-x);top:auto;bottom:calc(var(--_gap) - var(--_arrow-size) / 2);border-right-width:var(--_border-width);border-bottom-width:var(--_border-width);border-bottom-right-radius:var(--_arrow-tip-radius)}[data-ui-popover][data-side=bottom]>[data-part-arrow]{left:var(--_arrow-x);top:calc(var(--_gap) - var(--_arrow-size) / 2);bottom:auto;border-top-width:var(--_border-width);border-left-width:var(--_border-width);border-top-left-radius:var(--_arrow-tip-radius)}[data-ui-popover][data-side=left]>[data-part-arrow]{top:var(--_arrow-y);left:auto;right:calc(var(--_gap) - var(--_arrow-size) / 2);border-top-width:var(--_border-width);border-right-width:var(--_border-width);border-top-right-radius:var(--_arrow-tip-radius)}[data-ui-popover][data-side=right]>[data-part-arrow]{top:var(--_arrow-y);left:calc(var(--_gap) - var(--_arrow-size) / 2);right:auto;border-bottom-width:var(--_border-width);border-left-width:var(--_border-width);border-bottom-left-radius:var(--_arrow-tip-radius)}}\n"] }]
636
644
  }], ctorParameters: () => [] });
637
645
  /** The title, the description and the close control, on the row that stays put. */
638
646
  class SlPopoverHeader {
639
647
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverHeader, deps: [], target: i0.ɵɵFactoryTarget.Directive });
640
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverHeader, isStandalone: true, selector: "[slPopoverHeader]", host: { attributes: { "data-part": "header" } }, exportAs: ["slPopoverHeader"], ngImport: i0 });
648
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverHeader, isStandalone: true, selector: "[slPopoverHeader]", host: { attributes: { "data-part": "header", "data-part-header": "" } }, exportAs: ["slPopoverHeader"], ngImport: i0 });
641
649
  }
642
650
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverHeader, decorators: [{
643
651
  type: Directive,
@@ -645,7 +653,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
645
653
  selector: '[slPopoverHeader]',
646
654
  standalone: true,
647
655
  exportAs: 'slPopoverHeader',
648
- host: { 'data-part': 'header' },
656
+ host: { 'data-part': 'header', 'data-part-header': '' },
649
657
  }]
650
658
  }] });
651
659
  /**
@@ -660,7 +668,7 @@ class SlPopoverTitle {
660
668
  inject(DestroyRef).onDestroy(() => this.popover.hasTitle.set(false));
661
669
  }
662
670
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
663
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverTitle, isStandalone: true, selector: "[slPopoverTitle]", host: { attributes: { "data-part": "title" }, properties: { "attr.id": "popover.titleId" } }, exportAs: ["slPopoverTitle"], ngImport: i0 });
671
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverTitle, isStandalone: true, selector: "[slPopoverTitle]", host: { attributes: { "data-part": "title", "data-part-title": "" }, properties: { "attr.id": "popover.titleId" } }, exportAs: ["slPopoverTitle"], ngImport: i0 });
664
672
  }
665
673
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverTitle, decorators: [{
666
674
  type: Directive,
@@ -668,7 +676,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
668
676
  selector: '[slPopoverTitle]',
669
677
  standalone: true,
670
678
  exportAs: 'slPopoverTitle',
671
- host: { 'data-part': 'title', '[attr.id]': 'popover.titleId' },
679
+ host: { 'data-part': 'title', 'data-part-title': '', '[attr.id]': 'popover.titleId' },
672
680
  }]
673
681
  }], ctorParameters: () => [] });
674
682
  /** One line under the title, referenced by the panel rather than announced. */
@@ -679,7 +687,7 @@ class SlPopoverDescription {
679
687
  inject(DestroyRef).onDestroy(() => this.popover.hasDescription.set(false));
680
688
  }
681
689
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
682
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverDescription, isStandalone: true, selector: "[slPopoverDescription]", host: { attributes: { "data-part": "description" }, properties: { "attr.id": "popover.descriptionId" } }, exportAs: ["slPopoverDescription"], ngImport: i0 });
690
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverDescription, isStandalone: true, selector: "[slPopoverDescription]", host: { attributes: { "data-part": "description", "data-part-description": "" }, properties: { "attr.id": "popover.descriptionId" } }, exportAs: ["slPopoverDescription"], ngImport: i0 });
683
691
  }
684
692
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverDescription, decorators: [{
685
693
  type: Directive,
@@ -687,7 +695,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
687
695
  selector: '[slPopoverDescription]',
688
696
  standalone: true,
689
697
  exportAs: 'slPopoverDescription',
690
- host: { 'data-part': 'description', '[attr.id]': 'popover.descriptionId' },
698
+ host: {
699
+ 'data-part': 'description',
700
+ 'data-part-description': '',
701
+ '[attr.id]': 'popover.descriptionId',
702
+ },
691
703
  }]
692
704
  }], ctorParameters: () => [] });
693
705
  /**
@@ -697,7 +709,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
697
709
  */
698
710
  class SlPopoverBody {
699
711
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverBody, deps: [], target: i0.ɵɵFactoryTarget.Directive });
700
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverBody, isStandalone: true, selector: "[slPopoverBody]", host: { attributes: { "data-part": "body" } }, exportAs: ["slPopoverBody"], ngImport: i0 });
712
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverBody, isStandalone: true, selector: "[slPopoverBody]", host: { attributes: { "data-part": "body", "data-part-body": "" } }, exportAs: ["slPopoverBody"], ngImport: i0 });
701
713
  }
702
714
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverBody, decorators: [{
703
715
  type: Directive,
@@ -705,13 +717,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
705
717
  selector: '[slPopoverBody]',
706
718
  standalone: true,
707
719
  exportAs: 'slPopoverBody',
708
- host: { 'data-part': 'body' },
720
+ host: { 'data-part': 'body', 'data-part-body': '' },
709
721
  }]
710
722
  }] });
711
723
  /** The actions row, which keeps its height while the body scrolls under it. */
712
724
  class SlPopoverFooter {
713
725
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverFooter, deps: [], target: i0.ɵɵFactoryTarget.Directive });
714
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverFooter, isStandalone: true, selector: "[slPopoverFooter]", host: { attributes: { "data-part": "footer" } }, exportAs: ["slPopoverFooter"], ngImport: i0 });
726
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverFooter, isStandalone: true, selector: "[slPopoverFooter]", host: { attributes: { "data-part": "footer", "data-part-footer": "" } }, exportAs: ["slPopoverFooter"], ngImport: i0 });
715
727
  }
716
728
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverFooter, decorators: [{
717
729
  type: Directive,
@@ -719,7 +731,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
719
731
  selector: '[slPopoverFooter]',
720
732
  standalone: true,
721
733
  exportAs: 'slPopoverFooter',
722
- host: { 'data-part': 'footer' },
734
+ host: { 'data-part': 'footer', 'data-part-footer': '' },
723
735
  }]
724
736
  }] });
725
737
  /**
@@ -742,7 +754,7 @@ class SlPopoverClose {
742
754
  afterEveryRender(() => this.hasText.set((this.native.textContent ?? '').trim() !== ''));
743
755
  }
744
756
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverClose, deps: [], target: i0.ɵɵFactoryTarget.Component });
745
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverClose, isStandalone: true, selector: "button[slPopoverClose]", host: { attributes: { "data-part": "close", "type": "button" }, listeners: { "click": "popover.toggle(false, \"dismiss\", $event)" }, properties: { "attr.aria-label": "label()" } }, exportAs: ["slPopoverClose"], ngImport: i0, template: `<ng-content
757
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverClose, isStandalone: true, selector: "button[slPopoverClose]", host: { attributes: { "data-part": "close", "data-part-close": "", "type": "button" }, listeners: { "click": "popover.toggle(false, \"dismiss\", $event)" }, properties: { "attr.aria-label": "label()" } }, exportAs: ["slPopoverClose"], ngImport: i0, template: `<ng-content
746
758
  ><span slIcon size="sm"><svg slGlyph name="x"></svg></span
747
759
  ></ng-content>`, isInline: true, dependencies: [{ kind: "component", type: SlGlyph, selector: "svg[slGlyph]", inputs: ["name", "solid"] }, { kind: "component", type: SlIcon, selector: "[slIcon]", inputs: ["directional", "label", "size", "tone"], exportAs: ["slIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
748
760
  }
@@ -760,6 +772,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
760
772
  changeDetection: ChangeDetectionStrategy.OnPush,
761
773
  host: {
762
774
  'data-part': 'close',
775
+ 'data-part-close': '',
763
776
  type: 'button',
764
777
  '[attr.aria-label]': 'label()',
765
778
  '(click)': 'popover.toggle(false, "dismiss", $event)',
@@ -779,7 +792,7 @@ class SlPopoverArrow {
779
792
  inject(DestroyRef).onDestroy(() => popover.arrowNode.set(null));
780
793
  }
781
794
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverArrow, deps: [], target: i0.ɵɵFactoryTarget.Directive });
782
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverArrow, isStandalone: true, selector: "[slPopoverArrow]", host: { attributes: { "data-part": "arrow", "aria-hidden": "true" } }, exportAs: ["slPopoverArrow"], ngImport: i0 });
795
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.7", type: SlPopoverArrow, isStandalone: true, selector: "[slPopoverArrow]", host: { attributes: { "data-part": "arrow", "data-part-arrow": "", "aria-hidden": "true" } }, exportAs: ["slPopoverArrow"], ngImport: i0 });
783
796
  }
784
797
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImport: i0, type: SlPopoverArrow, decorators: [{
785
798
  type: Directive,
@@ -787,7 +800,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.7", ngImpor
787
800
  selector: '[slPopoverArrow]',
788
801
  standalone: true,
789
802
  exportAs: 'slPopoverArrow',
790
- host: { 'data-part': 'arrow', 'aria-hidden': 'true' },
803
+ host: { 'data-part': 'arrow', 'data-part-arrow': '', 'aria-hidden': 'true' },
791
804
  }]
792
805
  }], ctorParameters: () => [] });
793
806