drizzle-orm 1.0.0-beta.4-4605abe → 1.0.0-beta.4-332ec7b

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/aws-data-api/pg/driver.cjs +5 -4
  2. package/aws-data-api/pg/driver.cjs.map +1 -1
  3. package/aws-data-api/pg/driver.d.cts +1 -1
  4. package/aws-data-api/pg/driver.d.ts +1 -1
  5. package/aws-data-api/pg/driver.js +6 -5
  6. package/aws-data-api/pg/driver.js.map +1 -1
  7. package/neon/neon-auth.d.cts +17 -24
  8. package/neon/neon-auth.d.ts +17 -24
  9. package/package.json +1 -25
  10. package/pg-core/columns/bigint.cjs +3 -4
  11. package/pg-core/columns/bigint.cjs.map +1 -1
  12. package/pg-core/columns/bigint.d.cts +4 -5
  13. package/pg-core/columns/bigint.d.ts +4 -5
  14. package/pg-core/columns/bigint.js +4 -5
  15. package/pg-core/columns/bigint.js.map +1 -1
  16. package/pg-core/columns/char.cjs.map +1 -1
  17. package/pg-core/columns/char.d.cts +27 -9
  18. package/pg-core/columns/char.d.ts +27 -9
  19. package/pg-core/columns/char.js.map +1 -1
  20. package/pg-core/columns/common.cjs +181 -59
  21. package/pg-core/columns/common.cjs.map +1 -1
  22. package/pg-core/columns/common.d.cts +275 -59
  23. package/pg-core/columns/common.d.ts +275 -59
  24. package/pg-core/columns/common.js +182 -58
  25. package/pg-core/columns/common.js.map +1 -1
  26. package/pg-core/columns/custom.cjs +24 -0
  27. package/pg-core/columns/custom.cjs.map +1 -1
  28. package/pg-core/columns/custom.js +24 -0
  29. package/pg-core/columns/custom.js.map +1 -1
  30. package/pg-core/columns/date.cjs +2 -3
  31. package/pg-core/columns/date.cjs.map +1 -1
  32. package/pg-core/columns/date.d.cts +3 -4
  33. package/pg-core/columns/date.d.ts +3 -4
  34. package/pg-core/columns/date.js +3 -4
  35. package/pg-core/columns/date.js.map +1 -1
  36. package/pg-core/columns/index.cjs +0 -2
  37. package/pg-core/columns/index.cjs.map +1 -1
  38. package/pg-core/columns/index.d.cts +0 -1
  39. package/pg-core/columns/index.d.ts +0 -1
  40. package/pg-core/columns/index.js +0 -1
  41. package/pg-core/columns/index.js.map +1 -1
  42. package/pg-core/columns/integer.cjs +1 -2
  43. package/pg-core/columns/integer.cjs.map +1 -1
  44. package/pg-core/columns/integer.d.cts +2 -3
  45. package/pg-core/columns/integer.d.ts +2 -3
  46. package/pg-core/columns/integer.js +2 -3
  47. package/pg-core/columns/integer.js.map +1 -1
  48. package/pg-core/columns/numeric.cjs +9 -3
  49. package/pg-core/columns/numeric.cjs.map +1 -1
  50. package/pg-core/columns/numeric.d.cts +3 -3
  51. package/pg-core/columns/numeric.d.ts +3 -3
  52. package/pg-core/columns/numeric.js +9 -3
  53. package/pg-core/columns/numeric.js.map +1 -1
  54. package/pg-core/columns/real.cjs +2 -2
  55. package/pg-core/columns/real.cjs.map +1 -1
  56. package/pg-core/columns/real.d.cts +1 -1
  57. package/pg-core/columns/real.d.ts +1 -1
  58. package/pg-core/columns/real.js +2 -2
  59. package/pg-core/columns/real.js.map +1 -1
  60. package/pg-core/columns/smallint.cjs +3 -4
  61. package/pg-core/columns/smallint.cjs.map +1 -1
  62. package/pg-core/columns/smallint.d.cts +3 -4
  63. package/pg-core/columns/smallint.d.ts +3 -4
  64. package/pg-core/columns/smallint.js +4 -5
  65. package/pg-core/columns/smallint.js.map +1 -1
  66. package/pg-core/columns/text.cjs.map +1 -1
  67. package/pg-core/columns/text.d.cts +15 -7
  68. package/pg-core/columns/text.d.ts +15 -7
  69. package/pg-core/columns/text.js.map +1 -1
  70. package/pg-core/columns/time.cjs +1 -2
  71. package/pg-core/columns/time.cjs.map +1 -1
  72. package/pg-core/columns/time.d.cts +2 -3
  73. package/pg-core/columns/time.d.ts +2 -3
  74. package/pg-core/columns/time.js +2 -3
  75. package/pg-core/columns/time.js.map +1 -1
  76. package/pg-core/columns/timestamp.cjs +2 -3
  77. package/pg-core/columns/timestamp.cjs.map +1 -1
  78. package/pg-core/columns/timestamp.d.cts +3 -4
  79. package/pg-core/columns/timestamp.d.ts +3 -4
  80. package/pg-core/columns/timestamp.js +3 -4
  81. package/pg-core/columns/timestamp.js.map +1 -1
  82. package/pg-core/columns/varchar.cjs.map +1 -1
  83. package/pg-core/columns/varchar.d.cts +25 -8
  84. package/pg-core/columns/varchar.d.ts +25 -8
  85. package/pg-core/columns/varchar.js.map +1 -1
  86. package/pg-core/columns/vector_extension/sparsevec.cjs +3 -3
  87. package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
  88. package/pg-core/columns/vector_extension/sparsevec.d.cts +3 -3
  89. package/pg-core/columns/vector_extension/sparsevec.d.ts +3 -3
  90. package/pg-core/columns/vector_extension/sparsevec.js +3 -3
  91. package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
  92. package/pg-core/dialect.cjs +3 -9
  93. package/pg-core/dialect.cjs.map +1 -1
  94. package/pg-core/dialect.js +3 -10
  95. package/pg-core/dialect.js.map +1 -1
  96. package/pg-core/table.cjs.map +1 -1
  97. package/pg-core/table.d.cts +9 -10
  98. package/pg-core/table.d.ts +9 -10
  99. package/pg-core/table.js.map +1 -1
  100. package/pg-core/view.cjs.map +1 -1
  101. package/pg-core/view.d.cts +9 -9
  102. package/pg-core/view.d.ts +9 -9
  103. package/pg-core/view.js.map +1 -1
  104. package/relations.cjs.map +1 -1
  105. package/relations.d.cts +1 -1
  106. package/relations.d.ts +1 -1
  107. package/relations.js.map +1 -1
  108. package/sql/sql.cjs +2 -3
  109. package/sql/sql.cjs.map +1 -1
  110. package/sql/sql.js +2 -3
  111. package/sql/sql.js.map +1 -1
  112. package/supabase/rls.d.cts +25 -36
  113. package/supabase/rls.d.ts +25 -36
  114. package/pg-core/columns/date.common.cjs +0 -37
  115. package/pg-core/columns/date.common.cjs.map +0 -1
  116. package/pg-core/columns/date.common.d.cts +0 -7
  117. package/pg-core/columns/date.common.d.ts +0 -7
  118. package/pg-core/columns/date.common.js +0 -13
  119. package/pg-core/columns/date.common.js.map +0 -1
  120. package/pg-core/columns/int.common.cjs +0 -67
  121. package/pg-core/columns/int.common.cjs.map +0 -1
  122. package/pg-core/columns/int.common.d.cts +0 -15
  123. package/pg-core/columns/int.common.d.ts +0 -15
  124. package/pg-core/columns/int.common.js +0 -43
  125. package/pg-core/columns/int.common.js.map +0 -1
@@ -60,8 +60,9 @@ class AwsPgDialect extends import_dialect.PgDialect {
60
60
  for (const value of values) {
61
61
  for (const fieldName of Object.keys(columns)) {
62
62
  const colValue = value[fieldName];
63
- if ((0, import_entity.is)(colValue, import_sql.Param) && colValue.value !== void 0 && (0, import_entity.is)(colValue.encoder, import_pg_core.PgArray) && Array.isArray(colValue.value)) {
64
- value[fieldName] = import_sql.sql`cast(${colValue} as ${import_sql.sql.raw(colValue.encoder.getSQLType())})`;
63
+ const column = columns[fieldName];
64
+ if ((0, import_entity.is)(colValue, import_sql.Param) && colValue.value !== void 0 && (0, import_entity.is)(column, import_pg_core.PgColumn) && column.dimensions && Array.isArray(colValue.value)) {
65
+ value[fieldName] = import_sql.sql`cast(${colValue} as ${import_sql.sql.raw(column.getSQLType())})`;
65
66
  }
66
67
  }
67
68
  }
@@ -72,8 +73,8 @@ class AwsPgDialect extends import_dialect.PgDialect {
72
73
  const columns = table[import_table.Table.Symbol.Columns];
73
74
  for (const [colName, colValue] of Object.entries(set)) {
74
75
  const currentColumn = columns[colName];
75
- if (currentColumn && (0, import_entity.is)(colValue, import_sql.Param) && colValue.value !== void 0 && (0, import_entity.is)(colValue.encoder, import_pg_core.PgArray) && Array.isArray(colValue.value)) {
76
- set[colName] = import_sql.sql`cast(${colValue} as ${import_sql.sql.raw(colValue.encoder.getSQLType())})`;
76
+ if (currentColumn && (0, import_entity.is)(colValue, import_sql.Param) && colValue.value !== void 0 && (0, import_entity.is)(currentColumn, import_pg_core.PgColumn) && currentColumn.dimensions && Array.isArray(colValue.value)) {
77
+ set[colName] = import_sql.sql`cast(${colValue} as ${import_sql.sql.raw(currentColumn.getSQLType())})`;
77
78
  }
78
79
  }
79
80
  return super.buildUpdateSet(table, set);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/aws-data-api/pg/driver.ts"],"sourcesContent":["import { RDSDataClient, type RDSDataClientConfig } from '@aws-sdk/client-rds-data';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type { PgColumn, PgInsertConfig, PgTable, TableConfig } from '~/pg-core/index.ts';\nimport { PgArray } from '~/pg-core/index.ts';\nimport type { PgRaw } from '~/pg-core/query-builders/raw.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { Param, type SQL, sql, type SQLWrapper } from '~/sql/sql.ts';\nimport { Table } from '~/table.ts';\nimport type { DrizzleConfig, UpdateSet } from '~/utils.ts';\nimport type { AwsDataApiClient, AwsDataApiPgQueryResult, AwsDataApiPgQueryResultHKT } from './session.ts';\nimport { AwsDataApiSession } from './session.ts';\n\nexport interface PgDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tdatabase: string;\n\tresourceArn: string;\n\tsecretArn: string;\n}\n\nexport interface DrizzleAwsDataApiPgConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends DrizzleConfig<TSchema, TRelations> {\n\tdatabase: string;\n\tresourceArn: string;\n\tsecretArn: string;\n}\n\nexport class AwsDataApiPgDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<AwsDataApiPgQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'AwsDataApiPgDatabase';\n\n\toverride execute<\n\t\tTRow extends Record<string, unknown> = Record<string, unknown>,\n\t>(query: SQLWrapper | string): PgRaw<AwsDataApiPgQueryResult<TRow>> {\n\t\treturn super.execute(query);\n\t}\n}\n\nexport class AwsPgDialect extends PgDialect {\n\tstatic override readonly [entityKind]: string = 'AwsPgDialect';\n\n\toverride escapeParam(num: number): string {\n\t\treturn `:${num + 1}`;\n\t}\n\n\toverride buildInsertQuery(\n\t\t{ table, values, onConflict, returning, select, withList }: PgInsertConfig<PgTable<TableConfig>>,\n\t): SQL<unknown> {\n\t\tconst columns: Record<string, PgColumn> = table[Table.Symbol.Columns];\n\n\t\tif (!select) {\n\t\t\tfor (const value of (values as Record<string, Param | SQL>[])) {\n\t\t\t\tfor (const fieldName of Object.keys(columns)) {\n\t\t\t\t\tconst colValue = value[fieldName];\n\t\t\t\t\tif (\n\t\t\t\t\t\tis(colValue, Param) && colValue.value !== undefined && is(colValue.encoder, PgArray)\n\t\t\t\t\t\t&& Array.isArray(colValue.value)\n\t\t\t\t\t) {\n\t\t\t\t\t\tvalue[fieldName] = sql`cast(${colValue} as ${sql.raw(colValue.encoder.getSQLType())})`;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn super.buildInsertQuery({ table, values, onConflict, returning, withList });\n\t}\n\n\toverride buildUpdateSet(table: PgTable<TableConfig>, set: UpdateSet): SQL<unknown> {\n\t\tconst columns: Record<string, PgColumn> = table[Table.Symbol.Columns];\n\n\t\tfor (const [colName, colValue] of Object.entries(set)) {\n\t\t\tconst currentColumn = columns[colName];\n\t\t\tif (\n\t\t\t\tcurrentColumn && is(colValue, Param) && colValue.value !== undefined && is(colValue.encoder, PgArray)\n\t\t\t\t&& Array.isArray(colValue.value)\n\t\t\t) {\n\t\t\t\tset[colName] = sql`cast(${colValue} as ${sql.raw(colValue.encoder.getSQLType())})`;\n\t\t\t}\n\t\t}\n\t\treturn super.buildUpdateSet(table, set);\n\t}\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: AwsDataApiClient,\n\tconfig: DrizzleAwsDataApiPgConfig<TSchema, TRelations>,\n): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t$client: AwsDataApiClient;\n} {\n\tconst dialect = new AwsPgDialect({ casing: config.casing });\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 AwsDataApiSession(client, dialect, relations, schema, {\n\t\t...config,\n\t\tlogger,\n\t\tcache: config.cache,\n\t}, undefined);\n\tconst db = new AwsDataApiPgDatabase(dialect, session, relations, schema as V1.RelationalSchemaConfig<any>, true);\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\tTClient extends AwsDataApiClient = RDSDataClient,\n>(\n\t...params: [\n\t\t(\n\t\t\t| (\n\t\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t\t& {\n\t\t\t\t\tconnection: RDSDataClientConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\t\t\t\t}\n\t\t\t)\n\t\t\t| (\n\t\t\t\t& DrizzleAwsDataApiPgConfig<TSchema, TRelations>\n\t\t\t\t& {\n\t\t\t\t\tclient: TClient;\n\t\t\t\t}\n\t\t\t)\n\t\t),\n\t]\n): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif ((params[0] as { client?: TClient }).client) {\n\t\tconst { client, ...drizzleConfig } = params[0] as {\n\t\t\tclient: TClient;\n\t\t} & DrizzleAwsDataApiPgConfig<TSchema, TRelations>;\n\n\t\treturn construct(client, drizzleConfig) as any;\n\t}\n\n\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\tconnection: RDSDataClientConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\t} & DrizzleConfig<TSchema, TRelations>;\n\tconst { resourceArn, database, secretArn, ...rdsConfig } = connection;\n\n\tconst instance = new RDSDataClient(rdsConfig);\n\treturn construct(instance, { resourceArn, database, secretArn, ...drizzleConfig }) as any;\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: DrizzleAwsDataApiPgConfig<TSchema, TRelations>,\n\t): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"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","names":["drizzleConfig","drizzle"]}
1
+ {"version":3,"sources":["../../../src/aws-data-api/pg/driver.ts"],"sourcesContent":["import { RDSDataClient, type RDSDataClientConfig } from '@aws-sdk/client-rds-data';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgColumn, type PgInsertConfig, type PgTable, type TableConfig } from '~/pg-core/index.ts';\nimport type { PgRaw } from '~/pg-core/query-builders/raw.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { Param, type SQL, sql, type SQLWrapper } from '~/sql/sql.ts';\nimport { Table } from '~/table.ts';\nimport type { DrizzleConfig, UpdateSet } from '~/utils.ts';\nimport type { AwsDataApiClient, AwsDataApiPgQueryResult, AwsDataApiPgQueryResultHKT } from './session.ts';\nimport { AwsDataApiSession } from './session.ts';\n\nexport interface PgDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tdatabase: string;\n\tresourceArn: string;\n\tsecretArn: string;\n}\n\nexport interface DrizzleAwsDataApiPgConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends DrizzleConfig<TSchema, TRelations> {\n\tdatabase: string;\n\tresourceArn: string;\n\tsecretArn: string;\n}\n\nexport class AwsDataApiPgDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<AwsDataApiPgQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'AwsDataApiPgDatabase';\n\n\toverride execute<\n\t\tTRow extends Record<string, unknown> = Record<string, unknown>,\n\t>(query: SQLWrapper | string): PgRaw<AwsDataApiPgQueryResult<TRow>> {\n\t\treturn super.execute(query);\n\t}\n}\n\nexport class AwsPgDialect extends PgDialect {\n\tstatic override readonly [entityKind]: string = 'AwsPgDialect';\n\n\toverride escapeParam(num: number): string {\n\t\treturn `:${num + 1}`;\n\t}\n\n\toverride buildInsertQuery(\n\t\t{ table, values, onConflict, returning, select, withList }: PgInsertConfig<PgTable<TableConfig>>,\n\t): SQL<unknown> {\n\t\tconst columns: Record<string, PgColumn> = table[Table.Symbol.Columns];\n\n\t\tif (!select) {\n\t\t\tfor (const value of (values as Record<string, Param | SQL>[])) {\n\t\t\t\tfor (const fieldName of Object.keys(columns)) {\n\t\t\t\t\tconst colValue = value[fieldName];\n\t\t\t\t\tconst column = columns[fieldName];\n\t\t\t\t\tif (\n\t\t\t\t\t\tis(colValue, Param) && colValue.value !== undefined\n\t\t\t\t\t\t&& is(column, PgColumn) && column.dimensions\n\t\t\t\t\t\t&& Array.isArray(colValue.value)\n\t\t\t\t\t) {\n\t\t\t\t\t\tvalue[fieldName] = sql`cast(${colValue} as ${sql.raw(column.getSQLType())})`;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn super.buildInsertQuery({ table, values, onConflict, returning, withList });\n\t}\n\n\toverride buildUpdateSet(table: PgTable<TableConfig>, set: UpdateSet): SQL<unknown> {\n\t\tconst columns: Record<string, PgColumn> = table[Table.Symbol.Columns];\n\n\t\tfor (const [colName, colValue] of Object.entries(set)) {\n\t\t\tconst currentColumn = columns[colName];\n\t\t\tif (\n\t\t\t\tcurrentColumn && is(colValue, Param) && colValue.value !== undefined\n\t\t\t\t&& is(currentColumn, PgColumn) && currentColumn.dimensions\n\t\t\t\t&& Array.isArray(colValue.value)\n\t\t\t) {\n\t\t\t\tset[colName] = sql`cast(${colValue} as ${sql.raw(currentColumn.getSQLType())})`;\n\t\t\t}\n\t\t}\n\t\treturn super.buildUpdateSet(table, set);\n\t}\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: AwsDataApiClient,\n\tconfig: DrizzleAwsDataApiPgConfig<TSchema, TRelations>,\n): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t$client: AwsDataApiClient;\n} {\n\tconst dialect = new AwsPgDialect({ casing: config.casing });\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 AwsDataApiSession(client, dialect, relations, schema, {\n\t\t...config,\n\t\tlogger,\n\t\tcache: config.cache,\n\t}, undefined);\n\tconst db = new AwsDataApiPgDatabase(dialect, session, relations, schema as V1.RelationalSchemaConfig<any>, true);\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\tTClient extends AwsDataApiClient = RDSDataClient,\n>(\n\t...params: [\n\t\t(\n\t\t\t| (\n\t\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t\t& {\n\t\t\t\t\tconnection: RDSDataClientConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\t\t\t\t}\n\t\t\t)\n\t\t\t| (\n\t\t\t\t& DrizzleAwsDataApiPgConfig<TSchema, TRelations>\n\t\t\t\t& {\n\t\t\t\t\tclient: TClient;\n\t\t\t\t}\n\t\t\t)\n\t\t),\n\t]\n): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif ((params[0] as { client?: TClient }).client) {\n\t\tconst { client, ...drizzleConfig } = params[0] as {\n\t\t\tclient: TClient;\n\t\t} & DrizzleAwsDataApiPgConfig<TSchema, TRelations>;\n\n\t\treturn construct(client, drizzleConfig) as any;\n\t}\n\n\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\tconnection: RDSDataClientConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\t} & DrizzleConfig<TSchema, TRelations>;\n\tconst { resourceArn, database, secretArn, ...rdsConfig } = connection;\n\n\tconst instance = new RDSDataClient(rdsConfig);\n\treturn construct(instance, { resourceArn, database, secretArn, ...drizzleConfig }) as any;\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: DrizzleAwsDataApiPgConfig<TSchema, TRelations>,\n\t): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"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","names":["drizzleConfig","drizzle"]}
@@ -3,7 +3,7 @@ import { entityKind } from "../../entity.cjs";
3
3
  import type { Logger } from "../../logger.cjs";
4
4
  import { PgDatabase } from "../../pg-core/db.cjs";
5
5
  import { PgDialect } from "../../pg-core/dialect.cjs";
6
- import type { PgInsertConfig, PgTable, TableConfig } from "../../pg-core/index.cjs";
6
+ import { type PgInsertConfig, type PgTable, type TableConfig } from "../../pg-core/index.cjs";
7
7
  import type { PgRaw } from "../../pg-core/query-builders/raw.cjs";
8
8
  import type { AnyRelations, EmptyRelations } from "../../relations.cjs";
9
9
  import { type SQL, type SQLWrapper } from "../../sql/sql.cjs";
@@ -3,7 +3,7 @@ import { entityKind } from "../../entity.js";
3
3
  import type { Logger } from "../../logger.js";
4
4
  import { PgDatabase } from "../../pg-core/db.js";
5
5
  import { PgDialect } from "../../pg-core/dialect.js";
6
- import type { PgInsertConfig, PgTable, TableConfig } from "../../pg-core/index.js";
6
+ import { type PgInsertConfig, type PgTable, type TableConfig } from "../../pg-core/index.js";
7
7
  import type { PgRaw } from "../../pg-core/query-builders/raw.js";
8
8
  import type { AnyRelations, EmptyRelations } from "../../relations.js";
9
9
  import { type SQL, type SQLWrapper } from "../../sql/sql.js";
@@ -4,7 +4,7 @@ import { entityKind, is } from "../../entity.js";
4
4
  import { DefaultLogger } from "../../logger.js";
5
5
  import { PgDatabase } from "../../pg-core/db.js";
6
6
  import { PgDialect } from "../../pg-core/dialect.js";
7
- import { PgArray } from "../../pg-core/index.js";
7
+ import { PgColumn } from "../../pg-core/index.js";
8
8
  import { Param, sql } from "../../sql/sql.js";
9
9
  import { Table } from "../../table.js";
10
10
  import { AwsDataApiSession } from "./session.js";
@@ -25,8 +25,9 @@ class AwsPgDialect extends PgDialect {
25
25
  for (const value of values) {
26
26
  for (const fieldName of Object.keys(columns)) {
27
27
  const colValue = value[fieldName];
28
- if (is(colValue, Param) && colValue.value !== void 0 && is(colValue.encoder, PgArray) && Array.isArray(colValue.value)) {
29
- value[fieldName] = sql`cast(${colValue} as ${sql.raw(colValue.encoder.getSQLType())})`;
28
+ const column = columns[fieldName];
29
+ if (is(colValue, Param) && colValue.value !== void 0 && is(column, PgColumn) && column.dimensions && Array.isArray(colValue.value)) {
30
+ value[fieldName] = sql`cast(${colValue} as ${sql.raw(column.getSQLType())})`;
30
31
  }
31
32
  }
32
33
  }
@@ -37,8 +38,8 @@ class AwsPgDialect extends PgDialect {
37
38
  const columns = table[Table.Symbol.Columns];
38
39
  for (const [colName, colValue] of Object.entries(set)) {
39
40
  const currentColumn = columns[colName];
40
- if (currentColumn && is(colValue, Param) && colValue.value !== void 0 && is(colValue.encoder, PgArray) && Array.isArray(colValue.value)) {
41
- set[colName] = sql`cast(${colValue} as ${sql.raw(colValue.encoder.getSQLType())})`;
41
+ if (currentColumn && is(colValue, Param) && colValue.value !== void 0 && is(currentColumn, PgColumn) && currentColumn.dimensions && Array.isArray(colValue.value)) {
42
+ set[colName] = sql`cast(${colValue} as ${sql.raw(currentColumn.getSQLType())})`;
42
43
  }
43
44
  }
44
45
  return super.buildUpdateSet(table, set);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/aws-data-api/pg/driver.ts"],"sourcesContent":["import { RDSDataClient, type RDSDataClientConfig } from '@aws-sdk/client-rds-data';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type { PgColumn, PgInsertConfig, PgTable, TableConfig } from '~/pg-core/index.ts';\nimport { PgArray } from '~/pg-core/index.ts';\nimport type { PgRaw } from '~/pg-core/query-builders/raw.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { Param, type SQL, sql, type SQLWrapper } from '~/sql/sql.ts';\nimport { Table } from '~/table.ts';\nimport type { DrizzleConfig, UpdateSet } from '~/utils.ts';\nimport type { AwsDataApiClient, AwsDataApiPgQueryResult, AwsDataApiPgQueryResultHKT } from './session.ts';\nimport { AwsDataApiSession } from './session.ts';\n\nexport interface PgDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tdatabase: string;\n\tresourceArn: string;\n\tsecretArn: string;\n}\n\nexport interface DrizzleAwsDataApiPgConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends DrizzleConfig<TSchema, TRelations> {\n\tdatabase: string;\n\tresourceArn: string;\n\tsecretArn: string;\n}\n\nexport class AwsDataApiPgDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<AwsDataApiPgQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'AwsDataApiPgDatabase';\n\n\toverride execute<\n\t\tTRow extends Record<string, unknown> = Record<string, unknown>,\n\t>(query: SQLWrapper | string): PgRaw<AwsDataApiPgQueryResult<TRow>> {\n\t\treturn super.execute(query);\n\t}\n}\n\nexport class AwsPgDialect extends PgDialect {\n\tstatic override readonly [entityKind]: string = 'AwsPgDialect';\n\n\toverride escapeParam(num: number): string {\n\t\treturn `:${num + 1}`;\n\t}\n\n\toverride buildInsertQuery(\n\t\t{ table, values, onConflict, returning, select, withList }: PgInsertConfig<PgTable<TableConfig>>,\n\t): SQL<unknown> {\n\t\tconst columns: Record<string, PgColumn> = table[Table.Symbol.Columns];\n\n\t\tif (!select) {\n\t\t\tfor (const value of (values as Record<string, Param | SQL>[])) {\n\t\t\t\tfor (const fieldName of Object.keys(columns)) {\n\t\t\t\t\tconst colValue = value[fieldName];\n\t\t\t\t\tif (\n\t\t\t\t\t\tis(colValue, Param) && colValue.value !== undefined && is(colValue.encoder, PgArray)\n\t\t\t\t\t\t&& Array.isArray(colValue.value)\n\t\t\t\t\t) {\n\t\t\t\t\t\tvalue[fieldName] = sql`cast(${colValue} as ${sql.raw(colValue.encoder.getSQLType())})`;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn super.buildInsertQuery({ table, values, onConflict, returning, withList });\n\t}\n\n\toverride buildUpdateSet(table: PgTable<TableConfig>, set: UpdateSet): SQL<unknown> {\n\t\tconst columns: Record<string, PgColumn> = table[Table.Symbol.Columns];\n\n\t\tfor (const [colName, colValue] of Object.entries(set)) {\n\t\t\tconst currentColumn = columns[colName];\n\t\t\tif (\n\t\t\t\tcurrentColumn && is(colValue, Param) && colValue.value !== undefined && is(colValue.encoder, PgArray)\n\t\t\t\t&& Array.isArray(colValue.value)\n\t\t\t) {\n\t\t\t\tset[colName] = sql`cast(${colValue} as ${sql.raw(colValue.encoder.getSQLType())})`;\n\t\t\t}\n\t\t}\n\t\treturn super.buildUpdateSet(table, set);\n\t}\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: AwsDataApiClient,\n\tconfig: DrizzleAwsDataApiPgConfig<TSchema, TRelations>,\n): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t$client: AwsDataApiClient;\n} {\n\tconst dialect = new AwsPgDialect({ casing: config.casing });\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 AwsDataApiSession(client, dialect, relations, schema, {\n\t\t...config,\n\t\tlogger,\n\t\tcache: config.cache,\n\t}, undefined);\n\tconst db = new AwsDataApiPgDatabase(dialect, session, relations, schema as V1.RelationalSchemaConfig<any>, true);\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\tTClient extends AwsDataApiClient = RDSDataClient,\n>(\n\t...params: [\n\t\t(\n\t\t\t| (\n\t\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t\t& {\n\t\t\t\t\tconnection: RDSDataClientConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\t\t\t\t}\n\t\t\t)\n\t\t\t| (\n\t\t\t\t& DrizzleAwsDataApiPgConfig<TSchema, TRelations>\n\t\t\t\t& {\n\t\t\t\t\tclient: TClient;\n\t\t\t\t}\n\t\t\t)\n\t\t),\n\t]\n): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif ((params[0] as { client?: TClient }).client) {\n\t\tconst { client, ...drizzleConfig } = params[0] as {\n\t\t\tclient: TClient;\n\t\t} & DrizzleAwsDataApiPgConfig<TSchema, TRelations>;\n\n\t\treturn construct(client, drizzleConfig) as any;\n\t}\n\n\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\tconnection: RDSDataClientConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\t} & DrizzleConfig<TSchema, TRelations>;\n\tconst { resourceArn, database, secretArn, ...rdsConfig } = connection;\n\n\tconst instance = new RDSDataClient(rdsConfig);\n\treturn construct(instance, { resourceArn, database, secretArn, ...drizzleConfig }) as any;\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: DrizzleAwsDataApiPgConfig<TSchema, TRelations>,\n\t): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"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","names":["drizzleConfig","drizzle"]}
1
+ {"version":3,"sources":["../../../src/aws-data-api/pg/driver.ts"],"sourcesContent":["import { RDSDataClient, type RDSDataClientConfig } from '@aws-sdk/client-rds-data';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgDatabase } from '~/pg-core/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgColumn, type PgInsertConfig, type PgTable, type TableConfig } from '~/pg-core/index.ts';\nimport type { PgRaw } from '~/pg-core/query-builders/raw.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { Param, type SQL, sql, type SQLWrapper } from '~/sql/sql.ts';\nimport { Table } from '~/table.ts';\nimport type { DrizzleConfig, UpdateSet } from '~/utils.ts';\nimport type { AwsDataApiClient, AwsDataApiPgQueryResult, AwsDataApiPgQueryResultHKT } from './session.ts';\nimport { AwsDataApiSession } from './session.ts';\n\nexport interface PgDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tdatabase: string;\n\tresourceArn: string;\n\tsecretArn: string;\n}\n\nexport interface DrizzleAwsDataApiPgConfig<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends DrizzleConfig<TSchema, TRelations> {\n\tdatabase: string;\n\tresourceArn: string;\n\tsecretArn: string;\n}\n\nexport class AwsDataApiPgDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgDatabase<AwsDataApiPgQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'AwsDataApiPgDatabase';\n\n\toverride execute<\n\t\tTRow extends Record<string, unknown> = Record<string, unknown>,\n\t>(query: SQLWrapper | string): PgRaw<AwsDataApiPgQueryResult<TRow>> {\n\t\treturn super.execute(query);\n\t}\n}\n\nexport class AwsPgDialect extends PgDialect {\n\tstatic override readonly [entityKind]: string = 'AwsPgDialect';\n\n\toverride escapeParam(num: number): string {\n\t\treturn `:${num + 1}`;\n\t}\n\n\toverride buildInsertQuery(\n\t\t{ table, values, onConflict, returning, select, withList }: PgInsertConfig<PgTable<TableConfig>>,\n\t): SQL<unknown> {\n\t\tconst columns: Record<string, PgColumn> = table[Table.Symbol.Columns];\n\n\t\tif (!select) {\n\t\t\tfor (const value of (values as Record<string, Param | SQL>[])) {\n\t\t\t\tfor (const fieldName of Object.keys(columns)) {\n\t\t\t\t\tconst colValue = value[fieldName];\n\t\t\t\t\tconst column = columns[fieldName];\n\t\t\t\t\tif (\n\t\t\t\t\t\tis(colValue, Param) && colValue.value !== undefined\n\t\t\t\t\t\t&& is(column, PgColumn) && column.dimensions\n\t\t\t\t\t\t&& Array.isArray(colValue.value)\n\t\t\t\t\t) {\n\t\t\t\t\t\tvalue[fieldName] = sql`cast(${colValue} as ${sql.raw(column.getSQLType())})`;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn super.buildInsertQuery({ table, values, onConflict, returning, withList });\n\t}\n\n\toverride buildUpdateSet(table: PgTable<TableConfig>, set: UpdateSet): SQL<unknown> {\n\t\tconst columns: Record<string, PgColumn> = table[Table.Symbol.Columns];\n\n\t\tfor (const [colName, colValue] of Object.entries(set)) {\n\t\t\tconst currentColumn = columns[colName];\n\t\t\tif (\n\t\t\t\tcurrentColumn && is(colValue, Param) && colValue.value !== undefined\n\t\t\t\t&& is(currentColumn, PgColumn) && currentColumn.dimensions\n\t\t\t\t&& Array.isArray(colValue.value)\n\t\t\t) {\n\t\t\t\tset[colName] = sql`cast(${colValue} as ${sql.raw(currentColumn.getSQLType())})`;\n\t\t\t}\n\t\t}\n\t\treturn super.buildUpdateSet(table, set);\n\t}\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: AwsDataApiClient,\n\tconfig: DrizzleAwsDataApiPgConfig<TSchema, TRelations>,\n): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t$client: AwsDataApiClient;\n} {\n\tconst dialect = new AwsPgDialect({ casing: config.casing });\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 AwsDataApiSession(client, dialect, relations, schema, {\n\t\t...config,\n\t\tlogger,\n\t\tcache: config.cache,\n\t}, undefined);\n\tconst db = new AwsDataApiPgDatabase(dialect, session, relations, schema as V1.RelationalSchemaConfig<any>, true);\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\tTClient extends AwsDataApiClient = RDSDataClient,\n>(\n\t...params: [\n\t\t(\n\t\t\t| (\n\t\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t\t& {\n\t\t\t\t\tconnection: RDSDataClientConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\t\t\t\t}\n\t\t\t)\n\t\t\t| (\n\t\t\t\t& DrizzleAwsDataApiPgConfig<TSchema, TRelations>\n\t\t\t\t& {\n\t\t\t\t\tclient: TClient;\n\t\t\t\t}\n\t\t\t)\n\t\t),\n\t]\n): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif ((params[0] as { client?: TClient }).client) {\n\t\tconst { client, ...drizzleConfig } = params[0] as {\n\t\t\tclient: TClient;\n\t\t} & DrizzleAwsDataApiPgConfig<TSchema, TRelations>;\n\n\t\treturn construct(client, drizzleConfig) as any;\n\t}\n\n\tconst { connection, ...drizzleConfig } = params[0] as {\n\t\tconnection: RDSDataClientConfig & Omit<DrizzleAwsDataApiPgConfig, keyof DrizzleConfig>;\n\t} & DrizzleConfig<TSchema, TRelations>;\n\tconst { resourceArn, database, secretArn, ...rdsConfig } = connection;\n\n\tconst instance = new RDSDataClient(rdsConfig);\n\treturn construct(instance, { resourceArn, database, secretArn, ...drizzleConfig }) as any;\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: DrizzleAwsDataApiPgConfig<TSchema, TRelations>,\n\t): AwsDataApiPgDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"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","names":["drizzleConfig","drizzle"]}
@@ -9,7 +9,7 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
9
9
  name: "users_sync";
10
10
  schema: "neon_auth";
11
11
  columns: {
12
- rawJson: import("../pg-core/index.ts").PgColumn<{
12
+ rawJson: import("../pg-core/index.ts").PgBuildColumn<"users_sync", import("../pg-core/index.ts").SetNotNull<import("../pg-core/index.ts").PgJsonbBuilder>, {
13
13
  name: string;
14
14
  tableName: "users_sync";
15
15
  dataType: "object json";
@@ -21,11 +21,10 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
21
21
  isAutoincrement: false;
22
22
  hasRuntimeDefault: false;
23
23
  enumValues: undefined;
24
- baseColumn: never;
25
24
  identity: undefined;
26
25
  generated: undefined;
27
- }, {}>;
28
- id: import("../pg-core/index.ts").PgColumn<{
26
+ }>;
27
+ id: import("../pg-core/index.ts").PgBuildColumn<"users_sync", import("../pg-core/index.ts").SetNotNull<import("../pg-core/index.ts").SetIsPrimaryKey<import("../pg-core/index.ts").PgTextBuilder<undefined>>>, {
29
28
  name: string;
30
29
  tableName: "users_sync";
31
30
  dataType: "string";
@@ -36,12 +35,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
36
35
  isPrimaryKey: true;
37
36
  isAutoincrement: false;
38
37
  hasRuntimeDefault: false;
39
- enumValues: [string, ...string[]];
40
- baseColumn: never;
38
+ enumValues: undefined;
41
39
  identity: undefined;
42
40
  generated: undefined;
43
- }, {}>;
44
- name: import("../pg-core/index.ts").PgColumn<{
41
+ }>;
42
+ name: import("../pg-core/index.ts").PgBuildColumn<"users_sync", import("../pg-core/index.ts").PgTextBuilder<undefined>, {
45
43
  name: string;
46
44
  tableName: "users_sync";
47
45
  dataType: "string";
@@ -52,12 +50,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
52
50
  isPrimaryKey: false;
53
51
  isAutoincrement: false;
54
52
  hasRuntimeDefault: false;
55
- enumValues: [string, ...string[]];
56
- baseColumn: never;
53
+ enumValues: undefined;
57
54
  identity: undefined;
58
55
  generated: undefined;
59
- }, {}>;
60
- email: import("../pg-core/index.ts").PgColumn<{
56
+ }>;
57
+ email: import("../pg-core/index.ts").PgBuildColumn<"users_sync", import("../pg-core/index.ts").PgTextBuilder<undefined>, {
61
58
  name: string;
62
59
  tableName: "users_sync";
63
60
  dataType: "string";
@@ -68,12 +65,11 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
68
65
  isPrimaryKey: false;
69
66
  isAutoincrement: false;
70
67
  hasRuntimeDefault: false;
71
- enumValues: [string, ...string[]];
72
- baseColumn: never;
68
+ enumValues: undefined;
73
69
  identity: undefined;
74
70
  generated: undefined;
75
- }, {}>;
76
- createdAt: import("../pg-core/index.ts").PgColumn<{
71
+ }>;
72
+ createdAt: import("../pg-core/index.ts").PgBuildColumn<"users_sync", import("../pg-core/index.ts").PgTimestampStringBuilder, {
77
73
  name: string;
78
74
  tableName: "users_sync";
79
75
  dataType: "string timestamp";
@@ -85,11 +81,10 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
85
81
  isAutoincrement: false;
86
82
  hasRuntimeDefault: false;
87
83
  enumValues: undefined;
88
- baseColumn: never;
89
84
  identity: undefined;
90
85
  generated: undefined;
91
- }, {}>;
92
- deletedAt: import("../pg-core/index.ts").PgColumn<{
86
+ }>;
87
+ deletedAt: import("../pg-core/index.ts").PgBuildColumn<"users_sync", import("../pg-core/index.ts").PgTimestampStringBuilder, {
93
88
  name: string;
94
89
  tableName: "users_sync";
95
90
  dataType: "string timestamp";
@@ -101,11 +96,10 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
101
96
  isAutoincrement: false;
102
97
  hasRuntimeDefault: false;
103
98
  enumValues: undefined;
104
- baseColumn: never;
105
99
  identity: undefined;
106
100
  generated: undefined;
107
- }, {}>;
108
- updatedAt: import("../pg-core/index.ts").PgColumn<{
101
+ }>;
102
+ updatedAt: import("../pg-core/index.ts").PgBuildColumn<"users_sync", import("../pg-core/index.ts").PgTimestampStringBuilder, {
109
103
  name: string;
110
104
  tableName: "users_sync";
111
105
  dataType: "string timestamp";
@@ -117,10 +111,9 @@ export declare const usersSync: import("../pg-core/index.ts").PgTableWithColumns
117
111
  isAutoincrement: false;
118
112
  hasRuntimeDefault: false;
119
113
  enumValues: undefined;
120
- baseColumn: never;
121
114
  identity: undefined;
122
115
  generated: undefined;
123
- }, {}>;
116
+ }>;
124
117
  };
125
118
  dialect: "pg";
126
119
  }>;
@@ -9,7 +9,7 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
9
9
  name: "users_sync";
10
10
  schema: "neon_auth";
11
11
  columns: {
12
- rawJson: import("../pg-core/index.js").PgColumn<{
12
+ rawJson: import("../pg-core/index.js").PgBuildColumn<"users_sync", import("../pg-core/index.js").SetNotNull<import("../pg-core/index.js").PgJsonbBuilder>, {
13
13
  name: string;
14
14
  tableName: "users_sync";
15
15
  dataType: "object json";
@@ -21,11 +21,10 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
21
21
  isAutoincrement: false;
22
22
  hasRuntimeDefault: false;
23
23
  enumValues: undefined;
24
- baseColumn: never;
25
24
  identity: undefined;
26
25
  generated: undefined;
27
- }, {}>;
28
- id: import("../pg-core/index.js").PgColumn<{
26
+ }>;
27
+ id: import("../pg-core/index.js").PgBuildColumn<"users_sync", import("../pg-core/index.js").SetNotNull<import("../pg-core/index.js").SetIsPrimaryKey<import("../pg-core/index.js").PgTextBuilder<undefined>>>, {
29
28
  name: string;
30
29
  tableName: "users_sync";
31
30
  dataType: "string";
@@ -36,12 +35,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
36
35
  isPrimaryKey: true;
37
36
  isAutoincrement: false;
38
37
  hasRuntimeDefault: false;
39
- enumValues: [string, ...string[]];
40
- baseColumn: never;
38
+ enumValues: undefined;
41
39
  identity: undefined;
42
40
  generated: undefined;
43
- }, {}>;
44
- name: import("../pg-core/index.js").PgColumn<{
41
+ }>;
42
+ name: import("../pg-core/index.js").PgBuildColumn<"users_sync", import("../pg-core/index.js").PgTextBuilder<undefined>, {
45
43
  name: string;
46
44
  tableName: "users_sync";
47
45
  dataType: "string";
@@ -52,12 +50,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
52
50
  isPrimaryKey: false;
53
51
  isAutoincrement: false;
54
52
  hasRuntimeDefault: false;
55
- enumValues: [string, ...string[]];
56
- baseColumn: never;
53
+ enumValues: undefined;
57
54
  identity: undefined;
58
55
  generated: undefined;
59
- }, {}>;
60
- email: import("../pg-core/index.js").PgColumn<{
56
+ }>;
57
+ email: import("../pg-core/index.js").PgBuildColumn<"users_sync", import("../pg-core/index.js").PgTextBuilder<undefined>, {
61
58
  name: string;
62
59
  tableName: "users_sync";
63
60
  dataType: "string";
@@ -68,12 +65,11 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
68
65
  isPrimaryKey: false;
69
66
  isAutoincrement: false;
70
67
  hasRuntimeDefault: false;
71
- enumValues: [string, ...string[]];
72
- baseColumn: never;
68
+ enumValues: undefined;
73
69
  identity: undefined;
74
70
  generated: undefined;
75
- }, {}>;
76
- createdAt: import("../pg-core/index.js").PgColumn<{
71
+ }>;
72
+ createdAt: import("../pg-core/index.js").PgBuildColumn<"users_sync", import("../pg-core/index.js").PgTimestampStringBuilder, {
77
73
  name: string;
78
74
  tableName: "users_sync";
79
75
  dataType: "string timestamp";
@@ -85,11 +81,10 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
85
81
  isAutoincrement: false;
86
82
  hasRuntimeDefault: false;
87
83
  enumValues: undefined;
88
- baseColumn: never;
89
84
  identity: undefined;
90
85
  generated: undefined;
91
- }, {}>;
92
- deletedAt: import("../pg-core/index.js").PgColumn<{
86
+ }>;
87
+ deletedAt: import("../pg-core/index.js").PgBuildColumn<"users_sync", import("../pg-core/index.js").PgTimestampStringBuilder, {
93
88
  name: string;
94
89
  tableName: "users_sync";
95
90
  dataType: "string timestamp";
@@ -101,11 +96,10 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
101
96
  isAutoincrement: false;
102
97
  hasRuntimeDefault: false;
103
98
  enumValues: undefined;
104
- baseColumn: never;
105
99
  identity: undefined;
106
100
  generated: undefined;
107
- }, {}>;
108
- updatedAt: import("../pg-core/index.js").PgColumn<{
101
+ }>;
102
+ updatedAt: import("../pg-core/index.js").PgBuildColumn<"users_sync", import("../pg-core/index.js").PgTimestampStringBuilder, {
109
103
  name: string;
110
104
  tableName: "users_sync";
111
105
  dataType: "string timestamp";
@@ -117,10 +111,9 @@ export declare const usersSync: import("../pg-core/index.js").PgTableWithColumns
117
111
  isAutoincrement: false;
118
112
  hasRuntimeDefault: false;
119
113
  enumValues: undefined;
120
- baseColumn: never;
121
114
  identity: undefined;
122
115
  generated: undefined;
123
- }, {}>;
116
+ }>;
124
117
  };
125
118
  dialect: "pg";
126
119
  }>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drizzle-orm",
3
- "version": "1.0.0-beta.4-4605abe",
3
+ "version": "1.0.0-beta.4-332ec7b",
4
4
  "description": "Drizzle ORM package for SQL databases",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -5922,18 +5922,6 @@
5922
5922
  "types": "./pg-core/columns/custom.d.ts",
5923
5923
  "default": "./pg-core/columns/custom.js"
5924
5924
  },
5925
- "./pg-core/columns/date.common": {
5926
- "import": {
5927
- "types": "./pg-core/columns/date.common.d.ts",
5928
- "default": "./pg-core/columns/date.common.js"
5929
- },
5930
- "require": {
5931
- "types": "./pg-core/columns/date.common.d.cts",
5932
- "default": "./pg-core/columns/date.common.cjs"
5933
- },
5934
- "types": "./pg-core/columns/date.common.d.ts",
5935
- "default": "./pg-core/columns/date.common.js"
5936
- },
5937
5925
  "./pg-core/columns/date": {
5938
5926
  "import": {
5939
5927
  "types": "./pg-core/columns/date.d.ts",
@@ -5994,18 +5982,6 @@
5994
5982
  "types": "./pg-core/columns/inet.d.ts",
5995
5983
  "default": "./pg-core/columns/inet.js"
5996
5984
  },
5997
- "./pg-core/columns/int.common": {
5998
- "import": {
5999
- "types": "./pg-core/columns/int.common.d.ts",
6000
- "default": "./pg-core/columns/int.common.js"
6001
- },
6002
- "require": {
6003
- "types": "./pg-core/columns/int.common.d.cts",
6004
- "default": "./pg-core/columns/int.common.cjs"
6005
- },
6006
- "types": "./pg-core/columns/int.common.d.ts",
6007
- "default": "./pg-core/columns/int.common.js"
6008
- },
6009
5985
  "./pg-core/columns/integer": {
6010
5986
  "import": {
6011
5987
  "types": "./pg-core/columns/integer.d.ts",
@@ -30,8 +30,7 @@ module.exports = __toCommonJS(bigint_exports);
30
30
  var import_entity = require("../../entity.cjs");
31
31
  var import_utils = require("../../utils.cjs");
32
32
  var import_common = require("./common.cjs");
33
- var import_int_common = require("./int.common.cjs");
34
- class PgBigInt53Builder extends import_int_common.PgIntColumnBaseBuilder {
33
+ class PgBigInt53Builder extends import_common.PgColumnBuilder {
35
34
  static [import_entity.entityKind] = "PgBigInt53Builder";
36
35
  constructor(name) {
37
36
  super(name, "number int53", "PgBigInt53");
@@ -53,7 +52,7 @@ class PgBigInt53 extends import_common.PgColumn {
53
52
  return Number(value);
54
53
  }
55
54
  }
56
- class PgBigInt64Builder extends import_int_common.PgIntColumnBaseBuilder {
55
+ class PgBigInt64Builder extends import_common.PgColumnBuilder {
57
56
  static [import_entity.entityKind] = "PgBigInt64Builder";
58
57
  constructor(name) {
59
58
  super(name, "bigint int64", "PgBigInt64");
@@ -73,7 +72,7 @@ class PgBigInt64 extends import_common.PgColumn {
73
72
  return BigInt(value);
74
73
  }
75
74
  }
76
- class PgBigIntStringBuilder extends import_int_common.PgIntColumnBaseBuilder {
75
+ class PgBigIntStringBuilder extends import_common.PgColumnBuilder {
77
76
  static [import_entity.entityKind] = "PgBigIntStringBuilder";
78
77
  constructor(name) {
79
78
  super(name, "string int64", "PgBigIntString");
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/pg-core/columns/bigint.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport { getColumnNameAndConfig } from '~/utils.ts';\nimport { PgColumn } from './common.ts';\nimport { PgIntColumnBaseBuilder } from './int.common.ts';\n\nexport class PgBigInt53Builder extends PgIntColumnBaseBuilder<{\n\tdataType: 'number int53';\n\tdata: number;\n\tdriverParam: number | string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt53Builder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number int53', 'PgBigInt53');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigInt53(table, this.config as any);\n\t}\n}\n\nexport class PgBigInt53<T extends ColumnBaseConfig<'number int53'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt53';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\toverride mapFromDriverValue(value: number | string): number {\n\t\tif (typeof value === 'number') {\n\t\t\treturn value;\n\t\t}\n\t\treturn Number(value);\n\t}\n}\n\nexport class PgBigInt64Builder extends PgIntColumnBaseBuilder<{\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt64Builder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'PgBigInt64');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigInt64(table, this.config as any);\n\t}\n}\n\nexport class PgBigInt64<T extends ColumnBaseConfig<'bigint int64'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt64';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\toverride mapFromDriverValue(value: string): bigint {\n\t\treturn BigInt(value);\n\t}\n}\n\nexport class PgBigIntStringBuilder extends PgIntColumnBaseBuilder<{\n\tdataType: 'string int64';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigIntStringBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string int64', 'PgBigIntString');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigIntString(table, this.config as any);\n\t}\n}\n\nexport class PgBigIntString<T extends ColumnBaseConfig<'string int64'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigIntString';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\toverride mapFromDriverValue(value: string | number): string {\n\t\tif (typeof value === 'string') return value;\n\n\t\treturn String(value);\n\t}\n}\n\nexport interface PgBigIntConfig<T extends 'number' | 'bigint' | 'string' = 'number' | 'bigint' | 'string'> {\n\tmode: T;\n}\n\nexport function bigint<TMode extends PgBigIntConfig['mode']>(\n\tconfig: PgBigIntConfig<TMode>,\n): TMode extends 'string' ? PgBigIntStringBuilder : TMode extends 'bigint' ? PgBigInt64Builder : PgBigInt53Builder;\nexport function bigint<TMode extends PgBigIntConfig['mode']>(\n\tname: string,\n\tconfig: PgBigIntConfig<TMode>,\n): TMode extends 'string' ? PgBigIntStringBuilder : TMode extends 'bigint' ? PgBigInt64Builder : PgBigInt53Builder;\nexport function bigint(a: string | PgBigIntConfig, b?: PgBigIntConfig) {\n\tconst { name, config } = getColumnNameAndConfig<PgBigIntConfig>(a, b);\n\tif (config.mode === 'number') {\n\t\treturn new PgBigInt53Builder(name);\n\t}\n\tif (config.mode === 'string') {\n\t\treturn new PgBigIntStringBuilder(name);\n\t}\n\treturn new PgBigInt64Builder(name);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAuC;AACvC,oBAAyB;AACzB,wBAAuC;AAEhC,MAAM,0BAA0B,yCAIpC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,YAAY;AAAA,EACzC;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAA+D,uBAAY;AAAA,EACvF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,0BAA0B,yCAIpC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,YAAY;AAAA,EACzC;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAA+D,uBAAY;AAAA,EACvF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA;AAAA,EAGS,mBAAmB,OAAuB;AAClD,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,8BAA8B,yCAIxC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,gBAAgB;AAAA,EAC7C;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,eAAe,OAAO,KAAK,MAAa;AAAA,EACpD;AACD;AAEO,MAAM,uBAAmE,uBAAY;AAAA,EAC3F,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAaO,SAAS,OAAO,GAA4B,GAAoB;AACtE,QAAM,EAAE,MAAM,OAAO,QAAI,qCAAuC,GAAG,CAAC;AACpE,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,kBAAkB,IAAI;AAAA,EAClC;AACA,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,SAAO,IAAI,kBAAkB,IAAI;AAClC;","names":[]}
1
+ {"version":3,"sources":["../../../src/pg-core/columns/bigint.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport { getColumnNameAndConfig } from '~/utils.ts';\nimport { PgColumn, PgColumnBuilder } from './common.ts';\n\nexport class PgBigInt53Builder extends PgColumnBuilder<{\n\tdataType: 'number int53';\n\tdata: number;\n\tdriverParam: number | string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt53Builder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number int53', 'PgBigInt53');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigInt53(table, this.config as any);\n\t}\n}\n\nexport class PgBigInt53<T extends ColumnBaseConfig<'number int53'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt53';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\toverride mapFromDriverValue(value: number | string): number {\n\t\tif (typeof value === 'number') {\n\t\t\treturn value;\n\t\t}\n\t\treturn Number(value);\n\t}\n}\n\nexport class PgBigInt64Builder extends PgColumnBuilder<{\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt64Builder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'PgBigInt64');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigInt64(table, this.config as any);\n\t}\n}\n\nexport class PgBigInt64<T extends ColumnBaseConfig<'bigint int64'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt64';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\toverride mapFromDriverValue(value: string): bigint {\n\t\treturn BigInt(value);\n\t}\n}\n\nexport class PgBigIntStringBuilder extends PgColumnBuilder<{\n\tdataType: 'string int64';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigIntStringBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string int64', 'PgBigIntString');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigIntString(table, this.config as any);\n\t}\n}\n\nexport class PgBigIntString<T extends ColumnBaseConfig<'string int64'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigIntString';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\toverride mapFromDriverValue(value: string | number): string {\n\t\tif (typeof value === 'string') return value;\n\n\t\treturn String(value);\n\t}\n}\n\nexport interface PgBigIntConfig<T extends 'number' | 'bigint' | 'string' = 'number' | 'bigint' | 'string'> {\n\tmode: T;\n}\n\nexport function bigint<TMode extends PgBigIntConfig['mode']>(\n\tconfig: PgBigIntConfig<TMode>,\n): TMode extends 'string' ? PgBigIntStringBuilder : TMode extends 'bigint' ? PgBigInt64Builder : PgBigInt53Builder;\nexport function bigint<TMode extends PgBigIntConfig['mode']>(\n\tname: string,\n\tconfig: PgBigIntConfig<TMode>,\n): TMode extends 'string' ? PgBigIntStringBuilder : TMode extends 'bigint' ? PgBigInt64Builder : PgBigInt53Builder;\nexport function bigint(a: string | PgBigIntConfig, b?: PgBigIntConfig) {\n\tconst { name, config } = getColumnNameAndConfig<PgBigIntConfig>(a, b);\n\tif (config.mode === 'number') {\n\t\treturn new PgBigInt53Builder(name);\n\t}\n\tif (config.mode === 'string') {\n\t\treturn new PgBigIntStringBuilder(name);\n\t}\n\treturn new PgBigInt64Builder(name);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAuC;AACvC,oBAA0C;AAEnC,MAAM,0BAA0B,8BAIpC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,YAAY;AAAA,EACzC;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAA+D,uBAAY;AAAA,EACvF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,0BAA0B,8BAIpC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,YAAY;AAAA,EACzC;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAA+D,uBAAY;AAAA,EACvF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA;AAAA,EAGS,mBAAmB,OAAuB;AAClD,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,8BAA8B,8BAIxC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,gBAAgB;AAAA,EAC7C;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,eAAe,OAAO,KAAK,MAAa;AAAA,EACpD;AACD;AAEO,MAAM,uBAAmE,uBAAY;AAAA,EAC3F,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAaO,SAAS,OAAO,GAA4B,GAAoB;AACtE,QAAM,EAAE,MAAM,OAAO,QAAI,qCAAuC,GAAG,CAAC;AACpE,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,kBAAkB,IAAI;AAAA,EAClC;AACA,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,SAAO,IAAI,kBAAkB,IAAI;AAClC;","names":[]}
@@ -1,8 +1,7 @@
1
1
  import type { ColumnBaseConfig } from "../../column.cjs";
2
2
  import { entityKind } from "../../entity.cjs";
3
- import { PgColumn } from "./common.cjs";
4
- import { PgIntColumnBaseBuilder } from "./int.common.cjs";
5
- export declare class PgBigInt53Builder extends PgIntColumnBaseBuilder<{
3
+ import { PgColumn, PgColumnBuilder } from "./common.cjs";
4
+ export declare class PgBigInt53Builder extends PgColumnBuilder<{
6
5
  dataType: 'number int53';
7
6
  data: number;
8
7
  driverParam: number | string;
@@ -15,7 +14,7 @@ export declare class PgBigInt53<T extends ColumnBaseConfig<'number int53'>> exte
15
14
  getSQLType(): string;
16
15
  mapFromDriverValue(value: number | string): number;
17
16
  }
18
- export declare class PgBigInt64Builder extends PgIntColumnBaseBuilder<{
17
+ export declare class PgBigInt64Builder extends PgColumnBuilder<{
19
18
  dataType: 'bigint int64';
20
19
  data: bigint;
21
20
  driverParam: string;
@@ -28,7 +27,7 @@ export declare class PgBigInt64<T extends ColumnBaseConfig<'bigint int64'>> exte
28
27
  getSQLType(): string;
29
28
  mapFromDriverValue(value: string): bigint;
30
29
  }
31
- export declare class PgBigIntStringBuilder extends PgIntColumnBaseBuilder<{
30
+ export declare class PgBigIntStringBuilder extends PgColumnBuilder<{
32
31
  dataType: 'string int64';
33
32
  data: string;
34
33
  driverParam: string;
@@ -1,8 +1,7 @@
1
1
  import type { ColumnBaseConfig } from "../../column.js";
2
2
  import { entityKind } from "../../entity.js";
3
- import { PgColumn } from "./common.js";
4
- import { PgIntColumnBaseBuilder } from "./int.common.js";
5
- export declare class PgBigInt53Builder extends PgIntColumnBaseBuilder<{
3
+ import { PgColumn, PgColumnBuilder } from "./common.js";
4
+ export declare class PgBigInt53Builder extends PgColumnBuilder<{
6
5
  dataType: 'number int53';
7
6
  data: number;
8
7
  driverParam: number | string;
@@ -15,7 +14,7 @@ export declare class PgBigInt53<T extends ColumnBaseConfig<'number int53'>> exte
15
14
  getSQLType(): string;
16
15
  mapFromDriverValue(value: number | string): number;
17
16
  }
18
- export declare class PgBigInt64Builder extends PgIntColumnBaseBuilder<{
17
+ export declare class PgBigInt64Builder extends PgColumnBuilder<{
19
18
  dataType: 'bigint int64';
20
19
  data: bigint;
21
20
  driverParam: string;
@@ -28,7 +27,7 @@ export declare class PgBigInt64<T extends ColumnBaseConfig<'bigint int64'>> exte
28
27
  getSQLType(): string;
29
28
  mapFromDriverValue(value: string): bigint;
30
29
  }
31
- export declare class PgBigIntStringBuilder extends PgIntColumnBaseBuilder<{
30
+ export declare class PgBigIntStringBuilder extends PgColumnBuilder<{
32
31
  dataType: 'string int64';
33
32
  data: string;
34
33
  driverParam: string;
@@ -1,8 +1,7 @@
1
1
  import { entityKind } from "../../entity.js";
2
2
  import { getColumnNameAndConfig } from "../../utils.js";
3
- import { PgColumn } from "./common.js";
4
- import { PgIntColumnBaseBuilder } from "./int.common.js";
5
- class PgBigInt53Builder extends PgIntColumnBaseBuilder {
3
+ import { PgColumn, PgColumnBuilder } from "./common.js";
4
+ class PgBigInt53Builder extends PgColumnBuilder {
6
5
  static [entityKind] = "PgBigInt53Builder";
7
6
  constructor(name) {
8
7
  super(name, "number int53", "PgBigInt53");
@@ -24,7 +23,7 @@ class PgBigInt53 extends PgColumn {
24
23
  return Number(value);
25
24
  }
26
25
  }
27
- class PgBigInt64Builder extends PgIntColumnBaseBuilder {
26
+ class PgBigInt64Builder extends PgColumnBuilder {
28
27
  static [entityKind] = "PgBigInt64Builder";
29
28
  constructor(name) {
30
29
  super(name, "bigint int64", "PgBigInt64");
@@ -44,7 +43,7 @@ class PgBigInt64 extends PgColumn {
44
43
  return BigInt(value);
45
44
  }
46
45
  }
47
- class PgBigIntStringBuilder extends PgIntColumnBaseBuilder {
46
+ class PgBigIntStringBuilder extends PgColumnBuilder {
48
47
  static [entityKind] = "PgBigIntStringBuilder";
49
48
  constructor(name) {
50
49
  super(name, "string int64", "PgBigIntString");
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/pg-core/columns/bigint.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport { getColumnNameAndConfig } from '~/utils.ts';\nimport { PgColumn } from './common.ts';\nimport { PgIntColumnBaseBuilder } from './int.common.ts';\n\nexport class PgBigInt53Builder extends PgIntColumnBaseBuilder<{\n\tdataType: 'number int53';\n\tdata: number;\n\tdriverParam: number | string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt53Builder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number int53', 'PgBigInt53');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigInt53(table, this.config as any);\n\t}\n}\n\nexport class PgBigInt53<T extends ColumnBaseConfig<'number int53'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt53';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\toverride mapFromDriverValue(value: number | string): number {\n\t\tif (typeof value === 'number') {\n\t\t\treturn value;\n\t\t}\n\t\treturn Number(value);\n\t}\n}\n\nexport class PgBigInt64Builder extends PgIntColumnBaseBuilder<{\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt64Builder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'PgBigInt64');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigInt64(table, this.config as any);\n\t}\n}\n\nexport class PgBigInt64<T extends ColumnBaseConfig<'bigint int64'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt64';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\toverride mapFromDriverValue(value: string): bigint {\n\t\treturn BigInt(value);\n\t}\n}\n\nexport class PgBigIntStringBuilder extends PgIntColumnBaseBuilder<{\n\tdataType: 'string int64';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigIntStringBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string int64', 'PgBigIntString');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigIntString(table, this.config as any);\n\t}\n}\n\nexport class PgBigIntString<T extends ColumnBaseConfig<'string int64'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigIntString';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\toverride mapFromDriverValue(value: string | number): string {\n\t\tif (typeof value === 'string') return value;\n\n\t\treturn String(value);\n\t}\n}\n\nexport interface PgBigIntConfig<T extends 'number' | 'bigint' | 'string' = 'number' | 'bigint' | 'string'> {\n\tmode: T;\n}\n\nexport function bigint<TMode extends PgBigIntConfig['mode']>(\n\tconfig: PgBigIntConfig<TMode>,\n): TMode extends 'string' ? PgBigIntStringBuilder : TMode extends 'bigint' ? PgBigInt64Builder : PgBigInt53Builder;\nexport function bigint<TMode extends PgBigIntConfig['mode']>(\n\tname: string,\n\tconfig: PgBigIntConfig<TMode>,\n): TMode extends 'string' ? PgBigIntStringBuilder : TMode extends 'bigint' ? PgBigInt64Builder : PgBigInt53Builder;\nexport function bigint(a: string | PgBigIntConfig, b?: PgBigIntConfig) {\n\tconst { name, config } = getColumnNameAndConfig<PgBigIntConfig>(a, b);\n\tif (config.mode === 'number') {\n\t\treturn new PgBigInt53Builder(name);\n\t}\n\tif (config.mode === 'string') {\n\t\treturn new PgBigIntStringBuilder(name);\n\t}\n\treturn new PgBigInt64Builder(name);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,8BAA8B;AACvC,SAAS,gBAAgB;AACzB,SAAS,8BAA8B;AAEhC,MAAM,0BAA0B,uBAIpC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,YAAY;AAAA,EACzC;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAA+D,SAAY;AAAA,EACvF,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,0BAA0B,uBAIpC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,YAAY;AAAA,EACzC;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAA+D,SAAY;AAAA,EACvF,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA;AAAA,EAGS,mBAAmB,OAAuB;AAClD,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,8BAA8B,uBAIxC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,gBAAgB;AAAA,EAC7C;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,eAAe,OAAO,KAAK,MAAa;AAAA,EACpD;AACD;AAEO,MAAM,uBAAmE,SAAY;AAAA,EAC3F,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAaO,SAAS,OAAO,GAA4B,GAAoB;AACtE,QAAM,EAAE,MAAM,OAAO,IAAI,uBAAuC,GAAG,CAAC;AACpE,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,kBAAkB,IAAI;AAAA,EAClC;AACA,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,SAAO,IAAI,kBAAkB,IAAI;AAClC;","names":[]}
1
+ {"version":3,"sources":["../../../src/pg-core/columns/bigint.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { PgTable } from '~/pg-core/table.ts';\nimport { getColumnNameAndConfig } from '~/utils.ts';\nimport { PgColumn, PgColumnBuilder } from './common.ts';\n\nexport class PgBigInt53Builder extends PgColumnBuilder<{\n\tdataType: 'number int53';\n\tdata: number;\n\tdriverParam: number | string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt53Builder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'number int53', 'PgBigInt53');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigInt53(table, this.config as any);\n\t}\n}\n\nexport class PgBigInt53<T extends ColumnBaseConfig<'number int53'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt53';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\toverride mapFromDriverValue(value: number | string): number {\n\t\tif (typeof value === 'number') {\n\t\t\treturn value;\n\t\t}\n\t\treturn Number(value);\n\t}\n}\n\nexport class PgBigInt64Builder extends PgColumnBuilder<{\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt64Builder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'PgBigInt64');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigInt64(table, this.config as any);\n\t}\n}\n\nexport class PgBigInt64<T extends ColumnBaseConfig<'bigint int64'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigInt64';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\t// eslint-disable-next-line unicorn/prefer-native-coercion-functions\n\toverride mapFromDriverValue(value: string): bigint {\n\t\treturn BigInt(value);\n\t}\n}\n\nexport class PgBigIntStringBuilder extends PgColumnBuilder<{\n\tdataType: 'string int64';\n\tdata: string;\n\tdriverParam: string;\n}> {\n\tstatic override readonly [entityKind]: string = 'PgBigIntStringBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'string int64', 'PgBigIntString');\n\t}\n\n\t/** @internal */\n\toverride build(table: PgTable<any>) {\n\t\treturn new PgBigIntString(table, this.config as any);\n\t}\n}\n\nexport class PgBigIntString<T extends ColumnBaseConfig<'string int64'>> extends PgColumn<T> {\n\tstatic override readonly [entityKind]: string = 'PgBigIntString';\n\n\tgetSQLType(): string {\n\t\treturn 'bigint';\n\t}\n\n\toverride mapFromDriverValue(value: string | number): string {\n\t\tif (typeof value === 'string') return value;\n\n\t\treturn String(value);\n\t}\n}\n\nexport interface PgBigIntConfig<T extends 'number' | 'bigint' | 'string' = 'number' | 'bigint' | 'string'> {\n\tmode: T;\n}\n\nexport function bigint<TMode extends PgBigIntConfig['mode']>(\n\tconfig: PgBigIntConfig<TMode>,\n): TMode extends 'string' ? PgBigIntStringBuilder : TMode extends 'bigint' ? PgBigInt64Builder : PgBigInt53Builder;\nexport function bigint<TMode extends PgBigIntConfig['mode']>(\n\tname: string,\n\tconfig: PgBigIntConfig<TMode>,\n): TMode extends 'string' ? PgBigIntStringBuilder : TMode extends 'bigint' ? PgBigInt64Builder : PgBigInt53Builder;\nexport function bigint(a: string | PgBigIntConfig, b?: PgBigIntConfig) {\n\tconst { name, config } = getColumnNameAndConfig<PgBigIntConfig>(a, b);\n\tif (config.mode === 'number') {\n\t\treturn new PgBigInt53Builder(name);\n\t}\n\tif (config.mode === 'string') {\n\t\treturn new PgBigIntStringBuilder(name);\n\t}\n\treturn new PgBigInt64Builder(name);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAS,8BAA8B;AACvC,SAAS,UAAU,uBAAuB;AAEnC,MAAM,0BAA0B,gBAIpC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,YAAY;AAAA,EACzC;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAA+D,SAAY;AAAA,EACvF,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO;AAAA,IACR;AACA,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,0BAA0B,gBAIpC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,YAAY;AAAA,EACzC;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,WAAW,OAAO,KAAK,MAAa;AAAA,EAChD;AACD;AAEO,MAAM,mBAA+D,SAAY;AAAA,EACvF,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA;AAAA,EAGS,mBAAmB,OAAuB;AAClD,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAEO,MAAM,8BAA8B,gBAIxC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,gBAAgB;AAAA,EAC7C;AAAA;AAAA,EAGS,MAAM,OAAqB;AACnC,WAAO,IAAI,eAAe,OAAO,KAAK,MAAa;AAAA,EACpD;AACD;AAEO,MAAM,uBAAmE,SAAY;AAAA,EAC3F,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAgC;AAC3D,QAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,WAAO,OAAO,KAAK;AAAA,EACpB;AACD;AAaO,SAAS,OAAO,GAA4B,GAAoB;AACtE,QAAM,EAAE,MAAM,OAAO,IAAI,uBAAuC,GAAG,CAAC;AACpE,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,kBAAkB,IAAI;AAAA,EAClC;AACA,MAAI,OAAO,SAAS,UAAU;AAC7B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,SAAO,IAAI,kBAAkB,IAAI;AAClC;","names":[]}