@windmorph/react 0.0.0-stage → 0.1.1

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 (761) hide show
  1. package/LICENSE +21 -0
  2. package/NOTICE +23 -0
  3. package/README.md +149 -2
  4. package/dist/cli.d.ts +1 -0
  5. package/dist/cli.js +112 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/components/app-bar/AppBarItems.js +23 -0
  8. package/dist/components/app-bar/AppBarItems.js.map +1 -0
  9. package/dist/components/app-bar/TopAppBar.d.ts +89 -0
  10. package/dist/components/app-bar/TopAppBar.js +103 -0
  11. package/dist/components/app-bar/TopAppBar.js.map +1 -0
  12. package/dist/components/app-bar/app-bar-styles.d.ts +280 -0
  13. package/dist/components/app-bar/app-bar-styles.js +142 -0
  14. package/dist/components/app-bar/app-bar-styles.js.map +1 -0
  15. package/dist/components/app-bar/app-bar-tokens.d.ts +7 -0
  16. package/dist/components/app-bar/app-bar-tokens.js +64 -0
  17. package/dist/components/app-bar/app-bar-tokens.js.map +1 -0
  18. package/dist/components/app-bar/use-app-bar-scroll.d.ts +6 -0
  19. package/dist/components/app-bar/use-app-bar-scroll.js +139 -0
  20. package/dist/components/app-bar/use-app-bar-scroll.js.map +1 -0
  21. package/dist/components/autocomplete/Autocomplete.d.ts +142 -0
  22. package/dist/components/autocomplete/Autocomplete.js +284 -0
  23. package/dist/components/autocomplete/Autocomplete.js.map +1 -0
  24. package/dist/components/badge/Badge.d.ts +71 -0
  25. package/dist/components/badge/Badge.js +72 -0
  26. package/dist/components/badge/Badge.js.map +1 -0
  27. package/dist/components/badge/badge-styles.d.ts +100 -0
  28. package/dist/components/badge/badge-styles.js +43 -0
  29. package/dist/components/badge/badge-styles.js.map +1 -0
  30. package/dist/components/badge/badge-tokens.d.ts +7 -0
  31. package/dist/components/badge/badge-tokens.js +40 -0
  32. package/dist/components/badge/badge-tokens.js.map +1 -0
  33. package/dist/components/button/Button.d.ts +91 -0
  34. package/dist/components/button/Button.js +96 -0
  35. package/dist/components/button/Button.js.map +1 -0
  36. package/dist/components/button/ButtonContext.d.ts +30 -0
  37. package/dist/components/button/ButtonContext.js +18 -0
  38. package/dist/components/button/ButtonContext.js.map +1 -0
  39. package/dist/components/button/DensityZeroButtons.js +25 -0
  40. package/dist/components/button/DensityZeroButtons.js.map +1 -0
  41. package/dist/components/button/button-pending.d.ts +10 -0
  42. package/dist/components/button/button-pending.js +166 -0
  43. package/dist/components/button/button-pending.js.map +1 -0
  44. package/dist/components/button/button-styles.d.ts +216 -0
  45. package/dist/components/button/button-styles.js +199 -0
  46. package/dist/components/button/button-styles.js.map +1 -0
  47. package/dist/components/button/button-tokens.d.ts +10 -0
  48. package/dist/components/button/button-tokens.js +257 -0
  49. package/dist/components/button/button-tokens.js.map +1 -0
  50. package/dist/components/button/connected-shapes.js +152 -0
  51. package/dist/components/button/connected-shapes.js.map +1 -0
  52. package/dist/components/card/Card.d.ts +60 -0
  53. package/dist/components/card/Card.js +69 -0
  54. package/dist/components/card/Card.js.map +1 -0
  55. package/dist/components/card/card-styles.d.ts +42 -0
  56. package/dist/components/card/card-styles.js +64 -0
  57. package/dist/components/card/card-styles.js.map +1 -0
  58. package/dist/components/card/card-tokens.d.ts +7 -0
  59. package/dist/components/card/card-tokens.js +84 -0
  60. package/dist/components/card/card-tokens.js.map +1 -0
  61. package/dist/components/carousel/Carousel.d.ts +124 -0
  62. package/dist/components/carousel/Carousel.js +387 -0
  63. package/dist/components/carousel/Carousel.js.map +1 -0
  64. package/dist/components/carousel/carousel-keylines.js +486 -0
  65. package/dist/components/carousel/carousel-keylines.js.map +1 -0
  66. package/dist/components/carousel/carousel-press-area.js +35 -0
  67. package/dist/components/carousel/carousel-press-area.js.map +1 -0
  68. package/dist/components/carousel/carousel-styles.d.ts +188 -0
  69. package/dist/components/carousel/carousel-styles.js +116 -0
  70. package/dist/components/carousel/carousel-styles.js.map +1 -0
  71. package/dist/components/carousel/carousel-tokens.d.ts +7 -0
  72. package/dist/components/carousel/carousel-tokens.js +18 -0
  73. package/dist/components/carousel/carousel-tokens.js.map +1 -0
  74. package/dist/components/checkbox/Checkbox.d.ts +78 -0
  75. package/dist/components/checkbox/Checkbox.js +77 -0
  76. package/dist/components/checkbox/Checkbox.js.map +1 -0
  77. package/dist/components/checkbox/checkbox-box.js +34 -0
  78. package/dist/components/checkbox/checkbox-box.js.map +1 -0
  79. package/dist/components/checkbox/checkbox-styles.d.ts +100 -0
  80. package/dist/components/checkbox/checkbox-styles.js +54 -0
  81. package/dist/components/checkbox/checkbox-styles.js.map +1 -0
  82. package/dist/components/checkbox/checkbox-tokens.d.ts +7 -0
  83. package/dist/components/checkbox/checkbox-tokens.js +41 -0
  84. package/dist/components/checkbox/checkbox-tokens.js.map +1 -0
  85. package/dist/components/chip/Chip.d.ts +171 -0
  86. package/dist/components/chip/Chip.js +348 -0
  87. package/dist/components/chip/Chip.js.map +1 -0
  88. package/dist/components/chip/ChipSet.d.ts +70 -0
  89. package/dist/components/chip/ChipSet.js +198 -0
  90. package/dist/components/chip/ChipSet.js.map +1 -0
  91. package/dist/components/chip/chip-styles.d.ts +263 -0
  92. package/dist/components/chip/chip-styles.js +360 -0
  93. package/dist/components/chip/chip-styles.js.map +1 -0
  94. package/dist/components/chip/chip-tokens.d.ts +13 -0
  95. package/dist/components/chip/chip-tokens.js +185 -0
  96. package/dist/components/chip/chip-tokens.js.map +1 -0
  97. package/dist/components/date-picker/CalendarGrid.js +94 -0
  98. package/dist/components/date-picker/CalendarGrid.js.map +1 -0
  99. package/dist/components/date-picker/CompactDateDialog.js +63 -0
  100. package/dist/components/date-picker/CompactDateDialog.js.map +1 -0
  101. package/dist/components/date-picker/DateField.d.ts +161 -0
  102. package/dist/components/date-picker/DateField.js +393 -0
  103. package/dist/components/date-picker/DateField.js.map +1 -0
  104. package/dist/components/date-picker/DateInput.d.ts +20 -0
  105. package/dist/components/date-picker/DateInput.js +99 -0
  106. package/dist/components/date-picker/DateInput.js.map +1 -0
  107. package/dist/components/date-picker/DatePicker.d.ts +165 -0
  108. package/dist/components/date-picker/DatePicker.js +492 -0
  109. package/dist/components/date-picker/DatePicker.js.map +1 -0
  110. package/dist/components/date-picker/PickerDialog.d.ts +121 -0
  111. package/dist/components/date-picker/PickerDialog.js +161 -0
  112. package/dist/components/date-picker/PickerDialog.js.map +1 -0
  113. package/dist/components/date-picker/calendar-parts.js +141 -0
  114. package/dist/components/date-picker/calendar-parts.js.map +1 -0
  115. package/dist/components/date-picker/date-format.js +72 -0
  116. package/dist/components/date-picker/date-format.js.map +1 -0
  117. package/dist/components/date-picker/date-picker-styles.d.ts +247 -0
  118. package/dist/components/date-picker/date-picker-styles.js +163 -0
  119. package/dist/components/date-picker/date-picker-styles.js.map +1 -0
  120. package/dist/components/date-picker/date-picker-tokens.d.ts +7 -0
  121. package/dist/components/date-picker/date-picker-tokens.js +104 -0
  122. package/dist/components/date-picker/date-picker-tokens.js.map +1 -0
  123. package/dist/components/date-picker/picker-dialog-context.js +8 -0
  124. package/dist/components/date-picker/picker-dialog-context.js.map +1 -0
  125. package/dist/components/date-picker/picker-dialog-styles.d.ts +95 -0
  126. package/dist/components/date-picker/picker-dialog-styles.js +57 -0
  127. package/dist/components/date-picker/picker-dialog-styles.js.map +1 -0
  128. package/dist/components/date-picker/picker-icons.js +24 -0
  129. package/dist/components/date-picker/picker-icons.js.map +1 -0
  130. package/dist/components/date-picker/use-media-query.js +21 -0
  131. package/dist/components/date-picker/use-media-query.js.map +1 -0
  132. package/dist/components/date-picker/use-size-transform.js +62 -0
  133. package/dist/components/date-picker/use-size-transform.js.map +1 -0
  134. package/dist/components/date-picker/use-view-exit.js +68 -0
  135. package/dist/components/date-picker/use-view-exit.js.map +1 -0
  136. package/dist/components/dialog/Dialog.d.ts +267 -0
  137. package/dist/components/dialog/Dialog.js +521 -0
  138. package/dist/components/dialog/Dialog.js.map +1 -0
  139. package/dist/components/dialog/dialog-styles.d.ts +335 -0
  140. package/dist/components/dialog/dialog-styles.js +377 -0
  141. package/dist/components/dialog/dialog-styles.js.map +1 -0
  142. package/dist/components/dialog/dialog-tokens.d.ts +7 -0
  143. package/dist/components/dialog/dialog-tokens.js +57 -0
  144. package/dist/components/dialog/dialog-tokens.js.map +1 -0
  145. package/dist/components/divider/Divider.d.ts +59 -0
  146. package/dist/components/divider/Divider.js +53 -0
  147. package/dist/components/divider/Divider.js.map +1 -0
  148. package/dist/components/divider/divider-styles.d.ts +90 -0
  149. package/dist/components/divider/divider-styles.js +66 -0
  150. package/dist/components/divider/divider-styles.js.map +1 -0
  151. package/dist/components/divider/divider-tokens.d.ts +7 -0
  152. package/dist/components/divider/divider-tokens.js +16 -0
  153. package/dist/components/divider/divider-tokens.js.map +1 -0
  154. package/dist/components/fab/Fab.d.ts +130 -0
  155. package/dist/components/fab/Fab.js +137 -0
  156. package/dist/components/fab/Fab.js.map +1 -0
  157. package/dist/components/fab/FabTooltip.js +36 -0
  158. package/dist/components/fab/FabTooltip.js.map +1 -0
  159. package/dist/components/fab/fab-styles.d.ts +286 -0
  160. package/dist/components/fab/fab-styles.js +131 -0
  161. package/dist/components/fab/fab-styles.js.map +1 -0
  162. package/dist/components/fab/fab-tokens.d.ts +12 -0
  163. package/dist/components/fab/fab-tokens.js +105 -0
  164. package/dist/components/fab/fab-tokens.js.map +1 -0
  165. package/dist/components/fab-menu/FabMenu.d.ts +156 -0
  166. package/dist/components/fab-menu/FabMenu.js +291 -0
  167. package/dist/components/fab-menu/FabMenu.js.map +1 -0
  168. package/dist/components/fab-menu/fab-menu-stagger.js +51 -0
  169. package/dist/components/fab-menu/fab-menu-stagger.js.map +1 -0
  170. package/dist/components/fab-menu/fab-menu-styles.d.ts +166 -0
  171. package/dist/components/fab-menu/fab-menu-styles.js +107 -0
  172. package/dist/components/fab-menu/fab-menu-styles.js.map +1 -0
  173. package/dist/components/fab-menu/fab-menu-tokens.d.ts +7 -0
  174. package/dist/components/fab-menu/fab-menu-tokens.js +120 -0
  175. package/dist/components/fab-menu/fab-menu-tokens.js.map +1 -0
  176. package/dist/components/icon-button/IconButton.d.ts +125 -0
  177. package/dist/components/icon-button/IconButton.js +112 -0
  178. package/dist/components/icon-button/IconButton.js.map +1 -0
  179. package/dist/components/icon-button/icon-button-styles.d.ts +217 -0
  180. package/dist/components/icon-button/icon-button-styles.js +244 -0
  181. package/dist/components/icon-button/icon-button-styles.js.map +1 -0
  182. package/dist/components/icon-button/icon-button-tokens.d.ts +11 -0
  183. package/dist/components/icon-button/icon-button-tokens.js +215 -0
  184. package/dist/components/icon-button/icon-button-tokens.js.map +1 -0
  185. package/dist/components/list/List.d.ts +265 -0
  186. package/dist/components/list/List.js +1386 -0
  187. package/dist/components/list/List.js.map +1 -0
  188. package/dist/components/list/ListMedia.d.ts +88 -0
  189. package/dist/components/list/ListMedia.js +132 -0
  190. package/dist/components/list/ListMedia.js.map +1 -0
  191. package/dist/components/list/list-styles.d.ts +375 -0
  192. package/dist/components/list/list-styles.js +220 -0
  193. package/dist/components/list/list-styles.js.map +1 -0
  194. package/dist/components/list/list-tokens.d.ts +7 -0
  195. package/dist/components/list/list-tokens.js +92 -0
  196. package/dist/components/list/list-tokens.js.map +1 -0
  197. package/dist/components/loading-indicator/LoadingIndicator.d.ts +65 -0
  198. package/dist/components/loading-indicator/LoadingIndicator.js +92 -0
  199. package/dist/components/loading-indicator/LoadingIndicator.js.map +1 -0
  200. package/dist/components/loading-indicator/lazy-loading-indicator.js +25 -0
  201. package/dist/components/loading-indicator/lazy-loading-indicator.js.map +1 -0
  202. package/dist/components/loading-indicator/loading-indicator-frames.js +149 -0
  203. package/dist/components/loading-indicator/loading-indicator-frames.js.map +1 -0
  204. package/dist/components/loading-indicator/loading-indicator-styles.d.ts +36 -0
  205. package/dist/components/loading-indicator/loading-indicator-styles.js +22 -0
  206. package/dist/components/loading-indicator/loading-indicator-styles.js.map +1 -0
  207. package/dist/components/loading-indicator/loading-indicator-tokens.d.ts +7 -0
  208. package/dist/components/loading-indicator/loading-indicator-tokens.js +44 -0
  209. package/dist/components/loading-indicator/loading-indicator-tokens.js.map +1 -0
  210. package/dist/components/menu/Menu.d.ts +215 -0
  211. package/dist/components/menu/Menu.js +715 -0
  212. package/dist/components/menu/Menu.js.map +1 -0
  213. package/dist/components/menu/menu-styles.d.ts +354 -0
  214. package/dist/components/menu/menu-styles.js +219 -0
  215. package/dist/components/menu/menu-styles.js.map +1 -0
  216. package/dist/components/menu/menu-tokens.d.ts +7 -0
  217. package/dist/components/menu/menu-tokens.js +93 -0
  218. package/dist/components/menu/menu-tokens.js.map +1 -0
  219. package/dist/components/menu/menu-trigger.d.ts +51 -0
  220. package/dist/components/menu/menu-trigger.js +100 -0
  221. package/dist/components/menu/menu-trigger.js.map +1 -0
  222. package/dist/components/menu/use-reveal-entering.js +42 -0
  223. package/dist/components/menu/use-reveal-entering.js.map +1 -0
  224. package/dist/components/navigation/NavItem.d.ts +54 -0
  225. package/dist/components/navigation/NavItem.js +182 -0
  226. package/dist/components/navigation/NavItem.js.map +1 -0
  227. package/dist/components/navigation/NavigationBar.d.ts +64 -0
  228. package/dist/components/navigation/NavigationBar.js +121 -0
  229. package/dist/components/navigation/NavigationBar.js.map +1 -0
  230. package/dist/components/navigation/NavigationRail.d.ts +91 -0
  231. package/dist/components/navigation/NavigationRail.js +285 -0
  232. package/dist/components/navigation/NavigationRail.js.map +1 -0
  233. package/dist/components/navigation/nav-item-styles.d.ts +190 -0
  234. package/dist/components/navigation/nav-item-styles.js +123 -0
  235. package/dist/components/navigation/nav-item-styles.js.map +1 -0
  236. package/dist/components/navigation/navigation-styles.d.ts +239 -0
  237. package/dist/components/navigation/navigation-styles.js +134 -0
  238. package/dist/components/navigation/navigation-styles.js.map +1 -0
  239. package/dist/components/navigation/navigation-tokens.d.ts +9 -0
  240. package/dist/components/navigation/navigation-tokens.js +114 -0
  241. package/dist/components/navigation/navigation-tokens.js.map +1 -0
  242. package/dist/components/navigation/use-hide-on-scroll.js +115 -0
  243. package/dist/components/navigation/use-hide-on-scroll.js.map +1 -0
  244. package/dist/components/navigation/use-item-arrow-keys.js +37 -0
  245. package/dist/components/navigation/use-item-arrow-keys.js.map +1 -0
  246. package/dist/components/navigation/use-rail-item-morph.js +61 -0
  247. package/dist/components/navigation/use-rail-item-morph.js.map +1 -0
  248. package/dist/components/progress/ProgressIndicator.d.ts +95 -0
  249. package/dist/components/progress/ProgressIndicator.js +426 -0
  250. package/dist/components/progress/ProgressIndicator.js.map +1 -0
  251. package/dist/components/progress/progress-geometry.js +285 -0
  252. package/dist/components/progress/progress-geometry.js.map +1 -0
  253. package/dist/components/progress/progress-styles.d.ts +81 -0
  254. package/dist/components/progress/progress-styles.js +43 -0
  255. package/dist/components/progress/progress-styles.js.map +1 -0
  256. package/dist/components/progress/progress-tokens.d.ts +7 -0
  257. package/dist/components/progress/progress-tokens.js +39 -0
  258. package/dist/components/progress/progress-tokens.js.map +1 -0
  259. package/dist/components/pull-to-refresh/PullToRefresh.d.ts +94 -0
  260. package/dist/components/pull-to-refresh/PullToRefresh.js +395 -0
  261. package/dist/components/pull-to-refresh/PullToRefresh.js.map +1 -0
  262. package/dist/components/pull-to-refresh/pull-to-refresh-math.js +37 -0
  263. package/dist/components/pull-to-refresh/pull-to-refresh-math.js.map +1 -0
  264. package/dist/components/pull-to-refresh/pull-to-refresh-styles.d.ts +53 -0
  265. package/dist/components/pull-to-refresh/pull-to-refresh-styles.js +14 -0
  266. package/dist/components/pull-to-refresh/pull-to-refresh-styles.js.map +1 -0
  267. package/dist/components/radio/RadioGroup.d.ts +121 -0
  268. package/dist/components/radio/RadioGroup.js +163 -0
  269. package/dist/components/radio/RadioGroup.js.map +1 -0
  270. package/dist/components/radio/radio-ring.js +21 -0
  271. package/dist/components/radio/radio-ring.js.map +1 -0
  272. package/dist/components/radio/radio-styles.d.ts +155 -0
  273. package/dist/components/radio/radio-styles.js +60 -0
  274. package/dist/components/radio/radio-styles.js.map +1 -0
  275. package/dist/components/radio/radio-tokens.d.ts +7 -0
  276. package/dist/components/radio/radio-tokens.js +31 -0
  277. package/dist/components/radio/radio-tokens.js.map +1 -0
  278. package/dist/components/search/SearchAppBar.d.ts +45 -0
  279. package/dist/components/search/SearchAppBar.js +61 -0
  280. package/dist/components/search/SearchAppBar.js.map +1 -0
  281. package/dist/components/search/SearchBar.d.ts +147 -0
  282. package/dist/components/search/SearchBar.js +412 -0
  283. package/dist/components/search/SearchBar.js.map +1 -0
  284. package/dist/components/search/search-styles.d.ts +243 -0
  285. package/dist/components/search/search-styles.js +143 -0
  286. package/dist/components/search/search-styles.js.map +1 -0
  287. package/dist/components/search/search-tokens.d.ts +9 -0
  288. package/dist/components/search/search-tokens.js +70 -0
  289. package/dist/components/search/search-tokens.js.map +1 -0
  290. package/dist/components/select/Select.d.ts +187 -0
  291. package/dist/components/select/Select.js +319 -0
  292. package/dist/components/select/Select.js.map +1 -0
  293. package/dist/components/select/field-shell.d.ts +29 -0
  294. package/dist/components/select/field-shell.js +135 -0
  295. package/dist/components/select/field-shell.js.map +1 -0
  296. package/dist/components/select/option-list.d.ts +81 -0
  297. package/dist/components/select/option-list.js +291 -0
  298. package/dist/components/select/option-list.js.map +1 -0
  299. package/dist/components/select/search-list.js +135 -0
  300. package/dist/components/select/search-list.js.map +1 -0
  301. package/dist/components/select/selection-cap.js +30 -0
  302. package/dist/components/select/selection-cap.js.map +1 -0
  303. package/dist/components/sheet/BottomSheet.d.ts +154 -0
  304. package/dist/components/sheet/BottomSheet.js +442 -0
  305. package/dist/components/sheet/BottomSheet.js.map +1 -0
  306. package/dist/components/sheet/SheetTrigger.d.ts +25 -0
  307. package/dist/components/sheet/SheetTrigger.js +46 -0
  308. package/dist/components/sheet/SheetTrigger.js.map +1 -0
  309. package/dist/components/sheet/SideSheet.d.ts +139 -0
  310. package/dist/components/sheet/SideSheet.js +289 -0
  311. package/dist/components/sheet/SideSheet.js.map +1 -0
  312. package/dist/components/sheet/bottom-sheet-gesture.js +30 -0
  313. package/dist/components/sheet/bottom-sheet-gesture.js.map +1 -0
  314. package/dist/components/sheet/lazy-bottom-sheet.js +33 -0
  315. package/dist/components/sheet/lazy-bottom-sheet.js.map +1 -0
  316. package/dist/components/sheet/sheet-gesture.js +48 -0
  317. package/dist/components/sheet/sheet-gesture.js.map +1 -0
  318. package/dist/components/sheet/sheet-icons.js +31 -0
  319. package/dist/components/sheet/sheet-icons.js.map +1 -0
  320. package/dist/components/sheet/sheet-settle.js +58 -0
  321. package/dist/components/sheet/sheet-settle.js.map +1 -0
  322. package/dist/components/sheet/sheet-styles.d.ts +312 -0
  323. package/dist/components/sheet/sheet-styles.js +229 -0
  324. package/dist/components/sheet/sheet-styles.js.map +1 -0
  325. package/dist/components/sheet/sheet-tokens.d.ts +12 -0
  326. package/dist/components/sheet/sheet-tokens.js +115 -0
  327. package/dist/components/sheet/sheet-tokens.js.map +1 -0
  328. package/dist/components/sheet/side-swipe-gesture.js +22 -0
  329. package/dist/components/sheet/side-swipe-gesture.js.map +1 -0
  330. package/dist/components/sheet/use-peek-inert.js +32 -0
  331. package/dist/components/sheet/use-peek-inert.js.map +1 -0
  332. package/dist/components/sheet/use-side-swipe.js +174 -0
  333. package/dist/components/sheet/use-side-swipe.js.map +1 -0
  334. package/dist/components/slider/Slider.d.ts +129 -0
  335. package/dist/components/slider/Slider.js +295 -0
  336. package/dist/components/slider/Slider.js.map +1 -0
  337. package/dist/components/slider/slider-geometry.js +138 -0
  338. package/dist/components/slider/slider-geometry.js.map +1 -0
  339. package/dist/components/slider/slider-styles.d.ts +133 -0
  340. package/dist/components/slider/slider-styles.js +97 -0
  341. package/dist/components/slider/slider-styles.js.map +1 -0
  342. package/dist/components/slider/slider-tokens.d.ts +7 -0
  343. package/dist/components/slider/slider-tokens.js +66 -0
  344. package/dist/components/slider/slider-tokens.js.map +1 -0
  345. package/dist/components/slider/use-touch-track.js +138 -0
  346. package/dist/components/slider/use-touch-track.js.map +1 -0
  347. package/dist/components/snackbar/Snackbar.d.ts +96 -0
  348. package/dist/components/snackbar/Snackbar.js +253 -0
  349. package/dist/components/snackbar/Snackbar.js.map +1 -0
  350. package/dist/components/snackbar/snackbar-state.d.ts +58 -0
  351. package/dist/components/snackbar/snackbar-state.js +73 -0
  352. package/dist/components/snackbar/snackbar-state.js.map +1 -0
  353. package/dist/components/snackbar/snackbar-styles.d.ts +109 -0
  354. package/dist/components/snackbar/snackbar-styles.js +67 -0
  355. package/dist/components/snackbar/snackbar-styles.js.map +1 -0
  356. package/dist/components/snackbar/snackbar-tokens.d.ts +7 -0
  357. package/dist/components/snackbar/snackbar-tokens.js +54 -0
  358. package/dist/components/snackbar/snackbar-tokens.js.map +1 -0
  359. package/dist/components/split-button/SplitButton.d.ts +109 -0
  360. package/dist/components/split-button/SplitButton.js +195 -0
  361. package/dist/components/split-button/SplitButton.js.map +1 -0
  362. package/dist/components/split-button/split-button-styles.d.ts +214 -0
  363. package/dist/components/split-button/split-button-styles.js +164 -0
  364. package/dist/components/split-button/split-button-styles.js.map +1 -0
  365. package/dist/components/split-button/split-button-tokens.d.ts +7 -0
  366. package/dist/components/split-button/split-button-tokens.js +36 -0
  367. package/dist/components/split-button/split-button-tokens.js.map +1 -0
  368. package/dist/components/switch/Switch.d.ts +82 -0
  369. package/dist/components/switch/Switch.js +165 -0
  370. package/dist/components/switch/Switch.js.map +1 -0
  371. package/dist/components/switch/switch-styles.d.ts +96 -0
  372. package/dist/components/switch/switch-styles.js +68 -0
  373. package/dist/components/switch/switch-styles.js.map +1 -0
  374. package/dist/components/switch/switch-thumb.js +41 -0
  375. package/dist/components/switch/switch-thumb.js.map +1 -0
  376. package/dist/components/switch/switch-tokens.d.ts +7 -0
  377. package/dist/components/switch/switch-tokens.js +78 -0
  378. package/dist/components/switch/switch-tokens.js.map +1 -0
  379. package/dist/components/tabs/Tabs.d.ts +120 -0
  380. package/dist/components/tabs/Tabs.js +346 -0
  381. package/dist/components/tabs/Tabs.js.map +1 -0
  382. package/dist/components/tabs/tabs-styles.d.ts +198 -0
  383. package/dist/components/tabs/tabs-styles.js +99 -0
  384. package/dist/components/tabs/tabs-styles.js.map +1 -0
  385. package/dist/components/tabs/tabs-tokens.d.ts +7 -0
  386. package/dist/components/tabs/tabs-tokens.js +121 -0
  387. package/dist/components/tabs/tabs-tokens.js.map +1 -0
  388. package/dist/components/text-field/TextField.d.ts +175 -0
  389. package/dist/components/text-field/TextField.js +250 -0
  390. package/dist/components/text-field/TextField.js.map +1 -0
  391. package/dist/components/text-field/text-field-styles.d.ts +252 -0
  392. package/dist/components/text-field/text-field-styles.js +209 -0
  393. package/dist/components/text-field/text-field-styles.js.map +1 -0
  394. package/dist/components/text-field/text-field-tokens.d.ts +7 -0
  395. package/dist/components/text-field/text-field-tokens.js +177 -0
  396. package/dist/components/text-field/text-field-tokens.js.map +1 -0
  397. package/dist/components/time-picker/TimePicker.d.ts +142 -0
  398. package/dist/components/time-picker/TimePicker.js +700 -0
  399. package/dist/components/time-picker/TimePicker.js.map +1 -0
  400. package/dist/components/time-picker/time-picker-styles.d.ts +175 -0
  401. package/dist/components/time-picker/time-picker-styles.js +112 -0
  402. package/dist/components/time-picker/time-picker-styles.js.map +1 -0
  403. package/dist/components/time-picker/time-picker-tokens.d.ts +7 -0
  404. package/dist/components/time-picker/time-picker-tokens.js +86 -0
  405. package/dist/components/time-picker/time-picker-tokens.js.map +1 -0
  406. package/dist/components/toolbar/Toolbar.d.ts +209 -0
  407. package/dist/components/toolbar/Toolbar.js +282 -0
  408. package/dist/components/toolbar/Toolbar.js.map +1 -0
  409. package/dist/components/toolbar/toolbar-styles.d.ts +403 -0
  410. package/dist/components/toolbar/toolbar-styles.js +253 -0
  411. package/dist/components/toolbar/toolbar-styles.js.map +1 -0
  412. package/dist/components/toolbar/toolbar-tokens.d.ts +27 -0
  413. package/dist/components/toolbar/toolbar-tokens.js +117 -0
  414. package/dist/components/toolbar/toolbar-tokens.js.map +1 -0
  415. package/dist/components/toolbar/use-toolbar-scroll-expansion.d.ts +56 -0
  416. package/dist/components/toolbar/use-toolbar-scroll-expansion.js +86 -0
  417. package/dist/components/toolbar/use-toolbar-scroll-expansion.js.map +1 -0
  418. package/dist/components/tooltip/Tooltip.d.ts +131 -0
  419. package/dist/components/tooltip/Tooltip.js +388 -0
  420. package/dist/components/tooltip/Tooltip.js.map +1 -0
  421. package/dist/components/tooltip/lazy-tooltip.js +35 -0
  422. package/dist/components/tooltip/lazy-tooltip.js.map +1 -0
  423. package/dist/components/tooltip/tooltip-placement.d.ts +16 -0
  424. package/dist/components/tooltip/tooltip-placement.js +14 -0
  425. package/dist/components/tooltip/tooltip-placement.js.map +1 -0
  426. package/dist/components/tooltip/tooltip-styles.d.ts +142 -0
  427. package/dist/components/tooltip/tooltip-styles.js +81 -0
  428. package/dist/components/tooltip/tooltip-styles.js.map +1 -0
  429. package/dist/components/tooltip/tooltip-tokens.d.ts +9 -0
  430. package/dist/components/tooltip/tooltip-tokens.js +72 -0
  431. package/dist/components/tooltip/tooltip-tokens.js.map +1 -0
  432. package/dist/components/tooltip/tooltip-trigger.d.ts +42 -0
  433. package/dist/components/tooltip/tooltip-trigger.js +115 -0
  434. package/dist/components/tooltip/tooltip-trigger.js.map +1 -0
  435. package/dist/composites/button-group/ButtonGroup.d.ts +116 -0
  436. package/dist/composites/button-group/ButtonGroup.js +270 -0
  437. package/dist/composites/button-group/ButtonGroup.js.map +1 -0
  438. package/dist/composites/button-group/button-group-styles.d.ts +73 -0
  439. package/dist/composites/button-group/button-group-styles.js +87 -0
  440. package/dist/composites/button-group/button-group-styles.js.map +1 -0
  441. package/dist/composites/button-group/lazy-overflow-menu.js +43 -0
  442. package/dist/composites/button-group/lazy-overflow-menu.js.map +1 -0
  443. package/dist/composites/button-group/overflow-menu-list.js +26 -0
  444. package/dist/composites/button-group/overflow-menu-list.js.map +1 -0
  445. package/dist/composites/button-group/use-overflow.js +75 -0
  446. package/dist/composites/button-group/use-overflow.js.map +1 -0
  447. package/dist/composites/button-group/use-press-expansion.js +155 -0
  448. package/dist/composites/button-group/use-press-expansion.js.map +1 -0
  449. package/dist/index.d.ts +142 -0
  450. package/dist/index.js +136 -0
  451. package/dist/motion/get-m3-spring.d.ts +6 -0
  452. package/dist/motion/get-m3-spring.js +10 -0
  453. package/dist/motion/get-m3-spring.js.map +1 -0
  454. package/dist/motion/reduced-motion.js +19 -0
  455. package/dist/motion/reduced-motion.js.map +1 -0
  456. package/dist/motion/use-m3-spring.d.ts +13 -0
  457. package/dist/motion/use-m3-spring.js +22 -0
  458. package/dist/motion/use-m3-spring.js.map +1 -0
  459. package/dist/next/NextRouterProvider.d.ts +13 -0
  460. package/dist/next/NextRouterProvider.js +26 -0
  461. package/dist/next/NextRouterProvider.js.map +1 -0
  462. package/dist/next/get-theme-from-cookies.d.ts +32 -0
  463. package/dist/next/get-theme-from-cookies.js +27 -0
  464. package/dist/next/get-theme-from-cookies.js.map +1 -0
  465. package/dist/next/navigation-guard.d.ts +30 -0
  466. package/dist/next/navigation-guard.js +68 -0
  467. package/dist/next/navigation-guard.js.map +1 -0
  468. package/dist/next.d.ts +5 -0
  469. package/dist/next.js +5 -0
  470. package/dist/primitives/ButtonBase.d.ts +115 -0
  471. package/dist/primitives/ButtonBase.js +231 -0
  472. package/dist/primitives/ButtonBase.js.map +1 -0
  473. package/dist/primitives/DomDirectionLocale.d.ts +18 -0
  474. package/dist/primitives/DomDirectionLocale.js +28 -0
  475. package/dist/primitives/DomDirectionLocale.js.map +1 -0
  476. package/dist/primitives/Field.d.ts +50 -0
  477. package/dist/primitives/Field.js +74 -0
  478. package/dist/primitives/Field.js.map +1 -0
  479. package/dist/primitives/IconFaces.js +23 -0
  480. package/dist/primitives/IconFaces.js.map +1 -0
  481. package/dist/primitives/Overlay.d.ts +39 -0
  482. package/dist/primitives/Overlay.js +86 -0
  483. package/dist/primitives/Overlay.js.map +1 -0
  484. package/dist/primitives/SelectionControl.d.ts +55 -0
  485. package/dist/primitives/SelectionControl.js +58 -0
  486. package/dist/primitives/SelectionControl.js.map +1 -0
  487. package/dist/primitives/Surface.d.ts +123 -0
  488. package/dist/primitives/Surface.js +68 -0
  489. package/dist/primitives/Surface.js.map +1 -0
  490. package/dist/primitives/ToolbarContext.js +12 -0
  491. package/dist/primitives/ToolbarContext.js.map +1 -0
  492. package/dist/primitives/TouchTarget.d.ts +14 -0
  493. package/dist/primitives/TouchTarget.js +20 -0
  494. package/dist/primitives/TouchTarget.js.map +1 -0
  495. package/dist/primitives/TriggerContext.d.ts +34 -0
  496. package/dist/primitives/TriggerContext.js +24 -0
  497. package/dist/primitives/TriggerContext.js.map +1 -0
  498. package/dist/primitives/hidden-input-focus.js +27 -0
  499. package/dist/primitives/hidden-input-focus.js.map +1 -0
  500. package/dist/primitives/icon-faces-styles.d.ts +9 -0
  501. package/dist/primitives/icon-faces-styles.js +45 -0
  502. package/dist/primitives/icon-faces-styles.js.map +1 -0
  503. package/dist/primitives/locale-with-direction.d.ts +9 -0
  504. package/dist/primitives/locale-with-direction.js +17 -0
  505. package/dist/primitives/locale-with-direction.js.map +1 -0
  506. package/dist/primitives/morph-path.d.ts +25 -0
  507. package/dist/primitives/morph-path.js +38 -0
  508. package/dist/primitives/morph-path.js.map +1 -0
  509. package/dist/primitives/selection-control-styles.d.ts +54 -0
  510. package/dist/primitives/selection-control-styles.js +44 -0
  511. package/dist/primitives/selection-control-styles.js.map +1 -0
  512. package/dist/primitives/use-m3-interaction.d.ts +51 -0
  513. package/dist/primitives/use-m3-interaction.js +149 -0
  514. package/dist/primitives/use-m3-interaction.js.map +1 -0
  515. package/dist/primitives/use-m3-morph.d.ts +18 -0
  516. package/dist/primitives/use-m3-morph.js +36 -0
  517. package/dist/primitives/use-m3-morph.js.map +1 -0
  518. package/dist/primitives/use-presence.d.ts +19 -0
  519. package/dist/primitives/use-presence.js +37 -0
  520. package/dist/primitives/use-presence.js.map +1 -0
  521. package/dist/primitives.d.ts +36 -0
  522. package/dist/primitives.js +34 -0
  523. package/dist/shapes/corner-rounding.d.ts +13 -0
  524. package/dist/shapes/corner-rounding.js +18 -0
  525. package/dist/shapes/corner-rounding.js.map +1 -0
  526. package/dist/shapes/cubic.d.ts +52 -0
  527. package/dist/shapes/cubic.js +189 -0
  528. package/dist/shapes/cubic.js.map +1 -0
  529. package/dist/shapes/feature-mapping.js +80 -0
  530. package/dist/shapes/feature-mapping.js.map +1 -0
  531. package/dist/shapes/features.d.ts +23 -0
  532. package/dist/shapes/features.js +82 -0
  533. package/dist/shapes/features.js.map +1 -0
  534. package/dist/shapes/float-mapping.js +65 -0
  535. package/dist/shapes/float-mapping.js.map +1 -0
  536. package/dist/shapes/generated/material-shape-path-record.d.ts +11 -0
  537. package/dist/shapes/generated/material-shape-path-record.js +48 -0
  538. package/dist/shapes/generated/material-shape-path-record.js.map +1 -0
  539. package/dist/shapes/generated/material-shape-paths.d.ts +78 -0
  540. package/dist/shapes/generated/material-shape-paths.js +218 -0
  541. package/dist/shapes/generated/material-shape-paths.js.map +1 -0
  542. package/dist/shapes/mask.d.ts +14 -0
  543. package/dist/shapes/mask.js +24 -0
  544. package/dist/shapes/mask.js.map +1 -0
  545. package/dist/shapes/material-shapes.d.ts +11 -0
  546. package/dist/shapes/material-shapes.js +250 -0
  547. package/dist/shapes/material-shapes.js.map +1 -0
  548. package/dist/shapes/morph.d.ts +25 -0
  549. package/dist/shapes/morph.js +97 -0
  550. package/dist/shapes/morph.js.map +1 -0
  551. package/dist/shapes/path.d.ts +33 -0
  552. package/dist/shapes/path.js +47 -0
  553. package/dist/shapes/path.js.map +1 -0
  554. package/dist/shapes/point.d.ts +28 -0
  555. package/dist/shapes/point.js +103 -0
  556. package/dist/shapes/point.js.map +1 -0
  557. package/dist/shapes/polygon-measure.js +140 -0
  558. package/dist/shapes/polygon-measure.js.map +1 -0
  559. package/dist/shapes/rounded-polygon.d.ts +44 -0
  560. package/dist/shapes/rounded-polygon.js +278 -0
  561. package/dist/shapes/rounded-polygon.js.map +1 -0
  562. package/dist/shapes/shape-path.d.ts +15 -0
  563. package/dist/shapes/shapes.d.ts +53 -0
  564. package/dist/shapes/shapes.js +171 -0
  565. package/dist/shapes/shapes.js.map +1 -0
  566. package/dist/styles/generated/components.css +710 -0
  567. package/dist/styles/generated/theme.css +247 -0
  568. package/dist/styles/generated/themes.css +3361 -0
  569. package/dist/styles/generated/tokens.css +284 -0
  570. package/dist/styles/styles.css +15 -0
  571. package/dist/styles/utilities.css +283 -0
  572. package/dist/styles.compiled.css +2 -0
  573. package/dist/theme/ThemeProvider.d.ts +72 -0
  574. package/dist/theme/ThemeProvider.js +144 -0
  575. package/dist/theme/ThemeProvider.js.map +1 -0
  576. package/dist/theme/ThemeScope.d.ts +32 -0
  577. package/dist/theme/ThemeScope.js +67 -0
  578. package/dist/theme/ThemeScope.js.map +1 -0
  579. package/dist/theme/ThemeScript.d.ts +26 -0
  580. package/dist/theme/ThemeScript.js +44 -0
  581. package/dist/theme/ThemeScript.js.map +1 -0
  582. package/dist/theme/context.d.ts +32 -0
  583. package/dist/theme/context.js +47 -0
  584. package/dist/theme/context.js.map +1 -0
  585. package/dist/theme/create-theme.d.ts +60 -0
  586. package/dist/theme/create-theme.js +47 -0
  587. package/dist/theme/create-theme.js.map +1 -0
  588. package/dist/theme/css.js +54 -0
  589. package/dist/theme/css.js.map +1 -0
  590. package/dist/theme/parse-palettes.js +40 -0
  591. package/dist/theme/parse-palettes.js.map +1 -0
  592. package/dist/theme/scheme.d.ts +6 -0
  593. package/dist/theme/scheme.js +118 -0
  594. package/dist/theme/scheme.js.map +1 -0
  595. package/dist/theme/state.d.ts +38 -0
  596. package/dist/theme/state.js +93 -0
  597. package/dist/theme/state.js.map +1 -0
  598. package/dist/theme/storage.js +21 -0
  599. package/dist/theme/storage.js.map +1 -0
  600. package/dist/tokens/breakpoints.d.ts +15 -0
  601. package/dist/tokens/breakpoints.js +16 -0
  602. package/dist/tokens/breakpoints.js.map +1 -0
  603. package/dist/tokens/color.d.ts +104 -0
  604. package/dist/tokens/color.js +147 -0
  605. package/dist/tokens/color.js.map +1 -0
  606. package/dist/tokens/component.d.ts +110 -0
  607. package/dist/tokens/component.js +67 -0
  608. package/dist/tokens/component.js.map +1 -0
  609. package/dist/tokens/density.d.ts +20 -0
  610. package/dist/tokens/density.js +27 -0
  611. package/dist/tokens/density.js.map +1 -0
  612. package/dist/tokens/elevation.d.ts +44 -0
  613. package/dist/tokens/elevation.js +45 -0
  614. package/dist/tokens/elevation.js.map +1 -0
  615. package/dist/tokens/motion.d.ts +79 -0
  616. package/dist/tokens/motion.js +126 -0
  617. package/dist/tokens/motion.js.map +1 -0
  618. package/dist/tokens/shape.d.ts +22 -0
  619. package/dist/tokens/shape.js +22 -0
  620. package/dist/tokens/shape.js.map +1 -0
  621. package/dist/tokens/spring-velocity.d.ts +19 -0
  622. package/dist/tokens/spring-velocity.js +44 -0
  623. package/dist/tokens/spring-velocity.js.map +1 -0
  624. package/dist/tokens/state.d.ts +18 -0
  625. package/dist/tokens/state.js +19 -0
  626. package/dist/tokens/state.js.map +1 -0
  627. package/dist/tokens/typography.d.ts +64 -0
  628. package/dist/tokens/typography.js +60 -0
  629. package/dist/tokens/typography.js.map +1 -0
  630. package/dist/tokens/z-index.d.ts +17 -0
  631. package/dist/tokens/z-index.js +18 -0
  632. package/dist/tokens/z-index.js.map +1 -0
  633. package/dist/utils/announce.js +51 -0
  634. package/dist/utils/announce.js.map +1 -0
  635. package/dist/utils/assert-collection-children.js +26 -0
  636. package/dist/utils/assert-collection-children.js.map +1 -0
  637. package/dist/utils/closed-by.d.ts +9 -0
  638. package/dist/utils/closed-by.js +12 -0
  639. package/dist/utils/closed-by.js.map +1 -0
  640. package/dist/utils/cn.d.ts +31 -0
  641. package/dist/utils/cn.js +37 -0
  642. package/dist/utils/cn.js.map +1 -0
  643. package/dist/utils/composite-keys.js +32 -0
  644. package/dist/utils/composite-keys.js.map +1 -0
  645. package/dist/utils/focus-visible.js +14 -0
  646. package/dist/utils/focus-visible.js.map +1 -0
  647. package/dist/utils/focus.js +51 -0
  648. package/dist/utils/focus.js.map +1 -0
  649. package/dist/utils/focusable-disabled.js +12 -0
  650. package/dist/utils/focusable-disabled.js.map +1 -0
  651. package/dist/utils/keep-pressed-in-place.d.ts +60 -0
  652. package/dist/utils/keep-pressed-in-place.js +127 -0
  653. package/dist/utils/keep-pressed-in-place.js.map +1 -0
  654. package/dist/utils/load-on-demand.js +111 -0
  655. package/dist/utils/load-on-demand.js.map +1 -0
  656. package/dist/utils/merge-data-tokens.d.ts +9 -0
  657. package/dist/utils/merge-data-tokens.js +15 -0
  658. package/dist/utils/merge-data-tokens.js.map +1 -0
  659. package/dist/utils/natural-size.js +53 -0
  660. package/dist/utils/natural-size.js.map +1 -0
  661. package/dist/utils/nearest-reveal.js +28 -0
  662. package/dist/utils/nearest-reveal.js.map +1 -0
  663. package/dist/utils/placement.js +14 -0
  664. package/dist/utils/placement.js.map +1 -0
  665. package/dist/utils/radio-group-keys.js +74 -0
  666. package/dist/utils/radio-group-keys.js.map +1 -0
  667. package/dist/utils/rendered-description.js +17 -0
  668. package/dist/utils/rendered-description.js.map +1 -0
  669. package/dist/utils/root-props.d.ts +103 -0
  670. package/dist/utils/root-props.js +51 -0
  671. package/dist/utils/root-props.js.map +1 -0
  672. package/dist/utils/search.d.ts +11 -0
  673. package/dist/utils/search.js +18 -0
  674. package/dist/utils/search.js.map +1 -0
  675. package/dist/utils/shortcut.js +20 -0
  676. package/dist/utils/shortcut.js.map +1 -0
  677. package/dist/utils/split-data-attributes.d.ts +12 -0
  678. package/dist/utils/split-data-attributes.js +20 -0
  679. package/dist/utils/split-data-attributes.js.map +1 -0
  680. package/dist/utils/toolbar-keys.js +28 -0
  681. package/dist/utils/toolbar-keys.js.map +1 -0
  682. package/dist/utils/tv.d.ts +7 -0
  683. package/dist/utils/tv.js +9 -0
  684. package/dist/utils/tv.js.map +1 -0
  685. package/dist/utils/typeahead.js +64 -0
  686. package/dist/utils/typeahead.js.map +1 -0
  687. package/dist/utils/warn-once.js +30 -0
  688. package/dist/utils/warn-once.js.map +1 -0
  689. package/dist/vendor/material-color-utilities/blend/blend.js +88 -0
  690. package/dist/vendor/material-color-utilities/blend/blend.js.map +1 -0
  691. package/dist/vendor/material-color-utilities/contrast/contrast.js +131 -0
  692. package/dist/vendor/material-color-utilities/contrast/contrast.js.map +1 -0
  693. package/dist/vendor/material-color-utilities/dislike/dislike_analyzer.js +58 -0
  694. package/dist/vendor/material-color-utilities/dislike/dislike_analyzer.js.map +1 -0
  695. package/dist/vendor/material-color-utilities/dynamiccolor/color_spec_2021.js +620 -0
  696. package/dist/vendor/material-color-utilities/dynamiccolor/color_spec_2021.js.map +1 -0
  697. package/dist/vendor/material-color-utilities/dynamiccolor/color_spec_2025.js +786 -0
  698. package/dist/vendor/material-color-utilities/dynamiccolor/color_spec_2025.js.map +1 -0
  699. package/dist/vendor/material-color-utilities/dynamiccolor/contrast_curve.js +59 -0
  700. package/dist/vendor/material-color-utilities/dynamiccolor/contrast_curve.js.map +1 -0
  701. package/dist/vendor/material-color-utilities/dynamiccolor/dynamic_color.js +420 -0
  702. package/dist/vendor/material-color-utilities/dynamiccolor/dynamic_color.js.map +1 -0
  703. package/dist/vendor/material-color-utilities/dynamiccolor/dynamic_scheme.js +701 -0
  704. package/dist/vendor/material-color-utilities/dynamiccolor/dynamic_scheme.js.map +1 -0
  705. package/dist/vendor/material-color-utilities/dynamiccolor/material_dynamic_colors.js +374 -0
  706. package/dist/vendor/material-color-utilities/dynamiccolor/material_dynamic_colors.js.map +1 -0
  707. package/dist/vendor/material-color-utilities/dynamiccolor/tone_delta_pair.js +65 -0
  708. package/dist/vendor/material-color-utilities/dynamiccolor/tone_delta_pair.js.map +1 -0
  709. package/dist/vendor/material-color-utilities/dynamiccolor/variant.js +38 -0
  710. package/dist/vendor/material-color-utilities/dynamiccolor/variant.js.map +1 -0
  711. package/dist/vendor/material-color-utilities/hct/cam16.js +309 -0
  712. package/dist/vendor/material-color-utilities/hct/cam16.js.map +1 -0
  713. package/dist/vendor/material-color-utilities/hct/hct.js +148 -0
  714. package/dist/vendor/material-color-utilities/hct/hct.js.map +1 -0
  715. package/dist/vendor/material-color-utilities/hct/hct_solver.js +660 -0
  716. package/dist/vendor/material-color-utilities/hct/hct_solver.js.map +1 -0
  717. package/dist/vendor/material-color-utilities/hct/viewing_conditions.js +117 -0
  718. package/dist/vendor/material-color-utilities/hct/viewing_conditions.js.map +1 -0
  719. package/dist/vendor/material-color-utilities/index.js +51 -0
  720. package/dist/vendor/material-color-utilities/index.js.map +1 -0
  721. package/dist/vendor/material-color-utilities/palettes/core_palette.js +22 -0
  722. package/dist/vendor/material-color-utilities/palettes/core_palette.js.map +1 -0
  723. package/dist/vendor/material-color-utilities/palettes/tonal_palette.js +134 -0
  724. package/dist/vendor/material-color-utilities/palettes/tonal_palette.js.map +1 -0
  725. package/dist/vendor/material-color-utilities/scheme/scheme.js +21 -0
  726. package/dist/vendor/material-color-utilities/scheme/scheme.js.map +1 -0
  727. package/dist/vendor/material-color-utilities/scheme/scheme_android.js +21 -0
  728. package/dist/vendor/material-color-utilities/scheme/scheme_android.js.map +1 -0
  729. package/dist/vendor/material-color-utilities/scheme/scheme_content.js +22 -0
  730. package/dist/vendor/material-color-utilities/scheme/scheme_content.js.map +1 -0
  731. package/dist/vendor/material-color-utilities/scheme/scheme_expressive.js +38 -0
  732. package/dist/vendor/material-color-utilities/scheme/scheme_expressive.js.map +1 -0
  733. package/dist/vendor/material-color-utilities/scheme/scheme_fidelity.js +22 -0
  734. package/dist/vendor/material-color-utilities/scheme/scheme_fidelity.js.map +1 -0
  735. package/dist/vendor/material-color-utilities/scheme/scheme_fruit_salad.js +22 -0
  736. package/dist/vendor/material-color-utilities/scheme/scheme_fruit_salad.js.map +1 -0
  737. package/dist/vendor/material-color-utilities/scheme/scheme_monochrome.js +22 -0
  738. package/dist/vendor/material-color-utilities/scheme/scheme_monochrome.js.map +1 -0
  739. package/dist/vendor/material-color-utilities/scheme/scheme_neutral.js +36 -0
  740. package/dist/vendor/material-color-utilities/scheme/scheme_neutral.js.map +1 -0
  741. package/dist/vendor/material-color-utilities/scheme/scheme_rainbow.js +22 -0
  742. package/dist/vendor/material-color-utilities/scheme/scheme_rainbow.js.map +1 -0
  743. package/dist/vendor/material-color-utilities/scheme/scheme_tonal_spot.js +41 -0
  744. package/dist/vendor/material-color-utilities/scheme/scheme_tonal_spot.js.map +1 -0
  745. package/dist/vendor/material-color-utilities/scheme/scheme_vibrant.js +39 -0
  746. package/dist/vendor/material-color-utilities/scheme/scheme_vibrant.js.map +1 -0
  747. package/dist/vendor/material-color-utilities/score/score.js +115 -0
  748. package/dist/vendor/material-color-utilities/score/score.js.map +1 -0
  749. package/dist/vendor/material-color-utilities/temperature/temperature_cache.js +227 -0
  750. package/dist/vendor/material-color-utilities/temperature/temperature_cache.js.map +1 -0
  751. package/dist/vendor/material-color-utilities/utils/color_utils.js +246 -0
  752. package/dist/vendor/material-color-utilities/utils/color_utils.js.map +1 -0
  753. package/dist/vendor/material-color-utilities/utils/image_utils.js +21 -0
  754. package/dist/vendor/material-color-utilities/utils/image_utils.js.map +1 -0
  755. package/dist/vendor/material-color-utilities/utils/math_utils.js +119 -0
  756. package/dist/vendor/material-color-utilities/utils/math_utils.js.map +1 -0
  757. package/dist/vendor/material-color-utilities/utils/string_utils.js +74 -0
  758. package/dist/vendor/material-color-utilities/utils/string_utils.js.map +1 -0
  759. package/dist/vendor/material-color-utilities/utils/theme_utils.js +24 -0
  760. package/dist/vendor/material-color-utilities/utils/theme_utils.js.map +1 -0
  761. package/package.json +114 -3
@@ -0,0 +1,126 @@
1
+ //#region src/tokens/motion.ts
2
+ /**
3
+ * M3 Expressive motion: spring tokens for the `expressive` and `standard` motion
4
+ * schemes (Compose `ExpressiveMotionTokens` / `StandardMotionTokens`), plus the
5
+ * legacy duration + easing tokens for consumers migrating from baseline M3.
6
+ *
7
+ * Compose springs are expressed as a damping ratio and stiffness with mass 1.
8
+ * Motion (`motion/react`) takes a damping coefficient, so
9
+ * `damping = 2 * dampingRatio * sqrt(stiffness * mass)`.
10
+ */
11
+ const MOTION_SCHEMES = ["expressive", "standard"];
12
+ const DEFAULT_MOTION_SCHEME = "expressive";
13
+ const SPRING_FAMILIES = ["spatial", "effects"];
14
+ const SPRING_SPEEDS = [
15
+ "fast",
16
+ "default",
17
+ "slow"
18
+ ];
19
+ const spring = (dampingRatio, stiffness) => ({
20
+ dampingRatio,
21
+ stiffness
22
+ });
23
+ const EFFECTS = {
24
+ fast: spring(1, 3800),
25
+ default: spring(1, 1600),
26
+ slow: spring(1, 800)
27
+ };
28
+ const SPRINGS = {
29
+ expressive: {
30
+ spatial: {
31
+ fast: spring(.6, 800),
32
+ default: spring(.8, 380),
33
+ slow: spring(.8, 200)
34
+ },
35
+ effects: EFFECTS
36
+ },
37
+ standard: {
38
+ spatial: {
39
+ fast: spring(.9, 1400),
40
+ default: spring(.9, 700),
41
+ slow: spring(.9, 300)
42
+ },
43
+ effects: EFFECTS
44
+ }
45
+ };
46
+ function toMotionSpring({ dampingRatio, stiffness }) {
47
+ const mass = 1;
48
+ return {
49
+ type: "spring",
50
+ stiffness,
51
+ damping: Math.round(2 * dampingRatio * Math.sqrt(stiffness * mass) * 100) / 100,
52
+ mass
53
+ };
54
+ }
55
+ /** Normalised displacement threshold at which a spring is treated as settled. */
56
+ const SETTLE_THRESHOLD = .001;
57
+ /**
58
+ * Position of a unit step spring (0 → 1, mass 1) at time `t` seconds,
59
+ * using the closed-form solution for under- and critically-damped springs.
60
+ */
61
+ function springPosition({ dampingRatio: z, stiffness: k }, t) {
62
+ const w0 = Math.sqrt(k);
63
+ if (z < 1) {
64
+ const wd = w0 * Math.sqrt(1 - z * z);
65
+ return 1 - Math.exp(-z * w0 * t) * (Math.cos(wd * t) + z * w0 / wd * Math.sin(wd * t));
66
+ }
67
+ return 1 - Math.exp(-w0 * t) * (1 + w0 * t);
68
+ }
69
+ /** Time in ms after which the spring stays within the settle threshold of its target. */
70
+ function springSettleDuration(token) {
71
+ const step = .001;
72
+ let lastUnsettled = 0;
73
+ for (let t = 0; t < 5; t += step) if (Math.abs(1 - springPosition(token, t)) > SETTLE_THRESHOLD) lastUnsettled = t;
74
+ return Math.ceil(lastUnsettled * 1e3 / 10) * 10;
75
+ }
76
+ /**
77
+ * CSS `linear()` approximation of a spring, sampled at evenly spaced points
78
+ * over its settle duration. Pair it with {@link springSettleDuration}.
79
+ */
80
+ function springToLinearEasing(token, samples = 40) {
81
+ const duration = springSettleDuration(token) / 1e3;
82
+ const points = [];
83
+ for (let i = 0; i <= samples; i++) {
84
+ const value = i === samples ? 1 : springPosition(token, duration * i / samples);
85
+ points.push(String(Math.round(value * 1e4) / 1e4));
86
+ }
87
+ return `linear(${points.join(", ")})`;
88
+ }
89
+ /** Legacy M3 durations (Compose `MotionTokens`), in ms. */
90
+ const LEGACY_DURATIONS = {
91
+ "short-1": 50,
92
+ "short-2": 100,
93
+ "short-3": 150,
94
+ "short-4": 200,
95
+ "medium-1": 250,
96
+ "medium-2": 300,
97
+ "medium-3": 350,
98
+ "medium-4": 400,
99
+ "long-1": 450,
100
+ "long-2": 500,
101
+ "long-3": 550,
102
+ "long-4": 600,
103
+ "extra-long-1": 700,
104
+ "extra-long-2": 800,
105
+ "extra-long-3": 900,
106
+ "extra-long-4": 1e3
107
+ };
108
+ /** Legacy M3 easing curves (Compose `MotionTokens`). */
109
+ const LEGACY_EASINGS = {
110
+ emphasized: "cubic-bezier(0.2, 0, 0, 1)",
111
+ "emphasized-accelerate": "cubic-bezier(0.3, 0, 0.8, 0.15)",
112
+ "emphasized-decelerate": "cubic-bezier(0.05, 0.7, 0.1, 1)",
113
+ standard: "cubic-bezier(0.2, 0, 0, 1)",
114
+ "standard-accelerate": "cubic-bezier(0.3, 0, 1, 1)",
115
+ "standard-decelerate": "cubic-bezier(0, 0, 0, 1)",
116
+ legacy: "cubic-bezier(0.4, 0, 0.2, 1)",
117
+ "legacy-accelerate": "cubic-bezier(0.4, 0, 1, 1)",
118
+ "legacy-decelerate": "cubic-bezier(0, 0, 0.2, 1)",
119
+ linear: "cubic-bezier(0, 0, 1, 1)"
120
+ };
121
+ /** `<family>-<speed>` names used by the `ease-m3-*` / `duration-m3-*` utilities. */
122
+ const SPRING_TOKEN_NAMES = SPRING_FAMILIES.flatMap((family) => SPRING_SPEEDS.map((speed) => `${family}-${speed}`));
123
+ //#endregion
124
+ export { DEFAULT_MOTION_SCHEME, LEGACY_DURATIONS, LEGACY_EASINGS, MOTION_SCHEMES, SPRINGS, SPRING_FAMILIES, SPRING_SPEEDS, SPRING_TOKEN_NAMES, springPosition, springSettleDuration, springToLinearEasing, toMotionSpring };
125
+
126
+ //# sourceMappingURL=motion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"motion.js","names":[],"sources":["../../src/tokens/motion.ts"],"sourcesContent":["/**\n * M3 Expressive motion: spring tokens for the `expressive` and `standard` motion\n * schemes (Compose `ExpressiveMotionTokens` / `StandardMotionTokens`), plus the\n * legacy duration + easing tokens for consumers migrating from baseline M3.\n *\n * Compose springs are expressed as a damping ratio and stiffness with mass 1.\n * Motion (`motion/react`) takes a damping coefficient, so\n * `damping = 2 * dampingRatio * sqrt(stiffness * mass)`.\n */\n\nexport const MOTION_SCHEMES = ['expressive', 'standard'] as const;\nexport type MotionScheme = (typeof MOTION_SCHEMES)[number];\nexport const DEFAULT_MOTION_SCHEME: MotionScheme = 'expressive';\n\nexport const SPRING_FAMILIES = ['spatial', 'effects'] as const;\nexport type SpringFamily = (typeof SPRING_FAMILIES)[number];\n\nexport const SPRING_SPEEDS = ['fast', 'default', 'slow'] as const;\nexport type SpringSpeed = (typeof SPRING_SPEEDS)[number];\n\nexport interface SpringToken {\n dampingRatio: number;\n stiffness: number;\n}\n\ntype SpringScheme = Record<SpringFamily, Record<SpringSpeed, SpringToken>>;\n\nconst spring = (dampingRatio: number, stiffness: number): SpringToken => ({\n dampingRatio,\n stiffness,\n});\n\nconst EFFECTS = {\n fast: spring(1, 3800),\n default: spring(1, 1600),\n slow: spring(1, 800),\n};\n\nexport const SPRINGS: Record<MotionScheme, SpringScheme> = {\n expressive: {\n spatial: { fast: spring(0.6, 800), default: spring(0.8, 380), slow: spring(0.8, 200) },\n effects: EFFECTS,\n },\n standard: {\n spatial: { fast: spring(0.9, 1400), default: spring(0.9, 700), slow: spring(0.9, 300) },\n effects: EFFECTS,\n },\n};\n\n/** A spring transition in the shape Motion's `transition` prop expects. */\nexport interface MotionSpring {\n type: 'spring';\n stiffness: number;\n damping: number;\n mass: number;\n}\n\nexport function toMotionSpring({ dampingRatio, stiffness }: SpringToken): MotionSpring {\n const mass = 1;\n return {\n type: 'spring',\n stiffness,\n damping: Math.round(2 * dampingRatio * Math.sqrt(stiffness * mass) * 100) / 100,\n mass,\n };\n}\n\n/** Normalised displacement threshold at which a spring is treated as settled. */\nconst SETTLE_THRESHOLD = 0.001;\n\n/**\n * Position of a unit step spring (0 → 1, mass 1) at time `t` seconds,\n * using the closed-form solution for under- and critically-damped springs.\n */\nexport function springPosition({ dampingRatio: z, stiffness: k }: SpringToken, t: number): number {\n const w0 = Math.sqrt(k);\n if (z < 1) {\n const wd = w0 * Math.sqrt(1 - z * z);\n return 1 - Math.exp(-z * w0 * t) * (Math.cos(wd * t) + ((z * w0) / wd) * Math.sin(wd * t));\n }\n return 1 - Math.exp(-w0 * t) * (1 + w0 * t);\n}\n\n/** Time in ms after which the spring stays within the settle threshold of its target. */\nexport function springSettleDuration(token: SpringToken): number {\n const step = 0.001;\n let lastUnsettled = 0;\n for (let t = 0; t < 5; t += step) {\n if (Math.abs(1 - springPosition(token, t)) > SETTLE_THRESHOLD) lastUnsettled = t;\n }\n return Math.ceil((lastUnsettled * 1000) / 10) * 10;\n}\n\n/**\n * CSS `linear()` approximation of a spring, sampled at evenly spaced points\n * over its settle duration. Pair it with {@link springSettleDuration}.\n */\nexport function springToLinearEasing(token: SpringToken, samples = 40): string {\n const duration = springSettleDuration(token) / 1000;\n const points: string[] = [];\n for (let i = 0; i <= samples; i++) {\n const value = i === samples ? 1 : springPosition(token, (duration * i) / samples);\n points.push(String(Math.round(value * 10000) / 10000));\n }\n return `linear(${points.join(', ')})`;\n}\n\n/** Legacy M3 durations (Compose `MotionTokens`), in ms. */\nexport const LEGACY_DURATIONS = {\n 'short-1': 50,\n 'short-2': 100,\n 'short-3': 150,\n 'short-4': 200,\n 'medium-1': 250,\n 'medium-2': 300,\n 'medium-3': 350,\n 'medium-4': 400,\n 'long-1': 450,\n 'long-2': 500,\n 'long-3': 550,\n 'long-4': 600,\n 'extra-long-1': 700,\n 'extra-long-2': 800,\n 'extra-long-3': 900,\n 'extra-long-4': 1000,\n} as const;\n\n/** Legacy M3 easing curves (Compose `MotionTokens`). */\nexport const LEGACY_EASINGS = {\n emphasized: 'cubic-bezier(0.2, 0, 0, 1)',\n 'emphasized-accelerate': 'cubic-bezier(0.3, 0, 0.8, 0.15)',\n 'emphasized-decelerate': 'cubic-bezier(0.05, 0.7, 0.1, 1)',\n standard: 'cubic-bezier(0.2, 0, 0, 1)',\n 'standard-accelerate': 'cubic-bezier(0.3, 0, 1, 1)',\n 'standard-decelerate': 'cubic-bezier(0, 0, 0, 1)',\n legacy: 'cubic-bezier(0.4, 0, 0.2, 1)',\n 'legacy-accelerate': 'cubic-bezier(0.4, 0, 1, 1)',\n 'legacy-decelerate': 'cubic-bezier(0, 0, 0.2, 1)',\n linear: 'cubic-bezier(0, 0, 1, 1)',\n} as const;\n\n/** `<family>-<speed>` names used by the `ease-m3-*` / `duration-m3-*` utilities. */\nexport const SPRING_TOKEN_NAMES = SPRING_FAMILIES.flatMap((family) =>\n SPRING_SPEEDS.map((speed) => `${family}-${speed}` as const),\n);\n"],"mappings":";;;;;;;;;;AAUA,MAAa,iBAAiB,CAAC,cAAc,UAAU;AAEvD,MAAa,wBAAsC;AAEnD,MAAa,kBAAkB,CAAC,WAAW,SAAS;AAGpD,MAAa,gBAAgB;CAAC;CAAQ;CAAW;AAAM;AAUvD,MAAM,UAAU,cAAsB,eAAoC;CACxE;CACA;AACF;AAEA,MAAM,UAAU;CACd,MAAM,OAAO,GAAG,IAAI;CACpB,SAAS,OAAO,GAAG,IAAI;CACvB,MAAM,OAAO,GAAG,GAAG;AACrB;AAEA,MAAa,UAA8C;CACzD,YAAY;EACV,SAAS;GAAE,MAAM,OAAO,IAAK,GAAG;GAAG,SAAS,OAAO,IAAK,GAAG;GAAG,MAAM,OAAO,IAAK,GAAG;EAAE;EACrF,SAAS;CACX;CACA,UAAU;EACR,SAAS;GAAE,MAAM,OAAO,IAAK,IAAI;GAAG,SAAS,OAAO,IAAK,GAAG;GAAG,MAAM,OAAO,IAAK,GAAG;EAAE;EACtF,SAAS;CACX;AACF;AAUA,SAAgB,eAAe,EAAE,cAAc,aAAwC;CACrF,MAAM,OAAO;CACb,OAAO;EACL,MAAM;EACN;EACA,SAAS,KAAK,MAAM,IAAI,eAAe,KAAK,KAAK,YAAY,IAAI,IAAI,GAAG,IAAI;EAC5E;CACF;AACF;;AAGA,MAAM,mBAAmB;;;;;AAMzB,SAAgB,eAAe,EAAE,cAAc,GAAG,WAAW,KAAkB,GAAmB;CAChG,MAAM,KAAK,KAAK,KAAK,CAAC;CACtB,IAAI,IAAI,GAAG;EACT,MAAM,KAAK,KAAK,KAAK,KAAK,IAAI,IAAI,CAAC;EACnC,OAAO,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,KAAK,CAAC,IAAM,IAAI,KAAM,KAAM,KAAK,IAAI,KAAK,CAAC;CAC1F;CACA,OAAO,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK;AAC3C;;AAGA,SAAgB,qBAAqB,OAA4B;CAC/D,MAAM,OAAO;CACb,IAAI,gBAAgB;CACpB,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,KAAK,MAC1B,IAAI,KAAK,IAAI,IAAI,eAAe,OAAO,CAAC,CAAC,IAAI,kBAAkB,gBAAgB;CAEjF,OAAO,KAAK,KAAM,gBAAgB,MAAQ,EAAE,IAAI;AAClD;;;;;AAMA,SAAgB,qBAAqB,OAAoB,UAAU,IAAY;CAC7E,MAAM,WAAW,qBAAqB,KAAK,IAAI;CAC/C,MAAM,SAAmB,CAAC;CAC1B,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,KAAK;EACjC,MAAM,QAAQ,MAAM,UAAU,IAAI,eAAe,OAAQ,WAAW,IAAK,OAAO;EAChF,OAAO,KAAK,OAAO,KAAK,MAAM,QAAQ,GAAK,IAAI,GAAK,CAAC;CACvD;CACA,OAAO,UAAU,OAAO,KAAK,IAAI,EAAE;AACrC;;AAGA,MAAa,mBAAmB;CAC9B,WAAW;CACX,WAAW;CACX,WAAW;CACX,WAAW;CACX,YAAY;CACZ,YAAY;CACZ,YAAY;CACZ,YAAY;CACZ,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CACV,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;AAClB;;AAGA,MAAa,iBAAiB;CAC5B,YAAY;CACZ,yBAAyB;CACzB,yBAAyB;CACzB,UAAU;CACV,uBAAuB;CACvB,uBAAuB;CACvB,QAAQ;CACR,qBAAqB;CACrB,qBAAqB;CACrB,QAAQ;AACV;;AAGA,MAAa,qBAAqB,gBAAgB,SAAS,WACzD,cAAc,KAAK,UAAU,GAAG,OAAO,GAAG,OAAgB,CAC5D"}
@@ -0,0 +1,22 @@
1
+ //#region src/tokens/shape.d.ts
2
+ /**
3
+ * M3 corner-radius scale (Compose `ShapeTokens`, dp → px 1:1).
4
+ * Emitted as `--md-sys-shape-corner-<name>` and the `rounded-corner-<name>` utilities.
5
+ */
6
+ export declare const CORNERS: {
7
+ readonly none: "0px";
8
+ readonly 'extra-small': "4px";
9
+ readonly small: "8px";
10
+ readonly medium: "12px";
11
+ readonly large: "16px";
12
+ readonly 'large-increased': "20px";
13
+ readonly 'extra-large': "28px";
14
+ readonly 'extra-large-increased': "32px";
15
+ readonly 'extra-extra-large': "48px";
16
+ readonly full: "9999px";
17
+ };
18
+ /** A step of the M3 corner scale, from `none` to `full`. */
19
+ export type CornerName = keyof typeof CORNERS;
20
+ export declare const CORNER_NAMES: CornerName[];
21
+ //#endregion
22
+ //# sourceMappingURL=shape.d.ts.map
@@ -0,0 +1,22 @@
1
+ //#region src/tokens/shape.ts
2
+ /**
3
+ * M3 corner-radius scale (Compose `ShapeTokens`, dp → px 1:1).
4
+ * Emitted as `--md-sys-shape-corner-<name>` and the `rounded-corner-<name>` utilities.
5
+ */
6
+ const CORNERS = {
7
+ none: "0px",
8
+ "extra-small": "4px",
9
+ small: "8px",
10
+ medium: "12px",
11
+ large: "16px",
12
+ "large-increased": "20px",
13
+ "extra-large": "28px",
14
+ "extra-large-increased": "32px",
15
+ "extra-extra-large": "48px",
16
+ full: "9999px"
17
+ };
18
+ const CORNER_NAMES = Object.keys(CORNERS);
19
+ //#endregion
20
+ export { CORNERS, CORNER_NAMES };
21
+
22
+ //# sourceMappingURL=shape.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shape.js","names":[],"sources":["../../src/tokens/shape.ts"],"sourcesContent":["/**\n * M3 corner-radius scale (Compose `ShapeTokens`, dp → px 1:1).\n * Emitted as `--md-sys-shape-corner-<name>` and the `rounded-corner-<name>` utilities.\n */\nexport const CORNERS = {\n none: '0px',\n 'extra-small': '4px',\n small: '8px',\n medium: '12px',\n large: '16px',\n 'large-increased': '20px',\n 'extra-large': '28px',\n 'extra-large-increased': '32px',\n 'extra-extra-large': '48px',\n full: '9999px',\n} as const;\n\n/** A step of the M3 corner scale, from `none` to `full`. */\nexport type CornerName = keyof typeof CORNERS;\nexport const CORNER_NAMES = Object.keys(CORNERS) as CornerName[];\n"],"mappings":";;;;;AAIA,MAAa,UAAU;CACrB,MAAM;CACN,eAAe;CACf,OAAO;CACP,QAAQ;CACR,OAAO;CACP,mBAAmB;CACnB,eAAe;CACf,yBAAyB;CACzB,qBAAqB;CACrB,MAAM;AACR;AAIA,MAAa,eAAe,OAAO,KAAK,OAAO"}
@@ -0,0 +1,19 @@
1
+ import { SpringToken } from "./motion.js";
2
+ //#region src/tokens/spring-velocity.d.ts
3
+ /**
4
+ * Progress (0 → 1) at time `t` seconds of a spring that starts with a velocity, as Compose's
5
+ * `animateTo(target, initialVelocity)` runs one: `velocity` is in distances per second, where
6
+ * the distance is the whole way to the target (positive towards it).
7
+ */
8
+ export declare function springProgressWithVelocity({ dampingRatio: z, stiffness: k }: SpringToken, velocity: number, t: number): number;
9
+ /**
10
+ * A spring that starts with a velocity (see {@link springProgressWithVelocity}) as a CSS
11
+ * `linear()` easing and its settle duration in ms, for a transition that continues a gesture
12
+ * (a released sheet keeps its speed rather than starting from rest).
13
+ */
14
+ export declare function springWithVelocityToLinearEasing(token: SpringToken, velocity: number, samples?: number): {
15
+ easing: string;
16
+ duration: number;
17
+ };
18
+ //#endregion
19
+ //# sourceMappingURL=spring-velocity.d.ts.map
@@ -0,0 +1,44 @@
1
+ //#region src/tokens/spring-velocity.ts
2
+ /**
3
+ * `springSettleDuration`'s threshold (`motion.ts`), repeated here so this module doesn't widen
4
+ * the public tokens; the tokens test checks a resting spring settles at the same time.
5
+ */
6
+ const SETTLE_THRESHOLD = .001;
7
+ /**
8
+ * Progress (0 → 1) at time `t` seconds of a spring that starts with a velocity, as Compose's
9
+ * `animateTo(target, initialVelocity)` runs one: `velocity` is in distances per second, where
10
+ * the distance is the whole way to the target (positive towards it).
11
+ */
12
+ function springProgressWithVelocity({ dampingRatio: z, stiffness: k }, velocity, t) {
13
+ const w0 = Math.sqrt(k);
14
+ if (z < 1) {
15
+ const wd = w0 * Math.sqrt(1 - z * z);
16
+ const b = (z * w0 - velocity) / wd;
17
+ return 1 - Math.exp(-z * w0 * t) * (Math.cos(wd * t) + b * Math.sin(wd * t));
18
+ }
19
+ return 1 - Math.exp(-w0 * t) * (1 + (w0 - velocity) * t);
20
+ }
21
+ /**
22
+ * A spring that starts with a velocity (see {@link springProgressWithVelocity}) as a CSS
23
+ * `linear()` easing and its settle duration in ms, for a transition that continues a gesture
24
+ * (a released sheet keeps its speed rather than starting from rest).
25
+ */
26
+ function springWithVelocityToLinearEasing(token, velocity, samples = 60) {
27
+ const progress = (t) => springProgressWithVelocity(token, velocity, t);
28
+ let lastUnsettled = 0;
29
+ for (let t = 0; t < 5; t += .001) if (Math.abs(1 - progress(t)) > SETTLE_THRESHOLD) lastUnsettled = t;
30
+ const duration = Math.max(10, Math.ceil(lastUnsettled * 1e3 / 10) * 10);
31
+ const points = [];
32
+ for (let i = 0; i <= samples; i++) {
33
+ const value = i === samples ? 1 : progress(duration / 1e3 * (i / samples));
34
+ points.push(String(Math.round(value * 1e4) / 1e4));
35
+ }
36
+ return {
37
+ easing: `linear(${points.join(", ")})`,
38
+ duration
39
+ };
40
+ }
41
+ //#endregion
42
+ export { springProgressWithVelocity, springWithVelocityToLinearEasing };
43
+
44
+ //# sourceMappingURL=spring-velocity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spring-velocity.js","names":[],"sources":["../../src/tokens/spring-velocity.ts"],"sourcesContent":["/**\n * Springs that start with a velocity, for a transition that continues a gesture. Kept out of\n * `motion.ts`, which nearly every component imports, since only the bottom sheet's drag\n * release needs them (2026-10-17), and public from `@windmorph/react/primitives` only, for a\n * component of your own that settles after a drag (2026-10-24).\n */\nimport type { SpringToken } from './motion';\n\n/**\n * `springSettleDuration`'s threshold (`motion.ts`), repeated here so this module doesn't widen\n * the public tokens; the tokens test checks a resting spring settles at the same time.\n */\nconst SETTLE_THRESHOLD = 0.001;\n\n/**\n * Progress (0 → 1) at time `t` seconds of a spring that starts with a velocity, as Compose's\n * `animateTo(target, initialVelocity)` runs one: `velocity` is in distances per second, where\n * the distance is the whole way to the target (positive towards it).\n */\nexport function springProgressWithVelocity(\n { dampingRatio: z, stiffness: k }: SpringToken,\n velocity: number,\n t: number,\n): number {\n const w0 = Math.sqrt(k);\n if (z < 1) {\n const wd = w0 * Math.sqrt(1 - z * z);\n const b = (z * w0 - velocity) / wd;\n return 1 - Math.exp(-z * w0 * t) * (Math.cos(wd * t) + b * Math.sin(wd * t));\n }\n return 1 - Math.exp(-w0 * t) * (1 + (w0 - velocity) * t);\n}\n\n/**\n * A spring that starts with a velocity (see {@link springProgressWithVelocity}) as a CSS\n * `linear()` easing and its settle duration in ms, for a transition that continues a gesture\n * (a released sheet keeps its speed rather than starting from rest).\n */\nexport function springWithVelocityToLinearEasing(\n token: SpringToken,\n velocity: number,\n samples = 60,\n): { easing: string; duration: number } {\n const progress = (t: number) => springProgressWithVelocity(token, velocity, t);\n let lastUnsettled = 0;\n for (let t = 0; t < 5; t += 0.001) {\n if (Math.abs(1 - progress(t)) > SETTLE_THRESHOLD) lastUnsettled = t;\n }\n const duration = Math.max(10, Math.ceil((lastUnsettled * 1000) / 10) * 10);\n const points: string[] = [];\n for (let i = 0; i <= samples; i++) {\n const value = i === samples ? 1 : progress((duration / 1000) * (i / samples));\n points.push(String(Math.round(value * 10000) / 10000));\n }\n return { easing: `linear(${points.join(', ')})`, duration };\n}\n"],"mappings":";;;;;AAYA,MAAM,mBAAmB;;;;;;AAOzB,SAAgB,2BACd,EAAE,cAAc,GAAG,WAAW,KAC9B,UACA,GACQ;CACR,MAAM,KAAK,KAAK,KAAK,CAAC;CACtB,IAAI,IAAI,GAAG;EACT,MAAM,KAAK,KAAK,KAAK,KAAK,IAAI,IAAI,CAAC;EACnC,MAAM,KAAK,IAAI,KAAK,YAAY;EAChC,OAAO,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,IAAI,KAAK,CAAC;CAC5E;CACA,OAAO,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,YAAY;AACxD;;;;;;AAOA,SAAgB,iCACd,OACA,UACA,UAAU,IAC4B;CACtC,MAAM,YAAY,MAAc,2BAA2B,OAAO,UAAU,CAAC;CAC7E,IAAI,gBAAgB;CACpB,KAAK,IAAI,IAAI,GAAG,IAAI,GAAG,KAAK,MAC1B,IAAI,KAAK,IAAI,IAAI,SAAS,CAAC,CAAC,IAAI,kBAAkB,gBAAgB;CAEpE,MAAM,WAAW,KAAK,IAAI,IAAI,KAAK,KAAM,gBAAgB,MAAQ,EAAE,IAAI,EAAE;CACzE,MAAM,SAAmB,CAAC;CAC1B,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,KAAK;EACjC,MAAM,QAAQ,MAAM,UAAU,IAAI,SAAU,WAAW,OAAS,IAAI,QAAQ;EAC5E,OAAO,KAAK,OAAO,KAAK,MAAM,QAAQ,GAAK,IAAI,GAAK,CAAC;CACvD;CACA,OAAO;EAAE,QAAQ,UAAU,OAAO,KAAK,IAAI,EAAE;EAAI;CAAS;AAC5D"}
@@ -0,0 +1,18 @@
1
+ //#region src/tokens/state.d.ts
2
+ /** M3 state-layer opacities (Compose `StateTokens`) and disabled-state opacities. */
3
+ export declare const STATE_OPACITIES: {
4
+ readonly hover: 0.08;
5
+ readonly focus: 0.1;
6
+ readonly pressed: 0.1;
7
+ readonly dragged: 0.16;
8
+ readonly 'disabled-content': 0.38;
9
+ readonly 'disabled-container': 0.12;
10
+ };
11
+ export type StateName = keyof typeof STATE_OPACITIES;
12
+ /** M3 focus indicator: 3px outline in `secondary`, offset 2px. */
13
+ export declare const FOCUS_INDICATOR: {
14
+ readonly thickness: "3px";
15
+ readonly offset: "2px";
16
+ };
17
+ //#endregion
18
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1,19 @@
1
+ //#region src/tokens/state.ts
2
+ /** M3 state-layer opacities (Compose `StateTokens`) and disabled-state opacities. */
3
+ const STATE_OPACITIES = {
4
+ hover: .08,
5
+ focus: .1,
6
+ pressed: .1,
7
+ dragged: .16,
8
+ "disabled-content": .38,
9
+ "disabled-container": .12
10
+ };
11
+ /** M3 focus indicator: 3px outline in `secondary`, offset 2px. */
12
+ const FOCUS_INDICATOR = {
13
+ thickness: "3px",
14
+ offset: "2px"
15
+ };
16
+ //#endregion
17
+ export { FOCUS_INDICATOR, STATE_OPACITIES };
18
+
19
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","names":[],"sources":["../../src/tokens/state.ts"],"sourcesContent":["/** M3 state-layer opacities (Compose `StateTokens`) and disabled-state opacities. */\nexport const STATE_OPACITIES = {\n hover: 0.08,\n focus: 0.1,\n pressed: 0.1,\n dragged: 0.16,\n 'disabled-content': 0.38,\n 'disabled-container': 0.12,\n} as const;\n\nexport type StateName = keyof typeof STATE_OPACITIES;\n\n/** M3 focus indicator: 3px outline in `secondary`, offset 2px. */\nexport const FOCUS_INDICATOR = {\n thickness: '3px',\n offset: '2px',\n} as const;\n"],"mappings":";;AACA,MAAa,kBAAkB;CAC7B,OAAO;CACP,OAAO;CACP,SAAS;CACT,SAAS;CACT,oBAAoB;CACpB,sBAAsB;AACxB;;AAKA,MAAa,kBAAkB;CAC7B,WAAW;CACX,QAAQ;AACV"}
@@ -0,0 +1,64 @@
1
+ //#region src/tokens/typography.d.ts
2
+ /**
3
+ * M3 type scale, including the Expressive emphasized variants
4
+ * (Compose `TypeScaleTokens`; sp → px 1:1 at a 16px root).
5
+ *
6
+ * Values are written in px, as in the spec, and emitted as rem (px / 16), so text
7
+ * follows the reader's browser font size the way sp follows Android's font scale.
8
+ * Each role becomes `--md-sys-typescale-<role>-{font,size,line-height,tracking,weight}`
9
+ * and a Tailwind `text-<role>` utility that sets size, line height, tracking and weight.
10
+ */
11
+ export declare const TYPEFACES: {
12
+ readonly brand: "\"Roboto Flex\", Roboto, system-ui, -apple-system, \"Segoe UI\", sans-serif";
13
+ readonly plain: "\"Roboto Flex\", Roboto, system-ui, -apple-system, \"Segoe UI\", sans-serif";
14
+ /** Code: `font-mono`, the rich text's `code` and code blocks. The font is the app's to load. */
15
+ readonly mono: "\"Roboto Mono\", ui-monospace, SFMono-Regular, Menlo, Consolas, \"Liberation Mono\", monospace";
16
+ };
17
+ export type Typeface = keyof typeof TYPEFACES;
18
+ export interface TypeStyle {
19
+ font: Typeface;
20
+ /** px at a 16px root (emitted as rem) */
21
+ size: number;
22
+ /** px at a 16px root (emitted as rem) */
23
+ lineHeight: number;
24
+ /** px at a 16px root (emitted as rem) */
25
+ tracking: number;
26
+ weight: 400 | 500 | 700;
27
+ }
28
+ export declare const TYPE_SCALE: {
29
+ readonly 'display-large': TypeStyle;
30
+ readonly 'display-medium': TypeStyle;
31
+ readonly 'display-small': TypeStyle;
32
+ readonly 'headline-large': TypeStyle;
33
+ readonly 'headline-medium': TypeStyle;
34
+ readonly 'headline-small': TypeStyle;
35
+ readonly 'title-large': TypeStyle;
36
+ readonly 'title-medium': TypeStyle;
37
+ readonly 'title-small': TypeStyle;
38
+ readonly 'body-large': TypeStyle;
39
+ readonly 'body-medium': TypeStyle;
40
+ readonly 'body-small': TypeStyle;
41
+ readonly 'label-large': TypeStyle;
42
+ readonly 'label-medium': TypeStyle;
43
+ readonly 'label-small': TypeStyle;
44
+ readonly 'display-large-emphasized': TypeStyle;
45
+ readonly 'display-medium-emphasized': TypeStyle;
46
+ readonly 'display-small-emphasized': TypeStyle;
47
+ readonly 'headline-large-emphasized': TypeStyle;
48
+ readonly 'headline-medium-emphasized': TypeStyle;
49
+ readonly 'headline-small-emphasized': TypeStyle;
50
+ readonly 'title-large-emphasized': TypeStyle;
51
+ readonly 'title-medium-emphasized': TypeStyle;
52
+ readonly 'title-small-emphasized': TypeStyle;
53
+ readonly 'body-large-emphasized': TypeStyle;
54
+ readonly 'body-medium-emphasized': TypeStyle;
55
+ readonly 'body-small-emphasized': TypeStyle;
56
+ readonly 'label-large-emphasized': TypeStyle;
57
+ readonly 'label-medium-emphasized': TypeStyle;
58
+ readonly 'label-small-emphasized': TypeStyle;
59
+ };
60
+ /** An M3 type-scale role, such as `body-large` or `title-medium-emphasized`. */
61
+ export type TypeRole = keyof typeof TYPE_SCALE;
62
+ export declare const TYPE_ROLES: TypeRole[];
63
+ //#endregion
64
+ //# sourceMappingURL=typography.d.ts.map
@@ -0,0 +1,60 @@
1
+ //#region src/tokens/typography.ts
2
+ /**
3
+ * M3 type scale, including the Expressive emphasized variants
4
+ * (Compose `TypeScaleTokens`; sp → px 1:1 at a 16px root).
5
+ *
6
+ * Values are written in px, as in the spec, and emitted as rem (px / 16), so text
7
+ * follows the reader's browser font size the way sp follows Android's font scale.
8
+ * Each role becomes `--md-sys-typescale-<role>-{font,size,line-height,tracking,weight}`
9
+ * and a Tailwind `text-<role>` utility that sets size, line height, tracking and weight.
10
+ */
11
+ const TYPEFACES = {
12
+ brand: "\"Roboto Flex\", Roboto, system-ui, -apple-system, \"Segoe UI\", sans-serif",
13
+ plain: "\"Roboto Flex\", Roboto, system-ui, -apple-system, \"Segoe UI\", sans-serif",
14
+ /** Code: `font-mono`, the rich text's `code` and code blocks. The font is the app's to load. */
15
+ mono: "\"Roboto Mono\", ui-monospace, SFMono-Regular, Menlo, Consolas, \"Liberation Mono\", monospace"
16
+ };
17
+ const style = (font, size, lineHeight, tracking, weight) => ({
18
+ font,
19
+ size,
20
+ lineHeight,
21
+ tracking,
22
+ weight
23
+ });
24
+ const TYPE_SCALE = {
25
+ "display-large": style("brand", 57, 64, -.2, 400),
26
+ "display-medium": style("brand", 45, 52, 0, 400),
27
+ "display-small": style("brand", 36, 44, 0, 400),
28
+ "headline-large": style("brand", 32, 40, 0, 400),
29
+ "headline-medium": style("brand", 28, 36, 0, 400),
30
+ "headline-small": style("brand", 24, 32, 0, 400),
31
+ "title-large": style("brand", 22, 28, 0, 400),
32
+ "title-medium": style("plain", 16, 24, .2, 500),
33
+ "title-small": style("plain", 14, 20, .1, 500),
34
+ "body-large": style("plain", 16, 24, .5, 400),
35
+ "body-medium": style("plain", 14, 20, .2, 400),
36
+ "body-small": style("plain", 12, 16, .4, 400),
37
+ "label-large": style("plain", 14, 20, .1, 500),
38
+ "label-medium": style("plain", 12, 16, .5, 500),
39
+ "label-small": style("plain", 11, 16, .5, 500),
40
+ "display-large-emphasized": style("brand", 57, 64, 0, 500),
41
+ "display-medium-emphasized": style("brand", 45, 52, 0, 500),
42
+ "display-small-emphasized": style("brand", 36, 44, 0, 500),
43
+ "headline-large-emphasized": style("brand", 32, 40, 0, 500),
44
+ "headline-medium-emphasized": style("brand", 28, 36, 0, 500),
45
+ "headline-small-emphasized": style("brand", 24, 32, 0, 500),
46
+ "title-large-emphasized": style("brand", 22, 28, 0, 500),
47
+ "title-medium-emphasized": style("plain", 16, 24, .15, 700),
48
+ "title-small-emphasized": style("plain", 14, 20, .1, 700),
49
+ "body-large-emphasized": style("plain", 16, 24, .15, 500),
50
+ "body-medium-emphasized": style("plain", 14, 20, .25, 500),
51
+ "body-small-emphasized": style("plain", 12, 16, .4, 500),
52
+ "label-large-emphasized": style("plain", 14, 20, .1, 700),
53
+ "label-medium-emphasized": style("plain", 12, 16, .5, 700),
54
+ "label-small-emphasized": style("plain", 11, 16, .5, 700)
55
+ };
56
+ const TYPE_ROLES = Object.keys(TYPE_SCALE);
57
+ //#endregion
58
+ export { TYPEFACES, TYPE_ROLES, TYPE_SCALE };
59
+
60
+ //# sourceMappingURL=typography.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typography.js","names":[],"sources":["../../src/tokens/typography.ts"],"sourcesContent":["/**\n * M3 type scale, including the Expressive emphasized variants\n * (Compose `TypeScaleTokens`; sp → px 1:1 at a 16px root).\n *\n * Values are written in px, as in the spec, and emitted as rem (px / 16), so text\n * follows the reader's browser font size the way sp follows Android's font scale.\n * Each role becomes `--md-sys-typescale-<role>-{font,size,line-height,tracking,weight}`\n * and a Tailwind `text-<role>` utility that sets size, line height, tracking and weight.\n */\n\nexport const TYPEFACES = {\n brand: '\"Roboto Flex\", Roboto, system-ui, -apple-system, \"Segoe UI\", sans-serif',\n plain: '\"Roboto Flex\", Roboto, system-ui, -apple-system, \"Segoe UI\", sans-serif',\n /** Code: `font-mono`, the rich text's `code` and code blocks. The font is the app's to load. */\n mono: '\"Roboto Mono\", ui-monospace, SFMono-Regular, Menlo, Consolas, \"Liberation Mono\", monospace',\n} as const;\n\nexport type Typeface = keyof typeof TYPEFACES;\n\nexport interface TypeStyle {\n font: Typeface;\n /** px at a 16px root (emitted as rem) */\n size: number;\n /** px at a 16px root (emitted as rem) */\n lineHeight: number;\n /** px at a 16px root (emitted as rem) */\n tracking: number;\n weight: 400 | 500 | 700;\n}\n\nconst style = (\n font: Typeface,\n size: number,\n lineHeight: number,\n tracking: number,\n weight: TypeStyle['weight'],\n): TypeStyle => ({ font, size, lineHeight, tracking, weight });\n\nexport const TYPE_SCALE = {\n 'display-large': style('brand', 57, 64, -0.2, 400),\n 'display-medium': style('brand', 45, 52, 0, 400),\n 'display-small': style('brand', 36, 44, 0, 400),\n 'headline-large': style('brand', 32, 40, 0, 400),\n 'headline-medium': style('brand', 28, 36, 0, 400),\n 'headline-small': style('brand', 24, 32, 0, 400),\n 'title-large': style('brand', 22, 28, 0, 400),\n 'title-medium': style('plain', 16, 24, 0.2, 500),\n 'title-small': style('plain', 14, 20, 0.1, 500),\n 'body-large': style('plain', 16, 24, 0.5, 400),\n 'body-medium': style('plain', 14, 20, 0.2, 400),\n 'body-small': style('plain', 12, 16, 0.4, 400),\n 'label-large': style('plain', 14, 20, 0.1, 500),\n 'label-medium': style('plain', 12, 16, 0.5, 500),\n 'label-small': style('plain', 11, 16, 0.5, 500),\n\n 'display-large-emphasized': style('brand', 57, 64, 0, 500),\n 'display-medium-emphasized': style('brand', 45, 52, 0, 500),\n 'display-small-emphasized': style('brand', 36, 44, 0, 500),\n 'headline-large-emphasized': style('brand', 32, 40, 0, 500),\n 'headline-medium-emphasized': style('brand', 28, 36, 0, 500),\n 'headline-small-emphasized': style('brand', 24, 32, 0, 500),\n 'title-large-emphasized': style('brand', 22, 28, 0, 500),\n 'title-medium-emphasized': style('plain', 16, 24, 0.15, 700),\n 'title-small-emphasized': style('plain', 14, 20, 0.1, 700),\n 'body-large-emphasized': style('plain', 16, 24, 0.15, 500),\n 'body-medium-emphasized': style('plain', 14, 20, 0.25, 500),\n 'body-small-emphasized': style('plain', 12, 16, 0.4, 500),\n 'label-large-emphasized': style('plain', 14, 20, 0.1, 700),\n 'label-medium-emphasized': style('plain', 12, 16, 0.5, 700),\n 'label-small-emphasized': style('plain', 11, 16, 0.5, 700),\n} as const satisfies Record<string, TypeStyle>;\n\n/** An M3 type-scale role, such as `body-large` or `title-medium-emphasized`. */\nexport type TypeRole = keyof typeof TYPE_SCALE;\nexport const TYPE_ROLES = Object.keys(TYPE_SCALE) as TypeRole[];\n"],"mappings":";;;;;;;;;;AAUA,MAAa,YAAY;CACvB,OAAO;CACP,OAAO;;CAEP,MAAM;AACR;AAeA,MAAM,SACJ,MACA,MACA,YACA,UACA,YACe;CAAE;CAAM;CAAM;CAAY;CAAU;AAAO;AAE5D,MAAa,aAAa;CACxB,iBAAiB,MAAM,SAAS,IAAI,IAAI,KAAM,GAAG;CACjD,kBAAkB,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC/C,iBAAiB,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC9C,kBAAkB,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC/C,mBAAmB,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAChD,kBAAkB,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC/C,eAAe,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC5C,gBAAgB,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAC/C,eAAe,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAC9C,cAAc,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAC7C,eAAe,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAC9C,cAAc,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAC7C,eAAe,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAC9C,gBAAgB,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAC/C,eAAe,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAE9C,4BAA4B,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CACzD,6BAA6B,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC1D,4BAA4B,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CACzD,6BAA6B,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC1D,8BAA8B,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC3D,6BAA6B,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CAC1D,0BAA0B,MAAM,SAAS,IAAI,IAAI,GAAG,GAAG;CACvD,2BAA2B,MAAM,SAAS,IAAI,IAAI,KAAM,GAAG;CAC3D,0BAA0B,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CACzD,yBAAyB,MAAM,SAAS,IAAI,IAAI,KAAM,GAAG;CACzD,0BAA0B,MAAM,SAAS,IAAI,IAAI,KAAM,GAAG;CAC1D,yBAAyB,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CACxD,0BAA0B,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CACzD,2BAA2B,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;CAC1D,0BAA0B,MAAM,SAAS,IAAI,IAAI,IAAK,GAAG;AAC3D;AAIA,MAAa,aAAa,OAAO,KAAK,UAAU"}
@@ -0,0 +1,17 @@
1
+ //#region src/tokens/z-index.d.ts
2
+ /**
3
+ * Stacking order for portalled layers, emitted as `--md-sys-z-<name>`.
4
+ * Components never set their own z-index on a root; only overlays use these.
5
+ */
6
+ export declare const Z_INDEX: {
7
+ readonly sticky: 100;
8
+ readonly scrim: 1000;
9
+ readonly dialog: 1100;
10
+ readonly sheet: 1100;
11
+ readonly menu: 1200;
12
+ readonly snackbar: 1300;
13
+ readonly tooltip: 1400;
14
+ };
15
+ export type ZIndexName = keyof typeof Z_INDEX;
16
+ //#endregion
17
+ //# sourceMappingURL=z-index.d.ts.map
@@ -0,0 +1,18 @@
1
+ //#region src/tokens/z-index.ts
2
+ /**
3
+ * Stacking order for portalled layers, emitted as `--md-sys-z-<name>`.
4
+ * Components never set their own z-index on a root; only overlays use these.
5
+ */
6
+ const Z_INDEX = {
7
+ sticky: 100,
8
+ scrim: 1e3,
9
+ dialog: 1100,
10
+ sheet: 1100,
11
+ menu: 1200,
12
+ snackbar: 1300,
13
+ tooltip: 1400
14
+ };
15
+ //#endregion
16
+ export { Z_INDEX };
17
+
18
+ //# sourceMappingURL=z-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"z-index.js","names":[],"sources":["../../src/tokens/z-index.ts"],"sourcesContent":["/**\n * Stacking order for portalled layers, emitted as `--md-sys-z-<name>`.\n * Components never set their own z-index on a root; only overlays use these.\n */\nexport const Z_INDEX = {\n sticky: 100,\n scrim: 1000,\n dialog: 1100,\n sheet: 1100,\n menu: 1200,\n snackbar: 1300,\n tooltip: 1400,\n} as const;\n\nexport type ZIndexName = keyof typeof Z_INDEX;\n"],"mappings":";;;;;AAIA,MAAa,UAAU;CACrB,QAAQ;CACR,OAAO;CACP,QAAQ;CACR,OAAO;CACP,MAAM;CACN,UAAU;CACV,SAAS;AACX"}
@@ -0,0 +1,51 @@
1
+ /** How long an announcement stays in the region; long enough to be read, then removed. */
2
+ const CLEAR_AFTER = 7e3;
3
+ let region = null;
4
+ function liveRegion() {
5
+ if (region?.element.isConnected) return region;
6
+ const element = document.createElement("div");
7
+ element.setAttribute("aria-live", "polite");
8
+ element.setAttribute("aria-relevant", "additions");
9
+ element.dataset.windmorphAnnouncer = "";
10
+ Object.assign(element.style, {
11
+ position: "absolute",
12
+ width: "1px",
13
+ height: "1px",
14
+ padding: "0",
15
+ margin: "-1px",
16
+ overflow: "hidden",
17
+ clip: "rect(0, 0, 0, 0)",
18
+ whiteSpace: "nowrap",
19
+ border: "0"
20
+ });
21
+ document.body.append(element);
22
+ region = {
23
+ element,
24
+ readyAt: Date.now() + 100
25
+ };
26
+ return region;
27
+ }
28
+ /**
29
+ * Creates the region ahead of a first announcement that may come later (a button that can
30
+ * turn pending), so that announcement isn't held back by `LIVE_REGION_DELAY`. Browser only.
31
+ */
32
+ function prepareAnnouncer() {
33
+ liveRegion();
34
+ }
35
+ /** Announces `message` politely (queued after what the screen reader is saying). */
36
+ function announcePolite(message) {
37
+ const { element, readyAt } = liveRegion();
38
+ const add = () => {
39
+ const node = document.createElement("div");
40
+ node.textContent = message;
41
+ element.append(node);
42
+ setTimeout(() => node.remove(), CLEAR_AFTER);
43
+ };
44
+ const wait = readyAt - Date.now();
45
+ if (wait > 0) setTimeout(add, wait);
46
+ else add();
47
+ }
48
+ //#endregion
49
+ export { announcePolite, prepareAnnouncer };
50
+
51
+ //# sourceMappingURL=announce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"announce.js","names":[],"sources":["../../src/utils/announce.ts"],"sourcesContent":["/*\n * A polite announcement for content that isn't in a live region of its own (a snackbar\n * rendered without its host, a focused button turning pending). Screen readers announce changes to a live region only once\n * they've registered it, and often skip content that arrives together with the region, so\n * one region is created on first use, kept for the page's life, and written to after\n * `LIVE_REGION_DELAY`.\n */\n\n/** How long a new live region is given to be registered before content goes in. */\nexport const LIVE_REGION_DELAY = 100;\n\n/** How long an announcement stays in the region; long enough to be read, then removed. */\nconst CLEAR_AFTER = 7000;\n\nlet region: { element: HTMLElement; readyAt: number } | null = null;\n\nfunction liveRegion() {\n if (region?.element.isConnected) return region;\n const element = document.createElement('div');\n element.setAttribute('aria-live', 'polite');\n element.setAttribute('aria-relevant', 'additions');\n element.dataset.windmorphAnnouncer = '';\n // Visually hidden, as Tailwind's `sr-only` (this element lives outside the React tree).\n Object.assign(element.style, {\n position: 'absolute',\n width: '1px',\n height: '1px',\n padding: '0',\n margin: '-1px',\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n border: '0',\n });\n document.body.append(element);\n region = { element, readyAt: Date.now() + LIVE_REGION_DELAY };\n return region;\n}\n\n/**\n * Creates the region ahead of a first announcement that may come later (a button that can\n * turn pending), so that announcement isn't held back by `LIVE_REGION_DELAY`. Browser only.\n */\nexport function prepareAnnouncer(): void {\n liveRegion();\n}\n\n/** Announces `message` politely (queued after what the screen reader is saying). */\nexport function announcePolite(message: string): void {\n const { element, readyAt } = liveRegion();\n const add = () => {\n const node = document.createElement('div');\n node.textContent = message;\n element.append(node);\n setTimeout(() => node.remove(), CLEAR_AFTER);\n };\n const wait = readyAt - Date.now();\n if (wait > 0) setTimeout(add, wait);\n else add();\n}\n"],"mappings":";AAYA,MAAM,cAAc;AAEpB,IAAI,SAA2D;AAE/D,SAAS,aAAa;CACpB,IAAI,QAAQ,QAAQ,aAAa,OAAO;CACxC,MAAM,UAAU,SAAS,cAAc,KAAK;CAC5C,QAAQ,aAAa,aAAa,QAAQ;CAC1C,QAAQ,aAAa,iBAAiB,WAAW;CACjD,QAAQ,QAAQ,qBAAqB;CAErC,OAAO,OAAO,QAAQ,OAAO;EAC3B,UAAU;EACV,OAAO;EACP,QAAQ;EACR,SAAS;EACT,QAAQ;EACR,UAAU;EACV,MAAM;EACN,YAAY;EACZ,QAAQ;CACV,CAAC;CACD,SAAS,KAAK,OAAO,OAAO;CAC5B,SAAS;EAAE;EAAS,SAAS,KAAK,IAAI,IAAA;CAAsB;CAC5D,OAAO;AACT;;;;;AAMA,SAAgB,mBAAyB;CACvC,WAAW;AACb;;AAGA,SAAgB,eAAe,SAAuB;CACpD,MAAM,EAAE,SAAS,YAAY,WAAW;CACxC,MAAM,YAAY;EAChB,MAAM,OAAO,SAAS,cAAc,KAAK;EACzC,KAAK,cAAc;EACnB,QAAQ,OAAO,IAAI;EACnB,iBAAiB,KAAK,OAAO,GAAG,WAAW;CAC7C;CACA,MAAM,OAAO,UAAU,KAAK,IAAI;CAChC,IAAI,OAAO,GAAG,WAAW,KAAK,IAAI;MAC7B,IAAI;AACX"}
@@ -0,0 +1,26 @@
1
+ import { Children, isValidElement } from "react";
2
+ //#region src/utils/assert-collection-children.ts
3
+ /**
4
+ * React Aria collections (menus, tabs, interactive lists) read their items' element types
5
+ * directly. Items created in a React Server Component reach the client as client
6
+ * references, not as the item component, and React Stately fails with "Unknown element
7
+ * <[object Object]> in collection". This throws a message that names the cause instead.
8
+ *
9
+ * Development only; nested `MenuGroup`-style children are checked one level down unless
10
+ * `nested` is false (a `Tab`'s children are its panel, which may come from the server).
11
+ */
12
+ function assertCollectionChildren(children, component, items, { nested = true } = {}) {
13
+ if (process.env.NODE_ENV === "production") return;
14
+ const check = (nodes, depth) => {
15
+ Children.forEach(nodes, (child) => {
16
+ if (!isValidElement(child)) return;
17
+ if (typeof child.type === "object" && child.type !== null) throw new Error(`[@windmorph/react] ${component}: its ${items} must be created in a client component ("use client"). Items created in a React Server Component arrive as client references, which React Aria collections can't read. Move the ${component} and its items into a client component, or render them from one.`);
18
+ if (nested && depth === 0) check(child.props.children, 1);
19
+ });
20
+ };
21
+ check(children, 0);
22
+ }
23
+ //#endregion
24
+ export { assertCollectionChildren };
25
+
26
+ //# sourceMappingURL=assert-collection-children.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assert-collection-children.js","names":[],"sources":["../../src/utils/assert-collection-children.ts"],"sourcesContent":["import { Children, isValidElement, type ReactNode } from 'react';\n\n/**\n * React Aria collections (menus, tabs, interactive lists) read their items' element types\n * directly. Items created in a React Server Component reach the client as client\n * references, not as the item component, and React Stately fails with \"Unknown element\n * <[object Object]> in collection\". This throws a message that names the cause instead.\n *\n * Development only; nested `MenuGroup`-style children are checked one level down unless\n * `nested` is false (a `Tab`'s children are its panel, which may come from the server).\n */\nexport function assertCollectionChildren(\n children: ReactNode,\n component: string,\n items: string,\n { nested = true }: { nested?: boolean } = {},\n) {\n if (process.env.NODE_ENV === 'production') return;\n const check = (nodes: ReactNode, depth: number) => {\n Children.forEach(nodes, (child) => {\n if (!isValidElement(child)) return;\n if (typeof child.type === 'object' && child.type !== null) {\n throw new Error(\n `[@windmorph/react] ${component}: its ${items} must be created in a client component ` +\n `(\"use client\"). Items created in a React Server Component arrive as client ` +\n `references, which React Aria collections can't read. Move the ${component} and ` +\n `its items into a client component, or render them from one.`,\n );\n }\n if (nested && depth === 0) check((child.props as { children?: ReactNode }).children, 1);\n });\n };\n check(children, 0);\n}\n"],"mappings":";;;;;;;;;;;AAWA,SAAgB,yBACd,UACA,WACA,OACA,EAAE,SAAS,SAA+B,CAAC,GAC3C;CACA,IAAI,QAAQ,IAAI,aAAa,cAAc;CAC3C,MAAM,SAAS,OAAkB,UAAkB;EACjD,SAAS,QAAQ,QAAQ,UAAU;GACjC,IAAI,CAAC,eAAe,KAAK,GAAG;GAC5B,IAAI,OAAO,MAAM,SAAS,YAAY,MAAM,SAAS,MACnD,MAAM,IAAI,MACR,sBAAsB,UAAU,QAAQ,MAAM,kLAEqB,UAAU,iEAE/E;GAEF,IAAI,UAAU,UAAU,GAAG,MAAO,MAAM,MAAmC,UAAU,CAAC;EACxF,CAAC;CACH;CACA,MAAM,UAAU,CAAC;AACnB"}
@@ -0,0 +1,9 @@
1
+ //#region src/utils/closed-by.d.ts
2
+ /**
3
+ * How a modal surface may be closed by the user, as HTML's `<dialog closedby>` names it:
4
+ * `any` (Escape or a press outside), `closerequest` (Escape, the platform's close request,
5
+ * only) or `none` (only by the app or the surface's own buttons).
6
+ */
7
+ export type ClosedBy = 'any' | 'closerequest' | 'none';
8
+ //#endregion
9
+ //# sourceMappingURL=closed-by.d.ts.map
@@ -0,0 +1,12 @@
1
+ //#region src/utils/closed-by.ts
2
+ /** React Aria's `useModalOverlay` options for a `closedBy` value. */
3
+ function closedByOverlayOptions(closedBy, isExiting) {
4
+ return {
5
+ isDismissable: closedBy === "any" && !isExiting,
6
+ isKeyboardDismissDisabled: closedBy === "none"
7
+ };
8
+ }
9
+ //#endregion
10
+ export { closedByOverlayOptions };
11
+
12
+ //# sourceMappingURL=closed-by.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"closed-by.js","names":[],"sources":["../../src/utils/closed-by.ts"],"sourcesContent":["/**\n * How a modal surface may be closed by the user, as HTML's `<dialog closedby>` names it:\n * `any` (Escape or a press outside), `closerequest` (Escape, the platform's close request,\n * only) or `none` (only by the app or the surface's own buttons).\n */\nexport type ClosedBy = 'any' | 'closerequest' | 'none';\n\n/** React Aria's `useModalOverlay` options for a `closedBy` value. */\nexport function closedByOverlayOptions(closedBy: ClosedBy, isExiting: boolean) {\n return {\n isDismissable: closedBy === 'any' && !isExiting,\n isKeyboardDismissDisabled: closedBy === 'none',\n };\n}\n"],"mappings":";;AAQA,SAAgB,uBAAuB,UAAoB,WAAoB;CAC7E,OAAO;EACL,eAAe,aAAa,SAAS,CAAC;EACtC,2BAA2B,aAAa;CAC1C;AACF"}