@hot-updater/console 0.28.0 → 0.29.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.
- package/.output/nitro.json +17 -0
- package/.output/public/apple-touch-icon.png +0 -0
- package/.output/public/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
- package/.output/public/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
- package/.output/public/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
- package/.output/public/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
- package/.output/public/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
- package/.output/public/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
- package/.output/public/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
- package/.output/public/assets/main-Dlx8-qN-.js +61 -0
- package/.output/public/assets/routes-DB0tWmiJ.js +10 -0
- package/.output/public/assets/styles-Bfxg4M1x.css +2 -0
- package/.output/public/favicon-16x16.png +0 -0
- package/.output/public/favicon-32x32.png +0 -0
- package/.output/public/favicon.ico +0 -0
- package/.output/public/logo.svg +1 -0
- package/.output/public/manifest.json +30 -0
- package/.output/public/robots.txt +3 -0
- package/.output/server/_chunks/ssr-renderer.mjs +15 -0
- package/.output/server/_libs/@floating-ui/core+[...].mjs +698 -0
- package/.output/server/_libs/@floating-ui/dom+[...].mjs +644 -0
- package/.output/server/_libs/@floating-ui/react-dom+[...].mjs +839 -0
- package/.output/server/_libs/@radix-ui/react-alert-dialog+[...].mjs +2093 -0
- package/.output/server/_libs/@radix-ui/react-popper+[...].mjs +287 -0
- package/.output/server/_libs/@radix-ui/react-select+[...].mjs +1003 -0
- package/.output/server/_libs/@tanstack/devtools-event-client+[...].mjs +196 -0
- package/.output/server/_libs/@tanstack/form-core+[...].mjs +2396 -0
- package/.output/server/_libs/@tanstack/react-form+[...].mjs +298 -0
- package/.output/server/_libs/@tanstack/react-router+[...].mjs +13068 -0
- package/.output/server/_libs/@tanstack/react-table+[...].mjs +2372 -0
- package/.output/server/_libs/chownr.mjs +60 -0
- package/.output/server/_libs/class-variance-authority+clsx.mjs +69 -0
- package/.output/server/_libs/core-util-is.mjs +67 -0
- package/.output/server/_libs/dayjs.mjs +408 -0
- package/.output/server/_libs/h3+rou3+srvx.mjs +1158 -0
- package/.output/server/_libs/hookable.mjs +41 -0
- package/.output/server/_libs/immediate.mjs +57 -0
- package/.output/server/_libs/inherits.mjs +39 -0
- package/.output/server/_libs/isaacs__fs-minipass+minipass.mjs +1120 -0
- package/.output/server/_libs/isarray.mjs +10 -0
- package/.output/server/_libs/jszip+[...].mjs +8311 -0
- package/.output/server/_libs/lucide-react.mjs +371 -0
- package/.output/server/_libs/minizlib.mjs +345 -0
- package/.output/server/_libs/next-themes.mjs +49 -0
- package/.output/server/_libs/radix-ui__number.mjs +6 -0
- package/.output/server/_libs/radix-ui__primitive.mjs +9 -0
- package/.output/server/_libs/radix-ui__react-arrow.mjs +23 -0
- package/.output/server/_libs/radix-ui__react-collection.mjs +78 -0
- package/.output/server/_libs/radix-ui__react-direction.mjs +11 -0
- package/.output/server/_libs/radix-ui__react-label.mjs +22 -0
- package/.output/server/_libs/radix-ui__react-separator.mjs +31 -0
- package/.output/server/_libs/radix-ui__react-slider.mjs +451 -0
- package/.output/server/_libs/radix-ui__react-switch.mjs +118 -0
- package/.output/server/_libs/radix-ui__react-tooltip.mjs +491 -0
- package/.output/server/_libs/semver.mjs +1339 -0
- package/.output/server/_libs/sonner.mjs +908 -0
- package/.output/server/_libs/tailwind-merge.mjs +1962 -0
- package/.output/server/_libs/tanstack__history.mjs +322 -0
- package/.output/server/_libs/tanstack__query-core.mjs +2073 -0
- package/.output/server/_libs/tanstack__react-query.mjs +146 -0
- package/.output/server/_libs/tanstack__router-core.mjs +6 -0
- package/.output/server/_libs/tar.mjs +1996 -0
- package/.output/server/_libs/ufo.mjs +64 -0
- package/.output/server/_runtime.mjs +26 -0
- package/.output/server/_ssr/api-rpc-D3ZehMIN.mjs +217 -0
- package/.output/server/_ssr/config.server-JUYQ7UbI.mjs +26 -0
- package/.output/server/_ssr/deleteBundle-DWUxu9-K.mjs +22 -0
- package/.output/server/_ssr/extract-timestamp-from-uuidv7-B90UBADU.mjs +24 -0
- package/.output/server/_ssr/promoteBundle-DtMHuubR.mjs +1571 -0
- package/.output/server/_ssr/router-pgc7NX76.mjs +250 -0
- package/.output/server/_ssr/routes-PqTTQSoI.mjs +1833 -0
- package/.output/server/_ssr/sidebar-DXng0IOP.mjs +439 -0
- package/.output/server/_ssr/ssr.mjs +5050 -0
- package/.output/server/_ssr/start-DQK0r85G.mjs +4 -0
- package/.output/server/_tanstack-start-manifest_v-DTbQVOpU.mjs +17 -0
- package/.output/server/index.mjs +417 -0
- package/.output/server/node_modules/tslib/modules/index.js +70 -0
- package/.output/server/node_modules/tslib/modules/package.json +3 -0
- package/.output/server/node_modules/tslib/package.json +47 -0
- package/.output/server/node_modules/tslib/tslib.js +484 -0
- package/.output/server/package.json +9 -0
- package/README.md +191 -2
- package/package.json +77 -50
- package/dist/.gitkeep +0 -0
- package/dist/assets/favicon-BkwcEHsj.ico +0 -0
- package/dist/assets/index-DUlKsori.css +0 -1
- package/dist/assets/index-ijmIcyn1.js +0 -27
- package/dist/assets/logo-BYNFyja1.png +0 -0
- package/dist/index.cjs +0 -2129
- package/dist/index.d.cts +0 -218
- package/dist/index.d.ts +0 -218
- package/dist/index.html +0 -14
- package/dist/index.js +0 -2125
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
import { r as __toESM, t as __commonJSMin } from "../../_runtime.mjs";
|
|
2
|
+
import { P as require_jsx_runtime } from "../@radix-ui/react-alert-dialog+[...].mjs";
|
|
3
|
+
import { a as uuid, i as functionalUpdate, n as FieldApi, r as FormApi, t as mergeAndUpdate } from "./form-core+[...].mjs";
|
|
4
|
+
import { u as require_react } from "../@floating-ui/react-dom+[...].mjs";
|
|
5
|
+
//#region ../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js
|
|
6
|
+
/**
|
|
7
|
+
* @license React
|
|
8
|
+
* use-sync-external-store-shim.production.js
|
|
9
|
+
*
|
|
10
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
11
|
+
*
|
|
12
|
+
* This source code is licensed under the MIT license found in the
|
|
13
|
+
* LICENSE file in the root directory of this source tree.
|
|
14
|
+
*/
|
|
15
|
+
var require_use_sync_external_store_shim_production = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
16
|
+
var React = require_react();
|
|
17
|
+
function is(x, y) {
|
|
18
|
+
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
19
|
+
}
|
|
20
|
+
var objectIs = "function" === typeof Object.is ? Object.is : is, useState = React.useState, useEffect = React.useEffect, useLayoutEffect = React.useLayoutEffect, useDebugValue = React.useDebugValue;
|
|
21
|
+
function useSyncExternalStore$2(subscribe, getSnapshot) {
|
|
22
|
+
var value = getSnapshot(), _useState = useState({ inst: {
|
|
23
|
+
value,
|
|
24
|
+
getSnapshot
|
|
25
|
+
} }), inst = _useState[0].inst, forceUpdate = _useState[1];
|
|
26
|
+
useLayoutEffect(function() {
|
|
27
|
+
inst.value = value;
|
|
28
|
+
inst.getSnapshot = getSnapshot;
|
|
29
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
30
|
+
}, [
|
|
31
|
+
subscribe,
|
|
32
|
+
value,
|
|
33
|
+
getSnapshot
|
|
34
|
+
]);
|
|
35
|
+
useEffect(function() {
|
|
36
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
37
|
+
return subscribe(function() {
|
|
38
|
+
checkIfSnapshotChanged(inst) && forceUpdate({ inst });
|
|
39
|
+
});
|
|
40
|
+
}, [subscribe]);
|
|
41
|
+
useDebugValue(value);
|
|
42
|
+
return value;
|
|
43
|
+
}
|
|
44
|
+
function checkIfSnapshotChanged(inst) {
|
|
45
|
+
var latestGetSnapshot = inst.getSnapshot;
|
|
46
|
+
inst = inst.value;
|
|
47
|
+
try {
|
|
48
|
+
var nextValue = latestGetSnapshot();
|
|
49
|
+
return !objectIs(inst, nextValue);
|
|
50
|
+
} catch (error) {
|
|
51
|
+
return !0;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
function useSyncExternalStore$1(subscribe, getSnapshot) {
|
|
55
|
+
return getSnapshot();
|
|
56
|
+
}
|
|
57
|
+
var shim = "undefined" === typeof window || "undefined" === typeof window.document || "undefined" === typeof window.document.createElement ? useSyncExternalStore$1 : useSyncExternalStore$2;
|
|
58
|
+
exports.useSyncExternalStore = void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;
|
|
59
|
+
}));
|
|
60
|
+
//#endregion
|
|
61
|
+
//#region ../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/shim/index.js
|
|
62
|
+
var require_shim = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
63
|
+
module.exports = require_use_sync_external_store_shim_production();
|
|
64
|
+
}));
|
|
65
|
+
//#endregion
|
|
66
|
+
//#region ../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js
|
|
67
|
+
/**
|
|
68
|
+
* @license React
|
|
69
|
+
* use-sync-external-store-shim/with-selector.production.js
|
|
70
|
+
*
|
|
71
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
72
|
+
*
|
|
73
|
+
* This source code is licensed under the MIT license found in the
|
|
74
|
+
* LICENSE file in the root directory of this source tree.
|
|
75
|
+
*/
|
|
76
|
+
var require_with_selector_production = /* @__PURE__ */ __commonJSMin(((exports) => {
|
|
77
|
+
var React = require_react(), shim = require_shim();
|
|
78
|
+
function is(x, y) {
|
|
79
|
+
return x === y && (0 !== x || 1 / x === 1 / y) || x !== x && y !== y;
|
|
80
|
+
}
|
|
81
|
+
var objectIs = "function" === typeof Object.is ? Object.is : is, useSyncExternalStore = shim.useSyncExternalStore, useRef = React.useRef, useEffect = React.useEffect, useMemo = React.useMemo, useDebugValue = React.useDebugValue;
|
|
82
|
+
exports.useSyncExternalStoreWithSelector = function(subscribe, getSnapshot, getServerSnapshot, selector, isEqual) {
|
|
83
|
+
var instRef = useRef(null);
|
|
84
|
+
if (null === instRef.current) {
|
|
85
|
+
var inst = {
|
|
86
|
+
hasValue: !1,
|
|
87
|
+
value: null
|
|
88
|
+
};
|
|
89
|
+
instRef.current = inst;
|
|
90
|
+
} else inst = instRef.current;
|
|
91
|
+
instRef = useMemo(function() {
|
|
92
|
+
function memoizedSelector(nextSnapshot) {
|
|
93
|
+
if (!hasMemo) {
|
|
94
|
+
hasMemo = !0;
|
|
95
|
+
memoizedSnapshot = nextSnapshot;
|
|
96
|
+
nextSnapshot = selector(nextSnapshot);
|
|
97
|
+
if (void 0 !== isEqual && inst.hasValue) {
|
|
98
|
+
var currentSelection = inst.value;
|
|
99
|
+
if (isEqual(currentSelection, nextSnapshot)) return memoizedSelection = currentSelection;
|
|
100
|
+
}
|
|
101
|
+
return memoizedSelection = nextSnapshot;
|
|
102
|
+
}
|
|
103
|
+
currentSelection = memoizedSelection;
|
|
104
|
+
if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;
|
|
105
|
+
var nextSelection = selector(nextSnapshot);
|
|
106
|
+
if (void 0 !== isEqual && isEqual(currentSelection, nextSelection)) return memoizedSnapshot = nextSnapshot, currentSelection;
|
|
107
|
+
memoizedSnapshot = nextSnapshot;
|
|
108
|
+
return memoizedSelection = nextSelection;
|
|
109
|
+
}
|
|
110
|
+
var hasMemo = !1, memoizedSnapshot, memoizedSelection, maybeGetServerSnapshot = void 0 === getServerSnapshot ? null : getServerSnapshot;
|
|
111
|
+
return [function() {
|
|
112
|
+
return memoizedSelector(getSnapshot());
|
|
113
|
+
}, null === maybeGetServerSnapshot ? void 0 : function() {
|
|
114
|
+
return memoizedSelector(maybeGetServerSnapshot());
|
|
115
|
+
}];
|
|
116
|
+
}, [
|
|
117
|
+
getSnapshot,
|
|
118
|
+
getServerSnapshot,
|
|
119
|
+
selector,
|
|
120
|
+
isEqual
|
|
121
|
+
]);
|
|
122
|
+
var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);
|
|
123
|
+
useEffect(function() {
|
|
124
|
+
inst.hasValue = !0;
|
|
125
|
+
inst.value = value;
|
|
126
|
+
}, [value]);
|
|
127
|
+
useDebugValue(value);
|
|
128
|
+
return value;
|
|
129
|
+
};
|
|
130
|
+
}));
|
|
131
|
+
//#endregion
|
|
132
|
+
//#region ../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.2.4/node_modules/use-sync-external-store/shim/with-selector.js
|
|
133
|
+
var require_with_selector = /* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
134
|
+
module.exports = require_with_selector_production();
|
|
135
|
+
}));
|
|
136
|
+
//#endregion
|
|
137
|
+
//#region ../../node_modules/.pnpm/@tanstack+react-store@0.9.2_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@tanstack/react-store/dist/esm/useStore.js
|
|
138
|
+
var import_react = /* @__PURE__ */ __toESM(require_react(), 1);
|
|
139
|
+
var import_with_selector = require_with_selector();
|
|
140
|
+
function defaultCompare(a, b) {
|
|
141
|
+
return a === b;
|
|
142
|
+
}
|
|
143
|
+
function useStore(atom, selector, compare = defaultCompare) {
|
|
144
|
+
const subscribe = (0, import_react.useCallback)((handleStoreChange) => {
|
|
145
|
+
if (!atom) return () => {};
|
|
146
|
+
const { unsubscribe } = atom.subscribe(handleStoreChange);
|
|
147
|
+
return unsubscribe;
|
|
148
|
+
}, [atom]);
|
|
149
|
+
const boundGetSnapshot = (0, import_react.useCallback)(() => atom?.get(), [atom]);
|
|
150
|
+
return (0, import_with_selector.useSyncExternalStoreWithSelector)(subscribe, boundGetSnapshot, boundGetSnapshot, selector, compare);
|
|
151
|
+
}
|
|
152
|
+
//#endregion
|
|
153
|
+
//#region ../../node_modules/.pnpm/@tanstack+react-form@1.28.5_@tanstack+react-start@1.166.11_crossws@0.4.4_srvx@0.11.9__r_f96d776af2f7418a6f160b0cfeec673e/node_modules/@tanstack/react-form/dist/esm/useIsomorphicLayoutEffect.js
|
|
154
|
+
var useIsomorphicLayoutEffect = typeof window !== "undefined" ? import_react.useLayoutEffect : import_react.useEffect;
|
|
155
|
+
//#endregion
|
|
156
|
+
//#region ../../node_modules/.pnpm/@tanstack+react-form@1.28.5_@tanstack+react-start@1.166.11_crossws@0.4.4_srvx@0.11.9__r_f96d776af2f7418a6f160b0cfeec673e/node_modules/@tanstack/react-form/dist/esm/useField.js
|
|
157
|
+
var import_jsx_runtime = require_jsx_runtime();
|
|
158
|
+
function useField(opts) {
|
|
159
|
+
const [prevOptions, setPrevOptions] = (0, import_react.useState)(() => ({
|
|
160
|
+
form: opts.form,
|
|
161
|
+
name: opts.name
|
|
162
|
+
}));
|
|
163
|
+
const [fieldApi, setFieldApi] = (0, import_react.useState)(() => {
|
|
164
|
+
return new FieldApi({ ...opts });
|
|
165
|
+
});
|
|
166
|
+
if (prevOptions.form !== opts.form || prevOptions.name !== opts.name) {
|
|
167
|
+
setFieldApi(new FieldApi({ ...opts }));
|
|
168
|
+
setPrevOptions({
|
|
169
|
+
form: opts.form,
|
|
170
|
+
name: opts.name
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
const reactiveStateValue = useStore(fieldApi.store, opts.mode === "array" ? (state) => Object.keys(state.value ?? []).length : (state) => state.value);
|
|
174
|
+
const reactiveMetaIsTouched = useStore(fieldApi.store, (state) => state.meta.isTouched);
|
|
175
|
+
const reactiveMetaIsBlurred = useStore(fieldApi.store, (state) => state.meta.isBlurred);
|
|
176
|
+
const reactiveMetaIsDirty = useStore(fieldApi.store, (state) => state.meta.isDirty);
|
|
177
|
+
const reactiveMetaErrorMap = useStore(fieldApi.store, (state) => state.meta.errorMap);
|
|
178
|
+
const reactiveMetaErrorSourceMap = useStore(fieldApi.store, (state) => state.meta.errorSourceMap);
|
|
179
|
+
const reactiveMetaIsValidating = useStore(fieldApi.store, (state) => state.meta.isValidating);
|
|
180
|
+
const extendedFieldApi = (0, import_react.useMemo)(() => {
|
|
181
|
+
const extendedApi = {
|
|
182
|
+
...fieldApi,
|
|
183
|
+
get state() {
|
|
184
|
+
return {
|
|
185
|
+
value: opts.mode === "array" ? fieldApi.state.value : reactiveStateValue,
|
|
186
|
+
get meta() {
|
|
187
|
+
return {
|
|
188
|
+
...fieldApi.state.meta,
|
|
189
|
+
isTouched: reactiveMetaIsTouched,
|
|
190
|
+
isBlurred: reactiveMetaIsBlurred,
|
|
191
|
+
isDirty: reactiveMetaIsDirty,
|
|
192
|
+
errorMap: reactiveMetaErrorMap,
|
|
193
|
+
errorSourceMap: reactiveMetaErrorSourceMap,
|
|
194
|
+
isValidating: reactiveMetaIsValidating
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
extendedApi.Field = Field;
|
|
201
|
+
return extendedApi;
|
|
202
|
+
}, [
|
|
203
|
+
fieldApi,
|
|
204
|
+
opts.mode,
|
|
205
|
+
reactiveStateValue,
|
|
206
|
+
reactiveMetaIsTouched,
|
|
207
|
+
reactiveMetaIsBlurred,
|
|
208
|
+
reactiveMetaIsDirty,
|
|
209
|
+
reactiveMetaErrorMap,
|
|
210
|
+
reactiveMetaErrorSourceMap,
|
|
211
|
+
reactiveMetaIsValidating
|
|
212
|
+
]);
|
|
213
|
+
useIsomorphicLayoutEffect(fieldApi.mount, [fieldApi]);
|
|
214
|
+
useIsomorphicLayoutEffect(() => {
|
|
215
|
+
fieldApi.update(opts);
|
|
216
|
+
});
|
|
217
|
+
return extendedFieldApi;
|
|
218
|
+
}
|
|
219
|
+
var Field = (({ children, ...fieldOptions }) => {
|
|
220
|
+
const fieldApi = useField(fieldOptions);
|
|
221
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: (0, import_react.useMemo)(() => functionalUpdate(children, fieldApi), [children, fieldApi]) });
|
|
222
|
+
});
|
|
223
|
+
//#endregion
|
|
224
|
+
//#region ../../node_modules/.pnpm/@tanstack+react-form@1.28.5_@tanstack+react-start@1.166.11_crossws@0.4.4_srvx@0.11.9__r_f96d776af2f7418a6f160b0cfeec673e/node_modules/@tanstack/react-form/dist/esm/useUUID.js
|
|
225
|
+
function useUUID() {
|
|
226
|
+
return (0, import_react.useState)(() => uuid())[0];
|
|
227
|
+
}
|
|
228
|
+
//#endregion
|
|
229
|
+
//#region ../../node_modules/.pnpm/@tanstack+react-form@1.28.5_@tanstack+react-start@1.166.11_crossws@0.4.4_srvx@0.11.9__r_f96d776af2f7418a6f160b0cfeec673e/node_modules/@tanstack/react-form/dist/esm/useFormId.js
|
|
230
|
+
var _React = import_react;
|
|
231
|
+
var useFormId = "19.2.4".split(".")[0] === "17" ? useUUID : _React.useId;
|
|
232
|
+
//#endregion
|
|
233
|
+
//#region ../../node_modules/.pnpm/@tanstack+react-form@1.28.5_@tanstack+react-start@1.166.11_crossws@0.4.4_srvx@0.11.9__r_f96d776af2f7418a6f160b0cfeec673e/node_modules/@tanstack/react-form/dist/esm/useForm.js
|
|
234
|
+
function LocalSubscribe({ form, selector = (state) => state, children }) {
|
|
235
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: functionalUpdate(children, useStore(form.store, selector)) });
|
|
236
|
+
}
|
|
237
|
+
function useForm(opts) {
|
|
238
|
+
const fallbackFormId = useFormId();
|
|
239
|
+
const [prevFormId, setPrevFormId] = (0, import_react.useState)(opts?.formId);
|
|
240
|
+
const [formApi, setFormApi] = (0, import_react.useState)(() => {
|
|
241
|
+
return new FormApi({
|
|
242
|
+
...opts,
|
|
243
|
+
formId: opts?.formId ?? fallbackFormId
|
|
244
|
+
});
|
|
245
|
+
});
|
|
246
|
+
if (prevFormId !== opts?.formId) {
|
|
247
|
+
const formId = opts?.formId ?? fallbackFormId;
|
|
248
|
+
setFormApi(new FormApi({
|
|
249
|
+
...opts,
|
|
250
|
+
formId
|
|
251
|
+
}));
|
|
252
|
+
setPrevFormId(formId);
|
|
253
|
+
}
|
|
254
|
+
const extendedFormApi = (0, import_react.useMemo)(() => {
|
|
255
|
+
const extendedApi = {
|
|
256
|
+
...formApi,
|
|
257
|
+
handleSubmit: ((...props) => {
|
|
258
|
+
return formApi._handleSubmit(...props);
|
|
259
|
+
}),
|
|
260
|
+
get formId() {
|
|
261
|
+
return formApi._formId;
|
|
262
|
+
},
|
|
263
|
+
get state() {
|
|
264
|
+
return formApi.store.state;
|
|
265
|
+
}
|
|
266
|
+
};
|
|
267
|
+
extendedApi.Field = function APIField(props) {
|
|
268
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Field, {
|
|
269
|
+
...props,
|
|
270
|
+
form: formApi
|
|
271
|
+
});
|
|
272
|
+
};
|
|
273
|
+
extendedApi.Subscribe = function Subscribe(props) {
|
|
274
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(LocalSubscribe, {
|
|
275
|
+
form: formApi,
|
|
276
|
+
selector: props.selector,
|
|
277
|
+
children: props.children
|
|
278
|
+
});
|
|
279
|
+
};
|
|
280
|
+
return extendedApi;
|
|
281
|
+
}, [formApi]);
|
|
282
|
+
useIsomorphicLayoutEffect(formApi.mount, []);
|
|
283
|
+
useIsomorphicLayoutEffect(() => {
|
|
284
|
+
formApi.update(opts);
|
|
285
|
+
});
|
|
286
|
+
const hasRan = (0, import_react.useRef)(false);
|
|
287
|
+
useIsomorphicLayoutEffect(() => {
|
|
288
|
+
if (!hasRan.current) return;
|
|
289
|
+
if (!opts?.transform) return;
|
|
290
|
+
mergeAndUpdate(formApi, opts.transform);
|
|
291
|
+
}, [formApi, opts?.transform]);
|
|
292
|
+
useIsomorphicLayoutEffect(() => {
|
|
293
|
+
hasRan.current = true;
|
|
294
|
+
});
|
|
295
|
+
return extendedFormApi;
|
|
296
|
+
}
|
|
297
|
+
//#endregion
|
|
298
|
+
export { useStore as n, useForm as t };
|