@rbxts/uiblox 0.2.0-alpha.37 → 0.2.0-alpha.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/README.md +1 -18
  2. package/out/theme/constants/NumberConstants.d.ts +10 -0
  3. package/out/theme/constants/NumberConstants.luau +12 -0
  4. package/out/theme/interfaces/density/controlMetrics.luau +2 -2
  5. package/out/theme/interfaces/palette/Palette.d.ts +7 -0
  6. package/out/theme/interfaces/spacing/Shape.d.ts +6 -0
  7. package/out/theme/interfaces/theme/Theme.d.ts +6 -0
  8. package/out/theme/interfaces/typography/FontFamilies.luau +1 -0
  9. package/out/theme/interfaces/typography/FontFamilyOptions.d.ts +1 -1
  10. package/out/theme/interfaces/typography/FontSizeOptions.d.ts +1 -1
  11. package/out/theme/interfaces/typography/FontSizes.luau +2 -0
  12. package/out/theme/interfaces/typography/Variants.d.ts +3 -1
  13. package/out/theme/interfaces/typography/Variants.luau +25 -1
  14. package/out/theme/styles/utilities/focusRing.d.ts +2 -0
  15. package/out/theme/styles/utilities/focusRing.luau +3 -0
  16. package/out/theme/styles/utilities/index.d.ts +1 -1
  17. package/out/theme/styles/utilities/init.luau +3 -1
  18. package/out/theme/themes/DarkTheme.luau +4 -0
  19. package/out/theme/themes/LightTheme.luau +4 -0
  20. package/out/theme/themes/createPalette.luau +15 -0
  21. package/out/ui/packages/accordion/components/Accordion.luau +84 -40
  22. package/out/ui/packages/accordion/components/Accordion.styles.luau +35 -17
  23. package/out/ui/packages/alert/components/Alert.luau +15 -11
  24. package/out/ui/packages/alert/components/Alert.styles.luau +37 -26
  25. package/out/ui/packages/appBar/components/AppBar.luau +35 -13
  26. package/out/ui/packages/appBar/components/AppBar.styles.luau +41 -35
  27. package/out/ui/packages/autocomplete/components/Autocomplete.luau +4 -0
  28. package/out/ui/packages/avatar/components/Avatar.d.ts +2 -0
  29. package/out/ui/packages/avatar/components/Avatar.luau +9 -2
  30. package/out/ui/packages/avatar/components/Avatar.styles.luau +7 -0
  31. package/out/ui/packages/avatarGroup/components/AvatarGroup.luau +9 -4
  32. package/out/ui/packages/avatarGroup/components/AvatarGroup.styles.luau +6 -1
  33. package/out/ui/packages/badge/components/Badge.luau +14 -11
  34. package/out/ui/packages/badge/components/Badge.styles.luau +5 -1
  35. package/out/ui/packages/bottomNavigation/components/BottomNavigation.styles.luau +4 -3
  36. package/out/ui/packages/breadcrumbs/components/Breadcrumbs.luau +6 -2
  37. package/out/ui/packages/breadcrumbs/components/Breadcrumbs.styles.luau +4 -0
  38. package/out/ui/packages/brickColorPicker/components/BrickColorPicker.luau +20 -2
  39. package/out/ui/packages/brickColorPicker/components/BrickColorPicker.styles.luau +72 -66
  40. package/out/ui/packages/button/components/Button.luau +61 -34
  41. package/out/ui/packages/button/components/buttonPaint.d.ts +16 -0
  42. package/out/ui/packages/button/components/buttonPaint.luau +70 -0
  43. package/out/ui/packages/buttonGroup/components/ButtonGroup.d.ts +1 -0
  44. package/out/ui/packages/buttonGroup/components/ButtonGroup.luau +17 -2
  45. package/out/ui/packages/card/components/Card.styles.luau +4 -2
  46. package/out/ui/packages/cframeEditor/components/CFrameEditor.luau +9 -1
  47. package/out/ui/packages/cframeEditor/components/CFrameEditor.styles.luau +50 -41
  48. package/out/ui/packages/checkbox/components/Checkbox.luau +5 -4
  49. package/out/ui/packages/checkbox/components/checkboxLook.d.ts +2 -2
  50. package/out/ui/packages/checkbox/components/checkboxLook.luau +2 -2
  51. package/out/ui/packages/chip/components/Chip.luau +16 -14
  52. package/out/ui/packages/chip/components/Chip.styles.luau +7 -4
  53. package/out/ui/packages/circularProgress/components/CircularProgress.luau +10 -3
  54. package/out/ui/packages/codeEditor/components/CodeEditor.d.ts +12 -0
  55. package/out/ui/packages/codeEditor/components/CodeEditor.luau +262 -0
  56. package/out/ui/packages/codeEditor/components/CodeEditor.styles.d.ts +6 -0
  57. package/out/ui/packages/codeEditor/components/CodeEditor.styles.luau +124 -0
  58. package/out/ui/packages/codeEditor/highlightCode.d.ts +11 -0
  59. package/out/ui/packages/codeEditor/highlightCode.luau +503 -0
  60. package/out/ui/packages/codeEditor/index.d.ts +2 -0
  61. package/out/ui/packages/codeEditor/init.luau +5 -0
  62. package/out/ui/packages/colorPicker/components/ColorPicker.luau +9 -1
  63. package/out/ui/packages/colorPicker/components/ColorPicker.styles.luau +74 -67
  64. package/out/ui/packages/colorPicker/components/ColorSequenceEditor.luau +12 -4
  65. package/out/ui/packages/colorPicker/components/NumberSequenceEditor.luau +12 -4
  66. package/out/ui/packages/dateRange/components/DateRangePicker.luau +31 -19
  67. package/out/ui/packages/dialog/components/Dialog.styles.luau +4 -2
  68. package/out/ui/packages/divider/components/Divider.luau +3 -1
  69. package/out/ui/packages/divider/components/Divider.styles.luau +1 -0
  70. package/out/ui/packages/drawer/components/Drawer.d.ts +1 -0
  71. package/out/ui/packages/drawer/components/Drawer.luau +43 -14
  72. package/out/ui/packages/drawer/components/Drawer.styles.luau +13 -5
  73. package/out/ui/packages/drawer/components/drawerPlacement.d.ts +2 -0
  74. package/out/ui/packages/drawer/components/drawerPlacement.luau +18 -0
  75. package/out/ui/packages/editorFace.d.ts +22 -0
  76. package/out/ui/packages/editorFace.luau +49 -0
  77. package/out/ui/packages/fab/components/Fab.luau +19 -6
  78. package/out/ui/packages/fab/components/Fab.styles.luau +4 -3
  79. package/out/ui/packages/fab/components/fabSize.d.ts +1 -1
  80. package/out/ui/packages/fontEditor/components/FontEditor.luau +13 -3
  81. package/out/ui/packages/fontEditor/components/FontEditor.styles.luau +36 -27
  82. package/out/ui/packages/gradientEditor/components/GradientEditor.luau +21 -13
  83. package/out/ui/packages/gradientEditor/components/GradientEditor.styles.luau +52 -44
  84. package/out/ui/packages/icon/components/DrawnGlyph.d.ts +11 -0
  85. package/out/ui/packages/icon/components/DrawnGlyph.luau +87 -0
  86. package/out/ui/packages/icon/components/Icon.d.ts +6 -2
  87. package/out/ui/packages/icon/components/Icon.luau +23 -3
  88. package/out/ui/packages/icon/components/Icon.styles.luau +3 -0
  89. package/out/ui/packages/icon/components/glyphs.d.ts +28 -0
  90. package/out/ui/packages/icon/components/glyphs.luau +64 -0
  91. package/out/ui/packages/icon/index.d.ts +1 -0
  92. package/out/ui/packages/iconButton/components/IconButton.d.ts +5 -2
  93. package/out/ui/packages/iconButton/components/IconButton.luau +83 -16
  94. package/out/ui/packages/iconButton/components/IconButton.styles.luau +4 -27
  95. package/out/ui/packages/iconButton/components/iconButtonBox.d.ts +11 -0
  96. package/out/ui/packages/iconButton/components/iconButtonBox.luau +48 -0
  97. package/out/ui/packages/iconButton/components/transportGlyph.d.ts +1 -0
  98. package/out/ui/packages/iconButton/components/transportGlyph.luau +4 -0
  99. package/out/ui/packages/imageList/components/ImageList.luau +11 -36
  100. package/out/ui/packages/imageList/components/ImageList.styles.luau +1 -0
  101. package/out/ui/packages/imageList/components/imageListLayout.d.ts +0 -2
  102. package/out/ui/packages/imageList/components/imageListLayout.luau +0 -8
  103. package/out/ui/packages/index.d.ts +1 -0
  104. package/out/ui/packages/init.luau +3 -0
  105. package/out/ui/packages/input/components/Input.luau +46 -29
  106. package/out/ui/packages/input/components/Input.styles.luau +8 -11
  107. package/out/ui/packages/input/components/fieldChrome.d.ts +5 -0
  108. package/out/ui/packages/input/components/fieldChrome.luau +11 -0
  109. package/out/ui/packages/layout/components/Box.luau +92 -13
  110. package/out/ui/packages/layout/components/Box.styles.d.ts +0 -2
  111. package/out/ui/packages/layout/components/Box.styles.luau +0 -9
  112. package/out/ui/packages/layout/components/Grid.luau +81 -16
  113. package/out/ui/packages/layout/components/Pad.d.ts +24 -0
  114. package/out/ui/packages/layout/components/Pad.luau +88 -0
  115. package/out/ui/packages/layout/components/Stack.luau +79 -13
  116. package/out/ui/packages/link/components/Link.luau +19 -13
  117. package/out/ui/packages/link/components/Link.styles.luau +10 -1
  118. package/out/ui/packages/listItem/components/ListItem.luau +61 -4
  119. package/out/ui/packages/listItem/components/ListItem.styles.d.ts +1 -0
  120. package/out/ui/packages/listItem/components/ListItem.styles.luau +28 -11
  121. package/out/ui/packages/listItem/components/listItemInk.d.ts +1 -1
  122. package/out/ui/packages/listItem/components/listItemLayout.d.ts +12 -2
  123. package/out/ui/packages/listItem/components/listItemLayout.luau +29 -2
  124. package/out/ui/packages/markdown/components/Markdown.luau +163 -50
  125. package/out/ui/packages/markdown/components/Markdown.styles.luau +125 -76
  126. package/out/ui/packages/markdown/components/MarkdownEditor.luau +215 -146
  127. package/out/ui/packages/markdown/components/MarkdownEditor.styles.d.ts +1 -0
  128. package/out/ui/packages/markdown/components/MarkdownEditor.styles.luau +153 -83
  129. package/out/ui/packages/markdown/index.d.ts +1 -1
  130. package/out/ui/packages/markdown/parseMarkdown.d.ts +9 -1
  131. package/out/ui/packages/markdown/parseMarkdown.luau +350 -29
  132. package/out/ui/packages/menu/components/Menu.d.ts +1 -1
  133. package/out/ui/packages/menu/components/Menu.luau +12 -11
  134. package/out/ui/packages/menu/components/Menu.styles.luau +6 -1
  135. package/out/ui/packages/menu/components/menuIcon.d.ts +1 -1
  136. package/out/ui/packages/numberInput/components/NumberInput.luau +19 -4
  137. package/out/ui/packages/numberRangeEditor/components/NumberRangeEditor.luau +9 -1
  138. package/out/ui/packages/numberRangeEditor/components/NumberRangeEditor.styles.luau +23 -16
  139. package/out/ui/packages/pager/components/Pager.luau +15 -13
  140. package/out/ui/packages/pager/components/Pager.styles.luau +5 -0
  141. package/out/ui/packages/pagination/components/Pagination.styles.luau +4 -1
  142. package/out/ui/packages/paper/components/Paper.luau +17 -11
  143. package/out/ui/packages/paper/components/Paper.styles.luau +12 -5
  144. package/out/ui/packages/physicalPropertiesEditor/components/PhysicalPropertiesEditor.luau +9 -1
  145. package/out/ui/packages/physicalPropertiesEditor/components/PhysicalPropertiesEditor.styles.luau +24 -19
  146. package/out/ui/packages/popover/components/Popover.d.ts +1 -1
  147. package/out/ui/packages/popover/components/Popover.luau +6 -4
  148. package/out/ui/packages/popover/components/Popover.styles.luau +6 -0
  149. package/out/ui/packages/popup/components/Popup.d.ts +2 -0
  150. package/out/ui/packages/popup/components/Popup.luau +64 -2
  151. package/out/ui/packages/popup/components/placement.luau +6 -4
  152. package/out/ui/packages/progressBar/components/ProgressBar.luau +1 -1
  153. package/out/ui/packages/progressBar/components/ProgressBar.styles.luau +3 -2
  154. package/out/ui/packages/radioGroup/components/RadioGroup.luau +2 -1
  155. package/out/ui/packages/rating/components/Rating.luau +45 -3
  156. package/out/ui/packages/rating/components/Rating.styles.luau +1 -1
  157. package/out/ui/packages/rayEditor/components/RayEditor.luau +9 -1
  158. package/out/ui/packages/rayEditor/components/RayEditor.styles.luau +17 -11
  159. package/out/ui/packages/rectEditor/components/RectEditor.luau +9 -1
  160. package/out/ui/packages/rectEditor/components/RectEditor.styles.luau +49 -42
  161. package/out/ui/packages/select/components/Select.d.ts +2 -0
  162. package/out/ui/packages/select/components/Select.luau +148 -106
  163. package/out/ui/packages/select/components/Select.styles.d.ts +2 -0
  164. package/out/ui/packages/select/components/Select.styles.luau +29 -5
  165. package/out/ui/packages/shadow/components/Shadow.luau +188 -19
  166. package/out/ui/packages/sidebar/components/Sidebar.styles.luau +1 -0
  167. package/out/ui/packages/skeleton/components/Skeleton.luau +4 -0
  168. package/out/ui/packages/slider/components/RangeSlider.luau +6 -5
  169. package/out/ui/packages/slider/components/Slider.luau +11 -16
  170. package/out/ui/packages/sparkline/components/Sparkline.luau +7 -5
  171. package/out/ui/packages/speedDial/components/SpeedDial.luau +4 -1
  172. package/out/ui/packages/speedDial/components/SpeedDial.styles.luau +5 -0
  173. package/out/ui/packages/speedDial/components/speedDialLabel.d.ts +1 -1
  174. package/out/ui/packages/splitPane/components/splitLook.d.ts +1 -1
  175. package/out/ui/packages/stepper/components/Stepper.styles.luau +9 -6
  176. package/out/ui/packages/switch/components/Switch.luau +2 -2
  177. package/out/ui/packages/switch/components/switchLook.d.ts +3 -3
  178. package/out/ui/packages/switch/components/switchLook.luau +4 -10
  179. package/out/ui/packages/table/components/Table.d.ts +1 -0
  180. package/out/ui/packages/table/components/Table.luau +92 -53
  181. package/out/ui/packages/table/components/Table.styles.luau +23 -6
  182. package/out/ui/packages/table/components/tableColumns.d.ts +2 -0
  183. package/out/ui/packages/table/components/tableColumns.luau +2 -0
  184. package/out/ui/packages/tabs/components/Tabs.luau +7 -4
  185. package/out/ui/packages/tabs/components/Tabs.styles.luau +12 -11
  186. package/out/ui/packages/tabs/components/tabIndicator.d.ts +7 -0
  187. package/out/ui/packages/tabs/components/tabIndicator.luau +21 -0
  188. package/out/ui/packages/text/components/Text.d.ts +2 -0
  189. package/out/ui/packages/text/components/Text.luau +12 -2
  190. package/out/ui/packages/timeField/components/TimeField.luau +11 -7
  191. package/out/ui/packages/timeline/components/Timeline.luau +35 -32
  192. package/out/ui/packages/timeline/components/Timeline.styles.luau +19 -10
  193. package/out/ui/packages/toast/components/Toast.luau +168 -72
  194. package/out/ui/packages/toast/components/Toast.styles.luau +36 -19
  195. package/out/ui/packages/toast/components/toastPlace.d.ts +4 -0
  196. package/out/ui/packages/toast/components/toastPlace.luau +13 -0
  197. package/out/ui/packages/toast/enums/ToastVariants.d.ts +2 -1
  198. package/out/ui/packages/toast/enums/ToastVariants.luau +1 -0
  199. package/out/ui/packages/toggleButton/components/ToggleButton.luau +43 -4
  200. package/out/ui/packages/toggleButton/components/ToggleButton.styles.luau +1 -1
  201. package/out/ui/packages/tooltip/components/Tooltip.styles.luau +2 -2
  202. package/out/ui/packages/treeView/components/TreeView.luau +12 -13
  203. package/out/ui/packages/treeView/components/TreeView.styles.luau +6 -0
  204. package/out/ui/packages/typography/components/Typography.d.ts +2 -0
  205. package/out/ui/packages/typography/components/Typography.luau +8 -0
  206. package/out/ui/packages/typography/components/Typography.styles.luau +3 -1
  207. package/out/ui/packages/udimEditor/components/UDimEditor.luau +9 -1
  208. package/out/ui/packages/udimEditor/components/UDimEditor.styles.luau +25 -18
  209. package/out/ui/packages/vectorEditor/components/VectorEditor.luau +17 -3
  210. package/out/ui/packages/vectorEditor/components/VectorEditor.styles.luau +30 -16
  211. package/out/ui/packages/virtualList/components/VirtualList.styles.luau +1 -0
  212. package/package.json +69 -67
@@ -2,19 +2,23 @@
2
2
  local TS = _G[script]
3
3
  local _theme = TS.import(script, script.Parent.Parent.Parent.Parent.Parent, "theme")
4
4
  local componentStyles = _theme.componentStyles
5
+ local controlMetrics = _theme.controlMetrics
5
6
  local createStyles = _theme.createStyles
7
+ local grip = 22
6
8
  local useMarkdownEditorStyles = componentStyles("MarkdownEditor", function(theme, _param)
7
9
  local fullscreen = _param.fullscreen
8
10
  local compact = _param.compact
11
+ local gripped = _param.gripped
9
12
  local pad = if compact == true or theme.density == "compact" then theme.padding.calc(1) else theme.padding.calc(1.5)
10
- local _object = {
13
+ local glyph = controlMetrics(theme.density, if compact == true then "small" else nil).icon
14
+ return createStyles({
11
15
  root = {
12
16
  Size = if fullscreen == true then UDim2.fromScale(1, 1) else UDim2.new(1, 0, 1, 0),
13
17
  BackgroundColor3 = theme.palette.surface.paper,
14
18
  BorderSizePixel = 0,
15
19
  },
16
20
  content = {
17
- Size = UDim2.fromScale(1, 1),
21
+ Size = UDim2.new(1, 0, 1, if gripped == true then -grip else 0),
18
22
  BackgroundTransparency = 1,
19
23
  BorderSizePixel = 0,
20
24
  },
@@ -50,7 +54,80 @@ local useMarkdownEditorStyles = componentStyles("MarkdownEditor", function(theme
50
54
  HorizontalAlignment = Enum.HorizontalAlignment.Left,
51
55
  VerticalAlignment = Enum.VerticalAlignment.Center,
52
56
  SortOrder = Enum.SortOrder.LayoutOrder,
53
- Padding = UDim.new(0, theme.padding.calc(1)),
57
+ Padding = UDim.new(0, theme.spacing.calc(1)),
58
+ },
59
+ toolbarIcon = {
60
+ Size = UDim2.fromOffset(glyph + theme.padding.calc(2), glyph + theme.padding.calc(2)),
61
+ LayoutOrder = 3,
62
+ },
63
+ toolbarGlyph = {
64
+ Size = UDim2.fromOffset(glyph, glyph),
65
+ ImageColor3 = theme.palette.text.secondary,
66
+ },
67
+ htmlWrap = {
68
+ AutomaticSize = Enum.AutomaticSize.Y,
69
+ Size = UDim2.new(1, 0, 0, 0),
70
+ BackgroundTransparency = 1,
71
+ BorderSizePixel = 0,
72
+ LayoutOrder = 2,
73
+ },
74
+ htmlGap = {
75
+ PaddingTop = UDim.new(0, theme.spacing.calc(1)),
76
+ PaddingLeft = UDim.new(0, theme.spacing.calc(1)),
77
+ PaddingRight = UDim.new(0, theme.spacing.calc(1)),
78
+ },
79
+ htmlSurface = {
80
+ AutomaticSize = Enum.AutomaticSize.Y,
81
+ Size = UDim2.new(1, 0, 0, 0),
82
+ BackgroundColor3 = theme.palette.surface.elevated,
83
+ BorderSizePixel = 0,
84
+ },
85
+ htmlStroke = {
86
+ Color = theme.palette.divider,
87
+ Thickness = 1,
88
+ Transparency = 0,
89
+ ApplyStrokeMode = Enum.ApplyStrokeMode.Border,
90
+ },
91
+ htmlCorner = {
92
+ CornerRadius = UDim.new(0, theme.shape.borderRadius),
93
+ },
94
+ htmlPad = {
95
+ PaddingTop = UDim.new(0, theme.padding.calc(2)),
96
+ PaddingBottom = UDim.new(0, theme.padding.calc(2)),
97
+ PaddingLeft = UDim.new(0, theme.padding.calc(2)),
98
+ PaddingRight = UDim.new(0, theme.padding.calc(2)),
99
+ },
100
+ htmlStack = {
101
+ FillDirection = Enum.FillDirection.Vertical,
102
+ HorizontalAlignment = Enum.HorizontalAlignment.Left,
103
+ SortOrder = Enum.SortOrder.LayoutOrder,
104
+ Padding = UDim.new(0, theme.spacing.calc(1)),
105
+ },
106
+ htmlHint = {
107
+ AutomaticSize = Enum.AutomaticSize.Y,
108
+ Size = UDim2.new(1, 0, 0, 0),
109
+ BackgroundTransparency = 1,
110
+ BorderSizePixel = 0,
111
+ Font = theme.typography.fontFamilies.default,
112
+ TextSize = theme.typography.fontSizes.body,
113
+ TextColor3 = theme.palette.text.primary,
114
+ TextXAlignment = Enum.TextXAlignment.Left,
115
+ TextWrapped = true,
116
+ LayoutOrder = 1,
117
+ },
118
+ htmlActions = {
119
+ AutomaticSize = Enum.AutomaticSize.Y,
120
+ Size = UDim2.new(1, 0, 0, 0),
121
+ BackgroundTransparency = 1,
122
+ BorderSizePixel = 0,
123
+ LayoutOrder = 3,
124
+ },
125
+ htmlActionsRow = {
126
+ FillDirection = Enum.FillDirection.Horizontal,
127
+ HorizontalAlignment = Enum.HorizontalAlignment.Right,
128
+ VerticalAlignment = Enum.VerticalAlignment.Center,
129
+ SortOrder = Enum.SortOrder.LayoutOrder,
130
+ Padding = UDim.new(0, theme.spacing.calc(1)),
54
131
  },
55
132
  spacer = {
56
133
  Size = UDim2.new(1, 0, 1, 0),
@@ -74,86 +151,79 @@ local useMarkdownEditorStyles = componentStyles("MarkdownEditor", function(theme
74
151
  BackgroundTransparency = 1,
75
152
  BorderSizePixel = 0,
76
153
  },
77
- }
78
- local _left = "editor"
79
- local _object_1 = {
80
- Size = UDim2.fromScale(1, 1),
81
- BackgroundColor3 = theme.palette.surface.input,
82
- BorderSizePixel = 0,
83
- ClearTextOnFocus = false,
84
- MultiLine = true,
85
- TextXAlignment = Enum.TextXAlignment.Left,
86
- TextYAlignment = Enum.TextYAlignment.Top,
87
- TextWrapped = true,
88
- Font = Enum.Font.RobotoMono,
89
- }
90
- local _left_1 = "TextSize"
91
- local _condition = theme.typography.fontSizes.caption
92
- if _condition == nil then
93
- _condition = theme.typography.fontSizes.body
94
- end
95
- _object_1[_left_1] = _condition
96
- _object_1.TextColor3 = theme.palette.text.primary
97
- _object_1.PlaceholderColor3 = theme.palette.text.secondary
98
- _object[_left] = _object_1
99
- _object.editorPad = {
100
- PaddingTop = UDim.new(0, pad),
101
- PaddingBottom = UDim.new(0, pad),
102
- PaddingLeft = UDim.new(0, pad),
103
- PaddingRight = UDim.new(0, pad),
104
- }
105
- _object.previewScroll = {
106
- Size = UDim2.fromScale(1, 1),
107
- BackgroundTransparency = 1,
108
- BorderSizePixel = 0,
109
- ScrollBarThickness = 4,
110
- CanvasSize = UDim2.new(0, 0, 0, 0),
111
- AutomaticCanvasSize = Enum.AutomaticSize.Y,
112
- }
113
- _object.previewPad = {
114
- PaddingTop = UDim.new(0, pad),
115
- PaddingBottom = UDim.new(0, pad),
116
- PaddingLeft = UDim.new(0, pad),
117
- PaddingRight = UDim.new(0, pad),
118
- }
119
- _object.split = {
120
- FillDirection = Enum.FillDirection.Horizontal,
121
- HorizontalAlignment = Enum.HorizontalAlignment.Left,
122
- VerticalAlignment = Enum.VerticalAlignment.Top,
123
- SortOrder = Enum.SortOrder.LayoutOrder,
124
- Padding = UDim.new(0, 0),
125
- }
126
- _object.divider = {
127
- Size = UDim2.new(0, 1, 1, 0),
128
- BackgroundColor3 = theme.palette.divider,
129
- BorderSizePixel = 0,
130
- LayoutOrder = 2,
131
- }
132
- _object.resizeGrip = {
133
- AnchorPoint = Vector2.new(1, 1),
134
- Position = UDim2.fromScale(1, 1),
135
- Size = UDim2.fromOffset(22, 22),
136
- BackgroundColor3 = theme.palette.surface.elevated,
137
- BackgroundTransparency = 0.15,
138
- BorderSizePixel = 0,
139
- AutoButtonColor = false,
140
- ZIndex = 20,
141
- }
142
- _object.resizeMark = {
143
- AnchorPoint = Vector2.new(0.5, 0.5),
144
- BackgroundColor3 = theme.palette.text.secondary,
145
- BorderSizePixel = 0,
146
- Rotation = -45,
147
- ZIndex = 21,
148
- }
149
- _object.resizeOverlay = {
150
- Size = UDim2.fromScale(1, 1),
151
- BackgroundTransparency = 1,
152
- BorderSizePixel = 0,
153
- Active = true,
154
- ZIndex = 30,
155
- }
156
- return createStyles(_object)
154
+ editor = {
155
+ Size = UDim2.fromScale(1, 1),
156
+ BackgroundColor3 = theme.palette.surface.input,
157
+ BorderSizePixel = 0,
158
+ ClearTextOnFocus = false,
159
+ MultiLine = true,
160
+ TextXAlignment = Enum.TextXAlignment.Left,
161
+ TextYAlignment = Enum.TextYAlignment.Top,
162
+ TextWrapped = true,
163
+ Font = Enum.Font.RobotoMono,
164
+ TextSize = theme.typography.fontSizes.body,
165
+ TextColor3 = theme.palette.text.primary,
166
+ PlaceholderColor3 = theme.palette.text.secondary,
167
+ },
168
+ editorPad = {
169
+ PaddingTop = UDim.new(0, pad),
170
+ PaddingBottom = UDim.new(0, pad),
171
+ PaddingLeft = UDim.new(0, pad),
172
+ PaddingRight = UDim.new(0, pad),
173
+ },
174
+ previewScroll = {
175
+ Size = UDim2.fromScale(1, 1),
176
+ BackgroundTransparency = 1,
177
+ BorderSizePixel = 0,
178
+ ScrollBarThickness = 4,
179
+ ScrollingDirection = Enum.ScrollingDirection.XY,
180
+ CanvasSize = UDim2.new(0, 0, 0, 0),
181
+ AutomaticCanvasSize = Enum.AutomaticSize.XY,
182
+ },
183
+ previewPad = {
184
+ PaddingTop = UDim.new(0, pad),
185
+ PaddingBottom = UDim.new(0, pad),
186
+ PaddingLeft = UDim.new(0, pad),
187
+ PaddingRight = UDim.new(0, pad),
188
+ },
189
+ split = {
190
+ FillDirection = Enum.FillDirection.Horizontal,
191
+ HorizontalAlignment = Enum.HorizontalAlignment.Left,
192
+ VerticalAlignment = Enum.VerticalAlignment.Top,
193
+ SortOrder = Enum.SortOrder.LayoutOrder,
194
+ Padding = UDim.new(0, 0),
195
+ },
196
+ divider = {
197
+ Size = UDim2.new(0, 1, 1, 0),
198
+ BackgroundColor3 = theme.palette.divider,
199
+ BorderSizePixel = 0,
200
+ LayoutOrder = 2,
201
+ },
202
+ resizeGrip = {
203
+ AnchorPoint = Vector2.new(1, 1),
204
+ Position = UDim2.fromScale(1, 1),
205
+ Size = UDim2.fromOffset(grip, grip),
206
+ BackgroundColor3 = theme.palette.surface.elevated,
207
+ BackgroundTransparency = 0.15,
208
+ BorderSizePixel = 0,
209
+ AutoButtonColor = false,
210
+ ZIndex = 20,
211
+ },
212
+ resizeMark = {
213
+ AnchorPoint = Vector2.new(0.5, 0.5),
214
+ BackgroundColor3 = theme.palette.text.secondary,
215
+ BorderSizePixel = 0,
216
+ Rotation = -45,
217
+ ZIndex = 21,
218
+ },
219
+ resizeOverlay = {
220
+ Size = UDim2.fromScale(1, 1),
221
+ BackgroundTransparency = 1,
222
+ BorderSizePixel = 0,
223
+ Active = true,
224
+ ZIndex = 30,
225
+ },
226
+ })
157
227
  end)
158
228
  local default = useMarkdownEditorStyles
159
229
  return {
@@ -4,5 +4,5 @@ export { default as MarkdownEditor } from "./components/MarkdownEditor";
4
4
  export type { MarkdownEditorProps } from "./components/MarkdownEditor";
5
5
  export type { MarkdownEditorMode } from "./components/MarkdownEditor.styles";
6
6
  export { parseMarkdown, inlinesToPlain, inlinesToRichText, inlinePieces, markdownLinkPayload } from "./parseMarkdown";
7
- export type { MdBlock, MdInline, MdPiece, MarkdownLinkPayload } from "./parseMarkdown";
7
+ export type { MdBlock, MdInline, MdPiece, MarkdownLinkPayload, CodeLanguage } from "./parseMarkdown";
8
8
  export { htmlToMarkdown } from "./htmlToMarkdown";
@@ -15,6 +15,8 @@ export type MdInline = {
15
15
  text: string;
16
16
  href: string;
17
17
  };
18
+ export type MdAlign = "left" | "center" | "right";
19
+ export type CodeLanguage = "luau" | "ts" | "json" | "text";
18
20
  export type MdBlock = {
19
21
  kind: "heading";
20
22
  level: number;
@@ -25,13 +27,19 @@ export type MdBlock = {
25
27
  } | {
26
28
  kind: "code";
27
29
  text: string;
30
+ language: CodeLanguage;
28
31
  } | {
29
32
  kind: "list";
30
33
  ordered: boolean;
31
34
  items: MdInline[][];
32
35
  } | {
33
36
  kind: "blockquote";
34
- inlines: MdInline[];
37
+ paragraphs: MdInline[][];
38
+ } | {
39
+ kind: "table";
40
+ align: MdAlign[];
41
+ header: MdInline[][];
42
+ rows: MdInline[][][];
35
43
  } | {
36
44
  kind: "hr";
37
45
  };