@spooky-sync/client-solid 0.0.1-canary.161 → 0.0.1-canary.163
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/AGENTS.md +1 -1
- package/dist/index.cjs +38 -98
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +34 -2
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +34 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +38 -98
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/skills/sp00ky-solid/references/file-hooks.md +33 -4
- package/src/index.ts +7 -1
- package/src/lib/Sp00kyProvider.ts +11 -9
- package/src/lib/use-download-file.ts +65 -109
- package/src/lib/use-sync-status.ts +15 -1
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/lib/models.ts","../../../src/types/index.ts","../../../src/lib/use-query.ts","../../../src/lib/create-preload.ts","../../../src/lib/use-sync-status.ts","../../../src/lib/use-storage-status.ts","../../../src/lib/use-crdt-field.ts","../../../src/lib/use-feature-flag.ts","../../../src/lib/use-app-release.ts","../../../src/lib/use-file-upload.ts","../../../src/lib/use-download-file.ts","../../../src/lib/Sp00kyProvider.ts","../../../src/lib/context.ts","../../../src/index.ts"],"sourcesContent":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/lib/models.ts","../../../src/types/index.ts","../../../src/lib/use-query.ts","../../../src/lib/create-preload.ts","../../../src/lib/use-sync-status.ts","../../../src/lib/use-storage-status.ts","../../../src/lib/use-crdt-field.ts","../../../src/lib/use-feature-flag.ts","../../../src/lib/use-app-release.ts","../../../src/lib/use-file-upload.ts","../../../src/lib/use-download-file.ts","../../../src/lib/Sp00kyProvider.ts","../../../src/lib/context.ts","../../../src/index.ts"],"sourcesContent":[],"mappings":"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AAA,CAAA,EAAA,OAAA,CAAA,ESQtE,sBTRsE,CAAA,ESS/E,qBTT+E;AACvD,iBSSX,eTTW,CAAA,USSe,iBTTf,CAAA,CAAA,EAAA,ESUrB,QTVqB,CSUZ,CTVY,CAAA,EAAA,UAAA,ESWb,WTXa,CSWD,CTXC,CAAA,EAAA,IAAA,ESYnB,QTZmB,CAAA,MAAA,GAAA,IAAA,GAAA,SAAA,CAAA,EAAA,OAAA,CAAA,ESaf,sBTbe,CAAA,EScxB,qBTdwB;;;;UUnBV,8BAA8B;UACrC,eAAe;aACZ,GAAA,CAAI;EXVL,OAAA,CAAK,EAAA,CAAA,KAAA,EWWG,KXXI,EAAA,GAAA,IAAA;EACZ,OAAA,CAAA,EAAA,CAAA,EAAA,EWWK,QXXO,CWWE,CXXF,CAAA,EAAA,GAAA,IAAA;EAAA;;;;;;;ACCxB;EAOiB,OAAA,CAAA,EAAA,CAAA,EAAA,EUYA,QVZA,CUYS,CVZT,CAAA,EAAA,GUYgB,OVZhB,CAAA,IAAA,CAAA;EAIL,QAAA,EUSA,GAAA,CAAI,OVTS;AAKzB;AAAgC,iBUOhB,cVPgB,CAAA,UUOS,eVPT,CAAA,CAAA,KAAA,EUQvB,mBVRuB,CUQH,CVRG,CAAA,CAAA,EUS7B,GAAA,CAAI,OVTyB;;;;iBWlBhB,gBAAgB,oBAAoB,SAAS;;;;;AXkBlB,KYkE/B,iBZlE+B,CAAA,eYmE1B,iBZnE0B,EAAA,kBYoEvB,UZpEuB,CYoEZ,MZpEY,CAAA,EAAA,cYqE3B,4BZrE2B,CYqEE,MZrEF,EYqEU,SZrEV,CAAA,CAAA,GYsEvC,eZtEuC,CYsEvB,MZtEuB,EYsEf,SZtEe,EYsEJ,KZtEI,CAAA;AACxB,KYuEP,wBZvEO,CAAA,eYwEF,iBZxEE,EAAA,kBYyEC,UZzED,CYyEY,MZzEZ,CAAA,EAAA,sBY0EK,4BZ1EL,CY0EkC,MZ1ElC,EY0E0C,SZ1E1C,CAAA,GY2Ef,4BZ3Ee,CY2Ec,MZ3Ed,EY2EsB,SZ3EtB,CAAA,CAAA,GAAA,QY6EX,aZ7EA,GAAA;EAAoC,EAAA,EY8EpC,iBZ9EoC,CY8ElB,MZ9EkB,EY8EV,SZ9EU,EY8EC,CZ9ED,CAAA,CAAA,IAAA,CAAA;EAAG,aAAA,EY+E5B,gBZ/E4B;EAAZ,WAAA,EYgFlB,iBZhFkB,CYgFA,MZhFA,EYgFQ,SZhFR,EYgFmB,CZhFnB,CAAA,CAAA,aAAA,CAAA;GAAD;AAOtB,KY6EA,UZ7EA,CAAA,eY8EK,iBZ9EsB,EAAA,kBY+EnB,UZ/EmB,CY+ER,MZ/EQ,CAAA,EAAA,sBYgFf,wBZhFe,CYgFU,MZhFV,EYgFkB,SZhFlB,CAAA,CAAA,GYiFnC,WZjFmC,CYiFvB,MZjFuB,EYiFf,SZjFe,EYiFJ,aZjFI,EAAA,IAAA,CAAA;AAAA,KYmF3B,WZnF2B,CAAA,cAAA,MAAA,EAAA,sBYmF6B,gBZnF7B,GAAA,CAAA,CAAA,CAAA,GAAA,QYoF/B,KZpF0C,GYoFlC,IZpFkC,CYoF7B,oBZpF6B,EAAA,eAAA,CAAA,GAAA;EAAgC,aAAA,EYqF/D,aZrF+D;;AAE9D,KYuFR,eZvFQ,CAAA,cAAA,MAAA,EAAA,sBYuFoD,gBZvFpD,GAAA,CAAA,CAAA,CAAA,GAAA,QYwFZ,KZxFgD,GAAA;EAA5C,EAAA,EYyFJ,KZzFI;EAA4D,aAAA,EY0FrD,aZ1FqD;EAC3D,WAAA,EAAA,MAAA;;;;;;AAQR,cY0FQ,QZ1FA,CAAA,UY0FmB,iBZ1FnB,CAAA,CAAA;EAAA,QAAA,MAAA;UAAoB,MAAA;UAAI,YAAA;aAAE,CAAA,MAAA,EY+FjB,cZ/FiB,CY+FF,CZ/FE,CAAA;EAAC,SAAA,CAAA,CAAA,EYmGlB,YZnGkB,CYmGL,CZnGK,CAAA;EAE5B;;;MAAkE,CAAA,CAAA,EYyG9D,OZzG8D,CAAA,IAAA,CAAA;;;;;;;EChCzE,KAAA,CAAA,CAAA,EWsJY,OXtJJ,CAAA,IAAA,CAAA;EAAA;;;QAEO,CAAA,EAAA,EAAA,MAAA,EAAA,OAAA,EW8JgB,MX9JhB,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,EW8J0C,OX9J1C,CAAA,IAAA,CAAA;;;;QAKL,CAAA,cWiKc,UXjKd,CWiKyB,CXjKzB,CAAA,CAAA,CAAA,SAAA,EWkKA,KXlKA,EAAA,QAAA,EAAA,MAAA,EAAA,OAAA,EWoKF,OXpKE,CWoKM,UXpKN,CWoKiB,QXpKjB,CWoK0B,CXpK1B,EWoK6B,KXpK7B,CAAA,CAAA,CAAA,EAAA,OAAA,CAAA,EWqKD,aXrKC,CAAA,EWsKV,OXtKU,CAAA,IAAA,CAAA;;;;QAAgC,CAAA,cWmLlB,UXnLkB,CWmLP,CXnLO,CAAA,CAAA,CAAA,SAAA,EWoLhC,KXpLgC,EAAA,QAAA,EAAA,MAAA,GWqLxB,QXrLwB,GWqLb,UXrLa,CWqLF,QXrLE,CWqLO,CXrLP,EWqLU,KXrLV,CAAA,EAAA,OAAA,CAAA,CAAA,EWsL1C,OXtL0C,CAAA,IAAA,CAAA;;;;;;SAEX,CAAA,UAAA,EW+MpB,UX/MoB,CW+MT,CX/MS,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EW+Mc,wBX/Md,CAAA,EAAA,OAAA,CAAA,EWgNtB,gBXhNsB,CAAA,EWiN/B,OXjN+B,CAAA,IAAA,CAAA;;;;EAAlB,KAAA,CAAA,cWyNW,UXzNX,CWyNsB,CXzNtB,CAAA,CAAA,CAAA,KAAA,EW0NP,KX1NO,CAAA,EW2Nb,YX3Na,CW2NA,CX3NA,EW2NG,KX3NH,EW2NU,wBX3NV,EAAA,CAAA,CAAA,EAAA,KAAA,CAAA;EAIb;AAaL;;KACY,CAAA,UWiNiB,YXjNjB,CWiN8B,CXjN9B,CAAA,EAAA,UWiN4C,aXjN5C,CWiN0D,CXjN1D,EWiN6D,CXjN7D,CAAA,CAAA,CAAA,OAAA,EWkNC,CXlND,EAAA,IAAA,EWmNF,CXnNE,EAAA,OAAA,EWoNC,YXpND,CWoNc,CXpNd,EWoNiB,CXpNjB,EWoNoB,CXpNpB,CAAA,EAAA,OAAA,CAAA,EWqNE,UXrNF,CAAA,EWsNP,OXtNO,CAAA,IAAA,CAAA;;;;cAEW,CAAA,KAAA,EAAA,MAAA,CAAA,EW4NqB,OX5NrB,CW4N6B,QX5N7B,CAAA,MAAA,CAAA,CAAA;;;;;gBAG4B,CAAA,CAAA,EWsOlB,OXtOkB,CAAA,IAAA,CAAA;;;;SAEd,CAAA,CAAA,EW2OX,OX3OW,CAAA,IAAA,CAAA;;;;WACzB,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,EAAA,EWkPyB,OXlPzB,EAAA,GWkPqC,CXlPrC,GWkPyC,OXlPzC,CWkPiD,CXlPjD,CAAA,CAAA,EWkPsD,OXlPtD,CWkP8D,CXlP9D,CAAA;;;;EAUI,IAAA,MAAA,CAAA,CAAQ,EW+OR,YX/OQ,CW+OK,CX/OL,CAAA,CAAA,cAAA,CAAA;EAAA;;;MAEJ,KAAA,CAAA,CAAA,EWqPL,YXrPK,CWqPQ,CXrPR,CAAA,CAAA,aAAA,CAAA;;;;MAIE,IAAA,CAAA,CAAA,EWyPR,WXzPQ,CWyPI,CXzPJ,CAAA;MAAG,oBAAA,CAAA,CAAA,EAAA,MAAA;;MAA0B,cAAA,CAAA,CAAA,EAAA,MAAA;6BAAzC,CAAA,EAAA,EAAA,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,IAAA,CAAA,EAAA,GAAA,GAAA,IAAA;;MAEJ,UAAA,CAAA,CAAA,EW6Qc,YX7Qd;;;;;;uBACQ,CAAA,EAAA,EAAA,CAAA,MAAA,EWsRuB,YXtRvB,EAAA,GAAA,IAAA,CAAA,EAAA,GAAA,GAAA,IAAA;;MAGA,aAAA,CAAA,CAAA,EWyRS,eXzRT;;;;;;EC3DT,wBAAU,CAAA,EAAA,EAAA,CAAA,MAAA,EU8VyB,eV9VzB,EAAA,GAAA,IAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAAA,MAAA,CAAA,UUmWI,WVnWJ,CUmWgB,CVnWhB,CAAA,CAAA,CAAA,IAAA,EUmW0B,CVnW1B,CAAA,EUmW8B,YVnW9B;iBACH,CAAA,IAAA,EAAA,MAAA,CAAA,EUuWqB,sBVvWrB,GAAA,SAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AppReleaseOptions, AuthService, BucketHandle, CrdtField, FeatureFlagOptions, PreloadOptions, PreloadOptions as PreloadOptions$1, PreloadRefresh, RunOptions, Sp00kyClient, Sp00kyConfig, Sp00kyQueryResultPromise, StorageHealth, StorageHealth as StorageHealth$1, StorageHealthStatus, StorageHealthStatus as StorageHealthStatus$1, SyncHealth, SyncHealth as SyncHealth$1, SyncHealthConfig, SyncHealthStatus, SyncHealthStatus as SyncHealthStatus$1, UpdateOptions } from "@spooky-sync/core";
|
|
1
|
+
import { AppReleaseOptions, AuthService, BucketHandle, ConnectionState, ConnectionState as ConnectionState$1, CrdtField, FeatureFlagOptions, PreloadOptions, PreloadOptions as PreloadOptions$1, PreloadRefresh, ReconnectConfig, RunOptions, Sp00kyClient, Sp00kyConfig, Sp00kyQueryResultPromise, StorageHealth, StorageHealth as StorageHealth$1, StorageHealthStatus, StorageHealthStatus as StorageHealthStatus$1, SyncHealth, SyncHealth as SyncHealth$1, SyncHealthConfig, SyncHealthStatus, SyncHealthStatus as SyncHealthStatus$1, UpdateOptions } from "@spooky-sync/core";
|
|
2
2
|
import { RecordId, RecordId as RecordId$1, Surreal, Uuid } from "surrealdb";
|
|
3
3
|
import { Accessor, JSX } from "solid-js";
|
|
4
4
|
import { GenericModel, GenericSchema, SchemaStructure } from "@spooky/query-builder";
|
|
@@ -106,6 +106,18 @@ interface UseSyncStatus {
|
|
|
106
106
|
* app has actually connected once.
|
|
107
107
|
*/
|
|
108
108
|
isOffline: Accessor<boolean>;
|
|
109
|
+
/**
|
|
110
|
+
* Transport state of the remote WebSocket. Flips the instant the socket
|
|
111
|
+
* drops, unlike `status`, which only degrades after a sustained run of failed
|
|
112
|
+
* sync rounds — so this is what to drive a "reconnecting…" affordance off.
|
|
113
|
+
*/
|
|
114
|
+
connection: Accessor<ConnectionState$1>;
|
|
115
|
+
/**
|
|
116
|
+
* `true` while the connection is being re-established. Usually still
|
|
117
|
+
* `isHealthy()`: a short reconnect is invisible to sync, and writes made
|
|
118
|
+
* during it are queued locally and pushed once the socket is back.
|
|
119
|
+
*/
|
|
120
|
+
isReconnecting: Accessor<boolean>;
|
|
109
121
|
}
|
|
110
122
|
/**
|
|
111
123
|
* Observe sync health for a "can't reach the server" banner / indicator.
|
|
@@ -232,7 +244,27 @@ declare function useFileUpload<S extends SchemaStructure$1>(db: SyncedDb<S>, buc
|
|
|
232
244
|
//#endregion
|
|
233
245
|
//#region src/lib/use-download-file.d.ts
|
|
234
246
|
interface UseDownloadFileOptions {
|
|
247
|
+
/**
|
|
248
|
+
* Master switch, default `true`. `false` gives every hook instance its own
|
|
249
|
+
* private object URL fetched fresh from the bucket and revoked on unmount —
|
|
250
|
+
* no sharing, no persistence, no reuse.
|
|
251
|
+
*/
|
|
235
252
|
cache?: boolean;
|
|
253
|
+
/**
|
|
254
|
+
* Keep the bytes in OPFS so they survive a reload and are available offline.
|
|
255
|
+
* Default `true`. Turn off for one-shot or sensitive files; the in-tab object
|
|
256
|
+
* URL is still shared between components rendering the same path.
|
|
257
|
+
*/
|
|
258
|
+
persist?: boolean;
|
|
259
|
+
/** Exempt this file from pressure eviction. Pinned bytes never expire. */
|
|
260
|
+
pin?: boolean;
|
|
261
|
+
/**
|
|
262
|
+
* `'never'` (default) treats a bucket path as immutable, which is how paths
|
|
263
|
+
* are written (`crypto.randomUUID() + ext`). `'head'` spends a remote `head()`
|
|
264
|
+
* to compare sizes before trusting the cached copy — for paths the app
|
|
265
|
+
* overwrites in place.
|
|
266
|
+
*/
|
|
267
|
+
revalidate?: 'never' | 'head';
|
|
236
268
|
}
|
|
237
269
|
interface UseDownloadFileResult {
|
|
238
270
|
url: Accessor<string | null>;
|
|
@@ -385,5 +417,5 @@ declare class SyncedDb<S extends SchemaStructure$1> {
|
|
|
385
417
|
getBucketConfig(name: string): BucketDefinitionSchema | undefined;
|
|
386
418
|
}
|
|
387
419
|
//#endregion
|
|
388
|
-
export { CacheStrategy, type FileUploadResult, type GenericModel, type GenericSchema, type GetCardinality, type GetTable, InferModel, type InferRelatedModelFromMetadata, InferRelationshipsFromConst, InferSchemaFromConst, type Model, type ModelPayload, type PreloadOptions, type PreloadRefresh, ProvisionOptions, type QueryInfo, type QueryModifier, type QueryModifierBuilder, type QueryResult, RecordId, RelatedFieldsTableScoped, type RelationshipDefinition, RelationshipField, type RelationshipsMetadata, Sp00kyProvider, type Sp00kyProviderProps, type StorageHealth, type StorageHealthStatus, type SyncHealth, type SyncHealthConfig, type SyncHealthStatus, SyncedDb, SyncedDbConfig, type TableModel, type TableNames, type UseAppRelease, type UseAppReleaseOptions, type UseDownloadFileOptions, type UseDownloadFileResult, type UseFeatureFlag, type UseStorageStatus, type UseSyncStatus, Uuid, WithRelated, WithRelatedMany, createPreload, useAppRelease, useCrdtField, useDb, useDownloadFile, useFeatureFlag, useFileUpload, useQuery, useStorageStatus, useSyncStatus };
|
|
420
|
+
export { CacheStrategy, type ConnectionState, type FileUploadResult, type GenericModel, type GenericSchema, type GetCardinality, type GetTable, InferModel, type InferRelatedModelFromMetadata, InferRelationshipsFromConst, InferSchemaFromConst, type Model, type ModelPayload, type PreloadOptions, type PreloadRefresh, ProvisionOptions, type QueryInfo, type QueryModifier, type QueryModifierBuilder, type QueryResult, type ReconnectConfig, RecordId, RelatedFieldsTableScoped, type RelationshipDefinition, RelationshipField, type RelationshipsMetadata, Sp00kyProvider, type Sp00kyProviderProps, type StorageHealth, type StorageHealthStatus, type SyncHealth, type SyncHealthConfig, type SyncHealthStatus, SyncedDb, SyncedDbConfig, type TableModel, type TableNames, type UseAppRelease, type UseAppReleaseOptions, type UseDownloadFileOptions, type UseDownloadFileResult, type UseFeatureFlag, type UseStorageStatus, type UseSyncStatus, Uuid, WithRelated, WithRelatedMany, createPreload, useAppRelease, useCrdtField, useDb, useDownloadFile, useFeatureFlag, useFileUpload, useQuery, useStorageStatus, useSyncStatus };
|
|
389
421
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/lib/models.ts","../../../src/types/index.ts","../../../src/lib/use-query.ts","../../../src/lib/create-preload.ts","../../../src/lib/use-sync-status.ts","../../../src/lib/use-storage-status.ts","../../../src/lib/use-crdt-field.ts","../../../src/lib/use-feature-flag.ts","../../../src/lib/use-app-release.ts","../../../src/lib/use-file-upload.ts","../../../src/lib/use-download-file.ts","../../../src/lib/Sp00kyProvider.ts","../../../src/lib/context.ts","../../../src/index.ts"],"sourcesContent":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/lib/models.ts","../../../src/types/index.ts","../../../src/lib/use-query.ts","../../../src/lib/create-preload.ts","../../../src/lib/use-sync-status.ts","../../../src/lib/use-storage-status.ts","../../../src/lib/use-crdt-field.ts","../../../src/lib/use-feature-flag.ts","../../../src/lib/use-app-release.ts","../../../src/lib/use-file-upload.ts","../../../src/lib/use-download-file.ts","../../../src/lib/Sp00kyProvider.ts","../../../src/lib/context.ts","../../../src/index.ts"],"sourcesContent":[],"mappings":"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AAA,CAAA,EAAA,OAAA,CAAA,ESQtE,sBTRsE,CAAA,ESS/E,qBTT+E;AACvD,iBSSX,eTTW,CAAA,USSe,iBTTf,CAAA,CAAA,EAAA,ESUrB,QTVqB,CSUZ,CTVY,CAAA,EAAA,UAAA,ESWb,WTXa,CSWD,CTXC,CAAA,EAAA,IAAA,ESYnB,QTZmB,CAAA,MAAA,GAAA,IAAA,GAAA,SAAA,CAAA,EAAA,OAAA,CAAA,ESaf,sBTbe,CAAA,EScxB,qBTdwB;;;;UUnBV,8BAA8B;UACrC,eAAe;aACZ,GAAA,CAAI;EXVL,OAAA,CAAK,EAAA,CAAA,KAAA,EWWG,KXXI,EAAA,GAAA,IAAA;EACZ,OAAA,CAAA,EAAA,CAAA,EAAA,EWWK,QXXO,CWWE,CXXF,CAAA,EAAA,GAAA,IAAA;EAAA;;;;;;;ACCxB;EAOiB,OAAA,CAAA,EAAA,CAAA,EAAA,EUYA,QVZA,CUYS,CVZT,CAAA,EAAA,GUYgB,OVZhB,CAAA,IAAA,CAAA;EAIL,QAAA,EUSA,GAAA,CAAI,OVTS;AAKzB;AAAgC,iBUOhB,cVPgB,CAAA,UUOS,eVPT,CAAA,CAAA,KAAA,EUQvB,mBVRuB,CUQH,CVRG,CAAA,CAAA,EUS7B,GAAA,CAAI,OVTyB;;;;iBWlBhB,gBAAgB,oBAAoB,SAAS;;;;;AXkBlB,KYkE/B,iBZlE+B,CAAA,eYmE1B,iBZnE0B,EAAA,kBYoEvB,UZpEuB,CYoEZ,MZpEY,CAAA,EAAA,cYqE3B,4BZrE2B,CYqEE,MZrEF,EYqEU,SZrEV,CAAA,CAAA,GYsEvC,eZtEuC,CYsEvB,MZtEuB,EYsEf,SZtEe,EYsEJ,KZtEI,CAAA;AACxB,KYuEP,wBZvEO,CAAA,eYwEF,iBZxEE,EAAA,kBYyEC,UZzED,CYyEY,MZzEZ,CAAA,EAAA,sBY0EK,4BZ1EL,CY0EkC,MZ1ElC,EY0E0C,SZ1E1C,CAAA,GY2Ef,4BZ3Ee,CY2Ec,MZ3Ed,EY2EsB,SZ3EtB,CAAA,CAAA,GAAA,QY6EX,aZ7EA,GAAA;EAAoC,EAAA,EY8EpC,iBZ9EoC,CY8ElB,MZ9EkB,EY8EV,SZ9EU,EY8EC,CZ9ED,CAAA,CAAA,IAAA,CAAA;EAAG,aAAA,EY+E5B,gB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"}
|
package/dist/index.js
CHANGED
|
@@ -168,7 +168,9 @@ function useSyncStatus() {
|
|
|
168
168
|
isHealthy: () => health().status === "healthy",
|
|
169
169
|
isDegraded: () => health().status === "degraded",
|
|
170
170
|
everConnected: () => health().everConnected,
|
|
171
|
-
isOffline: () => health().status === "degraded" && health().everConnected
|
|
171
|
+
isOffline: () => health().status === "degraded" && health().everConnected,
|
|
172
|
+
connection: () => health().connection,
|
|
173
|
+
isReconnecting: () => health().connection === "reconnecting"
|
|
172
174
|
};
|
|
173
175
|
}
|
|
174
176
|
|
|
@@ -406,20 +408,6 @@ function useFileUpload(dbOrBucketName, maybeBucketName) {
|
|
|
406
408
|
|
|
407
409
|
//#endregion
|
|
408
410
|
//#region src/lib/use-download-file.ts
|
|
409
|
-
const downloadCache = /* @__PURE__ */ new Map();
|
|
410
|
-
const inflightRequests = /* @__PURE__ */ new Map();
|
|
411
|
-
function cacheKey(bucket, path) {
|
|
412
|
-
return `${bucket}:${path}`;
|
|
413
|
-
}
|
|
414
|
-
function releaseEntry(key) {
|
|
415
|
-
const entry = downloadCache.get(key);
|
|
416
|
-
if (!entry) return;
|
|
417
|
-
entry.refCount--;
|
|
418
|
-
if (entry.refCount <= 0) {
|
|
419
|
-
URL.revokeObjectURL(entry.url);
|
|
420
|
-
downloadCache.delete(key);
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
411
|
function useDownloadFile(dbOrBucketName, bucketNameOrPath, pathOrOptions, maybeOptions) {
|
|
424
412
|
let db;
|
|
425
413
|
let bucketName;
|
|
@@ -440,62 +428,15 @@ function useDownloadFile(dbOrBucketName, bucketNameOrPath, pathOrOptions, maybeO
|
|
|
440
428
|
const [url, setUrl] = createSignal(null);
|
|
441
429
|
const [isLoading, setIsLoading] = createSignal(false);
|
|
442
430
|
const [error, setError] = createSignal(null);
|
|
443
|
-
let
|
|
431
|
+
let lease = null;
|
|
444
432
|
let privateUrl = null;
|
|
445
433
|
const [refetchSignal, setRefetchSignal] = createSignal(0);
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
currentKey = key;
|
|
453
|
-
return cached.url;
|
|
454
|
-
}
|
|
455
|
-
const inflight = inflightRequests.get(key);
|
|
456
|
-
if (inflight) {
|
|
457
|
-
const result = await inflight;
|
|
458
|
-
if (result) {
|
|
459
|
-
const entry = downloadCache.get(key);
|
|
460
|
-
if (entry) {
|
|
461
|
-
entry.refCount++;
|
|
462
|
-
currentKey = key;
|
|
463
|
-
}
|
|
464
|
-
}
|
|
465
|
-
return result;
|
|
466
|
-
}
|
|
467
|
-
const promise = (async () => {
|
|
468
|
-
const content = await db.bucket(bucketName).get(filePath);
|
|
469
|
-
if (!content) return null;
|
|
470
|
-
const objectUrl = URL.createObjectURL(new Blob([content]));
|
|
471
|
-
downloadCache.set(key, {
|
|
472
|
-
url: objectUrl,
|
|
473
|
-
refCount: 1
|
|
474
|
-
});
|
|
475
|
-
return objectUrl;
|
|
476
|
-
})();
|
|
477
|
-
inflightRequests.set(key, promise);
|
|
478
|
-
try {
|
|
479
|
-
const result = await promise;
|
|
480
|
-
currentKey = key;
|
|
481
|
-
return result;
|
|
482
|
-
} finally {
|
|
483
|
-
inflightRequests.delete(key);
|
|
484
|
-
}
|
|
485
|
-
} else {
|
|
486
|
-
const content = await db.bucket(bucketName).get(filePath);
|
|
487
|
-
if (!content) return null;
|
|
488
|
-
const objectUrl = URL.createObjectURL(new Blob([content]));
|
|
489
|
-
privateUrl = objectUrl;
|
|
490
|
-
return objectUrl;
|
|
491
|
-
}
|
|
492
|
-
}
|
|
493
|
-
function releaseCurrentEntry() {
|
|
494
|
-
if (useCache && currentKey) {
|
|
495
|
-
releaseEntry(currentKey);
|
|
496
|
-
currentKey = null;
|
|
497
|
-
}
|
|
498
|
-
if (!useCache && privateUrl) {
|
|
434
|
+
/** Consumed by the next effect run, so `refetch()` bypasses every layer once. */
|
|
435
|
+
let reloadOnce = false;
|
|
436
|
+
function releaseCurrent() {
|
|
437
|
+
lease?.release();
|
|
438
|
+
lease = null;
|
|
439
|
+
if (privateUrl) {
|
|
499
440
|
URL.revokeObjectURL(privateUrl);
|
|
500
441
|
privateUrl = null;
|
|
501
442
|
}
|
|
@@ -503,29 +444,40 @@ function useDownloadFile(dbOrBucketName, bucketNameOrPath, pathOrOptions, maybeO
|
|
|
503
444
|
createEffect(() => {
|
|
504
445
|
const filePath = path();
|
|
505
446
|
refetchSignal();
|
|
506
|
-
|
|
447
|
+
releaseCurrent();
|
|
507
448
|
if (!filePath) {
|
|
508
449
|
setUrl(null);
|
|
509
450
|
setIsLoading(false);
|
|
510
451
|
setError(null);
|
|
511
452
|
return;
|
|
512
453
|
}
|
|
513
|
-
const
|
|
514
|
-
|
|
515
|
-
const cached = downloadCache.get(key);
|
|
516
|
-
if (cached) {
|
|
517
|
-
cached.refCount++;
|
|
518
|
-
currentKey = key;
|
|
519
|
-
setUrl(cached.url);
|
|
520
|
-
setIsLoading(false);
|
|
521
|
-
setError(null);
|
|
522
|
-
return;
|
|
523
|
-
}
|
|
524
|
-
}
|
|
454
|
+
const reload = reloadOnce;
|
|
455
|
+
reloadOnce = false;
|
|
525
456
|
let cancelled = false;
|
|
526
457
|
setIsLoading(true);
|
|
527
458
|
setError(null);
|
|
528
|
-
|
|
459
|
+
const bucket = db.bucket(bucketName);
|
|
460
|
+
(useCache ? bucket.url(filePath, {
|
|
461
|
+
persist: options.persist !== false,
|
|
462
|
+
pin: options.pin,
|
|
463
|
+
revalidate: options.revalidate,
|
|
464
|
+
reload
|
|
465
|
+
}).then((acquired) => {
|
|
466
|
+
if (!acquired) return null;
|
|
467
|
+
if (cancelled) {
|
|
468
|
+
acquired.release();
|
|
469
|
+
return null;
|
|
470
|
+
}
|
|
471
|
+
lease = acquired;
|
|
472
|
+
return acquired.url;
|
|
473
|
+
}) : bucket.read(filePath, {
|
|
474
|
+
persist: false,
|
|
475
|
+
reload: true
|
|
476
|
+
}).then((blob) => {
|
|
477
|
+
if (!blob || cancelled) return null;
|
|
478
|
+
privateUrl = URL.createObjectURL(blob);
|
|
479
|
+
return privateUrl;
|
|
480
|
+
})).then((result) => {
|
|
529
481
|
if (!cancelled) {
|
|
530
482
|
setUrl(result);
|
|
531
483
|
setIsLoading(false);
|
|
@@ -541,18 +493,11 @@ function useDownloadFile(dbOrBucketName, bucketNameOrPath, pathOrOptions, maybeO
|
|
|
541
493
|
});
|
|
542
494
|
});
|
|
543
495
|
onCleanup(() => {
|
|
544
|
-
|
|
496
|
+
releaseCurrent();
|
|
545
497
|
});
|
|
546
498
|
const refetch = () => {
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
if (entry) {
|
|
550
|
-
URL.revokeObjectURL(entry.url);
|
|
551
|
-
downloadCache.delete(currentKey);
|
|
552
|
-
}
|
|
553
|
-
currentKey = null;
|
|
554
|
-
}
|
|
555
|
-
refetchTrigger();
|
|
499
|
+
reloadOnce = true;
|
|
500
|
+
setRefetchSignal((n) => n + 1);
|
|
556
501
|
};
|
|
557
502
|
return {
|
|
558
503
|
url,
|
|
@@ -568,17 +513,12 @@ function Sp00kyProvider(props) {
|
|
|
568
513
|
const merged = mergeProps({ fallback: void 0 }, props);
|
|
569
514
|
const [db, setDb] = createSignal(void 0);
|
|
570
515
|
let disposed = false;
|
|
571
|
-
let live;
|
|
572
516
|
onCleanup(() => {
|
|
573
517
|
disposed = true;
|
|
574
|
-
const instance = live;
|
|
575
|
-
live = void 0;
|
|
576
|
-
instance?.close();
|
|
577
518
|
});
|
|
578
519
|
onMount(async () => {
|
|
579
520
|
try {
|
|
580
521
|
const instance = new SyncedDb(merged.config);
|
|
581
|
-
live = instance;
|
|
582
522
|
await instance.init();
|
|
583
523
|
if (disposed) {
|
|
584
524
|
await instance.close();
|