murmuration 2.0.25 → 2.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.swcrc ADDED
@@ -0,0 +1,5 @@
1
+ {
2
+ "module": {
3
+ "type": "commonjs"
4
+ }
5
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "EMPTY_STRING", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return EMPTY_STRING;
9
+ }
10
+ });
11
+ var EMPTY_STRING = "";
12
+
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBFTVBUWV9TVFJJTkcgPSBcIlwiO1xuIl0sIm5hbWVzIjpbIkVNUFRZX1NUUklORyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBRWFBOzs7ZUFBQUE7OztBQUFOLElBQU1BLGVBQWUifQ==
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get execute () {
13
+ return execute;
14
+ },
15
+ get query () {
16
+ return query;
17
+ }
18
+ });
19
+ function query(connection, sql) {
20
+ for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
21
+ remainingArguments[_key - 2] = arguments[_key];
22
+ }
23
+ var parameters = remainingArguments, callback = parameters.pop(); ///
24
+ try {
25
+ connection.query(sql, parameters, function(error, rows) {
26
+ return callback(error, rows);
27
+ });
28
+ } catch (error) {
29
+ var log = connection.getLog();
30
+ log.error(error);
31
+ var rows = null; ///
32
+ callback(error, rows);
33
+ }
34
+ }
35
+ function execute(connection, sql) {
36
+ for(var _len = arguments.length, remainingArguments = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++){
37
+ remainingArguments[_key - 2] = arguments[_key];
38
+ }
39
+ var parameters = remainingArguments, callback = parameters.pop(); ///
40
+ try {
41
+ connection.query(sql, parameters, function(error, rows) {
42
+ return callback(error);
43
+ });
44
+ } catch (error) {
45
+ var log = connection.getLog();
46
+ log.error(error);
47
+ callback(error);
48
+ }
49
+ }
50
+
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRhYmFzZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHF1ZXJ5KGNvbm5lY3Rpb24sIHNxbCwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGNvbnN0IHBhcmFtZXRlcnMgPSByZW1haW5pbmdBcmd1bWVudHMsXG4gICAgICAgIGNhbGxiYWNrID0gcGFyYW1ldGVycy5wb3AoKTsgIC8vL1xuXG4gIHRyeSB7XG4gICAgY29ubmVjdGlvbi5xdWVyeShzcWwsIHBhcmFtZXRlcnMsIChlcnJvciwgcm93cykgPT4gY2FsbGJhY2soZXJyb3IsIHJvd3MpKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zdCBsb2cgPSBjb25uZWN0aW9uLmdldExvZygpO1xuXG4gICAgbG9nLmVycm9yKGVycm9yKTtcblxuICAgIGNvbnN0IHJvd3MgPSBudWxsOyAvLy9cblxuICAgIGNhbGxiYWNrKGVycm9yLCByb3dzKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZXhlY3V0ZShjb25uZWN0aW9uLCBzcWwsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICBjb25zdCBwYXJhbWV0ZXJzID0gcmVtYWluaW5nQXJndW1lbnRzLFxuICAgICAgICBjYWxsYmFjayA9IHBhcmFtZXRlcnMucG9wKCk7ICAvLy9cblxuICB0cnkge1xuICAgIGNvbm5lY3Rpb24ucXVlcnkoc3FsLCBwYXJhbWV0ZXJzLCAoZXJyb3IsIHJvd3MpID0+IGNhbGxiYWNrKGVycm9yKSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc3QgbG9nID0gY29ubmVjdGlvbi5nZXRMb2coKTtcblxuICAgIGxvZy5lcnJvcihlcnJvcik7XG5cbiAgICBjYWxsYmFjayhlcnJvcik7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJleGVjdXRlIiwicXVlcnkiLCJjb25uZWN0aW9uIiwic3FsIiwicmVtYWluaW5nQXJndW1lbnRzIiwicGFyYW1ldGVycyIsImNhbGxiYWNrIiwicG9wIiwiZXJyb3IiLCJyb3dzIiwibG9nIiwiZ2V0TG9nIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7UUFtQmdCQTtlQUFBQTs7UUFqQkFDO2VBQUFBOzs7QUFBVCxTQUFTQSxNQUFNQyxVQUFVLEVBQUVDLEdBQUc7SUFBRSxJQUFBLElBQUEsT0FBQSxVQUFBLFFBQUEsQUFBR0MscUJBQUgsVUFBQSxPQUFBLElBQUEsT0FBQSxRQUFBLE9BQUEsR0FBQSxPQUFBLE1BQUE7UUFBR0EsbUJBQUgsT0FBQSxLQUFBLFNBQUEsQ0FBQSxLQUFxQjs7SUFDMUQsSUFBTUMsYUFBYUQsb0JBQ2JFLFdBQVdELFdBQVdFLEdBQUcsSUFBSyxHQUFHO0lBRXZDLElBQUk7UUFDRkwsV0FBV0QsS0FBSyxDQUFDRSxLQUFLRSxZQUFZLFNBQUNHLE9BQU9DO21CQUFTSCxTQUFTRSxPQUFPQzs7SUFDckUsRUFBRSxPQUFPRCxPQUFPO1FBQ2QsSUFBTUUsTUFBTVIsV0FBV1MsTUFBTTtRQUU3QkQsSUFBSUYsS0FBSyxDQUFDQTtRQUVWLElBQU1DLE9BQU8sTUFBTSxHQUFHO1FBRXRCSCxTQUFTRSxPQUFPQztJQUNsQjtBQUNGO0FBRU8sU0FBU1QsUUFBUUUsVUFBVSxFQUFFQyxHQUFHO0lBQUUsSUFBQSxJQUFBLE9BQUEsVUFBQSxRQUFBLEFBQUdDLHFCQUFILFVBQUEsT0FBQSxJQUFBLE9BQUEsUUFBQSxPQUFBLEdBQUEsT0FBQSxNQUFBO1FBQUdBLG1CQUFILE9BQUEsS0FBQSxTQUFBLENBQUEsS0FBcUI7O0lBQzVELElBQU1DLGFBQWFELG9CQUNiRSxXQUFXRCxXQUFXRSxHQUFHLElBQUssR0FBRztJQUV2QyxJQUFJO1FBQ0ZMLFdBQVdELEtBQUssQ0FBQ0UsS0FBS0UsWUFBWSxTQUFDRyxPQUFPQzttQkFBU0gsU0FBU0U7O0lBQzlELEVBQUUsT0FBT0EsT0FBTztRQUNkLElBQU1FLE1BQU1SLFdBQVdTLE1BQU07UUFFN0JELElBQUlGLEtBQUssQ0FBQ0E7UUFFVkYsU0FBU0U7SUFDWDtBQUNGIn0=
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ function defaultLog(message) {}
12
+ Object.assign(defaultLog, {
13
+ trace: function() {},
14
+ debug: function() {},
15
+ info: function() {},
16
+ warning: function() {},
17
+ error: function() {},
18
+ fatal: function() {}
19
+ });
20
+ var _default = defaultLog;
21
+
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWZhdWx0TG9nLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5mdW5jdGlvbiBkZWZhdWx0TG9nKG1lc3NhZ2UpIHt9XG5cbk9iamVjdC5hc3NpZ24oZGVmYXVsdExvZywge1xuICB0cmFjZTogKCkgPT4ge30sXG4gIGRlYnVnOiAoKSA9PiB7fSxcbiAgaW5mbzogKCkgPT4ge30sXG4gIHdhcm5pbmc6ICgpID0+IHt9LFxuICBlcnJvcjogKCkgPT4ge30sXG4gIGZhdGFsOiAoKSA9PiB7fSxcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZhdWx0TG9nO1xuIl0sIm5hbWVzIjpbImRlZmF1bHRMb2ciLCJtZXNzYWdlIiwiT2JqZWN0IiwiYXNzaWduIiwidHJhY2UiLCJkZWJ1ZyIsImluZm8iLCJ3YXJuaW5nIiwiZXJyb3IiLCJmYXRhbCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBYUE7OztlQUFBOzs7QUFYQSxTQUFTQSxXQUFXQyxPQUFPLEdBQUc7QUFFOUJDLE9BQU9DLE1BQU0sQ0FBQ0gsWUFBWTtJQUN4QkksT0FBTyxZQUFPO0lBQ2RDLE9BQU8sWUFBTztJQUNkQyxNQUFNLFlBQU87SUFDYkMsU0FBUyxZQUFPO0lBQ2hCQyxPQUFPLFlBQU87SUFDZEMsT0FBTyxZQUFPO0FBQ2hCO0lBRUEsV0FBZVQifQ==
package/lib/index.js ADDED
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get CustomMigration () {
13
+ return _customMigration.default;
14
+ },
15
+ get Statement () {
16
+ return _statement.default;
17
+ },
18
+ get caseUtilities () {
19
+ return _case.default;
20
+ },
21
+ get database () {
22
+ return _database.default;
23
+ },
24
+ get defaultLog () {
25
+ return _defaultLog.default;
26
+ },
27
+ get migrate () {
28
+ return _migrate.default;
29
+ },
30
+ get transaction () {
31
+ return _transaction.default;
32
+ }
33
+ });
34
+ var _migrate = /*#__PURE__*/ _interop_require_default(require("./migrate"));
35
+ var _database = /*#__PURE__*/ _interop_require_default(require("./database"));
36
+ var _statement = /*#__PURE__*/ _interop_require_default(require("./statement"));
37
+ var _defaultLog = /*#__PURE__*/ _interop_require_default(require("./defaultLog"));
38
+ var _transaction = /*#__PURE__*/ _interop_require_default(require("./transaction"));
39
+ var _case = /*#__PURE__*/ _interop_require_default(require("./utilities/case"));
40
+ var _customMigration = /*#__PURE__*/ _interop_require_default(require("./migrate/customMigration"));
41
+ function _interop_require_default(obj) {
42
+ return obj && obj.__esModule ? obj : {
43
+ default: obj
44
+ };
45
+ }
46
+
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBtaWdyYXRlIH0gZnJvbSBcIi4vbWlncmF0ZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkYXRhYmFzZSB9IGZyb20gXCIuL2RhdGFiYXNlXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFN0YXRlbWVudCB9IGZyb20gXCIuL3N0YXRlbWVudFwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkZWZhdWx0TG9nIH0gZnJvbSBcIi4vZGVmYXVsdExvZ1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyB0cmFuc2FjdGlvbiB9IGZyb20gXCIuL3RyYW5zYWN0aW9uXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGNhc2VVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvY2FzZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBDdXN0b21NaWdyYXRpb24gfSBmcm9tIFwiLi9taWdyYXRlL2N1c3RvbU1pZ3JhdGlvblwiO1xuIl0sIm5hbWVzIjpbIkN1c3RvbU1pZ3JhdGlvbiIsIlN0YXRlbWVudCIsImNhc2VVdGlsaXRpZXMiLCJkYXRhYmFzZSIsImRlZmF1bHRMb2ciLCJtaWdyYXRlIiwidHJhbnNhY3Rpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQVFvQkE7ZUFBQUEsd0JBQWU7O1FBSmZDO2VBQUFBLGtCQUFTOztRQUdUQztlQUFBQSxhQUFhOztRQUpiQztlQUFBQSxpQkFBUTs7UUFFUkM7ZUFBQUEsbUJBQVU7O1FBSFZDO2VBQUFBLGdCQUFPOztRQUlQQztlQUFBQSxvQkFBVzs7OzhEQUpJOytEQUNDO2dFQUNDO2lFQUNDO2tFQUNDOzJEQUNFO3NFQUNFIn0=
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return CustomMigration;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ function _class_call_check(instance, Constructor) {
13
+ if (!(instance instanceof Constructor)) {
14
+ throw new TypeError("Cannot call a class as a function");
15
+ }
16
+ }
17
+ function _defineProperties(target, props) {
18
+ for(var i = 0; i < props.length; i++){
19
+ var descriptor = props[i];
20
+ descriptor.enumerable = descriptor.enumerable || false;
21
+ descriptor.configurable = true;
22
+ if ("value" in descriptor) descriptor.writable = true;
23
+ Object.defineProperty(target, descriptor.key, descriptor);
24
+ }
25
+ }
26
+ function _create_class(Constructor, protoProps, staticProps) {
27
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
28
+ if (staticProps) _defineProperties(Constructor, staticProps);
29
+ return Constructor;
30
+ }
31
+ var second = _necessary.arrayUtilities.second;
32
+ var CustomMigration = /*#__PURE__*/ function() {
33
+ function CustomMigration(filePath) {
34
+ _class_call_check(this, CustomMigration);
35
+ this.filePath = filePath;
36
+ }
37
+ _create_class(CustomMigration, [
38
+ {
39
+ key: "getFilePath",
40
+ value: function getFilePath() {
41
+ return this.filePath;
42
+ }
43
+ },
44
+ {
45
+ key: "getVersion",
46
+ value: function getVersion() {
47
+ var matches = this.filePath.match(/(\d+)-.+$/), secondMatch = second(matches), version = secondMatch; ///
48
+ return version;
49
+ }
50
+ },
51
+ {
52
+ key: "apply",
53
+ value: function apply(connection, callback) {
54
+ var log = connection.getLog(), version = this.getVersion();
55
+ log.info("Applying custom migration version ".concat(version, "..."));
56
+ var error = true;
57
+ callback(error);
58
+ }
59
+ }
60
+ ], [
61
+ {
62
+ key: "fromFilePath",
63
+ value: function fromFilePath(filePath) {
64
+ var customMigration = new CustomMigration(filePath);
65
+ return customMigration;
66
+ }
67
+ }
68
+ ]);
69
+ return CustomMigration;
70
+ }();
71
+
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWdyYXRlL2N1c3RvbU1pZ3JhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmNvbnN0IHsgc2Vjb25kIH0gPSBhcnJheVV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgIGNsYXNzIEN1c3RvbU1pZ3JhdGlvbiB7XG4gIGNvbnN0cnVjdG9yKGZpbGVQYXRoKSB7XG4gICAgdGhpcy5maWxlUGF0aCA9IGZpbGVQYXRoO1xuICB9XG5cbiAgZ2V0RmlsZVBhdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsZVBhdGg7XG4gIH1cblxuICBnZXRWZXJzaW9uKCkge1xuICAgIGNvbnN0IG1hdGNoZXMgPSB0aGlzLmZpbGVQYXRoLm1hdGNoKC8oXFxkKyktLiskLyksXG4gICAgICAgICAgc2Vjb25kTWF0Y2ggPSBzZWNvbmQobWF0Y2hlcyksXG4gICAgICAgICAgdmVyc2lvbiA9IHNlY29uZE1hdGNoOyAgLy8vXG5cbiAgICByZXR1cm4gdmVyc2lvbjtcbiAgfVxuICBcbiAgYXBwbHkoY29ubmVjdGlvbiwgY2FsbGJhY2spIHtcbiAgICBjb25zdCBsb2cgPSBjb25uZWN0aW9uLmdldExvZygpLFxuICAgICAgICAgIHZlcnNpb24gPSB0aGlzLmdldFZlcnNpb24oKTtcblxuICAgIGxvZy5pbmZvKGBBcHBseWluZyBjdXN0b20gbWlncmF0aW9uIHZlcnNpb24gJHt2ZXJzaW9ufS4uLmApO1xuXG4gICAgY29uc3QgZXJyb3IgPSB0cnVlO1xuXG4gICAgY2FsbGJhY2soZXJyb3IpO1xuICB9XG4gIFxuICBzdGF0aWMgZnJvbUZpbGVQYXRoKGZpbGVQYXRoKSB7XG4gICAgY29uc3QgY3VzdG9tTWlncmF0aW9uID0gbmV3IEN1c3RvbU1pZ3JhdGlvbihmaWxlUGF0aCk7XG4gICAgXG4gICAgcmV0dXJuIGN1c3RvbU1pZ3JhdGlvbjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkN1c3RvbU1pZ3JhdGlvbiIsInNlY29uZCIsImFycmF5VXRpbGl0aWVzIiwiZmlsZVBhdGgiLCJnZXRGaWxlUGF0aCIsImdldFZlcnNpb24iLCJtYXRjaGVzIiwibWF0Y2giLCJzZWNvbmRNYXRjaCIsInZlcnNpb24iLCJhcHBseSIsImNvbm5lY3Rpb24iLCJjYWxsYmFjayIsImxvZyIsImdldExvZyIsImluZm8iLCJlcnJvciIsImZyb21GaWxlUGF0aCIsImN1c3RvbU1pZ3JhdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFNc0JBOzs7eUJBSlM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRS9CLElBQU0sQUFBRUMsU0FBV0MseUJBQWMsQ0FBekJEO0FBRVEsSUFBQSxBQUFNRCxnQ0FBTjthQUFNQSxnQkFDUkcsUUFBUTtnQ0FEQUg7UUFFbEIsSUFBSSxDQUFDRyxRQUFRLEdBQUdBOztrQkFGRUg7O1lBS3BCSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNELFFBQVE7WUFDdEI7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsVUFBVSxJQUFJLENBQUNILFFBQVEsQ0FBQ0ksS0FBSyxDQUFDLGNBQzlCQyxjQUFjUCxPQUFPSyxVQUNyQkcsVUFBVUQsYUFBYyxHQUFHO2dCQUVqQyxPQUFPQztZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1DLFVBQVUsRUFBRUMsUUFBUTtnQkFDeEIsSUFBTUMsTUFBTUYsV0FBV0csTUFBTSxJQUN2QkwsVUFBVSxJQUFJLENBQUNKLFVBQVU7Z0JBRS9CUSxJQUFJRSxJQUFJLENBQUMsQUFBQyxxQ0FBNEMsT0FBUk4sU0FBUTtnQkFFdEQsSUFBTU8sUUFBUTtnQkFFZEosU0FBU0k7WUFDWDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxhQUFhZCxRQUFRO2dCQUMxQixJQUFNZSxrQkFBa0IsSUE3Qk5sQixnQkE2QjBCRztnQkFFNUMsT0FBT2U7WUFDVDs7O1dBaENvQmxCIn0=
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Migration;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var _database = require("../database");
13
+ function _class_call_check(instance, Constructor) {
14
+ if (!(instance instanceof Constructor)) {
15
+ throw new TypeError("Cannot call a class as a function");
16
+ }
17
+ }
18
+ function _defineProperties(target, props) {
19
+ for(var i = 0; i < props.length; i++){
20
+ var descriptor = props[i];
21
+ descriptor.enumerable = descriptor.enumerable || false;
22
+ descriptor.configurable = true;
23
+ if ("value" in descriptor) descriptor.writable = true;
24
+ Object.defineProperty(target, descriptor.key, descriptor);
25
+ }
26
+ }
27
+ function _create_class(Constructor, protoProps, staticProps) {
28
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29
+ if (staticProps) _defineProperties(Constructor, staticProps);
30
+ return Constructor;
31
+ }
32
+ var second = _necessary.arrayUtilities.second, readFile = _necessary.fileSystemUtilities.readFile;
33
+ var Migration = /*#__PURE__*/ function() {
34
+ function Migration(filePath) {
35
+ _class_call_check(this, Migration);
36
+ this.filePath = filePath;
37
+ }
38
+ _create_class(Migration, [
39
+ {
40
+ key: "getSQL",
41
+ value: function getSQL() {
42
+ var fileContent = readFile(this.filePath), sql = fileContent; ///
43
+ return sql;
44
+ }
45
+ },
46
+ {
47
+ key: "getVersion",
48
+ value: function getVersion() {
49
+ var matches = this.filePath.match(/(\d+)-.+$/), secondMatch = second(matches), version = secondMatch; ///
50
+ return version;
51
+ }
52
+ },
53
+ {
54
+ key: "apply",
55
+ value: function apply(connection, callback) {
56
+ var log = connection.getLog(), sql = this.getSQL(), version = this.getVersion();
57
+ log.info("Applying migration version ".concat(version, "..."));
58
+ (0, _database.execute)(connection, sql, function(error) {
59
+ error ? log.error("...failed!") : log.debug("...success!");
60
+ callback(error);
61
+ });
62
+ }
63
+ }
64
+ ], [
65
+ {
66
+ key: "fromFilePath",
67
+ value: function fromFilePath(filePath) {
68
+ var migration = new Migration(filePath);
69
+ return migration;
70
+ }
71
+ }
72
+ ]);
73
+ return Migration;
74
+ }();
75
+
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWdyYXRlL21pZ3JhdGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMsIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCB7IGV4ZWN1dGUgfSBmcm9tIFwiLi4vZGF0YWJhc2VcIjtcblxuY29uc3QgeyBzZWNvbmQgfSA9IGFycmF5VXRpbGl0aWVzLFxuICAgICAgeyByZWFkRmlsZSB9ID0gZmlsZVN5c3RlbVV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWlncmF0aW9uIHtcbiAgY29uc3RydWN0b3IoZmlsZVBhdGgpIHtcbiAgICB0aGlzLmZpbGVQYXRoID0gZmlsZVBhdGg7XG4gIH1cblxuICBnZXRTUUwoKSB7XG4gICAgY29uc3QgZmlsZUNvbnRlbnQgPSByZWFkRmlsZSh0aGlzLmZpbGVQYXRoKSxcbiAgICAgICAgICBzcWwgPSBmaWxlQ29udGVudDsgIC8vL1xuXG4gICAgcmV0dXJuIHNxbDtcbiAgfVxuICBcbiAgZ2V0VmVyc2lvbigpIHtcbiAgICBjb25zdCBtYXRjaGVzID0gdGhpcy5maWxlUGF0aC5tYXRjaCgvKFxcZCspLS4rJC8pLFxuICAgICAgICAgIHNlY29uZE1hdGNoID0gc2Vjb25kKG1hdGNoZXMpLFxuICAgICAgICAgIHZlcnNpb24gPSBzZWNvbmRNYXRjaDsgIC8vL1xuXG4gICAgcmV0dXJuIHZlcnNpb247XG4gIH1cbiAgXG4gIGFwcGx5KGNvbm5lY3Rpb24sIGNhbGxiYWNrKSB7XG4gICAgY29uc3QgbG9nID0gY29ubmVjdGlvbi5nZXRMb2coKSxcbiAgICAgICAgICBzcWwgPSB0aGlzLmdldFNRTCgpLFxuICAgICAgICAgIHZlcnNpb24gPSB0aGlzLmdldFZlcnNpb24oKTtcblxuICAgIGxvZy5pbmZvKGBBcHBseWluZyBtaWdyYXRpb24gdmVyc2lvbiAke3ZlcnNpb259Li4uYCk7XG5cbiAgICBleGVjdXRlKGNvbm5lY3Rpb24sIHNxbCwgKGVycm9yKSA9PiB7XG4gICAgICBlcnJvciA/XG4gICAgICAgIGxvZy5lcnJvcihcIi4uLmZhaWxlZCFcIikgOlxuICAgICAgICAgIGxvZy5kZWJ1ZyhcIi4uLnN1Y2Nlc3MhXCIpO1xuXG4gICAgICBjYWxsYmFjayhlcnJvcik7XG4gICAgfSk7XG4gIH1cbiAgXG4gIHN0YXRpYyBmcm9tRmlsZVBhdGgoZmlsZVBhdGgpIHtcbiAgICBjb25zdCBtaWdyYXRpb24gPSBuZXcgTWlncmF0aW9uKGZpbGVQYXRoKTtcbiAgICBcbiAgICByZXR1cm4gbWlncmF0aW9uO1xuICB9XG59XG4iXSwibmFtZXMiOlsiTWlncmF0aW9uIiwic2Vjb25kIiwiYXJyYXlVdGlsaXRpZXMiLCJyZWFkRmlsZSIsImZpbGVTeXN0ZW1VdGlsaXRpZXMiLCJmaWxlUGF0aCIsImdldFNRTCIsImZpbGVDb250ZW50Iiwic3FsIiwiZ2V0VmVyc2lvbiIsIm1hdGNoZXMiLCJtYXRjaCIsInNlY29uZE1hdGNoIiwidmVyc2lvbiIsImFwcGx5IiwiY29ubmVjdGlvbiIsImNhbGxiYWNrIiwibG9nIiwiZ2V0TG9nIiwiaW5mbyIsImV4ZWN1dGUiLCJlcnJvciIsImRlYnVnIiwiZnJvbUZpbGVQYXRoIiwibWlncmF0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVNxQkE7Ozt5QkFQK0I7d0JBRTVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUV4QixJQUFNLEFBQUVDLFNBQVdDLHlCQUFjLENBQXpCRCxRQUNGLEFBQUVFLFdBQWFDLDhCQUFtQixDQUFoQ0Q7QUFFTyxJQUFBLEFBQU1ILDBCQUFOO2FBQU1BLFVBQ1BLLFFBQVE7Z0NBRERMO1FBRWpCLElBQUksQ0FBQ0ssUUFBUSxHQUFHQTs7a0JBRkNMOztZQUtuQk0sS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLGNBQWNKLFNBQVMsSUFBSSxDQUFDRSxRQUFRLEdBQ3BDRyxNQUFNRCxhQUFjLEdBQUc7Z0JBRTdCLE9BQU9DO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsVUFBVSxJQUFJLENBQUNMLFFBQVEsQ0FBQ00sS0FBSyxDQUFDLGNBQzlCQyxjQUFjWCxPQUFPUyxVQUNyQkcsVUFBVUQsYUFBYyxHQUFHO2dCQUVqQyxPQUFPQztZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLE1BQU1DLFVBQVUsRUFBRUMsUUFBUTtnQkFDeEIsSUFBTUMsTUFBTUYsV0FBV0csTUFBTSxJQUN2QlYsTUFBTSxJQUFJLENBQUNGLE1BQU0sSUFDakJPLFVBQVUsSUFBSSxDQUFDSixVQUFVO2dCQUUvQlEsSUFBSUUsSUFBSSxDQUFDLEFBQUMsOEJBQXFDLE9BQVJOLFNBQVE7Z0JBRS9DTyxJQUFBQSxpQkFBTyxFQUFDTCxZQUFZUCxLQUFLLFNBQUNhO29CQUN4QkEsUUFDRUosSUFBSUksS0FBSyxDQUFDLGdCQUNSSixJQUFJSyxLQUFLLENBQUM7b0JBRWROLFNBQVNLO2dCQUNYO1lBQ0Y7Ozs7WUFFT0UsS0FBQUE7bUJBQVAsU0FBT0EsYUFBYWxCLFFBQVE7Z0JBQzFCLElBQU1tQixZQUFZLElBckNEeEIsVUFxQ2VLO2dCQUVoQyxPQUFPbUI7WUFDVDs7O1dBeENtQnhCIn0=
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Migrations;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var _migration = /*#__PURE__*/ _interop_require_default(require("./migration"));
13
+ function _class_call_check(instance, Constructor) {
14
+ if (!(instance instanceof Constructor)) {
15
+ throw new TypeError("Cannot call a class as a function");
16
+ }
17
+ }
18
+ function _defineProperties(target, props) {
19
+ for(var i = 0; i < props.length; i++){
20
+ var descriptor = props[i];
21
+ descriptor.enumerable = descriptor.enumerable || false;
22
+ descriptor.configurable = true;
23
+ if ("value" in descriptor) descriptor.writable = true;
24
+ Object.defineProperty(target, descriptor.key, descriptor);
25
+ }
26
+ }
27
+ function _create_class(Constructor, protoProps, staticProps) {
28
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29
+ if (staticProps) _defineProperties(Constructor, staticProps);
30
+ return Constructor;
31
+ }
32
+ function _interop_require_default(obj) {
33
+ return obj && obj.__esModule ? obj : {
34
+ default: obj
35
+ };
36
+ }
37
+ var readDirectory = _necessary.fileSystemUtilities.readDirectory, concatenatePaths = _necessary.pathUtilities.concatenatePaths;
38
+ var Migrations = /*#__PURE__*/ function() {
39
+ function Migrations(map) {
40
+ _class_call_check(this, Migrations);
41
+ this.map = map;
42
+ }
43
+ _create_class(Migrations, [
44
+ {
45
+ key: "retrieveMigration",
46
+ value: function retrieveMigration(version) {
47
+ var migration = this.map[version] || null;
48
+ return migration;
49
+ }
50
+ }
51
+ ], [
52
+ {
53
+ key: "fromCustomMigrationMapAndMigrationsDirectoryPath",
54
+ value: function fromCustomMigrationMapAndMigrationsDirectoryPath(CustomMigrationMap, migrationsDirectoryPath) {
55
+ var map = {}, entryNames = readDirectory(migrationsDirectoryPath), sqlFileNames = sqlFileNamesFromEntryNames(entryNames), customTextFileNames = customTextFileNamesFromEEntryNames(entryNames);
56
+ sqlFileNames.forEach(function(sqlFileName) {
57
+ var filePath = concatenatePaths(migrationsDirectoryPath, sqlFileName), migration = _migration.default.fromFilePath(filePath), version = migration.getVersion();
58
+ map[version] = migration;
59
+ });
60
+ customTextFileNames.forEach(function(customTextFileName) {
61
+ var filePath = concatenatePaths(migrationsDirectoryPath, customTextFileName), CustomMigration = CustomMigrationMap[customTextFileName], customMigration = CustomMigration.fromFilePath(filePath), migration = customMigration, version = migration.getVersion();
62
+ map[version] = migration;
63
+ });
64
+ var migrations = new Migrations(map);
65
+ return migrations;
66
+ }
67
+ }
68
+ ]);
69
+ return Migrations;
70
+ }();
71
+ function customTextFileNamesFromEEntryNames(entryNames) {
72
+ return fileNamesFromEntryNames(entryNames, function(entryName) {
73
+ return /.+CUSTOM\.txt$/.test(entryName);
74
+ });
75
+ }
76
+ function sqlFileNamesFromEntryNames(entryNames) {
77
+ return fileNamesFromEntryNames(entryNames, function(entryName) {
78
+ return /.+\.sql$/.test(entryName);
79
+ });
80
+ }
81
+ function fileNamesFromEntryNames(entryNames, test) {
82
+ var fileNames = entryNames.reduce(function(fileNames, entryName) {
83
+ var entryNameSQLFileName = test(entryName);
84
+ if (entryNameSQLFileName) {
85
+ var fileName = entryName;
86
+ fileNames.push(fileName);
87
+ }
88
+ return fileNames;
89
+ }, []);
90
+ return fileNames;
91
+ }
92
+
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWdyYXRlL21pZ3JhdGlvbnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IHBhdGhVdGlsaXRpZXMsIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCBNaWdyYXRpb24gZnJvbSBcIi4vbWlncmF0aW9uXCI7XG5cbmNvbnN0IHsgcmVhZERpcmVjdG9yeSB9ID0gZmlsZVN5c3RlbVV0aWxpdGllcyxcbiAgICAgIHsgY29uY2F0ZW5hdGVQYXRocyB9ID0gcGF0aFV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTWlncmF0aW9ucyB7XG4gIGNvbnN0cnVjdG9yKG1hcCkge1xuICAgIHRoaXMubWFwID0gbWFwO1xuICB9XG5cbiAgcmV0cmlldmVNaWdyYXRpb24odmVyc2lvbikge1xuICAgIGNvbnN0IG1pZ3JhdGlvbiA9IHRoaXMubWFwW3ZlcnNpb25dIHx8IG51bGw7XG5cbiAgICByZXR1cm4gbWlncmF0aW9uO1xuICB9XG4gIFxuICBzdGF0aWMgZnJvbUN1c3RvbU1pZ3JhdGlvbk1hcEFuZE1pZ3JhdGlvbnNEaXJlY3RvcnlQYXRoKEN1c3RvbU1pZ3JhdGlvbk1hcCwgbWlncmF0aW9uc0RpcmVjdG9yeVBhdGgpIHtcbiAgICBjb25zdCBtYXAgPSB7fSxcbiAgICAgICAgICBlbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShtaWdyYXRpb25zRGlyZWN0b3J5UGF0aCksXG4gICAgICAgICAgc3FsRmlsZU5hbWVzID0gc3FsRmlsZU5hbWVzRnJvbUVudHJ5TmFtZXMoZW50cnlOYW1lcyksXG4gICAgICAgICAgY3VzdG9tVGV4dEZpbGVOYW1lcyA9IGN1c3RvbVRleHRGaWxlTmFtZXNGcm9tRUVudHJ5TmFtZXMoZW50cnlOYW1lcyk7XG5cbiAgICBzcWxGaWxlTmFtZXMuZm9yRWFjaCgoc3FsRmlsZU5hbWUpID0+IHtcbiAgICAgIGNvbnN0IGZpbGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhtaWdyYXRpb25zRGlyZWN0b3J5UGF0aCwgc3FsRmlsZU5hbWUpLFxuICAgICAgICAgICAgbWlncmF0aW9uID0gTWlncmF0aW9uLmZyb21GaWxlUGF0aChmaWxlUGF0aCksXG4gICAgICAgICAgICB2ZXJzaW9uID0gbWlncmF0aW9uLmdldFZlcnNpb24oKTtcblxuICAgICAgbWFwW3ZlcnNpb25dID0gbWlncmF0aW9uO1xuICAgIH0pO1xuXG4gICAgY3VzdG9tVGV4dEZpbGVOYW1lcy5mb3JFYWNoKChjdXN0b21UZXh0RmlsZU5hbWUpID0+IHtcbiAgICAgIGNvbnN0IGZpbGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhtaWdyYXRpb25zRGlyZWN0b3J5UGF0aCwgY3VzdG9tVGV4dEZpbGVOYW1lKSxcbiAgICAgICAgICAgIEN1c3RvbU1pZ3JhdGlvbiA9IEN1c3RvbU1pZ3JhdGlvbk1hcFtjdXN0b21UZXh0RmlsZU5hbWVdLFxuICAgICAgICAgICAgY3VzdG9tTWlncmF0aW9uID0gQ3VzdG9tTWlncmF0aW9uLmZyb21GaWxlUGF0aChmaWxlUGF0aCksXG4gICAgICAgICAgICBtaWdyYXRpb24gPSBjdXN0b21NaWdyYXRpb24sICAvLy9cbiAgICAgICAgICAgIHZlcnNpb24gPSBtaWdyYXRpb24uZ2V0VmVyc2lvbigpO1xuXG4gICAgICBtYXBbdmVyc2lvbl0gPSBtaWdyYXRpb247XG4gICAgfSk7XG5cbiAgICBjb25zdCBtaWdyYXRpb25zID0gbmV3IE1pZ3JhdGlvbnMobWFwKTtcblxuICAgIHJldHVybiBtaWdyYXRpb25zO1xuICB9XG59XG5cbmZ1bmN0aW9uIGN1c3RvbVRleHRGaWxlTmFtZXNGcm9tRUVudHJ5TmFtZXMoZW50cnlOYW1lcykgeyByZXR1cm4gZmlsZU5hbWVzRnJvbUVudHJ5TmFtZXMoZW50cnlOYW1lcywgKGVudHJ5TmFtZSkgPT4gLy4rQ1VTVE9NXFwudHh0JC8udGVzdChlbnRyeU5hbWUpKTsgfVxuXG5mdW5jdGlvbiBzcWxGaWxlTmFtZXNGcm9tRW50cnlOYW1lcyhlbnRyeU5hbWVzKSB7IHJldHVybiBmaWxlTmFtZXNGcm9tRW50cnlOYW1lcyhlbnRyeU5hbWVzLCAoZW50cnlOYW1lKSA9PiAvLitcXC5zcWwkLy50ZXN0KGVudHJ5TmFtZSkpOyB9XG5cbmZ1bmN0aW9uIGZpbGVOYW1lc0Zyb21FbnRyeU5hbWVzKGVudHJ5TmFtZXMsIHRlc3QpIHtcbiAgY29uc3QgZmlsZU5hbWVzID0gZW50cnlOYW1lcy5yZWR1Y2UoKGZpbGVOYW1lcywgZW50cnlOYW1lKSA9PiB7XG4gICAgY29uc3QgZW50cnlOYW1lU1FMRmlsZU5hbWUgPSB0ZXN0KGVudHJ5TmFtZSk7XG5cbiAgICBpZiAoZW50cnlOYW1lU1FMRmlsZU5hbWUpIHtcbiAgICAgIGNvbnN0IGZpbGVOYW1lID0gZW50cnlOYW1lO1xuXG4gICAgICBmaWxlTmFtZXMucHVzaChmaWxlTmFtZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpbGVOYW1lcztcbiAgfSwgW10pO1xuXG4gIHJldHVybiBmaWxlTmFtZXM7XG59XG4iXSwibmFtZXMiOlsiTWlncmF0aW9ucyIsInJlYWREaXJlY3RvcnkiLCJmaWxlU3lzdGVtVXRpbGl0aWVzIiwiY29uY2F0ZW5hdGVQYXRocyIsInBhdGhVdGlsaXRpZXMiLCJtYXAiLCJyZXRyaWV2ZU1pZ3JhdGlvbiIsInZlcnNpb24iLCJtaWdyYXRpb24iLCJmcm9tQ3VzdG9tTWlncmF0aW9uTWFwQW5kTWlncmF0aW9uc0RpcmVjdG9yeVBhdGgiLCJDdXN0b21NaWdyYXRpb25NYXAiLCJtaWdyYXRpb25zRGlyZWN0b3J5UGF0aCIsImVudHJ5TmFtZXMiLCJzcWxGaWxlTmFtZXMiLCJzcWxGaWxlTmFtZXNGcm9tRW50cnlOYW1lcyIsImN1c3RvbVRleHRGaWxlTmFtZXMiLCJjdXN0b21UZXh0RmlsZU5hbWVzRnJvbUVFbnRyeU5hbWVzIiwiZm9yRWFjaCIsInNxbEZpbGVOYW1lIiwiZmlsZVBhdGgiLCJNaWdyYXRpb24iLCJmcm9tRmlsZVBhdGgiLCJnZXRWZXJzaW9uIiwiY3VzdG9tVGV4dEZpbGVOYW1lIiwiQ3VzdG9tTWlncmF0aW9uIiwiY3VzdG9tTWlncmF0aW9uIiwibWlncmF0aW9ucyIsImZpbGVOYW1lc0Zyb21FbnRyeU5hbWVzIiwiZW50cnlOYW1lIiwidGVzdCIsImZpbGVOYW1lcyIsInJlZHVjZSIsImVudHJ5TmFtZVNRTEZpbGVOYW1lIiwiZmlsZU5hbWUiLCJwdXNoIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVNxQkE7Ozt5QkFQOEI7Z0VBRTdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXRCLElBQU0sQUFBRUMsZ0JBQWtCQyw4QkFBbUIsQ0FBckNELGVBQ0YsQUFBRUUsbUJBQXFCQyx3QkFBYSxDQUFsQ0Q7QUFFTyxJQUFBLEFBQU1ILDJCQUFOO2FBQU1BLFdBQ1BLLEdBQUc7Z0NBRElMO1FBRWpCLElBQUksQ0FBQ0ssR0FBRyxHQUFHQTs7a0JBRk1MOztZQUtuQk0sS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQkMsT0FBTztnQkFDdkIsSUFBTUMsWUFBWSxJQUFJLENBQUNILEdBQUcsQ0FBQ0UsUUFBUSxJQUFJO2dCQUV2QyxPQUFPQztZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLGlEQUFpREMsa0JBQWtCLEVBQUVDLHVCQUF1QjtnQkFDakcsSUFBTU4sTUFBTSxDQUFDLEdBQ1BPLGFBQWFYLGNBQWNVLDBCQUMzQkUsZUFBZUMsMkJBQTJCRixhQUMxQ0csc0JBQXNCQyxtQ0FBbUNKO2dCQUUvREMsYUFBYUksT0FBTyxDQUFDLFNBQUNDO29CQUNwQixJQUFNQyxXQUFXaEIsaUJBQWlCUSx5QkFBeUJPLGNBQ3JEVixZQUFZWSxrQkFBUyxDQUFDQyxZQUFZLENBQUNGLFdBQ25DWixVQUFVQyxVQUFVYyxVQUFVO29CQUVwQ2pCLEdBQUcsQ0FBQ0UsUUFBUSxHQUFHQztnQkFDakI7Z0JBRUFPLG9CQUFvQkUsT0FBTyxDQUFDLFNBQUNNO29CQUMzQixJQUFNSixXQUFXaEIsaUJBQWlCUSx5QkFBeUJZLHFCQUNyREMsa0JBQWtCZCxrQkFBa0IsQ0FBQ2EsbUJBQW1CLEVBQ3hERSxrQkFBa0JELGdCQUFnQkgsWUFBWSxDQUFDRixXQUMvQ1gsWUFBWWlCLGlCQUNabEIsVUFBVUMsVUFBVWMsVUFBVTtvQkFFcENqQixHQUFHLENBQUNFLFFBQVEsR0FBR0M7Z0JBQ2pCO2dCQUVBLElBQU1rQixhQUFhLElBbkNGMUIsV0FtQ2lCSztnQkFFbEMsT0FBT3FCO1lBQ1Q7OztXQXRDbUIxQjs7QUF5Q3JCLFNBQVNnQixtQ0FBbUNKLFVBQVU7SUFBSSxPQUFPZSx3QkFBd0JmLFlBQVksU0FBQ2dCO2VBQWMsaUJBQWlCQyxJQUFJLENBQUNEOztBQUFhO0FBRXZKLFNBQVNkLDJCQUEyQkYsVUFBVTtJQUFJLE9BQU9lLHdCQUF3QmYsWUFBWSxTQUFDZ0I7ZUFBYyxXQUFXQyxJQUFJLENBQUNEOztBQUFhO0FBRXpJLFNBQVNELHdCQUF3QmYsVUFBVSxFQUFFaUIsSUFBSTtJQUMvQyxJQUFNQyxZQUFZbEIsV0FBV21CLE1BQU0sQ0FBQyxTQUFDRCxXQUFXRjtRQUM5QyxJQUFNSSx1QkFBdUJILEtBQUtEO1FBRWxDLElBQUlJLHNCQUFzQjtZQUN4QixJQUFNQyxXQUFXTDtZQUVqQkUsVUFBVUksSUFBSSxDQUFDRDtRQUNqQjtRQUVBLE9BQU9IO0lBQ1QsR0FBRyxFQUFFO0lBRUwsT0FBT0E7QUFDVCJ9
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return applyMigrationsOperation;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var _migrations = /*#__PURE__*/ _interop_require_default(require("../migrations"));
13
+ var _transaction = /*#__PURE__*/ _interop_require_default(require("../../transaction"));
14
+ var _migration = require("../../table/migration");
15
+ function _interop_require_default(obj) {
16
+ return obj && obj.__esModule ? obj : {
17
+ default: obj
18
+ };
19
+ }
20
+ var first = _necessary.arrayUtilities.first, whilst = _necessary.asynchronousUtilities.whilst;
21
+ function applyMigrationsOperation(next, done, context) {
22
+ var configuration = context.configuration, CustomMigrationMap = context.CustomMigrationMap, migrationsDirectoryPath = context.migrationsDirectoryPath, migrations = _migrations.default.fromCustomMigrationMapAndMigrationsDirectoryPath(CustomMigrationMap, migrationsDirectoryPath), log = configuration.log;
23
+ if (log) {
24
+ log.debug("Apply migrations...");
25
+ }
26
+ Object.assign(context, {
27
+ migrations: migrations
28
+ });
29
+ whilst(applyMigrationOperation, function() {
30
+ delete context.migrations;
31
+ done();
32
+ }, context);
33
+ }
34
+ function applyMigrationOperation(next, done, context) {
35
+ var configuration = context.configuration, log = configuration.log;
36
+ if (log) {
37
+ log.debug("Apply migration...");
38
+ }
39
+ var operations = [
40
+ getVersion,
41
+ applyMigration,
42
+ updateVersion
43
+ ];
44
+ (0, _transaction.default)(configuration, operations, function(completed) {
45
+ var error = !completed;
46
+ if (error) {
47
+ if (log) {
48
+ log.error("...not completed.");
49
+ }
50
+ Object.assign(context, {
51
+ error: error
52
+ });
53
+ done();
54
+ return;
55
+ }
56
+ var finished = context.finished;
57
+ delete context.finished;
58
+ finished ? done() : next();
59
+ }, context);
60
+ }
61
+ function getVersion(connection, abort, proceed, complete, context) {
62
+ var configuration = context.configuration, migrationSQLMap = configuration.migrationSQLMap, selectMaximumVersionMigrationSQL = migrationSQLMap.selectMaximumVersionMigrationSQL, sql = selectMaximumVersionMigrationSQL, log = connection.getLog();
63
+ log.debug("Get version....");
64
+ (0, _migration.selectMaximumVersion)(connection, sql, function(error, rows) {
65
+ if (error) {
66
+ abort();
67
+ return;
68
+ }
69
+ var firstRow = first(rows), maximum_version = firstRow.maximum_version, version = maximum_version; ///
70
+ Object.assign(context, {
71
+ version: version
72
+ });
73
+ proceed();
74
+ });
75
+ }
76
+ function updateVersion(connection, abort, proceed, complete, context) {
77
+ var configuration = context.configuration, migrationSQLMap = configuration.migrationSQLMap, insertVersionMigrationSQL = migrationSQLMap.insertVersionMigrationSQL, sql = insertVersionMigrationSQL, log = connection.getLog();
78
+ log.debug("Update version...");
79
+ var version = context.version;
80
+ delete context.version;
81
+ (0, _migration.insertVersion)(connection, version, sql, function(error) {
82
+ error ? abort() : proceed();
83
+ });
84
+ }
85
+ function applyMigration(connection, abort, proceed, complete, context) {
86
+ var version = context.version, migrations = context.migrations;
87
+ delete context.version;
88
+ var migration = migrations.retrieveMigration(++version), finished = migration === null;
89
+ Object.assign(context, {
90
+ finished: finished
91
+ });
92
+ if (finished) {
93
+ complete();
94
+ return;
95
+ }
96
+ var log = connection.getLog();
97
+ log.debug("Apply migration...");
98
+ migration.apply(connection, function(error) {
99
+ if (error) {
100
+ abort();
101
+ return;
102
+ }
103
+ Object.assign(context, {
104
+ version: version
105
+ });
106
+ proceed();
107
+ });
108
+ }
109
+
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9taWdyYXRlL29wZXJhdGlvbi9hcHBseU1pZ3JhdGlvbnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzLCBhc3luY2hyb25vdXNVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCBNaWdyYXRpb25zIGZyb20gXCIuLi9taWdyYXRpb25zXCI7XG5pbXBvcnQgdHJhbnNhY3Rpb24gZnJvbSBcIi4uLy4uL3RyYW5zYWN0aW9uXCI7XG5cbmltcG9ydCB7IGluc2VydFZlcnNpb24sIHNlbGVjdE1heGltdW1WZXJzaW9uIH0gZnJvbSBcIi4uLy4uL3RhYmxlL21pZ3JhdGlvblwiO1xuXG5jb25zdCB7IGZpcnN0IH0gPSBhcnJheVV0aWxpdGllcyxcbiAgICAgIHsgd2hpbHN0IH0gPSBhc3luY2hyb25vdXNVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFwcGx5TWlncmF0aW9uc09wZXJhdGlvbihuZXh0LCBkb25lLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgY29uZmlndXJhdGlvbiwgQ3VzdG9tTWlncmF0aW9uTWFwLCBtaWdyYXRpb25zRGlyZWN0b3J5UGF0aCB9ID0gY29udGV4dCxcbiAgICAgICAgbWlncmF0aW9ucyA9IE1pZ3JhdGlvbnMuZnJvbUN1c3RvbU1pZ3JhdGlvbk1hcEFuZE1pZ3JhdGlvbnNEaXJlY3RvcnlQYXRoKEN1c3RvbU1pZ3JhdGlvbk1hcCwgbWlncmF0aW9uc0RpcmVjdG9yeVBhdGgpLFxuICAgICAgICB7IGxvZyB9ID0gY29uZmlndXJhdGlvbjtcblxuICBpZiAobG9nKSB7XG4gICAgbG9nLmRlYnVnKFwiQXBwbHkgbWlncmF0aW9ucy4uLlwiKTtcbiAgfVxuXG4gIE9iamVjdC5hc3NpZ24oY29udGV4dCwge1xuICAgIG1pZ3JhdGlvbnNcbiAgfSk7XG5cbiAgd2hpbHN0KGFwcGx5TWlncmF0aW9uT3BlcmF0aW9uLCAoKSA9PiB7XG4gICAgZGVsZXRlIGNvbnRleHQubWlncmF0aW9ucztcblxuICAgIGRvbmUoKTtcbiAgfSwgY29udGV4dCk7XG59XG5cbmZ1bmN0aW9uIGFwcGx5TWlncmF0aW9uT3BlcmF0aW9uKG5leHQsIGRvbmUsIGNvbnRleHQpIHtcbiAgY29uc3QgeyBjb25maWd1cmF0aW9uIH0gPSBjb250ZXh0LFxuICAgICAgICB7IGxvZyB9ID0gY29uZmlndXJhdGlvbjtcblxuICBpZiAobG9nKSB7XG4gICAgbG9nLmRlYnVnKFwiQXBwbHkgbWlncmF0aW9uLi4uXCIpO1xuICB9XG5cbiAgY29uc3Qgb3BlcmF0aW9ucyA9IFtcbiAgICBnZXRWZXJzaW9uLFxuICAgIGFwcGx5TWlncmF0aW9uLFxuICAgIHVwZGF0ZVZlcnNpb25cbiAgXTtcblxuICB0cmFuc2FjdGlvbihjb25maWd1cmF0aW9uLCBvcGVyYXRpb25zLCAoY29tcGxldGVkKSA9PiB7XG4gICAgY29uc3QgZXJyb3IgPSAhY29tcGxldGVkO1xuXG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBpZiAobG9nKSB7XG4gICAgICAgIGxvZy5lcnJvcihcIi4uLm5vdCBjb21wbGV0ZWQuXCIpO1xuICAgICAgfVxuXG4gICAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgICAgZXJyb3JcbiAgICAgIH0pO1xuXG4gICAgICBkb25lKCk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB7IGZpbmlzaGVkIH0gPSBjb250ZXh0O1xuXG4gICAgZGVsZXRlIGNvbnRleHQuZmluaXNoZWQ7XG5cbiAgICBmaW5pc2hlZCA/XG4gICAgICBkb25lKCkgOlxuICAgICAgICBuZXh0KCk7XG4gIH0sIGNvbnRleHQpO1xufVxuXG5mdW5jdGlvbiBnZXRWZXJzaW9uKGNvbm5lY3Rpb24sIGFib3J0LCBwcm9jZWVkLCBjb21wbGV0ZSwgY29udGV4dCkge1xuICBjb25zdCB7IGNvbmZpZ3VyYXRpb24gfSA9IGNvbnRleHQsXG4gICAgICAgIHsgbWlncmF0aW9uU1FMTWFwIH0gPSBjb25maWd1cmF0aW9uLFxuICAgICAgICB7IHNlbGVjdE1heGltdW1WZXJzaW9uTWlncmF0aW9uU1FMIH0gPSBtaWdyYXRpb25TUUxNYXAsXG4gICAgICAgIHNxbCA9IHNlbGVjdE1heGltdW1WZXJzaW9uTWlncmF0aW9uU1FMLCAvLy9cbiAgICAgICAgbG9nID0gY29ubmVjdGlvbi5nZXRMb2coKTtcblxuICBsb2cuZGVidWcoXCJHZXQgdmVyc2lvbi4uLi5cIik7XG5cbiAgc2VsZWN0TWF4aW11bVZlcnNpb24oY29ubmVjdGlvbiwgc3FsLCAoZXJyb3IsIHJvd3MpID0+IHtcbiAgICBpZiAoZXJyb3IpIHtcbiAgICAgIGFib3J0KCk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBmaXJzdFJvdyA9IGZpcnN0KHJvd3MpLFxuICAgICAgICAgIHsgbWF4aW11bV92ZXJzaW9uIH0gPSBmaXJzdFJvdyxcbiAgICAgICAgICB2ZXJzaW9uID0gbWF4aW11bV92ZXJzaW9uOyAgLy8vXG5cbiAgICBPYmplY3QuYXNzaWduKGNvbnRleHQsIHtcbiAgICAgIHZlcnNpb25cbiAgICB9KTtcblxuICAgIHByb2NlZWQoKTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZVZlcnNpb24oY29ubmVjdGlvbiwgYWJvcnQsIHByb2NlZWQsIGNvbXBsZXRlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgY29uZmlndXJhdGlvbiB9ID0gY29udGV4dCxcbiAgICAgICAgeyBtaWdyYXRpb25TUUxNYXAgfSA9IGNvbmZpZ3VyYXRpb24sXG4gICAgICAgIHsgaW5zZXJ0VmVyc2lvbk1pZ3JhdGlvblNRTCB9ID0gbWlncmF0aW9uU1FMTWFwLFxuICAgICAgICBzcWwgPSBpbnNlcnRWZXJzaW9uTWlncmF0aW9uU1FMLCAgLy8vXG4gICAgICAgIGxvZyA9IGNvbm5lY3Rpb24uZ2V0TG9nKCk7XG5cbiAgbG9nLmRlYnVnKFwiVXBkYXRlIHZlcnNpb24uLi5cIik7XG5cbiAgY29uc3QgeyB2ZXJzaW9uIH0gPSBjb250ZXh0O1xuXG4gIGRlbGV0ZSBjb250ZXh0LnZlcnNpb247XG5cbiAgaW5zZXJ0VmVyc2lvbihjb25uZWN0aW9uLCB2ZXJzaW9uLCBzcWwsIChlcnJvcikgPT4ge1xuICAgIGVycm9yID9cbiAgICAgIGFib3J0KCkgOlxuICAgICAgICBwcm9jZWVkKCk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBhcHBseU1pZ3JhdGlvbihjb25uZWN0aW9uLCBhYm9ydCwgcHJvY2VlZCwgY29tcGxldGUsIGNvbnRleHQpIHtcbiAgbGV0IHsgdmVyc2lvbiwgbWlncmF0aW9ucyB9ID0gY29udGV4dDtcblxuICBkZWxldGUgY29udGV4dC52ZXJzaW9uO1xuXG4gIGNvbnN0IG1pZ3JhdGlvbiA9IG1pZ3JhdGlvbnMucmV0cmlldmVNaWdyYXRpb24oKyt2ZXJzaW9uKSwgIC8vL1xuICAgICAgICBmaW5pc2hlZCA9IChtaWdyYXRpb24gPT09IG51bGwpO1xuXG4gIE9iamVjdC5hc3NpZ24oY29udGV4dCwge1xuICAgIGZpbmlzaGVkXG4gIH0pO1xuXG4gIGlmIChmaW5pc2hlZCkge1xuICAgIGNvbXBsZXRlKCk7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBsb2cgPSBjb25uZWN0aW9uLmdldExvZygpO1xuXG4gIGxvZy5kZWJ1ZyhcIkFwcGx5IG1pZ3JhdGlvbi4uLlwiKTtcblxuICBtaWdyYXRpb24uYXBwbHkoY29ubmVjdGlvbiwgKGVycm9yKSA9PiB7XG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBhYm9ydCgpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgT2JqZWN0LmFzc2lnbihjb250ZXh0LCB7XG4gICAgICB2ZXJzaW9uXG4gICAgfSk7XG5cbiAgICBwcm9jZWVkKCk7XG4gIH0pO1xufVxuIl0sIm5hbWVzIjpbImFwcGx5TWlncmF0aW9uc09wZXJhdGlvbiIsImZpcnN0IiwiYXJyYXlVdGlsaXRpZXMiLCJ3aGlsc3QiLCJhc3luY2hyb25vdXNVdGlsaXRpZXMiLCJuZXh0IiwiZG9uZSIsImNvbnRleHQiLCJjb25maWd1cmF0aW9uIiwiQ3VzdG9tTWlncmF0aW9uTWFwIiwibWlncmF0aW9uc0RpcmVjdG9yeVBhdGgiLCJtaWdyYXRpb25zIiwiTWlncmF0aW9ucyIsImZyb21DdXN0b21NaWdyYXRpb25NYXBBbmRNaWdyYXRpb25zRGlyZWN0b3J5UGF0aCIsImxvZyIsImRlYnVnIiwiT2JqZWN0IiwiYXNzaWduIiwiYXBwbHlNaWdyYXRpb25PcGVyYXRpb24iLCJvcGVyYXRpb25zIiwiZ2V0VmVyc2lvbiIsImFwcGx5TWlncmF0aW9uIiwidXBkYXRlVmVyc2lvbiIsInRyYW5zYWN0aW9uIiwiY29tcGxldGVkIiwiZXJyb3IiLCJmaW5pc2hlZCIsImNvbm5lY3Rpb24iLCJhYm9ydCIsInByb2NlZWQiLCJjb21wbGV0ZSIsIm1pZ3JhdGlvblNRTE1hcCIsInNlbGVjdE1heGltdW1WZXJzaW9uTWlncmF0aW9uU1FMIiwic3FsIiwiZ2V0TG9nIiwic2VsZWN0TWF4aW11bVZlcnNpb24iLCJyb3dzIiwiZmlyc3RSb3ciLCJtYXhpbXVtX3ZlcnNpb24iLCJ2ZXJzaW9uIiwiaW5zZXJ0VmVyc2lvbk1pZ3JhdGlvblNRTCIsImluc2VydFZlcnNpb24iLCJtaWdyYXRpb24iLCJyZXRyaWV2ZU1pZ3JhdGlvbiIsImFwcGx5Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFZQTs7O2VBQXdCQTs7O3lCQVY4QjtpRUFFL0I7a0VBQ0M7eUJBRTRCOzs7Ozs7QUFFcEQsSUFBTSxBQUFFQyxRQUFVQyx5QkFBYyxDQUF4QkQsT0FDRixBQUFFRSxTQUFXQyxnQ0FBcUIsQ0FBaENEO0FBRU8sU0FBU0gseUJBQXlCSyxJQUFJLEVBQUVDLElBQUksRUFBRUMsT0FBTztJQUNsRSxJQUFRQyxnQkFBK0RELFFBQS9EQyxlQUFlQyxxQkFBZ0RGLFFBQWhERSxvQkFBb0JDLDBCQUE0QkgsUUFBNUJHLHlCQUNyQ0MsYUFBYUMsbUJBQVUsQ0FBQ0MsZ0RBQWdELENBQUNKLG9CQUFv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
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return initialiseOperation;
9
+ }
10
+ });
11
+ var _transaction = /*#__PURE__*/ _interop_require_default(require("../../transaction"));
12
+ var _migration = require("../../table/migration");
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ function initialiseOperation(next, done, context) {
19
+ var configuration = context.configuration, log = configuration.log;
20
+ if (log) {
21
+ log.debug("Initialise...");
22
+ }
23
+ var operations = [
24
+ checkTablePresentOperatino,
25
+ createMissingTableOperation,
26
+ insertZeroVersionOperation
27
+ ];
28
+ (0, _transaction.default)(configuration, operations, function(completed) {
29
+ var error = !completed;
30
+ if (error) {
31
+ if (log) {
32
+ log.error("...not completed.");
33
+ }
34
+ Object.assign(context, {
35
+ error: error
36
+ });
37
+ done();
38
+ return;
39
+ }
40
+ next();
41
+ }, context);
42
+ }
43
+ function checkTablePresentOperatino(connection, abort, proceed, complete, context) {
44
+ var configuration = context.configuration, migrationSQLMap = configuration.migrationSQLMap, showLikeTablesMigrationSQL = migrationSQLMap.showLikeTablesMigrationSQL, sql = showLikeTablesMigrationSQL, log = connection.getLog();
45
+ log.debug("Check table present...");
46
+ (0, _migration.showLikeTables)(connection, sql, function(error, rows) {
47
+ if (error) {
48
+ abort();
49
+ return;
50
+ }
51
+ var rowsLength = rows.length;
52
+ rowsLength === 1 ? complete() : proceed();
53
+ });
54
+ }
55
+ function createMissingTableOperation(connection, abort, proceed, complete, context) {
56
+ var configuration = context.configuration, migrationSQLMap = configuration.migrationSQLMap, createTableMigrationSQL = migrationSQLMap.createTableMigrationSQL, sql = createTableMigrationSQL, log = connection.getLog();
57
+ log.debug("Create missing table...");
58
+ (0, _migration.createTable)(connection, sql, function(error) {
59
+ error ? abort() : proceed();
60
+ });
61
+ }
62
+ function insertZeroVersionOperation(connection, abort, proceed, complete, context) {
63
+ var configuration = context.configuration, migrationSQLMap = configuration.migrationSQLMap, insertVersionMigrationSQL = migrationSQLMap.insertVersionMigrationSQL, sql = insertVersionMigrationSQL, log = connection.getLog();
64
+ log.debug("Inserting zero version...");
65
+ var version = 0;
66
+ (0, _migration.insertVersion)(connection, version, sql, function(error) {
67
+ error ? abort() : proceed();
68
+ });
69
+ }
70
+
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9taWdyYXRlL29wZXJhdGlvbi9pbml0aWFsaXNlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgdHJhbnNhY3Rpb24gZnJvbSBcIi4uLy4uL3RyYW5zYWN0aW9uXCI7XG5cbmltcG9ydCB7IGNyZWF0ZVRhYmxlLCBpbnNlcnRWZXJzaW9uLCBzaG93TGlrZVRhYmxlcyB9IGZyb20gXCIuLi8uLi90YWJsZS9taWdyYXRpb25cIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gaW5pdGlhbGlzZU9wZXJhdGlvbihuZXh0LCBkb25lLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgY29uZmlndXJhdGlvbiB9ID0gY29udGV4dCxcbiAgICAgICAgeyBsb2cgfSA9IGNvbmZpZ3VyYXRpb247XG5cbiAgaWYgKGxvZykge1xuICAgIGxvZy5kZWJ1ZyhcIkluaXRpYWxpc2UuLi5cIik7XG4gIH1cblxuICBjb25zdCBvcGVyYXRpb25zID0gW1xuICAgIGNoZWNrVGFibGVQcmVzZW50T3BlcmF0aW5vLFxuICAgIGNyZWF0ZU1pc3NpbmdUYWJsZU9wZXJhdGlvbixcbiAgICBpbnNlcnRaZXJvVmVyc2lvbk9wZXJhdGlvblxuICBdO1xuXG4gIHRyYW5zYWN0aW9uKGNvbmZpZ3VyYXRpb24sIG9wZXJhdGlvbnMsIChjb21wbGV0ZWQpID0+IHtcbiAgICBjb25zdCBlcnJvciA9ICFjb21wbGV0ZWQ7XG5cbiAgICBpZiAoZXJyb3IpIHtcbiAgICAgIGlmIChsb2cpIHtcbiAgICAgICAgbG9nLmVycm9yKFwiLi4ubm90IGNvbXBsZXRlZC5cIik7XG4gICAgICB9XG5cbiAgICAgIE9iamVjdC5hc3NpZ24oY29udGV4dCwge1xuICAgICAgICBlcnJvclxuICAgICAgfSk7XG5cbiAgICAgIGRvbmUoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIG5leHQoKTtcbiAgfSwgY29udGV4dCk7XG59XG5cbmZ1bmN0aW9uIGNoZWNrVGFibGVQcmVzZW50T3BlcmF0aW5vKGNvbm5lY3Rpb24sIGFib3J0LCBwcm9jZWVkLCBjb21wbGV0ZSwgY29udGV4dCkge1xuICBjb25zdCB7IGNvbmZpZ3VyYXRpb24gfSA9IGNvbnRleHQsXG4gICAgICAgIHsgbWlncmF0aW9uU1FMTWFwIH0gPSBjb25maWd1cmF0aW9uLFxuICAgICAgICB7IHNob3dMaWtlVGFibGVzTWlncmF0aW9uU1FMIH0gPSBtaWdyYXRpb25TUUxNYXAsXG4gICAgICAgIHNxbCA9IHNob3dMaWtlVGFibGVzTWlncmF0aW9uU1FMLCAvLy9cbiAgICAgICAgbG9nID0gY29ubmVjdGlvbi5nZXRMb2coKTtcblxuICBsb2cuZGVidWcoXCJDaGVjayB0YWJsZSBwcmVzZW50Li4uXCIpO1xuXG4gIHNob3dMaWtlVGFibGVzKGNvbm5lY3Rpb24sIHNxbCwgKGVycm9yLCByb3dzKSA9PiB7XG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBhYm9ydCgpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgcm93c0xlbmd0aCA9IHJvd3MubGVuZ3RoO1xuXG4gICAgKHJvd3NMZW5ndGggPT09IDEpID9cbiAgICAgIGNvbXBsZXRlKCkgOlxuICAgICAgICBwcm9jZWVkKCk7XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVNaXNzaW5nVGFibGVPcGVyYXRpb24oY29ubmVjdGlvbiwgYWJvcnQsIHByb2NlZWQsIGNvbXBsZXRlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHsgY29uZmlndXJhdGlvbiB9ID0gY29udGV4dCxcbiAgICAgICAgeyBtaWdyYXRpb25TUUxNYXAgfSA9IGNvbmZpZ3VyYXRpb24sXG4gICAgICAgIHsgY3JlYXRlVGFibGVNaWdyYXRpb25TUUwgfSA9IG1pZ3JhdGlvblNRTE1hcCxcbiAgICAgICAgc3FsID0gY3JlYXRlVGFibGVNaWdyYXRpb25TUUwsIC8vL1xuICAgICAgICBsb2cgPSBjb25uZWN0aW9uLmdldExvZygpO1xuXG4gIGxvZy5kZWJ1ZyhcIkNyZWF0ZSBtaXNzaW5nIHRhYmxlLi4uXCIpO1xuXG4gIGNyZWF0ZVRhYmxlKGNvbm5lY3Rpb24sIHNxbCwgKGVycm9yKSA9PiB7XG4gICAgZXJyb3IgP1xuICAgICAgYWJvcnQoKSA6XG4gICAgICAgIHByb2NlZWQoKTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGluc2VydFplcm9WZXJzaW9uT3BlcmF0aW9uKGNvbm5lY3Rpb24sIGFib3J0LCBwcm9jZWVkLCBjb21wbGV0ZSwgY29udGV4dCkge1xuICBjb25zdCB7IGNvbmZpZ3VyYXRpb24gfSA9IGNvbnRleHQsXG4gICAgICAgIHsgbWlncmF0aW9uU1FMTWFwIH0gPSBjb25maWd1cmF0aW9uLFxuICAgICAgICB7IGluc2VydFZlcnNpb25NaWdyYXRpb25TUUwgfSA9IG1pZ3JhdGlvblNRTE1hcCxcbiAgICAgICAgc3FsID0gaW5zZXJ0VmVyc2lvbk1pZ3JhdGlvblNRTCwgIC8vL1xuICAgICAgICBsb2cgPSBjb25uZWN0aW9uLmdldExvZygpO1xuXG4gIGxvZy5kZWJ1ZyhcIkluc2VydGluZyB6ZXJvIHZlcnNpb24uLi5cIik7XG5cbiAgY29uc3QgdmVyc2lvbiA9IDA7XG5cbiAgaW5zZXJ0VmVyc2lvbihjb25uZWN0aW9uLCB2ZXJzaW9uLCBzcWwsIChlcnJvcikgPT4ge1xuICAgIGVycm9yID9cbiAgICAgIGFib3J0KCkgOlxuICAgICAgICBwcm9jZWVkKCk7XG4gIH0pO1xufVxuIl0sIm5hbWVzIjpbImluaXRpYWxpc2VPcGVyYXRpb24iLCJuZXh0IiwiZG9uZSIsImNvbnRleHQiLCJjb25maWd1cmF0aW9uIiwibG9nIiwiZGVidWciLCJvcGVyYXRpb25zIiwiY2hlY2tUYWJsZVByZXNlbnRPcGVyYXRpbm8iLCJjcmVhdGVNaXNzaW5nVGFibGVPcGVyYXRpb24iLCJpbnNlcnRaZXJvVmVyc2lvbk9wZXJhdGlvbiIsInRyYW5zYWN0aW9uIiwiY29tcGxldGVkIiwiZXJyb3IiLCJPYmplY3QiLCJhc3NpZ24iLCJjb25uZWN0aW9uIiwiYWJvcnQiLCJwcm9jZWVkIiwiY29tcGxldGUiLCJtaWdyYXRpb25TUUxNYXAiLCJzaG93TGlrZVRhYmxlc01pZ3JhdGlvblNRTCIsInNxbCIsImdldExvZyIsInNob3dMaWtlVGFibGVzIiwicm93cyIsInJvd3NMZW5ndGgiLCJsZW5ndGgiLCJjcmVhdGVUYWJsZU1pZ3JhdGlvblNRTCIsImNyZWF0ZVRhYmxlIiwiaW5zZXJ0VmVyc2lvbk1pZ3JhdGlvblNRTCIsInZlcnNpb24iLCJpbnNlcnRWZXJzaW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFNQTs7O2VBQXdCQTs7O2tFQUpBO3lCQUVtQzs7Ozs7O0FBRTVDLFNBQVNBLG9CQUFvQkMsSUFBSSxFQUFFQyxJQUFJLEVBQUVDLE9BQU87SUFDN0QsSUFBTSxBQUFFQyxnQkFBa0JELFFBQWxCQyxlQUNGLEFBQUVDLE1BQVFELGNBQVJDO0lBRVIsSUFBSUEsS0FBSztRQUNQQSxJQUFJQyxLQUFLLENBQUM7SUFDWjtJQUVBLElBQU1DLGFBQWE7UUFDakJDO1FBQ0FDO1FBQ0FDO0tBQ0Q7SUFFREMsSUFBQUEsb0JBQVcsRUFBQ1AsZUFBZUcsWUFBWSxTQUFDSztRQUN0QyxJQUFNQyxRQUFRLENBQUNEO1FBRWYsSUFBSUMsT0FBTztZQUNULElBQUlSLEtBQUs7Z0JBQ1BBLElBQUlRLEtBQUssQ0FBQztZQUNaO1lBRUFDLE9BQU9DLE1BQU0sQ0FBQ1osU0FBUztnQkFDckJVLE9BQUFBO1lBQ0Y7WUFFQVg7WUFFQTtRQUNGO1FBRUFEO0lBQ0YsR0FBR0U7QUFDTDtBQUVBLFNBQVNLLDJCQUEyQlEsVUFBVSxFQUFFQyxLQUFLLEVBQUVDLE9BQU8sRUFBRUMsUUFBUSxFQUFFaEIsT0FBTztJQUMvRSxJQUFNLEFBQUVDLGdCQUFrQkQsUUFBbEJDLGVBQ0YsQUFBRWdCLGtCQUFvQmhCLGNBQXBCZ0IsaUJBQ0YsQUFBRUMsNkJBQStCRCxnQkFBL0JDLDRCQUNGQyxNQUFNRCw0QkFDTmhCLE1BQU1XLFdBQVdPLE1BQU07SUFFN0JsQixJQUFJQyxLQUFLLENBQUM7SUFFVmtCLElBQUFBLHlCQUFjLEVBQUNSLFlBQVlNLEtBQUssU0FBQ1QsT0FBT1k7UUFDdEMsSUFBSVosT0FBTztZQUNUSTtZQUVBO1FBQ0Y7UUFFQSxJQUFNUyxhQUFhRCxLQUFLRSxNQUFNO1FBRTdCRCxlQUFlLElBQ2RQLGFBQ0VEO0lBQ047QUFDRjtBQUVBLFNBQVNULDRCQUE0Qk8sVUFBVSxFQUFFQyxLQUFLLEVBQUVDLE9BQU8sRUFBRUMsUUFBUSxFQUFFaEIsT0FBTztJQUNoRixJQUFNLEFBQUVDLGdCQUFrQkQsUUFBbEJDLGVBQ0YsQUFBRWdCLGtCQUFvQmhCLGNBQXBCZ0IsaUJBQ0YsQUFBRVEsMEJBQTRCUixnQkFBNUJRLHlCQUNGTixNQUFNTSx5QkFDTnZCLE1BQU1XLFdBQVdPLE1BQU07SUFFN0JsQixJQUFJQyxLQUFLLENBQUM7SUFFVnVCLElBQUFBLHNCQUFXLEVBQUNiLFlBQVlNLEtBQUssU0FBQ1Q7UUFDNUJBLFFBQ0VJLFVBQ0VDO0lBQ047QUFDRjtBQUVBLFNBQVNSLDJCQUEyQk0sVUFBVSxFQUFFQyxLQUFLLEVBQUVDLE9BQU8sRUFBRUMsUUFBUSxFQUFFaEIsT0FBTztJQUMvRSxJQUFNLEFBQUVDLGdCQUFrQkQsUUFBbEJDLGVBQ0YsQUFBRWdCLGtCQUFvQmhCLGNBQXBCZ0IsaUJBQ0YsQUFBRVUsNEJBQThCVixnQkFBOUJVLDJCQUNGUixNQUFNUSwyQkFDTnpCLE1BQU1XLFdBQVdPLE1BQU07SUFFN0JsQixJQUFJQyxLQUFLLENBQUM7SUFFVixJQUFNeUIsVUFBVTtJQUVoQkMsSUFBQUEsd0JBQWEsRUFBQ2hCLFlBQVllLFNBQVNULEtBQUssU0FBQ1Q7UUFDdkNBLFFBQ0VJLFVBQ0VDO0lBQ047QUFDRiJ9