@rbxts/react-clean-ui 1.0.19 → 1.0.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/out/Components/Chart/BarChart.d.ts +47 -0
  2. package/out/Components/Chart/BarChart.luau +880 -0
  3. package/out/Components/Chart/Pie.luau +12 -12
  4. package/out/Components/Chart/index.d.ts +1 -0
  5. package/out/Components/Chart/init.luau +3 -0
  6. package/out/Components/Input/Button.d.ts +9 -0
  7. package/out/Components/Input/Button.luau +155 -46
  8. package/out/Components/Input/Checkbox.luau +21 -5
  9. package/out/Components/Input/Increment.d.ts +11 -0
  10. package/out/Components/Input/Increment.luau +107 -0
  11. package/out/Components/Input/Increment.step.d.ts +1 -0
  12. package/out/Components/Input/Increment.step.luau +25 -0
  13. package/out/Components/Input/Input.d.ts +4 -3
  14. package/out/Components/Input/Input.luau +124 -17
  15. package/out/Components/Input/Input.validation.d.ts +3 -0
  16. package/out/Components/Input/Input.validation.luau +21 -0
  17. package/out/Components/Input/Select.d.ts +4 -3
  18. package/out/Components/Input/Select.luau +23 -18
  19. package/out/Components/Input/Slider.d.ts +1 -1
  20. package/out/Components/Input/Slider.luau +68 -34
  21. package/out/Components/Input/index.d.ts +1 -0
  22. package/out/Components/Input/init.luau +3 -0
  23. package/out/Components/Interaction/Toast.d.ts +1 -1
  24. package/out/Components/Interaction/Toast.luau +4 -4
  25. package/out/Components/Interaction/Tooltip.d.ts +1 -1
  26. package/out/Components/Interaction/Tooltip.luau +8 -1
  27. package/out/Components/Layout/Accordion.d.ts +34 -0
  28. package/out/Components/Layout/Accordion.luau +431 -0
  29. package/out/Components/Layout/Container.d.ts +4 -2
  30. package/out/Components/Layout/Container.luau +32 -7
  31. package/out/Components/Layout/Draggable.luau +1 -1
  32. package/out/Components/Layout/Fieldset.d.ts +1 -1
  33. package/out/Components/Layout/FlexItem.d.ts +2 -1
  34. package/out/Components/Layout/FlexItem.luau +1 -0
  35. package/out/Components/Layout/HStack.d.ts +2 -1
  36. package/out/Components/Layout/HStack.luau +1 -2
  37. package/out/Components/Layout/Scroller.d.ts +1 -0
  38. package/out/Components/Layout/Scroller.luau +1 -1
  39. package/out/Components/Layout/Tabs.d.ts +1 -1
  40. package/out/Components/Layout/Tabs.luau +37 -7
  41. package/out/Components/Layout/VStack.d.ts +4 -1
  42. package/out/Components/Layout/VStack.luau +2 -2
  43. package/out/Components/Layout/index.d.ts +1 -0
  44. package/out/Components/Layout/init.luau +3 -0
  45. package/out/Components/Navigation/Menu.d.ts +1 -1
  46. package/out/Components/Surface/Box.d.ts +5 -3
  47. package/out/Components/Surface/Box.luau +12 -3
  48. package/out/Components/Surface/Card.d.ts +8 -6
  49. package/out/Components/Surface/Card.luau +430 -26
  50. package/out/Components/Surface/Icon.d.ts +1 -1
  51. package/out/Components/Surface/Icon.luau +43 -4
  52. package/out/Components/Typography/Text.d.ts +1 -0
  53. package/out/Components/Typography/Text.luau +135 -13
  54. package/out/Contexts/row.context.d.ts +1 -1
  55. package/out/Contexts/theme.context.d.ts +2 -2
  56. package/out/Helpers/color.helper.d.ts +5 -3
  57. package/out/Helpers/color.helper.luau +62 -34
  58. package/out/Helpers/create-ui-story.d.ts +8 -6
  59. package/out/Helpers/create-ui-story.luau +48 -5
  60. package/out/Helpers/css.helper.d.ts +28 -2
  61. package/out/Helpers/css.helper.luau +208 -0
  62. package/out/Helpers/index.d.ts +1 -0
  63. package/out/Helpers/init.luau +3 -0
  64. package/out/Helpers/size.helper.d.ts +3 -1
  65. package/out/Helpers/size.helper.luau +10 -9
  66. package/out/Helpers/spacing.helper.d.ts +3 -3
  67. package/out/Helpers/typography.helper.d.ts +2 -2
  68. package/out/Interfaces/css.types.d.ts +28 -0
  69. package/out/Interfaces/css.types.luau +17 -0
  70. package/out/Interfaces/element.props.d.ts +61 -0
  71. package/out/Interfaces/element.props.luau +1 -0
  72. package/out/Interfaces/index.d.ts +4 -2
  73. package/out/Interfaces/init.luau +9 -3
  74. package/out/Interfaces/responsive.types.d.ts +26 -0
  75. package/out/Interfaces/semantics.d.ts +3 -0
  76. package/out/Interfaces/semantics.luau +2 -0
  77. package/out/Providers/app.provider.d.ts +2 -2
  78. package/out/Providers/theme.provider.d.ts +2 -2
  79. package/out/Theme/index.d.ts +1 -0
  80. package/out/Theme/theme.factory.d.ts +3 -3
  81. package/out/Theme/theme.style.d.ts +48 -0
  82. package/out/Theme/theme.style.luau +1 -0
  83. package/out/Theme/theme.template.d.ts +90 -36
  84. package/out/Theme/themes/dark.theme.d.ts +1 -1
  85. package/out/Theme/themes/dark.theme.luau +73 -1
  86. package/out/Theme/themes/default.theme.d.ts +2 -2
  87. package/out/Theme/themes/default.theme.luau +122 -12
  88. package/out/Theme/themes/index.d.ts +1 -0
  89. package/out/Theme/themes/init.luau +3 -0
  90. package/out/Theme/themes/sandstone.theme.d.ts +1 -1
  91. package/out/Theme/themes/sandstone.theme.luau +81 -10
  92. package/out/Theme/themes/wooden.theme.d.ts +1 -0
  93. package/out/Theme/themes/wooden.theme.luau +443 -0
  94. package/out/index.d.ts +8 -8
  95. package/package.json +20 -6
  96. package/out/Interfaces/clean.element.props.d.ts +0 -114
  97. /package/out/{Interfaces/userinput.d.ts → Helpers/input.helper.d.ts} +0 -0
  98. /package/out/{Interfaces/userinput.luau → Helpers/input.helper.luau} +0 -0
  99. /package/out/Interfaces/{clean.element.props.luau → responsive.types.luau} +0 -0
@@ -0,0 +1,443 @@
1
+ -- Compiled with roblox-ts v3.0.0
2
+ local TS = _G[script]
3
+ local createTheme = TS.import(script, script.Parent.Parent, "theme.factory").createTheme
4
+ local font = Enum.Font.PatrickHand
5
+ local WoodenTheme = createTheme({
6
+ typography = {
7
+ display = {
8
+ font = font,
9
+ size = Enum.FontSize.Size60,
10
+ letterSpacing = 5,
11
+ },
12
+ title = {
13
+ font = font,
14
+ size = Enum.FontSize.Size48,
15
+ letterSpacing = 3,
16
+ },
17
+ heading = {
18
+ font = font,
19
+ size = Enum.FontSize.Size32,
20
+ letterSpacing = 2,
21
+ },
22
+ body = {
23
+ font = font,
24
+ size = Enum.FontSize.Size24,
25
+ },
26
+ label = {
27
+ font = font,
28
+ size = Enum.FontSize.Size18,
29
+ },
30
+ caption = {
31
+ font = font,
32
+ size = Enum.FontSize.Size14,
33
+ },
34
+ },
35
+ colors = {
36
+ intents = {
37
+ primary = {
38
+ default = {
39
+ textColor = Color3.fromHex("#FFF7CF"),
40
+ },
41
+ },
42
+ },
43
+ },
44
+ components = {
45
+ button = {
46
+ cornerRadius = 0,
47
+ backgroundTransparency = 1,
48
+ borderThickness = 0,
49
+ intents = {
50
+ primary = {
51
+ default = {
52
+ textColor = Color3.fromHex("#FFF7CF"),
53
+ backgroundImage = {
54
+ image = 92016395170536,
55
+ slice = "10 5 240 40",
56
+ tintColor = Color3.fromHex("#A16B30"),
57
+ },
58
+ },
59
+ hover = {
60
+ backgroundImage = {
61
+ tintColor = Color3.fromHex("#BA854A"),
62
+ },
63
+ },
64
+ disabled = {
65
+ textColor = Color3.fromHex("#a4a29f"),
66
+ backgroundImage = {
67
+ transparency = 0.3,
68
+ },
69
+ },
70
+ },
71
+ success = {
72
+ default = {
73
+ backgroundImage = {
74
+ tintColor = Color3.fromHex("#63ff00"),
75
+ },
76
+ },
77
+ hover = {
78
+ backgroundImage = {
79
+ tintColor = Color3.fromHex("#29ff52"),
80
+ },
81
+ },
82
+ },
83
+ info = {
84
+ default = {
85
+ backgroundImage = {
86
+ tintColor = Color3.fromHex("#00bfff"),
87
+ },
88
+ },
89
+ hover = {
90
+ backgroundImage = {
91
+ tintColor = Color3.fromHex("#29d4ff"),
92
+ },
93
+ },
94
+ },
95
+ warning = {
96
+ default = {
97
+ backgroundImage = {
98
+ tintColor = Color3.fromHex("#ffbf00"),
99
+ },
100
+ },
101
+ hover = {
102
+ backgroundImage = {
103
+ tintColor = Color3.fromHex("#ffd429"),
104
+ },
105
+ },
106
+ },
107
+ danger = {
108
+ default = {
109
+ backgroundImage = {
110
+ tintColor = Color3.fromHex("#ff0000"),
111
+ },
112
+ },
113
+ hover = {
114
+ backgroundImage = {
115
+ tintColor = Color3.fromHex("#ff2929"),
116
+ },
117
+ },
118
+ },
119
+ },
120
+ },
121
+ tabs = {
122
+ list = {
123
+ borderThickness = 0,
124
+ cornerRadius = 0,
125
+ backgroundTransparency = 1,
126
+ backgroundImage = {
127
+ image = 92016395170536,
128
+ slice = "10 5 240 40",
129
+ tintColor = Color3.fromHex("#5C3A18"),
130
+ },
131
+ },
132
+ button = {
133
+ cornerRadius = 0,
134
+ borderThickness = 0,
135
+ intents = {
136
+ primary = {
137
+ default = {
138
+ textColor = Color3.fromHex("#FFF7CF"),
139
+ backgroundTransparency = 1,
140
+ backgroundImage = {
141
+ image = 92016395170536,
142
+ slice = "10 5 240 40",
143
+ tintColor = Color3.fromHex("#A16B30"),
144
+ },
145
+ },
146
+ hover = {
147
+ textColor = Color3.fromHex("#d3cba3"),
148
+ backgroundTransparency = 1,
149
+ backgroundImage = {
150
+ tintColor = Color3.fromHex("#BA854A"),
151
+ },
152
+ },
153
+ focus = {
154
+ textColor = Color3.fromHex("#FFF7CF"),
155
+ backgroundTransparency = 1,
156
+ backgroundImage = {
157
+ tintColor = Color3.fromHex("#7A4A20"),
158
+ },
159
+ },
160
+ },
161
+ success = {
162
+ default = {
163
+ backgroundTransparency = 1,
164
+ backgroundImage = {
165
+ tintColor = Color3.fromHex("#63ff00"),
166
+ },
167
+ },
168
+ hover = {
169
+ backgroundTransparency = 1,
170
+ backgroundImage = {
171
+ tintColor = Color3.fromHex("#29ff52"),
172
+ },
173
+ },
174
+ },
175
+ info = {
176
+ default = {
177
+ backgroundTransparency = 1,
178
+ backgroundImage = {
179
+ tintColor = Color3.fromHex("#00bfff"),
180
+ },
181
+ },
182
+ hover = {
183
+ backgroundTransparency = 1,
184
+ backgroundImage = {
185
+ tintColor = Color3.fromHex("#29d4ff"),
186
+ },
187
+ },
188
+ },
189
+ warning = {
190
+ default = {
191
+ backgroundTransparency = 1,
192
+ backgroundImage = {
193
+ tintColor = Color3.fromHex("#ffbf00"),
194
+ },
195
+ },
196
+ hover = {
197
+ backgroundTransparency = 1,
198
+ backgroundImage = {
199
+ tintColor = Color3.fromHex("#ffd429"),
200
+ },
201
+ },
202
+ },
203
+ danger = {
204
+ default = {
205
+ backgroundTransparency = 1,
206
+ backgroundImage = {
207
+ tintColor = Color3.fromHex("#ff0000"),
208
+ },
209
+ },
210
+ hover = {
211
+ backgroundTransparency = 1,
212
+ backgroundImage = {
213
+ tintColor = Color3.fromHex("#ff2929"),
214
+ },
215
+ },
216
+ },
217
+ },
218
+ },
219
+ },
220
+ box = {
221
+ borderThickness = 0,
222
+ boxShadow = 0,
223
+ cornerRadius = 0,
224
+ backgroundTransparency = 1,
225
+ padding = "35px 40px 40px 40px",
226
+ backgroundImage = {
227
+ image = 89050878990049,
228
+ slice = "54 55 969 565",
229
+ },
230
+ },
231
+ input = {
232
+ cornerRadius = 0,
233
+ borderThickness = 0,
234
+ backgroundImage = {
235
+ image = 92016395170536,
236
+ slice = "10 5 248 44",
237
+ tintColor = Color3.fromHex("#295896"),
238
+ },
239
+ placeholder = {
240
+ color = Color3.fromHex("#546b8a"),
241
+ },
242
+ },
243
+ card = {
244
+ borderThickness = 0,
245
+ cornerRadius = 0,
246
+ header = {
247
+ intents = {
248
+ primary = {
249
+ default = {
250
+ textColor = Color3.fromHex("#FFF7CF"),
251
+ borderColor = Color3.fromHex("#3D2712"),
252
+ backgroundTransparency = 1,
253
+ backgroundImage = {
254
+ image = 92016395170536,
255
+ slice = "10 5 240 40",
256
+ tintColor = Color3.fromHex("#7A4A20"),
257
+ },
258
+ },
259
+ },
260
+ success = {
261
+ default = {
262
+ backgroundTransparency = 1,
263
+ backgroundImage = {
264
+ tintColor = Color3.fromHex("#4E6A24"),
265
+ },
266
+ },
267
+ },
268
+ info = {
269
+ default = {
270
+ backgroundTransparency = 1,
271
+ backgroundImage = {
272
+ tintColor = Color3.fromHex("#2C5270"),
273
+ },
274
+ },
275
+ },
276
+ warning = {
277
+ default = {
278
+ backgroundTransparency = 1,
279
+ backgroundImage = {
280
+ tintColor = Color3.fromHex("#A67A20"),
281
+ },
282
+ },
283
+ },
284
+ danger = {
285
+ default = {
286
+ backgroundTransparency = 1,
287
+ backgroundImage = {
288
+ tintColor = Color3.fromHex("#7A3220"),
289
+ },
290
+ },
291
+ },
292
+ },
293
+ position = {
294
+ position = "absolute",
295
+ center = "x",
296
+ top = "-10px",
297
+ zIndex = 2,
298
+ },
299
+ },
300
+ footer = {
301
+ spacing = {
302
+ xs = 1,
303
+ sm = 2,
304
+ md = 4,
305
+ lg = 6,
306
+ xl = 6,
307
+ },
308
+ intents = {
309
+ primary = {
310
+ default = {
311
+ textColor = Color3.fromHex("#FFF7CF"),
312
+ borderColor = Color3.fromHex("#3D2712"),
313
+ backgroundTransparency = 1,
314
+ backgroundImage = {
315
+ image = 92016395170536,
316
+ slice = "10 5 240 40",
317
+ tintColor = Color3.fromHex("#7A4A20"),
318
+ },
319
+ },
320
+ },
321
+ success = {
322
+ default = {
323
+ backgroundTransparency = 1,
324
+ backgroundImage = {
325
+ tintColor = Color3.fromHex("#4E6A24"),
326
+ },
327
+ },
328
+ },
329
+ info = {
330
+ default = {
331
+ backgroundTransparency = 1,
332
+ backgroundImage = {
333
+ tintColor = Color3.fromHex("#2C5270"),
334
+ },
335
+ },
336
+ },
337
+ warning = {
338
+ default = {
339
+ backgroundTransparency = 1,
340
+ backgroundImage = {
341
+ tintColor = Color3.fromHex("#A67A20"),
342
+ },
343
+ },
344
+ },
345
+ danger = {
346
+ default = {
347
+ backgroundTransparency = 1,
348
+ backgroundImage = {
349
+ tintColor = Color3.fromHex("#7A3220"),
350
+ },
351
+ },
352
+ },
353
+ },
354
+ position = {
355
+ position = "absolute",
356
+ bottom = "-10px",
357
+ left = "50px",
358
+ right = "50px",
359
+ zIndex = 2,
360
+ },
361
+ },
362
+ },
363
+ select = {
364
+ cornerRadius = 0,
365
+ borderThickness = 0,
366
+ dropDownBackgroundColor = Color3.fromHex("#295896"),
367
+ backgroundImage = {
368
+ image = 92016395170536,
369
+ slice = "10 5 248 44",
370
+ tintColor = Color3.fromHex("#295896"),
371
+ },
372
+ intents = {
373
+ primary = {
374
+ default = {
375
+ textColor = Color3.fromHex("#FFF7CF"),
376
+ backgroundColor = Color3.fromHex("#295896"),
377
+ },
378
+ hover = {
379
+ textColor = Color3.fromHex("#FFF7CF"),
380
+ backgroundColor = Color3.fromHex("#376FAF"),
381
+ },
382
+ focus = {
383
+ textColor = Color3.fromHex("#FFF7CF"),
384
+ backgroundColor = Color3.fromHex("#1F477D"),
385
+ },
386
+ },
387
+ },
388
+ },
389
+ increment = {
390
+ button = {
391
+ intents = {
392
+ primary = {
393
+ default = {
394
+ backgroundImage = {
395
+ tintColor = Color3.fromHex("#6c6c6c"),
396
+ },
397
+ },
398
+ hover = {
399
+ backgroundImage = {
400
+ tintColor = Color3.fromHex("#847f7f"),
401
+ },
402
+ },
403
+ },
404
+ },
405
+ },
406
+ },
407
+ checkbox = {
408
+ cornerRadius = 4,
409
+ borderThickness = 3,
410
+ borderTransparency = 0,
411
+ backgroundImage = {
412
+ image = 84686427750506,
413
+ tintColor = Color3.fromHex("#A16B30"),
414
+ },
415
+ intents = {
416
+ primary = {
417
+ default = {
418
+ borderColor = Color3.fromHex("#3D2712"),
419
+ textColor = Color3.fromHex("#FFF7CF"),
420
+ },
421
+ },
422
+ success = {
423
+ default = {
424
+ borderColor = Color3.fromHex("#311f0e"),
425
+ },
426
+ },
427
+ info = {
428
+ default = {
429
+ textColor = Color3.fromHex("#00bfff"),
430
+ },
431
+ },
432
+ danger = {
433
+ default = {
434
+ textColor = Color3.fromHex("#ff0000"),
435
+ },
436
+ },
437
+ },
438
+ },
439
+ },
440
+ })
441
+ return {
442
+ WoodenTheme = WoodenTheme,
443
+ }
package/out/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- export * from "./Components";
2
- export * from "./Helpers";
3
- export * from "./Helpers/create-ui-story";
4
- export * from "./Theme";
5
- export * from "./Interfaces";
6
- export * from "./Providers";
7
- export * from "./Providers/app.provider";
8
- export * from "./Contexts";
1
+ export * from './Components';
2
+ export * from './Helpers';
3
+ export * from './Helpers/create-ui-story';
4
+ export * from './Theme';
5
+ export * from './Interfaces';
6
+ export * from './Providers';
7
+ export * from './Providers/app.provider';
8
+ export * from './Contexts';
package/package.json CHANGED
@@ -1,27 +1,41 @@
1
1
  {
2
2
  "name": "@rbxts/react-clean-ui",
3
- "version": "1.0.19",
4
- "description": "",
3
+ "version": "1.0.38",
4
+ "description": "A clean UI library for Roblox TypeScript projects",
5
5
  "main": "out/init.lua",
6
6
  "scripts": {
7
7
  "build": "rbxtsc",
8
8
  "watch": "rbxtsc -w",
9
- "prepublishOnly": "npm run build"
9
+ "prepublishOnly": "npm run build",
10
+ "screenshots": "node scripts/generate-screenshots.js",
11
+ "lint": "eslint src/",
12
+ "typecheck": "tsc --noEmit",
13
+ "format": "prettier --write .",
14
+ "format:check": "prettier --check ."
10
15
  },
11
- "keywords": [],
12
- "author": "",
16
+ "keywords": [
17
+ "rbxts",
18
+ "react",
19
+ "ui",
20
+ "clean",
21
+ "shadercloud"
22
+ ],
23
+ "author": "ShaderCloud",
13
24
  "license": "ISC",
14
25
  "type": "commonjs",
15
26
  "types": "out/index.d.ts",
16
27
  "files": [
17
28
  "out",
18
- "!**/*.tsbuildinfo"
29
+ "!**/*.tsbuildinfo",
30
+ "!out/Tests/**"
19
31
  ],
20
32
  "publishConfig": {
21
33
  "access": "public"
22
34
  },
23
35
  "devDependencies": {
24
36
  "@rbxts/compiler-types": "^3.0.0-types.0",
37
+ "@rbxts/lunit": "^4.0.2",
38
+ "@rbxts/react-screenshot-plugin": "^0.1.6",
25
39
  "@rbxts/types": "^1.0.938",
26
40
  "@typescript-eslint/eslint-plugin": "^8.63.0",
27
41
  "@typescript-eslint/parser": "^8.63.0",
@@ -1,114 +0,0 @@
1
- import { Binding } from "@rbxts/react";
2
- import { IconName } from "./icon";
3
- export type ButtonFlag = "default" | "hover" | "focus";
4
- export type CssUnit = "px" | "%";
5
- export type Breakpoint = "xs" | "sm" | "md" | "lg" | "xl";
6
- export declare const ScaleSizes: readonly ["xs", "sm", "md", "lg", "xl"];
7
- export type ScaleSize = typeof ScaleSizes[number];
8
- export type TextVariant = "display" | "title" | "heading" | "body" | "label" | "caption";
9
- export type Intent = "primary" | "success" | "warning" | "danger" | "info";
10
- export type GridSpan = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
11
- export interface ResponsiveGridSpan {
12
- xs?: GridSpan;
13
- sm?: GridSpan;
14
- md?: GridSpan;
15
- lg?: GridSpan;
16
- xl?: GridSpan;
17
- }
18
- export type ResponsiveValue<T> = T | Partial<Record<Breakpoint, T>>;
19
- export interface BreakpointValue<T> {
20
- xs?: T;
21
- sm?: T;
22
- md?: T;
23
- lg?: T;
24
- xl?: T;
25
- }
26
- export interface ScaleSizeValue<T> {
27
- xs?: T;
28
- sm?: T;
29
- md?: T;
30
- lg?: T;
31
- xl?: T;
32
- }
33
- export type CssSize = "Auto" | number | `${number}` | `${number}${CssUnit}`;
34
- export type CssBreakpoint = {
35
- xs: number;
36
- sm: number;
37
- md: number;
38
- lg: number;
39
- xl: number;
40
- };
41
- export type CssBreakpointSize = {
42
- xs?: CssSize;
43
- sm?: CssSize;
44
- md?: CssSize;
45
- lg?: CssSize;
46
- xl?: CssSize;
47
- };
48
- export type CssQuad = CssSize | `${CssSize} ${CssSize}` | `${CssSize} ${CssSize} ${CssSize}` | `${CssSize} ${CssSize} ${CssSize} ${CssSize}`;
49
- export type CssShadow = CssQuad;
50
- export type CssBoxShadow = {
51
- shadow: CssShadow;
52
- color: Color3;
53
- transparency: number;
54
- };
55
- export type CssPadding = CssQuad;
56
- export type ResponsiveCssSize = CssSize | CssBreakpointSize;
57
- export interface ZIndexElementProps {
58
- ZIndex?: number | Binding<number> | undefined;
59
- }
60
- export interface BackgroundElementProps {
61
- BackgroundTransparency?: number | Binding<number> | undefined;
62
- BackgroundColor3?: Color3 | Binding<Color3> | undefined;
63
- }
64
- export interface SizeElementProps {
65
- Size?: UDim2 | Binding<UDim2>;
66
- width?: ResponsiveCssSize;
67
- height?: CssSize;
68
- AutomaticSize?: Enum.AutomaticSize | Binding<Enum.AutomaticSize> | "None" | "X" | "Y" | "XY" | undefined;
69
- }
70
- export interface ScalableElementProps {
71
- scale?: ScaleSize;
72
- }
73
- export interface PositionElementProps {
74
- Position?: UDim2 | Binding<UDim2>;
75
- AnchorPoint?: Vector2 | Binding<Vector2> | undefined;
76
- center?: CssSize | boolean;
77
- top?: CssSize;
78
- left?: CssSize;
79
- right?: CssSize;
80
- bottom?: CssSize;
81
- }
82
- export interface IntentElementProps {
83
- intent?: Intent;
84
- }
85
- export interface CleanElementProps extends SizeElementProps, PositionElementProps {
86
- }
87
- export interface SpacedElementProps {
88
- spacing?: ScaleSize | "None";
89
- }
90
- export interface BreakPointElementProps {
91
- breakpoints?: BreakpointValue<number>;
92
- }
93
- export interface ShadowElementProps {
94
- "box-shadow"?: CssShadow;
95
- "box-shadow-color"?: Color3;
96
- "box-shadow-transparency"?: number;
97
- }
98
- export interface IconElementProps {
99
- icon?: IconName;
100
- }
101
- export interface PaddingProps extends SpacedElementProps {
102
- right?: ScaleSize | "None";
103
- left?: ScaleSize | "None";
104
- top?: ScaleSize | "None";
105
- bottom?: ScaleSize | "None";
106
- padding?: CssPadding;
107
- resolvedPadding?: ResolvedPadding;
108
- }
109
- export interface ResolvedPadding {
110
- top: number;
111
- bottom: number;
112
- left: number;
113
- right: number;
114
- }