@lumx/core 4.17.1-alpha.1 → 4.17.1-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (594) hide show
  1. package/README.md +19 -0
  2. package/_internal/_virtual/_rolldown/runtime.js +13 -0
  3. package/{js → _internal/js}/constants/browser/index.d.ts +6 -3
  4. package/_internal/js/constants/browser/index.js +15 -0
  5. package/_internal/js/constants/className/index.d.ts +7 -0
  6. package/_internal/js/constants/className/index.js +7 -0
  7. package/{js/constants/components/index.js → _internal/js/constants/components/index.d.ts} +13 -12
  8. package/_internal/js/constants/components/index.js +27 -0
  9. package/_internal/js/constants/enums/index.d.ts +207 -0
  10. package/_internal/js/constants/enums/index.js +165 -0
  11. package/{js/constants/keycodes/index.js → _internal/js/constants/keycodes/index.d.ts} +12 -11
  12. package/_internal/js/constants/keycodes/index.js +39 -0
  13. package/_internal/js/types/AriaAttributes.d.ts +32 -0
  14. package/_internal/js/types/Booleanish.d.ts +4 -0
  15. package/_internal/js/types/Callback.d.ts +7 -0
  16. package/_internal/js/types/CommonRef.d.ts +4 -0
  17. package/_internal/js/types/Direction.d.ts +4 -0
  18. package/_internal/js/types/Falsy.d.ts +8 -0
  19. package/_internal/js/types/GenericProps.d.ts +14 -0
  20. package/_internal/js/types/HasAriaDisabled.d.ts +9 -0
  21. package/_internal/js/types/HasAriaLabelOrLabelledBy.d.ts +19 -0
  22. package/_internal/js/types/HasChecked.d.ts +9 -0
  23. package/_internal/js/types/HasClassName.d.ts +9 -0
  24. package/_internal/js/types/HasCloseMode.d.ts +10 -0
  25. package/_internal/js/types/HasDisabled.d.ts +9 -0
  26. package/_internal/js/types/HasPolymorphicAs.d.ts +12 -0
  27. package/_internal/js/types/HasRequiredLinkHref.d.ts +6 -0
  28. package/_internal/js/types/HasTheme.d.ts +11 -0
  29. package/_internal/js/types/HeadingElement.d.ts +5 -0
  30. package/_internal/js/types/JSXElement.d.ts +13 -0
  31. package/_internal/js/types/KebabCase.d.ts +5 -0
  32. package/_internal/js/types/LumxClassName.d.ts +7 -0
  33. package/{js → _internal/js}/types/NamedProps.d.ts +4 -3
  34. package/{js → _internal/js}/types/NestedComponents.d.ts +5 -2
  35. package/_internal/js/types/ObjectValues.d.ts +8 -0
  36. package/{js → _internal/js}/types/PartialBy.d.ts +5 -2
  37. package/_internal/js/types/Point.d.ts +10 -0
  38. package/_internal/js/types/Predicate.d.ts +5 -0
  39. package/_internal/js/types/RectSize.d.ts +10 -0
  40. package/_internal/js/types/Selector.d.ts +11 -0
  41. package/_internal/js/types/Spacing.d.ts +4 -0
  42. package/_internal/js/types/TextElement.d.ts +7 -0
  43. package/_internal/js/types/ValueOf.d.ts +5 -0
  44. package/_internal/js/types/jsx/PropsToOverride.d.ts +5 -0
  45. package/_internal/js/utils/_internal/color/resolveColorWithVariants.js +9 -0
  46. package/{js → _internal/js}/utils/classNames/action-area/index.d.ts +5 -4
  47. package/_internal/js/utils/classNames/action-area/index.js +22 -0
  48. package/_internal/js/utils/classNames/bem/block.d.ts +1 -0
  49. package/_internal/js/utils/classNames/bem/block.js +16 -0
  50. package/_internal/js/utils/classNames/bem/element.d.ts +1 -0
  51. package/_internal/js/utils/classNames/bem/element.js +7 -0
  52. package/_internal/js/utils/classNames/bem/index.d.ts +18 -0
  53. package/_internal/js/utils/classNames/bem/index.js +22 -0
  54. package/_internal/js/utils/classNames/bem/modifier.js +19 -0
  55. package/_internal/js/utils/classNames/bem/types.d.ts +15 -0
  56. package/{js → _internal/js}/utils/classNames/color/index.d.ts +8 -4
  57. package/_internal/js/utils/classNames/color/index.js +50 -0
  58. package/{js → _internal/js}/utils/classNames/spacing/index.d.ts +23 -18
  59. package/_internal/js/utils/classNames/spacing/index.js +75 -0
  60. package/_internal/js/utils/classNames/typography/index.d.ts +10 -0
  61. package/_internal/js/utils/classNames/typography/index.js +10 -0
  62. package/_internal/js/utils/classNames/visually-hidden/index.d.ts +8 -0
  63. package/_internal/js/utils/classNames/visually-hidden/index.js +9 -0
  64. package/{js → _internal/js}/utils/events/keyboard.d.ts +7 -5
  65. package/_internal/js/utils/events/keyboard.js +39 -0
  66. package/{js → _internal/js}/utils/events/swipe.d.ts +4 -1
  67. package/_internal/js/utils/events/swipe.js +58 -0
  68. package/_internal/js/utils/selectors/getWithSelector.d.ts +7 -0
  69. package/_internal/js/utils/selectors/getWithSelector.js +9 -0
  70. package/_internal/js/utils/selectors/groupBySelector.d.ts +10 -0
  71. package/_internal/js/utils/selectors/groupBySelector.js +21 -0
  72. package/js/constants/index.d.ts +6 -5
  73. package/js/constants/index.js +6 -5
  74. package/js/types/index.d.ts +31 -30
  75. package/js/types/index.js +0 -1
  76. package/js/utils/classNames/index.d.ts +14 -7
  77. package/js/utils/classNames/index.js +27 -7
  78. package/js/utils/disabledState/index.d.ts +17 -14
  79. package/js/utils/disabledState/index.js +9 -8
  80. package/js/utils/index.d.ts +6 -3
  81. package/js/utils/index.js +6 -6
  82. package/js/utils/selectors/index.d.ts +3 -2
  83. package/js/utils/selectors/index.js +3 -2
  84. package/package.json +6 -12
  85. package/_internal/DPnPEC08.js +0 -9
  86. package/js/components/AlertDialog/Stories.d.ts +0 -115
  87. package/js/components/AlertDialog/Tests.d.ts +0 -11
  88. package/js/components/AlertDialog/index.d.ts +0 -91
  89. package/js/components/Avatar/Stories.d.ts +0 -52
  90. package/js/components/Avatar/Tests.d.ts +0 -11
  91. package/js/components/Avatar/index.d.ts +0 -50
  92. package/js/components/Badge/BadgeWrapper.d.ts +0 -13
  93. package/js/components/Badge/BadgeWrapperStories.d.ts +0 -29
  94. package/js/components/Badge/BadgeWrapperTests.d.ts +0 -9
  95. package/js/components/Badge/Stories.d.ts +0 -46
  96. package/js/components/Badge/Tests.d.ts +0 -12
  97. package/js/components/Badge/index.d.ts +0 -37
  98. package/js/components/Button/Button.d.ts +0 -48
  99. package/js/components/Button/ButtonGroup.d.ts +0 -36
  100. package/js/components/Button/ButtonGroupStories.d.ts +0 -33
  101. package/js/components/Button/ButtonRoot.d.ts +0 -55
  102. package/js/components/Button/ButtonRootTests.d.ts +0 -12
  103. package/js/components/Button/IconButton.d.ts +0 -45
  104. package/js/components/Button/IconButtonStories.d.ts +0 -210
  105. package/js/components/Button/IconButtonTests.d.ts +0 -15
  106. package/js/components/Button/Stories.d.ts +0 -302
  107. package/js/components/Button/Tests.d.ts +0 -15
  108. package/js/components/Checkbox/Stories.d.ts +0 -89
  109. package/js/components/Checkbox/Tests.d.ts +0 -15
  110. package/js/components/Checkbox/index.d.ts +0 -49
  111. package/js/components/Chip/ChipGroup.d.ts +0 -35
  112. package/js/components/Chip/ChipGroupStories.d.ts +0 -17
  113. package/js/components/Chip/ChipGroupTests.d.ts +0 -11
  114. package/js/components/Chip/SelectionChipGroup.d.ts +0 -56
  115. package/js/components/Chip/SelectionChipGroupStories.d.ts +0 -54
  116. package/js/components/Chip/SelectionChipGroupTests.d.ts +0 -23
  117. package/js/components/Chip/Stories.d.ts +0 -127
  118. package/js/components/Chip/Tests.d.ts +0 -11
  119. package/js/components/Chip/index.d.ts +0 -81
  120. package/js/components/Chip/setupSelectionChipGroupEvents.d.ts +0 -28
  121. package/js/components/Combobox/ComboboxButton.d.ts +0 -57
  122. package/js/components/Combobox/ComboboxInput.d.ts +0 -57
  123. package/js/components/Combobox/ComboboxList.d.ts +0 -47
  124. package/js/components/Combobox/ComboboxOption.d.ts +0 -74
  125. package/js/components/Combobox/ComboboxOptionAction.d.ts +0 -35
  126. package/js/components/Combobox/ComboboxOptionMoreInfo.d.ts +0 -54
  127. package/js/components/Combobox/ComboboxOptionSkeleton.d.ts +0 -47
  128. package/js/components/Combobox/ComboboxOptionTests.d.ts +0 -24
  129. package/js/components/Combobox/ComboboxPopover.d.ts +0 -41
  130. package/js/components/Combobox/ComboboxSection.d.ts +0 -58
  131. package/js/components/Combobox/ComboboxState.d.ts +0 -99
  132. package/js/components/Combobox/Stories.d.ts +0 -167
  133. package/js/components/Combobox/TestStories.d.ts +0 -186
  134. package/js/components/Combobox/Tests.d.ts +0 -169
  135. package/js/components/Combobox/constants.d.ts +0 -2
  136. package/js/components/Combobox/index.d.ts +0 -25
  137. package/js/components/Combobox/setupCombobox.d.ts +0 -24
  138. package/js/components/Combobox/setupComboboxButton.d.ts +0 -16
  139. package/js/components/Combobox/setupComboboxInput.d.ts +0 -24
  140. package/js/components/Combobox/setupListbox.d.ts +0 -23
  141. package/js/components/Combobox/subscribeComboboxState.d.ts +0 -23
  142. package/js/components/Combobox/types.d.ts +0 -166
  143. package/js/components/Combobox/utils.d.ts +0 -30
  144. package/js/components/Dialog/Stories.d.ts +0 -97
  145. package/js/components/Dialog/Tests.d.ts +0 -12
  146. package/js/components/Dialog/index.d.ts +0 -99
  147. package/js/components/Divider/Stories.d.ts +0 -21
  148. package/js/components/Divider/Tests.d.ts +0 -12
  149. package/js/components/Divider/index.d.ts +0 -27
  150. package/js/components/DragHandle/Stories.d.ts +0 -18
  151. package/js/components/DragHandle/Tests.d.ts +0 -12
  152. package/js/components/DragHandle/index.d.ts +0 -27
  153. package/js/components/ExpansionPanel/Stories.d.ts +0 -67
  154. package/js/components/ExpansionPanel/Tests.d.ts +0 -12
  155. package/js/components/ExpansionPanel/index.d.ts +0 -70
  156. package/js/components/Flag/Stories.d.ts +0 -120
  157. package/js/components/Flag/Tests.d.ts +0 -14
  158. package/js/components/Flag/index.d.ts +0 -34
  159. package/js/components/FlexBox/Stories.d.ts +0 -116
  160. package/js/components/FlexBox/Tests.d.ts +0 -13
  161. package/js/components/FlexBox/constants.d.ts +0 -4
  162. package/js/components/FlexBox/index.d.ts +0 -54
  163. package/js/components/FlexBox/types.d.ts +0 -7
  164. package/js/components/GenericBlock/Stories.d.ts +0 -74
  165. package/js/components/GenericBlock/Tests.d.ts +0 -13
  166. package/js/components/GenericBlock/constants.d.ts +0 -19
  167. package/js/components/GenericBlock/index.d.ts +0 -85
  168. package/js/components/GridColumn/GridColumn.d.ts +0 -48
  169. package/js/components/GridColumn/GridColumnStories.d.ts +0 -45
  170. package/js/components/GridColumn/GridColumnTests.d.ts +0 -12
  171. package/js/components/GridColumn/index.d.ts +0 -2
  172. package/js/components/Heading/Stories.d.ts +0 -90
  173. package/js/components/Heading/Tests.d.ts +0 -11
  174. package/js/components/Heading/constants.d.ts +0 -21
  175. package/js/components/Heading/index.d.ts +0 -44
  176. package/js/components/Heading/utils.d.ts +0 -8
  177. package/js/components/Icon/Stories.d.ts +0 -156
  178. package/js/components/Icon/Tests.d.ts +0 -14
  179. package/js/components/Icon/constants.d.ts +0 -1
  180. package/js/components/Icon/index.d.ts +0 -41
  181. package/js/components/ImageBlock/ImageCaption.d.ts +0 -36
  182. package/js/components/ImageBlock/Stories.d.ts +0 -187
  183. package/js/components/ImageBlock/Tests.d.ts +0 -11
  184. package/js/components/ImageBlock/index.d.ts +0 -63
  185. package/js/components/InlineList/Stories.d.ts +0 -64
  186. package/js/components/InlineList/Tests.d.ts +0 -12
  187. package/js/components/InlineList/index.d.ts +0 -53
  188. package/js/components/InputHelper/Stories.d.ts +0 -35
  189. package/js/components/InputHelper/Tests.d.ts +0 -12
  190. package/js/components/InputHelper/constants.d.ts +0 -3
  191. package/js/components/InputHelper/index.d.ts +0 -26
  192. package/js/components/InputLabel/Stories.d.ts +0 -40
  193. package/js/components/InputLabel/Tests.d.ts +0 -12
  194. package/js/components/InputLabel/index.d.ts +0 -29
  195. package/js/components/Lightbox/Stories.d.ts +0 -40
  196. package/js/components/Lightbox/Tests.d.ts +0 -11
  197. package/js/components/Lightbox/index.d.ts +0 -68
  198. package/js/components/Link/Stories.d.ts +0 -282
  199. package/js/components/Link/Tests.d.ts +0 -8
  200. package/js/components/Link/index.d.ts +0 -47
  201. package/js/components/LinkPreview/Stories.d.ts +0 -61
  202. package/js/components/LinkPreview/Tests.d.ts +0 -15
  203. package/js/components/LinkPreview/index.d.ts +0 -53
  204. package/js/components/List/ListDivider.d.ts +0 -33
  205. package/js/components/List/ListDividerStories.d.ts +0 -17
  206. package/js/components/List/ListDividerTests.d.ts +0 -11
  207. package/js/components/List/ListItem.d.ts +0 -58
  208. package/js/components/List/ListItemAction.d.ts +0 -24
  209. package/js/components/List/ListItemActionTests.d.ts +0 -11
  210. package/js/components/List/ListItemStories.d.ts +0 -53
  211. package/js/components/List/ListItemTests.d.ts +0 -12
  212. package/js/components/List/ListSection.d.ts +0 -45
  213. package/js/components/List/ListSectionStories.d.ts +0 -125
  214. package/js/components/List/ListSectionTests.d.ts +0 -13
  215. package/js/components/List/ListStories.d.ts +0 -34
  216. package/js/components/List/ListTests.d.ts +0 -11
  217. package/js/components/List/index.d.ts +0 -39
  218. package/js/components/Menu/MenuButton.d.ts +0 -41
  219. package/js/components/Menu/MenuButtonStories.d.ts +0 -50
  220. package/js/components/Menu/MenuButtonTestStories.d.ts +0 -31
  221. package/js/components/Menu/MenuButtonTests.d.ts +0 -34
  222. package/js/components/Menu/MenuItem.d.ts +0 -26
  223. package/js/components/Menu/MenuItemTests.d.ts +0 -11
  224. package/js/components/Menu/MenuList.d.ts +0 -16
  225. package/js/components/Menu/MenuPopover.d.ts +0 -18
  226. package/js/components/Menu/MenuTrigger.d.ts +0 -23
  227. package/js/components/Menu/setupMenu.d.ts +0 -18
  228. package/js/components/Menu/types.d.ts +0 -40
  229. package/js/components/Menu/utils.d.ts +0 -9
  230. package/js/components/Message/Stories.d.ts +0 -119
  231. package/js/components/Message/Tests.d.ts +0 -14
  232. package/js/components/Message/index.d.ts +0 -75
  233. package/js/components/Mosaic/Stories.d.ts +0 -102
  234. package/js/components/Mosaic/Tests.d.ts +0 -13
  235. package/js/components/Mosaic/index.d.ts +0 -40
  236. package/js/components/Popover/Stories.d.ts +0 -156
  237. package/js/components/Popover/Tests.d.ts +0 -11
  238. package/js/components/Popover/constants.d.ts +0 -43
  239. package/js/components/Popover/index.d.ts +0 -120
  240. package/js/components/Popover/types.d.ts +0 -35
  241. package/js/components/Popover/utils/buildPopoverMiddleware.d.ts +0 -25
  242. package/js/components/Popover/utils/computeArrowStyles.d.ts +0 -5
  243. package/js/components/Popover/utils/getFloatingPlacement.d.ts +0 -7
  244. package/js/components/Popover/utils/index.d.ts +0 -5
  245. package/js/components/Popover/utils/parseAutoPlacement.d.ts +0 -22
  246. package/js/components/Popover/utils/parseFitWidth.d.ts +0 -4
  247. package/js/components/PopoverDialog/Stories.d.ts +0 -44
  248. package/js/components/PopoverDialog/Tests.d.ts +0 -11
  249. package/js/components/PopoverDialog/index.d.ts +0 -22
  250. package/js/components/ProgressCircular/Stories.d.ts +0 -30
  251. package/js/components/ProgressCircular/Tests.d.ts +0 -11
  252. package/js/components/ProgressCircular/index.d.ts +0 -52
  253. package/js/components/ProgressLinear/Stories.d.ts +0 -11
  254. package/js/components/ProgressLinear/Tests.d.ts +0 -11
  255. package/js/components/ProgressLinear/index.d.ts +0 -27
  256. package/js/components/RadioButton/Stories.d.ts +0 -78
  257. package/js/components/RadioButton/Tests.d.ts +0 -15
  258. package/js/components/RadioButton/index.d.ts +0 -45
  259. package/js/components/RadioGroup/index.d.ts +0 -34
  260. package/js/components/RawClickable/Tests.d.ts +0 -14
  261. package/js/components/RawClickable/index.d.ts +0 -14
  262. package/js/components/SelectButton/Stories.d.ts +0 -135
  263. package/js/components/SelectButton/TestStories.d.ts +0 -45
  264. package/js/components/SelectButton/Tests.d.ts +0 -34
  265. package/js/components/SelectButton/index.d.ts +0 -88
  266. package/js/components/SelectTextField/Stories.d.ts +0 -192
  267. package/js/components/SelectTextField/TestStories.d.ts +0 -39
  268. package/js/components/SelectTextField/Tests.d.ts +0 -38
  269. package/js/components/SelectTextField/index.d.ts +0 -87
  270. package/js/components/Skeleton/SkeletonCircle.d.ts +0 -32
  271. package/js/components/Skeleton/SkeletonCircleStories.d.ts +0 -43
  272. package/js/components/Skeleton/SkeletonCircleTests.d.ts +0 -12
  273. package/js/components/Skeleton/SkeletonRectangle.d.ts +0 -47
  274. package/js/components/Skeleton/SkeletonRectangleStories.d.ts +0 -83
  275. package/js/components/Skeleton/SkeletonRectangleTests.d.ts +0 -13
  276. package/js/components/Skeleton/SkeletonTypography.d.ts +0 -37
  277. package/js/components/Skeleton/SkeletonTypographyStories.d.ts +0 -53
  278. package/js/components/Skeleton/SkeletonTypographyTests.d.ts +0 -13
  279. package/js/components/Skeleton/index.d.ts +0 -3
  280. package/js/components/Switch/Stories.d.ts +0 -94
  281. package/js/components/Switch/Tests.d.ts +0 -15
  282. package/js/components/Switch/index.d.ts +0 -47
  283. package/js/components/Table/Stories.d.ts +0 -30
  284. package/js/components/Table/TableBody.d.ts +0 -25
  285. package/js/components/Table/TableCell.d.ts +0 -55
  286. package/js/components/Table/TableCellStories.d.ts +0 -47
  287. package/js/components/Table/TableCellTests.d.ts +0 -11
  288. package/js/components/Table/TableHeader.d.ts +0 -29
  289. package/js/components/Table/TableRow.d.ts +0 -35
  290. package/js/components/Table/TableRowStories.d.ts +0 -23
  291. package/js/components/Table/Tests.d.ts +0 -11
  292. package/js/components/Table/constants.d.ts +0 -9
  293. package/js/components/Table/index.d.ts +0 -27
  294. package/js/components/Tabs/Tab.d.ts +0 -70
  295. package/js/components/Tabs/TabList.d.ts +0 -39
  296. package/js/components/Tabs/TabListTests.d.ts +0 -12
  297. package/js/components/Tabs/TabPanel.d.ts +0 -43
  298. package/js/components/Tabs/TabPanelTests.d.ts +0 -11
  299. package/js/components/Tabs/TabProviderTestUtils.d.ts +0 -17
  300. package/js/components/Tabs/Tests.d.ts +0 -11
  301. package/js/components/Tabs/constants.d.ts +0 -4
  302. package/js/components/Tabs/state.d.ts +0 -34
  303. package/js/components/Text/Stories.d.ts +0 -164
  304. package/js/components/Text/Tests.d.ts +0 -10
  305. package/js/components/Text/index.d.ts +0 -935
  306. package/js/components/TextField/RawInputText.d.ts +0 -24
  307. package/js/components/TextField/RawInputTextStories.d.ts +0 -16
  308. package/js/components/TextField/RawInputTextTests.d.ts +0 -11
  309. package/js/components/TextField/RawInputTextarea.d.ts +0 -23
  310. package/js/components/TextField/RawInputTextareaStories.d.ts +0 -21
  311. package/js/components/TextField/RawInputTextareaTests.d.ts +0 -11
  312. package/js/components/TextField/Stories.d.ts +0 -101
  313. package/js/components/TextField/Tests.d.ts +0 -14
  314. package/js/components/TextField/TextField.d.ts +0 -84
  315. package/js/components/TextField/constants.d.ts +0 -13
  316. package/js/components/Thumbnail/Stories.d.ts +0 -178
  317. package/js/components/Thumbnail/Tests.d.ts +0 -11
  318. package/js/components/Thumbnail/index.d.ts +0 -84
  319. package/js/components/Thumbnail/types.d.ts +0 -45
  320. package/js/components/Thumbnail/utils.d.ts +0 -79
  321. package/js/components/TimePickerField/Stories.d.ts +0 -64
  322. package/js/components/TimePickerField/Tests.d.ts +0 -29
  323. package/js/components/TimePickerField/index.d.ts +0 -119
  324. package/js/components/Toolbar/Stories.d.ts +0 -29
  325. package/js/components/Toolbar/Tests.d.ts +0 -12
  326. package/js/components/Toolbar/index.d.ts +0 -33
  327. package/js/components/Tooltip/Stories.d.ts +0 -61
  328. package/js/components/Tooltip/TestStories.d.ts +0 -72
  329. package/js/components/Tooltip/Tests.d.ts +0 -11
  330. package/js/components/Tooltip/constants.d.ts +0 -10
  331. package/js/components/Tooltip/index.d.ts +0 -65
  332. package/js/components/Tooltip/tooltipOpenManager.d.ts +0 -21
  333. package/js/components/Uploader/Stories.d.ts +0 -116
  334. package/js/components/Uploader/Tests.d.ts +0 -14
  335. package/js/components/Uploader/index.d.ts +0 -79
  336. package/js/components/UserBlock/Stories.d.ts +0 -153
  337. package/js/components/UserBlock/Tests.d.ts +0 -13
  338. package/js/components/UserBlock/index.d.ts +0 -145
  339. package/js/constants/_internal/design-tokens.d.ts +0 -5421
  340. package/js/constants/browser/index.js +0 -14
  341. package/js/constants/className/index.d.ts +0 -4
  342. package/js/constants/className/index.js +0 -6
  343. package/js/constants/components/index.d.ts +0 -24
  344. package/js/constants/enums/index.d.ts +0 -210
  345. package/js/constants/enums/index.js +0 -164
  346. package/js/constants/keycodes/index.d.ts +0 -36
  347. package/js/types/AriaAttributes.d.ts +0 -29
  348. package/js/types/Booleanish.d.ts +0 -1
  349. package/js/types/Callback.d.ts +0 -4
  350. package/js/types/CommonRef.d.ts +0 -1
  351. package/js/types/Direction.d.ts +0 -1
  352. package/js/types/Falsy.d.ts +0 -5
  353. package/js/types/GenericProps.d.ts +0 -10
  354. package/js/types/HasAriaDisabled.d.ts +0 -5
  355. package/js/types/HasAriaLabelOrLabelledBy.d.ts +0 -17
  356. package/js/types/HasChecked.d.ts +0 -6
  357. package/js/types/HasClassName.d.ts +0 -6
  358. package/js/types/HasCloseMode.d.ts +0 -7
  359. package/js/types/HasDisabled.d.ts +0 -6
  360. package/js/types/HasPolymorphicAs.d.ts +0 -8
  361. package/js/types/HasRequiredLinkHref.d.ts +0 -3
  362. package/js/types/HasTheme.d.ts +0 -7
  363. package/js/types/HeadingElement.d.ts +0 -2
  364. package/js/types/JSXElement.d.ts +0 -9
  365. package/js/types/KebabCase.d.ts +0 -2
  366. package/js/types/LumxClassName.d.ts +0 -3
  367. package/js/types/ObjectValues.d.ts +0 -5
  368. package/js/types/Point.d.ts +0 -7
  369. package/js/types/Predicate.d.ts +0 -2
  370. package/js/types/RectSize.d.ts +0 -7
  371. package/js/types/Selector.d.ts +0 -11
  372. package/js/types/Spacing.d.ts +0 -1
  373. package/js/types/TextElement.d.ts +0 -3
  374. package/js/types/ValueOf.d.ts +0 -2
  375. package/js/types/jsx/PropsToOverride.d.ts +0 -2
  376. package/js/utils/ClickAway/TestStories.d.ts +0 -36
  377. package/js/utils/ClickAway/index.d.ts +0 -34
  378. package/js/utils/InfiniteScroll/TestStories.d.ts +0 -50
  379. package/js/utils/InfiniteScroll/index.d.ts +0 -21
  380. package/js/utils/InfiniteScroll/setupInfiniteScrollObserver.d.ts +0 -8
  381. package/js/utils/Portal/Stories.d.ts +0 -29
  382. package/js/utils/Portal/Tests.d.ts +0 -25
  383. package/js/utils/Portal/index.d.ts +0 -25
  384. package/js/utils/_internal/color/index.d.ts +0 -1
  385. package/js/utils/_internal/color/resolveColorWithVariants.d.ts +0 -3
  386. package/js/utils/action-area/Stories.d.ts +0 -38
  387. package/js/utils/browser/createSelectorTreeWalker.d.ts +0 -13
  388. package/js/utils/browser/css/combineSize.d.ts +0 -4
  389. package/js/utils/browser/css/resolveCssSize.d.ts +0 -4
  390. package/js/utils/browser/css/types.d.ts +0 -7
  391. package/js/utils/browser/isFocusVisible.d.ts +0 -2
  392. package/js/utils/browser/isHoverNotSupported.d.ts +0 -2
  393. package/js/utils/browser/isPrintableKey.d.ts +0 -7
  394. package/js/utils/browser/lastDescendant.d.ts +0 -2
  395. package/js/utils/browser/querySelectorInclusive.d.ts +0 -11
  396. package/js/utils/browser/trackContainerFocus.d.ts +0 -11
  397. package/js/utils/classNames/action-area/index.js +0 -21
  398. package/js/utils/classNames/bem/block.d.ts +0 -15
  399. package/js/utils/classNames/bem/block.js +0 -26
  400. package/js/utils/classNames/bem/element.d.ts +0 -16
  401. package/js/utils/classNames/bem/element.js +0 -7
  402. package/js/utils/classNames/bem/index.d.ts +0 -18
  403. package/js/utils/classNames/bem/index.js +0 -22
  404. package/js/utils/classNames/bem/modifier.d.ts +0 -13
  405. package/js/utils/classNames/bem/modifier.js +0 -21
  406. package/js/utils/classNames/bem/types.d.ts +0 -11
  407. package/js/utils/classNames/color/index.js +0 -51
  408. package/js/utils/classNames/spacing/index.js +0 -73
  409. package/js/utils/classNames/typography/index.d.ts +0 -6
  410. package/js/utils/classNames/typography/index.js +0 -9
  411. package/js/utils/classNames/visually-hidden/index.d.ts +0 -5
  412. package/js/utils/classNames/visually-hidden/index.js +0 -11
  413. package/js/utils/events/index.d.ts +0 -2
  414. package/js/utils/events/keyboard.js +0 -44
  415. package/js/utils/events/swipe.js +0 -79
  416. package/js/utils/focus/constants.d.ts +0 -10
  417. package/js/utils/focus/getFirstAndLastFocusable.d.ts +0 -13
  418. package/js/utils/focus/getFocusableElements.d.ts +0 -1
  419. package/js/utils/focus/index.d.ts +0 -4
  420. package/js/utils/focus/setupFocusTrap.d.ts +0 -28
  421. package/js/utils/focusNavigation/createActiveItemState.d.ts +0 -26
  422. package/js/utils/focusNavigation/createGridFocusNavigation.d.ts +0 -16
  423. package/js/utils/focusNavigation/createListFocusNavigation.d.ts +0 -15
  424. package/js/utils/focusNavigation/createPendingNavigation.d.ts +0 -7
  425. package/js/utils/focusNavigation/index.d.ts +0 -5
  426. package/js/utils/focusNavigation/setupRovingTabIndex.d.ts +0 -37
  427. package/js/utils/focusNavigation/types.d.ts +0 -68
  428. package/js/utils/function/listenerTower.d.ts +0 -13
  429. package/js/utils/iterable/first.d.ts +0 -2
  430. package/js/utils/locale/getCurrentLocale.d.ts +0 -7
  431. package/js/utils/locale/index.d.ts +0 -1
  432. package/js/utils/select/findOptionById.d.ts +0 -13
  433. package/js/utils/select/getOptionDisplayName.d.ts +0 -8
  434. package/js/utils/select/renderSelectOptions.d.ts +0 -7
  435. package/js/utils/select/toggleSelection.d.ts +0 -23
  436. package/js/utils/select/types.d.ts +0 -243
  437. package/js/utils/selectors/getWithSelector.d.ts +0 -3
  438. package/js/utils/selectors/getWithSelector.js +0 -14
  439. package/js/utils/selectors/groupBySelector.d.ts +0 -6
  440. package/js/utils/selectors/groupBySelector.js +0 -21
  441. package/js/utils/theme/invertTheme.d.ts +0 -3
  442. package/js/utils/time/buildTimeList.d.ts +0 -34
  443. package/js/utils/time/formatTime.d.ts +0 -6
  444. package/js/utils/time/getDateAtTime.d.ts +0 -8
  445. package/js/utils/time/index.d.ts +0 -8
  446. package/js/utils/time/isDateOnTime.d.ts +0 -8
  447. package/js/utils/time/parseTimeInput.d.ts +0 -16
  448. package/js/utils/time/snapTimeToBounds.d.ts +0 -7
  449. package/js/utils/time/timeOfDayMinutes.d.ts +0 -4
  450. package/js/utils/typeahead/index.d.ts +0 -37
  451. package/stories/controls/color.d.ts +0 -15
  452. package/stories/controls/element.d.ts +0 -16
  453. package/stories/controls/focusPoint.d.ts +0 -8
  454. package/stories/controls/icons.d.ts +0 -66
  455. package/stories/controls/image.d.ts +0 -96
  456. package/stories/controls/selectArgType.d.ts +0 -7
  457. package/stories/controls/theme.d.ts +0 -7
  458. package/stories/controls/typography.d.ts +0 -8
  459. package/stories/controls/withUndefined.d.ts +0 -1
  460. package/stories/types.d.ts +0 -67
  461. package/stories/utils/CombinationsTable.d.ts +0 -26
  462. package/stories/utils/ThemingVariablesTable.d.ts +0 -29
  463. package/stories/utils/combinations.d.ts +0 -100
  464. package/stories/utils/concatPath.d.ts +0 -10
  465. package/stories/utils/disableArgTypes.d.ts +0 -7
  466. package/stories/utils/initDemoShadowDOMPortal.d.ts +0 -5
  467. package/stories/utils/lorem.d.ts +0 -7
  468. package/stories/utils/themeVariables.d.ts +0 -39
  469. package/stories/utils/toFlattenProps.d.ts +0 -12
  470. package/stories/utils/withCategory.d.ts +0 -4
  471. package/testing/commonTestsSuiteTL.d.ts +0 -87
  472. package/testing/index.d.ts +0 -1
  473. package/testing/queries.d.ts +0 -4
  474. /package/{css → src/css}/_retro-compat-v2.css +0 -0
  475. /package/{css → src/css}/design-tokens.css +0 -0
  476. /package/{css → src/css}/material.css +0 -0
  477. /package/{scss → src/scss}/_components.scss +0 -0
  478. /package/{scss → src/scss}/_components_classes.scss +0 -0
  479. /package/{scss → src/scss}/_core.scss +0 -0
  480. /package/{scss → src/scss}/_core_classes.scss +0 -0
  481. /package/{scss → src/scss}/_design-tokens.scss +0 -0
  482. /package/{scss → src/scss}/_retro-compat-v2.scss +0 -0
  483. /package/{scss → src/scss}/components/avatar/_index.scss +0 -0
  484. /package/{scss → src/scss}/components/badge/_index.scss +0 -0
  485. /package/{scss → src/scss}/components/button/_index.scss +0 -0
  486. /package/{scss → src/scss}/components/button/_mixins.scss +0 -0
  487. /package/{scss → src/scss}/components/button/_variables.scss +0 -0
  488. /package/{scss → src/scss}/components/checkbox/_index.scss +0 -0
  489. /package/{scss → src/scss}/components/checkbox/_mixins.scss +0 -0
  490. /package/{scss → src/scss}/components/chip/_index.scss +0 -0
  491. /package/{scss → src/scss}/components/chip/_mixins.scss +0 -0
  492. /package/{scss → src/scss}/components/chip/_variables.scss +0 -0
  493. /package/{scss → src/scss}/components/combobox/_index.scss +0 -0
  494. /package/{scss → src/scss}/components/comment-block/_index.scss +0 -0
  495. /package/{scss → src/scss}/components/date-picker/_index.scss +0 -0
  496. /package/{scss → src/scss}/components/dialog/_index.scss +0 -0
  497. /package/{scss → src/scss}/components/dialog/_variables.scss +0 -0
  498. /package/{scss → src/scss}/components/divider/_index.scss +0 -0
  499. /package/{scss → src/scss}/components/divider/_mixins.scss +0 -0
  500. /package/{scss → src/scss}/components/divider/_variables.scss +0 -0
  501. /package/{scss → src/scss}/components/drag-handle/_index.scss +0 -0
  502. /package/{scss → src/scss}/components/dropdown/_index.scss +0 -0
  503. /package/{scss → src/scss}/components/expansion-panel/_index.scss +0 -0
  504. /package/{scss → src/scss}/components/expansion-panel/_variables.scss +0 -0
  505. /package/{scss → src/scss}/components/flag/_index.scss +0 -0
  506. /package/{scss → src/scss}/components/flex-box/_index.scss +0 -0
  507. /package/{scss → src/scss}/components/generic-block/_index.scss +0 -0
  508. /package/{scss → src/scss}/components/grid/_index.scss +0 -0
  509. /package/{scss → src/scss}/components/grid-column/_index.scss +0 -0
  510. /package/{scss → src/scss}/components/icon/_index.scss +0 -0
  511. /package/{scss → src/scss}/components/icon/_mixins.scss +0 -0
  512. /package/{scss → src/scss}/components/icon/_variables.scss +0 -0
  513. /package/{scss → src/scss}/components/image-block/_index.scss +0 -0
  514. /package/{scss → src/scss}/components/image-lightbox/_index.scss +0 -0
  515. /package/{scss → src/scss}/components/inline-list/_index.scss +0 -0
  516. /package/{scss → src/scss}/components/input-helper/_index.scss +0 -0
  517. /package/{scss → src/scss}/components/input-helper/_mixins.scss +0 -0
  518. /package/{scss → src/scss}/components/input-helper/_variables.scss +0 -0
  519. /package/{scss → src/scss}/components/input-label/_index.scss +0 -0
  520. /package/{scss → src/scss}/components/input-label/_mixins.scss +0 -0
  521. /package/{scss → src/scss}/components/lightbox/_index.scss +0 -0
  522. /package/{scss → src/scss}/components/lightbox/_variables.scss +0 -0
  523. /package/{scss → src/scss}/components/link/_index.scss +0 -0
  524. /package/{scss → src/scss}/components/link/_mixins.scss +0 -0
  525. /package/{scss → src/scss}/components/link-preview/_index.scss +0 -0
  526. /package/{scss → src/scss}/components/list/_index.scss +0 -0
  527. /package/{scss → src/scss}/components/list/_mixins.scss +0 -0
  528. /package/{scss → src/scss}/components/list/_variables.scss +0 -0
  529. /package/{scss → src/scss}/components/menu/_index.scss +0 -0
  530. /package/{scss → src/scss}/components/message/_index.scss +0 -0
  531. /package/{scss → src/scss}/components/mosaic/_index.scss +0 -0
  532. /package/{scss → src/scss}/components/navigation/_index.scss +0 -0
  533. /package/{scss → src/scss}/components/navigation/_mixins.scss +0 -0
  534. /package/{scss → src/scss}/components/notification/_index.scss +0 -0
  535. /package/{scss → src/scss}/components/notification/_variables.scss +0 -0
  536. /package/{scss → src/scss}/components/notification-block/_index.scss +0 -0
  537. /package/{scss → src/scss}/components/popover/_index.scss +0 -0
  538. /package/{scss → src/scss}/components/popover/_variables.scss +0 -0
  539. /package/{scss → src/scss}/components/post-block/_index.scss +0 -0
  540. /package/{scss → src/scss}/components/progress/_index.scss +0 -0
  541. /package/{scss → src/scss}/components/progress/_variables.scss +0 -0
  542. /package/{scss → src/scss}/components/progress-tracker/_index.scss +0 -0
  543. /package/{scss → src/scss}/components/progress-tracker/_variables.scss +0 -0
  544. /package/{scss → src/scss}/components/radio-button/_index.scss +0 -0
  545. /package/{scss → src/scss}/components/radio-button/_mixins.scss +0 -0
  546. /package/{scss → src/scss}/components/select/_index.scss +0 -0
  547. /package/{scss → src/scss}/components/select/_mixins.scss +0 -0
  548. /package/{scss → src/scss}/components/side-navigation/_index.scss +0 -0
  549. /package/{scss → src/scss}/components/side-navigation/_mixins.scss +0 -0
  550. /package/{scss → src/scss}/components/skeleton/_index.scss +0 -0
  551. /package/{scss → src/scss}/components/skeleton/_mixins.scss +0 -0
  552. /package/{scss → src/scss}/components/slider/_index.scss +0 -0
  553. /package/{scss → src/scss}/components/slideshow/_index.scss +0 -0
  554. /package/{scss → src/scss}/components/slideshow/_variables.scss +0 -0
  555. /package/{scss → src/scss}/components/switch/_index.scss +0 -0
  556. /package/{scss → src/scss}/components/switch/_mixins.scss +0 -0
  557. /package/{scss → src/scss}/components/table/_index.scss +0 -0
  558. /package/{scss → src/scss}/components/table/_mixins.scss +0 -0
  559. /package/{scss → src/scss}/components/tabs/_index.scss +0 -0
  560. /package/{scss → src/scss}/components/tabs/_mixins.scss +0 -0
  561. /package/{scss → src/scss}/components/text/_index.scss +0 -0
  562. /package/{scss → src/scss}/components/text-field/_index.scss +0 -0
  563. /package/{scss → src/scss}/components/text-field/_mixins.scss +0 -0
  564. /package/{scss → src/scss}/components/text-field/_variables.scss +0 -0
  565. /package/{scss → src/scss}/components/thumbnail/_index.scss +0 -0
  566. /package/{scss → src/scss}/components/thumbnail/_variables.scss +0 -0
  567. /package/{scss → src/scss}/components/toolbar/_index.scss +0 -0
  568. /package/{scss → src/scss}/components/toolbar/_variables.scss +0 -0
  569. /package/{scss → src/scss}/components/tooltip/_index.scss +0 -0
  570. /package/{scss → src/scss}/components/tooltip/_variables.scss +0 -0
  571. /package/{scss → src/scss}/components/uploader/_index.scss +0 -0
  572. /package/{scss → src/scss}/components/user-block/_index.scss +0 -0
  573. /package/{scss → src/scss}/components-and-utils.scss +0 -0
  574. /package/{scss → src/scss}/core/_normalize.scss +0 -0
  575. /package/{scss → src/scss}/core/action-area/_index.scss +0 -0
  576. /package/{scss → src/scss}/core/base/_functions.scss +0 -0
  577. /package/{scss → src/scss}/core/base/_helpers.scss +0 -0
  578. /package/{scss → src/scss}/core/base/_index.scss +0 -0
  579. /package/{scss → src/scss}/core/base/_normalize.scss +0 -0
  580. /package/{scss → src/scss}/core/base/_variables.scss +0 -0
  581. /package/{scss → src/scss}/core/color/_functions.scss +0 -0
  582. /package/{scss → src/scss}/core/color/_index.scss +0 -0
  583. /package/{scss → src/scss}/core/color/_variables.scss +0 -0
  584. /package/{scss → src/scss}/core/elevation/_mixins.scss +0 -0
  585. /package/{scss → src/scss}/core/elevation/_variables.scss +0 -0
  586. /package/{scss → src/scss}/core/size/_variables.scss +0 -0
  587. /package/{scss → src/scss}/core/spacing/_index.scss +0 -0
  588. /package/{scss → src/scss}/core/spacing/_variables.scss +0 -0
  589. /package/{scss → src/scss}/core/state/_mixins.scss +0 -0
  590. /package/{scss → src/scss}/core/state/_variables.scss +0 -0
  591. /package/{scss → src/scss}/core/typography/_index.scss +0 -0
  592. /package/{scss → src/scss}/core/typography/_mixins.scss +0 -0
  593. /package/{scss → src/scss}/core/typography/_variables.scss +0 -0
  594. /package/{scss → src/scss}/lumx.scss +0 -0
@@ -1,243 +0,0 @@
1
- import type { HasAriaDisabled } from '../../types/HasAriaDisabled';
2
- import type { HasTheme } from '../../types/HasTheme';
3
- import type { JSXElement, Selector } from '../../types';
4
- /**
5
- * Status of the select dropdown list.
6
- *
7
- * - `'idle'` — Default state, no loading indicators.
8
- * - `'loading'` — Full loading: shows skeleton placeholders, hides real options.
9
- * - `'loadingMore'` — Paginated loading: appends a skeleton after existing options.
10
- * - `'error'` — Error state: shows an error message in the dropdown.
11
- */
12
- export type SelectListStatus = 'idle' | 'loading' | 'loadingMore' | 'error';
13
- /**
14
- * Context passed to the `renderOption` callback alongside the option object.
15
- * Contains core-computed values that the consumer should forward to `<Combobox.Option>`.
16
- */
17
- export interface RenderOptionContext {
18
- /** Index of the option in the current (possibly section-filtered) list. */
19
- index: number;
20
- /** Resolved option id (from `getOptionId`). Should be passed as `value` to `<Combobox.Option>`. */
21
- value: any;
22
- /** Resolved option name (from `getOptionName`, falling back to `getOptionId`). */
23
- name: string;
24
- /** Whether this option is currently selected. Should be forwarded as `isSelected`. */
25
- isSelected: boolean;
26
- /** Resolved description string (from `getOptionDescription`), if any. Should be forwarded as `description`. */
27
- description?: string | null;
28
- }
29
- export interface BaseSelectProps<O> {
30
- /** List of option objects. */
31
- options?: Array<O>;
32
- /** Option object id selector. */
33
- getOptionId: Selector<O>;
34
- /** Option object name selector (falls back to id if not defined). */
35
- getOptionName?: Selector<O, string | undefined | null>;
36
- /** Option object description selector. */
37
- getOptionDescription?: Selector<O, string | undefined | null>;
38
- /**
39
- * Custom option render function (core/Vue contract).
40
- * Receives the option object and a `RenderOptionContext` with core-computed props (`value`,
41
- * `isSelected`, `description`, `index`). The callee must render a `<Combobox.Option>` and
42
- * forward those context values, including a unique `key`.
43
- *
44
- * @example (Vue / core level)
45
- * renderOption={(fruit, { value, isSelected, description }) => (
46
- * <Combobox.Option key={value} value={value} isSelected={isSelected} description={description}>
47
- * <strong>{fruit.name}</strong>
48
- * </Combobox.Option>
49
- * )}
50
- */
51
- renderOption?: (option: O, context: RenderOptionContext) => JSXElement;
52
- /**
53
- * Selector returning a section id string for each option. Options with the same
54
- * section id are grouped together. The id is also used as the default displayed
55
- * label unless `renderSectionTitle` is provided.
56
- */
57
- getSectionId?: Selector<O, string | undefined>;
58
- /**
59
- * Custom section title render function. Receives the section id and the options
60
- * in that section. Returns custom JSX to display as the section header.
61
- * When not provided, the section id is used as a plain text label.
62
- */
63
- renderSectionTitle?: (sectionId: string | undefined, options: O[]) => JSXElement;
64
- }
65
- export interface BaseSelectComponents {
66
- /** Combobox compound component. */
67
- Combobox: {
68
- Provider: any;
69
- Button: any;
70
- Input: any;
71
- Popover: any;
72
- List: any;
73
- Section: any;
74
- Option: any;
75
- State: any;
76
- OptionSkeleton: any;
77
- };
78
- /** Framework-specific InfiniteScroll component (handles IntersectionObserver lifecycle). */
79
- InfiniteScroll?: any;
80
- }
81
- /**
82
- * Props for rendering select options.
83
- */
84
- export interface RenderSelectOptionsProps<O> extends BaseSelectProps<O> {
85
- /** Selected option (single) or options (multiple). */
86
- selected?: O | O[];
87
- }
88
- /**
89
- * Shared translation labels for SelectTextField wrappers (React and Vue).
90
- */
91
- export interface SelectTextFieldTranslations {
92
- /** Accessible label for the clear button. */
93
- clearLabel?: string;
94
- /** Accessible label for the show-suggestions toggle button. When omitted, the toggle button is not rendered. */
95
- showSuggestionsLabel?: string;
96
- /** Accessible label for the chip group. */
97
- chipGroupLabel?: string;
98
- /** Accessible label for the remove action on chips (used in visually hidden text). */
99
- chipRemoveLabel?: string;
100
- /** Screen reader loading announcement (e.g. "Loading…"). */
101
- loadingMessage?: string;
102
- /**
103
- * Message to display when the list has no visible options.
104
- * Can be a plain string or a function receiving the current input value (for dynamic messages).
105
- * When omitted, the empty state is not shown.
106
- */
107
- emptyMessage?: string | ((inputValue: string) => string);
108
- /**
109
- * Message callback to display the number of available options.
110
- * Called with the current visible option count and should return a human-readable string
111
- * (e.g. `(n) => \`${n} result(s) available\``).
112
- * Displayed when the combobox is open, not empty, not loading, and not in error.
113
- * When omitted, no option count message is shown.
114
- */
115
- nbOptionMessage?: (optionsLength: number) => string;
116
- /** Error title displayed in the dropdown (e.g. "Failed to load"). */
117
- errorMessage?: string;
118
- /** Secondary error message (e.g. "Please try again"). */
119
- errorTryReloadMessage?: string;
120
- }
121
- /**
122
- * Shared translation labels for SelectButton wrappers (React and Vue).
123
- */
124
- export interface SelectButtonTranslations {
125
- /** Screen reader loading announcement (e.g. "Loading…"). */
126
- loadingMessage?: string;
127
- /**
128
- * Message to display when the list has no visible options.
129
- * Can be a plain string or a function receiving the current input value (for dynamic messages).
130
- * When omitted, the empty state is not shown.
131
- */
132
- emptyMessage?: string | ((inputValue: string) => string);
133
- /**
134
- * Message callback to display the number of available options.
135
- * Called with the current visible option count and should return a human-readable string.
136
- * Displayed when the dropdown is open, not empty, not loading, and not in error.
137
- * When omitted, no option count message is shown.
138
- */
139
- nbOptionMessage?: (optionsLength: number) => string;
140
- /** Error title displayed in the dropdown (e.g. "Failed to load"). */
141
- errorMessage?: string;
142
- /** Secondary error message (e.g. "Please try again"). */
143
- errorTryReloadMessage?: string;
144
- }
145
- /**
146
- * Wrapper-level props shared between React and Vue SelectButton implementations.
147
- * These are framework-specific concerns (not part of the core template) that both
148
- * wrappers need — extracted here to avoid duplication.
149
- */
150
- export interface BaseSelectButtonWrapperProps<O> extends Pick<BaseSelectProps<O>, 'options' | 'getOptionId' | 'getOptionName' | 'getOptionDescription' | 'getSectionId'> {
151
- /**
152
- * Selection type. Discriminator that wrappers expand into a typed union:
153
- * `'single'` (default) → `value?: O`, `'multiple'` → `value: O[]`.
154
- */
155
- selectionType?: 'single' | 'multiple';
156
- /** Button label (used for ARIA and when no selection). */
157
- label: string;
158
- /**
159
- * Status of the dropdown list.
160
- * @default 'idle'
161
- */
162
- listStatus?: SelectListStatus;
163
- /** Optional translations for screen-reader announcements (loading/empty/error/option count). */
164
- translations?: SelectButtonTranslations;
165
- }
166
- /**
167
- * Wrapper-level props shared between React and Vue SelectTextField implementations.
168
- * These are framework-specific concerns (not part of the core template) that both
169
- * wrappers need — extracted here to avoid duplication.
170
- */
171
- export interface BaseSelectTextFieldWrapperProps<O> extends Pick<BaseSelectProps<O>, 'options' | 'getOptionId' | 'getOptionName' | 'getOptionDescription' | 'getSectionId'>, HasAriaDisabled, HasTheme {
172
- /** Selection type: 'single' or 'multiple'. */
173
- selectionType: 'single' | 'multiple';
174
- /**
175
- * Status of the dropdown list.
176
- * @default 'idle'
177
- */
178
- listStatus?: SelectListStatus;
179
- /**
180
- * Controls how the combobox filters options as the user types.
181
- *
182
- * - `'auto'` — Options that do not match the input value are hidden client-side.
183
- * - `'manual'` — All options remain visible; filtering is the consumer's
184
- * responsibility (e.g. by updating the `options` prop in response to `onSearch`).
185
- * - `'off'` — Like `'manual'`, but the input is also set to `readOnly` and
186
- * `openOnFocus` defaults to `true` (useful for static dropdowns / pure pickers).
187
- *
188
- * This prop is independent of `onSearch`: you can use both together (e.g. client-side
189
- * filtering + tracking search text for a "create" action), or use `filter: 'manual'`
190
- * without `onSearch` for static dropdowns.
191
- */
192
- filter: 'auto' | 'manual' | 'off';
193
- /**
194
- * Controlled search input value.
195
- * When provided, this value seeds (and resets) the visible search text in the input.
196
- * Setting it to `''` (empty string) resets the input.
197
- */
198
- searchInputValue?: string;
199
- /**
200
- * Whether to show a clear button when a value is selected.
201
- * @default true
202
- */
203
- hasClearButton?: boolean;
204
- /**
205
- * When true, the dropdown opens automatically when the input receives focus.
206
- * When false (default), the dropdown only opens on click, typing, or keyboard navigation.
207
- *
208
- * @default false
209
- */
210
- openOnFocus?: boolean;
211
- /** Field label (required). Also used as aria-label for the listbox. */
212
- label: string;
213
- /** Input placeholder text. */
214
- placeholder?: string;
215
- /** Leading icon (SVG path). */
216
- icon?: string;
217
- /** Disabled state. */
218
- isDisabled?: boolean;
219
- /** Required field indicator. */
220
- isRequired?: boolean;
221
- /** Error state flag. */
222
- hasError?: boolean;
223
- /** Error message text. */
224
- error?: string;
225
- /** Helper text below the field. */
226
- helper?: string;
227
- /** Native input id attribute. */
228
- id?: string;
229
- /** Native input name attribute. */
230
- name?: string;
231
- /** Whether displayed with valid style. */
232
- isValid?: boolean;
233
- /** Maximum string length (shows character counter). */
234
- maxLength?: number;
235
- /** Accessible label for the input element (overrides the visual label for screen readers). */
236
- ariaLabel?: string;
237
- /** Additional props forwarded to the Combobox.Input (and ultimately to TextField). */
238
- inputProps?: Record<string, any>;
239
- /** Props forwarded to the Combobox.Popover. */
240
- popoverProps?: Record<string, any>;
241
- /** Labels for the clear button, toggle button, and chip group. */
242
- translations: SelectTextFieldTranslations;
243
- }
@@ -1,3 +0,0 @@
1
- import { Selector } from '../../types';
2
- /** Get value with a string of function selector */
3
- export declare const getWithSelector: <TObject, TValue>(selector: Selector<TObject, TValue> | undefined, object: TObject) => TValue;
@@ -1,14 +0,0 @@
1
- /** Get value with a string of function selector */
2
- const getWithSelector = (selector, object) => {
3
- // Use the provided selector function
4
- if (typeof selector === 'function') {
5
- return selector(object);
6
- }
7
- // Use the provided selector as a property name
8
- if (typeof selector === 'string') {
9
- return object[selector];
10
- }
11
- return String(object);
12
- };
13
-
14
- export { getWithSelector };
@@ -1,6 +0,0 @@
1
- import { Selector } from '../../types';
2
- /**
3
- * Equivalent to `lodash/groupBy` but returns a `Map` of groups items (instead of an object)
4
- * (has the major advantage to not forcing the keys to be string!)
5
- */
6
- export declare function groupBySelector<TObject, TValue>(array: TObject[], selector: Selector<TObject, TValue>): Map<TValue, TObject[]>;
@@ -1,21 +0,0 @@
1
- import { getWithSelector } from './getWithSelector.js';
2
-
3
- /**
4
- * Equivalent to `lodash/groupBy` but returns a `Map` of groups items (instead of an object)
5
- * (has the major advantage to not forcing the keys to be string!)
6
- */
7
- function groupBySelector(array, selector) {
8
- const groups = new Map();
9
- for (const item of array) {
10
- const key = getWithSelector(selector, item);
11
- let group = groups.get(key);
12
- if (!group) {
13
- group = [];
14
- groups.set(key, group);
15
- }
16
- group.push(item);
17
- }
18
- return groups;
19
- }
20
-
21
- export { groupBySelector };
@@ -1,3 +0,0 @@
1
- import { Theme } from '@lumx/core/js/constants';
2
- /** Invert the color of the given theme. */
3
- export declare const invertTheme: (theme: Theme) => Theme;
@@ -1,34 +0,0 @@
1
- /**
2
- * A time-of-day (24h), independent of any date or time zone. Canonical
3
- * exchange shape for the time utilities and `TimePickerField`.
4
- */
5
- export interface TimeOfDay {
6
- /** 0–23 */
7
- hour: number;
8
- /** 0–59 */
9
- minute: number;
10
- /** Locale-aware short display string. Populated by `buildTimeList` when `locale` is set. */
11
- name?: string;
12
- /**
13
- * `true` when strictly outside `[minTime, maxTime]`. Set by `buildTimeList`;
14
- * consumers typically forward this as `isDisabled` on the rendered option.
15
- */
16
- outOfRange?: boolean;
17
- }
18
- /** Options for `buildTimeList`. */
19
- export interface BuildTimeListOptions {
20
- /** Positive integer minute interval between entries. @default 30 */
21
- step?: number;
22
- /** Lower bound (date part ignored). Entries before are kept but marked `outOfRange`. */
23
- minTime?: Date;
24
- /** Upper bound (date part ignored). Entries after are kept but marked `outOfRange`. */
25
- maxTime?: Date;
26
- /** BCP-47 locale used to populate `name` on each entry. */
27
- locale?: string;
28
- }
29
- /**
30
- * Build a full-day list of `TimeOfDay` entries spaced `step` minutes apart.
31
- * Out-of-bounds entries are kept (with `outOfRange: true`) so consumers can
32
- * render them as visible-but-unselectable. Returns `[]` for invalid `step`.
33
- */
34
- export declare function buildTimeList(options?: BuildTimeListOptions): TimeOfDay[];
@@ -1,6 +0,0 @@
1
- /**
2
- * Format a time-of-day as a locale-aware short time (e.g. `'10:30 AM'`,
3
- * `'10:30'`). Hour is `numeric` (not `'2-digit'`); some locales insert a
4
- * narrow no-break space (U+202F) before AM/PM.
5
- */
6
- export declare function formatTime(date: Date, locale: string): string;
@@ -1,8 +0,0 @@
1
- /**
2
- * Build a new `Date` with the given time-of-day, inheriting the date part of
3
- * `reference` (or today). Seconds/ms zeroed; `reference` is not mutated.
4
- */
5
- export declare function getDateAtTime({ hour, minute }: {
6
- hour: number;
7
- minute: number;
8
- }, reference?: Date): Date;
@@ -1,8 +0,0 @@
1
- /** Time of day utilities */
2
- export { buildTimeList, type BuildTimeListOptions, type TimeOfDay } from './buildTimeList';
3
- export { formatTime } from './formatTime';
4
- export { parseTimeInput } from './parseTimeInput';
5
- export { getDateAtTime } from './getDateAtTime';
6
- export { timeOfDayMinutes } from './timeOfDayMinutes';
7
- export { snapTimeToBounds } from './snapTimeToBounds';
8
- export { isDateOnTime } from './isDateOnTime';
@@ -1,8 +0,0 @@
1
- /**
2
- * Returns `true` when the time-of-day of `date` matches `time` (hour and
3
- * minute). Seconds and milliseconds are ignored.
4
- */
5
- export declare function isDateOnTime(date: Date, time: {
6
- hour: number;
7
- minute: number;
8
- }): boolean;
@@ -1,16 +0,0 @@
1
- import type { TimeOfDay } from './buildTimeList';
2
- /**
3
- * Parse a free-form user time input into a 24h `TimeOfDay`. Accepts a wide
4
- * range of formats:
5
- *
6
- * - 12h AM/PM: `'2pm'`, `'2 PM'`, `'2:30pm'`, `'3.45 PM'`, `'3:45 p.m.'`
7
- * - 24h colon: `'10:30'`, `'15:45'`
8
- * - 24h dot (DE/FR/IT): `'15.45'`
9
- * - 24h French: `'15h45'`
10
- * - Military / no separator: `'1545'`, `'1030pm'`
11
- * - With seconds (ignored): `'15:45:00'`
12
- * - ISO 8601: `'T15:45'`, `'15:45Z'`
13
- *
14
- * Whitespace is trimmed. Returns `undefined` if no format matches.
15
- */
16
- export declare function parseTimeInput(raw: string): TimeOfDay | undefined;
@@ -1,7 +0,0 @@
1
- import type { TimeOfDay } from './buildTimeList';
2
- /**
3
- * Clamp `time` to `[minTime, maxTime]`. Inputs strictly before `minTime` snap
4
- * up; inputs strictly after `maxTime` snap down; otherwise returned unchanged.
5
- * Only the time-of-day of `minTime`/`maxTime` is used.
6
- */
7
- export declare function snapTimeToBounds(time: TimeOfDay, minTime?: Date, maxTime?: Date): TimeOfDay;
@@ -1,4 +0,0 @@
1
- /**
2
- * Return the time-of-day of `date` in minutes since 00:00 (date part ignored).
3
- */
4
- export declare function timeOfDayMinutes(date: Date): number;
@@ -1,37 +0,0 @@
1
- /** Typeahead interface. */
2
- export interface Typeahead {
3
- /**
4
- * Handle a printable character keypress.
5
- * @param key The character typed.
6
- * @param currentItem The currently active item.
7
- * @returns The matched item, or null.
8
- */
9
- handle(key: string, currentItem: HTMLElement | null): HTMLElement | null;
10
- /**
11
- * Re-run the match for the *current* accumulated search string against the
12
- * live DOM, without appending a new character or resetting the timeout.
13
-
14
- * @param currentItem The currently active item.
15
- * @returns The matched item, or null.
16
- */
17
- rematch(currentItem: HTMLElement | null): HTMLElement | null;
18
- /** Reset the accumulated search string. */
19
- reset(): void;
20
- }
21
- /**
22
- * Create a typeahead controller for keyboard navigation in list-like widgets
23
- * (combobox, menu, listbox, tree, etc.).
24
- *
25
- * Accumulates typed characters and matches them against item labels.
26
- * Supports single-char cycling (e.g. pressing "a" repeatedly cycles through
27
- * items starting with "a") and multi-char prefix matching.
28
- *
29
- * Uses a {@link TreeWalker} for lazy DOM traversal — items are visited one
30
- * at a time without materializing the full list.
31
- *
32
- * @param getWalker Callback returning a fresh TreeWalker over navigable items, or null if unavailable.
33
- * @param getItemValue Callback extracting the text label from an item element.
34
- * @param signal AbortSignal for cleanup.
35
- * @returns Typeahead instance.
36
- */
37
- export declare function createTypeahead(getWalker: () => TreeWalker | null, getItemValue: (item: HTMLElement) => string, signal: AbortSignal): Typeahead;
@@ -1,15 +0,0 @@
1
- export declare const ALL_COLORS: ("light" | "dark" | "primary" | "secondary" | "blue" | "green" | "yellow" | "red" | "grey")[];
2
- export declare const colorArgType: {
3
- control: {
4
- type: "select" | "inline-radio";
5
- };
6
- options: ("light" | "dark" | "primary" | "secondary" | "blue" | "green" | "yellow" | "red" | "grey" | undefined)[];
7
- mapping: Record<string, "light" | "dark" | "primary" | "secondary" | "blue" | "green" | "yellow" | "red" | "grey" | undefined> | undefined;
8
- };
9
- export declare const colorVariantArgType: {
10
- control: {
11
- type: "select" | "inline-radio";
12
- };
13
- options: ("D1" | "D2" | "L1" | "L2" | "L3" | "L4" | "L5" | "L6" | "N")[];
14
- mapping: Record<string, "D1" | "D2" | "L1" | "L2" | "L3" | "L4" | "L5" | "L6" | "N"> | undefined;
15
- };
@@ -1,16 +0,0 @@
1
- import { HeadingElement, TextElement } from '../../js/types';
2
- export declare const HEADING_ELEMENTS: HeadingElement[];
3
- export declare const headingElementArgType: {
4
- control: {
5
- type: "select" | "inline-radio";
6
- };
7
- options: HeadingElement[];
8
- mapping: Record<string, HeadingElement> | undefined;
9
- };
10
- export declare const textElementArgType: {
11
- control: {
12
- type: "select" | "inline-radio";
13
- };
14
- options: TextElement[];
15
- mapping: Record<string, TextElement> | undefined;
16
- };
@@ -1,8 +0,0 @@
1
- export declare const focusPoint: {
2
- control: {
3
- type: string;
4
- min: number;
5
- max: number;
6
- step: number;
7
- };
8
- };
@@ -1,66 +0,0 @@
1
- export declare const iconArgType: {
2
- control: {
3
- type: string;
4
- };
5
- options: {
6
- undefined: undefined;
7
- mdiAbTesting: string;
8
- mdiAbjadArabic: string;
9
- mdiAccount: string;
10
- mdiAccountBox: string;
11
- mdiAlert: string;
12
- mdiAlertCircle: string;
13
- mdiArrowDown: string;
14
- mdiArrowUp: string;
15
- mdiAtom: string;
16
- mdiBee: string;
17
- mdiBell: string;
18
- mdiBullhornOutline: string;
19
- mdiCheck: string;
20
- mdiCheckCircle: string;
21
- mdiChevronDown: string;
22
- mdiChevronLeft: string;
23
- mdiChevronRight: string;
24
- mdiChevronUp: string;
25
- mdiClose: string;
26
- mdiCloseCircle: string;
27
- mdiDelete: string;
28
- mdiDotsHorizontal: string;
29
- mdiDragVertical: string;
30
- mdiEarth: string;
31
- mdiEmail: string;
32
- mdiEye: string;
33
- mdiFileEdit: string;
34
- mdiFlag: string;
35
- mdiFolder: string;
36
- mdiFolderGoogleDrive: string;
37
- mdiFoodApple: string;
38
- mdiGoogleCirclesExtended: string;
39
- mdiHeart: string;
40
- mdiHome: string;
41
- mdiImageBroken: string;
42
- mdiInformation: string;
43
- mdiLink: string;
44
- mdiMagnifyMinusOutline: string;
45
- mdiMagnifyPlusOutline: string;
46
- mdiMenuDown: string;
47
- mdiMessageTextOutline: string;
48
- mdiMinus: string;
49
- mdiOpenInNew: string;
50
- mdiPauseCircleOutline: string;
51
- mdiPencil: string;
52
- mdiPlay: string;
53
- mdiPlayCircleOutline: string;
54
- mdiPlus: string;
55
- mdiRadioboxBlank: string;
56
- mdiRadioboxMarked: string;
57
- mdiReply: string;
58
- mdiSend: string;
59
- mdiStar: string;
60
- mdiTextBox: string;
61
- mdiTextBoxPlus: string;
62
- mdiTram: string;
63
- mdiTranslate: string;
64
- mdiViewList: string;
65
- };
66
- };
@@ -1,96 +0,0 @@
1
- export declare const AVATAR_IMAGES: {
2
- avatar1: string;
3
- avatar2: string;
4
- avatar3: string;
5
- avatar4: string;
6
- };
7
- export declare const SQUARE_IMAGES: {
8
- square1: string;
9
- square2: string;
10
- };
11
- export declare const SVG_IMAGES: {
12
- defaultSvg: string;
13
- };
14
- export declare const EMPTY_IMAGES: {
15
- emptyImage: string;
16
- };
17
- export declare const LANDSCAPE_IMAGES: {
18
- landscape1: string;
19
- landscape1s200: string;
20
- landscape2: string;
21
- landscape3: string;
22
- };
23
- export declare const LANDSCAPE_IMAGES_ALT: {
24
- [key in keyof typeof LANDSCAPE_IMAGES]: string;
25
- };
26
- export declare const PORTRAIT_IMAGES: {
27
- portrait1: string;
28
- portrait1s200: string;
29
- portrait2: string;
30
- portrait3: string;
31
- };
32
- export declare const IMAGES: {
33
- emptyImage: string;
34
- defaultSvg: string;
35
- avatar1: string;
36
- avatar2: string;
37
- avatar3: string;
38
- avatar4: string;
39
- square1: string;
40
- square2: string;
41
- portrait1: string;
42
- portrait1s200: string;
43
- portrait2: string;
44
- portrait3: string;
45
- landscape1: string;
46
- landscape1s200: string;
47
- landscape2: string;
48
- landscape3: string;
49
- };
50
- export declare const avatarImageArgType: {
51
- control: {
52
- type: "select" | "inline-radio";
53
- };
54
- options: string[];
55
- mapping: Record<string, string> | undefined;
56
- };
57
- export declare const squareImageArgType: {
58
- control: {
59
- type: "select" | "inline-radio";
60
- };
61
- options: string[];
62
- mapping: Record<string, string> | undefined;
63
- };
64
- export declare const landscapeImageArgType: {
65
- control: {
66
- type: "select" | "inline-radio";
67
- };
68
- options: string[];
69
- mapping: Record<string, string> | undefined;
70
- };
71
- export declare const portraitImageArgType: {
72
- control: {
73
- type: "select" | "inline-radio";
74
- };
75
- options: string[];
76
- mapping: Record<string, string> | undefined;
77
- };
78
- export declare const imageArgType: {
79
- control: {
80
- type: "select" | "inline-radio";
81
- };
82
- options: string[];
83
- mapping: Record<string, string> | undefined;
84
- };
85
- type Size = {
86
- width: number;
87
- height: number;
88
- };
89
- export declare const AVATAR_IMAGE_SIZES: Record<keyof typeof AVATAR_IMAGES, Size>;
90
- export declare const SQUARE_IMAGE_SIZES: Record<keyof typeof SQUARE_IMAGES, Size>;
91
- export declare const LANDSCAPE_IMAGE_SIZES: Record<keyof typeof LANDSCAPE_IMAGES, Size>;
92
- export declare const PORTRAIT_IMAGE_SIZES: Record<keyof typeof PORTRAIT_IMAGES, Size>;
93
- export declare const SVG_IMAGE_SIZES: Record<keyof typeof SVG_IMAGES, Size>;
94
- export declare const EMPTY_IMAGES_SIZES: Record<keyof typeof EMPTY_IMAGES, Size>;
95
- export declare const IMAGE_SIZES: Record<keyof typeof IMAGES, Size>;
96
- export {};
@@ -1,7 +0,0 @@
1
- export declare const getSelectArgType: <E>(options: Array<E> | Record<string, E>, type?: "select" | "inline-radio") => {
2
- control: {
3
- type: "select" | "inline-radio";
4
- };
5
- options: E[];
6
- mapping: Record<string, E> | undefined;
7
- };
@@ -1,7 +0,0 @@
1
- export declare const themeArgType: {
2
- control: string;
3
- options: {
4
- readonly light: "light";
5
- readonly dark: "dark";
6
- };
7
- };