@lunora/client 1.0.0-alpha.9 → 1.0.0-alpha.91

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.
Files changed (90) hide show
  1. package/LICENSE.md +6 -0
  2. package/README.md +1 -1
  3. package/dist/auth/index.d.mts +12 -10
  4. package/dist/auth/index.d.ts +12 -10
  5. package/dist/auth/index.mjs +1 -60
  6. package/dist/index.d.mts +893 -247
  7. package/dist/index.d.ts +893 -247
  8. package/dist/index.mjs +1 -15
  9. package/dist/packem_shared/CONFLICT_ERROR_CODE-BOeeP_Wl.mjs +1 -0
  10. package/dist/packem_shared/ClientServiceWorker-DXnBXeWK.mjs +1 -0
  11. package/dist/packem_shared/DEFAULT_MAX_BUFFER-D3QH2iaq.mjs +1 -0
  12. package/dist/packem_shared/LunoraClient-DArMFG67.mjs +1 -0
  13. package/dist/packem_shared/OfflineQueue-ZapYrAVi.mjs +1 -0
  14. package/dist/packem_shared/RETIRE_AFTER_DURABLE_SEQ_ADVANCE-DoEHtuR8.mjs +1 -0
  15. package/dist/packem_shared/SKIP-d7LeP-sY.mjs +1 -0
  16. package/dist/packem_shared/SubscriptionRegistry-CS-AFUI9.mjs +1 -0
  17. package/dist/packem_shared/TabCoordinator-CXD7vulJ.mjs +1 -0
  18. package/dist/packem_shared/anyApi-CBOws2ZA.mjs +1 -0
  19. package/dist/packem_shared/applyDelta-DwcQmRsV.mjs +1 -0
  20. package/dist/packem_shared/createAsyncStoragePersistence-CeUW9NTj.mjs +1 -0
  21. package/dist/packem_shared/createAsyncStorageQueryCache-BfZkthAE.mjs +1 -0
  22. package/dist/packem_shared/createCallRunner-Bwcrfh76.mjs +1 -0
  23. package/dist/packem_shared/createClientQuery-B8Nfj-7o.mjs +1 -0
  24. package/dist/packem_shared/createInMemoryBookmarkStorage-BooZhW0n.mjs +1 -0
  25. package/dist/packem_shared/createInMemoryPersistence-Cz2W6XVj.mjs +1 -0
  26. package/dist/packem_shared/createInMemoryQueryCache-D2uNHLfM.mjs +1 -0
  27. package/dist/packem_shared/createLocalStore-nwwRbT0L.mjs +1 -0
  28. package/dist/packem_shared/createMutatorRunner-CuMRJpUx.mjs +1 -0
  29. package/dist/packem_shared/createReconnect-CjTmjJDH.mjs +1 -0
  30. package/dist/packem_shared/createReply-CwFABEJs.mjs +1 -0
  31. package/dist/packem_shared/createServerClient-BrNyme3I.mjs +1 -0
  32. package/dist/packem_shared/createSnapshotPrecondition-GRVKxPsh.mjs +1 -0
  33. package/dist/packem_shared/delta-merge-vxvH3PvF.mjs +1 -0
  34. package/dist/packem_shared/deserializePreloaded-C6NTQdFa.mjs +1 -0
  35. package/dist/packem_shared/function-reference.d-Br_hsKje.d.mts +45 -0
  36. package/dist/packem_shared/function-reference.d-Br_hsKje.d.ts +45 -0
  37. package/dist/packem_shared/getServerSession-BaOoo1p6.mjs +1 -0
  38. package/dist/packem_shared/httpStream-CPdblK2G.mjs +11 -0
  39. package/dist/packem_shared/idb-utility-C8WS390w.mjs +1 -0
  40. package/dist/packem_shared/local-store-CVfQDdXy.mjs +1 -0
  41. package/dist/packem_shared/lunora-client.d-C5tvkz8x.d.mts +3891 -0
  42. package/dist/packem_shared/lunora-client.d-CK3FxGNH.d.ts +3891 -0
  43. package/dist/packem_shared/offline-queue-xntsWiKt.mjs +1 -0
  44. package/dist/packem_shared/preload.d-CAXl1Y8Y.d.mts +21 -0
  45. package/dist/packem_shared/preload.d-Csjxr5HM.d.ts +21 -0
  46. package/dist/packem_shared/preloadQuery-uFy24PCR.mjs +1 -0
  47. package/dist/packem_shared/single-blob-store-DrhzObic.mjs +1 -0
  48. package/dist/packem_shared/wire-codec-Sw1rAu-Z.mjs +1 -0
  49. package/dist/packem_shared/wire-key-HsUDTlQ7.mjs +1 -0
  50. package/dist/pagination/index.d.mts +42 -42
  51. package/dist/pagination/index.d.ts +42 -42
  52. package/dist/pagination/index.mjs +1 -61
  53. package/dist/query/index.d.mts +111 -43
  54. package/dist/query/index.d.ts +111 -43
  55. package/dist/query/index.mjs +1 -1
  56. package/dist/service.d.mts +49 -0
  57. package/dist/service.d.ts +49 -0
  58. package/dist/service.mjs +1 -0
  59. package/dist/ssr/index.d.mts +109 -79
  60. package/dist/ssr/index.d.ts +109 -79
  61. package/dist/ssr/index.mjs +1 -4
  62. package/dist/upload.d.mts +35 -0
  63. package/dist/upload.d.ts +35 -0
  64. package/dist/upload.mjs +1 -0
  65. package/package.json +16 -1
  66. package/dist/packem_shared/CONFLICT_ERROR_CODE-aUdVbEDw.mjs +0 -4
  67. package/dist/packem_shared/DEFAULT_MAX_BUFFER-BDkqO5PW.mjs +0 -107
  68. package/dist/packem_shared/LunoraClient-C4eFp92b.mjs +0 -2598
  69. package/dist/packem_shared/OfflineQueue-eJBiWPfg.mjs +0 -134
  70. package/dist/packem_shared/SKIP-vItZChkw.mjs +0 -50
  71. package/dist/packem_shared/SubscriptionRegistry-Dn-7k7eo.mjs +0 -1
  72. package/dist/packem_shared/applyDelta-4jFGTPA3.mjs +0 -61
  73. package/dist/packem_shared/createAsyncStoragePersistence-1Z5BZ8RC.mjs +0 -45
  74. package/dist/packem_shared/createInMemoryBookmarkStorage-BoN7a7TH.mjs +0 -11
  75. package/dist/packem_shared/createInMemoryPersistence-CW82inU5.mjs +0 -105
  76. package/dist/packem_shared/createInMemoryQueryCache-B1PQ9Twl.mjs +0 -138
  77. package/dist/packem_shared/createLocalStore-IOur0jHF.mjs +0 -1
  78. package/dist/packem_shared/createMutationRunner-BqsavzvG.mjs +0 -21
  79. package/dist/packem_shared/createMutatorRunner-BETvCd0p.mjs +0 -31
  80. package/dist/packem_shared/createReconnect-Di_-oHH7.mjs +0 -22
  81. package/dist/packem_shared/createServerClient-PHoMdNGJ.mjs +0 -11
  82. package/dist/packem_shared/deserializePreloaded-C0eJTY_W.mjs +0 -4
  83. package/dist/packem_shared/getServerSession-8jXewqxd.mjs +0 -13
  84. package/dist/packem_shared/local-store-BNgN3Dw3.mjs +0 -111
  85. package/dist/packem_shared/lunora-client.d-CfwxuJo8.d.mts +0 -2106
  86. package/dist/packem_shared/lunora-client.d-CfwxuJo8.d.ts +0 -2106
  87. package/dist/packem_shared/preload.d-Bbn8plix.d.mts +0 -20
  88. package/dist/packem_shared/preload.d-DuMetDdU.d.ts +0 -20
  89. package/dist/packem_shared/preloadQuery-lobFkD2Z.mjs +0 -13
  90. package/dist/packem_shared/subscription-C1Jy7HiF.mjs +0 -55
@@ -1,111 +0,0 @@
1
- const foldOptimistic = (base, layers) => {
2
- let value = base;
3
- for (const layer of layers) {
4
- try {
5
- value = layer.transform(value);
6
- } catch {
7
- }
8
- }
9
- return value;
10
- };
11
- const notifySubscription = (state, value) => {
12
- if (value === state.lastValue) {
13
- return;
14
- }
15
- state.lastValue = value;
16
- for (const callback of state.callbacks) {
17
- try {
18
- callback(value);
19
- } catch {
20
- }
21
- }
22
- };
23
- const applyOptimisticLayer = (state, optimistic) => {
24
- let next;
25
- try {
26
- next = optimistic(state.lastValue);
27
- } catch {
28
- return void 0;
29
- }
30
- const layer = { id: /* @__PURE__ */ Symbol("optimistic"), transform: optimistic };
31
- state.optimisticLayers.push(layer);
32
- notifySubscription(state, next);
33
- const remove = () => {
34
- const index = state.optimisticLayers.findIndex((entry) => entry.id === layer.id);
35
- if (index === -1) {
36
- return false;
37
- }
38
- state.optimisticLayers.splice(index, 1);
39
- return true;
40
- };
41
- const refold = () => {
42
- notifySubscription(state, foldOptimistic(state.serverBase, state.optimisticLayers));
43
- };
44
- return {
45
- confirm: (commitCursor) => {
46
- if (commitCursor === void 0) {
47
- remove();
48
- return;
49
- }
50
- layer.commitCursor = commitCursor;
51
- if (state.serverCursor !== void 0 && state.serverCursor >= commitCursor && remove()) {
52
- refold();
53
- }
54
- },
55
- rollback: () => {
56
- if (remove()) {
57
- refold();
58
- }
59
- }
60
- };
61
- };
62
- const dropConfirmedLayers = (state, cursor) => {
63
- if (cursor === void 0 || state.optimisticLayers.length === 0) {
64
- return false;
65
- }
66
- const before = state.optimisticLayers.length;
67
- state.optimisticLayers = state.optimisticLayers.filter((layer) => layer.commitCursor === void 0 || layer.commitCursor > cursor);
68
- return state.optimisticLayers.length !== before;
69
- };
70
-
71
- const createLocalStore = (subscriptions, shardKey, stableStringify) => {
72
- const confirms = [];
73
- const rollbacks = [];
74
- const findState = (functionRef, argsKey) => {
75
- for (const state of subscriptions.all()) {
76
- if (state.fn.__lunoraRef === functionRef && state.shardKey === shardKey && state.argsKey === argsKey) {
77
- return state;
78
- }
79
- }
80
- return void 0;
81
- };
82
- const store = {
83
- getAllQueries: (function_) => {
84
- const matches = [];
85
- for (const state of subscriptions.all()) {
86
- if (state.fn.__lunoraRef === function_.__lunoraRef && state.shardKey === shardKey) {
87
- matches.push({ args: state.args, value: state.lastValue });
88
- }
89
- }
90
- return matches;
91
- },
92
- getQuery: (function_, args) => {
93
- const state = findState(function_.__lunoraRef, stableStringify(args ?? {}));
94
- return state?.lastValue;
95
- },
96
- setQuery: (function_, args, value) => {
97
- const state = findState(function_.__lunoraRef, stableStringify(args ?? {}));
98
- if (!state) {
99
- return;
100
- }
101
- const handle = applyOptimisticLayer(state, () => value);
102
- if (handle) {
103
- confirms.push(handle.confirm);
104
- rollbacks.push(handle.rollback);
105
- }
106
- }
107
- };
108
- return { confirms, rollbacks, store };
109
- };
110
-
111
- export { applyOptimisticLayer as a, createLocalStore as c, dropConfirmedLayers as d, foldOptimistic as f, notifySubscription as n };