termui 0.1.0 → 0.1.2

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 (257) hide show
  1. package/dist/chunk-B2VO7M2O.js +3493 -0
  2. package/dist/chunk-B2VO7M2O.js.map +1 -0
  3. package/dist/chunk-ZZKFZA2U.js +694 -0
  4. package/dist/chunk-ZZKFZA2U.js.map +1 -0
  5. package/dist/components.d.ts +668 -0
  6. package/dist/components.js +130 -0
  7. package/dist/components.js.map +1 -0
  8. package/dist/core.d.ts +144 -0
  9. package/dist/core.js +99 -0
  10. package/dist/core.js.map +1 -0
  11. package/dist/hooks-YADffFjU.d.ts +237 -0
  12. package/dist/hooks.d.ts +3 -0
  13. package/dist/hooks.js +29 -0
  14. package/dist/hooks.js.map +1 -0
  15. package/dist/index.d.ts +6 -0
  16. package/dist/index.js +225 -0
  17. package/dist/index.js.map +1 -0
  18. package/package.json +41 -10
  19. package/packages/cli/package.json +0 -36
  20. package/packages/components/dist/data/List.d.ts +0 -15
  21. package/packages/components/dist/data/List.d.ts.map +0 -1
  22. package/packages/components/dist/data/List.js +0 -40
  23. package/packages/components/dist/data/List.js.map +0 -1
  24. package/packages/components/dist/data/Table.d.ts +0 -17
  25. package/packages/components/dist/data/Table.d.ts.map +0 -1
  26. package/packages/components/dist/data/Table.js +0 -74
  27. package/packages/components/dist/data/Table.js.map +0 -1
  28. package/packages/components/dist/data/index.d.ts +0 -5
  29. package/packages/components/dist/data/index.d.ts.map +0 -1
  30. package/packages/components/dist/data/index.js +0 -3
  31. package/packages/components/dist/data/index.js.map +0 -1
  32. package/packages/components/dist/feedback/Alert.d.ts +0 -10
  33. package/packages/components/dist/feedback/Alert.d.ts.map +0 -1
  34. package/packages/components/dist/feedback/Alert.js +0 -23
  35. package/packages/components/dist/feedback/Alert.js.map +0 -1
  36. package/packages/components/dist/feedback/ProgressBar.d.ts +0 -13
  37. package/packages/components/dist/feedback/ProgressBar.d.ts.map +0 -1
  38. package/packages/components/dist/feedback/ProgressBar.js +0 -13
  39. package/packages/components/dist/feedback/ProgressBar.js.map +0 -1
  40. package/packages/components/dist/feedback/Spinner.d.ts +0 -9
  41. package/packages/components/dist/feedback/Spinner.d.ts.map +0 -1
  42. package/packages/components/dist/feedback/Spinner.js +0 -26
  43. package/packages/components/dist/feedback/Spinner.js.map +0 -1
  44. package/packages/components/dist/feedback/index.d.ts +0 -7
  45. package/packages/components/dist/feedback/index.d.ts.map +0 -1
  46. package/packages/components/dist/feedback/index.js +0 -4
  47. package/packages/components/dist/feedback/index.js.map +0 -1
  48. package/packages/components/dist/forms/Form.d.ts +0 -22
  49. package/packages/components/dist/forms/Form.d.ts.map +0 -1
  50. package/packages/components/dist/forms/Form.js +0 -45
  51. package/packages/components/dist/forms/Form.js.map +0 -1
  52. package/packages/components/dist/forms/index.d.ts +0 -3
  53. package/packages/components/dist/forms/index.d.ts.map +0 -1
  54. package/packages/components/dist/forms/index.js +0 -2
  55. package/packages/components/dist/forms/index.js.map +0 -1
  56. package/packages/components/dist/index.d.ts +0 -11
  57. package/packages/components/dist/index.d.ts.map +0 -1
  58. package/packages/components/dist/index.js +0 -21
  59. package/packages/components/dist/index.js.map +0 -1
  60. package/packages/components/dist/input/TextInput.d.ts +0 -14
  61. package/packages/components/dist/input/TextInput.d.ts.map +0 -1
  62. package/packages/components/dist/input/TextInput.js +0 -44
  63. package/packages/components/dist/input/TextInput.js.map +0 -1
  64. package/packages/components/dist/input/index.d.ts +0 -3
  65. package/packages/components/dist/input/index.d.ts.map +0 -1
  66. package/packages/components/dist/input/index.js +0 -2
  67. package/packages/components/dist/input/index.js.map +0 -1
  68. package/packages/components/dist/layout/Box.d.ts +0 -11
  69. package/packages/components/dist/layout/Box.d.ts.map +0 -1
  70. package/packages/components/dist/layout/Box.js +0 -18
  71. package/packages/components/dist/layout/Box.js.map +0 -1
  72. package/packages/components/dist/layout/Grid.d.ts +0 -8
  73. package/packages/components/dist/layout/Grid.d.ts.map +0 -1
  74. package/packages/components/dist/layout/Grid.js +0 -12
  75. package/packages/components/dist/layout/Grid.js.map +0 -1
  76. package/packages/components/dist/layout/ScrollView.d.ts +0 -9
  77. package/packages/components/dist/layout/ScrollView.d.ts.map +0 -1
  78. package/packages/components/dist/layout/ScrollView.js +0 -26
  79. package/packages/components/dist/layout/ScrollView.js.map +0 -1
  80. package/packages/components/dist/layout/Stack.d.ts +0 -12
  81. package/packages/components/dist/layout/Stack.d.ts.map +0 -1
  82. package/packages/components/dist/layout/Stack.js +0 -6
  83. package/packages/components/dist/layout/Stack.js.map +0 -1
  84. package/packages/components/dist/layout/index.d.ts +0 -9
  85. package/packages/components/dist/layout/index.d.ts.map +0 -1
  86. package/packages/components/dist/layout/index.js +0 -5
  87. package/packages/components/dist/layout/index.js.map +0 -1
  88. package/packages/components/dist/navigation/Tabs.d.ts +0 -15
  89. package/packages/components/dist/navigation/Tabs.d.ts.map +0 -1
  90. package/packages/components/dist/navigation/Tabs.js +0 -34
  91. package/packages/components/dist/navigation/Tabs.js.map +0 -1
  92. package/packages/components/dist/navigation/index.d.ts +0 -3
  93. package/packages/components/dist/navigation/index.d.ts.map +0 -1
  94. package/packages/components/dist/navigation/index.js +0 -2
  95. package/packages/components/dist/navigation/index.js.map +0 -1
  96. package/packages/components/dist/overlays/Modal.d.ts +0 -10
  97. package/packages/components/dist/overlays/Modal.d.ts.map +0 -1
  98. package/packages/components/dist/overlays/Modal.js +0 -16
  99. package/packages/components/dist/overlays/Modal.js.map +0 -1
  100. package/packages/components/dist/overlays/index.d.ts +0 -3
  101. package/packages/components/dist/overlays/index.d.ts.map +0 -1
  102. package/packages/components/dist/overlays/index.js +0 -2
  103. package/packages/components/dist/overlays/index.js.map +0 -1
  104. package/packages/components/dist/selection/Checkbox.d.ts +0 -10
  105. package/packages/components/dist/selection/Checkbox.d.ts.map +0 -1
  106. package/packages/components/dist/selection/Checkbox.js +0 -26
  107. package/packages/components/dist/selection/Checkbox.js.map +0 -1
  108. package/packages/components/dist/selection/Select.d.ts +0 -17
  109. package/packages/components/dist/selection/Select.d.ts.map +0 -1
  110. package/packages/components/dist/selection/Select.js +0 -44
  111. package/packages/components/dist/selection/Select.js.map +0 -1
  112. package/packages/components/dist/selection/index.d.ts +0 -5
  113. package/packages/components/dist/selection/index.d.ts.map +0 -1
  114. package/packages/components/dist/selection/index.js +0 -3
  115. package/packages/components/dist/selection/index.js.map +0 -1
  116. package/packages/components/dist/typography/Badge.d.ts +0 -9
  117. package/packages/components/dist/typography/Badge.d.ts.map +0 -1
  118. package/packages/components/dist/typography/Badge.js +0 -18
  119. package/packages/components/dist/typography/Badge.js.map +0 -1
  120. package/packages/components/dist/typography/Text.d.ts +0 -15
  121. package/packages/components/dist/typography/Text.d.ts.map +0 -1
  122. package/packages/components/dist/typography/Text.js +0 -6
  123. package/packages/components/dist/typography/Text.js.map +0 -1
  124. package/packages/components/dist/typography/index.d.ts +0 -5
  125. package/packages/components/dist/typography/index.d.ts.map +0 -1
  126. package/packages/components/dist/typography/index.js +0 -3
  127. package/packages/components/dist/typography/index.js.map +0 -1
  128. package/packages/components/dist/utility/Panel.d.ts +0 -14
  129. package/packages/components/dist/utility/Panel.d.ts.map +0 -1
  130. package/packages/components/dist/utility/Panel.js +0 -8
  131. package/packages/components/dist/utility/Panel.js.map +0 -1
  132. package/packages/components/dist/utility/Toggle.d.ts +0 -11
  133. package/packages/components/dist/utility/Toggle.d.ts.map +0 -1
  134. package/packages/components/dist/utility/Toggle.js +0 -23
  135. package/packages/components/dist/utility/Toggle.js.map +0 -1
  136. package/packages/components/dist/utility/index.d.ts +0 -5
  137. package/packages/components/dist/utility/index.d.ts.map +0 -1
  138. package/packages/components/dist/utility/index.js +0 -3
  139. package/packages/components/dist/utility/index.js.map +0 -1
  140. package/packages/components/package.json +0 -36
  141. package/packages/core/dist/hooks/index.d.ts +0 -18
  142. package/packages/core/dist/hooks/index.d.ts.map +0 -1
  143. package/packages/core/dist/hooks/index.js +0 -13
  144. package/packages/core/dist/hooks/index.js.map +0 -1
  145. package/packages/core/dist/hooks/useAnimation.d.ts +0 -7
  146. package/packages/core/dist/hooks/useAnimation.d.ts.map +0 -1
  147. package/packages/core/dist/hooks/useAnimation.js +0 -40
  148. package/packages/core/dist/hooks/useAnimation.js.map +0 -1
  149. package/packages/core/dist/hooks/useAsync.d.ts +0 -25
  150. package/packages/core/dist/hooks/useAsync.d.ts.map +0 -1
  151. package/packages/core/dist/hooks/useAsync.js +0 -37
  152. package/packages/core/dist/hooks/useAsync.js.map +0 -1
  153. package/packages/core/dist/hooks/useClipboard.d.ts +0 -9
  154. package/packages/core/dist/hooks/useClipboard.d.ts.map +0 -1
  155. package/packages/core/dist/hooks/useClipboard.js +0 -14
  156. package/packages/core/dist/hooks/useClipboard.js.map +0 -1
  157. package/packages/core/dist/hooks/useFocus.d.ts +0 -10
  158. package/packages/core/dist/hooks/useFocus.d.ts.map +0 -1
  159. package/packages/core/dist/hooks/useFocus.js +0 -6
  160. package/packages/core/dist/hooks/useFocus.js.map +0 -1
  161. package/packages/core/dist/hooks/useFocusManager.d.ts +0 -9
  162. package/packages/core/dist/hooks/useFocusManager.d.ts.map +0 -1
  163. package/packages/core/dist/hooks/useFocusManager.js +0 -6
  164. package/packages/core/dist/hooks/useFocusManager.js.map +0 -1
  165. package/packages/core/dist/hooks/useInput.d.ts +0 -22
  166. package/packages/core/dist/hooks/useInput.d.ts.map +0 -1
  167. package/packages/core/dist/hooks/useInput.js +0 -6
  168. package/packages/core/dist/hooks/useInput.js.map +0 -1
  169. package/packages/core/dist/hooks/useInterval.d.ts +0 -6
  170. package/packages/core/dist/hooks/useInterval.d.ts.map +0 -1
  171. package/packages/core/dist/hooks/useInterval.js +0 -18
  172. package/packages/core/dist/hooks/useInterval.js.map +0 -1
  173. package/packages/core/dist/hooks/useKeymap.d.ts +0 -13
  174. package/packages/core/dist/hooks/useKeymap.d.ts.map +0 -1
  175. package/packages/core/dist/hooks/useKeymap.js +0 -36
  176. package/packages/core/dist/hooks/useKeymap.js.map +0 -1
  177. package/packages/core/dist/hooks/useMouse.d.ts +0 -19
  178. package/packages/core/dist/hooks/useMouse.d.ts.map +0 -1
  179. package/packages/core/dist/hooks/useMouse.js +0 -60
  180. package/packages/core/dist/hooks/useMouse.js.map +0 -1
  181. package/packages/core/dist/hooks/useResize.d.ts +0 -7
  182. package/packages/core/dist/hooks/useResize.d.ts.map +0 -1
  183. package/packages/core/dist/hooks/useResize.js +0 -27
  184. package/packages/core/dist/hooks/useResize.js.map +0 -1
  185. package/packages/core/dist/hooks/useTerminal.d.ts +0 -4
  186. package/packages/core/dist/hooks/useTerminal.d.ts.map +0 -1
  187. package/packages/core/dist/hooks/useTerminal.js +0 -17
  188. package/packages/core/dist/hooks/useTerminal.js.map +0 -1
  189. package/packages/core/dist/hooks/useTheme.d.ts +0 -2
  190. package/packages/core/dist/hooks/useTheme.d.ts.map +0 -1
  191. package/packages/core/dist/hooks/useTheme.js +0 -3
  192. package/packages/core/dist/hooks/useTheme.js.map +0 -1
  193. package/packages/core/dist/index.d.ts +0 -4
  194. package/packages/core/dist/index.d.ts.map +0 -1
  195. package/packages/core/dist/index.js +0 -7
  196. package/packages/core/dist/index.js.map +0 -1
  197. package/packages/core/dist/styling/ThemeProvider.d.ts +0 -15
  198. package/packages/core/dist/styling/ThemeProvider.d.ts.map +0 -1
  199. package/packages/core/dist/styling/ThemeProvider.js +0 -44
  200. package/packages/core/dist/styling/ThemeProvider.js.map +0 -1
  201. package/packages/core/dist/styling/index.d.ts +0 -7
  202. package/packages/core/dist/styling/index.d.ts.map +0 -1
  203. package/packages/core/dist/styling/index.js +0 -7
  204. package/packages/core/dist/styling/index.js.map +0 -1
  205. package/packages/core/dist/styling/style.d.ts +0 -25
  206. package/packages/core/dist/styling/style.d.ts.map +0 -1
  207. package/packages/core/dist/styling/style.js +0 -57
  208. package/packages/core/dist/styling/style.js.map +0 -1
  209. package/packages/core/dist/styling/themes/default.d.ts +0 -3
  210. package/packages/core/dist/styling/themes/default.d.ts.map +0 -1
  211. package/packages/core/dist/styling/themes/default.js +0 -49
  212. package/packages/core/dist/styling/themes/default.js.map +0 -1
  213. package/packages/core/dist/styling/themes/dracula.d.ts +0 -3
  214. package/packages/core/dist/styling/themes/dracula.d.ts.map +0 -1
  215. package/packages/core/dist/styling/themes/dracula.js +0 -49
  216. package/packages/core/dist/styling/themes/dracula.js.map +0 -1
  217. package/packages/core/dist/styling/themes/nord.d.ts +0 -3
  218. package/packages/core/dist/styling/themes/nord.d.ts.map +0 -1
  219. package/packages/core/dist/styling/themes/nord.js +0 -49
  220. package/packages/core/dist/styling/themes/nord.js.map +0 -1
  221. package/packages/core/dist/styling/tokens.d.ts +0 -57
  222. package/packages/core/dist/styling/tokens.d.ts.map +0 -1
  223. package/packages/core/dist/styling/tokens.js +0 -6
  224. package/packages/core/dist/styling/tokens.js.map +0 -1
  225. package/packages/core/dist/terminal/ansi.d.ts +0 -107
  226. package/packages/core/dist/terminal/ansi.d.ts.map +0 -1
  227. package/packages/core/dist/terminal/ansi.js +0 -153
  228. package/packages/core/dist/terminal/ansi.js.map +0 -1
  229. package/packages/core/dist/terminal/capabilities.d.ts +0 -21
  230. package/packages/core/dist/terminal/capabilities.d.ts.map +0 -1
  231. package/packages/core/dist/terminal/capabilities.js +0 -74
  232. package/packages/core/dist/terminal/capabilities.js.map +0 -1
  233. package/packages/core/dist/terminal/index.d.ts +0 -3
  234. package/packages/core/dist/terminal/index.d.ts.map +0 -1
  235. package/packages/core/dist/terminal/index.js +0 -3
  236. package/packages/core/dist/terminal/index.js.map +0 -1
  237. package/packages/core/package.json +0 -49
  238. package/registry/components/alert/meta.json +0 -9
  239. package/registry/components/badge/meta.json +0 -9
  240. package/registry/components/box/meta.json +0 -9
  241. package/registry/components/checkbox/meta.json +0 -9
  242. package/registry/components/form/meta.json +0 -9
  243. package/registry/components/grid/meta.json +0 -9
  244. package/registry/components/list/meta.json +0 -9
  245. package/registry/components/modal/meta.json +0 -9
  246. package/registry/components/panel/meta.json +0 -9
  247. package/registry/components/progress-bar/meta.json +0 -9
  248. package/registry/components/scroll-view/meta.json +0 -9
  249. package/registry/components/select/meta.json +0 -9
  250. package/registry/components/spinner/meta.json +0 -9
  251. package/registry/components/stack/meta.json +0 -9
  252. package/registry/components/table/meta.json +0 -9
  253. package/registry/components/tabs/meta.json +0 -9
  254. package/registry/components/text/meta.json +0 -9
  255. package/registry/components/text-input/meta.json +0 -9
  256. package/registry/components/toggle/meta.json +0 -9
  257. package/registry/schema.json +0 -178
package/dist/index.js ADDED
@@ -0,0 +1,225 @@
1
+ import {
2
+ Alert,
3
+ AspectRatio,
4
+ Badge,
5
+ Banner,
6
+ BigText,
7
+ Box,
8
+ Breadcrumb,
9
+ Card,
10
+ Center,
11
+ Checkbox,
12
+ CheckboxGroup,
13
+ Code,
14
+ Columns,
15
+ Confirm,
16
+ Definition,
17
+ Dialog,
18
+ Digits,
19
+ Divider,
20
+ Drawer,
21
+ Form,
22
+ FormField,
23
+ Gradient,
24
+ Grid,
25
+ Heading,
26
+ KeyValue,
27
+ Link,
28
+ List,
29
+ Menu,
30
+ Modal,
31
+ MultiSelect,
32
+ NumberInput,
33
+ Pagination,
34
+ Panel,
35
+ PasswordInput,
36
+ Popover,
37
+ ProgressBar,
38
+ ProgressCircle,
39
+ RadioGroup,
40
+ ScrollView,
41
+ SearchInput,
42
+ Select,
43
+ Sidebar,
44
+ Skeleton,
45
+ Spacer,
46
+ Spinner,
47
+ Stack,
48
+ StatusMessage,
49
+ Table,
50
+ Tabs,
51
+ Tag,
52
+ TagInput,
53
+ Text,
54
+ TextArea,
55
+ TextInput,
56
+ Toast,
57
+ Toggle,
58
+ Tooltip,
59
+ Tree,
60
+ VirtualList,
61
+ Wizard,
62
+ gradientText,
63
+ useFormContext
64
+ } from "./chunk-B2VO7M2O.js";
65
+ import {
66
+ StyleBuilder,
67
+ ThemeProvider,
68
+ bg,
69
+ bg256,
70
+ bgHex,
71
+ bgRgb,
72
+ blink,
73
+ bold,
74
+ createTheme,
75
+ cursor,
76
+ defaultTheme,
77
+ detectCapabilities,
78
+ dim,
79
+ draculaTheme,
80
+ fg,
81
+ fg256,
82
+ fgHex,
83
+ fgRgb,
84
+ getCapabilities,
85
+ hidden,
86
+ inverse,
87
+ italic,
88
+ nordTheme,
89
+ osc,
90
+ parseHex,
91
+ refreshCapabilities,
92
+ reset,
93
+ screen,
94
+ strikethrough,
95
+ stripAnsi,
96
+ style,
97
+ style2,
98
+ underline,
99
+ useAnimation,
100
+ useAsync,
101
+ useClipboard,
102
+ useFocus,
103
+ useFocusManager,
104
+ useInput,
105
+ useInterval,
106
+ useKeymap,
107
+ useMouse,
108
+ useResize,
109
+ useTerminal,
110
+ useTheme,
111
+ useThemeUpdater,
112
+ visibleWidth
113
+ } from "./chunk-ZZKFZA2U.js";
114
+ export {
115
+ Alert,
116
+ AspectRatio,
117
+ Badge,
118
+ Banner,
119
+ BigText,
120
+ Box,
121
+ Breadcrumb,
122
+ Card,
123
+ Center,
124
+ Checkbox,
125
+ CheckboxGroup,
126
+ Code,
127
+ Columns,
128
+ Confirm,
129
+ Definition,
130
+ Dialog,
131
+ Digits,
132
+ Divider,
133
+ Drawer,
134
+ Form,
135
+ FormField,
136
+ Gradient,
137
+ Grid,
138
+ Heading,
139
+ KeyValue,
140
+ Link,
141
+ List,
142
+ Menu,
143
+ Modal,
144
+ MultiSelect,
145
+ NumberInput,
146
+ Pagination,
147
+ Panel,
148
+ PasswordInput,
149
+ Popover,
150
+ ProgressBar,
151
+ ProgressCircle,
152
+ RadioGroup,
153
+ ScrollView,
154
+ SearchInput,
155
+ Select,
156
+ Sidebar,
157
+ Skeleton,
158
+ Spacer,
159
+ Spinner,
160
+ Stack,
161
+ StatusMessage,
162
+ StyleBuilder,
163
+ Table,
164
+ Tabs,
165
+ Tag,
166
+ TagInput,
167
+ Text,
168
+ TextArea,
169
+ TextInput,
170
+ ThemeProvider,
171
+ Toast,
172
+ Toggle,
173
+ Tooltip,
174
+ Tree,
175
+ VirtualList,
176
+ Wizard,
177
+ style as ansiStyle,
178
+ bg,
179
+ bg256,
180
+ bgHex,
181
+ bgRgb,
182
+ blink,
183
+ bold,
184
+ createTheme,
185
+ cursor,
186
+ defaultTheme,
187
+ detectCapabilities,
188
+ dim,
189
+ draculaTheme,
190
+ fg,
191
+ fg256,
192
+ fgHex,
193
+ fgRgb,
194
+ getCapabilities,
195
+ gradientText,
196
+ hidden,
197
+ inverse,
198
+ italic,
199
+ nordTheme,
200
+ osc,
201
+ parseHex,
202
+ refreshCapabilities,
203
+ reset,
204
+ screen,
205
+ strikethrough,
206
+ stripAnsi,
207
+ style2 as style,
208
+ underline,
209
+ useAnimation,
210
+ useAsync,
211
+ useClipboard,
212
+ useFocus,
213
+ useFocusManager,
214
+ useFormContext,
215
+ useInput,
216
+ useInterval,
217
+ useKeymap,
218
+ useMouse,
219
+ useResize,
220
+ useTerminal,
221
+ useTheme,
222
+ useThemeUpdater,
223
+ visibleWidth
224
+ };
225
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/package.json CHANGED
@@ -1,10 +1,35 @@
1
1
  {
2
2
  "name": "termui",
3
3
  "private": false,
4
- "version": "0.1.0",
4
+ "version": "0.1.2",
5
5
  "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "types": "./dist/index.d.ts"
12
+ },
13
+ "./core": {
14
+ "import": "./dist/core.js",
15
+ "types": "./dist/core.d.ts"
16
+ },
17
+ "./components": {
18
+ "import": "./dist/components.js",
19
+ "types": "./dist/components.d.ts"
20
+ },
21
+ "./hooks": {
22
+ "import": "./dist/hooks.js",
23
+ "types": "./dist/hooks.d.ts"
24
+ }
25
+ },
26
+ "files": [
27
+ "dist",
28
+ "README.md"
29
+ ],
6
30
  "scripts": {
7
- "build": "turbo run build",
31
+ "build": "turbo run build && tsup",
32
+ "build:root": "tsup",
8
33
  "dev": "turbo run dev --parallel",
9
34
  "test": "turbo run test",
10
35
  "lint": "turbo run lint",
@@ -15,21 +40,27 @@
15
40
  "packages/*"
16
41
  ],
17
42
  "devDependencies": {
18
- "turbo": "^2.0.0",
19
- "typescript": "^5.4.0",
20
- "prettier": "^3.2.0",
21
- "eslint": "^9.0.0",
22
43
  "@typescript-eslint/eslint-plugin": "^7.0.0",
23
44
  "@typescript-eslint/parser": "^7.0.0",
45
+ "cross-env": "^7.0.0",
46
+ "eslint": "^9.0.0",
24
47
  "eslint-plugin-react-hooks": "^4.6.0",
25
48
  "husky": "^9.0.0",
26
49
  "lint-staged": "^15.0.0",
27
- "cross-env": "^7.0.0",
28
- "tsx": "^4.7.0"
50
+ "prettier": "^3.2.0",
51
+ "tsup": "^8.5.1",
52
+ "tsx": "^4.7.0",
53
+ "turbo": "^2.0.0",
54
+ "typescript": "^5.4.0"
29
55
  },
30
56
  "lint-staged": {
31
- "*.{ts,tsx}": ["eslint --fix", "prettier --write"],
32
- "*.{json,md}": ["prettier --write"]
57
+ "*.{ts,tsx}": [
58
+ "eslint --fix",
59
+ "prettier --write"
60
+ ],
61
+ "*.{json,md}": [
62
+ "prettier --write"
63
+ ]
33
64
  },
34
65
  "engines": {
35
66
  "node": ">=18.0.0"
@@ -1,36 +0,0 @@
1
- {
2
- "name": "termui",
3
- "version": "0.1.0",
4
- "description": "TermUI CLI — shadcn-style terminal UI component distribution",
5
- "type": "module",
6
- "bin": {
7
- "termui": "./dist/cli.js"
8
- },
9
- "main": "./dist/cli.js",
10
- "scripts": {
11
- "build": "tsc -p tsconfig.build.json",
12
- "dev": "tsx src/cli.ts",
13
- "test": "vitest run",
14
- "typecheck": "tsc --noEmit"
15
- },
16
- "dependencies": {
17
- "@termui/core": "workspace:*",
18
- "glob": "^11.0.0",
19
- "semver": "^7.6.0",
20
- "latest-version": "^9.0.0",
21
- "proper-lockfile": "^4.1.2",
22
- "simple-git": "^3.22.0"
23
- },
24
- "devDependencies": {
25
- "@types/node": "^20.0.0",
26
- "@types/semver": "^7.5.0",
27
- "@types/proper-lockfile": "^4.1.4",
28
- "typescript": "^5.4.0",
29
- "vitest": "^1.0.0",
30
- "tsx": "^4.7.0",
31
- "msw": "^2.0.0"
32
- },
33
- "engines": {
34
- "node": ">=18.0.0"
35
- }
36
- }
@@ -1,15 +0,0 @@
1
- export interface ListItem {
2
- key: string;
3
- label: string;
4
- description?: string;
5
- color?: string;
6
- }
7
- export interface ListProps {
8
- items: ListItem[];
9
- onSelect?: (item: ListItem) => void;
10
- filterable?: boolean;
11
- height?: number;
12
- cursor?: string;
13
- }
14
- export declare function List({ items, onSelect, filterable, height, cursor }: ListProps): import("react/jsx-runtime").JSX.Element;
15
- //# sourceMappingURL=List.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../src/data/List.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAkB,EAAE,MAAW,EAAE,MAAY,EAAE,EAAE,SAAS,2CA+DjG"}
@@ -1,40 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState, useMemo } from 'react';
3
- import { Box, Text } from 'ink';
4
- import { useInput, useTheme } from '@termui/core';
5
- export function List({ items, onSelect, filterable = false, height = 10, cursor = '›' }) {
6
- const theme = useTheme();
7
- const [activeIndex, setActiveIndex] = useState(0);
8
- const [filter, setFilter] = useState('');
9
- const filtered = useMemo(() => {
10
- if (!filter)
11
- return items;
12
- const q = filter.toLowerCase();
13
- return items.filter((item) => item.label.toLowerCase().includes(q));
14
- }, [items, filter]);
15
- useInput((input, key) => {
16
- if (key.upArrow) {
17
- setActiveIndex((i) => Math.max(0, i - 1));
18
- }
19
- else if (key.downArrow) {
20
- setActiveIndex((i) => Math.min(filtered.length - 1, i + 1));
21
- }
22
- else if (key.return) {
23
- const item = filtered[activeIndex];
24
- if (item)
25
- onSelect?.(item);
26
- }
27
- else if (filterable && key.backspace) {
28
- setFilter((f) => f.slice(0, -1));
29
- }
30
- else if (filterable && !key.escape && !key.return && !key.upArrow && !key.downArrow) {
31
- setFilter((f) => f + input);
32
- }
33
- });
34
- const visible = filtered.slice(0, height);
35
- return (_jsxs(Box, { flexDirection: "column", children: [filterable && (_jsx(Box, { borderStyle: "round", borderColor: theme.colors.border, paddingX: 1, marginBottom: 1, children: _jsx(Text, { dimColor: !filter, children: filter || 'Type to filter…' }) })), visible.map((item, idx) => {
36
- const isActive = idx === activeIndex;
37
- return (_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: isActive ? theme.colors.primary : undefined, children: isActive ? cursor : ' ' }), _jsx(Text, { color: item.color ?? (isActive ? theme.colors.primary : theme.colors.foreground), bold: isActive, children: item.label }), item.description && (_jsx(Text, { color: theme.colors.mutedForeground, dimColor: true, children: item.description }))] }, item.key));
38
- }), filtered.length > height && (_jsxs(Text, { color: theme.colors.mutedForeground, dimColor: true, children: [filtered.length - height, " more\u2026"] }))] }));
39
- }
40
- //# sourceMappingURL=List.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"List.js","sourceRoot":"","sources":["../../src/data/List.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- export interface Column<T = Record<string, unknown>> {
2
- key: keyof T & string;
3
- header: string;
4
- width?: number;
5
- align?: 'left' | 'right' | 'center';
6
- }
7
- export interface TableProps<T extends Record<string, unknown> = Record<string, unknown>> {
8
- data: T[];
9
- columns: Column<T>[];
10
- sortable?: boolean;
11
- selectable?: boolean;
12
- onSelect?: (row: T) => void;
13
- maxRows?: number;
14
- borderColor?: string;
15
- }
16
- export declare function Table<T extends Record<string, unknown> = Record<string, unknown>>({ data, columns, sortable, selectable, onSelect, maxRows, borderColor, }: TableProps<T>): import("react/jsx-runtime").JSX.Element;
17
- //# sourceMappingURL=Table.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/data/Table.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACjD,GAAG,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;CACrC;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrF,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAeD,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACjF,IAAI,EACJ,OAAO,EACP,QAAgB,EAChB,UAAkB,EAClB,QAAQ,EACR,OAAY,EACZ,WAAW,GACZ,EAAE,UAAU,CAAC,CAAC,CAAC,2CAmFf"}
@@ -1,74 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState, useMemo } from 'react';
3
- import { Box, Text } from 'ink';
4
- import { useInput, useTheme } from '@termui/core';
5
- function pad(str, width, align = 'left') {
6
- const s = String(str);
7
- if (s.length >= width)
8
- return s.slice(0, width);
9
- const diff = width - s.length;
10
- if (align === 'right')
11
- return ' '.repeat(diff) + s;
12
- if (align === 'center') {
13
- const left = Math.floor(diff / 2);
14
- const right = diff - left;
15
- return ' '.repeat(left) + s + ' '.repeat(right);
16
- }
17
- return s + ' '.repeat(diff);
18
- }
19
- export function Table({ data, columns, sortable = false, selectable = false, onSelect, maxRows = 20, borderColor, }) {
20
- const theme = useTheme();
21
- const [sortKey, setSortKey] = useState(null);
22
- const [sortDir, setSortDir] = useState('asc');
23
- const [activeRow, setActiveRow] = useState(0);
24
- const [sortColIdx, setSortColIdx] = useState(0);
25
- const resolvedBorderColor = borderColor ?? theme.colors.border;
26
- const sorted = useMemo(() => {
27
- if (!sortKey)
28
- return data;
29
- return [...data].sort((a, b) => {
30
- const av = a[sortKey];
31
- const bv = b[sortKey];
32
- const cmp = String(av).localeCompare(String(bv));
33
- return sortDir === 'asc' ? cmp : -cmp;
34
- });
35
- }, [data, sortKey, sortDir]);
36
- const visible = sorted.slice(0, maxRows);
37
- useInput((input, key) => {
38
- if (key.upArrow)
39
- setActiveRow((r) => Math.max(0, r - 1));
40
- else if (key.downArrow)
41
- setActiveRow((r) => Math.min(visible.length - 1, r + 1));
42
- else if (key.return && selectable)
43
- onSelect?.(visible[activeRow]);
44
- else if (sortable && key.leftArrow)
45
- setSortColIdx((i) => Math.max(0, i - 1));
46
- else if (sortable && key.rightArrow)
47
- setSortColIdx((i) => Math.min(columns.length - 1, i + 1));
48
- else if (sortable && input === 's') {
49
- const col = columns[sortColIdx];
50
- if (!col)
51
- return;
52
- if (sortKey === col.key) {
53
- setSortDir((d) => d === 'asc' ? 'desc' : 'asc');
54
- }
55
- else {
56
- setSortKey(col.key);
57
- setSortDir('asc');
58
- }
59
- }
60
- });
61
- // Auto-size columns
62
- const colWidths = columns.map((col) => {
63
- const dataMax = data.reduce((max, row) => Math.max(max, String(row[col.key] ?? '').length), 0);
64
- return col.width ?? Math.max(col.header.length, dataMax) + 2;
65
- });
66
- const headerRow = columns.map((col, i) => pad(col.header, colWidths[i] ?? col.header.length, col.align)).join(' │ ');
67
- const separator = colWidths.map((w) => '─'.repeat(w)).join('─┼─');
68
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: resolvedBorderColor, children: [_jsx(Box, { paddingX: 1, children: _jsx(Text, { bold: true, color: theme.colors.primary, children: headerRow }) }), _jsx(Box, { paddingX: 1, children: _jsx(Text, { color: resolvedBorderColor, children: separator }) }), visible.map((row, rowIdx) => {
69
- const isActive = rowIdx === activeRow && selectable;
70
- const cells = columns.map((col, i) => pad(String(row[col.key] ?? ''), colWidths[i] ?? 8, col.align)).join(' │ ');
71
- return (_jsx(Box, { paddingX: 1, children: _jsx(Text, { color: isActive ? theme.colors.selectionForeground : theme.colors.foreground, inverse: isActive, children: cells }) }, rowIdx));
72
- }), data.length > maxRows && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: theme.colors.mutedForeground, dimColor: true, children: ["\u2026 ", data.length - maxRows, " more rows"] }) }))] }));
73
- }
74
- //# sourceMappingURL=Table.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/data/Table.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- export { List } from './List.js';
2
- export { Table } from './Table.js';
3
- export type { ListItem, ListProps } from './List.js';
4
- export type { Column, TableProps } from './Table.js';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACrD,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC"}
@@ -1,3 +0,0 @@
1
- export { List } from './List.js';
2
- export { Table } from './Table.js';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
@@ -1,10 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- export type AlertVariant = 'success' | 'error' | 'warning' | 'info';
3
- export interface AlertProps {
4
- variant?: AlertVariant;
5
- title?: string;
6
- children?: ReactNode;
7
- icon?: string;
8
- }
9
- export declare function Alert({ variant, title, children, icon }: AlertProps): import("react/jsx-runtime").JSX.Element;
10
- //# sourceMappingURL=Alert.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../src/feedback/Alert.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AASpE,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,KAAK,CAAC,EAAE,OAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,UAAU,2CA6B5E"}
@@ -1,23 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Box, Text } from 'ink';
3
- import { useTheme } from '@termui/core';
4
- const ICONS = {
5
- success: '✓',
6
- error: '✗',
7
- warning: '⚠',
8
- info: 'ℹ',
9
- };
10
- export function Alert({ variant = 'info', title, children, icon }) {
11
- const theme = useTheme();
12
- const variantColor = (() => {
13
- switch (variant) {
14
- case 'success': return theme.colors.success;
15
- case 'error': return theme.colors.error;
16
- case 'warning': return theme.colors.warning;
17
- default: return theme.colors.info;
18
- }
19
- })();
20
- const resolvedIcon = icon ?? ICONS[variant];
21
- return (_jsxs(Box, { borderStyle: "round", borderColor: variantColor, paddingX: 1, paddingY: 0, flexDirection: "column", children: [_jsxs(Box, { gap: 1, children: [_jsx(Text, { color: variantColor, bold: true, children: resolvedIcon }), title && _jsx(Text, { bold: true, color: variantColor, children: title })] }), children && _jsx(Text, { children: children })] }));
22
- }
23
- //# sourceMappingURL=Alert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Alert.js","sourceRoot":"","sources":["../../src/feedback/Alert.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAKxC,MAAM,KAAK,GAAiC;IAC1C,OAAO,EAAE,GAAG;IACZ,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,GAAG;IACZ,IAAI,EAAE,GAAG;CACV,CAAC;AASF,MAAM,UAAU,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAc;IAC3E,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE;QACzB,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,SAAS,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;YAC5C,KAAK,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YACxC,KAAK,SAAS,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;YAC5C,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,YAAY,GAAG,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IAE5C,OAAO,CACL,MAAC,GAAG,IACF,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,YAAY,EACzB,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,EACX,aAAa,EAAC,QAAQ,aAEtB,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,IAAC,KAAK,EAAE,YAAY,EAAE,IAAI,kBAAE,YAAY,GAAQ,EACpD,KAAK,IAAI,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,YAAY,YAAG,KAAK,GAAQ,IACpD,EACL,QAAQ,IAAI,KAAC,IAAI,cAAE,QAAQ,GAAQ,IAChC,CACP,CAAC;AACJ,CAAC"}
@@ -1,13 +0,0 @@
1
- export interface ProgressBarProps {
2
- value: number;
3
- total?: number;
4
- width?: number;
5
- showPercent?: boolean;
6
- showEta?: boolean;
7
- fillChar?: string;
8
- emptyChar?: string;
9
- color?: string;
10
- label?: string;
11
- }
12
- export declare function ProgressBar({ value, total, width, showPercent, showEta, fillChar, emptyChar, color, label, }: ProgressBarProps): import("react/jsx-runtime").JSX.Element;
13
- //# sourceMappingURL=ProgressBar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgressBar.d.ts","sourceRoot":"","sources":["../../src/feedback/ProgressBar.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,KAAK,EACL,KAAU,EACV,WAAkB,EAClB,OAAe,EACf,QAAc,EACd,SAAe,EACf,KAAK,EACL,KAAK,GACN,EAAE,gBAAgB,2CAwBlB"}
@@ -1,13 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Box, Text } from 'ink';
3
- import { useTheme } from '@termui/core';
4
- export function ProgressBar({ value, total, width = 30, showPercent = true, showEta = false, fillChar = '█', emptyChar = '░', color, label, }) {
5
- const theme = useTheme();
6
- const resolvedColor = color ?? theme.colors.primary;
7
- const percent = total !== undefined ? Math.min(100, Math.round((value / total) * 100)) : Math.min(100, Math.round(value));
8
- const filled = Math.round((percent / 100) * width);
9
- const empty = width - filled;
10
- const bar = fillChar.repeat(filled) + emptyChar.repeat(empty);
11
- return (_jsxs(Box, { flexDirection: "column", children: [label && _jsx(Text, { children: label }), _jsxs(Box, { gap: 1, children: [_jsx(Text, { color: resolvedColor, children: bar }), showPercent && _jsxs(Text, { color: theme.colors.mutedForeground, children: [percent, "%"] }), total !== undefined && (_jsxs(Text, { color: theme.colors.mutedForeground, dimColor: true, children: [value, "/", total] }))] })] }));
12
- }
13
- //# sourceMappingURL=ProgressBar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../../src/feedback/ProgressBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAcxC,MAAM,UAAU,WAAW,CAAC,EAC1B,KAAK,EACL,KAAK,EACL,KAAK,GAAG,EAAE,EACV,WAAW,GAAG,IAAI,EAClB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,GAAG,EACd,SAAS,GAAG,GAAG,EACf,KAAK,EACL,KAAK,GACY;IACjB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,aAAa,GAAG,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IAEpD,MAAM,OAAO,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1H,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IAE7B,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE9D,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACxB,KAAK,IAAI,KAAC,IAAI,cAAE,KAAK,GAAQ,EAC9B,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACT,KAAC,IAAI,IAAC,KAAK,EAAE,aAAa,YAAG,GAAG,GAAQ,EACvC,WAAW,IAAI,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,eAAe,aAAG,OAAO,SAAS,EAC3E,KAAK,KAAK,SAAS,IAAI,CACtB,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,QAAQ,mBAChD,KAAK,OAAG,KAAK,IACT,CACR,IACG,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -1,9 +0,0 @@
1
- export type SpinnerStyle = 'dots' | 'line' | 'star' | 'clock' | 'bounce' | 'bar' | 'arc' | 'arrow' | 'toggle' | 'box' | 'pipe' | 'earth';
2
- export interface SpinnerProps {
3
- style?: SpinnerStyle;
4
- label?: string;
5
- color?: string;
6
- fps?: number;
7
- }
8
- export declare function Spinner({ style: spinnerStyle, label, color, fps }: SpinnerProps): import("react/jsx-runtime").JSX.Element;
9
- //# sourceMappingURL=Spinner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../src/feedback/Spinner.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,YAAY,GACpB,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GACrD,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAiB1D,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,YAAqB,EAAE,KAAK,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE,YAAY,2CAa7F"}