@payloadcms/db-postgres 0.5.2 → 0.7.0

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 (42) hide show
  1. package/dist/connect.d.ts.map +1 -1
  2. package/dist/connect.js +48 -8
  3. package/dist/find/traverseFields.js +2 -2
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +8 -2
  6. package/dist/init.d.ts.map +1 -1
  7. package/dist/init.js +12 -7
  8. package/dist/migrate.js +2 -2
  9. package/dist/migrateFresh.d.ts.map +1 -1
  10. package/dist/migrateFresh.js +3 -3
  11. package/dist/queries/buildQuery.d.ts +2 -1
  12. package/dist/queries/buildQuery.d.ts.map +1 -1
  13. package/dist/queries/buildQuery.js +3 -2
  14. package/dist/queries/getTableColumnFromPath.d.ts +9 -4
  15. package/dist/queries/getTableColumnFromPath.d.ts.map +1 -1
  16. package/dist/queries/getTableColumnFromPath.js +40 -13
  17. package/dist/queries/parseParams.d.ts.map +1 -1
  18. package/dist/queries/parseParams.js +6 -8
  19. package/dist/queries/sanitizeQueryValue.d.ts +3 -1
  20. package/dist/queries/sanitizeQueryValue.d.ts.map +1 -1
  21. package/dist/queries/sanitizeQueryValue.js +5 -3
  22. package/dist/schema/build.d.ts.map +1 -1
  23. package/dist/schema/build.js +13 -15
  24. package/dist/schema/parentIDColumnMap.d.ts +3 -6
  25. package/dist/schema/parentIDColumnMap.d.ts.map +1 -1
  26. package/dist/schema/parentIDColumnMap.js +2 -1
  27. package/dist/schema/setColumnID.d.ts +11 -0
  28. package/dist/schema/setColumnID.d.ts.map +1 -0
  29. package/dist/schema/setColumnID.js +34 -0
  30. package/dist/schema/traverseFields.d.ts.map +1 -1
  31. package/dist/schema/traverseFields.js +2 -1
  32. package/dist/types.d.ts +11 -2
  33. package/dist/types.d.ts.map +1 -1
  34. package/dist/upsertRow/insertArrays.d.ts.map +1 -1
  35. package/dist/upsertRow/insertArrays.js +19 -5
  36. package/dist/utilities/createMigrationTable.d.ts +2 -2
  37. package/dist/utilities/createMigrationTable.d.ts.map +1 -1
  38. package/dist/utilities/createMigrationTable.js +5 -4
  39. package/package.json +3 -3
  40. package/dist/schema/getConfigIDType.d.ts +0 -3
  41. package/dist/schema/getConfigIDType.d.ts.map +0 -1
  42. package/dist/schema/getConfigIDType.js +0 -25
package/dist/types.d.ts CHANGED
@@ -1,16 +1,19 @@
1
1
  import type { ColumnBaseConfig, ColumnDataType, DrizzleConfig, ExtractTablesWithRelations, Relation, Relations } from 'drizzle-orm';
2
2
  import type { NodePgDatabase, NodePgQueryResultHKT } from 'drizzle-orm/node-postgres';
3
- import type { PgColumn, PgEnum, PgTableWithColumns, PgTransaction } from 'drizzle-orm/pg-core';
3
+ import type { PgColumn, PgEnum, PgSchema, PgTableWithColumns, PgTransaction } from 'drizzle-orm/pg-core';
4
+ import type { PgTableFn } from 'drizzle-orm/pg-core/table';
4
5
  import type { Payload } from 'payload';
5
6
  import type { BaseDatabaseAdapter } from 'payload/database';
6
7
  import type { PayloadRequest } from 'payload/types';
7
8
  import type { Pool, PoolConfig } from 'pg';
8
9
  export type DrizzleDB = NodePgDatabase<Record<string, unknown>>;
9
10
  export type Args = {
11
+ idType?: 'serial' | 'uuid';
10
12
  logger?: DrizzleConfig['logger'];
11
13
  migrationDir?: string;
12
14
  pool: PoolConfig;
13
15
  push?: boolean;
16
+ schemaName?: string;
14
17
  };
15
18
  export type GenericColumn = PgColumn<ColumnBaseConfig<ColumnDataType, string>, Record<string, unknown>>;
16
19
  export type GenericColumns = {
@@ -33,12 +36,17 @@ export type PostgresAdapter = BaseDatabaseAdapter & {
33
36
  * Used for returning properly formed errors from unique fields
34
37
  */
35
38
  fieldConstraints: Record<string, Record<string, string>>;
39
+ idType: Args['idType'];
36
40
  logger: DrizzleConfig['logger'];
41
+ pgSchema?: {
42
+ table: PgTableFn;
43
+ } | PgSchema;
37
44
  pool: Pool;
38
45
  poolOptions: Args['pool'];
39
46
  push: boolean;
40
47
  relations: Record<string, GenericRelation>;
41
48
  schema: Record<string, GenericEnum | GenericRelation | GenericTable>;
49
+ schemaName?: Args['schemaName'];
42
50
  sessions: {
43
51
  [id: string]: {
44
52
  db: DrizzleTransaction;
@@ -46,8 +54,9 @@ export type PostgresAdapter = BaseDatabaseAdapter & {
46
54
  resolve: () => Promise<void>;
47
55
  };
48
56
  };
49
- tables: Record<string, GenericTable>;
57
+ tables: Record<string, GenericTable | PgTableWithColumns<any>>;
50
58
  };
59
+ export type IDType = 'integer' | 'numeric' | 'uuid' | 'varchar';
51
60
  export type PostgresAdapterResult = (args: {
52
61
  payload: Payload;
53
62
  }) => PostgresAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"insertArrays.d.ts","sourceRoot":"","sources":["../../src/upsertRow/insertArrays.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE1D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,MAAM,EAAE;QACN,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;KACxC,EAAE,CAAA;IACH,EAAE,EAAE,SAAS,CAAA;IACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;CACtC,CAAA;AAYD,eAAO,MAAM,YAAY,wCAA+C,IAAI,KAAG,QAAQ,IAAI,CA2D1F,CAAA"}
1
+ {"version":3,"file":"insertArrays.d.ts","sourceRoot":"","sources":["../../src/upsertRow/insertArrays.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE1D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,MAAM,EAAE;QACN,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;KACxC,EAAE,CAAA;IACH,EAAE,EAAE,SAAS,CAAA;IACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;CACtC,CAAA;AAYD,eAAO,MAAM,YAAY,wCAA+C,IAAI,KAAG,QAAQ,IAAI,CAyE1F,CAAA"}
@@ -21,10 +21,10 @@ const insertArrays = async ({ adapter, arrays, db, parentRows })=>{
21
21
  rows: []
22
22
  };
23
23
  }
24
- const parentID = parentRows[parentRowIndex].id || parentRows[parentRowIndex]._parentID;
24
+ const parentID = parentRows[parentRowIndex].id;
25
25
  // Add any sub arrays that need to be created
26
26
  // We will call this recursively below
27
- arrayRows.forEach((arrayRow)=>{
27
+ arrayRows.forEach((arrayRow, i)=>{
28
28
  if (Object.keys(arrayRow.arrays).length > 0) {
29
29
  rowsByTable[tableName].arrays.push(arrayRow.arrays);
30
30
  }
@@ -35,6 +35,9 @@ const insertArrays = async ({ adapter, arrays, db, parentRows })=>{
35
35
  arrayRowLocaleData._parentID = arrayRow.row.id;
36
36
  arrayRowLocaleData._locale = arrayRowLocale;
37
37
  rowsByTable[tableName].locales.push(arrayRowLocaleData);
38
+ if (!arrayRow.row.id) {
39
+ arrayRowLocaleData._getParentID = (rows)=>rows[i].id;
40
+ }
38
41
  });
39
42
  });
40
43
  });
@@ -42,11 +45,22 @@ const insertArrays = async ({ adapter, arrays, db, parentRows })=>{
42
45
  // Insert all corresponding arrays
43
46
  // (one insert per array table)
44
47
  for (const [tableName, row] of Object.entries(rowsByTable)){
48
+ // the nested arrays need the ID for the parentID foreign key
49
+ let insertedRows;
45
50
  if (row.rows.length > 0) {
46
- await db.insert(adapter.tables[tableName]).values(row.rows).returning();
51
+ insertedRows = await db.insert(adapter.tables[tableName]).values(row.rows).returning();
47
52
  }
48
53
  // Insert locale rows
49
54
  if (adapter.tables[`${tableName}_locales`] && row.locales.length > 0) {
55
+ if (!row.locales[0]._parentID) {
56
+ row.locales = row.locales.map((localeRow, i)=>{
57
+ if (typeof localeRow._getParentID === 'function') {
58
+ localeRow._parentID = localeRow._getParentID(insertedRows);
59
+ delete localeRow._getParentID;
60
+ }
61
+ return localeRow;
62
+ });
63
+ }
50
64
  await db.insert(adapter.tables[`${tableName}_locales`]).values(row.locales).returning();
51
65
  }
52
66
  // If there are sub arrays, call this function recursively
@@ -55,10 +69,10 @@ const insertArrays = async ({ adapter, arrays, db, parentRows })=>{
55
69
  adapter,
56
70
  arrays: row.arrays,
57
71
  db,
58
- parentRows: row.rows
72
+ parentRows: insertedRows
59
73
  });
60
74
  }
61
75
  }
62
76
  };
63
77
 
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91cHNlcnRSb3cvaW5zZXJ0QXJyYXlzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXBhcmFtLXJlYXNzaWduICovXG5pbXBvcnQgdHlwZSB7IEFycmF5Um93VG9JbnNlcnQgfSBmcm9tICcuLi90cmFuc2Zvcm0vd3JpdGUvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IERyaXp6bGVEQiwgUG9zdGdyZXNBZGFwdGVyIH0gZnJvbSAnLi4vdHlwZXMnXG5cbnR5cGUgQXJncyA9IHtcbiAgYWRhcHRlcjogUG9zdGdyZXNBZGFwdGVyXG4gIGFycmF5czoge1xuICAgIFt0YWJsZU5hbWU6IHN0cmluZ106IEFycmF5Um93VG9JbnNlcnRbXVxuICB9W11cbiAgZGI6IERyaXp6bGVEQlxuICBwYXJlbnRSb3dzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdXG59XG5cbnR5cGUgUm93c0J5VGFibGUgPSB7XG4gIFt0YWJsZU5hbWU6IHN0cmluZ106IHtcbiAgICBhcnJheXM6IHtcbiAgICAgIFt0YWJsZU5hbWU6IHN0cmluZ106IEFycmF5Um93VG9JbnNlcnRbXVxuICAgIH1bXVxuICAgIGxvY2FsZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W11cbiAgICByb3dzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGluc2VydEFycmF5cyA9IGFzeW5jICh7IGFkYXB0ZXIsIGFycmF5cywgZGIsIHBhcmVudFJvd3MgfTogQXJncyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAvLyBNYWludGFpbiBhIG1hcCBvZiBmbGF0dGVuZWQgcm93cyBieSB0YWJsZVxuICBjb25zdCByb3dzQnlUYWJsZTogUm93c0J5VGFibGUgPSB7fVxuXG4gIGFycmF5cy5mb3JFYWNoKChhcnJheXNCeVRhYmxlLCBwYXJlbnRSb3dJbmRleCkgPT4ge1xuICAgIE9iamVjdC5lbnRyaWVzKGFycmF5c0J5VGFibGUpLmZvckVhY2goKFt0YWJsZU5hbWUsIGFycmF5Um93c10pID0+IHtcbiAgICAgIC8vIElmIHRoZSB0YWJsZSBkb2Vzbid0IGV4aXN0IGluIG1hcCwgaW5pdGlhbGl6ZSBpdFxuICAgICAgaWYgKCFyb3dzQnlUYWJsZVt0YWJsZU5hbWVdKSB7XG4gICAgICAgIHJvd3NCeVRhYmxlW3RhYmxlTmFtZV0gPSB7XG4gICAgICAgICAgYXJyYXlzOiBbXSxcbiAgICAgICAgICBsb2NhbGVzOiBbXSxcbiAgICAgICAgICByb3dzOiBbXSxcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBwYXJlbnRJRCA9IHBhcmVudFJvd3NbcGFyZW50Um93SW5kZXhdLmlkIHx8IHBhcmVudFJvd3NbcGFyZW50Um93SW5kZXhdLl9wYXJlbnRJRFxuXG4gICAgICAvLyBBZGQgYW55IHN1YiBhcnJheXMgdGhhdCBuZWVkIHRvIGJlIGNyZWF0ZWRcbiAgICAgIC8vIFdlIHdpbGwgY2FsbCB0aGlzIHJlY3Vyc2l2ZWx5IGJlbG93XG4gICAgICBhcnJheVJvd3MuZm9yRWFjaCgoYXJyYXlSb3cpID0+IHtcbiAgICAgICAgaWYgKE9iamVjdC5rZXlzKGFycmF5Um93LmFycmF5cykubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHJvd3NCeVRhYmxlW3RhYmxlTmFtZV0uYXJyYXlzLnB1c2goYXJyYXlSb3cuYXJyYXlzKVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2V0IHVwIHBhcmVudCBJRHMgZm9yIGJvdGggcm93IGFuZCBsb2NhbGUgcm93XG4gICAgICAgIGFycmF5Um93LnJvdy5fcGFyZW50SUQgPSBwYXJlbnRJRFxuICAgICAgICByb3dzQnlUYWJsZVt0YWJsZU5hbWVdLnJvd3MucHVzaChhcnJheVJvdy5yb3cpXG5cbiAgICAgICAgT2JqZWN0LmVudHJpZXMoYXJyYXlSb3cubG9jYWxlcykuZm9yRWFjaCgoW2FycmF5Um93TG9jYWxlLCBhcnJheVJvd0xvY2FsZURhdGFdKSA9PiB7XG4gICAgICAgICAgYXJyYXlSb3dMb2NhbGVEYXRhLl9wYXJlbnRJRCA9IGFycmF5Um93LnJvdy5pZFxuICAgICAgICAgIGFycmF5Um93TG9jYWxlRGF0YS5fbG9jYWxlID0gYXJyYXlSb3dMb2NhbGVcbiAgICAgICAgICByb3dzQnlUYWJsZVt0YWJsZU5hbWVdLmxvY2FsZXMucHVzaChhcnJheVJvd0xvY2FsZURhdGEpXG4gICAgICAgIH0pXG4gICAgICB9KVxuICAgIH0pXG4gIH0pXG5cbiAgLy8gSW5zZXJ0IGFsbCBjb3JyZXNwb25kaW5nIGFycmF5c1xuICAvLyAob25lIGluc2VydCBwZXIgYXJyYXkgdGFibGUpXG4gIGZvciAoY29uc3QgW3RhYmxlTmFtZSwgcm93XSBvZiBPYmplY3QuZW50cmllcyhyb3dzQnlUYWJsZSkpIHtcbiAgICBpZiAocm93LnJvd3MubGVuZ3RoID4gMCkge1xuICAgICAgYXdhaXQgZGIuaW5zZXJ0KGFkYXB0ZXIudGFibGVzW3RhYmxlTmFtZV0pLnZhbHVlcyhyb3cucm93cykucmV0dXJuaW5nKClcbiAgICB9XG5cbiAgICAvLyBJbnNlcnQgbG9jYWxlIHJvd3NcbiAgICBpZiAoYWRhcHRlci50YWJsZXNbYCR7dGFibGVOYW1lfV9sb2NhbGVzYF0gJiYgcm93LmxvY2FsZXMubGVuZ3RoID4gMCkge1xuICAgICAgYXdhaXQgZGIuaW5zZXJ0KGFkYXB0ZXIudGFibGVzW2Ake3RhYmxlTmFtZX1fbG9jYWxlc2BdKS52YWx1ZXMocm93LmxvY2FsZXMpLnJldHVybmluZygpXG4gICAgfVxuXG4gICAgLy8gSWYgdGhlcmUgYXJlIHN1YiBhcnJheXMsIGNhbGwgdGhpcyBmdW5jdGlvbiByZWN1cnNpdmVseVxuICAgIGlmIChyb3cuYXJyYXlzLmxlbmd0aCA+IDApIHtcbiAgICAgIGF3YWl0IGluc2VydEFycmF5cyh7XG4gICAgICAgIGFkYXB0ZXIsXG4gICAgICAgIGFycmF5czogcm93LmFycmF5cyxcbiAgICAgICAgZGIsXG4gICAgICAgIHBhcmVudFJvd3M6IHJvdy5yb3dzLFxuICAgICAgfSlcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJpbnNlcnRBcnJheXMiLCJhZGFwdGVyIiwiYXJyYXlzIiwiZGIiLCJwYXJlbnRSb3dzIiwicm93c0J5VGFibGUiLCJmb3JFYWNoIiwiYXJyYXlzQnlUYWJsZSIsInBhcmVudFJvd0luZGV4IiwiT2JqZWN0IiwiZW50cmllcyIsInRhYmxlTmFtZSIsImFycmF5Um93cyIsImxvY2FsZXMiLCJyb3dzIiwicGFyZW50SUQiLCJpZCIsIl9wYXJlbnRJRCIsImFycmF5Um93Iiwia2V5cyIsImxlbmd0aCIsInB1c2giLCJyb3ciLCJhcnJheVJvd0xvY2FsZSIsImFycmF5Um93TG9jYWxlRGF0YSIsIl9sb2NhbGUiLCJpbnNlcnQiLCJ0YWJsZXMiLCJ2YWx1ZXMiLCJyZXR1cm5pbmciXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQzs7OzsrQkF1QnZCQTs7O2VBQUFBOzs7QUFBTixNQUFNQSxlQUFlLE9BQU8sRUFBRUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLEVBQUUsRUFBRUMsVUFBVSxFQUFRO0lBQzFFLDRDQUE0QztJQUM1QyxNQUFNQyxjQUEyQixDQUFDO0lBRWxDSCxPQUFPSSxPQUFPLENBQUMsQ0FBQ0MsZUFBZUM7UUFDN0JDLE9BQU9DLE9BQU8sQ0FBQ0gsZUFBZUQsT0FBTyxDQUFDLENBQUMsQ0FBQ0ssV0FBV0MsVUFBVTtZQUMzRCxtREFBbUQ7WUFDbkQsSUFBSSxDQUFDUCxXQUFXLENBQUNNLFVBQVUsRUFBRTtnQkFDM0JOLFdBQVcsQ0FBQ00sVUFBVSxHQUFHO29CQUN2QlQsUUFBUSxFQUFFO29CQUNWVyxTQUFTLEVBQUU7b0JBQ1hDLE1BQU0sRUFBRTtnQkFDVjtZQUNGO1lBRUEsTUFBTUMsV0FBV1gsVUFBVSxDQUFDSSxlQUFlLENBQUNRLEVBQUUsSUFBSVosVUFBVSxDQUFDSSxlQUFlLENBQUNTLFNBQVM7WUFFdEYsNkNBQTZDO1lBQzdDLHNDQUFzQztZQUN0Q0wsVUFBVU4sT0FBTyxDQUFDLENBQUNZO2dCQUNqQixJQUFJVCxPQUFPVSxJQUFJLENBQUNELFNBQVNoQixNQUFNLEVBQUVrQixNQUFNLEdBQUcsR0FBRztvQkFDM0NmLFdBQVcsQ0FBQ00sVUFBVSxDQUFDVCxNQUFNLENBQUNtQixJQUFJLENBQUNILFNBQVNoQixNQUFNO2dCQUNwRDtnQkFFQSxnREFBZ0Q7Z0JBQ2hEZ0IsU0FBU0ksR0FBRyxDQUFDTCxTQUFTLEdBQUdGO2dCQUN6QlYsV0FBVyxDQUFDTSxVQUFVLENBQUNHLElBQUksQ0FBQ08sSUFBSSxDQUFDSCxTQUFTSSxHQUFHO2dCQUU3Q2IsT0FBT0MsT0FBTyxDQUFDUSxTQUFTTCxPQUFPLEVBQUVQLE9BQU8sQ0FBQyxDQUFDLENBQUNpQixnQkFBZ0JDLG1CQUFtQjtvQkFDNUVBLG1CQUFtQlAsU0FBUyxHQUFHQyxTQUFTSSxHQUFHLENBQUNOLEVBQUU7b0JBQzlDUSxtQkFBbUJDLE9BQU8sR0FBR0Y7b0JBQzdCbEIsV0FBVyxDQUFDTSxVQUFVLENBQUNFLE9BQU8sQ0FBQ1EsSUFBSSxDQUFDRztnQkFDdEM7WUFDRjtRQUNGO0lBQ0Y7SUFFQSxrQ0FBa0M7SUFDbEMsK0JBQStCO0lBQy9CLEtBQUssTUFBTSxDQUFDYixXQUFXVyxJQUFJLElBQUliLE9BQU9DLE9BQU8sQ0FBQ0wsYUFBYztRQUMxRCxJQUFJaUIsSUFBSVIsSUFBSSxDQUFDTSxNQUFNLEdBQUcsR0FBRztZQUN2QixNQUFNakIsR0FBR3VCLE1BQU0sQ0FBQ3pCLFFBQVEwQixNQUFNLENBQUNoQixVQUFVLEVBQUVpQixNQUFNLENBQUNOLElBQUlSLElBQUksRUFBRWUsU0FBUztRQUN2RTtRQUVBLHFCQUFxQjtRQUNyQixJQUFJNUIsUUFBUTBCLE1BQU0sQ0FBQyxDQUFDLEVBQUVoQixVQUFVLFFBQVEsQ0FBQyxDQUFDLElBQUlXLElBQUlULE9BQU8sQ0FBQ08sTUFBTSxHQUFHLEdBQUc7WUFDcEUsTUFBTWpCLEdBQUd1QixNQUFNLENBQUN6QixRQUFRMEIsTUFBTSxDQUFDLENBQUMsRUFBRWhCLFVBQVUsUUFBUSxDQUFDLENBQUMsRUFBRWlCLE1BQU0sQ0FBQ04sSUFBSVQsT0FBTyxFQUFFZ0IsU0FBUztRQUN2RjtRQUVBLDBEQUEwRDtRQUMxRCxJQUFJUCxJQUFJcEIsTUFBTSxDQUFDa0IsTUFBTSxHQUFHLEdBQUc7WUFDekIsTUFBTXBCLGFBQWE7Z0JBQ2pCQztnQkFDQUMsUUFBUW9CLElBQUlwQixNQUFNO2dCQUNsQkM7Z0JBQ0FDLFlBQVlrQixJQUFJUixJQUFJO1lBQ3RCO1FBQ0Y7SUFDRjtBQUNGIn0=
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91cHNlcnRSb3cvaW5zZXJ0QXJyYXlzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXBhcmFtLXJlYXNzaWduICovXG5pbXBvcnQgdHlwZSB7IEFycmF5Um93VG9JbnNlcnQgfSBmcm9tICcuLi90cmFuc2Zvcm0vd3JpdGUvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IERyaXp6bGVEQiwgUG9zdGdyZXNBZGFwdGVyIH0gZnJvbSAnLi4vdHlwZXMnXG5cbnR5cGUgQXJncyA9IHtcbiAgYWRhcHRlcjogUG9zdGdyZXNBZGFwdGVyXG4gIGFycmF5czoge1xuICAgIFt0YWJsZU5hbWU6IHN0cmluZ106IEFycmF5Um93VG9JbnNlcnRbXVxuICB9W11cbiAgZGI6IERyaXp6bGVEQlxuICBwYXJlbnRSb3dzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdXG59XG5cbnR5cGUgUm93c0J5VGFibGUgPSB7XG4gIFt0YWJsZU5hbWU6IHN0cmluZ106IHtcbiAgICBhcnJheXM6IHtcbiAgICAgIFt0YWJsZU5hbWU6IHN0cmluZ106IEFycmF5Um93VG9JbnNlcnRbXVxuICAgIH1bXVxuICAgIGxvY2FsZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+W11cbiAgICByb3dzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGluc2VydEFycmF5cyA9IGFzeW5jICh7IGFkYXB0ZXIsIGFycmF5cywgZGIsIHBhcmVudFJvd3MgfTogQXJncyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAvLyBNYWludGFpbiBhIG1hcCBvZiBmbGF0dGVuZWQgcm93cyBieSB0YWJsZVxuICBjb25zdCByb3dzQnlUYWJsZTogUm93c0J5VGFibGUgPSB7fVxuXG4gIGFycmF5cy5mb3JFYWNoKChhcnJheXNCeVRhYmxlLCBwYXJlbnRSb3dJbmRleCkgPT4ge1xuICAgIE9iamVjdC5lbnRyaWVzKGFycmF5c0J5VGFibGUpLmZvckVhY2goKFt0YWJsZU5hbWUsIGFycmF5Um93c10pID0+IHtcbiAgICAgIC8vIElmIHRoZSB0YWJsZSBkb2Vzbid0IGV4aXN0IGluIG1hcCwgaW5pdGlhbGl6ZSBpdFxuICAgICAgaWYgKCFyb3dzQnlUYWJsZVt0YWJsZU5hbWVdKSB7XG4gICAgICAgIHJvd3NCeVRhYmxlW3RhYmxlTmFtZV0gPSB7XG4gICAgICAgICAgYXJyYXlzOiBbXSxcbiAgICAgICAgICBsb2NhbGVzOiBbXSxcbiAgICAgICAgICByb3dzOiBbXSxcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBwYXJlbnRJRCA9IHBhcmVudFJvd3NbcGFyZW50Um93SW5kZXhdLmlkXG5cbiAgICAgIC8vIEFkZCBhbnkgc3ViIGFycmF5cyB0aGF0IG5lZWQgdG8gYmUgY3JlYXRlZFxuICAgICAgLy8gV2Ugd2lsbCBjYWxsIHRoaXMgcmVjdXJzaXZlbHkgYmVsb3dcbiAgICAgIGFycmF5Um93cy5mb3JFYWNoKChhcnJheVJvdywgaSkgPT4ge1xuICAgICAgICBpZiAoT2JqZWN0LmtleXMoYXJyYXlSb3cuYXJyYXlzKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgcm93c0J5VGFibGVbdGFibGVOYW1lXS5hcnJheXMucHVzaChhcnJheVJvdy5hcnJheXMpXG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZXQgdXAgcGFyZW50IElEcyBmb3IgYm90aCByb3cgYW5kIGxvY2FsZSByb3dcbiAgICAgICAgYXJyYXlSb3cucm93Ll9wYXJlbnRJRCA9IHBhcmVudElEXG4gICAgICAgIHJvd3NCeVRhYmxlW3RhYmxlTmFtZV0ucm93cy5wdXNoKGFycmF5Um93LnJvdylcblxuICAgICAgICBPYmplY3QuZW50cmllcyhhcnJheVJvdy5sb2NhbGVzKS5mb3JFYWNoKChbYXJyYXlSb3dMb2NhbGUsIGFycmF5Um93TG9jYWxlRGF0YV0pID0+IHtcbiAgICAgICAgICBhcnJheVJvd0xvY2FsZURhdGEuX3BhcmVudElEID0gYXJyYXlSb3cucm93LmlkXG4gICAgICAgICAgYXJyYXlSb3dMb2NhbGVEYXRhLl9sb2NhbGUgPSBhcnJheVJvd0xvY2FsZVxuICAgICAgICAgIHJvd3NCeVRhYmxlW3RhYmxlTmFtZV0ubG9jYWxlcy5wdXNoKGFycmF5Um93TG9jYWxlRGF0YSlcbiAgICAgICAgICBpZiAoIWFycmF5Um93LnJvdy5pZCkge1xuICAgICAgICAgICAgYXJyYXlSb3dMb2NhbGVEYXRhLl9nZXRQYXJlbnRJRCA9IChyb3dzKSA9PiByb3dzW2ldLmlkXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgfSlcbiAgICB9KVxuICB9KVxuXG4gIC8vIEluc2VydCBhbGwgY29ycmVzcG9uZGluZyBhcnJheXNcbiAgLy8gKG9uZSBpbnNlcnQgcGVyIGFycmF5IHRhYmxlKVxuICBmb3IgKGNvbnN0IFt0YWJsZU5hbWUsIHJvd10gb2YgT2JqZWN0LmVudHJpZXMocm93c0J5VGFibGUpKSB7XG4gICAgLy8gdGhlIG5lc3RlZCBhcnJheXMgbmVlZCB0aGUgSUQgZm9yIHRoZSBwYXJlbnRJRCBmb3JlaWduIGtleVxuICAgIGxldCBpbnNlcnRlZFJvd3M6IEFyZ3NbJ3BhcmVudFJvd3MnXVxuICAgIGlmIChyb3cucm93cy5sZW5ndGggPiAwKSB7XG4gICAgICBpbnNlcnRlZFJvd3MgPSBhd2FpdCBkYi5pbnNlcnQoYWRhcHRlci50YWJsZXNbdGFibGVOYW1lXSkudmFsdWVzKHJvdy5yb3dzKS5yZXR1cm5pbmcoKVxuICAgIH1cblxuICAgIC8vIEluc2VydCBsb2NhbGUgcm93c1xuICAgIGlmIChhZGFwdGVyLnRhYmxlc1tgJHt0YWJsZU5hbWV9X2xvY2FsZXNgXSAmJiByb3cubG9jYWxlcy5sZW5ndGggPiAwKSB7XG4gICAgICBpZiAoIXJvdy5sb2NhbGVzWzBdLl9wYXJlbnRJRCkge1xuICAgICAgICByb3cubG9jYWxlcyA9IHJvdy5sb2NhbGVzLm1hcCgobG9jYWxlUm93LCBpKSA9PiB7XG4gICAgICAgICAgaWYgKHR5cGVvZiBsb2NhbGVSb3cuX2dldFBhcmVudElEID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBsb2NhbGVSb3cuX3BhcmVudElEID0gbG9jYWxlUm93Ll9nZXRQYXJlbnRJRChpbnNlcnRlZFJvd3MpXG4gICAgICAgICAgICBkZWxldGUgbG9jYWxlUm93Ll9nZXRQYXJlbnRJRFxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gbG9jYWxlUm93XG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICBhd2FpdCBkYi5pbnNlcnQoYWRhcHRlci50YWJsZXNbYCR7dGFibGVOYW1lfV9sb2NhbGVzYF0pLnZhbHVlcyhyb3cubG9jYWxlcykucmV0dXJuaW5nKClcbiAgICB9XG5cbiAgICAvLyBJZiB0aGVyZSBhcmUgc3ViIGFycmF5cywgY2FsbCB0aGlzIGZ1bmN0aW9uIHJlY3Vyc2l2ZWx5XG4gICAgaWYgKHJvdy5hcnJheXMubGVuZ3RoID4gMCkge1xuICAgICAgYXdhaXQgaW5zZXJ0QXJyYXlzKHtcbiAgICAgICAgYWRhcHRlcixcbiAgICAgICAgYXJyYXlzOiByb3cuYXJyYXlzLFxuICAgICAgICBkYixcbiAgICAgICAgcGFyZW50Um93czogaW5zZXJ0ZWRSb3dzLFxuICAgICAgfSlcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJpbnNlcnRBcnJheXMiLCJhZGFwdGVyIiwiYXJyYXlzIiwiZGIiLCJwYXJlbnRSb3dzIiwicm93c0J5VGFibGUiLCJmb3JFYWNoIiwiYXJyYXlzQnlUYWJsZSIsInBhcmVudFJvd0luZGV4IiwiT2JqZWN0IiwiZW50cmllcyIsInRhYmxlTmFtZSIsImFycmF5Um93cyIsImxvY2FsZXMiLCJyb3dzIiwicGFyZW50SUQiLCJpZCIsImFycmF5Um93IiwiaSIsImtleXMiLCJsZW5ndGgiLCJwdXNoIiwicm93IiwiX3BhcmVudElEIiwiYXJyYXlSb3dMb2NhbGUiLCJhcnJheVJvd0xvY2FsZURhdGEiLCJfbG9jYWxlIiwiX2dldFBhcmVudElEIiwiaW5zZXJ0ZWRSb3dzIiwiaW5zZXJ0Iiwi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
@@ -1,3 +1,3 @@
1
- import type { DrizzleDB } from '../types';
2
- export declare const createMigrationTable: (db: DrizzleDB) => Promise<void>;
1
+ import type { PostgresAdapter } from '../types';
2
+ export declare const createMigrationTable: (adapter: PostgresAdapter) => Promise<void>;
3
3
  //# sourceMappingURL=createMigrationTable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createMigrationTable.d.ts","sourceRoot":"","sources":["../../src/utilities/createMigrationTable.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEzC,eAAO,MAAM,oBAAoB,qBAA0B,QAAQ,IAAI,CAQtE,CAAA"}
1
+ {"version":3,"file":"createMigrationTable.d.ts","sourceRoot":"","sources":["../../src/utilities/createMigrationTable.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE/C,eAAO,MAAM,oBAAoB,YAAmB,eAAe,KAAG,QAAQ,IAAI,CAYjF,CAAA"}
@@ -9,14 +9,15 @@ Object.defineProperty(exports, "createMigrationTable", {
9
9
  }
10
10
  });
11
11
  const _drizzleorm = require("drizzle-orm");
12
- const createMigrationTable = async (db)=>{
13
- await db.execute((0, _drizzleorm.sql)`CREATE TABLE IF NOT EXISTS "payload_migrations" (
12
+ const createMigrationTable = async (adapter)=>{
13
+ const prependSchema = adapter.schemaName ? `"${adapter.schemaName}".` : '';
14
+ await adapter.drizzle.execute(_drizzleorm.sql.raw(`CREATE TABLE IF NOT EXISTS ${prependSchema}"payload_migrations" (
14
15
  "id" serial PRIMARY KEY NOT NULL,
15
16
  "name" varchar,
16
17
  "batch" numeric,
17
18
  "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
18
19
  "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
19
- );`);
20
+ );`));
20
21
  };
21
22
 
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY3JlYXRlTWlncmF0aW9uVGFibGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3FsIH0gZnJvbSAnZHJpenpsZS1vcm0nXG5cbmltcG9ydCB0eXBlIHsgRHJpenpsZURCIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBjcmVhdGVNaWdyYXRpb25UYWJsZSA9IGFzeW5jIChkYjogRHJpenpsZURCKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGF3YWl0IGRiLmV4ZWN1dGUoc3FsYENSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTIFwicGF5bG9hZF9taWdyYXRpb25zXCIgKFxuICBcImlkXCIgc2VyaWFsIFBSSU1BUlkgS0VZIE5PVCBOVUxMLFxuICBcIm5hbWVcIiB2YXJjaGFyLFxuICBcImJhdGNoXCIgbnVtZXJpYyxcbiAgXCJ1cGRhdGVkX2F0XCIgdGltZXN0YW1wKDMpIHdpdGggdGltZSB6b25lIERFRkFVTFQgbm93KCkgTk9UIE5VTEwsXG4gIFwiY3JlYXRlZF9hdFwiIHRpbWVzdGFtcCgzKSB3aXRoIHRpbWUgem9uZSBERUZBVUxUIG5vdygpIE5PVCBOVUxMXG4pO2ApXG59XG4iXSwibmFtZXMiOlsiY3JlYXRlTWlncmF0aW9uVGFibGUiLCJkYiIsImV4ZWN1dGUiLCJzcWwiXSwibWFwcGluZ3MiOiI7Ozs7K0JBSWFBOzs7ZUFBQUE7Ozs0QkFKTztBQUliLE1BQU1BLHVCQUF1QixPQUFPQztJQUN6QyxNQUFNQSxHQUFHQyxPQUFPLENBQUNDLElBQUFBLGVBQUcsQ0FBQSxDQUFDOzs7Ozs7RUFNckIsQ0FBQztBQUNIIn0=
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY3JlYXRlTWlncmF0aW9uVGFibGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3FsIH0gZnJvbSAnZHJpenpsZS1vcm0nXG5cbmltcG9ydCB0eXBlIHsgUG9zdGdyZXNBZGFwdGVyIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmV4cG9ydCBjb25zdCBjcmVhdGVNaWdyYXRpb25UYWJsZSA9IGFzeW5jIChhZGFwdGVyOiBQb3N0Z3Jlc0FkYXB0ZXIpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgY29uc3QgcHJlcGVuZFNjaGVtYSA9IGFkYXB0ZXIuc2NoZW1hTmFtZSA/IGBcIiR7YWRhcHRlci5zY2hlbWFOYW1lfVwiLmAgOiAnJ1xuXG4gIGF3YWl0IGFkYXB0ZXIuZHJpenpsZS5leGVjdXRlKFxuICAgIHNxbC5yYXcoYENSRUFURSBUQUJMRSBJRiBOT1QgRVhJU1RTICR7cHJlcGVuZFNjaGVtYX1cInBheWxvYWRfbWlncmF0aW9uc1wiIChcbiAgXCJpZFwiIHNlcmlhbCBQUklNQVJZIEtFWSBOT1QgTlVMTCxcbiAgXCJuYW1lXCIgdmFyY2hhcixcbiAgXCJiYXRjaFwiIG51bWVyaWMsXG4gIFwidXBkYXRlZF9hdFwiIHRpbWVzdGFtcCgzKSB3aXRoIHRpbWUgem9uZSBERUZBVUxUIG5vdygpIE5PVCBOVUxMLFxuICBcImNyZWF0ZWRfYXRcIiB0aW1lc3RhbXAoMykgd2l0aCB0aW1lIHpvbmUgREVGQVVMVCBub3coKSBOT1QgTlVMTFxuKTtgKSxcbiAgKVxufVxuIl0sIm5hbWVzIjpbImNyZWF0ZU1pZ3JhdGlvblRhYmxlIiwiYWRhcHRlciIsInByZXBlbmRTY2hlbWEiLCJzY2hlbWFOYW1lIiwiZHJpenpsZSIsImV4ZWN1dGUiLCJzcWwiLCJyYXciXSwibWFwcGluZ3MiOiI7Ozs7K0JBSWFBOzs7ZUFBQUE7Ozs0QkFKTztBQUliLE1BQU1BLHVCQUF1QixPQUFPQztJQUN6QyxNQUFNQyxnQkFBZ0JELFFBQVFFLFVBQVUsR0FBRyxDQUFDLENBQUMsRUFBRUYsUUFBUUUsVUFBVSxDQUFDLEVBQUUsQ0FBQyxHQUFHO0lBRXhFLE1BQU1GLFFBQVFHLE9BQU8sQ0FBQ0MsT0FBTyxDQUMzQkMsZUFBRyxDQUFDQyxHQUFHLENBQUMsQ0FBQywyQkFBMkIsRUFBRUwsY0FBYzs7Ozs7O0VBTXRELENBQUM7QUFFSCJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/db-postgres",
3
- "version": "0.5.2",
3
+ "version": "0.7.0",
4
4
  "description": "The officially supported Postgres database adapter for Payload",
5
5
  "repository": "https://github.com/payloadcms/payload",
6
6
  "license": "MIT",
@@ -25,8 +25,8 @@
25
25
  "devDependencies": {
26
26
  "@types/pg": "8.10.2",
27
27
  "@types/to-snake-case": "1.0.0",
28
- "@payloadcms/eslint-config": "1.1.1",
29
- "payload": "2.10.1"
28
+ "payload": "2.11.2",
29
+ "@payloadcms/eslint-config": "1.1.1"
30
30
  },
31
31
  "peerDependencies": {
32
32
  "payload": "^2.0.0"
@@ -1,3 +0,0 @@
1
- import { type Field } from 'payload/types';
2
- export declare const getConfigIDType: (fields: Field[]) => string;
3
- //# sourceMappingURL=getConfigIDType.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getConfigIDType.d.ts","sourceRoot":"","sources":["../../src/schema/getConfigIDType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAoB,MAAM,eAAe,CAAA;AAE5D,eAAO,MAAM,eAAe,WAAY,KAAK,EAAE,KAAG,MAcjD,CAAA"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "getConfigIDType", {
6
- enumerable: true,
7
- get: function() {
8
- return getConfigIDType;
9
- }
10
- });
11
- const _types = require("payload/types");
12
- const getConfigIDType = (fields)=>{
13
- const idField = fields.find((field)=>(0, _types.fieldAffectsData)(field) && field.name === 'id');
14
- if (idField) {
15
- if (idField.type === 'number') {
16
- return 'numeric';
17
- }
18
- if (idField.type === 'text') {
19
- return 'varchar';
20
- }
21
- }
22
- return 'integer';
23
- };
24
-
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY2hlbWEvZ2V0Q29uZmlnSURUeXBlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgRmllbGQsIGZpZWxkQWZmZWN0c0RhdGEgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5leHBvcnQgY29uc3QgZ2V0Q29uZmlnSURUeXBlID0gKGZpZWxkczogRmllbGRbXSk6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGlkRmllbGQgPSBmaWVsZHMuZmluZCgoZmllbGQpID0+IGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpICYmIGZpZWxkLm5hbWUgPT09ICdpZCcpXG5cbiAgaWYgKGlkRmllbGQpIHtcbiAgICBpZiAoaWRGaWVsZC50eXBlID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuICdudW1lcmljJ1xuICAgIH1cblxuICAgIGlmIChpZEZpZWxkLnR5cGUgPT09ICd0ZXh0Jykge1xuICAgICAgcmV0dXJuICd2YXJjaGFyJ1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiAnaW50ZWdlcidcbn1cbiJdLCJuYW1lcyI6WyJnZXRDb25maWdJRFR5cGUiLCJmaWVsZHMiLCJpZEZpZWxkIiwiZmluZCIsImZpZWxkIiwiZmllbGRBZmZlY3RzRGF0YSIsIm5hbWUiLCJ0eXBlIl0sIm1hcHBpbmdzIjoiOzs7OytCQUVhQTs7O2VBQUFBOzs7dUJBRmdDO0FBRXRDLE1BQU1BLGtCQUFrQixDQUFDQztJQUM5QixNQUFNQyxVQUFVRCxPQUFPRSxJQUFJLENBQUMsQ0FBQ0MsUUFBVUMsSUFBQUEsdUJBQWdCLEVBQUNELFVBQVVBLE1BQU1FLElBQUksS0FBSztJQUVqRixJQUFJSixTQUFTO1FBQ1gsSUFBSUEsUUFBUUssSUFBSSxLQUFLLFVBQVU7WUFDN0IsT0FBTztRQUNUO1FBRUEsSUFBSUwsUUFBUUssSUFBSSxLQUFLLFFBQVE7WUFDM0IsT0FBTztRQUNUO0lBQ0Y7SUFFQSxPQUFPO0FBQ1QifQ==