@awc-ui/core 1.0.0-beta.2 → 1.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (698) hide show
  1. package/README.md +18 -0
  2. package/dist/cjs/app-globals-V2Kpy_OQ.js +8 -0
  3. package/dist/cjs/app-globals-V2Kpy_OQ.js.map +1 -0
  4. package/dist/cjs/engine.wasm-9JtXME10.js +12 -0
  5. package/dist/cjs/engine.wasm-9JtXME10.js.map +1 -0
  6. package/dist/cjs/{index-DlQ_5_Mv.js → index-Bm07YAg9.js} +4 -15
  7. package/dist/cjs/index-Bm07YAg9.js.map +1 -0
  8. package/dist/cjs/loader.cjs.js +3 -2
  9. package/dist/cjs/loader.cjs.js.map +1 -1
  10. package/dist/cjs/md-accordion-item.cjs.entry.js +1 -1
  11. package/dist/cjs/md-accordion.cjs.entry.js +1 -1
  12. package/dist/cjs/md-app-bar.cjs.entry.js +1 -1
  13. package/dist/cjs/md-area-chart.cjs.entry.js +1 -1
  14. package/dist/cjs/md-autocomplete.cjs.entry.js +2 -2
  15. package/dist/cjs/md-avatar_2.cjs.entry.js +1 -1
  16. package/dist/cjs/md-badge.cjs.entry.js +1 -1
  17. package/dist/cjs/md-bar-chart.cjs.entry.js +1 -1
  18. package/dist/cjs/md-bottom-sheet.cjs.entry.js +1 -1
  19. package/dist/cjs/md-breadcrumb-item.cjs.entry.js +1 -1
  20. package/dist/cjs/md-breadcrumbs.cjs.entry.js +1 -1
  21. package/dist/cjs/md-button-group.cjs.entry.js +1 -1
  22. package/dist/cjs/md-button_7.cjs.entry.js +1 -1
  23. package/dist/cjs/md-checkbox.cjs.entry.js +1 -1
  24. package/dist/cjs/md-chip.cjs.entry.js +1 -1
  25. package/dist/cjs/md-color-picker.cjs.entry.js +1 -1
  26. package/dist/cjs/md-date-picker.cjs.entry.js +1 -1
  27. package/dist/cjs/md-dialog.cjs.entry.js +1 -1
  28. package/dist/cjs/md-divider.cjs.entry.js +1 -1
  29. package/dist/cjs/md-fab-menu-item.cjs.entry.js +1 -1
  30. package/dist/cjs/md-fab-menu.cjs.entry.js +1 -1
  31. package/dist/cjs/md-fab.cjs.entry.js +1 -1
  32. package/dist/cjs/md-line-chart.cjs.entry.js +1 -1
  33. package/dist/cjs/md-list-item.cjs.entry.js +1 -1
  34. package/dist/cjs/md-list.cjs.entry.js +1 -1
  35. package/dist/cjs/md-menu-item-group.cjs.entry.js +1 -1
  36. package/dist/cjs/md-menu_2.cjs.entry.js +1 -1
  37. package/dist/cjs/md-meter.cjs.entry.js +1 -1
  38. package/dist/cjs/md-multi-select.cjs.entry.js +2 -2
  39. package/dist/cjs/md-navigation-bar.cjs.entry.js +1 -1
  40. package/dist/cjs/md-navigation-rail-tab.cjs.entry.js +1 -1
  41. package/dist/cjs/md-navigation-rail.cjs.entry.js +1 -1
  42. package/dist/cjs/md-navigation-tab.cjs.entry.js +1 -1
  43. package/dist/cjs/md-number-field.cjs.entry.js +1 -1
  44. package/dist/cjs/md-organization-chart.cjs.entry.js +1 -1
  45. package/dist/cjs/md-otp-field.cjs.entry.js +1 -1
  46. package/dist/cjs/md-pie-chart.cjs.entry.js +1 -1
  47. package/dist/cjs/md-progress-indicator.cjs.entry.js +1 -1
  48. package/dist/cjs/md-rating.cjs.entry.js +1 -1
  49. package/dist/cjs/md-search.cjs.entry.js +1 -1
  50. package/dist/cjs/md-segmented-button-set.cjs.entry.js +1 -1
  51. package/dist/cjs/md-segmented-button.cjs.entry.js +1 -1
  52. package/dist/cjs/md-select-option.cjs.entry.js +1 -1
  53. package/dist/cjs/md-select.cjs.entry.js +2 -2
  54. package/dist/cjs/md-side-sheet.cjs.entry.js +1 -1
  55. package/dist/cjs/md-skeleton.cjs.entry.js +1 -1
  56. package/dist/cjs/md-slider.cjs.entry.js +1 -1
  57. package/dist/cjs/md-sparkline.cjs.entry.js +1 -1
  58. package/dist/cjs/md-split-button.cjs.entry.js +1 -1
  59. package/dist/cjs/md-status-dot.cjs.entry.js +1 -1
  60. package/dist/cjs/md-step.cjs.entry.js +1 -1
  61. package/dist/cjs/md-stepper.cjs.entry.js +1 -1
  62. package/dist/cjs/md-sub-menu-item.cjs.entry.js +1 -1
  63. package/dist/cjs/md-switch.cjs.entry.js +1 -1
  64. package/dist/cjs/md-tab-panel.cjs.entry.js +1 -1
  65. package/dist/cjs/md-tab-panels.cjs.entry.js +1 -1
  66. package/dist/cjs/md-tab.cjs.entry.js +1 -1
  67. package/dist/cjs/md-table-body.cjs.entry.js +1 -1
  68. package/dist/cjs/md-table-cell.cjs.entry.js +1 -1
  69. package/dist/cjs/md-table-container.cjs.entry.js +1 -1
  70. package/dist/cjs/md-table-expand-toggle.cjs.entry.js +1 -1
  71. package/dist/cjs/md-table-foot.cjs.entry.js +1 -1
  72. package/dist/cjs/md-table-head.cjs.entry.js +1 -1
  73. package/dist/cjs/md-table-pagination.cjs.entry.js +1 -1
  74. package/dist/cjs/md-table-row.cjs.entry.js +1 -1
  75. package/dist/cjs/md-table-sort-label.cjs.entry.js +1 -1
  76. package/dist/cjs/md-table-toolbar.cjs.entry.js +1 -1
  77. package/dist/cjs/md-table.cjs.entry.js +1 -1
  78. package/dist/cjs/md-tabs.cjs.entry.js +1 -1
  79. package/dist/cjs/md-text-field.cjs.entry.js +1 -1
  80. package/dist/cjs/md-time-picker.cjs.entry.js +1 -1
  81. package/dist/cjs/md-toolbar.cjs.entry.js +1 -1
  82. package/dist/cjs/md-transfer-list.cjs.entry.js +1 -1
  83. package/dist/cjs/md3.cjs.js +3 -2
  84. package/dist/cjs/md3.cjs.js.map +1 -1
  85. package/dist/cjs/{virtual-select-controller-CqriaZgm.js → virtual-select-controller-C5cSoKfB.js} +10 -9
  86. package/dist/cjs/virtual-select-controller-C5cSoKfB.js.map +1 -0
  87. package/dist/collection/wasm/engine-abi.js +8 -2
  88. package/dist/collection/wasm/engine-abi.js.map +1 -1
  89. package/dist/components/index.js +1 -1
  90. package/dist/components/md-accordion-item.js +1 -1
  91. package/dist/components/md-accordion.js +1 -1
  92. package/dist/components/md-app-bar.js +1 -1
  93. package/dist/components/md-area-chart.js +1 -1
  94. package/dist/components/md-area-chart.js.map +1 -1
  95. package/dist/components/md-autocomplete.js +1 -1
  96. package/dist/components/md-avatar.js +1 -1
  97. package/dist/components/md-badge.js +1 -1
  98. package/dist/components/md-bar-chart.js +1 -1
  99. package/dist/components/md-bottom-sheet.js +1 -1
  100. package/dist/components/md-breadcrumb-item.js +1 -1
  101. package/dist/components/md-breadcrumbs.js +1 -1
  102. package/dist/components/md-button-group.js +1 -1
  103. package/dist/components/md-button.js +1 -1
  104. package/dist/components/md-card.js +1 -1
  105. package/dist/components/md-checkbox.js +1 -1
  106. package/dist/components/md-chip.js +1 -1
  107. package/dist/components/md-color-picker.js +1 -1
  108. package/dist/components/md-date-picker.js +1 -1
  109. package/dist/components/md-dialog.js +1 -1
  110. package/dist/components/md-divider.js +1 -1
  111. package/dist/components/md-fab-menu-item.js +1 -1
  112. package/dist/components/md-fab-menu.js +1 -1
  113. package/dist/components/md-fab.js +1 -1
  114. package/dist/components/md-icon-button.js +1 -1
  115. package/dist/components/md-line-chart.js +1 -1
  116. package/dist/components/md-list-item.js +1 -1
  117. package/dist/components/md-list.js +1 -1
  118. package/dist/components/md-loading-indicator.js +1 -1
  119. package/dist/components/md-menu-item-group.js +1 -1
  120. package/dist/components/md-menu-item.js +1 -1
  121. package/dist/components/md-menu.js +1 -1
  122. package/dist/components/md-meter.js +1 -1
  123. package/dist/components/md-multi-select.js +1 -1
  124. package/dist/components/md-navigation-bar.js +1 -1
  125. package/dist/components/md-navigation-rail-tab.js +1 -1
  126. package/dist/components/md-navigation-rail.js +1 -1
  127. package/dist/components/md-navigation-tab.js +1 -1
  128. package/dist/components/md-number-field.js +1 -1
  129. package/dist/components/md-organization-chart.js +1 -1
  130. package/dist/components/md-otp-field.js +1 -1
  131. package/dist/components/md-pie-chart.js +1 -1
  132. package/dist/components/md-progress-indicator.js +1 -1
  133. package/dist/components/md-radio.js +1 -1
  134. package/dist/components/md-rating.js +1 -1
  135. package/dist/components/md-ripple.js +1 -1
  136. package/dist/components/md-search.js +1 -1
  137. package/dist/components/md-segmented-button-set.js +1 -1
  138. package/dist/components/md-segmented-button.js +1 -1
  139. package/dist/components/md-select-option.js +1 -1
  140. package/dist/components/md-select.js +1 -1
  141. package/dist/components/md-side-sheet.js +1 -1
  142. package/dist/components/md-skeleton.js +1 -1
  143. package/dist/components/md-slider.js +1 -1
  144. package/dist/components/md-snackbar.js +1 -1
  145. package/dist/components/md-sparkline.js +1 -1
  146. package/dist/components/md-split-button.js +1 -1
  147. package/dist/components/md-status-dot.js +1 -1
  148. package/dist/components/md-step.js +1 -1
  149. package/dist/components/md-stepper.js +1 -1
  150. package/dist/components/md-sub-menu-item.js +1 -1
  151. package/dist/components/md-switch.js +1 -1
  152. package/dist/components/md-tab-panel.js +1 -1
  153. package/dist/components/md-tab-panels.js +1 -1
  154. package/dist/components/md-tab.js +1 -1
  155. package/dist/components/md-table-body.js +1 -1
  156. package/dist/components/md-table-cell.js +1 -1
  157. package/dist/components/md-table-container.js +1 -1
  158. package/dist/components/md-table-expand-toggle.js +1 -1
  159. package/dist/components/md-table-foot.js +1 -1
  160. package/dist/components/md-table-head.js +1 -1
  161. package/dist/components/md-table-pagination.js +1 -1
  162. package/dist/components/md-table-row.js +1 -1
  163. package/dist/components/md-table-sort-label.js +1 -1
  164. package/dist/components/md-table-toolbar.js +1 -1
  165. package/dist/components/md-table.js +1 -1
  166. package/dist/components/md-tabs.js +1 -1
  167. package/dist/components/md-text-field.js +1 -1
  168. package/dist/components/md-time-picker.js +1 -1
  169. package/dist/components/md-toolbar.js +1 -1
  170. package/dist/components/md-tooltip.js +1 -1
  171. package/dist/components/md-transfer-list.js +1 -1
  172. package/dist/components/p-B-JfuA2g.js +2 -0
  173. package/dist/components/p-B-JfuA2g.js.map +1 -0
  174. package/dist/components/p-B-iHDK5h.js +2 -0
  175. package/dist/components/p-B-iHDK5h.js.map +1 -0
  176. package/dist/components/p-BA2v4IuG.js +2 -0
  177. package/dist/components/p-BA2v4IuG.js.map +1 -0
  178. package/dist/components/p-BADA63mI.js +2 -0
  179. package/dist/components/p-BADA63mI.js.map +1 -0
  180. package/dist/components/p-BR6gfOQH.js +2 -0
  181. package/dist/components/p-BR6gfOQH.js.map +1 -0
  182. package/dist/components/p-Bz-JaJcA.js +2 -0
  183. package/dist/components/p-Bz-JaJcA.js.map +1 -0
  184. package/dist/components/p-CCMritCA.js +2 -0
  185. package/dist/components/p-CCMritCA.js.map +1 -0
  186. package/dist/components/p-CTC8XAB6.js +2 -0
  187. package/dist/components/p-CTC8XAB6.js.map +1 -0
  188. package/dist/components/p-CfBPnYW7.js +2 -0
  189. package/dist/components/p-CfBPnYW7.js.map +1 -0
  190. package/dist/components/p-CtVItLby.js +2 -0
  191. package/dist/components/p-CtVItLby.js.map +1 -0
  192. package/dist/components/p-D8oM1Kr3.js +2 -0
  193. package/dist/components/p-D8oM1Kr3.js.map +1 -0
  194. package/dist/components/{p-Ddiw2Kjw.js → p-DEzb9xsY.js} +2 -2
  195. package/dist/components/p-DEzb9xsY.js.map +1 -0
  196. package/dist/components/p-DYL-8C5C.js +2 -0
  197. package/dist/components/p-DYL-8C5C.js.map +1 -0
  198. package/dist/components/p-DfU4xY2F.js +2 -0
  199. package/dist/components/p-DfU4xY2F.js.map +1 -0
  200. package/dist/components/p-Eb44PPZa.js +2 -0
  201. package/dist/components/p-Eb44PPZa.js.map +1 -0
  202. package/dist/components/{p-UdGDg2oJ.js → p-Lsoo1B-2.js} +2 -2
  203. package/dist/components/p-Lsoo1B-2.js.map +1 -0
  204. package/dist/components/p-tSoecrcz.js +2 -0
  205. package/dist/components/p-tSoecrcz.js.map +1 -0
  206. package/dist/components-csr/index.js +2 -0
  207. package/dist/components-csr/index.js.map +1 -0
  208. package/dist/components-csr/md-accordion-item.js +2 -0
  209. package/dist/components-csr/md-accordion-item.js.map +1 -0
  210. package/dist/components-csr/md-accordion.js +2 -0
  211. package/dist/components-csr/md-accordion.js.map +1 -0
  212. package/dist/components-csr/md-app-bar.js +2 -0
  213. package/dist/components-csr/md-app-bar.js.map +1 -0
  214. package/dist/components-csr/md-area-chart.js +2 -0
  215. package/dist/components-csr/md-area-chart.js.map +1 -0
  216. package/dist/components-csr/md-autocomplete.js +2 -0
  217. package/dist/components-csr/md-autocomplete.js.map +1 -0
  218. package/dist/components-csr/md-avatar.js +2 -0
  219. package/dist/components-csr/md-avatar.js.map +1 -0
  220. package/dist/components-csr/md-badge.js +2 -0
  221. package/dist/components-csr/md-badge.js.map +1 -0
  222. package/dist/components-csr/md-bar-chart.js +2 -0
  223. package/dist/components-csr/md-bar-chart.js.map +1 -0
  224. package/dist/components-csr/md-bottom-sheet.js +2 -0
  225. package/dist/components-csr/md-bottom-sheet.js.map +1 -0
  226. package/dist/components-csr/md-breadcrumb-item.js +2 -0
  227. package/dist/components-csr/md-breadcrumb-item.js.map +1 -0
  228. package/dist/components-csr/md-breadcrumbs.js +2 -0
  229. package/dist/components-csr/md-breadcrumbs.js.map +1 -0
  230. package/dist/components-csr/md-button-group.js +2 -0
  231. package/dist/components-csr/md-button-group.js.map +1 -0
  232. package/dist/components-csr/md-button.js +2 -0
  233. package/dist/components-csr/md-button.js.map +1 -0
  234. package/dist/components-csr/md-card.js +2 -0
  235. package/dist/components-csr/md-card.js.map +1 -0
  236. package/dist/components-csr/md-checkbox.js +2 -0
  237. package/dist/components-csr/md-checkbox.js.map +1 -0
  238. package/dist/components-csr/md-chip.js +2 -0
  239. package/dist/components-csr/md-chip.js.map +1 -0
  240. package/dist/components-csr/md-color-picker.js +2 -0
  241. package/dist/components-csr/md-color-picker.js.map +1 -0
  242. package/dist/components-csr/md-date-picker.js +2 -0
  243. package/dist/components-csr/md-date-picker.js.map +1 -0
  244. package/dist/components-csr/md-dialog.js +2 -0
  245. package/dist/components-csr/md-dialog.js.map +1 -0
  246. package/dist/components-csr/md-divider.js +2 -0
  247. package/dist/components-csr/md-divider.js.map +1 -0
  248. package/dist/components-csr/md-fab-menu-item.js +2 -0
  249. package/dist/components-csr/md-fab-menu-item.js.map +1 -0
  250. package/dist/components-csr/md-fab-menu.js +2 -0
  251. package/dist/components-csr/md-fab-menu.js.map +1 -0
  252. package/dist/components-csr/md-fab.js +2 -0
  253. package/dist/components-csr/md-fab.js.map +1 -0
  254. package/dist/components-csr/md-icon-button.js +2 -0
  255. package/dist/components-csr/md-icon-button.js.map +1 -0
  256. package/dist/components-csr/md-line-chart.js +2 -0
  257. package/dist/components-csr/md-line-chart.js.map +1 -0
  258. package/dist/components-csr/md-list-item.js +2 -0
  259. package/dist/components-csr/md-list-item.js.map +1 -0
  260. package/dist/components-csr/md-list.js +2 -0
  261. package/dist/components-csr/md-list.js.map +1 -0
  262. package/dist/components-csr/md-loading-indicator.js +2 -0
  263. package/dist/components-csr/md-loading-indicator.js.map +1 -0
  264. package/dist/components-csr/md-menu-item-group.js +2 -0
  265. package/dist/components-csr/md-menu-item-group.js.map +1 -0
  266. package/dist/components-csr/md-menu-item.js +2 -0
  267. package/dist/components-csr/md-menu-item.js.map +1 -0
  268. package/dist/components-csr/md-menu.js +2 -0
  269. package/dist/components-csr/md-menu.js.map +1 -0
  270. package/dist/components-csr/md-meter.js +2 -0
  271. package/dist/components-csr/md-meter.js.map +1 -0
  272. package/dist/components-csr/md-multi-select.js +2 -0
  273. package/dist/components-csr/md-multi-select.js.map +1 -0
  274. package/dist/components-csr/md-navigation-bar.js +2 -0
  275. package/dist/components-csr/md-navigation-bar.js.map +1 -0
  276. package/dist/components-csr/md-navigation-rail-tab.js +2 -0
  277. package/dist/components-csr/md-navigation-rail-tab.js.map +1 -0
  278. package/dist/components-csr/md-navigation-rail.js +2 -0
  279. package/dist/components-csr/md-navigation-rail.js.map +1 -0
  280. package/dist/components-csr/md-navigation-tab.js +2 -0
  281. package/dist/components-csr/md-navigation-tab.js.map +1 -0
  282. package/dist/components-csr/md-number-field.js +2 -0
  283. package/dist/components-csr/md-number-field.js.map +1 -0
  284. package/dist/components-csr/md-organization-chart.js +2 -0
  285. package/dist/components-csr/md-organization-chart.js.map +1 -0
  286. package/dist/components-csr/md-otp-field.js +2 -0
  287. package/dist/components-csr/md-otp-field.js.map +1 -0
  288. package/dist/components-csr/md-pie-chart.js +2 -0
  289. package/dist/components-csr/md-pie-chart.js.map +1 -0
  290. package/dist/components-csr/md-progress-indicator.js +2 -0
  291. package/dist/components-csr/md-progress-indicator.js.map +1 -0
  292. package/dist/components-csr/md-radio.js +2 -0
  293. package/dist/components-csr/md-radio.js.map +1 -0
  294. package/dist/components-csr/md-rating.js +2 -0
  295. package/dist/components-csr/md-rating.js.map +1 -0
  296. package/dist/components-csr/md-ripple.js +2 -0
  297. package/dist/components-csr/md-ripple.js.map +1 -0
  298. package/dist/components-csr/md-search.js +2 -0
  299. package/dist/components-csr/md-search.js.map +1 -0
  300. package/dist/components-csr/md-segmented-button-set.js +2 -0
  301. package/dist/components-csr/md-segmented-button-set.js.map +1 -0
  302. package/dist/components-csr/md-segmented-button.js +2 -0
  303. package/dist/components-csr/md-segmented-button.js.map +1 -0
  304. package/dist/components-csr/md-select-option.js +2 -0
  305. package/dist/components-csr/md-select-option.js.map +1 -0
  306. package/dist/components-csr/md-select.js +2 -0
  307. package/dist/components-csr/md-select.js.map +1 -0
  308. package/dist/components-csr/md-side-sheet.js +2 -0
  309. package/dist/components-csr/md-side-sheet.js.map +1 -0
  310. package/dist/components-csr/md-skeleton.js +2 -0
  311. package/dist/components-csr/md-skeleton.js.map +1 -0
  312. package/dist/components-csr/md-slider.js +2 -0
  313. package/dist/components-csr/md-slider.js.map +1 -0
  314. package/dist/components-csr/md-snackbar.js +2 -0
  315. package/dist/components-csr/md-snackbar.js.map +1 -0
  316. package/dist/components-csr/md-sparkline.js +2 -0
  317. package/dist/components-csr/md-sparkline.js.map +1 -0
  318. package/dist/components-csr/md-split-button.js +2 -0
  319. package/dist/components-csr/md-split-button.js.map +1 -0
  320. package/dist/components-csr/md-status-dot.js +2 -0
  321. package/dist/components-csr/md-status-dot.js.map +1 -0
  322. package/dist/components-csr/md-step.js +2 -0
  323. package/dist/components-csr/md-step.js.map +1 -0
  324. package/dist/components-csr/md-stepper.js +2 -0
  325. package/dist/components-csr/md-stepper.js.map +1 -0
  326. package/dist/components-csr/md-sub-menu-item.js +2 -0
  327. package/dist/components-csr/md-sub-menu-item.js.map +1 -0
  328. package/dist/components-csr/md-switch.js +2 -0
  329. package/dist/components-csr/md-switch.js.map +1 -0
  330. package/dist/components-csr/md-tab-panel.js +2 -0
  331. package/dist/components-csr/md-tab-panel.js.map +1 -0
  332. package/dist/components-csr/md-tab-panels.js +2 -0
  333. package/dist/components-csr/md-tab-panels.js.map +1 -0
  334. package/dist/components-csr/md-tab.js +2 -0
  335. package/dist/components-csr/md-tab.js.map +1 -0
  336. package/dist/components-csr/md-table-body.js +2 -0
  337. package/dist/components-csr/md-table-body.js.map +1 -0
  338. package/dist/components-csr/md-table-cell.js +2 -0
  339. package/dist/components-csr/md-table-cell.js.map +1 -0
  340. package/dist/components-csr/md-table-container.js +2 -0
  341. package/dist/components-csr/md-table-container.js.map +1 -0
  342. package/dist/components-csr/md-table-expand-toggle.js +2 -0
  343. package/dist/components-csr/md-table-expand-toggle.js.map +1 -0
  344. package/dist/components-csr/md-table-foot.js +2 -0
  345. package/dist/components-csr/md-table-foot.js.map +1 -0
  346. package/dist/components-csr/md-table-head.js +2 -0
  347. package/dist/components-csr/md-table-head.js.map +1 -0
  348. package/dist/components-csr/md-table-pagination.js +2 -0
  349. package/dist/components-csr/md-table-pagination.js.map +1 -0
  350. package/dist/components-csr/md-table-row.js +2 -0
  351. package/dist/components-csr/md-table-row.js.map +1 -0
  352. package/dist/components-csr/md-table-sort-label.js +2 -0
  353. package/dist/components-csr/md-table-sort-label.js.map +1 -0
  354. package/dist/components-csr/md-table-toolbar.js +2 -0
  355. package/dist/components-csr/md-table-toolbar.js.map +1 -0
  356. package/dist/components-csr/md-table.js +2 -0
  357. package/dist/components-csr/md-table.js.map +1 -0
  358. package/dist/components-csr/md-tabs.js +2 -0
  359. package/dist/components-csr/md-tabs.js.map +1 -0
  360. package/dist/components-csr/md-text-field.js +2 -0
  361. package/dist/components-csr/md-text-field.js.map +1 -0
  362. package/dist/components-csr/md-time-picker.js +2 -0
  363. package/dist/components-csr/md-time-picker.js.map +1 -0
  364. package/dist/components-csr/md-toolbar.js +2 -0
  365. package/dist/components-csr/md-toolbar.js.map +1 -0
  366. package/dist/components-csr/md-tooltip.js +2 -0
  367. package/dist/components-csr/md-tooltip.js.map +1 -0
  368. package/dist/components-csr/md-transfer-list.js +2 -0
  369. package/dist/components-csr/md-transfer-list.js.map +1 -0
  370. package/dist/{components/p-DXXUoRSH.js → components-csr/p--OUYjgKN.js} +2 -2
  371. package/dist/{components/p-Dp-w93ot.js → components-csr/p--TCJgZnE.js} +2 -2
  372. package/dist/components-csr/p-BdEoSBtL.js +2 -0
  373. package/dist/components-csr/p-BdEoSBtL.js.map +1 -0
  374. package/dist/components-csr/p-Bmu7RqHM.js +2 -0
  375. package/dist/components-csr/p-Bx6--dQF.js +2 -0
  376. package/dist/components-csr/p-Bx6--dQF.js.map +1 -0
  377. package/dist/components-csr/p-Bz-JaJcA.js +2 -0
  378. package/dist/components-csr/p-Bz-JaJcA.js.map +1 -0
  379. package/dist/{components/p-uTEkf0sE.js → components-csr/p-C0DlKmRg.js} +2 -2
  380. package/dist/{components/p-Ch2-tttM.js → components-csr/p-C4_7YnHT.js} +2 -2
  381. package/dist/{components/p-BwXpiUsu.js → components-csr/p-CG6FaRlt.js} +2 -2
  382. package/dist/{components/p-B0Opn6dK.js → components-csr/p-CSrxeWwL.js} +2 -2
  383. package/dist/components-csr/p-C_ogF68H.js +2 -0
  384. package/dist/components-csr/p-C_ogF68H.js.map +1 -0
  385. package/dist/components-csr/p-Cch_V1vi.js +2 -0
  386. package/dist/components-csr/p-Cch_V1vi.js.map +1 -0
  387. package/dist/components-csr/p-CfBPnYW7.js +2 -0
  388. package/dist/components-csr/p-CfBPnYW7.js.map +1 -0
  389. package/dist/{components/p-B3MWYEEJ.js → components-csr/p-CrbzXk64.js} +2 -2
  390. package/dist/components-csr/p-CxhZdOPw.js +2 -0
  391. package/dist/components-csr/p-CxhZdOPw.js.map +1 -0
  392. package/dist/{components/p-7fN_yCXW.js → components-csr/p-DF19mmLl.js} +2 -2
  393. package/dist/components-csr/p-DWxN44zD.js +2 -0
  394. package/dist/components-csr/p-DWxN44zD.js.map +1 -0
  395. package/dist/components-csr/p-DYBUr7K_.js +2 -0
  396. package/dist/components-csr/p-DYBUr7K_.js.map +1 -0
  397. package/dist/{components/p-e2HRV63Y.js → components-csr/p-DfcpeJAu.js} +2 -2
  398. package/dist/components-csr/p-DvOKnoqK.js +2 -0
  399. package/dist/components-csr/p-DvOKnoqK.js.map +1 -0
  400. package/dist/{components/p-C8EP4S21.js → components-csr/p-DvXQXhgu.js} +2 -2
  401. package/dist/components-csr/p-DzPKu-Ma.js +2 -0
  402. package/dist/components-csr/p-DzPKu-Ma.js.map +1 -0
  403. package/dist/{components/p-stybaFzj.js → components-csr/p-Hm3X1iai.js} +2 -2
  404. package/dist/{components/p-6wZSqm_2.js → components-csr/p-IWA0yIjJ.js} +2 -2
  405. package/dist/components-csr/p-RLxbNqRv.js +2 -0
  406. package/dist/components-csr/p-RLxbNqRv.js.map +1 -0
  407. package/dist/components-csr/p-bSpXNc5J.js +2 -0
  408. package/dist/components-csr/p-bSpXNc5J.js.map +1 -0
  409. package/dist/components-csr/p-uZbtHo-A.js +2 -0
  410. package/dist/components-csr/package.json +3 -0
  411. package/dist/esm/app-globals-DQuL1Twl.js +6 -0
  412. package/dist/esm/app-globals-DQuL1Twl.js.map +1 -0
  413. package/dist/esm/engine.wasm-CfBPnYW7.js +10 -0
  414. package/dist/esm/engine.wasm-CfBPnYW7.js.map +1 -0
  415. package/dist/esm/{index-DTaX19_O.js → index-WmvQpZnM.js} +5 -15
  416. package/dist/esm/index-WmvQpZnM.js.map +1 -0
  417. package/dist/esm/loader.js +3 -2
  418. package/dist/esm/loader.js.map +1 -1
  419. package/dist/esm/md-accordion-item.entry.js +1 -1
  420. package/dist/esm/md-accordion.entry.js +1 -1
  421. package/dist/esm/md-app-bar.entry.js +1 -1
  422. package/dist/esm/md-area-chart.entry.js +1 -1
  423. package/dist/esm/md-autocomplete.entry.js +2 -2
  424. package/dist/esm/md-avatar_2.entry.js +1 -1
  425. package/dist/esm/md-badge.entry.js +1 -1
  426. package/dist/esm/md-bar-chart.entry.js +1 -1
  427. package/dist/esm/md-bottom-sheet.entry.js +1 -1
  428. package/dist/esm/md-breadcrumb-item.entry.js +1 -1
  429. package/dist/esm/md-breadcrumbs.entry.js +1 -1
  430. package/dist/esm/md-button-group.entry.js +1 -1
  431. package/dist/esm/md-button_7.entry.js +1 -1
  432. package/dist/esm/md-checkbox.entry.js +1 -1
  433. package/dist/esm/md-chip.entry.js +1 -1
  434. package/dist/esm/md-color-picker.entry.js +1 -1
  435. package/dist/esm/md-date-picker.entry.js +1 -1
  436. package/dist/esm/md-dialog.entry.js +1 -1
  437. package/dist/esm/md-divider.entry.js +1 -1
  438. package/dist/esm/md-fab-menu-item.entry.js +1 -1
  439. package/dist/esm/md-fab-menu.entry.js +1 -1
  440. package/dist/esm/md-fab.entry.js +1 -1
  441. package/dist/esm/md-line-chart.entry.js +1 -1
  442. package/dist/esm/md-list-item.entry.js +1 -1
  443. package/dist/esm/md-list.entry.js +1 -1
  444. package/dist/esm/md-menu-item-group.entry.js +1 -1
  445. package/dist/esm/md-menu_2.entry.js +1 -1
  446. package/dist/esm/md-meter.entry.js +1 -1
  447. package/dist/esm/md-multi-select.entry.js +2 -2
  448. package/dist/esm/md-navigation-bar.entry.js +1 -1
  449. package/dist/esm/md-navigation-rail-tab.entry.js +1 -1
  450. package/dist/esm/md-navigation-rail.entry.js +1 -1
  451. package/dist/esm/md-navigation-tab.entry.js +1 -1
  452. package/dist/esm/md-number-field.entry.js +1 -1
  453. package/dist/esm/md-organization-chart.entry.js +1 -1
  454. package/dist/esm/md-otp-field.entry.js +1 -1
  455. package/dist/esm/md-pie-chart.entry.js +1 -1
  456. package/dist/esm/md-progress-indicator.entry.js +1 -1
  457. package/dist/esm/md-rating.entry.js +1 -1
  458. package/dist/esm/md-search.entry.js +1 -1
  459. package/dist/esm/md-segmented-button-set.entry.js +1 -1
  460. package/dist/esm/md-segmented-button.entry.js +1 -1
  461. package/dist/esm/md-select-option.entry.js +1 -1
  462. package/dist/esm/md-select.entry.js +2 -2
  463. package/dist/esm/md-side-sheet.entry.js +1 -1
  464. package/dist/esm/md-skeleton.entry.js +1 -1
  465. package/dist/esm/md-slider.entry.js +1 -1
  466. package/dist/esm/md-sparkline.entry.js +1 -1
  467. package/dist/esm/md-split-button.entry.js +1 -1
  468. package/dist/esm/md-status-dot.entry.js +1 -1
  469. package/dist/esm/md-step.entry.js +1 -1
  470. package/dist/esm/md-stepper.entry.js +1 -1
  471. package/dist/esm/md-sub-menu-item.entry.js +1 -1
  472. package/dist/esm/md-switch.entry.js +1 -1
  473. package/dist/esm/md-tab-panel.entry.js +1 -1
  474. package/dist/esm/md-tab-panels.entry.js +1 -1
  475. package/dist/esm/md-tab.entry.js +1 -1
  476. package/dist/esm/md-table-body.entry.js +1 -1
  477. package/dist/esm/md-table-cell.entry.js +1 -1
  478. package/dist/esm/md-table-container.entry.js +1 -1
  479. package/dist/esm/md-table-expand-toggle.entry.js +1 -1
  480. package/dist/esm/md-table-foot.entry.js +1 -1
  481. package/dist/esm/md-table-head.entry.js +1 -1
  482. package/dist/esm/md-table-pagination.entry.js +1 -1
  483. package/dist/esm/md-table-row.entry.js +1 -1
  484. package/dist/esm/md-table-sort-label.entry.js +1 -1
  485. package/dist/esm/md-table-toolbar.entry.js +1 -1
  486. package/dist/esm/md-table.entry.js +1 -1
  487. package/dist/esm/md-tabs.entry.js +1 -1
  488. package/dist/esm/md-text-field.entry.js +1 -1
  489. package/dist/esm/md-time-picker.entry.js +1 -1
  490. package/dist/esm/md-toolbar.entry.js +1 -1
  491. package/dist/esm/md-transfer-list.entry.js +1 -1
  492. package/dist/esm/md3.js +3 -2
  493. package/dist/esm/md3.js.map +1 -1
  494. package/dist/esm/{virtual-select-controller-BEWIC0pC.js → virtual-select-controller-CR60w6DO.js} +10 -9
  495. package/dist/esm/virtual-select-controller-CR60w6DO.js.map +1 -0
  496. package/dist/md3/md3.css +1 -1
  497. package/dist/md3/md3.esm.js +1 -1
  498. package/dist/md3/md3.esm.js.map +1 -1
  499. package/dist/md3/{p-2e9503d7.entry.js → p-0a599351.entry.js} +2 -2
  500. package/dist/md3/p-1d7e0203.entry.js +2 -0
  501. package/dist/md3/{p-fb61868c.entry.js.map → p-1d7e0203.entry.js.map} +1 -1
  502. package/dist/md3/p-1e85b8a8.entry.js +2 -0
  503. package/dist/md3/{p-aaec2698.entry.js.map → p-1e85b8a8.entry.js.map} +1 -1
  504. package/dist/md3/{p-396089fd.entry.js → p-1edb5a0d.entry.js} +2 -2
  505. package/dist/md3/{p-c00f7514.entry.js → p-21c89d1d.entry.js} +2 -2
  506. package/dist/md3/p-22633b2d.entry.js +2 -0
  507. package/dist/md3/{p-6b2871a0.entry.js.map → p-22633b2d.entry.js.map} +1 -1
  508. package/dist/md3/{p-2e09a7b7.entry.js → p-27135a6b.entry.js} +2 -2
  509. package/dist/md3/{p-c063c823.entry.js → p-2befc42c.entry.js} +2 -2
  510. package/dist/md3/p-2dda08b2.entry.js +2 -0
  511. package/dist/md3/{p-21772851.entry.js.map → p-2dda08b2.entry.js.map} +1 -1
  512. package/dist/md3/p-3508d0e0.entry.js +2 -0
  513. package/dist/md3/{p-f31ab454.entry.js.map → p-3508d0e0.entry.js.map} +1 -1
  514. package/dist/md3/{p-b34d385b.entry.js → p-35b05b45.entry.js} +2 -2
  515. package/dist/md3/{p-c2dd8c8c.entry.js → p-38e9a583.entry.js} +2 -2
  516. package/dist/md3/{p-3cce1de3.entry.js → p-38f82d34.entry.js} +2 -2
  517. package/dist/md3/p-3a4bd4eb.entry.js +2 -0
  518. package/dist/md3/{p-72457a85.entry.js.map → p-3a4bd4eb.entry.js.map} +1 -1
  519. package/dist/md3/{p-be02624e.entry.js → p-3c0469aa.entry.js} +2 -2
  520. package/dist/md3/{p-63b8c8d1.entry.js → p-408ee4be.entry.js} +2 -2
  521. package/dist/md3/{p-3015c7e3.entry.js → p-4770b534.entry.js} +2 -2
  522. package/dist/md3/p-4aed552f.entry.js +2 -0
  523. package/dist/md3/{p-6c44cf13.entry.js.map → p-4aed552f.entry.js.map} +1 -1
  524. package/dist/md3/{p-c5af701b.entry.js → p-4ba3623e.entry.js} +2 -2
  525. package/dist/md3/{p-7b463fbe.entry.js → p-4f2e82cb.entry.js} +2 -2
  526. package/dist/md3/{p-be412e3f.entry.js → p-501bf161.entry.js} +2 -2
  527. package/dist/md3/{p-81843ff7.entry.js → p-5929e59c.entry.js} +2 -2
  528. package/dist/md3/{p-32bdd439.entry.js → p-5c35f916.entry.js} +2 -2
  529. package/dist/md3/{p-ac35ac5f.entry.js → p-5db87a9d.entry.js} +2 -2
  530. package/dist/md3/{p-6038b907.entry.js → p-5f39b49d.entry.js} +2 -2
  531. package/dist/md3/p-637baee1.entry.js +2 -0
  532. package/dist/md3/{p-47af9819.entry.js.map → p-637baee1.entry.js.map} +1 -1
  533. package/dist/md3/{p-05ae91b6.entry.js → p-6bf632c7.entry.js} +2 -2
  534. package/dist/md3/{p-4e3d6e40.entry.js → p-6ea7117d.entry.js} +2 -2
  535. package/dist/md3/{p-9ddbf247.entry.js → p-7112374d.entry.js} +2 -2
  536. package/dist/md3/{p-1a8ec5bc.entry.js → p-7858833e.entry.js} +2 -2
  537. package/dist/md3/p-7c8842bf.entry.js +2 -0
  538. package/dist/md3/{p-ba2ebde1.entry.js.map → p-7c8842bf.entry.js.map} +1 -1
  539. package/dist/md3/{p-4d82132d.entry.js → p-7f53a423.entry.js} +2 -2
  540. package/dist/md3/{p-b0431a5c.entry.js → p-8135c606.entry.js} +2 -2
  541. package/dist/md3/{p-4dda4cb0.entry.js → p-845ca9cc.entry.js} +2 -2
  542. package/dist/md3/{p-5b74694e.entry.js → p-89d47130.entry.js} +2 -2
  543. package/dist/md3/p-8a6fed13.entry.js +2 -0
  544. package/dist/md3/{p-a803da99.entry.js.map → p-8a6fed13.entry.js.map} +1 -1
  545. package/dist/md3/{p-e3124e1e.entry.js → p-8b1ea5dc.entry.js} +2 -2
  546. package/dist/md3/{p-c10a33c2.entry.js → p-8e7df348.entry.js} +2 -2
  547. package/dist/md3/{p-65195996.entry.js → p-925768ac.entry.js} +2 -2
  548. package/dist/md3/p-944e69e0.entry.js +2 -0
  549. package/dist/md3/{p-a3308c40.entry.js.map → p-944e69e0.entry.js.map} +1 -1
  550. package/dist/md3/{p-ac8762e5.entry.js → p-96c06b24.entry.js} +2 -2
  551. package/dist/md3/p-9b9677cc.entry.js +2 -0
  552. package/dist/md3/{p-e7dc5a32.entry.js.map → p-9b9677cc.entry.js.map} +1 -1
  553. package/dist/md3/p-Bz-JaJcA.js +2 -0
  554. package/dist/md3/p-Bz-JaJcA.js.map +1 -0
  555. package/dist/md3/p-CfBPnYW7.js +2 -0
  556. package/dist/md3/p-CfBPnYW7.js.map +1 -0
  557. package/dist/md3/p-DQuL1Twl.js +2 -0
  558. package/dist/md3/p-DQuL1Twl.js.map +1 -0
  559. package/dist/md3/p-WmvQpZnM.js +3 -0
  560. package/dist/md3/p-WmvQpZnM.js.map +1 -0
  561. package/dist/md3/p-a3623653.entry.js +2 -0
  562. package/dist/md3/{p-19ee9c33.entry.js.map → p-a3623653.entry.js.map} +1 -1
  563. package/dist/md3/{p-a5fee424.entry.js → p-a49df43d.entry.js} +2 -2
  564. package/dist/md3/{p-da4e27d4.entry.js → p-a4d4cfed.entry.js} +2 -2
  565. package/dist/md3/{p-5394254f.entry.js → p-a976498b.entry.js} +2 -2
  566. package/dist/md3/{p-bf7842f8.entry.js → p-adf8a415.entry.js} +2 -2
  567. package/dist/md3/{p-c861d774.entry.js → p-ae360663.entry.js} +2 -2
  568. package/dist/md3/{p-8eb0b6a4.entry.js → p-b243284b.entry.js} +2 -2
  569. package/dist/md3/{p-45280bf4.entry.js → p-b2d88292.entry.js} +2 -2
  570. package/dist/md3/{p-796f79f8.entry.js → p-b3b5247b.entry.js} +2 -2
  571. package/dist/md3/{p-5b799707.entry.js → p-b4266f6b.entry.js} +2 -2
  572. package/dist/md3/p-b5586b66.entry.js +2 -0
  573. package/dist/md3/{p-04e97f5d.entry.js.map → p-b5586b66.entry.js.map} +1 -1
  574. package/dist/md3/{p-a7ffb779.entry.js → p-b7602557.entry.js} +2 -2
  575. package/dist/md3/{p-6ba63c73.entry.js → p-bc24f0c9.entry.js} +2 -2
  576. package/dist/md3/{p-edb34a6d.entry.js → p-bed8dfec.entry.js} +2 -2
  577. package/dist/md3/{p-50555bb7.entry.js → p-c0476406.entry.js} +2 -2
  578. package/dist/md3/{p-0c2e824d.entry.js → p-c20fbb9e.entry.js} +2 -2
  579. package/dist/md3/{p-4e45b2ff.entry.js → p-c58c68d0.entry.js} +2 -2
  580. package/dist/md3/{p-fc0b325d.entry.js → p-cdcea99f.entry.js} +2 -2
  581. package/dist/md3/{p-0f764a1e.entry.js → p-d2e39c6e.entry.js} +2 -2
  582. package/dist/md3/p-d7e99f9e.entry.js +2 -0
  583. package/dist/md3/{p-cf07e761.entry.js.map → p-d7e99f9e.entry.js.map} +1 -1
  584. package/dist/md3/{p-c1ca6f6c.entry.js → p-da0c36d9.entry.js} +2 -2
  585. package/dist/md3/{p-77a01bcc.entry.js → p-e3c37222.entry.js} +2 -2
  586. package/dist/md3/{p-39cb7c24.entry.js → p-e6b09e71.entry.js} +2 -2
  587. package/dist/md3/{p-b4631a55.entry.js → p-eddae19a.entry.js} +2 -2
  588. package/dist/md3/{p-c6a12344.entry.js → p-ef7b1826.entry.js} +2 -2
  589. package/dist/md3/p-f1b69181.entry.js +2 -0
  590. package/dist/md3/{p-a986fd24.entry.js.map → p-f1b69181.entry.js.map} +1 -1
  591. package/dist/md3/{p-e6d7f0ff.entry.js → p-f403ad20.entry.js} +2 -2
  592. package/dist/md3/{p-708a9313.entry.js → p-f5fd9a0b.entry.js} +2 -2
  593. package/dist/md3/{p-aa0e7d4d.entry.js → p-f71af38f.entry.js} +2 -2
  594. package/dist/md3/{p-757e3aaf.entry.js → p-fac6da4c.entry.js} +2 -2
  595. package/dist/md3/{p-134b670a.entry.js → p-fc864f96.entry.js} +2 -2
  596. package/dist/types/wasm/engine-abi.d.ts +14 -0
  597. package/hydrate/index.js +19 -7
  598. package/hydrate/index.mjs +19 -7
  599. package/package.json +14 -3
  600. package/dist/cjs/index-DlQ_5_Mv.js.map +0 -1
  601. package/dist/cjs/virtual-select-controller-CqriaZgm.js.map +0 -1
  602. package/dist/components/p-BEWIC0pC.js +0 -2
  603. package/dist/components/p-BEWIC0pC.js.map +0 -1
  604. package/dist/components/p-MWBNn6Lj.js +0 -2
  605. package/dist/components/p-MWBNn6Lj.js.map +0 -1
  606. package/dist/esm/index-DTaX19_O.js.map +0 -1
  607. package/dist/esm/virtual-select-controller-BEWIC0pC.js.map +0 -1
  608. package/dist/md3/p-04e97f5d.entry.js +0 -2
  609. package/dist/md3/p-19ee9c33.entry.js +0 -2
  610. package/dist/md3/p-21772851.entry.js +0 -2
  611. package/dist/md3/p-47af9819.entry.js +0 -2
  612. package/dist/md3/p-6b2871a0.entry.js +0 -2
  613. package/dist/md3/p-6c44cf13.entry.js +0 -2
  614. package/dist/md3/p-72457a85.entry.js +0 -2
  615. package/dist/md3/p-BEWIC0pC.js +0 -2
  616. package/dist/md3/p-BEWIC0pC.js.map +0 -1
  617. package/dist/md3/p-DTaX19_O.js +0 -3
  618. package/dist/md3/p-DTaX19_O.js.map +0 -1
  619. package/dist/md3/p-a3308c40.entry.js +0 -2
  620. package/dist/md3/p-a803da99.entry.js +0 -2
  621. package/dist/md3/p-a986fd24.entry.js +0 -2
  622. package/dist/md3/p-aaec2698.entry.js +0 -2
  623. package/dist/md3/p-ba2ebde1.entry.js +0 -2
  624. package/dist/md3/p-cf07e761.entry.js +0 -2
  625. package/dist/md3/p-e7dc5a32.entry.js +0 -2
  626. package/dist/md3/p-f31ab454.entry.js +0 -2
  627. package/dist/md3/p-fb61868c.entry.js +0 -2
  628. /package/dist/{components/p-DXXUoRSH.js.map → components-csr/p--OUYjgKN.js.map} +0 -0
  629. /package/dist/{components/p-Dp-w93ot.js.map → components-csr/p--TCJgZnE.js.map} +0 -0
  630. /package/dist/{components/p-UdGDg2oJ.js.map → components-csr/p-Bmu7RqHM.js.map} +0 -0
  631. /package/dist/{components/p-uTEkf0sE.js.map → components-csr/p-C0DlKmRg.js.map} +0 -0
  632. /package/dist/{components/p-Ch2-tttM.js.map → components-csr/p-C4_7YnHT.js.map} +0 -0
  633. /package/dist/{components/p-BwXpiUsu.js.map → components-csr/p-CG6FaRlt.js.map} +0 -0
  634. /package/dist/{components/p-B0Opn6dK.js.map → components-csr/p-CSrxeWwL.js.map} +0 -0
  635. /package/dist/{components/p-B3MWYEEJ.js.map → components-csr/p-CrbzXk64.js.map} +0 -0
  636. /package/dist/{components/p-7fN_yCXW.js.map → components-csr/p-DF19mmLl.js.map} +0 -0
  637. /package/dist/{components/p-e2HRV63Y.js.map → components-csr/p-DfcpeJAu.js.map} +0 -0
  638. /package/dist/{components/p-C8EP4S21.js.map → components-csr/p-DvXQXhgu.js.map} +0 -0
  639. /package/dist/{components/p-stybaFzj.js.map → components-csr/p-Hm3X1iai.js.map} +0 -0
  640. /package/dist/{components/p-6wZSqm_2.js.map → components-csr/p-IWA0yIjJ.js.map} +0 -0
  641. /package/dist/{components/p-Ddiw2Kjw.js.map → components-csr/p-uZbtHo-A.js.map} +0 -0
  642. /package/dist/md3/{p-2e9503d7.entry.js.map → p-0a599351.entry.js.map} +0 -0
  643. /package/dist/md3/{p-396089fd.entry.js.map → p-1edb5a0d.entry.js.map} +0 -0
  644. /package/dist/md3/{p-c00f7514.entry.js.map → p-21c89d1d.entry.js.map} +0 -0
  645. /package/dist/md3/{p-2e09a7b7.entry.js.map → p-27135a6b.entry.js.map} +0 -0
  646. /package/dist/md3/{p-c063c823.entry.js.map → p-2befc42c.entry.js.map} +0 -0
  647. /package/dist/md3/{p-b34d385b.entry.js.map → p-35b05b45.entry.js.map} +0 -0
  648. /package/dist/md3/{p-c2dd8c8c.entry.js.map → p-38e9a583.entry.js.map} +0 -0
  649. /package/dist/md3/{p-3cce1de3.entry.js.map → p-38f82d34.entry.js.map} +0 -0
  650. /package/dist/md3/{p-be02624e.entry.js.map → p-3c0469aa.entry.js.map} +0 -0
  651. /package/dist/md3/{p-63b8c8d1.entry.js.map → p-408ee4be.entry.js.map} +0 -0
  652. /package/dist/md3/{p-3015c7e3.entry.js.map → p-4770b534.entry.js.map} +0 -0
  653. /package/dist/md3/{p-c5af701b.entry.js.map → p-4ba3623e.entry.js.map} +0 -0
  654. /package/dist/md3/{p-7b463fbe.entry.js.map → p-4f2e82cb.entry.js.map} +0 -0
  655. /package/dist/md3/{p-be412e3f.entry.js.map → p-501bf161.entry.js.map} +0 -0
  656. /package/dist/md3/{p-81843ff7.entry.js.map → p-5929e59c.entry.js.map} +0 -0
  657. /package/dist/md3/{p-32bdd439.entry.js.map → p-5c35f916.entry.js.map} +0 -0
  658. /package/dist/md3/{p-ac35ac5f.entry.js.map → p-5db87a9d.entry.js.map} +0 -0
  659. /package/dist/md3/{p-6038b907.entry.js.map → p-5f39b49d.entry.js.map} +0 -0
  660. /package/dist/md3/{p-05ae91b6.entry.js.map → p-6bf632c7.entry.js.map} +0 -0
  661. /package/dist/md3/{p-4e3d6e40.entry.js.map → p-6ea7117d.entry.js.map} +0 -0
  662. /package/dist/md3/{p-9ddbf247.entry.js.map → p-7112374d.entry.js.map} +0 -0
  663. /package/dist/md3/{p-1a8ec5bc.entry.js.map → p-7858833e.entry.js.map} +0 -0
  664. /package/dist/md3/{p-4d82132d.entry.js.map → p-7f53a423.entry.js.map} +0 -0
  665. /package/dist/md3/{p-b0431a5c.entry.js.map → p-8135c606.entry.js.map} +0 -0
  666. /package/dist/md3/{p-4dda4cb0.entry.js.map → p-845ca9cc.entry.js.map} +0 -0
  667. /package/dist/md3/{p-5b74694e.entry.js.map → p-89d47130.entry.js.map} +0 -0
  668. /package/dist/md3/{p-e3124e1e.entry.js.map → p-8b1ea5dc.entry.js.map} +0 -0
  669. /package/dist/md3/{p-c10a33c2.entry.js.map → p-8e7df348.entry.js.map} +0 -0
  670. /package/dist/md3/{p-65195996.entry.js.map → p-925768ac.entry.js.map} +0 -0
  671. /package/dist/md3/{p-ac8762e5.entry.js.map → p-96c06b24.entry.js.map} +0 -0
  672. /package/dist/md3/{p-a5fee424.entry.js.map → p-a49df43d.entry.js.map} +0 -0
  673. /package/dist/md3/{p-da4e27d4.entry.js.map → p-a4d4cfed.entry.js.map} +0 -0
  674. /package/dist/md3/{p-5394254f.entry.js.map → p-a976498b.entry.js.map} +0 -0
  675. /package/dist/md3/{p-bf7842f8.entry.js.map → p-adf8a415.entry.js.map} +0 -0
  676. /package/dist/md3/{p-c861d774.entry.js.map → p-ae360663.entry.js.map} +0 -0
  677. /package/dist/md3/{p-8eb0b6a4.entry.js.map → p-b243284b.entry.js.map} +0 -0
  678. /package/dist/md3/{p-45280bf4.entry.js.map → p-b2d88292.entry.js.map} +0 -0
  679. /package/dist/md3/{p-796f79f8.entry.js.map → p-b3b5247b.entry.js.map} +0 -0
  680. /package/dist/md3/{p-5b799707.entry.js.map → p-b4266f6b.entry.js.map} +0 -0
  681. /package/dist/md3/{p-a7ffb779.entry.js.map → p-b7602557.entry.js.map} +0 -0
  682. /package/dist/md3/{p-6ba63c73.entry.js.map → p-bc24f0c9.entry.js.map} +0 -0
  683. /package/dist/md3/{p-edb34a6d.entry.js.map → p-bed8dfec.entry.js.map} +0 -0
  684. /package/dist/md3/{p-50555bb7.entry.js.map → p-c0476406.entry.js.map} +0 -0
  685. /package/dist/md3/{p-0c2e824d.entry.js.map → p-c20fbb9e.entry.js.map} +0 -0
  686. /package/dist/md3/{p-4e45b2ff.entry.js.map → p-c58c68d0.entry.js.map} +0 -0
  687. /package/dist/md3/{p-fc0b325d.entry.js.map → p-cdcea99f.entry.js.map} +0 -0
  688. /package/dist/md3/{p-0f764a1e.entry.js.map → p-d2e39c6e.entry.js.map} +0 -0
  689. /package/dist/md3/{p-c1ca6f6c.entry.js.map → p-da0c36d9.entry.js.map} +0 -0
  690. /package/dist/md3/{p-77a01bcc.entry.js.map → p-e3c37222.entry.js.map} +0 -0
  691. /package/dist/md3/{p-39cb7c24.entry.js.map → p-e6b09e71.entry.js.map} +0 -0
  692. /package/dist/md3/{p-b4631a55.entry.js.map → p-eddae19a.entry.js.map} +0 -0
  693. /package/dist/md3/{p-c6a12344.entry.js.map → p-ef7b1826.entry.js.map} +0 -0
  694. /package/dist/md3/{p-e6d7f0ff.entry.js.map → p-f403ad20.entry.js.map} +0 -0
  695. /package/dist/md3/{p-708a9313.entry.js.map → p-f5fd9a0b.entry.js.map} +0 -0
  696. /package/dist/md3/{p-aa0e7d4d.entry.js.map → p-f71af38f.entry.js.map} +0 -0
  697. /package/dist/md3/{p-757e3aaf.entry.js.map → p-fac6da4c.entry.js.map} +0 -0
  698. /package/dist/md3/{p-134b670a.entry.js.map → p-fc864f96.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["mdStatusDotCss","MdStatusDot","constructor","hostRef","this","state","size","live","label","density","render","labelled","trim","role","h","Host","key","class"],"sources":["src/components/md-status-dot/md-status-dot.css?tag=md-status-dot&encapsulation=shadow","src/components/md-status-dot/md-status-dot.tsx"],"sourcesContent":["/* ==========================================================\n md-status-dot — Material Design 3 presence indicator\n Spec: https://m3.material.io/components/badges/specs\n (status / presence variant of the badge pattern)\n\n A small absolutely-positioned pip that pairs with an avatar\n (or any other tile) to surface user state. Drops into any\n `position: relative` parent and anchors at the bottom-end\n corner via logical-property insets so the pip auto-flips in\n RTL with no extra CSS.\n\n PUBLIC CSS CUSTOM PROPERTIES (override per-instance):\n --md-status-dot-size Dot diameter (overrides preset)\n --md-status-dot-color Dot fill color\n --md-status-dot-pulse-color Halo color used by the live pulse\n --md-status-dot-outline-color Halo outline (default surface)\n --md-status-dot-outline-width Halo outline width (default 2px)\n --md-status-dot-inset-end inline-end anchor offset (default -2px)\n --md-status-dot-inset-block-end block-end anchor offset (default -2px)\n --md-status-dot-pulse-duration Pulse animation period (default 1.6s)\n\n STATES:\n state=\"online\" Green — available\n state=\"away\" Amber — back soon\n state=\"busy\" Red — do-not-disturb\n state=\"offline\" Grey — signed out\n state=\"invisible\" Hollow ring on a surface fill — appear-offline\n state=\"neutral\" Default surface tone — no semantic meaning\n\n CSS PARTS:\n (none — the dot is a leaf element)\n\n SLOTS:\n (none — content is purely decorative)\n ========================================================== */\n\n/* ==========================================================\n 1. HOST — anchor + custom properties\n ========================================================== */\n:host {\n /* Sizing — overridden per-preset below. Custom diameters via\n `--md-status-dot-size` flow through the same pipeline. */\n --_size: var(--md-status-dot-size, max(6px, calc(12px + var(--md-sys-density-scale, 0) * 1.5px)));\n\n /* Default neutral surface tone — overridden by state modifiers below. */\n --_color: var(--md-status-dot-color, var(--md-sys-color-on-surface-variant, #49454F));\n\n /* Pulse halo color — defaults to transparent so the keyframes are\n no-ops unless the state modifier sets a real color. */\n --_pulse-color: var(--md-status-dot-pulse-color, transparent);\n\n /* Halo outline — separates the dot from the avatar tile. Surface-toned\n so it tracks the active theme. */\n --_outline-color: var(--md-status-dot-outline-color, var(--md-sys-color-surface, #FEF7FF));\n --_outline-width: var(--md-status-dot-outline-width, max(1px, calc(2px + var(--md-sys-density-scale, 0) * 0.25px)));\n\n position: absolute;\n inset-inline-end: var(--md-status-dot-inset-end, -2px);\n inset-block-end: var(--md-status-dot-inset-block-end, -2px);\n inline-size: var(--_size);\n block-size: var(--_size);\n border-radius: 50%;\n background-color: var(--_color);\n box-sizing: border-box;\n pointer-events: none;\n user-select: none;\n z-index: 1;\n\n /* Surface-toned halo. `outline` (rather than `border`) is used so the\n halo lives outside the dot's box and the dot's true diameter stays\n equal to `--_size`. */\n outline: var(--_outline-width) solid var(--_outline-color);\n outline-offset: 0;\n\n /* Smooth color transitions when the state attribute is toggled\n dynamically (e.g. websocket presence updates). */\n transition:\n background-color var(--md-sys-motion-duration-short2, 200ms)\n var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)),\n outline-color var(--md-sys-motion-duration-short2, 200ms)\n var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));\n}\n\n/* ==========================================================\n 2. SIZE PRESETS\n ========================================================== */\n:host(.md-status-dot--small) {\n --_size: var(--md-status-dot-size, max(4px, calc(8px + var(--md-sys-density-scale, 0) * 1px)));\n --_outline-width: var(--md-status-dot-outline-width, max(1px, calc(1.5px + var(--md-sys-density-scale, 0) * 0.125px)));\n}\n:host(.md-status-dot--medium) {\n --_size: var(--md-status-dot-size, max(6px, calc(12px + var(--md-sys-density-scale, 0) * 1.5px)));\n}\n:host(.md-status-dot--large) {\n --_size: var(--md-status-dot-size, max(8px, calc(16px + var(--md-sys-density-scale, 0) * 2px)));\n --_outline-width: var(--md-status-dot-outline-width, max(1.5px, calc(3px + var(--md-sys-density-scale, 0) * 0.375px)));\n /* Slightly larger anchor offset so the bigger dot still kisses the\n avatar edge without bleeding inside the tile. */\n inset-inline-end: var(--md-status-dot-inset-end, -3px);\n inset-block-end: var(--md-status-dot-inset-block-end, -3px);\n}\n\n/* ==========================================================\n 3. STATE MODIFIERS — semantic colors\n Each state writes to `--_color` (dot fill) and `--_pulse-color`\n (live-pulse halo). Custom properties on the host take priority,\n so consumers can override per-instance:\n\n <md-status-dot state=\"online\"\n style=\"--md-status-dot-color: var(--brand-success);\">\n </md-status-dot>\n ========================================================== */\n:host(.md-status-dot--online) {\n --_color: var(--md-status-dot-color, #2DC653);\n --_pulse-color: var(--md-status-dot-pulse-color, rgba(45, 198, 83, 0.55));\n}\n\n:host(.md-status-dot--away) {\n --_color: var(--md-status-dot-color, #F4B400);\n --_pulse-color: var(--md-status-dot-pulse-color, rgba(244, 180, 0, 0.55));\n}\n\n:host(.md-status-dot--busy) {\n --_color: var(--md-status-dot-color, #DB4437);\n --_pulse-color: var(--md-status-dot-pulse-color, rgba(219, 68, 55, 0.55));\n}\n\n:host(.md-status-dot--offline) {\n --_color: var(--md-status-dot-color, var(--md-sys-color-outline, #79747E));\n}\n\n/* \"Invisible\" reads as intentionally empty — surface fill in the centre\n plus an inset 2 px ring in the outline color. The base surface halo\n stays in place so the pip is still detached from the avatar tile.\n Combining `live` with `invisible` is supported but the inner ring is\n covered by the pulse keyframe; that combination is rarely meaningful\n semantically (you can't pulse-while-hidden) so it's documented as a\n minor visual conflict rather than special-cased. */\n:host(.md-status-dot--invisible) {\n --_color: var(--md-status-dot-color, var(--md-sys-color-surface, #FEF7FF));\n box-shadow: inset 0 0 0 2px var(--md-sys-color-outline, #79747E);\n}\n\n/* `state=\"neutral\"` is the default — no extra rules needed. */\n\n/* ==========================================================\n 4. LIVE PULSE\n The keyframes interpolate the box-shadow color from the\n variant's `--_pulse-color` (semi-transparent variant hue) to\n `transparent` (alpha 0). The browser smooths both the spread\n (0px → 8px) and the alpha in one go, producing a clean\n outward-fading ring in the dot's own color.\n ========================================================== */\n@keyframes md-status-dot-pulse {\n 0% {\n box-shadow: 0 0 0 0 var(--_pulse-color);\n }\n 70% {\n box-shadow: 0 0 0 8px transparent;\n }\n 100% {\n box-shadow: 0 0 0 0 transparent;\n }\n}\n\n/* Honour the OS reduced-motion preference: only animate when the\n user has expressed no preference (or explicitly opted in). */\n@media (prefers-reduced-motion: no-preference) {\n :host(.md-status-dot--live) {\n animation: md-status-dot-pulse\n var(--md-status-dot-pulse-duration, 1.6s)\n ease-out infinite;\n }\n}\n\n/* ==========================================================\n 5. FORCED COLORS — Windows High Contrast\n System tokens replace the design-system tokens so the dot\n stays visible against any palette.\n ========================================================== */\n@media (forced-colors: active) {\n :host {\n forced-color-adjust: none;\n background-color: Mark;\n outline-color: ButtonFace;\n }\n :host(.md-status-dot--invisible) {\n background-color: ButtonFace;\n box-shadow: inset 0 0 0 2px ButtonText;\n }\n}\n\n/* ==========================================================\n DENSITY (local override)\n Maps the local `density` prop onto the same --md-sys-density-scale signal a\n global `data-density` ancestor sets. Declared on :host, so a local rung wins\n over the inherited global one. Every density-sensitive value in this file\n derives from that single signal by calc — never add a fixed per-rung ladder.\n ========================================================== */\n:host([density='-1']) { --md-sys-density-scale: -1; }\n:host([density='-2']) { --md-sys-density-scale: -2; }\n:host([density='-3']) { --md-sys-density-scale: -3; }\n:host([density='-4']) { --md-sys-density-scale: -4; }\n","import { Component, Host, h, Prop, Element } from '@stencil/core';\n\n/**\n * Presence states understood by `<md-status-dot>`.\n *\n * - `online` — green, \"available\"\n * - `away` — amber, \"back soon\"\n * - `busy` — red, \"do not disturb\"\n * - `offline` — neutral grey, \"signed out\"\n * - `invisible` — hollow ring on a surface fill, \"appear offline\"\n * - `neutral` — surface-tone default, no semantic meaning\n * (use this when the host already encodes the state\n * elsewhere and the dot is a pure decoration)\n */\nexport type MdStatusDotState =\n | 'online'\n | 'away'\n | 'busy'\n | 'offline'\n | 'invisible'\n | 'neutral';\n\n/** Diameter preset for the dot. */\nexport type MdStatusDotSize = 'small' | 'medium' | 'large';\n\n/**\n * `md-status-dot` — a small absolutely-positioned indicator that pairs\n * with an avatar (or any other tile) to surface presence / state.\n *\n * Designed to drop straight into a `position: relative` parent:\n *\n * ```html\n * <span style=\"position: relative; display: inline-flex;\">\n * <md-avatar name=\"Ada Lovelace\" label=\"Ada Lovelace, online\"></md-avatar>\n * <md-status-dot state=\"online\"></md-status-dot>\n * </span>\n * ```\n *\n * Anchors at the bottom-inline-end corner via logical-property insets, so\n * the pip auto-flips in RTL with no extra CSS. A 2 px outline in the\n * surface color keeps the dot visually detached from the avatar tile\n * regardless of the avatar's palette.\n *\n * **Accessibility.** The dot is **decorative by default** — when used to\n * decorate an avatar, the avatar's own `label` should already encode the\n * status (`label=\"Ada Lovelace, online\"`). Setting an explicit `label`\n * exposes the dot to assistive tech:\n * - **static** (`live` off) → `role=\"img\"` + `aria-label` — a labelled image\n * conveying the current state, announced when focused/encountered.\n * - **live** (`live` on) → `role=\"status\"` (an `aria-live=\"polite\"` region) so\n * presence *changes* (online → busy) are announced as they happen.\n *\n * **WCAG 1.4.1 (use of colour).** State is conveyed by colour alone, and in\n * Windows High-Contrast every state collapses to a single system colour. Never\n * rely on the dot's colour as the *only* signal of state — pair it with a\n * `label` (or text on the parent) so the status is also available as words.\n *\n * **Live indicator.** When `live` is `true`, the dot pulses outward in its\n * own colour (online pulses green, busy pulses red, etc.). The animation\n * is gated behind `prefers-reduced-motion: no-preference`, so users who\n * have reduced-motion enabled at the OS level see a static dot.\n */\n@Component({\n tag: 'md-status-dot',\n styleUrl: 'md-status-dot.css',\n shadow: true,\n})\nexport class MdStatusDot {\n @Element() el!: HTMLElement;\n\n /**\n * Presence state. Drives the dot's fill color and its corresponding\n * pulse-halo color (when `live` is `true`).\n */\n @Prop({ reflect: true }) state: MdStatusDotState = 'neutral';\n\n /**\n * Diameter preset:\n * - `small` — 8 px (pairs with `md-avatar size=\"small\"`)\n * - `medium` — 12 px (pairs with `md-avatar size=\"medium\"` — default)\n * - `large` — 16 px (pairs with `md-avatar size=\"large\"`)\n *\n * Custom diameters are exposed via the `--md-status-dot-size` CSS\n * custom property on the host.\n */\n @Prop({ reflect: true }) size: MdStatusDotSize = 'medium';\n\n /**\n * Pulse the dot outward in its own colour. Useful for \"live now\",\n * \"in a call\", \"recording\" affordances. Respects\n * `prefers-reduced-motion: reduce` automatically.\n */\n @Prop({ reflect: true }) live: boolean = false;\n\n /**\n * Optional accessible label.\n *\n * - When **empty** (default), the dot is exposed to AT as decorative\n * (`role=\"presentation\"` + `aria-hidden=\"true\"`) so the parent\n * element (typically an `md-avatar` or a list-item) can carry the\n * spoken status without doubling.\n * - When **set** and `live` is **off**, the dot becomes `role=\"img\"` with\n * the value as its `aria-label` — a static, labelled status image.\n * - When **set** and `live` is **on**, the dot becomes a `role=\"status\"`\n * live region so presence *changes* are announced as they occur. Use this\n * for standalone dots that aren't paired with another labelled element.\n */\n @Prop() label: string = '';\n\n /**\n * Local density rung. Drives the same `--md-sys-density-scale` signal that a\n * global `data-density` ancestor sets, so a local value simply overrides the\n * inherited one. 0 = default, -4 = ultra-compact.\n */\n @Prop({ reflect: true }) density: 0 | -1 | -2 | -3 | -4 = 0;\n\n render() {\n const labelled = !!this.label.trim();\n // Decorative → presentation; labelled+static → img; labelled+live → status\n // (a live region that announces presence changes). role=\"status\" implies\n // aria-live=\"polite\", so static labels deliberately avoid it to prevent\n // spurious announcements when the dot merely renders.\n const role = labelled ? (this.live ? 'status' : 'img') : 'presentation';\n\n return (\n <Host\n class={{\n 'md-status-dot': true,\n [`md-status-dot--${this.state}`]: true,\n [`md-status-dot--${this.size}`]: true,\n 'md-status-dot--live': this.live,\n 'md-status-dot--labelled': labelled,\n }}\n role={role}\n aria-label={labelled ? this.label : null}\n aria-hidden={labelled ? null : 'true'}\n />\n );\n }\n}\n"],"mappings":"oDAAA,MAAMA,EAAiB,IAAM,wsG,MCmEhBC,EAAW,MALxB,WAAAC,CAAAC,G,UAY2BC,KAAAC,MAA0B,UAW1BD,KAAAE,KAAwB,SAOxBF,KAAAG,KAAgB,MAejCH,KAAAI,MAAgB,GAOCJ,KAAAK,QAAiC,CAyB3D,CAvBC,MAAAC,GACE,MAAMC,IAAaP,KAAKI,MAAMI,OAK9B,MAAMC,EAAOF,EAAYP,KAAKG,KAAO,SAAW,MAAS,eAEzD,OACEO,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACL,gBAAiB,KACjB,CAAC,kBAAkBb,KAAKC,SAAU,KAClC,CAAC,kBAAkBD,KAAKE,QAAS,KACjC,sBAAuBF,KAAKG,KAC5B,0BAA2BI,GAE7BE,KAAMA,EAAI,aACEF,EAAWP,KAAKI,MAAQ,KAAI,cAC3BG,EAAW,KAAO,Q","ignoreList":[]}
1
+ {"version":3,"names":["mdStatusDotCss","MdStatusDot","constructor","hostRef","this","state","size","live","label","density","render","labelled","trim","role","h","Host","key","class"],"sources":["src/components/md-status-dot/md-status-dot.css?tag=md-status-dot&encapsulation=shadow","src/components/md-status-dot/md-status-dot.tsx"],"sourcesContent":["/* ==========================================================\n md-status-dot — Material Design 3 presence indicator\n Spec: https://m3.material.io/components/badges/specs\n (status / presence variant of the badge pattern)\n\n A small absolutely-positioned pip that pairs with an avatar\n (or any other tile) to surface user state. Drops into any\n `position: relative` parent and anchors at the bottom-end\n corner via logical-property insets so the pip auto-flips in\n RTL with no extra CSS.\n\n PUBLIC CSS CUSTOM PROPERTIES (override per-instance):\n --md-status-dot-size Dot diameter (overrides preset)\n --md-status-dot-color Dot fill color\n --md-status-dot-pulse-color Halo color used by the live pulse\n --md-status-dot-outline-color Halo outline (default surface)\n --md-status-dot-outline-width Halo outline width (default 2px)\n --md-status-dot-inset-end inline-end anchor offset (default -2px)\n --md-status-dot-inset-block-end block-end anchor offset (default -2px)\n --md-status-dot-pulse-duration Pulse animation period (default 1.6s)\n\n STATES:\n state=\"online\" Green — available\n state=\"away\" Amber — back soon\n state=\"busy\" Red — do-not-disturb\n state=\"offline\" Grey — signed out\n state=\"invisible\" Hollow ring on a surface fill — appear-offline\n state=\"neutral\" Default surface tone — no semantic meaning\n\n CSS PARTS:\n (none — the dot is a leaf element)\n\n SLOTS:\n (none — content is purely decorative)\n ========================================================== */\n\n/* ==========================================================\n 1. HOST — anchor + custom properties\n ========================================================== */\n:host {\n /* Sizing — overridden per-preset below. Custom diameters via\n `--md-status-dot-size` flow through the same pipeline. */\n --_size: var(--md-status-dot-size, max(6px, calc(12px + var(--md-sys-density-scale, 0) * 1.5px)));\n\n /* Default neutral surface tone — overridden by state modifiers below. */\n --_color: var(--md-status-dot-color, var(--md-sys-color-on-surface-variant, #49454F));\n\n /* Pulse halo color — defaults to transparent so the keyframes are\n no-ops unless the state modifier sets a real color. */\n --_pulse-color: var(--md-status-dot-pulse-color, transparent);\n\n /* Halo outline — separates the dot from the avatar tile. Surface-toned\n so it tracks the active theme. */\n --_outline-color: var(--md-status-dot-outline-color, var(--md-sys-color-surface, #FEF7FF));\n --_outline-width: var(--md-status-dot-outline-width, max(1px, calc(2px + var(--md-sys-density-scale, 0) * 0.25px)));\n\n position: absolute;\n inset-inline-end: var(--md-status-dot-inset-end, -2px);\n inset-block-end: var(--md-status-dot-inset-block-end, -2px);\n inline-size: var(--_size);\n block-size: var(--_size);\n border-radius: 50%;\n background-color: var(--_color);\n box-sizing: border-box;\n pointer-events: none;\n user-select: none;\n z-index: 1;\n\n /* Surface-toned halo. `outline` (rather than `border`) is used so the\n halo lives outside the dot's box and the dot's true diameter stays\n equal to `--_size`. */\n outline: var(--_outline-width) solid var(--_outline-color);\n outline-offset: 0;\n\n /* Smooth color transitions when the state attribute is toggled\n dynamically (e.g. websocket presence updates). */\n transition:\n background-color var(--md-sys-motion-duration-short2, 200ms)\n var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)),\n outline-color var(--md-sys-motion-duration-short2, 200ms)\n var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));\n}\n\n/* ==========================================================\n 2. SIZE PRESETS\n ========================================================== */\n:host(.md-status-dot--small) {\n --_size: var(--md-status-dot-size, max(4px, calc(8px + var(--md-sys-density-scale, 0) * 1px)));\n --_outline-width: var(--md-status-dot-outline-width, max(1px, calc(1.5px + var(--md-sys-density-scale, 0) * 0.125px)));\n}\n:host(.md-status-dot--medium) {\n --_size: var(--md-status-dot-size, max(6px, calc(12px + var(--md-sys-density-scale, 0) * 1.5px)));\n}\n:host(.md-status-dot--large) {\n --_size: var(--md-status-dot-size, max(8px, calc(16px + var(--md-sys-density-scale, 0) * 2px)));\n --_outline-width: var(--md-status-dot-outline-width, max(1.5px, calc(3px + var(--md-sys-density-scale, 0) * 0.375px)));\n /* Slightly larger anchor offset so the bigger dot still kisses the\n avatar edge without bleeding inside the tile. */\n inset-inline-end: var(--md-status-dot-inset-end, -3px);\n inset-block-end: var(--md-status-dot-inset-block-end, -3px);\n}\n\n/* ==========================================================\n 3. STATE MODIFIERS — semantic colors\n Each state writes to `--_color` (dot fill) and `--_pulse-color`\n (live-pulse halo). Custom properties on the host take priority,\n so consumers can override per-instance:\n\n <md-status-dot state=\"online\"\n style=\"--md-status-dot-color: var(--brand-success);\">\n </md-status-dot>\n ========================================================== */\n:host(.md-status-dot--online) {\n --_color: var(--md-status-dot-color, #2DC653);\n --_pulse-color: var(--md-status-dot-pulse-color, rgba(45, 198, 83, 0.55));\n}\n\n:host(.md-status-dot--away) {\n --_color: var(--md-status-dot-color, #F4B400);\n --_pulse-color: var(--md-status-dot-pulse-color, rgba(244, 180, 0, 0.55));\n}\n\n:host(.md-status-dot--busy) {\n --_color: var(--md-status-dot-color, #DB4437);\n --_pulse-color: var(--md-status-dot-pulse-color, rgba(219, 68, 55, 0.55));\n}\n\n:host(.md-status-dot--offline) {\n --_color: var(--md-status-dot-color, var(--md-sys-color-outline, #79747E));\n}\n\n/* \"Invisible\" reads as intentionally empty — surface fill in the centre\n plus an inset 2 px ring in the outline color. The base surface halo\n stays in place so the pip is still detached from the avatar tile.\n Combining `live` with `invisible` is supported but the inner ring is\n covered by the pulse keyframe; that combination is rarely meaningful\n semantically (you can't pulse-while-hidden) so it's documented as a\n minor visual conflict rather than special-cased. */\n:host(.md-status-dot--invisible) {\n --_color: var(--md-status-dot-color, var(--md-sys-color-surface, #FEF7FF));\n box-shadow: inset 0 0 0 2px var(--md-sys-color-outline, #79747E);\n}\n\n/* `state=\"neutral\"` is the default — no extra rules needed. */\n\n/* ==========================================================\n 4. LIVE PULSE\n The keyframes interpolate the box-shadow color from the\n variant's `--_pulse-color` (semi-transparent variant hue) to\n `transparent` (alpha 0). The browser smooths both the spread\n (0px → 8px) and the alpha in one go, producing a clean\n outward-fading ring in the dot's own color.\n ========================================================== */\n@keyframes md-status-dot-pulse {\n 0% {\n box-shadow: 0 0 0 0 var(--_pulse-color);\n }\n 70% {\n box-shadow: 0 0 0 8px transparent;\n }\n 100% {\n box-shadow: 0 0 0 0 transparent;\n }\n}\n\n/* Honour the OS reduced-motion preference: only animate when the\n user has expressed no preference (or explicitly opted in). */\n@media (prefers-reduced-motion: no-preference) {\n :host(.md-status-dot--live) {\n animation: md-status-dot-pulse\n var(--md-status-dot-pulse-duration, 1.6s)\n ease-out infinite;\n }\n}\n\n/* ==========================================================\n 5. FORCED COLORS — Windows High Contrast\n System tokens replace the design-system tokens so the dot\n stays visible against any palette.\n ========================================================== */\n@media (forced-colors: active) {\n :host {\n forced-color-adjust: none;\n background-color: Mark;\n outline-color: ButtonFace;\n }\n :host(.md-status-dot--invisible) {\n background-color: ButtonFace;\n box-shadow: inset 0 0 0 2px ButtonText;\n }\n}\n\n/* ==========================================================\n DENSITY (local override)\n Maps the local `density` prop onto the same --md-sys-density-scale signal a\n global `data-density` ancestor sets. Declared on :host, so a local rung wins\n over the inherited global one. Every density-sensitive value in this file\n derives from that single signal by calc — never add a fixed per-rung ladder.\n ========================================================== */\n:host([density='-1']) { --md-sys-density-scale: -1; }\n:host([density='-2']) { --md-sys-density-scale: -2; }\n:host([density='-3']) { --md-sys-density-scale: -3; }\n:host([density='-4']) { --md-sys-density-scale: -4; }\n","import { Component, Host, h, Prop, Element } from '@stencil/core';\n\n/**\n * Presence states understood by `<md-status-dot>`.\n *\n * - `online` — green, \"available\"\n * - `away` — amber, \"back soon\"\n * - `busy` — red, \"do not disturb\"\n * - `offline` — neutral grey, \"signed out\"\n * - `invisible` — hollow ring on a surface fill, \"appear offline\"\n * - `neutral` — surface-tone default, no semantic meaning\n * (use this when the host already encodes the state\n * elsewhere and the dot is a pure decoration)\n */\nexport type MdStatusDotState =\n | 'online'\n | 'away'\n | 'busy'\n | 'offline'\n | 'invisible'\n | 'neutral';\n\n/** Diameter preset for the dot. */\nexport type MdStatusDotSize = 'small' | 'medium' | 'large';\n\n/**\n * `md-status-dot` — a small absolutely-positioned indicator that pairs\n * with an avatar (or any other tile) to surface presence / state.\n *\n * Designed to drop straight into a `position: relative` parent:\n *\n * ```html\n * <span style=\"position: relative; display: inline-flex;\">\n * <md-avatar name=\"Ada Lovelace\" label=\"Ada Lovelace, online\"></md-avatar>\n * <md-status-dot state=\"online\"></md-status-dot>\n * </span>\n * ```\n *\n * Anchors at the bottom-inline-end corner via logical-property insets, so\n * the pip auto-flips in RTL with no extra CSS. A 2 px outline in the\n * surface color keeps the dot visually detached from the avatar tile\n * regardless of the avatar's palette.\n *\n * **Accessibility.** The dot is **decorative by default** — when used to\n * decorate an avatar, the avatar's own `label` should already encode the\n * status (`label=\"Ada Lovelace, online\"`). Setting an explicit `label`\n * exposes the dot to assistive tech:\n * - **static** (`live` off) → `role=\"img\"` + `aria-label` — a labelled image\n * conveying the current state, announced when focused/encountered.\n * - **live** (`live` on) → `role=\"status\"` (an `aria-live=\"polite\"` region) so\n * presence *changes* (online → busy) are announced as they happen.\n *\n * **WCAG 1.4.1 (use of colour).** State is conveyed by colour alone, and in\n * Windows High-Contrast every state collapses to a single system colour. Never\n * rely on the dot's colour as the *only* signal of state — pair it with a\n * `label` (or text on the parent) so the status is also available as words.\n *\n * **Live indicator.** When `live` is `true`, the dot pulses outward in its\n * own colour (online pulses green, busy pulses red, etc.). The animation\n * is gated behind `prefers-reduced-motion: no-preference`, so users who\n * have reduced-motion enabled at the OS level see a static dot.\n */\n@Component({\n tag: 'md-status-dot',\n styleUrl: 'md-status-dot.css',\n shadow: true,\n})\nexport class MdStatusDot {\n @Element() el!: HTMLElement;\n\n /**\n * Presence state. Drives the dot's fill color and its corresponding\n * pulse-halo color (when `live` is `true`).\n */\n @Prop({ reflect: true }) state: MdStatusDotState = 'neutral';\n\n /**\n * Diameter preset:\n * - `small` — 8 px (pairs with `md-avatar size=\"small\"`)\n * - `medium` — 12 px (pairs with `md-avatar size=\"medium\"` — default)\n * - `large` — 16 px (pairs with `md-avatar size=\"large\"`)\n *\n * Custom diameters are exposed via the `--md-status-dot-size` CSS\n * custom property on the host.\n */\n @Prop({ reflect: true }) size: MdStatusDotSize = 'medium';\n\n /**\n * Pulse the dot outward in its own colour. Useful for \"live now\",\n * \"in a call\", \"recording\" affordances. Respects\n * `prefers-reduced-motion: reduce` automatically.\n */\n @Prop({ reflect: true }) live: boolean = false;\n\n /**\n * Optional accessible label.\n *\n * - When **empty** (default), the dot is exposed to AT as decorative\n * (`role=\"presentation\"` + `aria-hidden=\"true\"`) so the parent\n * element (typically an `md-avatar` or a list-item) can carry the\n * spoken status without doubling.\n * - When **set** and `live` is **off**, the dot becomes `role=\"img\"` with\n * the value as its `aria-label` — a static, labelled status image.\n * - When **set** and `live` is **on**, the dot becomes a `role=\"status\"`\n * live region so presence *changes* are announced as they occur. Use this\n * for standalone dots that aren't paired with another labelled element.\n */\n @Prop() label: string = '';\n\n /**\n * Local density rung. Drives the same `--md-sys-density-scale` signal that a\n * global `data-density` ancestor sets, so a local value simply overrides the\n * inherited one. 0 = default, -4 = ultra-compact.\n */\n @Prop({ reflect: true }) density: 0 | -1 | -2 | -3 | -4 = 0;\n\n render() {\n const labelled = !!this.label.trim();\n // Decorative → presentation; labelled+static → img; labelled+live → status\n // (a live region that announces presence changes). role=\"status\" implies\n // aria-live=\"polite\", so static labels deliberately avoid it to prevent\n // spurious announcements when the dot merely renders.\n const role = labelled ? (this.live ? 'status' : 'img') : 'presentation';\n\n return (\n <Host\n class={{\n 'md-status-dot': true,\n [`md-status-dot--${this.state}`]: true,\n [`md-status-dot--${this.size}`]: true,\n 'md-status-dot--live': this.live,\n 'md-status-dot--labelled': labelled,\n }}\n role={role}\n aria-label={labelled ? this.label : null}\n aria-hidden={labelled ? null : 'true'}\n />\n );\n }\n}\n"],"mappings":"yDAAA,MAAMA,EAAiB,IAAM,wsG,MCmEhBC,EAAW,MALxB,WAAAC,CAAAC,G,UAY2BC,KAAAC,MAA0B,UAW1BD,KAAAE,KAAwB,SAOxBF,KAAAG,KAAgB,MAejCH,KAAAI,MAAgB,GAOCJ,KAAAK,QAAiC,CAyB3D,CAvBC,MAAAC,GACE,MAAMC,IAAaP,KAAKI,MAAMI,OAK9B,MAAMC,EAAOF,EAAYP,KAAKG,KAAO,SAAW,MAAS,eAEzD,OACEO,EAACC,EAAI,CAAAC,IAAA,2CACHC,MAAO,CACL,gBAAiB,KACjB,CAAC,kBAAkBb,KAAKC,SAAU,KAClC,CAAC,kBAAkBD,KAAKE,QAAS,KACjC,sBAAuBF,KAAKG,KAC5B,0BAA2BI,GAE7BE,KAAMA,EAAI,aACEF,EAAWP,KAAKI,MAAQ,KAAI,cAC3BG,EAAW,KAAO,Q","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{r as a,c as i,h as t,H as n,a as o}from"./p-DTaX19_O.js";import{t as e}from"./p-DYBUr7K_.js";import{s as r,a as s}from"./p-BjYKc1Ge.js";const l=()=>`:host{--_icon-color:var( --md-navigation-rail-tab-icon-color, var(--md-sys-color-on-surface-variant, #49454F) );--_active-icon-color:var( --md-navigation-rail-tab-active-icon-color, var(--md-sys-color-on-secondary-container, #4A4458) );--_label-color:var( --md-navigation-rail-tab-label-color, var(--md-sys-color-on-surface-variant, #49454F) );--_active-label-color:var( --md-navigation-rail-tab-active-label-color, var(--md-sys-color-secondary, #625B71) );--_indicator-color:var( --md-navigation-rail-tab-indicator-color, var(--md-sys-color-secondary-container, #E8DEF8) );--_indicator-shape:var( --md-navigation-rail-tab-indicator-shape, var(--md-sys-shape-corner-full, 9999px) );--_indicator-width:var(--md-navigation-rail-tab-indicator-width, max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px)));--_indicator-height:var(--md-navigation-rail-tab-indicator-height, max(24px, calc(32px + var(--md-sys-density-scale, 0) * 2px)));--_icon-size:var(--md-navigation-rail-tab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_min-height:var(--md-navigation-rail-tab-min-height, 56px);--_badge-color:var( --md-navigation-rail-tab-badge-color, var(--md-sys-color-error, #B3261E) );--_badge-content-color:var( --md-navigation-rail-tab-badge-content-color, var(--md-sys-color-on-error, #FFFFFF) );--_focus-ring-color:var( --md-navigation-rail-tab-focus-ring-color, var(--md-sys-color-secondary, #625B71) );--_state-layer-color:var( --md-navigation-rail-tab-state-layer-color, var(--md-sys-color-on-secondary-container, #4A4458) );--_motion-duration:var(--md-sys-motion-spring-effects-fast-duration, 150ms);--_motion-easing:var( --md-sys-motion-spring-effects-fast-easing, cubic-bezier(0.31, 0.94, 0.34, 1) );--_motion-spatial-duration:var(--md-sys-motion-spring-spatial-fast-duration, 350ms);--_motion-spatial-easing:var( --md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.9) );--_hover-opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08);--_focus-opacity:var(--md-navigation-rail-tab-focus-state-layer-opacity, 0.10);--_press-opacity:var(--md-navigation-rail-tab-press-state-layer-opacity, 0.10);--_disabled-opacity:var(--md-sys-state-disabled-content-opacity, 0.38);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:max(2px, calc(4px + var(--md-sys-density-scale, 0) * 1px));inline-size:100%;min-block-size:max(48px, calc(var(--_min-height) + var(--md-sys-density-scale, 0) * 4px));padding-block:max(0px, calc(2px + var(--md-sys-density-scale, 0) * 0.5px));padding-inline:0;box-sizing:border-box;cursor:pointer;user-select:none;position:relative;outline:none;-webkit-tap-highlight-color:transparent;color:var(--_icon-color);transition:color var(--_motion-duration) var(--_motion-easing)}:host(.md-navigation-rail-tab--active){color:var(--_active-icon-color)}:host(.md-navigation-rail-tab--disabled){cursor:default;pointer-events:none;color:color-mix( in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--_disabled-opacity) * 100%), transparent )}:host(:focus-visible){outline:none}:host(:focus-visible) .md-navigation-rail-tab__indicator{outline:3px solid var(--_focus-ring-color);outline-offset:2px}:host(.md-navigation-rail-tab--expanded:focus-visible) .md-navigation-rail-tab__indicator{outline-offset:-3px}md-ripple{border-radius:inherit}.md-navigation-rail-tab__indicator{position:absolute;inset-block-start:max(2px, calc(2px + var(--md-sys-density-scale, 0) * -0.5px));inset-inline:0;margin-inline:auto;inline-size:var(--_indicator-width);block-size:var(--_indicator-height);border-radius:var(--_indicator-shape);background-color:transparent;pointer-events:none;overflow:hidden;transition:background-color var(--_motion-duration) var(--_motion-easing), inline-size var(--_motion-spatial-duration) var(--_motion-spatial-easing);z-index:0}:host(.md-navigation-rail-tab--active) .md-navigation-rail-tab__indicator{background-color:var(--_indicator-color)}:host(.md-navigation-rail-tab--labels-none:not(.md-navigation-rail-tab--expanded)) .md-navigation-rail-tab__indicator,:host(.md-navigation-rail-tab--labels-selected:not(.md-navigation-rail-tab--active):not(.md-navigation-rail-tab--expanded)) .md-navigation-rail-tab__indicator{inset-block:0;margin-block:auto}.md-navigation-rail-tab__state-layer{position:absolute;inset:0;background-color:var(--_state-layer-color);opacity:0;pointer-events:none;transition:opacity var(--_motion-duration) var(--_motion-easing);border-radius:inherit}:host(:hover:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__state-layer{opacity:var(--_hover-opacity)}:host(:focus-visible:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__state-layer{opacity:var(--_focus-opacity)}:host(:active:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__state-layer{opacity:var(--_press-opacity)}.md-navigation-rail-tab__icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;inline-size:var(--_indicator-width);block-size:var(--_indicator-height);z-index:1;pointer-events:none}.md-navigation-rail-tab__icon-box{position:relative;display:inline-flex;align-items:center;justify-content:center;inline-size:var(--_icon-size);block-size:var(--_icon-size)}.md-navigation-rail-tab__icon{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-size:var(--_icon-size);inline-size:var(--_icon-size);block-size:var(--_icon-size);line-height:1;font-weight:normal;font-style:normal;letter-spacing:normal;text-transform:none;white-space:nowrap;overflow-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;justify-content:center;font-variation-settings:'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;transition:font-variation-settings var(--_motion-duration) var(--_motion-easing);color:inherit}:host(.md-navigation-rail-tab--active) .md-navigation-rail-tab__icon{font-variation-settings:'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24}::slotted([slot='icon']){display:inline-flex;align-items:center;justify-content:center;inline-size:var(--_icon-size);block-size:var(--_icon-size);font-size:var(--_icon-size);color:currentColor;fill:currentColor;pointer-events:none}.md-navigation-rail-tab__label{position:relative;z-index:1;font-family:var(--md-sys-typescale-label-medium-font-family, Roboto, sans-serif);font-size:max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-medium-font-weight, 500);line-height:max(14px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));letter-spacing:var(--md-sys-typescale-label-medium-letter-spacing, 0.5px);text-align:center;color:var(--_label-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-inline-size:100%;transition:color var(--_motion-duration) var(--_motion-easing), font-weight var(--_motion-duration) var(--_motion-easing), opacity var(--_motion-duration) var(--_motion-easing);padding-inline:var(--md-sys-spacing-inset-xs, 4px);box-sizing:border-box}:host(.md-navigation-rail-tab--active) .md-navigation-rail-tab__label{color:var(--_active-label-color);font-weight:var(--md-sys-typescale-label-medium-prominent-font-weight, 700)}:host(.md-navigation-rail-tab--labels-none) .md-navigation-rail-tab__label{display:none}:host(.md-navigation-rail-tab--labels-selected:not(.md-navigation-rail-tab--expanded)) .md-navigation-rail-tab__label{max-block-size:1.25rem;transition:color var(--_motion-duration) var(--_motion-easing), font-weight var(--_motion-duration) var(--_motion-easing), opacity var(--_motion-duration) var(--_motion-easing), max-block-size var(--_motion-duration) var(--_motion-easing), margin-block-start var(--_motion-duration) var(--_motion-easing)}:host(.md-navigation-rail-tab--labels-selected:not(.md-navigation-rail-tab--active):not(.md-navigation-rail-tab--expanded)) .md-navigation-rail-tab__label{opacity:0;max-block-size:0;margin-block-start:-4px}:host(.md-navigation-rail-tab--labels-selected.md-navigation-rail-tab--expanded:not(.md-navigation-rail-tab--active)) .md-navigation-rail-tab__label{display:none}:host(.md-navigation-rail-tab--expanded){flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--md-sys-spacing-gap-sm, 8px);padding-inline:var(--md-sys-spacing-inset-lg, 16px);padding-block:0;inline-size:fit-content;min-block-size:max(48px, calc(56px + var(--md-sys-density-scale, 0) * 4px));border-radius:var(--_indicator-shape)}:host(.md-navigation-rail-tab--expanded) .md-navigation-rail-tab__indicator{position:absolute;inset:0;transform:none;inline-size:auto;block-size:auto;border-radius:var(--_indicator-shape)}:host(.md-navigation-rail-tab--expanded) .md-navigation-rail-tab__icon-wrapper{inline-size:var(--_icon-size);block-size:var(--_icon-size);flex:0 0 auto}:host(.md-navigation-rail-tab--expanded) .md-navigation-rail-tab__label{text-align:start;flex:1 1 auto;min-inline-size:0;display:inline-block;font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);font-size:var(--md-sys-typescale-label-large-font-size, 14px);font-weight:var(--md-sys-typescale-label-large-font-weight, 500);line-height:var(--md-sys-typescale-label-large-line-height, 20px);letter-spacing:var(--md-sys-typescale-label-large-letter-spacing, 0.1px)}:host(.md-navigation-rail-tab--expanded.md-navigation-rail-tab--active) .md-navigation-rail-tab__label{font-weight:var(--md-sys-typescale-label-large-prominent-font-weight, 700)}:host(.md-navigation-rail-tab--expanded.md-navigation-rail-tab--labels-none) .md-navigation-rail-tab__label{display:none}.md-navigation-rail-tab__badge{position:absolute;background-color:var(--_badge-color);color:var(--_badge-content-color);border-radius:var(--md-sys-shape-corner-full, 9999px);line-height:1;box-sizing:border-box;pointer-events:none;z-index:2}.md-navigation-rail-tab__badge--dot{inline-size:6px;block-size:6px;inset-block-start:-2px;inset-inline-end:-2px}.md-navigation-rail-tab__badge--large{min-inline-size:16px;block-size:16px;padding-inline:4px;inset-block-start:-6px;inset-inline-end:-6px;font-family:var(--md-sys-typescale-label-small-font-family, Roboto, sans-serif);font-size:11px;font-weight:500;display:flex;align-items:center;justify-content:center}.md-navigation-rail-tab__anchor{display:contents;color:inherit;text-decoration:none}@media (prefers-reduced-motion: reduce){:host,.md-navigation-rail-tab__indicator,.md-navigation-rail-tab__state-layer,.md-navigation-rail-tab__icon,.md-navigation-rail-tab__label{transition:none}}@media (forced-colors: active){:host(.md-navigation-rail-tab--active) .md-navigation-rail-tab__indicator{background-color:Highlight;forced-color-adjust:none}:host(.md-navigation-rail-tab--active){color:HighlightText}:host(:focus-visible) .md-navigation-rail-tab__indicator{outline:3px solid CanvasText}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}:host([data-orientation='horizontal']){block-size:100%}:host([data-orientation='horizontal']) .md-navigation-rail-tab__indicator,:host([data-orientation='horizontal']) .md-navigation-rail-tab__state-layer{display:none}:host([data-orientation='horizontal']) .md-navigation-rail-tab__icon-wrapper{border-radius:var(--_indicator-shape);background-color:transparent;transition:background-color var(--_motion-duration) var(--_motion-easing)}:host([data-orientation='horizontal'].md-navigation-rail-tab--active) .md-navigation-rail-tab__icon-wrapper{background-color:var(--_indicator-color)}:host([data-orientation='horizontal']) .md-navigation-rail-tab__icon-wrapper::after{content:'';position:absolute;inset:0;border-radius:inherit;background-color:var(--_state-layer-color);opacity:0;pointer-events:none;transition:opacity var(--_motion-duration) var(--_motion-easing)}:host([data-orientation='horizontal']:hover:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__icon-wrapper::after{opacity:var(--_hover-opacity)}:host([data-orientation='horizontal']:active:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__icon-wrapper::after{opacity:var(--_press-opacity)}:host([data-orientation='horizontal']:focus-visible) .md-navigation-rail-tab__icon-wrapper{outline:3px solid var(--_focus-ring-color);outline-offset:2px}.md-navigation-rail-tab__caret{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-size:max(14px, calc(18px + var(--md-sys-density-scale, 0) * 1px));line-height:1;vertical-align:middle;margin-inline-start:2px;transition:transform var(--md-navigation-rail-tab-caret-duration, var(--md-sys-motion-duration-medium2, 300ms)) var( --md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1) )}:host([aria-expanded='true']) .md-navigation-rail-tab__caret{transform:rotate(180deg)}@media (prefers-reduced-motion: reduce){.md-navigation-rail-tab__caret{transition-duration:1ms}}:host(.md-navigation-rail-tab--child-selected) .md-navigation-rail-tab__indicator{background-color:var(--_indicator-color)}:host(.md-navigation-rail-tab--child-selected[data-orientation='horizontal']) .md-navigation-rail-tab__icon-wrapper{background-color:var(--_indicator-color)}:host(.md-navigation-rail-tab--child-selected) .md-navigation-rail-tab__icon,:host(.md-navigation-rail-tab--child-selected) .md-navigation-rail-tab__label{color:var(--_active-icon-color)}`;const d=class{constructor(t){a(this,t);this.mdTabClick=i(this,"mdTabClick",7);this.mdSubmenuToggle=i(this,"mdSubmenuToggle",7);this.icon="";this.label="";this.active=false;this.disabled=false;this.badge=false;this.badgeValue="";this.href="";this.target="";this.value="";this.labelVisibility="all";this.expanded=false;this.density=0;this.iconFirst=null;this.pendingTransition=false;this.submenuOpen=false;this.hasSubmenu=false;this.submenuHasSelection=false;this.handleSubmenuClick=a=>{const i=a.target?.closest?.("md-menu-item");const t=this.submenu;if(!i||!t||!t.contains(i))return;t.querySelectorAll("md-menu-item[selected]").forEach((a=>{if(a!==i)a.removeAttribute("selected")}));i.setAttribute("selected","");this.syncSubmenuSelection();this.mdTabClick.emit({value:this.value})};this.handleClick=a=>{if(this.disabled){a.preventDefault();a.stopImmediatePropagation();return}if(this.submenu){a.preventDefault();this.toggleSubmenu();return}this.mdTabClick.emit({value:this.value})};this.handleKeyDown=a=>{if(this.disabled)return;if(a.key==="Enter"||a.key===" "){a.preventDefault();e(this.el);if(this.submenu){this.toggleSubmenu();return}this.mdTabClick.emit({value:this.value});if(this.href){const a=this.el.shadowRoot?.querySelector("a.md-navigation-rail-tab__anchor");a?.click()}}}}componentDidLoad(){if(typeof window!=="undefined"&&window.__STENCIL_DEV_MODE__!==false){this.warnMissingAccessibleName()}this.ensureSubmenuAnchor();const a=this.submenu;this.hasSubmenu=!!a;if(a){a.addEventListener("mdOpen",(()=>{this.submenuOpen=true;this.mdSubmenuToggle.emit({open:true})}));a.addEventListener("mdClose",(()=>{this.submenuOpen=false;this.syncSubmenuSelection();this.mdSubmenuToggle.emit({open:false})}));a.addEventListener("mdClick",(a=>this.handleSubmenuClick(a)));this.syncSubmenuSelection()}}onExpandedChange(){if(this.prefersReducedMotion())return;this.iconFirst=this.iconCentre();this.pendingTransition=true}componentDidRender(){if(!this.pendingTransition)return;this.pendingTransition=false;this.playTransition()}prefersReducedMotion(){return typeof window!=="undefined"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}iconCentre(){const a=this.el.shadowRoot?.querySelector(".md-navigation-rail-tab__icon-wrapper");if(!a)return null;const i=a.getBoundingClientRect();return{cx:i.left+i.width/2,cy:i.top+i.height/2}}motionDuration(){const a=getComputedStyle(this.el).getPropertyValue("--md-sys-motion-duration-short4").trim();if(a.endsWith("ms"))return parseFloat(a)||200;if(a.endsWith("s"))return(parseFloat(a)||.2)*1e3;return 200}playTransition(){const a=this.el.shadowRoot;if(!a)return;const i=this.motionDuration();const t=a.querySelector(".md-navigation-rail-tab__icon-wrapper");if(t&&this.iconFirst){const a=t.getBoundingClientRect();const n=this.iconFirst.cx-(a.left+a.width/2);const o=this.iconFirst.cy-(a.top+a.height/2);if(Math.abs(n)>.5||Math.abs(o)>.5){t.animate([{transform:`translate(${n}px, ${o}px)`},{transform:"translate(0, 0)"}],{duration:i,easing:getComputedStyle(this.el).getPropertyValue("--md-sys-motion-easing-standard").trim()||"cubic-bezier(0.2, 0, 0, 1)",fill:"none"})}}this.iconFirst=null;const n=a.querySelector(".md-navigation-rail-tab__label");if(n){n.animate([{opacity:0},{opacity:0,offset:.15},{opacity:1}],{duration:i,easing:"ease-out",fill:"none"})}}warnMissingAccessibleName(){const a=this.el.hasAttribute("aria-label")||this.el.hasAttribute("aria-labelledby");if(!this.label&&!a){console.warn("[md-navigation-rail-tab] WCAG 1.1.1 / 2.4.4: destination is missing a label. "+"Add a `label` attribute or aria-label.",this.el)}}get submenu(){return this.el.querySelector('[slot="submenu"]')}ensureSubmenuAnchor(){const a=this.submenu;if(!a)return;if(!this.el.id){this.generatedId=this.generatedId??`md-rail-tab-${Math.random().toString(36).slice(2,9)}`;this.el.id=this.generatedId}if(a.getAttribute("anchor")!==this.el.id)a.setAttribute("anchor",this.el.id);if(!a.hasAttribute("placement"))a.setAttribute("placement","bottom-start")}async clearSubmenuSelection(){const a=this.submenu;a?.querySelectorAll("md-menu-item[selected]").forEach((a=>{a.removeAttribute("selected")}));this.submenuHasSelection=false}syncSubmenuSelection(){const a=this.submenu;this.submenuHasSelection=!!a?.querySelector('md-menu-item[selected], md-menu-item[aria-checked="true"]')}toggleSubmenu(){const a=this.submenu;if(!a)return;if(a.open)void a.close();else void a.show()}get displayBadgeValue(){if(!this.badgeValue)return"";const a=Number(this.badgeValue);if(Number.isFinite(a)&&a>999)return"999+";return this.badgeValue}renderIcon(){const a=!!this.icon;return t("slot",{name:"icon"},a&&t("span",{class:"md-navigation-rail-tab__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon))}renderBadge(){const a=!!this.badgeValue;const i=this.badge&&!a;if(!a&&!i)return null;return t("span",{class:{"md-navigation-rail-tab__badge":true,"md-navigation-rail-tab__badge--dot":i,"md-navigation-rail-tab__badge--large":a},part:i?"badge badge-dot":"badge badge-large",role:"status","aria-label":a?`${this.displayBadgeValue} new notifications`:"new notifications"},a&&this.displayBadgeValue)}renderInner(){return[t("span",{class:"md-navigation-rail-tab__indicator",part:"indicator","aria-hidden":"true"},t("span",{class:"md-navigation-rail-tab__state-layer",part:"state-layer","aria-hidden":"true"})),t("md-ripple",{disabled:this.disabled}),t("span",{class:"md-navigation-rail-tab__icon-wrapper",part:"icon-wrapper"},t("span",{class:"md-navigation-rail-tab__icon-box"},this.renderIcon(),this.renderBadge())),this.label&&t("span",{class:"md-navigation-rail-tab__label",part:"label"},this.label,this.hasSubmenu&&t("span",{class:"md-navigation-rail-tab__caret material-symbols-outlined",part:"caret","aria-hidden":"true"},"arrow_drop_down")),t("slot",{name:"submenu"})]}render(){const a=r(this.href);const i=!!a&&!this.disabled;const o=this.disabled?"true":null;const e=this.active&&i?"page":null;const l=i?null:this.active?"true":"false";const d=i?"link":"tab";const c=this.el.getAttribute("aria-label")??undefined;const m=i?this.label||c:!this.label?c:undefined;return t(n,{key:"f7f616314485ebf51d0cc79a5a91c949a98045de",class:{"md-navigation-rail-tab":true,"md-navigation-rail-tab--active":this.active,"md-navigation-rail-tab--child-selected":this.submenuHasSelection&&!this.active,"md-navigation-rail-tab--disabled":this.disabled,"md-navigation-rail-tab--has-label":!!this.label,[`md-navigation-rail-tab--labels-${this.labelVisibility}`]:true,"md-navigation-rail-tab--expanded":this.expanded},role:d,"aria-selected":l,"aria-current":e,"aria-disabled":o,"aria-label":m,tabindex:this.disabled?"-1":this.active?"0":"-1","aria-haspopup":this.submenu?"menu":undefined,"aria-expanded":this.submenu?this.submenuOpen?"true":"false":undefined,onClick:this.handleClick,onKeyDown:this.handleKeyDown},i?t("a",{class:"md-navigation-rail-tab__anchor",href:a,target:this.target||undefined,rel:this.target?s:undefined,tabIndex:-1,"aria-hidden":"true",part:"anchor"},this.renderInner()):this.renderInner())}get el(){return o(this)}static get watchers(){return{expanded:[{onExpandedChange:0}]}}};d.style=l();export{d as md_navigation_rail_tab};
2
- //# sourceMappingURL=p-c5af701b.entry.js.map
1
+ import{r as a,c as i,h as t,H as n,g as o}from"./p-WmvQpZnM.js";import{t as e}from"./p-DYBUr7K_.js";import{s as r,a as s}from"./p-BjYKc1Ge.js";const l=()=>`:host{--_icon-color:var( --md-navigation-rail-tab-icon-color, var(--md-sys-color-on-surface-variant, #49454F) );--_active-icon-color:var( --md-navigation-rail-tab-active-icon-color, var(--md-sys-color-on-secondary-container, #4A4458) );--_label-color:var( --md-navigation-rail-tab-label-color, var(--md-sys-color-on-surface-variant, #49454F) );--_active-label-color:var( --md-navigation-rail-tab-active-label-color, var(--md-sys-color-secondary, #625B71) );--_indicator-color:var( --md-navigation-rail-tab-indicator-color, var(--md-sys-color-secondary-container, #E8DEF8) );--_indicator-shape:var( --md-navigation-rail-tab-indicator-shape, var(--md-sys-shape-corner-full, 9999px) );--_indicator-width:var(--md-navigation-rail-tab-indicator-width, max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px)));--_indicator-height:var(--md-navigation-rail-tab-indicator-height, max(24px, calc(32px + var(--md-sys-density-scale, 0) * 2px)));--_icon-size:var(--md-navigation-rail-tab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_min-height:var(--md-navigation-rail-tab-min-height, 56px);--_badge-color:var( --md-navigation-rail-tab-badge-color, var(--md-sys-color-error, #B3261E) );--_badge-content-color:var( --md-navigation-rail-tab-badge-content-color, var(--md-sys-color-on-error, #FFFFFF) );--_focus-ring-color:var( --md-navigation-rail-tab-focus-ring-color, var(--md-sys-color-secondary, #625B71) );--_state-layer-color:var( --md-navigation-rail-tab-state-layer-color, var(--md-sys-color-on-secondary-container, #4A4458) );--_motion-duration:var(--md-sys-motion-spring-effects-fast-duration, 150ms);--_motion-easing:var( --md-sys-motion-spring-effects-fast-easing, cubic-bezier(0.31, 0.94, 0.34, 1) );--_motion-spatial-duration:var(--md-sys-motion-spring-spatial-fast-duration, 350ms);--_motion-spatial-easing:var( --md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.9) );--_hover-opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08);--_focus-opacity:var(--md-navigation-rail-tab-focus-state-layer-opacity, 0.10);--_press-opacity:var(--md-navigation-rail-tab-press-state-layer-opacity, 0.10);--_disabled-opacity:var(--md-sys-state-disabled-content-opacity, 0.38);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:max(2px, calc(4px + var(--md-sys-density-scale, 0) * 1px));inline-size:100%;min-block-size:max(48px, calc(var(--_min-height) + var(--md-sys-density-scale, 0) * 4px));padding-block:max(0px, calc(2px + var(--md-sys-density-scale, 0) * 0.5px));padding-inline:0;box-sizing:border-box;cursor:pointer;user-select:none;position:relative;outline:none;-webkit-tap-highlight-color:transparent;color:var(--_icon-color);transition:color var(--_motion-duration) var(--_motion-easing)}:host(.md-navigation-rail-tab--active){color:var(--_active-icon-color)}:host(.md-navigation-rail-tab--disabled){cursor:default;pointer-events:none;color:color-mix( in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--_disabled-opacity) * 100%), transparent )}:host(:focus-visible){outline:none}:host(:focus-visible) .md-navigation-rail-tab__indicator{outline:3px solid var(--_focus-ring-color);outline-offset:2px}:host(.md-navigation-rail-tab--expanded:focus-visible) .md-navigation-rail-tab__indicator{outline-offset:-3px}md-ripple{border-radius:inherit}.md-navigation-rail-tab__indicator{position:absolute;inset-block-start:max(2px, calc(2px + var(--md-sys-density-scale, 0) * -0.5px));inset-inline:0;margin-inline:auto;inline-size:var(--_indicator-width);block-size:var(--_indicator-height);border-radius:var(--_indicator-shape);background-color:transparent;pointer-events:none;overflow:hidden;transition:background-color var(--_motion-duration) var(--_motion-easing), inline-size var(--_motion-spatial-duration) var(--_motion-spatial-easing);z-index:0}:host(.md-navigation-rail-tab--active) .md-navigation-rail-tab__indicator{background-color:var(--_indicator-color)}:host(.md-navigation-rail-tab--labels-none:not(.md-navigation-rail-tab--expanded)) .md-navigation-rail-tab__indicator,:host(.md-navigation-rail-tab--labels-selected:not(.md-navigation-rail-tab--active):not(.md-navigation-rail-tab--expanded)) .md-navigation-rail-tab__indicator{inset-block:0;margin-block:auto}.md-navigation-rail-tab__state-layer{position:absolute;inset:0;background-color:var(--_state-layer-color);opacity:0;pointer-events:none;transition:opacity var(--_motion-duration) var(--_motion-easing);border-radius:inherit}:host(:hover:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__state-layer{opacity:var(--_hover-opacity)}:host(:focus-visible:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__state-layer{opacity:var(--_focus-opacity)}:host(:active:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__state-layer{opacity:var(--_press-opacity)}.md-navigation-rail-tab__icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;inline-size:var(--_indicator-width);block-size:var(--_indicator-height);z-index:1;pointer-events:none}.md-navigation-rail-tab__icon-box{position:relative;display:inline-flex;align-items:center;justify-content:center;inline-size:var(--_icon-size);block-size:var(--_icon-size)}.md-navigation-rail-tab__icon{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-size:var(--_icon-size);inline-size:var(--_icon-size);block-size:var(--_icon-size);line-height:1;font-weight:normal;font-style:normal;letter-spacing:normal;text-transform:none;white-space:nowrap;overflow-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;justify-content:center;font-variation-settings:'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;transition:font-variation-settings var(--_motion-duration) var(--_motion-easing);color:inherit}:host(.md-navigation-rail-tab--active) .md-navigation-rail-tab__icon{font-variation-settings:'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24}::slotted([slot='icon']){display:inline-flex;align-items:center;justify-content:center;inline-size:var(--_icon-size);block-size:var(--_icon-size);font-size:var(--_icon-size);color:currentColor;fill:currentColor;pointer-events:none}.md-navigation-rail-tab__label{position:relative;z-index:1;font-family:var(--md-sys-typescale-label-medium-font-family, Roboto, sans-serif);font-size:max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-medium-font-weight, 500);line-height:max(14px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));letter-spacing:var(--md-sys-typescale-label-medium-letter-spacing, 0.5px);text-align:center;color:var(--_label-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-inline-size:100%;transition:color var(--_motion-duration) var(--_motion-easing), font-weight var(--_motion-duration) var(--_motion-easing), opacity var(--_motion-duration) var(--_motion-easing);padding-inline:var(--md-sys-spacing-inset-xs, 4px);box-sizing:border-box}:host(.md-navigation-rail-tab--active) .md-navigation-rail-tab__label{color:var(--_active-label-color);font-weight:var(--md-sys-typescale-label-medium-prominent-font-weight, 700)}:host(.md-navigation-rail-tab--labels-none) .md-navigation-rail-tab__label{display:none}:host(.md-navigation-rail-tab--labels-selected:not(.md-navigation-rail-tab--expanded)) .md-navigation-rail-tab__label{max-block-size:1.25rem;transition:color var(--_motion-duration) var(--_motion-easing), font-weight var(--_motion-duration) var(--_motion-easing), opacity var(--_motion-duration) var(--_motion-easing), max-block-size var(--_motion-duration) var(--_motion-easing), margin-block-start var(--_motion-duration) var(--_motion-easing)}:host(.md-navigation-rail-tab--labels-selected:not(.md-navigation-rail-tab--active):not(.md-navigation-rail-tab--expanded)) .md-navigation-rail-tab__label{opacity:0;max-block-size:0;margin-block-start:-4px}:host(.md-navigation-rail-tab--labels-selected.md-navigation-rail-tab--expanded:not(.md-navigation-rail-tab--active)) .md-navigation-rail-tab__label{display:none}:host(.md-navigation-rail-tab--expanded){flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--md-sys-spacing-gap-sm, 8px);padding-inline:var(--md-sys-spacing-inset-lg, 16px);padding-block:0;inline-size:fit-content;min-block-size:max(48px, calc(56px + var(--md-sys-density-scale, 0) * 4px));border-radius:var(--_indicator-shape)}:host(.md-navigation-rail-tab--expanded) .md-navigation-rail-tab__indicator{position:absolute;inset:0;transform:none;inline-size:auto;block-size:auto;border-radius:var(--_indicator-shape)}:host(.md-navigation-rail-tab--expanded) .md-navigation-rail-tab__icon-wrapper{inline-size:var(--_icon-size);block-size:var(--_icon-size);flex:0 0 auto}:host(.md-navigation-rail-tab--expanded) .md-navigation-rail-tab__label{text-align:start;flex:1 1 auto;min-inline-size:0;display:inline-block;font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);font-size:var(--md-sys-typescale-label-large-font-size, 14px);font-weight:var(--md-sys-typescale-label-large-font-weight, 500);line-height:var(--md-sys-typescale-label-large-line-height, 20px);letter-spacing:var(--md-sys-typescale-label-large-letter-spacing, 0.1px)}:host(.md-navigation-rail-tab--expanded.md-navigation-rail-tab--active) .md-navigation-rail-tab__label{font-weight:var(--md-sys-typescale-label-large-prominent-font-weight, 700)}:host(.md-navigation-rail-tab--expanded.md-navigation-rail-tab--labels-none) .md-navigation-rail-tab__label{display:none}.md-navigation-rail-tab__badge{position:absolute;background-color:var(--_badge-color);color:var(--_badge-content-color);border-radius:var(--md-sys-shape-corner-full, 9999px);line-height:1;box-sizing:border-box;pointer-events:none;z-index:2}.md-navigation-rail-tab__badge--dot{inline-size:6px;block-size:6px;inset-block-start:-2px;inset-inline-end:-2px}.md-navigation-rail-tab__badge--large{min-inline-size:16px;block-size:16px;padding-inline:4px;inset-block-start:-6px;inset-inline-end:-6px;font-family:var(--md-sys-typescale-label-small-font-family, Roboto, sans-serif);font-size:11px;font-weight:500;display:flex;align-items:center;justify-content:center}.md-navigation-rail-tab__anchor{display:contents;color:inherit;text-decoration:none}@media (prefers-reduced-motion: reduce){:host,.md-navigation-rail-tab__indicator,.md-navigation-rail-tab__state-layer,.md-navigation-rail-tab__icon,.md-navigation-rail-tab__label{transition:none}}@media (forced-colors: active){:host(.md-navigation-rail-tab--active) .md-navigation-rail-tab__indicator{background-color:Highlight;forced-color-adjust:none}:host(.md-navigation-rail-tab--active){color:HighlightText}:host(:focus-visible) .md-navigation-rail-tab__indicator{outline:3px solid CanvasText}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}:host([data-orientation='horizontal']){block-size:100%}:host([data-orientation='horizontal']) .md-navigation-rail-tab__indicator,:host([data-orientation='horizontal']) .md-navigation-rail-tab__state-layer{display:none}:host([data-orientation='horizontal']) .md-navigation-rail-tab__icon-wrapper{border-radius:var(--_indicator-shape);background-color:transparent;transition:background-color var(--_motion-duration) var(--_motion-easing)}:host([data-orientation='horizontal'].md-navigation-rail-tab--active) .md-navigation-rail-tab__icon-wrapper{background-color:var(--_indicator-color)}:host([data-orientation='horizontal']) .md-navigation-rail-tab__icon-wrapper::after{content:'';position:absolute;inset:0;border-radius:inherit;background-color:var(--_state-layer-color);opacity:0;pointer-events:none;transition:opacity var(--_motion-duration) var(--_motion-easing)}:host([data-orientation='horizontal']:hover:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__icon-wrapper::after{opacity:var(--_hover-opacity)}:host([data-orientation='horizontal']:active:not(.md-navigation-rail-tab--disabled)) .md-navigation-rail-tab__icon-wrapper::after{opacity:var(--_press-opacity)}:host([data-orientation='horizontal']:focus-visible) .md-navigation-rail-tab__icon-wrapper{outline:3px solid var(--_focus-ring-color);outline-offset:2px}.md-navigation-rail-tab__caret{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-size:max(14px, calc(18px + var(--md-sys-density-scale, 0) * 1px));line-height:1;vertical-align:middle;margin-inline-start:2px;transition:transform var(--md-navigation-rail-tab-caret-duration, var(--md-sys-motion-duration-medium2, 300ms)) var( --md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1) )}:host([aria-expanded='true']) .md-navigation-rail-tab__caret{transform:rotate(180deg)}@media (prefers-reduced-motion: reduce){.md-navigation-rail-tab__caret{transition-duration:1ms}}:host(.md-navigation-rail-tab--child-selected) .md-navigation-rail-tab__indicator{background-color:var(--_indicator-color)}:host(.md-navigation-rail-tab--child-selected[data-orientation='horizontal']) .md-navigation-rail-tab__icon-wrapper{background-color:var(--_indicator-color)}:host(.md-navigation-rail-tab--child-selected) .md-navigation-rail-tab__icon,:host(.md-navigation-rail-tab--child-selected) .md-navigation-rail-tab__label{color:var(--_active-icon-color)}`;const d=class{constructor(t){a(this,t);this.mdTabClick=i(this,"mdTabClick",7);this.mdSubmenuToggle=i(this,"mdSubmenuToggle",7);this.icon="";this.label="";this.active=false;this.disabled=false;this.badge=false;this.badgeValue="";this.href="";this.target="";this.value="";this.labelVisibility="all";this.expanded=false;this.density=0;this.iconFirst=null;this.pendingTransition=false;this.submenuOpen=false;this.hasSubmenu=false;this.submenuHasSelection=false;this.handleSubmenuClick=a=>{const i=a.target?.closest?.("md-menu-item");const t=this.submenu;if(!i||!t||!t.contains(i))return;t.querySelectorAll("md-menu-item[selected]").forEach((a=>{if(a!==i)a.removeAttribute("selected")}));i.setAttribute("selected","");this.syncSubmenuSelection();this.mdTabClick.emit({value:this.value})};this.handleClick=a=>{if(this.disabled){a.preventDefault();a.stopImmediatePropagation();return}if(this.submenu){a.preventDefault();this.toggleSubmenu();return}this.mdTabClick.emit({value:this.value})};this.handleKeyDown=a=>{if(this.disabled)return;if(a.key==="Enter"||a.key===" "){a.preventDefault();e(this.el);if(this.submenu){this.toggleSubmenu();return}this.mdTabClick.emit({value:this.value});if(this.href){const a=this.el.shadowRoot?.querySelector("a.md-navigation-rail-tab__anchor");a?.click()}}}}componentDidLoad(){if(typeof window!=="undefined"&&window.__STENCIL_DEV_MODE__!==false){this.warnMissingAccessibleName()}this.ensureSubmenuAnchor();const a=this.submenu;this.hasSubmenu=!!a;if(a){a.addEventListener("mdOpen",(()=>{this.submenuOpen=true;this.mdSubmenuToggle.emit({open:true})}));a.addEventListener("mdClose",(()=>{this.submenuOpen=false;this.syncSubmenuSelection();this.mdSubmenuToggle.emit({open:false})}));a.addEventListener("mdClick",(a=>this.handleSubmenuClick(a)));this.syncSubmenuSelection()}}onExpandedChange(){if(this.prefersReducedMotion())return;this.iconFirst=this.iconCentre();this.pendingTransition=true}componentDidRender(){if(!this.pendingTransition)return;this.pendingTransition=false;this.playTransition()}prefersReducedMotion(){return typeof window!=="undefined"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}iconCentre(){const a=this.el.shadowRoot?.querySelector(".md-navigation-rail-tab__icon-wrapper");if(!a)return null;const i=a.getBoundingClientRect();return{cx:i.left+i.width/2,cy:i.top+i.height/2}}motionDuration(){const a=getComputedStyle(this.el).getPropertyValue("--md-sys-motion-duration-short4").trim();if(a.endsWith("ms"))return parseFloat(a)||200;if(a.endsWith("s"))return(parseFloat(a)||.2)*1e3;return 200}playTransition(){const a=this.el.shadowRoot;if(!a)return;const i=this.motionDuration();const t=a.querySelector(".md-navigation-rail-tab__icon-wrapper");if(t&&this.iconFirst){const a=t.getBoundingClientRect();const n=this.iconFirst.cx-(a.left+a.width/2);const o=this.iconFirst.cy-(a.top+a.height/2);if(Math.abs(n)>.5||Math.abs(o)>.5){t.animate([{transform:`translate(${n}px, ${o}px)`},{transform:"translate(0, 0)"}],{duration:i,easing:getComputedStyle(this.el).getPropertyValue("--md-sys-motion-easing-standard").trim()||"cubic-bezier(0.2, 0, 0, 1)",fill:"none"})}}this.iconFirst=null;const n=a.querySelector(".md-navigation-rail-tab__label");if(n){n.animate([{opacity:0},{opacity:0,offset:.15},{opacity:1}],{duration:i,easing:"ease-out",fill:"none"})}}warnMissingAccessibleName(){const a=this.el.hasAttribute("aria-label")||this.el.hasAttribute("aria-labelledby");if(!this.label&&!a){console.warn("[md-navigation-rail-tab] WCAG 1.1.1 / 2.4.4: destination is missing a label. "+"Add a `label` attribute or aria-label.",this.el)}}get submenu(){return this.el.querySelector('[slot="submenu"]')}ensureSubmenuAnchor(){const a=this.submenu;if(!a)return;if(!this.el.id){this.generatedId=this.generatedId??`md-rail-tab-${Math.random().toString(36).slice(2,9)}`;this.el.id=this.generatedId}if(a.getAttribute("anchor")!==this.el.id)a.setAttribute("anchor",this.el.id);if(!a.hasAttribute("placement"))a.setAttribute("placement","bottom-start")}async clearSubmenuSelection(){const a=this.submenu;a?.querySelectorAll("md-menu-item[selected]").forEach((a=>{a.removeAttribute("selected")}));this.submenuHasSelection=false}syncSubmenuSelection(){const a=this.submenu;this.submenuHasSelection=!!a?.querySelector('md-menu-item[selected], md-menu-item[aria-checked="true"]')}toggleSubmenu(){const a=this.submenu;if(!a)return;if(a.open)void a.close();else void a.show()}get displayBadgeValue(){if(!this.badgeValue)return"";const a=Number(this.badgeValue);if(Number.isFinite(a)&&a>999)return"999+";return this.badgeValue}renderIcon(){const a=!!this.icon;return t("slot",{name:"icon"},a&&t("span",{class:"md-navigation-rail-tab__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon))}renderBadge(){const a=!!this.badgeValue;const i=this.badge&&!a;if(!a&&!i)return null;return t("span",{class:{"md-navigation-rail-tab__badge":true,"md-navigation-rail-tab__badge--dot":i,"md-navigation-rail-tab__badge--large":a},part:i?"badge badge-dot":"badge badge-large",role:"status","aria-label":a?`${this.displayBadgeValue} new notifications`:"new notifications"},a&&this.displayBadgeValue)}renderInner(){return[t("span",{class:"md-navigation-rail-tab__indicator",part:"indicator","aria-hidden":"true"},t("span",{class:"md-navigation-rail-tab__state-layer",part:"state-layer","aria-hidden":"true"})),t("md-ripple",{disabled:this.disabled}),t("span",{class:"md-navigation-rail-tab__icon-wrapper",part:"icon-wrapper"},t("span",{class:"md-navigation-rail-tab__icon-box"},this.renderIcon(),this.renderBadge())),this.label&&t("span",{class:"md-navigation-rail-tab__label",part:"label"},this.label,this.hasSubmenu&&t("span",{class:"md-navigation-rail-tab__caret material-symbols-outlined",part:"caret","aria-hidden":"true"},"arrow_drop_down")),t("slot",{name:"submenu"})]}render(){const a=r(this.href);const i=!!a&&!this.disabled;const o=this.disabled?"true":null;const e=this.active&&i?"page":null;const l=i?null:this.active?"true":"false";const d=i?"link":"tab";const c=this.el.getAttribute("aria-label")??undefined;const m=i?this.label||c:!this.label?c:undefined;return t(n,{key:"f7f616314485ebf51d0cc79a5a91c949a98045de",class:{"md-navigation-rail-tab":true,"md-navigation-rail-tab--active":this.active,"md-navigation-rail-tab--child-selected":this.submenuHasSelection&&!this.active,"md-navigation-rail-tab--disabled":this.disabled,"md-navigation-rail-tab--has-label":!!this.label,[`md-navigation-rail-tab--labels-${this.labelVisibility}`]:true,"md-navigation-rail-tab--expanded":this.expanded},role:d,"aria-selected":l,"aria-current":e,"aria-disabled":o,"aria-label":m,tabindex:this.disabled?"-1":this.active?"0":"-1","aria-haspopup":this.submenu?"menu":undefined,"aria-expanded":this.submenu?this.submenuOpen?"true":"false":undefined,onClick:this.handleClick,onKeyDown:this.handleKeyDown},i?t("a",{class:"md-navigation-rail-tab__anchor",href:a,target:this.target||undefined,rel:this.target?s:undefined,tabIndex:-1,"aria-hidden":"true",part:"anchor"},this.renderInner()):this.renderInner())}get el(){return o(this)}static get watchers(){return{expanded:[{onExpandedChange:0}]}}};d.style=l();export{d as md_navigation_rail_tab};
2
+ //# sourceMappingURL=p-4ba3623e.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as t,h as o,H as e,a as n}from"./p-DTaX19_O.js";const r=()=>`:host{--_container-color:var(--md-toolbar-container-color, var(--md-sys-color-surface-container, #F3EDF7));--_icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface-variant, #49454F));--_shape:var(--md-toolbar-container-shape, 0px);--_height:var(--md-toolbar-container-height, max(48px, calc(64px + var(--md-sys-density-scale, 0) * 4px)));--_padding:var(--md-toolbar-padding, var(--md-sys-spacing-inset-lg, 16px));--_gap:var(--md-toolbar-gap, max(4px, calc(32px + var(--md-sys-density-scale, 0) * 2px)));--_fab-gap:var(--md-toolbar-fab-gap, var(--md-sys-spacing-gap-lg, 16px));display:flex;align-items:center;box-sizing:border-box;color:var(--_icon-color);font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif)}:host(.md-toolbar--docked){--_gap:var(--md-toolbar-gap, max(4px, calc(32px + var(--md-sys-density-scale, 0) * 2px)));--_padding:var(--md-toolbar-padding, var(--md-sys-spacing-inset-lg, 16px));inline-size:100%;min-block-size:var(--_height);padding-inline:var(--_padding);padding-block-end:env(safe-area-inset-bottom, 0px);background-color:var(--_container-color);border-radius:var(--_shape);box-shadow:var(--md-sys-elevation-2, 0 1px 3px 1px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.3));position:sticky;inset-block-end:0;z-index:var(--md-sys-z-index-app-bar, 100);gap:0}:host(.md-toolbar--docked.md-toolbar--align-center){--_gap:var(--md-toolbar-gap, var(--md-sys-spacing-gap-sm, 8px))}:host(.md-toolbar--docked.md-toolbar--align-space-between){--_gap:0px}:host(.md-toolbar--floating){--_shape:var(--md-toolbar-container-shape, var(--md-sys-shape-corner-full, 100px));--_gap:var(--md-toolbar-gap, var(--md-sys-spacing-gap-xs, 4px));--_padding:var(--md-toolbar-padding, var(--md-sys-spacing-inset-sm, 8px));--_fab-gap:var(--md-toolbar-fab-gap, var(--md-sys-spacing-gap-sm, 8px));display:inline-flex;align-items:center;gap:var(--_fab-gap);margin-inline:var(--md-sys-spacing-inset-lg, 16px);padding:0;background-color:transparent;border-radius:0;box-shadow:none}:host(.md-toolbar--floating) .md-toolbar__container{background-color:var(--_container-color);border-radius:var(--_shape);box-shadow:var(--md-sys-elevation-2, 0 1px 3px 1px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.3));padding:var(--_padding);box-sizing:border-box;flex:0 1 auto}:host(.md-toolbar--floating:not(.md-toolbar--vertical)){min-block-size:var(--_height)}:host(.md-toolbar--floating:not(.md-toolbar--vertical)) .md-toolbar__container{block-size:var(--_height)}:host(.md-toolbar--floating.md-toolbar--vertical) .md-toolbar__container{block-size:auto;inline-size:100%}:host(.md-toolbar--vertical){flex-direction:column;block-size:auto;inline-size:var(--_height)}:host(.md-toolbar--vertical) .md-toolbar__container{flex-direction:column}:host(.md-toolbar--standard){--_container-color:var(--md-toolbar-container-color, var(--md-sys-color-surface-container, #F3EDF7));--_icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface-variant, #49454F))}:host(.md-toolbar--vibrant){--_container-color:var(--md-toolbar-container-color, var(--md-sys-color-primary-container, #EADDFF));--_icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface, #1C1B1F))}.md-toolbar__container{display:flex;align-items:center;gap:var(--_gap);flex:1;min-inline-size:0;flex-wrap:var(--md-toolbar-flex-wrap, nowrap);overflow-x:var(--md-toolbar-overflow-x, visible);scrollbar-width:var(--md-toolbar-scrollbar-width, thin);scroll-padding-inline:var(--_padding)}:host(.md-toolbar--vertical) .md-toolbar__container{overflow-x:visible;overflow-y:var(--md-toolbar-overflow-y, visible);scroll-padding-block:var(--_padding)}:host(.md-toolbar--align-start) .md-toolbar__container{justify-content:flex-start}:host(.md-toolbar--align-center) .md-toolbar__container{justify-content:center}:host(.md-toolbar--align-end) .md-toolbar__container{justify-content:flex-end}:host(.md-toolbar--align-space-between) .md-toolbar__container{justify-content:space-between}.md-toolbar__fab-container{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-inline-start:var(--_fab-gap)}.md-toolbar__fab-container--hidden{display:none}.md-toolbar__fab-container--floating{margin-inline-start:0;margin-block-start:0}::slotted(*){flex-shrink:0}:host(.md-toolbar--standard) ::slotted(md-icon-button.md-icon-button--standard:not(.md-icon-button--selected)),:host(.md-toolbar--standard) ::slotted(md-icon-button.md-icon-button--outlined:not(.md-icon-button--selected)){--md-icon-button-icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface-variant, #49454F));--md-icon-button-state-layer-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface-variant, #49454F))}:host(.md-toolbar--vibrant) ::slotted(md-icon-button.md-icon-button--standard:not(.md-icon-button--selected)),:host(.md-toolbar--vibrant) ::slotted(md-icon-button.md-icon-button--outlined:not(.md-icon-button--selected)){--md-icon-button-icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface, #1C1B1F));--md-icon-button-state-layer-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface, #1C1B1F))}:host(.md-toolbar--vibrant) ::slotted(md-icon-button.md-icon-button--tonal.md-icon-button--toggle:not(.md-icon-button--selected)){--md-icon-button-container-color:var(--md-sys-color-surface-container, #F3EDF7);--md-icon-button-icon-color:var(--md-sys-color-on-surface, #1C1B1F);--md-icon-button-state-layer-color:var(--md-sys-color-on-surface, #1C1B1F)}:host(.md-toolbar--vibrant) ::slotted(md-icon-button.md-icon-button--tonal.md-icon-button--toggle.md-icon-button--selected){--md-icon-button-container-color:var(--md-sys-color-secondary-container, #E8DEF8);--md-icon-button-icon-color:var(--md-sys-color-on-secondary-container, #1E192B);--md-icon-button-state-layer-color:var(--md-sys-color-on-secondary-container, #1E192B)}::slotted([slot="leading"]){margin-inline-end:auto}::slotted([slot="trailing"]){margin-inline-start:auto}:host(.md-toolbar--docked) ::slotted([slot="fab"]){box-shadow:none !important}@media (forced-colors: active){:host(.md-toolbar--docked){border-block-start:1px solid CanvasText}:host(.md-toolbar--floating) .md-toolbar__container{border:1px solid CanvasText}}@media (prefers-reduced-motion: reduce){.md-toolbar__container{scroll-behavior:auto}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const a=class{constructor(o){t(this,o);this.variant="docked";this.color="standard";this.layout="horizontal";this.alignment="start";this.containerSemantics="toolbar";this.ariaLabelProp="";this.ariaLabelledby="";this.density=0;this.hasFab=false;this.activeItem=null;this.roved=new Map;this.hasLoaded=false;this.rovingFrame=0;this.onHostKeyDown=t=>this.handleKeyDown(t);this.onFocusIn=t=>this.handleFocusIn(t);this.syncFab=()=>{this.hasFab=(this.fabSlot?.assignedElements().length??0)>0};this.syncRoving=()=>{if(typeof requestAnimationFrame!=="function"){this.updateRoving();return}if(this.rovingFrame)return;this.rovingFrame=requestAnimationFrame((()=>{this.rovingFrame=0;this.updateRoving()}))}}onNavPropChange(t,o,e){this.updateRoving()}hasAccessibleName(){return(this.ariaLabelledby??"").trim().length>0||(this.ariaLabelProp??"").trim().length>0}warnGenericNamed(){console.warn('[md-toolbar] `aria-label`/`aria-labelledby` on container-semantics="generic": a generic container cannot be named (ARIA name-prohibited), so assistive tech will ignore it. Use container-semantics="toolbar" if the name matters.')}componentWillLoad(){const t=this.el.getAttribute("aria-label");if(t!==null&&t.trim()==="")this.el.removeAttribute("aria-label")}connectedCallback(){this.el.addEventListener("keydown",this.onHostKeyDown,false);this.el.addEventListener("focusin",this.onFocusIn,false);if(this.hasLoaded)this.setupObservers()}componentDidLoad(){this.hasLoaded=true;this.setupObservers()}disconnectedCallback(){this.el.removeEventListener("keydown",this.onHostKeyDown,false);this.el.removeEventListener("focusin",this.onFocusIn,false);this.teardownObservers();this.clearRoving()}setupObservers(){const t=this.el.shadowRoot;this.fabSlot=t?.querySelector('slot[name="fab"]')??undefined;this.fabSlot?.addEventListener("slotchange",this.syncFab);this.syncFab();t?.querySelectorAll("slot").forEach((t=>t.addEventListener("slotchange",this.syncRoving)));if(typeof MutationObserver!=="undefined"&&!this.slotObserver){this.slotObserver=new MutationObserver(this.syncRoving);this.slotObserver.observe(this.el,{childList:true,subtree:true,attributes:true,attributeFilter:["disabled","aria-disabled","aria-hidden","hidden","class","style","role","type"]})}this.updateRoving()}teardownObservers(){this.fabSlot?.removeEventListener("slotchange",this.syncFab);this.el.shadowRoot?.querySelectorAll("slot").forEach((t=>t.removeEventListener("slotchange",this.syncRoving)));this.slotObserver?.disconnect();this.slotObserver=undefined;if(this.rovingFrame&&typeof cancelAnimationFrame==="function")cancelAnimationFrame(this.rovingFrame);this.rovingFrame=0}async setFocus(){const t=this.getItems();const o=this.activeItem&&t.includes(this.activeItem)?this.activeItem:this.preferredActive(t);o?.focus()}classify(t){if("isContentEditable"in t&&t.isContentEditable)return"independent";if(t.matches(a.COMPOSITE_SELECTOR))return"composite";if(t.matches(a.INDEPENDENT_SELECTOR))return"independent";if(t.matches(a.ROVING_SELECTOR))return"roving";if(t.matches('[tabindex]:not([tabindex^="-"])')){return t.querySelector(a.ANY_CONTROL_SELECTOR)?"wrapper":"roving"}return"wrapper"}optedOut(t){if("groupTabindex"in t)return false;const o=this.roved.get(t);const e=o&&o.kind==="attr"?o.orig:t.getAttribute("tabindex");return e!==null&&e.trim()!==""&&parseInt(e,10)<0}slotOf(t){const o=t.getAttribute("slot");if(o==="leading")return"leading";if(o==="trailing")return"trailing";if(o==="fab")return"fab";return"default"}slotPriority(t){const o=this.slotOf(t);return o==="leading"?0:o==="trailing"?2:o==="fab"?3:1}isVisible(t){const o=t.checkVisibility;if(typeof o==="function")return o.call(t,{checkVisibilityCSS:true});if(typeof getComputedStyle!=="function")return true;const e=getComputedStyle(t);return e.display!=="none"&&e.visibility!=="hidden"&&e.visibility!=="collapse"}ariaHiddenWithin(t){let o=t;while(o&&o!==this.el){if(o.getAttribute&&o.getAttribute("aria-hidden")==="true")return true;o=o.parentElement}return false}isNavigable(t){if(!(t instanceof HTMLElement))return false;if(t.hidden)return false;if(t.hasAttribute("disabled"))return false;if("disabled"in t&&t.disabled===true)return false;if(this.optedOut(t))return false;if(this.ariaHiddenWithin(t))return false;return this.isVisible(t)}collectRoving(t,o){const e=this.classify(t);if(e==="composite"||e==="independent")return;if(e==="roving"){if(this.isNavigable(t)&&!o.includes(t))o.push(t);return}for(const e of Array.from(t.children))this.collectRoving(e,o)}preferredActive(t){return t.find((t=>t.getAttribute("aria-disabled")!=="true"))??t[0]}getItems(){const t=Array.from(this.el.children).filter((t=>this.slotOf(t)!=="fab"));const o=new Map;t.forEach(((t,e)=>o.set(t,e)));t.sort(((t,e)=>{const n=this.slotPriority(t);const r=this.slotPriority(e);if(n!==r)return n-r;return(o.get(t)??0)-(o.get(e)??0)}));const e=[];for(const o of t)this.collectRoving(o,e);return e}applyRoving(t,o){if("groupTabindex"in t){if(!this.roved.has(t))this.roved.set(t,{kind:"group",orig:null});t.groupTabindex=o?0:-1}else{if(!this.roved.has(t))this.roved.set(t,{kind:"attr",orig:t.getAttribute("tabindex")});t.setAttribute("tabindex",o?"0":"-1")}}restoreOne(t){const o=this.roved.get(t);if(!o)return;if(o.kind==="group"){try{t.groupTabindex=null}catch{}}else if(o.orig===null){t.removeAttribute("tabindex")}else{t.setAttribute("tabindex",o.orig)}this.roved.delete(t)}clearRoving(){for(const t of Array.from(this.roved.keys()))this.restoreOne(t)}updateRoving(){if(this.containerSemantics!=="toolbar"){this.clearRoving();return}const t=this.getItems();for(const o of Array.from(this.roved.keys())){if(!t.includes(o))this.restoreOne(o)}if(t.length===0){this.activeItem=null;return}const o=this.activeItem&&t.includes(this.activeItem)?this.activeItem:this.preferredActive(t);this.activeItem=o??null;for(const e of t)this.applyRoving(e,e===o)}handleFocusIn(t){if(this.containerSemantics!=="toolbar")return;const o=this.getItems();const e=this.resolveItem(t.target,o);if(!e||e===this.activeItem)return;this.activeItem=e;for(const t of o)this.applyRoving(t,t===e)}resolveItem(t,o){const e=t;if(!e)return null;for(const t of o){if(t===e||t.contains(e))return t}return null}handleKeyDown(t){if(this.containerSemantics!=="toolbar")return;if(t.defaultPrevented)return;if(t.shiftKey||t.ctrlKey||t.metaKey||t.altKey)return;const o=t.key;const e=o==="ArrowRight"||o==="ArrowLeft"||o==="ArrowUp"||o==="ArrowDown"||o==="Home"||o==="End";if(!e)return;const n=this.getItems();if(n.length===0)return;const r=this.resolveItem(t.target,n);if(!r)return;const a=this.variant==="floating"&&this.layout==="vertical";const i=typeof getComputedStyle==="function"&&getComputedStyle(this.el).direction==="rtl";let s=0;if(a){if(o==="ArrowDown")s=1;else if(o==="ArrowUp")s=-1}else{if(o==="ArrowRight")s=i?-1:1;else if(o==="ArrowLeft")s=i?1:-1}let l;if(o==="Home"){l=0}else if(o==="End"){l=n.length-1}else if(s!==0){const t=n.indexOf(r);l=(t+s+n.length)%n.length}else{return}const d=n[l];if(!d)return;t.preventDefault();if(d!==r){this.activeItem=d;for(const t of n)this.applyRoving(t,t===d);d.focus()}}render(){const t=this.variant==="floating";const n=t&&this.layout==="vertical";const r=this.containerSemantics==="toolbar";const a=(this.ariaLabelledby??"").trim();const i=(this.ariaLabelProp??"").trim();const s=i.length>0?this.ariaLabelProp:undefined;const l=a.length>0?this.ariaLabelledby:undefined;const d=r?n?"vertical":"horizontal":undefined;return o(e,{key:"2064ce9ddf20d134ceaedbb2a0a54d39a70a19d0",class:{"md-toolbar":true,[`md-toolbar--${this.variant}`]:true,[`md-toolbar--${this.color}`]:true,[`md-toolbar--${this.layout}`]:t,[`md-toolbar--align-${this.alignment}`]:true,"md-toolbar--vertical":n,"md-toolbar--generic":!r},role:r?"toolbar":undefined,"aria-label":s,"aria-labelledby":l,"aria-orientation":d},o("div",{key:"e311ea0f281f1bb167ccf2914d047f2d49ca34e9",class:"md-toolbar__container",part:"container"},o("slot",{key:"6f9ce44e297c337340debd90a935e6db46fd10f0",name:"leading"}),o("slot",{key:"6a57d91bb3d358ae64b727d89754501ec3efb71f"}),o("slot",{key:"c826d0f85ed25a897d8bc667b904f28a0f099191",name:"trailing"})),o("div",{key:"153673e76d1ec5b6a84cfb9ac2bed6ca53faaf74",class:{"md-toolbar__fab-container":true,"md-toolbar__fab-container--floating":t,"md-toolbar__fab-container--hidden":!this.hasFab},part:"fab-container"},o("slot",{key:"5835dab76c0418045a36a1128c0315e772af0e7d",name:"fab"})))}get el(){return n(this)}static get watchers(){return{containerSemantics:[{onNavPropChange:0}],variant:[{onNavPropChange:0}],layout:[{onNavPropChange:0}]}}};a.COMPOSITE_SELECTOR='md-button-group,md-menu,[role="group"],[role="radiogroup"],[role="listbox"],[role="menu"],[role="tablist"],[role="toolbar"]';a.INDEPENDENT_SELECTOR=['input:not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="image"]):not([type="file"]):not([type="color"]):not([type="hidden"])',"textarea","select",'[contenteditable]:not([contenteditable="false"])',"md-text-field","md-select","md-radio","md-chip","md-switch","md-checkbox","md-fab",'[role="textbox"]','[role="searchbox"]','[role="spinbutton"]','[role="combobox"]','[role="slider"]','[role="radio"]','[role="checkbox"]'].join(",");a.ROVING_SELECTOR=["button","a[href]","md-button","md-icon-button",'input[type="button"]','input[type="submit"]','input[type="reset"]','input[type="image"]','input[type="file"]','input[type="color"]','[role="button"]','[role="menuitem"]','[role="link"]'].join(",");a.ANY_CONTROL_SELECTOR=a.COMPOSITE_SELECTOR+","+a.INDEPENDENT_SELECTOR+","+a.ROVING_SELECTOR;a.style=r();export{a as md_toolbar};
2
- //# sourceMappingURL=p-7b463fbe.entry.js.map
1
+ import{r as t,h as o,H as e,g as n}from"./p-WmvQpZnM.js";const r=()=>`:host{--_container-color:var(--md-toolbar-container-color, var(--md-sys-color-surface-container, #F3EDF7));--_icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface-variant, #49454F));--_shape:var(--md-toolbar-container-shape, 0px);--_height:var(--md-toolbar-container-height, max(48px, calc(64px + var(--md-sys-density-scale, 0) * 4px)));--_padding:var(--md-toolbar-padding, var(--md-sys-spacing-inset-lg, 16px));--_gap:var(--md-toolbar-gap, max(4px, calc(32px + var(--md-sys-density-scale, 0) * 2px)));--_fab-gap:var(--md-toolbar-fab-gap, var(--md-sys-spacing-gap-lg, 16px));display:flex;align-items:center;box-sizing:border-box;color:var(--_icon-color);font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif)}:host(.md-toolbar--docked){--_gap:var(--md-toolbar-gap, max(4px, calc(32px + var(--md-sys-density-scale, 0) * 2px)));--_padding:var(--md-toolbar-padding, var(--md-sys-spacing-inset-lg, 16px));inline-size:100%;min-block-size:var(--_height);padding-inline:var(--_padding);padding-block-end:env(safe-area-inset-bottom, 0px);background-color:var(--_container-color);border-radius:var(--_shape);box-shadow:var(--md-sys-elevation-2, 0 1px 3px 1px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.3));position:sticky;inset-block-end:0;z-index:var(--md-sys-z-index-app-bar, 100);gap:0}:host(.md-toolbar--docked.md-toolbar--align-center){--_gap:var(--md-toolbar-gap, var(--md-sys-spacing-gap-sm, 8px))}:host(.md-toolbar--docked.md-toolbar--align-space-between){--_gap:0px}:host(.md-toolbar--floating){--_shape:var(--md-toolbar-container-shape, var(--md-sys-shape-corner-full, 100px));--_gap:var(--md-toolbar-gap, var(--md-sys-spacing-gap-xs, 4px));--_padding:var(--md-toolbar-padding, var(--md-sys-spacing-inset-sm, 8px));--_fab-gap:var(--md-toolbar-fab-gap, var(--md-sys-spacing-gap-sm, 8px));display:inline-flex;align-items:center;gap:var(--_fab-gap);margin-inline:var(--md-sys-spacing-inset-lg, 16px);padding:0;background-color:transparent;border-radius:0;box-shadow:none}:host(.md-toolbar--floating) .md-toolbar__container{background-color:var(--_container-color);border-radius:var(--_shape);box-shadow:var(--md-sys-elevation-2, 0 1px 3px 1px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.3));padding:var(--_padding);box-sizing:border-box;flex:0 1 auto}:host(.md-toolbar--floating:not(.md-toolbar--vertical)){min-block-size:var(--_height)}:host(.md-toolbar--floating:not(.md-toolbar--vertical)) .md-toolbar__container{block-size:var(--_height)}:host(.md-toolbar--floating.md-toolbar--vertical) .md-toolbar__container{block-size:auto;inline-size:100%}:host(.md-toolbar--vertical){flex-direction:column;block-size:auto;inline-size:var(--_height)}:host(.md-toolbar--vertical) .md-toolbar__container{flex-direction:column}:host(.md-toolbar--standard){--_container-color:var(--md-toolbar-container-color, var(--md-sys-color-surface-container, #F3EDF7));--_icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface-variant, #49454F))}:host(.md-toolbar--vibrant){--_container-color:var(--md-toolbar-container-color, var(--md-sys-color-primary-container, #EADDFF));--_icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface, #1C1B1F))}.md-toolbar__container{display:flex;align-items:center;gap:var(--_gap);flex:1;min-inline-size:0;flex-wrap:var(--md-toolbar-flex-wrap, nowrap);overflow-x:var(--md-toolbar-overflow-x, visible);scrollbar-width:var(--md-toolbar-scrollbar-width, thin);scroll-padding-inline:var(--_padding)}:host(.md-toolbar--vertical) .md-toolbar__container{overflow-x:visible;overflow-y:var(--md-toolbar-overflow-y, visible);scroll-padding-block:var(--_padding)}:host(.md-toolbar--align-start) .md-toolbar__container{justify-content:flex-start}:host(.md-toolbar--align-center) .md-toolbar__container{justify-content:center}:host(.md-toolbar--align-end) .md-toolbar__container{justify-content:flex-end}:host(.md-toolbar--align-space-between) .md-toolbar__container{justify-content:space-between}.md-toolbar__fab-container{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-inline-start:var(--_fab-gap)}.md-toolbar__fab-container--hidden{display:none}.md-toolbar__fab-container--floating{margin-inline-start:0;margin-block-start:0}::slotted(*){flex-shrink:0}:host(.md-toolbar--standard) ::slotted(md-icon-button.md-icon-button--standard:not(.md-icon-button--selected)),:host(.md-toolbar--standard) ::slotted(md-icon-button.md-icon-button--outlined:not(.md-icon-button--selected)){--md-icon-button-icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface-variant, #49454F));--md-icon-button-state-layer-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface-variant, #49454F))}:host(.md-toolbar--vibrant) ::slotted(md-icon-button.md-icon-button--standard:not(.md-icon-button--selected)),:host(.md-toolbar--vibrant) ::slotted(md-icon-button.md-icon-button--outlined:not(.md-icon-button--selected)){--md-icon-button-icon-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface, #1C1B1F));--md-icon-button-state-layer-color:var(--md-toolbar-icon-color, var(--md-sys-color-on-surface, #1C1B1F))}:host(.md-toolbar--vibrant) ::slotted(md-icon-button.md-icon-button--tonal.md-icon-button--toggle:not(.md-icon-button--selected)){--md-icon-button-container-color:var(--md-sys-color-surface-container, #F3EDF7);--md-icon-button-icon-color:var(--md-sys-color-on-surface, #1C1B1F);--md-icon-button-state-layer-color:var(--md-sys-color-on-surface, #1C1B1F)}:host(.md-toolbar--vibrant) ::slotted(md-icon-button.md-icon-button--tonal.md-icon-button--toggle.md-icon-button--selected){--md-icon-button-container-color:var(--md-sys-color-secondary-container, #E8DEF8);--md-icon-button-icon-color:var(--md-sys-color-on-secondary-container, #1E192B);--md-icon-button-state-layer-color:var(--md-sys-color-on-secondary-container, #1E192B)}::slotted([slot="leading"]){margin-inline-end:auto}::slotted([slot="trailing"]){margin-inline-start:auto}:host(.md-toolbar--docked) ::slotted([slot="fab"]){box-shadow:none !important}@media (forced-colors: active){:host(.md-toolbar--docked){border-block-start:1px solid CanvasText}:host(.md-toolbar--floating) .md-toolbar__container{border:1px solid CanvasText}}@media (prefers-reduced-motion: reduce){.md-toolbar__container{scroll-behavior:auto}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const a=class{constructor(o){t(this,o);this.variant="docked";this.color="standard";this.layout="horizontal";this.alignment="start";this.containerSemantics="toolbar";this.ariaLabelProp="";this.ariaLabelledby="";this.density=0;this.hasFab=false;this.activeItem=null;this.roved=new Map;this.hasLoaded=false;this.rovingFrame=0;this.onHostKeyDown=t=>this.handleKeyDown(t);this.onFocusIn=t=>this.handleFocusIn(t);this.syncFab=()=>{this.hasFab=(this.fabSlot?.assignedElements().length??0)>0};this.syncRoving=()=>{if(typeof requestAnimationFrame!=="function"){this.updateRoving();return}if(this.rovingFrame)return;this.rovingFrame=requestAnimationFrame((()=>{this.rovingFrame=0;this.updateRoving()}))}}onNavPropChange(t,o,e){this.updateRoving()}hasAccessibleName(){return(this.ariaLabelledby??"").trim().length>0||(this.ariaLabelProp??"").trim().length>0}warnGenericNamed(){console.warn('[md-toolbar] `aria-label`/`aria-labelledby` on container-semantics="generic": a generic container cannot be named (ARIA name-prohibited), so assistive tech will ignore it. Use container-semantics="toolbar" if the name matters.')}componentWillLoad(){const t=this.el.getAttribute("aria-label");if(t!==null&&t.trim()==="")this.el.removeAttribute("aria-label")}connectedCallback(){this.el.addEventListener("keydown",this.onHostKeyDown,false);this.el.addEventListener("focusin",this.onFocusIn,false);if(this.hasLoaded)this.setupObservers()}componentDidLoad(){this.hasLoaded=true;this.setupObservers()}disconnectedCallback(){this.el.removeEventListener("keydown",this.onHostKeyDown,false);this.el.removeEventListener("focusin",this.onFocusIn,false);this.teardownObservers();this.clearRoving()}setupObservers(){const t=this.el.shadowRoot;this.fabSlot=t?.querySelector('slot[name="fab"]')??undefined;this.fabSlot?.addEventListener("slotchange",this.syncFab);this.syncFab();t?.querySelectorAll("slot").forEach((t=>t.addEventListener("slotchange",this.syncRoving)));if(typeof MutationObserver!=="undefined"&&!this.slotObserver){this.slotObserver=new MutationObserver(this.syncRoving);this.slotObserver.observe(this.el,{childList:true,subtree:true,attributes:true,attributeFilter:["disabled","aria-disabled","aria-hidden","hidden","class","style","role","type"]})}this.updateRoving()}teardownObservers(){this.fabSlot?.removeEventListener("slotchange",this.syncFab);this.el.shadowRoot?.querySelectorAll("slot").forEach((t=>t.removeEventListener("slotchange",this.syncRoving)));this.slotObserver?.disconnect();this.slotObserver=undefined;if(this.rovingFrame&&typeof cancelAnimationFrame==="function")cancelAnimationFrame(this.rovingFrame);this.rovingFrame=0}async setFocus(){const t=this.getItems();const o=this.activeItem&&t.includes(this.activeItem)?this.activeItem:this.preferredActive(t);o?.focus()}classify(t){if("isContentEditable"in t&&t.isContentEditable)return"independent";if(t.matches(a.COMPOSITE_SELECTOR))return"composite";if(t.matches(a.INDEPENDENT_SELECTOR))return"independent";if(t.matches(a.ROVING_SELECTOR))return"roving";if(t.matches('[tabindex]:not([tabindex^="-"])')){return t.querySelector(a.ANY_CONTROL_SELECTOR)?"wrapper":"roving"}return"wrapper"}optedOut(t){if("groupTabindex"in t)return false;const o=this.roved.get(t);const e=o&&o.kind==="attr"?o.orig:t.getAttribute("tabindex");return e!==null&&e.trim()!==""&&parseInt(e,10)<0}slotOf(t){const o=t.getAttribute("slot");if(o==="leading")return"leading";if(o==="trailing")return"trailing";if(o==="fab")return"fab";return"default"}slotPriority(t){const o=this.slotOf(t);return o==="leading"?0:o==="trailing"?2:o==="fab"?3:1}isVisible(t){const o=t.checkVisibility;if(typeof o==="function")return o.call(t,{checkVisibilityCSS:true});if(typeof getComputedStyle!=="function")return true;const e=getComputedStyle(t);return e.display!=="none"&&e.visibility!=="hidden"&&e.visibility!=="collapse"}ariaHiddenWithin(t){let o=t;while(o&&o!==this.el){if(o.getAttribute&&o.getAttribute("aria-hidden")==="true")return true;o=o.parentElement}return false}isNavigable(t){if(!(t instanceof HTMLElement))return false;if(t.hidden)return false;if(t.hasAttribute("disabled"))return false;if("disabled"in t&&t.disabled===true)return false;if(this.optedOut(t))return false;if(this.ariaHiddenWithin(t))return false;return this.isVisible(t)}collectRoving(t,o){const e=this.classify(t);if(e==="composite"||e==="independent")return;if(e==="roving"){if(this.isNavigable(t)&&!o.includes(t))o.push(t);return}for(const e of Array.from(t.children))this.collectRoving(e,o)}preferredActive(t){return t.find((t=>t.getAttribute("aria-disabled")!=="true"))??t[0]}getItems(){const t=Array.from(this.el.children).filter((t=>this.slotOf(t)!=="fab"));const o=new Map;t.forEach(((t,e)=>o.set(t,e)));t.sort(((t,e)=>{const n=this.slotPriority(t);const r=this.slotPriority(e);if(n!==r)return n-r;return(o.get(t)??0)-(o.get(e)??0)}));const e=[];for(const o of t)this.collectRoving(o,e);return e}applyRoving(t,o){if("groupTabindex"in t){if(!this.roved.has(t))this.roved.set(t,{kind:"group",orig:null});t.groupTabindex=o?0:-1}else{if(!this.roved.has(t))this.roved.set(t,{kind:"attr",orig:t.getAttribute("tabindex")});t.setAttribute("tabindex",o?"0":"-1")}}restoreOne(t){const o=this.roved.get(t);if(!o)return;if(o.kind==="group"){try{t.groupTabindex=null}catch{}}else if(o.orig===null){t.removeAttribute("tabindex")}else{t.setAttribute("tabindex",o.orig)}this.roved.delete(t)}clearRoving(){for(const t of Array.from(this.roved.keys()))this.restoreOne(t)}updateRoving(){if(this.containerSemantics!=="toolbar"){this.clearRoving();return}const t=this.getItems();for(const o of Array.from(this.roved.keys())){if(!t.includes(o))this.restoreOne(o)}if(t.length===0){this.activeItem=null;return}const o=this.activeItem&&t.includes(this.activeItem)?this.activeItem:this.preferredActive(t);this.activeItem=o??null;for(const e of t)this.applyRoving(e,e===o)}handleFocusIn(t){if(this.containerSemantics!=="toolbar")return;const o=this.getItems();const e=this.resolveItem(t.target,o);if(!e||e===this.activeItem)return;this.activeItem=e;for(const t of o)this.applyRoving(t,t===e)}resolveItem(t,o){const e=t;if(!e)return null;for(const t of o){if(t===e||t.contains(e))return t}return null}handleKeyDown(t){if(this.containerSemantics!=="toolbar")return;if(t.defaultPrevented)return;if(t.shiftKey||t.ctrlKey||t.metaKey||t.altKey)return;const o=t.key;const e=o==="ArrowRight"||o==="ArrowLeft"||o==="ArrowUp"||o==="ArrowDown"||o==="Home"||o==="End";if(!e)return;const n=this.getItems();if(n.length===0)return;const r=this.resolveItem(t.target,n);if(!r)return;const a=this.variant==="floating"&&this.layout==="vertical";const i=typeof getComputedStyle==="function"&&getComputedStyle(this.el).direction==="rtl";let s=0;if(a){if(o==="ArrowDown")s=1;else if(o==="ArrowUp")s=-1}else{if(o==="ArrowRight")s=i?-1:1;else if(o==="ArrowLeft")s=i?1:-1}let l;if(o==="Home"){l=0}else if(o==="End"){l=n.length-1}else if(s!==0){const t=n.indexOf(r);l=(t+s+n.length)%n.length}else{return}const d=n[l];if(!d)return;t.preventDefault();if(d!==r){this.activeItem=d;for(const t of n)this.applyRoving(t,t===d);d.focus()}}render(){const t=this.variant==="floating";const n=t&&this.layout==="vertical";const r=this.containerSemantics==="toolbar";const a=(this.ariaLabelledby??"").trim();const i=(this.ariaLabelProp??"").trim();const s=i.length>0?this.ariaLabelProp:undefined;const l=a.length>0?this.ariaLabelledby:undefined;const d=r?n?"vertical":"horizontal":undefined;return o(e,{key:"2064ce9ddf20d134ceaedbb2a0a54d39a70a19d0",class:{"md-toolbar":true,[`md-toolbar--${this.variant}`]:true,[`md-toolbar--${this.color}`]:true,[`md-toolbar--${this.layout}`]:t,[`md-toolbar--align-${this.alignment}`]:true,"md-toolbar--vertical":n,"md-toolbar--generic":!r},role:r?"toolbar":undefined,"aria-label":s,"aria-labelledby":l,"aria-orientation":d},o("div",{key:"e311ea0f281f1bb167ccf2914d047f2d49ca34e9",class:"md-toolbar__container",part:"container"},o("slot",{key:"6f9ce44e297c337340debd90a935e6db46fd10f0",name:"leading"}),o("slot",{key:"6a57d91bb3d358ae64b727d89754501ec3efb71f"}),o("slot",{key:"c826d0f85ed25a897d8bc667b904f28a0f099191",name:"trailing"})),o("div",{key:"153673e76d1ec5b6a84cfb9ac2bed6ca53faaf74",class:{"md-toolbar__fab-container":true,"md-toolbar__fab-container--floating":t,"md-toolbar__fab-container--hidden":!this.hasFab},part:"fab-container"},o("slot",{key:"5835dab76c0418045a36a1128c0315e772af0e7d",name:"fab"})))}get el(){return n(this)}static get watchers(){return{containerSemantics:[{onNavPropChange:0}],variant:[{onNavPropChange:0}],layout:[{onNavPropChange:0}]}}};a.COMPOSITE_SELECTOR='md-button-group,md-menu,[role="group"],[role="radiogroup"],[role="listbox"],[role="menu"],[role="tablist"],[role="toolbar"]';a.INDEPENDENT_SELECTOR=['input:not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="image"]):not([type="file"]):not([type="color"]):not([type="hidden"])',"textarea","select",'[contenteditable]:not([contenteditable="false"])',"md-text-field","md-select","md-radio","md-chip","md-switch","md-checkbox","md-fab",'[role="textbox"]','[role="searchbox"]','[role="spinbutton"]','[role="combobox"]','[role="slider"]','[role="radio"]','[role="checkbox"]'].join(",");a.ROVING_SELECTOR=["button","a[href]","md-button","md-icon-button",'input[type="button"]','input[type="submit"]','input[type="reset"]','input[type="image"]','input[type="file"]','input[type="color"]','[role="button"]','[role="menuitem"]','[role="link"]'].join(",");a.ANY_CONTROL_SELECTOR=a.COMPOSITE_SELECTOR+","+a.INDEPENDENT_SELECTOR+","+a.ROVING_SELECTOR;a.style=r();export{a as md_toolbar};
2
+ //# sourceMappingURL=p-4f2e82cb.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as t,c as e,h as r,H as i,a as s}from"./p-DTaX19_O.js";const o=(t,e,r)=>Math.max(e,Math.min(r,t));function a(t,e,r){const i=t/255;const s=e/255;const o=r/255;const a=Math.max(i,s,o);const n=Math.min(i,s,o);const l=a-n;let c=0;if(l!==0){switch(a){case i:c=(s-o)/l%6;break;case s:c=(o-i)/l+2;break;default:c=(i-s)/l+4}c*=60;if(c<0)c+=360}const h=a===0?0:l/a*100;const d=a*100;return{h:c,s:h,v:d}}function n(t,e,r){const i=e/100;const s=r/100;const o=s*i;const a=t/60;const n=o*(1-Math.abs(a%2-1));let l=0,c=0,h=0;if(a>=0&&a<1){l=o;c=n;h=0}else if(a<2){l=n;c=o;h=0}else if(a<3){l=0;c=o;h=n}else if(a<4){l=0;c=n;h=o}else if(a<5){l=n;c=0;h=o}else{l=o;c=0;h=n}const d=s-o;return{r:Math.round((l+d)*255),g:Math.round((c+d)*255),b:Math.round((h+d)*255)}}function l(t){const{r:e,g:r,b:i}=n(t.h,t.s,t.v);return{r:e,g:r,b:i,a:t.a}}function c(t,e,r){const i=t/255;const s=e/255;const o=r/255;const a=Math.max(i,s,o);const n=Math.min(i,s,o);const l=(a+n)/2;let c=0;let h=0;if(a!==n){const t=a-n;h=l>.5?t/(2-a-n):t/(a+n);switch(a){case i:c=(s-o)/t+(s<o?6:0);break;case s:c=(o-i)/t+2;break;default:c=(i-s)/t+4}c*=60}return{h:c,s:h*100,l:l*100}}function h(t){const{r:e,g:r,b:i}=n(t.h,t.s,t.v);return c(e,r,i)}function d(t,e,r){const i=(t%360+360)%360;const s=o(e,0,100)/100;const a=o(r,0,100)/100;const n=(1-Math.abs(2*a-1))*s;const l=n*(1-Math.abs(i/60%2-1));const c=a-n/2;let h=0;let d=0;let p=0;if(i<60){h=n;d=l}else if(i<120){h=l;d=n}else if(i<180){d=n;p=l}else if(i<240){d=l;p=n}else if(i<300){h=l;p=n}else{h=n;p=l}return{r:Math.round((h+c)*255),g:Math.round((d+c)*255),b:Math.round((p+c)*255)}}function p(t,e=false){const r=t=>o(Math.round(t),0,255).toString(16).padStart(2,"0");const i=`#${r(t.r)}${r(t.g)}${r(t.b)}`;if(!e&&t.a>=1)return i.toUpperCase();return`${i}${r(t.a*255)}`.toUpperCase()}function u(t,e=false){return p(l(t),e||t.a<1)}function m(t){if(!t)return null;const e=t.trim().replace(/^#/,"");const r=/^[0-9a-fA-F]+$/;if(!r.test(e))return null;let i=0,s=0,o=0,a=1;if(e.length===3){i=parseInt(e[0]+e[0],16);s=parseInt(e[1]+e[1],16);o=parseInt(e[2]+e[2],16)}else if(e.length===4){i=parseInt(e[0]+e[0],16);s=parseInt(e[1]+e[1],16);o=parseInt(e[2]+e[2],16);a=parseInt(e[3]+e[3],16)/255}else if(e.length===6){i=parseInt(e.slice(0,2),16);s=parseInt(e.slice(2,4),16);o=parseInt(e.slice(4,6),16)}else if(e.length===8){i=parseInt(e.slice(0,2),16);s=parseInt(e.slice(2,4),16);o=parseInt(e.slice(4,6),16);a=parseInt(e.slice(6,8),16)/255}else{return null}return{r:i,g:s,b:o,a}}function f(t){const e=t.trim().match(/^hsla?\(\s*([\d.]+)[\s,]+([\d.]+)%?[\s,]+([\d.]+)%?(?:[\s,/]+([\d.%]+))?\s*\)$/i);if(!e)return null;const r=o(parseFloat(e[1]),0,360);const i=o(parseFloat(e[2]),0,100);const s=o(parseFloat(e[3]),0,100);const a=t=>{if(t==null)return 1;if(t.endsWith("%"))return o(parseFloat(t)/100,0,1);return o(parseFloat(t),0,1)};const{r:n,g:l,b:c}=d(r,i,s);return{r:n,g:l,b:c,a:a(e[4])}}function _(t){const e=t.trim().match(/^rgba?\(\s*([\d.]+)[\s,]+([\d.]+)[\s,]+([\d.]+)(?:[\s,/]+([\d.%]+))?\s*\)$/i);if(!e)return null;const r=t=>{if(t.endsWith("%"))return o(parseFloat(t)/100*255,0,255);return o(parseFloat(t),0,255)};const i=t=>{if(t==null)return 1;if(t.endsWith("%"))return o(parseFloat(t)/100,0,1);return o(parseFloat(t),0,1)};return{r:Math.round(r(e[1])),g:Math.round(r(e[2])),b:Math.round(r(e[3])),a:i(e[4])}}function b(t){if(!t)return null;const e=t.trim();if(e.startsWith("#")||/^[0-9a-fA-F]{3,8}$/.test(e)){const t=m(e);if(!t)return null;const{h:r,s:i,v:s}=a(t.r,t.g,t.b);return{h:r,s:i,v:s,a:t.a}}const r=e.toLowerCase();if(r.startsWith("rgb")){const t=_(e);if(!t)return null;const{h:r,s:i,v:s}=a(t.r,t.g,t.b);return{h:r,s:i,v:s,a:t.a}}if(r.startsWith("hsl")){const t=f(e);if(!t)return null;const{h:r,s:i,v:s}=a(t.r,t.g,t.b);return{h:r,s:i,v:s,a:t.a}}return null}function v(t,e){const r=l(t);if(e==="rgb"){if(t.a<1){return`rgba(${r.r}, ${r.g}, ${r.b}, ${+t.a.toFixed(2)})`}return`rgb(${r.r}, ${r.g}, ${r.b})`}if(e==="hsl"){const{h:e,s:i,l:s}=c(r.r,r.g,r.b);if(t.a<1){return`hsla(${Math.round(e)}, ${Math.round(i)}%, ${Math.round(s)}%, ${+t.a.toFixed(2)})`}return`hsl(${Math.round(e)}, ${Math.round(i)}%, ${Math.round(s)}%)`}return u(t,t.a<1)}const g=()=>`:host{--_width:var(--md-color-picker-width, 296px);--_plate-height:var(--md-color-picker-plate-height, 176px);--_radius:var(--md-color-picker-radius, var(--md-sys-shape-corner-extra-large, 28px));--_surface:var(--md-color-picker-surface-color, var(--md-sys-color-surface-container-high, #ECE6F0));--_on-surface:var(--md-color-picker-on-surface, var(--md-sys-color-on-surface, #1C1B1F));--_outline:var(--md-color-picker-outline-color, var(--md-sys-color-outline-variant, #CAC4D0));--_outline-strong:var(--md-color-picker-outline-strong, var(--md-sys-color-outline, #79747E));--_primary:var(--md-sys-color-primary, #6750A4);--_thumb-size:var(--md-color-picker-thumb-size, 18px);--_thumb-border:var(--md-color-picker-thumb-border, #FFFFFF);--_preset-size:var(--md-color-picker-preset-size, 32px);--_popover-elevation:var(--md-color-picker-popover-elevation, var(--md-sys-elevation-3, 0px 4px 8px 3px rgba(0,0,0,0.15), 0px 1px 3px rgba(0,0,0,0.3)));--_state-easing:var(--md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.80, 0.34, 1.00));--_state-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_spring-easing:var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90));--_spring-duration:var(--md-sys-motion-spring-spatial-fast-duration, 350ms);--_emphasized-decelerate:var(--md-sys-motion-easing-emphasized-decelerate, cubic-bezier(0.05, 0.7, 0.1, 1));--_emphasized-accelerate:var(--md-sys-motion-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15));--_popover-in-duration:var(--md-sys-motion-duration-medium2, 300ms);--_popover-out-duration:var(--md-sys-motion-duration-short4, 200ms);display:inline-block;box-sizing:border-box;direction:inherit;font-family:var(--md-sys-typescale-body-medium-font-family, Roboto, sans-serif);color:var(--_on-surface)}:host(.md-color-picker--inline){inline-size:var(--_width)}.md-color-picker__popover{position:absolute;z-index:var(--md-sys-z-index-popup, 1000);margin-block-start:8px;inline-size:var(--_width);background:var(--_surface);color:var(--_on-surface);border-radius:var(--_radius);box-shadow:var(--_popover-elevation);padding:max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px));box-sizing:border-box;transform-origin:top left;animation:md-color-picker-pop-in var(--_popover-in-duration) var(--_emphasized-decelerate) both}.md-color-picker__popover[data-state="closing"]{animation:md-color-picker-pop-out var(--_popover-out-duration) var(--_emphasized-accelerate) both}@keyframes md-color-picker-pop-in{from{opacity:0;transform:scale(0.8) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes md-color-picker-pop-out{from{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(0.95) translateY(-4px)}}:host([dir="rtl"]) .md-color-picker__popover,:host-context([dir="rtl"]) .md-color-picker__popover{transform-origin:top right}.md-color-picker__panel{display:flex;flex-direction:column;gap:max(4px, calc(14px + var(--md-sys-density-scale, 0) * 2px));inline-size:100%;background:var(--_surface);border-radius:var(--_radius);padding:max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px));box-sizing:border-box}:host(.md-color-picker--popover) .md-color-picker__panel{padding:0;background:transparent}.md-color-picker__plate{position:relative;inline-size:100%;block-size:var(--_plate-height);border-radius:var(--md-sys-shape-corner-large, 16px);overflow:hidden;touch-action:none;cursor:crosshair}.md-color-picker__plate:focus-visible{outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:2px}.md-color-picker__plate-saturation,.md-color-picker__plate-value{position:absolute;inset:0}.md-color-picker__plate-saturation{background:linear-gradient(to right, #ffffff, rgba(255, 255, 255, 0))}:host(:dir(rtl)) .md-color-picker__plate-saturation,:host([dir="rtl"]) .md-color-picker__plate-saturation,:host-context([dir="rtl"]) .md-color-picker__plate-saturation{background:linear-gradient(to left, #ffffff, rgba(255, 255, 255, 0))}.md-color-picker__plate-value{background:linear-gradient(to top, #000000, rgba(0, 0, 0, 0))}.md-color-picker__thumb{position:absolute;inline-size:var(--_thumb-size);block-size:var(--_thumb-size);border-radius:50%;border:2px solid var(--_thumb-border);box-shadow:0 0 0 1px rgba(0, 0, 0, 0.4), var(--md-sys-elevation-1, 0px 1px 2px rgba(0,0,0,0.3));margin-inline-start:calc(-0.5 * var(--_thumb-size));margin-block-start:calc(-0.5 * var(--_thumb-size));pointer-events:none;background-color:currentColor;transition:box-shadow var(--_state-duration) var(--_state-easing), transform var(--_state-duration) var(--_state-easing)}.md-color-picker__plate:active .md-color-picker__thumb,.md-color-picker__hue:active .md-color-picker__thumb,.md-color-picker__alpha:active .md-color-picker__thumb{transform:scale(1.15);box-shadow:0 0 0 6px color-mix(in srgb, var(--_primary) 16%, transparent), var(--md-sys-elevation-2, 0px 1px 2px rgba(0,0,0,0.3))}.md-color-picker__thumb--slider{inset-block-start:50%;margin-block-start:0;transform:translateY(-50%)}.md-color-picker__hue:active .md-color-picker__thumb--slider,.md-color-picker__alpha:active .md-color-picker__thumb--slider{transform:translateY(-50%) scale(1.15)}.md-color-picker__sliders{display:flex;gap:max(4px, calc(14px + var(--md-sys-density-scale, 0) * 2px));align-items:center}.md-color-picker__sliders-stack{flex:1;display:flex;flex-direction:column;gap:var(--md-sys-spacing-gap-md, 12px)}.md-color-picker__hue,.md-color-picker__alpha{position:relative;inline-size:100%;block-size:14px;border-radius:var(--md-sys-shape-corner-full, 9999px);touch-action:none;cursor:pointer;transition:box-shadow var(--_state-duration) var(--_state-easing)}.md-color-picker__hue{background:linear-gradient( to right, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100% )}:host(:dir(rtl)) .md-color-picker__hue,:host([dir="rtl"]) .md-color-picker__hue,:host-context([dir="rtl"]) .md-color-picker__hue{background:linear-gradient( to left, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100% )}.md-color-picker__alpha{background-image:linear-gradient(45deg, #ccc 25%, transparent 25%), linear-gradient(-45deg, #ccc 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #ccc 75%), linear-gradient(-45deg, transparent 75%, #ccc 75%);background-size:8px 8px;background-position:0 0, 0 4px, 4px -4px, -4px 0}.md-color-picker__alpha-track{position:absolute;inset:0;border-radius:inherit}.md-color-picker__hue::before,.md-color-picker__alpha::before{content:'';position:absolute;inset-block:calc((100% - var(--_thumb-size)) / 2);inset-inline:calc(var(--_thumb-size) / -2)}.md-color-picker__hue:focus-visible,.md-color-picker__alpha:focus-visible{outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:4px}.md-color-picker__hue:hover,.md-color-picker__alpha:hover{box-shadow:0 0 0 4px color-mix(in srgb, var(--_on-surface) 8%, transparent)}.md-color-picker__preview{flex-shrink:0;inline-size:40px;block-size:40px;border-radius:50%;background-image:linear-gradient(45deg, #ccc 25%, transparent 25%), linear-gradient(-45deg, #ccc 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #ccc 75%), linear-gradient(-45deg, transparent 75%, #ccc 75%);background-size:8px 8px;background-position:0 0, 0 4px, 4px -4px, -4px 0;border:1px solid var(--_outline);overflow:hidden;transition:transform var(--_spring-duration) var(--_spring-easing)}.md-color-picker__preview-inner{inline-size:100%;block-size:100%;transition:background-color var(--_state-duration) var(--_state-easing)}.md-color-picker__field{display:flex;flex-direction:column;gap:var(--md-sys-spacing-gap-xs, 4px);flex:1;min-inline-size:0}.md-color-picker__field label{font-family:var(--md-sys-typescale-label-small-font-family, Roboto, sans-serif);font-size:var(--md-sys-typescale-label-small-font-size, 11px);font-weight:var(--md-sys-typescale-label-small-font-weight, 500);line-height:var(--md-sys-typescale-label-small-line-height, 16px);letter-spacing:var(--md-sys-typescale-label-small-letter-spacing, 0.5px);color:var(--md-sys-color-on-surface-variant, #49454F);text-transform:uppercase}.md-color-picker__field input{inline-size:100%;padding:var(--md-sys-spacing-inset-sm, 8px) 6px;border:1px solid var(--_outline);border-radius:var(--md-sys-shape-corner-extra-small, 4px);background:var(--md-sys-color-surface-container-lowest, #FFFFFF);color:var(--_on-surface);font:inherit;font-size:13px;font-variant-numeric:tabular-nums;box-sizing:border-box;text-align:center;transition:border-color var(--_state-duration) var(--_state-easing), box-shadow var(--_state-duration) var(--_state-easing)}.md-color-picker__field input:hover:not(:disabled){border-color:var(--_outline-strong)}.md-color-picker__field input:focus-visible{outline:none;border-color:var(--_primary);box-shadow:0 0 0 1px var(--_primary)}.md-color-picker__field input[aria-invalid="true"]{border-color:var(--md-sys-color-error, #B3261E)}.md-color-picker__field input[aria-invalid="true"]:focus-visible{box-shadow:0 0 0 1px var(--md-sys-color-error, #B3261E)}.md-color-picker__field input:disabled{opacity:0.5;cursor:not-allowed}.md-color-picker__field--hex input{text-align:start;font-family:var(--md-sys-typescale-mono-font, ui-monospace, 'SF Mono', Menlo, monospace);letter-spacing:0.05em}.md-color-picker__inputs{display:flex;gap:var(--md-sys-spacing-gap-sm, 8px)}.md-color-picker__presets{display:flex;flex-wrap:wrap;gap:var(--md-sys-spacing-gap-sm, 8px)}.md-color-picker__preset{position:relative;inline-size:var(--_preset-size);block-size:var(--_preset-size);border:1px solid var(--_outline);border-radius:50%;cursor:pointer;padding:0;transition:transform var(--_spring-duration) var(--_spring-easing), box-shadow var(--_spring-duration) var(--_spring-easing)}.md-color-picker__preset:hover:not(:disabled){transform:scale(1.15) rotate(-4deg);box-shadow:var(--md-sys-elevation-1, 0px 1px 2px rgba(0,0,0,0.3))}.md-color-picker__preset:active:not(:disabled){transform:scale(1.05) rotate(0deg)}.md-color-picker__preset:focus-visible{outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:3px}.md-color-picker__preset[aria-selected="true"]{box-shadow:0 0 0 2px var(--_surface), 0 0 0 4px var(--_primary), var(--md-sys-elevation-1, 0px 1px 2px rgba(0,0,0,0.3));transform:scale(1.1)}.md-color-picker__preset[aria-selected="true"]:hover:not(:disabled){transform:scale(1.18)}:host(.md-color-picker--disabled) .md-color-picker__plate,:host(.md-color-picker--disabled) .md-color-picker__hue,:host(.md-color-picker--disabled) .md-color-picker__alpha{pointer-events:none;opacity:0.5}@media (prefers-reduced-motion: reduce){.md-color-picker__popover{animation-duration:0.01ms !important}.md-color-picker__preset,.md-color-picker__field input,.md-color-picker__thumb,.md-color-picker__preview,.md-color-picker__hue,.md-color-picker__alpha{transition-duration:0.01ms !important}.md-color-picker__preset:hover:not(:disabled){transform:scale(1.06)}}@media (forced-colors: active){.md-color-picker__field input,.md-color-picker__preset{border:1px solid CanvasText}.md-color-picker__plate,.md-color-picker__hue,.md-color-picker__alpha{forced-color-adjust:none}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const k=class{constructor(r){t(this,r);this.mdInput=e(this,"mdInput",7);this.mdChange=e(this,"mdChange",7);this.mdOpenChange=e(this,"mdOpenChange",7);this.variant="inline";this.value="#6750A4";this.format="hex";this.alpha=false;this.showHex=true;this.showInputs=true;this.disabled=false;this.presets="";this.ariaLabelProp="Color picker";this.open=false;this.dismissOnOutsideClick=false;this.density=0;this.hsva={h:268,s:53,v:64,a:1};this.hexInput="";this.hexInvalid=false;this.hasSlottedTrigger=false;this.pointerDragKind=null;this.uid=`md-color-picker-${Math.random().toString(36).slice(2,7)}`;this.wiredTrigger=null;this.lastEmitted="";this.onSatPointerDown=t=>{if(this.disabled)return;const e=t.currentTarget;e.setPointerCapture(t.pointerId);this.satRect=e.getBoundingClientRect();this.pointerDragKind="sat";this.updateSatFromPoint(t.clientX,t.clientY)};this.onSatPointerMove=t=>{if(this.pointerDragKind!=="sat"||!this.satRect)return;this.updateSatFromPoint(t.clientX,t.clientY)};this.onSatPointerUp=t=>{if(this.pointerDragKind!=="sat")return;const e=t.currentTarget;e.releasePointerCapture?.(t.pointerId);this.pointerDragKind=null;this.emit(true)};this.onSatKeyDown=t=>{if(this.disabled)return;const e=t.shiftKey?10:1;const r=this.isRtl();let{s:i,v:s}=this.hsva;let o=true;switch(t.key){case"ArrowLeft":i+=r?e:-e;break;case"ArrowRight":i+=r?-e:e;break;case"ArrowDown":s-=e;break;case"ArrowUp":s+=e;break;case"Home":i=0;break;case"End":i=100;break;case"PageDown":s=0;break;case"PageUp":s=100;break;default:o=false}if(!o)return;t.preventDefault();this.hsva={...this.hsva,s:Math.max(0,Math.min(100,i)),v:Math.max(0,Math.min(100,s))};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(true)};this.onHuePointerDown=t=>{if(this.disabled)return;const e=t.currentTarget;e.setPointerCapture(t.pointerId);this.hueRect=e.getBoundingClientRect();this.pointerDragKind="hue";this.updateHueFromPoint(t.clientX)};this.onHuePointerMove=t=>{if(this.pointerDragKind!=="hue"||!this.hueRect)return;this.updateHueFromPoint(t.clientX)};this.onHuePointerUp=t=>{if(this.pointerDragKind!=="hue")return;const e=t.currentTarget;e.releasePointerCapture?.(t.pointerId);this.pointerDragKind=null;this.emit(true)};this.onHueKeyDown=t=>{if(this.disabled)return;const e=t.shiftKey?15:1;const r=this.isRtl();let{h:i}=this.hsva;let s=true;switch(t.key){case"ArrowLeft":i+=r?e:-e;break;case"ArrowRight":i+=r?-e:e;break;case"Home":i=0;break;case"End":i=360;break;default:s=false}if(!s)return;t.preventDefault();i=(i%360+360)%360;this.hsva={...this.hsva,h:i};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(true)};this.onAlphaPointerDown=t=>{if(this.disabled)return;const e=t.currentTarget;e.setPointerCapture(t.pointerId);this.alphaRect=e.getBoundingClientRect();this.pointerDragKind="alpha";this.updateAlphaFromPoint(t.clientX)};this.onAlphaPointerMove=t=>{if(this.pointerDragKind!=="alpha"||!this.alphaRect)return;this.updateAlphaFromPoint(t.clientX)};this.onAlphaPointerUp=t=>{if(this.pointerDragKind!=="alpha")return;const e=t.currentTarget;e.releasePointerCapture?.(t.pointerId);this.pointerDragKind=null;this.emit(true)};this.onAlphaKeyDown=t=>{if(this.disabled)return;const e=t.shiftKey?.1:.01;const r=this.isRtl();let{a:i}=this.hsva;let s=true;switch(t.key){case"ArrowLeft":i+=r?e:-e;break;case"ArrowRight":i+=r?-e:e;break;case"Home":i=0;break;case"End":i=1;break;default:s=false}if(!s)return;t.preventDefault();i=Math.max(0,Math.min(1,i));this.hsva={...this.hsva,a:i};this.hexInput=u(this.hsva,true);this.hexInvalid=false;this.emit(true)};this.onHexInput=t=>{const e=t.target.value;this.hexInput=e;const r=b(e.startsWith("#")?e:`#${e}`);if(r){this.hsva=r;this.hexInvalid=false;this.emit(false)}else{this.hexInvalid=true}};this.onHexBlur=()=>{if(this.hexInvalid){this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false}this.emit(true)};this.onRgbChange=(t,e)=>{const r=e.target.value;const i=Math.max(0,Math.min(255,parseInt(r,10)||0));const s=l(this.hsva);this.rgbaFromChannels(t==="r"?i:s.r,t==="g"?i:s.g,t==="b"?i:s.b)};this.onHslChange=(t,e)=>{const r=e.target.value;const i=parseInt(r,10)||0;const s=h(this.hsva);const o=t==="h"?Math.max(0,Math.min(360,i)):s.h;const a=t==="s"?Math.max(0,Math.min(100,i)):s.s;const n=t==="l"?Math.max(0,Math.min(100,i)):s.l;const{r:l,g:c,b:p}=d(o,a,n);this.rgbaFromChannels(l,c,p)};this.onAlphaInputChange=t=>{const e=t.target.value;const r=Math.max(0,Math.min(1,parseFloat(e)||0));this.hsva={...this.hsva,a:r};this.hexInput=u(this.hsva,true);this.emit(true)};this.onPresetClick=t=>{if(this.disabled)return;this.applyValue(t,true);this.emit(true)};this.onPresetKeyDown=(t,e)=>{if(t.key==="Enter"||t.key===" "){t.preventDefault();this.onPresetClick(e)}};this.toggleOpen=()=>{if(this.disabled)return;this.open=!this.open}}componentWillLoad(){this.applyValue(this.value,false);this.computeSlottedTrigger()}componentDidLoad(){this.syncOutsideClickListener();this.wireSlottedTrigger();const t=this.el.shadowRoot?.querySelector('slot[name="trigger"]');t?.addEventListener("slotchange",(()=>{this.computeSlottedTrigger();this.wireSlottedTrigger()}))}computeSlottedTrigger(){this.hasSlottedTrigger=this.el.querySelector('[slot="trigger"]')!==null;if(!this.hasSlottedTrigger&&this.variant==="popover"&&typeof console!=="undefined"){console.warn('[md-color-picker] variant="popover" needs a trigger: slot one into '+'`trigger` (e.g. <md-button slot="trigger">…</md-button>). Without it '+"there is nothing to open the panel.")}}wireSlottedTrigger(){const t=this.el.querySelector('[slot="trigger"]');if(!t||t===this.wiredTrigger){this.syncSlottedTriggerAria();return}this.wiredTrigger?.removeEventListener("click",this.toggleOpen);t.addEventListener("click",this.toggleOpen);this.wiredTrigger=t;this.syncSlottedTriggerAria()}syncSlottedTriggerAria(){const t=this.wiredTrigger;if(!t)return;t.setAttribute("aria-haspopup","dialog");t.setAttribute("aria-expanded",String(this.open))}onValueChange(t){if(t===this.lastEmitted)return;this.applyValue(t,false)}isRtl(){return typeof getComputedStyle==="function"&&getComputedStyle(this.el).direction==="rtl"}horizontalRatio(t,e){const r=e.width;if(r<=0)return 0;return this.isRtl()?(e.right-t)/r:(t-e.left)/r}horizontalGradientTo(){return this.isRtl()?"left":"right"}applyValue(t,e){const r=b(t);if(r){this.hsva=r;this.hexInput=u(r,this.alpha&&r.a<1);this.hexInvalid=false;if(e)this.emit()}else{this.hexInvalid=true}}emit(t=false){const e=v(this.hsva,this.format);if(e!==this.value){this.lastEmitted=e;this.value=e;this.mdInput.emit({value:e});if(t)this.mdChange.emit({value:e})}else if(t){this.mdChange.emit({value:e})}}updateSatFromPoint(t,e){if(!this.satRect)return;const r=this.horizontalRatio(t,this.satRect);const i=e-this.satRect.top;const s=Math.max(0,Math.min(100,r*100));const o=Math.max(0,Math.min(100,100-i/this.satRect.height*100));this.hsva={...this.hsva,s,v:o};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(false)}updateHueFromPoint(t){if(!this.hueRect)return;const e=Math.max(0,Math.min(1,this.horizontalRatio(t,this.hueRect)));const r=e*360;this.hsva={...this.hsva,h:r};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(false)}updateAlphaFromPoint(t){if(!this.alphaRect)return;const e=Math.max(0,Math.min(1,this.horizontalRatio(t,this.alphaRect)));this.hsva={...this.hsva,a:e};this.hexInput=u(this.hsva,true);this.hexInvalid=false;this.emit(false)}rgbaFromChannels(t,e,r){const i=`#${[t,e,r].map((t=>t.toString(16).padStart(2,"0"))).join("")}`;const s=b(i);if(s){this.hsva={...s,a:this.hsva.a};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(true)}}get parsedPresets(){const t=Array.isArray(this.presets)?this.presets:String(this.presets??"").split(",");return t.map((t=>String(t).trim())).filter(Boolean)}async show(){if(this.variant!=="popover"||this.disabled)return;this.open=true}async close(){if(this.variant!=="popover")return;this.open=false}onOpenChange(t){this.mdOpenChange.emit({open:t});this.syncOutsideClickListener();this.syncSlottedTriggerAria()}onVariantChange(){this.syncOutsideClickListener()}onDismissOnOutsideClickChange(){this.syncOutsideClickListener()}onDisabledChange(){this.syncOutsideClickListener()}disconnectedCallback(){this.removeOutsideClickHandler();this.wiredTrigger?.removeEventListener("click",this.toggleOpen);this.wiredTrigger=null}syncOutsideClickListener(){this.removeOutsideClickHandler();if(this.variant!=="popover"||!this.open||!this.dismissOnOutsideClick||this.disabled||typeof document==="undefined"){return}requestAnimationFrame((()=>{if(this.variant!=="popover"||!this.open||!this.dismissOnOutsideClick||this.disabled){return}this.attachOutsideClickHandler()}))}attachOutsideClickHandler(){this.outsideClickHandler=t=>{if(this.disabled||!this.open)return;const e=t.composedPath?t.composedPath():[];if(e.includes(this.el))return;const r=t.target;if(r&&this.el.contains(r))return;this.open=false};document.addEventListener("mousedown",this.outsideClickHandler,true)}removeOutsideClickHandler(){if(this.outsideClickHandler&&typeof document!=="undefined"){document.removeEventListener("mousedown",this.outsideClickHandler,true)}this.outsideClickHandler=undefined}onGlobalKeyDown(t){if(this.variant==="popover"&&this.open&&t.key==="Escape"){t.preventDefault();this.open=false}}renderSaturationPlate(){const t=this.hsva.h;const e=this.hsva.s;const i=this.hsva.v;const s=l({h:t,s:100,v:100,a:1});const o=`rgb(${s.r}, ${s.g}, ${s.b})`;return r("div",{class:"md-color-picker__plate",part:"plate",role:"application",tabindex:this.disabled?-1:0,"aria-label":"Saturation and brightness",style:{background:o},onPointerDown:this.onSatPointerDown,onPointerMove:this.onSatPointerMove,onPointerUp:this.onSatPointerUp,onPointerCancel:this.onSatPointerUp,onKeyDown:this.onSatKeyDown},r("div",{class:"md-color-picker__plate-saturation","aria-hidden":"true"}),r("div",{class:"md-color-picker__plate-value","aria-hidden":"true"}),r("div",{class:"md-color-picker__thumb",part:"thumb",style:{insetInlineStart:`${e}%`,insetBlockStart:`${100-i}%`,backgroundColor:u(this.hsva,false)}}))}renderHueSlider(){const t=this.hsva.h;const e=t/360;return r("div",{class:"md-color-picker__hue",part:"hue",role:"slider","aria-label":"Hue","aria-valuemin":"0","aria-valuemax":"360","aria-valuenow":Math.round(t),"aria-orientation":"horizontal","aria-disabled":this.disabled?"true":undefined,tabindex:this.disabled?-1:0,onPointerDown:this.onHuePointerDown,onPointerMove:this.onHuePointerMove,onPointerUp:this.onHuePointerUp,onPointerCancel:this.onHuePointerUp,onKeyDown:this.onHueKeyDown},r("div",{class:"md-color-picker__thumb md-color-picker__thumb--slider",style:{insetInlineStart:`${e*100}%`,backgroundColor:u({h:t,s:100,v:100,a:1},false)}}))}renderAlphaSlider(){if(!this.alpha)return null;const t=this.hsva.a;const e=l({...this.hsva,a:1});const i=`linear-gradient(to ${this.horizontalGradientTo()}, rgba(${e.r}, ${e.g}, ${e.b}, 0), rgba(${e.r}, ${e.g}, ${e.b}, 1))`;return r("div",{class:"md-color-picker__alpha",part:"alpha",role:"slider","aria-label":"Opacity","aria-valuemin":"0","aria-valuemax":"1","aria-valuenow":+t.toFixed(2),"aria-orientation":"horizontal","aria-disabled":this.disabled?"true":undefined,tabindex:this.disabled?-1:0,onPointerDown:this.onAlphaPointerDown,onPointerMove:this.onAlphaPointerMove,onPointerUp:this.onAlphaPointerUp,onPointerCancel:this.onAlphaPointerUp,onKeyDown:this.onAlphaKeyDown},r("div",{class:"md-color-picker__alpha-track",style:{backgroundImage:i}}),r("div",{class:"md-color-picker__thumb md-color-picker__thumb--slider",style:{insetInlineStart:`${t*100}%`,backgroundColor:u(this.hsva,true)}}))}renderHexInput(){if(!this.showHex)return null;return r("div",{class:"md-color-picker__field md-color-picker__field--hex",part:"field-hex"},r("label",{part:"label",htmlFor:`${this.uid}-hex`},"Hex"),r("input",{id:`${this.uid}-hex`,type:"text",value:this.hexInput,spellcheck:false,autoComplete:"off","aria-invalid":this.hexInvalid?"true":undefined,disabled:this.disabled,onInput:this.onHexInput,onBlur:this.onHexBlur,onKeyDown:t=>{if(t.key==="Enter"){t.target.blur()}}}))}renderAlphaField(){if(!this.alpha)return null;return r("div",{class:"md-color-picker__field",part:"field-a"},r("label",{htmlFor:`${this.uid}-a`},"A"),r("input",{id:`${this.uid}-a`,type:"number",min:"0",max:"1",step:"0.01",value:+this.hsva.a.toFixed(2),disabled:this.disabled,onChange:this.onAlphaInputChange}))}renderRgbInputs(){const t=l(this.hsva);return r("div",{class:"md-color-picker__inputs",part:"inputs"},r("div",{class:"md-color-picker__field",part:"field-r"},r("label",{htmlFor:`${this.uid}-r`},"R"),r("input",{id:`${this.uid}-r`,type:"number",min:"0",max:"255",step:"1",value:t.r,disabled:this.disabled,onChange:t=>this.onRgbChange("r",t)})),r("div",{class:"md-color-picker__field",part:"field-g"},r("label",{htmlFor:`${this.uid}-g`},"G"),r("input",{id:`${this.uid}-g`,type:"number",min:"0",max:"255",step:"1",value:t.g,disabled:this.disabled,onChange:t=>this.onRgbChange("g",t)})),r("div",{class:"md-color-picker__field",part:"field-b"},r("label",{htmlFor:`${this.uid}-b`},"B"),r("input",{id:`${this.uid}-b`,type:"number",min:"0",max:"255",step:"1",value:t.b,disabled:this.disabled,onChange:t=>this.onRgbChange("b",t)})),this.renderAlphaField())}renderHslInputs(){const t=h(this.hsva);return r("div",{class:"md-color-picker__inputs",part:"inputs"},r("div",{class:"md-color-picker__field",part:"field-h"},r("label",{htmlFor:`${this.uid}-h`},"H"),r("input",{id:`${this.uid}-h`,type:"number",min:"0",max:"360",step:"1",value:Math.round(t.h),disabled:this.disabled,onChange:t=>this.onHslChange("h",t)})),r("div",{class:"md-color-picker__field",part:"field-s"},r("label",{htmlFor:`${this.uid}-s`},"S"),r("input",{id:`${this.uid}-s`,type:"number",min:"0",max:"100",step:"1",value:Math.round(t.s),disabled:this.disabled,onChange:t=>this.onHslChange("s",t)})),r("div",{class:"md-color-picker__field",part:"field-l"},r("label",{htmlFor:`${this.uid}-l`},"L"),r("input",{id:`${this.uid}-l`,type:"number",min:"0",max:"100",step:"1",value:Math.round(t.l),disabled:this.disabled,onChange:t=>this.onHslChange("l",t)})),this.renderAlphaField())}renderChannelInputs(){if(!this.showInputs)return null;if(this.format==="hsl")return this.renderHslInputs();return this.renderRgbInputs()}renderPresets(){const t=this.parsedPresets;if(t.length===0)return null;return r("div",{class:"md-color-picker__presets",part:"presets",role:"listbox","aria-label":"Color presets"},t.map((t=>r("button",{key:t,type:"button",class:"md-color-picker__preset",part:"preset",role:"option","aria-label":t,"aria-selected":u(this.hsva,false).toLowerCase()===t.toLowerCase()?"true":"false",style:{backgroundColor:t},disabled:this.disabled,onClick:()=>this.onPresetClick(t),onKeyDown:e=>this.onPresetKeyDown(e,t)}))))}renderPanel(){return r("div",{class:"md-color-picker__panel",part:"panel"},this.renderSaturationPlate(),r("div",{class:"md-color-picker__sliders",part:"sliders"},r("div",{class:"md-color-picker__sliders-stack"},this.renderHueSlider(),this.renderAlphaSlider()),r("div",{class:"md-color-picker__preview",part:"preview",role:"img","aria-label":`Current colour ${v(this.hsva,this.format)}`},r("div",{class:"md-color-picker__preview-inner",style:{backgroundColor:u(this.hsva,true)}}))),this.renderHexInput(),this.renderChannelInputs(),this.renderPresets())}render(){u(this.hsva,true);if(this.variant==="popover"){return r(i,{class:{"md-color-picker":true,"md-color-picker--popover":true,"md-color-picker--open":this.open,"md-color-picker--disabled":this.disabled},"aria-label":this.ariaLabelProp},r("slot",{name:"trigger"}),this.open&&r("div",{class:"md-color-picker__popover",part:"popover",role:"dialog","aria-label":this.ariaLabelProp},this.renderPanel()))}return r(i,{class:{"md-color-picker":true,"md-color-picker--inline":true,"md-color-picker--disabled":this.disabled},role:"group","aria-label":this.ariaLabelProp},this.renderPanel())}get el(){return s(this)}static get watchers(){return{value:[{onValueChange:0}],open:[{onOpenChange:0}],variant:[{onVariantChange:0}],dismissOnOutsideClick:[{onDismissOnOutsideClickChange:0}],disabled:[{onDisabledChange:0}]}}};k.style=g();export{k as md_color_picker};
2
- //# sourceMappingURL=p-be412e3f.entry.js.map
1
+ import{r as t,c as e,h as r,H as i,g as s}from"./p-WmvQpZnM.js";const o=(t,e,r)=>Math.max(e,Math.min(r,t));function a(t,e,r){const i=t/255;const s=e/255;const o=r/255;const a=Math.max(i,s,o);const n=Math.min(i,s,o);const l=a-n;let c=0;if(l!==0){switch(a){case i:c=(s-o)/l%6;break;case s:c=(o-i)/l+2;break;default:c=(i-s)/l+4}c*=60;if(c<0)c+=360}const h=a===0?0:l/a*100;const d=a*100;return{h:c,s:h,v:d}}function n(t,e,r){const i=e/100;const s=r/100;const o=s*i;const a=t/60;const n=o*(1-Math.abs(a%2-1));let l=0,c=0,h=0;if(a>=0&&a<1){l=o;c=n;h=0}else if(a<2){l=n;c=o;h=0}else if(a<3){l=0;c=o;h=n}else if(a<4){l=0;c=n;h=o}else if(a<5){l=n;c=0;h=o}else{l=o;c=0;h=n}const d=s-o;return{r:Math.round((l+d)*255),g:Math.round((c+d)*255),b:Math.round((h+d)*255)}}function l(t){const{r:e,g:r,b:i}=n(t.h,t.s,t.v);return{r:e,g:r,b:i,a:t.a}}function c(t,e,r){const i=t/255;const s=e/255;const o=r/255;const a=Math.max(i,s,o);const n=Math.min(i,s,o);const l=(a+n)/2;let c=0;let h=0;if(a!==n){const t=a-n;h=l>.5?t/(2-a-n):t/(a+n);switch(a){case i:c=(s-o)/t+(s<o?6:0);break;case s:c=(o-i)/t+2;break;default:c=(i-s)/t+4}c*=60}return{h:c,s:h*100,l:l*100}}function h(t){const{r:e,g:r,b:i}=n(t.h,t.s,t.v);return c(e,r,i)}function d(t,e,r){const i=(t%360+360)%360;const s=o(e,0,100)/100;const a=o(r,0,100)/100;const n=(1-Math.abs(2*a-1))*s;const l=n*(1-Math.abs(i/60%2-1));const c=a-n/2;let h=0;let d=0;let p=0;if(i<60){h=n;d=l}else if(i<120){h=l;d=n}else if(i<180){d=n;p=l}else if(i<240){d=l;p=n}else if(i<300){h=l;p=n}else{h=n;p=l}return{r:Math.round((h+c)*255),g:Math.round((d+c)*255),b:Math.round((p+c)*255)}}function p(t,e=false){const r=t=>o(Math.round(t),0,255).toString(16).padStart(2,"0");const i=`#${r(t.r)}${r(t.g)}${r(t.b)}`;if(!e&&t.a>=1)return i.toUpperCase();return`${i}${r(t.a*255)}`.toUpperCase()}function u(t,e=false){return p(l(t),e||t.a<1)}function m(t){if(!t)return null;const e=t.trim().replace(/^#/,"");const r=/^[0-9a-fA-F]+$/;if(!r.test(e))return null;let i=0,s=0,o=0,a=1;if(e.length===3){i=parseInt(e[0]+e[0],16);s=parseInt(e[1]+e[1],16);o=parseInt(e[2]+e[2],16)}else if(e.length===4){i=parseInt(e[0]+e[0],16);s=parseInt(e[1]+e[1],16);o=parseInt(e[2]+e[2],16);a=parseInt(e[3]+e[3],16)/255}else if(e.length===6){i=parseInt(e.slice(0,2),16);s=parseInt(e.slice(2,4),16);o=parseInt(e.slice(4,6),16)}else if(e.length===8){i=parseInt(e.slice(0,2),16);s=parseInt(e.slice(2,4),16);o=parseInt(e.slice(4,6),16);a=parseInt(e.slice(6,8),16)/255}else{return null}return{r:i,g:s,b:o,a}}function f(t){const e=t.trim().match(/^hsla?\(\s*([\d.]+)[\s,]+([\d.]+)%?[\s,]+([\d.]+)%?(?:[\s,/]+([\d.%]+))?\s*\)$/i);if(!e)return null;const r=o(parseFloat(e[1]),0,360);const i=o(parseFloat(e[2]),0,100);const s=o(parseFloat(e[3]),0,100);const a=t=>{if(t==null)return 1;if(t.endsWith("%"))return o(parseFloat(t)/100,0,1);return o(parseFloat(t),0,1)};const{r:n,g:l,b:c}=d(r,i,s);return{r:n,g:l,b:c,a:a(e[4])}}function _(t){const e=t.trim().match(/^rgba?\(\s*([\d.]+)[\s,]+([\d.]+)[\s,]+([\d.]+)(?:[\s,/]+([\d.%]+))?\s*\)$/i);if(!e)return null;const r=t=>{if(t.endsWith("%"))return o(parseFloat(t)/100*255,0,255);return o(parseFloat(t),0,255)};const i=t=>{if(t==null)return 1;if(t.endsWith("%"))return o(parseFloat(t)/100,0,1);return o(parseFloat(t),0,1)};return{r:Math.round(r(e[1])),g:Math.round(r(e[2])),b:Math.round(r(e[3])),a:i(e[4])}}function b(t){if(!t)return null;const e=t.trim();if(e.startsWith("#")||/^[0-9a-fA-F]{3,8}$/.test(e)){const t=m(e);if(!t)return null;const{h:r,s:i,v:s}=a(t.r,t.g,t.b);return{h:r,s:i,v:s,a:t.a}}const r=e.toLowerCase();if(r.startsWith("rgb")){const t=_(e);if(!t)return null;const{h:r,s:i,v:s}=a(t.r,t.g,t.b);return{h:r,s:i,v:s,a:t.a}}if(r.startsWith("hsl")){const t=f(e);if(!t)return null;const{h:r,s:i,v:s}=a(t.r,t.g,t.b);return{h:r,s:i,v:s,a:t.a}}return null}function v(t,e){const r=l(t);if(e==="rgb"){if(t.a<1){return`rgba(${r.r}, ${r.g}, ${r.b}, ${+t.a.toFixed(2)})`}return`rgb(${r.r}, ${r.g}, ${r.b})`}if(e==="hsl"){const{h:e,s:i,l:s}=c(r.r,r.g,r.b);if(t.a<1){return`hsla(${Math.round(e)}, ${Math.round(i)}%, ${Math.round(s)}%, ${+t.a.toFixed(2)})`}return`hsl(${Math.round(e)}, ${Math.round(i)}%, ${Math.round(s)}%)`}return u(t,t.a<1)}const g=()=>`:host{--_width:var(--md-color-picker-width, 296px);--_plate-height:var(--md-color-picker-plate-height, 176px);--_radius:var(--md-color-picker-radius, var(--md-sys-shape-corner-extra-large, 28px));--_surface:var(--md-color-picker-surface-color, var(--md-sys-color-surface-container-high, #ECE6F0));--_on-surface:var(--md-color-picker-on-surface, var(--md-sys-color-on-surface, #1C1B1F));--_outline:var(--md-color-picker-outline-color, var(--md-sys-color-outline-variant, #CAC4D0));--_outline-strong:var(--md-color-picker-outline-strong, var(--md-sys-color-outline, #79747E));--_primary:var(--md-sys-color-primary, #6750A4);--_thumb-size:var(--md-color-picker-thumb-size, 18px);--_thumb-border:var(--md-color-picker-thumb-border, #FFFFFF);--_preset-size:var(--md-color-picker-preset-size, 32px);--_popover-elevation:var(--md-color-picker-popover-elevation, var(--md-sys-elevation-3, 0px 4px 8px 3px rgba(0,0,0,0.15), 0px 1px 3px rgba(0,0,0,0.3)));--_state-easing:var(--md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.80, 0.34, 1.00));--_state-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_spring-easing:var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90));--_spring-duration:var(--md-sys-motion-spring-spatial-fast-duration, 350ms);--_emphasized-decelerate:var(--md-sys-motion-easing-emphasized-decelerate, cubic-bezier(0.05, 0.7, 0.1, 1));--_emphasized-accelerate:var(--md-sys-motion-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15));--_popover-in-duration:var(--md-sys-motion-duration-medium2, 300ms);--_popover-out-duration:var(--md-sys-motion-duration-short4, 200ms);display:inline-block;box-sizing:border-box;direction:inherit;font-family:var(--md-sys-typescale-body-medium-font-family, Roboto, sans-serif);color:var(--_on-surface)}:host(.md-color-picker--inline){inline-size:var(--_width)}.md-color-picker__popover{position:absolute;z-index:var(--md-sys-z-index-popup, 1000);margin-block-start:8px;inline-size:var(--_width);background:var(--_surface);color:var(--_on-surface);border-radius:var(--_radius);box-shadow:var(--_popover-elevation);padding:max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px));box-sizing:border-box;transform-origin:top left;animation:md-color-picker-pop-in var(--_popover-in-duration) var(--_emphasized-decelerate) both}.md-color-picker__popover[data-state="closing"]{animation:md-color-picker-pop-out var(--_popover-out-duration) var(--_emphasized-accelerate) both}@keyframes md-color-picker-pop-in{from{opacity:0;transform:scale(0.8) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes md-color-picker-pop-out{from{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(0.95) translateY(-4px)}}:host([dir="rtl"]) .md-color-picker__popover,:host-context([dir="rtl"]) .md-color-picker__popover{transform-origin:top right}.md-color-picker__panel{display:flex;flex-direction:column;gap:max(4px, calc(14px + var(--md-sys-density-scale, 0) * 2px));inline-size:100%;background:var(--_surface);border-radius:var(--_radius);padding:max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px));box-sizing:border-box}:host(.md-color-picker--popover) .md-color-picker__panel{padding:0;background:transparent}.md-color-picker__plate{position:relative;inline-size:100%;block-size:var(--_plate-height);border-radius:var(--md-sys-shape-corner-large, 16px);overflow:hidden;touch-action:none;cursor:crosshair}.md-color-picker__plate:focus-visible{outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:2px}.md-color-picker__plate-saturation,.md-color-picker__plate-value{position:absolute;inset:0}.md-color-picker__plate-saturation{background:linear-gradient(to right, #ffffff, rgba(255, 255, 255, 0))}:host(:dir(rtl)) .md-color-picker__plate-saturation,:host([dir="rtl"]) .md-color-picker__plate-saturation,:host-context([dir="rtl"]) .md-color-picker__plate-saturation{background:linear-gradient(to left, #ffffff, rgba(255, 255, 255, 0))}.md-color-picker__plate-value{background:linear-gradient(to top, #000000, rgba(0, 0, 0, 0))}.md-color-picker__thumb{position:absolute;inline-size:var(--_thumb-size);block-size:var(--_thumb-size);border-radius:50%;border:2px solid var(--_thumb-border);box-shadow:0 0 0 1px rgba(0, 0, 0, 0.4), var(--md-sys-elevation-1, 0px 1px 2px rgba(0,0,0,0.3));margin-inline-start:calc(-0.5 * var(--_thumb-size));margin-block-start:calc(-0.5 * var(--_thumb-size));pointer-events:none;background-color:currentColor;transition:box-shadow var(--_state-duration) var(--_state-easing), transform var(--_state-duration) var(--_state-easing)}.md-color-picker__plate:active .md-color-picker__thumb,.md-color-picker__hue:active .md-color-picker__thumb,.md-color-picker__alpha:active .md-color-picker__thumb{transform:scale(1.15);box-shadow:0 0 0 6px color-mix(in srgb, var(--_primary) 16%, transparent), var(--md-sys-elevation-2, 0px 1px 2px rgba(0,0,0,0.3))}.md-color-picker__thumb--slider{inset-block-start:50%;margin-block-start:0;transform:translateY(-50%)}.md-color-picker__hue:active .md-color-picker__thumb--slider,.md-color-picker__alpha:active .md-color-picker__thumb--slider{transform:translateY(-50%) scale(1.15)}.md-color-picker__sliders{display:flex;gap:max(4px, calc(14px + var(--md-sys-density-scale, 0) * 2px));align-items:center}.md-color-picker__sliders-stack{flex:1;display:flex;flex-direction:column;gap:var(--md-sys-spacing-gap-md, 12px)}.md-color-picker__hue,.md-color-picker__alpha{position:relative;inline-size:100%;block-size:14px;border-radius:var(--md-sys-shape-corner-full, 9999px);touch-action:none;cursor:pointer;transition:box-shadow var(--_state-duration) var(--_state-easing)}.md-color-picker__hue{background:linear-gradient( to right, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100% )}:host(:dir(rtl)) .md-color-picker__hue,:host([dir="rtl"]) .md-color-picker__hue,:host-context([dir="rtl"]) .md-color-picker__hue{background:linear-gradient( to left, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100% )}.md-color-picker__alpha{background-image:linear-gradient(45deg, #ccc 25%, transparent 25%), linear-gradient(-45deg, #ccc 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #ccc 75%), linear-gradient(-45deg, transparent 75%, #ccc 75%);background-size:8px 8px;background-position:0 0, 0 4px, 4px -4px, -4px 0}.md-color-picker__alpha-track{position:absolute;inset:0;border-radius:inherit}.md-color-picker__hue::before,.md-color-picker__alpha::before{content:'';position:absolute;inset-block:calc((100% - var(--_thumb-size)) / 2);inset-inline:calc(var(--_thumb-size) / -2)}.md-color-picker__hue:focus-visible,.md-color-picker__alpha:focus-visible{outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:4px}.md-color-picker__hue:hover,.md-color-picker__alpha:hover{box-shadow:0 0 0 4px color-mix(in srgb, var(--_on-surface) 8%, transparent)}.md-color-picker__preview{flex-shrink:0;inline-size:40px;block-size:40px;border-radius:50%;background-image:linear-gradient(45deg, #ccc 25%, transparent 25%), linear-gradient(-45deg, #ccc 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #ccc 75%), linear-gradient(-45deg, transparent 75%, #ccc 75%);background-size:8px 8px;background-position:0 0, 0 4px, 4px -4px, -4px 0;border:1px solid var(--_outline);overflow:hidden;transition:transform var(--_spring-duration) var(--_spring-easing)}.md-color-picker__preview-inner{inline-size:100%;block-size:100%;transition:background-color var(--_state-duration) var(--_state-easing)}.md-color-picker__field{display:flex;flex-direction:column;gap:var(--md-sys-spacing-gap-xs, 4px);flex:1;min-inline-size:0}.md-color-picker__field label{font-family:var(--md-sys-typescale-label-small-font-family, Roboto, sans-serif);font-size:var(--md-sys-typescale-label-small-font-size, 11px);font-weight:var(--md-sys-typescale-label-small-font-weight, 500);line-height:var(--md-sys-typescale-label-small-line-height, 16px);letter-spacing:var(--md-sys-typescale-label-small-letter-spacing, 0.5px);color:var(--md-sys-color-on-surface-variant, #49454F);text-transform:uppercase}.md-color-picker__field input{inline-size:100%;padding:var(--md-sys-spacing-inset-sm, 8px) 6px;border:1px solid var(--_outline);border-radius:var(--md-sys-shape-corner-extra-small, 4px);background:var(--md-sys-color-surface-container-lowest, #FFFFFF);color:var(--_on-surface);font:inherit;font-size:13px;font-variant-numeric:tabular-nums;box-sizing:border-box;text-align:center;transition:border-color var(--_state-duration) var(--_state-easing), box-shadow var(--_state-duration) var(--_state-easing)}.md-color-picker__field input:hover:not(:disabled){border-color:var(--_outline-strong)}.md-color-picker__field input:focus-visible{outline:none;border-color:var(--_primary);box-shadow:0 0 0 1px var(--_primary)}.md-color-picker__field input[aria-invalid="true"]{border-color:var(--md-sys-color-error, #B3261E)}.md-color-picker__field input[aria-invalid="true"]:focus-visible{box-shadow:0 0 0 1px var(--md-sys-color-error, #B3261E)}.md-color-picker__field input:disabled{opacity:0.5;cursor:not-allowed}.md-color-picker__field--hex input{text-align:start;font-family:var(--md-sys-typescale-mono-font, ui-monospace, 'SF Mono', Menlo, monospace);letter-spacing:0.05em}.md-color-picker__inputs{display:flex;gap:var(--md-sys-spacing-gap-sm, 8px)}.md-color-picker__presets{display:flex;flex-wrap:wrap;gap:var(--md-sys-spacing-gap-sm, 8px)}.md-color-picker__preset{position:relative;inline-size:var(--_preset-size);block-size:var(--_preset-size);border:1px solid var(--_outline);border-radius:50%;cursor:pointer;padding:0;transition:transform var(--_spring-duration) var(--_spring-easing), box-shadow var(--_spring-duration) var(--_spring-easing)}.md-color-picker__preset:hover:not(:disabled){transform:scale(1.15) rotate(-4deg);box-shadow:var(--md-sys-elevation-1, 0px 1px 2px rgba(0,0,0,0.3))}.md-color-picker__preset:active:not(:disabled){transform:scale(1.05) rotate(0deg)}.md-color-picker__preset:focus-visible{outline:3px solid var(--md-sys-color-secondary, #625B71);outline-offset:3px}.md-color-picker__preset[aria-selected="true"]{box-shadow:0 0 0 2px var(--_surface), 0 0 0 4px var(--_primary), var(--md-sys-elevation-1, 0px 1px 2px rgba(0,0,0,0.3));transform:scale(1.1)}.md-color-picker__preset[aria-selected="true"]:hover:not(:disabled){transform:scale(1.18)}:host(.md-color-picker--disabled) .md-color-picker__plate,:host(.md-color-picker--disabled) .md-color-picker__hue,:host(.md-color-picker--disabled) .md-color-picker__alpha{pointer-events:none;opacity:0.5}@media (prefers-reduced-motion: reduce){.md-color-picker__popover{animation-duration:0.01ms !important}.md-color-picker__preset,.md-color-picker__field input,.md-color-picker__thumb,.md-color-picker__preview,.md-color-picker__hue,.md-color-picker__alpha{transition-duration:0.01ms !important}.md-color-picker__preset:hover:not(:disabled){transform:scale(1.06)}}@media (forced-colors: active){.md-color-picker__field input,.md-color-picker__preset{border:1px solid CanvasText}.md-color-picker__plate,.md-color-picker__hue,.md-color-picker__alpha{forced-color-adjust:none}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const k=class{constructor(r){t(this,r);this.mdInput=e(this,"mdInput",7);this.mdChange=e(this,"mdChange",7);this.mdOpenChange=e(this,"mdOpenChange",7);this.variant="inline";this.value="#6750A4";this.format="hex";this.alpha=false;this.showHex=true;this.showInputs=true;this.disabled=false;this.presets="";this.ariaLabelProp="Color picker";this.open=false;this.dismissOnOutsideClick=false;this.density=0;this.hsva={h:268,s:53,v:64,a:1};this.hexInput="";this.hexInvalid=false;this.hasSlottedTrigger=false;this.pointerDragKind=null;this.uid=`md-color-picker-${Math.random().toString(36).slice(2,7)}`;this.wiredTrigger=null;this.lastEmitted="";this.onSatPointerDown=t=>{if(this.disabled)return;const e=t.currentTarget;e.setPointerCapture(t.pointerId);this.satRect=e.getBoundingClientRect();this.pointerDragKind="sat";this.updateSatFromPoint(t.clientX,t.clientY)};this.onSatPointerMove=t=>{if(this.pointerDragKind!=="sat"||!this.satRect)return;this.updateSatFromPoint(t.clientX,t.clientY)};this.onSatPointerUp=t=>{if(this.pointerDragKind!=="sat")return;const e=t.currentTarget;e.releasePointerCapture?.(t.pointerId);this.pointerDragKind=null;this.emit(true)};this.onSatKeyDown=t=>{if(this.disabled)return;const e=t.shiftKey?10:1;const r=this.isRtl();let{s:i,v:s}=this.hsva;let o=true;switch(t.key){case"ArrowLeft":i+=r?e:-e;break;case"ArrowRight":i+=r?-e:e;break;case"ArrowDown":s-=e;break;case"ArrowUp":s+=e;break;case"Home":i=0;break;case"End":i=100;break;case"PageDown":s=0;break;case"PageUp":s=100;break;default:o=false}if(!o)return;t.preventDefault();this.hsva={...this.hsva,s:Math.max(0,Math.min(100,i)),v:Math.max(0,Math.min(100,s))};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(true)};this.onHuePointerDown=t=>{if(this.disabled)return;const e=t.currentTarget;e.setPointerCapture(t.pointerId);this.hueRect=e.getBoundingClientRect();this.pointerDragKind="hue";this.updateHueFromPoint(t.clientX)};this.onHuePointerMove=t=>{if(this.pointerDragKind!=="hue"||!this.hueRect)return;this.updateHueFromPoint(t.clientX)};this.onHuePointerUp=t=>{if(this.pointerDragKind!=="hue")return;const e=t.currentTarget;e.releasePointerCapture?.(t.pointerId);this.pointerDragKind=null;this.emit(true)};this.onHueKeyDown=t=>{if(this.disabled)return;const e=t.shiftKey?15:1;const r=this.isRtl();let{h:i}=this.hsva;let s=true;switch(t.key){case"ArrowLeft":i+=r?e:-e;break;case"ArrowRight":i+=r?-e:e;break;case"Home":i=0;break;case"End":i=360;break;default:s=false}if(!s)return;t.preventDefault();i=(i%360+360)%360;this.hsva={...this.hsva,h:i};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(true)};this.onAlphaPointerDown=t=>{if(this.disabled)return;const e=t.currentTarget;e.setPointerCapture(t.pointerId);this.alphaRect=e.getBoundingClientRect();this.pointerDragKind="alpha";this.updateAlphaFromPoint(t.clientX)};this.onAlphaPointerMove=t=>{if(this.pointerDragKind!=="alpha"||!this.alphaRect)return;this.updateAlphaFromPoint(t.clientX)};this.onAlphaPointerUp=t=>{if(this.pointerDragKind!=="alpha")return;const e=t.currentTarget;e.releasePointerCapture?.(t.pointerId);this.pointerDragKind=null;this.emit(true)};this.onAlphaKeyDown=t=>{if(this.disabled)return;const e=t.shiftKey?.1:.01;const r=this.isRtl();let{a:i}=this.hsva;let s=true;switch(t.key){case"ArrowLeft":i+=r?e:-e;break;case"ArrowRight":i+=r?-e:e;break;case"Home":i=0;break;case"End":i=1;break;default:s=false}if(!s)return;t.preventDefault();i=Math.max(0,Math.min(1,i));this.hsva={...this.hsva,a:i};this.hexInput=u(this.hsva,true);this.hexInvalid=false;this.emit(true)};this.onHexInput=t=>{const e=t.target.value;this.hexInput=e;const r=b(e.startsWith("#")?e:`#${e}`);if(r){this.hsva=r;this.hexInvalid=false;this.emit(false)}else{this.hexInvalid=true}};this.onHexBlur=()=>{if(this.hexInvalid){this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false}this.emit(true)};this.onRgbChange=(t,e)=>{const r=e.target.value;const i=Math.max(0,Math.min(255,parseInt(r,10)||0));const s=l(this.hsva);this.rgbaFromChannels(t==="r"?i:s.r,t==="g"?i:s.g,t==="b"?i:s.b)};this.onHslChange=(t,e)=>{const r=e.target.value;const i=parseInt(r,10)||0;const s=h(this.hsva);const o=t==="h"?Math.max(0,Math.min(360,i)):s.h;const a=t==="s"?Math.max(0,Math.min(100,i)):s.s;const n=t==="l"?Math.max(0,Math.min(100,i)):s.l;const{r:l,g:c,b:p}=d(o,a,n);this.rgbaFromChannels(l,c,p)};this.onAlphaInputChange=t=>{const e=t.target.value;const r=Math.max(0,Math.min(1,parseFloat(e)||0));this.hsva={...this.hsva,a:r};this.hexInput=u(this.hsva,true);this.emit(true)};this.onPresetClick=t=>{if(this.disabled)return;this.applyValue(t,true);this.emit(true)};this.onPresetKeyDown=(t,e)=>{if(t.key==="Enter"||t.key===" "){t.preventDefault();this.onPresetClick(e)}};this.toggleOpen=()=>{if(this.disabled)return;this.open=!this.open}}componentWillLoad(){this.applyValue(this.value,false);this.computeSlottedTrigger()}componentDidLoad(){this.syncOutsideClickListener();this.wireSlottedTrigger();const t=this.el.shadowRoot?.querySelector('slot[name="trigger"]');t?.addEventListener("slotchange",(()=>{this.computeSlottedTrigger();this.wireSlottedTrigger()}))}computeSlottedTrigger(){this.hasSlottedTrigger=this.el.querySelector('[slot="trigger"]')!==null;if(!this.hasSlottedTrigger&&this.variant==="popover"&&typeof console!=="undefined"){console.warn('[md-color-picker] variant="popover" needs a trigger: slot one into '+'`trigger` (e.g. <md-button slot="trigger">…</md-button>). Without it '+"there is nothing to open the panel.")}}wireSlottedTrigger(){const t=this.el.querySelector('[slot="trigger"]');if(!t||t===this.wiredTrigger){this.syncSlottedTriggerAria();return}this.wiredTrigger?.removeEventListener("click",this.toggleOpen);t.addEventListener("click",this.toggleOpen);this.wiredTrigger=t;this.syncSlottedTriggerAria()}syncSlottedTriggerAria(){const t=this.wiredTrigger;if(!t)return;t.setAttribute("aria-haspopup","dialog");t.setAttribute("aria-expanded",String(this.open))}onValueChange(t){if(t===this.lastEmitted)return;this.applyValue(t,false)}isRtl(){return typeof getComputedStyle==="function"&&getComputedStyle(this.el).direction==="rtl"}horizontalRatio(t,e){const r=e.width;if(r<=0)return 0;return this.isRtl()?(e.right-t)/r:(t-e.left)/r}horizontalGradientTo(){return this.isRtl()?"left":"right"}applyValue(t,e){const r=b(t);if(r){this.hsva=r;this.hexInput=u(r,this.alpha&&r.a<1);this.hexInvalid=false;if(e)this.emit()}else{this.hexInvalid=true}}emit(t=false){const e=v(this.hsva,this.format);if(e!==this.value){this.lastEmitted=e;this.value=e;this.mdInput.emit({value:e});if(t)this.mdChange.emit({value:e})}else if(t){this.mdChange.emit({value:e})}}updateSatFromPoint(t,e){if(!this.satRect)return;const r=this.horizontalRatio(t,this.satRect);const i=e-this.satRect.top;const s=Math.max(0,Math.min(100,r*100));const o=Math.max(0,Math.min(100,100-i/this.satRect.height*100));this.hsva={...this.hsva,s,v:o};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(false)}updateHueFromPoint(t){if(!this.hueRect)return;const e=Math.max(0,Math.min(1,this.horizontalRatio(t,this.hueRect)));const r=e*360;this.hsva={...this.hsva,h:r};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(false)}updateAlphaFromPoint(t){if(!this.alphaRect)return;const e=Math.max(0,Math.min(1,this.horizontalRatio(t,this.alphaRect)));this.hsva={...this.hsva,a:e};this.hexInput=u(this.hsva,true);this.hexInvalid=false;this.emit(false)}rgbaFromChannels(t,e,r){const i=`#${[t,e,r].map((t=>t.toString(16).padStart(2,"0"))).join("")}`;const s=b(i);if(s){this.hsva={...s,a:this.hsva.a};this.hexInput=u(this.hsva,this.alpha&&this.hsva.a<1);this.hexInvalid=false;this.emit(true)}}get parsedPresets(){const t=Array.isArray(this.presets)?this.presets:String(this.presets??"").split(",");return t.map((t=>String(t).trim())).filter(Boolean)}async show(){if(this.variant!=="popover"||this.disabled)return;this.open=true}async close(){if(this.variant!=="popover")return;this.open=false}onOpenChange(t){this.mdOpenChange.emit({open:t});this.syncOutsideClickListener();this.syncSlottedTriggerAria()}onVariantChange(){this.syncOutsideClickListener()}onDismissOnOutsideClickChange(){this.syncOutsideClickListener()}onDisabledChange(){this.syncOutsideClickListener()}disconnectedCallback(){this.removeOutsideClickHandler();this.wiredTrigger?.removeEventListener("click",this.toggleOpen);this.wiredTrigger=null}syncOutsideClickListener(){this.removeOutsideClickHandler();if(this.variant!=="popover"||!this.open||!this.dismissOnOutsideClick||this.disabled||typeof document==="undefined"){return}requestAnimationFrame((()=>{if(this.variant!=="popover"||!this.open||!this.dismissOnOutsideClick||this.disabled){return}this.attachOutsideClickHandler()}))}attachOutsideClickHandler(){this.outsideClickHandler=t=>{if(this.disabled||!this.open)return;const e=t.composedPath?t.composedPath():[];if(e.includes(this.el))return;const r=t.target;if(r&&this.el.contains(r))return;this.open=false};document.addEventListener("mousedown",this.outsideClickHandler,true)}removeOutsideClickHandler(){if(this.outsideClickHandler&&typeof document!=="undefined"){document.removeEventListener("mousedown",this.outsideClickHandler,true)}this.outsideClickHandler=undefined}onGlobalKeyDown(t){if(this.variant==="popover"&&this.open&&t.key==="Escape"){t.preventDefault();this.open=false}}renderSaturationPlate(){const t=this.hsva.h;const e=this.hsva.s;const i=this.hsva.v;const s=l({h:t,s:100,v:100,a:1});const o=`rgb(${s.r}, ${s.g}, ${s.b})`;return r("div",{class:"md-color-picker__plate",part:"plate",role:"application",tabindex:this.disabled?-1:0,"aria-label":"Saturation and brightness",style:{background:o},onPointerDown:this.onSatPointerDown,onPointerMove:this.onSatPointerMove,onPointerUp:this.onSatPointerUp,onPointerCancel:this.onSatPointerUp,onKeyDown:this.onSatKeyDown},r("div",{class:"md-color-picker__plate-saturation","aria-hidden":"true"}),r("div",{class:"md-color-picker__plate-value","aria-hidden":"true"}),r("div",{class:"md-color-picker__thumb",part:"thumb",style:{insetInlineStart:`${e}%`,insetBlockStart:`${100-i}%`,backgroundColor:u(this.hsva,false)}}))}renderHueSlider(){const t=this.hsva.h;const e=t/360;return r("div",{class:"md-color-picker__hue",part:"hue",role:"slider","aria-label":"Hue","aria-valuemin":"0","aria-valuemax":"360","aria-valuenow":Math.round(t),"aria-orientation":"horizontal","aria-disabled":this.disabled?"true":undefined,tabindex:this.disabled?-1:0,onPointerDown:this.onHuePointerDown,onPointerMove:this.onHuePointerMove,onPointerUp:this.onHuePointerUp,onPointerCancel:this.onHuePointerUp,onKeyDown:this.onHueKeyDown},r("div",{class:"md-color-picker__thumb md-color-picker__thumb--slider",style:{insetInlineStart:`${e*100}%`,backgroundColor:u({h:t,s:100,v:100,a:1},false)}}))}renderAlphaSlider(){if(!this.alpha)return null;const t=this.hsva.a;const e=l({...this.hsva,a:1});const i=`linear-gradient(to ${this.horizontalGradientTo()}, rgba(${e.r}, ${e.g}, ${e.b}, 0), rgba(${e.r}, ${e.g}, ${e.b}, 1))`;return r("div",{class:"md-color-picker__alpha",part:"alpha",role:"slider","aria-label":"Opacity","aria-valuemin":"0","aria-valuemax":"1","aria-valuenow":+t.toFixed(2),"aria-orientation":"horizontal","aria-disabled":this.disabled?"true":undefined,tabindex:this.disabled?-1:0,onPointerDown:this.onAlphaPointerDown,onPointerMove:this.onAlphaPointerMove,onPointerUp:this.onAlphaPointerUp,onPointerCancel:this.onAlphaPointerUp,onKeyDown:this.onAlphaKeyDown},r("div",{class:"md-color-picker__alpha-track",style:{backgroundImage:i}}),r("div",{class:"md-color-picker__thumb md-color-picker__thumb--slider",style:{insetInlineStart:`${t*100}%`,backgroundColor:u(this.hsva,true)}}))}renderHexInput(){if(!this.showHex)return null;return r("div",{class:"md-color-picker__field md-color-picker__field--hex",part:"field-hex"},r("label",{part:"label",htmlFor:`${this.uid}-hex`},"Hex"),r("input",{id:`${this.uid}-hex`,type:"text",value:this.hexInput,spellcheck:false,autoComplete:"off","aria-invalid":this.hexInvalid?"true":undefined,disabled:this.disabled,onInput:this.onHexInput,onBlur:this.onHexBlur,onKeyDown:t=>{if(t.key==="Enter"){t.target.blur()}}}))}renderAlphaField(){if(!this.alpha)return null;return r("div",{class:"md-color-picker__field",part:"field-a"},r("label",{htmlFor:`${this.uid}-a`},"A"),r("input",{id:`${this.uid}-a`,type:"number",min:"0",max:"1",step:"0.01",value:+this.hsva.a.toFixed(2),disabled:this.disabled,onChange:this.onAlphaInputChange}))}renderRgbInputs(){const t=l(this.hsva);return r("div",{class:"md-color-picker__inputs",part:"inputs"},r("div",{class:"md-color-picker__field",part:"field-r"},r("label",{htmlFor:`${this.uid}-r`},"R"),r("input",{id:`${this.uid}-r`,type:"number",min:"0",max:"255",step:"1",value:t.r,disabled:this.disabled,onChange:t=>this.onRgbChange("r",t)})),r("div",{class:"md-color-picker__field",part:"field-g"},r("label",{htmlFor:`${this.uid}-g`},"G"),r("input",{id:`${this.uid}-g`,type:"number",min:"0",max:"255",step:"1",value:t.g,disabled:this.disabled,onChange:t=>this.onRgbChange("g",t)})),r("div",{class:"md-color-picker__field",part:"field-b"},r("label",{htmlFor:`${this.uid}-b`},"B"),r("input",{id:`${this.uid}-b`,type:"number",min:"0",max:"255",step:"1",value:t.b,disabled:this.disabled,onChange:t=>this.onRgbChange("b",t)})),this.renderAlphaField())}renderHslInputs(){const t=h(this.hsva);return r("div",{class:"md-color-picker__inputs",part:"inputs"},r("div",{class:"md-color-picker__field",part:"field-h"},r("label",{htmlFor:`${this.uid}-h`},"H"),r("input",{id:`${this.uid}-h`,type:"number",min:"0",max:"360",step:"1",value:Math.round(t.h),disabled:this.disabled,onChange:t=>this.onHslChange("h",t)})),r("div",{class:"md-color-picker__field",part:"field-s"},r("label",{htmlFor:`${this.uid}-s`},"S"),r("input",{id:`${this.uid}-s`,type:"number",min:"0",max:"100",step:"1",value:Math.round(t.s),disabled:this.disabled,onChange:t=>this.onHslChange("s",t)})),r("div",{class:"md-color-picker__field",part:"field-l"},r("label",{htmlFor:`${this.uid}-l`},"L"),r("input",{id:`${this.uid}-l`,type:"number",min:"0",max:"100",step:"1",value:Math.round(t.l),disabled:this.disabled,onChange:t=>this.onHslChange("l",t)})),this.renderAlphaField())}renderChannelInputs(){if(!this.showInputs)return null;if(this.format==="hsl")return this.renderHslInputs();return this.renderRgbInputs()}renderPresets(){const t=this.parsedPresets;if(t.length===0)return null;return r("div",{class:"md-color-picker__presets",part:"presets",role:"listbox","aria-label":"Color presets"},t.map((t=>r("button",{key:t,type:"button",class:"md-color-picker__preset",part:"preset",role:"option","aria-label":t,"aria-selected":u(this.hsva,false).toLowerCase()===t.toLowerCase()?"true":"false",style:{backgroundColor:t},disabled:this.disabled,onClick:()=>this.onPresetClick(t),onKeyDown:e=>this.onPresetKeyDown(e,t)}))))}renderPanel(){return r("div",{class:"md-color-picker__panel",part:"panel"},this.renderSaturationPlate(),r("div",{class:"md-color-picker__sliders",part:"sliders"},r("div",{class:"md-color-picker__sliders-stack"},this.renderHueSlider(),this.renderAlphaSlider()),r("div",{class:"md-color-picker__preview",part:"preview",role:"img","aria-label":`Current colour ${v(this.hsva,this.format)}`},r("div",{class:"md-color-picker__preview-inner",style:{backgroundColor:u(this.hsva,true)}}))),this.renderHexInput(),this.renderChannelInputs(),this.renderPresets())}render(){u(this.hsva,true);if(this.variant==="popover"){return r(i,{class:{"md-color-picker":true,"md-color-picker--popover":true,"md-color-picker--open":this.open,"md-color-picker--disabled":this.disabled},"aria-label":this.ariaLabelProp},r("slot",{name:"trigger"}),this.open&&r("div",{class:"md-color-picker__popover",part:"popover",role:"dialog","aria-label":this.ariaLabelProp},this.renderPanel()))}return r(i,{class:{"md-color-picker":true,"md-color-picker--inline":true,"md-color-picker--disabled":this.disabled},role:"group","aria-label":this.ariaLabelProp},this.renderPanel())}get el(){return s(this)}static get watchers(){return{value:[{onValueChange:0}],open:[{onOpenChange:0}],variant:[{onVariantChange:0}],dismissOnOutsideClick:[{onDismissOnOutsideClickChange:0}],disabled:[{onDisabledChange:0}]}}};k.style=g();export{k as md_color_picker};
2
+ //# sourceMappingURL=p-501bf161.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as a,c as e,h as o,H as s,a as i}from"./p-DTaX19_O.js";import{t}from"./p-DYBUr7K_.js";const r=()=>`:host{--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary-container));--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px));--_container-elevation:var(--md-sys-elevation-3);--_state-layer-color:var(--_icon-color);--_morph-spatial-duration:var(--md-sys-motion-spring-spatial-default-duration, 500ms);--_morph-spatial-easing:var( --md-sys-motion-spring-spatial-default-easing, cubic-bezier(0.38, 1.21, 0.22, 1) );--_morph-effects-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_morph-effects-easing:var( --md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.8, 0.34, 1) );display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:pointer;user-select:none;border:none;outline:none;box-sizing:border-box;background-color:var(--_container-color);color:var(--_icon-color);border-radius:var(--_container-shape);box-shadow:var(--_container-elevation);transition:box-shadow 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)), background-color 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)), border-radius var(--md-sys-motion-duration-short4, 200ms) var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), color var(--md-sys-motion-duration-short4, 200ms) var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), min-width var(--_morph-spatial-duration) var(--_morph-spatial-easing), padding-inline-start var(--_morph-spatial-duration) var(--_morph-spatial-easing), padding-inline-end var(--_morph-spatial-duration) var(--_morph-spatial-easing);-webkit-tap-highlight-color:transparent;vertical-align:middle}:host(:not([data-ready])),:host(:not([data-ready])) .md-fab__label{transition:none}:host([data-shape="circle"]){border-radius:50%}:host(.md-fab--standard){--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));width:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px));height:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--medium){--_icon-size:var(--md-fab-icon-size, max(21px, calc(28px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-extra-large, 28px));width:max(64px, calc(80px + var(--md-sys-density-scale, 0) * 4px));height:max(64px, calc(80px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--large){--_icon-size:var(--md-fab-icon-size, max(27px, calc(36px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-extra-large, 28px));width:max(80px, calc(96px + var(--md-sys-density-scale, 0) * 4px));height:max(80px, calc(96px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--extended),:host(.md-fab--collapsed){--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));height:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px));width:auto;padding-inline:max(12px, calc(20px + var(--md-sys-density-scale, 0) * 2px));font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);font-size:max(11px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-large-font-weight, 500);letter-spacing:var(--md-sys-typescale-label-large-letter-spacing, 0.1px);line-height:var(--md-sys-typescale-label-large-line-height, 20px)}:host(.md-fab--extended){min-width:80px}:host(.md-fab--extended.md-fab--with-icon){padding-inline:var(--md-sys-spacing-inset-lg, 16px) 20px}:host(.md-fab--collapsed){min-width:56px}:host(.md-fab--collapsed.md-fab--with-icon){padding-inline:var(--md-sys-spacing-inset-lg, 16px)}:host(.md-fab--surface){--_container-color:var(--md-fab-container-color, var(--md-sys-color-surface-container-high));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-primary))}:host(.md-fab--surface.md-fab--lowered){--_container-color:var(--md-fab-container-color, var(--md-sys-color-surface-container-low))}:host(.md-fab--primary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary-container))}:host(.md-fab--secondary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-secondary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-secondary-container))}:host(.md-fab--tertiary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-tertiary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-tertiary-container))}:host(.md-fab--primary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary))}:host(.md-fab--secondary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-secondary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-secondary))}:host(.md-fab--tertiary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-tertiary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-tertiary))}:host(.md-fab--lowered){--_container-elevation:var(--md-sys-elevation-1)}:host(.md-fab--lowered:hover){--_container-elevation:var(--md-sys-elevation-2)}:host(.md-fab--lowered:focus-visible){--_container-elevation:var(--md-sys-elevation-1)}:host(.md-fab--lowered:active){--_container-elevation:var(--md-sys-elevation-1)}:host(:hover){--_container-elevation:var(--md-sys-elevation-4)}:host(:focus-visible){--_container-elevation:var(--md-sys-elevation-3)}:host(:active){--_container-elevation:var(--md-sys-elevation-3)}.md-fab__state-layer{position:absolute;inset:0;border-radius:inherit;background-color:var(--_state-layer-color);opacity:0;transition:opacity 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));pointer-events:none}:host(:hover) .md-fab__state-layer{opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08)}:host(:focus-visible) .md-fab__state-layer{opacity:var(--md-sys-state-focus-state-layer-opacity, 0.10)}:host(:active) .md-fab__state-layer{opacity:var(--md-sys-state-pressed-state-layer-opacity, 0.10)}:host(:focus-visible){outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}:host(.md-fab--disabled){cursor:default;pointer-events:none;--_container-elevation:var(--md-sys-elevation-0, none) !important;--_container-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_icon-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent)}:host([soft-disabled]){cursor:default;pointer-events:auto}:host([soft-disabled]) .md-fab__state-layer{display:none}:host(.md-fab--disabled:hover) .md-fab__state-layer,:host(.md-fab--disabled:active) .md-fab__state-layer,:host(.md-fab--disabled:focus-visible) .md-fab__state-layer{opacity:0}.md-fab__icon{color:var(--md-fab-icon-color, inherit);font-size:var(--_icon-size, 24px);width:var(--_icon-size, 24px);height:var(--_icon-size, 24px);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), transform 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1))}:host([data-icon-morphing]) .md-fab__icon{opacity:0;transform:rotate(-90deg) scale(0.6)}slot[name="icon"]{display:contents}::slotted([slot="icon"]){color:var(--md-fab-icon-color, inherit);width:var(--_icon-size, 24px);height:var(--_icon-size, 24px);display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;transition:opacity 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), transform 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1))}:host([data-icon-morphing]) ::slotted([slot="icon"]){opacity:0;transform:rotate(-90deg) scale(0.6)}.md-fab__label{color:var(--md-fab-label-color, inherit);display:flex;align-items:center;white-space:nowrap;overflow:hidden;max-inline-size:var(--_fab-label-w, 240px);opacity:1;transition:max-inline-size var(--_morph-spatial-duration) var(--_morph-spatial-easing), margin-inline-start var(--_morph-spatial-duration) var(--_morph-spatial-easing), opacity var(--_morph-effects-duration) var(--_morph-effects-easing)}:host(.md-fab--with-icon) .md-fab__label{margin-inline-start:var(--md-sys-spacing-inset-md, 12px)}:host(.md-fab--collapsed) .md-fab__label{max-inline-size:0;margin-inline-start:0;opacity:0}.material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-weight:normal;font-style:normal;font-size:var(--_icon-size, 24px);line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;overflow-wrap:normal;direction:ltr;font-feature-settings:'liga';-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion: reduce){:host{transition:none}.md-fab__state-layer{transition:none}}@media (forced-colors: active){:host{border:1px solid ButtonText;background-color:ButtonFace;color:ButtonText;forced-color-adjust:none}:host(:focus-visible){outline-color:Highlight}:host(.md-fab--disabled){border-color:GrayText;color:GrayText;opacity:1}.md-fab__state-layer{display:none}.md-fab__icon,.md-fab__label{color:inherit}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const n=class{constructor(o){a(this,o);this.mdClick=e(this,"mdClick",7);this.variant="primary-container";this.size="standard";this.disabled=false;this.softDisabled=false;this.lowered=false;this.ripple=true;this.icon="";this.label="";this.density=0;this.hasSlottedIcon=false;this.authoredAccessibleName=false;this.handleClick=a=>{if(this.isDisabled){a.preventDefault();return}this.mdClick.emit(a)};this.handleKeyDown=a=>{if(a.key==="Enter"||a.key===" "){a.preventDefault();if(!this.isDisabled){t(this.el);this.el.click()}}}}get isDisabled(){return this.disabled||this.softDisabled}componentWillLoad(){this.authoredAccessibleName=this.el.hasAttribute("aria-label")||this.el.hasAttribute("aria-labelledby");this.hasSlottedIcon=Array.from(this.el.children).some((a=>a.getAttribute("slot")==="icon"))}componentDidLoad(){const a=this.el.shadowRoot;if(!a)return;const e=a.querySelector('slot[name="icon"]');e?.addEventListener("slotchange",(()=>{this.hasSlottedIcon=e.assignedElements().length>0}));this.measureLabel();requestAnimationFrame((()=>{this.measureLabel();this.el.setAttribute("data-ready","")}));if(typeof document!=="undefined"&&"fonts"in document){document.fonts.ready.then((()=>this.measureLabel()))}if(typeof window!=="undefined"&&window.__STENCIL_DEV_MODE__!==false){this.warnMissingAccessibleName()}}componentDidRender(){this.measureLabel()}onLabelChange(){this.measureLabel()}measureLabel(){const a=this.el.shadowRoot?.querySelector(".md-fab__label");if(a&&a.scrollWidth>0){this.el.style.setProperty("--_fab-label-w",`${a.scrollWidth}px`)}}warnMissingAccessibleName(){if(!this.authoredAccessibleName&&!this.label){console.warn(`[md-fab] WCAG 1.1.1: Icon-only FAB is missing an accessible name. `+`Add aria-label or aria-labelledby to <${this.el.tagName.toLowerCase()}>.`,this.el)}}render(){const a=this.isDisabled;const e=!!this.label;const i=this.extended===undefined?e:this.extended;const t=!!this.icon;const r=this.authoredAccessibleName;return o(s,{key:"9f38d5a63ee3ff8d86b361e83917091a3550a415",class:{"md-fab":true,[`md-fab--${this.variant}`]:true,[`md-fab--${this.size}`]:!e,"md-fab--extended":e&&i,"md-fab--collapsed":e&&!i,"md-fab--with-icon":t||this.hasSlottedIcon,"md-fab--lowered":this.lowered,"md-fab--disabled":this.disabled||this.softDisabled},role:"button","aria-label":e&&!r?this.label:undefined,"aria-disabled":a?"true":"false",tabindex:this.disabled?"-1":"0",onClick:this.handleClick,onKeyDown:this.handleKeyDown},this.ripple&&o("md-ripple",{key:"5a0114263fe2817f3b7466fc4ec757403e31c203",disabled:a}),o("span",{key:"d4a45e41c4982d48212672e1ae87a3721edaf9b7",class:"md-fab__state-layer",part:"state-layer","aria-hidden":"true"}),o("slot",{key:"dddb0c1469a57e06af7fc9eea94f4acc5a9f5cf8",name:"icon"},t&&o("span",{key:"47d5415adbdfd8629f6efe67c799a59058496f7e",class:"md-fab__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon)),e&&o("span",{key:"b2cf917ff3886b0adfb909ecde641fc1bd0ce1fd",class:"md-fab__label",part:"label","aria-hidden":!i?"true":undefined},this.label))}get el(){return i(this)}static get watchers(){return{label:[{onLabelChange:0}]}}};n.style=r();export{n as md_fab};
2
- //# sourceMappingURL=p-81843ff7.entry.js.map
1
+ import{r as a,c as e,h as o,H as s,g as i}from"./p-WmvQpZnM.js";import{t}from"./p-DYBUr7K_.js";const r=()=>`:host{--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary-container));--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-large, 16px));--_container-elevation:var(--md-sys-elevation-3);--_state-layer-color:var(--_icon-color);--_morph-spatial-duration:var(--md-sys-motion-spring-spatial-default-duration, 500ms);--_morph-spatial-easing:var( --md-sys-motion-spring-spatial-default-easing, cubic-bezier(0.38, 1.21, 0.22, 1) );--_morph-effects-duration:var(--md-sys-motion-spring-effects-default-duration, 200ms);--_morph-effects-easing:var( --md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.8, 0.34, 1) );display:inline-flex;align-items:center;justify-content:center;position:relative;overflow:hidden;cursor:pointer;user-select:none;border:none;outline:none;box-sizing:border-box;background-color:var(--_container-color);color:var(--_icon-color);border-radius:var(--_container-shape);box-shadow:var(--_container-elevation);transition:box-shadow 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)), background-color 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1)), border-radius var(--md-sys-motion-duration-short4, 200ms) var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), color var(--md-sys-motion-duration-short4, 200ms) var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), min-width var(--_morph-spatial-duration) var(--_morph-spatial-easing), padding-inline-start var(--_morph-spatial-duration) var(--_morph-spatial-easing), padding-inline-end var(--_morph-spatial-duration) var(--_morph-spatial-easing);-webkit-tap-highlight-color:transparent;vertical-align:middle}:host(:not([data-ready])),:host(:not([data-ready])) .md-fab__label{transition:none}:host([data-shape="circle"]){border-radius:50%}:host(.md-fab--standard){--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));width:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px));height:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--medium){--_icon-size:var(--md-fab-icon-size, max(21px, calc(28px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-extra-large, 28px));width:max(64px, calc(80px + var(--md-sys-density-scale, 0) * 4px));height:max(64px, calc(80px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--large){--_icon-size:var(--md-fab-icon-size, max(27px, calc(36px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-container-shape, var(--md-sys-shape-corner-extra-large, 28px));width:max(80px, calc(96px + var(--md-sys-density-scale, 0) * 4px));height:max(80px, calc(96px + var(--md-sys-density-scale, 0) * 4px))}:host(.md-fab--extended),:host(.md-fab--collapsed){--_icon-size:var(--md-fab-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));height:max(40px, calc(56px + var(--md-sys-density-scale, 0) * 4px));width:auto;padding-inline:max(12px, calc(20px + var(--md-sys-density-scale, 0) * 2px));font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);font-size:max(11px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-large-font-weight, 500);letter-spacing:var(--md-sys-typescale-label-large-letter-spacing, 0.1px);line-height:var(--md-sys-typescale-label-large-line-height, 20px)}:host(.md-fab--extended){min-width:80px}:host(.md-fab--extended.md-fab--with-icon){padding-inline:var(--md-sys-spacing-inset-lg, 16px) 20px}:host(.md-fab--collapsed){min-width:56px}:host(.md-fab--collapsed.md-fab--with-icon){padding-inline:var(--md-sys-spacing-inset-lg, 16px)}:host(.md-fab--surface){--_container-color:var(--md-fab-container-color, var(--md-sys-color-surface-container-high));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-primary))}:host(.md-fab--surface.md-fab--lowered){--_container-color:var(--md-fab-container-color, var(--md-sys-color-surface-container-low))}:host(.md-fab--primary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary-container))}:host(.md-fab--secondary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-secondary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-secondary-container))}:host(.md-fab--tertiary-container){--_container-color:var(--md-fab-container-color, var(--md-sys-color-tertiary-container));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-tertiary-container))}:host(.md-fab--primary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-primary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-primary))}:host(.md-fab--secondary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-secondary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-secondary))}:host(.md-fab--tertiary){--_container-color:var(--md-fab-container-color, var(--md-sys-color-tertiary));--_icon-color:var(--md-fab-icon-color, var(--md-sys-color-on-tertiary))}:host(.md-fab--lowered){--_container-elevation:var(--md-sys-elevation-1)}:host(.md-fab--lowered:hover){--_container-elevation:var(--md-sys-elevation-2)}:host(.md-fab--lowered:focus-visible){--_container-elevation:var(--md-sys-elevation-1)}:host(.md-fab--lowered:active){--_container-elevation:var(--md-sys-elevation-1)}:host(:hover){--_container-elevation:var(--md-sys-elevation-4)}:host(:focus-visible){--_container-elevation:var(--md-sys-elevation-3)}:host(:active){--_container-elevation:var(--md-sys-elevation-3)}.md-fab__state-layer{position:absolute;inset:0;border-radius:inherit;background-color:var(--_state-layer-color);opacity:0;transition:opacity 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));pointer-events:none}:host(:hover) .md-fab__state-layer{opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08)}:host(:focus-visible) .md-fab__state-layer{opacity:var(--md-sys-state-focus-state-layer-opacity, 0.10)}:host(:active) .md-fab__state-layer{opacity:var(--md-sys-state-pressed-state-layer-opacity, 0.10)}:host(:focus-visible){outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}:host(.md-fab--disabled){cursor:default;pointer-events:none;--_container-elevation:var(--md-sys-elevation-0, none) !important;--_container-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_icon-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent)}:host([soft-disabled]){cursor:default;pointer-events:auto}:host([soft-disabled]) .md-fab__state-layer{display:none}:host(.md-fab--disabled:hover) .md-fab__state-layer,:host(.md-fab--disabled:active) .md-fab__state-layer,:host(.md-fab--disabled:focus-visible) .md-fab__state-layer{opacity:0}.md-fab__icon{color:var(--md-fab-icon-color, inherit);font-size:var(--_icon-size, 24px);width:var(--_icon-size, 24px);height:var(--_icon-size, 24px);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), transform 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1))}:host([data-icon-morphing]) .md-fab__icon{opacity:0;transform:rotate(-90deg) scale(0.6)}slot[name="icon"]{display:contents}::slotted([slot="icon"]){color:var(--md-fab-icon-color, inherit);width:var(--_icon-size, 24px);height:var(--_icon-size, 24px);display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;transition:opacity 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1)), transform 120ms var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1))}:host([data-icon-morphing]) ::slotted([slot="icon"]){opacity:0;transform:rotate(-90deg) scale(0.6)}.md-fab__label{color:var(--md-fab-label-color, inherit);display:flex;align-items:center;white-space:nowrap;overflow:hidden;max-inline-size:var(--_fab-label-w, 240px);opacity:1;transition:max-inline-size var(--_morph-spatial-duration) var(--_morph-spatial-easing), margin-inline-start var(--_morph-spatial-duration) var(--_morph-spatial-easing), opacity var(--_morph-effects-duration) var(--_morph-effects-easing)}:host(.md-fab--with-icon) .md-fab__label{margin-inline-start:var(--md-sys-spacing-inset-md, 12px)}:host(.md-fab--collapsed) .md-fab__label{max-inline-size:0;margin-inline-start:0;opacity:0}.material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-weight:normal;font-style:normal;font-size:var(--_icon-size, 24px);line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;overflow-wrap:normal;direction:ltr;font-feature-settings:'liga';-webkit-font-smoothing:antialiased}@media (prefers-reduced-motion: reduce){:host{transition:none}.md-fab__state-layer{transition:none}}@media (forced-colors: active){:host{border:1px solid ButtonText;background-color:ButtonFace;color:ButtonText;forced-color-adjust:none}:host(:focus-visible){outline-color:Highlight}:host(.md-fab--disabled){border-color:GrayText;color:GrayText;opacity:1}.md-fab__state-layer{display:none}.md-fab__icon,.md-fab__label{color:inherit}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}`;const n=class{constructor(o){a(this,o);this.mdClick=e(this,"mdClick",7);this.variant="primary-container";this.size="standard";this.disabled=false;this.softDisabled=false;this.lowered=false;this.ripple=true;this.icon="";this.label="";this.density=0;this.hasSlottedIcon=false;this.authoredAccessibleName=false;this.handleClick=a=>{if(this.isDisabled){a.preventDefault();return}this.mdClick.emit(a)};this.handleKeyDown=a=>{if(a.key==="Enter"||a.key===" "){a.preventDefault();if(!this.isDisabled){t(this.el);this.el.click()}}}}get isDisabled(){return this.disabled||this.softDisabled}componentWillLoad(){this.authoredAccessibleName=this.el.hasAttribute("aria-label")||this.el.hasAttribute("aria-labelledby");this.hasSlottedIcon=Array.from(this.el.children).some((a=>a.getAttribute("slot")==="icon"))}componentDidLoad(){const a=this.el.shadowRoot;if(!a)return;const e=a.querySelector('slot[name="icon"]');e?.addEventListener("slotchange",(()=>{this.hasSlottedIcon=e.assignedElements().length>0}));this.measureLabel();requestAnimationFrame((()=>{this.measureLabel();this.el.setAttribute("data-ready","")}));if(typeof document!=="undefined"&&"fonts"in document){document.fonts.ready.then((()=>this.measureLabel()))}if(typeof window!=="undefined"&&window.__STENCIL_DEV_MODE__!==false){this.warnMissingAccessibleName()}}componentDidRender(){this.measureLabel()}onLabelChange(){this.measureLabel()}measureLabel(){const a=this.el.shadowRoot?.querySelector(".md-fab__label");if(a&&a.scrollWidth>0){this.el.style.setProperty("--_fab-label-w",`${a.scrollWidth}px`)}}warnMissingAccessibleName(){if(!this.authoredAccessibleName&&!this.label){console.warn(`[md-fab] WCAG 1.1.1: Icon-only FAB is missing an accessible name. `+`Add aria-label or aria-labelledby to <${this.el.tagName.toLowerCase()}>.`,this.el)}}render(){const a=this.isDisabled;const e=!!this.label;const i=this.extended===undefined?e:this.extended;const t=!!this.icon;const r=this.authoredAccessibleName;return o(s,{key:"9f38d5a63ee3ff8d86b361e83917091a3550a415",class:{"md-fab":true,[`md-fab--${this.variant}`]:true,[`md-fab--${this.size}`]:!e,"md-fab--extended":e&&i,"md-fab--collapsed":e&&!i,"md-fab--with-icon":t||this.hasSlottedIcon,"md-fab--lowered":this.lowered,"md-fab--disabled":this.disabled||this.softDisabled},role:"button","aria-label":e&&!r?this.label:undefined,"aria-disabled":a?"true":"false",tabindex:this.disabled?"-1":"0",onClick:this.handleClick,onKeyDown:this.handleKeyDown},this.ripple&&o("md-ripple",{key:"5a0114263fe2817f3b7466fc4ec757403e31c203",disabled:a}),o("span",{key:"d4a45e41c4982d48212672e1ae87a3721edaf9b7",class:"md-fab__state-layer",part:"state-layer","aria-hidden":"true"}),o("slot",{key:"dddb0c1469a57e06af7fc9eea94f4acc5a9f5cf8",name:"icon"},t&&o("span",{key:"47d5415adbdfd8629f6efe67c799a59058496f7e",class:"md-fab__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon)),e&&o("span",{key:"b2cf917ff3886b0adfb909ecde641fc1bd0ce1fd",class:"md-fab__label",part:"label","aria-hidden":!i?"true":undefined},this.label))}get el(){return i(this)}static get watchers(){return{label:[{onLabelChange:0}]}}};n.style=r();export{n as md_fab};
2
+ //# sourceMappingURL=p-5929e59c.entry.js.map