@tanstack/form-core 0.0.11 → 0.0.13

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 (76) hide show
  1. package/build/{cjs/FieldApi.js → lib/FieldApi.cjs} +80 -113
  2. package/build/lib/FieldApi.cjs.map +1 -0
  3. package/build/lib/FieldApi.d.ts +112 -0
  4. package/build/lib/FieldApi.d.ts.map +1 -0
  5. package/build/lib/FieldApi.js +305 -0
  6. package/build/lib/FieldApi.js.map +1 -0
  7. package/build/lib/FieldApi.legacy.cjs +307 -0
  8. package/build/lib/FieldApi.legacy.cjs.map +1 -0
  9. package/build/lib/FieldApi.legacy.js +305 -0
  10. package/build/lib/FieldApi.legacy.js.map +1 -0
  11. package/build/{cjs/FormApi.js → lib/FormApi.cjs} +66 -78
  12. package/build/lib/FormApi.cjs.map +1 -0
  13. package/build/{types → lib}/FormApi.d.ts +3 -2
  14. package/build/lib/FormApi.d.ts.map +1 -0
  15. package/build/lib/FormApi.js +246 -0
  16. package/build/lib/FormApi.js.map +1 -0
  17. package/build/lib/FormApi.legacy.cjs +248 -0
  18. package/build/lib/FormApi.legacy.cjs.map +1 -0
  19. package/build/lib/FormApi.legacy.js +246 -0
  20. package/build/lib/FormApi.legacy.js.map +1 -0
  21. package/build/{cjs/_virtual/_rollupPluginBabelHelpers.js → lib/_virtual/_rollupPluginBabelHelpers.cjs} +18 -45
  22. package/build/lib/_virtual/_rollupPluginBabelHelpers.cjs.map +1 -0
  23. package/build/lib/_virtual/_rollupPluginBabelHelpers.js +56 -0
  24. package/build/{cjs → lib}/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  25. package/build/lib/_virtual/_rollupPluginBabelHelpers.legacy.cjs +65 -0
  26. package/build/lib/_virtual/_rollupPluginBabelHelpers.legacy.cjs.map +1 -0
  27. package/build/lib/_virtual/_rollupPluginBabelHelpers.legacy.js +56 -0
  28. package/build/lib/_virtual/_rollupPluginBabelHelpers.legacy.js.map +1 -0
  29. package/build/lib/index.cjs +14 -0
  30. package/build/lib/index.cjs.map +1 -0
  31. package/build/{types → lib}/index.d.ts +1 -0
  32. package/build/lib/index.d.ts.map +1 -0
  33. package/build/lib/index.js +4 -0
  34. package/build/{cjs → lib}/index.js.map +1 -1
  35. package/build/lib/index.legacy.cjs +14 -0
  36. package/build/lib/index.legacy.cjs.map +1 -0
  37. package/build/lib/index.legacy.js +4 -0
  38. package/build/lib/index.legacy.js.map +1 -0
  39. package/build/lib/tests/FieldApi.spec.d.ts +2 -0
  40. package/build/lib/tests/FieldApi.spec.d.ts.map +1 -0
  41. package/build/lib/tests/FieldApi.test-d.d.ts +2 -0
  42. package/build/lib/tests/FieldApi.test-d.d.ts.map +1 -0
  43. package/build/lib/tests/FormApi.spec.d.ts +2 -0
  44. package/build/lib/tests/FormApi.spec.d.ts.map +1 -0
  45. package/build/{cjs/utils.js → lib/utils.cjs} +18 -27
  46. package/build/lib/utils.cjs.map +1 -0
  47. package/build/{types → lib}/utils.d.ts +10 -0
  48. package/build/lib/utils.d.ts.map +1 -0
  49. package/build/lib/utils.js +77 -0
  50. package/build/lib/utils.js.map +1 -0
  51. package/build/lib/utils.legacy.cjs +81 -0
  52. package/build/lib/utils.legacy.cjs.map +1 -0
  53. package/build/lib/utils.legacy.js +77 -0
  54. package/build/lib/utils.legacy.js.map +1 -0
  55. package/package.json +22 -9
  56. package/src/FieldApi.ts +101 -46
  57. package/src/FormApi.ts +34 -14
  58. package/src/tests/FieldApi.spec.ts +169 -0
  59. package/src/tests/FieldApi.test-d.ts +41 -0
  60. package/src/tests/FormApi.spec.ts +216 -0
  61. package/src/utils.ts +10 -1
  62. package/build/cjs/FieldApi.js.map +0 -1
  63. package/build/cjs/FormApi.js.map +0 -1
  64. package/build/cjs/index.js +0 -26
  65. package/build/cjs/utils.js.map +0 -1
  66. package/build/esm/index.js +0 -716
  67. package/build/esm/index.js.map +0 -1
  68. package/build/stats-html.html +0 -2689
  69. package/build/stats-react.json +0 -196
  70. package/build/types/FieldApi.d.ts +0 -85
  71. package/build/types/tests/test.test.d.ts +0 -0
  72. package/build/umd/index.development.js +0 -779
  73. package/build/umd/index.development.js.map +0 -1
  74. package/build/umd/index.production.js +0 -22
  75. package/build/umd/index.production.js.map +0 -1
  76. package/src/tests/test.test.tsx +0 -5
@@ -1,196 +0,0 @@
1
- {
2
- "version": 2,
3
- "tree": {
4
- "name": "root",
5
- "children": [
6
- {
7
- "name": "index.production.js",
8
- "children": [
9
- {
10
- "uid": "90cf-13",
11
- "name": "\u0000rollupPluginBabelHelpers.js"
12
- },
13
- {
14
- "name": "node_modules/.pnpm/@tanstack+store@0.0.1-beta.89/node_modules/@tanstack/store/build/esm/index.js",
15
- "uid": "90cf-15"
16
- },
17
- {
18
- "name": "packages/form-core/src",
19
- "children": [
20
- {
21
- "uid": "90cf-17",
22
- "name": "utils.ts"
23
- },
24
- {
25
- "uid": "90cf-19",
26
- "name": "FormApi.ts"
27
- },
28
- {
29
- "uid": "90cf-21",
30
- "name": "FieldApi.ts"
31
- },
32
- {
33
- "uid": "90cf-23",
34
- "name": "index.ts"
35
- }
36
- ]
37
- }
38
- ]
39
- }
40
- ],
41
- "isRoot": true
42
- },
43
- "nodeParts": {
44
- "90cf-13": {
45
- "renderedLength": 1793,
46
- "gzipLength": 535,
47
- "brotliLength": 0,
48
- "mainUid": "90cf-12"
49
- },
50
- "90cf-15": {
51
- "renderedLength": 1313,
52
- "gzipLength": 489,
53
- "brotliLength": 0,
54
- "mainUid": "90cf-14"
55
- },
56
- "90cf-17": {
57
- "renderedLength": 2008,
58
- "gzipLength": 694,
59
- "brotliLength": 0,
60
- "mainUid": "90cf-16"
61
- },
62
- "90cf-19": {
63
- "renderedLength": 8246,
64
- "gzipLength": 1914,
65
- "brotliLength": 0,
66
- "mainUid": "90cf-18"
67
- },
68
- "90cf-21": {
69
- "renderedLength": 10854,
70
- "gzipLength": 2441,
71
- "brotliLength": 0,
72
- "mainUid": "90cf-20"
73
- },
74
- "90cf-23": {
75
- "renderedLength": 0,
76
- "gzipLength": 0,
77
- "brotliLength": 0,
78
- "mainUid": "90cf-22"
79
- }
80
- },
81
- "nodeMetas": {
82
- "90cf-12": {
83
- "id": "\u0000rollupPluginBabelHelpers.js",
84
- "moduleParts": {
85
- "index.production.js": "90cf-13"
86
- },
87
- "imported": [],
88
- "importedBy": [
89
- {
90
- "uid": "90cf-18"
91
- },
92
- {
93
- "uid": "90cf-20"
94
- }
95
- ]
96
- },
97
- "90cf-14": {
98
- "id": "/node_modules/.pnpm/@tanstack+store@0.0.1-beta.89/node_modules/@tanstack/store/build/esm/index.js",
99
- "moduleParts": {
100
- "index.production.js": "90cf-15"
101
- },
102
- "imported": [],
103
- "importedBy": [
104
- {
105
- "uid": "90cf-18"
106
- },
107
- {
108
- "uid": "90cf-20"
109
- }
110
- ]
111
- },
112
- "90cf-16": {
113
- "id": "/packages/form-core/src/utils.ts",
114
- "moduleParts": {
115
- "index.production.js": "90cf-17"
116
- },
117
- "imported": [],
118
- "importedBy": [
119
- {
120
- "uid": "90cf-22"
121
- },
122
- {
123
- "uid": "90cf-18"
124
- }
125
- ]
126
- },
127
- "90cf-18": {
128
- "id": "/packages/form-core/src/FormApi.ts",
129
- "moduleParts": {
130
- "index.production.js": "90cf-19"
131
- },
132
- "imported": [
133
- {
134
- "uid": "90cf-12"
135
- },
136
- {
137
- "uid": "90cf-14"
138
- },
139
- {
140
- "uid": "90cf-16"
141
- }
142
- ],
143
- "importedBy": [
144
- {
145
- "uid": "90cf-22"
146
- }
147
- ]
148
- },
149
- "90cf-20": {
150
- "id": "/packages/form-core/src/FieldApi.ts",
151
- "moduleParts": {
152
- "index.production.js": "90cf-21"
153
- },
154
- "imported": [
155
- {
156
- "uid": "90cf-12"
157
- },
158
- {
159
- "uid": "90cf-14"
160
- }
161
- ],
162
- "importedBy": [
163
- {
164
- "uid": "90cf-22"
165
- }
166
- ]
167
- },
168
- "90cf-22": {
169
- "id": "/packages/form-core/src/index.ts",
170
- "moduleParts": {
171
- "index.production.js": "90cf-23"
172
- },
173
- "imported": [
174
- {
175
- "uid": "90cf-18"
176
- },
177
- {
178
- "uid": "90cf-20"
179
- },
180
- {
181
- "uid": "90cf-16"
182
- }
183
- ],
184
- "importedBy": [],
185
- "isEntry": true
186
- }
187
- },
188
- "env": {
189
- "rollup": "2.78.1"
190
- },
191
- "options": {
192
- "gzip": true,
193
- "brotli": false,
194
- "sourcemap": false
195
- }
196
- }
@@ -1,85 +0,0 @@
1
- import type { DeepKeys, DeepValue, Updater } from './utils';
2
- import type { FormApi, ValidationError } from './FormApi';
3
- import { Store } from '@tanstack/store';
4
- export type ValidationCause = 'change' | 'blur' | 'submit';
5
- type ValidateFn<TData, TFormData> = (value: TData, fieldApi: FieldApi<TData, TFormData>) => ValidationError;
6
- type ValidateAsyncFn<TData, TFormData> = (value: TData, fieldApi: FieldApi<TData, TFormData>) => ValidationError | Promise<ValidationError>;
7
- export interface FieldOptions<TData, TFormData> {
8
- name: unknown extends TFormData ? string : DeepKeys<TFormData>;
9
- index?: TData extends any[] ? number : never;
10
- defaultValue?: TData;
11
- asyncDebounceMs?: number;
12
- asyncAlways?: boolean;
13
- onMount?: (formApi: FieldApi<TData, TFormData>) => void;
14
- onChange?: ValidateFn<TData, TFormData>;
15
- onChangeAsync?: ValidateAsyncFn<TData, TFormData>;
16
- onChangeAsyncDebounceMs?: number;
17
- onBlur?: ValidateFn<TData, TFormData>;
18
- onBlurAsync?: ValidateAsyncFn<TData, TFormData>;
19
- onBlurAsyncDebounceMs?: number;
20
- onSubmitAsync?: ValidateAsyncFn<TData, TFormData>;
21
- defaultMeta?: Partial<FieldMeta>;
22
- }
23
- export type FieldApiOptions<TData, TFormData> = FieldOptions<TData, TFormData> & {
24
- form: FormApi<TFormData>;
25
- };
26
- export type FieldMeta = {
27
- isTouched: boolean;
28
- touchedError?: ValidationError;
29
- error?: ValidationError;
30
- isValidating: boolean;
31
- };
32
- export type UserChangeProps<TData> = {
33
- onChange?: (updater: Updater<TData>) => void;
34
- onBlur?: (event: any) => void;
35
- };
36
- export type UserInputProps = {
37
- onChange?: (event: any) => void;
38
- onBlur?: (event: any) => void;
39
- };
40
- export type ChangeProps<TData> = {
41
- value: TData;
42
- onChange: (value: TData) => void;
43
- onBlur: (event: any) => void;
44
- };
45
- export type InputProps = {
46
- value: string;
47
- onChange: (event: any) => void;
48
- onBlur: (event: any) => void;
49
- };
50
- export type FieldState<TData> = {
51
- value: TData;
52
- meta: FieldMeta;
53
- };
54
- export declare class FieldApi<TData, TFormData> {
55
- #private;
56
- uid: number;
57
- form: FormApi<TFormData>;
58
- name: DeepKeys<TFormData>;
59
- store: Store<FieldState<TData>>;
60
- state: FieldState<TData>;
61
- options: FieldOptions<TData, TFormData>;
62
- constructor(opts: FieldApiOptions<TData, TFormData>);
63
- mount: () => () => void;
64
- update: (opts: FieldApiOptions<TData, TFormData>) => void;
65
- getValue: () => TData;
66
- setValue: (updater: Updater<TData>, options?: {
67
- touch?: boolean;
68
- notify?: boolean;
69
- }) => void;
70
- getMeta: () => FieldMeta;
71
- setMeta: (updater: Updater<FieldMeta>) => void;
72
- getInfo: () => Record<DeepKeys<TFormData>, import("./FormApi").FieldInfo<TFormData>>[DeepKeys<TFormData>];
73
- pushValue: (value: TData extends any[] ? TData[number] : never) => void;
74
- insertValue: (index: number, value: TData) => void;
75
- removeValue: (index: number) => void;
76
- swapValues: (aIndex: number, bIndex: number) => void;
77
- getSubField: <TName extends DeepKeys<TData>>(name: TName) => FieldApi<DeepValue<TData, TName>, TFormData>;
78
- validateSync: (value: TData | undefined, cause: ValidationCause) => Promise<void>;
79
- cancelValidateAsync: () => void;
80
- validateAsync: (value: TData | undefined, cause: ValidationCause) => Promise<ValidationError>;
81
- validate: (cause: ValidationCause, value?: TData) => ValidationError | Promise<ValidationError>;
82
- getChangeProps: <T extends UserChangeProps<any>>(props?: T) => ChangeProps<TData> & Omit<T, keyof ChangeProps<TData>>;
83
- getInputProps: <T extends UserInputProps>(props?: T) => InputProps & Omit<T, keyof InputProps>;
84
- }
85
- export {};
File without changes