@rbxts/uiblox 0.2.0-alpha.36 → 0.2.0-alpha.38
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.
- package/README.md +1 -18
- package/out/theme/constants/NumberConstants.d.ts +10 -0
- package/out/theme/constants/NumberConstants.luau +12 -0
- package/out/theme/interfaces/density/controlMetrics.luau +2 -2
- package/out/theme/interfaces/palette/Palette.d.ts +7 -0
- package/out/theme/interfaces/spacing/Shape.d.ts +6 -0
- package/out/theme/interfaces/theme/Theme.d.ts +6 -0
- package/out/theme/interfaces/typography/FontFamilies.luau +1 -0
- package/out/theme/interfaces/typography/FontFamilyOptions.d.ts +1 -1
- package/out/theme/interfaces/typography/FontSizeOptions.d.ts +1 -1
- package/out/theme/interfaces/typography/FontSizes.luau +2 -0
- package/out/theme/interfaces/typography/Variants.d.ts +3 -1
- package/out/theme/interfaces/typography/Variants.luau +25 -1
- package/out/theme/styles/utilities/focusRing.d.ts +7 -0
- package/out/theme/styles/utilities/focusRing.luau +14 -0
- package/out/theme/styles/utilities/index.d.ts +1 -0
- package/out/theme/styles/utilities/init.luau +3 -0
- package/out/theme/styles/utilities/resolveSx.d.ts +6 -1
- package/out/theme/styles/utilities/resolveSx.luau +53 -12
- package/out/theme/themes/DarkTheme.luau +4 -0
- package/out/theme/themes/LightTheme.luau +4 -0
- package/out/theme/themes/createPalette.luau +15 -0
- package/out/ui/packages/accordion/components/Accordion.d.ts +1 -0
- package/out/ui/packages/accordion/components/Accordion.luau +112 -32
- package/out/ui/packages/accordion/components/Accordion.styles.luau +70 -32
- package/out/ui/packages/accordion/components/accordionNote.d.ts +2 -0
- package/out/ui/packages/accordion/components/accordionNote.luau +11 -0
- package/out/ui/packages/alert/components/Alert.d.ts +2 -0
- package/out/ui/packages/alert/components/Alert.luau +39 -12
- package/out/ui/packages/alert/components/Alert.styles.luau +44 -22
- package/out/ui/packages/alert/components/alertAction.d.ts +2 -0
- package/out/ui/packages/alert/components/alertAction.luau +11 -0
- package/out/ui/packages/appBar/components/AppBar.d.ts +1 -0
- package/out/ui/packages/appBar/components/AppBar.luau +88 -22
- package/out/ui/packages/appBar/components/AppBar.styles.luau +41 -11
- package/out/ui/packages/appBar/components/appBarSubtitle.d.ts +2 -0
- package/out/ui/packages/appBar/components/appBarSubtitle.luau +11 -0
- package/out/ui/packages/autocomplete/components/Autocomplete.luau +4 -0
- package/out/ui/packages/avatar/components/Avatar.d.ts +2 -0
- package/out/ui/packages/avatar/components/Avatar.luau +9 -2
- package/out/ui/packages/avatar/components/Avatar.styles.luau +7 -0
- package/out/ui/packages/avatarGroup/components/AvatarGroup.d.ts +14 -0
- package/out/ui/packages/avatarGroup/components/AvatarGroup.luau +107 -0
- package/out/ui/packages/avatarGroup/components/AvatarGroup.styles.d.ts +6 -0
- package/out/ui/packages/avatarGroup/components/AvatarGroup.styles.luau +55 -0
- package/out/ui/packages/avatarGroup/components/avatarGroupCut.d.ts +2 -0
- package/out/ui/packages/avatarGroup/components/avatarGroupCut.luau +11 -0
- package/out/ui/packages/avatarGroup/index.d.ts +3 -0
- package/out/ui/packages/avatarGroup/init.luau +6 -0
- package/out/ui/packages/badge/components/Badge.luau +14 -11
- package/out/ui/packages/badge/components/Badge.styles.luau +5 -1
- package/out/ui/packages/bottomNavigation/components/BottomNavigation.d.ts +4 -1
- package/out/ui/packages/bottomNavigation/components/BottomNavigation.luau +19 -1
- package/out/ui/packages/bottomNavigation/components/BottomNavigation.styles.luau +24 -3
- package/out/ui/packages/bottomNavigation/components/navBadge.d.ts +2 -0
- package/out/ui/packages/bottomNavigation/components/navBadge.luau +14 -0
- package/out/ui/packages/bottomNavigation/index.d.ts +1 -1
- package/out/ui/packages/breadcrumbs/components/Breadcrumbs.luau +21 -6
- package/out/ui/packages/breadcrumbs/components/Breadcrumbs.styles.luau +10 -0
- package/out/ui/packages/breadcrumbs/components/breadcrumbItems.d.ts +2 -0
- package/out/ui/packages/breadcrumbs/components/breadcrumbItems.luau +8 -0
- package/out/ui/packages/brickColorPicker/components/BrickColorPicker.luau +20 -2
- package/out/ui/packages/brickColorPicker/components/BrickColorPicker.styles.luau +72 -66
- package/out/ui/packages/button/components/Button.d.ts +2 -0
- package/out/ui/packages/button/components/Button.luau +112 -36
- package/out/ui/packages/button/components/Button.styles.luau +2 -0
- package/out/ui/packages/button/components/buttonLook.d.ts +2 -0
- package/out/ui/packages/button/components/buttonLook.luau +11 -0
- package/out/ui/packages/button/components/buttonPaint.d.ts +16 -0
- package/out/ui/packages/button/components/buttonPaint.luau +70 -0
- package/out/ui/packages/buttonGroup/components/ButtonGroup.d.ts +14 -0
- package/out/ui/packages/buttonGroup/components/ButtonGroup.luau +117 -0
- package/out/ui/packages/buttonGroup/components/ButtonGroup.styles.d.ts +5 -0
- package/out/ui/packages/buttonGroup/components/ButtonGroup.styles.luau +57 -0
- package/out/ui/packages/buttonGroup/components/buttonGroupEdge.d.ts +2 -0
- package/out/ui/packages/buttonGroup/components/buttonGroupEdge.luau +16 -0
- package/out/ui/packages/buttonGroup/index.d.ts +3 -0
- package/out/ui/packages/buttonGroup/init.luau +6 -0
- package/out/ui/packages/card/components/Card.d.ts +1 -0
- package/out/ui/packages/card/components/Card.luau +21 -2
- package/out/ui/packages/card/components/Card.styles.d.ts +3 -1
- package/out/ui/packages/card/components/Card.styles.luau +20 -9
- package/out/ui/packages/card/components/cardWidth.d.ts +10 -0
- package/out/ui/packages/card/components/cardWidth.luau +36 -0
- package/out/ui/packages/cframeEditor/components/CFrameEditor.luau +18 -5
- package/out/ui/packages/cframeEditor/components/CFrameEditor.styles.luau +50 -32
- package/out/ui/packages/cframeEditor/components/cframeValue.d.ts +1 -0
- package/out/ui/packages/cframeEditor/components/cframeValue.luau +13 -0
- package/out/ui/packages/checkbox/components/Checkbox.luau +7 -5
- package/out/ui/packages/checkbox/components/Checkbox.styles.luau +2 -0
- package/out/ui/packages/checkbox/components/checkboxLook.d.ts +2 -2
- package/out/ui/packages/checkbox/components/checkboxLook.luau +2 -2
- package/out/ui/packages/chip/components/Chip.luau +16 -14
- package/out/ui/packages/chip/components/Chip.styles.d.ts +2 -1
- package/out/ui/packages/chip/components/Chip.styles.luau +15 -9
- package/out/ui/packages/chip/components/chipTone.d.ts +3 -0
- package/out/ui/packages/chip/components/chipTone.luau +11 -0
- package/out/ui/packages/circularProgress/components/CircularProgress.luau +10 -3
- package/out/ui/packages/codeEditor/components/CodeEditor.d.ts +12 -0
- package/out/ui/packages/codeEditor/components/CodeEditor.luau +262 -0
- package/out/ui/packages/codeEditor/components/CodeEditor.styles.d.ts +6 -0
- package/out/ui/packages/codeEditor/components/CodeEditor.styles.luau +124 -0
- package/out/ui/packages/codeEditor/highlightCode.d.ts +11 -0
- package/out/ui/packages/codeEditor/highlightCode.luau +503 -0
- package/out/ui/packages/codeEditor/index.d.ts +2 -0
- package/out/ui/packages/codeEditor/init.luau +5 -0
- package/out/ui/packages/collapse/components/Collapse.d.ts +8 -0
- package/out/ui/packages/collapse/components/Collapse.luau +34 -0
- package/out/ui/packages/collapse/components/Collapse.styles.d.ts +2 -0
- package/out/ui/packages/collapse/components/Collapse.styles.luau +20 -0
- package/out/ui/packages/collapse/components/collapseOpen.d.ts +1 -0
- package/out/ui/packages/collapse/components/collapseOpen.luau +7 -0
- package/out/ui/packages/collapse/index.d.ts +3 -0
- package/out/ui/packages/collapse/init.luau +6 -0
- package/out/ui/packages/colorPicker/components/ColorPicker.luau +9 -1
- package/out/ui/packages/colorPicker/components/ColorPicker.styles.luau +74 -67
- package/out/ui/packages/colorPicker/components/ColorSequenceEditor.luau +16 -6
- package/out/ui/packages/colorPicker/components/NumberSequenceEditor.luau +16 -6
- package/out/ui/packages/colorPicker/components/sequenceValue.d.ts +2 -0
- package/out/ui/packages/colorPicker/components/sequenceValue.luau +8 -0
- package/out/ui/packages/colorPicker/index.d.ts +1 -1
- package/out/ui/packages/colorPicker/init.luau +2 -0
- package/out/ui/packages/copyButton/components/CopyButton.d.ts +8 -0
- package/out/ui/packages/copyButton/components/CopyButton.luau +32 -0
- package/out/ui/packages/copyButton/components/copyInvoke.d.ts +2 -0
- package/out/ui/packages/copyButton/components/copyInvoke.luau +12 -0
- package/out/ui/packages/copyButton/index.d.ts +3 -0
- package/out/ui/packages/copyButton/init.luau +6 -0
- package/out/ui/packages/cover/components/Cover.d.ts +8 -0
- package/out/ui/packages/cover/components/Cover.luau +47 -0
- package/out/ui/packages/cover/components/coverFill.d.ts +2 -0
- package/out/ui/packages/cover/components/coverFill.luau +14 -0
- package/out/ui/packages/cover/index.d.ts +3 -0
- package/out/ui/packages/cover/init.luau +6 -0
- package/out/ui/packages/dateRange/components/DateRangePicker.d.ts +3 -0
- package/out/ui/packages/dateRange/components/DateRangePicker.luau +186 -95
- package/out/ui/packages/dateRange/dateRangeValue.d.ts +5 -0
- package/out/ui/packages/dateRange/dateRangeValue.luau +34 -0
- package/out/ui/packages/dateRange/index.d.ts +1 -1
- package/out/ui/packages/dateRange/init.luau +3 -0
- package/out/ui/packages/dialog/components/Dialog.d.ts +1 -0
- package/out/ui/packages/dialog/components/Dialog.luau +55 -6
- package/out/ui/packages/dialog/components/Dialog.styles.luau +9 -5
- package/out/ui/packages/dialog/components/dialogWidth.d.ts +7 -0
- package/out/ui/packages/dialog/components/dialogWidth.luau +35 -0
- package/out/ui/packages/divider/components/Divider.luau +60 -13
- package/out/ui/packages/divider/components/Divider.styles.luau +1 -0
- package/out/ui/packages/divider/components/dividerLabel.d.ts +2 -0
- package/out/ui/packages/divider/components/dividerLabel.luau +11 -0
- package/out/ui/packages/drawer/components/Drawer.d.ts +2 -0
- package/out/ui/packages/drawer/components/Drawer.luau +51 -7
- package/out/ui/packages/drawer/components/Drawer.styles.luau +13 -5
- package/out/ui/packages/drawer/components/drawerPlacement.d.ts +15 -1
- package/out/ui/packages/drawer/components/drawerPlacement.luau +46 -0
- package/out/ui/packages/editorFace.d.ts +22 -0
- package/out/ui/packages/editorFace.luau +49 -0
- package/out/ui/packages/fab/components/Fab.luau +19 -6
- package/out/ui/packages/fab/components/Fab.styles.luau +4 -3
- package/out/ui/packages/fontEditor/components/FontEditor.luau +13 -3
- package/out/ui/packages/fontEditor/components/FontEditor.styles.luau +36 -27
- package/out/ui/packages/gradientEditor/components/GradientEditor.luau +21 -13
- package/out/ui/packages/gradientEditor/components/GradientEditor.styles.luau +52 -44
- package/out/ui/packages/icon/components/DrawnGlyph.d.ts +11 -0
- package/out/ui/packages/icon/components/DrawnGlyph.luau +87 -0
- package/out/ui/packages/icon/components/Icon.d.ts +6 -2
- package/out/ui/packages/icon/components/Icon.luau +23 -3
- package/out/ui/packages/icon/components/Icon.styles.luau +3 -0
- package/out/ui/packages/icon/components/glyphs.d.ts +28 -0
- package/out/ui/packages/icon/components/glyphs.luau +64 -0
- package/out/ui/packages/icon/index.d.ts +1 -0
- package/out/ui/packages/iconButton/components/IconButton.d.ts +6 -1
- package/out/ui/packages/iconButton/components/IconButton.luau +112 -11
- package/out/ui/packages/iconButton/components/IconButton.styles.luau +4 -27
- package/out/ui/packages/iconButton/components/iconButtonBox.d.ts +11 -0
- package/out/ui/packages/iconButton/components/iconButtonBox.luau +48 -0
- package/out/ui/packages/iconButton/components/transportGlyph.d.ts +10 -0
- package/out/ui/packages/iconButton/components/transportGlyph.luau +77 -0
- package/out/ui/packages/imageList/components/ImageList.d.ts +4 -0
- package/out/ui/packages/imageList/components/ImageList.luau +28 -7
- package/out/ui/packages/imageList/components/ImageList.styles.d.ts +1 -0
- package/out/ui/packages/imageList/components/ImageList.styles.luau +17 -10
- package/out/ui/packages/imageList/components/imageListLayout.d.ts +8 -0
- package/out/ui/packages/imageList/components/imageListLayout.luau +36 -0
- package/out/ui/packages/index.d.ts +12 -0
- package/out/ui/packages/init.luau +36 -0
- package/out/ui/packages/input/components/Input.d.ts +4 -0
- package/out/ui/packages/input/components/Input.luau +74 -37
- package/out/ui/packages/input/components/Input.styles.d.ts +1 -0
- package/out/ui/packages/input/components/Input.styles.luau +45 -18
- package/out/ui/packages/input/components/clampText.d.ts +2 -0
- package/out/ui/packages/input/components/clampText.luau +16 -0
- package/out/ui/packages/input/components/fieldChrome.d.ts +5 -0
- package/out/ui/packages/input/components/fieldChrome.luau +11 -0
- package/out/ui/packages/input/components/multilineHeight.d.ts +1 -0
- package/out/ui/packages/input/components/multilineHeight.luau +11 -0
- package/out/ui/packages/layout/components/Box.luau +92 -13
- package/out/ui/packages/layout/components/Box.styles.d.ts +0 -2
- package/out/ui/packages/layout/components/Box.styles.luau +0 -9
- package/out/ui/packages/layout/components/Grid.luau +81 -16
- package/out/ui/packages/layout/components/Pad.d.ts +24 -0
- package/out/ui/packages/layout/components/Pad.luau +88 -0
- package/out/ui/packages/layout/components/Stack.luau +79 -13
- package/out/ui/packages/link/components/Link.luau +17 -7
- package/out/ui/packages/link/components/Link.styles.d.ts +0 -1
- package/out/ui/packages/link/components/Link.styles.luau +3 -5
- package/out/ui/packages/listItem/components/ListItem.d.ts +6 -0
- package/out/ui/packages/listItem/components/ListItem.luau +155 -40
- package/out/ui/packages/listItem/components/ListItem.styles.d.ts +4 -0
- package/out/ui/packages/listItem/components/ListItem.styles.luau +70 -31
- package/out/ui/packages/listItem/components/listItemInk.d.ts +3 -0
- package/out/ui/packages/listItem/components/listItemInk.luau +14 -0
- package/out/ui/packages/listItem/components/listItemLayout.d.ts +22 -0
- package/out/ui/packages/listItem/components/listItemLayout.luau +68 -0
- package/out/ui/packages/markdown/components/Markdown.d.ts +2 -0
- package/out/ui/packages/markdown/components/Markdown.luau +244 -46
- package/out/ui/packages/markdown/components/Markdown.styles.luau +125 -51
- package/out/ui/packages/markdown/components/MarkdownEditor.luau +215 -146
- package/out/ui/packages/markdown/components/MarkdownEditor.styles.d.ts +1 -0
- package/out/ui/packages/markdown/components/MarkdownEditor.styles.luau +153 -83
- package/out/ui/packages/markdown/index.d.ts +2 -2
- package/out/ui/packages/markdown/init.luau +2 -0
- package/out/ui/packages/markdown/parseMarkdown.d.ts +30 -2
- package/out/ui/packages/markdown/parseMarkdown.luau +453 -25
- package/out/ui/packages/menu/components/Menu.d.ts +4 -1
- package/out/ui/packages/menu/components/Menu.luau +76 -28
- package/out/ui/packages/menu/components/Menu.styles.luau +6 -1
- package/out/ui/packages/menu/components/menuIcon.d.ts +6 -0
- package/out/ui/packages/menu/components/menuIcon.luau +32 -0
- package/out/ui/packages/numberInput/components/NumberInput.d.ts +1 -0
- package/out/ui/packages/numberInput/components/NumberInput.luau +82 -1
- package/out/ui/packages/numberInput/components/numberValue.d.ts +2 -0
- package/out/ui/packages/numberInput/components/numberValue.luau +10 -0
- package/out/ui/packages/numberRangeEditor/components/NumberRangeEditor.luau +9 -1
- package/out/ui/packages/numberRangeEditor/components/NumberRangeEditor.styles.luau +23 -16
- package/out/ui/packages/pager/components/Pager.d.ts +11 -0
- package/out/ui/packages/pager/components/Pager.luau +114 -0
- package/out/ui/packages/pager/components/Pager.styles.d.ts +2 -0
- package/out/ui/packages/pager/components/Pager.styles.luau +66 -0
- package/out/ui/packages/pager/components/pagerStep.d.ts +3 -0
- package/out/ui/packages/pager/components/pagerStep.luau +24 -0
- package/out/ui/packages/pager/index.d.ts +3 -0
- package/out/ui/packages/pager/init.luau +9 -0
- package/out/ui/packages/pagination/components/Pagination.styles.luau +4 -1
- package/out/ui/packages/paper/components/Paper.luau +17 -11
- package/out/ui/packages/paper/components/Paper.styles.luau +12 -5
- package/out/ui/packages/physicalPropertiesEditor/components/PhysicalPropertiesEditor.luau +14 -1
- package/out/ui/packages/physicalPropertiesEditor/components/PhysicalPropertiesEditor.styles.luau +24 -19
- package/out/ui/packages/physicalPropertiesEditor/components/physicalParts.d.ts +5 -0
- package/out/ui/packages/physicalPropertiesEditor/components/physicalParts.luau +22 -0
- package/out/ui/packages/popover/components/Popover.d.ts +12 -0
- package/out/ui/packages/popover/components/Popover.luau +52 -0
- package/out/ui/packages/popover/components/Popover.styles.d.ts +2 -0
- package/out/ui/packages/popover/components/Popover.styles.luau +32 -0
- package/out/ui/packages/popover/index.d.ts +2 -0
- package/out/ui/packages/popover/init.luau +5 -0
- package/out/ui/packages/popup/components/Popup.d.ts +2 -0
- package/out/ui/packages/popup/components/Popup.luau +64 -2
- package/out/ui/packages/popup/components/placement.luau +6 -4
- package/out/ui/packages/progressBar/components/ProgressBar.luau +1 -1
- package/out/ui/packages/progressBar/components/ProgressBar.styles.luau +3 -2
- package/out/ui/packages/radioGroup/components/RadioGroup.d.ts +4 -1
- package/out/ui/packages/radioGroup/components/RadioGroup.luau +53 -9
- package/out/ui/packages/radioGroup/components/RadioGroup.styles.luau +26 -2
- package/out/ui/packages/radioGroup/components/radioHint.d.ts +2 -0
- package/out/ui/packages/radioGroup/components/radioHint.luau +11 -0
- package/out/ui/packages/radioGroup/index.d.ts +1 -1
- package/out/ui/packages/rating/components/Rating.d.ts +1 -1
- package/out/ui/packages/rating/components/Rating.luau +48 -4
- package/out/ui/packages/rating/components/Rating.styles.luau +1 -1
- package/out/ui/packages/rating/components/ratingCommit.d.ts +2 -0
- package/out/ui/packages/rating/components/ratingCommit.luau +11 -0
- package/out/ui/packages/rayEditor/components/RayEditor.luau +9 -1
- package/out/ui/packages/rayEditor/components/RayEditor.styles.luau +17 -11
- package/out/ui/packages/rectEditor/components/RectEditor.luau +9 -1
- package/out/ui/packages/rectEditor/components/RectEditor.styles.luau +49 -42
- package/out/ui/packages/scroll/components/ScrollView.luau +76 -7
- package/out/ui/packages/select/components/Select.d.ts +2 -0
- package/out/ui/packages/select/components/Select.luau +164 -105
- package/out/ui/packages/select/components/Select.styles.d.ts +2 -0
- package/out/ui/packages/select/components/Select.styles.luau +30 -9
- package/out/ui/packages/select/components/selectWidth.d.ts +2 -0
- package/out/ui/packages/select/components/selectWidth.luau +15 -0
- package/out/ui/packages/shadow/components/Shadow.luau +202 -21
- package/out/ui/packages/sidebar/components/Sidebar.styles.luau +1 -0
- package/out/ui/packages/skeleton/components/Skeleton.luau +4 -0
- package/out/ui/packages/slider/components/RangeSlider.d.ts +16 -0
- package/out/ui/packages/slider/components/RangeSlider.luau +232 -0
- package/out/ui/packages/slider/components/RangeSlider.styles.d.ts +7 -0
- package/out/ui/packages/slider/components/RangeSlider.styles.luau +48 -0
- package/out/ui/packages/slider/components/Slider.d.ts +1 -0
- package/out/ui/packages/slider/components/Slider.luau +53 -25
- package/out/ui/packages/slider/components/Slider.styles.d.ts +1 -0
- package/out/ui/packages/slider/components/Slider.styles.luau +19 -5
- package/out/ui/packages/slider/components/rangeValue.d.ts +21 -0
- package/out/ui/packages/slider/components/rangeValue.luau +77 -0
- package/out/ui/packages/slider/components/sliderLabel.d.ts +4 -0
- package/out/ui/packages/slider/components/sliderLabel.luau +30 -0
- package/out/ui/packages/slider/index.d.ts +3 -0
- package/out/ui/packages/slider/init.luau +6 -0
- package/out/ui/packages/snackbar/components/Snackbar.d.ts +1 -0
- package/out/ui/packages/snackbar/components/Snackbar.luau +2 -0
- package/out/ui/packages/sparkline/components/Sparkline.d.ts +3 -0
- package/out/ui/packages/sparkline/components/Sparkline.luau +72 -8
- package/out/ui/packages/sparkline/index.d.ts +1 -1
- package/out/ui/packages/sparkline/init.luau +6 -1
- package/out/ui/packages/sparkline/sparklineLayout.d.ts +17 -0
- package/out/ui/packages/sparkline/sparklineLayout.luau +132 -8
- package/out/ui/packages/speedDial/components/SpeedDial.d.ts +1 -0
- package/out/ui/packages/speedDial/components/SpeedDial.luau +59 -9
- package/out/ui/packages/speedDial/components/SpeedDial.styles.d.ts +1 -0
- package/out/ui/packages/speedDial/components/SpeedDial.styles.luau +50 -3
- package/out/ui/packages/speedDial/components/speedDialLabel.d.ts +4 -0
- package/out/ui/packages/speedDial/components/speedDialLabel.luau +16 -0
- package/out/ui/packages/splitPane/components/splitLook.d.ts +1 -1
- package/out/ui/packages/stateMatrix.d.ts +1 -0
- package/out/ui/packages/stateMatrix.luau +9 -0
- package/out/ui/packages/stepper/components/Stepper.d.ts +2 -0
- package/out/ui/packages/stepper/components/Stepper.luau +35 -7
- package/out/ui/packages/stepper/components/Stepper.styles.luau +12 -6
- package/out/ui/packages/stepper/components/stepState.d.ts +4 -2
- package/out/ui/packages/stepper/components/stepState.luau +12 -1
- package/out/ui/packages/stepper/index.d.ts +1 -1
- package/out/ui/packages/stepper/init.luau +3 -1
- package/out/ui/packages/switch/components/Switch.luau +2 -2
- package/out/ui/packages/switch/components/Switch.styles.luau +2 -5
- package/out/ui/packages/switch/components/switchLook.d.ts +3 -3
- package/out/ui/packages/switch/components/switchLook.luau +4 -10
- package/out/ui/packages/table/components/Table.d.ts +1 -0
- package/out/ui/packages/table/components/Table.luau +99 -57
- package/out/ui/packages/table/components/Table.styles.luau +23 -6
- package/out/ui/packages/table/components/tableColumns.d.ts +2 -0
- package/out/ui/packages/table/components/tableColumns.luau +2 -0
- package/out/ui/packages/table/components/tableSort.d.ts +2 -0
- package/out/ui/packages/table/components/tableSort.luau +95 -0
- package/out/ui/packages/table/index.d.ts +1 -0
- package/out/ui/packages/table/init.luau +1 -0
- package/out/ui/packages/tabs/components/Tabs.luau +77 -6
- package/out/ui/packages/tabs/components/Tabs.styles.luau +12 -11
- package/out/ui/packages/tabs/components/tabIndicator.d.ts +7 -0
- package/out/ui/packages/tabs/components/tabIndicator.luau +21 -0
- package/out/ui/packages/tabs/components/tabScroll.d.ts +2 -0
- package/out/ui/packages/tabs/components/tabScroll.luau +18 -0
- package/out/ui/packages/text/components/Text.d.ts +9 -0
- package/out/ui/packages/text/components/Text.luau +64 -0
- package/out/ui/packages/text/components/textBox.d.ts +12 -0
- package/out/ui/packages/text/components/textBox.luau +21 -0
- package/out/ui/packages/text/index.d.ts +2 -0
- package/out/ui/packages/text/init.luau +5 -0
- package/out/ui/packages/timeField/components/TimeField.d.ts +13 -0
- package/out/ui/packages/timeField/components/TimeField.luau +106 -0
- package/out/ui/packages/timeField/index.d.ts +4 -0
- package/out/ui/packages/timeField/init.luau +9 -0
- package/out/ui/packages/timeField/timeValue.d.ts +8 -0
- package/out/ui/packages/timeField/timeValue.luau +49 -0
- package/out/ui/packages/timeline/components/Timeline.d.ts +12 -0
- package/out/ui/packages/timeline/components/Timeline.luau +102 -0
- package/out/ui/packages/timeline/components/Timeline.styles.d.ts +2 -0
- package/out/ui/packages/timeline/components/Timeline.styles.luau +115 -0
- package/out/ui/packages/timeline/components/timelineRail.d.ts +4 -0
- package/out/ui/packages/timeline/components/timelineRail.luau +15 -0
- package/out/ui/packages/timeline/index.d.ts +3 -0
- package/out/ui/packages/timeline/init.luau +8 -0
- package/out/ui/packages/toast/components/Toast.d.ts +1 -0
- package/out/ui/packages/toast/components/Toast.luau +200 -57
- package/out/ui/packages/toast/components/Toast.styles.luau +40 -20
- package/out/ui/packages/toast/components/toastPlace.d.ts +16 -0
- package/out/ui/packages/toast/components/toastPlace.luau +44 -0
- package/out/ui/packages/toast/enums/ToastVariants.d.ts +2 -1
- package/out/ui/packages/toast/enums/ToastVariants.luau +1 -0
- package/out/ui/packages/toggleButton/components/ToggleButton.luau +43 -4
- package/out/ui/packages/toggleButton/components/ToggleButton.styles.luau +1 -1
- package/out/ui/packages/tooltip/components/Tooltip.d.ts +1 -0
- package/out/ui/packages/tooltip/components/Tooltip.luau +109 -31
- package/out/ui/packages/tooltip/components/Tooltip.styles.luau +31 -1
- package/out/ui/packages/tooltip/components/tooltipBox.d.ts +4 -0
- package/out/ui/packages/tooltip/components/tooltipBox.luau +12 -0
- package/out/ui/packages/tooltip/components/tooltipPointer.d.ts +2 -0
- package/out/ui/packages/tooltip/components/tooltipPointer.luau +11 -0
- package/out/ui/packages/treeView/components/TreeView.luau +12 -13
- package/out/ui/packages/treeView/components/TreeView.styles.luau +6 -0
- package/out/ui/packages/typography/components/Typography.d.ts +2 -0
- package/out/ui/packages/typography/components/Typography.luau +8 -0
- package/out/ui/packages/typography/components/Typography.styles.luau +3 -1
- package/out/ui/packages/udimEditor/components/UDimEditor.luau +9 -1
- package/out/ui/packages/udimEditor/components/UDimEditor.styles.luau +25 -18
- package/out/ui/packages/vectorEditor/components/VectorEditor.luau +18 -3
- package/out/ui/packages/vectorEditor/components/VectorEditor.styles.luau +30 -16
- package/out/ui/packages/virtualList/components/VirtualList.styles.luau +1 -0
- package/out/ui/packages/weekGrid/components/WeekGrid.d.ts +24 -0
- package/out/ui/packages/weekGrid/components/WeekGrid.luau +187 -0
- package/out/ui/packages/weekGrid/components/weekColumns.d.ts +9 -0
- package/out/ui/packages/weekGrid/components/weekColumns.luau +25 -0
- package/out/ui/packages/weekGrid/index.d.ts +3 -0
- package/out/ui/packages/weekGrid/init.luau +8 -0
- package/package.json +2 -2
|
@@ -7,6 +7,7 @@ local useRef = _react.useRef
|
|
|
7
7
|
local useState = _react.useState
|
|
8
8
|
local _services = TS.import(script, TS.getModule(script, "@rbxts", "services"))
|
|
9
9
|
local GuiService = _services.GuiService
|
|
10
|
+
local TextService = _services.TextService
|
|
10
11
|
local UserInputService = _services.UserInputService
|
|
11
12
|
local useReducedMotion = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "hooks").useReducedMotion
|
|
12
13
|
local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "theme")
|
|
@@ -16,6 +17,7 @@ local useTheme = _theme.useTheme
|
|
|
16
17
|
local canActivate = TS.import(script, script.Parent.Parent.Parent, "button", "components", "activation").canActivate
|
|
17
18
|
local spinnerPixels = TS.import(script, script.Parent.Parent.Parent, "button", "components", "buttonLook").spinnerPixels
|
|
18
19
|
local CircularProgress = TS.import(script, script.Parent.Parent.Parent, "circularProgress").CircularProgress
|
|
20
|
+
local Icon = TS.import(script, script.Parent.Parent.Parent, "icon").Icon
|
|
19
21
|
local Input = TS.import(script, script.Parent.Parent.Parent, "input").Input
|
|
20
22
|
local SxHost = TS.import(script, script.Parent.Parent.Parent, "host").SxHost
|
|
21
23
|
local Popup = TS.import(script, script.Parent.Parent.Parent, "popup").Popup
|
|
@@ -37,6 +39,8 @@ local _selectMulti = TS.import(script, script.Parent, "selectMulti")
|
|
|
37
39
|
local includesChoice = _selectMulti.includesChoice
|
|
38
40
|
local selectionLabel = _selectMulti.selectionLabel
|
|
39
41
|
local typeaheadChoice = TS.import(script, script.Parent, "selectTypeahead").typeaheadChoice
|
|
42
|
+
local fieldChrome = TS.import(script, script.Parent.Parent.Parent, "input", "components", "fieldChrome").fieldChrome
|
|
43
|
+
local selectWidth = TS.import(script, script.Parent, "selectWidth").selectWidth
|
|
40
44
|
local stepChoice = TS.import(script, script.Parent, "stepChoice").stepChoice
|
|
41
45
|
local function Select(props)
|
|
42
46
|
local _binding = props
|
|
@@ -60,6 +64,11 @@ local function Select(props)
|
|
|
60
64
|
local empty = _binding.empty
|
|
61
65
|
local reducedProp = _binding.reducedMotion
|
|
62
66
|
local size = _binding.size
|
|
67
|
+
local hasError = _binding.hasError
|
|
68
|
+
if hasError == nil then
|
|
69
|
+
hasError = false
|
|
70
|
+
end
|
|
71
|
+
local helperText = _binding.helperText
|
|
63
72
|
local className = _binding.className
|
|
64
73
|
local sx = _binding.sx
|
|
65
74
|
local id = _binding.id
|
|
@@ -67,10 +76,14 @@ local function Select(props)
|
|
|
67
76
|
local reducedMotion = useReducedMotion(reducedProp)
|
|
68
77
|
local styles = useSelectStyles({
|
|
69
78
|
size = size,
|
|
79
|
+
hasError = hasError,
|
|
80
|
+
helperText = helperText,
|
|
70
81
|
})
|
|
71
82
|
local _binding_1 = useTheme()
|
|
72
83
|
local theme = _binding_1.theme
|
|
73
|
-
local
|
|
84
|
+
local metrics = controlMetrics(theme.density, size)
|
|
85
|
+
local mark = metrics.icon
|
|
86
|
+
local row = metrics.height
|
|
74
87
|
local active = canActivate(disabled, loading)
|
|
75
88
|
local anchor, setAnchor = useState()
|
|
76
89
|
local open, setOpen = useState(defaultOpen == true and not loading)
|
|
@@ -104,6 +117,19 @@ local function Select(props)
|
|
|
104
117
|
local rows = groupRows(filtered)
|
|
105
118
|
local listHeight = if #rows == 0 then row else math.min(#rows * row, theme.spacing.calc(16))
|
|
106
119
|
local menuHeight = listHeight + (if search then row else 0)
|
|
120
|
+
local font = theme.typography.fontFamilies.default or Enum.Font.SourceSans
|
|
121
|
+
local textSize = metrics.font
|
|
122
|
+
local widest = 0
|
|
123
|
+
for _, line in rows do
|
|
124
|
+
local shown = if line.kind == "header" then line.label else optionLabel(line.label, if values ~= nil then includesChoice(values, filtered[line.optionIndex + 1].value) else filtered[line.optionIndex + 1].value == value)
|
|
125
|
+
local bounds = TextService:GetTextSize(shown, textSize, font, Vector2.new(10000, 100))
|
|
126
|
+
if bounds.X > widest then
|
|
127
|
+
widest = bounds.X
|
|
128
|
+
end
|
|
129
|
+
end
|
|
130
|
+
local pad = fieldChrome(metrics.height, theme.padding.calc(1)).padX * 2
|
|
131
|
+
local floor = if anchor ~= nil then anchor.AbsoluteSize.X else 0
|
|
132
|
+
local popupWidth = if #rows == 0 then 0 else selectWidth(widest, pad, floor)
|
|
107
133
|
local _condition_1 = empty
|
|
108
134
|
if _condition_1 == nil then
|
|
109
135
|
local _attributes = {}
|
|
@@ -265,7 +291,7 @@ local function Select(props)
|
|
|
265
291
|
key = "Trigger",
|
|
266
292
|
ref = setAnchor,
|
|
267
293
|
}
|
|
268
|
-
for _k, _v in cx(styles.trigger, current == nil and styles.placeholder, not active and {
|
|
294
|
+
for _k, _v in cx(styles.trigger, current == nil and styles.placeholder, hasError and styles.errorText, not active and {
|
|
269
295
|
TextTransparency = 0.5,
|
|
270
296
|
}) do
|
|
271
297
|
_attributes_1[_k] = _v
|
|
@@ -305,133 +331,166 @@ local function Select(props)
|
|
|
305
331
|
return onKey(input, true)
|
|
306
332
|
end,
|
|
307
333
|
}
|
|
308
|
-
local _attributes_2 = table.clone(cx(styles.padding,
|
|
309
|
-
PaddingRight = UDim.new(0, theme.padding.calc(1
|
|
334
|
+
local _attributes_2 = table.clone(cx(styles.padding, {
|
|
335
|
+
PaddingRight = UDim.new(0, theme.padding.calc(1) + (if loading then spinnerPixels(size) else mark) + theme.padding.calc(1)),
|
|
310
336
|
}))
|
|
311
337
|
setmetatable(_attributes_2, nil)
|
|
312
338
|
local _exp = React.createElement("uipadding", _attributes_2)
|
|
313
339
|
local _attributes_3 = table.clone(styles.corner)
|
|
314
340
|
setmetatable(_attributes_3, nil)
|
|
315
341
|
local _exp_1 = React.createElement("uicorner", _attributes_3)
|
|
316
|
-
local
|
|
342
|
+
local _exp_2 = styles.stroke
|
|
343
|
+
local _condition_3 = focused
|
|
344
|
+
if _condition_3 then
|
|
345
|
+
local _result_2
|
|
346
|
+
if hasError then
|
|
347
|
+
local _object = table.clone(styles.focusStroke)
|
|
348
|
+
setmetatable(_object, nil)
|
|
349
|
+
_object.Color = theme.palette.status.error.main
|
|
350
|
+
_result_2 = _object
|
|
351
|
+
else
|
|
352
|
+
_result_2 = styles.focusStroke
|
|
353
|
+
end
|
|
354
|
+
_condition_3 = _result_2
|
|
355
|
+
end
|
|
356
|
+
local _attributes_4 = table.clone(cx(_exp_2, _condition_3))
|
|
317
357
|
setmetatable(_attributes_4, nil)
|
|
318
|
-
local
|
|
358
|
+
local _exp_3 = React.createElement("textbutton", _attributes_1, _exp, _exp_1, React.createElement("uistroke", _attributes_4), if loading then (React.createElement(CircularProgress, {
|
|
319
359
|
size = spinnerPixels(size),
|
|
320
360
|
thickness = 2,
|
|
321
361
|
color = theme.palette.text.secondary,
|
|
322
362
|
reducedMotion = reducedMotion,
|
|
323
363
|
className = {
|
|
324
364
|
AnchorPoint = Vector2.new(1, 0.5),
|
|
325
|
-
Position = UDim2.new(1,
|
|
365
|
+
Position = UDim2.new(1, spinnerPixels(size) + theme.padding.calc(1), 0.5, 0),
|
|
366
|
+
},
|
|
367
|
+
})) else (React.createElement(Icon, {
|
|
368
|
+
id = "Chevron",
|
|
369
|
+
glyph = "chevronDown",
|
|
370
|
+
size = mark,
|
|
371
|
+
tint = theme.palette.text.secondary,
|
|
372
|
+
className = {
|
|
373
|
+
AnchorPoint = Vector2.new(1, 0.5),
|
|
374
|
+
Position = UDim2.new(1, mark + theme.padding.calc(1), 0.5, 0),
|
|
375
|
+
Rotation = if shown then 180 else 0,
|
|
326
376
|
},
|
|
327
377
|
})))
|
|
328
|
-
local
|
|
329
|
-
if
|
|
378
|
+
local _condition_4 = helperText ~= nil
|
|
379
|
+
if _condition_4 then
|
|
330
380
|
local _attributes_5 = {
|
|
331
|
-
key = "
|
|
381
|
+
key = "Helper",
|
|
332
382
|
}
|
|
333
|
-
for _k, _v in styles.
|
|
383
|
+
for _k, _v in styles.helper do
|
|
334
384
|
_attributes_5[_k] = _v
|
|
335
385
|
end
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
386
|
+
_attributes_5.Text = helperText
|
|
387
|
+
_condition_4 = React.createElement("textlabel", _attributes_5)
|
|
388
|
+
end
|
|
389
|
+
local _attributes_5 = {
|
|
390
|
+
key = "Menu",
|
|
391
|
+
}
|
|
392
|
+
for _k, _v in styles.menu do
|
|
393
|
+
_attributes_5[_k] = _v
|
|
394
|
+
end
|
|
395
|
+
local _exp_4 = React.createElement(Shadow)
|
|
396
|
+
local _attributes_6 = table.clone(styles.corner)
|
|
397
|
+
setmetatable(_attributes_6, nil)
|
|
398
|
+
local _exp_5 = React.createElement("uicorner", _attributes_6)
|
|
399
|
+
local _attributes_7 = table.clone(styles.stroke)
|
|
400
|
+
setmetatable(_attributes_7, nil)
|
|
401
|
+
local _exp_6 = React.createElement("uistroke", _attributes_7)
|
|
402
|
+
local _exp_7 = React.createElement("uilistlayout", {
|
|
403
|
+
FillDirection = Enum.FillDirection.Vertical,
|
|
404
|
+
SortOrder = Enum.SortOrder.LayoutOrder,
|
|
405
|
+
})
|
|
406
|
+
local _condition_5 = search
|
|
407
|
+
if _condition_5 then
|
|
408
|
+
local _attributes_8 = {
|
|
409
|
+
key = "Search",
|
|
410
|
+
}
|
|
411
|
+
for _k, _v in styles.search do
|
|
412
|
+
_attributes_8[_k] = _v
|
|
413
|
+
end
|
|
414
|
+
_attributes_8.LayoutOrder = 1
|
|
415
|
+
_condition_5 = (React.createElement("frame", _attributes_8, React.createElement(Input, {
|
|
416
|
+
text = query,
|
|
417
|
+
placeholder = "Search",
|
|
418
|
+
width = UDim.new(1, 0),
|
|
419
|
+
onInput = function(text)
|
|
420
|
+
setQuery(text)
|
|
421
|
+
setHighlight(0)
|
|
422
|
+
end,
|
|
423
|
+
})))
|
|
424
|
+
end
|
|
425
|
+
return React.createElement(SxHost, _attributes, _exp_3, _condition_4, React.createElement(Popup, {
|
|
426
|
+
open = shown,
|
|
427
|
+
anchor = anchor,
|
|
428
|
+
preferredHeight = menuHeight,
|
|
429
|
+
preferredWidth = popupWidth,
|
|
430
|
+
onDismiss = close,
|
|
431
|
+
onInput = function(input)
|
|
432
|
+
return onKey(input, true)
|
|
433
|
+
end,
|
|
434
|
+
}, React.createElement("frame", _attributes_5, _exp_4, _exp_5, _exp_6, _exp_7, _condition_5, React.createElement("frame", {
|
|
435
|
+
key = "ListHost",
|
|
436
|
+
Size = UDim2.new(1, 0, 1, if search then -row else 0),
|
|
437
|
+
BackgroundTransparency = 1,
|
|
438
|
+
LayoutOrder = 2,
|
|
439
|
+
}, React.createElement(VirtualList, {
|
|
440
|
+
key = "Options",
|
|
441
|
+
items = rows,
|
|
442
|
+
getKey = function(row, index)
|
|
443
|
+
return `{row.kind}-{row.label}-{index}`
|
|
444
|
+
end,
|
|
445
|
+
itemHeight = row,
|
|
446
|
+
listRef = listRef,
|
|
447
|
+
empty = emptyHint,
|
|
448
|
+
className = styles.list,
|
|
449
|
+
renderItem = function(row)
|
|
450
|
+
if row.kind == "header" then
|
|
451
|
+
local _attributes_8 = table.clone(styles.group)
|
|
452
|
+
setmetatable(_attributes_8, nil)
|
|
453
|
+
_attributes_8.Text = row.label
|
|
454
|
+
local _attributes_9 = table.clone(styles.padding)
|
|
455
|
+
setmetatable(_attributes_9, nil)
|
|
456
|
+
return React.createElement("textlabel", _attributes_8, React.createElement("uipadding", _attributes_9))
|
|
457
|
+
end
|
|
458
|
+
local index = row.optionIndex
|
|
459
|
+
local picked = if values ~= nil then includesChoice(values, filtered[index + 1].value) else filtered[index + 1].value == value
|
|
349
460
|
local _attributes_8 = {
|
|
350
|
-
|
|
461
|
+
ref = function(button)
|
|
462
|
+
if button and index == highlight and canFocusGui(button) then
|
|
463
|
+
GuiService.SelectedObject = button
|
|
464
|
+
end
|
|
465
|
+
end,
|
|
351
466
|
}
|
|
352
|
-
for _k, _v in styles.
|
|
467
|
+
for _k, _v in cx(styles.option, picked and styles.selected, index == highlight and styles.highlighted, row.disabled == true and styles.disabledOption) do
|
|
353
468
|
_attributes_8[_k] = _v
|
|
354
469
|
end
|
|
355
|
-
_attributes_8.
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
setQuery(text)
|
|
362
|
-
setHighlight(0)
|
|
470
|
+
_attributes_8.Text = optionLabel(row.label, picked)
|
|
471
|
+
_attributes_8.Active = row.disabled ~= true
|
|
472
|
+
_attributes_8.Selectable = row.disabled ~= true
|
|
473
|
+
_attributes_8.Event = {
|
|
474
|
+
Activated = function()
|
|
475
|
+
return choose(index, true)
|
|
363
476
|
end,
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
getKey = function(row, index)
|
|
382
|
-
return `{row.kind}-{row.label}-{index}`
|
|
383
|
-
end,
|
|
384
|
-
itemHeight = row,
|
|
385
|
-
listRef = listRef,
|
|
386
|
-
empty = emptyHint,
|
|
387
|
-
className = styles.list,
|
|
388
|
-
renderItem = function(row)
|
|
389
|
-
if row.kind == "header" then
|
|
390
|
-
local _attributes_8 = table.clone(styles.group)
|
|
391
|
-
setmetatable(_attributes_8, nil)
|
|
392
|
-
_attributes_8.Text = row.label
|
|
393
|
-
local _attributes_9 = table.clone(styles.padding)
|
|
394
|
-
setmetatable(_attributes_9, nil)
|
|
395
|
-
return React.createElement("textlabel", _attributes_8, React.createElement("uipadding", _attributes_9))
|
|
396
|
-
end
|
|
397
|
-
local index = row.optionIndex
|
|
398
|
-
local picked = if values ~= nil then includesChoice(values, filtered[index + 1].value) else filtered[index + 1].value == value
|
|
399
|
-
local _attributes_8 = {
|
|
400
|
-
ref = function(button)
|
|
401
|
-
if button and index == highlight and canFocusGui(button) then
|
|
402
|
-
GuiService.SelectedObject = button
|
|
403
|
-
end
|
|
404
|
-
end,
|
|
405
|
-
}
|
|
406
|
-
for _k, _v in cx(styles.option, picked and styles.selected, index == highlight and styles.highlighted, row.disabled == true and styles.disabledOption) do
|
|
407
|
-
_attributes_8[_k] = _v
|
|
408
|
-
end
|
|
409
|
-
_attributes_8.Text = optionLabel(row.label, picked)
|
|
410
|
-
_attributes_8.Active = row.disabled ~= true
|
|
411
|
-
_attributes_8.Selectable = row.disabled ~= true
|
|
412
|
-
_attributes_8.Event = {
|
|
413
|
-
Activated = function()
|
|
414
|
-
return choose(index, true)
|
|
415
|
-
end,
|
|
416
|
-
MouseEnter = function()
|
|
417
|
-
if row.disabled ~= true then
|
|
418
|
-
setHighlight(index)
|
|
419
|
-
end
|
|
420
|
-
end,
|
|
421
|
-
SelectionGained = function()
|
|
422
|
-
return setHighlight(index)
|
|
423
|
-
end,
|
|
424
|
-
InputBegan = function(_, input)
|
|
425
|
-
return onKey(input, true)
|
|
426
|
-
end,
|
|
427
|
-
}
|
|
428
|
-
local _attributes_9 = table.clone(styles.padding)
|
|
429
|
-
setmetatable(_attributes_9, nil)
|
|
430
|
-
return React.createElement("textbutton", _attributes_8, React.createElement("uipadding", _attributes_9))
|
|
431
|
-
end,
|
|
432
|
-
})))))
|
|
433
|
-
end
|
|
434
|
-
return React.createElement(SxHost, _attributes, _exp_2, _condition_3)
|
|
477
|
+
MouseEnter = function()
|
|
478
|
+
if row.disabled ~= true then
|
|
479
|
+
setHighlight(index)
|
|
480
|
+
end
|
|
481
|
+
end,
|
|
482
|
+
SelectionGained = function()
|
|
483
|
+
return setHighlight(index)
|
|
484
|
+
end,
|
|
485
|
+
InputBegan = function(_, input)
|
|
486
|
+
return onKey(input, true)
|
|
487
|
+
end,
|
|
488
|
+
}
|
|
489
|
+
local _attributes_9 = table.clone(styles.padding)
|
|
490
|
+
setmetatable(_attributes_9, nil)
|
|
491
|
+
return React.createElement("textbutton", _attributes_8, React.createElement("uipadding", _attributes_9))
|
|
492
|
+
end,
|
|
493
|
+
})))))
|
|
435
494
|
end
|
|
436
495
|
local default = Select
|
|
437
496
|
return {
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { ControlSize } from "../../../../theme/index";
|
|
2
2
|
export interface SelectStyleProps {
|
|
3
3
|
size?: ControlSize;
|
|
4
|
+
hasError?: boolean;
|
|
5
|
+
helperText?: string;
|
|
4
6
|
}
|
|
5
7
|
declare const useSelectStyles: (props: SelectStyleProps) => import("../../../../theme/index").ClassNameMap<string>;
|
|
6
8
|
export default useSelectStyles;
|
|
@@ -4,17 +4,26 @@ local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "the
|
|
|
4
4
|
local controlMetrics = _theme.controlMetrics
|
|
5
5
|
local createStyles = _theme.createStyles
|
|
6
6
|
local componentStyles = _theme.componentStyles
|
|
7
|
+
local focusRing = _theme.focusRing
|
|
8
|
+
local fieldChrome = TS.import(script, script.Parent.Parent.Parent, "input", "components", "fieldChrome").fieldChrome
|
|
7
9
|
local useSelectStyles = componentStyles("Select", function(theme, _param)
|
|
8
10
|
local size = _param.size
|
|
11
|
+
local hasError = _param.hasError
|
|
12
|
+
if hasError == nil then
|
|
13
|
+
hasError = false
|
|
14
|
+
end
|
|
15
|
+
local helperText = _param.helperText
|
|
9
16
|
local metrics = controlMetrics(theme.density, size)
|
|
17
|
+
local chrome = fieldChrome(metrics.height, theme.padding.calc(1))
|
|
18
|
+
local withHelper = helperText ~= nil
|
|
10
19
|
return createStyles({
|
|
11
20
|
root = {
|
|
12
|
-
Size = UDim2.fromOffset(theme.spacing.calc(12), metrics.height),
|
|
21
|
+
Size = UDim2.fromOffset(theme.spacing.calc(12), if withHelper then chrome.height + metrics.height else chrome.height),
|
|
13
22
|
BackgroundTransparency = 1,
|
|
14
23
|
BorderSizePixel = 0,
|
|
15
24
|
},
|
|
16
25
|
trigger = {
|
|
17
|
-
Size = UDim2.
|
|
26
|
+
Size = UDim2.new(1, 0, 0, chrome.height),
|
|
18
27
|
BackgroundColor3 = theme.palette.surface.input,
|
|
19
28
|
BorderSizePixel = 0,
|
|
20
29
|
AutoButtonColor = false,
|
|
@@ -28,8 +37,8 @@ local useSelectStyles = componentStyles("Select", function(theme, _param)
|
|
|
28
37
|
TextColor3 = theme.palette.text.secondary,
|
|
29
38
|
},
|
|
30
39
|
padding = {
|
|
31
|
-
PaddingLeft = UDim.new(0,
|
|
32
|
-
PaddingRight = UDim.new(0,
|
|
40
|
+
PaddingLeft = UDim.new(0, chrome.padX),
|
|
41
|
+
PaddingRight = UDim.new(0, chrome.padX),
|
|
33
42
|
},
|
|
34
43
|
menu = {
|
|
35
44
|
Size = UDim2.fromScale(1, 1),
|
|
@@ -88,14 +97,26 @@ local useSelectStyles = componentStyles("Select", function(theme, _param)
|
|
|
88
97
|
CornerRadius = UDim.new(0, theme.shape.borderRadius),
|
|
89
98
|
},
|
|
90
99
|
stroke = {
|
|
91
|
-
Color = theme.palette.border,
|
|
100
|
+
Color = if hasError then theme.palette.status.error.main else theme.palette.border,
|
|
101
|
+
Transparency = 0,
|
|
102
|
+
Thickness = 1,
|
|
92
103
|
ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
|
|
93
104
|
},
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
105
|
+
errorText = {
|
|
106
|
+
TextColor3 = theme.palette.status.error.main,
|
|
107
|
+
},
|
|
108
|
+
helper = {
|
|
109
|
+
Size = UDim2.new(1, 0, 0, theme.spacing.calc(2)),
|
|
110
|
+
Position = UDim2.new(0, 0, 1, 0),
|
|
111
|
+
AnchorPoint = Vector2.new(0, 1),
|
|
112
|
+
BackgroundTransparency = 1,
|
|
113
|
+
BorderSizePixel = 0,
|
|
114
|
+
TextColor3 = if hasError then theme.palette.status.error.main else theme.palette.text.secondary,
|
|
115
|
+
Font = theme.typography.fontFamilies.default,
|
|
116
|
+
TextSize = metrics.font,
|
|
117
|
+
TextXAlignment = Enum.TextXAlignment.Left,
|
|
98
118
|
},
|
|
119
|
+
focusStroke = focusRing(theme.palette.focus),
|
|
99
120
|
})
|
|
100
121
|
end)
|
|
101
122
|
local default = useSelectStyles
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
-- Compiled with roblox-ts v3.0.0
|
|
2
|
+
--* Grow past a narrow field so the option fits. Stay at least as wide as the field.
|
|
3
|
+
local function selectWidth(text, pad, floor)
|
|
4
|
+
local need = text + pad
|
|
5
|
+
if need < 0 then
|
|
6
|
+
need = 0
|
|
7
|
+
end
|
|
8
|
+
if floor > need then
|
|
9
|
+
return floor
|
|
10
|
+
end
|
|
11
|
+
return need
|
|
12
|
+
end
|
|
13
|
+
return {
|
|
14
|
+
selectWidth = selectWidth,
|
|
15
|
+
}
|