@workerstack/database 0.22.0 → 0.23.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 (121) hide show
  1. package/README.md +95 -30
  2. package/docs/meta-contract.md +1 -1
  3. package/package.json +3 -2
  4. package/src/cli/args.ts +4 -2
  5. package/src/cli/codegen.ts +2 -2
  6. package/src/cli/comb-config.ts +8 -3
  7. package/src/cli/file-path.ts +25 -0
  8. package/src/cli/migrate-apply.ts +5 -21
  9. package/src/cli/migrate-d1.ts +5 -1
  10. package/src/cli/migrate-json.ts +48 -0
  11. package/src/cli/migrate.ts +26 -4
  12. package/src/formats/bcp47.ts +12 -0
  13. package/src/formats/catalog.ts +27 -4
  14. package/src/index.ts +1 -0
  15. package/src/migrate/core/apply.ts +63 -22
  16. package/src/migrate/core/atlas-apply-runs.ts +15 -26
  17. package/src/migrate/core/cleanup.ts +22 -10
  18. package/src/migrate/core/d1-engine-child.mjs +27 -11
  19. package/src/migrate/core/d1-history.ts +23 -26
  20. package/src/migrate/core/d1-wrangler-error.ts +24 -1
  21. package/src/migrate/core/pg-replay-commit.ts +41 -38
  22. package/src/migrate/core/pg-replay-drops.ts +17 -32
  23. package/src/migrate/core/pg-replay-hidden.ts +75 -0
  24. package/src/migrate/core/pg-replay-roles.ts +2 -4
  25. package/src/migrate/core/pg-replay.ts +21 -19
  26. package/src/migrate/core/pg-server-snapshot.ts +4 -24
  27. package/src/migrate/core/proof-readers.ts +80 -0
  28. package/src/migrate/core/proof-run.ts +19 -5
  29. package/src/migrate/core/proof-scope.ts +27 -14
  30. package/src/migrate/core/sql-code.ts +36 -5
  31. package/src/migrate/core/sql-scan.ts +7 -1
  32. package/src/migrate/core/sqlite-keywords.ts +70 -0
  33. package/src/migrate/core/stopped.ts +70 -0
  34. package/src/migrate/core/trigger-write.d.mts +7 -0
  35. package/src/migrate/core/trigger-write.mjs +42 -0
  36. package/src/query/cursor-mint.ts +11 -18
  37. package/src/query/cursor-refusals.ts +22 -11
  38. package/src/query/descriptions.ts +4 -9
  39. package/src/query/filter-parse.ts +80 -22
  40. package/src/query/filter-validate.ts +10 -13
  41. package/src/query/filter.ts +40 -18
  42. package/src/query/list-extras.ts +7 -10
  43. package/src/query/list-schema.ts +0 -2
  44. package/src/query/merged.ts +3 -2
  45. package/src/query/pagination.ts +30 -6
  46. package/src/query/rounded-key.ts +5 -8
  47. package/src/query/schema-params.ts +12 -5
  48. package/src/query/select-validate.ts +7 -4
  49. package/src/query/sqlite/cursor-fit.ts +10 -2
  50. package/src/query/trusted.ts +7 -2
  51. package/types/cli/args.d.ts.map +1 -1
  52. package/types/cli/comb-config.d.ts +5 -2
  53. package/types/cli/comb-config.d.ts.map +1 -1
  54. package/types/cli/file-path.d.ts +11 -0
  55. package/types/cli/file-path.d.ts.map +1 -0
  56. package/types/cli/migrate-apply.d.ts +1 -0
  57. package/types/cli/migrate-apply.d.ts.map +1 -1
  58. package/types/cli/migrate-d1.d.ts.map +1 -1
  59. package/types/cli/migrate-json.d.ts +4 -0
  60. package/types/cli/migrate-json.d.ts.map +1 -0
  61. package/types/cli/migrate.d.ts.map +1 -1
  62. package/types/formats/bcp47.d.ts +9 -0
  63. package/types/formats/bcp47.d.ts.map +1 -0
  64. package/types/formats/catalog.d.ts.map +1 -1
  65. package/types/index.d.ts +1 -0
  66. package/types/index.d.ts.map +1 -1
  67. package/types/migrate/core/apply.d.ts +3 -2
  68. package/types/migrate/core/apply.d.ts.map +1 -1
  69. package/types/migrate/core/atlas-apply-runs.d.ts +6 -0
  70. package/types/migrate/core/atlas-apply-runs.d.ts.map +1 -1
  71. package/types/migrate/core/cleanup.d.ts +16 -4
  72. package/types/migrate/core/cleanup.d.ts.map +1 -1
  73. package/types/migrate/core/d1-history.d.ts.map +1 -1
  74. package/types/migrate/core/d1-wrangler-error.d.ts +11 -0
  75. package/types/migrate/core/d1-wrangler-error.d.ts.map +1 -1
  76. package/types/migrate/core/pg-replay-commit.d.ts +14 -9
  77. package/types/migrate/core/pg-replay-commit.d.ts.map +1 -1
  78. package/types/migrate/core/pg-replay-drops.d.ts +7 -12
  79. package/types/migrate/core/pg-replay-drops.d.ts.map +1 -1
  80. package/types/migrate/core/pg-replay-hidden.d.ts +36 -0
  81. package/types/migrate/core/pg-replay-hidden.d.ts.map +1 -0
  82. package/types/migrate/core/pg-replay-roles.d.ts +2 -4
  83. package/types/migrate/core/pg-replay-roles.d.ts.map +1 -1
  84. package/types/migrate/core/pg-replay.d.ts.map +1 -1
  85. package/types/migrate/core/pg-server-snapshot.d.ts +4 -11
  86. package/types/migrate/core/pg-server-snapshot.d.ts.map +1 -1
  87. package/types/migrate/core/proof-readers.d.ts +19 -0
  88. package/types/migrate/core/proof-readers.d.ts.map +1 -0
  89. package/types/migrate/core/proof-run.d.ts.map +1 -1
  90. package/types/migrate/core/proof-scope.d.ts +15 -7
  91. package/types/migrate/core/proof-scope.d.ts.map +1 -1
  92. package/types/migrate/core/sql-code.d.ts +7 -3
  93. package/types/migrate/core/sql-code.d.ts.map +1 -1
  94. package/types/migrate/core/sql-scan.d.ts.map +1 -1
  95. package/types/migrate/core/sqlite-keywords.d.ts +11 -0
  96. package/types/migrate/core/sqlite-keywords.d.ts.map +1 -0
  97. package/types/migrate/core/stopped.d.ts +23 -0
  98. package/types/migrate/core/stopped.d.ts.map +1 -0
  99. package/types/query/cursor-mint.d.ts.map +1 -1
  100. package/types/query/cursor-refusals.d.ts +17 -1
  101. package/types/query/cursor-refusals.d.ts.map +1 -1
  102. package/types/query/descriptions.d.ts +1 -1
  103. package/types/query/descriptions.d.ts.map +1 -1
  104. package/types/query/filter-parse.d.ts +15 -4
  105. package/types/query/filter-parse.d.ts.map +1 -1
  106. package/types/query/filter-validate.d.ts +1 -1
  107. package/types/query/filter-validate.d.ts.map +1 -1
  108. package/types/query/filter.d.ts +9 -1
  109. package/types/query/filter.d.ts.map +1 -1
  110. package/types/query/list-extras.d.ts.map +1 -1
  111. package/types/query/list-schema.d.ts.map +1 -1
  112. package/types/query/merged.d.ts.map +1 -1
  113. package/types/query/pagination.d.ts +13 -1
  114. package/types/query/pagination.d.ts.map +1 -1
  115. package/types/query/rounded-key.d.ts +2 -11
  116. package/types/query/rounded-key.d.ts.map +1 -1
  117. package/types/query/schema-params.d.ts.map +1 -1
  118. package/types/query/select-validate.d.ts.map +1 -1
  119. package/types/query/sqlite/cursor-fit.d.ts.map +1 -1
  120. package/types/query/trusted.d.ts +1 -1
  121. package/types/query/trusted.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"proof-scope.d.ts","sourceRoot":"","sources":["../../../src/migrate/core/proof-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAgBjD,QAAA,MAAM,SAAS,WAAY,UAAU,KAAG,OAAsD,CAAA;AAyB9F;;;GAGG;AACH,iBAAS,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAMrF;AAED,kFAAkF;AAClF,QAAA,MAAM,SAAS,WAAY,UAAU,KAAG,MAAM,EAC8D,CAAA;AA6B5G,8HAA8H;AAC9H,KAAK,KAAK,GAAG;IAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAE,CAAA;AA6E3D;;;GAGG;AACH,iBAAS,UAAU,CAClB,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,KAAK,EAAE,aAAa,CAAC;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,EACrC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAC1B,KAAK,CA4CP;AAED,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"proof-scope.d.ts","sourceRoot":"","sources":["../../../src/migrate/core/proof-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAgBjD,QAAA,MAAM,SAAS,WAAY,UAAU,KAAG,OAAsD,CAAA;AAyB9F;;;GAGG;AACH,iBAAS,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,SAAS,CAUtG;AAED,kFAAkF;AAClF,QAAA,MAAM,SAAS,WAAY,UAAU,KAAG,MAAM,EAC8D,CAAA;AAE5G;;;GAGG;AACH,QAAA,MAAM,YAAY,WAAY,UAAU,KAAG,GAAG,CAAC,MAAM,CAC0D,CAAA;AAyB/G,8HAA8H;AAC9H,KAAK,KAAK,GAAG;IAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAE,CAAA;AA6E3D;;;GAGG;AACH,iBAAS,UAAU,CAClB,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,KAAK,EAAE,aAAa,CAAC;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,EACrC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,GAC1B,KAAK,CAgDP;AAED,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAA"}
@@ -50,9 +50,13 @@ declare function pragmaOf(code: string): Pragma | undefined;
50
50
  /** A whole name as SQLite resolves it, each part folded, with the schema it was written with (`main."Post"` is `main.post`) */
51
51
  declare const qualifiedKey: (name: string) => string;
52
52
  /**
53
- * Every name SQLite code can spell, as SQLite resolves one: each bare word and each quoted name unquoted, and each
54
- * word of a string, which SQLite reads as a name where one stands (`FROM 'post'`) and a module as its option's
55
- * (`content='post'`), folded by asciiFold; never a word of a comment
53
+ * Every name SQLite code can spell, as SQLite resolves one: each quoted name unquoted, each word of a string, which
54
+ * SQLite reads as a name where one stands (`FROM 'post'`) and a module as its option's (`content='post'`), and each
55
+ * bare word that can be one, all folded by asciiFold; never a word of a comment. A bare keyword is no name
56
+ * where SQLite's grammar takes none: `TABLE`, `CREATE`, `NULL` and the rest of NEVER_NAMES whenever it is bare, and
57
+ * `KEY` after `PRIMARY` or `FOREIGN`, which no name can follow. So a table named `table` is named by `"table"` and
58
+ * not by the `CREATE TABLE` of every file. Any other bare word may be a name and is read as one: a name read
59
+ * where there is none only widens what a proof copies, a name missed would narrow it
56
60
  */
57
61
  declare function sqliteNames(sql: string): Set<string>;
58
62
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"sql-code.d.ts","sourceRoot":"","sources":["../../../src/migrate/core/sql-code.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAG1C,wEAAwE;AACxE,QAAA,MAAM,KAAK,EAAE,MAAqG,CAAA;AAClH,uCAAuC;AACvC,QAAA,MAAM,KAAK,EAAE,MAA2C,CAAA;AAWxD,kEAAkE;AAClE,QAAA,MAAM,OAAO,SAAU,MAAM,KAAG,MAAmF,CAAA;AAEnH,wEAAwE;AACxE,QAAA,MAAM,QAAQ,SAAU,MAAM,KAAG,MAAmD,CAAA;AAEpF;;;GAGG;AACH,KAAK,MAAM,GAAG,QAAQ,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAE3C,6DAA6D;AAC7D,QAAA,MAAM,QAAQ,YAAa,OAAO,sBAAsB,MAAwD,CAAA;AAEhH,0CAA0C;AAC1C,QAAA,MAAM,SAAS,WAAY,MAAM,KAAG,OAAwD,CAAA;AAE5F;;;;;GAKG;AACH,iBAAS,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAMrD;AAED;;;GAGG;AACH,QAAA,MAAM,SAAS,SAAU,MAAM,KAAG,MAAqE,CAAA;AAQvG;;;GAGG;AACH,KAAK,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AAetG,6GAA6G;AAC7G,iBAAS,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAUlD;AAED,+HAA+H;AAC/H,QAAA,MAAM,YAAY,SAAU,MAAM,KAAG,MAC2C,CAAA;AAEhF;;;;GAIG;AACH,iBAAS,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAE7C;AAcD;;;;GAIG;AACH,iBAAS,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,GAAG,CAAC,MAAM,CAAa,GAAG,GAAG,CAAC,MAAM,CAAC,CAWzE;AAED,wEAAwE;AACxE,iBAAS,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAa7C;AAED,uFAAuF;AACvF,iBAAS,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAStC;AAED,OAAO,EACN,SAAS,EACT,SAAS,EACT,KAAK,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,KAAK,MAAM,EACX,QAAQ,EACR,KAAK,MAAM,EACX,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,aAAa,EACb,WAAW,EACX,QAAQ,EACR,OAAO,GACP,CAAA"}
1
+ {"version":3,"file":"sql-code.d.ts","sourceRoot":"","sources":["../../../src/migrate/core/sql-code.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAI1C,wEAAwE;AACxE,QAAA,MAAM,KAAK,EAAE,MAAqG,CAAA;AAClH,uCAAuC;AACvC,QAAA,MAAM,KAAK,EAAE,MAA2C,CAAA;AAWxD,kEAAkE;AAClE,QAAA,MAAM,OAAO,SAAU,MAAM,KAAG,MAAmF,CAAA;AAEnH,wEAAwE;AACxE,QAAA,MAAM,QAAQ,SAAU,MAAM,KAAG,MAAmD,CAAA;AAEpF;;;GAGG;AACH,KAAK,MAAM,GAAG,QAAQ,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAE3C,6DAA6D;AAC7D,QAAA,MAAM,QAAQ,YAAa,OAAO,sBAAsB,MAAwD,CAAA;AAEhH,0CAA0C;AAC1C,QAAA,MAAM,SAAS,WAAY,MAAM,KAAG,OAAwD,CAAA;AAE5F;;;;;GAKG;AACH,iBAAS,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAMrD;AAED;;;GAGG;AACH,QAAA,MAAM,SAAS,SAAU,MAAM,KAAG,MAAqE,CAAA;AAQvG;;;GAGG;AACH,KAAK,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AAetG,6GAA6G;AAC7G,iBAAS,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAUlD;AAED,+HAA+H;AAC/H,QAAA,MAAM,YAAY,SAAU,MAAM,KAAG,MAC2C,CAAA;AAKhF;;;;;;;;GAQG;AACH,iBAAS,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAyB7C;AAcD;;;;GAIG;AACH,iBAAS,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,GAAG,CAAC,MAAM,CAAa,GAAG,GAAG,CAAC,MAAM,CAAC,CAWzE;AAED,wEAAwE;AACxE,iBAAS,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAa7C;AAED,uFAAuF;AACvF,iBAAS,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAStC;AAED,OAAO,EACN,SAAS,EACT,SAAS,EACT,KAAK,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,KAAK,MAAM,EACX,QAAQ,EACR,KAAK,MAAM,EACX,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,aAAa,EACb,WAAW,EACX,QAAQ,EACR,OAAO,GACP,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"sql-scan.d.ts","sourceRoot":"","sources":["../../../src/migrate/core/sql-scan.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AA2E1C;;;;;GAKG;AACH,iBAAS,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,OAAkB,GAAG,MAAM,EAAE,CAc9E;AAKD;;;;;;;GAOG;AACH,iBAAS,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,UAAQ,GAAG,MAAM,CAEvD;AAED;;;;GAIG;AACH,iBAAS,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzC;AAkBD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
1
+ {"version":3,"file":"sql-scan.d.ts","sourceRoot":"","sources":["../../../src/migrate/core/sql-scan.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAiF1C;;;;;GAKG;AACH,iBAAS,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,OAAkB,GAAG,MAAM,EAAE,CAc9E;AAKD;;;;;;;GAOG;AACH,iBAAS,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,UAAQ,GAAG,MAAM,CAEvD;AAED;;;;GAIG;AACH,iBAAS,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzC;AAkBD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * The words SQLite reads only as keywords when they stand bare in code: no table, column, index, view,
3
+ * trigger or alias can be named by one unless it is quoted. The other keywords (`key`, `end`, `action`, `left`,
4
+ * `if`) SQLite takes as a name where its grammar wants one, so a bare one may be a name and is read as one.
5
+ * The list is the engine's: tests/sqlite-keywords.test.ts holds every word here to SQLite's refusal as each kind of
6
+ * name, in node:sqlite's SQLite and libsql's. `nothing` and `returning` are left out, as an SQLite before 3.24 and
7
+ * 3.35 reads them as plain names.
8
+ */
9
+ declare const NEVER_NAMES: ReadonlySet<string>;
10
+ export { NEVER_NAMES };
11
+ //# sourceMappingURL=sqlite-keywords.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-keywords.d.ts","sourceRoot":"","sources":["../../../src/migrate/core/sqlite-keywords.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,QAAA,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,CAyDnC,CAAA;AAEF,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -0,0 +1,23 @@
1
+ import { Refused } from "./refused.ts";
2
+ /** The files a stop found applied by the run, and left pending */
3
+ type Found = {
4
+ applied: string[];
5
+ pending: string[];
6
+ };
7
+ /** A run a signal stopped: the signal, and as a Refused the files it applied, left, or may have applied */
8
+ export declare class Stopped extends Refused {
9
+ readonly signal: NodeJS.Signals;
10
+ constructor(signal: NodeJS.Signals, message: string, files: ConstructorParameters<typeof Refused>[1]);
11
+ }
12
+ /**
13
+ * `work`, with a step held while it runs that, on a signal, says on `print` which of `names` the run
14
+ * applied and which it did not, as `read` finds them once the work in flight has ended (cleanup.ts
15
+ * runs a child's own step before this one), and returns the report. The process then ends by the signal.
16
+ */
17
+ export declare function whileStoppable<T>({ names, print, read }: {
18
+ names: readonly string[];
19
+ print: (line: string) => void;
20
+ read: () => Promise<Found>;
21
+ }, work: () => Promise<T>): Promise<T>;
22
+ export {};
23
+ //# sourceMappingURL=stopped.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stopped.d.ts","sourceRoot":"","sources":["../../../src/migrate/core/stopped.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,kEAAkE;AAClE,KAAK,KAAK,GAAG;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AAErD,2GAA2G;AAC3G,qBAAa,OAAQ,SAAQ,OAAO;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAA;IAE/B,YAAY,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,CAAC,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,EAInG;CACD;AA2BD;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACrC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;IAAE,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,CAAA;CAAE,EAC/G,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACpB,OAAO,CAAC,CAAC,CAAC,CAWZ"}
@@ -1 +1 @@
1
- {"version":3,"file":"cursor-mint.d.ts","sourceRoot":"","sources":["../../src/query/cursor-mint.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,aAAa,EAAsB,MAAM,kBAAkB,CAAA;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C;;;GAGG;AACH,KAAK,WAAW,GAAG,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,KAAK,MAAM,CAAA;AAE9F,+GAA+G;AAC/G,KAAK,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAA;AAoChD;;;;;GAKG;AACH,iBAAS,YAAY,CACpB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,SAAS,SAAS,EAAE,EAC1B,OAAO,EAAE,aAAa,GAAG;IACxB,yHAAyH;IACzH,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACxC,+FAA+F;IAC/F,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAC7C,yGAAyG;IACzG,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACzC,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,qIAAqI;IACrI,MAAM,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CAC/B,GACC,MAAM,CAER;AAGD;;;GAGG;AACH,iBAAS,SAAS,CACjB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,SAAS,SAAS,EAAE,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;CAAE,GAC1F,MAAM,CAER;AAGD;;;GAGG;AACH,iBAAS,YAAY,CACpB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,SAAS,SAAS,EAAE,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG;IAC1C,uFAAuF;IACvF,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CAC/B,GACC,MAAM,MAAM,CA2Cd;AAuCD,OAAO,EAAE,KAAK,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"cursor-mint.d.ts","sourceRoot":"","sources":["../../src/query/cursor-mint.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,aAAa,EAAsB,MAAM,kBAAkB,CAAA;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAG3C;;;GAGG;AACH,KAAK,WAAW,GAAG,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,KAAK,MAAM,CAAA;AAE9F,+GAA+G;AAC/G,KAAK,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAA;AAkChD;;;;;GAKG;AACH,iBAAS,YAAY,CACpB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,SAAS,SAAS,EAAE,EAC1B,OAAO,EAAE,aAAa,GAAG;IACxB,yHAAyH;IACzH,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACxC,+FAA+F;IAC/F,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IAC7C,yGAAyG;IACzG,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACzC,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,qIAAqI;IACrI,MAAM,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CAC/B,GACC,MAAM,CAER;AAGD;;;GAGG;AACH,iBAAS,SAAS,CACjB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,SAAS,SAAS,EAAE,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;CAAE,GAC1F,MAAM,CAER;AAGD;;;GAGG;AACH,iBAAS,YAAY,CACpB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,SAAS,SAAS,EAAE,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG;IAC1C,uFAAuF;IACvF,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CAC/B,GACC,MAAM,MAAM,CA2Cd;AAmCD,OAAO,EAAE,KAAK,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,CAAA"}
@@ -1,4 +1,20 @@
1
+ /**
2
+ * What no cursor resumes after, refused by name when a cursor is minted: a computed sort, a tiebreak
3
+ * id a JS number rounds, and a row without a sort value or its id, or with one no cursor carries.
4
+ * UnmintableRow tells a refusal of a row's own value from one of the list's wiring.
5
+ */
6
+ import { CombError } from "../error.ts";
1
7
  import type { SortField } from "./types.ts";
8
+ /**
9
+ * A 500 naming a row's value no cursor holds: a key too long for the cap, an Invalid Date or a rounded
10
+ * number as read, a value the cursor would not read back as itself, a class its column's mode reads as
11
+ * another. A page by cursor answers it on the page that serves the row; a page by number serves the row
12
+ * and, when its next cursor would be minted from it, answers `nextCursor: null` with `hasMore` still
13
+ * true. Any other mint refusal is the list's wiring or config, and every page answers it
14
+ */
15
+ declare class UnmintableRow extends CombError {
16
+ constructor(cause: string);
17
+ }
2
18
  /** Whether `value` is an integer a JS number rounds: past ±(2^53 − 1), a lossy read of the row's key */
3
19
  declare const lossy: (value: unknown) => value is number;
4
20
  /**
@@ -21,5 +37,5 @@ declare function refuseComputedSort(parsedSort: readonly SortField[]): void;
21
37
  * the next page refused as invalid
22
38
  */
23
39
  declare function refuseUncarried(record: Record<string, unknown>, parsedSort: readonly SortField[], idField: string): void;
24
- export { lossy, NO_KEYSET_CAUSE, refuseComputedSort, refuseRoundedId, refuseUncarried };
40
+ export { lossy, NO_KEYSET_CAUSE, refuseComputedSort, refuseRoundedId, refuseUncarried, UnmintableRow };
25
41
  //# sourceMappingURL=cursor-refusals.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cursor-refusals.d.ts","sourceRoot":"","sources":["../../src/query/cursor-refusals.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C,wGAAwG;AACxG,QAAA,MAAM,KAAK,UAAW,OAAO,KAAG,KAAK,IAAI,MAC4C,CAAA;AAErF;;;GAGG;AACH,iBAAS,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAO/E;AAED,6HAA6H;AAC7H,QAAA,MAAM,eAAe,4EAA4E,CAAA;AAEjG;;;;GAIG;AACH,iBAAS,kBAAkB,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,GAAG,IAAI,CAOlE;AAcD;;;;;GAKG;AACH,iBAAS,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,EAAE,SAAS,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAwBjH;AAED,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"cursor-refusals.d.ts","sourceRoot":"","sources":["../../src/query/cursor-refusals.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C;;;;;;GAMG;AACH,cAAM,aAAc,SAAQ,SAAS;IACpC,YAAY,KAAK,EAAE,MAAM,EAExB;CACD;AAED,wGAAwG;AACxG,QAAA,MAAM,KAAK,UAAW,OAAO,KAAG,KAAK,IAAI,MAC4C,CAAA;AAErF;;;GAGG;AACH,iBAAS,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAQ/E;AAED,6HAA6H;AAC7H,QAAA,MAAM,eAAe,4EAA4E,CAAA;AAEjG;;;;GAIG;AACH,iBAAS,kBAAkB,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,GAAG,IAAI,CAOlE;AAcD;;;;;GAKG;AACH,iBAAS,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,EAAE,SAAS,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAoBjH;AAED,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,CAAA"}
@@ -7,7 +7,7 @@
7
7
  * same config that validates the request, so the text cannot drift from what
8
8
  * the parser accepts — and stays when a publisher strips `x-*` extensions.
9
9
  */
10
- import type { FilterLimits } from "./filter.ts";
10
+ import { type FilterLimits } from "./filter.ts";
11
11
  import type { FieldsConfig } from "./schema-types.ts";
12
12
  import type { FieldType, FilterOperator } from "./types.ts";
13
13
  /** The OpenAPI description of the `cursor` param */
@@ -1 +1 @@
1
- {"version":3,"file":"descriptions.d.ts","sourceRoot":"","sources":["../../src/query/descriptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3D,oDAAoD;AACpD,QAAA,MAAM,kBAAkB,6JACmI,CAAA;AAE3J,kDAAkD;AAClD,QAAA,MAAM,gBAAgB,yUACiT,CAAA;AACvU,+CAA+C;AAC/C,QAAA,MAAM,aAAa,EAAE,MAAM,EAAW,CAAA;AAEtC,kDAAkD;AAClD,QAAA,MAAM,gBAAgB,oGAC4E,CAAA;AAClG,+CAA+C;AAC/C,QAAA,MAAM,aAAa,EAAE,MAAM,EAAuB,CAAA;AAElD,sHAAsH;AACtH,QAAA,MAAM,kBAAkB,oNAC0L,CAAA;AAElN,oEAAoE;AACpE,MAAM,MAAM,SAAS,GAAG;IACvB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAOD,uGAAuG;AACvG,iBAAS,cAAc,CACtB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,GACd;IACF,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAClB,CAKA;AAED;;;GAGG;AACH,iBAAS,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAsBxD;AAkBD;;;GAGG;AACH,iBAAS,eAAe,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EACjC,YAAY,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS,cAAc,EAAE,EAC5D,MAAM,EAAE,YAAY,GAClB,SAAS,CAkBX;AAMD,yHAAyH;AACzH,iBAAS,cAAc,CACtB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,WAAW,EAAE,MAAM,GACjB,SAAS,GAAG;IACd,gGAAgG;IAChG,OAAO,EAAE,MAAM,CAAA;CACf,CAeA;AAED,8FAA8F;AAC9F,iBAAS,eAAe,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,CAK/E;AAED,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,eAAe,GACf,CAAA"}
1
+ {"version":3,"file":"descriptions.d.ts","sourceRoot":"","sources":["../../src/query/descriptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,KAAK,YAAY,EAAgB,MAAM,aAAa,CAAA;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3D,oDAAoD;AACpD,QAAA,MAAM,kBAAkB,6JACmI,CAAA;AAE3J,kDAAkD;AAClD,QAAA,MAAM,gBAAgB,yUACiT,CAAA;AACvU,+CAA+C;AAC/C,QAAA,MAAM,aAAa,EAAE,MAAM,EAAW,CAAA;AAEtC,kDAAkD;AAClD,QAAA,MAAM,gBAAgB,oGAC4E,CAAA;AAClG,+CAA+C;AAC/C,QAAA,MAAM,aAAa,EAAE,MAAM,EAAuB,CAAA;AAElD,sHAAsH;AACtH,QAAA,MAAM,kBAAkB,oNAC0L,CAAA;AAElN,oEAAoE;AACpE,MAAM,MAAM,SAAS,GAAG;IACvB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAOD,uGAAuG;AACvG,iBAAS,cAAc,CACtB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,GACd;IACF,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAClB,CAKA;AAED;;;GAGG;AACH,iBAAS,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAsBxD;AAkBD;;;GAGG;AACH,iBAAS,eAAe,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EACjC,YAAY,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS,cAAc,EAAE,EAC5D,MAAM,EAAE,YAAY,GAClB,SAAS,CAkBX;AAED,yHAAyH;AACzH,iBAAS,cAAc,CACtB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,WAAW,EAAE,MAAM,GACjB,SAAS,GAAG;IACd,gGAAgG;IAChG,OAAO,EAAE,MAAM,CAAA;CACf,CAcA;AAED,8FAA8F;AAC9F,iBAAS,eAAe,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,CAK/E;AAED,OAAO,EACN,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,eAAe,GACf,CAAA"}
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * - `field.op.value`: one condition; `,` joins conditions with AND
6
6
  * - `or(...)`, `and(...)`: groups, nestable
7
- * - `in.(a,b)`, `nin.(a,b)`: lists
7
+ * - `in.(a,b)`, `nin.(a,b)`: lists; `in.()` is the one empty list, and a comma beside no member is malformed
8
8
  * - `"..."`: a quoted value may hold `,` `(` `)` and `.`; `\"` and `\\` escape inside it
9
9
  * - `@name`: a computed field
10
10
  */
@@ -12,10 +12,21 @@ import type { FilterAST, FilterOperator } from "./types.ts";
12
12
  /** Every operator the filter grammar parses; `validateFilter` holds each field to its type's */
13
13
  declare const FILTER_OPERATORS: readonly [FilterOperator, ...FilterOperator[]];
14
14
  /**
15
- * The AST of a filter string, or null when there is none or any part of it cannot be read: a
15
+ * The AST of a non-blank filter string, or why it cannot be read, in words for a caller to show: a
16
16
  * filter the parser does not fully understand is refused, never reduced to "no filter", which
17
- * would widen the result to the whole table on a typo.
17
+ * would widen the result to the whole table on a typo. A group nested past `maxDepth`, or past
18
+ * FILTER_MAX_DEPTH whatever `maxDepth` is, is refused where it opens.
19
+ */
20
+ declare function readFilter(input: string, maxDepth: number): {
21
+ ast: FilterAST;
22
+ } | {
23
+ error: string;
24
+ };
25
+ /**
26
+ * The AST of a filter string, or null when there is none or any part of it cannot be read, or it
27
+ * nests past FILTER_MAX_DEPTH: a filter the parser does not fully understand is refused, never
28
+ * reduced to "no filter", which would widen the result to the whole table on a typo.
18
29
  */
19
30
  declare function parseFilter(input: string | null | undefined): FilterAST | null;
20
- export { FILTER_OPERATORS, parseFilter };
31
+ export { FILTER_OPERATORS, parseFilter, readFilter };
21
32
  //# sourceMappingURL=filter-parse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-parse.d.ts","sourceRoot":"","sources":["../../src/query/filter-parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,SAAS,EAAgC,cAAc,EAAE,MAAM,YAAY,CAAA;AAGzF,gGAAgG;AAChG,QAAA,MAAM,gBAAgB,EAAE,SAAS,CAAC,cAAc,EAAE,GAAG,cAAc,EAAE,CAcpE,CAAA;AAuJD;;;;GAIG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAKvE;AAED,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"filter-parse.d.ts","sourceRoot":"","sources":["../../src/query/filter-parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,SAAS,EAAgC,cAAc,EAAE,MAAM,YAAY,CAAA;AAGzF,gGAAgG;AAChG,QAAA,MAAM,gBAAgB,EAAE,SAAS,CAAC,cAAc,EAAE,GAAG,cAAc,EAAE,CAcpE,CAAA;AAsMD;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAI3F;AAED;;;;GAIG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAIvE;AAED,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA"}
@@ -32,7 +32,7 @@ type FilterValidationResult = {
32
32
  type FilterLimits = {
33
33
  /** Conditions in the whole filter, every group counted */
34
34
  maxConditions: number;
35
- /** Nested or()/and() groups below the top level */
35
+ /** Nested or()/and() groups below the top level; the parser reads no more than 256, whatever this is */
36
36
  maxDepth: number;
37
37
  /** Members of one in/nin list */
38
38
  maxInValues: number;
@@ -1 +1 @@
1
- {"version":3,"file":"filter-validate.d.ts","sourceRoot":"","sources":["../../src/query/filter-validate.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAgC,cAAc,EAAE,MAAM,YAAY,CAAA;AAEpG,8GAA8G;AAC9G,QAAA,MAAM,iBAAiB,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,cAAc,EAAE,CAM1D,CAAA;AAeV;;;;GAIG;AACH,KAAK,eAAe,GAAG;IACtB,oFAAoF;IACpF,MAAM,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC1B,2HAA2H;IAC3H,SAAS,CAAC,EAAE,SAAS,cAAc,EAAE,GAAG,SAAS,CAAA;IACjD,kDAAkD;IAClD,IAAI,EAAE,SAAS,CAAA;CACf,CAAA;AAED,gEAAgE;AAChE,KAAK,WAAW,GAAG,SAAS,GAAG,eAAe,CAAA;AAE9C,uDAAuD;AACvD,KAAK,sBAAsB,GACxB;IACA,yDAAyD;IACzD,GAAG,EAAE,SAAS,CAAA;IACd,0CAA0C;IAC1C,KAAK,EAAE,IAAI,CAAA;CACV,GACD;IACA,yEAAyE;IACzE,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,oCAAoC;IACpC,KAAK,EAAE,KAAK,CAAA;CACX,CAAA;AAEJ,+FAA+F;AAC/F,KAAK,YAAY,GAAG;IACnB,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAA;IACrB,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAA;IAChB,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAA;IACnB,yGAAyG;IACzG,eAAe,EAAE,MAAM,CAAA;IACvB,qGAAqG;IACrG,SAAS,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,mHAAmH;AACnH,QAAA,MAAM,aAAa,EAAE,YAMpB,CAAA;AAED,kIAAkI;AAClI,KAAK,WAAW,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS;CAAE,CAAA;AAE7D;;;;GAIG;AACH,iBAAS,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnD,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,EACX,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS,GAC/B,CAAC,CAOH;AAoFD;;;;GAIG;AACH,iBAAS,cAAc,CACtB,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACvC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EAC1C,MAAM,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,SAAS,GAC5C,sBAAsB,GAAG,IAAI,CAmB/B;AAED,OAAO,EACN,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,sBAAsB,GAC3B,CAAA"}
1
+ {"version":3,"file":"filter-validate.d.ts","sourceRoot":"","sources":["../../src/query/filter-validate.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAgC,cAAc,EAAE,MAAM,YAAY,CAAA;AAEpG,8GAA8G;AAC9G,QAAA,MAAM,iBAAiB,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,cAAc,EAAE,CAM1D,CAAA;AAeV;;;;GAIG;AACH,KAAK,eAAe,GAAG;IACtB,oFAAoF;IACpF,MAAM,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC1B,2HAA2H;IAC3H,SAAS,CAAC,EAAE,SAAS,cAAc,EAAE,GAAG,SAAS,CAAA;IACjD,kDAAkD;IAClD,IAAI,EAAE,SAAS,CAAA;CACf,CAAA;AAED,gEAAgE;AAChE,KAAK,WAAW,GAAG,SAAS,GAAG,eAAe,CAAA;AAE9C,uDAAuD;AACvD,KAAK,sBAAsB,GACxB;IACA,yDAAyD;IACzD,GAAG,EAAE,SAAS,CAAA;IACd,0CAA0C;IAC1C,KAAK,EAAE,IAAI,CAAA;CACV,GACD;IACA,yEAAyE;IACzE,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,oCAAoC;IACpC,KAAK,EAAE,KAAK,CAAA;CACX,CAAA;AAEJ,+FAA+F;AAC/F,KAAK,YAAY,GAAG;IACnB,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAA;IACrB,wGAAwG;IACxG,QAAQ,EAAE,MAAM,CAAA;IAChB,iCAAiC;IACjC,WAAW,EAAE,MAAM,CAAA;IACnB,yGAAyG;IACzG,eAAe,EAAE,MAAM,CAAA;IACvB,qGAAqG;IACrG,SAAS,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,mHAAmH;AACnH,QAAA,MAAM,aAAa,EAAE,YAMpB,CAAA;AAED,kIAAkI;AAClI,KAAK,WAAW,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS;CAAE,CAAA;AAE7D;;;;GAIG;AACH,iBAAS,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnD,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,EACX,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,SAAS,GAC/B,CAAC,CAOH;AAmFD;;;;GAIG;AACH,iBAAS,cAAc,CACtB,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACvC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EAC1C,MAAM,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,SAAS,GAC5C,sBAAsB,GAAG,IAAI,CAiB/B;AAED,OAAO,EACN,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,sBAAsB,GAC3B,CAAA"}
@@ -6,6 +6,14 @@ import { FILTER_OPERATORS, parseFilter } from "./filter-parse.ts";
6
6
  import { parseFilterNumber } from "./filter-typed.ts";
7
7
  import { FILTER_LIMITS, OPERATORS_BY_TYPE, type FilterField, type FilterFieldSpec, type FilterLimits, type FilterValidationResult, type LimitsGiven, validateFilter } from "./filter-validate.ts";
8
8
  import type { SortField } from "./types.ts";
9
+ /**
10
+ * A regular expression taking every `order` parseOrder reads over the fields in `sort`, up to
11
+ * `maxSortKeys` entries: the empty value, which reads as the default order, and each entry the field
12
+ * and the suffixes orderEntries reads off it. A field named twice is refused, so no order holds more
13
+ * entries than `sort` has fields; which field repeats needs a lookahead, which RE2 lacks, so the
14
+ * pattern leaves that to the description
15
+ */
16
+ declare function orderPattern(sort: readonly string[], maxSortKeys: number): string;
9
17
  /**
10
18
  * Parse PostgREST-style `order` string into SortField array.
11
19
  *
@@ -36,5 +44,5 @@ declare function namedTwice(fields: readonly SortField[]): string[];
36
44
  * has whitespace around it, which the published pattern refuses too
37
45
  */
38
46
  declare function orderEntries(input: string | null | undefined): Array<SortField | string>;
39
- export { FILTER_LIMITS, FILTER_OPERATORS, OPERATORS_BY_TYPE, parseFilter, parseFilterNumber, namedTwice, orderEntries, parseOrder, validateFilter, type FilterField, type FilterFieldSpec, type FilterLimits, type FilterValidationResult, type LimitsGiven, };
47
+ export { FILTER_LIMITS, FILTER_OPERATORS, OPERATORS_BY_TYPE, parseFilter, parseFilterNumber, namedTwice, orderEntries, orderPattern, parseOrder, validateFilter, type FilterField, type FilterFieldSpec, type FilterLimits, type FilterValidationResult, type LimitsGiven, };
40
48
  //# sourceMappingURL=filter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/query/filter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EACN,aAAa,EACb,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAChB,cAAc,EACd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,YAAY,CAAA;AAE1D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,iBAAS,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,EAAE,GAAG,IAAI,CAIxE;AAED,0DAA0D;AAC1D,iBAAS,UAAU,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,MAAM,EAAE,CAK1D;AAED;;;GAGG;AACH,iBAAS,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CA0CjF;AAED,OAAO,EACN,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,UAAU,EACV,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,WAAW,GAChB,CAAA"}
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/query/filter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EACN,aAAa,EACb,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAChB,cAAc,EACd,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,YAAY,CAAA;AA0B1D;;;;;;GAMG;AACH,iBAAS,YAAY,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAI1E;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,iBAAS,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,EAAE,GAAG,IAAI,CAIxE;AAED,0DAA0D;AAC1D,iBAAS,UAAU,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,MAAM,EAAE,CAK1D;AAED;;;GAGG;AACH,iBAAS,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CA0BjF;AAED,OAAO,EACN,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,WAAW,GAChB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"list-extras.d.ts","sourceRoot":"","sources":["../../src/query/list-extras.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C,qGAAqG;AACrG,QAAA,MAAM,OAAO,EAAG,SAAkB,CAAA;AAKlC,QAAA,MAAM,YAAY,EAAE,MAA6B,CAAA;AAkBjD;;;GAGG;AACH,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;AAKtH,wGAAwG;AACxG,QAAA,MAAM,SAAS,UAAW,OAAO,KAAG,OACqC,CAAA;AAoBzE;;;GAGG;AACH,iBAAS,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,QAAQ,EAAE,GAAG,SAAS,CAGpF;AA0CD;;;GAGG;AACH,iBAAS,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,CAI9E;AAiDD;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,IAAI,CAGpF;AA0BD;;;;;;;;;GASG;AACH,iBAAS,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgBpG;AAED;;;;GAIG;AACH,iBAAS,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAW3F;AAED;;;;GAIG;AACH,iBAAS,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAerG;AAED,OAAO,EACN,YAAY,EACZ,UAAU,EACV,OAAO,EACP,YAAY,EACZ,KAAK,QAAQ,EACb,SAAS,EACT,YAAY,EACZ,aAAa,EACb,SAAS,EACT,SAAS,GACT,CAAA"}
1
+ {"version":3,"file":"list-extras.d.ts","sourceRoot":"","sources":["../../src/query/list-extras.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAG3C,qGAAqG;AACrG,QAAA,MAAM,OAAO,EAAG,SAAkB,CAAA;AAKlC,QAAA,MAAM,YAAY,EAAE,MAA6B,CAAA;AAkBjD;;;GAGG;AACH,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;AAKtH,wGAAwG;AACxG,QAAA,MAAM,SAAS,UAAW,OAAO,KAAG,OACqC,CAAA;AAoBzE;;;GAGG;AACH,iBAAS,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,QAAQ,EAAE,GAAG,SAAS,CAGpF;AA0CD;;;GAGG;AACH,iBAAS,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,CAI9E;AA6CD;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,IAAI,CAGpF;AA0BD;;;;;;;;;GASG;AACH,iBAAS,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgBpG;AAED;;;;GAIG;AACH,iBAAS,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAW3F;AAED;;;;GAIG;AACH,iBAAS,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAerG;AAED,OAAO,EACN,YAAY,EACZ,UAAU,EACV,OAAO,EACP,YAAY,EACZ,KAAK,QAAQ,EACb,SAAS,EACT,YAAY,EACZ,aAAa,EACb,SAAS,EACT,SAAS,GACT,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"list-schema.d.ts","sourceRoot":"","sources":["../../src/query/list-schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AASxB,OAAO,EAEN,kBAAkB,EAUlB,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,eAAe,EAAmB,eAAe,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAO7G,8GAA8G;AAC9G,KAAK,aAAa,GAAG;IACpB,kFAAkF;IAClF,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;CACjC,GAAG,OAAO,CAAC;IACX,+EAA+E;IAC/E,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAClC,6DAA6D;IAC7D,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC7B,6DAA6D;IAC7D,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAChC,iEAAiE;IACjE,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;CAClC,CAAC,CAAA;AAEF,wFAAwF;AACxF,MAAM,MAAM,cAAc,GAAG,OAAO,kBAAkB,GACrD,aAAa,GAAG;IACf,sFAAsF;IACtF,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IAChD,wDAAwD;IACxD,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;CAChD,CAAA;AAEF,4GAA4G;AAC5G,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAE1E,iGAAiG;AACjG,KAAK,eAAe,CAAC,CAAC,SAAS,iBAAiB,CAAC,CAAC,CAAC,EAAE,UAAU,SAAS,MAAM,IAAI,CAAC,CAAC,OAAO,CAC1F,gBAAgB,EAChB,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CACpH,CAAA;AAuFD;;;;GAIG;AACH,iBAAS,qBAAqB,CAC7B,CAAC,SAAS,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACrD,KAAK,CAAC,WAAW,SAAS,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAC9D,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAwDlF;AAED,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"list-schema.d.ts","sourceRoot":"","sources":["../../src/query/list-schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AASxB,OAAO,EAEN,kBAAkB,EAUlB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,eAAe,EAAmB,eAAe,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAO7G,8GAA8G;AAC9G,KAAK,aAAa,GAAG;IACpB,kFAAkF;IAClF,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;CACjC,GAAG,OAAO,CAAC;IACX,+EAA+E;IAC/E,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAClC,6DAA6D;IAC7D,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC7B,6DAA6D;IAC7D,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAChC,iEAAiE;IACjE,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;CAClC,CAAC,CAAA;AAEF,wFAAwF;AACxF,MAAM,MAAM,cAAc,GAAG,OAAO,kBAAkB,GACrD,aAAa,GAAG;IACf,sFAAsF;IACtF,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IAChD,wDAAwD;IACxD,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;CAChD,CAAA;AAEF,4GAA4G;AAC5G,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAE1E,iGAAiG;AACjG,KAAK,eAAe,CAAC,CAAC,SAAS,iBAAiB,CAAC,CAAC,CAAC,EAAE,UAAU,SAAS,MAAM,IAAI,CAAC,CAAC,OAAO,CAC1F,gBAAgB,EAChB,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CACpH,CAAA;AAuFD;;;;GAIG;AACH,iBAAS,qBAAqB,CAC7B,CAAC,SAAS,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EACrD,KAAK,CAAC,WAAW,SAAS,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAC9D,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAuDlF;AAED,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"merged.d.ts","sourceRoot":"","sources":["../../src/query/merged.ts"],"names":[],"mappings":"AAeA,OAAO,EAGN,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,KAAK,kBAAkB,EAEvB,MAAM,iBAAiB,CAAA;AAiLxB;;;;;GAKG;AACH,iBAAS,cAAc,CAAC,CAAC,SAAS,MAAM,EACvC,YAAY,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC,EACzC,KAAK,EAAE;IACN,0DAA0D;IAC1D,UAAU,EAAE,cAAc,GAAG;QAC5B,8GAA8G;QAC9G,MAAM,EAAE,IAAI,CAAA;KACZ,CAAA;CACD,GACC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAsClD;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"merged.d.ts","sourceRoot":"","sources":["../../src/query/merged.ts"],"names":[],"mappings":"AAeA,OAAO,EAGN,KAAK,cAAc,EACnB,KAAK,OAAO,EAEZ,KAAK,kBAAkB,EAEvB,MAAM,iBAAiB,CAAA;AAiLxB;;;;;GAKG;AACH,iBAAS,cAAc,CAAC,CAAC,SAAS,MAAM,EACvC,YAAY,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC,EACzC,KAAK,EAAE;IACN,0DAA0D;IAC1D,UAAU,EAAE,cAAc,GAAG;QAC5B,8GAA8G;QAC9G,MAAM,EAAE,IAAI,CAAA;KACZ,CAAA;CACD,GACC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAsClD;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
@@ -92,6 +92,18 @@ declare const totalOf: (row: object) => number;
92
92
  * public subset. No-op (minus `_total`) when parsedFields is null.
93
93
  */
94
94
  declare function applySelect<T extends Record<string, unknown>>(row: T, parsedFields: ParsedFields | null): T;
95
+ /**
96
+ * What seals a served page's next cursor, or undefined for none, `check` measuring a row's cursor. On
97
+ * a page by cursor it runs on every row: its client walks the list one cursor at a time, so a row no
98
+ * cursor resumes after is refused on the page that serves it, whatever the page size. On a page by
99
+ * number it runs only on the last row of a page with more, the one the cursor is minted from, as
100
+ * 0.20.1 did; a row whose own value no cursor holds (UnmintableRow) mints none, and the page serves it,
101
+ * its `hasMore` still saying a next page by number exists. A refusal of the list's wiring throws on both
102
+ */
103
+ declare function nextCursorOf<T>(page: readonly T[], { byCursor, hasMore }: {
104
+ byCursor: boolean;
105
+ hasMore: boolean;
106
+ }, check: (row: T) => (() => string) | undefined): (() => string) | undefined;
95
107
  /**
96
108
  * The page of `items`, read with `built`, and its pagination: count, whether there is more, and
97
109
  * the next cursor, sealed under the builder's options; none for a list no cursor can resume
@@ -103,5 +115,5 @@ declare function paginate<T extends object>(items: readonly T[], built: {
103
115
  merged: false;
104
116
  };
105
117
  }): readonly [Array<ListRow<T>>, PaginationResponse];
106
- export { applySelect, COMB_ID, type ListExtra, type ListPagination, type ListRow, paginate, type PaginationFacts, type PaginationResponse, paginationOf, totalOf, };
118
+ export { applySelect, COMB_ID, nextCursorOf, type ListExtra, type ListPagination, type ListRow, paginate, type PaginationFacts, type PaginationResponse, paginationOf, totalOf, };
107
119
  //# sourceMappingURL=pagination.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/query/pagination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/query/pagination.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,5 @@
1
- /**
2
- * An integer sort key a driver read as a number past ±(2^53 − 1) is already rounded. A list that binds
3
- * the key as read cannot page it: a derived list with no anchor row to read the exact key back from,
4
- * and a merged list, whose shards' keys that round to one double compare equal.
5
- * A SQLite REAL and a Postgres double precision are doubles, so one past 2^53 is exact: the key's class,
6
- * which the builder selects as `_combKeyTypes`, decides, and only where none was
7
- * selected does the value alone. A class is trusted only when it names a double, so one comb cannot
8
- * place, such as a type no family covers, is refused as an integer is.
9
- */
10
- import { CombError } from "../error.ts";
11
1
  import type { SortField } from "./types.ts";
2
+ import { UnmintableRow } from "./cursor-refusals.ts";
12
3
  /**
13
4
  * The 500 for `row`'s first sort key the driver may have rounded, on a list that cannot page it:
14
5
  * every key of a derived or a merged list, and of an anchored list the keys
@@ -24,6 +15,6 @@ import type { SortField } from "./types.ts";
24
15
  */
25
16
  declare function roundedKey(row: Record<string, unknown>, sort: readonly SortField[], list: "derived" | "merged" | {
26
17
  unread: (field: string) => boolean;
27
- }): CombError | undefined;
18
+ }): UnmintableRow | undefined;
28
19
  export { roundedKey };
29
20
  //# sourceMappingURL=rounded-key.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rounded-key.d.ts","sourceRoot":"","sources":["../../src/query/rounded-key.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAkB3C;;;;;;;;;;;;GAYG;AACH,iBAAS,UAAU,CAClB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,SAAS,SAAS,EAAE,EAC1B,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG;IAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAA;CAAE,GACjE,SAAS,GAAG,SAAS,CAsBvB;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"rounded-key.d.ts","sourceRoot":"","sources":["../../src/query/rounded-key.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAkBpD;;;;;;;;;;;;GAYG;AACH,iBAAS,UAAU,CAClB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,SAAS,SAAS,EAAE,EAC1B,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG;IAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAA;CAAE,GACjE,aAAa,GAAG,SAAS,CAoB3B;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema-params.d.ts","sourceRoot":"","sources":["../../src/query/schema-params.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAcxB,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEvE,OAAO,KAAK,EAAkB,SAAS,EAAe,YAAY,EAAE,MAAM,YAAY,CAAA;AAEtF,uFAAuF;AACvF,QAAA,MAAM,mBAAmB,WAAY,YAAY,KAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAChB,CAAA;AAE7D,QAAA,MAAM,cAAc,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAG7C,CAAA;AAEF,gEAAgE;AAChE,QAAA,MAAM,kBAAkB,EAAE;IACzB,oGAAoG;IACpG,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;CAQlC,CAAA;AASD,QAAA,MAAM,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,CAE5D,CAAA;AAgBF,QAAA,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAEnD,CAAA;AAEF,QAAA,MAAM,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC;IAAE,GAAG,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAA2C,CAAA;AAE1G,2FAA2F;AAC3F,KAAK,UAAU,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AA6DvD;;;GAGG;AACH,iBAAS,cAAc,CAAC,UAAU,EAAE,gBAAgB,GAAG,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAM1F;AAmBD;;;GAGG;AACH,iBAAS,aAAa,CAAC,UAAU,EAAE,gBAAgB,GAAG,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAS1F;AAGD,0HAA0H;AAC1H,QAAA,MAAM,kBAAkB,YACvB,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,MAAM,EACN,OAAO,EACP,YAAY,EACZ,OAAO,EACP,MAAM,EACN,WAAW,EACX,cAAc,EACd,YAAY,EACZ,GAAG,EACH,QAAQ,EACR,aAAa,EACb,UAAU,EACV,WAAW,CACF,CAAA;AAGV,2FAA2F;AAC3F,QAAA,MAAM,sBAAsB,YAAI,MAAM,EAAE,cAAc,EAAE,QAAQ,CAAU,CAAA;AAE1E,iFAAiF;AACjF,iBAAS,iBAAiB,CACzB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjD,QAAQ,EAAE,SAAS,MAAM,EAAE,GACzB,IAAI,CAGN;AAED,4EAA4E;AAC5E,iBAAS,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EACxD,YAAY,EAAE,CAAC,GAAG,SAAS,EAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAGnC;AAED,OAAO,EACN,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,GACjB,CAAA"}
1
+ {"version":3,"file":"schema-params.d.ts","sourceRoot":"","sources":["../../src/query/schema-params.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,OAAO,KAAK,CAAC,MAAM,KAAK,CAAA;AAcxB,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEvE,OAAO,KAAK,EAAkB,SAAS,EAAe,YAAY,EAAE,MAAM,YAAY,CAAA;AAEtF,uFAAuF;AACvF,QAAA,MAAM,mBAAmB,WAAY,YAAY,KAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAChB,CAAA;AAE7D,QAAA,MAAM,cAAc,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAG7C,CAAA;AAEF,gEAAgE;AAChE,QAAA,MAAM,kBAAkB,EAAE;IACzB,oGAAoG;IACpG,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;CAQlC,CAAA;AASD,QAAA,MAAM,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,CAE5D,CAAA;AAgBF,QAAA,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAEnD,CAAA;AAEF,QAAA,MAAM,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC;IAAE,GAAG,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAA2C,CAAA;AAE1G,2FAA2F;AAC3F,KAAK,UAAU,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AAoEvD;;;GAGG;AACH,iBAAS,cAAc,CAAC,UAAU,EAAE,gBAAgB,GAAG,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAM1F;AAmBD;;;GAGG;AACH,iBAAS,aAAa,CAAC,UAAU,EAAE,gBAAgB,GAAG,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAS1F;AAGD,0HAA0H;AAC1H,QAAA,MAAM,kBAAkB,YACvB,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,MAAM,EACN,OAAO,EACP,YAAY,EACZ,OAAO,EACP,MAAM,EACN,WAAW,EACX,cAAc,EACd,YAAY,EACZ,GAAG,EACH,QAAQ,EACR,aAAa,EACb,UAAU,EACV,WAAW,CACF,CAAA;AAGV,2FAA2F;AAC3F,QAAA,MAAM,sBAAsB,YAAI,MAAM,EAAE,cAAc,EAAE,QAAQ,CAAU,CAAA;AAE1E,iFAAiF;AACjF,iBAAS,iBAAiB,CACzB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACjD,QAAQ,EAAE,SAAS,MAAM,EAAE,GACzB,IAAI,CAGN;AAED,4EAA4E;AAC5E,iBAAS,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EACxD,YAAY,EAAE,CAAC,GAAG,SAAS,EAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAGnC;AAED,OAAO,EACN,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,GACjB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"select-validate.d.ts","sourceRoot":"","sources":["../../src/query/select-validate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,KAAK,CAAC,MAAM,KAAK,CAAA;AAG7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAkB,YAAY,EAAE,MAAM,YAAY,CAAA;AA6B9D,yGAAyG;AACzG,iBAAS,wBAAwB,CAChC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,CAAC,CAAC,aAAa,GAClB,YAAY,GAAG,IAAI,CAyBrB;AAED,OAAO,EAAE,wBAAwB,EAAE,CAAA"}
1
+ {"version":3,"file":"select-validate.d.ts","sourceRoot":"","sources":["../../src/query/select-validate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,KAAK,CAAC,MAAM,KAAK,CAAA;AAG7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAkB,YAAY,EAAE,MAAM,YAAY,CAAA;AAgC9D,yGAAyG;AACzG,iBAAS,wBAAwB,CAChC,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,YAAY,EAAE,YAAY,EAC1B,GAAG,EAAE,CAAC,CAAC,aAAa,GAClB,YAAY,GAAG,IAAI,CAyBrB;AAED,OAAO,EAAE,wBAAwB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"cursor-fit.d.ts","sourceRoot":"","sources":["../../../src/query/sqlite/cursor-fit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAmC,GAAG,EAAE,KAAK,UAAU,EAAO,MAAM,aAAa,CAAA;AAOxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AA4CrD;;;GAGG;AACH,cAAM,OAAQ,YAAW,UAAU;IAClC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;IAE/B,YAAY,UAAU,EAAE,UAAU,EAEjC;IAED,MAAM,IAAI,GAAG,CAEZ;CACD;AA0CD;;;;GAIG;AACH,iBAAS,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAIzC;AAED;;;;GAIG;AACH,QAAA,MAAM,YAAY,WAAY,UAAU,GAAG,SAAS,KAAG,OACyB,CAAA;AAKhF;;;;GAIG;AACH,QAAA,MAAM,aAAa,WAAY,UAAU,GAAG,SAAS,KAAG,OACwB,CAAA;AAEhF;;;;;;GAMG;AACH,iBAAS,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAY/F;AASD;;;;GAIG;AACH,iBAAS,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAI5E;AAED;;;GAGG;AACH,QAAA,MAAM,UAAU,WAAY,UAAU,GAAG,SAAS,SAAS,OAAO,KAAG,OAOnE,CAAA;AAEF;;;GAGG;AACH,QAAA,MAAM,UAAU,YAAa,WAAW,UAAU,UAAU,GAAG,SAAS,SAAS,OAAO,KAAG,OAClC,CAAA;AAEzD;;;GAGG;AACH,QAAA,MAAM,YAAY,YAAa,WAAW,WAAW,SAAS,UAAU,EAAE,UAAU,SAAS,OAAO,EAAE,KAAG,OAAO,EAG9G,CAAA;AAEF,4IAA4I;AAC5I,KAAK,KAAK,GAAG;IACZ,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAA;IACjD,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAA;IAClD,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC1B,CAAA;AAED;;;;;;GAMG;AACH,iBAAS,UAAU,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,EAAE,EAAE,GAAE,KAAU,GAAG,MAAM,CAKtG;AAED,gGAAgG;AAChG,iBAAS,gBAAgB,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,EAAE,EAAE,GAAE,KAAU,GAAG,IAAI,CAG1G;AAED,oIAAoI;AACpI,QAAA,MAAM,UAAU,WAAY,UAAU,GAAG,SAAS,SAAS,OAAO,KAAG,OACR,CAAA;AAE7D,OAAO,EACN,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,OAAO,EACP,YAAY,EACZ,UAAU,GACV,CAAA"}
1
+ {"version":3,"file":"cursor-fit.d.ts","sourceRoot":"","sources":["../../../src/query/sqlite/cursor-fit.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAmC,GAAG,EAAE,KAAK,UAAU,EAAO,MAAM,aAAa,CAAA;AAOxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AA4CrD;;;GAGG;AACH,cAAM,OAAQ,YAAW,UAAU;IAClC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;IAE/B,YAAY,UAAU,EAAE,UAAU,EAEjC;IAED,MAAM,IAAI,GAAG,CAEZ;CACD;AA0CD;;;;GAIG;AACH,iBAAS,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAIzC;AAED;;;;GAIG;AACH,QAAA,MAAM,YAAY,WAAY,UAAU,GAAG,SAAS,KAAG,OACyB,CAAA;AAKhF;;;;GAIG;AACH,QAAA,MAAM,aAAa,WAAY,UAAU,GAAG,SAAS,KAAG,OACwB,CAAA;AAUhF;;;;;;GAMG;AACH,iBAAS,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAY/F;AASD;;;;GAIG;AACH,iBAAS,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAI5E;AAED;;;GAGG;AACH,QAAA,MAAM,UAAU,WAAY,UAAU,GAAG,SAAS,SAAS,OAAO,KAAG,OAOnE,CAAA;AAEF;;;GAGG;AACH,QAAA,MAAM,UAAU,YAAa,WAAW,UAAU,UAAU,GAAG,SAAS,SAAS,OAAO,KAAG,OAClC,CAAA;AAEzD;;;GAGG;AACH,QAAA,MAAM,YAAY,YAAa,WAAW,WAAW,SAAS,UAAU,EAAE,UAAU,SAAS,OAAO,EAAE,KAAG,OAAO,EAG9G,CAAA;AAEF,4IAA4I;AAC5I,KAAK,KAAK,GAAG;IACZ,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAA;IACjD,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAA;IAClD,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC1B,CAAA;AAED;;;;;;GAMG;AACH,iBAAS,UAAU,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,EAAE,EAAE,GAAE,KAAU,GAAG,MAAM,CAKtG;AAED,gGAAgG;AAChG,iBAAS,gBAAgB,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,OAAO,EAAE,EAAE,EAAE,GAAE,KAAU,GAAG,IAAI,CAG1G;AAED,oIAAoI;AACpI,QAAA,MAAM,UAAU,WAAY,UAAU,GAAG,SAAS,SAAS,OAAO,KAAG,OACR,CAAA;AAE7D,OAAO,EACN,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,OAAO,EACP,YAAY,EACZ,UAAU,GACV,CAAA"}
@@ -38,6 +38,6 @@ declare function assertLimitWithin(parsed: {
38
38
  /** The 400 for a page that is no whole number from 1, from a list schema or from a builder */
39
39
  declare function invalidPage(page: unknown): CombError;
40
40
  /** The 400 for a page past `maxPage`, from a list schema or from a list no schema bounded */
41
- declare function pageTooDeep(page: number, maxPage: number): CombError;
41
+ declare function pageTooDeep(page: number | string, maxPage: number): CombError;
42
42
  export { assertLimitWithin, assertPageWithin, assertSchemaParsed, invalidPage, pageTooDeep };
43
43
  //# sourceMappingURL=trusted.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"trusted.d.ts","sourceRoot":"","sources":["../../src/query/trusted.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAIvC,KAAK,MAAM,GAAG;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,SAAS,OAAO,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;CAAE,CAAA;AAKnG,oFAAoF;AACpF,iBAAS,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAgBhD;AAED;;;;;;GAMG;AACH,iBAAS,gBAAgB,CAAC,MAAM,EAAE;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAChC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,wFAAwF;IACxF,SAAS,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;CAC5B,GAAG,IAAI,CAKP;AAED;;;;GAIG;AACH,iBAAS,iBAAiB,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,IAAI,CAgB3F;AAED,8FAA8F;AAC9F,iBAAS,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAM7C;AAED,6FAA6F;AAC7F,iBAAS,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAM7D;AAED,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,WAAW,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"trusted.d.ts","sourceRoot":"","sources":["../../src/query/trusted.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAIvC,KAAK,MAAM,GAAG;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,SAAS,OAAO,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;CAAE,CAAA;AAKnG,oFAAoF;AACpF,iBAAS,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAgBhD;AAED;;;;;;GAMG;AACH,iBAAS,gBAAgB,CAAC,MAAM,EAAE;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAChC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,wFAAwF;IACxF,SAAS,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;CAC5B,GAAG,IAAI,CAKP;AAED;;;;GAIG;AACH,iBAAS,iBAAiB,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,IAAI,CAgB3F;AAED,8FAA8F;AAC9F,iBAAS,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,CAM7C;AAKD,6FAA6F;AAC7F,iBAAS,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAQtE;AAED,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,WAAW,EAAE,WAAW,EAAE,CAAA"}