@prisma/orm-extension-pgvector 8.0.0-rc.14-dev.5 → 8.0.0-rc.14-dev.7

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.
@@ -4,7 +4,7 @@ import { ExtractCodecTypes, ProjectionExpr } from "@prisma/orm-family-sql/relati
4
4
  import { PostgresCodecDescriptor } from "@prisma/orm-target-postgres/target/codec-descriptor";
5
5
  import { JsonValue } from "@prisma/orm-framework/contract/types";
6
6
  import { StandardSchemaV1 } from "@standard-schema/spec";
7
- //#region ../../../3-extensions/pgvector/dist/codec-types-BMIVhq93.d.mts
7
+ //#region ../../../3-extensions/pgvector/dist/codec-types-BcRFL6rH.d.mts
8
8
  //#region src/core/codecs.d.ts
9
9
  type VectorConversionCode = 'RUNTIME.ENCODE_FAILED' | 'RUNTIME.DECODE_FAILED';
10
10
  type VectorParams = {
@@ -18,6 +18,7 @@ declare class PgVectorCodec extends CodecImpl<typeof VECTOR_CODEC_ID, readonly [
18
18
  decode(wire: string, _ctx: CodecCallContext): Promise<number[]>;
19
19
  encodeJson(value: number[]): JsonValue;
20
20
  decodeJson(json: JsonValue): number[];
21
+ private refuseJson;
21
22
  }
22
23
  declare class PgVectorDescriptor extends PostgresCodecDescriptor<VectorParams> {
23
24
  protected nativeType(): string;
@@ -48,4 +49,4 @@ type Vector<N extends number = number> = number[] & {
48
49
  type CodecTypes = CodecTypes$1;
49
50
  //#endregion
50
51
  export { Vector as n, CodecTypes as t };
51
- //# sourceMappingURL=codec-types-BMIVhq93-EFF4mnLc.d.mts.map
52
+ //# sourceMappingURL=codec-types-BcRFL6rH-BJ2FC4bE.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codec-types-BcRFL6rH-BJ2FC4bE.d.mts","names":[],"sources":["../../../../3-extensions/pgvector/dist/codec-types-BcRFL6rH.d.mts"],"mappings":";;;;;;;;KAOK;KACA;WACM;;cAEG,sBAAsB,iBAAiB;WAC1C;EACT,YAAY,YAAY,oBAAoB;EAC5C,aAAa,gBAAgB,MAAM,+BAA+B;EAClE,OAAO,iBAAiB,MAAM,mBAAmB;EACjD,OAAO,cAAc,MAAM,mBAAmB;EAC9C,WAAW,kBAAkB;EAC7B,WAAW,MAAM;UACT;;cAEI,2BAA2B,wBAAwB;YACrD;YACA,eAAe,YAAY,iBAAiB;WAC7C,yDAAyD;WACzD;WACA;WACA;WACA,cAAc,iBAAiB;EACxC,iBAAiB,QAAQ;EACzB,QAAQ,QAAQ,gBAAgB,KAAK,yBAAyB;;cAElD;WACH,QAAQ;;KAEd,eAAe,yBAAyB;;;;;;;;;KASxC,OAAO;WACD,iBAAiB;;KAEvB,aAAa"}
@@ -1,2 +1,2 @@
1
- import { n as Vector, t as CodecTypes } from "./codec-types-BMIVhq93-EFF4mnLc.mjs";
1
+ import { n as Vector, t as CodecTypes } from "./codec-types-BcRFL6rH-BJ2FC4bE.mjs";
2
2
  export type { CodecTypes, Vector };
package/dist/control.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { n as pgvectorPackMeta, r as pgvectorQueryOperations } from "./descriptor-meta-Ckujf9HZ-pwQkvCZ_.mjs";
1
+ import { n as pgvectorPackMeta, r as pgvectorQueryOperations } from "./descriptor-meta-bq73UCnY-BHrqZjKP.mjs";
2
2
  import { contractSpaceFromJson } from "@prisma/orm-toolchain/migration-tools/spaces";
3
3
  //#region ../../../3-extensions/pgvector/dist/control.mjs
4
4
  var migration_default = {
@@ -1 +1 @@
1
- {"version":3,"file":"control.mjs","names":[],"sources":["../../../../3-extensions/pgvector/dist/control.mjs"],"sourcesContent":["import { n as pgvectorQueryOperations, t as pgvectorPackMeta } from \"./descriptor-meta-Ckujf9HZ.mjs\";\nimport { contractSpaceFromJson } from \"@internal/migration-tools/spaces\";\n//#region migrations/20260601T0000_install_vector_extension/migration.json\nvar migration_default = {\n\tfrom: null,\n\tto: \"3d2c56a2944685bd21b05bc8a8d73164397df51c014201902932fbe7e80ff1b8\",\n\tprovidedInvariants: [\"pgvector:install-vector-v1\"],\n\tcreatedAt: \"2026-06-01T00:00:00.000Z\",\n\tmigrationHash: \"12b0b77e65c4899ba04e88ed040b1cb3390b4b18a889460f8a83cb6047ff1fa5\"\n};\n//#endregion\n//#region migrations/20260601T0000_install_vector_extension/ops.json\nvar ops_default = [{\n\t\"id\": \"pgvector.install-vector-extension\",\n\t\"label\": \"Enable extension \\\"vector\\\"\",\n\t\"operationClass\": \"additive\",\n\t\"invariantId\": \"pgvector:install-vector-v1\",\n\t\"target\": {\n\t\t\"id\": \"postgres\",\n\t\t\"details\": {\n\t\t\t\"schema\": \"public\",\n\t\t\t\"objectType\": \"dependency\",\n\t\t\t\"name\": \"vector\"\n\t\t}\n\t},\n\t\"precheck\": [{\n\t\t\"description\": \"verify extension \\\"vector\\\" is not already enabled\",\n\t\t\"sql\": \"SELECT NOT EXISTS (SELECT 1 AS \\\"one\\\" FROM \\\"pg_extension\\\" WHERE \\\"extname\\\" = $1) AS \\\"result\\\"\",\n\t\t\"params\": [\"vector\"]\n\t}],\n\t\"execute\": [{\n\t\t\"description\": \"create extension \\\"vector\\\"\",\n\t\t\"sql\": \"CREATE EXTENSION IF NOT EXISTS vector\"\n\t}],\n\t\"postcheck\": [{\n\t\t\"description\": \"confirm extension \\\"vector\\\" is enabled\",\n\t\t\"sql\": \"SELECT EXISTS (SELECT 1 AS \\\"one\\\" FROM \\\"pg_extension\\\" WHERE \\\"extname\\\" = $1) AS \\\"result\\\"\",\n\t\t\"params\": [\"vector\"]\n\t}]\n}];\n//#endregion\n//#region migrations/refs/head.json\nvar head_default = {\n\thash: \"3d2c56a2944685bd21b05bc8a8d73164397df51c014201902932fbe7e80ff1b8\",\n\tinvariants: [\"pgvector:install-vector-v1\"]\n};\n//#endregion\n//#region src/contract.json\nvar contract_default = {\n\tschemaVersion: \"1\",\n\ttargetFamily: \"sql\",\n\ttarget: \"postgres\",\n\tprofileHash: \"3916f444a8a17ad749191acf9e08dad97d1a327b88c2f1d45d12f240296aa8b2\",\n\troots: {},\n\tdomain: { \"namespaces\": { \"public\": { \"models\": {} } } },\n\tstorage: {\n\t\t\"namespaces\": { \"public\": {\n\t\t\t\"entries\": { \"table\": {} },\n\t\t\t\"id\": \"public\",\n\t\t\t\"kind\": \"postgres-schema\"\n\t\t} },\n\t\t\"storageHash\": \"3d2c56a2944685bd21b05bc8a8d73164397df51c014201902932fbe7e80ff1b8\",\n\t\t\"types\": { \"vector\": {\n\t\t\t\"codecId\": \"pg/vector@1\",\n\t\t\t\"kind\": \"codec-instance\",\n\t\t\t\"nativeType\": \"vector\"\n\t\t} }\n\t},\n\tcapabilities: {\n\t\t\"postgres\": {\n\t\t\t\"distinctOn\": true,\n\t\t\t\"jsonAgg\": true,\n\t\t\t\"lateral\": true,\n\t\t\t\"limit\": true,\n\t\t\t\"orderBy\": true,\n\t\t\t\"returning\": true\n\t\t},\n\t\t\"sql\": {\n\t\t\t\"checkConstraint\": true,\n\t\t\t\"defaultInInsert\": true,\n\t\t\t\"enums\": true,\n\t\t\t\"insertOnConflictSkip\": true,\n\t\t\t\"insertOnConflictWithoutTarget\": true,\n\t\t\t\"lateral\": true,\n\t\t\t\"returning\": true,\n\t\t\t\"scalarList\": true\n\t\t}\n\t},\n\textensions: {},\n\tmeta: {},\n\t_generated: {\n\t\t\"warning\": \"⚠️ GENERATED FILE - DO NOT EDIT\",\n\t\t\"message\": \"This file is automatically generated by \\\"prisma contract emit\\\".\",\n\t\t\"regenerate\": \"To regenerate, run: prisma contract emit\"\n\t}\n};\n//#endregion\n//#region src/core/contract-space-constants.ts\n/**\n* Static names and identifiers used across pgvector's contract space.\n*\n* Centralised here so the contract IR (`./contract`), the baseline\n* migration ops (`./migrations`), the head ref, and the descriptor\n* (`../exports/control`) all reference the same values without typos.\n*\n* The space identifier `'pgvector'` is what the framework writes to\n* `migrations/` in the user's repo and what the marker table's\n* `space` column carries for pgvector-owned rows.\n*\n* The `pgvector:*` invariantId namespace is locked here — once\n* published, an invariantId is immutable so downstream consumers can\n* reference it by literal string match.\n*/\nconst PGVECTOR_SPACE_ID = \"pgvector\";\n//#endregion\n//#region src/exports/control.ts\nconst PGVECTOR_CODEC_ID = \"pg/vector@1\";\nconst BASELINE_DIR_NAME = \"20260601T0000_install_vector_extension\";\nfunction buildVectorIdentityValue(typeParams) {\n\tconst length = typeParams?.[\"length\"];\n\tif (typeof length !== \"number\" || !Number.isInteger(length) || length <= 0) return null;\n\treturn `'${`[${new Array(length).fill(\"0\").join(\",\")}]`}'::vector`;\n}\nconst vectorControlPlaneHooks = {\n\texpandNativeType: ({ nativeType, typeParams }) => {\n\t\tconst length = typeParams?.[\"length\"];\n\t\tif (typeof length === \"number\" && Number.isInteger(length) && length > 0) return `${nativeType}(${length})`;\n\t\treturn nativeType;\n\t},\n\tresolveIdentityValue: ({ typeParams }) => buildVectorIdentityValue(typeParams)\n};\nconst pgvectorContractSpace = contractSpaceFromJson({\n\tcontractJson: contract_default,\n\tmigrations: [{\n\t\tdirName: BASELINE_DIR_NAME,\n\t\tmetadata: migration_default,\n\t\tops: ops_default\n\t}],\n\theadRef: head_default\n});\nconst pgvectorExtensionDescriptor = {\n\t...pgvectorPackMeta,\n\tid: PGVECTOR_SPACE_ID,\n\tcontractSpace: pgvectorContractSpace,\n\ttypes: {\n\t\t...pgvectorPackMeta.types,\n\t\tcodecTypes: {\n\t\t\t...pgvectorPackMeta.types.codecTypes,\n\t\t\tcontrolPlaneHooks: { [PGVECTOR_CODEC_ID]: vectorControlPlaneHooks }\n\t\t}\n\t},\n\tqueryOperations: () => pgvectorQueryOperations(),\n\tcreate: () => ({\n\t\tfamilyId: \"sql\",\n\t\ttargetId: \"postgres\"\n\t})\n};\n//#endregion\nexport { pgvectorExtensionDescriptor as default, pgvectorExtensionDescriptor };\n\n//# sourceMappingURL=control.mjs.map"],"mappings":";;;AAGA,IAAI,oBAAoB;CACvB,MAAM;CACN,IAAI;CACJ,oBAAoB,CAAC,4BAA4B;CACjD,WAAW;CACX,eAAe;AAChB;AAGA,IAAI,cAAc,CAAC;CAClB,MAAM;CACN,SAAS;CACT,kBAAkB;CAClB,eAAe;CACf,UAAU;EACT,MAAM;EACN,WAAW;GACV,UAAU;GACV,cAAc;GACd,QAAQ;EACT;CACD;CACA,YAAY,CAAC;EACZ,eAAe;EACf,OAAO;EACP,UAAU,CAAC,QAAQ;CACpB,CAAC;CACD,WAAW,CAAC;EACX,eAAe;EACf,OAAO;CACR,CAAC;CACD,aAAa,CAAC;EACb,eAAe;EACf,OAAO;EACP,UAAU,CAAC,QAAQ;CACpB,CAAC;AACF,CAAC;AAGD,IAAI,eAAe;CAClB,MAAM;CACN,YAAY,CAAC,4BAA4B;AAC1C;AAGA,IAAI,mBAAmB;CACtB,eAAe;CACf,cAAc;CACd,QAAQ;CACR,aAAa;CACb,OAAO,CAAC;CACR,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE;CACvD,SAAS;EACR,cAAc,EAAE,UAAU;GACzB,WAAW,EAAE,SAAS,CAAC,EAAE;GACzB,MAAM;GACN,QAAQ;EACT,EAAE;EACF,eAAe;EACf,SAAS,EAAE,UAAU;GACpB,WAAW;GACX,QAAQ;GACR,cAAc;EACf,EAAE;CACH;CACA,cAAc;EACb,YAAY;GACX,cAAc;GACd,WAAW;GACX,WAAW;GACX,SAAS;GACT,WAAW;GACX,aAAa;EACd;EACA,OAAO;GACN,mBAAmB;GACnB,mBAAmB;GACnB,SAAS;GACT,wBAAwB;GACxB,iCAAiC;GACjC,WAAW;GACX,aAAa;GACb,cAAc;EACf;CACD;CACA,YAAY,CAAC;CACb,MAAM,CAAC;CACP,YAAY;EACX,WAAW;EACX,WAAW;EACX,cAAc;CACf;AACD;;;;;;;;;;;;;;;;AAkBA,MAAM,oBAAoB;AAG1B,MAAM,oBAAoB;AAC1B,MAAM,oBAAoB;AAC1B,SAAS,yBAAyB,YAAY;CAC7C,MAAM,SAAS,aAAa;CAC5B,IAAI,OAAO,WAAW,YAAY,CAAC,OAAO,UAAU,MAAM,KAAK,UAAU,GAAG,OAAO;CACnF,OAAO,IAAI,IAAI,IAAI,MAAM,MAAM,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG;AACzD;AACA,MAAM,0BAA0B;CAC/B,mBAAmB,EAAE,YAAY,iBAAiB;EACjD,MAAM,SAAS,aAAa;EAC5B,IAAI,OAAO,WAAW,YAAY,OAAO,UAAU,MAAM,KAAK,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,OAAO;EACzG,OAAO;CACR;CACA,uBAAuB,EAAE,iBAAiB,yBAAyB,UAAU;AAC9E;AACA,MAAM,wBAAwB,sBAAsB;CACnD,cAAc;CACd,YAAY,CAAC;EACZ,SAAS;EACT,UAAU;EACV,KAAK;CACN,CAAC;CACD,SAAS;AACV,CAAC;AACD,MAAM,8BAA8B;CACnC,GAAG;CACH,IAAI;CACJ,eAAe;CACf,OAAO;EACN,GAAG,iBAAiB;EACpB,YAAY;GACX,GAAG,iBAAiB,MAAM;GAC1B,mBAAmB,GAAG,oBAAoB,wBAAwB;EACnE;CACD;CACA,uBAAuB,wBAAwB;CAC/C,eAAe;EACd,UAAU;EACV,UAAU;CACX;AACD"}
1
+ {"version":3,"file":"control.mjs","names":[],"sources":["../../../../3-extensions/pgvector/dist/control.mjs"],"sourcesContent":["import { n as pgvectorQueryOperations, t as pgvectorPackMeta } from \"./descriptor-meta-bq73UCnY.mjs\";\nimport { contractSpaceFromJson } from \"@internal/migration-tools/spaces\";\n//#region migrations/20260601T0000_install_vector_extension/migration.json\nvar migration_default = {\n\tfrom: null,\n\tto: \"3d2c56a2944685bd21b05bc8a8d73164397df51c014201902932fbe7e80ff1b8\",\n\tprovidedInvariants: [\"pgvector:install-vector-v1\"],\n\tcreatedAt: \"2026-06-01T00:00:00.000Z\",\n\tmigrationHash: \"12b0b77e65c4899ba04e88ed040b1cb3390b4b18a889460f8a83cb6047ff1fa5\"\n};\n//#endregion\n//#region migrations/20260601T0000_install_vector_extension/ops.json\nvar ops_default = [{\n\t\"id\": \"pgvector.install-vector-extension\",\n\t\"label\": \"Enable extension \\\"vector\\\"\",\n\t\"operationClass\": \"additive\",\n\t\"invariantId\": \"pgvector:install-vector-v1\",\n\t\"target\": {\n\t\t\"id\": \"postgres\",\n\t\t\"details\": {\n\t\t\t\"schema\": \"public\",\n\t\t\t\"objectType\": \"dependency\",\n\t\t\t\"name\": \"vector\"\n\t\t}\n\t},\n\t\"precheck\": [{\n\t\t\"description\": \"verify extension \\\"vector\\\" is not already enabled\",\n\t\t\"sql\": \"SELECT NOT EXISTS (SELECT 1 AS \\\"one\\\" FROM \\\"pg_extension\\\" WHERE \\\"extname\\\" = $1) AS \\\"result\\\"\",\n\t\t\"params\": [\"vector\"]\n\t}],\n\t\"execute\": [{\n\t\t\"description\": \"create extension \\\"vector\\\"\",\n\t\t\"sql\": \"CREATE EXTENSION IF NOT EXISTS vector\"\n\t}],\n\t\"postcheck\": [{\n\t\t\"description\": \"confirm extension \\\"vector\\\" is enabled\",\n\t\t\"sql\": \"SELECT EXISTS (SELECT 1 AS \\\"one\\\" FROM \\\"pg_extension\\\" WHERE \\\"extname\\\" = $1) AS \\\"result\\\"\",\n\t\t\"params\": [\"vector\"]\n\t}]\n}];\n//#endregion\n//#region migrations/refs/head.json\nvar head_default = {\n\thash: \"3d2c56a2944685bd21b05bc8a8d73164397df51c014201902932fbe7e80ff1b8\",\n\tinvariants: [\"pgvector:install-vector-v1\"]\n};\n//#endregion\n//#region src/contract.json\nvar contract_default = {\n\tschemaVersion: \"1\",\n\ttargetFamily: \"sql\",\n\ttarget: \"postgres\",\n\tprofileHash: \"3916f444a8a17ad749191acf9e08dad97d1a327b88c2f1d45d12f240296aa8b2\",\n\troots: {},\n\tdomain: { \"namespaces\": { \"public\": { \"models\": {} } } },\n\tstorage: {\n\t\t\"namespaces\": { \"public\": {\n\t\t\t\"entries\": { \"table\": {} },\n\t\t\t\"id\": \"public\",\n\t\t\t\"kind\": \"postgres-schema\"\n\t\t} },\n\t\t\"storageHash\": \"3d2c56a2944685bd21b05bc8a8d73164397df51c014201902932fbe7e80ff1b8\",\n\t\t\"types\": { \"vector\": {\n\t\t\t\"codecId\": \"pg/vector@1\",\n\t\t\t\"kind\": \"codec-instance\",\n\t\t\t\"nativeType\": \"vector\"\n\t\t} }\n\t},\n\tcapabilities: {\n\t\t\"postgres\": {\n\t\t\t\"distinctOn\": true,\n\t\t\t\"jsonAgg\": true,\n\t\t\t\"lateral\": true,\n\t\t\t\"limit\": true,\n\t\t\t\"orderBy\": true,\n\t\t\t\"returning\": true\n\t\t},\n\t\t\"sql\": {\n\t\t\t\"checkConstraint\": true,\n\t\t\t\"defaultInInsert\": true,\n\t\t\t\"enums\": true,\n\t\t\t\"insertOnConflictSkip\": true,\n\t\t\t\"insertOnConflictWithoutTarget\": true,\n\t\t\t\"lateral\": true,\n\t\t\t\"returning\": true,\n\t\t\t\"scalarList\": true\n\t\t}\n\t},\n\textensions: {},\n\tmeta: {},\n\t_generated: {\n\t\t\"warning\": \"⚠️ GENERATED FILE - DO NOT EDIT\",\n\t\t\"message\": \"This file is automatically generated by \\\"prisma contract emit\\\".\",\n\t\t\"regenerate\": \"To regenerate, run: prisma contract emit\"\n\t}\n};\n//#endregion\n//#region src/core/contract-space-constants.ts\n/**\n* Static names and identifiers used across pgvector's contract space.\n*\n* Centralised here so the contract IR (`./contract`), the baseline\n* migration ops (`./migrations`), the head ref, and the descriptor\n* (`../exports/control`) all reference the same values without typos.\n*\n* The space identifier `'pgvector'` is what the framework writes to\n* `migrations/` in the user's repo and what the marker table's\n* `space` column carries for pgvector-owned rows.\n*\n* The `pgvector:*` invariantId namespace is locked here — once\n* published, an invariantId is immutable so downstream consumers can\n* reference it by literal string match.\n*/\nconst PGVECTOR_SPACE_ID = \"pgvector\";\n//#endregion\n//#region src/exports/control.ts\nconst PGVECTOR_CODEC_ID = \"pg/vector@1\";\nconst BASELINE_DIR_NAME = \"20260601T0000_install_vector_extension\";\nfunction buildVectorIdentityValue(typeParams) {\n\tconst length = typeParams?.[\"length\"];\n\tif (typeof length !== \"number\" || !Number.isInteger(length) || length <= 0) return null;\n\treturn `'${`[${new Array(length).fill(\"0\").join(\",\")}]`}'::vector`;\n}\nconst vectorControlPlaneHooks = {\n\texpandNativeType: ({ nativeType, typeParams }) => {\n\t\tconst length = typeParams?.[\"length\"];\n\t\tif (typeof length === \"number\" && Number.isInteger(length) && length > 0) return `${nativeType}(${length})`;\n\t\treturn nativeType;\n\t},\n\tresolveIdentityValue: ({ typeParams }) => buildVectorIdentityValue(typeParams)\n};\nconst pgvectorContractSpace = contractSpaceFromJson({\n\tcontractJson: contract_default,\n\tmigrations: [{\n\t\tdirName: BASELINE_DIR_NAME,\n\t\tmetadata: migration_default,\n\t\tops: ops_default\n\t}],\n\theadRef: head_default\n});\nconst pgvectorExtensionDescriptor = {\n\t...pgvectorPackMeta,\n\tid: PGVECTOR_SPACE_ID,\n\tcontractSpace: pgvectorContractSpace,\n\ttypes: {\n\t\t...pgvectorPackMeta.types,\n\t\tcodecTypes: {\n\t\t\t...pgvectorPackMeta.types.codecTypes,\n\t\t\tcontrolPlaneHooks: { [PGVECTOR_CODEC_ID]: vectorControlPlaneHooks }\n\t\t}\n\t},\n\tqueryOperations: () => pgvectorQueryOperations(),\n\tcreate: () => ({\n\t\tfamilyId: \"sql\",\n\t\ttargetId: \"postgres\"\n\t})\n};\n//#endregion\nexport { pgvectorExtensionDescriptor as default, pgvectorExtensionDescriptor };\n\n//# sourceMappingURL=control.mjs.map"],"mappings":";;;AAGA,IAAI,oBAAoB;CACvB,MAAM;CACN,IAAI;CACJ,oBAAoB,CAAC,4BAA4B;CACjD,WAAW;CACX,eAAe;AAChB;AAGA,IAAI,cAAc,CAAC;CAClB,MAAM;CACN,SAAS;CACT,kBAAkB;CAClB,eAAe;CACf,UAAU;EACT,MAAM;EACN,WAAW;GACV,UAAU;GACV,cAAc;GACd,QAAQ;EACT;CACD;CACA,YAAY,CAAC;EACZ,eAAe;EACf,OAAO;EACP,UAAU,CAAC,QAAQ;CACpB,CAAC;CACD,WAAW,CAAC;EACX,eAAe;EACf,OAAO;CACR,CAAC;CACD,aAAa,CAAC;EACb,eAAe;EACf,OAAO;EACP,UAAU,CAAC,QAAQ;CACpB,CAAC;AACF,CAAC;AAGD,IAAI,eAAe;CAClB,MAAM;CACN,YAAY,CAAC,4BAA4B;AAC1C;AAGA,IAAI,mBAAmB;CACtB,eAAe;CACf,cAAc;CACd,QAAQ;CACR,aAAa;CACb,OAAO,CAAC;CACR,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE;CACvD,SAAS;EACR,cAAc,EAAE,UAAU;GACzB,WAAW,EAAE,SAAS,CAAC,EAAE;GACzB,MAAM;GACN,QAAQ;EACT,EAAE;EACF,eAAe;EACf,SAAS,EAAE,UAAU;GACpB,WAAW;GACX,QAAQ;GACR,cAAc;EACf,EAAE;CACH;CACA,cAAc;EACb,YAAY;GACX,cAAc;GACd,WAAW;GACX,WAAW;GACX,SAAS;GACT,WAAW;GACX,aAAa;EACd;EACA,OAAO;GACN,mBAAmB;GACnB,mBAAmB;GACnB,SAAS;GACT,wBAAwB;GACxB,iCAAiC;GACjC,WAAW;GACX,aAAa;GACb,cAAc;EACf;CACD;CACA,YAAY,CAAC;CACb,MAAM,CAAC;CACP,YAAY;EACX,WAAW;EACX,WAAW;EACX,cAAc;CACf;AACD;;;;;;;;;;;;;;;;AAkBA,MAAM,oBAAoB;AAG1B,MAAM,oBAAoB;AAC1B,MAAM,oBAAoB;AAC1B,SAAS,yBAAyB,YAAY;CAC7C,MAAM,SAAS,aAAa;CAC5B,IAAI,OAAO,WAAW,YAAY,CAAC,OAAO,UAAU,MAAM,KAAK,UAAU,GAAG,OAAO;CACnF,OAAO,IAAI,IAAI,IAAI,MAAM,MAAM,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG;AACzD;AACA,MAAM,0BAA0B;CAC/B,mBAAmB,EAAE,YAAY,iBAAiB;EACjD,MAAM,SAAS,aAAa;EAC5B,IAAI,OAAO,WAAW,YAAY,OAAO,UAAU,MAAM,KAAK,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,OAAO;EACzG,OAAO;CACR;CACA,uBAAuB,EAAE,iBAAiB,yBAAyB,UAAU;AAC9E;AACA,MAAM,wBAAwB,sBAAsB;CACnD,cAAc;CACd,YAAY,CAAC;EACZ,SAAS;EACT,UAAU;EACV,KAAK;CACN,CAAC;CACD,SAAS;AACV,CAAC;AACD,MAAM,8BAA8B;CACnC,GAAG;CACH,IAAI;CACJ,eAAe;CACf,OAAO;EACN,GAAG,iBAAiB;EACpB,YAAY;GACX,GAAG,iBAAiB,MAAM;GAC1B,mBAAmB,GAAG,oBAAoB,wBAAwB;EACnE;CACD;CACA,uBAAuB,wBAAwB;CAC/C,eAAe;EACd,UAAU;EACV,UAAU;CACX;AACD"}
@@ -1,13 +1,14 @@
1
1
  import { n as VECTOR_MAX_DIM, r as pgVectorError, t as VECTOR_CODEC_ID } from "./errors-9-gSu3kD-Vg4apMXQ.mjs";
2
2
  import { structuredError } from "@prisma/orm-framework/utils/structured-error";
3
3
  import { buildOperation, codecOf, toExpr } from "@prisma/orm-family-sql/relational-core/expression";
4
- import { CodecImpl, dataType } from "@prisma/orm-framework/components/codec";
5
- import { CastExpr, FunctionCallExpr, isNonFiniteText } from "@prisma/orm-family-sql/relational-core/ast";
4
+ import { CodecImpl, dataType, isNonFiniteText, refuseJsonValue } from "@prisma/orm-framework/components/codec";
6
5
  import { pgInt2, pgInt4, pgInt8, pgNumeric } from "@prisma/orm-target-postgres/target/data-types";
7
6
  import { buildCodecDescriptorRegistry } from "@prisma/orm-family-sql/relational-core/codec-descriptor-registry";
7
+ import { CastExpr, FunctionCallExpr } from "@prisma/orm-family-sql/relational-core/ast";
8
8
  import { PostgresCodecDescriptor, definePostgresCodecs } from "@prisma/orm-target-postgres/target/codec-descriptor";
9
+ import { counted } from "@prisma/orm-framework/utils/text";
9
10
  import { type } from "arktype";
10
- //#region ../../../3-extensions/pgvector/dist/descriptor-meta-Ckujf9HZ.mjs
11
+ //#region ../../../3-extensions/pgvector/dist/descriptor-meta-bq73UCnY.mjs
11
12
  const pgvectorAuthoringTypes = { pgvector: { Vector: {
12
13
  kind: "typeConstructor",
13
14
  args: [{
@@ -114,10 +115,16 @@ var PgVectorCodec = class extends CodecImpl {
114
115
  return [...value];
115
116
  }
116
117
  decodeJson(json) {
117
- if (!Array.isArray(json)) throw pgVectorError("RUNTIME.DECODE_FAILED", "Vector database JSON value must be an array", { meta: { codecId: VECTOR_CODEC_ID } });
118
- const value = [...json];
119
- this.assertVector(value, "RUNTIME.DECODE_FAILED");
120
- return value;
118
+ if (!Array.isArray(json) || json.length !== this.length) return this.refuseJson(json);
119
+ const numbers = [];
120
+ for (const element of json) {
121
+ if (typeof element !== "number" || !Number.isFinite(element)) return this.refuseJson(json);
122
+ numbers.push(element);
123
+ }
124
+ return numbers;
125
+ }
126
+ refuseJson(json) {
127
+ return refuseJsonValue(VECTOR_CODEC_ID, `an array of ${counted(this.length, "finite number")}`, json);
121
128
  }
122
129
  };
123
130
  /**
@@ -247,4 +254,4 @@ const pgvectorPackMeta = {
247
254
  //#endregion
248
255
  export { pgvectorPackMeta as n, pgvectorQueryOperations as r, pgvectorCodecRegistry as t };
249
256
 
250
- //# sourceMappingURL=descriptor-meta-Ckujf9HZ-pwQkvCZ_.mjs.map
257
+ //# sourceMappingURL=descriptor-meta-bq73UCnY-BHrqZjKP.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descriptor-meta-bq73UCnY-BHrqZjKP.mjs","names":[],"sources":["../../../../3-extensions/pgvector/dist/descriptor-meta-bq73UCnY.mjs"],"sourcesContent":["import { n as VECTOR_CODEC_ID, r as VECTOR_MAX_DIM, t as pgVectorError } from \"./errors-9-gSu3kD.mjs\";\nimport { buildOperation, codecOf, toExpr } from \"@internal/sql-relational-core/expression\";\nimport { CodecImpl, dataType, isNonFiniteText, refuseJsonValue } from \"@internal/framework-components/codec\";\nimport { pgInt2, pgInt4, pgInt8, pgNumeric } from \"@internal/target-postgres/data-types\";\nimport { structuredError } from \"@internal/utils/structured-error\";\nimport { buildCodecDescriptorRegistry } from \"@internal/sql-relational-core/codec-descriptor-registry\";\nimport { CastExpr, FunctionCallExpr } from \"@internal/sql-relational-core/ast\";\nimport { PostgresCodecDescriptor, definePostgresCodecs } from \"@internal/target-postgres/codec-descriptor\";\nimport { counted } from \"@internal/utils/text\";\nimport { type } from \"arktype\";\n//#region src/core/authoring.ts\nconst pgvectorAuthoringTypes = { pgvector: { Vector: {\n\tkind: \"typeConstructor\",\n\targs: [{\n\t\tkind: \"number\",\n\t\tname: \"length\",\n\t\tinteger: true,\n\t\tminimum: 1,\n\t\tmaximum: VECTOR_MAX_DIM\n\t}],\n\toutput: {\n\t\tcodecId: \"pg/vector@1\",\n\t\tnativeType: \"vector\",\n\t\ttypeParams: { length: {\n\t\t\tkind: \"arg\",\n\t\t\tindex: 0\n\t\t} }\n\t}\n} } };\n//#endregion\n//#region src/core/data-types.ts\nfunction elementNumber(element) {\n\tif (typeof element === \"number\") return element;\n\tif (typeof element === \"string\" && !isNonFiniteText(element)) {\n\t\tconst converted = Number(element);\n\t\tif (Number.isFinite(converted)) return converted;\n\t}\n\tthrow structuredError(\"CONTRACT.CAST_REFUSED\", `A vector holds finite numbers, and ${JSON.stringify(element)} is not one.`, {\n\t\twhy: \"A vector element is a finite number; NaN and the two infinities have no place in one.\",\n\t\tfix: \"Use a finite number for every element.\"\n\t});\n}\nconst pgvectorVector = dataType(\"pgvector/vector\", { listCast: {\n\tof: [\n\t\tpgInt2.id,\n\t\tpgInt4.id,\n\t\tpgInt8.id,\n\t\tpgNumeric.id\n\t],\n\tcast: (elements) => elements.map(elementNumber)\n} });\nconst pgvectorDataTypes = [pgvectorVector];\n//#endregion\n//#region src/core/codecs.ts\nconst vectorParamsSchema = type({ length: \"number\" }).narrow((params, ctx) => {\n\tconst { length } = params;\n\tif (!Number.isInteger(length)) return ctx.mustBe(\"an integer\");\n\tif (length < 1 || length > 16e3) return ctx.mustBe(`in the range [1, ${VECTOR_MAX_DIM}]`);\n\treturn true;\n});\nconst PG_VECTOR_NATIVE_TYPE = \"vector\";\nfunction parseVector(value) {\n\tif (!value.startsWith(\"[\") || !value.endsWith(\"]\")) throw pgVectorError(\"RUNTIME.DECODE_FAILED\", `Invalid vector format: expected \"[...]\", got \"${value}\"`, {\n\t\twhy: \"The database returned a vector value that is not in the PostgreSQL \\\"[x,y,z]\\\" text format.\",\n\t\tmeta: {\n\t\t\tcodecId: VECTOR_CODEC_ID,\n\t\t\twirePreview: value\n\t\t}\n\t});\n\tconst content = value.slice(1, -1).trim();\n\treturn content === \"\" ? [] : content.split(\",\").map((entry) => {\n\t\tconst number = Number.parseFloat(entry.trim());\n\t\tif (Number.isNaN(number)) throw pgVectorError(\"RUNTIME.DECODE_FAILED\", `Invalid vector value: \"${entry}\" is not a number`, {\n\t\t\twhy: \"A vector entry returned by the database could not be parsed as a number.\",\n\t\t\tmeta: {\n\t\t\t\tcodecId: VECTOR_CODEC_ID,\n\t\t\t\twirePreview: value\n\t\t\t}\n\t\t});\n\t\treturn number;\n\t});\n}\nvar PgVectorCodec = class extends CodecImpl {\n\tlength;\n\tconstructor(descriptor, length) {\n\t\tsuper(descriptor);\n\t\tthis.length = length;\n\t}\n\tassertVector(value, code) {\n\t\tconst meta = {\n\t\t\tcodecId: VECTOR_CODEC_ID,\n\t\t\texpectedLength: this.length\n\t\t};\n\t\tif (!Array.isArray(value)) throw pgVectorError(code, \"Vector value must be an array of numbers\", { meta });\n\t\tfor (const element of value) {\n\t\t\tif (typeof element !== \"number\") throw pgVectorError(code, \"Vector value must contain only numbers\", { meta });\n\t\t\tif (!Number.isFinite(element)) throw pgVectorError(code, \"Vector value must contain only finite numbers\", { meta });\n\t\t}\n\t\tif (value.length !== this.length) throw pgVectorError(code, `Vector length mismatch: expected ${this.length}, got ${value.length}`, {\n\t\t\twhy: `This column is declared as vector(${this.length}); every value must have exactly that many dimensions.`,\n\t\t\tmeta: {\n\t\t\t\t...meta,\n\t\t\t\treceivedLength: value.length\n\t\t\t}\n\t\t});\n\t}\n\tasync encode(value, _ctx) {\n\t\tthis.assertVector(value, \"RUNTIME.ENCODE_FAILED\");\n\t\treturn `[${value.join(\",\")}]`;\n\t}\n\tasync decode(wire, _ctx) {\n\t\tif (typeof wire !== \"string\") throw pgVectorError(\"RUNTIME.DECODE_FAILED\", \"Vector wire value must be a string\", { meta: { codecId: VECTOR_CODEC_ID } });\n\t\tconst value = parseVector(wire);\n\t\tthis.assertVector(value, \"RUNTIME.DECODE_FAILED\");\n\t\treturn value;\n\t}\n\tencodeJson(value) {\n\t\tthis.assertVector(value, \"RUNTIME.ENCODE_FAILED\");\n\t\treturn [...value];\n\t}\n\tdecodeJson(json) {\n\t\tif (!Array.isArray(json) || json.length !== this.length) return this.refuseJson(json);\n\t\tconst numbers = [];\n\t\tfor (const element of json) {\n\t\t\tif (typeof element !== \"number\" || !Number.isFinite(element)) return this.refuseJson(json);\n\t\t\tnumbers.push(element);\n\t\t}\n\t\treturn numbers;\n\t}\n\trefuseJson(json) {\n\t\treturn refuseJsonValue(VECTOR_CODEC_ID, `an array of ${counted(this.length, \"finite number\")}`, json);\n\t}\n};\n/**\n* Projects a `vector` as a JSON numeric array.\n*\n* A `vector` handed straight to a JSON constructor is rendered through its text\n* output function, so it arrives as the *string* `\"[1,2,3]\"` rather than as an\n* array.\n*\n* The route matters as much as the destination. A vector's elements are `real`,\n* and its text form prints the shortest decimal that round-trips *as a `real`* —\n* `0.1` for a value the application holds as `0.10000000149011612`. Reading that\n* text back as a double therefore lands on a different number, so casting the\n* text to `json` would lose precision the value still had. Widening each element\n* to `float8` first keeps the exact value the `real` denotes, which is what\n* `encodeJson` returns.\n*/\nconst jsonArrayFromVectorElements = (expression) => FunctionCallExpr.of(\"array_to_json\", [CastExpr.as(CastExpr.as(expression, \"real[]\"), \"float8[]\")]);\nvar PgVectorDescriptor = class extends PostgresCodecDescriptor {\n\tnativeType() {\n\t\treturn PG_VECTOR_NATIVE_TYPE;\n\t}\n\tjsonProjection(expression) {\n\t\treturn jsonArrayFromVectorElements(expression);\n\t}\n\tdataType = pgvectorVector.id;\n\tcodecId = VECTOR_CODEC_ID;\n\ttraits = [\"equality\"];\n\ttargetTypes = [\"vector\"];\n\tparamsSchema = vectorParamsSchema;\n\trenderOutputType(params) {\n\t\treturn `Vector<${params.length}>`;\n\t}\n\tfactory(params) {\n\t\treturn () => new PgVectorCodec(this, params.length);\n\t}\n};\nconst codecDescriptorMap = { vector: new PgVectorDescriptor() };\n//#endregion\n//#region src/core/registry.ts\n/**\n* Registry of every codec descriptor shipped by `@internal/extension-pgvector`.\n*\n* Public consumer surface for the pgvector codec set. Currently a single entry (`pg/vector@1`); the registry shape stays consistent with the other codec-shipping packages so consumers don't need to special-case extensions. See ADR 208.\n*/\nconst pgvectorCodecRegistry = buildCodecDescriptorRegistry(definePostgresCodecs(Object.values(codecDescriptorMap)));\n//#endregion\n//#region src/core/descriptor-meta.ts\nconst pgvectorTypeId = \"pg/vector@1\";\nfunction pgvectorQueryOperations() {\n\treturn {\n\t\tcosineDistance: {\n\t\t\tself: { codecId: pgvectorTypeId },\n\t\t\timpl: (self, other) => {\n\t\t\t\tconst selfCodec = codecOf(self);\n\t\t\t\treturn buildOperation({\n\t\t\t\t\tmethod: \"cosineDistance\",\n\t\t\t\t\targs: [toExpr(self, selfCodec), toExpr(other, selfCodec)],\n\t\t\t\t\treturns: {\n\t\t\t\t\t\tcodecId: \"pg/float8@1\",\n\t\t\t\t\t\tnullable: false\n\t\t\t\t\t},\n\t\t\t\t\tlowering: {\n\t\t\t\t\t\ttargetFamily: \"sql\",\n\t\t\t\t\t\ttemplate: \"{{self}} <=> {{arg0}}\"\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tcosineSimilarity: {\n\t\t\tself: { codecId: pgvectorTypeId },\n\t\t\timpl: (self, other) => {\n\t\t\t\tconst selfCodec = codecOf(self);\n\t\t\t\treturn buildOperation({\n\t\t\t\t\tmethod: \"cosineSimilarity\",\n\t\t\t\t\targs: [toExpr(self, selfCodec), toExpr(other, selfCodec)],\n\t\t\t\t\treturns: {\n\t\t\t\t\t\tcodecId: \"pg/float8@1\",\n\t\t\t\t\t\tnullable: false\n\t\t\t\t\t},\n\t\t\t\t\tlowering: {\n\t\t\t\t\t\ttargetFamily: \"sql\",\n\t\t\t\t\t\ttemplate: \"1 - ({{self}} <=> {{arg0}})\"\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n}\nconst pgvectorPackMeta = {\n\tkind: \"extension\",\n\tid: \"pgvector\",\n\tfamilyId: \"sql\",\n\ttargetId: \"postgres\",\n\tversion: \"0.0.1\",\n\tcapabilities: { postgres: { \"pgvector.cosine\": true } },\n\tauthoring: { type: pgvectorAuthoringTypes },\n\tdataTypes: pgvectorDataTypes,\n\ttypes: {\n\t\tcodecTypes: {\n\t\t\tcodecDescriptors: Array.from(pgvectorCodecRegistry.values()),\n\t\t\timport: {\n\t\t\t\tpackage: \"@internal/extension-pgvector/codec-types\",\n\t\t\t\tnamed: \"CodecTypes\",\n\t\t\t\talias: \"PgVectorTypes\"\n\t\t\t},\n\t\t\ttypeImports: [{\n\t\t\t\tpackage: \"@internal/extension-pgvector/codec-types\",\n\t\t\t\tnamed: \"Vector\",\n\t\t\t\talias: \"Vector\"\n\t\t\t}]\n\t\t},\n\t\toperationTypes: { import: {\n\t\t\tpackage: \"@internal/extension-pgvector/operation-types\",\n\t\t\tnamed: \"OperationTypes\",\n\t\t\talias: \"PgVectorOperationTypes\"\n\t\t} },\n\t\tqueryOperationTypes: { import: {\n\t\t\tpackage: \"@internal/extension-pgvector/operation-types\",\n\t\t\tnamed: \"QueryOperationTypes\",\n\t\t\talias: \"PgVectorQueryOperationTypes\"\n\t\t} },\n\t\tstorage: [{\n\t\t\ttypeId: pgvectorTypeId,\n\t\t\tfamilyId: \"sql\",\n\t\t\ttargetId: \"postgres\",\n\t\t\tnativeType: \"vector\"\n\t\t}]\n\t}\n};\n//#endregion\nexport { pgvectorQueryOperations as n, pgvectorCodecRegistry as r, pgvectorPackMeta as t };\n\n//# sourceMappingURL=descriptor-meta-bq73UCnY.mjs.map"],"mappings":"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"}
package/dist/pack.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { t as CodecTypes } from "./codec-types-BMIVhq93-EFF4mnLc.mjs";
1
+ import { t as CodecTypes } from "./codec-types-BcRFL6rH-BJ2FC4bE.mjs";
2
2
  import "./operation-types-D37jCdyS-ClyVMplO.mjs";
3
3
  //#region ../../../3-extensions/pgvector/dist/pack.d.mts
4
4
  //#region src/core/descriptor-meta.d.ts
package/dist/pack.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import { n as pgvectorPackMeta } from "./descriptor-meta-Ckujf9HZ-pwQkvCZ_.mjs";
1
+ import { n as pgvectorPackMeta } from "./descriptor-meta-bq73UCnY-BHrqZjKP.mjs";
2
2
  export { pgvectorPackMeta as default };
package/dist/runtime.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { n as pgvectorPackMeta, r as pgvectorQueryOperations, t as pgvectorCodecRegistry } from "./descriptor-meta-Ckujf9HZ-pwQkvCZ_.mjs";
1
+ import { n as pgvectorPackMeta, r as pgvectorQueryOperations, t as pgvectorCodecRegistry } from "./descriptor-meta-bq73UCnY-BHrqZjKP.mjs";
2
2
  //#region ../../../3-extensions/pgvector/dist/runtime.mjs
3
3
  const pgvectorRuntimeDescriptor = {
4
4
  kind: "extension",
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.mjs","names":[],"sources":["../../../../3-extensions/pgvector/dist/runtime.mjs"],"sourcesContent":["import { n as pgvectorQueryOperations, r as pgvectorCodecRegistry, t as pgvectorPackMeta } from \"./descriptor-meta-Ckujf9HZ.mjs\";\n//#region src/exports/runtime.ts\nconst pgvectorRuntimeDescriptor = {\n\tkind: \"extension\",\n\tid: pgvectorPackMeta.id,\n\tversion: pgvectorPackMeta.version,\n\tfamilyId: \"sql\",\n\ttargetId: \"postgres\",\n\ttypes: { codecTypes: { codecDescriptors: Array.from(pgvectorCodecRegistry.values()) } },\n\tcodecs: () => Array.from(pgvectorCodecRegistry.values()),\n\tqueryOperations: () => pgvectorQueryOperations(),\n\tcreate() {\n\t\treturn {\n\t\t\tfamilyId: \"sql\",\n\t\t\ttargetId: \"postgres\"\n\t\t};\n\t}\n};\n//#endregion\nexport { pgvectorRuntimeDescriptor as default, pgvectorCodecRegistry };\n\n//# sourceMappingURL=runtime.mjs.map"],"mappings":";;AAEA,MAAM,4BAA4B;CACjC,MAAM;CACN,IAAI,iBAAiB;CACrB,SAAS,iBAAiB;CAC1B,UAAU;CACV,UAAU;CACV,OAAO,EAAE,YAAY,EAAE,kBAAkB,MAAM,KAAK,sBAAsB,OAAO,CAAC,EAAE,EAAE;CACtF,cAAc,MAAM,KAAK,sBAAsB,OAAO,CAAC;CACvD,uBAAuB,wBAAwB;CAC/C,SAAS;EACR,OAAO;GACN,UAAU;GACV,UAAU;EACX;CACD;AACD"}
1
+ {"version":3,"file":"runtime.mjs","names":[],"sources":["../../../../3-extensions/pgvector/dist/runtime.mjs"],"sourcesContent":["import { n as pgvectorQueryOperations, r as pgvectorCodecRegistry, t as pgvectorPackMeta } from \"./descriptor-meta-bq73UCnY.mjs\";\n//#region src/exports/runtime.ts\nconst pgvectorRuntimeDescriptor = {\n\tkind: \"extension\",\n\tid: pgvectorPackMeta.id,\n\tversion: pgvectorPackMeta.version,\n\tfamilyId: \"sql\",\n\ttargetId: \"postgres\",\n\ttypes: { codecTypes: { codecDescriptors: Array.from(pgvectorCodecRegistry.values()) } },\n\tcodecs: () => Array.from(pgvectorCodecRegistry.values()),\n\tqueryOperations: () => pgvectorQueryOperations(),\n\tcreate() {\n\t\treturn {\n\t\t\tfamilyId: \"sql\",\n\t\t\ttargetId: \"postgres\"\n\t\t};\n\t}\n};\n//#endregion\nexport { pgvectorRuntimeDescriptor as default, pgvectorCodecRegistry };\n\n//# sourceMappingURL=runtime.mjs.map"],"mappings":";;AAEA,MAAM,4BAA4B;CACjC,MAAM;CACN,IAAI,iBAAiB;CACrB,SAAS,iBAAiB;CAC1B,UAAU;CACV,UAAU;CACV,OAAO,EAAE,YAAY,EAAE,kBAAkB,MAAM,KAAK,sBAAsB,OAAO,CAAC,EAAE,EAAE;CACtF,cAAc,MAAM,KAAK,sBAAsB,OAAO,CAAC;CACvD,uBAAuB,wBAAwB;CAC/C,SAAS;EACR,OAAO;GACN,UAAU;GACV,UAAU;EACX;CACD;AACD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prisma/orm-extension-pgvector",
3
- "version": "8.0.0-rc.14-dev.5",
3
+ "version": "8.0.0-rc.14-dev.7",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -9,22 +9,22 @@
9
9
  "dist"
10
10
  ],
11
11
  "dependencies": {
12
- "@prisma/orm-family-sql": "8.0.0-rc.14-dev.5",
13
- "@prisma/orm-framework": "8.0.0-rc.14-dev.5",
14
- "@prisma/orm-toolchain": "8.0.0-rc.14-dev.5",
12
+ "@prisma/orm-family-sql": "8.0.0-rc.14-dev.7",
13
+ "@prisma/orm-framework": "8.0.0-rc.14-dev.7",
14
+ "@prisma/orm-toolchain": "8.0.0-rc.14-dev.7",
15
15
  "@standard-schema/spec": "^1.1.0",
16
16
  "arktype": "^2.2.2"
17
17
  },
18
18
  "devDependencies": {
19
- "@internal/extension-pgvector": "8.0.0-rc.14-dev.5",
20
- "@repo/tsconfig": "8.0.0-rc.14-dev.5",
21
- "@repo/tsdown": "8.0.0-rc.14-dev.5",
22
- "@prisma/orm-target-postgres": "8.0.0-rc.14-dev.5",
19
+ "@internal/extension-pgvector": "8.0.0-rc.14-dev.7",
20
+ "@repo/tsconfig": "8.0.0-rc.14-dev.7",
21
+ "@repo/tsdown": "8.0.0-rc.14-dev.7",
22
+ "@prisma/orm-target-postgres": "8.0.0-rc.14-dev.7",
23
23
  "tsdown": "0.22.14",
24
24
  "typescript": "5.9.3"
25
25
  },
26
26
  "peerDependencies": {
27
- "@prisma/orm-target-postgres": "8.0.0-rc.14-dev.5",
27
+ "@prisma/orm-target-postgres": "8.0.0-rc.14-dev.7",
28
28
  "typescript": ">=5.9"
29
29
  },
30
30
  "peerDependenciesMeta": {
@@ -1 +0,0 @@
1
- {"version":3,"file":"codec-types-BMIVhq93-EFF4mnLc.d.mts","names":[],"sources":["../../../../3-extensions/pgvector/dist/codec-types-BMIVhq93.d.mts"],"mappings":";;;;;;;;KAOK;KACA;WACM;;cAEG,sBAAsB,iBAAiB;WAC1C;EACT,YAAY,YAAY,oBAAoB;EAC5C,aAAa,gBAAgB,MAAM,+BAA+B;EAClE,OAAO,iBAAiB,MAAM,mBAAmB;EACjD,OAAO,cAAc,MAAM,mBAAmB;EAC9C,WAAW,kBAAkB;EAC7B,WAAW,MAAM;;cAEL,2BAA2B,wBAAwB;YACrD;YACA,eAAe,YAAY,iBAAiB;WAC7C,yDAAyD;WACzD;WACA;WACA;WACA,cAAc,iBAAiB;EACxC,iBAAiB,QAAQ;EACzB,QAAQ,QAAQ,gBAAgB,KAAK,yBAAyB;;cAElD;WACH,QAAQ;;KAEd,eAAe,yBAAyB;;;;;;;;;KASxC,OAAO;WACD,iBAAiB;;KAEvB,aAAa"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"descriptor-meta-Ckujf9HZ-pwQkvCZ_.mjs","names":[],"sources":["../../../../3-extensions/pgvector/dist/descriptor-meta-Ckujf9HZ.mjs"],"sourcesContent":["import { n as VECTOR_CODEC_ID, r as VECTOR_MAX_DIM, t as pgVectorError } from \"./errors-9-gSu3kD.mjs\";\nimport { buildOperation, codecOf, toExpr } from \"@internal/sql-relational-core/expression\";\nimport { CodecImpl, dataType } from \"@internal/framework-components/codec\";\nimport { CastExpr, FunctionCallExpr, isNonFiniteText } from \"@internal/sql-relational-core/ast\";\nimport { pgInt2, pgInt4, pgInt8, pgNumeric } from \"@internal/target-postgres/data-types\";\nimport { structuredError } from \"@internal/utils/structured-error\";\nimport { buildCodecDescriptorRegistry } from \"@internal/sql-relational-core/codec-descriptor-registry\";\nimport { PostgresCodecDescriptor, definePostgresCodecs } from \"@internal/target-postgres/codec-descriptor\";\nimport { type } from \"arktype\";\n//#region src/core/authoring.ts\nconst pgvectorAuthoringTypes = { pgvector: { Vector: {\n\tkind: \"typeConstructor\",\n\targs: [{\n\t\tkind: \"number\",\n\t\tname: \"length\",\n\t\tinteger: true,\n\t\tminimum: 1,\n\t\tmaximum: VECTOR_MAX_DIM\n\t}],\n\toutput: {\n\t\tcodecId: \"pg/vector@1\",\n\t\tnativeType: \"vector\",\n\t\ttypeParams: { length: {\n\t\t\tkind: \"arg\",\n\t\t\tindex: 0\n\t\t} }\n\t}\n} } };\n//#endregion\n//#region src/core/data-types.ts\nfunction elementNumber(element) {\n\tif (typeof element === \"number\") return element;\n\tif (typeof element === \"string\" && !isNonFiniteText(element)) {\n\t\tconst converted = Number(element);\n\t\tif (Number.isFinite(converted)) return converted;\n\t}\n\tthrow structuredError(\"CONTRACT.CAST_REFUSED\", `A vector holds finite numbers, and ${JSON.stringify(element)} is not one.`, {\n\t\twhy: \"A vector element is a finite number; NaN and the two infinities have no place in one.\",\n\t\tfix: \"Use a finite number for every element.\"\n\t});\n}\nconst pgvectorVector = dataType(\"pgvector/vector\", { listCast: {\n\tof: [\n\t\tpgInt2.id,\n\t\tpgInt4.id,\n\t\tpgInt8.id,\n\t\tpgNumeric.id\n\t],\n\tcast: (elements) => elements.map(elementNumber)\n} });\nconst pgvectorDataTypes = [pgvectorVector];\n//#endregion\n//#region src/core/codecs.ts\nconst vectorParamsSchema = type({ length: \"number\" }).narrow((params, ctx) => {\n\tconst { length } = params;\n\tif (!Number.isInteger(length)) return ctx.mustBe(\"an integer\");\n\tif (length < 1 || length > 16e3) return ctx.mustBe(`in the range [1, ${VECTOR_MAX_DIM}]`);\n\treturn true;\n});\nconst PG_VECTOR_NATIVE_TYPE = \"vector\";\nfunction parseVector(value) {\n\tif (!value.startsWith(\"[\") || !value.endsWith(\"]\")) throw pgVectorError(\"RUNTIME.DECODE_FAILED\", `Invalid vector format: expected \"[...]\", got \"${value}\"`, {\n\t\twhy: \"The database returned a vector value that is not in the PostgreSQL \\\"[x,y,z]\\\" text format.\",\n\t\tmeta: {\n\t\t\tcodecId: VECTOR_CODEC_ID,\n\t\t\twirePreview: value\n\t\t}\n\t});\n\tconst content = value.slice(1, -1).trim();\n\treturn content === \"\" ? [] : content.split(\",\").map((entry) => {\n\t\tconst number = Number.parseFloat(entry.trim());\n\t\tif (Number.isNaN(number)) throw pgVectorError(\"RUNTIME.DECODE_FAILED\", `Invalid vector value: \"${entry}\" is not a number`, {\n\t\t\twhy: \"A vector entry returned by the database could not be parsed as a number.\",\n\t\t\tmeta: {\n\t\t\t\tcodecId: VECTOR_CODEC_ID,\n\t\t\t\twirePreview: value\n\t\t\t}\n\t\t});\n\t\treturn number;\n\t});\n}\nvar PgVectorCodec = class extends CodecImpl {\n\tlength;\n\tconstructor(descriptor, length) {\n\t\tsuper(descriptor);\n\t\tthis.length = length;\n\t}\n\tassertVector(value, code) {\n\t\tconst meta = {\n\t\t\tcodecId: VECTOR_CODEC_ID,\n\t\t\texpectedLength: this.length\n\t\t};\n\t\tif (!Array.isArray(value)) throw pgVectorError(code, \"Vector value must be an array of numbers\", { meta });\n\t\tfor (const element of value) {\n\t\t\tif (typeof element !== \"number\") throw pgVectorError(code, \"Vector value must contain only numbers\", { meta });\n\t\t\tif (!Number.isFinite(element)) throw pgVectorError(code, \"Vector value must contain only finite numbers\", { meta });\n\t\t}\n\t\tif (value.length !== this.length) throw pgVectorError(code, `Vector length mismatch: expected ${this.length}, got ${value.length}`, {\n\t\t\twhy: `This column is declared as vector(${this.length}); every value must have exactly that many dimensions.`,\n\t\t\tmeta: {\n\t\t\t\t...meta,\n\t\t\t\treceivedLength: value.length\n\t\t\t}\n\t\t});\n\t}\n\tasync encode(value, _ctx) {\n\t\tthis.assertVector(value, \"RUNTIME.ENCODE_FAILED\");\n\t\treturn `[${value.join(\",\")}]`;\n\t}\n\tasync decode(wire, _ctx) {\n\t\tif (typeof wire !== \"string\") throw pgVectorError(\"RUNTIME.DECODE_FAILED\", \"Vector wire value must be a string\", { meta: { codecId: VECTOR_CODEC_ID } });\n\t\tconst value = parseVector(wire);\n\t\tthis.assertVector(value, \"RUNTIME.DECODE_FAILED\");\n\t\treturn value;\n\t}\n\tencodeJson(value) {\n\t\tthis.assertVector(value, \"RUNTIME.ENCODE_FAILED\");\n\t\treturn [...value];\n\t}\n\tdecodeJson(json) {\n\t\tif (!Array.isArray(json)) throw pgVectorError(\"RUNTIME.DECODE_FAILED\", \"Vector database JSON value must be an array\", { meta: { codecId: VECTOR_CODEC_ID } });\n\t\tconst value = [...json];\n\t\tthis.assertVector(value, \"RUNTIME.DECODE_FAILED\");\n\t\treturn value;\n\t}\n};\n/**\n* Projects a `vector` as a JSON numeric array.\n*\n* A `vector` handed straight to a JSON constructor is rendered through its text\n* output function, so it arrives as the *string* `\"[1,2,3]\"` rather than as an\n* array.\n*\n* The route matters as much as the destination. A vector's elements are `real`,\n* and its text form prints the shortest decimal that round-trips *as a `real`* —\n* `0.1` for a value the application holds as `0.10000000149011612`. Reading that\n* text back as a double therefore lands on a different number, so casting the\n* text to `json` would lose precision the value still had. Widening each element\n* to `float8` first keeps the exact value the `real` denotes, which is what\n* `encodeJson` returns.\n*/\nconst jsonArrayFromVectorElements = (expression) => FunctionCallExpr.of(\"array_to_json\", [CastExpr.as(CastExpr.as(expression, \"real[]\"), \"float8[]\")]);\nvar PgVectorDescriptor = class extends PostgresCodecDescriptor {\n\tnativeType() {\n\t\treturn PG_VECTOR_NATIVE_TYPE;\n\t}\n\tjsonProjection(expression) {\n\t\treturn jsonArrayFromVectorElements(expression);\n\t}\n\tdataType = pgvectorVector.id;\n\tcodecId = VECTOR_CODEC_ID;\n\ttraits = [\"equality\"];\n\ttargetTypes = [\"vector\"];\n\tparamsSchema = vectorParamsSchema;\n\trenderOutputType(params) {\n\t\treturn `Vector<${params.length}>`;\n\t}\n\tfactory(params) {\n\t\treturn () => new PgVectorCodec(this, params.length);\n\t}\n};\nconst codecDescriptorMap = { vector: new PgVectorDescriptor() };\n//#endregion\n//#region src/core/registry.ts\n/**\n* Registry of every codec descriptor shipped by `@internal/extension-pgvector`.\n*\n* Public consumer surface for the pgvector codec set. Currently a single entry (`pg/vector@1`); the registry shape stays consistent with the other codec-shipping packages so consumers don't need to special-case extensions. See ADR 208.\n*/\nconst pgvectorCodecRegistry = buildCodecDescriptorRegistry(definePostgresCodecs(Object.values(codecDescriptorMap)));\n//#endregion\n//#region src/core/descriptor-meta.ts\nconst pgvectorTypeId = \"pg/vector@1\";\nfunction pgvectorQueryOperations() {\n\treturn {\n\t\tcosineDistance: {\n\t\t\tself: { codecId: pgvectorTypeId },\n\t\t\timpl: (self, other) => {\n\t\t\t\tconst selfCodec = codecOf(self);\n\t\t\t\treturn buildOperation({\n\t\t\t\t\tmethod: \"cosineDistance\",\n\t\t\t\t\targs: [toExpr(self, selfCodec), toExpr(other, selfCodec)],\n\t\t\t\t\treturns: {\n\t\t\t\t\t\tcodecId: \"pg/float8@1\",\n\t\t\t\t\t\tnullable: false\n\t\t\t\t\t},\n\t\t\t\t\tlowering: {\n\t\t\t\t\t\ttargetFamily: \"sql\",\n\t\t\t\t\t\ttemplate: \"{{self}} <=> {{arg0}}\"\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tcosineSimilarity: {\n\t\t\tself: { codecId: pgvectorTypeId },\n\t\t\timpl: (self, other) => {\n\t\t\t\tconst selfCodec = codecOf(self);\n\t\t\t\treturn buildOperation({\n\t\t\t\t\tmethod: \"cosineSimilarity\",\n\t\t\t\t\targs: [toExpr(self, selfCodec), toExpr(other, selfCodec)],\n\t\t\t\t\treturns: {\n\t\t\t\t\t\tcodecId: \"pg/float8@1\",\n\t\t\t\t\t\tnullable: false\n\t\t\t\t\t},\n\t\t\t\t\tlowering: {\n\t\t\t\t\t\ttargetFamily: \"sql\",\n\t\t\t\t\t\ttemplate: \"1 - ({{self}} <=> {{arg0}})\"\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n}\nconst pgvectorPackMeta = {\n\tkind: \"extension\",\n\tid: \"pgvector\",\n\tfamilyId: \"sql\",\n\ttargetId: \"postgres\",\n\tversion: \"0.0.1\",\n\tcapabilities: { postgres: { \"pgvector.cosine\": true } },\n\tauthoring: { type: pgvectorAuthoringTypes },\n\tdataTypes: pgvectorDataTypes,\n\ttypes: {\n\t\tcodecTypes: {\n\t\t\tcodecDescriptors: Array.from(pgvectorCodecRegistry.values()),\n\t\t\timport: {\n\t\t\t\tpackage: \"@internal/extension-pgvector/codec-types\",\n\t\t\t\tnamed: \"CodecTypes\",\n\t\t\t\talias: \"PgVectorTypes\"\n\t\t\t},\n\t\t\ttypeImports: [{\n\t\t\t\tpackage: \"@internal/extension-pgvector/codec-types\",\n\t\t\t\tnamed: \"Vector\",\n\t\t\t\talias: \"Vector\"\n\t\t\t}]\n\t\t},\n\t\toperationTypes: { import: {\n\t\t\tpackage: \"@internal/extension-pgvector/operation-types\",\n\t\t\tnamed: \"OperationTypes\",\n\t\t\talias: \"PgVectorOperationTypes\"\n\t\t} },\n\t\tqueryOperationTypes: { import: {\n\t\t\tpackage: \"@internal/extension-pgvector/operation-types\",\n\t\t\tnamed: \"QueryOperationTypes\",\n\t\t\talias: \"PgVectorQueryOperationTypes\"\n\t\t} },\n\t\tstorage: [{\n\t\t\ttypeId: pgvectorTypeId,\n\t\t\tfamilyId: \"sql\",\n\t\t\ttargetId: \"postgres\",\n\t\t\tnativeType: \"vector\"\n\t\t}]\n\t}\n};\n//#endregion\nexport { pgvectorQueryOperations as n, pgvectorCodecRegistry as r, pgvectorPackMeta as t };\n\n//# sourceMappingURL=descriptor-meta-Ckujf9HZ.mjs.map"],"mappings":"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"}