@tanstack/react-form 1.23.9 → 1.25.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 (124) hide show
  1. package/dist/cjs/createFormHook.cjs +1 -0
  2. package/dist/cjs/createFormHook.cjs.map +1 -1
  3. package/dist/cjs/index.cjs +0 -2
  4. package/dist/cjs/index.cjs.map +1 -1
  5. package/dist/cjs/index.d.cts +0 -1
  6. package/dist/cjs/types.d.cts +2 -1
  7. package/dist/cjs/useField.cjs +1 -0
  8. package/dist/cjs/useField.cjs.map +1 -1
  9. package/dist/cjs/useFieldGroup.cjs +1 -0
  10. package/dist/cjs/useFieldGroup.cjs.map +1 -1
  11. package/dist/cjs/useForm.cjs +1 -0
  12. package/dist/cjs/useForm.cjs.map +1 -1
  13. package/dist/esm/createFormHook.js +1 -0
  14. package/dist/esm/createFormHook.js.map +1 -1
  15. package/dist/esm/index.d.ts +0 -1
  16. package/dist/esm/index.js +1 -3
  17. package/dist/esm/index.js.map +1 -1
  18. package/dist/esm/types.d.ts +2 -1
  19. package/dist/esm/useField.js +1 -0
  20. package/dist/esm/useField.js.map +1 -1
  21. package/dist/esm/useFieldGroup.js +1 -0
  22. package/dist/esm/useFieldGroup.js.map +1 -1
  23. package/dist/esm/useForm.js +1 -0
  24. package/dist/esm/useForm.js.map +1 -1
  25. package/package.json +4 -38
  26. package/src/createFormHook.tsx +1 -0
  27. package/src/index.ts +0 -1
  28. package/src/types.ts +21 -0
  29. package/src/useField.tsx +3 -1
  30. package/src/useFieldGroup.tsx +2 -0
  31. package/src/useForm.tsx +2 -0
  32. package/dist/cjs/nextjs/createServerValidate.cjs +0 -51
  33. package/dist/cjs/nextjs/createServerValidate.cjs.map +0 -1
  34. package/dist/cjs/nextjs/createServerValidate.d.cts +0 -9
  35. package/dist/cjs/nextjs/error.cjs +0 -11
  36. package/dist/cjs/nextjs/error.cjs.map +0 -1
  37. package/dist/cjs/nextjs/error.d.cts +0 -10
  38. package/dist/cjs/nextjs/index.cjs +0 -15
  39. package/dist/cjs/nextjs/index.cjs.map +0 -1
  40. package/dist/cjs/nextjs/index.d.cts +0 -4
  41. package/dist/cjs/nextjs/types.d.cts +0 -2
  42. package/dist/cjs/remix/createServerValidate.cjs +0 -51
  43. package/dist/cjs/remix/createServerValidate.cjs.map +0 -1
  44. package/dist/cjs/remix/createServerValidate.d.cts +0 -9
  45. package/dist/cjs/remix/error.cjs +0 -11
  46. package/dist/cjs/remix/error.cjs.map +0 -1
  47. package/dist/cjs/remix/error.d.cts +0 -10
  48. package/dist/cjs/remix/index.cjs +0 -15
  49. package/dist/cjs/remix/index.cjs.map +0 -1
  50. package/dist/cjs/remix/index.d.cts +0 -4
  51. package/dist/cjs/remix/types.d.cts +0 -2
  52. package/dist/cjs/start/createServerValidate.cjs +0 -53
  53. package/dist/cjs/start/createServerValidate.cjs.map +0 -1
  54. package/dist/cjs/start/createServerValidate.d.cts +0 -7
  55. package/dist/cjs/start/error.cjs +0 -12
  56. package/dist/cjs/start/error.cjs.map +0 -1
  57. package/dist/cjs/start/error.d.cts +0 -12
  58. package/dist/cjs/start/getFormData.cjs +0 -18
  59. package/dist/cjs/start/getFormData.cjs.map +0 -1
  60. package/dist/cjs/start/getFormData.d.cts +0 -13
  61. package/dist/cjs/start/index.cjs +0 -10
  62. package/dist/cjs/start/index.cjs.map +0 -1
  63. package/dist/cjs/start/index.d.cts +0 -4
  64. package/dist/cjs/start/types.d.cts +0 -2
  65. package/dist/cjs/start/utils.cjs +0 -21
  66. package/dist/cjs/start/utils.cjs.map +0 -1
  67. package/dist/cjs/start/utils.d.cts +0 -3
  68. package/dist/cjs/useTransform.cjs +0 -10
  69. package/dist/cjs/useTransform.cjs.map +0 -1
  70. package/dist/cjs/useTransform.d.cts +0 -2
  71. package/dist/esm/nextjs/createServerValidate.d.ts +0 -9
  72. package/dist/esm/nextjs/createServerValidate.js +0 -51
  73. package/dist/esm/nextjs/createServerValidate.js.map +0 -1
  74. package/dist/esm/nextjs/error.d.ts +0 -10
  75. package/dist/esm/nextjs/error.js +0 -11
  76. package/dist/esm/nextjs/error.js.map +0 -1
  77. package/dist/esm/nextjs/index.d.ts +0 -4
  78. package/dist/esm/nextjs/index.js +0 -9
  79. package/dist/esm/nextjs/index.js.map +0 -1
  80. package/dist/esm/nextjs/types.d.ts +0 -2
  81. package/dist/esm/remix/createServerValidate.d.ts +0 -9
  82. package/dist/esm/remix/createServerValidate.js +0 -51
  83. package/dist/esm/remix/createServerValidate.js.map +0 -1
  84. package/dist/esm/remix/error.d.ts +0 -10
  85. package/dist/esm/remix/error.js +0 -11
  86. package/dist/esm/remix/error.js.map +0 -1
  87. package/dist/esm/remix/index.d.ts +0 -4
  88. package/dist/esm/remix/index.js +0 -9
  89. package/dist/esm/remix/index.js.map +0 -1
  90. package/dist/esm/remix/types.d.ts +0 -2
  91. package/dist/esm/start/createServerValidate.d.ts +0 -7
  92. package/dist/esm/start/createServerValidate.js +0 -53
  93. package/dist/esm/start/createServerValidate.js.map +0 -1
  94. package/dist/esm/start/error.d.ts +0 -12
  95. package/dist/esm/start/error.js +0 -12
  96. package/dist/esm/start/error.js.map +0 -1
  97. package/dist/esm/start/getFormData.d.ts +0 -13
  98. package/dist/esm/start/getFormData.js +0 -18
  99. package/dist/esm/start/getFormData.js.map +0 -1
  100. package/dist/esm/start/index.d.ts +0 -4
  101. package/dist/esm/start/index.js +0 -10
  102. package/dist/esm/start/index.js.map +0 -1
  103. package/dist/esm/start/types.d.ts +0 -2
  104. package/dist/esm/start/utils.d.ts +0 -3
  105. package/dist/esm/start/utils.js +0 -21
  106. package/dist/esm/start/utils.js.map +0 -1
  107. package/dist/esm/useTransform.d.ts +0 -2
  108. package/dist/esm/useTransform.js +0 -10
  109. package/dist/esm/useTransform.js.map +0 -1
  110. package/src/nextjs/createServerValidate.ts +0 -134
  111. package/src/nextjs/error.ts +0 -25
  112. package/src/nextjs/index.ts +0 -5
  113. package/src/nextjs/types.ts +0 -21
  114. package/src/remix/createServerValidate.ts +0 -134
  115. package/src/remix/error.ts +0 -25
  116. package/src/remix/index.ts +0 -5
  117. package/src/remix/types.ts +0 -21
  118. package/src/start/createServerValidate.tsx +0 -138
  119. package/src/start/error.ts +0 -28
  120. package/src/start/getFormData.tsx +0 -22
  121. package/src/start/index.ts +0 -4
  122. package/src/start/types.ts +0 -21
  123. package/src/start/utils.ts +0 -23
  124. package/src/useTransform.ts +0 -17
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
@@ -1,4 +0,0 @@
1
- export * from '@tanstack/form-core';
2
- export * from './createServerValidate.cjs';
3
- export * from './error.cjs';
4
- export * from './types.cjs';
@@ -1,2 +0,0 @@
1
- import { FormAsyncValidateOrFn, FormState } from '@tanstack/form-core';
2
- export type ServerFormState<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> = Pick<FormState<TFormData, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, TOnServer>, 'values' | 'errors' | 'errorMap'>;
@@ -1,53 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const formCore = require("@tanstack/form-core");
4
- const server = require("@tanstack/react-start/server");
5
- const decodeFormdata = require("decode-formdata");
6
- const error = require("./error.cjs");
7
- const utils = require("./utils.cjs");
8
- const createServerValidate = (defaultOpts) => async (formData, info) => {
9
- const { onServerValidate } = defaultOpts;
10
- const runValidator = async ({
11
- value,
12
- validationSource
13
- }) => {
14
- if (formCore.isStandardSchemaValidator(onServerValidate)) {
15
- return await formCore.standardSchemaValidators.validateAsync(
16
- { value, validationSource },
17
- onServerValidate
18
- );
19
- }
20
- return onServerValidate({
21
- value,
22
- signal: void 0,
23
- formApi: void 0
24
- });
25
- };
26
- const referer = server.getHeader("referer");
27
- const data = decodeFormdata.decode(formData, info);
28
- const onServerError = await runValidator({
29
- value: data,
30
- validationSource: "form"
31
- });
32
- if (!onServerError) return data;
33
- const onServerErrorVal = formCore.isGlobalFormValidationError(onServerError) ? onServerError.form : onServerError;
34
- const formState = {
35
- errorMap: {
36
- onServer: onServerError
37
- },
38
- values: data,
39
- errors: onServerErrorVal ? [onServerErrorVal] : []
40
- };
41
- utils.setInternalTanStackCookie(formState);
42
- throw new error.ServerValidateError({
43
- response: new Response("ok", {
44
- headers: {
45
- Location: referer
46
- },
47
- status: 302
48
- }),
49
- formState
50
- });
51
- };
52
- exports.createServerValidate = createServerValidate;
53
- //# sourceMappingURL=createServerValidate.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createServerValidate.cjs","sources":["../../../src/start/createServerValidate.tsx"],"sourcesContent":["import {\n isGlobalFormValidationError,\n isStandardSchemaValidator,\n standardSchemaValidators,\n} from '@tanstack/form-core'\nimport { getHeader } from '@tanstack/react-start/server'\nimport { decode } from 'decode-formdata'\nimport { ServerValidateError } from './error'\nimport { setInternalTanStackCookie } from './utils'\nimport type { ServerFormState } from './types'\nimport type {\n FormAsyncValidateOrFn,\n FormOptions,\n FormValidateAsyncFn,\n FormValidateOrFn,\n UnwrapFormAsyncValidateOrFn,\n} from '@tanstack/form-core'\n\ninterface CreateServerValidateOptions<\n TFormData,\n TOnMount extends undefined | FormValidateOrFn<TFormData>,\n TOnChange extends undefined | FormValidateOrFn<TFormData>,\n TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnBlur extends undefined | FormValidateOrFn<TFormData>,\n TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnSubmit extends undefined | FormValidateOrFn<TFormData>,\n TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnDynamic extends undefined | FormValidateOrFn<TFormData>,\n TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n TSubmitMeta,\n> extends FormOptions<\n TFormData,\n TOnMount,\n TOnChange,\n TOnChangeAsync,\n TOnBlur,\n TOnBlurAsync,\n TOnSubmit,\n TOnSubmitAsync,\n TOnDynamic,\n TOnDynamicAsync,\n TOnServer,\n TSubmitMeta\n > {\n onServerValidate: TOnServer\n}\n\nexport const createServerValidate =\n <\n TFormData,\n TOnMount extends undefined | FormValidateOrFn<TFormData>,\n TOnChange extends undefined | FormValidateOrFn<TFormData>,\n TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnBlur extends undefined | FormValidateOrFn<TFormData>,\n TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnSubmit extends undefined | FormValidateOrFn<TFormData>,\n TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnDynamic extends undefined | FormValidateOrFn<TFormData>,\n TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n TSubmitMeta,\n >(\n defaultOpts: CreateServerValidateOptions<\n TFormData,\n TOnMount,\n TOnChange,\n TOnChangeAsync,\n TOnBlur,\n TOnBlurAsync,\n TOnSubmit,\n TOnSubmitAsync,\n TOnDynamic,\n TOnDynamicAsync,\n TOnServer,\n TSubmitMeta\n >,\n ) =>\n async (formData: FormData, info?: Parameters<typeof decode>[1]) => {\n const { onServerValidate } = defaultOpts\n\n const runValidator = async ({\n value,\n validationSource,\n }: {\n value: TFormData\n validationSource: 'form'\n }) => {\n if (isStandardSchemaValidator(onServerValidate)) {\n return await standardSchemaValidators.validateAsync(\n { value, validationSource },\n onServerValidate,\n )\n }\n return (onServerValidate as FormValidateAsyncFn<TFormData>)({\n value,\n signal: undefined as never,\n formApi: undefined as never,\n })\n }\n\n const referer = getHeader('referer')!\n\n const data = decode(formData, info) as never as TFormData\n\n const onServerError = (await runValidator({\n value: data,\n validationSource: 'form',\n })) as UnwrapFormAsyncValidateOrFn<TOnServer> | undefined\n\n if (!onServerError) return data\n\n const onServerErrorVal = (\n isGlobalFormValidationError(onServerError)\n ? onServerError.form\n : onServerError\n ) as UnwrapFormAsyncValidateOrFn<TOnServer>\n\n const formState: ServerFormState<TFormData, TOnServer> = {\n errorMap: {\n onServer: onServerError,\n },\n values: data,\n errors: onServerErrorVal ? [onServerErrorVal] : [],\n }\n\n setInternalTanStackCookie(formState)\n\n throw new ServerValidateError({\n response: new Response('ok', {\n headers: {\n Location: referer,\n },\n status: 302,\n }),\n formState: formState,\n })\n }\n"],"names":["isStandardSchemaValidator","standardSchemaValidators","getHeader","decode","isGlobalFormValidationError","setInternalTanStackCookie","ServerValidateError"],"mappings":";;;;;;;AAgDO,MAAM,uBACX,CAcE,gBAeF,OAAO,UAAoB,SAAwC;AACjE,QAAM,EAAE,qBAAqB;AAE7B,QAAM,eAAe,OAAO;AAAA,IAC1B;AAAA,IACA;AAAA,EAAA,MAII;AACJ,QAAIA,SAAAA,0BAA0B,gBAAgB,GAAG;AAC/C,aAAO,MAAMC,SAAAA,yBAAyB;AAAA,QACpC,EAAE,OAAO,iBAAA;AAAA,QACT;AAAA,MAAA;AAAA,IAEJ;AACA,WAAQ,iBAAoD;AAAA,MAC1D;AAAA,MACA,QAAQ;AAAA,MACR,SAAS;AAAA,IAAA,CACV;AAAA,EACH;AAEA,QAAM,UAAUC,OAAAA,UAAU,SAAS;AAEnC,QAAM,OAAOC,eAAAA,OAAO,UAAU,IAAI;AAElC,QAAM,gBAAiB,MAAM,aAAa;AAAA,IACxC,OAAO;AAAA,IACP,kBAAkB;AAAA,EAAA,CACnB;AAED,MAAI,CAAC,cAAe,QAAO;AAE3B,QAAM,mBACJC,SAAAA,4BAA4B,aAAa,IACrC,cAAc,OACd;AAGN,QAAM,YAAmD;AAAA,IACvD,UAAU;AAAA,MACR,UAAU;AAAA,IAAA;AAAA,IAEZ,QAAQ;AAAA,IACR,QAAQ,mBAAmB,CAAC,gBAAgB,IAAI,CAAA;AAAA,EAAC;AAGnDC,QAAAA,0BAA0B,SAAS;AAEnC,QAAM,IAAIC,MAAAA,oBAAoB;AAAA,IAC5B,UAAU,IAAI,SAAS,MAAM;AAAA,MAC3B,SAAS;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,MAEZ,QAAQ;AAAA,IAAA,CACT;AAAA,IACD;AAAA,EAAA,CACD;AACH;;"}
@@ -1,7 +0,0 @@
1
- import { decode } from 'decode-formdata';
2
- import { FormAsyncValidateOrFn, FormOptions, FormValidateOrFn } from '@tanstack/form-core';
3
- interface CreateServerValidateOptions<TFormData, TOnMount extends undefined | FormValidateOrFn<TFormData>, TOnChange extends undefined | FormValidateOrFn<TFormData>, TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnBlur extends undefined | FormValidateOrFn<TFormData>, TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnSubmit extends undefined | FormValidateOrFn<TFormData>, TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnDynamic extends undefined | FormValidateOrFn<TFormData>, TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>, TSubmitMeta> extends FormOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta> {
4
- onServerValidate: TOnServer;
5
- }
6
- export declare const createServerValidate: <TFormData, TOnMount extends undefined | FormValidateOrFn<TFormData>, TOnChange extends undefined | FormValidateOrFn<TFormData>, TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnBlur extends undefined | FormValidateOrFn<TFormData>, TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnSubmit extends undefined | FormValidateOrFn<TFormData>, TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnDynamic extends undefined | FormValidateOrFn<TFormData>, TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>, TSubmitMeta>(defaultOpts: CreateServerValidateOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta>) => (formData: FormData, info?: Parameters<typeof decode>[1]) => Promise<TFormData>;
7
- export {};
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- class ServerValidateError extends Error {
4
- constructor(options) {
5
- super("Your form has errors. Please check the fields and try again.");
6
- this.name = "ServerValidateError";
7
- this.response = options.response;
8
- this.formState = options.formState;
9
- }
10
- }
11
- exports.ServerValidateError = ServerValidateError;
12
- //# sourceMappingURL=error.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error.cjs","sources":["../../../src/start/error.ts"],"sourcesContent":["import type { ServerFormState } from './types'\nimport type { FormAsyncValidateOrFn } from '@tanstack/form-core'\n\ninterface ServerValidateErrorState<\n TFormData,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n> {\n formState: ServerFormState<TFormData, TOnServer>\n response: Response\n}\n\nexport class ServerValidateError<\n TFormData,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n >\n extends Error\n implements ServerValidateErrorState<TFormData, TOnServer>\n{\n formState: ServerFormState<TFormData, TOnServer>\n response: Response\n\n constructor(options: ServerValidateErrorState<TFormData, TOnServer>) {\n super('Your form has errors. Please check the fields and try again.')\n this.name = 'ServerValidateError'\n this.response = options.response\n this.formState = options.formState\n }\n}\n"],"names":[],"mappings":";;AAWO,MAAM,4BAIH,MAEV;AAAA,EAIE,YAAY,SAAyD;AACnE,UAAM,8DAA8D;AACpE,SAAK,OAAO;AACZ,SAAK,WAAW,QAAQ;AACxB,SAAK,YAAY,QAAQ;AAAA,EAC3B;AACF;;"}
@@ -1,12 +0,0 @@
1
- import { ServerFormState } from './types.cjs';
2
- import { FormAsyncValidateOrFn } from '@tanstack/form-core';
3
- interface ServerValidateErrorState<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> {
4
- formState: ServerFormState<TFormData, TOnServer>;
5
- response: Response;
6
- }
7
- export declare class ServerValidateError<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> extends Error implements ServerValidateErrorState<TFormData, TOnServer> {
8
- formState: ServerFormState<TFormData, TOnServer>;
9
- response: Response;
10
- constructor(options: ServerValidateErrorState<TFormData, TOnServer>);
11
- }
12
- export {};
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const utils = require("./utils.cjs");
4
- const initialFormState = {
5
- errorMap: {
6
- onServer: void 0
7
- },
8
- errors: []
9
- };
10
- const getFormData = async () => {
11
- const data = utils.getInternalTanStackCookie();
12
- utils.deleteInternalTanStackCookie();
13
- if (!data) return initialFormState;
14
- return data;
15
- };
16
- exports.getFormData = getFormData;
17
- exports.initialFormState = initialFormState;
18
- //# sourceMappingURL=getFormData.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getFormData.cjs","sources":["../../../src/start/getFormData.tsx"],"sourcesContent":["import {\n deleteInternalTanStackCookie,\n getInternalTanStackCookie,\n} from './utils'\nimport type { ServerFormState } from './types'\n\nexport const initialFormState = {\n errorMap: {\n onServer: undefined,\n },\n errors: [],\n}\n\nexport const getFormData = async () => {\n const data = getInternalTanStackCookie() as\n | undefined\n | ServerFormState<any, undefined>\n // Delete the temporary cookie from the client after reading it\n deleteInternalTanStackCookie()\n if (!data) return initialFormState\n return data\n}\n"],"names":["getInternalTanStackCookie","deleteInternalTanStackCookie"],"mappings":";;;AAMO,MAAM,mBAAmB;AAAA,EAC9B,UAAU;AAAA,IACR,UAAU;AAAA,EAAA;AAAA,EAEZ,QAAQ,CAAA;AACV;AAEO,MAAM,cAAc,YAAY;AACrC,QAAM,OAAOA,MAAAA,0BAAA;AAIbC,qCAAA;AACA,MAAI,CAAC,KAAM,QAAO;AAClB,SAAO;AACT;;;"}
@@ -1,13 +0,0 @@
1
- import { ServerFormState } from './types.cjs';
2
- export declare const initialFormState: {
3
- errorMap: {
4
- onServer: undefined;
5
- };
6
- errors: never[];
7
- };
8
- export declare const getFormData: () => Promise<{
9
- errorMap: {
10
- onServer: undefined;
11
- };
12
- errors: never[];
13
- } | ServerFormState<any, undefined>>;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const createServerValidate = require("./createServerValidate.cjs");
4
- const getFormData = require("./getFormData.cjs");
5
- const error = require("./error.cjs");
6
- exports.createServerValidate = createServerValidate.createServerValidate;
7
- exports.getFormData = getFormData.getFormData;
8
- exports.initialFormState = getFormData.initialFormState;
9
- exports.ServerValidateError = error.ServerValidateError;
10
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -1,4 +0,0 @@
1
- export * from './createServerValidate.cjs';
2
- export * from './getFormData.cjs';
3
- export * from './error.cjs';
4
- export * from './types.cjs';
@@ -1,2 +0,0 @@
1
- import { FormAsyncValidateOrFn, FormState } from '@tanstack/form-core';
2
- export type ServerFormState<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> = Pick<FormState<TFormData, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, TOnServer>, 'values' | 'errors' | 'errorMap'>;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const server = require("@tanstack/react-start/server");
4
- const devalue = require("devalue");
5
- const _INTERNALS_COOKIE_NAME = "_tanstack_form_internals";
6
- const setInternalTanStackCookie = (data) => {
7
- const cookie = devalue.stringify(data);
8
- server.setCookie(_INTERNALS_COOKIE_NAME, cookie);
9
- };
10
- const getInternalTanStackCookie = () => {
11
- const cookie = server.getCookie(_INTERNALS_COOKIE_NAME);
12
- if (!cookie) return void 0;
13
- return devalue.parse(cookie);
14
- };
15
- const deleteInternalTanStackCookie = () => {
16
- server.deleteCookie(_INTERNALS_COOKIE_NAME);
17
- };
18
- exports.deleteInternalTanStackCookie = deleteInternalTanStackCookie;
19
- exports.getInternalTanStackCookie = getInternalTanStackCookie;
20
- exports.setInternalTanStackCookie = setInternalTanStackCookie;
21
- //# sourceMappingURL=utils.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.cjs","sources":["../../../src/start/utils.ts"],"sourcesContent":["import {\n deleteCookie,\n getCookie,\n setCookie,\n} from '@tanstack/react-start/server'\nimport { parse, stringify } from 'devalue'\n\nconst _INTERNALS_COOKIE_NAME = '_tanstack_form_internals'\n\nexport const setInternalTanStackCookie = (data: any) => {\n const cookie = stringify(data)\n setCookie(_INTERNALS_COOKIE_NAME, cookie)\n}\n\nexport const getInternalTanStackCookie = () => {\n const cookie = getCookie(_INTERNALS_COOKIE_NAME)\n if (!cookie) return undefined\n return parse(cookie)\n}\n\nexport const deleteInternalTanStackCookie = () => {\n deleteCookie(_INTERNALS_COOKIE_NAME)\n}\n"],"names":["stringify","setCookie","getCookie","parse","deleteCookie"],"mappings":";;;;AAOA,MAAM,yBAAyB;AAExB,MAAM,4BAA4B,CAAC,SAAc;AACtD,QAAM,SAASA,QAAAA,UAAU,IAAI;AAC7BC,SAAAA,UAAU,wBAAwB,MAAM;AAC1C;AAEO,MAAM,4BAA4B,MAAM;AAC7C,QAAM,SAASC,OAAAA,UAAU,sBAAsB;AAC/C,MAAI,CAAC,OAAQ,QAAO;AACpB,SAAOC,QAAAA,MAAM,MAAM;AACrB;AAEO,MAAM,+BAA+B,MAAM;AAChDC,SAAAA,aAAa,sBAAsB;AACrC;;;;"}
@@ -1,3 +0,0 @@
1
- export declare const setInternalTanStackCookie: (data: any) => void;
2
- export declare const getInternalTanStackCookie: () => any;
3
- export declare const deleteInternalTanStackCookie: () => void;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- function useTransform(fn, deps) {
4
- return {
5
- fn,
6
- deps
7
- };
8
- }
9
- exports.useTransform = useTransform;
10
- //# sourceMappingURL=useTransform.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTransform.cjs","sources":["../../src/useTransform.ts"],"sourcesContent":["import type {\n AnyFormApi,\n FormApi,\n FormAsyncValidateOrFn,\n FormTransform,\n FormValidateOrFn,\n} from '@tanstack/form-core'\n\nexport function useTransform(\n fn: (formBase: AnyFormApi) => AnyFormApi,\n deps: unknown[],\n): FormTransform<any, any, any, any, any, any, any, any, any, any, any, any> {\n return {\n fn,\n deps,\n }\n}\n"],"names":[],"mappings":";;AAQO,SAAS,aACd,IACA,MAC2E;AAC3E,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EAAA;AAEJ;;"}
@@ -1,2 +0,0 @@
1
- import { AnyFormApi, FormTransform } from '@tanstack/form-core';
2
- export declare function useTransform(fn: (formBase: AnyFormApi) => AnyFormApi, deps: unknown[]): FormTransform<any, any, any, any, any, any, any, any, any, any, any, any>;
@@ -1,9 +0,0 @@
1
- import { decode } from 'decode-formdata';
2
- import { FormAsyncValidateOrFn, FormOptions, FormValidateOrFn } from '@tanstack/form-core';
3
- import { ServerFormState } from './types.js';
4
- interface CreateServerValidateOptions<TFormData, TOnMount extends undefined | FormValidateOrFn<TFormData>, TOnChange extends undefined | FormValidateOrFn<TFormData>, TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnBlur extends undefined | FormValidateOrFn<TFormData>, TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnSubmit extends undefined | FormValidateOrFn<TFormData>, TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnDynamic extends undefined | FormValidateOrFn<TFormData>, TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>, TSubmitMeta> extends FormOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta> {
5
- onServerValidate: TOnServer;
6
- }
7
- export declare const createServerValidate: <TFormData, TOnMount extends undefined | FormValidateOrFn<TFormData>, TOnChange extends undefined | FormValidateOrFn<TFormData>, TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnBlur extends undefined | FormValidateOrFn<TFormData>, TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnSubmit extends undefined | FormValidateOrFn<TFormData>, TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnDynamic extends undefined | FormValidateOrFn<TFormData>, TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>, TSubmitMeta>(defaultOpts: CreateServerValidateOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta>) => (formData: FormData, info?: Parameters<typeof decode>[1]) => Promise<TFormData>;
8
- export declare const initialFormState: ServerFormState<any, undefined>;
9
- export {};
@@ -1,51 +0,0 @@
1
- import { decode } from "decode-formdata";
2
- import { isGlobalFormValidationError, isStandardSchemaValidator, standardSchemaValidators } from "@tanstack/form-core";
3
- import { ServerValidateError } from "./error.js";
4
- const createServerValidate = (defaultOpts) => async (formData, info) => {
5
- const { onServerValidate } = defaultOpts;
6
- const runValidator = async ({
7
- value,
8
- validationSource
9
- }) => {
10
- if (isStandardSchemaValidator(onServerValidate)) {
11
- return await standardSchemaValidators.validateAsync(
12
- { value, validationSource },
13
- onServerValidate
14
- );
15
- }
16
- return onServerValidate({
17
- value,
18
- signal: void 0,
19
- formApi: void 0
20
- });
21
- };
22
- const values = decode(formData, info);
23
- const onServerError = await runValidator({
24
- value: values,
25
- validationSource: "form"
26
- });
27
- if (!onServerError) return values;
28
- const onServerErrorVal = isGlobalFormValidationError(onServerError) ? onServerError.form : onServerError;
29
- const formState = {
30
- errorMap: {
31
- onServer: onServerError
32
- },
33
- values,
34
- errors: onServerErrorVal ? [onServerErrorVal] : []
35
- };
36
- throw new ServerValidateError({
37
- formState
38
- });
39
- };
40
- const initialFormState = {
41
- errorMap: {
42
- onServer: void 0
43
- },
44
- values: void 0,
45
- errors: []
46
- };
47
- export {
48
- createServerValidate,
49
- initialFormState
50
- };
51
- //# sourceMappingURL=createServerValidate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createServerValidate.js","sources":["../../../src/nextjs/createServerValidate.ts"],"sourcesContent":["import { decode } from 'decode-formdata'\nimport {\n isGlobalFormValidationError,\n isStandardSchemaValidator,\n standardSchemaValidators,\n} from '@tanstack/form-core'\nimport { ServerValidateError } from './error'\nimport type {\n FormAsyncValidateOrFn,\n FormOptions,\n FormValidateAsyncFn,\n FormValidateOrFn,\n UnwrapFormAsyncValidateOrFn,\n} from '@tanstack/form-core'\nimport type { ServerFormState } from './types'\n\ninterface CreateServerValidateOptions<\n TFormData,\n TOnMount extends undefined | FormValidateOrFn<TFormData>,\n TOnChange extends undefined | FormValidateOrFn<TFormData>,\n TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnBlur extends undefined | FormValidateOrFn<TFormData>,\n TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnSubmit extends undefined | FormValidateOrFn<TFormData>,\n TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnDynamic extends undefined | FormValidateOrFn<TFormData>,\n TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n TSubmitMeta,\n> extends FormOptions<\n TFormData,\n TOnMount,\n TOnChange,\n TOnChangeAsync,\n TOnBlur,\n TOnBlurAsync,\n TOnSubmit,\n TOnSubmitAsync,\n TOnDynamic,\n TOnDynamicAsync,\n TOnServer,\n TSubmitMeta\n > {\n onServerValidate: TOnServer\n}\n\nexport const createServerValidate =\n <\n TFormData,\n TOnMount extends undefined | FormValidateOrFn<TFormData>,\n TOnChange extends undefined | FormValidateOrFn<TFormData>,\n TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnBlur extends undefined | FormValidateOrFn<TFormData>,\n TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnSubmit extends undefined | FormValidateOrFn<TFormData>,\n TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnDynamic extends undefined | FormValidateOrFn<TFormData>,\n TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n TSubmitMeta,\n >(\n defaultOpts: CreateServerValidateOptions<\n TFormData,\n TOnMount,\n TOnChange,\n TOnChangeAsync,\n TOnBlur,\n TOnBlurAsync,\n TOnSubmit,\n TOnSubmitAsync,\n TOnDynamic,\n TOnDynamicAsync,\n TOnServer,\n TSubmitMeta\n >,\n ) =>\n async (formData: FormData, info?: Parameters<typeof decode>[1]) => {\n const { onServerValidate } = defaultOpts\n\n const runValidator = async ({\n value,\n validationSource,\n }: {\n value: TFormData\n validationSource: 'form'\n }) => {\n if (isStandardSchemaValidator(onServerValidate)) {\n return await standardSchemaValidators.validateAsync(\n { value, validationSource },\n onServerValidate,\n )\n }\n return (onServerValidate as FormValidateAsyncFn<TFormData>)({\n value,\n signal: undefined as never,\n formApi: undefined as never,\n })\n }\n\n const values = decode(formData, info) as never as TFormData\n\n const onServerError = (await runValidator({\n value: values,\n validationSource: 'form',\n })) as UnwrapFormAsyncValidateOrFn<TOnServer> | undefined\n\n if (!onServerError) return values\n\n const onServerErrorVal = (\n isGlobalFormValidationError(onServerError)\n ? onServerError.form\n : onServerError\n ) as UnwrapFormAsyncValidateOrFn<TOnServer>\n\n const formState: ServerFormState<TFormData, TOnServer> = {\n errorMap: {\n onServer: onServerError,\n },\n values,\n errors: onServerErrorVal ? [onServerErrorVal] : [],\n }\n\n throw new ServerValidateError({\n formState,\n })\n }\n\nexport const initialFormState: ServerFormState<any, undefined> = {\n errorMap: {\n onServer: undefined,\n },\n values: undefined,\n errors: [],\n}\n"],"names":[],"mappings":";;;AA8CO,MAAM,uBACX,CAcE,gBAeF,OAAO,UAAoB,SAAwC;AACjE,QAAM,EAAE,qBAAqB;AAE7B,QAAM,eAAe,OAAO;AAAA,IAC1B;AAAA,IACA;AAAA,EAAA,MAII;AACJ,QAAI,0BAA0B,gBAAgB,GAAG;AAC/C,aAAO,MAAM,yBAAyB;AAAA,QACpC,EAAE,OAAO,iBAAA;AAAA,QACT;AAAA,MAAA;AAAA,IAEJ;AACA,WAAQ,iBAAoD;AAAA,MAC1D;AAAA,MACA,QAAQ;AAAA,MACR,SAAS;AAAA,IAAA,CACV;AAAA,EACH;AAEA,QAAM,SAAS,OAAO,UAAU,IAAI;AAEpC,QAAM,gBAAiB,MAAM,aAAa;AAAA,IACxC,OAAO;AAAA,IACP,kBAAkB;AAAA,EAAA,CACnB;AAED,MAAI,CAAC,cAAe,QAAO;AAE3B,QAAM,mBACJ,4BAA4B,aAAa,IACrC,cAAc,OACd;AAGN,QAAM,YAAmD;AAAA,IACvD,UAAU;AAAA,MACR,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,IACA,QAAQ,mBAAmB,CAAC,gBAAgB,IAAI,CAAA;AAAA,EAAC;AAGnD,QAAM,IAAI,oBAAoB;AAAA,IAC5B;AAAA,EAAA,CACD;AACH;AAEK,MAAM,mBAAoD;AAAA,EAC/D,UAAU;AAAA,IACR,UAAU;AAAA,EAAA;AAAA,EAEZ,QAAQ;AAAA,EACR,QAAQ,CAAA;AACV;"}
@@ -1,10 +0,0 @@
1
- import { ServerFormState } from './types.js';
2
- import { FormAsyncValidateOrFn } from '@tanstack/form-core';
3
- interface ServerValidateErrorState<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> {
4
- formState: ServerFormState<TFormData, TOnServer>;
5
- }
6
- export declare class ServerValidateError<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> extends Error implements ServerValidateErrorState<TFormData, TOnServer> {
7
- formState: ServerFormState<TFormData, TOnServer>;
8
- constructor(options: ServerValidateErrorState<TFormData, TOnServer>);
9
- }
10
- export {};
@@ -1,11 +0,0 @@
1
- class ServerValidateError extends Error {
2
- constructor(options) {
3
- super("Your form has errors. Please check the fields and try again.");
4
- this.name = "ServerValidateError";
5
- this.formState = options.formState;
6
- }
7
- }
8
- export {
9
- ServerValidateError
10
- };
11
- //# sourceMappingURL=error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error.js","sources":["../../../src/nextjs/error.ts"],"sourcesContent":["import type { ServerFormState } from './types'\nimport type { FormAsyncValidateOrFn } from '@tanstack/form-core'\n\ninterface ServerValidateErrorState<\n TFormData,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n> {\n formState: ServerFormState<TFormData, TOnServer>\n}\n\nexport class ServerValidateError<\n TFormData,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n >\n extends Error\n implements ServerValidateErrorState<TFormData, TOnServer>\n{\n formState: ServerFormState<TFormData, TOnServer>\n\n constructor(options: ServerValidateErrorState<TFormData, TOnServer>) {\n super('Your form has errors. Please check the fields and try again.')\n this.name = 'ServerValidateError'\n this.formState = options.formState\n }\n}\n"],"names":[],"mappings":"AAUO,MAAM,4BAIH,MAEV;AAAA,EAGE,YAAY,SAAyD;AACnE,UAAM,8DAA8D;AACpE,SAAK,OAAO;AACZ,SAAK,YAAY,QAAQ;AAAA,EAC3B;AACF;"}
@@ -1,4 +0,0 @@
1
- export * from '@tanstack/form-core';
2
- export * from './createServerValidate.js';
3
- export * from './error.js';
4
- export * from './types.js';
@@ -1,9 +0,0 @@
1
- export * from "@tanstack/form-core";
2
- import { createServerValidate, initialFormState } from "./createServerValidate.js";
3
- import { ServerValidateError } from "./error.js";
4
- export {
5
- ServerValidateError,
6
- createServerValidate,
7
- initialFormState
8
- };
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -1,2 +0,0 @@
1
- import { FormAsyncValidateOrFn, FormState } from '@tanstack/form-core';
2
- export type ServerFormState<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> = Pick<FormState<TFormData, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, TOnServer>, 'values' | 'errors' | 'errorMap'>;
@@ -1,9 +0,0 @@
1
- import { decode } from 'decode-formdata';
2
- import { FormAsyncValidateOrFn, FormOptions, FormValidateOrFn } from '@tanstack/form-core';
3
- import { ServerFormState } from './types.js';
4
- interface CreateServerValidateOptions<TFormData, TOnMount extends undefined | FormValidateOrFn<TFormData>, TOnChange extends undefined | FormValidateOrFn<TFormData>, TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnBlur extends undefined | FormValidateOrFn<TFormData>, TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnSubmit extends undefined | FormValidateOrFn<TFormData>, TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnDynamic extends undefined | FormValidateOrFn<TFormData>, TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>, TSubmitMeta> extends FormOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta> {
5
- onServerValidate: TOnServer;
6
- }
7
- export declare const createServerValidate: <TFormData, TOnMount extends undefined | FormValidateOrFn<TFormData>, TOnChange extends undefined | FormValidateOrFn<TFormData>, TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnBlur extends undefined | FormValidateOrFn<TFormData>, TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnSubmit extends undefined | FormValidateOrFn<TFormData>, TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnDynamic extends undefined | FormValidateOrFn<TFormData>, TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>, TSubmitMeta>(defaultOpts: CreateServerValidateOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta>) => (formData: FormData, info?: Parameters<typeof decode>[1]) => Promise<TFormData>;
8
- export declare const initialFormState: ServerFormState<any, undefined>;
9
- export {};
@@ -1,51 +0,0 @@
1
- import { decode } from "decode-formdata";
2
- import { isGlobalFormValidationError, isStandardSchemaValidator, standardSchemaValidators } from "@tanstack/form-core";
3
- import { ServerValidateError } from "./error.js";
4
- const createServerValidate = (defaultOpts) => async (formData, info) => {
5
- const { onServerValidate } = defaultOpts;
6
- const runValidator = async ({
7
- value,
8
- validationSource
9
- }) => {
10
- if (isStandardSchemaValidator(onServerValidate)) {
11
- return await standardSchemaValidators.validateAsync(
12
- { value, validationSource },
13
- onServerValidate
14
- );
15
- }
16
- return onServerValidate({
17
- value,
18
- signal: void 0,
19
- formApi: void 0
20
- });
21
- };
22
- const values = decode(formData, info);
23
- const onServerError = await runValidator({
24
- value: values,
25
- validationSource: "form"
26
- });
27
- if (!onServerError) return values;
28
- const onServerErrorVal = isGlobalFormValidationError(onServerError) ? onServerError.form : onServerError;
29
- const formState = {
30
- errorMap: {
31
- onServer: onServerError
32
- },
33
- values,
34
- errors: onServerErrorVal ? [onServerErrorVal] : []
35
- };
36
- throw new ServerValidateError({
37
- formState
38
- });
39
- };
40
- const initialFormState = {
41
- errorMap: {
42
- onServer: void 0
43
- },
44
- values: void 0,
45
- errors: []
46
- };
47
- export {
48
- createServerValidate,
49
- initialFormState
50
- };
51
- //# sourceMappingURL=createServerValidate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createServerValidate.js","sources":["../../../src/remix/createServerValidate.ts"],"sourcesContent":["import { decode } from 'decode-formdata'\nimport {\n isGlobalFormValidationError,\n isStandardSchemaValidator,\n standardSchemaValidators,\n} from '@tanstack/form-core'\nimport { ServerValidateError } from './error'\nimport type {\n FormAsyncValidateOrFn,\n FormOptions,\n FormValidateAsyncFn,\n FormValidateOrFn,\n UnwrapFormAsyncValidateOrFn,\n} from '@tanstack/form-core'\nimport type { ServerFormState } from './types'\n\ninterface CreateServerValidateOptions<\n TFormData,\n TOnMount extends undefined | FormValidateOrFn<TFormData>,\n TOnChange extends undefined | FormValidateOrFn<TFormData>,\n TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnBlur extends undefined | FormValidateOrFn<TFormData>,\n TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnSubmit extends undefined | FormValidateOrFn<TFormData>,\n TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnDynamic extends undefined | FormValidateOrFn<TFormData>,\n TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n TSubmitMeta,\n> extends FormOptions<\n TFormData,\n TOnMount,\n TOnChange,\n TOnChangeAsync,\n TOnBlur,\n TOnBlurAsync,\n TOnSubmit,\n TOnSubmitAsync,\n TOnDynamic,\n TOnDynamicAsync,\n TOnServer,\n TSubmitMeta\n > {\n onServerValidate: TOnServer\n}\n\nexport const createServerValidate =\n <\n TFormData,\n TOnMount extends undefined | FormValidateOrFn<TFormData>,\n TOnChange extends undefined | FormValidateOrFn<TFormData>,\n TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnBlur extends undefined | FormValidateOrFn<TFormData>,\n TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnSubmit extends undefined | FormValidateOrFn<TFormData>,\n TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnDynamic extends undefined | FormValidateOrFn<TFormData>,\n TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n TSubmitMeta,\n >(\n defaultOpts: CreateServerValidateOptions<\n TFormData,\n TOnMount,\n TOnChange,\n TOnChangeAsync,\n TOnBlur,\n TOnBlurAsync,\n TOnSubmit,\n TOnSubmitAsync,\n TOnDynamic,\n TOnDynamicAsync,\n TOnServer,\n TSubmitMeta\n >,\n ) =>\n async (formData: FormData, info?: Parameters<typeof decode>[1]) => {\n const { onServerValidate } = defaultOpts\n\n const runValidator = async ({\n value,\n validationSource,\n }: {\n value: TFormData\n validationSource: 'form'\n }) => {\n if (isStandardSchemaValidator(onServerValidate)) {\n return await standardSchemaValidators.validateAsync(\n { value, validationSource },\n onServerValidate,\n )\n }\n return (onServerValidate as FormValidateAsyncFn<TFormData>)({\n value,\n signal: undefined as never,\n formApi: undefined as never,\n })\n }\n\n const values = decode(formData, info) as never as TFormData\n\n const onServerError = (await runValidator({\n value: values,\n validationSource: 'form',\n })) as UnwrapFormAsyncValidateOrFn<TOnServer> | undefined\n\n if (!onServerError) return values\n\n const onServerErrorVal = (\n isGlobalFormValidationError(onServerError)\n ? onServerError.form\n : onServerError\n ) as UnwrapFormAsyncValidateOrFn<TOnServer>\n\n const formState: ServerFormState<TFormData, TOnServer> = {\n errorMap: {\n onServer: onServerError,\n },\n values,\n errors: onServerErrorVal ? [onServerErrorVal] : [],\n }\n\n throw new ServerValidateError({\n formState,\n })\n }\n\nexport const initialFormState: ServerFormState<any, undefined> = {\n errorMap: {\n onServer: undefined,\n },\n values: undefined,\n errors: [],\n}\n"],"names":[],"mappings":";;;AA8CO,MAAM,uBACX,CAcE,gBAeF,OAAO,UAAoB,SAAwC;AACjE,QAAM,EAAE,qBAAqB;AAE7B,QAAM,eAAe,OAAO;AAAA,IAC1B;AAAA,IACA;AAAA,EAAA,MAII;AACJ,QAAI,0BAA0B,gBAAgB,GAAG;AAC/C,aAAO,MAAM,yBAAyB;AAAA,QACpC,EAAE,OAAO,iBAAA;AAAA,QACT;AAAA,MAAA;AAAA,IAEJ;AACA,WAAQ,iBAAoD;AAAA,MAC1D;AAAA,MACA,QAAQ;AAAA,MACR,SAAS;AAAA,IAAA,CACV;AAAA,EACH;AAEA,QAAM,SAAS,OAAO,UAAU,IAAI;AAEpC,QAAM,gBAAiB,MAAM,aAAa;AAAA,IACxC,OAAO;AAAA,IACP,kBAAkB;AAAA,EAAA,CACnB;AAED,MAAI,CAAC,cAAe,QAAO;AAE3B,QAAM,mBACJ,4BAA4B,aAAa,IACrC,cAAc,OACd;AAGN,QAAM,YAAmD;AAAA,IACvD,UAAU;AAAA,MACR,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,IACA,QAAQ,mBAAmB,CAAC,gBAAgB,IAAI,CAAA;AAAA,EAAC;AAGnD,QAAM,IAAI,oBAAoB;AAAA,IAC5B;AAAA,EAAA,CACD;AACH;AAEK,MAAM,mBAAoD;AAAA,EAC/D,UAAU;AAAA,IACR,UAAU;AAAA,EAAA;AAAA,EAEZ,QAAQ;AAAA,EACR,QAAQ,CAAA;AACV;"}
@@ -1,10 +0,0 @@
1
- import { ServerFormState } from './types.js';
2
- import { FormAsyncValidateOrFn } from '@tanstack/form-core';
3
- interface ServerValidateErrorState<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> {
4
- formState: ServerFormState<TFormData, TOnServer>;
5
- }
6
- export declare class ServerValidateError<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> extends Error implements ServerValidateErrorState<TFormData, TOnServer> {
7
- formState: ServerFormState<TFormData, TOnServer>;
8
- constructor(options: ServerValidateErrorState<TFormData, TOnServer>);
9
- }
10
- export {};
@@ -1,11 +0,0 @@
1
- class ServerValidateError extends Error {
2
- constructor(options) {
3
- super("Your form has errors. Please check the fields and try again.");
4
- this.name = "ServerValidateError";
5
- this.formState = options.formState;
6
- }
7
- }
8
- export {
9
- ServerValidateError
10
- };
11
- //# sourceMappingURL=error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error.js","sources":["../../../src/remix/error.ts"],"sourcesContent":["import type { ServerFormState } from './types'\nimport type { FormAsyncValidateOrFn } from '@tanstack/form-core'\n\ninterface ServerValidateErrorState<\n TFormData,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n> {\n formState: ServerFormState<TFormData, TOnServer>\n}\n\nexport class ServerValidateError<\n TFormData,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n >\n extends Error\n implements ServerValidateErrorState<TFormData, TOnServer>\n{\n formState: ServerFormState<TFormData, TOnServer>\n\n constructor(options: ServerValidateErrorState<TFormData, TOnServer>) {\n super('Your form has errors. Please check the fields and try again.')\n this.name = 'ServerValidateError'\n this.formState = options.formState\n }\n}\n"],"names":[],"mappings":"AAUO,MAAM,4BAIH,MAEV;AAAA,EAGE,YAAY,SAAyD;AACnE,UAAM,8DAA8D;AACpE,SAAK,OAAO;AACZ,SAAK,YAAY,QAAQ;AAAA,EAC3B;AACF;"}
@@ -1,4 +0,0 @@
1
- export * from '@tanstack/form-core';
2
- export * from './createServerValidate.js';
3
- export * from './error.js';
4
- export * from './types.js';
@@ -1,9 +0,0 @@
1
- export * from "@tanstack/form-core";
2
- import { createServerValidate, initialFormState } from "./createServerValidate.js";
3
- import { ServerValidateError } from "./error.js";
4
- export {
5
- ServerValidateError,
6
- createServerValidate,
7
- initialFormState
8
- };
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -1,2 +0,0 @@
1
- import { FormAsyncValidateOrFn, FormState } from '@tanstack/form-core';
2
- export type ServerFormState<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> = Pick<FormState<TFormData, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, TOnServer>, 'values' | 'errors' | 'errorMap'>;
@@ -1,7 +0,0 @@
1
- import { decode } from 'decode-formdata';
2
- import { FormAsyncValidateOrFn, FormOptions, FormValidateOrFn } from '@tanstack/form-core';
3
- interface CreateServerValidateOptions<TFormData, TOnMount extends undefined | FormValidateOrFn<TFormData>, TOnChange extends undefined | FormValidateOrFn<TFormData>, TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnBlur extends undefined | FormValidateOrFn<TFormData>, TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnSubmit extends undefined | FormValidateOrFn<TFormData>, TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnDynamic extends undefined | FormValidateOrFn<TFormData>, TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>, TSubmitMeta> extends FormOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta> {
4
- onServerValidate: TOnServer;
5
- }
6
- export declare const createServerValidate: <TFormData, TOnMount extends undefined | FormValidateOrFn<TFormData>, TOnChange extends undefined | FormValidateOrFn<TFormData>, TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnBlur extends undefined | FormValidateOrFn<TFormData>, TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnSubmit extends undefined | FormValidateOrFn<TFormData>, TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnDynamic extends undefined | FormValidateOrFn<TFormData>, TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>, TSubmitMeta>(defaultOpts: CreateServerValidateOptions<TFormData, TOnMount, TOnChange, TOnChangeAsync, TOnBlur, TOnBlurAsync, TOnSubmit, TOnSubmitAsync, TOnDynamic, TOnDynamicAsync, TOnServer, TSubmitMeta>) => (formData: FormData, info?: Parameters<typeof decode>[1]) => Promise<TFormData>;
7
- export {};
@@ -1,53 +0,0 @@
1
- import { isGlobalFormValidationError, isStandardSchemaValidator, standardSchemaValidators } from "@tanstack/form-core";
2
- import { getHeader } from "@tanstack/react-start/server";
3
- import { decode } from "decode-formdata";
4
- import { ServerValidateError } from "./error.js";
5
- import { setInternalTanStackCookie } from "./utils.js";
6
- const createServerValidate = (defaultOpts) => async (formData, info) => {
7
- const { onServerValidate } = defaultOpts;
8
- const runValidator = async ({
9
- value,
10
- validationSource
11
- }) => {
12
- if (isStandardSchemaValidator(onServerValidate)) {
13
- return await standardSchemaValidators.validateAsync(
14
- { value, validationSource },
15
- onServerValidate
16
- );
17
- }
18
- return onServerValidate({
19
- value,
20
- signal: void 0,
21
- formApi: void 0
22
- });
23
- };
24
- const referer = getHeader("referer");
25
- const data = decode(formData, info);
26
- const onServerError = await runValidator({
27
- value: data,
28
- validationSource: "form"
29
- });
30
- if (!onServerError) return data;
31
- const onServerErrorVal = isGlobalFormValidationError(onServerError) ? onServerError.form : onServerError;
32
- const formState = {
33
- errorMap: {
34
- onServer: onServerError
35
- },
36
- values: data,
37
- errors: onServerErrorVal ? [onServerErrorVal] : []
38
- };
39
- setInternalTanStackCookie(formState);
40
- throw new ServerValidateError({
41
- response: new Response("ok", {
42
- headers: {
43
- Location: referer
44
- },
45
- status: 302
46
- }),
47
- formState
48
- });
49
- };
50
- export {
51
- createServerValidate
52
- };
53
- //# sourceMappingURL=createServerValidate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createServerValidate.js","sources":["../../../src/start/createServerValidate.tsx"],"sourcesContent":["import {\n isGlobalFormValidationError,\n isStandardSchemaValidator,\n standardSchemaValidators,\n} from '@tanstack/form-core'\nimport { getHeader } from '@tanstack/react-start/server'\nimport { decode } from 'decode-formdata'\nimport { ServerValidateError } from './error'\nimport { setInternalTanStackCookie } from './utils'\nimport type { ServerFormState } from './types'\nimport type {\n FormAsyncValidateOrFn,\n FormOptions,\n FormValidateAsyncFn,\n FormValidateOrFn,\n UnwrapFormAsyncValidateOrFn,\n} from '@tanstack/form-core'\n\ninterface CreateServerValidateOptions<\n TFormData,\n TOnMount extends undefined | FormValidateOrFn<TFormData>,\n TOnChange extends undefined | FormValidateOrFn<TFormData>,\n TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnBlur extends undefined | FormValidateOrFn<TFormData>,\n TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnSubmit extends undefined | FormValidateOrFn<TFormData>,\n TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnDynamic extends undefined | FormValidateOrFn<TFormData>,\n TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n TSubmitMeta,\n> extends FormOptions<\n TFormData,\n TOnMount,\n TOnChange,\n TOnChangeAsync,\n TOnBlur,\n TOnBlurAsync,\n TOnSubmit,\n TOnSubmitAsync,\n TOnDynamic,\n TOnDynamicAsync,\n TOnServer,\n TSubmitMeta\n > {\n onServerValidate: TOnServer\n}\n\nexport const createServerValidate =\n <\n TFormData,\n TOnMount extends undefined | FormValidateOrFn<TFormData>,\n TOnChange extends undefined | FormValidateOrFn<TFormData>,\n TOnChangeAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnBlur extends undefined | FormValidateOrFn<TFormData>,\n TOnBlurAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnSubmit extends undefined | FormValidateOrFn<TFormData>,\n TOnSubmitAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnDynamic extends undefined | FormValidateOrFn<TFormData>,\n TOnDynamicAsync extends undefined | FormAsyncValidateOrFn<TFormData>,\n TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>,\n TSubmitMeta,\n >(\n defaultOpts: CreateServerValidateOptions<\n TFormData,\n TOnMount,\n TOnChange,\n TOnChangeAsync,\n TOnBlur,\n TOnBlurAsync,\n TOnSubmit,\n TOnSubmitAsync,\n TOnDynamic,\n TOnDynamicAsync,\n TOnServer,\n TSubmitMeta\n >,\n ) =>\n async (formData: FormData, info?: Parameters<typeof decode>[1]) => {\n const { onServerValidate } = defaultOpts\n\n const runValidator = async ({\n value,\n validationSource,\n }: {\n value: TFormData\n validationSource: 'form'\n }) => {\n if (isStandardSchemaValidator(onServerValidate)) {\n return await standardSchemaValidators.validateAsync(\n { value, validationSource },\n onServerValidate,\n )\n }\n return (onServerValidate as FormValidateAsyncFn<TFormData>)({\n value,\n signal: undefined as never,\n formApi: undefined as never,\n })\n }\n\n const referer = getHeader('referer')!\n\n const data = decode(formData, info) as never as TFormData\n\n const onServerError = (await runValidator({\n value: data,\n validationSource: 'form',\n })) as UnwrapFormAsyncValidateOrFn<TOnServer> | undefined\n\n if (!onServerError) return data\n\n const onServerErrorVal = (\n isGlobalFormValidationError(onServerError)\n ? onServerError.form\n : onServerError\n ) as UnwrapFormAsyncValidateOrFn<TOnServer>\n\n const formState: ServerFormState<TFormData, TOnServer> = {\n errorMap: {\n onServer: onServerError,\n },\n values: data,\n errors: onServerErrorVal ? [onServerErrorVal] : [],\n }\n\n setInternalTanStackCookie(formState)\n\n throw new ServerValidateError({\n response: new Response('ok', {\n headers: {\n Location: referer,\n },\n status: 302,\n }),\n formState: formState,\n })\n }\n"],"names":[],"mappings":";;;;;AAgDO,MAAM,uBACX,CAcE,gBAeF,OAAO,UAAoB,SAAwC;AACjE,QAAM,EAAE,qBAAqB;AAE7B,QAAM,eAAe,OAAO;AAAA,IAC1B;AAAA,IACA;AAAA,EAAA,MAII;AACJ,QAAI,0BAA0B,gBAAgB,GAAG;AAC/C,aAAO,MAAM,yBAAyB;AAAA,QACpC,EAAE,OAAO,iBAAA;AAAA,QACT;AAAA,MAAA;AAAA,IAEJ;AACA,WAAQ,iBAAoD;AAAA,MAC1D;AAAA,MACA,QAAQ;AAAA,MACR,SAAS;AAAA,IAAA,CACV;AAAA,EACH;AAEA,QAAM,UAAU,UAAU,SAAS;AAEnC,QAAM,OAAO,OAAO,UAAU,IAAI;AAElC,QAAM,gBAAiB,MAAM,aAAa;AAAA,IACxC,OAAO;AAAA,IACP,kBAAkB;AAAA,EAAA,CACnB;AAED,MAAI,CAAC,cAAe,QAAO;AAE3B,QAAM,mBACJ,4BAA4B,aAAa,IACrC,cAAc,OACd;AAGN,QAAM,YAAmD;AAAA,IACvD,UAAU;AAAA,MACR,UAAU;AAAA,IAAA;AAAA,IAEZ,QAAQ;AAAA,IACR,QAAQ,mBAAmB,CAAC,gBAAgB,IAAI,CAAA;AAAA,EAAC;AAGnD,4BAA0B,SAAS;AAEnC,QAAM,IAAI,oBAAoB;AAAA,IAC5B,UAAU,IAAI,SAAS,MAAM;AAAA,MAC3B,SAAS;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,MAEZ,QAAQ;AAAA,IAAA,CACT;AAAA,IACD;AAAA,EAAA,CACD;AACH;"}
@@ -1,12 +0,0 @@
1
- import { ServerFormState } from './types.js';
2
- import { FormAsyncValidateOrFn } from '@tanstack/form-core';
3
- interface ServerValidateErrorState<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> {
4
- formState: ServerFormState<TFormData, TOnServer>;
5
- response: Response;
6
- }
7
- export declare class ServerValidateError<TFormData, TOnServer extends undefined | FormAsyncValidateOrFn<TFormData>> extends Error implements ServerValidateErrorState<TFormData, TOnServer> {
8
- formState: ServerFormState<TFormData, TOnServer>;
9
- response: Response;
10
- constructor(options: ServerValidateErrorState<TFormData, TOnServer>);
11
- }
12
- export {};
@@ -1,12 +0,0 @@
1
- class ServerValidateError extends Error {
2
- constructor(options) {
3
- super("Your form has errors. Please check the fields and try again.");
4
- this.name = "ServerValidateError";
5
- this.response = options.response;
6
- this.formState = options.formState;
7
- }
8
- }
9
- export {
10
- ServerValidateError
11
- };
12
- //# sourceMappingURL=error.js.map