@prisma-next/sqlite 0.12.0-dev.5 → 0.12.0-dev.51

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.
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.mts","names":[],"sources":["../src/config/define-config.ts"],"mappings":";;;;UAYiB,mBAAA;EAAA,SACN,QAAA;EAAA,SACA,UAAA;EAAA,SACA,EAAA;IAAA,SACE,UAAA;EAAA;EAAA,SAEF,UAAA,YAAsB,0BAA0B;EAAA,SAChD,UAAA;IAAA,SACE,GAAA;EAAA;AAAA;AAAA,iBAYG,YAAA,CAAa,OAAA,EAAS,mBAAA,GAAsB,gBAAgB"}
1
+ {"version":3,"file":"config.d.mts","names":[],"sources":["../src/config/define-config.ts"],"mappings":";;;;UAaiB,mBAAA;EAAA,SACN,QAAA;EAAA,SACA,UAAA;EAAA,SACA,EAAA;IAAA,SACE,UAAA;EAAA;EAAA,SAEF,UAAA,YAAsB,0BAA0B;EAAA,SAChD,UAAA;IAAA,SACE,GAAA;EAAA;AAAA;AAAA,iBAYG,YAAA,CAAa,OAAA,EAAS,mBAAA,GAAsB,gBAAgB"}
package/dist/config.mjs CHANGED
@@ -4,7 +4,8 @@ import sqliteDriver from "@prisma-next/driver-sqlite/control";
4
4
  import sql from "@prisma-next/family-sql/control";
5
5
  import { prismaContract } from "@prisma-next/sql-contract-psl/provider";
6
6
  import { typescriptContractFromPath } from "@prisma-next/sql-contract-ts/config-types";
7
- import sqlite from "@prisma-next/target-sqlite/control";
7
+ import sqlite, { sqliteCreateNamespace } from "@prisma-next/target-sqlite/control";
8
+ import sqlitePackRef from "@prisma-next/target-sqlite/pack";
8
9
  import { ifDefined } from "@prisma-next/utils/defined";
9
10
  import { extname, join } from "pathe";
10
11
  //#region src/config/define-config.ts
@@ -24,7 +25,8 @@ function defineConfig(options) {
24
25
  extensionPacks: extensions,
25
26
  contract: extname(options.contract) === ".ts" ? typescriptContractFromPath(options.contract, output) : prismaContract(options.contract, {
26
27
  output,
27
- target: sqlite
28
+ target: sqlitePackRef,
29
+ createNamespace: sqliteCreateNamespace
28
30
  }),
29
31
  ...ifDefined("db", options.db),
30
32
  ...ifDefined("migrations", options.migrations)
@@ -1 +1 @@
1
- {"version":3,"file":"config.mjs","names":["coreDefineConfig"],"sources":["../src/config/define-config.ts"],"sourcesContent":["import sqliteAdapter from '@prisma-next/adapter-sqlite/control';\nimport type { PrismaNextConfig } from '@prisma-next/config/config-types';\nimport { defineConfig as coreDefineConfig } from '@prisma-next/config/config-types';\nimport sqliteDriver from '@prisma-next/driver-sqlite/control';\nimport sql from '@prisma-next/family-sql/control';\nimport type { ControlExtensionDescriptor } from '@prisma-next/framework-components/control';\nimport { prismaContract } from '@prisma-next/sql-contract-psl/provider';\nimport { typescriptContractFromPath } from '@prisma-next/sql-contract-ts/config-types';\nimport sqlite from '@prisma-next/target-sqlite/control';\nimport { ifDefined } from '@prisma-next/utils/defined';\nimport { extname, join } from 'pathe';\n\nexport interface SqliteConfigOptions {\n readonly contract: string;\n readonly outputPath?: string;\n readonly db?: {\n readonly connection?: string;\n };\n readonly extensions?: readonly ControlExtensionDescriptor<'sql', 'sqlite'>[];\n readonly migrations?: {\n readonly dir?: string;\n };\n}\n\nfunction deriveOutputPath(contractPath: string): string {\n const ext = extname(contractPath);\n if (ext.length === 0) {\n return `${contractPath}.json`;\n }\n return `${contractPath.slice(0, -ext.length)}.json`;\n}\n\nexport function defineConfig(options: SqliteConfigOptions): PrismaNextConfig<'sql', 'sqlite'> {\n const extensions = options.extensions ?? [];\n const output =\n options.outputPath !== undefined\n ? join(options.outputPath, 'contract.json')\n : deriveOutputPath(options.contract);\n const ext = extname(options.contract);\n\n const contractConfig =\n ext === '.ts'\n ? typescriptContractFromPath(options.contract, output)\n : prismaContract(options.contract, {\n output,\n target: sqlite,\n });\n\n return coreDefineConfig({\n family: sql,\n target: sqlite,\n adapter: sqliteAdapter,\n driver: sqliteDriver,\n extensionPacks: extensions,\n contract: contractConfig,\n ...ifDefined('db', options.db),\n ...ifDefined('migrations', options.migrations),\n });\n}\n"],"mappings":";;;;;;;;;;AAwBA,SAAS,iBAAiB,cAA8B;CACtD,MAAM,MAAM,QAAQ,YAAY;CAChC,IAAI,IAAI,WAAW,GACjB,OAAO,GAAG,aAAa;CAEzB,OAAO,GAAG,aAAa,MAAM,GAAG,CAAC,IAAI,MAAM,EAAE;AAC/C;AAEA,SAAgB,aAAa,SAAiE;CAC5F,MAAM,aAAa,QAAQ,cAAc,CAAC;CAC1C,MAAM,SACJ,QAAQ,eAAe,KAAA,IACnB,KAAK,QAAQ,YAAY,eAAe,IACxC,iBAAiB,QAAQ,QAAQ;CAWvC,OAAOA,eAAiB;EACtB,QAAQ;EACR,QAAQ;EACR,SAAS;EACT,QAAQ;EACR,gBAAgB;EAChB,UAhBU,QAAQ,QAAQ,QAGxB,MAAM,QACJ,2BAA2B,QAAQ,UAAU,MAAM,IACnD,eAAe,QAAQ,UAAU;GAC/B;GACA,QAAQ;EACV,CAAC;EASL,GAAG,UAAU,MAAM,QAAQ,EAAE;EAC7B,GAAG,UAAU,cAAc,QAAQ,UAAU;CAC/C,CAAC;AACH"}
1
+ {"version":3,"file":"config.mjs","names":["coreDefineConfig"],"sources":["../src/config/define-config.ts"],"sourcesContent":["import sqliteAdapter from '@prisma-next/adapter-sqlite/control';\nimport type { PrismaNextConfig } from '@prisma-next/config/config-types';\nimport { defineConfig as coreDefineConfig } from '@prisma-next/config/config-types';\nimport sqliteDriver from '@prisma-next/driver-sqlite/control';\nimport sql from '@prisma-next/family-sql/control';\nimport type { ControlExtensionDescriptor } from '@prisma-next/framework-components/control';\nimport { prismaContract } from '@prisma-next/sql-contract-psl/provider';\nimport { typescriptContractFromPath } from '@prisma-next/sql-contract-ts/config-types';\nimport sqlite, { sqliteCreateNamespace } from '@prisma-next/target-sqlite/control';\nimport sqlitePackRef from '@prisma-next/target-sqlite/pack';\nimport { ifDefined } from '@prisma-next/utils/defined';\nimport { extname, join } from 'pathe';\n\nexport interface SqliteConfigOptions {\n readonly contract: string;\n readonly outputPath?: string;\n readonly db?: {\n readonly connection?: string;\n };\n readonly extensions?: readonly ControlExtensionDescriptor<'sql', 'sqlite'>[];\n readonly migrations?: {\n readonly dir?: string;\n };\n}\n\nfunction deriveOutputPath(contractPath: string): string {\n const ext = extname(contractPath);\n if (ext.length === 0) {\n return `${contractPath}.json`;\n }\n return `${contractPath.slice(0, -ext.length)}.json`;\n}\n\nexport function defineConfig(options: SqliteConfigOptions): PrismaNextConfig<'sql', 'sqlite'> {\n const extensions = options.extensions ?? [];\n const output =\n options.outputPath !== undefined\n ? join(options.outputPath, 'contract.json')\n : deriveOutputPath(options.contract);\n const ext = extname(options.contract);\n\n const contractConfig =\n ext === '.ts'\n ? typescriptContractFromPath(options.contract, output)\n : prismaContract(options.contract, {\n output,\n target: sqlitePackRef,\n createNamespace: sqliteCreateNamespace,\n });\n\n return coreDefineConfig({\n family: sql,\n target: sqlite,\n adapter: sqliteAdapter,\n driver: sqliteDriver,\n extensionPacks: extensions,\n contract: contractConfig,\n ...ifDefined('db', options.db),\n ...ifDefined('migrations', options.migrations),\n });\n}\n"],"mappings":";;;;;;;;;;;AAyBA,SAAS,iBAAiB,cAA8B;CACtD,MAAM,MAAM,QAAQ,YAAY;CAChC,IAAI,IAAI,WAAW,GACjB,OAAO,GAAG,aAAa;CAEzB,OAAO,GAAG,aAAa,MAAM,GAAG,CAAC,IAAI,MAAM,EAAE;AAC/C;AAEA,SAAgB,aAAa,SAAiE;CAC5F,MAAM,aAAa,QAAQ,cAAc,CAAC;CAC1C,MAAM,SACJ,QAAQ,eAAe,KAAA,IACnB,KAAK,QAAQ,YAAY,eAAe,IACxC,iBAAiB,QAAQ,QAAQ;CAYvC,OAAOA,eAAiB;EACtB,QAAQ;EACR,QAAQ;EACR,SAAS;EACT,QAAQ;EACR,gBAAgB;EAChB,UAjBU,QAAQ,QAAQ,QAGxB,MAAM,QACJ,2BAA2B,QAAQ,UAAU,MAAM,IACnD,eAAe,QAAQ,UAAU;GAC/B;GACA,QAAQ;GACR,iBAAiB;EACnB,CAAC;EASL,GAAG,UAAU,MAAM,QAAQ,EAAE;EAC7B,GAAG,UAAU,cAAc,QAAQ,UAAU;CAC/C,CAAC;AACH"}
@@ -1,18 +1,19 @@
1
- import { ComposedAuthoringHelpers, ComposedAuthoringHelpers as ComposedAuthoringHelpers$1, ContractDefinition, ContractInput, ContractInput as ContractInput$1, ContractModelBuilder, FieldNode, ForeignKeyNode, IndexNode, ModelLike, ModelLike as ModelLike$1, ModelNode, PrimaryKeyNode, RelationNode, ScalarFieldBuilder, UniqueConstraintNode, defineContract as defineContract$1, field, model, rel } from "@prisma-next/sql-contract-ts/contract-builder";
1
+ import sqlitePackRef from "@prisma-next/target-sqlite/pack";
2
+ import { ComposedAuthoringHelpers, ComposedAuthoringHelpers as ComposedAuthoringHelpers$1, ContractDefinition, ContractInput, ContractInput as ContractInput$1, ContractModelBuilder, FieldNode, ForeignKeyNode, IndexNode, ModelLike, ModelLike as ModelLike$1, ModelNode, PrimaryKeyNode, RelationNode, ScalarFieldBuilder, UniqueConstraintNode, buildBoundContract, field, model, rel } from "@prisma-next/sql-contract-ts/contract-builder";
2
3
  import sqlFamilyPack from "@prisma-next/family-sql/pack";
3
- import sqlitePack from "@prisma-next/target-sqlite/pack";
4
4
  import { ExtensionPackRef } from "@prisma-next/framework-components/components";
5
5
  import { StorageTypeInstance } from "@prisma-next/sql-contract/types";
6
6
 
7
7
  //#region src/contract/define-contract.d.ts
8
8
  type SqlFamily = typeof sqlFamilyPack;
9
- type SqlitePack = typeof sqlitePack;
9
+ type SqlitePack = typeof sqlitePackRef;
10
10
  type TypesConstraint = Record<string, StorageTypeInstance>;
11
11
  type ModelsConstraint = Record<string, ModelLike$1>;
12
- type SqliteResult<Types extends TypesConstraint, Models extends ModelsConstraint, ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined> = Omit<ReturnType<typeof defineContract$1<SqlFamily, SqlitePack, Types, Models, ExtensionPacks>>, 'target' | 'targetFamily'> & {
13
- readonly target: SqlitePack['targetId'];
14
- readonly targetFamily: SqlFamily['familyId'];
15
- };
12
+ type SqliteResult<Types extends TypesConstraint, Models extends ModelsConstraint, ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined> = ReturnType<typeof buildBoundContract<SqlFamily, SqlitePack, {
13
+ readonly types?: Types;
14
+ readonly models?: Models;
15
+ readonly extensionPacks?: ExtensionPacks;
16
+ }>>;
16
17
  type SqliteBaseScaffold<ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined> = Omit<ContractInput$1<SqlFamily, SqlitePack, Record<never, never>, Record<never, never>, ExtensionPacks>, 'family' | 'target' | 'types' | 'models'>;
17
18
  type SqliteDefinition<Types extends TypesConstraint, Models extends ModelsConstraint, ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined> = SqliteBaseScaffold<ExtensionPacks> & {
18
19
  readonly types?: Types;
@@ -1 +1 @@
1
- {"version":3,"file":"contract-builder.d.mts","names":[],"sources":["../src/contract/define-contract.ts"],"mappings":";;;;;;;KAWK,SAAA,UAAmB,aAAa;AAAA,KAChC,UAAA,UAAoB,UAAU;AAAA,KAE9B,eAAA,GAAkB,MAAM,SAAS,mBAAA;AAAA,KACjC,gBAAA,GAAmB,MAAM,SAAS,WAAA;AAAA,KAElC,YAAA,eACW,eAAA,iBACC,gBAAA,yBACQ,MAAA,SAAe,gBAAA,gCACpC,IAAA,CACF,UAAA,QAAkB,gBAAA,CAAmB,SAAA,EAAW,UAAA,EAAY,KAAA,EAAO,MAAA,EAAQ,cAAA;EAAA,SAGlE,MAAA,EAAQ,UAAA;EAAA,SACR,YAAA,EAAc,SAAA;AAAA;AAAA,KAGpB,kBAAA,wBACoB,MAAA,SAAe,gBAAA,gCACpC,IAAA,CACF,eAAA,CAAc,SAAA,EAAW,UAAA,EAAY,MAAA,gBAAsB,MAAA,gBAAsB,cAAA;AAAA,KAI9E,gBAAA,eACW,eAAA,iBACC,gBAAA,yBACQ,MAAA,SAAe,gBAAA,gCACpC,kBAAA,CAAmB,cAAA;EAAA,SACZ,KAAA,GAAQ,KAAA;EAAA,SACR,MAAA,GAAS,MAAA;AAAA;AAAA,KAGf,cAAA,wBACoB,MAAA,SAAe,gBAAA,gCACpC,kBAAA,CAAmB,cAAA;AAAA,iBAEP,cAAA,qBACM,eAAA,GAAkB,MAAA,qCACjB,gBAAA,GAAmB,MAAA,6CAEpC,MAAA,SAAe,gBAAA,yCAAA,CAGnB,UAAA,EAAY,gBAAA,CAAiB,KAAA,EAAO,MAAA,EAAQ,cAAA,IAC3C,YAAA,CAAa,KAAA,EAAO,MAAA,EAAQ,cAAA;AAAA,iBAEf,cAAA,qBACM,eAAA,GAAkB,MAAA,qCACjB,gBAAA,GAAmB,MAAA,6CAEpC,MAAA,SAAe,gBAAA,yCAAA,CAGnB,QAAA,EAAU,cAAA,CAAe,cAAA,GACzB,OAAA,GAAU,OAAA,EAAS,0BAAA,CAAyB,SAAA,EAAW,UAAA,EAAY,cAAA;EAAA,SACxD,KAAA,GAAQ,KAAA;EAAA,SACR,MAAA,GAAS,MAAA;AAAA,IAEnB,YAAA,CAAa,KAAA,EAAO,MAAA,EAAQ,cAAA"}
1
+ {"version":3,"file":"contract-builder.d.mts","names":[],"sources":["../src/contract/define-contract.ts"],"mappings":";;;;;;;KAYK,SAAA,UAAmB,aAAa;AAAA,KAChC,UAAA,UAAoB,aAAU;AAAA,KAE9B,eAAA,GAAkB,MAAM,SAAS,mBAAA;AAAA,KACjC,gBAAA,GAAmB,MAAM,SAAS,WAAA;AAAA,KAElC,YAAA,eACW,eAAA,iBACC,gBAAA,yBACQ,MAAA,SAAe,gBAAA,gCACpC,UAAA,QACK,kBAAA,CACL,SAAA,EACA,UAAA;EAAA,SACW,KAAA,GAAQ,KAAA;EAAA,SAAgB,MAAA,GAAS,MAAA;EAAA,SAAiB,cAAA,GAAiB,cAAA;AAAA;AAAA,KAI7E,kBAAA,wBACoB,MAAA,SAAe,gBAAA,gCACpC,IAAA,CACF,eAAA,CAAc,SAAA,EAAW,UAAA,EAAY,MAAA,gBAAsB,MAAA,gBAAsB,cAAA;AAAA,KAI9E,gBAAA,eACW,eAAA,iBACC,gBAAA,yBACQ,MAAA,SAAe,gBAAA,gCACpC,kBAAA,CAAmB,cAAA;EAAA,SACZ,KAAA,GAAQ,KAAA;EAAA,SACR,MAAA,GAAS,MAAA;AAAA;AAAA,KAGf,cAAA,wBACoB,MAAA,SAAe,gBAAA,gCACpC,kBAAA,CAAmB,cAAA;AAAA,iBAEP,cAAA,qBACM,eAAA,GAAkB,MAAA,qCACjB,gBAAA,GAAmB,MAAA,6CAEpC,MAAA,SAAe,gBAAA,yCAAA,CAGnB,UAAA,EAAY,gBAAA,CAAiB,KAAA,EAAO,MAAA,EAAQ,cAAA,IAC3C,YAAA,CAAa,KAAA,EAAO,MAAA,EAAQ,cAAA;AAAA,iBAEf,cAAA,qBACM,eAAA,GAAkB,MAAA,qCACjB,gBAAA,GAAmB,MAAA,6CAEpC,MAAA,SAAe,gBAAA,yCAAA,CAGnB,QAAA,EAAU,cAAA,CAAe,cAAA,GACzB,OAAA,GAAU,OAAA,EAAS,0BAAA,CAAyB,SAAA,EAAW,UAAA,EAAY,cAAA;EAAA,SACxD,KAAA,GAAQ,KAAA;EAAA,SACR,MAAA,GAAS,MAAA;AAAA,IAEnB,YAAA,CAAa,KAAA,EAAO,MAAA,EAAQ,cAAA"}
@@ -1,18 +1,15 @@
1
- import { defineContract as defineContract$1, field, model, rel } from "@prisma-next/sql-contract-ts/contract-builder";
1
+ import { sqliteCreateNamespace } from "@prisma-next/target-sqlite/control";
2
+ import sqlitePackRef from "@prisma-next/target-sqlite/pack";
3
+ import { buildBoundContract, field, model, rel } from "@prisma-next/sql-contract-ts/contract-builder";
2
4
  import sqlFamilyPack from "@prisma-next/family-sql/pack";
3
- import sqlitePack from "@prisma-next/target-sqlite/pack";
4
5
  //#region src/contract/define-contract.ts
5
- function defineContract(scaffold, factory) {
6
- const full = {
7
- ...scaffold,
8
- family: sqlFamilyPack,
9
- target: sqlitePack
6
+ function defineContract(definition, factory) {
7
+ const bound = {
8
+ ...definition,
9
+ createNamespace: sqliteCreateNamespace
10
10
  };
11
- if (factory !== void 0) {
12
- const { types: _t, models: _m, ...scaffoldOnly } = full;
13
- return defineContract$1(scaffoldOnly, factory);
14
- }
15
- return defineContract$1(full);
11
+ if (factory !== void 0) return buildBoundContract(sqlFamilyPack, sqlitePackRef, bound, factory);
12
+ return buildBoundContract(sqlFamilyPack, sqlitePackRef, bound);
16
13
  }
17
14
  //#endregion
18
15
  export { defineContract, field, model, rel };
@@ -1 +1 @@
1
- {"version":3,"file":"contract-builder.mjs","names":["baseDefineContract"],"sources":["../src/contract/define-contract.ts"],"sourcesContent":["import sqlFamilyPack from '@prisma-next/family-sql/pack';\nimport type { ExtensionPackRef } from '@prisma-next/framework-components/components';\nimport type { StorageTypeInstance } from '@prisma-next/sql-contract/types';\nimport type {\n ComposedAuthoringHelpers,\n ContractInput,\n ModelLike,\n} from '@prisma-next/sql-contract-ts/contract-builder';\nimport { defineContract as baseDefineContract } from '@prisma-next/sql-contract-ts/contract-builder';\nimport sqlitePack from '@prisma-next/target-sqlite/pack';\n\ntype SqlFamily = typeof sqlFamilyPack;\ntype SqlitePack = typeof sqlitePack;\n\ntype TypesConstraint = Record<string, StorageTypeInstance>;\ntype ModelsConstraint = Record<string, ModelLike>;\n\ntype SqliteResult<\n Types extends TypesConstraint,\n Models extends ModelsConstraint,\n ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,\n> = Omit<\n ReturnType<typeof baseDefineContract<SqlFamily, SqlitePack, Types, Models, ExtensionPacks>>,\n 'target' | 'targetFamily'\n> & {\n readonly target: SqlitePack['targetId'];\n readonly targetFamily: SqlFamily['familyId'];\n};\n\ntype SqliteBaseScaffold<\n ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,\n> = Omit<\n ContractInput<SqlFamily, SqlitePack, Record<never, never>, Record<never, never>, ExtensionPacks>,\n 'family' | 'target' | 'types' | 'models'\n>;\n\ntype SqliteDefinition<\n Types extends TypesConstraint,\n Models extends ModelsConstraint,\n ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,\n> = SqliteBaseScaffold<ExtensionPacks> & {\n readonly types?: Types;\n readonly models?: Models;\n};\n\ntype SqliteScaffold<\n ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,\n> = SqliteBaseScaffold<ExtensionPacks>;\n\nexport function defineContract<\n const Types extends TypesConstraint = Record<never, never>,\n const Models extends ModelsConstraint = Record<never, never>,\n const ExtensionPacks extends\n | Record<string, ExtensionPackRef<'sql', string>>\n | undefined = undefined,\n>(\n definition: SqliteDefinition<Types, Models, ExtensionPacks>,\n): SqliteResult<Types, Models, ExtensionPacks>;\n\nexport function defineContract<\n const Types extends TypesConstraint = Record<never, never>,\n const Models extends ModelsConstraint = Record<never, never>,\n const ExtensionPacks extends\n | Record<string, ExtensionPackRef<'sql', string>>\n | undefined = undefined,\n>(\n scaffold: SqliteScaffold<ExtensionPacks>,\n factory: (helpers: ComposedAuthoringHelpers<SqlFamily, SqlitePack, ExtensionPacks>) => {\n readonly types?: Types;\n readonly models?: Models;\n },\n): SqliteResult<Types, Models, ExtensionPacks>;\n\nexport function defineContract(\n scaffold: Omit<ContractInput, 'family' | 'target'>,\n factory?: (helpers: ComposedAuthoringHelpers<SqlFamily, SqlitePack, undefined>) => {\n readonly types?: TypesConstraint;\n readonly models?: ModelsConstraint;\n },\n): SqliteResult<TypesConstraint, ModelsConstraint, undefined> {\n const full = {\n ...scaffold,\n family: sqlFamilyPack,\n target: sqlitePack,\n } as ContractInput;\n if (factory !== undefined) {\n const { types: _t, models: _m, ...scaffoldOnly } = full;\n return baseDefineContract(\n scaffoldOnly,\n factory as Parameters<typeof baseDefineContract>[1],\n ) as unknown as SqliteResult<TypesConstraint, ModelsConstraint, undefined>;\n }\n return baseDefineContract(full) as unknown as SqliteResult<\n TypesConstraint,\n ModelsConstraint,\n undefined\n >;\n}\n"],"mappings":";;;;AAyEA,SAAgB,eACd,UACA,SAI4D;CAC5D,MAAM,OAAO;EACX,GAAG;EACH,QAAQ;EACR,QAAQ;CACV;CACA,IAAI,YAAY,KAAA,GAAW;EACzB,MAAM,EAAE,OAAO,IAAI,QAAQ,IAAI,GAAG,iBAAiB;EACnD,OAAOA,iBACL,cACA,OACF;CACF;CACA,OAAOA,iBAAmB,IAAI;AAKhC"}
1
+ {"version":3,"file":"contract-builder.mjs","names":["sqlitePack"],"sources":["../src/contract/define-contract.ts"],"sourcesContent":["import sqlFamilyPack from '@prisma-next/family-sql/pack';\nimport type { ExtensionPackRef } from '@prisma-next/framework-components/components';\nimport type { StorageTypeInstance } from '@prisma-next/sql-contract/types';\nimport type {\n ComposedAuthoringHelpers,\n ContractInput,\n ModelLike,\n} from '@prisma-next/sql-contract-ts/contract-builder';\nimport { buildBoundContract } from '@prisma-next/sql-contract-ts/contract-builder';\nimport { sqliteCreateNamespace } from '@prisma-next/target-sqlite/control';\nimport sqlitePack from '@prisma-next/target-sqlite/pack';\n\ntype SqlFamily = typeof sqlFamilyPack;\ntype SqlitePack = typeof sqlitePack;\n\ntype TypesConstraint = Record<string, StorageTypeInstance>;\ntype ModelsConstraint = Record<string, ModelLike>;\n\ntype SqliteResult<\n Types extends TypesConstraint,\n Models extends ModelsConstraint,\n ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,\n> = ReturnType<\n typeof buildBoundContract<\n SqlFamily,\n SqlitePack,\n { readonly types?: Types; readonly models?: Models; readonly extensionPacks?: ExtensionPacks }\n >\n>;\n\ntype SqliteBaseScaffold<\n ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,\n> = Omit<\n ContractInput<SqlFamily, SqlitePack, Record<never, never>, Record<never, never>, ExtensionPacks>,\n 'family' | 'target' | 'types' | 'models'\n>;\n\ntype SqliteDefinition<\n Types extends TypesConstraint,\n Models extends ModelsConstraint,\n ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,\n> = SqliteBaseScaffold<ExtensionPacks> & {\n readonly types?: Types;\n readonly models?: Models;\n};\n\ntype SqliteScaffold<\n ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,\n> = SqliteBaseScaffold<ExtensionPacks>;\n\nexport function defineContract<\n const Types extends TypesConstraint = Record<never, never>,\n const Models extends ModelsConstraint = Record<never, never>,\n const ExtensionPacks extends\n | Record<string, ExtensionPackRef<'sql', string>>\n | undefined = undefined,\n>(\n definition: SqliteDefinition<Types, Models, ExtensionPacks>,\n): SqliteResult<Types, Models, ExtensionPacks>;\n\nexport function defineContract<\n const Types extends TypesConstraint = Record<never, never>,\n const Models extends ModelsConstraint = Record<never, never>,\n const ExtensionPacks extends\n | Record<string, ExtensionPackRef<'sql', string>>\n | undefined = undefined,\n>(\n scaffold: SqliteScaffold<ExtensionPacks>,\n factory: (helpers: ComposedAuthoringHelpers<SqlFamily, SqlitePack, ExtensionPacks>) => {\n readonly types?: Types;\n readonly models?: Models;\n },\n): SqliteResult<Types, Models, ExtensionPacks>;\n\n// Implementation — delegates to buildBoundContract which pre-binds family/target,\n// carrying zero casts at this layer.\nexport function defineContract(\n definition: SqliteDefinition<TypesConstraint, ModelsConstraint, undefined>,\n factory?: (helpers: ComposedAuthoringHelpers<SqlFamily, SqlitePack, undefined>) => {\n readonly types?: TypesConstraint;\n readonly models?: ModelsConstraint;\n },\n): SqliteResult<TypesConstraint, ModelsConstraint, undefined> {\n const bound = { ...definition, createNamespace: sqliteCreateNamespace };\n if (factory !== undefined) {\n return buildBoundContract(sqlFamilyPack, sqlitePack, bound, factory);\n }\n return buildBoundContract(sqlFamilyPack, sqlitePack, bound);\n}\n"],"mappings":";;;;;AA4EA,SAAgB,eACd,YACA,SAI4D;CAC5D,MAAM,QAAQ;EAAE,GAAG;EAAY,iBAAiB;CAAsB;CACtE,IAAI,YAAY,KAAA,GACd,OAAO,mBAAmB,eAAeA,eAAY,OAAO,OAAO;CAErE,OAAO,mBAAmB,eAAeA,eAAY,KAAK;AAC5D"}
package/package.json CHANGED
@@ -1,33 +1,33 @@
1
1
  {
2
2
  "name": "@prisma-next/sqlite",
3
- "version": "0.12.0-dev.5",
3
+ "version": "0.12.0-dev.51",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "sideEffects": false,
7
7
  "description": "One-liner lazy SQLite client composition for Prisma Next",
8
8
  "dependencies": {
9
- "@prisma-next/adapter-sqlite": "0.12.0-dev.5",
10
- "@prisma-next/cli": "0.12.0-dev.5",
11
- "@prisma-next/config": "0.12.0-dev.5",
12
- "@prisma-next/contract": "0.12.0-dev.5",
13
- "@prisma-next/driver-sqlite": "0.12.0-dev.5",
14
- "@prisma-next/family-sql": "0.12.0-dev.5",
15
- "@prisma-next/framework-components": "0.12.0-dev.5",
16
- "@prisma-next/sql-builder": "0.12.0-dev.5",
17
- "@prisma-next/sql-contract": "0.12.0-dev.5",
18
- "@prisma-next/sql-contract-psl": "0.12.0-dev.5",
19
- "@prisma-next/sql-contract-ts": "0.12.0-dev.5",
20
- "@prisma-next/sql-orm-client": "0.12.0-dev.5",
21
- "@prisma-next/sql-relational-core": "0.12.0-dev.5",
22
- "@prisma-next/sql-runtime": "0.12.0-dev.5",
23
- "@prisma-next/target-sqlite": "0.12.0-dev.5",
24
- "@prisma-next/utils": "0.12.0-dev.5",
9
+ "@prisma-next/adapter-sqlite": "0.12.0-dev.51",
10
+ "@prisma-next/cli": "0.12.0-dev.51",
11
+ "@prisma-next/config": "0.12.0-dev.51",
12
+ "@prisma-next/contract": "0.12.0-dev.51",
13
+ "@prisma-next/driver-sqlite": "0.12.0-dev.51",
14
+ "@prisma-next/family-sql": "0.12.0-dev.51",
15
+ "@prisma-next/framework-components": "0.12.0-dev.51",
16
+ "@prisma-next/sql-builder": "0.12.0-dev.51",
17
+ "@prisma-next/sql-contract": "0.12.0-dev.51",
18
+ "@prisma-next/sql-contract-psl": "0.12.0-dev.51",
19
+ "@prisma-next/sql-contract-ts": "0.12.0-dev.51",
20
+ "@prisma-next/sql-orm-client": "0.12.0-dev.51",
21
+ "@prisma-next/sql-relational-core": "0.12.0-dev.51",
22
+ "@prisma-next/sql-runtime": "0.12.0-dev.51",
23
+ "@prisma-next/target-sqlite": "0.12.0-dev.51",
24
+ "@prisma-next/utils": "0.12.0-dev.51",
25
25
  "pathe": "^2.0.3"
26
26
  },
27
27
  "devDependencies": {
28
- "@prisma-next/test-utils": "0.12.0-dev.5",
29
- "@prisma-next/tsconfig": "0.12.0-dev.5",
30
- "@prisma-next/tsdown": "0.12.0-dev.5",
28
+ "@prisma-next/test-utils": "0.12.0-dev.51",
29
+ "@prisma-next/tsconfig": "0.12.0-dev.51",
30
+ "@prisma-next/tsdown": "0.12.0-dev.51",
31
31
  "tsdown": "0.22.0",
32
32
  "typescript": "5.9.3",
33
33
  "vitest": "4.1.6"
@@ -6,7 +6,8 @@ import sql from '@prisma-next/family-sql/control';
6
6
  import type { ControlExtensionDescriptor } from '@prisma-next/framework-components/control';
7
7
  import { prismaContract } from '@prisma-next/sql-contract-psl/provider';
8
8
  import { typescriptContractFromPath } from '@prisma-next/sql-contract-ts/config-types';
9
- import sqlite from '@prisma-next/target-sqlite/control';
9
+ import sqlite, { sqliteCreateNamespace } from '@prisma-next/target-sqlite/control';
10
+ import sqlitePackRef from '@prisma-next/target-sqlite/pack';
10
11
  import { ifDefined } from '@prisma-next/utils/defined';
11
12
  import { extname, join } from 'pathe';
12
13
 
@@ -43,7 +44,8 @@ export function defineConfig(options: SqliteConfigOptions): PrismaNextConfig<'sq
43
44
  ? typescriptContractFromPath(options.contract, output)
44
45
  : prismaContract(options.contract, {
45
46
  output,
46
- target: sqlite,
47
+ target: sqlitePackRef,
48
+ createNamespace: sqliteCreateNamespace,
47
49
  });
48
50
 
49
51
  return coreDefineConfig({
@@ -6,7 +6,8 @@ import type {
6
6
  ContractInput,
7
7
  ModelLike,
8
8
  } from '@prisma-next/sql-contract-ts/contract-builder';
9
- import { defineContract as baseDefineContract } from '@prisma-next/sql-contract-ts/contract-builder';
9
+ import { buildBoundContract } from '@prisma-next/sql-contract-ts/contract-builder';
10
+ import { sqliteCreateNamespace } from '@prisma-next/target-sqlite/control';
10
11
  import sqlitePack from '@prisma-next/target-sqlite/pack';
11
12
 
12
13
  type SqlFamily = typeof sqlFamilyPack;
@@ -19,13 +20,13 @@ type SqliteResult<
19
20
  Types extends TypesConstraint,
20
21
  Models extends ModelsConstraint,
21
22
  ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,
22
- > = Omit<
23
- ReturnType<typeof baseDefineContract<SqlFamily, SqlitePack, Types, Models, ExtensionPacks>>,
24
- 'target' | 'targetFamily'
25
- > & {
26
- readonly target: SqlitePack['targetId'];
27
- readonly targetFamily: SqlFamily['familyId'];
28
- };
23
+ > = ReturnType<
24
+ typeof buildBoundContract<
25
+ SqlFamily,
26
+ SqlitePack,
27
+ { readonly types?: Types; readonly models?: Models; readonly extensionPacks?: ExtensionPacks }
28
+ >
29
+ >;
29
30
 
30
31
  type SqliteBaseScaffold<
31
32
  ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined,
@@ -71,28 +72,18 @@ export function defineContract<
71
72
  },
72
73
  ): SqliteResult<Types, Models, ExtensionPacks>;
73
74
 
75
+ // Implementation — delegates to buildBoundContract which pre-binds family/target,
76
+ // carrying zero casts at this layer.
74
77
  export function defineContract(
75
- scaffold: Omit<ContractInput, 'family' | 'target'>,
78
+ definition: SqliteDefinition<TypesConstraint, ModelsConstraint, undefined>,
76
79
  factory?: (helpers: ComposedAuthoringHelpers<SqlFamily, SqlitePack, undefined>) => {
77
80
  readonly types?: TypesConstraint;
78
81
  readonly models?: ModelsConstraint;
79
82
  },
80
83
  ): SqliteResult<TypesConstraint, ModelsConstraint, undefined> {
81
- const full = {
82
- ...scaffold,
83
- family: sqlFamilyPack,
84
- target: sqlitePack,
85
- } as ContractInput;
84
+ const bound = { ...definition, createNamespace: sqliteCreateNamespace };
86
85
  if (factory !== undefined) {
87
- const { types: _t, models: _m, ...scaffoldOnly } = full;
88
- return baseDefineContract(
89
- scaffoldOnly,
90
- factory as Parameters<typeof baseDefineContract>[1],
91
- ) as unknown as SqliteResult<TypesConstraint, ModelsConstraint, undefined>;
86
+ return buildBoundContract(sqlFamilyPack, sqlitePack, bound, factory);
92
87
  }
93
- return baseDefineContract(full) as unknown as SqliteResult<
94
- TypesConstraint,
95
- ModelsConstraint,
96
- undefined
97
- >;
88
+ return buildBoundContract(sqlFamilyPack, sqlitePack, bound);
98
89
  }