@m3e/core 1.0.0-rc.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 (357) hide show
  1. package/LICENSE +22 -0
  2. package/NOTICE.md +8 -0
  3. package/README.md +59 -0
  4. package/cem.config.mjs +16 -0
  5. package/demo/index.html +58 -0
  6. package/dist/a11y.js +1431 -0
  7. package/dist/a11y.js.map +1 -0
  8. package/dist/a11y.min.js +87 -0
  9. package/dist/a11y.min.js.map +1 -0
  10. package/dist/anchoring.js +1748 -0
  11. package/dist/anchoring.js.map +1 -0
  12. package/dist/anchoring.min.js +7 -0
  13. package/dist/anchoring.min.js.map +1 -0
  14. package/dist/bidi.js +106 -0
  15. package/dist/bidi.js.map +1 -0
  16. package/dist/bidi.min.js +16 -0
  17. package/dist/bidi.min.js.map +1 -0
  18. package/dist/css-custom-data.json +257 -0
  19. package/dist/custom-elements.json +13504 -0
  20. package/dist/html-custom-data.json +199 -0
  21. package/dist/index.js +4342 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/index.min.js +520 -0
  24. package/dist/index.min.js.map +1 -0
  25. package/dist/layout.js +64 -0
  26. package/dist/layout.js.map +1 -0
  27. package/dist/layout.min.js +15 -0
  28. package/dist/layout.min.js.map +1 -0
  29. package/dist/platform.js +56 -0
  30. package/dist/platform.js.map +1 -0
  31. package/dist/platform.min.js +15 -0
  32. package/dist/platform.min.js.map +1 -0
  33. package/dist/src/a11y/AriaDescriber.d.ts +31 -0
  34. package/dist/src/a11y/AriaDescriber.d.ts.map +1 -0
  35. package/dist/src/a11y/FocusTrapElement.d.ts +25 -0
  36. package/dist/src/a11y/FocusTrapElement.d.ts.map +1 -0
  37. package/dist/src/a11y/InteractivityChecker.d.ts +22 -0
  38. package/dist/src/a11y/InteractivityChecker.d.ts.map +1 -0
  39. package/dist/src/a11y/LiveAnnouncer.d.ts +56 -0
  40. package/dist/src/a11y/LiveAnnouncer.d.ts.map +1 -0
  41. package/dist/src/a11y/aria-reference.d.ts +30 -0
  42. package/dist/src/a11y/aria-reference.d.ts.map +1 -0
  43. package/dist/src/a11y/index.d.ts +8 -0
  44. package/dist/src/a11y/index.d.ts.map +1 -0
  45. package/dist/src/a11y/keycodes/KeyCode.d.ts +118 -0
  46. package/dist/src/a11y/keycodes/KeyCode.d.ts.map +1 -0
  47. package/dist/src/a11y/keycodes/ModifierKeys.d.ts +5 -0
  48. package/dist/src/a11y/keycodes/ModifierKeys.d.ts.map +1 -0
  49. package/dist/src/a11y/keycodes/getKeyCode.d.ts +7 -0
  50. package/dist/src/a11y/keycodes/getKeyCode.d.ts.map +1 -0
  51. package/dist/src/a11y/keycodes/hasModifierKey.d.ts +9 -0
  52. package/dist/src/a11y/keycodes/hasModifierKey.d.ts.map +1 -0
  53. package/dist/src/a11y/keycodes/index.d.ts +6 -0
  54. package/dist/src/a11y/keycodes/index.d.ts.map +1 -0
  55. package/dist/src/a11y/keycodes/isModifierAllowed.d.ts +9 -0
  56. package/dist/src/a11y/keycodes/isModifierAllowed.d.ts.map +1 -0
  57. package/dist/src/a11y/list-key/FocusKeyManager.d.ts +17 -0
  58. package/dist/src/a11y/list-key/FocusKeyManager.d.ts.map +1 -0
  59. package/dist/src/a11y/list-key/ListKeyManager.d.ts +114 -0
  60. package/dist/src/a11y/list-key/ListKeyManager.d.ts.map +1 -0
  61. package/dist/src/a11y/list-key/ListManager.d.ts +37 -0
  62. package/dist/src/a11y/list-key/ListManager.d.ts.map +1 -0
  63. package/dist/src/a11y/list-key/RadioKeyManager.d.ts +20 -0
  64. package/dist/src/a11y/list-key/RadioKeyManager.d.ts.map +1 -0
  65. package/dist/src/a11y/list-key/RovingTabIndexManager.d.ts +22 -0
  66. package/dist/src/a11y/list-key/RovingTabIndexManager.d.ts.map +1 -0
  67. package/dist/src/a11y/list-key/SelectionManager.d.ts +46 -0
  68. package/dist/src/a11y/list-key/SelectionManager.d.ts.map +1 -0
  69. package/dist/src/a11y/list-key/Typeahead.d.ts +64 -0
  70. package/dist/src/a11y/list-key/Typeahead.d.ts.map +1 -0
  71. package/dist/src/a11y/list-key/index.d.ts +8 -0
  72. package/dist/src/a11y/list-key/index.d.ts.map +1 -0
  73. package/dist/src/a11y/visuallyHide.d.ts +6 -0
  74. package/dist/src/a11y/visuallyHide.d.ts.map +1 -0
  75. package/dist/src/anchoring/AnchorOptions.d.ts +15 -0
  76. package/dist/src/anchoring/AnchorOptions.d.ts.map +1 -0
  77. package/dist/src/anchoring/AnchorPosition.d.ts +3 -0
  78. package/dist/src/anchoring/AnchorPosition.d.ts.map +1 -0
  79. package/dist/src/anchoring/index.d.ts +4 -0
  80. package/dist/src/anchoring/index.d.ts.map +1 -0
  81. package/dist/src/anchoring/positionAnchor.d.ts +12 -0
  82. package/dist/src/anchoring/positionAnchor.d.ts.map +1 -0
  83. package/dist/src/bidi/Directionality.d.ts +27 -0
  84. package/dist/src/bidi/Directionality.d.ts.map +1 -0
  85. package/dist/src/bidi/index.d.ts +2 -0
  86. package/dist/src/bidi/index.d.ts.map +1 -0
  87. package/dist/src/index.d.ts +2 -0
  88. package/dist/src/index.d.ts.map +1 -0
  89. package/dist/src/layout/Breakpoint.d.ts +26 -0
  90. package/dist/src/layout/Breakpoint.d.ts.map +1 -0
  91. package/dist/src/layout/BreakpointObserver.d.ts +18 -0
  92. package/dist/src/layout/BreakpointObserver.d.ts.map +1 -0
  93. package/dist/src/layout/index.d.ts +3 -0
  94. package/dist/src/layout/index.d.ts.map +1 -0
  95. package/dist/src/platform/Platform.d.ts +34 -0
  96. package/dist/src/platform/Platform.d.ts.map +1 -0
  97. package/dist/src/platform/index.d.ts +2 -0
  98. package/dist/src/platform/index.d.ts.map +1 -0
  99. package/dist/src/shared/controllers/FocusController.d.ts +30 -0
  100. package/dist/src/shared/controllers/FocusController.d.ts.map +1 -0
  101. package/dist/src/shared/controllers/HoverController.d.ts +40 -0
  102. package/dist/src/shared/controllers/HoverController.d.ts.map +1 -0
  103. package/dist/src/shared/controllers/IntersectionController.d.ts +40 -0
  104. package/dist/src/shared/controllers/IntersectionController.d.ts.map +1 -0
  105. package/dist/src/shared/controllers/LongPressController.d.ts +32 -0
  106. package/dist/src/shared/controllers/LongPressController.d.ts.map +1 -0
  107. package/dist/src/shared/controllers/MonitorControllerBase.d.ts +62 -0
  108. package/dist/src/shared/controllers/MonitorControllerBase.d.ts.map +1 -0
  109. package/dist/src/shared/controllers/MutationController.d.ts +37 -0
  110. package/dist/src/shared/controllers/MutationController.d.ts.map +1 -0
  111. package/dist/src/shared/controllers/PressedController.d.ts +45 -0
  112. package/dist/src/shared/controllers/PressedController.d.ts.map +1 -0
  113. package/dist/src/shared/controllers/ResizeController.d.ts +40 -0
  114. package/dist/src/shared/controllers/ResizeController.d.ts.map +1 -0
  115. package/dist/src/shared/controllers/ScrollController.d.ts +34 -0
  116. package/dist/src/shared/controllers/ScrollController.d.ts.map +1 -0
  117. package/dist/src/shared/controllers/index.d.ts +9 -0
  118. package/dist/src/shared/controllers/index.d.ts.map +1 -0
  119. package/dist/src/shared/decorators/debounce.d.ts +7 -0
  120. package/dist/src/shared/decorators/debounce.d.ts.map +1 -0
  121. package/dist/src/shared/decorators/index.d.ts +2 -0
  122. package/dist/src/shared/decorators/index.d.ts.map +1 -0
  123. package/dist/src/shared/directives/index.d.ts +2 -0
  124. package/dist/src/shared/directives/index.d.ts.map +1 -0
  125. package/dist/src/shared/directives/safeStyleMap.d.ts +44 -0
  126. package/dist/src/shared/directives/safeStyleMap.d.ts.map +1 -0
  127. package/dist/src/shared/index.d.ts +8 -0
  128. package/dist/src/shared/index.d.ts.map +1 -0
  129. package/dist/src/shared/mixins/AttachInternals.d.ts +24 -0
  130. package/dist/src/shared/mixins/AttachInternals.d.ts.map +1 -0
  131. package/dist/src/shared/mixins/Checked.d.ts +24 -0
  132. package/dist/src/shared/mixins/Checked.d.ts.map +1 -0
  133. package/dist/src/shared/mixins/CheckedIndeterminate.d.ts +25 -0
  134. package/dist/src/shared/mixins/CheckedIndeterminate.d.ts.map +1 -0
  135. package/dist/src/shared/mixins/CheckedOrSelected.d.ts +23 -0
  136. package/dist/src/shared/mixins/CheckedOrSelected.d.ts.map +1 -0
  137. package/dist/src/shared/mixins/ConstraintValidation.d.ts +48 -0
  138. package/dist/src/shared/mixins/ConstraintValidation.d.ts.map +1 -0
  139. package/dist/src/shared/mixins/Constructor.d.ts +3 -0
  140. package/dist/src/shared/mixins/Constructor.d.ts.map +1 -0
  141. package/dist/src/shared/mixins/Dirty.d.ts +27 -0
  142. package/dist/src/shared/mixins/Dirty.d.ts.map +1 -0
  143. package/dist/src/shared/mixins/Disabled.d.ts +25 -0
  144. package/dist/src/shared/mixins/Disabled.d.ts.map +1 -0
  145. package/dist/src/shared/mixins/DisabledInteractive.d.ts +25 -0
  146. package/dist/src/shared/mixins/DisabledInteractive.d.ts.map +1 -0
  147. package/dist/src/shared/mixins/EventAttribute.d.ts +11 -0
  148. package/dist/src/shared/mixins/EventAttribute.d.ts.map +1 -0
  149. package/dist/src/shared/mixins/Focusable.d.ts +11 -0
  150. package/dist/src/shared/mixins/Focusable.d.ts.map +1 -0
  151. package/dist/src/shared/mixins/FormAssociated.d.ts +34 -0
  152. package/dist/src/shared/mixins/FormAssociated.d.ts.map +1 -0
  153. package/dist/src/shared/mixins/FormSubmitter.d.ts +31 -0
  154. package/dist/src/shared/mixins/FormSubmitter.d.ts.map +1 -0
  155. package/dist/src/shared/mixins/HtmlFor.d.ts +30 -0
  156. package/dist/src/shared/mixins/HtmlFor.d.ts.map +1 -0
  157. package/dist/src/shared/mixins/KeyboardClick.d.ts +11 -0
  158. package/dist/src/shared/mixins/KeyboardClick.d.ts.map +1 -0
  159. package/dist/src/shared/mixins/Labelled.d.ts +22 -0
  160. package/dist/src/shared/mixins/Labelled.d.ts.map +1 -0
  161. package/dist/src/shared/mixins/LinkButton.d.ts +36 -0
  162. package/dist/src/shared/mixins/LinkButton.d.ts.map +1 -0
  163. package/dist/src/shared/mixins/ReadOnly.d.ts +25 -0
  164. package/dist/src/shared/mixins/ReadOnly.d.ts.map +1 -0
  165. package/dist/src/shared/mixins/Required.d.ts +26 -0
  166. package/dist/src/shared/mixins/Required.d.ts.map +1 -0
  167. package/dist/src/shared/mixins/RequiredConstraintValidation.d.ts +21 -0
  168. package/dist/src/shared/mixins/RequiredConstraintValidation.d.ts.map +1 -0
  169. package/dist/src/shared/mixins/Role.d.ts +13 -0
  170. package/dist/src/shared/mixins/Role.d.ts.map +1 -0
  171. package/dist/src/shared/mixins/Selected.d.ts +24 -0
  172. package/dist/src/shared/mixins/Selected.d.ts.map +1 -0
  173. package/dist/src/shared/mixins/Touched.d.ts +27 -0
  174. package/dist/src/shared/mixins/Touched.d.ts.map +1 -0
  175. package/dist/src/shared/mixins/Vertical.d.ts +24 -0
  176. package/dist/src/shared/mixins/Vertical.d.ts.map +1 -0
  177. package/dist/src/shared/mixins/hasKeys.d.ts +9 -0
  178. package/dist/src/shared/mixins/hasKeys.d.ts.map +1 -0
  179. package/dist/src/shared/mixins/index.d.ts +25 -0
  180. package/dist/src/shared/mixins/index.d.ts.map +1 -0
  181. package/dist/src/shared/primitives/CollapsibleElement.d.ts +58 -0
  182. package/dist/src/shared/primitives/CollapsibleElement.d.ts.map +1 -0
  183. package/dist/src/shared/primitives/ElevationElement.d.ts +88 -0
  184. package/dist/src/shared/primitives/ElevationElement.d.ts.map +1 -0
  185. package/dist/src/shared/primitives/ElevationLevel.d.ts +3 -0
  186. package/dist/src/shared/primitives/ElevationLevel.d.ts.map +1 -0
  187. package/dist/src/shared/primitives/ElevationToken.d.ts +15 -0
  188. package/dist/src/shared/primitives/ElevationToken.d.ts.map +1 -0
  189. package/dist/src/shared/primitives/FocusRingElement.d.ts +78 -0
  190. package/dist/src/shared/primitives/FocusRingElement.d.ts.map +1 -0
  191. package/dist/src/shared/primitives/FocusRingToken.d.ts +17 -0
  192. package/dist/src/shared/primitives/FocusRingToken.d.ts.map +1 -0
  193. package/dist/src/shared/primitives/PseudoCheckboxElement.d.ts +50 -0
  194. package/dist/src/shared/primitives/PseudoCheckboxElement.d.ts.map +1 -0
  195. package/dist/src/shared/primitives/PseudoRadioElement.d.ts +41 -0
  196. package/dist/src/shared/primitives/PseudoRadioElement.d.ts.map +1 -0
  197. package/dist/src/shared/primitives/RippleElement.d.ts +110 -0
  198. package/dist/src/shared/primitives/RippleElement.d.ts.map +1 -0
  199. package/dist/src/shared/primitives/RippleToken.d.ts +12 -0
  200. package/dist/src/shared/primitives/RippleToken.d.ts.map +1 -0
  201. package/dist/src/shared/primitives/ScrollContainerElement.d.ts +64 -0
  202. package/dist/src/shared/primitives/ScrollContainerElement.d.ts.map +1 -0
  203. package/dist/src/shared/primitives/ScrollDividers.d.ts +3 -0
  204. package/dist/src/shared/primitives/ScrollDividers.d.ts.map +1 -0
  205. package/dist/src/shared/primitives/SlideElement.d.ts +48 -0
  206. package/dist/src/shared/primitives/SlideElement.d.ts.map +1 -0
  207. package/dist/src/shared/primitives/StateLayerElement.d.ts +77 -0
  208. package/dist/src/shared/primitives/StateLayerElement.d.ts.map +1 -0
  209. package/dist/src/shared/primitives/StateLayerToken.d.ts +13 -0
  210. package/dist/src/shared/primitives/StateLayerToken.d.ts.map +1 -0
  211. package/dist/src/shared/primitives/TextOverflowElement.d.ts +39 -0
  212. package/dist/src/shared/primitives/TextOverflowElement.d.ts.map +1 -0
  213. package/dist/src/shared/primitives/index.d.ts +13 -0
  214. package/dist/src/shared/primitives/index.d.ts.map +1 -0
  215. package/dist/src/shared/tokens/ColorToken.d.ts +96 -0
  216. package/dist/src/shared/tokens/ColorToken.d.ts.map +1 -0
  217. package/dist/src/shared/tokens/DensityToken.d.ts +15 -0
  218. package/dist/src/shared/tokens/DensityToken.d.ts.map +1 -0
  219. package/dist/src/shared/tokens/DesignToken.d.ts +366 -0
  220. package/dist/src/shared/tokens/DesignToken.d.ts.map +1 -0
  221. package/dist/src/shared/tokens/ElevationToken.d.ts +16 -0
  222. package/dist/src/shared/tokens/ElevationToken.d.ts.map +1 -0
  223. package/dist/src/shared/tokens/MotionToken.d.ts +69 -0
  224. package/dist/src/shared/tokens/MotionToken.d.ts.map +1 -0
  225. package/dist/src/shared/tokens/ScrollbarToken.d.ts +10 -0
  226. package/dist/src/shared/tokens/ScrollbarToken.d.ts.map +1 -0
  227. package/dist/src/shared/tokens/ShapeToken.d.ts +79 -0
  228. package/dist/src/shared/tokens/ShapeToken.d.ts.map +1 -0
  229. package/dist/src/shared/tokens/StateToken.d.ts +10 -0
  230. package/dist/src/shared/tokens/StateToken.d.ts.map +1 -0
  231. package/dist/src/shared/tokens/TypescaleToken.d.ts +220 -0
  232. package/dist/src/shared/tokens/TypescaleToken.d.ts.map +1 -0
  233. package/dist/src/shared/tokens/index.d.ts +2 -0
  234. package/dist/src/shared/tokens/index.d.ts.map +1 -0
  235. package/dist/src/shared/utils/getTextContent.d.ts +8 -0
  236. package/dist/src/shared/utils/getTextContent.d.ts.map +1 -0
  237. package/dist/src/shared/utils/guid.d.ts +6 -0
  238. package/dist/src/shared/utils/guid.d.ts.map +1 -0
  239. package/dist/src/shared/utils/hasAssignedNodes.d.ts +7 -0
  240. package/dist/src/shared/utils/hasAssignedNodes.d.ts.map +1 -0
  241. package/dist/src/shared/utils/index.d.ts +6 -0
  242. package/dist/src/shared/utils/index.d.ts.map +1 -0
  243. package/dist/src/shared/utils/prefersReducedMotion.d.ts +6 -0
  244. package/dist/src/shared/utils/prefersReducedMotion.d.ts.map +1 -0
  245. package/dist/src/shared/utils/scrollIntoViewIfNeeded.d.ts +8 -0
  246. package/dist/src/shared/utils/scrollIntoViewIfNeeded.d.ts.map +1 -0
  247. package/eslint.config.mjs +21 -0
  248. package/package.json +87 -0
  249. package/rollup.config.js +132 -0
  250. package/src/a11y/AriaDescriber.ts +130 -0
  251. package/src/a11y/FocusTrapElement.ts +136 -0
  252. package/src/a11y/InteractivityChecker.ts +62 -0
  253. package/src/a11y/LiveAnnouncer.ts +143 -0
  254. package/src/a11y/aria-reference.ts +51 -0
  255. package/src/a11y/index.ts +8 -0
  256. package/src/a11y/keycodes/KeyCode.ts +128 -0
  257. package/src/a11y/keycodes/ModifierKeys.ts +5 -0
  258. package/src/a11y/keycodes/getKeyCode.ts +8 -0
  259. package/src/a11y/keycodes/hasModifierKey.ts +11 -0
  260. package/src/a11y/keycodes/index.ts +5 -0
  261. package/src/a11y/keycodes/isModifierAllowed.ts +12 -0
  262. package/src/a11y/list-key/FocusKeyManager.ts +25 -0
  263. package/src/a11y/list-key/ListKeyManager.ts +350 -0
  264. package/src/a11y/list-key/ListManager.ts +66 -0
  265. package/src/a11y/list-key/RadioKeyManager.ts +49 -0
  266. package/src/a11y/list-key/RovingTabIndexManager.ts +56 -0
  267. package/src/a11y/list-key/SelectionManager.ts +132 -0
  268. package/src/a11y/list-key/Typeahead.ts +131 -0
  269. package/src/a11y/list-key/index.ts +7 -0
  270. package/src/a11y/visuallyHide.ts +18 -0
  271. package/src/anchoring/AnchorOptions.ts +19 -0
  272. package/src/anchoring/AnchorPosition.ts +14 -0
  273. package/src/anchoring/index.ts +3 -0
  274. package/src/anchoring/positionAnchor.ts +53 -0
  275. package/src/bidi/Directionality.ts +85 -0
  276. package/src/bidi/index.ts +1 -0
  277. package/src/index.ts +1 -0
  278. package/src/layout/Breakpoint.ts +26 -0
  279. package/src/layout/BreakpointObserver.ts +44 -0
  280. package/src/layout/index.ts +2 -0
  281. package/src/platform/Platform.ts +67 -0
  282. package/src/platform/index.ts +1 -0
  283. package/src/shared/controllers/FocusController.ts +60 -0
  284. package/src/shared/controllers/HoverController.ts +140 -0
  285. package/src/shared/controllers/IntersectionController.ts +81 -0
  286. package/src/shared/controllers/LongPressController.ts +87 -0
  287. package/src/shared/controllers/MonitorControllerBase.ts +99 -0
  288. package/src/shared/controllers/MutationController.ts +89 -0
  289. package/src/shared/controllers/PressedController.ts +137 -0
  290. package/src/shared/controllers/ResizeController.ts +83 -0
  291. package/src/shared/controllers/ScrollController.ts +100 -0
  292. package/src/shared/controllers/index.ts +8 -0
  293. package/src/shared/decorators/debounce.ts +19 -0
  294. package/src/shared/decorators/index.ts +1 -0
  295. package/src/shared/directives/index.ts +1 -0
  296. package/src/shared/directives/safeStyleMap.ts +108 -0
  297. package/src/shared/index.ts +7 -0
  298. package/src/shared/mixins/AttachInternals.ts +48 -0
  299. package/src/shared/mixins/Checked.ts +50 -0
  300. package/src/shared/mixins/CheckedIndeterminate.ts +47 -0
  301. package/src/shared/mixins/CheckedOrSelected.ts +36 -0
  302. package/src/shared/mixins/ConstraintValidation.ts +213 -0
  303. package/src/shared/mixins/Constructor.ts +2 -0
  304. package/src/shared/mixins/Dirty.ts +71 -0
  305. package/src/shared/mixins/Disabled.ts +49 -0
  306. package/src/shared/mixins/DisabledInteractive.ts +78 -0
  307. package/src/shared/mixins/EventAttribute.ts +25 -0
  308. package/src/shared/mixins/Focusable.ts +52 -0
  309. package/src/shared/mixins/FormAssociated.ts +152 -0
  310. package/src/shared/mixins/FormSubmitter.ts +123 -0
  311. package/src/shared/mixins/HtmlFor.ts +89 -0
  312. package/src/shared/mixins/KeyboardClick.ts +46 -0
  313. package/src/shared/mixins/Labelled.ts +88 -0
  314. package/src/shared/mixins/LinkButton.ts +169 -0
  315. package/src/shared/mixins/ReadOnly.ts +48 -0
  316. package/src/shared/mixins/Required.ts +50 -0
  317. package/src/shared/mixins/RequiredConstraintValidation.ts +45 -0
  318. package/src/shared/mixins/Role.ts +134 -0
  319. package/src/shared/mixins/Selected.ts +50 -0
  320. package/src/shared/mixins/Touched.ts +71 -0
  321. package/src/shared/mixins/Vertical.ts +44 -0
  322. package/src/shared/mixins/hasKeys.ts +10 -0
  323. package/src/shared/mixins/index.ts +24 -0
  324. package/src/shared/primitives/CollapsibleElement.ts +227 -0
  325. package/src/shared/primitives/ElevationElement.ts +254 -0
  326. package/src/shared/primitives/ElevationLevel.ts +2 -0
  327. package/src/shared/primitives/ElevationToken.ts +18 -0
  328. package/src/shared/primitives/FocusRingElement.ts +199 -0
  329. package/src/shared/primitives/FocusRingToken.ts +24 -0
  330. package/src/shared/primitives/PseudoCheckboxElement.ts +116 -0
  331. package/src/shared/primitives/PseudoRadioElement.ts +83 -0
  332. package/src/shared/primitives/RippleElement.ts +289 -0
  333. package/src/shared/primitives/RippleToken.ts +15 -0
  334. package/src/shared/primitives/ScrollContainerElement.ts +151 -0
  335. package/src/shared/primitives/ScrollDividers.ts +2 -0
  336. package/src/shared/primitives/SlideElement.ts +128 -0
  337. package/src/shared/primitives/StateLayerElement.ts +191 -0
  338. package/src/shared/primitives/StateLayerToken.ts +16 -0
  339. package/src/shared/primitives/TextOverflowElement.ts +60 -0
  340. package/src/shared/primitives/index.ts +12 -0
  341. package/src/shared/tokens/ColorToken.ts +142 -0
  342. package/src/shared/tokens/DensityToken.ts +23 -0
  343. package/src/shared/tokens/DesignToken.ts +35 -0
  344. package/src/shared/tokens/ElevationToken.ts +115 -0
  345. package/src/shared/tokens/MotionToken.ts +107 -0
  346. package/src/shared/tokens/ScrollbarToken.ts +13 -0
  347. package/src/shared/tokens/ShapeToken.ts +138 -0
  348. package/src/shared/tokens/StateToken.ts +13 -0
  349. package/src/shared/tokens/TypescaleToken.ts +230 -0
  350. package/src/shared/tokens/index.ts +1 -0
  351. package/src/shared/utils/getTextContent.ts +31 -0
  352. package/src/shared/utils/guid.ts +11 -0
  353. package/src/shared/utils/hasAssignedNodes.ts +8 -0
  354. package/src/shared/utils/index.ts +5 -0
  355. package/src/shared/utils/prefersReducedMotion.ts +9 -0
  356. package/src/shared/utils/scrollIntoViewIfNeeded.ts +18 -0
  357. package/tsconfig.json +9 -0
@@ -0,0 +1,40 @@
1
+ import { ReactiveControllerHost } from "lit";
2
+ import { MonitorControllerBase, MonitorControllerOptions } from "./MonitorControllerBase";
3
+ /** The callback function invoked when the hover state of an element changes. */
4
+ export type HoverControllerCallback = (hovering: boolean, target: HTMLElement) => void;
5
+ /** Encapsulates options used to configure a `HoverController`. */
6
+ export interface HoverControllerOptions extends MonitorControllerOptions {
7
+ /** The callback invoked when the hover state of an element changes. */
8
+ callback: HoverControllerCallback;
9
+ /** The delay, in milliseconds, before reporting hover start. */
10
+ startDelay?: number;
11
+ /** The delay, in milliseconds, before reporting hover end. */
12
+ endDelay?: number;
13
+ }
14
+ /** A `ReactiveController` used to monitor the hover state of one or more elements. */
15
+ export declare class HoverController extends MonitorControllerBase {
16
+ #private;
17
+ /** The delay, in milliseconds, before reporting hover start. */
18
+ startDelay: number;
19
+ /** The delay, in milliseconds, before reporting hover end. */
20
+ endDelay: number;
21
+ /**
22
+ * Initializes a new instance of this class.
23
+ * @param {ReactiveControllerHost & HTMLElement} host The host element to which this controller will be added.
24
+ * @param {HoverControllerOptions} options Options used to configure this controller.
25
+ */
26
+ constructor(host: ReactiveControllerHost & HTMLElement, options: HoverControllerOptions);
27
+ /** Clears any hover delays for all targets. */
28
+ clearDelays(): void;
29
+ /**
30
+ * Starts observing the specified element.
31
+ * @param {HTMLElement} target The element to start observing.
32
+ */
33
+ protected _observe(target: HTMLElement): void;
34
+ /**
35
+ * Stops observing the specified element.
36
+ * @param {HTMLElement} target The element to stop observing.
37
+ */
38
+ protected _unobserve(target: HTMLElement): void;
39
+ }
40
+ //# sourceMappingURL=HoverController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HoverController.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/HoverController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,gFAAgF;AAChF,MAAM,MAAM,uBAAuB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;AAEvF,kEAAkE;AAClE,MAAM,WAAW,sBAAuB,SAAQ,wBAAwB;IACtE,uEAAuE;IACvE,QAAQ,EAAE,uBAAuB,CAAC;IAElC,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,sFAAsF;AACtF,qBAAa,eAAgB,SAAQ,qBAAqB;;IAOxD,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAC;IAEnB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;gBACS,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAAE,OAAO,EAAE,sBAAsB;IAOvF,+CAA+C;IAC/C,WAAW,IAAI,IAAI;IAMnB;;;OAGG;cACgB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAKtD;;;OAGG;cACgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CA0EzD"}
@@ -0,0 +1,40 @@
1
+ import { ReactiveControllerHost } from "lit";
2
+ import { MonitorControllerBase, MonitorControllerOptions } from "./MonitorControllerBase";
3
+ /** The callback function for a `IntersectionController`. */
4
+ export type IntersectionControllerCallback = (...args: Parameters<IntersectionObserverCallback>) => void;
5
+ /** Encapsulates options used to configure a `IntersectionController`. */
6
+ export interface IntersectionControllerOptions extends MonitorControllerOptions {
7
+ /** The callback used to process detected changes. */
8
+ callback: IntersectionControllerCallback;
9
+ /**
10
+ * By default, the `callback` is invoked without changes when a
11
+ * target is observed in order to help maintain initial state. Use
12
+ * `skipInitial` to skip this step.
13
+ */
14
+ skipInitial?: boolean;
15
+ /** The configuration object for the underlying `IntersectionObserver`. */
16
+ init?: IntersectionObserverInit;
17
+ }
18
+ /** A `ReactiveController` used to monitor changes in the intersection of a target element with an ancestor element. */
19
+ export declare class IntersectionController extends MonitorControllerBase {
20
+ #private;
21
+ /**
22
+ * Initializes a new instance of the `IntersectionController` class.
23
+ * @param {ReactiveControllerHost & HTMLElement} host The host element to which this controller will be added.
24
+ * @param {IntersectionControllerOptions} options Options used to configure this controller.
25
+ */
26
+ constructor(host: ReactiveControllerHost & HTMLElement, options: IntersectionControllerOptions);
27
+ /** @inheritdoc */
28
+ hostUpdated(): Promise<void>;
29
+ /**
30
+ * Starts observing the specified element.
31
+ * @param {HTMLElement} target The element to start observing.
32
+ */
33
+ protected _observe(target: HTMLElement): void;
34
+ /**
35
+ * Stops observing the specified element.
36
+ * @param {HTMLElement} target The element to stop observing.
37
+ */
38
+ protected _unobserve(target: HTMLElement): void;
39
+ }
40
+ //# sourceMappingURL=IntersectionController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IntersectionController.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/IntersectionController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,4DAA4D;AAC5D,MAAM,MAAM,8BAA8B,GAAG,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,4BAA4B,CAAC,KAAK,IAAI,CAAC;AAEzG,yEAAyE;AACzE,MAAM,WAAW,6BAA8B,SAAQ,wBAAwB;IAC7E,qDAAqD;IACrD,QAAQ,EAAE,8BAA8B,CAAC;IAEzC;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,wBAAwB,CAAC;CACjC;AAED,uHAAuH;AACvH,qBAAa,sBAAuB,SAAQ,qBAAqB;;IAO/D;;;;OAIG;gBACS,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAAE,OAAO,EAAE,6BAA6B;IAmB9F,kBAAkB;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3C;;;OAGG;cACgB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMtD;;;OAGG;cACgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CAGzD"}
@@ -0,0 +1,32 @@
1
+ import { ReactiveControllerHost } from "lit";
2
+ import { MonitorControllerBase, MonitorControllerOptions } from "./MonitorControllerBase";
3
+ /** The callback function invoked when a long press gesture is detected. */
4
+ export type LongPressControllerCallback = (pressed: boolean, target: HTMLElement) => void;
5
+ /** Encapsulates options used to configure a `LongPressController`. */
6
+ export interface LongPressControllerOptions extends MonitorControllerOptions {
7
+ /** The callback invoked when the pressed state of an element changes. */
8
+ callback: LongPressControllerCallback;
9
+ /** The amount of time, in milliseconds, a touch gesture must be held. */
10
+ threshold?: number;
11
+ }
12
+ /** A `ReactiveController` used to detect a long press gesture. */
13
+ export declare class LongPressController extends MonitorControllerBase {
14
+ #private;
15
+ /**
16
+ * Initializes a new instance of this class.
17
+ * @param {ReactiveControllerHost & HTMLElement} host The host element to which this controller will be added.
18
+ * @param {LongPressControllerOptions} options Options used to configure this controller.
19
+ */
20
+ constructor(host: ReactiveControllerHost & HTMLElement, options: LongPressControllerOptions);
21
+ /**
22
+ * Starts observing the specified element.
23
+ * @param {HTMLElement} target The element to start observing.
24
+ */
25
+ protected _observe(target: HTMLElement): void;
26
+ /**
27
+ * Stops observing the specified element.
28
+ * @param {HTMLElement} target The element to stop observing.
29
+ */
30
+ protected _unobserve(target: HTMLElement): void;
31
+ }
32
+ //# sourceMappingURL=LongPressController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LongPressController.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/LongPressController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,2EAA2E;AAC3E,MAAM,MAAM,2BAA2B,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;AAE1F,sEAAsE;AACtE,MAAM,WAAW,0BAA2B,SAAQ,wBAAwB;IAC1E,yEAAyE;IACzE,QAAQ,EAAE,2BAA2B,CAAC;IAEtC,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,kEAAkE;AAClE,qBAAa,mBAAoB,SAAQ,qBAAqB;;IAS5D;;;;OAIG;gBACS,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAAE,OAAO,EAAE,0BAA0B;IAM3F;;;OAGG;cACgB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMtD;;;OAGG;cACgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CAmCzD"}
@@ -0,0 +1,62 @@
1
+ import { ReactiveController, ReactiveControllerHost } from "lit";
2
+ /** Encapsulates options used to monitor the state of one or more elements. */
3
+ export interface MonitorControllerOptions {
4
+ /**
5
+ * The element to observe. In addition to configuring the target here,
6
+ * the `observe` method can be called to observe additional targets. When
7
+ * not specified, the target defaults to the `host`. If set to `null`, no
8
+ * target is automatically observed. Only the configured target will be
9
+ * re-observed if the host connects again after unobserving via disconnection.
10
+ */
11
+ target?: HTMLElement | null;
12
+ }
13
+ /**
14
+ * A base implementation for a `ReactiveController` used to monitor the state of one
15
+ * or more elements. This class must be inherited.
16
+ */
17
+ export declare abstract class MonitorControllerBase implements ReactiveController {
18
+ #private;
19
+ /**
20
+ * Initializes the `MonitorControllerBase` base class values when called by a derived class.
21
+ * @param {ReactiveControllerHost & HTMLElement} host The host element to which this controller will be added.
22
+ * @param {MonitorControllerOptions} options Options used to configure this controller.
23
+ */
24
+ constructor(host: ReactiveControllerHost & HTMLElement, options: MonitorControllerOptions);
25
+ /** The targets being observed. */
26
+ get targets(): Iterable<HTMLElement>;
27
+ /** @inheritdoc */
28
+ hostConnected(): void;
29
+ /** @inheritdoc */
30
+ hostDisconnected(): void;
31
+ /** @inheritdoc */
32
+ hostUpdate?(): void;
33
+ /** @inheritdoc */
34
+ hostUpdated?(): void;
35
+ /**
36
+ * Starts observing the specified element.
37
+ * @param {HTMLElement} target The element to start observing.
38
+ */
39
+ observe(target: HTMLElement): void;
40
+ /**
41
+ * Determines whether the specified element is being observed.
42
+ * @param {HTMLElement} target The element to test.
43
+ * @returns {boolean} Whether `target` is being observed.
44
+ */
45
+ isObserving(target: HTMLElement): boolean;
46
+ /**
47
+ * Stops observing the specified element.
48
+ * @param {HTMLElement} target The element to stop observing.
49
+ */
50
+ unobserve(target: HTMLElement): void;
51
+ /**
52
+ * When implemented by a derived class, starts observing the specified element.
53
+ * @param {HTMLElement} target The element to start observing.
54
+ */
55
+ protected abstract _observe(target: HTMLElement): void;
56
+ /**
57
+ * When implemented by a derived class, stops observing the specified element.
58
+ * @param {HTMLElement} target The element to stop observing.
59
+ */
60
+ protected abstract _unobserve(target: HTMLElement): void;
61
+ }
62
+ //# sourceMappingURL=MonitorControllerBase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MonitorControllerBase.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/MonitorControllerBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAEjE,8EAA8E;AAC9E,MAAM,WAAW,wBAAwB;IACvC;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CAC7B;AAED;;;GAGG;AACH,8BAAsB,qBAAsB,YAAW,kBAAkB;;IAKvE;;;;OAIG;gBACS,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAAE,OAAO,EAAE,wBAAwB;IAMzF,kCAAkC;IAClC,IAAI,OAAO,IAAI,QAAQ,CAAC,WAAW,CAAC,CAEnC;IAED,kBAAkB;IAClB,aAAa,IAAI,IAAI;IAOrB,kBAAkB;IAClB,gBAAgB,IAAI,IAAI;IAKxB,kBAAkB;IAClB,UAAU,CAAC,IAAI,IAAI;IAEnB,kBAAkB;IAClB,WAAW,CAAC,IAAI,IAAI;IAEpB;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMlC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO;IAIzC;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAKpC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAEtD;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CACzD"}
@@ -0,0 +1,37 @@
1
+ import { ReactiveControllerHost } from "lit";
2
+ import { MonitorControllerBase, MonitorControllerOptions } from "./MonitorControllerBase";
3
+ /** Encapsulates options used to configure a `MutationController`. */
4
+ export interface MutationControllerOptions extends MonitorControllerOptions {
5
+ /** The callback used to process detected changes. */
6
+ callback: MutationCallback;
7
+ /**
8
+ * By default, the `callback` is invoked without changes when a
9
+ * target is observed in order to help maintain initial state. Use
10
+ * `skipInitial` to skip this step.
11
+ */
12
+ skipInitial?: boolean;
13
+ /** The configuration object for the underlying `MutationObserver`. */
14
+ config?: MutationObserverInit;
15
+ }
16
+ /**
17
+ * A `ReactiveController` that integrates a `MutationObserver` with an element's reactive update lifecycle
18
+ * to detect arbitrary changes to DOM, including nodes being added or removed and attributes changing.
19
+ */
20
+ export declare class MutationController extends MonitorControllerBase {
21
+ #private;
22
+ /**
23
+ * Initializes a new instance of the `MutationController` class.
24
+ * @param {ReactiveControllerHost & HTMLElement} host The host element to which this controller will be added.
25
+ * @param {MutationControllerOptions} options Options used to configure this controller.
26
+ */
27
+ constructor(host: ReactiveControllerHost & HTMLElement, options: MutationControllerOptions);
28
+ /** @inheritdoc */
29
+ hostUpdated(): Promise<void>;
30
+ /** @inheritdoc */
31
+ hostDisconnected(): void;
32
+ /** @inheritdoc */
33
+ protected _observe(target: HTMLElement): void;
34
+ /** @inheritdoc */
35
+ protected _unobserve(): void;
36
+ }
37
+ //# sourceMappingURL=MutationController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MutationController.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/MutationController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,qEAAqE;AACrE,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;IACzE,qDAAqD;IACrD,QAAQ,EAAE,gBAAgB,CAAC;IAE3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,sEAAsE;IACtE,MAAM,CAAC,EAAE,oBAAoB,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,qBAAqB;;IAQ3D;;;;OAIG;gBACS,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAAE,OAAO,EAAE,yBAAyB;IAoB1F,kBAAkB;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAU3C,kBAAkB;IACT,gBAAgB,IAAI,IAAI;IAKjC,kBAAkB;cACC,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMtD,kBAAkB;cACC,UAAU,IAAI,IAAI;CAMtC"}
@@ -0,0 +1,45 @@
1
+ import { ReactiveControllerHost } from "lit";
2
+ import { MonitorControllerBase, MonitorControllerOptions } from "./MonitorControllerBase";
3
+ /** The callback function invoked when the pressed state of an element changes. */
4
+ export type PressedControllerCallback = (pressed: boolean, point: {
5
+ x: number;
6
+ y: number;
7
+ }, target: HTMLElement) => void;
8
+ /** Encapsulates options used to configure a `PressedController`. */
9
+ export interface PressedControllerOptions extends MonitorControllerOptions {
10
+ /** The callback invoked when the pressed state of an element changes. */
11
+ callback: PressedControllerCallback;
12
+ /** Whether events are captured. */
13
+ capture?: boolean;
14
+ /**
15
+ * A function used to determine whether a given keyboard key toggles the pressed state.
16
+ * @param key The `KeyboardEvent.key` to test.
17
+ * @returns Whether `key` toggles the pressed state.
18
+ */
19
+ isPressedKey?: (key: string) => boolean;
20
+ }
21
+ /** A `ReactiveController` used to monitor the pressed state of one or more elements. */
22
+ export declare class PressedController extends MonitorControllerBase {
23
+ #private;
24
+ /**
25
+ * Initializes a new instance of this class.
26
+ * @param {ReactiveControllerHost & HTMLElement} host The host element to which this controller will be added.
27
+ * @param {PressedControllerOptions} options Options used to configure this controller.
28
+ */
29
+ constructor(host: ReactiveControllerHost & HTMLElement, options: PressedControllerOptions);
30
+ /** @inheritdoc */
31
+ hostConnected(): void;
32
+ /** @inheritdoc */
33
+ hostDisconnected(): void;
34
+ /**
35
+ * Starts observing the specified element.
36
+ * @param {HTMLElement} target The element to start observing.
37
+ */
38
+ protected _observe(target: HTMLElement): void;
39
+ /**
40
+ * Stops observing the specified element.
41
+ * @param {HTMLElement} target The element to stop observing.
42
+ */
43
+ protected _unobserve(target: HTMLElement): void;
44
+ }
45
+ //# sourceMappingURL=PressedController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PressedController.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/PressedController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,kFAAkF;AAClF,MAAM,MAAM,yBAAyB,GAAG,CACtC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAC/B,MAAM,EAAE,WAAW,KAChB,IAAI,CAAC;AAEV,oEAAoE;AACpE,MAAM,WAAW,wBAAyB,SAAQ,wBAAwB;IACxE,yEAAyE;IACzE,QAAQ,EAAE,yBAAyB,CAAC;IAEpC,mCAAmC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACzC;AAED,wFAAwF;AACxF,qBAAa,iBAAkB,SAAQ,qBAAqB;;IAW1D;;;;OAIG;gBACS,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAAE,OAAO,EAAE,wBAAwB;IAQzF,kBAAkB;IACT,aAAa,IAAI,IAAI;IAK9B,kBAAkB;IACT,gBAAgB,IAAI,IAAI;IAMjC;;;OAGG;cACgB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAQtD;;;OAGG;cACgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CAuDzD"}
@@ -0,0 +1,40 @@
1
+ import { ReactiveControllerHost } from "lit";
2
+ import { MonitorControllerBase, MonitorControllerOptions } from "./MonitorControllerBase";
3
+ /** The callback function for a `ResizeController`. */
4
+ export type ResizeControllerCallback = (...args: Parameters<ResizeObserverCallback>) => void;
5
+ /** Encapsulates options used to configure a `ResizeController`. */
6
+ export interface ResizeControllerOptions extends MonitorControllerOptions {
7
+ /** The callback used to process detected changes. */
8
+ callback: ResizeControllerCallback;
9
+ /**
10
+ * By default, the `callback` is invoked without changes when a
11
+ * target is observed in order to help maintain initial state. Use
12
+ * `skipInitial` to skip this step.
13
+ */
14
+ skipInitial?: boolean;
15
+ /** The configuration object for the underlying `ResizeObserver`. */
16
+ config?: ResizeObserverOptions;
17
+ }
18
+ /** A `ReactiveController` used to monitor when an element is resized. */
19
+ export declare class ResizeController extends MonitorControllerBase {
20
+ #private;
21
+ /**
22
+ * Initializes a new instance of the `ResizeController` class.
23
+ * @param {ReactiveControllerHost & HTMLElement} host The host element to which this controller will be added.
24
+ * @param {ResizeControllerOptions} options Options used to configure this controller.
25
+ */
26
+ constructor(host: ReactiveControllerHost & HTMLElement, options: ResizeControllerOptions);
27
+ /** @inheritdoc */
28
+ hostUpdated(): Promise<void>;
29
+ /**
30
+ * Starts observing the specified element.
31
+ * @param {HTMLElement} target The element to start observing.
32
+ */
33
+ protected _observe(target: HTMLElement): void;
34
+ /**
35
+ * Stops observing the specified element.
36
+ * @param {HTMLElement} target The element to stop observing.
37
+ */
38
+ protected _unobserve(target: HTMLElement): void;
39
+ }
40
+ //# sourceMappingURL=ResizeController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResizeController.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/ResizeController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,sDAAsD;AACtD,MAAM,MAAM,wBAAwB,GAAG,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,sBAAsB,CAAC,KAAK,IAAI,CAAC;AAE7F,mEAAmE;AACnE,MAAM,WAAW,uBAAwB,SAAQ,wBAAwB;IACvE,qDAAqD;IACrD,QAAQ,EAAE,wBAAwB,CAAC;IAEnC;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,oEAAoE;IACpE,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC;AAED,yEAAyE;AACzE,qBAAa,gBAAiB,SAAQ,qBAAqB;;IAQzD;;;;OAIG;gBACS,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAAE,OAAO,EAAE,uBAAuB;IAoBxF,kBAAkB;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3C;;;OAGG;cACgB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAMtD;;;OAGG;cACgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CAGzD"}
@@ -0,0 +1,34 @@
1
+ import { ReactiveControllerHost } from "lit";
2
+ import { MonitorControllerBase, MonitorControllerOptions } from "./MonitorControllerBase";
3
+ /** The callback function invoked when a scrollable ancestor is scrolled. */
4
+ export type ScrollControllerCallback = (target: Element) => void;
5
+ /** Encapsulates options used to configure a `ScrollController`. */
6
+ export interface ScrollControllerOptions extends MonitorControllerOptions {
7
+ /** The callback invoked a scrollable ancestor is scrolled. */
8
+ callback: ScrollControllerCallback;
9
+ /** Whether to debounce scroll events. */
10
+ debounce?: boolean;
11
+ }
12
+ /** A `ReactiveController` used to monitor when a scroll event is emitted from a scrollable ancestor. */
13
+ export declare class ScrollController extends MonitorControllerBase {
14
+ #private;
15
+ /**
16
+ * Initializes a new instance of the `ScrollController` class.
17
+ * @param {ReactiveControllerHost & HTMLElement} host The host element to which this controller will be added.
18
+ * @param {ScrollControllerOptions} options Options used to configure this controller.
19
+ */
20
+ constructor(host: ReactiveControllerHost & HTMLElement, options: ScrollControllerOptions);
21
+ /**
22
+ * Returns the scrollable ancestors for a target element currently being observed by this controller.
23
+ * @param target The element whose scroll containers are currently being observed.
24
+ * @returns {Element[] | undefined} The scrollable ancestors, or `undefined` if `target` is not being observed.
25
+ */
26
+ getScrollContainers(target: HTMLElement): Element[] | undefined;
27
+ /** @inheritdoc */
28
+ protected _observe(target: HTMLElement): void;
29
+ /** @inheritdoc */
30
+ protected _unobserve(target: HTMLElement): void;
31
+ /** @private */
32
+ private _debounceCallback;
33
+ }
34
+ //# sourceMappingURL=ScrollController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScrollController.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/ScrollController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,KAAK,CAAC;AAE7C,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAG1F,4EAA4E;AAC5E,MAAM,MAAM,wBAAwB,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;AAEjE,mEAAmE;AACnE,MAAM,WAAW,uBAAwB,SAAQ,wBAAwB;IACvE,8DAA8D;IAC9D,QAAQ,EAAE,wBAAwB,CAAC;IAEnC,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wGAAwG;AACxG,qBAAa,gBAAiB,SAAQ,qBAAqB;;IAMzD;;;;OAIG;gBACS,IAAI,EAAE,sBAAsB,GAAG,WAAW,EAAE,OAAO,EAAE,uBAAuB;IAMxF;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,EAAE,GAAG,SAAS;IAI/D,kBAAkB;cACC,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAYtD,kBAAkB;cACC,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAoCxD,eAAe;IAEf,OAAO,CAAC,iBAAiB;CAG1B"}
@@ -0,0 +1,9 @@
1
+ export * from "./FocusController";
2
+ export * from "./HoverController";
3
+ export * from "./IntersectionController";
4
+ export * from "./LongPressController";
5
+ export * from "./MutationController";
6
+ export * from "./PressedController";
7
+ export * from "./ResizeController";
8
+ export * from "./ScrollController";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/controllers/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * A decorator that runs a function once after a given "cooldown" period.
3
+ * @param {number} timeout The timeout, in milliseconds, after which the function is invoked.
4
+ * @returns {MethodDecorator} The decorator that runs a function once after a given "cooldown" period.
5
+ */
6
+ export declare function debounce(timeout: number): MethodDecorator;
7
+ //# sourceMappingURL=debounce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../../../src/shared/decorators/debounce.ts"],"names":[],"mappings":"AACA;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAYzD"}
@@ -0,0 +1,2 @@
1
+ export * from "./debounce";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./safeStyleMap";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/directives/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { AttributePart, Directive, DirectiveParameters, PartInfo } from "lit/directive.js";
2
+ /**
3
+ * A key-value set of CSS properties and values.
4
+ *
5
+ * The key should be either a valid CSS property name string, like
6
+ * `'background-color'`, or a valid JavaScript camel case property name
7
+ * for CSSStyleDeclaration like `backgroundColor`.
8
+ */
9
+ export interface StyleInfo {
10
+ [name: string]: string | number | undefined | null;
11
+ }
12
+ declare class SafeStyleMapDirective extends Directive {
13
+ private _previousStyleProperties?;
14
+ constructor(partInfo: PartInfo);
15
+ render(_: Readonly<StyleInfo>): symbol;
16
+ update(part: AttributePart, [styleInfo]: DirectiveParameters<this>): symbol;
17
+ }
18
+ /**
19
+ * A directive that applies CSS properties to an element.
20
+ *
21
+ * `safeStyleMap` can only be used in the `style` attribute and must be the only
22
+ * expression in the attribute. It takes the property names in the
23
+ * {@link StyleInfo styleInfo} object and adds the properties to the inline
24
+ * style of the element.
25
+ *
26
+ * Property names with dashes (`-`) are assumed to be valid CSS
27
+ * property names and set on the element's style object using `setProperty()`.
28
+ * Names without dashes are assumed to be camelCased JavaScript property names
29
+ * and set on the element's style object using property assignment, allowing the
30
+ * style object to translate JavaScript-style names to CSS property names.
31
+ *
32
+ * For example `safeStyleMap({backgroundColor: 'red', 'border-top': '5px', '--size':
33
+ * '0'})` sets the `background-color`, `border-top` and `--size` properties.
34
+ *
35
+ * @param styleInfo
36
+ * @see {@link https://lit.dev/docs/templates/directives/#stylemap styleMap code samples on Lit.dev}
37
+ */
38
+ export declare const safeStyleMap: (_: Readonly<StyleInfo>) => import("lit-html/directive.js").DirectiveResult<typeof SafeStyleMapDirective>;
39
+ /**
40
+ * The type of the class that powers this directive. Necessary for naming the
41
+ * directive's return type.
42
+ */
43
+ export type { SafeStyleMapDirective };
44
+ //# sourceMappingURL=safeStyleMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeStyleMap.d.ts","sourceRoot":"","sources":["../../../../src/shared/directives/safeStyleMap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAa,SAAS,EAAE,mBAAmB,EAAE,QAAQ,EAAY,MAAM,kBAAkB,CAAC;AAEhH;;;;;;GAMG;AACH,MAAM,WAAW,SAAS;IACxB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;CACpD;AAQD,cAAM,qBAAsB,SAAQ,SAAS;IAC3C,OAAO,CAAC,wBAAwB,CAAC,CAAc;gBAEnC,QAAQ,EAAE,QAAQ;IAW9B,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;IAIpB,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC;CAyC5E;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,YAAY,2GAAmC,CAAC;AAE7D;;;GAGG;AACH,YAAY,EAAE,qBAAqB,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ export * from "./controllers";
2
+ export * from "./decorators";
3
+ export * from "./directives";
4
+ export * from "./mixins";
5
+ export * from "./primitives";
6
+ export * from "./tokens";
7
+ export * from "./utils";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { LitElement } from "lit";
2
+ import { Constructor } from "./Constructor";
3
+ /** A symbol through which to access the `ElementInternals` attached to an element. */
4
+ export declare const internals: unique symbol;
5
+ /** Defines functionality for an element attached to `ElementInternals`. */
6
+ export interface AttachInternalsMixin {
7
+ /** The `ElementInternals` attached to the element. */
8
+ readonly [internals]: ElementInternals;
9
+ }
10
+ /**
11
+ * Determines whether a value is an `AttachInternalsMixin`.
12
+ * @param {unknown} value The value to test.
13
+ * @returns Whether `value` is an `AttachInternalsMixin`.
14
+ */
15
+ export declare function isAttachInternalsMixin(value: unknown): value is AttachInternalsMixin;
16
+ /**
17
+ * Mixin to augment an element with behavior that attaches to `ElementInternals`.
18
+ * @template T The type of the base class.
19
+ * @param {T} base The base class.
20
+ * @param {boolean | undefined} formAssociated Whether the element is "Form Associated".
21
+ * @returns {Constructor<AttachInternalsMixin> & T} A constructor that implements `AttachInternalsMixin`.
22
+ */
23
+ export declare function AttachInternals<T extends Constructor<LitElement>>(base: T, formAssociated?: boolean): Constructor<AttachInternalsMixin> & T;
24
+ //# sourceMappingURL=AttachInternals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttachInternals.d.ts","sourceRoot":"","sources":["../../../../src/shared/mixins/AttachInternals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,sFAAsF;AACtF,eAAO,MAAM,SAAS,eAAsB,CAAC;AAE7C,2EAA2E;AAC3E,MAAM,WAAW,oBAAoB;IACnC,sDAAsD;IACtD,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC;CACxC;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,oBAAoB,CAEpF;AAID;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,WAAW,CAAC,UAAU,CAAC,EAC/D,IAAI,EAAE,CAAC,EACP,cAAc,CAAC,EAAE,OAAO,GACvB,WAAW,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAYvC"}
@@ -0,0 +1,24 @@
1
+ import { LitElement } from "lit";
2
+ import { Constructor } from "./Constructor";
3
+ /** Defines functionality for an element which supports a checked state. */
4
+ export interface CheckedMixin {
5
+ /**
6
+ * Whether the element is checked.
7
+ * @default false
8
+ */
9
+ checked: boolean;
10
+ }
11
+ /**
12
+ * Determines whether a value is a `CheckedMixin`.
13
+ * @param {unknown} value The value to test.
14
+ * @returns Whether `value` is a `CheckedMixin`.
15
+ */
16
+ export declare function isCheckedMixin(value: unknown): value is CheckedMixin;
17
+ /**
18
+ * Mixin to augment an element with behavior that supports a checked state.
19
+ * @template T The type of the base class.
20
+ * @param {T} base The base class.
21
+ * @returns {Constructor<CheckedMixin> & T} A constructor that implements `CheckedMixin`.
22
+ */
23
+ export declare function Checked<T extends Constructor<LitElement>>(base: T): Constructor<CheckedMixin> & T;
24
+ //# sourceMappingURL=Checked.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checked.d.ts","sourceRoot":"","sources":["../../../../src/shared/mixins/Checked.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkB,MAAM,KAAK,CAAC;AAGjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,2EAA2E;AAC3E,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAEpE;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,CAmBjG"}
@@ -0,0 +1,25 @@
1
+ import { LitElement } from "lit";
2
+ import { CheckedMixin } from "./Checked";
3
+ import { Constructor } from "./Constructor";
4
+ /** Defines functionality for an element which supports a mixed checked state. */
5
+ export interface CheckedIndeterminateMixin extends CheckedMixin {
6
+ /**
7
+ * Whether the element's checked state is indeterminate.
8
+ * @default false
9
+ */
10
+ indeterminate: boolean;
11
+ }
12
+ /**
13
+ * Determines whether a value is a `CheckedIndeterminateMixin`.
14
+ * @param {unknown} value The value to test.
15
+ * @returns Whether `value` is a `CheckedIndeterminateMixin`.
16
+ */
17
+ export declare function isCheckedIndeterminateMixin(value: unknown): value is CheckedIndeterminateMixin;
18
+ /**
19
+ * Mixin to augment an element with behavior that supports a mixed checked state.
20
+ * @template T The type of the base class.
21
+ * @param {T} base The base class.
22
+ * @returns {Constructor<CheckedIndeterminateMixin> & T} A constructor that implements `CheckedIndeterminateMixin`.
23
+ */
24
+ export declare function CheckedIndeterminate<T extends Constructor<LitElement>>(base: T): Constructor<CheckedIndeterminateMixin> & T;
25
+ //# sourceMappingURL=CheckedIndeterminate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckedIndeterminate.d.ts","sourceRoot":"","sources":["../../../../src/shared/mixins/CheckedIndeterminate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkB,MAAM,KAAK,CAAC;AAGjD,OAAO,EAAW,YAAY,EAAkB,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,iFAAiF;AACjF,MAAM,WAAW,yBAA0B,SAAQ,YAAY;IAC7D;;;OAGG;IACH,aAAa,EAAE,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,yBAAyB,CAE9F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,WAAW,CAAC,UAAU,CAAC,EACpE,IAAI,EAAE,CAAC,GACN,WAAW,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAa5C"}
@@ -0,0 +1,23 @@
1
+ import { CheckedMixin } from "./Checked";
2
+ import { SelectedMixin } from "./Selected";
3
+ /** Defines functionality for an element which supports either a checked or selected state. */
4
+ export type CheckedOrSelectedMixin = CheckedMixin | SelectedMixin;
5
+ /**
6
+ * Determines whether a value is a `CheckedOrSelectedMixin`.
7
+ * @param {unknown} value The value to test.
8
+ * @returns Whether `value` is a `CheckedOrSelectedMixin`.
9
+ */
10
+ export declare function isCheckedOrSelectedMixin(value: unknown): value is CheckedOrSelectedMixin;
11
+ /**
12
+ * Determines whether the state of an element is checked or selected.
13
+ * @param {CheckedOrSelectedMixin} element The element to test.
14
+ * @return {boolean} Whether `element` is checked or selected.
15
+ */
16
+ export declare function isCheckedOrSelected(element: CheckedOrSelectedMixin): boolean;
17
+ /**
18
+ * Sets the checked or selected state of an element.
19
+ * @param {CheckedOrSelectedMixin} element The element for which to set the checked or selected state.
20
+ * @param {boolean} checkedOrSelected The checked or selected state.
21
+ */
22
+ export declare function checkOrSelect(element: CheckedOrSelectedMixin, checkedOrSelected: boolean): void;
23
+ //# sourceMappingURL=CheckedOrSelected.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckedOrSelected.d.ts","sourceRoot":"","sources":["../../../../src/shared/mixins/CheckedOrSelected.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAkB,MAAM,WAAW,CAAC;AACzD,OAAO,EAAmB,aAAa,EAAE,MAAM,YAAY,CAAC;AAE5D,8FAA8F;AAC9F,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,aAAa,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,sBAAsB,CAExF;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAE5E;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,OAAO,GAAG,IAAI,CAM/F"}