orez-lite 0.10.7 → 0.11.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.
Files changed (71) hide show
  1. package/dist/browser/host.d.ts.map +1 -1
  2. package/dist/browser/host.js +8 -29
  3. package/dist/browser/host.js.map +1 -1
  4. package/dist/browser/types.d.ts +4 -2
  5. package/dist/browser/types.d.ts.map +1 -1
  6. package/dist/browser/types.js.map +1 -1
  7. package/dist/cf-do/application-sql.d.ts +24 -5
  8. package/dist/cf-do/application-sql.d.ts.map +1 -1
  9. package/dist/cf-do/application-sql.js +51 -43
  10. package/dist/cf-do/application-sql.js.map +1 -1
  11. package/dist/cf-do/worker.d.ts +74 -14
  12. package/dist/cf-do/worker.d.ts.map +1 -1
  13. package/dist/cf-do/worker.js +195 -92
  14. package/dist/cf-do/worker.js.map +1 -1
  15. package/dist/do-sql-tracking.d.ts +17 -0
  16. package/dist/do-sql-tracking.d.ts.map +1 -1
  17. package/dist/do-sql-tracking.js +17 -0
  18. package/dist/do-sql-tracking.js.map +1 -1
  19. package/dist/realtime/host.d.ts +7 -0
  20. package/dist/realtime/host.d.ts.map +1 -0
  21. package/dist/realtime/host.js +77 -0
  22. package/dist/realtime/host.js.map +1 -0
  23. package/dist/realtime/hub.d.ts +10 -5
  24. package/dist/realtime/hub.d.ts.map +1 -1
  25. package/dist/realtime/hub.js +133 -53
  26. package/dist/realtime/hub.js.map +1 -1
  27. package/dist/realtime/index.d.ts +15 -2
  28. package/dist/realtime/index.d.ts.map +1 -1
  29. package/dist/realtime/index.js +12 -0
  30. package/dist/realtime/index.js.map +1 -1
  31. package/dist/realtime/local.d.ts +15 -0
  32. package/dist/realtime/local.d.ts.map +1 -0
  33. package/dist/realtime/local.js +63 -0
  34. package/dist/realtime/local.js.map +1 -0
  35. package/dist/realtime/manifest.d.ts +5 -1
  36. package/dist/realtime/manifest.d.ts.map +1 -1
  37. package/dist/realtime/manifest.js +1 -1
  38. package/dist/realtime/manifest.js.map +1 -1
  39. package/dist/realtime/message-port.d.ts +34 -0
  40. package/dist/realtime/message-port.d.ts.map +1 -0
  41. package/dist/realtime/message-port.js +141 -0
  42. package/dist/realtime/message-port.js.map +1 -0
  43. package/dist/realtime/producer-socket.d.ts +10 -0
  44. package/dist/realtime/producer-socket.d.ts.map +1 -0
  45. package/dist/realtime/producer-socket.js +90 -0
  46. package/dist/realtime/producer-socket.js.map +1 -0
  47. package/dist/realtime/producer.d.ts +16 -0
  48. package/dist/realtime/producer.d.ts.map +1 -0
  49. package/dist/realtime/producer.js +51 -0
  50. package/dist/realtime/producer.js.map +1 -0
  51. package/dist/realtime/protocol.d.ts +38 -2
  52. package/dist/realtime/protocol.d.ts.map +1 -1
  53. package/dist/realtime/protocol.js +34 -0
  54. package/dist/realtime/protocol.js.map +1 -1
  55. package/dist/realtime/publisher.d.ts +1 -0
  56. package/dist/realtime/publisher.d.ts.map +1 -1
  57. package/dist/realtime/publisher.js +29 -1
  58. package/dist/realtime/publisher.js.map +1 -1
  59. package/dist/realtime/socket-host.d.ts +25 -0
  60. package/dist/realtime/socket-host.d.ts.map +1 -0
  61. package/dist/realtime/socket-host.js +95 -0
  62. package/dist/realtime/socket-host.js.map +1 -0
  63. package/dist/realtime/store.d.ts +4 -4
  64. package/dist/realtime/store.d.ts.map +1 -1
  65. package/dist/realtime/store.js +0 -0
  66. package/dist/realtime/store.js.map +1 -1
  67. package/dist/realtime/writer.d.ts +17 -0
  68. package/dist/realtime/writer.d.ts.map +1 -0
  69. package/dist/realtime/writer.js +138 -0
  70. package/dist/realtime/writer.js.map +1 -0
  71. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../sync-browser-host/src/host.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAY,MAAM,YAAY,CAAA;AAClF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAGV,QAAQ,EAOT,MAAM,oBAAoB,CAAA;AAO3B,MAAM,MAAM,yBAAyB,GACjC,iBAAiB,GACjB,sCAAsC,GACtC,uCAAuC,GACvC,kCAAkC,GAClC,0BAA0B,CAAA;AAE9B,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,KAAK,EAAE,yBAAyB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9D,CAAA;AA2kBD,wBAAgB,6BAA6B,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,QAAQ,EAChF,MAAM,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,EACnC,KAAK,CAAC,EAAE,oBAAoB,GAC3B,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAE7B;AAED,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,QAAQ,EACxE,MAAM,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,GAClC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAE7B"}
1
+ {"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../../sync-browser-host/src/host.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAY,MAAM,YAAY,CAAA;AAClF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EAGV,QAAQ,EAOT,MAAM,oBAAoB,CAAA;AAO3B,MAAM,MAAM,yBAAyB,GACjC,iBAAiB,GACjB,sCAAsC,GACtC,uCAAuC,GACvC,kCAAkC,GAClC,0BAA0B,CAAA;AAE9B,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,KAAK,EAAE,yBAAyB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9D,CAAA;AAujBD,wBAAgB,6BAA6B,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,QAAQ,EAChF,MAAM,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,EACnC,KAAK,CAAC,EAAE,oBAAoB,GAC3B,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAE7B;AAED,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,QAAQ,EACxE,MAAM,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,GAClC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAE7B"}
@@ -1,4 +1,5 @@
1
1
  import createSqliteModule from 'bedrock-sqlite/browser';
2
+ import { resolveQueryPatch } from 'orez-sync-cf-host/query-patch';
2
3
  import { createSyncExecutor } from 'orez-sync-executor/core';
3
4
  import { engine_compile_query, engine_handle_pull, engine_handle_query_pull, engine_init_query_schema, engine_init_schema, engine_prune, } from './generated/sync_wasm.js';
4
5
  import initSyncWasm from './generated/sync_wasm.js';
@@ -74,8 +75,8 @@ function validateConfig(config) {
74
75
  throw new TypeError('storageKey must not be empty');
75
76
  if (!config.mutators)
76
77
  throw new TypeError('mutators are required');
77
- if (config.queryAware && !config.resolveQuery) {
78
- throw new TypeError('queryAware requires resolveQuery');
78
+ if (config.queryAware && !config.resolveQueries) {
79
+ throw new TypeError('queryAware requires resolveQueries');
79
80
  }
80
81
  const caps = { ...DEFAULT_CAPS, ...config.caps };
81
82
  for (const [name, value] of Object.entries(caps)) {
@@ -229,7 +230,7 @@ class BrowserSyncHostImpl {
229
230
  await host.#writeTransaction('bootstrap', async () => {
230
231
  config.initialize(host.#directSql);
231
232
  engine_init_schema(host.#engineDb, config.schema);
232
- if (config.queryAware || config.resolveQuery) {
233
+ if (config.queryAware || config.resolveQueries) {
233
234
  engine_init_query_schema(host.#engineDb);
234
235
  }
235
236
  });
@@ -350,32 +351,10 @@ class BrowserSyncHostImpl {
350
351
  const queries = body.queries;
351
352
  if (!Array.isArray(queries.patch))
352
353
  return body;
353
- const patch = [];
354
- for (const operation of queries.patch) {
355
- if (!operation || typeof operation !== 'object') {
356
- patch.push(operation);
357
- continue;
358
- }
359
- const entry = operation;
360
- if (entry.op !== 'put') {
361
- patch.push(operation);
362
- continue;
363
- }
364
- if (!this.config.resolveQuery || typeof entry.name !== 'string') {
365
- throw requestError('query put requires a server-resolved named query');
366
- }
367
- if (!Array.isArray(entry.args)) {
368
- throw requestError('named query args must be an array');
369
- }
370
- let ast;
371
- try {
372
- ast = await this.config.resolveQuery(entry.name, entry.args, authData);
373
- }
374
- catch {
375
- throw requestError(`unknown or unsupported named query: ${entry.name}`);
376
- }
377
- patch.push({ op: 'put', hash: entry.hash, ast, transformVersion });
354
+ if (!this.config.resolveQueries) {
355
+ throw requestError('query put requires a server-resolved named query');
378
356
  }
357
+ const patch = await resolveQueryPatch(queries.patch, (requests) => this.config.resolveQueries(requests, authData), transformVersion, requestError);
379
358
  return { ...body, queries: { ...queries, patch } };
380
359
  }
381
360
  async handlePull(request) {
@@ -387,7 +366,7 @@ class BrowserSyncHostImpl {
387
366
  this.#assertAvailable();
388
367
  const queryAware = typeof this.config.queryAware === 'function'
389
368
  ? this.config.queryAware(authData)
390
- : (this.config.queryAware ?? Boolean(this.config.resolveQuery));
369
+ : (this.config.queryAware ?? Boolean(this.config.resolveQueries));
391
370
  const transformVersion = queryAware
392
371
  ? typeof this.config.queryTransformVersion === 'function'
393
372
  ? this.config.queryTransformVersion(authData)
@@ -1 +1 @@
1
- {"version":3,"file":"host.js","sourceRoot":"","sources":["../../../sync-browser-host/src/host.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,wBAAwB,EACxB,wBAAwB,EACxB,kBAAkB,EAClB,YAAY,GACb,MAAM,0BAA0B,CAAA;AACjC,OAAO,YAAY,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,GAEd,MAAM,qBAAqB,CAAA;AAgB5B,MAAM,YAAY,GAAa;IAC7B,aAAa,EAAE,MAAM;IACrB,cAAc,EAAE,SAAS;CAC1B,CAAA;AAaD,IAAI,aAAwC,CAAA;AAE5C,SAAS,kBAAkB,CAAC,GAAiB;IAC3C,OAAO,CAAC,aAAa,KAAK,YAAY,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;AACxF,CAAC;AAED,SAAS,IAAI,CAAC,KAAc,EAAE,MAAM,GAAG,GAAG;IACxC,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE;QAC1B,MAAM;QACN,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,EAAE;KACzC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC/D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;QACrE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACnC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG;YAAE,OAAO,MAAM,CAAA;IAC/E,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,OAAe,EAAE,MAAM,GAAG,GAAG;IACjD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;AACtD,CAAC;AAED,8EAA8E;AAC9E,yEAAyE;AACzE,6EAA6E;AAC7E,uEAAuE;AACvE,SAAS,iBAAiB,CACxB,IAA6B,EAC7B,UAAmB,EACnB,QAAiB;IAEjB,IAAI,UAAU;QAAE,OAAO,QAAQ,CAAA;IAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,OAA+D,CAAA;IACpF,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACrF,OAAO,QAAQ,CAAA;IACjB,CAAC;IACD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAC9D,OAAO;QACL,GAAG,QAAQ;QACX,UAAU,EAAE;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC9B,MAAM,KAAK,GAAG,EAAsC,CAAA;gBACpD,OAAO,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YAClE,CAAC,CAAC;SACH;KACF,CAAA;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,OAAgB;IAC3C,IAAI,KAAc,CAAA;IAClB,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,YAAY,CAAC,2BAA2B,CAAC,CAAA;IACjD,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,YAAY,CAAC,oCAAoC,CAAC,CAAA;IAC1D,CAAC;IACD,OAAO,KAAgC,CAAA;AACzC,CAAC;AAED,SAAS,cAAc,CACrB,MAAmC;IAEnC,IAAI,CAAC,MAAM,CAAC,UAAU;QAAE,MAAM,IAAI,SAAS,CAAC,8BAA8B,CAAC,CAAA;IAC3E,IAAI,CAAC,MAAM,CAAC,QAAQ;QAAE,MAAM,IAAI,SAAS,CAAC,uBAAuB,CAAC,CAAA;IAClE,IAAI,MAAM,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAC9C,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAA;IACzD,CAAC;IACD,MAAM,IAAI,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,CAAA;IAChD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,SAAS,CAAC,QAAQ,IAAI,kCAAkC,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,sBAAsB,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC1E,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtD,MAAM,IAAI,SAAS,CACjB,0BAA0B,IAAI,kCAAkC,CACjE,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,KAAK,CAAA;IACnD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,SAAS,CAAC,mDAAmD,CAAC,CAAA;IAC1E,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,cAAc;IAClB,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAA;IAEzB,GAAG,CAAQ,SAAuC;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACzC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CACtB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAA;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,KAAK,CAAA;IAClB,CAAC;CACF;AAED,MAAM,mBAAmB;IAkBJ;IACA;IACA;IACA;IACA;IACA;IAnBV,QAAQ,CAAiB;IACzB,MAAM,GAAG,IAAI,cAAc,EAAE,CAAA;IAC7B,UAAU,GAAG,IAAI,GAAG,EAAc,CAAA;IAClC,UAAU,CAAkB;IAC5B,SAAS,CAAe;IACxB,WAAW,CAAmB;IAC9B,YAAY,CAAiB;IAC7B,cAAc,CAAQ;IAC/B,wBAAwB,GAA0B,QAAQ,CAAA;IAC1D,WAAW,CAAmB;IAC9B,OAAO,GAAG,KAAK,CAAA;IACf,aAAa,CAA2B;IAExC,YACmB,MAAmC,EACnC,IAAc,EACd,MAA4B,EAC5B,EAAkD,EAClD,SAAiC,EACjC,KAA4B;QAL5B,WAAM,GAAN,MAAM,CAA6B;QACnC,SAAI,GAAJ,IAAI,CAAU;QACd,WAAM,GAAN,MAAM,CAAsB;QAC5B,OAAE,GAAF,EAAE,CAAgD;QAClD,cAAS,GAAT,SAAS,CAAwB;QACjC,UAAK,GAAL,KAAK,CAAuB;QAE7C,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAA;QAC1C,IAAI,CAAC,SAAS,GAAG,IAAI,aAAa,CAAC,EAAE,CAAC,CAAA;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,iBAAiB,CACtC,IAAI,CAAC,UAAU,EACf,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EACjE,MAAM,CAAC,sBAAsB,CAC9B,CAAA;QACD,MAAM,QAAQ,GAAwB;YACpC,OAAO,EAAE,QAAQ;YACjB,WAAW,EAAE,KAAK,EAChB,IAA4D,EAC5C,EAAE;gBAClB,IAAI,gBAAgB,GAAG,KAAK,CAAA;gBAC5B,MAAM,EAAE,GAA2B;oBACjC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;wBACpC,IACE,QAAQ,KAAK,SAAS;4BACtB,CAAC,CAAC,kCAAkC,CAAC,IAAI,CAAC,GAAG,CAAC;gCAC5C,CAAC,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EACxC,CAAC;4BACD,gBAAgB,GAAG,IAAI,CAAA;wBACzB,CAAC;wBACD,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;oBACrD,CAAC;oBACD,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC;oBAC3D,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CACnC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC;iBACpD,CAAA;gBACD,OAAO,IAAI,CAAC,iBAAiB,CAC3B,GAAG,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,aAAa,CAAC,EACxE,KAAK,IAAI,EAAE;oBACT,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,CAAA;oBAC5B,IAAI,gBAAgB,IAAI,IAAI,CAAC,wBAAwB,KAAK,UAAU,EAAE,CAAC;wBACrE,MAAM,IAAI,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAA;oBAC3D,CAAC;oBACD,OAAO,KAAK,CAAA;gBACd,CAAC,CACF,CAAA;YACH,CAAC;YACD,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;SAC5E,CAAA;QACD,IAAI,CAAC,YAAY,GAAG,kBAAkB,CAAC;YACrC,QAAQ;YACR,OAAO,EAAE;gBACP,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO;gBACnC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC;aAC/E;YACD,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,GAAG;YACd,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;gBACrB,IAAI,CAAC,gBAAgB,EAAE,CAAA;gBACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;YAC1E,CAAC;YACD,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;gBAC9B,IAAI,CAAC,gBAAgB,EAAE,CAAA;gBACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;oBAChC,IAAI,CAAC,wBAAwB,GAAG,QAAQ,CAAA;oBACxC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;oBACnD,IAAI,CAAC,kBAAkB,EAAE,CAAA;gBAC3B,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,WAAW,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;gBAC5B,IAAI,CAAC,gBAAgB,EAAE,CAAA;gBACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;oBAChC,IAAI,CAAC,wBAAwB,GAAG,QAAQ,CAAA;oBACxC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;oBAC/D,IAAI,CAAC,kBAAkB,EAAE,CAAA;oBACzB,OAAO,KAAK,CAAA;gBACd,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,CAAC,gBAAgB,EAAE,CAAA;gBACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAA;YACrE,CAAC;SACF,CAAA;QACD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,IAAI,KAAK,CAAC,CAAA;IAC7D,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,MAAmC,EACnC,KAA4B;QAE5B,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;QACnC,MAAM,aAAa,GACjB,MAAM,CAAC,MAAM,EAAE,aAAa;YAC5B,IAAI,GAAG,CAAC,kCAAkC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC9D,MAAM,WAAW,GACf,MAAM,CAAC,MAAM,EAAE,WAAW;YAC1B,IAAI,GAAG,CAAC,+BAA+B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC3D,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAA;QAErC,MAAM,MAAM,GAAG,CAAC,MAAM,kBAAkB,CAAC;YACvC,UAAU,EAAE,CAAC,IAAY,EAAE,EAAE,CAC3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI;SACxD,CAAC,CAAyB,CAAA;QAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;QACnF,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,sBAAsB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC/D,MAAM,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC/B,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QAC7C,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;QAChF,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC3C,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,MAAM,SAAS,CAAC,KAAK,EAAE,CAAA;YACvB,MAAM,IAAI,KAAK,CAAC,qDAAqD,WAAW,EAAE,CAAC,CAAA;QACrF,CAAC;QACD,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;QAE9B,MAAM,IAAI,GAAG,IAAI,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;QAChF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;gBACnD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBAClC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;gBACjD,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;oBAC7C,wBAAwB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAC1C,CAAC;YACH,CAAC,CAAC,CAAA;YACF,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,eAAe,EAAE,CAAA;YAC5B,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,CAAC,WAAW,CAAA;QAC5C,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;IAClE,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QACtE,IAAI,CAAC,gBAAgB,EAAE,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAgC;QAC3C,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,IAAI,KAAK,CACrB,wDAAwD,YAAY,CAAC,KAAK,CAAC,EAAE,EAC7E,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAA;YACD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;YACxB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;YACf,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,IAMiD,EACjD,SAAuC;QAEvC,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACrB,IAAI,KAAY,CAAA;QAChB,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,SAAS,EAAE,CAAA;YACzB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa;gBAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACnD,MAAM,KAAK,CAAA;QACb,CAAC;QACD,MAAM,aAAa,GAAG,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QAChE,IAAI,aAAa,KAAK,UAAU,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,MAAM,CAAC,uCAAuC,CAAC,CAAA;QAC5D,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QACxB,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAgB;QAI1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACxD,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,CAAC,EAAE,KAAK,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7E,MAAM,YAAY,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAA;QACnD,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;YAC9E,MAAM,YAAY,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;QACtC,CAAC;QACD,MAAM,MAAM,GAA8B,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,IAAI,MAAM,EAAE,CAAA;QAC5E,IAAI,QAAQ;YAAE,MAAM,CAAC,QAAQ,GAAG,QAAgC,CAAA;QAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAA0B,EAAE,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,IAAa,EACb,MAAwB,EACxB,SAAkB;QAElB,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,wBAAwB,GAAG,UAAU,CAAA;QAC1C,IAAI,MAAkB,CAAA;QACtB,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACrD,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,wBAAwB,GAAG,QAAQ,CAAA;QAC1C,CAAC;QACD,MAAM,eAAe,GACnB,WAAW,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;QACzE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,CAC/C,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAClD,CAAA;QACH,CAAC;QACD,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAClC,CAAC,QAAQ,EAAE,EAAE,CACX,CAAC,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,KAAK,kBAAkB,CAChF,CAAA;QACD,IAAI,OAAO;YAAE,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACtC,IAAI,SAAS,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAA;QACvD,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,WAAW,CAAC,MAAwB;QAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU;YAAE,OAAO,IAAI,CAAA;QACxC,OAAO;YACL,QAAQ,EACN,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,KAAK,UAAU;gBACnD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ;YACrC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;gBAC5D,OAAO,MAAM;oBACX,CAAC,CAAC;wBACE,MAAM,CAAC,IAAI,KAAK,YAAY;4BAC1B,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE;4BAC9D,CAAC,CAAC;gCACE,IAAI,EAAE,KAAK;gCACX,KAAK;gCACL,GAAG,EAAE,MAAM,CAAC,GAAG;gCACf,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;6BACnC;qBACN;oBACH,CAAC,CAAC,EAAE,CAAA;YACR,CAAC,CAAC;SACH,CAAA;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,IAA6B,EAC7B,QAAkB,EAClB,UAAmB,EACnB,gBAAwB;QAExB,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiD,CAAA;QACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAE9C,MAAM,KAAK,GAAG,EAAE,CAAA;QAChB,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACtC,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAChD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBACrB,SAAQ;YACV,CAAC;YACD,MAAM,KAAK,GAAG,SAAoC,CAAA;YAClD,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBACrB,SAAQ;YACV,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAChE,MAAM,YAAY,CAAC,kDAAkD,CAAC,CAAA;YACxE,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/B,MAAM,YAAY,CAAC,mCAAmC,CAAC,CAAA;YACzD,CAAC;YACD,IAAI,GAAc,CAAA;YAClB,IAAI,CAAC;gBACH,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAClC,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,IAAmB,EACzB,QAAQ,CACT,CAAA;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,YAAY,CAAC,uCAAuC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;YACzE,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAA;QACpE,CAAC;QACD,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,EAAE,CAAA;IACpD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAgB;QAC/B,IAAI,CAAC;YACH,IAAI,CAAC,gBAAgB,EAAE,CAAA;YACvB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACtD,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAA;YAC1C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;gBACtC,IAAI,CAAC,gBAAgB,EAAE,CAAA;gBACvB,MAAM,UAAU,GACd,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,UAAU;oBAC1C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;oBAClC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAA;gBACnE,MAAM,gBAAgB,GAAG,UAAU;oBACjC,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,KAAK,UAAU;wBACvD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,QAAQ,CAAC;wBAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,IAAI,CAAC,CAAC;oBAC5C,CAAC,CAAC,CAAC,CAAA;gBACL,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;oBACpE,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAA;gBAClF,CAAC;gBACD,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,mBAAmB,CACvC,KAAK,EACL,QAAQ,EACR,UAAU,EACV,gBAAgB,CACjB,CAAA;gBACD,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,CAAA;gBACpE,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,CACzD,UAAU;oBACR,CAAC,CAAC,wBAAwB,CACtB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CAAC,MAAM,EAClB,IAAI,CAAC,cAAc,EACnB,IAAI,EACJ,MAAM,CAAC,MAAM,CACd;oBACH,CAAC,CAAC,kBAAkB,CAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CAAC,MAAM,EAClB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EACxB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,cAAc,EACnB,IAAI,EACJ,MAAM,CAAC,MAAM,CACd,CACN,CAAA;gBACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAA;YAC5D,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;QAC9D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAgB;QAC/B,IAAI,CAAC;YACH,IAAI,CAAC,gBAAgB,EAAE,CAAA;YACvB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC5C,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAA;YACzC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;gBACtC,IAAI,CAAC,gBAAgB,EAAE,CAAA;gBACvB,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;gBACpC,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAA;YAC9D,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;QAC9D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAgB;QACpB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAA;QAC9C,IAAI,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACjC,CAAC;QACD,IAAI,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACjC,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,CAAC,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,KAAK,CACT,GAAW,EACX,SAA6B,EAAE;QAE/B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE;YAChC,IAAI,CAAC,gBAAgB,EAAE,CAAA;YACvB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAM,GAAG,EAAE,MAAM,CAAC,CAAA;QAChD,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CACR,GAAW,EACX,SAA6B,EAAE,EAC/B,QAA+B;QAE/B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,CACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAC5C,CAAA;YACD,IAAI,CAAC,kBAAkB,EAAE,CAAA;YACzB,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,CAAC,QAAoB;QAC5B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7B,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC/C,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAA;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAA;QACnE,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,QAAQ,EAAE,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAA;YACnE,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QACvB,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI;YAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAA;QACjC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACnB,MAAM,IAAI,CAAC,eAAe,EAAE,CAAA;IAC9B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,YAAY,EAAE,CAAA;QAC1C,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;CACF;AAED,MAAM,UAAU,6BAA6B,CAC3C,MAAmC,EACnC,KAA4B;IAE5B,OAAO,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AAClD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,MAAmC;IAEnC,OAAO,6BAA6B,CAAC,MAAM,CAAC,CAAA;AAC9C,CAAC"}
1
+ {"version":3,"file":"host.js","sourceRoot":"","sources":["../../../sync-browser-host/src/host.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { Schema } from '@rocicorp/zero';
2
+ import type { QueryResolution, QueryResolutionRequest } from 'orez-sync-cf-host/query-patch';
2
3
  import type { TransactionQueryBudget } from 'orez-sync-cf-host/transaction-query';
3
- import type { AuthData, ExecResult, JsonValue, MutatorRegistry, SqlStatementMetadata, SyncExecutor, VisibilityConfig } from 'orez-sync-executor';
4
+ import type { AuthData, ExecResult, MutatorRegistry, SqlStatementMetadata, SyncExecutor, VisibilityConfig } from 'orez-sync-executor';
4
5
  export { visibility, type VisibilityExpression, type VisibilityFilter, type VisibilityOperand, type VisibilityValue, } from 'orez-sync-cf-host/visibility';
5
6
  export type { VisibilityConfig } from 'orez-sync-executor';
6
7
  export interface SyncSql {
@@ -25,7 +26,8 @@ export type BrowserSyncHostConfig<S extends Schema = Schema, A extends AuthData
25
26
  mutators: MutatorRegistry<S>;
26
27
  visibility?: VisibilityConfig;
27
28
  queryAware?: boolean | ((authData: A | null) => boolean);
28
- resolveQuery?: (name: string, args: readonly JsonValue[], authData: A | null) => JsonValue | Promise<JsonValue>;
29
+ /** Resolve every named query in one desired-query patch, in one call. */
30
+ resolveQueries?: (requests: readonly QueryResolutionRequest[], authData: A | null) => readonly QueryResolution[] | Promise<readonly QueryResolution[]>;
29
31
  queryTransformVersion?: number | ((authData: A | null) => number);
30
32
  retainChanges?: number;
31
33
  caps?: Partial<PullCaps>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../sync-browser-host/src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../sync-browser-host/src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EACvB,MAAM,+BAA+B,CAAA;AACtC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAA;AACjF,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EAEV,eAAe,EACf,oBAAoB,EACpB,YAAY,EACZ,gBAAgB,EACjB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EACL,UAAU,EACV,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,eAAe,GACrB,MAAM,8BAA8B,CAAA;AACrC,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAE1D,MAAM,WAAW,OAAO;IACtB,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,EAC3B,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,UAAU,CAAA;IACb,KAAK,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjE,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,GAC1B,GAAG,EAAE,CAAA;CACT;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,aAAa,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,qBAAqB,CAC/B,CAAC,SAAS,MAAM,GAAG,MAAM,EACzB,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAC3B;IACF,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,qBAAqB,CAAA;IAC9B,MAAM,EAAE,CAAC,CAAA;IACT,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAA;IAC9B,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;IAC5D,SAAS,CACP,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,CAAC,GAAG,IAAI,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7B,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,CAAA;IAC5B,UAAU,CAAC,EAAE,gBAAgB,CAAA;IAC7B,UAAU,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,KAAK,OAAO,CAAC,CAAA;IACxD,yEAAyE;IACzE,cAAc,CAAC,EAAE,CACf,QAAQ,EAAE,SAAS,sBAAsB,EAAE,EAC3C,QAAQ,EAAE,CAAC,GAAG,IAAI,KACf,SAAS,eAAe,EAAE,GAAG,OAAO,CAAC,SAAS,eAAe,EAAE,CAAC,CAAA;IACrE,qBAAqB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,IAAI,KAAK,MAAM,CAAC,CAAA;IACjE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;IACxB,sBAAsB,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAA;IACxD,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;CAC3B,CAAA;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACxD,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAA;IAClC,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC/C,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC/C,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC1C,KAAK,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjE,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,GAC1B,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IACjB,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,EAC3B,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,UAAU,CAAC,CAAA;IACtB,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAA;IAC3C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,GAAG,OAAO,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC3E,KAAK,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjE,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,GAC1B,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IACjB,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,EAC3B,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,UAAU,CAAC,CAAA;IACtB,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAA;IAC3C,KAAK,IAAI,IAAI,CAAA;CACd"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../sync-browser-host/src/types.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,UAAU,GAKX,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../sync-browser-host/src/types.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,UAAU,GAKX,MAAM,8BAA8B,CAAA"}
@@ -13,14 +13,25 @@ export type ApplicationSqlTransaction = {
13
13
  registerTables(tables: readonly ApplicationSqlTable[]): Promise<void>;
14
14
  };
15
15
  export type ApplicationSqlTransactionWork<Value> = (tx: ApplicationSqlTransaction) => Value | Promise<Value>;
16
+ /**
17
+ * Admission lane for one application SQLite session.
18
+ *
19
+ * A read session shares the database with every other read session and refuses
20
+ * mutating SQL. A write session (the default) excludes every other session for
21
+ * its whole life, which is what the row-undo journal needs to be able to roll
22
+ * one transaction back without stepping on another's images.
23
+ */
24
+ export type ApplicationSqlSessionOptions = {
25
+ readOnly?: boolean;
26
+ };
16
27
  /**
17
28
  * private durable object RPC protocol. the session capability is returned
18
- * before it asks for ownership. waiting retries hold no durable object state,
19
- * and a cancellation signal closes a queued session or rolls back an active
20
- * session before rejecting work.
29
+ * before it asks for ownership, and `begin()` resolves when the durable object
30
+ * grants this session its turn in arrival order. a cancellation signal closes a
31
+ * queued session or rolls back an active session before rejecting work.
21
32
  */
22
33
  export type ApplicationSqlSessionRpc = Disposable & {
23
- begin(): Promise<boolean>;
34
+ begin(): Promise<void>;
24
35
  query<Row extends Record<string, unknown> = Record<string, unknown>>(sql: string, params?: readonly unknown[]): Promise<Row[]>;
25
36
  exec(sql: string, params?: readonly unknown[], metadata?: SqlStatementMetadata): Promise<ApplicationSqlExecResult>;
26
37
  queryPlan<Result = unknown>(plan: CompiledTransactionQueryPlan, queryName?: string, queryBudget?: Partial<TransactionQueryBudget>): Promise<Result>;
@@ -29,7 +40,8 @@ export type ApplicationSqlSessionRpc = Disposable & {
29
40
  rollback(): Promise<void>;
30
41
  };
31
42
  export type ApplicationSqlRpc = {
32
- applicationSqlSession(sessionID: string): Promise<ApplicationSqlSessionRpc>;
43
+ applicationSqlSession(sessionID: string, options?: ApplicationSqlSessionOptions): Promise<ApplicationSqlSessionRpc>;
44
+ applicationSqlQuery<Row extends Record<string, unknown> = Record<string, unknown>>(sql: string, params?: readonly unknown[]): Promise<Row[]>;
33
45
  };
34
46
  export type ApplicationSqlDurableObjectNamespace = {
35
47
  idFromName(name: string): unknown;
@@ -41,6 +53,13 @@ export type ApplicationSqlClient = {
41
53
  exec(sql: string, params?: readonly unknown[], metadata?: SqlStatementMetadata): Promise<ApplicationSqlExecResult>;
42
54
  registerTables(tables: readonly ApplicationSqlTable[]): Promise<void>;
43
55
  transaction<Value>(compileQuery: ApplicationSqlQueryCompiler, work: ApplicationSqlTransactionWork<Value>, queryBudget?: Partial<TransactionQueryBudget>): Promise<Value>;
56
+ /**
57
+ * Same statements, read-only admission. Concurrent read transactions run
58
+ * together instead of queueing behind each other, and no write session can be
59
+ * admitted while any of them is open, so each still sees one committed state
60
+ * for its whole life. A mutating statement is rejected rather than escalated.
61
+ */
62
+ readTransaction<Value>(compileQuery: ApplicationSqlQueryCompiler, work: ApplicationSqlTransactionWork<Value>, queryBudget?: Partial<TransactionQueryBudget>): Promise<Value>;
44
63
  };
45
64
  export type ApplicationSqlClientOptions = {
46
65
  signal?: AbortSignal;
@@ -1 +1 @@
1
- {"version":3,"file":"application-sql.d.ts","sourceRoot":"","sources":["../../src/cf-do/application-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application-sql.d.ts","sourceRoot":"","sources":["../../src/cf-do/application-sql.ts"],"names":[],"mappings":"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"}
@@ -50,32 +50,41 @@ var __disposeResources = (this && this.__disposeResources) || (function (Suppres
50
50
  var e = new Error(message);
51
51
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
52
52
  });
53
- async function withApplicationSqlSession(target, signal, work) {
53
+ function canceled(signal) {
54
+ return (signal.reason ??
55
+ new DOMException('application SQLite request was canceled', 'AbortError'));
56
+ }
57
+ async function raceAbort(signal, pending) {
58
+ if (!signal)
59
+ return pending;
60
+ // once the abort wins the race nothing observes `pending` again, and a
61
+ // canceled session's admission is rejected by the durable object on rollback.
62
+ void pending.catch(() => { });
63
+ signal.throwIfAborted();
64
+ let rejectAbort = () => { };
65
+ const aborted = new Promise((_resolve, reject) => {
66
+ rejectAbort = reject;
67
+ });
68
+ void aborted.catch(() => { });
69
+ const abort = () => rejectAbort(canceled(signal));
70
+ signal.addEventListener('abort', abort, { once: true });
71
+ try {
72
+ return await Promise.race([pending, aborted]);
73
+ }
74
+ finally {
75
+ signal.removeEventListener('abort', abort);
76
+ }
77
+ }
78
+ async function withApplicationSqlSession(target, signal, sessionOptions, work) {
54
79
  const env_1 = { stack: [], error: void 0, hasError: false };
55
80
  try {
56
- const session = __addDisposableResource(env_1, await target.applicationSqlSession(crypto.randomUUID()), false);
57
- let rejectAbort;
58
- const aborted = signal
59
- ? new Promise((_resolve, reject) => {
60
- rejectAbort = reject;
61
- })
62
- : undefined;
63
- void aborted?.catch(() => { });
64
- const abort = () => {
65
- rejectAbort?.(signal?.reason ??
66
- new DOMException('application SQLite request was canceled', 'AbortError'));
67
- };
68
- signal?.addEventListener('abort', abort, { once: true });
81
+ const session = __addDisposableResource(env_1, await target.applicationSqlSession(crypto.randomUUID(), sessionOptions), false);
69
82
  try {
70
- signal?.throwIfAborted();
71
- while (!(await session.begin())) {
72
- await new Promise((resolve) => setTimeout(resolve, 25));
73
- signal?.throwIfAborted();
74
- }
75
- const pendingWork = work(session);
76
- const value = aborted
77
- ? await Promise.race([Promise.resolve(pendingWork), aborted])
78
- : await pendingWork;
83
+ // The durable object grants turns in arrival order, so this settles the
84
+ // moment the turn is this session's rather than on the next poll tick.
85
+ // Cancellation races the grant; rollback then drops the queued session.
86
+ await raceAbort(signal, session.begin());
87
+ const value = await raceAbort(signal, Promise.resolve(work(session)));
79
88
  signal?.throwIfAborted();
80
89
  await session.commit();
81
90
  return value;
@@ -84,9 +93,6 @@ async function withApplicationSqlSession(target, signal, work) {
84
93
  await session.rollback().catch(() => { });
85
94
  throw error;
86
95
  }
87
- finally {
88
- signal?.removeEventListener('abort', abort);
89
- }
90
96
  }
91
97
  catch (e_1) {
92
98
  env_1.error = e_1;
@@ -100,25 +106,27 @@ export function createApplicationSqlClient(durableObjects, namespace, options =
100
106
  if (!namespace)
101
107
  throw new TypeError('application SQLite namespace is required');
102
108
  const target = durableObjects.get(durableObjects.idFromName(namespace));
109
+ const session = (sessionOptions, work) => withApplicationSqlSession(target, options.signal, sessionOptions, work);
110
+ const transaction = (sessionOptions, compileQuery, work, queryBudget) => session(sessionOptions, (active) => work({
111
+ exec: (sql, params = [], metadata) => active.exec(sql, params, metadata),
112
+ query: (sql, params = []) => active.query(sql, params),
113
+ async queryAst(ast, format, queryName) {
114
+ const plan = await compileQuery(ast, format);
115
+ return active.queryPlan(plan, queryName, queryBudget);
116
+ },
117
+ registerTables: (tables) => active.registerTables(tables),
118
+ }));
103
119
  return {
104
120
  namespace,
105
- query: (sql, params = []) => withApplicationSqlSession(target, options.signal, (session) => session.query(sql, params)),
106
- exec: (sql, params = [], metadata) => withApplicationSqlSession(target, options.signal, (session) => session.exec(sql, params, metadata)),
107
- registerTables: (tables) => withApplicationSqlSession(target, options.signal, (session) => session.registerTables(tables)),
108
- async transaction(compileQuery, work, queryBudget) {
109
- return withApplicationSqlSession(target, options.signal, async (session) => {
110
- const tx = {
111
- exec: (sql, params = [], metadata) => session.exec(sql, params, metadata),
112
- query: (sql, params = []) => session.query(sql, params),
113
- async queryAst(ast, format, queryName) {
114
- const plan = await compileQuery(ast, format);
115
- return session.queryPlan(plan, queryName, queryBudget);
116
- },
117
- registerTables: (tables) => session.registerTables(tables),
118
- };
119
- return work(tx);
120
- });
121
- },
121
+ // One statement is already atomic, so it needs no session round trips of
122
+ // its own: the durable object opens, admits, runs and closes a read session
123
+ // inside this single call. Cancellation only stops waiting for the answer,
124
+ // which is free to abandon because a read leaves nothing behind.
125
+ query: (sql, params = []) => raceAbort(options.signal, target.applicationSqlQuery(sql, params)),
126
+ exec: (sql, params = [], metadata) => session({}, (active) => active.exec(sql, params, metadata)),
127
+ registerTables: (tables) => session({}, (active) => active.registerTables(tables)),
128
+ transaction: (compileQuery, work, queryBudget) => transaction({}, compileQuery, work, queryBudget),
129
+ readTransaction: (compileQuery, work, queryBudget) => transaction({ readOnly: true }, compileQuery, work, queryBudget),
122
130
  };
123
131
  }
124
132
  //# sourceMappingURL=application-sql.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application-sql.js","sourceRoot":"","sources":["../../src/cf-do/application-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application-sql.js","sourceRoot":"","sources":["../../src/cf-do/application-sql.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { DurableObject, RpcTarget } from 'cloudflare:workers';
2
2
  import { type CompiledTransactionQueryPlan, type TransactionQueryBudget } from 'orez-sync-cf-host/transaction-query';
3
- import type { ApplicationSqlClient, ApplicationSqlExecResult, ApplicationSqlTable } from './application-sql.js';
3
+ import type { ApplicationSqlClient, ApplicationSqlExecResult, ApplicationSqlSessionOptions, ApplicationSqlTable } from './application-sql.js';
4
4
  import type { SqlStatementMetadata, TransactionQueryFormat } from 'orez-sync-executor';
5
5
  export { createApplicationSqlClient } from './application-sql.js';
6
- export type { ApplicationSqlClient, ApplicationSqlClientOptions, ApplicationSqlDurableObjectNamespace, ApplicationSqlExecResult, ApplicationSqlQueryCompiler, ApplicationSqlRpc, ApplicationSqlSessionRpc, ApplicationSqlTable, ApplicationSqlTransaction, ApplicationSqlTransactionWork, } from './application-sql.js';
6
+ export type { ApplicationSqlClient, ApplicationSqlClientOptions, ApplicationSqlDurableObjectNamespace, ApplicationSqlExecResult, ApplicationSqlQueryCompiler, ApplicationSqlRpc, ApplicationSqlSessionOptions, ApplicationSqlSessionRpc, ApplicationSqlTable, ApplicationSqlTransaction, ApplicationSqlTransactionWork, } from './application-sql.js';
7
7
  export type { SqlStatementMetadata } from 'orez-sync-executor';
8
8
  /**
9
9
  * SQLite Durable Object used by Orez Lite.
@@ -25,7 +25,7 @@ export type ZeroDOTransactionExecutor = {
25
25
  query<Row extends Record<string, unknown> = Record<string, unknown>>(sql: string, params?: readonly unknown[]): Promise<Row[]>;
26
26
  queryAst<Result = unknown>(ast: unknown, format: TransactionQueryFormat, queryName?: string): Promise<Result>;
27
27
  };
28
- type ApplicationSqlSessionState = 'created' | 'active' | 'closed';
28
+ type ApplicationSqlSessionState = 'created' | 'waiting' | 'active' | 'closed';
29
29
  declare const APPLICATION_SQL_ACQUIRE: unique symbol;
30
30
  declare const APPLICATION_SQL_QUERY: unique symbol;
31
31
  declare const APPLICATION_SQL_EXEC: unique symbol;
@@ -37,11 +37,12 @@ declare const APPLICATION_SQL_DISPOSE: unique symbol;
37
37
  declare class ApplicationSqlSessionTarget extends RpcTarget {
38
38
  readonly owner: ZeroDO;
39
39
  readonly sessionID: string;
40
+ readonly readOnly: boolean;
40
41
  state: ApplicationSqlSessionState;
41
42
  changed: boolean;
42
43
  mutated: boolean;
43
- constructor(owner: ZeroDO, sessionID: string);
44
- begin(): Promise<boolean>;
44
+ constructor(owner: ZeroDO, sessionID: string, readOnly: boolean);
45
+ begin(): Promise<void>;
45
46
  query<Row extends Record<string, unknown> = Record<string, unknown>>(sql: string, params?: readonly unknown[]): Promise<Row[]>;
46
47
  exec(sql: string, params?: readonly unknown[], metadata?: SqlStatementMetadata): Promise<ApplicationSqlExecResult>;
47
48
  queryPlan<Result = unknown>(plan: CompiledTransactionQueryPlan, queryName?: string, queryBudget?: Partial<TransactionQueryBudget>): Promise<Result>;
@@ -62,7 +63,9 @@ export declare class ZeroDO extends DurableObject {
62
63
  private activeWriteMeasurements;
63
64
  private writeBudgetTripStatement;
64
65
  private pendingChangesSchemaReady;
65
- private activeApplicationSqlSession;
66
+ private applicationSqlWriter;
67
+ private applicationSqlReaders;
68
+ private applicationSqlQueue;
66
69
  protected applicationSqlDidCommit(_changed: boolean, _mutated: boolean): void;
67
70
  private recordWriteBudgetRows;
68
71
  /**
@@ -146,16 +149,49 @@ export declare class ZeroDO extends DurableObject {
146
149
  */
147
150
  protected runApplicationTransaction<T>(compileQuery: ZeroDOQueryCompiler, work: (tx: ZeroDOTransactionExecutor) => T | Promise<T>, queryBudget?: Partial<TransactionQueryBudget>): Promise<T>;
148
151
  private assertApplicationSqlSession;
149
- [APPLICATION_SQL_ACQUIRE](session: ApplicationSqlSessionTarget): boolean;
152
+ /**
153
+ * Read sessions never mutate, so no lane can escalate and there is nothing to
154
+ * deadlock over: a reader waits only on the writer, and the writer waits only
155
+ * on the reader set draining.
156
+ */
157
+ private canAdmitApplicationSqlSession;
158
+ /**
159
+ * Admit from the head of the arrival queue and stop at the first waiter that
160
+ * cannot run yet.
161
+ *
162
+ * The stop is what makes this fair. Scanning past a blocked writer to admit
163
+ * younger readers would let a steady read load hold the turn away from it
164
+ * indefinitely, which is the starvation the competitive `begin()` poll this
165
+ * replaces produced in production: callers raced a 25 ms timer for one
166
+ * ownership flag, so admission order was decided by poll phase, and sessions
167
+ * that had arrived ten seconds earlier watched later ones complete.
168
+ */
169
+ private pumpApplicationSqlQueue;
170
+ /**
171
+ * Join the arrival queue and resolve when this session owns its turn.
172
+ *
173
+ * A waiting session holds one queue entry and one timer, and nothing else:
174
+ * cancellation, rollback and RPC stub disposal all route through
175
+ * `releaseApplicationSqlTurn`, which drops the entry and re-pumps. The
176
+ * deadline bounds a queue entry whose caller neither cancels nor disposes,
177
+ * and reports the wait as an error instead of hanging the request.
178
+ */
179
+ [APPLICATION_SQL_ACQUIRE](session: ApplicationSqlSessionTarget): Promise<void>;
180
+ /**
181
+ * Close a session in any state and hand the turn to the next arrival.
182
+ *
183
+ * A session that is still queued has never touched SQLite, so dropping its
184
+ * queue entry is the whole of its cleanup.
185
+ */
150
186
  private releaseApplicationSqlTurn;
151
187
  private withApplicationSqlTurn;
152
188
  /**
153
189
  * drive one application SQLite session from INSIDE this durable object.
154
190
  *
155
191
  * identical to the client-side session helper in application-sql.ts — same
156
- * ownership acquisition, same per-statement journal, same commit/rollback —
157
- * except the begin poll and every statement are local calls instead of RPCs.
158
- * the caller must already be running in this object.
192
+ * admission, same per-statement journal, same commit/rollback — except every
193
+ * call is local instead of an RPC. the caller must already be running in this
194
+ * object.
159
195
  */
160
196
  private withLocalApplicationSqlSession;
161
197
  /**
@@ -173,17 +209,41 @@ export declare class ZeroDO extends DurableObject {
173
209
  private registerApplicationSqlTables;
174
210
  /**
175
211
  * private durable object RPC surface for the application SQLite client. the
176
- * disposable target exists before ownership acquisition, so waiting callers
177
- * hold no server state and active cancellation rolls back the transaction.
178
- * this method is intentionally absent from fetch().
212
+ * disposable target exists before admission, so a queued caller can cancel by
213
+ * disposing it and an active one rolls its transaction back. this method is
214
+ * intentionally absent from fetch().
179
215
  */
180
- applicationSqlSession(sessionID: string): Promise<ApplicationSqlSessionTarget>;
216
+ applicationSqlSession(sessionID: string, options?: ApplicationSqlSessionOptions): Promise<ApplicationSqlSessionTarget>;
217
+ /**
218
+ * Run one read statement end to end in a single round trip.
219
+ *
220
+ * A single statement is already atomic, so a session that exists only to
221
+ * carry it costs four sequential RPCs (open, admit, run, commit) for one
222
+ * SELECT — the shape every authenticated read on the sync path pays. This
223
+ * opens, admits, runs and closes the same read session locally instead.
224
+ */
225
+ applicationSqlQuery<Row extends Record<string, unknown> = Record<string, unknown>>(sql: string, params?: readonly unknown[]): Promise<Row[]>;
181
226
  private prepareApplicationSqlMutation;
227
+ /**
228
+ * A read session declared its lane before it was admitted, and readers run
229
+ * alongside each other on the strength of that declaration. Escalating one
230
+ * mid-session would strand every other reader on a state that is no longer
231
+ * committed, so a mutation here is an error rather than an upgrade.
232
+ */
233
+ private assertApplicationSqlStatement;
182
234
  [APPLICATION_SQL_QUERY]<Row extends Record<string, unknown> = Record<string, unknown>>(session: ApplicationSqlSessionTarget, sql: string, params?: readonly unknown[]): Promise<Row[]>;
183
235
  [APPLICATION_SQL_EXEC](session: ApplicationSqlSessionTarget, sql: string, params?: readonly unknown[], metadata?: SqlStatementMetadata): Promise<ApplicationSqlExecResult>;
184
236
  [APPLICATION_SQL_QUERY_PLAN]<Result = unknown>(session: ApplicationSqlSessionTarget, plan: CompiledTransactionQueryPlan, queryName?: string, queryBudget?: Partial<TransactionQueryBudget>): Promise<Result>;
185
237
  [APPLICATION_SQL_REGISTER_TABLES](session: ApplicationSqlSessionTarget, tables: readonly ApplicationSqlTable[]): Promise<void>;
186
238
  [APPLICATION_SQL_COMMIT](session: ApplicationSqlSessionTarget): Promise<void>;
239
+ /**
240
+ * Undo whatever this session wrote and hand its turn on.
241
+ *
242
+ * Rollback, cancellation and RPC stub disposal are the same operation: a
243
+ * session that never reached SQLite only has to leave the queue, and one that
244
+ * did has to replay its row images before releasing.
245
+ */
246
+ private closeApplicationSqlSession;
187
247
  [APPLICATION_SQL_ROLLBACK](session: ApplicationSqlSessionTarget): Promise<void>;
188
248
  [APPLICATION_SQL_DISPOSE](session: ApplicationSqlSessionTarget): void;
189
249
  private atomicallySync;
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cf-do/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/cf-do/worker.ts"],"names":[],"mappings":"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"}