@fragno-dev/stripe 1.0.0 → 2.0.2
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/dist/browser/client/react.d.ts +1 -1
- package/dist/browser/client/react.d.ts.map +1 -1
- package/dist/browser/client/react.js +105 -13
- package/dist/browser/client/react.js.map +1 -1
- package/dist/browser/client/solid.d.ts +1 -1
- package/dist/browser/client/solid.d.ts.map +1 -1
- package/dist/browser/client/solid.js +25 -11
- package/dist/browser/client/solid.js.map +1 -1
- package/dist/browser/client/svelte.d.ts +1 -1
- package/dist/browser/client/svelte.d.ts.map +1 -1
- package/dist/browser/client/svelte.js +11 -3
- package/dist/browser/client/svelte.js.map +1 -1
- package/dist/browser/client/vanilla.d.ts +1 -1
- package/dist/browser/client/vanilla.d.ts.map +1 -1
- package/dist/browser/client/vanilla.js +21 -1
- package/dist/browser/client/vanilla.js.map +1 -1
- package/dist/browser/client/vue.d.ts +1 -1
- package/dist/browser/client/vue.d.ts.map +1 -1
- package/dist/browser/client/vue.js +23 -1
- package/dist/browser/client/vue.js.map +1 -1
- package/dist/browser/index.d.ts +31 -66
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js +1 -1
- package/dist/browser/{src-Cw3xL5oQ.js → src-D6VWnvEs.js} +658 -449
- package/dist/browser/src-D6VWnvEs.js.map +1 -0
- package/dist/node/index.d.ts +32 -67
- package/dist/node/index.d.ts.map +1 -1
- package/dist/node/index.js +512 -462
- package/dist/node/index.js.map +1 -1
- package/package.json +33 -54
- package/dist/browser/src-Cw3xL5oQ.js.map +0 -1
|
@@ -122,7 +122,7 @@ declare function createStripeFragmentClient(config?: FragnoPublicClientConfig):
|
|
|
122
122
|
createdAt: zod619.ZodDate;
|
|
123
123
|
updatedAt: zod619.ZodDate;
|
|
124
124
|
}, zod_v4_core48.$strip>>;
|
|
125
|
-
}, zod_v4_core48.$strip>,
|
|
125
|
+
}, zod_v4_core48.$strip>, "UNAUTHORIZED", string>;
|
|
126
126
|
useBillingPortal: _fragno_dev_core_react0.FragnoReactMutator<_fragno_dev_core_api5.NonGetHTTPMethod, "/portal", zod619.ZodObject<{
|
|
127
127
|
returnUrl: zod619.ZodURL;
|
|
128
128
|
}, zod_v4_core48.$strip> | undefined, zod619.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.d.ts","names":[],"sources":["../../../../src/client/react.ts"],"sourcesContent":[],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"react.d.ts","names":[],"sources":["../../../../src/client/react.ts"],"sourcesContent":[],"mappings":";;;;;;;iBAKgB,0BAAA,UAAmC;;;UAA6B,MAAA,CAAA;;;MAAhE,aAAA,oBAA0B,kBAAA;MAAA,OAAA,kBAAA;MAAS,QAAA,oBAAA,mBAAA,kBAAA,CAAA;MAA6B,OAAA,oBAAA,gBAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { createStripeFragmentClients, isGetHook, isMutatorHook, isReadableAtom, isStore } from "../src-
|
|
2
|
-
import { useCallback, useMemo, useRef, useSyncExternalStore } from "react";
|
|
1
|
+
import { createStripeFragmentClients, isGetHook, isMutatorHook, isReadableAtom, isStore } from "../src-D6VWnvEs.js";
|
|
2
|
+
import { useCallback, useEffect, useMemo, useRef, useSyncExternalStore } from "react";
|
|
3
3
|
|
|
4
|
-
//#region ../../node_modules/.pnpm/nanostores@1.
|
|
4
|
+
//#region ../../node_modules/.pnpm/nanostores@1.2.0/node_modules/nanostores/listen-keys/index.js
|
|
5
5
|
function listenKeys($store, keys, listener) {
|
|
6
6
|
let keysSet = new Set(keys).add(void 0);
|
|
7
7
|
return $store.listen((value, oldValue, changed) => {
|
|
@@ -28,17 +28,109 @@ function createReactMutator(hook) {
|
|
|
28
28
|
return useStore(useMemo(() => hook.mutatorStore, [hook]));
|
|
29
29
|
};
|
|
30
30
|
}
|
|
31
|
-
|
|
32
|
-
if (
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
31
|
+
const isPlainObject = (value) => {
|
|
32
|
+
if (!value || typeof value !== "object") return false;
|
|
33
|
+
const prototype = Object.getPrototypeOf(value);
|
|
34
|
+
return prototype === Object.prototype || prototype === null;
|
|
35
|
+
};
|
|
36
|
+
const areStoreFactoryValuesEqual = (left, right) => {
|
|
37
|
+
if (Object.is(left, right)) return true;
|
|
38
|
+
if (Array.isArray(left) && Array.isArray(right)) return left.length === right.length && left.every((value, index) => areStoreFactoryValuesEqual(value, right[index]));
|
|
39
|
+
if (left instanceof Date && right instanceof Date) return left.getTime() === right.getTime();
|
|
40
|
+
if (isReadableAtom(left) || isReadableAtom(right)) return left === right;
|
|
41
|
+
if (typeof left === "function" || typeof right === "function") return left === right;
|
|
42
|
+
if (isPlainObject(left) && isPlainObject(right)) {
|
|
43
|
+
const leftKeys = Object.keys(left).sort();
|
|
44
|
+
const rightKeys = Object.keys(right).sort();
|
|
45
|
+
return leftKeys.length === rightKeys.length && leftKeys.every((key, index) => key === rightKeys[index] && areStoreFactoryValuesEqual(left[key], right[key]));
|
|
46
|
+
}
|
|
47
|
+
return false;
|
|
48
|
+
};
|
|
49
|
+
const areStoreFactoryArgsEqual = (left, right) => left.length === right.length && left.every((value, index) => areStoreFactoryValuesEqual(value, right[index]));
|
|
50
|
+
const getStoreDisposer = (value) => {
|
|
51
|
+
const disposer = value[Symbol.dispose];
|
|
52
|
+
return typeof disposer === "function" ? disposer.bind(value) : void 0;
|
|
53
|
+
};
|
|
54
|
+
const createReactStoreObjectView = (value, getAtomValue) => {
|
|
55
|
+
const atomValues = /* @__PURE__ */ new Map();
|
|
56
|
+
const boundMethods = /* @__PURE__ */ new Map();
|
|
57
|
+
return new Proxy(value, { get(target, property, _receiver) {
|
|
58
|
+
const propertyValue = Reflect.get(target, property, target);
|
|
59
|
+
if (isReadableAtom(propertyValue)) {
|
|
60
|
+
if (atomValues.has(propertyValue)) return atomValues.get(propertyValue);
|
|
61
|
+
const atomValue = getAtomValue(propertyValue);
|
|
62
|
+
atomValues.set(propertyValue, atomValue);
|
|
63
|
+
return atomValue;
|
|
40
64
|
}
|
|
41
|
-
|
|
65
|
+
if (typeof propertyValue === "function") {
|
|
66
|
+
if (boundMethods.has(property)) return boundMethods.get(property);
|
|
67
|
+
const boundMethod = propertyValue.bind(target);
|
|
68
|
+
boundMethods.set(property, boundMethod);
|
|
69
|
+
return boundMethod;
|
|
70
|
+
}
|
|
71
|
+
return propertyValue;
|
|
72
|
+
} });
|
|
73
|
+
};
|
|
74
|
+
function unwrapReactStoreValueOnServer(value) {
|
|
75
|
+
if (isReadableAtom(value)) return value.get();
|
|
76
|
+
return createReactStoreObjectView(value, (store) => store.get());
|
|
77
|
+
}
|
|
78
|
+
function unwrapReactStoreValue(value) {
|
|
79
|
+
if (isReadableAtom(value)) return useStore(value);
|
|
80
|
+
const atomEntries = Object.keys(value).flatMap((key) => {
|
|
81
|
+
const fieldValue = value[key];
|
|
82
|
+
return isReadableAtom(fieldValue) ? [[key, fieldValue]] : [];
|
|
83
|
+
});
|
|
84
|
+
const snapshotRef = useRef(atomEntries.map(([, store]) => store.get()));
|
|
85
|
+
const getSnapshot = () => {
|
|
86
|
+
const nextSnapshot = atomEntries.map(([, store]) => store.get());
|
|
87
|
+
const previousSnapshot = snapshotRef.current;
|
|
88
|
+
if (previousSnapshot.length === nextSnapshot.length && previousSnapshot.every((entry, index) => Object.is(entry, nextSnapshot[index]))) return previousSnapshot;
|
|
89
|
+
snapshotRef.current = nextSnapshot;
|
|
90
|
+
return nextSnapshot;
|
|
91
|
+
};
|
|
92
|
+
const atomValues = useSyncExternalStore((onStoreChange) => {
|
|
93
|
+
const unsubscribes = atomEntries.map(([, store]) => store.listen(onStoreChange));
|
|
94
|
+
return () => {
|
|
95
|
+
for (const unsubscribe of unsubscribes) unsubscribe();
|
|
96
|
+
};
|
|
97
|
+
}, getSnapshot, getSnapshot);
|
|
98
|
+
return useMemo(() => createReactStoreObjectView(value, (store) => {
|
|
99
|
+
const atomIndex = atomEntries.findIndex(([, entryStore]) => entryStore === store);
|
|
100
|
+
return atomIndex === -1 ? store.get() : atomValues[atomIndex];
|
|
101
|
+
}), [
|
|
102
|
+
value,
|
|
103
|
+
atomEntries,
|
|
104
|
+
atomValues
|
|
105
|
+
]);
|
|
106
|
+
}
|
|
107
|
+
function createReactStore(hook) {
|
|
108
|
+
return (...args) => {
|
|
109
|
+
const stableArgsRef = useRef(args);
|
|
110
|
+
const pendingDisposalsRef = useRef(/* @__PURE__ */ new Map());
|
|
111
|
+
if (!areStoreFactoryArgsEqual(stableArgsRef.current, args)) stableArgsRef.current = args;
|
|
112
|
+
const value = useMemo(() => {
|
|
113
|
+
if ("factory" in hook) return hook.factory(...stableArgsRef.current);
|
|
114
|
+
return hook.obj;
|
|
115
|
+
}, [hook, stableArgsRef.current]);
|
|
116
|
+
useEffect(() => {
|
|
117
|
+
const disposer = getStoreDisposer(value);
|
|
118
|
+
const pendingTimeout = pendingDisposalsRef.current.get(value);
|
|
119
|
+
if (pendingTimeout !== void 0) {
|
|
120
|
+
clearTimeout(pendingTimeout);
|
|
121
|
+
pendingDisposalsRef.current.delete(value);
|
|
122
|
+
}
|
|
123
|
+
return () => {
|
|
124
|
+
if (!disposer) return;
|
|
125
|
+
const timeoutId = setTimeout(() => {
|
|
126
|
+
pendingDisposalsRef.current.delete(value);
|
|
127
|
+
disposer();
|
|
128
|
+
}, 0);
|
|
129
|
+
pendingDisposalsRef.current.set(value, timeoutId);
|
|
130
|
+
};
|
|
131
|
+
}, [value]);
|
|
132
|
+
if (typeof window === "undefined") return unwrapReactStoreValueOnServer(value);
|
|
133
|
+
return unwrapReactStoreValue(value);
|
|
42
134
|
};
|
|
43
135
|
}
|
|
44
136
|
function useFragno(clientObj) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.js","names":["listenKeys","$store","keys","listener","keysSet","Set","add","undefined","listen","value","oldValue","changed","has","subscribeKeys","unbind","hydrateFromWindow","isReadableAtom","isGetHook","isMutatorHook","isStore","listenKeys","useCallback","useMemo","useRef","useSyncExternalStore","createReactHook","hook","path","query","pathParamValues","Object","values","queryParamValues","store","window","get","useStore","createReactMutator","mutatorStore","createReactStore","obj","result","key","prototype","hasOwnProperty","call","value","useFragno","clientObj","options","snapshotRef","keys","deps","subscribe","onChange","emitChange","current","length","listen","FragnoHydrator","children","useFragno","createStripeFragmentClients","FragnoPublicClientConfig","createStripeFragmentClient","config"],"sources":["../../../../../node_modules/.pnpm/nanostores@1.1.0/node_modules/nanostores/listen-keys/index.js","../../../../fragno/dist/client/react.js","../../../src/client/react.ts"],"sourcesContent":["export function listenKeys($store, keys, listener) {\n let keysSet = new Set(keys).add(undefined)\n return $store.listen((value, oldValue, changed) => {\n if (keysSet.has(changed)) {\n listener(value, oldValue, changed)\n }\n })\n}\n\nexport function subscribeKeys($store, keys, listener) {\n let unbind = listenKeys($store, keys, listener)\n listener($store.value)\n return unbind\n}\n","import { hydrateFromWindow } from \"../util/ssr.js\";\nimport { isReadableAtom } from \"../util/nanostores.js\";\nimport { isGetHook, isMutatorHook, isStore } from \"./client.js\";\nimport { listenKeys } from \"nanostores\";\nimport { useCallback, useMemo, useRef, useSyncExternalStore } from \"react\";\n\n//#region src/client/react.ts\nfunction createReactHook(hook) {\n\treturn ({ path, query } = {}) => {\n\t\tconst pathParamValues = path ? Object.values(path) : [];\n\t\tconst queryParamValues = query ? Object.values(query) : [];\n\t\tconst store = useMemo(() => hook.store({\n\t\t\tpath,\n\t\t\tquery\n\t\t}), [hook, ...[...pathParamValues, ...queryParamValues]]);\n\t\tif (typeof window === \"undefined\") return store.get();\n\t\treturn useStore(store);\n\t};\n}\nfunction createReactMutator(hook) {\n\treturn () => {\n\t\treturn useStore(useMemo(() => hook.mutatorStore, [hook]));\n\t};\n}\nfunction createReactStore(hook) {\n\tif (isReadableAtom(hook.obj)) return () => useStore(hook.obj);\n\treturn () => {\n\t\tconst result = {};\n\t\tfor (const key in hook.obj) {\n\t\t\tif (!Object.prototype.hasOwnProperty.call(hook.obj, key)) continue;\n\t\t\tconst value = hook.obj[key];\n\t\t\tif (isReadableAtom(value)) result[key] = useStore(value);\n\t\t\telse result[key] = value;\n\t\t}\n\t\treturn result;\n\t};\n}\nfunction useFragno(clientObj) {\n\tconst result = {};\n\tfor (const key in clientObj) {\n\t\tif (!Object.prototype.hasOwnProperty.call(clientObj, key)) continue;\n\t\tconst hook = clientObj[key];\n\t\tif (isGetHook(hook)) result[key] = createReactHook(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createReactMutator(hook);\n\t\telse if (isStore(hook)) result[key] = createReactStore(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\nfunction useStore(store, options = {}) {\n\tconst snapshotRef = useRef(store.get());\n\tconst { keys, deps = [store, keys] } = options;\n\tconst subscribe = useCallback((onChange) => {\n\t\tconst emitChange = (value) => {\n\t\t\tif (snapshotRef.current === value) return;\n\t\t\tsnapshotRef.current = value;\n\t\t\tonChange();\n\t\t};\n\t\temitChange(store.value);\n\t\tif (keys?.length) return listenKeys(store, keys, emitChange);\n\t\treturn store.listen(emitChange);\n\t}, deps);\n\tconst get = () => snapshotRef.current;\n\treturn useSyncExternalStore(subscribe, get, () => {\n\t\treturn get();\n\t});\n}\nfunction FragnoHydrator({ children }) {\n\tuseMemo(() => {\n\t\thydrateFromWindow();\n\t}, []);\n\treturn children;\n}\n\n//#endregion\nexport { FragnoHydrator, useFragno, useStore };\n//# sourceMappingURL=react.js.map","import { useFragno } from \"@fragno-dev/core/react\";\nimport { createStripeFragmentClients } from \"..\";\nimport type { FragnoPublicClientConfig } from \"@fragno-dev/core/client\";\n\nexport function createStripeFragmentClient(config: FragnoPublicClientConfig = {}) {\n return useFragno(createStripeFragmentClients(config));\n}\n"],"x_google_ignoreList":[0],"mappings":";;;;AAAA,SAAgBA,WAAWC,QAAQC,MAAMC,UAAU;CACjD,IAAIC,UAAU,IAAIC,IAAIH,MAAMI,WAAc;AAC1C,QAAOL,OAAOO,OAAO,CAACC,OAAOC,UAAUC,YAAY;AACjD,MAAIP,QAAQQ,IAAID,QAAQ,CACtBR,UAASM,OAAOC,UAAUC,QAAQ;CAErC,EAAC;AACJ;;;;ACAA,SAASc,gBAAgBC,MAAM;AAC9B,QAAO,CAAC,EAAEC,MAAMC,OAAO,GAAG,CAAE,MAAK;EAChC,MAAMC,kBAAkBF,OAAOG,OAAOC,OAAOJ,KAAK,GAAG,CAAE;EACvD,MAAMK,mBAAmBJ,QAAQE,OAAOC,OAAOH,MAAM,GAAG,CAAE;EAC1D,MAAMK,QAAQX,QAAQ,MAAMI,KAAKO,MAAM;GACtCN;GACAC;EACA,EAAC,EAAE,CAACF,MAAM,GAAG,CAAC,GAAGG,iBAAiB,GAAGG,gBAAiB,CAAC,EAAC;AACzD,aAAWE,WAAW,YAAa,QAAOD,MAAME,KAAK;AACrD,SAAOC,SAASH,MAAM;CACtB;AACF;AACA,SAASI,mBAAmBX,MAAM;AACjC,QAAO,MAAM;AACZ,SAAOU,SAASd,QAAQ,MAAMI,KAAKY,cAAc,CAACZ,IAAK,EAAC,CAAC;CACzD;AACF;AACA,SAASa,iBAAiBb,MAAM;AAC/B,KAAIV,eAAeU,KAAKc,IAAI,CAAE,QAAO,MAAMJ,SAASV,KAAKc,IAAI;AAC7D,QAAO,MAAM;EACZ,MAAMC,SAAS,CAAE;AACjB,OAAK,MAAMC,OAAOhB,KAAKc,KAAK;AAC3B,QAAKV,OAAOa,UAAUC,eAAeC,KAAKnB,KAAKc,KAAKE,IAAI,CAAE;GAC1D,MAAMI,QAAQpB,KAAKc,IAAIE;AACvB,OAAI1B,eAAe8B,MAAM,CAAEL,QAAOC,OAAON,SAASU,MAAM;OACnDL,QAAOC,OAAOI;EACpB;AACA,SAAOL;CACP;AACF;AACA,SAASM,UAAUC,WAAW;CAC7B,MAAMP,SAAS,CAAE;AACjB,MAAK,MAAMC,OAAOM,WAAW;AAC5B,OAAKlB,OAAOa,UAAUC,eAAeC,KAAKG,WAAWN,IAAI,CAAE;EAC3D,MAAMhB,OAAOsB,UAAUN;AACvB,MAAIzB,UAAUS,KAAK,CAAEe,QAAOC,OAAOjB,gBAAgBC,KAAK;WAC/CR,cAAcQ,KAAK,CAAEe,QAAOC,OAAOL,mBAAmBX,KAAK;WAC3DP,QAAQO,KAAK,CAAEe,QAAOC,OAAOH,iBAAiBb,KAAK;MACvDe,QAAOC,OAAOhB;CACpB;AACA,QAAOe;AACR;AACA,SAASL,SAASH,OAAOgB,UAAU,CAAE,GAAE;CACtC,MAAMC,cAAc3B,OAAOU,MAAME,KAAK,CAAC;CACvC,MAAM,EAAEgB,MAAMC,OAAO,CAACnB,OAAOkB,IAAI,GAAG,GAAGF;CACvC,MAAMI,YAAYhC,YAAaiC,cAAa;EAC3C,MAAMC,aAAcT,WAAU;AAC7B,OAAII,YAAYM,YAAYV,MAAO;AACnCI,eAAYM,UAAUV;AACtBQ,aAAU;EACV;AACDC,aAAWtB,MAAMa,MAAM;AACvB,MAAIK,MAAMM,OAAQ,QAAOrC,WAAWa,OAAOkB,MAAMI,WAAW;AAC5D,SAAOtB,MAAMyB,OAAOH,WAAW;CAC/B,GAAEH,KAAK;CACR,MAAMjB,MAAMA,MAAMe,YAAYM;AAC9B,QAAOhC,qBAAqB6B,WAAWlB,KAAK,MAAM;AACjD,SAAOA,KAAK;CACZ,EAAC;AACH;;;;AC9DA,SAAgB6B,2BAA2BC,SAAmC,CAAE,GAAE;AAChF,QAAOJ,UAAUC,4BAA4BG,OAAO,CAAC;AACvD"}
|
|
1
|
+
{"version":3,"file":"react.js","names":["listenKeys","$store","keys","listener","keysSet","Set","add","undefined","listen","value","oldValue","changed","has","subscribeKeys","unbind","isReadableAtom","hydrateFromWindow","isGetHook","isMutatorHook","isStore","listenKeys","useCallback","useEffect","useMemo","useRef","useSyncExternalStore","createReactHook","hook","path","query","pathParamValues","Object","values","queryParamValues","store","window","get","useStore","createReactMutator","mutatorStore","isPlainObject","value","prototype","getPrototypeOf","areStoreFactoryValuesEqual","left","right","is","Array","isArray","length","every","index","Date","getTime","leftKeys","keys","sort","rightKeys","key","areStoreFactoryArgsEqual","getStoreDisposer","disposer","Symbol","dispose","bind","createReactStoreObjectView","getAtomValue","atomValues","Map","boundMethods","Proxy","target","property","_receiver","propertyValue","Reflect","has","atomValue","set","boundMethod","unwrapReactStoreValueOnServer","unwrapReactStoreValue","atomEntries","flatMap","fieldValue","snapshotRef","map","getSnapshot","nextSnapshot","previousSnapshot","current","entry","onStoreChange","unsubscribes","listen","unsubscribe","atomIndex","findIndex","entryStore","createReactStore","args","stableArgsRef","pendingDisposalsRef","factory","obj","pendingTimeout","clearTimeout","delete","timeoutId","setTimeout","useFragno","clientObj","result","hasOwnProperty","call","options","deps","subscribe","onChange","emitChange","FragnoHydrator","children","FragnoPublicClientConfig","useFragno","createStripeFragmentClients","createStripeFragmentClient","config"],"sources":["../../../../../node_modules/.pnpm/nanostores@1.2.0/node_modules/nanostores/listen-keys/index.js","../../../../fragno/dist/client/react.js","../../../src/client/react.ts"],"sourcesContent":["export function listenKeys($store, keys, listener) {\n let keysSet = new Set(keys).add(undefined)\n return $store.listen((value, oldValue, changed) => {\n if (keysSet.has(changed)) {\n listener(value, oldValue, changed)\n }\n })\n}\n\nexport function subscribeKeys($store, keys, listener) {\n let unbind = listenKeys($store, keys, listener)\n listener($store.value)\n return unbind\n}\n","import { isReadableAtom } from \"../util/nanostores.js\";\nimport { hydrateFromWindow } from \"../util/ssr.js\";\nimport { isGetHook, isMutatorHook, isStore } from \"./client.js\";\nimport { listenKeys } from \"nanostores\";\nimport { useCallback, useEffect, useMemo, useRef, useSyncExternalStore } from \"react\";\n\n//#region src/client/react.ts\nfunction createReactHook(hook) {\n\treturn ({ path, query } = {}) => {\n\t\tconst pathParamValues = path ? Object.values(path) : [];\n\t\tconst queryParamValues = query ? Object.values(query) : [];\n\t\tconst store = useMemo(() => hook.store({\n\t\t\tpath,\n\t\t\tquery\n\t\t}), [hook, ...[...pathParamValues, ...queryParamValues]]);\n\t\tif (typeof window === \"undefined\") return store.get();\n\t\treturn useStore(store);\n\t};\n}\nfunction createReactMutator(hook) {\n\treturn () => {\n\t\treturn useStore(useMemo(() => hook.mutatorStore, [hook]));\n\t};\n}\nconst isPlainObject = (value) => {\n\tif (!value || typeof value !== \"object\") return false;\n\tconst prototype = Object.getPrototypeOf(value);\n\treturn prototype === Object.prototype || prototype === null;\n};\nconst areStoreFactoryValuesEqual = (left, right) => {\n\tif (Object.is(left, right)) return true;\n\tif (Array.isArray(left) && Array.isArray(right)) return left.length === right.length && left.every((value, index) => areStoreFactoryValuesEqual(value, right[index]));\n\tif (left instanceof Date && right instanceof Date) return left.getTime() === right.getTime();\n\tif (isReadableAtom(left) || isReadableAtom(right)) return left === right;\n\tif (typeof left === \"function\" || typeof right === \"function\") return left === right;\n\tif (isPlainObject(left) && isPlainObject(right)) {\n\t\tconst leftKeys = Object.keys(left).sort();\n\t\tconst rightKeys = Object.keys(right).sort();\n\t\treturn leftKeys.length === rightKeys.length && leftKeys.every((key, index) => key === rightKeys[index] && areStoreFactoryValuesEqual(left[key], right[key]));\n\t}\n\treturn false;\n};\nconst areStoreFactoryArgsEqual = (left, right) => left.length === right.length && left.every((value, index) => areStoreFactoryValuesEqual(value, right[index]));\nconst getStoreDisposer = (value) => {\n\tconst disposer = value[Symbol.dispose];\n\treturn typeof disposer === \"function\" ? disposer.bind(value) : void 0;\n};\nconst createReactStoreObjectView = (value, getAtomValue) => {\n\tconst atomValues = /* @__PURE__ */ new Map();\n\tconst boundMethods = /* @__PURE__ */ new Map();\n\treturn new Proxy(value, { get(target, property, _receiver) {\n\t\tconst propertyValue = Reflect.get(target, property, target);\n\t\tif (isReadableAtom(propertyValue)) {\n\t\t\tif (atomValues.has(propertyValue)) return atomValues.get(propertyValue);\n\t\t\tconst atomValue = getAtomValue(propertyValue);\n\t\t\tatomValues.set(propertyValue, atomValue);\n\t\t\treturn atomValue;\n\t\t}\n\t\tif (typeof propertyValue === \"function\") {\n\t\t\tif (boundMethods.has(property)) return boundMethods.get(property);\n\t\t\tconst boundMethod = propertyValue.bind(target);\n\t\t\tboundMethods.set(property, boundMethod);\n\t\t\treturn boundMethod;\n\t\t}\n\t\treturn propertyValue;\n\t} });\n};\nfunction unwrapReactStoreValueOnServer(value) {\n\tif (isReadableAtom(value)) return value.get();\n\treturn createReactStoreObjectView(value, (store) => store.get());\n}\nfunction unwrapReactStoreValue(value) {\n\tif (isReadableAtom(value)) return useStore(value);\n\tconst atomEntries = Object.keys(value).flatMap((key) => {\n\t\tconst fieldValue = value[key];\n\t\treturn isReadableAtom(fieldValue) ? [[key, fieldValue]] : [];\n\t});\n\tconst snapshotRef = useRef(atomEntries.map(([, store]) => store.get()));\n\tconst getSnapshot = () => {\n\t\tconst nextSnapshot = atomEntries.map(([, store]) => store.get());\n\t\tconst previousSnapshot = snapshotRef.current;\n\t\tif (previousSnapshot.length === nextSnapshot.length && previousSnapshot.every((entry, index) => Object.is(entry, nextSnapshot[index]))) return previousSnapshot;\n\t\tsnapshotRef.current = nextSnapshot;\n\t\treturn nextSnapshot;\n\t};\n\tconst atomValues = useSyncExternalStore((onStoreChange) => {\n\t\tconst unsubscribes = atomEntries.map(([, store]) => store.listen(onStoreChange));\n\t\treturn () => {\n\t\t\tfor (const unsubscribe of unsubscribes) unsubscribe();\n\t\t};\n\t}, getSnapshot, getSnapshot);\n\treturn useMemo(() => createReactStoreObjectView(value, (store) => {\n\t\tconst atomIndex = atomEntries.findIndex(([, entryStore]) => entryStore === store);\n\t\treturn atomIndex === -1 ? store.get() : atomValues[atomIndex];\n\t}), [\n\t\tvalue,\n\t\tatomEntries,\n\t\tatomValues\n\t]);\n}\nfunction createReactStore(hook) {\n\treturn ((...args) => {\n\t\tconst stableArgsRef = useRef(args);\n\t\tconst pendingDisposalsRef = useRef(/* @__PURE__ */ new Map());\n\t\tif (!areStoreFactoryArgsEqual(stableArgsRef.current, args)) stableArgsRef.current = args;\n\t\tconst value = useMemo(() => {\n\t\t\tif (\"factory\" in hook) return hook.factory(...stableArgsRef.current);\n\t\t\treturn hook.obj;\n\t\t}, [hook, stableArgsRef.current]);\n\t\tuseEffect(() => {\n\t\t\tconst disposer = getStoreDisposer(value);\n\t\t\tconst pendingTimeout = pendingDisposalsRef.current.get(value);\n\t\t\tif (pendingTimeout !== void 0) {\n\t\t\t\tclearTimeout(pendingTimeout);\n\t\t\t\tpendingDisposalsRef.current.delete(value);\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (!disposer) return;\n\t\t\t\tconst timeoutId = setTimeout(() => {\n\t\t\t\t\tpendingDisposalsRef.current.delete(value);\n\t\t\t\t\tdisposer();\n\t\t\t\t}, 0);\n\t\t\t\tpendingDisposalsRef.current.set(value, timeoutId);\n\t\t\t};\n\t\t}, [value]);\n\t\tif (typeof window === \"undefined\") return unwrapReactStoreValueOnServer(value);\n\t\treturn unwrapReactStoreValue(value);\n\t});\n}\nfunction useFragno(clientObj) {\n\tconst result = {};\n\tfor (const key in clientObj) {\n\t\tif (!Object.prototype.hasOwnProperty.call(clientObj, key)) continue;\n\t\tconst hook = clientObj[key];\n\t\tif (isGetHook(hook)) result[key] = createReactHook(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createReactMutator(hook);\n\t\telse if (isStore(hook)) result[key] = createReactStore(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\nfunction useStore(store, options = {}) {\n\tconst snapshotRef = useRef(store.get());\n\tconst { keys, deps = [store, keys] } = options;\n\tconst subscribe = useCallback((onChange) => {\n\t\tconst emitChange = (value) => {\n\t\t\tif (snapshotRef.current === value) return;\n\t\t\tsnapshotRef.current = value;\n\t\t\tonChange();\n\t\t};\n\t\temitChange(store.value);\n\t\tif (keys?.length) return listenKeys(store, keys, emitChange);\n\t\treturn store.listen(emitChange);\n\t}, deps);\n\tconst get = () => snapshotRef.current;\n\treturn useSyncExternalStore(subscribe, get, () => {\n\t\treturn get();\n\t});\n}\nfunction FragnoHydrator({ children }) {\n\tuseMemo(() => {\n\t\thydrateFromWindow();\n\t}, []);\n\treturn children;\n}\n\n//#endregion\nexport { FragnoHydrator, useFragno, useStore };\n//# sourceMappingURL=react.js.map","import type { FragnoPublicClientConfig } from \"@fragno-dev/core/client\";\nimport { useFragno } from \"@fragno-dev/core/react\";\n\nimport { createStripeFragmentClients } from \"..\";\n\nexport function createStripeFragmentClient(config: FragnoPublicClientConfig = {}) {\n return useFragno(createStripeFragmentClients(config));\n}\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
@@ -122,7 +122,7 @@ declare function createStripeFragmentClient(config?: FragnoPublicClientConfig):
|
|
|
122
122
|
createdAt: zod819.ZodDate;
|
|
123
123
|
updatedAt: zod819.ZodDate;
|
|
124
124
|
}, zod_v4_core63.$strip>>;
|
|
125
|
-
}, zod_v4_core63.$strip>,
|
|
125
|
+
}, zod_v4_core63.$strip>, "UNAUTHORIZED", string>;
|
|
126
126
|
useBillingPortal: _fragno_dev_core_solid0.FragnoSolidMutator<_fragno_dev_core_api8.NonGetHTTPMethod, "/portal", zod819.ZodObject<{
|
|
127
127
|
returnUrl: zod819.ZodURL;
|
|
128
128
|
}, zod_v4_core63.$strip> | undefined, zod819.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid.d.ts","names":[],"sources":["../../../../src/client/solid.ts"],"sourcesContent":[],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"solid.d.ts","names":[],"sources":["../../../../src/client/solid.ts"],"sourcesContent":[],"mappings":";;;;;;;iBAKgB,0BAAA,UAAmC;;;UAA6B,MAAA,CAAA;;;MAAhE,aAAA,oBAA0B,kBAAA;MAAA,OAAA,kBAAA;MAAS,QAAA,oBAAA,mBAAA,kBAAA,CAAA;MAA6B,OAAA,oBAAA,gBAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { atom, createStripeFragmentClients, isGetHook, isMutatorHook, isReadableAtom, isStore } from "../src-
|
|
2
|
-
import { createStore, reconcile } from "solid-js/store";
|
|
1
|
+
import { atom, createStripeFragmentClients, isGetHook, isMutatorHook, isReadableAtom, isStore } from "../src-D6VWnvEs.js";
|
|
3
2
|
import { createEffect, onCleanup } from "solid-js";
|
|
3
|
+
import { createStore, reconcile } from "solid-js/store";
|
|
4
4
|
|
|
5
|
-
//#region ../../node_modules/.pnpm/@nanostores+solid@1.1.1_nanostores@1.
|
|
5
|
+
//#region ../../node_modules/.pnpm/@nanostores+solid@1.1.1_nanostores@1.2.0_solid-js@1.9.10/node_modules/@nanostores/solid/dist/index.js
|
|
6
6
|
function m(e, o = {}) {
|
|
7
7
|
let t = e.listen(() => {}), [r, s] = createStore({ value: e.get() }), n = e.subscribe((i) => {
|
|
8
8
|
s("value", reconcile(i, o));
|
|
@@ -86,16 +86,30 @@ function createSolidMutator(hook) {
|
|
|
86
86
|
};
|
|
87
87
|
};
|
|
88
88
|
}
|
|
89
|
-
function
|
|
90
|
-
if (isReadableAtom(
|
|
89
|
+
function unwrapSolidStoreValue(value) {
|
|
90
|
+
if (isReadableAtom(value)) return m(value);
|
|
91
91
|
const result = {};
|
|
92
|
-
for (const key in
|
|
93
|
-
if (!Object.prototype.hasOwnProperty.call(
|
|
94
|
-
const
|
|
95
|
-
if (isReadableAtom(
|
|
96
|
-
else result[key] =
|
|
92
|
+
for (const key in value) {
|
|
93
|
+
if (!Object.prototype.hasOwnProperty.call(value, key)) continue;
|
|
94
|
+
const fieldValue = value[key];
|
|
95
|
+
if (isReadableAtom(fieldValue)) result[key] = m(fieldValue);
|
|
96
|
+
else result[key] = fieldValue;
|
|
97
|
+
}
|
|
98
|
+
return result;
|
|
99
|
+
}
|
|
100
|
+
function createSolidStore(hook) {
|
|
101
|
+
if ("obj" in hook) {
|
|
102
|
+
if (isReadableAtom(hook.obj)) return m(hook.obj);
|
|
103
|
+
return () => unwrapSolidStoreValue(hook.obj);
|
|
97
104
|
}
|
|
98
|
-
return () =>
|
|
105
|
+
return (...args) => {
|
|
106
|
+
const value = hook.factory(...args);
|
|
107
|
+
const disposer = value[Symbol.dispose];
|
|
108
|
+
if (typeof disposer === "function") onCleanup(() => {
|
|
109
|
+
disposer.call(value);
|
|
110
|
+
});
|
|
111
|
+
return unwrapSolidStoreValue(value);
|
|
112
|
+
};
|
|
99
113
|
}
|
|
100
114
|
function useFragno(clientObj) {
|
|
101
115
|
const result = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid.js","names":["createStore","c","reconcile","u","onCleanup","S","m","e","o","t","listen","r","s","value","get","n","subscribe","i","useStore","isReadableAtom","isGetHook","isMutatorHook","isStore","atom","
|
|
1
|
+
{"version":3,"file":"solid.js","names":["createStore","c","reconcile","u","onCleanup","S","m","e","o","t","listen","r","s","value","get","n","subscribe","i","useStore","isReadableAtom","isGetHook","isMutatorHook","isStore","atom","createEffect","onCleanup","useStore","isAccessor","value","accessorToAtom","accessor","a","set","createSolidHook","hook","path","query","pathParams","queryParams","key","Object","entries","v","storeValue","store","data","loading","error","createSolidMutator","mutatorStore","mutate","args","body","unwrapSolidStoreValue","result","prototype","hasOwnProperty","call","fieldValue","createSolidStore","obj","factory","disposer","Symbol","dispose","useFragno","clientObj","FragnoPublicClientConfig","useFragno","createStripeFragmentClients","createStripeFragmentClient","config"],"sources":["../../../../../node_modules/.pnpm/@nanostores+solid@1.1.1_nanostores@1.2.0_solid-js@1.9.10/node_modules/@nanostores/solid/dist/index.js","../../../../fragno/dist/client/solid.js","../../../src/client/solid.ts"],"sourcesContent":["import{createStore as c,reconcile as u}from\"solid-js/store\";import{onCleanup as S}from\"solid-js\";function m(e,o={}){let t=e.listen(()=>{}),[r,s]=c({value:e.get()}),n=e.subscribe(i=>{s(\"value\",u(i,o))});return S(()=>n()),t(),()=>r.value}export{m as useStore};\n","import { isReadableAtom } from \"../util/nanostores.js\";\nimport { isGetHook, isMutatorHook, isStore } from \"./client.js\";\nimport { atom } from \"nanostores\";\nimport { createEffect, onCleanup } from \"solid-js\";\nimport { useStore } from \"@nanostores/solid\";\n\n//#region src/client/solid.ts\n/**\n* Type guard to check if a value is a SolidJS Accessor.\n*\n* @private\n*/\nfunction isAccessor(value) {\n\treturn typeof value === \"function\";\n}\n/**\n* Converts a SolidJS Accessor to a NanoStore Atom.\n*\n* This is used to convert SolidJS accessors to atoms, so that we can use them in the store.\n*\n* @private\n*/\nfunction accessorToAtom(accessor) {\n\tconst a = atom(accessor());\n\tcreateEffect(() => {\n\t\ta.set(accessor());\n\t});\n\treturn a;\n}\nfunction createSolidHook(hook) {\n\treturn ({ path, query } = {}) => {\n\t\tconst pathParams = {};\n\t\tconst queryParams = {};\n\t\tfor (const [key, value] of Object.entries(path ?? {})) {\n\t\t\tconst v = value;\n\t\t\tpathParams[key] = isAccessor(v) ? accessorToAtom(v) : v;\n\t\t}\n\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\tconst v = value;\n\t\t\tqueryParams[key] = isAccessor(v) ? accessorToAtom(v) : v;\n\t\t}\n\t\tconst storeValue = useStore(hook.store({\n\t\t\tpath: pathParams,\n\t\t\tquery: queryParams\n\t\t}));\n\t\treturn {\n\t\t\tdata: () => storeValue().data,\n\t\t\tloading: () => storeValue().loading,\n\t\t\terror: () => storeValue().error\n\t\t};\n\t};\n}\nfunction createSolidMutator(hook) {\n\treturn () => {\n\t\tconst store = useStore(hook.mutatorStore);\n\t\tconst mutate = async (args) => {\n\t\t\tconst { body, path, query } = args;\n\t\t\tconst pathParams = {};\n\t\t\tconst queryParams = {};\n\t\t\tfor (const [key, value] of Object.entries(path ?? {})) {\n\t\t\t\tconst v = value;\n\t\t\t\tpathParams[key] = isAccessor(v) ? v() : v;\n\t\t\t}\n\t\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\t\tconst v = value;\n\t\t\t\tqueryParams[key] = isAccessor(v) ? v() : v;\n\t\t\t}\n\t\t\treturn hook.mutatorStore.mutate({\n\t\t\t\tbody,\n\t\t\t\tpath: pathParams,\n\t\t\t\tquery: queryParams\n\t\t\t});\n\t\t};\n\t\treturn {\n\t\t\tmutate,\n\t\t\tdata: () => store().data,\n\t\t\tloading: () => store().loading,\n\t\t\terror: () => store().error\n\t\t};\n\t};\n}\nfunction unwrapSolidStoreValue(value) {\n\tif (isReadableAtom(value)) return useStore(value);\n\tconst result = {};\n\tfor (const key in value) {\n\t\tif (!Object.prototype.hasOwnProperty.call(value, key)) continue;\n\t\tconst fieldValue = value[key];\n\t\tif (isReadableAtom(fieldValue)) result[key] = useStore(fieldValue);\n\t\telse result[key] = fieldValue;\n\t}\n\treturn result;\n}\nfunction createSolidStore(hook) {\n\tif (\"obj\" in hook) {\n\t\tif (isReadableAtom(hook.obj)) return useStore(hook.obj);\n\t\treturn (() => unwrapSolidStoreValue(hook.obj));\n\t}\n\treturn ((...args) => {\n\t\tconst value = hook.factory(...args);\n\t\tconst disposer = value[Symbol.dispose];\n\t\tif (typeof disposer === \"function\") onCleanup(() => {\n\t\t\tdisposer.call(value);\n\t\t});\n\t\treturn unwrapSolidStoreValue(value);\n\t});\n}\nfunction useFragno(clientObj) {\n\tconst result = {};\n\tfor (const key in clientObj) {\n\t\tif (!Object.prototype.hasOwnProperty.call(clientObj, key)) continue;\n\t\tconst hook = clientObj[key];\n\t\tif (isGetHook(hook)) result[key] = createSolidHook(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createSolidMutator(hook);\n\t\telse if (isStore(hook)) result[key] = createSolidStore(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\n\n//#endregion\nexport { accessorToAtom, isAccessor, useFragno };\n//# sourceMappingURL=solid.js.map","import type { FragnoPublicClientConfig } from \"@fragno-dev/core/client\";\nimport { useFragno } from \"@fragno-dev/core/solid\";\n\nimport { createStripeFragmentClients } from \"..\";\n\nexport function createStripeFragmentClient(config: FragnoPublicClientConfig = {}) {\n return useFragno(createStripeFragmentClients(config));\n}\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
@@ -122,7 +122,7 @@ declare function createStripeFragmentClient(config?: FragnoPublicClientConfig):
|
|
|
122
122
|
createdAt: zod1019.ZodDate;
|
|
123
123
|
updatedAt: zod1019.ZodDate;
|
|
124
124
|
}, zod_v4_core78.$strip>>;
|
|
125
|
-
}, zod_v4_core78.$strip>,
|
|
125
|
+
}, zod_v4_core78.$strip>, "UNAUTHORIZED", string>;
|
|
126
126
|
useBillingPortal: _fragno_dev_core_svelte0.FragnoSvelteMutator<_fragno_dev_core_api11.NonGetHTTPMethod, "/portal", zod1019.ZodObject<{
|
|
127
127
|
returnUrl: zod1019.ZodURL;
|
|
128
128
|
}, zod_v4_core78.$strip> | undefined, zod1019.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svelte.d.ts","names":[],"sources":["../../../../src/client/svelte.ts"],"sourcesContent":[],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"svelte.d.ts","names":[],"sources":["../../../../src/client/svelte.ts"],"sourcesContent":[],"mappings":";;;;;;;iBAKgB,0BAAA,UAAmC;;;UAA6B,OAAA,CAAA;;;MAAhE,aAAA,qBAA0B,mBAAA;MAAA,OAAA,mBAAA;MAAS,QAAA,qBAAA,oBAAA,mBAAA,CAAA;MAA6B,OAAA,qBAAA,iBAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { atom, createStripeFragmentClients, isGetHook, isMutatorHook, isStore } from "../src-
|
|
2
|
-
import { get, writable } from "svelte/store";
|
|
1
|
+
import { atom, createStripeFragmentClients, isGetHook, isMutatorHook, isStore } from "../src-D6VWnvEs.js";
|
|
3
2
|
import { onDestroy } from "svelte";
|
|
3
|
+
import { get, writable } from "svelte/store";
|
|
4
4
|
|
|
5
5
|
//#region ../fragno/dist/client/client.svelte.js
|
|
6
6
|
function isReadable(value) {
|
|
@@ -99,7 +99,15 @@ function createSvelteMutator(hook) {
|
|
|
99
99
|
};
|
|
100
100
|
}
|
|
101
101
|
function createSvelteStore(hook) {
|
|
102
|
-
return hook.obj;
|
|
102
|
+
if ("obj" in hook) return hook.obj;
|
|
103
|
+
return (...args) => {
|
|
104
|
+
const value = hook.factory(...args);
|
|
105
|
+
const disposer = value[Symbol.dispose];
|
|
106
|
+
if (typeof disposer === "function") onDestroy(() => {
|
|
107
|
+
disposer.call(value);
|
|
108
|
+
});
|
|
109
|
+
return value;
|
|
110
|
+
};
|
|
103
111
|
}
|
|
104
112
|
function useFragno(clientObj) {
|
|
105
113
|
const result = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svelte.js","names":["isGetHook","isMutatorHook","isStore","atom","
|
|
1
|
+
{"version":3,"file":"svelte.js","names":["isGetHook","isMutatorHook","isStore","atom","onDestroy","get","writable","isReadable","value","isCallable","readableToAtom","a","subscribe","newVal","set","runeToAtom","$effect","createSvelteHook","hook","path","query","pathParams","queryParams","key","Object","entries","v","store","data","loading","error","unsubscribe","updatedStoreValue","createSvelteMutator","mutatorStore","storeValue","mutate","args","body","createSvelteStore","obj","factory","disposer","Symbol","dispose","call","useFragno","clientObj","result","prototype","hasOwnProperty","FragnoPublicClientConfig","useFragno","createStripeFragmentClients","createStripeFragmentClient","config"],"sources":["../../../../fragno/dist/client/client.svelte.js","../../../src/client/svelte.ts"],"sourcesContent":["import { isGetHook, isMutatorHook, isStore } from \"./client.js\";\nimport { atom } from \"nanostores\";\nimport { onDestroy } from \"svelte\";\nimport { get, writable } from \"svelte/store\";\n\n//#region src/client/client.svelte.ts\nfunction isReadable(value) {\n\treturn typeof value === \"object\" && value !== null && \"subscribe\" in value;\n}\nfunction isCallable(value) {\n\treturn typeof value === \"function\";\n}\nfunction readableToAtom(value) {\n\tconst a = atom(get(value));\n\tvalue.subscribe((newVal) => {\n\t\ta.set(newVal);\n\t});\n\treturn a;\n}\nfunction runeToAtom(value) {\n\tconst a = atom(value());\n\t$effect(() => {\n\t\ta.set(value());\n\t});\n\treturn a;\n}\nfunction createSvelteHook(hook) {\n\treturn ({ path, query } = {}) => {\n\t\tconst pathParams = {};\n\t\tconst queryParams = {};\n\t\tfor (const [key, value] of Object.entries(path ?? {})) {\n\t\t\tconst v = value;\n\t\t\tif (isCallable(v)) pathParams[key] = runeToAtom(v);\n\t\t\telse pathParams[key] = isReadable(v) ? readableToAtom(v) : v;\n\t\t}\n\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\tconst v = value;\n\t\t\tif (isCallable(v)) queryParams[key] = runeToAtom(v);\n\t\t\telse queryParams[key] = isReadable(v) ? readableToAtom(v) : v;\n\t\t}\n\t\tconst store = hook.store({\n\t\t\tpath: pathParams,\n\t\t\tquery: queryParams\n\t\t});\n\t\tconst data = writable(void 0);\n\t\tconst loading = writable(false);\n\t\tconst error = writable(void 0);\n\t\tconst unsubscribe = store.subscribe((updatedStoreValue) => {\n\t\t\tdata.set(updatedStoreValue.data);\n\t\t\tloading.set(updatedStoreValue.loading);\n\t\t\terror.set(updatedStoreValue.error);\n\t\t});\n\t\tonDestroy(() => {\n\t\t\tunsubscribe();\n\t\t});\n\t\treturn {\n\t\t\tdata,\n\t\t\tloading,\n\t\t\terror\n\t\t};\n\t};\n}\nfunction createSvelteMutator(hook) {\n\treturn () => {\n\t\tconst data = writable(void 0);\n\t\tconst loading = writable(void 0);\n\t\tconst error = writable(void 0);\n\t\tconst unsubscribe = hook.mutatorStore.subscribe((storeValue) => {\n\t\t\tdata.set(storeValue.data);\n\t\t\tloading.set(storeValue.loading);\n\t\t\terror.set(storeValue.error);\n\t\t});\n\t\tonDestroy(() => {\n\t\t\tunsubscribe();\n\t\t});\n\t\tconst mutate = async (args) => {\n\t\t\tconst { body, path, query } = args;\n\t\t\tconst pathParams = {};\n\t\t\tconst queryParams = {};\n\t\t\tfor (const [key, value] of Object.entries(path ?? {})) {\n\t\t\t\tconst v = value;\n\t\t\t\tpathParams[key] = isReadable(v) ? readableToAtom(v) : v;\n\t\t\t}\n\t\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\t\tconst v = value;\n\t\t\t\tqueryParams[key] = isReadable(v) ? readableToAtom(v) : v;\n\t\t\t}\n\t\t\treturn hook.mutatorStore.mutate({\n\t\t\t\tbody,\n\t\t\t\tpath: pathParams,\n\t\t\t\tquery: queryParams\n\t\t\t});\n\t\t};\n\t\treturn {\n\t\t\tmutate,\n\t\t\tloading,\n\t\t\terror,\n\t\t\tdata\n\t\t};\n\t};\n}\nfunction createSvelteStore(hook) {\n\tif (\"obj\" in hook) return hook.obj;\n\treturn ((...args) => {\n\t\tconst value = hook.factory(...args);\n\t\tconst disposer = value[Symbol.dispose];\n\t\tif (typeof disposer === \"function\") onDestroy(() => {\n\t\t\tdisposer.call(value);\n\t\t});\n\t\treturn value;\n\t});\n}\nfunction useFragno(clientObj) {\n\tconst result = {};\n\tfor (const key in clientObj) {\n\t\tif (!Object.prototype.hasOwnProperty.call(clientObj, key)) continue;\n\t\tconst hook = clientObj[key];\n\t\tif (isGetHook(hook)) result[key] = createSvelteHook(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createSvelteMutator(hook);\n\t\telse if (isStore(hook)) result[key] = createSvelteStore(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\n\n//#endregion\nexport { createSvelteStore, readableToAtom, runeToAtom, useFragno };\n//# sourceMappingURL=client.svelte.js.map","import type { FragnoPublicClientConfig } from \"@fragno-dev/core/client\";\nimport { useFragno } from \"@fragno-dev/core/svelte\";\n\nimport { createStripeFragmentClients } from \"..\";\n\nexport function createStripeFragmentClient(config: FragnoPublicClientConfig = {}) {\n return useFragno(createStripeFragmentClients(config));\n}\n"],"mappings":"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"}
|
|
@@ -122,7 +122,7 @@ declare function createStripeFragmentClient(config?: FragnoPublicClientConfig):
|
|
|
122
122
|
createdAt: zod1219.ZodDate;
|
|
123
123
|
updatedAt: zod1219.ZodDate;
|
|
124
124
|
}, zod_v4_core93.$strip>>;
|
|
125
|
-
}, zod_v4_core93.$strip>,
|
|
125
|
+
}, zod_v4_core93.$strip>, "UNAUTHORIZED", string>;
|
|
126
126
|
useBillingPortal: _fragno_dev_core_vanilla0.FragnoVanillaMutator<_fragno_dev_core_api14.NonGetHTTPMethod, "/portal", zod1219.ZodObject<{
|
|
127
127
|
returnUrl: zod1219.ZodURL;
|
|
128
128
|
}, zod_v4_core93.$strip> | undefined, zod1219.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vanilla.d.ts","names":[],"sources":["../../../../src/client/vanilla.ts"],"sourcesContent":[],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"vanilla.d.ts","names":[],"sources":["../../../../src/client/vanilla.ts"],"sourcesContent":[],"mappings":";;;;;;;iBAKgB,0BAAA,UAAmC;;;UAA6B,OAAA,CAAA;;;MAAhE,aAAA,qBAA0B,mBAAA;MAAA,OAAA,mBAAA;MAAS,QAAA,qBAAA,oBAAA,mBAAA,CAAA;MAA6B,OAAA,qBAAA,iBAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createStripeFragmentClients, isGetHook, isMutatorHook } from "../src-
|
|
1
|
+
import { createStripeFragmentClients, isGetHook, isMutatorHook, isStore } from "../src-D6VWnvEs.js";
|
|
2
2
|
|
|
3
3
|
//#region ../fragno/dist/util/async.js
|
|
4
4
|
/**
|
|
@@ -116,6 +116,25 @@ function createVanillaMutator(hook) {
|
|
|
116
116
|
};
|
|
117
117
|
};
|
|
118
118
|
}
|
|
119
|
+
const getStoreDisposer = (value) => {
|
|
120
|
+
const disposer = value[Symbol.dispose];
|
|
121
|
+
return typeof disposer === "function" ? disposer.bind(value) : void 0;
|
|
122
|
+
};
|
|
123
|
+
function createVanillaStore(hook) {
|
|
124
|
+
if ("obj" in hook) return hook.obj;
|
|
125
|
+
return (...args) => {
|
|
126
|
+
const value = hook.factory(...args);
|
|
127
|
+
const disposer = getStoreDisposer(value);
|
|
128
|
+
if (!disposer) return value;
|
|
129
|
+
Object.defineProperty(value, "destroy", {
|
|
130
|
+
value: disposer,
|
|
131
|
+
enumerable: false,
|
|
132
|
+
configurable: true,
|
|
133
|
+
writable: true
|
|
134
|
+
});
|
|
135
|
+
return value;
|
|
136
|
+
};
|
|
137
|
+
}
|
|
119
138
|
function useFragno(clientObj) {
|
|
120
139
|
const result = {};
|
|
121
140
|
for (const key in clientObj) {
|
|
@@ -123,6 +142,7 @@ function useFragno(clientObj) {
|
|
|
123
142
|
const hook = clientObj[key];
|
|
124
143
|
if (isGetHook(hook)) result[key] = createVanillaListeners(hook);
|
|
125
144
|
else if (isMutatorHook(hook)) result[key] = createVanillaMutator(hook);
|
|
145
|
+
else if (isStore(hook)) result[key] = createVanillaStore(hook);
|
|
126
146
|
else result[key] = hook;
|
|
127
147
|
}
|
|
128
148
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vanilla.js","names":["createAsyncIteratorFromCallback","subscribe","queue","unsubscribe","resolveNext","unsubscribeFunc","value","done","push","length","shift","Promise","resolve","result","isGetHook","isMutatorHook","createAsyncIteratorFromCallback","createVanillaListeners","hook","path","query","store","listen","callback","loading","error","data","subscribe","refetch","revalidate","get","Symbol","asyncIterator","createVanillaMutator","mutatorStore","value","mutate","body","useFragno","clientObj","result","key","
|
|
1
|
+
{"version":3,"file":"vanilla.js","names":["createAsyncIteratorFromCallback","subscribe","queue","unsubscribe","resolveNext","unsubscribeFunc","value","done","push","length","shift","Promise","resolve","result","isGetHook","isMutatorHook","isStore","createAsyncIteratorFromCallback","createVanillaListeners","hook","path","query","store","listen","callback","loading","error","data","subscribe","refetch","revalidate","get","Symbol","asyncIterator","createVanillaMutator","mutatorStore","value","mutate","body","getStoreDisposer","disposer","dispose","bind","createVanillaStore","obj","args","factory","Object","defineProperty","enumerable","configurable","writable","useFragno","clientObj","result","key","prototype","hasOwnProperty","call","FragnoPublicClientConfig","useFragno","createStripeFragmentClients","createStripeFragmentClient","config"],"sources":["../../../../fragno/dist/util/async.js","../../../../fragno/dist/client/vanilla.js","../../../src/client/vanilla.ts"],"sourcesContent":["//#region src/util/async.ts\n/**\n* Creates an async iterator from a subscribe function that follows the observable pattern.\n*\n* @template T The type of values produced by the store.\n* @param subscribe A function that subscribes to store updates. It receives a callback to be\n* called on each update, and returns an unsubscribe function.\n* @returns An async generator that yields store values as they are produced.\n*/\nfunction createAsyncIteratorFromCallback(subscribe) {\n\tconst queue = [];\n\tlet unsubscribe = null;\n\tlet resolveNext = null;\n\tconst unsubscribeFunc = subscribe((value) => {\n\t\tif (resolveNext) {\n\t\t\tresolveNext({\n\t\t\t\tvalue,\n\t\t\t\tdone: false\n\t\t\t});\n\t\t\tresolveNext = null;\n\t\t} else queue.push(value);\n\t});\n\tif (typeof unsubscribeFunc === \"function\") unsubscribe = unsubscribeFunc;\n\treturn (async function* () {\n\t\ttry {\n\t\t\twhile (true) if (queue.length > 0) yield queue.shift();\n\t\t\telse yield await new Promise((resolve) => {\n\t\t\t\tresolveNext = (result) => {\n\t\t\t\t\tif (!result.done) resolve(result.value);\n\t\t\t\t};\n\t\t\t});\n\t\t} finally {\n\t\t\tif (unsubscribe) unsubscribe();\n\t\t}\n\t})();\n}\n\n//#endregion\nexport { createAsyncIteratorFromCallback };\n//# sourceMappingURL=async.js.map","import { isGetHook, isMutatorHook, isStore } from \"./client.js\";\nimport { createAsyncIteratorFromCallback } from \"../util/async.js\";\n\n//#region src/client/vanilla.ts\nfunction createVanillaListeners(hook) {\n\treturn ({ path, query } = {}) => {\n\t\tconst store = hook.store({\n\t\t\tpath,\n\t\t\tquery\n\t\t});\n\t\treturn {\n\t\t\tlisten: (callback) => {\n\t\t\t\treturn store.listen(({ loading, error, data }) => callback({\n\t\t\t\t\tloading,\n\t\t\t\t\terror,\n\t\t\t\t\tdata\n\t\t\t\t}));\n\t\t\t},\n\t\t\tsubscribe: (callback) => {\n\t\t\t\treturn store.subscribe(({ loading, error, data }) => callback({\n\t\t\t\t\tloading,\n\t\t\t\t\terror,\n\t\t\t\t\tdata\n\t\t\t\t}));\n\t\t\t},\n\t\t\trefetch: () => {\n\t\t\t\treturn store.revalidate();\n\t\t\t},\n\t\t\tget: () => {\n\t\t\t\treturn store.get();\n\t\t\t},\n\t\t\t[Symbol.asyncIterator]() {\n\t\t\t\treturn createAsyncIteratorFromCallback((callback) => store.listen(({ loading, error, data }) => callback({\n\t\t\t\t\tloading,\n\t\t\t\t\terror,\n\t\t\t\t\tdata\n\t\t\t\t})));\n\t\t\t}\n\t\t};\n\t};\n}\nfunction createVanillaMutator(hook) {\n\treturn () => {\n\t\tconst store = hook.mutatorStore;\n\t\treturn {\n\t\t\tsubscribe: (callback) => {\n\t\t\t\treturn store.subscribe((value) => {\n\t\t\t\t\tcallback({\n\t\t\t\t\t\tloading: value.loading ?? false,\n\t\t\t\t\t\terror: value.error,\n\t\t\t\t\t\tdata: value.data\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t},\n\t\t\tget: () => {\n\t\t\t\tconst { loading, error, data } = store.get();\n\t\t\t\treturn {\n\t\t\t\t\tloading: loading ?? false,\n\t\t\t\t\terror,\n\t\t\t\t\tdata\n\t\t\t\t};\n\t\t\t},\n\t\t\tmutate: ({ body, path, query }) => {\n\t\t\t\treturn store.mutate({\n\t\t\t\t\tbody,\n\t\t\t\t\tpath,\n\t\t\t\t\tquery\n\t\t\t\t});\n\t\t\t},\n\t\t\t[Symbol.asyncIterator]() {\n\t\t\t\treturn createAsyncIteratorFromCallback((callback) => store.listen((value) => {\n\t\t\t\t\tcallback({\n\t\t\t\t\t\tloading: value.loading ?? false,\n\t\t\t\t\t\terror: value.error,\n\t\t\t\t\t\tdata: value.data\n\t\t\t\t\t});\n\t\t\t\t}));\n\t\t\t}\n\t\t};\n\t};\n}\nconst getStoreDisposer = (value) => {\n\tconst disposer = value[Symbol.dispose];\n\treturn typeof disposer === \"function\" ? disposer.bind(value) : void 0;\n};\nfunction createVanillaStore(hook) {\n\tif (\"obj\" in hook) return hook.obj;\n\treturn ((...args) => {\n\t\tconst value = hook.factory(...args);\n\t\tconst disposer = getStoreDisposer(value);\n\t\tif (!disposer) return value;\n\t\tObject.defineProperty(value, \"destroy\", {\n\t\t\tvalue: disposer,\n\t\t\tenumerable: false,\n\t\t\tconfigurable: true,\n\t\t\twritable: true\n\t\t});\n\t\treturn value;\n\t});\n}\nfunction useFragno(clientObj) {\n\tconst result = {};\n\tfor (const key in clientObj) {\n\t\tif (!Object.prototype.hasOwnProperty.call(clientObj, key)) continue;\n\t\tconst hook = clientObj[key];\n\t\tif (isGetHook(hook)) result[key] = createVanillaListeners(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createVanillaMutator(hook);\n\t\telse if (isStore(hook)) result[key] = createVanillaStore(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\n\n//#endregion\nexport { useFragno };\n//# sourceMappingURL=vanilla.js.map","import type { FragnoPublicClientConfig } from \"@fragno-dev/core/client\";\nimport { useFragno } from \"@fragno-dev/core/vanilla\";\n\nimport { createStripeFragmentClients } from \"..\";\n\nexport function createStripeFragmentClient(config: FragnoPublicClientConfig = {}) {\n return useFragno(createStripeFragmentClients(config));\n}\n"],"mappings":"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"}
|
|
@@ -122,7 +122,7 @@ declare function createStripeFragmentClient(config?: FragnoPublicClientConfig):
|
|
|
122
122
|
createdAt: zod0.ZodDate;
|
|
123
123
|
updatedAt: zod0.ZodDate;
|
|
124
124
|
}, zod_v4_core0.$strip>>;
|
|
125
|
-
}, zod_v4_core0.$strip>,
|
|
125
|
+
}, zod_v4_core0.$strip>, "UNAUTHORIZED", string>;
|
|
126
126
|
useBillingPortal: _fragno_dev_core_vue0.FragnoVueMutator<_fragno_dev_core_api0.NonGetHTTPMethod, "/portal", zod0.ZodObject<{
|
|
127
127
|
returnUrl: zod0.ZodURL;
|
|
128
128
|
}, zod_v4_core0.$strip> | undefined, zod0.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vue.d.ts","names":[],"sources":["../../../../src/client/vue.ts"],"sourcesContent":[],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"vue.d.ts","names":[],"sources":["../../../../src/client/vue.ts"],"sourcesContent":[],"mappings":";;;;;;;iBAKgB,0BAAA,UAAmC;;;UAA6B,IAAA,CAAA;;;MAAhE,aAAA,kBAA0B,gBAAA;MAAA,OAAA,gBAAA;MAAS,QAAA,kBAAA,iBAAA,gBAAA,CAAA;MAA6B,OAAA,kBAAA,cAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { atom, createStripeFragmentClients, isGetHook, isMutatorHook } from "../src-
|
|
1
|
+
import { atom, createStripeFragmentClients, isGetHook, isMutatorHook, isReadableAtom, isStore } from "../src-D6VWnvEs.js";
|
|
2
2
|
import { computed, getCurrentScope, isRef, onScopeDispose, ref, shallowRef, watch } from "vue";
|
|
3
3
|
|
|
4
4
|
//#region ../fragno/dist/client/vue.js
|
|
@@ -79,6 +79,27 @@ function createVueMutator(hook) {
|
|
|
79
79
|
};
|
|
80
80
|
};
|
|
81
81
|
}
|
|
82
|
+
function unwrapVueStoreValue(value) {
|
|
83
|
+
if (isReadableAtom(value)) return useStore(value);
|
|
84
|
+
const result = {};
|
|
85
|
+
for (const key in value) {
|
|
86
|
+
if (!Object.prototype.hasOwnProperty.call(value, key)) continue;
|
|
87
|
+
const fieldValue = value[key];
|
|
88
|
+
if (isReadableAtom(fieldValue)) result[key] = useStore(fieldValue);
|
|
89
|
+
else result[key] = fieldValue;
|
|
90
|
+
}
|
|
91
|
+
return result;
|
|
92
|
+
}
|
|
93
|
+
function createVueStore(hook) {
|
|
94
|
+
return (...args) => {
|
|
95
|
+
const value = "factory" in hook ? hook.factory(...args) : hook.obj;
|
|
96
|
+
const disposer = value[Symbol.dispose];
|
|
97
|
+
if (typeof disposer === "function" && getCurrentScope()) onScopeDispose(() => {
|
|
98
|
+
disposer.call(value);
|
|
99
|
+
});
|
|
100
|
+
return unwrapVueStoreValue(value);
|
|
101
|
+
};
|
|
102
|
+
}
|
|
82
103
|
function useFragno(clientObj) {
|
|
83
104
|
const result = {};
|
|
84
105
|
for (const key in clientObj) {
|
|
@@ -86,6 +107,7 @@ function useFragno(clientObj) {
|
|
|
86
107
|
const hook = clientObj[key];
|
|
87
108
|
if (isGetHook(hook)) result[key] = createVueHook(hook);
|
|
88
109
|
else if (isMutatorHook(hook)) result[key] = createVueMutator(hook);
|
|
110
|
+
else if (isStore(hook)) result[key] = createVueStore(hook);
|
|
89
111
|
else result[key] = hook;
|
|
90
112
|
}
|
|
91
113
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vue.js","names":["isGetHook","isMutatorHook","atom","computed","computed$1","getCurrentScope","isRef","onScopeDispose","ref","shallowRef","watch","refToAtom","ref$1","a","value","newVal","set","createVueHook","hook","path","query","pathParams","queryParams","key","Object","entries","v","store","data","loading","error","unsubscribe","subscribe","updatedStoreValue","createVueMutator","useStore","mutatorStore","mutate","args","body","
|
|
1
|
+
{"version":3,"file":"vue.js","names":["isReadableAtom","isGetHook","isMutatorHook","isStore","atom","computed","computed$1","getCurrentScope","isRef","onScopeDispose","ref","shallowRef","watch","refToAtom","ref$1","a","value","newVal","set","createVueHook","hook","path","query","pathParams","queryParams","key","Object","entries","v","store","data","loading","error","unsubscribe","subscribe","updatedStoreValue","createVueMutator","useStore","mutatorStore","mutate","args","body","unwrapVueStoreValue","result","prototype","hasOwnProperty","call","fieldValue","createVueStore","factory","obj","disposer","Symbol","dispose","useFragno","clientObj","state","FragnoPublicClientConfig","useFragno","createStripeFragmentClients","createStripeFragmentClient","config"],"sources":["../../../../fragno/dist/client/vue.js","../../../src/client/vue.ts"],"sourcesContent":["import { isReadableAtom } from \"../util/nanostores.js\";\nimport { isGetHook, isMutatorHook, isStore } from \"./client.js\";\nimport { atom } from \"nanostores\";\nimport { computed as computed$1, getCurrentScope, isRef, onScopeDispose, ref, shallowRef, watch } from \"vue\";\n\n//#region src/client/vue.ts\n/**\n* Converts a Vue Ref to a NanoStore Atom.\n*\n* This is used to convert Vue refs to atoms, so that we can use them in the store.\n*\n* @private\n*/\nfunction refToAtom(ref$1) {\n\tconst a = atom(ref$1.value);\n\twatch(ref$1, (newVal) => {\n\t\ta.set(newVal);\n\t});\n\treturn a;\n}\nfunction createVueHook(hook) {\n\treturn ({ path, query } = {}) => {\n\t\tconst pathParams = {};\n\t\tconst queryParams = {};\n\t\tfor (const [key, value] of Object.entries(path ?? {})) {\n\t\t\tconst v = value;\n\t\t\tpathParams[key] = isRef(v) ? refToAtom(v) : v;\n\t\t}\n\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\tconst v = value;\n\t\t\tqueryParams[key] = isRef(v) ? refToAtom(v) : v;\n\t\t}\n\t\tconst store = hook.store({\n\t\t\tpath: pathParams,\n\t\t\tquery: queryParams\n\t\t});\n\t\tconst data = ref();\n\t\tconst loading = ref();\n\t\tconst error = ref();\n\t\tconst unsubscribe = store.subscribe((updatedStoreValue) => {\n\t\t\tdata.value = updatedStoreValue.data;\n\t\t\tloading.value = updatedStoreValue.loading;\n\t\t\terror.value = updatedStoreValue.error;\n\t\t});\n\t\tif (getCurrentScope()) onScopeDispose(() => {\n\t\t\tunsubscribe();\n\t\t});\n\t\treturn {\n\t\t\tdata,\n\t\t\tloading,\n\t\t\terror\n\t\t};\n\t};\n}\nfunction createVueMutator(hook) {\n\treturn () => {\n\t\tconst store = useStore(hook.mutatorStore);\n\t\tconst mutate = async (args) => {\n\t\t\tconst { body, path, query } = args;\n\t\t\tconst pathParams = {};\n\t\t\tconst queryParams = {};\n\t\t\tfor (const [key, value] of Object.entries(path ?? {})) {\n\t\t\t\tconst v = value;\n\t\t\t\tpathParams[key] = isRef(v) ? v.value : v;\n\t\t\t}\n\t\t\tfor (const [key, value] of Object.entries(query ?? {})) {\n\t\t\t\tconst v = value;\n\t\t\t\tqueryParams[key] = isRef(v) ? v.value : v;\n\t\t\t}\n\t\t\treturn store.value.mutate({\n\t\t\t\tbody,\n\t\t\t\tpath: pathParams,\n\t\t\t\tquery: queryParams\n\t\t\t});\n\t\t};\n\t\treturn {\n\t\t\tmutate,\n\t\t\tloading: computed$1(() => store.value.loading),\n\t\t\terror: computed$1(() => store.value.error),\n\t\t\tdata: computed$1(() => store.value.data)\n\t\t};\n\t};\n}\nfunction unwrapVueStoreValue(value) {\n\tif (isReadableAtom(value)) return useStore(value);\n\tconst result = {};\n\tfor (const key in value) {\n\t\tif (!Object.prototype.hasOwnProperty.call(value, key)) continue;\n\t\tconst fieldValue = value[key];\n\t\tif (isReadableAtom(fieldValue)) result[key] = useStore(fieldValue);\n\t\telse result[key] = fieldValue;\n\t}\n\treturn result;\n}\nfunction createVueStore(hook) {\n\treturn ((...args) => {\n\t\tconst value = \"factory\" in hook ? hook.factory(...args) : hook.obj;\n\t\tconst disposer = value[Symbol.dispose];\n\t\tif (typeof disposer === \"function\" && getCurrentScope()) onScopeDispose(() => {\n\t\t\tdisposer.call(value);\n\t\t});\n\t\treturn unwrapVueStoreValue(value);\n\t});\n}\nfunction useFragno(clientObj) {\n\tconst result = {};\n\tfor (const key in clientObj) {\n\t\tif (!Object.prototype.hasOwnProperty.call(clientObj, key)) continue;\n\t\tconst hook = clientObj[key];\n\t\tif (isGetHook(hook)) result[key] = createVueHook(hook);\n\t\telse if (isMutatorHook(hook)) result[key] = createVueMutator(hook);\n\t\telse if (isStore(hook)) result[key] = createVueStore(hook);\n\t\telse result[key] = hook;\n\t}\n\treturn result;\n}\nfunction useStore(store) {\n\tconst state = shallowRef();\n\tconst unsubscribe = store.subscribe((value) => {\n\t\tstate.value = value;\n\t});\n\tif (getCurrentScope()) onScopeDispose(unsubscribe);\n\treturn state;\n}\n\n//#endregion\nexport { refToAtom, useFragno, useStore };\n//# sourceMappingURL=vue.js.map","import type { FragnoPublicClientConfig } from \"@fragno-dev/core/client\";\nimport { useFragno } from \"@fragno-dev/core/vue\";\n\nimport { createStripeFragmentClients } from \"..\";\n\nexport function createStripeFragmentClient(config: FragnoPublicClientConfig = {}) {\n return useFragno(createStripeFragmentClients(config));\n}\n"],"mappings":"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"}
|