@ditojs/server 0.270.0 → 0.273.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app/Application.js +59 -22
- package/lib/app/SessionStore.js +3 -1
- package/lib/app/Validator.js +16 -2
- package/lib/app/index.js +7 -1
- package/lib/cli/console.js +11 -1
- package/lib/cli/db/createMigration.js +13 -1
- package/lib/cli/db/index.js +7 -1
- package/lib/cli/db/listAssetConfig.js +4 -2
- package/lib/cli/db/seed.js +10 -2
- package/lib/cli/index.js +6 -2
- package/lib/controllers/AdminController.js +18 -6
- package/lib/controllers/CollectionController.js +15 -1
- package/lib/controllers/Controller.js +25 -1
- package/lib/controllers/ControllerAction.js +18 -6
- package/lib/controllers/RelationController.js +7 -1
- package/lib/controllers/UserController.js +15 -1
- package/lib/controllers/index.js +7 -1
- package/lib/decorators/index.js +7 -1
- package/lib/decorators/parameters.js +4 -2
- package/lib/decorators/returns.js +4 -2
- package/lib/errors/DatabaseError.js +5 -19
- package/lib/errors/ResponseError.js +4 -14
- package/lib/errors/index.js +7 -1
- package/lib/graph/DitoGraphProcessor.js +5 -1
- package/lib/graph/expression.js +5 -1
- package/lib/graph/graph.js +18 -2
- package/lib/graph/index.js +7 -1
- package/lib/index.js +7 -1
- package/lib/lib/index.js +7 -1
- package/lib/middleware/findRoute.js +7 -1
- package/lib/middleware/index.js +7 -1
- package/lib/mixins/AssetMixin.js +4 -4
- package/lib/mixins/SessionMixin.js +4 -4
- package/lib/mixins/TimeStampedMixin.js +4 -4
- package/lib/mixins/UserMixin.js +10 -4
- package/lib/mixins/index.js +7 -1
- package/lib/models/Model.js +41 -22
- package/lib/models/definitions/filters.js +9 -1
- package/lib/models/definitions/properties.js +7 -1
- package/lib/models/definitions/scopes.js +9 -1
- package/lib/models/index.js +7 -1
- package/lib/query/QueryBuilder.js +11 -1
- package/lib/query/QueryFilters.js +11 -1
- package/lib/query/index.js +7 -1
- package/lib/schema/formats/index.js +7 -1
- package/lib/schema/index.js +10 -2
- package/lib/schema/keywords/index.js +7 -1
- package/lib/schema/properties.js +11 -1
- package/lib/schema/relations.js +18 -4
- package/lib/services/index.js +7 -1
- package/lib/storage/DiskStorage.js +7 -1
- package/lib/storage/Storage.js +5 -1
- package/lib/storage/index.js +7 -1
- package/lib/utils/emitter.js +5 -1
- package/lib/utils/index.js +15 -1
- package/lib/utils/json.js +9 -0
- package/lib/utils/object.js +9 -3
- package/package.json +29 -29
- package/src/app/Application.js +28 -5
- package/src/app/Validator.js +2 -1
- package/src/cli/db/listAssetConfig.js +3 -1
- package/src/controllers/AdminController.js +3 -2
- package/src/controllers/ControllerAction.js +7 -5
- package/src/decorators/parameters.js +2 -2
- package/src/decorators/returns.js +2 -2
- package/src/errors/DatabaseError.js +2 -23
- package/src/errors/ResponseError.js +1 -8
- package/src/models/Model.js +13 -8
- package/src/utils/index.js +1 -0
- package/src/utils/json.js +3 -0
package/lib/graph/expression.js
CHANGED
|
@@ -5,6 +5,10 @@ exports.collectExpressionPaths = collectExpressionPaths;
|
|
|
5
5
|
exports.expressionPathToString = expressionPathToString;
|
|
6
6
|
exports.modelGraphToExpression = modelGraphToExpression;
|
|
7
7
|
|
|
8
|
+
require("core-js/modules/esnext.async-iterator.map.js");
|
|
9
|
+
|
|
10
|
+
require("core-js/modules/esnext.iterator.map.js");
|
|
11
|
+
|
|
8
12
|
var _utils = require("@ditojs/utils");
|
|
9
13
|
|
|
10
14
|
function collectExpressionPaths(expr) {
|
|
@@ -69,4 +73,4 @@ function modelGraphToExpression(modelGraph, expr) {
|
|
|
69
73
|
|
|
70
74
|
return expr;
|
|
71
75
|
}
|
|
72
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ncmFwaC9leHByZXNzaW9uLmpzIl0sIm5hbWVzIjpbImNvbGxlY3RFeHByZXNzaW9uUGF0aHMiLCJleHByIiwicGF0aHMiLCJrZXkiLCJPYmplY3QiLCJrZXlzIiwiY2hpbGQiLCJyZWxhdGlvbiIsIiRyZWxhdGlvbiIsImFsaWFzIiwidW5kZWZpbmVkIiwibW9kaWZ5IiwiJG1vZGlmeSIsImVudHJ5Iiwic3ViUGF0aHMiLCJsZW5ndGgiLCJzdWJQYXRoIiwicHVzaCIsImV4cHJlc3Npb25QYXRoVG9TdHJpbmciLCJwYXRoIiwic3RhcnQiLCJzbGljZSIsIm1hcCIsImpvaW4iLCJtb2RlbEdyYXBoVG9FeHByZXNzaW9uIiwibW9kZWxHcmFwaCIsIm1vZGVsIiwicmVsYXRpb25zIiwiY29uc3RydWN0b3IiLCJnZXRSZWxhdGlvbnMiLCJuYW1lIiwidmFsdWVzIiwiaGFzT3duUHJvcGVydHkiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBRU8sU0FBU0Esc0JBQVQsQ0FBZ0NDLElBQWhDLEVBQXNDO0FBQzNDLFFBQU1DLEtBQUssR0FBRyxFQUFkOztBQUNBLE9BQUssTUFBTUMsR0FBWCxJQUFrQkMsTUFBTSxDQUFDQyxJQUFQLENBQVlKLElBQVosQ0FBbEIsRUFBcUM7QUFDbkMsVUFBTUssS0FBSyxHQUFHTCxJQUFJLENBQUNFLEdBQUQsQ0FBbEI7O0FBQ0EsUUFBSSxxQkFBU0csS0FBVCxDQUFKLEVBQXFCO0FBQ25CLFlBQU1DLFFBQVEsR0FBR0QsS0FBSyxDQUFDRSxTQUFOLElBQW1CTCxHQUFwQztBQUNBLFlBQU1NLEtBQUssR0FBR0YsUUFBUSxLQUFLSixHQUFiLEdBQW1CQSxHQUFuQixHQUF5Qk8sU0FBdkM7QUFDQSxZQUFNQyxNQUFNLEdBQUdMLEtBQUssQ0FBQ00sT0FBckI7QUFDQSxZQUFNQyxLQUFLLEdBQUc7QUFBRU4sUUFBQUEsUUFBRjtBQUFZRSxRQUFBQSxLQUFaO0FBQW1CRSxRQUFBQTtBQUFuQixPQUFkO0FBQ0EsWUFBTUcsUUFBUSxHQUFHZCxzQkFBc0IsQ0FBQ00sS0FBRCxDQUF2Qzs7QUFDQSxVQUFJUSxRQUFRLENBQUNDLE1BQVQsR0FBa0IsQ0FBdEIsRUFBeUI7QUFFdkIsYUFBSyxNQUFNQyxPQUFYLElBQXNCRixRQUF0QixFQUFnQztBQUM5QlosVUFBQUEsS0FBSyxDQUFDZSxJQUFOLENBQVcsQ0FBQ0osS0FBRCxFQUFRLEdBQUdHLE9BQVgsQ0FBWDtBQUNEO0FBQ0YsT0FMRCxNQUtPO0FBRUxkLFFBQUFBLEtBQUssQ0FBQ2UsSUFBTixDQUFXLENBQUNKLEtBQUQsQ0FBWDtBQUNEO0FBQ0Y7QUFDRjs7QUFDRCxTQUFPWCxLQUFQO0FBQ0Q7O0FBRU0sU0FBU2dCLHNCQUFULENBQWdDQyxJQUFoQyxFQUFzQ0MsS0FBSyxHQUFHLENBQTlDLEVBQWlEO0FBQ3RELFNBQU8sQ0FBQ0EsS0FBSyxHQUFHRCxJQUFJLENBQUNFLEtBQUwsQ0FBV0QsS0FBWCxDQUFILEdBQXVCRCxJQUE3QixFQUNKRyxHQURJLENBRUgsQ0FBQztBQUFFZixJQUFBQSxRQUFGO0FBQVlFLElBQUFBLEtBQVo7QUFBbUJFLElBQUFBO0FBQW5CLEdBQUQsS0FBaUM7QUFDL0IsVUFBTVYsSUFBSSxHQUFHUSxLQUFLLEdBQUksR0FBRUYsUUFBUyxPQUFNRSxLQUFNLEVBQTNCLEdBQStCRixRQUFqRDtBQUNBLFdBQU9JLE1BQU0sQ0FBQ0ksTUFBUCxHQUFnQixDQUFoQixHQUNGLEdBQUVkLElBQUssSUFBR1UsTUFBTSxDQUFDWSxJQUFQLENBQVksSUFBWixDQUFrQixHQUQxQixHQUVIdEIsSUFGSjtBQUdELEdBUEUsRUFTSnNCLElBVEksQ0FTQyxHQVRELENBQVA7QUFVRDs7QUFFTSxTQUFTQyxzQkFBVCxDQUFnQ0MsVUFBaEMsRUFBNEN4QixJQUE1QyxFQUFrRDtBQUN2RCxNQUFJd0IsVUFBSixFQUFnQjtBQUNkeEIsSUFBQUEsSUFBSSxHQUFHQSxJQUFJLElBQUksRUFBZjs7QUFDQSxTQUFLLE1BQU15QixLQUFYLElBQW9CLG9CQUFRRCxVQUFSLENBQXBCLEVBQXlDO0FBQ3ZDLFVBQUlDLEtBQUosRUFBVztBQUNULGNBQU1DLFNBQVMsR0FBR0QsS0FBSyxDQUFDRSxXQUFOLENBQWtCQyxZQUFsQixFQUFsQjs7QUFDQSxhQUFLLE1BQU07QUFBRUMsVUFBQUE7QUFBRixTQUFYLElBQXVCMUIsTUFBTSxDQUFDMkIsTUFBUCxDQUFjSixTQUFkLENBQXZCLEVBQWlEO0FBQy9DLGNBQUlELEtBQUssQ0FBQ00sY0FBTixDQUFxQkYsSUFBckIsQ0FBSixFQUFnQztBQUM5QjdCLFlBQUFBLElBQUksQ0FBQzZCLElBQUQsQ0FBSixHQUFhTixzQkFBc0IsQ0FBQ0UsS0FBSyxDQUFDSSxJQUFELENBQU4sRUFBYzdCLElBQUksQ0FBQzZCLElBQUQsQ0FBbEIsQ0FBbkM7QUFDRDtBQUNGO0FBQ0Y7QUFDRjtBQUNGOztBQUNELFNBQU83QixJQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc09iamVjdCwgYXNBcnJheSB9IGZyb20gJ0BkaXRvanMvdXRpbHMnXG5cbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0RXhwcmVzc2lvblBhdGhzKGV4cHIpIHtcbiAgY29uc3QgcGF0aHMgPSBbXVxuICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhleHByKSkge1xuICAgIGNvbnN0IGNoaWxkID0gZXhwcltrZXldXG4gICAgaWYgKGlzT2JqZWN0KGNoaWxkKSkge1xuICAgICAgY29uc3QgcmVsYXRpb24gPSBjaGlsZC4kcmVsYXRpb24gfHwga2V5XG4gICAgICBjb25zdCBhbGlhcyA9IHJlbGF0aW9uICE9PSBrZXkgPyBrZXkgOiB1bmRlZmluZWRcbiAgICAgIGNvbnN0IG1vZGlmeSA9IGNoaWxkLiRtb2RpZnlcbiAgICAgIGNvbnN0IGVudHJ5ID0geyByZWxhdGlvbiwgYWxpYXMsIG1vZGlmeSB9XG4gICAgICBjb25zdCBzdWJQYXRocyA9IGNvbGxlY3RFeHByZXNzaW9uUGF0aHMoY2hpbGQpXG4gICAgICBpZiAoc3ViUGF0aHMubGVuZ3RoID4gMCkge1xuICAgICAgICAvLyBUaGUgY2hpbGQgaGFzIGl0c2VsZiBjaGlsZHJlbi5cbiAgICAgICAgZm9yIChjb25zdCBzdWJQYXRoIG9mIHN1YlBhdGhzKSB7XG4gICAgICAgICAgcGF0aHMucHVzaChbZW50cnksIC4uLnN1YlBhdGhdKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBUaGUgY2hpbGQgaXMgYSBsZWFmLlxuICAgICAgICBwYXRocy5wdXNoKFtlbnRyeV0pXG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBwYXRoc1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXhwcmVzc2lvblBhdGhUb1N0cmluZyhwYXRoLCBzdGFydCA9IDApIHtcbiAgcmV0dXJuIChzdGFydCA/IHBhdGguc2xpY2Uoc3RhcnQpIDogcGF0aClcbiAgICAubWFwKFxuICAgICAgKHsgcmVsYXRpb24sIGFsaWFzLCBtb2RpZnkgfSkgPT4ge1xuICAgICAgICBjb25zdCBleHByID0gYWxpYXMgPyBgJHtyZWxhdGlvbn0gYXMgJHthbGlhc31gIDogcmVsYXRpb25cbiAgICAgICAgcmV0dXJuIG1vZGlmeS5sZW5ndGggPiAwXG4gICAgICAgICAgPyBgJHtleHByfSgke21vZGlmeS5qb2luKCcsICcpfSlgXG4gICAgICAgICAgOiBleHByXG4gICAgICB9XG4gICAgKVxuICAgIC5qb2luKCcuJylcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1vZGVsR3JhcGhUb0V4cHJlc3Npb24obW9kZWxHcmFwaCwgZXhwcikge1xuICBpZiAobW9kZWxHcmFwaCkge1xuICAgIGV4cHIgPSBleHByIHx8IHt9XG4gICAgZm9yIChjb25zdCBtb2RlbCBvZiBhc0FycmF5KG1vZGVsR3JhcGgpKSB7XG4gICAgICBpZiAobW9kZWwpIHtcbiAgICAgICAgY29uc3QgcmVsYXRpb25zID0gbW9kZWwuY29uc3RydWN0b3IuZ2V0UmVsYXRpb25zKClcbiAgICAgICAgZm9yIChjb25zdCB7IG5hbWUgfSBvZiBPYmplY3QudmFsdWVzKHJlbGF0aW9ucykpIHtcbiAgICAgICAgICBpZiAobW9kZWwuaGFzT3duUHJvcGVydHkobmFtZSkpIHtcbiAgICAgICAgICAgIGV4cHJbbmFtZV0gPSBtb2RlbEdyYXBoVG9FeHByZXNzaW9uKG1vZGVsW25hbWVdLCBleHByW25hbWVdKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gZXhwclxufVxuIl19
|
package/lib/graph/graph.js
CHANGED
|
@@ -3,12 +3,18 @@
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.ensureModel = ensureModel;
|
|
5
5
|
exports.ensureModelArray = ensureModelArray;
|
|
6
|
-
exports.walkGraph = walkGraph;
|
|
7
6
|
exports.filterGraph = filterGraph;
|
|
8
7
|
exports.populateGraph = populateGraph;
|
|
8
|
+
exports.walkGraph = walkGraph;
|
|
9
|
+
|
|
10
|
+
require("core-js/modules/esnext.async-iterator.map.js");
|
|
11
|
+
|
|
12
|
+
require("core-js/modules/esnext.iterator.map.js");
|
|
9
13
|
|
|
10
14
|
require("core-js/modules/esnext.map.delete-all.js");
|
|
11
15
|
|
|
16
|
+
require("core-js/modules/esnext.map.emplace.js");
|
|
17
|
+
|
|
12
18
|
require("core-js/modules/esnext.map.every.js");
|
|
13
19
|
|
|
14
20
|
require("core-js/modules/esnext.map.filter.js");
|
|
@@ -33,6 +39,16 @@ require("core-js/modules/esnext.map.some.js");
|
|
|
33
39
|
|
|
34
40
|
require("core-js/modules/esnext.map.update.js");
|
|
35
41
|
|
|
42
|
+
require("core-js/modules/esnext.async-iterator.reduce.js");
|
|
43
|
+
|
|
44
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
45
|
+
|
|
46
|
+
require("core-js/modules/esnext.iterator.reduce.js");
|
|
47
|
+
|
|
48
|
+
require("core-js/modules/esnext.async-iterator.filter.js");
|
|
49
|
+
|
|
50
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
|
51
|
+
|
|
36
52
|
var _utils = require("@ditojs/utils");
|
|
37
53
|
|
|
38
54
|
var _query = require("../query");
|
|
@@ -281,4 +297,4 @@ async function populateGraph(rootModelClass, graph, expr, trx) {
|
|
|
281
297
|
|
|
282
298
|
return graph;
|
|
283
299
|
}
|
|
284
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ncmFwaC9ncmFwaC5qcyJdLCJuYW1lcyI6WyJlbnN1cmVNb2RlbCIsIm1vZGVsQ2xhc3MiLCJtb2RlbCIsIm9wdGlvbnMiLCJwYXJzZVJlbGF0aW9uc0ludG9Nb2RlbEluc3RhbmNlcyIsImZyb21Kc29uIiwiZW5zdXJlTW9kZWxBcnJheSIsImRhdGEiLCJtYXAiLCJqc29uIiwiY2FjaGUiLCJNYXAiLCJzZXQiLCJyZWxhdGlvbk5hbWUiLCJjb25zdHJ1Y3RvciIsImdldFJlbGF0aW9uTmFtZXMiLCJqc29uUmVsYXRpb24iLCJ1bmRlZmluZWQiLCJyZWxhdGlvbiIsImdldFJlbGF0aW9uIiwicGFyc2VkUmVsYXRpb24iLCJwYXJzZVJlbGF0aW9uIiwibmFtZSIsInBhcnNlUmVsYXRpb25BcnJheSIsInBhcnNlUmVsYXRpb25PYmplY3QiLCJtb2RlbHMiLCJBcnJheSIsImxlbmd0aCIsImNoYW5nZWQiLCJpIiwibCIsInJlbGF0ZWRNb2RlbENsYXNzIiwiZ2V0Iiwid2Fsa0dyYXBoIiwiY2FsbGJhY2siLCJwYXRoIiwia2V5IiwidmFsdWUiLCJPYmplY3QiLCJlbnRyaWVzIiwiZGF0YVBhdGgiLCJmaWx0ZXJHcmFwaCIsInJvb3RNb2RlbENsYXNzIiwibW9kZWxHcmFwaCIsImV4cHIiLCJRdWVyeUJ1aWxkZXIiLCJwYXJzZVJlbGF0aW9uRXhwcmVzc2lvbiIsInNraXBWYWxpZGF0aW9uIiwicmVsYXRpb25zIiwiZ2V0UmVsYXRpb25zIiwia2V5cyIsImNoaWxkIiwicG9wdWxhdGVHcmFwaCIsImdyYXBoIiwidHJ4IiwiZ3JvdXBlZCIsImFkZFRvR3JvdXAiLCJpdGVtIiwiaXNSZWZlcmVuY2UiLCJtb2RpZnkiLCJpZCIsIiRpZCIsImdyb3VwIiwidGFyZ2V0cyIsImlkcyIsIm1vZGVsc0J5SWQiLCJwdXNoIiwibW9kZWxDbGFzc2VzIiwibGFzdE1vZGlmeSIsImVudHJ5IiwiaXRlbXMiLCJyZWR1Y2UiLCJhZGQiLCJncm91cHMiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJQcm9taXNlIiwiYWxsIiwicXVlcnkiLCJmaW5kQnlJZHMiLCJ3aXRoR3JhcGgiLCJhc3NpZ24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBR08sU0FBU0EsV0FBVCxDQUFxQkMsVUFBckIsRUFBaUNDLEtBQWpDLEVBQXdDQyxPQUF4QyxFQUFpRDtBQUN0RCxTQUFPLENBQUNELEtBQUQsR0FDSCxJQURHLEdBRUhBLEtBQUssWUFBWUQsVUFBakIsR0FDRUcsZ0NBQWdDLENBQUNGLEtBQUQsRUFBUUEsS0FBUixFQUFlQyxPQUFmLENBRGxDLEdBRUVGLFVBQVUsQ0FBQ0ksUUFBWCxDQUFvQkgsS0FBcEIsRUFBMkJDLE9BQTNCLENBSk47QUFLRDs7QUFHTSxTQUFTRyxnQkFBVCxDQUEwQkwsVUFBMUIsRUFBc0NNLElBQXRDLEVBQTRDSixPQUE1QyxFQUFxRDtBQUMxRCxTQUFPSSxJQUFJLEdBQ1Asb0JBQVFBLElBQVIsRUFBY0MsR0FBZCxDQUFrQk4sS0FBSyxJQUFJRixXQUFXLENBQUNDLFVBQUQsRUFBYUMsS0FBYixFQUFvQkMsT0FBcEIsQ0FBdEMsQ0FETyxHQUVQLEVBRko7QUFHRDs7QUFFRCxTQUFTQyxnQ0FBVCxDQUEwQ0YsS0FBMUMsRUFBaURPLElBQWpELEVBQXVETixPQUFPLEdBQUcsRUFBakUsRUFBcUU7QUFDbkUsTUFBSSxDQUFDQSxPQUFPLENBQUNPLEtBQWIsRUFBb0I7QUFDbEJQLElBQUFBLE9BQU8sR0FBRyxFQUFFLEdBQUdBLE9BQUw7QUFBY08sTUFBQUEsS0FBSyxFQUFFLElBQUlDLEdBQUo7QUFBckIsS0FBVjtBQUNEOztBQUNEUixFQUFBQSxPQUFPLENBQUNPLEtBQVIsQ0FBY0UsR0FBZCxDQUFrQkgsSUFBbEIsRUFBd0JQLEtBQXhCOztBQUVBLE9BQUssTUFBTVcsWUFBWCxJQUEyQlgsS0FBSyxDQUFDWSxXQUFOLENBQWtCQyxnQkFBbEIsRUFBM0IsRUFBaUU7QUFDL0QsVUFB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O0FBQ0EsWUFBSTNELEtBQUosRUFBVztBQUNULGNBQUl3RCxXQUFKLEVBQWlCO0FBRWZwQixZQUFBQSxNQUFNLENBQUMyQyxNQUFQLENBQWN4QixJQUFkLEVBQW9CdkQsS0FBcEI7QUFDRCxXQUhELE1BR087QUFFTHVELFlBQUFBLElBQUksQ0FBQ3ZDLFFBQUQsQ0FBSixHQUFpQmhCLEtBQUssQ0FBQ2dCLFFBQUQsQ0FBdEI7QUFDRDtBQUNGO0FBQ0Y7QUFDRjtBQUNGOztBQUVELFNBQU9tQyxLQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc09iamVjdCwgaXNBcnJheSwgYXNBcnJheSB9IGZyb20gJ0BkaXRvanMvdXRpbHMnXG5pbXBvcnQgeyBRdWVyeUJ1aWxkZXIgfSBmcm9tICdAL3F1ZXJ5J1xuaW1wb3J0IHsgY29sbGVjdEV4cHJlc3Npb25QYXRocywgZXhwcmVzc2lvblBhdGhUb1N0cmluZyB9IGZyb20gJy4vZXhwcmVzc2lvbi5qcydcblxuLy8gU2ltaWxhciB0byBPYmplY3Rpb24ncyBwcml2YXRlIGBtb2RlbENsYXNzLmVuc3VyZU1vZGVsKG1vZGVsKWA6XG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlTW9kZWwobW9kZWxDbGFzcywgbW9kZWwsIG9wdGlvbnMpIHtcbiAgcmV0dXJuICFtb2RlbFxuICAgID8gbnVsbFxuICAgIDogbW9kZWwgaW5zdGFuY2VvZiBtb2RlbENsYXNzXG4gICAgICA/IHBhcnNlUmVsYXRpb25zSW50b01vZGVsSW5zdGFuY2VzKG1vZGVsLCBtb2RlbCwgb3B0aW9ucylcbiAgICAgIDogbW9kZWxDbGFzcy5mcm9tSnNvbihtb2RlbCwgb3B0aW9ucylcbn1cblxuLy8gU2ltaWxhciB0byBPYmplY3Rpb24ncyBwcml2YXRlIGBtb2RlbENsYXNzLmVuc3VyZU1vZGVsQXJyYXkoZGF0YSlgOlxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZU1vZGVsQXJyYXkobW9kZWxDbGFzcywgZGF0YSwgb3B0aW9ucykge1xuICByZXR1cm4gZGF0YVxuICAgID8gYXNBcnJheShkYXRhKS5tYXAobW9kZWwgPT4gZW5zdXJlTW9kZWwobW9kZWxDbGFzcywgbW9kZWwsIG9wdGlvbnMpKVxuICAgIDogW11cbn1cblxuZnVuY3Rpb24gcGFyc2VSZWxhdGlvbnNJbnRvTW9kZWxJbnN0YW5jZXMobW9kZWwsIGpzb24sIG9wdGlvbnMgPSB7fSkge1xuICBpZiAoIW9wdGlvbnMuY2FjaGUpIHtcbiAgICBvcHRpb25zID0geyAuLi5vcHRpb25zLCBjYWNoZTogbmV3IE1hcCgpIH1cbiAgfVxuICBvcHRpb25zLmNhY2hlLnNldChqc29uLCBtb2RlbClcblxuICBmb3IgKGNvbnN0IHJlbGF0aW9uTmFtZSBvZiBtb2RlbC5jb25zdHJ1Y3Rvci5nZXRSZWxhdGlvbk5hbWVzKCkpIHtcbiAgICBjb25zdCBqc29uUmVsYXRpb24gPSBqc29uW3JlbGF0aW9uTmFtZV1cbiAgICBpZiAoanNvblJlbGF0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IHJlbGF0aW9uID0gbW9kZWwuY29uc3RydWN0b3IuZ2V0UmVsYXRpb24ocmVsYXRpb25OYW1lKVxuICAgICAgY29uc3QgcGFyc2VkUmVsYXRpb24gPSBwYXJzZVJlbGF0aW9uKGpzb25SZWxhdGlvbiwgcmVsYXRpb24sIG9wdGlvbnMpXG4gICAgICBpZiAocGFyc2VkUmVsYXRpb24gIT09IGpzb25SZWxhdGlvbikge1xuICAgICAgICBtb2RlbFtyZWxhdGlvbi5uYW1lXSA9IHBhcnNlZFJlbGF0aW9uXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1vZGVsXG59XG5cbmZ1bmN0aW9uIHBhcnNlUmVsYXRpb24oanNvbiwgcmVsYXRpb24sIG9wdGlvbnMpIHtcbiAgcmV0dXJuIGlzQXJyYXkoanNvbilcbiAgICA/IHBhcnNlUmVsYXRpb25BcnJheShqc29uLCByZWxhdGlvbiwgb3B0aW9ucylcbiAgICA6IHBhcnNlUmVsYXRpb25PYmplY3QoanNvbiwgcmVsYXRpb24sIG9wdGlvbnMpXG59XG5cbmZ1bmN0aW9uIHBhcnNlUmVsYXRpb25BcnJheShqc29uLCByZWxhdGlvbiwgb3B0aW9ucykge1xuICBjb25zdCBtb2RlbHMgPSBuZXcgQXJyYXkoanNvbi5sZW5ndGgpXG4gIGxldCBjaGFuZ2VkID0gZmFsc2VcbiAgZm9yIChsZXQgaSA9IDAsIGwgPSBqc29uLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgIGNvbnN0IG1vZGVsID0gcGFyc2VSZWxhdGlvbk9iamVjdChqc29uW2ldLCByZWxhdGlvbiwgb3B0aW9ucylcbiAgICBjaGFuZ2VkID0gY2hhbmdlZCB8fCAobW9kZWwgIT09IGpzb25baV0pXG4gICAgbW9kZWxzW2ldID0gbW9kZWxcbiAgfVxuICByZXR1cm4gY2hhbmdlZCA/IG1vZGVscyA6IGpzb25cbn1cblxuZnVuY3Rpb24gcGFyc2VSZWxhdGlvbk9iamVjdChqc29uLCByZWxhdGlvbiwgb3B0aW9ucykge1xuICBpZiAoaXNPYmplY3QoanNvbikpIHtcbiAgICBjb25zdCBtb2RlbENsYXNzID0gcmVsYXRpb24ucmVsYXRlZE1vZGVsQ2xhc3NcbiAgICBsZXQgbW9kZWwgPSBvcHRpb25zLmNhY2hlLmdldChqc29uKVxuICAgIGlmIChtb2RlbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBpZiAoanNvbiBpbnN0YW5jZW9mIG1vZGVsQ2xhc3MpIHtcbiAgICAgICAgbW9kZWwgPSBwYXJzZVJlbGF0aW9uc0ludG9Nb2RlbEluc3RhbmNlcyhqc29uLCBqc29uLCBvcHRpb25zKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbW9kZWwgPSBtb2RlbENsYXNzLmZyb21Kc29uKGpzb24sIG9wdGlvbnMpXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtb2RlbFxuICB9XG4gIHJldHVybiBqc29uXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3YWxrR3JhcGgoZGF0YSwgY2FsbGJhY2ssIHBhdGggPSBbXSkge1xuICBpZiAoaXNPYmplY3QoZGF0YSkgfHwgaXNBcnJheShkYXRhKSkge1xuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRhdGEpKSB7XG4gICAgICBjb25zdCBkYXRhUGF0aCA9IFsuLi5wYXRoLCBrZXldXG4gICAgICBjYWxsYmFjayh2YWx1ZSwgZGF0YVBhdGgsIGRhdGEsIGtleSlcbiAgICAgIHdhbGtHcmFwaCh2YWx1ZSwgY2FsbGJhY2ssIGRhdGFQYXRoKVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyR3JhcGgocm9vdE1vZGVsQ2xhc3MsIG1vZGVsR3JhcGgsIGV4cHIpIHtcbiAgZXhwciA9IFF1ZXJ5QnVpbGRlci5wYXJzZVJlbGF0aW9uRXhwcmVzc2lvbihleHByKVxuICBjb25zdCBtb2RlbHMgPSBlbnN1cmVNb2RlbEFycmF5KHJvb3RNb2RlbENsYXNzLCBtb2RlbEdyYXBoLCB7XG4gICAgc2tpcFZhbGlkYXRpb246IHRydWVcbiAgfSlcbiAgZm9yIChjb25zdCBtb2RlbCBvZiBtb2RlbHMpIHtcbiAgICBpZiAobW9kZWwpIHtcbiAgICAgIGNvbnN0IHJlbGF0aW9ucyA9IG1vZGVsLmNvbnN0cnVjdG9yLmdldFJlbGF0aW9ucygpXG4gICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhtb2RlbCkpIHtcbiAgICAgICAgY29uc3QgcmVsYXRpb24gPSByZWxhdGlvbnNba2V5XVxuICAgICAgICBpZiAocmVsYXRpb24pIHtcbiAgICAgICAgICBjb25zdCBjaGlsZCA9IGV4cHJba2V5XVxuICAgICAgICAgIGlmIChjaGlsZCkge1xuICAgICAgICAgICAgLy8gQWxsb3dlZCByZWxhdGlvbiwga2VlcCBmaWx0ZXJpbmcgcmVjdXJzaXZlbHk6XG4gICAgICAgICAgICBmaWx0ZXJHcmFwaChcbiAgICAgICAgICAgICAgcmVsYXRpb24ucmVsYXRlZE1vZGVsQ2xhc3MsXG4gICAgICAgICAgICAgIG1vZGVsW2tleV0sXG4gICAgICAgICAgICAgIGNoaWxkXG4gICAgICAgICAgICApXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIERpc2FsbG93ZWQgcmVsYXRpb24sIGRlbGV0ZTpcbiAgICAgICAgICAgIGRlbGV0ZSBtb2RlbFtrZXldXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBtb2RlbEdyYXBoXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3B1bGF0ZUdyYXBoKHJvb3RNb2RlbENsYXNzLCBncmFwaCwgZXhwciwgdHJ4KSB7XG4gIC8vIFRPRE86IE9wdGltaXplIHRoZSBzY2VuYXJpbyB3aGVyZSBhbiBpdGVtIHRoYXQgaXNuJ3QgYSBsZWFmIGlzIGFcbiAgLy8gcmVmZXJlbmNlIGFuZCBoYXMgbXVsdGlwbGUgc3ViLXBhdGhzIHRvIGJlIHBvcHVsYXRlZC4gV2UgbWF5IG5lZWQgdG9cbiAgLy8gbW92ZSBhd2F5IGZyb20gZ3JhcGggcGF0aCBoYW5kbGluZyBhbmQgZGlyZWN0bHkgcHJvY2VzcyB0aGUgZXhwcmVzc2lvblxuICAvLyB0cmVlLCBjb21wb3NpbmcgcGF0aHMgdG8gdGhlIGN1cnJlbnQgcGxhY2Ugb24gdGhlIGZseSwgYW5kIHByb2Nlc3MgZGF0YVxuICAvLyB3aXRoIGFkZFRvR3JvdXAoKS4gVGhlbiB1c2UgdGhlIHN1Yi10cmVlIGFzIGdyYXBoIGV4cHJlc3Npb24gd2hlblxuICAvLyBlbmNvdW50ZXJpbmcgcmVmZXJlbmNlcyAobmVlZHMgdG9TdHJpbmcoKSBmb3IgY2FjaGluZyBhbHNvPylcbiAgLy8gVE9ETzogQmV0dGVyIGlkZWE6IEZpcnN0IGNhY2hlIGdyb3VwcyBieSB0aGUgcGF0aCB1cCB0byB0aGVpciBsb2NhdGlvbiBpblxuICAvLyB0aGUgZ3JhcGgsIGFuZCBjb2xsZWN0IG1vZGlmeSArIGdyYXBoIGV4cHJlc3Npb25zIHRoZXJlIGZvciByZWZlcmVuY2VzXG4gIC8vIHRoYXQgYXJlIG5vdCBsZWF2ZXMuIFRoZW4gdXNlIHRoZSByZXN1bHRpbmcgbm9kZXMgdG8gY3JlYXRlIG5ldyBncm91cHMgYnlcbiAgLy8gbW9kZWwgbmFtZSAvIG1vZGlmeSAvIGdyYXBoIGV4cHJlc3Npb25zLlxuICBleHByID0gUXVlcnlCdWlsZGVyLnBhcnNlUmVsYXRpb25FeHByZXNzaW9uKGV4cHIpXG4gIC8vIENvbnZlcnQgdGhlIHJlbGF0aW9uIGV4cHJlc3Npb24gdG8gYW4gYXJyYXkgb2YgcGF0aHMsIHRoYXQgdGhlbXNlbHZlc1xuICAvLyBjb250YWluIHBhdGggZW50cmllcyB3aXRoIHJlbGF0aW9uIG5hbWVzIGFuZCBtb2RpZnkgc2V0dGluZ3MuXG5cbiAgY29uc3QgZ3JvdXBlZCA9IHt9XG4gIGNvbnN0IGFkZFRvR3JvdXAgPVxuICAgIChpdGVtLCBtb2RlbENsYXNzLCBpc1JlZmVyZW5jZSwgbW9kaWZ5LCByZWxhdGlvbiwgZXhwcikgPT4ge1xuICAgICAgY29uc3QgaWQgPSBpdGVtLiRpZCgpXG4gICAgICBpZiAoaWQgIT0gbnVsbCkge1xuICAgICAgICAvLyBHcm91cCBtb2RlbHMgYnkgbW9kZWwtbmFtZSArIG1vZGlmeSArIGV4cHIsIGZvciBmYXN0ZXIgbG9hZGluZzpcbiAgICAgICAgY29uc3Qga2V5ID0gYCR7bW9kZWxDbGFzcy5uYW1lfV8ke21vZGlmeX1fJHtleHByIHx8ICcnfWBcbiAgICAgICAgY29uc3QgZ3JvdXAgPSBncm91cGVkW2tleV0gfHwgKGdyb3VwZWRba2V5XSA9IHtcbiAgICAgICAgICBtb2RlbENsYXNzLFxuICAgICAgICAgIG1vZGlmeSxcbiAgICAgICAgICByZWxhdGlvbixcbiAgICAgICAgICBleHByLFxuICAgICAgICAgIHRhcmdldHM6IFtdLFxuICAgICAgICAgIGlkczogW10sXG4gICAgICAgICAgbW9kZWxzQnlJZDoge31cbiAgICAgICAgfSlcbiAgICAgICAgZ3JvdXAudGFyZ2V0cy5wdXNoKHsgaXRlbSwgaXNSZWZlcmVuY2UgfSlcbiAgICAgICAgLy8gQ29sbGVjdCBpZHMgdG8gYmUgbG9hZGVkIGZvciB0aGUgdGFyZ2V0cy5cbiAgICAgICAgZ3JvdXAuaWRzLnB1c2goaWQpXG4gICAgICB9XG4gICAgfVxuXG4gIGZvciAoY29uc3QgcGF0aCBvZiBjb2xsZWN0RXhwcmVzc2lvblBhdGhzKGV4cHIpKSB7XG4gICAgbGV0IG1vZGVsQ2xhc3MgPSByb290TW9kZWxDbGFzc1xuICAgIGNvbnN0IG1vZGVsQ2xhc3NlcyA9IFtdXG4gICAgbGV0IGxhc3RNb2RpZnlcbiAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIHBhdGgpIHtcbiAgICAgIG1vZGVsQ2xhc3Nlcy5wdXNoKG1vZGVsQ2xhc3MpXG4gICAgICBtb2RlbENsYXNzID0gbW9kZWxDbGFzcy5nZXRSZWxhdGlvbihlbnRyeS5yZWxhdGlvbikucmVsYXRlZE1vZGVsQ2xhc3NcbiAgICAgIGxhc3RNb2RpZnkgPSBlbnRyeS5tb2RpZnlcbiAgICB9XG4gICAgZm9yIChjb25zdCBtb2RlbCBvZiBhc0FycmF5KGdyYXBoKSkge1xuICAgICAgaWYgKG1vZGVsKSB7XG4gICAgICAgIGxldCBpdGVtcyA9IGFzQXJyYXkobW9kZWwpXG4gICAgICAgIC8vIENvbGxlY3QgYWxsIGdyYXBoIGl0ZW1zIGRlc2NyaWJlZCBieSB0aGUgY3VycmVudCByZWxhdGlvbiBwYXRoIGluXG4gICAgICAgIC8vIG9uZSBsb29wOlxuICAgICAgICBmb3IgKGxldCBpID0gMCwgbCA9IHBhdGgubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICAgICAgaWYgKGl0ZW1zLmxlbmd0aCA9PT0gMCkgYnJlYWtcbiAgICAgICAgICBjb25zdCB7IHJlbGF0aW9uIH0gPSBwYXRoW2ldXG4gICAgICAgICAgY29uc3QgbW9kZWxDbGFzcyA9IG1vZGVsQ2xhc3Nlc1tpXVxuICAgICAgICAgIGl0ZW1zID0gaXRlbXMucmVkdWNlKChpdGVtcywgaXRlbSkgPT4ge1xuICAgICAgICAgICAgaXRlbSA9IGVuc3VyZU1vZGVsKG1vZGVsQ2xhc3MsIGl0ZW0sIHsgc2tpcFZhbGlkYXRpb246IHRydWUgfSlcbiAgICAgICAgICAgIGxldCBhZGQgPSBmYWxzZVxuICAgICAgICAgICAgY29uc3QgaXNSZWZlcmVuY2UgPSBtb2RlbENsYXNzLmlzUmVmZXJlbmNlKGl0ZW0pXG4gICAgICAgICAgICBpZiAoaXNSZWZlcmVuY2UpIHtcbiAgICAgICAgICAgICAgLy8gRGV0ZWN0ZWQgYSByZWZlcmVuY2UgaXRlbSB0aGF0IGlzbid0IGEgbGVhZjogV2UgbmVlZCB0b1xuICAgICAgICAgICAgICAvLyBlYWdlci1sb2FkIHRoZSByZXN0IG9mIHRoZSBwYXRoLCBhbmQgcmVzcGVjdCBtb2RpZnkgc2V0dGluZ3MuXG4gICAgICAgICAgICAgIGFkZCA9IHRydWVcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gaXRlbVtyZWxhdGlvbl1cbiAgICAgICAgICAgICAgLy8gQWRkIHRoZSBtb2RlbHMgb2YgdGhpcyByZWxhdGlvbiB0byBpdGVtcywgc28gdGhleSBjYW4gYmVcbiAgICAgICAgICAgICAgLy8gZmlsdGVyZWQgZnVydGhlciBpbiB0aGUgbmV4dCBpdGVyYXRpb24gb2YgdGhpcyBsb29wLlxuICAgICAgICAgICAgICBpZiAodmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGl0ZW1zLnB1c2goLi4uYXNBcnJheSh2YWx1ZSkpXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIC8vIElmIHRoZSBmdWxsIHJlbGF0aW9uIGlzIG1pc3NpbmcgdHJ5IGVhZ2VyLWxvYWRpbmcgaXQuXG4gICAgICAgICAgICAgICAgLy8gTk9URTogVmFsdWVzIG9mIGBudWxsYCBhcmUgcmVzcGVjdGVkIGhlcmUsIG5vdCBsb2FkZWQgYWdhaW4uXG4gICAgICAgICAgICAgICAgYWRkID0gdHJ1ZVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoYWRkKSB7XG4gICAgICAgICAgICAgIC8vIGBwYXRoW2ldLm1vZGlmeWAgaXMgdGhlIGN1cnJlbnQgcmVsYXRpb24ncyBtb2RpZnkgZXhwcmVzc2lvbixcbiAgICAgICAgICAgICAgLy8gZ2V0IHRoZSBwYXJlbnQgb25lIGZvciBgbW9kZWxDbGFzc2A6XG4gICAgICAgICAgICAgIGNvbnN0IG1vZGlmeSA9IGkgPiAwID8gcGF0aFtpIC0gMV0ubW9kaWZ5IDogbnVsbFxuICAgICAgICAgICAgICBjb25zdCBleHByID0gZXhwcmVzc2lvblBhdGhUb1N0cmluZyhwYXRoLCBpKVxuICAgICAgICAgICAgICBhZGRUb0dyb3VwKGl0ZW0sIG1vZGVsQ2xhc3MsIGlzUmVmZXJlbmNlLCBtb2RpZnksIHJlbGF0aW9uLCBleHByKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGl0ZW1zXG4gICAgICAgICAgfSwgW10pXG4gICAgICAgIH1cbiAgICAgICAgLy8gQWRkIGFsbCBlbmNvdW50ZXJlZCBsZWFmLXJlZmVyZW5jZXMgdG8gZ3JvdXBzIHRvIGJlIGxvYWRlZC5cbiAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgLy8gT25seSBsb2FkIGxlYWZzIHRoYXQgYXJlIHJlZmVyZW5jZXMuXG4gICAgICAgICAgaWYgKG1vZGVsQ2xhc3MuaXNSZWZlcmVuY2UoaXRlbSkpIHtcbiAgICAgICAgICAgIGFkZFRvR3JvdXAoaXRlbSwgbW9kZWxDbGFzcywgdHJ1ZSwgbGFzdE1vZGlmeSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjb25zdCBncm91cHMgPSBPYmplY3QudmFsdWVzKGdyb3VwZWQpLmZpbHRlcigoeyBpZHMgfSkgPT4gaWRzLmxlbmd0aCA+IDApXG4gIGlmIChncm91cHMubGVuZ3RoID4gMCkge1xuICAgIC8vIExvYWQgYWxsIGZvdW5kIG1vZGVscyBieSBpZHMgYXN5bmNocm9ub3VzbHksIHdpdGhpbiBwcm92aWRlZCB0cmFuc2FjdGlvbi5cbiAgICAvLyBOT1RFOiBVc2luZyB0aGUgc2FtZSB0cmFuc2FjdGlvbiBtZWFucyB0aGF0IGFsbCBpbnZvbHZlZCB0YWJsZXMgbmVlZCB0b1xuICAgIC8vIGJlIGluIHRoZSBzYW1lIGRhdGFiYXNlLlxuICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgZ3JvdXBzLm1hcChhc3luYyAoeyBtb2RlbENsYXNzLCBtb2RpZnksIGV4cHIsIGlkcywgbW9kZWxzQnlJZCB9KSA9PiB7XG4gICAgICAgIGNvbnN0IHF1ZXJ5ID0gbW9kZWxDbGFzcy5xdWVyeSh0cngpLmZpbmRCeUlkcyhpZHMpLm1vZGlmeShtb2RpZnkpXG4gICAgICAgIGlmIChleHByKSB7XG4gICAgICAgICAgLy8gVE9ETzogTWFrZSBhbGdvcml0aG0gY29uZmlndXJhYmxlIHRocm91Z2ggb3B0aW9ucy5cbiAgICAgICAgICBxdWVyeS53aXRoR3JhcGgoZXhwcilcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtb2RlbHMgPSBhd2FpdCBxdWVyeVxuICAgICAgICAvLyBGaWxsIHRoZSBncm91cC5tb2RlbHNCeUlkIGxvb2t1cDpcbiAgICAgICAgZm9yIChjb25zdCBtb2RlbCBvZiBtb2RlbHMpIHtcbiAgICAgICAgICBtb2RlbHNCeUlkW21vZGVsLiRpZCgpXSA9IG1vZGVsXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKVxuXG4gICAgLy8gRmluYWxseSBwb3B1bGF0ZSB0aGUgdGFyZ2V0cyB3aXRoIHRoZSBsb2FkZWQgbW9kZWxzLlxuICAgIGZvciAoY29uc3QgeyB0YXJnZXRzLCBtb2RlbHNCeUlkLCByZWxhdGlvbiB9IG9mIGdyb3Vwcykge1xuICAgICAgZm9yIChjb25zdCB7IGl0ZW0sIGlzUmVmZXJlbmNlIH0gb2YgdGFyZ2V0cykge1xuICAgICAgICBjb25zdCBtb2RlbCA9IG1vZGVsc0J5SWRbaXRlbS4kaWQoKV1cbiAgICAgICAgaWYgKG1vZGVsKSB7XG4gICAgICAgICAgaWYgKGlzUmVmZXJlbmNlKSB7XG4gICAgICAgICAgICAvLyBDb3B5IG92ZXIgdGhlIGZ1bGwgaXRlbS5cbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oaXRlbSwgbW9kZWwpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEp1c3QgY29weSB0aGUgZWFnZXItbG9hZGVkIHJlbGF0aW9uLlxuICAgICAgICAgICAgaXRlbVtyZWxhdGlvbl0gPSBtb2RlbFtyZWxhdGlvbl1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gZ3JhcGhcbn1cbiJdfQ==
|
|
300
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ncmFwaC9ncmFwaC5qcyJdLCJuYW1lcyI6WyJlbnN1cmVNb2RlbCIsIm1vZGVsQ2xhc3MiLCJtb2RlbCIsIm9wdGlvbnMiLCJwYXJzZVJlbGF0aW9uc0ludG9Nb2RlbEluc3RhbmNlcyIsImZyb21Kc29uIiwiZW5zdXJlTW9kZWxBcnJheSIsImRhdGEiLCJtYXAiLCJqc29uIiwiY2FjaGUiLCJNYXAiLCJzZXQiLCJyZWxhdGlvbk5hbWUiLCJjb25zdHJ1Y3RvciIsImdldFJlbGF0aW9uTmFtZXMiLCJqc29uUmVsYXRpb24iLCJ1bmRlZmluZWQiLCJyZWxhdGlvbiIsImdldFJlbGF0aW9uIiwicGFyc2VkUmVsYXRpb24iLCJwYXJzZVJlbGF0aW9uIiwibmFtZSIsInBhcnNlUmVsYXRpb25BcnJheSIsInBhcnNlUmVsYXRpb25PYmplY3QiLCJtb2RlbHMiLCJBcnJheSIsImxlbmd0aCIsImNoYW5nZWQiLCJpIiwibCIsInJlbGF0ZWRNb2RlbENsYXNzIiwiZ2V0Iiwid2Fsa0dyYXBoIiwiY2FsbGJhY2siLCJwYXRoIiwia2V5IiwidmFsdWUiLCJPYmplY3QiLCJlbnRyaWVzIiwiZGF0YVBhdGgiLCJmaWx0ZXJHcmFwaCIsInJvb3RNb2RlbENsYXNzIiwibW9kZWxHcmFwaCIsImV4cHIiLCJRdWVyeUJ1aWxkZXIiLCJwYXJzZVJlbGF0aW9uRXhwcmVzc2lvbiIsInNraXBWYWxpZGF0aW9uIiwicmVsYXRpb25zIiwiZ2V0UmVsYXRpb25zIiwia2V5cyIsImNoaWxkIiwicG9wdWxhdGVHcmFwaCIsImdyYXBoIiwidHJ4IiwiZ3JvdXBlZCIsImFkZFRvR3JvdXAiLCJpdGVtIiwiaXNSZWZlcmVuY2UiLCJtb2RpZnkiLCJpZCIsIiRpZCIsImdyb3VwIiwidGFyZ2V0cyIsImlkcyIsIm1vZGVsc0J5SWQiLCJwdXNoIiwibW9kZWxDbGFzc2VzIiwibGFzdE1vZGlmeSIsImVudHJ5IiwiaXRlbXMiLCJyZWR1Y2UiLCJhZGQiLCJncm91cHMiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJQcm9taXNlIiwiYWxsIiwicXVlcnkiLCJmaW5kQnlJZHMiLCJ3aXRoR3JhcGgiLCJhc3NpZ24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUdPLFNBQVNBLFdBQVQsQ0FBcUJDLFVBQXJCLEVBQWlDQyxLQUFqQyxFQUF3Q0MsT0FBeEMsRUFBaUQ7QUFDdEQsU0FBTyxDQUFDRCxLQUFELEdBQ0gsSUFERyxHQUVIQSxLQUFLLFlBQVlELFVBQWpCLEdBQ0VHLGdDQUFnQyxDQUFDRixLQUFELEVBQVFBLEtBQVIsRUFBZUMsT0FBZixDQURsQyxHQUVFRixVQUFVLENBQUNJLFFBQVgsQ0FBb0JILEtBQXBCLEVBQTJCQyxPQUEzQixDQUpOO0FBS0Q7O0FBR00sU0FBU0csZ0JBQVQsQ0FBMEJMLFVBQTFCLEVBQXNDTSxJQUF0QyxFQUE0Q0osT0FBNUMsRUFBcUQ7QUFDMUQsU0FBT0ksSUFBSSxHQUNQLG9CQUFRQSxJQUFSLEVBQWNDLEdBQWQsQ0FBa0JOLEtBQUssSUFBSUYsV0FBVyxDQUFDQyxVQUFELEVBQWFDLEtBQWIsRUFBb0JDLE9BQXBCLENBQXRDLENBRE8sR0FFUCxFQUZKO0FBR0Q7O0FBRUQsU0FBU0MsZ0NBQVQsQ0FBMENGLEtBQTFDLEVBQWlETyxJQUFqRCxFQUF1RE4sT0FBTyxHQUFHLEVBQWpFLEVBQXFFO0FBQ25FLE1BQUksQ0FBQ0EsT0FBTyxDQUFDTyxLQUFiLEVBQW9CO0FBQ2xCUCxJQUFBQSxPQUFPLEdBQUcsRUFBRSxHQUFHQSxPQUFMO0FBQWNPLE1BQUFBLEtBQUssRUFBRSxJQUFJQyxHQUFKO0FBQXJCLEtBQVY7QUFDRDs7QUFDRFIsRUFBQUEsT0FBTyxDQUFDTyxLQUFSLENBQWNFLEdBQWQsQ0FBa0JILElBQWxCLEVBQXdCUCxLQUF4Qjs7QUFFQSxPQUFLLE1BQU1XLFlBQVgsSUFBMkJYLEtBQUssQ0FBQ1ksV0FBTixDQUFrQkMsZ0JBQWxCLEVBQTNC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R0FBTCxFQUFELENBQXhCOztBQUNBLFlBQUkzRCxLQUFKLEVBQVc7QUFDVCxjQUFJd0QsV0FBSixFQUFpQjtBQUVmcEIsWUFBQUEsTUFBTSxDQUFDMkMsTUFBUCxDQUFjeEIsSUFBZCxFQUFvQnZELEtBQXBCO0FBQ0QsV0FIRCxNQUdPO0FBRUx1RCxZQUFBQSxJQUFJLENBQUN2QyxRQUFELENBQUosR0FBaUJoQixLQUFLLENBQUNnQixRQUFELENBQXRCO0FBQ0Q7QUFDRjtBQUNGO0FBQ0Y7QUFDRjs7QUFFRCxTQUFPbUMsS0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNPYmplY3QsIGlzQXJyYXksIGFzQXJyYXkgfSBmcm9tICdAZGl0b2pzL3V0aWxzJ1xuaW1wb3J0IHsgUXVlcnlCdWlsZGVyIH0gZnJvbSAnQC9xdWVyeSdcbmltcG9ydCB7IGNvbGxlY3RFeHByZXNzaW9uUGF0aHMsIGV4cHJlc3Npb25QYXRoVG9TdHJpbmcgfSBmcm9tICcuL2V4cHJlc3Npb24uanMnXG5cbi8vIFNpbWlsYXIgdG8gT2JqZWN0aW9uJ3MgcHJpdmF0ZSBgbW9kZWxDbGFzcy5lbnN1cmVNb2RlbChtb2RlbClgOlxuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZU1vZGVsKG1vZGVsQ2xhc3MsIG1vZGVsLCBvcHRpb25zKSB7XG4gIHJldHVybiAhbW9kZWxcbiAgICA/IG51bGxcbiAgICA6IG1vZGVsIGluc3RhbmNlb2YgbW9kZWxDbGFzc1xuICAgICAgPyBwYXJzZVJlbGF0aW9uc0ludG9Nb2RlbEluc3RhbmNlcyhtb2RlbCwgbW9kZWwsIG9wdGlvbnMpXG4gICAgICA6IG1vZGVsQ2xhc3MuZnJvbUpzb24obW9kZWwsIG9wdGlvbnMpXG59XG5cbi8vIFNpbWlsYXIgdG8gT2JqZWN0aW9uJ3MgcHJpdmF0ZSBgbW9kZWxDbGFzcy5lbnN1cmVNb2RlbEFycmF5KGRhdGEpYDpcbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVNb2RlbEFycmF5KG1vZGVsQ2xhc3MsIGRhdGEsIG9wdGlvbnMpIHtcbiAgcmV0dXJuIGRhdGFcbiAgICA/IGFzQXJyYXkoZGF0YSkubWFwKG1vZGVsID0+IGVuc3VyZU1vZGVsKG1vZGVsQ2xhc3MsIG1vZGVsLCBvcHRpb25zKSlcbiAgICA6IFtdXG59XG5cbmZ1bmN0aW9uIHBhcnNlUmVsYXRpb25zSW50b01vZGVsSW5zdGFuY2VzKG1vZGVsLCBqc29uLCBvcHRpb25zID0ge30pIHtcbiAgaWYgKCFvcHRpb25zLmNhY2hlKSB7XG4gICAgb3B0aW9ucyA9IHsgLi4ub3B0aW9ucywgY2FjaGU6IG5ldyBNYXAoKSB9XG4gIH1cbiAgb3B0aW9ucy5jYWNoZS5zZXQoanNvbiwgbW9kZWwpXG5cbiAgZm9yIChjb25zdCByZWxhdGlvbk5hbWUgb2YgbW9kZWwuY29uc3RydWN0b3IuZ2V0UmVsYXRpb25OYW1lcygpKSB7XG4gICAgY29uc3QganNvblJlbGF0aW9uID0ganNvbltyZWxhdGlvbk5hbWVdXG4gICAgaWYgKGpzb25SZWxhdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCByZWxhdGlvbiA9IG1vZGVsLmNvbnN0cnVjdG9yLmdldFJlbGF0aW9uKHJlbGF0aW9uTmFtZSlcbiAgICAgIGNvbnN0IHBhcnNlZFJlbGF0aW9uID0gcGFyc2VSZWxhdGlvbihqc29uUmVsYXRpb24sIHJlbGF0aW9uLCBvcHRpb25zKVxuICAgICAgaWYgKHBhcnNlZFJlbGF0aW9uICE9PSBqc29uUmVsYXRpb24pIHtcbiAgICAgICAgbW9kZWxbcmVsYXRpb24ubmFtZV0gPSBwYXJzZWRSZWxhdGlvblxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtb2RlbFxufVxuXG5mdW5jdGlvbiBwYXJzZVJlbGF0aW9uKGpzb24sIHJlbGF0aW9uLCBvcHRpb25zKSB7XG4gIHJldHVybiBpc0FycmF5KGpzb24pXG4gICAgPyBwYXJzZVJlbGF0aW9uQXJyYXkoanNvbiwgcmVsYXRpb24sIG9wdGlvbnMpXG4gICAgOiBwYXJzZVJlbGF0aW9uT2JqZWN0KGpzb24sIHJlbGF0aW9uLCBvcHRpb25zKVxufVxuXG5mdW5jdGlvbiBwYXJzZVJlbGF0aW9uQXJyYXkoanNvbiwgcmVsYXRpb24sIG9wdGlvbnMpIHtcbiAgY29uc3QgbW9kZWxzID0gbmV3IEFycmF5KGpzb24ubGVuZ3RoKVxuICBsZXQgY2hhbmdlZCA9IGZhbHNlXG4gIGZvciAobGV0IGkgPSAwLCBsID0ganNvbi5sZW5ndGg7IGkgPCBsOyBpKyspIHtcbiAgICBjb25zdCBtb2RlbCA9IHBhcnNlUmVsYXRpb25PYmplY3QoanNvbltpXSwgcmVsYXRpb24sIG9wdGlvbnMpXG4gICAgY2hhbmdlZCA9IGNoYW5nZWQgfHwgKG1vZGVsICE9PSBqc29uW2ldKVxuICAgIG1vZGVsc1tpXSA9IG1vZGVsXG4gIH1cbiAgcmV0dXJuIGNoYW5nZWQgPyBtb2RlbHMgOiBqc29uXG59XG5cbmZ1bmN0aW9uIHBhcnNlUmVsYXRpb25PYmplY3QoanNvbiwgcmVsYXRpb24sIG9wdGlvbnMpIHtcbiAgaWYgKGlzT2JqZWN0KGpzb24pKSB7XG4gICAgY29uc3QgbW9kZWxDbGFzcyA9IHJlbGF0aW9uLnJlbGF0ZWRNb2RlbENsYXNzXG4gICAgbGV0IG1vZGVsID0gb3B0aW9ucy5jYWNoZS5nZXQoanNvbilcbiAgICBpZiAobW9kZWwgPT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKGpzb24gaW5zdGFuY2VvZiBtb2RlbENsYXNzKSB7XG4gICAgICAgIG1vZGVsID0gcGFyc2VSZWxhdGlvbnNJbnRvTW9kZWxJbnN0YW5jZXMoanNvbiwganNvbiwgb3B0aW9ucylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG1vZGVsID0gbW9kZWxDbGFzcy5mcm9tSnNvbihqc29uLCBvcHRpb25zKVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbW9kZWxcbiAgfVxuICByZXR1cm4ganNvblxufVxuXG5leHBvcnQgZnVuY3Rpb24gd2Fsa0dyYXBoKGRhdGEsIGNhbGxiYWNrLCBwYXRoID0gW10pIHtcbiAgaWYgKGlzT2JqZWN0KGRhdGEpIHx8IGlzQXJyYXkoZGF0YSkpIHtcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhkYXRhKSkge1xuICAgICAgY29uc3QgZGF0YVBhdGggPSBbLi4ucGF0aCwga2V5XVxuICAgICAgY2FsbGJhY2sodmFsdWUsIGRhdGFQYXRoLCBkYXRhLCBrZXkpXG4gICAgICB3YWxrR3JhcGgodmFsdWUsIGNhbGxiYWNrLCBkYXRhUGF0aClcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlckdyYXBoKHJvb3RNb2RlbENsYXNzLCBtb2RlbEdyYXBoLCBleHByKSB7XG4gIGV4cHIgPSBRdWVyeUJ1aWxkZXIucGFyc2VSZWxhdGlvbkV4cHJlc3Npb24oZXhwcilcbiAgY29uc3QgbW9kZWxzID0gZW5zdXJlTW9kZWxBcnJheShyb290TW9kZWxDbGFzcywgbW9kZWxHcmFwaCwge1xuICAgIHNraXBWYWxpZGF0aW9uOiB0cnVlXG4gIH0pXG4gIGZvciAoY29uc3QgbW9kZWwgb2YgbW9kZWxzKSB7XG4gICAgaWYgKG1vZGVsKSB7XG4gICAgICBjb25zdCByZWxhdGlvbnMgPSBtb2RlbC5jb25zdHJ1Y3Rvci5nZXRSZWxhdGlvbnMoKVxuICAgICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMobW9kZWwpKSB7XG4gICAgICAgIGNvbnN0IHJlbGF0aW9uID0gcmVsYXRpb25zW2tleV1cbiAgICAgICAgaWYgKHJlbGF0aW9uKSB7XG4gICAgICAgICAgY29uc3QgY2hpbGQgPSBleHByW2tleV1cbiAgICAgICAgICBpZiAoY2hpbGQpIHtcbiAgICAgICAgICAgIC8vIEFsbG93ZWQgcmVsYXRpb24sIGtlZXAgZmlsdGVyaW5nIHJlY3Vyc2l2ZWx5OlxuICAgICAgICAgICAgZmlsdGVyR3JhcGgoXG4gICAgICAgICAgICAgIHJlbGF0aW9uLnJlbGF0ZWRNb2RlbENsYXNzLFxuICAgICAgICAgICAgICBtb2RlbFtrZXldLFxuICAgICAgICAgICAgICBjaGlsZFxuICAgICAgICAgICAgKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBEaXNhbGxvd2VkIHJlbGF0aW9uLCBkZWxldGU6XG4gICAgICAgICAgICBkZWxldGUgbW9kZWxba2V5XVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gbW9kZWxHcmFwaFxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcG9wdWxhdGVHcmFwaChyb290TW9kZWxDbGFzcywgZ3JhcGgsIGV4cHIsIHRyeCkge1xuICAvLyBUT0RPOiBPcHRpbWl6ZSB0aGUgc2NlbmFyaW8gd2hlcmUgYW4gaXRlbSB0aGF0IGlzbid0IGEgbGVhZiBpcyBhXG4gIC8vIHJlZmVyZW5jZSBhbmQgaGFzIG11bHRpcGxlIHN1Yi1wYXRocyB0byBiZSBwb3B1bGF0ZWQuIFdlIG1heSBuZWVkIHRvXG4gIC8vIG1vdmUgYXdheSBmcm9tIGdyYXBoIHBhdGggaGFuZGxpbmcgYW5kIGRpcmVjdGx5IHByb2Nlc3MgdGhlIGV4cHJlc3Npb25cbiAgLy8gdHJlZSwgY29tcG9zaW5nIHBhdGhzIHRvIHRoZSBjdXJyZW50IHBsYWNlIG9uIHRoZSBmbHksIGFuZCBwcm9jZXNzIGRhdGFcbiAgLy8gd2l0aCBhZGRUb0dyb3VwKCkuIFRoZW4gdXNlIHRoZSBzdWItdHJlZSBhcyBncmFwaCBleHByZXNzaW9uIHdoZW5cbiAgLy8gZW5jb3VudGVyaW5nIHJlZmVyZW5jZXMgKG5lZWRzIHRvU3RyaW5nKCkgZm9yIGNhY2hpbmcgYWxzbz8pXG4gIC8vIFRPRE86IEJldHRlciBpZGVhOiBGaXJzdCBjYWNoZSBncm91cHMgYnkgdGhlIHBhdGggdXAgdG8gdGhlaXIgbG9jYXRpb24gaW5cbiAgLy8gdGhlIGdyYXBoLCBhbmQgY29sbGVjdCBtb2RpZnkgKyBncmFwaCBleHByZXNzaW9ucyB0aGVyZSBmb3IgcmVmZXJlbmNlc1xuICAvLyB0aGF0IGFyZSBub3QgbGVhdmVzLiBUaGVuIHVzZSB0aGUgcmVzdWx0aW5nIG5vZGVzIHRvIGNyZWF0ZSBuZXcgZ3JvdXBzIGJ5XG4gIC8vIG1vZGVsIG5hbWUgLyBtb2RpZnkgLyBncmFwaCBleHByZXNzaW9ucy5cbiAgZXhwciA9IFF1ZXJ5QnVpbGRlci5wYXJzZVJlbGF0aW9uRXhwcmVzc2lvbihleHByKVxuICAvLyBDb252ZXJ0IHRoZSByZWxhdGlvbiBleHByZXNzaW9uIHRvIGFuIGFycmF5IG9mIHBhdGhzLCB0aGF0IHRoZW1zZWx2ZXNcbiAgLy8gY29udGFpbiBwYXRoIGVudHJpZXMgd2l0aCByZWxhdGlvbiBuYW1lcyBhbmQgbW9kaWZ5IHNldHRpbmdzLlxuXG4gIGNvbnN0IGdyb3VwZWQgPSB7fVxuICBjb25zdCBhZGRUb0dyb3VwID1cbiAgICAoaXRlbSwgbW9kZWxDbGFzcywgaXNSZWZlcmVuY2UsIG1vZGlmeSwgcmVsYXRpb24sIGV4cHIpID0+IHtcbiAgICAgIGNvbnN0IGlkID0gaXRlbS4kaWQoKVxuICAgICAgaWYgKGlkICE9IG51bGwpIHtcbiAgICAgICAgLy8gR3JvdXAgbW9kZWxzIGJ5IG1vZGVsLW5hbWUgKyBtb2RpZnkgKyBleHByLCBmb3IgZmFzdGVyIGxvYWRpbmc6XG4gICAgICAgIGNvbnN0IGtleSA9IGAke21vZGVsQ2xhc3MubmFtZX1fJHttb2RpZnl9XyR7ZXhwciB8fCAnJ31gXG4gICAgICAgIGNvbnN0IGdyb3VwID0gZ3JvdXBlZFtrZXldIHx8IChncm91cGVkW2tleV0gPSB7XG4gICAgICAgICAgbW9kZWxDbGFzcyxcbiAgICAgICAgICBtb2RpZnksXG4gICAgICAgICAgcmVsYXRpb24sXG4gICAgICAgICAgZXhwcixcbiAgICAgICAgICB0YXJnZXRzOiBbXSxcbiAgICAgICAgICBpZHM6IFtdLFxuICAgICAgICAgIG1vZGVsc0J5SWQ6IHt9XG4gICAgICAgIH0pXG4gICAgICAgIGdyb3VwLnRhcmdldHMucHVzaCh7IGl0ZW0sIGlzUmVmZXJlbmNlIH0pXG4gICAgICAgIC8vIENvbGxlY3QgaWRzIHRvIGJlIGxvYWRlZCBmb3IgdGhlIHRhcmdldHMuXG4gICAgICAgIGdyb3VwLmlkcy5wdXNoKGlkKVxuICAgICAgfVxuICAgIH1cblxuICBmb3IgKGNvbnN0IHBhdGggb2YgY29sbGVjdEV4cHJlc3Npb25QYXRocyhleHByKSkge1xuICAgIGxldCBtb2RlbENsYXNzID0gcm9vdE1vZGVsQ2xhc3NcbiAgICBjb25zdCBtb2RlbENsYXNzZXMgPSBbXVxuICAgIGxldCBsYXN0TW9kaWZ5XG4gICAgZm9yIChjb25zdCBlbnRyeSBvZiBwYXRoKSB7XG4gICAgICBtb2RlbENsYXNzZXMucHVzaChtb2RlbENsYXNzKVxuICAgICAgbW9kZWxDbGFzcyA9IG1vZGVsQ2xhc3MuZ2V0UmVsYXRpb24oZW50cnkucmVsYXRpb24pLnJlbGF0ZWRNb2RlbENsYXNzXG4gICAgICBsYXN0TW9kaWZ5ID0gZW50cnkubW9kaWZ5XG4gICAgfVxuICAgIGZvciAoY29uc3QgbW9kZWwgb2YgYXNBcnJheShncmFwaCkpIHtcbiAgICAgIGlmIChtb2RlbCkge1xuICAgICAgICBsZXQgaXRlbXMgPSBhc0FycmF5KG1vZGVsKVxuICAgICAgICAvLyBDb2xsZWN0IGFsbCBncmFwaCBpdGVtcyBkZXNjcmliZWQgYnkgdGhlIGN1cnJlbnQgcmVsYXRpb24gcGF0aCBpblxuICAgICAgICAvLyBvbmUgbG9vcDpcbiAgICAgICAgZm9yIChsZXQgaSA9IDAsIGwgPSBwYXRoLmxlbmd0aDsgaSA8IGw7IGkrKykge1xuICAgICAgICAgIGlmIChpdGVtcy5sZW5ndGggPT09IDApIGJyZWFrXG4gICAgICAgICAgY29uc3QgeyByZWxhdGlvbiB9ID0gcGF0aFtpXVxuICAgICAgICAgIGNvbnN0IG1vZGVsQ2xhc3MgPSBtb2RlbENsYXNzZXNbaV1cbiAgICAgICAgICBpdGVtcyA9IGl0ZW1zLnJlZHVjZSgoaXRlbXMsIGl0ZW0pID0+IHtcbiAgICAgICAgICAgIGl0ZW0gPSBlbnN1cmVNb2RlbChtb2RlbENsYXNzLCBpdGVtLCB7IHNraXBWYWxpZGF0aW9uOiB0cnVlIH0pXG4gICAgICAgICAgICBsZXQgYWRkID0gZmFsc2VcbiAgICAgICAgICAgIGNvbnN0IGlzUmVmZXJlbmNlID0gbW9kZWxDbGFzcy5pc1JlZmVyZW5jZShpdGVtKVxuICAgICAgICAgICAgaWYgKGlzUmVmZXJlbmNlKSB7XG4gICAgICAgICAgICAgIC8vIERldGVjdGVkIGEgcmVmZXJlbmNlIGl0ZW0gdGhhdCBpc24ndCBhIGxlYWY6IFdlIG5lZWQgdG9cbiAgICAgICAgICAgICAgLy8gZWFnZXItbG9hZCB0aGUgcmVzdCBvZiB0aGUgcGF0aCwgYW5kIHJlc3BlY3QgbW9kaWZ5IHNldHRpbmdzLlxuICAgICAgICAgICAgICBhZGQgPSB0cnVlXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGl0ZW1bcmVsYXRpb25dXG4gICAgICAgICAgICAgIC8vIEFkZCB0aGUgbW9kZWxzIG9mIHRoaXMgcmVsYXRpb24gdG8gaXRlbXMsIHNvIHRoZXkgY2FuIGJlXG4gICAgICAgICAgICAgIC8vIGZpbHRlcmVkIGZ1cnRoZXIgaW4gdGhlIG5leHQgaXRlcmF0aW9uIG9mIHRoaXMgbG9vcC5cbiAgICAgICAgICAgICAgaWYgKHZhbHVlICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKC4uLmFzQXJyYXkodmFsdWUpKVxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAvLyBJZiB0aGUgZnVsbCByZWxhdGlvbiBpcyBtaXNzaW5nIHRyeSBlYWdlci1sb2FkaW5nIGl0LlxuICAgICAgICAgICAgICAgIC8vIE5PVEU6IFZhbHVlcyBvZiBgbnVsbGAgYXJlIHJlc3BlY3RlZCBoZXJlLCBub3QgbG9hZGVkIGFnYWluLlxuICAgICAgICAgICAgICAgIGFkZCA9IHRydWVcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGFkZCkge1xuICAgICAgICAgICAgICAvLyBgcGF0aFtpXS5tb2RpZnlgIGlzIHRoZSBjdXJyZW50IHJlbGF0aW9uJ3MgbW9kaWZ5IGV4cHJlc3Npb24sXG4gICAgICAgICAgICAgIC8vIGdldCB0aGUgcGFyZW50IG9uZSBmb3IgYG1vZGVsQ2xhc3NgOlxuICAgICAgICAgICAgICBjb25zdCBtb2RpZnkgPSBpID4gMCA/IHBhdGhbaSAtIDFdLm1vZGlmeSA6IG51bGxcbiAgICAgICAgICAgICAgY29uc3QgZXhwciA9IGV4cHJlc3Npb25QYXRoVG9TdHJpbmcocGF0aCwgaSlcbiAgICAgICAgICAgICAgYWRkVG9Hcm91cChpdGVtLCBtb2RlbENsYXNzLCBpc1JlZmVyZW5jZSwgbW9kaWZ5LCByZWxhdGlvbiwgZXhwcilcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBpdGVtc1xuICAgICAgICAgIH0sIFtdKVxuICAgICAgICB9XG4gICAgICAgIC8vIEFkZCBhbGwgZW5jb3VudGVyZWQgbGVhZi1yZWZlcmVuY2VzIHRvIGdyb3VwcyB0byBiZSBsb2FkZWQuXG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgICAgIC8vIE9ubHkgbG9hZCBsZWFmcyB0aGF0IGFyZSByZWZlcmVuY2VzLlxuICAgICAgICAgIGlmIChtb2RlbENsYXNzLmlzUmVmZXJlbmNlKGl0ZW0pKSB7XG4gICAgICAgICAgICBhZGRUb0dyb3VwKGl0ZW0sIG1vZGVsQ2xhc3MsIHRydWUsIGxhc3RNb2RpZnkpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3QgZ3JvdXBzID0gT2JqZWN0LnZhbHVlcyhncm91cGVkKS5maWx0ZXIoKHsgaWRzIH0pID0+IGlkcy5sZW5ndGggPiAwKVxuICBpZiAoZ3JvdXBzLmxlbmd0aCA+IDApIHtcbiAgICAvLyBMb2FkIGFsbCBmb3VuZCBtb2RlbHMgYnkgaWRzIGFzeW5jaHJvbm91c2x5LCB3aXRoaW4gcHJvdmlkZWQgdHJhbnNhY3Rpb24uXG4gICAgLy8gTk9URTogVXNpbmcgdGhlIHNhbWUgdHJhbnNhY3Rpb24gbWVhbnMgdGhhdCBhbGwgaW52b2x2ZWQgdGFibGVzIG5lZWQgdG9cbiAgICAvLyBiZSBpbiB0aGUgc2FtZSBkYXRhYmFzZS5cbiAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIGdyb3Vwcy5tYXAoYXN5bmMgKHsgbW9kZWxDbGFzcywgbW9kaWZ5LCBleHByLCBpZHMsIG1vZGVsc0J5SWQgfSkgPT4ge1xuICAgICAgICBjb25zdCBxdWVyeSA9IG1vZGVsQ2xhc3MucXVlcnkodHJ4KS5maW5kQnlJZHMoaWRzKS5tb2RpZnkobW9kaWZ5KVxuICAgICAgICBpZiAoZXhwcikge1xuICAgICAgICAgIC8vIFRPRE86IE1ha2UgYWxnb3JpdGhtIGNvbmZpZ3VyYWJsZSB0aHJvdWdoIG9wdGlvbnMuXG4gICAgICAgICAgcXVlcnkud2l0aEdyYXBoKGV4cHIpXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbW9kZWxzID0gYXdhaXQgcXVlcnlcbiAgICAgICAgLy8gRmlsbCB0aGUgZ3JvdXAubW9kZWxzQnlJZCBsb29rdXA6XG4gICAgICAgIGZvciAoY29uc3QgbW9kZWwgb2YgbW9kZWxzKSB7XG4gICAgICAgICAgbW9kZWxzQnlJZFttb2RlbC4kaWQoKV0gPSBtb2RlbFxuICAgICAgICB9XG4gICAgICB9KVxuICAgIClcblxuICAgIC8vIEZpbmFsbHkgcG9wdWxhdGUgdGhlIHRhcmdldHMgd2l0aCB0aGUgbG9hZGVkIG1vZGVscy5cbiAgICBmb3IgKGNvbnN0IHsgdGFyZ2V0cywgbW9kZWxzQnlJZCwgcmVsYXRpb24gfSBvZiBncm91cHMpIHtcbiAgICAgIGZvciAoY29uc3QgeyBpdGVtLCBpc1JlZmVyZW5jZSB9IG9mIHRhcmdldHMpIHtcbiAgICAgICAgY29uc3QgbW9kZWwgPSBtb2RlbHNCeUlkW2l0ZW0uJGlkKCldXG4gICAgICAgIGlmIChtb2RlbCkge1xuICAgICAgICAgIGlmIChpc1JlZmVyZW5jZSkge1xuICAgICAgICAgICAgLy8gQ29weSBvdmVyIHRoZSBmdWxsIGl0ZW0uXG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKGl0ZW0sIG1vZGVsKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBKdXN0IGNvcHkgdGhlIGVhZ2VyLWxvYWRlZCByZWxhdGlvbi5cbiAgICAgICAgICAgIGl0ZW1bcmVsYXRpb25dID0gbW9kZWxbcmVsYXRpb25dXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGdyYXBoXG59XG4iXX0=
|
package/lib/graph/index.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
8
|
+
|
|
3
9
|
exports.__esModule = true;
|
|
4
10
|
|
|
5
11
|
var _DitoGraphProcessor = require("./DitoGraphProcessor");
|
|
@@ -25,4 +31,4 @@ Object.keys(_expression).forEach(function (key) {
|
|
|
25
31
|
if (key in exports && exports[key] === _expression[key]) return;
|
|
26
32
|
exports[key] = _expression[key];
|
|
27
33
|
});
|
|
28
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ncmFwaC9pbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFDQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL0RpdG9HcmFwaFByb2Nlc3NvcidcbmV4cG9ydCAqIGZyb20gJy4vZ3JhcGgnXG5leHBvcnQgKiBmcm9tICcuL2V4cHJlc3Npb24nXG4iXX0=
|
package/lib/index.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
8
|
+
|
|
3
9
|
exports.__esModule = true;
|
|
4
10
|
|
|
5
11
|
var _app = require("./app");
|
|
@@ -73,4 +79,4 @@ Object.keys(_storage).forEach(function (key) {
|
|
|
73
79
|
if (key in exports && exports[key] === _storage[key]) return;
|
|
74
80
|
exports[key] = _storage[key];
|
|
75
81
|
});
|
|
76
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFDQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFDQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFDQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FwcCdcbmV4cG9ydCAqIGZyb20gJy4vcXVlcnknXG5leHBvcnQgKiBmcm9tICcuL2Vycm9ycydcbmV4cG9ydCAqIGZyb20gJy4vbWl4aW5zJ1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMnXG5leHBvcnQgKiBmcm9tICcuL2NvbnRyb2xsZXJzJ1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcydcbmV4cG9ydCAqIGZyb20gJy4vZGVjb3JhdG9ycydcbmV4cG9ydCAqIGZyb20gJy4vc3RvcmFnZSdcbiJdfQ==
|
package/lib/lib/index.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
8
|
+
|
|
3
9
|
exports.__esModule = true;
|
|
4
10
|
|
|
5
11
|
var _EventEmitter = require("./EventEmitter");
|
|
@@ -17,4 +23,4 @@ Object.keys(_KnexHelper).forEach(function (key) {
|
|
|
17
23
|
if (key in exports && exports[key] === _KnexHelper[key]) return;
|
|
18
24
|
exports[key] = _KnexHelper[key];
|
|
19
25
|
});
|
|
20
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvaW5kZXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vRXZlbnRFbWl0dGVyJ1xuZXhwb3J0ICogZnJvbSAnLi9LbmV4SGVscGVyJ1xuIl19
|
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.findRoute = findRoute;
|
|
5
5
|
|
|
6
|
+
require("core-js/modules/esnext.async-iterator.find.js");
|
|
7
|
+
|
|
8
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
9
|
+
|
|
10
|
+
require("core-js/modules/esnext.iterator.find.js");
|
|
11
|
+
|
|
6
12
|
function findRoute(router) {
|
|
7
13
|
return (ctx, next) => {
|
|
8
14
|
const result = router.find(ctx.method, ctx.path);
|
|
@@ -26,4 +32,4 @@ function findRoute(router) {
|
|
|
26
32
|
return next();
|
|
27
33
|
};
|
|
28
34
|
}
|
|
29
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlL2ZpbmRSb3V0ZS5qcyJdLCJuYW1lcyI6WyJmaW5kUm91dGUiLCJyb3V0ZXIiLCJjdHgiLCJuZXh0IiwicmVzdWx0IiwiZmluZCIsIm1ldGhvZCIsInBhdGgiLCJyb3V0ZSIsImhhbmRsZXIiLCJwYXJhbXMiLCJjb250cm9sbGVyIiwiYWN0aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFPLFNBQVNBLFNBQVQsQ0FBbUJDLE1BQW5CLEVBQTJCO0FBQ2hDLFNBQU8sQ0FBQ0MsR0FBRCxFQUFNQyxJQUFOLEtBQWU7QUFDcEIsVUFBTUMsTUFBTSxHQUFHSCxNQUFNLENBQUNJLElBQVAsQ0FBWUgsR0FBRyxDQUFDSSxNQUFoQixFQUF3QkosR0FBRyxDQUFDSyxJQUE1QixDQUFmO0FBR0EsVUFBTUMsS0FBSyxHQUFHSixNQUFNLENBQUNLLE9BQVAsR0FBaUIsRUFBRSxHQUFHTCxNQUFNLENBQUNLO0FBQVosS0FBakIsR0FBeUNMLE1BQXZEO0FBQ0FGLElBQUFBLEdBQUcsQ0FBQ00sS0FBSixHQUFZQSxLQUFaO0FBRUFOLElBQUFBLEdBQUcsQ0FBQ1EsTUFBSixHQUFhTixNQUFNLENBQUNNLE1BQVAsSUFBaUIsRUFBOUI7QUFDQSxVQUFNO0FBQUVDLE1BQUFBLFVBQUY7QUFBY0MsTUFBQUE7QUFBZCxRQUF5QkosS0FBL0I7O0FBQ0EsUUFBSUcsVUFBSixFQUFnQjtBQUNkVCxNQUFBQSxHQUFHLENBQUNTLFVBQUosR0FBaUJBLFVBQWpCO0FBQ0Q7O0FBQ0QsUUFBSUMsTUFBSixFQUFZO0FBQ1ZWLE1BQUFBLEdBQUcsQ0FBQ1UsTUFBSixHQUFhQSxNQUFiO0FBQ0Q7O0FBQ0QsV0FBT1QsSUFBSSxFQUFYO0FBQ0QsR0FoQkQ7QUFpQkQiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZmluZFJvdXRlKHJvdXRlcikge1xuICByZXR1cm4gKGN0eCwgbmV4dCkgPT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHJvdXRlci5maW5kKGN0eC5tZXRob2QsIGN0eC5wYXRoKVxuICAgIC8vIFdlIHVzZSBgcmVzdWx0LmhhbmRsZXJgIHRvIHN0b3JlIHRoZSByb3V0ZSBvYmplY3QgZm9yIG1hdGNoZWQgcm91dGVzLlxuICAgIC8vIElmIG5vbmUgaXMgZm91bmQsIHNldCBgY3R4LnJvdXRlID0gcmVzdWx0YCwgZm9yICBgeyBzdGF0dXMsIGFsbG93ZWQgfWAuXG4gICAgY29uc3Qgcm91dGUgPSByZXN1bHQuaGFuZGxlciA/IHsgLi4ucmVzdWx0LmhhbmRsZXIgfSA6IHJlc3VsdFxuICAgIGN0eC5yb3V0ZSA9IHJvdXRlXG4gICAgLy8gTk9URTogVGhlIG5hbWUgZm9yIGBjdHgucGFyYW1zYCB3YXMgaW5oZXJpdGVkIGZyb20gYGtvYS1yb3V0ZXJgXG4gICAgY3R4LnBhcmFtcyA9IHJlc3VsdC5wYXJhbXMgfHwge31cbiAgICBjb25zdCB7IGNvbnRyb2xsZXIsIGFjdGlvbiB9ID0gcm91dGVcbiAgICBpZiAoY29udHJvbGxlcikge1xuICAgICAgY3R4LmNvbnRyb2xsZXIgPSBjb250cm9sbGVyXG4gICAgfVxuICAgIGlmIChhY3Rpb24pIHtcbiAgICAgIGN0eC5hY3Rpb24gPSBhY3Rpb25cbiAgICB9XG4gICAgcmV0dXJuIG5leHQoKVxuICB9XG59XG4iXX0=
|
package/lib/middleware/index.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
8
|
+
|
|
3
9
|
exports.__esModule = true;
|
|
4
10
|
|
|
5
11
|
var _attachLogger = require("./attachLogger");
|
|
@@ -57,4 +63,4 @@ Object.keys(_logRequests).forEach(function (key) {
|
|
|
57
63
|
if (key in exports && exports[key] === _logRequests[key]) return;
|
|
58
64
|
exports[key] = _logRequests[key];
|
|
59
65
|
});
|
|
60
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlL2luZGV4LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFDQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFDQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdHRhY2hMb2dnZXInXG5leHBvcnQgKiBmcm9tICcuL2NyZWF0ZVRyYW5zYWN0aW9uJ1xuZXhwb3J0ICogZnJvbSAnLi9maW5kUm91dGUnXG5leHBvcnQgKiBmcm9tICcuL2hhbmRsZUVycm9yJ1xuZXhwb3J0ICogZnJvbSAnLi9oYW5kbGVSb3V0ZSdcbmV4cG9ydCAqIGZyb20gJy4vaGFuZGxlVXNlcidcbmV4cG9ydCAqIGZyb20gJy4vbG9nUmVxdWVzdHMnXG4iXX0=
|
package/lib/mixins/AssetMixin.js
CHANGED
|
@@ -8,9 +8,9 @@ var _utils = require("@ditojs/utils");
|
|
|
8
8
|
var _TimeStampedMixin = require("./TimeStampedMixin");
|
|
9
9
|
|
|
10
10
|
const AssetMixin = (0, _utils.mixin)(Model => {
|
|
11
|
-
var _class
|
|
11
|
+
var _class;
|
|
12
12
|
|
|
13
|
-
return
|
|
13
|
+
return _class = class extends (0, _TimeStampedMixin.TimeStampedMixin)(Model) {
|
|
14
14
|
$parseJson(json) {
|
|
15
15
|
const {
|
|
16
16
|
constructor
|
|
@@ -75,7 +75,7 @@ const AssetMixin = (0, _utils.mixin)(Model => {
|
|
|
75
75
|
unsigned: true,
|
|
76
76
|
default: 0
|
|
77
77
|
}
|
|
78
|
-
},
|
|
78
|
+
}, _class;
|
|
79
79
|
});
|
|
80
80
|
exports.AssetMixin = AssetMixin;
|
|
81
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvQXNzZXRNaXhpbi5qcyJdLCJuYW1lcyI6WyJBc3NldE1peGluIiwiTW9kZWwiLCIkcGFyc2VKc29uIiwianNvbiIsImNvbnN0cnVjdG9yIiwiZmlsZSIsInN0b3JhZ2UiLCJhcHAiLCJnZXRTdG9yYWdlIiwiY29udmVydEFzc2V0RmlsZSIsInByb3BlcnRpZXMiLCJrZXkiLCJ0eXBlIiwicmVxdWlyZWQiLCJ1bmlxdWUiLCJpbmRleCIsIm5hbWUiLCJzaXplIiwidXJsIiwid2lkdGgiLCJoZWlnaHQiLCJjb3VudCIsInVuc2lnbmVkIiwiZGVmYXVsdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTs7QUFDQTs7QUFHTyxNQUFNQSxVQUFVLEdBQUcsa0JBQU1DLEtBQUs7QUFBQTs7QUFBQSxrQkFBSSxjQUFjLHdDQUFpQkEsS0FBakIsQ0FBZCxDQUFzQztBQTZEN0VDLElBQUFBLFVBQVUsQ0FBQ0MsSUFBRCxFQUFPO0FBQ2YsWUFBTTtBQUFFQyxRQUFBQTtBQUFGLFVBQWtCLElBQXhCO0FBQ0EsWUFBTTtBQUFFQyxRQUFBQSxJQUFGO0FBQVFDLFFBQUFBO0FBQVIsVUFBb0JILElBQTFCOztBQUVBLFVBQUlFLElBQUksSUFBSUMsT0FBWixFQUFxQjtBQUFBOztBQUNuQixpQ0FBQUYsV0FBVyxDQUFDRyxHQUFaLENBQWdCQyxVQUFoQixDQUEyQkYsT0FBM0IsNENBQXFDRyxnQkFBckMsQ0FBc0RKLElBQXREO0FBQ0Q7O0FBQ0QsYUFBT0YsSUFBUDtBQUNEOztBQXJFNEUsR0FBMUMsU0FDNUJPLFVBRDRCLEdBQ2Y7QUFDbEJDLElBQUFBLEdBQUcsRUFBRTtBQUNIQyxNQUFBQSxJQUFJLEVBQUUsUUFESDtBQUVIQyxNQUFBQSxRQUFRLEVBQUUsSUFGUDtBQUdIQyxNQUFBQSxNQUFNLEVBQUUsSUFITDtBQUlIQyxNQUFBQSxLQUFLLEVBQUU7QUFKSixLQURhO0FBUWxCVixJQUFBQSxJQUFJLEVBQUU7QUFDSk8sTUFBQUEsSUFBSSxFQUFFLFFBREY7QUFJSkYsTUFBQUEsVUFBVSxFQUFFO0FBRVZDLFFBQUFBLEdBQUcsRUFBRTtBQUNIQyxVQUFBQSxJQUFJLEVBQUUsUUFESDtBQUVIQyxVQUFBQSxRQUFRLEVBQUU7QUFGUCxTQUZLO0FBT1ZHLFFBQUFBLElBQUksRUFBRTtBQUNKSixVQUFBQSxJQUFJLEVBQUUsUUFERjtBQUVKQyxVQUFBQSxRQUFRLEVBQUU7QUFGTixTQVBJO0FBWVZELFFBQUFBLElBQUksRUFBRTtBQUNKQSxVQUFBQSxJQUFJLEVBQUUsUUFERjtBQUVKQyxVQUFBQSxRQUFRLEVBQUU7QUFGTixTQVpJO0FBaUJWSSxRQUFBQSxJQUFJLEVBQUU7QUFDSkwsVUFBQUEsSUFBSSxFQUFFLFNBREY7QUFFSkMsVUFBQUEsUUFBUSxFQUFFO0FBRk4sU0FqQkk7QUFzQlZLLFFBQUFBLEdBQUcsRUFBRTtBQUNITixVQUFBQSxJQUFJLEVBQUU7QUFESCxTQXRCSztBQTBCVk8sUUFBQUEsS0FBSyxFQUFFO0FBQ0xQLFVBQUFBLElBQUksRUFBRTtBQURELFNBMUJHO0FBNkJWUSxRQUFBQSxNQUFNLEVBQUU7QUFDTlIsVUFBQUEsSUFBSSxFQUFFO0FBREE7QUE3QkU7QUFKUixLQVJZO0FBK0NsQk4sSUFBQUEsT0FBTyxFQUFFO0FBQ1BNLE1BQUFBLElBQUksRUFBRSxRQURDO0FBRVBDLE1BQUFBLFFBQVEsRUFBRTtBQUZILEtBL0NTO0FBb0RsQlEsSUFBQUEsS0FBSyxFQUFFO0FBQ0xULE1BQUFBLElBQUksRUFBRSxTQUREO0FBRUxVLE1BQUFBLFFBQVEsRUFBRSxJQUZMO0FBR0xDLE1BQUFBLE9BQU8sRUFBRTtBQUhKO0FBcERXLEdBRGU7QUFBQSxDQUFYLENBQW5CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWl4aW4gfSBmcm9tICdAZGl0b2pzL3V0aWxzJ1xuaW1wb3J0IHsgVGltZVN0YW1wZWRNaXhpbiB9IGZyb20gJy4vVGltZVN0YW1wZWRNaXhpbidcblxuLy8gQXNzZXQgbW9kZWxzIGFyZSBhbHdheXMgdG8gYmUgdGltZS1zdGFtcGVkOlxuZXhwb3J0IGNvbnN0IEFzc2V0TWl4aW4gPSBtaXhpbihNb2RlbCA9PiBjbGFzcyBleHRlbmRzIFRpbWVTdGFtcGVkTWl4aW4oTW9kZWwpIHtcbiAgc3RhdGljIHByb3BlcnRpZXMgPSB7XG4gICAga2V5OiB7XG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgdW5pcXVlOiB0cnVlLFxuICAgICAgaW5kZXg6IHRydWVcbiAgICB9LFxuXG4gICAgZmlsZToge1xuICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAvLyBUT0RPOiBTdXBwb3J0IHRoaXMgb24gJ29iamVjdCc6XG4gICAgICAvLyByZXF1aXJlZDogdHJ1ZVxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAvLyBUaGUgdW5pcXVlIGtleSB3aXRoaW4gdGhlIHN0b3JhZ2UgKHV1aWQvdjQgKyBmaWxlIGV4dGVuc2lvbilcbiAgICAgICAga2V5OiB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgLy8gVGhlIG9yaWdpbmFsIGZpbGVuYW1lLCBhbmQgZGlzcGxheSBuYW1lIHdoZW4gZmlsZSBpcyBzaG93blxuICAgICAgICBuYW1lOiB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgLy8gVGhlIGZpbGUncyBtaW1lLXR5cGVcbiAgICAgICAgdHlwZToge1xuICAgICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIC8vIFRoZSBhbW91bnQgb2YgYnl0ZXMgY29uc3VtZWQgYnkgdGhlIGZpbGVcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgIHR5cGU6ICdpbnRlZ2VyJyxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICAvLyBVc2UgZm9yIHN0b3JhZ2VzIGNvbmZpZ3VyZWQgZm9yIGZpbGVzIHRvIGJlIHB1YmxpY2FsbHkgYWNjZXNzaWJsZTpcbiAgICAgICAgdXJsOiB7XG4gICAgICAgICAgdHlwZTogJ3N0cmluZydcbiAgICAgICAgfSxcbiAgICAgICAgLy8gVGhlc2UgYXJlIG9ubHkgdXNlZCB3aGVuIHRoZSBzdG9yYWdlIGRlZmluZXMgYGNvbmZpZy5yZWFkSW1hZ2VTaXplYDpcbiAgICAgICAgd2lkdGg6IHtcbiAgICAgICAgICB0eXBlOiAnaW50ZWdlcidcbiAgICAgICAgfSxcbiAgICAgICAgaGVpZ2h0OiB7XG4gICAgICAgICAgdHlwZTogJ2ludGVnZXInXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgc3RvcmFnZToge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH0sXG5cbiAgICBjb3VudDoge1xuICAgICAgdHlwZTogJ2ludGVnZXInLFxuICAgICAgdW5zaWduZWQ6IHRydWUsXG4gICAgICBkZWZhdWx0OiAwXG4gICAgfVxuICB9XG5cbiAgLy8gQG92ZXJyaWRlXG4gICRwYXJzZUpzb24oanNvbikge1xuICAgIGNvbnN0IHsgY29uc3RydWN0b3IgfSA9IHRoaXNcbiAgICBjb25zdCB7IGZpbGUsIHN0b3JhZ2UgfSA9IGpzb25cbiAgICAvLyBDb252ZXJ0IGBBc3NldE1peGluI2ZpbGVgIHRvIGFuIGBBc3NldEZpbGVgIGluc3RhbmNlOlxuICAgIGlmIChmaWxlICYmIHN0b3JhZ2UpIHtcbiAgICAgIGNvbnN0cnVjdG9yLmFwcC5nZXRTdG9yYWdlKHN0b3JhZ2UpPy5jb252ZXJ0QXNzZXRGaWxlKGZpbGUpXG4gICAgfVxuICAgIHJldHVybiBqc29uXG4gIH1cbn0pXG4iXX0=
|
|
@@ -6,9 +6,9 @@ exports.SessionMixin = void 0;
|
|
|
6
6
|
var _utils = require("@ditojs/utils");
|
|
7
7
|
|
|
8
8
|
const SessionMixin = (0, _utils.mixin)(Model => {
|
|
9
|
-
var _class
|
|
9
|
+
var _class;
|
|
10
10
|
|
|
11
|
-
return
|
|
11
|
+
return _class = class extends Model {}, _class.properties = {
|
|
12
12
|
id: {
|
|
13
13
|
type: 'string',
|
|
14
14
|
primary: true
|
|
@@ -16,7 +16,7 @@ const SessionMixin = (0, _utils.mixin)(Model => {
|
|
|
16
16
|
value: {
|
|
17
17
|
type: 'object'
|
|
18
18
|
}
|
|
19
|
-
},
|
|
19
|
+
}, _class;
|
|
20
20
|
});
|
|
21
21
|
exports.SessionMixin = SessionMixin;
|
|
22
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvU2Vzc2lvbk1peGluLmpzIl0sIm5hbWVzIjpbIlNlc3Npb25NaXhpbiIsIk1vZGVsIiwicHJvcGVydGllcyIsImlkIiwidHlwZSIsInByaW1hcnkiLCJ2YWx1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTs7QUFFTyxNQUFNQSxZQUFZLEdBQUcsa0JBQU1DLEtBQUs7QUFBQTs7QUFBQSxrQkFBSSxjQUFjQSxLQUFkLENBQW9CLEVBQXhCLFNBQzlCQyxVQUQ4QixHQUNqQjtBQUNsQkMsSUFBQUEsRUFBRSxFQUFFO0FBQ0ZDLE1BQUFBLElBQUksRUFBRSxRQURKO0FBRUZDLE1BQUFBLE9BQU8sRUFBRTtBQUZQLEtBRGM7QUFNbEJDLElBQUFBLEtBQUssRUFBRTtBQUNMRixNQUFBQSxJQUFJLEVBQUU7QUFERDtBQU5XLEdBRGlCO0FBQUEsQ0FBWCxDQUFyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1peGluIH0gZnJvbSAnQGRpdG9qcy91dGlscydcblxuZXhwb3J0IGNvbnN0IFNlc3Npb25NaXhpbiA9IG1peGluKE1vZGVsID0+IGNsYXNzIGV4dGVuZHMgTW9kZWwge1xuICBzdGF0aWMgcHJvcGVydGllcyA9IHtcbiAgICBpZDoge1xuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICBwcmltYXJ5OiB0cnVlXG4gICAgfSxcblxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiAnb2JqZWN0J1xuICAgIH1cbiAgfVxufSlcbiJdfQ==
|
|
@@ -6,9 +6,9 @@ exports.TimeStampedMixin = void 0;
|
|
|
6
6
|
var _utils = require("@ditojs/utils");
|
|
7
7
|
|
|
8
8
|
const TimeStampedMixin = (0, _utils.mixin)(Model => {
|
|
9
|
-
var _class
|
|
9
|
+
var _class;
|
|
10
10
|
|
|
11
|
-
return
|
|
11
|
+
return _class = class extends Model {}, _class.properties = {
|
|
12
12
|
createdAt: {
|
|
13
13
|
type: 'timestamp',
|
|
14
14
|
default: 'now()'
|
|
@@ -41,7 +41,7 @@ const TimeStampedMixin = (0, _utils.mixin)(Model => {
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
},
|
|
44
|
+
}, _class;
|
|
45
45
|
});
|
|
46
46
|
exports.TimeStampedMixin = TimeStampedMixin;
|
|
47
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvVGltZVN0YW1wZWRNaXhpbi5qcyJdLCJuYW1lcyI6WyJUaW1lU3RhbXBlZE1peGluIiwiTW9kZWwiLCJwcm9wZXJ0aWVzIiwiY3JlYXRlZEF0IiwidHlwZSIsImRlZmF1bHQiLCJ1cGRhdGVkQXQiLCJzY29wZXMiLCJ0aW1lU3RhbXBlZCIsInF1ZXJ5Iiwic2VsZWN0IiwiaG9va3MiLCJpbnB1dEl0ZW1zIiwibm93IiwiRGF0ZSIsIml0ZW0iXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7O0FBRU8sTUFBTUEsZ0JBQWdCLEdBQUcsa0JBQU1DLEtBQUs7QUFBQTs7QUFBQSxrQkFBSSxjQUFjQSxLQUFkLENBQW9CLEVBQXhCLFNBQ2xDQyxVQURrQyxHQUNyQjtBQUNsQkMsSUFBQUEsU0FBUyxFQUFFO0FBQ1RDLE1BQUFBLElBQUksRUFBRSxXQURHO0FBRVRDLE1BQUFBLE9BQU8sRUFBRTtBQUZBLEtBRE87QUFNbEJDLElBQUFBLFNBQVMsRUFBRTtBQUNURixNQUFBQSxJQUFJLEVBQUUsV0FERztBQUVUQyxNQUFBQSxPQUFPLEVBQUU7QUFGQTtBQU5PLEdBRHFCLFNBYWxDRSxNQWJrQyxHQWF6QjtBQUNkQyxJQUFBQSxXQUFXLEVBQUVDLEtBQUssSUFBSUEsS0FBSyxDQUN4QkMsTUFEbUIsQ0FDWixXQURZLEVBQ0MsV0FERDtBQURSLEdBYnlCLFNBa0JsQ0MsS0FsQmtDLEdBa0IxQjtBQUNiLG9CQUFnQjtBQUFFQyxNQUFBQTtBQUFGLEtBQWhCLEVBQWdDO0FBQzlCLFlBQU1DLEdBQUcsR0FBRyxJQUFJQyxJQUFKLEVBQVo7O0FBQ0EsV0FBSyxNQUFNQyxJQUFYLElBQW1CSCxVQUFuQixFQUErQjtBQUM3QkcsUUFBQUEsSUFBSSxDQUFDWixTQUFMLEdBQWlCVSxHQUFqQjtBQUNBRSxRQUFBQSxJQUFJLENBQUNULFNBQUwsR0FBaUJPLEdBQWpCO0FBQ0Q7QUFDRixLQVBZOztBQVNiLG9CQUFnQjtBQUFFRCxNQUFBQTtBQUFGLEtBQWhCLEVBQWdDO0FBQzlCLFlBQU1DLEdBQUcsR0FBRyxJQUFJQyxJQUFKLEVBQVo7O0FBQ0EsV0FBSyxNQUFNQyxJQUFYLElBQW1CSCxVQUFuQixFQUErQjtBQUM3QkcsUUFBQUEsSUFBSSxDQUFDVCxTQUFMLEdBQWlCTyxHQUFqQjtBQUNEO0FBQ0Y7O0FBZFksR0FsQjBCO0FBQUEsQ0FBWCxDQUF6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1peGluIH0gZnJvbSAnQGRpdG9qcy91dGlscydcblxuZXhwb3J0IGNvbnN0IFRpbWVTdGFtcGVkTWl4aW4gPSBtaXhpbihNb2RlbCA9PiBjbGFzcyBleHRlbmRzIE1vZGVsIHtcbiAgc3RhdGljIHByb3BlcnRpZXMgPSB7XG4gICAgY3JlYXRlZEF0OiB7XG4gICAgICB0eXBlOiAndGltZXN0YW1wJyxcbiAgICAgIGRlZmF1bHQ6ICdub3coKSdcbiAgICB9LFxuXG4gICAgdXBkYXRlZEF0OiB7XG4gICAgICB0eXBlOiAndGltZXN0YW1wJyxcbiAgICAgIGRlZmF1bHQ6ICdub3coKSdcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgc2NvcGVzID0ge1xuICAgIHRpbWVTdGFtcGVkOiBxdWVyeSA9PiBxdWVyeVxuICAgICAgLnNlbGVjdCgnY3JlYXRlZEF0JywgJ3VwZGF0ZWRBdCcpXG4gIH1cblxuICBzdGF0aWMgaG9va3MgPSB7XG4gICAgJ2JlZm9yZTppbnNlcnQnKHsgaW5wdXRJdGVtcyB9KSB7XG4gICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpXG4gICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaW5wdXRJdGVtcykge1xuICAgICAgICBpdGVtLmNyZWF0ZWRBdCA9IG5vd1xuICAgICAgICBpdGVtLnVwZGF0ZWRBdCA9IG5vd1xuICAgICAgfVxuICAgIH0sXG5cbiAgICAnYmVmb3JlOnVwZGF0ZScoeyBpbnB1dEl0ZW1zIH0pIHtcbiAgICAgIGNvbnN0IG5vdyA9IG5ldyBEYXRlKClcbiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBpbnB1dEl0ZW1zKSB7XG4gICAgICAgIGl0ZW0udXBkYXRlZEF0ID0gbm93XG4gICAgICB9XG4gICAgfVxuICB9XG59KVxuIl19
|
package/lib/mixins/UserMixin.js
CHANGED
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
4
|
exports.UserMixin = void 0;
|
|
5
5
|
|
|
6
|
+
require("core-js/modules/esnext.async-iterator.find.js");
|
|
7
|
+
|
|
8
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
9
|
+
|
|
10
|
+
require("core-js/modules/esnext.iterator.find.js");
|
|
11
|
+
|
|
6
12
|
var _bcryptjs = _interopRequireDefault(require("bcryptjs"));
|
|
7
13
|
|
|
8
14
|
var _koaPassport = _interopRequireDefault(require("koa-passport"));
|
|
@@ -16,9 +22,9 @@ var _utils = require("@ditojs/utils");
|
|
|
16
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
23
|
|
|
18
24
|
const UserMixin = (0, _utils.mixin)(Model => {
|
|
19
|
-
var _class
|
|
25
|
+
var _class;
|
|
20
26
|
|
|
21
|
-
return
|
|
27
|
+
return _class = class extends Model {
|
|
22
28
|
static get properties() {
|
|
23
29
|
const {
|
|
24
30
|
usernameProperty,
|
|
@@ -120,7 +126,7 @@ const UserMixin = (0, _utils.mixin)(Model => {
|
|
|
120
126
|
usernameProperty: 'username',
|
|
121
127
|
passwordProperty: 'password',
|
|
122
128
|
sessionScope: undefined
|
|
123
|
-
},
|
|
129
|
+
}, _class;
|
|
124
130
|
});
|
|
125
131
|
exports.UserMixin = UserMixin;
|
|
126
132
|
const userClasses = {};
|
|
@@ -142,4 +148,4 @@ _koaPassport.default.deserializeUser(async (req, identifier, done) => {
|
|
|
142
148
|
done(err);
|
|
143
149
|
}
|
|
144
150
|
});
|
|
145
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvVXNlck1peGluLmpzIl0sIm5hbWVzIjpbIlVzZXJNaXhpbiIsIk1vZGVsIiwicHJvcGVydGllcyIsInVzZXJuYW1lUHJvcGVydHkiLCJwYXNzd29yZFByb3BlcnR5IiwiZGVmaW5pdGlvbiIsIm9wdGlvbnMiLCJ0eXBlIiwicmVxdWlyZWQiLCJjb21wdXRlZCIsImhhc2giLCJoaWRkZW4iLCJsYXN0TG9naW4iLCJudWxsYWJsZSIsInBhc3N3b3JkIiwidW5kZWZpbmVkIiwiYmNyeXB0IiwiaGFzaFN5bmMiLCJnZW5TYWx0U3luYyIsIiR2ZXJpZnlQYXNzd29yZCIsImNvbXBhcmUiLCIkaGFzUm9sZSIsInJvbGVzIiwiZmluZCIsInJvbGUiLCJpbmNsdWRlcyIsIiRoYXNPd25lciIsIm93bmVyIiwiJGlzIiwiJGlzTG9nZ2VkSW4iLCJjdHgiLCJzdGF0ZSIsInVzZXIiLCJpbml0aWFsaXplIiwidXNlckNsYXNzZXMiLCJuYW1lIiwicGFzc3BvcnQiLCJ1c2UiLCJMb2NhbFN0cmF0ZWd5IiwidXNlcm5hbWVGaWVsZCIsInBhc3N3b3JkRmllbGQiLCJwYXNzUmVxVG9DYWxsYmFjayIsInJlcSIsInVzZXJuYW1lIiwiZG9uZSIsInNlc3Npb25RdWVyeSIsInRyYW5zYWN0aW9uIiwiZmluZE9uZSIsInJlcyIsImVyciIsImxvZ2luIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJhdXRoZW50aWNhdGUiLCJtZXNzYWdlIiwic3RhdHVzIiwiQXV0aGVudGljYXRpb25FcnJvciIsInRyeCIsInF1ZXJ5Iiwid2l0aFNjb3BlIiwic2Vzc2lvblNjb3BlIiwic2VyaWFsaXplVXNlciIsIm1vZGVsTmFtZSIsImNvbnN0cnVjdG9yIiwiaWRlbnRpZmllciIsImlkIiwiZGVzZXJpYWxpemVVc2VyIiwidXNlcklkIiwic3BsaXQiLCJ1c2VyQ2xhc3MiLCJmaW5kQnlJZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7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Y3J5cHQgZnJvbSAnYmNyeXB0anMnXG5pbXBvcnQgcGFzc3BvcnQgZnJvbSAna29hLXBhc3Nwb3J0J1xuaW1wb3J0IHsgU3RyYXRlZ3kgYXMgTG9jYWxTdHJhdGVneSB9IGZyb20gJ3Bhc3Nwb3J0LWxvY2FsJ1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25FcnJvciB9IGZyb20gJ0AvZXJyb3JzJ1xuaW1wb3J0IHsgbWl4aW4sIGFzQXJyYXkgfSBmcm9tICdAZGl0b2pzL3V0aWxzJ1xuXG5leHBvcnQgY29uc3QgVXNlck1peGluID0gbWl4aW4oTW9kZWwgPT4gY2xhc3MgZXh0ZW5kcyBNb2RlbCB7XG4gIHN0YXRpYyBvcHRpb25zID0ge1xuICAgIHVzZXJuYW1lUHJvcGVydHk6ICd1c2VybmFtZScsXG4gICAgcGFzc3dvcmRQcm9wZXJ0eTogJ3Bhc3N3b3JkJyxcbiAgICAvLyBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IChlYWdlcikgc2NvcGVzIHRvIGJlIGFwcGxpZWQgd2hlblxuICAgIC8vIHRoZSB1c2VyIGlzIGRlc2VyaWFsaXplZCBmcm9tIHRoZSBzZXNzaW9uLlxuICAgIHNlc3Npb25TY29wZTogdW5kZWZpbmVkXG4gIH1cblxuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgY29uc3Qge1xuICAgICAgdXNlcm5hbWVQcm9wZXJ0eSxcbiAgICAgIHBhc3N3b3JkUHJvcGVydHlcbiAgICB9ID0gdGhpcy5kZWZpbml0aW9uLm9wdGlvbnNcbiAgICByZXR1cm4ge1xuICAgICAgW3VzZXJuYW1lUHJvcGVydHldOiB7XG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgfSxcblxuICAgICAgLy8gYHBhc3N3b3JkYCBpc24ndCBzdG9yZWQsIGJ1dCB0aGlzIGlzIHJlcXVpcmVkIGZvciB2YWxpZGF0aW9uOlxuICAgICAgW3Bhc3N3b3JkUHJvcGVydHldOiB7XG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBjb21wdXRlZDogdHJ1ZVxuICAgICAgfSxcblxuICAgICAgaGFzaDoge1xuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgaGlkZGVuOiB0cnVlXG4gICAgICB9LFxuXG4gICAgICBsYXN0TG9naW46IHtcbiAgICAgICAgdHlwZTogJ3RpbWVzdGFtcCcsXG4gICAgICAgIG51bGxhYmxlOiB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0IHBhc3N3b3JkKCkge1xuICAgIC8vIE5pY2UgdHJ5IDspXG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG5cbiAgc2V0IHBhc3N3b3JkKHBhc3N3b3JkKSB7XG4gICAgdGhpcy5oYXNoID0gYmNyeXB0Lmhhc2hTeW5jKHBhc3N3b3JkLCBiY3J5cHQuZ2VuU2FsdFN5bmMoMTApKVxuICB9XG5cbiAgYXN5bmMgJHZlcmlmeVBhc3N3b3JkKHBhc3N3b3JkKSB7XG4gICAgcmV0dXJuIGJjcnlwdC5jb21wYXJlKHBhc3N3b3JkLCB0aGlzLmhhc2gpXG4gIH1cblxuICAkaGFzUm9sZSguLi5yb2xlcykge1xuICAgIC8vIFN1cHBvcnQgYW4gb3B0aW9uYWwgYHJvbGVzYCBhcnJheSBvbiB0aGUgbW9kZWwgdGhhdCBjYW4gY29udGFpbiByb2xlcy5cbiAgICByZXR1cm4gdGhpcy5yb2xlcz8uZmluZChyb2xlID0+IHJvbGVzLmluY2x1ZGVzKHJvbGUpKSB8fCBmYWxzZVxuICB9XG5cbiAgJGhhc093bmVyKG93bmVyKSB7XG4gICAgcmV0dXJuIHRoaXMuJGlzKG93bmVyKVxuICB9XG5cbiAgJGlzTG9nZ2VkSW4oY3R4KSB7XG4gICAgcmV0dXJuIHRoaXMuJGlzKGN0eC5zdGF0ZS51c2VyKVxuICB9XG5cbiAgc3RhdGljIGluaXRpYWxpemUoKSB7XG4gICAgc3VwZXIuaW5pdGlhbGl6ZSgpXG4gICAgdXNlckNsYXNzZXNbdGhpcy5uYW1lXSA9IHRoaXNcbiAgICBjb25zdCB7XG4gICAgICB1c2VybmFtZVByb3BlcnR5LFxuICAgICAgcGFzc3dvcmRQcm9wZXJ0eVxuICAgIH0gPSB0aGlzLmRlZmluaXRpb24ub3B0aW9uc1xuICAgIHBhc3Nwb3J0LnVzZSh0aGlzLm5hbWUsXG4gICAgICBuZXcgTG9jYWxTdHJhdGVneShcbiAgICAgICAge1xuICAgICAgICAgIHVzZXJuYW1lRmllbGQ6IHVzZXJuYW1lUHJvcGVydHksXG4gICAgICAgICAgcGFzc3dvcmRGaWVsZDogcGFzc3dvcmRQcm9wZXJ0eSxcbiAgICAgICAgICAvLyBXZWUgbmVlZCB0aGUgYHJlcWAgb2JqZWN0LCBzbyB3ZSBjYW4gZ2V0IHRoZSBhY3RpdmUgZGF0YWJhc2VcbiAgICAgICAgICAvLyB0cmFuc2FjdGlvbiB0aHJvdWdoIGByZXEuY3R4LnRyYW5zYWN0aW9uYDpcbiAgICAgICAgICBwYXNzUmVxVG9DYWxsYmFjazogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBhc3luYyAocmVxLCB1c2VybmFtZSwgcGFzc3dvcmQsIGRvbmUpID0+IHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgdXNlciA9IGF3YWl0IHRoaXMuc2Vzc2lvblF1ZXJ5KHJlcS5jdHgudHJhbnNhY3Rpb24pXG4gICAgICAgICAgICAgIC5maW5kT25lKHVzZXJuYW1lUHJvcGVydHksIHVzZXJuYW1lKVxuICAgICAgICAgICAgY29uc3QgcmVzID0gdXNlciAmJiBhd2FpdCB1c2VyLiR2ZXJpZnlQYXNzd29yZChwYXNzd29yZClcbiAgICAgICAgICAgICAgPyB1c2VyXG4gICAgICAgICAgICAgIDogbnVsbFxuICAgICAgICAgICAgZG9uZShudWxsLCByZXMpXG4gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBkb25lKGVycilcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIClcbiAgICApXG4gIH1cblxuICBzdGF0aWMgYXN5bmMgbG9naW4oY3R4LCBvcHRpb25zKSB7XG4gICAgLy8gVW5mb3J0dW5hdGVseSBrb2EtcGFzc3BvcnQgaXNuJ3QgcHJvbWlzaWZpZWQgeWV0LCBzbyBkbyBzb21lIHdyYXBwaW5nOlxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAvLyBVc2UgYSBjdXN0b20gY2FsbGJhY2sgdG8gaGFuZGxlIGF1dGhlbnRpY2F0aW9uLCBzZWU6XG4gICAgICAvLyBodHRwOi8vd3d3LnBhc3Nwb3J0anMub3JnL2RvY3MvZG93bmxvYWRzL2h0bWwvI2N1c3RvbS1jYWxsYmFja1xuICAgICAgcGFzc3BvcnQuYXV0aGVudGljYXRlKHRoaXMubmFtZSwgYXN5bmMgKGVyciwgdXNlciwgbWVzc2FnZSwgc3RhdHVzKSA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICByZWplY3QoZXJyKVxuICAgICAgICB9IGVsc2UgaWYgKHVzZXIpIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgY3R4LmxvZ2luKHVzZXIsIG9wdGlvbnMpXG4gICAgICAgICAgICByZXNvbHZlKHVzZXIpXG4gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICByZWplY3QoZXJyKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZWplY3QobmV3IEF1dGhlbnRpY2F0aW9uRXJyb3IoXG4gICAgICAgICAgICBtZXNzYWdlIHx8ICdQYXNzd29yZCBvciB1c2VybmFtZSBpcyBpbmNvcnJlY3QnLCBzdGF0dXMpKVxuICAgICAgICB9XG4gICAgICB9KShjdHgpXG4gICAgfSlcbiAgfVxuXG4gIHN0YXRpYyBzZXNzaW9uUXVlcnkodHJ4KSB7XG4gICAgcmV0dXJuIHRoaXMucXVlcnkodHJ4KS53aXRoU2NvcGUoXG4gICAgICAuLi5hc0FycmF5KHRoaXMuZGVmaW5pdGlvbi5vcHRpb25zLnNlc3Npb25TY29wZSlcbiAgICApXG4gIH1cbn0pXG5cbmNvbnN0IHVzZXJDbGFzc2VzID0ge31cblxuLy8gTk9URTogV2UgY2FuJ3QgdXNlIHRvQ2FsbGJhY2soKSBoZXJlIHNpbmNlIHBhc3Nwb3J0IGNoZWNrcyBmdW5jdGlvbiBhcml0eSB0b1xuLy8gZGV0ZXJtaW5lIHNlcXVlbmNlIG9mIGFyZ3VtZW50cyByZWNlaXZlZCwgYW5kIGByZXFgIHdvdWxkIG5vdCBiZSBpbmNsdWRlZDpcbnBhc3Nwb3J0LnNlcmlhbGl6ZVVzZXIoKHJlcSwgdXNlciwgZG9uZSkgPT4ge1xuICAvLyBUbyBzdXBwb3J0IG11bHRpcGxlIHVzZXIgbW9kZWwgY2xhc3NlcywgdXNlIGJvdGggdGhlIG1vZGVsIGNsYXNzIG5hbWUgYW5kXG4gIC8vIGlkIGFzIGlkZW50aWZpZXIuXG4gIGNvbnN0IG1vZGVsTmFtZSA9IHVzZXI/LmNvbnN0cnVjdG9yLm5hbWVcbiAgY29uc3QgaWRlbnRpZmllciA9IG1vZGVsTmFtZSAmJiB1c2VyQ2xhc3Nlc1ttb2RlbE5hbWVdXG4gICAgPyBgJHttb2RlbE5hbWV9LSR7dXNlci5pZH1gXG4gICAgOiBudWxsXG4gIGRvbmUobnVsbCwgaWRlbnRpZmllcilcbn0pXG5cbnBhc3Nwb3J0LmRlc2VyaWFsaXplVXNlcihhc3luYyAocmVxLCBpZGVudGlmaWVyLCBkb25lKSA9PiB7XG4gIGNvbnN0IFttb2RlbE5hbWUsIHVzZXJJZF0gPSBpZGVudGlmaWVyLnNwbGl0KCctJylcbiAgY29uc3QgdXNlckNsYXNzID0gdXNlckNsYXNzZXNbbW9kZWxOYW1lXVxuICB0cnkge1xuICAgIGNvbnN0IHVzZXIgPSB1c2VyQ2xhc3NcbiAgICAgID8gYXdhaXQgdXNlckNsYXNzLnNlc3Npb25RdWVyeShyZXEuY3R4LnRyYW5zYWN0aW9uKS5maW5kQnlJZCh1c2VySWQpXG4gICAgICA6IG51bGxcbiAgICBkb25lKG51bGwsIHVzZXIpXG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGRvbmUoZXJyKVxuICB9XG59KVxuIl19
|
|
151
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvVXNlck1peGluLmpzIl0sIm5hbWVzIjpbIlVzZXJNaXhpbiIsIk1vZGVsIiwicHJvcGVydGllcyIsInVzZXJuYW1lUHJvcGVydHkiLCJwYXNzd29yZFByb3BlcnR5IiwiZGVmaW5pdGlvbiIsIm9wdGlvbnMiLCJ0eXBlIiwicmVxdWlyZWQiLCJjb21wdXRlZCIsImhhc2giLCJoaWRkZW4iLCJsYXN0TG9naW4iLCJudWxsYWJsZSIsInBhc3N3b3JkIiwidW5kZWZpbmVkIiwiYmNyeXB0IiwiaGFzaFN5bmMiLCJnZW5TYWx0U3luYyIsIiR2ZXJpZnlQYXNzd29yZCIsImNvbXBhcmUiLCIkaGFzUm9sZSIsInJvbGVzIiwiZmluZCIsInJvbGUiLCJpbmNsdWRlcyIsIiRoYXNPd25lciIsIm93bmVyIiwiJGlzIiwiJGlzTG9nZ2VkSW4iLCJjdHgiLCJzdGF0ZSIsInVzZXIiLCJpbml0aWFsaXplIiwidXNlckNsYXNzZXMiLCJuYW1lIiwicGFzc3BvcnQiLCJ1c2UiLCJMb2NhbFN0cmF0ZWd5IiwidXNlcm5hbWVGaWVsZCIsInBhc3N3b3JkRmllbGQiLCJwYXNzUmVxVG9DYWxsYmFjayIsInJlcSIsInVzZXJuYW1lIiwiZG9uZSIsInNlc3Npb25RdWVyeSIsInRyYW5zYWN0aW9uIiwiZmluZE9uZSIsInJlcyIsImVyciIsImxvZ2luIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJhdXRoZW50aWNhdGUiLCJtZXNzYWdlIiwic3RhdHVzIiwiQXV0aGVudGljYXRpb25FcnJvciIsInRyeCIsInF1ZXJ5Iiwid2l0aFNjb3BlIiwic2Vzc2lvblNjb3BlIiwic2VyaWFsaXplVXNlciIsIm1vZGVsTmFtZSIsImNvbnN0cnVjdG9yIiwiaWRlbnRpZmllciIsImlkIiwiZGVzZXJpYWxpemVVc2VyIiwidXNlcklkIiwic3BsaXQiLCJ1c2VyQ2xhc3MiLCJmaW5kQnlJZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQUVPLE1BQU1BLFNBQVMsR0FBRyxrQkFBTUMsS0FBSztBQUFBOztBQUFBLGtCQUFJLGNBQWNBLEtBQWQsQ0FBb0I7QUFTckMsZUFBVkMsVUFBVSxHQUFHO0FBQ3RCLFlBQU07QUFDSkMsUUFBQUEsZ0JBREk7QUFFSkMsUUFBQUE7QUFGSSxVQUdGLEtBQUtDLFVBQUwsQ0FBZ0JDLE9BSHBCO0FBSUEsYUFBTztBQUNMLFNBQUNILGdCQUFELEdBQW9CO0FBQ2xCSSxVQUFBQSxJQUFJLEVBQUUsUUFEWTtBQUVsQkMsVUFBQUEsUUFBUSxFQUFFO0FBRlEsU0FEZjtBQU9MLFNBQUNKLGdCQUFELEdBQW9CO0FBQ2xCRyxVQUFBQSxJQUFJLEVBQUUsUUFEWTtBQUVsQkUsVUFBQUEsUUFBUSxFQUFFO0FBRlEsU0FQZjtBQVlMQyxRQUFBQSxJQUFJLEVBQUU7QUFDSkgsVUFBQUEsSUFBSSxFQUFFLFFBREY7QUFFSkksVUFBQUEsTUFBTSxFQUFFO0FBRkosU0FaRDtBQWlCTEMsUUFBQUEsU0FBUyxFQUFFO0FBQ1RMLFVBQUFBLElBQUksRUFBRSxXQURHO0FBRVRNLFVBQUFBLFFBQVEsRUFBRTtBQUZEO0FBakJOLE9BQVA7QUFzQkQ7O0FBRVcsUUFBUkMsUUFBUSxHQUFHO0FBRWIsYUFBT0MsU0FBUDtBQUNEOztBQUVXLFFBQVJELFFBQVEsQ0FBQ0EsUUFBRCxFQUFXO0FBQ3JCLFdBQUtKLElBQUwsR0FBWU0sa0JBQU9DLFFBQVAsQ0FBZ0JILFFBQWhCLEVBQTBCRSxrQkFBT0UsV0FBUCxDQUFtQixFQUFuQixDQUExQixDQUFaO0FBQ0Q7O0FBRW9CLFVBQWZDLGVBQWUsQ0FBQ0wsUUFBRCxFQUFXO0FBQzlCLGFBQU9FLGtCQUFPSSxPQUFQLENBQWVOLFFBQWYsRUFBeUIsS0FBS0osSUFBOUIsQ0FBUDtBQUNEOztBQUVEVyxJQUFBQSxRQUFRLENBQUMsR0FBR0MsS0FBSixFQUFXO0FBQUE7O0FBRWpCLGFBQU8scUJBQUtBLEtBQUwsaUNBQVlDLElBQVosQ0FBaUJDLElBQUksSUFBSUYsS0FBSyxDQUFDRyxRQUFOLENBQWVELElBQWYsQ0FBekIsTUFBa0QsS0FBekQ7QUFDRDs7QUFFREUsSUFBQUEsU0FBUyxDQUFDQyxLQUFELEVBQVE7QUFDZixhQUFPLEtBQUtDLEdBQUwsQ0FBU0QsS0FBVCxDQUFQO0FBQ0Q7O0FBRURFLElBQUFBLFdBQVcsQ0FBQ0MsR0FBRCxFQUFNO0FBQ2YsYUFBTyxLQUFLRixHQUFMLENBQVNFLEdBQUcsQ0FBQ0MsS0FBSixDQUFVQyxJQUFuQixDQUFQO0FBQ0Q7O0FBRWdCLFdBQVZDLFVBQVUsR0FBRztBQUNsQixZQUFNQSxVQUFOO0FBQ0FDLE1BQUFBLFdBQVcsQ0FBQyxLQUFLQyxJQUFOLENBQVgsR0FBeUIsSUFBekI7QUFDQSxZQUFNO0FBQ0poQyxRQUFBQSxnQkFESTtBQUVKQyxRQUFBQTtBQUZJLFVBR0YsS0FBS0MsVUFBTCxDQUFnQkMsT0FIcEI7O0FBSUE4QiwyQkFBU0MsR0FBVCxDQUFhLEtBQUtGLElBQWxCLEVBQ0UsSUFBSUcsdUJBQUosQ0FDRTtBQUNFQyxRQUFBQSxhQUFhLEVBQUVwQyxnQkFEakI7QUFFRXFDLFFBQUFBLGFBQWEsRUFBRXBDLGdCQUZqQjtBQUtFcUMsUUFBQUEsaUJBQWlCLEVBQUU7QUFMckIsT0FERixFQVFFLE9BQU9DLEdBQVAsRUFBWUMsUUFBWixFQUFzQjdCLFFBQXRCLEVBQWdDOEIsSUFBaEMsS0FBeUM7QUFDdkMsWUFBSTtBQUNGLGdCQUFNWixJQUFJLEdBQUcsTUFBTSxLQUFLYSxZQUFMLENBQWtCSCxHQUFHLENBQUNaLEdBQUosQ0FBUWdCLFdBQTFCLEVBQ2hCQyxPQURnQixDQUNSNUMsZ0JBRFEsRUFDVXdDLFFBRFYsQ0FBbkI7QUFFQSxnQkFBTUssR0FBRyxHQUFHaEIsSUFBSSxLQUFJLE1BQU1BLElBQUksQ0FBQ2IsZUFBTCxDQUFxQkwsUUFBckIsQ0FBVixDQUFKLEdBQ1JrQixJQURRLEdBRVIsSUFGSjtBQUdBWSxVQUFBQSxJQUFJLENBQUMsSUFBRCxFQUFPSSxHQUFQLENBQUo7QUFDRCxTQVBELENBT0UsT0FBT0MsR0FBUCxFQUFZO0FBQ1pMLFVBQUFBLElBQUksQ0FBQ0ssR0FBRCxDQUFKO0FBQ0Q7QUFDRixPQW5CSCxDQURGO0FBdUJEOztBQUVpQixpQkFBTEMsS0FBSyxDQUFDcEIsR0FBRCxFQUFNeEIsT0FBTixFQUFlO0FBRS9CLGFBQU8sSUFBSTZDLE9BQUosQ0FBWSxDQUFDQyxPQUFELEVBQVVDLE1BQVYsS0FBcUI7QUFHdENqQiw2QkFBU2tCLFlBQVQsQ0FBc0IsS0FBS25CLElBQTNCLEVBQWlDLE9BQU9jLEdBQVAsRUFBWWpCLElBQVosRUFBa0J1QixPQUFsQixFQUEyQkMsTUFBM0IsS0FBc0M7QUFDckUsY0FBSVAsR0FBSixFQUFTO0FBQ1BJLFlBQUFBLE1BQU0sQ0FBQ0osR0FBRCxDQUFOO0FBQ0QsV0FGRCxNQUVPLElBQUlqQixJQUFKLEVBQVU7QUFDZixnQkFBSTtBQUNGLG9CQUFNRixHQUFHLENBQUNvQixLQUFKLENBQVVsQixJQUFWLEVBQWdCMUIsT0FBaEIsQ0FBTjtBQUNBOEMsY0FBQUEsT0FBTyxDQUFDcEIsSUFBRCxDQUFQO0FBQ0QsYUFIRCxDQUdFLE9BQU9pQixHQUFQLEVBQVk7QUFDWkksY0FBQUEsTUFBTSxDQUFDSixHQUFELENBQU47QUFDRDtBQUNGLFdBUE0sTUFPQTtBQUNMSSxZQUFBQSxNQUFNLENBQUMsSUFBSUksMkJBQUosQ0FDTEYsT0FBTyxJQUFJLG1DQUROLEVBQzJDQyxNQUQzQyxDQUFELENBQU47QUFFRDtBQUNGLFNBZEQsRUFjRzFCLEdBZEg7QUFlRCxPQWxCTSxDQUFQO0FBbUJEOztBQUVrQixXQUFaZSxZQUFZLENBQUNhLEdBQUQsRUFBTTtBQUN2QixhQUFPLEtBQUtDLEtBQUwsQ0FBV0QsR0FBWCxFQUFnQkUsU0FBaEIsQ0FDTCxHQUFHLG9CQUFRLEtBQUt2RCxVQUFMLENBQWdCQyxPQUFoQixDQUF3QnVELFlBQWhDLENBREUsQ0FBUDtBQUdEOztBQTNIeUQsR0FBeEIsU0FDM0J2RCxPQUQyQixHQUNqQjtBQUNmSCxJQUFBQSxnQkFBZ0IsRUFBRSxVQURIO0FBRWZDLElBQUFBLGdCQUFnQixFQUFFLFVBRkg7QUFLZnlELElBQUFBLFlBQVksRUFBRTlDO0FBTEMsR0FEaUI7QUFBQSxDQUFYLENBQWxCOztBQThIUCxNQUFNbUIsV0FBVyxHQUFHLEVBQXBCOztBQUlBRSxxQkFBUzBCLGFBQVQsQ0FBdUIsQ0FBQ3BCLEdBQUQsRUFBTVYsSUFBTixFQUFZWSxJQUFaLEtBQXFCO0FBRzFDLFFBQU1tQixTQUFTLEdBQUcvQixJQUFILG9CQUFHQSxJQUFJLENBQUVnQyxXQUFOLENBQWtCN0IsSUFBcEM7QUFDQSxRQUFNOEIsVUFBVSxHQUFHRixTQUFTLElBQUk3QixXQUFXLENBQUM2QixTQUFELENBQXhCLEdBQ2QsR0FBRUEsU0FBVSxJQUFHL0IsSUFBSSxDQUFDa0MsRUFBRyxFQURULEdBRWYsSUFGSjtBQUdBdEIsRUFBQUEsSUFBSSxDQUFDLElBQUQsRUFBT3FCLFVBQVAsQ0FBSjtBQUNELENBUkQ7O0FBVUE3QixxQkFBUytCLGVBQVQsQ0FBeUIsT0FBT3pCLEdBQVAsRUFBWXVCLFVBQVosRUFBd0JyQixJQUF4QixLQUFpQztBQUN4RCxRQUFNLENBQUNtQixTQUFELEVBQVlLLE1BQVosSUFBc0JILFVBQVUsQ0FBQ0ksS0FBWCxDQUFpQixHQUFqQixDQUE1QjtBQUNBLFFBQU1DLFNBQVMsR0FBR3BDLFdBQVcsQ0FBQzZCLFNBQUQsQ0FBN0I7O0FBQ0EsTUFBSTtBQUNGLFVBQU0vQixJQUFJLEdBQUdzQyxTQUFTLEdBQ2xCLE1BQU1BLFNBQVMsQ0FBQ3pCLFlBQVYsQ0FBdUJILEdBQUcsQ0FBQ1osR0FBSixDQUFRZ0IsV0FBL0IsRUFBNEN5QixRQUE1QyxDQUFxREgsTUFBckQsQ0FEWSxHQUVsQixJQUZKO0FBR0F4QixJQUFBQSxJQUFJLENBQUMsSUFBRCxFQUFPWixJQUFQLENBQUo7QUFDRCxHQUxELENBS0UsT0FBT2lCLEdBQVAsRUFBWTtBQUNaTCxJQUFBQSxJQUFJLENBQUNLLEdBQUQsQ0FBSjtBQUNEO0FBQ0YsQ0FYRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBiY3J5cHQgZnJvbSAnYmNyeXB0anMnXG5pbXBvcnQgcGFzc3BvcnQgZnJvbSAna29hLXBhc3Nwb3J0J1xuaW1wb3J0IHsgU3RyYXRlZ3kgYXMgTG9jYWxTdHJhdGVneSB9IGZyb20gJ3Bhc3Nwb3J0LWxvY2FsJ1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25FcnJvciB9IGZyb20gJ0AvZXJyb3JzJ1xuaW1wb3J0IHsgbWl4aW4sIGFzQXJyYXkgfSBmcm9tICdAZGl0b2pzL3V0aWxzJ1xuXG5leHBvcnQgY29uc3QgVXNlck1peGluID0gbWl4aW4oTW9kZWwgPT4gY2xhc3MgZXh0ZW5kcyBNb2RlbCB7XG4gIHN0YXRpYyBvcHRpb25zID0ge1xuICAgIHVzZXJuYW1lUHJvcGVydHk6ICd1c2VybmFtZScsXG4gICAgcGFzc3dvcmRQcm9wZXJ0eTogJ3Bhc3N3b3JkJyxcbiAgICAvLyBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IChlYWdlcikgc2NvcGVzIHRvIGJlIGFwcGxpZWQgd2hlblxuICAgIC8vIHRoZSB1c2VyIGlzIGRlc2VyaWFsaXplZCBmcm9tIHRoZSBzZXNzaW9uLlxuICAgIHNlc3Npb25TY29wZTogdW5kZWZpbmVkXG4gIH1cblxuICBzdGF0aWMgZ2V0IHByb3BlcnRpZXMoKSB7XG4gICAgY29uc3Qge1xuICAgICAgdXNlcm5hbWVQcm9wZXJ0eSxcbiAgICAgIHBhc3N3b3JkUHJvcGVydHlcbiAgICB9ID0gdGhpcy5kZWZpbml0aW9uLm9wdGlvbnNcbiAgICByZXR1cm4ge1xuICAgICAgW3VzZXJuYW1lUHJvcGVydHldOiB7XG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgfSxcblxuICAgICAgLy8gYHBhc3N3b3JkYCBpc24ndCBzdG9yZWQsIGJ1dCB0aGlzIGlzIHJlcXVpcmVkIGZvciB2YWxpZGF0aW9uOlxuICAgICAgW3Bhc3N3b3JkUHJvcGVydHldOiB7XG4gICAgICAgIHR5cGU6ICdzdHJpbmcnLFxuICAgICAgICBjb21wdXRlZDogdHJ1ZVxuICAgICAgfSxcblxuICAgICAgaGFzaDoge1xuICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgaGlkZGVuOiB0cnVlXG4gICAgICB9LFxuXG4gICAgICBsYXN0TG9naW46IHtcbiAgICAgICAgdHlwZTogJ3RpbWVzdGFtcCcsXG4gICAgICAgIG51bGxhYmxlOiB0cnVlXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0IHBhc3N3b3JkKCkge1xuICAgIC8vIE5pY2UgdHJ5IDspXG4gICAgcmV0dXJuIHVuZGVmaW5lZFxuICB9XG5cbiAgc2V0IHBhc3N3b3JkKHBhc3N3b3JkKSB7XG4gICAgdGhpcy5oYXNoID0gYmNyeXB0Lmhhc2hTeW5jKHBhc3N3b3JkLCBiY3J5cHQuZ2VuU2FsdFN5bmMoMTApKVxuICB9XG5cbiAgYXN5bmMgJHZlcmlmeVBhc3N3b3JkKHBhc3N3b3JkKSB7XG4gICAgcmV0dXJuIGJjcnlwdC5jb21wYXJlKHBhc3N3b3JkLCB0aGlzLmhhc2gpXG4gIH1cblxuICAkaGFzUm9sZSguLi5yb2xlcykge1xuICAgIC8vIFN1cHBvcnQgYW4gb3B0aW9uYWwgYHJvbGVzYCBhcnJheSBvbiB0aGUgbW9kZWwgdGhhdCBjYW4gY29udGFpbiByb2xlcy5cbiAgICByZXR1cm4gdGhpcy5yb2xlcz8uZmluZChyb2xlID0+IHJvbGVzLmluY2x1ZGVzKHJvbGUpKSB8fCBmYWxzZVxuICB9XG5cbiAgJGhhc093bmVyKG93bmVyKSB7XG4gICAgcmV0dXJuIHRoaXMuJGlzKG93bmVyKVxuICB9XG5cbiAgJGlzTG9nZ2VkSW4oY3R4KSB7XG4gICAgcmV0dXJuIHRoaXMuJGlzKGN0eC5zdGF0ZS51c2VyKVxuICB9XG5cbiAgc3RhdGljIGluaXRpYWxpemUoKSB7XG4gICAgc3VwZXIuaW5pdGlhbGl6ZSgpXG4gICAgdXNlckNsYXNzZXNbdGhpcy5uYW1lXSA9IHRoaXNcbiAgICBjb25zdCB7XG4gICAgICB1c2VybmFtZVByb3BlcnR5LFxuICAgICAgcGFzc3dvcmRQcm9wZXJ0eVxuICAgIH0gPSB0aGlzLmRlZmluaXRpb24ub3B0aW9uc1xuICAgIHBhc3Nwb3J0LnVzZSh0aGlzLm5hbWUsXG4gICAgICBuZXcgTG9jYWxTdHJhdGVneShcbiAgICAgICAge1xuICAgICAgICAgIHVzZXJuYW1lRmllbGQ6IHVzZXJuYW1lUHJvcGVydHksXG4gICAgICAgICAgcGFzc3dvcmRGaWVsZDogcGFzc3dvcmRQcm9wZXJ0eSxcbiAgICAgICAgICAvLyBXZWUgbmVlZCB0aGUgYHJlcWAgb2JqZWN0LCBzbyB3ZSBjYW4gZ2V0IHRoZSBhY3RpdmUgZGF0YWJhc2VcbiAgICAgICAgICAvLyB0cmFuc2FjdGlvbiB0aHJvdWdoIGByZXEuY3R4LnRyYW5zYWN0aW9uYDpcbiAgICAgICAgICBwYXNzUmVxVG9DYWxsYmFjazogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBhc3luYyAocmVxLCB1c2VybmFtZSwgcGFzc3dvcmQsIGRvbmUpID0+IHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgdXNlciA9IGF3YWl0IHRoaXMuc2Vzc2lvblF1ZXJ5KHJlcS5jdHgudHJhbnNhY3Rpb24pXG4gICAgICAgICAgICAgIC5maW5kT25lKHVzZXJuYW1lUHJvcGVydHksIHVzZXJuYW1lKVxuICAgICAgICAgICAgY29uc3QgcmVzID0gdXNlciAmJiBhd2FpdCB1c2VyLiR2ZXJpZnlQYXNzd29yZChwYXNzd29yZClcbiAgICAgICAgICAgICAgPyB1c2VyXG4gICAgICAgICAgICAgIDogbnVsbFxuICAgICAgICAgICAgZG9uZShudWxsLCByZXMpXG4gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICBkb25lKGVycilcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIClcbiAgICApXG4gIH1cblxuICBzdGF0aWMgYXN5bmMgbG9naW4oY3R4LCBvcHRpb25zKSB7XG4gICAgLy8gVW5mb3J0dW5hdGVseSBrb2EtcGFzc3BvcnQgaXNuJ3QgcHJvbWlzaWZpZWQgeWV0LCBzbyBkbyBzb21lIHdyYXBwaW5nOlxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAvLyBVc2UgYSBjdXN0b20gY2FsbGJhY2sgdG8gaGFuZGxlIGF1dGhlbnRpY2F0aW9uLCBzZWU6XG4gICAgICAvLyBodHRwOi8vd3d3LnBhc3Nwb3J0anMub3JnL2RvY3MvZG93bmxvYWRzL2h0bWwvI2N1c3RvbS1jYWxsYmFja1xuICAgICAgcGFzc3BvcnQuYXV0aGVudGljYXRlKHRoaXMubmFtZSwgYXN5bmMgKGVyciwgdXNlciwgbWVzc2FnZSwgc3RhdHVzKSA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICByZWplY3QoZXJyKVxuICAgICAgICB9IGVsc2UgaWYgKHVzZXIpIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgY3R4LmxvZ2luKHVzZXIsIG9wdGlvbnMpXG4gICAgICAgICAgICByZXNvbHZlKHVzZXIpXG4gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICByZWplY3QoZXJyKVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZWplY3QobmV3IEF1dGhlbnRpY2F0aW9uRXJyb3IoXG4gICAgICAgICAgICBtZXNzYWdlIHx8ICdQYXNzd29yZCBvciB1c2VybmFtZSBpcyBpbmNvcnJlY3QnLCBzdGF0dXMpKVxuICAgICAgICB9XG4gICAgICB9KShjdHgpXG4gICAgfSlcbiAgfVxuXG4gIHN0YXRpYyBzZXNzaW9uUXVlcnkodHJ4KSB7XG4gICAgcmV0dXJuIHRoaXMucXVlcnkodHJ4KS53aXRoU2NvcGUoXG4gICAgICAuLi5hc0FycmF5KHRoaXMuZGVmaW5pdGlvbi5vcHRpb25zLnNlc3Npb25TY29wZSlcbiAgICApXG4gIH1cbn0pXG5cbmNvbnN0IHVzZXJDbGFzc2VzID0ge31cblxuLy8gTk9URTogV2UgY2FuJ3QgdXNlIHRvQ2FsbGJhY2soKSBoZXJlIHNpbmNlIHBhc3Nwb3J0IGNoZWNrcyBmdW5jdGlvbiBhcml0eSB0b1xuLy8gZGV0ZXJtaW5lIHNlcXVlbmNlIG9mIGFyZ3VtZW50cyByZWNlaXZlZCwgYW5kIGByZXFgIHdvdWxkIG5vdCBiZSBpbmNsdWRlZDpcbnBhc3Nwb3J0LnNlcmlhbGl6ZVVzZXIoKHJlcSwgdXNlciwgZG9uZSkgPT4ge1xuICAvLyBUbyBzdXBwb3J0IG11bHRpcGxlIHVzZXIgbW9kZWwgY2xhc3NlcywgdXNlIGJvdGggdGhlIG1vZGVsIGNsYXNzIG5hbWUgYW5kXG4gIC8vIGlkIGFzIGlkZW50aWZpZXIuXG4gIGNvbnN0IG1vZGVsTmFtZSA9IHVzZXI/LmNvbnN0cnVjdG9yLm5hbWVcbiAgY29uc3QgaWRlbnRpZmllciA9IG1vZGVsTmFtZSAmJiB1c2VyQ2xhc3Nlc1ttb2RlbE5hbWVdXG4gICAgPyBgJHttb2RlbE5hbWV9LSR7dXNlci5pZH1gXG4gICAgOiBudWxsXG4gIGRvbmUobnVsbCwgaWRlbnRpZmllcilcbn0pXG5cbnBhc3Nwb3J0LmRlc2VyaWFsaXplVXNlcihhc3luYyAocmVxLCBpZGVudGlmaWVyLCBkb25lKSA9PiB7XG4gIGNvbnN0IFttb2RlbE5hbWUsIHVzZXJJZF0gPSBpZGVudGlmaWVyLnNwbGl0KCctJylcbiAgY29uc3QgdXNlckNsYXNzID0gdXNlckNsYXNzZXNbbW9kZWxOYW1lXVxuICB0cnkge1xuICAgIGNvbnN0IHVzZXIgPSB1c2VyQ2xhc3NcbiAgICAgID8gYXdhaXQgdXNlckNsYXNzLnNlc3Npb25RdWVyeShyZXEuY3R4LnRyYW5zYWN0aW9uKS5maW5kQnlJZCh1c2VySWQpXG4gICAgICA6IG51bGxcbiAgICBkb25lKG51bGwsIHVzZXIpXG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGRvbmUoZXJyKVxuICB9XG59KVxuIl19
|
package/lib/mixins/index.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
4
|
+
|
|
5
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
6
|
+
|
|
7
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
8
|
+
|
|
3
9
|
exports.__esModule = true;
|
|
4
10
|
|
|
5
11
|
var _AssetMixin = require("./AssetMixin");
|
|
@@ -33,4 +39,4 @@ Object.keys(_UserMixin).forEach(function (key) {
|
|
|
33
39
|
if (key in exports && exports[key] === _UserMixin[key]) return;
|
|
34
40
|
exports[key] = _UserMixin[key];
|
|
35
41
|
});
|
|
36
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvaW5kZXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQ0E7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFDQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUNBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL0Fzc2V0TWl4aW4nXG5leHBvcnQgKiBmcm9tICcuL1Nlc3Npb25NaXhpbidcbmV4cG9ydCAqIGZyb20gJy4vVGltZVN0YW1wZWRNaXhpbidcbmV4cG9ydCAqIGZyb20gJy4vVXNlck1peGluJ1xuIl19
|