@payloadcms/db-postgres 0.7.0 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"deleteOne.d.ts","sourceRoot":"","sources":["../src/deleteOne.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAWjD,eAAO,MAAM,SAAS,EAAE,SAmCvB,CAAA"}
1
+ {"version":3,"file":"deleteOne.d.ts","sourceRoot":"","sources":["../src/deleteOne.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAajD,eAAO,MAAM,SAAS,EAAE,SAsDvB,CAAA"}
package/dist/deleteOne.js CHANGED
@@ -8,40 +8,67 @@ Object.defineProperty(exports, "deleteOne", {
8
8
  return deleteOne;
9
9
  }
10
10
  });
11
+ const _drizzleorm = require("drizzle-orm");
11
12
  const _tosnakecase = /*#__PURE__*/ _interop_require_default(require("to-snake-case"));
12
13
  const _buildFindManyArgs = require("./find/buildFindManyArgs");
13
14
  const _buildQuery = /*#__PURE__*/ _interop_require_default(require("./queries/buildQuery"));
15
+ const _selectDistinct = require("./queries/selectDistinct");
14
16
  const _read = require("./transform/read");
15
17
  function _interop_require_default(obj) {
16
18
  return obj && obj.__esModule ? obj : {
17
19
  default: obj
18
20
  };
19
21
  }
20
- const deleteOne = async function deleteOne({ collection, req = {}, where: incomingWhere }) {
22
+ const deleteOne = async function deleteOne({ collection: collectionSlug, req = {}, where: whereArg }) {
21
23
  const db = this.sessions[req.transactionID]?.db || this.drizzle;
22
- const collectionConfig = this.payload.collections[collection].config;
23
- const tableName = (0, _tosnakecase.default)(collection);
24
- const { where } = await (0, _buildQuery.default)({
24
+ const collection = this.payload.collections[collectionSlug].config;
25
+ const tableName = (0, _tosnakecase.default)(collectionSlug);
26
+ let docToDelete;
27
+ const { joinAliases, joins, selectFields, where } = await (0, _buildQuery.default)({
25
28
  adapter: this,
26
- fields: collectionConfig.fields,
29
+ fields: collection.fields,
30
+ locale: req.locale,
27
31
  tableName,
28
- where: incomingWhere
32
+ where: whereArg
29
33
  });
30
- const findManyArgs = (0, _buildFindManyArgs.buildFindManyArgs)({
34
+ const selectDistinctResult = await (0, _selectDistinct.selectDistinct)({
31
35
  adapter: this,
32
- depth: 0,
33
- fields: collectionConfig.fields,
34
- tableName
36
+ chainedMethods: [
37
+ {
38
+ args: [
39
+ 1
40
+ ],
41
+ method: 'limit'
42
+ }
43
+ ],
44
+ db,
45
+ joinAliases,
46
+ joins,
47
+ selectFields,
48
+ tableName,
49
+ where
35
50
  });
36
- findManyArgs.where = where;
37
- const docToDelete = await db.query[tableName].findFirst(findManyArgs);
51
+ if (selectDistinctResult?.[0]?.id) {
52
+ docToDelete = await db.query[tableName].findFirst({
53
+ where: (0, _drizzleorm.eq)(this.tables[tableName].id, selectDistinctResult[0].id)
54
+ });
55
+ } else {
56
+ const findManyArgs = (0, _buildFindManyArgs.buildFindManyArgs)({
57
+ adapter: this,
58
+ depth: 0,
59
+ fields: collection.fields,
60
+ tableName
61
+ });
62
+ findManyArgs.where = where;
63
+ docToDelete = await db.query[tableName].findFirst(findManyArgs);
64
+ }
38
65
  const result = (0, _read.transform)({
39
66
  config: this.payload.config,
40
67
  data: docToDelete,
41
- fields: collectionConfig.fields
68
+ fields: collection.fields
42
69
  });
43
- await db.delete(this.tables[tableName]).where(where);
70
+ await db.delete(this.tables[tableName]).where((0, _drizzleorm.eq)(this.tables[tableName].id, docToDelete.id));
44
71
  return result;
45
72
  };
46
73
 
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWxldGVPbmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWxldGVPbmUgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB0b1NuYWtlQ2FzZSBmcm9tICd0by1zbmFrZS1jYXNlJ1xuXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IGJ1aWxkRmluZE1hbnlBcmdzIH0gZnJvbSAnLi9maW5kL2J1aWxkRmluZE1hbnlBcmdzJ1xuaW1wb3J0IGJ1aWxkUXVlcnkgZnJvbSAnLi9xdWVyaWVzL2J1aWxkUXVlcnknXG5pbXBvcnQgeyB0cmFuc2Zvcm0gfSBmcm9tICcuL3RyYW5zZm9ybS9yZWFkJ1xuXG5leHBvcnQgY29uc3QgZGVsZXRlT25lOiBEZWxldGVPbmUgPSBhc3luYyBmdW5jdGlvbiBkZWxldGVPbmUoXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBjb2xsZWN0aW9uLCByZXEgPSB7fSBhcyBQYXlsb2FkUmVxdWVzdCwgd2hlcmU6IGluY29taW5nV2hlcmUgfSxcbikge1xuICBjb25zdCBkYiA9IHRoaXMuc2Vzc2lvbnNbcmVxLnRyYW5zYWN0aW9uSURdPy5kYiB8fCB0aGlzLmRyaXp6bGVcbiAgY29uc3QgY29sbGVjdGlvbkNvbmZpZyA9IHRoaXMucGF5bG9hZC5jb2xsZWN0aW9uc1tjb2xsZWN0aW9uXS5jb25maWdcbiAgY29uc3QgdGFibGVOYW1lID0gdG9TbmFrZUNhc2UoY29sbGVjdGlvbilcblxuICBjb25zdCB7IHdoZXJlIH0gPSBhd2FpdCBidWlsZFF1ZXJ5KHtcbiAgICBhZGFwdGVyOiB0aGlzLFxuICAgIGZpZWxkczogY29sbGVjdGlvbkNvbmZpZy5maWVsZHMsXG4gICAgdGFibGVOYW1lLFxuICAgIHdoZXJlOiBpbmNvbWluZ1doZXJlLFxuICB9KVxuXG4gIGNvbnN0IGZpbmRNYW55QXJncyA9IGJ1aWxkRmluZE1hbnlBcmdzKHtcbiAgICBhZGFwdGVyOiB0aGlzLFxuICAgIGRlcHRoOiAwLFxuICAgIGZpZWxkczogY29sbGVjdGlvbkNvbmZpZy5maWVsZHMsXG4gICAgdGFibGVOYW1lLFxuICB9KVxuXG4gIGZpbmRNYW55QXJncy53aGVyZSA9IHdoZXJlXG5cbiAgY29uc3QgZG9jVG9EZWxldGUgPSBhd2FpdCBkYi5xdWVyeVt0YWJsZU5hbWVdLmZpbmRGaXJzdChmaW5kTWFueUFyZ3MpXG5cbiAgY29uc3QgcmVzdWx0ID0gdHJhbnNmb3JtKHtcbiAgICBjb25maWc6IHRoaXMucGF5bG9hZC5jb25maWcsXG4gICAgZGF0YTogZG9jVG9EZWxldGUsXG4gICAgZmllbGRzOiBjb2xsZWN0aW9uQ29uZmlnLmZpZWxkcyxcbiAgfSlcblxuICBhd2FpdCBkYi5kZWxldGUodGhpcy50YWJsZXNbdGFibGVOYW1lXSkud2hlcmUod2hlcmUpXG5cbiAgcmV0dXJuIHJlc3VsdFxufVxuIl0sIm5hbWVzIjpbImRlbGV0ZU9uZSIsImNvbGxlY3Rpb24iLCJyZXEiLCJ3aGVyZSIsImluY29taW5nV2hlcmUiLCJkYiIsInNlc3Npb25zIiwidHJhbnNhY3Rpb25JRCIsImRyaXp6bGUiLCJjb2xsZWN0aW9uQ29uZmlnIiwicGF5bG9hZCIsImNvbGxlY3Rpb25zIiwiY29uZmlnIiwidGFibGVOYW1lIiwidG9TbmFrZUNhc2UiLCJidWlsZFF1ZXJ5IiwiYWRhcHRlciIsImZpZWxkcyIsImZpbmRNYW55QXJncyIsImJ1aWxkRmluZE1hbnlBcmdzIiwiZGVwdGgiLCJkb2NUb0RlbGV0ZSIsInF1ZXJ5IiwiZmluZEZpcnN0IiwicmVzdWx0IiwidHJhbnNmb3JtIiwiZGF0YSIsImRlbGV0ZSIsInRhYmxlcyJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFXYUE7OztlQUFBQTs7O29FQVJXO21DQUlVO21FQUNYO3NCQUNHOzs7Ozs7QUFFbkIsTUFBTUEsWUFBdUIsZUFBZUEsVUFFakQsRUFBRUMsVUFBVSxFQUFFQyxNQUFNLENBQUMsQ0FBbUIsRUFBRUMsT0FBT0MsYUFBYSxFQUFFO0lBRWhFLE1BQU1DLEtBQUssSUFBSSxDQUFDQyxRQUFRLENBQUNKLElBQUlLLGFBQWEsQ0FBQyxFQUFFRixNQUFNLElBQUksQ0FBQ0csT0FBTztJQUMvRCxNQUFNQyxtQkFBbUIsSUFBSSxDQUFDQyxPQUFPLENBQUNDLFdBQVcsQ0FBQ1YsV0FBVyxDQUFDVyxNQUFNO0lBQ3BFLE1BQU1DLFlBQVlDLElBQUFBLG9CQUFXLEVBQUNiO0lBRTlCLE1BQU0sRUFBRUUsS0FBSyxFQUFFLEdBQUcsTUFBTVksSUFBQUEsbUJBQVUsRUFBQztRQUNqQ0MsU0FBUyxJQUFJO1FBQ2JDLFFBQVFSLGlCQUFpQlEsTUFBTTtRQUMvQko7UUFDQVYsT0FBT0M7SUFDVDtJQUVBLE1BQU1jLGVBQWVDLElBQUFBLG9DQUFpQixFQUFDO1FBQ3JDSCxTQUFTLElBQUk7UUFDYkksT0FBTztRQUNQSCxRQUFRUixpQkFBaUJRLE1BQU07UUFDL0JKO0lBQ0Y7SUFFQUssYUFBYWYsS0FBSyxHQUFHQTtJQUVyQixNQUFNa0IsY0FBYyxNQUFNaEIsR0FBR2lCLEtBQUssQ0FBQ1QsVUFBVSxDQUFDVSxTQUFTLENBQUNMO0lBRXhELE1BQU1NLFNBQVNDLElBQUFBLGVBQVMsRUFBQztRQUN2QmIsUUFBUSxJQUFJLENBQUNGLE9BQU8sQ0FBQ0UsTUFBTTtRQUMzQmMsTUFBTUw7UUFDTkosUUFBUVIsaUJBQWlCUSxNQUFNO0lBQ2pDO0lBRUEsTUFBTVosR0FBR3NCLE1BQU0sQ0FBQyxJQUFJLENBQUNDLE1BQU0sQ0FBQ2YsVUFBVSxFQUFFVixLQUFLLENBQUNBO0lBRTlDLE9BQU9xQjtBQUNUIn0=
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWxldGVPbmUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWxldGVPbmUgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7IGVxIH0gZnJvbSAnZHJpenpsZS1vcm0nXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyBidWlsZEZpbmRNYW55QXJncyB9IGZyb20gJy4vZmluZC9idWlsZEZpbmRNYW55QXJncydcbmltcG9ydCBidWlsZFF1ZXJ5IGZyb20gJy4vcXVlcmllcy9idWlsZFF1ZXJ5J1xuaW1wb3J0IHsgc2VsZWN0RGlzdGluY3QgfSBmcm9tICcuL3F1ZXJpZXMvc2VsZWN0RGlzdGluY3QnXG5pbXBvcnQgeyB0cmFuc2Zvcm0gfSBmcm9tICcuL3RyYW5zZm9ybS9yZWFkJ1xuXG5leHBvcnQgY29uc3QgZGVsZXRlT25lOiBEZWxldGVPbmUgPSBhc3luYyBmdW5jdGlvbiBkZWxldGVPbmUoXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uU2x1ZywgcmVxID0ge30gYXMgUGF5bG9hZFJlcXVlc3QsIHdoZXJlOiB3aGVyZUFyZyB9LFxuKSB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5wYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25TbHVnXS5jb25maWdcbiAgY29uc3QgdGFibGVOYW1lID0gdG9TbmFrZUNhc2UoY29sbGVjdGlvblNsdWcpXG4gIGxldCBkb2NUb0RlbGV0ZTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cblxuICBjb25zdCB7IGpvaW5BbGlhc2VzLCBqb2lucywgc2VsZWN0RmllbGRzLCB3aGVyZSB9ID0gYXdhaXQgYnVpbGRRdWVyeSh7XG4gICAgYWRhcHRlcjogdGhpcyxcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24uZmllbGRzLFxuICAgIGxvY2FsZTogcmVxLmxvY2FsZSxcbiAgICB0YWJsZU5hbWUsXG4gICAgd2hlcmU6IHdoZXJlQXJnLFxuICB9KVxuXG4gIGNvbnN0IHNlbGVjdERpc3RpbmN0UmVzdWx0ID0gYXdhaXQgc2VsZWN0RGlzdGluY3Qoe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgY2hhaW5lZE1ldGhvZHM6IFt7IGFyZ3M6IFsxXSwgbWV0aG9kOiAnbGltaXQnIH1dLFxuICAgIGRiLFxuICAgIGpvaW5BbGlhc2VzLFxuICAgIGpvaW5zLFxuICAgIHNlbGVjdEZpZWxkcyxcbiAgICB0YWJsZU5hbWUsXG4gICAgd2hlcmUsXG4gIH0pXG5cbiAgaWYgKHNlbGVjdERpc3RpbmN0UmVzdWx0Py5bMF0/LmlkKSB7XG4gICAgZG9jVG9EZWxldGUgPSBhd2FpdCBkYi5xdWVyeVt0YWJsZU5hbWVdLmZpbmRGaXJzdCh7XG4gICAgICB3aGVyZTogZXEodGhpcy50YWJsZXNbdGFibGVOYW1lXS5pZCwgc2VsZWN0RGlzdGluY3RSZXN1bHRbMF0uaWQpLFxuICAgIH0pXG4gIH0gZWxzZSB7XG4gICAgY29uc3QgZmluZE1hbnlBcmdzID0gYnVpbGRGaW5kTWFueUFyZ3Moe1xuICAgICAgYWRhcHRlcjogdGhpcyxcbiAgICAgIGRlcHRoOiAwLFxuICAgICAgZmllbGRzOiBjb2xsZWN0aW9uLmZpZWxkcyxcbiAgICAgIHRhYmxlTmFtZSxcbiAgICB9KVxuXG4gICAgZmluZE1hbnlBcmdzLndoZXJlID0gd2hlcmVcblxuICAgIGRvY1RvRGVsZXRlID0gYXdhaXQgZGIucXVlcnlbdGFibGVOYW1lXS5maW5kRmlyc3QoZmluZE1hbnlBcmdzKVxuICB9XG5cbiAgY29uc3QgcmVzdWx0ID0gdHJhbnNmb3JtKHtcbiAgICBjb25maWc6IHRoaXMucGF5bG9hZC5jb25maWcsXG4gICAgZGF0YTogZG9jVG9EZWxldGUsXG4gICAgZmllbGRzOiBjb2xsZWN0aW9uLmZpZWxkcyxcbiAgfSlcblxuICBhd2FpdCBkYi5kZWxldGUodGhpcy50YWJsZXNbdGFibGVOYW1lXSkud2hlcmUoZXEodGhpcy50YWJsZXNbdGFibGVOYW1lXS5pZCwgZG9jVG9EZWxldGUuaWQpKVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJkZWxldGVPbmUiLCJjb2xsZWN0aW9uIiwiY29sbGVjdGlvblNsdWciLCJyZXEiLCJ3aGVyZSIsIndoZXJlQXJnIiwiZGIiLCJzZXNzaW9ucyIsInRyYW5zYWN0aW9uSUQiLCJkcml6emxlIiwicGF5bG9hZCIsImNvbGxlY3Rpb25zIiwiY29uZmlnIiwidGFibGVOYW1lIiwidG9TbmFrZUNhc2UiLCJkb2NUb0RlbGV0ZSIsImpvaW5BbGlhc2VzIiwiam9pbnMiLCJzZWxlY3RGaWVsZHMiLCJidWlsZFF1ZXJ5IiwiYWRhcHRlciIsImZpZWxkcyIsImxvY2FsZSIsInNlbGVjdERpc3RpbmN0UmVzdWx0Iiwic2VsZWN0RGlzdGluY3QiLCJjaGFpbmVkTWV0aG9kcyIsImFyZ3MiLCJtZXRob2QiLCJpZCIsInF1ZXJ5IiwiZmluZEZpcnN0IiwiZXEiLCJ0YWJsZXMiLCJmaW5kTWFueUFyZ3MiLCJidWlsZEZpbmRNYW55QXJncyIsImRlcHRoIiwicmVzdWx0IiwidHJhbnNmb3JtIiwiZGF0YSIsImRlbGV0ZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFhYUE7OztlQUFBQTs7OzRCQVZNO29FQUNLO21DQUlVO21FQUNYO2dDQUNRO3NCQUNMOzs7Ozs7QUFFbkIsTUFBTUEsWUFBdUIsZUFBZUEsVUFFakQsRUFBRUMsWUFBWUMsY0FBYyxFQUFFQyxNQUFNLENBQUMsQ0FBbUIsRUFBRUMsT0FBT0MsUUFBUSxFQUFFO0lBRTNFLE1BQU1DLEtBQUssSUFBSSxDQUFDQyxRQUFRLENBQUNKLElBQUlLLGFBQWEsQ0FBQyxFQUFFRixNQUFNLElBQUksQ0FBQ0csT0FBTztJQUMvRCxNQUFNUixhQUFhLElBQUksQ0FBQ1MsT0FBTyxDQUFDQyxXQUFXLENBQUNULGVBQWUsQ0FBQ1UsTUFBTTtJQUNsRSxNQUFNQyxZQUFZQyxJQUFBQSxvQkFBVyxFQUFDWjtJQUM5QixJQUFJYTtJQUVKLE1BQU0sRUFBRUMsV0FBVyxFQUFFQyxLQUFLLEVBQUVDLFlBQVksRUFBRWQsS0FBSyxFQUFFLEdBQUcsTUFBTWUsSUFBQUEsbUJBQVUsRUFBQztRQUNuRUMsU0FBUyxJQUFJO1FBQ2JDLFFBQVFwQixXQUFXb0IsTUFBTTtRQUN6QkMsUUFBUW5CLElBQUltQixNQUFNO1FBQ2xCVDtRQUNBVCxPQUFPQztJQUNUO0lBRUEsTUFBTWtCLHVCQUF1QixNQUFNQyxJQUFBQSw4QkFBYyxFQUFDO1FBQ2hESixTQUFTLElBQUk7UUFDYkssZ0JBQWdCO1lBQUM7Z0JBQUVDLE1BQU07b0JBQUM7aUJBQUU7Z0JBQUVDLFFBQVE7WUFBUTtTQUFFO1FBQ2hEckI7UUFDQVU7UUFDQUM7UUFDQUM7UUFDQUw7UUFDQVQ7SUFDRjtJQUVBLElBQUltQixzQkFBc0IsQ0FBQyxFQUFFLEVBQUVLLElBQUk7UUFDakNiLGNBQWMsTUFBTVQsR0FBR3VCLEtBQUssQ0FBQ2hCLFVBQVUsQ0FBQ2lCLFNBQVMsQ0FBQztZQUNoRDFCLE9BQU8yQixJQUFBQSxjQUFFLEVBQUMsSUFBSSxDQUFDQyxNQUFNLENBQUNuQixVQUFVLENBQUNlLEVBQUUsRUFBRUwsb0JBQW9CLENBQUMsRUFBRSxDQUFDSyxFQUFFO1FBQ2pFO0lBQ0YsT0FBTztRQUNMLE1BQU1LLGVBQWVDLElBQUFBLG9DQUFpQixFQUFDO1lBQ3JDZCxTQUFTLElBQUk7WUFDYmUsT0FBTztZQUNQZCxRQUFRcEIsV0FBV29CLE1BQU07WUFDekJSO1FBQ0Y7UUFFQW9CLGFBQWE3QixLQUFLLEdBQUdBO1FBRXJCVyxjQUFjLE1BQU1ULEdBQUd1QixLQUFLLENBQUNoQixVQUFVLENBQUNpQixTQUFTLENBQUNHO0lBQ3BEO0lBRUEsTUFBTUcsU0FBU0MsSUFBQUEsZUFBUyxFQUFDO1FBQ3ZCekIsUUFBUSxJQUFJLENBQUNGLE9BQU8sQ0FBQ0UsTUFBTTtRQUMzQjBCLE1BQU12QjtRQUNOTSxRQUFRcEIsV0FBV29CLE1BQU07SUFDM0I7SUFFQSxNQUFNZixHQUFHaUMsTUFBTSxDQUFDLElBQUksQ0FBQ1AsTUFBTSxDQUFDbkIsVUFBVSxFQUFFVCxLQUFLLENBQUMyQixJQUFBQSxjQUFFLEVBQUMsSUFBSSxDQUFDQyxNQUFNLENBQUNuQixVQUFVLENBQUNlLEVBQUUsRUFBRWIsWUFBWWEsRUFBRTtJQUUxRixPQUFPUTtBQUNUIn0=
@@ -1,3 +1,4 @@
1
+ import type { QueryPromise } from 'drizzle-orm';
1
2
  export type ChainedMethods = {
2
3
  args: unknown[];
3
4
  method: string;
@@ -7,9 +8,9 @@ export type ChainedMethods = {
7
8
  * @param methods
8
9
  * @param query
9
10
  */
10
- declare const chainMethods: ({ methods, query }: {
11
+ declare const chainMethods: <T>({ methods, query }: {
11
12
  methods: any;
12
13
  query: any;
13
- }) => Promise<unknown>;
14
+ }) => QueryPromise<T>;
14
15
  export { chainMethods };
15
16
  //# sourceMappingURL=chainMethods.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chainMethods.d.ts","sourceRoot":"","sources":["../../src/find/chainMethods.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;CACf,EAAE,CAAA;AAEH;;;;GAIG;AACH,QAAA,MAAM,YAAY;;;MAAyB,QAAQ,OAAO,CAIzD,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"chainMethods.d.ts","sourceRoot":"","sources":["../../src/find/chainMethods.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE/C,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;CACf,EAAE,CAAA;AAEH;;;;GAIG;AACH,QAAA,MAAM,YAAY;;;qBAIjB,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
@@ -18,4 +18,4 @@ Object.defineProperty(exports, "chainMethods", {
18
18
  }, query);
19
19
  };
20
20
 
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maW5kL2NoYWluTWV0aG9kcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBDaGFpbmVkTWV0aG9kcyA9IHtcbiAgYXJnczogdW5rbm93bltdXG4gIG1ldGhvZDogc3RyaW5nXG59W11cblxuLyoqXG4gKiBDYWxsIGFuZCByZXR1cm5pbmcgbWV0aG9kcyB0aGF0IHdvdWxkIG5vcm1hbGx5IGJlIGNoYWluZWQgdG9nZXRoZXIgYnV0IGNhbm5vdCBiZSBiZWNhdXNlIG9mIGNvbnRyb2wgbG9naWNcbiAqIEBwYXJhbSBtZXRob2RzXG4gKiBAcGFyYW0gcXVlcnlcbiAqL1xuY29uc3QgY2hhaW5NZXRob2RzID0gKHsgbWV0aG9kcywgcXVlcnkgfSk6IFByb21pc2U8dW5rbm93bj4gPT4ge1xuICByZXR1cm4gbWV0aG9kcy5yZWR1Y2UoKHF1ZXJ5LCB7IGFyZ3MsIG1ldGhvZCB9KSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5W21ldGhvZF0oLi4uYXJncylcbiAgfSwgcXVlcnkpXG59XG5cbmV4cG9ydCB7IGNoYWluTWV0aG9kcyB9XG4iXSwibmFtZXMiOlsiY2hhaW5NZXRob2RzIiwibWV0aG9kcyIsInF1ZXJ5IiwicmVkdWNlIiwiYXJncyIsIm1ldGhvZCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFnQlNBOzs7ZUFBQUE7OztBQVhUOzs7O0NBSUMsR0FDRCxNQUFNQSxlQUFlLENBQUMsRUFBRUMsT0FBTyxFQUFFQyxLQUFLLEVBQUU7SUFDdEMsT0FBT0QsUUFBUUUsTUFBTSxDQUFDLENBQUNELE9BQU8sRUFBRUUsSUFBSSxFQUFFQyxNQUFNLEVBQUU7UUFDNUMsT0FBT0gsS0FBSyxDQUFDRyxPQUFPLElBQUlEO0lBQzFCLEdBQUdGO0FBQ0wifQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maW5kL2NoYWluTWV0aG9kcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFF1ZXJ5UHJvbWlzZSB9IGZyb20gJ2RyaXp6bGUtb3JtJ1xuXG5leHBvcnQgdHlwZSBDaGFpbmVkTWV0aG9kcyA9IHtcbiAgYXJnczogdW5rbm93bltdXG4gIG1ldGhvZDogc3RyaW5nXG59W11cblxuLyoqXG4gKiBDYWxsIGFuZCByZXR1cm5pbmcgbWV0aG9kcyB0aGF0IHdvdWxkIG5vcm1hbGx5IGJlIGNoYWluZWQgdG9nZXRoZXIgYnV0IGNhbm5vdCBiZSBiZWNhdXNlIG9mIGNvbnRyb2wgbG9naWNcbiAqIEBwYXJhbSBtZXRob2RzXG4gKiBAcGFyYW0gcXVlcnlcbiAqL1xuY29uc3QgY2hhaW5NZXRob2RzID0gPFQ+KHsgbWV0aG9kcywgcXVlcnkgfSk6IFF1ZXJ5UHJvbWlzZTxUPiA9PiB7XG4gIHJldHVybiBtZXRob2RzLnJlZHVjZSgocXVlcnksIHsgYXJncywgbWV0aG9kIH0pID0+IHtcbiAgICByZXR1cm4gcXVlcnlbbWV0aG9kXSguLi5hcmdzKVxuICB9LCBxdWVyeSlcbn1cblxuZXhwb3J0IHsgY2hhaW5NZXRob2RzIH1cbiJdLCJuYW1lcyI6WyJjaGFpbk1ldGhvZHMiLCJtZXRob2RzIiwicXVlcnkiLCJyZWR1Y2UiLCJhcmdzIiwibWV0aG9kIl0sIm1hcHBpbmdzIjoiOzs7OytCQWtCU0E7OztlQUFBQTs7O0FBWFQ7Ozs7Q0FJQyxHQUNELE1BQU1BLGVBQWUsQ0FBSSxFQUFFQyxPQUFPLEVBQUVDLEtBQUssRUFBRTtJQUN6QyxPQUFPRCxRQUFRRSxNQUFNLENBQUMsQ0FBQ0QsT0FBTyxFQUFFRSxJQUFJLEVBQUVDLE1BQU0sRUFBRTtRQUM1QyxPQUFPSCxLQUFLLENBQUNHLE9BQU8sSUFBSUQ7SUFDMUIsR0FBR0Y7QUFDTCJ9
@@ -1 +1 @@
1
- {"version":3,"file":"findMany.d.ts","sourceRoot":"","sources":["../../src/find/findMany.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,KAAK,EAAE,KAAK,EAA8B,MAAM,eAAe,CAAA;AAItE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAQ/C,KAAK,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG;IACzC,OAAO,EAAE,eAAe,CAAA;IACxB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,QAAQ,iHAYlB,IAAI;;;;;;;;;;;EA+KN,CAAA"}
1
+ {"version":3,"file":"findMany.d.ts","sourceRoot":"","sources":["../../src/find/findMany.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,KAAK,EAAE,KAAK,EAA8B,MAAM,eAAe,CAAA;AAItE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAS/C,KAAK,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG;IACzC,OAAO,EAAE,eAAe,CAAA;IACxB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,QAAQ,iHAYlB,IAAI;;;;;;;;;;;EAgKN,CAAA"}
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "findMany", {
10
10
  });
11
11
  const _drizzleorm = require("drizzle-orm");
12
12
  const _buildQuery = /*#__PURE__*/ _interop_require_default(require("../queries/buildQuery"));
13
+ const _selectDistinct = require("../queries/selectDistinct");
13
14
  const _read = require("../transform/read");
14
15
  const _buildFindManyArgs = require("./buildFindManyArgs");
15
16
  const _chainMethods = require("./chainMethods");
@@ -27,7 +28,6 @@ const findMany = async function find({ adapter, fields, limit: limitArg, locale,
27
28
  let hasPrevPage;
28
29
  let hasNextPage;
29
30
  let pagingCounter;
30
- let selectDistinctResult;
31
31
  const { joinAliases, joins, orderBy, selectFields, where } = await (0, _buildQuery.default)({
32
32
  adapter,
33
33
  fields,
@@ -53,52 +53,29 @@ const findMany = async function find({ adapter, fields, limit: limitArg, locale,
53
53
  fields,
54
54
  tableName
55
55
  });
56
- // only fetch IDs when a sort or where query is used that needs to be done on join tables, otherwise these can be done directly on the table in findMany
57
- if (Object.keys(joins).length > 0 || joinAliases.length > 0) {
58
- if (where) {
59
- selectDistinctMethods.push({
60
- args: [
61
- where
62
- ],
63
- method: 'where'
64
- });
65
- }
66
- joinAliases.forEach(({ condition, table })=>{
67
- selectDistinctMethods.push({
68
- args: [
69
- table,
70
- condition
71
- ],
72
- method: 'leftJoin'
73
- });
74
- });
75
- Object.entries(joins).forEach(([joinTable, condition])=>{
76
- if (joinTable) {
77
- selectDistinctMethods.push({
78
- args: [
79
- adapter.tables[joinTable],
80
- condition
81
- ],
82
- method: 'leftJoin'
83
- });
84
- }
85
- });
86
- selectDistinctMethods.push({
87
- args: [
88
- skip || (page - 1) * limit
89
- ],
90
- method: 'offset'
91
- });
92
- selectDistinctMethods.push({
93
- args: [
94
- limit === 0 ? undefined : limit
95
- ],
96
- method: 'limit'
97
- });
98
- selectDistinctResult = await (0, _chainMethods.chainMethods)({
99
- methods: selectDistinctMethods,
100
- query: db.selectDistinct(selectFields).from(table)
101
- });
56
+ selectDistinctMethods.push({
57
+ args: [
58
+ skip || (page - 1) * limit
59
+ ],
60
+ method: 'offset'
61
+ });
62
+ selectDistinctMethods.push({
63
+ args: [
64
+ limit === 0 ? undefined : limit
65
+ ],
66
+ method: 'limit'
67
+ });
68
+ const selectDistinctResult = await (0, _selectDistinct.selectDistinct)({
69
+ adapter,
70
+ chainedMethods: selectDistinctMethods,
71
+ db,
72
+ joinAliases,
73
+ joins,
74
+ selectFields,
75
+ tableName,
76
+ where
77
+ });
78
+ if (selectDistinctResult) {
102
79
  if (selectDistinctResult.length === 0) {
103
80
  return {
104
81
  docs: [],
@@ -112,13 +89,14 @@ const findMany = async function find({ adapter, fields, limit: limitArg, locale,
112
89
  totalDocs: 0,
113
90
  totalPages: 0
114
91
  };
92
+ } else {
93
+ // set the id in an object for sorting later
94
+ selectDistinctResult.forEach(({ id }, i)=>{
95
+ orderedIDMap[id] = i;
96
+ });
97
+ orderedIDs = Object.keys(orderedIDMap);
98
+ findManyArgs.where = (0, _drizzleorm.inArray)(adapter.tables[tableName].id, orderedIDs);
115
99
  }
116
- // set the id in an object for sorting later
117
- selectDistinctResult.forEach(({ id }, i)=>{
118
- orderedIDMap[id] = i;
119
- });
120
- orderedIDs = Object.keys(orderedIDMap);
121
- findManyArgs.where = (0, _drizzleorm.inArray)(adapter.tables[tableName].id, orderedIDs);
122
100
  } else {
123
101
  findManyArgs.limit = limitArg === 0 ? undefined : limitArg;
124
102
  const offset = skip || (page - 1) * limitArg;
@@ -197,4 +175,4 @@ const findMany = async function find({ adapter, fields, limit: limitArg, locale,
197
175
  };
198
176
  };
199
177
 
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maW5kL2ZpbmRNYW55LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRmluZEFyZ3MgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuaW1wb3J0IHR5cGUgeyBGaWVsZCwgUGF5bG9hZFJlcXVlc3QsIFR5cGVXaXRoSUQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgeyBpbkFycmF5LCBzcWwgfSBmcm9tICdkcml6emxlLW9ybSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB0eXBlIHsgQ2hhaW5lZE1ldGhvZHMgfSBmcm9tICcuL2NoYWluTWV0aG9kcydcblxuaW1wb3J0IGJ1aWxkUXVlcnkgZnJvbSAnLi4vcXVlcmllcy9idWlsZFF1ZXJ5J1xuaW1wb3J0IHsgdHJhbnNmb3JtIH0gZnJvbSAnLi4vdHJhbnNmb3JtL3JlYWQnXG5pbXBvcnQgeyBidWlsZEZpbmRNYW55QXJncyB9IGZyb20gJy4vYnVpbGRGaW5kTWFueUFyZ3MnXG5pbXBvcnQgeyBjaGFpbk1ldGhvZHMgfSBmcm9tICcuL2NoYWluTWV0aG9kcydcblxudHlwZSBBcmdzID0gT21pdDxGaW5kQXJncywgJ2NvbGxlY3Rpb24nPiAmIHtcbiAgYWRhcHRlcjogUG9zdGdyZXNBZGFwdGVyXG4gIGZpZWxkczogRmllbGRbXVxuICB0YWJsZU5hbWU6IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgZmluZE1hbnkgPSBhc3luYyBmdW5jdGlvbiBmaW5kKHtcbiAgYWRhcHRlcixcbiAgZmllbGRzLFxuICBsaW1pdDogbGltaXRBcmcsXG4gIGxvY2FsZSxcbiAgcGFnZSA9IDEsXG4gIHBhZ2luYXRpb24sXG4gIHJlcSA9IHt9IGFzIFBheWxvYWRSZXF1ZXN0LFxuICBza2lwLFxuICBzb3J0LFxuICB0YWJsZU5hbWUsXG4gIHdoZXJlOiB3aGVyZUFyZyxcbn06IEFyZ3MpIHtcbiAgY29uc3QgZGIgPSBhZGFwdGVyLnNlc3Npb25zW3JlcS50cmFuc2FjdGlvbklEXT8uZGIgfHwgYWRhcHRlci5kcml6emxlXG4gIGNvbnN0IHRhYmxlID0gYWRhcHRlci50YWJsZXNbdGFibGVOYW1lXVxuXG4gIGNvbnN0IGxpbWl0ID0gbGltaXRBcmcgPz8gMTBcbiAgbGV0IHRvdGFsRG9jczogbnVtYmVyXG4gIGxldCB0b3RhbFBhZ2VzOiBudW1iZXJcbiAgbGV0IGhhc1ByZXZQYWdlOiBib29sZWFuXG4gIGxldCBoYXNOZXh0UGFnZTogYm9vbGVhblxuICBsZXQgcGFnaW5nQ291bnRlcjogbnVtYmVyXG4gIGxldCBzZWxlY3REaXN0aW5jdFJlc3VsdFxuXG4gIGNvbnN0IHsgam9pbkFsaWFzZXMsIGpvaW5zLCBvcmRlckJ5LCBzZWxlY3RGaWVsZHMsIHdoZXJlIH0gPSBhd2FpdCBidWlsZFF1ZXJ5KHtcbiAgICBhZGFwdGVyLFxuICAgIGZpZWxkcyxcbiAgICBsb2NhbGUsXG4gICAgc29ydCxcbiAgICB0YWJsZU5hbWUsXG4gICAgd2hlcmU6IHdoZXJlQXJnLFxuICB9KVxuXG4gIGNvbnN0IG9yZGVyZWRJRE1hcDogUmVjb3JkPG51bWJlciB8IHN0cmluZywgbnVtYmVyPiA9IHt9XG4gIGxldCBvcmRlcmVkSURzOiAobnVtYmVyIHwgc3RyaW5nKVtdXG5cbiAgY29uc3Qgc2VsZWN0RGlzdGluY3RNZXRob2RzOiBDaGFpbmVkTWV0aG9kcyA9IFtdXG5cbiAgaWYgKG9yZGVyQnk/Lm9yZGVyICYmIG9yZGVyQnk/LmNvbHVtbikge1xuICAgIHNlbGVjdERpc3RpbmN0TWV0aG9kcy5wdXNoKHtcbiAgICAgIGFyZ3M6IFtvcmRlckJ5Lm9yZGVyKG9yZGVyQnkuY29sdW1uKV0sXG4gICAgICBtZXRob2Q6ICdvcmRlckJ5JyxcbiAgICB9KVxuICB9XG5cbiAgY29uc3QgZmluZE1hbnlBcmdzID0gYnVpbGRGaW5kTWFueUFyZ3Moe1xuICAgIGFkYXB0ZXIsXG4gICAgZGVwdGg6IDAsXG4gICAgZmllbGRzLFxuICAgIHRhYmxlTmFtZSxcbiAgfSlcblxuICAvLyBvbmx5IGZldGNoIElEcyB3aGVuIGEgc29ydCBvciB3aGVyZSBxdWVyeSBpcyB1c2VkIHRoYXQgbmVlZHMgdG8gYmUgZG9uZSBvbiBqb2luIHRhYmxlcywgb3RoZXJ3aXNlIHRoZXNlIGNhbiBiZSBkb25lIGRpcmVjdGx5IG9uIHRoZSB0YWJsZSBpbiBmaW5kTWFueVxuICBpZiAoT2JqZWN0LmtleXMoam9pbnMpLmxlbmd0aCA+IDAgfHwgam9pbkFsaWFzZXMubGVuZ3RoID4gMCkge1xuICAgIGlmICh3aGVyZSkge1xuICAgICAgc2VsZWN0RGlzdGluY3RNZXRob2RzLnB1c2goeyBhcmdzOiBbd2hlcmVdLCBtZXRob2Q6ICd3aGVyZScgfSlcbiAgICB9XG5cbiAgICBqb2luQWxpYXNlcy5mb3JFYWNoKCh7IGNvbmRpdGlvbiwgdGFibGUgfSkgPT4ge1xuICAgICAgc2VsZWN0RGlzdGluY3RNZXRob2RzLnB1c2goe1xuICAgICAgICBhcmdzOiBbdGFibGUsIGNvbmRpdGlvbl0sXG4gICAgICAgIG1ldGhvZDogJ2xlZnRKb2luJyxcbiAgICAgIH0pXG4gICAgfSlcblxuICAgIE9iamVjdC5lbnRyaWVzKGpvaW5zKS5mb3JFYWNoKChbam9pblRhYmxlLCBjb25kaXRpb25dKSA9PiB7XG4gICAgICBpZiAoam9pblRhYmxlKSB7XG4gICAgICAgIHNlbGVjdERpc3RpbmN0TWV0aG9kcy5wdXNoKHtcbiAgICAgICAgICBhcmdzOiBbYWRhcHRlci50YWJsZXNbam9pblRhYmxlXSwgY29uZGl0aW9uXSxcbiAgICAgICAgICBtZXRob2Q6ICdsZWZ0Sm9pbicsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSlcblxuICAgIHNlbGVjdERpc3RpbmN0TWV0aG9kcy5wdXNoKHsgYXJnczogW3NraXAgfHwgKHBhZ2UgLSAxKSAqIGxpbWl0XSwgbWV0aG9kOiAnb2Zmc2V0JyB9KVxuICAgIHNlbGVjdERpc3RpbmN0TWV0aG9kcy5wdXNoKHsgYXJnczogW2xpbWl0ID09PSAwID8gdW5kZWZpbmVkIDogbGltaXRdLCBtZXRob2Q6ICdsaW1pdCcgfSlcblxuICAgIHNlbGVjdERpc3RpbmN0UmVzdWx0ID0gYXdhaXQgY2hhaW5NZXRob2RzKHtcbiAgICAgIG1ldGhvZHM6IHNlbGVjdERpc3RpbmN0TWV0aG9kcyxcbiAgICAgIHF1ZXJ5OiBkYi5zZWxlY3REaXN0aW5jdChzZWxlY3RGaWVsZHMpLmZyb20odGFibGUpLFxuICAgIH0pXG5cbiAgICBpZiAoc2VsZWN0RGlzdGluY3RSZXN1bHQubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBkb2NzOiBbXSxcbiAgICAgICAgaGFzTmV4dFBhZ2U6IGZhbHNlLFxuICAgICAgICBoYXNQcmV2UGFnZTogZmFsc2UsXG4gICAgICAgIGxpbWl0LFxuICAgICAgICBuZXh0UGFnZTogbnVsbCxcbiAgICAgICAgcGFnZTogMSxcbiAgICAgICAgcGFnaW5nQ291bnRlcjogMCxcbiAgICAgICAgcHJldlBhZ2U6IG51bGwsXG4gICAgICAgIHRvdGFsRG9jczogMCxcbiAgICAgICAgdG90YWxQYWdlczogMCxcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gc2V0IHRoZSBpZCBpbiBhbiBvYmplY3QgZm9yIHNvcnRpbmcgbGF0ZXJcbiAgICBzZWxlY3REaXN0aW5jdFJlc3VsdC5mb3JFYWNoKCh7IGlkIH0sIGkpID0+IHtcbiAgICAgIG9yZGVyZWRJRE1hcFtpZCBhcyBudW1iZXIgfCBzdHJpbmddID0gaVxuICAgIH0pXG4gICAgb3JkZXJlZElEcyA9IE9iamVjdC5rZXlzKG9yZGVyZWRJRE1hcClcbiAgICBmaW5kTWFueUFyZ3Mud2hlcmUgPSBpbkFycmF5KGFkYXB0ZXIudGFibGVzW3RhYmxlTmFtZV0uaWQsIG9yZGVyZWRJRHMpXG4gIH0gZWxzZSB7XG4gICAgZmluZE1hbnlBcmdzLmxpbWl0ID0gbGltaXRBcmcgPT09IDAgPyB1bmRlZmluZWQgOiBsaW1pdEFyZ1xuXG4gICAgY29uc3Qgb2Zmc2V0ID0gc2tpcCB8fCAocGFnZSAtIDEpICogbGltaXRBcmdcblxuICAgIGlmICghTnVtYmVyLmlzTmFOKG9mZnNldCkpIGZpbmRNYW55QXJncy5vZmZzZXQgPSBvZmZzZXRcblxuICAgIGlmICh3aGVyZSkge1xuICAgICAgZmluZE1hbnlBcmdzLndoZXJlID0gd2hlcmVcbiAgICB9XG4gICAgZmluZE1hbnlBcmdzLm9yZGVyQnkgPSBvcmRlckJ5Lm9yZGVyKG9yZGVyQnkuY29sdW1uKVxuICB9XG5cbiAgY29uc3QgZmluZFByb21pc2UgPSBkYi5xdWVyeVt0YWJsZU5hbWVdLmZpbmRNYW55KGZpbmRNYW55QXJncylcblxuICBpZiAocGFnaW5hdGlvbiAhPT0gZmFsc2UgJiYgKG9yZGVyZWRJRHMgPyBvcmRlcmVkSURzPy5sZW5ndGggPj0gbGltaXQgOiB0cnVlKSkge1xuICAgIGNvbnN0IHNlbGVjdENvdW50TWV0aG9kczogQ2hhaW5lZE1ldGhvZHMgPSBbXVxuXG4gICAgam9pbkFsaWFzZXMuZm9yRWFjaCgoeyBjb25kaXRpb24sIHRhYmxlIH0pID0+IHtcbiAgICAgIHNlbGVjdENvdW50TWV0aG9kcy5wdXNoKHtcbiAgICAgICAgYXJnczogW3RhYmxlLCBjb25kaXRpb25dLFxuICAgICAgICBtZXRob2Q6ICdsZWZ0Sm9pbicsXG4gICAgICB9KVxuICAgIH0pXG5cbiAgICBPYmplY3QuZW50cmllcyhqb2lucykuZm9yRWFjaCgoW2pvaW5UYWJsZSwgY29uZGl0aW9uXSkgPT4ge1xuICAgICAgaWYgKGpvaW5UYWJsZSkge1xuICAgICAgICBzZWxlY3RDb3VudE1ldGhvZHMucHVzaCh7XG4gICAgICAgICAgYXJnczogW2FkYXB0ZXIudGFibGVzW2pvaW5UYWJsZV0sIGNvbmRpdGlvbl0sXG4gICAgICAgICAgbWV0aG9kOiAnbGVmdEpvaW4nLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0pXG5cbiAgICBjb25zdCBjb3VudFJlc3VsdCA9IGF3YWl0IGNoYWluTWV0aG9kcyh7XG4gICAgICBtZXRob2RzOiBzZWxlY3RDb3VudE1ldGhvZHMsXG4gICAgICBxdWVyeTogZGJcbiAgICAgICAgLnNlbGVjdCh7XG4gICAgICAgICAgY291bnQ6IHNxbDxudW1iZXI+YGNvdW50XG4gICAgICAgICAgICAgIChESVNUSU5DVCAke2FkYXB0ZXIudGFibGVzW3RhYmxlTmFtZV0uaWR9KWAsXG4gICAgICAgIH0pXG4gICAgICAgIC5mcm9tKHRhYmxlKVxuICAgICAgICAud2hlcmUod2hlcmUpLFxuICAgIH0pXG4gICAgdG90YWxEb2NzID0gTnVtYmVyKGNvdW50UmVzdWx0WzBdLmNvdW50KVxuICAgIHRvdGFsUGFnZXMgPSB0eXBlb2YgbGltaXQgPT09ICdudW1iZXInICYmIGxpbWl0ICE9PSAwID8gTWF0aC5jZWlsKHRvdGFsRG9jcyAvIGxpbWl0KSA6IDFcbiAgICBoYXNQcmV2UGFnZSA9IHBhZ2UgPiAxXG4gICAgaGFzTmV4dFBhZ2UgPSB0b3RhbFBhZ2VzID4gcGFnZVxuICAgIHBhZ2luZ0NvdW50ZXIgPSAocGFnZSAtIDEpICogbGltaXQgKyAxXG4gIH1cblxuICBjb25zdCByYXdEb2NzID0gYXdhaXQgZmluZFByb21pc2VcbiAgLy8gc29ydCByYXdEb2NzIGZyb20gc2VsZWN0UXVlcnlcbiAgaWYgKE9iamVjdC5rZXlzKG9yZGVyZWRJRE1hcCkubGVuZ3RoID4gMCkge1xuICAgIHJhd0RvY3Muc29ydCgoYSwgYikgPT4gb3JkZXJlZElETWFwW2EuaWRdIC0gb3JkZXJlZElETWFwW2IuaWRdKVxuICB9XG5cbiAgaWYgKHBhZ2luYXRpb24gPT09IGZhbHNlIHx8ICF0b3RhbERvY3MpIHtcbiAgICB0b3RhbERvY3MgPSByYXdEb2NzLmxlbmd0aFxuICAgIHRvdGFsUGFnZXMgPSAxXG4gICAgcGFnaW5nQ291bnRlciA9IDFcbiAgICBoYXNQcmV2UGFnZSA9IGZhbHNlXG4gICAgaGFzTmV4dFBhZ2UgPSBmYWxzZVxuICB9XG5cbiAgY29uc3QgZG9jcyA9IHJhd0RvY3MubWFwKChkYXRhOiBUeXBlV2l0aElEKSA9PiB7XG4gICAgcmV0dXJuIHRyYW5zZm9ybSh7XG4gICAgICBjb25maWc6IGFkYXB0ZXIucGF5bG9hZC5jb25maWcsXG4gICAgICBkYXRhLFxuICAgICAgZmllbGRzLFxuICAgIH0pXG4gIH0pXG5cbiAgcmV0dXJuIHtcbiAgICBkb2NzLFxuICAgIGhhc05leHRQYWdlLFxuICAgIGhhc1ByZXZQYWdlLFxuICAgIGxpbWl0LFxuICAgIG5leHRQYWdlOiBoYXNOZXh0UGFnZSA/IHBhZ2UgKyAxIDogbnVsbCxcbiAgICBwYWdlLFxuICAgIHBhZ2luZ0NvdW50ZXIsXG4gICAgcHJldlBhZ2U6IGhhc1ByZXZQYWdlID8gcGFnZSAtIDEgOiBudWxsLFxuICAgIHRvdGFsRG9jcyxcbiAgICB0b3RhbFBhZ2VzLFxuICB9XG59XG4iXSwibmFtZXMiOlsiZmluZE1hbnkiLCJmaW5kIiwiYWRhcHRlciIsImZpZWxkcyIsImxpbWl0IiwibGltaXRBcmciLCJsb2NhbGUiLCJwYWdlIiwicGFnaW5hdGlvbiIsInJlcSIsInNraXAiLCJzb3J0IiwidGFibGVOYW1lIiwid2hlcmUiLCJ3aGVyZUFyZyIsImRiIiwic2Vzc2lvbnMiLCJ0cmFuc2FjdGlvbklEIiwiZHJpenpsZSIsInRhYmxlIiwidGFibGVzIiwidG90YWxEb2NzIiwidG90YWxQYWdlcyIsImhhc1ByZXZQYWdlIiwiaGFzTmV4dFBhZ2UiLCJwYWdpbmdDb3VudGVyIiwic2VsZWN0RGlzdGluY3RSZXN1bHQiLCJqb2luQWxpYXNlcyIsImpvaW5zIiwib3JkZXJCeSIsInNlbGVjdEZpZWxkcyIsImJ1aWxkUXVlcnkiLCJvcmRlcmVkSURNYXAiLCJvcmRlcmVkSURzIiwic2VsZWN0RGlzdGluY3RNZXRob2RzIiwib3JkZXIiLCJjb2x1bW4iLCJwdXNoIiwiYXJncyIsIm1ldGhvZCIsImZpbmRNYW55QXJncyIsImJ1aWxkRmluZE1hbnlBcmdzIiwiZGVwdGgiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwiZm9yRWFjaCIsImNvbmRpdGlvbiIsImVudHJpZXMiLCJqb2luVGFibGUiLCJ1bmRlZmluZWQiLCJjaGFpbk1ldGhvZHMiLCJtZXRob2RzIiwicXVlcnkiLCJzZWxlY3REaXN0aW5jdCIsImZyb20iLCJkb2NzIiwibmV4dFBhZ2UiLCJwcmV2UGFnZSIsImlkIiwiaSIsImluQXJyYXkiLCJvZmZzZXQiLCJOdW1iZXIiLCJpc05hTiIsImZpbmRQcm9taXNlIiwic2VsZWN0Q291bnRNZXRob2RzIiwiY291bnRSZXN1bHQiLCJzZWxlY3QiLCJjb3VudCIsInNxbCIsIk1hdGgiLCJjZWlsIiwicmF3RG9jcyIsImEiLCJiIiwibWFwIiwiZGF0YSIsInRyYW5zZm9ybSIsImNvbmZpZyIsInBheWxvYWQiXSwibWFwcGluZ3MiOiI7Ozs7K0JBbUJhQTs7O2VBQUFBOzs7NEJBaEJnQjttRUFLTjtzQkFDRzttQ0FDUTs4QkFDTDs7Ozs7O0FBUXRCLE1BQU1BLFdBQVcsZUFBZUMsS0FBSyxFQUMxQ0MsT0FBTyxFQUNQQyxNQUFNLEVBQ05DLE9BQU9DLFFBQVEsRUFDZkMsTUFBTSxFQUNOQyxPQUFPLENBQUMsRUFDUkMsVUFBVSxFQUNWQyxNQUFNLENBQUMsQ0FBbUIsRUFDMUJDLElBQUksRUFDSkMsSUFBSSxFQUNKQyxTQUFTLEVBQ1RDLE9BQU9DLFFBQVEsRUFDVjtJQUNMLE1BQU1DLEtBQUtiLFFBQVFjLFFBQVEsQ0FBQ1AsSUFBSVEsYUFBYSxDQUFDLEVBQUVGLE1BQU1iLFFBQVFnQixPQUFPO0lBQ3JFLE1BQU1DLFFBQVFqQixRQUFRa0IsTUFBTSxDQUFDUixVQUFVO0lBRXZDLE1BQU1SLFFBQVFDLFlBQVk7SUFDMUIsSUFBSWdCO0lBQ0osSUFBSUM7SUFDSixJQUFJQztJQUNKLElBQUlDO0lBQ0osSUFBSUM7SUFDSixJQUFJQztJQUVKLE1BQU0sRUFBRUMsV0FBVyxFQUFFQyxLQUFLLEVBQUVDLE9BQU8sRUFBRUMsWUFBWSxFQUFFakIsS0FBSyxFQUFFLEdBQUcsTUFBTWtCLElBQUFBLG1CQUFVLEVBQUM7UUFDNUU3QjtRQUNBQztRQUNBRztRQUNBSztRQUNBQztRQUNBQyxPQUFPQztJQUNUO0lBRUEsTUFB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
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maW5kL2ZpbmRNYW55LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRmluZEFyZ3MgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuaW1wb3J0IHR5cGUgeyBGaWVsZCwgUGF5bG9hZFJlcXVlc3QsIFR5cGVXaXRoSUQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgeyBpbkFycmF5LCBzcWwgfSBmcm9tICdkcml6emxlLW9ybSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB0eXBlIHsgQ2hhaW5lZE1ldGhvZHMgfSBmcm9tICcuL2NoYWluTWV0aG9kcydcblxuaW1wb3J0IGJ1aWxkUXVlcnkgZnJvbSAnLi4vcXVlcmllcy9idWlsZFF1ZXJ5J1xuaW1wb3J0IHsgc2VsZWN0RGlzdGluY3QgfSBmcm9tICcuLi9xdWVyaWVzL3NlbGVjdERpc3RpbmN0J1xuaW1wb3J0IHsgdHJhbnNmb3JtIH0gZnJvbSAnLi4vdHJhbnNmb3JtL3JlYWQnXG5pbXBvcnQgeyBidWlsZEZpbmRNYW55QXJncyB9IGZyb20gJy4vYnVpbGRGaW5kTWFueUFyZ3MnXG5pbXBvcnQgeyBjaGFpbk1ldGhvZHMgfSBmcm9tICcuL2NoYWluTWV0aG9kcydcblxudHlwZSBBcmdzID0gT21pdDxGaW5kQXJncywgJ2NvbGxlY3Rpb24nPiAmIHtcbiAgYWRhcHRlcjogUG9zdGdyZXNBZGFwdGVyXG4gIGZpZWxkczogRmllbGRbXVxuICB0YWJsZU5hbWU6IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgZmluZE1hbnkgPSBhc3luYyBmdW5jdGlvbiBmaW5kKHtcbiAgYWRhcHRlcixcbiAgZmllbGRzLFxuICBsaW1pdDogbGltaXRBcmcsXG4gIGxvY2FsZSxcbiAgcGFnZSA9IDEsXG4gIHBhZ2luYXRpb24sXG4gIHJlcSA9IHt9IGFzIFBheWxvYWRSZXF1ZXN0LFxuICBza2lwLFxuICBzb3J0LFxuICB0YWJsZU5hbWUsXG4gIHdoZXJlOiB3aGVyZUFyZyxcbn06IEFyZ3MpIHtcbiAgY29uc3QgZGIgPSBhZGFwdGVyLnNlc3Npb25zW3JlcS50cmFuc2FjdGlvbklEXT8uZGIgfHwgYWRhcHRlci5kcml6emxlXG4gIGNvbnN0IHRhYmxlID0gYWRhcHRlci50YWJsZXNbdGFibGVOYW1lXVxuXG4gIGNvbnN0IGxpbWl0ID0gbGltaXRBcmcgPz8gMTBcbiAgbGV0IHRvdGFsRG9jczogbnVtYmVyXG4gIGxldCB0b3RhbFBhZ2VzOiBudW1iZXJcbiAgbGV0IGhhc1ByZXZQYWdlOiBib29sZWFuXG4gIGxldCBoYXNOZXh0UGFnZTogYm9vbGVhblxuICBsZXQgcGFnaW5nQ291bnRlcjogbnVtYmVyXG5cbiAgY29uc3QgeyBqb2luQWxpYXNlcywgam9pbnMsIG9yZGVyQnksIHNlbGVjdEZpZWxkcywgd2hlcmUgfSA9IGF3YWl0IGJ1aWxkUXVlcnkoe1xuICAgIGFkYXB0ZXIsXG4gICAgZmllbGRzLFxuICAgIGxvY2FsZSxcbiAgICBzb3J0LFxuICAgIHRhYmxlTmFtZSxcbiAgICB3aGVyZTogd2hlcmVBcmcsXG4gIH0pXG5cbiAgY29uc3Qgb3JkZXJlZElETWFwOiBSZWNvcmQ8bnVtYmVyIHwgc3RyaW5nLCBudW1iZXI+ID0ge31cbiAgbGV0IG9yZGVyZWRJRHM6IChudW1iZXIgfCBzdHJpbmcpW11cblxuICBjb25zdCBzZWxlY3REaXN0aW5jdE1ldGhvZHM6IENoYWluZWRNZXRob2RzID0gW11cblxuICBpZiAob3JkZXJCeT8ub3JkZXIgJiYgb3JkZXJCeT8uY29sdW1uKSB7XG4gICAgc2VsZWN0RGlzdGluY3RNZXRob2RzLnB1c2goe1xuICAgICAgYXJnczogW29yZGVyQnkub3JkZXIob3JkZXJCeS5jb2x1bW4pXSxcbiAgICAgIG1ldGhvZDogJ29yZGVyQnknLFxuICAgIH0pXG4gIH1cblxuICBjb25zdCBmaW5kTWFueUFyZ3MgPSBidWlsZEZpbmRNYW55QXJncyh7XG4gICAgYWRhcHRlcixcbiAgICBkZXB0aDogMCxcbiAgICBmaWVsZHMsXG4gICAgdGFibGVOYW1lLFxuICB9KVxuXG4gIHNlbGVjdERpc3RpbmN0TWV0aG9kcy5wdXNoKHsgYXJnczogW3NraXAgfHwgKHBhZ2UgLSAxKSAqIGxpbWl0XSwgbWV0aG9kOiAnb2Zmc2V0JyB9KVxuICBzZWxlY3REaXN0aW5jdE1ldGhvZHMucHVzaCh7IGFyZ3M6IFtsaW1pdCA9PT0gMCA/IHVuZGVmaW5lZCA6IGxpbWl0XSwgbWV0aG9kOiAnbGltaXQnIH0pXG5cbiAgY29uc3Qgc2VsZWN0RGlzdGluY3RSZXN1bHQgPSBhd2FpdCBzZWxlY3REaXN0aW5jdCh7XG4gICAgYWRhcHRlcixcbiAgICBjaGFpbmVkTWV0aG9kczogc2VsZWN0RGlzdGluY3RNZXRob2RzLFxuICAgIGRiLFxuICAgIGpvaW5BbGlhc2VzLFxuICAgIGpvaW5zLFxuICAgIHNlbGVjdEZpZWxkcyxcbiAgICB0YWJsZU5hbWUsXG4gICAgd2hlcmUsXG4gIH0pXG5cbiAgaWYgKHNlbGVjdERpc3RpbmN0UmVzdWx0KSB7XG4gICAgaWYgKHNlbGVjdERpc3RpbmN0UmVzdWx0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZG9jczogW10sXG4gICAgICAgIGhhc05leHRQYWdlOiBmYWxzZSxcbiAgICAgICAgaGFzUHJldlBhZ2U6IGZhbHNlLFxuICAgICAgICBsaW1pdCxcbiAgICAgICAgbmV4dFBhZ2U6IG51bGwsXG4gICAgICAgIHBhZ2U6IDEsXG4gICAgICAgIHBhZ2luZ0NvdW50ZXI6IDAsXG4gICAgICAgIHByZXZQYWdlOiBudWxsLFxuICAgICAgICB0b3RhbERvY3M6IDAsXG4gICAgICAgIHRvdGFsUGFnZXM6IDAsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHNldCB0aGUgaWQgaW4gYW4gb2JqZWN0IGZvciBzb3J0aW5nIGxhdGVyXG4gICAgICBzZWxlY3REaXN0aW5jdFJlc3VsdC5mb3JFYWNoKCh7IGlkIH0sIGkpID0+IHtcbiAgICAgICAgb3JkZXJlZElETWFwW2lkXSA9IGlcbiAgICAgIH0pXG4gICAgICBvcmRlcmVkSURzID0gT2JqZWN0LmtleXMob3JkZXJlZElETWFwKVxuICAgICAgZmluZE1hbnlBcmdzLndoZXJlID0gaW5BcnJheShhZGFwdGVyLnRhYmxlc1t0YWJsZU5hbWVdLmlkLCBvcmRlcmVkSURzKVxuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBmaW5kTWFueUFyZ3MubGltaXQgPSBsaW1pdEFyZyA9PT0gMCA/IHVuZGVmaW5lZCA6IGxpbWl0QXJnXG5cbiAgICBjb25zdCBvZmZzZXQgPSBza2lwIHx8IChwYWdlIC0gMSkgKiBsaW1pdEFyZ1xuXG4gICAgaWYgKCFOdW1iZXIuaXNOYU4ob2Zmc2V0KSkgZmluZE1hbnlBcmdzLm9mZnNldCA9IG9mZnNldFxuXG4gICAgaWYgKHdoZXJlKSB7XG4gICAgICBmaW5kTWFueUFyZ3Mud2hlcmUgPSB3aGVyZVxuICAgIH1cbiAgICBmaW5kTWFueUFyZ3Mub3JkZXJCeSA9IG9yZGVyQnkub3JkZXIob3JkZXJCeS5jb2x1bW4pXG4gIH1cblxuICBjb25zdCBmaW5kUHJvbWlzZSA9IGRiLnF1ZXJ5W3RhYmxlTmFtZV0uZmluZE1hbnkoZmluZE1hbnlBcmdzKVxuXG4gIGlmIChwYWdpbmF0aW9uICE9PSBmYWxzZSAmJiAob3JkZXJlZElEcyA/IG9yZGVyZWRJRHM/Lmxlbmd0aCA+PSBsaW1pdCA6IHRydWUpKSB7XG4gICAgY29uc3Qgc2VsZWN0Q291bnRNZXRob2RzOiBDaGFpbmVkTWV0aG9kcyA9IFtdXG5cbiAgICBqb2luQWxpYXNlcy5mb3JFYWNoKCh7IGNvbmRpdGlvbiwgdGFibGUgfSkgPT4ge1xuICAgICAgc2VsZWN0Q291bnRNZXRob2RzLnB1c2goe1xuICAgICAgICBhcmdzOiBbdGFibGUsIGNvbmRpdGlvbl0sXG4gICAgICAgIG1ldGhvZDogJ2xlZnRKb2luJyxcbiAgICAgIH0pXG4gICAgfSlcblxuICAgIE9iamVjdC5lbnRyaWVzKGpvaW5zKS5mb3JFYWNoKChbam9pblRhYmxlLCBjb25kaXRpb25dKSA9PiB7XG4gICAgICBpZiAoam9pblRhYmxlKSB7XG4gICAgICAgIHNlbGVjdENvdW50TWV0aG9kcy5wdXNoKHtcbiAgICAgICAgICBhcmdzOiBbYWRhcHRlci50YWJsZXNbam9pblRhYmxlXSwgY29uZGl0aW9uXSxcbiAgICAgICAgICBtZXRob2Q6ICdsZWZ0Sm9pbicsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSlcblxuICAgIGNvbnN0IGNvdW50UmVzdWx0ID0gYXdhaXQgY2hhaW5NZXRob2RzKHtcbiAgICAgIG1ldGhvZHM6IHNlbGVjdENvdW50TWV0aG9kcyxcbiAgICAgIHF1ZXJ5OiBkYlxuICAgICAgICAuc2VsZWN0KHtcbiAgICAgICAgICBjb3VudDogc3FsPG51bWJlcj5gY291bnRcbiAgICAgICAgICAgICAgKERJU1RJTkNUICR7YWRhcHRlci50YWJsZXNbdGFibGVOYW1lXS5pZH0pYCxcbiAgICAgICAgfSlcbiAgICAgICAgLmZyb20odGFibGUpXG4gICAgICAgIC53aGVyZSh3aGVyZSksXG4gICAgfSlcbiAgICB0b3RhbERvY3MgPSBOdW1iZXIoY291bnRSZXN1bHRbMF0uY291bnQpXG4gICAgdG90YWxQYWdlcyA9IHR5cGVvZiBsaW1pdCA9PT0gJ251bWJlcicgJiYgbGltaXQgIT09IDAgPyBNYXRoLmNlaWwodG90YWxEb2NzIC8gbGltaXQpIDogMVxuICAgIGhhc1ByZXZQYWdlID0gcGFnZSA+IDFcbiAgICBoYXNOZXh0UGFnZSA9IHRvdGFsUGFnZXMgPiBwYWdlXG4gICAgcGFnaW5nQ291bnRlciA9IChwYWdlIC0gMSkgKiBsaW1pdCArIDFcbiAgfVxuXG4gIGNvbnN0IHJhd0RvY3MgPSBhd2FpdCBmaW5kUHJvbWlzZVxuICAvLyBzb3J0IHJhd0RvY3MgZnJvbSBzZWxlY3RRdWVyeVxuICBpZiAoT2JqZWN0LmtleXMob3JkZXJlZElETWFwKS5sZW5ndGggPiAwKSB7XG4gICAgcmF3RG9jcy5zb3J0KChhLCBiKSA9PiBvcmRlcmVkSURNYXBbYS5pZF0gLSBvcmRlcmVkSURNYXBbYi5pZF0pXG4gIH1cblxuICBpZiAocGFnaW5hdGlvbiA9PT0gZmFsc2UgfHwgIXRvdGFsRG9jcykge1xuICAgIHRvdGFsRG9jcyA9IHJhd0RvY3MubGVuZ3RoXG4gICAgdG90YWxQYWdlcyA9IDFcbiAgICBwYWdpbmdDb3VudGVyID0gMVxuICAgIGhhc1ByZXZQYWdlID0gZmFsc2VcbiAgICBoYXNOZXh0UGFnZSA9IGZhbHNlXG4gIH1cblxuICBjb25zdCBkb2NzID0gcmF3RG9jcy5tYXAoKGRhdGE6IFR5cGVXaXRoSUQpID0+IHtcbiAgICByZXR1cm4gdHJhbnNmb3JtKHtcbiAgICAgIGNvbmZpZzogYWRhcHRlci5wYXlsb2FkLmNvbmZpZyxcbiAgICAgIGRhdGEsXG4gICAgICBmaWVsZHMsXG4gICAgfSlcbiAgfSlcblxuICByZXR1cm4ge1xuICAgIGRvY3MsXG4gICAgaGFzTmV4dFBhZ2UsXG4gICAgaGFzUHJldlBhZ2UsXG4gICAgbGltaXQsXG4gICAgbmV4dFBhZ2U6IGhhc05leHRQYWdlID8gcGFnZSArIDEgOiBudWxsLFxuICAgIHBhZ2UsXG4gICAgcGFnaW5nQ291bnRlcixcbiAgICBwcmV2UGFnZTogaGFzUHJldlBhZ2UgPyBwYWdlIC0gMSA6IG51bGwsXG4gICAgdG90YWxEb2NzLFxuICAgIHRvdGFsUGFnZXMsXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJmaW5kTWFueSIsImZpbmQiLCJhZGFwdGVyIiwiZmllbGRzIiwibGltaXQiLCJsaW1pdEFyZyIsImxvY2FsZSIsInBhZ2UiLCJwYWdpbmF0aW9uIiwicmVxIiwic2tpcCIsInNvcnQiLCJ0YWJsZU5hbWUiLCJ3aGVyZSIsIndoZXJlQXJnIiwiZGIiLCJzZXNzaW9ucyIsInRyYW5zYWN0aW9uSUQiLCJkcml6emxlIiwidGFibGUiLCJ0YWJsZXMiLCJ0b3RhbERvY3MiLCJ0b3RhbFBhZ2VzIiwiaGFzUHJldlBhZ2UiLCJoYXNOZXh0UGFnZSIsInBhZ2luZ0NvdW50ZXIiLCJqb2luQWxpYXNlcyIsImpvaW5zIiwib3JkZXJCeSIsInNlbGVjdEZpZWxkcyIsImJ1aWxkUXVlcnkiLCJvcmRlcmVkSURNYXAiLCJvcmRlcmVkSURzIiwic2VsZWN0RGlzdGluY3RNZXRob2RzIiwib3JkZXIiLCJjb2x1bW4iLCJwdXNoIiwiYXJncyIsIm1ldGhvZCIsImZpbmRNYW55QXJncyIsImJ1aWxkRmluZE1hbnlBcmdzIiwiZGVwdGgiLCJ1bmRlZmluZWQiLCJzZWxlY3REaXN0aW5jdFJlc3VsdCIsInNlbGVjdERpc3RpbmN0IiwiY2hhaW5lZE1ldGhvZHMiLCJsZW5ndGgiLCJkb2NzIiwibmV4dFBhZ2UiLCJwcmV2UGFnZSIsImZvckVhY2giLCJpZCIsImkiLCJPYmplY3QiLCJrZXlzIiwiaW5BcnJheSIsIm9mZnNldCIsIk51bWJlciIsImlzTmFOIiwiZmluZFByb21pc2UiLCJxdWVyeSIsInNlbGVjdENvdW50TWV0aG9kcyIsImNvbmRpdGlvbiIsImVudHJpZXMiLCJqb2luVGFibGUiLCJjb3VudFJlc3VsdCIsImNoYWluTWV0aG9kcyIsIm1ldGhvZHMiLCJzZWxlY3QiLCJjb3VudCIsInNxbCIsImZyb20iLCJNYXRoIiwiY2VpbCIsInJhd0RvY3MiLCJhIiwiYiIsIm1hcCIsImRhdGEiLCJ0cmFuc2Zvcm0iLCJjb25maWciLCJwYXlsb2FkIl0sIm1hcHBpbmdzIjoiOzs7OytCQW9CYUE7OztlQUFBQTs7OzRCQWpCZ0I7bUVBS047Z0NBQ1E7c0JBQ0w7bUNBQ1E7OEJBQ0w7Ozs7OztBQVF0QixNQUFNQSxXQUFXLGVBQWVDLEtBQUssRUFDMUNDLE9BQU8sRUFDUEMsTUFBTSxFQUNOQyxPQUFPQyxRQUFRLEVBQ2ZDLE1BQU0sRUFDTkMsT0FBTyxDQUFDLEVBQ1JDLFVBQVUsRUFDVkMsTUFBTSxDQUFDLENBQW1CLEVBQzFCQyxJQUFJLEVBQ0pDLElBQUksRUFDSkMsU0FBUyxFQUNUQyxPQUFPQyxRQUFRLEVBQ1Y7SUFDTCxNQUFNQyxLQUFLYixRQUFRYyxRQUFRLENBQUNQLElBQUlRLGFBQWEsQ0FBQyxFQUFFRixNQUFNYixR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
@@ -0,0 +1,23 @@
1
+ import type { QueryPromise, SQL } from 'drizzle-orm';
2
+ import type { ChainedMethods } from '../find/chainMethods';
3
+ import type { DrizzleDB, PostgresAdapter } from '../types';
4
+ import type { BuildQueryJoinAliases, BuildQueryJoins } from './buildQuery';
5
+ import { type GenericColumn } from '../types';
6
+ type Args = {
7
+ adapter: PostgresAdapter;
8
+ chainedMethods?: ChainedMethods;
9
+ db: DrizzleDB;
10
+ joinAliases: BuildQueryJoinAliases;
11
+ joins: BuildQueryJoins;
12
+ selectFields: Record<string, GenericColumn>;
13
+ tableName: string;
14
+ where: SQL;
15
+ };
16
+ /**
17
+ * Selects distinct records from a table only if there are joins that need to be used, otherwise return null
18
+ */
19
+ export declare const selectDistinct: ({ adapter, chainedMethods, db, joinAliases, joins, selectFields, tableName, where, }: Args) => QueryPromise<Record<string, GenericColumn> & {
20
+ id: number | string;
21
+ }[]>;
22
+ export {};
23
+ //# sourceMappingURL=selectDistinct.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selectDistinct.d.ts","sourceRoot":"","sources":["../../src/queries/selectDistinct.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAG1E,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAA;AAE7C,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,EAAE,EAAE,SAAS,CAAA;IACb,WAAW,EAAE,qBAAqB,CAAA;IAClC,KAAK,EAAE,eAAe,CAAA;IACtB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,GAAG,CAAA;CACX,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,yFASxB,IAAI,KAAG,aAAa,OAAO,MAAM,EAAE,aAAa,CAAC,GAAG;IAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAAE,CA2B/E,CAAA"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "selectDistinct", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return selectDistinct;
9
+ }
10
+ });
11
+ const _chainMethods = require("../find/chainMethods");
12
+ const selectDistinct = ({ adapter, chainedMethods = [], db, joinAliases, joins, selectFields, tableName, where })=>{
13
+ if (Object.keys(joins).length > 0 || joinAliases.length > 0) {
14
+ if (where) {
15
+ chainedMethods.push({
16
+ args: [
17
+ where
18
+ ],
19
+ method: 'where'
20
+ });
21
+ }
22
+ joinAliases.forEach(({ condition, table })=>{
23
+ chainedMethods.push({
24
+ args: [
25
+ table,
26
+ condition
27
+ ],
28
+ method: 'leftJoin'
29
+ });
30
+ });
31
+ Object.entries(joins).forEach(([joinTable, condition])=>{
32
+ if (joinTable) {
33
+ chainedMethods.push({
34
+ args: [
35
+ adapter.tables[joinTable],
36
+ condition
37
+ ],
38
+ method: 'leftJoin'
39
+ });
40
+ }
41
+ });
42
+ return (0, _chainMethods.chainMethods)({
43
+ methods: chainedMethods,
44
+ query: db.selectDistinct(selectFields).from(adapter.tables[tableName])
45
+ });
46
+ }
47
+ };
48
+
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9xdWVyaWVzL3NlbGVjdERpc3RpbmN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUXVlcnlQcm9taXNlLCBTUUwgfSBmcm9tICdkcml6emxlLW9ybSdcblxuaW1wb3J0IHR5cGUgeyBDaGFpbmVkTWV0aG9kcyB9IGZyb20gJy4uL2ZpbmQvY2hhaW5NZXRob2RzJ1xuaW1wb3J0IHR5cGUgeyBEcml6emxlREIsIFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBCdWlsZFF1ZXJ5Sm9pbkFsaWFzZXMsIEJ1aWxkUXVlcnlKb2lucyB9IGZyb20gJy4vYnVpbGRRdWVyeSdcblxuaW1wb3J0IHsgY2hhaW5NZXRob2RzIH0gZnJvbSAnLi4vZmluZC9jaGFpbk1ldGhvZHMnXG5pbXBvcnQgeyB0eXBlIEdlbmVyaWNDb2x1bW4gfSBmcm9tICcuLi90eXBlcydcblxudHlwZSBBcmdzID0ge1xuICBhZGFwdGVyOiBQb3N0Z3Jlc0FkYXB0ZXJcbiAgY2hhaW5lZE1ldGhvZHM/OiBDaGFpbmVkTWV0aG9kc1xuICBkYjogRHJpenpsZURCXG4gIGpvaW5BbGlhc2VzOiBCdWlsZFF1ZXJ5Sm9pbkFsaWFzZXNcbiAgam9pbnM6IEJ1aWxkUXVlcnlKb2luc1xuICBzZWxlY3RGaWVsZHM6IFJlY29yZDxzdHJpbmcsIEdlbmVyaWNDb2x1bW4+XG4gIHRhYmxlTmFtZTogc3RyaW5nXG4gIHdoZXJlOiBTUUxcbn1cblxuLyoqXG4gKiBTZWxlY3RzIGRpc3RpbmN0IHJlY29yZHMgZnJvbSBhIHRhYmxlIG9ubHkgaWYgdGhlcmUgYXJlIGpvaW5zIHRoYXQgbmVlZCB0byBiZSB1c2VkLCBvdGhlcndpc2UgcmV0dXJuIG51bGxcbiAqL1xuZXhwb3J0IGNvbnN0IHNlbGVjdERpc3RpbmN0ID0gKHtcbiAgYWRhcHRlcixcbiAgY2hhaW5lZE1ldGhvZHMgPSBbXSxcbiAgZGIsXG4gIGpvaW5BbGlhc2VzLFxuICBqb2lucyxcbiAgc2VsZWN0RmllbGRzLFxuICB0YWJsZU5hbWUsXG4gIHdoZXJlLFxufTogQXJncyk6IFF1ZXJ5UHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBHZW5lcmljQ29sdW1uPiAmIHsgaWQ6IG51bWJlciB8IHN0cmluZyB9W10+ID0+IHtcbiAgaWYgKE9iamVjdC5rZXlzKGpvaW5zKS5sZW5ndGggPiAwIHx8IGpvaW5BbGlhc2VzLmxlbmd0aCA+IDApIHtcbiAgICBpZiAod2hlcmUpIHtcbiAgICAgIGNoYWluZWRNZXRob2RzLnB1c2goeyBhcmdzOiBbd2hlcmVdLCBtZXRob2Q6ICd3aGVyZScgfSlcbiAgICB9XG5cbiAgICBqb2luQWxpYXNlcy5mb3JFYWNoKCh7IGNvbmRpdGlvbiwgdGFibGUgfSkgPT4ge1xuICAgICAgY2hhaW5lZE1ldGhvZHMucHVzaCh7XG4gICAgICAgIGFyZ3M6IFt0YWJsZSwgY29uZGl0aW9uXSxcbiAgICAgICAgbWV0aG9kOiAnbGVmdEpvaW4nLFxuICAgICAgfSlcbiAgICB9KVxuXG4gICAgT2JqZWN0LmVudHJpZXMoam9pbnMpLmZvckVhY2goKFtqb2luVGFibGUsIGNvbmRpdGlvbl0pID0+IHtcbiAgICAgIGlmIChqb2luVGFibGUpIHtcbiAgICAgICAgY2hhaW5lZE1ldGhvZHMucHVzaCh7XG4gICAgICAgICAgYXJnczogW2FkYXB0ZXIudGFibGVzW2pvaW5UYWJsZV0sIGNvbmRpdGlvbl0sXG4gICAgICAgICAgbWV0aG9kOiAnbGVmdEpvaW4nLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0pXG5cbiAgICByZXR1cm4gY2hhaW5NZXRob2RzKHtcbiAgICAgIG1ldGhvZHM6IGNoYWluZWRNZXRob2RzLFxuICAgICAgcXVlcnk6IGRiLnNlbGVjdERpc3RpbmN0KHNlbGVjdEZpZWxkcykuZnJvbShhZGFwdGVyLnRhYmxlc1t0YWJsZU5hbWVdKSxcbiAgICB9KVxuICB9XG59XG4iXSwibmFtZXMiOlsic2VsZWN0RGlzdGluY3QiLCJhZGFwdGVyIiwiY2hhaW5lZE1ldGhvZHMiLCJkYiIsImpvaW5BbGlhc2VzIiwiam9pbnMiLCJzZWxlY3RGaWVsZHMiLCJ0YWJsZU5hbWUiLCJ3aGVyZSIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJwdXNoIiwiYXJncyIsIm1ldGhvZCIsImZvckVhY2giLCJjb25kaXRpb24iLCJ0YWJsZSIsImVudHJpZXMiLCJqb2luVGFibGUiLCJ0YWJsZXMiLCJjaGFpbk1ldGhvZHMiLCJtZXRob2RzIiwicXVlcnkiLCJmcm9tIl0sIm1hcHBpbmdzIjoiOzs7OytCQXVCYUE7OztlQUFBQTs7OzhCQWpCZ0I7QUFpQnRCLE1BQU1BLGlCQUFpQixDQUFDLEVBQzdCQyxPQUFPLEVBQ1BDLGlCQUFpQixFQUFFLEVBQ25CQyxFQUFFLEVBQ0ZDLFdBQVcsRUFDWEMsS0FBSyxFQUNMQyxZQUFZLEVBQ1pDLFNBQVMsRUFDVEMsS0FBSyxFQUNBO0lBQ0wsSUFBSUMsT0FBT0MsSUFBSSxDQUFDTCxPQUFPTSxNQUFNLEdBQUcsS0FBS1AsWUFBWU8sTUFBTSxHQUFHLEdBQUc7UUFDM0QsSUFBSUgsT0FBTztZQUNUTixlQUFlVSxJQUFJLENBQUM7Z0JBQUVDLE1BQU07b0JBQUNMO2lCQUFNO2dCQUFFTSxRQUFRO1lBQVE7UUFDdkQ7UUFFQVYsWUFBWVcsT0FBTyxDQUFDLENBQUMsRUFBRUMsU0FBUyxFQUFFQyxLQUFLLEVBQUU7WUFDdkNmLGVBQWVVLElBQUksQ0FBQztnQkFDbEJDLE1BQU07b0JBQUNJO29CQUFPRDtpQkFBVTtnQkFDeEJGLFFBQVE7WUFDVjtRQUNGO1FBRUFMLE9BQU9TLE9BQU8sQ0FBQ2IsT0FBT1UsT0FBTyxDQUFDLENBQUMsQ0FBQ0ksV0FBV0gsVUFBVTtZQUNuRCxJQUFJRyxXQUFXO2dCQUNiakIsZUFBZVUsSUFBSSxDQUFDO29CQUNsQkMsTUFBTTt3QkFBQ1osUUFBUW1CLE1BQU0sQ0FBQ0QsVUFBVTt3QkFBRUg7cUJBQVU7b0JBQzVDRixRQUFRO2dCQUNWO1lBQ0Y7UUFDRjtRQUVBLE9BQU9PLElBQUFBLDBCQUFZLEVBQUM7WUFDbEJDLFNBQVNwQjtZQUNUcUIsT0FBT3BCLEdBQUdILGNBQWMsQ0FBQ00sY0FBY2tCLElBQUksQ0FBQ3ZCLFFBQVFtQixNQUFNLENBQUNiLFVBQVU7UUFDdkU7SUFDRjtBQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAUjD,eAAO,MAAM,SAAS,EAAE,SAmEvB,CAAA"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAUjD,eAAO,MAAM,SAAS,EAAE,SA6CvB,CAAA"}
package/dist/update.js CHANGED
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "updateOne", {
9
9
  }
10
10
  });
11
11
  const _tosnakecase = /*#__PURE__*/ _interop_require_default(require("to-snake-case"));
12
- const _chainMethods = require("./find/chainMethods");
13
12
  const _buildQuery = /*#__PURE__*/ _interop_require_default(require("./queries/buildQuery"));
13
+ const _selectDistinct = require("./queries/selectDistinct");
14
14
  const _upsertRow = require("./upsertRow");
15
15
  function _interop_require_default(obj) {
16
16
  return obj && obj.__esModule ? obj : {
@@ -26,6 +26,7 @@ const updateOne = async function updateOne({ id, collection: collectionSlug, dat
26
26
  equals: id
27
27
  }
28
28
  };
29
+ let idToUpdate = id;
29
30
  const { joinAliases, joins, selectFields, where } = await (0, _buildQuery.default)({
30
31
  adapter: this,
31
32
  fields: collection.fields,
@@ -33,51 +34,25 @@ const updateOne = async function updateOne({ id, collection: collectionSlug, dat
33
34
  tableName,
34
35
  where: whereToUse
35
36
  });
36
- let idToUpdate = id;
37
- // only fetch IDs when a sort or where query is used that needs to be done on join tables, otherwise these can be done directly on the table in findMany
38
- if (Object.keys(joins).length > 0 || joinAliases.length > 0) {
39
- const selectDistinctMethods = [];
40
- if (where) {
41
- selectDistinctMethods.push({
42
- args: [
43
- where
44
- ],
45
- method: 'where'
46
- });
47
- }
48
- joinAliases.forEach(({ condition, table })=>{
49
- selectDistinctMethods.push({
37
+ const selectDistinctResult = await (0, _selectDistinct.selectDistinct)({
38
+ adapter: this,
39
+ chainedMethods: [
40
+ {
50
41
  args: [
51
- table,
52
- condition
42
+ 1
53
43
  ],
54
- method: 'leftJoin'
55
- });
56
- });
57
- Object.entries(joins).forEach(([joinTable, condition])=>{
58
- if (joinTable) {
59
- selectDistinctMethods.push({
60
- args: [
61
- this.tables[joinTable],
62
- condition
63
- ],
64
- method: 'leftJoin'
65
- });
44
+ method: 'limit'
66
45
  }
67
- });
68
- selectDistinctMethods.push({
69
- args: [
70
- 1
71
- ],
72
- method: 'limit'
73
- });
74
- const selectDistinctResult = await (0, _chainMethods.chainMethods)({
75
- methods: selectDistinctMethods,
76
- query: db.selectDistinct(selectFields).from(this.tables[tableName])
77
- });
78
- if (selectDistinctResult?.[0]?.id) {
79
- idToUpdate = selectDistinctResult?.[0]?.id;
80
- }
46
+ ],
47
+ db,
48
+ joinAliases,
49
+ joins,
50
+ selectFields,
51
+ tableName,
52
+ where
53
+ });
54
+ if (selectDistinctResult?.[0]?.id) {
55
+ idToUpdate = selectDistinctResult?.[0]?.id;
81
56
  }
82
57
  const result = await (0, _upsertRow.upsertRow)({
83
58
  id: idToUpdate,
@@ -86,10 +61,10 @@ const updateOne = async function updateOne({ id, collection: collectionSlug, dat
86
61
  db,
87
62
  fields: collection.fields,
88
63
  operation: 'update',
89
- tableName: (0, _tosnakecase.default)(collectionSlug),
90
- req
64
+ req,
65
+ tableName: (0, _tosnakecase.default)(collectionSlug)
91
66
  });
92
67
  return result;
93
68
  };
94
69
 
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91cGRhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVcGRhdGVPbmUgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBDaGFpbmVkTWV0aG9kcyB9IGZyb20gJy4vZmluZC9jaGFpbk1ldGhvZHMnXG5pbXBvcnQgeyBjaGFpbk1ldGhvZHMgfSBmcm9tICcuL2ZpbmQvY2hhaW5NZXRob2RzJ1xuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuaW1wb3J0IGJ1aWxkUXVlcnkgZnJvbSAnLi9xdWVyaWVzL2J1aWxkUXVlcnknXG5pbXBvcnQgeyB1cHNlcnRSb3cgfSBmcm9tICcuL3Vwc2VydFJvdydcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZU9uZTogVXBkYXRlT25lID0gYXN5bmMgZnVuY3Rpb24gdXBkYXRlT25lKFxuICB0aGlzOiBQb3N0Z3Jlc0FkYXB0ZXIsXG4gIHsgaWQsIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25TbHVnLCBkYXRhLCBkcmFmdCwgbG9jYWxlLCByZXEsIHdoZXJlOiB3aGVyZUFyZyB9LFxuKSB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5wYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25TbHVnXS5jb25maWdcbiAgY29uc3QgdGFibGVOYW1lID0gdG9TbmFrZUNhc2UoY29sbGVjdGlvblNsdWcpXG4gIGNvbnN0IHdoZXJlVG9Vc2UgPSB3aGVyZUFyZyB8fCB7IGlkOiB7IGVxdWFsczogaWQgfSB9XG5cbiAgY29uc3QgeyBqb2luQWxpYXNlcywgam9pbnMsIHNlbGVjdEZpZWxkcywgd2hlcmUgfSA9IGF3YWl0IGJ1aWxkUXVlcnkoe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZmllbGRzOiBjb2xsZWN0aW9uLmZpZWxkcyxcbiAgICBsb2NhbGUsXG4gICAgdGFibGVOYW1lLFxuICAgIHdoZXJlOiB3aGVyZVRvVXNlLFxuICB9KVxuXG4gIGxldCBpZFRvVXBkYXRlID0gaWRcblxuICAvLyBvbmx5IGZldGNoIElEcyB3aGVuIGEgc29ydCBvciB3aGVyZSBxdWVyeSBpcyB1c2VkIHRoYXQgbmVlZHMgdG8gYmUgZG9uZSBvbiBqb2luIHRhYmxlcywgb3RoZXJ3aXNlIHRoZXNlIGNhbiBiZSBkb25lIGRpcmVjdGx5IG9uIHRoZSB0YWJsZSBpbiBmaW5kTWFueVxuICBpZiAoT2JqZWN0LmtleXMoam9pbnMpLmxlbmd0aCA+IDAgfHwgam9pbkFsaWFzZXMubGVuZ3RoID4gMCkge1xuICAgIGNvbnN0IHNlbGVjdERpc3RpbmN0TWV0aG9kczogQ2hhaW5lZE1ldGhvZHMgPSBbXVxuXG4gICAgaWYgKHdoZXJlKSB7XG4gICAgICBzZWxlY3REaXN0aW5jdE1ldGhvZHMucHVzaCh7IGFyZ3M6IFt3aGVyZV0sIG1ldGhvZDogJ3doZXJlJyB9KVxuICAgIH1cblxuICAgIGpvaW5BbGlhc2VzLmZvckVhY2goKHsgY29uZGl0aW9uLCB0YWJsZSB9KSA9PiB7XG4gICAgICBzZWxlY3REaXN0aW5jdE1ldGhvZHMucHVzaCh7XG4gICAgICAgIGFyZ3M6IFt0YWJsZSwgY29uZGl0aW9uXSxcbiAgICAgICAgbWV0aG9kOiAnbGVmdEpvaW4nLFxuICAgICAgfSlcbiAgICB9KVxuXG4gICAgT2JqZWN0LmVudHJpZXMoam9pbnMpLmZvckVhY2goKFtqb2luVGFibGUsIGNvbmRpdGlvbl0pID0+IHtcbiAgICAgIGlmIChqb2luVGFibGUpIHtcbiAgICAgICAgc2VsZWN0RGlzdGluY3RNZXRob2RzLnB1c2goe1xuICAgICAgICAgIGFyZ3M6IFt0aGlzLnRhYmxlc1tqb2luVGFibGVdLCBjb25kaXRpb25dLFxuICAgICAgICAgIG1ldGhvZDogJ2xlZnRKb2luJyxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgc2VsZWN0RGlzdGluY3RNZXRob2RzLnB1c2goeyBhcmdzOiBbMV0sIG1ldGhvZDogJ2xpbWl0JyB9KVxuXG4gICAgY29uc3Qgc2VsZWN0RGlzdGluY3RSZXN1bHQgPSBhd2FpdCBjaGFpbk1ldGhvZHMoe1xuICAgICAgbWV0aG9kczogc2VsZWN0RGlzdGluY3RNZXRob2RzLFxuICAgICAgcXVlcnk6IGRiLnNlbGVjdERpc3RpbmN0KHNlbGVjdEZpZWxkcykuZnJvbSh0aGlzLnRhYmxlc1t0YWJsZU5hbWVdKSxcbiAgICB9KVxuXG4gICAgaWYgKHNlbGVjdERpc3RpbmN0UmVzdWx0Py5bMF0/LmlkKSB7XG4gICAgICBpZFRvVXBkYXRlID0gc2VsZWN0RGlzdGluY3RSZXN1bHQ/LlswXT8uaWRcbiAgICB9XG4gIH1cblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCB1cHNlcnRSb3coe1xuICAgIGlkOiBpZFRvVXBkYXRlLFxuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24uZmllbGRzLFxuICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgdGFibGVOYW1lOiB0b1NuYWtlQ2FzZShjb2xsZWN0aW9uU2x1ZyksXG4gICAgcmVxLFxuICB9KVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJ1cGRhdGVPbmUiLCJpZCIsImNvbGxlY3Rpb24iLCJjb2xsZWN0aW9uU2x1ZyIsImRhdGEiLCJkcmFmdCIsImxvY2FsZSIsInJlcSIsIndoZXJlIiwid2hlcmVBcmciLCJkYiIsInNlc3Npb25zIiwidHJhbnNhY3Rpb25JRCIsImRyaXp6bGUiLCJwYXlsb2FkIiwiY29sbGVjdGlvbnMiLCJjb25maWciLCJ0YWJsZU5hbWUiLCJ0b1NuYWtlQ2FzZSIsIndoZXJlVG9Vc2UiLCJlcXVhbHMiLCJqb2luQWxpYXNlcyIsImpvaW5zIiwic2VsZWN0RmllbGRzIiwiYnVpbGRRdWVyeSIsImFkYXB0ZXIiLCJmaWVsZHMiLCJpZFRvVXBkYXRlIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsInNlbGVjdERpc3RpbmN0TWV0aG9kcyIsInB1c2giLCJhcmdzIiwibWV0aG9kIiwiZm9yRWFjaCIsImNvbmRpdGlvbiIsInRhYmxlIiwiZW50cmllcyIsImpvaW5UYWJsZSIsInRhYmxlcyIsInNlbGVjdERpc3RpbmN0UmVzdWx0IiwiY2hhaW5NZXRob2RzIiwibWV0aG9kcyIsInF1ZXJ5Iiwic2VsZWN0RGlzdGluY3QiLCJmcm9tIiwicmVzdWx0IiwidXBzZXJ0Um93Iiwib3BlcmF0aW9uIl0sIm1hcHBpbmdzIjoiOzs7OytCQVVhQTs7O2VBQUFBOzs7b0VBUlc7OEJBR0s7bUVBRU47MkJBQ0c7Ozs7OztBQUVuQixNQUFNQSxZQUF1QixlQUFlQSxVQUVqRCxFQUFFQyxFQUFFLEVBQUVDLFlBQVlDLGNBQWMsRUFBRUMsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLE1BQU0sRUFBRUMsR0FBRyxFQUFFQyxPQUFPQyxRQUFRLEVBQUU7SUFFN0UsTUFBTUMsS0FBSyxJQUFJLENBQUNDLFFBQVEsQ0FBQ0osSUFBSUssYUFBYSxDQUFDLEVBQUVGLE1BQU0sSUFBSSxDQUFDRyxPQUFPO0lBQy9ELE1BQU1YLGFBQWEsSUFBSSxDQUFDWSxPQUFPLENBQUNDLFdBQVcsQ0FBQ1osZUFBZSxDQUFDYSxNQUFNO0lBQ2xFLE1BQU1DLFlBQVlDLElBQUFBLG9CQUFXLEVBQUNmO0lBQzlCLE1BQU1nQixhQUFhVixZQUFZO1FBQUVSLElBQUk7WUFBRW1CLFFBQVFuQjtRQUFHO0lBQUU7SUFFcEQsTUFBTSxFQUFFb0IsV0FBVyxFQUFFQyxLQUFLLEVBQUVDLFlBQVksRUFBRWYsS0FBSyxFQUFFLEdBQUcsTUFBTWdCLElBQUFBLG1CQUFVLEVBQUM7UUFDbkVDLFNBQVMsSUFBSTtRQUNiQyxRQUFReEIsV0FBV3dCLE1BQU07UUFDekJwQjtRQUNBVztRQUNBVCxPQUFPVztJQUNUO0lBRUEsSUFBSVEsYUFBYTFCO0lBRWpCLHdKQUF3SjtJQUN4SixJQUFJMkIsT0FBT0MsSUFBSSxDQUFDUCxPQUFPUSxNQUFNLEdBQUcsS0FBS1QsWUFBWVMsTUFBTSxHQUFHLEdBQUc7UUFDM0QsTUFBTUMsd0JBQXdDLEVBQUU7UUFFaEQsSUFBSXZCLE9BQU87WUFDVHVCLHNCQUFzQkMsSUFBSSxDQUFDO2dCQUFFQyxNQUFNO29CQUFDekI7aUJBQU07Z0JBQUUwQixRQUFRO1lBQVE7UUFDOUQ7UUFFQWIsWUFBWWMsT0FBTyxDQUFDLENBQUMsRUFBRUMsU0FBUyxFQUFFQyxLQUFLLEVBQUU7WUFDdkNOLHNCQUFzQkMsSUFBSSxDQUFDO2dCQUN6QkMsTUFBTTtvQkFBQ0k7b0JBQU9EO2lCQUFVO2dCQUN4QkYsUUFBUTtZQUNWO1FBQ0Y7UUFFQU4sT0FBT1UsT0FBTyxDQUFDaEIsT0FBT2EsT0FBTyxDQUFDLENBQUMsQ0FBQ0ksV0FBV0gsVUFBVTtZQUNuRCxJQUFJRyxXQUFXO2dCQUNiUixzQkFBc0JDLElBQUksQ0FBQztvQkFDekJDLE1BQU07d0JBQUMsSUFBSSxDQUFDTyxNQUFNLENBQUNELFVBQVU7d0JBQUVIO3FCQUFVO29CQUN6Q0YsUUFBUTtnQkFDVjtZQUNGO1FBQ0Y7UUFFQUgsc0JBQXNCQyxJQUFJLENBQUM7WUFBRUMsTUFBTTtnQkFBQzthQUFFO1lBQUVDLFFBQVE7UUFBUTtRQUV4RCxNQUFNTyx1QkFBdUIsTUFBTUMsSUFBQUEsMEJBQVksRUFBQztZQUM5Q0MsU0FBU1o7WUFDVGEsT0FBT2xDLEdBQUdtQyxjQUFjLENBQUN0QixjQUFjdUIsSUFBSSxDQUFDLElBQUksQ0FBQ04sTUFBTSxDQUFDdkIsVUFBVTtRQUNwRTtRQUVBLElBQUl3QixzQkFBc0IsQ0FBQyxFQUFFLEVBQUV4QyxJQUFJO1lBQ2pDMEIsYUFBYWMsc0JBQXNCLENBQUMsRUFBRSxFQUFFeEM7UUFDMUM7SUFDRjtJQUVBLE1BQU04QyxTQUFTLE1BQU1DLElBQUFBLG9CQUFTLEVBQUM7UUFDN0IvQyxJQUFJMEI7UUFDSkYsU0FBUyxJQUFJO1FBQ2JyQjtRQUNBTTtRQUNBZ0IsUUFBUXhCLFdBQVd3QixNQUFNO1FBQ3pCdUIsV0FBVztRQUNYaEMsV0FBV0MsSUFBQUEsb0JBQVcsRUFBQ2Y7UUFDdkJJO0lBQ0Y7SUFFQSxPQUFPd0M7QUFDVCJ9
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91cGRhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVcGRhdGVPbmUgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgYnVpbGRRdWVyeSBmcm9tICcuL3F1ZXJpZXMvYnVpbGRRdWVyeSdcbmltcG9ydCB7IHNlbGVjdERpc3RpbmN0IH0gZnJvbSAnLi9xdWVyaWVzL3NlbGVjdERpc3RpbmN0J1xuaW1wb3J0IHsgdXBzZXJ0Um93IH0gZnJvbSAnLi91cHNlcnRSb3cnXG5cbmV4cG9ydCBjb25zdCB1cGRhdGVPbmU6IFVwZGF0ZU9uZSA9IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZU9uZShcbiAgdGhpczogUG9zdGdyZXNBZGFwdGVyLFxuICB7IGlkLCBjb2xsZWN0aW9uOiBjb2xsZWN0aW9uU2x1ZywgZGF0YSwgZHJhZnQsIGxvY2FsZSwgcmVxLCB3aGVyZTogd2hlcmVBcmcgfSxcbikge1xuICBjb25zdCBkYiA9IHRoaXMuc2Vzc2lvbnNbcmVxLnRyYW5zYWN0aW9uSURdPy5kYiB8fCB0aGlzLmRyaXp6bGVcbiAgY29uc3QgY29sbGVjdGlvbiA9IHRoaXMucGF5bG9hZC5jb2xsZWN0aW9uc1tjb2xsZWN0aW9uU2x1Z10uY29uZmlnXG4gIGNvbnN0IHRhYmxlTmFtZSA9IHRvU25ha2VDYXNlKGNvbGxlY3Rpb25TbHVnKVxuICBjb25zdCB3aGVyZVRvVXNlID0gd2hlcmVBcmcgfHwgeyBpZDogeyBlcXVhbHM6IGlkIH0gfVxuICBsZXQgaWRUb1VwZGF0ZSA9IGlkXG5cbiAgY29uc3QgeyBqb2luQWxpYXNlcywgam9pbnMsIHNlbGVjdEZpZWxkcywgd2hlcmUgfSA9IGF3YWl0IGJ1aWxkUXVlcnkoe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZmllbGRzOiBjb2xsZWN0aW9uLmZpZWxkcyxcbiAgICBsb2NhbGUsXG4gICAgdGFibGVOYW1lLFxuICAgIHdoZXJlOiB3aGVyZVRvVXNlLFxuICB9KVxuXG4gIGNvbnN0IHNlbGVjdERpc3RpbmN0UmVzdWx0ID0gYXdhaXQgc2VsZWN0RGlzdGluY3Qoe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgY2hhaW5lZE1ldGhvZHM6IFt7IGFyZ3M6IFsxXSwgbWV0aG9kOiAnbGltaXQnIH1dLFxuICAgIGRiLFxuICAgIGpvaW5BbGlhc2VzLFxuICAgIGpvaW5zLFxuICAgIHNlbGVjdEZpZWxkcyxcbiAgICB0YWJsZU5hbWUsXG4gICAgd2hlcmUsXG4gIH0pXG5cbiAgaWYgKHNlbGVjdERpc3RpbmN0UmVzdWx0Py5bMF0/LmlkKSB7XG4gICAgaWRUb1VwZGF0ZSA9IHNlbGVjdERpc3RpbmN0UmVzdWx0Py5bMF0/LmlkXG4gIH1cblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCB1cHNlcnRSb3coe1xuICAgIGlkOiBpZFRvVXBkYXRlLFxuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24uZmllbGRzLFxuICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgcmVxLFxuICAgIHRhYmxlTmFtZTogdG9TbmFrZUNhc2UoY29sbGVjdGlvblNsdWcpLFxuICB9KVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJ1cGRhdGVPbmUiLCJpZCIsImNvbGxlY3Rpb24iLCJjb2xsZWN0aW9uU2x1ZyIsImRhdGEiLCJkcmFmdCIsImxvY2FsZSIsInJlcSIsIndoZXJlIiwid2hlcmVBcmciLCJkYiIsInNlc3Npb25zIiwidHJhbnNhY3Rpb25JRCIsImRyaXp6bGUiLCJwYXlsb2FkIiwiY29sbGVjdGlvbnMiLCJjb25maWciLCJ0YWJsZU5hbWUiLCJ0b1NuYWtlQ2FzZSIsIndoZXJlVG9Vc2UiLCJlcXVhbHMiLCJpZFRvVXBkYXRlIiwiam9pbkFsaWFzZXMiLCJqb2lucyIsInNlbGVjdEZpZWxkcyIsImJ1aWxkUXVlcnkiLCJhZGFwdGVyIiwiZmllbGRzIiwic2VsZWN0RGlzdGluY3RSZXN1bHQiLCJzZWxlY3REaXN0aW5jdCIsImNoYWluZWRNZXRob2RzIiwiYXJncyIsIm1ldGhvZCIsInJlc3VsdCIsInVwc2VydFJvdyIsIm9wZXJhdGlvbiJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFVYUE7OztlQUFBQTs7O29FQVJXO21FQUlEO2dDQUNROzJCQUNMOzs7Ozs7QUFFbkIsTUFBTUEsWUFBdUIsZUFBZUEsVUFFakQsRUFBRUMsRUFBRSxFQUFFQyxZQUFZQyxjQUFjLEVBQUVDLElBQUksRUFBRUMsS0FBSyxFQUFFQyxNQUFNLEVBQUVDLEdBQUcsRUFBRUMsT0FBT0MsUUFBUSxFQUFFO0lBRTdFLE1BQU1DLEtBQUssSUFBSSxDQUFDQyxRQUFRLENBQUNKLElBQUlLLGFBQWEsQ0FBQyxFQUFFRixNQUFNLElBQUksQ0FBQ0csT0FBTztJQUMvRCxNQUFNWCxhQUFhLElBQUksQ0FBQ1ksT0FBTyxDQUFDQyxXQUFXLENBQUNaLGVBQWUsQ0FBQ2EsTUFBTTtJQUNsRSxNQUFNQyxZQUFZQyxJQUFBQSxvQkFBVyxFQUFDZjtJQUM5QixNQUFNZ0IsYUFBYVYsWUFBWTtRQUFFUixJQUFJO1lBQUVtQixRQUFRbkI7UUFBRztJQUFFO0lBQ3BELElBQUlvQixhQUFhcEI7SUFFakIsTUFBTSxFQUFFcUIsV0FBVyxFQUFFQyxLQUFLLEVBQUVDLFlBQVksRUFBRWhCLEtBQUssRUFBRSxHQUFHLE1BQU1pQixJQUFBQSxtQkFBVSxFQUFDO1FBQ25FQyxTQUFTLElBQUk7UUFDYkMsUUFBUXpCLFdBQVd5QixNQUFNO1FBQ3pCckI7UUFDQVc7UUFDQVQsT0FBT1c7SUFDVDtJQUVBLE1BQU1TLHVCQUF1QixNQUFNQyxJQUFBQSw4QkFBYyxFQUFDO1FBQ2hESCxTQUFTLElBQUk7UUFDYkksZ0JBQWdCO1lBQUM7Z0JBQUVDLE1BQU07b0JBQUM7aUJBQUU7Z0JBQUVDLFFBQVE7WUFBUTtTQUFFO1FBQ2hEdEI7UUFDQVk7UUFDQUM7UUFDQUM7UUFDQVA7UUFDQVQ7SUFDRjtJQUVBLElBQUlvQixzQkFBc0IsQ0FBQyxFQUFFLEVBQUUzQixJQUFJO1FBQ2pDb0IsYUFBYU8sc0JBQXNCLENBQUMsRUFBRSxFQUFFM0I7SUFDMUM7SUFFQSxNQUFNZ0MsU0FBUyxNQUFNQyxJQUFBQSxvQkFBUyxFQUFDO1FBQzdCakMsSUFBSW9CO1FBQ0pLLFNBQVMsSUFBSTtRQUNidEI7UUFDQU07UUFDQWlCLFFBQVF6QixXQUFXeUIsTUFBTTtRQUN6QlEsV0FBVztRQUNYNUI7UUFDQVUsV0FBV0MsSUFBQUEsb0JBQVcsRUFBQ2Y7SUFDekI7SUFFQSxPQUFPOEI7QUFDVCJ9
package/package.json CHANGED
@@ -1,8 +1,12 @@
1
1
  {
2
2
  "name": "@payloadcms/db-postgres",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "The officially supported Postgres database adapter for Payload",
5
- "repository": "https://github.com/payloadcms/payload",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/payloadcms/payload.git",
8
+ "directory": "packages/db-postgres"
9
+ },
6
10
  "license": "MIT",
7
11
  "homepage": "https://payloadcms.com",
8
12
  "author": {
@@ -25,8 +29,8 @@
25
29
  "devDependencies": {
26
30
  "@types/pg": "8.10.2",
27
31
  "@types/to-snake-case": "1.0.0",
28
- "payload": "2.11.2",
29
- "@payloadcms/eslint-config": "1.1.1"
32
+ "@payloadcms/eslint-config": "1.1.1",
33
+ "payload": "2.12.0"
30
34
  },
31
35
  "peerDependencies": {
32
36
  "payload": "^2.0.0"