@livestore/common 0.0.48-dev.1 → 0.0.48-dev.2

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 (39) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/__tests__/fixture.d.ts +8 -2
  3. package/dist/__tests__/fixture.d.ts.map +1 -1
  4. package/dist/derived-mutations.d.ts +27 -31
  5. package/dist/derived-mutations.d.ts.map +1 -1
  6. package/dist/derived-mutations.js +3 -3
  7. package/dist/derived-mutations.js.map +1 -1
  8. package/dist/schema/index.d.ts +1 -1
  9. package/dist/schema/index.d.ts.map +1 -1
  10. package/dist/schema/index.js +2 -1
  11. package/dist/schema/index.js.map +1 -1
  12. package/dist/schema/mutations.d.ts +12 -1
  13. package/dist/schema/mutations.d.ts.map +1 -1
  14. package/dist/schema/mutations.js +2 -1
  15. package/dist/schema/mutations.js.map +1 -1
  16. package/dist/schema/system-tables.d.ts +207 -232
  17. package/dist/schema/system-tables.d.ts.map +1 -1
  18. package/dist/schema/system-tables.js +1 -1
  19. package/dist/schema/system-tables.js.map +1 -1
  20. package/dist/schema/table-def.d.ts +41 -7
  21. package/dist/schema/table-def.d.ts.map +1 -1
  22. package/dist/schema/table-def.js +8 -2
  23. package/dist/schema/table-def.js.map +1 -1
  24. package/dist/schema-management/migrations.d.ts +1 -0
  25. package/dist/schema-management/migrations.d.ts.map +1 -1
  26. package/dist/schema-management/migrations.js +1 -1
  27. package/dist/schema-management/migrations.js.map +1 -1
  28. package/dist/sync/sync.d.ts +4 -0
  29. package/dist/sync/sync.d.ts.map +1 -1
  30. package/dist/sync/sync.js +6 -2
  31. package/dist/sync/sync.js.map +1 -1
  32. package/package.json +3 -3
  33. package/src/derived-mutations.ts +52 -13
  34. package/src/schema/index.ts +2 -2
  35. package/src/schema/mutations.ts +13 -0
  36. package/src/schema/system-tables.ts +1 -1
  37. package/src/schema/table-def.ts +44 -8
  38. package/src/schema-management/migrations.ts +1 -1
  39. package/src/sync/sync.ts +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"table-def.js","sourceRoot":"","sources":["../../src/schema/table-def.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-def.js","sourceRoot":"","sources":["../../src/schema/table-def.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEtE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAG5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAA;AAEzE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,SAAS,CAAA;AA4G3G,MAAM,CAAC,MAAM,KAAK,GAAG,CAKnB,IAAW,EACX,eAAyB,EACzB,OAAuB,EAavB,EAAE;IACF,MAAM,SAAS,GAAG,IAAI,CAAA;IAEtB,MAAM,QAAQ,GAAiB;QAC7B,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,KAAK;QAC1C,mBAAmB,EAAE,OAAO,EAAE,mBAAmB,IAAI,KAAK;QAC1D,wBAAwB,EAAE,OAAO,EAAE,wBAAwB,IAAI,KAAK;QACpE,eAAe,EACb,OAAO,EAAE,eAAe,KAAK,IAAI;YAC/B,CAAC,CAAC,EAAE,OAAO,EAAE,IAAa,EAAE,SAAS,EAAE,KAAK,EAAE;YAC9C,CAAC,CAAC,OAAO,EAAE,eAAe,KAAK,KAAK;gBAClC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAc,EAAE;gBAC7B,CAAC,CAAC,OAAO,EAAE,eAAe,KAAK,SAAS;oBACtC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAc,EAAE;oBAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,IAAa,EAAE,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,SAAS,IAAI,KAAK,EAAE;QAC3F,cAAc,EAAE,SAAS,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAK,IAAI;KACvE,CAAA;IAED,MAAM,OAAO,GAAG,CACd,SAAS,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,eAAe,CACxE,CAAA;IAEtB,IAAI,QAAQ,CAAC,wBAAwB,KAAK,IAAI,EAAE,CAAC;QAC/C,IAAI,OAAO,CAAC,EAAE,KAAK,SAAS,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC9D,iBAAiB,CACf,uBAAuB,IAAI,iHAAiH,CAC7I,CAAA;QACH,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,CAAC,EAAE,KAAK,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;QAC5G,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAA;QAC9G,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QACnD,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC,CAAA;IAE7E,2CAA2C;IAC3C,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;QACzB,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YAC3C,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAChE,iBAAiB,CACf,yGAAyG,MAAM,CAAC,IAAI,eAAe,CACpI,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,cAAc,GAAG,SAAS,CAAC,kBAAkB,CAAC,eAAe,CAAC,KAAK,IAAI,CAAA;IAE7E,MAAM,MAAM,GAAG,SAAS,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;IACxD,MAAM,QAAQ,GAAG,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAqB,CAAA;IAE5F,IAAI,wBAAwB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvC,MAAM,mBAAmB,GAAG,+BAA+B,CAAC,QAAQ,CAAC,CAAA;QAErE,QAAQ,CAAC,MAAM,GAAG,CAAC,aAAkB,EAAE,EAAE;YACvC,IAAI,cAAc,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAC3C,OAAO,mBAAmB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC,CAAA;YACzF,CAAC;iBAAM,CAAC;gBACN,OAAO,mBAAmB,CAAC,MAAM,CAAC,aAAoB,CAAC,CAAA;YACzD,CAAC;QACH,CAAC,CAAA;QAED,QAAQ,CAAC,MAAM,GAAG,CAAC,YAAiB,EAAE,EAAE;YACtC,IAAI,cAAc,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAC3C,OAAO,mBAAmB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAS,EAAE,CAAC,CAAA;YAC3G,CAAC;iBAAM,CAAC;gBACN,OAAO,mBAAmB,CAAC,MAAM,CAAC,YAAmB,CAAC,CAAA;YACxD,CAAC;QACH,CAAC,CAAA;QAED,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACnE,CAAC;IAED,OAAO,QAAe,CAAA;AACxB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,QAAmB,EAGiE,EAAE,CACtF,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,KAAK,IAAI,CAAA;AAEnD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,QAAmB,EACyC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,KAAK,IAAI,CAAA;AAEtG,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,QAAmB,EACnB,cAAoC,EACpC,EAAE,CACF,IAAI,CACF,QAAQ,CAAC,SAAS,CAAC,OAAO,EAC1B,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACjC,IAAI,cAAc,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACpD,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAC9B,OAAO,GAAI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAA;AAClG,CAAC,CAAC,EACF,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CACxC,cAAc,EAAE,CAAC,UAAU,CAAC,KAAK,SAAS;IACxC,CAAC,CAAC,MAAO,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;QAC/B,CAAC,CAAC,MAAO,CAAC,QAAQ,KAAK,IAAI;YACzB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,iBAAiB,CAAC,UAAU,UAAU,2CAA2C,CAAC;QACtF,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAO,CAAC,MAAM,CAAC,CAAC,MAAO,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5D,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAC/B,CACF,CAAA;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,QAAmB,EACnB,cAAoC,EACpC,EAAE,CACF,IAAI,CACF,QAAQ,CAAC,SAAS,CAAC,OAAO,EAC1B,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACjC,IAAI,cAAc,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACpD,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAC9B,OAAO,GAAI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,CAAC,iBAAiB,CAAC,GAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAA;AAClG,CAAC,CAAC,EACF,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CACxC,cAAc,EAAE,CAAC,UAAU,CAAC,KAAK,SAAS;IACxC,CAAC,CAAC,MAAO,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;QAC/B,CAAC,CAAC,MAAO,CAAC,QAAQ,KAAK,IAAI;YACzB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,iBAAiB,CAAC,UAAU,UAAU,2CAA2C,CAAC;QACtF,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,MAAO,CAAC,MAAM,CAAC,CAAC,MAAO,CAAC,OAAO,CAAC,KAAK,CAAC;IAC9D,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAC/B,CACF,CAAA"}
@@ -17,4 +17,5 @@ export declare const migrateTable: ({ db, tableAst, schemaHash, behaviour, skipM
17
17
  behaviour: 'drop-and-recreate' | 'create-if-not-exists';
18
18
  skipMetaTable?: boolean;
19
19
  }) => void;
20
+ export declare const makeColumnSpec: (tableAst: SqliteAst.Table) => string;
20
21
  //# sourceMappingURL=migrations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/schema-management/migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAa,MAAM,kBAAkB,CAAA;AAEvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAUzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,eAAO,MAAM,iBAAiB,OAAQ,gBAAgB,KAAG,aA6BxD,CAAA;AAGD,eAAO,MAAM,SAAS,iCAInB;IACD,EAAE,EAAE,gBAAgB,CAAA;IACpB,WAAW,CAAC,EAAE,KAAK,OAAO,CAAA;IAC1B,MAAM,EAAE,eAAe,CAAA;CACxB,SAsCA,CAAA;AAED,eAAO,MAAM,YAAY,4DAOtB;IACD,EAAE,EAAE,gBAAgB,CAAA;IACpB,QAAQ,EAAE,UAAU,KAAK,CAAA;IACzB,WAAW,CAAC,EAAE,KAAK,OAAO,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,mBAAmB,GAAG,sBAAsB,CAAA;IACvD,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,SA6BA,CAAA"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/schema-management/migrations.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAa,MAAM,kBAAkB,CAAA;AAEvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAUzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,eAAO,MAAM,iBAAiB,OAAQ,gBAAgB,KAAG,aA6BxD,CAAA;AAGD,eAAO,MAAM,SAAS,iCAInB;IACD,EAAE,EAAE,gBAAgB,CAAA;IACpB,WAAW,CAAC,EAAE,KAAK,OAAO,CAAA;IAC1B,MAAM,EAAE,eAAe,CAAA;CACxB,SAsCA,CAAA;AAED,eAAO,MAAM,YAAY,4DAOtB;IACD,EAAE,EAAE,gBAAgB,CAAA;IACpB,QAAQ,EAAE,UAAU,KAAK,CAAA;IACzB,WAAW,CAAC,EAAE,KAAK,OAAO,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,mBAAmB,GAAG,sBAAsB,CAAA;IACvD,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,SA6BA,CAAA;AAOD,eAAO,MAAM,cAAc,aAAc,UAAU,KAAK,WAQvD,CAAA"}
@@ -85,7 +85,7 @@ const createIndexFromDefinition = (tableName, index) => {
85
85
  const uniqueStr = index.unique ? 'UNIQUE' : '';
86
86
  return sql `create ${uniqueStr} index ${index.name} on ${tableName} (${index.columns.join(', ')})`;
87
87
  };
88
- const makeColumnSpec = (tableAst) => {
88
+ export const makeColumnSpec = (tableAst) => {
89
89
  const primaryKeys = tableAst.columns.filter((_) => _.primaryKey).map((_) => _.name);
90
90
  const columnDefStrs = tableAst.columns.map(toSqliteColumnSpec);
91
91
  if (primaryKeys.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/schema-management/migrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/schema-management/migrations.ts"],"names":[],"mappings":"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"}
@@ -13,11 +13,15 @@ export declare class IsOfflineError extends IsOfflineError_base {
13
13
  }
14
14
  declare const InvalidPushError_base: Schema.TaggedErrorClass<InvalidPushError, "InvalidPushError", {
15
15
  readonly _tag: Schema.PropertySignature<":", "InvalidPushError", never, ":", "InvalidPushError", true, never>;
16
+ } & {
17
+ message: typeof Schema.String;
16
18
  }>;
17
19
  export declare class InvalidPushError extends InvalidPushError_base {
18
20
  }
19
21
  declare const InvalidPullError_base: Schema.TaggedErrorClass<InvalidPullError, "InvalidPullError", {
20
22
  readonly _tag: Schema.PropertySignature<":", "InvalidPullError", never, ":", "InvalidPullError", true, never>;
23
+ } & {
24
+ message: typeof Schema.String;
21
25
  }>;
22
26
  export declare class InvalidPullError extends InvalidPullError_base {
23
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEhG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IAChH,IAAI,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IACzG,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;IAC/C,WAAW,EAAE,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;CACtD,CAAA;;;;AAED,qBAAa,cAAe,SAAQ,mBAA0D;CAAG;;;;AACjG,qBAAa,gBAAiB,SAAQ,qBAA8D;CAAG;;;;AACvG,qBAAa,gBAAiB,SAAQ,qBAA8D;CAAG"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEhG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IAChH,IAAI,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,CAAC,CAAA;IACzG,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;IAC/C,WAAW,EAAE,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;CACtD,CAAA;;;;AAED,qBAAa,cAAe,SAAQ,mBAA0D;CAAG;;;;;;AACjG,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG;;;;;;AACL,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG"}
package/dist/sync/sync.js CHANGED
@@ -1,8 +1,12 @@
1
1
  import { Schema } from '@livestore/utils/effect';
2
2
  export class IsOfflineError extends Schema.TaggedError()('IsOfflineError', {}) {
3
3
  }
4
- export class InvalidPushError extends Schema.TaggedError()('InvalidPushError', {}) {
4
+ export class InvalidPushError extends Schema.TaggedError()('InvalidPushError', {
5
+ message: Schema.String,
6
+ }) {
5
7
  }
6
- export class InvalidPullError extends Schema.TaggedError()('InvalidPullError', {}) {
8
+ export class InvalidPullError extends Schema.TaggedError()('InvalidPullError', {
9
+ message: Schema.String,
10
+ }) {
7
11
  }
8
12
  //# sourceMappingURL=sync.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAqC,MAAM,yBAAyB,CAAA;AAWhG,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE,EAAE,CAAC;CAAG;AACjG,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE,EAAE,CAAC;CAAG;AACvG,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE,EAAE,CAAC;CAAG"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAqC,MAAM,yBAAyB,CAAA;AAWhG,MAAM,OAAO,cAAe,SAAQ,MAAM,CAAC,WAAW,EAAkB,CAAC,gBAAgB,EAAE,EAAE,CAAC;CAAG;AACjG,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CAAC;CAAG;AACL,MAAM,OAAO,gBAAiB,SAAQ,MAAM,CAAC,WAAW,EAAoB,CAAC,kBAAkB,EAAE;IAC/F,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CAAC;CAAG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@livestore/common",
3
- "version": "0.0.48-dev.1",
3
+ "version": "0.0.48-dev.2",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -29,8 +29,8 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@opentelemetry/api": "^1.9.0",
32
- "@livestore/utils": "0.0.48-dev.1",
33
- "effect-db-schema": "0.0.48-dev.1"
32
+ "@livestore/utils": "0.0.48-dev.2",
33
+ "effect-db-schema": "0.0.48-dev.2"
34
34
  },
35
35
  "devDependencies": {
36
36
  "vitest": "^1.6.0"
@@ -8,13 +8,29 @@ import type { TableOptions } from './schema/table-def.js'
8
8
  import * as DbSchema from './schema/table-def.js'
9
9
  import { deleteRows, insertRow, updateRows } from './sql-queries/sql-queries.js'
10
10
 
11
- export const makeDerivedMutationDefsForTable = <TTableDef extends DbSchema.TableDef>(table: TTableDef) => ({
11
+ export const makeDerivedMutationDefsForTable = <
12
+ TTableDef extends DbSchema.TableDef<
13
+ DbSchema.DefaultSqliteTableDefConstrained,
14
+ boolean,
15
+ DbSchema.TableOptions & { deriveMutations: { enabled: true } }
16
+ >,
17
+ >(
18
+ table: TTableDef,
19
+ ) => ({
12
20
  insert: deriveCreateMutationDef(table),
13
21
  update: deriveUpdateMutationDef(table),
14
22
  delete: deriveDeleteMutationDef(table),
15
23
  })
16
24
 
17
- export const deriveCreateMutationDef = <TTableDef extends DbSchema.TableDef>(table: TTableDef) => {
25
+ export const deriveCreateMutationDef = <
26
+ TTableDef extends DbSchema.TableDef<
27
+ DbSchema.DefaultSqliteTableDefConstrained,
28
+ boolean,
29
+ DbSchema.TableOptions & { deriveMutations: { enabled: true } }
30
+ >,
31
+ >(
32
+ table: TTableDef,
33
+ ) => {
18
34
  const tableName = table.sqliteDef.name
19
35
 
20
36
  const [optionalFields, requiredColumns] = ReadonlyRecord.partition(
@@ -26,20 +42,33 @@ export const deriveCreateMutationDef = <TTableDef extends DbSchema.TableDef>(tab
26
42
  Schema.extend(Schema.partial(Schema.Struct(ReadonlyRecord.map(optionalFields, (col) => col.schema)))),
27
43
  )
28
44
 
29
- return defineMutation(`_Derived_Create_${tableName}`, insertSchema, ({ id, ...explicitDefaultValues }) => {
30
- const defaultValues = DbSchema.getDefaultValuesDecoded(table, explicitDefaultValues)
45
+ return defineMutation(
46
+ `_Derived_Create_${tableName}`,
47
+ insertSchema,
48
+ ({ id, ...explicitDefaultValues }) => {
49
+ const defaultValues = DbSchema.getDefaultValuesDecoded(table, explicitDefaultValues)
31
50
 
32
- const [sql, bindValues] = insertRow({
33
- tableName: table.sqliteDef.name,
34
- columns: table.sqliteDef.columns,
35
- values: { ...defaultValues, id },
36
- })
51
+ const [sql, bindValues] = insertRow({
52
+ tableName: table.sqliteDef.name,
53
+ columns: table.sqliteDef.columns,
54
+ values: { ...defaultValues, id },
55
+ })
37
56
 
38
- return { sql, bindValues, writeTables: new Set([tableName]) }
39
- })
57
+ return { sql, bindValues, writeTables: new Set([tableName]) }
58
+ },
59
+ { localOnly: table.options.deriveMutations.localOnly },
60
+ )
40
61
  }
41
62
 
42
- export const deriveUpdateMutationDef = <TTableDef extends DbSchema.TableDef>(table: TTableDef) => {
63
+ export const deriveUpdateMutationDef = <
64
+ TTableDef extends DbSchema.TableDef<
65
+ DbSchema.DefaultSqliteTableDefConstrained,
66
+ boolean,
67
+ DbSchema.TableOptions & { deriveMutations: { enabled: true } }
68
+ >,
69
+ >(
70
+ table: TTableDef,
71
+ ) => {
43
72
  const tableName = table.sqliteDef.name
44
73
 
45
74
  return defineMutation(
@@ -58,10 +87,19 @@ export const deriveUpdateMutationDef = <TTableDef extends DbSchema.TableDef>(tab
58
87
 
59
88
  return { sql, bindValues, writeTables: new Set([tableName]) }
60
89
  },
90
+ { localOnly: table.options.deriveMutations.localOnly },
61
91
  )
62
92
  }
63
93
 
64
- export const deriveDeleteMutationDef = <TTableDef extends DbSchema.TableDef>(table: TTableDef) => {
94
+ export const deriveDeleteMutationDef = <
95
+ TTableDef extends DbSchema.TableDef<
96
+ DbSchema.DefaultSqliteTableDefConstrained,
97
+ boolean,
98
+ DbSchema.TableOptions & { deriveMutations: { enabled: true } }
99
+ >,
100
+ >(
101
+ table: TTableDef,
102
+ ) => {
65
103
  const tableName = table.sqliteDef.name
66
104
 
67
105
  return defineMutation(
@@ -78,6 +116,7 @@ export const deriveDeleteMutationDef = <TTableDef extends DbSchema.TableDef>(tab
78
116
 
79
117
  return { sql, bindValues, writeTables: new Set([tableName]) }
80
118
  },
119
+ { localOnly: table.options.deriveMutations.localOnly },
81
120
  )
82
121
  }
83
122
 
@@ -12,7 +12,7 @@ import {
12
12
  rawSqlMutation,
13
13
  } from './mutations.js'
14
14
  import { systemTables } from './system-tables.js'
15
- import type { TableDef } from './table-def.js'
15
+ import { type TableDef, tableHasDerivedMutations } from './table-def.js'
16
16
 
17
17
  export * from './system-tables.js'
18
18
  export * as DbSchema from './table-def.js'
@@ -84,7 +84,7 @@ export const makeSchema = <TInputSchema extends InputSchema>(
84
84
  mutations.set(rawSqlMutation.name, rawSqlMutation)
85
85
 
86
86
  for (const tableDef of tables.values()) {
87
- if (tableDef.options.deriveMutations) {
87
+ if (tableHasDerivedMutations(tableDef)) {
88
88
  const derivedMutationDefs = makeDerivedMutationDefsForTable(tableDef)
89
89
  mutations.set(derivedMutationDefs.insert.name, derivedMutationDefs.insert)
90
90
  mutations.set(derivedMutationDefs.update.name, derivedMutationDefs.update)
@@ -35,6 +35,12 @@ export type MutationDef<TName extends string, TFrom, TTo> = {
35
35
  name: TName
36
36
  schema: Schema.Schema<TTo, TFrom>
37
37
  sql: MutationDefSqlResult<TTo>
38
+ options: {
39
+ /**
40
+ * When set to true, the mutation won't be synced over the network
41
+ */
42
+ localOnly: boolean
43
+ }
38
44
 
39
45
  /** Helper function to construct mutation event */
40
46
  (args: TTo): { mutation: TName; args: TTo; id: string }
@@ -49,12 +55,19 @@ export const defineMutation = <TName extends string, TFrom, TTo>(
49
55
  name: TName,
50
56
  schema: Schema.Schema<TTo, TFrom>,
51
57
  sql: MutationDefSqlResult<TTo>,
58
+ options?: {
59
+ /**
60
+ * When set to true, the mutation won't be synced over the network
61
+ */
62
+ localOnly?: boolean
63
+ },
52
64
  ): MutationDef<TName, TFrom, TTo> => {
53
65
  const makeEvent = (args: TTo) => ({ mutation: name, args, id: cuid() })
54
66
 
55
67
  Object.defineProperty(makeEvent, 'name', { value: name })
56
68
  Object.defineProperty(makeEvent, 'schema', { value: schema })
57
69
  Object.defineProperty(makeEvent, 'sql', { value: sql })
70
+ Object.defineProperty(makeEvent, 'options', { value: { localOnly: options?.localOnly ?? false } })
58
71
 
59
72
  return makeEvent as MutationDef<TName, TFrom, TTo>
60
73
  }
@@ -40,7 +40,7 @@ export const systemTables = [schemaMetaTable, schemaMutationsMetaTable]
40
40
 
41
41
  /// Mutation log DB
42
42
 
43
- export const SyncStatus = Schema.Literal('synced', 'pending', 'error')
43
+ export const SyncStatus = Schema.Literal('synced', 'pending', 'error', 'localOnly')
44
44
  export type SyncStatus = typeof SyncStatus.Type
45
45
 
46
46
  export const MUTATION_LOG_META_TABLE = 'mutation_log'
@@ -60,9 +60,21 @@ export type TableDef<
60
60
  isSingleColumn: TIsSingleColumn
61
61
  options: TOptions
62
62
  schema: TSchema
63
- } & (TOptions['deriveMutations'] extends true ? DerivedMutationHelperFns<TSqliteDef['columns'], TOptions> : {})
64
-
65
- export type TableOptionsInput = Partial<Omit<TableOptions, 'isSingleColumn'> & { indexes: SqliteDsl.Index[] }>
63
+ } & (TOptions['deriveMutations']['enabled'] extends true
64
+ ? DerivedMutationHelperFns<TSqliteDef['columns'], TOptions>
65
+ : {})
66
+
67
+ export type TableOptionsInput = Partial<
68
+ Omit<TableOptions, 'isSingleColumn' | 'deriveMutations'> & {
69
+ indexes: SqliteDsl.Index[]
70
+ deriveMutations:
71
+ | boolean
72
+ | {
73
+ enabled: true
74
+ localOnly?: boolean
75
+ }
76
+ }
77
+ >
66
78
 
67
79
  export type TableOptions = {
68
80
  /**
@@ -89,7 +101,15 @@ export type TableOptions = {
89
101
  *
90
102
  * Important: When using this option, make sure you're following the "Rules of mutations" for the table schema.
91
103
  */
92
- deriveMutations: boolean
104
+ deriveMutations:
105
+ | { enabled: false }
106
+ | {
107
+ enabled: true
108
+ /**
109
+ * When set to true, the mutations won't be synced over the network
110
+ */
111
+ localOnly: boolean
112
+ }
93
113
  /** Derived based on whether the table definition has one or more columns (besides the `id` column) */
94
114
  isSingleColumn: boolean
95
115
  }
@@ -121,7 +141,14 @@ export const table = <
121
141
  isSingleton: options?.isSingleton ?? false,
122
142
  dynamicRegistration: options?.dynamicRegistration ?? false,
123
143
  disableAutomaticIdColumn: options?.disableAutomaticIdColumn ?? false,
124
- deriveMutations: options?.deriveMutations ?? false,
144
+ deriveMutations:
145
+ options?.deriveMutations === true
146
+ ? { enabled: true as const, localOnly: false }
147
+ : options?.deriveMutations === false
148
+ ? { enabled: false as const }
149
+ : options?.deriveMutations === undefined
150
+ ? { enabled: false as const }
151
+ : { enabled: true as const, localOnly: options.deriveMutations.localOnly ?? false },
125
152
  isSingleColumn: SqliteDsl.isColumnDefinition(columnOrColumns) === true,
126
153
  }
127
154
 
@@ -189,9 +216,9 @@ export const table = <
189
216
  export const tableHasDerivedMutations = <TTableDef extends TableDef>(
190
217
  tableDef: TTableDef,
191
218
  ): tableDef is TTableDef & {
192
- options: { deriveMutations: true }
219
+ options: { deriveMutations: { enabled: true; localOnly: boolean } }
193
220
  } & DerivedMutationHelperFns<TTableDef['sqliteDef']['columns'], TTableDef['options']> =>
194
- tableDef.options.deriveMutations === true
221
+ tableDef.options.deriveMutations.enabled === true
195
222
 
196
223
  export const tableIsSingleton = <TTableDef extends TableDef>(
197
224
  tableDef: TTableDef,
@@ -258,7 +285,16 @@ type WithDefaults<TOptionsInput extends TableOptionsInput, TIsSingleColumn exten
258
285
  isSingleton: TOptionsInput['isSingleton'] extends true ? true : false
259
286
  dynamicRegistration: TOptionsInput['dynamicRegistration'] extends true ? true : false
260
287
  disableAutomaticIdColumn: TOptionsInput['disableAutomaticIdColumn'] extends true ? true : false
261
- deriveMutations: TOptionsInput['deriveMutations'] extends true ? true : false
288
+ deriveMutations: TOptionsInput['deriveMutations'] extends true
289
+ ? { enabled: true; localOnly: boolean }
290
+ : TOptionsInput['deriveMutations'] extends false
291
+ ? { enabled: false }
292
+ : TOptionsInput['deriveMutations'] extends { enabled: true; localOnly?: boolean }
293
+ ? {
294
+ enabled: true
295
+ localOnly: TOptionsInput['deriveMutations']['localOnly'] extends true ? true : false
296
+ }
297
+ : never
262
298
  isSingleColumn: TIsSingleColumn
263
299
  }
264
300
 
@@ -150,7 +150,7 @@ const createIndexFromDefinition = (tableName: string, index: SqliteAst.Index) =>
150
150
  return sql`create ${uniqueStr} index ${index.name} on ${tableName} (${index.columns.join(', ')})`
151
151
  }
152
152
 
153
- const makeColumnSpec = (tableAst: SqliteAst.Table) => {
153
+ export const makeColumnSpec = (tableAst: SqliteAst.Table) => {
154
154
  const primaryKeys = tableAst.columns.filter((_) => _.primaryKey).map((_) => _.name)
155
155
  const columnDefStrs = tableAst.columns.map(toSqliteColumnSpec)
156
156
  if (primaryKeys.length > 0) {
package/src/sync/sync.ts CHANGED
@@ -10,5 +10,9 @@ export type SyncImpl = {
10
10
  }
11
11
 
12
12
  export class IsOfflineError extends Schema.TaggedError<IsOfflineError>()('IsOfflineError', {}) {}
13
- export class InvalidPushError extends Schema.TaggedError<InvalidPushError>()('InvalidPushError', {}) {}
14
- export class InvalidPullError extends Schema.TaggedError<InvalidPullError>()('InvalidPullError', {}) {}
13
+ export class InvalidPushError extends Schema.TaggedError<InvalidPushError>()('InvalidPushError', {
14
+ message: Schema.String,
15
+ }) {}
16
+ export class InvalidPullError extends Schema.TaggedError<InvalidPullError>()('InvalidPullError', {
17
+ message: Schema.String,
18
+ }) {}