@rolder/kit 3.0.0-alpha.8 → 3.0.0-alpha.80

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 (297) hide show
  1. package/dist/ai/index.d.ts +2 -0
  2. package/dist/ai/index.js +2 -0
  3. package/dist/ai/ui/chat/Empty.d.ts +1 -0
  4. package/dist/ai/ui/chat/Empty.js +21 -0
  5. package/dist/ai/ui/chat/File.d.ts +3 -0
  6. package/dist/ai/ui/chat/File.js +43 -0
  7. package/dist/ai/ui/chat/FileIcon.d.ts +3 -0
  8. package/dist/ai/ui/chat/FileIcon.js +43 -0
  9. package/dist/ai/ui/chat/Loader.d.ts +2 -0
  10. package/dist/ai/ui/chat/Loader.js +13 -0
  11. package/dist/ai/ui/chat/Message.d.ts +3 -0
  12. package/dist/ai/ui/chat/Message.js +23 -0
  13. package/dist/ai/ui/chat/Messages.d.ts +2 -0
  14. package/dist/ai/ui/chat/Messages.js +27 -0
  15. package/dist/ai/ui/chat/Root.d.ts +49 -0
  16. package/dist/ai/ui/chat/Root.js +18 -0
  17. package/dist/ai/ui/chat/chatInput/File.d.ts +2 -0
  18. package/dist/ai/ui/chat/chatInput/File.js +71 -0
  19. package/dist/ai/ui/chat/chatInput/FileIcon.d.ts +3 -0
  20. package/dist/ai/ui/chat/chatInput/FileIcon.js +43 -0
  21. package/dist/ai/ui/chat/chatInput/Footer.d.ts +2 -0
  22. package/dist/ai/ui/chat/chatInput/Footer.js +8 -0
  23. package/dist/ai/ui/chat/chatInput/Root.d.ts +9 -0
  24. package/dist/ai/ui/chat/chatInput/Root.js +24 -0
  25. package/dist/ai/ui/chat/chatInput/Submit.d.ts +2 -0
  26. package/dist/ai/ui/chat/chatInput/Submit.js +23 -0
  27. package/dist/ai/ui/chat/chatInput/Textarea.d.ts +2 -0
  28. package/dist/ai/ui/chat/chatInput/Textarea.js +34 -0
  29. package/dist/ai/ui/chat/chatInput/index.d.ts +7 -0
  30. package/dist/ai/ui/chat/chatInput/index.js +13 -0
  31. package/dist/ai/ui/chat/chatInput/store/file.d.ts +8 -0
  32. package/dist/ai/ui/chat/chatInput/store/file.js +32 -0
  33. package/dist/ai/ui/chat/chatInput/store/fileErrorNotificaton.d.ts +2 -0
  34. package/dist/ai/ui/chat/chatInput/store/fileErrorNotificaton.js +21 -0
  35. package/dist/ai/ui/chat/chatInput/store/index.d.ts +2 -0
  36. package/dist/ai/ui/chat/chatInput/store/index.js +2 -0
  37. package/dist/ai/ui/chat/chatInput/store/input.d.ts +13 -0
  38. package/dist/ai/ui/chat/chatInput/store/input.js +81 -0
  39. package/dist/ai/ui/chat/chatInput/store/parseFile.d.ts +2 -0
  40. package/dist/ai/ui/chat/chatInput/store/parseFile.js +23 -0
  41. package/dist/ai/ui/chat/index.d.ts +13 -0
  42. package/dist/ai/ui/chat/index.js +15 -0
  43. package/dist/ai/ui/chat/store/index.d.ts +5 -0
  44. package/dist/ai/ui/chat/store/index.js +5 -0
  45. package/dist/ai/ui/chat/store/messageIds.d.ts +8 -0
  46. package/dist/ai/ui/chat/store/messageIds.js +41 -0
  47. package/dist/ai/ui/chat/store/messagesMap.d.ts +5 -0
  48. package/dist/ai/ui/chat/store/messagesMap.js +15 -0
  49. package/dist/ai/ui/chat/store/send.d.ts +14 -0
  50. package/dist/ai/ui/chat/store/send.js +16 -0
  51. package/dist/ai/ui/chat/store/states.d.ts +11 -0
  52. package/dist/ai/ui/chat/store/states.js +17 -0
  53. package/dist/ai/ui/chat/store/useInitChat.d.ts +3 -0
  54. package/dist/ai/ui/chat/store/useInitChat.js +40 -0
  55. package/dist/ai/ui/index.d.ts +1 -0
  56. package/dist/ai/ui/index.js +1 -0
  57. package/dist/ai/utils/convertFileUIPartBlobToDataURL.d.ts +5 -0
  58. package/dist/ai/utils/convertFileUIPartBlobToDataURL.js +21 -0
  59. package/dist/ai/utils/index.d.ts +2 -0
  60. package/dist/ai/utils/index.js +2 -0
  61. package/dist/ai/utils/parseAiMessagePart.d.ts +2 -0
  62. package/dist/ai/utils/parseAiMessagePart.js +12 -0
  63. package/dist/app/AppDefaults.d.ts +3 -0
  64. package/dist/app/AppDefaults.js +27 -0
  65. package/dist/app/DefaultApp.d.ts +6 -0
  66. package/dist/app/DefaultApp.js +43 -0
  67. package/dist/app/cookieColorSchemeManager.d.ts +6 -0
  68. package/dist/app/cookieColorSchemeManager.js +46 -0
  69. package/dist/app/defaultRequestMiddlewares.d.ts +4 -0
  70. package/dist/app/defaultRequestMiddlewares.js +24 -0
  71. package/dist/app/defaultTheme.d.ts +141 -0
  72. package/dist/app/defaultTheme.js +24 -0
  73. package/dist/app/index.d.ts +4 -0
  74. package/dist/app/index.js +4 -0
  75. package/dist/hooks/index.d.ts +2 -0
  76. package/dist/hooks/index.js +2 -0
  77. package/dist/hooks/useMutation.d.ts +4 -0
  78. package/dist/hooks/useMutation.js +8 -0
  79. package/dist/hooks/useMutationWithInvalidate.d.ts +4 -0
  80. package/dist/hooks/useMutationWithInvalidate.js +16 -0
  81. package/dist/index.d.ts +5 -0
  82. package/dist/index.js +5 -0
  83. package/{src → dist}/styles.css +14 -29
  84. package/dist/tanstackFunctions/cookie/getCookie.d.ts +3 -0
  85. package/dist/tanstackFunctions/cookie/getCookie.js +8 -0
  86. package/dist/tanstackFunctions/cookie/index.d.ts +3 -0
  87. package/dist/tanstackFunctions/cookie/index.js +4 -0
  88. package/dist/tanstackFunctions/cookie/setCookie.d.ts +10 -0
  89. package/dist/tanstackFunctions/cookie/setCookie.js +19 -0
  90. package/dist/tanstackFunctions/cookie/setCookies.d.ts +14 -0
  91. package/dist/tanstackFunctions/cookie/setCookies.js +13 -0
  92. package/dist/tanstackFunctions/index.d.ts +3 -0
  93. package/dist/tanstackFunctions/index.js +3 -0
  94. package/dist/tanstackFunctions/s3/getS3Client.d.ts +2 -0
  95. package/dist/tanstackFunctions/s3/getS3Client.js +18 -0
  96. package/dist/tanstackFunctions/s3/getSignedFileUrlFn.d.ts +4 -0
  97. package/dist/tanstackFunctions/s3/getSignedFileUrlFn.js +21 -0
  98. package/dist/tanstackFunctions/s3/index.d.ts +2 -0
  99. package/dist/tanstackFunctions/s3/index.js +2 -0
  100. package/dist/tanstackFunctions/s3/uploadRequest.d.ts +3 -0
  101. package/dist/tanstackFunctions/s3/uploadRequest.js +21 -0
  102. package/dist/tanstackFunctions/surreal/connection.d.ts +9 -0
  103. package/dist/tanstackFunctions/surreal/connection.js +49 -0
  104. package/dist/tanstackFunctions/surreal/deafaultCrud.d.ts +2 -0
  105. package/dist/tanstackFunctions/surreal/deafaultCrud.js +18 -0
  106. package/dist/tanstackFunctions/surreal/deserialize.d.ts +17 -0
  107. package/dist/tanstackFunctions/surreal/deserialize.js +46 -0
  108. package/dist/tanstackFunctions/surreal/encryption.d.ts +6 -0
  109. package/dist/tanstackFunctions/surreal/encryption.js +30 -0
  110. package/dist/tanstackFunctions/surreal/index.d.ts +4 -0
  111. package/dist/tanstackFunctions/surreal/index.js +4 -0
  112. package/dist/ui/AnimatedChevron.d.ts +6 -0
  113. package/dist/ui/AnimatedChevron.js +13 -0
  114. package/dist/ui/JsonInput.d.ts +2 -0
  115. package/dist/ui/JsonInput.js +45 -0
  116. package/dist/ui/RouterLink.d.ts +16 -0
  117. package/dist/ui/RouterLink.js +36 -0
  118. package/dist/ui/editor/Content.d.ts +3 -0
  119. package/dist/ui/editor/Content.js +13 -0
  120. package/dist/ui/editor/Root.d.ts +8 -0
  121. package/dist/ui/editor/Root.js +55 -0
  122. package/dist/ui/editor/Toolbar.d.ts +5 -0
  123. package/dist/ui/editor/Toolbar.js +138 -0
  124. package/dist/ui/editor/index.d.ts +11 -0
  125. package/dist/ui/editor/index.js +10 -0
  126. package/dist/ui/editor/store.d.ts +6 -0
  127. package/dist/ui/editor/store.js +10 -0
  128. package/dist/ui/error/DefaultError.d.ts +2 -0
  129. package/dist/ui/error/DefaultError.js +62 -0
  130. package/dist/ui/error/DefaultNotFound.d.ts +1 -0
  131. package/dist/ui/error/DefaultNotFound.js +37 -0
  132. package/dist/ui/error/Forbidden.d.ts +1 -0
  133. package/dist/ui/error/Forbidden.js +32 -0
  134. package/dist/ui/error/defaultErrorNotification.d.ts +1 -0
  135. package/dist/ui/error/defaultErrorNotification.js +8 -0
  136. package/dist/ui/error/index.js +5 -0
  137. package/dist/ui/form/blurOnError.d.ts +4 -0
  138. package/dist/ui/form/blurOnError.js +11 -0
  139. package/dist/ui/form/buttons/CancelButton.d.ts +5 -0
  140. package/dist/ui/form/buttons/CancelButton.js +22 -0
  141. package/dist/ui/form/buttons/SubmitButton.d.ts +5 -0
  142. package/dist/ui/form/buttons/SubmitButton.js +22 -0
  143. package/dist/ui/form/buttons/SubscribeActionIcon.d.ts +4 -0
  144. package/dist/ui/form/buttons/SubscribeActionIcon.js +15 -0
  145. package/dist/ui/form/buttons/SubscribeButton.d.ts +5 -0
  146. package/dist/ui/form/buttons/SubscribeButton.js +16 -0
  147. package/dist/ui/form/buttons/index.js +4 -0
  148. package/dist/ui/form/context.d.ts +83 -0
  149. package/dist/ui/form/context.js +26 -0
  150. package/dist/ui/form/fields/JsonField.d.ts +2 -0
  151. package/dist/ui/form/fields/JsonField.js +13 -0
  152. package/dist/ui/form/fields/MultiSelectField.d.ts +2 -0
  153. package/dist/ui/form/fields/MultiSelectField.js +15 -0
  154. package/dist/ui/form/fields/NumberField.d.ts +2 -0
  155. package/dist/ui/form/fields/NumberField.js +15 -0
  156. package/dist/ui/form/fields/PassowrdField.d.ts +2 -0
  157. package/dist/ui/form/fields/PassowrdField.js +18 -0
  158. package/dist/ui/form/fields/SelectField.d.ts +2 -0
  159. package/dist/ui/form/fields/SelectField.js +15 -0
  160. package/dist/ui/form/fields/SwitchField.d.ts +2 -0
  161. package/dist/ui/form/fields/SwitchField.js +15 -0
  162. package/dist/ui/form/fields/TextField.d.ts +2 -0
  163. package/dist/ui/form/fields/TextField.js +15 -0
  164. package/dist/ui/form/fields/TextPassowrdField.d.ts +2 -0
  165. package/dist/ui/form/fields/TextPassowrdField.js +29 -0
  166. package/dist/ui/form/fields/TextareaField.d.ts +2 -0
  167. package/dist/ui/form/fields/TextareaField.js +15 -0
  168. package/dist/ui/form/fields/index.js +9 -0
  169. package/dist/ui/form/fieldsSchema.d.ts +12 -0
  170. package/dist/ui/form/fieldsSchema.js +13 -0
  171. package/dist/ui/form/index.js +4 -0
  172. package/dist/ui/hoverPaper/HoverPaper.d.ts +6 -0
  173. package/dist/ui/hoverPaper/HoverPaper.js +15 -0
  174. package/dist/ui/hoverPaper/index.js +3 -0
  175. package/dist/ui/hoverPaper/usePaperHover.d.ts +4 -0
  176. package/dist/ui/hoverPaper/usePaperHover.js +9 -0
  177. package/dist/ui/index.d.ts +9 -0
  178. package/dist/ui/index.js +9 -0
  179. package/dist/ui/saveInput/JsonInput.d.ts +6 -0
  180. package/dist/ui/saveInput/JsonInput.js +34 -0
  181. package/dist/ui/saveInput/NumberInput.d.ts +6 -0
  182. package/dist/ui/saveInput/NumberInput.js +27 -0
  183. package/dist/ui/saveInput/SaveInput.d.ts +36 -0
  184. package/dist/ui/saveInput/SaveInput.js +15 -0
  185. package/dist/ui/saveInput/Select.d.ts +6 -0
  186. package/dist/ui/saveInput/Select.js +27 -0
  187. package/dist/ui/saveInput/Switch.d.ts +6 -0
  188. package/dist/ui/saveInput/Switch.js +30 -0
  189. package/dist/ui/saveInput/TextInput.d.ts +6 -0
  190. package/dist/ui/saveInput/TextInput.js +26 -0
  191. package/dist/ui/saveInput/Textarea.d.ts +6 -0
  192. package/dist/ui/saveInput/Textarea.js +26 -0
  193. package/dist/ui/saveInput/index.js +2 -0
  194. package/dist/ui/scrollArea/Root.d.ts +7 -0
  195. package/dist/ui/scrollArea/Root.js +42 -0
  196. package/dist/ui/scrollArea/ScrollButton.d.ts +10 -0
  197. package/dist/ui/scrollArea/ScrollButton.js +30 -0
  198. package/dist/ui/scrollArea/index.d.ts +6 -0
  199. package/dist/ui/scrollArea/index.js +7 -0
  200. package/dist/ui/scrollArea/methods.d.ts +4 -0
  201. package/dist/ui/scrollArea/methods.js +32 -0
  202. package/dist/ui/scrollArea/store.d.ts +12 -0
  203. package/dist/ui/scrollArea/store.js +25 -0
  204. package/package.json +40 -28
  205. package/rslib.config.ts +0 -21
  206. package/src/ai/ui/conversation/ConversationContext.ts +0 -21
  207. package/src/ai/ui/conversation/ConversationProvider.tsx +0 -21
  208. package/src/ai/ui/conversation/Empty.tsx +0 -15
  209. package/src/ai/ui/conversation/File.tsx +0 -40
  210. package/src/ai/ui/conversation/FileIcon.tsx +0 -143
  211. package/src/ai/ui/conversation/Loader.tsx +0 -8
  212. package/src/ai/ui/conversation/Message.tsx +0 -34
  213. package/src/ai/ui/conversation/Root.tsx +0 -24
  214. package/src/ai/ui/conversation/index.ts +0 -16
  215. package/src/ai/ui/conversation/types.ts +0 -8
  216. package/src/ai/ui/conversation/useChatMessage.ts +0 -13
  217. package/src/ai/ui/promptInput/File.tsx +0 -98
  218. package/src/ai/ui/promptInput/FileIcon.tsx +0 -149
  219. package/src/ai/ui/promptInput/Footer.tsx +0 -5
  220. package/src/ai/ui/promptInput/PromptInputContext.ts +0 -24
  221. package/src/ai/ui/promptInput/PromptInputProvider.tsx +0 -54
  222. package/src/ai/ui/promptInput/Root.tsx +0 -29
  223. package/src/ai/ui/promptInput/Submit.tsx +0 -39
  224. package/src/ai/ui/promptInput/Textarea.tsx +0 -39
  225. package/src/ai/ui/promptInput/index.ts +0 -15
  226. package/src/ai/ui/promptInput/types.ts +0 -9
  227. package/src/ai/utils/convertFileUIPartBlobToDataURL.ts +0 -29
  228. package/src/ai/utils/parseAiMessagePart.ts +0 -19
  229. package/src/app/AppDefaults.tsx +0 -21
  230. package/src/app/DefaultApp.tsx +0 -50
  231. package/src/app/cookieColorSchemeManager.ts +0 -70
  232. package/src/app/defaultRequestMiddlewares.ts +0 -22
  233. package/src/app/defaultTheme.ts +0 -22
  234. package/src/functions/getCookie.ts +0 -36
  235. package/src/functions/setCookie.ts +0 -29
  236. package/src/functions/setCookies.ts +0 -24
  237. package/src/hooks/useMutation.ts +0 -14
  238. package/src/hooks/useMutationWithInvalidate.ts +0 -23
  239. package/src/index.ts +0 -66
  240. package/src/surreal/connection.ts +0 -72
  241. package/src/surreal/deafaultCrud.ts +0 -25
  242. package/src/surreal/deserialize.ts +0 -144
  243. package/src/surreal/encryption.ts +0 -51
  244. package/src/ui/AnimatedChevron.tsx +0 -32
  245. package/src/ui/JsonInput.tsx +0 -52
  246. package/src/ui/RouterLink.tsx +0 -78
  247. package/src/ui/editor/Content.tsx +0 -11
  248. package/src/ui/editor/Provider.tsx +0 -96
  249. package/src/ui/editor/Root.tsx +0 -25
  250. package/src/ui/editor/Toolbar.tsx +0 -92
  251. package/src/ui/editor/index.ts +0 -13
  252. package/src/ui/editor/types.ts +0 -7
  253. package/src/ui/error/DefaultError.tsx +0 -60
  254. package/src/ui/error/DefaultNotFound.tsx +0 -19
  255. package/src/ui/error/Forbidden.tsx +0 -18
  256. package/src/ui/error/defaultErrorNotification.ts +0 -9
  257. package/src/ui/form/blurOnError.ts +0 -21
  258. package/src/ui/form/buttons/CancelButton.tsx +0 -42
  259. package/src/ui/form/buttons/SubmitButton.tsx +0 -43
  260. package/src/ui/form/buttons/SubscribeActionIcon.tsx +0 -18
  261. package/src/ui/form/buttons/SubscribeButton.tsx +0 -17
  262. package/src/ui/form/context.ts +0 -45
  263. package/src/ui/form/fields/JsonField.tsx +0 -16
  264. package/src/ui/form/fields/MultiSelectField.tsx +0 -17
  265. package/src/ui/form/fields/NumberField.tsx +0 -17
  266. package/src/ui/form/fields/PassowrdField.tsx +0 -20
  267. package/src/ui/form/fields/SelectField.tsx +0 -17
  268. package/src/ui/form/fields/SwitchField.tsx +0 -17
  269. package/src/ui/form/fields/TextField.tsx +0 -17
  270. package/src/ui/form/fields/TextPassowrdField.tsx +0 -51
  271. package/src/ui/form/fields/TextareaField.tsx +0 -17
  272. package/src/ui/form/fieldsSchema.ts +0 -24
  273. package/src/ui/hoverPaper/HoverPaper.tsx +0 -17
  274. package/src/ui/hoverPaper/usePaperHover.ts +0 -9
  275. package/src/ui/saveInput/JsonInput.tsx +0 -40
  276. package/src/ui/saveInput/NumberInput.tsx +0 -40
  277. package/src/ui/saveInput/SaveInput.tsx +0 -15
  278. package/src/ui/saveInput/Select.tsx +0 -41
  279. package/src/ui/saveInput/Switch.tsx +0 -46
  280. package/src/ui/saveInput/TextInput.tsx +0 -40
  281. package/src/ui/saveInput/Textarea.tsx +0 -40
  282. package/src/ui/scrollArea/ARCH.md +0 -204
  283. package/src/ui/scrollArea/README.md +0 -369
  284. package/src/ui/scrollArea/ScrollArea.tsx +0 -93
  285. package/src/ui/scrollArea/ScrollAreaButton.tsx +0 -56
  286. package/src/ui/scrollArea/ScrollAreaContent.tsx +0 -36
  287. package/src/ui/scrollArea/context.tsx +0 -43
  288. package/src/ui/scrollArea/index.ts +0 -10
  289. package/src/ui/scrollArea/types.ts +0 -77
  290. package/src/ui/scrollArea/useScrollArea.ts +0 -227
  291. package/tsconfig.json +0 -14
  292. /package/{src/ui/error/index.ts → dist/ui/error/index.d.ts} +0 -0
  293. /package/{src/ui/form/buttons/index.ts → dist/ui/form/buttons/index.d.ts} +0 -0
  294. /package/{src/ui/form/fields/index.ts → dist/ui/form/fields/index.d.ts} +0 -0
  295. /package/{src/ui/form/index.ts → dist/ui/form/index.d.ts} +0 -0
  296. /package/{src/ui/hoverPaper/index.ts → dist/ui/hoverPaper/index.d.ts} +0 -0
  297. /package/{src/ui/saveInput/index.ts → dist/ui/saveInput/index.d.ts} +0 -0
@@ -0,0 +1,141 @@
1
+ export declare const defaultTheme: {
2
+ focusRing?: "auto" | "always" | "never" | undefined;
3
+ scale?: number | undefined;
4
+ fontSmoothing?: boolean | undefined;
5
+ white?: string | undefined;
6
+ black?: string | undefined;
7
+ colors?: {
8
+ [x: string & {}]: import("@mantine/core").MantineColorsTuple | undefined;
9
+ red?: import("@mantine/core").MantineColorsTuple | undefined;
10
+ dark?: import("@mantine/core").MantineColorsTuple | undefined;
11
+ gray?: import("@mantine/core").MantineColorsTuple | undefined;
12
+ pink?: import("@mantine/core").MantineColorsTuple | undefined;
13
+ grape?: import("@mantine/core").MantineColorsTuple | undefined;
14
+ violet?: import("@mantine/core").MantineColorsTuple | undefined;
15
+ indigo?: import("@mantine/core").MantineColorsTuple | undefined;
16
+ blue?: import("@mantine/core").MantineColorsTuple | undefined;
17
+ cyan?: import("@mantine/core").MantineColorsTuple | undefined;
18
+ green?: import("@mantine/core").MantineColorsTuple | undefined;
19
+ lime?: import("@mantine/core").MantineColorsTuple | undefined;
20
+ yellow?: import("@mantine/core").MantineColorsTuple | undefined;
21
+ orange?: import("@mantine/core").MantineColorsTuple | undefined;
22
+ teal?: import("@mantine/core").MantineColorsTuple | undefined;
23
+ } | undefined;
24
+ primaryShade?: import("@mantine/core").MantineColorShade | {
25
+ light?: import("@mantine/core").MantineColorShade | undefined;
26
+ dark?: import("@mantine/core").MantineColorShade | undefined;
27
+ } | undefined;
28
+ primaryColor?: string | undefined;
29
+ variantColorResolver?: import("@mantine/core").VariantColorsResolver | undefined;
30
+ autoContrast?: boolean | undefined;
31
+ luminanceThreshold?: number | undefined;
32
+ fontFamily?: string | undefined;
33
+ fontFamilyMonospace?: string | undefined;
34
+ headings?: {
35
+ fontFamily?: string | undefined;
36
+ fontWeight?: string | undefined;
37
+ textWrap?: "balance" | "nowrap" | "wrap" | "stable" | "pretty" | undefined;
38
+ sizes?: {
39
+ h1?: {
40
+ fontSize?: string | undefined;
41
+ fontWeight?: string | undefined;
42
+ lineHeight?: string | undefined;
43
+ } | undefined;
44
+ h2?: {
45
+ fontSize?: string | undefined;
46
+ fontWeight?: string | undefined;
47
+ lineHeight?: string | undefined;
48
+ } | undefined;
49
+ h3?: {
50
+ fontSize?: string | undefined;
51
+ fontWeight?: string | undefined;
52
+ lineHeight?: string | undefined;
53
+ } | undefined;
54
+ h4?: {
55
+ fontSize?: string | undefined;
56
+ fontWeight?: string | undefined;
57
+ lineHeight?: string | undefined;
58
+ } | undefined;
59
+ h5?: {
60
+ fontSize?: string | undefined;
61
+ fontWeight?: string | undefined;
62
+ lineHeight?: string | undefined;
63
+ } | undefined;
64
+ h6?: {
65
+ fontSize?: string | undefined;
66
+ fontWeight?: string | undefined;
67
+ lineHeight?: string | undefined;
68
+ } | undefined;
69
+ } | undefined;
70
+ } | undefined;
71
+ radius?: {
72
+ [x: string & {}]: string | undefined;
73
+ xs?: string | undefined;
74
+ sm?: string | undefined;
75
+ md?: string | undefined;
76
+ lg?: string | undefined;
77
+ xl?: string | undefined;
78
+ } | undefined;
79
+ defaultRadius?: import("@mantine/core").MantineRadius | undefined;
80
+ spacing?: {
81
+ [x: number]: string | undefined;
82
+ [x: string & {}]: string | undefined;
83
+ xs?: string | undefined;
84
+ sm?: string | undefined;
85
+ md?: string | undefined;
86
+ lg?: string | undefined;
87
+ xl?: string | undefined;
88
+ } | undefined;
89
+ fontSizes?: {
90
+ [x: string & {}]: string | undefined;
91
+ xs?: string | undefined;
92
+ sm?: string | undefined;
93
+ md?: string | undefined;
94
+ lg?: string | undefined;
95
+ xl?: string | undefined;
96
+ } | undefined;
97
+ lineHeights?: {
98
+ [x: string & {}]: string | undefined;
99
+ xs?: string | undefined;
100
+ sm?: string | undefined;
101
+ md?: string | undefined;
102
+ lg?: string | undefined;
103
+ xl?: string | undefined;
104
+ } | undefined;
105
+ breakpoints?: {
106
+ [x: string & {}]: string | undefined;
107
+ xs?: string | undefined;
108
+ sm?: string | undefined;
109
+ md?: string | undefined;
110
+ lg?: string | undefined;
111
+ xl?: string | undefined;
112
+ } | undefined;
113
+ shadows?: {
114
+ [x: string & {}]: string | undefined;
115
+ xs?: string | undefined;
116
+ sm?: string | undefined;
117
+ md?: string | undefined;
118
+ lg?: string | undefined;
119
+ xl?: string | undefined;
120
+ } | undefined;
121
+ respectReducedMotion?: boolean | undefined;
122
+ cursorType?: "default" | "pointer" | undefined;
123
+ defaultGradient?: {
124
+ from?: string | undefined;
125
+ to?: string | undefined;
126
+ deg?: number | undefined;
127
+ } | undefined;
128
+ activeClassName?: string | undefined;
129
+ focusClassName?: string | undefined;
130
+ components?: {
131
+ [x: string]: {
132
+ classNames?: any;
133
+ styles?: any;
134
+ vars?: any;
135
+ defaultProps?: any;
136
+ } | undefined;
137
+ } | undefined;
138
+ other?: {
139
+ [x: string]: any;
140
+ } | undefined;
141
+ };
@@ -0,0 +1,24 @@
1
+ import { Modal, createTheme } from "@mantine/core";
2
+ const defaultTheme = createTheme({
3
+ components: {
4
+ Modal: Modal.extend({
5
+ defaultProps: {
6
+ centered: true,
7
+ padding: 'lg'
8
+ }
9
+ }),
10
+ ModalTitle: Modal.Title.extend({
11
+ defaultProps: {
12
+ pr: 24
13
+ }
14
+ }),
15
+ ModalCloseButton: Modal.CloseButton.extend({
16
+ defaultProps: {
17
+ pos: 'absolute',
18
+ top: 4,
19
+ right: 4
20
+ }
21
+ })
22
+ }
23
+ });
24
+ export { defaultTheme };
@@ -0,0 +1,4 @@
1
+ export * from './AppDefaults';
2
+ export * from './DefaultApp';
3
+ export * from './defaultRequestMiddlewares';
4
+ export * from './defaultTheme';
@@ -0,0 +1,4 @@
1
+ export * from "./AppDefaults.js";
2
+ export * from "./DefaultApp.js";
3
+ export * from "./defaultRequestMiddlewares.js";
4
+ export * from "./defaultTheme.js";
@@ -0,0 +1,2 @@
1
+ export * from './useMutation';
2
+ export * from './useMutationWithInvalidate';
@@ -0,0 +1,2 @@
1
+ export * from "./useMutation.js";
2
+ export * from "./useMutationWithInvalidate.js";
@@ -0,0 +1,4 @@
1
+ import { type UseMutationOptions } from '@tanstack/react-query';
2
+ export declare const useMutation: <T, K = void>(fn: ({ data }: {
3
+ data: T;
4
+ }) => Promise<K>, options?: Omit<UseMutationOptions<K, Error, T>, "mutationFn">) => import("@tanstack/react-query").UseMutationResult<K, Error, T, unknown>;
@@ -0,0 +1,8 @@
1
+ import { useMutation } from "@tanstack/react-query";
2
+ const useMutation_useMutation = (fn, options)=>useMutation({
3
+ mutationFn: (data)=>fn({
4
+ data
5
+ }),
6
+ ...options
7
+ });
8
+ export { useMutation_useMutation as useMutation };
@@ -0,0 +1,4 @@
1
+ import { type UseMutationOptions } from '@tanstack/react-query';
2
+ export declare const useMutationWithInvalidate: <T, K = void>(fn: ({ data }: {
3
+ data: T;
4
+ }) => Promise<K>, queryKey: string[], options?: Omit<UseMutationOptions<K, Error, T>, "mutationFn" | "onSettled">) => import("@tanstack/react-query").UseMutationResult<K, Error, T, unknown>;
@@ -0,0 +1,16 @@
1
+ import { useMutation, useQueryClient } from "@tanstack/react-query";
2
+ const useMutationWithInvalidate = (fn, queryKey, options)=>{
3
+ const queryClient = useQueryClient();
4
+ return useMutation({
5
+ mutationFn: (data)=>fn({
6
+ data
7
+ }),
8
+ onSettled: async (_, error)=>{
9
+ if (!error && queryKey.length) await queryClient.invalidateQueries({
10
+ queryKey
11
+ });
12
+ },
13
+ ...options
14
+ });
15
+ };
16
+ export { useMutationWithInvalidate };
@@ -0,0 +1,5 @@
1
+ export * from './ai';
2
+ export * from './app';
3
+ export * from './hooks';
4
+ export * from './tanstackFunctions';
5
+ export * from './ui';
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ export * from "./ai/index.js";
2
+ export * from "./app/index.js";
3
+ export * from "./hooks/index.js";
4
+ export * from "./tanstackFunctions/index.js";
5
+ export * from "./ui/index.js";
@@ -1,26 +1,20 @@
1
- .rolder-prompt-input-root {
2
- background-color: light-dark(
3
- var(--mantine-color-white),
4
- var(--mantine-color-dark-6)
5
- );
1
+ .rolder-chat-input-root {
2
+ background-color: light-dark(var(--mantine-color-white), var(--mantine-color-dark-6));
6
3
 
7
4
  &:focus-within {
8
- outline: none;
9
5
  border-color: var(--mantine-primary-color-filled);
10
- }
11
- &:focus-within {
12
- outline: none;
13
6
  border-color: var(--mantine-primary-color-filled);
7
+ outline: none;
14
8
  }
15
9
  }
16
10
 
17
- .rolder-prompt-input-textarea {
11
+ .rolder-chat-input-textarea {
18
12
  border: 0;
19
- overflow: hidden;
20
13
  border-radius: 8px;
14
+ overflow: hidden;
21
15
  }
22
16
 
23
- .rolder-prompt-input-file-action-action {
17
+ .rolder-chat-input-file-action-action {
24
18
  color: light-dark(var(--mantine-color-gray-7), var(--mantine-color-dark-1));
25
19
 
26
20
  &[data-disabled] {
@@ -29,11 +23,7 @@
29
23
  }
30
24
 
31
25
  .rolder-editor-root {
32
- --editor-border-color: light-dark(
33
- var(--mantine-color-gray-3),
34
- var(--mantine-color-dark-4)
35
- );
36
-
26
+ --editor-border-color: light-dark(var(--mantine-color-gray-3), var(--mantine-color-dark-4));
37
27
  border: rem(1px) solid var(--editor-border-color);
38
28
  border-radius: var(--mantine-radius-md);
39
29
  }
@@ -49,15 +39,14 @@
49
39
  }
50
40
 
51
41
  .rolder-hover-paper-root {
52
- transition: background-color 0.2s ease-in-out;
42
+ transition: background-color .2s ease-in-out;
43
+
53
44
  &:hover {
54
- background-color: light-dark(
55
- var(--mantine-color-gray-0),
56
- var(--mantine-color-dark-6)
57
- );
58
- transition: background-color 0.2s ease-in-out;
45
+ background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6));
59
46
  cursor: pointer;
47
+ transition: background-color .2s ease-in-out;
60
48
  }
49
+
61
50
  &[data-disabled] {
62
51
  background-color: unset;
63
52
  cursor: default;
@@ -65,20 +54,16 @@
65
54
  }
66
55
 
67
56
  .rolder-router-link-root {
68
- text-decoration: none;
69
57
  color: inherit;
58
+ text-decoration: none;
70
59
  }
71
60
 
72
61
  .rolder-scroll-area-viewport {
73
62
  border-radius: var(--radius);
74
63
  }
75
64
 
76
- .rolder-scroll-area-content {
77
- width: 100%;
78
- height: 100%;
79
- }
80
-
81
65
  .rolder-scroll-area-scrollbar {
82
66
  border-top-right-radius: var(--radius);
83
67
  border-bottom-right-radius: var(--radius);
84
68
  }
69
+
@@ -0,0 +1,3 @@
1
+ export declare function getCookie<T extends string>(name: string, defaultValue: T): T;
2
+ export declare function getCookie(name: string, defaultValue: string): string;
3
+ export declare function getCookie(name: string, defaultValue?: undefined): string | undefined;
@@ -0,0 +1,8 @@
1
+ import { createIsomorphicFn } from "@tanstack/react-start";
2
+ import { getCookie } from "@tanstack/react-start/server";
3
+ import js_cookie from "js-cookie";
4
+ const getCookieImpl = createIsomorphicFn().server((name, defaultValue)=>getCookie(name) || defaultValue).client((name, defaultValue)=>js_cookie.get(name) || defaultValue);
5
+ function getCookie_getCookie(name, defaultValue) {
6
+ return getCookieImpl(name, defaultValue);
7
+ }
8
+ export { getCookie_getCookie as getCookie };
@@ -0,0 +1,3 @@
1
+ export { getCookie } from './getCookie';
2
+ export { setCookie } from './setCookie';
3
+ export { setCookies } from './setCookies';
@@ -0,0 +1,4 @@
1
+ import { getCookie } from "./getCookie.js";
2
+ import { setCookie } from "./setCookie.js";
3
+ import { setCookies } from "./setCookies.js";
4
+ export { getCookie, setCookie, setCookies };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Изоморфная функция для установки значения куки.
3
+ * На клиенте использует библиотеку js-cookie для работы с куками.
4
+ * На сервере использует функции getCookie и setCookie из tanstack start.
5
+ *
6
+ * @param {string} name - Имя куки
7
+ * @param {string} value - Значение куки, если не указано, кука будет удалена
8
+ * @param {number} [expires=7] - Количество дней до истечения срока действия куки (по умолчанию 7 дней)
9
+ */
10
+ export declare const setCookie: import("@tanstack/start-fn-stubs").IsomorphicFn<[name: string, value?: string | undefined, expires?: number | undefined], void, void>;
@@ -0,0 +1,19 @@
1
+ import { createIsomorphicFn } from "@tanstack/react-start";
2
+ import { deleteCookie, setCookie } from "@tanstack/react-start/server";
3
+ import js_cookie from "js-cookie";
4
+ const setCookie_setCookie = createIsomorphicFn().server((name, value, expires)=>{
5
+ const expiresDate = new Date();
6
+ expiresDate.setDate(expiresDate.getDate() + (expires || 7));
7
+ if (value) setCookie(name, value, {
8
+ expires: expiresDate
9
+ });
10
+ else deleteCookie(name);
11
+ }).client((name, value, expires)=>{
12
+ const expiresDate = new Date();
13
+ expiresDate.setDate(expiresDate.getDate() + (expires || 7));
14
+ if (value) js_cookie.set(name, value, {
15
+ expires: expiresDate
16
+ });
17
+ else js_cookie.remove(name);
18
+ });
19
+ export { setCookie_setCookie as setCookie };
@@ -0,0 +1,14 @@
1
+ interface Cookie {
2
+ name: string;
3
+ value?: string;
4
+ expires?: number;
5
+ }
6
+ /**
7
+ * Клиентская функция для установки значения нескольких куки.
8
+ * На клиенте использует библиотеку js-cookie для работы с куками.
9
+ * На сервере использует функции getCookie и setCookie из tanstack start.
10
+ *
11
+ * @param {Cookie[]} cookies - Массив объектов с данными куки *
12
+ */
13
+ export declare const setCookies: (cookies: Cookie[]) => void;
14
+ export {};
@@ -0,0 +1,13 @@
1
+ import { createClientOnlyFn } from "@tanstack/react-start";
2
+ import js_cookie from "js-cookie";
3
+ const setCookies = createClientOnlyFn((cookies)=>{
4
+ cookies.forEach(({ name, value, expires })=>{
5
+ const expiresDate = new Date();
6
+ expiresDate.setDate(expiresDate.getDate() + (expires || 7));
7
+ if (value) js_cookie.set(name, value, {
8
+ expires: expiresDate
9
+ });
10
+ else js_cookie.remove(name);
11
+ });
12
+ });
13
+ export { setCookies };
@@ -0,0 +1,3 @@
1
+ export * from './cookie';
2
+ export * from './s3';
3
+ export * from './surreal';
@@ -0,0 +1,3 @@
1
+ export * from "./cookie/index.js";
2
+ export * from "./s3/index.js";
3
+ export * from "./surreal/index.js";
@@ -0,0 +1,2 @@
1
+ import { custom } from '@better-upload/server/clients';
2
+ export declare const getS3Client: () => ReturnType<typeof custom>;
@@ -0,0 +1,18 @@
1
+ import { custom } from "@better-upload/server/clients";
2
+ const getS3Client = ()=>{
3
+ const host = process.env.S3_HOST;
4
+ if (!host) throw new Error('S3_HOST environment variable is not set');
5
+ const region = process.env.S3_REGION;
6
+ if (!region) throw new Error('S3_REGION environment variable is not set');
7
+ const accessKeyId = process.env.S3_ACCESS_KEY_ID;
8
+ if (!accessKeyId) throw new Error('S3_ACCESS_KEY_ID environment variable is not set');
9
+ const accessKeySecret = process.env.S3_ACCESS_KEY_SECRET;
10
+ if (!accessKeySecret) throw new Error('S3_ACCESS_KEY_SECRET environment variable is not set');
11
+ return custom({
12
+ host,
13
+ region,
14
+ accessKeyId,
15
+ secretAccessKey: accessKeySecret
16
+ });
17
+ };
18
+ export { getS3Client };
@@ -0,0 +1,4 @@
1
+ import z from 'zod/v4';
2
+ export declare const getSignedFileUrlFn: import("@tanstack/start-client-core").RequiredFetcher<undefined, z.ZodObject<{
3
+ s3Key: z.ZodString;
4
+ }, z.core.$strip>, Promise<string>>;
@@ -0,0 +1,21 @@
1
+ import { presignGetObject } from "@better-upload/server/helpers";
2
+ import { createServerFn } from "@tanstack/react-start";
3
+ import v4 from "zod/v4";
4
+ import { getS3Client } from "./getS3Client.js";
5
+ const Schema = v4.object({
6
+ s3Key: v4.string()
7
+ });
8
+ const getSignedFileUrlFn = createServerFn({
9
+ method: 'POST'
10
+ }).inputValidator(Schema).handler(async ({ data: { s3Key } })=>{
11
+ const bucket = process.env.S3_BUCKET_NAME;
12
+ if (!bucket) throw new Error('S3_BUCKET_NAME environment variable is not set');
13
+ const s3 = getS3Client();
14
+ const url = await presignGetObject(s3, {
15
+ bucket,
16
+ key: s3Key,
17
+ expiresIn: 300
18
+ });
19
+ return url;
20
+ });
21
+ export { getSignedFileUrlFn };
@@ -0,0 +1,2 @@
1
+ export * from './getSignedFileUrlFn';
2
+ export * from './uploadRequest';
@@ -0,0 +1,2 @@
1
+ export * from "./getSignedFileUrlFn.js";
2
+ export * from "./uploadRequest.js";
@@ -0,0 +1,3 @@
1
+ export declare const uploadRequest: ({ request }: {
2
+ request: Request;
3
+ }) => Promise<Response>;
@@ -0,0 +1,21 @@
1
+ import { handleRequest, route } from "@better-upload/server";
2
+ import { createServerOnlyFn } from "@tanstack/react-start";
3
+ import { getS3Client } from "./getS3Client.js";
4
+ const getRouter = createServerOnlyFn(()=>{
5
+ const bucket = process.env.BUCKET_NAME;
6
+ if (!bucket) throw new Error('BUCKET_NAME environment variable is not set');
7
+ const s3 = getS3Client();
8
+ const router = {
9
+ client: s3,
10
+ bucketName: bucket,
11
+ routes: {
12
+ upload: route({
13
+ multipleFiles: false,
14
+ maxFileSize: 52428800
15
+ })
16
+ }
17
+ };
18
+ return router;
19
+ });
20
+ const uploadRequest = async ({ request })=>handleRequest(request, getRouter());
21
+ export { uploadRequest };
@@ -0,0 +1,9 @@
1
+ import { type CodecOptions, Surreal } from 'surrealdb';
2
+ export declare const getDB: (params?: {
3
+ url?: string;
4
+ namespace?: string;
5
+ database?: string;
6
+ username?: string;
7
+ password?: string;
8
+ codecOptions?: CodecOptions;
9
+ } | undefined) => Promise<Surreal>;
@@ -0,0 +1,49 @@
1
+ import { createServerOnlyFn } from "@tanstack/react-start";
2
+ import { getCookie } from "@tanstack/react-start/server";
3
+ import { DateTime, Surreal } from "surrealdb";
4
+ let db = null;
5
+ const getDB = createServerOnlyFn(async (params = {})=>{
6
+ if (db?.isConnected) return db;
7
+ const locale = getCookie('locale') || 'ru-RU';
8
+ const timeZone = getCookie('tz') || 'UTC';
9
+ const instance = new Surreal({
10
+ codecOptions: params.codecOptions || {
11
+ valueDecodeVisitor (value) {
12
+ if (value instanceof DateTime) return new Date(value.toDate()).toLocaleDateString(locale, {
13
+ hour: 'numeric',
14
+ minute: 'numeric',
15
+ timeZone
16
+ });
17
+ return value;
18
+ }
19
+ }
20
+ });
21
+ try {
22
+ const url = params.url || process.env.SURREALDB_URL;
23
+ if (!url) throw new Error('Missing required SurrealDB URL');
24
+ const namespace = params.namespace || process.env.SURREALDB_NAMESPACE;
25
+ if (!namespace) throw new Error('Missing required SurrealDB namespace');
26
+ const database = params.database || process.env.SURREALDB_DATABASE;
27
+ if (!database) throw new Error('Missing required SurrealDB database');
28
+ const username = params.username || process.env.SURREALDB_USERNAME;
29
+ const password = params.password || process.env.SURREALDB_PASSWORD;
30
+ if (username && password) await instance.connect(url, {
31
+ authentication: {
32
+ username,
33
+ password
34
+ }
35
+ });
36
+ else await instance.connect(url);
37
+ await instance.use({
38
+ namespace,
39
+ database
40
+ });
41
+ db = instance;
42
+ return instance;
43
+ } catch (error) {
44
+ console.error('Failed to connect to SurrealDB:', error);
45
+ db = null;
46
+ throw error;
47
+ }
48
+ });
49
+ export { getDB };
@@ -0,0 +1,2 @@
1
+ export declare const surrealDeleteFn: import("@tanstack/start-client-core").RequiredFetcher<undefined, (data: string) => string, Promise<void>>;
2
+ export declare const surrealUnsubscribeFn: import("@tanstack/start-client-core").RequiredFetcher<undefined, (data: string) => string, Promise<void>>;
@@ -0,0 +1,18 @@
1
+ import { createServerFn } from "@tanstack/react-start";
2
+ import { getDB } from "./connection.js";
3
+ import { deserialize } from "./deserialize.js";
4
+ const surrealDeleteFn = createServerFn({
5
+ method: 'POST'
6
+ }).inputValidator((data)=>data).handler(async ({ data })=>{
7
+ const db = await getDB();
8
+ const id = deserialize(data);
9
+ await db.delete(id);
10
+ });
11
+ const surrealUnsubscribeFn = createServerFn({
12
+ method: 'POST'
13
+ }).inputValidator((data)=>data).handler(async ({ data })=>{
14
+ const db = await getDB();
15
+ const live = await db.liveOf(data);
16
+ await live.kill();
17
+ });
18
+ export { surrealDeleteFn, surrealUnsubscribeFn };
@@ -0,0 +1,17 @@
1
+ import { RecordId } from 'surrealdb';
2
+ /**
3
+ * Type that converts specified string paths to RecordId, others stay as their original types
4
+ */
5
+ type DeserializeResult<T, IdPaths extends string = never> = T extends string ? RecordId<string> : T extends (infer U)[] ? U extends object ? {
6
+ [K in keyof U]: K extends IdPaths ? RecordId<string> : U[K];
7
+ }[] : DeserializeResult<U, IdPaths>[] : T extends object ? T extends Date ? T : {
8
+ [K in keyof T]: K extends IdPaths ? RecordId<string> : T[K];
9
+ } : T;
10
+ /**
11
+ * Deserializes DTO back to SurrealDB Record recursively based on specified ID paths
12
+ */
13
+ export declare function deserialize<T, K extends keyof T & string>(dto: T[], idPaths: K[]): DeserializeResult<T, K>[];
14
+ export declare function deserialize<T, K extends keyof T & string>(dto: T, idPaths: K[]): DeserializeResult<T, K>;
15
+ export declare function deserialize<T>(dto: T[]): DeserializeResult<T>[];
16
+ export declare function deserialize<T>(dto: T): DeserializeResult<T>;
17
+ export {};