@m3e/core 1.0.0-rc.1 → 1.0.0-rc.2

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 (338) hide show
  1. package/README.md +1 -2
  2. package/dist/a11y.js +6 -18
  3. package/dist/a11y.js.map +1 -1
  4. package/dist/a11y.min.js +5 -5
  5. package/dist/a11y.min.js.map +1 -1
  6. package/dist/custom-elements.json +3449 -3429
  7. package/dist/html-custom-data.json +14 -6
  8. package/dist/index.js +198 -29
  9. package/dist/index.js.map +1 -1
  10. package/dist/index.min.js +87 -87
  11. package/dist/index.min.js.map +1 -1
  12. package/package.json +1 -1
  13. package/cem.config.mjs +0 -16
  14. package/demo/index.html +0 -58
  15. package/dist/src/a11y/AriaDescriber.d.ts +0 -31
  16. package/dist/src/a11y/AriaDescriber.d.ts.map +0 -1
  17. package/dist/src/a11y/FocusTrapElement.d.ts +0 -25
  18. package/dist/src/a11y/FocusTrapElement.d.ts.map +0 -1
  19. package/dist/src/a11y/InteractivityChecker.d.ts +0 -22
  20. package/dist/src/a11y/InteractivityChecker.d.ts.map +0 -1
  21. package/dist/src/a11y/LiveAnnouncer.d.ts +0 -56
  22. package/dist/src/a11y/LiveAnnouncer.d.ts.map +0 -1
  23. package/dist/src/a11y/aria-reference.d.ts +0 -30
  24. package/dist/src/a11y/aria-reference.d.ts.map +0 -1
  25. package/dist/src/a11y/index.d.ts +0 -8
  26. package/dist/src/a11y/index.d.ts.map +0 -1
  27. package/dist/src/a11y/keycodes/KeyCode.d.ts +0 -118
  28. package/dist/src/a11y/keycodes/KeyCode.d.ts.map +0 -1
  29. package/dist/src/a11y/keycodes/ModifierKeys.d.ts +0 -5
  30. package/dist/src/a11y/keycodes/ModifierKeys.d.ts.map +0 -1
  31. package/dist/src/a11y/keycodes/getKeyCode.d.ts +0 -7
  32. package/dist/src/a11y/keycodes/getKeyCode.d.ts.map +0 -1
  33. package/dist/src/a11y/keycodes/hasModifierKey.d.ts +0 -9
  34. package/dist/src/a11y/keycodes/hasModifierKey.d.ts.map +0 -1
  35. package/dist/src/a11y/keycodes/index.d.ts +0 -6
  36. package/dist/src/a11y/keycodes/index.d.ts.map +0 -1
  37. package/dist/src/a11y/keycodes/isModifierAllowed.d.ts +0 -9
  38. package/dist/src/a11y/keycodes/isModifierAllowed.d.ts.map +0 -1
  39. package/dist/src/a11y/list-key/FocusKeyManager.d.ts +0 -17
  40. package/dist/src/a11y/list-key/FocusKeyManager.d.ts.map +0 -1
  41. package/dist/src/a11y/list-key/ListKeyManager.d.ts +0 -114
  42. package/dist/src/a11y/list-key/ListKeyManager.d.ts.map +0 -1
  43. package/dist/src/a11y/list-key/ListManager.d.ts +0 -37
  44. package/dist/src/a11y/list-key/ListManager.d.ts.map +0 -1
  45. package/dist/src/a11y/list-key/RadioKeyManager.d.ts +0 -20
  46. package/dist/src/a11y/list-key/RadioKeyManager.d.ts.map +0 -1
  47. package/dist/src/a11y/list-key/RovingTabIndexManager.d.ts +0 -22
  48. package/dist/src/a11y/list-key/RovingTabIndexManager.d.ts.map +0 -1
  49. package/dist/src/a11y/list-key/SelectionManager.d.ts +0 -46
  50. package/dist/src/a11y/list-key/SelectionManager.d.ts.map +0 -1
  51. package/dist/src/a11y/list-key/Typeahead.d.ts +0 -64
  52. package/dist/src/a11y/list-key/Typeahead.d.ts.map +0 -1
  53. package/dist/src/a11y/list-key/index.d.ts +0 -8
  54. package/dist/src/a11y/list-key/index.d.ts.map +0 -1
  55. package/dist/src/a11y/visuallyHide.d.ts +0 -6
  56. package/dist/src/a11y/visuallyHide.d.ts.map +0 -1
  57. package/dist/src/anchoring/AnchorOptions.d.ts +0 -15
  58. package/dist/src/anchoring/AnchorOptions.d.ts.map +0 -1
  59. package/dist/src/anchoring/AnchorPosition.d.ts +0 -3
  60. package/dist/src/anchoring/AnchorPosition.d.ts.map +0 -1
  61. package/dist/src/anchoring/index.d.ts +0 -4
  62. package/dist/src/anchoring/index.d.ts.map +0 -1
  63. package/dist/src/anchoring/positionAnchor.d.ts +0 -12
  64. package/dist/src/anchoring/positionAnchor.d.ts.map +0 -1
  65. package/dist/src/bidi/Directionality.d.ts +0 -27
  66. package/dist/src/bidi/Directionality.d.ts.map +0 -1
  67. package/dist/src/bidi/index.d.ts +0 -2
  68. package/dist/src/bidi/index.d.ts.map +0 -1
  69. package/dist/src/index.d.ts +0 -2
  70. package/dist/src/index.d.ts.map +0 -1
  71. package/dist/src/layout/Breakpoint.d.ts +0 -26
  72. package/dist/src/layout/Breakpoint.d.ts.map +0 -1
  73. package/dist/src/layout/BreakpointObserver.d.ts +0 -18
  74. package/dist/src/layout/BreakpointObserver.d.ts.map +0 -1
  75. package/dist/src/layout/index.d.ts +0 -3
  76. package/dist/src/layout/index.d.ts.map +0 -1
  77. package/dist/src/platform/Platform.d.ts +0 -34
  78. package/dist/src/platform/Platform.d.ts.map +0 -1
  79. package/dist/src/platform/index.d.ts +0 -2
  80. package/dist/src/platform/index.d.ts.map +0 -1
  81. package/dist/src/shared/controllers/FocusController.d.ts +0 -30
  82. package/dist/src/shared/controllers/FocusController.d.ts.map +0 -1
  83. package/dist/src/shared/controllers/HoverController.d.ts +0 -40
  84. package/dist/src/shared/controllers/HoverController.d.ts.map +0 -1
  85. package/dist/src/shared/controllers/IntersectionController.d.ts +0 -40
  86. package/dist/src/shared/controllers/IntersectionController.d.ts.map +0 -1
  87. package/dist/src/shared/controllers/LongPressController.d.ts +0 -32
  88. package/dist/src/shared/controllers/LongPressController.d.ts.map +0 -1
  89. package/dist/src/shared/controllers/MonitorControllerBase.d.ts +0 -62
  90. package/dist/src/shared/controllers/MonitorControllerBase.d.ts.map +0 -1
  91. package/dist/src/shared/controllers/MutationController.d.ts +0 -37
  92. package/dist/src/shared/controllers/MutationController.d.ts.map +0 -1
  93. package/dist/src/shared/controllers/PressedController.d.ts +0 -45
  94. package/dist/src/shared/controllers/PressedController.d.ts.map +0 -1
  95. package/dist/src/shared/controllers/ResizeController.d.ts +0 -40
  96. package/dist/src/shared/controllers/ResizeController.d.ts.map +0 -1
  97. package/dist/src/shared/controllers/ScrollController.d.ts +0 -34
  98. package/dist/src/shared/controllers/ScrollController.d.ts.map +0 -1
  99. package/dist/src/shared/controllers/index.d.ts +0 -9
  100. package/dist/src/shared/controllers/index.d.ts.map +0 -1
  101. package/dist/src/shared/decorators/debounce.d.ts +0 -7
  102. package/dist/src/shared/decorators/debounce.d.ts.map +0 -1
  103. package/dist/src/shared/decorators/index.d.ts +0 -2
  104. package/dist/src/shared/decorators/index.d.ts.map +0 -1
  105. package/dist/src/shared/directives/index.d.ts +0 -2
  106. package/dist/src/shared/directives/index.d.ts.map +0 -1
  107. package/dist/src/shared/directives/safeStyleMap.d.ts +0 -44
  108. package/dist/src/shared/directives/safeStyleMap.d.ts.map +0 -1
  109. package/dist/src/shared/index.d.ts +0 -8
  110. package/dist/src/shared/index.d.ts.map +0 -1
  111. package/dist/src/shared/mixins/AttachInternals.d.ts +0 -24
  112. package/dist/src/shared/mixins/AttachInternals.d.ts.map +0 -1
  113. package/dist/src/shared/mixins/Checked.d.ts +0 -24
  114. package/dist/src/shared/mixins/Checked.d.ts.map +0 -1
  115. package/dist/src/shared/mixins/CheckedIndeterminate.d.ts +0 -25
  116. package/dist/src/shared/mixins/CheckedIndeterminate.d.ts.map +0 -1
  117. package/dist/src/shared/mixins/CheckedOrSelected.d.ts +0 -23
  118. package/dist/src/shared/mixins/CheckedOrSelected.d.ts.map +0 -1
  119. package/dist/src/shared/mixins/ConstraintValidation.d.ts +0 -48
  120. package/dist/src/shared/mixins/ConstraintValidation.d.ts.map +0 -1
  121. package/dist/src/shared/mixins/Constructor.d.ts +0 -3
  122. package/dist/src/shared/mixins/Constructor.d.ts.map +0 -1
  123. package/dist/src/shared/mixins/Dirty.d.ts +0 -27
  124. package/dist/src/shared/mixins/Dirty.d.ts.map +0 -1
  125. package/dist/src/shared/mixins/Disabled.d.ts +0 -25
  126. package/dist/src/shared/mixins/Disabled.d.ts.map +0 -1
  127. package/dist/src/shared/mixins/DisabledInteractive.d.ts +0 -25
  128. package/dist/src/shared/mixins/DisabledInteractive.d.ts.map +0 -1
  129. package/dist/src/shared/mixins/EventAttribute.d.ts +0 -11
  130. package/dist/src/shared/mixins/EventAttribute.d.ts.map +0 -1
  131. package/dist/src/shared/mixins/Focusable.d.ts +0 -11
  132. package/dist/src/shared/mixins/Focusable.d.ts.map +0 -1
  133. package/dist/src/shared/mixins/FormAssociated.d.ts +0 -34
  134. package/dist/src/shared/mixins/FormAssociated.d.ts.map +0 -1
  135. package/dist/src/shared/mixins/FormSubmitter.d.ts +0 -31
  136. package/dist/src/shared/mixins/FormSubmitter.d.ts.map +0 -1
  137. package/dist/src/shared/mixins/HtmlFor.d.ts +0 -30
  138. package/dist/src/shared/mixins/HtmlFor.d.ts.map +0 -1
  139. package/dist/src/shared/mixins/KeyboardClick.d.ts +0 -11
  140. package/dist/src/shared/mixins/KeyboardClick.d.ts.map +0 -1
  141. package/dist/src/shared/mixins/Labelled.d.ts +0 -22
  142. package/dist/src/shared/mixins/Labelled.d.ts.map +0 -1
  143. package/dist/src/shared/mixins/LinkButton.d.ts +0 -36
  144. package/dist/src/shared/mixins/LinkButton.d.ts.map +0 -1
  145. package/dist/src/shared/mixins/ReadOnly.d.ts +0 -25
  146. package/dist/src/shared/mixins/ReadOnly.d.ts.map +0 -1
  147. package/dist/src/shared/mixins/Required.d.ts +0 -26
  148. package/dist/src/shared/mixins/Required.d.ts.map +0 -1
  149. package/dist/src/shared/mixins/RequiredConstraintValidation.d.ts +0 -21
  150. package/dist/src/shared/mixins/RequiredConstraintValidation.d.ts.map +0 -1
  151. package/dist/src/shared/mixins/Role.d.ts +0 -13
  152. package/dist/src/shared/mixins/Role.d.ts.map +0 -1
  153. package/dist/src/shared/mixins/Selected.d.ts +0 -24
  154. package/dist/src/shared/mixins/Selected.d.ts.map +0 -1
  155. package/dist/src/shared/mixins/Touched.d.ts +0 -27
  156. package/dist/src/shared/mixins/Touched.d.ts.map +0 -1
  157. package/dist/src/shared/mixins/Vertical.d.ts +0 -24
  158. package/dist/src/shared/mixins/Vertical.d.ts.map +0 -1
  159. package/dist/src/shared/mixins/hasKeys.d.ts +0 -9
  160. package/dist/src/shared/mixins/hasKeys.d.ts.map +0 -1
  161. package/dist/src/shared/mixins/index.d.ts +0 -25
  162. package/dist/src/shared/mixins/index.d.ts.map +0 -1
  163. package/dist/src/shared/primitives/CollapsibleElement.d.ts +0 -58
  164. package/dist/src/shared/primitives/CollapsibleElement.d.ts.map +0 -1
  165. package/dist/src/shared/primitives/ElevationElement.d.ts +0 -88
  166. package/dist/src/shared/primitives/ElevationElement.d.ts.map +0 -1
  167. package/dist/src/shared/primitives/ElevationLevel.d.ts +0 -3
  168. package/dist/src/shared/primitives/ElevationLevel.d.ts.map +0 -1
  169. package/dist/src/shared/primitives/ElevationToken.d.ts +0 -15
  170. package/dist/src/shared/primitives/ElevationToken.d.ts.map +0 -1
  171. package/dist/src/shared/primitives/FocusRingElement.d.ts +0 -78
  172. package/dist/src/shared/primitives/FocusRingElement.d.ts.map +0 -1
  173. package/dist/src/shared/primitives/FocusRingToken.d.ts +0 -17
  174. package/dist/src/shared/primitives/FocusRingToken.d.ts.map +0 -1
  175. package/dist/src/shared/primitives/PseudoCheckboxElement.d.ts +0 -50
  176. package/dist/src/shared/primitives/PseudoCheckboxElement.d.ts.map +0 -1
  177. package/dist/src/shared/primitives/PseudoRadioElement.d.ts +0 -41
  178. package/dist/src/shared/primitives/PseudoRadioElement.d.ts.map +0 -1
  179. package/dist/src/shared/primitives/RippleElement.d.ts +0 -110
  180. package/dist/src/shared/primitives/RippleElement.d.ts.map +0 -1
  181. package/dist/src/shared/primitives/RippleToken.d.ts +0 -12
  182. package/dist/src/shared/primitives/RippleToken.d.ts.map +0 -1
  183. package/dist/src/shared/primitives/ScrollContainerElement.d.ts +0 -64
  184. package/dist/src/shared/primitives/ScrollContainerElement.d.ts.map +0 -1
  185. package/dist/src/shared/primitives/ScrollDividers.d.ts +0 -3
  186. package/dist/src/shared/primitives/ScrollDividers.d.ts.map +0 -1
  187. package/dist/src/shared/primitives/SlideElement.d.ts +0 -48
  188. package/dist/src/shared/primitives/SlideElement.d.ts.map +0 -1
  189. package/dist/src/shared/primitives/StateLayerElement.d.ts +0 -77
  190. package/dist/src/shared/primitives/StateLayerElement.d.ts.map +0 -1
  191. package/dist/src/shared/primitives/StateLayerToken.d.ts +0 -13
  192. package/dist/src/shared/primitives/StateLayerToken.d.ts.map +0 -1
  193. package/dist/src/shared/primitives/TextOverflowElement.d.ts +0 -39
  194. package/dist/src/shared/primitives/TextOverflowElement.d.ts.map +0 -1
  195. package/dist/src/shared/primitives/index.d.ts +0 -13
  196. package/dist/src/shared/primitives/index.d.ts.map +0 -1
  197. package/dist/src/shared/tokens/ColorToken.d.ts +0 -96
  198. package/dist/src/shared/tokens/ColorToken.d.ts.map +0 -1
  199. package/dist/src/shared/tokens/DensityToken.d.ts +0 -15
  200. package/dist/src/shared/tokens/DensityToken.d.ts.map +0 -1
  201. package/dist/src/shared/tokens/DesignToken.d.ts +0 -366
  202. package/dist/src/shared/tokens/DesignToken.d.ts.map +0 -1
  203. package/dist/src/shared/tokens/ElevationToken.d.ts +0 -16
  204. package/dist/src/shared/tokens/ElevationToken.d.ts.map +0 -1
  205. package/dist/src/shared/tokens/MotionToken.d.ts +0 -69
  206. package/dist/src/shared/tokens/MotionToken.d.ts.map +0 -1
  207. package/dist/src/shared/tokens/ScrollbarToken.d.ts +0 -10
  208. package/dist/src/shared/tokens/ScrollbarToken.d.ts.map +0 -1
  209. package/dist/src/shared/tokens/ShapeToken.d.ts +0 -79
  210. package/dist/src/shared/tokens/ShapeToken.d.ts.map +0 -1
  211. package/dist/src/shared/tokens/StateToken.d.ts +0 -10
  212. package/dist/src/shared/tokens/StateToken.d.ts.map +0 -1
  213. package/dist/src/shared/tokens/TypescaleToken.d.ts +0 -220
  214. package/dist/src/shared/tokens/TypescaleToken.d.ts.map +0 -1
  215. package/dist/src/shared/tokens/index.d.ts +0 -2
  216. package/dist/src/shared/tokens/index.d.ts.map +0 -1
  217. package/dist/src/shared/utils/getTextContent.d.ts +0 -8
  218. package/dist/src/shared/utils/getTextContent.d.ts.map +0 -1
  219. package/dist/src/shared/utils/guid.d.ts +0 -6
  220. package/dist/src/shared/utils/guid.d.ts.map +0 -1
  221. package/dist/src/shared/utils/hasAssignedNodes.d.ts +0 -7
  222. package/dist/src/shared/utils/hasAssignedNodes.d.ts.map +0 -1
  223. package/dist/src/shared/utils/index.d.ts +0 -6
  224. package/dist/src/shared/utils/index.d.ts.map +0 -1
  225. package/dist/src/shared/utils/prefersReducedMotion.d.ts +0 -6
  226. package/dist/src/shared/utils/prefersReducedMotion.d.ts.map +0 -1
  227. package/dist/src/shared/utils/scrollIntoViewIfNeeded.d.ts +0 -8
  228. package/dist/src/shared/utils/scrollIntoViewIfNeeded.d.ts.map +0 -1
  229. package/eslint.config.mjs +0 -21
  230. package/rollup.config.js +0 -132
  231. package/src/a11y/AriaDescriber.ts +0 -130
  232. package/src/a11y/FocusTrapElement.ts +0 -136
  233. package/src/a11y/InteractivityChecker.ts +0 -62
  234. package/src/a11y/LiveAnnouncer.ts +0 -143
  235. package/src/a11y/aria-reference.ts +0 -51
  236. package/src/a11y/index.ts +0 -8
  237. package/src/a11y/keycodes/KeyCode.ts +0 -128
  238. package/src/a11y/keycodes/ModifierKeys.ts +0 -5
  239. package/src/a11y/keycodes/getKeyCode.ts +0 -8
  240. package/src/a11y/keycodes/hasModifierKey.ts +0 -11
  241. package/src/a11y/keycodes/index.ts +0 -5
  242. package/src/a11y/keycodes/isModifierAllowed.ts +0 -12
  243. package/src/a11y/list-key/FocusKeyManager.ts +0 -25
  244. package/src/a11y/list-key/ListKeyManager.ts +0 -350
  245. package/src/a11y/list-key/ListManager.ts +0 -66
  246. package/src/a11y/list-key/RadioKeyManager.ts +0 -49
  247. package/src/a11y/list-key/RovingTabIndexManager.ts +0 -56
  248. package/src/a11y/list-key/SelectionManager.ts +0 -132
  249. package/src/a11y/list-key/Typeahead.ts +0 -131
  250. package/src/a11y/list-key/index.ts +0 -7
  251. package/src/a11y/visuallyHide.ts +0 -18
  252. package/src/anchoring/AnchorOptions.ts +0 -19
  253. package/src/anchoring/AnchorPosition.ts +0 -14
  254. package/src/anchoring/index.ts +0 -3
  255. package/src/anchoring/positionAnchor.ts +0 -53
  256. package/src/bidi/Directionality.ts +0 -85
  257. package/src/bidi/index.ts +0 -1
  258. package/src/index.ts +0 -1
  259. package/src/layout/Breakpoint.ts +0 -26
  260. package/src/layout/BreakpointObserver.ts +0 -44
  261. package/src/layout/index.ts +0 -2
  262. package/src/platform/Platform.ts +0 -67
  263. package/src/platform/index.ts +0 -1
  264. package/src/shared/controllers/FocusController.ts +0 -60
  265. package/src/shared/controllers/HoverController.ts +0 -140
  266. package/src/shared/controllers/IntersectionController.ts +0 -81
  267. package/src/shared/controllers/LongPressController.ts +0 -87
  268. package/src/shared/controllers/MonitorControllerBase.ts +0 -99
  269. package/src/shared/controllers/MutationController.ts +0 -89
  270. package/src/shared/controllers/PressedController.ts +0 -137
  271. package/src/shared/controllers/ResizeController.ts +0 -83
  272. package/src/shared/controllers/ScrollController.ts +0 -100
  273. package/src/shared/controllers/index.ts +0 -8
  274. package/src/shared/decorators/debounce.ts +0 -19
  275. package/src/shared/decorators/index.ts +0 -1
  276. package/src/shared/directives/index.ts +0 -1
  277. package/src/shared/directives/safeStyleMap.ts +0 -108
  278. package/src/shared/index.ts +0 -7
  279. package/src/shared/mixins/AttachInternals.ts +0 -48
  280. package/src/shared/mixins/Checked.ts +0 -50
  281. package/src/shared/mixins/CheckedIndeterminate.ts +0 -47
  282. package/src/shared/mixins/CheckedOrSelected.ts +0 -36
  283. package/src/shared/mixins/ConstraintValidation.ts +0 -213
  284. package/src/shared/mixins/Constructor.ts +0 -2
  285. package/src/shared/mixins/Dirty.ts +0 -71
  286. package/src/shared/mixins/Disabled.ts +0 -49
  287. package/src/shared/mixins/DisabledInteractive.ts +0 -78
  288. package/src/shared/mixins/EventAttribute.ts +0 -25
  289. package/src/shared/mixins/Focusable.ts +0 -52
  290. package/src/shared/mixins/FormAssociated.ts +0 -152
  291. package/src/shared/mixins/FormSubmitter.ts +0 -123
  292. package/src/shared/mixins/HtmlFor.ts +0 -89
  293. package/src/shared/mixins/KeyboardClick.ts +0 -46
  294. package/src/shared/mixins/Labelled.ts +0 -88
  295. package/src/shared/mixins/LinkButton.ts +0 -169
  296. package/src/shared/mixins/ReadOnly.ts +0 -48
  297. package/src/shared/mixins/Required.ts +0 -50
  298. package/src/shared/mixins/RequiredConstraintValidation.ts +0 -45
  299. package/src/shared/mixins/Role.ts +0 -134
  300. package/src/shared/mixins/Selected.ts +0 -50
  301. package/src/shared/mixins/Touched.ts +0 -71
  302. package/src/shared/mixins/Vertical.ts +0 -44
  303. package/src/shared/mixins/hasKeys.ts +0 -10
  304. package/src/shared/mixins/index.ts +0 -24
  305. package/src/shared/primitives/CollapsibleElement.ts +0 -227
  306. package/src/shared/primitives/ElevationElement.ts +0 -254
  307. package/src/shared/primitives/ElevationLevel.ts +0 -2
  308. package/src/shared/primitives/ElevationToken.ts +0 -18
  309. package/src/shared/primitives/FocusRingElement.ts +0 -199
  310. package/src/shared/primitives/FocusRingToken.ts +0 -24
  311. package/src/shared/primitives/PseudoCheckboxElement.ts +0 -116
  312. package/src/shared/primitives/PseudoRadioElement.ts +0 -83
  313. package/src/shared/primitives/RippleElement.ts +0 -289
  314. package/src/shared/primitives/RippleToken.ts +0 -15
  315. package/src/shared/primitives/ScrollContainerElement.ts +0 -151
  316. package/src/shared/primitives/ScrollDividers.ts +0 -2
  317. package/src/shared/primitives/SlideElement.ts +0 -128
  318. package/src/shared/primitives/StateLayerElement.ts +0 -191
  319. package/src/shared/primitives/StateLayerToken.ts +0 -16
  320. package/src/shared/primitives/TextOverflowElement.ts +0 -60
  321. package/src/shared/primitives/index.ts +0 -12
  322. package/src/shared/tokens/ColorToken.ts +0 -142
  323. package/src/shared/tokens/DensityToken.ts +0 -23
  324. package/src/shared/tokens/DesignToken.ts +0 -35
  325. package/src/shared/tokens/ElevationToken.ts +0 -115
  326. package/src/shared/tokens/MotionToken.ts +0 -107
  327. package/src/shared/tokens/ScrollbarToken.ts +0 -13
  328. package/src/shared/tokens/ShapeToken.ts +0 -138
  329. package/src/shared/tokens/StateToken.ts +0 -13
  330. package/src/shared/tokens/TypescaleToken.ts +0 -230
  331. package/src/shared/tokens/index.ts +0 -1
  332. package/src/shared/utils/getTextContent.ts +0 -31
  333. package/src/shared/utils/guid.ts +0 -11
  334. package/src/shared/utils/hasAssignedNodes.ts +0 -8
  335. package/src/shared/utils/index.ts +0 -5
  336. package/src/shared/utils/prefersReducedMotion.ts +0 -9
  337. package/src/shared/utils/scrollIntoViewIfNeeded.ts +0 -18
  338. package/tsconfig.json +0 -9
@@ -1,134 +0,0 @@
1
- import { LitElement } from "lit";
2
-
3
- import { Constructor } from "./Constructor";
4
-
5
- /** Specifies valid values for the ARIA `role` attribute. */
6
- export type ARIARole =
7
- | "alert"
8
- | "alertdialog"
9
- | "button"
10
- | "checkbox"
11
- | "dialog"
12
- | "gridcell"
13
- | "link"
14
- | "log"
15
- | "marquee"
16
- | "menuitem"
17
- | "menuitemcheckbox"
18
- | "menuitemradio"
19
- | "option"
20
- | "progressbar"
21
- | "radio"
22
- | "scrollbar"
23
- | "searchbox"
24
- | "slider"
25
- | "spinbutton"
26
- | "status"
27
- | "switch"
28
- | "tab"
29
- | "tabpanel"
30
- | "textbox"
31
- | "timer"
32
- | "tooltip"
33
- | "treeitem"
34
- | "combobox"
35
- | "grid"
36
- | "listbox"
37
- | "menu"
38
- | "menubar"
39
- | "radiogroup"
40
- | "tablist"
41
- | "tree"
42
- | "treegrid"
43
- | "application"
44
- | "article"
45
- | "cell"
46
- | "columnheader"
47
- | "definition"
48
- | "directory"
49
- | "document"
50
- | "feed"
51
- | "figure"
52
- | "group"
53
- | "heading"
54
- | "img"
55
- | "list"
56
- | "listitem"
57
- | "math"
58
- | "none"
59
- | "note"
60
- | "presentation"
61
- | "region"
62
- | "row"
63
- | "rowgroup"
64
- | "rowheader"
65
- | "separator"
66
- | "table"
67
- | "term"
68
- | "text"
69
- | "toolbar"
70
- | "banner"
71
- | "complementary"
72
- | "contentinfo"
73
- | "form"
74
- | "main"
75
- | "navigation"
76
- | "region"
77
- | "search"
78
- | "doc-abstract"
79
- | "doc-acknowledgments"
80
- | "doc-afterword"
81
- | "doc-appendix"
82
- | "doc-backlink"
83
- | "doc-biblioentry"
84
- | "doc-bibliography"
85
- | "doc-biblioref"
86
- | "doc-chapter"
87
- | "doc-colophon"
88
- | "doc-conclusion"
89
- | "doc-cover"
90
- | "doc-credit"
91
- | "doc-credits"
92
- | "doc-dedication"
93
- | "doc-endnote"
94
- | "doc-endnotes"
95
- | "doc-epigraph"
96
- | "doc-epilogue"
97
- | "doc-errata"
98
- | "doc-example"
99
- | "doc-footnote"
100
- | "doc-foreword"
101
- | "doc-glossary"
102
- | "doc-glossref"
103
- | "doc-index"
104
- | "doc-introduction"
105
- | "doc-noteref"
106
- | "doc-notice"
107
- | "doc-pagebreak"
108
- | "doc-pagelist"
109
- | "doc-part"
110
- | "doc-preface"
111
- | "doc-prologue"
112
- | "doc-pullquote"
113
- | "doc-qna"
114
- | "doc-subtitle"
115
- | "doc-tip"
116
- | "doc-toc";
117
-
118
- /**
119
- * Mixin to augment an element with an ARIA role.
120
- * @template T The type of the base class.
121
- * @param {T} base The base class.
122
- * @param {ARIARole} role The ARIA role.
123
- * @returns {Constructor & T} A constructor that implements focusable behavior.
124
- */
125
- export function Role<T extends Constructor<LitElement>>(base: T, role: ARIARole): Constructor & T {
126
- abstract class _RoleMixin extends base {
127
- override connectedCallback(): void {
128
- this.role = this.role || role;
129
- super.connectedCallback();
130
- }
131
- }
132
-
133
- return _RoleMixin;
134
- }
@@ -1,50 +0,0 @@
1
- import { LitElement, PropertyValues } from "lit";
2
- import { property } from "lit/decorators.js";
3
-
4
- import { Constructor } from "./Constructor";
5
- import { hasKeys } from "./hasKeys";
6
-
7
- /** Defines functionality for an element which supports a selected state. */
8
- export interface SelectedMixin {
9
- /**
10
- * Whether the element is selected.
11
- * @default false
12
- */
13
- selected: boolean;
14
- }
15
-
16
- /**
17
- * Determines whether a value is a `SelectedMixin`.
18
- * @param {unknown} value The value to test.
19
- * @returns Whether `value` is a `SelectedMixin`.
20
- */
21
- export function isSelectedMixin(value: unknown): value is SelectedMixin {
22
- return hasKeys<SelectedMixin>(value, "selected");
23
- }
24
-
25
- /**
26
- * Mixin to augment an element with behavior that supports a selected state.
27
- * @template T The type of the base class.
28
- * @param {T} base The base class.
29
- * @returns {Constructor<SelectedMixin> & T} A constructor that implements `SelectedMixin`.
30
- */
31
- export function Selected<T extends Constructor<LitElement>>(base: T): Constructor<SelectedMixin> & T {
32
- abstract class _SelectedMixin extends base implements SelectedMixin {
33
- @property({ type: Boolean, reflect: true }) selected = false;
34
-
35
- protected override update(changedProperties: PropertyValues<this>): void {
36
- super.update(changedProperties);
37
-
38
- if (changedProperties.has("selected")) {
39
- if (this.role === "button") {
40
- this.ariaPressed = `${this.selected}`;
41
- this.ariaSelected = null;
42
- } else if (this.role && this.role !== "none" && this.role !== "presentation") {
43
- this.ariaSelected = `${this.selected}`;
44
- this.ariaPressed = null;
45
- }
46
- }
47
- }
48
- }
49
- return _SelectedMixin;
50
- }
@@ -1,71 +0,0 @@
1
- import { LitElement } from "lit";
2
-
3
- import { Constructor } from "./Constructor";
4
- import { hasKeys } from "./hasKeys";
5
-
6
- /** Defines functionality for an element that can be marked as touched. */
7
- export interface TouchedMixin {
8
- /** Whether the user has interacted when the element. */
9
- readonly touched: boolean;
10
-
11
- /** Whether the user has not interacted when the element. */
12
- readonly untouched: boolean;
13
-
14
- /** Marks the element as touched. */
15
- markAsTouched(): void;
16
-
17
- /** Marks the element as untouched. */
18
- markAsUntouched(): void;
19
- }
20
-
21
- /**
22
- * Determines whether a value is a `TouchedMixin`.
23
- * @param {unknown} value The value to test.
24
- * @returns A value indicating whether `value` is a `TouchedMixin`.
25
- */
26
- export function isTouchedMixin(value: unknown): value is TouchedMixin {
27
- return hasKeys<TouchedMixin>(value, "touched", "untouched", "markAsTouched", "markAsUntouched");
28
- }
29
-
30
- const _eventHandler = Symbol("_eventHandler");
31
-
32
- /**
33
- * Mixin to augment an element with functionality used to mark it as touched.
34
- * @template T The type of the base class.
35
- * @param {T} base The base class.
36
- * @returns {Constructor<TouchedMixin> & T} A constructor that implements `TouchedMixin`.
37
- */
38
- export function Touched<T extends Constructor<LitElement>>(base: T): Constructor<TouchedMixin> & T {
39
- abstract class _Touched extends base implements TouchedMixin {
40
- private [_eventHandler] = () => this.markAsTouched();
41
-
42
- get touched(): boolean {
43
- return this.classList.contains("-touched");
44
- }
45
-
46
- get untouched(): boolean {
47
- return !this.touched;
48
- }
49
-
50
- override connectedCallback(): void {
51
- this.markAsUntouched();
52
- super.connectedCallback();
53
- this.addEventListener("focusout", this[_eventHandler]);
54
- }
55
-
56
- override disconnectedCallback(): void {
57
- super.disconnectedCallback();
58
- this.removeEventListener("focusout", this[_eventHandler]);
59
- }
60
-
61
- markAsTouched(): void {
62
- this.classList.toggle("-touched", true);
63
- }
64
-
65
- markAsUntouched(): void {
66
- this.classList.toggle("-touched", false);
67
- }
68
- }
69
-
70
- return _Touched;
71
- }
@@ -1,44 +0,0 @@
1
- import { LitElement, PropertyValues } from "lit";
2
- import { property } from "lit/decorators.js";
3
-
4
- import { Constructor } from "./Constructor";
5
- import { hasKeys } from "./hasKeys";
6
-
7
- /** Defines functionality for an element which supports a vertical orientation. */
8
- export interface VerticalMixin {
9
- /**
10
- * Whether the element is oriented vertically.
11
- * @default false
12
- */
13
- vertical: boolean;
14
- }
15
-
16
- /**
17
- * Determines whether a value is a `VerticalMixin`.
18
- * @param {unknown} value The value to test.
19
- * @returns A value indicating whether `value` is a `VerticalMixin`.
20
- */
21
- export function isVerticalMixin(value: unknown): value is VerticalMixin {
22
- return hasKeys<VerticalMixin>(value, "vertical");
23
- }
24
-
25
- /**
26
- * Mixin to augment an element with behavior that supports a vertical orientation.
27
- * @template T The type of the base class.
28
- * @param {T} base The base class.
29
- * @returns {Constructor<VerticalMixin> & T} A constructor that implements `VerticalMixin`.
30
- */
31
- export function Vertical<T extends Constructor<LitElement>>(base: T): Constructor<VerticalMixin> & T {
32
- abstract class _VerticalMixin extends base implements VerticalMixin {
33
- @property({ type: Boolean, reflect: true }) vertical = false;
34
-
35
- protected override update(changedProperties: PropertyValues<this>): void {
36
- super.update(changedProperties);
37
-
38
- if (changedProperties.has("vertical")) {
39
- this.ariaOrientation = this.vertical ? "vertical" : "horizontal";
40
- }
41
- }
42
- }
43
- return _VerticalMixin;
44
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * Determines whether an object has keys for a given type.
3
- * @template T The type to test.
4
- * @param {unknown} value The value to test.
5
- * @param {...keys: Array<keyof T>} keys The keys of `T` to test.
6
- * @returns {boolean} Whether `value` has all `keys`.
7
- */
8
- export function hasKeys<T extends object>(value: unknown, ...keys: Array<keyof T>): boolean {
9
- return typeof value === "object" && value !== null && keys.every((x) => x in value);
10
- }
@@ -1,24 +0,0 @@
1
- export * from "./AttachInternals";
2
- export * from "./Checked";
3
- export * from "./CheckedIndeterminate";
4
- export * from "./CheckedOrSelected";
5
- export * from "./ConstraintValidation";
6
- export * from "./Dirty";
7
- export * from "./Disabled";
8
- export * from "./DisabledInteractive";
9
- export * from "./EventAttribute";
10
- export * from "./Focusable";
11
- export * from "./FormAssociated";
12
- export * from "./FormSubmitter";
13
- export * from "./hasKeys";
14
- export * from "./HtmlFor";
15
- export * from "./KeyboardClick";
16
- export * from "./Labelled";
17
- export * from "./LinkButton";
18
- export * from "./ReadOnly";
19
- export * from "./Required";
20
- export * from "./RequiredConstraintValidation";
21
- export * from "./Role";
22
- export * from "./Selected";
23
- export * from "./Touched";
24
- export * from "./Vertical";
@@ -1,227 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
2
-
3
- import { css, CSSResultGroup, html, LitElement, PropertyValues, unsafeCSS } from "lit";
4
- import { customElement, property } from "lit/decorators.js";
5
-
6
- import { EventAttribute, Role } from "../mixins";
7
- import { DesignToken } from "../tokens";
8
- import { prefersReducedMotion } from "../utils";
9
-
10
- /**
11
- * A container used to expand and collapse content.
12
- *
13
- * @example
14
- * ```html
15
- * <m3e-collapsible>
16
- * <!-- Collapsible content -->
17
- * </m3e-collapsible>
18
- * ```
19
- *
20
- * @tag m3e-collapsible
21
- *
22
- * @slot - Renders the collapsible content.
23
- *
24
- * @attr open - Whether content is visible.
25
- *
26
- * @fires opening - Emitted when the collapsible begins to open.
27
- * @fires opened - Emitted when the collapsible has opened.
28
- * @fires closing - Emitted when the collapsible begins to close.
29
- * @fires closed - Emitted when the collapsible has closed.
30
- *
31
- * @cssprop --m3e-collapsible-animation-duration - The duration of the expand / collapse animation.
32
- */
33
- @customElement("m3e-collapsible")
34
- export class M3eCollapsibleElement extends EventAttribute(
35
- Role(LitElement, "none"),
36
- "opening",
37
- "opened",
38
- "closing",
39
- "closed"
40
- ) {
41
- /** The styles of the element. */
42
- static override styles: CSSResultGroup = css`
43
- :host {
44
- display: block;
45
- height: 0px;
46
- overflow: hidden;
47
- transition: ${unsafeCSS(`visibility var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
48
- ${DesignToken.motion.easing.standard},
49
- height var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
50
- ${DesignToken.motion.easing.standard},
51
- padding-top var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
52
- ${DesignToken.motion.easing.standard},
53
- padding-bottom var(--m3e-collapsible-animation-duration, ${DesignToken.motion.duration.medium1})
54
- ${DesignToken.motion.easing.standard}`)};
55
- }
56
- :host(:not(.-closing):not([open])) {
57
- visibility: hidden;
58
- }
59
- :host([open]) {
60
- visibility: visible;
61
- }
62
- :host(:not([open])) {
63
- min-height: unset !important;
64
- padding-top: 0px !important;
65
- padding-bottom: 0px !important;
66
- }
67
- :host(.-no-animate) {
68
- transition-duration: 0ms;
69
- }
70
- ::slotted(*) {
71
- --m3e-collapsible-animation-duration: initial;
72
- }
73
- @media (prefers-reduced-motion) {
74
- :host {
75
- transition: none;
76
- }
77
- }
78
- `;
79
-
80
- /** @private */ #slotChanged = false;
81
- /** @private */ #hasOpened = false;
82
-
83
- /**
84
- * Whether content is visible.
85
- * @default false
86
- */
87
- @property({ type: Boolean, reflect: true }) open = false;
88
-
89
- /** @inheritdoc */
90
- protected override update(changedProperties: PropertyValues): void {
91
- super.update(changedProperties);
92
-
93
- this.classList.toggle("-no-animate", true);
94
-
95
- if (!this.#slotChanged) {
96
- if (this.open) {
97
- this.#hasOpened = true;
98
- this.#autoSize();
99
- }
100
- this.#slotChanged = true;
101
- return;
102
- }
103
-
104
- this.toggleAttribute("inert", !this.open);
105
-
106
- if (this.open) {
107
- this.#hasOpened = true;
108
- this.classList.toggle("-closing", false);
109
- this.classList.toggle("-opening", true);
110
- this.dispatchEvent(new Event("opening"));
111
-
112
- this.#clearSize();
113
- this.classList.toggle("-no-animate", false);
114
- this.#actualSize();
115
-
116
- if (prefersReducedMotion()) {
117
- this.classList.toggle("-opening", false);
118
- this.dispatchEvent(new Event("opened"));
119
- } else {
120
- this.addEventListener(
121
- "transitionend",
122
- () => {
123
- if (this.open) {
124
- this.#autoSize();
125
- this.classList.toggle("-opening", false);
126
- this.dispatchEvent(new Event("opened"));
127
- }
128
- },
129
- { once: true }
130
- );
131
- }
132
- } else {
133
- this.classList.toggle("-opening", false);
134
- this.classList.toggle("-closing", true);
135
- this.dispatchEvent(new Event("closing"));
136
-
137
- this.#actualSize();
138
- if (this.#hasOpened) {
139
- this.classList.toggle("-no-animate", false);
140
- }
141
-
142
- if (prefersReducedMotion()) {
143
- this.#clearSize();
144
- this.classList.toggle("-closing", false);
145
- this.dispatchEvent(new Event("closed"));
146
- } else {
147
- requestAnimationFrame(() => {
148
- this.#clearSize();
149
- this.addEventListener(
150
- "transitionend",
151
- () => {
152
- if (!this.open) {
153
- this.classList.toggle("-closing", false);
154
- this.dispatchEvent(new Event("closed"));
155
- }
156
- },
157
- { once: true }
158
- );
159
- });
160
- }
161
- }
162
- }
163
-
164
- /** @inheritdoc */
165
- protected override render(): unknown {
166
- return html`<slot @slotchange="${this.#handleSlotChange}"></slot>`;
167
- }
168
-
169
- /** @private */
170
- #handleSlotChange() {
171
- this.#slotChanged = true;
172
- }
173
-
174
- /** @private */
175
- #autoSize(): void {
176
- this.style.height = "auto";
177
- }
178
-
179
- /** @private */
180
- #clearSize(): void {
181
- this.style.height = "";
182
- }
183
-
184
- /** @private */
185
- #actualSize(): void {
186
- this.style.height = `${this.scrollHeight}px`;
187
- }
188
- }
189
-
190
- interface M3eCollapsibleElementEventMap extends HTMLElementEventMap {
191
- opening: Event;
192
- opened: Event;
193
- closing: Event;
194
- closed: Event;
195
- }
196
-
197
- export interface M3eCollapsibleElement {
198
- addEventListener<K extends keyof M3eCollapsibleElementEventMap>(
199
- type: K,
200
- listener: (this: M3eCollapsibleElement, ev: M3eCollapsibleElementEventMap[K]) => void,
201
- options?: boolean | AddEventListenerOptions
202
- ): void;
203
-
204
- addEventListener(
205
- type: string,
206
- listener: EventListenerOrEventListenerObject,
207
- options?: boolean | AddEventListenerOptions
208
- ): void;
209
-
210
- removeEventListener<K extends keyof M3eCollapsibleElementEventMap>(
211
- type: K,
212
- listener: (this: M3eCollapsibleElement, ev: M3eCollapsibleElementEventMap[K]) => void,
213
- options?: boolean | EventListenerOptions
214
- ): void;
215
-
216
- removeEventListener(
217
- type: string,
218
- listener: EventListenerOrEventListenerObject,
219
- options?: boolean | EventListenerOptions
220
- ): void;
221
- }
222
-
223
- declare global {
224
- interface HTMLElementTagNameMap {
225
- "m3e-collapsible": M3eCollapsibleElement;
226
- }
227
- }