@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,2 +1,2 @@
1
- import{r as t,c as i,h as e,H as a,a as s}from"./p-DTaX19_O.js";const r=()=>`:host{--_container-color:var( --md-navigation-bar-container-color, var(--md-sys-color-surface-container, #F3EDF7) );--_container-height:var(--md-navigation-bar-container-height, 64px);--_container-shape:var(--md-navigation-bar-container-shape, 0);--_container-elevation:var(--md-navigation-bar-container-elevation, none);--_divider-color:var(--md-navigation-bar-divider-color, transparent);--_divider-width:var(--md-navigation-bar-divider-width, 0);--_z-index:var(--md-navigation-bar-z-index, var(--md-sys-z-index-navigation, 200));display:block;inline-size:100%;box-sizing:border-box;background-color:var(--_container-color);border-radius:var(--_container-shape);border-block-start:var(--_divider-width) solid var(--_divider-color);box-shadow:var(--_container-elevation);color:var(--md-sys-color-on-surface, #1C1B1F);z-index:var(--_z-index);position:relative}.md-navigation-bar__container{display:flex;flex-direction:row;align-items:stretch;justify-content:space-around;inline-size:100%;min-block-size:max(48px, calc(var(--_container-height) + var(--md-sys-density-scale, 0) * 4px));block-size:max(48px, calc(var(--_container-height) + var(--md-sys-density-scale, 0) * 4px));box-sizing:border-box}::slotted(md-navigation-tab){flex:1 1 0;min-inline-size:64px}@media (forced-colors: active){:host{--_container-color:Canvas;--_divider-color:CanvasText;--_divider-width:1px}}: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(e){t(this,e);this.mdChange=i(this,"mdChange",7);this.activeIndex=0;this.labelBehavior="always";this.manualActivation=false;this.density=0;this.tabs=[];this.previousIndex=-1}componentDidLoad(){this.syncTabs();this.applyActiveState(this.activeIndex,false);this.previousIndex=this.activeIndex}disconnectedCallback(){this.slotObserver?.disconnect()}onActiveIndexChange(t,i){const e=this.clampToEnabled(t);if(e!==t){this.activeIndex=e;return}this.applyActiveState(e,true,i)}onLabelBehaviorChange(){this.tabs.forEach((t=>this.propagateLabelBehavior(t)))}async select(t){const i=this.clampToEnabled(t);if(i===this.activeIndex)return;this.activeIndex=i}async focusTab(t){const i=this.tabs[t];if(!i||this.isHardDisabled(i))return;i.focus()}syncTabs(){const t=this.el.shadowRoot;if(!t)return;const i=t.querySelector("slot");if(!i)return;this.tabs=i.assignedElements().filter((t=>t.tagName==="MD-NAVIGATION-TAB"));if(this.tabs.length>0){this.el.setAttribute("data-tab-count",String(this.tabs.length))}else{this.el.removeAttribute("data-tab-count")}this.tabs.forEach((t=>this.propagateLabelBehavior(t)));this.applyActiveState(this.activeIndex,false)}propagateLabelBehavior(t){if(!t.hasAttribute("label-behavior")){t.labelBehavior=this.labelBehavior;t.setAttribute("data-md-inherited-label-behavior",this.labelBehavior)}}isDisabled(t){return t.hasAttribute("disabled")||t.getAttribute("aria-disabled")==="true"}isHardDisabled(t){return t.hasAttribute("disabled")}clampToEnabled(t){if(this.tabs.length===0)return-1;const i=Math.max(0,Math.min(t,this.tabs.length-1));if(!this.isDisabled(this.tabs[i]))return i;for(let t=i+1;t<this.tabs.length;t++){if(!this.isDisabled(this.tabs[t]))return t}for(let t=i-1;t>=0;t--){if(!this.isDisabled(this.tabs[t]))return t}return-1}applyActiveState(t,i,e){this.tabs.forEach(((i,e)=>{if(e===t){if(!i.hasAttribute("active"))i.setAttribute("active","");i.setAttribute("tabindex","0");i.setAttribute("aria-selected","true")}else{if(i.hasAttribute("active"))i.removeAttribute("active");i.setAttribute("tabindex","-1");i.setAttribute("aria-selected","false")}}));if(i){const i=e??this.previousIndex;this.previousIndex=t;this.mdChange.emit({index:t,previousIndex:i})}else{this.previousIndex=t}}handleTabClick(t){t.stopPropagation();const i=t.target;if(!i)return;if(this.isDisabled(i))return;const e=this.tabs.indexOf(i);if(e<0)return;if(e===this.activeIndex)return;this.activeIndex=e}handleKeyDown(t){if(this.tabs.length===0)return;const i=document.activeElement;const e=t.composedPath()[0]??i;const a=this.tabs.findIndex((t=>t===e||t.contains(e)));if(a===-1)return;let s=null;const r=getComputedStyle(this.el).direction==="rtl";const n=r?"ArrowLeft":"ArrowRight";const o=r?"ArrowRight":"ArrowLeft";switch(t.key){case n:t.preventDefault();s=this.nextEnabled(a,1);break;case o:t.preventDefault();s=this.nextEnabled(a,-1);break;case"Home":t.preventDefault();s=this.firstEnabled();break;case"End":t.preventDefault();s=this.lastEnabled();break}if(s===null||s===a)return;this.tabs[s].focus();if(!this.manualActivation&&!this.isDisabled(this.tabs[s])){this.activeIndex=s}}nextEnabled(t,i){const e=this.tabs.length;let a=t;for(let t=0;t<e;t++){a=(a+i+e)%e;if(!this.isHardDisabled(this.tabs[a]))return a}return t}firstEnabled(){for(let t=0;t<this.tabs.length;t++){if(!this.isHardDisabled(this.tabs[t]))return t}return 0}lastEnabled(){for(let t=this.tabs.length-1;t>=0;t--){if(!this.isHardDisabled(this.tabs[t]))return t}return this.tabs.length-1}render(){return e(a,{key:"325e851ac4a7042b130860220da50841a056e1c4",role:"navigation"},e("div",{key:"ad48829d543d990abc77b4fe0f4acbfcf4761690",class:"md-navigation-bar__container",part:"container",role:"tablist","aria-orientation":"horizontal"},e("slot",{key:"cd8ef24df338375bd3a40a24ad39cb7b92ab3a59",onSlotchange:()=>this.syncTabs()})))}get el(){return s(this)}static get watchers(){return{activeIndex:[{onActiveIndexChange:0}],labelBehavior:[{onLabelBehaviorChange:0}]}}};n.style=r();export{n as md_navigation_bar};
2
- //# sourceMappingURL=p-05ae91b6.entry.js.map
1
+ import{r as t,c as i,h as e,H as a,g as s}from"./p-WmvQpZnM.js";const n=()=>`:host{--_container-color:var( --md-navigation-bar-container-color, var(--md-sys-color-surface-container, #F3EDF7) );--_container-height:var(--md-navigation-bar-container-height, 64px);--_container-shape:var(--md-navigation-bar-container-shape, 0);--_container-elevation:var(--md-navigation-bar-container-elevation, none);--_divider-color:var(--md-navigation-bar-divider-color, transparent);--_divider-width:var(--md-navigation-bar-divider-width, 0);--_z-index:var(--md-navigation-bar-z-index, var(--md-sys-z-index-navigation, 200));display:block;inline-size:100%;box-sizing:border-box;background-color:var(--_container-color);border-radius:var(--_container-shape);border-block-start:var(--_divider-width) solid var(--_divider-color);box-shadow:var(--_container-elevation);color:var(--md-sys-color-on-surface, #1C1B1F);z-index:var(--_z-index);position:relative}.md-navigation-bar__container{display:flex;flex-direction:row;align-items:stretch;justify-content:space-around;inline-size:100%;min-block-size:max(48px, calc(var(--_container-height) + var(--md-sys-density-scale, 0) * 4px));block-size:max(48px, calc(var(--_container-height) + var(--md-sys-density-scale, 0) * 4px));box-sizing:border-box}::slotted(md-navigation-tab){flex:1 1 0;min-inline-size:64px}@media (forced-colors: active){:host{--_container-color:Canvas;--_divider-color:CanvasText;--_divider-width:1px}}: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 r=class{constructor(e){t(this,e);this.mdChange=i(this,"mdChange",7);this.activeIndex=0;this.labelBehavior="always";this.manualActivation=false;this.density=0;this.tabs=[];this.previousIndex=-1}componentDidLoad(){this.syncTabs();this.applyActiveState(this.activeIndex,false);this.previousIndex=this.activeIndex}disconnectedCallback(){this.slotObserver?.disconnect()}onActiveIndexChange(t,i){const e=this.clampToEnabled(t);if(e!==t){this.activeIndex=e;return}this.applyActiveState(e,true,i)}onLabelBehaviorChange(){this.tabs.forEach((t=>this.propagateLabelBehavior(t)))}async select(t){const i=this.clampToEnabled(t);if(i===this.activeIndex)return;this.activeIndex=i}async focusTab(t){const i=this.tabs[t];if(!i||this.isHardDisabled(i))return;i.focus()}syncTabs(){const t=this.el.shadowRoot;if(!t)return;const i=t.querySelector("slot");if(!i)return;this.tabs=i.assignedElements().filter((t=>t.tagName==="MD-NAVIGATION-TAB"));if(this.tabs.length>0){this.el.setAttribute("data-tab-count",String(this.tabs.length))}else{this.el.removeAttribute("data-tab-count")}this.tabs.forEach((t=>this.propagateLabelBehavior(t)));this.applyActiveState(this.activeIndex,false)}propagateLabelBehavior(t){if(!t.hasAttribute("label-behavior")){t.labelBehavior=this.labelBehavior;t.setAttribute("data-md-inherited-label-behavior",this.labelBehavior)}}isDisabled(t){return t.hasAttribute("disabled")||t.getAttribute("aria-disabled")==="true"}isHardDisabled(t){return t.hasAttribute("disabled")}clampToEnabled(t){if(this.tabs.length===0)return-1;const i=Math.max(0,Math.min(t,this.tabs.length-1));if(!this.isDisabled(this.tabs[i]))return i;for(let t=i+1;t<this.tabs.length;t++){if(!this.isDisabled(this.tabs[t]))return t}for(let t=i-1;t>=0;t--){if(!this.isDisabled(this.tabs[t]))return t}return-1}applyActiveState(t,i,e){this.tabs.forEach(((i,e)=>{if(e===t){if(!i.hasAttribute("active"))i.setAttribute("active","");i.setAttribute("tabindex","0");i.setAttribute("aria-selected","true")}else{if(i.hasAttribute("active"))i.removeAttribute("active");i.setAttribute("tabindex","-1");i.setAttribute("aria-selected","false")}}));if(i){const i=e??this.previousIndex;this.previousIndex=t;this.mdChange.emit({index:t,previousIndex:i})}else{this.previousIndex=t}}handleTabClick(t){t.stopPropagation();const i=t.target;if(!i)return;if(this.isDisabled(i))return;const e=this.tabs.indexOf(i);if(e<0)return;if(e===this.activeIndex)return;this.activeIndex=e}handleKeyDown(t){if(this.tabs.length===0)return;const i=document.activeElement;const e=t.composedPath()[0]??i;const a=this.tabs.findIndex((t=>t===e||t.contains(e)));if(a===-1)return;let s=null;const n=getComputedStyle(this.el).direction==="rtl";const r=n?"ArrowLeft":"ArrowRight";const o=n?"ArrowRight":"ArrowLeft";switch(t.key){case r:t.preventDefault();s=this.nextEnabled(a,1);break;case o:t.preventDefault();s=this.nextEnabled(a,-1);break;case"Home":t.preventDefault();s=this.firstEnabled();break;case"End":t.preventDefault();s=this.lastEnabled();break}if(s===null||s===a)return;this.tabs[s].focus();if(!this.manualActivation&&!this.isDisabled(this.tabs[s])){this.activeIndex=s}}nextEnabled(t,i){const e=this.tabs.length;let a=t;for(let t=0;t<e;t++){a=(a+i+e)%e;if(!this.isHardDisabled(this.tabs[a]))return a}return t}firstEnabled(){for(let t=0;t<this.tabs.length;t++){if(!this.isHardDisabled(this.tabs[t]))return t}return 0}lastEnabled(){for(let t=this.tabs.length-1;t>=0;t--){if(!this.isHardDisabled(this.tabs[t]))return t}return this.tabs.length-1}render(){return e(a,{key:"325e851ac4a7042b130860220da50841a056e1c4",role:"navigation"},e("div",{key:"ad48829d543d990abc77b4fe0f4acbfcf4761690",class:"md-navigation-bar__container",part:"container",role:"tablist","aria-orientation":"horizontal"},e("slot",{key:"cd8ef24df338375bd3a40a24ad39cb7b92ab3a59",onSlotchange:()=>this.syncTabs()})))}get el(){return s(this)}static get watchers(){return{activeIndex:[{onActiveIndexChange:0}],labelBehavior:[{onLabelBehaviorChange:0}]}}};r.style=n();export{r as md_navigation_bar};
2
+ //# sourceMappingURL=p-6bf632c7.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as a,h as e,H as s,a as t}from"./p-DTaX19_O.js";const o=()=>`:host{--_container-color:var(--md-badge-container-color, var(--md-sys-color-error, #B3261E));--_label-color:var(--md-badge-label-color, var(--md-sys-color-on-error, #FFFFFF));--_shape:var(--md-badge-container-shape, var(--md-sys-shape-corner-full, 9999px));--_icon-color:var(--md-badge-icon-color, var(--md-badge-label-color, var(--md-sys-color-on-error, #FFFFFF)));--_icon-size:var(--md-badge-icon-size, max(8px, calc(10px + var(--md-sys-density-scale, 0) * 0.5px)));--_offset-x:var(--md-badge-offset-x, 50%);--_offset-y:var(--md-badge-offset-y, -50%);--_large-height:var(--md-badge-large-height, max(12px, calc(16px + var(--md-sys-density-scale, 0) * 1px)));--_large-padding:var(--md-badge-large-padding, 0 max(2px, calc(4px + var(--md-sys-density-scale, 0) * 0.5px)));--_small-size:var(--md-badge-small-size, max(4px, calc(6px + var(--md-sys-density-scale, 0) * 0.5px)));display:inline-flex;align-items:center;justify-content:center;position:absolute;top:0;right:0;z-index:1;box-sizing:border-box;pointer-events:none;background-color:var(--_container-color);border-radius:var(--_shape)}:host(.md-badge--small){width:var(--_small-size);height:var(--_small-size);padding:0;transform:translate(var(--_offset-x), var(--_offset-y))}:host(.md-badge--large){min-width:var(--_large-height);height:var(--_large-height);padding:var(--_large-padding);transform:translate(var(--_offset-x), var(--_offset-y));color:var(--_label-color);font-family:var(--md-sys-typescale-label-small-font-family, Roboto, sans-serif);font-size:max(9px, calc(11px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-small-font-weight, 500);letter-spacing:var(--md-sys-typescale-label-small-letter-spacing, 0.5px);line-height:1}:host(.md-badge--large:not(.md-badge--has-content)){padding:0}.md-badge__label{display:block;white-space:nowrap;text-align:center}.md-badge__icon{font-size:var(--_icon-size);color:var(--_icon-color);line-height:1;display:flex;align-items:center;justify-content:center}::slotted(*){width:var(--_icon-size) !important;height:var(--_icon-size) !important;font-size:var(--_icon-size) !important;color:var(--_icon-color) !important;fill:var(--_icon-color) !important}.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, 10px);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 (forced-colors: active){:host{forced-color-adjust:none;background-color:Mark;color:MarkText}}: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 r=class{constructor(e){a(this,e);this.variant="large";this.value="";this.max=999;this.icon="";this.density=0;this.hasSlottedIcon=false;this.readSlottedIcon=()=>{this.hasSlottedIcon=Array.from(this.el.children).some((a=>a.getAttribute("slot")==="icon"))}}componentWillLoad(){this.readSlottedIcon()}get displayValue(){if(this.variant==="small"||!this.value)return"";const a=Number(this.value);if(!Number.isNaN(a)&&Number.isFinite(a)&&a>this.max){return`${this.max}+`}return this.value.slice(0,4)}get accessibleLabel(){if(this.variant==="small")return"notification";const a=this.displayValue;if(a)return a;if(this.icon)return this.icon;return undefined}render(){const a=this.variant==="small";const t=this.displayValue;const o=!a&&!!t;const r=!a&&(!!this.icon||this.hasSlottedIcon);const i=o||r;return e(s,{key:"24252e87e0919c3ef49173c4659ad7509e989826",class:{"md-badge":true,"md-badge--small":a,"md-badge--large":!a,"md-badge--has-content":i},role:"status","aria-label":this.accessibleLabel},!a&&e("slot",{key:"8d9fd92575a0a03c8d7e9017b58e86b609d36d07",name:"icon",onSlotchange:this.readSlottedIcon},this.icon?e("span",{class:"md-badge__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon):null),o&&e("span",{key:"c62df0bac4aa40c211e3fc830fa51fb0f003852c",class:"md-badge__label",part:"label"},t))}get el(){return t(this)}};r.style=o();export{r as md_badge};
2
- //# sourceMappingURL=p-4e3d6e40.entry.js.map
1
+ import{r as e,h as a,H as s,g as t}from"./p-WmvQpZnM.js";const o=()=>`:host{--_container-color:var(--md-badge-container-color, var(--md-sys-color-error, #B3261E));--_label-color:var(--md-badge-label-color, var(--md-sys-color-on-error, #FFFFFF));--_shape:var(--md-badge-container-shape, var(--md-sys-shape-corner-full, 9999px));--_icon-color:var(--md-badge-icon-color, var(--md-badge-label-color, var(--md-sys-color-on-error, #FFFFFF)));--_icon-size:var(--md-badge-icon-size, max(8px, calc(10px + var(--md-sys-density-scale, 0) * 0.5px)));--_offset-x:var(--md-badge-offset-x, 50%);--_offset-y:var(--md-badge-offset-y, -50%);--_large-height:var(--md-badge-large-height, max(12px, calc(16px + var(--md-sys-density-scale, 0) * 1px)));--_large-padding:var(--md-badge-large-padding, 0 max(2px, calc(4px + var(--md-sys-density-scale, 0) * 0.5px)));--_small-size:var(--md-badge-small-size, max(4px, calc(6px + var(--md-sys-density-scale, 0) * 0.5px)));display:inline-flex;align-items:center;justify-content:center;position:absolute;top:0;right:0;z-index:1;box-sizing:border-box;pointer-events:none;background-color:var(--_container-color);border-radius:var(--_shape)}:host(.md-badge--small){width:var(--_small-size);height:var(--_small-size);padding:0;transform:translate(var(--_offset-x), var(--_offset-y))}:host(.md-badge--large){min-width:var(--_large-height);height:var(--_large-height);padding:var(--_large-padding);transform:translate(var(--_offset-x), var(--_offset-y));color:var(--_label-color);font-family:var(--md-sys-typescale-label-small-font-family, Roboto, sans-serif);font-size:max(9px, calc(11px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-small-font-weight, 500);letter-spacing:var(--md-sys-typescale-label-small-letter-spacing, 0.5px);line-height:1}:host(.md-badge--large:not(.md-badge--has-content)){padding:0}.md-badge__label{display:block;white-space:nowrap;text-align:center}.md-badge__icon{font-size:var(--_icon-size);color:var(--_icon-color);line-height:1;display:flex;align-items:center;justify-content:center}::slotted(*){width:var(--_icon-size) !important;height:var(--_icon-size) !important;font-size:var(--_icon-size) !important;color:var(--_icon-color) !important;fill:var(--_icon-color) !important}.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, 10px);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 (forced-colors: active){:host{forced-color-adjust:none;background-color:Mark;color:MarkText}}: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 r=class{constructor(a){e(this,a);this.variant="large";this.value="";this.max=999;this.icon="";this.density=0;this.hasSlottedIcon=false;this.readSlottedIcon=()=>{this.hasSlottedIcon=Array.from(this.el.children).some((e=>e.getAttribute("slot")==="icon"))}}componentWillLoad(){this.readSlottedIcon()}get displayValue(){if(this.variant==="small"||!this.value)return"";const e=Number(this.value);if(!Number.isNaN(e)&&Number.isFinite(e)&&e>this.max){return`${this.max}+`}return this.value.slice(0,4)}get accessibleLabel(){if(this.variant==="small")return"notification";const e=this.displayValue;if(e)return e;if(this.icon)return this.icon;return undefined}render(){const e=this.variant==="small";const t=this.displayValue;const o=!e&&!!t;const r=!e&&(!!this.icon||this.hasSlottedIcon);const i=o||r;return a(s,{key:"24252e87e0919c3ef49173c4659ad7509e989826",class:{"md-badge":true,"md-badge--small":e,"md-badge--large":!e,"md-badge--has-content":i},role:"status","aria-label":this.accessibleLabel},!e&&a("slot",{key:"8d9fd92575a0a03c8d7e9017b58e86b609d36d07",name:"icon",onSlotchange:this.readSlottedIcon},this.icon?a("span",{class:"md-badge__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon):null),o&&a("span",{key:"c62df0bac4aa40c211e3fc830fa51fb0f003852c",class:"md-badge__label",part:"label"},t))}get el(){return t(this)}};r.style=o();export{r as md_badge};
2
+ //# sourceMappingURL=p-6ea7117d.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as t,c as i,h as s,H as e,a as r}from"./p-DTaX19_O.js";import{s as a}from"./p-DWxN44zD.js";const n=()=>`:host{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;cursor:pointer;user-select:none;inline-size:100%;min-block-size:var(--_surface-min-block);overflow:visible;--md-slider-track-length:200px;--md-slider-active-color:var(--md-sys-color-primary);--md-slider-inactive-color:var(--md-sys-color-secondary-container);--md-slider-tick-active-color:var(--md-sys-color-primary);--md-slider-tick-filled-color:var(--md-sys-color-on-primary);--md-slider-tick-inactive-color:var(--md-sys-color-on-secondary-container);--md-slider-thumb-color:var(--md-sys-color-primary);--md-slider-value-bg:var(--md-sys-color-inverse-surface);--md-slider-value-color:var(--md-sys-color-inverse-on-surface);--md-slider-inset-icon-color:var(--md-slider-tick-inactive-color);--md-slider-inset-icon-active-color:var(--md-slider-tick-filled-color);--_value-pct:50%;--_center-pct:50%;--_active-start-pct:0%;--_active-width-pct:50%;--_start-pct:0%;--_end-pct:100%;--_center-gap:4px;--_active-track:var(--md-slider-active-color);--_inactive-track:var(--md-slider-inactive-color);--_thumb-fill:var(--md-slider-thumb-color);--_tick-active:var(--md-slider-tick-active-color);--_tick-filled:var(--md-slider-tick-filled-color);--_tick-inactive:var(--md-slider-tick-inactive-color)}:host(.md-slider--vertical){flex-direction:column;align-items:stretch;inline-size:auto;min-inline-size:var(--_vertical-min-inline);min-block-size:var(--md-slider-track-length)}:host([full-height].md-slider--vertical){block-size:100%;min-block-size:var(--md-slider-min-track-length, 88px)}:host(.md-slider--size-xs){--_track-thickness-default:16px;--_thumb-block-default:max(24px, calc(44px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:8px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:0px}:host(.md-slider--size-sm){--_track-thickness-default:24px;--_thumb-block-default:max(24px, calc(44px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:8px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:0px}:host(.md-slider--size-md){--_track-thickness-default:40px;--_thumb-block-default:max(24px, calc(52px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:12px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px))}:host(.md-slider--size-lg){--_track-thickness-default:56px;--_thumb-block-default:max(24px, calc(68px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:16px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px))}:host(.md-slider--size-xl){--_track-thickness-default:96px;--_thumb-block-default:max(24px, calc(108px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:28px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:32px}:host{--_track-thickness:var(--md-slider-track-height, max(8px, calc(var(--_track-thickness-default) + var(--md-sys-density-scale, 0) * 4px)));--_track-radius:var(--md-slider-track-shape, var(--_track-radius-default));--_thumb-block:var(--md-slider-thumb-height, var(--_thumb-block-default));--_thumb-inline:var(--md-slider-thumb-width, var(--_thumb-inline-default));--_tick-size:max(4px, calc(var(--_track-thickness) * 0.12));--_tick-pad:calc(4px + var(--_tick-size) / 2)}:host(.md-slider--horizontal){--_surface-min-block:var(--_thumb-block)}:host(.md-slider--vertical){--_surface-min-block:var(--md-slider-track-length);--_vertical-min-inline:max(var(--_track-thickness), var(--_thumb-block))}.md-slider__inset{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;pointer-events:none;color:var(--md-slider-inset-icon-color);inline-size:var(--_inset-icon-size, 24px);block-size:var(--_inset-icon-size, 24px)}:host(.md-slider--horizontal) .md-slider__inset{inset-inline-start:8px;inset-block-start:50%;transform:translateY(-50%)}:host(.md-slider--vertical) .md-slider__inset{inset-block-end:8px;inset-inline-start:50%;margin-inline-start:calc(-0.5 * var(--_inset-icon-size, 24px))}.md-slider__inset--on-active{color:var(--md-slider-inset-icon-active-color)}.md-slider__inset-font{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons'), sans-serif;font-size:var(--_inset-icon-size, 24px);font-weight:normal;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;overflow-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;pointer-events:none}::slotted([slot='inset-icon']){display:inline-flex;align-items:center;justify-content:center;inline-size:var(--_inset-icon-size, 24px);block-size:var(--_inset-icon-size, 24px);font-size:var(--_inset-icon-size, 24px);color:inherit;fill:currentColor;pointer-events:none}.md-slider__surface{position:relative;display:flex;flex:1;flex-direction:row;align-items:center;min-inline-size:0;min-block-size:var(--_surface-min-block);overflow:visible}:host(.md-slider--vertical) .md-slider__surface{flex-direction:column;flex:1;align-items:center;justify-content:center;min-block-size:var(--md-slider-track-length)}.md-slider__rail{position:relative;flex:1;min-inline-size:0;min-block-size:var(--_surface-min-block);overflow:visible}:host(.md-slider--range) .md-slider__rail,:host(.md-slider--vertical) .md-slider__rail{touch-action:none;cursor:pointer}:host(.md-slider--range) .md-slider__input,:host(.md-slider--vertical) .md-slider__input{pointer-events:none}:host(.md-slider--vertical) .md-slider__rail{inline-size:max(var(--_track-thickness), var(--_thumb-block));block-size:var(--md-slider-track-length);flex:none}:host([full-height].md-slider--vertical) .md-slider__surface{min-block-size:0}:host([full-height].md-slider--vertical) .md-slider__rail{block-size:auto;flex:1 1 auto;min-block-size:0}:host([full-height].md-slider--vertical) .md-slider__input{position:absolute;inset:0;inline-size:100%;block-size:100%;transform:none}.md-slider__track{position:absolute;pointer-events:none;border-radius:var(--_track-radius);overflow:hidden}:host(.md-slider--horizontal) .md-slider__track{inset-inline:0;inset-block-start:50%;transform:translateY(-50%);block-size:var(--_track-thickness);inline-size:100%}:host(.md-slider--vertical) .md-slider__track{inset-block:0;inset-inline-start:50%;margin-inline-start:calc(-0.5 * var(--_track-thickness));inline-size:var(--_track-thickness);block-size:100%}.md-slider__track-inactive{position:absolute;background-color:var(--_inactive-track)}.md-slider__track-active{position:absolute;background-color:var(--_active-track)}:host(.md-slider--horizontal:not(.md-slider--centered):not(.md-slider--range)) .md-slider__track-active{inset-inline-start:0;inset-block:0;inline-size:max(0px, calc(var(--_value-pct) - var(--_track-thumb-gap)));block-size:100%;border-start-end-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal:not(.md-slider--centered):not(.md-slider--range)) .md-slider__track-inactive{inset-block:0;inset-inline-start:calc(var(--_value-pct) + var(--_track-thumb-gap));inset-inline-end:0;border-start-start-radius:var(--_track-inside-corner);border-end-start-radius:var(--_track-inside-corner)}:host(.md-slider--vertical:not(.md-slider--centered):not(.md-slider--range)) .md-slider__track-active{inset-inline:0;inset-block-end:0;block-size:max(0px, calc(var(--_value-pct) - var(--_track-thumb-gap)));inline-size:100%;border-start-start-radius:var(--_track-inside-corner);border-start-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical:not(.md-slider--centered):not(.md-slider--range)) .md-slider__track-inactive{inset-inline:0;inset-block-start:0;block-size:max(0px, calc(100% - var(--_value-pct) - var(--_track-thumb-gap)));border-end-start-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--centered) .md-slider__track-inactive{inset-block:0;inset-inline-start:0;inline-size:max(0px, calc(var(--_active-start-pct) - var(--_centered-start-gap)));border-start-end-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--centered) .md-slider__track::after{content:'';position:absolute;inset-block:0;inset-inline-start:calc(var(--_active-start-pct) + var(--_active-width-pct) + var(--_centered-end-gap));inset-inline-end:0;background-color:var(--_inactive-track);border-start-start-radius:var(--_track-inside-corner);border-end-start-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--centered) .md-slider__track-active{inset-inline-start:calc(var(--_active-start-pct) + var(--_centered-start-gap));inset-block:0;inline-size:max(0px, calc(var(--_active-width-pct) - var(--_centered-start-gap) - var(--_centered-end-gap)));block-size:100%;border-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--centered) .md-slider__track-inactive{inset-inline:0;inset-block-end:0;block-size:max(0px, calc(var(--_active-start-pct) - var(--_centered-start-gap)));border-start-start-radius:var(--_track-inside-corner);border-start-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--centered) .md-slider__track::after{content:'';position:absolute;inset-inline:0;inset-block-start:0;block-size:max(0px, calc(100% - var(--_active-start-pct) - var(--_active-width-pct) - var(--_centered-end-gap)));background-color:var(--_inactive-track);border-end-start-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--centered) .md-slider__track-active{inset-inline:0;inset-block-end:calc(var(--_active-start-pct) + var(--_centered-start-gap));block-size:max(0px, calc(var(--_active-width-pct) - var(--_centered-start-gap) - var(--_centered-end-gap)));inline-size:100%;border-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--range) .md-slider__track-inactive{inset-block:0;inset-inline-start:0;inline-size:max(0px, calc(var(--_start-pct) - var(--_track-thumb-gap)));border-start-end-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--range) .md-slider__track::after{content:'';position:absolute;inset-block:0;inset-inline-start:calc(var(--_end-pct) + var(--_track-thumb-gap));inset-inline-end:0;background-color:var(--_inactive-track);border-start-start-radius:var(--_track-inside-corner);border-end-start-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--range) .md-slider__track-active{inset-inline-start:calc(var(--_start-pct) + var(--_track-thumb-gap));inset-block:0;inline-size:max(0px, calc(var(--_end-pct) - var(--_start-pct) - 2 * var(--_track-thumb-gap)));block-size:100%;border-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--range) .md-slider__track-inactive{inset-inline:0;inset-block-end:0;block-size:max(0px, calc(var(--_start-pct) - var(--_track-thumb-gap)));border-start-start-radius:var(--_track-inside-corner);border-start-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--range) .md-slider__track::after{content:'';position:absolute;inset-inline:0;inset-block-start:0;block-size:max(0px, calc(100% - var(--_end-pct) - var(--_track-thumb-gap)));background-color:var(--_inactive-track);border-end-start-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--range) .md-slider__track-active{inset-inline:0;inset-block-end:calc(var(--_start-pct) + var(--_track-thumb-gap));block-size:max(0px, calc(var(--_end-pct) - var(--_start-pct) - 2 * var(--_track-thumb-gap)));inline-size:100%;border-radius:var(--_track-inside-corner)}.md-slider__ticks{position:absolute;inset:0;pointer-events:none;z-index:1}:host(.md-slider--horizontal) .md-slider__tick{position:absolute;inset-block-start:50%;margin-inline-start:calc(-0.5 * var(--_tick-size));margin-block-start:calc(-0.5 * var(--_tick-size));inset-inline-start:0}:host(.md-slider--vertical) .md-slider__tick{position:absolute;inset-inline-start:50%;margin-inline-start:calc(-0.5 * var(--_tick-size));margin-block-end:calc(-0.5 * var(--_tick-size))}.md-slider__tick{inline-size:var(--_tick-size);block-size:var(--_tick-size);border-radius:50%}.md-slider__tick--on-active{background-color:var(--_tick-active);opacity:0}.md-slider__tick--on-filled{background-color:var(--_tick-filled)}.md-slider__tick--on-inactive{background-color:var(--_tick-inactive)}.md-slider__thumb{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2;pointer-events:none;inline-size:var(--_thumb-inline);block-size:var(--_thumb-block);overflow:visible}:host(.md-slider--horizontal) .md-slider__thumb{inset-block-start:50%;transform:translateY(-50%);margin-inline-start:calc(-0.5 * var(--_thumb-inline));inset-inline-start:var(--_value-pct)}:host(.md-slider--horizontal) .md-slider__thumb--start{inset-inline-start:var(--_start-pct)}:host(.md-slider--horizontal) .md-slider__thumb--end{inset-inline-start:var(--_end-pct)}:host(.md-slider--vertical) .md-slider__thumb{inline-size:var(--_thumb-block);block-size:var(--_thumb-inline);inset-inline-start:50%;inset-block-end:calc(var(--_value-pct) - var(--_thumb-inline) / 2);inset-block-start:auto;margin-inline-start:calc(-0.5 * var(--_thumb-block))}:host(.md-slider--vertical) .md-slider__thumb--start{inset-block-end:calc(var(--_start-pct) - var(--_thumb-inline) / 2)}:host(.md-slider--vertical) .md-slider__thumb--end{inset-block-end:calc(var(--_end-pct) - var(--_thumb-inline) / 2)}.md-slider__thumb-knob{display:block;inline-size:var(--_thumb-inline);block-size:var(--_thumb-block);border-radius:var(--md-sys-shape-corner-full, 9999px);background-color:var(--_thumb-fill);box-shadow:none;flex-shrink:0;transition:inline-size var(--md-sys-motion-duration-short2) var(--md-sys-motion-easing-standard), block-size var(--md-sys-motion-duration-short2) var(--md-sys-motion-easing-standard)}:host(.md-slider--vertical) .md-slider__thumb-knob{inline-size:var(--_thumb-block);block-size:var(--_thumb-inline)}:host(:not(.md-slider--disabled)) .md-slider__thumb--pressing>.md-slider__thumb-knob{inline-size:2px;block-size:calc(var(--_thumb-block) * 1.05)}:host(.md-slider--vertical:not(.md-slider--disabled)) .md-slider__thumb--pressing>.md-slider__thumb-knob{inline-size:calc(var(--_thumb-block) * 1.05);block-size:2px}.md-slider__state-layer{display:none}.md-slider__thumb--focus-visible>.md-slider__thumb-knob{outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}.md-slider__value-indicator{position:absolute;z-index:3;min-inline-size:max(28px, calc(48px + var(--md-sys-density-scale, 0) * 4px));min-block-size:max(24px, calc(44px + var(--md-sys-density-scale, 0) * 4px));display:inline-flex;align-items:center;justify-content:center;padding-block:var(--md-slider-value-padding-block, var(--md-sys-spacing-inset-md, 12px));padding-inline:var(--md-slider-value-padding-inline, var(--md-sys-spacing-inset-lg, 16px));box-sizing:border-box;background-color:var(--md-slider-value-bg);color:var(--md-slider-value-color);border-radius:var(--md-slider-value-shape, var(--md-sys-shape-corner-full, 9999px));font-family:var(--md-slider-value-font-family, var(--md-sys-typescale-label-medium-font-family, Roboto, sans-serif));font-size:var(--md-slider-value-font-size, var(--md-sys-typescale-label-medium-size, 12px));font-weight:var(--md-slider-value-font-weight, var(--md-sys-typescale-label-medium-weight, 500));line-height:var(--md-slider-value-line-height, var(--md-sys-typescale-label-medium-line-height, 16px));letter-spacing:var(--md-sys-typescale-label-medium-letter-spacing, 0.5px);white-space:nowrap;pointer-events:none}:host(.md-slider--horizontal) .md-slider__value-indicator{inset-block-end:calc(100% + 4px);left:50%;transform:translateX(-50%)}:host(.md-slider--vertical) .md-slider__value-indicator{inset-inline-start:calc(100% + 4px);inset-block-end:50%;transform:translateY(50%)}.md-slider__input-shell{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.md-slider__input{position:absolute;inset:0;inline-size:100%;block-size:100%;margin:0;padding:0;opacity:0;cursor:pointer;pointer-events:auto;box-sizing:border-box}:host(.md-slider--vertical) .md-slider__input-shell{align-items:center;justify-content:center}:host(.md-slider--vertical) .md-slider__input{position:relative;inset:auto;inline-size:var(--md-slider-track-length);block-size:max(44px, var(--_state-layer-size));transform:rotate(-90deg);transform-origin:center center}.md-slider__input--start,.md-slider__input--end{inline-size:100%;block-size:100%}:host(.md-slider--disabled){cursor:not-allowed;pointer-events:none;opacity:var(--md-sys-state-disabled-content-opacity)}:host(.md-slider--disabled) .md-slider__track-inactive{background-color:color-mix( in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), var(--md-sys-color-surface) )}:host(.md-slider--disabled) .md-slider__track-active,:host(.md-slider--disabled) .md-slider__thumb-knob{background-color:color-mix( in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent );box-shadow:none}:host(:focus-visible){outline:none}:host(.md-slider--stops) .md-slider__track-active{transition:inline-size var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90)), block-size var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90)), inset-inline-start var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90)), inset-block-end var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90))}:host(.md-slider--stops) .md-slider__tick{transition:opacity var(--md-sys-motion-spring-effects-default-duration, 200ms) var(--md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.80, 0.34, 1.00)), background-color var(--md-sys-motion-spring-effects-default-duration, 200ms) var(--md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.80, 0.34, 1.00))}: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 l=class{constructor(s){t(this,s);this.mdInput=i(this,"mdInput",7);this.mdChange=i(this,"mdChange",7);this.mdFocus=i(this,"mdFocus",7);this.mdBlur=i(this,"mdBlur",7);this.mdDragStart=i(this,"mdDragStart",7);this.mdDragEnd=i(this,"mdDragEnd",7);if(s.$hostElement$["s-ei"]){this.internals=s.$hostElement$["s-ei"]}else{this.internals=s.$hostElement$.attachInternals();s.$hostElement$["s-ei"]=this.internals}this.min=0;this.max=100;this.value=50;this.step=1;this.disabled=false;this.name="";this.nameStart="";this.nameEnd="";this.variant="standard";this.range=false;this.stops=false;this.valueStart=0;this.valueEnd=100;this.size="xs";this.orientation="horizontal";this.fullHeight=false;this.valueIndicator=false;this.labeled=false;this.insetIcon=false;this.icon="";this.sliderAriaLabel="";this.ariaLabelStart="";this.ariaLabelEnd="";this.valueText="";this.valueStartText="";this.valueEndText="";this.controlled=false;this.density=0;this.keyFocusedThumb=null;this.pressingThumb=null;this._liveValue=null;this._liveStart=null;this._liveEnd=null;this.rangeDragThumb=null;this.verticalDragging=false;this.initialValue=0;this.initialStart=0;this.initialEnd=0;this.handleInput=(t,i)=>{const s=t.target;const e=Number(s.value);if(this.range){if(i){if(e>this.displayEnd){this.setEnd(e);this.setStart(e)}else{this.setStart(e)}}else{if(e<this.displayStart){this.setStart(e);this.setEnd(e)}else{this.setEnd(e)}}this.syncCssVars();this.mdInput.emit(this.rangeDetail())}else{this.setSingle(e);this.syncCssVars();this.mdInput.emit(this.singleDetail())}};this.handleChange=(t,i)=>{const s=t.target;const e=Number(s.value);if(this.range){if(i){if(e>this.displayEnd){this.setEnd(e);this.setStart(e)}else{this.setStart(e)}}else{if(e<this.displayStart){this.setStart(e);this.setEnd(e)}else{this.setEnd(e)}}this.syncCssVars();this.mdChange.emit(this.rangeDetail())}else{this.setSingle(e);this.syncCssVars();this.mdChange.emit(this.singleDetail())}this.commit()};this.onRangeRailPointerDown=t=>{if(!this.range||this.disabled)return;const i=t.currentTarget;const s=this.pointerToValue(t.clientX,t.clientY);const e=Math.abs(s-this.displayStart);const r=Math.abs(s-this.displayEnd);if(e===r){this.rangeDragThumb=s>=this.displayEnd?"end":"start"}else{this.rangeDragThumb=e<r?"start":"end"}this.pressingThumb=this.rangeDragThumb;this.mdDragStart.emit({thumb:this.rangeDragThumb,value:this.rangeDragThumb==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd});this.applyRangePointerValue(s);try{i.setPointerCapture(t.pointerId)}catch{}t.preventDefault()};this.onRangeRailPointerMove=t=>{if(!this.range||this.disabled||!this.rangeDragThumb)return;this.applyRangePointerValue(this.pointerToValue(t.clientX,t.clientY));t.preventDefault()};this.onRangeRailPointerUp=t=>{if(!this.range)return;this.endRangePointerGesture(t)};this.onRangeRailLostPointerCapture=()=>{if(!this.rangeDragThumb)return;const t=this.rangeDragThumb;const i=this.rangeDetail();this.rangeDragThumb=null;this.pressingThumb=null;this.mdChange.emit(i);this.mdDragEnd.emit({thumb:t,...i});this.commit();this.syncCssVars()};this.onVerticalRailPointerDown=t=>{if(this.range||this.disabled||this.orientation!=="vertical")return;const i=t.currentTarget;this.verticalDragging=true;this.pressingThumb="single";const s=this.pointerToValue(t.clientX,t.clientY);this.setSingle(s);this.syncCssVars();this.mdDragStart.emit({thumb:"single",value:this.displayValue});this.mdInput.emit(this.singleDetail());try{i.setPointerCapture(t.pointerId)}catch{}t.preventDefault()};this.onVerticalRailPointerMove=t=>{if(!this.verticalDragging)return;const i=this.pointerToValue(t.clientX,t.clientY);this.setSingle(i);this.syncCssVars();this.mdInput.emit(this.singleDetail());t.preventDefault()};this.onVerticalRailPointerUp=t=>{if(!this.verticalDragging)return;this.verticalDragging=false;this.pressingThumb=null;try{t.currentTarget.releasePointerCapture(t.pointerId)}catch{}const i=this.singleDetail();this.mdChange.emit(i);this.mdDragEnd.emit({thumb:"single",...i});this.commit();this.syncCssVars()};this.onVerticalRailLostPointerCapture=()=>{if(!this.verticalDragging)return;this.verticalDragging=false;this.pressingThumb=null;const t=this.singleDetail();this.mdChange.emit(t);this.mdDragEnd.emit({thumb:"single",...t});this.commit();this.syncCssVars()};this.onInputFocus=t=>i=>{const s=i.target;try{if(s.matches(":focus-visible")){this.keyFocusedThumb=t}}catch{this.keyFocusedThumb=t}this.mdFocus.emit({thumb:t})};this.onInputBlur=t=>()=>{this.keyFocusedThumb=null;this.mdBlur.emit({thumb:t})};this.onInputKeyDown=t=>i=>{if(!l.SLIDER_KEYS.has(i.key))return;if(!this.pressingThumb){this.pressingThumb=t;const i=this.range?{thumb:t,value:t==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}:{thumb:"single",value:this.displayValue};this.mdDragStart.emit(i)}};this.onInputKeyUp=t=>i=>{if(!l.SLIDER_KEYS.has(i.key))return;this.pressingThumb=null;const s=this.range?{thumb:t,value:t==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}:{thumb:"single",value:this.displayValue};this.mdDragEnd.emit(s)};this.onInputPointerDown=t=>()=>{this.pressingThumb=t;const i=this.range?{thumb:t,value:t==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}:{thumb:"single",value:this.displayValue};this.mdDragStart.emit(i)};this.onInputPointerUp=t=>()=>{this.pressingThumb=null;const i=this.range?{thumb:t,value:t==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}:{thumb:"single",value:this.displayValue};this.mdDragEnd.emit(i)}}get displayValue(){return this._liveValue??this.value}get displayStart(){return this._liveStart??this.valueStart}get displayEnd(){return this._liveEnd??this.valueEnd}setSingle(t){if(this.controlled){this._liveValue=t}else{this.value=t}}setStart(t){if(this.controlled){this._liveStart=t}else{this.valueStart=t}}setEnd(t){if(this.controlled){this._liveEnd=t}else{this.valueEnd=t}}commit(){if(this.controlled){this._liveValue=null;this._liveStart=null;this._liveEnd=null}else{if(this._liveValue!==null){this.value=this._liveValue;this._liveValue=null}if(this._liveStart!==null){this.valueStart=this._liveStart;this._liveStart=null}if(this._liveEnd!==null){this.valueEnd=this._liveEnd;this._liveEnd=null}}}connectedCallback(){this.initialValue=this.value;this.initialStart=this.valueStart;this.initialEnd=this.valueEnd}componentDidLoad(){this.clampValues();this.syncCssVars();this.syncFormValue()}syncFormValue(){if(!this.name&&!this.nameStart&&!this.nameEnd){a(this.internals,null);return}if(!this.range){a(this.internals,String(this.value));return}const t=new FormData;t.append(this.nameStart||this.name,String(this.valueStart));t.append(this.nameEnd||this.name,String(this.valueEnd));a(this.internals,t)}formResetCallback(){this.value=this.initialValue;this.valueStart=this.initialStart;this.valueEnd=this.initialEnd;this.syncFormValue()}formStateRestoreCallback(t){if(t==null)return;if(typeof t==="string"){const i=Number(t);if(Number.isFinite(i))this.value=i;return}const i=[...t.values()].map(Number).filter((t=>Number.isFinite(t)));if(i.length===2){this.valueStart=i[0];this.valueEnd=i[1]}}clampValues(){this.value=Math.min(this.max,Math.max(this.min,this.value));if(this.range){this.valueStart=Math.min(this.max,Math.max(this.min,this.valueStart));this.valueEnd=Math.min(this.max,Math.max(this.min,this.valueEnd))}}pct(t){if(this.max===this.min)return 0;return(t-this.min)/(this.max-this.min)*100}syncCssVars(){const t=this.el;const i=this.displayValue;const s=this.displayStart;const e=this.displayEnd;const r=t=>`${this.pct(t)}%`;t.style.setProperty("--_value-pct",r(i));const a=(this.min+this.max)/2;const n=this.pct(a);const l=this.pct(i);const d=Math.min(n,l);const c=Math.max(n,l);t.style.setProperty("--_center-pct",`${n}%`);t.style.setProperty("--_active-start-pct",`${d}%`);t.style.setProperty("--_active-width-pct",`${c-d}%`);const o=l<=n;t.style.setProperty("--_centered-start-gap",o?"var(--_track-thumb-gap)":"var(--_center-gap)");t.style.setProperty("--_centered-end-gap",o?"var(--_center-gap)":"var(--_track-thumb-gap)");if(this.range){t.style.setProperty("--_start-pct",r(s));t.style.setProperty("--_end-pct",r(e))}}onValuePropChange(){this._liveValue=null;this.syncCssVars();this.syncFormValue()}onValueStartPropChange(){this._liveStart=null;this.syncCssVars();this.syncFormValue()}onValueEndPropChange(){this._liveEnd=null;this.syncCssVars();this.syncFormValue()}onFormIdentityChange(){this.syncFormValue()}onLayoutDeps(){this.syncCssVars()}onBoundsChange(){this.clampValues();this.syncCssVars()}get showStops(){return this.stops}get isCentered(){return!this.range&&this.variant==="centered"}get showBubble(){return this.valueIndicator||this.labeled}formatValue(t){if(this.step>0){const i=(`${this.step}`.split(".")[1]||"").length;return t.toFixed(i)}return String(Math.round(t))}get insetArea(){return this.insetIcon&&!this.range&&this.size!=="xs"&&this.size!=="sm"}get insetOnActive(){if(!this.insetArea)return false;if(this.isCentered){const t=(this.min+this.max)/2;return this.displayValue<t}return this.displayValue>this.min}singleDetail(){return{value:this.displayValue}}rangeDetail(){return{value:this.rangeDragThumb==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}}snapToStep(t){const i=this.step;if(i<=0)return Math.min(this.max,Math.max(this.min,t));const s=Math.round((t-this.min)/i);return Math.min(this.max,Math.max(this.min,this.min+s*i))}pointerToValue(t,i){const s=this.el.shadowRoot?.querySelector(".md-slider__rail");if(!s)return this.min;const e=s.getBoundingClientRect();const r=this.orientation==="vertical";let a;if(r){a=e.height>0?(e.bottom-i)/e.height:0}else{const i=getComputedStyle(this.el).direction==="rtl";a=e.width>0?i?(e.right-t)/e.width:(t-e.left)/e.width:0}a=Math.min(1,Math.max(0,a));const n=this.min+a*(this.max-this.min);return this.snapToStep(n)}applyRangePointerValue(t){if(this.rangeDragThumb==="start"){if(t>this.displayEnd){this.rangeDragThumb="end";this.pressingThumb="end";this.setEnd(t)}else{this.setStart(t)}}else if(this.rangeDragThumb==="end"){if(t<this.displayStart){this.rangeDragThumb="start";this.pressingThumb="start";this.setStart(t)}else{this.setEnd(t)}}this.syncCssVars();this.mdInput.emit(this.rangeDetail())}endRangePointerGesture(t){if(!this.rangeDragThumb)return;const i=this.rangeDragThumb;const s=this.rangeDetail();this.rangeDragThumb=null;this.pressingThumb=null;if(t){try{t.currentTarget.releasePointerCapture(t.pointerId)}catch{}}this.mdChange.emit(s);this.mdDragEnd.emit({thumb:i,...s});this.commit();this.syncCssVars()}getTickMarks(){if(!this.showStops||this.step<=0)return null;const t=this.max-this.min;const i=Math.floor(t/this.step)+1;if(i<2)return null;const e=this.orientation==="vertical";const r=this.step*.001;const a=(t,i)=>Math.abs(t-i)<r;const n=t=>{const s=t/(i-1);return`calc(var(--_tick-pad) + (100% - 2 * var(--_tick-pad)) * ${s})`};const l=(this.min+this.max)/2;const d=this.displayValue;const c=this.displayStart;const o=this.displayEnd;const h=t=>{if(this.range)return t>=c&&t<=o;if(this.isCentered){const i=Math.min(l,d);const s=Math.max(l,d);return t>=i&&t<=s}return t<=d};return Array.from({length:i},((t,i)=>{const r=this.min+i*this.step;const l=this.range?a(r,c)||a(r,o):a(r,d);const m=h(r);const u={"md-slider__tick":true,"md-slider__tick--on-active":l,"md-slider__tick--on-filled":m&&!l,"md-slider__tick--on-inactive":!m&&!l};return e?s("span",{class:u,style:{bottom:n(i)}}):s("span",{class:u,style:{insetInlineStart:n(i)}})}))}inputAriaLabel(t,i){if(t)return this.sliderAriaLabel||"slider";if(i==="start")return this.ariaLabelStart||this.sliderAriaLabel||"range start";return this.ariaLabelEnd||this.sliderAriaLabel||"range end"}wrapInputShell(t,i){return t?s("div",{class:"md-slider__input-shell"},i):i}render(){const t=this.orientation==="vertical";const i=this.showBubble;const r=this.insetArea;const a=t?{orient:"vertical"}:{};const n=this.displayValue;const l=this.displayStart;const d=this.displayEnd;return s(e,{key:"f38f7f4981a3204a40330e737263edfe2cf6f948",class:{"md-slider":true,[`md-slider--size-${this.size}`]:true,"md-slider--vertical":t,"md-slider--horizontal":!t,"md-slider--centered":this.isCentered,"md-slider--range":this.range,"md-slider--stops":this.showStops,"md-slider--inset":r,"md-slider--disabled":this.disabled},"aria-orientation":t?"vertical":"horizontal"},s("div",{key:"f40ed52fd1e840350c3cd737089efe50590a21e9",class:"md-slider__surface",part:"surface"},s("div",{key:"d53d5a9e829355365d3c549543e5c6de357c7b82",class:"md-slider__rail",onPointerDown:this.range?this.onRangeRailPointerDown:t?this.onVerticalRailPointerDown:undefined,onPointerMove:this.range?this.onRangeRailPointerMove:t?this.onVerticalRailPointerMove:undefined,onPointerUp:this.range?this.onRangeRailPointerUp:t?this.onVerticalRailPointerUp:undefined,onPointerCancel:this.range?this.onRangeRailPointerUp:t?this.onVerticalRailPointerUp:undefined,onLostPointerCapture:this.range?this.onRangeRailLostPointerCapture:t?this.onVerticalRailLostPointerCapture:undefined},s("div",{key:"09105e18b2f2ca3cafb720f85f3a274fa80474ab",class:"md-slider__track",part:"track"},s("div",{key:"3b4c474185357f9213066764add562647de56fe3",class:"md-slider__track-inactive",part:"track-inactive"}),s("div",{key:"1f0dd86eff947adeb2fb54f59a404f1903829b2d",class:"md-slider__track-active",part:"track-active"}),this.showStops&&s("div",{key:"7d7c4ac145cee460b182cde9c9dea7082ee13898",class:"md-slider__ticks"},this.getTickMarks()),r&&s("span",{key:"f1f78c02e2a28cf689b6dbfe7c1bb329cfafd8c4",class:{"md-slider__inset":true,"md-slider__inset--on-active":this.insetOnActive},part:"inset","aria-hidden":"true"},s("slot",{key:"f279cfc182914ddeb057d628416d73006286b09c",name:"inset-icon"},this.icon?s("span",{class:"md-slider__inset-font material-symbols-outlined"},this.icon):null))),this.range?[s("div",{class:{"md-slider__thumb":true,"md-slider__thumb--start":true,"md-slider__thumb--focus-visible":this.keyFocusedThumb==="start","md-slider__thumb--pressing":this.pressingThumb==="start"},style:{...!t?{insetInlineStart:"var(--_start-pct)"}:{}}},s("span",{class:"md-slider__thumb-knob",part:"thumb-knob"}),s("span",{class:"md-slider__state-layer",part:"state-layer","aria-hidden":"true"}),i&&s("span",{class:"md-slider__value-indicator",part:"value-indicator"},this.formatValue(l))),s("div",{class:{"md-slider__thumb":true,"md-slider__thumb--end":true,"md-slider__thumb--focus-visible":this.keyFocusedThumb==="end","md-slider__thumb--pressing":this.pressingThumb==="end"},style:{...!t?{insetInlineStart:"var(--_end-pct)"}:{}}},s("span",{class:"md-slider__thumb-knob",part:"thumb-knob"}),s("span",{class:"md-slider__state-layer",part:"state-layer","aria-hidden":"true"}),i&&s("span",{class:"md-slider__value-indicator",part:"value-indicator"},this.formatValue(d))),this.wrapInputShell(t,s("input",{type:"range",class:"md-slider__input md-slider__input--start",min:this.min,max:this.max,step:this.step,value:l,disabled:this.disabled,"aria-label":this.inputAriaLabel(false,"start"),"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":l,"aria-valuetext":this.valueStartText||undefined,"aria-orientation":t?"vertical":"horizontal",...a,onInput:t=>this.handleInput(t,true),onChange:t=>this.handleChange(t,true),onFocus:this.onInputFocus("start"),onBlur:this.onInputBlur("start"),onKeyDown:this.onInputKeyDown("start"),onKeyUp:this.onInputKeyUp("start"),onPointerDown:this.onInputPointerDown("start"),onPointerUp:this.onInputPointerUp("start")})),this.wrapInputShell(t,s("input",{type:"range",class:"md-slider__input md-slider__input--end",min:this.min,max:this.max,step:this.step,value:d,disabled:this.disabled,"aria-label":this.inputAriaLabel(false,"end"),"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":d,"aria-valuetext":this.valueEndText||undefined,"aria-orientation":t?"vertical":"horizontal",...a,onInput:t=>this.handleInput(t,false),onChange:t=>this.handleChange(t,false),onFocus:this.onInputFocus("end"),onBlur:this.onInputBlur("end"),onKeyDown:this.onInputKeyDown("end"),onKeyUp:this.onInputKeyUp("end"),onPointerDown:this.onInputPointerDown("end"),onPointerUp:this.onInputPointerUp("end")}))]:[s("div",{class:{"md-slider__thumb":true,"md-slider__thumb--focus-visible":this.keyFocusedThumb==="single","md-slider__thumb--pressing":this.pressingThumb==="single"},style:{...!t?{insetInlineStart:"var(--_value-pct)"}:{}}},s("span",{class:"md-slider__thumb-knob",part:"thumb-knob"}),s("span",{class:"md-slider__state-layer",part:"state-layer","aria-hidden":"true"}),i&&s("span",{class:"md-slider__value-indicator",part:"value-indicator"},this.formatValue(n))),this.wrapInputShell(t,s("input",{type:"range",class:"md-slider__input",min:this.min,max:this.max,step:this.step,value:n,disabled:this.disabled,"aria-label":this.inputAriaLabel(true),"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":n,"aria-valuetext":this.valueText||undefined,"aria-orientation":t?"vertical":"horizontal",...a,onInput:t=>this.handleInput(t),onChange:t=>this.handleChange(t),onFocus:this.onInputFocus("single"),onBlur:this.onInputBlur("single"),onKeyDown:this.onInputKeyDown("single"),onKeyUp:this.onInputKeyUp("single"),onPointerDown:this.onInputPointerDown("single"),onPointerUp:this.onInputPointerUp("single")}))])))}static get formAssociated(){return true}get el(){return r(this)}static get watchers(){return{value:[{onValuePropChange:0}],valueStart:[{onValueStartPropChange:0}],valueEnd:[{onValueEndPropChange:0}],name:[{onFormIdentityChange:0}],nameStart:[{onFormIdentityChange:0}],nameEnd:[{onFormIdentityChange:0}],range:[{onFormIdentityChange:0},{onLayoutDeps:0}],variant:[{onLayoutDeps:0}],min:[{onBoundsChange:0}],max:[{onBoundsChange:0}]}}};l.SLIDER_KEYS=new Set(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown"]);l.style=n();export{l as md_slider};
2
- //# sourceMappingURL=p-9ddbf247.entry.js.map
1
+ import{r as t,c as i,h as s,H as e,g as r}from"./p-WmvQpZnM.js";import{s as a}from"./p-DWxN44zD.js";const n=()=>`:host{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;cursor:pointer;user-select:none;inline-size:100%;min-block-size:var(--_surface-min-block);overflow:visible;--md-slider-track-length:200px;--md-slider-active-color:var(--md-sys-color-primary);--md-slider-inactive-color:var(--md-sys-color-secondary-container);--md-slider-tick-active-color:var(--md-sys-color-primary);--md-slider-tick-filled-color:var(--md-sys-color-on-primary);--md-slider-tick-inactive-color:var(--md-sys-color-on-secondary-container);--md-slider-thumb-color:var(--md-sys-color-primary);--md-slider-value-bg:var(--md-sys-color-inverse-surface);--md-slider-value-color:var(--md-sys-color-inverse-on-surface);--md-slider-inset-icon-color:var(--md-slider-tick-inactive-color);--md-slider-inset-icon-active-color:var(--md-slider-tick-filled-color);--_value-pct:50%;--_center-pct:50%;--_active-start-pct:0%;--_active-width-pct:50%;--_start-pct:0%;--_end-pct:100%;--_center-gap:4px;--_active-track:var(--md-slider-active-color);--_inactive-track:var(--md-slider-inactive-color);--_thumb-fill:var(--md-slider-thumb-color);--_tick-active:var(--md-slider-tick-active-color);--_tick-filled:var(--md-slider-tick-filled-color);--_tick-inactive:var(--md-slider-tick-inactive-color)}:host(.md-slider--vertical){flex-direction:column;align-items:stretch;inline-size:auto;min-inline-size:var(--_vertical-min-inline);min-block-size:var(--md-slider-track-length)}:host([full-height].md-slider--vertical){block-size:100%;min-block-size:var(--md-slider-min-track-length, 88px)}:host(.md-slider--size-xs){--_track-thickness-default:16px;--_thumb-block-default:max(24px, calc(44px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:8px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:0px}:host(.md-slider--size-sm){--_track-thickness-default:24px;--_thumb-block-default:max(24px, calc(44px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:8px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:0px}:host(.md-slider--size-md){--_track-thickness-default:40px;--_thumb-block-default:max(24px, calc(52px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:12px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px))}:host(.md-slider--size-lg){--_track-thickness-default:56px;--_thumb-block-default:max(24px, calc(68px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:16px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px))}:host(.md-slider--size-xl){--_track-thickness-default:96px;--_thumb-block-default:max(24px, calc(108px + var(--md-sys-density-scale, 0) * 4px));--_thumb-inline-default:4px;--_track-radius-default:28px;--_track-thumb-gap:6px;--_track-inside-corner:2px;--_inset-icon-size:32px}:host{--_track-thickness:var(--md-slider-track-height, max(8px, calc(var(--_track-thickness-default) + var(--md-sys-density-scale, 0) * 4px)));--_track-radius:var(--md-slider-track-shape, var(--_track-radius-default));--_thumb-block:var(--md-slider-thumb-height, var(--_thumb-block-default));--_thumb-inline:var(--md-slider-thumb-width, var(--_thumb-inline-default));--_tick-size:max(4px, calc(var(--_track-thickness) * 0.12));--_tick-pad:calc(4px + var(--_tick-size) / 2)}:host(.md-slider--horizontal){--_surface-min-block:var(--_thumb-block)}:host(.md-slider--vertical){--_surface-min-block:var(--md-slider-track-length);--_vertical-min-inline:max(var(--_track-thickness), var(--_thumb-block))}.md-slider__inset{position:absolute;z-index:1;display:flex;align-items:center;justify-content:center;pointer-events:none;color:var(--md-slider-inset-icon-color);inline-size:var(--_inset-icon-size, 24px);block-size:var(--_inset-icon-size, 24px)}:host(.md-slider--horizontal) .md-slider__inset{inset-inline-start:8px;inset-block-start:50%;transform:translateY(-50%)}:host(.md-slider--vertical) .md-slider__inset{inset-block-end:8px;inset-inline-start:50%;margin-inline-start:calc(-0.5 * var(--_inset-icon-size, 24px))}.md-slider__inset--on-active{color:var(--md-slider-inset-icon-active-color)}.md-slider__inset-font{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons'), sans-serif;font-size:var(--_inset-icon-size, 24px);font-weight:normal;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;overflow-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;pointer-events:none}::slotted([slot='inset-icon']){display:inline-flex;align-items:center;justify-content:center;inline-size:var(--_inset-icon-size, 24px);block-size:var(--_inset-icon-size, 24px);font-size:var(--_inset-icon-size, 24px);color:inherit;fill:currentColor;pointer-events:none}.md-slider__surface{position:relative;display:flex;flex:1;flex-direction:row;align-items:center;min-inline-size:0;min-block-size:var(--_surface-min-block);overflow:visible}:host(.md-slider--vertical) .md-slider__surface{flex-direction:column;flex:1;align-items:center;justify-content:center;min-block-size:var(--md-slider-track-length)}.md-slider__rail{position:relative;flex:1;min-inline-size:0;min-block-size:var(--_surface-min-block);overflow:visible}:host(.md-slider--range) .md-slider__rail,:host(.md-slider--vertical) .md-slider__rail{touch-action:none;cursor:pointer}:host(.md-slider--range) .md-slider__input,:host(.md-slider--vertical) .md-slider__input{pointer-events:none}:host(.md-slider--vertical) .md-slider__rail{inline-size:max(var(--_track-thickness), var(--_thumb-block));block-size:var(--md-slider-track-length);flex:none}:host([full-height].md-slider--vertical) .md-slider__surface{min-block-size:0}:host([full-height].md-slider--vertical) .md-slider__rail{block-size:auto;flex:1 1 auto;min-block-size:0}:host([full-height].md-slider--vertical) .md-slider__input{position:absolute;inset:0;inline-size:100%;block-size:100%;transform:none}.md-slider__track{position:absolute;pointer-events:none;border-radius:var(--_track-radius);overflow:hidden}:host(.md-slider--horizontal) .md-slider__track{inset-inline:0;inset-block-start:50%;transform:translateY(-50%);block-size:var(--_track-thickness);inline-size:100%}:host(.md-slider--vertical) .md-slider__track{inset-block:0;inset-inline-start:50%;margin-inline-start:calc(-0.5 * var(--_track-thickness));inline-size:var(--_track-thickness);block-size:100%}.md-slider__track-inactive{position:absolute;background-color:var(--_inactive-track)}.md-slider__track-active{position:absolute;background-color:var(--_active-track)}:host(.md-slider--horizontal:not(.md-slider--centered):not(.md-slider--range)) .md-slider__track-active{inset-inline-start:0;inset-block:0;inline-size:max(0px, calc(var(--_value-pct) - var(--_track-thumb-gap)));block-size:100%;border-start-end-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal:not(.md-slider--centered):not(.md-slider--range)) .md-slider__track-inactive{inset-block:0;inset-inline-start:calc(var(--_value-pct) + var(--_track-thumb-gap));inset-inline-end:0;border-start-start-radius:var(--_track-inside-corner);border-end-start-radius:var(--_track-inside-corner)}:host(.md-slider--vertical:not(.md-slider--centered):not(.md-slider--range)) .md-slider__track-active{inset-inline:0;inset-block-end:0;block-size:max(0px, calc(var(--_value-pct) - var(--_track-thumb-gap)));inline-size:100%;border-start-start-radius:var(--_track-inside-corner);border-start-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical:not(.md-slider--centered):not(.md-slider--range)) .md-slider__track-inactive{inset-inline:0;inset-block-start:0;block-size:max(0px, calc(100% - var(--_value-pct) - var(--_track-thumb-gap)));border-end-start-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--centered) .md-slider__track-inactive{inset-block:0;inset-inline-start:0;inline-size:max(0px, calc(var(--_active-start-pct) - var(--_centered-start-gap)));border-start-end-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--centered) .md-slider__track::after{content:'';position:absolute;inset-block:0;inset-inline-start:calc(var(--_active-start-pct) + var(--_active-width-pct) + var(--_centered-end-gap));inset-inline-end:0;background-color:var(--_inactive-track);border-start-start-radius:var(--_track-inside-corner);border-end-start-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--centered) .md-slider__track-active{inset-inline-start:calc(var(--_active-start-pct) + var(--_centered-start-gap));inset-block:0;inline-size:max(0px, calc(var(--_active-width-pct) - var(--_centered-start-gap) - var(--_centered-end-gap)));block-size:100%;border-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--centered) .md-slider__track-inactive{inset-inline:0;inset-block-end:0;block-size:max(0px, calc(var(--_active-start-pct) - var(--_centered-start-gap)));border-start-start-radius:var(--_track-inside-corner);border-start-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--centered) .md-slider__track::after{content:'';position:absolute;inset-inline:0;inset-block-start:0;block-size:max(0px, calc(100% - var(--_active-start-pct) - var(--_active-width-pct) - var(--_centered-end-gap)));background-color:var(--_inactive-track);border-end-start-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--centered) .md-slider__track-active{inset-inline:0;inset-block-end:calc(var(--_active-start-pct) + var(--_centered-start-gap));block-size:max(0px, calc(var(--_active-width-pct) - var(--_centered-start-gap) - var(--_centered-end-gap)));inline-size:100%;border-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--range) .md-slider__track-inactive{inset-block:0;inset-inline-start:0;inline-size:max(0px, calc(var(--_start-pct) - var(--_track-thumb-gap)));border-start-end-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--range) .md-slider__track::after{content:'';position:absolute;inset-block:0;inset-inline-start:calc(var(--_end-pct) + var(--_track-thumb-gap));inset-inline-end:0;background-color:var(--_inactive-track);border-start-start-radius:var(--_track-inside-corner);border-end-start-radius:var(--_track-inside-corner)}:host(.md-slider--horizontal.md-slider--range) .md-slider__track-active{inset-inline-start:calc(var(--_start-pct) + var(--_track-thumb-gap));inset-block:0;inline-size:max(0px, calc(var(--_end-pct) - var(--_start-pct) - 2 * var(--_track-thumb-gap)));block-size:100%;border-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--range) .md-slider__track-inactive{inset-inline:0;inset-block-end:0;block-size:max(0px, calc(var(--_start-pct) - var(--_track-thumb-gap)));border-start-start-radius:var(--_track-inside-corner);border-start-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--range) .md-slider__track::after{content:'';position:absolute;inset-inline:0;inset-block-start:0;block-size:max(0px, calc(100% - var(--_end-pct) - var(--_track-thumb-gap)));background-color:var(--_inactive-track);border-end-start-radius:var(--_track-inside-corner);border-end-end-radius:var(--_track-inside-corner)}:host(.md-slider--vertical.md-slider--range) .md-slider__track-active{inset-inline:0;inset-block-end:calc(var(--_start-pct) + var(--_track-thumb-gap));block-size:max(0px, calc(var(--_end-pct) - var(--_start-pct) - 2 * var(--_track-thumb-gap)));inline-size:100%;border-radius:var(--_track-inside-corner)}.md-slider__ticks{position:absolute;inset:0;pointer-events:none;z-index:1}:host(.md-slider--horizontal) .md-slider__tick{position:absolute;inset-block-start:50%;margin-inline-start:calc(-0.5 * var(--_tick-size));margin-block-start:calc(-0.5 * var(--_tick-size));inset-inline-start:0}:host(.md-slider--vertical) .md-slider__tick{position:absolute;inset-inline-start:50%;margin-inline-start:calc(-0.5 * var(--_tick-size));margin-block-end:calc(-0.5 * var(--_tick-size))}.md-slider__tick{inline-size:var(--_tick-size);block-size:var(--_tick-size);border-radius:50%}.md-slider__tick--on-active{background-color:var(--_tick-active);opacity:0}.md-slider__tick--on-filled{background-color:var(--_tick-filled)}.md-slider__tick--on-inactive{background-color:var(--_tick-inactive)}.md-slider__thumb{position:absolute;display:flex;align-items:center;justify-content:center;z-index:2;pointer-events:none;inline-size:var(--_thumb-inline);block-size:var(--_thumb-block);overflow:visible}:host(.md-slider--horizontal) .md-slider__thumb{inset-block-start:50%;transform:translateY(-50%);margin-inline-start:calc(-0.5 * var(--_thumb-inline));inset-inline-start:var(--_value-pct)}:host(.md-slider--horizontal) .md-slider__thumb--start{inset-inline-start:var(--_start-pct)}:host(.md-slider--horizontal) .md-slider__thumb--end{inset-inline-start:var(--_end-pct)}:host(.md-slider--vertical) .md-slider__thumb{inline-size:var(--_thumb-block);block-size:var(--_thumb-inline);inset-inline-start:50%;inset-block-end:calc(var(--_value-pct) - var(--_thumb-inline) / 2);inset-block-start:auto;margin-inline-start:calc(-0.5 * var(--_thumb-block))}:host(.md-slider--vertical) .md-slider__thumb--start{inset-block-end:calc(var(--_start-pct) - var(--_thumb-inline) / 2)}:host(.md-slider--vertical) .md-slider__thumb--end{inset-block-end:calc(var(--_end-pct) - var(--_thumb-inline) / 2)}.md-slider__thumb-knob{display:block;inline-size:var(--_thumb-inline);block-size:var(--_thumb-block);border-radius:var(--md-sys-shape-corner-full, 9999px);background-color:var(--_thumb-fill);box-shadow:none;flex-shrink:0;transition:inline-size var(--md-sys-motion-duration-short2) var(--md-sys-motion-easing-standard), block-size var(--md-sys-motion-duration-short2) var(--md-sys-motion-easing-standard)}:host(.md-slider--vertical) .md-slider__thumb-knob{inline-size:var(--_thumb-block);block-size:var(--_thumb-inline)}:host(:not(.md-slider--disabled)) .md-slider__thumb--pressing>.md-slider__thumb-knob{inline-size:2px;block-size:calc(var(--_thumb-block) * 1.05)}:host(.md-slider--vertical:not(.md-slider--disabled)) .md-slider__thumb--pressing>.md-slider__thumb-knob{inline-size:calc(var(--_thumb-block) * 1.05);block-size:2px}.md-slider__state-layer{display:none}.md-slider__thumb--focus-visible>.md-slider__thumb-knob{outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}.md-slider__value-indicator{position:absolute;z-index:3;min-inline-size:max(28px, calc(48px + var(--md-sys-density-scale, 0) * 4px));min-block-size:max(24px, calc(44px + var(--md-sys-density-scale, 0) * 4px));display:inline-flex;align-items:center;justify-content:center;padding-block:var(--md-slider-value-padding-block, var(--md-sys-spacing-inset-md, 12px));padding-inline:var(--md-slider-value-padding-inline, var(--md-sys-spacing-inset-lg, 16px));box-sizing:border-box;background-color:var(--md-slider-value-bg);color:var(--md-slider-value-color);border-radius:var(--md-slider-value-shape, var(--md-sys-shape-corner-full, 9999px));font-family:var(--md-slider-value-font-family, var(--md-sys-typescale-label-medium-font-family, Roboto, sans-serif));font-size:var(--md-slider-value-font-size, var(--md-sys-typescale-label-medium-size, 12px));font-weight:var(--md-slider-value-font-weight, var(--md-sys-typescale-label-medium-weight, 500));line-height:var(--md-slider-value-line-height, var(--md-sys-typescale-label-medium-line-height, 16px));letter-spacing:var(--md-sys-typescale-label-medium-letter-spacing, 0.5px);white-space:nowrap;pointer-events:none}:host(.md-slider--horizontal) .md-slider__value-indicator{inset-block-end:calc(100% + 4px);left:50%;transform:translateX(-50%)}:host(.md-slider--vertical) .md-slider__value-indicator{inset-inline-start:calc(100% + 4px);inset-block-end:50%;transform:translateY(50%)}.md-slider__input-shell{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.md-slider__input{position:absolute;inset:0;inline-size:100%;block-size:100%;margin:0;padding:0;opacity:0;cursor:pointer;pointer-events:auto;box-sizing:border-box}:host(.md-slider--vertical) .md-slider__input-shell{align-items:center;justify-content:center}:host(.md-slider--vertical) .md-slider__input{position:relative;inset:auto;inline-size:var(--md-slider-track-length);block-size:max(44px, var(--_state-layer-size));transform:rotate(-90deg);transform-origin:center center}.md-slider__input--start,.md-slider__input--end{inline-size:100%;block-size:100%}:host(.md-slider--disabled){cursor:not-allowed;pointer-events:none;opacity:var(--md-sys-state-disabled-content-opacity)}:host(.md-slider--disabled) .md-slider__track-inactive{background-color:color-mix( in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), var(--md-sys-color-surface) )}:host(.md-slider--disabled) .md-slider__track-active,:host(.md-slider--disabled) .md-slider__thumb-knob{background-color:color-mix( in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent );box-shadow:none}:host(:focus-visible){outline:none}:host(.md-slider--stops) .md-slider__track-active{transition:inline-size var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90)), block-size var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90)), inset-inline-start var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90)), inset-block-end var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90))}:host(.md-slider--stops) .md-slider__tick{transition:opacity var(--md-sys-motion-spring-effects-default-duration, 200ms) var(--md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.80, 0.34, 1.00)), background-color var(--md-sys-motion-spring-effects-default-duration, 200ms) var(--md-sys-motion-spring-effects-default-easing, cubic-bezier(0.34, 0.80, 0.34, 1.00))}: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 l=class{constructor(s){t(this,s);this.mdInput=i(this,"mdInput",7);this.mdChange=i(this,"mdChange",7);this.mdFocus=i(this,"mdFocus",7);this.mdBlur=i(this,"mdBlur",7);this.mdDragStart=i(this,"mdDragStart",7);this.mdDragEnd=i(this,"mdDragEnd",7);if(s.$hostElement$["s-ei"]){this.internals=s.$hostElement$["s-ei"]}else{this.internals=s.$hostElement$.attachInternals();s.$hostElement$["s-ei"]=this.internals}this.min=0;this.max=100;this.value=50;this.step=1;this.disabled=false;this.name="";this.nameStart="";this.nameEnd="";this.variant="standard";this.range=false;this.stops=false;this.valueStart=0;this.valueEnd=100;this.size="xs";this.orientation="horizontal";this.fullHeight=false;this.valueIndicator=false;this.labeled=false;this.insetIcon=false;this.icon="";this.sliderAriaLabel="";this.ariaLabelStart="";this.ariaLabelEnd="";this.valueText="";this.valueStartText="";this.valueEndText="";this.controlled=false;this.density=0;this.keyFocusedThumb=null;this.pressingThumb=null;this._liveValue=null;this._liveStart=null;this._liveEnd=null;this.rangeDragThumb=null;this.verticalDragging=false;this.initialValue=0;this.initialStart=0;this.initialEnd=0;this.handleInput=(t,i)=>{const s=t.target;const e=Number(s.value);if(this.range){if(i){if(e>this.displayEnd){this.setEnd(e);this.setStart(e)}else{this.setStart(e)}}else{if(e<this.displayStart){this.setStart(e);this.setEnd(e)}else{this.setEnd(e)}}this.syncCssVars();this.mdInput.emit(this.rangeDetail())}else{this.setSingle(e);this.syncCssVars();this.mdInput.emit(this.singleDetail())}};this.handleChange=(t,i)=>{const s=t.target;const e=Number(s.value);if(this.range){if(i){if(e>this.displayEnd){this.setEnd(e);this.setStart(e)}else{this.setStart(e)}}else{if(e<this.displayStart){this.setStart(e);this.setEnd(e)}else{this.setEnd(e)}}this.syncCssVars();this.mdChange.emit(this.rangeDetail())}else{this.setSingle(e);this.syncCssVars();this.mdChange.emit(this.singleDetail())}this.commit()};this.onRangeRailPointerDown=t=>{if(!this.range||this.disabled)return;const i=t.currentTarget;const s=this.pointerToValue(t.clientX,t.clientY);const e=Math.abs(s-this.displayStart);const r=Math.abs(s-this.displayEnd);if(e===r){this.rangeDragThumb=s>=this.displayEnd?"end":"start"}else{this.rangeDragThumb=e<r?"start":"end"}this.pressingThumb=this.rangeDragThumb;this.mdDragStart.emit({thumb:this.rangeDragThumb,value:this.rangeDragThumb==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd});this.applyRangePointerValue(s);try{i.setPointerCapture(t.pointerId)}catch{}t.preventDefault()};this.onRangeRailPointerMove=t=>{if(!this.range||this.disabled||!this.rangeDragThumb)return;this.applyRangePointerValue(this.pointerToValue(t.clientX,t.clientY));t.preventDefault()};this.onRangeRailPointerUp=t=>{if(!this.range)return;this.endRangePointerGesture(t)};this.onRangeRailLostPointerCapture=()=>{if(!this.rangeDragThumb)return;const t=this.rangeDragThumb;const i=this.rangeDetail();this.rangeDragThumb=null;this.pressingThumb=null;this.mdChange.emit(i);this.mdDragEnd.emit({thumb:t,...i});this.commit();this.syncCssVars()};this.onVerticalRailPointerDown=t=>{if(this.range||this.disabled||this.orientation!=="vertical")return;const i=t.currentTarget;this.verticalDragging=true;this.pressingThumb="single";const s=this.pointerToValue(t.clientX,t.clientY);this.setSingle(s);this.syncCssVars();this.mdDragStart.emit({thumb:"single",value:this.displayValue});this.mdInput.emit(this.singleDetail());try{i.setPointerCapture(t.pointerId)}catch{}t.preventDefault()};this.onVerticalRailPointerMove=t=>{if(!this.verticalDragging)return;const i=this.pointerToValue(t.clientX,t.clientY);this.setSingle(i);this.syncCssVars();this.mdInput.emit(this.singleDetail());t.preventDefault()};this.onVerticalRailPointerUp=t=>{if(!this.verticalDragging)return;this.verticalDragging=false;this.pressingThumb=null;try{t.currentTarget.releasePointerCapture(t.pointerId)}catch{}const i=this.singleDetail();this.mdChange.emit(i);this.mdDragEnd.emit({thumb:"single",...i});this.commit();this.syncCssVars()};this.onVerticalRailLostPointerCapture=()=>{if(!this.verticalDragging)return;this.verticalDragging=false;this.pressingThumb=null;const t=this.singleDetail();this.mdChange.emit(t);this.mdDragEnd.emit({thumb:"single",...t});this.commit();this.syncCssVars()};this.onInputFocus=t=>i=>{const s=i.target;try{if(s.matches(":focus-visible")){this.keyFocusedThumb=t}}catch{this.keyFocusedThumb=t}this.mdFocus.emit({thumb:t})};this.onInputBlur=t=>()=>{this.keyFocusedThumb=null;this.mdBlur.emit({thumb:t})};this.onInputKeyDown=t=>i=>{if(!l.SLIDER_KEYS.has(i.key))return;if(!this.pressingThumb){this.pressingThumb=t;const i=this.range?{thumb:t,value:t==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}:{thumb:"single",value:this.displayValue};this.mdDragStart.emit(i)}};this.onInputKeyUp=t=>i=>{if(!l.SLIDER_KEYS.has(i.key))return;this.pressingThumb=null;const s=this.range?{thumb:t,value:t==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}:{thumb:"single",value:this.displayValue};this.mdDragEnd.emit(s)};this.onInputPointerDown=t=>()=>{this.pressingThumb=t;const i=this.range?{thumb:t,value:t==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}:{thumb:"single",value:this.displayValue};this.mdDragStart.emit(i)};this.onInputPointerUp=t=>()=>{this.pressingThumb=null;const i=this.range?{thumb:t,value:t==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}:{thumb:"single",value:this.displayValue};this.mdDragEnd.emit(i)}}get displayValue(){return this._liveValue??this.value}get displayStart(){return this._liveStart??this.valueStart}get displayEnd(){return this._liveEnd??this.valueEnd}setSingle(t){if(this.controlled){this._liveValue=t}else{this.value=t}}setStart(t){if(this.controlled){this._liveStart=t}else{this.valueStart=t}}setEnd(t){if(this.controlled){this._liveEnd=t}else{this.valueEnd=t}}commit(){if(this.controlled){this._liveValue=null;this._liveStart=null;this._liveEnd=null}else{if(this._liveValue!==null){this.value=this._liveValue;this._liveValue=null}if(this._liveStart!==null){this.valueStart=this._liveStart;this._liveStart=null}if(this._liveEnd!==null){this.valueEnd=this._liveEnd;this._liveEnd=null}}}connectedCallback(){this.initialValue=this.value;this.initialStart=this.valueStart;this.initialEnd=this.valueEnd}componentDidLoad(){this.clampValues();this.syncCssVars();this.syncFormValue()}syncFormValue(){if(!this.name&&!this.nameStart&&!this.nameEnd){a(this.internals,null);return}if(!this.range){a(this.internals,String(this.value));return}const t=new FormData;t.append(this.nameStart||this.name,String(this.valueStart));t.append(this.nameEnd||this.name,String(this.valueEnd));a(this.internals,t)}formResetCallback(){this.value=this.initialValue;this.valueStart=this.initialStart;this.valueEnd=this.initialEnd;this.syncFormValue()}formStateRestoreCallback(t){if(t==null)return;if(typeof t==="string"){const i=Number(t);if(Number.isFinite(i))this.value=i;return}const i=[...t.values()].map(Number).filter((t=>Number.isFinite(t)));if(i.length===2){this.valueStart=i[0];this.valueEnd=i[1]}}clampValues(){this.value=Math.min(this.max,Math.max(this.min,this.value));if(this.range){this.valueStart=Math.min(this.max,Math.max(this.min,this.valueStart));this.valueEnd=Math.min(this.max,Math.max(this.min,this.valueEnd))}}pct(t){if(this.max===this.min)return 0;return(t-this.min)/(this.max-this.min)*100}syncCssVars(){const t=this.el;const i=this.displayValue;const s=this.displayStart;const e=this.displayEnd;const r=t=>`${this.pct(t)}%`;t.style.setProperty("--_value-pct",r(i));const a=(this.min+this.max)/2;const n=this.pct(a);const l=this.pct(i);const d=Math.min(n,l);const c=Math.max(n,l);t.style.setProperty("--_center-pct",`${n}%`);t.style.setProperty("--_active-start-pct",`${d}%`);t.style.setProperty("--_active-width-pct",`${c-d}%`);const o=l<=n;t.style.setProperty("--_centered-start-gap",o?"var(--_track-thumb-gap)":"var(--_center-gap)");t.style.setProperty("--_centered-end-gap",o?"var(--_center-gap)":"var(--_track-thumb-gap)");if(this.range){t.style.setProperty("--_start-pct",r(s));t.style.setProperty("--_end-pct",r(e))}}onValuePropChange(){this._liveValue=null;this.syncCssVars();this.syncFormValue()}onValueStartPropChange(){this._liveStart=null;this.syncCssVars();this.syncFormValue()}onValueEndPropChange(){this._liveEnd=null;this.syncCssVars();this.syncFormValue()}onFormIdentityChange(){this.syncFormValue()}onLayoutDeps(){this.syncCssVars()}onBoundsChange(){this.clampValues();this.syncCssVars()}get showStops(){return this.stops}get isCentered(){return!this.range&&this.variant==="centered"}get showBubble(){return this.valueIndicator||this.labeled}formatValue(t){if(this.step>0){const i=(`${this.step}`.split(".")[1]||"").length;return t.toFixed(i)}return String(Math.round(t))}get insetArea(){return this.insetIcon&&!this.range&&this.size!=="xs"&&this.size!=="sm"}get insetOnActive(){if(!this.insetArea)return false;if(this.isCentered){const t=(this.min+this.max)/2;return this.displayValue<t}return this.displayValue>this.min}singleDetail(){return{value:this.displayValue}}rangeDetail(){return{value:this.rangeDragThumb==="start"?this.displayStart:this.displayEnd,valueStart:this.displayStart,valueEnd:this.displayEnd}}snapToStep(t){const i=this.step;if(i<=0)return Math.min(this.max,Math.max(this.min,t));const s=Math.round((t-this.min)/i);return Math.min(this.max,Math.max(this.min,this.min+s*i))}pointerToValue(t,i){const s=this.el.shadowRoot?.querySelector(".md-slider__rail");if(!s)return this.min;const e=s.getBoundingClientRect();const r=this.orientation==="vertical";let a;if(r){a=e.height>0?(e.bottom-i)/e.height:0}else{const i=getComputedStyle(this.el).direction==="rtl";a=e.width>0?i?(e.right-t)/e.width:(t-e.left)/e.width:0}a=Math.min(1,Math.max(0,a));const n=this.min+a*(this.max-this.min);return this.snapToStep(n)}applyRangePointerValue(t){if(this.rangeDragThumb==="start"){if(t>this.displayEnd){this.rangeDragThumb="end";this.pressingThumb="end";this.setEnd(t)}else{this.setStart(t)}}else if(this.rangeDragThumb==="end"){if(t<this.displayStart){this.rangeDragThumb="start";this.pressingThumb="start";this.setStart(t)}else{this.setEnd(t)}}this.syncCssVars();this.mdInput.emit(this.rangeDetail())}endRangePointerGesture(t){if(!this.rangeDragThumb)return;const i=this.rangeDragThumb;const s=this.rangeDetail();this.rangeDragThumb=null;this.pressingThumb=null;if(t){try{t.currentTarget.releasePointerCapture(t.pointerId)}catch{}}this.mdChange.emit(s);this.mdDragEnd.emit({thumb:i,...s});this.commit();this.syncCssVars()}getTickMarks(){if(!this.showStops||this.step<=0)return null;const t=this.max-this.min;const i=Math.floor(t/this.step)+1;if(i<2)return null;const e=this.orientation==="vertical";const r=this.step*.001;const a=(t,i)=>Math.abs(t-i)<r;const n=t=>{const s=t/(i-1);return`calc(var(--_tick-pad) + (100% - 2 * var(--_tick-pad)) * ${s})`};const l=(this.min+this.max)/2;const d=this.displayValue;const c=this.displayStart;const o=this.displayEnd;const h=t=>{if(this.range)return t>=c&&t<=o;if(this.isCentered){const i=Math.min(l,d);const s=Math.max(l,d);return t>=i&&t<=s}return t<=d};return Array.from({length:i},((t,i)=>{const r=this.min+i*this.step;const l=this.range?a(r,c)||a(r,o):a(r,d);const m=h(r);const u={"md-slider__tick":true,"md-slider__tick--on-active":l,"md-slider__tick--on-filled":m&&!l,"md-slider__tick--on-inactive":!m&&!l};return e?s("span",{class:u,style:{bottom:n(i)}}):s("span",{class:u,style:{insetInlineStart:n(i)}})}))}inputAriaLabel(t,i){if(t)return this.sliderAriaLabel||"slider";if(i==="start")return this.ariaLabelStart||this.sliderAriaLabel||"range start";return this.ariaLabelEnd||this.sliderAriaLabel||"range end"}wrapInputShell(t,i){return t?s("div",{class:"md-slider__input-shell"},i):i}render(){const t=this.orientation==="vertical";const i=this.showBubble;const r=this.insetArea;const a=t?{orient:"vertical"}:{};const n=this.displayValue;const l=this.displayStart;const d=this.displayEnd;return s(e,{key:"f38f7f4981a3204a40330e737263edfe2cf6f948",class:{"md-slider":true,[`md-slider--size-${this.size}`]:true,"md-slider--vertical":t,"md-slider--horizontal":!t,"md-slider--centered":this.isCentered,"md-slider--range":this.range,"md-slider--stops":this.showStops,"md-slider--inset":r,"md-slider--disabled":this.disabled},"aria-orientation":t?"vertical":"horizontal"},s("div",{key:"f40ed52fd1e840350c3cd737089efe50590a21e9",class:"md-slider__surface",part:"surface"},s("div",{key:"d53d5a9e829355365d3c549543e5c6de357c7b82",class:"md-slider__rail",onPointerDown:this.range?this.onRangeRailPointerDown:t?this.onVerticalRailPointerDown:undefined,onPointerMove:this.range?this.onRangeRailPointerMove:t?this.onVerticalRailPointerMove:undefined,onPointerUp:this.range?this.onRangeRailPointerUp:t?this.onVerticalRailPointerUp:undefined,onPointerCancel:this.range?this.onRangeRailPointerUp:t?this.onVerticalRailPointerUp:undefined,onLostPointerCapture:this.range?this.onRangeRailLostPointerCapture:t?this.onVerticalRailLostPointerCapture:undefined},s("div",{key:"09105e18b2f2ca3cafb720f85f3a274fa80474ab",class:"md-slider__track",part:"track"},s("div",{key:"3b4c474185357f9213066764add562647de56fe3",class:"md-slider__track-inactive",part:"track-inactive"}),s("div",{key:"1f0dd86eff947adeb2fb54f59a404f1903829b2d",class:"md-slider__track-active",part:"track-active"}),this.showStops&&s("div",{key:"7d7c4ac145cee460b182cde9c9dea7082ee13898",class:"md-slider__ticks"},this.getTickMarks()),r&&s("span",{key:"f1f78c02e2a28cf689b6dbfe7c1bb329cfafd8c4",class:{"md-slider__inset":true,"md-slider__inset--on-active":this.insetOnActive},part:"inset","aria-hidden":"true"},s("slot",{key:"f279cfc182914ddeb057d628416d73006286b09c",name:"inset-icon"},this.icon?s("span",{class:"md-slider__inset-font material-symbols-outlined"},this.icon):null))),this.range?[s("div",{class:{"md-slider__thumb":true,"md-slider__thumb--start":true,"md-slider__thumb--focus-visible":this.keyFocusedThumb==="start","md-slider__thumb--pressing":this.pressingThumb==="start"},style:{...!t?{insetInlineStart:"var(--_start-pct)"}:{}}},s("span",{class:"md-slider__thumb-knob",part:"thumb-knob"}),s("span",{class:"md-slider__state-layer",part:"state-layer","aria-hidden":"true"}),i&&s("span",{class:"md-slider__value-indicator",part:"value-indicator"},this.formatValue(l))),s("div",{class:{"md-slider__thumb":true,"md-slider__thumb--end":true,"md-slider__thumb--focus-visible":this.keyFocusedThumb==="end","md-slider__thumb--pressing":this.pressingThumb==="end"},style:{...!t?{insetInlineStart:"var(--_end-pct)"}:{}}},s("span",{class:"md-slider__thumb-knob",part:"thumb-knob"}),s("span",{class:"md-slider__state-layer",part:"state-layer","aria-hidden":"true"}),i&&s("span",{class:"md-slider__value-indicator",part:"value-indicator"},this.formatValue(d))),this.wrapInputShell(t,s("input",{type:"range",class:"md-slider__input md-slider__input--start",min:this.min,max:this.max,step:this.step,value:l,disabled:this.disabled,"aria-label":this.inputAriaLabel(false,"start"),"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":l,"aria-valuetext":this.valueStartText||undefined,"aria-orientation":t?"vertical":"horizontal",...a,onInput:t=>this.handleInput(t,true),onChange:t=>this.handleChange(t,true),onFocus:this.onInputFocus("start"),onBlur:this.onInputBlur("start"),onKeyDown:this.onInputKeyDown("start"),onKeyUp:this.onInputKeyUp("start"),onPointerDown:this.onInputPointerDown("start"),onPointerUp:this.onInputPointerUp("start")})),this.wrapInputShell(t,s("input",{type:"range",class:"md-slider__input md-slider__input--end",min:this.min,max:this.max,step:this.step,value:d,disabled:this.disabled,"aria-label":this.inputAriaLabel(false,"end"),"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":d,"aria-valuetext":this.valueEndText||undefined,"aria-orientation":t?"vertical":"horizontal",...a,onInput:t=>this.handleInput(t,false),onChange:t=>this.handleChange(t,false),onFocus:this.onInputFocus("end"),onBlur:this.onInputBlur("end"),onKeyDown:this.onInputKeyDown("end"),onKeyUp:this.onInputKeyUp("end"),onPointerDown:this.onInputPointerDown("end"),onPointerUp:this.onInputPointerUp("end")}))]:[s("div",{class:{"md-slider__thumb":true,"md-slider__thumb--focus-visible":this.keyFocusedThumb==="single","md-slider__thumb--pressing":this.pressingThumb==="single"},style:{...!t?{insetInlineStart:"var(--_value-pct)"}:{}}},s("span",{class:"md-slider__thumb-knob",part:"thumb-knob"}),s("span",{class:"md-slider__state-layer",part:"state-layer","aria-hidden":"true"}),i&&s("span",{class:"md-slider__value-indicator",part:"value-indicator"},this.formatValue(n))),this.wrapInputShell(t,s("input",{type:"range",class:"md-slider__input",min:this.min,max:this.max,step:this.step,value:n,disabled:this.disabled,"aria-label":this.inputAriaLabel(true),"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":n,"aria-valuetext":this.valueText||undefined,"aria-orientation":t?"vertical":"horizontal",...a,onInput:t=>this.handleInput(t),onChange:t=>this.handleChange(t),onFocus:this.onInputFocus("single"),onBlur:this.onInputBlur("single"),onKeyDown:this.onInputKeyDown("single"),onKeyUp:this.onInputKeyUp("single"),onPointerDown:this.onInputPointerDown("single"),onPointerUp:this.onInputPointerUp("single")}))])))}static get formAssociated(){return true}get el(){return r(this)}static get watchers(){return{value:[{onValuePropChange:0}],valueStart:[{onValueStartPropChange:0}],valueEnd:[{onValueEndPropChange:0}],name:[{onFormIdentityChange:0}],nameStart:[{onFormIdentityChange:0}],nameEnd:[{onFormIdentityChange:0}],range:[{onFormIdentityChange:0},{onLayoutDeps:0}],variant:[{onLayoutDeps:0}],min:[{onBoundsChange:0}],max:[{onBoundsChange:0}]}}};l.SLIDER_KEYS=new Set(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown"]);l.style=n();export{l as md_slider};
2
+ //# sourceMappingURL=p-7112374d.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as e,c as t,h as a,H as s,a as i}from"./p-DTaX19_O.js";import{t as o}from"./p-DYBUr7K_.js";const n=()=>`:host{--_container-color:var(--md-fab-menu-item-container-color, var(--md-sys-color-primary-container));--_label-color:var(--md-fab-menu-item-label-color, var(--md-sys-color-on-primary-container));--_icon-color:var(--md-fab-menu-item-icon-color, var(--_label-color));--_icon-size:var(--md-fab-menu-item-icon-size, max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-menu-item-container-shape, var(--md-sys-shape-corner-full, 9999px));--_state-layer-color:var(--_label-color);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;min-height:max(32px, calc(48px + var(--md-sys-density-scale, 0) * 4px));padding-inline:var(--md-sys-spacing-inset-xl, 24px);gap:var(--md-sys-spacing-gap-sm, 8px);background-color:var(--_container-color);color:var(--_label-color);border-radius:var(--_container-shape);box-shadow:none;font-family:var(--md-sys-typescale-title-small-font-family, Roboto, sans-serif);font-size:max(12px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-title-small-font-weight, 500);letter-spacing:var(--md-sys-typescale-title-small-letter-spacing, 0.1px);line-height:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));transition:background-color 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));-webkit-tap-highlight-color:transparent;white-space:nowrap}:host(.md-fab-menu-item--with-icon){padding-inline-start:var(--md-sys-spacing-inset-lg, 16px)}.md-fab-menu-item__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-menu-item__state-layer{opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08)}:host(:focus-visible) .md-fab-menu-item__state-layer,:host(.md-fab-menu-item--roving-focus-visible:not(:focus)) .md-fab-menu-item__state-layer{opacity:var(--md-sys-state-focus-state-layer-opacity, 0.12)}:host(:active) .md-fab-menu-item__state-layer{opacity:var(--md-sys-state-pressed-state-layer-opacity, 0.12)}:host(:focus:not(:focus-visible)){outline:none}:host(:focus-visible),:host(.md-fab-menu-item--roving-focus-visible:not(:focus)){outline:3px solid var(--md-sys-color-secondary);outline-offset:2px;z-index:1}:host(.md-fab-menu-item--disabled){cursor:default;pointer-events:none;--_container-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_label-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;--_container-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_label-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent)}:host(.md-fab-menu-item--disabled:hover) .md-fab-menu-item__state-layer,:host(.md-fab-menu-item--disabled:active) .md-fab-menu-item__state-layer,:host(.md-fab-menu-item--disabled:focus-visible) .md-fab-menu-item__state-layer{opacity:0}:host([soft-disabled]) .md-fab-menu-item__state-layer{display:none}.md-fab-menu-item__icon{color:var(--_icon-color);font-size:var(--_icon-size);inline-size:var(--_icon-size);block-size:var(--_icon-size);display:flex;align-items:center;justify-content:center;flex-shrink:0}slot[name="icon"]{display:contents}::slotted([slot="icon"]){color:var(--_icon-color);inline-size:var(--_icon-size);block-size:var(--_icon-size);flex-shrink:0;fill:currentColor}.md-fab-menu-item__label{display:flex;align-items:center;white-space:nowrap}.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, 20px);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-menu-item__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-menu-item--disabled){border-color:GrayText;color:GrayText;opacity:1}.md-fab-menu-item__state-layer{display:none}.md-fab-menu-item__icon,.md-fab-menu-item__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 r=class{constructor(a){e(this,a);this.mdClick=t(this,"mdClick",7);this.icon="";this.label="";this.disabled=false;this.softDisabled=false;this.rovingFocusVisible=false;this.density=0;this.hasSlottedIcon=false;this.handleClick=e=>{if(this.isDisabled){e.preventDefault();e.stopPropagation();return}this.mdClick.emit()};this.handleKeyDown=e=>{if(e.key==="Enter"||e.key===" "){e.preventDefault();if(!this.isDisabled){o(this.el);this.mdClick.emit()}}}}get isDisabled(){return this.disabled||this.softDisabled}componentWillLoad(){if(!this.el.hasAttribute("tabindex")){this.el.setAttribute("tabindex","-1")}}componentDidLoad(){const e=this.el.shadowRoot;if(!e)return;const t=e.querySelector('slot[name="icon"]');t?.addEventListener("slotchange",(()=>{this.hasSlottedIcon=t.assignedElements().length>0}))}render(){const e=!!this.icon;const t=this.isDisabled;return a(s,{key:"776acd92b0443f4617576ce6e628c9700daa1d1f",class:{"md-fab-menu-item":true,"md-fab-menu-item--with-icon":e||this.hasSlottedIcon,"md-fab-menu-item--disabled":t,"md-fab-menu-item--roving-focus-visible":this.rovingFocusVisible},role:"menuitem","aria-disabled":t?"true":null,onClick:this.handleClick,onKeyDown:this.handleKeyDown},a("md-ripple",{key:"0e1e1379829c42a0730605a6d14ccf082f74bfd7",disabled:t}),a("span",{key:"83d7dfdc10c6389f9819207f2613519bb0ca118b",class:"md-fab-menu-item__state-layer",part:"state-layer","aria-hidden":"true"}),a("slot",{key:"4f5a17c3fcf744501d82e7942d5b0940a9889247",name:"icon"},e&&a("span",{key:"a8e7e1d9025543e67bacfb5b7c8fd8ab4766a657",class:"md-fab-menu-item__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon)),a("span",{key:"e5fc14ba00df55c92acc7ff3d3024ebe9491afd9",class:"md-fab-menu-item__label",part:"label"},this.label?this.label:a("slot",null)))}get el(){return i(this)}};r.style=n();export{r as md_fab_menu_item};
2
- //# sourceMappingURL=p-1a8ec5bc.entry.js.map
1
+ import{r as e,c as t,h as s,H as a,g as i}from"./p-WmvQpZnM.js";import{t as o}from"./p-DYBUr7K_.js";const n=()=>`:host{--_container-color:var(--md-fab-menu-item-container-color, var(--md-sys-color-primary-container));--_label-color:var(--md-fab-menu-item-label-color, var(--md-sys-color-on-primary-container));--_icon-color:var(--md-fab-menu-item-icon-color, var(--_label-color));--_icon-size:var(--md-fab-menu-item-icon-size, max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px)));--_container-shape:var(--md-fab-menu-item-container-shape, var(--md-sys-shape-corner-full, 9999px));--_state-layer-color:var(--_label-color);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;min-height:max(32px, calc(48px + var(--md-sys-density-scale, 0) * 4px));padding-inline:var(--md-sys-spacing-inset-xl, 24px);gap:var(--md-sys-spacing-gap-sm, 8px);background-color:var(--_container-color);color:var(--_label-color);border-radius:var(--_container-shape);box-shadow:none;font-family:var(--md-sys-typescale-title-small-font-family, Roboto, sans-serif);font-size:max(12px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-title-small-font-weight, 500);letter-spacing:var(--md-sys-typescale-title-small-letter-spacing, 0.1px);line-height:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));transition:background-color 280ms var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));-webkit-tap-highlight-color:transparent;white-space:nowrap}:host(.md-fab-menu-item--with-icon){padding-inline-start:var(--md-sys-spacing-inset-lg, 16px)}.md-fab-menu-item__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-menu-item__state-layer{opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08)}:host(:focus-visible) .md-fab-menu-item__state-layer,:host(.md-fab-menu-item--roving-focus-visible:not(:focus)) .md-fab-menu-item__state-layer{opacity:var(--md-sys-state-focus-state-layer-opacity, 0.12)}:host(:active) .md-fab-menu-item__state-layer{opacity:var(--md-sys-state-pressed-state-layer-opacity, 0.12)}:host(:focus:not(:focus-visible)){outline:none}:host(:focus-visible),:host(.md-fab-menu-item--roving-focus-visible:not(:focus)){outline:3px solid var(--md-sys-color-secondary);outline-offset:2px;z-index:1}:host(.md-fab-menu-item--disabled){cursor:default;pointer-events:none;--_container-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_label-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;--_container-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_label-color:color-mix(in srgb, var(--md-sys-color-on-surface) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent)}:host(.md-fab-menu-item--disabled:hover) .md-fab-menu-item__state-layer,:host(.md-fab-menu-item--disabled:active) .md-fab-menu-item__state-layer,:host(.md-fab-menu-item--disabled:focus-visible) .md-fab-menu-item__state-layer{opacity:0}:host([soft-disabled]) .md-fab-menu-item__state-layer{display:none}.md-fab-menu-item__icon{color:var(--_icon-color);font-size:var(--_icon-size);inline-size:var(--_icon-size);block-size:var(--_icon-size);display:flex;align-items:center;justify-content:center;flex-shrink:0}slot[name="icon"]{display:contents}::slotted([slot="icon"]){color:var(--_icon-color);inline-size:var(--_icon-size);block-size:var(--_icon-size);flex-shrink:0;fill:currentColor}.md-fab-menu-item__label{display:flex;align-items:center;white-space:nowrap}.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, 20px);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-menu-item__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-menu-item--disabled){border-color:GrayText;color:GrayText;opacity:1}.md-fab-menu-item__state-layer{display:none}.md-fab-menu-item__icon,.md-fab-menu-item__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 r=class{constructor(s){e(this,s);this.mdClick=t(this,"mdClick",7);this.icon="";this.label="";this.disabled=false;this.softDisabled=false;this.rovingFocusVisible=false;this.density=0;this.hasSlottedIcon=false;this.handleClick=e=>{if(this.isDisabled){e.preventDefault();e.stopPropagation();return}this.mdClick.emit()};this.handleKeyDown=e=>{if(e.key==="Enter"||e.key===" "){e.preventDefault();if(!this.isDisabled){o(this.el);this.mdClick.emit()}}}}get isDisabled(){return this.disabled||this.softDisabled}componentWillLoad(){if(!this.el.hasAttribute("tabindex")){this.el.setAttribute("tabindex","-1")}}componentDidLoad(){const e=this.el.shadowRoot;if(!e)return;const t=e.querySelector('slot[name="icon"]');t?.addEventListener("slotchange",(()=>{this.hasSlottedIcon=t.assignedElements().length>0}))}render(){const e=!!this.icon;const t=this.isDisabled;return s(a,{key:"776acd92b0443f4617576ce6e628c9700daa1d1f",class:{"md-fab-menu-item":true,"md-fab-menu-item--with-icon":e||this.hasSlottedIcon,"md-fab-menu-item--disabled":t,"md-fab-menu-item--roving-focus-visible":this.rovingFocusVisible},role:"menuitem","aria-disabled":t?"true":null,onClick:this.handleClick,onKeyDown:this.handleKeyDown},s("md-ripple",{key:"0e1e1379829c42a0730605a6d14ccf082f74bfd7",disabled:t}),s("span",{key:"83d7dfdc10c6389f9819207f2613519bb0ca118b",class:"md-fab-menu-item__state-layer",part:"state-layer","aria-hidden":"true"}),s("slot",{key:"4f5a17c3fcf744501d82e7942d5b0940a9889247",name:"icon"},e&&s("span",{key:"a8e7e1d9025543e67bacfb5b7c8fd8ab4766a657",class:"md-fab-menu-item__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.icon)),s("span",{key:"e5fc14ba00df55c92acc7ff3d3024ebe9491afd9",class:"md-fab-menu-item__label",part:"label"},this.label?this.label:s("slot",null)))}get el(){return i(this)}};r.style=n();export{r as md_fab_menu_item};
2
+ //# sourceMappingURL=p-7858833e.entry.js.map
@@ -0,0 +1,2 @@
1
+ import{r as s,c as t,h as e,H as i,g as a}from"./p-WmvQpZnM.js";import{s as r,a as o,g as c,c as n,r as l}from"./p-DWxN44zD.js";const d=()=>`:host{--_track-w:var(--md-switch-track-width, max(28px, calc(52px + var(--md-sys-density-scale, 0) * 6px)));--_track-h:max(16px, calc(var(--md-switch-track-height, 32px) + var(--md-sys-density-scale, 0) * 4px));--_track-border:2px;--_sl:calc(var(--_track-h) + 8px);--_handle-sel:var(--md-switch-handle-size, calc(var(--_track-h) * 0.75));--_handle-unsel:calc(var(--_handle-sel) * 2 / 3);--_handle-press:calc(var(--_handle-sel) * 7 / 6);--_offset-unsel:calc(var(--_track-h) / 2 - var(--_sl) / 2 - var(--_track-border));--_offset-sel:calc(var(--_track-w) - var(--_track-h) / 2 - var(--_sl) / 2 - var(--_track-border));--_spring-spatial:var(--md-sys-motion-spring-spatial-fast-duration, 350ms) var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90));--_spring-effects:var(--md-sys-motion-spring-effects-fast-duration, 150ms) var(--md-sys-motion-spring-effects-fast-easing, cubic-bezier(0.31, 0.94, 0.34, 1.00));--_track-color:var(--md-switch-track-color, var(--md-sys-color-surface-container-highest, #E6E0E9));--_track-outline-color:var(--md-switch-track-outline-color, var(--md-sys-color-outline, #79747E));--_handle-color:var(--md-switch-handle-color, var(--md-sys-color-outline, #79747E));--_state-layer-color:var(--md-switch-state-layer-color, var(--md-sys-color-on-surface, #1C1B1F));--_icon-color:var(--md-switch-icon-color, var(--md-sys-color-surface-container-highest, #E6E0E9));display:inline-flex;align-items:center;justify-content:center;min-block-size:max(48px, var(--_track-h));inline-size:var(--_track-w);cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;user-select:none;vertical-align:middle;flex-shrink:0}:host(.md-switch--selected){--_track-color:var(--md-switch-selected-track-color, var(--md-sys-color-primary, #6750A4));--_track-outline-color:var(--md-switch-selected-track-color, var(--md-sys-color-primary, #6750A4));--_handle-color:var(--md-switch-selected-handle-color, var(--md-sys-color-on-primary, #FFFFFF));--_state-layer-color:var(--md-switch-state-layer-color, var(--md-sys-color-primary, #6750A4));--_icon-color:var(--md-switch-selected-icon-color, var(--md-sys-color-on-primary-container, #21005D))}:host(:not(.md-switch--selected):hover:not(.md-switch--disabled)){--_handle-color:var(--md-sys-color-on-surface-variant, #49454F);--_track-outline-color:var(--md-sys-color-on-surface, #1C1B1F)}:host(:not(.md-switch--selected):focus-visible:not(.md-switch--disabled)){--_handle-color:var(--md-sys-color-on-surface-variant, #49454F);--_track-outline-color:var(--md-sys-color-on-surface, #1C1B1F)}:host(:not(.md-switch--selected).md-switch--pressed:not(.md-switch--disabled)){--_handle-color:var(--md-sys-color-on-surface-variant, #49454F);--_track-outline-color:var(--md-sys-color-on-surface, #1C1B1F)}:host(.md-switch--selected:hover:not(.md-switch--disabled)){--_handle-color:var(--md-sys-color-primary-container, #EADDFF)}:host(.md-switch--selected:focus-visible:not(.md-switch--disabled)){--_handle-color:var(--md-sys-color-primary-container, #EADDFF)}:host(.md-switch--selected.md-switch--pressed:not(.md-switch--disabled)){--_handle-color:var(--md-sys-color-primary-container, #EADDFF)}.md-switch__track{position:relative;inline-size:var(--_track-w);block-size:var(--_track-h);border-radius:var(--md-sys-shape-corner-full, 9999px);border:var(--_track-border) solid var(--_track-outline-color);background-color:var(--_track-color);box-sizing:border-box;transition:background-color var(--_spring-effects), border-color var(--_spring-effects)}.md-switch__handle-container{position:absolute;inset-block-start:50%;inset-inline-start:var(--_offset-unsel);inline-size:var(--_sl);block-size:var(--_sl);transform:translateY(-50%);display:flex;align-items:center;justify-content:center;transition:inset-inline-start var(--_spring-spatial);pointer-events:none}:host(.md-switch--selected) .md-switch__handle-container{inset-inline-start:var(--_offset-sel)}.md-switch__state-layer{position:absolute;inset:0;border-radius:var(--md-sys-shape-corner-full, 9999px);background-color:var(--_state-layer-color);opacity:0;transition:opacity var(--_spring-effects);pointer-events:none}:host(:hover:not(.md-switch--disabled)) .md-switch__state-layer{opacity:var(--md-sys-state-hover-state-layer-opacity, 0.08)}:host(:focus-visible:not(.md-switch--disabled)) .md-switch__state-layer{opacity:var(--md-sys-state-focus-state-layer-opacity, 0.12)}:host(:active:not(.md-switch--disabled)) .md-switch__state-layer,:host(.md-switch--pressed:not(.md-switch--disabled)) .md-switch__state-layer{opacity:var(--md-sys-state-pressed-state-layer-opacity, 0.12)}.md-switch__handle{position:relative;z-index:1;inline-size:var(--_handle-unsel);block-size:var(--_handle-unsel);border-radius:var(--md-sys-shape-corner-full, 9999px);background-color:var(--_handle-color);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:inline-size var(--_spring-spatial), block-size var(--_spring-spatial), background-color var(--_spring-effects)}:host(.md-switch--selected) .md-switch__handle{inline-size:var(--_handle-sel);block-size:var(--_handle-sel)}:host(.md-switch--with-icon:not(.md-switch--selected)) .md-switch__handle{inline-size:var(--_handle-sel);block-size:var(--_handle-sel)}:host(.md-switch--pressed:not(.md-switch--disabled)) .md-switch__handle{inline-size:var(--_handle-press);block-size:var(--_handle-press)}.md-switch__icon{font-size:16px;inline-size:16px;block-size:16px;color:var(--_icon-color);pointer-events:none;line-height:1}.md-switch__handle ::slotted(*){inline-size:16px;block-size:16px;font-size:16px;color:var(--_icon-color);pointer-events:none}.material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-weight:normal;font-style:normal;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}:host(:focus-visible:not([disabled])) .md-switch__track,:host(.md-switch--focus-ring:not([disabled])) .md-switch__track{outline:3px solid var(--md-switch-focus-ring-color, var(--md-sys-color-secondary, #625B71));outline-offset:2px}:host(.md-switch--disabled){cursor:default;pointer-events:none}:host([soft-disabled]){cursor:default;pointer-events:auto}:host([soft-disabled]) .md-switch__state-layer{display:none}:host(.md-switch--disabled:not(.md-switch--selected)){--_track-color:color-mix(in srgb, var(--md-sys-color-surface-container-highest, #E6E0E9) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_track-outline-color:color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_handle-color:color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent);--_icon-color:color-mix(in srgb, var(--md-sys-color-surface-container-highest, #E6E0E9) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent)}:host(.md-switch--disabled.md-switch--selected){--_track-color:color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_track-outline-color:color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);--_handle-color:var(--md-sys-color-surface, #FEF7FF);--_icon-color:color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent)}:host(.md-switch--disabled) .md-switch__state-layer{display:none}@media (prefers-reduced-motion: reduce){.md-switch__handle,.md-switch__handle-container,.md-switch__track,.md-switch__state-layer{transition-duration:0.01ms !important}}@media (forced-colors: active){.md-switch__track{border-color:CanvasText}.md-switch__handle{background-color:CanvasText}.md-switch__icon{color:Canvas}:host(.md-switch--selected) .md-switch__track{background-color:Highlight;border-color:Highlight}:host(.md-switch--selected) .md-switch__handle{background-color:HighlightText}:host(.md-switch--selected) .md-switch__icon{color:Highlight}:host(:focus-visible:not([disabled])) .md-switch__track,:host(.md-switch--focus-ring:not([disabled])) .md-switch__track{outline-color:Highlight}:host(.md-switch--disabled){opacity:0.5}}: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 h=class{constructor(e){s(this,e);this.mdInput=t(this,"mdInput",7);this.mdChange=t(this,"mdChange",6);this.mdValidityChange=t(this,"mdValidityChange",5);if(e.$hostElement$["s-ei"]){this.internals=e.$hostElement$["s-ei"]}else{this.internals=e.$hostElement$.attachInternals();e.$hostElement$["s-ei"]=this.internals}this.valueMissingLabel="Please turn this on if you want to proceed.";this.customValidityMessage="";this.selected=false;this.disabled=false;this.softDisabled=false;this.required=false;this.name="";this.value="on";this.icons=false;this.showOnlySelectedIcon=false;this.selectedIcon="check";this.unselectedIcon="close";this.density=0;this.pressed=false;this.programmaticFocus=false;this.initialSelected=false;this.lastValidityKey=null;this.toggle=()=>{if(this.isDisabled)return;const s=!this.selected;const t=this.mdInput.emit({selected:s});if(t.defaultPrevented)return;this.selected=s;this.mdChange.emit({selected:this.selected})};this.handleKeyDown=s=>{if(this.isDisabled)return;if(s.key===" "){s.preventDefault();if(s.repeat)return;this.pressed=true;this.toggle();setTimeout((()=>{this.pressed=false}),150)}};this.handlePointerDown=()=>{if(!this.isDisabled)this.pressed=true};this.handlePointerUp=()=>{this.pressed=false};this.handleBlur=()=>{this.programmaticFocus=false}}get isDisabled(){return this.disabled||this.softDisabled}componentWillLoad(){this.initialSelected=this.selected;this.syncFormValue()}onValueChange(){this.syncFormValue()}formResetCallback(){this.selected=this.initialSelected}async setFocus(){this.programmaticFocus=true;this.el.focus()}syncFormValue(){r(this.internals,this.selected?this.value:null);this.syncValidity()}syncValidity(){o(this.internals,{missing:this.required&&!this.selected,missingMessage:this.valueMissingLabel,customMessage:this.customValidityMessage});this.emitValidityChange()}async getValidity(){return c(this.internals)}emitValidityChange(){const s=c(this.internals);const t=`${s.valid}|${s.validationMessage}`;if(this.lastValidityKey===t)return;const e=this.lastValidityKey!==null;this.lastValidityKey=t;if(e)this.mdValidityChange.emit(s)}async checkValidity(){return n(this.internals)}async reportValidity(){return l(this.internals)}async setCustomValidity(s){this.customValidityMessage=s;this.syncValidity()}render(){const s=this.icons||this.showOnlySelectedIcon;const t=this.icons;const a=this.selected?s:t;return e(i,{key:"59294a5eac12dba6ae727560c8c97c64d86597a8",role:"switch","aria-checked":String(this.selected),"aria-disabled":this.isDisabled?"true":null,"aria-required":this.required?"true":null,tabindex:this.disabled?"-1":"0",class:{"md-switch":true,"md-switch--selected":this.selected,"md-switch--disabled":this.disabled||this.softDisabled,"md-switch--pressed":this.pressed,"md-switch--with-icon":a,"md-switch--focus-ring":this.programmaticFocus},onClick:this.toggle,onKeyDown:this.handleKeyDown,onPointerDown:this.handlePointerDown,onPointerUp:this.handlePointerUp,onPointerLeave:this.handlePointerUp,onPointerCancel:this.handlePointerUp,onBlur:this.handleBlur},e("div",{key:"09a7214653ee84ff186937bde848aa62068739dc",class:"md-switch__track",part:"track"},e("div",{key:"6c64617cc7eb635e09304416403af1d7c616d2c6",class:"md-switch__handle-container"},e("span",{key:"dac2824318a1e395dea6b8f36d5ae75fe302fc7e",class:"md-switch__state-layer",part:"state-layer","aria-hidden":"true"}),e("span",{key:"bb9625af63450459b2914419fc202e587a4a76a9",class:"md-switch__handle",part:"handle"},a&&(this.selected?e("slot",{name:"selected-icon"},e("span",{class:"md-switch__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.selectedIcon)):e("slot",{name:"unselected-icon"},e("span",{class:"md-switch__icon material-symbols-outlined",part:"icon","aria-hidden":"true"},this.unselectedIcon)))))))}static get formAssociated(){return true}get el(){return a(this)}static get watchers(){return{selected:[{onValueChange:0}],value:[{onValueChange:0}],required:[{syncValidity:0}],valueMissingLabel:[{syncValidity:0}]}}};h.style=d();export{h as md_switch};
2
+ //# sourceMappingURL=p-7c8842bf.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["mdSwitchCss","MdSwitch","constructor","hostRef","this","valueMissingLabel","customValidityMessage","selected","disabled","softDisabled","required","name","value","icons","showOnlySelectedIcon","selectedIcon","unselectedIcon","density","pressed","programmaticFocus","initialSelected","lastValidityKey","toggle","isDisabled","proposed","inputEvent","mdInput","emit","defaultPrevented","mdChange","handleKeyDown","e","key","preventDefault","repeat","setTimeout","handlePointerDown","handlePointerUp","handleBlur","componentWillLoad","syncFormValue","onValueChange","formResetCallback","setFocus","el","focus","setFormValue","internals","syncValidity","setValidityState","missing","missingMessage","customMessage","emitValidityChange","getValidity","getValidityOf","v","valid","validationMessage","primed","mdValidityChange","checkValidity","checkValidityOf","reportValidity","reportValidityOf","setCustomValidity","message","render","showSelectedIcon","showUnselectedIcon","showIcon","h","Host","role","String","tabindex","class","onClick","onKeyDown","onPointerDown","onPointerUp","onPointerLeave","onPointerCancel","onBlur","part"],"sources":["src/components/md-switch/md-switch.css?tag=md-switch&encapsulation=shadow","src/components/md-switch/md-switch.tsx"],"sourcesContent":["/* ==========================================================\n md-switch — Material Design 3 Switch\n Spec: https://m3.material.io/components/switch/specs\n\n MD3-Expressive motion: the thumb morphs (16→24→28dp) and slides on a\n SPATIAL spring, colors cross-fade on an EFFECTS spring. All sizing derives\n from the track tokens via calc(), so resizing the track keeps the thumb\n aligned (no hand-tuned offsets).\n\n PUBLIC CSS CUSTOM PROPERTIES (override per-instance):\n --md-switch-track-width Track width (52px)\n --md-switch-track-height Track height (32px) — density knob\n --md-switch-handle-size Selected handle diameter (derived\n from track height; unselected +\n pressed scale from it)\n --md-switch-track-color Unselected track fill\n --md-switch-track-outline-color Unselected track outline\n --md-switch-handle-color Unselected handle fill\n --md-switch-selected-track-color Selected track fill\n --md-switch-selected-handle-color Selected handle fill\n --md-switch-icon-color Unselected icon color\n --md-switch-selected-icon-color Selected icon color\n --md-switch-state-layer-color Hover / focus / press overlay\n --md-switch-focus-ring-color Focus-ring color\n\n CSS PARTS:\n track Track container\n state-layer State-layer overlay (centered on handle)\n handle Handle / thumb\n icon Check or close icon\n\n SLOTS:\n (none)\n ========================================================== */\n\n/* ==========================================================\n 1. HOST — touch target, sizing, motion & base tokens\n ========================================================== */\n\n:host {\n /* ── Sizing (density scales from the track) ── */\n /* Track width shrinks proportionally with density to maintain the ~1.625\n aspect ratio (52:32). Each rung removes 6px width vs 4px height. */\n --_track-w: var(--md-switch-track-width, max(28px, calc(52px + var(--md-sys-density-scale, 0) * 6px)));\n /* Global density knob: the track height drives every derived size (handle,\n state layer, thumb travel). Each `data-density` rung (0…-4) trims 4px,\n floored at 16px; unchanged at density 0. The host min-block-size stays\n max(48px, …) so the touch target is preserved even as the track tightens. */\n --_track-h: max(16px, calc(var(--md-switch-track-height, 32px) + var(--md-sys-density-scale, 0) * 4px));\n --_track-border: 2px;\n /* State-layer / handle-container disc, proportional to the track. */\n --_sl: calc(var(--_track-h) + 8px);\n /* Thumb sizes: selected is the knob; unselected + pressed scale from it. */\n --_handle-sel: var(--md-switch-handle-size, calc(var(--_track-h) * 0.75));\n --_handle-unsel: calc(var(--_handle-sel) * 2 / 3);\n --_handle-press: calc(var(--_handle-sel) * 7 / 6);\n /* Thumb-centre travel, derived so the thumb stays inset by half the track\n height at each end regardless of track size. */\n --_offset-unsel: calc(var(--_track-h) / 2 - var(--_sl) / 2 - var(--_track-border));\n --_offset-sel: calc(var(--_track-w) - var(--_track-h) / 2 - var(--_sl) / 2 - var(--_track-border));\n\n /* ── Motion (M3-Expressive springs) ── */\n --_spring-spatial: var(--md-sys-motion-spring-spatial-fast-duration, 350ms)\n var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90));\n --_spring-effects: var(--md-sys-motion-spring-effects-fast-duration, 150ms)\n var(--md-sys-motion-spring-effects-fast-easing, cubic-bezier(0.31, 0.94, 0.34, 1.00));\n\n /* ── Unselected color tokens ── */\n --_track-color: var(--md-switch-track-color, var(--md-sys-color-surface-container-highest, #E6E0E9));\n --_track-outline-color: var(--md-switch-track-outline-color, var(--md-sys-color-outline, #79747E));\n --_handle-color: var(--md-switch-handle-color, var(--md-sys-color-outline, #79747E));\n --_state-layer-color: var(--md-switch-state-layer-color, var(--md-sys-color-on-surface, #1C1B1F));\n --_icon-color: var(--md-switch-icon-color, var(--md-sys-color-surface-container-highest, #E6E0E9));\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-block-size: max(48px, var(--_track-h));\n inline-size: var(--_track-w);\n cursor: pointer;\n outline: none;\n -webkit-tap-highlight-color: transparent;\n user-select: none;\n vertical-align: middle;\n flex-shrink: 0;\n}\n\n/* ==========================================================\n 2. SELECTED — color overrides\n ========================================================== */\n\n:host(.md-switch--selected) {\n --_track-color: var(--md-switch-selected-track-color, var(--md-sys-color-primary, #6750A4));\n --_track-outline-color: var(--md-switch-selected-track-color, var(--md-sys-color-primary, #6750A4));\n --_handle-color: var(--md-switch-selected-handle-color, var(--md-sys-color-on-primary, #FFFFFF));\n --_state-layer-color: var(--md-switch-state-layer-color, var(--md-sys-color-primary, #6750A4));\n --_icon-color: var(--md-switch-selected-icon-color, var(--md-sys-color-on-primary-container, #21005D));\n}\n\n/* ==========================================================\n 3. INTERACTIVE STATES — hover / focus / press colors\n Per MD3 spec, handle & track outline colors shift on interaction.\n ========================================================== */\n\n/* ── Unselected ── */\n\n:host(:not(.md-switch--selected):hover:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-on-surface-variant, #49454F);\n --_track-outline-color: var(--md-sys-color-on-surface, #1C1B1F);\n}\n\n:host(:not(.md-switch--selected):focus-visible:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-on-surface-variant, #49454F);\n --_track-outline-color: var(--md-sys-color-on-surface, #1C1B1F);\n}\n\n:host(:not(.md-switch--selected).md-switch--pressed:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-on-surface-variant, #49454F);\n --_track-outline-color: var(--md-sys-color-on-surface, #1C1B1F);\n}\n\n/* ── Selected ── */\n\n:host(.md-switch--selected:hover:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-primary-container, #EADDFF);\n}\n\n:host(.md-switch--selected:focus-visible:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-primary-container, #EADDFF);\n}\n\n:host(.md-switch--selected.md-switch--pressed:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-primary-container, #EADDFF);\n}\n\n/* ==========================================================\n 4. TRACK — colors cross-fade on the effects spring\n ========================================================== */\n\n.md-switch__track {\n position: relative;\n inline-size: var(--_track-w);\n block-size: var(--_track-h);\n border-radius: var(--md-sys-shape-corner-full, 9999px);\n border: var(--_track-border) solid var(--_track-outline-color);\n background-color: var(--_track-color);\n box-sizing: border-box;\n transition:\n background-color var(--_spring-effects),\n border-color var(--_spring-effects);\n}\n\n/* ==========================================================\n 5. HANDLE CONTAINER — state-layer disc, slides on the spatial spring\n via inset-inline-start (auto-mirrors in RTL). Offsets are derived from\n the track tokens (see :host --_offset-*).\n ========================================================== */\n\n.md-switch__handle-container {\n position: absolute;\n inset-block-start: 50%;\n inset-inline-start: var(--_offset-unsel);\n inline-size: var(--_sl);\n block-size: var(--_sl);\n transform: translateY(-50%);\n display: flex;\n align-items: center;\n justify-content: center;\n transition: inset-inline-start var(--_spring-spatial);\n pointer-events: none;\n}\n\n:host(.md-switch--selected) .md-switch__handle-container {\n inset-inline-start: var(--_offset-sel);\n}\n\n/* ==========================================================\n 6. STATE LAYER — fills the handle container, centered on the handle\n ========================================================== */\n\n.md-switch__state-layer {\n position: absolute;\n inset: 0;\n border-radius: var(--md-sys-shape-corner-full, 9999px);\n background-color: var(--_state-layer-color);\n opacity: 0;\n transition: opacity var(--_spring-effects);\n pointer-events: none;\n}\n\n:host(:hover:not(.md-switch--disabled)) .md-switch__state-layer {\n opacity: var(--md-sys-state-hover-state-layer-opacity, 0.08);\n}\n\n:host(:focus-visible:not(.md-switch--disabled)) .md-switch__state-layer {\n opacity: var(--md-sys-state-focus-state-layer-opacity, 0.12);\n}\n\n:host(:active:not(.md-switch--disabled)) .md-switch__state-layer,\n:host(.md-switch--pressed:not(.md-switch--disabled)) .md-switch__state-layer {\n opacity: var(--md-sys-state-pressed-state-layer-opacity, 0.12);\n}\n\n/* ==========================================================\n 7. HANDLE — morphs size per state on the spatial spring\n Unselected (no icon): --_handle-unsel (16dp @ 32 track)\n Unselected (icon) / Selected: --_handle-sel (24dp)\n Pressed: --_handle-press (28dp)\n ========================================================== */\n\n.md-switch__handle {\n position: relative;\n z-index: 1;\n inline-size: var(--_handle-unsel);\n block-size: var(--_handle-unsel);\n border-radius: var(--md-sys-shape-corner-full, 9999px);\n background-color: var(--_handle-color);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n transition:\n inline-size var(--_spring-spatial),\n block-size var(--_spring-spatial),\n background-color var(--_spring-effects);\n}\n\n:host(.md-switch--selected) .md-switch__handle {\n inline-size: var(--_handle-sel);\n block-size: var(--_handle-sel);\n}\n\n:host(.md-switch--with-icon:not(.md-switch--selected)) .md-switch__handle {\n inline-size: var(--_handle-sel);\n block-size: var(--_handle-sel);\n}\n\n:host(.md-switch--pressed:not(.md-switch--disabled)) .md-switch__handle {\n inline-size: var(--_handle-press);\n block-size: var(--_handle-press);\n}\n\n/* ==========================================================\n 8. ICON — 16px Material Symbols\n ========================================================== */\n\n.md-switch__icon {\n font-size: 16px;\n inline-size: 16px;\n block-size: 16px;\n color: var(--_icon-color);\n pointer-events: none;\n line-height: 1;\n}\n\n/* Custom slotted icons (selected-icon / unselected-icon slots) — default to the\n glyph footprint + ink so a bare <svg>/<md-icon> fits without extra CSS. */\n.md-switch__handle ::slotted(*) {\n inline-size: 16px;\n block-size: 16px;\n font-size: 16px;\n color: var(--_icon-color);\n pointer-events: none;\n}\n\n.material-symbols-outlined {\n font-family: var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');\n font-weight: normal;\n font-style: normal;\n line-height: 1;\n letter-spacing: normal;\n text-transform: none;\n display: inline-block;\n white-space: nowrap;\n overflow-wrap: normal;\n direction: ltr;\n font-feature-settings: 'liga';\n -webkit-font-smoothing: antialiased;\n}\n\n/* ==========================================================\n 9. FOCUS RING\n ========================================================== */\n\n:host(:focus-visible:not([disabled])) .md-switch__track,\n:host(.md-switch--focus-ring:not([disabled])) .md-switch__track {\n outline: 3px solid var(--md-switch-focus-ring-color, var(--md-sys-color-secondary, #625B71));\n outline-offset: 2px;\n}\n\n/* ==========================================================\n 10. DISABLED\n ========================================================== */\n\n:host(.md-switch--disabled) {\n cursor: default;\n pointer-events: none;\n}\n\n:host([soft-disabled]) {\n cursor: default;\n pointer-events: auto;\n}\n\n:host([soft-disabled]) .md-switch__state-layer {\n display: none;\n}\n\n/* Disabled unselected */\n:host(.md-switch--disabled:not(.md-switch--selected)) {\n --_track-color: color-mix(in srgb, var(--md-sys-color-surface-container-highest, #E6E0E9) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);\n --_track-outline-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);\n --_handle-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent);\n --_icon-color: color-mix(in srgb, var(--md-sys-color-surface-container-highest, #E6E0E9) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent);\n}\n\n/* Disabled selected */\n:host(.md-switch--disabled.md-switch--selected) {\n --_track-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);\n --_track-outline-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);\n --_handle-color: var(--md-sys-color-surface, #FEF7FF);\n --_icon-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent);\n}\n\n:host(.md-switch--disabled) .md-switch__state-layer {\n display: none;\n}\n\n/* ==========================================================\n 11. REDUCED MOTION\n ========================================================== */\n\n@media (prefers-reduced-motion: reduce) {\n .md-switch__handle,\n .md-switch__handle-container,\n .md-switch__track,\n .md-switch__state-layer {\n transition-duration: 0.01ms !important;\n }\n}\n\n/* ==========================================================\n 12. FORCED COLORS (Windows High Contrast)\n ========================================================== */\n\n@media (forced-colors: active) {\n .md-switch__track {\n border-color: CanvasText;\n }\n\n .md-switch__handle {\n background-color: CanvasText;\n }\n\n .md-switch__icon {\n color: Canvas;\n }\n\n :host(.md-switch--selected) .md-switch__track {\n background-color: Highlight;\n border-color: Highlight;\n }\n\n :host(.md-switch--selected) .md-switch__handle {\n background-color: HighlightText;\n }\n\n :host(.md-switch--selected) .md-switch__icon {\n color: Highlight;\n }\n\n :host(:focus-visible:not([disabled])) .md-switch__track,\n :host(.md-switch--focus-ring:not([disabled])) .md-switch__track {\n outline-color: Highlight;\n }\n\n :host(.md-switch--disabled) {\n opacity: 0.5;\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 { AttachInternals, Component, Element, Event, EventEmitter, Host, Method, Prop, State, Watch, h } from '@stencil/core';\nimport {\n setFormValue,\n setValidityState,\n checkValidityOf,\n reportValidityOf,\n getValidityOf,\n} from '../../utils/form';\n\n/**\n * `md-switch` — Material Design 3 switch (on/off toggle).\n *\n * Form-associated: inside a `<form>` it submits its `value` under `name` when\n * selected, and restores on form reset. It is a *labelable* element — wrap it in\n * a `<label>` (clicks on the label text toggle it and name it), or pass\n * `aria-label` / `aria-labelledby` on the host.\n *\n * @slot selected-icon - Custom icon shown on the handle when selected (replaces\n * the `selected-icon` glyph). Requires `icons` or\n * `show-only-selected-icon`.\n * @slot unselected-icon - Custom icon shown on the handle when unselected\n * (replaces the `unselected-icon` glyph). Requires `icons`.\n *\n * @part track - Track container\n * @part state-layer - State-layer overlay (centered on handle)\n * @part handle - Handle (thumb)\n * @part icon - Check / close icon\n */\n@Component({\n tag: 'md-switch',\n styleUrl: 'md-switch.css',\n shadow: true,\n formAssociated: true,\n})\nexport class MdSwitch {\n @Element() el!: HTMLElement;\n\n\n /**\n * Localized constraint-validation message shown when `required` is unmet.\n *\n * A prop rather than a hardcoded string, matching md-time-picker's\n * `value-missing-label`: components stay i18n-engine-agnostic and the\n * consumer localizes through its own dictionary. Native inputs get their\n * message from the browser's locale for free; a form-associated custom\n * element supplies its own, so leaving this hardcoded would ship an\n * English-only form to every locale.\n */\n @Prop({ attribute: 'value-missing-label' }) valueMissingLabel: string =\n 'Please turn this on if you want to proceed.';\n\n /** Message set via setCustomValidity(); non-empty wins over valueMissing. */\n private customValidityMessage = '';\n\n /**\n * Form-association handle. The switch submits `value` under the host's `name`\n * via `setFormValue`, so it participates in `<form>` / `FormData` natively\n * (a hidden shadow `<input>` would be invisible to `FormData`).\n */\n @AttachInternals() internals!: ElementInternals;\n\n // ─── Public Props ──────────────────────────────────────────\n\n /** Whether the switch is on (selected) */\n @Prop({ mutable: true, reflect: true }) selected: boolean = false;\n\n /** Prevents interaction and removes from tab order */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Visually disabled but remains focusable for discoverability */\n @Prop({ reflect: true, attribute: 'soft-disabled' }) softDisabled: boolean = false;\n\n /** Mark the control required for form validation / assistive tech. */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Name submitted with the owning `<form>`. */\n @Prop({ reflect: true }) name: string = '';\n\n /** Value submitted when the switch is selected. */\n @Prop() value: string = 'on';\n\n /** Show icons on both selected and unselected states (check / close) */\n @Prop() icons: boolean = false;\n\n /** Show icon only when selected */\n @Prop({ attribute: 'show-only-selected-icon' }) showOnlySelectedIcon: boolean = false;\n\n /** Material Symbols glyph shown on the handle when selected (override the\n * default check). Ignored when the `selected-icon` slot is filled. */\n @Prop({ attribute: 'selected-icon' }) selectedIcon: string = 'check';\n\n /** Material Symbols glyph shown on the handle when unselected (override the\n * default close). Ignored when the `unselected-icon` slot is filled. */\n @Prop({ attribute: 'unselected-icon' }) unselectedIcon: string = 'close';\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 // ─── Events ────────────────────────────────────────────────\n\n /**\n * Fires **before** the state changes. Call `event.preventDefault()` to\n * block the internal toggle and manage state externally (controlled mode).\n *\n * ```ts\n * switch.addEventListener('mdInput', (e) => {\n * e.preventDefault(); // prevent internal toggle\n * myState.value = e.detail.selected; // update your own state\n * });\n * ```\n */\n @Event({ cancelable: true }) mdInput: EventEmitter<{ selected: boolean }>;\n\n /**\n * Fires **after** the internal state has committed. Use for side effects\n * like saving preferences, analytics, or syncing with other components.\n * Not cancelable — the toggle has already happened.\n *\n * ```ts\n * switch.addEventListener('mdChange', (e) => {\n * console.log('Switch is now', e.detail.selected ? 'ON' : 'OFF');\n * });\n * ```\n */\n @Event({ cancelable: false }) mdChange: EventEmitter<{ selected: boolean }>;\n\n // ─── Internal State ────────────────────────────────────────\n\n @State() private pressed = false;\n /** Script-initiated focus doesn't trigger :focus-visible — force the ring. */\n @State() private programmaticFocus = false;\n\n private initialSelected = false;\n\n private get isDisabled() {\n return this.disabled || this.softDisabled;\n }\n\n // ─── Lifecycle ─────────────────────────────────────────────\n // Because md-switch is form-associated it is a *labelable* element, so a\n // wrapping <label> both names it and forwards clicks NATIVELY — no manual\n // closest('label') wiring needed (that would double-toggle here, unlike the\n // non-form-associated md-checkbox which must hand-roll it).\n\n componentWillLoad() {\n this.initialSelected = this.selected;\n this.syncFormValue();\n }\n\n @Watch('selected')\n @Watch('value')\n onValueChange() {\n this.syncFormValue();\n }\n\n /** Restore the initial state when the owning form is reset. */\n formResetCallback() {\n this.selected = this.initialSelected;\n }\n\n // ─── Public methods ────────────────────────────────────────\n\n /** Programmatically focus the switch (shows the focus ring). */\n @Method()\n async setFocus() {\n this.programmaticFocus = true;\n this.el.focus();\n }\n\n // ─── Private ───────────────────────────────────────────────\n\n private syncFormValue() {\n setFormValue(this.internals, this.selected ? this.value : null);\n this.syncValidity();\n }\n\n /**\n * Publish `required` to the owning form. Without this the switch is\n * form-associated (its value reaches FormData) yet ALWAYS reports valid, so an\n * empty required control lets the form submit — `required` renders as a visual\n * hint and nothing more. Kept in the same place as the value sync so the two\n * can never drift.\n */\n @Watch('required')\n @Watch('valueMissingLabel')\n private syncValidity() {\n setValidityState(this.internals, {\n missing: this.required && !this.selected,\n missingMessage: this.valueMissingLabel,\n customMessage: this.customValidityMessage,\n });\n this.emitValidityChange();\n }\n\n /** Current validity: boolean, message and flags. Mirrors md-text-field. */\n @Method()\n async getValidity(): Promise<{\n valid: boolean;\n validationMessage: string;\n flags: Record<string, boolean>;\n }> {\n return getValidityOf(this.internals);\n }\n\n /**\n * Fires when this control's validity CHANGES — never on every keystroke, and\n * never for a re-publish that lands on the same state.\n *\n * `composed: false` is deliberate. Composites like md-select embed an\n * md-text-field, and a composed event escapes that inner shadow root, so a\n * listener on md-select would receive the inner field's event as well as the\n * host's — two events, different payloads, for one logical control. Keeping\n * it uncomposed means each component reports only for itself, while\n * `bubbles: true` still lets a <form> or app root hear every control.\n */\n @Event({ bubbles: true, composed: false }) mdValidityChange: EventEmitter<{\n valid: boolean;\n validationMessage: string;\n flags: Record<string, boolean>;\n }>;\n\n /** Last emitted validity, so a re-publish that changes nothing stays silent. */\n private lastValidityKey: string | null = null;\n\n /**\n * Emit mdValidityChange if validity actually moved.\n *\n * The FIRST call only primes the baseline. Initial state is not a change, and\n * emitting on mount would fire once per control on every page load — noise a\n * consumer would have to filter out, and misleading for anything logging\n * \"field became invalid\".\n */\n private emitValidityChange() {\n const v = getValidityOf(this.internals);\n const key = `${v.valid}|${v.validationMessage}`;\n if (this.lastValidityKey === key) return;\n const primed = this.lastValidityKey !== null;\n this.lastValidityKey = key;\n if (primed) this.mdValidityChange.emit(v);\n }\n\n /** Constraint-validation API, matching md-text-field and the native contract. */\n @Method()\n async checkValidity(): Promise<boolean> {\n return checkValidityOf(this.internals);\n }\n\n /** Like checkValidity(), but also shows the browser's validation message. */\n @Method()\n async reportValidity(): Promise<boolean> {\n return reportValidityOf(this.internals);\n }\n\n /** App/server-side validation: a non-empty message marks the control invalid\n * for its form until cleared with an empty string. */\n @Method()\n async setCustomValidity(message: string) {\n this.customValidityMessage = message;\n this.syncValidity();\n }\n\n private toggle = () => {\n if (this.isDisabled) return;\n\n const proposed = !this.selected;\n\n const inputEvent = this.mdInput.emit({ selected: proposed });\n if (inputEvent.defaultPrevented) return;\n\n this.selected = proposed;\n this.mdChange.emit({ selected: this.selected });\n };\n\n private handleKeyDown = (e: KeyboardEvent) => {\n if (this.isDisabled) return;\n // WAI-ARIA switch pattern: Space toggles (Enter is reserved for form\n // submission — matching md-checkbox / md-radio).\n if (e.key === ' ') {\n e.preventDefault();\n if (e.repeat) return; // ignore OS key-repeat storms\n this.pressed = true;\n this.toggle();\n setTimeout(() => { this.pressed = false; }, 150);\n }\n };\n\n private handlePointerDown = () => {\n if (!this.isDisabled) this.pressed = true;\n };\n\n private handlePointerUp = () => {\n this.pressed = false;\n };\n\n private handleBlur = () => {\n this.programmaticFocus = false;\n };\n\n // ─── Render ────────────────────────────────────────────────\n\n render() {\n const showSelectedIcon = this.icons || this.showOnlySelectedIcon;\n const showUnselectedIcon = this.icons;\n const showIcon = this.selected ? showSelectedIcon : showUnselectedIcon;\n\n return (\n <Host\n role=\"switch\"\n aria-checked={String(this.selected)}\n aria-disabled={this.isDisabled ? 'true' : null}\n aria-required={this.required ? 'true' : null}\n tabindex={this.disabled ? '-1' : '0'}\n class={{\n 'md-switch': true,\n 'md-switch--selected': this.selected,\n 'md-switch--disabled': this.disabled || this.softDisabled,\n 'md-switch--pressed': this.pressed,\n 'md-switch--with-icon': showIcon,\n 'md-switch--focus-ring': this.programmaticFocus,\n }}\n onClick={this.toggle}\n onKeyDown={this.handleKeyDown}\n onPointerDown={this.handlePointerDown}\n onPointerUp={this.handlePointerUp}\n onPointerLeave={this.handlePointerUp}\n onPointerCancel={this.handlePointerUp}\n onBlur={this.handleBlur}\n >\n <div class=\"md-switch__track\" part=\"track\">\n <div class=\"md-switch__handle-container\">\n <span class=\"md-switch__state-layer\" part=\"state-layer\" aria-hidden=\"true\"></span>\n <span class=\"md-switch__handle\" part=\"handle\">\n {showIcon && (this.selected ? (\n <slot name=\"selected-icon\">\n <span class=\"md-switch__icon material-symbols-outlined\" part=\"icon\" aria-hidden=\"true\">\n {this.selectedIcon}\n </span>\n </slot>\n ) : (\n <slot name=\"unselected-icon\">\n <span class=\"md-switch__icon material-symbols-outlined\" part=\"icon\" aria-hidden=\"true\">\n {this.unselectedIcon}\n </span>\n </slot>\n ))}\n </span>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"2HAAA,MAAMA,EAAc,IAAM,y+Q,MCkCbC,EAAQ,MANrB,WAAAC,CAAAC,G,iSAoB8CC,KAAAC,kBAC1C,8CAGMD,KAAAE,sBAAwB,GAYQF,KAAAG,SAAoB,MAGnCH,KAAAI,SAAoB,MAGQJ,KAAAK,aAAwB,MAGpDL,KAAAM,SAAoB,MAGpBN,KAAAO,KAAe,GAGhCP,KAAAQ,MAAgB,KAGhBR,KAAAS,MAAiB,MAGuBT,KAAAU,qBAAgC,MAI1CV,KAAAW,aAAuB,QAIrBX,KAAAY,eAAyB,QAOxCZ,KAAAa,QAAiC,EAgCzCb,KAAAc,QAAU,MAEVd,KAAAe,kBAAoB,MAE7Bf,KAAAgB,gBAAkB,MA0FlBhB,KAAAiB,gBAAiC,KAuCjCjB,KAAAkB,OAAS,KACf,GAAIlB,KAAKmB,WAAY,OAErB,MAAMC,GAAYpB,KAAKG,SAEvB,MAAMkB,EAAarB,KAAKsB,QAAQC,KAAK,CAAEpB,SAAUiB,IACjD,GAAIC,EAAWG,iBAAkB,OAEjCxB,KAAKG,SAAWiB,EAChBpB,KAAKyB,SAASF,KAAK,CAAEpB,SAAUH,KAAKG,UAAW,EAGzCH,KAAA0B,cAAiBC,IACvB,GAAI3B,KAAKmB,WAAY,OAGrB,GAAIQ,EAAEC,MAAQ,IAAK,CACjBD,EAAEE,iBACF,GAAIF,EAAEG,OAAQ,OACd9B,KAAKc,QAAU,KACfd,KAAKkB,SACLa,YAAW,KAAQ/B,KAAKc,QAAU,KAAK,GAAK,I,GAIxCd,KAAAgC,kBAAoB,KAC1B,IAAKhC,KAAKmB,WAAYnB,KAAKc,QAAU,IAAI,EAGnCd,KAAAiC,gBAAkB,KACxBjC,KAAKc,QAAU,KAAK,EAGdd,KAAAkC,WAAa,KACnBlC,KAAKe,kBAAoB,KAAK,CAwDjC,CAzNC,cAAYI,GACV,OAAOnB,KAAKI,UAAYJ,KAAKK,Y,CAS/B,iBAAA8B,GACEnC,KAAKgB,gBAAkBhB,KAAKG,SAC5BH,KAAKoC,e,CAKP,aAAAC,GACErC,KAAKoC,e,CAIP,iBAAAE,GACEtC,KAAKG,SAAWH,KAAKgB,e,CAOvB,cAAMuB,GACJvC,KAAKe,kBAAoB,KACzBf,KAAKwC,GAAGC,O,CAKF,aAAAL,GACNM,EAAa1C,KAAK2C,UAAW3C,KAAKG,SAAWH,KAAKQ,MAAQ,MAC1DR,KAAK4C,c,CAYC,YAAAA,GACNC,EAAiB7C,KAAK2C,UAAW,CAC/BG,QAAS9C,KAAKM,WAAaN,KAAKG,SAChC4C,eAAgB/C,KAAKC,kBACrB+C,cAAehD,KAAKE,wBAEpBF,KAAKiD,oB,CAKT,iBAAMC,GAKJ,OAAOC,EAAcnD,KAAK2C,U,CA+BpB,kBAAAM,GACN,MAAMG,EAAID,EAAcnD,KAAK2C,WAC7B,MAAMf,EAAM,GAAGwB,EAAEC,SAASD,EAAEE,oBAC5B,GAAItD,KAAKiB,kBAAoBW,EAAK,OAClC,MAAM2B,EAASvD,KAAKiB,kBAAoB,KACxCjB,KAAKiB,gBAAkBW,EACvB,GAAI2B,EAAQvD,KAAKwD,iBAAiBjC,KAAK6B,E,CAKzC,mBAAMK,GACJ,OAAOC,EAAgB1D,KAAK2C,U,CAK9B,oBAAMgB,GACJ,OAAOC,EAAiB5D,KAAK2C,U,CAM/B,uBAAMkB,CAAkBC,GACtB9D,KAAKE,sBAAwB4D,EAC7B9D,KAAK4C,c,CA0CP,MAAAmB,GACE,MAAMC,EAAmBhE,KAAKS,OAAST,KAAKU,qBAC5C,MAAMuD,EAAqBjE,KAAKS,MAChC,MAAMyD,EAAWlE,KAAKG,SAAW6D,EAAmBC,EAEpD,OACEE,EAACC,EAAI,CAAAxC,IAAA,2CACHyC,KAAK,SAAQ,eACCC,OAAOtE,KAAKG,UAAS,gBACpBH,KAAKmB,WAAa,OAAS,KAAI,gBAC/BnB,KAAKM,SAAW,OAAS,KACxCiE,SAAUvE,KAAKI,SAAW,KAAO,IACjCoE,MAAO,CACL,YAAa,KACb,sBAAuBxE,KAAKG,SAC5B,sBAAuBH,KAAKI,UAAYJ,KAAKK,aAC7C,qBAAsBL,KAAKc,QAC3B,uBAAwBoD,EACxB,wBAAyBlE,KAAKe,mBAEhC0D,QAASzE,KAAKkB,OACdwD,UAAW1E,KAAK0B,cAChBiD,cAAe3E,KAAKgC,kBACpB4C,YAAa5E,KAAKiC,gBAClB4C,eAAgB7E,KAAKiC,gBACrB6C,gBAAiB9E,KAAKiC,gBACtB8C,OAAQ/E,KAAKkC,YAEbiC,EAAA,OAAAvC,IAAA,2CAAK4C,MAAM,mBAAmBQ,KAAK,SACjCb,EAAA,OAAAvC,IAAA,2CAAK4C,MAAM,+BACTL,EAAA,QAAAvC,IAAA,2CAAM4C,MAAM,yBAAyBQ,KAAK,cAAa,cAAa,SACpEb,EAAA,QAAAvC,IAAA,2CAAM4C,MAAM,oBAAoBQ,KAAK,UAClCd,IAAalE,KAAKG,SACjBgE,EAAA,QAAM5D,KAAK,iBACT4D,EAAA,QAAMK,MAAM,4CAA4CQ,KAAK,OAAM,cAAa,QAC7EhF,KAAKW,eAIVwD,EAAA,QAAM5D,KAAK,mBACT4D,EAAA,QAAMK,MAAM,4CAA4CQ,KAAK,OAAM,cAAa,QAC7EhF,KAAKY,qB","ignoreList":[]}
1
+ {"version":3,"names":["mdSwitchCss","MdSwitch","constructor","hostRef","this","valueMissingLabel","customValidityMessage","selected","disabled","softDisabled","required","name","value","icons","showOnlySelectedIcon","selectedIcon","unselectedIcon","density","pressed","programmaticFocus","initialSelected","lastValidityKey","toggle","isDisabled","proposed","inputEvent","mdInput","emit","defaultPrevented","mdChange","handleKeyDown","e","key","preventDefault","repeat","setTimeout","handlePointerDown","handlePointerUp","handleBlur","componentWillLoad","syncFormValue","onValueChange","formResetCallback","setFocus","el","focus","setFormValue","internals","syncValidity","setValidityState","missing","missingMessage","customMessage","emitValidityChange","getValidity","getValidityOf","v","valid","validationMessage","primed","mdValidityChange","checkValidity","checkValidityOf","reportValidity","reportValidityOf","setCustomValidity","message","render","showSelectedIcon","showUnselectedIcon","showIcon","h","Host","role","String","tabindex","class","onClick","onKeyDown","onPointerDown","onPointerUp","onPointerLeave","onPointerCancel","onBlur","part"],"sources":["src/components/md-switch/md-switch.css?tag=md-switch&encapsulation=shadow","src/components/md-switch/md-switch.tsx"],"sourcesContent":["/* ==========================================================\n md-switch — Material Design 3 Switch\n Spec: https://m3.material.io/components/switch/specs\n\n MD3-Expressive motion: the thumb morphs (16→24→28dp) and slides on a\n SPATIAL spring, colors cross-fade on an EFFECTS spring. All sizing derives\n from the track tokens via calc(), so resizing the track keeps the thumb\n aligned (no hand-tuned offsets).\n\n PUBLIC CSS CUSTOM PROPERTIES (override per-instance):\n --md-switch-track-width Track width (52px)\n --md-switch-track-height Track height (32px) — density knob\n --md-switch-handle-size Selected handle diameter (derived\n from track height; unselected +\n pressed scale from it)\n --md-switch-track-color Unselected track fill\n --md-switch-track-outline-color Unselected track outline\n --md-switch-handle-color Unselected handle fill\n --md-switch-selected-track-color Selected track fill\n --md-switch-selected-handle-color Selected handle fill\n --md-switch-icon-color Unselected icon color\n --md-switch-selected-icon-color Selected icon color\n --md-switch-state-layer-color Hover / focus / press overlay\n --md-switch-focus-ring-color Focus-ring color\n\n CSS PARTS:\n track Track container\n state-layer State-layer overlay (centered on handle)\n handle Handle / thumb\n icon Check or close icon\n\n SLOTS:\n (none)\n ========================================================== */\n\n/* ==========================================================\n 1. HOST — touch target, sizing, motion & base tokens\n ========================================================== */\n\n:host {\n /* ── Sizing (density scales from the track) ── */\n /* Track width shrinks proportionally with density to maintain the ~1.625\n aspect ratio (52:32). Each rung removes 6px width vs 4px height. */\n --_track-w: var(--md-switch-track-width, max(28px, calc(52px + var(--md-sys-density-scale, 0) * 6px)));\n /* Global density knob: the track height drives every derived size (handle,\n state layer, thumb travel). Each `data-density` rung (0…-4) trims 4px,\n floored at 16px; unchanged at density 0. The host min-block-size stays\n max(48px, …) so the touch target is preserved even as the track tightens. */\n --_track-h: max(16px, calc(var(--md-switch-track-height, 32px) + var(--md-sys-density-scale, 0) * 4px));\n --_track-border: 2px;\n /* State-layer / handle-container disc, proportional to the track. */\n --_sl: calc(var(--_track-h) + 8px);\n /* Thumb sizes: selected is the knob; unselected + pressed scale from it. */\n --_handle-sel: var(--md-switch-handle-size, calc(var(--_track-h) * 0.75));\n --_handle-unsel: calc(var(--_handle-sel) * 2 / 3);\n --_handle-press: calc(var(--_handle-sel) * 7 / 6);\n /* Thumb-centre travel, derived so the thumb stays inset by half the track\n height at each end regardless of track size. */\n --_offset-unsel: calc(var(--_track-h) / 2 - var(--_sl) / 2 - var(--_track-border));\n --_offset-sel: calc(var(--_track-w) - var(--_track-h) / 2 - var(--_sl) / 2 - var(--_track-border));\n\n /* ── Motion (M3-Expressive springs) ── */\n --_spring-spatial: var(--md-sys-motion-spring-spatial-fast-duration, 350ms)\n var(--md-sys-motion-spring-spatial-fast-easing, cubic-bezier(0.42, 1.67, 0.21, 0.90));\n --_spring-effects: var(--md-sys-motion-spring-effects-fast-duration, 150ms)\n var(--md-sys-motion-spring-effects-fast-easing, cubic-bezier(0.31, 0.94, 0.34, 1.00));\n\n /* ── Unselected color tokens ── */\n --_track-color: var(--md-switch-track-color, var(--md-sys-color-surface-container-highest, #E6E0E9));\n --_track-outline-color: var(--md-switch-track-outline-color, var(--md-sys-color-outline, #79747E));\n --_handle-color: var(--md-switch-handle-color, var(--md-sys-color-outline, #79747E));\n --_state-layer-color: var(--md-switch-state-layer-color, var(--md-sys-color-on-surface, #1C1B1F));\n --_icon-color: var(--md-switch-icon-color, var(--md-sys-color-surface-container-highest, #E6E0E9));\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-block-size: max(48px, var(--_track-h));\n inline-size: var(--_track-w);\n cursor: pointer;\n outline: none;\n -webkit-tap-highlight-color: transparent;\n user-select: none;\n vertical-align: middle;\n flex-shrink: 0;\n}\n\n/* ==========================================================\n 2. SELECTED — color overrides\n ========================================================== */\n\n:host(.md-switch--selected) {\n --_track-color: var(--md-switch-selected-track-color, var(--md-sys-color-primary, #6750A4));\n --_track-outline-color: var(--md-switch-selected-track-color, var(--md-sys-color-primary, #6750A4));\n --_handle-color: var(--md-switch-selected-handle-color, var(--md-sys-color-on-primary, #FFFFFF));\n --_state-layer-color: var(--md-switch-state-layer-color, var(--md-sys-color-primary, #6750A4));\n --_icon-color: var(--md-switch-selected-icon-color, var(--md-sys-color-on-primary-container, #21005D));\n}\n\n/* ==========================================================\n 3. INTERACTIVE STATES — hover / focus / press colors\n Per MD3 spec, handle & track outline colors shift on interaction.\n ========================================================== */\n\n/* ── Unselected ── */\n\n:host(:not(.md-switch--selected):hover:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-on-surface-variant, #49454F);\n --_track-outline-color: var(--md-sys-color-on-surface, #1C1B1F);\n}\n\n:host(:not(.md-switch--selected):focus-visible:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-on-surface-variant, #49454F);\n --_track-outline-color: var(--md-sys-color-on-surface, #1C1B1F);\n}\n\n:host(:not(.md-switch--selected).md-switch--pressed:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-on-surface-variant, #49454F);\n --_track-outline-color: var(--md-sys-color-on-surface, #1C1B1F);\n}\n\n/* ── Selected ── */\n\n:host(.md-switch--selected:hover:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-primary-container, #EADDFF);\n}\n\n:host(.md-switch--selected:focus-visible:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-primary-container, #EADDFF);\n}\n\n:host(.md-switch--selected.md-switch--pressed:not(.md-switch--disabled)) {\n --_handle-color: var(--md-sys-color-primary-container, #EADDFF);\n}\n\n/* ==========================================================\n 4. TRACK — colors cross-fade on the effects spring\n ========================================================== */\n\n.md-switch__track {\n position: relative;\n inline-size: var(--_track-w);\n block-size: var(--_track-h);\n border-radius: var(--md-sys-shape-corner-full, 9999px);\n border: var(--_track-border) solid var(--_track-outline-color);\n background-color: var(--_track-color);\n box-sizing: border-box;\n transition:\n background-color var(--_spring-effects),\n border-color var(--_spring-effects);\n}\n\n/* ==========================================================\n 5. HANDLE CONTAINER — state-layer disc, slides on the spatial spring\n via inset-inline-start (auto-mirrors in RTL). Offsets are derived from\n the track tokens (see :host --_offset-*).\n ========================================================== */\n\n.md-switch__handle-container {\n position: absolute;\n inset-block-start: 50%;\n inset-inline-start: var(--_offset-unsel);\n inline-size: var(--_sl);\n block-size: var(--_sl);\n transform: translateY(-50%);\n display: flex;\n align-items: center;\n justify-content: center;\n transition: inset-inline-start var(--_spring-spatial);\n pointer-events: none;\n}\n\n:host(.md-switch--selected) .md-switch__handle-container {\n inset-inline-start: var(--_offset-sel);\n}\n\n/* ==========================================================\n 6. STATE LAYER — fills the handle container, centered on the handle\n ========================================================== */\n\n.md-switch__state-layer {\n position: absolute;\n inset: 0;\n border-radius: var(--md-sys-shape-corner-full, 9999px);\n background-color: var(--_state-layer-color);\n opacity: 0;\n transition: opacity var(--_spring-effects);\n pointer-events: none;\n}\n\n:host(:hover:not(.md-switch--disabled)) .md-switch__state-layer {\n opacity: var(--md-sys-state-hover-state-layer-opacity, 0.08);\n}\n\n:host(:focus-visible:not(.md-switch--disabled)) .md-switch__state-layer {\n opacity: var(--md-sys-state-focus-state-layer-opacity, 0.12);\n}\n\n:host(:active:not(.md-switch--disabled)) .md-switch__state-layer,\n:host(.md-switch--pressed:not(.md-switch--disabled)) .md-switch__state-layer {\n opacity: var(--md-sys-state-pressed-state-layer-opacity, 0.12);\n}\n\n/* ==========================================================\n 7. HANDLE — morphs size per state on the spatial spring\n Unselected (no icon): --_handle-unsel (16dp @ 32 track)\n Unselected (icon) / Selected: --_handle-sel (24dp)\n Pressed: --_handle-press (28dp)\n ========================================================== */\n\n.md-switch__handle {\n position: relative;\n z-index: 1;\n inline-size: var(--_handle-unsel);\n block-size: var(--_handle-unsel);\n border-radius: var(--md-sys-shape-corner-full, 9999px);\n background-color: var(--_handle-color);\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n transition:\n inline-size var(--_spring-spatial),\n block-size var(--_spring-spatial),\n background-color var(--_spring-effects);\n}\n\n:host(.md-switch--selected) .md-switch__handle {\n inline-size: var(--_handle-sel);\n block-size: var(--_handle-sel);\n}\n\n:host(.md-switch--with-icon:not(.md-switch--selected)) .md-switch__handle {\n inline-size: var(--_handle-sel);\n block-size: var(--_handle-sel);\n}\n\n:host(.md-switch--pressed:not(.md-switch--disabled)) .md-switch__handle {\n inline-size: var(--_handle-press);\n block-size: var(--_handle-press);\n}\n\n/* ==========================================================\n 8. ICON — 16px Material Symbols\n ========================================================== */\n\n.md-switch__icon {\n font-size: 16px;\n inline-size: 16px;\n block-size: 16px;\n color: var(--_icon-color);\n pointer-events: none;\n line-height: 1;\n}\n\n/* Custom slotted icons (selected-icon / unselected-icon slots) — default to the\n glyph footprint + ink so a bare <svg>/<md-icon> fits without extra CSS. */\n.md-switch__handle ::slotted(*) {\n inline-size: 16px;\n block-size: 16px;\n font-size: 16px;\n color: var(--_icon-color);\n pointer-events: none;\n}\n\n.material-symbols-outlined {\n font-family: var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');\n font-weight: normal;\n font-style: normal;\n line-height: 1;\n letter-spacing: normal;\n text-transform: none;\n display: inline-block;\n white-space: nowrap;\n overflow-wrap: normal;\n direction: ltr;\n font-feature-settings: 'liga';\n -webkit-font-smoothing: antialiased;\n}\n\n/* ==========================================================\n 9. FOCUS RING\n ========================================================== */\n\n:host(:focus-visible:not([disabled])) .md-switch__track,\n:host(.md-switch--focus-ring:not([disabled])) .md-switch__track {\n outline: 3px solid var(--md-switch-focus-ring-color, var(--md-sys-color-secondary, #625B71));\n outline-offset: 2px;\n}\n\n/* ==========================================================\n 10. DISABLED\n ========================================================== */\n\n:host(.md-switch--disabled) {\n cursor: default;\n pointer-events: none;\n}\n\n:host([soft-disabled]) {\n cursor: default;\n pointer-events: auto;\n}\n\n:host([soft-disabled]) .md-switch__state-layer {\n display: none;\n}\n\n/* Disabled unselected */\n:host(.md-switch--disabled:not(.md-switch--selected)) {\n --_track-color: color-mix(in srgb, var(--md-sys-color-surface-container-highest, #E6E0E9) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);\n --_track-outline-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);\n --_handle-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent);\n --_icon-color: color-mix(in srgb, var(--md-sys-color-surface-container-highest, #E6E0E9) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent);\n}\n\n/* Disabled selected */\n:host(.md-switch--disabled.md-switch--selected) {\n --_track-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);\n --_track-outline-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-container-opacity, 0.12) * 100%), transparent);\n --_handle-color: var(--md-sys-color-surface, #FEF7FF);\n --_icon-color: color-mix(in srgb, var(--md-sys-color-on-surface, #1C1B1F) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent);\n}\n\n:host(.md-switch--disabled) .md-switch__state-layer {\n display: none;\n}\n\n/* ==========================================================\n 11. REDUCED MOTION\n ========================================================== */\n\n@media (prefers-reduced-motion: reduce) {\n .md-switch__handle,\n .md-switch__handle-container,\n .md-switch__track,\n .md-switch__state-layer {\n transition-duration: 0.01ms !important;\n }\n}\n\n/* ==========================================================\n 12. FORCED COLORS (Windows High Contrast)\n ========================================================== */\n\n@media (forced-colors: active) {\n .md-switch__track {\n border-color: CanvasText;\n }\n\n .md-switch__handle {\n background-color: CanvasText;\n }\n\n .md-switch__icon {\n color: Canvas;\n }\n\n :host(.md-switch--selected) .md-switch__track {\n background-color: Highlight;\n border-color: Highlight;\n }\n\n :host(.md-switch--selected) .md-switch__handle {\n background-color: HighlightText;\n }\n\n :host(.md-switch--selected) .md-switch__icon {\n color: Highlight;\n }\n\n :host(:focus-visible:not([disabled])) .md-switch__track,\n :host(.md-switch--focus-ring:not([disabled])) .md-switch__track {\n outline-color: Highlight;\n }\n\n :host(.md-switch--disabled) {\n opacity: 0.5;\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 { AttachInternals, Component, Element, Event, EventEmitter, Host, Method, Prop, State, Watch, h } from '@stencil/core';\nimport {\n setFormValue,\n setValidityState,\n checkValidityOf,\n reportValidityOf,\n getValidityOf,\n} from '../../utils/form';\n\n/**\n * `md-switch` — Material Design 3 switch (on/off toggle).\n *\n * Form-associated: inside a `<form>` it submits its `value` under `name` when\n * selected, and restores on form reset. It is a *labelable* element — wrap it in\n * a `<label>` (clicks on the label text toggle it and name it), or pass\n * `aria-label` / `aria-labelledby` on the host.\n *\n * @slot selected-icon - Custom icon shown on the handle when selected (replaces\n * the `selected-icon` glyph). Requires `icons` or\n * `show-only-selected-icon`.\n * @slot unselected-icon - Custom icon shown on the handle when unselected\n * (replaces the `unselected-icon` glyph). Requires `icons`.\n *\n * @part track - Track container\n * @part state-layer - State-layer overlay (centered on handle)\n * @part handle - Handle (thumb)\n * @part icon - Check / close icon\n */\n@Component({\n tag: 'md-switch',\n styleUrl: 'md-switch.css',\n shadow: true,\n formAssociated: true,\n})\nexport class MdSwitch {\n @Element() el!: HTMLElement;\n\n\n /**\n * Localized constraint-validation message shown when `required` is unmet.\n *\n * A prop rather than a hardcoded string, matching md-time-picker's\n * `value-missing-label`: components stay i18n-engine-agnostic and the\n * consumer localizes through its own dictionary. Native inputs get their\n * message from the browser's locale for free; a form-associated custom\n * element supplies its own, so leaving this hardcoded would ship an\n * English-only form to every locale.\n */\n @Prop({ attribute: 'value-missing-label' }) valueMissingLabel: string =\n 'Please turn this on if you want to proceed.';\n\n /** Message set via setCustomValidity(); non-empty wins over valueMissing. */\n private customValidityMessage = '';\n\n /**\n * Form-association handle. The switch submits `value` under the host's `name`\n * via `setFormValue`, so it participates in `<form>` / `FormData` natively\n * (a hidden shadow `<input>` would be invisible to `FormData`).\n */\n @AttachInternals() internals!: ElementInternals;\n\n // ─── Public Props ──────────────────────────────────────────\n\n /** Whether the switch is on (selected) */\n @Prop({ mutable: true, reflect: true }) selected: boolean = false;\n\n /** Prevents interaction and removes from tab order */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Visually disabled but remains focusable for discoverability */\n @Prop({ reflect: true, attribute: 'soft-disabled' }) softDisabled: boolean = false;\n\n /** Mark the control required for form validation / assistive tech. */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Name submitted with the owning `<form>`. */\n @Prop({ reflect: true }) name: string = '';\n\n /** Value submitted when the switch is selected. */\n @Prop() value: string = 'on';\n\n /** Show icons on both selected and unselected states (check / close) */\n @Prop() icons: boolean = false;\n\n /** Show icon only when selected */\n @Prop({ attribute: 'show-only-selected-icon' }) showOnlySelectedIcon: boolean = false;\n\n /** Material Symbols glyph shown on the handle when selected (override the\n * default check). Ignored when the `selected-icon` slot is filled. */\n @Prop({ attribute: 'selected-icon' }) selectedIcon: string = 'check';\n\n /** Material Symbols glyph shown on the handle when unselected (override the\n * default close). Ignored when the `unselected-icon` slot is filled. */\n @Prop({ attribute: 'unselected-icon' }) unselectedIcon: string = 'close';\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 // ─── Events ────────────────────────────────────────────────\n\n /**\n * Fires **before** the state changes. Call `event.preventDefault()` to\n * block the internal toggle and manage state externally (controlled mode).\n *\n * ```ts\n * switch.addEventListener('mdInput', (e) => {\n * e.preventDefault(); // prevent internal toggle\n * myState.value = e.detail.selected; // update your own state\n * });\n * ```\n */\n @Event({ cancelable: true }) mdInput: EventEmitter<{ selected: boolean }>;\n\n /**\n * Fires **after** the internal state has committed. Use for side effects\n * like saving preferences, analytics, or syncing with other components.\n * Not cancelable — the toggle has already happened.\n *\n * ```ts\n * switch.addEventListener('mdChange', (e) => {\n * console.log('Switch is now', e.detail.selected ? 'ON' : 'OFF');\n * });\n * ```\n */\n @Event({ cancelable: false }) mdChange: EventEmitter<{ selected: boolean }>;\n\n // ─── Internal State ────────────────────────────────────────\n\n @State() private pressed = false;\n /** Script-initiated focus doesn't trigger :focus-visible — force the ring. */\n @State() private programmaticFocus = false;\n\n private initialSelected = false;\n\n private get isDisabled() {\n return this.disabled || this.softDisabled;\n }\n\n // ─── Lifecycle ─────────────────────────────────────────────\n // Because md-switch is form-associated it is a *labelable* element, so a\n // wrapping <label> both names it and forwards clicks NATIVELY — no manual\n // closest('label') wiring needed (that would double-toggle here, unlike the\n // non-form-associated md-checkbox which must hand-roll it).\n\n componentWillLoad() {\n this.initialSelected = this.selected;\n this.syncFormValue();\n }\n\n @Watch('selected')\n @Watch('value')\n onValueChange() {\n this.syncFormValue();\n }\n\n /** Restore the initial state when the owning form is reset. */\n formResetCallback() {\n this.selected = this.initialSelected;\n }\n\n // ─── Public methods ────────────────────────────────────────\n\n /** Programmatically focus the switch (shows the focus ring). */\n @Method()\n async setFocus() {\n this.programmaticFocus = true;\n this.el.focus();\n }\n\n // ─── Private ───────────────────────────────────────────────\n\n private syncFormValue() {\n setFormValue(this.internals, this.selected ? this.value : null);\n this.syncValidity();\n }\n\n /**\n * Publish `required` to the owning form. Without this the switch is\n * form-associated (its value reaches FormData) yet ALWAYS reports valid, so an\n * empty required control lets the form submit — `required` renders as a visual\n * hint and nothing more. Kept in the same place as the value sync so the two\n * can never drift.\n */\n @Watch('required')\n @Watch('valueMissingLabel')\n private syncValidity() {\n setValidityState(this.internals, {\n missing: this.required && !this.selected,\n missingMessage: this.valueMissingLabel,\n customMessage: this.customValidityMessage,\n });\n this.emitValidityChange();\n }\n\n /** Current validity: boolean, message and flags. Mirrors md-text-field. */\n @Method()\n async getValidity(): Promise<{\n valid: boolean;\n validationMessage: string;\n flags: Record<string, boolean>;\n }> {\n return getValidityOf(this.internals);\n }\n\n /**\n * Fires when this control's validity CHANGES — never on every keystroke, and\n * never for a re-publish that lands on the same state.\n *\n * `composed: false` is deliberate. Composites like md-select embed an\n * md-text-field, and a composed event escapes that inner shadow root, so a\n * listener on md-select would receive the inner field's event as well as the\n * host's — two events, different payloads, for one logical control. Keeping\n * it uncomposed means each component reports only for itself, while\n * `bubbles: true` still lets a <form> or app root hear every control.\n */\n @Event({ bubbles: true, composed: false }) mdValidityChange: EventEmitter<{\n valid: boolean;\n validationMessage: string;\n flags: Record<string, boolean>;\n }>;\n\n /** Last emitted validity, so a re-publish that changes nothing stays silent. */\n private lastValidityKey: string | null = null;\n\n /**\n * Emit mdValidityChange if validity actually moved.\n *\n * The FIRST call only primes the baseline. Initial state is not a change, and\n * emitting on mount would fire once per control on every page load — noise a\n * consumer would have to filter out, and misleading for anything logging\n * \"field became invalid\".\n */\n private emitValidityChange() {\n const v = getValidityOf(this.internals);\n const key = `${v.valid}|${v.validationMessage}`;\n if (this.lastValidityKey === key) return;\n const primed = this.lastValidityKey !== null;\n this.lastValidityKey = key;\n if (primed) this.mdValidityChange.emit(v);\n }\n\n /** Constraint-validation API, matching md-text-field and the native contract. */\n @Method()\n async checkValidity(): Promise<boolean> {\n return checkValidityOf(this.internals);\n }\n\n /** Like checkValidity(), but also shows the browser's validation message. */\n @Method()\n async reportValidity(): Promise<boolean> {\n return reportValidityOf(this.internals);\n }\n\n /** App/server-side validation: a non-empty message marks the control invalid\n * for its form until cleared with an empty string. */\n @Method()\n async setCustomValidity(message: string) {\n this.customValidityMessage = message;\n this.syncValidity();\n }\n\n private toggle = () => {\n if (this.isDisabled) return;\n\n const proposed = !this.selected;\n\n const inputEvent = this.mdInput.emit({ selected: proposed });\n if (inputEvent.defaultPrevented) return;\n\n this.selected = proposed;\n this.mdChange.emit({ selected: this.selected });\n };\n\n private handleKeyDown = (e: KeyboardEvent) => {\n if (this.isDisabled) return;\n // WAI-ARIA switch pattern: Space toggles (Enter is reserved for form\n // submission — matching md-checkbox / md-radio).\n if (e.key === ' ') {\n e.preventDefault();\n if (e.repeat) return; // ignore OS key-repeat storms\n this.pressed = true;\n this.toggle();\n setTimeout(() => { this.pressed = false; }, 150);\n }\n };\n\n private handlePointerDown = () => {\n if (!this.isDisabled) this.pressed = true;\n };\n\n private handlePointerUp = () => {\n this.pressed = false;\n };\n\n private handleBlur = () => {\n this.programmaticFocus = false;\n };\n\n // ─── Render ────────────────────────────────────────────────\n\n render() {\n const showSelectedIcon = this.icons || this.showOnlySelectedIcon;\n const showUnselectedIcon = this.icons;\n const showIcon = this.selected ? showSelectedIcon : showUnselectedIcon;\n\n return (\n <Host\n role=\"switch\"\n aria-checked={String(this.selected)}\n aria-disabled={this.isDisabled ? 'true' : null}\n aria-required={this.required ? 'true' : null}\n tabindex={this.disabled ? '-1' : '0'}\n class={{\n 'md-switch': true,\n 'md-switch--selected': this.selected,\n 'md-switch--disabled': this.disabled || this.softDisabled,\n 'md-switch--pressed': this.pressed,\n 'md-switch--with-icon': showIcon,\n 'md-switch--focus-ring': this.programmaticFocus,\n }}\n onClick={this.toggle}\n onKeyDown={this.handleKeyDown}\n onPointerDown={this.handlePointerDown}\n onPointerUp={this.handlePointerUp}\n onPointerLeave={this.handlePointerUp}\n onPointerCancel={this.handlePointerUp}\n onBlur={this.handleBlur}\n >\n <div class=\"md-switch__track\" part=\"track\">\n <div class=\"md-switch__handle-container\">\n <span class=\"md-switch__state-layer\" part=\"state-layer\" aria-hidden=\"true\"></span>\n <span class=\"md-switch__handle\" part=\"handle\">\n {showIcon && (this.selected ? (\n <slot name=\"selected-icon\">\n <span class=\"md-switch__icon material-symbols-outlined\" part=\"icon\" aria-hidden=\"true\">\n {this.selectedIcon}\n </span>\n </slot>\n ) : (\n <slot name=\"unselected-icon\">\n <span class=\"md-switch__icon material-symbols-outlined\" part=\"icon\" aria-hidden=\"true\">\n {this.unselectedIcon}\n </span>\n </slot>\n ))}\n </span>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"gIAAA,MAAMA,EAAc,IAAM,y+Q,MCkCbC,EAAQ,MANrB,WAAAC,CAAAC,G,iSAoB8CC,KAAAC,kBAC1C,8CAGMD,KAAAE,sBAAwB,GAYQF,KAAAG,SAAoB,MAGnCH,KAAAI,SAAoB,MAGQJ,KAAAK,aAAwB,MAGpDL,KAAAM,SAAoB,MAGpBN,KAAAO,KAAe,GAGhCP,KAAAQ,MAAgB,KAGhBR,KAAAS,MAAiB,MAGuBT,KAAAU,qBAAgC,MAI1CV,KAAAW,aAAuB,QAIrBX,KAAAY,eAAyB,QAOxCZ,KAAAa,QAAiC,EAgCzCb,KAAAc,QAAU,MAEVd,KAAAe,kBAAoB,MAE7Bf,KAAAgB,gBAAkB,MA0FlBhB,KAAAiB,gBAAiC,KAuCjCjB,KAAAkB,OAAS,KACf,GAAIlB,KAAKmB,WAAY,OAErB,MAAMC,GAAYpB,KAAKG,SAEvB,MAAMkB,EAAarB,KAAKsB,QAAQC,KAAK,CAAEpB,SAAUiB,IACjD,GAAIC,EAAWG,iBAAkB,OAEjCxB,KAAKG,SAAWiB,EAChBpB,KAAKyB,SAASF,KAAK,CAAEpB,SAAUH,KAAKG,UAAW,EAGzCH,KAAA0B,cAAiBC,IACvB,GAAI3B,KAAKmB,WAAY,OAGrB,GAAIQ,EAAEC,MAAQ,IAAK,CACjBD,EAAEE,iBACF,GAAIF,EAAEG,OAAQ,OACd9B,KAAKc,QAAU,KACfd,KAAKkB,SACLa,YAAW,KAAQ/B,KAAKc,QAAU,KAAK,GAAK,I,GAIxCd,KAAAgC,kBAAoB,KAC1B,IAAKhC,KAAKmB,WAAYnB,KAAKc,QAAU,IAAI,EAGnCd,KAAAiC,gBAAkB,KACxBjC,KAAKc,QAAU,KAAK,EAGdd,KAAAkC,WAAa,KACnBlC,KAAKe,kBAAoB,KAAK,CAwDjC,CAzNC,cAAYI,GACV,OAAOnB,KAAKI,UAAYJ,KAAKK,Y,CAS/B,iBAAA8B,GACEnC,KAAKgB,gBAAkBhB,KAAKG,SAC5BH,KAAKoC,e,CAKP,aAAAC,GACErC,KAAKoC,e,CAIP,iBAAAE,GACEtC,KAAKG,SAAWH,KAAKgB,e,CAOvB,cAAMuB,GACJvC,KAAKe,kBAAoB,KACzBf,KAAKwC,GAAGC,O,CAKF,aAAAL,GACNM,EAAa1C,KAAK2C,UAAW3C,KAAKG,SAAWH,KAAKQ,MAAQ,MAC1DR,KAAK4C,c,CAYC,YAAAA,GACNC,EAAiB7C,KAAK2C,UAAW,CAC/BG,QAAS9C,KAAKM,WAAaN,KAAKG,SAChC4C,eAAgB/C,KAAKC,kBACrB+C,cAAehD,KAAKE,wBAEpBF,KAAKiD,oB,CAKT,iBAAMC,GAKJ,OAAOC,EAAcnD,KAAK2C,U,CA+BpB,kBAAAM,GACN,MAAMG,EAAID,EAAcnD,KAAK2C,WAC7B,MAAMf,EAAM,GAAGwB,EAAEC,SAASD,EAAEE,oBAC5B,GAAItD,KAAKiB,kBAAoBW,EAAK,OAClC,MAAM2B,EAASvD,KAAKiB,kBAAoB,KACxCjB,KAAKiB,gBAAkBW,EACvB,GAAI2B,EAAQvD,KAAKwD,iBAAiBjC,KAAK6B,E,CAKzC,mBAAMK,GACJ,OAAOC,EAAgB1D,KAAK2C,U,CAK9B,oBAAMgB,GACJ,OAAOC,EAAiB5D,KAAK2C,U,CAM/B,uBAAMkB,CAAkBC,GACtB9D,KAAKE,sBAAwB4D,EAC7B9D,KAAK4C,c,CA0CP,MAAAmB,GACE,MAAMC,EAAmBhE,KAAKS,OAAST,KAAKU,qBAC5C,MAAMuD,EAAqBjE,KAAKS,MAChC,MAAMyD,EAAWlE,KAAKG,SAAW6D,EAAmBC,EAEpD,OACEE,EAACC,EAAI,CAAAxC,IAAA,2CACHyC,KAAK,SAAQ,eACCC,OAAOtE,KAAKG,UAAS,gBACpBH,KAAKmB,WAAa,OAAS,KAAI,gBAC/BnB,KAAKM,SAAW,OAAS,KACxCiE,SAAUvE,KAAKI,SAAW,KAAO,IACjCoE,MAAO,CACL,YAAa,KACb,sBAAuBxE,KAAKG,SAC5B,sBAAuBH,KAAKI,UAAYJ,KAAKK,aAC7C,qBAAsBL,KAAKc,QAC3B,uBAAwBoD,EACxB,wBAAyBlE,KAAKe,mBAEhC0D,QAASzE,KAAKkB,OACdwD,UAAW1E,KAAK0B,cAChBiD,cAAe3E,KAAKgC,kBACpB4C,YAAa5E,KAAKiC,gBAClB4C,eAAgB7E,KAAKiC,gBACrB6C,gBAAiB9E,KAAKiC,gBACtB8C,OAAQ/E,KAAKkC,YAEbiC,EAAA,OAAAvC,IAAA,2CAAK4C,MAAM,mBAAmBQ,KAAK,SACjCb,EAAA,OAAAvC,IAAA,2CAAK4C,MAAM,+BACTL,EAAA,QAAAvC,IAAA,2CAAM4C,MAAM,yBAAyBQ,KAAK,cAAa,cAAa,SACpEb,EAAA,QAAAvC,IAAA,2CAAM4C,MAAM,oBAAoBQ,KAAK,UAClCd,IAAalE,KAAKG,SACjBgE,EAAA,QAAM5D,KAAK,iBACT4D,EAAA,QAAMK,MAAM,4CAA4CQ,KAAK,OAAM,cAAa,QAC7EhF,KAAKW,eAIVwD,EAAA,QAAM5D,KAAK,mBACT4D,EAAA,QAAMK,MAAM,4CAA4CQ,KAAK,OAAM,cAAa,QAC7EhF,KAAKY,qB","ignoreList":[]}