@payloadcms/db-postgres 3.0.0-beta.2 → 3.0.0-beta.4
Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/schema/build.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EAEf,uBAAuB,EACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAM1C,OAAO,KAAK,EAAE,cAAc,EAAwB,eAAe,EAAE,MAAM,aAAa,CAAA;AAOxF,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,YAAY,GAAG,uBAAuB,CAAC,CAAA;IAClG,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;IACtB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,KAAK,MAAM,GAAG;IACZ,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAA;IACrC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAA;IACnC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,UAAU,wQAiBpB,IAAI,KAAG,
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/schema/build.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EAEf,uBAAuB,EACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAM1C,OAAO,KAAK,EAAE,cAAc,EAAwB,eAAe,EAAE,MAAM,aAAa,CAAA;AAOxF,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,YAAY,GAAG,uBAAuB,CAAC,CAAA;IAClG,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;IACtB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,KAAK,MAAM,GAAG;IACZ,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAA;IACrC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAA;IACnC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,UAAU,wQAiBpB,IAAI,KAAG,MA0UT,CAAA"}
|
package/dist/schema/build.js
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
/* eslint-disable no-param-reassign */ import { relations } from 'drizzle-orm';
|
2
2
|
import { index, integer, numeric, serial, timestamp, unique, varchar } from 'drizzle-orm/pg-core';
|
3
|
-
import { fieldAffectsData } from 'payload/types';
|
4
3
|
import { getTableName } from './getTableName.js';
|
5
4
|
import { parentIDColumnMap } from './parentIDColumnMap.js';
|
6
5
|
import { setColumnID } from './setColumnID.js';
|
@@ -201,9 +200,9 @@ export const buildTable = ({ adapter, baseColumns = {}, baseExtraConfig = {}, bu
|
|
201
200
|
throwValidationError: true
|
202
201
|
});
|
203
202
|
let colType = adapter.idType === 'uuid' ? 'uuid' : 'integer';
|
204
|
-
const
|
205
|
-
if (
|
206
|
-
if (
|
203
|
+
const relatedCollectionCustomIDType = adapter.payload.collections[relationshipConfig.slug]?.customIDType;
|
204
|
+
if (relatedCollectionCustomIDType === 'number') colType = 'numeric';
|
205
|
+
if (relatedCollectionCustomIDType === 'text') colType = 'varchar';
|
207
206
|
relationshipColumns[`${relationTo}ID`] = parentIDColumnMap[colType](`${formattedRelationTo}_id`).references(()=>adapter.tables[formattedRelationTo].id, {
|
208
207
|
onDelete: 'cascade'
|
209
208
|
});
|
package/dist/schema/build.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/schema/build.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport type { Relation } from 'drizzle-orm'\nimport type {\n IndexBuilder,\n PgColumnBuilder,\n PgTableWithColumns,\n UniqueConstraintBuilder,\n} from 'drizzle-orm/pg-core'\nimport type { Field } from 'payload/types'\n\nimport { relations } from 'drizzle-orm'\nimport { index, integer, numeric, serial, timestamp, unique, varchar } from 'drizzle-orm/pg-core'\nimport { fieldAffectsData } from 'payload/types'\n\nimport type { GenericColumns, GenericTable, IDType, PostgresAdapter } from '../types.js'\n\nimport { getTableName } from './getTableName.js'\nimport { parentIDColumnMap } from './parentIDColumnMap.js'\nimport { setColumnID } from './setColumnID.js'\nimport { traverseFields } from './traverseFields.js'\n\ntype Args = {\n adapter: PostgresAdapter\n baseColumns?: Record<string, PgColumnBuilder>\n baseExtraConfig?: Record<string, (cols: GenericColumns) => IndexBuilder | UniqueConstraintBuilder>\n buildNumbers?: boolean\n buildRelationships?: boolean\n buildTexts?: boolean\n disableNotNull: boolean\n disableUnique: boolean\n fields: Field[]\n rootRelationsToBuild?: Map<string, string>\n rootRelationships?: Set<string>\n rootTableIDColType?: string\n rootTableName?: string\n tableName: string\n timestamps?: boolean\n versions: boolean\n}\n\ntype Result = {\n hasManyNumberField: 'index' | boolean\n hasManyTextField: 'index' | boolean\n relationsToBuild: Map<string, string>\n}\n\nexport const buildTable = ({\n adapter,\n baseColumns = {},\n baseExtraConfig = {},\n buildNumbers,\n buildRelationships,\n buildTexts,\n disableNotNull,\n disableUnique = false,\n fields,\n rootRelationsToBuild,\n rootRelationships,\n rootTableIDColType,\n rootTableName: incomingRootTableName,\n tableName,\n timestamps,\n versions,\n}: Args): Result => {\n const rootTableName = incomingRootTableName || tableName\n const columns: Record<string, PgColumnBuilder> = baseColumns\n const indexes: Record<string, (cols: GenericColumns) => IndexBuilder> = {}\n\n let hasLocalizedField = false\n let hasLocalizedRelationshipField = false\n let hasManyTextField: 'index' | boolean = false\n let hasManyNumberField: 'index' | boolean = false\n let hasLocalizedManyTextField = false\n let hasLocalizedManyNumberField = false\n\n const localesColumns: Record<string, PgColumnBuilder> = {}\n const localesIndexes: Record<string, (cols: GenericColumns) => IndexBuilder> = {}\n let localesTable: GenericTable | PgTableWithColumns<any>\n let textsTable: GenericTable | PgTableWithColumns<any>\n let numbersTable: GenericTable | PgTableWithColumns<any>\n\n // Relationships to the base collection\n const relationships: Set<string> = rootRelationships || new Set()\n\n let relationshipsTable: GenericTable | PgTableWithColumns<any>\n\n // Drizzle relations\n const relationsToBuild: Map<string, string> = new Map()\n\n const idColType: IDType = setColumnID({ adapter, columns, fields })\n\n ;({\n hasLocalizedField,\n hasLocalizedManyNumberField,\n hasLocalizedManyTextField,\n hasLocalizedRelationshipField,\n hasManyNumberField,\n hasManyTextField,\n } = traverseFields({\n adapter,\n buildNumbers,\n buildRelationships,\n buildTexts,\n columns,\n disableNotNull,\n disableUnique,\n fields,\n indexes,\n localesColumns,\n localesIndexes,\n newTableName: tableName,\n parentTableName: tableName,\n relationsToBuild,\n relationships,\n rootRelationsToBuild: rootRelationsToBuild || relationsToBuild,\n rootTableIDColType: rootTableIDColType || idColType,\n rootTableName,\n versions,\n }))\n\n if (timestamps) {\n columns.createdAt = timestamp('created_at', {\n mode: 'string',\n precision: 3,\n withTimezone: true,\n })\n .defaultNow()\n .notNull()\n columns.updatedAt = timestamp('updated_at', {\n mode: 'string',\n precision: 3,\n withTimezone: true,\n })\n .defaultNow()\n .notNull()\n }\n\n const table = adapter.pgSchema.table(tableName, columns, (cols) => {\n const extraConfig = Object.entries(baseExtraConfig).reduce((config, [key, func]) => {\n config[key] = func(cols)\n return config\n }, {})\n\n return Object.entries(indexes).reduce((acc, [colName, func]) => {\n acc[colName] = func(cols)\n return acc\n }, extraConfig)\n })\n\n adapter.tables[tableName] = table\n\n if (hasLocalizedField) {\n const localeTableName = `${tableName}${adapter.localesSuffix}`\n localesColumns.id = serial('id').primaryKey()\n localesColumns._locale = adapter.enums.enum__locales('_locale').notNull()\n localesColumns._parentID = parentIDColumnMap[idColType]('_parent_id')\n .references(() => table.id, { onDelete: 'cascade' })\n .notNull()\n\n localesTable = adapter.pgSchema.table(localeTableName, localesColumns, (cols) => {\n return Object.entries(localesIndexes).reduce(\n (acc, [colName, func]) => {\n acc[colName] = func(cols)\n return acc\n },\n {\n _localeParent: unique(`${localeTableName}_locale_parent_id_unique`).on(\n cols._locale,\n cols._parentID,\n ),\n },\n )\n })\n\n adapter.tables[localeTableName] = localesTable\n\n const localesTableRelations = relations(localesTable, ({ one }) => ({\n _parentID: one(table, {\n fields: [localesTable._parentID],\n references: [table.id],\n }),\n }))\n\n adapter.relations[`relations_${localeTableName}`] = localesTableRelations\n }\n\n if (hasManyTextField && buildTexts) {\n const textsTableName = `${rootTableName}_texts`\n const columns: Record<string, PgColumnBuilder> = {\n id: serial('id').primaryKey(),\n order: integer('order').notNull(),\n parent: parentIDColumnMap[idColType]('parent_id')\n .references(() => table.id, { onDelete: 'cascade' })\n .notNull(),\n path: varchar('path').notNull(),\n text: varchar('text'),\n }\n\n if (hasLocalizedManyTextField) {\n columns.locale = adapter.enums.enum__locales('locale')\n }\n\n textsTable = adapter.pgSchema.table(textsTableName, columns, (cols) => {\n const indexes: Record<string, IndexBuilder> = {\n orderParentIdx: index(`${textsTableName}_order_parent_idx`).on(cols.order, cols.parent),\n }\n\n if (hasManyTextField === 'index') {\n indexes.text_idx = index(`${textsTableName}_text_idx`).on(cols.text)\n }\n\n if (hasLocalizedManyTextField) {\n indexes.localeParent = index(`${textsTableName}_locale_parent`).on(cols.locale, cols.parent)\n }\n\n return indexes\n })\n\n adapter.tables[textsTableName] = textsTable\n\n const textsTableRelations = relations(textsTable, ({ one }) => ({\n parent: one(table, {\n fields: [textsTable.parent],\n references: [table.id],\n }),\n }))\n\n adapter.relations[`relations_${textsTableName}`] = textsTableRelations\n }\n\n if (hasManyNumberField && buildNumbers) {\n const numbersTableName = `${rootTableName}_numbers`\n const columns: Record<string, PgColumnBuilder> = {\n id: serial('id').primaryKey(),\n number: numeric('number'),\n order: integer('order').notNull(),\n parent: parentIDColumnMap[idColType]('parent_id')\n .references(() => table.id, { onDelete: 'cascade' })\n .notNull(),\n path: varchar('path').notNull(),\n }\n\n if (hasLocalizedManyNumberField) {\n columns.locale = adapter.enums.enum__locales('locale')\n }\n\n numbersTable = adapter.pgSchema.table(numbersTableName, columns, (cols) => {\n const indexes: Record<string, IndexBuilder> = {\n orderParentIdx: index(`${numbersTableName}_order_parent_idx`).on(cols.order, cols.parent),\n }\n\n if (hasManyNumberField === 'index') {\n indexes.numberIdx = index(`${numbersTableName}_number_idx`).on(cols.number)\n }\n\n if (hasLocalizedManyNumberField) {\n indexes.localeParent = index(`${numbersTableName}_locale_parent`).on(\n cols.locale,\n cols.parent,\n )\n }\n\n return indexes\n })\n\n adapter.tables[numbersTableName] = numbersTable\n\n const numbersTableRelations = relations(numbersTable, ({ one }) => ({\n parent: one(table, {\n fields: [numbersTable.parent],\n references: [table.id],\n }),\n }))\n\n adapter.relations[`relations_${numbersTableName}`] = numbersTableRelations\n }\n\n if (buildRelationships) {\n if (relationships.size) {\n const relationshipColumns: Record<string, PgColumnBuilder> = {\n id: serial('id').primaryKey(),\n order: integer('order'),\n parent: parentIDColumnMap[idColType]('parent_id')\n .references(() => table.id, { onDelete: 'cascade' })\n .notNull(),\n path: varchar('path').notNull(),\n }\n\n if (hasLocalizedRelationshipField) {\n relationshipColumns.locale = adapter.enums.enum__locales('locale')\n }\n\n relationships.forEach((relationTo) => {\n const relationshipConfig = adapter.payload.collections[relationTo].config\n const formattedRelationTo = getTableName({\n adapter,\n config: relationshipConfig,\n throwValidationError: true,\n })\n let colType = adapter.idType === 'uuid' ? 'uuid' : 'integer'\n const relatedCollectionCustomID = relationshipConfig.fields.find(\n (field) => fieldAffectsData(field) && field.name === 'id',\n )\n if (relatedCollectionCustomID?.type === 'number') colType = 'numeric'\n if (relatedCollectionCustomID?.type === 'text') colType = 'varchar'\n\n relationshipColumns[`${relationTo}ID`] = parentIDColumnMap[colType](\n `${formattedRelationTo}_id`,\n ).references(() => adapter.tables[formattedRelationTo].id, { onDelete: 'cascade' })\n })\n\n const relationshipsTableName = `${tableName}${adapter.relationshipsSuffix}`\n\n relationshipsTable = adapter.pgSchema.table(\n relationshipsTableName,\n relationshipColumns,\n (cols) => {\n const result: Record<string, unknown> = {\n order: index(`${relationshipsTableName}_order_idx`).on(cols.order),\n parentIdx: index(`${relationshipsTableName}_parent_idx`).on(cols.parent),\n pathIdx: index(`${relationshipsTableName}_path_idx`).on(cols.path),\n }\n\n if (hasLocalizedRelationshipField) {\n result.localeIdx = index(`${relationshipsTableName}_locale_idx`).on(cols.locale)\n }\n\n return result\n },\n )\n\n adapter.tables[relationshipsTableName] = relationshipsTable\n\n const relationshipsTableRelations = relations(relationshipsTable, ({ one }) => {\n const result: Record<string, Relation<string>> = {\n parent: one(table, {\n fields: [relationshipsTable.parent],\n references: [table.id],\n relationName: '_rels',\n }),\n }\n\n relationships.forEach((relationTo) => {\n const relatedTableName = getTableName({\n adapter,\n config: adapter.payload.collections[relationTo].config,\n throwValidationError: true,\n })\n const idColumnName = `${relationTo}ID`\n result[idColumnName] = one(adapter.tables[relatedTableName], {\n fields: [relationshipsTable[idColumnName]],\n references: [adapter.tables[relatedTableName].id],\n })\n })\n\n return result\n })\n\n adapter.relations[`relations_${relationshipsTableName}`] = relationshipsTableRelations\n }\n }\n\n const tableRelations = relations(table, ({ many }) => {\n const result: Record<string, Relation<string>> = {}\n\n relationsToBuild.forEach((val, key) => {\n result[key] = many(adapter.tables[val])\n })\n\n if (hasLocalizedField) {\n result._locales = many(localesTable)\n }\n\n if (hasManyTextField) {\n result._texts = many(textsTable)\n }\n if (hasManyNumberField) {\n result._numbers = many(numbersTable)\n }\n\n if (relationships.size && relationshipsTable) {\n result._rels = many(relationshipsTable, {\n relationName: '_rels',\n })\n }\n\n return result\n })\n\n adapter.relations[`relations_${tableName}`] = tableRelations\n\n return { hasManyNumberField, hasManyTextField, relationsToBuild }\n}\n"],"names":["relations","index","integer","numeric","serial","timestamp","unique","varchar","fieldAffectsData","getTableName","parentIDColumnMap","setColumnID","traverseFields","buildTable","adapter","baseColumns","baseExtraConfig","buildNumbers","buildRelationships","buildTexts","disableNotNull","disableUnique","fields","rootRelationsToBuild","rootRelationships","rootTableIDColType","rootTableName","incomingRootTableName","tableName","timestamps","versions","columns","indexes","hasLocalizedField","hasLocalizedRelationshipField","hasManyTextField","hasManyNumberField","hasLocalizedManyTextField","hasLocalizedManyNumberField","localesColumns","localesIndexes","localesTable","textsTable","numbersTable","relationships","Set","relationshipsTable","relationsToBuild","Map","idColType","newTableName","parentTableName","createdAt","mode","precision","withTimezone","defaultNow","notNull","updatedAt","table","pgSchema","cols","extraConfig","Object","entries","reduce","config","key","func","acc","colName","tables","localeTableName","localesSuffix","id","primaryKey","_locale","enums","enum__locales","_parentID","references","onDelete","_localeParent","on","localesTableRelations","one","textsTableName","order","parent","path","text","locale","orderParentIdx","text_idx","localeParent","textsTableRelations","numbersTableName","number","numberIdx","numbersTableRelations","size","relationshipColumns","forEach","relationTo","relationshipConfig","payload","collections","formattedRelationTo","throwValidationError","colType","idType","relatedCollectionCustomID","find","field","name","type","relationshipsTableName","relationshipsSuffix","result","parentIdx","pathIdx","localeIdx","relationshipsTableRelations","relationName","relatedTableName","idColumnName","tableRelations","many","val","_locales","_texts","_numbers","_rels"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
1
|
+
{"version":3,"sources":["../../src/schema/build.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport type { Relation } from 'drizzle-orm'\nimport type {\n IndexBuilder,\n PgColumnBuilder,\n PgTableWithColumns,\n UniqueConstraintBuilder,\n} from 'drizzle-orm/pg-core'\nimport type { Field } from 'payload/types'\n\nimport { relations } from 'drizzle-orm'\nimport { index, integer, numeric, serial, timestamp, unique, varchar } from 'drizzle-orm/pg-core'\nimport { fieldAffectsData } from 'payload/types'\n\nimport type { GenericColumns, GenericTable, IDType, PostgresAdapter } from '../types.js'\n\nimport { getTableName } from './getTableName.js'\nimport { parentIDColumnMap } from './parentIDColumnMap.js'\nimport { setColumnID } from './setColumnID.js'\nimport { traverseFields } from './traverseFields.js'\n\ntype Args = {\n adapter: PostgresAdapter\n baseColumns?: Record<string, PgColumnBuilder>\n baseExtraConfig?: Record<string, (cols: GenericColumns) => IndexBuilder | UniqueConstraintBuilder>\n buildNumbers?: boolean\n buildRelationships?: boolean\n buildTexts?: boolean\n disableNotNull: boolean\n disableUnique: boolean\n fields: Field[]\n rootRelationsToBuild?: Map<string, string>\n rootRelationships?: Set<string>\n rootTableIDColType?: string\n rootTableName?: string\n tableName: string\n timestamps?: boolean\n versions: boolean\n}\n\ntype Result = {\n hasManyNumberField: 'index' | boolean\n hasManyTextField: 'index' | boolean\n relationsToBuild: Map<string, string>\n}\n\nexport const buildTable = ({\n adapter,\n baseColumns = {},\n baseExtraConfig = {},\n buildNumbers,\n buildRelationships,\n buildTexts,\n disableNotNull,\n disableUnique = false,\n fields,\n rootRelationsToBuild,\n rootRelationships,\n rootTableIDColType,\n rootTableName: incomingRootTableName,\n tableName,\n timestamps,\n versions,\n}: Args): Result => {\n const rootTableName = incomingRootTableName || tableName\n const columns: Record<string, PgColumnBuilder> = baseColumns\n const indexes: Record<string, (cols: GenericColumns) => IndexBuilder> = {}\n\n let hasLocalizedField = false\n let hasLocalizedRelationshipField = false\n let hasManyTextField: 'index' | boolean = false\n let hasManyNumberField: 'index' | boolean = false\n let hasLocalizedManyTextField = false\n let hasLocalizedManyNumberField = false\n\n const localesColumns: Record<string, PgColumnBuilder> = {}\n const localesIndexes: Record<string, (cols: GenericColumns) => IndexBuilder> = {}\n let localesTable: GenericTable | PgTableWithColumns<any>\n let textsTable: GenericTable | PgTableWithColumns<any>\n let numbersTable: GenericTable | PgTableWithColumns<any>\n\n // Relationships to the base collection\n const relationships: Set<string> = rootRelationships || new Set()\n\n let relationshipsTable: GenericTable | PgTableWithColumns<any>\n\n // Drizzle relations\n const relationsToBuild: Map<string, string> = new Map()\n\n const idColType: IDType = setColumnID({ adapter, columns, fields })\n\n ;({\n hasLocalizedField,\n hasLocalizedManyNumberField,\n hasLocalizedManyTextField,\n hasLocalizedRelationshipField,\n hasManyNumberField,\n hasManyTextField,\n } = traverseFields({\n adapter,\n buildNumbers,\n buildRelationships,\n buildTexts,\n columns,\n disableNotNull,\n disableUnique,\n fields,\n indexes,\n localesColumns,\n localesIndexes,\n newTableName: tableName,\n parentTableName: tableName,\n relationsToBuild,\n relationships,\n rootRelationsToBuild: rootRelationsToBuild || relationsToBuild,\n rootTableIDColType: rootTableIDColType || idColType,\n rootTableName,\n versions,\n }))\n\n if (timestamps) {\n columns.createdAt = timestamp('created_at', {\n mode: 'string',\n precision: 3,\n withTimezone: true,\n })\n .defaultNow()\n .notNull()\n columns.updatedAt = timestamp('updated_at', {\n mode: 'string',\n precision: 3,\n withTimezone: true,\n })\n .defaultNow()\n .notNull()\n }\n\n const table = adapter.pgSchema.table(tableName, columns, (cols) => {\n const extraConfig = Object.entries(baseExtraConfig).reduce((config, [key, func]) => {\n config[key] = func(cols)\n return config\n }, {})\n\n return Object.entries(indexes).reduce((acc, [colName, func]) => {\n acc[colName] = func(cols)\n return acc\n }, extraConfig)\n })\n\n adapter.tables[tableName] = table\n\n if (hasLocalizedField) {\n const localeTableName = `${tableName}${adapter.localesSuffix}`\n localesColumns.id = serial('id').primaryKey()\n localesColumns._locale = adapter.enums.enum__locales('_locale').notNull()\n localesColumns._parentID = parentIDColumnMap[idColType]('_parent_id')\n .references(() => table.id, { onDelete: 'cascade' })\n .notNull()\n\n localesTable = adapter.pgSchema.table(localeTableName, localesColumns, (cols) => {\n return Object.entries(localesIndexes).reduce(\n (acc, [colName, func]) => {\n acc[colName] = func(cols)\n return acc\n },\n {\n _localeParent: unique(`${localeTableName}_locale_parent_id_unique`).on(\n cols._locale,\n cols._parentID,\n ),\n },\n )\n })\n\n adapter.tables[localeTableName] = localesTable\n\n const localesTableRelations = relations(localesTable, ({ one }) => ({\n _parentID: one(table, {\n fields: [localesTable._parentID],\n references: [table.id],\n }),\n }))\n\n adapter.relations[`relations_${localeTableName}`] = localesTableRelations\n }\n\n if (hasManyTextField && buildTexts) {\n const textsTableName = `${rootTableName}_texts`\n const columns: Record<string, PgColumnBuilder> = {\n id: serial('id').primaryKey(),\n order: integer('order').notNull(),\n parent: parentIDColumnMap[idColType]('parent_id')\n .references(() => table.id, { onDelete: 'cascade' })\n .notNull(),\n path: varchar('path').notNull(),\n text: varchar('text'),\n }\n\n if (hasLocalizedManyTextField) {\n columns.locale = adapter.enums.enum__locales('locale')\n }\n\n textsTable = adapter.pgSchema.table(textsTableName, columns, (cols) => {\n const indexes: Record<string, IndexBuilder> = {\n orderParentIdx: index(`${textsTableName}_order_parent_idx`).on(cols.order, cols.parent),\n }\n\n if (hasManyTextField === 'index') {\n indexes.text_idx = index(`${textsTableName}_text_idx`).on(cols.text)\n }\n\n if (hasLocalizedManyTextField) {\n indexes.localeParent = index(`${textsTableName}_locale_parent`).on(cols.locale, cols.parent)\n }\n\n return indexes\n })\n\n adapter.tables[textsTableName] = textsTable\n\n const textsTableRelations = relations(textsTable, ({ one }) => ({\n parent: one(table, {\n fields: [textsTable.parent],\n references: [table.id],\n }),\n }))\n\n adapter.relations[`relations_${textsTableName}`] = textsTableRelations\n }\n\n if (hasManyNumberField && buildNumbers) {\n const numbersTableName = `${rootTableName}_numbers`\n const columns: Record<string, PgColumnBuilder> = {\n id: serial('id').primaryKey(),\n number: numeric('number'),\n order: integer('order').notNull(),\n parent: parentIDColumnMap[idColType]('parent_id')\n .references(() => table.id, { onDelete: 'cascade' })\n .notNull(),\n path: varchar('path').notNull(),\n }\n\n if (hasLocalizedManyNumberField) {\n columns.locale = adapter.enums.enum__locales('locale')\n }\n\n numbersTable = adapter.pgSchema.table(numbersTableName, columns, (cols) => {\n const indexes: Record<string, IndexBuilder> = {\n orderParentIdx: index(`${numbersTableName}_order_parent_idx`).on(cols.order, cols.parent),\n }\n\n if (hasManyNumberField === 'index') {\n indexes.numberIdx = index(`${numbersTableName}_number_idx`).on(cols.number)\n }\n\n if (hasLocalizedManyNumberField) {\n indexes.localeParent = index(`${numbersTableName}_locale_parent`).on(\n cols.locale,\n cols.parent,\n )\n }\n\n return indexes\n })\n\n adapter.tables[numbersTableName] = numbersTable\n\n const numbersTableRelations = relations(numbersTable, ({ one }) => ({\n parent: one(table, {\n fields: [numbersTable.parent],\n references: [table.id],\n }),\n }))\n\n adapter.relations[`relations_${numbersTableName}`] = numbersTableRelations\n }\n\n if (buildRelationships) {\n if (relationships.size) {\n const relationshipColumns: Record<string, PgColumnBuilder> = {\n id: serial('id').primaryKey(),\n order: integer('order'),\n parent: parentIDColumnMap[idColType]('parent_id')\n .references(() => table.id, { onDelete: 'cascade' })\n .notNull(),\n path: varchar('path').notNull(),\n }\n\n if (hasLocalizedRelationshipField) {\n relationshipColumns.locale = adapter.enums.enum__locales('locale')\n }\n\n relationships.forEach((relationTo) => {\n const relationshipConfig = adapter.payload.collections[relationTo].config\n const formattedRelationTo = getTableName({\n adapter,\n config: relationshipConfig,\n throwValidationError: true,\n })\n let colType = adapter.idType === 'uuid' ? 'uuid' : 'integer'\n\n const relatedCollectionCustomIDType =\n adapter.payload.collections[relationshipConfig.slug]?.customIDType\n\n if (relatedCollectionCustomIDType === 'number') colType = 'numeric'\n if (relatedCollectionCustomIDType === 'text') colType = 'varchar'\n\n relationshipColumns[`${relationTo}ID`] = parentIDColumnMap[colType](\n `${formattedRelationTo}_id`,\n ).references(() => adapter.tables[formattedRelationTo].id, { onDelete: 'cascade' })\n })\n\n const relationshipsTableName = `${tableName}${adapter.relationshipsSuffix}`\n\n relationshipsTable = adapter.pgSchema.table(\n relationshipsTableName,\n relationshipColumns,\n (cols) => {\n const result: Record<string, unknown> = {\n order: index(`${relationshipsTableName}_order_idx`).on(cols.order),\n parentIdx: index(`${relationshipsTableName}_parent_idx`).on(cols.parent),\n pathIdx: index(`${relationshipsTableName}_path_idx`).on(cols.path),\n }\n\n if (hasLocalizedRelationshipField) {\n result.localeIdx = index(`${relationshipsTableName}_locale_idx`).on(cols.locale)\n }\n\n return result\n },\n )\n\n adapter.tables[relationshipsTableName] = relationshipsTable\n\n const relationshipsTableRelations = relations(relationshipsTable, ({ one }) => {\n const result: Record<string, Relation<string>> = {\n parent: one(table, {\n fields: [relationshipsTable.parent],\n references: [table.id],\n relationName: '_rels',\n }),\n }\n\n relationships.forEach((relationTo) => {\n const relatedTableName = getTableName({\n adapter,\n config: adapter.payload.collections[relationTo].config,\n throwValidationError: true,\n })\n const idColumnName = `${relationTo}ID`\n result[idColumnName] = one(adapter.tables[relatedTableName], {\n fields: [relationshipsTable[idColumnName]],\n references: [adapter.tables[relatedTableName].id],\n })\n })\n\n return result\n })\n\n adapter.relations[`relations_${relationshipsTableName}`] = relationshipsTableRelations\n }\n }\n\n const tableRelations = relations(table, ({ many }) => {\n const result: Record<string, Relation<string>> = {}\n\n relationsToBuild.forEach((val, key) => {\n result[key] = many(adapter.tables[val])\n })\n\n if (hasLocalizedField) {\n result._locales = many(localesTable)\n }\n\n if (hasManyTextField) {\n result._texts = many(textsTable)\n }\n if (hasManyNumberField) {\n result._numbers = many(numbersTable)\n }\n\n if (relationships.size && relationshipsTable) {\n result._rels = many(relationshipsTable, {\n relationName: '_rels',\n })\n }\n\n return result\n })\n\n adapter.relations[`relations_${tableName}`] = tableRelations\n\n return { hasManyNumberField, hasManyTextField, relationsToBuild }\n}\n"],"names":["relations","index","integer","numeric","serial","timestamp","unique","varchar","getTableName","parentIDColumnMap","setColumnID","traverseFields","buildTable","adapter","baseColumns","baseExtraConfig","buildNumbers","buildRelationships","buildTexts","disableNotNull","disableUnique","fields","rootRelationsToBuild","rootRelationships","rootTableIDColType","rootTableName","incomingRootTableName","tableName","timestamps","versions","columns","indexes","hasLocalizedField","hasLocalizedRelationshipField","hasManyTextField","hasManyNumberField","hasLocalizedManyTextField","hasLocalizedManyNumberField","localesColumns","localesIndexes","localesTable","textsTable","numbersTable","relationships","Set","relationshipsTable","relationsToBuild","Map","idColType","newTableName","parentTableName","createdAt","mode","precision","withTimezone","defaultNow","notNull","updatedAt","table","pgSchema","cols","extraConfig","Object","entries","reduce","config","key","func","acc","colName","tables","localeTableName","localesSuffix","id","primaryKey","_locale","enums","enum__locales","_parentID","references","onDelete","_localeParent","on","localesTableRelations","one","textsTableName","order","parent","path","text","locale","orderParentIdx","text_idx","localeParent","textsTableRelations","numbersTableName","number","numberIdx","numbersTableRelations","size","relationshipColumns","forEach","relationTo","relationshipConfig","payload","collections","formattedRelationTo","throwValidationError","colType","idType","relatedCollectionCustomIDType","slug","customIDType","relationshipsTableName","relationshipsSuffix","result","parentIdx","pathIdx","localeIdx","relationshipsTableRelations","relationName","relatedTableName","idColumnName","tableRelations","many","val","_locales","_texts","_numbers","_rels"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@payloadcms/db-postgres",
|
3
|
-
"version": "3.0.0-beta.
|
3
|
+
"version": "3.0.0-beta.4",
|
4
4
|
"description": "The officially supported Postgres database adapter for Payload",
|
5
5
|
"repository": {
|
6
6
|
"type": "git",
|
@@ -30,11 +30,11 @@
|
|
30
30
|
"devDependencies": {
|
31
31
|
"@types/pg": "8.10.2",
|
32
32
|
"@types/to-snake-case": "1.0.0",
|
33
|
-
"
|
34
|
-
"
|
33
|
+
"@payloadcms/eslint-config": "1.1.1",
|
34
|
+
"payload": "3.0.0-beta.4"
|
35
35
|
},
|
36
36
|
"peerDependencies": {
|
37
|
-
"payload": "3.0.0-beta.
|
37
|
+
"payload": "3.0.0-beta.4"
|
38
38
|
},
|
39
39
|
"exports": {
|
40
40
|
".": {
|