@rbxts/uiblox 0.1.53 → 0.2.0-alpha.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.
- package/README.md +107 -28
- package/out/foundation/guard.d.ts +3 -0
- package/out/foundation/guard.luau +23 -0
- package/out/foundation/index.d.ts +1 -0
- package/out/foundation/init.luau +8 -0
- package/out/hooks/breakpoints.d.ts +10 -0
- package/out/hooks/breakpoints.luau +60 -0
- package/out/hooks/index.d.ts +4 -0
- package/out/hooks/init.luau +10 -0
- package/out/hooks/useBreakpoints.d.ts +6 -0
- package/out/hooks/useBreakpoints.luau +39 -0
- package/out/hooks/useReducedMotion.d.ts +1 -0
- package/out/hooks/useReducedMotion.luau +12 -0
- package/out/index.d.ts +3 -0
- package/out/init.luau +9 -0
- package/out/interaction/index.d.ts +4 -0
- package/out/interaction/init.luau +9 -0
- package/out/interaction/pointerRoute.d.ts +6 -0
- package/out/interaction/pointerRoute.luau +35 -0
- package/out/interaction/usePointer.d.ts +11 -0
- package/out/interaction/usePointer.luau +99 -0
- package/out/theme/constants/ColorConstants.d.ts +0 -3
- package/out/theme/constants/ColorConstants.luau +0 -96
- package/out/theme/constants/NumberConstants.d.ts +1 -1
- package/out/theme/constants/NumberConstants.luau +3 -4
- package/out/theme/context/ThemeProvider.d.ts +3 -0
- package/out/theme/context/ThemeProvider.luau +15 -8
- package/out/theme/context/themeScope.d.ts +5 -0
- package/out/theme/context/themeScope.luau +7 -0
- package/out/theme/hooks/useTheme.luau +15 -14
- package/out/theme/interfaces/density/controlMetrics.d.ts +21 -0
- package/out/theme/interfaces/density/controlMetrics.luau +67 -0
- package/out/theme/interfaces/density/index.d.ts +1 -0
- package/out/theme/interfaces/density/init.luau +7 -0
- package/out/theme/interfaces/index.d.ts +1 -0
- package/out/theme/interfaces/init.luau +3 -0
- package/out/theme/interfaces/palette/Palette.d.ts +39 -18
- package/out/theme/interfaces/palette/colors/index.d.ts +0 -1
- package/out/theme/interfaces/palette/index.d.ts +1 -0
- package/out/theme/interfaces/theme/Theme.d.ts +13 -0
- package/out/theme/interfaces/theme/ThemeConstants.d.ts +0 -18
- package/out/theme/interfaces/typography/FontSizes.d.ts +1 -1
- package/out/theme/interfaces/typography/FontSizes.luau +7 -7
- package/out/theme/styles/index.d.ts +1 -2
- package/out/theme/styles/init.luau +3 -1
- package/out/theme/styles/types/index.d.ts +0 -1
- package/out/theme/styles/utilities/classNames.d.ts +3 -2
- package/out/theme/styles/utilities/classNames.luau +7 -173
- package/out/theme/styles/utilities/componentStyles.d.ts +7 -0
- package/out/theme/styles/utilities/componentStyles.luau +31 -0
- package/out/theme/styles/utilities/componentTheme.d.ts +20 -0
- package/out/theme/styles/utilities/componentTheme.luau +53 -0
- package/out/theme/styles/utilities/createStyles.d.ts +1 -2
- package/out/theme/styles/utilities/index.d.ts +5 -1
- package/out/theme/styles/utilities/init.luau +9 -1
- package/out/theme/styles/utilities/makeStyles.luau +14 -15
- package/out/theme/styles/utilities/resolveStyle.d.ts +32 -0
- package/out/theme/styles/utilities/resolveStyle.luau +66 -0
- package/out/theme/styles/utilities/styleCache.d.ts +2 -0
- package/out/theme/styles/utilities/styleCache.luau +68 -0
- package/out/theme/styles/utilities/variants.d.ts +19 -0
- package/out/theme/styles/utilities/variants.luau +59 -0
- package/out/theme/themes/DarkTheme.luau +4 -57
- package/out/theme/themes/LightTheme.luau +4 -57
- package/out/theme/themes/createPalette.d.ts +3 -0
- package/out/theme/themes/createPalette.luau +111 -0
- package/out/theme/themes/index.d.ts +1 -0
- package/out/theme/themes/init.luau +3 -0
- package/out/theme/types/types.d.ts +1 -0
- package/out/theme/utilites/colorMath.d.ts +8 -0
- package/out/theme/utilites/colorMath.luau +35 -0
- package/out/theme/utilites/index.d.ts +1 -0
- package/out/theme/utilites/init.luau +6 -0
- package/out/ui/enums/Icons.d.ts +5 -1
- package/out/ui/enums/Icons.luau +4 -0
- package/out/ui/index.d.ts +12 -0
- package/out/ui/init.luau +5 -0
- package/out/ui/packages/accordion/components/Accordion.d.ts +11 -0
- package/out/ui/packages/accordion/components/Accordion.luau +93 -0
- package/out/ui/packages/accordion/components/Accordion.styles.d.ts +4 -0
- package/out/ui/packages/accordion/components/Accordion.styles.luau +65 -0
- package/out/ui/packages/accordion/components/accordionOpen.d.ts +1 -0
- package/out/ui/packages/accordion/components/accordionOpen.luau +10 -0
- package/out/ui/packages/accordion/index.d.ts +2 -0
- package/out/ui/packages/accordion/init.luau +5 -0
- package/out/ui/packages/appBar/components/AppBar.d.ts +10 -0
- package/out/ui/packages/appBar/components/AppBar.luau +77 -0
- package/out/ui/packages/appBar/components/AppBar.styles.d.ts +6 -0
- package/out/ui/packages/appBar/components/AppBar.styles.luau +66 -0
- package/out/ui/packages/appBar/index.d.ts +3 -0
- package/out/ui/packages/appBar/init.luau +5 -0
- package/out/ui/packages/assetField/components/AssetField.d.ts +10 -0
- package/out/ui/packages/assetField/components/AssetField.luau +75 -0
- package/out/ui/packages/assetField/components/AssetField.styles.d.ts +2 -0
- package/out/ui/packages/assetField/components/AssetField.styles.luau +33 -0
- package/out/ui/packages/assetField/components/assetPreviewUri.d.ts +1 -0
- package/out/ui/packages/assetField/components/assetPreviewUri.luau +25 -0
- package/out/ui/packages/assetField/index.d.ts +2 -0
- package/out/ui/packages/assetField/init.luau +5 -0
- package/out/ui/packages/autocomplete/components/Autocomplete.d.ts +5 -0
- package/out/ui/packages/autocomplete/components/Autocomplete.luau +47 -0
- package/out/ui/packages/autocomplete/components/autocompleteSearchable.d.ts +1 -0
- package/out/ui/packages/autocomplete/components/autocompleteSearchable.luau +7 -0
- package/out/ui/packages/autocomplete/index.d.ts +2 -0
- package/out/ui/packages/autocomplete/init.luau +5 -0
- package/out/ui/packages/avatar/components/Avatar.d.ts +8 -0
- package/out/ui/packages/avatar/components/Avatar.luau +69 -0
- package/out/ui/packages/avatar/components/Avatar.styles.d.ts +4 -0
- package/out/ui/packages/avatar/components/Avatar.styles.luau +39 -0
- package/out/ui/packages/avatar/components/avatarText.d.ts +1 -0
- package/out/ui/packages/avatar/components/avatarText.luau +17 -0
- package/out/ui/packages/avatar/index.d.ts +3 -0
- package/out/ui/packages/avatar/init.luau +6 -0
- package/out/ui/packages/badge/components/Badge.d.ts +10 -0
- package/out/ui/packages/badge/components/Badge.luau +69 -0
- package/out/ui/packages/badge/components/Badge.styles.d.ts +2 -0
- package/out/ui/packages/badge/components/Badge.styles.luau +38 -0
- package/out/ui/packages/badge/components/badgeValue.d.ts +1 -0
- package/out/ui/packages/badge/components/badgeValue.luau +7 -0
- package/out/ui/packages/badge/index.d.ts +3 -0
- package/out/ui/packages/badge/init.luau +6 -0
- package/out/ui/packages/bottomNavigation/components/BottomNavigation.d.ts +10 -0
- package/out/ui/packages/bottomNavigation/components/BottomNavigation.luau +86 -0
- package/out/ui/packages/bottomNavigation/components/BottomNavigation.styles.d.ts +2 -0
- package/out/ui/packages/bottomNavigation/components/BottomNavigation.styles.luau +58 -0
- package/out/ui/packages/bottomNavigation/index.d.ts +2 -0
- package/out/ui/packages/bottomNavigation/init.luau +5 -0
- package/out/ui/packages/breadcrumbs/components/Breadcrumbs.d.ts +11 -0
- package/out/ui/packages/breadcrumbs/components/Breadcrumbs.luau +82 -0
- package/out/ui/packages/breadcrumbs/components/Breadcrumbs.styles.d.ts +2 -0
- package/out/ui/packages/breadcrumbs/components/Breadcrumbs.styles.luau +47 -0
- package/out/ui/packages/breadcrumbs/components/breadcrumbItems.d.ts +1 -0
- package/out/ui/packages/breadcrumbs/components/breadcrumbItems.luau +7 -0
- package/out/ui/packages/breadcrumbs/index.d.ts +2 -0
- package/out/ui/packages/breadcrumbs/init.luau +5 -0
- package/out/ui/packages/brickColorPicker/components/BrickColorPicker.d.ts +9 -0
- package/out/ui/packages/brickColorPicker/components/BrickColorPicker.luau +234 -0
- package/out/ui/packages/brickColorPicker/components/BrickColorPicker.styles.d.ts +2 -0
- package/out/ui/packages/brickColorPicker/components/BrickColorPicker.styles.luau +98 -0
- package/out/ui/packages/brickColorPicker/components/brickColorCatalog.d.ts +1 -0
- package/out/ui/packages/brickColorPicker/components/brickColorCatalog.luau +26 -0
- package/out/ui/packages/brickColorPicker/components/brickColorFilter.d.ts +2 -0
- package/out/ui/packages/brickColorPicker/components/brickColorFilter.luau +26 -0
- package/out/ui/packages/brickColorPicker/index.d.ts +3 -0
- package/out/ui/packages/brickColorPicker/init.luau +8 -0
- package/out/ui/packages/button/components/Button.d.ts +4 -0
- package/out/ui/packages/button/components/Button.luau +86 -34
- package/out/ui/packages/button/components/Button.styles.luau +15 -35
- package/out/ui/packages/button/components/activation.d.ts +1 -0
- package/out/ui/packages/button/components/activation.luau +7 -0
- package/out/ui/packages/button/components/buttonLook.d.ts +12 -0
- package/out/ui/packages/button/components/buttonLook.luau +55 -0
- package/out/ui/packages/button/types/ButtonSize.d.ts +1 -1
- package/out/ui/packages/card/components/Card.d.ts +11 -0
- package/out/ui/packages/card/components/Card.luau +74 -0
- package/out/ui/packages/card/components/Card.styles.d.ts +2 -0
- package/out/ui/packages/card/components/Card.styles.luau +66 -0
- package/out/ui/packages/card/index.d.ts +2 -0
- package/out/ui/packages/card/init.luau +5 -0
- package/out/ui/packages/cframeEditor/components/CFrameEditor.d.ts +8 -0
- package/out/ui/packages/cframeEditor/components/CFrameEditor.luau +89 -0
- package/out/ui/packages/cframeEditor/components/CFrameEditor.styles.d.ts +2 -0
- package/out/ui/packages/cframeEditor/components/CFrameEditor.styles.luau +46 -0
- package/out/ui/packages/cframeEditor/components/cframeValue.d.ts +3 -0
- package/out/ui/packages/cframeEditor/components/cframeValue.luau +15 -0
- package/out/ui/packages/cframeEditor/index.d.ts +2 -0
- package/out/ui/packages/cframeEditor/init.luau +5 -0
- package/out/ui/packages/checkbox/components/Checkbox.d.ts +11 -0
- package/out/ui/packages/checkbox/components/Checkbox.luau +136 -0
- package/out/ui/packages/checkbox/components/Checkbox.styles.d.ts +6 -0
- package/out/ui/packages/checkbox/components/Checkbox.styles.luau +69 -0
- package/out/ui/packages/checkbox/components/checkboxLook.d.ts +5 -0
- package/out/ui/packages/checkbox/components/checkboxLook.luau +52 -0
- package/out/ui/packages/checkbox/components/nextChecked.d.ts +1 -0
- package/out/ui/packages/checkbox/components/nextChecked.luau +7 -0
- package/out/ui/packages/checkbox/index.d.ts +2 -0
- package/out/ui/packages/checkbox/init.luau +5 -0
- package/out/ui/packages/chip/components/Chip.d.ts +9 -0
- package/out/ui/packages/chip/components/Chip.luau +63 -0
- package/out/ui/packages/chip/components/Chip.styles.d.ts +5 -0
- package/out/ui/packages/chip/components/Chip.styles.luau +47 -0
- package/out/ui/packages/chip/index.d.ts +2 -0
- package/out/ui/packages/chip/init.luau +5 -0
- package/out/ui/packages/circularProgress/components/CircularProgress.d.ts +11 -0
- package/out/ui/packages/circularProgress/components/CircularProgress.luau +109 -0
- package/out/ui/packages/circularProgress/index.d.ts +2 -0
- package/out/ui/packages/circularProgress/init.luau +5 -0
- package/out/ui/packages/colorPicker/components/ColorPicker.d.ts +8 -0
- package/out/ui/packages/colorPicker/components/ColorPicker.luau +512 -0
- package/out/ui/packages/colorPicker/components/ColorPicker.styles.d.ts +2 -0
- package/out/ui/packages/colorPicker/components/ColorPicker.styles.luau +145 -0
- package/out/ui/packages/colorPicker/components/ColorSequenceEditor.d.ts +8 -0
- package/out/ui/packages/colorPicker/components/ColorSequenceEditor.luau +190 -0
- package/out/ui/packages/colorPicker/components/NumberSequenceEditor.d.ts +8 -0
- package/out/ui/packages/colorPicker/components/NumberSequenceEditor.luau +240 -0
- package/out/ui/packages/colorPicker/components/colorValue.d.ts +22 -0
- package/out/ui/packages/colorPicker/components/colorValue.luau +157 -0
- package/out/ui/packages/colorPicker/components/sequenceValue.d.ts +26 -0
- package/out/ui/packages/colorPicker/components/sequenceValue.luau +307 -0
- package/out/ui/packages/colorPicker/index.d.ts +11 -0
- package/out/ui/packages/colorPicker/init.luau +37 -0
- package/out/ui/packages/dialog/components/Dialog.d.ts +11 -0
- package/out/ui/packages/dialog/components/Dialog.luau +56 -0
- package/out/ui/packages/dialog/components/Dialog.styles.d.ts +2 -0
- package/out/ui/packages/dialog/components/Dialog.styles.luau +55 -0
- package/out/ui/packages/dialog/index.d.ts +2 -0
- package/out/ui/packages/dialog/init.luau +5 -0
- package/out/ui/packages/divider/components/Divider.luau +6 -0
- package/out/ui/packages/divider/components/Divider.styles.luau +4 -4
- package/out/ui/packages/drawer/components/Drawer.d.ts +11 -0
- package/out/ui/packages/drawer/components/Drawer.luau +77 -0
- package/out/ui/packages/drawer/components/Drawer.styles.d.ts +2 -0
- package/out/ui/packages/drawer/components/Drawer.styles.luau +40 -0
- package/out/ui/packages/drawer/components/drawerPlacement.d.ts +2 -0
- package/out/ui/packages/drawer/components/drawerPlacement.luau +7 -0
- package/out/ui/packages/drawer/index.d.ts +3 -0
- package/out/ui/packages/drawer/init.luau +5 -0
- package/out/ui/packages/enumPicker/components/EnumPicker.d.ts +11 -0
- package/out/ui/packages/enumPicker/components/EnumPicker.luau +42 -0
- package/out/ui/packages/enumPicker/components/enumOptions.d.ts +5 -0
- package/out/ui/packages/enumPicker/components/enumOptions.luau +28 -0
- package/out/ui/packages/enumPicker/index.d.ts +2 -0
- package/out/ui/packages/enumPicker/init.luau +5 -0
- package/out/ui/packages/fab/components/Fab.d.ts +13 -0
- package/out/ui/packages/fab/components/Fab.luau +128 -0
- package/out/ui/packages/fab/components/Fab.styles.d.ts +7 -0
- package/out/ui/packages/fab/components/Fab.styles.luau +40 -0
- package/out/ui/packages/fab/components/fabSize.d.ts +3 -0
- package/out/ui/packages/fab/components/fabSize.luau +29 -0
- package/out/ui/packages/fab/index.d.ts +3 -0
- package/out/ui/packages/fab/init.luau +8 -0
- package/out/ui/packages/fontEditor/components/FontEditor.d.ts +8 -0
- package/out/ui/packages/fontEditor/components/FontEditor.luau +223 -0
- package/out/ui/packages/fontEditor/components/FontEditor.styles.d.ts +2 -0
- package/out/ui/packages/fontEditor/components/FontEditor.styles.luau +56 -0
- package/out/ui/packages/fontEditor/components/fontValue.d.ts +10 -0
- package/out/ui/packages/fontEditor/components/fontValue.luau +81 -0
- package/out/ui/packages/fontEditor/index.d.ts +4 -0
- package/out/ui/packages/fontEditor/init.luau +10 -0
- package/out/ui/packages/gradientEditor/components/GradientEditor.d.ts +10 -0
- package/out/ui/packages/gradientEditor/components/GradientEditor.luau +156 -0
- package/out/ui/packages/gradientEditor/components/GradientEditor.styles.d.ts +2 -0
- package/out/ui/packages/gradientEditor/components/GradientEditor.styles.luau +37 -0
- package/out/ui/packages/gradientEditor/components/gradientPatch.d.ts +8 -0
- package/out/ui/packages/gradientEditor/components/gradientPatch.luau +17 -0
- package/out/ui/packages/gradientEditor/components/gradientValue.d.ts +9 -0
- package/out/ui/packages/gradientEditor/components/gradientValue.luau +23 -0
- package/out/ui/packages/gradientEditor/index.d.ts +2 -0
- package/out/ui/packages/gradientEditor/init.luau +5 -0
- package/out/ui/packages/icon/components/Icon.luau +6 -0
- package/out/ui/packages/icon/components/Icon.styles.luau +7 -7
- package/out/ui/packages/iconButton/components/IconButton.d.ts +3 -0
- package/out/ui/packages/iconButton/components/IconButton.luau +53 -5
- package/out/ui/packages/iconButton/components/IconButton.styles.luau +7 -7
- package/out/ui/packages/index.d.ts +49 -0
- package/out/ui/packages/init.luau +147 -0
- package/out/ui/packages/input/components/Input.d.ts +8 -1
- package/out/ui/packages/input/components/Input.luau +180 -60
- package/out/ui/packages/input/components/Input.styles.d.ts +3 -1
- package/out/ui/packages/input/components/Input.styles.luau +79 -53
- package/out/ui/packages/input/components/inputDraft.d.ts +1 -0
- package/out/ui/packages/input/components/inputDraft.luau +17 -0
- package/out/ui/packages/input/components/inputInsets.d.ts +4 -0
- package/out/ui/packages/input/components/inputInsets.luau +10 -0
- package/out/ui/packages/layout/components/Grid.luau +8 -2
- package/out/ui/packages/layout/components/List.luau +8 -2
- package/out/ui/packages/listItem/components/ListItem.d.ts +9 -0
- package/out/ui/packages/listItem/components/ListItem.luau +67 -0
- package/out/ui/packages/listItem/components/ListItem.styles.d.ts +5 -0
- package/out/ui/packages/listItem/components/ListItem.styles.luau +64 -0
- package/out/ui/packages/listItem/index.d.ts +2 -0
- package/out/ui/packages/listItem/init.luau +5 -0
- package/out/ui/packages/loadingStroke/components/LoadingStroke.luau +11 -2
- package/out/ui/packages/menu/components/Menu.d.ts +14 -0
- package/out/ui/packages/menu/components/Menu.luau +60 -0
- package/out/ui/packages/menu/components/Menu.styles.d.ts +2 -0
- package/out/ui/packages/menu/components/Menu.styles.luau +26 -0
- package/out/ui/packages/menu/index.d.ts +2 -0
- package/out/ui/packages/menu/init.luau +5 -0
- package/out/ui/packages/modal/components/Modal.d.ts +9 -0
- package/out/ui/packages/modal/components/Modal.luau +97 -0
- package/out/ui/packages/modal/components/Modal.styles.d.ts +2 -0
- package/out/ui/packages/modal/components/Modal.styles.luau +47 -0
- package/out/ui/packages/modal/components/dismissInput.d.ts +1 -0
- package/out/ui/packages/modal/components/dismissInput.luau +8 -0
- package/out/ui/packages/modal/components/focusTrap.d.ts +2 -0
- package/out/ui/packages/modal/components/focusTrap.luau +22 -0
- package/out/ui/packages/modal/index.d.ts +2 -0
- package/out/ui/packages/modal/init.luau +5 -0
- package/out/ui/packages/motion/duration.d.ts +2 -0
- package/out/ui/packages/motion/duration.luau +17 -0
- package/out/ui/packages/motion/index.d.ts +5 -0
- package/out/ui/packages/motion/init.luau +16 -0
- package/out/ui/packages/motion/loop.d.ts +1 -0
- package/out/ui/packages/motion/loop.luau +18 -0
- package/out/ui/packages/motion/play.d.ts +1 -0
- package/out/ui/packages/motion/play.luau +23 -0
- package/out/ui/packages/motion/resolveReduced.d.ts +1 -0
- package/out/ui/packages/motion/resolveReduced.luau +10 -0
- package/out/ui/packages/motion/unit.d.ts +8 -0
- package/out/ui/packages/motion/unit.luau +80 -0
- package/out/ui/packages/numberInput/components/NumberInput.d.ts +16 -0
- package/out/ui/packages/numberInput/components/NumberInput.luau +48 -0
- package/out/ui/packages/numberInput/components/numberValue.d.ts +2 -0
- package/out/ui/packages/numberInput/components/numberValue.luau +29 -0
- package/out/ui/packages/numberInput/index.d.ts +2 -0
- package/out/ui/packages/numberInput/init.luau +5 -0
- package/out/ui/packages/numberRangeEditor/components/NumberRangeEditor.d.ts +8 -0
- package/out/ui/packages/numberRangeEditor/components/NumberRangeEditor.luau +96 -0
- package/out/ui/packages/numberRangeEditor/components/NumberRangeEditor.styles.d.ts +2 -0
- package/out/ui/packages/numberRangeEditor/components/NumberRangeEditor.styles.luau +41 -0
- package/out/ui/packages/numberRangeEditor/components/numberRangeValue.d.ts +4 -0
- package/out/ui/packages/numberRangeEditor/components/numberRangeValue.luau +16 -0
- package/out/ui/packages/numberRangeEditor/index.d.ts +2 -0
- package/out/ui/packages/numberRangeEditor/init.luau +5 -0
- package/out/ui/packages/pagination/components/Pagination.d.ts +9 -0
- package/out/ui/packages/pagination/components/Pagination.luau +72 -0
- package/out/ui/packages/pagination/components/Pagination.styles.d.ts +2 -0
- package/out/ui/packages/pagination/components/Pagination.styles.luau +39 -0
- package/out/ui/packages/pagination/components/pageRange.d.ts +1 -0
- package/out/ui/packages/pagination/components/pageRange.luau +24 -0
- package/out/ui/packages/pagination/index.d.ts +2 -0
- package/out/ui/packages/pagination/init.luau +5 -0
- package/out/ui/packages/paper/components/Paper.d.ts +8 -0
- package/out/ui/packages/paper/components/Paper.luau +31 -0
- package/out/ui/packages/paper/components/Paper.styles.d.ts +4 -0
- package/out/ui/packages/paper/components/Paper.styles.luau +32 -0
- package/out/ui/packages/paper/index.d.ts +2 -0
- package/out/ui/packages/paper/init.luau +5 -0
- package/out/ui/packages/physicalPropertiesEditor/components/PhysicalPropertiesEditor.d.ts +8 -0
- package/out/ui/packages/physicalPropertiesEditor/components/PhysicalPropertiesEditor.luau +85 -0
- package/out/ui/packages/physicalPropertiesEditor/components/PhysicalPropertiesEditor.styles.d.ts +2 -0
- package/out/ui/packages/physicalPropertiesEditor/components/PhysicalPropertiesEditor.styles.luau +46 -0
- package/out/ui/packages/physicalPropertiesEditor/components/physicalParts.d.ts +3 -0
- package/out/ui/packages/physicalPropertiesEditor/components/physicalParts.luau +14 -0
- package/out/ui/packages/physicalPropertiesEditor/index.d.ts +2 -0
- package/out/ui/packages/physicalPropertiesEditor/init.luau +5 -0
- package/out/ui/packages/popup/components/Popup.d.ts +13 -0
- package/out/ui/packages/popup/components/Popup.luau +131 -0
- package/out/ui/packages/popup/components/Portal.d.ts +7 -0
- package/out/ui/packages/popup/components/Portal.luau +15 -0
- package/out/ui/packages/popup/components/placement.d.ts +9 -0
- package/out/ui/packages/popup/components/placement.luau +41 -0
- package/out/ui/packages/popup/components/portalTarget.d.ts +1 -0
- package/out/ui/packages/popup/components/portalTarget.luau +13 -0
- package/out/ui/packages/popup/index.d.ts +4 -0
- package/out/ui/packages/popup/init.luau +6 -0
- package/out/ui/packages/preloader/components/Preloader.luau +6 -0
- package/out/ui/packages/preloader/components/Preloader.styles.luau +3 -3
- package/out/ui/packages/progressBar/components/ProgressBar.d.ts +8 -1
- package/out/ui/packages/progressBar/components/ProgressBar.luau +61 -11
- package/out/ui/packages/progressBar/components/ProgressBar.styles.luau +2 -2
- package/out/ui/packages/progressBar/index.d.ts +2 -3
- package/out/ui/packages/progressBar/init.luau +3 -4
- package/out/ui/packages/radioGroup/components/RadioGroup.d.ts +16 -0
- package/out/ui/packages/radioGroup/components/RadioGroup.luau +112 -0
- package/out/ui/packages/radioGroup/components/RadioGroup.styles.d.ts +6 -0
- package/out/ui/packages/radioGroup/components/RadioGroup.styles.luau +66 -0
- package/out/ui/packages/radioGroup/index.d.ts +2 -0
- package/out/ui/packages/radioGroup/init.luau +5 -0
- package/out/ui/packages/rayEditor/components/RayEditor.d.ts +8 -0
- package/out/ui/packages/rayEditor/components/RayEditor.luau +83 -0
- package/out/ui/packages/rayEditor/components/RayEditor.styles.d.ts +2 -0
- package/out/ui/packages/rayEditor/components/RayEditor.styles.luau +37 -0
- package/out/ui/packages/rayEditor/components/rayParts.d.ts +1 -0
- package/out/ui/packages/rayEditor/components/rayParts.luau +10 -0
- package/out/ui/packages/rayEditor/index.d.ts +2 -0
- package/out/ui/packages/rayEditor/init.luau +5 -0
- package/out/ui/packages/rectEditor/components/RectEditor.d.ts +8 -0
- package/out/ui/packages/rectEditor/components/RectEditor.luau +85 -0
- package/out/ui/packages/rectEditor/components/RectEditor.styles.d.ts +2 -0
- package/out/ui/packages/rectEditor/components/RectEditor.styles.luau +46 -0
- package/out/ui/packages/rectEditor/components/rectValue.d.ts +3 -0
- package/out/ui/packages/rectEditor/components/rectValue.luau +14 -0
- package/out/ui/packages/rectEditor/index.d.ts +2 -0
- package/out/ui/packages/rectEditor/init.luau +5 -0
- package/out/ui/packages/scroll/dragScroll.d.ts +8 -0
- package/out/ui/packages/scroll/dragScroll.luau +51 -0
- package/out/ui/packages/scroll/index.d.ts +2 -0
- package/out/ui/packages/scroll/init.luau +5 -0
- package/out/ui/packages/scroll/useDragScroll.d.ts +5 -0
- package/out/ui/packages/scroll/useDragScroll.luau +127 -0
- package/out/ui/packages/select/components/Select.d.ts +16 -0
- package/out/ui/packages/select/components/Select.luau +455 -0
- package/out/ui/packages/select/components/Select.styles.d.ts +6 -0
- package/out/ui/packages/select/components/Select.styles.luau +104 -0
- package/out/ui/packages/select/components/optionLabel.d.ts +1 -0
- package/out/ui/packages/select/components/optionLabel.luau +7 -0
- package/out/ui/packages/select/components/selectFilter.d.ts +4 -0
- package/out/ui/packages/select/components/selectFilter.luau +27 -0
- package/out/ui/packages/select/components/selectFocus.d.ts +4 -0
- package/out/ui/packages/select/components/selectFocus.luau +16 -0
- package/out/ui/packages/select/components/selectGroups.d.ts +18 -0
- package/out/ui/packages/select/components/selectGroups.luau +38 -0
- package/out/ui/packages/select/components/selectKey.d.ts +4 -0
- package/out/ui/packages/select/components/selectKey.luau +14 -0
- package/out/ui/packages/select/components/selectMotion.d.ts +2 -0
- package/out/ui/packages/select/components/selectMotion.luau +12 -0
- package/out/ui/packages/select/components/selectMulti.d.ts +5 -0
- package/out/ui/packages/select/components/selectMulti.luau +26 -0
- package/out/ui/packages/select/components/selectTypeahead.d.ts +4 -0
- package/out/ui/packages/select/components/selectTypeahead.luau +58 -0
- package/out/ui/packages/select/components/stepChoice.d.ts +3 -0
- package/out/ui/packages/select/components/stepChoice.luau +24 -0
- package/out/ui/packages/select/index.d.ts +3 -0
- package/out/ui/packages/select/init.luau +8 -0
- package/out/ui/packages/shadow/components/Shadow.styles.luau +3 -3
- package/out/ui/packages/sidebar/components/Sidebar.luau +6 -0
- package/out/ui/packages/sidebar/components/Sidebar.styles.luau +5 -5
- package/out/ui/packages/skeleton/components/Skeleton.d.ts +15 -0
- package/out/ui/packages/skeleton/components/Skeleton.luau +224 -0
- package/out/ui/packages/skeleton/components/Skeleton.styles.d.ts +2 -0
- package/out/ui/packages/skeleton/components/Skeleton.styles.luau +27 -0
- package/out/ui/packages/skeleton/components/skeletonMotion.d.ts +3 -0
- package/out/ui/packages/skeleton/components/skeletonMotion.luau +17 -0
- package/out/ui/packages/skeleton/index.d.ts +3 -0
- package/out/ui/packages/skeleton/init.luau +7 -0
- package/out/ui/packages/slider/components/Slider.d.ts +13 -0
- package/out/ui/packages/slider/components/Slider.luau +204 -0
- package/out/ui/packages/slider/components/Slider.styles.d.ts +6 -0
- package/out/ui/packages/slider/components/Slider.styles.luau +47 -0
- package/out/ui/packages/slider/components/sliderNudge.d.ts +4 -0
- package/out/ui/packages/slider/components/sliderNudge.luau +39 -0
- package/out/ui/packages/slider/index.d.ts +2 -0
- package/out/ui/packages/slider/init.luau +5 -0
- package/out/ui/packages/snackbar/components/Snackbar.d.ts +11 -0
- package/out/ui/packages/snackbar/components/Snackbar.luau +41 -0
- package/out/ui/packages/snackbar/index.d.ts +2 -0
- package/out/ui/packages/snackbar/init.luau +5 -0
- package/out/ui/packages/splitPane/components/SplitPane.d.ts +14 -0
- package/out/ui/packages/splitPane/components/SplitPane.luau +241 -0
- package/out/ui/packages/splitPane/components/SplitPane.styles.d.ts +2 -0
- package/out/ui/packages/splitPane/components/SplitPane.styles.luau +59 -0
- package/out/ui/packages/splitPane/components/splitLook.d.ts +5 -0
- package/out/ui/packages/splitPane/components/splitLook.luau +49 -0
- package/out/ui/packages/splitPane/components/splitSize.d.ts +10 -0
- package/out/ui/packages/splitPane/components/splitSize.luau +46 -0
- package/out/ui/packages/splitPane/index.d.ts +2 -0
- package/out/ui/packages/splitPane/init.luau +5 -0
- package/out/ui/packages/stateMatrix.d.ts +30 -0
- package/out/ui/packages/stateMatrix.luau +1471 -0
- package/out/ui/packages/stepper/components/Stepper.d.ts +7 -0
- package/out/ui/packages/stepper/components/Stepper.luau +62 -0
- package/out/ui/packages/stepper/components/Stepper.styles.d.ts +2 -0
- package/out/ui/packages/stepper/components/Stepper.styles.luau +39 -0
- package/out/ui/packages/stepper/components/stepState.d.ts +2 -0
- package/out/ui/packages/stepper/components/stepState.luau +13 -0
- package/out/ui/packages/stepper/index.d.ts +3 -0
- package/out/ui/packages/stepper/init.luau +6 -0
- package/out/ui/packages/switch/components/Switch.d.ts +11 -0
- package/out/ui/packages/switch/components/Switch.luau +170 -0
- package/out/ui/packages/switch/components/Switch.styles.d.ts +6 -0
- package/out/ui/packages/switch/components/Switch.styles.luau +62 -0
- package/out/ui/packages/switch/components/switchLook.d.ts +10 -0
- package/out/ui/packages/switch/components/switchLook.luau +63 -0
- package/out/ui/packages/switch/index.d.ts +2 -0
- package/out/ui/packages/switch/init.luau +5 -0
- package/out/ui/packages/table/components/Table.d.ts +9 -0
- package/out/ui/packages/table/components/Table.luau +135 -0
- package/out/ui/packages/table/components/Table.styles.d.ts +2 -0
- package/out/ui/packages/table/components/Table.styles.luau +70 -0
- package/out/ui/packages/table/components/rowSelected.d.ts +1 -0
- package/out/ui/packages/table/components/rowSelected.luau +7 -0
- package/out/ui/packages/table/index.d.ts +2 -0
- package/out/ui/packages/table/init.luau +5 -0
- package/out/ui/packages/tabs/components/Tabs.d.ts +10 -0
- package/out/ui/packages/tabs/components/Tabs.luau +113 -0
- package/out/ui/packages/tabs/components/Tabs.styles.d.ts +2 -0
- package/out/ui/packages/tabs/components/Tabs.styles.luau +55 -0
- package/out/ui/packages/tabs/index.d.ts +2 -0
- package/out/ui/packages/tabs/init.luau +5 -0
- package/out/ui/packages/toast/components/Toast.luau +6 -0
- package/out/ui/packages/toast/components/Toast.styles.luau +23 -10
- package/out/ui/packages/tooltip/components/Tooltip.d.ts +7 -0
- package/out/ui/packages/tooltip/components/Tooltip.luau +119 -0
- package/out/ui/packages/tooltip/components/Tooltip.styles.d.ts +2 -0
- package/out/ui/packages/tooltip/components/Tooltip.styles.luau +43 -0
- package/out/ui/packages/tooltip/index.d.ts +2 -0
- package/out/ui/packages/tooltip/init.luau +5 -0
- package/out/ui/packages/treeView/components/TreeView.d.ts +1 -0
- package/out/ui/packages/treeView/components/TreeView.luau +201 -225
- package/out/ui/packages/treeView/components/TreeView.styles.luau +9 -37
- package/out/ui/packages/treeView/components/treeRows.d.ts +23 -0
- package/out/ui/packages/treeView/components/treeRows.luau +147 -0
- package/out/ui/packages/treeView/interfaces/Branch.d.ts +3 -0
- package/out/ui/packages/treeView/interfaces/Leaf.d.ts +2 -0
- package/out/ui/packages/typography/components/Typography.luau +6 -0
- package/out/ui/packages/typography/components/Typography.styles.luau +8 -11
- package/out/ui/packages/udimEditor/components/UDimEditor.d.ts +8 -0
- package/out/ui/packages/udimEditor/components/UDimEditor.luau +127 -0
- package/out/ui/packages/udimEditor/components/UDimEditor.styles.d.ts +2 -0
- package/out/ui/packages/udimEditor/components/UDimEditor.styles.luau +50 -0
- package/out/ui/packages/udimEditor/index.d.ts +2 -0
- package/out/ui/packages/udimEditor/init.luau +5 -0
- package/out/ui/packages/vectorEditor/components/VectorEditor.d.ts +10 -0
- package/out/ui/packages/vectorEditor/components/VectorEditor.luau +87 -0
- package/out/ui/packages/vectorEditor/components/VectorEditor.styles.d.ts +2 -0
- package/out/ui/packages/vectorEditor/components/VectorEditor.styles.luau +41 -0
- package/out/ui/packages/vectorEditor/components/vectorValue.d.ts +10 -0
- package/out/ui/packages/vectorEditor/components/vectorValue.luau +49 -0
- package/out/ui/packages/vectorEditor/index.d.ts +4 -0
- package/out/ui/packages/vectorEditor/init.luau +11 -0
- package/out/ui/packages/virtualList/components/VirtualList.d.ts +23 -0
- package/out/ui/packages/virtualList/components/VirtualList.luau +178 -0
- package/out/ui/packages/virtualList/components/VirtualList.styles.d.ts +2 -0
- package/out/ui/packages/virtualList/components/VirtualList.styles.luau +29 -0
- package/out/ui/packages/virtualList/components/virtualWindow.d.ts +10 -0
- package/out/ui/packages/virtualList/components/virtualWindow.luau +66 -0
- package/out/ui/packages/virtualList/index.d.ts +2 -0
- package/out/ui/packages/virtualList/init.luau +5 -0
- package/package.json +7 -3
- package/out/theme/interfaces/palette/colors/Colors.d.ts +0 -42
- package/out/theme/interfaces/palette/colors/Colors.luau +0 -2
- package/out/theme/styles/types/ConditionalStylesMap.d.ts +0 -2
- package/out/theme/styles/types/ConditionalStylesMap.luau +0 -2
|
@@ -4,56 +4,47 @@ local _react = TS.import(script, TS.getModule(script, "@rbxts", "react"))
|
|
|
4
4
|
local React = _react
|
|
5
5
|
local useCallback = _react.useCallback
|
|
6
6
|
local useEffect = _react.useEffect
|
|
7
|
+
local useRef = _react.useRef
|
|
7
8
|
local useState = _react.useState
|
|
8
|
-
local
|
|
9
|
+
local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "theme")
|
|
10
|
+
local cx = _theme.cx
|
|
11
|
+
local useTheme = _theme.useTheme
|
|
9
12
|
local Icon = TS.import(script, script.Parent.Parent.Parent, "icon").Icon
|
|
10
13
|
local Typography = TS.import(script, script.Parent.Parent.Parent, "typography").Typography
|
|
14
|
+
local VirtualList = TS.import(script, script.Parent.Parent.Parent, "virtualList").VirtualList
|
|
11
15
|
local Icons = TS.import(script, script.Parent.Parent.Parent.Parent, "enums").Icons
|
|
12
16
|
local useTreeViewStyles = TS.import(script, script.Parent, "TreeView.styles").default
|
|
17
|
+
local _treeRows = TS.import(script, script.Parent, "treeRows")
|
|
18
|
+
local pathsToExpand = _treeRows.pathsToExpand
|
|
19
|
+
local treeRowLayout = _treeRows.treeRowLayout
|
|
20
|
+
local visibleRows = _treeRows.visibleRows
|
|
13
21
|
local function TreeView(props)
|
|
14
22
|
local _binding = props
|
|
15
23
|
local tree = _binding.tree
|
|
16
24
|
local icon = _binding.icon
|
|
17
25
|
local filter = _binding.filter
|
|
26
|
+
local selected = _binding.selected
|
|
18
27
|
local className = _binding.className
|
|
28
|
+
local sx = _binding.sx
|
|
19
29
|
local id = _binding.id
|
|
20
30
|
local ref = _binding.ref
|
|
21
31
|
local _binding_1 = useTreeViewStyles()
|
|
22
32
|
local root = _binding_1.root
|
|
23
33
|
local header = _binding_1.header
|
|
24
34
|
local list = _binding_1.list
|
|
25
|
-
local gridLayout = _binding_1.gridLayout
|
|
26
35
|
local row = _binding_1.row
|
|
27
|
-
local
|
|
28
|
-
local
|
|
29
|
-
local
|
|
30
|
-
local
|
|
31
|
-
local
|
|
32
|
-
local
|
|
36
|
+
local rowIcon = _binding_1.rowIcon
|
|
37
|
+
local label = _binding_1.label
|
|
38
|
+
local _binding_2 = useTheme()
|
|
39
|
+
local theme = _binding_2.theme
|
|
40
|
+
local step = theme.padding.calc(4)
|
|
41
|
+
local chevronWidth = theme.spacing.calc(1.5)
|
|
42
|
+
local iconWidth = theme.spacing.calc(2) + theme.padding.calc(1)
|
|
43
|
+
local itemHeight = theme.spacing.calc(3)
|
|
44
|
+
local listRef = useRef()
|
|
45
|
+
local clickedPath, setClickedPath = useState()
|
|
46
|
+
local clickedLeaf, setClickedLeaf = useState()
|
|
33
47
|
local expanded, setExpanded = useState({})
|
|
34
|
-
local canvasSize, setCanvasSize = useState(UDim2.new(0, 0, 0, 0))
|
|
35
|
-
local resizeScrollingFrame = function(rbx, child)
|
|
36
|
-
if child and not child:IsA("GuiObject") then
|
|
37
|
-
return nil
|
|
38
|
-
end
|
|
39
|
-
local height = 0
|
|
40
|
-
local _exp = rbx:GetChildren()
|
|
41
|
-
-- ▼ ReadonlyArray.forEach ▼
|
|
42
|
-
local _callback = function(c)
|
|
43
|
-
if c:IsA("GuiObject") then
|
|
44
|
-
height += c.AbsoluteSize.Y
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
for _k, _v in _exp do
|
|
48
|
-
_callback(_v, _k - 1, _exp)
|
|
49
|
-
end
|
|
50
|
-
-- ▲ ReadonlyArray.forEach ▲
|
|
51
|
-
TS.try(function()
|
|
52
|
-
setCanvasSize(UDim2.new(0, 0, 0, height))
|
|
53
|
-
end, function()
|
|
54
|
-
-- Component is unmounting. Do nothing.
|
|
55
|
-
end)
|
|
56
|
-
end
|
|
57
48
|
local matchesFilter = useCallback(function(title)
|
|
58
49
|
local isMatch = false
|
|
59
50
|
local _condition = filter == nil
|
|
@@ -80,7 +71,6 @@ local function TreeView(props)
|
|
|
80
71
|
-- ▲ ReadonlyArray.forEach ▲
|
|
81
72
|
return isMatch
|
|
82
73
|
end, { filter })
|
|
83
|
-
-- Automatically expand branches that match filter
|
|
84
74
|
useEffect(function()
|
|
85
75
|
local _condition = filter == nil
|
|
86
76
|
if not _condition then
|
|
@@ -94,47 +84,174 @@ local function TreeView(props)
|
|
|
94
84
|
setExpanded({})
|
|
95
85
|
return nil
|
|
96
86
|
end
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
87
|
+
setExpanded(pathsToExpand(tree.branches, matchesFilter))
|
|
88
|
+
end, { tree, filter })
|
|
89
|
+
useEffect(function()
|
|
90
|
+
if selected == nil or #selected == 0 then
|
|
91
|
+
return nil
|
|
92
|
+
end
|
|
93
|
+
local parts = string.split(selected, "/")
|
|
94
|
+
local ancestors = {}
|
|
95
|
+
local acc = ""
|
|
96
|
+
for i = 0, #parts - 2 do
|
|
97
|
+
acc = if i == 0 then parts[i + 1] else `{acc}/{parts[i + 1]}`
|
|
98
|
+
local _acc = acc
|
|
99
|
+
table.insert(ancestors, _acc)
|
|
100
|
+
end
|
|
101
|
+
if #ancestors == 0 then
|
|
102
|
+
return nil
|
|
103
|
+
end
|
|
104
|
+
setExpanded(function(old)
|
|
105
|
+
local updated = old
|
|
106
|
+
for _, path in ancestors do
|
|
107
|
+
if not (table.find(updated, path) ~= nil) then
|
|
108
|
+
local _array = {}
|
|
109
|
+
local _length = #_array
|
|
110
|
+
local _updatedLength = #updated
|
|
111
|
+
table.move(updated, 1, _updatedLength, _length + 1, _array)
|
|
112
|
+
_length += _updatedLength
|
|
113
|
+
_array[_length + 1] = path
|
|
114
|
+
updated = _array
|
|
109
115
|
end
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
116
|
+
end
|
|
117
|
+
return updated
|
|
118
|
+
end)
|
|
119
|
+
end, { tree, filter, selected })
|
|
120
|
+
local rows = visibleRows(tree.branches, expanded, selected, clickedPath, matchesFilter)
|
|
121
|
+
local _result
|
|
122
|
+
if selected ~= nil and #selected > 0 then
|
|
123
|
+
-- ▼ ReadonlyArray.findIndex ▼
|
|
124
|
+
local _callback = function(entry)
|
|
125
|
+
return entry.path == selected
|
|
126
|
+
end
|
|
127
|
+
local _result_1 = -1
|
|
128
|
+
for _i, _v in rows do
|
|
129
|
+
if _callback(_v, _i - 1, rows) == true then
|
|
130
|
+
_result_1 = _i - 1
|
|
131
|
+
break
|
|
132
|
+
end
|
|
133
|
+
end
|
|
134
|
+
-- ▲ ReadonlyArray.findIndex ▲
|
|
135
|
+
_result = _result_1
|
|
136
|
+
else
|
|
137
|
+
_result = -1
|
|
138
|
+
end
|
|
139
|
+
local selectedIndex = _result
|
|
140
|
+
useEffect(function()
|
|
141
|
+
if selectedIndex >= 0 then
|
|
142
|
+
local _result_1 = listRef.current
|
|
143
|
+
if _result_1 ~= nil then
|
|
144
|
+
_result_1.ensureVisible(selectedIndex)
|
|
145
|
+
end
|
|
146
|
+
end
|
|
147
|
+
end, { selected, selectedIndex })
|
|
148
|
+
local renderRow = function(entry)
|
|
149
|
+
local _binding_3 = treeRowLayout(entry.depth, step, chevronWidth, iconWidth)
|
|
150
|
+
local chevronX = _binding_3.chevronX
|
|
151
|
+
local iconX = _binding_3.iconX
|
|
152
|
+
local labelX = _binding_3.labelX
|
|
153
|
+
local rowIconImage = if entry.kind == "leaf" then (entry.icon or icon or Icons.ListPrimary) else entry.icon
|
|
154
|
+
local bold = if entry.kind == "branch" then entry.emphasized elseif selected ~= nil then selected == entry.path else clickedLeaf == entry.path
|
|
155
|
+
local _attributes = table.clone(row)
|
|
156
|
+
setmetatable(_attributes, nil)
|
|
157
|
+
_attributes.Event = {
|
|
158
|
+
MouseButton1Click = function()
|
|
159
|
+
local _result_1 = listRef.current
|
|
160
|
+
if _result_1 ~= nil then
|
|
161
|
+
_result_1 = _result_1.suppressClick()
|
|
162
|
+
end
|
|
163
|
+
if _result_1 then
|
|
164
|
+
return nil
|
|
165
|
+
end
|
|
166
|
+
if entry.kind == "leaf" then
|
|
167
|
+
setClickedLeaf(entry.path)
|
|
168
|
+
setClickedPath(string.sub(entry.path, 1, #entry.path - #entry.title - 1))
|
|
169
|
+
local _result_2 = entry.leaf
|
|
170
|
+
if _result_2 ~= nil then
|
|
171
|
+
_result_2 = _result_2.onClick
|
|
172
|
+
if _result_2 ~= nil then
|
|
173
|
+
_result_2()
|
|
174
|
+
end
|
|
118
175
|
end
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
176
|
+
return nil
|
|
177
|
+
end
|
|
178
|
+
local _result_2 = entry.branch
|
|
179
|
+
if _result_2 ~= nil then
|
|
180
|
+
_result_2 = _result_2.onClick
|
|
181
|
+
if _result_2 ~= nil then
|
|
182
|
+
_result_2()
|
|
123
183
|
end
|
|
124
184
|
end
|
|
125
|
-
|
|
126
|
-
|
|
185
|
+
if entry.expandable then
|
|
186
|
+
setExpanded(function(oldExpanded)
|
|
187
|
+
local _oldExpanded = oldExpanded
|
|
188
|
+
local _path = entry.path
|
|
189
|
+
local _result_3
|
|
190
|
+
if table.find(_oldExpanded, _path) ~= nil then
|
|
191
|
+
-- ▼ ReadonlyArray.filter ▼
|
|
192
|
+
local _newValue = {}
|
|
193
|
+
local _callback = function(item)
|
|
194
|
+
return item ~= entry.path
|
|
195
|
+
end
|
|
196
|
+
local _length = 0
|
|
197
|
+
for _k, _v in oldExpanded do
|
|
198
|
+
if _callback(_v, _k - 1, oldExpanded) == true then
|
|
199
|
+
_length += 1
|
|
200
|
+
_newValue[_length] = _v
|
|
201
|
+
end
|
|
202
|
+
end
|
|
203
|
+
-- ▲ ReadonlyArray.filter ▲
|
|
204
|
+
_result_3 = _newValue
|
|
205
|
+
else
|
|
206
|
+
local _array = {}
|
|
207
|
+
local _length = #_array
|
|
208
|
+
local _oldExpandedLength = #oldExpanded
|
|
209
|
+
table.move(oldExpanded, 1, _oldExpandedLength, _length + 1, _array)
|
|
210
|
+
_length += _oldExpandedLength
|
|
211
|
+
_array[_length + 1] = entry.path
|
|
212
|
+
_result_3 = _array
|
|
213
|
+
end
|
|
214
|
+
return _result_3
|
|
215
|
+
end)
|
|
216
|
+
else
|
|
217
|
+
setClickedPath(entry.path)
|
|
127
218
|
end
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
219
|
+
end,
|
|
220
|
+
}
|
|
221
|
+
local _condition = entry.expandable
|
|
222
|
+
if _condition then
|
|
223
|
+
local _attributes_1 = {
|
|
224
|
+
key = "Chevron",
|
|
225
|
+
}
|
|
226
|
+
local _path = entry.path
|
|
227
|
+
_attributes_1.icon = if table.find(expanded, _path) ~= nil then Icons.Expanded else Icons.Collapsed
|
|
228
|
+
_attributes_1.size = "xxs"
|
|
229
|
+
_attributes_1.className = cx(rowIcon, {
|
|
230
|
+
AnchorPoint = Vector2.new(0.5, 0.5),
|
|
231
|
+
Position = UDim2.new(0, chevronX + chevronWidth / 2, 0.5, 0),
|
|
232
|
+
})
|
|
233
|
+
_attributes_1.tint = theme.palette.text.secondary
|
|
234
|
+
_condition = (React.createElement(Icon, _attributes_1))
|
|
133
235
|
end
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
236
|
+
return React.createElement("textbutton", _attributes, _condition, rowIconImage ~= nil and (React.createElement(Icon, {
|
|
237
|
+
key = "Icon",
|
|
238
|
+
icon = rowIconImage,
|
|
239
|
+
size = "xs",
|
|
240
|
+
className = cx(rowIcon, {
|
|
241
|
+
Position = UDim2.new(0, iconX, 0.5, 0),
|
|
242
|
+
}),
|
|
243
|
+
tint = theme.palette.primary.main,
|
|
244
|
+
})), React.createElement(Typography, {
|
|
245
|
+
text = entry.title,
|
|
246
|
+
className = cx(label, {
|
|
247
|
+
Position = UDim2.new(0, labelX, 0.5, 0),
|
|
248
|
+
Size = UDim2.new(1, -labelX, 1, -theme.padding.calc(4)),
|
|
249
|
+
}),
|
|
250
|
+
color = "textPrimary",
|
|
251
|
+
variant = "body",
|
|
252
|
+
family = if bold then "bold" else "default",
|
|
253
|
+
}))
|
|
254
|
+
end
|
|
138
255
|
local _attributes = {}
|
|
139
256
|
local _condition = id
|
|
140
257
|
if not (_condition ~= 0 and _condition == _condition and _condition ~= "" and _condition) then
|
|
@@ -150,6 +267,11 @@ local function TreeView(props)
|
|
|
150
267
|
_attributes[_k] = _v
|
|
151
268
|
end
|
|
152
269
|
end
|
|
270
|
+
if sx then
|
|
271
|
+
for _k, _v in sx do
|
|
272
|
+
_attributes[_k] = _v
|
|
273
|
+
end
|
|
274
|
+
end
|
|
153
275
|
local _attributes_1 = {}
|
|
154
276
|
local _object = {
|
|
155
277
|
Text = tree.title,
|
|
@@ -161,165 +283,19 @@ local function TreeView(props)
|
|
|
161
283
|
_attributes_1.color = "textSecondary"
|
|
162
284
|
_attributes_1.variant = "body"
|
|
163
285
|
_attributes_1.family = "bold"
|
|
164
|
-
|
|
165
|
-
local _attributes_2 = {
|
|
286
|
+
return React.createElement("frame", _attributes, React.createElement(Typography, _attributes_1), React.createElement(VirtualList, {
|
|
166
287
|
key = "List",
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
setmetatable(_attributes_3, nil)
|
|
179
|
-
local _exp_1 = React.createElement("uigridlayout", _attributes_3)
|
|
180
|
-
local _exp_2 = tree.branches
|
|
181
|
-
-- ▼ ReadonlyArray.map ▼
|
|
182
|
-
local _newValue = table.create(#_exp_2)
|
|
183
|
-
local _callback = function(branch, branchIndex)
|
|
184
|
-
local matchesBranchFilter = matchesFilter(branch.title)
|
|
185
|
-
local hasMatchingLeaf = matchesBranchFilter
|
|
186
|
-
if not hasMatchingLeaf then
|
|
187
|
-
for _, leaf in branch.leaves do
|
|
188
|
-
if matchesFilter(leaf.title) then
|
|
189
|
-
hasMatchingLeaf = true
|
|
190
|
-
break
|
|
191
|
-
end
|
|
192
|
-
end
|
|
193
|
-
end
|
|
194
|
-
if matchesBranchFilter or hasMatchingLeaf then
|
|
195
|
-
local _attributes_4 = {
|
|
196
|
-
key = `{branch.title}-{branchIndex}`,
|
|
197
|
-
}
|
|
198
|
-
for _k, _v in row do
|
|
199
|
-
_attributes_4[_k] = _v
|
|
200
|
-
end
|
|
201
|
-
_attributes_4.Event = {
|
|
202
|
-
MouseButton1Click = function()
|
|
203
|
-
if branch.onClick then
|
|
204
|
-
branch.onClick()
|
|
205
|
-
end
|
|
206
|
-
-- If there are leaves... Expand/Collapse
|
|
207
|
-
if #branch.leaves > 0 then
|
|
208
|
-
local _branch = branch
|
|
209
|
-
local isExpanded = table.find(expanded, _branch) ~= nil
|
|
210
|
-
if isExpanded then
|
|
211
|
-
setExpanded(function(oldExpanded)
|
|
212
|
-
-- ▼ ReadonlyArray.filter ▼
|
|
213
|
-
local _newValue_1 = {}
|
|
214
|
-
local _callback_1 = function(b)
|
|
215
|
-
return b ~= branch
|
|
216
|
-
end
|
|
217
|
-
local _length = 0
|
|
218
|
-
for _k, _v in oldExpanded do
|
|
219
|
-
if _callback_1(_v, _k - 1, oldExpanded) == true then
|
|
220
|
-
_length += 1
|
|
221
|
-
_newValue_1[_length] = _v
|
|
222
|
-
end
|
|
223
|
-
end
|
|
224
|
-
-- ▲ ReadonlyArray.filter ▲
|
|
225
|
-
return _newValue_1
|
|
226
|
-
end)
|
|
227
|
-
else
|
|
228
|
-
setExpanded(function(oldExpanded)
|
|
229
|
-
local _array = {}
|
|
230
|
-
local _length = #_array
|
|
231
|
-
local _oldExpandedLength = #oldExpanded
|
|
232
|
-
table.move(oldExpanded, 1, _oldExpandedLength, _length + 1, _array)
|
|
233
|
-
_length += _oldExpandedLength
|
|
234
|
-
_array[_length + 1] = branch
|
|
235
|
-
return _array
|
|
236
|
-
end)
|
|
237
|
-
end
|
|
238
|
-
else
|
|
239
|
-
setSelectedBranch(branch)
|
|
240
|
-
end
|
|
241
|
-
end,
|
|
242
|
-
}
|
|
243
|
-
local _condition_1 = #branch.leaves > 0
|
|
244
|
-
if _condition_1 then
|
|
245
|
-
local _attributes_5 = {}
|
|
246
|
-
local _branch = branch
|
|
247
|
-
_attributes_5.icon = if table.find(expanded, _branch) ~= nil then Icons.Expanded else Icons.Collapsed
|
|
248
|
-
_attributes_5.size = "xxs"
|
|
249
|
-
_attributes_5.className = branchIcon
|
|
250
|
-
_attributes_5.tint = DEFAULT_THEME.options.constants.extendedPalette.Gray[70]
|
|
251
|
-
_condition_1 = (React.createElement(Icon, _attributes_5))
|
|
252
|
-
end
|
|
253
|
-
local _attributes_5 = {
|
|
254
|
-
text = branch.title,
|
|
255
|
-
}
|
|
256
|
-
local _object_1 = table.clone(branchTypography)
|
|
257
|
-
setmetatable(_object_1, nil)
|
|
258
|
-
_attributes_5.className = _object_1
|
|
259
|
-
_attributes_5.color = "textPrimary"
|
|
260
|
-
_attributes_5.variant = "body"
|
|
261
|
-
_attributes_5.family = if selectedBranch == branch then "bold" else "default"
|
|
262
|
-
local _exp_3 = React.createElement("textbutton", _attributes_4, _condition_1, React.createElement(Typography, _attributes_5))
|
|
263
|
-
local _branch = branch
|
|
264
|
-
local _condition_2 = table.find(expanded, _branch) ~= nil
|
|
265
|
-
if _condition_2 then
|
|
266
|
-
local _exp_4 = branch.leaves
|
|
267
|
-
-- ▼ ReadonlyArray.map ▼
|
|
268
|
-
local _newValue_1 = table.create(#_exp_4)
|
|
269
|
-
local _callback_1 = function(leaf, leafIndex)
|
|
270
|
-
local matchesLeafFilter = matchesFilter(leaf.title)
|
|
271
|
-
if matchesBranchFilter or matchesLeafFilter then
|
|
272
|
-
local _attributes_6 = {
|
|
273
|
-
key = `{branch.title}-{branchIndex}-{leaf.title}-{leafIndex}`,
|
|
274
|
-
}
|
|
275
|
-
for _k, _v in row do
|
|
276
|
-
_attributes_6[_k] = _v
|
|
277
|
-
end
|
|
278
|
-
_attributes_6.Event = {
|
|
279
|
-
MouseButton1Click = function()
|
|
280
|
-
setSelectedLeaf(leaf)
|
|
281
|
-
setSelectedBranch(branch)
|
|
282
|
-
if leaf.onClick then
|
|
283
|
-
leaf.onClick()
|
|
284
|
-
end
|
|
285
|
-
end,
|
|
286
|
-
}
|
|
287
|
-
local _exp_5 = React.createElement(Icon, {
|
|
288
|
-
icon = icon or Icons.ListPrimary,
|
|
289
|
-
size = "xs",
|
|
290
|
-
className = leafIcon,
|
|
291
|
-
tint = DEFAULT_THEME.palette.secondary.main,
|
|
292
|
-
})
|
|
293
|
-
local _attributes_7 = {
|
|
294
|
-
text = leaf.title,
|
|
295
|
-
}
|
|
296
|
-
local _object_2 = table.clone(leafTypography)
|
|
297
|
-
setmetatable(_object_2, nil)
|
|
298
|
-
_attributes_7.className = _object_2
|
|
299
|
-
_attributes_7.color = "textPrimary"
|
|
300
|
-
_attributes_7.variant = "body"
|
|
301
|
-
_attributes_7.family = if selectedLeaf == leaf then "bold" else "default"
|
|
302
|
-
return React.createElement("textbutton", _attributes_6, _exp_5, React.createElement(Typography, _attributes_7))
|
|
303
|
-
else
|
|
304
|
-
return React.createElement(React.Fragment)
|
|
305
|
-
end
|
|
306
|
-
end
|
|
307
|
-
for _k, _v in _exp_4 do
|
|
308
|
-
_newValue_1[_k] = _callback_1(_v, _k - 1, _exp_4)
|
|
309
|
-
end
|
|
310
|
-
-- ▲ ReadonlyArray.map ▲
|
|
311
|
-
_condition_2 = _newValue_1
|
|
312
|
-
end
|
|
313
|
-
return React.createElement(React.Fragment, nil, _exp_3, _condition_2)
|
|
314
|
-
else
|
|
315
|
-
return React.createElement(React.Fragment)
|
|
316
|
-
end
|
|
317
|
-
end
|
|
318
|
-
for _k, _v in _exp_2 do
|
|
319
|
-
_newValue[_k] = _callback(_v, _k - 1, _exp_2)
|
|
320
|
-
end
|
|
321
|
-
-- ▲ ReadonlyArray.map ▲
|
|
322
|
-
return React.createElement("frame", _attributes, _exp, React.createElement("scrollingframe", _attributes_2, _exp_1, _newValue))
|
|
288
|
+
items = rows,
|
|
289
|
+
getKey = function(entry)
|
|
290
|
+
return entry.path
|
|
291
|
+
end,
|
|
292
|
+
itemHeight = itemHeight,
|
|
293
|
+
listRef = listRef,
|
|
294
|
+
className = list,
|
|
295
|
+
renderItem = function(entry)
|
|
296
|
+
return renderRow(entry)
|
|
297
|
+
end,
|
|
298
|
+
}))
|
|
323
299
|
end
|
|
324
300
|
local default = TreeView
|
|
325
301
|
return {
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
local TS = _G[script]
|
|
3
3
|
local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "theme")
|
|
4
4
|
local createStyles = _theme.createStyles
|
|
5
|
-
local
|
|
6
|
-
local useTreeViewStyles =
|
|
5
|
+
local componentStyles = _theme.componentStyles
|
|
6
|
+
local useTreeViewStyles = componentStyles("TreeView", function(theme)
|
|
7
7
|
return createStyles({
|
|
8
8
|
root = {
|
|
9
9
|
Size = UDim2.new(1, -theme.padding.calc(4), 1, -theme.padding.calc(4)),
|
|
@@ -14,7 +14,7 @@ local useTreeViewStyles = makeStyles(function(theme)
|
|
|
14
14
|
ZIndex = 300,
|
|
15
15
|
},
|
|
16
16
|
header = {
|
|
17
|
-
Size = UDim2.new(1, 0, 0, theme.spacing.calc(
|
|
17
|
+
Size = UDim2.new(1, 0, 0, theme.spacing.calc(3)),
|
|
18
18
|
Position = UDim2.new(0.5, 0, 0, 0),
|
|
19
19
|
AnchorPoint = Vector2.new(0.5, 0),
|
|
20
20
|
TextXAlignment = Enum.TextXAlignment.Left,
|
|
@@ -24,61 +24,33 @@ local useTreeViewStyles = makeStyles(function(theme)
|
|
|
24
24
|
ZIndex = 5300,
|
|
25
25
|
},
|
|
26
26
|
list = {
|
|
27
|
-
Size = UDim2.new(1, 0, 1, -(theme.spacing.calc(
|
|
28
|
-
Position = UDim2.new(0.5, 0, 0, theme.spacing.calc(
|
|
27
|
+
Size = UDim2.new(1, 0, 1, -(theme.spacing.calc(3) + theme.padding.calc(2))),
|
|
28
|
+
Position = UDim2.new(0.5, 0, 0, theme.spacing.calc(3) + theme.padding.calc(2)),
|
|
29
29
|
AnchorPoint = Vector2.new(0.5, 0),
|
|
30
30
|
BackgroundTransparency = 1,
|
|
31
|
-
AutomaticCanvasSize = Enum.AutomaticSize.XY,
|
|
32
31
|
ScrollBarThickness = theme.spacing.calc(0.5),
|
|
33
32
|
ScrollBarImageTransparency = 0.75,
|
|
34
33
|
ClipsDescendants = true,
|
|
35
34
|
ZIndex = 300,
|
|
36
35
|
},
|
|
37
|
-
gridLayout = {
|
|
38
|
-
CellPadding = UDim2.new(0, 0, 0, 0),
|
|
39
|
-
CellSize = UDim2.new(1, 0, 0, theme.spacing.calc(1) + theme.padding.calc(4)),
|
|
40
|
-
FillDirection = Enum.FillDirection.Horizontal,
|
|
41
|
-
FillDirectionMaxCells = 1,
|
|
42
|
-
HorizontalAlignment = Enum.HorizontalAlignment.Center,
|
|
43
|
-
VerticalAlignment = Enum.VerticalAlignment.Top,
|
|
44
|
-
SortOrder = Enum.SortOrder.Name,
|
|
45
|
-
},
|
|
46
36
|
row = {
|
|
47
37
|
Text = "",
|
|
38
|
+
Size = UDim2.fromScale(1, 1),
|
|
48
39
|
BackgroundTransparency = 1,
|
|
49
40
|
BorderSizePixel = 0,
|
|
50
41
|
ZIndex = 5200,
|
|
51
42
|
},
|
|
52
|
-
|
|
53
|
-
Position = UDim2.new(0, 0, 0.5, 0),
|
|
43
|
+
rowIcon = {
|
|
54
44
|
AnchorPoint = Vector2.new(0, 0.5),
|
|
55
45
|
BackgroundTransparency = 1,
|
|
56
46
|
BorderSizePixel = 0,
|
|
57
47
|
ZIndex = 5300,
|
|
58
48
|
},
|
|
59
|
-
|
|
60
|
-
Size = UDim2.new(1, -(theme.spacing.calc(0.5) + theme.padding.calc(2)), 1, -theme.padding.calc(4)),
|
|
61
|
-
Position = UDim2.new(1, 0, 0.5, 0),
|
|
62
|
-
AnchorPoint = Vector2.new(1, 0.5),
|
|
63
|
-
TextXAlignment = Enum.TextXAlignment.Left,
|
|
64
|
-
TextYAlignment = Enum.TextYAlignment.Center,
|
|
65
|
-
BackgroundTransparency = 1,
|
|
66
|
-
BorderSizePixel = 0,
|
|
67
|
-
ZIndex = 5300,
|
|
68
|
-
},
|
|
69
|
-
leafIcon = {
|
|
70
|
-
Position = UDim2.new(0, theme.padding.calc(4), 0.5, 0),
|
|
49
|
+
label = {
|
|
71
50
|
AnchorPoint = Vector2.new(0, 0.5),
|
|
72
|
-
BackgroundTransparency = 1,
|
|
73
|
-
BorderSizePixel = 0,
|
|
74
|
-
ZIndex = 5300,
|
|
75
|
-
},
|
|
76
|
-
leafTypography = {
|
|
77
|
-
Size = UDim2.new(1, -(theme.spacing.calc(1) + theme.padding.calc(6)), 1, -theme.padding.calc(4)),
|
|
78
|
-
Position = UDim2.new(1, 0, 0.5, 0),
|
|
79
|
-
AnchorPoint = Vector2.new(1, 0.5),
|
|
80
51
|
TextXAlignment = Enum.TextXAlignment.Left,
|
|
81
52
|
TextYAlignment = Enum.TextYAlignment.Center,
|
|
53
|
+
TextTruncate = Enum.TextTruncate.AtEnd,
|
|
82
54
|
BackgroundTransparency = 1,
|
|
83
55
|
BorderSizePixel = 0,
|
|
84
56
|
ZIndex = 5300,
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { Icons } from "../../../enums/index";
|
|
2
|
+
import type Branch from "../interfaces/Branch";
|
|
3
|
+
import type Leaf from "../interfaces/Leaf";
|
|
4
|
+
export interface TreeRow {
|
|
5
|
+
kind: "branch" | "leaf";
|
|
6
|
+
title: string;
|
|
7
|
+
path: string;
|
|
8
|
+
depth: number;
|
|
9
|
+
emphasized: boolean;
|
|
10
|
+
expandable: boolean;
|
|
11
|
+
icon?: Icons;
|
|
12
|
+
branch?: Branch;
|
|
13
|
+
leaf?: Leaf;
|
|
14
|
+
}
|
|
15
|
+
export interface TreeRowLayout {
|
|
16
|
+
chevronX: number;
|
|
17
|
+
iconX: number;
|
|
18
|
+
labelX: number;
|
|
19
|
+
}
|
|
20
|
+
export declare function treeRowLayout(depth: number, indent: number, chevronWidth: number, iconWidth: number): TreeRowLayout;
|
|
21
|
+
export declare function branchHoldsSelection(branchPath: string, selected?: string): boolean;
|
|
22
|
+
export declare function pathsToExpand(branches: Branch[], matches: (title: string) => boolean): string[];
|
|
23
|
+
export declare function visibleRows(branches: Branch[], expanded: string[], selected?: string, clickedPath?: string, matches?: (title: string) => boolean): TreeRow[];
|