aidos-ui 3.0.0

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 (339) hide show
  1. package/.prettierrc +4 -0
  2. package/LICENSE +21 -0
  3. package/README.md +55 -0
  4. package/dist/Badge.d.ts +7 -0
  5. package/dist/Badge.js +22 -0
  6. package/dist/Badge.js.map +1 -0
  7. package/dist/BaseButton.d.ts +13 -0
  8. package/dist/BaseButton.js +22 -0
  9. package/dist/BaseButton.js.map +1 -0
  10. package/dist/BaseInput.d.ts +15 -0
  11. package/dist/BaseInput.js +14 -0
  12. package/dist/BaseInput.js.map +1 -0
  13. package/dist/BaseLink.d.ts +17 -0
  14. package/dist/BaseLink.js +28 -0
  15. package/dist/BaseLink.js.map +1 -0
  16. package/dist/BaseList.d.ts +6 -0
  17. package/dist/BaseList.js +14 -0
  18. package/dist/BaseList.js.map +1 -0
  19. package/dist/BaseListAddOn.d.ts +5 -0
  20. package/dist/BaseListAddOn.js +7 -0
  21. package/dist/BaseListAddOn.js.map +1 -0
  22. package/dist/BaseListItem.d.ts +27 -0
  23. package/dist/BaseListItem.js +26 -0
  24. package/dist/BaseListItem.js.map +1 -0
  25. package/dist/BaseView.d.ts +12 -0
  26. package/dist/BaseView.js +26 -0
  27. package/dist/BaseView.js.map +1 -0
  28. package/dist/Box.d.ts +5 -0
  29. package/dist/Box.js +6 -0
  30. package/dist/Box.js.map +1 -0
  31. package/dist/Button.d.ts +20 -0
  32. package/dist/Button.js +20 -0
  33. package/dist/Button.js.map +1 -0
  34. package/dist/Calendar.d.ts +18 -0
  35. package/dist/Calendar.js +57 -0
  36. package/dist/Calendar.js.map +1 -0
  37. package/dist/Card.d.ts +4 -0
  38. package/dist/Card.js +12 -0
  39. package/dist/Card.js.map +1 -0
  40. package/dist/Checkbox.d.ts +12 -0
  41. package/dist/Checkbox.js +32 -0
  42. package/dist/Checkbox.js.map +1 -0
  43. package/dist/Circle.d.ts +6 -0
  44. package/dist/Circle.js +12 -0
  45. package/dist/Circle.js.map +1 -0
  46. package/dist/Column.d.ts +6 -0
  47. package/dist/Column.js +7 -0
  48. package/dist/Column.js.map +1 -0
  49. package/dist/DarkMode.d.ts +13 -0
  50. package/dist/DarkMode.js +61 -0
  51. package/dist/DarkMode.js.map +1 -0
  52. package/dist/DateInput.d.ts +13 -0
  53. package/dist/DateInput.js +29 -0
  54. package/dist/DateInput.js.map +1 -0
  55. package/dist/DatePicker.d.ts +12 -0
  56. package/dist/DatePicker.js +34 -0
  57. package/dist/DatePicker.js.map +1 -0
  58. package/dist/DatetimeInput.d.ts +13 -0
  59. package/dist/DatetimeInput.js +31 -0
  60. package/dist/DatetimeInput.js.map +1 -0
  61. package/dist/DesignBook.d.ts +2 -0
  62. package/dist/DesignBook.js +55 -0
  63. package/dist/DesignBook.js.map +1 -0
  64. package/dist/Dialog.d.ts +17 -0
  65. package/dist/Dialog.js +86 -0
  66. package/dist/Dialog.js.map +1 -0
  67. package/dist/Dropdown.d.ts +10 -0
  68. package/dist/Dropdown.js +64 -0
  69. package/dist/Dropdown.js.map +1 -0
  70. package/dist/Emitter.d.ts +6 -0
  71. package/dist/Emitter.js +19 -0
  72. package/dist/Emitter.js.map +1 -0
  73. package/dist/FlexLayout.d.ts +11 -0
  74. package/dist/FlexLayout.js +18 -0
  75. package/dist/FlexLayout.js.map +1 -0
  76. package/dist/Icon.d.ts +12 -0
  77. package/dist/Icon.js +69 -0
  78. package/dist/Icon.js.map +1 -0
  79. package/dist/IconButton.d.ts +9 -0
  80. package/dist/IconButton.js +31 -0
  81. package/dist/IconButton.js.map +1 -0
  82. package/dist/IconLink.d.ts +9 -0
  83. package/dist/IconLink.js +31 -0
  84. package/dist/IconLink.js.map +1 -0
  85. package/dist/IconType.d.ts +1 -0
  86. package/dist/IconType.js +2 -0
  87. package/dist/IconType.js.map +1 -0
  88. package/dist/Interactable.d.ts +48 -0
  89. package/dist/Interactable.js +131 -0
  90. package/dist/Interactable.js.map +1 -0
  91. package/dist/Link.d.ts +20 -0
  92. package/dist/Link.js +22 -0
  93. package/dist/Link.js.map +1 -0
  94. package/dist/List.d.ts +11 -0
  95. package/dist/List.js +17 -0
  96. package/dist/List.js.map +1 -0
  97. package/dist/ListButtonItem.d.ts +15 -0
  98. package/dist/ListButtonItem.js +9 -0
  99. package/dist/ListButtonItem.js.map +1 -0
  100. package/dist/ListDivider.d.ts +2 -0
  101. package/dist/ListDivider.js +12 -0
  102. package/dist/ListDivider.js.map +1 -0
  103. package/dist/ListHeaderItem.d.ts +11 -0
  104. package/dist/ListHeaderItem.js +13 -0
  105. package/dist/ListHeaderItem.js.map +1 -0
  106. package/dist/ListItem.d.ts +10 -0
  107. package/dist/ListItem.js +7 -0
  108. package/dist/ListItem.js.map +1 -0
  109. package/dist/ListLinkItem.d.ts +17 -0
  110. package/dist/ListLinkItem.js +9 -0
  111. package/dist/ListLinkItem.js.map +1 -0
  112. package/dist/ListSpacer.d.ts +2 -0
  113. package/dist/ListSpacer.js +13 -0
  114. package/dist/ListSpacer.js.map +1 -0
  115. package/dist/OnVisible.d.ts +5 -0
  116. package/dist/OnVisible.js +28 -0
  117. package/dist/OnVisible.js.map +1 -0
  118. package/dist/Popover.d.ts +21 -0
  119. package/dist/Popover.js +88 -0
  120. package/dist/Popover.js.map +1 -0
  121. package/dist/ProgressBar.d.ts +8 -0
  122. package/dist/ProgressBar.js +42 -0
  123. package/dist/ProgressBar.js.map +1 -0
  124. package/dist/ProgressCircle.d.ts +6 -0
  125. package/dist/ProgressCircle.js +12 -0
  126. package/dist/ProgressCircle.js.map +1 -0
  127. package/dist/Providers.d.ts +9 -0
  128. package/dist/Providers.js +16 -0
  129. package/dist/Providers.js.map +1 -0
  130. package/dist/RangeInput.d.ts +14 -0
  131. package/dist/RangeInput.js +32 -0
  132. package/dist/RangeInput.js.map +1 -0
  133. package/dist/ResultOrError.d.ts +13 -0
  134. package/dist/ResultOrError.js +7 -0
  135. package/dist/ResultOrError.js.map +1 -0
  136. package/dist/RootView.d.ts +5 -0
  137. package/dist/RootView.js +35 -0
  138. package/dist/RootView.js.map +1 -0
  139. package/dist/Router.d.ts +2 -0
  140. package/dist/Router.js +37 -0
  141. package/dist/Router.js.map +1 -0
  142. package/dist/RouterState.d.ts +38 -0
  143. package/dist/RouterState.js +111 -0
  144. package/dist/RouterState.js.map +1 -0
  145. package/dist/Row.d.ts +6 -0
  146. package/dist/Row.js +7 -0
  147. package/dist/Row.js.map +1 -0
  148. package/dist/StackContext.d.ts +8 -0
  149. package/dist/StackContext.js +25 -0
  150. package/dist/StackContext.js.map +1 -0
  151. package/dist/StaticCheckbox.d.ts +17 -0
  152. package/dist/StaticCheckbox.js +48 -0
  153. package/dist/StaticCheckbox.js.map +1 -0
  154. package/dist/Storage.d.ts +12 -0
  155. package/dist/Storage.js +148 -0
  156. package/dist/Storage.js.map +1 -0
  157. package/dist/Stream.d.ts +9 -0
  158. package/dist/Stream.js +36 -0
  159. package/dist/Stream.js.map +1 -0
  160. package/dist/Sublist.d.ts +12 -0
  161. package/dist/Sublist.js +18 -0
  162. package/dist/Sublist.js.map +1 -0
  163. package/dist/SubmitIconInput.d.ts +9 -0
  164. package/dist/SubmitIconInput.js +25 -0
  165. package/dist/SubmitIconInput.js.map +1 -0
  166. package/dist/Tabs.d.ts +20 -0
  167. package/dist/Tabs.js +35 -0
  168. package/dist/Tabs.js.map +1 -0
  169. package/dist/Text.d.ts +25 -0
  170. package/dist/Text.js +50 -0
  171. package/dist/Text.js.map +1 -0
  172. package/dist/TextArea.d.ts +10 -0
  173. package/dist/TextArea.js +22 -0
  174. package/dist/TextArea.js.map +1 -0
  175. package/dist/TextInput.d.ts +14 -0
  176. package/dist/TextInput.js +52 -0
  177. package/dist/TextInput.js.map +1 -0
  178. package/dist/TextInputWithState.d.ts +10 -0
  179. package/dist/TextInputWithState.js +14 -0
  180. package/dist/TextInputWithState.js.map +1 -0
  181. package/dist/TextPairing.d.ts +21 -0
  182. package/dist/TextPairing.js +26 -0
  183. package/dist/TextPairing.js.map +1 -0
  184. package/dist/TimeInput.d.ts +15 -0
  185. package/dist/TimeInput.js +58 -0
  186. package/dist/TimeInput.js.map +1 -0
  187. package/dist/Tooltip.d.ts +11 -0
  188. package/dist/Tooltip.js +72 -0
  189. package/dist/Tooltip.js.map +1 -0
  190. package/dist/aria.d.ts +8 -0
  191. package/dist/aria.js +42 -0
  192. package/dist/aria.js.map +1 -0
  193. package/dist/guid.d.ts +1 -0
  194. package/dist/guid.js +7 -0
  195. package/dist/guid.js.map +1 -0
  196. package/dist/hash.d.ts +1 -0
  197. package/dist/hash.js +20 -0
  198. package/dist/hash.js.map +1 -0
  199. package/dist/index.d.ts +65 -0
  200. package/dist/index.js +66 -0
  201. package/dist/index.js.map +1 -0
  202. package/dist/jss.d.ts +110 -0
  203. package/dist/jss.js +438 -0
  204. package/dist/jss.js.map +1 -0
  205. package/dist/numberToBase.d.ts +1 -0
  206. package/dist/numberToBase.js +44 -0
  207. package/dist/numberToBase.js.map +1 -0
  208. package/dist/stateMachineContextFactory.d.ts +36 -0
  209. package/dist/stateMachineContextFactory.js +48 -0
  210. package/dist/stateMachineContextFactory.js.map +1 -0
  211. package/dist/useCookie.d.ts +9 -0
  212. package/dist/useCookie.js +65 -0
  213. package/dist/useCookie.js.map +1 -0
  214. package/dist/useKeyboard.d.ts +8 -0
  215. package/dist/useKeyboard.js +26 -0
  216. package/dist/useKeyboard.js.map +1 -0
  217. package/dist/useNavigation.d.ts +5 -0
  218. package/dist/useNavigation.js +79 -0
  219. package/dist/useNavigation.js.map +1 -0
  220. package/dist/usePromise.d.ts +1 -0
  221. package/dist/usePromise.js +12 -0
  222. package/dist/usePromise.js.map +1 -0
  223. package/dist/useRefEffect.d.ts +1 -0
  224. package/dist/useRefEffect.js +15 -0
  225. package/dist/useRefEffect.js.map +1 -0
  226. package/next-env.d.ts +5 -0
  227. package/next.config.js +21 -0
  228. package/package.json +40 -0
  229. package/scripts/publish.js +27 -0
  230. package/src/Badge.tsx +36 -0
  231. package/src/BaseButton.tsx +58 -0
  232. package/src/BaseInput.tsx +57 -0
  233. package/src/BaseLink.tsx +77 -0
  234. package/src/BaseList.tsx +29 -0
  235. package/src/BaseListAddOn.tsx +10 -0
  236. package/src/BaseListItem.tsx +117 -0
  237. package/src/BaseView.tsx +57 -0
  238. package/src/Box.tsx +20 -0
  239. package/src/Button.tsx +84 -0
  240. package/src/Calendar.tsx +125 -0
  241. package/src/Card.tsx +17 -0
  242. package/src/Checkbox.tsx +63 -0
  243. package/src/Circle.tsx +24 -0
  244. package/src/Column.tsx +12 -0
  245. package/src/DarkMode.tsx +99 -0
  246. package/src/DateInput.tsx +63 -0
  247. package/src/DatePicker.tsx +67 -0
  248. package/src/DatetimeInput.tsx +71 -0
  249. package/src/DesignBook.tsx +697 -0
  250. package/src/Dialog.tsx +144 -0
  251. package/src/Dropdown.tsx +129 -0
  252. package/src/Emitter.ts +26 -0
  253. package/src/FlexLayout.tsx +53 -0
  254. package/src/Icon.tsx +96 -0
  255. package/src/IconButton.tsx +66 -0
  256. package/src/IconLink.tsx +58 -0
  257. package/src/IconType.ts +787 -0
  258. package/src/Interactable.tsx +159 -0
  259. package/src/Link.tsx +86 -0
  260. package/src/List.tsx +41 -0
  261. package/src/ListButtonItem.tsx +69 -0
  262. package/src/ListDivider.tsx +13 -0
  263. package/src/ListHeaderItem.tsx +45 -0
  264. package/src/ListItem.tsx +27 -0
  265. package/src/ListLinkItem.tsx +76 -0
  266. package/src/ListSpacer.tsx +14 -0
  267. package/src/OnVisible.tsx +42 -0
  268. package/src/Popover.tsx +141 -0
  269. package/src/ProgressBar.tsx +63 -0
  270. package/src/ProgressCircle.tsx +38 -0
  271. package/src/Providers.tsx +33 -0
  272. package/src/RangeInput.tsx +82 -0
  273. package/src/ResultOrError.ts +15 -0
  274. package/src/RootView.tsx +55 -0
  275. package/src/Router.tsx +62 -0
  276. package/src/RouterState.tsx +154 -0
  277. package/src/Row.tsx +12 -0
  278. package/src/StackContext.tsx +52 -0
  279. package/src/StaticCheckbox.tsx +74 -0
  280. package/src/Storage.tsx +200 -0
  281. package/src/Stream.tsx +50 -0
  282. package/src/Sublist.tsx +62 -0
  283. package/src/SubmitIconInput.tsx +45 -0
  284. package/src/Tabs.tsx +103 -0
  285. package/src/Text.tsx +102 -0
  286. package/src/TextArea.tsx +45 -0
  287. package/src/TextInput.tsx +111 -0
  288. package/src/TextInputWithState.tsx +35 -0
  289. package/src/TextPairing.tsx +115 -0
  290. package/src/TimeInput.tsx +109 -0
  291. package/src/Tooltip.tsx +108 -0
  292. package/src/aria.ts +72 -0
  293. package/src/examples/ExampleDialog.tsx +28 -0
  294. package/src/guid.ts +7 -0
  295. package/src/hash.ts +21 -0
  296. package/src/index.ts +65 -0
  297. package/src/jss.tsx +607 -0
  298. package/src/numberToBase.ts +52 -0
  299. package/src/pages/Badge.mdx +30 -0
  300. package/src/pages/Button.mdx +57 -0
  301. package/src/pages/Calendar.mdx +60 -0
  302. package/src/pages/Checkbox.mdx +56 -0
  303. package/src/pages/Dialog.mdx +32 -0
  304. package/src/pages/FlexLayout.mdx +77 -0
  305. package/src/pages/Hashing.mdx +20 -0
  306. package/src/pages/Icon.mdx +63 -0
  307. package/src/pages/IconButton.mdx +144 -0
  308. package/src/pages/Link.mdx +57 -0
  309. package/src/pages/List.mdx +292 -0
  310. package/src/pages/ListHeader.mdx +94 -0
  311. package/src/pages/Popover.mdx +101 -0
  312. package/src/pages/ProgressBar.mdx +20 -0
  313. package/src/pages/ProgressCircle.mdx +35 -0
  314. package/src/pages/RangeInput.mdx +109 -0
  315. package/src/pages/Tabs.mdx +168 -0
  316. package/src/pages/Text.mdx +133 -0
  317. package/src/pages/TextInput.mdx +110 -0
  318. package/src/pages/TextPairing.mdx +155 -0
  319. package/src/pages/TimeInput.mdx +73 -0
  320. package/src/pages/Tooltip.mdx +28 -0
  321. package/src/pages/_app.tsx +561 -0
  322. package/src/pages/_document.tsx +30 -0
  323. package/src/pages/css-in-js.mdx +127 -0
  324. package/src/pages/index.mdx +58 -0
  325. package/src/pages/navigation.mdx +56 -0
  326. package/src/pages/prism.css +3 -0
  327. package/src/pages/useCookie.mdx +15 -0
  328. package/src/pages/useKeyboard.mdx +20 -0
  329. package/src/pages/useNavigation.mdx +30 -0
  330. package/src/pages/usePromise.mdx +15 -0
  331. package/src/pages/useRefEffect.mdx +49 -0
  332. package/src/stateMachineContextFactory.tsx +111 -0
  333. package/src/useCookie.tsx +89 -0
  334. package/src/useKeyboard.tsx +43 -0
  335. package/src/useNavigation.tsx +89 -0
  336. package/src/usePromise.tsx +18 -0
  337. package/src/useRefEffect.tsx +18 -0
  338. package/tsconfig.build.json +23 -0
  339. package/tsconfig.json +23 -0
package/dist/Link.js ADDED
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { BaseLink } from "./BaseLink";
4
+ import { Text } from "./Text";
5
+ import { Row } from "./Row";
6
+ import { Icon } from "./Icon";
7
+ import { getGlyphColor } from "./Interactable";
8
+ import { cssVar } from "./jss";
9
+ export const Link = React.forwardRef(({ label, color, bare, disabled, icon, iconSize = "medium", iconPosition = "left", align = "center", gap = "small", justify = "center", jsStyle, size = "medium", ...otherProps }, ref) => {
10
+ return (_jsx(BaseLink, { ...otherProps, bare: bare, ref: ref, color: color, disabled: disabled, jsStyle: [
11
+ {
12
+ borderRadius: "var(--border-radius-m)",
13
+ justifyContent: "center",
14
+ userSelect: "none",
15
+ padding: cssVar("--spacing-m"),
16
+ display: "inline-flex",
17
+ textDecoration: "none",
18
+ },
19
+ jsStyle,
20
+ ], children: _jsxs(Row, { grow: true, align: align, gap: gap, justify: justify, children: [icon && iconPosition === "left" && (_jsx(Icon, { icon: icon, size: iconSize, color: getGlyphColor(color, disabled, bare) })), _jsx(Text, { size: size, color: getGlyphColor(color, disabled, bare), children: label }), icon && iconPosition === "right" && (_jsx(Icon, { icon: icon, size: iconSize, color: getGlyphColor(color, disabled, bare) }))] }) }));
21
+ });
22
+ //# sourceMappingURL=Link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Link.js","sourceRoot":"","sources":["../src/Link.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAqB,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAA6B,MAAM,EAAE,MAAM,OAAO,CAAC;AAgB1D,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAClC,CACE,EACE,KAAK,EACL,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,QAAQ,GAAG,QAAQ,EACnB,YAAY,GAAG,MAAM,EACrB,KAAK,GAAG,QAAQ,EAChB,GAAG,GAAG,OAAO,EACb,OAAO,GAAG,QAAQ,EAClB,OAAO,EACP,IAAI,GAAG,QAAQ,EACf,GAAG,UAAU,EACH,EACZ,GAAkC,EAClC,EAAE;IACF,OAAO,CACL,KAAC,QAAQ,OACH,UAAU,EACd,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,wBAAwB;gBACtC,cAAc,EAAE,QAAQ;gBACxB,UAAU,EAAE,MAAM;gBAClB,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC;gBAC9B,OAAO,EAAE,aAAa;gBACtB,cAAc,EAAE,MAAM;aACvB;YACD,OAAO;SACR,YAED,MAAC,GAAG,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,aACtD,IAAI,IAAI,YAAY,KAAK,MAAM,IAAI,CAClC,KAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,GAC3C,CACH,EACD,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,YAC1D,KAAK,GACD,EACN,IAAI,IAAI,YAAY,KAAK,OAAO,IAAI,CACnC,KAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,GAC3C,CACH,IACG,GACG,CACZ,CAAC;AACJ,CAAC,CACF,CAAC"}
package/dist/List.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import { BaseListProps } from "./BaseList";
3
+ interface ListProps extends BaseListProps {
4
+ ariaLabel: string;
5
+ bare?: boolean;
6
+ autofocus?: boolean;
7
+ role?: undefined;
8
+ navigation?: boolean;
9
+ }
10
+ export declare function List({ ariaLabel, jsStyle, autofocus, navigation, bare, ...otherProps }: ListProps): JSX.Element;
11
+ export {};
package/dist/List.js ADDED
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { BaseList } from "./BaseList";
3
+ import { useNavigation } from "./useNavigation";
4
+ import { cssVar } from "./jss";
5
+ export function List({ ariaLabel, jsStyle, autofocus = false, navigation = true, bare, ...otherProps }) {
6
+ const rootRef = useNavigation({ autofocus, enabled: navigation });
7
+ return (_jsx(BaseList, { role: "grid", "aria-label": ariaLabel, ref: rootRef, jsStyle: [
8
+ { overflow: "hidden" },
9
+ !bare && {
10
+ border: `1px solid ${cssVar("--divider")}`,
11
+ borderRadius: cssVar("--border-radius-l"),
12
+ backgroundColor: cssVar("--overlay-background"),
13
+ },
14
+ jsStyle,
15
+ ], ...otherProps }));
16
+ }
17
+ //# sourceMappingURL=List.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"List.js","sourceRoot":"","sources":["../src/List.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAU/B,MAAM,UAAU,IAAI,CAAC,EACnB,SAAS,EACT,OAAO,EACP,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,IAAI,EACjB,IAAI,EACJ,GAAG,UAAU,EACH;IACV,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IAElE,OAAO,CACL,KAAC,QAAQ,IACP,IAAI,EAAC,MAAM,gBACC,SAAS,EACrB,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE;YACP,EAAE,QAAQ,EAAE,QAAQ,EAAE;YACtB,CAAC,IAAI,IAAI;gBACP,MAAM,EAAE,aAAa,MAAM,CAAC,WAAW,CAAC,EAAE;gBAC1C,YAAY,EAAE,MAAM,CAAC,mBAAmB,CAAC;gBACzC,eAAe,EAAE,MAAM,CAAC,sBAAsB,CAAC;aAChD;YACD,OAAO;SACR,KACG,UAAU,GACd,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ import React from "react";
2
+ import { BaseListItemProps } from "./BaseListItem";
3
+ import { InteractableColor } from "./Interactable";
4
+ interface ListButtonItemProps extends BaseListItemProps {
5
+ color: InteractableColor;
6
+ onClick: () => void;
7
+ headline: string;
8
+ body?: string;
9
+ disabled?: boolean;
10
+ selected?: boolean;
11
+ bare?: boolean;
12
+ children?: void;
13
+ }
14
+ export declare const ListButtonItem: React.ForwardRefExoticComponent<Pick<ListButtonItemProps, "padding" | "style" | "body" | "slot" | "title" | "children" | "hidden" | "color" | "relative" | "justify" | "disabled" | "direction" | "translate" | "gap" | "dangerouslySetInnerHTML" | "grow" | "shrink" | "jsStyle" | "tag" | "className" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bare" | "selected" | "align" | "headline" | "headlineColor" | "headlineSize" | "headlineAddOn" | "bodyColor" | "bodySize" | "addOn" | "addOnPosition" | "headlineBold" | "withDivider" | "outerAddOn"> & React.RefAttributes<HTMLButtonElement>>;
15
+ export {};
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { BaseListItem } from "./BaseListItem";
4
+ import { getGlyphColor, getInteractableListItemJSStyles, } from "./Interactable";
5
+ import { BaseButton } from "./BaseButton";
6
+ export const ListButtonItem = React.forwardRef(({ onClick, color = "secondary", disabled = false, padding = "medium", jsStyle, gap, selected, bare, ...otherProps }, ref) => {
7
+ return (_jsx(BaseListItem, { withDivider: !bare, disabled: disabled, padding: "none", gap: gap, headlineColor: getGlyphColor(color, disabled, true), bodyColor: getGlyphColor(color, disabled, true), selected: selected, "aria-selected": selected, bare: bare, ...otherProps, jsStyle: jsStyle, children: ({ content }) => (_jsx(BaseButton, { padding: padding, disabled: disabled, animateInteraction: false, bare: true, color: bare ? "secondary" : color, ref: ref, jsStyle: getInteractableListItemJSStyles({ bare, selected }), onClick: onClick, children: content })) }));
8
+ });
9
+ //# sourceMappingURL=ListButtonItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListButtonItem.js","sourceRoot":"","sources":["../src/ListButtonItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAEL,aAAa,EACb,+BAA+B,GAChC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAc1C,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAC5C,CACE,EACE,OAAO,EACP,KAAK,GAAG,WAAW,EACnB,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,QAAQ,EAClB,OAAO,EACP,GAAG,EACH,QAAQ,EACR,IAAI,EACJ,GAAG,UAAU,EACO,EACtB,GAAkC,EAClC,EAAE;IACF,OAAO,CACL,KAAC,YAAY,IACX,WAAW,EAAE,CAAC,IAAI,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAC,MAAM,EACd,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EACnD,SAAS,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC/C,QAAQ,EAAE,QAAQ,mBACH,QAAQ,EACvB,IAAI,EAAE,IAAI,KACN,UAAU,EACd,OAAO,EAAE,OAAO,YAEf,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAChB,KAAC,UAAU,IACT,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,KAAK,EACzB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EACjC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,+BAA+B,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAC5D,OAAO,EAAE,OAAO,YAEf,OAAO,GACG,CACd,GACY,CAChB,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare function ListDivider(): JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { BaseView } from "./BaseView";
3
+ const jsStyles = {
4
+ root: {
5
+ width: "100%",
6
+ borderBottom: "1px solid var(--divider)",
7
+ },
8
+ };
9
+ export function ListDivider() {
10
+ return _jsx(BaseView, { jsStyle: jsStyles.root });
11
+ }
12
+ //# sourceMappingURL=ListDivider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListDivider.js","sourceRoot":"","sources":["../src/ListDivider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,0BAA0B;KACzC;CACF,CAAC;AAEF,MAAM,UAAU,WAAW;IACzB,OAAO,KAAC,QAAQ,IAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAI,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { ReactNode } from "react";
2
+ import { Position } from "./jss";
3
+ export declare function ListHeaderItem({ bare, highlight, headline, body, withDivider, addOn, addOnPosition, }: {
4
+ bare?: boolean;
5
+ highlight?: boolean;
6
+ headline: string;
7
+ body?: string;
8
+ withDivider?: boolean;
9
+ addOn?: ReactNode;
10
+ addOnPosition?: Position;
11
+ }): JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { BaseListItem } from "./BaseListItem";
3
+ import { cssVar } from "./jss";
4
+ export function ListHeaderItem({ bare, highlight, headline, body, withDivider, addOn, addOnPosition, }) {
5
+ return (_jsx(BaseListItem, { bare: bare, headline: headline, headlineColor: highlight ? (bare ? "highlight" : "light") : "primary", headlineBold: true, body: body, addOn: addOn, addOnPosition: addOnPosition, withDivider: bare ? false : withDivider, jsStyle: bare
6
+ ? null
7
+ : {
8
+ backgroundColor: highlight
9
+ ? cssVar("--highlight")
10
+ : cssVar("--secondary-background"),
11
+ }, children: ({ content }) => content }));
12
+ }
13
+ //# sourceMappingURL=ListHeaderItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListHeaderItem.js","sourceRoot":"","sources":["../src/ListHeaderItem.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAY,MAAM,EAAE,MAAM,OAAO,CAAC;AAEzC,MAAM,UAAU,cAAc,CAAC,EAC7B,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,WAAW,EACX,KAAK,EACL,aAAa,GASd;IACC,OAAO,CACL,KAAC,YAAY,IACX,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EACrE,YAAY,EAAE,IAAI,EAClB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,EACvC,OAAO,EACL,IAAI;YACF,CAAC,CAAC,IAAI;YACN,CAAC,CAAC;gBACE,eAAe,EAAE,SAAS;oBACxB,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;oBACvB,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC;aACrC,YAGN,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,GACZ,CAChB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ import { BaseListItemProps } from "./BaseListItem";
3
+ interface ListItemProps extends BaseListItemProps {
4
+ headline: string;
5
+ body?: string;
6
+ bare?: boolean;
7
+ children?: void;
8
+ }
9
+ export declare const ListItem: React.ForwardRefExoticComponent<Pick<ListItemProps, "padding" | "style" | "body" | "slot" | "title" | "children" | "hidden" | "color" | "relative" | "justify" | "disabled" | "direction" | "translate" | "gap" | "dangerouslySetInnerHTML" | "grow" | "shrink" | "jsStyle" | "tag" | "className" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bare" | "selected" | "align" | "headline" | "headlineColor" | "headlineSize" | "headlineAddOn" | "bodyColor" | "bodySize" | "addOn" | "addOnPosition" | "headlineBold" | "withDivider" | "outerAddOn"> & React.RefAttributes<HTMLLIElement>>;
10
+ export {};
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { BaseListItem } from "./BaseListItem";
4
+ export const ListItem = React.forwardRef((props, ref) => {
5
+ return (_jsx(BaseListItem, { withDivider: !props.bare, ...props, jsStyle: props.jsStyle, ref: ref, children: ({ content }) => content }));
6
+ });
7
+ //# sourceMappingURL=ListItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../src/ListItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAC;AAWjE,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CACtC,CAAC,KAAoB,EAAE,GAA8B,EAAE,EAAE;IACvD,OAAO,CACL,KAAC,YAAY,IACX,WAAW,EAAE,CAAC,KAAK,CAAC,IAAI,KACpB,KAAK,EACT,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,GAAG,EAAE,GAAG,YAEP,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,GACZ,CAChB,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ import { BaseListItemProps } from "./BaseListItem";
3
+ import { InteractableColor } from "./Interactable";
4
+ interface ListLinkItemProps extends BaseListItemProps {
5
+ color?: InteractableColor;
6
+ children?: void;
7
+ onClick?: () => void;
8
+ href: string;
9
+ headline: string;
10
+ body?: string;
11
+ disabled?: boolean;
12
+ selected?: boolean;
13
+ bare?: boolean;
14
+ target?: string;
15
+ }
16
+ export declare const ListLinkItem: React.ForwardRefExoticComponent<Pick<ListLinkItemProps, "padding" | "style" | "body" | "slot" | "title" | "children" | "hidden" | "color" | "relative" | "justify" | "disabled" | "direction" | "translate" | "gap" | "dangerouslySetInnerHTML" | "grow" | "shrink" | "jsStyle" | "tag" | "className" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "nonce" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onResize" | "onResizeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "bare" | "selected" | "align" | "href" | "target" | "headline" | "headlineColor" | "headlineSize" | "headlineAddOn" | "bodyColor" | "bodySize" | "addOn" | "addOnPosition" | "headlineBold" | "withDivider" | "outerAddOn"> & React.RefAttributes<HTMLAnchorElement>>;
17
+ export {};
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { BaseListItem } from "./BaseListItem";
4
+ import { getGlyphColor, getInteractableListItemJSStyles, } from "./Interactable";
5
+ import { BaseLink } from "./BaseLink";
6
+ export const ListLinkItem = React.forwardRef(({ onClick, href, disabled = false, padding = "medium", jsStyle, gap, selected, bare, color = "secondary", target, ...otherProps }, ref) => {
7
+ return (_jsx(BaseListItem, { withDivider: !bare, disabled: disabled, "aria-selected": selected, padding: "none", gap: gap, headlineColor: getGlyphColor(color, disabled, true), bodyColor: getGlyphColor(color, disabled, true), selected: selected, bare: bare, ...otherProps, jsStyle: jsStyle, children: ({ content }) => (_jsx(BaseLink, { target: target, padding: padding, "aria-current": selected ? "page" : undefined, disabled: disabled, animateInteraction: false, bare: true, color: color, href: href, ref: ref, jsStyle: getInteractableListItemJSStyles({ bare, selected }), onClick: onClick, children: content })) }));
8
+ });
9
+ //# sourceMappingURL=ListLinkItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListLinkItem.js","sourceRoot":"","sources":["../src/ListLinkItem.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAqB,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAEL,aAAa,EACb,+BAA+B,GAChC,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAgBtC,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAC1C,CACE,EACE,OAAO,EACP,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,QAAQ,EAClB,OAAO,EACP,GAAG,EACH,QAAQ,EACR,IAAI,EACJ,KAAK,GAAG,WAAW,EACnB,MAAM,EACN,GAAG,UAAU,EACK,EACpB,GAAkC,EAClC,EAAE;IACF,OAAO,CACL,KAAC,YAAY,IACX,WAAW,EAAE,CAAC,IAAI,EAClB,QAAQ,EAAE,QAAQ,mBACH,QAAQ,EACvB,OAAO,EAAC,MAAM,EACd,GAAG,EAAE,GAAG,EACR,aAAa,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EACnD,SAAS,EAAE,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC/C,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,KACN,UAAU,EACd,OAAO,EAAE,OAAO,YAEf,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAChB,KAAC,QAAQ,IACP,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,kBACF,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC3C,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,KAAK,EACzB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,+BAA+B,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAC5D,OAAO,EAAE,OAAO,YAEf,OAAO,GACC,CACZ,GACY,CAChB,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare function ListSpacer(): JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { BaseView } from "./BaseView";
3
+ const jsStyles = {
4
+ root: {
5
+ height: "var(--spacing-xl)",
6
+ backgroundColor: "var(--secondary-background)",
7
+ width: "100%",
8
+ },
9
+ };
10
+ export function ListSpacer() {
11
+ return _jsx(BaseView, { jsStyle: jsStyles.root });
12
+ }
13
+ //# sourceMappingURL=ListSpacer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListSpacer.js","sourceRoot":"","sources":["../src/ListSpacer.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE;QACJ,MAAM,EAAE,mBAAmB;QAC3B,eAAe,EAAE,6BAA6B;QAC9C,KAAK,EAAE,MAAM;KACd;CACF,CAAC;AAEF,MAAM,UAAU,UAAU;IACxB,OAAO,KAAC,QAAQ,IAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAI,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React, { ReactElement } from "react";
2
+ export declare function OnVisible({ children, onVisible, }: {
3
+ children: (refCallback: React.RefCallback<HTMLElement>) => ReactElement;
4
+ onVisible: () => void;
5
+ }): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
@@ -0,0 +1,28 @@
1
+ import { useRef, useCallback } from "react";
2
+ export function OnVisible({ children, onVisible, }) {
3
+ const intersectionObserverRef = useRef(null);
4
+ const refCallback = useCallback((element) => {
5
+ if (element == null) {
6
+ return;
7
+ }
8
+ const intersectionObserver = new IntersectionObserver((entries) => {
9
+ entries.forEach((entry) => {
10
+ if (entry.isIntersecting || entry.intersectionRatio > 0) {
11
+ onVisible();
12
+ }
13
+ });
14
+ }, {
15
+ root: null,
16
+ rootMargin: "0px",
17
+ });
18
+ intersectionObserverRef.current = intersectionObserver;
19
+ intersectionObserver.observe(element);
20
+ return () => {
21
+ intersectionObserver.unobserve(element);
22
+ intersectionObserverRef.current = null;
23
+ };
24
+ // eslint-disable-next-line
25
+ }, []);
26
+ return children(refCallback);
27
+ }
28
+ //# sourceMappingURL=OnVisible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnVisible.js","sourceRoot":"","sources":["../src/OnVisible.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,MAAM,EAAE,WAAW,EAAgB,MAAM,OAAO,CAAC;AAEjE,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,SAAS,GAIV;IACC,MAAM,uBAAuB,GAAG,MAAM,CAA8B,IAAI,CAAC,CAAC;IAE1E,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE;QAC1C,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,OAAO;SACR;QAED,MAAM,oBAAoB,GAAG,IAAI,oBAAoB,CACnD,CAAC,OAAO,EAAE,EAAE;YACV,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACxB,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,iBAAiB,GAAG,CAAC,EAAE;oBACvD,SAAS,EAAE,CAAC;iBACb;YACH,CAAC,CAAC,CAAC;QACL,CAAC,EACD;YACE,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,KAAK;SAClB,CACF,CAAC;QAEF,uBAAuB,CAAC,OAAO,GAAG,oBAAoB,CAAC;QACvD,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEtC,OAAO,GAAG,EAAE;YACV,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACxC,uBAAuB,CAAC,OAAO,GAAG,IAAI,CAAC;QACzC,CAAC,CAAC;QACF,2BAA2B;IAC7B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,21 @@
1
+ /// <reference types="react" />
2
+ import { JSStyle } from "./jss";
3
+ export declare function Popover({ children, close }: {
4
+ children: any;
5
+ close: any;
6
+ }): JSX.Element;
7
+ interface PopoverTriggerProps<Input> {
8
+ PopoverComponent: (props: {
9
+ close: () => void;
10
+ } & Input) => JSX.Element;
11
+ jsStyle?: JSStyle;
12
+ className?: undefined;
13
+ grow?: boolean;
14
+ shrink?: boolean;
15
+ tag?: keyof HTMLElementTagNameMap;
16
+ children: (props: {
17
+ toggle: (input: Input) => void;
18
+ }) => JSX.Element;
19
+ }
20
+ export declare function PopoverTrigger<Input>({ PopoverComponent, jsStyle, grow, shrink, tag, children, }: PopoverTriggerProps<Input>): JSX.Element;
21
+ export {};
@@ -0,0 +1,88 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useRef, useState } from "react";
3
+ import { queryFocusables } from "./aria";
4
+ import { BaseView } from "./BaseView";
5
+ import { useRefEffect } from "./useRefEffect";
6
+ import { jss } from "./jss";
7
+ const jsStyles = {
8
+ popover: {
9
+ padding: 0,
10
+ zIndex: 1,
11
+ backgroundColor: "var(--primary-background)",
12
+ borderRadius: "var(--border-radius-m)",
13
+ border: "1px solid var(--divider)",
14
+ overflow: "hidden",
15
+ },
16
+ };
17
+ export function Popover({ children, close }) {
18
+ const activeElementRef = useRef(null);
19
+ const focusTrapRoot = useRefEffect((root) => {
20
+ activeElementRef.current = document.activeElement;
21
+ const [element] = queryFocusables(root);
22
+ element ? element.focus() : root.focus();
23
+ const keydown = (e) => {
24
+ if (e.key === "Escape") {
25
+ close();
26
+ }
27
+ else if (e.key === "Tab") {
28
+ const focusables = queryFocusables(root).filter((element) => element.tabIndex !== -1);
29
+ if (focusables.length === 0) {
30
+ e.stopPropagation();
31
+ e.preventDefault();
32
+ }
33
+ const focusedIndex = focusables.findIndex((x) => x === document.activeElement);
34
+ if (focusables.length === 0) {
35
+ e.stopPropagation();
36
+ e.preventDefault();
37
+ }
38
+ else if (focusedIndex === focusables.length - 1) {
39
+ // Cycle back to the first element
40
+ focusables[0].focus();
41
+ e.stopPropagation();
42
+ e.preventDefault();
43
+ }
44
+ else {
45
+ // Just do the usual thing
46
+ }
47
+ }
48
+ };
49
+ const click = () => {
50
+ close();
51
+ };
52
+ // This is needed so that the trigger click is not captured immediatly, which would close the popover as it opens
53
+ setTimeout(() => {
54
+ window.addEventListener("keydown", keydown);
55
+ window.addEventListener("click", click);
56
+ }, 0);
57
+ return () => {
58
+ activeElementRef.current && activeElementRef.current.focus();
59
+ window.removeEventListener("keydown", keydown);
60
+ window.removeEventListener("click", click);
61
+ };
62
+ });
63
+ return _jsx(BaseView, { ref: focusTrapRoot, children: children });
64
+ }
65
+ export function PopoverTrigger({ PopoverComponent, jsStyle, grow, shrink, tag, children, }) {
66
+ const [popover, setPopover] = useState(null);
67
+ const dialogRef = useRef(null);
68
+ const toggle = (input) => {
69
+ if (popover == null) {
70
+ dialogRef && dialogRef.current.show();
71
+ setPopover(_jsx(PopoverComponent, { ...input, close: () => {
72
+ dialogRef && dialogRef.current.close();
73
+ } }));
74
+ }
75
+ else {
76
+ dialogRef && dialogRef.current.close();
77
+ }
78
+ };
79
+ return (_jsxs(BaseView, { grow: grow, shrink: shrink, tag: tag, relative: true, jsStyle: [jsStyle, { position: "relative", display: "inline-block" }], children: [children({ toggle }), _jsx("dialog", { ref: (ref) => {
80
+ dialogRef.current = ref;
81
+ }, className: jss(jsStyles.popover), onClose: () => {
82
+ setPopover(null);
83
+ }, onClick: (e) => {
84
+ e.preventDefault();
85
+ e.stopPropagation();
86
+ }, children: popover })] }));
87
+ }
88
+ //# sourceMappingURL=Popover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.js","sourceRoot":"","sources":["../src/Popover.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { Color, Size, JSStyle } from "./jss";
3
+ export declare function ProgressBar({ color, progress, size, jsStyle, }: {
4
+ progress: number;
5
+ color: Color;
6
+ size: Size;
7
+ jsStyle?: JSStyle;
8
+ }): JSX.Element;
@@ -0,0 +1,42 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { BaseView } from "./BaseView";
3
+ import { getBackground } from "./jss";
4
+ const jsStyles = {
5
+ root: {
6
+ width: "100%",
7
+ display: "flex",
8
+ position: "relative",
9
+ backgroundColor: "var(--primary-background)",
10
+ borderRadius: "var(--border-radius-s)",
11
+ border: "1px solid var(--divider)",
12
+ overflow: "hidden",
13
+ },
14
+ fill: {
15
+ borderRadius: "var(--border-radius-s)",
16
+ position: "absolute",
17
+ transformOrigin: "center left",
18
+ top: 0,
19
+ bottom: 0,
20
+ left: 0,
21
+ right: 0,
22
+ },
23
+ };
24
+ const sizes = {
25
+ xsmall: 4,
26
+ small: 8,
27
+ medium: 12,
28
+ large: 16,
29
+ xlarge: 20,
30
+ };
31
+ export function ProgressBar({ color, progress, size, jsStyle, }) {
32
+ return (_jsx(BaseView, { jsStyle: [
33
+ jsStyles.root,
34
+ {
35
+ height: sizes[size],
36
+ },
37
+ jsStyle,
38
+ ], children: _jsx(BaseView, { jsStyle: [jsStyles.fill, getBackground(color)], style: {
39
+ transform: `scaleX(${progress > 1 ? 1 : progress})`,
40
+ } }) }));
41
+ }
42
+ //# sourceMappingURL=ProgressBar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressBar.js","sourceRoot":"","sources":["../src/ProgressBar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAwB,aAAa,EAAE,MAAM,OAAO,CAAC;AAE5D,MAAM,QAAQ,GAA+B;IAC3C,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,2BAA2B;QAC5C,YAAY,EAAE,wBAAwB;QACtC,MAAM,EAAE,0BAA0B;QAClC,QAAQ,EAAE,QAAQ;KACnB;IACD,IAAI,EAAE;QACJ,YAAY,EAAE,wBAAwB;QACtC,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,aAAa;QAC9B,GAAG,EAAE,CAAC;QACN,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;KACT;CACF,CAAC;AAEF,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,EAAE;CACX,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,OAAO,GAMR;IACC,OAAO,CACL,KAAC,QAAQ,IACP,OAAO,EAAE;YACP,QAAQ,CAAC,IAAI;YACb;gBACE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;aACpB;YACD,OAAO;SACR,YAED,KAAC,QAAQ,IACP,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,EAC9C,KAAK,EAAE;gBACL,SAAS,EAAE,UAAU,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG;aACpD,GACD,GACO,CACZ,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export declare function ProgressCircle({ progress, stroke, outerRadius, }: {
3
+ progress: number;
4
+ stroke?: number;
5
+ outerRadius: number;
6
+ }): JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cssVar, jss } from "./jss";
3
+ export function ProgressCircle({ progress, stroke = 4, outerRadius, }) {
4
+ const circumference = outerRadius * 2 * Math.PI;
5
+ const strokeDashoffset = circumference - progress * circumference;
6
+ return (_jsx("svg", { className: jss({
7
+ backgroundColor: cssVar("--secondary-background"),
8
+ transform: "rotate(-90deg)",
9
+ borderRadius: "50%",
10
+ }), width: (outerRadius + stroke) * 2, height: (outerRadius + stroke) * 2, children: _jsx("circle", { stroke: "var(--highlight)", fill: "transparent", strokeWidth: stroke, strokeDasharray: `${circumference} ${circumference}`, style: { strokeDashoffset }, r: outerRadius, cx: outerRadius + stroke, cy: outerRadius + stroke }) }));
11
+ }
12
+ //# sourceMappingURL=ProgressCircle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressCircle.js","sourceRoot":"","sources":["../src/ProgressCircle.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAEpC,MAAM,UAAU,cAAc,CAAC,EAC7B,QAAQ,EACR,MAAM,GAAG,CAAC,EACV,WAAW,GAKZ;IACC,MAAM,aAAa,GAAG,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;IAChD,MAAM,gBAAgB,GAAG,aAAa,GAAG,QAAQ,GAAG,aAAa,CAAC;IAElE,OAAO,CACL,cACE,SAAS,EAAE,GAAG,CAAC;YACb,eAAe,EAAE,MAAM,CAAC,wBAAwB,CAAC;YACjD,SAAS,EAAE,gBAAgB;YAC3B,YAAY,EAAE,KAAK;SACpB,CAAC,EACF,KAAK,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,EACjC,MAAM,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,YAElC,iBACE,MAAM,EAAC,kBAAkB,EACzB,IAAI,EAAC,aAAa,EAClB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,GAAG,aAAa,IAAI,aAAa,EAAE,EACpD,KAAK,EAAE,EAAE,gBAAgB,EAAE,EAC3B,CAAC,EAAE,WAAW,EACd,EAAE,EAAE,WAAW,GAAG,MAAM,EACxB,EAAE,EAAE,WAAW,GAAG,MAAM,GACxB,GACE,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { Theme } from "./jss";
3
+ export declare function Providers({ children, themes, }: {
4
+ children: JSX.Element;
5
+ themes: {
6
+ light: Theme;
7
+ dark: Theme;
8
+ };
9
+ }): JSX.Element;
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { DarkModeProvider } from "./DarkMode";
4
+ import { DialogProvider } from "./Dialog";
5
+ import { IconProvider } from "./Icon";
6
+ import { useCookie } from "./useCookie";
7
+ import { JSStylesProvider } from "./jss";
8
+ export function Providers({ children, themes, }) {
9
+ const [darkModeEnabled, setDarkModeEnabled] = useCookie("dark-mode", {
10
+ initialValue: false,
11
+ loadingValue: false,
12
+ });
13
+ const toggleDarkMode = React.useCallback(() => setDarkModeEnabled((x) => !x), []);
14
+ return (_jsx(JSStylesProvider, { themes: themes, children: _jsx(IconProvider, { children: _jsx(DarkModeProvider, { enabled: darkModeEnabled, toggle: toggleDarkMode, children: _jsx(DialogProvider, { children: children }) }) }) }));
15
+ }
16
+ //# sourceMappingURL=Providers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Providers.js","sourceRoot":"","sources":["../src/Providers.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAS,MAAM,OAAO,CAAC;AAEhD,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,MAAM,GAIP;IACC,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,SAAS,CAAC,WAAW,EAAE;QACnE,YAAY,EAAE,KAAK;QACnB,YAAY,EAAE,KAAK;KACpB,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CACtC,GAAG,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EACnC,EAAE,CACH,CAAC;IAEF,OAAO,CACL,KAAC,gBAAgB,IAAC,MAAM,EAAE,MAAM,YAC9B,KAAC,YAAY,cACX,KAAC,gBAAgB,IAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,YAChE,KAAC,cAAc,cAAE,QAAQ,GAAkB,GAC1B,GACN,GACE,CACpB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import { BaseInputProps } from "./BaseInput";
3
+ import { Gap, JSStyle, Padding } from "./jss";
4
+ export interface RangeInputProps extends BaseInputProps {
5
+ onValueChange: (value: number) => void;
6
+ value: number;
7
+ rootJSStyle?: JSStyle;
8
+ onChange?: undefined;
9
+ padding?: Padding;
10
+ gap?: Gap;
11
+ addOn?: JSX.Element;
12
+ addOnPosition?: "start" | "end";
13
+ }
14
+ export declare const RangeInput: React.ForwardRefExoticComponent<RangeInputProps & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,32 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import { BaseInput } from "./BaseInput";
4
+ import { Row } from "./Row";
5
+ import { cssVar } from "./jss";
6
+ export const RangeInput = React.forwardRef(({ value, onValueChange, rootJSStyle, jsStyle, gap = "medium", padding = "none", min = 0, max = 100, step = 1, label, addOn, addOnPosition = "start", ...inputProps }, ref) => {
7
+ return (_jsxs(Row, { gap: gap, padding: padding, align: "center", jsStyle: [
8
+ {
9
+ ":has(:focus-visible)": {
10
+ borderRadius: cssVar("--border-radius-m"),
11
+ backgroundColor: cssVar("--light-highlight"),
12
+ },
13
+ },
14
+ rootJSStyle,
15
+ ], children: [addOnPosition === "start" && addOn, _jsx(BaseInput, { ...inputProps, label: label, min: min, max: max, type: "range", ref: ref, value: value, onChange: (e) => {
16
+ onValueChange(parseFloat(e.target.value));
17
+ }, jsStyle: [
18
+ {
19
+ backgroundColor: cssVar("--primary-background"),
20
+ flexGrow: 1,
21
+ color: cssVar("--primary-text"),
22
+ margin: 0,
23
+ paddingTop: cssVar("--spacing-m"),
24
+ paddingBottom: cssVar("--spacing-m"),
25
+ ":disabled": {
26
+ color: cssVar("--subtle-text"),
27
+ },
28
+ },
29
+ jsStyle,
30
+ ] }), addOnPosition === "end" && addOn] }));
31
+ });
32
+ //# sourceMappingURL=RangeInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RangeInput.js","sourceRoot":"","sources":["../src/RangeInput.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAkB,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAyB,MAAM,EAAE,MAAM,OAAO,CAAC;AAatD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,CACE,EACE,KAAK,EACL,aAAa,EACb,WAAW,EACX,OAAO,EACP,GAAG,GAAG,QAAQ,EACd,OAAO,GAAG,MAAM,EAChB,GAAG,GAAG,CAAC,EACP,GAAG,GAAG,GAAG,EACT,IAAI,GAAG,CAAC,EACR,KAAK,EACL,KAAK,EACL,aAAa,GAAG,OAAO,EACvB,GAAG,UAAU,EACG,EAClB,GAAiC,EACjC,EAAE;IACF,OAAO,CACL,MAAC,GAAG,IACF,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,QAAQ,EACd,OAAO,EAAE;YACP;gBACE,sBAAsB,EAAE;oBACtB,YAAY,EAAE,MAAM,CAAC,mBAAmB,CAAC;oBACzC,eAAe,EAAE,MAAM,CAAC,mBAAmB,CAAC;iBAC7C;aACF;YACD,WAAW;SACZ,aAEA,aAAa,KAAK,OAAO,IAAI,KAAK,EACnC,KAAC,SAAS,OACJ,UAAU,EACd,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,OAAO,EACZ,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oBACd,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5C,CAAC,EACD,OAAO,EAAE;oBACP;wBACE,eAAe,EAAE,MAAM,CAAC,sBAAsB,CAAC;wBAC/C,QAAQ,EAAE,CAAC;wBACX,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC;wBAC/B,MAAM,EAAE,CAAC;wBACT,UAAU,EAAE,MAAM,CAAC,aAAa,CAAC;wBACjC,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC;wBACpC,WAAW,EAAE;4BACX,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC;yBAC/B;qBACF;oBACD,OAAO;iBACR,GACD,EACD,aAAa,KAAK,KAAK,IAAI,KAAK,IAC7B,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}