use-abcd 1.4.3 → 1.6.1
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/README.md +225 -406
- package/dist/chunks/client-lHRDCo64.js +30 -0
- package/dist/chunks/client-lHRDCo64.js.map +1 -0
- package/dist/chunks/utils-C2wXstxP.js +828 -0
- package/dist/chunks/utils-C2wXstxP.js.map +1 -0
- package/dist/collection.d.ts +13 -5
- package/dist/examples/Benchmark.d.ts +2 -0
- package/dist/examples/LocalNotes.d.ts +2 -0
- package/dist/index.d.ts +5 -4
- package/dist/index.js +1071 -1789
- package/dist/index.js.map +1 -1
- package/dist/item.d.ts +3 -2
- package/dist/mocks/handlers.d.ts +0 -1
- package/dist/node.d.ts +5 -1
- package/dist/runtime/client.d.ts +10 -48
- package/dist/runtime/client.js +5 -13
- package/dist/runtime/client.js.map +1 -1
- package/dist/runtime/index.d.ts +5 -5
- package/dist/runtime/local.d.ts +32 -0
- package/dist/runtime/server.d.ts +25 -35
- package/dist/runtime/server.js +58 -107
- package/dist/runtime/server.js.map +1 -1
- package/dist/runtime/types.d.ts +28 -63
- package/dist/sync-queue.d.ts +7 -44
- package/dist/types.d.ts +22 -18
- package/dist/useCrud.d.ts +5 -3
- package/dist/useCrudTree.d.ts +3 -3
- package/dist/useItem.d.ts +3 -1
- package/dist/useNode.d.ts +3 -0
- package/dist/useSyncState.d.ts +2 -2
- package/dist/utils.d.ts +3 -4
- package/package.json +4 -2
- package/dist/cache.test.d.ts +0 -1
- package/dist/chunks/client-BfugfaiH.js +0 -144
- package/dist/chunks/client-BfugfaiH.js.map +0 -1
- package/dist/chunks/types-Dy4rYb2N.js +0 -19
- package/dist/chunks/types-Dy4rYb2N.js.map +0 -1
- package/dist/collection.e2e.test.d.ts +0 -1
- package/dist/fetch-handler.test.d.ts +0 -1
- package/dist/item-cache.test.d.ts +0 -1
- package/dist/node.test.d.ts +0 -1
- package/dist/runtime/client.test.d.ts +0 -1
- package/dist/runtime/server.test.d.ts +0 -1
- package/dist/sync-queue.test.d.ts +0 -1
- package/dist/useCrud.test.d.ts +0 -1
- package/dist/useCrudTree.test.d.ts +0 -1
- /package/dist/{App.d.ts → examples/App.d.ts} +0 -0
- /package/dist/{main.d.ts → examples/main.d.ts} +0 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
function i(e) {
|
|
2
|
+
const a = typeof e == "string" ? e : e.endpoint, c = typeof e == "string" ? {} : e.headers ?? {}, d = typeof e == "string" ? void 0 : e.scope;
|
|
3
|
+
return async (t, o) => {
|
|
4
|
+
if (o.aborted) throw new Error("Operation aborted");
|
|
5
|
+
const y = {
|
|
6
|
+
scope: d,
|
|
7
|
+
query: t.query,
|
|
8
|
+
changes: t.changes
|
|
9
|
+
}, r = await fetch(a, {
|
|
10
|
+
method: "POST",
|
|
11
|
+
headers: { "Content-Type": "application/json", ...c },
|
|
12
|
+
body: JSON.stringify(y),
|
|
13
|
+
signal: o
|
|
14
|
+
});
|
|
15
|
+
if (!r.ok) {
|
|
16
|
+
let n = "Request failed";
|
|
17
|
+
try {
|
|
18
|
+
const s = await r.json();
|
|
19
|
+
s.error && (n = s.error);
|
|
20
|
+
} catch {
|
|
21
|
+
}
|
|
22
|
+
throw new Error(n);
|
|
23
|
+
}
|
|
24
|
+
return r.json();
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export {
|
|
28
|
+
i as c
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=client-lHRDCo64.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-lHRDCo64.js","sources":["../../src/runtime/client.ts"],"sourcesContent":["import type { Change } from \"../types\";\nimport type { SyncRequestBody, SyncResponseBody } from \"./types\";\n\nexport type { SyncRequestBody, SyncResponseBody };\n\nexport type SyncClientConfig = {\n endpoint: string;\n headers?: Record<string, string>;\n scope?: string;\n};\n\nexport function createSyncClient<T extends { id: string }, Q = unknown>(\n config: string | SyncClientConfig,\n) {\n const endpoint = typeof config === \"string\" ? config : config.endpoint;\n const headers = typeof config === \"string\" ? {} : (config.headers ?? {});\n const scope = typeof config === \"string\" ? undefined : config.scope;\n\n return async (\n params: { query?: Q; changes?: Change<T>[] },\n signal: AbortSignal,\n ): Promise<SyncResponseBody<T>> => {\n if (signal.aborted) throw new Error(\"Operation aborted\");\n\n const body: SyncRequestBody<T, Q> = {\n scope,\n query: params.query,\n changes: params.changes,\n };\n\n const response = await fetch(endpoint, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...headers },\n body: JSON.stringify(body),\n signal,\n });\n\n if (!response.ok) {\n let errorMsg = \"Request failed\";\n try {\n const errorBody = await response.json();\n if (errorBody.error) errorMsg = errorBody.error;\n } catch {\n // Ignore JSON parse errors\n }\n throw new Error(errorMsg);\n }\n\n return response.json();\n };\n}\n"],"names":["createSyncClient","config","endpoint","headers","scope","params","signal","body","response","errorMsg","errorBody"],"mappings":"AAWO,SAASA,EACdC,GACA;AACA,QAAMC,IAAW,OAAOD,KAAW,WAAWA,IAASA,EAAO,UACxDE,IAAU,OAAOF,KAAW,WAAW,CAAA,IAAMA,EAAO,WAAW,CAAA,GAC/DG,IAAQ,OAAOH,KAAW,WAAW,SAAYA,EAAO;AAE9D,SAAO,OACLI,GACAC,MACiC;AACjC,QAAIA,EAAO,QAAS,OAAM,IAAI,MAAM,mBAAmB;AAEvD,UAAMC,IAA8B;AAAA,MAClC,OAAAH;AAAA,MACA,OAAOC,EAAO;AAAA,MACd,SAASA,EAAO;AAAA,IAAA,GAGZG,IAAW,MAAM,MAAMN,GAAU;AAAA,MACrC,QAAQ;AAAA,MACR,SAAS,EAAE,gBAAgB,oBAAoB,GAAGC,EAAA;AAAA,MAClD,MAAM,KAAK,UAAUI,CAAI;AAAA,MACzB,QAAAD;AAAA,IAAA,CACD;AAED,QAAI,CAACE,EAAS,IAAI;AAChB,UAAIC,IAAW;AACf,UAAI;AACF,cAAMC,IAAY,MAAMF,EAAS,KAAA;AACjC,QAAIE,EAAU,UAAOD,IAAWC,EAAU;AAAA,MAC5C,QAAQ;AAAA,MAER;AACA,YAAM,IAAI,MAAMD,CAAQ;AAAA,IAC1B;AAEA,WAAOD,EAAS,KAAA;AAAA,EAClB;AACF;"}
|