@payloadcms/db-postgres 0.1.10 → 0.1.11

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAQ9C,eAAO,MAAM,MAAM,EAAE,MAiBpB,CAAA"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../src/create.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAQ9C,eAAO,MAAM,MAAM,EAAE,MAkBpB,CAAA"}
package/dist/create.js CHANGED
@@ -24,9 +24,10 @@ const create = async function create({ collection: collectionSlug, data, req })
24
24
  db,
25
25
  fields: collection.fields,
26
26
  operation: 'create',
27
- tableName: (0, _tosnakecase.default)(collectionSlug)
27
+ tableName: (0, _tosnakecase.default)(collectionSlug),
28
+ req
28
29
  });
29
30
  return result;
30
31
  };
31
32
 
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDcmVhdGUgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyB1cHNlcnRSb3cgfSBmcm9tICcuL3Vwc2VydFJvdydcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZTogQ3JlYXRlID0gYXN5bmMgZnVuY3Rpb24gY3JlYXRlKFxuICB0aGlzOiBQb3N0Z3Jlc0FkYXB0ZXIsXG4gIHsgY29sbGVjdGlvbjogY29sbGVjdGlvblNsdWcsIGRhdGEsIHJlcSB9LFxuKSB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5wYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25TbHVnXS5jb25maWdcblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCB1cHNlcnRSb3coe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24uZmllbGRzLFxuICAgIG9wZXJhdGlvbjogJ2NyZWF0ZScsXG4gICAgdGFibGVOYW1lOiB0b1NuYWtlQ2FzZShjb2xsZWN0aW9uU2x1ZyksXG4gIH0pXG5cbiAgcmV0dXJuIHJlc3VsdFxufVxuIl0sIm5hbWVzIjpbImNyZWF0ZSIsImNvbGxlY3Rpb24iLCJjb2xsZWN0aW9uU2x1ZyIsImRhdGEiLCJyZXEiLCJkYiIsInNlc3Npb25zIiwidHJhbnNhY3Rpb25JRCIsImRyaXp6bGUiLCJwYXlsb2FkIiwiY29sbGVjdGlvbnMiLCJjb25maWciLCJyZXN1bHQiLCJ1cHNlcnRSb3ciLCJhZGFwdGVyIiwiZmllbGRzIiwib3BlcmF0aW9uIiwidGFibGVOYW1lIiwidG9TbmFrZUNhc2UiXSwibWFwcGluZ3MiOiI7Ozs7K0JBUWFBOzs7ZUFBQUE7OztvRUFOVzsyQkFJRTs7Ozs7O0FBRW5CLE1BQU1BLFNBQWlCLGVBQWVBLE9BRTNDLEVBQUVDLFlBQVlDLGNBQWMsRUFBRUMsSUFBSSxFQUFFQyxHQUFHLEVBQUU7SUFFekMsTUFBTUMsS0FBSyxJQUFJLENBQUNDLFFBQVEsQ0FBQ0YsSUFBSUcsYUFBYSxDQUFDLEVBQUVGLE1BQU0sSUFBSSxDQUFDRyxPQUFPO0lBQy9ELE1BQU1QLGFBQWEsSUFBSSxDQUFDUSxPQUFPLENBQUNDLFdBQVcsQ0FBQ1IsZUFBZSxDQUFDUyxNQUFNO0lBRWxFLE1BQU1DLFNBQVMsTUFBTUMsSUFBQUEsb0JBQVMsRUFBQztRQUM3QkMsU0FBUyxJQUFJO1FBQ2JYO1FBQ0FFO1FBQ0FVLFFBQVFkLFdBQVdjLE1BQU07UUFDekJDLFdBQVc7UUFDWEMsV0FBV0MsSUFBQUEsb0JBQVcsRUFBQ2hCO0lBQ3pCO0lBRUEsT0FBT1U7QUFDVCJ9
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDcmVhdGUgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyB1cHNlcnRSb3cgfSBmcm9tICcuL3Vwc2VydFJvdydcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZTogQ3JlYXRlID0gYXN5bmMgZnVuY3Rpb24gY3JlYXRlKFxuICB0aGlzOiBQb3N0Z3Jlc0FkYXB0ZXIsXG4gIHsgY29sbGVjdGlvbjogY29sbGVjdGlvblNsdWcsIGRhdGEsIHJlcSB9LFxuKSB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5wYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25TbHVnXS5jb25maWdcblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCB1cHNlcnRSb3coe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24uZmllbGRzLFxuICAgIG9wZXJhdGlvbjogJ2NyZWF0ZScsXG4gICAgdGFibGVOYW1lOiB0b1NuYWtlQ2FzZShjb2xsZWN0aW9uU2x1ZyksXG4gICAgcmVxLFxuICB9KVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGUiLCJjb2xsZWN0aW9uIiwiY29sbGVjdGlvblNsdWciLCJkYXRhIiwicmVxIiwiZGIiLCJzZXNzaW9ucyIsInRyYW5zYWN0aW9uSUQiLCJkcml6emxlIiwicGF5bG9hZCIsImNvbGxlY3Rpb25zIiwiY29uZmlnIiwicmVzdWx0IiwidXBzZXJ0Um93IiwiYWRhcHRlciIsImZpZWxkcyIsIm9wZXJhdGlvbiIsInRhYmxlTmFtZSIsInRvU25ha2VDYXNlIl0sIm1hcHBpbmdzIjoiOzs7OytCQVFhQTs7O2VBQUFBOzs7b0VBTlc7MkJBSUU7Ozs7OztBQUVuQixNQUFNQSxTQUFpQixlQUFlQSxPQUUzQyxFQUFFQyxZQUFZQyxjQUFjLEVBQUVDLElBQUksRUFBRUMsR0FBRyxFQUFFO0lBRXpDLE1BQU1DLEtBQUssSUFBSSxDQUFDQyxRQUFRLENBQUNGLElBQUlHLGFBQWEsQ0FBQyxFQUFFRixNQUFNLElBQUksQ0FBQ0csT0FBTztJQUMvRCxNQUFNUCxhQUFhLElBQUksQ0FBQ1EsT0FBTyxDQUFDQyxXQUFXLENBQUNSLGVBQWUsQ0FBQ1MsTUFBTTtJQUVsRSxNQUFNQyxTQUFTLE1BQU1DLElBQUFBLG9CQUFTLEVBQUM7UUFDN0JDLFNBQVMsSUFBSTtRQUNiWDtRQUNBRTtRQUNBVSxRQUFRZCxXQUFXYyxNQUFNO1FBQ3pCQyxXQUFXO1FBQ1hDLFdBQVdDLElBQUFBLG9CQUFXLEVBQUNoQjtRQUN2QkU7SUFDRjtJQUVBLE9BQU9RO0FBQ1QifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"createGlobal.d.ts","sourceRoot":"","sources":["../src/createGlobal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,eAAe,CAAA;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,wBAAsB,YAAY,CAAC,CAAC,SAAS,UAAU,EACrD,IAAI,EAAE,eAAe,EACrB,EAAE,IAAI,EAAE,GAA0B,EAAE,IAAI,EAAE,EAAE,gBAAgB,GAC3D,OAAO,CAAC,CAAC,CAAC,CAcZ"}
1
+ {"version":3,"file":"createGlobal.d.ts","sourceRoot":"","sources":["../src/createGlobal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,eAAe,CAAA;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,wBAAsB,YAAY,CAAC,CAAC,SAAS,UAAU,EACrD,IAAI,EAAE,eAAe,EACrB,EAAE,IAAI,EAAE,GAA0B,EAAE,IAAI,EAAE,EAAE,gBAAgB,GAC3D,OAAO,CAAC,CAAC,CAAC,CAeZ"}
@@ -24,9 +24,10 @@ async function createGlobal({ data, req = {}, slug }) {
24
24
  db,
25
25
  fields: globalConfig.fields,
26
26
  operation: 'create',
27
- tableName: (0, _tosnakecase.default)(slug)
27
+ tableName: (0, _tosnakecase.default)(slug),
28
+ req
28
29
  });
29
30
  return result;
30
31
  }
31
32
 
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVHbG9iYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDcmVhdGVHbG9iYWxBcmdzIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFR5cGVXaXRoSUQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyB1cHNlcnRSb3cgfSBmcm9tICcuL3Vwc2VydFJvdydcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZUdsb2JhbDxUIGV4dGVuZHMgVHlwZVdpdGhJRD4oXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBkYXRhLCByZXEgPSB7fSBhcyBQYXlsb2FkUmVxdWVzdCwgc2x1ZyB9OiBDcmVhdGVHbG9iYWxBcmdzLFxuKTogUHJvbWlzZTxUPiB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBnbG9iYWxDb25maWcgPSB0aGlzLnBheWxvYWQuZ2xvYmFscy5jb25maWcuZmluZCgoY29uZmlnKSA9PiBjb25maWcuc2x1ZyA9PT0gc2x1ZylcblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCB1cHNlcnRSb3c8VD4oe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGdsb2JhbENvbmZpZy5maWVsZHMsXG4gICAgb3BlcmF0aW9uOiAnY3JlYXRlJyxcbiAgICB0YWJsZU5hbWU6IHRvU25ha2VDYXNlKHNsdWcpLFxuICB9KVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGVHbG9iYWwiLCJkYXRhIiwicmVxIiwic2x1ZyIsImRiIiwic2Vzc2lvbnMiLCJ0cmFuc2FjdGlvbklEIiwiZHJpenpsZSIsImdsb2JhbENvbmZpZyIsInBheWxvYWQiLCJnbG9iYWxzIiwiY29uZmlnIiwiZmluZCIsInJlc3VsdCIsInVwc2VydFJvdyIsImFkYXB0ZXIiLCJmaWVsZHMiLCJvcGVyYXRpb24iLCJ0YWJsZU5hbWUiLCJ0b1NuYWtlQ2FzZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFTc0JBOzs7ZUFBQUE7OztvRUFORTsyQkFJRTs7Ozs7O0FBRW5CLGVBQWVBLGFBRXBCLEVBQUVDLElBQUksRUFBRUMsTUFBTSxDQUFDLENBQW1CLEVBQUVDLElBQUksRUFBb0I7SUFFNUQsTUFBTUMsS0FBSyxJQUFJLENBQUNDLFFBQVEsQ0FBQ0gsSUFBSUksYUFBYSxDQUFDLEVBQUVGLE1BQU0sSUFBSSxDQUFDRyxPQUFPO0lBQy9ELE1BQU1DLGVBQWUsSUFBSSxDQUFDQyxPQUFPLENBQUNDLE9BQU8sQ0FBQ0MsTUFBTSxDQUFDQyxJQUFJLENBQUMsQ0FBQ0QsU0FBV0EsT0FBT1IsSUFBSSxLQUFLQTtJQUVsRixNQUFNVSxTQUFTLE1BQU1DLElBQUFBLG9CQUFTLEVBQUk7UUFDaENDLFNBQVMsSUFBSTtRQUNiZDtRQUNBRztRQUNBWSxRQUFRUixhQUFhUSxNQUFNO1FBQzNCQyxXQUFXO1FBQ1hDLFdBQVdDLElBQUFBLG9CQUFXLEVBQUNoQjtJQUN6QjtJQUVBLE9BQU9VO0FBQ1QifQ==
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVHbG9iYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDcmVhdGVHbG9iYWxBcmdzIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFR5cGVXaXRoSUQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyB1cHNlcnRSb3cgfSBmcm9tICcuL3Vwc2VydFJvdydcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZUdsb2JhbDxUIGV4dGVuZHMgVHlwZVdpdGhJRD4oXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBkYXRhLCByZXEgPSB7fSBhcyBQYXlsb2FkUmVxdWVzdCwgc2x1ZyB9OiBDcmVhdGVHbG9iYWxBcmdzLFxuKTogUHJvbWlzZTxUPiB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBnbG9iYWxDb25maWcgPSB0aGlzLnBheWxvYWQuZ2xvYmFscy5jb25maWcuZmluZCgoY29uZmlnKSA9PiBjb25maWcuc2x1ZyA9PT0gc2x1ZylcblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCB1cHNlcnRSb3c8VD4oe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGdsb2JhbENvbmZpZy5maWVsZHMsXG4gICAgb3BlcmF0aW9uOiAnY3JlYXRlJyxcbiAgICB0YWJsZU5hbWU6IHRvU25ha2VDYXNlKHNsdWcpLFxuICAgIHJlcSxcbiAgfSlcblxuICByZXR1cm4gcmVzdWx0XG59XG4iXSwibmFtZXMiOlsiY3JlYXRlR2xvYmFsIiwiZGF0YSIsInJlcSIsInNsdWciLCJkYiIsInNlc3Npb25zIiwidHJhbnNhY3Rpb25JRCIsImRyaXp6bGUiLCJnbG9iYWxDb25maWciLCJwYXlsb2FkIiwiZ2xvYmFscyIsImNvbmZpZyIsImZpbmQiLCJyZXN1bHQiLCJ1cHNlcnRSb3ciLCJhZGFwdGVyIiwiZmllbGRzIiwib3BlcmF0aW9uIiwidGFibGVOYW1lIiwidG9TbmFrZUNhc2UiXSwibWFwcGluZ3MiOiI7Ozs7K0JBU3NCQTs7O2VBQUFBOzs7b0VBTkU7MkJBSUU7Ozs7OztBQUVuQixlQUFlQSxhQUVwQixFQUFFQyxJQUFJLEVBQUVDLE1BQU0sQ0FBQyxDQUFtQixFQUFFQyxJQUFJLEVBQW9CO0lBRTVELE1BQU1DLEtBQUssSUFBSSxDQUFDQyxRQUFRLENBQUNILElBQUlJLGFBQWEsQ0FBQyxFQUFFRixNQUFNLElBQUksQ0FBQ0csT0FBTztJQUMvRCxNQUFNQyxlQUFlLElBQUksQ0FBQ0MsT0FBTyxDQUFDQyxPQUFPLENBQUNDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUNELFNBQVdBLE9BQU9SLElBQUksS0FBS0E7SUFFbEYsTUFBTVUsU0FBUyxNQUFNQyxJQUFBQSxvQkFBUyxFQUFJO1FBQ2hDQyxTQUFTLElBQUk7UUFDYmQ7UUFDQUc7UUFDQVksUUFBUVIsYUFBYVEsTUFBTTtRQUMzQkMsV0FBVztRQUNYQyxXQUFXQyxJQUFBQSxvQkFBVyxFQUFDaEI7UUFDdkJEO0lBQ0Y7SUFFQSxPQUFPVztBQUNUIn0=
@@ -1,6 +1,6 @@
1
1
  import type { TypeWithVersion } from 'payload/database';
2
- import type { TypeWithID } from 'payload/types';
3
2
  import { type CreateGlobalVersionArgs } from 'payload/database';
3
+ import type { TypeWithID } from 'payload/types';
4
4
  import type { PostgresAdapter } from './types';
5
5
  export declare function createGlobalVersion<T extends TypeWithID>(this: PostgresAdapter, { autosave, globalSlug, req, versionData }: CreateGlobalVersionArgs): Promise<TypeWithVersion<T>>;
6
6
  //# sourceMappingURL=createGlobalVersion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createGlobalVersion.d.ts","sourceRoot":"","sources":["../src/createGlobalVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,eAAe,CAAA;AAG/D,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,UAAU,EAC5D,IAAI,EAAE,eAAe,EACrB,EAAE,QAAQ,EAAE,UAAU,EAAE,GAA0B,EAAE,WAAW,EAAE,EAAE,uBAAuB,+BA+B3F"}
1
+ {"version":3,"file":"createGlobalVersion.d.ts","sourceRoot":"","sources":["../src/createGlobalVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,eAAe,CAAA;AAM/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,UAAU,EAC5D,IAAI,EAAE,eAAe,EACrB,EAAE,QAAQ,EAAE,UAAU,EAAE,GAA0B,EAAE,WAAW,EAAE,EAAE,uBAAuB,+BAgC3F"}
@@ -32,7 +32,8 @@ async function createGlobalVersion({ autosave, globalSlug, req = {}, versionData
32
32
  db,
33
33
  fields: (0, _versions.buildVersionGlobalFields)(global),
34
34
  operation: 'create',
35
- tableName
35
+ tableName,
36
+ req
36
37
  });
37
38
  const table = this.tables[tableName];
38
39
  if (global.versions.drafts) {
@@ -45,4 +46,4 @@ async function createGlobalVersion({ autosave, globalSlug, req = {}, versionData
45
46
  return result;
46
47
  }
47
48
 
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVHbG9iYWxWZXJzaW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVHlwZVdpdGhWZXJzaW9uIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFR5cGVXaXRoSUQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgeyBzcWwgfSBmcm9tICdkcml6emxlLW9ybSdcbmltcG9ydCB7IHR5cGUgQ3JlYXRlR2xvYmFsVmVyc2lvbkFyZ3MgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuaW1wb3J0IHsgYnVpbGRWZXJzaW9uR2xvYmFsRmllbGRzIH0gZnJvbSAncGF5bG9hZC92ZXJzaW9ucydcbmltcG9ydCB0b1NuYWtlQ2FzZSBmcm9tICd0by1zbmFrZS1jYXNlJ1xuXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IHVwc2VydFJvdyB9IGZyb20gJy4vdXBzZXJ0Um93J1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlR2xvYmFsVmVyc2lvbjxUIGV4dGVuZHMgVHlwZVdpdGhJRD4oXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBhdXRvc2F2ZSwgZ2xvYmFsU2x1ZywgcmVxID0ge30gYXMgUGF5bG9hZFJlcXVlc3QsIHZlcnNpb25EYXRhIH06IENyZWF0ZUdsb2JhbFZlcnNpb25BcmdzLFxuKSB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBnbG9iYWwgPSB0aGlzLnBheWxvYWQuZ2xvYmFscy5jb25maWcuZmluZCgoeyBzbHVnIH0pID0+IHNsdWcgPT09IGdsb2JhbFNsdWcpXG4gIGNvbnN0IGdsb2JhbFRhYmxlTmFtZSA9IHRvU25ha2VDYXNlKGdsb2JhbFNsdWcpXG4gIGNvbnN0IHRhYmxlTmFtZSA9IGBfJHtnbG9iYWxUYWJsZU5hbWV9X3ZgXG5cbiAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdXBzZXJ0Um93PFR5cGVXaXRoVmVyc2lvbjxUPj4oe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YToge1xuICAgICAgYXV0b3NhdmUsXG4gICAgICBsYXRlc3Q6IHRydWUsXG4gICAgICB2ZXJzaW9uOiB2ZXJzaW9uRGF0YSxcbiAgICB9LFxuICAgIGRiLFxuICAgIGZpZWxkczogYnVpbGRWZXJzaW9uR2xvYmFsRmllbGRzKGdsb2JhbCksXG4gICAgb3BlcmF0aW9uOiAnY3JlYXRlJyxcbiAgICB0YWJsZU5hbWUsXG4gIH0pXG5cbiAgY29uc3QgdGFibGUgPSB0aGlzLnRhYmxlc1t0YWJsZU5hbWVdXG5cbiAgaWYgKGdsb2JhbC52ZXJzaW9ucy5kcmFmdHMpIHtcbiAgICBhd2FpdCBkYi5leGVjdXRlKHNxbGBcbiAgICAgIFVQREFURSAke3RhYmxlfVxuICAgICAgU0VUIGxhdGVzdCA9IGZhbHNlXG4gICAgICBXSEVSRSAke3RhYmxlLmlkfSAhPSAke3Jlc3VsdC5pZH07XG4gICAgYClcbiAgfVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGVHbG9iYWxWZXJzaW9uIiwiYXV0b3NhdmUiLCJnbG9iYWxTbHVnIiwicmVxIiwidmVyc2lvbkRhdGEiLCJkYiIsInNlc3Npb25zIiwidHJhbnNhY3Rpb25JRCIsImRyaXp6bGUiLCJnbG9iYWwiLCJwYXlsb2FkIiwiZ2xvYmFscyIsImNvbmZpZyIsImZpbmQiLCJzbHVnIiwiZ2xvYmFsVGFibGVOYW1lIiwidG9TbmFrZUNhc2UiLCJ0YWJsZU5hbWUiLCJyZXN1bHQiLCJ1cHNlcnRSb3ciLCJhZGFwdGVyIiwiZGF0YSIsImxhdGVzdCIsInZlcnNpb24iLCJmaWVsZHMiLCJidWlsZFZlcnNpb25HbG9iYWxGaWVsZHMiLCJvcGVyYXRpb24iLCJ0YWJsZSIsInRhYmxlcyIsInZlcnNpb25zIiwiZHJhZnRzIiwiZXhlY3V0ZSIsInNxbCIsImlkIl0sIm1hcHBpbmdzIjoiOzs7OytCQVlzQkE7OztlQUFBQTs7OzRCQVRGOzBCQUVxQjtvRUFDakI7MkJBSUU7Ozs7OztBQUVuQixlQUFlQSxvQkFFcEIsRUFBRUMsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLE1BQU0sQ0FBQyxDQUFtQixFQUFFQyxXQUFXLEVBQTJCO0lBRTFGLE1BQU1DLEtBQUssSUFBSSxDQUFDQyxRQUFRLENBQUNILElBQUlJLGFBQWEsQ0FBQyxFQUFFRixNQUFNLElBQUksQ0FBQ0csT0FBTztJQUMvRCxNQUFNQyxTQUFTLElBQUksQ0FBQ0MsT0FBTyxDQUFDQyxPQUFPLENBQUNDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUMsRUFBRUMsSUFBSSxFQUFFLEdBQUtBLFNBQVNaO0lBQ3ZFLE1BQU1hLGtCQUFrQkMsSUFBQUEsb0JBQVcsRUFBQ2Q7SUFDcEMsTUFBTWUsWUFBWSxDQUFDLENBQUMsRUFBRUYsZ0JBQWdCLEVBQUUsQ0FBQztJQUV6QyxNQUFNRyxTQUFTLE1BQU1DLElBQUFBLG9CQUFTLEVBQXFCO1FBQ2pEQyxTQUFTLElBQUk7UUFDYkMsTUFBTTtZQUNKcEI7WUFDQXFCLFFBQVE7WUFDUkMsU0FBU25CO1FBQ1g7UUFDQUM7UUFDQW1CLFFBQVFDLElBQUFBLGtDQUF3QixFQUFDaEI7UUFDakNpQixXQUFXO1FBQ1hUO0lBQ0Y7SUFFQSxNQUFNVSxRQUFRLElBQUksQ0FBQ0MsTUFBTSxDQUFDWCxVQUFVO0lBRXBDLElBQUlSLE9BQU9vQixRQUFRLENBQUNDLE1BQU0sRUFBRTtRQUMxQixNQUFNekIsR0FBRzBCLE9BQU8sQ0FBQ0MsSUFBQUEsZUFBRyxDQUFBLENBQUM7YUFDWixFQUFFTCxNQUFNOztZQUVULEVBQUVBLE1BQU1NLEVBQUUsQ0FBQyxJQUFJLEVBQUVmLE9BQU9lLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBQ0g7SUFFQSxPQUFPZjtBQUNUIn0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVHbG9iYWxWZXJzaW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVHlwZVdpdGhWZXJzaW9uIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcbmltcG9ydCB7IHR5cGUgQ3JlYXRlR2xvYmFsVmVyc2lvbkFyZ3MgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCwgVHlwZVdpdGhJRCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7IHNxbCB9IGZyb20gJ2RyaXp6bGUtb3JtJ1xuaW1wb3J0IHsgYnVpbGRWZXJzaW9uR2xvYmFsRmllbGRzIH0gZnJvbSAncGF5bG9hZC92ZXJzaW9ucydcbmltcG9ydCB0b1NuYWtlQ2FzZSBmcm9tICd0by1zbmFrZS1jYXNlJ1xuXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IHVwc2VydFJvdyB9IGZyb20gJy4vdXBzZXJ0Um93J1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlR2xvYmFsVmVyc2lvbjxUIGV4dGVuZHMgVHlwZVdpdGhJRD4oXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBhdXRvc2F2ZSwgZ2xvYmFsU2x1ZywgcmVxID0ge30gYXMgUGF5bG9hZFJlcXVlc3QsIHZlcnNpb25EYXRhIH06IENyZWF0ZUdsb2JhbFZlcnNpb25BcmdzLFxuKSB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBnbG9iYWwgPSB0aGlzLnBheWxvYWQuZ2xvYmFscy5jb25maWcuZmluZCgoeyBzbHVnIH0pID0+IHNsdWcgPT09IGdsb2JhbFNsdWcpXG4gIGNvbnN0IGdsb2JhbFRhYmxlTmFtZSA9IHRvU25ha2VDYXNlKGdsb2JhbFNsdWcpXG4gIGNvbnN0IHRhYmxlTmFtZSA9IGBfJHtnbG9iYWxUYWJsZU5hbWV9X3ZgXG5cbiAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdXBzZXJ0Um93PFR5cGVXaXRoVmVyc2lvbjxUPj4oe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YToge1xuICAgICAgYXV0b3NhdmUsXG4gICAgICBsYXRlc3Q6IHRydWUsXG4gICAgICB2ZXJzaW9uOiB2ZXJzaW9uRGF0YSxcbiAgICB9LFxuICAgIGRiLFxuICAgIGZpZWxkczogYnVpbGRWZXJzaW9uR2xvYmFsRmllbGRzKGdsb2JhbCksXG4gICAgb3BlcmF0aW9uOiAnY3JlYXRlJyxcbiAgICB0YWJsZU5hbWUsXG4gICAgcmVxLFxuICB9KVxuXG4gIGNvbnN0IHRhYmxlID0gdGhpcy50YWJsZXNbdGFibGVOYW1lXVxuXG4gIGlmIChnbG9iYWwudmVyc2lvbnMuZHJhZnRzKSB7XG4gICAgYXdhaXQgZGIuZXhlY3V0ZShzcWxgXG4gICAgICBVUERBVEUgJHt0YWJsZX1cbiAgICAgIFNFVCBsYXRlc3QgPSBmYWxzZVxuICAgICAgV0hFUkUgJHt0YWJsZS5pZH0gIT0gJHtyZXN1bHQuaWR9O1xuICAgIGApXG4gIH1cblxuICByZXR1cm4gcmVzdWx0XG59XG4iXSwibmFtZXMiOlsiY3JlYXRlR2xvYmFsVmVyc2lvbiIsImF1dG9zYXZlIiwiZ2xvYmFsU2x1ZyIsInJlcSIsInZlcnNpb25EYXRhIiwiZGIiLCJzZXNzaW9ucyIsInRyYW5zYWN0aW9uSUQiLCJkcml6emxlIiwiZ2xvYmFsIiwicGF5bG9hZCIsImdsb2JhbHMiLCJjb25maWciLCJmaW5kIiwic2x1ZyIsImdsb2JhbFRhYmxlTmFtZSIsInRvU25ha2VDYXNlIiwidGFibGVOYW1lIiwicmVzdWx0IiwidXBzZXJ0Um93IiwiYWRhcHRlciIsImRhdGEiLCJsYXRlc3QiLCJ2ZXJzaW9uIiwiZmllbGRzIiwiYnVpbGRWZXJzaW9uR2xvYmFsRmllbGRzIiwib3BlcmF0aW9uIiwidGFibGUiLCJ0YWJsZXMiLCJ2ZXJzaW9ucyIsImRyYWZ0cyIsImV4ZWN1dGUiLCJzcWwiLCJpZCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFZc0JBOzs7ZUFBQUE7Ozs0QkFSRjswQkFDcUI7b0VBQ2pCOzJCQUlFOzs7Ozs7QUFFbkIsZUFBZUEsb0JBRXBCLEVBQUVDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxNQUFNLENBQUMsQ0FBbUIsRUFBRUMsV0FBVyxFQUEyQjtJQUUxRixNQUFNQyxLQUFLLElBQUksQ0FBQ0MsUUFBUSxDQUFDSCxJQUFJSSxhQUFhLENBQUMsRUFBRUYsTUFBTSxJQUFJLENBQUNHLE9BQU87SUFDL0QsTUFBTUMsU0FBUyxJQUFJLENBQUNDLE9BQU8sQ0FBQ0MsT0FBTyxDQUFDQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDLEVBQUVDLElBQUksRUFBRSxHQUFLQSxTQUFTWjtJQUN2RSxNQUFNYSxrQkFBa0JDLElBQUFBLG9CQUFXLEVBQUNkO0lBQ3BDLE1BQU1lLFlBQVksQ0FBQyxDQUFDLEVBQUVGLGdCQUFnQixFQUFFLENBQUM7SUFFekMsTUFBTUcsU0FBUyxNQUFNQyxJQUFBQSxvQkFBUyxFQUFxQjtRQUNqREMsU0FBUyxJQUFJO1FBQ2JDLE1BQU07WUFDSnBCO1lBQ0FxQixRQUFRO1lBQ1JDLFNBQVNuQjtRQUNYO1FBQ0FDO1FBQ0FtQixRQUFRQyxJQUFBQSxrQ0FBd0IsRUFBQ2hCO1FBQ2pDaUIsV0FBVztRQUNYVDtRQUNBZDtJQUNGO0lBRUEsTUFBTXdCLFFBQVEsSUFBSSxDQUFDQyxNQUFNLENBQUNYLFVBQVU7SUFFcEMsSUFBSVIsT0FBT29CLFFBQVEsQ0FBQ0MsTUFBTSxFQUFFO1FBQzFCLE1BQU16QixHQUFHMEIsT0FBTyxDQUFDQyxJQUFBQSxlQUFHLENBQUEsQ0FBQzthQUNaLEVBQUVMLE1BQU07O1lBRVQsRUFBRUEsTUFBTU0sRUFBRSxDQUFDLElBQUksRUFBRWYsT0FBT2UsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFDSDtJQUVBLE9BQU9mO0FBQ1QifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"createVersion.d.ts","sourceRoot":"","sources":["../src/createVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAC1E,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,eAAe,CAAA;AAM/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,wBAAsB,aAAa,CAAC,CAAC,SAAS,UAAU,EACtD,IAAI,EAAE,eAAe,EACrB,EACE,QAAQ,EACR,cAAc,EACd,MAAM,EACN,GAA0B,EAC1B,WAAW,GACZ,EAAE,iBAAiB,CAAC,CAAC,CAAC,+BAqCxB"}
1
+ {"version":3,"file":"createVersion.d.ts","sourceRoot":"","sources":["../src/createVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAC1E,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,eAAe,CAAA;AAM/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,wBAAsB,aAAa,CAAC,CAAC,SAAS,UAAU,EACtD,IAAI,EAAE,eAAe,EACrB,EACE,QAAQ,EACR,cAAc,EACd,MAAM,EACN,GAA0B,EAC1B,WAAW,GACZ,EAAE,iBAAiB,CAAC,CAAC,CAAC,+BAsCxB"}
@@ -33,7 +33,8 @@ async function createVersion({ autosave, collectionSlug, parent, req = {}, versi
33
33
  db,
34
34
  fields: (0, _versions.buildVersionCollectionFields)(collection),
35
35
  operation: 'create',
36
- tableName
36
+ tableName,
37
+ req
37
38
  });
38
39
  const table = this.tables[tableName];
39
40
  const relationshipsTable = this.tables[`${tableName}_rels`];
@@ -46,9 +47,9 @@ async function createVersion({ autosave, collectionSlug, parent, req = {}, versi
46
47
  AND ${relationshipsTable.path} = ${'parent'}
47
48
  AND ${relationshipsTable[`${collectionSlug}ID`]} = ${parent}
48
49
  AND ${table.id} != ${result.id};
49
- `);
50
+ `);
50
51
  }
51
52
  return result;
52
53
  }
53
54
 
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVWZXJzaW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ3JlYXRlVmVyc2lvbkFyZ3MsIFR5cGVXaXRoVmVyc2lvbiB9IGZyb20gJ3BheWxvYWQvZGF0YWJhc2UnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0LCBUeXBlV2l0aElEIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgc3FsIH0gZnJvbSAnZHJpenpsZS1vcm0nXG5pbXBvcnQgeyBidWlsZFZlcnNpb25Db2xsZWN0aW9uRmllbGRzIH0gZnJvbSAncGF5bG9hZC92ZXJzaW9ucydcbmltcG9ydCB0b1NuYWtlQ2FzZSBmcm9tICd0by1zbmFrZS1jYXNlJ1xuXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IHVwc2VydFJvdyB9IGZyb20gJy4vdXBzZXJ0Um93J1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlVmVyc2lvbjxUIGV4dGVuZHMgVHlwZVdpdGhJRD4oXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAge1xuICAgIGF1dG9zYXZlLFxuICAgIGNvbGxlY3Rpb25TbHVnLFxuICAgIHBhcmVudCxcbiAgICByZXEgPSB7fSBhcyBQYXlsb2FkUmVxdWVzdCxcbiAgICB2ZXJzaW9uRGF0YSxcbiAgfTogQ3JlYXRlVmVyc2lvbkFyZ3M8VD4sXG4pIHtcbiAgY29uc3QgZGIgPSB0aGlzLnNlc3Npb25zW3JlcS50cmFuc2FjdGlvbklEXT8uZGIgfHwgdGhpcy5kcml6emxlXG4gIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLnBheWxvYWQuY29sbGVjdGlvbnNbY29sbGVjdGlvblNsdWddLmNvbmZpZ1xuICBjb25zdCBjb2xsZWN0aW9uVGFibGVOYW1lID0gdG9TbmFrZUNhc2UoY29sbGVjdGlvblNsdWcpXG4gIGNvbnN0IHRhYmxlTmFtZSA9IGBfJHtjb2xsZWN0aW9uVGFibGVOYW1lfV92YFxuXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHVwc2VydFJvdzxUeXBlV2l0aFZlcnNpb248VD4+KHtcbiAgICBhZGFwdGVyOiB0aGlzLFxuICAgIGRhdGE6IHtcbiAgICAgIGF1dG9zYXZlLFxuICAgICAgbGF0ZXN0OiB0cnVlLFxuICAgICAgcGFyZW50LFxuICAgICAgdmVyc2lvbjogdmVyc2lvbkRhdGEsXG4gICAgfSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGJ1aWxkVmVyc2lvbkNvbGxlY3Rpb25GaWVsZHMoY29sbGVjdGlvbiksXG4gICAgb3BlcmF0aW9uOiAnY3JlYXRlJyxcbiAgICB0YWJsZU5hbWUsXG4gIH0pXG5cbiAgY29uc3QgdGFibGUgPSB0aGlzLnRhYmxlc1t0YWJsZU5hbWVdXG4gIGNvbnN0IHJlbGF0aW9uc2hpcHNUYWJsZSA9IHRoaXMudGFibGVzW2Ake3RhYmxlTmFtZX1fcmVsc2BdXG5cbiAgaWYgKGNvbGxlY3Rpb24udmVyc2lvbnMuZHJhZnRzKSB7XG4gICAgYXdhaXQgZGIuZXhlY3V0ZShzcWxgXG4gICAgICBVUERBVEUgJHt0YWJsZX1cbiAgICAgIFNFVCBsYXRlc3QgPSBmYWxzZVxuICAgICAgRlJPTSAke3JlbGF0aW9uc2hpcHNUYWJsZX1cbiAgICAgIFdIRVJFICR7dGFibGUuaWR9ID0gJHtyZWxhdGlvbnNoaXBzVGFibGUucGFyZW50fVxuICAgICAgICBBTkQgJHtyZWxhdGlvbnNoaXBzVGFibGUucGF0aH0gPSAkeydwYXJlbnQnfVxuICAgICAgICBBTkQgJHtyZWxhdGlvbnNoaXBzVGFibGVbYCR7Y29sbGVjdGlvblNsdWd9SURgXX0gPSAke3BhcmVudH1cbiAgICAgICAgQU5EICR7dGFibGUuaWR9ICE9ICR7cmVzdWx0LmlkfTtcbiAgYClcbiAgfVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGVWZXJzaW9uIiwiYXV0b3NhdmUiLCJjb2xsZWN0aW9uU2x1ZyIsInBhcmVudCIsInJlcSIsInZlcnNpb25EYXRhIiwiZGIiLCJzZXNzaW9ucyIsInRyYW5zYWN0aW9uSUQiLCJkcml6emxlIiwiY29sbGVjdGlvbiIsInBheWxvYWQiLCJjb2xsZWN0aW9ucyIsImNvbmZpZyIsImNvbGxlY3Rpb25UYWJsZU5hbWUiLCJ0b1NuYWtlQ2FzZSIsInRhYmxlTmFtZSIsInJlc3VsdCIsInVwc2VydFJvdyIsImFkYXB0ZXIiLCJkYXRhIiwibGF0ZXN0IiwidmVyc2lvbiIsImZpZWxkcyIsImJ1aWxkVmVyc2lvbkNvbGxlY3Rpb25GaWVsZHMiLCJvcGVyYXRpb24iLCJ0YWJsZSIsInRhYmxlcyIsInJlbGF0aW9uc2hpcHNUYWJsZSIsInZlcnNpb25zIiwiZHJhZnRzIiwiZXhlY3V0ZSIsInNxbCIsImlkIiwicGF0aCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFXc0JBOzs7ZUFBQUE7Ozs0QkFSRjswQkFDeUI7b0VBQ3JCOzJCQUlFOzs7Ozs7QUFFbkIsZUFBZUEsY0FFcEIsRUFDRUMsUUFBUSxFQUNSQyxjQUFjLEVBQ2RDLE1BQU0sRUFDTkMsTUFBTSxDQUFDLENBQW1CLEVBQzFCQyxXQUFXLEVBQ1U7SUFFdkIsTUFBTUMsS0FBSyxJQUFJLENBQUNDLFFBQVEsQ0FBQ0gsSUFBSUksYUFBYSxDQUFDLEVBQUVGLE1BQU0sSUFBSSxDQUFDRyxPQUFPO0lBQy9ELE1BQU1DLGFBQWEsSUFBSSxDQUFDQyxPQUFPLENBQUNDLFdBQVcsQ0FBQ1YsZUFBZSxDQUFDVyxNQUFNO0lBQ2xFLE1BQU1DLHNCQUFzQkMsSUFBQUEsb0JBQVcsRUFBQ2I7SUFDeEMsTUFBTWMsWUFBWSxDQUFDLENBQUMsRUFBRUYsb0JBQW9CLEVBQUUsQ0FBQztJQUU3QyxNQUFNRyxTQUFTLE1BQU1DLElBQUFBLG9CQUFTLEVBQXFCO1FBQ2pEQyxTQUFTLElBQUk7UUFDYkMsTUFBTTtZQUNKbkI7WUFDQW9CLFFBQVE7WUFDUmxCO1lBQ0FtQixTQUFTakI7UUFDWDtRQUNBQztRQUNBaUIsUUFBUUMsSUFBQUEsc0NBQTRCLEVBQUNkO1FBQ3JDZSxXQUFXO1FBQ1hUO0lBQ0Y7SUFFQSxNQUFNVSxRQUFRLElBQUksQ0FBQ0MsTUFBTSxDQUFDWCxVQUFVO0lBQ3BDLE1BQU1ZLHFCQUFxQixJQUFJLENBQUNELE1BQU0sQ0FBQyxDQUFDLEVBQUVYLFVBQVUsS0FBSyxDQUFDLENBQUM7SUFFM0QsSUFBSU4sV0FBV21CLFFBQVEsQ0FBQ0MsTUFBTSxFQUFFO1FBQzlCLE1BQU14QixHQUFHeUIsT0FBTyxDQUFDQyxJQUFBQSxlQUFHLENBQUEsQ0FBQzthQUNaLEVBQUVOLE1BQU07O1dBRVYsRUFBRUUsbUJBQW1CO1lBQ3BCLEVBQUVGLE1BQU1PLEVBQUUsQ0FBQyxHQUFHLEVBQUVMLG1CQUFtQnpCLE1BQU0sQ0FBQztZQUMxQyxFQUFFeUIsbUJBQW1CTSxJQUFJLENBQUMsR0FBRyxFQUFFLFNBQVM7WUFDeEMsRUFBRU4sa0JBQWtCLENBQUMsQ0FBQyxFQUFFMUIsZUFBZSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRUMsT0FBTztZQUN4RCxFQUFFdUIsTUFBTU8sRUFBRSxDQUFDLElBQUksRUFBRWhCLE9BQU9nQixFQUFFLENBQUM7RUFDckMsQ0FBQztJQUNEO0lBRUEsT0FBT2hCO0FBQ1QifQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVWZXJzaW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ3JlYXRlVmVyc2lvbkFyZ3MsIFR5cGVXaXRoVmVyc2lvbiB9IGZyb20gJ3BheWxvYWQvZGF0YWJhc2UnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWRSZXF1ZXN0LCBUeXBlV2l0aElEIH0gZnJvbSAncGF5bG9hZC90eXBlcydcblxuaW1wb3J0IHsgc3FsIH0gZnJvbSAnZHJpenpsZS1vcm0nXG5pbXBvcnQgeyBidWlsZFZlcnNpb25Db2xsZWN0aW9uRmllbGRzIH0gZnJvbSAncGF5bG9hZC92ZXJzaW9ucydcbmltcG9ydCB0b1NuYWtlQ2FzZSBmcm9tICd0by1zbmFrZS1jYXNlJ1xuXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IHVwc2VydFJvdyB9IGZyb20gJy4vdXBzZXJ0Um93J1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlVmVyc2lvbjxUIGV4dGVuZHMgVHlwZVdpdGhJRD4oXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAge1xuICAgIGF1dG9zYXZlLFxuICAgIGNvbGxlY3Rpb25TbHVnLFxuICAgIHBhcmVudCxcbiAgICByZXEgPSB7fSBhcyBQYXlsb2FkUmVxdWVzdCxcbiAgICB2ZXJzaW9uRGF0YSxcbiAgfTogQ3JlYXRlVmVyc2lvbkFyZ3M8VD4sXG4pIHtcbiAgY29uc3QgZGIgPSB0aGlzLnNlc3Npb25zW3JlcS50cmFuc2FjdGlvbklEXT8uZGIgfHwgdGhpcy5kcml6emxlXG4gIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLnBheWxvYWQuY29sbGVjdGlvbnNbY29sbGVjdGlvblNsdWddLmNvbmZpZ1xuICBjb25zdCBjb2xsZWN0aW9uVGFibGVOYW1lID0gdG9TbmFrZUNhc2UoY29sbGVjdGlvblNsdWcpXG4gIGNvbnN0IHRhYmxlTmFtZSA9IGBfJHtjb2xsZWN0aW9uVGFibGVOYW1lfV92YFxuXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHVwc2VydFJvdzxUeXBlV2l0aFZlcnNpb248VD4+KHtcbiAgICBhZGFwdGVyOiB0aGlzLFxuICAgIGRhdGE6IHtcbiAgICAgIGF1dG9zYXZlLFxuICAgICAgbGF0ZXN0OiB0cnVlLFxuICAgICAgcGFyZW50LFxuICAgICAgdmVyc2lvbjogdmVyc2lvbkRhdGEsXG4gICAgfSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGJ1aWxkVmVyc2lvbkNvbGxlY3Rpb25GaWVsZHMoY29sbGVjdGlvbiksXG4gICAgb3BlcmF0aW9uOiAnY3JlYXRlJyxcbiAgICB0YWJsZU5hbWUsXG4gICAgcmVxLFxuICB9KVxuXG4gIGNvbnN0IHRhYmxlID0gdGhpcy50YWJsZXNbdGFibGVOYW1lXVxuICBjb25zdCByZWxhdGlvbnNoaXBzVGFibGUgPSB0aGlzLnRhYmxlc1tgJHt0YWJsZU5hbWV9X3JlbHNgXVxuXG4gIGlmIChjb2xsZWN0aW9uLnZlcnNpb25zLmRyYWZ0cykge1xuICAgIGF3YWl0IGRiLmV4ZWN1dGUoc3FsYFxuICAgICAgVVBEQVRFICR7dGFibGV9XG4gICAgICBTRVQgbGF0ZXN0ID0gZmFsc2VcbiAgICAgIEZST00gJHtyZWxhdGlvbnNoaXBzVGFibGV9XG4gICAgICBXSEVSRSAke3RhYmxlLmlkfSA9ICR7cmVsYXRpb25zaGlwc1RhYmxlLnBhcmVudH1cbiAgICAgICAgQU5EICR7cmVsYXRpb25zaGlwc1RhYmxlLnBhdGh9ID0gJHsncGFyZW50J31cbiAgICAgICAgQU5EICR7cmVsYXRpb25zaGlwc1RhYmxlW2Ake2NvbGxlY3Rpb25TbHVnfUlEYF19ID0gJHtwYXJlbnR9XG4gICAgICAgIEFORCAke3RhYmxlLmlkfSAhPSAke3Jlc3VsdC5pZH07XG4gICAgYClcbiAgfVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGVWZXJzaW9uIiwiYXV0b3NhdmUiLCJjb2xsZWN0aW9uU2x1ZyIsInBhcmVudCIsInJlcSIsInZlcnNpb25EYXRhIiwiZGIiLCJzZXNzaW9ucyIsInRyYW5zYWN0aW9uSUQiLCJkcml6emxlIiwiY29sbGVjdGlvbiIsInBheWxvYWQiLCJjb2xsZWN0aW9ucyIsImNvbmZpZyIsImNvbGxlY3Rpb25UYWJsZU5hbWUiLCJ0b1NuYWtlQ2FzZSIsInRhYmxlTmFtZSIsInJlc3VsdCIsInVwc2VydFJvdyIsImFkYXB0ZXIiLCJkYXRhIiwibGF0ZXN0IiwidmVyc2lvbiIsImZpZWxkcyIsImJ1aWxkVmVyc2lvbkNvbGxlY3Rpb25GaWVsZHMiLCJvcGVyYXRpb24iLCJ0YWJsZSIsInRhYmxlcyIsInJlbGF0aW9uc2hpcHNUYWJsZSIsInZlcnNpb25zIiwiZHJhZnRzIiwiZXhlY3V0ZSIsInNxbCIsImlkIiwicGF0aCJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFXc0JBOzs7ZUFBQUE7Ozs0QkFSRjswQkFDeUI7b0VBQ3JCOzJCQUlFOzs7Ozs7QUFFbkIsZUFBZUEsY0FFcEIsRUFDRUMsUUFBUSxFQUNSQyxjQUFjLEVBQ2RDLE1BQU0sRUFDTkMsTUFBTSxDQUFDLENBQW1CLEVBQzFCQyxXQUFXLEVBQ1U7SUFFdkIsTUFBTUMsS0FBSyxJQUFJLENBQUNDLFFBQVEsQ0FBQ0gsSUFBSUksYUFBYSxDQUFDLEVBQUVGLE1BQU0sSUFBSSxDQUFDRyxPQUFPO0lBQy9ELE1BQU1DLGFBQWEsSUFBSSxDQUFDQyxPQUFPLENBQUNDLFdBQVcsQ0FBQ1YsZUFBZSxDQUFDVyxNQUFNO0lBQ2xFLE1BQU1DLHNCQUFzQkMsSUFBQUEsb0JBQVcsRUFBQ2I7SUFDeEMsTUFBTWMsWUFBWSxDQUFDLENBQUMsRUFBRUYsb0JBQW9CLEVBQUUsQ0FBQztJQUU3QyxNQUFNRyxTQUFTLE1BQU1DLElBQUFBLG9CQUFTLEVBQXFCO1FBQ2pEQyxTQUFTLElBQUk7UUFDYkMsTUFBTTtZQUNKbkI7WUFDQW9CLFFBQVE7WUFDUmxCO1lBQ0FtQixTQUFTakI7UUFDWDtRQUNBQztRQUNBaUIsUUFBUUMsSUFBQUEsc0NBQTRCLEVBQUNkO1FBQ3JDZSxXQUFXO1FBQ1hUO1FBQ0FaO0lBQ0Y7SUFFQSxNQUFNc0IsUUFBUSxJQUFJLENBQUNDLE1BQU0sQ0FBQ1gsVUFBVTtJQUNwQyxNQUFNWSxxQkFBcUIsSUFBSSxDQUFDRCxNQUFNLENBQUMsQ0FBQyxFQUFFWCxVQUFVLEtBQUssQ0FBQyxDQUFDO0lBRTNELElBQUlOLFdBQVdtQixRQUFRLENBQUNDLE1BQU0sRUFBRTtRQUM5QixNQUFNeEIsR0FBR3lCLE9BQU8sQ0FBQ0MsSUFBQUEsZUFBRyxDQUFBLENBQUM7YUFDWixFQUFFTixNQUFNOztXQUVWLEVBQUVFLG1CQUFtQjtZQUNwQixFQUFFRixNQUFNTyxFQUFFLENBQUMsR0FBRyxFQUFFTCxtQkFBbUJ6QixNQUFNLENBQUM7WUFDMUMsRUFBRXlCLG1CQUFtQk0sSUFBSSxDQUFDLEdBQUcsRUFBRSxTQUFTO1lBQ3hDLEVBQUVOLGtCQUFrQixDQUFDLENBQUMsRUFBRTFCLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUVDLE9BQU87WUFDeEQsRUFBRXVCLE1BQU1PLEVBQUUsQ0FBQyxJQUFJLEVBQUVoQixPQUFPZ0IsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFDSDtJQUVBLE9BQU9oQjtBQUNUIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAmB,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAmC3E,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE7D,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,qBAAqB,CA2DjE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAmB,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAmC3E,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE7D,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,qBAAqB,CA4DjE"}
package/dist/index.js CHANGED
@@ -64,6 +64,7 @@ function postgresAdapter(args) {
64
64
  schema: {},
65
65
  sessions: {},
66
66
  tables: {},
67
+ fieldConstraints: {},
67
68
  // DatabaseAdapter
68
69
  beginTransaction: _beginTransaction.beginTransaction,
69
70
  commitTransaction: _commitTransaction.commitTransaction,
@@ -103,4 +104,4 @@ function postgresAdapter(args) {
103
104
  return adapter;
104
105
  }
105
106
 
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICdwYXlsb2FkJ1xuXG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xuaW1wb3J0IHsgY3JlYXRlRGF0YWJhc2VBZGFwdGVyIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcblxuaW1wb3J0IHR5cGUgeyBBcmdzLCBQb3N0Z3Jlc0FkYXB0ZXIsIFBvc3RncmVzQWRhcHRlclJlc3VsdCB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IGNvbm5lY3QgfSBmcm9tICcuL2Nvbm5lY3QnXG5pbXBvcnQgeyBjcmVhdGUgfSBmcm9tICcuL2NyZWF0ZSdcbmltcG9ydCB7IGNyZWF0ZUdsb2JhbCB9IGZyb20gJy4vY3JlYXRlR2xvYmFsJ1xuaW1wb3J0IHsgY3JlYXRlR2xvYmFsVmVyc2lvbiB9IGZyb20gJy4vY3JlYXRlR2xvYmFsVmVyc2lvbidcbmltcG9ydCB7IGNyZWF0ZU1pZ3JhdGlvbiB9IGZyb20gJy4vY3JlYXRlTWlncmF0aW9uJ1xuaW1wb3J0IHsgY3JlYXRlVmVyc2lvbiB9IGZyb20gJy4vY3JlYXRlVmVyc2lvbidcbmltcG9ydCB7IGRlbGV0ZU1hbnkgfSBmcm9tICcuL2RlbGV0ZU1hbnknXG5pbXBvcnQgeyBkZWxldGVPbmUgfSBmcm9tICcuL2RlbGV0ZU9uZSdcbmltcG9ydCB7IGRlbGV0ZVZlcnNpb25zIH0gZnJvbSAnLi9kZWxldGVWZXJzaW9ucydcbmltcG9ydCB7IGRlc3Ryb3kgfSBmcm9tICcuL2Rlc3Ryb3knXG5pbXBvcnQgeyBleHRlbmRWaXRlQ29uZmlnIH0gZnJvbSAnLi9leHRlbmRWaXRlQ29uZmlnJ1xuaW1wb3J0IHsgZXh0ZW5kV2VicGFja0NvbmZpZyB9IGZyb20gJy4vZXh0ZW5kV2VicGFja0NvbmZpZydcbmltcG9ydCB7IGZpbmQgfSBmcm9tICcuL2ZpbmQnXG5pbXBvcnQgeyBmaW5kR2xvYmFsIH0gZnJvbSAnLi9maW5kR2xvYmFsJ1xuaW1wb3J0IHsgZmluZEdsb2JhbFZlcnNpb25zIH0gZnJvbSAnLi9maW5kR2xvYmFsVmVyc2lvbnMnXG5pbXBvcnQgeyBmaW5kT25lIH0gZnJvbSAnLi9maW5kT25lJ1xuaW1wb3J0IHsgZmluZFZlcnNpb25zIH0gZnJvbSAnLi9maW5kVmVyc2lvbnMnXG5pbXBvcnQgeyBpbml0IH0gZnJvbSAnLi9pbml0J1xuaW1wb3J0IHsgbWlncmF0ZSB9IGZyb20gJy4vbWlncmF0ZSdcbmltcG9ydCB7IG1pZ3JhdGVEb3duIH0gZnJvbSAnLi9taWdyYXRlRG93bidcbmltcG9ydCB7IG1pZ3JhdGVGcmVzaCB9IGZyb20gJy4vbWlncmF0ZUZyZXNoJ1xuaW1wb3J0IHsgbWlncmF0ZVJlZnJlc2ggfSBmcm9tICcuL21pZ3JhdGVSZWZyZXNoJ1xuaW1wb3J0IHsgbWlncmF0ZVJlc2V0IH0gZnJvbSAnLi9taWdyYXRlUmVzZXQnXG5pbXBvcnQgeyBtaWdyYXRlU3RhdHVzIH0gZnJvbSAnLi9taWdyYXRlU3RhdHVzJ1xuaW1wb3J0IHsgcXVlcnlEcmFmdHMgfSBmcm9tICcuL3F1ZXJ5RHJhZnRzJ1xuaW1wb3J0IHsgYmVnaW5UcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb25zL2JlZ2luVHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBjb21taXRUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb25zL2NvbW1pdFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgcm9sbGJhY2tUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb25zL3JvbGxiYWNrVHJhbnNhY3Rpb24nXG5pbXBvcnQgeyB1cGRhdGVPbmUgfSBmcm9tICcuL3VwZGF0ZSdcbmltcG9ydCB7IHVwZGF0ZUdsb2JhbCB9IGZyb20gJy4vdXBkYXRlR2xvYmFsJ1xuaW1wb3J0IHsgdXBkYXRlR2xvYmFsVmVyc2lvbiB9IGZyb20gJy4vdXBkYXRlR2xvYmFsVmVyc2lvbidcbmltcG9ydCB7IHVwZGF0ZVZlcnNpb24gfSBmcm9tICcuL3VwZGF0ZVZlcnNpb24nXG5cbmV4cG9ydCB0eXBlIHsgTWlncmF0ZURvd25BcmdzLCBNaWdyYXRlVXBBcmdzIH0gZnJvbSAnLi90eXBlcydcblxuZXhwb3J0IGZ1bmN0aW9uIHBvc3RncmVzQWRhcHRlcihhcmdzOiBBcmdzKTogUG9zdGdyZXNBZGFwdGVyUmVzdWx0IHtcbiAgZnVuY3Rpb24gYWRhcHRlcih7IHBheWxvYWQgfTogeyBwYXlsb2FkOiBQYXlsb2FkIH0pIHtcbiAgICBjb25zdCBtaWdyYXRpb25EaXIgPSBhcmdzLm1pZ3JhdGlvbkRpciB8fCBwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgJ3NyYy9taWdyYXRpb25zJylcblxuICAgIGV4dGVuZFdlYnBhY2tDb25maWcocGF5bG9hZC5jb25maWcpXG4gICAgZXh0ZW5kVml0ZUNvbmZpZyhwYXlsb2FkLmNvbmZpZylcblxuICAgIHJldHVybiBjcmVhdGVEYXRhYmFzZUFkYXB0ZXI8UG9zdGdyZXNBZGFwdGVyPih7XG4gICAgICBuYW1lOiAncG9zdGdyZXMnLFxuXG4gICAgICAvLyBQb3N0Z3Jlcy1zcGVjaWZpY1xuICAgICAgZHJpenpsZTogdW5kZWZpbmVkLFxuICAgICAgZW51bXM6IHt9LFxuICAgICAgcG9vbDogdW5kZWZpbmVkLFxuICAgICAgcG9vbE9wdGlvbnM6IGFyZ3MucG9vbCxcbiAgICAgIHB1c2g6IGFyZ3MucHVzaCxcbiAgICAgIHJlbGF0aW9uczoge30sXG4gICAgICBzY2hlbWE6IHt9LFxuICAgICAgc2Vzc2lvbnM6IHt9LFxuICAgICAgdGFibGVzOiB7fSxcblxuICAgICAgLy8gRGF0YWJhc2VBZGFwdGVyXG4gICAgICBiZWdpblRyYW5zYWN0aW9uLFxuICAgICAgY29tbWl0VHJhbnNhY3Rpb24sXG4gICAgICBjb25uZWN0LFxuICAgICAgY3JlYXRlLFxuICAgICAgY3JlYXRlR2xvYmFsLFxuICAgICAgY3JlYXRlR2xvYmFsVmVyc2lvbixcbiAgICAgIGNyZWF0ZU1pZ3JhdGlvbixcbiAgICAgIGNyZWF0ZVZlcnNpb24sXG4gICAgICBkZWZhdWx0SURUeXBlOiAnbnVtYmVyJyxcbiAgICAgIGRlbGV0ZU1hbnksXG4gICAgICBkZWxldGVPbmUsXG4gICAgICBkZWxldGVWZXJzaW9ucyxcbiAgICAgIGRlc3Ryb3ksXG4gICAgICBmaW5kLFxuICAgICAgZmluZEdsb2JhbCxcbiAgICAgIGZpbmRHbG9iYWxWZXJzaW9ucyxcbiAgICAgIGZpbmRPbmUsXG4gICAgICBmaW5kVmVyc2lvbnMsXG4gICAgICBpbml0LFxuICAgICAgbWlncmF0ZSxcbiAgICAgIG1pZ3JhdGVEb3duLFxuICAgICAgbWlncmF0ZUZyZXNoLFxuICAgICAgbWlncmF0ZVJlZnJlc2gsXG4gICAgICBtaWdyYXRlUmVzZXQsXG4gICAgICBtaWdyYXRlU3RhdHVzLFxuICAgICAgbWlncmF0aW9uRGlyLFxuICAgICAgcGF5bG9hZCxcbiAgICAgIHF1ZXJ5RHJhZnRzLFxuICAgICAgcm9sbGJhY2tUcmFuc2FjdGlvbixcbiAgICAgIHVwZGF0ZUdsb2JhbCxcbiAgICAgIHVwZGF0ZUdsb2JhbFZlcnNpb24sXG4gICAgICB1cGRhdGVPbmUsXG4gICAgICB1cGRhdGVWZXJzaW9uLFxuICAgIH0pXG4gIH1cblxuICByZXR1cm4gYWRhcHRlclxufVxuIl0sIm5hbWVzIjpbInBvc3RncmVzQWRhcHRlciIsImFyZ3MiLCJhZGFwdGVyIiwicGF5bG9hZCIsIm1pZ3JhdGlvbkRpciIsInBhdGgiLCJyZXNvbHZlIiwicHJvY2VzcyIsImN3ZCIsImV4dGVuZFdlYnBhY2tDb25maWciLCJjb25maWciLCJleHRlbmRWaXRlQ29uZmlnIiwiY3JlYXRlRGF0YWJhc2VBZGFwdGVyIiwibmFtZSIsImRyaXp6bGUiLCJ1bmRlZmluZWQiLCJlbnVtcyIsInBvb2wiLCJwb29sT3B0aW9ucyIsInB1c2giLCJyZWxhdGlvbnMiLCJzY2hlbWEiLCJzZXNzaW9ucyIsInRhYmxlcyIsImJlZ2luVHJhbnNhY3Rpb24iLCJjb21taXRUcmFuc2FjdGlvbiIsImNvbm5lY3QiLCJjcmVhdGUiLCJjcmVhdGVHbG9iYWwiLCJjcmVhdGVHbG9iYWxWZXJzaW9uIiwiY3JlYXRlTWlncmF0aW9uIiwiY3JlYXRlVmVyc2lvbiIsImRlZmF1bHRJRFR5cGUiLCJkZWxldGVNYW55IiwiZGVsZXRlT25lIiwiZGVsZXRlVmVyc2lvbnMiLCJkZXN0cm95IiwiZmluZCIsImZpbmRHbG9iYWwiLCJmaW5kR2xvYmFsVmVyc2lvbnMiLCJmaW5kT25lIiwiZmluZFZlcnNpb25zIiwiaW5pdCIsIm1pZ3JhdGUiLCJtaWdyYXRlRG93biIsIm1pZ3JhdGVGcmVzaCIsIm1pZ3JhdGVSZWZyZXNoIiwibWlncmF0ZVJlc2V0IiwibWlncmF0ZVN0YXR1cyIsInF1ZXJ5RHJhZnRzIiwicm9sbGJhY2tUcmFuc2FjdGlvbiIsInVwZGF0ZUdsb2JhbCIsInVwZGF0ZUdsb2JhbFZlcnNpb24iLCJ1cGRhdGVPbmUiLCJ1cGRhdGVWZXJzaW9uIl0sIm1hcHBpbmdzIjoiOzs7OytCQTBDZ0JBOzs7ZUFBQUE7Ozs2REF4Q0M7MEJBQ3FCO3lCQUlkO3dCQUNEOzhCQUNNO3FDQUNPO2lDQUNKOytCQUNGOzRCQUNIOzJCQUNEO2dDQUNLO3lCQUNQO2tDQUNTO3FDQUNHO3NCQUNmOzRCQUNNO29DQUNRO3lCQUNYOzhCQUNLO3NCQUNSO3lCQUNHOzZCQUNJOzhCQUNDO2dDQUNFOzhCQUNGOytCQUNDOzZCQUNGO2tDQUNLO21DQUNDO3FDQUNFO3dCQUNWOzhCQUNHO3FDQUNPOytCQUNOOzs7Ozs7QUFJdkIsU0FBU0EsZ0JBQWdCQyxJQUFVO0lBQ3hDLFNBQVNDLFFBQVEsRUFBRUMsT0FBTyxFQUF3QjtRQUNoRCxNQUFNQyxlQUFlSCxLQUFLRyxZQUFZLElBQUlDLGFBQUksQ0FBQ0MsT0FBTyxDQUFDQyxRQUFRQyxHQUFHLElBQUk7UUFFdEVDLElBQUFBLHdDQUFtQixFQUFDTixRQUFRTyxNQUFNO1FBQ2xDQyxJQUFBQSxrQ0FBZ0IsRUFBQ1IsUUFBUU8sTUFBTTtRQUUvQixPQUFPRSxJQUFBQSwrQkFBcUIsRUFBa0I7WUFDNUNDLE1BQU07WUFFTixvQkFBb0I7WUFDcEJDLFNBQVNDO1lBQ1RDLE9BQU8sQ0FBQztZQUNSQyxNQUFNRjtZQUNORyxhQUFhakIsS0FBS2dCLElBQUk7WUFDdEJFLE1BQU1sQixLQUFLa0IsSUFBSTtZQUNmQyxXQUFXLENBQUM7WUFDWkMsUUFBUSxDQUFDO1lBQ1RDLFVBQVUsQ0FBQztZQUNYQyxRQUFRLENBQUM7WUFFVCxrQkFBa0I7WUFDbEJDLGtCQUFBQSxrQ0FBZ0I7WUFDaEJDLG1CQUFBQSxvQ0FBaUI7WUFDakJDLFNBQUFBLGdCQUFPO1lBQ1BDLFFBQUFBLGNBQU07WUFDTkMsY0FBQUEsMEJBQVk7WUFDWkMscUJBQUFBLHdDQUFtQjtZQUNuQkMsaUJBQUFBLGdDQUFlO1lBQ2ZDLGVBQUFBLDRCQUFhO1lBQ2JDLGVBQWU7WUFDZkMsWUFBQUEsc0JBQVU7WUFDVkMsV0FBQUEsb0JBQVM7WUFDVEMsZ0JBQUFBLDhCQUFjO1lBQ2RDLFNBQUFBLGdCQUFPO1lBQ1BDLE1BQUFBLFVBQUk7WUFDSkMsWUFBQUEsc0JBQVU7WUFDVkMsb0JBQUFBLHNDQUFrQjtZQUNsQkMsU0FBQUEsZ0JBQU87WUFDUEMsY0FBQUEsMEJBQVk7WUFDWkMsTUFBQUEsVUFBSTtZQUNKQyxTQUFBQSxnQkFBTztZQUNQQyxhQUFBQSx3QkFBVztZQUNYQyxjQUFBQSwwQkFBWTtZQUNaQyxnQkFBQUEsOEJBQWM7WUFDZEMsY0FBQUEsMEJBQVk7WUFDWkMsZUFBQUEsNEJBQWE7WUFDYjVDO1lBQ0FEO1lBQ0E4QyxhQUFBQSx3QkFBVztZQUNYQyxxQkFBQUEsd0NBQW1CO1lBQ25CQyxjQUFBQSwwQkFBWTtZQUNaQyxxQkFBQUEsd0NBQW1CO1lBQ25CQyxXQUFBQSxpQkFBUztZQUNUQyxlQUFBQSw0QkFBYTtRQUNmO0lBQ0Y7SUFFQSxPQUFPcEQ7QUFDVCJ9
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICdwYXlsb2FkJ1xuXG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xuaW1wb3J0IHsgY3JlYXRlRGF0YWJhc2VBZGFwdGVyIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcblxuaW1wb3J0IHR5cGUgeyBBcmdzLCBQb3N0Z3Jlc0FkYXB0ZXIsIFBvc3RncmVzQWRhcHRlclJlc3VsdCB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IGNvbm5lY3QgfSBmcm9tICcuL2Nvbm5lY3QnXG5pbXBvcnQgeyBjcmVhdGUgfSBmcm9tICcuL2NyZWF0ZSdcbmltcG9ydCB7IGNyZWF0ZUdsb2JhbCB9IGZyb20gJy4vY3JlYXRlR2xvYmFsJ1xuaW1wb3J0IHsgY3JlYXRlR2xvYmFsVmVyc2lvbiB9IGZyb20gJy4vY3JlYXRlR2xvYmFsVmVyc2lvbidcbmltcG9ydCB7IGNyZWF0ZU1pZ3JhdGlvbiB9IGZyb20gJy4vY3JlYXRlTWlncmF0aW9uJ1xuaW1wb3J0IHsgY3JlYXRlVmVyc2lvbiB9IGZyb20gJy4vY3JlYXRlVmVyc2lvbidcbmltcG9ydCB7IGRlbGV0ZU1hbnkgfSBmcm9tICcuL2RlbGV0ZU1hbnknXG5pbXBvcnQgeyBkZWxldGVPbmUgfSBmcm9tICcuL2RlbGV0ZU9uZSdcbmltcG9ydCB7IGRlbGV0ZVZlcnNpb25zIH0gZnJvbSAnLi9kZWxldGVWZXJzaW9ucydcbmltcG9ydCB7IGRlc3Ryb3kgfSBmcm9tICcuL2Rlc3Ryb3knXG5pbXBvcnQgeyBleHRlbmRWaXRlQ29uZmlnIH0gZnJvbSAnLi9leHRlbmRWaXRlQ29uZmlnJ1xuaW1wb3J0IHsgZXh0ZW5kV2VicGFja0NvbmZpZyB9IGZyb20gJy4vZXh0ZW5kV2VicGFja0NvbmZpZydcbmltcG9ydCB7IGZpbmQgfSBmcm9tICcuL2ZpbmQnXG5pbXBvcnQgeyBmaW5kR2xvYmFsIH0gZnJvbSAnLi9maW5kR2xvYmFsJ1xuaW1wb3J0IHsgZmluZEdsb2JhbFZlcnNpb25zIH0gZnJvbSAnLi9maW5kR2xvYmFsVmVyc2lvbnMnXG5pbXBvcnQgeyBmaW5kT25lIH0gZnJvbSAnLi9maW5kT25lJ1xuaW1wb3J0IHsgZmluZFZlcnNpb25zIH0gZnJvbSAnLi9maW5kVmVyc2lvbnMnXG5pbXBvcnQgeyBpbml0IH0gZnJvbSAnLi9pbml0J1xuaW1wb3J0IHsgbWlncmF0ZSB9IGZyb20gJy4vbWlncmF0ZSdcbmltcG9ydCB7IG1pZ3JhdGVEb3duIH0gZnJvbSAnLi9taWdyYXRlRG93bidcbmltcG9ydCB7IG1pZ3JhdGVGcmVzaCB9IGZyb20gJy4vbWlncmF0ZUZyZXNoJ1xuaW1wb3J0IHsgbWlncmF0ZVJlZnJlc2ggfSBmcm9tICcuL21pZ3JhdGVSZWZyZXNoJ1xuaW1wb3J0IHsgbWlncmF0ZVJlc2V0IH0gZnJvbSAnLi9taWdyYXRlUmVzZXQnXG5pbXBvcnQgeyBtaWdyYXRlU3RhdHVzIH0gZnJvbSAnLi9taWdyYXRlU3RhdHVzJ1xuaW1wb3J0IHsgcXVlcnlEcmFmdHMgfSBmcm9tICcuL3F1ZXJ5RHJhZnRzJ1xuaW1wb3J0IHsgYmVnaW5UcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb25zL2JlZ2luVHJhbnNhY3Rpb24nXG5pbXBvcnQgeyBjb21taXRUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb25zL2NvbW1pdFRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgcm9sbGJhY2tUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb25zL3JvbGxiYWNrVHJhbnNhY3Rpb24nXG5pbXBvcnQgeyB1cGRhdGVPbmUgfSBmcm9tICcuL3VwZGF0ZSdcbmltcG9ydCB7IHVwZGF0ZUdsb2JhbCB9IGZyb20gJy4vdXBkYXRlR2xvYmFsJ1xuaW1wb3J0IHsgdXBkYXRlR2xvYmFsVmVyc2lvbiB9IGZyb20gJy4vdXBkYXRlR2xvYmFsVmVyc2lvbidcbmltcG9ydCB7IHVwZGF0ZVZlcnNpb24gfSBmcm9tICcuL3VwZGF0ZVZlcnNpb24nXG5cbmV4cG9ydCB0eXBlIHsgTWlncmF0ZURvd25BcmdzLCBNaWdyYXRlVXBBcmdzIH0gZnJvbSAnLi90eXBlcydcblxuZXhwb3J0IGZ1bmN0aW9uIHBvc3RncmVzQWRhcHRlcihhcmdzOiBBcmdzKTogUG9zdGdyZXNBZGFwdGVyUmVzdWx0IHtcbiAgZnVuY3Rpb24gYWRhcHRlcih7IHBheWxvYWQgfTogeyBwYXlsb2FkOiBQYXlsb2FkIH0pIHtcbiAgICBjb25zdCBtaWdyYXRpb25EaXIgPSBhcmdzLm1pZ3JhdGlvbkRpciB8fCBwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgJ3NyYy9taWdyYXRpb25zJylcblxuICAgIGV4dGVuZFdlYnBhY2tDb25maWcocGF5bG9hZC5jb25maWcpXG4gICAgZXh0ZW5kVml0ZUNvbmZpZyhwYXlsb2FkLmNvbmZpZylcblxuICAgIHJldHVybiBjcmVhdGVEYXRhYmFzZUFkYXB0ZXI8UG9zdGdyZXNBZGFwdGVyPih7XG4gICAgICBuYW1lOiAncG9zdGdyZXMnLFxuXG4gICAgICAvLyBQb3N0Z3Jlcy1zcGVjaWZpY1xuICAgICAgZHJpenpsZTogdW5kZWZpbmVkLFxuICAgICAgZW51bXM6IHt9LFxuICAgICAgcG9vbDogdW5kZWZpbmVkLFxuICAgICAgcG9vbE9wdGlvbnM6IGFyZ3MucG9vbCxcbiAgICAgIHB1c2g6IGFyZ3MucHVzaCxcbiAgICAgIHJlbGF0aW9uczoge30sXG4gICAgICBzY2hlbWE6IHt9LFxuICAgICAgc2Vzc2lvbnM6IHt9LFxuICAgICAgdGFibGVzOiB7fSxcbiAgICAgIGZpZWxkQ29uc3RyYWludHM6IHt9LFxuXG4gICAgICAvLyBEYXRhYmFzZUFkYXB0ZXJcbiAgICAgIGJlZ2luVHJhbnNhY3Rpb24sXG4gICAgICBjb21taXRUcmFuc2FjdGlvbixcbiAgICAgIGNvbm5lY3QsXG4gICAgICBjcmVhdGUsXG4gICAgICBjcmVhdGVHbG9iYWwsXG4gICAgICBjcmVhdGVHbG9iYWxWZXJzaW9uLFxuICAgICAgY3JlYXRlTWlncmF0aW9uLFxuICAgICAgY3JlYXRlVmVyc2lvbixcbiAgICAgIGRlZmF1bHRJRFR5cGU6ICdudW1iZXInLFxuICAgICAgZGVsZXRlTWFueSxcbiAgICAgIGRlbGV0ZU9uZSxcbiAgICAgIGRlbGV0ZVZlcnNpb25zLFxuICAgICAgZGVzdHJveSxcbiAgICAgIGZpbmQsXG4gICAgICBmaW5kR2xvYmFsLFxuICAgICAgZmluZEdsb2JhbFZlcnNpb25zLFxuICAgICAgZmluZE9uZSxcbiAgICAgIGZpbmRWZXJzaW9ucyxcbiAgICAgIGluaXQsXG4gICAgICBtaWdyYXRlLFxuICAgICAgbWlncmF0ZURvd24sXG4gICAgICBtaWdyYXRlRnJlc2gsXG4gICAgICBtaWdyYXRlUmVmcmVzaCxcbiAgICAgIG1pZ3JhdGVSZXNldCxcbiAgICAgIG1pZ3JhdGVTdGF0dXMsXG4gICAgICBtaWdyYXRpb25EaXIsXG4gICAgICBwYXlsb2FkLFxuICAgICAgcXVlcnlEcmFmdHMsXG4gICAgICByb2xsYmFja1RyYW5zYWN0aW9uLFxuICAgICAgdXBkYXRlR2xvYmFsLFxuICAgICAgdXBkYXRlR2xvYmFsVmVyc2lvbixcbiAgICAgIHVwZGF0ZU9uZSxcbiAgICAgIHVwZGF0ZVZlcnNpb24sXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBhZGFwdGVyXG59XG4iXSwibmFtZXMiOlsicG9zdGdyZXNBZGFwdGVyIiwiYXJncyIsImFkYXB0ZXIiLCJwYXlsb2FkIiwibWlncmF0aW9uRGlyIiwicGF0aCIsInJlc29sdmUiLCJwcm9jZXNzIiwiY3dkIiwiZXh0ZW5kV2VicGFja0NvbmZpZyIsImNvbmZpZyIsImV4dGVuZFZpdGVDb25maWciLCJjcmVhdGVEYXRhYmFzZUFkYXB0ZXIiLCJuYW1lIiwiZHJpenpsZSIsInVuZGVmaW5lZCIsImVudW1zIiwicG9vbCIsInBvb2xPcHRpb25zIiwicHVzaCIsInJlbGF0aW9ucyIsInNjaGVtYSIsInNlc3Npb25zIiwidGFibGVzIiwiZmllbGRDb25zdHJhaW50cyIsImJlZ2luVHJhbnNhY3Rpb24iLCJjb21taXRUcmFuc2FjdGlvbiIsImNvbm5lY3QiLCJjcmVhdGUiLCJjcmVhdGVHbG9iYWwiLCJjcmVhdGVHbG9iYWxWZXJzaW9uIiwiY3JlYXRlTWlncmF0aW9uIiwiY3JlYXRlVmVyc2lvbiIsImRlZmF1bHRJRFR5cGUiLCJkZWxldGVNYW55IiwiZGVsZXRlT25lIiwiZGVsZXRlVmVyc2lvbnMiLCJkZXN0cm95IiwiZmluZCIsImZpbmRHbG9iYWwiLCJmaW5kR2xvYmFsVmVyc2lvbnMiLCJmaW5kT25lIiwiZmluZFZlcnNpb25zIiwiaW5pdCIsIm1pZ3JhdGUiLCJtaWdyYXRlRG93biIsIm1pZ3JhdGVGcmVzaCIsIm1pZ3JhdGVSZWZyZXNoIiwibWlncmF0ZVJlc2V0IiwibWlncmF0ZVN0YXR1cyIsInF1ZXJ5RHJhZnRzIiwicm9sbGJhY2tUcmFuc2FjdGlvbiIsInVwZGF0ZUdsb2JhbCIsInVwZGF0ZUdsb2JhbFZlcnNpb24iLCJ1cGRhdGVPbmUiLCJ1cGRhdGVWZXJzaW9uIl0sIm1hcHBpbmdzIjoiOzs7OytCQTBDZ0JBOzs7ZUFBQUE7Ozs2REF4Q0M7MEJBQ3FCO3lCQUlkO3dCQUNEOzhCQUNNO3FDQUNPO2lDQUNKOytCQUNGOzRCQUNIOzJCQUNEO2dDQUNLO3lCQUNQO2tDQUNTO3FDQUNHO3NCQUNmOzRCQUNNO29DQUNRO3lCQUNYOzhCQUNLO3NCQUNSO3lCQUNHOzZCQUNJOzhCQUNDO2dDQUNFOzhCQUNGOytCQUNDOzZCQUNGO2tDQUNLO21DQUNDO3FDQUNFO3dCQUNWOzhCQUNHO3FDQUNPOytCQUNOOzs7Ozs7QUFJdkIsU0FBU0EsZ0JBQWdCQyxJQUFVO0lBQ3hDLFNBQVNDLFFBQVEsRUFBRUMsT0FBTyxFQUF3QjtRQUNoRCxNQUFNQyxlQUFlSCxLQUFLRyxZQUFZLElBQUlDLGFBQUksQ0FBQ0MsT0FBTyxDQUFDQyxRQUFRQyxHQUFHLElBQUk7UUFFdEVDLElBQUFBLHdDQUFtQixFQUFDTixRQUFRTyxNQUFNO1FBQ2xDQyxJQUFBQSxrQ0FBZ0IsRUFBQ1IsUUFBUU8sTUFBTTtRQUUvQixPQUFPRSxJQUFBQSwrQkFBcUIsRUFBa0I7WUFDNUNDLE1BQU07WUFFTixvQkFBb0I7WUFDcEJDLFNBQVNDO1lBQ1RDLE9BQU8sQ0FBQztZQUNSQyxNQUFNRjtZQUNORyxhQUFhakIsS0FBS2dCLElBQUk7WUFDdEJFLE1BQU1sQixLQUFLa0IsSUFBSTtZQUNmQyxXQUFXLENBQUM7WUFDWkMsUUFBUSxDQUFDO1lBQ1RDLFVBQVUsQ0FBQztZQUNYQyxRQUFRLENBQUM7WUFDVEMsa0JBQWtCLENBQUM7WUFFbkIsa0JBQWtCO1lBQ2xCQyxrQkFBQUEsa0NBQWdCO1lBQ2hCQyxtQkFBQUEsb0NBQWlCO1lBQ2pCQyxTQUFBQSxnQkFBTztZQUNQQyxRQUFBQSxjQUFNO1lBQ05DLGNBQUFBLDBCQUFZO1lBQ1pDLHFCQUFBQSx3Q0FBbUI7WUFDbkJDLGlCQUFBQSxnQ0FBZTtZQUNmQyxlQUFBQSw0QkFBYTtZQUNiQyxlQUFlO1lBQ2ZDLFlBQUFBLHNCQUFVO1lBQ1ZDLFdBQUFBLG9CQUFTO1lBQ1RDLGdCQUFBQSw4QkFBYztZQUNkQyxTQUFBQSxnQkFBTztZQUNQQyxNQUFBQSxVQUFJO1lBQ0pDLFlBQUFBLHNCQUFVO1lBQ1ZDLG9CQUFBQSxzQ0FBa0I7WUFDbEJDLFNBQUFBLGdCQUFPO1lBQ1BDLGNBQUFBLDBCQUFZO1lBQ1pDLE1BQUFBLFVBQUk7WUFDSkMsU0FBQUEsZ0JBQU87WUFDUEMsYUFBQUEsd0JBQVc7WUFDWEMsY0FBQUEsMEJBQVk7WUFDWkMsZ0JBQUFBLDhCQUFjO1lBQ2RDLGNBQUFBLDBCQUFZO1lBQ1pDLGVBQUFBLDRCQUFhO1lBQ2I3QztZQUNBRDtZQUNBK0MsYUFBQUEsd0JBQVc7WUFDWEMscUJBQUFBLHdDQUFtQjtZQUNuQkMsY0FBQUEsMEJBQVk7WUFDWkMscUJBQUFBLHdDQUFtQjtZQUNuQkMsV0FBQUEsaUJBQVM7WUFDVEMsZUFBQUEsNEJBQWE7UUFDZjtJQUNGO0lBRUEsT0FBT3JEO0FBQ1QifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../src/schema/traverseFields.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAA2B,MAAM,qBAAqB,CAAA;AACjG,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAoBtD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAS/D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACxC,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAA;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,YAAY,CAAC,CAAA;IAC/D,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC/C,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,YAAY,CAAC,CAAA;IACtE,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,kBAAkB,EAAE,MAAM,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,KAAK,MAAM,GAAG;IACZ,iBAAiB,EAAE,OAAO,CAAA;IAC1B,2BAA2B,EAAE,OAAO,CAAA;IACpC,6BAA6B,EAAE,OAAO,CAAA;IACtC,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,cAAc,kSAoBxB,IAAI,KAAG,MAqfT,CAAA"}
1
+ {"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../src/schema/traverseFields.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAA2B,MAAM,qBAAqB,CAAA;AAcjG,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAKtD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAS/D,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,eAAe,CAAA;IACxB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACxC,cAAc,EAAE,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,EAAE,CAAA;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,YAAY,CAAC,CAAA;IAC/D,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC/C,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,YAAY,CAAC,CAAA;IACtE,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC1C,kBAAkB,EAAE,MAAM,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,KAAK,MAAM,GAAG;IACZ,iBAAiB,EAAE,OAAO,CAAA;IAC1B,2BAA2B,EAAE,OAAO,CAAA;IACpC,6BAA6B,EAAE,OAAO,CAAA;IACtC,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,cAAc,kSAoBxB,IAAI,KAAG,MA6fT,CAAA"}
@@ -10,8 +10,8 @@ Object.defineProperty(exports, "traverseFields", {
10
10
  });
11
11
  const _drizzleorm = require("drizzle-orm");
12
12
  const _pgcore = require("drizzle-orm/pg-core");
13
- const _errors = require("payload/errors");
14
13
  const _types = require("payload/types");
14
+ const _errors = require("payload/errors");
15
15
  const _tosnakecase = /*#__PURE__*/ _interop_require_default(require("to-snake-case"));
16
16
  const _hasLocalesTable = require("../utilities/hasLocalesTable");
17
17
  const _build = require("./build");
@@ -40,7 +40,7 @@ const traverseFields = ({ adapter, buildRelationships, columnPrefix, columns, di
40
40
  let targetIndexes = indexes;
41
41
  if ((0, _types.fieldAffectsData)(field)) {
42
42
  columnName = `${columnPrefix || ''}${field.name[0] === '_' ? '_' : ''}${(0, _tosnakecase.default)(field.name)}`;
43
- fieldName = `${fieldPrefix || ''}${field.name}`;
43
+ fieldName = `${fieldPrefix?.replace('.', '_') || ''}${field.name}`;
44
44
  // If field is localized,
45
45
  // add the column to the locale table instead of main table
46
46
  if (adapter.payload.config.localization && (field.localized || forceLocalized)) {
@@ -56,10 +56,18 @@ const traverseFields = ({ adapter, buildRelationships, columnPrefix, columns, di
56
56
  'relationship',
57
57
  'upload'
58
58
  ].includes(field.type) && !(field.type === 'number' && field.hasMany === true)) {
59
+ const unique = disableUnique !== true && field.unique;
60
+ if (unique) {
61
+ const constraintValue = `${fieldPrefix || ''}${field.name}`;
62
+ if (!adapter.fieldConstraints?.[rootTableName]) {
63
+ adapter.fieldConstraints[rootTableName] = {};
64
+ }
65
+ adapter.fieldConstraints[rootTableName][`${columnName}_idx`] = constraintValue;
66
+ }
59
67
  targetIndexes[`${field.name}Idx`] = (0, _createIndex.createIndex)({
60
68
  name: fieldName,
61
69
  columnName,
62
- unique: disableUnique !== true && field.unique
70
+ unique
63
71
  });
64
72
  }
65
73
  }
@@ -334,7 +342,7 @@ const traverseFields = ({ adapter, buildRelationships, columnPrefix, columns, di
334
342
  columns,
335
343
  disableNotNull: disableNotNullFromHere,
336
344
  disableUnique,
337
- fieldPrefix: `${fieldName}_`,
345
+ fieldPrefix: `${fieldName}.`,
338
346
  fields: field.fields,
339
347
  forceLocalized: field.localized,
340
348
  indexes,
@@ -445,4 +453,4 @@ const traverseFields = ({ adapter, buildRelationships, columnPrefix, columns, di
445
453
  };
446
454
  };
447
455
 
448
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY2hlbWEvdHJhdmVyc2VGaWVsZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cbmltcG9ydCB0eXBlIHsgUmVsYXRpb24gfSBmcm9tICdkcml6emxlLW9ybSdcbmltcG9ydCB0eXBlIHsgSW5kZXhCdWlsZGVyLCBQZ0NvbHVtbkJ1aWxkZXIsIFVuaXF1ZUNvbnN0cmFpbnRCdWlsZGVyIH0gZnJvbSAnZHJpenpsZS1vcm0vcGctY29yZSdcbmltcG9ydCB0eXBlIHsgRmllbGQsIFRhYkFzRmllbGQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgeyByZWxhdGlvbnMgfSBmcm9tICdkcml6emxlLW9ybSdcbmltcG9ydCB7XG4gIFBnTnVtZXJpY0J1aWxkZXIsXG4gIFBnVmFyY2hhckJ1aWxkZXIsXG4gIGJvb2xlYW4sXG4gIGluZGV4LFxuICBpbnRlZ2VyLFxuICBqc29uYixcbiAgbnVtZXJpYyxcbiAgcGdFbnVtLFxuICB0ZXh0LFxuICB0aW1lc3RhbXAsXG4gIHZhcmNoYXIsXG59IGZyb20gJ2RyaXp6bGUtb3JtL3BnLWNvcmUnXG5pbXBvcnQgeyBJbnZhbGlkQ29uZmlndXJhdGlvbiB9IGZyb20gJ3BheWxvYWQvZXJyb3JzJ1xuaW1wb3J0IHsgZmllbGRBZmZlY3RzRGF0YSwgb3B0aW9uSXNPYmplY3QgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuaW1wb3J0IHRvU25ha2VDYXNlIGZyb20gJ3RvLXNuYWtlLWNhc2UnXG5cbmltcG9ydCB0eXBlIHsgR2VuZXJpY0NvbHVtbnMsIFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBoYXNMb2NhbGVzVGFibGUgfSBmcm9tICcuLi91dGlsaXRpZXMvaGFzTG9jYWxlc1RhYmxlJ1xuaW1wb3J0IHsgYnVpbGRUYWJsZSB9IGZyb20gJy4vYnVpbGQnXG5pbXBvcnQgeyBjcmVhdGVJbmRleCB9IGZyb20gJy4vY3JlYXRlSW5kZXgnXG5pbXBvcnQgeyBpZFRvVVVJRCB9IGZyb20gJy4vaWRUb1VVSUQnXG5pbXBvcnQgeyBwYXJlbnRJRENvbHVtbk1hcCB9IGZyb20gJy4vcGFyZW50SURDb2x1bW5NYXAnXG5pbXBvcnQgeyB2YWxpZGF0ZUV4aXN0aW5nQmxvY2tJc0lkZW50aWNhbCB9IGZyb20gJy4vdmFsaWRhdGVFeGlzdGluZ0Jsb2NrSXNJZGVudGljYWwnXG5cbnR5cGUgQXJncyA9IHtcbiAgYWRhcHRlcjogUG9zdGdyZXNBZGFwdGVyXG4gIGJ1aWxkUmVsYXRpb25zaGlwczogYm9vbGVhblxuICBjb2x1bW5QcmVmaXg/OiBzdHJpbmdcbiAgY29sdW1uczogUmVjb3JkPHN0cmluZywgUGdDb2x1bW5CdWlsZGVyPlxuICBkaXNhYmxlTm90TnVsbDogYm9vbGVhblxuICBkaXNhYmxlVW5pcXVlPzogYm9vbGVhblxuICBmaWVsZFByZWZpeD86IHN0cmluZ1xuICBmaWVsZHM6IChGaWVsZCB8IFRhYkFzRmllbGQpW11cbiAgZm9yY2VMb2NhbGl6ZWQ/OiBib29sZWFuXG4gIGluZGV4ZXM6IFJlY29yZDxzdHJpbmcsIChjb2xzOiBHZW5lcmljQ29sdW1ucykgPT4gSW5kZXhCdWlsZGVyPlxuICBsb2NhbGVzQ29sdW1uczogUmVjb3JkPHN0cmluZywgUGdDb2x1bW5CdWlsZGVyPlxuICBsb2NhbGVzSW5kZXhlczogUmVjb3JkPHN0cmluZywgKGNvbHM6IEdlbmVyaWNDb2x1bW5zKSA9PiBJbmRleEJ1aWxkZXI+XG4gIG5ld1RhYmxlTmFtZTogc3RyaW5nXG4gIHBhcmVudFRhYmxlTmFtZTogc3RyaW5nXG4gIHJlbGF0aW9uc1RvQnVpbGQ6IE1hcDxzdHJpbmcsIHN0cmluZz5cbiAgcmVsYXRpb25zaGlwczogU2V0PHN0cmluZz5cbiAgcm9vdFJlbGF0aW9uc1RvQnVpbGQ/OiBNYXA8c3RyaW5nLCBzdHJpbmc+XG4gIHJvb3RUYWJsZUlEQ29sVHlwZTogc3RyaW5nXG4gIHJvb3RUYWJsZU5hbWU6IHN0cmluZ1xufVxuXG50eXBlIFJlc3VsdCA9IHtcbiAgaGFzTG9jYWxpemVkRmllbGQ6IGJvb2xlYW5cbiAgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkOiBib29sZWFuXG4gIGhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkOiBib29sZWFuXG4gIGhhc01hbnlOdW1iZXJGaWVsZDogJ2luZGV4JyB8IGJvb2xlYW5cbn1cblxuZXhwb3J0IGNvbnN0IHRyYXZlcnNlRmllbGRzID0gKHtcbiAgYWRhcHRlcixcbiAgYnVpbGRSZWxhdGlvbnNoaXBzLFxuICBjb2x1bW5QcmVmaXgsXG4gIGNvbHVtbnMsXG4gIGRpc2FibGVOb3ROdWxsLFxuICBkaXNhYmxlVW5pcXVlID0gZmFsc2UsXG4gIGZpZWxkUHJlZml4LFxuICBmaWVsZHMsXG4gIGZvcmNlTG9jYWxpemVkLFxuICBpbmRleGVzLFxuICBsb2NhbGVzQ29sdW1ucyxcbiAgbG9jYWxlc0luZGV4ZXMsXG4gIG5ld1RhYmxlTmFtZSxcbiAgcGFyZW50VGFibGVOYW1lLFxuICByZWxhdGlvbnNUb0J1aWxkLFxuICByZWxhdGlvbnNoaXBzLFxuICByb290UmVsYXRpb25zVG9CdWlsZCxcbiAgcm9vdFRhYmxlSURDb2xUeXBlLFxuICByb290VGFibGVOYW1lLFxufTogQXJncyk6IFJlc3VsdCA9PiB7XG4gIGxldCBoYXNMb2NhbGl6ZWRGaWVsZCA9IGZhbHNlXG4gIGxldCBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCA9IGZhbHNlXG4gIGxldCBoYXNNYW55TnVtYmVyRmllbGQ6ICdpbmRleCcgfCBib29sZWFuID0gZmFsc2VcbiAgbGV0IGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCA9IGZhbHNlXG5cbiAgbGV0IHBhcmVudElEQ29sVHlwZSA9ICdpbnRlZ2VyJ1xuICBpZiAoY29sdW1ucy5pZCBpbnN0YW5jZW9mIFBnTnVtZXJpY0J1aWxkZXIpIHBhcmVudElEQ29sVHlwZSA9ICdudW1lcmljJ1xuICBpZiAoY29sdW1ucy5pZCBpbnN0YW5jZW9mIFBnVmFyY2hhckJ1aWxkZXIpIHBhcmVudElEQ29sVHlwZSA9ICd2YXJjaGFyJ1xuXG4gIGZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgIGlmICgnbmFtZScgaW4gZmllbGQgJiYgZmllbGQubmFtZSA9PT0gJ2lkJykgcmV0dXJuXG4gICAgbGV0IGNvbHVtbk5hbWU6IHN0cmluZ1xuICAgIGxldCBmaWVsZE5hbWU6IHN0cmluZ1xuXG4gICAgbGV0IHRhcmdldFRhYmxlID0gY29sdW1uc1xuICAgIGxldCB0YXJnZXRJbmRleGVzID0gaW5kZXhlc1xuXG4gICAgaWYgKGZpZWxkQWZmZWN0c0RhdGEoZmllbGQpKSB7XG4gICAgICBjb2x1bW5OYW1lID0gYCR7Y29sdW1uUHJlZml4IHx8ICcnfSR7ZmllbGQubmFtZVswXSA9PT0gJ18nID8gJ18nIDogJyd9JHt0b1NuYWtlQ2FzZShcbiAgICAgICAgZmllbGQubmFtZSxcbiAgICAgICl9YFxuICAgICAgZmllbGROYW1lID0gYCR7ZmllbGRQcmVmaXggfHwgJyd9JHtmaWVsZC5uYW1lfWBcblxuICAgICAgLy8gSWYgZmllbGQgaXMgbG9jYWxpemVkLFxuICAgICAgLy8gYWRkIHRoZSBjb2x1bW4gdG8gdGhlIGxvY2FsZSB0YWJsZSBpbnN0ZWFkIG9mIG1haW4gdGFibGVcbiAgICAgIGlmIChhZGFwdGVyLnBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvbiAmJiAoZmllbGQubG9jYWxpemVkIHx8IGZvcmNlTG9jYWxpemVkKSkge1xuICAgICAgICBoYXNMb2NhbGl6ZWRGaWVsZCA9IHRydWVcbiAgICAgICAgdGFyZ2V0VGFibGUgPSBsb2NhbGVzQ29sdW1uc1xuICAgICAgICB0YXJnZXRJbmRleGVzID0gbG9jYWxlc0luZGV4ZXNcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICAoZmllbGQudW5pcXVlIHx8IGZpZWxkLmluZGV4KSAmJlxuICAgICAgICAhWydhcnJheScsICdibG9ja3MnLCAnZ3JvdXAnLCAncG9pbnQnLCAncmVsYXRpb25zaGlwJywgJ3VwbG9hZCddLmluY2x1ZGVzKGZpZWxkLnR5cGUpICYmXG4gICAgICAgICEoZmllbGQudHlwZSA9PT0gJ251bWJlcicgJiYgZmllbGQuaGFzTWFueSA9PT0gdHJ1ZSlcbiAgICAgICkge1xuICAgICAgICB0YXJnZXRJbmRleGVzW2Ake2ZpZWxkLm5hbWV9SWR4YF0gPSBjcmVhdGVJbmRleCh7XG4gICAgICAgICAgbmFtZTogZmllbGROYW1lLFxuICAgICAgICAgIGNvbHVtbk5hbWUsXG4gICAgICAgICAgdW5pcXVlOiBkaXNhYmxlVW5pcXVlICE9PSB0cnVlICYmIGZpZWxkLnVuaXF1ZSxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgY2FzZSAnZW1haWwnOlxuICAgICAgY2FzZSAnY29kZSc6XG4gICAgICBjYXNlICd0ZXh0YXJlYSc6IHtcbiAgICAgICAgdGFyZ2V0VGFibGVbZmllbGROYW1lXSA9IHZhcmNoYXIoY29sdW1uTmFtZSlcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgY2FzZSAnbnVtYmVyJzoge1xuICAgICAgICBpZiAoZmllbGQuaGFzTWFueSkge1xuICAgICAgICAgIGlmIChmaWVsZC5sb2NhbGl6ZWQpIHtcbiAgICAgICAgICAgIGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCA9IHRydWVcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZmllbGQuaW5kZXgpIHtcbiAgICAgICAgICAgIGhhc01hbnlOdW1iZXJGaWVsZCA9ICdpbmRleCdcbiAgICAgICAgICB9IGVsc2UgaWYgKCFoYXNNYW55TnVtYmVyRmllbGQpIHtcbiAgICAgICAgICAgIGhhc01hbnlOdW1iZXJGaWVsZCA9IHRydWVcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZmllbGQudW5pcXVlKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZENvbmZpZ3VyYXRpb24oXG4gICAgICAgICAgICAgICdVbmlxdWUgaXMgbm90IHN1cHBvcnRlZCBpbiBQb3N0Z3JlcyBmb3IgaGFzTWFueSBudW1iZXIgZmllbGRzLicsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRhcmdldFRhYmxlW2ZpZWxkTmFtZV0gPSBudW1lcmljKGNvbHVtbk5hbWUpXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgY2FzZSAncmljaFRleHQnOlxuICAgICAgY2FzZSAnanNvbic6IHtcbiAgICAgICAgdGFyZ2V0VGFibGVbZmllbGROYW1lXSA9IGpzb25iKGNvbHVtbk5hbWUpXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ2RhdGUnOiB7XG4gICAgICAgIHRhcmdldFRhYmxlW2ZpZWxkTmFtZV0gPSB0aW1lc3RhbXAoY29sdW1uTmFtZSwge1xuICAgICAgICAgIG1vZGU6ICdzdHJpbmcnLFxuICAgICAgICAgIHByZWNpc2lvbjogMyxcbiAgICAgICAgICB3aXRoVGltZXpvbmU6IHRydWUsXG4gICAgICAgIH0pXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ3BvaW50Jzoge1xuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBjYXNlICdyYWRpbyc6XG4gICAgICBjYXNlICdzZWxlY3QnOiB7XG4gICAgICAgIGNvbnN0IGVudW1OYW1lID0gYGVudW1fJHtuZXdUYWJsZU5hbWV9XyR7dG9TbmFrZUNhc2UoZmllbGQubmFtZSl9YFxuXG4gICAgICAgIGFkYXB0ZXIuZW51bXNbZW51bU5hbWVdID0gcGdFbnVtKFxuICAgICAgICAgIGVudW1OYW1lLFxuICAgICAgICAgIGZpZWxkLm9wdGlvbnMubWFwKChvcHRpb24pID0+IHtcbiAgICAgICAgICAgIGlmIChvcHRpb25Jc09iamVjdChvcHRpb24pKSB7XG4gICAgICAgICAgICAgIHJldHVybiBvcHRpb24udmFsdWVcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG9wdGlvblxuICAgICAgICAgIH0pIGFzIFtzdHJpbmcsIC4uLnN0cmluZ1tdXSxcbiAgICAgICAgKVxuXG4gICAgICAgIGlmIChmaWVsZC50eXBlID09PSAnc2VsZWN0JyAmJiBmaWVsZC5oYXNNYW55KSB7XG4gICAgICAgICAgY29uc3Qgc2VsZWN0VGFibGVOYW1lID0gYCR7bmV3VGFibGVOYW1lfV8ke3RvU25ha2VDYXNlKGZpZWxkLm5hbWUpfWBcbiAgICAgICAgICBjb25zdCBiYXNlQ29sdW1uczogUmVjb3JkPHN0cmluZywgUGdDb2x1bW5CdWlsZGVyPiA9IHtcbiAgICAgICAgICAgIG9yZGVyOiBpbnRlZ2VyKCdvcmRlcicpLm5vdE51bGwoKSxcbiAgICAgICAgICAgIHBhcmVudDogcGFyZW50SURDb2x1bW5NYXBbcGFyZW50SURDb2xUeXBlXSgncGFyZW50X2lkJylcbiAgICAgICAgICAgICAgLnJlZmVyZW5jZXMoKCkgPT4gYWRhcHRlci50YWJsZXNbcGFyZW50VGFibGVOYW1lXS5pZCwgeyBvbkRlbGV0ZTogJ2Nhc2NhZGUnIH0pXG4gICAgICAgICAgICAgIC5ub3ROdWxsKCksXG4gICAgICAgICAgICB2YWx1ZTogYWRhcHRlci5lbnVtc1tlbnVtTmFtZV0oJ3ZhbHVlJyksXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYmFzZUV4dHJhQ29uZmlnOiBSZWNvcmQ8XG4gICAgICAgICAgICBzdHJpbmcsXG4gICAgICAgICAgICAoY29sczogR2VuZXJpY0NvbHVtbnMpID0+IEluZGV4QnVpbGRlciB8IFVuaXF1ZUNvbnN0cmFpbnRCdWlsZGVyXG4gICAgICAgICAgPiA9IHtcbiAgICAgICAgICAgIG9yZGVySWR4OiAoY29scykgPT4gaW5kZXgoJ29yZGVyX2lkeCcpLm9uKGNvbHMub3JkZXIpLFxuICAgICAgICAgICAgcGFyZW50SWR4OiAoY29scykgPT4gaW5kZXgoJ3BhcmVudF9pZHgnKS5vbihjb2xzLnBhcmVudCksXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGZpZWxkLmxvY2FsaXplZCkge1xuICAgICAgICAgICAgYmFzZUNvbHVtbnMubG9jYWxlID0gYWRhcHRlci5lbnVtcy5lbnVtX19sb2NhbGVzKCdsb2NhbGUnKS5ub3ROdWxsKClcbiAgICAgICAgICAgIGJhc2VFeHRyYUNvbmZpZy5sb2NhbGVJZHggPSAoY29scykgPT4gaW5kZXgoJ2xvY2FsZV9pZHgnKS5vbihjb2xzLmxvY2FsZSlcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZmllbGQuaW5kZXgpIHtcbiAgICAgICAgICAgIGJhc2VFeHRyYUNvbmZpZy52YWx1ZSA9IChjb2xzKSA9PiBpbmRleCgndmFsdWVfaWR4Jykub24oY29scy52YWx1ZSlcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBidWlsZFRhYmxlKHtcbiAgICAgICAgICAgIGFkYXB0ZXIsXG4gICAgICAgICAgICBiYXNlQ29sdW1ucyxcbiAgICAgICAgICAgIGJhc2VFeHRyYUNvbmZpZyxcbiAgICAgICAgICAgIGRpc2FibGVOb3ROdWxsLFxuICAgICAgICAgICAgZGlzYWJsZVVuaXF1ZSxcbiAgICAgICAgICAgIGZpZWxkczogW10sXG4gICAgICAgICAgICB0YWJsZU5hbWU6IHNlbGVjdFRhYmxlTmFtZSxcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgcmVsYXRpb25zVG9CdWlsZC5zZXQoZmllbGROYW1lLCBzZWxlY3RUYWJsZU5hbWUpXG5cbiAgICAgICAgICBjb25zdCBzZWxlY3RUYWJsZVJlbGF0aW9ucyA9IHJlbGF0aW9ucyhhZGFwdGVyLnRhYmxlc1tzZWxlY3RUYWJsZU5hbWVdLCAoeyBvbmUgfSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0OiBSZWNvcmQ8c3RyaW5nLCBSZWxhdGlvbjxzdHJpbmc+PiA9IHtcbiAgICAgICAgICAgICAgcGFyZW50OiBvbmUoYWRhcHRlci50YWJsZXNbcGFyZW50VGFibGVOYW1lXSwge1xuICAgICAgICAgICAgICAgIGZpZWxkczogW2FkYXB0ZXIudGFibGVzW3NlbGVjdFRhYmxlTmFtZV0ucGFyZW50XSxcbiAgICAgICAgICAgICAgICByZWZlcmVuY2VzOiBbYWRhcHRlci50YWJsZXNbcGFyZW50VGFibGVOYW1lXS5pZF0sXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0XG4gICAgICAgICAgfSlcblxuICAgICAgICAgIGFkYXB0ZXIucmVsYXRpb25zW2ByZWxhdGlvbl8ke3NlbGVjdFRhYmxlTmFtZX1gXSA9IHNlbGVjdFRhYmxlUmVsYXRpb25zXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGFyZ2V0VGFibGVbZmllbGROYW1lXSA9IGFkYXB0ZXIuZW51bXNbZW51bU5hbWVdKGZpZWxkTmFtZSlcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBjYXNlICdjaGVja2JveCc6IHtcbiAgICAgICAgdGFyZ2V0VGFibGVbZmllbGROYW1lXSA9IGJvb2xlYW4oY29sdW1uTmFtZSlcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgY2FzZSAnYXJyYXknOiB7XG4gICAgICAgIGNvbnN0IGRpc2FibGVOb3ROdWxsRnJvbUhlcmUgPSBCb29sZWFuKGZpZWxkLmFkbWluPy5jb25kaXRpb24pIHx8IGRpc2FibGVOb3ROdWxsXG5cbiAgICAgICAgY29uc3QgYXJyYXlUYWJsZU5hbWUgPSBgJHtuZXdUYWJsZU5hbWV9XyR7dG9TbmFrZUNhc2UoZmllbGQubmFtZSl9YFxuICAgICAgICBjb25zdCBiYXNlQ29sdW1uczogUmVjb3JkPHN0cmluZywgUGdDb2x1bW5CdWlsZGVyPiA9IHtcbiAgICAgICAgICBfb3JkZXI6IGludGVnZXIoJ19vcmRlcicpLm5vdE51bGwoKSxcbiAgICAgICAgICBfcGFyZW50SUQ6IHBhcmVudElEQ29sdW1uTWFwW3BhcmVudElEQ29sVHlwZV0oJ19wYXJlbnRfaWQnKVxuICAgICAgICAgICAgLnJlZmVyZW5jZXMoKCkgPT4gYWRhcHRlci50YWJsZXNbcGFyZW50VGFibGVOYW1lXS5pZCwgeyBvbkRlbGV0ZTogJ2Nhc2NhZGUnIH0pXG4gICAgICAgICAgICAubm90TnVsbCgpLFxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYmFzZUV4dHJhQ29uZmlnOiBSZWNvcmQ8XG4gICAgICAgICAgc3RyaW5nLFxuICAgICAgICAgIChjb2xzOiBHZW5lcmljQ29sdW1ucykgPT4gSW5kZXhCdWlsZGVyIHwgVW5pcXVlQ29uc3RyYWludEJ1aWxkZXJcbiAgICAgICAgPiA9IHtcbiAgICAgICAgICBfb3JkZXJJZHg6IChjb2xzKSA9PiBpbmRleCgnX29yZGVyX2lkeCcpLm9uKGNvbHMuX29yZGVyKSxcbiAgICAgICAgICBfcGFyZW50SURJZHg6IChjb2xzKSA9PiBpbmRleCgnX3BhcmVudF9pZF9pZHgnKS5vbihjb2xzLl9wYXJlbnRJRCksXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZmllbGQubG9jYWxpemVkICYmIGFkYXB0ZXIucGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uKSB7XG4gICAgICAgICAgYmFzZUNvbHVtbnMuX2xvY2FsZSA9IGFkYXB0ZXIuZW51bXMuZW51bV9fbG9jYWxlcygnX2xvY2FsZScpLm5vdE51bGwoKVxuICAgICAgICAgIGJhc2VFeHRyYUNvbmZpZy5fbG9jYWxlSWR4ID0gKGNvbHMpID0+IGluZGV4KCdfbG9jYWxlX2lkeCcpLm9uKGNvbHMuX2xvY2FsZSlcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgcmVsYXRpb25zVG9CdWlsZDogc3ViUmVsYXRpb25zVG9CdWlsZCB9ID0gYnVpbGRUYWJsZSh7XG4gICAgICAgICAgYWRhcHRlcixcbiAgICAgICAgICBiYXNlQ29sdW1ucyxcbiAgICAgICAgICBiYXNlRXh0cmFDb25maWcsXG4gICAgICAgICAgZGlzYWJsZU5vdE51bGw6IGRpc2FibGVOb3ROdWxsRnJvbUhlcmUsXG4gICAgICAgICAgZGlzYWJsZVVuaXF1ZSxcbiAgICAgICAgICBmaWVsZHM6IGRpc2FibGVVbmlxdWUgPyBpZFRvVVVJRChmaWVsZC5maWVsZHMpIDogZmllbGQuZmllbGRzLFxuICAgICAgICAgIHJvb3RSZWxhdGlvbnNUb0J1aWxkLFxuICAgICAgICAgIHJvb3RSZWxhdGlvbnNoaXBzOiByZWxhdGlvbnNoaXBzLFxuICAgICAgICAgIHJvb3RUYWJsZUlEQ29sVHlwZSxcbiAgICAgICAgICByb290VGFibGVOYW1lLFxuICAgICAgICAgIHRhYmxlTmFtZTogYXJyYXlUYWJsZU5hbWUsXG4gICAgICAgIH0pXG5cbiAgICAgICAgcmVsYXRpb25zVG9CdWlsZC5zZXQoZmllbGROYW1lLCBhcnJheVRhYmxlTmFtZSlcblxuICAgICAgICBjb25zdCBhcnJheVRhYmxlUmVsYXRpb25zID0gcmVsYXRpb25zKGFkYXB0ZXIudGFibGVzW2FycmF5VGFibGVOYW1lXSwgKHsgbWFueSwgb25lIH0pID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQ6IFJlY29yZDxzdHJpbmcsIFJlbGF0aW9uPHN0cmluZz4+ID0ge1xuICAgICAgICAgICAgX3BhcmVudElEOiBvbmUoYWRhcHRlci50YWJsZXNbcGFyZW50VGFibGVOYW1lXSwge1xuICAgICAgICAgICAgICBmaWVsZHM6IFthZGFwdGVyLnRhYmxlc1thcnJheVRhYmxlTmFtZV0uX3BhcmVudElEXSxcbiAgICAgICAgICAgICAgcmVmZXJlbmNlczogW2FkYXB0ZXIudGFibGVzW3BhcmVudFRhYmxlTmFtZV0uaWRdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGhhc0xvY2FsZXNUYWJsZShmaWVsZC5maWVsZHMpKSB7XG4gICAgICAgICAgICByZXN1bHQuX2xvY2FsZXMgPSBtYW55KGFkYXB0ZXIudGFibGVzW2Ake2FycmF5VGFibGVOYW1lfV9sb2NhbGVzYF0pXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc3ViUmVsYXRpb25zVG9CdWlsZC5mb3JFYWNoKCh2YWwsIGtleSkgPT4ge1xuICAgICAgICAgICAgcmVzdWx0W2tleV0gPSBtYW55KGFkYXB0ZXIudGFibGVzW3ZhbF0pXG4gICAgICAgICAgfSlcblxuICAgICAgICAgIHJldHVybiByZXN1bHRcbiAgICAgICAgfSlcblxuICAgICAgICBhZGFwdGVyLnJlbGF0aW9uc1tgcmVsYXRpb25zXyR7YXJyYXlUYWJsZU5hbWV9YF0gPSBhcnJheVRhYmxlUmVsYXRpb25zXG5cbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgY2FzZSAnYmxvY2tzJzoge1xuICAgICAgICBjb25zdCBkaXNhYmxlTm90TnVsbEZyb21IZXJlID0gQm9vbGVhbihmaWVsZC5hZG1pbj8uY29uZGl0aW9uKSB8fCBkaXNhYmxlTm90TnVsbFxuXG4gICAgICAgIGZpZWxkLmJsb2Nrcy5mb3JFYWNoKChibG9jaykgPT4ge1xuICAgICAgICAgIGNvbnN0IGJsb2NrVGFibGVOYW1lID0gYCR7cm9vdFRhYmxlTmFtZX1fYmxvY2tzXyR7dG9TbmFrZUNhc2UoYmxvY2suc2x1Zyl9YFxuICAgICAgICAgIGlmICghYWRhcHRlci50YWJsZXNbYmxvY2tUYWJsZU5hbWVdKSB7XG4gICAgICAgICAgICBjb25zdCBiYXNlQ29sdW1uczogUmVjb3JkPHN0cmluZywgUGdDb2x1bW5CdWlsZGVyPiA9IHtcbiAgICAgICAgICAgICAgX29yZGVyOiBpbnRlZ2VyKCdfb3JkZXInKS5ub3ROdWxsKCksXG4gICAgICAgICAgICAgIF9wYXJlbnRJRDogcGFyZW50SURDb2x1bW5NYXBbcm9vdFRhYmxlSURDb2xUeXBlXSgnX3BhcmVudF9pZCcpXG4gICAgICAgICAgICAgICAgLnJlZmVyZW5jZXMoKCkgPT4gYWRhcHRlci50YWJsZXNbcm9vdFRhYmxlTmFtZV0uaWQsIHsgb25EZWxldGU6ICdjYXNjYWRlJyB9KVxuICAgICAgICAgICAgICAgIC5ub3ROdWxsKCksXG4gICAgICAgICAgICAgIF9wYXRoOiB0ZXh0KCdfcGF0aCcpLm5vdE51bGwoKSxcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgYmFzZUV4dHJhQ29uZmlnOiBSZWNvcmQ8XG4gICAgICAgICAgICAgIHN0cmluZyxcbiAgICAgICAgICAgICAgKGNvbHM6IEdlbmVyaWNDb2x1bW5zKSA9PiBJbmRleEJ1aWxkZXIgfCBVbmlxdWVDb25zdHJhaW50QnVpbGRlclxuICAgICAgICAgICAgPiA9IHtcbiAgICAgICAgICAgICAgX29yZGVySWR4OiAoY29scykgPT4gaW5kZXgoJ29yZGVyX2lkeCcpLm9uKGNvbHMuX29yZGVyKSxcbiAgICAgICAgICAgICAgX3BhcmVudElESWR4OiAoY29scykgPT4gaW5kZXgoJ3BhcmVudF9pZF9pZHgnKS5vbihjb2xzLl9wYXJlbnRJRCksXG4gICAgICAgICAgICAgIF9wYXRoSWR4OiAoY29scykgPT4gaW5kZXgoJ3BhdGhfaWR4Jykub24oY29scy5fcGF0aCksXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChmaWVsZC5sb2NhbGl6ZWQgJiYgYWRhcHRlci5wYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb24pIHtcbiAgICAgICAgICAgICAgYmFzZUNvbHVtbnMuX2xvY2FsZSA9IGFkYXB0ZXIuZW51bXMuZW51bV9fbG9jYWxlcygnX2xvY2FsZScpLm5vdE51bGwoKVxuICAgICAgICAgICAgICBiYXNlRXh0cmFDb25maWcuX2xvY2FsZUlkeCA9IChjb2xzKSA9PiBpbmRleCgnbG9jYWxlX2lkeCcpLm9uKGNvbHMuX2xvY2FsZSlcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgeyByZWxhdGlvbnNUb0J1aWxkOiBzdWJSZWxhdGlvbnNUb0J1aWxkIH0gPSBidWlsZFRhYmxlKHtcbiAgICAgICAgICAgICAgYWRhcHRlcixcbiAgICAgICAgICAgICAgYmFzZUNvbHVtbnMsXG4gICAgICAgICAgICAgIGJhc2VFeHRyYUNvbmZpZyxcbiAgICAgICAgICAgICAgZGlzYWJsZU5vdE51bGw6IGRpc2FibGVOb3ROdWxsRnJvbUhlcmUsXG4gICAgICAgICAgICAgIGRpc2FibGVVbmlxdWUsXG4gICAgICAgICAgICAgIGZpZWxkczogZGlzYWJsZVVuaXF1ZSA/IGlkVG9VVUlEKGJsb2NrLmZpZWxkcykgOiBibG9jay5maWVsZHMsXG4gICAgICAgICAgICAgIHJvb3RSZWxhdGlvbnNUb0J1aWxkLFxuICAgICAgICAgICAgICByb290UmVsYXRpb25zaGlwczogcmVsYXRpb25zaGlwcyxcbiAgICAgICAgICAgICAgcm9vdFRhYmxlSURDb2xUeXBlLFxuICAgICAgICAgICAgICByb290VGFibGVOYW1lLFxuICAgICAgICAgICAgICB0YWJsZU5hbWU6IGJsb2NrVGFibGVOYW1lLFxuICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgY29uc3QgYmxvY2tUYWJsZVJlbGF0aW9ucyA9IHJlbGF0aW9ucyhcbiAgICAgICAgICAgICAgYWRhcHRlci50YWJsZXNbYmxvY2tUYWJsZU5hbWVdLFxuICAgICAgICAgICAgICAoeyBtYW55LCBvbmUgfSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdDogUmVjb3JkPHN0cmluZywgUmVsYXRpb248c3RyaW5nPj4gPSB7XG4gICAgICAgICAgICAgICAgICBfcGFyZW50SUQ6IG9uZShhZGFwdGVyLnRhYmxlc1tyb290VGFibGVOYW1lXSwge1xuICAgICAgICAgICAgICAgICAgICBmaWVsZHM6IFthZGFwdGVyLnRhYmxlc1tibG9ja1RhYmxlTmFtZV0uX3BhcmVudElEXSxcbiAgICAgICAgICAgICAgICAgICAgcmVmZXJlbmNlczogW2FkYXB0ZXIudGFibGVzW3Jvb3RUYWJsZU5hbWVdLmlkXSxcbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChoYXNMb2NhbGVzVGFibGUoYmxvY2suZmllbGRzKSkge1xuICAgICAgICAgICAgICAgICAgcmVzdWx0Ll9sb2NhbGVzID0gbWFueShhZGFwdGVyLnRhYmxlc1tgJHtibG9ja1RhYmxlTmFtZX1fbG9jYWxlc2BdKVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHN1YlJlbGF0aW9uc1RvQnVpbGQuZm9yRWFjaCgodmFsLCBrZXkpID0+IHtcbiAgICAgICAgICAgICAgICAgIHJlc3VsdFtrZXldID0gbWFueShhZGFwdGVyLnRhYmxlc1t2YWxdKVxuICAgICAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0XG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApXG5cbiAgICAgICAgICAgIGFkYXB0ZXIucmVsYXRpb25zW2ByZWxhdGlvbnNfJHtibG9ja1RhYmxlTmFtZX1gXSA9IGJsb2NrVGFibGVSZWxhdGlvbnNcbiAgICAgICAgICB9IGVsc2UgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHZhbGlkYXRlRXhpc3RpbmdCbG9ja0lzSWRlbnRpY2FsKHtcbiAgICAgICAgICAgICAgYmxvY2ssXG4gICAgICAgICAgICAgIGxvY2FsaXplZDogZmllbGQubG9jYWxpemVkLFxuICAgICAgICAgICAgICByb290VGFibGVOYW1lLFxuICAgICAgICAgICAgICB0YWJsZTogYWRhcHRlci50YWJsZXNbYmxvY2tUYWJsZU5hbWVdLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByb290UmVsYXRpb25zVG9CdWlsZC5zZXQoYF9ibG9ja3NfJHtibG9jay5zbHVnfWAsIGJsb2NrVGFibGVOYW1lKVxuICAgICAgICB9KVxuXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ3RhYic6XG4gICAgICBjYXNlICdncm91cCc6IHtcbiAgICAgICAgaWYgKCEoJ25hbWUnIGluIGZpZWxkKSkge1xuICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgIGhhc0xvY2FsaXplZEZpZWxkOiBncm91cEhhc0xvY2FsaXplZEZpZWxkLFxuICAgICAgICAgICAgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkOiBncm91cEhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCxcbiAgICAgICAgICAgIGhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkOiBncm91cEhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkLFxuICAgICAgICAgICAgaGFzTWFueU51bWJlckZpZWxkOiBncm91cEhhc01hbnlOdW1iZXJGaWVsZCxcbiAgICAgICAgICB9ID0gdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgICAgYWRhcHRlcixcbiAgICAgICAgICAgIGJ1aWxkUmVsYXRpb25zaGlwcyxcbiAgICAgICAgICAgIGNvbHVtblByZWZpeCxcbiAgICAgICAgICAgIGNvbHVtbnMsXG4gICAgICAgICAgICBkaXNhYmxlTm90TnVsbCxcbiAgICAgICAgICAgIGRpc2FibGVVbmlxdWUsXG4gICAgICAgICAgICBmaWVsZFByZWZpeCxcbiAgICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgICAgZm9yY2VMb2NhbGl6ZWQsXG4gICAgICAgICAgICBpbmRleGVzLFxuICAgICAgICAgICAgbG9jYWxlc0NvbHVtbnMsXG4gICAgICAgICAgICBsb2NhbGVzSW5kZXhlcyxcbiAgICAgICAgICAgIG5ld1RhYmxlTmFtZSxcbiAgICAgICAgICAgIHBhcmVudFRhYmxlTmFtZSxcbiAgICAgICAgICAgIHJlbGF0aW9uc1RvQnVpbGQsXG4gICAgICAgICAgICByZWxhdGlvbnNoaXBzLFxuICAgICAgICAgICAgcm9vdFJlbGF0aW9uc1RvQnVpbGQsXG4gICAgICAgICAgICByb290VGFibGVJRENvbFR5cGUsXG4gICAgICAgICAgICByb290VGFibGVOYW1lLFxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICBpZiAoZ3JvdXBIYXNMb2NhbGl6ZWRGaWVsZCkgaGFzTG9jYWxpemVkRmllbGQgPSB0cnVlXG4gICAgICAgICAgaWYgKGdyb3VwSGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQpIGhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkID0gdHJ1ZVxuICAgICAgICAgIGlmIChncm91cEhhc01hbnlOdW1iZXJGaWVsZCkgaGFzTWFueU51bWJlckZpZWxkID0gdHJ1ZVxuICAgICAgICAgIGlmIChncm91cEhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCkgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkID0gdHJ1ZVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkaXNhYmxlTm90TnVsbEZyb21IZXJlID0gQm9vbGVhbihmaWVsZC5hZG1pbj8uY29uZGl0aW9uKSB8fCBkaXNhYmxlTm90TnVsbFxuXG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICBoYXNMb2NhbGl6ZWRGaWVsZDogZ3JvdXBIYXNMb2NhbGl6ZWRGaWVsZCxcbiAgICAgICAgICBoYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQ6IGdyb3VwSGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkLFxuICAgICAgICAgIGhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkOiBncm91cEhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkLFxuICAgICAgICAgIGhhc01hbnlOdW1iZXJGaWVsZDogZ3JvdXBIYXNNYW55TnVtYmVyRmllbGQsXG4gICAgICAgIH0gPSB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgYWRhcHRlcixcbiAgICAgICAgICBidWlsZFJlbGF0aW9uc2hpcHMsXG4gICAgICAgICAgY29sdW1uUHJlZml4OiBgJHtjb2x1bW5OYW1lfV9gLFxuICAgICAgICAgIGNvbHVtbnMsXG4gICAgICAgICAgZGlzYWJsZU5vdE51bGw6IGRpc2FibGVOb3ROdWxsRnJvbUhlcmUsXG4gICAgICAgICAgZGlzYWJsZVVuaXF1ZSxcbiAgICAgICAgICBmaWVsZFByZWZpeDogYCR7ZmllbGROYW1lfV9gLFxuICAgICAgICAgIGZpZWxkczogZmllbGQuZmllbGRzLFxuICAgICAgICAgIGZvcmNlTG9jYWxpemVkOiBmaWVsZC5sb2NhbGl6ZWQsXG4gICAgICAgICAgaW5kZXhlcyxcbiAgICAgICAgICBsb2NhbGVzQ29sdW1ucyxcbiAgICAgICAgICBsb2NhbGVzSW5kZXhlcyxcbiAgICAgICAgICBuZXdUYWJsZU5hbWU6IGAke3BhcmVudFRhYmxlTmFtZX1fJHtjb2x1bW5OYW1lfWAsXG4gICAgICAgICAgcGFyZW50VGFibGVOYW1lLFxuICAgICAgICAgIHJlbGF0aW9uc1RvQnVpbGQsXG4gICAgICAgICAgcmVsYXRpb25zaGlwcyxcbiAgICAgICAgICByb290UmVsYXRpb25zVG9CdWlsZCxcbiAgICAgICAgICByb290VGFibGVJRENvbFR5cGUsXG4gICAgICAgICAgcm9vdFRhYmxlTmFtZSxcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAoZ3JvdXBIYXNMb2NhbGl6ZWRGaWVsZCkgaGFzTG9jYWxpemVkRmllbGQgPSB0cnVlXG4gICAgICAgIGlmIChncm91cEhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkKSBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCA9IHRydWVcbiAgICAgICAgaWYgKGdyb3VwSGFzTWFueU51bWJlckZpZWxkKSBoYXNNYW55TnVtYmVyRmllbGQgPSB0cnVlXG4gICAgICAgIGlmIChncm91cEhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCkgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkID0gdHJ1ZVxuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBjYXNlICd0YWJzJzoge1xuICAgICAgICBjb25zdCBkaXNhYmxlTm90TnVsbEZyb21IZXJlID0gQm9vbGVhbihmaWVsZC5hZG1pbj8uY29uZGl0aW9uKSB8fCBkaXNhYmxlTm90TnVsbFxuXG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICBoYXNMb2NhbGl6ZWRGaWVsZDogdGFiSGFzTG9jYWxpemVkRmllbGQsXG4gICAgICAgICAgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkOiB0YWJIYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQsXG4gICAgICAgICAgaGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQ6IHRhYkhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkLFxuICAgICAgICAgIGhhc01hbnlOdW1iZXJGaWVsZDogdGFiSGFzTWFueU51bWJlckZpZWxkLFxuICAgICAgICB9ID0gdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgIGFkYXB0ZXIsXG4gICAgICAgICAgYnVpbGRSZWxhdGlvbnNoaXBzLFxuICAgICAgICAgIGNvbHVtblByZWZpeCxcbiAgICAgICAgICBjb2x1bW5zLFxuICAgICAgICAgIGRpc2FibGVOb3ROdWxsOiBkaXNhYmxlTm90TnVsbEZyb21IZXJlLFxuICAgICAgICAgIGRpc2FibGVVbmlxdWUsXG4gICAgICAgICAgZmllbGRQcmVmaXgsXG4gICAgICAgICAgZmllbGRzOiBmaWVsZC50YWJzLm1hcCgodGFiKSA9PiAoeyAuLi50YWIsIHR5cGU6ICd0YWInIH0pKSxcbiAgICAgICAgICBmb3JjZUxvY2FsaXplZCxcbiAgICAgICAgICBpbmRleGVzLFxuICAgICAgICAgIGxvY2FsZXNDb2x1bW5zLFxuICAgICAgICAgIGxvY2FsZXNJbmRleGVzLFxuICAgICAgICAgIG5ld1RhYmxlTmFtZSxcbiAgICAgICAgICBwYXJlbnRUYWJsZU5hbWUsXG4gICAgICAgICAgcmVsYXRpb25zVG9CdWlsZCxcbiAgICAgICAgICByZWxhdGlvbnNoaXBzLFxuICAgICAgICAgIHJvb3RSZWxhdGlvbnNUb0J1aWxkLFxuICAgICAgICAgIHJvb3RUYWJsZUlEQ29sVHlwZSxcbiAgICAgICAgICByb290VGFibGVOYW1lLFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmICh0YWJIYXNMb2NhbGl6ZWRGaWVsZCkgaGFzTG9jYWxpemVkRmllbGQgPSB0cnVlXG4gICAgICAgIGlmICh0YWJIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCkgaGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQgPSB0cnVlXG4gICAgICAgIGlmICh0YWJIYXNNYW55TnVtYmVyRmllbGQpIGhhc01hbnlOdW1iZXJGaWVsZCA9IHRydWVcbiAgICAgICAgaWYgKHRhYkhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCkgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkID0gdHJ1ZVxuXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ3Jvdyc6XG4gICAgICBjYXNlICdjb2xsYXBzaWJsZSc6IHtcbiAgICAgICAgY29uc3QgZGlzYWJsZU5vdE51bGxGcm9tSGVyZSA9IEJvb2xlYW4oZmllbGQuYWRtaW4/LmNvbmRpdGlvbikgfHwgZGlzYWJsZU5vdE51bGxcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgIGhhc0xvY2FsaXplZEZpZWxkOiByb3dIYXNMb2NhbGl6ZWRGaWVsZCxcbiAgICAgICAgICBoYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQ6IHJvd0hhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCxcbiAgICAgICAgICBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZDogcm93SGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQsXG4gICAgICAgICAgaGFzTWFueU51bWJlckZpZWxkOiByb3dIYXNNYW55TnVtYmVyRmllbGQsXG4gICAgICAgIH0gPSB0cmF2ZXJzZUZpZWxkcyh7XG4gICAgICAgICAgYWRhcHRlcixcbiAgICAgICAgICBidWlsZFJlbGF0aW9uc2hpcHMsXG4gICAgICAgICAgY29sdW1uUHJlZml4LFxuICAgICAgICAgIGNvbHVtbnMsXG4gICAgICAgICAgZGlzYWJsZU5vdE51bGw6IGRpc2FibGVOb3ROdWxsRnJvbUhlcmUsXG4gICAgICAgICAgZGlzYWJsZVVuaXF1ZSxcbiAgICAgICAgICBmaWVsZFByZWZpeCxcbiAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICBmb3JjZUxvY2FsaXplZCxcbiAgICAgICAgICBpbmRleGVzLFxuICAgICAgICAgIGxvY2FsZXNDb2x1bW5zLFxuICAgICAgICAgIGxvY2FsZXNJbmRleGVzLFxuICAgICAgICAgIG5ld1RhYmxlTmFtZTogcGFyZW50VGFibGVOYW1lLFxuICAgICAgICAgIHBhcmVudFRhYmxlTmFtZSxcbiAgICAgICAgICByZWxhdGlvbnNUb0J1aWxkLFxuICAgICAgICAgIHJlbGF0aW9uc2hpcHMsXG4gICAgICAgICAgcm9vdFJlbGF0aW9uc1RvQnVpbGQsXG4gICAgICAgICAgcm9vdFRhYmxlSURDb2xUeXBlLFxuICAgICAgICAgIHJvb3RUYWJsZU5hbWUsXG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKHJvd0hhc0xvY2FsaXplZEZpZWxkKSBoYXNMb2NhbGl6ZWRGaWVsZCA9IHRydWVcbiAgICAgICAgaWYgKHJvd0hhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkKSBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCA9IHRydWVcbiAgICAgICAgaWYgKHJvd0hhc01hbnlOdW1iZXJGaWVsZCkgaGFzTWFueU51bWJlckZpZWxkID0gdHJ1ZVxuICAgICAgICBpZiAocm93SGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkKSBoYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQgPSB0cnVlXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ3JlbGF0aW9uc2hpcCc6XG4gICAgICBjYXNlICd1cGxvYWQnOlxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZC5yZWxhdGlvblRvKSkge1xuICAgICAgICAgIGZpZWxkLnJlbGF0aW9uVG8uZm9yRWFjaCgocmVsYXRpb24pID0+IHJlbGF0aW9uc2hpcHMuYWRkKHJlbGF0aW9uKSlcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZWxhdGlvbnNoaXBzLmFkZChmaWVsZC5yZWxhdGlvblRvKVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGZpZWxkLmxvY2FsaXplZCAmJiBhZGFwdGVyLnBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvbikge1xuICAgICAgICAgIGhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrXG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrXG4gICAgfVxuXG4gICAgY29uc3QgY29uZGl0aW9uID0gZmllbGQuYWRtaW4gJiYgZmllbGQuYWRtaW4uY29uZGl0aW9uXG5cbiAgICBpZiAoXG4gICAgICAhZGlzYWJsZU5vdE51bGwgJiZcbiAgICAgIHRhcmdldFRhYmxlW2ZpZWxkTmFtZV0gJiZcbiAgICAgICdyZXF1aXJlZCcgaW4gZmllbGQgJiZcbiAgICAgIGZpZWxkLnJlcXVpcmVkICYmXG4gICAgICAhY29uZGl0aW9uXG4gICAgKSB7XG4gICAgICB0YXJnZXRUYWJsZVtmaWVsZE5hbWVdLm5vdE51bGwoKVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4ge1xuICAgIGhhc0xvY2FsaXplZEZpZWxkLFxuICAgIGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCxcbiAgICBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCxcbiAgICBoYXNNYW55TnVtYmVyRmllbGQsXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJ0cmF2ZXJzZUZpZWxkcyIsImFkYXB0ZXIiLCJidWlsZFJlbGF0aW9uc2hpcHMiLCJjb2x1bW5QcmVmaXgiLCJjb2x1bW5zIiwiZGlzYWJsZU5vdE51bGwiLCJkaXNhYmxlVW5pcXVlIiwiZmllbGRQcmVmaXgiLCJmaWVsZHMiLCJmb3JjZUxvY2FsaXplZCIsImluZGV4ZXMiLCJsb2NhbGVzQ29sdW1ucyIsImxvY2FsZXNJbmRleGVzIiwibmV3VGFibGVOYW1lIiwicGFyZW50VGFibGVOYW1lIiwicmVsYXRpb25zVG9CdWlsZCIsInJlbGF0aW9uc2hpcHMiLCJyb290UmVsYXRpb25zVG9CdWlsZCIsInJvb3RUYWJsZUlEQ29sVHlwZSIsInJvb3RUYWJsZU5hbWUiLCJoYXNMb2NhbGl6ZWRGaWVsZCIsImhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkIiwiaGFzTWFueU51bWJlckZpZWxkIiwiaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkIiwicGFyZW50SURDb2xUeXBlIiwiaWQiLCJQZ051bWVyaWNCdWlsZGVyIiwiUGdWYXJjaGFyQnVpbGRlciIsImZvckVhY2giLCJmaWVsZCIsIm5hbWUiLCJjb2x1bW5OYW1lIiwiZmllbGROYW1lIiwidGFyZ2V0VGFibGUiLCJ0YXJnZXRJbmRleGVzIiwiZmllbGRBZmZlY3RzRGF0YSIsInRvU25ha2VDYXNlIiwicGF5bG9hZCIsImNvbmZpZyIsImxvY2FsaXphdGlvbiIsImxvY2FsaXplZCIsInVuaXF1ZSIsImluZGV4IiwiaW5jbHVkZXMiLCJ0eXBlIiwiaGFzTWFueSIsImNyZWF0ZUluZGV4IiwidmFyY2hhciIsIkludmFsaWRDb25maWd1cmF0aW9uIiwibnVtZXJpYyIsImpzb25iIiwidGltZXN0YW1wIiwibW9kZSIsInByZWNpc2lvbiIsIndpdGhUaW1lem9uZSIsImVudW1OYW1lIiwiZW51bXMiLCJwZ0VudW0iLCJvcHRpb25zIiwibWFwIiwib3B0aW9uIiwib3B0aW9uSXNPYmplY3QiLCJ2YWx1ZSIsInNlbGVjdFRhYmxlTmFtZSIsImJhc2VDb2x1bW5zIiwib3JkZXIiLCJpbnRlZ2VyIiwibm90TnVsbCIsInBhcmVudCIsInBhcmVudElEQ29sdW1uTWFwIiwicmVmZXJlbmNlcyIsInRhYmxlcyIsIm9uRGVsZXRlIiwiYmFzZUV4dHJhQ29uZmlnIiwib3JkZXJJZHgiLCJjb2xzIiwib24iLCJwYXJlbnRJZHgiLCJsb2NhbGUiLCJlbnVtX19sb2NhbGVzIiwibG9jYWxlSWR4IiwiYnVpbGRUYWJsZSIsInRhYmxlTmFtZSIsInNldCIsInNlbGVjdFRhYmxlUmVsYXRpb25zIiwicmVsYXRpb25zIiwib25lIiwicmVzdWx0IiwiYm9vbGVhbiIsImRpc2FibGVOb3ROdWxsRnJvbUhlcmUiLCJCb29sZWFuIiwiYWRtaW4iLCJjb25kaXRpb24iLCJhcnJheVRhYmxlTmFtZSIsIl9vcmRlciIsIl9wYXJlbnRJRCIsIl9vcmRlcklkeCIsIl9wYXJlbnRJRElkeCIsIl9sb2NhbGUiLCJfbG9jYWxlSWR4Iiwic3ViUmVsYXRpb25zVG9CdWlsZCIsImlkVG9VVUlEIiwicm9vdFJlbGF0aW9uc2hpcHMiLCJhcnJheVRhYmxlUmVsYXRpb25zIiwibWFueSIsImhhc0xvY2FsZXNUYWJsZSIsIl9sb2NhbGVzIiwidmFsIiwia2V5IiwiYmxvY2tzIiwiYmxvY2siLCJibG9ja1RhYmxlTmFtZSIsInNsdWciLCJfcGF0aCIsInRleHQiLCJfcGF0aElkeCIsImJsb2NrVGFibGVSZWxhdGlvbnMiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJ2YWxpZGF0ZUV4aXN0aW5nQmxvY2tJc0lkZW50aWNhbCIsInRhYmxlIiwiZ3JvdXBIYXNMb2NhbGl6ZWRGaWVsZCIsImdyb3VwSGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkIiwiZ3JvdXBIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCIsImdyb3VwSGFzTWFueU51bWJlckZpZWxkIiwidGFiSGFzTG9jYWxpemVkRmllbGQiLCJ0YWJIYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQiLCJ0YWJIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCIsInRhYkhhc01hbnlOdW1iZXJGaWVsZCIsInRhYnMiLCJ0YWIiLCJyb3dIYXNMb2NhbGl6ZWRGaWVsZCIsInJvd0hhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCIsInJvd0hhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkIiwicm93SGFzTWFueU51bWJlckZpZWxkIiwiQXJyYXkiLCJpc0FycmF5IiwicmVsYXRpb25UbyIsInJlbGF0aW9uIiwiYWRkIiwicmVxdWlyZWQiXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQzs7OzsrQkE2RHZCQTs7O2VBQUFBOzs7NEJBeERhO3dCQWFuQjt3QkFDOEI7dUJBQ1k7b0VBQ3pCO2lDQUlRO3VCQUNMOzZC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
456
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY2hlbWEvdHJhdmVyc2VGaWVsZHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcGFyYW0tcmVhc3NpZ24gKi9cbmltcG9ydCB0eXBlIHsgUmVsYXRpb24gfSBmcm9tICdkcml6emxlLW9ybSdcbmltcG9ydCB7IHJlbGF0aW9ucyB9IGZyb20gJ2RyaXp6bGUtb3JtJ1xuaW1wb3J0IHR5cGUgeyBJbmRleEJ1aWxkZXIsIFBnQ29sdW1uQnVpbGRlciwgVW5pcXVlQ29uc3RyYWludEJ1aWxkZXIgfSBmcm9tICdkcml6emxlLW9ybS9wZy1jb3JlJ1xuaW1wb3J0IHtcbiAgYm9vbGVhbixcbiAgaW5kZXgsXG4gIGludGVnZXIsXG4gIGpzb25iLFxuICBudW1lcmljLFxuICBwZ0VudW0sXG4gIFBnTnVtZXJpY0J1aWxkZXIsXG4gIFBnVmFyY2hhckJ1aWxkZXIsXG4gIHRleHQsXG4gIHRpbWVzdGFtcCxcbiAgdmFyY2hhcixcbn0gZnJvbSAnZHJpenpsZS1vcm0vcGctY29yZSdcbmltcG9ydCB0eXBlIHsgRmllbGQsIFRhYkFzRmllbGQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuaW1wb3J0IHsgZmllbGRBZmZlY3RzRGF0YSwgb3B0aW9uSXNPYmplY3QgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuaW1wb3J0IHsgSW52YWxpZENvbmZpZ3VyYXRpb24gfSBmcm9tICdwYXlsb2FkL2Vycm9ycydcbmltcG9ydCB0b1NuYWtlQ2FzZSBmcm9tICd0by1zbmFrZS1jYXNlJ1xuXG5pbXBvcnQgdHlwZSB7IEdlbmVyaWNDb2x1bW5zLCBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgaGFzTG9jYWxlc1RhYmxlIH0gZnJvbSAnLi4vdXRpbGl0aWVzL2hhc0xvY2FsZXNUYWJsZSdcbmltcG9ydCB7IGJ1aWxkVGFibGUgfSBmcm9tICcuL2J1aWxkJ1xuaW1wb3J0IHsgY3JlYXRlSW5kZXggfSBmcm9tICcuL2NyZWF0ZUluZGV4J1xuaW1wb3J0IHsgaWRUb1VVSUQgfSBmcm9tICcuL2lkVG9VVUlEJ1xuaW1wb3J0IHsgcGFyZW50SURDb2x1bW5NYXAgfSBmcm9tICcuL3BhcmVudElEQ29sdW1uTWFwJ1xuaW1wb3J0IHsgdmFsaWRhdGVFeGlzdGluZ0Jsb2NrSXNJZGVudGljYWwgfSBmcm9tICcuL3ZhbGlkYXRlRXhpc3RpbmdCbG9ja0lzSWRlbnRpY2FsJ1xuXG50eXBlIEFyZ3MgPSB7XG4gIGFkYXB0ZXI6IFBvc3RncmVzQWRhcHRlclxuICBidWlsZFJlbGF0aW9uc2hpcHM6IGJvb2xlYW5cbiAgY29sdW1uUHJlZml4Pzogc3RyaW5nXG4gIGNvbHVtbnM6IFJlY29yZDxzdHJpbmcsIFBnQ29sdW1uQnVpbGRlcj5cbiAgZGlzYWJsZU5vdE51bGw6IGJvb2xlYW5cbiAgZGlzYWJsZVVuaXF1ZT86IGJvb2xlYW5cbiAgZmllbGRQcmVmaXg/OiBzdHJpbmdcbiAgZmllbGRzOiAoRmllbGQgfCBUYWJBc0ZpZWxkKVtdXG4gIGZvcmNlTG9jYWxpemVkPzogYm9vbGVhblxuICBpbmRleGVzOiBSZWNvcmQ8c3RyaW5nLCAoY29sczogR2VuZXJpY0NvbHVtbnMpID0+IEluZGV4QnVpbGRlcj5cbiAgbG9jYWxlc0NvbHVtbnM6IFJlY29yZDxzdHJpbmcsIFBnQ29sdW1uQnVpbGRlcj5cbiAgbG9jYWxlc0luZGV4ZXM6IFJlY29yZDxzdHJpbmcsIChjb2xzOiBHZW5lcmljQ29sdW1ucykgPT4gSW5kZXhCdWlsZGVyPlxuICBuZXdUYWJsZU5hbWU6IHN0cmluZ1xuICBwYXJlbnRUYWJsZU5hbWU6IHN0cmluZ1xuICByZWxhdGlvbnNUb0J1aWxkOiBNYXA8c3RyaW5nLCBzdHJpbmc+XG4gIHJlbGF0aW9uc2hpcHM6IFNldDxzdHJpbmc+XG4gIHJvb3RSZWxhdGlvbnNUb0J1aWxkPzogTWFwPHN0cmluZywgc3RyaW5nPlxuICByb290VGFibGVJRENvbFR5cGU6IHN0cmluZ1xuICByb290VGFibGVOYW1lOiBzdHJpbmdcbn1cblxudHlwZSBSZXN1bHQgPSB7XG4gIGhhc0xvY2FsaXplZEZpZWxkOiBib29sZWFuXG4gIGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZDogYm9vbGVhblxuICBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZDogYm9vbGVhblxuICBoYXNNYW55TnVtYmVyRmllbGQ6ICdpbmRleCcgfCBib29sZWFuXG59XG5cbmV4cG9ydCBjb25zdCB0cmF2ZXJzZUZpZWxkcyA9ICh7XG4gIGFkYXB0ZXIsXG4gIGJ1aWxkUmVsYXRpb25zaGlwcyxcbiAgY29sdW1uUHJlZml4LFxuICBjb2x1bW5zLFxuICBkaXNhYmxlTm90TnVsbCxcbiAgZGlzYWJsZVVuaXF1ZSA9IGZhbHNlLFxuICBmaWVsZFByZWZpeCxcbiAgZmllbGRzLFxuICBmb3JjZUxvY2FsaXplZCxcbiAgaW5kZXhlcyxcbiAgbG9jYWxlc0NvbHVtbnMsXG4gIGxvY2FsZXNJbmRleGVzLFxuICBuZXdUYWJsZU5hbWUsXG4gIHBhcmVudFRhYmxlTmFtZSxcbiAgcmVsYXRpb25zVG9CdWlsZCxcbiAgcmVsYXRpb25zaGlwcyxcbiAgcm9vdFJlbGF0aW9uc1RvQnVpbGQsXG4gIHJvb3RUYWJsZUlEQ29sVHlwZSxcbiAgcm9vdFRhYmxlTmFtZSxcbn06IEFyZ3MpOiBSZXN1bHQgPT4ge1xuICBsZXQgaGFzTG9jYWxpemVkRmllbGQgPSBmYWxzZVxuICBsZXQgaGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQgPSBmYWxzZVxuICBsZXQgaGFzTWFueU51bWJlckZpZWxkOiAnaW5kZXgnIHwgYm9vbGVhbiA9IGZhbHNlXG4gIGxldCBoYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQgPSBmYWxzZVxuXG4gIGxldCBwYXJlbnRJRENvbFR5cGUgPSAnaW50ZWdlcidcbiAgaWYgKGNvbHVtbnMuaWQgaW5zdGFuY2VvZiBQZ051bWVyaWNCdWlsZGVyKSBwYXJlbnRJRENvbFR5cGUgPSAnbnVtZXJpYydcbiAgaWYgKGNvbHVtbnMuaWQgaW5zdGFuY2VvZiBQZ1ZhcmNoYXJCdWlsZGVyKSBwYXJlbnRJRENvbFR5cGUgPSAndmFyY2hhcidcblxuICBmaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICBpZiAoJ25hbWUnIGluIGZpZWxkICYmIGZpZWxkLm5hbWUgPT09ICdpZCcpIHJldHVyblxuICAgIGxldCBjb2x1bW5OYW1lOiBzdHJpbmdcbiAgICBsZXQgZmllbGROYW1lOiBzdHJpbmdcblxuICAgIGxldCB0YXJnZXRUYWJsZSA9IGNvbHVtbnNcbiAgICBsZXQgdGFyZ2V0SW5kZXhlcyA9IGluZGV4ZXNcblxuICAgIGlmIChmaWVsZEFmZmVjdHNEYXRhKGZpZWxkKSkge1xuICAgICAgY29sdW1uTmFtZSA9IGAke2NvbHVtblByZWZpeCB8fCAnJ30ke2ZpZWxkLm5hbWVbMF0gPT09ICdfJyA/ICdfJyA6ICcnfSR7dG9TbmFrZUNhc2UoXG4gICAgICAgIGZpZWxkLm5hbWUsXG4gICAgICApfWBcbiAgICAgIGZpZWxkTmFtZSA9IGAke2ZpZWxkUHJlZml4Py5yZXBsYWNlKCcuJywgJ18nKSB8fCAnJ30ke2ZpZWxkLm5hbWV9YFxuXG4gICAgICAvLyBJZiBmaWVsZCBpcyBsb2NhbGl6ZWQsXG4gICAgICAvLyBhZGQgdGhlIGNvbHVtbiB0byB0aGUgbG9jYWxlIHRhYmxlIGluc3RlYWQgb2YgbWFpbiB0YWJsZVxuICAgICAgaWYgKGFkYXB0ZXIucGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uICYmIChmaWVsZC5sb2NhbGl6ZWQgfHwgZm9yY2VMb2NhbGl6ZWQpKSB7XG4gICAgICAgIGhhc0xvY2FsaXplZEZpZWxkID0gdHJ1ZVxuICAgICAgICB0YXJnZXRUYWJsZSA9IGxvY2FsZXNDb2x1bW5zXG4gICAgICAgIHRhcmdldEluZGV4ZXMgPSBsb2NhbGVzSW5kZXhlc1xuICAgICAgfVxuXG4gICAgICBpZiAoXG4gICAgICAgIChmaWVsZC51bmlxdWUgfHwgZmllbGQuaW5kZXgpICYmXG4gICAgICAgICFbJ2FycmF5JywgJ2Jsb2NrcycsICdncm91cCcsICdwb2ludCcsICdyZWxhdGlvbnNoaXAnLCAndXBsb2FkJ10uaW5jbHVkZXMoZmllbGQudHlwZSkgJiZcbiAgICAgICAgIShmaWVsZC50eXBlID09PSAnbnVtYmVyJyAmJiBmaWVsZC5oYXNNYW55ID09PSB0cnVlKVxuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IHVuaXF1ZSA9IGRpc2FibGVVbmlxdWUgIT09IHRydWUgJiYgZmllbGQudW5pcXVlXG4gICAgICAgIGlmICh1bmlxdWUpIHtcbiAgICAgICAgICBjb25zdCBjb25zdHJhaW50VmFsdWUgPSBgJHtmaWVsZFByZWZpeCB8fCAnJ30ke2ZpZWxkLm5hbWV9YFxuICAgICAgICAgIGlmICghYWRhcHRlci5maWVsZENvbnN0cmFpbnRzPy5bcm9vdFRhYmxlTmFtZV0pIHtcbiAgICAgICAgICAgIGFkYXB0ZXIuZmllbGRDb25zdHJhaW50c1tyb290VGFibGVOYW1lXSA9IHt9XG4gICAgICAgICAgfVxuICAgICAgICAgIGFkYXB0ZXIuZmllbGRDb25zdHJhaW50c1tyb290VGFibGVOYW1lXVtgJHtjb2x1bW5OYW1lfV9pZHhgXSA9IGNvbnN0cmFpbnRWYWx1ZVxuICAgICAgICB9XG4gICAgICAgIHRhcmdldEluZGV4ZXNbYCR7ZmllbGQubmFtZX1JZHhgXSA9IGNyZWF0ZUluZGV4KHtcbiAgICAgICAgICBuYW1lOiBmaWVsZE5hbWUsXG4gICAgICAgICAgY29sdW1uTmFtZSxcbiAgICAgICAgICB1bmlxdWUsXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICBjYXNlICd0ZXh0JzpcbiAgICAgIGNhc2UgJ2VtYWlsJzpcbiAgICAgIGNhc2UgJ2NvZGUnOlxuICAgICAgY2FzZSAndGV4dGFyZWEnOiB7XG4gICAgICAgIHRhcmdldFRhYmxlW2ZpZWxkTmFtZV0gPSB2YXJjaGFyKGNvbHVtbk5hbWUpXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ251bWJlcic6IHtcbiAgICAgICAgaWYgKGZpZWxkLmhhc01hbnkpIHtcbiAgICAgICAgICBpZiAoZmllbGQubG9jYWxpemVkKSB7XG4gICAgICAgICAgICBoYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQgPSB0cnVlXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGZpZWxkLmluZGV4KSB7XG4gICAgICAgICAgICBoYXNNYW55TnVtYmVyRmllbGQgPSAnaW5kZXgnXG4gICAgICAgICAgfSBlbHNlIGlmICghaGFzTWFueU51bWJlckZpZWxkKSB7XG4gICAgICAgICAgICBoYXNNYW55TnVtYmVyRmllbGQgPSB0cnVlXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGZpZWxkLnVuaXF1ZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRDb25maWd1cmF0aW9uKFxuICAgICAgICAgICAgICAnVW5pcXVlIGlzIG5vdCBzdXBwb3J0ZWQgaW4gUG9zdGdyZXMgZm9yIGhhc01hbnkgbnVtYmVyIGZpZWxkcy4nLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0YXJnZXRUYWJsZVtmaWVsZE5hbWVdID0gbnVtZXJpYyhjb2x1bW5OYW1lKVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ3JpY2hUZXh0JzpcbiAgICAgIGNhc2UgJ2pzb24nOiB7XG4gICAgICAgIHRhcmdldFRhYmxlW2ZpZWxkTmFtZV0gPSBqc29uYihjb2x1bW5OYW1lKVxuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBjYXNlICdkYXRlJzoge1xuICAgICAgICB0YXJnZXRUYWJsZVtmaWVsZE5hbWVdID0gdGltZXN0YW1wKGNvbHVtbk5hbWUsIHtcbiAgICAgICAgICBtb2RlOiAnc3RyaW5nJyxcbiAgICAgICAgICBwcmVjaXNpb246IDMsXG4gICAgICAgICAgd2l0aFRpbWV6b25lOiB0cnVlLFxuICAgICAgICB9KVxuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBjYXNlICdwb2ludCc6IHtcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgY2FzZSAncmFkaW8nOlxuICAgICAgY2FzZSAnc2VsZWN0Jzoge1xuICAgICAgICBjb25zdCBlbnVtTmFtZSA9IGBlbnVtXyR7bmV3VGFibGVOYW1lfV8ke3RvU25ha2VDYXNlKGZpZWxkLm5hbWUpfWBcblxuICAgICAgICBhZGFwdGVyLmVudW1zW2VudW1OYW1lXSA9IHBnRW51bShcbiAgICAgICAgICBlbnVtTmFtZSxcbiAgICAgICAgICBmaWVsZC5vcHRpb25zLm1hcCgob3B0aW9uKSA9PiB7XG4gICAgICAgICAgICBpZiAob3B0aW9uSXNPYmplY3Qob3B0aW9uKSkge1xuICAgICAgICAgICAgICByZXR1cm4gb3B0aW9uLnZhbHVlXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBvcHRpb25cbiAgICAgICAgICB9KSBhcyBbc3RyaW5nLCAuLi5zdHJpbmdbXV0sXG4gICAgICAgIClcblxuICAgICAgICBpZiAoZmllbGQudHlwZSA9PT0gJ3NlbGVjdCcgJiYgZmllbGQuaGFzTWFueSkge1xuICAgICAgICAgIGNvbnN0IHNlbGVjdFRhYmxlTmFtZSA9IGAke25ld1RhYmxlTmFtZX1fJHt0b1NuYWtlQ2FzZShmaWVsZC5uYW1lKX1gXG4gICAgICAgICAgY29uc3QgYmFzZUNvbHVtbnM6IFJlY29yZDxzdHJpbmcsIFBnQ29sdW1uQnVpbGRlcj4gPSB7XG4gICAgICAgICAgICBvcmRlcjogaW50ZWdlcignb3JkZXInKS5ub3ROdWxsKCksXG4gICAgICAgICAgICBwYXJlbnQ6IHBhcmVudElEQ29sdW1uTWFwW3BhcmVudElEQ29sVHlwZV0oJ3BhcmVudF9pZCcpXG4gICAgICAgICAgICAgIC5yZWZlcmVuY2VzKCgpID0+IGFkYXB0ZXIudGFibGVzW3BhcmVudFRhYmxlTmFtZV0uaWQsIHsgb25EZWxldGU6ICdjYXNjYWRlJyB9KVxuICAgICAgICAgICAgICAubm90TnVsbCgpLFxuICAgICAgICAgICAgdmFsdWU6IGFkYXB0ZXIuZW51bXNbZW51bU5hbWVdKCd2YWx1ZScpLFxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGJhc2VFeHRyYUNvbmZpZzogUmVjb3JkPFxuICAgICAgICAgICAgc3RyaW5nLFxuICAgICAgICAgICAgKGNvbHM6IEdlbmVyaWNDb2x1bW5zKSA9PiBJbmRleEJ1aWxkZXIgfCBVbmlxdWVDb25zdHJhaW50QnVpbGRlclxuICAgICAgICAgID4gPSB7XG4gICAgICAgICAgICBvcmRlcklkeDogKGNvbHMpID0+IGluZGV4KCdvcmRlcl9pZHgnKS5vbihjb2xzLm9yZGVyKSxcbiAgICAgICAgICAgIHBhcmVudElkeDogKGNvbHMpID0+IGluZGV4KCdwYXJlbnRfaWR4Jykub24oY29scy5wYXJlbnQpLFxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChmaWVsZC5sb2NhbGl6ZWQpIHtcbiAgICAgICAgICAgIGJhc2VDb2x1bW5zLmxvY2FsZSA9IGFkYXB0ZXIuZW51bXMuZW51bV9fbG9jYWxlcygnbG9jYWxlJykubm90TnVsbCgpXG4gICAgICAgICAgICBiYXNlRXh0cmFDb25maWcubG9jYWxlSWR4ID0gKGNvbHMpID0+IGluZGV4KCdsb2NhbGVfaWR4Jykub24oY29scy5sb2NhbGUpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGZpZWxkLmluZGV4KSB7XG4gICAgICAgICAgICBiYXNlRXh0cmFDb25maWcudmFsdWUgPSAoY29scykgPT4gaW5kZXgoJ3ZhbHVlX2lkeCcpLm9uKGNvbHMudmFsdWUpXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnVpbGRUYWJsZSh7XG4gICAgICAgICAgICBhZGFwdGVyLFxuICAgICAgICAgICAgYmFzZUNvbHVtbnMsXG4gICAgICAgICAgICBiYXNlRXh0cmFDb25maWcsXG4gICAgICAgICAgICBkaXNhYmxlTm90TnVsbCxcbiAgICAgICAgICAgIGRpc2FibGVVbmlxdWUsXG4gICAgICAgICAgICBmaWVsZHM6IFtdLFxuICAgICAgICAgICAgdGFibGVOYW1lOiBzZWxlY3RUYWJsZU5hbWUsXG4gICAgICAgICAgfSlcblxuICAgICAgICAgIHJlbGF0aW9uc1RvQnVpbGQuc2V0KGZpZWxkTmFtZSwgc2VsZWN0VGFibGVOYW1lKVxuXG4gICAgICAgICAgY29uc3Qgc2VsZWN0VGFibGVSZWxhdGlvbnMgPSByZWxhdGlvbnMoYWRhcHRlci50YWJsZXNbc2VsZWN0VGFibGVOYW1lXSwgKHsgb25lIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdDogUmVjb3JkPHN0cmluZywgUmVsYXRpb248c3RyaW5nPj4gPSB7XG4gICAgICAgICAgICAgIHBhcmVudDogb25lKGFkYXB0ZXIudGFibGVzW3BhcmVudFRhYmxlTmFtZV0sIHtcbiAgICAgICAgICAgICAgICBmaWVsZHM6IFthZGFwdGVyLnRhYmxlc1tzZWxlY3RUYWJsZU5hbWVdLnBhcmVudF0sXG4gICAgICAgICAgICAgICAgcmVmZXJlbmNlczogW2FkYXB0ZXIudGFibGVzW3BhcmVudFRhYmxlTmFtZV0uaWRdLFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICBhZGFwdGVyLnJlbGF0aW9uc1tgcmVsYXRpb25fJHtzZWxlY3RUYWJsZU5hbWV9YF0gPSBzZWxlY3RUYWJsZVJlbGF0aW9uc1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRhcmdldFRhYmxlW2ZpZWxkTmFtZV0gPSBhZGFwdGVyLmVudW1zW2VudW1OYW1lXShmaWVsZE5hbWUpXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgY2FzZSAnY2hlY2tib3gnOiB7XG4gICAgICAgIHRhcmdldFRhYmxlW2ZpZWxkTmFtZV0gPSBib29sZWFuKGNvbHVtbk5hbWUpXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ2FycmF5Jzoge1xuICAgICAgICBjb25zdCBkaXNhYmxlTm90TnVsbEZyb21IZXJlID0gQm9vbGVhbihmaWVsZC5hZG1pbj8uY29uZGl0aW9uKSB8fCBkaXNhYmxlTm90TnVsbFxuXG4gICAgICAgIGNvbnN0IGFycmF5VGFibGVOYW1lID0gYCR7bmV3VGFibGVOYW1lfV8ke3RvU25ha2VDYXNlKGZpZWxkLm5hbWUpfWBcbiAgICAgICAgY29uc3QgYmFzZUNvbHVtbnM6IFJlY29yZDxzdHJpbmcsIFBnQ29sdW1uQnVpbGRlcj4gPSB7XG4gICAgICAgICAgX29yZGVyOiBpbnRlZ2VyKCdfb3JkZXInKS5ub3ROdWxsKCksXG4gICAgICAgICAgX3BhcmVudElEOiBwYXJlbnRJRENvbHVtbk1hcFtwYXJlbnRJRENvbFR5cGVdKCdfcGFyZW50X2lkJylcbiAgICAgICAgICAgIC5yZWZlcmVuY2VzKCgpID0+IGFkYXB0ZXIudGFibGVzW3BhcmVudFRhYmxlTmFtZV0uaWQsIHsgb25EZWxldGU6ICdjYXNjYWRlJyB9KVxuICAgICAgICAgICAgLm5vdE51bGwoKSxcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGJhc2VFeHRyYUNvbmZpZzogUmVjb3JkPFxuICAgICAgICAgIHN0cmluZyxcbiAgICAgICAgICAoY29sczogR2VuZXJpY0NvbHVtbnMpID0+IEluZGV4QnVpbGRlciB8IFVuaXF1ZUNvbnN0cmFpbnRCdWlsZGVyXG4gICAgICAgID4gPSB7XG4gICAgICAgICAgX29yZGVySWR4OiAoY29scykgPT4gaW5kZXgoJ19vcmRlcl9pZHgnKS5vbihjb2xzLl9vcmRlciksXG4gICAgICAgICAgX3BhcmVudElESWR4OiAoY29scykgPT4gaW5kZXgoJ19wYXJlbnRfaWRfaWR4Jykub24oY29scy5fcGFyZW50SUQpLFxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGZpZWxkLmxvY2FsaXplZCAmJiBhZGFwdGVyLnBheWxvYWQuY29uZmlnLmxvY2FsaXphdGlvbikge1xuICAgICAgICAgIGJhc2VDb2x1bW5zLl9sb2NhbGUgPSBhZGFwdGVyLmVudW1zLmVudW1fX2xvY2FsZXMoJ19sb2NhbGUnKS5ub3ROdWxsKClcbiAgICAgICAgICBiYXNlRXh0cmFDb25maWcuX2xvY2FsZUlkeCA9IChjb2xzKSA9PiBpbmRleCgnX2xvY2FsZV9pZHgnKS5vbihjb2xzLl9sb2NhbGUpXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7IHJlbGF0aW9uc1RvQnVpbGQ6IHN1YlJlbGF0aW9uc1RvQnVpbGQgfSA9IGJ1aWxkVGFibGUoe1xuICAgICAgICAgIGFkYXB0ZXIsXG4gICAgICAgICAgYmFzZUNvbHVtbnMsXG4gICAgICAgICAgYmFzZUV4dHJhQ29uZmlnLFxuICAgICAgICAgIGRpc2FibGVOb3ROdWxsOiBkaXNhYmxlTm90TnVsbEZyb21IZXJlLFxuICAgICAgICAgIGRpc2FibGVVbmlxdWUsXG4gICAgICAgICAgZmllbGRzOiBkaXNhYmxlVW5pcXVlID8gaWRUb1VVSUQoZmllbGQuZmllbGRzKSA6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICByb290UmVsYXRpb25zVG9CdWlsZCxcbiAgICAgICAgICByb290UmVsYXRpb25zaGlwczogcmVsYXRpb25zaGlwcyxcbiAgICAgICAgICByb290VGFibGVJRENvbFR5cGUsXG4gICAgICAgICAgcm9vdFRhYmxlTmFtZSxcbiAgICAgICAgICB0YWJsZU5hbWU6IGFycmF5VGFibGVOYW1lLFxuICAgICAgICB9KVxuXG4gICAgICAgIHJlbGF0aW9uc1RvQnVpbGQuc2V0KGZpZWxkTmFtZSwgYXJyYXlUYWJsZU5hbWUpXG5cbiAgICAgICAgY29uc3QgYXJyYXlUYWJsZVJlbGF0aW9ucyA9IHJlbGF0aW9ucyhhZGFwdGVyLnRhYmxlc1thcnJheVRhYmxlTmFtZV0sICh7IG1hbnksIG9uZSB9KSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0OiBSZWNvcmQ8c3RyaW5nLCBSZWxhdGlvbjxzdHJpbmc+PiA9IHtcbiAgICAgICAgICAgIF9wYXJlbnRJRDogb25lKGFkYXB0ZXIudGFibGVzW3BhcmVudFRhYmxlTmFtZV0sIHtcbiAgICAgICAgICAgICAgZmllbGRzOiBbYWRhcHRlci50YWJsZXNbYXJyYXlUYWJsZU5hbWVdLl9wYXJlbnRJRF0sXG4gICAgICAgICAgICAgIHJlZmVyZW5jZXM6IFthZGFwdGVyLnRhYmxlc1twYXJlbnRUYWJsZU5hbWVdLmlkXSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChoYXNMb2NhbGVzVGFibGUoZmllbGQuZmllbGRzKSkge1xuICAgICAgICAgICAgcmVzdWx0Ll9sb2NhbGVzID0gbWFueShhZGFwdGVyLnRhYmxlc1tgJHthcnJheVRhYmxlTmFtZX1fbG9jYWxlc2BdKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHN1YlJlbGF0aW9uc1RvQnVpbGQuZm9yRWFjaCgodmFsLCBrZXkpID0+IHtcbiAgICAgICAgICAgIHJlc3VsdFtrZXldID0gbWFueShhZGFwdGVyLnRhYmxlc1t2YWxdKVxuICAgICAgICAgIH0pXG5cbiAgICAgICAgICByZXR1cm4gcmVzdWx0XG4gICAgICAgIH0pXG5cbiAgICAgICAgYWRhcHRlci5yZWxhdGlvbnNbYHJlbGF0aW9uc18ke2FycmF5VGFibGVOYW1lfWBdID0gYXJyYXlUYWJsZVJlbGF0aW9uc1xuXG4gICAgICAgIGJyZWFrXG4gICAgICB9XG5cbiAgICAgIGNhc2UgJ2Jsb2Nrcyc6IHtcbiAgICAgICAgY29uc3QgZGlzYWJsZU5vdE51bGxGcm9tSGVyZSA9IEJvb2xlYW4oZmllbGQuYWRtaW4/LmNvbmRpdGlvbikgfHwgZGlzYWJsZU5vdE51bGxcblxuICAgICAgICBmaWVsZC5ibG9ja3MuZm9yRWFjaCgoYmxvY2spID0+IHtcbiAgICAgICAgICBjb25zdCBibG9ja1RhYmxlTmFtZSA9IGAke3Jvb3RUYWJsZU5hbWV9X2Jsb2Nrc18ke3RvU25ha2VDYXNlKGJsb2NrLnNsdWcpfWBcbiAgICAgICAgICBpZiAoIWFkYXB0ZXIudGFibGVzW2Jsb2NrVGFibGVOYW1lXSkge1xuICAgICAgICAgICAgY29uc3QgYmFzZUNvbHVtbnM6IFJlY29yZDxzdHJpbmcsIFBnQ29sdW1uQnVpbGRlcj4gPSB7XG4gICAgICAgICAgICAgIF9vcmRlcjogaW50ZWdlcignX29yZGVyJykubm90TnVsbCgpLFxuICAgICAgICAgICAgICBfcGFyZW50SUQ6IHBhcmVudElEQ29sdW1uTWFwW3Jvb3RUYWJsZUlEQ29sVHlwZV0oJ19wYXJlbnRfaWQnKVxuICAgICAgICAgICAgICAgIC5yZWZlcmVuY2VzKCgpID0+IGFkYXB0ZXIudGFibGVzW3Jvb3RUYWJsZU5hbWVdLmlkLCB7IG9uRGVsZXRlOiAnY2FzY2FkZScgfSlcbiAgICAgICAgICAgICAgICAubm90TnVsbCgpLFxuICAgICAgICAgICAgICBfcGF0aDogdGV4dCgnX3BhdGgnKS5ub3ROdWxsKCksXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGJhc2VFeHRyYUNvbmZpZzogUmVjb3JkPFxuICAgICAgICAgICAgICBzdHJpbmcsXG4gICAgICAgICAgICAgIChjb2xzOiBHZW5lcmljQ29sdW1ucykgPT4gSW5kZXhCdWlsZGVyIHwgVW5pcXVlQ29uc3RyYWludEJ1aWxkZXJcbiAgICAgICAgICAgID4gPSB7XG4gICAgICAgICAgICAgIF9vcmRlcklkeDogKGNvbHMpID0+IGluZGV4KCdvcmRlcl9pZHgnKS5vbihjb2xzLl9vcmRlciksXG4gICAgICAgICAgICAgIF9wYXJlbnRJRElkeDogKGNvbHMpID0+IGluZGV4KCdwYXJlbnRfaWRfaWR4Jykub24oY29scy5fcGFyZW50SUQpLFxuICAgICAgICAgICAgICBfcGF0aElkeDogKGNvbHMpID0+IGluZGV4KCdwYXRoX2lkeCcpLm9uKGNvbHMuX3BhdGgpLFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoZmllbGQubG9jYWxpemVkICYmIGFkYXB0ZXIucGF5bG9hZC5jb25maWcubG9jYWxpemF0aW9uKSB7XG4gICAgICAgICAgICAgIGJhc2VDb2x1bW5zLl9sb2NhbGUgPSBhZGFwdGVyLmVudW1zLmVudW1fX2xvY2FsZXMoJ19sb2NhbGUnKS5ub3ROdWxsKClcbiAgICAgICAgICAgICAgYmFzZUV4dHJhQ29uZmlnLl9sb2NhbGVJZHggPSAoY29scykgPT4gaW5kZXgoJ2xvY2FsZV9pZHgnKS5vbihjb2xzLl9sb2NhbGUpXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHsgcmVsYXRpb25zVG9CdWlsZDogc3ViUmVsYXRpb25zVG9CdWlsZCB9ID0gYnVpbGRUYWJsZSh7XG4gICAgICAgICAgICAgIGFkYXB0ZXIsXG4gICAgICAgICAgICAgIGJhc2VDb2x1bW5zLFxuICAgICAgICAgICAgICBiYXNlRXh0cmFDb25maWcsXG4gICAgICAgICAgICAgIGRpc2FibGVOb3ROdWxsOiBkaXNhYmxlTm90TnVsbEZyb21IZXJlLFxuICAgICAgICAgICAgICBkaXNhYmxlVW5pcXVlLFxuICAgICAgICAgICAgICBmaWVsZHM6IGRpc2FibGVVbmlxdWUgPyBpZFRvVVVJRChibG9jay5maWVsZHMpIDogYmxvY2suZmllbGRzLFxuICAgICAgICAgICAgICByb290UmVsYXRpb25zVG9CdWlsZCxcbiAgICAgICAgICAgICAgcm9vdFJlbGF0aW9uc2hpcHM6IHJlbGF0aW9uc2hpcHMsXG4gICAgICAgICAgICAgIHJvb3RUYWJsZUlEQ29sVHlwZSxcbiAgICAgICAgICAgICAgcm9vdFRhYmxlTmFtZSxcbiAgICAgICAgICAgICAgdGFibGVOYW1lOiBibG9ja1RhYmxlTmFtZSxcbiAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgIGNvbnN0IGJsb2NrVGFibGVSZWxhdGlvbnMgPSByZWxhdGlvbnMoXG4gICAgICAgICAgICAgIGFkYXB0ZXIudGFibGVzW2Jsb2NrVGFibGVOYW1lXSxcbiAgICAgICAgICAgICAgKHsgbWFueSwgb25lIH0pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXN1bHQ6IFJlY29yZDxzdHJpbmcsIFJlbGF0aW9uPHN0cmluZz4+ID0ge1xuICAgICAgICAgICAgICAgICAgX3BhcmVudElEOiBvbmUoYWRhcHRlci50YWJsZXNbcm9vdFRhYmxlTmFtZV0sIHtcbiAgICAgICAgICAgICAgICAgICAgZmllbGRzOiBbYWRhcHRlci50YWJsZXNbYmxvY2tUYWJsZU5hbWVdLl9wYXJlbnRJRF0sXG4gICAgICAgICAgICAgICAgICAgIHJlZmVyZW5jZXM6IFthZGFwdGVyLnRhYmxlc1tyb290VGFibGVOYW1lXS5pZF0sXG4gICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoaGFzTG9jYWxlc1RhYmxlKGJsb2NrLmZpZWxkcykpIHtcbiAgICAgICAgICAgICAgICAgIHJlc3VsdC5fbG9jYWxlcyA9IG1hbnkoYWRhcHRlci50YWJsZXNbYCR7YmxvY2tUYWJsZU5hbWV9X2xvY2FsZXNgXSlcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdWJSZWxhdGlvbnNUb0J1aWxkLmZvckVhY2goKHZhbCwga2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgICByZXN1bHRba2V5XSA9IG1hbnkoYWRhcHRlci50YWJsZXNbdmFsXSlcbiAgICAgICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKVxuXG4gICAgICAgICAgICBhZGFwdGVyLnJlbGF0aW9uc1tgcmVsYXRpb25zXyR7YmxvY2tUYWJsZU5hbWV9YF0gPSBibG9ja1RhYmxlUmVsYXRpb25zXG4gICAgICAgICAgfSBlbHNlIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB2YWxpZGF0ZUV4aXN0aW5nQmxvY2tJc0lkZW50aWNhbCh7XG4gICAgICAgICAgICAgIGJsb2NrLFxuICAgICAgICAgICAgICBsb2NhbGl6ZWQ6IGZpZWxkLmxvY2FsaXplZCxcbiAgICAgICAgICAgICAgcm9vdFRhYmxlTmFtZSxcbiAgICAgICAgICAgICAgdGFibGU6IGFkYXB0ZXIudGFibGVzW2Jsb2NrVGFibGVOYW1lXSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcm9vdFJlbGF0aW9uc1RvQnVpbGQuc2V0KGBfYmxvY2tzXyR7YmxvY2suc2x1Z31gLCBibG9ja1RhYmxlTmFtZSlcbiAgICAgICAgfSlcblxuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBjYXNlICd0YWInOlxuICAgICAgY2FzZSAnZ3JvdXAnOiB7XG4gICAgICAgIGlmICghKCduYW1lJyBpbiBmaWVsZCkpIHtcbiAgICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICBoYXNMb2NhbGl6ZWRGaWVsZDogZ3JvdXBIYXNMb2NhbGl6ZWRGaWVsZCxcbiAgICAgICAgICAgIGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZDogZ3JvdXBIYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQsXG4gICAgICAgICAgICBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZDogZ3JvdXBIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCxcbiAgICAgICAgICAgIGhhc01hbnlOdW1iZXJGaWVsZDogZ3JvdXBIYXNNYW55TnVtYmVyRmllbGQsXG4gICAgICAgICAgfSA9IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICAgIGFkYXB0ZXIsXG4gICAgICAgICAgICBidWlsZFJlbGF0aW9uc2hpcHMsXG4gICAgICAgICAgICBjb2x1bW5QcmVmaXgsXG4gICAgICAgICAgICBjb2x1bW5zLFxuICAgICAgICAgICAgZGlzYWJsZU5vdE51bGwsXG4gICAgICAgICAgICBkaXNhYmxlVW5pcXVlLFxuICAgICAgICAgICAgZmllbGRQcmVmaXgsXG4gICAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICAgIGZvcmNlTG9jYWxpemVkLFxuICAgICAgICAgICAgaW5kZXhlcyxcbiAgICAgICAgICAgIGxvY2FsZXNDb2x1bW5zLFxuICAgICAgICAgICAgbG9jYWxlc0luZGV4ZXMsXG4gICAgICAgICAgICBuZXdUYWJsZU5hbWUsXG4gICAgICAgICAgICBwYXJlbnRUYWJsZU5hbWUsXG4gICAgICAgICAgICByZWxhdGlvbnNUb0J1aWxkLFxuICAgICAgICAgICAgcmVsYXRpb25zaGlwcyxcbiAgICAgICAgICAgIHJvb3RSZWxhdGlvbnNUb0J1aWxkLFxuICAgICAgICAgICAgcm9vdFRhYmxlSURDb2xUeXBlLFxuICAgICAgICAgICAgcm9vdFRhYmxlTmFtZSxcbiAgICAgICAgICB9KVxuXG4gICAgICAgICAgaWYgKGdyb3VwSGFzTG9jYWxpemVkRmllbGQpIGhhc0xvY2FsaXplZEZpZWxkID0gdHJ1ZVxuICAgICAgICAgIGlmIChncm91cEhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkKSBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCA9IHRydWVcbiAgICAgICAgICBpZiAoZ3JvdXBIYXNNYW55TnVtYmVyRmllbGQpIGhhc01hbnlOdW1iZXJGaWVsZCA9IHRydWVcbiAgICAgICAgICBpZiAoZ3JvdXBIYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQpIGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCA9IHRydWVcbiAgICAgICAgICBicmVha1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGlzYWJsZU5vdE51bGxGcm9tSGVyZSA9IEJvb2xlYW4oZmllbGQuYWRtaW4/LmNvbmRpdGlvbikgfHwgZGlzYWJsZU5vdE51bGxcblxuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgaGFzTG9jYWxpemVkRmllbGQ6IGdyb3VwSGFzTG9jYWxpemVkRmllbGQsXG4gICAgICAgICAgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkOiBncm91cEhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCxcbiAgICAgICAgICBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZDogZ3JvdXBIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCxcbiAgICAgICAgICBoYXNNYW55TnVtYmVyRmllbGQ6IGdyb3VwSGFzTWFueU51bWJlckZpZWxkLFxuICAgICAgICB9ID0gdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgIGFkYXB0ZXIsXG4gICAgICAgICAgYnVpbGRSZWxhdGlvbnNoaXBzLFxuICAgICAgICAgIGNvbHVtblByZWZpeDogYCR7Y29sdW1uTmFtZX1fYCxcbiAgICAgICAgICBjb2x1bW5zLFxuICAgICAgICAgIGRpc2FibGVOb3ROdWxsOiBkaXNhYmxlTm90TnVsbEZyb21IZXJlLFxuICAgICAgICAgIGRpc2FibGVVbmlxdWUsXG4gICAgICAgICAgZmllbGRQcmVmaXg6IGAke2ZpZWxkTmFtZX0uYCxcbiAgICAgICAgICBmaWVsZHM6IGZpZWxkLmZpZWxkcyxcbiAgICAgICAgICBmb3JjZUxvY2FsaXplZDogZmllbGQubG9jYWxpemVkLFxuICAgICAgICAgIGluZGV4ZXMsXG4gICAgICAgICAgbG9jYWxlc0NvbHVtbnMsXG4gICAgICAgICAgbG9jYWxlc0luZGV4ZXMsXG4gICAgICAgICAgbmV3VGFibGVOYW1lOiBgJHtwYXJlbnRUYWJsZU5hbWV9XyR7Y29sdW1uTmFtZX1gLFxuICAgICAgICAgIHBhcmVudFRhYmxlTmFtZSxcbiAgICAgICAgICByZWxhdGlvbnNUb0J1aWxkLFxuICAgICAgICAgIHJlbGF0aW9uc2hpcHMsXG4gICAgICAgICAgcm9vdFJlbGF0aW9uc1RvQnVpbGQsXG4gICAgICAgICAgcm9vdFRhYmxlSURDb2xUeXBlLFxuICAgICAgICAgIHJvb3RUYWJsZU5hbWUsXG4gICAgICAgIH0pXG5cbiAgICAgICAgaWYgKGdyb3VwSGFzTG9jYWxpemVkRmllbGQpIGhhc0xvY2FsaXplZEZpZWxkID0gdHJ1ZVxuICAgICAgICBpZiAoZ3JvdXBIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCkgaGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQgPSB0cnVlXG4gICAgICAgIGlmIChncm91cEhhc01hbnlOdW1iZXJGaWVsZCkgaGFzTWFueU51bWJlckZpZWxkID0gdHJ1ZVxuICAgICAgICBpZiAoZ3JvdXBIYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQpIGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCA9IHRydWVcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cblxuICAgICAgY2FzZSAndGFicyc6IHtcbiAgICAgICAgY29uc3QgZGlzYWJsZU5vdE51bGxGcm9tSGVyZSA9IEJvb2xlYW4oZmllbGQuYWRtaW4/LmNvbmRpdGlvbikgfHwgZGlzYWJsZU5vdE51bGxcblxuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgaGFzTG9jYWxpemVkRmllbGQ6IHRhYkhhc0xvY2FsaXplZEZpZWxkLFxuICAgICAgICAgIGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZDogdGFiSGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkLFxuICAgICAgICAgIGhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkOiB0YWJIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCxcbiAgICAgICAgICBoYXNNYW55TnVtYmVyRmllbGQ6IHRhYkhhc01hbnlOdW1iZXJGaWVsZCxcbiAgICAgICAgfSA9IHRyYXZlcnNlRmllbGRzKHtcbiAgICAgICAgICBhZGFwdGVyLFxuICAgICAgICAgIGJ1aWxkUmVsYXRpb25zaGlwcyxcbiAgICAgICAgICBjb2x1bW5QcmVmaXgsXG4gICAgICAgICAgY29sdW1ucyxcbiAgICAgICAgICBkaXNhYmxlTm90TnVsbDogZGlzYWJsZU5vdE51bGxGcm9tSGVyZSxcbiAgICAgICAgICBkaXNhYmxlVW5pcXVlLFxuICAgICAgICAgIGZpZWxkUHJlZml4LFxuICAgICAgICAgIGZpZWxkczogZmllbGQudGFicy5tYXAoKHRhYikgPT4gKHsgLi4udGFiLCB0eXBlOiAndGFiJyB9KSksXG4gICAgICAgICAgZm9yY2VMb2NhbGl6ZWQsXG4gICAgICAgICAgaW5kZXhlcyxcbiAgICAgICAgICBsb2NhbGVzQ29sdW1ucyxcbiAgICAgICAgICBsb2NhbGVzSW5kZXhlcyxcbiAgICAgICAgICBuZXdUYWJsZU5hbWUsXG4gICAgICAgICAgcGFyZW50VGFibGVOYW1lLFxuICAgICAgICAgIHJlbGF0aW9uc1RvQnVpbGQsXG4gICAgICAgICAgcmVsYXRpb25zaGlwcyxcbiAgICAgICAgICByb290UmVsYXRpb25zVG9CdWlsZCxcbiAgICAgICAgICByb290VGFibGVJRENvbFR5cGUsXG4gICAgICAgICAgcm9vdFRhYmxlTmFtZSxcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAodGFiSGFzTG9jYWxpemVkRmllbGQpIGhhc0xvY2FsaXplZEZpZWxkID0gdHJ1ZVxuICAgICAgICBpZiAodGFiSGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQpIGhhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkID0gdHJ1ZVxuICAgICAgICBpZiAodGFiSGFzTWFueU51bWJlckZpZWxkKSBoYXNNYW55TnVtYmVyRmllbGQgPSB0cnVlXG4gICAgICAgIGlmICh0YWJIYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQpIGhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCA9IHRydWVcblxuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBjYXNlICdyb3cnOlxuICAgICAgY2FzZSAnY29sbGFwc2libGUnOiB7XG4gICAgICAgIGNvbnN0IGRpc2FibGVOb3ROdWxsRnJvbUhlcmUgPSBCb29sZWFuKGZpZWxkLmFkbWluPy5jb25kaXRpb24pIHx8IGRpc2FibGVOb3ROdWxsXG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICBoYXNMb2NhbGl6ZWRGaWVsZDogcm93SGFzTG9jYWxpemVkRmllbGQsXG4gICAgICAgICAgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkOiByb3dIYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQsXG4gICAgICAgICAgaGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQ6IHJvd0hhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkLFxuICAgICAgICAgIGhhc01hbnlOdW1iZXJGaWVsZDogcm93SGFzTWFueU51bWJlckZpZWxkLFxuICAgICAgICB9ID0gdHJhdmVyc2VGaWVsZHMoe1xuICAgICAgICAgIGFkYXB0ZXIsXG4gICAgICAgICAgYnVpbGRSZWxhdGlvbnNoaXBzLFxuICAgICAgICAgIGNvbHVtblByZWZpeCxcbiAgICAgICAgICBjb2x1bW5zLFxuICAgICAgICAgIGRpc2FibGVOb3ROdWxsOiBkaXNhYmxlTm90TnVsbEZyb21IZXJlLFxuICAgICAgICAgIGRpc2FibGVVbmlxdWUsXG4gICAgICAgICAgZmllbGRQcmVmaXgsXG4gICAgICAgICAgZmllbGRzOiBmaWVsZC5maWVsZHMsXG4gICAgICAgICAgZm9yY2VMb2NhbGl6ZWQsXG4gICAgICAgICAgaW5kZXhlcyxcbiAgICAgICAgICBsb2NhbGVzQ29sdW1ucyxcbiAgICAgICAgICBsb2NhbGVzSW5kZXhlcyxcbiAgICAgICAgICBuZXdUYWJsZU5hbWU6IHBhcmVudFRhYmxlTmFtZSxcbiAgICAgICAgICBwYXJlbnRUYWJsZU5hbWUsXG4gICAgICAgICAgcmVsYXRpb25zVG9CdWlsZCxcbiAgICAgICAgICByZWxhdGlvbnNoaXBzLFxuICAgICAgICAgIHJvb3RSZWxhdGlvbnNUb0J1aWxkLFxuICAgICAgICAgIHJvb3RUYWJsZUlEQ29sVHlwZSxcbiAgICAgICAgICByb290VGFibGVOYW1lLFxuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChyb3dIYXNMb2NhbGl6ZWRGaWVsZCkgaGFzTG9jYWxpemVkRmllbGQgPSB0cnVlXG4gICAgICAgIGlmIChyb3dIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCkgaGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQgPSB0cnVlXG4gICAgICAgIGlmIChyb3dIYXNNYW55TnVtYmVyRmllbGQpIGhhc01hbnlOdW1iZXJGaWVsZCA9IHRydWVcbiAgICAgICAgaWYgKHJvd0hhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCkgaGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkID0gdHJ1ZVxuICAgICAgICBicmVha1xuICAgICAgfVxuXG4gICAgICBjYXNlICdyZWxhdGlvbnNoaXAnOlxuICAgICAgY2FzZSAndXBsb2FkJzpcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZmllbGQucmVsYXRpb25UbykpIHtcbiAgICAgICAgICBmaWVsZC5yZWxhdGlvblRvLmZvckVhY2goKHJlbGF0aW9uKSA9PiByZWxhdGlvbnNoaXBzLmFkZChyZWxhdGlvbikpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVsYXRpb25zaGlwcy5hZGQoZmllbGQucmVsYXRpb25UbylcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmaWVsZC5sb2NhbGl6ZWQgJiYgYWRhcHRlci5wYXlsb2FkLmNvbmZpZy5sb2NhbGl6YXRpb24pIHtcbiAgICAgICAgICBoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCA9IHRydWVcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVha1xuICAgIH1cblxuICAgIGNvbnN0IGNvbmRpdGlvbiA9IGZpZWxkLmFkbWluICYmIGZpZWxkLmFkbWluLmNvbmRpdGlvblxuXG4gICAgaWYgKFxuICAgICAgIWRpc2FibGVOb3ROdWxsICYmXG4gICAgICB0YXJnZXRUYWJsZVtmaWVsZE5hbWVdICYmXG4gICAgICAncmVxdWlyZWQnIGluIGZpZWxkICYmXG4gICAgICBmaWVsZC5yZXF1aXJlZCAmJlxuICAgICAgIWNvbmRpdGlvblxuICAgICkge1xuICAgICAgdGFyZ2V0VGFibGVbZmllbGROYW1lXS5ub3ROdWxsKClcbiAgICB9XG4gIH0pXG5cbiAgcmV0dXJuIHtcbiAgICBoYXNMb2NhbGl6ZWRGaWVsZCxcbiAgICBoYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQsXG4gICAgaGFzTG9jYWxpemVkUmVsYXRpb25zaGlwRmllbGQsXG4gICAgaGFzTWFueU51bWJlckZpZWxkLFxuICB9XG59XG4iXSwibmFtZXMiOlsidHJhdmVyc2VGaWVsZHMiLCJhZGFwdGVyIiwiYnVpbGRSZWxhdGlvbnNoaXBzIiwiY29sdW1uUHJlZml4IiwiY29sdW1ucyIsImRpc2FibGVOb3ROdWxsIiwiZGlzYWJsZVVuaXF1ZSIsImZpZWxkUHJlZml4IiwiZmllbGRzIiwiZm9yY2VMb2NhbGl6ZWQiLCJpbmRleGVzIiwibG9jYWxlc0NvbHVtbnMiLCJsb2NhbGVzSW5kZXhlcyIsIm5ld1RhYmxlTmFtZSIsInBhcmVudFRhYmxlTmFtZSIsInJlbGF0aW9uc1RvQnVpbGQiLCJyZWxhdGlvbnNoaXBzIiwicm9vdFJlbGF0aW9uc1RvQnVpbGQiLCJyb290VGFibGVJRENvbFR5cGUiLCJyb290VGFibGVOYW1lIiwiaGFzTG9jYWxpemVkRmllbGQiLCJoYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCIsImhhc01hbnlOdW1iZXJGaWVsZCIsImhhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCIsInBhcmVudElEQ29sVHlwZSIsImlkIiwiUGdOdW1lcmljQnVpbGRlciIsIlBnVmFyY2hhckJ1aWxkZXIiLCJmb3JFYWNoIiwiZmllbGQiLCJuYW1lIiwiY29sdW1uTmFtZSIsImZpZWxkTmFtZSIsInRhcmdldFRhYmxlIiwidGFyZ2V0SW5kZXhlcyIsImZpZWxkQWZmZWN0c0RhdGEiLCJ0b1NuYWtlQ2FzZSIsInJlcGxhY2UiLCJwYXlsb2FkIiwiY29uZmlnIiwibG9jYWxpemF0aW9uIiwibG9jYWxpemVkIiwidW5pcXVlIiwiaW5kZXgiLCJpbmNsdWRlcyIsInR5cGUiLCJoYXNNYW55IiwiY29uc3RyYWludFZhbHVlIiwiZmllbGRDb25zdHJhaW50cyIsImNyZWF0ZUluZGV4IiwidmFyY2hhciIsIkludmFsaWRDb25maWd1cmF0aW9uIiwibnVtZXJpYyIsImpzb25iIiwidGltZXN0YW1wIiwibW9kZSIsInByZWNpc2lvbiIsIndpdGhUaW1lem9uZSIsImVudW1OYW1lIiwiZW51bXMiLCJwZ0VudW0iLCJvcHRpb25zIiwibWFwIiwib3B0aW9uIiwib3B0aW9uSXNPYmplY3QiLCJ2YWx1ZSIsInNlbGVjdFRhYmxlTmFtZSIsImJhc2VDb2x1bW5zIiwib3JkZXIiLCJpbnRlZ2VyIiwibm90TnVsbCIsInBhcmVudCIsInBhcmVudElEQ29sdW1uTWFwIiwicmVmZXJlbmNlcyIsInRhYmxlcyIsIm9uRGVsZXRlIiwiYmFzZUV4dHJhQ29uZmlnIiwib3JkZXJJZHgiLCJjb2xzIiwib24iLCJwYXJlbnRJZHgiLCJsb2NhbGUiLCJlbnVtX19sb2NhbGVzIiwibG9jYWxlSWR4IiwiYnVpbGRUYWJsZSIsInRhYmxlTmFtZSIsInNldCIsInNlbGVjdFRhYmxlUmVsYXRpb25zIiwicmVsYXRpb25zIiwib25lIiwicmVzdWx0IiwiYm9vbGVhbiIsImRpc2FibGVOb3ROdWxsRnJvbUhlcmUiLCJCb29sZWFuIiwiYWRtaW4iLCJjb25kaXRpb24iLCJhcnJheVRhYmxlTmFtZSIsIl9vcmRlciIsIl9wYXJlbnRJRCIsIl9vcmRlcklkeCIsIl9wYXJlbnRJRElkeCIsIl9sb2NhbGUiLCJfbG9jYWxlSWR4Iiwic3ViUmVsYXRpb25zVG9CdWlsZCIsImlkVG9VVUlEIiwicm9vdFJlbGF0aW9uc2hpcHMiLCJhcnJheVRhYmxlUmVsYXRpb25zIiwibWFueSIsImhhc0xvY2FsZXNUYWJsZSIsIl9sb2NhbGVzIiwidmFsIiwia2V5IiwiYmxvY2tzIiwiYmxvY2siLCJibG9ja1RhYmxlTmFtZSIsInNsdWciLCJfcGF0aCIsInRleHQiLCJfcGF0aElkeCIsImJsb2NrVGFibGVSZWxhdGlvbnMiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJ2YWxpZGF0ZUV4aXN0aW5nQmxvY2tJc0lkZW50aWNhbCIsInRhYmxlIiwiZ3JvdXBIYXNMb2NhbGl6ZWRGaWVsZCIsImdyb3VwSGFzTG9jYWxpemVkTWFueU51bWJlckZpZWxkIiwiZ3JvdXBIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCIsImdyb3VwSGFzTWFueU51bWJlckZpZWxkIiwidGFiSGFzTG9jYWxpemVkRmllbGQiLCJ0YWJIYXNMb2NhbGl6ZWRNYW55TnVtYmVyRmllbGQiLCJ0YWJIYXNMb2NhbGl6ZWRSZWxhdGlvbnNoaXBGaWVsZCIsInRhYkhhc01hbnlOdW1iZXJGaWVsZCIsInRhYnMiLCJ0YWIiLCJyb3dIYXNMb2NhbGl6ZWRGaWVsZCIsInJvd0hhc0xvY2FsaXplZE1hbnlOdW1iZXJGaWVsZCIsInJvd0hhc0xvY2FsaXplZFJlbGF0aW9uc2hpcEZpZWxkIiwicm93SGFzTWFueU51bWJlckZpZWxkIiwiQXJyYXkiLCJpc0FycmF5IiwicmVsYXRpb25UbyIsInJlbGF0aW9uIiwiYWRkIiwicmVxdWlyZWQiXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQzs7OzsrQkE0RHZCQTs7O2VBQUFBOzs7NEJBMURhO3dCQWNuQjt1QkFFMEM7d0JBQ1o7b0VBQ2I7aUNBSVE7dUJBQ0w7NkJBQ0M7MEJBQ0g7bUNBQ1M7a0RBQ2U7Ozs7OztBQStCMUMsTUFBTUEsaUJBQWlCLENBQUMsRUFDN0JDLE9BQU8sRUFDUEMsa0JBQWtCLEVBQ2xCQyxZQUFZLEVBQ1pDLE9BQU8sRUFDUEMsY0FBYyxFQUNkQyxnQkFBZ0IsS0FBSyxFQUNyQkMsV0FBVyxFQUNYQyxNQUFNLEVBQ05DLGNBQWMsRUFDZEMsT0FBTyxFQUNQQyxjQUFjLEVBQ2RDLGNBQWMsRUFDZEMsWUFBWSxFQUNaQyxlQUFlLEVBQ2ZDLGdCQUFnQixFQUNoQkMsYUFBYSxFQUNiQyxvQkFBb0IsRUFDcEJDLGtCQUFrQixFQUNsQkMsYUFBYSxFQUNSO0lBQ0wsSUFBSUMsb0JBQW9CO0lBQ3hCLElBQUlDLGdDQUFnQztJQUNwQyxJQUFJQyxxQkFBd0M7SUFDNUMsSUFBSUMsOEJBQThCO0lBRWxDLElBQUlDLGtCQUFrQjtJQUN0QixJQUFJcEIsUUFBUXFCLEVBQUUsWUFBWUMsd0JBQWdCLEVBQUVGLGtCQUFrQjtJQUM5RCxJQUFJcEIsUUFBUXFCLEVBQUUsWUFBWUUsd0JBQWdCLEVBQUVILGtCQUFrQjtJQUU5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
package/dist/types.d.ts CHANGED
@@ -39,6 +39,11 @@ export type PostgresAdapter = BaseDatabaseAdapter & {
39
39
  };
40
40
  };
41
41
  tables: Record<string, GenericTable>;
42
+ /**
43
+ * An object keyed on each table, with a key value pair where the constraint name is the key, followed by the dot-notation field name
44
+ * Used for returning properly formed errors from unique fields
45
+ */
46
+ fieldConstraints: Record<string, Record<string, string>>;
42
47
  };
43
48
  export type PostgresAdapterResult = (args: {
44
49
  payload: Payload;
@@ -65,6 +70,7 @@ declare module 'payload' {
65
70
  };
66
71
  };
67
72
  tables: Record<string, GenericTable>;
73
+ fieldConstraints: Record<string, Record<string, string>>;
68
74
  }
69
75
  }
70
76
  //# sourceMappingURL=types.d.ts.map
@@ -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":"update.d.ts","sourceRoot":"","sources":["../src/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAWjD,eAAO,MAAM,SAAS,EAAE,SAkEvB,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,SAmEvB,CAAA"}
package/dist/update.js CHANGED
@@ -86,9 +86,10 @@ const updateOne = async function updateOne({ id, collection: collectionSlug, dat
86
86
  db,
87
87
  fields: collection.fields,
88
88
  operation: 'update',
89
- tableName: (0, _tosnakecase.default)(collectionSlug)
89
+ tableName: (0, _tosnakecase.default)(collectionSlug),
90
+ req
90
91
  });
91
92
  return result;
92
93
  };
93
94
 
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91cGRhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVcGRhdGVPbmUgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBDaGFpbmVkTWV0aG9kcyB9IGZyb20gJy4vZmluZC9jaGFpbk1ldGhvZHMnXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IGNoYWluTWV0aG9kcyB9IGZyb20gJy4vZmluZC9jaGFpbk1ldGhvZHMnXG5pbXBvcnQgYnVpbGRRdWVyeSBmcm9tICcuL3F1ZXJpZXMvYnVpbGRRdWVyeSdcbmltcG9ydCB7IHVwc2VydFJvdyB9IGZyb20gJy4vdXBzZXJ0Um93J1xuXG5leHBvcnQgY29uc3QgdXBkYXRlT25lOiBVcGRhdGVPbmUgPSBhc3luYyBmdW5jdGlvbiB1cGRhdGVPbmUoXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBpZCwgY29sbGVjdGlvbjogY29sbGVjdGlvblNsdWcsIGRhdGEsIGRyYWZ0LCBsb2NhbGUsIHJlcSwgd2hlcmU6IHdoZXJlQXJnIH0sXG4pIHtcbiAgY29uc3QgZGIgPSB0aGlzLnNlc3Npb25zW3JlcS50cmFuc2FjdGlvbklEXT8uZGIgfHwgdGhpcy5kcml6emxlXG4gIGNvbnN0IGNvbGxlY3Rpb24gPSB0aGlzLnBheWxvYWQuY29sbGVjdGlvbnNbY29sbGVjdGlvblNsdWddLmNvbmZpZ1xuICBjb25zdCB0YWJsZU5hbWUgPSB0b1NuYWtlQ2FzZShjb2xsZWN0aW9uU2x1ZylcbiAgY29uc3Qgd2hlcmVUb1VzZSA9IHdoZXJlQXJnIHx8IHsgaWQ6IHsgZXF1YWxzOiBpZCB9IH1cblxuICBjb25zdCB7IGpvaW5BbGlhc2VzLCBqb2lucywgc2VsZWN0RmllbGRzLCB3aGVyZSB9ID0gYXdhaXQgYnVpbGRRdWVyeSh7XG4gICAgYWRhcHRlcjogdGhpcyxcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24uZmllbGRzLFxuICAgIGxvY2FsZSxcbiAgICB0YWJsZU5hbWUsXG4gICAgd2hlcmU6IHdoZXJlVG9Vc2UsXG4gIH0pXG5cbiAgbGV0IGlkVG9VcGRhdGUgPSBpZFxuXG4gIC8vIG9ubHkgZmV0Y2ggSURzIHdoZW4gYSBzb3J0IG9yIHdoZXJlIHF1ZXJ5IGlzIHVzZWQgdGhhdCBuZWVkcyB0byBiZSBkb25lIG9uIGpvaW4gdGFibGVzLCBvdGhlcndpc2UgdGhlc2UgY2FuIGJlIGRvbmUgZGlyZWN0bHkgb24gdGhlIHRhYmxlIGluIGZpbmRNYW55XG4gIGlmIChPYmplY3Qua2V5cyhqb2lucykubGVuZ3RoID4gMCB8fCBqb2luQWxpYXNlcy5sZW5ndGggPiAwKSB7XG4gICAgY29uc3Qgc2VsZWN0RGlzdGluY3RNZXRob2RzOiBDaGFpbmVkTWV0aG9kcyA9IFtdXG5cbiAgICBpZiAod2hlcmUpIHtcbiAgICAgIHNlbGVjdERpc3RpbmN0TWV0aG9kcy5wdXNoKHsgYXJnczogW3doZXJlXSwgbWV0aG9kOiAnd2hlcmUnIH0pXG4gICAgfVxuXG4gICAgam9pbkFsaWFzZXMuZm9yRWFjaCgoeyBjb25kaXRpb24sIHRhYmxlIH0pID0+IHtcbiAgICAgIHNlbGVjdERpc3RpbmN0TWV0aG9kcy5wdXNoKHtcbiAgICAgICAgYXJnczogW3RhYmxlLCBjb25kaXRpb25dLFxuICAgICAgICBtZXRob2Q6ICdsZWZ0Sm9pbicsXG4gICAgICB9KVxuICAgIH0pXG5cbiAgICBPYmplY3QuZW50cmllcyhqb2lucykuZm9yRWFjaCgoW2pvaW5UYWJsZSwgY29uZGl0aW9uXSkgPT4ge1xuICAgICAgaWYgKGpvaW5UYWJsZSkge1xuICAgICAgICBzZWxlY3REaXN0aW5jdE1ldGhvZHMucHVzaCh7XG4gICAgICAgICAgYXJnczogW3RoaXMudGFibGVzW2pvaW5UYWJsZV0sIGNvbmRpdGlvbl0sXG4gICAgICAgICAgbWV0aG9kOiAnbGVmdEpvaW4nLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgIH0pXG5cbiAgICBzZWxlY3REaXN0aW5jdE1ldGhvZHMucHVzaCh7IGFyZ3M6IFsxXSwgbWV0aG9kOiAnbGltaXQnIH0pXG5cbiAgICBjb25zdCBzZWxlY3REaXN0aW5jdFJlc3VsdCA9IGF3YWl0IGNoYWluTWV0aG9kcyh7XG4gICAgICBtZXRob2RzOiBzZWxlY3REaXN0aW5jdE1ldGhvZHMsXG4gICAgICBxdWVyeTogZGIuc2VsZWN0RGlzdGluY3Qoc2VsZWN0RmllbGRzKS5mcm9tKHRoaXMudGFibGVzW3RhYmxlTmFtZV0pLFxuICAgIH0pXG5cbiAgICBpZiAoc2VsZWN0RGlzdGluY3RSZXN1bHQ/LlswXT8uaWQpIHtcbiAgICAgIGlkVG9VcGRhdGUgPSBzZWxlY3REaXN0aW5jdFJlc3VsdD8uWzBdPy5pZFxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHVwc2VydFJvdyh7XG4gICAgaWQ6IGlkVG9VcGRhdGUsXG4gICAgYWRhcHRlcjogdGhpcyxcbiAgICBkYXRhLFxuICAgIGRiLFxuICAgIGZpZWxkczogY29sbGVjdGlvbi5maWVsZHMsXG4gICAgb3BlcmF0aW9uOiAndXBkYXRlJyxcbiAgICB0YWJsZU5hbWU6IHRvU25ha2VDYXNlKGNvbGxlY3Rpb25TbHVnKSxcbiAgfSlcblxuICByZXR1cm4gcmVzdWx0XG59XG4iXSwibmFtZXMiOlsidXBkYXRlT25lIiwiaWQiLCJjb2xsZWN0aW9uIiwiY29sbGVjdGlvblNsdWciLCJkYXRhIiwiZHJhZnQiLCJsb2NhbGUiLCJyZXEiLCJ3aGVyZSIsIndoZXJlQXJnIiwiZGIiLCJzZXNzaW9ucyIsInRyYW5zYWN0aW9uSUQiLCJkcml6emxlIiwicGF5bG9hZCIsImNvbGxlY3Rpb25zIiwiY29uZmlnIiwidGFibGVOYW1lIiwidG9TbmFrZUNhc2UiLCJ3aGVyZVRvVXNlIiwiZXF1YWxzIiwiam9pbkFsaWFzZXMiLCJqb2lucyIsInNlbGVjdEZpZWxkcyIsImJ1aWxkUXVlcnkiLCJhZGFwdGVyIiwiZmllbGRzIiwiaWRUb1VwZGF0ZSIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJzZWxlY3REaXN0aW5jdE1ldGhvZHMiLCJwdXNoIiwiYXJncyIsIm1ldGhvZCIsImZvckVhY2giLCJjb25kaXRpb24iLCJ0YWJsZSIsImVudHJpZXMiLCJqb2luVGFibGUiLCJ0YWJsZXMiLCJzZWxlY3REaXN0aW5jdFJlc3VsdCIsImNoYWluTWV0aG9kcyIsIm1ldGhvZHMiLCJxdWVyeSIsInNlbGVjdERpc3RpbmN0IiwiZnJvbSIsInJlc3VsdCIsInVwc2VydFJvdyIsIm9wZXJhdGlvbiJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFXYUE7OztlQUFBQTs7O29FQVRXOzhCQUtLO21FQUNOOzJCQUNHOzs7Ozs7QUFFbkIsTUFBTUEsWUFBdUIsZUFBZUEsVUFFakQsRUFBRUMsRUFBRSxFQUFFQyxZQUFZQyxjQUFjLEVBQUVDLElBQUksRUFBRUMsS0FBSyxFQUFFQyxNQUFNLEVBQUVDLEdBQUcsRUFBRUMsT0FBT0MsUUFBUSxFQUFFO0lBRTdFLE1BQU1DLEtBQUssSUFBSSxDQUFDQyxRQUFRLENBQUNKLElBQUlLLGFBQWEsQ0FBQyxFQUFFRixNQUFNLElBQUksQ0FBQ0csT0FBTztJQUMvRCxNQUFNWCxhQUFhLElBQUksQ0FBQ1ksT0FBTyxDQUFDQyxXQUFXLENBQUNaLGVBQWUsQ0FBQ2EsTUFBTTtJQUNsRSxNQUFNQyxZQUFZQyxJQUFBQSxvQkFBVyxFQUFDZjtJQUM5QixNQUFNZ0IsYUFBYVYsWUFBWTtRQUFFUixJQUFJO1lBQUVtQixRQUFRbkI7UUFBRztJQUFFO0lBRXBELE1BQU0sRUFBRW9CLFdBQVcsRUFBRUMsS0FBSyxFQUFFQyxZQUFZLEVBQUVmLEtBQUssRUFBRSxHQUFHLE1BQU1nQixJQUFBQSxtQkFBVSxFQUFDO1FBQ25FQyxTQUFTLElBQUk7UUFDYkMsUUFBUXhCLFdBQVd3QixNQUFNO1FBQ3pCcEI7UUFDQVc7UUFDQVQsT0FBT1c7SUFDVDtJQUVBLElBQUlRLGFBQWExQjtJQUVqQix3SkFBd0o7SUFDeEosSUFBSTJCLE9BQU9DLElBQUksQ0FBQ1AsT0FBT1EsTUFBTSxHQUFHLEtBQUtULFlBQVlTLE1BQU0sR0FBRyxHQUFHO1FBQzNELE1BQU1DLHdCQUF3QyxFQUFFO1FBRWhELElBQUl2QixPQUFPO1lBQ1R1QixzQkFBc0JDLElBQUksQ0FBQztnQkFBRUMsTUFBTTtvQkFBQ3pCO2lCQUFNO2dCQUFFMEIsUUFBUTtZQUFRO1FBQzlEO1FBRUFiLFlBQVljLE9BQU8sQ0FBQyxDQUFDLEVBQUVDLFNBQVMsRUFBRUMsS0FBSyxFQUFFO1lBQ3ZDTixzQkFBc0JDLElBQUksQ0FBQztnQkFDekJDLE1BQU07b0JBQUNJO29CQUFPRDtpQkFBVTtnQkFDeEJGLFFBQVE7WUFDVjtRQUNGO1FBRUFOLE9BQU9VLE9BQU8sQ0FBQ2hCLE9BQU9hLE9BQU8sQ0FBQyxDQUFDLENBQUNJLFdBQVdILFVBQVU7WUFDbkQsSUFBSUcsV0FBVztnQkFDYlIsc0JBQXNCQyxJQUFJLENBQUM7b0JBQ3pCQyxNQUFNO3dCQUFDLElBQUksQ0FBQ08sTUFBTSxDQUFDRCxVQUFVO3dCQUFFSDtxQkFBVTtvQkFDekNGLFFBQVE7Z0JBQ1Y7WUFDRjtRQUNGO1FBRUFILHNCQUFzQkMsSUFBSSxDQUFDO1lBQUVDLE1BQU07Z0JBQUM7YUFBRTtZQUFFQyxRQUFRO1FBQVE7UUFFeEQsTUFBTU8sdUJBQXVCLE1BQU1DLElBQUFBLDBCQUFZLEVBQUM7WUFDOUNDLFNBQVNaO1lBQ1RhLE9BQU9sQyxHQUFHbUMsY0FBYyxDQUFDdEIsY0FBY3VCLElBQUksQ0FBQyxJQUFJLENBQUNOLE1BQU0sQ0FBQ3ZCLFVBQVU7UUFDcEU7UUFFQSxJQUFJd0Isc0JBQXNCLENBQUMsRUFBRSxFQUFFeEMsSUFBSTtZQUNqQzBCLGFBQWFjLHNCQUFzQixDQUFDLEVBQUUsRUFBRXhDO1FBQzFDO0lBQ0Y7SUFFQSxNQUFNOEMsU0FBUyxNQUFNQyxJQUFBQSxvQkFBUyxFQUFDO1FBQzdCL0MsSUFBSTBCO1FBQ0pGLFNBQVMsSUFBSTtRQUNickI7UUFDQU07UUFDQWdCLFFBQVF4QixXQUFXd0IsTUFBTTtRQUN6QnVCLFdBQVc7UUFDWGhDLFdBQVdDLElBQUFBLG9CQUFXLEVBQUNmO0lBQ3pCO0lBRUEsT0FBTzRDO0FBQ1QifQ==
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91cGRhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVcGRhdGVPbmUgfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBDaGFpbmVkTWV0aG9kcyB9IGZyb20gJy4vZmluZC9jaGFpbk1ldGhvZHMnXG5pbXBvcnQgeyBjaGFpbk1ldGhvZHMgfSBmcm9tICcuL2ZpbmQvY2hhaW5NZXRob2RzJ1xuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuaW1wb3J0IGJ1aWxkUXVlcnkgZnJvbSAnLi9xdWVyaWVzL2J1aWxkUXVlcnknXG5pbXBvcnQgeyB1cHNlcnRSb3cgfSBmcm9tICcuL3Vwc2VydFJvdydcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZU9uZTogVXBkYXRlT25lID0gYXN5bmMgZnVuY3Rpb24gdXBkYXRlT25lKFxuICB0aGlzOiBQb3N0Z3Jlc0FkYXB0ZXIsXG4gIHsgaWQsIGNvbGxlY3Rpb246IGNvbGxlY3Rpb25TbHVnLCBkYXRhLCBkcmFmdCwgbG9jYWxlLCByZXEsIHdoZXJlOiB3aGVyZUFyZyB9LFxuKSB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBjb2xsZWN0aW9uID0gdGhpcy5wYXlsb2FkLmNvbGxlY3Rpb25zW2NvbGxlY3Rpb25TbHVnXS5jb25maWdcbiAgY29uc3QgdGFibGVOYW1lID0gdG9TbmFrZUNhc2UoY29sbGVjdGlvblNsdWcpXG4gIGNvbnN0IHdoZXJlVG9Vc2UgPSB3aGVyZUFyZyB8fCB7IGlkOiB7IGVxdWFsczogaWQgfSB9XG5cbiAgY29uc3QgeyBqb2luQWxpYXNlcywgam9pbnMsIHNlbGVjdEZpZWxkcywgd2hlcmUgfSA9IGF3YWl0IGJ1aWxkUXVlcnkoe1xuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZmllbGRzOiBjb2xsZWN0aW9uLmZpZWxkcyxcbiAgICBsb2NhbGUsXG4gICAgdGFibGVOYW1lLFxuICAgIHdoZXJlOiB3aGVyZVRvVXNlLFxuICB9KVxuXG4gIGxldCBpZFRvVXBkYXRlID0gaWRcblxuICAvLyBvbmx5IGZldGNoIElEcyB3aGVuIGEgc29ydCBvciB3aGVyZSBxdWVyeSBpcyB1c2VkIHRoYXQgbmVlZHMgdG8gYmUgZG9uZSBvbiBqb2luIHRhYmxlcywgb3RoZXJ3aXNlIHRoZXNlIGNhbiBiZSBkb25lIGRpcmVjdGx5IG9uIHRoZSB0YWJsZSBpbiBmaW5kTWFueVxuICBpZiAoT2JqZWN0LmtleXMoam9pbnMpLmxlbmd0aCA+IDAgfHwgam9pbkFsaWFzZXMubGVuZ3RoID4gMCkge1xuICAgIGNvbnN0IHNlbGVjdERpc3RpbmN0TWV0aG9kczogQ2hhaW5lZE1ldGhvZHMgPSBbXVxuXG4gICAgaWYgKHdoZXJlKSB7XG4gICAgICBzZWxlY3REaXN0aW5jdE1ldGhvZHMucHVzaCh7IGFyZ3M6IFt3aGVyZV0sIG1ldGhvZDogJ3doZXJlJyB9KVxuICAgIH1cblxuICAgIGpvaW5BbGlhc2VzLmZvckVhY2goKHsgY29uZGl0aW9uLCB0YWJsZSB9KSA9PiB7XG4gICAgICBzZWxlY3REaXN0aW5jdE1ldGhvZHMucHVzaCh7XG4gICAgICAgIGFyZ3M6IFt0YWJsZSwgY29uZGl0aW9uXSxcbiAgICAgICAgbWV0aG9kOiAnbGVmdEpvaW4nLFxuICAgICAgfSlcbiAgICB9KVxuXG4gICAgT2JqZWN0LmVudHJpZXMoam9pbnMpLmZvckVhY2goKFtqb2luVGFibGUsIGNvbmRpdGlvbl0pID0+IHtcbiAgICAgIGlmIChqb2luVGFibGUpIHtcbiAgICAgICAgc2VsZWN0RGlzdGluY3RNZXRob2RzLnB1c2goe1xuICAgICAgICAgIGFyZ3M6IFt0aGlzLnRhYmxlc1tqb2luVGFibGVdLCBjb25kaXRpb25dLFxuICAgICAgICAgIG1ldGhvZDogJ2xlZnRKb2luJyxcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgc2VsZWN0RGlzdGluY3RNZXRob2RzLnB1c2goeyBhcmdzOiBbMV0sIG1ldGhvZDogJ2xpbWl0JyB9KVxuXG4gICAgY29uc3Qgc2VsZWN0RGlzdGluY3RSZXN1bHQgPSBhd2FpdCBjaGFpbk1ldGhvZHMoe1xuICAgICAgbWV0aG9kczogc2VsZWN0RGlzdGluY3RNZXRob2RzLFxuICAgICAgcXVlcnk6IGRiLnNlbGVjdERpc3RpbmN0KHNlbGVjdEZpZWxkcykuZnJvbSh0aGlzLnRhYmxlc1t0YWJsZU5hbWVdKSxcbiAgICB9KVxuXG4gICAgaWYgKHNlbGVjdERpc3RpbmN0UmVzdWx0Py5bMF0/LmlkKSB7XG4gICAgICBpZFRvVXBkYXRlID0gc2VsZWN0RGlzdGluY3RSZXN1bHQ/LlswXT8uaWRcbiAgICB9XG4gIH1cblxuICBjb25zdCByZXN1bHQgPSBhd2FpdCB1cHNlcnRSb3coe1xuICAgIGlkOiBpZFRvVXBkYXRlLFxuICAgIGFkYXB0ZXI6IHRoaXMsXG4gICAgZGF0YSxcbiAgICBkYixcbiAgICBmaWVsZHM6IGNvbGxlY3Rpb24uZmllbGRzLFxuICAgIG9wZXJhdGlvbjogJ3VwZGF0ZScsXG4gICAgdGFibGVOYW1lOiB0b1NuYWtlQ2FzZShjb2xsZWN0aW9uU2x1ZyksXG4gICAgcmVxLFxuICB9KVxuXG4gIHJldHVybiByZXN1bHRcbn1cbiJdLCJuYW1lcyI6WyJ1cGRhdGVPbmUiLCJpZCIsImNvbGxlY3Rpb24iLCJjb2xsZWN0aW9uU2x1ZyIsImRhdGEiLCJkcmFmdCIsImxvY2FsZSIsInJlcSIsIndoZXJlIiwid2hlcmVBcmciLCJkYiIsInNlc3Npb25zIiwidHJhbnNhY3Rpb25JRCIsImRyaXp6bGUiLCJwYXlsb2FkIiwiY29sbGVjdGlvbnMiLCJjb25maWciLCJ0YWJsZU5hbWUiLCJ0b1NuYWtlQ2FzZSIsIndoZXJlVG9Vc2UiLCJlcXVhbHMiLCJqb2luQWxpYXNlcyIsImpvaW5zIiwic2VsZWN0RmllbGRzIiwiYnVpbGRRdWVyeSIsImFkYXB0ZXIiLCJmaWVsZHMiLCJpZFRvVXBkYXRlIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsInNlbGVjdERpc3RpbmN0TWV0aG9kcyIsInB1c2giLCJhcmdzIiwibWV0aG9kIiwiZm9yRWFjaCIsImNvbmRpdGlvbiIsInRhYmxlIiwiZW50cmllcyIsImpvaW5UYWJsZSIsInRhYmxlcyIsInNlbGVjdERpc3RpbmN0UmVzdWx0IiwiY2hhaW5NZXRob2RzIiwibWV0aG9kcyIsInF1ZXJ5Iiwic2VsZWN0RGlzdGluY3QiLCJmcm9tIiwicmVzdWx0IiwidXBzZXJ0Um93Iiwib3BlcmF0aW9uIl0sIm1hcHBpbmdzIjoiOzs7OytCQVVhQTs7O2VBQUFBOzs7b0VBUlc7OEJBR0s7bUVBRU47MkJBQ0c7Ozs7OztBQUVuQixNQUFNQSxZQUF1QixlQUFlQSxVQUVqRCxFQUFFQyxFQUFFLEVBQUVDLFlBQVlDLGNBQWMsRUFBRUMsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLE1BQU0sRUFBRUMsR0FBRyxFQUFFQyxPQUFPQyxRQUFRLEVBQUU7SUFFN0UsTUFBTUMsS0FBSyxJQUFJLENBQUNDLFFBQVEsQ0FBQ0osSUFBSUssYUFBYSxDQUFDLEVBQUVGLE1BQU0sSUFBSSxDQUFDRyxPQUFPO0lBQy9ELE1BQU1YLGFBQWEsSUFBSSxDQUFDWSxPQUFPLENBQUNDLFdBQVcsQ0FBQ1osZUFBZSxDQUFDYSxNQUFNO0lBQ2xFLE1BQU1DLFlBQVlDLElBQUFBLG9CQUFXLEVBQUNmO0lBQzlCLE1BQU1nQixhQUFhVixZQUFZO1FBQUVSLElBQUk7WUFBRW1CLFFBQVFuQjtRQUFHO0lBQUU7SUFFcEQsTUFBTSxFQUFFb0IsV0FBVyxFQUFFQyxLQUFLLEVBQUVDLFlBQVksRUFBRWYsS0FBSyxFQUFFLEdBQUcsTUFBTWdCLElBQUFBLG1CQUFVLEVBQUM7UUFDbkVDLFNBQVMsSUFBSTtRQUNiQyxRQUFReEIsV0FBV3dCLE1BQU07UUFDekJwQjtRQUNBVztRQUNBVCxPQUFPVztJQUNUO0lBRUEsSUFBSVEsYUFBYTFCO0lBRWpCLHdKQUF3SjtJQUN4SixJQUFJMkIsT0FBT0MsSUFBSSxDQUFDUCxPQUFPUSxNQUFNLEdBQUcsS0FBS1QsWUFBWVMsTUFBTSxHQUFHLEdBQUc7UUFDM0QsTUFBTUMsd0JBQXdDLEVBQUU7UUFFaEQsSUFBSXZCLE9BQU87WUFDVHVCLHNCQUFzQkMsSUFBSSxDQUFDO2dCQUFFQyxNQUFNO29CQUFDekI7aUJBQU07Z0JBQUUwQixRQUFRO1lBQVE7UUFDOUQ7UUFFQWIsWUFBWWMsT0FBTyxDQUFDLENBQUMsRUFBRUMsU0FBUyxFQUFFQyxLQUFLLEVBQUU7WUFDdkNOLHNCQUFzQkMsSUFBSSxDQUFDO2dCQUN6QkMsTUFBTTtvQkFBQ0k7b0JBQU9EO2lCQUFVO2dCQUN4QkYsUUFBUTtZQUNWO1FBQ0Y7UUFFQU4sT0FBT1UsT0FBTyxDQUFDaEIsT0FBT2EsT0FBTyxDQUFDLENBQUMsQ0FBQ0ksV0FBV0gsVUFBVTtZQUNuRCxJQUFJRyxXQUFXO2dCQUNiUixzQkFBc0JDLElBQUksQ0FBQztvQkFDekJDLE1BQU07d0JBQUMsSUFBSSxDQUFDTyxNQUFNLENBQUNELFVBQVU7d0JBQUVIO3FCQUFVO29CQUN6Q0YsUUFBUTtnQkFDVjtZQUNGO1FBQ0Y7UUFFQUgsc0JBQXNCQyxJQUFJLENBQUM7WUFBRUMsTUFBTTtnQkFBQzthQUFFO1lBQUVDLFFBQVE7UUFBUTtRQUV4RCxNQUFNTyx1QkFBdUIsTUFBTUMsSUFBQUEsMEJBQVksRUFBQztZQUM5Q0MsU0FBU1o7WUFDVGEsT0FBT2xDLEdBQUdtQyxjQUFjLENBQUN0QixjQUFjdUIsSUFBSSxDQUFDLElBQUksQ0FBQ04sTUFBTSxDQUFDdkIsVUFBVTtRQUNwRTtRQUVBLElBQUl3QixzQkFBc0IsQ0FBQyxFQUFFLEVBQUV4QyxJQUFJO1lBQ2pDMEIsYUFBYWMsc0JBQXNCLENBQUMsRUFBRSxFQUFFeEM7UUFDMUM7SUFDRjtJQUVBLE1BQU04QyxTQUFTLE1BQU1DLElBQUFBLG9CQUFTLEVBQUM7UUFDN0IvQyxJQUFJMEI7UUFDSkYsU0FBUyxJQUFJO1FBQ2JyQjtRQUNBTTtRQUNBZ0IsUUFBUXhCLFdBQVd3QixNQUFNO1FBQ3pCdUIsV0FBVztRQUNYaEMsV0FBV0MsSUFBQUEsb0JBQVcsRUFBQ2Y7UUFDdkJJO0lBQ0Y7SUFFQSxPQUFPd0M7QUFDVCJ9
@@ -1 +1 @@
1
- {"version":3,"file":"updateGlobal.d.ts","sourceRoot":"","sources":["../src/updateGlobal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,eAAe,CAAA;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,wBAAsB,YAAY,CAAC,CAAC,SAAS,UAAU,EACrD,IAAI,EAAE,eAAe,EACrB,EAAE,IAAI,EAAE,GAA0B,EAAE,IAAI,EAAE,EAAE,gBAAgB,GAC3D,OAAO,CAAC,CAAC,CAAC,CAiBZ"}
1
+ {"version":3,"file":"updateGlobal.d.ts","sourceRoot":"","sources":["../src/updateGlobal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAkB,UAAU,EAAE,MAAM,eAAe,CAAA;AAI/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C,wBAAsB,YAAY,CAAC,CAAC,SAAS,UAAU,EACrD,IAAI,EAAE,eAAe,EACrB,EAAE,IAAI,EAAE,GAA0B,EAAE,IAAI,EAAE,EAAE,gBAAgB,GAC3D,OAAO,CAAC,CAAC,CAAC,CAkBZ"}
@@ -31,9 +31,10 @@ async function updateGlobal({ data, req = {}, slug }) {
31
31
  data,
32
32
  db,
33
33
  fields: globalConfig.fields,
34
- tableName
34
+ tableName,
35
+ req
35
36
  });
36
37
  return result;
37
38
  }
38
39
 
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91cGRhdGVHbG9iYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVcGRhdGVHbG9iYWxBcmdzIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFR5cGVXaXRoSUQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyB1cHNlcnRSb3cgfSBmcm9tICcuL3Vwc2VydFJvdydcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZUdsb2JhbDxUIGV4dGVuZHMgVHlwZVdpdGhJRD4oXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBkYXRhLCByZXEgPSB7fSBhcyBQYXlsb2FkUmVxdWVzdCwgc2x1ZyB9OiBVcGRhdGVHbG9iYWxBcmdzLFxuKTogUHJvbWlzZTxUPiB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBnbG9iYWxDb25maWcgPSB0aGlzLnBheWxvYWQuZ2xvYmFscy5jb25maWcuZmluZCgoY29uZmlnKSA9PiBjb25maWcuc2x1ZyA9PT0gc2x1ZylcbiAgY29uc3QgdGFibGVOYW1lID0gdG9TbmFrZUNhc2Uoc2x1ZylcblxuICBjb25zdCBleGlzdGluZ0dsb2JhbCA9IGF3YWl0IGRiLnF1ZXJ5W3RhYmxlTmFtZV0uZmluZEZpcnN0KHt9KVxuXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHVwc2VydFJvdzxUPih7XG4gICAgLi4uKGV4aXN0aW5nR2xvYmFsID8geyBpZDogZXhpc3RpbmdHbG9iYWwuaWQsIG9wZXJhdGlvbjogJ3VwZGF0ZScgfSA6IHsgb3BlcmF0aW9uOiAnY3JlYXRlJyB9KSxcbiAgICBhZGFwdGVyOiB0aGlzLFxuICAgIGRhdGEsXG4gICAgZGIsXG4gICAgZmllbGRzOiBnbG9iYWxDb25maWcuZmllbGRzLFxuICAgIHRhYmxlTmFtZSxcbiAgfSlcblxuICByZXR1cm4gcmVzdWx0XG59XG4iXSwibmFtZXMiOlsidXBkYXRlR2xvYmFsIiwiZGF0YSIsInJlcSIsInNsdWciLCJkYiIsInNlc3Npb25zIiwidHJhbnNhY3Rpb25JRCIsImRyaXp6bGUiLCJnbG9iYWxDb25maWciLCJwYXlsb2FkIiwiZ2xvYmFscyIsImNvbmZpZyIsImZpbmQiLCJ0YWJsZU5hbWUiLCJ0b1NuYWtlQ2FzZSIsImV4aXN0aW5nR2xvYmFsIiwicXVlcnkiLCJmaW5kRmlyc3QiLCJyZXN1bHQiLCJ1cHNlcnRSb3ciLCJpZCIsIm9wZXJhdGlvbiIsImFkYXB0ZXIiLCJmaWVsZHMiXSwibWFwcGluZ3MiOiI7Ozs7K0JBU3NCQTs7O2VBQUFBOzs7b0VBTkU7MkJBSUU7Ozs7OztBQUVuQixlQUFlQSxhQUVwQixFQUFFQyxJQUFJLEVBQUVDLE1BQU0sQ0FBQyxDQUFtQixFQUFFQyxJQUFJLEVBQW9CO0lBRTVELE1BQU1DLEtBQUssSUFBSSxDQUFDQyxRQUFRLENBQUNILElBQUlJLGFBQWEsQ0FBQyxFQUFFRixNQUFNLElBQUksQ0FBQ0csT0FBTztJQUMvRCxNQUFNQyxlQUFlLElBQUksQ0FBQ0MsT0FBTyxDQUFDQyxPQUFPLENBQUNDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDLENBQUNELFNBQVdBLE9BQU9SLElBQUksS0FBS0E7SUFDbEYsTUFBTVUsWUFBWUMsSUFBQUEsb0JBQVcsRUFBQ1g7SUFFOUIsTUFBTVksaUJBQWlCLE1BQU1YLEdBQUdZLEtBQUssQ0FBQ0gsVUFBVSxDQUFDSSxTQUFTLENBQUMsQ0FBQztJQUU1RCxNQUFNQyxTQUFTLE1BQU1DLElBQUFBLG9CQUFTLEVBQUk7UUFDaEMsR0FBSUosaUJBQWlCO1lBQUVLLElBQUlMLGVBQWVLLEVBQUU7WUFBRUMsV0FBVztRQUFTLElBQUk7WUFBRUEsV0FBVztRQUFTLENBQUM7UUFDN0ZDLFNBQVMsSUFBSTtRQUNickI7UUFDQUc7UUFDQW1CLFFBQVFmLGFBQWFlLE1BQU07UUFDM0JWO0lBQ0Y7SUFFQSxPQUFPSztBQUNUIn0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91cGRhdGVHbG9iYWwudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVcGRhdGVHbG9iYWxBcmdzIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QsIFR5cGVXaXRoSUQgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQgdG9TbmFrZUNhc2UgZnJvbSAndG8tc25ha2UtY2FzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyB1cHNlcnRSb3cgfSBmcm9tICcuL3Vwc2VydFJvdydcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZUdsb2JhbDxUIGV4dGVuZHMgVHlwZVdpdGhJRD4oXG4gIHRoaXM6IFBvc3RncmVzQWRhcHRlcixcbiAgeyBkYXRhLCByZXEgPSB7fSBhcyBQYXlsb2FkUmVxdWVzdCwgc2x1ZyB9OiBVcGRhdGVHbG9iYWxBcmdzLFxuKTogUHJvbWlzZTxUPiB7XG4gIGNvbnN0IGRiID0gdGhpcy5zZXNzaW9uc1tyZXEudHJhbnNhY3Rpb25JRF0/LmRiIHx8IHRoaXMuZHJpenpsZVxuICBjb25zdCBnbG9iYWxDb25maWcgPSB0aGlzLnBheWxvYWQuZ2xvYmFscy5jb25maWcuZmluZCgoY29uZmlnKSA9PiBjb25maWcuc2x1ZyA9PT0gc2x1ZylcbiAgY29uc3QgdGFibGVOYW1lID0gdG9TbmFrZUNhc2Uoc2x1ZylcblxuICBjb25zdCBleGlzdGluZ0dsb2JhbCA9IGF3YWl0IGRiLnF1ZXJ5W3RhYmxlTmFtZV0uZmluZEZpcnN0KHt9KVxuXG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHVwc2VydFJvdzxUPih7XG4gICAgLi4uKGV4aXN0aW5nR2xvYmFsID8geyBpZDogZXhpc3RpbmdHbG9iYWwuaWQsIG9wZXJhdGlvbjogJ3VwZGF0ZScgfSA6IHsgb3BlcmF0aW9uOiAnY3JlYXRlJyB9KSxcbiAgICBhZGFwdGVyOiB0aGlzLFxuICAgIGRhdGEsXG4gICAgZGIsXG4gICAgZmllbGRzOiBnbG9iYWxDb25maWcuZmllbGRzLFxuICAgIHRhYmxlTmFtZSxcbiAgICByZXEsXG4gIH0pXG5cbiAgcmV0dXJuIHJlc3VsdFxufVxuIl0sIm5hbWVzIjpbInVwZGF0ZUdsb2JhbCIsImRhdGEiLCJyZXEiLCJzbHVnIiwiZGIiLCJzZXNzaW9ucyIsInRyYW5zYWN0aW9uSUQiLCJkcml6emxlIiwiZ2xvYmFsQ29uZmlnIiwicGF5bG9hZCIsImdsb2JhbHMiLCJjb25maWciLCJmaW5kIiwidGFibGVOYW1lIiwidG9TbmFrZUNhc2UiLCJleGlzdGluZ0dsb2JhbCIsInF1ZXJ5IiwiZmluZEZpcnN0IiwicmVzdWx0IiwidXBzZXJ0Um93IiwiaWQiLCJvcGVyYXRpb24iLCJhZGFwdGVyIiwiZmllbGRzIl0sIm1hcHBpbmdzIjoiOzs7OytCQVNzQkE7OztlQUFBQTs7O29FQU5FOzJCQUlFOzs7Ozs7QUFFbkIsZUFBZUEsYUFFcEIsRUFBRUMsSUFBSSxFQUFFQyxNQUFNLENBQUMsQ0FBbUIsRUFBRUMsSUFBSSxFQUFvQjtJQUU1RCxNQUFNQyxLQUFLLElBQUksQ0FBQ0MsUUFBUSxDQUFDSCxJQUFJSSxhQUFhLENBQUMsRUFBRUYsTUFBTSxJQUFJLENBQUNHLE9BQU87SUFDL0QsTUFBTUMsZUFBZSxJQUFJLENBQUNDLE9BQU8sQ0FBQ0MsT0FBTyxDQUFDQyxNQUFNLENBQUNDLElBQUksQ0FBQyxDQUFDRCxTQUFXQSxPQUFPUixJQUFJLEtBQUtBO0lBQ2xGLE1BQU1VLFlBQVlDLElBQUFBLG9CQUFXLEVBQUNYO0lBRTlCLE1BQU1ZLGlCQUFpQixNQUFNWCxHQUFHWSxLQUFLLENBQUNILFVBQVUsQ0FBQ0ksU0FBUyxDQUFDLENBQUM7SUFFNUQsTUFBTUMsU0FBUyxNQUFNQyxJQUFBQSxvQkFBUyxFQUFJO1FBQ2hDLEdBQUlKLGlCQUFpQjtZQUFFSyxJQUFJTCxlQUFlSyxFQUFFO1lBQUVDLFdBQVc7UUFBUyxJQUFJO1lBQUVBLFdBQVc7UUFBUyxDQUFDO1FBQzdGQyxTQUFTLElBQUk7UUFDYnJCO1FBQ0FHO1FBQ0FtQixRQUFRZixhQUFhZSxNQUFNO1FBQzNCVjtRQUNBWDtJQUNGO0lBRUEsT0FBT2dCO0FBQ1QifQ==
@@ -1,5 +1,4 @@
1
- import type { TypeWithVersion } from 'payload/database';
2
- import type { UpdateGlobalVersionArgs } from 'payload/database';
1
+ import type { TypeWithVersion, UpdateGlobalVersionArgs } from 'payload/database';
3
2
  import type { TypeWithID } from 'payload/types';
4
3
  import type { PostgresAdapter } from './types';
5
4
  export declare function updateGlobalVersion<T extends TypeWithID>(this: PostgresAdapter, { id, global, locale, req, versionData, where: whereArg, }: UpdateGlobalVersionArgs<T>): Promise<TypeWithVersion<T>>;
@@ -1 +1 @@
1
- {"version":3,"file":"updateGlobalVersion.d.ts","sourceRoot":"","sources":["../src/updateGlobalVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,KAAK,EAAyC,UAAU,EAAE,MAAM,eAAe,CAAA;AAKtF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAK9C,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,UAAU,EAC5D,IAAI,EAAE,eAAe,EACrB,EACE,EAAE,EACF,MAAM,EACN,MAAM,EACN,GAA0B,EAC1B,WAAW,EACX,KAAK,EAAE,QAAQ,GAChB,EAAE,uBAAuB,CAAC,CAAC,CAAC,+BA8B9B"}
1
+ {"version":3,"file":"updateGlobalVersion.d.ts","sourceRoot":"","sources":["../src/updateGlobalVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAChF,OAAO,KAAK,EAAyC,UAAU,EAAE,MAAM,eAAe,CAAA;AAKtF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAK9C,wBAAsB,mBAAmB,CAAC,CAAC,SAAS,UAAU,EAC5D,IAAI,EAAE,eAAe,EACrB,EACE,EAAE,EACF,MAAM,EACN,MAAM,EACN,GAA0B,EAC1B,WAAW,EACX,KAAK,EAAE,QAAQ,GAChB,EAAE,uBAAuB,CAAC,CAAC,CAAC,+BA+B9B"}