@decaf-ts/core 0.3.32 → 0.3.33
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/LICENSE.md +157 -21
- package/README.md +0 -0
- package/dist/core.bundle.min.js +1 -1
- package/dist/core.bundle.min.js.LICENSE.txt +0 -0
- package/dist/esm/core.bundle.min.esm.js +1 -1
- package/dist/esm/core.bundle.min.esm.js.LICENSE.txt +0 -0
- package/dist/lib/identity/decorators.d.ts +24 -0
- package/dist/lib/identity/index.d.ts +2 -0
- package/dist/lib/identity/utils.d.ts +3 -0
- package/dist/lib/index.d.ts +25 -0
- package/dist/lib/interfaces/Builder.d.ts +16 -0
- package/dist/lib/interfaces/Executor.d.ts +19 -0
- package/dist/lib/interfaces/Observable.d.ts +31 -0
- package/dist/lib/interfaces/Observer.d.ts +16 -0
- package/dist/lib/interfaces/Paginatable.d.ts +4 -0
- package/dist/lib/interfaces/Queriable.d.ts +6 -0
- package/dist/lib/interfaces/RawExecutor.d.ts +20 -0
- package/dist/lib/interfaces/SequenceOptions.d.ts +19 -0
- package/dist/lib/interfaces/index.d.ts +7 -0
- package/dist/lib/model/BaseModel.d.ts +6 -0
- package/dist/lib/model/IdentifiedBaseModel.d.ts +7 -0
- package/dist/lib/model/User.d.ts +8 -0
- package/dist/lib/model/construction.d.ts +15 -0
- package/dist/lib/model/decorators.d.ts +75 -0
- package/dist/lib/model/index.d.ts +4 -0
- package/dist/lib/model/types.d.ts +6 -0
- package/dist/lib/persistence/Adapter.d.ts +86 -0
- package/dist/lib/persistence/Sequence.d.ts +22 -0
- package/dist/lib/persistence/constants.d.ts +22 -0
- package/dist/lib/persistence/decorators.d.ts +1 -0
- package/dist/lib/persistence/errors.d.ts +7 -0
- package/dist/lib/persistence/index.d.ts +5 -0
- package/dist/lib/query/Clause.d.ts +50 -0
- package/dist/lib/query/ClauseFactory.d.ts +71 -0
- package/dist/lib/query/Condition.d.ts +75 -0
- package/dist/lib/query/Paginator.d.ts +22 -0
- package/dist/lib/query/Query.d.ts +43 -0
- package/dist/lib/query/Statement.d.ts +55 -0
- package/dist/lib/query/clauses/FromClause.d.ts +45 -0
- package/dist/lib/query/clauses/GroupByClause.d.ts +21 -0
- package/dist/lib/query/clauses/InsertClause.d.ts +37 -0
- package/dist/lib/query/clauses/LimitClause.d.ts +29 -0
- package/dist/lib/query/clauses/OffsetClause.d.ts +21 -0
- package/dist/lib/query/clauses/OrderByClause.d.ts +37 -0
- package/dist/lib/query/clauses/SelectClause.d.ts +47 -0
- package/dist/lib/query/clauses/SelectorBasedClause.d.ts +25 -0
- package/dist/lib/query/clauses/ValuesClause.d.ts +21 -0
- package/dist/lib/query/clauses/WhereClause.d.ts +46 -0
- package/dist/lib/query/clauses/index.d.ts +10 -0
- package/dist/lib/query/constants.d.ts +79 -0
- package/dist/lib/query/errors.d.ts +7 -0
- package/dist/lib/query/index.d.ts +12 -0
- package/dist/lib/query/options.d.ts +372 -0
- package/dist/lib/query/selectors.d.ts +38 -0
- package/dist/lib/query/types.d.ts +2 -0
- package/dist/lib/repository/Context.d.ts +10 -0
- package/dist/lib/repository/Repository.d.ts +70 -0
- package/dist/lib/repository/constants.d.ts +25 -0
- package/dist/lib/repository/decorators.d.ts +2 -0
- package/dist/lib/repository/errors.d.ts +12 -0
- package/dist/lib/repository/index.d.ts +8 -0
- package/dist/lib/repository/injectables.d.ts +5 -0
- package/dist/lib/repository/types.d.ts +15 -0
- package/dist/lib/repository/utils.d.ts +3 -0
- package/dist/lib/validators/ClauseSequenceValidator.d.ts +28 -0
- package/dist/lib/validators/decorators.d.ts +10 -0
- package/dist/lib/validators/index.d.ts +2 -0
- package/lib/esm/identity/decorators.d.ts +0 -0
- package/lib/esm/identity/decorators.js +1 -1
- package/lib/esm/identity/index.d.ts +0 -0
- package/lib/esm/identity/index.js +1 -1
- package/lib/esm/identity/utils.d.ts +0 -0
- package/lib/esm/identity/utils.js +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +2 -2
- package/lib/esm/interfaces/Builder.d.ts +0 -0
- package/lib/esm/interfaces/Builder.js +1 -1
- package/lib/esm/interfaces/Executor.d.ts +0 -0
- package/lib/esm/interfaces/Executor.js +1 -1
- package/lib/esm/interfaces/Observable.d.ts +0 -0
- package/lib/esm/interfaces/Observable.js +1 -1
- package/lib/esm/interfaces/Observer.d.ts +0 -0
- package/lib/esm/interfaces/Observer.js +1 -1
- package/lib/esm/interfaces/Paginatable.d.ts +0 -0
- package/lib/esm/interfaces/Paginatable.js +1 -1
- package/lib/esm/interfaces/Queriable.d.ts +0 -0
- package/lib/esm/interfaces/Queriable.js +1 -1
- package/lib/esm/interfaces/RawExecutor.d.ts +0 -0
- package/lib/esm/interfaces/RawExecutor.js +1 -1
- package/lib/esm/interfaces/SequenceOptions.d.ts +0 -0
- package/lib/esm/interfaces/SequenceOptions.js +1 -1
- package/lib/esm/interfaces/index.d.ts +0 -0
- package/lib/esm/interfaces/index.js +1 -1
- package/lib/esm/model/BaseModel.d.ts +0 -0
- package/lib/esm/model/BaseModel.js +1 -1
- package/lib/esm/model/IdentifiedBaseModel.d.ts +0 -0
- package/lib/esm/model/IdentifiedBaseModel.js +1 -1
- package/lib/esm/model/User.d.ts +0 -0
- package/lib/esm/model/User.js +1 -1
- package/lib/esm/model/construction.d.ts +0 -0
- package/lib/esm/model/construction.js +1 -1
- package/lib/esm/model/decorators.d.ts +0 -0
- package/lib/esm/model/decorators.js +1 -1
- package/lib/esm/model/index.d.ts +0 -0
- package/lib/esm/model/index.js +1 -1
- package/lib/esm/model/types.d.ts +0 -0
- package/lib/esm/model/types.js +1 -1
- package/lib/esm/persistence/Adapter.d.ts +0 -0
- package/lib/esm/persistence/Adapter.js +1 -1
- package/lib/esm/persistence/Sequence.d.ts +0 -0
- package/lib/esm/persistence/Sequence.js +1 -1
- package/lib/esm/persistence/constants.d.ts +0 -0
- package/lib/esm/persistence/constants.js +1 -1
- package/lib/esm/persistence/decorators.d.ts +0 -0
- package/lib/esm/persistence/decorators.js +1 -1
- package/lib/esm/persistence/errors.d.ts +0 -0
- package/lib/esm/persistence/errors.js +1 -1
- package/lib/esm/persistence/index.d.ts +0 -0
- package/lib/esm/persistence/index.js +1 -1
- package/lib/esm/query/Clause.d.ts +0 -0
- package/lib/esm/query/Clause.js +1 -1
- package/lib/esm/query/ClauseFactory.d.ts +0 -0
- package/lib/esm/query/ClauseFactory.js +1 -1
- package/lib/esm/query/Condition.d.ts +0 -0
- package/lib/esm/query/Condition.js +1 -1
- package/lib/esm/query/Paginator.d.ts +0 -0
- package/lib/esm/query/Paginator.js +1 -1
- package/lib/esm/query/Query.d.ts +0 -0
- package/lib/esm/query/Query.js +1 -1
- package/lib/esm/query/Statement.d.ts +0 -0
- package/lib/esm/query/Statement.js +1 -1
- package/lib/esm/query/clauses/FromClause.d.ts +0 -0
- package/lib/esm/query/clauses/FromClause.js +1 -1
- package/lib/esm/query/clauses/GroupByClause.d.ts +0 -0
- package/lib/esm/query/clauses/GroupByClause.js +1 -1
- package/lib/esm/query/clauses/InsertClause.d.ts +0 -0
- package/lib/esm/query/clauses/InsertClause.js +1 -1
- package/lib/esm/query/clauses/LimitClause.d.ts +0 -0
- package/lib/esm/query/clauses/LimitClause.js +1 -1
- package/lib/esm/query/clauses/OffsetClause.d.ts +0 -0
- package/lib/esm/query/clauses/OffsetClause.js +1 -1
- package/lib/esm/query/clauses/OrderByClause.d.ts +0 -0
- package/lib/esm/query/clauses/OrderByClause.js +1 -1
- package/lib/esm/query/clauses/SelectClause.d.ts +0 -0
- package/lib/esm/query/clauses/SelectClause.js +1 -1
- package/lib/esm/query/clauses/SelectorBasedClause.d.ts +0 -0
- package/lib/esm/query/clauses/SelectorBasedClause.js +1 -1
- package/lib/esm/query/clauses/ValuesClause.d.ts +0 -0
- package/lib/esm/query/clauses/ValuesClause.js +1 -1
- package/lib/esm/query/clauses/WhereClause.d.ts +0 -0
- package/lib/esm/query/clauses/index.d.ts +0 -0
- package/lib/esm/query/constants.d.ts +0 -0
- package/lib/esm/query/constants.js +1 -1
- package/lib/esm/query/errors.d.ts +0 -0
- package/lib/esm/query/errors.js +1 -1
- package/lib/esm/query/index.d.ts +0 -0
- package/lib/esm/query/index.js +1 -1
- package/lib/esm/query/options.d.ts +0 -0
- package/lib/esm/query/options.js +1 -1
- package/lib/esm/query/selectors.d.ts +0 -0
- package/lib/esm/query/selectors.js +1 -1
- package/lib/esm/query/types.d.ts +0 -0
- package/lib/esm/query/types.js +1 -1
- package/lib/esm/repository/Context.d.ts +0 -0
- package/lib/esm/repository/Context.js +1 -1
- package/lib/esm/repository/Repository.d.ts +0 -0
- package/lib/esm/repository/Repository.js +1 -1
- package/lib/esm/repository/constants.d.ts +0 -0
- package/lib/esm/repository/constants.js +1 -1
- package/lib/esm/repository/decorators.d.ts +0 -0
- package/lib/esm/repository/decorators.js +1 -1
- package/lib/esm/repository/errors.d.ts +0 -0
- package/lib/esm/repository/errors.js +1 -1
- package/lib/esm/repository/index.d.ts +0 -0
- package/lib/esm/repository/index.js +1 -1
- package/lib/esm/repository/injectables.d.ts +0 -0
- package/lib/esm/repository/injectables.js +1 -1
- package/lib/esm/repository/types.d.ts +0 -0
- package/lib/esm/repository/types.js +1 -1
- package/lib/esm/repository/utils.d.ts +0 -0
- package/lib/esm/repository/utils.js +1 -1
- package/lib/esm/validators/ClauseSequenceValidator.d.ts +0 -0
- package/lib/esm/validators/ClauseSequenceValidator.js +1 -1
- package/lib/esm/validators/decorators.d.ts +0 -0
- package/lib/esm/validators/decorators.js +1 -1
- package/lib/esm/validators/index.d.ts +0 -0
- package/lib/esm/validators/index.js +1 -1
- package/lib/identity/decorators.cjs +0 -2
- package/lib/identity/decorators.d.ts +0 -0
- package/lib/identity/index.cjs +0 -2
- package/lib/identity/index.d.ts +0 -0
- package/lib/identity/utils.cjs +0 -2
- package/lib/identity/utils.d.ts +0 -0
- package/lib/index.cjs +1 -3
- package/lib/index.d.ts +1 -1
- package/lib/interfaces/Builder.cjs +0 -2
- package/lib/interfaces/Builder.d.ts +0 -0
- package/lib/interfaces/Executor.cjs +0 -2
- package/lib/interfaces/Executor.d.ts +0 -0
- package/lib/interfaces/Observable.cjs +0 -2
- package/lib/interfaces/Observable.d.ts +0 -0
- package/lib/interfaces/Observer.cjs +0 -2
- package/lib/interfaces/Observer.d.ts +0 -0
- package/lib/interfaces/Paginatable.cjs +0 -2
- package/lib/interfaces/Paginatable.d.ts +0 -0
- package/lib/interfaces/Queriable.cjs +0 -2
- package/lib/interfaces/Queriable.d.ts +0 -0
- package/lib/interfaces/RawExecutor.cjs +0 -2
- package/lib/interfaces/RawExecutor.d.ts +0 -0
- package/lib/interfaces/SequenceOptions.cjs +0 -2
- package/lib/interfaces/SequenceOptions.d.ts +0 -0
- package/lib/interfaces/index.cjs +0 -2
- package/lib/interfaces/index.d.ts +0 -0
- package/lib/model/BaseModel.cjs +0 -2
- package/lib/model/BaseModel.d.ts +0 -0
- package/lib/model/IdentifiedBaseModel.cjs +0 -2
- package/lib/model/IdentifiedBaseModel.d.ts +0 -0
- package/lib/model/User.cjs +0 -2
- package/lib/model/User.d.ts +0 -0
- package/lib/model/construction.cjs +0 -2
- package/lib/model/construction.d.ts +0 -0
- package/lib/model/decorators.cjs +0 -2
- package/lib/model/decorators.d.ts +0 -0
- package/lib/model/index.cjs +0 -2
- package/lib/model/index.d.ts +0 -0
- package/lib/model/types.cjs +0 -2
- package/lib/model/types.d.ts +0 -0
- package/lib/persistence/Adapter.cjs +0 -2
- package/lib/persistence/Adapter.d.ts +0 -0
- package/lib/persistence/Sequence.cjs +0 -2
- package/lib/persistence/Sequence.d.ts +0 -0
- package/lib/persistence/constants.cjs +0 -2
- package/lib/persistence/constants.d.ts +0 -0
- package/lib/persistence/decorators.cjs +0 -2
- package/lib/persistence/decorators.d.ts +0 -0
- package/lib/persistence/errors.cjs +0 -2
- package/lib/persistence/errors.d.ts +0 -0
- package/lib/persistence/index.cjs +0 -2
- package/lib/persistence/index.d.ts +0 -0
- package/lib/query/Clause.cjs +0 -2
- package/lib/query/Clause.d.ts +0 -0
- package/lib/query/ClauseFactory.cjs +0 -2
- package/lib/query/ClauseFactory.d.ts +0 -0
- package/lib/query/Condition.cjs +0 -2
- package/lib/query/Condition.d.ts +0 -0
- package/lib/query/Paginator.cjs +0 -2
- package/lib/query/Paginator.d.ts +0 -0
- package/lib/query/Query.cjs +0 -2
- package/lib/query/Query.d.ts +0 -0
- package/lib/query/Statement.cjs +0 -2
- package/lib/query/Statement.d.ts +0 -0
- package/lib/query/clauses/FromClause.cjs +0 -2
- package/lib/query/clauses/FromClause.d.ts +0 -0
- package/lib/query/clauses/GroupByClause.cjs +0 -2
- package/lib/query/clauses/GroupByClause.d.ts +0 -0
- package/lib/query/clauses/InsertClause.cjs +0 -2
- package/lib/query/clauses/InsertClause.d.ts +0 -0
- package/lib/query/clauses/LimitClause.cjs +0 -2
- package/lib/query/clauses/LimitClause.d.ts +0 -0
- package/lib/query/clauses/OffsetClause.cjs +0 -2
- package/lib/query/clauses/OffsetClause.d.ts +0 -0
- package/lib/query/clauses/OrderByClause.cjs +0 -2
- package/lib/query/clauses/OrderByClause.d.ts +0 -0
- package/lib/query/clauses/SelectClause.cjs +0 -2
- package/lib/query/clauses/SelectClause.d.ts +0 -0
- package/lib/query/clauses/SelectorBasedClause.cjs +0 -2
- package/lib/query/clauses/SelectorBasedClause.d.ts +0 -0
- package/lib/query/clauses/ValuesClause.cjs +0 -2
- package/lib/query/clauses/ValuesClause.d.ts +0 -0
- package/lib/query/clauses/WhereClause.cjs +0 -2
- package/lib/query/clauses/WhereClause.d.ts +0 -0
- package/lib/query/clauses/index.cjs +0 -2
- package/lib/query/clauses/index.d.ts +0 -0
- package/lib/query/constants.cjs +0 -2
- package/lib/query/constants.d.ts +0 -0
- package/lib/query/errors.cjs +0 -2
- package/lib/query/errors.d.ts +0 -0
- package/lib/query/index.cjs +0 -2
- package/lib/query/index.d.ts +0 -0
- package/lib/query/options.cjs +0 -2
- package/lib/query/options.d.ts +0 -0
- package/lib/query/selectors.cjs +0 -2
- package/lib/query/selectors.d.ts +0 -0
- package/lib/query/types.cjs +0 -2
- package/lib/query/types.d.ts +0 -0
- package/lib/repository/Context.cjs +0 -2
- package/lib/repository/Context.d.ts +0 -0
- package/lib/repository/Repository.cjs +0 -2
- package/lib/repository/Repository.d.ts +0 -0
- package/lib/repository/constants.cjs +0 -2
- package/lib/repository/constants.d.ts +0 -0
- package/lib/repository/decorators.cjs +0 -2
- package/lib/repository/decorators.d.ts +0 -0
- package/lib/repository/errors.cjs +0 -2
- package/lib/repository/errors.d.ts +0 -0
- package/lib/repository/index.cjs +0 -2
- package/lib/repository/index.d.ts +0 -0
- package/lib/repository/injectables.cjs +0 -2
- package/lib/repository/injectables.d.ts +0 -0
- package/lib/repository/types.cjs +0 -2
- package/lib/repository/types.d.ts +0 -0
- package/lib/repository/utils.cjs +0 -2
- package/lib/repository/utils.d.ts +0 -0
- package/lib/validators/ClauseSequenceValidator.cjs +0 -2
- package/lib/validators/ClauseSequenceValidator.d.ts +0 -0
- package/lib/validators/decorators.cjs +0 -2
- package/lib/validators/decorators.d.ts +0 -0
- package/lib/validators/index.cjs +0 -2
- package/lib/validators/index.d.ts +0 -0
- package/package.json +17 -17
- package/lib/esm/query/clauses/WhereClause.js +0 -72
- package/lib/esm/query/clauses/index.js +0 -12
package/lib/esm/index.d.ts
CHANGED
package/lib/esm/index.js
CHANGED
@@ -25,6 +25,6 @@ Injectables.setRegistry(new InjectablesRegistry());
|
|
25
25
|
* @const VERSION
|
26
26
|
* @memberOf module:ts-workspace
|
27
27
|
*/
|
28
|
-
export const VERSION = "0.3.
|
28
|
+
export const VERSION = "0.3.32";
|
29
29
|
|
30
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
30
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlEOzs7O0dBSUc7QUFFSDs7Ozs7R0FLRztBQUVILGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBRTdCLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxtQkFBbUIsRUFBRSxDQUFDLENBQUM7QUFFbkQ7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZXNSZWdpc3RyeSB9IGZyb20gXCIuL3JlcG9zaXRvcnlcIjtcbmltcG9ydCB7IEluamVjdGFibGVzIH0gZnJvbSBcIkBkZWNhZi10cy9pbmplY3RhYmxlLWRlY29yYXRvcnNcIjtcblxuLyoqXG4gKiBAc3VtbWFyeSBNb2R1bGUgc3VtbWFyeVxuICogQGRlc2NyaXB0aW9uIE1vZHVsZSBkZXNjcmlwdGlvblxuICogQG1vZHVsZSB0cy13b3Jrc3BhY2VcbiAqL1xuXG4vKipcbiAqIEBzdW1tYXJ5IE5hbWVzcGFjZSBzdW1tYXJ5XG4gKiBAZGVzY3JpcHRpb24gTmFtZXNwYWNlIGRlc2NyaXB0aW9uXG4gKiBAbmFtZXNwYWNlIE5hbWVzcGFjZVxuICogQG1lbWJlck9mIG1vZHVsZTp0cy13b3Jrc3BhY2VcbiAqL1xuXG5leHBvcnQgKiBmcm9tIFwiLi9pZGVudGl0eVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW50ZXJmYWNlc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vbW9kZWxcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3BlcnNpc3RlbmNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9xdWVyeVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vcmVwb3NpdG9yeVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdmFsaWRhdG9yc1wiO1xuXG5JbmplY3RhYmxlcy5zZXRSZWdpc3RyeShuZXcgSW5qZWN0YWJsZXNSZWdpc3RyeSgpKTtcblxuLyoqXG4gKiBAc3VtbWFyeSBzdG9yZXMgdGhlIGN1cnJlbnQgcGFja2FnZSB2ZXJzaW9uXG4gKiBAZGVzY3JpcHRpb24gdGhpcyBpcyBob3cgeW91IHNob3VsZCBkb2N1bWVudCBhIGNvbnN0YW50XG4gKiBAY29uc3QgVkVSU0lPTlxuICogQG1lbWJlck9mIG1vZHVsZTp0cy13b3Jrc3BhY2VcbiAqL1xuZXhwb3J0IGNvbnN0IFZFUlNJT04gPSBcIjAuMy4zMlwiO1xuIl19
|
File without changes
|
@@ -1,3 +1,3 @@
|
|
1
1
|
export {};
|
2
2
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL0J1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJpbnRlcmZhY2VzL0J1aWxkZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzdW1tYXJ5IFN0YW5kYXJkIEJ1aWxkZXIgQVBpIGZvciB0aGUgQnVpbGRlciBkZXNpZ24gcGF0dGVyblxuICogQGRlc2NyaXB0aW9uIEV4cG9zZSB0aGUgYnVpbGQgbWV0aG9kXG4gKlxuICogQGludGVyZmFjZSBCdWlsZGVyXG4gKlxuICogQGNhdGVnb3J5IENvbnN0cnVjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkZXI8VD4ge1xuICAvKipcbiAgICogQHN1bW1hcnkgQnVpbGQgdGhlIE9iamVjdFxuICAgKlxuICAgKiBAbWV0aG9kXG4gICAqL1xuICBidWlsZCguLi5hcmdzOiBhbnlbXSk6IFQ7XG59XG4iXX0=
|
File without changes
|
@@ -1,3 +1,3 @@
|
|
1
1
|
export {};
|
2
2
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL0V4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJmaWxlIjoiaW50ZXJmYWNlcy9FeGVjdXRvci5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHN1bW1hcnkgcHJvY2Vzc2VzIHF1ZXJ5IG9iamVjdHNcbiAqXG4gKiBAdHlwZWRlZiBWIHRoZSBvdXRwdXRcbiAqXG4gKiBAaW50ZXJmYWNlIEV4ZWN1dG9yXG4gKlxuICogQGNhdGVnb3J5IFF1ZXJ5XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXhlY3V0b3Ige1xuICAvKipcbiAgICogQHN1bW1hcnkgUHJvY2Vzc2VzIGl0c2VsZlxuICAgKlxuICAgKiBAcGFyYW0ge2FueVtdfSBhcmdzXG4gICAqXG4gICAqIEBtZXRob2RcbiAgICovXG4gIGV4ZWN1dGU8Vj4oLi4uYXJnczogYW55KTogUHJvbWlzZTxWPjtcbn1cbiJdfQ==
|
File without changes
|
@@ -1,3 +1,3 @@
|
|
1
1
|
export {};
|
2
2
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL09ic2VydmFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJpbnRlcmZhY2VzL09ic2VydmFibGUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZlciB9IGZyb20gXCIuL09ic2VydmVyXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgT2JzZXJ2YWJsZSBBcGlcbiAqIEBkZXNjcmlwdGlvbiBtYW5hZ2UgYW5kIHVwZGF0ZSB7QGxpbmsgT2JzZXJ2ZXJ9c1xuICpcbiAqIEBpbnRlcmZhY2UgT2JzZXJ2YWJsZVxuICpcbiAqIEBjYXRlZ29yeSBPYnNlcnZhYmxlc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE9ic2VydmFibGUge1xuICAvKipcbiAgICogQHN1bW1hcnkgUmVnaXN0ZXIgbmV3IHtAbGluayBPYnNlcnZlcn1zXG4gICAqIEBwYXJhbSB7T2JzZXJ2ZXJ9IG9ic2VydmVyXG4gICAqXG4gICAqIEBtZXRob2RcbiAgICovXG4gIG9ic2VydmUob2JzZXJ2ZXI6IE9ic2VydmVyKTogdm9pZDtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFVucmVnaXN0ZXIgbmV3IHtAbGluayBPYnNlcnZlcn1zXG4gICAqIEBwYXJhbSB7T2JzZXJ2ZXJ9IG9ic2VydmVyXG4gICAqXG4gICAqIEBtZXRob2RcbiAgICovXG4gIHVuT2JzZXJ2ZShvYnNlcnZlcjogT2JzZXJ2ZXIpOiB2b2lkO1xuICAvKipcbiAgICogQHN1bW1hcnkgaGF2ZSByZWdpc3RlcmVkIHtAbGluayBPYnNlcnZlcn1zIHVwZGF0ZSB0aGVtc2VsdmVzXG4gICAqIEBwYXJhbSB7YW55W119IGFyZ3NcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgdXBkYXRlT2JzZXJ2ZXJzKC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTx2b2lkPjtcbn1cbiJdfQ==
|
File without changes
|
@@ -1,3 +1,3 @@
|
|
1
1
|
export {};
|
2
2
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL09ic2VydmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJmaWxlIjoiaW50ZXJmYWNlcy9PYnNlcnZlci5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHN1bW1hcnkgT2JzZXJ2ZXIgQXBpXG4gKiBAZGVzY3JpcHRpb24gd2lsbCBiZSBjYWxsZWQgYnkgdGhlIHtAbGluayBPYnNlcnZhYmxlfVxuICpcbiAqIEBpbnRlcmZhY2UgT2JzZXJ2ZXJcbiAqXG4gKiBAY2F0ZWdvcnkgT2JzZXJ2YWJsZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPYnNlcnZlciB7XG4gIC8qKlxuICAgKiBAc3VtbWFyeSBSZWZyZXNoZXMgdGhlIE9ic2VydmVyXG4gICAqIEBwYXJhbSB7YW55W119IGFyZ3NcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgcmVmcmVzaCguLi5hcmdzOiBhbnlbXSk6IFByb21pc2U8dm9pZD47XG59XG4iXX0=
|
File without changes
|
@@ -1,3 +1,3 @@
|
|
1
1
|
export {};
|
2
2
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL1BhZ2luYXRhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJmaWxlIjoiaW50ZXJmYWNlcy9QYWdpbmF0YWJsZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2luYXRvciB9IGZyb20gXCIuLi9xdWVyeS9QYWdpbmF0b3JcIjtcblxuZXhwb3J0IGludGVyZmFjZSBQYWdpbmF0YWJsZSB7XG4gIHBhZ2luYXRlPFY+KC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTxQYWdpbmF0b3I8ViwgYW55Pj47XG59XG4iXX0=
|
File without changes
|
@@ -1,3 +1,3 @@
|
|
1
1
|
export {};
|
2
2
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL1F1ZXJpYWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwiZmlsZSI6ImludGVyZmFjZXMvUXVlcmlhYmxlLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZGl0aW9uLCBTZWxlY3RTZWxlY3RvciwgV2hlcmVPcHRpb24gfSBmcm9tIFwiLi4vcXVlcnlcIjtcbmltcG9ydCB7IE9yZGVyRGlyZWN0aW9uIH0gZnJvbSBcIi4uL3JlcG9zaXRvcnlcIjtcblxuZXhwb3J0IGludGVyZmFjZSBRdWVyaWFibGUge1xuICBzZWxlY3Qoc2VsZWN0b3I/OiBTZWxlY3RTZWxlY3Rvcik6IFdoZXJlT3B0aW9uO1xuXG4gIHF1ZXJ5PFY+KFxuICAgIGNvbmRpdGlvbjogQ29uZGl0aW9uLFxuICAgIG9yZGVyQnk6IHN0cmluZyxcbiAgICBvcmRlcjogT3JkZXJEaXJlY3Rpb24sXG4gICAgbGltaXQ/OiBudW1iZXIsXG4gICAgc2tpcD86IG51bWJlcixcbiAgKTogUHJvbWlzZTxWPjtcbn1cbiJdfQ==
|
File without changes
|
@@ -1,3 +1,3 @@
|
|
1
1
|
export {};
|
2
2
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL1Jhd0V4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJmaWxlIjoiaW50ZXJmYWNlcy9SYXdFeGVjdXRvci5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHN1bW1hcnkgRXhlY3V0ZXMgYSByYXcgaW5zdHJ1Y3Rpb24gaW4gdGhlIERhdGFiYXNlXG4gKiBAdHlwZURlZiBRIFRoZSBpbnB1dCB0eXBlXG4gKiBAdHlwZURlZiBSIFRoZSByZXN1bHQgdHlwZVxuICpcbiAqIEBpbnRlcmZhY2UgUmF3RXhlY3V0b3JcbiAqIEBjYXRlZ29yeSBRdWVyeVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJhd0V4ZWN1dG9yPFE+IHtcbiAgLyoqXG4gICAqIEBzdW1tYXJ5IEV4ZWN1dGVzIGEgcmF3IGluc3RydWN0aW9uIGluIHRoZSBEYXRhYmFzZVxuICAgKlxuICAgKiBAdHlwZURlZiBWIHRoZSBleHBlY3RlZCBvdXRjb21lIG9mIHRoZSBpbnN0cnVjdGlvblxuICAgKiBAcGFyYW0gcmF3SW5wdXRcbiAgICogQHBhcmFtIGFyZ3NcbiAgICpcbiAgICogQG1ldGhvZFxuICAgKi9cbiAgcmF3PFI+KHJhd0lucHV0OiBRLCAuLi5hcmdzOiBhbnlbXSk6IFByb21pc2U8Uj47XG59XG4iXX0=
|
File without changes
|
@@ -17,4 +17,4 @@ export const BigIntSequence = {
|
|
17
17
|
cycle: false,
|
18
18
|
};
|
19
19
|
|
20
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
20
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL1NlcXVlbmNlT3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQkEsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQW9CO0lBQ3JELElBQUksRUFBRSxRQUFRO0lBQ2QsU0FBUyxFQUFFLENBQUM7SUFDWixXQUFXLEVBQUUsQ0FBQztJQUNkLEtBQUssRUFBRSxLQUFLO0NBQ2IsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBb0I7SUFDOUMsSUFBSSxFQUFFLFFBQVE7SUFDZCxTQUFTLEVBQUUsQ0FBQztJQUNaLFdBQVcsRUFBRSxDQUFDO0lBQ2QsS0FBSyxFQUFFLEtBQUs7Q0FDYixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFvQjtJQUM3QyxJQUFJLEVBQUUsUUFBUTtJQUNkLFNBQVMsRUFBRSxDQUFDO0lBQ1osV0FBVyxFQUFFLENBQUM7SUFDZCxLQUFLLEVBQUUsS0FBSztDQUNiLENBQUMiLCJmaWxlIjoiaW50ZXJmYWNlcy9TZXF1ZW5jZU9wdGlvbnMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEB0eXBlZGVmIFNlcXVlbmNlT3B0aW9uc1xuICpcbiAqIEBwcm9wIHtzdHJpbmcgfCBudW1iZXJ9IFtzdGFydGluZ1ZhbHVlXSBkZWZpbmVzIHRoZSBzdGFydGluZyB2YWx1ZSB3aGVuIHNlcXVlbmNlIGRvZXN0IG5vdCBleGlzdFxuICpcbiAqIEBjYXRlZ29yeSBTZXF1ZW5jZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXF1ZW5jZU9wdGlvbnMge1xuICBuYW1lPzogc3RyaW5nO1xuICB0eXBlOiBcIk51bWJlclwiIHwgXCJCaWdJbnRcIiB8IHVuZGVmaW5lZDtcbiAgc3RhcnRXaXRoOiBudW1iZXI7XG4gIGluY3JlbWVudEJ5OiBudW1iZXI7XG4gIG1pblZhbHVlPzogbnVtYmVyO1xuICBtYXhWYWx1ZT86IG51bWJlcjtcbiAgY3ljbGU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0U2VxdWVuY2VPcHRpb25zOiBTZXF1ZW5jZU9wdGlvbnMgPSB7XG4gIHR5cGU6IFwiTnVtYmVyXCIsXG4gIHN0YXJ0V2l0aDogMCxcbiAgaW5jcmVtZW50Qnk6IDEsXG4gIGN5Y2xlOiBmYWxzZSxcbn07XG5cbmV4cG9ydCBjb25zdCBOdW1lcmljU2VxdWVuY2U6IFNlcXVlbmNlT3B0aW9ucyA9IHtcbiAgdHlwZTogXCJOdW1iZXJcIixcbiAgc3RhcnRXaXRoOiAwLFxuICBpbmNyZW1lbnRCeTogMSxcbiAgY3ljbGU6IGZhbHNlLFxufTtcblxuZXhwb3J0IGNvbnN0IEJpZ0ludFNlcXVlbmNlOiBTZXF1ZW5jZU9wdGlvbnMgPSB7XG4gIHR5cGU6IFwiQmlnSW50XCIsXG4gIHN0YXJ0V2l0aDogMCxcbiAgaW5jcmVtZW50Qnk6IDEsXG4gIGN5Y2xlOiBmYWxzZSxcbn07XG4iXX0=
|
File without changes
|
@@ -6,4 +6,4 @@ export * from "./Queriable";
|
|
6
6
|
export * from "./RawExecutor";
|
7
7
|
export * from "./SequenceOptions";
|
8
8
|
|
9
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
9
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsbUJBQW1CLENBQUMiLCJmaWxlIjoiaW50ZXJmYWNlcy9pbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0J1aWxkZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0V4ZWN1dG9yXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9PYnNlcnZhYmxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9PYnNlcnZlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vUXVlcmlhYmxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9SYXdFeGVjdXRvclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vU2VxdWVuY2VPcHRpb25zXCI7XG4iXX0=
|
File without changes
|
@@ -23,4 +23,4 @@ __decorate([
|
|
23
23
|
__metadata("design:type", Date)
|
24
24
|
], BaseModel.prototype, "updatedOn", void 0);
|
25
25
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tb2RlbC9CYXNlTW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNsRSxPQUFPLEVBQVksS0FBSyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFakUsTUFBTSxPQUFnQixTQUFVLFNBQVEsS0FBSztJQU0zQyxZQUFzQixHQUF5QjtRQUM3QyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDYixDQUFDO0NBQ0Y7QUFQQztJQURDLFNBQVMsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDOzhCQUNuQixJQUFJOzRDQUFDO0FBRWpCO0lBREMsU0FBUyxFQUFFOzhCQUNBLElBQUk7NENBQUMiLCJmaWxlIjoibW9kZWwvQmFzZU1vZGVsLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREJPcGVyYXRpb25zLCB0aW1lc3RhbXAgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IE1vZGVsQXJnLCBNb2RlbCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VNb2RlbCBleHRlbmRzIE1vZGVsIHtcbiAgQHRpbWVzdGFtcChEQk9wZXJhdGlvbnMuQ1JFQVRFKVxuICBjcmVhdGVkT24hOiBEYXRlO1xuICBAdGltZXN0YW1wKClcbiAgdXBkYXRlZE9uITogRGF0ZTtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoYXJnPzogTW9kZWxBcmc8QmFzZU1vZGVsPikge1xuICAgIHN1cGVyKGFyZyk7XG4gIH1cbn1cbiJdfQ==
|
File without changes
|
@@ -23,4 +23,4 @@ __decorate([
|
|
23
23
|
__metadata("design:type", String)
|
24
24
|
], IdentifiedBaseModel.prototype, "updatedBy", void 0);
|
25
25
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tb2RlbC9JZGVudGlmaWVkQmFzZU1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFeEMsTUFBTSxPQUFnQixtQkFBb0IsU0FBUSxTQUFTO0lBTXpELFlBQXNCLEdBQW1DO1FBQ3ZELEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNiLENBQUM7Q0FDRjtBQVBDO0lBREMsU0FBUyxFQUFFOztzREFDTztBQUVuQjtJQURDLFNBQVMsRUFBRTs7c0RBQ08iLCJmaWxlIjoibW9kZWwvSWRlbnRpZmllZEJhc2VNb2RlbC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZGVsQXJnIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgY3JlYXRlZEJ5LCB1cGRhdGVkQnkgfSBmcm9tIFwiLi9kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBCYXNlTW9kZWwgfSBmcm9tIFwiLi9CYXNlTW9kZWxcIjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIElkZW50aWZpZWRCYXNlTW9kZWwgZXh0ZW5kcyBCYXNlTW9kZWwge1xuICBAY3JlYXRlZEJ5KClcbiAgY3JlYXRlZEJ5ITogc3RyaW5nO1xuICBAdXBkYXRlZEJ5KClcbiAgdXBkYXRlZEJ5ITogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihhcmc/OiBNb2RlbEFyZzxJZGVudGlmaWVkQmFzZU1vZGVsPikge1xuICAgIHN1cGVyKGFyZyk7XG4gIH1cbn1cbiJdfQ==
|
package/lib/esm/model/User.d.ts
CHANGED
File without changes
|
package/lib/esm/model/User.js
CHANGED
@@ -32,4 +32,4 @@ User = __decorate([
|
|
32
32
|
], User);
|
33
33
|
export { User };
|
34
34
|
|
35
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tb2RlbC9Vc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBWSxNQUFNLGdDQUFnQyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUdyQyxJQUFNLElBQUksR0FBVixNQUFNLElBQUssU0FBUSxLQUFLO0lBVTdCLFlBQVksR0FBb0I7UUFDOUIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2IsQ0FBQztDQUNGLENBQUE7QUFYQztJQURDLEVBQUUsRUFBRTs7Z0NBQ087QUFHWjtJQURDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDOzttQ0FDWTtBQUczQjtJQURDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDOzswQ0FDUztBQVJiLElBQUk7SUFEaEIsS0FBSyxFQUFFOztHQUNLLElBQUksQ0FhaEIiLCJmaWxlIjoibW9kZWwvVXNlci5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGxpc3QsIG1vZGVsLCBNb2RlbCwgTW9kZWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBSb2xlcyB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9jb25zdGFudHNcIjtcbmltcG9ydCB7IHBrIH0gZnJvbSBcIi4uL2lkZW50aXR5L2RlY29yYXRvcnNcIjtcblxuQG1vZGVsKClcbmV4cG9ydCBjbGFzcyBVc2VyIGV4dGVuZHMgTW9kZWwge1xuICBAcGsoKVxuICBpZCE6IHN0cmluZztcblxuICBAbGlzdChbU3RyaW5nXSlcbiAgcm9sZXM/OiAoc3RyaW5nIHwgUm9sZXMpW107XG5cbiAgQGxpc3QoW1N0cmluZ10pXG4gIGFmZmlsaWF0aW9ucz86IHN0cmluZ1tdO1xuXG4gIGNvbnN0cnVjdG9yKGFyZz86IE1vZGVsQXJnPFVzZXI+KSB7XG4gICAgc3VwZXIoYXJnKTtcbiAgfVxufVxuIl19
|
File without changes
|
@@ -202,4 +202,4 @@ export function repositoryFromTypeMetadata(model, propertyKey) {
|
|
202
202
|
return Repository.forModel(constructor);
|
203
203
|
}
|
204
204
|
|
205
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9tb2RlbC9jb25zdHJ1Y3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLEtBQUssRUFDTCxVQUFVLEVBQ1YsY0FBYyxHQUNmLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFRLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTVELE9BQU8sRUFDTCxjQUFjLEVBQ2QsYUFBYSxFQUNiLGFBQWEsR0FDZCxNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHbEQsTUFBTSxDQUFDLEtBQUssVUFBVSxjQUFjLENBQ2xDLEtBQVEsRUFDUixPQUFtQixFQUNuQixVQUFvQjtJQUVwQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxXQUFXO1lBQ2QsTUFBTSxJQUFJLGFBQWEsQ0FBQyx3QkFBd0IsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVFLFVBQVUsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBWSxDQUFDO0lBQzNELENBQUM7SUFDRCxJQUFJLE9BQVEsS0FBNkIsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLEtBQUssV0FBVztRQUN0RSxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQ3RDLENBQUM7UUFDSixJQUFJLENBQUM7WUFDSCxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFBQyxPQUFPLENBQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FB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LFdBQVcsQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSztRQUNiLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQ3RCLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxXQUFXO1FBQ3hCLE1BQU0sSUFBSSxhQUFhLENBQ3JCLGdEQUFnRCxXQUFXLEVBQUUsQ0FDOUQsQ0FBQztJQUVKLE1BQU0sWUFBWSxHQUFhLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xCLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUNuRCxDQUFDO0lBQ0YsSUFBSSxDQUFDLGVBQWU7UUFDbEIsTUFBTSxJQUFJLGFBQWEsQ0FDckIsZ0JBQWdCLFdBQVcseUNBQXlDLENBQ3JFLENBQUM7SUFDSixNQUFNLFdBQVcsR0FBK0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMzRSxJQUFJLENBQUMsV0FBVztRQUNkLE1BQU0sSUFBSSxhQUFhLENBQUMsaUNBQWlDLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFFOUUsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQzFDLENBQUMiLCJmaWxlIjoibW9kZWwvY29uc3RydWN0aW9uLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29uc3RydWN0b3IsXG4gIE1vZGVsLFxuICBWYWxpZGF0aW9uLFxuICBWYWxpZGF0aW9uS2V5cyxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgUmVwbywgUmVwb3NpdG9yeSB9IGZyb20gXCIuLi9yZXBvc2l0b3J5L1JlcG9zaXRvcnlcIjtcbmltcG9ydCB7IFJlbGF0aW9uc01ldGFkYXRhIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7XG4gIGZpbmRQcmltYXJ5S2V5LFxuICBJbnRlcm5hbEVycm9yLFxuICBOb3RGb3VuZEVycm9yLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IFBlcnNpc3RlbmNlS2V5cyB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9jb25zdGFudHNcIjtcbmltcG9ydCB7IENhc2NhZGUgfSBmcm9tIFwiLi4vcmVwb3NpdG9yeS9jb25zdGFudHNcIjtcbmltcG9ydCB7IENvbnRleHQgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnMvbGliL3JlcG9zaXRvcnkvQ29udGV4dFwiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlT3JVcGRhdGU8TSBleHRlbmRzIE1vZGVsPihcbiAgbW9kZWw6IE0sXG4gIGNvbnRleHQ6IENvbnRleHQ8TT4sXG4gIHJlcG9zaXRvcnk/OiBSZXBvPE0+XG4pOiBQcm9taXNlPE0+IHtcbiAgaWYgKCFyZXBvc2l0b3J5KSB7XG4gICAgY29uc3QgY29uc3RydWN0b3IgPSBNb2RlbC5nZXQobW9kZWwuY29uc3RydWN0b3IubmFtZSk7XG4gICAgaWYgKCFjb25zdHJ1Y3RvcilcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBDb3VsZCBub3QgZmluZCBtb2RlbCAke21vZGVsLmNvbnN0cnVjdG9yLm5hbWV9YCk7XG4gICAgcmVwb3NpdG9yeSA9IFJlcG9zaXRvcnkuZm9yTW9kZWwoY29uc3RydWN0b3IpIGFzIFJlcG88TT47XG4gIH1cbiAgaWYgKHR5cGVvZiAobW9kZWwgYXMgUmVjb3JkPHN0cmluZywgYW55PilbcmVwb3NpdG9yeS5wa10gPT09IFwidW5kZWZpbmVkXCIpXG4gICAgcmV0dXJuIHJlcG9zaXRvcnkuY3JlYXRlKG1vZGVsLCBjb250ZXh0KTtcbiAgZWxzZSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiByZXBvc2l0b3J5LnVwZGF0ZShtb2RlbCwgY29udGV4dCk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICBpZiAoIShlIGluc3RhbmNlb2YgTm90Rm91bmRFcnJvcikpIHRocm93IGU7XG4gICAgICByZXR1cm4gcmVwb3NpdG9yeS5jcmVhdGUobW9kZWwsIGNvbnRleHQpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lVG9PbmVPbkNyZWF0ZTxcbiAgTSBleHRlbmRzIE1vZGVsLFxuICBSIGV4dGVuZHMgUmVwbzxNPixcbiAgWSBleHRlbmRzIFJlbGF0aW9uc01ldGFkYXRhLFxuPih0aGlzOiBSLCBjb250ZXh0OiBDb250ZXh0PE0+LCBkYXRhOiBZLCBrZXk6IHN0cmluZywgbW9kZWw6IE0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcHJvcGVydHlWYWx1ZTogYW55ID0gKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV07XG4gIGlmICghcHJvcGVydHlWYWx1ZSkgcmV0dXJuO1xuXG4gIGlmICh0eXBlb2YgcHJvcGVydHlWYWx1ZSAhPT0gXCJvYmplY3RcIikge1xuICAgIGNvbnN0IGlubmVyUmVwbyA9IHJlcG9zaXRvcnlGcm9tVHlwZU1ldGFkYXRhKG1vZGVsLCBrZXkpO1xuICAgIGNvbnN0IHJlYWQgPSBhd2FpdCBpbm5lclJlcG8ucmVhZChwcm9wZXJ0eVZhbHVlKTtcbiAgICBhd2FpdCBjYWNoZU1vZGVsRm9yUG9wdWxhdGUoY29udGV4dCwgbW9kZWwsIGtleSwgcHJvcGVydHlWYWx1ZSwgcmVhZCk7XG4gICAgKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV0gPSBwcm9wZXJ0eVZhbHVlO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGNvbnN0cnVjdG9yID0gTW9kZWwuZ2V0KGRhdGEuY2xhc3MpO1xuICBpZiAoIWNvbnN0cnVjdG9yKVxuICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBDb3VsZCBub3QgZmluZCBtb2RlbCAke2RhdGEuY2xhc3N9YCk7XG4gIGNvbnN0IHJlcG86IFJlcG88YW55PiA9IFJlcG9zaXRvcnkuZm9yTW9kZWwoY29uc3RydWN0b3IpO1xuICBjb25zdCBjcmVhdGVkID0gYXdhaXQgcmVwby5jcmVhdGUocHJvcGVydHlWYWx1ZSk7XG4gIGNvbnN0IHBrID0gZmluZFByaW1hcnlLZXkoY3JlYXRlZCkuaWQ7XG4gIGF3YWl0IGNhY2hlTW9kZWxGb3JQb3B1bGF0ZShjb250ZXh0LCBtb2RlbCwga2V5LCBjcmVhdGVkW3BrXSwgY3JlYXRlZCk7XG4gIChtb2RlbCBhcyBhbnkpW2tleV0gPSBjcmVhdGVkW3BrXTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG9uZVRvT25lT25VcGRhdGU8XG4gIE0gZXh0ZW5kcyBNb2RlbCxcbiAgUiBleHRlbmRzIFJlcG88TT4sXG4gIFkgZXh0ZW5kcyBSZWxhdGlvbnNNZXRhZGF0YSxcbj4odGhpczogUiwgY29udGV4dDogQ29udGV4dDxNPiwgZGF0YTogWSwga2V5OiBzdHJpbmcsIG1vZGVsOiBNKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHByb3BlcnR5VmFsdWU6IGFueSA9IChtb2RlbCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtrZXldO1xuICBpZiAoIXByb3BlcnR5VmFsdWUpIHJldHVybjtcbiAgaWYgKGRhdGEuY2FzY2FkZS51cGRhdGUgIT09IENhc2NhZGUuQ0FTQ0FERSkgcmV0dXJuO1xuXG4gIGlmICh0eXBlb2YgcHJvcGVydHlWYWx1ZSAhPT0gXCJvYmplY3RcIikge1xuICAgIGNvbnN0IGlubmVyUmVwbyA9IHJlcG9zaXRvcnlGcm9tVHlwZU1ldGFkYXRhKG1vZGVsLCBrZXkpO1xuICAgIGNvbnN0IHJlYWQgPSBhd2FpdCBpbm5lclJlcG8ucmVhZChwcm9wZXJ0eVZhbHVlKTtcbiAgICBhd2FpdCBjYWNoZU1vZGVsRm9yUG9wdWxhdGUoY29udGV4dCwgbW9kZWwsIGtleSwgcHJvcGVydHlWYWx1ZSwgcmVhZCk7XG4gICAgKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV0gPSBwcm9wZXJ0eVZhbHVlO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHVwZGF0ZWQgPSBhd2FpdCBjcmVhdGVPclVwZGF0ZShcbiAgICAobW9kZWwgYXMgUmVjb3JkPHN0cmluZywgYW55Pilba2V5XSxcbiAgICBjb250ZXh0XG4gICk7XG4gIGNvbnN0IHBrID0gZmluZFByaW1hcnlLZXkodXBkYXRlZCkuaWQ7XG4gIGF3YWl0IGNhY2hlTW9kZWxGb3JQb3B1bGF0ZShcbiAgICBjb250ZXh0LFxuICAgIG1vZGVsLFxuICAgIGtleSxcbiAgICAodXBkYXRlZCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtwa10sXG4gICAgdXBkYXRlZFxuICApO1xuICAobW9kZWwgYXMgYW55KVtrZXldID0gKHVwZGF0ZWQgYXMgUmVjb3JkPHN0cmluZywgYW55PilbcGtdO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lVG9PbmVPbkRlbGV0ZTxcbiAgTSBleHRlbmRzIE1vZGVsLFxuICBSIGV4dGVuZHMgUmVwbzxNPixcbiAgWSBleHRlbmRzIFJlbGF0aW9uc01ldGFkYXRhLFxuPih0aGlzOiBSLCBjb250ZXh0OiBDb250ZXh0PE0+LCBkYXRhOiBZLCBrZXk6IHN0cmluZywgbW9kZWw6IE0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcHJvcGVydHlWYWx1ZTogYW55ID0gKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV07XG4gIGlmICghcHJvcGVydHlWYWx1ZSkgcmV0dXJuO1xuICBpZiAoZGF0YS5jYXNjYWRlLnVwZGF0ZSAhPT0gQ2FzY2FkZS5DQVNDQURFKSByZXR1cm47XG4gIGNvbnN0IGlubmVyUmVwbzogUmVwbzxNPiA9IHJlcG9zaXRvcnlGcm9tVHlwZU1ldGFkYXRhKG1vZGVsLCBrZXkpO1xuICBsZXQgZGVsZXRlZDogTTtcbiAgaWYgKCEocHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIE1vZGVsKSlcbiAgICBkZWxldGVkID0gYXdhaXQgaW5uZXJSZXBvLmRlbGV0ZShcbiAgICAgIChtb2RlbCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtrZXldLFxuICAgICAgY29udGV4dFxuICAgICk7XG4gIGVsc2VcbiAgICBkZWxldGVkID0gYXdhaXQgaW5uZXJSZXBvLmRlbGV0ZShcbiAgICAgIChtb2RlbCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtrZXldW2lubmVyUmVwby5wa10sXG4gICAgICBjb250ZXh0XG4gICAgKTtcbiAgYXdhaXQgY2FjaGVNb2RlbEZvclBvcHVsYXRlKFxuICAgIGNvbnRleHQsXG4gICAgbW9kZWwsXG4gICAga2V5LFxuICAgIChkZWxldGVkIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2lubmVyUmVwby5wa10sXG4gICAgZGVsZXRlZFxuICApO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lVG9NYW55T25DcmVhdGU8XG4gIE0gZXh0ZW5kcyBNb2RlbCxcbiAgUiBleHRlbmRzIFJlcG88TT4sXG4gIFkgZXh0ZW5kcyBSZWxhdGlvbnNNZXRhZGF0YSxcbj4odGhpczogUiwgY29udGV4dDogQ29udGV4dDxNPiwgZGF0YTogWSwga2V5OiBzdHJpbmcsIG1vZGVsOiBNKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHByb3BlcnR5VmFsdWVzOiBhbnkgPSAobW9kZWwgYXMgUmVjb3JkPHN0cmluZywgYW55Pilba2V5XTtcbiAgaWYgKCFwcm9wZXJ0eVZhbHVlcyB8fCAhcHJvcGVydHlWYWx1ZXMubGVuZ3RoKSByZXR1cm47XG4gIGNvbnN0IGFycmF5VHlwZSA9IHR5cGVvZiBwcm9wZXJ0eVZhbHVlc1swXTtcbiAgaWYgKCFwcm9wZXJ0eVZhbHVlcy5ldmVyeSgoaXRlbTogYW55KSA9PiB0eXBlb2YgaXRlbSA9PT0gYXJyYXlUeXBlKSlcbiAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgIGBJbnZhbGlkIG9wZXJhdGlvbi4gQWxsIGVsZW1lbnRzIG9mIHByb3BlcnR5ICR7a2V5fSBtdXN0IG1hdGNoIHRoZSBzYW1lIHR5cGUuYFxuICAgICk7XG4gIGNvbnN0IHVuaXF1ZVZhbHVlcyA9IG5ldyBTZXQoWy4uLnByb3BlcnR5VmFsdWVzXSk7XG4gIGlmIChhcnJheVR5cGUgIT09IFwib2JqZWN0XCIpIHtcbiAgICBjb25zdCByZXBvID0gcmVwb3NpdG9yeUZyb21UeXBlTWV0YWRhdGEobW9kZWwsIGtleSk7XG4gICAgZm9yIChjb25zdCBpZCBvZiB1bmlxdWVWYWx1ZXMpIHtcbiAgICAgIGNvbnN0IHJlYWQgPSBhd2FpdCByZXBvLnJlYWQoaWQpO1xuICAgICAgYXdhaXQgY2FjaGVNb2RlbEZvclBvcHVsYXRlKGNvbnRleHQsIG1vZGVsLCBrZXksIGlkLCByZWFkKTtcbiAgICB9XG4gICAgKG1vZGVsIGFzIGFueSlba2V5XSA9IFsuLi51bmlxdWVWYWx1ZXNdO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHBrTmFtZSA9IGZpbmRQcmltYXJ5S2V5KHByb3BlcnR5VmFsdWVzWzBdKS5pZDtcblxuICBjb25zdCByZXN1bHQ6IFNldDxzdHJpbmc+ID0gbmV3IFNldCgpO1xuXG4gIGZvciAoY29uc3QgbSBvZiBwcm9wZXJ0eVZhbHVlcykge1xuICAgIGNvbnN0IHJlY29yZCA9IGF3YWl0IGNyZWF0ZU9yVXBkYXRlKG0sIGNvbnRleHQpO1xuICAgIGF3YWl0IGNhY2hlTW9kZWxGb3JQb3B1bGF0ZShjb250ZXh0LCBtb2RlbCwga2V5LCByZWNvcmRbcGtOYW1lXSwgcmVjb3JkKTtcbiAgICByZXN1bHQuYWRkKHJlY29yZFtwa05hbWVdKTtcbiAgfVxuXG4gIChtb2RlbCBhcyBhbnkpW2tleV0gPSBbLi4ucmVzdWx0XTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG9uZVRvTWFueU9uVXBkYXRlPFxuICBNIGV4dGVuZHMgTW9kZWwsXG4gIFIgZXh0ZW5kcyBSZXBvPE0+LFxuICBZIGV4dGVuZHMgUmVsYXRpb25zTWV0YWRhdGEsXG4+KHRoaXM6IFIsIGNvbnRleHQ6IENvbnRleHQ8TT4sIGRhdGE6IFksIGtleTogc3RyaW5nLCBtb2RlbDogTSk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCB7IGNhc2NhZGUgfSA9IGRhdGE7XG4gIGlmIChjYXNjYWRlLnVwZGF0ZSAhPT0gQ2FzY2FkZS5DQVNDQURFKSByZXR1cm47XG4gIHJldHVybiBvbmVUb01hbnlPbkNyZWF0ZS5jYWxsKHRoaXMsIGNvbnRleHQsIGRhdGEsIGtleSwgbW9kZWwpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lVG9NYW55T25EZWxldGU8XG4gIE0gZXh0ZW5kcyBNb2RlbCxcbiAgUiBleHRlbmRzIFJlcG88TT4sXG4gIFkgZXh0ZW5kcyBSZWxhdGlvbnNNZXRhZGF0YSxcbj4odGhpczogUiwgY29udGV4dDogQ29udGV4dDxNPiwgZGF0YTogWSwga2V5OiBzdHJpbmcsIG1vZGVsOiBNKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmIChkYXRhLmNhc2NhZGUuZGVsZXRlICE9PSBDYXNjYWRlLkNBU0NBREUpIHJldHVybjtcbiAgY29uc3QgdmFsdWVzID0gKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV07XG4gIGlmICghdmFsdWVzIHx8ICF2YWx1ZXMubGVuZ3RoKSByZXR1cm47XG4gIGNvbnN0IGFycmF5VHlwZSA9IHR5cGVvZiB2YWx1ZXNbMF07XG4gIGNvbnN0IGFyZUFsbFNhbWVUeXBlID0gdmFsdWVzLmV2ZXJ5KChpdGVtOiBhbnkpID0+IHR5cGVvZiBpdGVtID09PSBhcnJheVR5cGUpO1xuICBpZiAoIWFyZUFsbFNhbWVUeXBlKVxuICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgYEludmFsaWQgb3BlcmF0aW9uLiBBbGwgZWxlbWVudHMgb2YgcHJvcGVydHkgJHtrZXl9IG11c3QgbWF0Y2ggdGhlIHNhbWUgdHlwZS5gXG4gICAgKTtcbiAgY29uc3QgaXNJbnN0YW50aWF0ZWQgPSBhcnJheVR5cGUgPT09IFwib2JqZWN0XCI7XG4gIGNvbnN0IHJlcG8gPSBpc0luc3RhbnRpYXRlZFxuICAgID8gUmVwb3NpdG9yeS5mb3JNb2RlbCh2YWx1ZXNbMF0pXG4gICAgOiByZXBvc2l0b3J5RnJvbVR5cGVNZXRhZGF0YShtb2RlbCwga2V5KTtcblxuICBjb25zdCB1bmlxdWVWYWx1ZXMgPSBuZXcgU2V0KFtcbiAgICAuLi4oaXNJbnN0YW50aWF0ZWRcbiAgICAgID8gdmFsdWVzLm1hcCgodjogUmVjb3JkPHN0cmluZywgYW55PikgPT4gdltyZXBvLnBrXSlcbiAgICAgIDogdmFsdWVzKSxcbiAgXSk7XG5cbiAgZm9yIChjb25zdCBpZCBvZiB1bmlxdWVWYWx1ZXMudmFsdWVzKCkpIHtcbiAgICBjb25zdCBkZWxldGVkID0gYXdhaXQgcmVwby5kZWxldGUoaWQsIGNvbnRleHQpO1xuICAgIGF3YWl0IGNhY2hlTW9kZWxGb3JQb3B1bGF0ZShjb250ZXh0LCBtb2RlbCwga2V5LCBpZCwgZGVsZXRlZCk7XG4gIH1cbiAgKG1vZGVsIGFzIGFueSlba2V5XSA9IFsuLi51bmlxdWVWYWx1ZXNdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UG9wdWxhdGVLZXkoXG4gIHRhYmxlTmFtZTogc3RyaW5nLFxuICBmaWVsZE5hbWU6IHN0cmluZyxcbiAgaWQ6IHN0cmluZyB8IG51bWJlclxuKSB7XG4gIHJldHVybiBbUGVyc2lzdGVuY2VLZXlzLlBPUFVMQVRFLCB0YWJsZU5hbWUsIGZpZWxkTmFtZSwgaWRdLmpvaW4oXCIuXCIpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY2FjaGVNb2RlbEZvclBvcHVsYXRlPE0gZXh0ZW5kcyBNb2RlbD4oXG4gIGNvbnRleHQ6IENvbnRleHQ8TT4sXG4gIHBhcmVudE1vZGVsOiBNLFxuICBwcm9wZXJ0eUtleTogc3RyaW5nLFxuICBwa1ZhbHVlOiBzdHJpbmcgfCBudW1iZXIsXG4gIGNhY2hlVmFsdWU6IGFueVxuKSB7XG4gIGNvbnN0IGNhY2hlS2V5ID0gZ2V0UG9wdWxhdGVLZXkoXG4gICAgcGFyZW50TW9kZWwuY29uc3RydWN0b3IubmFtZSxcbiAgICBwcm9wZXJ0eUtleSxcbiAgICBwa1ZhbHVlXG4gICk7XG4gIHJldHVybiBjb250ZXh0LnB1dChjYWNoZUtleSwgY2FjaGVWYWx1ZSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3B1bGF0ZTxcbiAgTSBleHRlbmRzIE1vZGVsLFxuICBSIGV4dGVuZHMgUmVwbzxNPixcbiAgWSBleHRlbmRzIFJlbGF0aW9uc01ldGFkYXRhLFxuPih0aGlzOiBSLCBjb250ZXh0OiBDb250ZXh0PE0+LCBkYXRhOiBZLCBrZXk6IHN0cmluZywgbW9kZWw6IE0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCFkYXRhLnBvcHVsYXRlKSByZXR1cm47XG4gIGNvbnN0IG5lc3RlZDogYW55ID0gKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV07XG4gIGNvbnN0IGlzQXJyID0gQXJyYXkuaXNBcnJheShuZXN0ZWQpO1xuICBpZiAodHlwZW9mIG5lc3RlZCA9PT0gXCJ1bmRlZmluZWRcIiB8fCAoaXNBcnIgJiYgbmVzdGVkLmxlbmd0aCA9PT0gMCkpIHJldHVybjtcblxuICBhc3luYyBmdW5jdGlvbiBmZXRjaFBvcHVsYXRlVmFsdWVzKFxuICAgIGM6IENvbnRleHQ8TT4sXG4gICAgbW9kZWw6IE0sXG4gICAgcHJvcE5hbWU6IHN0cmluZyxcbiAgICBwcm9wS2V5VmFsdWVzOiBhbnlbXVxuICApIHtcbiAgICBsZXQgY2FjaGVLZXk6IHN0cmluZztcbiAgICBsZXQgdmFsOiBhbnk7XG4gICAgY29uc3QgcmVzdWx0czogTVtdID0gW107XG4gICAgZm9yIChjb25zdCBwcm9LZXlWYWx1ZSBvZiBwcm9wS2V5VmFsdWVzKSB7XG4gICAgICBjYWNoZUtleSA9IGdldFBvcHVsYXRlS2V5KG1vZGVsLmNvbnN0cnVjdG9yLm5hbWUsIHByb3BOYW1lLCBwcm9LZXlWYWx1ZSk7XG4gICAgICB0cnkge1xuICAgICAgICB2YWwgPSBhd2FpdCBjLmdldChjYWNoZUtleSk7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICBjb25zdCByZXBvID0gcmVwb3NpdG9yeUZyb21UeXBlTWV0YWRhdGEobW9kZWwsIHByb3BOYW1lKTtcbiAgICAgICAgaWYgKCFyZXBvKSB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvdWxkIG5vdCBmaW5kIHJlcG9cIik7XG4gICAgICAgIHZhbCA9IGF3YWl0IHJlcG8ucmVhZChwcm9LZXlWYWx1ZSk7XG4gICAgICB9XG4gICAgICByZXN1bHRzLnB1c2godmFsKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdHM7XG4gIH1cbiAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2hQb3B1bGF0ZVZhbHVlcyhcbiAgICBjb250ZXh0LFxuICAgIG1vZGVsLFxuICAgIGtleSxcbiAgICBpc0FyciA/IG5lc3RlZCA6IFtuZXN0ZWRdXG4gICk7XG4gIChtb2RlbCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtrZXldID0gaXNBcnIgPyByZXMgOiByZXNbMF07XG59XG5cbmNvbnN0IGNvbW1vbVR5cGVzID0gW1xuICBcImFycmF5XCIsXG4gIFwic3RyaW5nXCIsXG4gIFwibnVtYmVyXCIsXG4gIFwiYm9vbGVhblwiLFxuICBcInN5bWJvbFwiLFxuICBcImZ1bmN0aW9uXCIsXG4gIFwib2JqZWN0XCIsXG4gIFwidW5kZWZpbmVkXCIsXG4gIFwibnVsbFwiLFxuICBcImJpZ2ludFwiLFxuXTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlcG9zaXRvcnlGcm9tVHlwZU1ldGFkYXRhPE0gZXh0ZW5kcyBNb2RlbD4oXG4gIG1vZGVsOiBhbnksXG4gIHByb3BlcnR5S2V5OiBzdHJpbmdcbik6IFJlcG88TT4ge1xuICBjb25zdCB0eXBlcyA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoXG4gICAgVmFsaWRhdGlvbi5rZXkoXG4gICAgICBBcnJheS5pc0FycmF5KG1vZGVsW3Byb3BlcnR5S2V5XSlcbiAgICAgICAgPyBWYWxpZGF0aW9uS2V5cy5MSVNUXG4gICAgICAgIDogVmFsaWRhdGlvbktleXMuVFlQRVxuICAgICksXG4gICAgbW9kZWwsXG4gICAgcHJvcGVydHlLZXlcbiAgKTtcbiAgY29uc3QgY3VzdG9tVHlwZXM6IGFueSA9IEFycmF5LmlzQXJyYXkobW9kZWxbcHJvcGVydHlLZXldKVxuICAgID8gdHlwZXMuY2xhc3NcbiAgICA6IHR5cGVzLmN1c3RvbVR5cGVzO1xuICBpZiAoIXR5cGVzIHx8ICFjdXN0b21UeXBlcylcbiAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgIGBGYWlsZWQgdG8gZmluZCB0eXBlcyBkZWNvcmF0b3JzIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5S2V5fWBcbiAgICApO1xuXG4gIGNvbnN0IGFsbG93ZWRUeXBlczogc3RyaW5nW10gPSBBcnJheS5pc0FycmF5KGN1c3RvbVR5cGVzKVxuICAgID8gWy4uLmN1c3RvbVR5cGVzXVxuICAgIDogW2N1c3RvbVR5cGVzXTtcbiAgY29uc3QgY29uc3RydWN0b3JOYW1lID0gYWxsb3dlZFR5cGVzLmZpbmQoXG4gICAgKHQpID0+ICFjb21tb21UeXBlcy5pbmNsdWRlcyhgJHt0fWAudG9Mb3dlckNhc2UoKSlcbiAgKTtcbiAgaWYgKCFjb25zdHJ1Y3Rvck5hbWUpXG4gICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICBgUHJvcGVydHkga2V5ICR7cHJvcGVydHlLZXl9IGRvZXMgbm90IGhhdmUgYSB2YWxpZCBjb25zdHJ1Y3RvciB0eXBlYFxuICAgICk7XG4gIGNvbnN0IGNvbnN0cnVjdG9yOiBDb25zdHJ1Y3RvcjxNPiB8IHVuZGVmaW5lZCA9IE1vZGVsLmdldChjb25zdHJ1Y3Rvck5hbWUpO1xuICBpZiAoIWNvbnN0cnVjdG9yKVxuICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBObyByZWdpc3RlcmVkIG1vZGVsIGZvdW5kIGZvciAke2NvbnN0cnVjdG9yTmFtZX1gKTtcblxuICByZXR1cm4gUmVwb3NpdG9yeS5mb3JNb2RlbChjb25zdHJ1Y3Rvcik7XG59XG4iXX0=
|
205
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tb2RlbC9jb25zdHJ1Y3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLEtBQUssRUFDTCxVQUFVLEVBQ1YsY0FBYyxHQUNmLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFRLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTVELE9BQU8sRUFDTCxjQUFjLEVBQ2QsYUFBYSxFQUNiLGFBQWEsR0FDZCxNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHbEQsTUFBTSxDQUFDLEtBQUssVUFBVSxjQUFjLENBQ2xDLEtBQVEsRUFDUixPQUFtQixFQUNuQixVQUFvQjtJQUVwQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxXQUFXO1lBQ2QsTUFBTSxJQUFJLGFBQWEsQ0FBQyx3QkFBd0IsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVFLFVBQVUsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBWSxDQUFDO0lBQzNELENBQUM7SUFDRCxJQUFJLE9BQVEsS0FBNkIsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLEtBQUssV0FBVztRQUN0RSxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQ3RDLENBQUM7UUFDSixJQUFJLENBQUM7WUFDSCxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFBQyxPQUFPLENBQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUks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QUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3hELENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSztRQUNiLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQ3RCLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxXQUFXO1FBQ3hCLE1BQU0sSUFBSSxhQUFhLENBQ3JCLGdEQUFnRCxXQUFXLEVBQUUsQ0FDOUQsQ0FBQztJQUVKLE1BQU0sWUFBWSxHQUFhLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xCLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQ3ZDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUNuRCxDQUFDO0lBQ0YsSUFBSSxDQUFDLGVBQWU7UUFDbEIsTUFBTSxJQUFJLGFBQWEsQ0FDckIsZ0JBQWdCLFdBQVcseUNBQXlDLENBQ3JFLENBQUM7SUFDSixNQUFNLFdBQVcsR0FBK0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMzRSxJQUFJLENBQUMsV0FBVztRQUNkLE1BQU0sSUFBSSxhQUFhLENBQUMsaUNBQWlDLGVBQWUsRUFBRSxDQUFDLENBQUM7SUFFOUUsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQzFDLENBQUMiLCJmaWxlIjoibW9kZWwvY29uc3RydWN0aW9uLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29uc3RydWN0b3IsXG4gIE1vZGVsLFxuICBWYWxpZGF0aW9uLFxuICBWYWxpZGF0aW9uS2V5cyxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgUmVwbywgUmVwb3NpdG9yeSB9IGZyb20gXCIuLi9yZXBvc2l0b3J5L1JlcG9zaXRvcnlcIjtcbmltcG9ydCB7IFJlbGF0aW9uc01ldGFkYXRhIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7XG4gIGZpbmRQcmltYXJ5S2V5LFxuICBJbnRlcm5hbEVycm9yLFxuICBOb3RGb3VuZEVycm9yLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IFBlcnNpc3RlbmNlS2V5cyB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9jb25zdGFudHNcIjtcbmltcG9ydCB7IENhc2NhZGUgfSBmcm9tIFwiLi4vcmVwb3NpdG9yeS9jb25zdGFudHNcIjtcbmltcG9ydCB7IENvbnRleHQgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnMvbGliL3JlcG9zaXRvcnkvQ29udGV4dFwiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3JlYXRlT3JVcGRhdGU8TSBleHRlbmRzIE1vZGVsPihcbiAgbW9kZWw6IE0sXG4gIGNvbnRleHQ6IENvbnRleHQ8TT4sXG4gIHJlcG9zaXRvcnk/OiBSZXBvPE0+XG4pOiBQcm9taXNlPE0+IHtcbiAgaWYgKCFyZXBvc2l0b3J5KSB7XG4gICAgY29uc3QgY29uc3RydWN0b3IgPSBNb2RlbC5nZXQobW9kZWwuY29uc3RydWN0b3IubmFtZSk7XG4gICAgaWYgKCFjb25zdHJ1Y3RvcilcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBDb3VsZCBub3QgZmluZCBtb2RlbCAke21vZGVsLmNvbnN0cnVjdG9yLm5hbWV9YCk7XG4gICAgcmVwb3NpdG9yeSA9IFJlcG9zaXRvcnkuZm9yTW9kZWwoY29uc3RydWN0b3IpIGFzIFJlcG88TT47XG4gIH1cbiAgaWYgKHR5cGVvZiAobW9kZWwgYXMgUmVjb3JkPHN0cmluZywgYW55PilbcmVwb3NpdG9yeS5wa10gPT09IFwidW5kZWZpbmVkXCIpXG4gICAgcmV0dXJuIHJlcG9zaXRvcnkuY3JlYXRlKG1vZGVsLCBjb250ZXh0KTtcbiAgZWxzZSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiByZXBvc2l0b3J5LnVwZGF0ZShtb2RlbCwgY29udGV4dCk7XG4gICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICBpZiAoIShlIGluc3RhbmNlb2YgTm90Rm91bmRFcnJvcikpIHRocm93IGU7XG4gICAgICByZXR1cm4gcmVwb3NpdG9yeS5jcmVhdGUobW9kZWwsIGNvbnRleHQpO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lVG9PbmVPbkNyZWF0ZTxcbiAgTSBleHRlbmRzIE1vZGVsLFxuICBSIGV4dGVuZHMgUmVwbzxNPixcbiAgWSBleHRlbmRzIFJlbGF0aW9uc01ldGFkYXRhLFxuPih0aGlzOiBSLCBjb250ZXh0OiBDb250ZXh0PE0+LCBkYXRhOiBZLCBrZXk6IHN0cmluZywgbW9kZWw6IE0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcHJvcGVydHlWYWx1ZTogYW55ID0gKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV07XG4gIGlmICghcHJvcGVydHlWYWx1ZSkgcmV0dXJuO1xuXG4gIGlmICh0eXBlb2YgcHJvcGVydHlWYWx1ZSAhPT0gXCJvYmplY3RcIikge1xuICAgIGNvbnN0IGlubmVyUmVwbyA9IHJlcG9zaXRvcnlGcm9tVHlwZU1ldGFkYXRhKG1vZGVsLCBrZXkpO1xuICAgIGNvbnN0IHJlYWQgPSBhd2FpdCBpbm5lclJlcG8ucmVhZChwcm9wZXJ0eVZhbHVlKTtcbiAgICBhd2FpdCBjYWNoZU1vZGVsRm9yUG9wdWxhdGUoY29udGV4dCwgbW9kZWwsIGtleSwgcHJvcGVydHlWYWx1ZSwgcmVhZCk7XG4gICAgKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV0gPSBwcm9wZXJ0eVZhbHVlO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGNvbnN0cnVjdG9yID0gTW9kZWwuZ2V0KGRhdGEuY2xhc3MpO1xuICBpZiAoIWNvbnN0cnVjdG9yKVxuICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBDb3VsZCBub3QgZmluZCBtb2RlbCAke2RhdGEuY2xhc3N9YCk7XG4gIGNvbnN0IHJlcG86IFJlcG88YW55PiA9IFJlcG9zaXRvcnkuZm9yTW9kZWwoY29uc3RydWN0b3IpO1xuICBjb25zdCBjcmVhdGVkID0gYXdhaXQgcmVwby5jcmVhdGUocHJvcGVydHlWYWx1ZSk7XG4gIGNvbnN0IHBrID0gZmluZFByaW1hcnlLZXkoY3JlYXRlZCkuaWQ7XG4gIGF3YWl0IGNhY2hlTW9kZWxGb3JQb3B1bGF0ZShjb250ZXh0LCBtb2RlbCwga2V5LCBjcmVhdGVkW3BrXSwgY3JlYXRlZCk7XG4gIChtb2RlbCBhcyBhbnkpW2tleV0gPSBjcmVhdGVkW3BrXTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG9uZVRvT25lT25VcGRhdGU8XG4gIE0gZXh0ZW5kcyBNb2RlbCxcbiAgUiBleHRlbmRzIFJlcG88TT4sXG4gIFkgZXh0ZW5kcyBSZWxhdGlvbnNNZXRhZGF0YSxcbj4odGhpczogUiwgY29udGV4dDogQ29udGV4dDxNPiwgZGF0YTogWSwga2V5OiBzdHJpbmcsIG1vZGVsOiBNKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHByb3BlcnR5VmFsdWU6IGFueSA9IChtb2RlbCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtrZXldO1xuICBpZiAoIXByb3BlcnR5VmFsdWUpIHJldHVybjtcbiAgaWYgKGRhdGEuY2FzY2FkZS51cGRhdGUgIT09IENhc2NhZGUuQ0FTQ0FERSkgcmV0dXJuO1xuXG4gIGlmICh0eXBlb2YgcHJvcGVydHlWYWx1ZSAhPT0gXCJvYmplY3RcIikge1xuICAgIGNvbnN0IGlubmVyUmVwbyA9IHJlcG9zaXRvcnlGcm9tVHlwZU1ldGFkYXRhKG1vZGVsLCBrZXkpO1xuICAgIGNvbnN0IHJlYWQgPSBhd2FpdCBpbm5lclJlcG8ucmVhZChwcm9wZXJ0eVZhbHVlKTtcbiAgICBhd2FpdCBjYWNoZU1vZGVsRm9yUG9wdWxhdGUoY29udGV4dCwgbW9kZWwsIGtleSwgcHJvcGVydHlWYWx1ZSwgcmVhZCk7XG4gICAgKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV0gPSBwcm9wZXJ0eVZhbHVlO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHVwZGF0ZWQgPSBhd2FpdCBjcmVhdGVPclVwZGF0ZShcbiAgICAobW9kZWwgYXMgUmVjb3JkPHN0cmluZywgYW55Pilba2V5XSxcbiAgICBjb250ZXh0XG4gICk7XG4gIGNvbnN0IHBrID0gZmluZFByaW1hcnlLZXkodXBkYXRlZCkuaWQ7XG4gIGF3YWl0IGNhY2hlTW9kZWxGb3JQb3B1bGF0ZShcbiAgICBjb250ZXh0LFxuICAgIG1vZGVsLFxuICAgIGtleSxcbiAgICAodXBkYXRlZCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtwa10sXG4gICAgdXBkYXRlZFxuICApO1xuICAobW9kZWwgYXMgYW55KVtrZXldID0gKHVwZGF0ZWQgYXMgUmVjb3JkPHN0cmluZywgYW55PilbcGtdO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lVG9PbmVPbkRlbGV0ZTxcbiAgTSBleHRlbmRzIE1vZGVsLFxuICBSIGV4dGVuZHMgUmVwbzxNPixcbiAgWSBleHRlbmRzIFJlbGF0aW9uc01ldGFkYXRhLFxuPih0aGlzOiBSLCBjb250ZXh0OiBDb250ZXh0PE0+LCBkYXRhOiBZLCBrZXk6IHN0cmluZywgbW9kZWw6IE0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgcHJvcGVydHlWYWx1ZTogYW55ID0gKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV07XG4gIGlmICghcHJvcGVydHlWYWx1ZSkgcmV0dXJuO1xuICBpZiAoZGF0YS5jYXNjYWRlLnVwZGF0ZSAhPT0gQ2FzY2FkZS5DQVNDQURFKSByZXR1cm47XG4gIGNvbnN0IGlubmVyUmVwbzogUmVwbzxNPiA9IHJlcG9zaXRvcnlGcm9tVHlwZU1ldGFkYXRhKG1vZGVsLCBrZXkpO1xuICBsZXQgZGVsZXRlZDogTTtcbiAgaWYgKCEocHJvcGVydHlWYWx1ZSBpbnN0YW5jZW9mIE1vZGVsKSlcbiAgICBkZWxldGVkID0gYXdhaXQgaW5uZXJSZXBvLmRlbGV0ZShcbiAgICAgIChtb2RlbCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtrZXldLFxuICAgICAgY29udGV4dFxuICAgICk7XG4gIGVsc2VcbiAgICBkZWxldGVkID0gYXdhaXQgaW5uZXJSZXBvLmRlbGV0ZShcbiAgICAgIChtb2RlbCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtrZXldW2lubmVyUmVwby5wa10sXG4gICAgICBjb250ZXh0XG4gICAgKTtcbiAgYXdhaXQgY2FjaGVNb2RlbEZvclBvcHVsYXRlKFxuICAgIGNvbnRleHQsXG4gICAgbW9kZWwsXG4gICAga2V5LFxuICAgIChkZWxldGVkIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2lubmVyUmVwby5wa10sXG4gICAgZGVsZXRlZFxuICApO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lVG9NYW55T25DcmVhdGU8XG4gIE0gZXh0ZW5kcyBNb2RlbCxcbiAgUiBleHRlbmRzIFJlcG88TT4sXG4gIFkgZXh0ZW5kcyBSZWxhdGlvbnNNZXRhZGF0YSxcbj4odGhpczogUiwgY29udGV4dDogQ29udGV4dDxNPiwgZGF0YTogWSwga2V5OiBzdHJpbmcsIG1vZGVsOiBNKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHByb3BlcnR5VmFsdWVzOiBhbnkgPSAobW9kZWwgYXMgUmVjb3JkPHN0cmluZywgYW55Pilba2V5XTtcbiAgaWYgKCFwcm9wZXJ0eVZhbHVlcyB8fCAhcHJvcGVydHlWYWx1ZXMubGVuZ3RoKSByZXR1cm47XG4gIGNvbnN0IGFycmF5VHlwZSA9IHR5cGVvZiBwcm9wZXJ0eVZhbHVlc1swXTtcbiAgaWYgKCFwcm9wZXJ0eVZhbHVlcy5ldmVyeSgoaXRlbTogYW55KSA9PiB0eXBlb2YgaXRlbSA9PT0gYXJyYXlUeXBlKSlcbiAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgIGBJbnZhbGlkIG9wZXJhdGlvbi4gQWxsIGVsZW1lbnRzIG9mIHByb3BlcnR5ICR7a2V5fSBtdXN0IG1hdGNoIHRoZSBzYW1lIHR5cGUuYFxuICAgICk7XG4gIGNvbnN0IHVuaXF1ZVZhbHVlcyA9IG5ldyBTZXQoWy4uLnByb3BlcnR5VmFsdWVzXSk7XG4gIGlmIChhcnJheVR5cGUgIT09IFwib2JqZWN0XCIpIHtcbiAgICBjb25zdCByZXBvID0gcmVwb3NpdG9yeUZyb21UeXBlTWV0YWRhdGEobW9kZWwsIGtleSk7XG4gICAgZm9yIChjb25zdCBpZCBvZiB1bmlxdWVWYWx1ZXMpIHtcbiAgICAgIGNvbnN0IHJlYWQgPSBhd2FpdCByZXBvLnJlYWQoaWQpO1xuICAgICAgYXdhaXQgY2FjaGVNb2RlbEZvclBvcHVsYXRlKGNvbnRleHQsIG1vZGVsLCBrZXksIGlkLCByZWFkKTtcbiAgICB9XG4gICAgKG1vZGVsIGFzIGFueSlba2V5XSA9IFsuLi51bmlxdWVWYWx1ZXNdO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHBrTmFtZSA9IGZpbmRQcmltYXJ5S2V5KHByb3BlcnR5VmFsdWVzWzBdKS5pZDtcblxuICBjb25zdCByZXN1bHQ6IFNldDxzdHJpbmc+ID0gbmV3IFNldCgpO1xuXG4gIGZvciAoY29uc3QgbSBvZiBwcm9wZXJ0eVZhbHVlcykge1xuICAgIGNvbnN0IHJlY29yZCA9IGF3YWl0IGNyZWF0ZU9yVXBkYXRlKG0sIGNvbnRleHQpO1xuICAgIGF3YWl0IGNhY2hlTW9kZWxGb3JQb3B1bGF0ZShjb250ZXh0LCBtb2RlbCwga2V5LCByZWNvcmRbcGtOYW1lXSwgcmVjb3JkKTtcbiAgICByZXN1bHQuYWRkKHJlY29yZFtwa05hbWVdKTtcbiAgfVxuXG4gIChtb2RlbCBhcyBhbnkpW2tleV0gPSBbLi4ucmVzdWx0XTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG9uZVRvTWFueU9uVXBkYXRlPFxuICBNIGV4dGVuZHMgTW9kZWwsXG4gIFIgZXh0ZW5kcyBSZXBvPE0+LFxuICBZIGV4dGVuZHMgUmVsYXRpb25zTWV0YWRhdGEsXG4+KHRoaXM6IFIsIGNvbnRleHQ6IENvbnRleHQ8TT4sIGRhdGE6IFksIGtleTogc3RyaW5nLCBtb2RlbDogTSk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCB7IGNhc2NhZGUgfSA9IGRhdGE7XG4gIGlmIChjYXNjYWRlLnVwZGF0ZSAhPT0gQ2FzY2FkZS5DQVNDQURFKSByZXR1cm47XG4gIHJldHVybiBvbmVUb01hbnlPbkNyZWF0ZS5jYWxsKHRoaXMsIGNvbnRleHQsIGRhdGEsIGtleSwgbW9kZWwpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lVG9NYW55T25EZWxldGU8XG4gIE0gZXh0ZW5kcyBNb2RlbCxcbiAgUiBleHRlbmRzIFJlcG88TT4sXG4gIFkgZXh0ZW5kcyBSZWxhdGlvbnNNZXRhZGF0YSxcbj4odGhpczogUiwgY29udGV4dDogQ29udGV4dDxNPiwgZGF0YTogWSwga2V5OiBzdHJpbmcsIG1vZGVsOiBNKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmIChkYXRhLmNhc2NhZGUuZGVsZXRlICE9PSBDYXNjYWRlLkNBU0NBREUpIHJldHVybjtcbiAgY29uc3QgdmFsdWVzID0gKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV07XG4gIGlmICghdmFsdWVzIHx8ICF2YWx1ZXMubGVuZ3RoKSByZXR1cm47XG4gIGNvbnN0IGFycmF5VHlwZSA9IHR5cGVvZiB2YWx1ZXNbMF07XG4gIGNvbnN0IGFyZUFsbFNhbWVUeXBlID0gdmFsdWVzLmV2ZXJ5KChpdGVtOiBhbnkpID0+IHR5cGVvZiBpdGVtID09PSBhcnJheVR5cGUpO1xuICBpZiAoIWFyZUFsbFNhbWVUeXBlKVxuICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgYEludmFsaWQgb3BlcmF0aW9uLiBBbGwgZWxlbWVudHMgb2YgcHJvcGVydHkgJHtrZXl9IG11c3QgbWF0Y2ggdGhlIHNhbWUgdHlwZS5gXG4gICAgKTtcbiAgY29uc3QgaXNJbnN0YW50aWF0ZWQgPSBhcnJheVR5cGUgPT09IFwib2JqZWN0XCI7XG4gIGNvbnN0IHJlcG8gPSBpc0luc3RhbnRpYXRlZFxuICAgID8gUmVwb3NpdG9yeS5mb3JNb2RlbCh2YWx1ZXNbMF0pXG4gICAgOiByZXBvc2l0b3J5RnJvbVR5cGVNZXRhZGF0YShtb2RlbCwga2V5KTtcblxuICBjb25zdCB1bmlxdWVWYWx1ZXMgPSBuZXcgU2V0KFtcbiAgICAuLi4oaXNJbnN0YW50aWF0ZWRcbiAgICAgID8gdmFsdWVzLm1hcCgodjogUmVjb3JkPHN0cmluZywgYW55PikgPT4gdltyZXBvLnBrXSlcbiAgICAgIDogdmFsdWVzKSxcbiAgXSk7XG5cbiAgZm9yIChjb25zdCBpZCBvZiB1bmlxdWVWYWx1ZXMudmFsdWVzKCkpIHtcbiAgICBjb25zdCBkZWxldGVkID0gYXdhaXQgcmVwby5kZWxldGUoaWQsIGNvbnRleHQpO1xuICAgIGF3YWl0IGNhY2hlTW9kZWxGb3JQb3B1bGF0ZShjb250ZXh0LCBtb2RlbCwga2V5LCBpZCwgZGVsZXRlZCk7XG4gIH1cbiAgKG1vZGVsIGFzIGFueSlba2V5XSA9IFsuLi51bmlxdWVWYWx1ZXNdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UG9wdWxhdGVLZXkoXG4gIHRhYmxlTmFtZTogc3RyaW5nLFxuICBmaWVsZE5hbWU6IHN0cmluZyxcbiAgaWQ6IHN0cmluZyB8IG51bWJlclxuKSB7XG4gIHJldHVybiBbUGVyc2lzdGVuY2VLZXlzLlBPUFVMQVRFLCB0YWJsZU5hbWUsIGZpZWxkTmFtZSwgaWRdLmpvaW4oXCIuXCIpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY2FjaGVNb2RlbEZvclBvcHVsYXRlPE0gZXh0ZW5kcyBNb2RlbD4oXG4gIGNvbnRleHQ6IENvbnRleHQ8TT4sXG4gIHBhcmVudE1vZGVsOiBNLFxuICBwcm9wZXJ0eUtleTogc3RyaW5nLFxuICBwa1ZhbHVlOiBzdHJpbmcgfCBudW1iZXIsXG4gIGNhY2hlVmFsdWU6IGFueVxuKSB7XG4gIGNvbnN0IGNhY2hlS2V5ID0gZ2V0UG9wdWxhdGVLZXkoXG4gICAgcGFyZW50TW9kZWwuY29uc3RydWN0b3IubmFtZSxcbiAgICBwcm9wZXJ0eUtleSxcbiAgICBwa1ZhbHVlXG4gICk7XG4gIHJldHVybiBjb250ZXh0LnB1dChjYWNoZUtleSwgY2FjaGVWYWx1ZSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwb3B1bGF0ZTxcbiAgTSBleHRlbmRzIE1vZGVsLFxuICBSIGV4dGVuZHMgUmVwbzxNPixcbiAgWSBleHRlbmRzIFJlbGF0aW9uc01ldGFkYXRhLFxuPih0aGlzOiBSLCBjb250ZXh0OiBDb250ZXh0PE0+LCBkYXRhOiBZLCBrZXk6IHN0cmluZywgbW9kZWw6IE0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCFkYXRhLnBvcHVsYXRlKSByZXR1cm47XG4gIGNvbnN0IG5lc3RlZDogYW55ID0gKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW2tleV07XG4gIGNvbnN0IGlzQXJyID0gQXJyYXkuaXNBcnJheShuZXN0ZWQpO1xuICBpZiAodHlwZW9mIG5lc3RlZCA9PT0gXCJ1bmRlZmluZWRcIiB8fCAoaXNBcnIgJiYgbmVzdGVkLmxlbmd0aCA9PT0gMCkpIHJldHVybjtcblxuICBhc3luYyBmdW5jdGlvbiBmZXRjaFBvcHVsYXRlVmFsdWVzKFxuICAgIGM6IENvbnRleHQ8TT4sXG4gICAgbW9kZWw6IE0sXG4gICAgcHJvcE5hbWU6IHN0cmluZyxcbiAgICBwcm9wS2V5VmFsdWVzOiBhbnlbXVxuICApIHtcbiAgICBsZXQgY2FjaGVLZXk6IHN0cmluZztcbiAgICBsZXQgdmFsOiBhbnk7XG4gICAgY29uc3QgcmVzdWx0czogTVtdID0gW107XG4gICAgZm9yIChjb25zdCBwcm9LZXlWYWx1ZSBvZiBwcm9wS2V5VmFsdWVzKSB7XG4gICAgICBjYWNoZUtleSA9IGdldFBvcHVsYXRlS2V5KG1vZGVsLmNvbnN0cnVjdG9yLm5hbWUsIHByb3BOYW1lLCBwcm9LZXlWYWx1ZSk7XG4gICAgICB0cnkge1xuICAgICAgICB2YWwgPSBhd2FpdCBjLmdldChjYWNoZUtleSk7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICBjb25zdCByZXBvID0gcmVwb3NpdG9yeUZyb21UeXBlTWV0YWRhdGEobW9kZWwsIHByb3BOYW1lKTtcbiAgICAgICAgaWYgKCFyZXBvKSB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkNvdWxkIG5vdCBmaW5kIHJlcG9cIik7XG4gICAgICAgIHZhbCA9IGF3YWl0IHJlcG8ucmVhZChwcm9LZXlWYWx1ZSk7XG4gICAgICB9XG4gICAgICByZXN1bHRzLnB1c2godmFsKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdHM7XG4gIH1cbiAgY29uc3QgcmVzID0gYXdhaXQgZmV0Y2hQb3B1bGF0ZVZhbHVlcyhcbiAgICBjb250ZXh0LFxuICAgIG1vZGVsLFxuICAgIGtleSxcbiAgICBpc0FyciA/IG5lc3RlZCA6IFtuZXN0ZWRdXG4gICk7XG4gIChtb2RlbCBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KVtrZXldID0gaXNBcnIgPyByZXMgOiByZXNbMF07XG59XG5cbmNvbnN0IGNvbW1vbVR5cGVzID0gW1xuICBcImFycmF5XCIsXG4gIFwic3RyaW5nXCIsXG4gIFwibnVtYmVyXCIsXG4gIFwiYm9vbGVhblwiLFxuICBcInN5bWJvbFwiLFxuICBcImZ1bmN0aW9uXCIsXG4gIFwib2JqZWN0XCIsXG4gIFwidW5kZWZpbmVkXCIsXG4gIFwibnVsbFwiLFxuICBcImJpZ2ludFwiLFxuXTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlcG9zaXRvcnlGcm9tVHlwZU1ldGFkYXRhPE0gZXh0ZW5kcyBNb2RlbD4oXG4gIG1vZGVsOiBhbnksXG4gIHByb3BlcnR5S2V5OiBzdHJpbmdcbik6IFJlcG88TT4ge1xuICBjb25zdCB0eXBlcyA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoXG4gICAgVmFsaWRhdGlvbi5rZXkoXG4gICAgICBBcnJheS5pc0FycmF5KG1vZGVsW3Byb3BlcnR5S2V5XSlcbiAgICAgICAgPyBWYWxpZGF0aW9uS2V5cy5MSVNUXG4gICAgICAgIDogVmFsaWRhdGlvbktleXMuVFlQRVxuICAgICksXG4gICAgbW9kZWwsXG4gICAgcHJvcGVydHlLZXlcbiAgKTtcbiAgY29uc3QgY3VzdG9tVHlwZXM6IGFueSA9IEFycmF5LmlzQXJyYXkobW9kZWxbcHJvcGVydHlLZXldKVxuICAgID8gdHlwZXMuY2xhc3NcbiAgICA6IHR5cGVzLmN1c3RvbVR5cGVzO1xuICBpZiAoIXR5cGVzIHx8ICFjdXN0b21UeXBlcylcbiAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgIGBGYWlsZWQgdG8gZmluZCB0eXBlcyBkZWNvcmF0b3JzIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5S2V5fWBcbiAgICApO1xuXG4gIGNvbnN0IGFsbG93ZWRUeXBlczogc3RyaW5nW10gPSBBcnJheS5pc0FycmF5KGN1c3RvbVR5cGVzKVxuICAgID8gWy4uLmN1c3RvbVR5cGVzXVxuICAgIDogW2N1c3RvbVR5cGVzXTtcbiAgY29uc3QgY29uc3RydWN0b3JOYW1lID0gYWxsb3dlZFR5cGVzLmZpbmQoXG4gICAgKHQpID0+ICFjb21tb21UeXBlcy5pbmNsdWRlcyhgJHt0fWAudG9Mb3dlckNhc2UoKSlcbiAgKTtcbiAgaWYgKCFjb25zdHJ1Y3Rvck5hbWUpXG4gICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICBgUHJvcGVydHkga2V5ICR7cHJvcGVydHlLZXl9IGRvZXMgbm90IGhhdmUgYSB2YWxpZCBjb25zdHJ1Y3RvciB0eXBlYFxuICAgICk7XG4gIGNvbnN0IGNvbnN0cnVjdG9yOiBDb25zdHJ1Y3RvcjxNPiB8IHVuZGVmaW5lZCA9IE1vZGVsLmdldChjb25zdHJ1Y3Rvck5hbWUpO1xuICBpZiAoIWNvbnN0cnVjdG9yKVxuICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBObyByZWdpc3RlcmVkIG1vZGVsIGZvdW5kIGZvciAke2NvbnN0cnVjdG9yTmFtZX1gKTtcblxuICByZXR1cm4gUmVwb3NpdG9yeS5mb3JNb2RlbChjb25zdHJ1Y3Rvcik7XG59XG4iXX0=
|
File without changes
|
@@ -138,4 +138,4 @@ export function manyToOne(clazz, cascadeOptions = DefaultCascade, populate = tru
|
|
138
138
|
propMetadata(Repository.key(PersistenceKeys.MANY_TO_ONE), metadata));
|
139
139
|
}
|
140
140
|
|
141
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9tb2RlbC9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxhQUFhLEVBQ2IsUUFBUSxFQUNSLGNBQWMsRUFDZCxRQUFRLEVBQ1IsUUFBUSxFQUNSLFFBQVEsR0FDVCxNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxjQUFjLEVBQWtCLE1BQU0seUJBQXlCLENBQUM7QUFDekUsT0FBTyxFQUVMLElBQUksRUFDSixLQUFLLEVBQ0wsSUFBSSxFQUNKLFlBQVksRUFDWixJQUFJLEdBQ0wsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFRLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUvQyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsUUFBUSxJQUFJLEdBQUcsR0FDaEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RCxNQUFNLFVBQVUsS0FBSyxDQUFDLFNBQWlCO0lBQ3JDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRCxNQUFNLFVBQVUsTUFBTSxDQUFDLFVBQWtCO0lBQ3ZDLE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFD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LGVBQWUsQ0FBQyxXQUFXLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FDcEUsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUN2QixLQUF1QixFQUN2QixpQkFBa0MsY0FBYyxFQUNoRCxRQUFRLEdBQUcsSUFBSTtJQUVmLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEIsTUFBTSxRQUFRLEdBQXNCO1FBQ2xDLEtBQUssRUFBRSxLQUFLLENBQUMsSUFBSTtRQUNqQixPQUFPLEVBQUUsY0FBYztRQUN2QixRQUFRLEVBQUUsUUFBUTtLQUNuQixDQUFDO0lBQ0YsT0FBTyxLQUFLLENBQ1YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFDL0IsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pELHlDQUF5QztJQUN6Qyx5Q0FBeUM7SUFDekMseUNBQXlDO0lBQ3pDLGdDQUFnQztJQUNoQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQ3BFLENBQUM7QUFDSixDQUFDIiwiZmlsZSI6Im1vZGVsL2RlY29yYXRvcnMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb25mbGljdEVycm9yLFxuICBvbkNyZWF0ZSxcbiAgb25DcmVhdGVVcGRhdGUsXG4gIG9uRGVsZXRlLFxuICBvblVwZGF0ZSxcbiAgYWZ0ZXJBbnksXG59IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgYXBwbHksIG1ldGFkYXRhIH0gZnJvbSBcIkBkZWNhZi10cy9yZWZsZWN0aW9uXCI7XG5pbXBvcnQgeyBQZXJzaXN0ZW5jZUtleXMgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2UvY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBDYXNjYWRlTWV0YWRhdGEsIEluZGV4TWV0YWRhdGEgfSBmcm9tIFwiLi4vcmVwb3NpdG9yeS90eXBlc1wiO1xuaW1wb3J0IHsgRGVmYXVsdENhc2NhZGUsIE9yZGVyRGlyZWN0aW9uIH0gZnJvbSBcIi4uL3JlcG9zaXRvcnkvY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBDb25zdHJ1Y3RvcixcbiAgbGlzdCxcbiAgTW9kZWwsXG4gIHByb3AsXG4gIHByb3BNZXRhZGF0YSxcbiAgdHlwZSxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQWRhcHRlciB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9BZGFwdGVyXCI7XG5pbXBvcnQgeyBSZXBvLCBSZXBvc2l0b3J5IH0gZnJvbSBcIi4uL3JlcG9zaXRvcnkvUmVwb3NpdG9yeVwiO1xuaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4uL3F1ZXJ5L0NvbmRpdGlvblwiO1xuaW1wb3J0IHsgUmVsYXRpb25zTWV0YWRhdGEgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHtcbiAgb25lVG9NYW55T25DcmVhdGUsXG4gIG9uZVRvTWFueU9uRGVsZXRlLFxuICBvbmVUb01hbnlPblVwZGF0ZSxcbiAgb25lVG9PbmVPbkNyZWF0ZSxcbiAgb25lVG9PbmVPbkRlbGV0ZSxcbiAgb25lVG9PbmVPblVwZGF0ZSxcbiAgcG9wdWxhdGUgYXMgcG9wLFxufSBmcm9tIFwiLi9jb25zdHJ1Y3Rpb25cIjtcbmltcG9ydCB7IFVzZXIgfSBmcm9tIFwiLi9Vc2VyXCI7XG5pbXBvcnQgeyBDb250ZXh0IH0gZnJvbSBcIi4uL3JlcG9zaXRvcnkvQ29udGV4dFwiO1xuaW1wb3J0IHsgVW5zdXBwb3J0ZWRFcnJvciB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9lcnJvcnNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlKHRhYmxlTmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiBtZXRhZGF0YShBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuVEFCTEUpLCB0YWJsZU5hbWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29sdW1uKGNvbHVtbk5hbWU6IHN0cmluZykge1xuICByZXR1cm4gcHJvcE1ldGFkYXRhKEFkYXB0ZXIua2V5KFBlcnNpc3RlbmNlS2V5cy5DT0xVTU4pLCBjb2x1bW5OYW1lKTtcbn1cblxuLyoqXG4gKiBAc3VtbWFyeSBJbmRleCBEZWNvcmF0b3JcbiAqIEBkZXNjcmlwdGlvbiBwcm9wZXJ0aWVzIGRlY29yYXRlZCB3aWxsIHRoZSBpbmRleCBpbiB0aGVcbiAqIERCIGZvciBwZXJmb3JtYW5jZSBpbiBxdWVyaWVzXG4gKlxuICogQHBhcmFtIHtPcmRlckRpcmVjdGlvbltdfSBbZGlyZWN0aW9uc11cbiAqIEBwYXJhbSB7c3RyaW5nW119IFtjb21wb3NpdGlvbnNdXG4gKlxuICogQGZ1bmN0aW9uIGluZGV4XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmRleChkaXJlY3Rpb25zPzogT3JkZXJEaXJlY3Rpb25bXSwgY29tcG9zaXRpb25zPzogc3RyaW5nW10pIHtcbiAgcmV0dXJuIHByb3BNZXRhZGF0YShcbiAgICBSZXBvc2l0b3J5LmtleShcbiAgICAgIGAke1BlcnNpc3RlbmNlS2V5cy5JTkRFWH0ke2NvbXBvc2l0aW9ucyAmJiBjb21wb3NpdGlvbnMubGVuZ3RoID8gYC4ke2NvbXBvc2l0aW9ucy5qb2luKFwiLlwiKX1gIDogXCJcIn1gXG4gICAgKSxcbiAgICB7XG4gICAgICBkaXJlY3Rpb25zOiBkaXJlY3Rpb25zLFxuICAgICAgY29tcG9zaXRpb25zOiBjb21wb3NpdGlvbnMsXG4gICAgfSBhcyBJbmRleE1ldGFkYXRhXG4gICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB1bmlxdWVPbkNyZWF0ZVVwZGF0ZTxcbiAgTSBleHRlbmRzIE1vZGVsLFxuICBSIGV4dGVuZHMgUmVwbzxNPixcbiAgWSA9IGFueSxcbj4odGhpczogUiwgY29udGV4dDogQ29udGV4dDxNPiwgZGF0YTogWSwga2V5OiBzdHJpbmcsIG1vZGVsOiBNKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmICghKG1vZGVsIGFzIGFueSlba2V5XSkgcmV0dXJuO1xuICBjb25zdCBleGlzdGluZyA9IGF3YWl0IHRoaXMuc2VsZWN0KClcbiAgICAud2hlcmUoQ29uZGl0aW9uLmF0dHJpYnV0ZShrZXkpLmVxKChtb2RlbCBhcyBhbnkpW2tleV0pKVxuICAgIC5leGVjdXRlPE1bXT4oKTtcbiAgaWYgKGV4aXN0aW5nLmxlbmd0aClcbiAgICB0aHJvdyBuZXcgQ29uZmxpY3RFcnJvcihcbiAgICAgIGBtb2RlbCBhbHJlYWR5IGV4aXN0cyB3aXRoIHByb3BlcnR5ICR7a2V5fSBlcXVhbCB0byAke0pTT04uc3RyaW5naWZ5KChtb2RlbCBhcyBhbnkpW2tleV0sIHVuZGVmaW5lZCwgMil9YFxuICAgICk7XG59XG5cbi8qKlxuICogQHN1bW1hcnkgVW5pcXVlIERlY29yYXRvclxuICogQGRlc2NyaXB0aW9uIFRhZ3MgYSBwcm9wZXJ0eSBhcyB1bmlxdWUuXG4gKiAgTm8gb3RoZXIgZWxlbWVudHMgaW4gdGhhdCB0YWJsZSBjYW4gaGF2ZSB0aGUgc2FtZSBwcm9wZXJ0eSB2YWx1ZVxuICpcbiAqIEBmdW5jdGlvbiB1bmlxdWVcbiAqXG4gKiBAbWVtYmVyT2YgbW9kdWxlOndhbGxldC1kYi5EZWNvcmF0b3JzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bmlxdWUoKSB7XG4gIHJldHVybiBhcHBseShcbiAgICBvbkNyZWF0ZVVwZGF0ZSh1bmlxdWVPbkNyZWF0ZVVwZGF0ZSksXG4gICAgcHJvcE1ldGFkYXRhKFJlcG9zaXRvcnkua2V5KFBlcnNpc3RlbmNlS2V5cy5VTklRVUUpLCB7fSlcbiAgKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZWRCeU9uQ3JlYXRlVXBkYXRlPFxuICBNIGV4dGVuZHMgTW9kZWwsXG4gIFIgZXh0ZW5kcyBSZXBvPE0+LFxuICBZID0gYW55LFxuPih0aGlzOiBSLCBjb250ZXh0OiBDb250ZXh0PE0+LCBkYXRhOiBZLCBrZXk6IHN0cmluZywgbW9kZWw6IE0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgdXNlcjogVXNlciB8IHVuZGVmaW5lZCA9IGNvbnRleHQudXNlcjtcbiAgaWYgKCF1c2VyKVxuICAgIHRocm93IG5ldyBVbnN1cHBvcnRlZEVycm9yKFxuICAgICAgXCJUaGlzIGFkYXB0ZXIgZG9lcyBub3Qgc3VwcG9ydCB1c2VyIGlkZW50aWZpY2F0aW9uXCJcbiAgICApO1xuICAobW9kZWwgYXMgYW55KVtrZXldID0gdXNlci5pZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZWRCeSgpIHtcbiAgcmV0dXJuIGFwcGx5KFxuICAgIG9uQ3JlYXRlKGNyZWF0ZWRCeU9uQ3JlYXRlVXBkYXRlKSxcbiAgICBwcm9wTWV0YWRhdGEoUmVwb3NpdG9yeS5rZXkoUGVyc2lzdGVuY2VLZXlzLkNSRUFURURfQlkpLCB7fSlcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZWRCeSgpIHtcbiAgcmV0dXJuIGFwcGx5KFxuICAgIG9uQ3JlYXRlVXBkYXRlKGNyZWF0ZWRCeU9uQ3JlYXRlVXBkYXRlKSxcbiAgICBwcm9wTWV0YWRhdGEoUmVwb3NpdG9yeS5rZXkoUGVyc2lzdGVuY2VLZXlzLkNSRUFURURfQlkpLCB7fSlcbiAgKTtcbn1cblxuLyoqXG4gKiBAc3VtbWFyeSBPbmUgVG8gT25lIHJlbGF0aW9uIERlY29yYXRvcnNcbiAqXG4gKiBAcGFyYW0ge0NvbnN0cnVjdG9yPGFueT59IGNsYXp6IHRoZSB7QGxpbmsgU2VxdWVuY2V9IHRvIHVzZS4gRGVmYXVsdHMgdG8ge0BsaW5rIE5vbmVTZXF1ZW5jZX1cbiAqIEBwYXJhbSB7Q2FzY2FkZU1ldGFkYXRhfSBbY2FzY2FkZU9wdGlvbnNdXG4gKiBAcGFyYW0ge2Jvb2xlYW59IHBvcHVsYXRlIElmIHRydWUsIHJlcGxhY2VzIHRoZSBzcGVjaWZpZWQga2V5IGluIHRoZSBkb2N1bWVudCB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHJlY29yZCBmcm9tIHRoZSBkYXRhYmFzZVxuICpcbiAqIEBmdW5jdGlvbiBvblRvT25lXG4gKlxuICogQG1lbWJlck9mIG1vZHVsZTp3YWxsZXQtZGIuRGVjb3JhdG9yc1xuICpcbiAqIEBzZWUgb25lVG9NYW55XG4gKiBAc2VlIG1hbnlUb09uZVxuICovXG5leHBvcnQgZnVuY3Rpb24gb25lVG9PbmU8TSBleHRlbmRzIE1vZGVsPihcbiAgY2xheno6IENvbnN0cnVjdG9yPE0+LFxuICBjYXNjYWRlT3B0aW9uczogQ2FzY2FkZU1ldGFkYXRhID0gRGVmYXVsdENhc2NhZGUsXG4gIHBvcHVsYXRlOiBib29sZWFuID0gdHJ1ZVxuKSB7XG4gIE1vZGVsLnJlZ2lzdGVyKGNsYXp6KTtcbiAgY29uc3QgbWV0YWRhdGE6IFJlbGF0aW9uc01ldGFkYXRhID0ge1xuICAgIGNsYXNzOiBjbGF6ei5uYW1lLFxuICAgIGNhc2NhZGU6IGNhc2NhZGVPcHRpb25zLFxuICAgIHBvcHVsYXRlOiBwb3B1bGF0ZSxcbiAgfTtcbiAgcmV0dXJuIGFwcGx5KFxuICAgIHByb3AoUGVyc2lzdGVuY2VLZXlzLlJFTEFUSU9OUyksXG4gICAgdHlwZShbY2xhenoubmFtZSwgU3RyaW5nLm5hbWUsIE51bWJlci5uYW1lLCBCaWdJbnQubmFtZV0pLFxuICAgIG9uQ3JlYXRlKG9uZVRvT25lT25DcmVhdGUsIG1ldGFkYXRhKSxcbiAgICBvblVwZGF0ZShvbmVUb09uZU9uVXBkYXRlLCBtZXRhZGF0YSksXG4gICAgb25EZWxldGUob25lVG9PbmVPbkRlbGV0ZSwgbWV0YWRhdGEpLFxuICAgIGFmdGVyQW55KHBvcCwgbWV0YWRhdGEpLFxuICAgIHByb3BNZXRhZGF0YShSZXBvc2l0b3J5LmtleShQZXJzaXN0ZW5jZUtleXMuT05FX1RPX09ORSksIG1ldGFkYXRhKVxuICApO1xufVxuXG4vKipcbiAqIEBzdW1tYXJ5IE9uZSBUbyBNYW55IHJlbGF0aW9uIERlY29yYXRvcnNcbiAqXG4gKiBAcGFyYW0ge0NvbnN0cnVjdG9yPGFueT59IGNsYXp6IHRoZSB7QGxpbmsgU2VxdWVuY2V9IHRvIHVzZS4gRGVmYXVsdHMgdG8ge0BsaW5rIE5vbmVTZXF1ZW5jZX1cbiAqIEBwYXJhbSB7Q2FzY2FkZU1ldGFkYXRhfSBbY2FzY2FkZU9wdGlvbnNdXG4gKlxuICogQGZ1bmN0aW9uIG9uZVRvTWFueVxuICpcbiAqIEBtZW1iZXJPZiBtb2R1bGU6d2FsbGV0LWRiLkRlY29yYXRvcnNcbiAqXG4gKiBAc2VlIG9uZVRvT25lXG4gKiBAc2VlIG1hbnlUb09uZVxuICovXG5leHBvcnQgZnVuY3Rpb24gb25lVG9NYW55PE0gZXh0ZW5kcyBNb2RlbD4oXG4gIGNsYXp6OiBDb25zdHJ1Y3RvcjxNPixcbiAgY2FzY2FkZU9wdGlvbnM6IENhc2NhZGVNZXRhZGF0YSA9IERlZmF1bHRDYXNjYWRlLFxuICBwb3B1bGF0ZTogYm9vbGVhbiA9IHRydWVcbikge1xuICBNb2RlbC5yZWdpc3RlcihjbGF6eik7XG4gIGNvbnN0IG1ldGFkYXRhOiBSZWxhdGlvbnNNZXRhZGF0YSA9IHtcbiAgICBjbGFzczogY2xhenoubmFtZSxcbiAgICBjYXNjYWRlOiBjYXNjYWRlT3B0aW9ucyxcbiAgICBwb3B1bGF0ZTogcG9wdWxhdGUsXG4gIH07XG4gIHJldHVybiBhcHBseShcbiAgICBwcm9wKFBlcnNpc3RlbmNlS2V5cy5SRUxBVElPTlMpLFxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgcHVycG9zZWZ1bCBvdmVycmlkZVxuICAgIGxpc3QoW2NsYXp6LCBTdHJpbmcsIE51bWJlciwgQmlnSW50XSksXG4gICAgb25DcmVhdGUob25lVG9NYW55T25DcmVhdGUsIG1ldGFkYXRhKSxcbiAgICBvblVwZGF0ZShvbmVUb01hbnlPblVwZGF0ZSwgbWV0YWRhdGEpLFxuICAgIG9uRGVsZXRlKG9uZVRvTWFueU9uRGVsZXRlLCBtZXRhZGF0YSksXG4gICAgYWZ0ZXJBbnkocG9wLCBtZXRhZGF0YSksXG4gICAgcHJvcE1ldGFkYXRhKFJlcG9zaXRvcnkua2V5KFBlcnNpc3RlbmNlS2V5cy5PTkVfVE9fTUFOWSksIG1ldGFkYXRhKVxuICApO1xufVxuXG4vKipcbiAqIEBzdW1tYXJ5IE1hbnkgVG8gT25lIHJlbGF0aW9uIERlY29yYXRvcnNcbiAqXG4gKiBAcGFyYW0ge0NvbnN0cnVjdG9yPGFueT59IGNsYXp6IHRoZSB7QGxpbmsgU2VxdWVuY2V9IHRvIHVzZS4gRGVmYXVsdHMgdG8ge0BsaW5rIE5vbmVTZXF1ZW5jZX1cbiAqIEBwYXJhbSB7Q2FzY2FkZU1ldGFkYXRhfSBbY2FzY2FkZU9wdGlvbnNdXG4gKlxuICogQGZ1bmN0aW9uIG1hbnlUb09uZVxuICpcbiAqIEBtZW1iZXJPZiBtb2R1bGU6d2FsbGV0LWRiLkRlY29yYXRvcnNcbiAqXG4gKiBAc2VlIG9uZVRvTWFueVxuICogQHNlZSBvbmVUb09uZVxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFueVRvT25lKFxuICBjbGF6ejogQ29uc3RydWN0b3I8YW55PixcbiAgY2FzY2FkZU9wdGlvbnM6IENhc2NhZGVNZXRhZGF0YSA9IERlZmF1bHRDYXNjYWRlLFxuICBwb3B1bGF0ZSA9IHRydWVcbikge1xuICBNb2RlbC5yZWdpc3RlcihjbGF6eik7XG4gIGNvbnN0IG1ldGFkYXRhOiBSZWxhdGlvbnNNZXRhZGF0YSA9IHtcbiAgICBjbGFzczogY2xhenoubmFtZSxcbiAgICBjYXNjYWRlOiBjYXNjYWRlT3B0aW9ucyxcbiAgICBwb3B1bGF0ZTogcG9wdWxhdGUsXG4gIH07XG4gIHJldHVybiBhcHBseShcbiAgICBwcm9wKFBlcnNpc3RlbmNlS2V5cy5SRUxBVElPTlMpLFxuICAgIHR5cGUoW2NsYXp6Lm5hbWUsIFN0cmluZy5uYW1lLCBOdW1iZXIubmFtZSwgQmlnSW50Lm5hbWVdKSxcbiAgICAvLyBvbkNyZWF0ZShvbmVUb01hbnlPbkNyZWF0ZSwgbWV0YWRhdGEpLFxuICAgIC8vIG9uVXBkYXRlKG9uZVRvTWFueU9uVXBkYXRlLCBtZXRhZGF0YSksXG4gICAgLy8gb25EZWxldGUob25lVG9NYW55T25EZWxldGUsIG1ldGFkYXRhKSxcbiAgICAvLyBhZnRlckFsbChwb3B1bGF0ZSwgbWV0YWRhdGEpLFxuICAgIHByb3BNZXRhZGF0YShSZXBvc2l0b3J5LmtleShQZXJzaXN0ZW5jZUtleXMuTUFOWV9UT19PTkUpLCBtZXRhZGF0YSlcbiAgKTtcbn1cbiJdfQ==
|
141
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tb2RlbC9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxhQUFhLEVBQ2IsUUFBUSxFQUNSLGNBQWMsRUFDZCxRQUFRLEVBQ1IsUUFBUSxFQUNSLFFBQVEsR0FDVCxNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSxjQUFjLEVBQWtCLE1BQU0seUJBQXlCLENBQUM7QUFDekUsT0FBTyxFQUVMLElBQUksRUFDSixLQUFLLEVBQ0wsSUFBSSxFQUNKLFlBQVksRUFDWixJQUFJLEdBQ0wsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFRLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUvQyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQixpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsUUFBUSxJQUFJLEdBQUcsR0FDaEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RCxNQUFNLFVBQVUsS0FBSyxDQUFDLFNBQWlCO0lBQ3JDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFFRCxNQUFNLFVBQVUsTUFBTSxDQUFDLFVBQWtCO0lBQ3ZDLE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxD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QUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FDcEUsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUN2QixLQUF1QixFQUN2QixpQkFBa0MsY0FBYyxFQUNoRCxRQUFRLEdBQUcsSUFBSTtJQUVmLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEIsTUFBTSxRQUFRLEdBQXNCO1FBQ2xDLEtBQUssRUFBRSxLQUFLLENBQUMsSUFBSTtRQUNqQixPQUFPLEVBQUUsY0FBYztRQUN2QixRQUFRLEVBQUUsUUFBUTtLQUNuQixDQUFDO0lBQ0YsT0FBTyxLQUFLLENBQ1YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFDL0IsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pELHlDQUF5QztJQUN6Qyx5Q0FBeUM7SUFDekMseUNBQXlDO0lBQ3pDLGdDQUFnQztJQUNoQyxZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQ3BFLENBQUM7QUFDSixDQUFDIiwiZmlsZSI6Im1vZGVsL2RlY29yYXRvcnMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb25mbGljdEVycm9yLFxuICBvbkNyZWF0ZSxcbiAgb25DcmVhdGVVcGRhdGUsXG4gIG9uRGVsZXRlLFxuICBvblVwZGF0ZSxcbiAgYWZ0ZXJBbnksXG59IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgYXBwbHksIG1ldGFkYXRhIH0gZnJvbSBcIkBkZWNhZi10cy9yZWZsZWN0aW9uXCI7XG5pbXBvcnQgeyBQZXJzaXN0ZW5jZUtleXMgfSBmcm9tIFwiLi4vcGVyc2lzdGVuY2UvY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBDYXNjYWRlTWV0YWRhdGEsIEluZGV4TWV0YWRhdGEgfSBmcm9tIFwiLi4vcmVwb3NpdG9yeS90eXBlc1wiO1xuaW1wb3J0IHsgRGVmYXVsdENhc2NhZGUsIE9yZGVyRGlyZWN0aW9uIH0gZnJvbSBcIi4uL3JlcG9zaXRvcnkvY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBDb25zdHJ1Y3RvcixcbiAgbGlzdCxcbiAgTW9kZWwsXG4gIHByb3AsXG4gIHByb3BNZXRhZGF0YSxcbiAgdHlwZSxcbn0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgQWRhcHRlciB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9BZGFwdGVyXCI7XG5pbXBvcnQgeyBSZXBvLCBSZXBvc2l0b3J5IH0gZnJvbSBcIi4uL3JlcG9zaXRvcnkvUmVwb3NpdG9yeVwiO1xuaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4uL3F1ZXJ5L0NvbmRpdGlvblwiO1xuaW1wb3J0IHsgUmVsYXRpb25zTWV0YWRhdGEgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHtcbiAgb25lVG9NYW55T25DcmVhdGUsXG4gIG9uZVRvTWFueU9uRGVsZXRlLFxuICBvbmVUb01hbnlPblVwZGF0ZSxcbiAgb25lVG9PbmVPbkNyZWF0ZSxcbiAgb25lVG9PbmVPbkRlbGV0ZSxcbiAgb25lVG9PbmVPblVwZGF0ZSxcbiAgcG9wdWxhdGUgYXMgcG9wLFxufSBmcm9tIFwiLi9jb25zdHJ1Y3Rpb25cIjtcbmltcG9ydCB7IFVzZXIgfSBmcm9tIFwiLi9Vc2VyXCI7XG5pbXBvcnQgeyBDb250ZXh0IH0gZnJvbSBcIi4uL3JlcG9zaXRvcnkvQ29udGV4dFwiO1xuaW1wb3J0IHsgVW5zdXBwb3J0ZWRFcnJvciB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9lcnJvcnNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxlKHRhYmxlTmFtZTogc3RyaW5nKSB7XG4gIHJldHVybiBtZXRhZGF0YShBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuVEFCTEUpLCB0YWJsZU5hbWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29sdW1uKGNvbHVtbk5hbWU6IHN0cmluZykge1xuICByZXR1cm4gcHJvcE1ldGFkYXRhKEFkYXB0ZXIua2V5KFBlcnNpc3RlbmNlS2V5cy5DT0xVTU4pLCBjb2x1bW5OYW1lKTtcbn1cblxuLyoqXG4gKiBAc3VtbWFyeSBJbmRleCBEZWNvcmF0b3JcbiAqIEBkZXNjcmlwdGlvbiBwcm9wZXJ0aWVzIGRlY29yYXRlZCB3aWxsIHRoZSBpbmRleCBpbiB0aGVcbiAqIERCIGZvciBwZXJmb3JtYW5jZSBpbiBxdWVyaWVzXG4gKlxuICogQHBhcmFtIHtPcmRlckRpcmVjdGlvbltdfSBbZGlyZWN0aW9uc11cbiAqIEBwYXJhbSB7c3RyaW5nW119IFtjb21wb3NpdGlvbnNdXG4gKlxuICogQGZ1bmN0aW9uIGluZGV4XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmRleChkaXJlY3Rpb25zPzogT3JkZXJEaXJlY3Rpb25bXSwgY29tcG9zaXRpb25zPzogc3RyaW5nW10pIHtcbiAgcmV0dXJuIHByb3BNZXRhZGF0YShcbiAgICBSZXBvc2l0b3J5LmtleShcbiAgICAgIGAke1BlcnNpc3RlbmNlS2V5cy5JTkRFWH0ke2NvbXBvc2l0aW9ucyAmJiBjb21wb3NpdGlvbnMubGVuZ3RoID8gYC4ke2NvbXBvc2l0aW9ucy5qb2luKFwiLlwiKX1gIDogXCJcIn1gXG4gICAgKSxcbiAgICB7XG4gICAgICBkaXJlY3Rpb25zOiBkaXJlY3Rpb25zLFxuICAgICAgY29tcG9zaXRpb25zOiBjb21wb3NpdGlvbnMsXG4gICAgfSBhcyBJbmRleE1ldGFkYXRhXG4gICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB1bmlxdWVPbkNyZWF0ZVVwZGF0ZTxcbiAgTSBleHRlbmRzIE1vZGVsLFxuICBSIGV4dGVuZHMgUmVwbzxNPixcbiAgWSA9IGFueSxcbj4odGhpczogUiwgY29udGV4dDogQ29udGV4dDxNPiwgZGF0YTogWSwga2V5OiBzdHJpbmcsIG1vZGVsOiBNKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmICghKG1vZGVsIGFzIGFueSlba2V5XSkgcmV0dXJuO1xuICBjb25zdCBleGlzdGluZyA9IGF3YWl0IHRoaXMuc2VsZWN0KClcbiAgICAud2hlcmUoQ29uZGl0aW9uLmF0dHJpYnV0ZShrZXkpLmVxKChtb2RlbCBhcyBhbnkpW2tleV0pKVxuICAgIC5leGVjdXRlPE1bXT4oKTtcbiAgaWYgKGV4aXN0aW5nLmxlbmd0aClcbiAgICB0aHJvdyBuZXcgQ29uZmxpY3RFcnJvcihcbiAgICAgIGBtb2RlbCBhbHJlYWR5IGV4aXN0cyB3aXRoIHByb3BlcnR5ICR7a2V5fSBlcXVhbCB0byAke0pTT04uc3RyaW5naWZ5KChtb2RlbCBhcyBhbnkpW2tleV0sIHVuZGVmaW5lZCwgMil9YFxuICAgICk7XG59XG5cbi8qKlxuICogQHN1bW1hcnkgVW5pcXVlIERlY29yYXRvclxuICogQGRlc2NyaXB0aW9uIFRhZ3MgYSBwcm9wZXJ0eSBhcyB1bmlxdWUuXG4gKiAgTm8gb3RoZXIgZWxlbWVudHMgaW4gdGhhdCB0YWJsZSBjYW4gaGF2ZSB0aGUgc2FtZSBwcm9wZXJ0eSB2YWx1ZVxuICpcbiAqIEBmdW5jdGlvbiB1bmlxdWVcbiAqXG4gKiBAbWVtYmVyT2YgbW9kdWxlOndhbGxldC1kYi5EZWNvcmF0b3JzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bmlxdWUoKSB7XG4gIHJldHVybiBhcHBseShcbiAgICBvbkNyZWF0ZVVwZGF0ZSh1bmlxdWVPbkNyZWF0ZVVwZGF0ZSksXG4gICAgcHJvcE1ldGFkYXRhKFJlcG9zaXRvcnkua2V5KFBlcnNpc3RlbmNlS2V5cy5VTklRVUUpLCB7fSlcbiAgKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZWRCeU9uQ3JlYXRlVXBkYXRlPFxuICBNIGV4dGVuZHMgTW9kZWwsXG4gIFIgZXh0ZW5kcyBSZXBvPE0+LFxuICBZID0gYW55LFxuPih0aGlzOiBSLCBjb250ZXh0OiBDb250ZXh0PE0+LCBkYXRhOiBZLCBrZXk6IHN0cmluZywgbW9kZWw6IE0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgdXNlcjogVXNlciB8IHVuZGVmaW5lZCA9IGNvbnRleHQudXNlcjtcbiAgaWYgKCF1c2VyKVxuICAgIHRocm93IG5ldyBVbnN1cHBvcnRlZEVycm9yKFxuICAgICAgXCJUaGlzIGFkYXB0ZXIgZG9lcyBub3Qgc3VwcG9ydCB1c2VyIGlkZW50aWZpY2F0aW9uXCJcbiAgICApO1xuICAobW9kZWwgYXMgYW55KVtrZXldID0gdXNlci5pZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZWRCeSgpIHtcbiAgcmV0dXJuIGFwcGx5KFxuICAgIG9uQ3JlYXRlKGNyZWF0ZWRCeU9uQ3JlYXRlVXBkYXRlKSxcbiAgICBwcm9wTWV0YWRhdGEoUmVwb3NpdG9yeS5rZXkoUGVyc2lzdGVuY2VLZXlzLkNSRUFURURfQlkpLCB7fSlcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZWRCeSgpIHtcbiAgcmV0dXJuIGFwcGx5KFxuICAgIG9uQ3JlYXRlVXBkYXRlKGNyZWF0ZWRCeU9uQ3JlYXRlVXBkYXRlKSxcbiAgICBwcm9wTWV0YWRhdGEoUmVwb3NpdG9yeS5rZXkoUGVyc2lzdGVuY2VLZXlzLkNSRUFURURfQlkpLCB7fSlcbiAgKTtcbn1cblxuLyoqXG4gKiBAc3VtbWFyeSBPbmUgVG8gT25lIHJlbGF0aW9uIERlY29yYXRvcnNcbiAqXG4gKiBAcGFyYW0ge0NvbnN0cnVjdG9yPGFueT59IGNsYXp6IHRoZSB7QGxpbmsgU2VxdWVuY2V9IHRvIHVzZS4gRGVmYXVsdHMgdG8ge0BsaW5rIE5vbmVTZXF1ZW5jZX1cbiAqIEBwYXJhbSB7Q2FzY2FkZU1ldGFkYXRhfSBbY2FzY2FkZU9wdGlvbnNdXG4gKiBAcGFyYW0ge2Jvb2xlYW59IHBvcHVsYXRlIElmIHRydWUsIHJlcGxhY2VzIHRoZSBzcGVjaWZpZWQga2V5IGluIHRoZSBkb2N1bWVudCB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHJlY29yZCBmcm9tIHRoZSBkYXRhYmFzZVxuICpcbiAqIEBmdW5jdGlvbiBvblRvT25lXG4gKlxuICogQG1lbWJlck9mIG1vZHVsZTp3YWxsZXQtZGIuRGVjb3JhdG9yc1xuICpcbiAqIEBzZWUgb25lVG9NYW55XG4gKiBAc2VlIG1hbnlUb09uZVxuICovXG5leHBvcnQgZnVuY3Rpb24gb25lVG9PbmU8TSBleHRlbmRzIE1vZGVsPihcbiAgY2xheno6IENvbnN0cnVjdG9yPE0+LFxuICBjYXNjYWRlT3B0aW9uczogQ2FzY2FkZU1ldGFkYXRhID0gRGVmYXVsdENhc2NhZGUsXG4gIHBvcHVsYXRlOiBib29sZWFuID0gdHJ1ZVxuKSB7XG4gIE1vZGVsLnJlZ2lzdGVyKGNsYXp6KTtcbiAgY29uc3QgbWV0YWRhdGE6IFJlbGF0aW9uc01ldGFkYXRhID0ge1xuICAgIGNsYXNzOiBjbGF6ei5uYW1lLFxuICAgIGNhc2NhZGU6IGNhc2NhZGVPcHRpb25zLFxuICAgIHBvcHVsYXRlOiBwb3B1bGF0ZSxcbiAgfTtcbiAgcmV0dXJuIGFwcGx5KFxuICAgIHByb3AoUGVyc2lzdGVuY2VLZXlzLlJFTEFUSU9OUyksXG4gICAgdHlwZShbY2xhenoubmFtZSwgU3RyaW5nLm5hbWUsIE51bWJlci5uYW1lLCBCaWdJbnQubmFtZV0pLFxuICAgIG9uQ3JlYXRlKG9uZVRvT25lT25DcmVhdGUsIG1ldGFkYXRhKSxcbiAgICBvblVwZGF0ZShvbmVUb09uZU9uVXBkYXRlLCBtZXRhZGF0YSksXG4gICAgb25EZWxldGUob25lVG9PbmVPbkRlbGV0ZSwgbWV0YWRhdGEpLFxuICAgIGFmdGVyQW55KHBvcCwgbWV0YWRhdGEpLFxuICAgIHByb3BNZXRhZGF0YShSZXBvc2l0b3J5LmtleShQZXJzaXN0ZW5jZUtleXMuT05FX1RPX09ORSksIG1ldGFkYXRhKVxuICApO1xufVxuXG4vKipcbiAqIEBzdW1tYXJ5IE9uZSBUbyBNYW55IHJlbGF0aW9uIERlY29yYXRvcnNcbiAqXG4gKiBAcGFyYW0ge0NvbnN0cnVjdG9yPGFueT59IGNsYXp6IHRoZSB7QGxpbmsgU2VxdWVuY2V9IHRvIHVzZS4gRGVmYXVsdHMgdG8ge0BsaW5rIE5vbmVTZXF1ZW5jZX1cbiAqIEBwYXJhbSB7Q2FzY2FkZU1ldGFkYXRhfSBbY2FzY2FkZU9wdGlvbnNdXG4gKlxuICogQGZ1bmN0aW9uIG9uZVRvTWFueVxuICpcbiAqIEBtZW1iZXJPZiBtb2R1bGU6d2FsbGV0LWRiLkRlY29yYXRvcnNcbiAqXG4gKiBAc2VlIG9uZVRvT25lXG4gKiBAc2VlIG1hbnlUb09uZVxuICovXG5leHBvcnQgZnVuY3Rpb24gb25lVG9NYW55PE0gZXh0ZW5kcyBNb2RlbD4oXG4gIGNsYXp6OiBDb25zdHJ1Y3RvcjxNPixcbiAgY2FzY2FkZU9wdGlvbnM6IENhc2NhZGVNZXRhZGF0YSA9IERlZmF1bHRDYXNjYWRlLFxuICBwb3B1bGF0ZTogYm9vbGVhbiA9IHRydWVcbikge1xuICBNb2RlbC5yZWdpc3RlcihjbGF6eik7XG4gIGNvbnN0IG1ldGFkYXRhOiBSZWxhdGlvbnNNZXRhZGF0YSA9IHtcbiAgICBjbGFzczogY2xhenoubmFtZSxcbiAgICBjYXNjYWRlOiBjYXNjYWRlT3B0aW9ucyxcbiAgICBwb3B1bGF0ZTogcG9wdWxhdGUsXG4gIH07XG4gIHJldHVybiBhcHBseShcbiAgICBwcm9wKFBlcnNpc3RlbmNlS2V5cy5SRUxBVElPTlMpLFxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgcHVycG9zZWZ1bCBvdmVycmlkZVxuICAgIGxpc3QoW2NsYXp6LCBTdHJpbmcsIE51bWJlciwgQmlnSW50XSksXG4gICAgb25DcmVhdGUob25lVG9NYW55T25DcmVhdGUsIG1ldGFkYXRhKSxcbiAgICBvblVwZGF0ZShvbmVUb01hbnlPblVwZGF0ZSwgbWV0YWRhdGEpLFxuICAgIG9uRGVsZXRlKG9uZVRvTWFueU9uRGVsZXRlLCBtZXRhZGF0YSksXG4gICAgYWZ0ZXJBbnkocG9wLCBtZXRhZGF0YSksXG4gICAgcHJvcE1ldGFkYXRhKFJlcG9zaXRvcnkua2V5KFBlcnNpc3RlbmNlS2V5cy5PTkVfVE9fTUFOWSksIG1ldGFkYXRhKVxuICApO1xufVxuXG4vKipcbiAqIEBzdW1tYXJ5IE1hbnkgVG8gT25lIHJlbGF0aW9uIERlY29yYXRvcnNcbiAqXG4gKiBAcGFyYW0ge0NvbnN0cnVjdG9yPGFueT59IGNsYXp6IHRoZSB7QGxpbmsgU2VxdWVuY2V9IHRvIHVzZS4gRGVmYXVsdHMgdG8ge0BsaW5rIE5vbmVTZXF1ZW5jZX1cbiAqIEBwYXJhbSB7Q2FzY2FkZU1ldGFkYXRhfSBbY2FzY2FkZU9wdGlvbnNdXG4gKlxuICogQGZ1bmN0aW9uIG1hbnlUb09uZVxuICpcbiAqIEBtZW1iZXJPZiBtb2R1bGU6d2FsbGV0LWRiLkRlY29yYXRvcnNcbiAqXG4gKiBAc2VlIG9uZVRvTWFueVxuICogQHNlZSBvbmVUb09uZVxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFueVRvT25lKFxuICBjbGF6ejogQ29uc3RydWN0b3I8YW55PixcbiAgY2FzY2FkZU9wdGlvbnM6IENhc2NhZGVNZXRhZGF0YSA9IERlZmF1bHRDYXNjYWRlLFxuICBwb3B1bGF0ZSA9IHRydWVcbikge1xuICBNb2RlbC5yZWdpc3RlcihjbGF6eik7XG4gIGNvbnN0IG1ldGFkYXRhOiBSZWxhdGlvbnNNZXRhZGF0YSA9IHtcbiAgICBjbGFzczogY2xhenoubmFtZSxcbiAgICBjYXNjYWRlOiBjYXNjYWRlT3B0aW9ucyxcbiAgICBwb3B1bGF0ZTogcG9wdWxhdGUsXG4gIH07XG4gIHJldHVybiBhcHBseShcbiAgICBwcm9wKFBlcnNpc3RlbmNlS2V5cy5SRUxBVElPTlMpLFxuICAgIHR5cGUoW2NsYXp6Lm5hbWUsIFN0cmluZy5uYW1lLCBOdW1iZXIubmFtZSwgQmlnSW50Lm5hbWVdKSxcbiAgICAvLyBvbkNyZWF0ZShvbmVUb01hbnlPbkNyZWF0ZSwgbWV0YWRhdGEpLFxuICAgIC8vIG9uVXBkYXRlKG9uZVRvTWFueU9uVXBkYXRlLCBtZXRhZGF0YSksXG4gICAgLy8gb25EZWxldGUob25lVG9NYW55T25EZWxldGUsIG1ldGFkYXRhKSxcbiAgICAvLyBhZnRlckFsbChwb3B1bGF0ZSwgbWV0YWRhdGEpLFxuICAgIHByb3BNZXRhZGF0YShSZXBvc2l0b3J5LmtleShQZXJzaXN0ZW5jZUtleXMuTUFOWV9UT19PTkUpLCBtZXRhZGF0YSlcbiAgKTtcbn1cbiJdfQ==
|
package/lib/esm/model/index.d.ts
CHANGED
File without changes
|
package/lib/esm/model/index.js
CHANGED
@@ -3,4 +3,4 @@ export * from "./decorators";
|
|
3
3
|
export * from "./types";
|
4
4
|
export * from "./User";
|
5
5
|
|
6
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
6
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tb2RlbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFFBQVEsQ0FBQyIsImZpbGUiOiJtb2RlbC9pbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0Jhc2VNb2RlbFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vZGVjb3JhdG9yc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vdHlwZXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL1VzZXJcIjtcbiJdfQ==
|
package/lib/esm/model/types.d.ts
CHANGED
File without changes
|
package/lib/esm/model/types.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
export {};
|
2
2
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
3
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tb2RlbC90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwiZmlsZSI6Im1vZGVsL3R5cGVzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FzY2FkZU1ldGFkYXRhIH0gZnJvbSBcIi4uL3JlcG9zaXRvcnlcIjtcblxuZXhwb3J0IHR5cGUgUmVsYXRpb25zTWV0YWRhdGEgPSB7XG4gIGNsYXNzOiBzdHJpbmc7XG4gIGNhc2NhZGU6IENhc2NhZGVNZXRhZGF0YTtcbiAgcG9wdWxhdGU6IGJvb2xlYW47XG59O1xuIl19
|
File without changes
|
@@ -199,4 +199,4 @@ export class Adapter {
|
|
199
199
|
}
|
200
200
|
}
|
201
201
|
|
202
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9wZXJzaXN0ZW5jZS9BZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxNQUFNLEVBQ04sYUFBYSxFQUNiLGFBQWEsR0FHZCxNQUFNLHlCQUF5QixDQUFDO0FBRWpDLE9BQU8sRUFFTCxLQUFLLEdBR04sTUFBTSxnQ0FBZ0MsQ0FBQztBQUl4QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUl2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHdEQsT0FBTyxFQUFFLE9BQU8sSUFBSSxHQUFHLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFNUM7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxNQUFNLE9BQWdCLE9BQU87YUFFWixXQUFNLEdBQXNDLEVBQXRDLEFBQXdDLENBQUM7SUFLOUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVELFlBQ0UsTUFBUyxFQUNBLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBYlAsZUFBVSxHQUFlLEVBQUUsQ0FBQztRQWU3QyxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU07WUFDaEMsTUFBTSxJQUFJLGFBQWEsQ0FDckIsK0JBQStCLElBQUksQ0FBQyxPQUFPLHFCQUFxQixDQUNqRSxDQUFDO1FBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJ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LENBQUMsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFDcEMsVUFBVSxDQUNYLENBQUM7b0JBQ0YsT0FBTyxDQUFDLENBQUM7Z0JBQ1gsQ0FBQztZQUNILENBQUMsQ0FBQztpQkFDRCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixPQUFPLGFBQWEsQ0FBQztRQUN2QixDQUFDO1FBQUMsT0FBTyxDQUFNLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdCLENBQUM7SUFDSCxDQUFDIiwiZmlsZSI6InBlcnNpc3RlbmNlL0FkYXB0ZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlRXJyb3IsXG4gIERCS2V5cyxcbiAgSW50ZXJuYWxFcnJvcixcbiAgTm90Rm91bmRFcnJvcixcbiAgQ29udGV4dCxcbiAgT3BlcmF0aW9uS2V5cyxcbn0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBPYnNlcnZlciB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL09ic2VydmVyXCI7XG5pbXBvcnQge1xuICBDb25zdHJ1Y3RvcixcbiAgTW9kZWwsXG4gIE1vZGVsQ29uc3RydWN0b3IsXG4gIE1vZGVsUmVnaXN0cnksXG59IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IFNlcXVlbmNlT3B0aW9ucyB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL1NlcXVlbmNlT3B0aW9uc1wiO1xuaW1wb3J0IHsgUmF3RXhlY3V0b3IgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9SYXdFeGVjdXRvclwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL09ic2VydmFibGVcIjtcbmltcG9ydCB7IFBlcnNpc3RlbmNlS2V5cyB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgUXVlcnkgfSBmcm9tIFwiLi4vcXVlcnkvUXVlcnlcIjtcbmltcG9ydCB7IFN0YXRlbWVudCB9IGZyb20gXCIuLi9xdWVyeS9TdGF0ZW1lbnRcIjtcbmltcG9ydCB7IENsYXVzZUZhY3RvcnkgfSBmcm9tIFwiLi4vcXVlcnkvQ2xhdXNlRmFjdG9yeVwiO1xuaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4uL3F1ZXJ5L0NvbmRpdGlvblwiO1xuaW1wb3J0IHsgUmVwb3NpdG9yeSB9IGZyb20gXCIuLi9yZXBvc2l0b3J5L1JlcG9zaXRvcnlcIjtcbmltcG9ydCB7IFNlcXVlbmNlIH0gZnJvbSBcIi4vU2VxdWVuY2VcIjtcbmltcG9ydCB7IFVzZXIgfSBmcm9tIFwiLi4vbW9kZWwvVXNlclwiO1xuaW1wb3J0IHsgQ29udGV4dCBhcyBDdHggfSBmcm9tIFwiLi4vcmVwb3NpdG9yeS9Db250ZXh0XCI7XG5pbXBvcnQgeyBVbnN1cHBvcnRlZEVycm9yIH0gZnJvbSBcIi4vZXJyb3JzXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgQWJzdHJhY3QgRGVjYWYtdHMgUGVyc2lzdGVuY2UgQWRhcHRlciBDbGFzc1xuICogQGRlc2NyaXB0aW9uIE9mZmVycyB0aGUgYmFzZSBpbXBsZW1lbnRhdGlvbiBmb3IgYWxsIEFkYXB0ZXIgQ2xhc3Nlc1xuICogYW5kIG1hbmFnZXMgdGhlbSB2YXJpb3VzIHJlZ2lzdGVyZWQge0BsaW5rIEFkYXB0ZXJ9c1xuICpcbiAqIEB0eXBlZGVmIFkgdGhlIHVuZGVybHlpbmcgcGVyc2lzdGVuY2Ugb2JqZWN0IHR5cGVcbiAqIEB0eXBlZGVmIFEgVGhlIHF1ZXJ5IG9iamVjdCB0aGUgYWRhcHRlciB1c2VzXG4gKlxuICogQHBhcmFtIHtZfSBuYXRpdmUgdGhlIHVuZGVybHlpbmcgcGVyc2lzdGVuY2Ugb2JqZWN0XG4gKiBAcGFyYW0ge3N0cmluZ30gZmxhdm91ciB0aGUgdW5kZXIgd2l0Y2ggdGhlIHBlcnNpc3RlbmNlIGFkYXB0ZXIgc2hvdWxkIGJlIHN0b3JlZFxuICpcbiAqIEBjbGFzcyBBZGFwdGVyXG4gKiBAaW1wbGVtZW50cyBSYXdFeGVjdXRvclxuICogQGltcGxlbWVudHMgT2JzZXJ2YWJsZVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWRhcHRlcjxZLCBRPiBpbXBsZW1lbnRzIFJhd0V4ZWN1dG9yPFE+LCBPYnNlcnZhYmxlIHtcbiAgcHJpdmF0ZSBzdGF0aWMgX2N1cnJlbnQ6IEFkYXB0ZXI8YW55LCBhbnk+O1xuICBwcml2YXRlIHN0YXRpYyBfY2FjaGU6IFJlY29yZDxzdHJpbmcsIEFkYXB0ZXI8YW55LCBhbnk+PiA9IHt9O1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfb2JzZXJ2ZXJzOiBPYnNlcnZlcltdID0gW107XG4gIHByaXZhdGUgcmVhZG9ubHkgX25hdGl2ZTogWTtcblxuICBnZXQgbmF0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLl9uYXRpdmU7XG4gIH1cblxuICByZXBvc2l0b3J5PE0gZXh0ZW5kcyBNb2RlbD4oKTogQ29uc3RydWN0b3I8UmVwb3NpdG9yeTxNLCBRLCBBZGFwdGVyPFksIFE+Pj4ge1xuICAgIHJldHVybiBSZXBvc2l0b3J5O1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIG5hdGl2ZTogWSxcbiAgICByZWFkb25seSBmbGF2b3VyOiBzdHJpbmdcbiAgKSB7XG4gICAgaWYgKHRoaXMuZmxhdm91ciBpbiBBZGFwdGVyLl9jYWNoZSlcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBgUGVyc2lzdGVuY2UgYWRhcHRlciBmbGF2b3VyICR7dGhpcy5mbGF2b3VyfSBhbHJlYWR5IHJlZ2lzdGVyZWRgXG4gICAgICApO1xuICAgIHRoaXMuX25hdGl2ZSA9IG5hdGl2ZTtcbiAgICBBZGFwdGVyLl9jYWNoZVt0aGlzLmZsYXZvdXJdID0gdGhpcztcbiAgfVxuXG4gIFF1ZXJ5PE0gZXh0ZW5kcyBNb2RlbD4oKTogUXVlcnk8USwgTT4ge1xuICAgIHJldHVybiBuZXcgUXVlcnkodGhpcyk7XG4gIH1cblxuICBhYnN0cmFjdCBwYXJzZUNvbmRpdGlvbihjb25kaXRpb246IENvbmRpdGlvbik6IFE7XG5cbiAgYWJzdHJhY3QgZ2V0IFN0YXRlbWVudCgpOiBTdGF0ZW1lbnQ8UT47XG5cbiAgYWJzdHJhY3QgZ2V0IENsYXVzZXMoKTogQ2xhdXNlRmFjdG9yeTxZLCBRPjtcblxuICBwcm90ZWN0ZWQgaXNSZXNlcnZlZChhdHRyOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gIWF0dHI7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcGFyc2VFcnJvcihlcnI6IEVycm9yKTogQmFzZUVycm9yO1xuXG4gIGFic3RyYWN0IGluaXRpYWxpemUoLi4uYXJnczogYW55W10pOiBQcm9taXNlPHZvaWQ+O1xuXG4gIGFic3RyYWN0IFNlcXVlbmNlKG9wdGlvbnM6IFNlcXVlbmNlT3B0aW9ucyk6IFByb21pc2U8U2VxdWVuY2U+O1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCB1c2VyKCk6IFByb21pc2U8VXNlciB8IHVuZGVmaW5lZD47XG5cbiAgYXN5bmMgY29udGV4dDxNIGV4dGVuZHMgTW9kZWwsIEMgZXh0ZW5kcyBDb250ZXh0PE0+PihcbiAgICBvcGVyYXRpb246XG4gICAgICB8IE9wZXJhdGlvbktleXMuQ1JFQVRFXG4gICAgICB8IE9wZXJhdGlvbktleXMuUkVBRFxuICAgICAgfCBPcGVyYXRpb25LZXlzLlVQREFURVxuICAgICAgfCBPcGVyYXRpb25LZXlzLkRFTEVURSxcbiAgICBtb2RlbDogQ29uc3RydWN0b3I8TT5cbiAgKTogUHJvbWlzZTxDPiB7XG4gICAgbGV0IHVzZXI6IFVzZXIgfCB1bmRlZmluZWQ7XG4gICAgdHJ5IHtcbiAgICAgIHVzZXIgPSBhd2FpdCB0aGlzLnVzZXIoKTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIGlmICghKGUgaW5zdGFuY2VvZiBVbnN1cHBvcnRlZEVycm9yKSkgdGhyb3cgZTtcbiAgICB9XG5cbiAgICBjb25zdCBjOiBDID0gbmV3IChjbGFzcyBleHRlbmRzIEN0eDxNPiB7XG4gICAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgb3BlcmF0aW9uOiBPcGVyYXRpb25LZXlzLFxuICAgICAgICBtb2RlbD86IENvbnN0cnVjdG9yPE0+LFxuICAgICAgICBwYXJlbnQ/OiBDdHg8YW55LCBhbnk+XG4gICAgICApIHtcbiAgICAgICAgc3VwZXIob3BlcmF0aW9uLCBtb2RlbCwgcGFyZW50KTtcbiAgICAgIH1cblxuICAgICAgZ2V0IHVzZXIoKTogVXNlciB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICghdXNlcilcbiAgICAgICAgICB0aHJvdyBuZXcgVW5zdXBwb3J0ZWRFcnJvcihcbiAgICAgICAgICAgIFwiQWRhcHRlciBkb2VzIG5vdCBzdXBwb3J0IHVzZXIgaWRlbnRpZmljYXRpb25cIlxuICAgICAgICAgICk7XG4gICAgICAgIHJldHVybiB1c2VyO1xuICAgICAgfVxuICAgIH0pKG9wZXJhdGlvbiwgbW9kZWwpIGFzIHVua25vd24gYXMgQztcblxuICAgIHJldHVybiBjO1xuICB9XG5cbiAgcHJlcGFyZTxNIGV4dGVuZHMgTW9kZWw+KFxuICAgIG1vZGVsOiBNLFxuICAgIHBrOiBzdHJpbmcgfCBudW1iZXJcbiAgKToge1xuICAgIHJlY29yZDogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICBpZDogc3RyaW5nO1xuICB9IHtcbiAgICBjb25zdCByZXN1bHQgPSBPYmplY3QuZW50cmllcyhtb2RlbCkucmVkdWNlKFxuICAgICAgKGFjY3VtOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBba2V5LCB2YWxdKSA9PiB7XG4gICAgICAgIC8vIGlmIChrZXkgPT09IHBrKSByZXR1cm4gYWNjdW07XG4gICAgICAgIGNvbnN0IG1hcHBlZFByb3AgPSBSZXBvc2l0b3J5LmNvbHVtbihtb2RlbCwga2V5KTtcbiAgICAgICAgaWYgKHRoaXMuaXNSZXNlcnZlZChtYXBwZWRQcm9wKSlcbiAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgUHJvcGVydHkgbmFtZSAke21hcHBlZFByb3B9IGlzIHJlc2VydmVkYCk7XG4gICAgICAgIGFjY3VtW21hcHBlZFByb3BdID0gdmFsO1xuICAgICAgICByZXR1cm4gYWNjdW07XG4gICAgICB9LFxuICAgICAge31cbiAgICApO1xuICAgIGlmICgobW9kZWwgYXMgYW55KVtQZXJzaXN0ZW5jZUtleXMuTUVUQURBVEFdKVxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlc3VsdCwgUGVyc2lzdGVuY2VLZXlzLk1FVEFEQVRBLCB7XG4gICAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgdmFsdWU6IChtb2RlbCBhcyBhbnkpW1BlcnNpc3RlbmNlS2V5cy5NRVRBREFUQV0sXG4gICAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgcmVjb3JkOiByZXN1bHQsXG4gICAgICBpZDogKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW3BrXSxcbiAgICB9O1xuICB9XG5cbiAgcmV2ZXJ0PE0gZXh0ZW5kcyBNb2RlbD4oXG4gICAgb2JqOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICAgIGNsYXp6OiBzdHJpbmcgfCBDb25zdHJ1Y3RvcjxNPixcbiAgICBwazogc3RyaW5nLFxuICAgIGlkOiBzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnRcbiAgKTogTSB7XG4gICAgY29uc3Qgb2I6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICBvYltwa10gPSBpZDtcbiAgICBjb25zdCBtID0gKFxuICAgICAgdHlwZW9mIGNsYXp6ID09PSBcInN0cmluZ1wiID8gTW9kZWwuYnVpbGQob2IsIGNsYXp6KSA6IG5ldyBjbGF6eihvYilcbiAgICApIGFzIE07XG4gICAgY29uc3QgbWV0YWRhdGEgPSBvYmpbUGVyc2lzdGVuY2VLZXlzLk1FVEFEQVRBXTtcbiAgICBjb25zdCByZXN1bHQgPSBPYmplY3Qua2V5cyhtKS5yZWR1Y2UoKGFjY3VtOiBNLCBrZXkpID0+IHtcbiAgICAgIGlmIChrZXkgPT09IHBrKSByZXR1cm4gYWNjdW07XG4gICAgICAoYWNjdW0gYXMgUmVjb3JkPHN0cmluZywgYW55Pilba2V5XSA9IG9ialtSZXBvc2l0b3J5LmNvbHVtbihhY2N1bSwga2V5KV07XG4gICAgICByZXR1cm4gYWNjdW07XG4gICAgfSwgbSk7XG4gICAgaWYgKG1ldGFkYXRhKVxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlc3VsdCwgUGVyc2lzdGVuY2VLZXlzLk1FVEFEQVRBLCB7XG4gICAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgICBjb25maWd1cmFibGU6IGZhbHNlLFxuICAgICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICAgIHZhbHVlOiBtZXRhZGF0YSxcbiAgICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBhYnN0cmFjdCBjcmVhdGUoXG4gICAgdGFibGVOYW1lOiBzdHJpbmcsXG4gICAgaWQ6IHN0cmluZyB8IG51bWJlcixcbiAgICBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PixcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIGFueT4+O1xuXG4gIGFzeW5jIGNyZWF0ZUFsbChcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcbiAgICBpZDogKHN0cmluZyB8IG51bWJlcilbXSxcbiAgICBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PltdLFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgYW55PltdPiB7XG4gICAgaWYgKGlkLmxlbmd0aCAhPT0gbW9kZWwubGVuZ3RoKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJJZHMgYW5kIG1vZGVscyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoXCIpO1xuICAgIHJldHVybiBQcm9taXNlLmFsbChcbiAgICAgIGlkLm1hcCgoaSwgY291bnQpID0+IHRoaXMuY3JlYXRlKHRhYmxlTmFtZSwgaSwgbW9kZWxbY291bnRdLCAuLi5hcmdzKSlcbiAgICApO1xuICB9XG5cbiAgYWJzdHJhY3QgcmVhZChcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcbiAgICBpZDogc3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgYW55Pj47XG5cbiAgYXN5bmMgcmVhZEFsbChcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcbiAgICBpZDogKHN0cmluZyB8IG51bWJlciB8IGJpZ2ludClbXSxcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIGFueT5bXT4ge1xuICAgIHJldHVybiBQcm9taXNlLmFsbChpZC5tYXAoKGkpID0+IHRoaXMucmVhZCh0YWJsZU5hbWUsIGksIC4uLmFyZ3MpKSk7XG4gIH1cblxuICBhYnN0cmFjdCB1cGRhdGUoXG4gICAgdGFibGVOYW1lOiBzdHJpbmcsXG4gICAgaWQ6IHN0cmluZyB8IG51bWJlcixcbiAgICBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PixcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIGFueT4+O1xuXG4gIGFzeW5jIHVwZGF0ZUFsbChcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcbiAgICBpZDogc3RyaW5nW10gfCBudW1iZXJbXSxcbiAgICBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PltdLFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgYW55PltdPiB7XG4gICAgaWYgKGlkLmxlbmd0aCAhPT0gbW9kZWwubGVuZ3RoKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJJZHMgYW5kIG1vZGVscyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoXCIpO1xuICAgIHJldHVybiBQcm9taXNlLmFsbChcbiAgICAgIGlkLm1hcCgoaSwgY291bnQpID0+IHRoaXMudXBkYXRlKHRhYmxlTmFtZSwgaSwgbW9kZWxbY291bnRdLCAuLi5hcmdzKSlcbiAgICApO1xuICB9XG5cbiAgYWJzdHJhY3QgZGVsZXRlKFxuICAgIHRhYmxlTmFtZTogc3RyaW5nLFxuICAgIGlkOiBzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnQsXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBhbnk+PjtcblxuICBhc3luYyBkZWxldGVBbGwoXG4gICAgdGFibGVOYW1lOiBzdHJpbmcsXG4gICAgaWQ6IChzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnQpW10sXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBhbnk+W10+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoaWQubWFwKChpKSA9PiB0aGlzLmRlbGV0ZSh0YWJsZU5hbWUsIGksIC4uLmFyZ3MpKSk7XG4gIH1cblxuICBhYnN0cmFjdCByYXc8Uj4ocmF3SW5wdXQ6IFEsIHByb2Nlc3M6IGJvb2xlYW4sIC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTxSPjtcblxuICAvKipcbiAgICogQHN1bW1hcnkgUmVnaXN0ZXJzIGFuIHtAbGluayBPYnNlcnZlcn1cbiAgICogQHBhcmFtIHtPYnNlcnZlcn0gb2JzZXJ2ZXJcbiAgICpcbiAgICogQHNlZSB7T2JzZXJ2YWJsZSNvYnNlcnZlfVxuICAgKi9cbiAgb2JzZXJ2ZShvYnNlcnZlcjogT2JzZXJ2ZXIpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuX29ic2VydmVycy5pbmRleE9mKG9ic2VydmVyKTtcbiAgICBpZiAoaW5kZXggIT09IC0xKSB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIk9ic2VydmVyIGFscmVhZHkgcmVnaXN0ZXJlZFwiKTtcbiAgICB0aGlzLl9vYnNlcnZlcnMucHVzaChvYnNlcnZlcik7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgVW5yZWdpc3RlcnMgYW4ge0BsaW5rIE9ic2VydmVyfVxuICAgKiBAcGFyYW0ge09ic2VydmVyfSBvYnNlcnZlclxuICAgKlxuICAgKiBAc2VlIHtPYnNlcnZhYmxlI3VuT2JzZXJ2ZX1cbiAgICovXG4gIHVuT2JzZXJ2ZShvYnNlcnZlcjogT2JzZXJ2ZXIpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuX29ic2VydmVycy5pbmRleE9mKG9ic2VydmVyKTtcbiAgICBpZiAoaW5kZXggPT09IC0xKSB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkZhaWxlZCB0byBmaW5kIE9ic2VydmVyXCIpO1xuICAgIHRoaXMuX29ic2VydmVycy5zcGxpY2UoaW5kZXgsIDEpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IGNhbGxzIGFsbCByZWdpc3RlcmVkIHtAbGluayBPYnNlcnZlcn1zIHRvIHVwZGF0ZSB0aGVtc2VsdmVzXG4gICAqIEBwYXJhbSB7YW55W119IFthcmdzXSBvcHRpb25hbCBhcmd1bWVudHMgdG8gYmUgcGFzc2VkIHRvIHRoZSB7QGxpbmsgT2JzZXJ2ZXIjcmVmcmVzaH0gbWV0aG9kXG4gICAqL1xuICBhc3luYyB1cGRhdGVPYnNlcnZlcnMoLi4uYXJnczogYW55W10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgUHJvbWlzZS5hbGxTZXR0bGVkKFxuICAgICAgdGhpcy5fb2JzZXJ2ZXJzLm1hcCgobykgPT4gby5yZWZyZXNoKC4uLmFyZ3MpKVxuICAgICk7XG4gICAgcmVzdWx0cy5mb3JFYWNoKChyZXN1bHQsIGkpID0+IHtcbiAgICAgIGlmIChyZXN1bHQuc3RhdHVzID09PSBcInJlamVjdGVkXCIpXG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICBgRmFpbGVkIHRvIHVwZGF0ZSBvYnNlcnZhYmxlICR7dGhpcy5fb2JzZXJ2ZXJzW2ldfTogJHtyZXN1bHQucmVhc29ufWBcbiAgICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgY3VycmVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudDtcbiAgfVxuXG4gIHN0YXRpYyBnZXQ8WSwgUT4oZmxhdm91cjogYW55KTogQWRhcHRlcjxZLCBRPiB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKGZsYXZvdXIgaW4gdGhpcy5fY2FjaGUpIHJldHVybiB0aGlzLl9jYWNoZVtmbGF2b3VyXTtcbiAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgTm8gQWRhcHRlciByZWdpc3RlcmVkIHVuZGVyICR7Zmxhdm91cn0uYCk7XG4gIH1cblxuICBzdGF0aWMgc2V0Q3VycmVudChmbGF2b3VyOiBzdHJpbmcpIHtcbiAgICBjb25zdCBhZGFwdGVyID0gQWRhcHRlci5nZXQoZmxhdm91cik7XG4gICAgaWYgKCFhZGFwdGVyKVxuICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYE5vIHBlcnNpc3RlbmNlIGZsYXZvdXIgJHtmbGF2b3VyfSByZWdpc3RlcmVkYCk7XG4gICAgdGhpcy5fY3VycmVudCA9IGFkYXB0ZXI7XG4gIH1cblxuICBzdGF0aWMga2V5KGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIFJlcG9zaXRvcnkua2V5KGtleSk7XG4gIH1cblxuICBzdGF0aWMgbW9kZWxzPE0gZXh0ZW5kcyBNb2RlbD4oZmxhdm91cjogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlZ2lzdHJ5ID0gKE1vZGVsIGFzIGFueSkuZ2V0UmVnaXN0cnkoKSBhcyBNb2RlbFJlZ2lzdHJ5PGFueT47XG4gICAgICBjb25zdCBjYWNoZSA9IChcbiAgICAgICAgcmVnaXN0cnkgYXMgdW5rbm93biBhcyB7IGNhY2hlOiBSZWNvcmQ8c3RyaW5nLCBNb2RlbENvbnN0cnVjdG9yPGFueT4+IH1cbiAgICAgICkuY2FjaGU7XG4gICAgICBjb25zdCBtYW5hZ2VkTW9kZWxzOiBNb2RlbENvbnN0cnVjdG9yPGFueT5bXSA9IE9iamVjdC52YWx1ZXMoY2FjaGUpXG4gICAgICAgIC5tYXAoKG06IE1vZGVsQ29uc3RydWN0b3I8TT4pID0+IHtcbiAgICAgICAgICBsZXQgZiA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoXG4gICAgICAgICAgICBBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuQURBUFRFUiksXG4gICAgICAgICAgICBtIGFzIE1vZGVsQ29uc3RydWN0b3I8YW55PlxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKGYgJiYgZiA9PT0gZmxhdm91cikgcmV0dXJuIG07XG4gICAgICAgICAgaWYgKCFmKSB7XG4gICAgICAgICAgICBjb25zdCByZXBvID0gUmVmbGVjdC5nZXRNZXRhZGF0YShcbiAgICAgICAgICAgICAgUmVwb3NpdG9yeS5rZXkoREJLZXlzLlJFUE9TSVRPUlkpLFxuICAgICAgICAgICAgICBtIGFzIE1vZGVsQ29uc3RydWN0b3I8YW55PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlmICghcmVwbykgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgcmVwb3NpdG9yeSA9IFJlcG9zaXRvcnkuZm9yTW9kZWwobSk7XG5cbiAgICAgICAgICAgIGYgPSBSZWZsZWN0LmdldE1ldGFkYXRhKFxuICAgICAgICAgICAgICBBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuQURBUFRFUiksXG4gICAgICAgICAgICAgIHJlcG9zaXRvcnlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm4gZjtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgIC5maWx0ZXIoKG0pID0+ICEhbSk7XG4gICAgICByZXR1cm4gbWFuYWdlZE1vZGVscztcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGUpO1xuICAgIH1cbiAgfVxufVxuIl19
|
202
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wZXJzaXN0ZW5jZS9BZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxNQUFNLEVBQ04sYUFBYSxFQUNiLGFBQWEsR0FHZCxNQUFNLHlCQUF5QixDQUFDO0FBRWpDLE9BQU8sRUFFTCxLQUFLLEdBR04sTUFBTSxnQ0FBZ0MsQ0FBQztBQUl4QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUl2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHdEQsT0FBTyxFQUFFLE9BQU8sSUFBSSxHQUFHLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFNUM7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxNQUFNLE9BQWdCLE9BQU87YUFFWixXQUFNLEdBQXNDLEVBQXRDLEFBQXdDLENBQUM7SUFLOUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVELFlBQ0UsTUFBUyxFQUNBLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBYlAsZUFBVSxHQUFlLEVBQUUsQ0FBQztRQWU3QyxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU07WUFDaEMsTUFBTSxJQUFJLGFBQWEsQ0FDckIsK0JBQStCLElBQUksQ0FBQyxPQUFPLHFCQUFxQixDQUNqRSxDQUFDO1FBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJ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RTFDLENBQUMsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFDcEMsVUFBVSxDQUNYLENBQUM7b0JBQ0YsT0FBTyxDQUFDLENBQUM7Z0JBQ1gsQ0FBQztZQUNILENBQUMsQ0FBQztpQkFDRCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixPQUFPLGFBQWEsQ0FBQztRQUN2QixDQUFDO1FBQUMsT0FBTyxDQUFNLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdCLENBQUM7SUFDSCxDQUFDIiwiZmlsZSI6InBlcnNpc3RlbmNlL0FkYXB0ZXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlRXJyb3IsXG4gIERCS2V5cyxcbiAgSW50ZXJuYWxFcnJvcixcbiAgTm90Rm91bmRFcnJvcixcbiAgQ29udGV4dCxcbiAgT3BlcmF0aW9uS2V5cyxcbn0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBPYnNlcnZlciB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL09ic2VydmVyXCI7XG5pbXBvcnQge1xuICBDb25zdHJ1Y3RvcixcbiAgTW9kZWwsXG4gIE1vZGVsQ29uc3RydWN0b3IsXG4gIE1vZGVsUmVnaXN0cnksXG59IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IFNlcXVlbmNlT3B0aW9ucyB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL1NlcXVlbmNlT3B0aW9uc1wiO1xuaW1wb3J0IHsgUmF3RXhlY3V0b3IgfSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9SYXdFeGVjdXRvclwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL09ic2VydmFibGVcIjtcbmltcG9ydCB7IFBlcnNpc3RlbmNlS2V5cyB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgUXVlcnkgfSBmcm9tIFwiLi4vcXVlcnkvUXVlcnlcIjtcbmltcG9ydCB7IFN0YXRlbWVudCB9IGZyb20gXCIuLi9xdWVyeS9TdGF0ZW1lbnRcIjtcbmltcG9ydCB7IENsYXVzZUZhY3RvcnkgfSBmcm9tIFwiLi4vcXVlcnkvQ2xhdXNlRmFjdG9yeVwiO1xuaW1wb3J0IHsgQ29uZGl0aW9uIH0gZnJvbSBcIi4uL3F1ZXJ5L0NvbmRpdGlvblwiO1xuaW1wb3J0IHsgUmVwb3NpdG9yeSB9IGZyb20gXCIuLi9yZXBvc2l0b3J5L1JlcG9zaXRvcnlcIjtcbmltcG9ydCB7IFNlcXVlbmNlIH0gZnJvbSBcIi4vU2VxdWVuY2VcIjtcbmltcG9ydCB7IFVzZXIgfSBmcm9tIFwiLi4vbW9kZWwvVXNlclwiO1xuaW1wb3J0IHsgQ29udGV4dCBhcyBDdHggfSBmcm9tIFwiLi4vcmVwb3NpdG9yeS9Db250ZXh0XCI7XG5pbXBvcnQgeyBVbnN1cHBvcnRlZEVycm9yIH0gZnJvbSBcIi4vZXJyb3JzXCI7XG5cbi8qKlxuICogQHN1bW1hcnkgQWJzdHJhY3QgRGVjYWYtdHMgUGVyc2lzdGVuY2UgQWRhcHRlciBDbGFzc1xuICogQGRlc2NyaXB0aW9uIE9mZmVycyB0aGUgYmFzZSBpbXBsZW1lbnRhdGlvbiBmb3IgYWxsIEFkYXB0ZXIgQ2xhc3Nlc1xuICogYW5kIG1hbmFnZXMgdGhlbSB2YXJpb3VzIHJlZ2lzdGVyZWQge0BsaW5rIEFkYXB0ZXJ9c1xuICpcbiAqIEB0eXBlZGVmIFkgdGhlIHVuZGVybHlpbmcgcGVyc2lzdGVuY2Ugb2JqZWN0IHR5cGVcbiAqIEB0eXBlZGVmIFEgVGhlIHF1ZXJ5IG9iamVjdCB0aGUgYWRhcHRlciB1c2VzXG4gKlxuICogQHBhcmFtIHtZfSBuYXRpdmUgdGhlIHVuZGVybHlpbmcgcGVyc2lzdGVuY2Ugb2JqZWN0XG4gKiBAcGFyYW0ge3N0cmluZ30gZmxhdm91ciB0aGUgdW5kZXIgd2l0Y2ggdGhlIHBlcnNpc3RlbmNlIGFkYXB0ZXIgc2hvdWxkIGJlIHN0b3JlZFxuICpcbiAqIEBjbGFzcyBBZGFwdGVyXG4gKiBAaW1wbGVtZW50cyBSYXdFeGVjdXRvclxuICogQGltcGxlbWVudHMgT2JzZXJ2YWJsZVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWRhcHRlcjxZLCBRPiBpbXBsZW1lbnRzIFJhd0V4ZWN1dG9yPFE+LCBPYnNlcnZhYmxlIHtcbiAgcHJpdmF0ZSBzdGF0aWMgX2N1cnJlbnQ6IEFkYXB0ZXI8YW55LCBhbnk+O1xuICBwcml2YXRlIHN0YXRpYyBfY2FjaGU6IFJlY29yZDxzdHJpbmcsIEFkYXB0ZXI8YW55LCBhbnk+PiA9IHt9O1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfb2JzZXJ2ZXJzOiBPYnNlcnZlcltdID0gW107XG4gIHByaXZhdGUgcmVhZG9ubHkgX25hdGl2ZTogWTtcblxuICBnZXQgbmF0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLl9uYXRpdmU7XG4gIH1cblxuICByZXBvc2l0b3J5PE0gZXh0ZW5kcyBNb2RlbD4oKTogQ29uc3RydWN0b3I8UmVwb3NpdG9yeTxNLCBRLCBBZGFwdGVyPFksIFE+Pj4ge1xuICAgIHJldHVybiBSZXBvc2l0b3J5O1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIG5hdGl2ZTogWSxcbiAgICByZWFkb25seSBmbGF2b3VyOiBzdHJpbmdcbiAgKSB7XG4gICAgaWYgKHRoaXMuZmxhdm91ciBpbiBBZGFwdGVyLl9jYWNoZSlcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICBgUGVyc2lzdGVuY2UgYWRhcHRlciBmbGF2b3VyICR7dGhpcy5mbGF2b3VyfSBhbHJlYWR5IHJlZ2lzdGVyZWRgXG4gICAgICApO1xuICAgIHRoaXMuX25hdGl2ZSA9IG5hdGl2ZTtcbiAgICBBZGFwdGVyLl9jYWNoZVt0aGlzLmZsYXZvdXJdID0gdGhpcztcbiAgfVxuXG4gIFF1ZXJ5PE0gZXh0ZW5kcyBNb2RlbD4oKTogUXVlcnk8USwgTT4ge1xuICAgIHJldHVybiBuZXcgUXVlcnkodGhpcyk7XG4gIH1cblxuICBhYnN0cmFjdCBwYXJzZUNvbmRpdGlvbihjb25kaXRpb246IENvbmRpdGlvbik6IFE7XG5cbiAgYWJzdHJhY3QgZ2V0IFN0YXRlbWVudCgpOiBTdGF0ZW1lbnQ8UT47XG5cbiAgYWJzdHJhY3QgZ2V0IENsYXVzZXMoKTogQ2xhdXNlRmFjdG9yeTxZLCBRPjtcblxuICBwcm90ZWN0ZWQgaXNSZXNlcnZlZChhdHRyOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gIWF0dHI7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcGFyc2VFcnJvcihlcnI6IEVycm9yKTogQmFzZUVycm9yO1xuXG4gIGFic3RyYWN0IGluaXRpYWxpemUoLi4uYXJnczogYW55W10pOiBQcm9taXNlPHZvaWQ+O1xuXG4gIGFic3RyYWN0IFNlcXVlbmNlKG9wdGlvbnM6IFNlcXVlbmNlT3B0aW9ucyk6IFByb21pc2U8U2VxdWVuY2U+O1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCB1c2VyKCk6IFByb21pc2U8VXNlciB8IHVuZGVmaW5lZD47XG5cbiAgYXN5bmMgY29udGV4dDxNIGV4dGVuZHMgTW9kZWwsIEMgZXh0ZW5kcyBDb250ZXh0PE0+PihcbiAgICBvcGVyYXRpb246XG4gICAgICB8IE9wZXJhdGlvbktleXMuQ1JFQVRFXG4gICAgICB8IE9wZXJhdGlvbktleXMuUkVBRFxuICAgICAgfCBPcGVyYXRpb25LZXlzLlVQREFURVxuICAgICAgfCBPcGVyYXRpb25LZXlzLkRFTEVURSxcbiAgICBtb2RlbDogQ29uc3RydWN0b3I8TT5cbiAgKTogUHJvbWlzZTxDPiB7XG4gICAgbGV0IHVzZXI6IFVzZXIgfCB1bmRlZmluZWQ7XG4gICAgdHJ5IHtcbiAgICAgIHVzZXIgPSBhd2FpdCB0aGlzLnVzZXIoKTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIGlmICghKGUgaW5zdGFuY2VvZiBVbnN1cHBvcnRlZEVycm9yKSkgdGhyb3cgZTtcbiAgICB9XG5cbiAgICBjb25zdCBjOiBDID0gbmV3IChjbGFzcyBleHRlbmRzIEN0eDxNPiB7XG4gICAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgb3BlcmF0aW9uOiBPcGVyYXRpb25LZXlzLFxuICAgICAgICBtb2RlbD86IENvbnN0cnVjdG9yPE0+LFxuICAgICAgICBwYXJlbnQ/OiBDdHg8YW55LCBhbnk+XG4gICAgICApIHtcbiAgICAgICAgc3VwZXIob3BlcmF0aW9uLCBtb2RlbCwgcGFyZW50KTtcbiAgICAgIH1cblxuICAgICAgZ2V0IHVzZXIoKTogVXNlciB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICghdXNlcilcbiAgICAgICAgICB0aHJvdyBuZXcgVW5zdXBwb3J0ZWRFcnJvcihcbiAgICAgICAgICAgIFwiQWRhcHRlciBkb2VzIG5vdCBzdXBwb3J0IHVzZXIgaWRlbnRpZmljYXRpb25cIlxuICAgICAgICAgICk7XG4gICAgICAgIHJldHVybiB1c2VyO1xuICAgICAgfVxuICAgIH0pKG9wZXJhdGlvbiwgbW9kZWwpIGFzIHVua25vd24gYXMgQztcblxuICAgIHJldHVybiBjO1xuICB9XG5cbiAgcHJlcGFyZTxNIGV4dGVuZHMgTW9kZWw+KFxuICAgIG1vZGVsOiBNLFxuICAgIHBrOiBzdHJpbmcgfCBudW1iZXJcbiAgKToge1xuICAgIHJlY29yZDogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICBpZDogc3RyaW5nO1xuICB9IHtcbiAgICBjb25zdCByZXN1bHQgPSBPYmplY3QuZW50cmllcyhtb2RlbCkucmVkdWNlKFxuICAgICAgKGFjY3VtOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBba2V5LCB2YWxdKSA9PiB7XG4gICAgICAgIC8vIGlmIChrZXkgPT09IHBrKSByZXR1cm4gYWNjdW07XG4gICAgICAgIGNvbnN0IG1hcHBlZFByb3AgPSBSZXBvc2l0b3J5LmNvbHVtbihtb2RlbCwga2V5KTtcbiAgICAgICAgaWYgKHRoaXMuaXNSZXNlcnZlZChtYXBwZWRQcm9wKSlcbiAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgUHJvcGVydHkgbmFtZSAke21hcHBlZFByb3B9IGlzIHJlc2VydmVkYCk7XG4gICAgICAgIGFjY3VtW21hcHBlZFByb3BdID0gdmFsO1xuICAgICAgICByZXR1cm4gYWNjdW07XG4gICAgICB9LFxuICAgICAge31cbiAgICApO1xuICAgIGlmICgobW9kZWwgYXMgYW55KVtQZXJzaXN0ZW5jZUtleXMuTUVUQURBVEFdKVxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlc3VsdCwgUGVyc2lzdGVuY2VLZXlzLk1FVEFEQVRBLCB7XG4gICAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcbiAgICAgICAgdmFsdWU6IChtb2RlbCBhcyBhbnkpW1BlcnNpc3RlbmNlS2V5cy5NRVRBREFUQV0sXG4gICAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgcmVjb3JkOiByZXN1bHQsXG4gICAgICBpZDogKG1vZGVsIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pW3BrXSxcbiAgICB9O1xuICB9XG5cbiAgcmV2ZXJ0PE0gZXh0ZW5kcyBNb2RlbD4oXG4gICAgb2JqOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICAgIGNsYXp6OiBzdHJpbmcgfCBDb25zdHJ1Y3RvcjxNPixcbiAgICBwazogc3RyaW5nLFxuICAgIGlkOiBzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnRcbiAgKTogTSB7XG4gICAgY29uc3Qgb2I6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICBvYltwa10gPSBpZDtcbiAgICBjb25zdCBtID0gKFxuICAgICAgdHlwZW9mIGNsYXp6ID09PSBcInN0cmluZ1wiID8gTW9kZWwuYnVpbGQob2IsIGNsYXp6KSA6IG5ldyBjbGF6eihvYilcbiAgICApIGFzIE07XG4gICAgY29uc3QgbWV0YWRhdGEgPSBvYmpbUGVyc2lzdGVuY2VLZXlzLk1FVEFEQVRBXTtcbiAgICBjb25zdCByZXN1bHQgPSBPYmplY3Qua2V5cyhtKS5yZWR1Y2UoKGFjY3VtOiBNLCBrZXkpID0+IHtcbiAgICAgIGlmIChrZXkgPT09IHBrKSByZXR1cm4gYWNjdW07XG4gICAgICAoYWNjdW0gYXMgUmVjb3JkPHN0cmluZywgYW55Pilba2V5XSA9IG9ialtSZXBvc2l0b3J5LmNvbHVtbihhY2N1bSwga2V5KV07XG4gICAgICByZXR1cm4gYWNjdW07XG4gICAgfSwgbSk7XG4gICAgaWYgKG1ldGFkYXRhKVxuICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlc3VsdCwgUGVyc2lzdGVuY2VLZXlzLk1FVEFEQVRBLCB7XG4gICAgICAgIGVudW1lcmFibGU6IGZhbHNlLFxuICAgICAgICBjb25maWd1cmFibGU6IGZhbHNlLFxuICAgICAgICB3cml0YWJsZTogZmFsc2UsXG4gICAgICAgIHZhbHVlOiBtZXRhZGF0YSxcbiAgICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBhYnN0cmFjdCBjcmVhdGUoXG4gICAgdGFibGVOYW1lOiBzdHJpbmcsXG4gICAgaWQ6IHN0cmluZyB8IG51bWJlcixcbiAgICBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PixcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIGFueT4+O1xuXG4gIGFzeW5jIGNyZWF0ZUFsbChcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcbiAgICBpZDogKHN0cmluZyB8IG51bWJlcilbXSxcbiAgICBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PltdLFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgYW55PltdPiB7XG4gICAgaWYgKGlkLmxlbmd0aCAhPT0gbW9kZWwubGVuZ3RoKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJJZHMgYW5kIG1vZGVscyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoXCIpO1xuICAgIHJldHVybiBQcm9taXNlLmFsbChcbiAgICAgIGlkLm1hcCgoaSwgY291bnQpID0+IHRoaXMuY3JlYXRlKHRhYmxlTmFtZSwgaSwgbW9kZWxbY291bnRdLCAuLi5hcmdzKSlcbiAgICApO1xuICB9XG5cbiAgYWJzdHJhY3QgcmVhZChcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcbiAgICBpZDogc3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgYW55Pj47XG5cbiAgYXN5bmMgcmVhZEFsbChcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcbiAgICBpZDogKHN0cmluZyB8IG51bWJlciB8IGJpZ2ludClbXSxcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIGFueT5bXT4ge1xuICAgIHJldHVybiBQcm9taXNlLmFsbChpZC5tYXAoKGkpID0+IHRoaXMucmVhZCh0YWJsZU5hbWUsIGksIC4uLmFyZ3MpKSk7XG4gIH1cblxuICBhYnN0cmFjdCB1cGRhdGUoXG4gICAgdGFibGVOYW1lOiBzdHJpbmcsXG4gICAgaWQ6IHN0cmluZyB8IG51bWJlcixcbiAgICBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PixcbiAgICAuLi5hcmdzOiBhbnlbXVxuICApOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIGFueT4+O1xuXG4gIGFzeW5jIHVwZGF0ZUFsbChcbiAgICB0YWJsZU5hbWU6IHN0cmluZyxcbiAgICBpZDogc3RyaW5nW10gfCBudW1iZXJbXSxcbiAgICBtb2RlbDogUmVjb3JkPHN0cmluZywgYW55PltdLFxuICAgIC4uLmFyZ3M6IGFueVtdXG4gICk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgYW55PltdPiB7XG4gICAgaWYgKGlkLmxlbmd0aCAhPT0gbW9kZWwubGVuZ3RoKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXCJJZHMgYW5kIG1vZGVscyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoXCIpO1xuICAgIHJldHVybiBQcm9taXNlLmFsbChcbiAgICAgIGlkLm1hcCgoaSwgY291bnQpID0+IHRoaXMudXBkYXRlKHRhYmxlTmFtZSwgaSwgbW9kZWxbY291bnRdLCAuLi5hcmdzKSlcbiAgICApO1xuICB9XG5cbiAgYWJzdHJhY3QgZGVsZXRlKFxuICAgIHRhYmxlTmFtZTogc3RyaW5nLFxuICAgIGlkOiBzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnQsXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBhbnk+PjtcblxuICBhc3luYyBkZWxldGVBbGwoXG4gICAgdGFibGVOYW1lOiBzdHJpbmcsXG4gICAgaWQ6IChzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnQpW10sXG4gICAgLi4uYXJnczogYW55W11cbiAgKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLCBhbnk+W10+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoaWQubWFwKChpKSA9PiB0aGlzLmRlbGV0ZSh0YWJsZU5hbWUsIGksIC4uLmFyZ3MpKSk7XG4gIH1cblxuICBhYnN0cmFjdCByYXc8Uj4ocmF3SW5wdXQ6IFEsIHByb2Nlc3M6IGJvb2xlYW4sIC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTxSPjtcblxuICAvKipcbiAgICogQHN1bW1hcnkgUmVnaXN0ZXJzIGFuIHtAbGluayBPYnNlcnZlcn1cbiAgICogQHBhcmFtIHtPYnNlcnZlcn0gb2JzZXJ2ZXJcbiAgICpcbiAgICogQHNlZSB7T2JzZXJ2YWJsZSNvYnNlcnZlfVxuICAgKi9cbiAgb2JzZXJ2ZShvYnNlcnZlcjogT2JzZXJ2ZXIpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuX29ic2VydmVycy5pbmRleE9mKG9ic2VydmVyKTtcbiAgICBpZiAoaW5kZXggIT09IC0xKSB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIk9ic2VydmVyIGFscmVhZHkgcmVnaXN0ZXJlZFwiKTtcbiAgICB0aGlzLl9vYnNlcnZlcnMucHVzaChvYnNlcnZlcik7XG4gIH1cblxuICAvKipcbiAgICogQHN1bW1hcnkgVW5yZWdpc3RlcnMgYW4ge0BsaW5rIE9ic2VydmVyfVxuICAgKiBAcGFyYW0ge09ic2VydmVyfSBvYnNlcnZlclxuICAgKlxuICAgKiBAc2VlIHtPYnNlcnZhYmxlI3VuT2JzZXJ2ZX1cbiAgICovXG4gIHVuT2JzZXJ2ZShvYnNlcnZlcjogT2JzZXJ2ZXIpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuX29ic2VydmVycy5pbmRleE9mKG9ic2VydmVyKTtcbiAgICBpZiAoaW5kZXggPT09IC0xKSB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcIkZhaWxlZCB0byBmaW5kIE9ic2VydmVyXCIpO1xuICAgIHRoaXMuX29ic2VydmVycy5zcGxpY2UoaW5kZXgsIDEpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IGNhbGxzIGFsbCByZWdpc3RlcmVkIHtAbGluayBPYnNlcnZlcn1zIHRvIHVwZGF0ZSB0aGVtc2VsdmVzXG4gICAqIEBwYXJhbSB7YW55W119IFthcmdzXSBvcHRpb25hbCBhcmd1bWVudHMgdG8gYmUgcGFzc2VkIHRvIHRoZSB7QGxpbmsgT2JzZXJ2ZXIjcmVmcmVzaH0gbWV0aG9kXG4gICAqL1xuICBhc3luYyB1cGRhdGVPYnNlcnZlcnMoLi4uYXJnczogYW55W10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgUHJvbWlzZS5hbGxTZXR0bGVkKFxuICAgICAgdGhpcy5fb2JzZXJ2ZXJzLm1hcCgobykgPT4gby5yZWZyZXNoKC4uLmFyZ3MpKVxuICAgICk7XG4gICAgcmVzdWx0cy5mb3JFYWNoKChyZXN1bHQsIGkpID0+IHtcbiAgICAgIGlmIChyZXN1bHQuc3RhdHVzID09PSBcInJlamVjdGVkXCIpXG4gICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICBgRmFpbGVkIHRvIHVwZGF0ZSBvYnNlcnZhYmxlICR7dGhpcy5fb2JzZXJ2ZXJzW2ldfTogJHtyZXN1bHQucmVhc29ufWBcbiAgICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyBnZXQgY3VycmVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY3VycmVudDtcbiAgfVxuXG4gIHN0YXRpYyBnZXQ8WSwgUT4oZmxhdm91cjogYW55KTogQWRhcHRlcjxZLCBRPiB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKGZsYXZvdXIgaW4gdGhpcy5fY2FjaGUpIHJldHVybiB0aGlzLl9jYWNoZVtmbGF2b3VyXTtcbiAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgTm8gQWRhcHRlciByZWdpc3RlcmVkIHVuZGVyICR7Zmxhdm91cn0uYCk7XG4gIH1cblxuICBzdGF0aWMgc2V0Q3VycmVudChmbGF2b3VyOiBzdHJpbmcpIHtcbiAgICBjb25zdCBhZGFwdGVyID0gQWRhcHRlci5nZXQoZmxhdm91cik7XG4gICAgaWYgKCFhZGFwdGVyKVxuICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYE5vIHBlcnNpc3RlbmNlIGZsYXZvdXIgJHtmbGF2b3VyfSByZWdpc3RlcmVkYCk7XG4gICAgdGhpcy5fY3VycmVudCA9IGFkYXB0ZXI7XG4gIH1cblxuICBzdGF0aWMga2V5KGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIFJlcG9zaXRvcnkua2V5KGtleSk7XG4gIH1cblxuICBzdGF0aWMgbW9kZWxzPE0gZXh0ZW5kcyBNb2RlbD4oZmxhdm91cjogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlZ2lzdHJ5ID0gKE1vZGVsIGFzIGFueSkuZ2V0UmVnaXN0cnkoKSBhcyBNb2RlbFJlZ2lzdHJ5PGFueT47XG4gICAgICBjb25zdCBjYWNoZSA9IChcbiAgICAgICAgcmVnaXN0cnkgYXMgdW5rbm93biBhcyB7IGNhY2hlOiBSZWNvcmQ8c3RyaW5nLCBNb2RlbENvbnN0cnVjdG9yPGFueT4+IH1cbiAgICAgICkuY2FjaGU7XG4gICAgICBjb25zdCBtYW5hZ2VkTW9kZWxzOiBNb2RlbENvbnN0cnVjdG9yPGFueT5bXSA9IE9iamVjdC52YWx1ZXMoY2FjaGUpXG4gICAgICAgIC5tYXAoKG06IE1vZGVsQ29uc3RydWN0b3I8TT4pID0+IHtcbiAgICAgICAgICBsZXQgZiA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoXG4gICAgICAgICAgICBBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuQURBUFRFUiksXG4gICAgICAgICAgICBtIGFzIE1vZGVsQ29uc3RydWN0b3I8YW55PlxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKGYgJiYgZiA9PT0gZmxhdm91cikgcmV0dXJuIG07XG4gICAgICAgICAgaWYgKCFmKSB7XG4gICAgICAgICAgICBjb25zdCByZXBvID0gUmVmbGVjdC5nZXRNZXRhZGF0YShcbiAgICAgICAgICAgICAgUmVwb3NpdG9yeS5rZXkoREJLZXlzLlJFUE9TSVRPUlkpLFxuICAgICAgICAgICAgICBtIGFzIE1vZGVsQ29uc3RydWN0b3I8YW55PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlmICghcmVwbykgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgcmVwb3NpdG9yeSA9IFJlcG9zaXRvcnkuZm9yTW9kZWwobSk7XG5cbiAgICAgICAgICAgIGYgPSBSZWZsZWN0LmdldE1ldGFkYXRhKFxuICAgICAgICAgICAgICBBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuQURBUFRFUiksXG4gICAgICAgICAgICAgIHJlcG9zaXRvcnlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm4gZjtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgIC5maWx0ZXIoKG0pID0+ICEhbSk7XG4gICAgICByZXR1cm4gbWFuYWdlZE1vZGVscztcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGUpO1xuICAgIH1cbiAgfVxufVxuIl19
|
File without changes
|
@@ -8,4 +8,4 @@ export class Sequence {
|
|
8
8
|
}
|
9
9
|
}
|
10
10
|
|
11
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
11
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wZXJzaXN0ZW5jZS9TZXF1ZW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUd6RCxNQUFNLE9BQWdCLFFBQVE7SUFDNUIsWUFBeUMsT0FBd0I7UUFBeEIsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7SUFBRyxDQUFDO0lBV3JFLE1BQU0sQ0FBQyxFQUFFLENBQWtCLEtBQXlCO1FBQ2xELE9BQU8sb0JBQW9CLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNDLENBQUM7Q0FDRiIsImZpbGUiOiJwZXJzaXN0ZW5jZS9TZXF1ZW5jZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHN1bW1hcnkgU2VxdWVuY2VcbiAqXG4gKiBAaW50ZXJmYWNlIFNlcXVlbmNlXG4gKlxuICogQGNhdGVnb3J5IFNlcXVlbmNlc1xuICovXG5pbXBvcnQgeyBDb25zdHJ1Y3RvciwgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBzZXF1ZW5jZU5hbWVGb3JNb2RlbCB9IGZyb20gXCIuLi9pZGVudGl0eS91dGlsc1wiO1xuaW1wb3J0IHsgU2VxdWVuY2VPcHRpb25zIH0gZnJvbSBcIi4uL2ludGVyZmFjZXMvU2VxdWVuY2VPcHRpb25zXCI7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTZXF1ZW5jZSB7XG4gIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9uczogU2VxdWVuY2VPcHRpb25zKSB7fVxuXG4gIC8qKlxuICAgKiBAc3VtbWFyeSBnZW5lcmF0ZXMgdGhlIG5leHQgdmFsdWUgaW4gdGhlIHNlcXVlbmNlXG4gICAqXG4gICAqIEBtZXRob2RcbiAgICovXG4gIGFic3RyYWN0IG5leHQoKTogUHJvbWlzZTxzdHJpbmcgfCBudW1iZXIgfCBiaWdpbnQ+O1xuICBhYnN0cmFjdCBjdXJyZW50KCk6IFByb21pc2U8c3RyaW5nIHwgbnVtYmVyIHwgYmlnaW50PjtcbiAgYWJzdHJhY3QgcmFuZ2UoY291bnQ6IG51bWJlcik6IFByb21pc2U8KG51bWJlciB8IHN0cmluZyB8IGJpZ2ludClbXT47XG5cbiAgc3RhdGljIHBrPE0gZXh0ZW5kcyBNb2RlbD4obW9kZWw6IE0gfCBDb25zdHJ1Y3RvcjxNPikge1xuICAgIHJldHVybiBzZXF1ZW5jZU5hbWVGb3JNb2RlbChtb2RlbCwgXCJwa1wiKTtcbiAgfVxufVxuIl19
|
File without changes
|
@@ -25,4 +25,4 @@ export var Roles;
|
|
25
25
|
Roles["READER"] = "reader";
|
26
26
|
})(Roles || (Roles = {}));
|
27
27
|
|
28
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
28
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wZXJzaXN0ZW5jZS9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZUFrQlg7QUFsQkQsV0FBWSxlQUFlO0lBQ3pCLGtDQUFlLENBQUE7SUFDZixvQ0FBaUIsQ0FBQTtJQUNqQixzQ0FBbUIsQ0FBQTtJQUNuQiwyREFBd0MsQ0FBQTtJQUN4QyxrQ0FBZSxDQUFBO0lBQ2Ysb0NBQWlCLENBQUE7SUFDakIsMENBQXVCLENBQUE7SUFDdkIsNENBQXlCLENBQUE7SUFDekIsc0RBQW1DLENBQUE7SUFDbkMsWUFBWTtJQUNaLHNEQUFtQyxDQUFBO0lBQ25DLHNEQUFtQyxDQUFBO0lBQ25DLFlBQVk7SUFDWixzREFBbUMsQ0FBQTtJQUNuQyx3REFBcUMsQ0FBQTtJQUNyQyx3REFBcUMsQ0FBQTtJQUNyQyx3Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBbEJXLGVBQWUsS0FBZixlQUFlLFFBa0IxQjtBQUVELE1BQU0sQ0FBTixJQUFZLEtBSVg7QUFKRCxXQUFZLEtBQUs7SUFDZix3QkFBZSxDQUFBO0lBQ2YsMEJBQWlCLENBQUE7SUFDakIsMEJBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLEtBQUssS0FBTCxLQUFLLFFBSWhCIiwiZmlsZSI6InBlcnNpc3RlbmNlL2NvbnN0YW50cy5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFBlcnNpc3RlbmNlS2V5cyB7XG4gIElOREVYID0gXCJpbmRleFwiLFxuICBVTklRVUUgPSBcInVuaXF1ZVwiLFxuICBBREFQVEVSID0gXCJhZGFwdGVyXCIsXG4gIElOSkVDVEFCTEUgPSBcImRlY2FmX3swfV9hZGFwdGVyX2Zvcl97MX1cIixcbiAgVEFCTEUgPSBcInRhYmxlXCIsXG4gIENPTFVNTiA9IFwiY29sdW1uXCIsXG4gIE1FVEFEQVRBID0gXCJfX21ldGFkYXRhXCIsXG4gIFJFTEFUSU9OUyA9IFwiX19yZWxhdGlvbnNcIixcbiAgQ0xBVVNFX1NFUVVFTkNFID0gXCJjbGF1c2Utc2VxdWVuY2VcIixcbiAgLy8gT3duZXJzaGlwXG4gIENSRUFURURfQlkgPSBcIm93bmVyc2hpcC5jcmVhdGVkLWJ5XCIsXG4gIFVQREFURURfQlkgPSBcIm93bmVyc2hpcC51cGRhdGVkLWJ5XCIsXG4gIC8vIFJlbGF0aW9uc1xuICBPTkVfVE9fT05FID0gXCJyZWxhdGlvbnMub25lLXRvLW9uZVwiLFxuICBPTkVfVE9fTUFOWSA9IFwicmVsYXRpb25zLm9uZS10by1tYW55XCIsXG4gIE1BTllfVE9fT05FID0gXCJyZWxhdGlvbnMubWFueS10by1vbmVcIixcbiAgUE9QVUxBVEUgPSBcInBvcHVsYXRlXCIsXG59XG5cbmV4cG9ydCBlbnVtIFJvbGVzIHtcbiAgQURNSU4gPSBcImFkbWluXCIsXG4gIFdSSVRFUiA9IFwid3JpdGVyXCIsXG4gIFJFQURFUiA9IFwicmVhZGVyXCIsXG59XG4iXX0=
|
File without changes
|
@@ -5,4 +5,4 @@ export function uses(flavour) {
|
|
5
5
|
return apply(metadata(Adapter.key(PersistenceKeys.ADAPTER), flavour));
|
6
6
|
}
|
7
7
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wZXJzaXN0ZW5jZS9kZWNvcmF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE1BQU0sVUFBVSxJQUFJLENBQUMsT0FBZTtJQUNsQyxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztBQUN4RSxDQUFDIiwiZmlsZSI6InBlcnNpc3RlbmNlL2RlY29yYXRvcnMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhcHBseSwgbWV0YWRhdGEgfSBmcm9tIFwiQGRlY2FmLXRzL3JlZmxlY3Rpb25cIjtcbmltcG9ydCB7IFBlcnNpc3RlbmNlS2V5cyB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgQWRhcHRlciB9IGZyb20gXCIuL0FkYXB0ZXJcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZXMoZmxhdm91cjogc3RyaW5nKSB7XG4gIHJldHVybiBhcHBseShtZXRhZGF0YShBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuQURBUFRFUiksIGZsYXZvdXIpKTtcbn1cbiJdfQ==
|
File without changes
|
@@ -10,4 +10,4 @@ export class UnsupportedError extends BaseError {
|
|
10
10
|
}
|
11
11
|
}
|
12
12
|
|
13
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wZXJzaXN0ZW5jZS9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXBELE1BQU0sT0FBTyxlQUFnQixTQUFRLFNBQVM7SUFDNUMsWUFBWSxHQUFtQjtRQUM3QixLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNuQyxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsU0FBUztJQUM3QyxZQUFZLEdBQW1CO1FBQzdCLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUNGIiwiZmlsZSI6InBlcnNpc3RlbmNlL2Vycm9ycy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VFcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuXG5leHBvcnQgY2xhc3MgQ29ubmVjdGlvbkVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgY29uc3RydWN0b3IobXNnOiBzdHJpbmcgfCBFcnJvcikge1xuICAgIHN1cGVyKENvbm5lY3Rpb25FcnJvci5uYW1lLCBtc2cpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbnN1cHBvcnRlZEVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgY29uc3RydWN0b3IobXNnOiBzdHJpbmcgfCBFcnJvcikge1xuICAgIHN1cGVyKFVuc3VwcG9ydGVkRXJyb3IubmFtZSwgbXNnKTtcbiAgfVxufVxuIl19
|
File without changes
|
@@ -4,4 +4,4 @@ export * from "./decorators";
|
|
4
4
|
export * from "./errors";
|
5
5
|
export * from "./Sequence";
|
6
6
|
|
7
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
7
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wZXJzaXN0ZW5jZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFlBQVksQ0FBQyIsImZpbGUiOiJwZXJzaXN0ZW5jZS9pbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0FkYXB0ZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbnN0YW50c1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZGVjb3JhdG9yc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vZXJyb3JzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9TZXF1ZW5jZVwiO1xuIl19
|
File without changes
|