parse-server 6.4.0 → 6.5.0-alpha.2
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/README.md +8 -6
- package/lib/AccountLockout.js +1 -1
- package/lib/Adapters/AdapterLoader.js +1 -1
- package/lib/Adapters/Analytics/AnalyticsAdapter.js +1 -1
- package/lib/Adapters/Auth/AuthAdapter.js +1 -1
- package/lib/Adapters/Auth/OAuth1Client.js +1 -1
- package/lib/Adapters/Auth/apple.js +1 -1
- package/lib/Adapters/Auth/facebook.js +1 -1
- package/lib/Adapters/Auth/gcenter.js +1 -1
- package/lib/Adapters/Auth/github.js +1 -1
- package/lib/Adapters/Auth/google.js +1 -1
- package/lib/Adapters/Auth/gpgames.js +1 -1
- package/lib/Adapters/Auth/httpsRequest.js +1 -1
- package/lib/Adapters/Auth/index.js +1 -1
- package/lib/Adapters/Auth/instagram.js +1 -1
- package/lib/Adapters/Auth/janraincapture.js +1 -1
- package/lib/Adapters/Auth/janrainengage.js +1 -1
- package/lib/Adapters/Auth/keycloak.js +1 -1
- package/lib/Adapters/Auth/ldap.js +1 -1
- package/lib/Adapters/Auth/line.js +1 -1
- package/lib/Adapters/Auth/linkedin.js +1 -1
- package/lib/Adapters/Auth/meetup.js +1 -1
- package/lib/Adapters/Auth/mfa.js +1 -1
- package/lib/Adapters/Auth/microsoft.js +1 -1
- package/lib/Adapters/Auth/oauth2.js +1 -1
- package/lib/Adapters/Auth/phantauth.js +1 -1
- package/lib/Adapters/Auth/qq.js +1 -1
- package/lib/Adapters/Auth/spotify.js +1 -1
- package/lib/Adapters/Auth/twitter.js +1 -1
- package/lib/Adapters/Auth/vkontakte.js +1 -1
- package/lib/Adapters/Auth/wechat.js +1 -1
- package/lib/Adapters/Auth/weibo.js +1 -1
- package/lib/Adapters/Cache/CacheAdapter.js +1 -1
- package/lib/Adapters/Cache/InMemoryCache.js +1 -1
- package/lib/Adapters/Cache/InMemoryCacheAdapter.js +1 -1
- package/lib/Adapters/Cache/LRUCache.js +1 -1
- package/lib/Adapters/Cache/NullCacheAdapter.js +1 -1
- package/lib/Adapters/Cache/RedisCacheAdapter.js +1 -1
- package/lib/Adapters/Cache/SchemaCache.js +1 -1
- package/lib/Adapters/Email/MailAdapter.js +1 -1
- package/lib/Adapters/Files/FilesAdapter.js +1 -1
- package/lib/Adapters/Files/GridFSBucketAdapter.js +1 -1
- package/lib/Adapters/Files/GridStoreAdapter.js +1 -1
- package/lib/Adapters/Logger/LoggerAdapter.js +1 -1
- package/lib/Adapters/Logger/WinstonLogger.js +1 -1
- package/lib/Adapters/Logger/WinstonLoggerAdapter.js +1 -1
- package/lib/Adapters/MessageQueue/EventEmitterMQ.js +1 -1
- package/lib/Adapters/PubSub/EventEmitterPubSub.js +1 -1
- package/lib/Adapters/PubSub/PubSubAdapter.js +6 -1
- package/lib/Adapters/PubSub/RedisPubSub.js +1 -1
- package/lib/Adapters/Push/PushAdapter.js +1 -1
- package/lib/Adapters/Storage/Mongo/MongoCollection.js +1 -1
- package/lib/Adapters/Storage/Mongo/MongoSchemaCollection.js +1 -1
- package/lib/Adapters/Storage/Mongo/MongoStorageAdapter.js +3 -2
- package/lib/Adapters/Storage/Mongo/MongoTransform.js +10 -1
- package/lib/Adapters/Storage/Postgres/PostgresClient.js +1 -1
- package/lib/Adapters/Storage/Postgres/PostgresConfigParser.js +1 -1
- package/lib/Adapters/Storage/Postgres/PostgresStorageAdapter.js +4 -2
- package/lib/Adapters/Storage/Postgres/sql/index.js +1 -1
- package/lib/Adapters/WebSocketServer/WSAdapter.js +1 -1
- package/lib/Adapters/WebSocketServer/WSSAdapter.js +1 -1
- package/lib/Auth.js +1 -1
- package/lib/ClientSDK.js +1 -1
- package/lib/Config.js +1 -1
- package/lib/Controllers/AdaptableController.js +1 -1
- package/lib/Controllers/AnalyticsController.js +1 -1
- package/lib/Controllers/CacheController.js +1 -1
- package/lib/Controllers/DatabaseController.js +40 -12
- package/lib/Controllers/FilesController.js +1 -1
- package/lib/Controllers/HooksController.js +1 -1
- package/lib/Controllers/LiveQueryController.js +1 -1
- package/lib/Controllers/LoggerController.js +1 -1
- package/lib/Controllers/ParseGraphQLController.js +1 -1
- package/lib/Controllers/PushController.js +1 -1
- package/lib/Controllers/SchemaController.js +4 -1
- package/lib/Controllers/UserController.js +1 -1
- package/lib/Controllers/index.js +3 -2
- package/lib/Deprecator/Deprecator.js +1 -1
- package/lib/GraphQL/ParseGraphQLSchema.js +1 -1
- package/lib/GraphQL/ParseGraphQLServer.js +1 -1
- package/lib/GraphQL/helpers/objectsMutations.js +1 -1
- package/lib/GraphQL/helpers/objectsQueries.js +1 -1
- package/lib/GraphQL/loaders/defaultGraphQLMutations.js +1 -1
- package/lib/GraphQL/loaders/defaultGraphQLQueries.js +1 -1
- package/lib/GraphQL/loaders/defaultGraphQLTypes.js +1 -1
- package/lib/GraphQL/loaders/defaultRelaySchema.js +1 -1
- package/lib/GraphQL/loaders/filesMutations.js +1 -1
- package/lib/GraphQL/loaders/functionsMutations.js +1 -1
- package/lib/GraphQL/loaders/parseClassMutations.js +1 -1
- package/lib/GraphQL/loaders/parseClassQueries.js +1 -1
- package/lib/GraphQL/loaders/parseClassTypes.js +2 -2
- package/lib/GraphQL/loaders/schemaDirectives.js +1 -1
- package/lib/GraphQL/loaders/schemaMutations.js +1 -1
- package/lib/GraphQL/loaders/schemaQueries.js +1 -1
- package/lib/GraphQL/loaders/schemaTypes.js +1 -1
- package/lib/GraphQL/loaders/usersMutations.js +1 -1
- package/lib/GraphQL/loaders/usersQueries.js +1 -1
- package/lib/GraphQL/parseGraphQLUtils.js +1 -1
- package/lib/GraphQL/transformers/className.js +1 -1
- package/lib/GraphQL/transformers/constraintType.js +1 -1
- package/lib/GraphQL/transformers/inputType.js +1 -1
- package/lib/GraphQL/transformers/mutation.js +1 -1
- package/lib/GraphQL/transformers/outputType.js +1 -1
- package/lib/GraphQL/transformers/query.js +1 -1
- package/lib/GraphQL/transformers/schemaFields.js +1 -1
- package/lib/KeyPromiseQueue.js +1 -1
- package/lib/LiveQuery/Client.js +1 -1
- package/lib/LiveQuery/Id.js +1 -1
- package/lib/LiveQuery/ParseCloudCodePublisher.js +1 -1
- package/lib/LiveQuery/ParseLiveQueryServer.js +1 -1
- package/lib/LiveQuery/ParsePubSub.js +1 -1
- package/lib/LiveQuery/ParseWebSocketServer.js +1 -1
- package/lib/LiveQuery/QueryTools.js +1 -1
- package/lib/LiveQuery/RequestSchema.js +1 -1
- package/lib/LiveQuery/SessionTokenCache.js +1 -1
- package/lib/LiveQuery/Subscription.js +1 -1
- package/lib/LiveQuery/equalObjects.js +1 -1
- package/lib/Options/Definitions.js +22 -4
- package/lib/Options/docs.js +7 -4
- package/lib/Options/index.js +1 -1
- package/lib/Options/parsers.js +1 -1
- package/lib/Page.js +1 -1
- package/lib/ParseMessageQueue.js +1 -1
- package/lib/ParseServer.js +3 -1
- package/lib/ParseServerRESTController.js +1 -1
- package/lib/PromiseRouter.js +1 -1
- package/lib/Push/PushQueue.js +1 -1
- package/lib/Push/PushWorker.js +1 -1
- package/lib/Push/utils.js +1 -1
- package/lib/RestQuery.js +13 -8
- package/lib/RestWrite.js +21 -3
- package/lib/Routers/AggregateRouter.js +1 -1
- package/lib/Routers/AnalyticsRouter.js +1 -1
- package/lib/Routers/AudiencesRouter.js +1 -1
- package/lib/Routers/ClassesRouter.js +1 -1
- package/lib/Routers/CloudCodeRouter.js +1 -1
- package/lib/Routers/FeaturesRouter.js +1 -1
- package/lib/Routers/FilesRouter.js +2 -2
- package/lib/Routers/FunctionsRouter.js +1 -1
- package/lib/Routers/GlobalConfigRouter.js +1 -1
- package/lib/Routers/GraphQLRouter.js +1 -1
- package/lib/Routers/HooksRouter.js +1 -1
- package/lib/Routers/IAPValidationRouter.js +1 -1
- package/lib/Routers/InstallationsRouter.js +1 -1
- package/lib/Routers/LogsRouter.js +1 -1
- package/lib/Routers/PagesRouter.js +1 -1
- package/lib/Routers/PublicAPIRouter.js +1 -1
- package/lib/Routers/PurgeRouter.js +1 -1
- package/lib/Routers/PushRouter.js +1 -1
- package/lib/Routers/RolesRouter.js +1 -1
- package/lib/Routers/SchemasRouter.js +1 -1
- package/lib/Routers/SecurityRouter.js +1 -1
- package/lib/Routers/SessionsRouter.js +1 -1
- package/lib/Routers/UsersRouter.js +4 -4
- package/lib/SchemaMigrations/DefinedSchemas.js +1 -1
- package/lib/SchemaMigrations/Migrations.js +1 -1
- package/lib/Security/Check.js +1 -1
- package/lib/Security/CheckGroup.js +1 -1
- package/lib/Security/CheckGroups/CheckGroupDatabase.js +1 -1
- package/lib/Security/CheckGroups/CheckGroupServerConfig.js +1 -1
- package/lib/Security/CheckGroups/CheckGroups.js +1 -1
- package/lib/Security/CheckRunner.js +1 -1
- package/lib/SharedRest.js +1 -1
- package/lib/StatusHandler.js +1 -1
- package/lib/TestUtils.js +1 -1
- package/lib/Utils.js +1 -1
- package/lib/batch.js +1 -1
- package/lib/cache.js +1 -1
- package/lib/cli/definitions/parse-live-query-server.js +1 -1
- package/lib/cli/definitions/parse-server.js +1 -1
- package/lib/cli/parse-live-query-server.js +1 -1
- package/lib/cli/parse-server.js +1 -1
- package/lib/cli/utils/commander.js +1 -1
- package/lib/cli/utils/runner.js +1 -1
- package/lib/cloud-code/Parse.Cloud.js +1 -1
- package/lib/cryptoUtils.js +1 -1
- package/lib/defaults.js +1 -1
- package/lib/deprecated.js +1 -1
- package/lib/index.js +1 -1
- package/lib/logger.js +1 -1
- package/lib/middlewares.js +43 -4
- package/lib/password.js +1 -1
- package/lib/request.js +1 -1
- package/lib/requiredParameter.js +1 -1
- package/lib/rest.js +1 -1
- package/lib/triggers.js +3 -3
- package/lib/vendor/mongodbUrl.js +1 -1
- package/package.json +3 -4
package/lib/TestUtils.js
CHANGED
|
@@ -30,4 +30,4 @@ function destroyAllDataPermanently(fast) {
|
|
|
30
30
|
return Promise.all(deletePromises);
|
|
31
31
|
}));
|
|
32
32
|
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2FjaGUiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9TY2hlbWFDYWNoZSIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiZGVzdHJveUFsbERhdGFQZXJtYW5lbnRseSIsImZhc3QiLCJwcm9jZXNzIiwiZW52IiwiVEVTVElORyIsIlByb21pc2UiLCJhbGwiLCJPYmplY3QiLCJrZXlzIiwiQXBwQ2FjaGUiLCJjYWNoZSIsIm1hcCIsImFwcElkIiwiYXBwIiwiZ2V0IiwiZGVsZXRlUHJvbWlzZXMiLCJjYWNoZUFkYXB0ZXIiLCJwdXNoIiwiY2xlYXIiLCJkYXRhYmFzZUNvbnRyb2xsZXIiLCJkZWxldGVFdmVyeXRoaW5nIiwiZGF0YWJhc2VBZGFwdGVyIiwiU2NoZW1hQ2FjaGUiLCJkZWxldGVBbGxDbGFzc2VzIl0sInNvdXJjZXMiOlsiLi4vc3JjL1Rlc3RVdGlscy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQXBwQ2FjaGUgZnJvbSAnLi9jYWNoZSc7XG5pbXBvcnQgU2NoZW1hQ2FjaGUgZnJvbSAnLi9BZGFwdGVycy9DYWNoZS9TY2hlbWFDYWNoZSc7XG5cbi8qKlxuICogRGVzdHJveXMgYWxsIGRhdGEgaW4gdGhlIGRhdGFiYXNlXG4gKiBAcGFyYW0ge2Jvb2xlYW59IGZhc3Qgc2V0IHRvIHRydWUgaWYgaXQncyBvayB0byBqdXN0IGRyb3Agb2JqZWN0cyBhbmQgbm90IGluZGV4ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZXN0cm95QWxsRGF0YVBlcm1hbmVudGx5KGZhc3QpIHtcbiAgaWYgKCFwcm9jZXNzLmVudi5URVNUSU5HKSB7XG4gICAgdGhyb3cgJ09ubHkgc3VwcG9ydGVkIGluIHRlc3QgZW52aXJvbm1lbnQnO1xuICB9XG4gIHJldHVybiBQcm9taXNlLmFsbChcbiAgICBPYmplY3Qua2V5cyhBcHBDYWNoZS5jYWNoZSkubWFwKGFwcElkID0+IHtcbiAgICAgIGNvbnN0IGFwcCA9IEFwcENhY2hlLmdldChhcHBJZCk7XG4gICAgICBjb25zdCBkZWxldGVQcm9taXNlcyA9IFtdO1xuICAgICAgaWYgKGFwcC5jYWNoZUFkYXB0ZXIpIHtcbiAgICAgICAgZGVsZXRlUHJvbWlzZXMucHVzaChhcHAuY2FjaGVBZGFwdGVyLmNsZWFyKCkpO1xuICAgICAgfVxuICAgICAgaWYgKGFwcC5kYXRhYmFzZUNvbnRyb2xsZXIpIHtcbiAgICAgICAgZGVsZXRlUHJvbWlzZXMucHVzaChhcHAuZGF0YWJhc2VDb250cm9sbGVyLmRlbGV0ZUV2ZXJ5dGhpbmcoZmFzdCkpO1xuICAgICAgfSBlbHNlIGlmIChhcHAuZGF0YWJhc2VBZGFwdGVyKSB7XG4gICAgICAgIFNjaGVtYUNhY2hlLmNsZWFyKCk7XG4gICAgICAgIGRlbGV0ZVByb21pc2VzLnB1c2goYXBwLmRhdGFiYXNlQWRhcHRlci5kZWxldGVBbGxDbGFzc2VzKGZhc3QpKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBQcm9taXNlLmFsbChkZWxldGVQcm9taXNlcyk7XG4gICAgfSlcbiAgKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsWUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQXVELFNBQUFELHVCQUFBRyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBRXZEO0FBQ0E7QUFDQTtBQUNBO0FBQ08sU0FBU0cseUJBQXlCQSxDQUFDQyxJQUFJLEVBQUU7RUFDOUMsSUFBSSxDQUFDQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsT0FBTyxFQUFFO0lBQ3hCLE1BQU0sb0NBQW9DO0VBQzVDO0VBQ0EsT0FBT0MsT0FBTyxDQUFDQyxHQUFHLENBQ2hCQyxNQUFNLENBQUNDLElBQUksQ0FBQ0MsY0FBUSxDQUFDQyxLQUFLLENBQUMsQ0FBQ0MsR0FBRyxDQUFDQyxLQUFLLElBQUk7SUFDdkMsTUFBTUMsR0FBRyxHQUFHSixjQUFRLENBQUNLLEdBQUcsQ0FBQ0YsS0FBSyxDQUFDO0lBQy9CLE1BQU1HLGNBQWMsR0FBRyxFQUFFO0lBQ3pCLElBQUlGLEdBQUcsQ0FBQ0csWUFBWSxFQUFFO01BQ3BCRCxjQUFjLENBQUNFLElBQUksQ0FBQ0osR0FBRyxDQUFDRyxZQUFZLENBQUNFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0M7SUFDQSxJQUFJTCxHQUFHLENBQUNNLGtCQUFrQixFQUFFO01BQzFCSixjQUFjLENBQUNFLElBQUksQ0FBQ0osR0FBRyxDQUFDTSxrQkFBa0IsQ0FBQ0MsZ0JBQWdCLENBQUNuQixJQUFJLENBQUMsQ0FBQztJQUNwRSxDQUFDLE1BQU0sSUFBSVksR0FBRyxDQUFDUSxlQUFlLEVBQUU7TUFDOUJDLG9CQUFXLENBQUNKLEtBQUssQ0FBQyxDQUFDO01BQ25CSCxjQUFjLENBQUNFLElBQUksQ0FBQ0osR0FBRyxDQUFDUSxlQUFlLENBQUNFLGdCQUFnQixDQUFDdEIsSUFBSSxDQUFDLENBQUM7SUFDakU7SUFDQSxPQUFPSSxPQUFPLENBQUNDLEdBQUcsQ0FBQ1MsY0FBYyxDQUFDO0VBQ3BDLENBQUMsQ0FDSCxDQUFDO0FBQ0gifQ==
|
package/lib/Utils.js
CHANGED
|
@@ -366,4 +366,4 @@ class Utils {
|
|
|
366
366
|
}
|
|
367
367
|
}
|
|
368
368
|
module.exports = Utils;
|
|
369
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXRoIiwicmVxdWlyZSIsImZzIiwicHJvbWlzZXMiLCJVdGlscyIsImdldExvY2FsaXplZFBhdGgiLCJkZWZhdWx0UGF0aCIsImxvY2FsZSIsImZpbGUiLCJiYXNlbmFtZSIsImJhc2VQYXRoIiwiZGlybmFtZSIsImxvY2FsZVBhdGgiLCJqb2luIiwibG9jYWxlRmlsZUV4aXN0cyIsImZpbGVFeGlzdHMiLCJzdWJkaXIiLCJsYW5ndWFnZSIsInNwbGl0IiwibGFuZ3VhZ2VQYXRoIiwibGFuZ3VhZ2VGaWxlRXhpc3RzIiwiYWNjZXNzIiwiZSIsImlzUGF0aCIsInMiLCJ0ZXN0IiwiZmxhdHRlbk9iamVjdCIsIm9iaiIsInBhcmVudEtleSIsImRlbGltaXRlciIsInJlc3VsdCIsImtleSIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIm5ld0tleSIsImlzUHJvbWlzZSIsIm9iamVjdCIsIlByb21pc2UiLCJnZXRPYmplY3RLZXlQZXJtdXRhdGlvbnMiLCJpbmRleCIsImN1cnJlbnQiLCJyZXN1bHRzIiwia2V5cyIsInZhbHVlcyIsInZhbHVlIiwibmV4dEluZGV4IiwibGVuZ3RoIiwiYXNzaWduIiwicHVzaCIsInZhbGlkYXRlUGFyYW1zIiwicGFyYW1zIiwidHlwZXMiLCJ0eXBlIiwiaXNPcHRpb25hbCIsIm8iLCJwYXJhbSIsInYiLCJ0IiwicmVsYXRpdmVUaW1lVG9EYXRlIiwidGV4dCIsIm5vdyIsIkRhdGUiLCJ0b0xvd2VyQ2FzZSIsInBhcnRzIiwiZmlsdGVyIiwicGFydCIsImZ1dHVyZSIsInBhc3QiLCJzdGF0dXMiLCJpbmZvIiwic2xpY2UiLCJwYWlycyIsInNoaWZ0Iiwic2Vjb25kcyIsIm51bSIsImludGVydmFsIiwidmFsIiwiTnVtYmVyIiwiaXNJbnRlZ2VyIiwibWlsbGlzZWNvbmRzIiwidmFsdWVPZiIsIm9iamVjdENvbnRhaW5zS2V5VmFsdWUiLCJpc01hdGNoIiwiYSIsImIiLCJSZWdFeHAiLCJpc0tleU1hdGNoIiwiayIsImlzVmFsdWVNYXRjaCIsImVudHJpZXMiLCJ1bmRlZmluZWQiLCJpbmNsdWRlcyIsInRvU3RyaW5nIiwiY2hlY2tQcm9oaWJpdGVkS2V5d29yZHMiLCJjb25maWciLCJkYXRhIiwicmVxdWVzdEtleXdvcmREZW55bGlzdCIsImtleXdvcmQiLCJtYXRjaCIsIkpTT04iLCJzdHJpbmdpZnkiLCJtb2R1bGUiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL1V0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogdXRpbHMuanNcbiAqIEBmaWxlIEdlbmVyYWwgcHVycG9zZSB1dGlsaXRpZXNcbiAqIEBkZXNjcmlwdGlvbiBHZW5lcmFsIHB1cnBvc2UgdXRpbGl0aWVzLlxuICovXG5cbmNvbnN0IHBhdGggPSByZXF1aXJlKCdwYXRoJyk7XG5jb25zdCBmcyA9IHJlcXVpcmUoJ2ZzJykucHJvbWlzZXM7XG5cbi8qKlxuICogVGhlIGdlbmVyYWwgcHVycG9zZSB1dGlsaXRpZXMuXG4gKi9cbmNsYXNzIFV0aWxzIHtcbiAgLyoqXG4gICAqIEBmdW5jdGlvbiBnZXRMb2NhbGl6ZWRQYXRoXG4gICAqIEBkZXNjcmlwdGlvbiBSZXR1cm5zIGEgbG9jYWxpemVkIGZpbGUgcGF0aCBhY2NvcmluZyB0byB0aGUgbG9jYWxlLlxuICAgKlxuICAgKiBMb2NhbGl6ZWQgZmlsZXMgYXJlIHNlYXJjaGVkIGluIHN1YmZvbGRlcnMgb2YgYSBnaXZlbiBwYXRoLCBlLmcuXG4gICAqXG4gICAqIHJvb3QvXG4gICAqIOKUnOKUgOKUgCBiYXNlLyAgICAgICAgICAgICAgICAgICAgLy8gYmFzZSBwYXRoIHRvIGZpbGVzXG4gICAqIOKUgiAgIOKUnOKUgOKUgCBleGFtcGxlLmh0bWwgICAgICAgICAvLyBkZWZhdWx0IGZpbGVcbiAgICog4pSCICAg4pSU4pSA4pSAIGRlLyAgICAgICAgICAgICAgICAgIC8vIGRlIGxhbmd1YWdlIGZvbGRlclxuICAgKiDilIIgICDilIIgICDilJTilIDilIAgZXhhbXBsZS5odG1sICAgICAvLyBkZSBsb2NhbGl6ZWQgZmlsZVxuICAgKiDilIIgICDilJTilIDilIAgZGUtQVQvICAgICAgICAgICAgICAgLy8gZGUtQVQgbG9jYWxlIGZvbGRlclxuICAgKiDilIIgICDilIIgICDilJTilIDilIAgZXhhbXBsZS5odG1sICAgICAvLyBkZS1BVCBsb2NhbGl6ZWQgZmlsZVxuICAgKlxuICAgKiBGaWxlcyBhcmUgbWF0Y2hlZCB3aXRoIHRoZSBsb2NhbGUgaW4gdGhlIGZvbGxvd2luZyBvcmRlcjpcbiAgICogMS4gTG9jYWxlIG1hdGNoLCBlLmcuIGxvY2FsZSBgZGUtQVRgIG1hdGNoZXMgZmlsZSBpbiBmb2xkZXIgYGRlLUFUYC5cbiAgICogMi4gTGFuZ3VhZ2UgbWF0Y2gsIGUuZy4gbG9jYWxlIGBkZS1BVGAgbWF0Y2hlcyBmaWxlIGluIGZvbGRlciBgZGVgLlxuICAgKiAzLiBEZWZhdWx0OyBmaWxlIGluIGJhc2UgZm9sZGVyIGlzIHJldHVybmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge1N0cmluZ30gZGVmYXVsdFBhdGggVGhlIGFic29sdXRlIGZpbGUgcGF0aCwgd2hpY2ggaXMgYWxzb1xuICAgKiB0aGUgZGVmYXVsdCBwYXRoIHJldHVybmVkIGlmIGxvY2FsaXphdGlvbiBpcyBub3QgYXZhaWxhYmxlLlxuICAgKiBAcGFyYW0ge1N0cmluZ30gbG9jYWxlIFRoZSBsb2NhbGUuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPE9iamVjdD59IFRoZSBvYmplY3QgY29udGFpbnM6XG4gICAqIC0gYHBhdGhgOiBUaGUgcGF0aCB0byB0aGUgbG9jYWxpemVkIGZpbGUsIG9yIHRoZSBvcmlnaW5hbCBwYXRoIGlmXG4gICAqICAgbG9jYWxpemF0aW9uIGlzIG5vdCBhdmFpbGFibGUuXG4gICAqIC0gYHN1YmRpcmA6IFRoZSBzdWJkaXJlY3Rvcnkgb2YgdGhlIGxvY2FsaXplZCBmaWxlLCBvciB1bmRlZmluZWQgaWZcbiAgICogICB0aGVyZSBpcyBubyBtYXRjaGluZyBsb2NhbGl6ZWQgZmlsZS5cbiAgICovXG4gIHN0YXRpYyBhc3luYyBnZXRMb2NhbGl6ZWRQYXRoKGRlZmF1bHRQYXRoLCBsb2NhbGUpIHtcbiAgICAvLyBHZXQgZmlsZSBuYW1lIGFuZCBwYXRoc1xuICAgIGNvbnN0IGZpbGUgPSBwYXRoLmJhc2VuYW1lKGRlZmF1bHRQYXRoKTtcbiAgICBjb25zdCBiYXNlUGF0aCA9IHBhdGguZGlybmFtZShkZWZhdWx0UGF0aCk7XG5cbiAgICAvLyBJZiBsb2NhbGUgaXMgbm90IHNldCByZXR1cm4gZGVmYXVsdCBmaWxlXG4gICAgaWYgKCFsb2NhbGUpIHtcbiAgICAgIHJldHVybiB7IHBhdGg6IGRlZmF1bHRQYXRoIH07XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgZmlsZSBmb3IgbG9jYWxlIGV4aXN0c1xuICAgIGNvbnN0IGxvY2FsZVBhdGggPSBwYXRoLmpvaW4oYmFzZVBhdGgsIGxvY2FsZSwgZmlsZSk7XG4gICAgY29uc3QgbG9jYWxlRmlsZUV4aXN0cyA9IGF3YWl0IFV0aWxzLmZpbGVFeGlzdHMobG9jYWxlUGF0aCk7XG5cbiAgICAvLyBJZiBmaWxlIGZvciBsb2NhbGUgZXhpc3RzIHJldHVybiBmaWxlXG4gICAgaWYgKGxvY2FsZUZpbGVFeGlzdHMpIHtcbiAgICAgIHJldHVybiB7IHBhdGg6IGxvY2FsZVBhdGgsIHN1YmRpcjogbG9jYWxlIH07XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgZmlsZSBmb3IgbGFuZ3VhZ2UgZXhpc3RzXG4gICAgY29uc3QgbGFuZ3VhZ2UgPSBsb2NhbGUuc3BsaXQoJy0nKVswXTtcbiAgICBjb25zdCBsYW5ndWFnZVBhdGggPSBwYXRoLmpvaW4oYmFzZVBhdGgsIGxhbmd1YWdlLCBmaWxlKTtcbiAgICBjb25zdCBsYW5ndWFnZUZpbGVFeGlzdHMgPSBhd2FpdCBVdGlscy5maWxlRXhpc3RzKGxhbmd1YWdlUGF0aCk7XG5cbiAgICAvLyBJZiBmaWxlIGZvciBsYW5ndWFnZSBleGlzdHMgcmV0dXJuIGZpbGVcbiAgICBpZiAobGFuZ3VhZ2VGaWxlRXhpc3RzKSB7XG4gICAgICByZXR1cm4geyBwYXRoOiBsYW5ndWFnZVBhdGgsIHN1YmRpcjogbGFuZ3VhZ2UgfTtcbiAgICB9XG5cbiAgICAvLyBSZXR1cm4gZGVmYXVsdCBmaWxlXG4gICAgcmV0dXJuIHsgcGF0aDogZGVmYXVsdFBhdGggfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZnVuY3Rpb24gZmlsZUV4aXN0c1xuICAgKiBAZGVzY3JpcHRpb24gQ2hlY2tzIHdoZXRoZXIgYSBmaWxlIGV4aXN0cy5cbiAgICogQHBhcmFtIHtTdHJpbmd9IHBhdGggVGhlIGZpbGUgcGF0aC5cbiAgICogQHJldHVybnMge1Byb21pc2U8Qm9vbGVhbj59IElzIHRydWUgaWYgdGhlIGZpbGUgY2FuIGJlIGFjY2Vzc2VkLCBmYWxzZSBvdGhlcndpc2UuXG4gICAqL1xuICBzdGF0aWMgYXN5bmMgZmlsZUV4aXN0cyhwYXRoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGZzLmFjY2VzcyhwYXRoKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGZ1bmN0aW9uIGlzUGF0aFxuICAgKiBAZGVzY3JpcHRpb24gRXZhbHVhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSBmaWxlIHBhdGggKGFzIG9wcG9zZWQgdG8gYSBVUkwgZm9yIGV4YW1wbGUpLlxuICAgKiBAcGFyYW0ge1N0cmluZ30gcyBUaGUgc3RyaW5nIHRvIGV2YWx1YXRlLlxuICAgKiBAcmV0dXJucyB7Qm9vbGVhbn0gUmV0dXJucyB0cnVlIGlmIHRoZSBldmFsdWF0ZWQgc3RyaW5nIGlzIGEgcGF0aC5cbiAgICovXG4gIHN0YXRpYyBpc1BhdGgocykge1xuICAgIHJldHVybiAvKF5cXC8pfCheXFwuXFwvKXwoXlxcLlxcLlxcLykvLnRlc3Qocyk7XG4gIH1cblxuICAvKipcbiAgICogRmxhdHRlbnMgYW4gb2JqZWN0IGFuZCBjcmF0ZXMgbmV3IGtleXMgd2l0aCBjdXN0b20gZGVsaW1pdGVycy5cbiAgICogQHBhcmFtIHtPYmplY3R9IG9iaiBUaGUgb2JqZWN0IHRvIGZsYXR0ZW4uXG4gICAqIEBwYXJhbSB7U3RyaW5nfSBbZGVsaW1pdGVyPScuJ10gVGhlIGRlbGltaXRlciBvZiB0aGUgbmV3bHkgZ2VuZXJhdGVkIGtleXMuXG4gICAqIEBwYXJhbSB7T2JqZWN0fSByZXN1bHRcbiAgICogQHJldHVybnMge09iamVjdH0gVGhlIGZsYXR0ZW5lZCBvYmplY3QuXG4gICAqKi9cbiAgc3RhdGljIGZsYXR0ZW5PYmplY3Qob2JqLCBwYXJlbnRLZXksIGRlbGltaXRlciA9ICcuJywgcmVzdWx0ID0ge30pIHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqLCBrZXkpKSB7XG4gICAgICAgIGNvbnN0IG5ld0tleSA9IHBhcmVudEtleSA/IHBhcmVudEtleSArIGRlbGltaXRlciArIGtleSA6IGtleTtcblxuICAgICAgICBpZiAodHlwZW9mIG9ialtrZXldID09PSAnb2JqZWN0JyAmJiBvYmpba2V5XSAhPT0gbnVsbCkge1xuICAgICAgICAgIHRoaXMuZmxhdHRlbk9iamVjdChvYmpba2V5XSwgbmV3S2V5LCBkZWxpbWl0ZXIsIHJlc3VsdCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0W25ld0tleV0gPSBvYmpba2V5XTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciBhbiBvYmplY3QgaXMgYSBQcm9taXNlLlxuICAgKiBAcGFyYW0ge2FueX0gb2JqZWN0IFRoZSBvYmplY3QgdG8gdmFsaWRhdGUuXG4gICAqIEByZXR1cm5zIHtCb29sZWFufSBSZXR1cm5zIHRydWUgaWYgdGhlIG9iamVjdCBpcyBhIHByb21pc2UuXG4gICAqL1xuICBzdGF0aWMgaXNQcm9taXNlKG9iamVjdCkge1xuICAgIHJldHVybiBvYmplY3QgaW5zdGFuY2VvZiBQcm9taXNlO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gb2JqZWN0IHdpdGggYWxsIHBlcm11dGF0aW9ucyBvZiB0aGUgb3JpZ2luYWwga2V5cy5cbiAgICogRm9yIGV4YW1wbGUsIHRoaXMgZGVmaW5pdGlvbjpcbiAgICogYGBgXG4gICAqIHtcbiAgICogICBhOiBbdHJ1ZSwgZmFsc2VdLFxuICAgKiAgIGI6IFsxLCAyXSxcbiAgICogICBjOiBbJ3gnXVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBwZXJtdXRhdGVzIHRvOlxuICAgKiBgYGBcbiAgICogW1xuICAgKiAgIHsgYTogdHJ1ZSwgYjogMSwgYzogJ3gnIH0sXG4gICAqICAgeyBhOiB0cnVlLCBiOiAyLCBjOiAneCcgfSxcbiAgICogICB7IGE6IGZhbHNlLCBiOiAxLCBjOiAneCcgfSxcbiAgICogICB7IGE6IGZhbHNlLCBiOiAyLCBjOiAneCcgfVxuICAgKiBdXG4gICAqIGBgYFxuICAgKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcGVybXV0YXRlLlxuICAgKiBAcGFyYW0ge0ludGVnZXJ9IFtpbmRleD0wXSBUaGUgY3VycmVudCBrZXkgaW5kZXguXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBbY3VycmVudD17fV0gVGhlIGN1cnJlbnQgcmVzdWx0IGVudHJ5IGJlaW5nIGNvbXBvc2VkLlxuICAgKiBAcGFyYW0ge0FycmF5fSBbcmVzdWx0cz1bXV0gVGhlIHJlc3VsdGluZyBhcnJheSBvZiBwZXJtdXRhdGlvbnMuXG4gICAqL1xuICBzdGF0aWMgZ2V0T2JqZWN0S2V5UGVybXV0YXRpb25zKG9iamVjdCwgaW5kZXggPSAwLCBjdXJyZW50ID0ge30sIHJlc3VsdHMgPSBbXSkge1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhvYmplY3QpO1xuICAgIGNvbnN0IGtleSA9IGtleXNbaW5kZXhdO1xuICAgIGNvbnN0IHZhbHVlcyA9IG9iamVjdFtrZXldO1xuXG4gICAgZm9yIChjb25zdCB2YWx1ZSBvZiB2YWx1ZXMpIHtcbiAgICAgIGN1cnJlbnRba2V5XSA9IHZhbHVlO1xuICAgICAgY29uc3QgbmV4dEluZGV4ID0gaW5kZXggKyAxO1xuXG4gICAgICBpZiAobmV4dEluZGV4IDwga2V5cy5sZW5ndGgpIHtcbiAgICAgICAgVXRpbHMuZ2V0T2JqZWN0S2V5UGVybXV0YXRpb25zKG9iamVjdCwgbmV4dEluZGV4LCBjdXJyZW50LCByZXN1bHRzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IE9iamVjdC5hc3NpZ24oe30sIGN1cnJlbnQpO1xuICAgICAgICByZXN1bHRzLnB1c2gocmVzdWx0KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdHM7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIHBhcmFtZXRlcnMgYW5kIHRocm93cyBpZiBhIHBhcmFtZXRlciBpcyBpbnZhbGlkLlxuICAgKiBFeGFtcGxlIHBhcmFtZXRlciB0eXBlcyBzeW50YXg6XG4gICAqIGBgYFxuICAgKiB7XG4gICAqICAgcGFyYW1ldGVyTmFtZToge1xuICAgKiAgICAgIHQ6ICdib29sZWFuJyxcbiAgICogICAgICB2OiBpc0Jvb2xlYW4sXG4gICAqICAgICAgbzogdHJ1ZVxuICAgKiAgIH0sXG4gICAqICAgLi4uXG4gICAqIH1cbiAgICogYGBgXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbXMgVGhlIHBhcmFtZXRlcnMgdG8gdmFsaWRhdGUuXG4gICAqIEBwYXJhbSB7QXJyYXk8T2JqZWN0Pn0gdHlwZXMgVGhlIHBhcmFtZXRlciB0eXBlcyB1c2VkIGZvciB2YWxpZGF0aW9uLlxuICAgKiBAcGFyYW0ge09iamVjdH0gdHlwZXMudCBUaGUgcGFyYW1ldGVyIHR5cGU7IHVzZWQgZm9yIGVycm9yIG1lc3NhZ2UsIG5vdCBmb3IgdmFsaWRhdGlvbi5cbiAgICogQHBhcmFtIHtPYmplY3R9IHR5cGVzLnYgVGhlIGZ1bmN0aW9uIHRvIHZhbGlkYXRlIHRoZSBwYXJhbWV0ZXIgdmFsdWUuXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW3R5cGVzLm89ZmFsc2VdIElzIHRydWUgaWYgdGhlIHBhcmFtZXRlciBpcyBvcHRpb25hbC5cbiAgICovXG4gIHN0YXRpYyB2YWxpZGF0ZVBhcmFtcyhwYXJhbXMsIHR5cGVzKSB7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMocGFyYW1zKSkge1xuICAgICAgY29uc3QgdHlwZSA9IHR5cGVzW2tleV07XG4gICAgICBjb25zdCBpc09wdGlvbmFsID0gISF0eXBlLm87XG4gICAgICBjb25zdCBwYXJhbSA9IHBhcmFtc1trZXldO1xuICAgICAgaWYgKCEoaXNPcHRpb25hbCAmJiBwYXJhbSA9PSBudWxsKSAmJiAhdHlwZS52KHBhcmFtKSkge1xuICAgICAgICB0aHJvdyBgSW52YWxpZCBwYXJhbWV0ZXIgJHtrZXl9IG11c3QgYmUgb2YgdHlwZSAke3R5cGUudH0gYnV0IGlzICR7dHlwZW9mIHBhcmFtfWA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGVzIHRoZSByZWxhdGl2ZSBkYXRlIGJhc2VkIG9uIGEgc3RyaW5nLlxuICAgKiBAcGFyYW0ge1N0cmluZ30gdGV4dCBUaGUgc3RyaW5nIHRvIGludGVycHJldCB0aGUgZGF0ZSBmcm9tLlxuICAgKiBAcGFyYW0ge0RhdGV9IG5vdyBUaGUgZGF0ZSB0aGUgc3RyaW5nIGlzIGNvbXBhcmluZyBhZ2FpbnN0LlxuICAgKiBAcmV0dXJucyB7T2JqZWN0fSBUaGUgcmVsYXRpdmUgZGF0ZSBvYmplY3QuXG4gICAqKi9cbiAgc3RhdGljIHJlbGF0aXZlVGltZVRvRGF0ZSh0ZXh0LCBub3cgPSBuZXcgRGF0ZSgpKSB7XG4gICAgdGV4dCA9IHRleHQudG9Mb3dlckNhc2UoKTtcbiAgICBsZXQgcGFydHMgPSB0ZXh0LnNwbGl0KCcgJyk7XG5cbiAgICAvLyBGaWx0ZXIgb3V0IHdoaXRlc3BhY2VcbiAgICBwYXJ0cyA9IHBhcnRzLmZpbHRlcihwYXJ0ID0+IHBhcnQgIT09ICcnKTtcblxuICAgIGNvbnN0IGZ1dHVyZSA9IHBhcnRzWzBdID09PSAnaW4nO1xuICAgIGNvbnN0IHBhc3QgPSBwYXJ0c1twYXJ0cy5sZW5ndGggLSAxXSA9PT0gJ2Fnbyc7XG5cbiAgICBpZiAoIWZ1dHVyZSAmJiAhcGFzdCAmJiB0ZXh0ICE9PSAnbm93Jykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3RhdHVzOiAnZXJyb3InLFxuICAgICAgICBpbmZvOiBcIlRpbWUgc2hvdWxkIGVpdGhlciBzdGFydCB3aXRoICdpbicgb3IgZW5kIHdpdGggJ2FnbydcIixcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKGZ1dHVyZSAmJiBwYXN0KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdGF0dXM6ICdlcnJvcicsXG4gICAgICAgIGluZm86IFwiVGltZSBjYW5ub3QgaGF2ZSBib3RoICdpbicgYW5kICdhZ28nXCIsXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIHN0cmlwIHRoZSAnYWdvJyBvciAnaW4nXG4gICAgaWYgKGZ1dHVyZSkge1xuICAgICAgcGFydHMgPSBwYXJ0cy5zbGljZSgxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gcGFzdFxuICAgICAgcGFydHMgPSBwYXJ0cy5zbGljZSgwLCBwYXJ0cy5sZW5ndGggLSAxKTtcbiAgICB9XG5cbiAgICBpZiAocGFydHMubGVuZ3RoICUgMiAhPT0gMCAmJiB0ZXh0ICE9PSAnbm93Jykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3RhdHVzOiAnZXJyb3InLFxuICAgICAgICBpbmZvOiAnSW52YWxpZCB0aW1lIHN0cmluZy4gRGFuZ2xpbmcgdW5pdCBvciBudW1iZXIuJyxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgcGFpcnMgPSBbXTtcbiAgICB3aGlsZSAocGFydHMubGVuZ3RoKSB7XG4gICAgICBwYWlycy5wdXNoKFtwYXJ0cy5zaGlmdCgpLCBwYXJ0cy5zaGlmdCgpXSk7XG4gICAgfVxuXG4gICAgbGV0IHNlY29uZHMgPSAwO1xuICAgIGZvciAoY29uc3QgW251bSwgaW50ZXJ2YWxdIG9mIHBhaXJzKSB7XG4gICAgICBjb25zdCB2YWwgPSBOdW1iZXIobnVtKTtcbiAgICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcih2YWwpKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgc3RhdHVzOiAnZXJyb3InLFxuICAgICAgICAgIGluZm86IGAnJHtudW19JyBpcyBub3QgYW4gaW50ZWdlci5gLFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBzd2l0Y2ggKGludGVydmFsKSB7XG4gICAgICAgIGNhc2UgJ3lyJzpcbiAgICAgICAgY2FzZSAneXJzJzpcbiAgICAgICAgY2FzZSAneWVhcic6XG4gICAgICAgIGNhc2UgJ3llYXJzJzpcbiAgICAgICAgICBzZWNvbmRzICs9IHZhbCAqIDMxNTM2MDAwOyAvLyAzNjUgKiAyNCAqIDYwICogNjBcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICd3ayc6XG4gICAgICAgIGNhc2UgJ3drcyc6XG4gICAgICAgIGNhc2UgJ3dlZWsnOlxuICAgICAgICBjYXNlICd3ZWVrcyc6XG4gICAgICAgICAgc2Vjb25kcyArPSB2YWwgKiA2MDQ4MDA7IC8vIDcgKiAyNCAqIDYwICogNjBcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdkJzpcbiAgICAgICAgY2FzZSAnZGF5JzpcbiAgICAgICAgY2FzZSAnZGF5cyc6XG4gICAgICAgICAgc2Vjb25kcyArPSB2YWwgKiA4NjQwMDsgLy8gMjQgKiA2MCAqIDYwXG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnaHInOlxuICAgICAgICBjYXNlICdocnMnOlxuICAgICAgICBjYXNlICdob3VyJzpcbiAgICAgICAgY2FzZSAnaG91cnMnOlxuICAgICAgICAgIHNlY29uZHMgKz0gdmFsICogMzYwMDsgLy8gNjAgKiA2MFxuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ21pbic6XG4gICAgICAgIGNhc2UgJ21pbnMnOlxuICAgICAgICBjYXNlICdtaW51dGUnOlxuICAgICAgICBjYXNlICdtaW51dGVzJzpcbiAgICAgICAgICBzZWNvbmRzICs9IHZhbCAqIDYwO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ3NlYyc6XG4gICAgICAgIGNhc2UgJ3NlY3MnOlxuICAgICAgICBjYXNlICdzZWNvbmQnOlxuICAgICAgICBjYXNlICdzZWNvbmRzJzpcbiAgICAgICAgICBzZWNvbmRzICs9IHZhbDtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGF0dXM6ICdlcnJvcicsXG4gICAgICAgICAgICBpbmZvOiBgSW52YWxpZCBpbnRlcnZhbDogJyR7aW50ZXJ2YWx9J2AsXG4gICAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBtaWxsaXNlY29uZHMgPSBzZWNvbmRzICogMTAwMDtcbiAgICBpZiAoZnV0dXJlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdGF0dXM6ICdzdWNjZXNzJyxcbiAgICAgICAgaW5mbzogJ2Z1dHVyZScsXG4gICAgICAgIHJlc3VsdDogbmV3IERhdGUobm93LnZhbHVlT2YoKSArIG1pbGxpc2Vjb25kcyksXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAocGFzdCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3RhdHVzOiAnc3VjY2VzcycsXG4gICAgICAgIGluZm86ICdwYXN0JyxcbiAgICAgICAgcmVzdWx0OiBuZXcgRGF0ZShub3cudmFsdWVPZigpIC0gbWlsbGlzZWNvbmRzKSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHN0YXR1czogJ3N1Y2Nlc3MnLFxuICAgICAgICBpbmZvOiAncHJlc2VudCcsXG4gICAgICAgIHJlc3VsdDogbmV3IERhdGUobm93LnZhbHVlT2YoKSksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZWVwLXNjYW5zIGFuIG9iamVjdCBmb3IgYSBtYXRjaGluZyBrZXkvdmFsdWUgZGVmaW5pdGlvbi5cbiAgICogQHBhcmFtIHtPYmplY3R9IG9iaiBUaGUgb2JqZWN0IHRvIHNjYW4uXG4gICAqIEBwYXJhbSB7U3RyaW5nIHwgdW5kZWZpbmVkfSBrZXkgVGhlIGtleSB0byBtYXRjaCwgb3IgdW5kZWZpbmVkIGlmIG9ubHkgdGhlIHZhbHVlIHNob3VsZCBiZSBtYXRjaGVkLlxuICAgKiBAcGFyYW0ge2FueSB8IHVuZGVmaW5lZH0gdmFsdWUgVGhlIHZhbHVlIHRvIG1hdGNoLCBvciB1bmRlZmluZWQgaWYgb25seSB0aGUga2V5IHNob3VsZCBiZSBtYXRjaGVkLlxuICAgKiBAcmV0dXJucyB7Qm9vbGVhbn0gVHJ1ZSBpZiBhIG1hdGNoIHdhcyBmb3VuZCwgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgKi9cbiAgc3RhdGljIG9iamVjdENvbnRhaW5zS2V5VmFsdWUob2JqLCBrZXksIHZhbHVlKSB7XG4gICAgY29uc3QgaXNNYXRjaCA9IChhLCBiKSA9PiAodHlwZW9mIGEgPT09ICdzdHJpbmcnICYmIG5ldyBSZWdFeHAoYikudGVzdChhKSkgfHwgYSA9PT0gYjtcbiAgICBjb25zdCBpc0tleU1hdGNoID0gayA9PiBpc01hdGNoKGssIGtleSk7XG4gICAgY29uc3QgaXNWYWx1ZU1hdGNoID0gdiA9PiBpc01hdGNoKHYsIHZhbHVlKTtcbiAgICBmb3IgKGNvbnN0IFtrLCB2XSBvZiBPYmplY3QuZW50cmllcyhvYmopKSB7XG4gICAgICBpZiAoa2V5ICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgPT09IHVuZGVmaW5lZCAmJiBpc0tleU1hdGNoKGspKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIGlmIChrZXkgPT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIGlzVmFsdWVNYXRjaCh2KSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAoa2V5ICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiBpc0tleU1hdGNoKGspICYmIGlzVmFsdWVNYXRjaCh2KSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmIChbJ1tvYmplY3QgT2JqZWN0XScsICdbb2JqZWN0IEFycmF5XSddLmluY2x1ZGVzKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2KSkpIHtcbiAgICAgICAgcmV0dXJuIFV0aWxzLm9iamVjdENvbnRhaW5zS2V5VmFsdWUodiwga2V5LCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHN0YXRpYyBjaGVja1Byb2hpYml0ZWRLZXl3b3Jkcyhjb25maWcsIGRhdGEpIHtcbiAgICBpZiAoY29uZmlnPy5yZXF1ZXN0S2V5d29yZERlbnlsaXN0KSB7XG4gICAgICAvLyBTY2FuIHJlcXVlc3QgZGF0YSBmb3IgZGVuaWVkIGtleXdvcmRzXG4gICAgICBmb3IgKGNvbnN0IGtleXdvcmQgb2YgY29uZmlnLnJlcXVlc3RLZXl3b3JkRGVueWxpc3QpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBVdGlscy5vYmplY3RDb250YWluc0tleVZhbHVlKGRhdGEsIGtleXdvcmQua2V5LCBrZXl3b3JkLnZhbHVlKTtcbiAgICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgICAgdGhyb3cgYFByb2hpYml0ZWQga2V5d29yZCBpbiByZXF1ZXN0IGRhdGE6ICR7SlNPTi5zdHJpbmdpZnkoa2V5d29yZCl9LmA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBVdGlscztcbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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
|
|
369
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXRoIiwicmVxdWlyZSIsImZzIiwicHJvbWlzZXMiLCJVdGlscyIsImdldExvY2FsaXplZFBhdGgiLCJkZWZhdWx0UGF0aCIsImxvY2FsZSIsImZpbGUiLCJiYXNlbmFtZSIsImJhc2VQYXRoIiwiZGlybmFtZSIsImxvY2FsZVBhdGgiLCJqb2luIiwibG9jYWxlRmlsZUV4aXN0cyIsImZpbGVFeGlzdHMiLCJzdWJkaXIiLCJsYW5ndWFnZSIsInNwbGl0IiwibGFuZ3VhZ2VQYXRoIiwibGFuZ3VhZ2VGaWxlRXhpc3RzIiwiYWNjZXNzIiwiZSIsImlzUGF0aCIsInMiLCJ0ZXN0IiwiZmxhdHRlbk9iamVjdCIsIm9iaiIsInBhcmVudEtleSIsImRlbGltaXRlciIsInJlc3VsdCIsImtleSIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIm5ld0tleSIsImlzUHJvbWlzZSIsIm9iamVjdCIsIlByb21pc2UiLCJnZXRPYmplY3RLZXlQZXJtdXRhdGlvbnMiLCJpbmRleCIsImN1cnJlbnQiLCJyZXN1bHRzIiwia2V5cyIsInZhbHVlcyIsInZhbHVlIiwibmV4dEluZGV4IiwibGVuZ3RoIiwiYXNzaWduIiwicHVzaCIsInZhbGlkYXRlUGFyYW1zIiwicGFyYW1zIiwidHlwZXMiLCJ0eXBlIiwiaXNPcHRpb25hbCIsIm8iLCJwYXJhbSIsInYiLCJ0IiwicmVsYXRpdmVUaW1lVG9EYXRlIiwidGV4dCIsIm5vdyIsIkRhdGUiLCJ0b0xvd2VyQ2FzZSIsInBhcnRzIiwiZmlsdGVyIiwicGFydCIsImZ1dHVyZSIsInBhc3QiLCJzdGF0dXMiLCJpbmZvIiwic2xpY2UiLCJwYWlycyIsInNoaWZ0Iiwic2Vjb25kcyIsIm51bSIsImludGVydmFsIiwidmFsIiwiTnVtYmVyIiwiaXNJbnRlZ2VyIiwibWlsbGlzZWNvbmRzIiwidmFsdWVPZiIsIm9iamVjdENvbnRhaW5zS2V5VmFsdWUiLCJpc01hdGNoIiwiYSIsImIiLCJSZWdFeHAiLCJpc0tleU1hdGNoIiwiayIsImlzVmFsdWVNYXRjaCIsImVudHJpZXMiLCJ1bmRlZmluZWQiLCJpbmNsdWRlcyIsInRvU3RyaW5nIiwiY2hlY2tQcm9oaWJpdGVkS2V5d29yZHMiLCJjb25maWciLCJkYXRhIiwicmVxdWVzdEtleXdvcmREZW55bGlzdCIsImtleXdvcmQiLCJtYXRjaCIsIkpTT04iLCJzdHJpbmdpZnkiLCJtb2R1bGUiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL1V0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogdXRpbHMuanNcbiAqIEBmaWxlIEdlbmVyYWwgcHVycG9zZSB1dGlsaXRpZXNcbiAqIEBkZXNjcmlwdGlvbiBHZW5lcmFsIHB1cnBvc2UgdXRpbGl0aWVzLlxuICovXG5cbmNvbnN0IHBhdGggPSByZXF1aXJlKCdwYXRoJyk7XG5jb25zdCBmcyA9IHJlcXVpcmUoJ2ZzJykucHJvbWlzZXM7XG5cbi8qKlxuICogVGhlIGdlbmVyYWwgcHVycG9zZSB1dGlsaXRpZXMuXG4gKi9cbmNsYXNzIFV0aWxzIHtcbiAgLyoqXG4gICAqIEBmdW5jdGlvbiBnZXRMb2NhbGl6ZWRQYXRoXG4gICAqIEBkZXNjcmlwdGlvbiBSZXR1cm5zIGEgbG9jYWxpemVkIGZpbGUgcGF0aCBhY2NvcmluZyB0byB0aGUgbG9jYWxlLlxuICAgKlxuICAgKiBMb2NhbGl6ZWQgZmlsZXMgYXJlIHNlYXJjaGVkIGluIHN1YmZvbGRlcnMgb2YgYSBnaXZlbiBwYXRoLCBlLmcuXG4gICAqXG4gICAqIHJvb3QvXG4gICAqIOKUnOKUgOKUgCBiYXNlLyAgICAgICAgICAgICAgICAgICAgLy8gYmFzZSBwYXRoIHRvIGZpbGVzXG4gICAqIOKUgiAgIOKUnOKUgOKUgCBleGFtcGxlLmh0bWwgICAgICAgICAvLyBkZWZhdWx0IGZpbGVcbiAgICog4pSCICAg4pSU4pSA4pSAIGRlLyAgICAgICAgICAgICAgICAgIC8vIGRlIGxhbmd1YWdlIGZvbGRlclxuICAgKiDilIIgICDilIIgICDilJTilIDilIAgZXhhbXBsZS5odG1sICAgICAvLyBkZSBsb2NhbGl6ZWQgZmlsZVxuICAgKiDilIIgICDilJTilIDilIAgZGUtQVQvICAgICAgICAgICAgICAgLy8gZGUtQVQgbG9jYWxlIGZvbGRlclxuICAgKiDilIIgICDilIIgICDilJTilIDilIAgZXhhbXBsZS5odG1sICAgICAvLyBkZS1BVCBsb2NhbGl6ZWQgZmlsZVxuICAgKlxuICAgKiBGaWxlcyBhcmUgbWF0Y2hlZCB3aXRoIHRoZSBsb2NhbGUgaW4gdGhlIGZvbGxvd2luZyBvcmRlcjpcbiAgICogMS4gTG9jYWxlIG1hdGNoLCBlLmcuIGxvY2FsZSBgZGUtQVRgIG1hdGNoZXMgZmlsZSBpbiBmb2xkZXIgYGRlLUFUYC5cbiAgICogMi4gTGFuZ3VhZ2UgbWF0Y2gsIGUuZy4gbG9jYWxlIGBkZS1BVGAgbWF0Y2hlcyBmaWxlIGluIGZvbGRlciBgZGVgLlxuICAgKiAzLiBEZWZhdWx0OyBmaWxlIGluIGJhc2UgZm9sZGVyIGlzIHJldHVybmVkLlxuICAgKlxuICAgKiBAcGFyYW0ge1N0cmluZ30gZGVmYXVsdFBhdGggVGhlIGFic29sdXRlIGZpbGUgcGF0aCwgd2hpY2ggaXMgYWxzb1xuICAgKiB0aGUgZGVmYXVsdCBwYXRoIHJldHVybmVkIGlmIGxvY2FsaXphdGlvbiBpcyBub3QgYXZhaWxhYmxlLlxuICAgKiBAcGFyYW0ge1N0cmluZ30gbG9jYWxlIFRoZSBsb2NhbGUuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPE9iamVjdD59IFRoZSBvYmplY3QgY29udGFpbnM6XG4gICAqIC0gYHBhdGhgOiBUaGUgcGF0aCB0byB0aGUgbG9jYWxpemVkIGZpbGUsIG9yIHRoZSBvcmlnaW5hbCBwYXRoIGlmXG4gICAqICAgbG9jYWxpemF0aW9uIGlzIG5vdCBhdmFpbGFibGUuXG4gICAqIC0gYHN1YmRpcmA6IFRoZSBzdWJkaXJlY3Rvcnkgb2YgdGhlIGxvY2FsaXplZCBmaWxlLCBvciB1bmRlZmluZWQgaWZcbiAgICogICB0aGVyZSBpcyBubyBtYXRjaGluZyBsb2NhbGl6ZWQgZmlsZS5cbiAgICovXG4gIHN0YXRpYyBhc3luYyBnZXRMb2NhbGl6ZWRQYXRoKGRlZmF1bHRQYXRoLCBsb2NhbGUpIHtcbiAgICAvLyBHZXQgZmlsZSBuYW1lIGFuZCBwYXRoc1xuICAgIGNvbnN0IGZpbGUgPSBwYXRoLmJhc2VuYW1lKGRlZmF1bHRQYXRoKTtcbiAgICBjb25zdCBiYXNlUGF0aCA9IHBhdGguZGlybmFtZShkZWZhdWx0UGF0aCk7XG5cbiAgICAvLyBJZiBsb2NhbGUgaXMgbm90IHNldCByZXR1cm4gZGVmYXVsdCBmaWxlXG4gICAgaWYgKCFsb2NhbGUpIHtcbiAgICAgIHJldHVybiB7IHBhdGg6IGRlZmF1bHRQYXRoIH07XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgZmlsZSBmb3IgbG9jYWxlIGV4aXN0c1xuICAgIGNvbnN0IGxvY2FsZVBhdGggPSBwYXRoLmpvaW4oYmFzZVBhdGgsIGxvY2FsZSwgZmlsZSk7XG4gICAgY29uc3QgbG9jYWxlRmlsZUV4aXN0cyA9IGF3YWl0IFV0aWxzLmZpbGVFeGlzdHMobG9jYWxlUGF0aCk7XG5cbiAgICAvLyBJZiBmaWxlIGZvciBsb2NhbGUgZXhpc3RzIHJldHVybiBmaWxlXG4gICAgaWYgKGxvY2FsZUZpbGVFeGlzdHMpIHtcbiAgICAgIHJldHVybiB7IHBhdGg6IGxvY2FsZVBhdGgsIHN1YmRpcjogbG9jYWxlIH07XG4gICAgfVxuXG4gICAgLy8gQ2hlY2sgZmlsZSBmb3IgbGFuZ3VhZ2UgZXhpc3RzXG4gICAgY29uc3QgbGFuZ3VhZ2UgPSBsb2NhbGUuc3BsaXQoJy0nKVswXTtcbiAgICBjb25zdCBsYW5ndWFnZVBhdGggPSBwYXRoLmpvaW4oYmFzZVBhdGgsIGxhbmd1YWdlLCBmaWxlKTtcbiAgICBjb25zdCBsYW5ndWFnZUZpbGVFeGlzdHMgPSBhd2FpdCBVdGlscy5maWxlRXhpc3RzKGxhbmd1YWdlUGF0aCk7XG5cbiAgICAvLyBJZiBmaWxlIGZvciBsYW5ndWFnZSBleGlzdHMgcmV0dXJuIGZpbGVcbiAgICBpZiAobGFuZ3VhZ2VGaWxlRXhpc3RzKSB7XG4gICAgICByZXR1cm4geyBwYXRoOiBsYW5ndWFnZVBhdGgsIHN1YmRpcjogbGFuZ3VhZ2UgfTtcbiAgICB9XG5cbiAgICAvLyBSZXR1cm4gZGVmYXVsdCBmaWxlXG4gICAgcmV0dXJuIHsgcGF0aDogZGVmYXVsdFBhdGggfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZnVuY3Rpb24gZmlsZUV4aXN0c1xuICAgKiBAZGVzY3JpcHRpb24gQ2hlY2tzIHdoZXRoZXIgYSBmaWxlIGV4aXN0cy5cbiAgICogQHBhcmFtIHtTdHJpbmd9IHBhdGggVGhlIGZpbGUgcGF0aC5cbiAgICogQHJldHVybnMge1Byb21pc2U8Qm9vbGVhbj59IElzIHRydWUgaWYgdGhlIGZpbGUgY2FuIGJlIGFjY2Vzc2VkLCBmYWxzZSBvdGhlcndpc2UuXG4gICAqL1xuICBzdGF0aWMgYXN5bmMgZmlsZUV4aXN0cyhwYXRoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGZzLmFjY2VzcyhwYXRoKTtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGZ1bmN0aW9uIGlzUGF0aFxuICAgKiBAZGVzY3JpcHRpb24gRXZhbHVhdGVzIHdoZXRoZXIgYSBzdHJpbmcgaXMgYSBmaWxlIHBhdGggKGFzIG9wcG9zZWQgdG8gYSBVUkwgZm9yIGV4YW1wbGUpLlxuICAgKiBAcGFyYW0ge1N0cmluZ30gcyBUaGUgc3RyaW5nIHRvIGV2YWx1YXRlLlxuICAgKiBAcmV0dXJucyB7Qm9vbGVhbn0gUmV0dXJucyB0cnVlIGlmIHRoZSBldmFsdWF0ZWQgc3RyaW5nIGlzIGEgcGF0aC5cbiAgICovXG4gIHN0YXRpYyBpc1BhdGgocykge1xuICAgIHJldHVybiAvKF5cXC8pfCheXFwuXFwvKXwoXlxcLlxcLlxcLykvLnRlc3Qocyk7XG4gIH1cblxuICAvKipcbiAgICogRmxhdHRlbnMgYW4gb2JqZWN0IGFuZCBjcmF0ZXMgbmV3IGtleXMgd2l0aCBjdXN0b20gZGVsaW1pdGVycy5cbiAgICogQHBhcmFtIHtPYmplY3R9IG9iaiBUaGUgb2JqZWN0IHRvIGZsYXR0ZW4uXG4gICAqIEBwYXJhbSB7U3RyaW5nfSBbZGVsaW1pdGVyPScuJ10gVGhlIGRlbGltaXRlciBvZiB0aGUgbmV3bHkgZ2VuZXJhdGVkIGtleXMuXG4gICAqIEBwYXJhbSB7T2JqZWN0fSByZXN1bHRcbiAgICogQHJldHVybnMge09iamVjdH0gVGhlIGZsYXR0ZW5lZCBvYmplY3QuXG4gICAqKi9cbiAgc3RhdGljIGZsYXR0ZW5PYmplY3Qob2JqLCBwYXJlbnRLZXksIGRlbGltaXRlciA9ICcuJywgcmVzdWx0ID0ge30pIHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqLCBrZXkpKSB7XG4gICAgICAgIGNvbnN0IG5ld0tleSA9IHBhcmVudEtleSA/IHBhcmVudEtleSArIGRlbGltaXRlciArIGtleSA6IGtleTtcblxuICAgICAgICBpZiAodHlwZW9mIG9ialtrZXldID09PSAnb2JqZWN0JyAmJiBvYmpba2V5XSAhPT0gbnVsbCkge1xuICAgICAgICAgIHRoaXMuZmxhdHRlbk9iamVjdChvYmpba2V5XSwgbmV3S2V5LCBkZWxpbWl0ZXIsIHJlc3VsdCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0W25ld0tleV0gPSBvYmpba2V5XTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciBhbiBvYmplY3QgaXMgYSBQcm9taXNlLlxuICAgKiBAcGFyYW0ge2FueX0gb2JqZWN0IFRoZSBvYmplY3QgdG8gdmFsaWRhdGUuXG4gICAqIEByZXR1cm5zIHtCb29sZWFufSBSZXR1cm5zIHRydWUgaWYgdGhlIG9iamVjdCBpcyBhIHByb21pc2UuXG4gICAqL1xuICBzdGF0aWMgaXNQcm9taXNlKG9iamVjdCkge1xuICAgIHJldHVybiBvYmplY3QgaW5zdGFuY2VvZiBQcm9taXNlO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gb2JqZWN0IHdpdGggYWxsIHBlcm11dGF0aW9ucyBvZiB0aGUgb3JpZ2luYWwga2V5cy5cbiAgICogRm9yIGV4YW1wbGUsIHRoaXMgZGVmaW5pdGlvbjpcbiAgICogYGBgXG4gICAqIHtcbiAgICogICBhOiBbdHJ1ZSwgZmFsc2VdLFxuICAgKiAgIGI6IFsxLCAyXSxcbiAgICogICBjOiBbJ3gnXVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBwZXJtdXRhdGVzIHRvOlxuICAgKiBgYGBcbiAgICogW1xuICAgKiAgIHsgYTogdHJ1ZSwgYjogMSwgYzogJ3gnIH0sXG4gICAqICAgeyBhOiB0cnVlLCBiOiAyLCBjOiAneCcgfSxcbiAgICogICB7IGE6IGZhbHNlLCBiOiAxLCBjOiAneCcgfSxcbiAgICogICB7IGE6IGZhbHNlLCBiOiAyLCBjOiAneCcgfVxuICAgKiBdXG4gICAqIGBgYFxuICAgKiBAcGFyYW0ge09iamVjdH0gb2JqZWN0IFRoZSBvYmplY3QgdG8gcGVybXV0YXRlLlxuICAgKiBAcGFyYW0ge0ludGVnZXJ9IFtpbmRleD0wXSBUaGUgY3VycmVudCBrZXkgaW5kZXguXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBbY3VycmVudD17fV0gVGhlIGN1cnJlbnQgcmVzdWx0IGVudHJ5IGJlaW5nIGNvbXBvc2VkLlxuICAgKiBAcGFyYW0ge0FycmF5fSBbcmVzdWx0cz1bXV0gVGhlIHJlc3VsdGluZyBhcnJheSBvZiBwZXJtdXRhdGlvbnMuXG4gICAqL1xuICBzdGF0aWMgZ2V0T2JqZWN0S2V5UGVybXV0YXRpb25zKG9iamVjdCwgaW5kZXggPSAwLCBjdXJyZW50ID0ge30sIHJlc3VsdHMgPSBbXSkge1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhvYmplY3QpO1xuICAgIGNvbnN0IGtleSA9IGtleXNbaW5kZXhdO1xuICAgIGNvbnN0IHZhbHVlcyA9IG9iamVjdFtrZXldO1xuXG4gICAgZm9yIChjb25zdCB2YWx1ZSBvZiB2YWx1ZXMpIHtcbiAgICAgIGN1cnJlbnRba2V5XSA9IHZhbHVlO1xuICAgICAgY29uc3QgbmV4dEluZGV4ID0gaW5kZXggKyAxO1xuXG4gICAgICBpZiAobmV4dEluZGV4IDwga2V5cy5sZW5ndGgpIHtcbiAgICAgICAgVXRpbHMuZ2V0T2JqZWN0S2V5UGVybXV0YXRpb25zKG9iamVjdCwgbmV4dEluZGV4LCBjdXJyZW50LCByZXN1bHRzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IE9iamVjdC5hc3NpZ24oe30sIGN1cnJlbnQpO1xuICAgICAgICByZXN1bHRzLnB1c2gocmVzdWx0KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdHM7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIHBhcmFtZXRlcnMgYW5kIHRocm93cyBpZiBhIHBhcmFtZXRlciBpcyBpbnZhbGlkLlxuICAgKiBFeGFtcGxlIHBhcmFtZXRlciB0eXBlcyBzeW50YXg6XG4gICAqIGBgYFxuICAgKiB7XG4gICAqICAgcGFyYW1ldGVyTmFtZToge1xuICAgKiAgICAgIHQ6ICdib29sZWFuJyxcbiAgICogICAgICB2OiBpc0Jvb2xlYW4sXG4gICAqICAgICAgbzogdHJ1ZVxuICAgKiAgIH0sXG4gICAqICAgLi4uXG4gICAqIH1cbiAgICogYGBgXG4gICAqIEBwYXJhbSB7T2JqZWN0fSBwYXJhbXMgVGhlIHBhcmFtZXRlcnMgdG8gdmFsaWRhdGUuXG4gICAqIEBwYXJhbSB7QXJyYXk8T2JqZWN0Pn0gdHlwZXMgVGhlIHBhcmFtZXRlciB0eXBlcyB1c2VkIGZvciB2YWxpZGF0aW9uLlxuICAgKiBAcGFyYW0ge09iamVjdH0gdHlwZXMudCBUaGUgcGFyYW1ldGVyIHR5cGU7IHVzZWQgZm9yIGVycm9yIG1lc3NhZ2UsIG5vdCBmb3IgdmFsaWRhdGlvbi5cbiAgICogQHBhcmFtIHtPYmplY3R9IHR5cGVzLnYgVGhlIGZ1bmN0aW9uIHRvIHZhbGlkYXRlIHRoZSBwYXJhbWV0ZXIgdmFsdWUuXG4gICAqIEBwYXJhbSB7Qm9vbGVhbn0gW3R5cGVzLm89ZmFsc2VdIElzIHRydWUgaWYgdGhlIHBhcmFtZXRlciBpcyBvcHRpb25hbC5cbiAgICovXG4gIHN0YXRpYyB2YWxpZGF0ZVBhcmFtcyhwYXJhbXMsIHR5cGVzKSB7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMocGFyYW1zKSkge1xuICAgICAgY29uc3QgdHlwZSA9IHR5cGVzW2tleV07XG4gICAgICBjb25zdCBpc09wdGlvbmFsID0gISF0eXBlLm87XG4gICAgICBjb25zdCBwYXJhbSA9IHBhcmFtc1trZXldO1xuICAgICAgaWYgKCEoaXNPcHRpb25hbCAmJiBwYXJhbSA9PSBudWxsKSAmJiAhdHlwZS52KHBhcmFtKSkge1xuICAgICAgICB0aHJvdyBgSW52YWxpZCBwYXJhbWV0ZXIgJHtrZXl9IG11c3QgYmUgb2YgdHlwZSAke3R5cGUudH0gYnV0IGlzICR7dHlwZW9mIHBhcmFtfWA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGVzIHRoZSByZWxhdGl2ZSBkYXRlIGJhc2VkIG9uIGEgc3RyaW5nLlxuICAgKiBAcGFyYW0ge1N0cmluZ30gdGV4dCBUaGUgc3RyaW5nIHRvIGludGVycHJldCB0aGUgZGF0ZSBmcm9tLlxuICAgKiBAcGFyYW0ge0RhdGV9IG5vdyBUaGUgZGF0ZSB0aGUgc3RyaW5nIGlzIGNvbXBhcmluZyBhZ2FpbnN0LlxuICAgKiBAcmV0dXJucyB7T2JqZWN0fSBUaGUgcmVsYXRpdmUgZGF0ZSBvYmplY3QuXG4gICAqKi9cbiAgc3RhdGljIHJlbGF0aXZlVGltZVRvRGF0ZSh0ZXh0LCBub3cgPSBuZXcgRGF0ZSgpKSB7XG4gICAgdGV4dCA9IHRleHQudG9Mb3dlckNhc2UoKTtcbiAgICBsZXQgcGFydHMgPSB0ZXh0LnNwbGl0KCcgJyk7XG5cbiAgICAvLyBGaWx0ZXIgb3V0IHdoaXRlc3BhY2VcbiAgICBwYXJ0cyA9IHBhcnRzLmZpbHRlcihwYXJ0ID0+IHBhcnQgIT09ICcnKTtcblxuICAgIGNvbnN0IGZ1dHVyZSA9IHBhcnRzWzBdID09PSAnaW4nO1xuICAgIGNvbnN0IHBhc3QgPSBwYXJ0c1twYXJ0cy5sZW5ndGggLSAxXSA9PT0gJ2Fnbyc7XG5cbiAgICBpZiAoIWZ1dHVyZSAmJiAhcGFzdCAmJiB0ZXh0ICE9PSAnbm93Jykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3RhdHVzOiAnZXJyb3InLFxuICAgICAgICBpbmZvOiBcIlRpbWUgc2hvdWxkIGVpdGhlciBzdGFydCB3aXRoICdpbicgb3IgZW5kIHdpdGggJ2FnbydcIixcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKGZ1dHVyZSAmJiBwYXN0KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdGF0dXM6ICdlcnJvcicsXG4gICAgICAgIGluZm86IFwiVGltZSBjYW5ub3QgaGF2ZSBib3RoICdpbicgYW5kICdhZ28nXCIsXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIHN0cmlwIHRoZSAnYWdvJyBvciAnaW4nXG4gICAgaWYgKGZ1dHVyZSkge1xuICAgICAgcGFydHMgPSBwYXJ0cy5zbGljZSgxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gcGFzdFxuICAgICAgcGFydHMgPSBwYXJ0cy5zbGljZSgwLCBwYXJ0cy5sZW5ndGggLSAxKTtcbiAgICB9XG5cbiAgICBpZiAocGFydHMubGVuZ3RoICUgMiAhPT0gMCAmJiB0ZXh0ICE9PSAnbm93Jykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3RhdHVzOiAnZXJyb3InLFxuICAgICAgICBpbmZvOiAnSW52YWxpZCB0aW1lIHN0cmluZy4gRGFuZ2xpbmcgdW5pdCBvciBudW1iZXIuJyxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgcGFpcnMgPSBbXTtcbiAgICB3aGlsZSAocGFydHMubGVuZ3RoKSB7XG4gICAgICBwYWlycy5wdXNoKFtwYXJ0cy5zaGlmdCgpLCBwYXJ0cy5zaGlmdCgpXSk7XG4gICAgfVxuXG4gICAgbGV0IHNlY29uZHMgPSAwO1xuICAgIGZvciAoY29uc3QgW251bSwgaW50ZXJ2YWxdIG9mIHBhaXJzKSB7XG4gICAgICBjb25zdCB2YWwgPSBOdW1iZXIobnVtKTtcbiAgICAgIGlmICghTnVtYmVyLmlzSW50ZWdlcih2YWwpKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgc3RhdHVzOiAnZXJyb3InLFxuICAgICAgICAgIGluZm86IGAnJHtudW19JyBpcyBub3QgYW4gaW50ZWdlci5gLFxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBzd2l0Y2ggKGludGVydmFsKSB7XG4gICAgICAgIGNhc2UgJ3lyJzpcbiAgICAgICAgY2FzZSAneXJzJzpcbiAgICAgICAgY2FzZSAneWVhcic6XG4gICAgICAgIGNhc2UgJ3llYXJzJzpcbiAgICAgICAgICBzZWNvbmRzICs9IHZhbCAqIDMxNTM2MDAwOyAvLyAzNjUgKiAyNCAqIDYwICogNjBcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICd3ayc6XG4gICAgICAgIGNhc2UgJ3drcyc6XG4gICAgICAgIGNhc2UgJ3dlZWsnOlxuICAgICAgICBjYXNlICd3ZWVrcyc6XG4gICAgICAgICAgc2Vjb25kcyArPSB2YWwgKiA2MDQ4MDA7IC8vIDcgKiAyNCAqIDYwICogNjBcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdkJzpcbiAgICAgICAgY2FzZSAnZGF5JzpcbiAgICAgICAgY2FzZSAnZGF5cyc6XG4gICAgICAgICAgc2Vjb25kcyArPSB2YWwgKiA4NjQwMDsgLy8gMjQgKiA2MCAqIDYwXG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnaHInOlxuICAgICAgICBjYXNlICdocnMnOlxuICAgICAgICBjYXNlICdob3VyJzpcbiAgICAgICAgY2FzZSAnaG91cnMnOlxuICAgICAgICAgIHNlY29uZHMgKz0gdmFsICogMzYwMDsgLy8gNjAgKiA2MFxuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ21pbic6XG4gICAgICAgIGNhc2UgJ21pbnMnOlxuICAgICAgICBjYXNlICdtaW51dGUnOlxuICAgICAgICBjYXNlICdtaW51dGVzJzpcbiAgICAgICAgICBzZWNvbmRzICs9IHZhbCAqIDYwO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ3NlYyc6XG4gICAgICAgIGNhc2UgJ3NlY3MnOlxuICAgICAgICBjYXNlICdzZWNvbmQnOlxuICAgICAgICBjYXNlICdzZWNvbmRzJzpcbiAgICAgICAgICBzZWNvbmRzICs9IHZhbDtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGF0dXM6ICdlcnJvcicsXG4gICAgICAgICAgICBpbmZvOiBgSW52YWxpZCBpbnRlcnZhbDogJyR7aW50ZXJ2YWx9J2AsXG4gICAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBtaWxsaXNlY29uZHMgPSBzZWNvbmRzICogMTAwMDtcbiAgICBpZiAoZnV0dXJlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdGF0dXM6ICdzdWNjZXNzJyxcbiAgICAgICAgaW5mbzogJ2Z1dHVyZScsXG4gICAgICAgIHJlc3VsdDogbmV3IERhdGUobm93LnZhbHVlT2YoKSArIG1pbGxpc2Vjb25kcyksXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAocGFzdCkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3RhdHVzOiAnc3VjY2VzcycsXG4gICAgICAgIGluZm86ICdwYXN0JyxcbiAgICAgICAgcmVzdWx0OiBuZXcgRGF0ZShub3cudmFsdWVPZigpIC0gbWlsbGlzZWNvbmRzKSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHN0YXR1czogJ3N1Y2Nlc3MnLFxuICAgICAgICBpbmZvOiAncHJlc2VudCcsXG4gICAgICAgIHJlc3VsdDogbmV3IERhdGUobm93LnZhbHVlT2YoKSksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBEZWVwLXNjYW5zIGFuIG9iamVjdCBmb3IgYSBtYXRjaGluZyBrZXkvdmFsdWUgZGVmaW5pdGlvbi5cbiAgICogQHBhcmFtIHtPYmplY3R9IG9iaiBUaGUgb2JqZWN0IHRvIHNjYW4uXG4gICAqIEBwYXJhbSB7U3RyaW5nIHwgdW5kZWZpbmVkfSBrZXkgVGhlIGtleSB0byBtYXRjaCwgb3IgdW5kZWZpbmVkIGlmIG9ubHkgdGhlIHZhbHVlIHNob3VsZCBiZSBtYXRjaGVkLlxuICAgKiBAcGFyYW0ge2FueSB8IHVuZGVmaW5lZH0gdmFsdWUgVGhlIHZhbHVlIHRvIG1hdGNoLCBvciB1bmRlZmluZWQgaWYgb25seSB0aGUga2V5IHNob3VsZCBiZSBtYXRjaGVkLlxuICAgKiBAcmV0dXJucyB7Qm9vbGVhbn0gVHJ1ZSBpZiBhIG1hdGNoIHdhcyBmb3VuZCwgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgKi9cbiAgc3RhdGljIG9iamVjdENvbnRhaW5zS2V5VmFsdWUob2JqLCBrZXksIHZhbHVlKSB7XG4gICAgY29uc3QgaXNNYXRjaCA9IChhLCBiKSA9PiAodHlwZW9mIGEgPT09ICdzdHJpbmcnICYmIG5ldyBSZWdFeHAoYikudGVzdChhKSkgfHwgYSA9PT0gYjtcbiAgICBjb25zdCBpc0tleU1hdGNoID0gayA9PiBpc01hdGNoKGssIGtleSk7XG4gICAgY29uc3QgaXNWYWx1ZU1hdGNoID0gdiA9PiBpc01hdGNoKHYsIHZhbHVlKTtcbiAgICBmb3IgKGNvbnN0IFtrLCB2XSBvZiBPYmplY3QuZW50cmllcyhvYmopKSB7XG4gICAgICBpZiAoa2V5ICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgPT09IHVuZGVmaW5lZCAmJiBpc0tleU1hdGNoKGspKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSBlbHNlIGlmIChrZXkgPT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIGlzVmFsdWVNYXRjaCh2KSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAoa2V5ICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiBpc0tleU1hdGNoKGspICYmIGlzVmFsdWVNYXRjaCh2KSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmIChbJ1tvYmplY3QgT2JqZWN0XScsICdbb2JqZWN0IEFycmF5XSddLmluY2x1ZGVzKE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2KSkpIHtcbiAgICAgICAgcmV0dXJuIFV0aWxzLm9iamVjdENvbnRhaW5zS2V5VmFsdWUodiwga2V5LCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHN0YXRpYyBjaGVja1Byb2hpYml0ZWRLZXl3b3Jkcyhjb25maWcsIGRhdGEpIHtcbiAgICBpZiAoY29uZmlnPy5yZXF1ZXN0S2V5d29yZERlbnlsaXN0KSB7XG4gICAgICAvLyBTY2FuIHJlcXVlc3QgZGF0YSBmb3IgZGVuaWVkIGtleXdvcmRzXG4gICAgICBmb3IgKGNvbnN0IGtleXdvcmQgb2YgY29uZmlnLnJlcXVlc3RLZXl3b3JkRGVueWxpc3QpIHtcbiAgICAgICAgY29uc3QgbWF0Y2ggPSBVdGlscy5vYmplY3RDb250YWluc0tleVZhbHVlKGRhdGEsIGtleXdvcmQua2V5LCBrZXl3b3JkLnZhbHVlKTtcbiAgICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgICAgdGhyb3cgYFByb2hpYml0ZWQga2V5d29yZCBpbiByZXF1ZXN0IGRhdGE6ICR7SlNPTi5zdHJpbmdpZnkoa2V5d29yZCl9LmA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxubW9kdWxlLmV4cG9ydHMgPSBVdGlscztcbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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
|
package/lib/batch.js
CHANGED
|
@@ -130,4 +130,4 @@ module.exports = {
|
|
|
130
130
|
mountOnto,
|
|
131
131
|
makeBatchRoutingPathFunction
|
|
132
132
|
};
|
|
133
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJQYXJzZSIsInJlcXVpcmUiLCJwYXRoIiwiYmF0Y2hQYXRoIiwibW91bnRPbnRvIiwicm91dGVyIiwicm91dGUiLCJyZXEiLCJoYW5kbGVCYXRjaCIsInBhcnNlVVJMIiwidXJsU3RyaW5nIiwiVVJMIiwiZXJyb3IiLCJ1bmRlZmluZWQiLCJtYWtlQmF0Y2hSb3V0aW5nUGF0aEZ1bmN0aW9uIiwib3JpZ2luYWxVcmwiLCJzZXJ2ZXJVUkwiLCJwdWJsaWNTZXJ2ZXJVUkwiLCJhcGlQcmVmaXhMZW5ndGgiLCJsZW5ndGgiLCJhcGlQcmVmaXgiLCJzbGljZSIsIm1ha2VSb3V0YWJsZVBhdGgiLCJyZXF1ZXN0UGF0aCIsIkVycm9yIiwiSU5WQUxJRF9KU09OIiwicG9zaXgiLCJqb2luIiwicGF0aG5hbWUiLCJsb2NhbFBhdGgiLCJwdWJsaWNQYXRoIiwic3RhcnRzV2l0aExvY2FsIiwic3RhcnRzV2l0aCIsInN0YXJ0c1dpdGhQdWJsaWMiLCJwYXRoTGVuZ3RoVG9Vc2UiLCJNYXRoIiwibWF4IiwibmV3UGF0aCIsIkFycmF5IiwiaXNBcnJheSIsImJvZHkiLCJyZXF1ZXN0cyIsImVuZHNXaXRoIiwiY29uZmlnIiwiYmF0Y2giLCJ0cmFuc2FjdGlvblJldHJpZXMiLCJpbml0aWFsUHJvbWlzZSIsIlByb21pc2UiLCJyZXNvbHZlIiwidHJhbnNhY3Rpb24iLCJkYXRhYmFzZSIsImNyZWF0ZVRyYW5zYWN0aW9uYWxTZXNzaW9uIiwidGhlbiIsInByb21pc2VzIiwibWFwIiwicmVzdFJlcXVlc3QiLCJyb3V0YWJsZVBhdGgiLCJyZXF1ZXN0IiwiYXV0aCIsImluZm8iLCJ0cnlSb3V0ZVJlcXVlc3QiLCJtZXRob2QiLCJyZXNwb25zZSIsInN1Y2Nlc3MiLCJjb2RlIiwibWVzc2FnZSIsImFsbCIsInJlc3VsdHMiLCJmaW5kIiwicmVzdWx0IiwiYWJvcnRUcmFuc2FjdGlvbmFsU2Vzc2lvbiIsInJlamVjdCIsImNvbW1pdFRyYW5zYWN0aW9uYWxTZXNzaW9uIiwiY2F0Y2giLCJlcnJvckl0ZW0iLCJtb2R1bGUiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL2JhdGNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IFBhcnNlID0gcmVxdWlyZSgncGFyc2Uvbm9kZScpLlBhcnNlO1xuY29uc3QgcGF0aCA9IHJlcXVpcmUoJ3BhdGgnKTtcbi8vIFRoZXNlIG1ldGhvZHMgaGFuZGxlIGJhdGNoIHJlcXVlc3RzLlxuY29uc3QgYmF0Y2hQYXRoID0gJy9iYXRjaCc7XG5cbi8vIE1vdW50cyBhIGJhdGNoLWhhbmRsZXIgb250byBhIFByb21pc2VSb3V0ZXIuXG5mdW5jdGlvbiBtb3VudE9udG8ocm91dGVyKSB7XG4gIHJvdXRlci5yb3V0ZSgnUE9TVCcsIGJhdGNoUGF0aCwgcmVxID0+IHtcbiAgICByZXR1cm4gaGFuZGxlQmF0Y2gocm91dGVyLCByZXEpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gcGFyc2VVUkwodXJsU3RyaW5nKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIG5ldyBVUkwodXJsU3RyaW5nKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbmZ1bmN0aW9uIG1ha2VCYXRjaFJvdXRpbmdQYXRoRnVuY3Rpb24ob3JpZ2luYWxVcmwsIHNlcnZlclVSTCwgcHVibGljU2VydmVyVVJMKSB7XG4gIHNlcnZlclVSTCA9IHNlcnZlclVSTCA/IHBhcnNlVVJMKHNlcnZlclVSTCkgOiB1bmRlZmluZWQ7XG4gIHB1YmxpY1NlcnZlclVSTCA9IHB1YmxpY1NlcnZlclVSTCA/IHBhcnNlVVJMKHB1YmxpY1NlcnZlclVSTCkgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3QgYXBpUHJlZml4TGVuZ3RoID0gb3JpZ2luYWxVcmwubGVuZ3RoIC0gYmF0Y2hQYXRoLmxlbmd0aDtcbiAgbGV0IGFwaVByZWZpeCA9IG9yaWdpbmFsVXJsLnNsaWNlKDAsIGFwaVByZWZpeExlbmd0aCk7XG5cbiAgY29uc3QgbWFrZVJvdXRhYmxlUGF0aCA9IGZ1bmN0aW9uIChyZXF1ZXN0UGF0aCkge1xuICAgIC8vIFRoZSByb3V0YWJsZVBhdGggaXMgdGhlIHBhdGggbWludXMgdGhlIGFwaSBwcmVmaXhcbiAgICBpZiAocmVxdWVzdFBhdGguc2xpY2UoMCwgYXBpUHJlZml4Lmxlbmd0aCkgIT0gYXBpUHJlZml4KSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2UuRXJyb3IoUGFyc2UuRXJyb3IuSU5WQUxJRF9KU09OLCAnY2Fubm90IHJvdXRlIGJhdGNoIHBhdGggJyArIHJlcXVlc3RQYXRoKTtcbiAgICB9XG4gICAgcmV0dXJuIHBhdGgucG9zaXguam9pbignLycsIHJlcXVlc3RQYXRoLnNsaWNlKGFwaVByZWZpeC5sZW5ndGgpKTtcbiAgfTtcblxuICBpZiAoc2VydmVyVVJMICYmIHB1YmxpY1NlcnZlclVSTCAmJiBzZXJ2ZXJVUkwucGF0aG5hbWUgIT0gcHVibGljU2VydmVyVVJMLnBhdGhuYW1lKSB7XG4gICAgY29uc3QgbG9jYWxQYXRoID0gc2VydmVyVVJMLnBhdGhuYW1lO1xuICAgIGNvbnN0IHB1YmxpY1BhdGggPSBwdWJsaWNTZXJ2ZXJVUkwucGF0aG5hbWU7XG5cbiAgICAvLyBPdmVycmlkZSB0aGUgYXBpIHByZWZpeFxuICAgIGFwaVByZWZpeCA9IGxvY2FsUGF0aDtcbiAgICByZXR1cm4gZnVuY3Rpb24gKHJlcXVlc3RQYXRoKSB7XG4gICAgICAvLyBGaWd1cmUgb3V0IHdoaWNoIHNlcnZlciB1cmwgd2FzIHVzZWQgYnkgZmlndXJpbmcgb3V0IHdoaWNoXG4gICAgICAvLyBwYXRoIG1vcmUgY2xvc2VseSBtYXRjaGVzIHJlcXVlc3RQYXRoXG4gICAgICBjb25zdCBzdGFydHNXaXRoTG9jYWwgPSByZXF1ZXN0UGF0aC5zdGFydHNXaXRoKGxvY2FsUGF0aCk7XG4gICAgICBjb25zdCBzdGFydHNXaXRoUHVibGljID0gcmVxdWVzdFBhdGguc3RhcnRzV2l0aChwdWJsaWNQYXRoKTtcbiAgICAgIGNvbnN0IHBhdGhMZW5ndGhUb1VzZSA9XG4gICAgICAgIHN0YXJ0c1dpdGhMb2NhbCAmJiBzdGFydHNXaXRoUHVibGljXG4gICAgICAgICAgPyBNYXRoLm1heChsb2NhbFBhdGgubGVuZ3RoLCBwdWJsaWNQYXRoLmxlbmd0aClcbiAgICAgICAgICA6IHN0YXJ0c1dpdGhMb2NhbFxuICAgICAgICAgICAgPyBsb2NhbFBhdGgubGVuZ3RoXG4gICAgICAgICAgICA6IHB1YmxpY1BhdGgubGVuZ3RoO1xuXG4gICAgICBjb25zdCBuZXdQYXRoID0gcGF0aC5wb3NpeC5qb2luKCcvJywgbG9jYWxQYXRoLCAnLycsIHJlcXVlc3RQYXRoLnNsaWNlKHBhdGhMZW5ndGhUb1VzZSkpO1xuXG4gICAgICAvLyBVc2UgdGhlIG1ldGhvZCBmb3IgbG9jYWwgcm91dGluZ1xuICAgICAgcmV0dXJuIG1ha2VSb3V0YWJsZVBhdGgobmV3UGF0aCk7XG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBtYWtlUm91dGFibGVQYXRoO1xufVxuXG4vLyBSZXR1cm5zIGEgcHJvbWlzZSBmb3IgYSB7cmVzcG9uc2V9IG9iamVjdC5cbi8vIFRPRE86IHBhc3MgYWxvbmcgYXV0aCBjb3JyZWN0bHlcbmZ1bmN0aW9uIGhhbmRsZUJhdGNoKHJvdXRlciwgcmVxKSB7XG4gIGlmICghQXJyYXkuaXNBcnJheShyZXEuYm9keS5yZXF1ZXN0cykpIHtcbiAgICB0aHJvdyBuZXcgUGFyc2UuRXJyb3IoUGFyc2UuRXJyb3IuSU5WQUxJRF9KU09OLCAncmVxdWVzdHMgbXVzdCBiZSBhbiBhcnJheScpO1xuICB9XG5cbiAgLy8gVGhlIGJhdGNoIHBhdGhzIGFyZSBhbGwgZnJvbSB0aGUgcm9vdCBvZiBvdXIgZG9tYWluLlxuICAvLyBUaGF0IG1lYW5zIHRoZXkgaW5jbHVkZSB0aGUgQVBJIHByZWZpeCwgdGhhdCB0aGUgQVBJIGlzIG1vdW50ZWRcbiAgLy8gdG8uIEhvd2V2ZXIsIG91ciBwcm9taXNlIHJvdXRlciBkb2VzIG5vdCByb3V0ZSB0aGUgYXBpIHByZWZpeC4gU29cbiAgLy8gd2UgbmVlZCB0byBmaWd1cmUgb3V0IHRoZSBBUEkgcHJlZml4LCBzbyB0aGF0IHdlIGNhbiBzdHJpcCBpdFxuICAvLyBmcm9tIGFsbCB0aGUgc3VicmVxdWVzdHMuXG4gIGlmICghcmVxLm9yaWdpbmFsVXJsLmVuZHNXaXRoKGJhdGNoUGF0aCkpIHtcbiAgICB0aHJvdyAnaW50ZXJuYWwgcm91dGluZyBwcm9ibGVtIC0gZXhwZWN0ZWQgdXJsIHRvIGVuZCB3aXRoIGJhdGNoJztcbiAgfVxuXG4gIGNvbnN0IG1ha2VSb3V0YWJsZVBhdGggPSBtYWtlQmF0Y2hSb3V0aW5nUGF0aEZ1bmN0aW9uKFxuICAgIHJlcS5vcmlnaW5hbFVybCxcbiAgICByZXEuY29uZmlnLnNlcnZlclVSTCxcbiAgICByZXEuY29uZmlnLnB1YmxpY1NlcnZlclVSTFxuICApO1xuXG4gIGNvbnN0IGJhdGNoID0gdHJhbnNhY3Rpb25SZXRyaWVzID0+IHtcbiAgICBsZXQgaW5pdGlhbFByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICBpZiAocmVxLmJvZHkudHJhbnNhY3Rpb24gPT09IHRydWUpIHtcbiAgICAgIGluaXRpYWxQcm9taXNlID0gcmVxLmNvbmZpZy5kYXRhYmFzZS5jcmVhdGVUcmFuc2FjdGlvbmFsU2Vzc2lvbigpO1xuICAgIH1cblxuICAgIHJldHVybiBpbml0aWFsUHJvbWlzZS50aGVuKCgpID0+IHtcbiAgICAgIGNvbnN0IHByb21pc2VzID0gcmVxLmJvZHkucmVxdWVzdHMubWFwKHJlc3RSZXF1ZXN0ID0+IHtcbiAgICAgICAgY29uc3Qgcm91dGFibGVQYXRoID0gbWFrZVJvdXRhYmxlUGF0aChyZXN0UmVxdWVzdC5wYXRoKTtcblxuICAgICAgICAvLyBDb25zdHJ1Y3QgYSByZXF1ZXN0IHRoYXQgd2UgY2FuIHNlbmQgdG8gYSBoYW5kbGVyXG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICAgICAgYm9keTogcmVzdFJlcXVlc3QuYm9keSxcbiAgICAgICAgICBjb25maWc6IHJlcS5jb25maWcsXG4gICAgICAgICAgYXV0aDogcmVxLmF1dGgsXG4gICAgICAgICAgaW5mbzogcmVxLmluZm8sXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHJvdXRlci50cnlSb3V0ZVJlcXVlc3QocmVzdFJlcXVlc3QubWV0aG9kLCByb3V0YWJsZVBhdGgsIHJlcXVlc3QpLnRoZW4oXG4gICAgICAgICAgcmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHsgc3VjY2VzczogcmVzcG9uc2UucmVzcG9uc2UgfTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGVycm9yID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7IGVycm9yOiB7IGNvZGU6IGVycm9yLmNvZGUsIGVycm9yOiBlcnJvci5tZXNzYWdlIH0gfTtcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHByb21pc2VzKVxuICAgICAgICAudGhlbihyZXN1bHRzID0+IHtcbiAgICAgICAgICBpZiAocmVxLmJvZHkudHJhbnNhY3Rpb24gPT09IHRydWUpIHtcbiAgICAgICAgICAgIGlmIChyZXN1bHRzLmZpbmQocmVzdWx0ID0+IHR5cGVvZiByZXN1bHQuZXJyb3IgPT09ICdvYmplY3QnKSkge1xuICAgICAgICAgICAgICByZXR1cm4gcmVxLmNvbmZpZy5kYXRhYmFzZS5hYm9ydFRyYW5zYWN0aW9uYWxTZXNzaW9uKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHsgcmVzcG9uc2U6IHJlc3VsdHMgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHJlcS5jb25maWcuZGF0YWJhc2UuY29tbWl0VHJhbnNhY3Rpb25hbFNlc3Npb24oKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyByZXNwb25zZTogcmVzdWx0cyB9O1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHsgcmVzcG9uc2U6IHJlc3VsdHMgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgZXJyb3IgJiZcbiAgICAgICAgICAgIGVycm9yLnJlc3BvbnNlICYmXG4gICAgICAgICAgICBlcnJvci5yZXNwb25zZS5maW5kKFxuICAgICAgICAgICAgICBlcnJvckl0ZW0gPT4gdHlwZW9mIGVycm9ySXRlbS5lcnJvciA9PT0gJ29iamVjdCcgJiYgZXJyb3JJdGVtLmVycm9yLmNvZGUgPT09IDI1MVxuICAgICAgICAgICAgKSAmJlxuICAgICAgICAgICAgdHJhbnNhY3Rpb25SZXRyaWVzID4gMFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIGJhdGNoKHRyYW5zYWN0aW9uUmV0cmllcyAtIDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH07XG4gIHJldHVybiBiYXRjaCg1KTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1vdW50T250byxcbiAgbWFrZUJhdGNoUm91dGluZ1BhdGhGdW5jdGlvbixcbn07XG4iXSwibWFwcGluZ3MiOiI7O0FBQUEsTUFBTUEsS0FBSyxHQUFHQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUNELEtBQUs7QUFDekMsTUFBTUUsSUFBSSxHQUFHRCxPQUFPLENBQUMsTUFBTSxDQUFDO0FBQzVCO0FBQ0EsTUFBTUUsU0FBUyxHQUFHLFFBQVE7O0FBRTFCO0FBQ0EsU0FBU0MsU0FBUyxDQUFDQyxNQUFNLEVBQUU7RUFDekJBLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDLE1BQU0sRUFBRUgsU0FBUyxFQUFFSSxHQUFHLElBQUk7SUFDckMsT0FBT0MsV0FBVyxDQUFDSCxNQUFNLEVBQUVFLEdBQUcsQ0FB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
|
|
133
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJQYXJzZSIsInJlcXVpcmUiLCJwYXRoIiwiYmF0Y2hQYXRoIiwibW91bnRPbnRvIiwicm91dGVyIiwicm91dGUiLCJyZXEiLCJoYW5kbGVCYXRjaCIsInBhcnNlVVJMIiwidXJsU3RyaW5nIiwiVVJMIiwiZXJyb3IiLCJ1bmRlZmluZWQiLCJtYWtlQmF0Y2hSb3V0aW5nUGF0aEZ1bmN0aW9uIiwib3JpZ2luYWxVcmwiLCJzZXJ2ZXJVUkwiLCJwdWJsaWNTZXJ2ZXJVUkwiLCJhcGlQcmVmaXhMZW5ndGgiLCJsZW5ndGgiLCJhcGlQcmVmaXgiLCJzbGljZSIsIm1ha2VSb3V0YWJsZVBhdGgiLCJyZXF1ZXN0UGF0aCIsIkVycm9yIiwiSU5WQUxJRF9KU09OIiwicG9zaXgiLCJqb2luIiwicGF0aG5hbWUiLCJsb2NhbFBhdGgiLCJwdWJsaWNQYXRoIiwic3RhcnRzV2l0aExvY2FsIiwic3RhcnRzV2l0aCIsInN0YXJ0c1dpdGhQdWJsaWMiLCJwYXRoTGVuZ3RoVG9Vc2UiLCJNYXRoIiwibWF4IiwibmV3UGF0aCIsIkFycmF5IiwiaXNBcnJheSIsImJvZHkiLCJyZXF1ZXN0cyIsImVuZHNXaXRoIiwiY29uZmlnIiwiYmF0Y2giLCJ0cmFuc2FjdGlvblJldHJpZXMiLCJpbml0aWFsUHJvbWlzZSIsIlByb21pc2UiLCJyZXNvbHZlIiwidHJhbnNhY3Rpb24iLCJkYXRhYmFzZSIsImNyZWF0ZVRyYW5zYWN0aW9uYWxTZXNzaW9uIiwidGhlbiIsInByb21pc2VzIiwibWFwIiwicmVzdFJlcXVlc3QiLCJyb3V0YWJsZVBhdGgiLCJyZXF1ZXN0IiwiYXV0aCIsImluZm8iLCJ0cnlSb3V0ZVJlcXVlc3QiLCJtZXRob2QiLCJyZXNwb25zZSIsInN1Y2Nlc3MiLCJjb2RlIiwibWVzc2FnZSIsImFsbCIsInJlc3VsdHMiLCJmaW5kIiwicmVzdWx0IiwiYWJvcnRUcmFuc2FjdGlvbmFsU2Vzc2lvbiIsInJlamVjdCIsImNvbW1pdFRyYW5zYWN0aW9uYWxTZXNzaW9uIiwiY2F0Y2giLCJlcnJvckl0ZW0iLCJtb2R1bGUiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL2JhdGNoLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IFBhcnNlID0gcmVxdWlyZSgncGFyc2Uvbm9kZScpLlBhcnNlO1xuY29uc3QgcGF0aCA9IHJlcXVpcmUoJ3BhdGgnKTtcbi8vIFRoZXNlIG1ldGhvZHMgaGFuZGxlIGJhdGNoIHJlcXVlc3RzLlxuY29uc3QgYmF0Y2hQYXRoID0gJy9iYXRjaCc7XG5cbi8vIE1vdW50cyBhIGJhdGNoLWhhbmRsZXIgb250byBhIFByb21pc2VSb3V0ZXIuXG5mdW5jdGlvbiBtb3VudE9udG8ocm91dGVyKSB7XG4gIHJvdXRlci5yb3V0ZSgnUE9TVCcsIGJhdGNoUGF0aCwgcmVxID0+IHtcbiAgICByZXR1cm4gaGFuZGxlQmF0Y2gocm91dGVyLCByZXEpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gcGFyc2VVUkwodXJsU3RyaW5nKSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIG5ldyBVUkwodXJsU3RyaW5nKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59XG5cbmZ1bmN0aW9uIG1ha2VCYXRjaFJvdXRpbmdQYXRoRnVuY3Rpb24ob3JpZ2luYWxVcmwsIHNlcnZlclVSTCwgcHVibGljU2VydmVyVVJMKSB7XG4gIHNlcnZlclVSTCA9IHNlcnZlclVSTCA/IHBhcnNlVVJMKHNlcnZlclVSTCkgOiB1bmRlZmluZWQ7XG4gIHB1YmxpY1NlcnZlclVSTCA9IHB1YmxpY1NlcnZlclVSTCA/IHBhcnNlVVJMKHB1YmxpY1NlcnZlclVSTCkgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3QgYXBpUHJlZml4TGVuZ3RoID0gb3JpZ2luYWxVcmwubGVuZ3RoIC0gYmF0Y2hQYXRoLmxlbmd0aDtcbiAgbGV0IGFwaVByZWZpeCA9IG9yaWdpbmFsVXJsLnNsaWNlKDAsIGFwaVByZWZpeExlbmd0aCk7XG5cbiAgY29uc3QgbWFrZVJvdXRhYmxlUGF0aCA9IGZ1bmN0aW9uIChyZXF1ZXN0UGF0aCkge1xuICAgIC8vIFRoZSByb3V0YWJsZVBhdGggaXMgdGhlIHBhdGggbWludXMgdGhlIGFwaSBwcmVmaXhcbiAgICBpZiAocmVxdWVzdFBhdGguc2xpY2UoMCwgYXBpUHJlZml4Lmxlbmd0aCkgIT0gYXBpUHJlZml4KSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2UuRXJyb3IoUGFyc2UuRXJyb3IuSU5WQUxJRF9KU09OLCAnY2Fubm90IHJvdXRlIGJhdGNoIHBhdGggJyArIHJlcXVlc3RQYXRoKTtcbiAgICB9XG4gICAgcmV0dXJuIHBhdGgucG9zaXguam9pbignLycsIHJlcXVlc3RQYXRoLnNsaWNlKGFwaVByZWZpeC5sZW5ndGgpKTtcbiAgfTtcblxuICBpZiAoc2VydmVyVVJMICYmIHB1YmxpY1NlcnZlclVSTCAmJiBzZXJ2ZXJVUkwucGF0aG5hbWUgIT0gcHVibGljU2VydmVyVVJMLnBhdGhuYW1lKSB7XG4gICAgY29uc3QgbG9jYWxQYXRoID0gc2VydmVyVVJMLnBhdGhuYW1lO1xuICAgIGNvbnN0IHB1YmxpY1BhdGggPSBwdWJsaWNTZXJ2ZXJVUkwucGF0aG5hbWU7XG5cbiAgICAvLyBPdmVycmlkZSB0aGUgYXBpIHByZWZpeFxuICAgIGFwaVByZWZpeCA9IGxvY2FsUGF0aDtcbiAgICByZXR1cm4gZnVuY3Rpb24gKHJlcXVlc3RQYXRoKSB7XG4gICAgICAvLyBGaWd1cmUgb3V0IHdoaWNoIHNlcnZlciB1cmwgd2FzIHVzZWQgYnkgZmlndXJpbmcgb3V0IHdoaWNoXG4gICAgICAvLyBwYXRoIG1vcmUgY2xvc2VseSBtYXRjaGVzIHJlcXVlc3RQYXRoXG4gICAgICBjb25zdCBzdGFydHNXaXRoTG9jYWwgPSByZXF1ZXN0UGF0aC5zdGFydHNXaXRoKGxvY2FsUGF0aCk7XG4gICAgICBjb25zdCBzdGFydHNXaXRoUHVibGljID0gcmVxdWVzdFBhdGguc3RhcnRzV2l0aChwdWJsaWNQYXRoKTtcbiAgICAgIGNvbnN0IHBhdGhMZW5ndGhUb1VzZSA9XG4gICAgICAgIHN0YXJ0c1dpdGhMb2NhbCAmJiBzdGFydHNXaXRoUHVibGljXG4gICAgICAgICAgPyBNYXRoLm1heChsb2NhbFBhdGgubGVuZ3RoLCBwdWJsaWNQYXRoLmxlbmd0aClcbiAgICAgICAgICA6IHN0YXJ0c1dpdGhMb2NhbFxuICAgICAgICAgICAgPyBsb2NhbFBhdGgubGVuZ3RoXG4gICAgICAgICAgICA6IHB1YmxpY1BhdGgubGVuZ3RoO1xuXG4gICAgICBjb25zdCBuZXdQYXRoID0gcGF0aC5wb3NpeC5qb2luKCcvJywgbG9jYWxQYXRoLCAnLycsIHJlcXVlc3RQYXRoLnNsaWNlKHBhdGhMZW5ndGhUb1VzZSkpO1xuXG4gICAgICAvLyBVc2UgdGhlIG1ldGhvZCBmb3IgbG9jYWwgcm91dGluZ1xuICAgICAgcmV0dXJuIG1ha2VSb3V0YWJsZVBhdGgobmV3UGF0aCk7XG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBtYWtlUm91dGFibGVQYXRoO1xufVxuXG4vLyBSZXR1cm5zIGEgcHJvbWlzZSBmb3IgYSB7cmVzcG9uc2V9IG9iamVjdC5cbi8vIFRPRE86IHBhc3MgYWxvbmcgYXV0aCBjb3JyZWN0bHlcbmZ1bmN0aW9uIGhhbmRsZUJhdGNoKHJvdXRlciwgcmVxKSB7XG4gIGlmICghQXJyYXkuaXNBcnJheShyZXEuYm9keS5yZXF1ZXN0cykpIHtcbiAgICB0aHJvdyBuZXcgUGFyc2UuRXJyb3IoUGFyc2UuRXJyb3IuSU5WQUxJRF9KU09OLCAncmVxdWVzdHMgbXVzdCBiZSBhbiBhcnJheScpO1xuICB9XG5cbiAgLy8gVGhlIGJhdGNoIHBhdGhzIGFyZSBhbGwgZnJvbSB0aGUgcm9vdCBvZiBvdXIgZG9tYWluLlxuICAvLyBUaGF0IG1lYW5zIHRoZXkgaW5jbHVkZSB0aGUgQVBJIHByZWZpeCwgdGhhdCB0aGUgQVBJIGlzIG1vdW50ZWRcbiAgLy8gdG8uIEhvd2V2ZXIsIG91ciBwcm9taXNlIHJvdXRlciBkb2VzIG5vdCByb3V0ZSB0aGUgYXBpIHByZWZpeC4gU29cbiAgLy8gd2UgbmVlZCB0byBmaWd1cmUgb3V0IHRoZSBBUEkgcHJlZml4LCBzbyB0aGF0IHdlIGNhbiBzdHJpcCBpdFxuICAvLyBmcm9tIGFsbCB0aGUgc3VicmVxdWVzdHMuXG4gIGlmICghcmVxLm9yaWdpbmFsVXJsLmVuZHNXaXRoKGJhdGNoUGF0aCkpIHtcbiAgICB0aHJvdyAnaW50ZXJuYWwgcm91dGluZyBwcm9ibGVtIC0gZXhwZWN0ZWQgdXJsIHRvIGVuZCB3aXRoIGJhdGNoJztcbiAgfVxuXG4gIGNvbnN0IG1ha2VSb3V0YWJsZVBhdGggPSBtYWtlQmF0Y2hSb3V0aW5nUGF0aEZ1bmN0aW9uKFxuICAgIHJlcS5vcmlnaW5hbFVybCxcbiAgICByZXEuY29uZmlnLnNlcnZlclVSTCxcbiAgICByZXEuY29uZmlnLnB1YmxpY1NlcnZlclVSTFxuICApO1xuXG4gIGNvbnN0IGJhdGNoID0gdHJhbnNhY3Rpb25SZXRyaWVzID0+IHtcbiAgICBsZXQgaW5pdGlhbFByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICBpZiAocmVxLmJvZHkudHJhbnNhY3Rpb24gPT09IHRydWUpIHtcbiAgICAgIGluaXRpYWxQcm9taXNlID0gcmVxLmNvbmZpZy5kYXRhYmFzZS5jcmVhdGVUcmFuc2FjdGlvbmFsU2Vzc2lvbigpO1xuICAgIH1cblxuICAgIHJldHVybiBpbml0aWFsUHJvbWlzZS50aGVuKCgpID0+IHtcbiAgICAgIGNvbnN0IHByb21pc2VzID0gcmVxLmJvZHkucmVxdWVzdHMubWFwKHJlc3RSZXF1ZXN0ID0+IHtcbiAgICAgICAgY29uc3Qgcm91dGFibGVQYXRoID0gbWFrZVJvdXRhYmxlUGF0aChyZXN0UmVxdWVzdC5wYXRoKTtcblxuICAgICAgICAvLyBDb25zdHJ1Y3QgYSByZXF1ZXN0IHRoYXQgd2UgY2FuIHNlbmQgdG8gYSBoYW5kbGVyXG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICAgICAgYm9keTogcmVzdFJlcXVlc3QuYm9keSxcbiAgICAgICAgICBjb25maWc6IHJlcS5jb25maWcsXG4gICAgICAgICAgYXV0aDogcmVxLmF1dGgsXG4gICAgICAgICAgaW5mbzogcmVxLmluZm8sXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHJvdXRlci50cnlSb3V0ZVJlcXVlc3QocmVzdFJlcXVlc3QubWV0aG9kLCByb3V0YWJsZVBhdGgsIHJlcXVlc3QpLnRoZW4oXG4gICAgICAgICAgcmVzcG9uc2UgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHsgc3VjY2VzczogcmVzcG9uc2UucmVzcG9uc2UgfTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGVycm9yID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7IGVycm9yOiB7IGNvZGU6IGVycm9yLmNvZGUsIGVycm9yOiBlcnJvci5tZXNzYWdlIH0gfTtcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIFByb21pc2UuYWxsKHByb21pc2VzKVxuICAgICAgICAudGhlbihyZXN1bHRzID0+IHtcbiAgICAgICAgICBpZiAocmVxLmJvZHkudHJhbnNhY3Rpb24gPT09IHRydWUpIHtcbiAgICAgICAgICAgIGlmIChyZXN1bHRzLmZpbmQocmVzdWx0ID0+IHR5cGVvZiByZXN1bHQuZXJyb3IgPT09ICdvYmplY3QnKSkge1xuICAgICAgICAgICAgICByZXR1cm4gcmVxLmNvbmZpZy5kYXRhYmFzZS5hYm9ydFRyYW5zYWN0aW9uYWxTZXNzaW9uKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KHsgcmVzcG9uc2U6IHJlc3VsdHMgfSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHJlcS5jb25maWcuZGF0YWJhc2UuY29tbWl0VHJhbnNhY3Rpb25hbFNlc3Npb24oKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyByZXNwb25zZTogcmVzdWx0cyB9O1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHsgcmVzcG9uc2U6IHJlc3VsdHMgfTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChlcnJvciA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgZXJyb3IgJiZcbiAgICAgICAgICAgIGVycm9yLnJlc3BvbnNlICYmXG4gICAgICAgICAgICBlcnJvci5yZXNwb25zZS5maW5kKFxuICAgICAgICAgICAgICBlcnJvckl0ZW0gPT4gdHlwZW9mIGVycm9ySXRlbS5lcnJvciA9PT0gJ29iamVjdCcgJiYgZXJyb3JJdGVtLmVycm9yLmNvZGUgPT09IDI1MVxuICAgICAgICAgICAgKSAmJlxuICAgICAgICAgICAgdHJhbnNhY3Rpb25SZXRyaWVzID4gMFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIGJhdGNoKHRyYW5zYWN0aW9uUmV0cmllcyAtIDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH07XG4gIHJldHVybiBiYXRjaCg1KTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIG1vdW50T250byxcbiAgbWFrZUJhdGNoUm91dGluZ1BhdGhGdW5jdGlvbixcbn07XG4iXSwibWFwcGluZ3MiOiI7O0FBQUEsTUFBTUEsS0FBSyxHQUFHQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUNELEtBQUs7QUFDekMsTUFBTUUsSUFBSSxHQUFHRCxPQUFPLENBQUMsTUFBTSxDQUFDO0FBQzVCO0FBQ0EsTUFBTUUsU0FBUyxHQUFHLFFBQVE7O0FBRTFCO0FBQ0EsU0FBU0MsU0FBU0EsQ0FBQ0MsTUFBTSxFQUFFO0VBQ3pCQSxNQUFNLENBQUNDLEtBQUssQ0FBQyxNQUFNLEVBQUVILFNBQVMsRUFBRUksR0FBRyxJQUFJO0lBQ3JDLE9BQU9DLFdBQVcsQ0FBQ0gsTUFBTSxFQUFFRSxHQUFHLENB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
|
package/lib/cache.js
CHANGED
|
@@ -11,4 +11,4 @@ var AppCache = new _InMemoryCache.InMemoryCache({
|
|
|
11
11
|
exports.AppCache = AppCache;
|
|
12
12
|
var _default = AppCache;
|
|
13
13
|
exports.default = _default;
|
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfSW5NZW1vcnlDYWNoZSIsInJlcXVpcmUiLCJBcHBDYWNoZSIsIkluTWVtb3J5Q2FjaGUiLCJ0dGwiLCJOYU4iLCJleHBvcnRzIiwiX2RlZmF1bHQiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vc3JjL2NhY2hlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluTWVtb3J5Q2FjaGUgfSBmcm9tICcuL0FkYXB0ZXJzL0NhY2hlL0luTWVtb3J5Q2FjaGUnO1xuXG5leHBvcnQgdmFyIEFwcENhY2hlID0gbmV3IEluTWVtb3J5Q2FjaGUoeyB0dGw6IE5hTiB9KTtcbmV4cG9ydCBkZWZhdWx0IEFwcENhY2hlO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxjQUFBLEdBQUFDLE9BQUE7QUFFTyxJQUFJQyxRQUFRLEdBQUcsSUFBSUMsNEJBQWEsQ0FBQztFQUFFQyxHQUFHLEVBQUVDO0FBQUksQ0FBQyxDQUFDO0FBQUNDLE9BQUEsQ0FBQUosUUFBQSxHQUFBQSxRQUFBO0FBQUEsSUFBQUssUUFBQSxHQUN2Q0wsUUFBUTtBQUFBSSxPQUFBLENBQUFFLE9BQUEsR0FBQUQsUUFBQSJ9
|
|
@@ -7,4 +7,4 @@ exports.default = void 0;
|
|
|
7
7
|
const LiveQueryServerOptions = require('../../Options/Definitions').LiveQueryServerOptions;
|
|
8
8
|
var _default = LiveQueryServerOptions;
|
|
9
9
|
exports.default = _default;
|
|
10
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMaXZlUXVlcnlTZXJ2ZXJPcHRpb25zIiwicmVxdWlyZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2xpL2RlZmluaXRpb25zL3BhcnNlLWxpdmUtcXVlcnktc2VydmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IExpdmVRdWVyeVNlcnZlck9wdGlvbnMgPSByZXF1aXJlKCcuLi8uLi9PcHRpb25zL0RlZmluaXRpb25zJykuTGl2ZVF1ZXJ5U2VydmVyT3B0aW9ucztcbmV4cG9ydCBkZWZhdWx0IExpdmVRdWVyeVNlcnZlck9wdGlvbnM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE1BQU1BLHNCQUFzQixHQUFHQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FBQ0Qsc0JBQXNCO0FBQUMsSUFBQUUsUUFBQSxHQUM1RUYsc0JBQXNCO0FBQUFHLE9BQUEsQ0FBQUMsT0FBQSxHQUFBRixRQUFBIn0=
|
|
@@ -7,4 +7,4 @@ exports.default = void 0;
|
|
|
7
7
|
const ParseServerDefinitions = require('../../Options/Definitions').ParseServerOptions;
|
|
8
8
|
var _default = ParseServerDefinitions;
|
|
9
9
|
exports.default = _default;
|
|
10
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJQYXJzZVNlcnZlckRlZmluaXRpb25zIiwicmVxdWlyZSIsIlBhcnNlU2VydmVyT3B0aW9ucyIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2xpL2RlZmluaXRpb25zL3BhcnNlLXNlcnZlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBQYXJzZVNlcnZlckRlZmluaXRpb25zID0gcmVxdWlyZSgnLi4vLi4vT3B0aW9ucy9EZWZpbml0aW9ucycpLlBhcnNlU2VydmVyT3B0aW9ucztcbmV4cG9ydCBkZWZhdWx0IFBhcnNlU2VydmVyRGVmaW5pdGlvbnM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE1BQU1BLHNCQUFzQixHQUFHQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FBQ0Msa0JBQWtCO0FBQUMsSUFBQUMsUUFBQSxHQUN4RUgsc0JBQXNCO0FBQUFJLE9BQUEsQ0FBQUMsT0FBQSxHQUFBRixRQUFBIn0=
|
|
@@ -11,4 +11,4 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
11
11
|
_index.ParseServer.createLiveQueryServer(undefined, options);
|
|
12
12
|
}
|
|
13
13
|
});
|
|
14
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcGFyc2VMaXZlUXVlcnlTZXJ2ZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9ydW5uZXIiLCJfaW5kZXgiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsInJ1bm5lciIsImRlZmluaXRpb25zIiwic3RhcnQiLCJwcm9ncmFtIiwib3B0aW9ucyIsImxvZ09wdGlvbnMiLCJQYXJzZVNlcnZlciIsImNyZWF0ZUxpdmVRdWVyeVNlcnZlciIsInVuZGVmaW5lZCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGkvcGFyc2UtbGl2ZS1xdWVyeS1zZXJ2ZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRlZmluaXRpb25zIGZyb20gJy4vZGVmaW5pdGlvbnMvcGFyc2UtbGl2ZS1xdWVyeS1zZXJ2ZXInO1xuaW1wb3J0IHJ1bm5lciBmcm9tICcuL3V0aWxzL3J1bm5lcic7XG5pbXBvcnQgeyBQYXJzZVNlcnZlciB9IGZyb20gJy4uL2luZGV4JztcblxucnVubmVyKHtcbiAgZGVmaW5pdGlvbnMsXG4gIHN0YXJ0OiBmdW5jdGlvbiAocHJvZ3JhbSwgb3B0aW9ucywgbG9nT3B0aW9ucykge1xuICAgIGxvZ09wdGlvbnMoKTtcbiAgICBQYXJzZVNlcnZlci5jcmVhdGVMaXZlUXVlcnlTZXJ2ZXIodW5kZWZpbmVkLCBvcHRpb25zKTtcbiAgfSxcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOztBQUFBLElBQUFBLHFCQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxNQUFBLEdBQUFGLE9BQUE7QUFBdUMsU0FBQUQsdUJBQUFJLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFFdkMsSUFBQUcsZUFBTSxFQUFDO0VBQ0xDLFdBQVcsRUFBWEEsNkJBQVc7RUFDWEMsS0FBSyxFQUFFLFNBQUFBLENBQVVDLE9BQU8sRUFBRUMsT0FBTyxFQUFFQyxVQUFVLEVBQUU7SUFDN0NBLFVBQVUsQ0FBQyxDQUFDO0lBQ1pDLGtCQUFXLENBQUNDLHFCQUFxQixDQUFDQyxTQUFTLEVBQUVKLE9BQU8sQ0FBQztFQUN2RDtBQUNGLENBQUMsQ0FBQyJ9
|
package/lib/cli/parse-server.js
CHANGED
|
@@ -98,4 +98,4 @@ const help = function () {
|
|
|
98
98
|
});
|
|
99
99
|
|
|
100
100
|
/* eslint-enable no-console */
|
|
101
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJoZWxwIiwiY29uc29sZSIsImxvZyIsInJ1bm5lciIsImRlZmluaXRpb25zIiwidXNhZ2UiLCJzdGFydCIsInByb2dyYW0iLCJvcHRpb25zIiwibG9nT3B0aW9ucyIsImFwcElkIiwibWFzdGVyS2V5Iiwib3V0cHV0SGVscCIsImVycm9yIiwicHJvY2VzcyIsImV4aXQiLCJsaXZlUXVlcnkiLCJjbGFzc05hbWVzIiwicmVkaXNVUkwiLCJyZWRpc09wdGlvbnMiLCJjbHVzdGVyIiwibnVtQ1BVcyIsIm9zIiwiY3B1cyIsImxlbmd0aCIsImlzTWFzdGVyIiwiaSIsImZvcmsiLCJvbiIsIndvcmtlciIsImNvZGUiLCJwaWQiLCJQYXJzZVNlcnZlciIsInN0YXJ0QXBwIiwidGhlbiIsInByaW50U3VjY2Vzc01lc3NhZ2UiLCJjYXRjaCIsImUiLCJzZXJ2ZXJVUkwiLCJtb3VudEdyYXBoUUwiLCJwb3J0IiwiZ3JhcGhRTFBhdGgiLCJtb3VudFBsYXlncm91bmQiLCJwbGF5Z3JvdW5kUGF0aCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGkvcGFyc2Utc2VydmVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmltcG9ydCBQYXJzZVNlcnZlciBmcm9tICcuLi9pbmRleCc7XG5pbXBvcnQgZGVmaW5pdGlvbnMgZnJvbSAnLi9kZWZpbml0aW9ucy9wYXJzZS1zZXJ2ZXInO1xuaW1wb3J0IGNsdXN0ZXIgZnJvbSAnY2x1c3Rlcic7XG5pbXBvcnQgb3MgZnJvbSAnb3MnO1xuaW1wb3J0IHJ1bm5lciBmcm9tICcuL3V0aWxzL3J1bm5lcic7XG5cbmNvbnN0IGhlbHAgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnNvbGUubG9nKCcgIEdldCBTdGFydGVkIGd1aWRlOicpO1xuICBjb25zb2xlLmxvZygnJyk7XG4gIGNvbnNvbGUubG9nKCcgICAgUGxlYXNlIGhhdmUgYSBsb29rIGF0IHRoZSBnZXQgc3RhcnRlZCBndWlkZSEnKTtcbiAgY29uc29sZS5sb2coJyAgICBodHRwOi8vZG9jcy5wYXJzZXBsYXRmb3JtLm9yZy9wYXJzZS1zZXJ2ZXIvZ3VpZGUvJyk7XG4gIGNvbnNvbGUubG9nKCcnKTtcbiAgY29uc29sZS5sb2coJycpO1xuICBjb25zb2xlLmxvZygnICBVc2FnZSB3aXRoIG5wbSBzdGFydCcpO1xuICBjb25zb2xlLmxvZygnJyk7XG4gIGNvbnNvbGUubG9nKCcgICAgJCBucG0gc3RhcnQgLS0gcGF0aC90by9jb25maWcuanNvbicpO1xuICBjb25zb2xlLmxvZygnICAgICQgbnBtIHN0YXJ0IC0tIC0tYXBwSWQgQVBQX0lEIC0tbWFzdGVyS2V5IE1BU1RFUl9LRVkgLS1zZXJ2ZXJVUkwgc2VydmVyVVJMJyk7XG4gIGNvbnNvbGUubG9nKCcgICAgJCBucG0gc3RhcnQgLS0gLS1hcHBJZCBBUFBfSUQgLS1tYXN0ZXJLZXkgTUFTVEVSX0tFWSAtLXNlcnZlclVSTCBzZXJ2ZXJVUkwnKTtcbiAgY29uc29sZS5sb2coJycpO1xuICBjb25zb2xlLmxvZygnJyk7XG4gIGNvbnNvbGUubG9nKCcgIFVzYWdlOicpO1xuICBjb25zb2xlLmxvZygnJyk7XG4gIGNvbnNvbGUubG9nKCcgICAgJCBwYXJzZS1zZXJ2ZXIgcGF0aC90by9jb25maWcuanNvbicpO1xuICBjb25zb2xlLmxvZygnICAgICQgcGFyc2Utc2VydmVyIC0tIC0tYXBwSWQgQVBQX0lEIC0tbWFzdGVyS2V5IE1BU1RFUl9LRVkgLS1zZXJ2ZXJVUkwgc2VydmVyVVJMJyk7XG4gIGNvbnNvbGUubG9nKCcgICAgJCBwYXJzZS1zZXJ2ZXIgLS0gLS1hcHBJZCBBUFBfSUQgLS1tYXN0ZXJLZXkgTUFTVEVSX0tFWSAtLXNlcnZlclVSTCBzZXJ2ZXJVUkwnKTtcbiAgY29uc29sZS5sb2coJycpO1xufTtcblxucnVubmVyKHtcbiAgZGVmaW5pdGlvbnMsXG4gIGhlbHAsXG4gIHVzYWdlOiAnW29wdGlvbnNdIDxwYXRoL3RvL2NvbmZpZ3VyYXRpb24uanNvbj4nLFxuICBzdGFydDogZnVuY3Rpb24gKHByb2dyYW0sIG9wdGlvbnMsIGxvZ09wdGlvbnMpIHtcbiAgICBpZiAoIW9wdGlvbnMuYXBwSWQgfHwgIW9wdGlvbnMubWFzdGVyS2V5KSB7XG4gICAgICBwcm9ncmFtLm91dHB1dEhlbHAoKTtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJycpO1xuICAgICAgY29uc29sZS5lcnJvcignXFx1MDAxYlszMW1FUlJPUjogYXBwSWQgYW5kIG1hc3RlcktleSBhcmUgcmVxdWlyZWRcXHUwMDFiWzBtJyk7XG4gICAgICBjb25zb2xlLmVycm9yKCcnKTtcbiAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9uc1snbGl2ZVF1ZXJ5LmNsYXNzTmFtZXMnXSkge1xuICAgICAgb3B0aW9ucy5saXZlUXVlcnkgPSBvcHRpb25zLmxpdmVRdWVyeSB8fCB7fTtcbiAgICAgIG9wdGlvbnMubGl2ZVF1ZXJ5LmNsYXNzTmFtZXMgPSBvcHRpb25zWydsaXZlUXVlcnkuY2xhc3NOYW1lcyddO1xuICAgICAgZGVsZXRlIG9wdGlvbnNbJ2xpdmVRdWVyeS5jbGFzc05hbWVzJ107XG4gICAgfVxuICAgIGlmIChvcHRpb25zWydsaXZlUXVlcnkucmVkaXNVUkwnXSkge1xuICAgICAgb3B0aW9ucy5saXZlUXVlcnkgPSBvcHRpb25zLmxpdmVRdWVyeSB8fCB7fTtcbiAgICAgIG9wdGlvbnMubGl2ZVF1ZXJ5LnJlZGlzVVJMID0gb3B0aW9uc1snbGl2ZVF1ZXJ5LnJlZGlzVVJMJ107XG4gICAgICBkZWxldGUgb3B0aW9uc1snbGl2ZVF1ZXJ5LnJlZGlzVVJMJ107XG4gICAgfVxuICAgIGlmIChvcHRpb25zWydsaXZlUXVlcnkucmVkaXNPcHRpb25zJ10pIHtcbiAgICAgIG9wdGlvbnMubGl2ZVF1ZXJ5ID0gb3B0aW9ucy5saXZlUXVlcnkgfHwge307XG4gICAgICBvcHRpb25zLmxpdmVRdWVyeS5yZWRpc09wdGlvbnMgPSBvcHRpb25zWydsaXZlUXVlcnkucmVkaXNPcHRpb25zJ107XG4gICAgICBkZWxldGUgb3B0aW9uc1snbGl2ZVF1ZXJ5LnJlZGlzT3B0aW9ucyddO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmNsdXN0ZXIpIHtcbiAgICAgIGNvbnN0IG51bUNQVXMgPSB0eXBlb2Ygb3B0aW9ucy5jbHVzdGVyID09PSAnbnVtYmVyJyA/IG9wdGlvbnMuY2x1c3RlciA6IG9zLmNwdXMoKS5sZW5ndGg7XG4gICAgICBpZiAoY2x1c3Rlci5pc01hc3Rlcikge1xuICAgICAgICBsb2dPcHRpb25zKCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbnVtQ1BVczsgaSsrKSB7XG4gICAgICAgICAgY2x1c3Rlci5mb3JrKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2x1c3Rlci5vbignZXhpdCcsICh3b3JrZXIsIGNvZGUpID0+IHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhgd29ya2VyICR7d29ya2VyLnByb2Nlc3MucGlkfSBkaWVkICgke2NvZGV9KS4uLiBSZXN0YXJ0aW5nYCk7XG4gICAgICAgICAgY2x1c3Rlci5mb3JrKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgUGFyc2VTZXJ2ZXIuc3RhcnRBcHAob3B0aW9ucylcbiAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICBwcmludFN1Y2Nlc3NNZXNzYWdlKCk7XG4gICAgICAgICAgfSlcbiAgICAgICAgICAuY2F0Y2goZSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgICAgcHJvY2Vzcy5leGl0KDEpO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBQYXJzZVNlcnZlci5zdGFydEFwcChvcHRpb25zKVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgbG9nT3B0aW9ucygpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKCcnKTtcbiAgICAgICAgICBwcmludFN1Y2Nlc3NNZXNzYWdlKCk7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaChlID0+IHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcHJpbnRTdWNjZXNzTWVzc2FnZSgpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdbJyArIHByb2Nlc3MucGlkICsgJ10gcGFyc2Utc2VydmVyIHJ1bm5pbmcgb24gJyArIG9wdGlvbnMuc2VydmVyVVJMKTtcbiAgICAgIGlmIChvcHRpb25zLm1vdW50R3JhcGhRTCkge1xuICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAnWycgK1xuICAgICAgICAgICAgcHJvY2Vzcy5waWQgK1xuICAgICAgICAgICAgJ10gR3JhcGhRTCBydW5uaW5nIG9uIGh0dHA6Ly9sb2NhbGhvc3Q6JyArXG4gICAgICAgICAgICBvcHRpb25zLnBvcnQgK1xuICAgICAgICAgICAgb3B0aW9ucy5ncmFwaFFMUGF0aFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKG9wdGlvbnMubW91bnRQbGF5Z3JvdW5kKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICdbJyArXG4gICAgICAgICAgICBwcm9jZXNzLnBpZCArXG4gICAgICAgICAgICAnXSBQbGF5Z3JvdW5kIHJ1bm5pbmcgb24gaHR0cDovL2xvY2FsaG9zdDonICtcbiAgICAgICAgICAgIG9wdGlvbnMucG9ydCArXG4gICAgICAgICAgICBvcHRpb25zLnBsYXlncm91bmRQYXRoXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9LFxufSk7XG5cbi8qIGVzbGludC1lbmFibGUgbm8tY29uc29sZSAqL1xuIl0sIm1hcHBpbmdzIjoiOztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBb0M7QUFMcEM7O0FBT0EsTUFBTUEsSUFBSSxHQUFHLFlBQVk7RUFDdkJDLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDLHNCQUFzQixDQUFDO0VB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
|
|
101
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW5kZXgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9wYXJzZVNlcnZlciIsIl9jbHVzdGVyIiwiX29zIiwiX3J1bm5lciIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiaGVscCIsImNvbnNvbGUiLCJsb2ciLCJydW5uZXIiLCJkZWZpbml0aW9ucyIsInVzYWdlIiwic3RhcnQiLCJwcm9ncmFtIiwib3B0aW9ucyIsImxvZ09wdGlvbnMiLCJhcHBJZCIsIm1hc3RlcktleSIsIm91dHB1dEhlbHAiLCJlcnJvciIsInByb2Nlc3MiLCJleGl0IiwibGl2ZVF1ZXJ5IiwiY2xhc3NOYW1lcyIsInJlZGlzVVJMIiwicmVkaXNPcHRpb25zIiwiY2x1c3RlciIsIm51bUNQVXMiLCJvcyIsImNwdXMiLCJsZW5ndGgiLCJpc01hc3RlciIsImkiLCJmb3JrIiwib24iLCJ3b3JrZXIiLCJjb2RlIiwicGlkIiwiUGFyc2VTZXJ2ZXIiLCJzdGFydEFwcCIsInRoZW4iLCJwcmludFN1Y2Nlc3NNZXNzYWdlIiwiY2F0Y2giLCJlIiwic2VydmVyVVJMIiwibW91bnRHcmFwaFFMIiwicG9ydCIsImdyYXBoUUxQYXRoIiwibW91bnRQbGF5Z3JvdW5kIiwicGxheWdyb3VuZFBhdGgiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpL3BhcnNlLXNlcnZlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5pbXBvcnQgUGFyc2VTZXJ2ZXIgZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0IGRlZmluaXRpb25zIGZyb20gJy4vZGVmaW5pdGlvbnMvcGFyc2Utc2VydmVyJztcbmltcG9ydCBjbHVzdGVyIGZyb20gJ2NsdXN0ZXInO1xuaW1wb3J0IG9zIGZyb20gJ29zJztcbmltcG9ydCBydW5uZXIgZnJvbSAnLi91dGlscy9ydW5uZXInO1xuXG5jb25zdCBoZWxwID0gZnVuY3Rpb24gKCkge1xuICBjb25zb2xlLmxvZygnICBHZXQgU3RhcnRlZCBndWlkZTonKTtcbiAgY29uc29sZS5sb2coJycpO1xuICBjb25zb2xlLmxvZygnICAgIFBsZWFzZSBoYXZlIGEgbG9vayBhdCB0aGUgZ2V0IHN0YXJ0ZWQgZ3VpZGUhJyk7XG4gIGNvbnNvbGUubG9nKCcgICAgaHR0cDovL2RvY3MucGFyc2VwbGF0Zm9ybS5vcmcvcGFyc2Utc2VydmVyL2d1aWRlLycpO1xuICBjb25zb2xlLmxvZygnJyk7XG4gIGNvbnNvbGUubG9nKCcnKTtcbiAgY29uc29sZS5sb2coJyAgVXNhZ2Ugd2l0aCBucG0gc3RhcnQnKTtcbiAgY29uc29sZS5sb2coJycpO1xuICBjb25zb2xlLmxvZygnICAgICQgbnBtIHN0YXJ0IC0tIHBhdGgvdG8vY29uZmlnLmpzb24nKTtcbiAgY29uc29sZS5sb2coJyAgICAkIG5wbSBzdGFydCAtLSAtLWFwcElkIEFQUF9JRCAtLW1hc3RlcktleSBNQVNURVJfS0VZIC0tc2VydmVyVVJMIHNlcnZlclVSTCcpO1xuICBjb25zb2xlLmxvZygnICAgICQgbnBtIHN0YXJ0IC0tIC0tYXBwSWQgQVBQX0lEIC0tbWFzdGVyS2V5IE1BU1RFUl9LRVkgLS1zZXJ2ZXJVUkwgc2VydmVyVVJMJyk7XG4gIGNvbnNvbGUubG9nKCcnKTtcbiAgY29uc29sZS5sb2coJycpO1xuICBjb25zb2xlLmxvZygnICBVc2FnZTonKTtcbiAgY29uc29sZS5sb2coJycpO1xuICBjb25zb2xlLmxvZygnICAgICQgcGFyc2Utc2VydmVyIHBhdGgvdG8vY29uZmlnLmpzb24nKTtcbiAgY29uc29sZS5sb2coJyAgICAkIHBhcnNlLXNlcnZlciAtLSAtLWFwcElkIEFQUF9JRCAtLW1hc3RlcktleSBNQVNURVJfS0VZIC0tc2VydmVyVVJMIHNlcnZlclVSTCcpO1xuICBjb25zb2xlLmxvZygnICAgICQgcGFyc2Utc2VydmVyIC0tIC0tYXBwSWQgQVBQX0lEIC0tbWFzdGVyS2V5IE1BU1RFUl9LRVkgLS1zZXJ2ZXJVUkwgc2VydmVyVVJMJyk7XG4gIGNvbnNvbGUubG9nKCcnKTtcbn07XG5cbnJ1bm5lcih7XG4gIGRlZmluaXRpb25zLFxuICBoZWxwLFxuICB1c2FnZTogJ1tvcHRpb25zXSA8cGF0aC90by9jb25maWd1cmF0aW9uLmpzb24+JyxcbiAgc3RhcnQ6IGZ1bmN0aW9uIChwcm9ncmFtLCBvcHRpb25zLCBsb2dPcHRpb25zKSB7XG4gICAgaWYgKCFvcHRpb25zLmFwcElkIHx8ICFvcHRpb25zLm1hc3RlcktleSkge1xuICAgICAgcHJvZ3JhbS5vdXRwdXRIZWxwKCk7XG4gICAgICBjb25zb2xlLmVycm9yKCcnKTtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1xcdTAwMWJbMzFtRVJST1I6IGFwcElkIGFuZCBtYXN0ZXJLZXkgYXJlIHJlcXVpcmVkXFx1MDAxYlswbScpO1xuICAgICAgY29uc29sZS5lcnJvcignJyk7XG4gICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnNbJ2xpdmVRdWVyeS5jbGFzc05hbWVzJ10pIHtcbiAgICAgIG9wdGlvbnMubGl2ZVF1ZXJ5ID0gb3B0aW9ucy5saXZlUXVlcnkgfHwge307XG4gICAgICBvcHRpb25zLmxpdmVRdWVyeS5jbGFzc05hbWVzID0gb3B0aW9uc1snbGl2ZVF1ZXJ5LmNsYXNzTmFtZXMnXTtcbiAgICAgIGRlbGV0ZSBvcHRpb25zWydsaXZlUXVlcnkuY2xhc3NOYW1lcyddO1xuICAgIH1cbiAgICBpZiAob3B0aW9uc1snbGl2ZVF1ZXJ5LnJlZGlzVVJMJ10pIHtcbiAgICAgIG9wdGlvbnMubGl2ZVF1ZXJ5ID0gb3B0aW9ucy5saXZlUXVlcnkgfHwge307XG4gICAgICBvcHRpb25zLmxpdmVRdWVyeS5yZWRpc1VSTCA9IG9wdGlvbnNbJ2xpdmVRdWVyeS5yZWRpc1VSTCddO1xuICAgICAgZGVsZXRlIG9wdGlvbnNbJ2xpdmVRdWVyeS5yZWRpc1VSTCddO1xuICAgIH1cbiAgICBpZiAob3B0aW9uc1snbGl2ZVF1ZXJ5LnJlZGlzT3B0aW9ucyddKSB7XG4gICAgICBvcHRpb25zLmxpdmVRdWVyeSA9IG9wdGlvbnMubGl2ZVF1ZXJ5IHx8IHt9O1xuICAgICAgb3B0aW9ucy5saXZlUXVlcnkucmVkaXNPcHRpb25zID0gb3B0aW9uc1snbGl2ZVF1ZXJ5LnJlZGlzT3B0aW9ucyddO1xuICAgICAgZGVsZXRlIG9wdGlvbnNbJ2xpdmVRdWVyeS5yZWRpc09wdGlvbnMnXTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5jbHVzdGVyKSB7XG4gICAgICBjb25zdCBudW1DUFVzID0gdHlwZW9mIG9wdGlvbnMuY2x1c3RlciA9PT0gJ251bWJlcicgPyBvcHRpb25zLmNsdXN0ZXIgOiBvcy5jcHVzKCkubGVuZ3RoO1xuICAgICAgaWYgKGNsdXN0ZXIuaXNNYXN0ZXIpIHtcbiAgICAgICAgbG9nT3B0aW9ucygpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bUNQVXM7IGkrKykge1xuICAgICAgICAgIGNsdXN0ZXIuZm9yaygpO1xuICAgICAgICB9XG4gICAgICAgIGNsdXN0ZXIub24oJ2V4aXQnLCAod29ya2VyLCBjb2RlKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5sb2coYHdvcmtlciAke3dvcmtlci5wcm9jZXNzLnBpZH0gZGllZCAoJHtjb2RlfSkuLi4gUmVzdGFydGluZ2ApO1xuICAgICAgICAgIGNsdXN0ZXIuZm9yaygpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIFBhcnNlU2VydmVyLnN0YXJ0QXBwKG9wdGlvbnMpXG4gICAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgcHJpbnRTdWNjZXNzTWVzc2FnZSgpO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLmNhdGNoKGUgPT4ge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgUGFyc2VTZXJ2ZXIuc3RhcnRBcHAob3B0aW9ucylcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIGxvZ09wdGlvbnMoKTtcbiAgICAgICAgICBjb25zb2xlLmxvZygnJyk7XG4gICAgICAgICAgcHJpbnRTdWNjZXNzTWVzc2FnZSgpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goZSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIHByaW50U3VjY2Vzc01lc3NhZ2UoKSB7XG4gICAgICBjb25zb2xlLmxvZygnWycgKyBwcm9jZXNzLnBpZCArICddIHBhcnNlLXNlcnZlciBydW5uaW5nIG9uICcgKyBvcHRpb25zLnNlcnZlclVSTCk7XG4gICAgICBpZiAob3B0aW9ucy5tb3VudEdyYXBoUUwpIHtcbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgJ1snICtcbiAgICAgICAgICAgIHByb2Nlc3MucGlkICtcbiAgICAgICAgICAgICddIEdyYXBoUUwgcnVubmluZyBvbiBodHRwOi8vbG9jYWxob3N0OicgK1xuICAgICAgICAgICAgb3B0aW9ucy5wb3J0ICtcbiAgICAgICAgICAgIG9wdGlvbnMuZ3JhcGhRTFBhdGhcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb25zLm1vdW50UGxheWdyb3VuZCkge1xuICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICAnWycgK1xuICAgICAgICAgICAgcHJvY2Vzcy5waWQgK1xuICAgICAgICAgICAgJ10gUGxheWdyb3VuZCBydW5uaW5nIG9uIGh0dHA6Ly9sb2NhbGhvc3Q6JyArXG4gICAgICAgICAgICBvcHRpb25zLnBvcnQgK1xuICAgICAgICAgICAgb3B0aW9ucy5wbGF5Z3JvdW5kUGF0aFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfSxcbn0pO1xuXG4vKiBlc2xpbnQtZW5hYmxlIG5vLWNvbnNvbGUgKi9cbiJdLCJtYXBw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
|
|
@@ -127,4 +127,4 @@ _commander.Command.prototype.getOptions = function () {
|
|
|
127
127
|
var _default = new _commander.Command().storeOptionsAsProperties();
|
|
128
128
|
/* eslint-enable no-console */
|
|
129
129
|
exports.default = _default;
|
|
130
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVmaW5pdGlvbnMiLCJfcmV2ZXJzZURlZmluaXRpb25zIiwiX2RlZmF1bHRzIiwiQ29tbWFuZCIsInByb3RvdHlwZSIsImxvYWREZWZpbml0aW9ucyIsImRlZmluaXRpb25zIiwiT2JqZWN0Iiwia2V5cyIsInJlZHVjZSIsInByb2dyYW0iLCJvcHQiLCJhZGRpdGlvbmFsT3B0aW9ucyIsInJlcXVpcmVkIiwib3B0aW9uIiwiaGVscCIsImFjdGlvbiIsIm9iamVjdCIsImtleSIsInZhbHVlIiwiZW52IiwiZGVmcyIsImRlZmF1bHQiLCJ1bmRlZmluZWQiLCJvbiIsImNvbnNvbGUiLCJsb2ciLCJmb3JFYWNoIiwicGFyc2VFbnZpcm9ubWVudCIsIm9wdGlvbnMiLCJvcmlnaW5hbEtleSIsInBhcnNlQ29uZmlnRmlsZSIsImFyZ3MiLCJsZW5ndGgiLCJqc29uUGF0aCIsInBhdGgiLCJyZXNvbHZlIiwianNvbkNvbmZpZyIsInJlcXVpcmUiLCJhcHBzIiwic2V0VmFsdWVzSWZOZWVkZWQiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJfcGFyc2UiLCJwYXJzZSIsImVudk9wdGlvbnMiLCJmcm9tRmlsZSIsIkRlcHJlY2F0b3IiLCJzY2FuUGFyc2VTZXJ2ZXJPcHRpb25zIiwiZ2V0T3B0aW9ucyIsInN0b3JlT3B0aW9uc0FzUHJvcGVydGllcyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGkvdXRpbHMvY29tbWFuZGVyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmltcG9ydCB7IENvbW1hbmQgfSBmcm9tICdjb21tYW5kZXInO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgRGVwcmVjYXRvciBmcm9tICcuLi8uLi9EZXByZWNhdG9yL0RlcHJlY2F0b3InO1xuXG5sZXQgX2RlZmluaXRpb25zO1xubGV0IF9yZXZlcnNlRGVmaW5pdGlvbnM7XG5sZXQgX2RlZmF1bHRzO1xuXG5Db21tYW5kLnByb3RvdHlwZS5sb2FkRGVmaW5pdGlvbnMgPSBmdW5jdGlvbiAoZGVmaW5pdGlvbnMpIHtcbiAgX2RlZmluaXRpb25zID0gZGVmaW5pdGlvbnM7XG5cbiAgT2JqZWN0LmtleXMoZGVmaW5pdGlvbnMpLnJlZHVjZSgocHJvZ3JhbSwgb3B0KSA9PiB7XG4gICAgaWYgKHR5cGVvZiBkZWZpbml0aW9uc1tvcHRdID09ICdvYmplY3QnKSB7XG4gICAgICBjb25zdCBhZGRpdGlvbmFsT3B0aW9ucyA9IGRlZmluaXRpb25zW29wdF07XG4gICAgICBpZiAoYWRkaXRpb25hbE9wdGlvbnMucmVxdWlyZWQgPT09IHRydWUpIHtcbiAgICAgICAgcmV0dXJuIHByb2dyYW0ub3B0aW9uKFxuICAgICAgICAgIGAtLSR7b3B0fSA8JHtvcHR9PmAsXG4gICAgICAgICAgYWRkaXRpb25hbE9wdGlvbnMuaGVscCxcbiAgICAgICAgICBhZGRpdGlvbmFsT3B0aW9ucy5hY3Rpb25cbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBwcm9ncmFtLm9wdGlvbihcbiAgICAgICAgICBgLS0ke29wdH0gWyR7b3B0fV1gLFxuICAgICAgICAgIGFkZGl0aW9uYWxPcHRpb25zLmhlbHAsXG4gICAgICAgICAgYWRkaXRpb25hbE9wdGlvbnMuYWN0aW9uXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBwcm9ncmFtLm9wdGlvbihgLS0ke29wdH0gWyR7b3B0fV1gKTtcbiAgfSwgdGhpcyk7XG5cbiAgX3JldmVyc2VEZWZpbml0aW9ucyA9IE9iamVjdC5rZXlzKGRlZmluaXRpb25zKS5yZWR1Y2UoKG9iamVjdCwga2V5KSA9PiB7XG4gICAgbGV0IHZhbHVlID0gZGVmaW5pdGlvbnNba2V5XTtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09ICdvYmplY3QnKSB7XG4gICAgICB2YWx1ZSA9IHZhbHVlLmVudjtcbiAgICB9XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBvYmplY3RbdmFsdWVdID0ga2V5O1xuICAgIH1cbiAgICByZXR1cm4gb2JqZWN0O1xuICB9LCB7fSk7XG5cbiAgX2RlZmF1bHRzID0gT2JqZWN0LmtleXMoZGVmaW5pdGlvbnMpLnJlZHVjZSgoZGVmcywgb3B0KSA9PiB7XG4gICAgaWYgKF9kZWZpbml0aW9uc1tvcHRdLmRlZmF1bHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZGVmc1tvcHRdID0gX2RlZmluaXRpb25zW29wdF0uZGVmYXVsdDtcbiAgICB9XG4gICAgcmV0dXJuIGRlZnM7XG4gIH0sIHt9KTtcblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICB0aGlzLm9uKCctLWhlbHAnLCBmdW5jdGlvbiAoKSB7XG4gICAgY29uc29sZS5sb2coJyAgQ29uZmlndXJlIEZyb20gRW52aXJvbm1lbnQ6Jyk7XG4gICAgY29uc29sZS5sb2coJycpO1xuICAgIE9iamVjdC5rZXlzKF9yZXZlcnNlRGVmaW5pdGlvbnMpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKGAgICAgJCAke2tleX09JyR7X3JldmVyc2VEZWZpbml0aW9uc1trZXldfSdgKTtcbiAgICB9KTtcbiAgICBjb25zb2xlLmxvZygnJyk7XG4gIH0pO1xufTtcblxuZnVuY3Rpb24gcGFyc2VFbnZpcm9ubWVudChlbnYgPSB7fSkge1xuICByZXR1cm4gT2JqZWN0LmtleXMoX3JldmVyc2VEZWZpbml0aW9ucykucmVkdWNlKChvcHRpb25zLCBrZXkpID0+IHtcbiAgICBpZiAoZW52W2tleV0pIHtcbiAgICAgIGNvbnN0IG9yaWdpbmFsS2V5ID0gX3JldmVyc2VEZWZpbml0aW9uc1trZXldO1xuICAgICAgbGV0IGFjdGlvbiA9IG9wdGlvbiA9PiBvcHRpb247XG4gICAgICBpZiAodHlwZW9mIF9kZWZpbml0aW9uc1tvcmlnaW5hbEtleV0gPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGFjdGlvbiA9IF9kZWZpbml0aW9uc1tvcmlnaW5hbEtleV0uYWN0aW9uIHx8IGFjdGlvbjtcbiAgICAgIH1cbiAgICAgIG9wdGlvbnNbX3JldmVyc2VEZWZpbml0aW9uc1trZXldXSA9IGFjdGlvbihlbnZba2V5XSk7XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zO1xuICB9LCB7fSk7XG59XG5cbmZ1bmN0aW9uIHBhcnNlQ29uZmlnRmlsZShwcm9ncmFtKSB7XG4gIGxldCBvcHRpb25zID0ge307XG4gIGlmIChwcm9ncmFtLmFyZ3MubGVuZ3RoID4gMCkge1xuICAgIGxldCBqc29uUGF0aCA9IHByb2dyYW0uYXJnc1swXTtcbiAgICBqc29uUGF0aCA9IHBhdGgucmVzb2x2ZShqc29uUGF0aCk7XG4gICAgY29uc3QganNvbkNvbmZpZyA9IHJlcXVpcmUoanNvblBhdGgpO1xuICAgIGlmIChqc29uQ29uZmlnLmFwcHMpIHtcbiAgICAgIGlmIChqc29uQ29uZmlnLmFwcHMubGVuZ3RoID4gMSkge1xuICAgICAgICB0aHJvdyAnTXVsdGlwbGUgYXBwcyBhcmUgbm90IHN1cHBvcnRlZCc7XG4gICAgICB9XG4gICAgICBvcHRpb25zID0ganNvbkNvbmZpZy5hcHBzWzBdO1xuICAgIH0gZWxzZSB7XG4gICAgICBvcHRpb25zID0ganNvbkNvbmZpZztcbiAgICB9XG4gICAgT2JqZWN0LmtleXMob3B0aW9ucykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSBvcHRpb25zW2tleV07XG4gICAgICBpZiAoIV9kZWZpbml0aW9uc1trZXldKSB7XG4gICAgICAgIHRocm93IGBlcnJvcjogdW5rbm93biBvcHRpb24gJHtrZXl9YDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFjdGlvbiA9IF9kZWZpbml0aW9uc1trZXldLmFjdGlvbjtcbiAgICAgIGlmIChhY3Rpb24pIHtcbiAgICAgICAgb3B0aW9uc1trZXldID0gYWN0aW9uKHZhbHVlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zb2xlLmxvZyhgQ29uZmlndXJhdGlvbiBsb2FkZWQgZnJvbSAke2pzb25QYXRofWApO1xuICB9XG4gIHJldHVybiBvcHRpb25zO1xufVxuXG5Db21tYW5kLnByb3RvdHlwZS5zZXRWYWx1ZXNJZk5lZWRlZCA9IGZ1bmN0aW9uIChvcHRpb25zKSB7XG4gIE9iamVjdC5rZXlzKG9wdGlvbnMpLmZvckVhY2goa2V5ID0+IHtcbiAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLCBrZXkpKSB7XG4gICAgICB0aGlzW2tleV0gPSBvcHRpb25zW2tleV07XG4gICAgfVxuICB9KTtcbn07XG5cbkNvbW1hbmQucHJvdG90eXBlLl9wYXJzZSA9IENvbW1hbmQucHJvdG90eXBlLnBhcnNlO1xuXG5Db21tYW5kLnByb3RvdHlwZS5wYXJzZSA9IGZ1bmN0aW9uIChhcmdzLCBlbnYpIHtcbiAgdGhpcy5fcGFyc2UoYXJncyk7XG4gIC8vIFBhcnNlIHRoZSBlbnZpcm9ubWVudCBmaXJzdFxuICBjb25zdCBlbnZPcHRpb25zID0gcGFyc2VFbnZpcm9ubWVudChlbnYpO1xuICBjb25zdCBmcm9tRmlsZSA9IHBhcnNlQ29uZmlnRmlsZSh0aGlzKTtcbiAgLy8gTG9hZCB0aGUgZW52IGlmIG5vdCBwYXNzZWQgZnJvbSBjb21tYW5kIGxpbmVcbiAgdGhpcy5zZXRWYWx1ZXNJZk5lZWRlZChlbnZPcHRpb25zKTtcbiAgLy8gTG9hZCBmcm9tIGZpbGUgdG8gb3ZlcnJpZGVcbiAgdGhpcy5zZXRWYWx1ZXNJZk5lZWRlZChmcm9tRmlsZSk7XG4gIC8vIFNjYW4gZm9yIGRlcHJlY2F0ZWQgUGFyc2UgU2VydmVyIG9wdGlvbnNcbiAgRGVwcmVjYXRvci5zY2FuUGFyc2VTZXJ2ZXJPcHRpb25zKHRoaXMpO1xuICAvLyBMYXN0IHNldCB0aGUgZGVmYXVsdHNcbiAgdGhpcy5zZXRWYWx1ZXNJZk5lZWRlZChfZGVmYXVsdHMpO1xufTtcblxuQ29tbWFuZC5wcm90b3R5cGUuZ2V0T3B0aW9ucyA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKF9kZWZpbml0aW9ucykucmVkdWNlKChvcHRpb25zLCBrZXkpID0+IHtcbiAgICBpZiAodHlwZW9mIHRoaXNba2V5XSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIG9wdGlvbnNba2V5XSA9IHRoaXNba2V5XTtcbiAgICB9XG4gICAgcmV0dXJuIG9wdGlvbnM7XG4gIH0sIHt9KTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyBDb21tYW5kKCkuc3RvcmVPcHRpb25zQXNQcm9wZXJ0aWVzKCk7XG4vKiBlc2xpbnQtZW5hYmxlIG5vLWNvbnNvbGUgKi9cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0E7QUFDQTtBQUNBO0FBQXFEO0FBSHJEOztBQUtBLElBQUlBLFlBQVk7QUFDaEIsSUFBSUMsbUJBQW1CO0FBQ3ZCLElBQUlDLFNBQVM7QUFFYkMsa0JBQU8sQ0FBQ0MsU0FBUyxDQUFDQyxlQUFlLEdBQUcsVUFBVUMsV0FBVyxFQUFFO0VBQ3pETixZQUFZLEdBQUdNLFdBQVc7RUFFMUJDLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDRixXQUFXLENBQUMsQ0FBQ0csTUFBTSxDQUFDLENBQUNDLE9BQU8sRUFBRUMsR0FBRyxLQUFLO0lBQ2hELElBQUksT0FBT0wsV0FBVyxDQUFDSyxHQUFHLENBQUMsSUFBSSxRQUFRLEVBQUU7TUFDdkMsTUFBTUMsaUJBQWlCLEdBQUdOLFdBQVcsQ0FBQ0ssR0FBRyxDQUFDO01BQzFDLElBQUlDLGlCQUFpQixDQUFDQyxRQUFRLEtBQUssSUFBSSxFQUFFO1FBQ3ZDLE9BQU9ILE9BQU8sQ0FBQ0ksTUFBTSxDQUNsQixLQUFJSCxHQUFJLEtBQUlBLEdBQUksR0FBRSxFQUNuQkMsaUJBQWlCLENBQUNHLElBQUksRUFDdEJILGlCQUFpQixDQUFDSSxNQUFNLENBQ3pCO01BQ0gsQ0FBQyxNQUFNO1FBQ0wsT0FBT04sT0FBTyxDQUFDSSxNQUFNLENBQ2xCLEtBQUlILEdBQUksS0FBSUEsR0FBSSxHQUFFLEVBQ25CQyxpQkFBaUIsQ0FBQ0csSUFBSSxFQUN0QkgsaUJBQWlCLENBQUNJLE1BQU0sQ0FDekI7TUFDSDtJQUNGO0lBQ0EsT0FB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
|
|
130
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29tbWFuZGVyIiwicmVxdWlyZSIsIl9wYXRoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9EZXByZWNhdG9yIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfZGVmaW5pdGlvbnMiLCJfcmV2ZXJzZURlZmluaXRpb25zIiwiX2RlZmF1bHRzIiwiQ29tbWFuZCIsInByb3RvdHlwZSIsImxvYWREZWZpbml0aW9ucyIsImRlZmluaXRpb25zIiwiT2JqZWN0Iiwia2V5cyIsInJlZHVjZSIsInByb2dyYW0iLCJvcHQiLCJhZGRpdGlvbmFsT3B0aW9ucyIsInJlcXVpcmVkIiwib3B0aW9uIiwiaGVscCIsImFjdGlvbiIsIm9iamVjdCIsImtleSIsInZhbHVlIiwiZW52IiwiZGVmcyIsInVuZGVmaW5lZCIsIm9uIiwiY29uc29sZSIsImxvZyIsImZvckVhY2giLCJwYXJzZUVudmlyb25tZW50Iiwib3B0aW9ucyIsIm9yaWdpbmFsS2V5IiwicGFyc2VDb25maWdGaWxlIiwiYXJncyIsImxlbmd0aCIsImpzb25QYXRoIiwicGF0aCIsInJlc29sdmUiLCJqc29uQ29uZmlnIiwiYXBwcyIsInNldFZhbHVlc0lmTmVlZGVkIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiX3BhcnNlIiwicGFyc2UiLCJlbnZPcHRpb25zIiwiZnJvbUZpbGUiLCJEZXByZWNhdG9yIiwic2NhblBhcnNlU2VydmVyT3B0aW9ucyIsImdldE9wdGlvbnMiLCJfZGVmYXVsdCIsInN0b3JlT3B0aW9uc0FzUHJvcGVydGllcyIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2xpL3V0aWxzL2NvbW1hbmRlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5pbXBvcnQgeyBDb21tYW5kIH0gZnJvbSAnY29tbWFuZGVyJztcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IERlcHJlY2F0b3IgZnJvbSAnLi4vLi4vRGVwcmVjYXRvci9EZXByZWNhdG9yJztcblxubGV0IF9kZWZpbml0aW9ucztcbmxldCBfcmV2ZXJzZURlZmluaXRpb25zO1xubGV0IF9kZWZhdWx0cztcblxuQ29tbWFuZC5wcm90b3R5cGUubG9hZERlZmluaXRpb25zID0gZnVuY3Rpb24gKGRlZmluaXRpb25zKSB7XG4gIF9kZWZpbml0aW9ucyA9IGRlZmluaXRpb25zO1xuXG4gIE9iamVjdC5rZXlzKGRlZmluaXRpb25zKS5yZWR1Y2UoKHByb2dyYW0sIG9wdCkgPT4ge1xuICAgIGlmICh0eXBlb2YgZGVmaW5pdGlvbnNbb3B0XSA9PSAnb2JqZWN0Jykge1xuICAgICAgY29uc3QgYWRkaXRpb25hbE9wdGlvbnMgPSBkZWZpbml0aW9uc1tvcHRdO1xuICAgICAgaWYgKGFkZGl0aW9uYWxPcHRpb25zLnJlcXVpcmVkID09PSB0cnVlKSB7XG4gICAgICAgIHJldHVybiBwcm9ncmFtLm9wdGlvbihcbiAgICAgICAgICBgLS0ke29wdH0gPCR7b3B0fT5gLFxuICAgICAgICAgIGFkZGl0aW9uYWxPcHRpb25zLmhlbHAsXG4gICAgICAgICAgYWRkaXRpb25hbE9wdGlvbnMuYWN0aW9uXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gcHJvZ3JhbS5vcHRpb24oXG4gICAgICAgICAgYC0tJHtvcHR9IFske29wdH1dYCxcbiAgICAgICAgICBhZGRpdGlvbmFsT3B0aW9ucy5oZWxwLFxuICAgICAgICAgIGFkZGl0aW9uYWxPcHRpb25zLmFjdGlvblxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcHJvZ3JhbS5vcHRpb24oYC0tJHtvcHR9IFske29wdH1dYCk7XG4gIH0sIHRoaXMpO1xuXG4gIF9yZXZlcnNlRGVmaW5pdGlvbnMgPSBPYmplY3Qua2V5cyhkZWZpbml0aW9ucykucmVkdWNlKChvYmplY3QsIGtleSkgPT4ge1xuICAgIGxldCB2YWx1ZSA9IGRlZmluaXRpb25zW2tleV07XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PSAnb2JqZWN0Jykge1xuICAgICAgdmFsdWUgPSB2YWx1ZS5lbnY7XG4gICAgfVxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgb2JqZWN0W3ZhbHVlXSA9IGtleTtcbiAgICB9XG4gICAgcmV0dXJuIG9iamVjdDtcbiAgfSwge30pO1xuXG4gIF9kZWZhdWx0cyA9IE9iamVjdC5rZXlzKGRlZmluaXRpb25zKS5yZWR1Y2UoKGRlZnMsIG9wdCkgPT4ge1xuICAgIGlmIChfZGVmaW5pdGlvbnNbb3B0XS5kZWZhdWx0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGRlZnNbb3B0XSA9IF9kZWZpbml0aW9uc1tvcHRdLmRlZmF1bHQ7XG4gICAgfVxuICAgIHJldHVybiBkZWZzO1xuICB9LCB7fSk7XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgdGhpcy5vbignLS1oZWxwJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnNvbGUubG9nKCcgIENvbmZpZ3VyZSBGcm9tIEVudmlyb25tZW50OicpO1xuICAgIGNvbnNvbGUubG9nKCcnKTtcbiAgICBPYmplY3Qua2V5cyhfcmV2ZXJzZURlZmluaXRpb25zKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhgICAgICQgJHtrZXl9PScke19yZXZlcnNlRGVmaW5pdGlvbnNba2V5XX0nYCk7XG4gICAgfSk7XG4gICAgY29uc29sZS5sb2coJycpO1xuICB9KTtcbn07XG5cbmZ1bmN0aW9uIHBhcnNlRW52aXJvbm1lbnQoZW52ID0ge30pIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKF9yZXZlcnNlRGVmaW5pdGlvbnMpLnJlZHVjZSgob3B0aW9ucywga2V5KSA9PiB7XG4gICAgaWYgKGVudltrZXldKSB7XG4gICAgICBjb25zdCBvcmlnaW5hbEtleSA9IF9yZXZlcnNlRGVmaW5pdGlvbnNba2V5XTtcbiAgICAgIGxldCBhY3Rpb24gPSBvcHRpb24gPT4gb3B0aW9uO1xuICAgICAgaWYgKHR5cGVvZiBfZGVmaW5pdGlvbnNbb3JpZ2luYWxLZXldID09PSAnb2JqZWN0Jykge1xuICAgICAgICBhY3Rpb24gPSBfZGVmaW5pdGlvbnNbb3JpZ2luYWxLZXldLmFjdGlvbiB8fCBhY3Rpb247XG4gICAgICB9XG4gICAgICBvcHRpb25zW19yZXZlcnNlRGVmaW5pdGlvbnNba2V5XV0gPSBhY3Rpb24oZW52W2tleV0pO1xuICAgIH1cbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfSwge30pO1xufVxuXG5mdW5jdGlvbiBwYXJzZUNvbmZpZ0ZpbGUocHJvZ3JhbSkge1xuICBsZXQgb3B0aW9ucyA9IHt9O1xuICBpZiAocHJvZ3JhbS5hcmdzLmxlbmd0aCA+IDApIHtcbiAgICBsZXQganNvblBhdGggPSBwcm9ncmFtLmFyZ3NbMF07XG4gICAganNvblBhdGggPSBwYXRoLnJlc29sdmUoanNvblBhdGgpO1xuICAgIGNvbnN0IGpzb25Db25maWcgPSByZXF1aXJlKGpzb25QYXRoKTtcbiAgICBpZiAoanNvbkNvbmZpZy5hcHBzKSB7XG4gICAgICBpZiAoanNvbkNvbmZpZy5hcHBzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgdGhyb3cgJ011bHRpcGxlIGFwcHMgYXJlIG5vdCBzdXBwb3J0ZWQnO1xuICAgICAgfVxuICAgICAgb3B0aW9ucyA9IGpzb25Db25maWcuYXBwc1swXTtcbiAgICB9IGVsc2Uge1xuICAgICAgb3B0aW9ucyA9IGpzb25Db25maWc7XG4gICAgfVxuICAgIE9iamVjdC5rZXlzKG9wdGlvbnMpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gb3B0aW9uc1trZXldO1xuICAgICAgaWYgKCFfZGVmaW5pdGlvbnNba2V5XSkge1xuICAgICAgICB0aHJvdyBgZXJyb3I6IHVua25vd24gb3B0aW9uICR7a2V5fWA7XG4gICAgICB9XG4gICAgICBjb25zdCBhY3Rpb24gPSBfZGVmaW5pdGlvbnNba2V5XS5hY3Rpb247XG4gICAgICBpZiAoYWN0aW9uKSB7XG4gICAgICAgIG9wdGlvbnNba2V5XSA9IGFjdGlvbih2YWx1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgY29uc29sZS5sb2coYENvbmZpZ3VyYXRpb24gbG9hZGVkIGZyb20gJHtqc29uUGF0aH1gKTtcbiAgfVxuICByZXR1cm4gb3B0aW9ucztcbn1cblxuQ29tbWFuZC5wcm90b3R5cGUuc2V0VmFsdWVzSWZOZWVkZWQgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBPYmplY3Qua2V5cyhvcHRpb25zKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcywga2V5KSkge1xuICAgICAgdGhpc1trZXldID0gb3B0aW9uc1trZXldO1xuICAgIH1cbiAgfSk7XG59O1xuXG5Db21tYW5kLnByb3RvdHlwZS5fcGFyc2UgPSBDb21tYW5kLnByb3RvdHlwZS5wYXJzZTtcblxuQ29tbWFuZC5wcm90b3R5cGUucGFyc2UgPSBmdW5jdGlvbiAoYXJncywgZW52KSB7XG4gIHRoaXMuX3BhcnNlKGFyZ3MpO1xuICAvLyBQYXJzZSB0aGUgZW52aXJvbm1lbnQgZmlyc3RcbiAgY29uc3QgZW52T3B0aW9ucyA9IHBhcnNlRW52aXJvbm1lbnQoZW52KTtcbiAgY29uc3QgZnJvbUZpbGUgPSBwYXJzZUNvbmZpZ0ZpbGUodGhpcyk7XG4gIC8vIExvYWQgdGhlIGVudiBpZiBub3QgcGFzc2VkIGZyb20gY29tbWFuZCBsaW5lXG4gIHRoaXMuc2V0VmFsdWVzSWZOZWVkZWQoZW52T3B0aW9ucyk7XG4gIC8vIExvYWQgZnJvbSBmaWxlIHRvIG92ZXJyaWRlXG4gIHRoaXMuc2V0VmFsdWVzSWZOZWVkZWQoZnJvbUZpbGUpO1xuICAvLyBTY2FuIGZvciBkZXByZWNhdGVkIFBhcnNlIFNlcnZlciBvcHRpb25zXG4gIERlcHJlY2F0b3Iuc2NhblBhcnNlU2VydmVyT3B0aW9ucyh0aGlzKTtcbiAgLy8gTGFzdCBzZXQgdGhlIGRlZmF1bHRzXG4gIHRoaXMuc2V0VmFsdWVzSWZOZWVkZWQoX2RlZmF1bHRzKTtcbn07XG5cbkNvbW1hbmQucHJvdG90eXBlLmdldE9wdGlvbnMgPSBmdW5jdGlvbiAoKSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhfZGVmaW5pdGlvbnMpLnJlZHVjZSgob3B0aW9ucywga2V5KSA9PiB7XG4gICAgaWYgKHR5cGVvZiB0aGlzW2tleV0gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBvcHRpb25zW2tleV0gPSB0aGlzW2tleV07XG4gICAgfVxuICAgIHJldHVybiBvcHRpb25zO1xuICB9LCB7fSk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBuZXcgQ29tbWFuZCgpLnN0b3JlT3B0aW9uc0FzUHJvcGVydGllcygpO1xuLyogZXNsaW50LWVuYWJsZSBuby1jb25zb2xlICovXG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTtBQUFxRCxTQUFBRSx1QkFBQUUsR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLEtBQUFFLE9BQUEsRUFBQUYsR0FBQTtBQUhyRDs7QUFLQSxJQUFJRyxZQUFZO0FBQ2hCLElBQUlDLG1CQUFtQjtBQUN2QixJQUFJQyxTQUFTO0FBRWJDLGtCQUFPLENBQUNDLFNBQVMsQ0FBQ0MsZUFBZSxHQUFHLFVBQVVDLFdBQVcsRUFBRTtFQUN6RE4sWUFBWSxHQUFHTSxXQUFXO0VBRTFCQyxNQUFNLENBQUNDLElBQUksQ0FBQ0YsV0FBVyxDQUFDLENBQUNHLE1BQU0sQ0FBQyxDQUFDQyxPQUFPLEVBQUVDLEdBQUcsS0FBSztJQUNoRCxJQUFJLE9BQU9MLFdBQVcsQ0FBQ0ssR0FBRyxDQUFDLElBQUksUUFBUSxFQUFFO01BQ3ZDLE1BQU1DLGlCQUFpQixHQUFHTixXQUFXLENBQUNLLEdBQUcsQ0FBQztNQUMxQyxJQUFJQyxpQkFBaUIsQ0FBQ0MsUUFBUSxLQUFLLElB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
|
package/lib/cli/utils/runner.js
CHANGED
|
@@ -51,4 +51,4 @@ function _default({
|
|
|
51
51
|
logStartupOptions(options);
|
|
52
52
|
});
|
|
53
53
|
}
|
|
54
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29tbWFuZGVyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImxvZ1N0YXJ0dXBPcHRpb25zIiwib3B0aW9ucyIsInZlcmJvc2UiLCJrZXlzVG9SZWRhY3QiLCJrZXkiLCJ2YWx1ZSIsImluY2x1ZGVzIiwiSlNPTiIsInN0cmluZ2lmeSIsImUiLCJjb25zdHJ1Y3RvciIsIm5hbWUiLCJjb25zb2xlIiwibG9nIiwiX2RlZmF1bHQiLCJkZWZpbml0aW9ucyIsImhlbHAiLCJ1c2FnZSIsInN0YXJ0IiwicHJvZ3JhbSIsImxvYWREZWZpbml0aW9ucyIsIm9uIiwicGFyc2UiLCJwcm9jZXNzIiwiYXJndiIsImVudiIsImdldE9wdGlvbnMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2xpL3V0aWxzL3J1bm5lci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcHJvZ3JhbSBmcm9tICcuL2NvbW1hbmRlcic7XG5cbmZ1bmN0aW9uIGxvZ1N0YXJ0dXBPcHRpb25zKG9wdGlvbnMpIHtcbiAgaWYgKCFvcHRpb25zLnZlcmJvc2UpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgLy8gS2V5cyB0aGF0IG1heSBpbmNsdWRlIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiB0aGF0IHdpbGwgYmUgcmVkYWN0ZWQgaW4gbG9nc1xuICBjb25zdCBrZXlzVG9SZWRhY3QgPSBbXG4gICAgJ2RhdGFiYXNlVVJJJyxcbiAgICAnbWFzdGVyS2V5JyxcbiAgICAnbWFpbnRlbmFuY2VLZXknLFxuICAgICdwdXNoJyxcbiAgXTtcbiAgZm9yIChjb25zdCBrZXkgaW4gb3B0aW9ucykge1xuICAgIGxldCB2YWx1ZSA9IG9wdGlvbnNba2V5XTtcbiAgICBpZiAoa2V5c1RvUmVkYWN0LmluY2x1ZGVzKGtleSkpIHtcbiAgICAgIHZhbHVlID0gJzxSRURBQ1RFRD4nO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgdmFsdWUgPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGlmICh2YWx1ZSAmJiB2YWx1ZS5jb25zdHJ1Y3RvciAmJiB2YWx1ZS5jb25zdHJ1Y3Rvci5uYW1lKSB7XG4gICAgICAgICAgdmFsdWUgPSB2YWx1ZS5jb25zdHJ1Y3Rvci5uYW1lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbiAgICBjb25zb2xlLmxvZyhgJHtrZXl9OiAke3ZhbHVlfWApO1xuICAgIC8qIGVzbGludC1lbmFibGUgbm8tY29uc29sZSAqL1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uICh7IGRlZmluaXRpb25zLCBoZWxwLCB1c2FnZSwgc3RhcnQgfSkge1xuICBwcm9ncmFtLmxvYWREZWZpbml0aW9ucyhkZWZpbml0aW9ucyk7XG4gIGlmICh1c2FnZSkge1xuICAgIHByb2dyYW0udXNhZ2UodXNhZ2UpO1xuICB9XG4gIGlmIChoZWxwKSB7XG4gICAgcHJvZ3JhbS5vbignLS1oZWxwJywgaGVscCk7XG4gIH1cbiAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YsIHByb2Nlc3MuZW52KTtcblxuICBjb25zdCBvcHRpb25zID0gcHJvZ3JhbS5nZXRPcHRpb25zKCk7XG4gIHN0YXJ0KHByb2dyYW0sIG9wdGlvbnMsIGZ1bmN0aW9uICgpIHtcbiAgICBsb2dTdGFydHVwT3B0aW9ucyhvcHRpb25zKTtcbiAgfSk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLFVBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUFrQyxTQUFBRCx1QkFBQUUsR0FBQSxXQUFBQSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxHQUFBRCxHQUFBLEtBQUFFLE9BQUEsRUFBQUYsR0FBQTtBQUVsQyxTQUFTRyxpQkFBaUJBLENBQUNDLE9BQU8sRUFBRTtFQUNsQyxJQUFJLENBQUNBLE9BQU8sQ0FBQ0MsT0FBTyxFQUFFO0lBQ3BCO0VBQ0Y7RUFDQTtFQUNBLE1BQU1DLFlBQVksR0FBRyxDQUNuQixhQUFhLEVBQ2IsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixNQUFNLENBQ1A7RUFDRCxLQUFLLE1BQU1DLEdBQUcsSUFBSUgsT0FBTyxFQUFFO0lBQ3pCLElBQUlJLEtBQUssR0FBR0osT0FBTyxDQUFDRyxHQUFHLENBQUM7SUFDeEIsSUFBSUQsWUFBWSxDQUFDRyxRQUFRLENBQUNGLEdBQUcsQ0FBQyxFQUFFO01BQzlCQyxLQUFLLEdBQUcsWUFBWTtJQUN0QjtJQUNBLElBQUksT0FBT0EsS0FBSyxLQUFLLFFBQVEsRUFBRTtNQUM3QixJQUFJO1FBQ0ZBLEtBQUssR0FBR0UsSUFBSSxDQUFDQyxTQUFTLENBQUNILEtBQUssQ0FBQztNQUMvQixDQUFDLENBQUMsT0FBT0ksQ0FBQyxFQUFFO1FBQ1YsSUFBSUosS0FBSyxJQUFJQSxLQUFLLENBQUNLLFdBQVcsSUFBSUwsS0FBSyxDQUFDSyxXQUFXLENBQUNDLElBQUksRUFBRTtVQUN4RE4sS0FBSyxHQUFHQSxLQUFLLENBQUNLLFdBQVcsQ0FBQ0MsSUFBSTtRQUNoQztNQUNGO0lBQ0Y7SUFDQTtJQUNBQyxPQUFPLENBQUNDLEdBQUcsQ0FBRSxHQUFFVCxHQUFJLEtBQUlDLEtBQU0sRUFBQyxDQUFDO0lBQy9CO0VBQ0Y7QUFDRjs7QUFFZSxTQUFBUyxTQUFVO0VBQUVDLFdBQVc7RUFBRUMsSUFBSTtFQUFFQyxLQUFLO0VBQUVDO0FBQU0sQ0FBQyxFQUFFO0VBQzVEQyxrQkFBTyxDQUFDQyxlQUFlLENBQUNMLFdBQVcsQ0FBQztFQUNwQyxJQUFJRSxLQUFLLEVBQUU7SUFDVEUsa0JBQU8sQ0FBQ0YsS0FBSyxDQUFDQSxLQUFLLENBQUM7RUFDdEI7RUFDQSxJQUFJRCxJQUFJLEVBQUU7SUFDUkcsa0JBQU8sQ0FBQ0UsRUFBRSxDQUFDLFFBQVEsRUFBRUwsSUFBSSxDQUFDO0VBQzVCO0VBQ0FHLGtCQUFPLENBQUNHLEtBQUssQ0FBQ0MsT0FBTyxDQUFDQyxJQUFJLEVBQUVELE9BQU8sQ0FBQ0UsR0FBRyxDQUFDO0VBRXhDLE1BQU14QixPQUFPLEdBQUdrQixrQkFBTyxDQUFDTyxVQUFVLENBQUMsQ0FBQztFQUNwQ1IsS0FBSyxDQUFDQyxrQkFBTyxFQUFFbEIsT0FBTyxFQUFFLFlBQVk7SUFDbENELGlCQUFpQixDQUFDQyxPQUFPLENBQUM7RUFDNUIsQ0FBQyxDQUFDO0FBQ0oifQ==
|