aidos-ui 4.0.4 → 4.0.6

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 (376) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +23 -3
  3. package/dist/index.d.ts +801 -68
  4. package/dist/index.js +3934 -68
  5. package/dist/index.js.map +1 -1
  6. package/dist/jsx-dev-runtime.d.ts +6 -2
  7. package/dist/jsx-dev-runtime.js +87 -42
  8. package/dist/jsx-dev-runtime.js.map +1 -1
  9. package/dist/jsx-runtime.d.ts +1 -1
  10. package/dist/jsx-runtime.js +2 -2
  11. package/dist/jsx-runtime.js.map +1 -1
  12. package/dist/vite-plugin-jss-debug.d.ts +3 -1
  13. package/dist/vite-plugin-jss-debug.js +57 -74
  14. package/dist/vite-plugin-jss-debug.js.map +1 -1
  15. package/package.json +61 -27
  16. package/.prettierrc +0 -4
  17. package/CLAUDE.md +0 -72
  18. package/dist/Badge.d.ts +0 -6
  19. package/dist/Badge.js +0 -22
  20. package/dist/Badge.js.map +0 -1
  21. package/dist/BaseButton.d.ts +0 -14
  22. package/dist/BaseButton.js +0 -23
  23. package/dist/BaseButton.js.map +0 -1
  24. package/dist/BaseInput.d.ts +0 -14
  25. package/dist/BaseInput.js +0 -15
  26. package/dist/BaseInput.js.map +0 -1
  27. package/dist/BaseLink.d.ts +0 -18
  28. package/dist/BaseLink.js +0 -29
  29. package/dist/BaseLink.js.map +0 -1
  30. package/dist/BaseList.d.ts +0 -6
  31. package/dist/BaseList.js +0 -14
  32. package/dist/BaseList.js.map +0 -1
  33. package/dist/BaseListAddOn.d.ts +0 -5
  34. package/dist/BaseListAddOn.js +0 -7
  35. package/dist/BaseListAddOn.js.map +0 -1
  36. package/dist/BaseListItem.d.ts +0 -26
  37. package/dist/BaseListItem.js +0 -29
  38. package/dist/BaseListItem.js.map +0 -1
  39. package/dist/BaseView.d.ts +0 -12
  40. package/dist/BaseView.js +0 -26
  41. package/dist/BaseView.js.map +0 -1
  42. package/dist/Box.d.ts +0 -4
  43. package/dist/Box.js +0 -6
  44. package/dist/Box.js.map +0 -1
  45. package/dist/Button.d.ts +0 -20
  46. package/dist/Button.js +0 -19
  47. package/dist/Button.js.map +0 -1
  48. package/dist/Calendar.d.ts +0 -18
  49. package/dist/Calendar.js +0 -57
  50. package/dist/Calendar.js.map +0 -1
  51. package/dist/Card.d.ts +0 -4
  52. package/dist/Card.js +0 -14
  53. package/dist/Card.js.map +0 -1
  54. package/dist/Checkbox.d.ts +0 -11
  55. package/dist/Checkbox.js +0 -32
  56. package/dist/Checkbox.js.map +0 -1
  57. package/dist/Circle.d.ts +0 -5
  58. package/dist/Circle.js +0 -12
  59. package/dist/Circle.js.map +0 -1
  60. package/dist/Column.d.ts +0 -6
  61. package/dist/Column.js +0 -7
  62. package/dist/Column.js.map +0 -1
  63. package/dist/DarkMode.d.ts +0 -13
  64. package/dist/DarkMode.js +0 -62
  65. package/dist/DarkMode.js.map +0 -1
  66. package/dist/DateInput.d.ts +0 -13
  67. package/dist/DateInput.js +0 -29
  68. package/dist/DateInput.js.map +0 -1
  69. package/dist/DatePicker.d.ts +0 -11
  70. package/dist/DatePicker.js +0 -34
  71. package/dist/DatePicker.js.map +0 -1
  72. package/dist/DatetimeInput.d.ts +0 -13
  73. package/dist/DatetimeInput.js +0 -31
  74. package/dist/DatetimeInput.js.map +0 -1
  75. package/dist/DesignBook.d.ts +0 -1
  76. package/dist/DesignBook.js +0 -55
  77. package/dist/DesignBook.js.map +0 -1
  78. package/dist/Dialog.d.ts +0 -17
  79. package/dist/Dialog.js +0 -92
  80. package/dist/Dialog.js.map +0 -1
  81. package/dist/Dropdown.d.ts +0 -14
  82. package/dist/Dropdown.js +0 -65
  83. package/dist/Dropdown.js.map +0 -1
  84. package/dist/Emitter.d.ts +0 -6
  85. package/dist/Emitter.js +0 -19
  86. package/dist/Emitter.js.map +0 -1
  87. package/dist/FlexLayout.d.ts +0 -11
  88. package/dist/FlexLayout.js +0 -18
  89. package/dist/FlexLayout.js.map +0 -1
  90. package/dist/Icon.d.ts +0 -12
  91. package/dist/Icon.js +0 -60
  92. package/dist/Icon.js.map +0 -1
  93. package/dist/IconButton.d.ts +0 -11
  94. package/dist/IconButton.js +0 -34
  95. package/dist/IconButton.js.map +0 -1
  96. package/dist/IconLink.d.ts +0 -9
  97. package/dist/IconLink.js +0 -32
  98. package/dist/IconLink.js.map +0 -1
  99. package/dist/IconType.d.ts +0 -1
  100. package/dist/IconType.js +0 -2
  101. package/dist/IconType.js.map +0 -1
  102. package/dist/Interactable.d.ts +0 -50
  103. package/dist/Interactable.js +0 -169
  104. package/dist/Interactable.js.map +0 -1
  105. package/dist/JSSComment.d.ts +0 -10
  106. package/dist/JSSComment.js +0 -52
  107. package/dist/JSSComment.js.map +0 -1
  108. package/dist/Link.d.ts +0 -22
  109. package/dist/Link.js +0 -29
  110. package/dist/Link.js.map +0 -1
  111. package/dist/List.d.ts +0 -15
  112. package/dist/List.js +0 -29
  113. package/dist/List.js.map +0 -1
  114. package/dist/ListButtonItem.d.ts +0 -14
  115. package/dist/ListButtonItem.js +0 -11
  116. package/dist/ListButtonItem.js.map +0 -1
  117. package/dist/ListDivider.d.ts +0 -1
  118. package/dist/ListDivider.js +0 -12
  119. package/dist/ListDivider.js.map +0 -1
  120. package/dist/ListHeaderItem.d.ts +0 -10
  121. package/dist/ListHeaderItem.js +0 -15
  122. package/dist/ListHeaderItem.js.map +0 -1
  123. package/dist/ListItem.d.ts +0 -9
  124. package/dist/ListItem.js +0 -9
  125. package/dist/ListItem.js.map +0 -1
  126. package/dist/ListLinkItem.d.ts +0 -16
  127. package/dist/ListLinkItem.js +0 -11
  128. package/dist/ListLinkItem.js.map +0 -1
  129. package/dist/ListSpacer.d.ts +0 -1
  130. package/dist/ListSpacer.js +0 -13
  131. package/dist/ListSpacer.js.map +0 -1
  132. package/dist/MenuIcon.d.ts +0 -5
  133. package/dist/MenuIcon.js +0 -31
  134. package/dist/MenuIcon.js.map +0 -1
  135. package/dist/NextJSRouter.d.ts +0 -1
  136. package/dist/NextJSRouter.js +0 -37
  137. package/dist/NextJSRouter.js.map +0 -1
  138. package/dist/NextJSRouterState.d.ts +0 -38
  139. package/dist/NextJSRouterState.js +0 -111
  140. package/dist/NextJSRouterState.js.map +0 -1
  141. package/dist/OnVisible.d.ts +0 -5
  142. package/dist/OnVisible.js +0 -28
  143. package/dist/OnVisible.js.map +0 -1
  144. package/dist/Popover.d.ts +0 -22
  145. package/dist/Popover.js +0 -90
  146. package/dist/Popover.js.map +0 -1
  147. package/dist/ProgressBar.d.ts +0 -7
  148. package/dist/ProgressBar.js +0 -42
  149. package/dist/ProgressBar.js.map +0 -1
  150. package/dist/ProgressCircle.d.ts +0 -5
  151. package/dist/ProgressCircle.js +0 -12
  152. package/dist/ProgressCircle.js.map +0 -1
  153. package/dist/Providers.d.ts +0 -9
  154. package/dist/Providers.js +0 -16
  155. package/dist/Providers.js.map +0 -1
  156. package/dist/RangeInput.d.ts +0 -14
  157. package/dist/RangeInput.js +0 -32
  158. package/dist/RangeInput.js.map +0 -1
  159. package/dist/ResultOrError.d.ts +0 -13
  160. package/dist/ResultOrError.js +0 -7
  161. package/dist/ResultOrError.js.map +0 -1
  162. package/dist/RootView.d.ts +0 -5
  163. package/dist/RootView.js +0 -35
  164. package/dist/RootView.js.map +0 -1
  165. package/dist/Row.d.ts +0 -6
  166. package/dist/Row.js +0 -7
  167. package/dist/Row.js.map +0 -1
  168. package/dist/Select.d.ts +0 -9
  169. package/dist/Select.js +0 -17
  170. package/dist/Select.js.map +0 -1
  171. package/dist/StackContext.d.ts +0 -8
  172. package/dist/StackContext.js +0 -25
  173. package/dist/StackContext.js.map +0 -1
  174. package/dist/StaticCheckbox.d.ts +0 -16
  175. package/dist/StaticCheckbox.js +0 -48
  176. package/dist/StaticCheckbox.js.map +0 -1
  177. package/dist/Storage.d.ts +0 -13
  178. package/dist/Storage.js +0 -146
  179. package/dist/Storage.js.map +0 -1
  180. package/dist/Stream.d.ts +0 -9
  181. package/dist/Stream.js +0 -36
  182. package/dist/Stream.js.map +0 -1
  183. package/dist/Sublist.d.ts +0 -12
  184. package/dist/Sublist.js +0 -18
  185. package/dist/Sublist.js.map +0 -1
  186. package/dist/SubmitIconInput.d.ts +0 -8
  187. package/dist/SubmitIconInput.js +0 -25
  188. package/dist/SubmitIconInput.js.map +0 -1
  189. package/dist/Tabs.d.ts +0 -23
  190. package/dist/Tabs.js +0 -39
  191. package/dist/Tabs.js.map +0 -1
  192. package/dist/Text.d.ts +0 -25
  193. package/dist/Text.js +0 -52
  194. package/dist/Text.js.map +0 -1
  195. package/dist/TextArea.d.ts +0 -11
  196. package/dist/TextArea.js +0 -27
  197. package/dist/TextArea.js.map +0 -1
  198. package/dist/TextInput.d.ts +0 -15
  199. package/dist/TextInput.js +0 -61
  200. package/dist/TextInput.js.map +0 -1
  201. package/dist/TextInputWithState.d.ts +0 -8
  202. package/dist/TextInputWithState.js +0 -14
  203. package/dist/TextInputWithState.js.map +0 -1
  204. package/dist/TextPairing.d.ts +0 -21
  205. package/dist/TextPairing.js +0 -26
  206. package/dist/TextPairing.js.map +0 -1
  207. package/dist/TimeInput.d.ts +0 -15
  208. package/dist/TimeInput.js +0 -58
  209. package/dist/TimeInput.js.map +0 -1
  210. package/dist/Tooltip.d.ts +0 -11
  211. package/dist/Tooltip.js +0 -73
  212. package/dist/Tooltip.js.map +0 -1
  213. package/dist/aria.d.ts +0 -8
  214. package/dist/aria.js +0 -42
  215. package/dist/aria.js.map +0 -1
  216. package/dist/guid.d.ts +0 -1
  217. package/dist/guid.js +0 -7
  218. package/dist/guid.js.map +0 -1
  219. package/dist/hash.d.ts +0 -1
  220. package/dist/hash.js +0 -20
  221. package/dist/hash.js.map +0 -1
  222. package/dist/isServer.d.ts +0 -1
  223. package/dist/isServer.js +0 -4
  224. package/dist/isServer.js.map +0 -1
  225. package/dist/jss.d.ts +0 -122
  226. package/dist/jss.js +0 -515
  227. package/dist/jss.js.map +0 -1
  228. package/dist/numberToBase.d.ts +0 -1
  229. package/dist/numberToBase.js +0 -44
  230. package/dist/numberToBase.js.map +0 -1
  231. package/dist/stateMachineContextFactory.d.ts +0 -36
  232. package/dist/stateMachineContextFactory.js +0 -48
  233. package/dist/stateMachineContextFactory.js.map +0 -1
  234. package/dist/useCookie.d.ts +0 -9
  235. package/dist/useCookie.js +0 -67
  236. package/dist/useCookie.js.map +0 -1
  237. package/dist/useKeyboard.d.ts +0 -8
  238. package/dist/useKeyboard.js +0 -26
  239. package/dist/useKeyboard.js.map +0 -1
  240. package/dist/useNavigation.d.ts +0 -5
  241. package/dist/useNavigation.js +0 -79
  242. package/dist/useNavigation.js.map +0 -1
  243. package/dist/usePromise.d.ts +0 -1
  244. package/dist/usePromise.js +0 -12
  245. package/dist/usePromise.js.map +0 -1
  246. package/dist/useRefEffect.d.ts +0 -1
  247. package/dist/useRefEffect.js +0 -15
  248. package/dist/useRefEffect.js.map +0 -1
  249. package/jss-debug-loader.mjs +0 -44
  250. package/next-env.d.ts +0 -6
  251. package/next.config.js +0 -33
  252. package/scripts/embeddings.js +0 -93
  253. package/scripts/openai_embeddings.js +0 -100
  254. package/scripts/publish.js +0 -28
  255. package/scripts/test_embeddings.js +0 -47
  256. package/src/Badge.tsx +0 -36
  257. package/src/BaseButton.tsx +0 -62
  258. package/src/BaseInput.tsx +0 -63
  259. package/src/BaseLink.tsx +0 -80
  260. package/src/BaseList.tsx +0 -26
  261. package/src/BaseListAddOn.tsx +0 -10
  262. package/src/BaseListItem.tsx +0 -119
  263. package/src/BaseView.tsx +0 -57
  264. package/src/Box.tsx +0 -20
  265. package/src/Button.tsx +0 -90
  266. package/src/Calendar.tsx +0 -123
  267. package/src/Card.tsx +0 -30
  268. package/src/Checkbox.tsx +0 -63
  269. package/src/Circle.tsx +0 -24
  270. package/src/Column.tsx +0 -12
  271. package/src/DarkMode.tsx +0 -100
  272. package/src/DateInput.tsx +0 -63
  273. package/src/DatePicker.tsx +0 -67
  274. package/src/DatetimeInput.tsx +0 -64
  275. package/src/DesignBook.tsx +0 -677
  276. package/src/Dialog.tsx +0 -150
  277. package/src/Dropdown.tsx +0 -146
  278. package/src/Emitter.ts +0 -26
  279. package/src/FlexLayout.tsx +0 -53
  280. package/src/Icon.tsx +0 -80
  281. package/src/IconButton.tsx +0 -81
  282. package/src/IconLink.tsx +0 -59
  283. package/src/IconType.ts +0 -787
  284. package/src/Interactable.tsx +0 -210
  285. package/src/JSSComment.tsx +0 -56
  286. package/src/Link.tsx +0 -110
  287. package/src/List.tsx +0 -58
  288. package/src/ListButtonItem.tsx +0 -69
  289. package/src/ListDivider.tsx +0 -13
  290. package/src/ListHeaderItem.tsx +0 -45
  291. package/src/ListItem.tsx +0 -24
  292. package/src/ListLinkItem.tsx +0 -76
  293. package/src/ListSpacer.tsx +0 -14
  294. package/src/MenuIcon.tsx +0 -50
  295. package/src/NextJSRouter.tsx +0 -60
  296. package/src/NextJSRouterState.tsx +0 -154
  297. package/src/OnVisible.tsx +0 -42
  298. package/src/Popover.tsx +0 -145
  299. package/src/ProgressBar.tsx +0 -63
  300. package/src/ProgressCircle.tsx +0 -38
  301. package/src/Providers.tsx +0 -33
  302. package/src/RangeInput.tsx +0 -82
  303. package/src/ResultOrError.ts +0 -15
  304. package/src/RootView.tsx +0 -55
  305. package/src/Row.tsx +0 -12
  306. package/src/Select.tsx +0 -39
  307. package/src/StackContext.tsx +0 -52
  308. package/src/StaticCheckbox.tsx +0 -72
  309. package/src/Storage.tsx +0 -198
  310. package/src/Stream.tsx +0 -50
  311. package/src/Sublist.tsx +0 -61
  312. package/src/SubmitIconInput.tsx +0 -45
  313. package/src/Tabs.tsx +0 -110
  314. package/src/Text.tsx +0 -111
  315. package/src/TextArea.tsx +0 -58
  316. package/src/TextInput.tsx +0 -123
  317. package/src/TextInputWithState.tsx +0 -32
  318. package/src/TextPairing.tsx +0 -115
  319. package/src/TimeInput.tsx +0 -109
  320. package/src/Tooltip.tsx +0 -109
  321. package/src/aria.ts +0 -72
  322. package/src/docs/mdx.tsx +0 -137
  323. package/src/docs/pages.ts +0 -115
  324. package/src/docs/searchIndex.ts +0 -1
  325. package/src/examples/ExampleDialog.tsx +0 -28
  326. package/src/guid.ts +0 -7
  327. package/src/hash.ts +0 -21
  328. package/src/index.ts +0 -68
  329. package/src/isServer.ts +0 -3
  330. package/src/jss.tsx +0 -712
  331. package/src/jsx-dev-runtime.ts +0 -74
  332. package/src/jsx-runtime.ts +0 -2
  333. package/src/numberToBase.ts +0 -52
  334. package/src/pages/Badge.mdx +0 -152
  335. package/src/pages/Button.mdx +0 -163
  336. package/src/pages/Calendar.mdx +0 -254
  337. package/src/pages/Card.mdx +0 -147
  338. package/src/pages/Checkbox.mdx +0 -131
  339. package/src/pages/Dialog.mdx +0 -197
  340. package/src/pages/FlexLayout.mdx +0 -211
  341. package/src/pages/Hashing.mdx +0 -211
  342. package/src/pages/Icon.mdx +0 -171
  343. package/src/pages/IconButton.mdx +0 -155
  344. package/src/pages/Link.mdx +0 -160
  345. package/src/pages/List.mdx +0 -262
  346. package/src/pages/ListHeader.mdx +0 -220
  347. package/src/pages/Popover.mdx +0 -223
  348. package/src/pages/ProgressBar.mdx +0 -200
  349. package/src/pages/ProgressCircle.mdx +0 -218
  350. package/src/pages/RangeInput.mdx +0 -237
  351. package/src/pages/Tabs.mdx +0 -281
  352. package/src/pages/Text.mdx +0 -154
  353. package/src/pages/TextInput.mdx +0 -235
  354. package/src/pages/TextPairing.mdx +0 -204
  355. package/src/pages/TimeInput.mdx +0 -178
  356. package/src/pages/Tooltip.mdx +0 -115
  357. package/src/pages/_app.tsx +0 -466
  358. package/src/pages/_document.tsx +0 -30
  359. package/src/pages/css-in-js.mdx +0 -240
  360. package/src/pages/index.mdx +0 -58
  361. package/src/pages/navigation.mdx +0 -158
  362. package/src/pages/prism.css +0 -3
  363. package/src/pages/useCookie.mdx +0 -176
  364. package/src/pages/useKeyboard.mdx +0 -257
  365. package/src/pages/useNavigation.mdx +0 -258
  366. package/src/pages/usePromise.mdx +0 -280
  367. package/src/pages/useRefEffect.mdx +0 -251
  368. package/src/stateMachineContextFactory.tsx +0 -111
  369. package/src/useCookie.tsx +0 -95
  370. package/src/useKeyboard.tsx +0 -43
  371. package/src/useNavigation.tsx +0 -89
  372. package/src/usePromise.tsx +0 -18
  373. package/src/useRefEffect.tsx +0 -18
  374. package/src/vite-plugin-jss-debug.ts +0 -77
  375. package/tsconfig.build.json +0 -23
  376. package/tsconfig.json +0 -38
package/dist/jss.js DELETED
@@ -1,515 +0,0 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useRef } from "react";
3
- import { hash } from "./hash";
4
- import { isServer } from "./isServer";
5
- const aliases = {
6
- margin: (value) => {
7
- if (value == null) {
8
- return [];
9
- }
10
- const matches = typeof value === "string"
11
- ? Array.from(value.matchAll(/(.+) (.+)$/g))[0]
12
- : null;
13
- if (matches) {
14
- return [
15
- ["margin-top", matches[1]],
16
- ["margin-bottom", matches[1]],
17
- ["margin-left", matches[2]],
18
- ["margin-right", matches[2]],
19
- ];
20
- }
21
- else {
22
- return [
23
- ["margin-top", value],
24
- ["margin-bottom", value],
25
- ["margin-left", value],
26
- ["margin-right", value],
27
- ];
28
- }
29
- },
30
- padding: (value) => {
31
- if (value == null) {
32
- return [];
33
- }
34
- const matches = typeof value === "string"
35
- ? Array.from(value.matchAll(/(.+) (.+)$/g))[0]
36
- : null;
37
- if (matches) {
38
- return [
39
- ["padding-top", matches[1]],
40
- ["padding-bottom", matches[1]],
41
- ["padding-left", matches[2]],
42
- ["padding-right", matches[2]],
43
- ];
44
- }
45
- else {
46
- return [
47
- ["padding-top", value],
48
- ["padding-bottom", value],
49
- ["padding-left", value],
50
- ["padding-right", value],
51
- ];
52
- }
53
- },
54
- };
55
- const rawHashMap = new Map();
56
- function createStyleNode(content) {
57
- if (isServer()) {
58
- serverStyles.push(content);
59
- }
60
- else {
61
- const style = document.createElement("style");
62
- style.appendChild(document.createTextNode(content));
63
- document.head.appendChild(style);
64
- }
65
- }
66
- const pixelStyles = new Set([
67
- "min-height",
68
- "height",
69
- "max-height",
70
- "min-width",
71
- "width",
72
- "max-width",
73
- "margin",
74
- "margin-top",
75
- "margin-bottom",
76
- "margin-left",
77
- "margin-right",
78
- "padding",
79
- "padding-top",
80
- "padding-bottom",
81
- "padding-left",
82
- "padding-right",
83
- "border-radius",
84
- "font-size",
85
- "top",
86
- "bottom",
87
- "left",
88
- "right",
89
- "outline-offset",
90
- "gap",
91
- "row-gap",
92
- "column-gap",
93
- ]);
94
- const toPixelValue = (key, value) => {
95
- const sValue = value.toString();
96
- if (sValue.includes("%") ||
97
- sValue.includes("v") ||
98
- sValue.includes("px") ||
99
- sValue.includes("em") ||
100
- sValue.includes("rem")) {
101
- return sValue;
102
- }
103
- return pixelStyles.has(key) && Number.isInteger(parseInt(value, 10))
104
- ? `${value}px`
105
- : value;
106
- };
107
- const getCSS = (key, value) => {
108
- const cssProp = key.replace(/[A-Z]/g, (m) => "-" + m.toLowerCase());
109
- const cssValue = toPixelValue(cssProp, value);
110
- return [cssProp, cssValue];
111
- };
112
- const flattenJSS = (jss) => {
113
- if (!jss) {
114
- return {};
115
- }
116
- else if (Array.isArray(jss)) {
117
- const result = {};
118
- for (const item of jss) {
119
- Object.assign(result, flattenJSS(item));
120
- }
121
- return result;
122
- }
123
- else {
124
- return jss;
125
- }
126
- };
127
- export const toClassnames = (jss, componentName) => {
128
- jss = flattenJSS(jss);
129
- const stylesStack = Object.entries(jss);
130
- const classNames = [];
131
- if (componentName) {
132
- classNames.push(componentName);
133
- }
134
- while (stylesStack.length) {
135
- const [key, value] = stylesStack.pop();
136
- if (aliases[key]) {
137
- stylesStack.push(...aliases[key](value));
138
- continue;
139
- }
140
- const inputKey = key + JSON.stringify(value);
141
- const rawHash = hash(inputKey).toString(32);
142
- const cached = rawHashMap.get(rawHash);
143
- if (cached != null) {
144
- if (cached.key !== inputKey) {
145
- console.warn(`[jss] Hash collision detected: "${inputKey}" collides with "${cached.key}"`);
146
- }
147
- classNames.push(cached.selector);
148
- continue;
149
- }
150
- const selector = `x${rawHash}`;
151
- rawHashMap.set(rawHash, { selector, key: inputKey });
152
- classNames.push(selector);
153
- if (typeof value === "number" || typeof value === "string") {
154
- const [cssProp, cssValue] = getCSS(key, value);
155
- createStyleNode(`.${selector} { ${cssProp}: ${cssValue}; }`);
156
- }
157
- else if (typeof value === "object" && key.startsWith("@media")) {
158
- const media = key;
159
- const cssValue = Object.entries(value)
160
- .map(([key, value]) => {
161
- const [cssProp, cssValue] = getCSS(key, value);
162
- return `${cssProp}: ${cssValue}; `;
163
- })
164
- .join(" ");
165
- createStyleNode(`${media} { .${selector} { ${cssValue} } }`);
166
- }
167
- else if (typeof value === "object" && value != null) {
168
- const cssValue = Object.entries(value)
169
- .map(([key, value]) => {
170
- const [cssProp, cssValue] = getCSS(key, value);
171
- return `${cssProp}: ${cssValue}; `;
172
- })
173
- .join(" ");
174
- createStyleNode(`.${selector}${key} { ${cssValue} }`);
175
- }
176
- }
177
- return classNames.join(" ");
178
- };
179
- const serverStyles = [];
180
- export function JSSProvider({ themes, children, }) {
181
- const stylesRef = useRef(null);
182
- if (stylesRef.current == null) {
183
- stylesRef.current = getBaseStyles(themes);
184
- }
185
- return (_jsxs(_Fragment, { children: [stylesRef.current.map((style, i) => (_jsx("style", { dangerouslySetInnerHTML: { __html: style } }, i))), children] }));
186
- }
187
- export function JSServerStyles() {
188
- const stylesRef = useRef(null);
189
- if (stylesRef.current == null) {
190
- stylesRef.current = serverStyles;
191
- }
192
- return (_jsx(_Fragment, { children: stylesRef.current.map((style, i) => (_jsx("style", { dangerouslySetInnerHTML: { __html: style } }, i))) }));
193
- }
194
- export function cssVar(string) {
195
- return `var(${string})`;
196
- }
197
- const sizes = {
198
- xsmall: cssVar("--spacing-xs"),
199
- small: cssVar("--spacing-s"),
200
- medium: cssVar("--spacing-m"),
201
- large: cssVar("--spacing-l"),
202
- xlarge: cssVar("--spacing-xl"),
203
- xxlarge: cssVar("--spacing-xxl"),
204
- xxxlarge: cssVar("--spacing-xxxl"),
205
- };
206
- export function getSize(size) {
207
- return sizes[size];
208
- }
209
- export function getSpacing(spacing) {
210
- if (spacing === "none") {
211
- return "0px";
212
- }
213
- else {
214
- return getSize(spacing);
215
- }
216
- }
217
- export function getPadding(padding) {
218
- if (Array.isArray(padding)) {
219
- const [vertical, horizontal] = padding;
220
- return {
221
- paddingTop: getSpacing(vertical),
222
- paddingBottom: getSpacing(vertical),
223
- paddingLeft: getSpacing(horizontal),
224
- paddingRight: getSpacing(horizontal),
225
- };
226
- }
227
- else {
228
- return {
229
- padding: getSpacing(padding),
230
- };
231
- }
232
- }
233
- export function getMargin(margin) {
234
- if (Array.isArray(margin)) {
235
- const [vertical, horizontal] = margin;
236
- return {
237
- marginTop: getSpacing(vertical),
238
- marginBottom: getSpacing(vertical),
239
- marginLeft: getSpacing(horizontal),
240
- marginRight: getSpacing(horizontal),
241
- };
242
- }
243
- else {
244
- return {
245
- margin: getSpacing(margin),
246
- };
247
- }
248
- }
249
- export const lightTheme = {
250
- /* Background */
251
- ["--overlay-background"]: "rgb(245, 246, 250)",
252
- ["--primary-background"]: "rgb(239, 239, 244)",
253
- ["--secondary-background"]: "rgb(232, 232, 234)",
254
- ["--divider"]: "rgb(200, 200, 200)",
255
- ["--strong-divider"]: "rgb(100, 100, 100)",
256
- ["--pressed-background"]: "rgb(220, 222, 224)",
257
- ["--hovered-background"]: "rgb(232, 235, 237)",
258
- ["--selected-background"]: "rgb(227, 230, 232)",
259
- ["--nav-bar"]: "rgb(232, 232, 234)",
260
- /* Effects */
261
- ["--warning"]: "rgb(255, 204, 0)",
262
- ["--highlight"]: "rgb(0, 122, 255)",
263
- ["--outline"]: "rgb(103, 176, 255)",
264
- ["--light-highlight"]: "rgb(220, 232, 245)",
265
- /* Text */
266
- ["--primary-text"]: "rgb(0, 0, 0)",
267
- ["--secondary-text"]: "rgb(100, 100, 100)",
268
- ["--subtle-text"]: "rgb(180, 180, 180)",
269
- ["--highlight-text"]: "rgb(0, 122, 255)",
270
- ["--negative-text"]: "rgb(255, 59, 48)",
271
- ["--light-text"]: "rgb(255, 255, 255)",
272
- ["--font-xsmall"]: "8px",
273
- ["--font-small"]: "12px",
274
- ["--font-medium"]: "14px",
275
- ["--font-large"]: "18px",
276
- ["--font-xlarge"]: "22px",
277
- ["--font-xxlarge"]: "26px",
278
- ["--font-xxxlarge"]: "34px",
279
- /* Buttons */
280
- ["--background-button-positive"]: "rgb(0, 122, 255)",
281
- ["--background-button-secondary"]: "rgb(218, 218, 223)",
282
- ["--background-button-negative"]: "rgb(255, 59, 48)",
283
- ["--background-button-disabled"]: "rgb(218, 218, 223)",
284
- /* Spacing */
285
- ["--spacing-xs"]: "2px",
286
- ["--spacing-s"]: "4px",
287
- ["--spacing-m"]: "8px",
288
- ["--spacing-l"]: "12px",
289
- ["--spacing-xl"]: "16px",
290
- ["--spacing-xxl"]: "24px",
291
- ["--spacing-xxxl"]: "32px",
292
- ["--border-radius-s"]: "2px",
293
- ["--border-radius-m"]: "4px",
294
- ["--border-radius-l"]: "8px",
295
- ["--nav-bar-height"]: "50px",
296
- /* Shadows */
297
- ["--shadow-sm"]: "0 1px 2px rgba(0, 0, 0, 0.05), 0 1px 3px rgba(0, 0, 0, 0.1)",
298
- ["--shadow-md"]: "0 4px 6px rgba(0, 0, 0, 0.07), 0 2px 4px rgba(0, 0, 0, 0.05)",
299
- ["--shadow-lg"]: "0 10px 25px rgba(0, 0, 0, 0.15), 0 4px 10px rgba(0, 0, 0, 0.1)",
300
- /* Transitions */
301
- ["--transition-fast"]: "0.15s ease",
302
- ["--transition-normal"]: "0.2s ease",
303
- };
304
- export const darkTheme = {
305
- /* Background */
306
- ["--overlay-background"]: "rgb(35, 36, 37)",
307
- ["--primary-background"]: "rgb(42, 43, 46)",
308
- ["--secondary-background"]: "rgb(65, 66, 67)",
309
- ["--divider"]: "rgb(70, 72, 73)",
310
- ["--strong-divider"]: "rgb(100, 100, 100)",
311
- ["--pressed-background"]: "rgb(90, 92, 93)",
312
- ["--hovered-background"]: "rgb(50, 53, 54)",
313
- ["--selected-background"]: "rgb(65, 68, 69)",
314
- ["--nav-bar"]: "rgb(34, 35, 36)",
315
- /* Effects */
316
- ["--warning"]: "rgb(255, 204, 0)",
317
- ["--highlight"]: "rgb(50, 140, 220)",
318
- ["--outline"]: "rgb(91, 170, 255)",
319
- ["--light-highlight"]: "rgba(49, 57, 63)",
320
- /* Text */
321
- ["--primary-text"]: "rgb(255, 255, 255)",
322
- ["--secondary-text"]: "rgb(200, 200, 200)",
323
- ["--subtle-text"]: "rgb(140, 140, 140)",
324
- ["--highlight-text"]: "#4ca7f8",
325
- ["--negative-text"]: "rgb(255, 59, 48)",
326
- ["--light-text"]: "rgb(255, 255, 255)",
327
- ["--font-xsmall"]: "8px",
328
- ["--font-small"]: "12px",
329
- ["--font-medium"]: "14px",
330
- ["--font-large"]: "18px",
331
- ["--font-xlarge"]: "22px",
332
- ["--font-xxlarge"]: "26px",
333
- ["--font-xxxlarge"]: "34px",
334
- /* Buttons */
335
- ["--background-button-positive"]: "rgb(50, 140, 220)",
336
- ["--background-button-secondary"]: "rgb(82, 83, 86)",
337
- ["--background-button-negative"]: "rgb(255, 59, 48)",
338
- ["--background-button-disabled"]: "rgb(70, 72, 73)",
339
- /* Spacing */
340
- ["--spacing-xs"]: "2px",
341
- ["--spacing-s"]: "4px",
342
- ["--spacing-m"]: "8px",
343
- ["--spacing-l"]: "12px",
344
- ["--spacing-xl"]: "16px",
345
- ["--spacing-xxl"]: "24px",
346
- ["--spacing-xxxl"]: "32px",
347
- ["--border-radius-s"]: "2px",
348
- ["--border-radius-m"]: "4px",
349
- ["--border-radius-l"]: "8px",
350
- ["--nav-bar-height"]: "50px",
351
- /* Shadows - stronger for dark mode to be visible */
352
- ["--shadow-sm"]: "0 1px 2px rgba(0, 0, 0, 0.2), 0 1px 3px rgba(0, 0, 0, 0.3)",
353
- ["--shadow-md"]: "0 4px 6px rgba(0, 0, 0, 0.25), 0 2px 4px rgba(0, 0, 0, 0.2)",
354
- ["--shadow-lg"]: "0 10px 25px rgba(0, 0, 0, 0.35), 0 4px 10px rgba(0, 0, 0, 0.25)",
355
- /* Transitions */
356
- ["--transition-fast"]: "0.15s ease",
357
- ["--transition-normal"]: "0.2s ease",
358
- };
359
- export const baseStyles = `
360
- * {
361
- box-sizing: border-box;
362
- border: none;
363
- touch-action: manipulation;
364
- -webkit-font-smoothing: antialiased;
365
- -moz-osx-font-smoothing: grayscale;
366
- }
367
-
368
- *:focus {
369
- outline-color: ${cssVar("--highlight")};
370
- }
371
-
372
- html,
373
- body {
374
- margin: 0;
375
- height: 100%;
376
- width: 100%;
377
- overflow: hidden;
378
- background-color: ${cssVar("--primary-background")};
379
- }
380
-
381
- @keyframes dialogFadeIn {
382
- from {
383
- opacity: 0;
384
- transform: scale(0.95) translateY(-10px);
385
- }
386
- to {
387
- opacity: 1;
388
- transform: scale(1) translateY(0);
389
- }
390
- }
391
-
392
- @keyframes backdropFadeIn {
393
- from {
394
- opacity: 0;
395
- }
396
- to {
397
- opacity: 1;
398
- }
399
- }
400
-
401
- @keyframes popoverFadeIn {
402
- from {
403
- opacity: 0;
404
- transform: scale(0.95);
405
- }
406
- to {
407
- opacity: 1;
408
- transform: scale(1);
409
- }
410
- }
411
-
412
- `;
413
- const backgroundStyles = {
414
- highlight: {
415
- backgroundColor: cssVar("--highlight"),
416
- },
417
- light: {
418
- backgroundColor: cssVar("--light-text"),
419
- },
420
- dark: {
421
- backgroundColor: cssVar("--primary-text"),
422
- },
423
- warning: {
424
- backgroundColor: cssVar("--warning"),
425
- },
426
- "primary-background": {
427
- backgroundColor: cssVar("--primary-background"),
428
- },
429
- negative: {
430
- backgroundColor: cssVar("--negative-text"),
431
- },
432
- "secondary-background": {
433
- backgroundColor: cssVar("--secondary-background"),
434
- },
435
- divider: {
436
- backgroundColor: cssVar("--divider"),
437
- },
438
- inherit: {
439
- backgroundColor: "inherit",
440
- },
441
- };
442
- export const getBackground = (color) => {
443
- return backgroundStyles[color];
444
- };
445
- export const MOBILE = 750;
446
- export const TABLET = 1000;
447
- export const LAPTOP = 1200;
448
- export const MOBILE_MEDIA = `@media (min-width: 0px) and (max-width: ${MOBILE}px)`;
449
- export const TABLET_MEDIA = `@media (min-width: ${MOBILE}px) and (max-width: ${TABLET}px)`;
450
- export const LAPTOP_MEDIA = `@media (min-width: ${TABLET}px) and (max-width: ${LAPTOP}px)`;
451
- export const DESKTOP_MEDIA = `@media (min-width: ${LAPTOP}px)`;
452
- export function mobile(jss) {
453
- return {
454
- [MOBILE_MEDIA]: jss,
455
- };
456
- }
457
- export function tablet(jss) {
458
- return {
459
- [TABLET_MEDIA]: jss,
460
- };
461
- }
462
- export function laptop(jss) {
463
- return {
464
- [LAPTOP_MEDIA]: jss,
465
- };
466
- }
467
- export function desktop(jss) {
468
- return {
469
- [DESKTOP_MEDIA]: jss,
470
- };
471
- }
472
- const textColorStyles = {
473
- primary: {
474
- color: cssVar("--primary-text"),
475
- },
476
- secondary: {
477
- color: cssVar("--secondary-text"),
478
- },
479
- highlight: {
480
- color: cssVar("--highlight-text"),
481
- },
482
- negative: {
483
- color: cssVar("--negative-text"),
484
- },
485
- subtle: {
486
- color: cssVar("--subtle-text"),
487
- },
488
- light: {
489
- color: cssVar("--light-text"),
490
- },
491
- inherit: {
492
- color: "inherit",
493
- },
494
- };
495
- export const getTextColor = (color) => {
496
- return textColorStyles[color];
497
- };
498
- export function getBaseStyles(themes) {
499
- const css = [];
500
- css.push(baseStyles);
501
- css.push(`body {
502
- color-scheme: light;
503
- ${Object.entries(themes.light)
504
- .map(([key, value]) => `${key}: ${value};`)
505
- .join("\n ")}
506
- }`);
507
- css.push(`body.dark-mode {
508
- color-scheme: dark;
509
- ${Object.entries(themes.dark)
510
- .map(([key, value]) => `${key}: ${value};`)
511
- .join("\n ")}
512
- }`);
513
- return css;
514
- }
515
- //# sourceMappingURL=jss.js.map
package/dist/jss.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"jss.js","sourceRoot":"","sources":["../src/jss.tsx"],"names":[],"mappings":";AACA,OAAc,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAgBtC,MAAM,OAAO,GAET;IACF,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;QACxB,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GACX,OAAO,KAAK,KAAK,QAAQ;YACvB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC;QACX,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO;gBACL,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC1B,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC7B,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC3B,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;aAC7B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,CAAC,YAAY,EAAE,KAAK,CAAC;gBACrB,CAAC,eAAe,EAAE,KAAK,CAAC;gBACxB,CAAC,aAAa,EAAE,KAAK,CAAC;gBACtB,CAAC,cAAc,EAAE,KAAK,CAAC;aACxB,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC,KAAa,EAAE,EAAE;QACzB,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GACX,OAAO,KAAK,KAAK,QAAQ;YACvB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC;QAEX,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO;gBACL,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC3B,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC9B,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC5B,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;aAC9B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,CAAC,aAAa,EAAE,KAAK,CAAC;gBACtB,CAAC,gBAAgB,EAAE,KAAK,CAAC;gBACzB,CAAC,cAAc,EAAE,KAAK,CAAC;gBACvB,CAAC,eAAe,EAAE,KAAK,CAAC;aACzB,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,GAAG,IAAI,GAAG,EAA6C,CAAC;AAExE,SAAS,eAAe,CAAC,OAAe;IACtC,IAAI,QAAQ,EAAE,EAAE,CAAC;QACf,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;QACpD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,YAAY;IACZ,QAAQ;IACR,YAAY;IACZ,WAAW;IACX,OAAO;IACP,WAAW;IACX,QAAQ;IACR,YAAY;IACZ,eAAe;IACf,aAAa;IACb,cAAc;IACd,SAAS;IACT,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,eAAe;IACf,eAAe;IACf,WAAW;IACX,KAAK;IACL,QAAQ;IACR,MAAM;IACN,OAAO;IACP,gBAAgB;IAChB,KAAK;IACL,SAAS;IACT,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,KAAK,EAAU,EAAE;IAClD,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IAEhC,IACE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QACpB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QACpB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QACrB,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EACtB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAClE,CAAC,CAAC,GAAG,KAAK,IAAI;QACd,CAAC,CAAC,KAAK,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,KAAK,EAAoB,EAAE;IACtD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9C,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,GAAQ,EAAU,EAAE;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAW,EAAE,CAAC;QAC1B,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAQ,EAAE,aAAsB,EAAU,EAAE;IACvE,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAEtB,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,IAAI,aAAa,EAAE,CAAC;QAClB,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,WAAW,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAEvC,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACjB,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACzC,SAAS;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEvC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,IAAI,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,CAAC,IAAI,CACV,mCAAmC,QAAQ,oBAAoB,MAAM,CAAC,GAAG,GAAG,CAC7E,CAAC;YACJ,CAAC;YACD,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACjC,SAAS;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;QAC/B,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrD,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC3D,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/C,eAAe,CAAC,IAAI,QAAQ,MAAM,OAAO,KAAK,QAAQ,KAAK,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjE,MAAM,KAAK,GAAG,GAAG,CAAC;YAClB,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;iBACnC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACpB,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC/C,OAAO,GAAG,OAAO,KAAK,QAAQ,IAAI,CAAC;YACrC,CAAC,CAAC;iBACD,IAAI,CAAC,GAAG,CAAC,CAAC;YACb,eAAe,CAAC,GAAG,KAAK,OAAO,QAAQ,MAAM,QAAQ,MAAM,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;iBACnC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACpB,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC/C,OAAO,GAAG,OAAO,KAAK,QAAQ,IAAI,CAAC;YACrC,CAAC,CAAC;iBACD,IAAI,CAAC,GAAG,CAAC,CAAC;YACb,eAAe,CAAC,IAAI,QAAQ,GAAG,GAAG,MAAM,QAAQ,IAAI,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,MAAM,UAAU,WAAW,CAAC,EAC1B,MAAM,EACN,QAAQ,GAIT;IACC,MAAM,SAAS,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IAEhD,IAAI,SAAS,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;QAC9B,SAAS,CAAC,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,CACL,8BACG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACnC,gBAAe,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAA7C,CAAC,CAAgD,CAC9D,CAAC,EACD,QAAQ,IACR,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,SAAS,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IAEhD,IAAI,SAAS,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;QAC9B,SAAS,CAAC,OAAO,GAAG,YAAY,CAAC;IACnC,CAAC;IAED,OAAO,CACL,4BACG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACnC,gBAAe,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAA7C,CAAC,CAAgD,CAC9D,CAAC,GACD,CACJ,CAAC;AACJ,CAAC;AAwDD,MAAM,UAAU,MAAM,CAAC,MAAmB;IACxC,OAAO,OAAO,MAAM,GAAG,CAAC;AAC1B,CAAC;AAED,MAAM,KAAK,GAA+B;IACxC,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC,aAAa,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC,aAAa,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC,gBAAgB,CAAC;CACnC,CAAC;AAEF,MAAM,UAAU,OAAO,CAAC,IAAU;IAChC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAgB;IACzC,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;SAAM,CAAC;QACN,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAgB;IACzC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC;QACvC,OAAO;YACL,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC;YAChC,aAAa,EAAE,UAAU,CAAC,QAAQ,CAAC;YACnC,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC;YACnC,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC;SACrC,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC;SAC7B,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC;QACtC,OAAO;YACL,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC;YAC/B,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC;YAClC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC;YAClC,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC;SACpC,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC;SAC3B,CAAC;IACJ,CAAC;AACH,CAAC;AA4DD,MAAM,CAAC,MAAM,UAAU,GAAU;IAC/B,gBAAgB;IAChB,CAAC,sBAAsB,CAAC,EAAE,oBAAoB;IAC9C,CAAC,sBAAsB,CAAC,EAAE,oBAAoB;IAC9C,CAAC,wBAAwB,CAAC,EAAE,oBAAoB;IAChD,CAAC,WAAW,CAAC,EAAE,oBAAoB;IACnC,CAAC,kBAAkB,CAAC,EAAE,oBAAoB;IAC1C,CAAC,sBAAsB,CAAC,EAAE,oBAAoB;IAC9C,CAAC,sBAAsB,CAAC,EAAE,oBAAoB;IAC9C,CAAC,uBAAuB,CAAC,EAAE,oBAAoB;IAC/C,CAAC,WAAW,CAAC,EAAE,oBAAoB;IACnC,aAAa;IACb,CAAC,WAAW,CAAC,EAAE,kBAAkB;IACjC,CAAC,aAAa,CAAC,EAAE,kBAAkB;IACnC,CAAC,WAAW,CAAC,EAAE,oBAAoB;IACnC,CAAC,mBAAmB,CAAC,EAAE,oBAAoB;IAC3C,UAAU;IACV,CAAC,gBAAgB,CAAC,EAAE,cAAc;IAClC,CAAC,kBAAkB,CAAC,EAAE,oBAAoB;IAC1C,CAAC,eAAe,CAAC,EAAE,oBAAoB;IACvC,CAAC,kBAAkB,CAAC,EAAE,kBAAkB;IACxC,CAAC,iBAAiB,CAAC,EAAE,kBAAkB;IACvC,CAAC,cAAc,CAAC,EAAE,oBAAoB;IACtC,CAAC,eAAe,CAAC,EAAE,KAAK;IACxB,CAAC,cAAc,CAAC,EAAE,MAAM;IACxB,CAAC,eAAe,CAAC,EAAE,MAAM;IACzB,CAAC,cAAc,CAAC,EAAE,MAAM;IACxB,CAAC,eAAe,CAAC,EAAE,MAAM;IACzB,CAAC,gBAAgB,CAAC,EAAE,MAAM;IAC1B,CAAC,iBAAiB,CAAC,EAAE,MAAM;IAC3B,aAAa;IACb,CAAC,8BAA8B,CAAC,EAAE,kBAAkB;IACpD,CAAC,+BAA+B,CAAC,EAAE,oBAAoB;IACvD,CAAC,8BAA8B,CAAC,EAAE,kBAAkB;IACpD,CAAC,8BAA8B,CAAC,EAAE,oBAAoB;IACtD,aAAa;IACb,CAAC,cAAc,CAAC,EAAE,KAAK;IACvB,CAAC,aAAa,CAAC,EAAE,KAAK;IACtB,CAAC,aAAa,CAAC,EAAE,KAAK;IACtB,CAAC,aAAa,CAAC,EAAE,MAAM;IACvB,CAAC,cAAc,CAAC,EAAE,MAAM;IACxB,CAAC,eAAe,CAAC,EAAE,MAAM;IACzB,CAAC,gBAAgB,CAAC,EAAE,MAAM;IAC1B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC5B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC5B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC5B,CAAC,kBAAkB,CAAC,EAAE,MAAM;IAC5B,aAAa;IACb,CAAC,aAAa,CAAC,EAAE,6DAA6D;IAC9E,CAAC,aAAa,CAAC,EAAE,8DAA8D;IAC/E,CAAC,aAAa,CAAC,EAAE,gEAAgE;IACjF,iBAAiB;IACjB,CAAC,mBAAmB,CAAC,EAAE,YAAY;IACnC,CAAC,qBAAqB,CAAC,EAAE,WAAW;CACrC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAU;IAC9B,gBAAgB;IAChB,CAAC,sBAAsB,CAAC,EAAE,iBAAiB;IAC3C,CAAC,sBAAsB,CAAC,EAAE,iBAAiB;IAC3C,CAAC,wBAAwB,CAAC,EAAE,iBAAiB;IAC7C,CAAC,WAAW,CAAC,EAAE,iBAAiB;IAChC,CAAC,kBAAkB,CAAC,EAAE,oBAAoB;IAC1C,CAAC,sBAAsB,CAAC,EAAE,iBAAiB;IAC3C,CAAC,sBAAsB,CAAC,EAAE,iBAAiB;IAC3C,CAAC,uBAAuB,CAAC,EAAE,iBAAiB;IAC5C,CAAC,WAAW,CAAC,EAAE,iBAAiB;IAChC,aAAa;IACb,CAAC,WAAW,CAAC,EAAE,kBAAkB;IACjC,CAAC,aAAa,CAAC,EAAE,mBAAmB;IACpC,CAAC,WAAW,CAAC,EAAE,mBAAmB;IAClC,CAAC,mBAAmB,CAAC,EAAE,kBAAkB;IACzC,UAAU;IACV,CAAC,gBAAgB,CAAC,EAAE,oBAAoB;IACxC,CAAC,kBAAkB,CAAC,EAAE,oBAAoB;IAC1C,CAAC,eAAe,CAAC,EAAE,oBAAoB;IACvC,CAAC,kBAAkB,CAAC,EAAE,SAAS;IAC/B,CAAC,iBAAiB,CAAC,EAAE,kBAAkB;IACvC,CAAC,cAAc,CAAC,EAAE,oBAAoB;IACtC,CAAC,eAAe,CAAC,EAAE,KAAK;IACxB,CAAC,cAAc,CAAC,EAAE,MAAM;IACxB,CAAC,eAAe,CAAC,EAAE,MAAM;IACzB,CAAC,cAAc,CAAC,EAAE,MAAM;IACxB,CAAC,eAAe,CAAC,EAAE,MAAM;IACzB,CAAC,gBAAgB,CAAC,EAAE,MAAM;IAC1B,CAAC,iBAAiB,CAAC,EAAE,MAAM;IAC3B,aAAa;IACb,CAAC,8BAA8B,CAAC,EAAE,mBAAmB;IACrD,CAAC,+BAA+B,CAAC,EAAE,iBAAiB;IACpD,CAAC,8BAA8B,CAAC,EAAE,kBAAkB;IACpD,CAAC,8BAA8B,CAAC,EAAE,iBAAiB;IACnD,aAAa;IACb,CAAC,cAAc,CAAC,EAAE,KAAK;IACvB,CAAC,aAAa,CAAC,EAAE,KAAK;IACtB,CAAC,aAAa,CAAC,EAAE,KAAK;IACtB,CAAC,aAAa,CAAC,EAAE,MAAM;IACvB,CAAC,cAAc,CAAC,EAAE,MAAM;IACxB,CAAC,eAAe,CAAC,EAAE,MAAM;IACzB,CAAC,gBAAgB,CAAC,EAAE,MAAM;IAC1B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC5B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC5B,CAAC,mBAAmB,CAAC,EAAE,KAAK;IAC5B,CAAC,kBAAkB,CAAC,EAAE,MAAM;IAC5B,oDAAoD;IACpD,CAAC,aAAa,CAAC,EAAE,4DAA4D;IAC7E,CAAC,aAAa,CAAC,EAAE,6DAA6D;IAC9E,CAAC,aAAa,CAAC,EAAE,iEAAiE;IAClF,iBAAiB;IACjB,CAAC,mBAAmB,CAAC,EAAE,YAAY;IACnC,CAAC,qBAAqB,CAAC,EAAE,WAAW;CACrC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;mBAUP,MAAM,CAAC,aAAa,CAAC;;;;;;;;;sBASlB,MAAM,CAAC,sBAAsB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCnD,CAAC;AAEF,MAAM,gBAAgB,GAAG;IACvB,SAAS,EAAE;QACT,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC;KACvC;IACD,KAAK,EAAE;QACL,eAAe,EAAE,MAAM,CAAC,cAAc,CAAC;KACxC;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,MAAM,CAAC,gBAAgB,CAAC;KAC1C;IACD,OAAO,EAAE;QACP,eAAe,EAAE,MAAM,CAAC,WAAW,CAAC;KACrC;IACD,oBAAoB,EAAE;QACpB,eAAe,EAAE,MAAM,CAAC,sBAAsB,CAAC;KAChD;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,MAAM,CAAC,iBAAiB,CAAC;KAC3C;IACD,sBAAsB,EAAE;QACtB,eAAe,EAAE,MAAM,CAAC,wBAAwB,CAAC;KAClD;IACD,OAAO,EAAE;QACP,eAAe,EAAE,MAAM,CAAC,WAAW,CAAC;KACrC;IACD,OAAO,EAAE;QACP,eAAe,EAAE,SAAS;KAC3B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAY,EAAO,EAAE;IACjD,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAC;AAC1B,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC;AAC3B,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC;AAE3B,MAAM,CAAC,MAAM,YAAY,GAAG,2CAA2C,MAAM,KAAK,CAAC;AACnF,MAAM,CAAC,MAAM,YAAY,GAAG,sBAAsB,MAAM,uBAAuB,MAAM,KAAK,CAAC;AAC3F,MAAM,CAAC,MAAM,YAAY,GAAG,sBAAsB,MAAM,uBAAuB,MAAM,KAAK,CAAC;AAC3F,MAAM,CAAC,MAAM,aAAa,GAAG,sBAAsB,MAAM,KAAK,CAAC;AAE/D,MAAM,UAAU,MAAM,CAAC,GAAQ;IAC7B,OAAO;QACL,CAAC,YAAY,CAAC,EAAE,GAAG;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAQ;IAC7B,OAAO;QACL,CAAC,YAAY,CAAC,EAAE,GAAG;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAQ;IAC7B,OAAO;QACL,CAAC,YAAY,CAAC,EAAE,GAAG;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,GAAQ;IAC9B,OAAO;QACL,CAAC,aAAa,CAAC,EAAE,GAAG;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,eAAe,GAAG;IACtB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC;KAChC;IACD,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAC,kBAAkB,CAAC;KAClC;IACD,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAC,kBAAkB,CAAC;KAClC;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC;KACjC;IACD,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC;KAC/B;IACD,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC;KAC9B;IACD,OAAO,EAAE;QACP,KAAK,EAAE,SAAS;KACjB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAgB,EAAE,EAAE;IAC/C,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,MAAqC;IACjE,MAAM,GAAG,GAAa,EAAE,CAAC;IAEzB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAErB,GAAG,CAAC,IAAI,CAAC;;QAEH,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;SAC3B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,KAAK,GAAG,CAAC;SAC1C,IAAI,CAAC,OAAO,CAAC;MAChB,CAAC,CAAC;IAEN,GAAG,CAAC,IAAI,CAAC;;QAEH,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;SAC1B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,KAAK,GAAG,CAAC;SAC1C,IAAI,CAAC,QAAQ,CAAC;MACjB,CAAC,CAAC;IAEN,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1 +0,0 @@
1
- export declare function numberToBase(number: number, base?: Array<string>): string;
@@ -1,44 +0,0 @@
1
- const LETTERS_26 = [
2
- "a",
3
- "b",
4
- "c",
5
- "d",
6
- "e",
7
- "f",
8
- "g",
9
- "h",
10
- "i",
11
- "j",
12
- "k",
13
- "l",
14
- "m",
15
- "n",
16
- "o",
17
- "p",
18
- "q",
19
- "r",
20
- "s",
21
- "t",
22
- "u",
23
- "v",
24
- "w",
25
- "x",
26
- "y",
27
- "z",
28
- ];
29
- export function numberToBase(number, base = LETTERS_26) {
30
- if (number <= -1) {
31
- return "";
32
- }
33
- let result = [];
34
- // To make numbers 1 indexed
35
- number += 1;
36
- while (number >= base.length) {
37
- const index = number % base.length;
38
- number = Math.floor(number / base.length) - 1;
39
- result.push(base[index]);
40
- }
41
- result.push(base[number]);
42
- return result.reverse().join("");
43
- }
44
- //# sourceMappingURL=numberToBase.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"numberToBase.js","sourceRoot":"","sources":["../src/numberToBase.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG;IACjB,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;CACJ,CAAC;AAEF,MAAM,UAAU,YAAY,CAC1B,MAAc,EACd,OAAsB,UAAU;IAEhC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC;QACjB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,4BAA4B;IAC5B,MAAM,IAAI,CAAC,CAAC;IAEZ,OAAO,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACnC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1B,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACnC,CAAC"}
@@ -1,36 +0,0 @@
1
- import { ReactNode } from "react";
2
- import { Subscribe } from "./Emitter";
3
- export type Reducer<State, Context> = <Data extends any>({ state, context, data, }: {
4
- state: State;
5
- context: Context;
6
- data: Data;
7
- }) => {
8
- state: State;
9
- context: Context;
10
- };
11
- type StateMachineConfig<State, Transition, Context> = {
12
- states: {
13
- [state: string]: {
14
- on: {
15
- [transition: Transition]: Reducer<State, Context>;
16
- };
17
- };
18
- };
19
- context: Context;
20
- state: State;
21
- };
22
- type Send = <Transition, Data>(transition: Transition, data: Data) => void;
23
- type StateMachineContextType<State, Context> = {
24
- subscribe: Subscribe<{
25
- state: State;
26
- context: Context;
27
- }>;
28
- send: Send;
29
- };
30
- export declare function stateMachineContextFactory<State, Transition, Context>(stateMachineConfig: StateMachineConfig<State, Transition, Context>): {
31
- Provider: ({ children }: {
32
- children: ReactNode;
33
- }) => import("react/jsx-runtime").JSX.Element;
34
- useStateMachine: () => StateMachineContextType<State, Context>;
35
- };
36
- export {};
@@ -1,48 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import React, { useContext, useCallback, useMemo, useRef, } from "react";
3
- import { createEmitter } from "./Emitter";
4
- export function stateMachineContextFactory(stateMachineConfig) {
5
- const StateMachineContext = React.createContext({
6
- subscribe: () => {
7
- throw new Error("Not implemented");
8
- },
9
- send: (_) => {
10
- throw new Error("Not implemented");
11
- },
12
- });
13
- function Provider({ children }) {
14
- const stateMachineRef = useRef({
15
- state: stateMachineConfig.state,
16
- context: stateMachineConfig.context,
17
- });
18
- const emitterRef = useRef(createEmitter());
19
- const subscribe = useCallback((callback) => {
20
- const unsbuscribe = emitterRef.current.subscribe(callback);
21
- callback(stateMachineRef.current);
22
- return unsbuscribe;
23
- }, []);
24
- const send = useCallback((transition, data) => {
25
- const state = stateMachineRef.current.state;
26
- // @ts-ignore I don't know how to fix this
27
- const transitions = stateMachineConfig.states[state].on;
28
- const reducer = transitions[transition];
29
- if (!reducer) {
30
- // No transition available in the current state, so no update needed
31
- return;
32
- }
33
- const newState = reducer({
34
- ...stateMachineRef.current,
35
- data,
36
- });
37
- stateMachineRef.current = newState;
38
- emitterRef.current.emit(newState);
39
- }, []);
40
- const value = useMemo(() => ({ subscribe, send }), [subscribe, send]);
41
- return (_jsx(StateMachineContext.Provider, { value: value, children: children }));
42
- }
43
- function useStateMachine() {
44
- return useContext(StateMachineContext);
45
- }
46
- return { Provider, useStateMachine };
47
- }
48
- //# sourceMappingURL=stateMachineContextFactory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stateMachineContextFactory.js","sourceRoot":"","sources":["../src/stateMachineContextFactory.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EACZ,UAAU,EACV,WAAW,EAEX,OAAO,EACP,MAAM,GACP,MAAM,OAAO,CAAC;AACf,OAAO,EAAa,aAAa,EAAY,MAAM,WAAW,CAAC;AA8B/D,MAAM,UAAU,0BAA0B,CACxC,kBAAkE;IAElE,MAAM,mBAAmB,GAAG,KAAK,CAAC,aAAa,CAE7C;QACA,SAAS,EAAE,GAAG,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;KACF,CAAC,CAAC;IAOH,SAAS,QAAQ,CAAC,EAAE,QAAQ,EAA2B;QACrD,MAAM,eAAe,GAAG,MAAM,CAAoB;YAChD,KAAK,EAAE,kBAAkB,CAAC,KAAK;YAC/B,OAAO,EAAE,kBAAkB,CAAC,OAAO;SACpC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,MAAM,CACvB,aAAa,EAAsC,CACpD,CAAC;QAEF,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,QAAqC,EAAE,EAAE;YACtE,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC3D,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAElC,OAAO,WAAW,CAAC;QACrB,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,MAAM,IAAI,GAAG,WAAW,CACtB,CAA+B,UAAsB,EAAE,IAAU,EAAE,EAAE;YACnE,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC;YAC5C,0CAA0C;YAC1C,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACxD,MAAM,OAAO,GAA4B,WAAW,CAAC,UAAU,CAAC,CAAC;YAEjE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,oEAAoE;gBACpE,OAAO;YACT,CAAC;YAED,MAAM,QAAQ,GAAG,OAAO,CAAC;gBACvB,GAAG,eAAe,CAAC,OAAO;gBAC1B,IAAI;aACL,CAAC,CAAC;YAEH,eAAe,CAAC,OAAO,GAAG,QAAQ,CAAC;YACnC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC,EACD,EAAE,CACH,CAAC;QAEF,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QAEtE,OAAO,CACL,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACvC,QAAQ,GACoB,CAChC,CAAC;IACJ,CAAC;IAED,SAAS,eAAe;QACtB,OAAO,UAAU,CAAC,mBAAmB,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AACvC,CAAC"}