@rbxts/uiblox 0.2.0-alpha.0 → 0.2.0-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. package/README.md +51 -34
  2. package/out/theme/constants/NumberConstants.d.ts +4 -2
  3. package/out/theme/constants/NumberConstants.luau +6 -4
  4. package/out/theme/context/ThemeProvider.d.ts +1 -1
  5. package/out/theme/hooks/useTheme.d.ts +1 -1
  6. package/out/theme/interfaces/palette/colorTokens/ColorTokens.d.ts +1 -1
  7. package/out/theme/interfaces/spacing/Shape.d.ts +3 -0
  8. package/out/theme/interfaces/typography/FontSizes.d.ts +1 -1
  9. package/out/theme/interfaces/typography/FontSizes.luau +15 -8
  10. package/out/theme/interfaces/typography/ThemeTypography.d.ts +3 -0
  11. package/out/theme/interfaces/typography/Variants.d.ts +14 -15
  12. package/out/theme/interfaces/typography/Variants.luau +68 -18
  13. package/out/theme/styles/utilities/index.d.ts +1 -1
  14. package/out/theme/styles/utilities/init.luau +3 -1
  15. package/out/theme/styles/utilities/resolveStyle.d.ts +32 -0
  16. package/out/theme/styles/utilities/resolveStyle.luau +66 -0
  17. package/out/theme/themes/DarkTheme.luau +4 -0
  18. package/out/theme/themes/LightTheme.luau +4 -0
  19. package/out/theme/types/types.d.ts +1 -1
  20. package/out/ui/packages/accordion/components/Accordion.d.ts +1 -0
  21. package/out/ui/packages/accordion/components/Accordion.luau +5 -0
  22. package/out/ui/packages/accordion/components/Accordion.styles.d.ts +1 -0
  23. package/out/ui/packages/accordion/components/Accordion.styles.luau +4 -2
  24. package/out/ui/packages/alert/components/Alert.d.ts +10 -0
  25. package/out/ui/packages/alert/components/Alert.luau +98 -0
  26. package/out/ui/packages/alert/components/Alert.styles.d.ts +6 -0
  27. package/out/ui/packages/alert/components/Alert.styles.luau +93 -0
  28. package/out/ui/packages/alert/components/alertTone.d.ts +2 -0
  29. package/out/ui/packages/alert/components/alertTone.luau +7 -0
  30. package/out/ui/packages/alert/index.d.ts +3 -0
  31. package/out/ui/packages/alert/init.luau +6 -0
  32. package/out/ui/packages/appBar/components/AppBar.d.ts +10 -0
  33. package/out/ui/packages/appBar/components/AppBar.luau +77 -0
  34. package/out/ui/packages/appBar/components/AppBar.styles.d.ts +6 -0
  35. package/out/ui/packages/appBar/components/AppBar.styles.luau +66 -0
  36. package/out/ui/packages/appBar/index.d.ts +3 -0
  37. package/out/ui/packages/appBar/init.luau +5 -0
  38. package/out/ui/packages/autocomplete/components/Autocomplete.luau +10 -0
  39. package/out/ui/packages/backdrop/components/Backdrop.d.ts +10 -0
  40. package/out/ui/packages/backdrop/components/Backdrop.luau +58 -0
  41. package/out/ui/packages/backdrop/components/Backdrop.styles.d.ts +4 -0
  42. package/out/ui/packages/backdrop/components/Backdrop.styles.luau +24 -0
  43. package/out/ui/packages/backdrop/index.d.ts +2 -0
  44. package/out/ui/packages/backdrop/init.luau +5 -0
  45. package/out/ui/packages/badge/components/Badge.styles.luau +6 -3
  46. package/out/ui/packages/bottomNavigation/components/BottomNavigation.d.ts +10 -0
  47. package/out/ui/packages/bottomNavigation/components/BottomNavigation.luau +86 -0
  48. package/out/ui/packages/bottomNavigation/components/BottomNavigation.styles.d.ts +2 -0
  49. package/out/ui/packages/bottomNavigation/components/BottomNavigation.styles.luau +58 -0
  50. package/out/ui/packages/bottomNavigation/index.d.ts +2 -0
  51. package/out/ui/packages/bottomNavigation/init.luau +5 -0
  52. package/out/ui/packages/breadcrumbs/components/Breadcrumbs.d.ts +1 -0
  53. package/out/ui/packages/breadcrumbs/components/Breadcrumbs.luau +58 -24
  54. package/out/ui/packages/breadcrumbs/components/breadcrumbItems.d.ts +9 -0
  55. package/out/ui/packages/breadcrumbs/components/breadcrumbItems.luau +68 -0
  56. package/out/ui/packages/breadcrumbs/index.d.ts +1 -0
  57. package/out/ui/packages/breadcrumbs/init.luau +3 -0
  58. package/out/ui/packages/brickColorPicker/components/brickColorCatalog.luau +1 -1
  59. package/out/ui/packages/button/components/Button.luau +9 -5
  60. package/out/ui/packages/button/components/Button.styles.luau +0 -6
  61. package/out/ui/packages/button/components/buttonLook.d.ts +2 -2
  62. package/out/ui/packages/checkbox/components/checkboxLook.d.ts +1 -1
  63. package/out/ui/packages/chip/components/Chip.d.ts +3 -1
  64. package/out/ui/packages/chip/components/Chip.luau +39 -2
  65. package/out/ui/packages/chip/components/Chip.styles.d.ts +3 -0
  66. package/out/ui/packages/chip/components/Chip.styles.luau +40 -6
  67. package/out/ui/packages/circularProgress/components/CircularProgress.luau +13 -2
  68. package/out/ui/packages/dialog/components/Dialog.d.ts +1 -1
  69. package/out/ui/packages/dialog/components/Dialog.luau +27 -18
  70. package/out/ui/packages/fab/components/Fab.d.ts +14 -0
  71. package/out/ui/packages/fab/components/Fab.luau +160 -0
  72. package/out/ui/packages/fab/components/Fab.styles.d.ts +8 -0
  73. package/out/ui/packages/fab/components/Fab.styles.luau +65 -0
  74. package/out/ui/packages/fab/components/fabSize.d.ts +4 -0
  75. package/out/ui/packages/fab/components/fabSize.luau +33 -0
  76. package/out/ui/packages/fab/index.d.ts +3 -0
  77. package/out/ui/packages/fab/init.luau +9 -0
  78. package/out/ui/packages/formText/components/FormHelperText.d.ts +8 -0
  79. package/out/ui/packages/formText/components/FormHelperText.luau +44 -0
  80. package/out/ui/packages/formText/components/FormLabel.d.ts +9 -0
  81. package/out/ui/packages/formText/components/FormLabel.luau +46 -0
  82. package/out/ui/packages/formText/components/FormText.styles.d.ts +5 -0
  83. package/out/ui/packages/formText/components/FormText.styles.luau +33 -0
  84. package/out/ui/packages/formText/index.d.ts +4 -0
  85. package/out/ui/packages/formText/init.luau +6 -0
  86. package/out/ui/packages/icon/components/Icon.styles.luau +4 -4
  87. package/out/ui/packages/iconButton/components/IconButton.luau +7 -2
  88. package/out/ui/packages/iconButton/components/IconButton.styles.luau +7 -4
  89. package/out/ui/packages/imageList/components/ImageList.d.ts +14 -0
  90. package/out/ui/packages/imageList/components/ImageList.luau +84 -0
  91. package/out/ui/packages/imageList/components/ImageList.styles.d.ts +6 -0
  92. package/out/ui/packages/imageList/components/ImageList.styles.luau +54 -0
  93. package/out/ui/packages/imageList/components/imageListLayout.d.ts +3 -0
  94. package/out/ui/packages/imageList/components/imageListLayout.luau +24 -0
  95. package/out/ui/packages/imageList/index.d.ts +2 -0
  96. package/out/ui/packages/imageList/init.luau +5 -0
  97. package/out/ui/packages/index.d.ts +11 -0
  98. package/out/ui/packages/init.luau +33 -0
  99. package/out/ui/packages/input/components/Input.d.ts +2 -0
  100. package/out/ui/packages/input/components/Input.luau +64 -27
  101. package/out/ui/packages/input/components/Input.styles.luau +6 -2
  102. package/out/ui/packages/layout/components/Box.d.ts +11 -0
  103. package/out/ui/packages/layout/components/Box.luau +49 -0
  104. package/out/ui/packages/layout/components/Box.styles.d.ts +7 -0
  105. package/out/ui/packages/layout/components/Box.styles.luau +34 -0
  106. package/out/ui/packages/layout/components/Container.d.ts +10 -0
  107. package/out/ui/packages/layout/components/Container.luau +54 -0
  108. package/out/ui/packages/layout/components/Container.styles.d.ts +6 -0
  109. package/out/ui/packages/layout/components/Container.styles.luau +41 -0
  110. package/out/ui/packages/layout/components/Grid.d.ts +1 -1
  111. package/out/ui/packages/layout/components/Stack.d.ts +12 -0
  112. package/out/ui/packages/layout/components/Stack.luau +49 -0
  113. package/out/ui/packages/layout/components/Stack.styles.d.ts +8 -0
  114. package/out/ui/packages/layout/components/Stack.styles.luau +72 -0
  115. package/out/ui/packages/layout/components/boxPad.d.ts +14 -0
  116. package/out/ui/packages/layout/components/boxPad.luau +59 -0
  117. package/out/ui/packages/layout/components/containerWidth.d.ts +2 -0
  118. package/out/ui/packages/layout/components/containerWidth.luau +17 -0
  119. package/out/ui/packages/layout/components/stackAlign.d.ts +8 -0
  120. package/out/ui/packages/layout/components/stackAlign.luau +29 -0
  121. package/out/ui/packages/layout/index.d.ts +10 -0
  122. package/out/ui/packages/layout/init.luau +4 -0
  123. package/out/ui/packages/link/components/Link.d.ts +11 -0
  124. package/out/ui/packages/link/components/Link.luau +83 -0
  125. package/out/ui/packages/link/components/Link.styles.d.ts +8 -0
  126. package/out/ui/packages/link/components/Link.styles.luau +59 -0
  127. package/out/ui/packages/link/index.d.ts +3 -0
  128. package/out/ui/packages/link/init.luau +5 -0
  129. package/out/ui/packages/listItem/components/ListItem.d.ts +1 -0
  130. package/out/ui/packages/listItem/components/ListItem.luau +5 -0
  131. package/out/ui/packages/listItem/components/ListItem.styles.d.ts +1 -0
  132. package/out/ui/packages/listItem/components/ListItem.styles.luau +10 -5
  133. package/out/ui/packages/loadingStroke/components/LoadingStroke.d.ts +2 -0
  134. package/out/ui/packages/loadingStroke/components/LoadingStroke.luau +23 -19
  135. package/out/ui/packages/menu/components/Menu.d.ts +3 -0
  136. package/out/ui/packages/menu/components/Menu.luau +48 -23
  137. package/out/ui/packages/menu/components/Menu.styles.luau +5 -1
  138. package/out/ui/packages/modal/components/Modal.d.ts +1 -1
  139. package/out/ui/packages/modal/components/Modal.luau +55 -37
  140. package/out/ui/packages/motion/index.d.ts +1 -1
  141. package/out/ui/packages/motion/init.luau +1 -0
  142. package/out/ui/packages/motion/unit.d.ts +5 -0
  143. package/out/ui/packages/motion/unit.luau +23 -0
  144. package/out/ui/packages/numberInput/components/NumberInput.d.ts +2 -0
  145. package/out/ui/packages/numberInput/components/NumberInput.luau +4 -0
  146. package/out/ui/packages/pagination/components/Pagination.d.ts +2 -0
  147. package/out/ui/packages/pagination/components/Pagination.luau +37 -21
  148. package/out/ui/packages/pagination/components/Pagination.styles.luau +9 -0
  149. package/out/ui/packages/pagination/components/pageRange.d.ts +2 -1
  150. package/out/ui/packages/pagination/components/pageRange.luau +91 -8
  151. package/out/ui/packages/pagination/index.d.ts +1 -0
  152. package/out/ui/packages/pagination/init.luau +1 -0
  153. package/out/ui/packages/paper/components/Paper.d.ts +1 -0
  154. package/out/ui/packages/paper/components/Paper.luau +8 -3
  155. package/out/ui/packages/popup/index.d.ts +1 -0
  156. package/out/ui/packages/popup/init.luau +1 -0
  157. package/out/ui/packages/radioGroup/components/RadioGroup.d.ts +1 -0
  158. package/out/ui/packages/radioGroup/components/RadioGroup.luau +4 -2
  159. package/out/ui/packages/radioGroup/components/RadioGroup.styles.d.ts +1 -0
  160. package/out/ui/packages/radioGroup/components/RadioGroup.styles.luau +4 -1
  161. package/out/ui/packages/rating/components/Rating.d.ts +9 -0
  162. package/out/ui/packages/rating/components/Rating.luau +95 -0
  163. package/out/ui/packages/rating/components/Rating.styles.d.ts +4 -0
  164. package/out/ui/packages/rating/components/Rating.styles.luau +39 -0
  165. package/out/ui/packages/rating/index.d.ts +2 -0
  166. package/out/ui/packages/rating/init.luau +5 -0
  167. package/out/ui/packages/select/components/Select.d.ts +6 -0
  168. package/out/ui/packages/select/components/Select.luau +74 -27
  169. package/out/ui/packages/select/components/Select.styles.luau +3 -3
  170. package/out/ui/packages/sidebar/components/Sidebar.styles.luau +2 -2
  171. package/out/ui/packages/skeleton/components/Skeleton.luau +3 -2
  172. package/out/ui/packages/skeleton/components/Skeleton.styles.luau +7 -2
  173. package/out/ui/packages/skeleton/components/skeletonMotion.luau +1 -1
  174. package/out/ui/packages/skeleton/components/skeletonTone.d.ts +20 -0
  175. package/out/ui/packages/skeleton/components/skeletonTone.luau +14 -0
  176. package/out/ui/packages/slider/components/Slider.d.ts +1 -0
  177. package/out/ui/packages/slider/components/Slider.luau +24 -1
  178. package/out/ui/packages/slider/components/Slider.styles.luau +8 -0
  179. package/out/ui/packages/slider/components/sliderMarks.d.ts +1 -0
  180. package/out/ui/packages/slider/components/sliderMarks.luau +37 -0
  181. package/out/ui/packages/speedDial/components/SpeedDial.d.ts +17 -0
  182. package/out/ui/packages/speedDial/components/SpeedDial.luau +92 -0
  183. package/out/ui/packages/speedDial/components/SpeedDial.styles.d.ts +2 -0
  184. package/out/ui/packages/speedDial/components/SpeedDial.styles.luau +26 -0
  185. package/out/ui/packages/speedDial/index.d.ts +2 -0
  186. package/out/ui/packages/speedDial/init.luau +5 -0
  187. package/out/ui/packages/splitPane/components/splitLook.d.ts +1 -1
  188. package/out/ui/packages/stateMatrix.d.ts +2 -0
  189. package/out/ui/packages/stateMatrix.luau +1843 -1335
  190. package/out/ui/packages/switch/components/Switch.styles.luau +1 -1
  191. package/out/ui/packages/switch/components/switchLook.d.ts +1 -1
  192. package/out/ui/packages/tabs/components/Tabs.d.ts +2 -0
  193. package/out/ui/packages/tabs/components/Tabs.luau +10 -3
  194. package/out/ui/packages/tabs/components/Tabs.styles.d.ts +4 -1
  195. package/out/ui/packages/tabs/components/Tabs.styles.luau +24 -10
  196. package/out/ui/packages/tabs/components/tabsOrientation.d.ts +2 -0
  197. package/out/ui/packages/tabs/components/tabsOrientation.luau +7 -0
  198. package/out/ui/packages/tabs/index.d.ts +1 -0
  199. package/out/ui/packages/tabs/init.luau +1 -0
  200. package/out/ui/packages/toast/components/Toast.styles.luau +1 -1
  201. package/out/ui/packages/toggleButton/components/ToggleButton.d.ts +17 -0
  202. package/out/ui/packages/toggleButton/components/ToggleButton.luau +126 -0
  203. package/out/ui/packages/toggleButton/components/ToggleButton.styles.d.ts +5 -0
  204. package/out/ui/packages/toggleButton/components/ToggleButton.styles.luau +58 -0
  205. package/out/ui/packages/toggleButton/index.d.ts +2 -0
  206. package/out/ui/packages/toggleButton/init.luau +7 -0
  207. package/out/ui/packages/treeView/components/TreeView.luau +3 -3
  208. package/out/ui/packages/treeView/components/TreeView.styles.luau +3 -3
  209. package/out/ui/packages/typography/components/Typography.styles.luau +4 -5
  210. package/out/ui/packages/virtualList/components/EmptyListHint.d.ts +6 -0
  211. package/out/ui/packages/virtualList/components/EmptyListHint.luau +32 -0
  212. package/out/ui/packages/virtualList/components/EmptyListHint.styles.d.ts +5 -0
  213. package/out/ui/packages/virtualList/components/EmptyListHint.styles.luau +26 -0
  214. package/out/ui/packages/virtualList/index.d.ts +2 -0
  215. package/out/ui/packages/virtualList/init.luau +1 -0
  216. package/package.json +2 -2
  217. package/out/theme/styles/utilities/interaction.d.ts +0 -13
  218. package/out/theme/styles/utilities/interaction.luau +0 -68
@@ -0,0 +1,98 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local React = TS.import(script, TS.getModule(script, "@rbxts", "react"))
4
+ local Icons = TS.import(script, script.Parent.Parent.Parent.Parent, "enums").Icons
5
+ local useAlertStyles = TS.import(script, script.Parent, "Alert.styles").default
6
+ local function Alert(props)
7
+ local _binding = props
8
+ local severity = _binding.severity
9
+ local title = _binding.title
10
+ local message = _binding.message
11
+ local onClose = _binding.onClose
12
+ local className = _binding.className
13
+ local sx = _binding.sx
14
+ local id = _binding.id
15
+ local ref = _binding.ref
16
+ local dismissible = onClose ~= nil
17
+ local styles = useAlertStyles({
18
+ severity = severity,
19
+ dismissible = dismissible,
20
+ })
21
+ local _attributes = {}
22
+ local _condition = id
23
+ if not (_condition ~= 0 and _condition == _condition and _condition ~= "" and _condition) then
24
+ _condition = "Alert"
25
+ end
26
+ _attributes.key = _condition
27
+ _attributes.ref = ref
28
+ for _k, _v in styles.root do
29
+ _attributes[_k] = _v
30
+ end
31
+ if className then
32
+ for _k, _v in className do
33
+ _attributes[_k] = _v
34
+ end
35
+ end
36
+ if sx then
37
+ for _k, _v in sx do
38
+ _attributes[_k] = _v
39
+ end
40
+ end
41
+ local _attributes_1 = table.clone(styles.padding)
42
+ setmetatable(_attributes_1, nil)
43
+ local _exp = React.createElement("uipadding", _attributes_1)
44
+ local _attributes_2 = table.clone(styles.corner)
45
+ setmetatable(_attributes_2, nil)
46
+ local _exp_1 = React.createElement("uicorner", _attributes_2)
47
+ local _attributes_3 = table.clone(styles.stroke)
48
+ setmetatable(_attributes_3, nil)
49
+ local _exp_2 = React.createElement("uistroke", _attributes_3)
50
+ local _condition_1 = dismissible
51
+ if _condition_1 then
52
+ local _attributes_4 = {
53
+ key = "Close",
54
+ }
55
+ for _k, _v in styles.close do
56
+ _attributes_4[_k] = _v
57
+ end
58
+ _attributes_4.Image = tostring(Icons.Close)
59
+ _attributes_4.Event = {
60
+ Activated = function()
61
+ return onClose()
62
+ end,
63
+ }
64
+ _condition_1 = (React.createElement("imagebutton", _attributes_4))
65
+ end
66
+ local _attributes_4 = {
67
+ key = "Body",
68
+ }
69
+ for _k, _v in styles.body do
70
+ _attributes_4[_k] = _v
71
+ end
72
+ local _attributes_5 = table.clone(styles.layout)
73
+ setmetatable(_attributes_5, nil)
74
+ local _exp_3 = React.createElement("uilistlayout", _attributes_5)
75
+ local _condition_2 = title ~= nil and title ~= ""
76
+ if _condition_2 then
77
+ local _attributes_6 = {
78
+ key = "Title",
79
+ }
80
+ for _k, _v in styles.title do
81
+ _attributes_6[_k] = _v
82
+ end
83
+ _attributes_6.Text = title
84
+ _condition_2 = React.createElement("textlabel", _attributes_6)
85
+ end
86
+ local _attributes_6 = {
87
+ key = "Message",
88
+ }
89
+ for _k, _v in styles.message do
90
+ _attributes_6[_k] = _v
91
+ end
92
+ _attributes_6.Text = message
93
+ return React.createElement("frame", _attributes, _exp, _exp_1, _exp_2, _condition_1, React.createElement("frame", _attributes_4, _exp_3, _condition_2, React.createElement("textlabel", _attributes_6)))
94
+ end
95
+ local default = Alert
96
+ return {
97
+ default = default,
98
+ }
@@ -0,0 +1,6 @@
1
+ import { AlertSeverity } from "./alertTone";
2
+ declare const useAlertStyles: (props: {
3
+ severity?: AlertSeverity;
4
+ dismissible?: boolean;
5
+ }) => import("../../../../theme/index").ClassNameMap<string>;
6
+ export default useAlertStyles;
@@ -0,0 +1,93 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "theme")
4
+ local componentStyles = _theme.componentStyles
5
+ local createStyles = _theme.createStyles
6
+ local alertSeverity = TS.import(script, script.Parent, "alertTone").alertSeverity
7
+ local useAlertStyles = componentStyles("Alert", function(theme, _param)
8
+ local severity = _param.severity
9
+ local dismissible = _param.dismissible
10
+ local tone = theme.palette.status[alertSeverity(severity)]
11
+ local closeSize = theme.spacing.calc(2)
12
+ local _object = {
13
+ root = {
14
+ AutomaticSize = Enum.AutomaticSize.Y,
15
+ Size = UDim2.new(1, 0, 0, 0),
16
+ BackgroundColor3 = tone.surface,
17
+ BorderSizePixel = 0,
18
+ },
19
+ padding = {
20
+ PaddingTop = UDim.new(0, theme.padding.calc(1.5)),
21
+ PaddingBottom = UDim.new(0, theme.padding.calc(1.5)),
22
+ PaddingLeft = UDim.new(0, theme.padding.calc(2)),
23
+ PaddingRight = UDim.new(0, theme.padding.calc(2)),
24
+ },
25
+ corner = {
26
+ CornerRadius = UDim.new(0, theme.shape.borderRadius),
27
+ },
28
+ stroke = {
29
+ Color = tone.border,
30
+ Thickness = 1,
31
+ Transparency = 0,
32
+ ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
33
+ },
34
+ body = {
35
+ AutomaticSize = Enum.AutomaticSize.Y,
36
+ Size = UDim2.new(1, if dismissible == true then -(closeSize + theme.padding.calc(1)) else 0, 0, 0),
37
+ BackgroundTransparency = 1,
38
+ BorderSizePixel = 0,
39
+ },
40
+ layout = {
41
+ FillDirection = Enum.FillDirection.Vertical,
42
+ HorizontalAlignment = Enum.HorizontalAlignment.Left,
43
+ VerticalAlignment = Enum.VerticalAlignment.Center,
44
+ SortOrder = Enum.SortOrder.LayoutOrder,
45
+ Padding = UDim.new(0, theme.padding.calc(0.5)),
46
+ },
47
+ title = {
48
+ AutomaticSize = Enum.AutomaticSize.XY,
49
+ Size = UDim2.fromScale(0, 0),
50
+ BackgroundTransparency = 1,
51
+ BorderSizePixel = 0,
52
+ Font = theme.typography.fontFamilies.default,
53
+ TextSize = theme.typography.fontSizes.body,
54
+ TextColor3 = tone.main,
55
+ TextXAlignment = Enum.TextXAlignment.Left,
56
+ LayoutOrder = 1,
57
+ },
58
+ }
59
+ local _left = "message"
60
+ local _object_1 = {
61
+ AutomaticSize = Enum.AutomaticSize.XY,
62
+ Size = UDim2.fromScale(0, 0),
63
+ BackgroundTransparency = 1,
64
+ BorderSizePixel = 0,
65
+ Font = theme.typography.fontFamilies.default,
66
+ }
67
+ local _left_1 = "TextSize"
68
+ local _condition = theme.typography.fontSizes.caption
69
+ if _condition == nil then
70
+ _condition = theme.typography.fontSizes.body
71
+ end
72
+ _object_1[_left_1] = _condition
73
+ _object_1.TextColor3 = theme.palette.text.primary
74
+ _object_1.TextXAlignment = Enum.TextXAlignment.Left
75
+ _object_1.TextWrapped = true
76
+ _object_1.LayoutOrder = 2
77
+ _object[_left] = _object_1
78
+ _object.close = {
79
+ Size = UDim2.fromOffset(closeSize, closeSize),
80
+ Position = UDim2.new(1, 0, 0, 0),
81
+ AnchorPoint = Vector2.new(1, 0),
82
+ BackgroundTransparency = 1,
83
+ BorderSizePixel = 0,
84
+ ImageColor3 = theme.palette.text.secondary,
85
+ ScaleType = Enum.ScaleType.Fit,
86
+ ZIndex = 2,
87
+ }
88
+ return createStyles(_object)
89
+ end)
90
+ local default = useAlertStyles
91
+ return {
92
+ default = default,
93
+ }
@@ -0,0 +1,2 @@
1
+ export type AlertSeverity = "info" | "success" | "warning" | "error";
2
+ export declare function alertSeverity(severity?: AlertSeverity): AlertSeverity;
@@ -0,0 +1,7 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local function alertSeverity(severity)
3
+ return severity or "info"
4
+ end
5
+ return {
6
+ alertSeverity = alertSeverity,
7
+ }
@@ -0,0 +1,3 @@
1
+ export { default as Alert } from "./components/Alert";
2
+ export { AlertProps } from "./components/Alert";
3
+ export { AlertSeverity, alertSeverity } from "./components/alertTone";
@@ -0,0 +1,6 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local exports = {}
4
+ exports.Alert = TS.import(script, script, "components", "Alert").default
5
+ exports.alertSeverity = TS.import(script, script, "components", "alertTone").alertSeverity
6
+ return exports
@@ -0,0 +1,10 @@
1
+ import React from "@rbxts/react";
2
+ import { CustomizedProps } from "../../../../theme/index";
3
+ import { AppBarElevation } from "./AppBar.styles";
4
+ export interface AppBarProps {
5
+ title?: string;
6
+ elevation?: AppBarElevation;
7
+ children?: React.ReactNode;
8
+ }
9
+ declare function AppBar(props: CustomizedProps<Frame, AppBarProps>): JSX.Element;
10
+ export default AppBar;
@@ -0,0 +1,77 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local React = TS.import(script, TS.getModule(script, "@rbxts", "react"))
4
+ local Shadow = TS.import(script, script.Parent.Parent.Parent, "shadow").Shadow
5
+ local useAppBarStyles = TS.import(script, script.Parent, "AppBar.styles").default
6
+ local function AppBar(props)
7
+ local _binding = props
8
+ local title = _binding.title
9
+ if title == nil then
10
+ title = ""
11
+ end
12
+ local elevation = _binding.elevation
13
+ if elevation == nil then
14
+ elevation = "raised"
15
+ end
16
+ local children = _binding.children
17
+ local className = _binding.className
18
+ local sx = _binding.sx
19
+ local id = _binding.id
20
+ local ref = _binding.ref
21
+ local styles = useAppBarStyles({
22
+ elevation = elevation,
23
+ hasActions = children ~= nil,
24
+ })
25
+ local _attributes = {}
26
+ local _condition = id
27
+ if not (_condition ~= 0 and _condition == _condition and _condition ~= "" and _condition) then
28
+ _condition = "AppBar"
29
+ end
30
+ _attributes.key = _condition
31
+ _attributes.ref = ref
32
+ for _k, _v in styles.root do
33
+ _attributes[_k] = _v
34
+ end
35
+ if className then
36
+ for _k, _v in className do
37
+ _attributes[_k] = _v
38
+ end
39
+ end
40
+ if sx then
41
+ for _k, _v in sx do
42
+ _attributes[_k] = _v
43
+ end
44
+ end
45
+ local _attributes_1 = table.clone(styles.padding)
46
+ setmetatable(_attributes_1, nil)
47
+ local _exp = React.createElement("uipadding", _attributes_1)
48
+ local _exp_1 = elevation == "raised" and React.createElement(Shadow)
49
+ local _condition_1 = title ~= ""
50
+ if _condition_1 then
51
+ local _attributes_2 = {
52
+ key = "Title",
53
+ }
54
+ for _k, _v in styles.title do
55
+ _attributes_2[_k] = _v
56
+ end
57
+ _attributes_2.Text = title
58
+ _condition_1 = React.createElement("textlabel", _attributes_2)
59
+ end
60
+ local _condition_2 = children ~= nil
61
+ if _condition_2 then
62
+ local _attributes_2 = {
63
+ key = "Actions",
64
+ }
65
+ for _k, _v in styles.actions do
66
+ _attributes_2[_k] = _v
67
+ end
68
+ local _attributes_3 = table.clone(styles.actionsLayout)
69
+ setmetatable(_attributes_3, nil)
70
+ _condition_2 = (React.createElement("frame", _attributes_2, React.createElement("uilistlayout", _attributes_3), children))
71
+ end
72
+ return React.createElement("frame", _attributes, _exp, _exp_1, _condition_1, _condition_2)
73
+ end
74
+ local default = AppBar
75
+ return {
76
+ default = default,
77
+ }
@@ -0,0 +1,6 @@
1
+ export type AppBarElevation = "flat" | "raised";
2
+ declare const useAppBarStyles: (props: {
3
+ elevation?: AppBarElevation;
4
+ hasActions?: boolean;
5
+ }) => import("../../../../theme/index").ClassNameMap<string>;
6
+ export default useAppBarStyles;
@@ -0,0 +1,66 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "theme")
4
+ local componentStyles = _theme.componentStyles
5
+ local createStyles = _theme.createStyles
6
+ local useAppBarStyles = componentStyles("AppBar", function(theme, _param)
7
+ local elevation = _param.elevation
8
+ if elevation == nil then
9
+ elevation = "raised"
10
+ end
11
+ local hasActions = _param.hasActions
12
+ if hasActions == nil then
13
+ hasActions = false
14
+ end
15
+ local _object = {
16
+ root = {
17
+ Size = UDim2.new(1, 0, 0, theme.spacing.calc(7)),
18
+ BackgroundColor3 = if elevation == "raised" then theme.palette.surface.elevated else theme.palette.surface.paper,
19
+ BorderSizePixel = 0,
20
+ ZIndex = 11000,
21
+ },
22
+ padding = {
23
+ PaddingLeft = UDim.new(0, theme.padding.calc(2)),
24
+ PaddingRight = UDim.new(0, theme.padding.calc(2)),
25
+ },
26
+ }
27
+ local _left = "title"
28
+ local _object_1 = {
29
+ Size = UDim2.new(1, if hasActions then -theme.spacing.calc(8) else 0, 1, 0),
30
+ BackgroundTransparency = 1,
31
+ BorderSizePixel = 0,
32
+ Font = theme.typography.fontFamilies.default,
33
+ }
34
+ local _left_1 = "TextSize"
35
+ local _condition = theme.typography.fontSizes.h3
36
+ if _condition == nil then
37
+ _condition = theme.typography.fontSizes.body
38
+ end
39
+ _object_1[_left_1] = _condition
40
+ _object_1.TextColor3 = theme.palette.text.primary
41
+ _object_1.TextXAlignment = Enum.TextXAlignment.Left
42
+ _object_1.TextYAlignment = Enum.TextYAlignment.Center
43
+ _object_1.TextTruncate = Enum.TextTruncate.AtEnd
44
+ _object[_left] = _object_1
45
+ _object.actions = {
46
+ AutomaticSize = Enum.AutomaticSize.X,
47
+ Size = UDim2.new(0, 0, 1, 0),
48
+ Position = UDim2.new(1, 0, 0, 0),
49
+ AnchorPoint = Vector2.new(1, 0),
50
+ BackgroundTransparency = 1,
51
+ BorderSizePixel = 0,
52
+ ZIndex = 2,
53
+ }
54
+ _object.actionsLayout = {
55
+ FillDirection = Enum.FillDirection.Horizontal,
56
+ HorizontalAlignment = Enum.HorizontalAlignment.Right,
57
+ VerticalAlignment = Enum.VerticalAlignment.Center,
58
+ SortOrder = Enum.SortOrder.LayoutOrder,
59
+ Padding = UDim.new(0, theme.padding.calc(1)),
60
+ }
61
+ return createStyles(_object)
62
+ end)
63
+ local default = useAppBarStyles
64
+ return {
65
+ default = default,
66
+ }
@@ -0,0 +1,3 @@
1
+ export { default as AppBar } from "./components/AppBar";
2
+ export { AppBarProps } from "./components/AppBar";
3
+ export { AppBarElevation } from "./components/AppBar.styles";
@@ -0,0 +1,5 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local exports = {}
4
+ exports.AppBar = TS.import(script, script, "components", "AppBar").default
5
+ return exports
@@ -10,8 +10,13 @@ local function Autocomplete(props)
10
10
  local options = _binding.options
11
11
  local onChange = _binding.onChange
12
12
  local disabled = _binding.disabled
13
+ local loading = _binding.loading
13
14
  local placeholder = _binding.placeholder
14
15
  local searchable = _binding.searchable
16
+ local defaultOpen = _binding.defaultOpen
17
+ local defaultQuery = _binding.defaultQuery
18
+ local emptyText = _binding.emptyText
19
+ local empty = _binding.empty
15
20
  local reducedMotion = _binding.reducedMotion
16
21
  local size = _binding.size
17
22
  local className = _binding.className
@@ -24,8 +29,13 @@ local function Autocomplete(props)
24
29
  options = options,
25
30
  onChange = onChange,
26
31
  disabled = disabled,
32
+ loading = loading,
27
33
  placeholder = placeholder,
28
34
  searchable = autocompleteSearchable(searchable),
35
+ defaultOpen = defaultOpen,
36
+ defaultQuery = defaultQuery,
37
+ emptyText = emptyText,
38
+ empty = empty,
29
39
  reducedMotion = reducedMotion,
30
40
  size = size,
31
41
  className = className,
@@ -0,0 +1,10 @@
1
+ import React from "@rbxts/react";
2
+ import { CustomizedProps } from "../../../../theme/index";
3
+ export interface BackdropProps {
4
+ open?: boolean;
5
+ invisible?: boolean;
6
+ onClick?: () => void;
7
+ children?: React.ReactNode;
8
+ }
9
+ declare function Backdrop(props: CustomizedProps<TextButton, BackdropProps>): JSX.Element | undefined;
10
+ export default Backdrop;
@@ -0,0 +1,58 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local React = TS.import(script, TS.getModule(script, "@rbxts", "react"))
4
+ local useBackdropStyles = TS.import(script, script.Parent, "Backdrop.styles").default
5
+ local function Backdrop(props)
6
+ local _binding = props
7
+ local open = _binding.open
8
+ if open == nil then
9
+ open = true
10
+ end
11
+ local invisible = _binding.invisible
12
+ local onClick = _binding.onClick
13
+ local children = _binding.children
14
+ local className = _binding.className
15
+ local sx = _binding.sx
16
+ local id = _binding.id
17
+ local ref = _binding.ref
18
+ local styles = useBackdropStyles({
19
+ invisible = invisible,
20
+ })
21
+ if open ~= true then
22
+ return nil
23
+ end
24
+ local _attributes = {}
25
+ local _condition = id
26
+ if not (_condition ~= 0 and _condition == _condition and _condition ~= "" and _condition) then
27
+ _condition = "Backdrop"
28
+ end
29
+ _attributes.key = _condition
30
+ _attributes.ref = ref
31
+ for _k, _v in styles.root do
32
+ _attributes[_k] = _v
33
+ end
34
+ if className then
35
+ for _k, _v in className do
36
+ _attributes[_k] = _v
37
+ end
38
+ end
39
+ if sx then
40
+ for _k, _v in sx do
41
+ _attributes[_k] = _v
42
+ end
43
+ end
44
+ _attributes.Event = {
45
+ Activated = function()
46
+ local _result = onClick
47
+ if _result ~= nil then
48
+ _result = _result()
49
+ end
50
+ return _result
51
+ end,
52
+ }
53
+ return React.createElement("textbutton", _attributes, children)
54
+ end
55
+ local default = Backdrop
56
+ return {
57
+ default = default,
58
+ }
@@ -0,0 +1,4 @@
1
+ declare const useBackdropStyles: (props: {
2
+ invisible?: boolean;
3
+ }) => import("../../../../theme/index").ClassNameMap<string>;
4
+ export default useBackdropStyles;
@@ -0,0 +1,24 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "theme")
4
+ local componentStyles = _theme.componentStyles
5
+ local createStyles = _theme.createStyles
6
+ local useBackdropStyles = componentStyles("Backdrop", function(theme, _param)
7
+ local invisible = _param.invisible
8
+ return createStyles({
9
+ root = {
10
+ Size = UDim2.fromScale(1, 1),
11
+ BackgroundColor3 = theme.palette.backdrop,
12
+ BackgroundTransparency = if invisible == true then 1 else 0.45,
13
+ BorderSizePixel = 0,
14
+ Text = "",
15
+ AutoButtonColor = false,
16
+ Selectable = false,
17
+ ZIndex = 30000,
18
+ },
19
+ })
20
+ end)
21
+ local default = useBackdropStyles
22
+ return {
23
+ default = default,
24
+ }
@@ -0,0 +1,2 @@
1
+ export { default as Backdrop } from "./components/Backdrop";
2
+ export { BackdropProps } from "./components/Backdrop";
@@ -0,0 +1,5 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local exports = {}
4
+ exports.Backdrop = TS.import(script, script, "components", "Backdrop").default
5
+ return exports
@@ -4,6 +4,7 @@ local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "the
4
4
  local componentStyles = _theme.componentStyles
5
5
  local createStyles = _theme.createStyles
6
6
  local useBadgeStyles = componentStyles("Badge", function(theme)
7
+ local diameter = theme.spacing.calc(2) + theme.padding.calc(1)
7
8
  return createStyles({
8
9
  root = {
9
10
  AutomaticSize = Enum.AutomaticSize.XY,
@@ -14,13 +15,15 @@ local useBadgeStyles = componentStyles("Badge", function(theme)
14
15
  badge = {
15
16
  AnchorPoint = Vector2.new(0.5, 0.5),
16
17
  Position = UDim2.fromScale(1, 0),
17
- AutomaticSize = Enum.AutomaticSize.XY,
18
- Size = UDim2.fromOffset(theme.padding.calc(2), theme.padding.calc(2)),
18
+ AutomaticSize = Enum.AutomaticSize.X,
19
+ Size = UDim2.fromOffset(diameter, diameter),
19
20
  BackgroundColor3 = theme.palette.status.error.main,
20
21
  BorderSizePixel = 0,
21
22
  Font = theme.typography.fontFamilies.default,
22
23
  TextSize = theme.typography.fontSizes.caption,
23
24
  TextColor3 = theme.palette.text.inverse,
25
+ TextXAlignment = Enum.TextXAlignment.Center,
26
+ TextYAlignment = Enum.TextYAlignment.Center,
24
27
  ZIndex = 2,
25
28
  },
26
29
  padding = {
@@ -28,7 +31,7 @@ local useBadgeStyles = componentStyles("Badge", function(theme)
28
31
  PaddingRight = UDim.new(0, theme.padding.calc(0.5)),
29
32
  },
30
33
  corner = {
31
- CornerRadius = UDim.new(1, 0),
34
+ CornerRadius = UDim.new(0.5, 0),
32
35
  },
33
36
  })
34
37
  end)
@@ -0,0 +1,10 @@
1
+ import { CustomizedProps } from "../../../../theme/index";
2
+ import { ChoiceOption } from "../../radioGroup/index";
3
+ export interface BottomNavigationProps<T> {
4
+ value: T;
5
+ options: ChoiceOption<T>[];
6
+ onChange: (value: T) => void;
7
+ disabled?: boolean;
8
+ }
9
+ declare function BottomNavigation<T>(props: CustomizedProps<Frame, BottomNavigationProps<T>>): JSX.Element;
10
+ export default BottomNavigation;
@@ -0,0 +1,86 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local React = TS.import(script, TS.getModule(script, "@rbxts", "react"))
4
+ local cx = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "theme").cx
5
+ local canActivate = TS.import(script, script.Parent.Parent.Parent, "button", "components", "activation").canActivate
6
+ local useBottomNavigationStyles = TS.import(script, script.Parent, "BottomNavigation.styles").default
7
+ local function BottomNavigation(props)
8
+ local _binding = props
9
+ local value = _binding.value
10
+ local options = _binding.options
11
+ local onChange = _binding.onChange
12
+ local disabled = _binding.disabled
13
+ local className = _binding.className
14
+ local sx = _binding.sx
15
+ local id = _binding.id
16
+ local ref = _binding.ref
17
+ local styles = useBottomNavigationStyles()
18
+ local count = math.max(#options, 1)
19
+ local _attributes = {}
20
+ local _condition = id
21
+ if not (_condition ~= 0 and _condition == _condition and _condition ~= "" and _condition) then
22
+ _condition = "BottomNavigation"
23
+ end
24
+ _attributes.key = _condition
25
+ _attributes.ref = ref
26
+ for _k, _v in styles.root do
27
+ _attributes[_k] = _v
28
+ end
29
+ if className then
30
+ for _k, _v in className do
31
+ _attributes[_k] = _v
32
+ end
33
+ end
34
+ if sx then
35
+ for _k, _v in sx do
36
+ _attributes[_k] = _v
37
+ end
38
+ end
39
+ local _attributes_1 = table.clone(styles.list)
40
+ setmetatable(_attributes_1, nil)
41
+ local _exp = React.createElement("uilistlayout", _attributes_1)
42
+ -- ▼ ReadonlyArray.map ▼
43
+ local _newValue = table.create(#options)
44
+ local _callback = function(choice, index)
45
+ local active = canActivate(disabled or choice.disabled)
46
+ local selected = choice.value == value
47
+ local _attributes_2 = {
48
+ key = `{choice.label}-{index}`,
49
+ }
50
+ for _k, _v in cx(styles.item, selected and styles.selected, not active and styles.disabledItem) do
51
+ _attributes_2[_k] = _v
52
+ end
53
+ _attributes_2.Size = UDim2.new(1 / count, 0, 1, 0)
54
+ _attributes_2.Text = choice.label
55
+ _attributes_2.LayoutOrder = index
56
+ _attributes_2.Active = active
57
+ _attributes_2.Selectable = active
58
+ _attributes_2.Event = {
59
+ Activated = function()
60
+ if active and choice.value ~= value then
61
+ onChange(choice.value)
62
+ end
63
+ end,
64
+ }
65
+ local _condition_1 = selected
66
+ if _condition_1 then
67
+ local _attributes_3 = {
68
+ key = "Indicator",
69
+ }
70
+ for _k, _v in styles.indicator do
71
+ _attributes_3[_k] = _v
72
+ end
73
+ _condition_1 = React.createElement("frame", _attributes_3)
74
+ end
75
+ return React.createElement("textbutton", _attributes_2, _condition_1)
76
+ end
77
+ for _k, _v in options do
78
+ _newValue[_k] = _callback(_v, _k - 1, options)
79
+ end
80
+ -- ▲ ReadonlyArray.map ▲
81
+ return React.createElement("frame", _attributes, _exp, _newValue)
82
+ end
83
+ local default = BottomNavigation
84
+ return {
85
+ default = default,
86
+ }
@@ -0,0 +1,2 @@
1
+ declare const useBottomNavigationStyles: () => import("../../../../theme/index").ClassNameMap<string>;
2
+ export default useBottomNavigationStyles;