pipework 0.7.2 → 0.7.4

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 (76) hide show
  1. package/dist/cli/commands/check.d.ts.map +1 -1
  2. package/dist/cli/commands/check.js +80 -0
  3. package/dist/cli/commands/check.js.map +1 -1
  4. package/dist/index.d.ts +2 -0
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +1 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/jsonb/index.d.ts +2 -0
  9. package/dist/jsonb/index.d.ts.map +1 -0
  10. package/dist/jsonb/index.js +2 -0
  11. package/dist/jsonb/index.js.map +1 -0
  12. package/dist/jsonb/namespace.d.ts +11 -0
  13. package/dist/jsonb/namespace.d.ts.map +1 -0
  14. package/dist/jsonb/namespace.js +11 -0
  15. package/dist/jsonb/namespace.js.map +1 -0
  16. package/dist/jsonb/query.d.ts +5 -0
  17. package/dist/jsonb/query.d.ts.map +1 -0
  18. package/dist/jsonb/query.js +11 -0
  19. package/dist/jsonb/query.js.map +1 -0
  20. package/dist/validation/doctrine.d.ts +13 -0
  21. package/dist/validation/doctrine.d.ts.map +1 -0
  22. package/dist/validation/doctrine.js +100 -0
  23. package/dist/validation/doctrine.js.map +1 -0
  24. package/dist/vector/index.d.ts +2 -1
  25. package/dist/vector/index.d.ts.map +1 -1
  26. package/dist/vector/index.js +1 -1
  27. package/dist/vector/index.js.map +1 -1
  28. package/dist/vector/namespace.d.ts +10 -4
  29. package/dist/vector/namespace.d.ts.map +1 -1
  30. package/dist/vector/namespace.js +10 -4
  31. package/dist/vector/namespace.js.map +1 -1
  32. package/dist/vector/query.d.ts +14 -1
  33. package/dist/vector/query.d.ts.map +1 -1
  34. package/dist/vector/query.js +39 -1
  35. package/dist/vector/query.js.map +1 -1
  36. package/package.json +1 -1
  37. package/dist/drizzle/index.d.ts +0 -3
  38. package/dist/drizzle/index.d.ts.map +0 -1
  39. package/dist/drizzle/index.js +0 -3
  40. package/dist/drizzle/index.js.map +0 -1
  41. package/dist/resource/batch.d.ts +0 -17
  42. package/dist/resource/batch.d.ts.map +0 -1
  43. package/dist/resource/batch.js +0 -47
  44. package/dist/resource/batch.js.map +0 -1
  45. package/dist/resource/builder.d.ts +0 -11
  46. package/dist/resource/builder.d.ts.map +0 -1
  47. package/dist/resource/builder.js +0 -12
  48. package/dist/resource/builder.js.map +0 -1
  49. package/dist/resource/errors.d.ts +0 -7
  50. package/dist/resource/errors.d.ts.map +0 -1
  51. package/dist/resource/errors.js +0 -9
  52. package/dist/resource/errors.js.map +0 -1
  53. package/dist/resource/index.d.ts +0 -9
  54. package/dist/resource/index.d.ts.map +0 -1
  55. package/dist/resource/index.js +0 -6
  56. package/dist/resource/index.js.map +0 -1
  57. package/dist/resource/paginate.d.ts +0 -13
  58. package/dist/resource/paginate.d.ts.map +0 -1
  59. package/dist/resource/paginate.js +0 -29
  60. package/dist/resource/paginate.js.map +0 -1
  61. package/dist/resource/register.d.ts +0 -16
  62. package/dist/resource/register.d.ts.map +0 -1
  63. package/dist/resource/register.js +0 -181
  64. package/dist/resource/register.js.map +0 -1
  65. package/dist/resource/types.d.ts +0 -69
  66. package/dist/resource/types.d.ts.map +0 -1
  67. package/dist/resource/types.js +0 -2
  68. package/dist/resource/types.js.map +0 -1
  69. package/dist/trunk.d.ts +0 -35
  70. package/dist/trunk.d.ts.map +0 -1
  71. package/dist/trunk.js +0 -102
  72. package/dist/trunk.js.map +0 -1
  73. package/dist/validation/surface.d.ts +0 -4
  74. package/dist/validation/surface.d.ts.map +0 -1
  75. package/dist/validation/surface.js +0 -55
  76. package/dist/validation/surface.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"AAOA,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAmCvC"}
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"AAQA,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAwCvC"}
@@ -3,6 +3,7 @@ import { readFileSync, existsSync, readdirSync } from 'node:fs';
3
3
  import { join } from 'node:path';
4
4
  import { computeChecksum, checksumFromPackageJson } from '../../workspace/checksum.js';
5
5
  import { VITEST_WORKSPACE_CONTENT } from '../../workspace/generate.js';
6
+ import { validateDoctrine, findSourceFiles } from '../../validation/doctrine.js';
6
7
  import { info, success, error as logError, warn } from '../output.js';
7
8
  export function check(cwd) {
8
9
  const steps = [
@@ -19,6 +20,10 @@ export function check(cwd) {
19
20
  if (!vitestOk) {
20
21
  failed = true;
21
22
  }
23
+ const doctrineOk = runDoctrineValidation(cwd);
24
+ if (!doctrineOk) {
25
+ failed = true;
26
+ }
22
27
  for (const step of steps) {
23
28
  info(step.name);
24
29
  try {
@@ -125,4 +130,79 @@ function findStaleVitestConfigs(cwd) {
125
130
  }
126
131
  return stale.sort();
127
132
  }
133
+ function runDoctrineValidation(cwd) {
134
+ info('Doctrine validation');
135
+ const modulePaths = discoverModulePaths(cwd);
136
+ if (modulePaths.length === 0) {
137
+ success('Doctrine validation (no modules found)');
138
+ return true;
139
+ }
140
+ const sourceFiles = findSourceFiles(cwd, modulePaths);
141
+ if (sourceFiles.length === 0) {
142
+ success('Doctrine validation (no source files)');
143
+ return true;
144
+ }
145
+ const result = validateDoctrine(cwd, sourceFiles);
146
+ if (result.violations.length === 0) {
147
+ success(`Doctrine validation (${String(result.scanned)} files scanned)`);
148
+ return true;
149
+ }
150
+ const grouped = groupViolations(result.violations);
151
+ for (const [rule, items] of grouped) {
152
+ logError(`${rule} (${String(items.length)} violation${items.length === 1 ? '' : 's'})`);
153
+ for (const v of items.slice(0, 5)) {
154
+ warn(` ${v.file}:${String(v.line)} — ${v.message}`);
155
+ }
156
+ if (items.length > 5) {
157
+ warn(` ... and ${String(items.length - 5)} more`);
158
+ }
159
+ }
160
+ return false;
161
+ }
162
+ function groupViolations(violations) {
163
+ const map = new Map();
164
+ for (const v of violations) {
165
+ let arr = map.get(v.rule);
166
+ if (arr === undefined) {
167
+ arr = [];
168
+ map.set(v.rule, arr);
169
+ }
170
+ arr.push(v);
171
+ }
172
+ return map;
173
+ }
174
+ function discoverModulePaths(cwd) {
175
+ const workspaceYamlPath = join(cwd, 'pnpm-workspace.yaml');
176
+ if (!existsSync(workspaceYamlPath))
177
+ return [];
178
+ const yaml = readFileSync(workspaceYamlPath, 'utf-8');
179
+ const paths = [];
180
+ for (const line of yaml.split('\n')) {
181
+ const match = line.match(/^\s*-\s*["']?([^"'\s]+)["']?/);
182
+ if (match?.[1] !== undefined && match[1] !== '.') {
183
+ const pattern = match[1];
184
+ if (pattern.endsWith('/*')) {
185
+ const base = pattern.slice(0, -2);
186
+ const baseDir = join(cwd, base);
187
+ if (existsSync(baseDir)) {
188
+ try {
189
+ const entries = readdirSync(baseDir, { withFileTypes: true });
190
+ for (const entry of entries) {
191
+ if (entry.isDirectory()) {
192
+ paths.push(join(base, entry.name));
193
+ }
194
+ }
195
+ }
196
+ catch {
197
+ // skip
198
+ }
199
+ }
200
+ }
201
+ else {
202
+ paths.push(pattern);
203
+ }
204
+ }
205
+ }
206
+ return paths;
207
+ }
128
208
  //# sourceMappingURL=check.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -36,6 +36,8 @@ export type { Resource, ResourceOperations, ResourceMeta, ResourceId, Pagination
36
36
  export { temporal } from './temporal/namespace.js';
37
37
  export type { TemporalOptions, ReviseOptions, ReviseResult, GetCurrentResult, DefinitionReviseOptions } from './temporal/index.js';
38
38
  export { vector } from './vector/namespace.js';
39
+ export type { HeadlineOptions } from './vector/index.js';
40
+ export { jsonb } from './jsonb/namespace.js';
39
41
  export { pipeline } from './pipeline/namespace.js';
40
42
  export type { PipelineConfig, Pipeline, PipelineRun, PipelineExecuteContext, StepDefinition, StepContext, StepRunResult } from './pipeline/index.js';
41
43
  export { state } from './state-machine/namespace.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -13,6 +13,7 @@ export { cache } from './cache/namespace.js';
13
13
  export { fixture } from './fixture/namespace.js';
14
14
  export { temporal } from './temporal/namespace.js';
15
15
  export { vector } from './vector/namespace.js';
16
+ export { jsonb } from './jsonb/namespace.js';
16
17
  export { pipeline } from './pipeline/namespace.js';
17
18
  export { state } from './state-machine/namespace.js';
18
19
  export { behavior } from './behavior/namespace.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAOhD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAI9C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAIhD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAO1C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAQ1C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAG1C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAG9C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAI1C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG5C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAK1C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAI5C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAKhD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAIlD,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAIpD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAIlD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAGhD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAIpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAG1D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAKhF,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAKhD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EACtE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAI9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAOhD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAI9C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAIhD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAO1C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAQ1C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAG1C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAG9C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAI1C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG5C,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAK1C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAI5C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAKhD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAGlD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAG9C,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAIlD,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAIpD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAIlD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAGhD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAIpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAG1D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAKhF,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAKhD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EACtE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAI9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { contains, containedBy, hasKey } from './query.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/jsonb/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { contains, containedBy, hasKey } from './query.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/jsonb/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { contains, containedBy, hasKey } from './query.js';
2
+ /** JSONB query operators — typed helpers for PostgreSQL JSONB containment and key checks. */
3
+ export declare const jsonb: {
4
+ /** The @> containment operator — tests whether a JSONB column contains the given value. */
5
+ contains: typeof contains;
6
+ /** The <@ contained-by operator — tests whether a JSONB column is contained by the given value. */
7
+ containedBy: typeof containedBy;
8
+ /** The ? key-existence operator — tests whether a JSONB column has the given top-level key. */
9
+ hasKey: typeof hasKey;
10
+ };
11
+ //# sourceMappingURL=namespace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/jsonb/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAE1D,6FAA6F;AAC7F,eAAO,MAAM,KAAK;IAChB,2FAA2F;;IAE3F,mGAAmG;;IAEnG,+FAA+F;;CAEhG,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { contains, containedBy, hasKey } from './query.js';
2
+ /** JSONB query operators — typed helpers for PostgreSQL JSONB containment and key checks. */
3
+ export const jsonb = {
4
+ /** The @> containment operator — tests whether a JSONB column contains the given value. */
5
+ contains,
6
+ /** The <@ contained-by operator — tests whether a JSONB column is contained by the given value. */
7
+ containedBy,
8
+ /** The ? key-existence operator — tests whether a JSONB column has the given top-level key. */
9
+ hasKey,
10
+ };
11
+ //# sourceMappingURL=namespace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/jsonb/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAE1D,6FAA6F;AAC7F,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,2FAA2F;IAC3F,QAAQ;IACR,mGAAmG;IACnG,WAAW;IACX,+FAA+F;IAC/F,MAAM;CACP,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { SQL, Column } from '../db/types.js';
2
+ export declare function contains(column: Column | SQL, value: unknown): SQL<boolean>;
3
+ export declare function containedBy(column: Column | SQL, value: unknown): SQL<boolean>;
4
+ export declare function hasKey(column: Column | SQL, key: string): SQL<boolean>;
5
+ //# sourceMappingURL=query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/jsonb/query.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEjD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,CAE3E;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,CAE9E;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,CAEtE"}
@@ -0,0 +1,11 @@
1
+ import { sql } from '../db/sql.js';
2
+ export function contains(column, value) {
3
+ return sql `${column} @> ${JSON.stringify(value)}::jsonb`;
4
+ }
5
+ export function containedBy(column, value) {
6
+ return sql `${column} <@ ${JSON.stringify(value)}::jsonb`;
7
+ }
8
+ export function hasKey(column, key) {
9
+ return sql `${column} ? ${key}`;
10
+ }
11
+ //# sourceMappingURL=query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/jsonb/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAGlC,MAAM,UAAU,QAAQ,CAAC,MAAoB,EAAE,KAAc;IAC3D,OAAO,GAAG,CAAS,GAAG,MAAM,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAoB,EAAE,KAAc;IAC9D,OAAO,GAAG,CAAS,GAAG,MAAM,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,MAAoB,EAAE,GAAW;IACtD,OAAO,GAAG,CAAS,GAAG,MAAM,MAAM,GAAG,EAAE,CAAA;AACzC,CAAC"}
@@ -0,0 +1,13 @@
1
+ export interface DoctrineViolation {
2
+ readonly rule: string;
3
+ readonly file: string;
4
+ readonly line: number;
5
+ readonly message: string;
6
+ }
7
+ export interface DoctrineResult {
8
+ readonly violations: readonly DoctrineViolation[];
9
+ readonly scanned: number;
10
+ }
11
+ export declare function validateDoctrine(cwd: string, sourceFiles: readonly string[]): DoctrineResult;
12
+ export declare function findSourceFiles(cwd: string, modulePaths: readonly string[]): string[];
13
+ //# sourceMappingURL=doctrine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctrine.d.ts","sourceRoot":"","sources":["../../src/validation/doctrine.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAA;IACjD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,cAAc,CAkB5F;AA6ED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAUrF"}
@@ -0,0 +1,100 @@
1
+ import { readFileSync, existsSync, readdirSync } from 'node:fs';
2
+ import { join, relative } from 'node:path';
3
+ export function validateDoctrine(cwd, sourceFiles) {
4
+ const violations = [];
5
+ let scanned = 0;
6
+ for (const file of sourceFiles) {
7
+ const abs = join(cwd, file);
8
+ if (!existsSync(abs))
9
+ continue;
10
+ const content = readFileSync(abs, 'utf-8');
11
+ const lines = content.split('\n');
12
+ scanned++;
13
+ checkSchemaTableUsage(file, lines, violations);
14
+ checkUnbrandedPrimaryKeys(file, lines, violations);
15
+ checkHandWrittenTraitFields(file, lines, violations);
16
+ }
17
+ return { violations, scanned };
18
+ }
19
+ const SCHEMA_TABLE_PATTERN = /\bschema\.table\s*\(/;
20
+ const PIPE_DEFINE_FILE_PATTERN = /\bpipe\.define\s*\(/;
21
+ function checkSchemaTableUsage(file, lines, violations) {
22
+ for (let i = 0; i < lines.length; i++) {
23
+ const line = lines[i];
24
+ if (SCHEMA_TABLE_PATTERN.test(line)) {
25
+ violations.push({
26
+ rule: 'define/prefer-pipe-define',
27
+ file,
28
+ line: i + 1,
29
+ message: 'Use pipe.define() instead of schema.table(). pipe.define() provides branded types, shape validators, test factories, and tenant isolation.',
30
+ });
31
+ }
32
+ }
33
+ }
34
+ const PRIMARY_KEY_PATTERN = /\.primaryKey\(\)/;
35
+ const BRAND_PATTERN = /\.brand\(/;
36
+ const PIPE_FIELD_UUID_PATTERN = /pipe\.field\.(uuid|serial)\(\)/;
37
+ function checkUnbrandedPrimaryKeys(file, lines, violations) {
38
+ if (!lines.some(l => PIPE_DEFINE_FILE_PATTERN.test(l)))
39
+ return;
40
+ for (let i = 0; i < lines.length; i++) {
41
+ const line = lines[i];
42
+ if (PIPE_FIELD_UUID_PATTERN.test(line) && PRIMARY_KEY_PATTERN.test(line) && !BRAND_PATTERN.test(line)) {
43
+ violations.push({
44
+ rule: 'define/brand-primary-key',
45
+ file,
46
+ line: i + 1,
47
+ message: 'Primary key field missing .brand(). Add .brand(\'EntityNameId\') for nominal type safety.',
48
+ });
49
+ }
50
+ }
51
+ }
52
+ const TRAIT_FIELD_PATTERNS = [
53
+ { pattern: /\bcreatedAt\s*:\s*pipe\.field\.timestamp\(\)/, trait: '.audited()', field: 'createdAt' },
54
+ { pattern: /\bupdatedAt\s*:\s*pipe\.field\.timestamp\(\)/, trait: '.audited()', field: 'updatedAt' },
55
+ { pattern: /\beffectiveFrom\s*:\s*pipe\.field\.timestamp\(\)/, trait: '.effectiveDated()', field: 'effectiveFrom' },
56
+ { pattern: /\beffectiveTo\s*:\s*pipe\.field\.timestamp\(\)/, trait: '.effectiveDated()', field: 'effectiveTo' },
57
+ { pattern: /\bdeletedAt\s*:\s*pipe\.field\.timestamp\(\)/, trait: '.softDeleted()', field: 'deletedAt' },
58
+ ];
59
+ function checkHandWrittenTraitFields(file, lines, violations) {
60
+ if (!lines.some(l => PIPE_DEFINE_FILE_PATTERN.test(l)))
61
+ return;
62
+ for (let i = 0; i < lines.length; i++) {
63
+ const line = lines[i];
64
+ for (const { pattern, trait, field } of TRAIT_FIELD_PATTERNS) {
65
+ if (pattern.test(line)) {
66
+ violations.push({
67
+ rule: 'define/use-traits',
68
+ file,
69
+ line: i + 1,
70
+ message: `Hand-written '${field}' field — use ${trait} trait instead. Traits are auto-managed and excluded from insert/update shapes.`,
71
+ });
72
+ }
73
+ }
74
+ }
75
+ }
76
+ export function findSourceFiles(cwd, modulePaths) {
77
+ const files = [];
78
+ for (const modPath of modulePaths) {
79
+ const srcDir = join(cwd, modPath, 'src');
80
+ if (!existsSync(srcDir))
81
+ continue;
82
+ collectTsFiles(srcDir, cwd, files);
83
+ }
84
+ return files.sort();
85
+ }
86
+ function collectTsFiles(dir, cwd, out) {
87
+ const entries = readdirSync(dir, { withFileTypes: true });
88
+ for (const entry of entries) {
89
+ const full = join(dir, entry.name);
90
+ if (entry.isDirectory()) {
91
+ if (entry.name === 'node_modules' || entry.name === 'dist' || entry.name === '__tests__')
92
+ continue;
93
+ collectTsFiles(full, cwd, out);
94
+ }
95
+ else if (entry.name.endsWith('.ts') && !entry.name.endsWith('.test.ts') && !entry.name.endsWith('.d.ts')) {
96
+ out.push(relative(cwd, full));
97
+ }
98
+ }
99
+ }
100
+ //# sourceMappingURL=doctrine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctrine.js","sourceRoot":"","sources":["../../src/validation/doctrine.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export { vector, tsvector } from './types.js';
2
- export { cosineDistance, cosineSimilarity, l2Distance, innerProduct, toTsvector, toTsquery, tsRank } from './query.js';
2
+ export { cosineDistance, cosineSimilarity, l2Distance, innerProduct, toTsvector, toTsquery, plainToTsquery, matches, headline, tsRank } from './query.js';
3
+ export type { HeadlineOptions } from './query.js';
3
4
  export { validateVectorExtension } from './validate.js';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACtH,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACzJ,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA"}
@@ -1,4 +1,4 @@
1
1
  export { vector, tsvector } from './types.js';
2
- export { cosineDistance, cosineSimilarity, l2Distance, innerProduct, toTsvector, toTsquery, tsRank } from './query.js';
2
+ export { cosineDistance, cosineSimilarity, l2Distance, innerProduct, toTsvector, toTsquery, plainToTsquery, matches, headline, tsRank } from './query.js';
3
3
  export { validateVectorExtension } from './validate.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACtH,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEzJ,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { vector as vectorColumn, tsvector } from './types.js';
2
- import { cosineDistance, cosineSimilarity, l2Distance, innerProduct, toTsvector, toTsquery, tsRank } from './query.js';
2
+ import { cosineDistance, cosineSimilarity, l2Distance, innerProduct, toTsvector, toTsquery, plainToTsquery, matches, headline, tsRank } from './query.js';
3
3
  import { validateVectorExtension } from './validate.js';
4
- /** Vector and full-text search namespace — pgvector column types and similarity/ranking queries. */
4
+ /** Vector and full-text search namespace — pgvector column types, similarity queries, and FTS operators. */
5
5
  export declare const vector: {
6
6
  /** Defines a vector(N) column for embeddings. */
7
7
  column: typeof vectorColumn;
@@ -17,9 +17,15 @@ export declare const vector: {
17
17
  innerProduct: typeof innerProduct;
18
18
  /** Converts text to a tsvector for full-text indexing. */
19
19
  toTsvector: typeof toTsvector;
20
- /** Converts a search query string to a tsquery. */
20
+ /** Converts a search query string to a tsquery using to_tsquery (supports operators like &, |, !). */
21
21
  toTsquery: typeof toTsquery;
22
- /** Computes ts_rank for full-text search result ordering. */
22
+ /** Converts natural language text to a tsquery using plainto_tsquery (no operator syntax required). */
23
+ plainToTsquery: typeof plainToTsquery;
24
+ /** The @@ match operator — tests whether a tsvector column matches a tsquery. */
25
+ matches: typeof matches;
26
+ /** Generates a ts_headline search snippet with highlighted matches. */
27
+ headline: typeof headline;
28
+ /** Computes ts_rank for full-text search result ordering. Accepts a pre-built tsquery SQL or a raw query string. */
23
29
  rank: typeof tsRank;
24
30
  /** Verifies the pgvector extension is installed and accessible. */
25
31
  validate: typeof validateVectorExtension;
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/vector/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACtH,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAEvD,oGAAoG;AACpG,eAAO,MAAM,MAAM;IACjB,iDAAiD;;IAEjD,sDAAsD;;IAEtD,kFAAkF;;IAElF,sEAAsE;;IAEtE,mEAAmE;;IAEnE,yDAAyD;;IAEzD,0DAA0D;;IAE1D,mDAAmD;;IAEnD,6DAA6D;;IAE7D,mEAAmE;;CAEpE,CAAA"}
1
+ {"version":3,"file":"namespace.d.ts","sourceRoot":"","sources":["../../src/vector/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACzJ,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAEvD,4GAA4G;AAC5G,eAAO,MAAM,MAAM;IACjB,iDAAiD;;IAEjD,sDAAsD;;IAEtD,kFAAkF;;IAElF,sEAAsE;;IAEtE,mEAAmE;;IAEnE,yDAAyD;;IAEzD,0DAA0D;;IAE1D,sGAAsG;;IAEtG,uGAAuG;;IAEvG,iFAAiF;;IAEjF,uEAAuE;;IAEvE,oHAAoH;;IAEpH,mEAAmE;;CAEpE,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { vector as vectorColumn, tsvector } from './types.js';
2
- import { cosineDistance, cosineSimilarity, l2Distance, innerProduct, toTsvector, toTsquery, tsRank } from './query.js';
2
+ import { cosineDistance, cosineSimilarity, l2Distance, innerProduct, toTsvector, toTsquery, plainToTsquery, matches, headline, tsRank } from './query.js';
3
3
  import { validateVectorExtension } from './validate.js';
4
- /** Vector and full-text search namespace — pgvector column types and similarity/ranking queries. */
4
+ /** Vector and full-text search namespace — pgvector column types, similarity queries, and FTS operators. */
5
5
  export const vector = {
6
6
  /** Defines a vector(N) column for embeddings. */
7
7
  column: vectorColumn,
@@ -17,9 +17,15 @@ export const vector = {
17
17
  innerProduct,
18
18
  /** Converts text to a tsvector for full-text indexing. */
19
19
  toTsvector,
20
- /** Converts a search query string to a tsquery. */
20
+ /** Converts a search query string to a tsquery using to_tsquery (supports operators like &, |, !). */
21
21
  toTsquery,
22
- /** Computes ts_rank for full-text search result ordering. */
22
+ /** Converts natural language text to a tsquery using plainto_tsquery (no operator syntax required). */
23
+ plainToTsquery,
24
+ /** The @@ match operator — tests whether a tsvector column matches a tsquery. */
25
+ matches,
26
+ /** Generates a ts_headline search snippet with highlighted matches. */
27
+ headline,
28
+ /** Computes ts_rank for full-text search result ordering. Accepts a pre-built tsquery SQL or a raw query string. */
23
29
  rank: tsRank,
24
30
  /** Verifies the pgvector extension is installed and accessible. */
25
31
  validate: validateVectorExtension,
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/vector/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACtH,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAEvD,oGAAoG;AACpG,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,iDAAiD;IACjD,MAAM,EAAE,YAAY;IACpB,sDAAsD;IACtD,QAAQ;IACR,kFAAkF;IAClF,MAAM,EAAE,cAAc;IACtB,sEAAsE;IACtE,gBAAgB;IAChB,mEAAmE;IACnE,EAAE,EAAE,UAAU;IACd,yDAAyD;IACzD,YAAY;IACZ,0DAA0D;IAC1D,UAAU;IACV,mDAAmD;IACnD,SAAS;IACT,6DAA6D;IAC7D,IAAI,EAAE,MAAM;IACZ,mEAAmE;IACnE,QAAQ,EAAE,uBAAuB;CAClC,CAAA"}
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/vector/namespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACzJ,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAEvD,4GAA4G;AAC5G,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,iDAAiD;IACjD,MAAM,EAAE,YAAY;IACpB,sDAAsD;IACtD,QAAQ;IACR,kFAAkF;IAClF,MAAM,EAAE,cAAc;IACtB,sEAAsE;IACtE,gBAAgB;IAChB,mEAAmE;IACnE,EAAE,EAAE,UAAU;IACd,yDAAyD;IACzD,YAAY;IACZ,0DAA0D;IAC1D,UAAU;IACV,sGAAsG;IACtG,SAAS;IACT,uGAAuG;IACvG,cAAc;IACd,iFAAiF;IACjF,OAAO;IACP,uEAAuE;IACvE,QAAQ;IACR,oHAAoH;IACpH,IAAI,EAAE,MAAM;IACZ,mEAAmE;IACnE,QAAQ,EAAE,uBAAuB;CAClC,CAAA"}
@@ -5,5 +5,18 @@ export declare function l2Distance(column: Column, query: number[]): SQL<number>
5
5
  export declare function innerProduct(column: Column, query: number[]): SQL<number>;
6
6
  export declare function toTsvector(text: string | SQL, config?: string): SQL;
7
7
  export declare function toTsquery(query: string, config?: string): SQL;
8
- export declare function tsRank(column: Column, query: string, config?: string): SQL<number>;
8
+ export declare function plainToTsquery(query: string, config?: string): SQL;
9
+ export declare function matches(column: Column | SQL, query: SQL): SQL<boolean>;
10
+ export interface HeadlineOptions {
11
+ maxWords?: number;
12
+ minWords?: number;
13
+ shortWord?: number;
14
+ highlightAll?: boolean;
15
+ maxFragments?: number;
16
+ fragmentDelimiter?: string;
17
+ startSel?: string;
18
+ stopSel?: string;
19
+ }
20
+ export declare function headline(column: Column | SQL, query: SQL, config?: string, options?: HeadlineOptions): SQL<string>;
21
+ export declare function tsRank(column: Column | SQL, query: string | SQL, config?: string): SQL<number>;
9
22
  //# sourceMappingURL=query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/vector/query.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEjD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAG3E;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAG7E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAGvE;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAGzE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAMnE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAG7D;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAGlF"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/vector/query.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEjD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAG3E;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAG7E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAGvE;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAGzE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAMnE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAG7D;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAGlE;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,CAEtE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,CAOlH;AAeD,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAM9F"}
@@ -26,8 +26,46 @@ export function toTsquery(query, config) {
26
26
  const tsConfig = config ?? 'english';
27
27
  return sql `to_tsquery(${tsConfig}, ${query})`;
28
28
  }
29
+ export function plainToTsquery(query, config) {
30
+ const tsConfig = config ?? 'english';
31
+ return sql `plainto_tsquery(${tsConfig}, ${query})`;
32
+ }
33
+ export function matches(column, query) {
34
+ return sql `${column} @@ ${query}`;
35
+ }
36
+ export function headline(column, query, config, options) {
37
+ const tsConfig = config ?? 'english';
38
+ if (options === undefined) {
39
+ return sql `ts_headline(${tsConfig}, ${column}, ${query})`;
40
+ }
41
+ const optStr = formatHeadlineOptions(options);
42
+ return sql `ts_headline(${tsConfig}, ${column}, ${query}, ${optStr})`;
43
+ }
44
+ function formatHeadlineOptions(options) {
45
+ const parts = [];
46
+ if (options.maxWords !== undefined)
47
+ parts.push(`MaxWords=${String(options.maxWords)}`);
48
+ if (options.minWords !== undefined)
49
+ parts.push(`MinWords=${String(options.minWords)}`);
50
+ if (options.shortWord !== undefined)
51
+ parts.push(`ShortWord=${String(options.shortWord)}`);
52
+ if (options.highlightAll !== undefined)
53
+ parts.push(`HighlightAll=${options.highlightAll ? 'TRUE' : 'FALSE'}`);
54
+ if (options.maxFragments !== undefined)
55
+ parts.push(`MaxFragments=${String(options.maxFragments)}`);
56
+ if (options.fragmentDelimiter !== undefined)
57
+ parts.push(`FragmentDelimiter=${options.fragmentDelimiter}`);
58
+ if (options.startSel !== undefined)
59
+ parts.push(`StartSel=${options.startSel}`);
60
+ if (options.stopSel !== undefined)
61
+ parts.push(`StopSel=${options.stopSel}`);
62
+ return parts.join(', ');
63
+ }
29
64
  export function tsRank(column, query, config) {
30
65
  const tsConfig = config ?? 'english';
31
- return sql `ts_rank(${column}, to_tsquery(${tsConfig}, ${query}))`;
66
+ if (typeof query === 'string') {
67
+ return sql `ts_rank(${column}, to_tsquery(${tsConfig}, ${query}))`;
68
+ }
69
+ return sql `ts_rank(${column}, ${query})`;
32
70
  }
33
71
  //# sourceMappingURL=query.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/vector/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAGlC,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,KAAe;IAC5D,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACxC,OAAO,GAAG,CAAQ,GAAG,MAAM,QAAQ,SAAS,UAAU,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAc,EAAE,KAAe;IAC9D,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACxC,OAAO,GAAG,CAAQ,QAAQ,MAAM,QAAQ,SAAS,WAAW,CAAA;AAC9D,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,KAAe;IACxD,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACxC,OAAO,GAAG,CAAQ,GAAG,MAAM,QAAQ,SAAS,UAAU,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,KAAe;IAC1D,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;IACxC,OAAO,GAAG,CAAQ,GAAG,MAAM,QAAQ,SAAS,UAAU,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAkB,EAAE,MAAe;IAC5D,MAAM,QAAQ,GAAG,MAAM,IAAI,SAAS,CAAA;IACpC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAA,eAAe,QAAQ,KAAK,IAAI,GAAG,CAAA;IAC/C,CAAC;IACD,OAAO,GAAG,CAAA,eAAe,QAAQ,KAAK,IAAI,GAAG,CAAA;AAC/C,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAa,EAAE,MAAe;IACtD,MAAM,QAAQ,GAAG,MAAM,IAAI,SAAS,CAAA;IACpC,OAAO,GAAG,CAAA,cAAc,QAAQ,KAAK,KAAK,GAAG,CAAA;AAC/C,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,MAAc,EAAE,KAAa,EAAE,MAAe;IACnE,MAAM,QAAQ,GAAG,MAAM,IAAI,SAAS,CAAA;IACpC,OAAO,GAAG,CAAQ,WAAW,MAAM,gBAAgB,QAAQ,KAAK,KAAK,IAAI,CAAA;AAC3E,CAAC"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/vector/query.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pipework",
3
- "version": "0.7.2",
3
+ "version": "0.7.4",
4
4
  "description": "TypeScript framework for multi-tenant SaaS applications. PostgreSQL-only.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -1,3 +0,0 @@
1
- export * as query from 'drizzle-orm';
2
- export * as schema from 'drizzle-orm/pg-core';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/drizzle/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AACpC,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA"}
@@ -1,3 +0,0 @@
1
- export * as query from 'drizzle-orm';
2
- export * as schema from 'drizzle-orm/pg-core';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/drizzle/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AACpC,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA"}