drizzle-orm 1.0.0-beta.9-8df6992 → 1.0.0-beta.9-5a93194

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,"sources":["../../src/effect-postgres/driver.ts"],"sourcesContent":["import type { PgClient } from '@effect/sql-pg/PgClient';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgEffectDatabase } from '~/pg-core/effect/db.ts';\nimport type { _RelationalQueryBuilder } from '~/pg-core/query-builders/_query.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type EffectPgQueryResultHKT, EffectPgSession } from './session.ts';\n\nexport class EffectPgDatabase<\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'EffectPgDatabase';\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends PgClient = PgClient,\n>(\n\tclient: TClient,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\n\t// TODO: implement effect ver\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new EffectPgSession(client, dialect, relations, schema, { logger });\n\tconst db = new EffectPgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as EffectPgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(client: PgClient, config?: DrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\treturn construct(client, config);\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleConfig<TSchema, TRelations>,\n\t): EffectPgDatabase<TSchema, TRelations> {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,SAAoB;AACpB,oBAA2B;AAC3B,oBAA8B;AAC9B,qBAA0B;AAC1B,gBAAiC;AAIjC,qBAA6D;AAEtD,MAAM,yBAGH,2BAAkE;AAAA,EAC3E,QAA0B,wBAAU,IAAY;AACjD;AAEA,SAAS,UAKR,QACA,SAA6C,CAAC,GAG7C;AACD,QAAM,UAAU,IAAI,yBAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AAGvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe,GAAG;AAAA,MACvB,OAAO;AAAA,MACP,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,OAAO,aAAa,CAAC;AACvC,QAAM,UAAU,IAAI,+BAAgB,QAAQ,SAAS,WAAW,QAAQ,EAAE,OAAO,CAAC;AAClF,QAAM,KAAK,IAAI;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AAEA,SAAO;AACR;AAEO,SAAS,QAGd,QAAkB,QAElB;AACD,SAAO,UAAU,QAAQ,MAAM;AAChC;AAAA,CAEO,CAAUA,aAAV;AACC,WAAS,KAIf,QACwC;AACxC,WAAO,UAAU,CAAC,GAAU,MAAM;AAAA,EACnC;AAPO,EAAAA,SAAS;AAAA,GADA;","names":["drizzle"]}
1
+ {"version":3,"sources":["../../src/effect-postgres/driver.ts"],"sourcesContent":["import type { PgClient } from '@effect/sql-pg/PgClient';\nimport * as V1 from '~/_relations.ts';\nimport type { EffectCache } from '~/cache/core/cache-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgEffectDatabase } from '~/pg-core/effect/db.ts';\nimport type { _RelationalQueryBuilder } from '~/pg-core/query-builders/_query.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type EffectPgQueryResultHKT, EffectPgSession } from './session.ts';\n\nexport class EffectPgDatabase<\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'EffectPgDatabase';\n}\n\nexport type EffectDrizzleConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> =\n\t& Omit<DrizzleConfig<TSchema, TRelations>, 'cache'>\n\t& {\n\t\tcache?: EffectCache;\n\t};\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends PgClient = PgClient,\n>(\n\tclient: TClient,\n\tconfig: EffectDrizzleConfig<TSchema, TRelations> = {},\n): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\n\t// TODO: implement effect ver\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new EffectPgSession(client, dialect, relations, schema, { logger });\n\tconst db = new EffectPgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as EffectPgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(client: PgClient, config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\treturn construct(client, config);\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: EffectDrizzleConfig<TSchema, TRelations>,\n\t): EffectPgDatabase<TSchema, TRelations> {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,SAAoB;AAEpB,oBAA2B;AAC3B,oBAA8B;AAC9B,qBAA0B;AAC1B,gBAAiC;AAIjC,qBAA6D;AAEtD,MAAM,yBAGH,2BAAkE;AAAA,EAC3E,QAA0B,wBAAU,IAAY;AACjD;AAWA,SAAS,UAKR,QACA,SAAmD,CAAC,GAGnD;AACD,QAAM,UAAU,IAAI,yBAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AAGvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe,GAAG;AAAA,MACvB,OAAO;AAAA,MACP,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,OAAO,aAAa,CAAC;AACvC,QAAM,UAAU,IAAI,+BAAgB,QAAQ,SAAS,WAAW,QAAQ,EAAE,OAAO,CAAC;AAClF,QAAM,KAAK,IAAI;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AAEA,SAAO;AACR;AAEO,SAAS,QAGd,QAAkB,QAElB;AACD,SAAO,UAAU,QAAQ,MAAM;AAChC;AAAA,CAEO,CAAUA,aAAV;AACC,WAAS,KAIf,QACwC;AACxC,WAAO,UAAU,CAAC,GAAU,MAAM;AAAA,EACnC;AAPO,EAAAA,SAAS;AAAA,GADA;","names":["drizzle"]}
@@ -1,4 +1,5 @@
1
1
  import type { PgClient } from '@effect/sql-pg/PgClient';
2
+ import type { EffectCache } from "../cache/core/cache-effect.cjs";
2
3
  import { entityKind } from "../entity.cjs";
3
4
  import { PgEffectDatabase } from "../pg-core/effect/db.cjs";
4
5
  import type { AnyRelations, EmptyRelations } from "../relations.cjs";
@@ -7,9 +8,12 @@ import { type EffectPgQueryResultHKT } from "./session.cjs";
7
8
  export declare class EffectPgDatabase<TFullSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {
8
9
  static readonly [entityKind]: string;
9
10
  }
10
- export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(client: PgClient, config?: DrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {
11
+ export type EffectDrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> = Omit<DrizzleConfig<TSchema, TRelations>, 'cache'> & {
12
+ cache?: EffectCache;
13
+ };
14
+ export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(client: PgClient, config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {
11
15
  $client: PgClient;
12
16
  };
13
17
  export declare namespace drizzle {
14
- function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations>;
18
+ function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations>;
15
19
  }
@@ -1,4 +1,5 @@
1
1
  import type { PgClient } from '@effect/sql-pg/PgClient';
2
+ import type { EffectCache } from "../cache/core/cache-effect.js";
2
3
  import { entityKind } from "../entity.js";
3
4
  import { PgEffectDatabase } from "../pg-core/effect/db.js";
4
5
  import type { AnyRelations, EmptyRelations } from "../relations.js";
@@ -7,9 +8,12 @@ import { type EffectPgQueryResultHKT } from "./session.js";
7
8
  export declare class EffectPgDatabase<TFullSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {
8
9
  static readonly [entityKind]: string;
9
10
  }
10
- export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(client: PgClient, config?: DrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {
11
+ export type EffectDrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> = Omit<DrizzleConfig<TSchema, TRelations>, 'cache'> & {
12
+ cache?: EffectCache;
13
+ };
14
+ export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(client: PgClient, config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {
11
15
  $client: PgClient;
12
16
  };
13
17
  export declare namespace drizzle {
14
- function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations>;
18
+ function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations>;
15
19
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/effect-postgres/driver.ts"],"sourcesContent":["import type { PgClient } from '@effect/sql-pg/PgClient';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgEffectDatabase } from '~/pg-core/effect/db.ts';\nimport type { _RelationalQueryBuilder } from '~/pg-core/query-builders/_query.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type EffectPgQueryResultHKT, EffectPgSession } from './session.ts';\n\nexport class EffectPgDatabase<\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'EffectPgDatabase';\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends PgClient = PgClient,\n>(\n\tclient: TClient,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\n\t// TODO: implement effect ver\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new EffectPgSession(client, dialect, relations, schema, { logger });\n\tconst db = new EffectPgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as EffectPgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(client: PgClient, config?: DrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\treturn construct(client, config);\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleConfig<TSchema, TRelations>,\n\t): EffectPgDatabase<TSchema, TRelations> {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"AACA,YAAY,QAAQ;AACpB,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;AAC1B,SAAS,wBAAwB;AAIjC,SAAsC,uBAAuB;AAEtD,MAAM,yBAGH,iBAAkE;AAAA,EAC3E,QAA0B,UAAU,IAAY;AACjD;AAEA,SAAS,UAKR,QACA,SAA6C,CAAC,GAG7C;AACD,QAAM,UAAU,IAAI,UAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AAGvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe,GAAG;AAAA,MACvB,OAAO;AAAA,MACP,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,OAAO,aAAa,CAAC;AACvC,QAAM,UAAU,IAAI,gBAAgB,QAAQ,SAAS,WAAW,QAAQ,EAAE,OAAO,CAAC;AAClF,QAAM,KAAK,IAAI;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AAEA,SAAO;AACR;AAEO,SAAS,QAGd,QAAkB,QAElB;AACD,SAAO,UAAU,QAAQ,MAAM;AAChC;AAAA,CAEO,CAAUA,aAAV;AACC,WAAS,KAIf,QACwC;AACxC,WAAO,UAAU,CAAC,GAAU,MAAM;AAAA,EACnC;AAPO,EAAAA,SAAS;AAAA,GADA;","names":["drizzle"]}
1
+ {"version":3,"sources":["../../src/effect-postgres/driver.ts"],"sourcesContent":["import type { PgClient } from '@effect/sql-pg/PgClient';\nimport * as V1 from '~/_relations.ts';\nimport type { EffectCache } from '~/cache/core/cache-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgEffectDatabase } from '~/pg-core/effect/db.ts';\nimport type { _RelationalQueryBuilder } from '~/pg-core/query-builders/_query.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { type EffectPgQueryResultHKT, EffectPgSession } from './session.ts';\n\nexport class EffectPgDatabase<\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgEffectDatabase<EffectPgQueryResultHKT, TFullSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'EffectPgDatabase';\n}\n\nexport type EffectDrizzleConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> =\n\t& Omit<DrizzleConfig<TSchema, TRelations>, 'cache'>\n\t& {\n\t\tcache?: EffectCache;\n\t};\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends PgClient = PgClient,\n>(\n\tclient: TClient,\n\tconfig: EffectDrizzleConfig<TSchema, TRelations> = {},\n): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\n\t// TODO: implement effect ver\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new EffectPgSession(client, dialect, relations, schema, { logger });\n\tconst db = new EffectPgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as EffectPgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(client: PgClient, config?: EffectDrizzleConfig<TSchema, TRelations>): EffectPgDatabase<TSchema, TRelations> & {\n\t$client: PgClient;\n} {\n\treturn construct(client, config);\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: EffectDrizzleConfig<TSchema, TRelations>,\n\t): EffectPgDatabase<TSchema, TRelations> {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"AACA,YAAY,QAAQ;AAEpB,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,SAAS,iBAAiB;AAC1B,SAAS,wBAAwB;AAIjC,SAAsC,uBAAuB;AAEtD,MAAM,yBAGH,iBAAkE;AAAA,EAC3E,QAA0B,UAAU,IAAY;AACjD;AAWA,SAAS,UAKR,QACA,SAAmD,CAAC,GAGnD;AACD,QAAM,UAAU,IAAI,UAAU,EAAE,QAAQ,OAAO,OAAO,CAAC;AAGvD,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe,GAAG;AAAA,MACvB,OAAO;AAAA,MACP,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,OAAO,aAAa,CAAC;AACvC,QAAM,UAAU,IAAI,gBAAgB,QAAQ,SAAS,WAAW,QAAQ,EAAE,OAAO,CAAC;AAClF,QAAM,KAAK,IAAI;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACA,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AAEA,SAAO;AACR;AAEO,SAAS,QAGd,QAAkB,QAElB;AACD,SAAO,UAAU,QAAQ,MAAM;AAChC;AAAA,CAEO,CAAUA,aAAV;AACC,WAAS,KAIf,QACwC;AACxC,WAAO,UAAU,CAAC,GAAU,MAAM;AAAA,EACnC;AAPO,EAAAA,SAAS;AAAA,GADA;","names":["drizzle"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drizzle-orm",
3
- "version": "1.0.0-beta.9-8df6992",
3
+ "version": "1.0.0-beta.9-5a93194",
4
4
  "description": "Drizzle ORM package for SQL databases",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -3750,54 +3750,6 @@
3750
3750
  "types": "./aws-data-api/common/index.d.ts",
3751
3751
  "default": "./aws-data-api/common/index.js"
3752
3752
  },
3753
- "./aws-data-api/pg/driver": {
3754
- "import": {
3755
- "types": "./aws-data-api/pg/driver.d.ts",
3756
- "default": "./aws-data-api/pg/driver.js"
3757
- },
3758
- "require": {
3759
- "types": "./aws-data-api/pg/driver.d.cts",
3760
- "default": "./aws-data-api/pg/driver.cjs"
3761
- },
3762
- "types": "./aws-data-api/pg/driver.d.ts",
3763
- "default": "./aws-data-api/pg/driver.js"
3764
- },
3765
- "./aws-data-api/pg": {
3766
- "import": {
3767
- "types": "./aws-data-api/pg/index.d.ts",
3768
- "default": "./aws-data-api/pg/index.js"
3769
- },
3770
- "require": {
3771
- "types": "./aws-data-api/pg/index.d.cts",
3772
- "default": "./aws-data-api/pg/index.cjs"
3773
- },
3774
- "types": "./aws-data-api/pg/index.d.ts",
3775
- "default": "./aws-data-api/pg/index.js"
3776
- },
3777
- "./aws-data-api/pg/migrator": {
3778
- "import": {
3779
- "types": "./aws-data-api/pg/migrator.d.ts",
3780
- "default": "./aws-data-api/pg/migrator.js"
3781
- },
3782
- "require": {
3783
- "types": "./aws-data-api/pg/migrator.d.cts",
3784
- "default": "./aws-data-api/pg/migrator.cjs"
3785
- },
3786
- "types": "./aws-data-api/pg/migrator.d.ts",
3787
- "default": "./aws-data-api/pg/migrator.js"
3788
- },
3789
- "./aws-data-api/pg/session": {
3790
- "import": {
3791
- "types": "./aws-data-api/pg/session.d.ts",
3792
- "default": "./aws-data-api/pg/session.js"
3793
- },
3794
- "require": {
3795
- "types": "./aws-data-api/pg/session.d.cts",
3796
- "default": "./aws-data-api/pg/session.cjs"
3797
- },
3798
- "types": "./aws-data-api/pg/session.d.ts",
3799
- "default": "./aws-data-api/pg/session.js"
3800
- },
3801
3753
  "./bun-sql/mysql/driver": {
3802
3754
  "import": {
3803
3755
  "types": "./bun-sql/mysql/driver.d.ts",
@@ -3846,6 +3798,54 @@
3846
3798
  "types": "./bun-sql/mysql/session.d.ts",
3847
3799
  "default": "./bun-sql/mysql/session.js"
3848
3800
  },
3801
+ "./aws-data-api/pg/driver": {
3802
+ "import": {
3803
+ "types": "./aws-data-api/pg/driver.d.ts",
3804
+ "default": "./aws-data-api/pg/driver.js"
3805
+ },
3806
+ "require": {
3807
+ "types": "./aws-data-api/pg/driver.d.cts",
3808
+ "default": "./aws-data-api/pg/driver.cjs"
3809
+ },
3810
+ "types": "./aws-data-api/pg/driver.d.ts",
3811
+ "default": "./aws-data-api/pg/driver.js"
3812
+ },
3813
+ "./aws-data-api/pg": {
3814
+ "import": {
3815
+ "types": "./aws-data-api/pg/index.d.ts",
3816
+ "default": "./aws-data-api/pg/index.js"
3817
+ },
3818
+ "require": {
3819
+ "types": "./aws-data-api/pg/index.d.cts",
3820
+ "default": "./aws-data-api/pg/index.cjs"
3821
+ },
3822
+ "types": "./aws-data-api/pg/index.d.ts",
3823
+ "default": "./aws-data-api/pg/index.js"
3824
+ },
3825
+ "./aws-data-api/pg/migrator": {
3826
+ "import": {
3827
+ "types": "./aws-data-api/pg/migrator.d.ts",
3828
+ "default": "./aws-data-api/pg/migrator.js"
3829
+ },
3830
+ "require": {
3831
+ "types": "./aws-data-api/pg/migrator.d.cts",
3832
+ "default": "./aws-data-api/pg/migrator.cjs"
3833
+ },
3834
+ "types": "./aws-data-api/pg/migrator.d.ts",
3835
+ "default": "./aws-data-api/pg/migrator.js"
3836
+ },
3837
+ "./aws-data-api/pg/session": {
3838
+ "import": {
3839
+ "types": "./aws-data-api/pg/session.d.ts",
3840
+ "default": "./aws-data-api/pg/session.js"
3841
+ },
3842
+ "require": {
3843
+ "types": "./aws-data-api/pg/session.d.cts",
3844
+ "default": "./aws-data-api/pg/session.cjs"
3845
+ },
3846
+ "types": "./aws-data-api/pg/session.d.ts",
3847
+ "default": "./aws-data-api/pg/session.js"
3848
+ },
3849
3849
  "./bun-sql/postgres/driver": {
3850
3850
  "import": {
3851
3851
  "types": "./bun-sql/postgres/driver.d.ts",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/pg-core/async/update.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { PgQueryResultHKT, PgQueryResultKind, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport type { JoinNullability } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport { applyMixins, type Assume } from '~/utils.ts';\nimport { type Join, PgUpdateBase } from '../query-builders/update.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type { PgAsyncPreparedQuery, PgAsyncSession } from './session.ts';\n\nexport type PgAsyncUpdatePrepare<T extends AnyPgAsyncUpdate> = PgAsyncPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgAsyncUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = PgAsyncUpdateBase<\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\ttrue,\n\tnever\n>;\n\nexport interface PgUpdateHKTBase {\n\ttable: unknown;\n\tjoins: unknown;\n\tnullabilityMap: unknown;\n\tqueryResult: unknown;\n\tfrom: unknown;\n\tselectedFields: unknown;\n\treturning: unknown;\n\tdynamic: boolean;\n\texcludedMethods: string;\n\t_type: unknown;\n}\n\nexport interface PgAsyncUpdateHKT extends PgUpdateHKTBase {\n\t_type: PgAsyncUpdateBase<\n\t\tAssume<this['table'], PgTable>,\n\t\tAssume<this['queryResult'], PgQueryResultHKT>,\n\t\tAssume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>,\n\t\tAssume<this['selectedFields'], ColumnsSelection | undefined>,\n\t\tAssume<this['returning'], Record<string, unknown> | undefined>,\n\t\tAssume<this['nullabilityMap'], Record<string, JoinNullability>>,\n\t\tAssume<this['joins'], Join[]>,\n\t\tthis['dynamic'],\n\t\tthis['excludedMethods']\n\t>;\n}\n\nexport type AnyPgAsyncUpdate = PgAsyncUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgAsyncUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]> {}\n\nexport class PgAsyncUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends PgUpdateBase<\n\tPgAsyncUpdateHKT,\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\tTDynamic,\n\tTExcludedMethods\n> implements RunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'> {\n\tstatic override readonly [entityKind]: string = 'PgAsyncUpdate';\n\n\tdeclare protected session: PgAsyncSession;\n\n\t/** @internal */\n\t_prepare(name?: string): PgAsyncUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgAsyncUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\texecute: ReturnType<this['prepare']>['execute'] = (placeholderValues: Record<string, unknown> = {}) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n}\n\napplyMixins(PgAsyncUpdateBase, [QueryPromise]);\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAI3B,2BAA6B;AAI7B,mBAAyC;AACzC,oBAAwC;AACxC,IAAAA,gBAAiC;AA8E1B,MAAM,0BAUH,2BAW6G;AAAA,EACtH,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAKhD,SAAS,MAA2C;AACnD,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,YAAQ,gCAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,GAAG,KAAK,WAAW;AACnB,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAA0C;AACjD,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAEA,UAAkD,CAAC,oBAA6C,CAAC,MAAM;AACtG,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AACD;AAAA,IAEA,0BAAY,mBAAmB,CAAC,iCAAY,CAAC;","names":["import_utils"]}
1
+ {"version":3,"sources":["../../../src/pg-core/async/update.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { PgQueryResultHKT, PgQueryResultKind, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport type { JoinNullability } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport { applyMixins, type Assume } from '~/utils.ts';\nimport { type Join, PgUpdateBase, type PgUpdateHKTBase } from '../query-builders/update.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type { PgAsyncPreparedQuery, PgAsyncSession } from './session.ts';\n\nexport type PgAsyncUpdatePrepare<T extends AnyPgAsyncUpdate> = PgAsyncPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgAsyncUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = PgAsyncUpdateBase<\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\ttrue,\n\tnever\n>;\n\nexport interface PgAsyncUpdateHKT extends PgUpdateHKTBase {\n\t_type: PgAsyncUpdateBase<\n\t\tAssume<this['table'], PgTable>,\n\t\tAssume<this['queryResult'], PgQueryResultHKT>,\n\t\tAssume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>,\n\t\tAssume<this['selectedFields'], ColumnsSelection | undefined>,\n\t\tAssume<this['returning'], Record<string, unknown> | undefined>,\n\t\tAssume<this['nullabilityMap'], Record<string, JoinNullability>>,\n\t\tAssume<this['joins'], Join[]>,\n\t\tthis['dynamic'],\n\t\tthis['excludedMethods']\n\t>;\n}\n\nexport type AnyPgAsyncUpdate = PgAsyncUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgAsyncUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]> {}\n\nexport class PgAsyncUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends PgUpdateBase<\n\tPgAsyncUpdateHKT,\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\tTDynamic,\n\tTExcludedMethods\n> implements RunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'> {\n\tstatic override readonly [entityKind]: string = 'PgAsyncUpdate';\n\n\tdeclare protected session: PgAsyncSession;\n\n\t/** @internal */\n\t_prepare(name?: string): PgAsyncUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgAsyncUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\texecute: ReturnType<this['prepare']>['execute'] = (placeholderValues: Record<string, unknown> = {}) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n}\n\napplyMixins(PgAsyncUpdateBase, [QueryPromise]);\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAI3B,2BAA6B;AAI7B,mBAAyC;AACzC,oBAA8D;AAC9D,IAAAA,gBAAiC;AAiE1B,MAAM,0BAUH,2BAW6G;AAAA,EACtH,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAKhD,SAAS,MAA2C;AACnD,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,YAAQ,gCAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,GAAG,KAAK,WAAW;AACnB,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAA0C;AACjD,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAEA,UAAkD,CAAC,oBAA6C,CAAC,MAAM;AACtG,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AACD;AAAA,IAEA,0BAAY,mBAAmB,CAAC,iCAAY,CAAC;","names":["import_utils"]}
@@ -7,25 +7,13 @@ import type { RunnableQuery } from "../../runnable-query.cjs";
7
7
  import type { ColumnsSelection, SQL } from "../../sql/sql.cjs";
8
8
  import type { Subquery } from "../../subquery.cjs";
9
9
  import { type Assume } from "../../utils.cjs";
10
- import { type Join, PgUpdateBase } from "../query-builders/update.cjs";
10
+ import { type Join, PgUpdateBase, type PgUpdateHKTBase } from "../query-builders/update.cjs";
11
11
  import type { PgViewBase } from "../view-base.cjs";
12
12
  import type { PgAsyncPreparedQuery, PgAsyncSession } from "./session.cjs";
13
13
  export type PgAsyncUpdatePrepare<T extends AnyPgAsyncUpdate> = PgAsyncPreparedQuery<PreparedQueryConfig & {
14
14
  execute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never> : T['_']['returning'][];
15
15
  }>;
16
16
  export type PgAsyncUpdate<TTable extends PgTable = PgTable, TQueryResult extends PgQueryResultHKT = PgQueryResultHKT, TFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined, TSelectedFields extends ColumnsSelection | undefined = undefined, TReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = []> = PgAsyncUpdateBase<TTable, TQueryResult, TFrom, TSelectedFields, TReturning, TNullabilityMap, TJoins, true, never>;
17
- export interface PgUpdateHKTBase {
18
- table: unknown;
19
- joins: unknown;
20
- nullabilityMap: unknown;
21
- queryResult: unknown;
22
- from: unknown;
23
- selectedFields: unknown;
24
- returning: unknown;
25
- dynamic: boolean;
26
- excludedMethods: string;
27
- _type: unknown;
28
- }
29
17
  export interface PgAsyncUpdateHKT extends PgUpdateHKTBase {
30
18
  _type: PgAsyncUpdateBase<Assume<this['table'], PgTable>, Assume<this['queryResult'], PgQueryResultHKT>, Assume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>, Assume<this['selectedFields'], ColumnsSelection | undefined>, Assume<this['returning'], Record<string, unknown> | undefined>, Assume<this['nullabilityMap'], Record<string, JoinNullability>>, Assume<this['joins'], Join[]>, this['dynamic'], this['excludedMethods']>;
31
19
  }
@@ -7,25 +7,13 @@ import type { RunnableQuery } from "../../runnable-query.js";
7
7
  import type { ColumnsSelection, SQL } from "../../sql/sql.js";
8
8
  import type { Subquery } from "../../subquery.js";
9
9
  import { type Assume } from "../../utils.js";
10
- import { type Join, PgUpdateBase } from "../query-builders/update.js";
10
+ import { type Join, PgUpdateBase, type PgUpdateHKTBase } from "../query-builders/update.js";
11
11
  import type { PgViewBase } from "../view-base.js";
12
12
  import type { PgAsyncPreparedQuery, PgAsyncSession } from "./session.js";
13
13
  export type PgAsyncUpdatePrepare<T extends AnyPgAsyncUpdate> = PgAsyncPreparedQuery<PreparedQueryConfig & {
14
14
  execute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never> : T['_']['returning'][];
15
15
  }>;
16
16
  export type PgAsyncUpdate<TTable extends PgTable = PgTable, TQueryResult extends PgQueryResultHKT = PgQueryResultHKT, TFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined, TSelectedFields extends ColumnsSelection | undefined = undefined, TReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = []> = PgAsyncUpdateBase<TTable, TQueryResult, TFrom, TSelectedFields, TReturning, TNullabilityMap, TJoins, true, never>;
17
- export interface PgUpdateHKTBase {
18
- table: unknown;
19
- joins: unknown;
20
- nullabilityMap: unknown;
21
- queryResult: unknown;
22
- from: unknown;
23
- selectedFields: unknown;
24
- returning: unknown;
25
- dynamic: boolean;
26
- excludedMethods: string;
27
- _type: unknown;
28
- }
29
17
  export interface PgAsyncUpdateHKT extends PgUpdateHKTBase {
30
18
  _type: PgAsyncUpdateBase<Assume<this['table'], PgTable>, Assume<this['queryResult'], PgQueryResultHKT>, Assume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>, Assume<this['selectedFields'], ColumnsSelection | undefined>, Assume<this['returning'], Record<string, unknown> | undefined>, Assume<this['nullabilityMap'], Record<string, JoinNullability>>, Assume<this['joins'], Join[]>, this['dynamic'], this['excludedMethods']>;
31
19
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/pg-core/async/update.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { PgQueryResultHKT, PgQueryResultKind, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport type { JoinNullability } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport { applyMixins, type Assume } from '~/utils.ts';\nimport { type Join, PgUpdateBase } from '../query-builders/update.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type { PgAsyncPreparedQuery, PgAsyncSession } from './session.ts';\n\nexport type PgAsyncUpdatePrepare<T extends AnyPgAsyncUpdate> = PgAsyncPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgAsyncUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = PgAsyncUpdateBase<\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\ttrue,\n\tnever\n>;\n\nexport interface PgUpdateHKTBase {\n\ttable: unknown;\n\tjoins: unknown;\n\tnullabilityMap: unknown;\n\tqueryResult: unknown;\n\tfrom: unknown;\n\tselectedFields: unknown;\n\treturning: unknown;\n\tdynamic: boolean;\n\texcludedMethods: string;\n\t_type: unknown;\n}\n\nexport interface PgAsyncUpdateHKT extends PgUpdateHKTBase {\n\t_type: PgAsyncUpdateBase<\n\t\tAssume<this['table'], PgTable>,\n\t\tAssume<this['queryResult'], PgQueryResultHKT>,\n\t\tAssume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>,\n\t\tAssume<this['selectedFields'], ColumnsSelection | undefined>,\n\t\tAssume<this['returning'], Record<string, unknown> | undefined>,\n\t\tAssume<this['nullabilityMap'], Record<string, JoinNullability>>,\n\t\tAssume<this['joins'], Join[]>,\n\t\tthis['dynamic'],\n\t\tthis['excludedMethods']\n\t>;\n}\n\nexport type AnyPgAsyncUpdate = PgAsyncUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgAsyncUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]> {}\n\nexport class PgAsyncUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends PgUpdateBase<\n\tPgAsyncUpdateHKT,\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\tTDynamic,\n\tTExcludedMethods\n> implements RunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'> {\n\tstatic override readonly [entityKind]: string = 'PgAsyncUpdate';\n\n\tdeclare protected session: PgAsyncSession;\n\n\t/** @internal */\n\t_prepare(name?: string): PgAsyncUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgAsyncUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\texecute: ReturnType<this['prepare']>['execute'] = (placeholderValues: Record<string, unknown> = {}) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n}\n\napplyMixins(PgAsyncUpdateBase, [QueryPromise]);\n"],"mappings":"AAAA,SAAS,kBAAkB;AAI3B,SAAS,oBAAoB;AAI7B,SAAS,mBAAgC;AACzC,SAAoB,oBAAoB;AACxC,SAAS,wBAAwB;AA8E1B,MAAM,0BAUH,aAW6G;AAAA,EACtH,QAA0B,UAAU,IAAY;AAAA;AAAA,EAKhD,SAAS,MAA2C;AACnD,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,QAAQ,iBAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,GAAG,KAAK,WAAW;AACnB,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAA0C;AACjD,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAEA,UAAkD,CAAC,oBAA6C,CAAC,MAAM;AACtG,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AACD;AAEA,YAAY,mBAAmB,CAAC,YAAY,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../src/pg-core/async/update.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { PgQueryResultHKT, PgQueryResultKind, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport type { JoinNullability } from '~/query-builders/select.types.ts';\nimport { QueryPromise } from '~/query-promise.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport { applyMixins, type Assume } from '~/utils.ts';\nimport { type Join, PgUpdateBase, type PgUpdateHKTBase } from '../query-builders/update.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type { PgAsyncPreparedQuery, PgAsyncSession } from './session.ts';\n\nexport type PgAsyncUpdatePrepare<T extends AnyPgAsyncUpdate> = PgAsyncPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgAsyncUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = PgAsyncUpdateBase<\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\ttrue,\n\tnever\n>;\n\nexport interface PgAsyncUpdateHKT extends PgUpdateHKTBase {\n\t_type: PgAsyncUpdateBase<\n\t\tAssume<this['table'], PgTable>,\n\t\tAssume<this['queryResult'], PgQueryResultHKT>,\n\t\tAssume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>,\n\t\tAssume<this['selectedFields'], ColumnsSelection | undefined>,\n\t\tAssume<this['returning'], Record<string, unknown> | undefined>,\n\t\tAssume<this['nullabilityMap'], Record<string, JoinNullability>>,\n\t\tAssume<this['joins'], Join[]>,\n\t\tthis['dynamic'],\n\t\tthis['excludedMethods']\n\t>;\n}\n\nexport type AnyPgAsyncUpdate = PgAsyncUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgAsyncUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryPromise<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]> {}\n\nexport class PgAsyncUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends PgUpdateBase<\n\tPgAsyncUpdateHKT,\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\tTDynamic,\n\tTExcludedMethods\n> implements RunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'> {\n\tstatic override readonly [entityKind]: string = 'PgAsyncUpdate';\n\n\tdeclare protected session: PgAsyncSession;\n\n\t/** @internal */\n\t_prepare(name?: string): PgAsyncUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgAsyncUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\texecute: ReturnType<this['prepare']>['execute'] = (placeholderValues: Record<string, unknown> = {}) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n}\n\napplyMixins(PgAsyncUpdateBase, [QueryPromise]);\n"],"mappings":"AAAA,SAAS,kBAAkB;AAI3B,SAAS,oBAAoB;AAI7B,SAAS,mBAAgC;AACzC,SAAoB,oBAA0C;AAC9D,SAAS,wBAAwB;AAiE1B,MAAM,0BAUH,aAW6G;AAAA,EACtH,QAA0B,UAAU,IAAY;AAAA;AAAA,EAKhD,SAAS,MAA2C;AACnD,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,QAAQ,iBAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,GAAG,KAAK,WAAW;AACnB,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAA0C;AACjD,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAEA,UAAkD,CAAC,oBAA6C,CAAC,MAAM;AACtG,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AACD;AAEA,YAAY,mBAAmB,CAAC,YAAY,CAAC;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/pg-core/effect/update.ts"],"sourcesContent":["import { applyEffectWrapper, type QueryEffect } from '~/effect-core/query-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { PgQueryResultHKT, PgQueryResultKind, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport type { JoinNullability } from '~/query-builders/select.types.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport type { Assume } from '~/utils.ts';\nimport { type Join, PgUpdateBase } from '../query-builders/update.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type { PgEffectPreparedQuery, PgEffectSession } from './session.ts';\n\nexport type PgEffectUpdatePrepare<T extends AnyPgEffectUpdate> = PgEffectPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgEffectUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = PgEffectUpdateBase<\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\ttrue,\n\tnever\n>;\n\nexport interface PgUpdateHKTBase {\n\ttable: unknown;\n\tjoins: unknown;\n\tnullabilityMap: unknown;\n\tqueryResult: unknown;\n\tfrom: unknown;\n\tselectedFields: unknown;\n\treturning: unknown;\n\tdynamic: boolean;\n\texcludedMethods: string;\n\t_type: unknown;\n}\n\nexport interface PgEffectUpdateHKT extends PgUpdateHKTBase {\n\t_type: PgEffectUpdateBase<\n\t\tAssume<this['table'], PgTable>,\n\t\tAssume<this['queryResult'], PgQueryResultHKT>,\n\t\tAssume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>,\n\t\tAssume<this['selectedFields'], ColumnsSelection | undefined>,\n\t\tAssume<this['returning'], Record<string, unknown> | undefined>,\n\t\tAssume<this['nullabilityMap'], Record<string, JoinNullability>>,\n\t\tAssume<this['joins'], Join[]>,\n\t\tthis['dynamic'],\n\t\tthis['excludedMethods']\n\t>;\n}\n\nexport type AnyPgEffectUpdate = PgEffectUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgEffectUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryEffect<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]> {}\n\nexport class PgEffectUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends PgUpdateBase<\n\tPgEffectUpdateHKT,\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\tTDynamic,\n\tTExcludedMethods\n> implements RunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'> {\n\tstatic override readonly [entityKind]: string = 'PgEffectUpdate';\n\n\tdeclare protected session: PgEffectSession;\n\n\t/** @internal */\n\t_prepare(name?: string): PgEffectUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgEffectUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\texecute: ReturnType<this['prepare']>['execute'] = (placeholderValues: Record<string, unknown> = {}) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n}\n\napplyEffectWrapper(PgEffectUpdateBase);\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAAqD;AACrD,oBAA2B;AAQ3B,oBAAwC;AACxC,mBAAiC;AA8E1B,MAAM,2BAUH,2BAW6G;AAAA,EACtH,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAKhD,SAAS,MAA4C;AACpD,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,YAAQ,+BAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,GAAG,KAAK,WAAW;AACnB,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAA2C;AAClD,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAEA,UAAkD,CAAC,oBAA6C,CAAC,MAAM;AACtG,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AACD;AAAA,IAEA,wCAAmB,kBAAkB;","names":[]}
1
+ {"version":3,"sources":["../../../src/pg-core/effect/update.ts"],"sourcesContent":["import { applyEffectWrapper, type QueryEffect } from '~/effect-core/query-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { PgQueryResultHKT, PgQueryResultKind, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport type { JoinNullability } from '~/query-builders/select.types.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport type { Assume } from '~/utils.ts';\nimport { type Join, PgUpdateBase, type PgUpdateHKTBase } from '../query-builders/update.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type { PgEffectPreparedQuery, PgEffectSession } from './session.ts';\n\nexport type PgEffectUpdatePrepare<T extends AnyPgEffectUpdate> = PgEffectPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgEffectUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = PgEffectUpdateBase<\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\ttrue,\n\tnever\n>;\n\nexport interface PgEffectUpdateHKT extends PgUpdateHKTBase {\n\t_type: PgEffectUpdateBase<\n\t\tAssume<this['table'], PgTable>,\n\t\tAssume<this['queryResult'], PgQueryResultHKT>,\n\t\tAssume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>,\n\t\tAssume<this['selectedFields'], ColumnsSelection | undefined>,\n\t\tAssume<this['returning'], Record<string, unknown> | undefined>,\n\t\tAssume<this['nullabilityMap'], Record<string, JoinNullability>>,\n\t\tAssume<this['joins'], Join[]>,\n\t\tthis['dynamic'],\n\t\tthis['excludedMethods']\n\t>;\n}\n\nexport type AnyPgEffectUpdate = PgEffectUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgEffectUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryEffect<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]> {}\n\nexport class PgEffectUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends PgUpdateBase<\n\tPgEffectUpdateHKT,\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\tTDynamic,\n\tTExcludedMethods\n> implements RunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'> {\n\tstatic override readonly [entityKind]: string = 'PgEffectUpdate';\n\n\tdeclare protected session: PgEffectSession;\n\n\t/** @internal */\n\t_prepare(name?: string): PgEffectUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgEffectUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\texecute: ReturnType<this['prepare']>['execute'] = (placeholderValues: Record<string, unknown> = {}) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n}\n\napplyEffectWrapper(PgEffectUpdateBase);\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAAqD;AACrD,oBAA2B;AAQ3B,oBAA8D;AAC9D,mBAAiC;AAiE1B,MAAM,2BAUH,2BAW6G;AAAA,EACtH,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAKhD,SAAS,MAA4C;AACpD,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,YAAQ,+BAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,GAAG,KAAK,WAAW;AACnB,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAA2C;AAClD,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAEA,UAAkD,CAAC,oBAA6C,CAAC,MAAM;AACtG,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AACD;AAAA,IAEA,wCAAmB,kBAAkB;","names":[]}
@@ -7,25 +7,13 @@ import type { RunnableQuery } from "../../runnable-query.cjs";
7
7
  import type { ColumnsSelection, SQL } from "../../sql/sql.cjs";
8
8
  import type { Subquery } from "../../subquery.cjs";
9
9
  import type { Assume } from "../../utils.cjs";
10
- import { type Join, PgUpdateBase } from "../query-builders/update.cjs";
10
+ import { type Join, PgUpdateBase, type PgUpdateHKTBase } from "../query-builders/update.cjs";
11
11
  import type { PgViewBase } from "../view-base.cjs";
12
12
  import type { PgEffectPreparedQuery, PgEffectSession } from "./session.cjs";
13
13
  export type PgEffectUpdatePrepare<T extends AnyPgEffectUpdate> = PgEffectPreparedQuery<PreparedQueryConfig & {
14
14
  execute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never> : T['_']['returning'][];
15
15
  }>;
16
16
  export type PgEffectUpdate<TTable extends PgTable = PgTable, TQueryResult extends PgQueryResultHKT = PgQueryResultHKT, TFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined, TSelectedFields extends ColumnsSelection | undefined = undefined, TReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = []> = PgEffectUpdateBase<TTable, TQueryResult, TFrom, TSelectedFields, TReturning, TNullabilityMap, TJoins, true, never>;
17
- export interface PgUpdateHKTBase {
18
- table: unknown;
19
- joins: unknown;
20
- nullabilityMap: unknown;
21
- queryResult: unknown;
22
- from: unknown;
23
- selectedFields: unknown;
24
- returning: unknown;
25
- dynamic: boolean;
26
- excludedMethods: string;
27
- _type: unknown;
28
- }
29
17
  export interface PgEffectUpdateHKT extends PgUpdateHKTBase {
30
18
  _type: PgEffectUpdateBase<Assume<this['table'], PgTable>, Assume<this['queryResult'], PgQueryResultHKT>, Assume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>, Assume<this['selectedFields'], ColumnsSelection | undefined>, Assume<this['returning'], Record<string, unknown> | undefined>, Assume<this['nullabilityMap'], Record<string, JoinNullability>>, Assume<this['joins'], Join[]>, this['dynamic'], this['excludedMethods']>;
31
19
  }
@@ -7,25 +7,13 @@ import type { RunnableQuery } from "../../runnable-query.js";
7
7
  import type { ColumnsSelection, SQL } from "../../sql/sql.js";
8
8
  import type { Subquery } from "../../subquery.js";
9
9
  import type { Assume } from "../../utils.js";
10
- import { type Join, PgUpdateBase } from "../query-builders/update.js";
10
+ import { type Join, PgUpdateBase, type PgUpdateHKTBase } from "../query-builders/update.js";
11
11
  import type { PgViewBase } from "../view-base.js";
12
12
  import type { PgEffectPreparedQuery, PgEffectSession } from "./session.js";
13
13
  export type PgEffectUpdatePrepare<T extends AnyPgEffectUpdate> = PgEffectPreparedQuery<PreparedQueryConfig & {
14
14
  execute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never> : T['_']['returning'][];
15
15
  }>;
16
16
  export type PgEffectUpdate<TTable extends PgTable = PgTable, TQueryResult extends PgQueryResultHKT = PgQueryResultHKT, TFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined, TSelectedFields extends ColumnsSelection | undefined = undefined, TReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined, TNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>, TJoins extends Join[] = []> = PgEffectUpdateBase<TTable, TQueryResult, TFrom, TSelectedFields, TReturning, TNullabilityMap, TJoins, true, never>;
17
- export interface PgUpdateHKTBase {
18
- table: unknown;
19
- joins: unknown;
20
- nullabilityMap: unknown;
21
- queryResult: unknown;
22
- from: unknown;
23
- selectedFields: unknown;
24
- returning: unknown;
25
- dynamic: boolean;
26
- excludedMethods: string;
27
- _type: unknown;
28
- }
29
17
  export interface PgEffectUpdateHKT extends PgUpdateHKTBase {
30
18
  _type: PgEffectUpdateBase<Assume<this['table'], PgTable>, Assume<this['queryResult'], PgQueryResultHKT>, Assume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>, Assume<this['selectedFields'], ColumnsSelection | undefined>, Assume<this['returning'], Record<string, unknown> | undefined>, Assume<this['nullabilityMap'], Record<string, JoinNullability>>, Assume<this['joins'], Join[]>, this['dynamic'], this['excludedMethods']>;
31
19
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/pg-core/effect/update.ts"],"sourcesContent":["import { applyEffectWrapper, type QueryEffect } from '~/effect-core/query-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { PgQueryResultHKT, PgQueryResultKind, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport type { JoinNullability } from '~/query-builders/select.types.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport type { Assume } from '~/utils.ts';\nimport { type Join, PgUpdateBase } from '../query-builders/update.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type { PgEffectPreparedQuery, PgEffectSession } from './session.ts';\n\nexport type PgEffectUpdatePrepare<T extends AnyPgEffectUpdate> = PgEffectPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgEffectUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = PgEffectUpdateBase<\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\ttrue,\n\tnever\n>;\n\nexport interface PgUpdateHKTBase {\n\ttable: unknown;\n\tjoins: unknown;\n\tnullabilityMap: unknown;\n\tqueryResult: unknown;\n\tfrom: unknown;\n\tselectedFields: unknown;\n\treturning: unknown;\n\tdynamic: boolean;\n\texcludedMethods: string;\n\t_type: unknown;\n}\n\nexport interface PgEffectUpdateHKT extends PgUpdateHKTBase {\n\t_type: PgEffectUpdateBase<\n\t\tAssume<this['table'], PgTable>,\n\t\tAssume<this['queryResult'], PgQueryResultHKT>,\n\t\tAssume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>,\n\t\tAssume<this['selectedFields'], ColumnsSelection | undefined>,\n\t\tAssume<this['returning'], Record<string, unknown> | undefined>,\n\t\tAssume<this['nullabilityMap'], Record<string, JoinNullability>>,\n\t\tAssume<this['joins'], Join[]>,\n\t\tthis['dynamic'],\n\t\tthis['excludedMethods']\n\t>;\n}\n\nexport type AnyPgEffectUpdate = PgEffectUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgEffectUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryEffect<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]> {}\n\nexport class PgEffectUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends PgUpdateBase<\n\tPgEffectUpdateHKT,\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\tTDynamic,\n\tTExcludedMethods\n> implements RunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'> {\n\tstatic override readonly [entityKind]: string = 'PgEffectUpdate';\n\n\tdeclare protected session: PgEffectSession;\n\n\t/** @internal */\n\t_prepare(name?: string): PgEffectUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgEffectUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\texecute: ReturnType<this['prepare']>['execute'] = (placeholderValues: Record<string, unknown> = {}) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n}\n\napplyEffectWrapper(PgEffectUpdateBase);\n"],"mappings":"AAAA,SAAS,0BAA4C;AACrD,SAAS,kBAAkB;AAQ3B,SAAoB,oBAAoB;AACxC,SAAS,wBAAwB;AA8E1B,MAAM,2BAUH,aAW6G;AAAA,EACtH,QAA0B,UAAU,IAAY;AAAA;AAAA,EAKhD,SAAS,MAA4C;AACpD,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,QAAQ,iBAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,GAAG,KAAK,WAAW;AACnB,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAA2C;AAClD,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAEA,UAAkD,CAAC,oBAA6C,CAAC,MAAM;AACtG,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AACD;AAEA,mBAAmB,kBAAkB;","names":[]}
1
+ {"version":3,"sources":["../../../src/pg-core/effect/update.ts"],"sourcesContent":["import { applyEffectWrapper, type QueryEffect } from '~/effect-core/query-effect.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { PgQueryResultHKT, PgQueryResultKind, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport type { JoinNullability } from '~/query-builders/select.types.ts';\nimport type { RunnableQuery } from '~/runnable-query.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery } from '~/subquery.ts';\nimport type { Assume } from '~/utils.ts';\nimport { type Join, PgUpdateBase, type PgUpdateHKTBase } from '../query-builders/update.ts';\nimport { extractUsedTable } from '../utils.ts';\nimport type { PgViewBase } from '../view-base.ts';\nimport type { PgEffectPreparedQuery, PgEffectSession } from './session.ts';\n\nexport type PgEffectUpdatePrepare<T extends AnyPgEffectUpdate> = PgEffectPreparedQuery<\n\tPreparedQueryConfig & {\n\t\texecute: T['_']['returning'] extends undefined ? PgQueryResultKind<T['_']['queryResult'], never>\n\t\t\t: T['_']['returning'][];\n\t}\n>;\n\nexport type PgEffectUpdate<\n\tTTable extends PgTable = PgTable,\n\tTQueryResult extends PgQueryResultHKT = PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = Record<string, unknown> | undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n> = PgEffectUpdateBase<\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\ttrue,\n\tnever\n>;\n\nexport interface PgEffectUpdateHKT extends PgUpdateHKTBase {\n\t_type: PgEffectUpdateBase<\n\t\tAssume<this['table'], PgTable>,\n\t\tAssume<this['queryResult'], PgQueryResultHKT>,\n\t\tAssume<this['from'], PgTable | Subquery | PgViewBase | SQL | undefined>,\n\t\tAssume<this['selectedFields'], ColumnsSelection | undefined>,\n\t\tAssume<this['returning'], Record<string, unknown> | undefined>,\n\t\tAssume<this['nullabilityMap'], Record<string, JoinNullability>>,\n\t\tAssume<this['joins'], Join[]>,\n\t\tthis['dynamic'],\n\t\tthis['excludedMethods']\n\t>;\n}\n\nexport type AnyPgEffectUpdate = PgEffectUpdateBase<any, any, any, any, any, any, any, any, any>;\n\nexport interface PgEffectUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTJoins extends Join[] = [],\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTDynamic extends boolean = false,\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\tTExcludedMethods extends string = never,\n> extends QueryEffect<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[]> {}\n\nexport class PgEffectUpdateBase<\n\tTTable extends PgTable,\n\tTQueryResult extends PgQueryResultHKT,\n\tTFrom extends PgTable | Subquery | PgViewBase | SQL | undefined = undefined,\n\tTSelectedFields extends ColumnsSelection | undefined = undefined,\n\tTReturning extends Record<string, unknown> | undefined = undefined,\n\tTNullabilityMap extends Record<string, JoinNullability> = Record<TTable['_']['name'], 'not-null'>,\n\tTJoins extends Join[] = [],\n\tTDynamic extends boolean = false,\n\tTExcludedMethods extends string = never,\n> extends PgUpdateBase<\n\tPgEffectUpdateHKT,\n\tTTable,\n\tTQueryResult,\n\tTFrom,\n\tTSelectedFields,\n\tTReturning,\n\tTNullabilityMap,\n\tTJoins,\n\tTDynamic,\n\tTExcludedMethods\n> implements RunnableQuery<TReturning extends undefined ? PgQueryResultKind<TQueryResult, never> : TReturning[], 'pg'> {\n\tstatic override readonly [entityKind]: string = 'PgEffectUpdate';\n\n\tdeclare protected session: PgEffectSession;\n\n\t/** @internal */\n\t_prepare(name?: string): PgEffectUpdatePrepare<this> {\n\t\tconst query = this.session.prepareQuery<\n\t\t\tPreparedQueryConfig & { execute: TReturning[] }\n\t\t>(this.dialect.sqlToQuery(this.getSQL()), this.config.returning, name, true, undefined, {\n\t\t\ttype: 'insert',\n\t\t\ttables: extractUsedTable(this.config.table),\n\t\t}, this.cacheConfig);\n\t\tquery.joinsNotNullableMap = this.joinsNotNullableMap;\n\t\treturn query;\n\t}\n\n\tprepare(name: string): PgEffectUpdatePrepare<this> {\n\t\treturn this._prepare(name);\n\t}\n\n\texecute: ReturnType<this['prepare']>['execute'] = (placeholderValues: Record<string, unknown> = {}) => {\n\t\treturn this._prepare().execute(placeholderValues);\n\t};\n}\n\napplyEffectWrapper(PgEffectUpdateBase);\n"],"mappings":"AAAA,SAAS,0BAA4C;AACrD,SAAS,kBAAkB;AAQ3B,SAAoB,oBAA0C;AAC9D,SAAS,wBAAwB;AAiE1B,MAAM,2BAUH,aAW6G;AAAA,EACtH,QAA0B,UAAU,IAAY;AAAA;AAAA,EAKhD,SAAS,MAA4C;AACpD,UAAM,QAAQ,KAAK,QAAQ,aAEzB,KAAK,QAAQ,WAAW,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,WAAW,MAAM,MAAM,QAAW;AAAA,MACvF,MAAM;AAAA,MACN,QAAQ,iBAAiB,KAAK,OAAO,KAAK;AAAA,IAC3C,GAAG,KAAK,WAAW;AACnB,UAAM,sBAAsB,KAAK;AACjC,WAAO;AAAA,EACR;AAAA,EAEA,QAAQ,MAA2C;AAClD,WAAO,KAAK,SAAS,IAAI;AAAA,EAC1B;AAAA,EAEA,UAAkD,CAAC,oBAA6C,CAAC,MAAM;AACtG,WAAO,KAAK,SAAS,EAAE,QAAQ,iBAAiB;AAAA,EACjD;AACD;AAEA,mBAAmB,kBAAkB;","names":[]}
package/pg-core/index.cjs CHANGED
@@ -16,6 +16,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
16
16
  var pg_core_exports = {};
17
17
  module.exports = __toCommonJS(pg_core_exports);
18
18
  __reExport(pg_core_exports, require("./alias.cjs"), module.exports);
19
+ __reExport(pg_core_exports, require("./async/index.cjs"), module.exports);
19
20
  __reExport(pg_core_exports, require("./checks.cjs"), module.exports);
20
21
  __reExport(pg_core_exports, require("./columns/index.cjs"), module.exports);
21
22
  __reExport(pg_core_exports, require("./dialect.cjs"), module.exports);
@@ -38,6 +39,7 @@ __reExport(pg_core_exports, require("./view.cjs"), module.exports);
38
39
  // Annotate the CommonJS export names for ESM import in node:
39
40
  0 && (module.exports = {
40
41
  ...require("./alias.cjs"),
42
+ ...require("./async/index.cjs"),
41
43
  ...require("./checks.cjs"),
42
44
  ...require("./columns/index.cjs"),
43
45
  ...require("./dialect.cjs"),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/index.ts"],"sourcesContent":["export * from './alias.ts';\nexport * from './checks.ts';\nexport * from './columns/index.ts';\nexport * from './dialect.ts';\nexport * from './foreign-keys.ts';\nexport * from './indexes.ts';\nexport * from './policies.ts';\nexport * from './primary-keys.ts';\nexport * from './query-builders/index.ts';\nexport * from './roles.ts';\nexport * from './schema.ts';\nexport * from './sequence.ts';\nexport * from './session.ts';\nexport * from './subquery.ts';\nexport * from './table.ts';\nexport * from './unique-constraint.ts';\nexport * from './utils.ts';\nexport * from './utils/index.ts';\nexport * from './view-common.ts';\nexport * from './view.ts';\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,4BAAc,uBAAd;AACA,4BAAc,wBADd;AAEA,4BAAc,+BAFd;AAGA,4BAAc,yBAHd;AAIA,4BAAc,8BAJd;AAKA,4BAAc,yBALd;AAMA,4BAAc,0BANd;AAOA,4BAAc,8BAPd;AAQA,4BAAc,sCARd;AASA,4BAAc,uBATd;AAUA,4BAAc,wBAVd;AAWA,4BAAc,0BAXd;AAYA,4BAAc,yBAZd;AAaA,4BAAc,0BAbd;AAcA,4BAAc,uBAdd;AAeA,4BAAc,mCAfd;AAgBA,4BAAc,uBAhBd;AAiBA,4BAAc,6BAjBd;AAkBA,4BAAc,6BAlBd;AAmBA,4BAAc,sBAnBd;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/index.ts"],"sourcesContent":["export * from './alias.ts';\nexport * from './async/index.ts';\nexport * from './checks.ts';\nexport * from './columns/index.ts';\nexport * from './dialect.ts';\nexport * from './foreign-keys.ts';\nexport * from './indexes.ts';\nexport * from './policies.ts';\nexport * from './primary-keys.ts';\nexport * from './query-builders/index.ts';\nexport * from './roles.ts';\nexport * from './schema.ts';\nexport * from './sequence.ts';\nexport * from './session.ts';\nexport * from './subquery.ts';\nexport * from './table.ts';\nexport * from './unique-constraint.ts';\nexport * from './utils.ts';\nexport * from './utils/index.ts';\nexport * from './view-common.ts';\nexport * from './view.ts';\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,4BAAc,uBAAd;AACA,4BAAc,6BADd;AAEA,4BAAc,wBAFd;AAGA,4BAAc,+BAHd;AAIA,4BAAc,yBAJd;AAKA,4BAAc,8BALd;AAMA,4BAAc,yBANd;AAOA,4BAAc,0BAPd;AAQA,4BAAc,8BARd;AASA,4BAAc,sCATd;AAUA,4BAAc,uBAVd;AAWA,4BAAc,wBAXd;AAYA,4BAAc,0BAZd;AAaA,4BAAc,yBAbd;AAcA,4BAAc,0BAdd;AAeA,4BAAc,uBAfd;AAgBA,4BAAc,mCAhBd;AAiBA,4BAAc,uBAjBd;AAkBA,4BAAc,6BAlBd;AAmBA,4BAAc,6BAnBd;AAoBA,4BAAc,sBApBd;","names":[]}
@@ -1,4 +1,5 @@
1
1
  export * from "./alias.cjs";
2
+ export * from "./async/index.cjs";
2
3
  export * from "./checks.cjs";
3
4
  export * from "./columns/index.cjs";
4
5
  export * from "./dialect.cjs";
@@ -1,4 +1,5 @@
1
1
  export * from "./alias.js";
2
+ export * from "./async/index.js";
2
3
  export * from "./checks.js";
3
4
  export * from "./columns/index.js";
4
5
  export * from "./dialect.js";
package/pg-core/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./alias.js";
2
+ export * from "./async/index.js";
2
3
  export * from "./checks.js";
3
4
  export * from "./columns/index.js";
4
5
  export * from "./dialect.js";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/pg-core/index.ts"],"sourcesContent":["export * from './alias.ts';\nexport * from './checks.ts';\nexport * from './columns/index.ts';\nexport * from './dialect.ts';\nexport * from './foreign-keys.ts';\nexport * from './indexes.ts';\nexport * from './policies.ts';\nexport * from './primary-keys.ts';\nexport * from './query-builders/index.ts';\nexport * from './roles.ts';\nexport * from './schema.ts';\nexport * from './sequence.ts';\nexport * from './session.ts';\nexport * from './subquery.ts';\nexport * from './table.ts';\nexport * from './unique-constraint.ts';\nexport * from './utils.ts';\nexport * from './utils/index.ts';\nexport * from './view-common.ts';\nexport * from './view.ts';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/pg-core/index.ts"],"sourcesContent":["export * from './alias.ts';\nexport * from './async/index.ts';\nexport * from './checks.ts';\nexport * from './columns/index.ts';\nexport * from './dialect.ts';\nexport * from './foreign-keys.ts';\nexport * from './indexes.ts';\nexport * from './policies.ts';\nexport * from './primary-keys.ts';\nexport * from './query-builders/index.ts';\nexport * from './roles.ts';\nexport * from './schema.ts';\nexport * from './sequence.ts';\nexport * from './session.ts';\nexport * from './subquery.ts';\nexport * from './table.ts';\nexport * from './unique-constraint.ts';\nexport * from './utils.ts';\nexport * from './utils/index.ts';\nexport * from './view-common.ts';\nexport * from './view.ts';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;","names":[]}