@atom-learning/components 5.11.0 → 5.12.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 (312) hide show
  1. package/CHANGELOG.md +16 -8
  2. package/dist/components/accordion/AccordionContent.js +1 -1
  3. package/dist/components/accordion/AccordionTrigger.js +1 -1
  4. package/dist/components/accordion/AccordionTrigger.js.map +1 -1
  5. package/dist/components/action-icon/ActionIcon.d.ts +1 -1
  6. package/dist/components/action-icon/ActionIcon.js +1 -1
  7. package/dist/components/action-icon/ActionIcon.js.map +1 -1
  8. package/dist/components/alert-dialog/AlertDialogContent.js +1 -1
  9. package/dist/components/alert-dialog/AlertDialogContent.js.map +1 -1
  10. package/dist/components/avatar/Avatar.js +1 -1
  11. package/dist/components/avatar/Avatar.js.map +1 -1
  12. package/dist/components/badge/Badge.d.ts +4 -4
  13. package/dist/components/badge/BadgeText.js +1 -1
  14. package/dist/components/badge/BadgeText.js.map +1 -1
  15. package/dist/components/banner/BannerContainer.d.ts +4 -4
  16. package/dist/components/banner/BannerContainer.js +1 -1
  17. package/dist/components/banner/BannerContainer.js.map +1 -1
  18. package/dist/components/banner/banner-regular/BannerRegular.d.ts +12 -12
  19. package/dist/components/banner/banner-regular/BannerRegularDismiss.d.ts +3 -3
  20. package/dist/components/banner/banner-regular/BannerRegularHeading.js +1 -1
  21. package/dist/components/banner/banner-regular/BannerRegularHeading.js.map +1 -1
  22. package/dist/components/banner/banner-regular/BannerRegularImage.js +1 -1
  23. package/dist/components/banner/banner-regular/BannerRegularImage.js.map +1 -1
  24. package/dist/components/banner/banner-slim/BannerSlim.d.ts +16 -16
  25. package/dist/components/banner/banner-slim/BannerSlimContent.d.ts +4 -4
  26. package/dist/components/banner/banner-slim/BannerSlimDismiss.d.ts +3 -3
  27. package/dist/components/banner/banner-slim/BannerSlimImage.js +1 -1
  28. package/dist/components/banner/banner-slim/BannerSlimImage.js.map +1 -1
  29. package/dist/components/button/Button.d.ts +1 -1
  30. package/dist/components/button/Button.js +1 -1
  31. package/dist/components/button/Button.js.map +1 -1
  32. package/dist/components/carousel/Carousel.js +1 -1
  33. package/dist/components/carousel/Carousel.js.map +1 -1
  34. package/dist/components/carousel/CarouselArrows.js +1 -1
  35. package/dist/components/carousel/CarouselArrows.js.map +1 -1
  36. package/dist/components/carousel/CarouselSlider.js +1 -1
  37. package/dist/components/carousel/CarouselSlider.js.map +1 -1
  38. package/dist/components/checkbox/Checkbox.js +1 -1
  39. package/dist/components/checkbox/Checkbox.js.map +1 -1
  40. package/dist/components/checkbox-field/CheckboxField.js +1 -1
  41. package/dist/components/checkbox-field/CheckboxField.js.map +1 -1
  42. package/dist/components/checkbox-group/CheckboxGroup.d.ts +1 -1
  43. package/dist/components/checkbox-tree/CheckboxTree.d.ts +125 -125
  44. package/dist/components/chip/Chip.d.ts +14 -14
  45. package/dist/components/chip/Chip.js +1 -1
  46. package/dist/components/chip/Chip.js.map +1 -1
  47. package/dist/components/chip-dismissible-group/ChipDismissibleGroupItem.d.ts +5 -5
  48. package/dist/components/chip-toggle-group/ChipToggleGroupItem.d.ts +5 -5
  49. package/dist/components/chip-toggle-group/ChipToggleGroupItem.js +1 -1
  50. package/dist/components/chip-toggle-group/ChipToggleGroupItem.js.map +1 -1
  51. package/dist/components/combobox/ComboboxInput.js +1 -1
  52. package/dist/components/combobox/ComboboxInput.js.map +1 -1
  53. package/dist/components/combobox/ComboboxOption.js +1 -1
  54. package/dist/components/combobox/ComboboxOption.js.map +1 -1
  55. package/dist/components/combobox/ComboboxPopover.js +1 -1
  56. package/dist/components/combobox/ComboboxPopover.js.map +1 -1
  57. package/dist/components/create-password-field/CreatePasswordField.d.ts +2 -3
  58. package/dist/components/create-password-field/CreatePasswordField.js +1 -1
  59. package/dist/components/create-password-field/CreatePasswordField.js.map +1 -1
  60. package/dist/components/data-table/DataTable.d.ts +22 -10
  61. package/dist/components/data-table/DataTableHead.d.ts +1 -1
  62. package/dist/components/data-table/DataTableHead.js +1 -1
  63. package/dist/components/data-table/DataTableHead.js.map +1 -1
  64. package/dist/components/data-table/DataTableHeaderCell.js +1 -1
  65. package/dist/components/data-table/DataTableHeaderCell.js.map +1 -1
  66. package/dist/components/data-table/DataTableRow.js +1 -1
  67. package/dist/components/data-table/DataTableRow.js.map +1 -1
  68. package/dist/components/data-table/DataTableRowSelectionCheckbox.js +1 -1
  69. package/dist/components/data-table/DataTableRowSelectionCheckbox.js.map +1 -1
  70. package/dist/components/data-table/DataTableTable.js +1 -1
  71. package/dist/components/data-table/DataTableTable.js.map +1 -1
  72. package/dist/components/date-field/DateField.d.ts +1 -1
  73. package/dist/components/date-field/DateField.js +1 -1
  74. package/dist/components/date-field/DateField.js.map +1 -1
  75. package/dist/components/date-input/DateInput.js +1 -1
  76. package/dist/components/date-input/DateInput.js.map +1 -1
  77. package/dist/components/dialog/DialogContent.js +1 -1
  78. package/dist/components/dialog/DialogContent.js.map +1 -1
  79. package/dist/components/drawer/DrawerContent.js +1 -1
  80. package/dist/components/drawer/DrawerContent.js.map +1 -1
  81. package/dist/components/drawer/DrawerFooter.js +1 -1
  82. package/dist/components/drawer/DrawerFooter.js.map +1 -1
  83. package/dist/components/drawer/DrawerHeader.js +1 -1
  84. package/dist/components/drawer/DrawerHeader.js.map +1 -1
  85. package/dist/components/drawer/DrawerMain.js +1 -1
  86. package/dist/components/drawer/DrawerMain.js.map +1 -1
  87. package/dist/components/dropdown-menu/DropdownMenuContent.js +1 -1
  88. package/dist/components/dropdown-menu/DropdownMenuContent.js.map +1 -1
  89. package/dist/components/dropdown-menu/DropdownMenuItem.d.ts +2 -428
  90. package/dist/components/dropdown-menu/DropdownMenuItem.js +1 -1
  91. package/dist/components/dropdown-menu/DropdownMenuItem.js.map +1 -1
  92. package/dist/components/dropdown-menu/DropdownMenuTrigger.js +1 -1
  93. package/dist/components/dropdown-menu/DropdownMenuTrigger.js.map +1 -1
  94. package/dist/components/empty-state/EmptyState.d.ts +4 -4
  95. package/dist/components/field-wrapper/FieldWrapper.d.ts +3 -1
  96. package/dist/components/field-wrapper/FieldWrapper.js +1 -1
  97. package/dist/components/field-wrapper/FieldWrapper.js.map +1 -1
  98. package/dist/components/field-wrapper/InlineFieldWrapper.js +1 -1
  99. package/dist/components/field-wrapper/InlineFieldWrapper.js.map +1 -1
  100. package/dist/components/flex/Flex.d.ts +4 -4
  101. package/dist/components/flex/Flex.js +1 -1
  102. package/dist/components/flex/Flex.js.map +1 -1
  103. package/dist/components/form/Form.d.ts +3 -2
  104. package/dist/components/form/Form.js +1 -1
  105. package/dist/components/form/Form.js.map +1 -1
  106. package/dist/components/form/index.d.ts +1 -0
  107. package/dist/components/form/useFormCustomContext.d.ts +7 -0
  108. package/dist/components/form/useFormCustomContext.js +2 -0
  109. package/dist/components/form/useFormCustomContext.js.map +1 -0
  110. package/dist/components/grid/Grid.d.ts +1 -3
  111. package/dist/components/grid/Grid.js +1 -1
  112. package/dist/components/grid/Grid.js.map +1 -1
  113. package/dist/components/heading/Heading.d.ts +1 -0
  114. package/dist/components/heading/Heading.js +1 -1
  115. package/dist/components/heading/Heading.js.map +1 -1
  116. package/dist/components/icon/Icon.js +1 -1
  117. package/dist/components/icon/Icon.js.map +1 -1
  118. package/dist/components/inline-message/InlineMessage.config.d.ts +0 -2
  119. package/dist/components/inline-message/InlineMessage.config.js +1 -1
  120. package/dist/components/inline-message/InlineMessage.config.js.map +1 -1
  121. package/dist/components/inline-message/InlineMessage.d.ts +5 -6
  122. package/dist/components/inline-message/InlineMessage.js +1 -1
  123. package/dist/components/inline-message/InlineMessage.js.map +1 -1
  124. package/dist/components/input/Input.d.ts +7 -5
  125. package/dist/components/input/Input.js +1 -1
  126. package/dist/components/input/Input.js.map +1 -1
  127. package/dist/components/input-field/InputField.d.ts +1 -1
  128. package/dist/components/input-field/InputField.js +1 -1
  129. package/dist/components/input-field/InputField.js.map +1 -1
  130. package/dist/components/label/Label.d.ts +3 -2
  131. package/dist/components/label/Label.js +1 -1
  132. package/dist/components/label/Label.js.map +1 -1
  133. package/dist/components/link/Link.js +1 -1
  134. package/dist/components/link/Link.js.map +1 -1
  135. package/dist/components/list/List.js +1 -1
  136. package/dist/components/list/List.js.map +1 -1
  137. package/dist/components/loader/Loader.js +1 -1
  138. package/dist/components/loader/Loader.js.map +1 -1
  139. package/dist/components/markdown-content/MarkdownContent.d.ts +4 -4
  140. package/dist/components/markdown-content/MarkdownContent.js +1 -1
  141. package/dist/components/markdown-content/MarkdownContent.js.map +1 -1
  142. package/dist/components/markdown-content/components/MarkdownList.d.ts +1 -1
  143. package/dist/components/markdown-content/components/MarkdownList.js.map +1 -1
  144. package/dist/components/navigation/NavigationMenu.js +1 -1
  145. package/dist/components/navigation/NavigationMenu.js.map +1 -1
  146. package/dist/components/navigation/NavigationMenuDropdownTrigger.js +1 -1
  147. package/dist/components/navigation/NavigationMenuDropdownTrigger.js.map +1 -1
  148. package/dist/components/navigation-menu-vertical/NavigationMenuVertical.d.ts +5 -5
  149. package/dist/components/navigation-menu-vertical/NavigationMenuVertical.styles.d.ts +7 -7
  150. package/dist/components/navigation-menu-vertical/NavigationMenuVertical.styles.js +1 -1
  151. package/dist/components/navigation-menu-vertical/NavigationMenuVertical.styles.js.map +1 -1
  152. package/dist/components/navigation-menu-vertical/NavigationMenuVerticalLink.js.map +1 -1
  153. package/dist/components/number-input/NumberInput.d.ts +2 -1
  154. package/dist/components/number-input/NumberInput.js +1 -1
  155. package/dist/components/number-input/NumberInput.js.map +1 -1
  156. package/dist/components/number-input/NumberInputStepper.d.ts +766 -1
  157. package/dist/components/number-input/NumberInputStepper.js +1 -1
  158. package/dist/components/number-input/NumberInputStepper.js.map +1 -1
  159. package/dist/components/number-input-field/NumberInputField.d.ts +1 -1
  160. package/dist/components/number-input-field/NumberInputField.js +1 -1
  161. package/dist/components/number-input-field/NumberInputField.js.map +1 -1
  162. package/dist/components/pagination/PaginationNextButton.d.ts +3 -3
  163. package/dist/components/pagination/PaginationPage.js +1 -1
  164. package/dist/components/pagination/PaginationPage.js.map +1 -1
  165. package/dist/components/pagination/PaginationPopover.js +1 -1
  166. package/dist/components/pagination/PaginationPopover.js.map +1 -1
  167. package/dist/components/pagination/PaginationPreviousButton.d.ts +3 -3
  168. package/dist/components/password-field/PasswordField.d.ts +1 -1
  169. package/dist/components/password-field/PasswordField.js +1 -1
  170. package/dist/components/password-field/PasswordField.js.map +1 -1
  171. package/dist/components/password-input/PasswordInput.js +1 -1
  172. package/dist/components/password-input/PasswordInput.js.map +1 -1
  173. package/dist/components/popover/PopoverContent.js +1 -1
  174. package/dist/components/popover/PopoverContent.js.map +1 -1
  175. package/dist/components/progress-bar/ProgressBar.d.ts +3 -2
  176. package/dist/components/progress-bar/ProgressBar.js +1 -1
  177. package/dist/components/progress-bar/ProgressBar.js.map +1 -1
  178. package/dist/components/radio-button/RadioButton.js +1 -1
  179. package/dist/components/radio-button/RadioButton.js.map +1 -1
  180. package/dist/components/radio-button-field/RadioButtonField.js +1 -1
  181. package/dist/components/radio-button-field/RadioButtonField.js.map +1 -1
  182. package/dist/components/search-field/SearchField.d.ts +1 -1
  183. package/dist/components/search-field/SearchField.js +1 -1
  184. package/dist/components/search-field/SearchField.js.map +1 -1
  185. package/dist/components/search-input/SearchInput.js +1 -1
  186. package/dist/components/search-input/SearchInput.js.map +1 -1
  187. package/dist/components/section-message/SectionMessage.d.ts +1 -1
  188. package/dist/components/section-message/SectionMessage.js +1 -1
  189. package/dist/components/section-message/SectionMessage.js.map +1 -1
  190. package/dist/components/section-message/SectionMessageLayout.js +1 -1
  191. package/dist/components/section-message/SectionMessageLayout.js.map +1 -1
  192. package/dist/components/segmented-control/SegmentedControlItem.js +1 -1
  193. package/dist/components/segmented-control/SegmentedControlItem.js.map +1 -1
  194. package/dist/components/segmented-control/SegmentedControlItemList.js +1 -1
  195. package/dist/components/segmented-control/SegmentedControlItemList.js.map +1 -1
  196. package/dist/components/select/Select.d.ts +1 -0
  197. package/dist/components/select/Select.js +1 -1
  198. package/dist/components/select/Select.js.map +1 -1
  199. package/dist/components/select-field/SelectField.d.ts +1 -1
  200. package/dist/components/select-field/SelectField.js +1 -1
  201. package/dist/components/select-field/SelectField.js.map +1 -1
  202. package/dist/components/side-bar/SideBar.d.ts +1 -1
  203. package/dist/components/side-bar/SideBar.js +1 -1
  204. package/dist/components/side-bar/SideBar.js.map +1 -1
  205. package/dist/components/slider/Slider.d.ts +372 -2
  206. package/dist/components/slider/Slider.js +1 -1
  207. package/dist/components/slider/Slider.js.map +1 -1
  208. package/dist/components/sortable/Handle.d.ts +3 -3
  209. package/dist/components/sortable/Handle.js +1 -1
  210. package/dist/components/sortable/Handle.js.map +1 -1
  211. package/dist/components/sortable/SortableItem.d.ts +3 -1
  212. package/dist/components/sortable/SortableItem.js +1 -1
  213. package/dist/components/sortable/SortableItem.js.map +1 -1
  214. package/dist/components/sortable/index.d.ts +1 -1
  215. package/dist/components/stepper/StepperStepBullet.d.ts +4 -4
  216. package/dist/components/stepper/StepperStepContainer.d.ts +4 -4
  217. package/dist/components/stepper/StepperStepContainer.js +1 -1
  218. package/dist/components/stepper/StepperStepContainer.js.map +1 -1
  219. package/dist/components/stepper/StepperSteps.js +1 -1
  220. package/dist/components/stepper/StepperSteps.js.map +1 -1
  221. package/dist/components/switch/Switch.js +1 -1
  222. package/dist/components/switch/Switch.js.map +1 -1
  223. package/dist/components/table/Table.d.ts +1 -1
  224. package/dist/components/table/Table.js +1 -1
  225. package/dist/components/table/Table.js.map +1 -1
  226. package/dist/components/table/TableBody.js +1 -1
  227. package/dist/components/table/TableBody.js.map +1 -1
  228. package/dist/components/table/TableHeader.d.ts +1 -1
  229. package/dist/components/table/TableHeader.js +1 -1
  230. package/dist/components/table/TableHeader.js.map +1 -1
  231. package/dist/components/table/TableRow.d.ts +2 -1
  232. package/dist/components/table/TableRow.js +1 -1
  233. package/dist/components/table/TableRow.js.map +1 -1
  234. package/dist/components/tabs/TabsTrigger.js +1 -1
  235. package/dist/components/tabs/TabsTrigger.js.map +1 -1
  236. package/dist/components/text/Text.js +1 -1
  237. package/dist/components/text/Text.js.map +1 -1
  238. package/dist/components/textarea/Textarea.d.ts +1 -0
  239. package/dist/components/textarea/Textarea.js +1 -1
  240. package/dist/components/textarea/Textarea.js.map +1 -1
  241. package/dist/components/textarea-field/TextareaField.d.ts +1 -1
  242. package/dist/components/textarea-field/TextareaField.js +1 -1
  243. package/dist/components/textarea-field/TextareaField.js.map +1 -1
  244. package/dist/components/tile/Tile.d.ts +1 -0
  245. package/dist/components/tile/Tile.js +1 -1
  246. package/dist/components/tile/Tile.js.map +1 -1
  247. package/dist/components/tile/TileGroup.d.ts +4 -4
  248. package/dist/components/tile-interactive/TileInteractive.d.ts +2 -1
  249. package/dist/components/tile-interactive/TileInteractive.js +1 -1
  250. package/dist/components/tile-interactive/TileInteractive.js.map +1 -1
  251. package/dist/components/tile-toggle-group/TileToggleGroupItem.d.ts +2 -1
  252. package/dist/components/tile-toggle-group/TileToggleGroupRoot.js.map +1 -1
  253. package/dist/components/toast/Toast.d.ts +5 -23
  254. package/dist/components/toast/Toast.js +1 -1
  255. package/dist/components/toast/Toast.js.map +1 -1
  256. package/dist/components/toast/ToastProvider.js +1 -1
  257. package/dist/components/toast/ToastProvider.js.map +1 -1
  258. package/dist/components/toggle-group/ToggleGroupButton.d.ts +4 -1
  259. package/dist/components/toggle-group/ToggleGroupButton.js +1 -1
  260. package/dist/components/toggle-group/ToggleGroupButton.js.map +1 -1
  261. package/dist/components/toggle-group/ToggleGroupItem.d.ts +6 -2
  262. package/dist/components/toggle-group/ToggleGroupItem.js +1 -1
  263. package/dist/components/toggle-group/ToggleGroupItem.js.map +1 -1
  264. package/dist/components/toggle-group/ToggleGroupRoot.d.ts +2 -1
  265. package/dist/components/toggle-group/ToggleGroupRoot.js +1 -1
  266. package/dist/components/toggle-group/ToggleGroupRoot.js.map +1 -1
  267. package/dist/components/toggle-group/index.d.ts +19 -12
  268. package/dist/components/tooltip/TooltipContent.js +1 -1
  269. package/dist/components/tooltip/TooltipContent.js.map +1 -1
  270. package/dist/components/top-bar/TopBar.d.ts +5 -4
  271. package/dist/components/top-bar/TopBar.js +1 -1
  272. package/dist/components/top-bar/TopBar.js.map +1 -1
  273. package/dist/components/tree/Tree.d.ts +100 -100
  274. package/dist/components/tree/TreeCollapsibleTrigger.js +1 -1
  275. package/dist/components/tree/TreeCollapsibleTrigger.js.map +1 -1
  276. package/dist/components/tree/TreeItemContent.d.ts +5 -5
  277. package/dist/components/tree/TreeListItem.d.ts +5 -5
  278. package/dist/components/video/Video.js +1 -1
  279. package/dist/components/video/Video.js.map +1 -1
  280. package/dist/docgen.json +1 -1
  281. package/dist/index.cjs.js +1 -1
  282. package/dist/index.cjs.js.map +1 -1
  283. package/dist/index.d.ts +1 -1
  284. package/dist/index.js +1 -1
  285. package/dist/utilities/index.d.ts +1 -2
  286. package/dist/utilities/no-overflow-wrapper/NoOverflowWrapper.d.ts +1 -374
  287. package/dist/utilities/no-overflow-wrapper/NoOverflowWrapper.js +1 -1
  288. package/dist/utilities/no-overflow-wrapper/NoOverflowWrapper.js.map +1 -1
  289. package/dist/utilities/no-overflow-wrapper/index.d.ts +1 -1
  290. package/dist/utilities/style/backdrop-overlay.js +1 -1
  291. package/dist/utilities/style/backdrop-overlay.js.map +1 -1
  292. package/dist/utilities/style/index.d.ts +0 -2
  293. package/package.json +2 -2
  294. package/dist/components/drawer/Drawer.styles.d.ts +0 -4
  295. package/dist/components/drawer/Drawer.styles.js +0 -2
  296. package/dist/components/drawer/Drawer.styles.js.map +0 -1
  297. package/dist/constants/zIndices.d.ts +0 -6
  298. package/dist/constants/zIndices.js +0 -2
  299. package/dist/constants/zIndices.js.map +0 -1
  300. package/dist/utilities/create-theme-variants/createThemeVariants.d.ts +0 -22
  301. package/dist/utilities/create-theme-variants/createThemeVariants.js +0 -2
  302. package/dist/utilities/create-theme-variants/createThemeVariants.js.map +0 -1
  303. package/dist/utilities/create-theme-variants/index.d.ts +0 -1
  304. package/dist/utilities/style/disabledStyle.d.ts +0 -2
  305. package/dist/utilities/style/disabledStyle.js +0 -2
  306. package/dist/utilities/style/disabledStyle.js.map +0 -1
  307. package/dist/utilities/style/focus-visible-style-block.d.ts +0 -13
  308. package/dist/utilities/style/focus-visible-style-block.js +0 -2
  309. package/dist/utilities/style/focus-visible-style-block.js.map +0 -1
  310. package/dist/utilities/style/reset.d.ts +0 -13
  311. package/dist/utilities/style/reset.js +0 -2
  312. package/dist/utilities/style/reset.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"NumberInput.js","sources":["../../../src/components/number-input/NumberInput.tsx"],"sourcesContent":["import { Minus, Plus } from '@atom-learning/icons'\nimport * as React from 'react'\n\nimport type { CSS } from '~/stitches'\nimport { getFieldIconSize } from '~/utilities'\n\nimport { Flex } from '../flex'\nimport { Input } from '../input'\nimport { NumberInputStepper } from './NumberInputStepper'\n\nexport interface NumberInputProps {\n name: string\n min?: number\n max?: number\n step?: number\n value?: number\n defaultValue?: number\n disabled?: boolean\n readonly?: boolean\n size?: 'sm' | 'md' | 'lg'\n onValueChange?: (value: number) => void\n stepperButtonLabels?: { increment?: string; decrement?: string }\n disabledTooltipContent?: { increment?: string; decrement?: string }\n css?: CSS\n}\n\nexport const NumberInput: React.ForwardRefExoticComponent<\n NumberInputProps & { ref: React.Ref<HTMLInputElement> }\n> = React.forwardRef(\n (\n {\n value,\n defaultValue = 0,\n onValueChange,\n min = 0,\n max = Number.MAX_SAFE_INTEGER,\n step = 1,\n disabled: isDisabled = false,\n readonly: isReadOnly = false,\n size = 'md',\n stepperButtonLabels: stepperButtonLabelsProp,\n disabledTooltipContent: disabledTooltipContentProp,\n css,\n ...rest\n },\n ref\n ): JSX.Element => {\n const [internalValue, setInternalValue] = React.useState<number>(\n value || defaultValue\n )\n React.useEffect(() => {\n // Update the internal value to match what is passed in.\n if (typeof value !== 'undefined') setInternalValue(value)\n }, [value])\n\n const inputRef = React.useRef<HTMLInputElement | null>(null)\n\n React.useImperativeHandle(ref, () => inputRef.current as HTMLInputElement)\n\n const iconSize = React.useMemo(() => getFieldIconSize(size), [size])\n\n const stepperButtonLabels = {\n increment: 'increment',\n decrement: 'decrement',\n ...stepperButtonLabelsProp\n }\n\n const disabledTooltipContent = {\n decrement: `Cannot enter values below ${min}`,\n increment: `Cannot enter values above ${max}`,\n ...disabledTooltipContentProp\n }\n\n const isAtMax = internalValue >= max\n const isAtMin = internalValue <= min\n\n const clamp = React.useCallback(\n (internalValue: number) => Math.min(Math.max(internalValue, min), max),\n [max, min]\n )\n\n const updateValue = React.useCallback(\n (newValue: number) => {\n onValueChange?.(newValue)\n setInternalValue(newValue)\n },\n [onValueChange]\n )\n\n const onInputChange = React.useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n const parsedValue = Number(event.target.value.replace(/\\D/g, ''))\n updateValue(parsedValue)\n },\n [updateValue]\n )\n\n const increment = React.useCallback(() => {\n if (isAtMax || isReadOnly) return\n inputRef?.current?.focus()\n const newValue = Number(internalValue) + step\n updateValue(clamp(newValue))\n }, [clamp, isAtMax, isReadOnly, step, updateValue, internalValue])\n\n const decrement = React.useCallback(() => {\n if (isAtMin || isReadOnly) return\n inputRef?.current?.focus()\n const newValue = Number(internalValue) - step\n updateValue(clamp(newValue))\n }, [clamp, isAtMin, isReadOnly, min, step, updateValue, internalValue])\n\n const onKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.nativeEvent.isComposing) return\n\n /**\n * Keyboard Accessibility\n *\n * We want to increase or decrease the input's value\n * based on if the user the arrow keys.\n *\n * @see https://www.w3.org/TR/wai-aria-practices-1.1/#keyboard-interaction-17\n */\n const eventKey = event.key\n\n const keyMap: Record<string, React.KeyboardEventHandler> = {\n ArrowUp: increment,\n ArrowRight: increment,\n ArrowDown: decrement,\n ArrowLeft: decrement,\n Home: () => updateValue(min),\n End: () => updateValue(max)\n }\n\n const action = keyMap[eventKey]\n\n if (action) {\n event.preventDefault()\n action(event)\n }\n },\n [increment, decrement, updateValue, min, max]\n )\n\n const inputProps: React.ComponentProps<typeof Input> = {\n type: 'number',\n value: internalValue,\n ...rest,\n onChange: onInputChange,\n onKeyDown,\n size,\n css: {\n borderRadius: '0px',\n width: '$6',\n '&:disabled': { opacity: 0.3, pointerEvents: 'none' }\n },\n ref: inputRef,\n readOnly: isReadOnly,\n disabled: isDisabled,\n 'aria-valuemin': min,\n 'aria-valuemax': max,\n 'aria-valuenow': internalValue,\n role: 'spinbutton'\n }\n\n return (\n <Flex css={css}>\n <NumberInputStepper\n onClick={decrement}\n icon={Minus}\n css={{\n borderRight: 'none',\n borderTopRightRadius: '0px',\n borderBottomRightRadius: '0px'\n }}\n size={iconSize}\n disabled={isAtMin || isDisabled}\n showTooltip={isAtMin && !isDisabled}\n disabledTooltipContent={disabledTooltipContent.decrement}\n label={stepperButtonLabels.decrement}\n />\n <Input {...inputProps} />\n <NumberInputStepper\n onClick={increment}\n icon={Plus}\n css={{\n borderLeft: 'none',\n borderTopLeftRadius: '0px',\n borderBottomLeftRadius: '0px'\n }}\n size={iconSize}\n disabled={isAtMax || isDisabled}\n showTooltip={isAtMax && !isDisabled}\n disabledTooltipContent={disabledTooltipContent.increment}\n label={stepperButtonLabels.increment}\n />\n </Flex>\n )\n }\n)\n\nNumberInput.displayName = 'NumberInput'\n"],"names":["NumberInput","React","value","defaultValue","onValueChange","min","max","step","isDisabled","isReadOnly","size","stepperButtonLabelsProp","disabledTooltipContentProp","css","rest","ref","internalValue","setInternalValue","inputRef","iconSize","getFieldIconSize","stepperButtonLabels","disabledTooltipContent","isAtMax","isAtMin","clamp","updateValue","newValue","onInputChange","event","parsedValue","increment","_a","decrement","onKeyDown","eventKey","action","inputProps","Flex","NumberInputStepper","Minus","Input","Plus"],"mappings":"yfA0BO,MAAMA,EAETC,EAAM,WACR,CACE,CACE,MAAAC,EACA,aAAAC,EAAe,EACf,cAAAC,EACA,IAAAC,EAAM,EACN,IAAAC,EAAM,OAAO,iBACb,KAAAC,EAAO,EACP,SAAUC,EAAa,GACvB,SAAUC,EAAa,GACvB,KAAAC,EAAO,KACP,oBAAqBC,EACrB,uBAAwBC,EACxB,IAAAC,KACGC,CACL,EACAC,IACgB,CAChB,KAAM,CAACC,EAAeC,CAAgB,EAAIhB,EAAM,SAC9CC,GAASC,CACX,EACAF,EAAM,UAAU,IAAM,CAEhB,OAAOC,EAAU,KAAae,EAAiBf,CAAK,CAC1D,EAAG,CAACA,CAAK,CAAC,EAEV,MAAMgB,EAAWjB,EAAM,OAAgC,IAAI,EAE3DA,EAAM,oBAAoBc,EAAK,IAAMG,EAAS,OAA2B,EAEzE,MAAMC,EAAWlB,EAAM,QAAQ,IAAMmB,EAAiBV,CAAI,EAAG,CAACA,CAAI,CAAC,EAE7DW,EAAsB,CAC1B,UAAW,YACX,UAAW,YACX,GAAGV,CACL,EAEMW,EAAyB,CAC7B,UAAW,6BAA6BjB,IACxC,UAAW,6BAA6BC,IACxC,GAAGM,CACL,EAEMW,EAAUP,GAAiBV,EAC3BkB,EAAUR,GAAiBX,EAE3BoB,EAAQxB,EAAM,YACjBe,GAA0B,KAAK,IAAI,KAAK,IAAIA,EAAeX,CAAG,EAAGC,CAAG,EACrE,CAACA,EAAKD,CAAG,CACX,EAEMqB,EAAczB,EAAM,YACvB0B,GAAqB,CACpBvB,GAAA,MAAAA,EAAgBuB,CAChBV,EAAAA,EAAiBU,CAAQ,CAC3B,EACA,CAACvB,CAAa,CAChB,EAEMwB,EAAgB3B,EAAM,YACzB4B,GAA+C,CAC9C,MAAMC,EAAc,OAAOD,EAAM,OAAO,MAAM,QAAQ,MAAO,EAAE,CAAC,EAChEH,EAAYI,CAAW,CACzB,EACA,CAACJ,CAAW,CACd,EAEMK,EAAY9B,EAAM,YAAY,IAAM,CAjG9C,IAAA+B,EAkGM,GAAIT,GAAWd,EAAY,QAC3BuB,EAAAd,GAAA,KAAA,OAAAA,EAAU,UAAV,MAAAc,EAAmB,MAAA,EACnB,MAAML,EAAW,OAAOX,CAAa,EAAIT,EACzCmB,EAAYD,EAAME,CAAQ,CAAC,CAC7B,EAAG,CAACF,EAAOF,EAASd,EAAYF,EAAMmB,EAAaV,CAAa,CAAC,EAE3DiB,EAAYhC,EAAM,YAAY,IAAM,CAxG9C,IAAA+B,EAyGM,GAAIR,GAAWf,EAAY,QAC3BuB,EAAAd,GAAA,KAAA,OAAAA,EAAU,UAAV,MAAAc,EAAmB,QACnB,MAAML,EAAW,OAAOX,CAAa,EAAIT,EACzCmB,EAAYD,EAAME,CAAQ,CAAC,CAC7B,EAAG,CAACF,EAAOD,EAASf,EAAYJ,EAAKE,EAAMmB,EAAaV,CAAa,CAAC,EAEhEkB,EAAYjC,EAAM,YACrB4B,GAA+B,CAC9B,GAAIA,EAAM,YAAY,YAAa,OAUnC,MAAMM,EAAWN,EAAM,IAWjBO,EATqD,CACzD,QAASL,EACT,WAAYA,EACZ,UAAWE,EACX,UAAWA,EACX,KAAM,IAAMP,EAAYrB,CAAG,EAC3B,IAAK,IAAMqB,EAAYpB,CAAG,CAC5B,EAEsB6B,GAElBC,IACFP,EAAM,iBACNO,EAAOP,CAAK,EAEhB,EACA,CAACE,EAAWE,EAAWP,EAAarB,EAAKC,CAAG,CAC9C,EAEM+B,EAAiD,CACrD,KAAM,SACN,MAAOrB,EACP,GAAGF,EACH,SAAUc,EACV,UAAAM,EACA,KAAAxB,EACA,IAAK,CACH,aAAc,MACd,MAAO,KACP,aAAc,CAAE,QAAS,GAAK,cAAe,MAAO,CACtD,EACA,IAAKQ,EACL,SAAUT,EACV,SAAUD,EACV,gBAAiBH,EACjB,gBAAiBC,EACjB,gBAAiBU,EACjB,KAAM,YACR,EAEA,OACEf,EAAA,cAACqC,EAAA,CAAK,IAAKzB,CACTZ,EAAAA,EAAA,cAACsC,EAAA,CACC,QAASN,EACT,KAAMO,EACN,IAAK,CACH,YAAa,OACb,qBAAsB,MACtB,wBAAyB,KAC3B,EACA,KAAMrB,EACN,SAAUK,GAAWhB,EACrB,YAAagB,GAAW,CAAChB,EACzB,uBAAwBc,EAAuB,UAC/C,MAAOD,EAAoB,SAAA,CAC7B,EACApB,EAAA,cAACwC,EAAA,CAAO,GAAGJ,CAAAA,CAAY,EACvBpC,EAAA,cAACsC,EAAA,CACC,QAASR,EACT,KAAMW,EACN,IAAK,CACH,WAAY,OACZ,oBAAqB,MACrB,uBAAwB,KAC1B,EACA,KAAMvB,EACN,SAAUI,GAAWf,EACrB,YAAae,GAAW,CAACf,EACzB,uBAAwBc,EAAuB,UAC/C,MAAOD,EAAoB,SAC7B,CAAA,CACF,CAEJ,CACF,EAEArB,EAAY,YAAc"}
1
+ {"version":3,"file":"NumberInput.js","sources":["../../../src/components/number-input/NumberInput.tsx"],"sourcesContent":["import { Minus, Plus } from '@atom-learning/icons'\nimport * as React from 'react'\n\nimport { type CSS, styled } from '~/stitches'\nimport { getFieldIconSize } from '~/utilities'\n\nimport { Flex } from '../flex'\nimport { Input } from '../input'\nimport { NumberInputStepper } from './NumberInputStepper'\n\nexport interface NumberInputProps {\n name: string\n min?: number\n max?: number\n step?: number\n value?: number\n defaultValue?: number\n disabled?: boolean\n readonly?: boolean\n size?: 'sm' | 'md' | 'lg'\n appearance?: 'standard' | 'modern'\n onValueChange?: (value: number) => void\n stepperButtonLabels?: { increment?: string; decrement?: string }\n disabledTooltipContent?: { increment?: string; decrement?: string }\n css?: CSS\n}\n\nconst NumberInputContainer = styled(Flex, {\n variants: {\n appearance: {\n standard: {},\n modern: { gap: '1px' }\n }\n }\n})\n\nexport const NumberInput: React.ForwardRefExoticComponent<\n NumberInputProps & { ref: React.Ref<HTMLInputElement> }\n> = React.forwardRef(\n (\n {\n value,\n defaultValue = 0,\n onValueChange,\n min = 0,\n max = Number.MAX_SAFE_INTEGER,\n step = 1,\n disabled: isDisabled = false,\n readonly: isReadOnly = false,\n size = 'md',\n stepperButtonLabels: stepperButtonLabelsProp,\n disabledTooltipContent: disabledTooltipContentProp,\n css,\n appearance = 'standard',\n ...rest\n },\n ref\n ): JSX.Element => {\n const [internalValue, setInternalValue] = React.useState<number>(\n value || defaultValue\n )\n React.useEffect(() => {\n // Update the internal value to match what is passed in.\n if (typeof value !== 'undefined') setInternalValue(value)\n }, [value])\n\n const inputRef = React.useRef<HTMLInputElement | null>(null)\n\n React.useImperativeHandle(ref, () => inputRef.current as HTMLInputElement)\n\n const iconSize = React.useMemo(() => getFieldIconSize(size), [size])\n\n const stepperButtonLabels = {\n increment: 'increment',\n decrement: 'decrement',\n ...stepperButtonLabelsProp\n }\n\n const disabledTooltipContent = {\n decrement: `Cannot enter values below ${min}`,\n increment: `Cannot enter values above ${max}`,\n ...disabledTooltipContentProp\n }\n\n const isAtMax = internalValue >= max\n const isAtMin = internalValue <= min\n\n const clamp = React.useCallback(\n (internalValue: number) => Math.min(Math.max(internalValue, min), max),\n [max, min]\n )\n\n const updateValue = React.useCallback(\n (newValue: number) => {\n onValueChange?.(newValue)\n setInternalValue(newValue)\n },\n [onValueChange]\n )\n\n const onInputChange = React.useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n const parsedValue = Number(event.target.value.replace(/\\D/g, ''))\n updateValue(parsedValue)\n },\n [updateValue]\n )\n\n const increment = React.useCallback(() => {\n if (isAtMax || isReadOnly) return\n inputRef?.current?.focus()\n const newValue = Number(internalValue) + step\n updateValue(clamp(newValue))\n }, [clamp, isAtMax, isReadOnly, step, updateValue, internalValue])\n\n const decrement = React.useCallback(() => {\n if (isAtMin || isReadOnly) return\n inputRef?.current?.focus()\n const newValue = Number(internalValue) - step\n updateValue(clamp(newValue))\n }, [clamp, isAtMin, isReadOnly, min, step, updateValue, internalValue])\n\n const onKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.nativeEvent.isComposing) return\n\n /**\n * Keyboard Accessibility\n *\n * We want to increase or decrease the input's value\n * based on if the user the arrow keys.\n *\n * @see https://www.w3.org/TR/wai-aria-practices-1.1/#keyboard-interaction-17\n */\n const eventKey = event.key\n\n const keyMap: Record<string, React.KeyboardEventHandler> = {\n ArrowUp: increment,\n ArrowRight: increment,\n ArrowDown: decrement,\n ArrowLeft: decrement,\n Home: () => updateValue(min),\n End: () => updateValue(max)\n }\n\n const action = keyMap[eventKey]\n\n if (action) {\n event.preventDefault()\n action(event)\n }\n },\n [increment, decrement, updateValue, min, max]\n )\n\n const inputProps: React.ComponentProps<typeof Input> = {\n type: 'number',\n value: internalValue,\n ...rest,\n onChange: onInputChange,\n onKeyDown,\n size,\n appearance,\n css: {\n borderRadius: '0px',\n width: '$6',\n '&:disabled': { opacity: 0.3, pointerEvents: 'none' }\n },\n ref: inputRef,\n readOnly: isReadOnly,\n disabled: isDisabled,\n 'aria-valuemin': min,\n 'aria-valuemax': max,\n 'aria-valuenow': internalValue,\n role: 'spinbutton'\n }\n\n return (\n <NumberInputContainer appearance={appearance} css={css}>\n <NumberInputStepper\n onClick={decrement}\n icon={Minus}\n css={{\n borderRight: 'none',\n borderTopRightRadius: '0px',\n borderBottomRightRadius: '0px'\n }}\n size={iconSize}\n fieldAppearance={appearance}\n disabled={isAtMin || isDisabled}\n showTooltip={isAtMin && !isDisabled}\n disabledTooltipContent={disabledTooltipContent.decrement}\n label={stepperButtonLabels.decrement}\n />\n <Input {...inputProps} />\n <NumberInputStepper\n onClick={increment}\n icon={Plus}\n css={{\n borderLeft: 'none',\n borderTopLeftRadius: '0px',\n borderBottomLeftRadius: '0px'\n }}\n size={iconSize}\n fieldAppearance={appearance}\n disabled={isAtMax || isDisabled}\n showTooltip={isAtMax && !isDisabled}\n disabledTooltipContent={disabledTooltipContent.increment}\n label={stepperButtonLabels.increment}\n />\n </NumberInputContainer>\n )\n }\n)\n\nNumberInput.displayName = 'NumberInput'\n"],"names":["NumberInputContainer","styled","Flex","NumberInput","React","value","defaultValue","onValueChange","min","max","step","isDisabled","isReadOnly","size","stepperButtonLabelsProp","disabledTooltipContentProp","css","appearance","rest","ref","internalValue","setInternalValue","inputRef","iconSize","getFieldIconSize","stepperButtonLabels","disabledTooltipContent","isAtMax","isAtMin","clamp","updateValue","newValue","onInputChange","event","parsedValue","increment","_a","decrement","onKeyDown","eventKey","action","inputProps","NumberInputStepper","Minus","Input","Plus"],"mappings":"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"}