@syncular/client 0.0.5-42 → 0.0.6-101

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 (70) hide show
  1. package/dist/client.d.ts +3 -3
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +7 -1
  4. package/dist/client.js.map +1 -1
  5. package/dist/create-client.d.ts +3 -4
  6. package/dist/create-client.d.ts.map +1 -1
  7. package/dist/create-client.js +16 -12
  8. package/dist/create-client.js.map +1 -1
  9. package/dist/engine/SyncEngine.d.ts.map +1 -1
  10. package/dist/engine/SyncEngine.js +49 -29
  11. package/dist/engine/SyncEngine.js.map +1 -1
  12. package/dist/engine/types.d.ts +3 -3
  13. package/dist/engine/types.d.ts.map +1 -1
  14. package/dist/handlers/collection.d.ts +6 -0
  15. package/dist/handlers/collection.d.ts.map +1 -0
  16. package/dist/handlers/collection.js +21 -0
  17. package/dist/handlers/collection.js.map +1 -0
  18. package/dist/handlers/create-handler.d.ts +1 -1
  19. package/dist/handlers/create-handler.d.ts.map +1 -1
  20. package/dist/handlers/create-handler.js +3 -3
  21. package/dist/handlers/create-handler.js.map +1 -1
  22. package/dist/index.d.ts +2 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +2 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/migrate.d.ts.map +1 -1
  27. package/dist/migrate.js +12 -0
  28. package/dist/migrate.js.map +1 -1
  29. package/dist/mutations.d.ts +1 -1
  30. package/dist/mutations.d.ts.map +1 -1
  31. package/dist/mutations.js +3 -3
  32. package/dist/mutations.js.map +1 -1
  33. package/dist/pull-engine.d.ts +11 -14
  34. package/dist/pull-engine.d.ts.map +1 -1
  35. package/dist/pull-engine.js +68 -6
  36. package/dist/pull-engine.js.map +1 -1
  37. package/dist/push-engine.d.ts.map +1 -1
  38. package/dist/push-engine.js +12 -0
  39. package/dist/push-engine.js.map +1 -1
  40. package/dist/sync-loop.d.ts +2 -2
  41. package/dist/sync-loop.d.ts.map +1 -1
  42. package/dist/sync-loop.js +5 -2
  43. package/dist/sync-loop.js.map +1 -1
  44. package/dist/sync.d.ts +32 -0
  45. package/dist/sync.d.ts.map +1 -0
  46. package/dist/sync.js +55 -0
  47. package/dist/sync.js.map +1 -0
  48. package/package.json +4 -4
  49. package/src/client.test.ts +18 -9
  50. package/src/client.ts +11 -4
  51. package/src/create-client.test.ts +83 -0
  52. package/src/create-client.ts +21 -16
  53. package/src/engine/SyncEngine.test.ts +241 -32
  54. package/src/engine/SyncEngine.ts +53 -33
  55. package/src/engine/types.ts +3 -3
  56. package/src/handlers/collection.ts +36 -0
  57. package/src/handlers/create-handler.ts +4 -4
  58. package/src/index.ts +2 -1
  59. package/src/migrate.ts +14 -0
  60. package/src/mutations.ts +4 -4
  61. package/src/pull-engine.test.ts +151 -6
  62. package/src/pull-engine.ts +93 -21
  63. package/src/push-engine.ts +15 -0
  64. package/src/sync-loop.ts +13 -5
  65. package/src/sync.ts +170 -0
  66. package/dist/handlers/registry.d.ts +0 -15
  67. package/dist/handlers/registry.d.ts.map +0 -1
  68. package/dist/handlers/registry.js +0 -29
  69. package/dist/handlers/registry.js.map +0 -1
  70. package/src/handlers/registry.ts +0 -36
@@ -1,29 +0,0 @@
1
- /**
2
- * @syncular/client - Sync client table registry
3
- */
4
- /**
5
- * Registry for client-side table handlers.
6
- */
7
- export class ClientTableRegistry {
8
- handlers = new Map();
9
- register(handler) {
10
- if (this.handlers.has(handler.table)) {
11
- throw new Error(`Client table handler already registered: ${handler.table}`);
12
- }
13
- this.handlers.set(handler.table, handler);
14
- return this;
15
- }
16
- get(table) {
17
- return this.handlers.get(table);
18
- }
19
- getOrThrow(table) {
20
- const h = this.handlers.get(table);
21
- if (!h)
22
- throw new Error(`Missing client table handler for table: ${table}`);
23
- return h;
24
- }
25
- getAll() {
26
- return Array.from(this.handlers.values());
27
- }
28
- }
29
- //# sourceMappingURL=registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/handlers/registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,MAAM,OAAO,mBAAmB;IACtB,QAAQ,GAAG,IAAI,GAAG,EAAkC,CAAC;IAE7D,QAAQ,CAAC,OAA+B,EAAQ;QAC9C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,4CAA4C,OAAO,CAAC,KAAK,EAAE,CAC5D,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IAAA,CACb;IAED,GAAG,CAAC,KAAa,EAAsC;QACrD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAAA,CACjC;IAED,UAAU,CAAC,KAAa,EAA0B;QAChD,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,KAAK,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,CAAC;IAAA,CACV;IAED,MAAM,GAA6B;QACjC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAAA,CAC3C;CACF"}
@@ -1,36 +0,0 @@
1
- /**
2
- * @syncular/client - Sync client table registry
3
- */
4
-
5
- import type { ClientTableHandler } from './types';
6
-
7
- /**
8
- * Registry for client-side table handlers.
9
- */
10
- export class ClientTableRegistry<DB> {
11
- private handlers = new Map<string, ClientTableHandler<DB>>();
12
-
13
- register(handler: ClientTableHandler<DB>): this {
14
- if (this.handlers.has(handler.table)) {
15
- throw new Error(
16
- `Client table handler already registered: ${handler.table}`
17
- );
18
- }
19
- this.handlers.set(handler.table, handler);
20
- return this;
21
- }
22
-
23
- get(table: string): ClientTableHandler<DB> | undefined {
24
- return this.handlers.get(table);
25
- }
26
-
27
- getOrThrow(table: string): ClientTableHandler<DB> {
28
- const h = this.handlers.get(table);
29
- if (!h) throw new Error(`Missing client table handler for table: ${table}`);
30
- return h;
31
- }
32
-
33
- getAll(): ClientTableHandler<DB>[] {
34
- return Array.from(this.handlers.values());
35
- }
36
- }