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

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 (263) hide show
  1. package/dist/ai/ui/conversation/ConversationContext.d.ts +7 -0
  2. package/dist/ai/ui/conversation/ConversationContext.js +8 -0
  3. package/dist/ai/ui/conversation/ConversationProvider.d.ts +2 -0
  4. package/dist/ai/ui/conversation/ConversationProvider.js +14 -0
  5. package/dist/ai/ui/conversation/Empty.d.ts +1 -0
  6. package/dist/ai/ui/conversation/Empty.js +21 -0
  7. package/dist/ai/ui/conversation/File.d.ts +4 -0
  8. package/dist/ai/ui/conversation/File.js +42 -0
  9. package/dist/ai/ui/conversation/FileIcon.d.ts +3 -0
  10. package/dist/ai/ui/conversation/FileIcon.js +225 -0
  11. package/dist/ai/ui/conversation/Loader.d.ts +2 -0
  12. package/dist/ai/ui/conversation/Loader.js +12 -0
  13. package/dist/ai/ui/conversation/Message.d.ts +4 -0
  14. package/dist/ai/ui/conversation/Message.js +25 -0
  15. package/dist/ai/ui/conversation/Root.d.ts +2 -0
  16. package/dist/ai/ui/conversation/Root.js +26 -0
  17. package/dist/ai/ui/conversation/index.d.ts +13 -0
  18. package/dist/ai/ui/conversation/index.js +14 -0
  19. package/{src/ai/ui/conversation/types.ts → dist/ai/ui/conversation/types.d.ts} +4 -5
  20. package/dist/ai/ui/conversation/types.js +0 -0
  21. package/dist/ai/ui/conversation/useChatMessage.d.ts +2 -0
  22. package/dist/ai/ui/conversation/useChatMessage.js +12 -0
  23. package/dist/ai/ui/promptInput/File.d.ts +2 -0
  24. package/dist/ai/ui/promptInput/File.js +117 -0
  25. package/dist/ai/ui/promptInput/FileIcon.d.ts +3 -0
  26. package/dist/ai/ui/promptInput/FileIcon.js +225 -0
  27. package/dist/ai/ui/promptInput/Footer.d.ts +2 -0
  28. package/dist/ai/ui/promptInput/Footer.js +8 -0
  29. package/dist/ai/ui/promptInput/PromptInputContext.d.ts +12 -0
  30. package/dist/ai/ui/promptInput/PromptInputContext.js +8 -0
  31. package/dist/ai/ui/promptInput/PromptInputProvider.d.ts +2 -0
  32. package/dist/ai/ui/promptInput/PromptInputProvider.js +50 -0
  33. package/dist/ai/ui/promptInput/Root.d.ts +3 -0
  34. package/dist/ai/ui/promptInput/Root.js +17 -0
  35. package/dist/ai/ui/promptInput/Submit.d.ts +2 -0
  36. package/dist/ai/ui/promptInput/Submit.js +40 -0
  37. package/dist/ai/ui/promptInput/Textarea.d.ts +2 -0
  38. package/dist/ai/ui/promptInput/Textarea.js +33 -0
  39. package/dist/ai/ui/promptInput/index.d.ts +8 -0
  40. package/dist/ai/ui/promptInput/index.js +13 -0
  41. package/dist/ai/ui/promptInput/types.d.ts +11 -0
  42. package/dist/ai/ui/promptInput/types.js +0 -0
  43. package/dist/ai/utils/convertFileUIPartBlobToDataURL.d.ts +5 -0
  44. package/dist/ai/utils/convertFileUIPartBlobToDataURL.js +21 -0
  45. package/dist/ai/utils/parseAiMessagePart.d.ts +2 -0
  46. package/dist/ai/utils/parseAiMessagePart.js +12 -0
  47. package/dist/app/AppDefaults.d.ts +3 -0
  48. package/dist/app/AppDefaults.js +27 -0
  49. package/dist/app/DefaultApp.d.ts +6 -0
  50. package/dist/app/DefaultApp.js +43 -0
  51. package/dist/app/cookieColorSchemeManager.d.ts +6 -0
  52. package/dist/app/cookieColorSchemeManager.js +46 -0
  53. package/dist/app/defaultRequestMiddlewares.d.ts +4 -0
  54. package/dist/app/defaultRequestMiddlewares.js +24 -0
  55. package/dist/app/defaultTheme.d.ts +141 -0
  56. package/dist/app/defaultTheme.js +24 -0
  57. package/dist/functions/getCookie.d.ts +3 -0
  58. package/dist/functions/getCookie.js +8 -0
  59. package/dist/functions/setCookie.d.ts +10 -0
  60. package/dist/functions/setCookie.js +19 -0
  61. package/dist/functions/setCookies.d.ts +14 -0
  62. package/dist/functions/setCookies.js +13 -0
  63. package/dist/hooks/useMutation.d.ts +4 -0
  64. package/dist/hooks/useMutation.js +8 -0
  65. package/dist/hooks/useMutationWithInvalidate.d.ts +4 -0
  66. package/dist/hooks/useMutationWithInvalidate.js +16 -0
  67. package/{src/index.ts → dist/index.d.ts} +5 -45
  68. package/dist/index.js +26 -0
  69. package/{src → dist}/styles.css +11 -21
  70. package/dist/surreal/connection.d.ts +9 -0
  71. package/dist/surreal/connection.js +49 -0
  72. package/dist/surreal/deafaultCrud.d.ts +2 -0
  73. package/dist/surreal/deafaultCrud.js +18 -0
  74. package/dist/surreal/deserialize.d.ts +17 -0
  75. package/dist/surreal/deserialize.js +46 -0
  76. package/dist/surreal/encryption.d.ts +6 -0
  77. package/dist/surreal/encryption.js +30 -0
  78. package/dist/ui/AnimatedChevron.d.ts +6 -0
  79. package/dist/ui/AnimatedChevron.js +31 -0
  80. package/dist/ui/JsonInput.d.ts +2 -0
  81. package/dist/ui/JsonInput.js +45 -0
  82. package/dist/ui/RouterLink.d.ts +16 -0
  83. package/dist/ui/RouterLink.js +36 -0
  84. package/dist/ui/editor/Content.d.ts +3 -0
  85. package/dist/ui/editor/Content.js +13 -0
  86. package/dist/ui/editor/Provider.d.ts +17 -0
  87. package/dist/ui/editor/Provider.js +80 -0
  88. package/dist/ui/editor/Root.d.ts +2 -0
  89. package/dist/ui/editor/Root.js +18 -0
  90. package/dist/ui/editor/Toolbar.d.ts +5 -0
  91. package/dist/ui/editor/Toolbar.js +156 -0
  92. package/dist/ui/editor/index.d.ts +12 -0
  93. package/dist/ui/editor/index.js +11 -0
  94. package/dist/ui/editor/types.d.ts +7 -0
  95. package/dist/ui/editor/types.js +0 -0
  96. package/dist/ui/error/DefaultError.d.ts +2 -0
  97. package/dist/ui/error/DefaultError.js +62 -0
  98. package/dist/ui/error/DefaultNotFound.d.ts +1 -0
  99. package/dist/ui/error/DefaultNotFound.js +37 -0
  100. package/dist/ui/error/Forbidden.d.ts +1 -0
  101. package/dist/ui/error/Forbidden.js +32 -0
  102. package/dist/ui/error/defaultErrorNotification.d.ts +1 -0
  103. package/dist/ui/error/defaultErrorNotification.js +8 -0
  104. package/dist/ui/error/index.js +5 -0
  105. package/dist/ui/form/blurOnError.d.ts +4 -0
  106. package/dist/ui/form/blurOnError.js +11 -0
  107. package/dist/ui/form/buttons/CancelButton.d.ts +5 -0
  108. package/dist/ui/form/buttons/CancelButton.js +44 -0
  109. package/dist/ui/form/buttons/SubmitButton.d.ts +5 -0
  110. package/dist/ui/form/buttons/SubmitButton.js +47 -0
  111. package/dist/ui/form/buttons/SubscribeActionIcon.d.ts +4 -0
  112. package/dist/ui/form/buttons/SubscribeActionIcon.js +15 -0
  113. package/dist/ui/form/buttons/SubscribeButton.d.ts +5 -0
  114. package/dist/ui/form/buttons/SubscribeButton.js +16 -0
  115. package/dist/ui/form/buttons/index.js +4 -0
  116. package/dist/ui/form/context.d.ts +83 -0
  117. package/dist/ui/form/context.js +26 -0
  118. package/dist/ui/form/fields/JsonField.d.ts +2 -0
  119. package/dist/ui/form/fields/JsonField.js +13 -0
  120. package/dist/ui/form/fields/MultiSelectField.d.ts +2 -0
  121. package/dist/ui/form/fields/MultiSelectField.js +15 -0
  122. package/dist/ui/form/fields/NumberField.d.ts +2 -0
  123. package/dist/ui/form/fields/NumberField.js +15 -0
  124. package/dist/ui/form/fields/PassowrdField.d.ts +2 -0
  125. package/dist/ui/form/fields/PassowrdField.js +18 -0
  126. package/dist/ui/form/fields/SelectField.d.ts +2 -0
  127. package/dist/ui/form/fields/SelectField.js +15 -0
  128. package/dist/ui/form/fields/SwitchField.d.ts +2 -0
  129. package/dist/ui/form/fields/SwitchField.js +15 -0
  130. package/dist/ui/form/fields/TextField.d.ts +2 -0
  131. package/dist/ui/form/fields/TextField.js +15 -0
  132. package/dist/ui/form/fields/TextPassowrdField.d.ts +2 -0
  133. package/dist/ui/form/fields/TextPassowrdField.js +51 -0
  134. package/dist/ui/form/fields/TextareaField.d.ts +2 -0
  135. package/dist/ui/form/fields/TextareaField.js +15 -0
  136. package/dist/ui/form/fields/index.js +9 -0
  137. package/dist/ui/form/fieldsSchema.d.ts +12 -0
  138. package/dist/ui/form/fieldsSchema.js +13 -0
  139. package/dist/ui/form/index.js +4 -0
  140. package/dist/ui/hoverPaper/HoverPaper.d.ts +6 -0
  141. package/dist/ui/hoverPaper/HoverPaper.js +15 -0
  142. package/dist/ui/hoverPaper/index.js +3 -0
  143. package/dist/ui/hoverPaper/usePaperHover.d.ts +4 -0
  144. package/dist/ui/hoverPaper/usePaperHover.js +9 -0
  145. package/dist/ui/saveInput/JsonInput.d.ts +6 -0
  146. package/dist/ui/saveInput/JsonInput.js +34 -0
  147. package/dist/ui/saveInput/NumberInput.d.ts +6 -0
  148. package/dist/ui/saveInput/NumberInput.js +27 -0
  149. package/dist/ui/saveInput/SaveInput.d.ts +36 -0
  150. package/dist/ui/saveInput/SaveInput.js +15 -0
  151. package/dist/ui/saveInput/Select.d.ts +6 -0
  152. package/dist/ui/saveInput/Select.js +27 -0
  153. package/dist/ui/saveInput/Switch.d.ts +6 -0
  154. package/dist/ui/saveInput/Switch.js +30 -0
  155. package/dist/ui/saveInput/TextInput.d.ts +6 -0
  156. package/dist/ui/saveInput/TextInput.js +26 -0
  157. package/dist/ui/saveInput/Textarea.d.ts +6 -0
  158. package/dist/ui/saveInput/Textarea.js +26 -0
  159. package/dist/ui/saveInput/index.js +2 -0
  160. package/{src/ui/scrollArea/ScrollArea.tsx → dist/ui/scrollArea/ScrollArea.d.ts} +10 -41
  161. package/dist/ui/scrollArea/ScrollArea.js +30 -0
  162. package/dist/ui/scrollArea/ScrollAreaButton.d.ts +5 -0
  163. package/dist/ui/scrollArea/ScrollAreaButton.js +51 -0
  164. package/dist/ui/scrollArea/ScrollAreaContent.d.ts +6 -0
  165. package/dist/ui/scrollArea/ScrollAreaContent.js +29 -0
  166. package/{src/ui/scrollArea/context.tsx → dist/ui/scrollArea/context.d.ts} +3 -18
  167. package/dist/ui/scrollArea/context.js +10 -0
  168. package/dist/ui/scrollArea/index.d.ts +3 -0
  169. package/dist/ui/scrollArea/index.js +3 -0
  170. package/dist/ui/scrollArea/types.d.ts +65 -0
  171. package/dist/ui/scrollArea/types.js +0 -0
  172. package/dist/ui/scrollArea/useScrollArea.d.ts +9 -0
  173. package/dist/ui/scrollArea/useScrollArea.js +146 -0
  174. package/package.json +4 -1
  175. package/rslib.config.ts +0 -21
  176. package/src/ai/ui/conversation/ConversationContext.ts +0 -21
  177. package/src/ai/ui/conversation/ConversationProvider.tsx +0 -21
  178. package/src/ai/ui/conversation/Empty.tsx +0 -15
  179. package/src/ai/ui/conversation/File.tsx +0 -40
  180. package/src/ai/ui/conversation/FileIcon.tsx +0 -143
  181. package/src/ai/ui/conversation/Loader.tsx +0 -8
  182. package/src/ai/ui/conversation/Message.tsx +0 -34
  183. package/src/ai/ui/conversation/Root.tsx +0 -24
  184. package/src/ai/ui/conversation/index.ts +0 -16
  185. package/src/ai/ui/conversation/useChatMessage.ts +0 -13
  186. package/src/ai/ui/promptInput/File.tsx +0 -98
  187. package/src/ai/ui/promptInput/FileIcon.tsx +0 -149
  188. package/src/ai/ui/promptInput/Footer.tsx +0 -5
  189. package/src/ai/ui/promptInput/PromptInputContext.ts +0 -24
  190. package/src/ai/ui/promptInput/PromptInputProvider.tsx +0 -54
  191. package/src/ai/ui/promptInput/Root.tsx +0 -29
  192. package/src/ai/ui/promptInput/Submit.tsx +0 -39
  193. package/src/ai/ui/promptInput/Textarea.tsx +0 -39
  194. package/src/ai/ui/promptInput/index.ts +0 -15
  195. package/src/ai/ui/promptInput/types.ts +0 -9
  196. package/src/ai/utils/convertFileUIPartBlobToDataURL.ts +0 -29
  197. package/src/ai/utils/parseAiMessagePart.ts +0 -19
  198. package/src/app/AppDefaults.tsx +0 -21
  199. package/src/app/DefaultApp.tsx +0 -50
  200. package/src/app/cookieColorSchemeManager.ts +0 -70
  201. package/src/app/defaultRequestMiddlewares.ts +0 -22
  202. package/src/app/defaultTheme.ts +0 -22
  203. package/src/functions/getCookie.ts +0 -36
  204. package/src/functions/setCookie.ts +0 -29
  205. package/src/functions/setCookies.ts +0 -24
  206. package/src/hooks/useMutation.ts +0 -14
  207. package/src/hooks/useMutationWithInvalidate.ts +0 -23
  208. package/src/surreal/connection.ts +0 -72
  209. package/src/surreal/deafaultCrud.ts +0 -25
  210. package/src/surreal/deserialize.ts +0 -144
  211. package/src/surreal/encryption.ts +0 -51
  212. package/src/ui/AnimatedChevron.tsx +0 -32
  213. package/src/ui/JsonInput.tsx +0 -52
  214. package/src/ui/RouterLink.tsx +0 -78
  215. package/src/ui/editor/Content.tsx +0 -11
  216. package/src/ui/editor/Provider.tsx +0 -96
  217. package/src/ui/editor/Root.tsx +0 -25
  218. package/src/ui/editor/Toolbar.tsx +0 -92
  219. package/src/ui/editor/index.ts +0 -13
  220. package/src/ui/editor/types.ts +0 -7
  221. package/src/ui/error/DefaultError.tsx +0 -60
  222. package/src/ui/error/DefaultNotFound.tsx +0 -19
  223. package/src/ui/error/Forbidden.tsx +0 -18
  224. package/src/ui/error/defaultErrorNotification.ts +0 -9
  225. package/src/ui/form/blurOnError.ts +0 -21
  226. package/src/ui/form/buttons/CancelButton.tsx +0 -42
  227. package/src/ui/form/buttons/SubmitButton.tsx +0 -43
  228. package/src/ui/form/buttons/SubscribeActionIcon.tsx +0 -18
  229. package/src/ui/form/buttons/SubscribeButton.tsx +0 -17
  230. package/src/ui/form/context.ts +0 -45
  231. package/src/ui/form/fields/JsonField.tsx +0 -16
  232. package/src/ui/form/fields/MultiSelectField.tsx +0 -17
  233. package/src/ui/form/fields/NumberField.tsx +0 -17
  234. package/src/ui/form/fields/PassowrdField.tsx +0 -20
  235. package/src/ui/form/fields/SelectField.tsx +0 -17
  236. package/src/ui/form/fields/SwitchField.tsx +0 -17
  237. package/src/ui/form/fields/TextField.tsx +0 -17
  238. package/src/ui/form/fields/TextPassowrdField.tsx +0 -51
  239. package/src/ui/form/fields/TextareaField.tsx +0 -17
  240. package/src/ui/form/fieldsSchema.ts +0 -24
  241. package/src/ui/hoverPaper/HoverPaper.tsx +0 -17
  242. package/src/ui/hoverPaper/usePaperHover.ts +0 -9
  243. package/src/ui/saveInput/JsonInput.tsx +0 -40
  244. package/src/ui/saveInput/NumberInput.tsx +0 -40
  245. package/src/ui/saveInput/SaveInput.tsx +0 -15
  246. package/src/ui/saveInput/Select.tsx +0 -41
  247. package/src/ui/saveInput/Switch.tsx +0 -46
  248. package/src/ui/saveInput/TextInput.tsx +0 -40
  249. package/src/ui/saveInput/Textarea.tsx +0 -40
  250. package/src/ui/scrollArea/ARCH.md +0 -204
  251. package/src/ui/scrollArea/README.md +0 -369
  252. package/src/ui/scrollArea/ScrollAreaButton.tsx +0 -56
  253. package/src/ui/scrollArea/ScrollAreaContent.tsx +0 -36
  254. package/src/ui/scrollArea/index.ts +0 -10
  255. package/src/ui/scrollArea/types.ts +0 -77
  256. package/src/ui/scrollArea/useScrollArea.ts +0 -227
  257. package/tsconfig.json +0 -14
  258. /package/{src/ui/error/index.ts → dist/ui/error/index.d.ts} +0 -0
  259. /package/{src/ui/form/buttons/index.ts → dist/ui/form/buttons/index.d.ts} +0 -0
  260. /package/{src/ui/form/fields/index.ts → dist/ui/form/fields/index.d.ts} +0 -0
  261. /package/{src/ui/form/index.ts → dist/ui/form/index.d.ts} +0 -0
  262. /package/{src/ui/hoverPaper/index.ts → dist/ui/hoverPaper/index.d.ts} +0 -0
  263. /package/{src/ui/saveInput/index.ts → dist/ui/saveInput/index.d.ts} +0 -0
@@ -0,0 +1,8 @@
1
+ import { notifications } from "@mantine/notifications";
2
+ const defaultErrorNotification = (error)=>notifications.show({
3
+ title: 'Системная ошибка',
4
+ message: error.message,
5
+ color: 'red',
6
+ autoClose: false
7
+ });
8
+ export { defaultErrorNotification };
@@ -0,0 +1,5 @@
1
+ import { DefaultError } from "./DefaultError.js";
2
+ import { DefaultNotFound } from "./DefaultNotFound.js";
3
+ import { defaultErrorNotification } from "./defaultErrorNotification.js";
4
+ import { Forbidden } from "./Forbidden.js";
5
+ export { DefaultError, DefaultNotFound, Forbidden, defaultErrorNotification };
@@ -0,0 +1,4 @@
1
+ import type { AnyFormApi } from '@tanstack/react-form';
2
+ export declare const blurOnError: ({ formApi }: {
3
+ formApi: AnyFormApi;
4
+ }) => void;
@@ -0,0 +1,11 @@
1
+ const blurOnError = ({ formApi })=>{
2
+ const inputNames = Array.from(new Set(Object.keys(formApi.state.fieldMeta).filter((i)=>formApi.state.fieldMeta[i]?.errors.length)));
3
+ for (const inputName of inputNames){
4
+ const input = document.querySelector(`#form input[name="${inputName}"]`);
5
+ if (input) {
6
+ input.focus();
7
+ break;
8
+ }
9
+ }
10
+ };
11
+ export { blurOnError };
@@ -0,0 +1,5 @@
1
+ import { type ButtonProps } from '@mantine/core';
2
+ export declare const CancelButton: (props: ButtonProps & {
3
+ label?: string;
4
+ onClick?: () => void;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,44 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Button } from "@mantine/core";
3
+ import { useFormContext } from "../context.js";
4
+ const CancelButton = (props)=>{
5
+ const form = useFormContext();
6
+ return /*#__PURE__*/ jsx(form.Subscribe, {
7
+ selector: (state)=>state.isSubmitting,
8
+ children: (isSubmitting)=>/*#__PURE__*/ jsx(Button, {
9
+ type: "reset",
10
+ size: "xs",
11
+ variant: "light",
12
+ leftSection: /*#__PURE__*/ jsxs("svg", {
13
+ xmlns: "http://www.w3.org/2000/svg",
14
+ width: "16",
15
+ height: "16",
16
+ viewBox: "0 0 16 16",
17
+ fill: "none",
18
+ stroke: "currentColor",
19
+ strokeWidth: "2",
20
+ strokeLinecap: "round",
21
+ strokeLinejoin: "round",
22
+ role: "img",
23
+ "aria-label": "Cancel",
24
+ children: [
25
+ /*#__PURE__*/ jsx("path", {
26
+ stroke: "none",
27
+ d: "M0 0h24v24H0z",
28
+ fill: "none"
29
+ }),
30
+ /*#__PURE__*/ jsx("path", {
31
+ d: "M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"
32
+ }),
33
+ /*#__PURE__*/ jsx("path", {
34
+ d: "M18.364 5.636l-12.728 12.728"
35
+ })
36
+ ]
37
+ }),
38
+ disabled: isSubmitting,
39
+ ...props,
40
+ children: props.label || 'Отмена'
41
+ })
42
+ });
43
+ };
44
+ export { CancelButton };
@@ -0,0 +1,5 @@
1
+ import { type ButtonProps } from '@mantine/core';
2
+ export declare const SubmitButton: (props: ButtonProps & {
3
+ label?: string;
4
+ onClick?: () => void;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,47 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { Button } from "@mantine/core";
3
+ import { useFormContext } from "../context.js";
4
+ const SubmitButton = (props)=>{
5
+ const form = useFormContext();
6
+ return /*#__PURE__*/ jsx(form.Subscribe, {
7
+ selector: (state)=>state,
8
+ children: (state)=>/*#__PURE__*/ jsx(Button, {
9
+ type: "submit",
10
+ size: "xs",
11
+ leftSection: /*#__PURE__*/ jsxs("svg", {
12
+ xmlns: "http://www.w3.org/2000/svg",
13
+ width: "20",
14
+ height: "20",
15
+ viewBox: "0 0 20 20",
16
+ fill: "none",
17
+ stroke: "currentColor",
18
+ strokeWidth: "2",
19
+ strokeLinecap: "round",
20
+ strokeLinejoin: "round",
21
+ role: "img",
22
+ "aria-label": "Submit",
23
+ children: [
24
+ /*#__PURE__*/ jsx("path", {
25
+ stroke: "none",
26
+ d: "M0 0h24v24H0z",
27
+ fill: "none"
28
+ }),
29
+ /*#__PURE__*/ jsx("path", {
30
+ d: "M6 4h10l4 4v10a2 2 0 0 1 -2 2h-12a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2"
31
+ }),
32
+ /*#__PURE__*/ jsx("path", {
33
+ d: "M10 14a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"
34
+ }),
35
+ /*#__PURE__*/ jsx("path", {
36
+ d: "M14 4l0 4l-6 0l0 -4"
37
+ })
38
+ ]
39
+ }),
40
+ loading: state.isSubmitting,
41
+ disabled: !state.isDirty,
42
+ ...props,
43
+ children: props.label || 'Сохранить'
44
+ })
45
+ });
46
+ };
47
+ export { SubmitButton };
@@ -0,0 +1,4 @@
1
+ import { type ActionIconProps } from '@mantine/core';
2
+ export declare const SubscribeActionIcon: (props: ActionIconProps & {
3
+ onClick?: () => void;
4
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { ActionIcon } from "@mantine/core";
3
+ import { useFormContext } from "../context.js";
4
+ const SubscribeActionIcon = (props)=>{
5
+ const form = useFormContext();
6
+ return /*#__PURE__*/ jsx(form.Subscribe, {
7
+ selector: (state)=>state.isSubmitting,
8
+ children: (isSubmitting)=>/*#__PURE__*/ jsx(ActionIcon, {
9
+ disabled: isSubmitting,
10
+ ...props,
11
+ children: props.children
12
+ })
13
+ });
14
+ };
15
+ export { SubscribeActionIcon };
@@ -0,0 +1,5 @@
1
+ import { type ButtonProps } from '@mantine/core';
2
+ export declare const SubscribeButton: (props: ButtonProps & {
3
+ label: string;
4
+ onClick?: () => void;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,16 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Button } from "@mantine/core";
3
+ import { useFormContext } from "../context.js";
4
+ const SubscribeButton = (props)=>{
5
+ const form = useFormContext();
6
+ return /*#__PURE__*/ jsx(form.Subscribe, {
7
+ selector: (state)=>state.isSubmitting,
8
+ children: (isSubmitting)=>/*#__PURE__*/ jsx(Button, {
9
+ type: "button",
10
+ disabled: isSubmitting,
11
+ ...props,
12
+ children: props.label
13
+ })
14
+ });
15
+ };
16
+ export { SubscribeButton };
@@ -0,0 +1,4 @@
1
+ export * from "./CancelButton.js";
2
+ export * from "./SubmitButton.js";
3
+ export * from "./SubscribeActionIcon.js";
4
+ export * from "./SubscribeButton.js";
@@ -0,0 +1,83 @@
1
+ declare const useFieldContext: <TData>() => import("@tanstack/form-core").FieldApi<any, string, TData, any, any, any, any, any, any, any, any, any, any, any, any, any, any, any, any, any, any, any, any>, useFormContext: () => import("@tanstack/react-form").ReactFormExtendedApi<Record<string, never>, any, any, any, any, any, any, any, any, any, any, any>;
2
+ declare const useAppForm: <TFormData, TOnMount extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnChange extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnChangeAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnBlur extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnBlurAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnSubmit extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnSubmitAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnDynamic extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnDynamicAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnServer extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TSubmitMeta>(props: import("@tanstack/form-core").FormOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta>) => import("@tanstack/react-form").AppFieldExtendedReactFormApi<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta, {
3
+ readonly TextField: (props: import("@mantine/core").TextInputProps) => import("react/jsx-runtime").JSX.Element;
4
+ readonly NumberField: (props: import("@mantine/core").NumberInputProps) => import("react/jsx-runtime").JSX.Element;
5
+ readonly TextareaField: (props: import("@mantine/core").TextareaProps) => import("react/jsx-runtime").JSX.Element;
6
+ readonly TextPassowrdField: (props: import("@mantine/core").TextInputProps) => import("react/jsx-runtime").JSX.Element;
7
+ readonly PassowrdField: (props: import("@mantine/core").PasswordInputProps) => import("react/jsx-runtime").JSX.Element;
8
+ readonly SelectField: (props: import("@mantine/core").SelectProps) => import("react/jsx-runtime").JSX.Element;
9
+ readonly MultiSelectField: (props: import("@mantine/core").MultiSelectProps) => import("react/jsx-runtime").JSX.Element;
10
+ readonly SwitchField: (props: import("@mantine/core").SwitchProps) => import("react/jsx-runtime").JSX.Element;
11
+ readonly JsonField: (props: import("@uiw/react-codemirror").ReactCodeMirrorProps) => import("react/jsx-runtime").JSX.Element;
12
+ }, {
13
+ readonly SubmitButton: (props: import("@mantine/core").ButtonProps & {
14
+ label?: string;
15
+ onClick?: () => void;
16
+ }) => import("react/jsx-runtime").JSX.Element;
17
+ readonly CancelButton: (props: import("@mantine/core").ButtonProps & {
18
+ label?: string;
19
+ onClick?: () => void;
20
+ }) => import("react/jsx-runtime").JSX.Element;
21
+ readonly SubscribeButton: (props: import("@mantine/core").ButtonProps & {
22
+ label: string;
23
+ onClick?: () => void;
24
+ }) => import("react/jsx-runtime").JSX.Element;
25
+ readonly SubscribeActionIcon: (props: import("@mantine/core").ActionIconProps & {
26
+ onClick?: () => void;
27
+ }) => import("react/jsx-runtime").JSX.Element;
28
+ }>, withForm: <TFormData, TOnMount extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnChange extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnChangeAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnBlur extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnBlurAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnSubmit extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnSubmitAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnDynamic extends import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined, TOnDynamicAsync extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TOnServer extends import("@tanstack/form-core").FormAsyncValidateOrFn<TFormData> | undefined, TSubmitMeta, TRenderProps extends object = {}>({ render, props, }: import("@tanstack/react-form").WithFormProps<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta, {
29
+ readonly TextField: (props: import("@mantine/core").TextInputProps) => import("react/jsx-runtime").JSX.Element;
30
+ readonly NumberField: (props: import("@mantine/core").NumberInputProps) => import("react/jsx-runtime").JSX.Element;
31
+ readonly TextareaField: (props: import("@mantine/core").TextareaProps) => import("react/jsx-runtime").JSX.Element;
32
+ readonly TextPassowrdField: (props: import("@mantine/core").TextInputProps) => import("react/jsx-runtime").JSX.Element;
33
+ readonly PassowrdField: (props: import("@mantine/core").PasswordInputProps) => import("react/jsx-runtime").JSX.Element;
34
+ readonly SelectField: (props: import("@mantine/core").SelectProps) => import("react/jsx-runtime").JSX.Element;
35
+ readonly MultiSelectField: (props: import("@mantine/core").MultiSelectProps) => import("react/jsx-runtime").JSX.Element;
36
+ readonly SwitchField: (props: import("@mantine/core").SwitchProps) => import("react/jsx-runtime").JSX.Element;
37
+ readonly JsonField: (props: import("@uiw/react-codemirror").ReactCodeMirrorProps) => import("react/jsx-runtime").JSX.Element;
38
+ }, {
39
+ readonly SubmitButton: (props: import("@mantine/core").ButtonProps & {
40
+ label?: string;
41
+ onClick?: () => void;
42
+ }) => import("react/jsx-runtime").JSX.Element;
43
+ readonly CancelButton: (props: import("@mantine/core").ButtonProps & {
44
+ label?: string;
45
+ onClick?: () => void;
46
+ }) => import("react/jsx-runtime").JSX.Element;
47
+ readonly SubscribeButton: (props: import("@mantine/core").ButtonProps & {
48
+ label: string;
49
+ onClick?: () => void;
50
+ }) => import("react/jsx-runtime").JSX.Element;
51
+ readonly SubscribeActionIcon: (props: import("@mantine/core").ActionIconProps & {
52
+ onClick?: () => void;
53
+ }) => import("react/jsx-runtime").JSX.Element;
54
+ }, TRenderProps>) => import("react").FunctionComponent<import("react").PropsWithChildren<NoInfer<[unknown] extends [TRenderProps] ? any : TRenderProps> & {
55
+ form: import("@tanstack/react-form").AppFieldExtendedReactFormApi<[unknown] extends [TFormData] ? any : TFormData, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnMount] ? [TOnMount] extends [TOnMount & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnMount : TOnMount, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnChange] ? [TOnChange] extends [TOnChange & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnChange : TOnChange, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnChangeAsync] ? [TOnChangeAsync] extends [TOnChangeAsync & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnChangeAsync : TOnChangeAsync, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnBlur] ? [TOnBlur] extends [TOnBlur & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnBlur : TOnBlur, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnBlurAsync] ? [TOnBlurAsync] extends [TOnBlurAsync & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnBlurAsync : TOnBlurAsync, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnSubmit] ? [TOnSubmit] extends [TOnSubmit & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnSubmit : TOnSubmit, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnSubmitAsync] ? [TOnSubmitAsync] extends [TOnSubmitAsync & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnSubmitAsync : TOnSubmitAsync, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnDynamic] ? [TOnDynamic] extends [TOnDynamic & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnDynamic : TOnDynamic, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnDynamicAsync] ? [TOnDynamicAsync] extends [TOnDynamicAsync & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnDynamicAsync : TOnDynamicAsync, [import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined] extends [TOnServer] ? [TOnServer] extends [TOnServer & (import("@tanstack/form-core").FormValidateOrFn<TFormData> | undefined)] ? any : TOnServer : TOnServer, [unknown] extends [TSubmitMeta] ? any : TSubmitMeta, {
56
+ readonly TextField: (props: import("@mantine/core").TextInputProps) => import("react/jsx-runtime").JSX.Element;
57
+ readonly NumberField: (props: import("@mantine/core").NumberInputProps) => import("react/jsx-runtime").JSX.Element;
58
+ readonly TextareaField: (props: import("@mantine/core").TextareaProps) => import("react/jsx-runtime").JSX.Element;
59
+ readonly TextPassowrdField: (props: import("@mantine/core").TextInputProps) => import("react/jsx-runtime").JSX.Element;
60
+ readonly PassowrdField: (props: import("@mantine/core").PasswordInputProps) => import("react/jsx-runtime").JSX.Element;
61
+ readonly SelectField: (props: import("@mantine/core").SelectProps) => import("react/jsx-runtime").JSX.Element;
62
+ readonly MultiSelectField: (props: import("@mantine/core").MultiSelectProps) => import("react/jsx-runtime").JSX.Element;
63
+ readonly SwitchField: (props: import("@mantine/core").SwitchProps) => import("react/jsx-runtime").JSX.Element;
64
+ readonly JsonField: (props: import("@uiw/react-codemirror").ReactCodeMirrorProps) => import("react/jsx-runtime").JSX.Element;
65
+ }, {
66
+ readonly SubmitButton: (props: import("@mantine/core").ButtonProps & {
67
+ label?: string;
68
+ onClick?: () => void;
69
+ }) => import("react/jsx-runtime").JSX.Element;
70
+ readonly CancelButton: (props: import("@mantine/core").ButtonProps & {
71
+ label?: string;
72
+ onClick?: () => void;
73
+ }) => import("react/jsx-runtime").JSX.Element;
74
+ readonly SubscribeButton: (props: import("@mantine/core").ButtonProps & {
75
+ label: string;
76
+ onClick?: () => void;
77
+ }) => import("react/jsx-runtime").JSX.Element;
78
+ readonly SubscribeActionIcon: (props: import("@mantine/core").ActionIconProps & {
79
+ onClick?: () => void;
80
+ }) => import("react/jsx-runtime").JSX.Element;
81
+ }>;
82
+ }>>;
83
+ export { useAppForm, useFieldContext, useFormContext, withForm };
@@ -0,0 +1,26 @@
1
+ import { createFormHook, createFormHookContexts } from "@tanstack/react-form";
2
+ import { CancelButton, SubmitButton, SubscribeActionIcon, SubscribeButton } from "./buttons/index.js";
3
+ import { JsonField, MultiSelectField, NumberField, PassowrdField, SelectField, SwitchField, TextField, TextPassowrdField, TextareaField } from "./fields/index.js";
4
+ const { fieldContext, useFieldContext, formContext, useFormContext } = createFormHookContexts();
5
+ const { useAppForm, withForm } = createFormHook({
6
+ fieldComponents: {
7
+ TextField: TextField,
8
+ NumberField: NumberField,
9
+ TextareaField: TextareaField,
10
+ TextPassowrdField: TextPassowrdField,
11
+ PassowrdField: PassowrdField,
12
+ SelectField: SelectField,
13
+ MultiSelectField: MultiSelectField,
14
+ SwitchField: SwitchField,
15
+ JsonField: JsonField
16
+ },
17
+ formComponents: {
18
+ SubmitButton: SubmitButton,
19
+ CancelButton: CancelButton,
20
+ SubscribeButton: SubscribeButton,
21
+ SubscribeActionIcon: SubscribeActionIcon
22
+ },
23
+ fieldContext,
24
+ formContext
25
+ });
26
+ export { useAppForm, useFieldContext, useFormContext, withForm };
@@ -0,0 +1,2 @@
1
+ import type { ReactCodeMirrorProps } from '@uiw/react-codemirror';
2
+ export declare const JsonField: (props: ReactCodeMirrorProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { JsonInput } from "../../JsonInput.js";
3
+ import { useFieldContext } from "../context.js";
4
+ const JsonField = (props)=>{
5
+ const field = useFieldContext();
6
+ return /*#__PURE__*/ jsx(JsonInput, {
7
+ value: field.state.value || '',
8
+ onChange: field.handleChange,
9
+ onBlur: field.handleBlur,
10
+ ...props
11
+ });
12
+ };
13
+ export { JsonField };
@@ -0,0 +1,2 @@
1
+ import { type MultiSelectProps } from '@mantine/core';
2
+ export declare const MultiSelectField: (props: MultiSelectProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { MultiSelect } from "@mantine/core";
3
+ import { useFieldContext } from "../context.js";
4
+ const MultiSelectField = (props)=>{
5
+ const field = useFieldContext();
6
+ return /*#__PURE__*/ jsx(MultiSelect, {
7
+ name: field.name,
8
+ value: field.state.value || [],
9
+ onChange: field.handleChange,
10
+ onBlur: field.handleBlur,
11
+ error: field.state.meta.errors.map((error)=>error.message).join(', '),
12
+ ...props
13
+ });
14
+ };
15
+ export { MultiSelectField };
@@ -0,0 +1,2 @@
1
+ import { type NumberInputProps } from '@mantine/core';
2
+ export declare const NumberField: (props: NumberInputProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { NumberInput } from "@mantine/core";
3
+ import { useFieldContext } from "../context.js";
4
+ const NumberField = (props)=>{
5
+ const field = useFieldContext();
6
+ return /*#__PURE__*/ jsx(NumberInput, {
7
+ name: field.name,
8
+ value: field.state.value || '',
9
+ onChange: (v)=>field.handleChange(v),
10
+ onBlur: field.handleBlur,
11
+ error: field.state.meta.errors.map((error)=>error.message).join(', '),
12
+ ...props
13
+ });
14
+ };
15
+ export { NumberField };
@@ -0,0 +1,2 @@
1
+ import { type PasswordInputProps } from '@mantine/core';
2
+ export declare const PassowrdField: (props: PasswordInputProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,18 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { PasswordInput } from "@mantine/core";
3
+ import { useFieldContext } from "../context.js";
4
+ const PassowrdField = (props)=>{
5
+ const field = useFieldContext();
6
+ return /*#__PURE__*/ jsx(PasswordInput, {
7
+ size: "lg",
8
+ label: "Пароль",
9
+ placeholder: "Введите пароль",
10
+ name: field.name,
11
+ value: field.state.value || '',
12
+ onChange: (e)=>field.handleChange(e.target.value),
13
+ onBlur: field.handleBlur,
14
+ error: field.state.meta.errors.map((error)=>error.message).join(', '),
15
+ ...props
16
+ });
17
+ };
18
+ export { PassowrdField };
@@ -0,0 +1,2 @@
1
+ import { type SelectProps } from '@mantine/core';
2
+ export declare const SelectField: (props: SelectProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Select } from "@mantine/core";
3
+ import { useFieldContext } from "../context.js";
4
+ const SelectField = (props)=>{
5
+ const field = useFieldContext();
6
+ return /*#__PURE__*/ jsx(Select, {
7
+ name: field.name,
8
+ value: field.state.value,
9
+ onChange: field.handleChange,
10
+ onBlur: field.handleBlur,
11
+ error: field.state.meta.errors.map((error)=>error.message).join(', '),
12
+ ...props
13
+ });
14
+ };
15
+ export { SelectField };
@@ -0,0 +1,2 @@
1
+ import { type SwitchProps } from '@mantine/core';
2
+ export declare const SwitchField: (props: SwitchProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Switch } from "@mantine/core";
3
+ import { useFieldContext } from "../context.js";
4
+ const SwitchField = (props)=>{
5
+ const field = useFieldContext();
6
+ return /*#__PURE__*/ jsx(Switch, {
7
+ name: field.name,
8
+ checked: field.state.value,
9
+ onChange: (e)=>field.handleChange(e.currentTarget.checked),
10
+ error: field.state.meta.errors.map((error)=>error.message).join(', '),
11
+ w: "fit-content",
12
+ ...props
13
+ });
14
+ };
15
+ export { SwitchField };
@@ -0,0 +1,2 @@
1
+ import { type TextInputProps } from '@mantine/core';
2
+ export declare const TextField: (props: TextInputProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { TextInput } from "@mantine/core";
3
+ import { useFieldContext } from "../context.js";
4
+ const TextField = (props)=>{
5
+ const field = useFieldContext();
6
+ return /*#__PURE__*/ jsx(TextInput, {
7
+ name: field.name,
8
+ value: field.state.value || '',
9
+ onChange: (e)=>field.handleChange(e.target.value),
10
+ onBlur: field.handleBlur,
11
+ error: field.state.meta.errors.map((error)=>error.message).join(', '),
12
+ ...props
13
+ });
14
+ };
15
+ export { TextField };
@@ -0,0 +1,2 @@
1
+ import { type TextInputProps } from '@mantine/core';
2
+ export declare const TextPassowrdField: (props: TextInputProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,51 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { ActionIcon, TextInput } from "@mantine/core";
3
+ import omgopass from "omgopass";
4
+ import { useFieldContext } from "../context.js";
5
+ const TextPassowrdField = (props)=>{
6
+ const field = useFieldContext();
7
+ return /*#__PURE__*/ jsx(TextInput, {
8
+ label: "Пароль",
9
+ placeholder: "Введите пароль",
10
+ rightSection: /*#__PURE__*/ jsx(ActionIcon, {
11
+ variant: "light",
12
+ onClick: ()=>field.setValue(omgopass({
13
+ minSyllableLength: 2,
14
+ maxSyllableLength: 2
15
+ })),
16
+ children: /*#__PURE__*/ jsxs("svg", {
17
+ xmlns: "http://www.w3.org/2000/svg",
18
+ width: "16",
19
+ height: "16",
20
+ viewBox: "0 0 16 16",
21
+ fill: "none",
22
+ stroke: "currentColor",
23
+ strokeWidth: "2",
24
+ strokeLinecap: "round",
25
+ strokeLinejoin: "round",
26
+ role: "img",
27
+ "aria-label": "Refresh",
28
+ children: [
29
+ /*#__PURE__*/ jsx("path", {
30
+ stroke: "none",
31
+ d: "M0 0h24v24H0z",
32
+ fill: "none"
33
+ }),
34
+ /*#__PURE__*/ jsx("path", {
35
+ d: "M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4"
36
+ }),
37
+ /*#__PURE__*/ jsx("path", {
38
+ d: "M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4"
39
+ })
40
+ ]
41
+ })
42
+ }),
43
+ name: field.name,
44
+ value: field.state.value || '',
45
+ onChange: (e)=>field.handleChange(e.target.value),
46
+ onBlur: field.handleBlur,
47
+ error: field.state.meta.errors.map((error)=>error.message).join(', '),
48
+ ...props
49
+ });
50
+ };
51
+ export { TextPassowrdField };
@@ -0,0 +1,2 @@
1
+ import { type TextareaProps } from '@mantine/core';
2
+ export declare const TextareaField: (props: TextareaProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Textarea } from "@mantine/core";
3
+ import { useFieldContext } from "../context.js";
4
+ const TextareaField = (props)=>{
5
+ const field = useFieldContext();
6
+ return /*#__PURE__*/ jsx(Textarea, {
7
+ name: field.name,
8
+ value: field.state.value || '',
9
+ onChange: (e)=>field.handleChange(e.target.value),
10
+ onBlur: field.handleBlur,
11
+ error: field.state.meta.errors.map((error)=>error.message).join(', '),
12
+ ...props
13
+ });
14
+ };
15
+ export { TextareaField };
@@ -0,0 +1,9 @@
1
+ export * from "./JsonField.js";
2
+ export * from "./MultiSelectField.js";
3
+ export * from "./NumberField.js";
4
+ export * from "./PassowrdField.js";
5
+ export * from "./SelectField.js";
6
+ export * from "./SwitchField.js";
7
+ export * from "./TextareaField.js";
8
+ export * from "./TextField.js";
9
+ export * from "./TextPassowrdField.js";
@@ -0,0 +1,12 @@
1
+ import z from 'zod/v4';
2
+ export declare const fieldsSchema: {
3
+ id: z.ZodString;
4
+ str: z.ZodString;
5
+ strArr: z.ZodArray<z.ZodString>;
6
+ strMin3: z.ZodString;
7
+ select: z.ZodString;
8
+ email: z.ZodEmail;
9
+ username: z.ZodString;
10
+ password: z.ZodString;
11
+ kebab: z.ZodString;
12
+ };
@@ -0,0 +1,13 @@
1
+ import v4 from "zod/v4";
2
+ const fieldsSchema = {
3
+ id: v4.string().min(1, 'ID не может быть пустым'),
4
+ str: v4.string().min(1, 'Значение не может быть пустым'),
5
+ strArr: v4.array(v4.string().min(1, 'Значение не может быть пустым')),
6
+ strMin3: v4.string().min(3, 'Должно содержать не менее 3 символов'),
7
+ select: v4.string().min(1, 'Выберите значение'),
8
+ email: v4.email('Неверный формат email'),
9
+ username: v4.string().min(3, 'Должен быть не менее 3 символов').max(24, 'Должен быть не более 24 символов'),
10
+ password: v4.string('Пароль не может быть пустым').min(8, 'Пароль должен содержать не менее 8 символов'),
11
+ kebab: v4.string().min(3, 'Минимум 3 символа').regex(/^[a-z0-9]+(-[a-z0-9]+)*$/, 'Должен быть в формате kebab-case (только строчные буквы, цифры и дефисы)')
12
+ };
13
+ export { fieldsSchema };
@@ -0,0 +1,4 @@
1
+ import { blurOnError } from "./blurOnError.js";
2
+ import { useAppForm, useFieldContext, withForm } from "./context.js";
3
+ import { fieldsSchema } from "./fieldsSchema.js";
4
+ export { blurOnError, fieldsSchema, useAppForm, useFieldContext, withForm };
@@ -0,0 +1,6 @@
1
+ import { type ElementProps, type PaperProps } from '@mantine/core';
2
+ interface Props extends PaperProps, ElementProps<'div', keyof PaperProps> {
3
+ disabled?: boolean;
4
+ }
5
+ export declare const HoverPaper: import("react").ForwardRefExoticComponent<Props & import("react").RefAttributes<HTMLDivElement>>;
6
+ export {};
@@ -0,0 +1,15 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Paper } from "@mantine/core";
3
+ import { forwardRef } from "react";
4
+ const HoverPaper = /*#__PURE__*/ forwardRef(({ disabled, classNames, ...props }, ref)=>/*#__PURE__*/ jsx(Paper, {
5
+ ref: ref,
6
+ classNames: {
7
+ root: 'rolder-hover-paper-root',
8
+ ...classNames
9
+ },
10
+ mod: {
11
+ disabled
12
+ },
13
+ ...props
14
+ }));
15
+ export { HoverPaper };
@@ -0,0 +1,3 @@
1
+ import { HoverPaper } from "./HoverPaper.js";
2
+ import { usePaperHover } from "./usePaperHover.js";
3
+ export { HoverPaper, usePaperHover };
@@ -0,0 +1,4 @@
1
+ export declare const usePaperHover: () => {
2
+ paperHovered: boolean;
3
+ paperRef: (node: HTMLDivElement | null) => void;
4
+ };