@multiplatform.one/frappe 6.0.4 → 6.3.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/README.md +38 -12
- package/dist/cjs/auth.cjs +1 -1
- package/dist/cjs/auth.native.js.map +1 -1
- package/dist/cjs/call.cjs +1 -1
- package/dist/cjs/call.native.js.map +1 -1
- package/dist/cjs/collection.cjs +18 -4
- package/dist/cjs/collection.native.js +18 -4
- package/dist/cjs/collection.native.js.map +1 -1
- package/dist/cjs/core/http.cjs +92 -9
- package/dist/cjs/core/http.native.js +96 -7
- package/dist/cjs/core/http.native.js.map +1 -1
- package/dist/cjs/db.cjs +7 -7
- package/dist/cjs/db.native.js +4 -4
- package/dist/cjs/db.native.js.map +1 -1
- package/dist/cjs/doctype.cjs +97 -39
- package/dist/cjs/doctype.native.js +116 -46
- package/dist/cjs/doctype.native.js.map +1 -1
- package/dist/cjs/file.cjs +1 -1
- package/dist/cjs/file.native.js.map +1 -1
- package/dist/cjs/fixtureDb.cjs +3 -2
- package/dist/cjs/fixtureDb.native.js +2 -1
- package/dist/cjs/fixtureDb.native.js.map +1 -1
- package/dist/cjs/frappeApp.cjs +15 -14
- package/dist/cjs/frappeApp.native.js +16 -14
- package/dist/cjs/frappeApp.native.js.map +1 -1
- package/dist/cjs/frappeReact.cjs +198 -18
- package/dist/cjs/frappeReact.native.js +241 -18
- package/dist/cjs/frappeReact.native.js.map +1 -1
- package/dist/cjs/index.cjs +9 -4
- package/dist/cjs/index.native.js +9 -4
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/pacer.cjs +2 -2
- package/dist/cjs/pacer.native.js +2 -2
- package/dist/cjs/pacer.native.js.map +1 -1
- package/dist/cjs/realtime.cjs +186 -46
- package/dist/cjs/realtime.native.js +268 -48
- package/dist/cjs/realtime.native.js.map +1 -1
- package/dist/cjs/sync/backfill.cjs +32 -27
- package/dist/cjs/sync/backfill.native.js +49 -43
- package/dist/cjs/sync/backfill.native.js.map +1 -1
- package/dist/cjs/sync/index.cjs +90 -24
- package/dist/cjs/sync/index.native.js +112 -10
- package/dist/cjs/sync/index.native.js.map +1 -1
- package/dist/cjs/sync/merge.cjs +0 -3
- package/dist/cjs/sync/merge.native.js +0 -3
- package/dist/cjs/sync/merge.native.js.map +1 -1
- package/dist/cjs/sync/mutationEngine.cjs +25 -19
- package/dist/cjs/sync/mutationEngine.native.js +16 -13
- package/dist/cjs/sync/mutationEngine.native.js.map +1 -1
- package/dist/cjs/sync/mutationJournal.cjs +9 -4
- package/dist/cjs/sync/mutationJournal.native.js +7 -4
- package/dist/cjs/sync/mutationJournal.native.js.map +1 -1
- package/dist/cjs/sync/normalizedCache.cjs +7 -3
- package/dist/cjs/sync/normalizedCache.native.js +7 -2
- package/dist/cjs/sync/normalizedCache.native.js.map +1 -1
- package/dist/cjs/sync/persistence.cjs +63 -31
- package/dist/cjs/sync/persistence.native.js +120 -63
- package/dist/cjs/sync/persistence.native.js.map +1 -1
- package/dist/cjs/sync/realtime.cjs +124 -13
- package/dist/cjs/sync/realtime.native.js +163 -20
- package/dist/cjs/sync/realtime.native.js.map +1 -1
- package/dist/cjs/sync/rehydration.cjs +16 -10
- package/dist/cjs/sync/rehydration.native.js +16 -14
- package/dist/cjs/sync/rehydration.native.js.map +1 -1
- package/dist/cjs/sync/storage.cjs +3 -3
- package/dist/cjs/sync/storage.native.js +1 -1
- package/dist/cjs/sync/storage.native.js.map +1 -1
- package/dist/cjs/sync/subscriptionManager.cjs +255 -65
- package/dist/cjs/sync/subscriptionManager.native.js +330 -93
- package/dist/cjs/sync/subscriptionManager.native.js.map +1 -1
- package/dist/cjs/sync/types.cjs +2 -0
- package/dist/cjs/sync/types.native.js +2 -0
- package/dist/cjs/sync/types.native.js.map +1 -1
- package/dist/cjs/sync/virtualPageManager.cjs +9 -9
- package/dist/cjs/sync/virtualPageManager.native.js +5 -9
- package/dist/cjs/sync/virtualPageManager.native.js.map +1 -1
- package/dist/cjs/useLiveQuery.cjs +52 -0
- package/dist/cjs/useLiveQuery.native.js +59 -0
- package/dist/cjs/useLiveQuery.native.js.map +1 -0
- package/dist/cjs/util.cjs +11 -2
- package/dist/cjs/util.native.js +16 -2
- package/dist/cjs/util.native.js.map +1 -1
- package/dist/esm/auth.mjs +1 -1
- package/dist/esm/auth.mjs.map +1 -1
- package/dist/esm/auth.native.js.map +1 -1
- package/dist/esm/call.mjs +1 -1
- package/dist/esm/call.mjs.map +1 -1
- package/dist/esm/call.native.js.map +1 -1
- package/dist/esm/collection.mjs +18 -4
- package/dist/esm/collection.mjs.map +1 -1
- package/dist/esm/collection.native.js +18 -4
- package/dist/esm/collection.native.js.map +1 -1
- package/dist/esm/core/http.mjs +93 -10
- package/dist/esm/core/http.mjs.map +1 -1
- package/dist/esm/core/http.native.js +97 -8
- package/dist/esm/core/http.native.js.map +1 -1
- package/dist/esm/db.mjs +7 -7
- package/dist/esm/db.mjs.map +1 -1
- package/dist/esm/db.native.js +4 -4
- package/dist/esm/db.native.js.map +1 -1
- package/dist/esm/doctype.mjs +96 -39
- package/dist/esm/doctype.mjs.map +1 -1
- package/dist/esm/doctype.native.js +115 -46
- package/dist/esm/doctype.native.js.map +1 -1
- package/dist/esm/file.mjs +1 -1
- package/dist/esm/file.mjs.map +1 -1
- package/dist/esm/file.native.js.map +1 -1
- package/dist/esm/fixtureDb.mjs +3 -2
- package/dist/esm/fixtureDb.mjs.map +1 -1
- package/dist/esm/fixtureDb.native.js +2 -1
- package/dist/esm/fixtureDb.native.js.map +1 -1
- package/dist/esm/frappeApp.mjs +15 -14
- package/dist/esm/frappeApp.mjs.map +1 -1
- package/dist/esm/frappeApp.native.js +16 -14
- package/dist/esm/frappeApp.native.js.map +1 -1
- package/dist/esm/frappeReact.mjs +197 -19
- package/dist/esm/frappeReact.mjs.map +1 -1
- package/dist/esm/frappeReact.native.js +240 -19
- package/dist/esm/frappeReact.native.js.map +1 -1
- package/dist/esm/index.mjs +5 -4
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +5 -4
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/pacer.mjs +1 -1
- package/dist/esm/pacer.native.js +1 -1
- package/dist/esm/realtime.mjs +187 -47
- package/dist/esm/realtime.mjs.map +1 -1
- package/dist/esm/realtime.native.js +269 -49
- package/dist/esm/realtime.native.js.map +1 -1
- package/dist/esm/sync/backfill.mjs +32 -27
- package/dist/esm/sync/backfill.mjs.map +1 -1
- package/dist/esm/sync/backfill.native.js +49 -43
- package/dist/esm/sync/backfill.native.js.map +1 -1
- package/dist/esm/sync/index.mjs +90 -24
- package/dist/esm/sync/index.mjs.map +1 -1
- package/dist/esm/sync/index.native.js +112 -10
- package/dist/esm/sync/index.native.js.map +1 -1
- package/dist/esm/sync/merge.mjs +1 -1
- package/dist/esm/sync/merge.mjs.map +1 -1
- package/dist/esm/sync/merge.native.js +1 -1
- package/dist/esm/sync/merge.native.js.map +1 -1
- package/dist/esm/sync/mutationEngine.mjs +25 -19
- package/dist/esm/sync/mutationEngine.mjs.map +1 -1
- package/dist/esm/sync/mutationEngine.native.js +16 -13
- package/dist/esm/sync/mutationEngine.native.js.map +1 -1
- package/dist/esm/sync/mutationJournal.mjs +9 -4
- package/dist/esm/sync/mutationJournal.mjs.map +1 -1
- package/dist/esm/sync/mutationJournal.native.js +7 -4
- package/dist/esm/sync/mutationJournal.native.js.map +1 -1
- package/dist/esm/sync/normalizedCache.mjs +7 -3
- package/dist/esm/sync/normalizedCache.mjs.map +1 -1
- package/dist/esm/sync/normalizedCache.native.js +7 -2
- package/dist/esm/sync/normalizedCache.native.js.map +1 -1
- package/dist/esm/sync/persistence.mjs +64 -32
- package/dist/esm/sync/persistence.mjs.map +1 -1
- package/dist/esm/sync/persistence.native.js +121 -64
- package/dist/esm/sync/persistence.native.js.map +1 -1
- package/dist/esm/sync/realtime.mjs +124 -13
- package/dist/esm/sync/realtime.mjs.map +1 -1
- package/dist/esm/sync/realtime.native.js +163 -20
- package/dist/esm/sync/realtime.native.js.map +1 -1
- package/dist/esm/sync/rehydration.mjs +16 -10
- package/dist/esm/sync/rehydration.mjs.map +1 -1
- package/dist/esm/sync/rehydration.native.js +16 -14
- package/dist/esm/sync/rehydration.native.js.map +1 -1
- package/dist/esm/sync/storage.mjs +3 -3
- package/dist/esm/sync/storage.mjs.map +1 -1
- package/dist/esm/sync/storage.native.js +1 -1
- package/dist/esm/sync/storage.native.js.map +1 -1
- package/dist/esm/sync/subscriptionManager.mjs +255 -65
- package/dist/esm/sync/subscriptionManager.mjs.map +1 -1
- package/dist/esm/sync/subscriptionManager.native.js +330 -93
- package/dist/esm/sync/subscriptionManager.native.js.map +1 -1
- package/dist/esm/sync/types.mjs +2 -0
- package/dist/esm/sync/types.mjs.map +1 -1
- package/dist/esm/sync/types.native.js +2 -0
- package/dist/esm/sync/types.native.js.map +1 -1
- package/dist/esm/sync/virtualPageManager.mjs +9 -9
- package/dist/esm/sync/virtualPageManager.mjs.map +1 -1
- package/dist/esm/sync/virtualPageManager.native.js +5 -9
- package/dist/esm/sync/virtualPageManager.native.js.map +1 -1
- package/dist/esm/useLiveQuery.mjs +26 -0
- package/dist/esm/useLiveQuery.mjs.map +1 -0
- package/dist/esm/useLiveQuery.native.js +30 -0
- package/dist/esm/useLiveQuery.native.js.map +1 -0
- package/dist/esm/util.mjs +11 -3
- package/dist/esm/util.mjs.map +1 -1
- package/dist/esm/util.native.js +16 -3
- package/dist/esm/util.native.js.map +1 -1
- package/dist/jsx/auth.mjs +1 -1
- package/dist/jsx/auth.mjs.map +1 -1
- package/dist/jsx/auth.native.js.map +1 -1
- package/dist/jsx/call.mjs +1 -1
- package/dist/jsx/call.mjs.map +1 -1
- package/dist/jsx/call.native.js.map +1 -1
- package/dist/jsx/collection.mjs +18 -4
- package/dist/jsx/collection.mjs.map +1 -1
- package/dist/jsx/collection.native.js +18 -4
- package/dist/jsx/collection.native.js.map +1 -1
- package/dist/jsx/core/http.mjs +93 -10
- package/dist/jsx/core/http.mjs.map +1 -1
- package/dist/jsx/core/http.native.js +96 -7
- package/dist/jsx/core/http.native.js.map +1 -1
- package/dist/jsx/db.mjs +7 -7
- package/dist/jsx/db.mjs.map +1 -1
- package/dist/jsx/db.native.js +4 -4
- package/dist/jsx/db.native.js.map +1 -1
- package/dist/jsx/doctype.mjs +96 -39
- package/dist/jsx/doctype.mjs.map +1 -1
- package/dist/jsx/doctype.native.js +116 -46
- package/dist/jsx/doctype.native.js.map +1 -1
- package/dist/jsx/file.mjs +1 -1
- package/dist/jsx/file.mjs.map +1 -1
- package/dist/jsx/file.native.js.map +1 -1
- package/dist/jsx/fixtureDb.mjs +3 -2
- package/dist/jsx/fixtureDb.mjs.map +1 -1
- package/dist/jsx/fixtureDb.native.js +2 -1
- package/dist/jsx/fixtureDb.native.js.map +1 -1
- package/dist/jsx/frappeApp.mjs +15 -14
- package/dist/jsx/frappeApp.mjs.map +1 -1
- package/dist/jsx/frappeApp.native.js +16 -14
- package/dist/jsx/frappeApp.native.js.map +1 -1
- package/dist/jsx/frappeReact.mjs +197 -19
- package/dist/jsx/frappeReact.mjs.map +1 -1
- package/dist/jsx/frappeReact.native.js +241 -18
- package/dist/jsx/frappeReact.native.js.map +1 -1
- package/dist/jsx/index.js +5 -4
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +5 -4
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +9 -4
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/pacer.mjs +1 -1
- package/dist/jsx/pacer.native.js +2 -2
- package/dist/jsx/pacer.native.js.map +1 -1
- package/dist/jsx/realtime.mjs +187 -47
- package/dist/jsx/realtime.mjs.map +1 -1
- package/dist/jsx/realtime.native.js +268 -48
- package/dist/jsx/realtime.native.js.map +1 -1
- package/dist/jsx/sync/backfill.mjs +32 -27
- package/dist/jsx/sync/backfill.mjs.map +1 -1
- package/dist/jsx/sync/backfill.native.js +49 -43
- package/dist/jsx/sync/backfill.native.js.map +1 -1
- package/dist/jsx/sync/index.mjs +90 -24
- package/dist/jsx/sync/index.mjs.map +1 -1
- package/dist/jsx/sync/index.native.js +112 -10
- package/dist/jsx/sync/index.native.js.map +1 -1
- package/dist/jsx/sync/merge.mjs +1 -1
- package/dist/jsx/sync/merge.mjs.map +1 -1
- package/dist/jsx/sync/merge.native.js +0 -3
- package/dist/jsx/sync/merge.native.js.map +1 -1
- package/dist/jsx/sync/mutationEngine.mjs +25 -19
- package/dist/jsx/sync/mutationEngine.mjs.map +1 -1
- package/dist/jsx/sync/mutationEngine.native.js +16 -13
- package/dist/jsx/sync/mutationEngine.native.js.map +1 -1
- package/dist/jsx/sync/mutationJournal.mjs +9 -4
- package/dist/jsx/sync/mutationJournal.mjs.map +1 -1
- package/dist/jsx/sync/mutationJournal.native.js +7 -4
- package/dist/jsx/sync/mutationJournal.native.js.map +1 -1
- package/dist/jsx/sync/normalizedCache.mjs +7 -3
- package/dist/jsx/sync/normalizedCache.mjs.map +1 -1
- package/dist/jsx/sync/normalizedCache.native.js +7 -2
- package/dist/jsx/sync/normalizedCache.native.js.map +1 -1
- package/dist/jsx/sync/persistence.mjs +64 -32
- package/dist/jsx/sync/persistence.mjs.map +1 -1
- package/dist/jsx/sync/persistence.native.js +120 -63
- package/dist/jsx/sync/persistence.native.js.map +1 -1
- package/dist/jsx/sync/realtime.mjs +124 -13
- package/dist/jsx/sync/realtime.mjs.map +1 -1
- package/dist/jsx/sync/realtime.native.js +163 -20
- package/dist/jsx/sync/realtime.native.js.map +1 -1
- package/dist/jsx/sync/rehydration.mjs +16 -10
- package/dist/jsx/sync/rehydration.mjs.map +1 -1
- package/dist/jsx/sync/rehydration.native.js +16 -14
- package/dist/jsx/sync/rehydration.native.js.map +1 -1
- package/dist/jsx/sync/storage.mjs +3 -3
- package/dist/jsx/sync/storage.mjs.map +1 -1
- package/dist/jsx/sync/storage.native.js +1 -1
- package/dist/jsx/sync/storage.native.js.map +1 -1
- package/dist/jsx/sync/subscriptionManager.mjs +255 -65
- package/dist/jsx/sync/subscriptionManager.mjs.map +1 -1
- package/dist/jsx/sync/subscriptionManager.native.js +330 -93
- package/dist/jsx/sync/subscriptionManager.native.js.map +1 -1
- package/dist/jsx/sync/types.mjs +2 -0
- package/dist/jsx/sync/types.mjs.map +1 -1
- package/dist/jsx/sync/types.native.js +2 -0
- package/dist/jsx/sync/types.native.js.map +1 -1
- package/dist/jsx/sync/virtualPageManager.mjs +9 -9
- package/dist/jsx/sync/virtualPageManager.mjs.map +1 -1
- package/dist/jsx/sync/virtualPageManager.native.js +5 -9
- package/dist/jsx/sync/virtualPageManager.native.js.map +1 -1
- package/dist/jsx/useLiveQuery.mjs +26 -0
- package/dist/jsx/useLiveQuery.mjs.map +1 -0
- package/dist/jsx/useLiveQuery.native.js +59 -0
- package/dist/jsx/useLiveQuery.native.js.map +1 -0
- package/dist/jsx/util.mjs +11 -3
- package/dist/jsx/util.mjs.map +1 -1
- package/dist/jsx/util.native.js +16 -2
- package/dist/jsx/util.native.js.map +1 -1
- package/package.json +20 -17
- package/src/auth.ts +5 -1
- package/src/call.ts +5 -1
- package/src/collection.spec.ts +55 -0
- package/src/collection.ts +33 -4
- package/src/core/http.spec.ts +66 -0
- package/src/core/http.ts +115 -9
- package/src/core/httpNative.spec.ts +234 -0
- package/src/core/types.ts +2 -0
- package/src/db.spec.ts +91 -51
- package/src/db.ts +27 -8
- package/src/doctype.spec.ts +247 -39
- package/src/doctype.ts +203 -53
- package/src/file.ts +5 -1
- package/src/fixtureDb.ts +13 -2
- package/src/frappeApp.ts +18 -19
- package/src/frappeReact.spec.ts +565 -1
- package/src/frappeReact.ts +446 -38
- package/src/frappeReactLiveQueryGc.spec.ts +320 -0
- package/src/frappeReactNative.spec.ts +65 -0
- package/src/index.ts +10 -9
- package/src/pacer.ts +2 -2
- package/src/realtime.spec.ts +464 -20
- package/src/realtime.ts +284 -46
- package/src/sync/backfill.spec.ts +43 -0
- package/src/sync/backfill.ts +59 -39
- package/src/sync/debug.spec.ts +36 -0
- package/src/sync/filterValidation.spec.ts +197 -0
- package/src/sync/index.ts +98 -7
- package/src/sync/merge.ts +3 -3
- package/src/sync/mutationEngine.spec.ts +36 -4
- package/src/sync/mutationEngine.ts +30 -11
- package/src/sync/mutationJournal.ts +18 -4
- package/src/sync/normalizedCache.spec.ts +102 -0
- package/src/sync/normalizedCache.ts +19 -3
- package/src/sync/offlineRestore.spec.ts +423 -0
- package/src/sync/persistence.spec.ts +39 -7
- package/src/sync/persistence.ts +90 -18
- package/src/sync/persistenceGjs.spec.ts +143 -0
- package/src/sync/persistenceNative.spec.ts +139 -0
- package/src/sync/realtime.spec.ts +18 -1
- package/src/sync/realtime.ts +161 -13
- package/src/sync/rehydration.ts +23 -5
- package/src/sync/storage.ts +5 -4
- package/src/sync/subscriptionManager.spec.ts +94 -0
- package/src/sync/subscriptionManager.ts +304 -82
- package/src/sync/syncModule.spec.ts +137 -0
- package/src/sync/types.ts +39 -0
- package/src/sync/virtualPageManager.ts +8 -4
- package/src/useLiveQuery.ts +58 -0
- package/src/util.spec.ts +35 -4
- package/src/util.ts +37 -2
- package/types/auth.d.ts +13 -0
- package/types/auth.d.ts.map +1 -0
- package/types/call.d.ts +10 -0
- package/types/call.d.ts.map +1 -0
- package/types/collection.d.ts +127 -0
- package/types/collection.d.ts.map +1 -0
- package/types/common/types.d.ts +35 -0
- package/types/common/types.d.ts.map +1 -0
- package/types/core/http.d.ts +86 -0
- package/types/core/http.d.ts.map +1 -0
- package/types/core/types.d.ts +74 -0
- package/types/core/types.d.ts.map +1 -0
- package/types/core/wire.d.ts +405 -0
- package/types/core/wire.d.ts.map +1 -0
- package/types/db.d.ts +244 -0
- package/types/db.d.ts.map +1 -0
- package/types/devtools/FrappeDevtoolsPanel.d.ts +7 -0
- package/types/devtools/FrappeDevtoolsPanel.d.ts.map +1 -0
- package/types/devtools/index.d.ts +4 -0
- package/types/devtools/index.d.ts.map +1 -0
- package/types/devtools/plugin.d.ts +9 -0
- package/types/devtools/plugin.d.ts.map +1 -0
- package/types/devtools/theme.d.ts +15 -0
- package/types/devtools/theme.d.ts.map +1 -0
- package/types/doctype.d.ts +256 -0
- package/types/doctype.d.ts.map +1 -0
- package/types/file.d.ts +15 -0
- package/types/file.d.ts.map +1 -0
- package/types/fixtureDb.d.ts +76 -0
- package/types/fixtureDb.d.ts.map +1 -0
- package/types/fixtures.d.ts +55 -0
- package/types/fixtures.d.ts.map +1 -0
- package/types/frappeApp.d.ts +45 -0
- package/types/frappeApp.d.ts.map +1 -0
- package/types/frappeReact.d.ts +270 -0
- package/types/frappeReact.d.ts.map +1 -0
- package/types/index.d.ts +44 -0
- package/types/index.d.ts.map +1 -0
- package/types/optimistic.d.ts +38 -0
- package/types/optimistic.d.ts.map +1 -0
- package/types/pacer.d.ts +193 -0
- package/types/pacer.d.ts.map +1 -0
- package/types/plugin/index.d.ts +11 -0
- package/types/plugin/index.d.ts.map +1 -0
- package/types/realtime.d.ts +121 -0
- package/types/realtime.d.ts.map +1 -0
- package/types/sync/backfill.d.ts +60 -0
- package/types/sync/backfill.d.ts.map +1 -0
- package/types/sync/filters.d.ts +101 -0
- package/types/sync/filters.d.ts.map +1 -0
- package/types/sync/index.d.ts +181 -0
- package/types/sync/index.d.ts.map +1 -0
- package/types/sync/merge.d.ts +59 -0
- package/types/sync/merge.d.ts.map +1 -0
- package/types/sync/mutationEngine.d.ts +117 -0
- package/types/sync/mutationEngine.d.ts.map +1 -0
- package/types/sync/mutationJournal.d.ts +60 -0
- package/types/sync/mutationJournal.d.ts.map +1 -0
- package/types/sync/normalizedCache.d.ts +59 -0
- package/types/sync/normalizedCache.d.ts.map +1 -0
- package/types/sync/persistence.d.ts +185 -0
- package/types/sync/persistence.d.ts.map +1 -0
- package/types/sync/realtime.d.ts +121 -0
- package/types/sync/realtime.d.ts.map +1 -0
- package/types/sync/rehydration.d.ts +109 -0
- package/types/sync/rehydration.d.ts.map +1 -0
- package/types/sync/storage.d.ts +65 -0
- package/types/sync/storage.d.ts.map +1 -0
- package/types/sync/subscriptionManager.d.ts +161 -0
- package/types/sync/subscriptionManager.d.ts.map +1 -0
- package/types/sync/types.d.ts +435 -0
- package/types/sync/types.d.ts.map +1 -0
- package/types/sync/virtualPageManager.d.ts +190 -0
- package/types/sync/virtualPageManager.d.ts.map +1 -0
- package/types/useLiveQuery.d.ts +16 -0
- package/types/useLiveQuery.d.ts.map +1 -0
- package/types/util.d.ts +24 -0
- package/types/util.d.ts.map +1 -0
- package/dist/cjs/auth.spec.cjs +0 -322
- package/dist/cjs/auth.spec.native.js +0 -329
- package/dist/cjs/auth.spec.native.js.map +0 -1
- package/dist/cjs/call.spec.cjs +0 -427
- package/dist/cjs/call.spec.native.js +0 -430
- package/dist/cjs/call.spec.native.js.map +0 -1
- package/dist/cjs/collection.spec.cjs +0 -186
- package/dist/cjs/collection.spec.native.js +0 -216
- package/dist/cjs/collection.spec.native.js.map +0 -1
- package/dist/cjs/common/types.spec.cjs +0 -266
- package/dist/cjs/common/types.spec.native.js +0 -271
- package/dist/cjs/common/types.spec.native.js.map +0 -1
- package/dist/cjs/core/http.spec.cjs +0 -1259
- package/dist/cjs/core/http.spec.native.js +0 -1401
- package/dist/cjs/core/http.spec.native.js.map +0 -1
- package/dist/cjs/core/wire.spec.cjs +0 -478
- package/dist/cjs/core/wire.spec.native.js +0 -482
- package/dist/cjs/core/wire.spec.native.js.map +0 -1
- package/dist/cjs/db.spec.cjs +0 -862
- package/dist/cjs/db.spec.native.js +0 -865
- package/dist/cjs/db.spec.native.js.map +0 -1
- package/dist/cjs/doctype.spec.cjs +0 -460
- package/dist/cjs/doctype.spec.native.js +0 -538
- package/dist/cjs/doctype.spec.native.js.map +0 -1
- package/dist/cjs/file.spec.cjs +0 -315
- package/dist/cjs/file.spec.native.js +0 -342
- package/dist/cjs/file.spec.native.js.map +0 -1
- package/dist/cjs/frappeApp.spec.cjs +0 -306
- package/dist/cjs/frappeApp.spec.native.js +0 -308
- package/dist/cjs/frappeApp.spec.native.js.map +0 -1
- package/dist/cjs/frappeReact.spec.cjs +0 -531
- package/dist/cjs/frappeReact.spec.native.js +0 -670
- package/dist/cjs/frappeReact.spec.native.js.map +0 -1
- package/dist/cjs/optimistic.spec.cjs +0 -11
- package/dist/cjs/optimistic.spec.native.js +0 -19
- package/dist/cjs/optimistic.spec.native.js.map +0 -1
- package/dist/cjs/pacer.spec.cjs +0 -470
- package/dist/cjs/pacer.spec.native.js +0 -537
- package/dist/cjs/pacer.spec.native.js.map +0 -1
- package/dist/cjs/realtime.spec.cjs +0 -326
- package/dist/cjs/realtime.spec.native.js +0 -392
- package/dist/cjs/realtime.spec.native.js.map +0 -1
- package/dist/cjs/sync/backfill.spec.cjs +0 -586
- package/dist/cjs/sync/backfill.spec.native.js +0 -712
- package/dist/cjs/sync/backfill.spec.native.js.map +0 -1
- package/dist/cjs/sync/debug.spec.cjs +0 -125
- package/dist/cjs/sync/debug.spec.native.js +0 -133
- package/dist/cjs/sync/debug.spec.native.js.map +0 -1
- package/dist/cjs/sync/filters.spec.cjs +0 -168
- package/dist/cjs/sync/filters.spec.native.js +0 -173
- package/dist/cjs/sync/filters.spec.native.js.map +0 -1
- package/dist/cjs/sync/merge.spec.cjs +0 -908
- package/dist/cjs/sync/merge.spec.native.js +0 -937
- package/dist/cjs/sync/merge.spec.native.js.map +0 -1
- package/dist/cjs/sync/multiOrderBy.spec.cjs +0 -165
- package/dist/cjs/sync/multiOrderBy.spec.native.js +0 -229
- package/dist/cjs/sync/multiOrderBy.spec.native.js.map +0 -1
- package/dist/cjs/sync/mutationEngine.spec.cjs +0 -1158
- package/dist/cjs/sync/mutationEngine.spec.native.js +0 -1173
- package/dist/cjs/sync/mutationEngine.spec.native.js.map +0 -1
- package/dist/cjs/sync/mutationJournal.spec.cjs +0 -330
- package/dist/cjs/sync/mutationJournal.spec.native.js +0 -333
- package/dist/cjs/sync/mutationJournal.spec.native.js.map +0 -1
- package/dist/cjs/sync/mutations.spec.cjs +0 -327
- package/dist/cjs/sync/mutations.spec.native.js +0 -330
- package/dist/cjs/sync/mutations.spec.native.js.map +0 -1
- package/dist/cjs/sync/normalizedCache.spec.cjs +0 -302
- package/dist/cjs/sync/normalizedCache.spec.native.js +0 -311
- package/dist/cjs/sync/normalizedCache.spec.native.js.map +0 -1
- package/dist/cjs/sync/persistence.spec.cjs +0 -562
- package/dist/cjs/sync/persistence.spec.native.js +0 -572
- package/dist/cjs/sync/persistence.spec.native.js.map +0 -1
- package/dist/cjs/sync/realtime.spec.cjs +0 -499
- package/dist/cjs/sync/realtime.spec.native.js +0 -512
- package/dist/cjs/sync/realtime.spec.native.js.map +0 -1
- package/dist/cjs/sync/rehydration.spec.cjs +0 -731
- package/dist/cjs/sync/rehydration.spec.native.js +0 -736
- package/dist/cjs/sync/rehydration.spec.native.js.map +0 -1
- package/dist/cjs/sync/storage.spec.cjs +0 -446
- package/dist/cjs/sync/storage.spec.native.js +0 -470
- package/dist/cjs/sync/storage.spec.native.js.map +0 -1
- package/dist/cjs/sync/subscriptionManager.spec.cjs +0 -1102
- package/dist/cjs/sync/subscriptionManager.spec.native.js +0 -1136
- package/dist/cjs/sync/subscriptionManager.spec.native.js.map +0 -1
- package/dist/cjs/sync/subscriptions.spec.cjs +0 -937
- package/dist/cjs/sync/subscriptions.spec.native.js +0 -969
- package/dist/cjs/sync/subscriptions.spec.native.js.map +0 -1
- package/dist/cjs/sync/syncModule.spec.cjs +0 -206
- package/dist/cjs/sync/syncModule.spec.native.js +0 -222
- package/dist/cjs/sync/syncModule.spec.native.js.map +0 -1
- package/dist/cjs/sync/types.spec.cjs +0 -246
- package/dist/cjs/sync/types.spec.native.js +0 -256
- package/dist/cjs/sync/types.spec.native.js.map +0 -1
- package/dist/cjs/sync/virtualPageManager.spec.cjs +0 -801
- package/dist/cjs/sync/virtualPageManager.spec.native.js +0 -873
- package/dist/cjs/sync/virtualPageManager.spec.native.js.map +0 -1
- package/dist/cjs/util.spec.cjs +0 -43
- package/dist/cjs/util.spec.native.js +0 -48
- package/dist/cjs/util.spec.native.js.map +0 -1
- package/dist/esm/auth.spec.mjs +0 -323
- package/dist/esm/auth.spec.mjs.map +0 -1
- package/dist/esm/auth.spec.native.js +0 -327
- package/dist/esm/auth.spec.native.js.map +0 -1
- package/dist/esm/call.spec.mjs +0 -428
- package/dist/esm/call.spec.mjs.map +0 -1
- package/dist/esm/call.spec.native.js +0 -428
- package/dist/esm/call.spec.native.js.map +0 -1
- package/dist/esm/collection.spec.mjs +0 -187
- package/dist/esm/collection.spec.mjs.map +0 -1
- package/dist/esm/collection.spec.native.js +0 -214
- package/dist/esm/collection.spec.native.js.map +0 -1
- package/dist/esm/common/types.spec.mjs +0 -267
- package/dist/esm/common/types.spec.mjs.map +0 -1
- package/dist/esm/common/types.spec.native.js +0 -269
- package/dist/esm/common/types.spec.native.js.map +0 -1
- package/dist/esm/core/http.spec.mjs +0 -1260
- package/dist/esm/core/http.spec.mjs.map +0 -1
- package/dist/esm/core/http.spec.native.js +0 -1399
- package/dist/esm/core/http.spec.native.js.map +0 -1
- package/dist/esm/core/wire.spec.mjs +0 -479
- package/dist/esm/core/wire.spec.mjs.map +0 -1
- package/dist/esm/core/wire.spec.native.js +0 -480
- package/dist/esm/core/wire.spec.native.js.map +0 -1
- package/dist/esm/db.spec.mjs +0 -863
- package/dist/esm/db.spec.mjs.map +0 -1
- package/dist/esm/db.spec.native.js +0 -863
- package/dist/esm/db.spec.native.js.map +0 -1
- package/dist/esm/doctype.spec.mjs +0 -461
- package/dist/esm/doctype.spec.mjs.map +0 -1
- package/dist/esm/doctype.spec.native.js +0 -536
- package/dist/esm/doctype.spec.native.js.map +0 -1
- package/dist/esm/file.spec.mjs +0 -316
- package/dist/esm/file.spec.mjs.map +0 -1
- package/dist/esm/file.spec.native.js +0 -340
- package/dist/esm/file.spec.native.js.map +0 -1
- package/dist/esm/frappeApp.spec.mjs +0 -307
- package/dist/esm/frappeApp.spec.mjs.map +0 -1
- package/dist/esm/frappeApp.spec.native.js +0 -306
- package/dist/esm/frappeApp.spec.native.js.map +0 -1
- package/dist/esm/frappeReact.spec.mjs +0 -532
- package/dist/esm/frappeReact.spec.mjs.map +0 -1
- package/dist/esm/frappeReact.spec.native.js +0 -668
- package/dist/esm/frappeReact.spec.native.js.map +0 -1
- package/dist/esm/optimistic.spec.mjs +0 -12
- package/dist/esm/optimistic.spec.mjs.map +0 -1
- package/dist/esm/optimistic.spec.native.js +0 -17
- package/dist/esm/optimistic.spec.native.js.map +0 -1
- package/dist/esm/pacer.spec.mjs +0 -447
- package/dist/esm/pacer.spec.mjs.map +0 -1
- package/dist/esm/pacer.spec.native.js +0 -511
- package/dist/esm/pacer.spec.native.js.map +0 -1
- package/dist/esm/realtime.spec.mjs +0 -327
- package/dist/esm/realtime.spec.mjs.map +0 -1
- package/dist/esm/realtime.spec.native.js +0 -390
- package/dist/esm/realtime.spec.native.js.map +0 -1
- package/dist/esm/sync/backfill.spec.mjs +0 -563
- package/dist/esm/sync/backfill.spec.mjs.map +0 -1
- package/dist/esm/sync/backfill.spec.native.js +0 -686
- package/dist/esm/sync/backfill.spec.native.js.map +0 -1
- package/dist/esm/sync/debug.spec.mjs +0 -102
- package/dist/esm/sync/debug.spec.mjs.map +0 -1
- package/dist/esm/sync/debug.spec.native.js +0 -107
- package/dist/esm/sync/debug.spec.native.js.map +0 -1
- package/dist/esm/sync/filters.spec.mjs +0 -169
- package/dist/esm/sync/filters.spec.mjs.map +0 -1
- package/dist/esm/sync/filters.spec.native.js +0 -171
- package/dist/esm/sync/filters.spec.native.js.map +0 -1
- package/dist/esm/sync/merge.spec.mjs +0 -909
- package/dist/esm/sync/merge.spec.mjs.map +0 -1
- package/dist/esm/sync/merge.spec.native.js +0 -935
- package/dist/esm/sync/merge.spec.native.js.map +0 -1
- package/dist/esm/sync/multiOrderBy.spec.mjs +0 -166
- package/dist/esm/sync/multiOrderBy.spec.mjs.map +0 -1
- package/dist/esm/sync/multiOrderBy.spec.native.js +0 -227
- package/dist/esm/sync/multiOrderBy.spec.native.js.map +0 -1
- package/dist/esm/sync/mutationEngine.spec.mjs +0 -1159
- package/dist/esm/sync/mutationEngine.spec.mjs.map +0 -1
- package/dist/esm/sync/mutationEngine.spec.native.js +0 -1171
- package/dist/esm/sync/mutationEngine.spec.native.js.map +0 -1
- package/dist/esm/sync/mutationJournal.spec.mjs +0 -331
- package/dist/esm/sync/mutationJournal.spec.mjs.map +0 -1
- package/dist/esm/sync/mutationJournal.spec.native.js +0 -331
- package/dist/esm/sync/mutationJournal.spec.native.js.map +0 -1
- package/dist/esm/sync/mutations.spec.mjs +0 -328
- package/dist/esm/sync/mutations.spec.mjs.map +0 -1
- package/dist/esm/sync/mutations.spec.native.js +0 -328
- package/dist/esm/sync/mutations.spec.native.js.map +0 -1
- package/dist/esm/sync/normalizedCache.spec.mjs +0 -303
- package/dist/esm/sync/normalizedCache.spec.mjs.map +0 -1
- package/dist/esm/sync/normalizedCache.spec.native.js +0 -309
- package/dist/esm/sync/normalizedCache.spec.native.js.map +0 -1
- package/dist/esm/sync/persistence.spec.mjs +0 -563
- package/dist/esm/sync/persistence.spec.mjs.map +0 -1
- package/dist/esm/sync/persistence.spec.native.js +0 -570
- package/dist/esm/sync/persistence.spec.native.js.map +0 -1
- package/dist/esm/sync/realtime.spec.mjs +0 -500
- package/dist/esm/sync/realtime.spec.mjs.map +0 -1
- package/dist/esm/sync/realtime.spec.native.js +0 -510
- package/dist/esm/sync/realtime.spec.native.js.map +0 -1
- package/dist/esm/sync/rehydration.spec.mjs +0 -732
- package/dist/esm/sync/rehydration.spec.mjs.map +0 -1
- package/dist/esm/sync/rehydration.spec.native.js +0 -734
- package/dist/esm/sync/rehydration.spec.native.js.map +0 -1
- package/dist/esm/sync/storage.spec.mjs +0 -423
- package/dist/esm/sync/storage.spec.mjs.map +0 -1
- package/dist/esm/sync/storage.spec.native.js +0 -444
- package/dist/esm/sync/storage.spec.native.js.map +0 -1
- package/dist/esm/sync/subscriptionManager.spec.mjs +0 -1079
- package/dist/esm/sync/subscriptionManager.spec.mjs.map +0 -1
- package/dist/esm/sync/subscriptionManager.spec.native.js +0 -1110
- package/dist/esm/sync/subscriptionManager.spec.native.js.map +0 -1
- package/dist/esm/sync/subscriptions.spec.mjs +0 -914
- package/dist/esm/sync/subscriptions.spec.mjs.map +0 -1
- package/dist/esm/sync/subscriptions.spec.native.js +0 -943
- package/dist/esm/sync/subscriptions.spec.native.js.map +0 -1
- package/dist/esm/sync/syncModule.spec.mjs +0 -207
- package/dist/esm/sync/syncModule.spec.mjs.map +0 -1
- package/dist/esm/sync/syncModule.spec.native.js +0 -220
- package/dist/esm/sync/syncModule.spec.native.js.map +0 -1
- package/dist/esm/sync/types.spec.mjs +0 -247
- package/dist/esm/sync/types.spec.mjs.map +0 -1
- package/dist/esm/sync/types.spec.native.js +0 -254
- package/dist/esm/sync/types.spec.native.js.map +0 -1
- package/dist/esm/sync/virtualPageManager.spec.mjs +0 -802
- package/dist/esm/sync/virtualPageManager.spec.mjs.map +0 -1
- package/dist/esm/sync/virtualPageManager.spec.native.js +0 -871
- package/dist/esm/sync/virtualPageManager.spec.native.js.map +0 -1
- package/dist/esm/util.spec.mjs +0 -20
- package/dist/esm/util.spec.mjs.map +0 -1
- package/dist/esm/util.spec.native.js +0 -22
- package/dist/esm/util.spec.native.js.map +0 -1
- package/dist/jsx/auth.spec.mjs +0 -323
- package/dist/jsx/auth.spec.mjs.map +0 -1
- package/dist/jsx/auth.spec.native.js +0 -329
- package/dist/jsx/auth.spec.native.js.map +0 -1
- package/dist/jsx/call.spec.mjs +0 -428
- package/dist/jsx/call.spec.mjs.map +0 -1
- package/dist/jsx/call.spec.native.js +0 -430
- package/dist/jsx/call.spec.native.js.map +0 -1
- package/dist/jsx/collection.spec.mjs +0 -187
- package/dist/jsx/collection.spec.mjs.map +0 -1
- package/dist/jsx/collection.spec.native.js +0 -216
- package/dist/jsx/collection.spec.native.js.map +0 -1
- package/dist/jsx/common/types.spec.mjs +0 -267
- package/dist/jsx/common/types.spec.mjs.map +0 -1
- package/dist/jsx/common/types.spec.native.js +0 -271
- package/dist/jsx/common/types.spec.native.js.map +0 -1
- package/dist/jsx/core/http.spec.mjs +0 -1260
- package/dist/jsx/core/http.spec.mjs.map +0 -1
- package/dist/jsx/core/http.spec.native.js +0 -1401
- package/dist/jsx/core/http.spec.native.js.map +0 -1
- package/dist/jsx/core/wire.spec.mjs +0 -479
- package/dist/jsx/core/wire.spec.mjs.map +0 -1
- package/dist/jsx/core/wire.spec.native.js +0 -482
- package/dist/jsx/core/wire.spec.native.js.map +0 -1
- package/dist/jsx/db.spec.mjs +0 -863
- package/dist/jsx/db.spec.mjs.map +0 -1
- package/dist/jsx/db.spec.native.js +0 -865
- package/dist/jsx/db.spec.native.js.map +0 -1
- package/dist/jsx/doctype.spec.mjs +0 -461
- package/dist/jsx/doctype.spec.mjs.map +0 -1
- package/dist/jsx/doctype.spec.native.js +0 -538
- package/dist/jsx/doctype.spec.native.js.map +0 -1
- package/dist/jsx/file.spec.mjs +0 -316
- package/dist/jsx/file.spec.mjs.map +0 -1
- package/dist/jsx/file.spec.native.js +0 -342
- package/dist/jsx/file.spec.native.js.map +0 -1
- package/dist/jsx/frappeApp.spec.mjs +0 -307
- package/dist/jsx/frappeApp.spec.mjs.map +0 -1
- package/dist/jsx/frappeApp.spec.native.js +0 -308
- package/dist/jsx/frappeApp.spec.native.js.map +0 -1
- package/dist/jsx/frappeReact.spec.mjs +0 -532
- package/dist/jsx/frappeReact.spec.mjs.map +0 -1
- package/dist/jsx/frappeReact.spec.native.js +0 -670
- package/dist/jsx/frappeReact.spec.native.js.map +0 -1
- package/dist/jsx/optimistic.spec.mjs +0 -12
- package/dist/jsx/optimistic.spec.mjs.map +0 -1
- package/dist/jsx/optimistic.spec.native.js +0 -19
- package/dist/jsx/optimistic.spec.native.js.map +0 -1
- package/dist/jsx/pacer.spec.mjs +0 -447
- package/dist/jsx/pacer.spec.mjs.map +0 -1
- package/dist/jsx/pacer.spec.native.js +0 -537
- package/dist/jsx/pacer.spec.native.js.map +0 -1
- package/dist/jsx/realtime.spec.mjs +0 -327
- package/dist/jsx/realtime.spec.mjs.map +0 -1
- package/dist/jsx/realtime.spec.native.js +0 -392
- package/dist/jsx/realtime.spec.native.js.map +0 -1
- package/dist/jsx/sync/backfill.spec.mjs +0 -563
- package/dist/jsx/sync/backfill.spec.mjs.map +0 -1
- package/dist/jsx/sync/backfill.spec.native.js +0 -712
- package/dist/jsx/sync/backfill.spec.native.js.map +0 -1
- package/dist/jsx/sync/debug.spec.mjs +0 -102
- package/dist/jsx/sync/debug.spec.mjs.map +0 -1
- package/dist/jsx/sync/debug.spec.native.js +0 -133
- package/dist/jsx/sync/debug.spec.native.js.map +0 -1
- package/dist/jsx/sync/filters.spec.mjs +0 -169
- package/dist/jsx/sync/filters.spec.mjs.map +0 -1
- package/dist/jsx/sync/filters.spec.native.js +0 -173
- package/dist/jsx/sync/filters.spec.native.js.map +0 -1
- package/dist/jsx/sync/merge.spec.mjs +0 -909
- package/dist/jsx/sync/merge.spec.mjs.map +0 -1
- package/dist/jsx/sync/merge.spec.native.js +0 -937
- package/dist/jsx/sync/merge.spec.native.js.map +0 -1
- package/dist/jsx/sync/multiOrderBy.spec.mjs +0 -166
- package/dist/jsx/sync/multiOrderBy.spec.mjs.map +0 -1
- package/dist/jsx/sync/multiOrderBy.spec.native.js +0 -229
- package/dist/jsx/sync/multiOrderBy.spec.native.js.map +0 -1
- package/dist/jsx/sync/mutationEngine.spec.mjs +0 -1159
- package/dist/jsx/sync/mutationEngine.spec.mjs.map +0 -1
- package/dist/jsx/sync/mutationEngine.spec.native.js +0 -1173
- package/dist/jsx/sync/mutationEngine.spec.native.js.map +0 -1
- package/dist/jsx/sync/mutationJournal.spec.mjs +0 -331
- package/dist/jsx/sync/mutationJournal.spec.mjs.map +0 -1
- package/dist/jsx/sync/mutationJournal.spec.native.js +0 -333
- package/dist/jsx/sync/mutationJournal.spec.native.js.map +0 -1
- package/dist/jsx/sync/mutations.spec.mjs +0 -328
- package/dist/jsx/sync/mutations.spec.mjs.map +0 -1
- package/dist/jsx/sync/mutations.spec.native.js +0 -330
- package/dist/jsx/sync/mutations.spec.native.js.map +0 -1
- package/dist/jsx/sync/normalizedCache.spec.mjs +0 -303
- package/dist/jsx/sync/normalizedCache.spec.mjs.map +0 -1
- package/dist/jsx/sync/normalizedCache.spec.native.js +0 -311
- package/dist/jsx/sync/normalizedCache.spec.native.js.map +0 -1
- package/dist/jsx/sync/persistence.spec.mjs +0 -563
- package/dist/jsx/sync/persistence.spec.mjs.map +0 -1
- package/dist/jsx/sync/persistence.spec.native.js +0 -572
- package/dist/jsx/sync/persistence.spec.native.js.map +0 -1
- package/dist/jsx/sync/realtime.spec.mjs +0 -500
- package/dist/jsx/sync/realtime.spec.mjs.map +0 -1
- package/dist/jsx/sync/realtime.spec.native.js +0 -512
- package/dist/jsx/sync/realtime.spec.native.js.map +0 -1
- package/dist/jsx/sync/rehydration.spec.mjs +0 -732
- package/dist/jsx/sync/rehydration.spec.mjs.map +0 -1
- package/dist/jsx/sync/rehydration.spec.native.js +0 -736
- package/dist/jsx/sync/rehydration.spec.native.js.map +0 -1
- package/dist/jsx/sync/storage.spec.mjs +0 -423
- package/dist/jsx/sync/storage.spec.mjs.map +0 -1
- package/dist/jsx/sync/storage.spec.native.js +0 -470
- package/dist/jsx/sync/storage.spec.native.js.map +0 -1
- package/dist/jsx/sync/subscriptionManager.spec.mjs +0 -1079
- package/dist/jsx/sync/subscriptionManager.spec.mjs.map +0 -1
- package/dist/jsx/sync/subscriptionManager.spec.native.js +0 -1136
- package/dist/jsx/sync/subscriptionManager.spec.native.js.map +0 -1
- package/dist/jsx/sync/subscriptions.spec.mjs +0 -914
- package/dist/jsx/sync/subscriptions.spec.mjs.map +0 -1
- package/dist/jsx/sync/subscriptions.spec.native.js +0 -969
- package/dist/jsx/sync/subscriptions.spec.native.js.map +0 -1
- package/dist/jsx/sync/syncModule.spec.mjs +0 -207
- package/dist/jsx/sync/syncModule.spec.mjs.map +0 -1
- package/dist/jsx/sync/syncModule.spec.native.js +0 -222
- package/dist/jsx/sync/syncModule.spec.native.js.map +0 -1
- package/dist/jsx/sync/types.spec.mjs +0 -247
- package/dist/jsx/sync/types.spec.mjs.map +0 -1
- package/dist/jsx/sync/types.spec.native.js +0 -256
- package/dist/jsx/sync/types.spec.native.js.map +0 -1
- package/dist/jsx/sync/virtualPageManager.spec.mjs +0 -802
- package/dist/jsx/sync/virtualPageManager.spec.mjs.map +0 -1
- package/dist/jsx/sync/virtualPageManager.spec.native.js +0 -873
- package/dist/jsx/sync/virtualPageManager.spec.native.js.map +0 -1
- package/dist/jsx/util.spec.mjs +0 -20
- package/dist/jsx/util.spec.mjs.map +0 -1
- package/dist/jsx/util.spec.native.js +0 -48
- package/dist/jsx/util.spec.native.js.map +0 -1
package/dist/jsx/collection.mjs
CHANGED
|
@@ -6,7 +6,8 @@ function frappeCollectionOptions(doctype, config) {
|
|
|
6
6
|
fields,
|
|
7
7
|
filters,
|
|
8
8
|
orderBy,
|
|
9
|
-
limit
|
|
9
|
+
limit,
|
|
10
|
+
onSyncError
|
|
10
11
|
} = config;
|
|
11
12
|
const syncFn = params => {
|
|
12
13
|
const {
|
|
@@ -18,6 +19,7 @@ function frappeCollectionOptions(doctype, config) {
|
|
|
18
19
|
let subscriptionId;
|
|
19
20
|
let storeUnsubscribe;
|
|
20
21
|
let lastKnownNames = /* @__PURE__ */new Set();
|
|
22
|
+
let cancelled = false;
|
|
21
23
|
async function initSync() {
|
|
22
24
|
try {
|
|
23
25
|
const query = {
|
|
@@ -28,6 +30,10 @@ function frappeCollectionOptions(doctype, config) {
|
|
|
28
30
|
limit
|
|
29
31
|
};
|
|
30
32
|
const result = await syncModule.subscribe(query);
|
|
33
|
+
if (cancelled) {
|
|
34
|
+
syncModule.unsubscribe(result.subscriptionId);
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
31
37
|
subscriptionId = result.subscriptionId;
|
|
32
38
|
const initialDocs = syncModule.getDocsForSubscription(subscriptionId);
|
|
33
39
|
if (initialDocs.length > 0) {
|
|
@@ -74,13 +80,16 @@ function frappeCollectionOptions(doctype, config) {
|
|
|
74
80
|
lastKnownNames = currentNames;
|
|
75
81
|
});
|
|
76
82
|
} catch (error) {
|
|
83
|
+
if (cancelled) return;
|
|
77
84
|
console.error(`[frappe-collection] Initial sync failed for ${doctype}:`, error);
|
|
85
|
+
onSyncError?.(error);
|
|
78
86
|
} finally {
|
|
79
|
-
markReady();
|
|
87
|
+
if (!cancelled) markReady();
|
|
80
88
|
}
|
|
81
89
|
}
|
|
82
90
|
initSync();
|
|
83
91
|
return () => {
|
|
92
|
+
cancelled = true;
|
|
84
93
|
if (storeUnsubscribe) {
|
|
85
94
|
storeUnsubscribe();
|
|
86
95
|
storeUnsubscribe = void 0;
|
|
@@ -165,6 +174,7 @@ function fixtureCollectionOptions(doctype, config) {
|
|
|
165
174
|
commit,
|
|
166
175
|
markReady
|
|
167
176
|
} = params;
|
|
177
|
+
let cancelled = false;
|
|
168
178
|
async function initSync() {
|
|
169
179
|
try {
|
|
170
180
|
const orderByForFixture = orderBy && !Array.isArray(orderBy) ? {
|
|
@@ -181,6 +191,7 @@ function fixtureCollectionOptions(doctype, config) {
|
|
|
181
191
|
limitStart,
|
|
182
192
|
limit
|
|
183
193
|
});
|
|
194
|
+
if (cancelled) return;
|
|
184
195
|
if (docs.length > 0) {
|
|
185
196
|
begin();
|
|
186
197
|
for (const doc of docs) {
|
|
@@ -196,13 +207,16 @@ function fixtureCollectionOptions(doctype, config) {
|
|
|
196
207
|
commit();
|
|
197
208
|
}
|
|
198
209
|
} catch (error) {
|
|
210
|
+
if (cancelled) return;
|
|
199
211
|
console.error(`[frappe-collection] Fixture sync failed for ${doctype}:`, error);
|
|
200
212
|
} finally {
|
|
201
|
-
markReady();
|
|
213
|
+
if (!cancelled) markReady();
|
|
202
214
|
}
|
|
203
215
|
}
|
|
204
216
|
initSync();
|
|
205
|
-
return () => {
|
|
217
|
+
return () => {
|
|
218
|
+
cancelled = true;
|
|
219
|
+
};
|
|
206
220
|
};
|
|
207
221
|
return {
|
|
208
222
|
id: config.id ?? doctype,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createCollection","Operation","frappeCollectionOptions","doctype","config","sync","syncModule","fields","filters","orderBy","limit","syncFn","params","begin","write","commit","markReady","subscriptionId","storeUnsubscribe","lastKnownNames","Set","initSync","query","result","subscribe","initialDocs","getDocsForSubscription","length","doc","type","value","add","name","subscribeStore","currentDocs","currentNames","map","d","has","error","console","
|
|
1
|
+
{"version":3,"names":["createCollection","Operation","frappeCollectionOptions","doctype","config","sync","syncModule","fields","filters","orderBy","limit","onSyncError","syncFn","params","begin","write","commit","markReady","subscriptionId","storeUnsubscribe","lastKnownNames","Set","cancelled","initSync","query","result","subscribe","unsubscribe","initialDocs","getDocsForSubscription","length","doc","type","value","add","name","subscribeStore","currentDocs","currentNames","map","d","has","error","console","id","getKey","onInsert","transaction","mutation","mutations","modified","mutate","mutationId","crypto","randomUUID","Math","random","toString","substring","operation","Create","onUpdate","changes","key","Update","onDelete","Delete","createFrappeCollection","fixtureCollectionOptions","fixtures","limitStart","orderByForFixture","Array","isArray","field","order","String","ob","docs","getList","fullDoc","createDoc","updateDoc","deleteDoc","createFixtureCollection"],"sources":["../../src/collection.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,gBAAA,QAAwB;AAIjC,SAASC,SAAA,QAAiB;AAoDnB,SAASC,wBACdC,OAAA,EACAC,MAAA,EACgC;EAChC,MAAM;IAAEC,IAAA,EAAMC,UAAA;IAAYC,MAAA;IAAQC,OAAA;IAASC,OAAA;IAASC,KAAA;IAAOC;EAAY,IAAIP,MAAA;EAE3E,MAAMQ,MAAA,GAA4CC,MAAA,IAAW;IAC3D,MAAM;MAAEC,KAAA;MAAOC,KAAA;MAAOC,MAAA;MAAQC;IAAU,IAAIJ,MAAA;IAE5C,IAAIK,cAAA;IACJ,IAAIC,gBAAA;IACJ,IAAIC,cAAA,GAAiB,mBAAIC,GAAA,CAAY;IAMrC,IAAIC,SAAA,GAAY;IAEhB,eAAeC,SAAA,EAAW;MACxB,IAAI;QAEF,MAAMC,KAAA,GAA2B;UAC/BrB,OAAA;UACAI,MAAA;UACAC,OAAA;UACAC,OAAA;UACAC;QACF;QAEA,MAAMe,MAAA,GAAS,MAAMnB,UAAA,CAAWoB,SAAA,CAAgBF,KAAK;QACrD,IAAIF,SAAA,EAAW;UACbhB,UAAA,CAAWqB,WAAA,CAAYF,MAAA,CAAOP,cAAc;UAC5C;QACF;QACAA,cAAA,GAAiBO,MAAA,CAAOP,cAAA;QAGxB,MAAMU,WAAA,GAActB,UAAA,CAAWuB,sBAAA,CAA6BX,cAAc;QAC1E,IAAIU,WAAA,CAAYE,MAAA,GAAS,GAAG;UAC1BhB,KAAA,CAAM;UACN,WAAWiB,GAAA,IAAOH,WAAA,EAAa;YAC7Bb,KAAA,CAAM;cAAEiB,IAAA,EAAM;cAAUC,KAAA,EAAOF;YAAY,CAAC;YAC5CX,cAAA,CAAec,GAAA,CAAIH,GAAA,CAAII,IAAI;UAC7B;UACAnB,MAAA,CAAO;QACT;QAGAG,gBAAA,GAAmBb,UAAA,CAAW8B,cAAA,CAAe,MAAM;UACjD,IAAI,CAAClB,cAAA,EAAgB;UAErB,MAAMmB,WAAA,GAAc/B,UAAA,CAAWuB,sBAAA,CAA6BX,cAAc;UAC1E,MAAMoB,YAAA,GAAe,IAAIjB,GAAA,CAAIgB,WAAA,CAAYE,GAAA,CAAKC,CAAA,IAAMA,CAAA,CAAEL,IAAI,CAAC;UAE3DrB,KAAA,CAAM;UAGN,WAAWiB,GAAA,IAAOM,WAAA,EAAa;YAC7B,IAAIjB,cAAA,CAAeqB,GAAA,CAAIV,GAAA,CAAII,IAAI,GAAG;cAChCpB,KAAA,CAAM;gBAAEiB,IAAA,EAAM;gBAAUC,KAAA,EAAOF;cAAY,CAAC;YAC9C,OAAO;cACLhB,KAAA,CAAM;gBAAEiB,IAAA,EAAM;gBAAUC,KAAA,EAAOF;cAAY,CAAC;YAC9C;UACF;UAGA,WAAWI,IAAA,IAAQf,cAAA,EAAgB;YACjC,IAAI,CAACkB,YAAA,CAAaG,GAAA,CAAIN,IAAI,GAAG;cAC3BpB,KAAA,CAAM;gBACJiB,IAAA,EAAM;gBACNC,KAAA,EAAO;kBAAEE,IAAA;kBAAMhC;gBAAQ;cACzB,CAAC;YACH;UACF;UAEAa,MAAA,CAAO;UACPI,cAAA,GAAiBkB,YAAA;QACnB,CAAC;MACH,SAASI,KAAA,EAAO;QACd,IAAIpB,SAAA,EAAW;QACfqB,OAAA,CAAQD,KAAA,CAAM,+CAA+CvC,OAAO,KAAKuC,KAAK;QAC9E/B,WAAA,GAAc+B,KAAK;MACrB,UAAE;QACA,IAAI,CAACpB,SAAA,EAAWL,SAAA,CAAU;MAC5B;IACF;IAEAM,QAAA,CAAS;IAGT,OAAO,MAAM;MACXD,SAAA,GAAY;MACZ,IAAIH,gBAAA,EAAkB;QACpBA,gBAAA,CAAiB;QACjBA,gBAAA,GAAmB;MACrB;MACA,IAAID,cAAA,EAAgB;QAClBZ,UAAA,CAAWqB,WAAA,CAAYT,cAAc;QACrCA,cAAA,GAAiB;MACnB;IACF;EACF;EAEA,OAAO;IACL0B,EAAA,EAAIxC,MAAA,CAAOwC,EAAA,IAAMzC,OAAA;IACjB0C,MAAA,EAASd,GAAA,IAAcA,GAAA,CAAII,IAAA;IAC3B9B,IAAA,EAAM;MAAEA,IAAA,EAAMO;IAAO;IAErBkC,QAAA,EAAU,MAAAA,CAAO;MAAEC;IAAY,MAAM;MACnC,WAAWC,QAAA,IAAYD,WAAA,CAAYE,SAAA,EAAW;QAC5C,MAAMlB,GAAA,GAAMiB,QAAA,CAASE,QAAA;QACrB,MAAM5C,UAAA,CAAW6C,MAAA,CAAO;UACtBC,UAAA,EAAYC,MAAA,CAAOC,UAAA,GAAa,KAAKC,IAAA,CAAKC,MAAA,CAAO,EAAEC,QAAA,CAAS,EAAE,EAAEC,SAAA,CAAU,CAAC;UAC3EC,SAAA,EAAW1D,SAAA,CAAU2D,MAAA;UACrB7B,GAAA,EAAK;YAAE,GAAGA,GAAA;YAAK5B;UAAQ;QACzB,CAAC;MACH;IACF;IAEA0D,QAAA,EAAU,MAAAA,CAAO;MAAEd;IAAY,MAAM;MACnC,WAAWC,QAAA,IAAYD,WAAA,CAAYE,SAAA,EAAW;QAC5C,MAAMlB,GAAA,GAAMiB,QAAA,CAASc,OAAA,IAAWd,QAAA,CAASE,QAAA;QACzC,MAAMf,IAAA,GAAOa,QAAA,CAASe,GAAA;QACtB,MAAMzD,UAAA,CAAW6C,MAAA,CAAO;UACtBC,UAAA,EAAYC,MAAA,CAAOC,UAAA,GAAa,KAAKC,IAAA,CAAKC,MAAA,CAAO,EAAEC,QAAA,CAAS,EAAE,EAAEC,SAAA,CAAU,CAAC;UAC3EC,SAAA,EAAW1D,SAAA,CAAU+D,MAAA;UACrBjC,GAAA,EAAK;YAAE,GAAGA,GAAA;YAAK5B,OAAA;YAASgC;UAAK;QAC/B,CAAC;MACH;IACF;IAEA8B,QAAA,EAAU,MAAAA,CAAO;MAAElB;IAAY,MAAM;MACnC,WAAWC,QAAA,IAAYD,WAAA,CAAYE,SAAA,EAAW;QAC5C,MAAMd,IAAA,GAAOa,QAAA,CAASe,GAAA;QACtB,MAAMzD,UAAA,CAAW6C,MAAA,CAAO;UACtBC,UAAA,EAAYC,MAAA,CAAOC,UAAA,GAAa,KAAKC,IAAA,CAAKC,MAAA,CAAO,EAAEC,QAAA,CAAS,EAAE,EAAEC,SAAA,CAAU,CAAC;UAC3EC,SAAA,EAAW1D,SAAA,CAAUiE,MAAA;UACrBnC,GAAA,EAAK;YAAE5B,OAAA;YAASgC;UAAK;QACvB,CAAC;MACH;IACF;EACF;AACF;AA4BO,SAASgC,uBACdhE,OAAA,EACAC,MAAA,EACA;EACA,OAAOJ,gBAAA,CAA+BE,uBAAA,CAA8BC,OAAA,EAASC,MAAM,CAAC;AACtF;AA6BO,SAASgE,yBACdjE,OAAA,EACAC,MAAA,EACgC;EAChC,MAAM;IAAEiE,QAAA;IAAU9D,MAAA;IAAQC,OAAA;IAASC,OAAA;IAASC,KAAA;IAAO4D;EAAW,IAAIlE,MAAA;EAElE,MAAMQ,MAAA,GAA4CC,MAAA,IAAW;IAC3D,MAAM;MAAEC,KAAA;MAAOC,KAAA;MAAOC,MAAA;MAAQC;IAAU,IAAIJ,MAAA;IAM5C,IAAIS,SAAA,GAAY;IAEhB,eAAeC,SAAA,EAAW;MACxB,IAAI;QACF,MAAMgD,iBAAA,GACJ9D,OAAA,IAAW,CAAC+D,KAAA,CAAMC,OAAA,CAAQhE,OAAO,IAC7B;UAAEiE,KAAA,EAAOjE,OAAA,CAAQiE,KAAA;UAAOC,KAAA,EAAOC,MAAA,CAAOnE,OAAA,CAAQkE,KAAK;QAAE,IACrDH,KAAA,CAAMC,OAAA,CAAQhE,OAAO,IACnBA,OAAA,CAAQ8B,GAAA,CAAKsC,EAAA,KAAQ;UAAEH,KAAA,EAAOG,EAAA,CAAGH,KAAA;UAAOC,KAAA,EAAOC,MAAA,CAAOC,EAAA,CAAGF,KAAK;QAAE,EAAE,IAClE;QAER,MAAMG,IAAA,GAAO,MAAMT,QAAA,CAASU,OAAA,CAAc5E,OAAA,EAAS;UACjDI,MAAA;UACAC,OAAA;UACAC,OAAA,EAAS8D,iBAAA;UACTD,UAAA;UACA5D;QACF,CAAC;QAED,IAAIY,SAAA,EAAW;QACf,IAAIwD,IAAA,CAAKhD,MAAA,GAAS,GAAG;UACnBhB,KAAA,CAAM;UACN,WAAWiB,GAAA,IAAO+C,IAAA,EAAM;YACtB,MAAME,OAAA,GAAU;cAAE,GAAGjD,GAAA;cAAK5B;YAAQ;YAClCY,KAAA,CAAM;cAAEiB,IAAA,EAAM;cAAUC,KAAA,EAAO+C;YAAQ,CAAC;UAC1C;UACAhE,MAAA,CAAO;QACT;MACF,SAAS0B,KAAA,EAAO;QACd,IAAIpB,SAAA,EAAW;QACfqB,OAAA,CAAQD,KAAA,CAAM,+CAA+CvC,OAAO,KAAKuC,KAAK;MAChF,UAAE;QACA,IAAI,CAACpB,SAAA,EAAWL,SAAA,CAAU;MAC5B;IACF;IAEAM,QAAA,CAAS;IAET,OAAO,MAAM;MACXD,SAAA,GAAY;IACd;EACF;EAEA,OAAO;IACLsB,EAAA,EAAIxC,MAAA,CAAOwC,EAAA,IAAMzC,OAAA;IACjB0C,MAAA,EAASd,GAAA,IAAcA,GAAA,CAAII,IAAA;IAC3B9B,IAAA,EAAM;MAAEA,IAAA,EAAMO;IAAO;IAErBkC,QAAA,EAAU,MAAAA,CAAO;MAAEC;IAAY,MAAM;MACnC,WAAWC,QAAA,IAAYD,WAAA,CAAYE,SAAA,EAAW;QAC5C,MAAMlB,GAAA,GAAMiB,QAAA,CAASE,QAAA;QACrB,MAAMmB,QAAA,CAASY,SAAA,CAAU9E,OAAA,EAAS;UAAE,GAAG4B,GAAA;UAAK5B;QAAQ,CAAC;MACvD;IACF;IAEA0D,QAAA,EAAU,MAAAA,CAAO;MAAEd;IAAY,MAAM;MACnC,WAAWC,QAAA,IAAYD,WAAA,CAAYE,SAAA,EAAW;QAC5C,MAAMlB,GAAA,GAAMiB,QAAA,CAASc,OAAA,IAAWd,QAAA,CAASE,QAAA;QACzC,MAAMf,IAAA,GAAOa,QAAA,CAASe,GAAA;QACtB,MAAMM,QAAA,CAASa,SAAA,CAAU/E,OAAA,EAASgC,IAAA,EAAM;UAAE,GAAGJ,GAAA;UAAK5B;QAAQ,CAAC;MAC7D;IACF;IAEA8D,QAAA,EAAU,MAAAA,CAAO;MAAElB;IAAY,MAAM;MACnC,WAAWC,QAAA,IAAYD,WAAA,CAAYE,SAAA,EAAW;QAC5C,MAAMd,IAAA,GAAOa,QAAA,CAASe,GAAA;QACtB,MAAMM,QAAA,CAASc,SAAA,CAAUhF,OAAA,EAASgC,IAAI;MACxC;IACF;EACF;AACF;AAMO,SAASiD,wBACdjF,OAAA,EACAC,MAAA,EACA;EACA,OAAOJ,gBAAA,CAA+BoE,wBAAA,CAA+BjE,OAAA,EAASC,MAAM,CAAC;AACvF","ignoreList":[]}
|
|
@@ -39,7 +39,8 @@ function frappeCollectionOptions(doctype, config) {
|
|
|
39
39
|
fields,
|
|
40
40
|
filters,
|
|
41
41
|
orderBy,
|
|
42
|
-
limit
|
|
42
|
+
limit,
|
|
43
|
+
onSyncError
|
|
43
44
|
} = config;
|
|
44
45
|
var syncFn = function syncFn2(params) {
|
|
45
46
|
var {
|
|
@@ -51,6 +52,7 @@ function frappeCollectionOptions(doctype, config) {
|
|
|
51
52
|
var subscriptionId;
|
|
52
53
|
var storeUnsubscribe;
|
|
53
54
|
var lastKnownNames = /* @__PURE__ */new Set();
|
|
55
|
+
var cancelled = false;
|
|
54
56
|
async function initSync() {
|
|
55
57
|
try {
|
|
56
58
|
var query = {
|
|
@@ -61,6 +63,10 @@ function frappeCollectionOptions(doctype, config) {
|
|
|
61
63
|
limit
|
|
62
64
|
};
|
|
63
65
|
var result = await syncModule.subscribe(query);
|
|
66
|
+
if (cancelled) {
|
|
67
|
+
syncModule.unsubscribe(result.subscriptionId);
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
64
70
|
subscriptionId = result.subscriptionId;
|
|
65
71
|
var initialDocs = syncModule.getDocsForSubscription(subscriptionId);
|
|
66
72
|
if (initialDocs.length > 0) {
|
|
@@ -166,13 +172,16 @@ function frappeCollectionOptions(doctype, config) {
|
|
|
166
172
|
lastKnownNames = currentNames;
|
|
167
173
|
});
|
|
168
174
|
} catch (error) {
|
|
175
|
+
if (cancelled) return;
|
|
169
176
|
console.error(`[frappe-collection] Initial sync failed for ${doctype}:`, error);
|
|
177
|
+
onSyncError === null || onSyncError === void 0 ? void 0 : onSyncError(error);
|
|
170
178
|
} finally {
|
|
171
|
-
markReady();
|
|
179
|
+
if (!cancelled) markReady();
|
|
172
180
|
}
|
|
173
181
|
}
|
|
174
182
|
initSync();
|
|
175
183
|
return function () {
|
|
184
|
+
cancelled = true;
|
|
176
185
|
if (storeUnsubscribe) {
|
|
177
186
|
storeUnsubscribe();
|
|
178
187
|
storeUnsubscribe = void 0;
|
|
@@ -326,6 +335,7 @@ function fixtureCollectionOptions(doctype, config) {
|
|
|
326
335
|
commit,
|
|
327
336
|
markReady
|
|
328
337
|
} = params;
|
|
338
|
+
var cancelled = false;
|
|
329
339
|
async function initSync() {
|
|
330
340
|
try {
|
|
331
341
|
var orderByForFixture = orderBy && !Array.isArray(orderBy) ? {
|
|
@@ -344,6 +354,7 @@ function fixtureCollectionOptions(doctype, config) {
|
|
|
344
354
|
limitStart,
|
|
345
355
|
limit
|
|
346
356
|
});
|
|
357
|
+
if (cancelled) return;
|
|
347
358
|
if (docs.length > 0) {
|
|
348
359
|
begin();
|
|
349
360
|
var _iteratorNormalCompletion = true,
|
|
@@ -378,13 +389,16 @@ function fixtureCollectionOptions(doctype, config) {
|
|
|
378
389
|
commit();
|
|
379
390
|
}
|
|
380
391
|
} catch (error) {
|
|
392
|
+
if (cancelled) return;
|
|
381
393
|
console.error(`[frappe-collection] Fixture sync failed for ${doctype}:`, error);
|
|
382
394
|
} finally {
|
|
383
|
-
markReady();
|
|
395
|
+
if (!cancelled) markReady();
|
|
384
396
|
}
|
|
385
397
|
}
|
|
386
398
|
initSync();
|
|
387
|
-
return function () {
|
|
399
|
+
return function () {
|
|
400
|
+
cancelled = true;
|
|
401
|
+
};
|
|
388
402
|
};
|
|
389
403
|
return {
|
|
390
404
|
id: (_config_id = config.id) !== null && _config_id !== void 0 ? _config_id : doctype,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","collection_exports","createFixtureCollection","createFrappeCollection","fixtureCollectionOptions","frappeCollectionOptions","module","exports","import_db","require","import_types","doctype","config","_config_id","sync","syncModule","fields","filters","orderBy","limit","syncFn","syncFn2","params","begin","write","commit","markReady","subscriptionId","storeUnsubscribe","lastKnownNames","Set","initSync","query","result","subscribe","initialDocs","getDocsForSubscription","length","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","doc","type","add","err","return","subscribeStore","currentDocs","currentNames","map","d","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","doc2","has","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","error","console","
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","collection_exports","createFixtureCollection","createFrappeCollection","fixtureCollectionOptions","frappeCollectionOptions","module","exports","import_db","require","import_types","doctype","config","_config_id","sync","syncModule","fields","filters","orderBy","limit","onSyncError","syncFn","syncFn2","params","begin","write","commit","markReady","subscriptionId","storeUnsubscribe","lastKnownNames","Set","cancelled","initSync","query","result","subscribe","unsubscribe","initialDocs","getDocsForSubscription","length","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","doc","type","add","err","return","subscribeStore","currentDocs","currentNames","map","d","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","doc2","has","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","error","console","id","getKey","onInsert","param","transaction"],"sources":["../../src/collection.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/jsx/core/http.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getCookie, setCookie, deleteCookie } from "@multiplatform.one/platform";
|
|
1
|
+
import { getCookie, setCookie, deleteCookie, isNative } from "@multiplatform.one/platform";
|
|
2
2
|
import { isBrowser } from "../util.mjs";
|
|
3
3
|
import { FrappeError, HttpMethod } from "./types.mjs";
|
|
4
4
|
const defaultRetryConfig = {
|
|
@@ -9,7 +9,22 @@ const defaultRetryConfig = {
|
|
|
9
9
|
retryOnNetworkError: true,
|
|
10
10
|
retryStatusCodes: [408, 429, 500, 502, 503, 504]
|
|
11
11
|
};
|
|
12
|
+
function isAbortError(err, signal) {
|
|
13
|
+
if (signal?.aborted) return true;
|
|
14
|
+
return err instanceof Error && err.name === "AbortError";
|
|
15
|
+
}
|
|
12
16
|
class HttpClient {
|
|
17
|
+
retryConfig;
|
|
18
|
+
// Language preference for Accept-Language header (used in SSR / React Native)
|
|
19
|
+
_language;
|
|
20
|
+
/** Server-bootstrapped CSRF token for React Native cookie auth (see ensureNativeCsrfToken). */
|
|
21
|
+
csrfToken;
|
|
22
|
+
/** True once a native CSRF bootstrap attempt completed (even if it yielded no token). */
|
|
23
|
+
csrfBootstrapDone = false;
|
|
24
|
+
/** In-flight CSRF bootstrap, deduped across concurrent mutating requests. */
|
|
25
|
+
csrfBootstrap;
|
|
26
|
+
baseURL;
|
|
27
|
+
auth;
|
|
13
28
|
constructor(baseURL, auth, retryConfig) {
|
|
14
29
|
this.baseURL = baseURL;
|
|
15
30
|
this.auth = auth;
|
|
@@ -18,11 +33,6 @@ class HttpClient {
|
|
|
18
33
|
...retryConfig
|
|
19
34
|
};
|
|
20
35
|
}
|
|
21
|
-
baseURL;
|
|
22
|
-
auth;
|
|
23
|
-
retryConfig;
|
|
24
|
-
// Language preference for Accept-Language header (used in SSR / React Native)
|
|
25
|
-
_language;
|
|
26
36
|
/** Set language preference for Accept-Language header on all requests. */
|
|
27
37
|
setLanguage(lang) {
|
|
28
38
|
this._language = lang;
|
|
@@ -43,6 +53,71 @@ class HttpClient {
|
|
|
43
53
|
value: lang
|
|
44
54
|
});
|
|
45
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* React Native cookie-auth CSRF bootstrap.
|
|
58
|
+
*
|
|
59
|
+
* RN's fetch sends the OS cookie jar (so cookie-auth sessions work), but
|
|
60
|
+
* JS cannot READ those cookies — the platform `getCookie` shim is an
|
|
61
|
+
* in-memory map that never sees the `sid`/CSRF cookies — so mutating
|
|
62
|
+
* requests would 400 once the session has a CSRF token. Fetch the token
|
|
63
|
+
* from the server instead and cache it per client:
|
|
64
|
+
*
|
|
65
|
+
* 1. `GET /api/method/frappe.sessions.get_csrf_token` — whitelisted on
|
|
66
|
+
* newer frappe versions; cheap JSON round-trip.
|
|
67
|
+
* 2. Fallback: `GET /app` and parse the `frappe.csrf_token = "…"` boot
|
|
68
|
+
* script — works on every frappe (this repo's bench does NOT
|
|
69
|
+
* whitelist the RPC above) and also generates the token server-side
|
|
70
|
+
* when the session lacks one.
|
|
71
|
+
*
|
|
72
|
+
* Resolves undefined when neither source works (e.g. website-only session
|
|
73
|
+
* without desk access); requests then proceed without the header, which
|
|
74
|
+
* frappe accepts for sessions that have no CSRF token yet. The cache is
|
|
75
|
+
* dropped on auth change and on a 400 from a mutating request so a
|
|
76
|
+
* rotated session re-bootstraps.
|
|
77
|
+
*/
|
|
78
|
+
async ensureNativeCsrfToken() {
|
|
79
|
+
if (this.csrfBootstrapDone) return this.csrfToken;
|
|
80
|
+
if (!this.csrfBootstrap) {
|
|
81
|
+
this.csrfBootstrap = this.fetchNativeCsrfToken().then(token => {
|
|
82
|
+
this.csrfToken = token;
|
|
83
|
+
this.csrfBootstrapDone = true;
|
|
84
|
+
}).finally(() => {
|
|
85
|
+
this.csrfBootstrap = void 0;
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
await this.csrfBootstrap;
|
|
89
|
+
return this.csrfToken;
|
|
90
|
+
}
|
|
91
|
+
async fetchNativeCsrfToken() {
|
|
92
|
+
try {
|
|
93
|
+
const rpcUrl = new URL("/api/method/frappe.sessions.get_csrf_token", this.baseURL).toString();
|
|
94
|
+
const res = await fetch(rpcUrl, {
|
|
95
|
+
method: "GET",
|
|
96
|
+
credentials: "include"
|
|
97
|
+
});
|
|
98
|
+
if (res.ok) {
|
|
99
|
+
const payload = await res.json();
|
|
100
|
+
if (typeof payload?.message === "string" && payload.message) return payload.message;
|
|
101
|
+
}
|
|
102
|
+
} catch {}
|
|
103
|
+
try {
|
|
104
|
+
const appUrl = new URL("/app", this.baseURL).toString();
|
|
105
|
+
const res = await fetch(appUrl, {
|
|
106
|
+
method: "GET",
|
|
107
|
+
credentials: "include"
|
|
108
|
+
});
|
|
109
|
+
if (res.ok) {
|
|
110
|
+
const html = await res.text();
|
|
111
|
+
const match = html.match(/frappe\.csrf_token\s*=\s*"([^"]+)"/);
|
|
112
|
+
if (match?.[1]) return match[1];
|
|
113
|
+
}
|
|
114
|
+
} catch {}
|
|
115
|
+
return void 0;
|
|
116
|
+
}
|
|
117
|
+
invalidateNativeCsrfToken() {
|
|
118
|
+
this.csrfToken = void 0;
|
|
119
|
+
this.csrfBootstrapDone = false;
|
|
120
|
+
}
|
|
46
121
|
async getAuthHeaders() {
|
|
47
122
|
if (!this.auth?.useToken) return {};
|
|
48
123
|
const raw = typeof this.auth.token === "function" ? await this.auth.token() : this.auth?.token;
|
|
@@ -132,7 +207,8 @@ class HttpClient {
|
|
|
132
207
|
headers.set("Accept-Language", lang);
|
|
133
208
|
}
|
|
134
209
|
if (!this.auth?.useToken && isBrowser() && method !== HttpMethod.Get) {
|
|
135
|
-
|
|
210
|
+
let csrf = getCookie("frappe-csrf-token") || getCookie("csrf_token") || globalThis.frappe?.csrf_token;
|
|
211
|
+
if (!csrf && isNative) csrf = await this.ensureNativeCsrfToken();
|
|
136
212
|
if (csrf) headers.set("X-Frappe-CSRF-Token", csrf);
|
|
137
213
|
}
|
|
138
214
|
const makeRequest = () => {
|
|
@@ -140,7 +216,8 @@ class HttpClient {
|
|
|
140
216
|
method,
|
|
141
217
|
headers,
|
|
142
218
|
credentials: this.auth?.useToken ? "omit" : "include",
|
|
143
|
-
body
|
|
219
|
+
body,
|
|
220
|
+
signal: request?.signal
|
|
144
221
|
});
|
|
145
222
|
};
|
|
146
223
|
let lastError;
|
|
@@ -153,6 +230,9 @@ class HttpClient {
|
|
|
153
230
|
const payload2 = contentType3?.includes("application/json") ? await res.json() : await res.text();
|
|
154
231
|
const message = payload2 && (payload2.message || payload2.exc || payload2._server_messages) || res.statusText;
|
|
155
232
|
const err = new FrappeError(message, res.status, payload2);
|
|
233
|
+
if (isNative && res.status === 400 && !this.auth?.useToken && method !== HttpMethod.Get) {
|
|
234
|
+
this.invalidateNativeCsrfToken();
|
|
235
|
+
}
|
|
156
236
|
if (this.shouldRetryError(err, attempt)) {
|
|
157
237
|
lastError = err;
|
|
158
238
|
attempt++;
|
|
@@ -172,6 +252,7 @@ class HttpClient {
|
|
|
172
252
|
_res: res
|
|
173
253
|
};
|
|
174
254
|
} catch (err) {
|
|
255
|
+
if (isAbortError(err, request?.signal)) throw err;
|
|
175
256
|
if (this.shouldRetryError(err, attempt)) {
|
|
176
257
|
lastError = err;
|
|
177
258
|
attempt++;
|
|
@@ -185,10 +266,11 @@ class HttpClient {
|
|
|
185
266
|
}
|
|
186
267
|
throw lastError;
|
|
187
268
|
}
|
|
188
|
-
get(path, params, headers) {
|
|
269
|
+
get(path, params, headers, signal) {
|
|
189
270
|
const qs = params ? `?${new URLSearchParams(normalizeParams(params)).toString()}` : "";
|
|
190
271
|
return this.request(HttpMethod.Get, `${path}${qs}`, {
|
|
191
|
-
headers
|
|
272
|
+
headers,
|
|
273
|
+
signal
|
|
192
274
|
});
|
|
193
275
|
}
|
|
194
276
|
post(path, body, headers) {
|
|
@@ -220,6 +302,7 @@ class HttpClient {
|
|
|
220
302
|
}
|
|
221
303
|
updateAuth(auth) {
|
|
222
304
|
this.auth = auth;
|
|
305
|
+
this.invalidateNativeCsrfToken();
|
|
223
306
|
}
|
|
224
307
|
}
|
|
225
308
|
function normalizeParams(params) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getCookie","setCookie","deleteCookie","isBrowser","FrappeError","HttpMethod","defaultRetryConfig","baseDelayMs","exponentialBackoff","maxDelayMs","maxRetries","retryOnNetworkError","retryStatusCodes","HttpClient","constructor","baseURL","auth","retryConfig","_language","setLanguage","lang","getLanguage","syncUserLanguage","user","post","doctype","name","fieldname","value","getAuthHeaders","useToken","raw","token","scheme","type","Authorization","shouldRetryError","err","attempt","shouldRetry","Number","Error","Boolean","statusCode","status","includes","getRetryDelay","delay","Math","min","request","method","path","url","URL","toString","body","headers","Headers","contentType","get","FormData","URLSearchParams","ArrayBuffer","Blob","ReadableStream","isView","formData","key","Object","entries","append","set","searchParams","JSON","stringify","authHeaders","cookie","ssrCookies","size","cookieStr","Array","from","map","encodeURIComponent","join","has","Get","csrf","globalThis","frappe","csrf_token","makeRequest","fetch","credentials","lastError","res","ok","contentType3","payload2","json","text","message","exc","_server_messages","statusText","Promise","resolve","setTimeout","contentType2","payload","_res","params","qs","normalizeParams","Post","put","Put","delete","Delete","head","Head","getAuthConfig","updateAuth","normalized","setSSRCookies","cookieHeader","Map","cookies","split","eqIndex","indexOf","slice","trim","decodeURIComponent","clearSSRCookies","invalidateCookieCache"],"sources":["../../../src/core/http.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["getCookie","setCookie","deleteCookie","isNative","isBrowser","FrappeError","HttpMethod","defaultRetryConfig","baseDelayMs","exponentialBackoff","maxDelayMs","maxRetries","retryOnNetworkError","retryStatusCodes","isAbortError","err","signal","aborted","Error","name","HttpClient","retryConfig","_language","csrfToken","csrfBootstrapDone","csrfBootstrap","baseURL","auth","constructor","setLanguage","lang","getLanguage","syncUserLanguage","user","post","doctype","fieldname","value","ensureNativeCsrfToken","fetchNativeCsrfToken","then","token","finally","rpcUrl","URL","toString","res","fetch","method","credentials","ok","payload","json","message","appUrl","html","text","match","invalidateNativeCsrfToken","getAuthHeaders","useToken","raw","scheme","type","Authorization","shouldRetryError","attempt","shouldRetry","Number","Boolean","statusCode","status","includes","getRetryDelay","delay","Math","min","request","path","url","body","headers","Headers","contentType","get","FormData","URLSearchParams","ArrayBuffer","Blob","ReadableStream","isView","formData","key","Object","entries","append","set","searchParams","JSON","stringify","authHeaders","cookie","ssrCookies","size","cookieStr","Array","from","map","encodeURIComponent","join","has","Get","csrf","globalThis","frappe","csrf_token","makeRequest","lastError","contentType3","payload2","exc","_server_messages","statusText","Promise","resolve","setTimeout","contentType2","_res","params","qs","normalizeParams","Post","put","Put","delete","Delete","head","Head","getAuthConfig","updateAuth","normalized","setSSRCookies","cookieHeader","Map","cookies","split","eqIndex","indexOf","slice","trim","decodeURIComponent","clearSSRCookies","invalidateCookieCache"],"sources":["../../../src/core/http.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -90,15 +90,22 @@ var defaultRetryConfig = {
|
|
|
90
90
|
retryOnNetworkError: true,
|
|
91
91
|
retryStatusCodes: [408, 429, 500, 502, 503, 504]
|
|
92
92
|
};
|
|
93
|
+
function isAbortError(err, signal) {
|
|
94
|
+
if (signal === null || signal === void 0 ? void 0 : signal.aborted) return true;
|
|
95
|
+
return _instanceof(err, Error) && err.name === "AbortError";
|
|
96
|
+
}
|
|
93
97
|
var HttpClient = /* @__PURE__ */function () {
|
|
94
98
|
"use strict";
|
|
95
99
|
|
|
96
100
|
function HttpClient2(baseURL, auth, retryConfig) {
|
|
97
101
|
_class_call_check(this, HttpClient2);
|
|
98
|
-
_define_property(this, "baseURL", void 0);
|
|
99
|
-
_define_property(this, "auth", void 0);
|
|
100
102
|
_define_property(this, "retryConfig", void 0);
|
|
101
103
|
_define_property(this, "_language", void 0);
|
|
104
|
+
_define_property(this, "csrfToken", void 0);
|
|
105
|
+
_define_property(this, "csrfBootstrapDone", false);
|
|
106
|
+
_define_property(this, "csrfBootstrap", void 0);
|
|
107
|
+
_define_property(this, "baseURL", void 0);
|
|
108
|
+
_define_property(this, "auth", void 0);
|
|
102
109
|
this.baseURL = baseURL;
|
|
103
110
|
this.auth = auth;
|
|
104
111
|
this.retryConfig = {
|
|
@@ -132,6 +139,79 @@ var HttpClient = /* @__PURE__ */function () {
|
|
|
132
139
|
value: lang
|
|
133
140
|
});
|
|
134
141
|
})
|
|
142
|
+
}, {
|
|
143
|
+
key: "ensureNativeCsrfToken",
|
|
144
|
+
value: (
|
|
145
|
+
/**
|
|
146
|
+
* React Native cookie-auth CSRF bootstrap.
|
|
147
|
+
*
|
|
148
|
+
* RN's fetch sends the OS cookie jar (so cookie-auth sessions work), but
|
|
149
|
+
* JS cannot READ those cookies — the platform `getCookie` shim is an
|
|
150
|
+
* in-memory map that never sees the `sid`/CSRF cookies — so mutating
|
|
151
|
+
* requests would 400 once the session has a CSRF token. Fetch the token
|
|
152
|
+
* from the server instead and cache it per client:
|
|
153
|
+
*
|
|
154
|
+
* 1. `GET /api/method/frappe.sessions.get_csrf_token` — whitelisted on
|
|
155
|
+
* newer frappe versions; cheap JSON round-trip.
|
|
156
|
+
* 2. Fallback: `GET /app` and parse the `frappe.csrf_token = "…"` boot
|
|
157
|
+
* script — works on every frappe (this repo's bench does NOT
|
|
158
|
+
* whitelist the RPC above) and also generates the token server-side
|
|
159
|
+
* when the session lacks one.
|
|
160
|
+
*
|
|
161
|
+
* Resolves undefined when neither source works (e.g. website-only session
|
|
162
|
+
* without desk access); requests then proceed without the header, which
|
|
163
|
+
* frappe accepts for sessions that have no CSRF token yet. The cache is
|
|
164
|
+
* dropped on auth change and on a 400 from a mutating request so a
|
|
165
|
+
* rotated session re-bootstraps.
|
|
166
|
+
*/
|
|
167
|
+
async function ensureNativeCsrfToken() {
|
|
168
|
+
var _this = this;
|
|
169
|
+
if (this.csrfBootstrapDone) return this.csrfToken;
|
|
170
|
+
if (!this.csrfBootstrap) {
|
|
171
|
+
this.csrfBootstrap = this.fetchNativeCsrfToken().then(function (token) {
|
|
172
|
+
_this.csrfToken = token;
|
|
173
|
+
_this.csrfBootstrapDone = true;
|
|
174
|
+
}).finally(function () {
|
|
175
|
+
_this.csrfBootstrap = void 0;
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
await this.csrfBootstrap;
|
|
179
|
+
return this.csrfToken;
|
|
180
|
+
})
|
|
181
|
+
}, {
|
|
182
|
+
key: "fetchNativeCsrfToken",
|
|
183
|
+
value: async function fetchNativeCsrfToken() {
|
|
184
|
+
try {
|
|
185
|
+
var rpcUrl = new URL("/api/method/frappe.sessions.get_csrf_token", this.baseURL).toString();
|
|
186
|
+
var res = await fetch(rpcUrl, {
|
|
187
|
+
method: "GET",
|
|
188
|
+
credentials: "include"
|
|
189
|
+
});
|
|
190
|
+
if (res.ok) {
|
|
191
|
+
var payload = await res.json();
|
|
192
|
+
if (typeof (payload === null || payload === void 0 ? void 0 : payload.message) === "string" && payload.message) return payload.message;
|
|
193
|
+
}
|
|
194
|
+
} catch (unused) {}
|
|
195
|
+
try {
|
|
196
|
+
var appUrl = new URL("/app", this.baseURL).toString();
|
|
197
|
+
var res1 = await fetch(appUrl, {
|
|
198
|
+
method: "GET",
|
|
199
|
+
credentials: "include"
|
|
200
|
+
});
|
|
201
|
+
if (res1.ok) {
|
|
202
|
+
var html = await res1.text();
|
|
203
|
+
var match = html.match(/frappe\.csrf_token\s*=\s*"([^"]+)"/);
|
|
204
|
+
if (match === null || match === void 0 ? void 0 : match[1]) return match[1];
|
|
205
|
+
}
|
|
206
|
+
} catch (unused) {}
|
|
207
|
+
return void 0;
|
|
208
|
+
}
|
|
209
|
+
}, {
|
|
210
|
+
key: "invalidateNativeCsrfToken",
|
|
211
|
+
value: function invalidateNativeCsrfToken() {
|
|
212
|
+
this.csrfToken = void 0;
|
|
213
|
+
this.csrfBootstrapDone = false;
|
|
214
|
+
}
|
|
135
215
|
}, {
|
|
136
216
|
key: "getAuthHeaders",
|
|
137
217
|
value: async function getAuthHeaders() {
|
|
@@ -299,15 +379,17 @@ var HttpClient = /* @__PURE__ */function () {
|
|
|
299
379
|
if (!((_this_auth = this.auth) === null || _this_auth === void 0 ? void 0 : _this_auth.useToken) && (0, import_util.isBrowser)() && method !== import_types.HttpMethod.Get) {
|
|
300
380
|
var _globalThis_frappe;
|
|
301
381
|
var csrf = (0, import_platform.getCookie)("frappe-csrf-token") || (0, import_platform.getCookie)("csrf_token") || ((_globalThis_frappe = globalThis.frappe) === null || _globalThis_frappe === void 0 ? void 0 : _globalThis_frappe.csrf_token);
|
|
382
|
+
if (!csrf && import_platform.isNative) csrf = await this.ensureNativeCsrfToken();
|
|
302
383
|
if (csrf) headers.set("X-Frappe-CSRF-Token", csrf);
|
|
303
384
|
}
|
|
304
385
|
var makeRequest = function makeRequest2() {
|
|
305
|
-
var
|
|
386
|
+
var _this_auth3;
|
|
306
387
|
return fetch(url, {
|
|
307
388
|
method,
|
|
308
389
|
headers,
|
|
309
|
-
credentials: ((
|
|
310
|
-
body
|
|
390
|
+
credentials: ((_this_auth3 = _this.auth) === null || _this_auth3 === void 0 ? void 0 : _this_auth3.useToken) ? "omit" : "include",
|
|
391
|
+
body,
|
|
392
|
+
signal: request === null || request === void 0 ? void 0 : request.signal
|
|
311
393
|
});
|
|
312
394
|
};
|
|
313
395
|
var lastError;
|
|
@@ -316,10 +398,14 @@ var HttpClient = /* @__PURE__ */function () {
|
|
|
316
398
|
try {
|
|
317
399
|
var res = await makeRequest();
|
|
318
400
|
if (!res.ok) {
|
|
401
|
+
var _this_auth2;
|
|
319
402
|
var contentType1 = res.headers.get("content-type");
|
|
320
403
|
var payload = (contentType1 === null || contentType1 === void 0 ? void 0 : contentType1.includes("application/json")) ? await res.json() : await res.text();
|
|
321
404
|
var message = payload && (payload.message || payload.exc || payload._server_messages) || res.statusText;
|
|
322
405
|
var _$err = new import_types.FrappeError(message, res.status, payload);
|
|
406
|
+
if (import_platform.isNative && res.status === 400 && !((_this_auth2 = this.auth) === null || _this_auth2 === void 0 ? void 0 : _this_auth2.useToken) && method !== import_types.HttpMethod.Get) {
|
|
407
|
+
this.invalidateNativeCsrfToken();
|
|
408
|
+
}
|
|
323
409
|
if (this.shouldRetryError(_$err, attempt)) {
|
|
324
410
|
var _this_retryConfig_maxRetries1;
|
|
325
411
|
lastError = _$err;
|
|
@@ -342,6 +428,7 @@ var HttpClient = /* @__PURE__ */function () {
|
|
|
342
428
|
_res: res
|
|
343
429
|
};
|
|
344
430
|
} catch (err) {
|
|
431
|
+
if (isAbortError(err, request === null || request === void 0 ? void 0 : request.signal)) throw err;
|
|
345
432
|
if (this.shouldRetryError(err, attempt)) {
|
|
346
433
|
var _this_retryConfig_maxRetries2;
|
|
347
434
|
lastError = err;
|
|
@@ -360,10 +447,11 @@ var HttpClient = /* @__PURE__ */function () {
|
|
|
360
447
|
}
|
|
361
448
|
}, {
|
|
362
449
|
key: "get",
|
|
363
|
-
value: function get(path, params, headers) {
|
|
450
|
+
value: function get(path, params, headers, signal) {
|
|
364
451
|
var qs = params ? `?${new URLSearchParams(normalizeParams(params)).toString()}` : "";
|
|
365
452
|
return this.request(import_types.HttpMethod.Get, `${path}${qs}`, {
|
|
366
|
-
headers
|
|
453
|
+
headers,
|
|
454
|
+
signal
|
|
367
455
|
});
|
|
368
456
|
}
|
|
369
457
|
}, {
|
|
@@ -407,6 +495,7 @@ var HttpClient = /* @__PURE__ */function () {
|
|
|
407
495
|
key: "updateAuth",
|
|
408
496
|
value: function updateAuth(auth) {
|
|
409
497
|
this.auth = auth;
|
|
498
|
+
this.invalidateNativeCsrfToken();
|
|
410
499
|
}
|
|
411
500
|
}]);
|
|
412
501
|
return HttpClient2;
|