parse-server 8.6.65 → 8.6.66

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.
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ParseGraphQLServer = void 0;
7
- var _cors = _interopRequireDefault(require("cors"));
8
7
  var _graphqlUploadExpress = _interopRequireDefault(require("graphql-upload/graphqlUploadExpress.js"));
9
8
  var _server = require("@apollo/server");
10
9
  var _express = require("@apollo/server/express4");
@@ -70,10 +69,8 @@ class ParseGraphQLServer {
70
69
  return {
71
70
  schema: await this.parseGraphQLSchema.load(),
72
71
  context: async ({
73
- req,
74
- res
72
+ req
75
73
  }) => {
76
- res.set('access-control-allow-origin', req.get('origin') || '*');
77
74
  return {
78
75
  info: req.info,
79
76
  config: req.config,
@@ -154,7 +151,7 @@ class ParseGraphQLServer {
154
151
  if (!app || !app.use) {
155
152
  (0, _requiredParameter.default)('You must provide an Express.js app instance!');
156
153
  }
157
- app.use(this.config.graphQLPath, (0, _cors.default)());
154
+ app.use(this.config.graphQLPath, (0, _middlewares.allowCrossDomain)(this.parseServer.config.appId));
158
155
  app.use(this.config.graphQLPath, _middlewares.handleParseHeaders);
159
156
  app.use(this.config.graphQLPath, _middlewares.handleParseSession);
160
157
  this.applyRequestContextMiddleware(app, this.parseServer.config);
@@ -201,4 +198,4 @@ class ParseGraphQLServer {
201
198
  }
202
199
  }
203
200
  exports.ParseGraphQLServer = ParseGraphQLServer;
204
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29ycyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2dyYXBocWxVcGxvYWRFeHByZXNzIiwiX3NlcnZlciIsIl9leHByZXNzIiwiX2Rpc2FibGVkIiwiX2V4cHJlc3MyIiwiX2dyYXBocWwiLCJfbWlkZGxld2FyZXMiLCJfcmVxdWlyZWRQYXJhbWV0ZXIiLCJfcXVlcnlDb21wbGV4aXR5IiwiX2xvZ2dlciIsIl9QYXJzZUdyYXBoUUxTY2hlbWEiLCJfUGFyc2VHcmFwaFFMQ29udHJvbGxlciIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiZGVmYXVsdCIsImhhcyIsImdldCIsInNldCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiSW50cm9zcGVjdGlvbkNvbnRyb2xQbHVnaW4iLCJwdWJsaWNJbnRyb3NwZWN0aW9uIiwicmVxdWVzdERpZFN0YXJ0IiwicmVxdWVzdENvbnRleHQiLCJkaWRSZXNvbHZlT3BlcmF0aW9uIiwiaXNNYXN0ZXJPck1haW50ZW5hbmNlIiwiY29udGV4dFZhbHVlIiwiYXV0aCIsImlzTWFzdGVyIiwiaXNNYWludGVuYW5jZSIsImlzSW50cm9zcGVjdGlvblF1ZXJ5IiwicmVxdWVzdCIsInF1ZXJ5IiwiaW5jbHVkZXMiLCJHcmFwaFFMRXJyb3IiLCJleHRlbnNpb25zIiwiaHR0cCIsInN0YXR1cyIsIlBhcnNlR3JhcGhRTFNlcnZlciIsImNvbnN0cnVjdG9yIiwicGFyc2VTZXJ2ZXIiLCJjb25maWciLCJyZXF1aXJlZFBhcmFtZXRlciIsImdyYXBoUUxQYXRoIiwicGFyc2VHcmFwaFFMQ29udHJvbGxlciIsImxvZyIsImxvZ2dlckNvbnRyb2xsZXIiLCJkZWZhdWx0TG9nZ2VyIiwicGFyc2VHcmFwaFFMU2NoZW1hIiwiUGFyc2VHcmFwaFFMU2NoZW1hIiwiZGF0YWJhc2VDb250cm9sbGVyIiwiZ3JhcGhRTEN1c3RvbVR5cGVEZWZzIiwiYXBwSWQiLCJfZ2V0R3JhcGhRTE9wdGlvbnMiLCJzY2hlbWEiLCJsb2FkIiwiY29udGV4dCIsInJlcSIsInJlcyIsImluZm8iLCJlcnJvciIsInN0YWNrIiwidG9TdHJpbmciLCJfZ2V0U2VydmVyIiwic2NoZW1hUmVmIiwiZ3JhcGhRTFNjaGVtYSIsIm5ld1NjaGVtYVJlZiIsIl9zY2hlbWFSZWZNdXRleCIsImNyZWF0ZVNlcnZlciIsImFwb2xsbyIsIkFwb2xsb1NlcnZlciIsImNzcmZQcmV2ZW50aW9uIiwicmVxdWVzdEhlYWRlcnMiLCJpbnRyb3NwZWN0aW9uIiwiZ3JhcGhRTFB1YmxpY0ludHJvc3BlY3Rpb24iLCJwbHVnaW5zIiwiQXBvbGxvU2VydmVyUGx1Z2luQ2FjaGVDb250cm9sRGlzYWJsZWQiLCJjcmVhdGVDb21wbGV4aXR5VmFsaWRhdGlvblBsdWdpbiIsInJlcXVlc3RDb21wbGV4aXR5Iiwic3RhcnQiLCJleHByZXNzTWlkZGxld2FyZSIsIl90cmFuc2Zvcm1NYXhVcGxvYWRTaXplVG9CeXRlcyIsIm1heFVwbG9hZFNpemUiLCJ1bml0TWFwIiwia2IiLCJtYiIsImdiIiwiTnVtYmVyIiwic2xpY2UiLCJNYXRoIiwicG93IiwidG9Mb3dlckNhc2UiLCJhcHBseVJlcXVlc3RDb250ZXh0TWlkZGxld2FyZSIsImFwaSIsIm9wdGlvbnMiLCJyZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUiLCJFcnJvciIsInVzZSIsImFwcGx5R3JhcGhRTCIsImFwcCIsImNvcnNNaWRkbGV3YXJlIiwiaGFuZGxlUGFyc2VIZWFkZXJzIiwiaGFuZGxlUGFyc2VTZXNzaW9uIiwiaGFuZGxlUGFyc2VFcnJvcnMiLCJncmFwaHFsVXBsb2FkRXhwcmVzcyIsIm1heEZpbGVTaXplIiwiZXhwcmVzcyIsImpzb24iLCJuZXh0Iiwic2VydmVyIiwiYXBwbHlQbGF5Z3JvdW5kIiwicGxheWdyb3VuZFBhdGgiLCJfcmVxIiwic2V0SGVhZGVyIiwid3JpdGUiLCJKU09OIiwic3RyaW5naWZ5IiwibWFzdGVyS2V5IiwiZW5kIiwic2V0R3JhcGhRTENvbmZpZyIsImdyYXBoUUxDb25maWciLCJ1cGRhdGVHcmFwaFFMQ29uZmlnIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9HcmFwaFFML1BhcnNlR3JhcGhRTFNlcnZlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY29yc01pZGRsZXdhcmUgZnJvbSAnY29ycyc7XG5pbXBvcnQgZ3JhcGhxbFVwbG9hZEV4cHJlc3MgZnJvbSAnZ3JhcGhxbC11cGxvYWQvZ3JhcGhxbFVwbG9hZEV4cHJlc3MuanMnO1xuaW1wb3J0IHsgQXBvbGxvU2VydmVyIH0gZnJvbSAnQGFwb2xsby9zZXJ2ZXInO1xuaW1wb3J0IHsgZXhwcmVzc01pZGRsZXdhcmUgfSBmcm9tICdAYXBvbGxvL3NlcnZlci9leHByZXNzNCc7XG5pbXBvcnQgeyBBcG9sbG9TZXJ2ZXJQbHVnaW5DYWNoZUNvbnRyb2xEaXNhYmxlZCB9IGZyb20gJ0BhcG9sbG8vc2VydmVyL3BsdWdpbi9kaXNhYmxlZCc7XG5pbXBvcnQgZXhwcmVzcyBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IEdyYXBoUUxFcnJvciB9IGZyb20gJ2dyYXBocWwnO1xuaW1wb3J0IHsgaGFuZGxlUGFyc2VFcnJvcnMsIGhhbmRsZVBhcnNlSGVhZGVycywgaGFuZGxlUGFyc2VTZXNzaW9uIH0gZnJvbSAnLi4vbWlkZGxld2FyZXMnO1xuaW1wb3J0IHJlcXVpcmVkUGFyYW1ldGVyIGZyb20gJy4uL3JlcXVpcmVkUGFyYW1ldGVyJztcbmltcG9ydCB7IGNyZWF0ZUNvbXBsZXhpdHlWYWxpZGF0aW9uUGx1Z2luIH0gZnJvbSAnLi9oZWxwZXJzL3F1ZXJ5Q29tcGxleGl0eSc7XG5pbXBvcnQgZGVmYXVsdExvZ2dlciBmcm9tICcuLi9sb2dnZXInO1xuaW1wb3J0IHsgUGFyc2VHcmFwaFFMU2NoZW1hIH0gZnJvbSAnLi9QYXJzZUdyYXBoUUxTY2hlbWEnO1xuaW1wb3J0IFBhcnNlR3JhcGhRTENvbnRyb2xsZXIsIHsgUGFyc2VHcmFwaFFMQ29uZmlnIH0gZnJvbSAnLi4vQ29udHJvbGxlcnMvUGFyc2VHcmFwaFFMQ29udHJvbGxlcic7XG5cblxuY29uc3QgSW50cm9zcGVjdGlvbkNvbnRyb2xQbHVnaW4gPSAocHVibGljSW50cm9zcGVjdGlvbikgPT4gKHtcblxuXG4gIHJlcXVlc3REaWRTdGFydDogKHJlcXVlc3RDb250ZXh0KSA9PiAoe1xuXG4gICAgZGlkUmVzb2x2ZU9wZXJhdGlvbjogYXN5bmMgKCkgPT4ge1xuICAgICAgLy8gSWYgcHVibGljIGludHJvc3BlY3Rpb24gaXMgZW5hYmxlZCwgd2UgYWxsb3cgYWxsIGludHJvc3BlY3Rpb24gcXVlcmllc1xuICAgICAgaWYgKHB1YmxpY0ludHJvc3BlY3Rpb24pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBpc01hc3Rlck9yTWFpbnRlbmFuY2UgPSByZXF1ZXN0Q29udGV4dC5jb250ZXh0VmFsdWUuYXV0aD8uaXNNYXN0ZXIgfHwgcmVxdWVzdENvbnRleHQuY29udGV4dFZhbHVlLmF1dGg/LmlzTWFpbnRlbmFuY2VcbiAgICAgIGlmIChpc01hc3Rlck9yTWFpbnRlbmFuY2UpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBOb3cgd2UgY2hlY2sgaWYgdGhlIHF1ZXJ5IGlzIGFuIGludHJvc3BlY3Rpb24gcXVlcnlcbiAgICAgIC8vIHRoaXMgY2hlY2sgc3RyYXRlZ3kgc2hvdWxkIHdvcmsgaW4gOTkuOTklIGNhc2VzXG4gICAgICAvLyB3ZSBjYW4gaGF2ZSBhbiBpc3N1ZSBpZiBhIHVzZXIgbmFtZSBhIGZpZWxkIG9yIGNsYXNzIF9fc2NoZW1hU29tZXRoaW5nXG4gICAgICAvLyB3ZSB3YW50IHRvIGF2b2lkIGEgZnVsbCBBU1QgY2hlY2tcbiAgICAgIGNvbnN0IGlzSW50cm9zcGVjdGlvblF1ZXJ5ID1cbiAgICAgICAgcmVxdWVzdENvbnRleHQucmVxdWVzdC5xdWVyeT8uaW5jbHVkZXMoJ19fc2NoZW1hJylcblxuICAgICAgaWYgKGlzSW50cm9zcGVjdGlvblF1ZXJ5KSB7XG4gICAgICAgIHRocm93IG5ldyBHcmFwaFFMRXJyb3IoJ0ludHJvc3BlY3Rpb24gaXMgbm90IGFsbG93ZWQnLCB7XG4gICAgICAgICAgZXh0ZW5zaW9uczoge1xuICAgICAgICAgICAgaHR0cDoge1xuICAgICAgICAgICAgICBzdGF0dXM6IDQwMyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuXG4gIH0pXG5cbn0pO1xuXG5jbGFzcyBQYXJzZUdyYXBoUUxTZXJ2ZXIge1xuICBwYXJzZUdyYXBoUUxDb250cm9sbGVyOiBQYXJzZUdyYXBoUUxDb250cm9sbGVyO1xuXG4gIGNvbnN0cnVjdG9yKHBhcnNlU2VydmVyLCBjb25maWcpIHtcbiAgICB0aGlzLnBhcnNlU2VydmVyID0gcGFyc2VTZXJ2ZXIgfHwgcmVxdWlyZWRQYXJhbWV0ZXIoJ1lvdSBtdXN0IHByb3ZpZGUgYSBwYXJzZVNlcnZlciBpbnN0YW5jZSEnKTtcbiAgICBpZiAoIWNvbmZpZyB8fCAhY29uZmlnLmdyYXBoUUxQYXRoKSB7XG4gICAgICByZXF1aXJlZFBhcmFtZXRlcignWW91IG11c3QgcHJvdmlkZSBhIGNvbmZpZy5ncmFwaFFMUGF0aCEnKTtcbiAgICB9XG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgdGhpcy5wYXJzZUdyYXBoUUxDb250cm9sbGVyID0gdGhpcy5wYXJzZVNlcnZlci5jb25maWcucGFyc2VHcmFwaFFMQ29udHJvbGxlcjtcbiAgICB0aGlzLmxvZyA9XG4gICAgICAodGhpcy5wYXJzZVNlcnZlci5jb25maWcgJiYgdGhpcy5wYXJzZVNlcnZlci5jb25maWcubG9nZ2VyQ29udHJvbGxlcikgfHwgZGVmYXVsdExvZ2dlcjtcbiAgICB0aGlzLnBhcnNlR3JhcGhRTFNjaGVtYSA9IG5ldyBQYXJzZUdyYXBoUUxTY2hlbWEoe1xuICAgICAgcGFyc2VHcmFwaFFMQ29udHJvbGxlcjogdGhpcy5wYXJzZUdyYXBoUUxDb250cm9sbGVyLFxuICAgICAgZGF0YWJhc2VDb250cm9sbGVyOiB0aGlzLnBhcnNlU2VydmVyLmNvbmZpZy5kYXRhYmFzZUNvbnRyb2xsZXIsXG4gICAgICBsb2c6IHRoaXMubG9nLFxuICAgICAgZ3JhcGhRTEN1c3RvbVR5cGVEZWZzOiB0aGlzLmNvbmZpZy5ncmFwaFFMQ3VzdG9tVHlwZURlZnMsXG4gICAgICBhcHBJZDogdGhpcy5wYXJzZVNlcnZlci5jb25maWcuYXBwSWQsXG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBfZ2V0R3JhcGhRTE9wdGlvbnMoKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHNjaGVtYTogYXdhaXQgdGhpcy5wYXJzZUdyYXBoUUxTY2hlbWEubG9hZCgpLFxuICAgICAgICBjb250ZXh0OiBhc3luYyAoeyByZXEsIHJlcyB9KSA9PiB7XG4gICAgICAgICAgcmVzLnNldCgnYWNjZXNzLWNvbnRyb2wtYWxsb3ctb3JpZ2luJywgcmVxLmdldCgnb3JpZ2luJykgfHwgJyonKTtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaW5mbzogcmVxLmluZm8sXG4gICAgICAgICAgICBjb25maWc6IHJlcS5jb25maWcsXG4gICAgICAgICAgICBhdXRoOiByZXEuYXV0aCxcbiAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZy5lcnJvcihlLnN0YWNrIHx8ICh0eXBlb2YgZS50b1N0cmluZyA9PT0gJ2Z1bmN0aW9uJyAmJiBlLnRvU3RyaW5nKCkpIHx8IGUpO1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBfZ2V0U2VydmVyKCkge1xuICAgIGNvbnN0IHNjaGVtYVJlZiA9IHRoaXMucGFyc2VHcmFwaFFMU2NoZW1hLmdyYXBoUUxTY2hlbWE7XG4gICAgY29uc3QgbmV3U2NoZW1hUmVmID0gYXdhaXQgdGhpcy5wYXJzZUdyYXBoUUxTY2hlbWEubG9hZCgpO1xuICAgIGlmIChzY2hlbWFSZWYgPT09IG5ld1NjaGVtYVJlZiAmJiB0aGlzLl9zZXJ2ZXIpIHtcbiAgICAgIHJldHVybiB0aGlzLl9zZXJ2ZXI7XG4gICAgfVxuICAgIC8vIEl0IG1lYW5zIGEgcGFyYWxsZWwgX2dldFNlcnZlciBjYWxsIGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3NcbiAgICBpZiAodGhpcy5fc2NoZW1hUmVmTXV0ZXggPT09IG5ld1NjaGVtYVJlZikge1xuICAgICAgcmV0dXJuIHRoaXMuX3NlcnZlcjtcbiAgICB9XG4gICAgLy8gVXBkYXRlIHRoZSBzY2hlbWEgcmVmIG11dGV4IHRvIGF2b2lkIHBhcmFsbGVsIF9nZXRTZXJ2ZXIgY2FsbHNcbiAgICB0aGlzLl9zY2hlbWFSZWZNdXRleCA9IG5ld1NjaGVtYVJlZjtcbiAgICBjb25zdCBjcmVhdGVTZXJ2ZXIgPSBhc3luYyAoKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB7IHNjaGVtYSwgY29udGV4dCB9ID0gYXdhaXQgdGhpcy5fZ2V0R3JhcGhRTE9wdGlvbnMoKTtcbiAgICAgICAgY29uc3QgYXBvbGxvID0gbmV3IEFwb2xsb1NlcnZlcih7XG4gICAgICAgICAgY3NyZlByZXZlbnRpb246IHtcbiAgICAgICAgICAgIC8vIFNlZSBodHRwczovL3d3dy5hcG9sbG9ncmFwaHFsLmNvbS9kb2NzL3JvdXRlci9jb25maWd1cmF0aW9uL2NzcmYvXG4gICAgICAgICAgICAvLyBuZWVkZWQgc2luY2Ugd2UgdXNlIGdyYXBocWwgdXBsb2FkXG4gICAgICAgICAgICByZXF1ZXN0SGVhZGVyczogWydYLVBhcnNlLUFwcGxpY2F0aW9uLUlkJ10sXG4gICAgICAgICAgfSxcbiAgICAgICAgICBpbnRyb3NwZWN0aW9uOiB0aGlzLmNvbmZpZy5ncmFwaFFMUHVibGljSW50cm9zcGVjdGlvbixcbiAgICAgICAgICBwbHVnaW5zOiBbQXBvbGxvU2VydmVyUGx1Z2luQ2FjaGVDb250cm9sRGlzYWJsZWQoKSwgSW50cm9zcGVjdGlvbkNvbnRyb2xQbHVnaW4odGhpcy5jb25maWcuZ3JhcGhRTFB1YmxpY0ludHJvc3BlY3Rpb24pLCBjcmVhdGVDb21wbGV4aXR5VmFsaWRhdGlvblBsdWdpbigoKSA9PiB0aGlzLnBhcnNlU2VydmVyLmNvbmZpZy5yZXF1ZXN0Q29tcGxleGl0eSldLFxuICAgICAgICAgIHNjaGVtYSxcbiAgICAgICAgfSk7XG4gICAgICAgIGF3YWl0IGFwb2xsby5zdGFydCgpO1xuICAgICAgICByZXR1cm4gZXhwcmVzc01pZGRsZXdhcmUoYXBvbGxvLCB7XG4gICAgICAgICAgY29udGV4dCxcbiAgICAgICAgfSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIC8vIFJlc2V0IGFsbCBtdXRleGVzIGFuZCBmb3J3YXJkIHRoZSBlcnJvclxuICAgICAgICB0aGlzLl9zZXJ2ZXIgPSBudWxsO1xuICAgICAgICB0aGlzLl9zY2hlbWFSZWZNdXRleCA9IG51bGw7XG4gICAgICAgIHRocm93IGU7XG4gICAgICB9XG4gICAgfVxuICAgIC8vIERvIG5vdCBhd2FpdCBzbyBwYXJhbGxlbCByZXF1ZXN0IHdpbGwgd2FpdCB0aGUgc2FtZSBwcm9taXNlIHJlZlxuICAgIHRoaXMuX3NlcnZlciA9IGNyZWF0ZVNlcnZlcigpO1xuICAgIHJldHVybiB0aGlzLl9zZXJ2ZXI7XG4gIH1cblxuICBfdHJhbnNmb3JtTWF4VXBsb2FkU2l6ZVRvQnl0ZXMobWF4VXBsb2FkU2l6ZSkge1xuICAgIGNvbnN0IHVuaXRNYXAgPSB7XG4gICAgICBrYjogMSxcbiAgICAgIG1iOiAyLFxuICAgICAgZ2I6IDMsXG4gICAgfTtcblxuICAgIHJldHVybiAoXG4gICAgICBOdW1iZXIobWF4VXBsb2FkU2l6ZS5zbGljZSgwLCAtMikpICpcbiAgICAgIE1hdGgucG93KDEwMjQsIHVuaXRNYXBbbWF4VXBsb2FkU2l6ZS5zbGljZSgtMikudG9Mb3dlckNhc2UoKV0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc3RhdGljXG4gICAqIEFsbG93IGRldmVsb3BlcnMgdG8gY3VzdG9taXplIGVhY2ggcmVxdWVzdCB3aXRoIGludmVyc2lvbiBvZiBjb250cm9sL2RlcGVuZGVuY3kgaW5qZWN0aW9uXG4gICAqL1xuICBhcHBseVJlcXVlc3RDb250ZXh0TWlkZGxld2FyZShhcGksIG9wdGlvbnMpIHtcbiAgICBpZiAob3B0aW9ucy5yZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUpIHtcbiAgICAgIGlmICh0eXBlb2Ygb3B0aW9ucy5yZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUgbXVzdCBiZSBhIGZ1bmN0aW9uJyk7XG4gICAgICB9XG4gICAgICBhcGkudXNlKHRoaXMuY29uZmlnLmdyYXBoUUxQYXRoLCBvcHRpb25zLnJlcXVlc3RDb250ZXh0TWlkZGxld2FyZSk7XG4gICAgfVxuICB9XG5cbiAgYXBwbHlHcmFwaFFMKGFwcCkge1xuICAgIGlmICghYXBwIHx8ICFhcHAudXNlKSB7XG4gICAgICByZXF1aXJlZFBhcmFtZXRlcignWW91IG11c3QgcHJvdmlkZSBhbiBFeHByZXNzLmpzIGFwcCBpbnN0YW5jZSEnKTtcbiAgICB9XG4gICAgYXBwLnVzZSh0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCwgY29yc01pZGRsZXdhcmUoKSk7XG4gICAgYXBwLnVzZSh0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCwgaGFuZGxlUGFyc2VIZWFkZXJzKTtcbiAgICBhcHAudXNlKHRoaXMuY29uZmlnLmdyYXBoUUxQYXRoLCBoYW5kbGVQYXJzZVNlc3Npb24pO1xuICAgIHRoaXMuYXBwbHlSZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUoYXBwLCB0aGlzLnBhcnNlU2VydmVyLmNvbmZpZyk7XG4gICAgYXBwLnVzZSh0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCwgaGFuZGxlUGFyc2VFcnJvcnMpO1xuICAgIGFwcC51c2UoXG4gICAgICB0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCxcbiAgICAgIGdyYXBocWxVcGxvYWRFeHByZXNzKHtcbiAgICAgICAgbWF4RmlsZVNpemU6IHRoaXMuX3RyYW5zZm9ybU1heFVwbG9hZFNpemVUb0J5dGVzKFxuICAgICAgICAgIHRoaXMucGFyc2VTZXJ2ZXIuY29uZmlnLm1heFVwbG9hZFNpemUgfHwgJzIwbWInXG4gICAgICAgICksXG4gICAgICB9KVxuICAgICk7XG4gICAgYXBwLnVzZSh0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCwgZXhwcmVzcy5qc29uKCksIGFzeW5jIChyZXEsIHJlcywgbmV4dCkgPT4ge1xuICAgICAgY29uc3Qgc2VydmVyID0gYXdhaXQgdGhpcy5fZ2V0U2VydmVyKCk7XG4gICAgICByZXR1cm4gc2VydmVyKHJlcSwgcmVzLCBuZXh0KTtcbiAgICB9KTtcbiAgfVxuXG4gIGFwcGx5UGxheWdyb3VuZChhcHApIHtcbiAgICBpZiAoIWFwcCB8fCAhYXBwLmdldCkge1xuICAgICAgcmVxdWlyZWRQYXJhbWV0ZXIoJ1lvdSBtdXN0IHByb3ZpZGUgYW4gRXhwcmVzcy5qcyBhcHAgaW5zdGFuY2UhJyk7XG4gICAgfVxuXG4gICAgYXBwLmdldChcbiAgICAgIHRoaXMuY29uZmlnLnBsYXlncm91bmRQYXRoIHx8XG4gICAgICByZXF1aXJlZFBhcmFtZXRlcignWW91IG11c3QgcHJvdmlkZSBhIGNvbmZpZy5wbGF5Z3JvdW5kUGF0aCB0byBhcHBseVBsYXlncm91bmQhJyksXG4gICAgICAoX3JlcSwgcmVzKSA9PiB7XG4gICAgICAgIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtVHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgICAgICAgcmVzLndyaXRlKFxuICAgICAgICAgIGA8ZGl2IGlkPVwic2FuZGJveFwiIHN0eWxlPVwicG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjBcIj48L2Rpdj5cbiAgICAgICAgICA8c2NyaXB0IHNyYz1cImh0dHBzOi8vZW1iZWRkYWJsZS1zYW5kYm94LmNkbi5hcG9sbG9ncmFwaHFsLmNvbS9fbGF0ZXN0L2VtYmVkZGFibGUtc2FuZGJveC51bWQucHJvZHVjdGlvbi5taW4uanNcIj48L3NjcmlwdD5cbiAgICAgICAgICA8c2NyaXB0PlxuICAgICAgICAgICBuZXcgd2luZG93LkVtYmVkZGVkU2FuZGJveCh7XG4gICAgICAgICAgICAgdGFyZ2V0OiBcIiNzYW5kYm94XCIsXG4gICAgICAgICAgICAgZW5kcG9pbnRJc0VkaXRhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgICBpbml0aWFsRW5kcG9pbnQ6ICR7SlNPTi5zdHJpbmdpZnkodGhpcy5jb25maWcuZ3JhcGhRTFBhdGgpfSxcbiAgICAgICAgICAgICBoYW5kbGVSZXF1ZXN0OiAoZW5kcG9pbnRVcmwsIG9wdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIGZldGNoKGVuZHBvaW50VXJsLCB7XG4gICAgICAgICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLm9wdGlvbnMuaGVhZGVycyxcbiAgICAgICAgICAgICAgICAgICAgJ1gtUGFyc2UtQXBwbGljYXRpb24tSWQnOiAke0pTT04uc3RyaW5naWZ5KHRoaXMucGFyc2VTZXJ2ZXIuY29uZmlnLmFwcElkKX0sXG4gICAgICAgICAgICAgICAgICAgICdYLVBhcnNlLU1hc3Rlci1LZXknOiAke0pTT04uc3RyaW5naWZ5KHRoaXMucGFyc2VTZXJ2ZXIuY29uZmlnLm1hc3RlcktleSl9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICB9KTtcbiAgICAgICAgICAgLy8gYWR2YW5jZWQgb3B0aW9uczogaHR0cHM6Ly93d3cuYXBvbGxvZ3JhcGhxbC5jb20vZG9jcy9zdHVkaW8vZXhwbG9yZXIvc2FuZGJveCNlbWJlZGRpbmctc2FuZGJveFxuICAgICAgICAgIDwvc2NyaXB0PmBcbiAgICAgICAgKTtcbiAgICAgICAgcmVzLmVuZCgpO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBzZXRHcmFwaFFMQ29uZmlnKGdyYXBoUUxDb25maWc6IFBhcnNlR3JhcGhRTENvbmZpZyk6IFByb21pc2Uge1xuICAgIHJldHVybiB0aGlzLnBhcnNlR3JhcGhRTENvbnRyb2xsZXIudXBkYXRlR3JhcGhRTENvbmZpZyhncmFwaFFMQ29uZmlnKTtcbiAgfVxufVxuXG5leHBvcnQgeyBQYXJzZUdyYXBoUUxTZXJ2ZXIgfTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsS0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMscUJBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFNBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFNLFFBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLFlBQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLGtCQUFBLEdBQUFULHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUyxnQkFBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsT0FBQSxHQUFBWCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVcsbUJBQUEsR0FBQVgsT0FBQTtBQUNBLElBQUFZLHVCQUFBLEdBQUFDLHVCQUFBLENBQUFiLE9BQUE7QUFBbUcsU0FBQWEsd0JBQUFDLENBQUEsRUFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxNQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFILHVCQUFBLFlBQUFBLENBQUFDLENBQUEsRUFBQUMsQ0FBQSxTQUFBQSxDQUFBLElBQUFE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
201
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZ3JhcGhxbFVwbG9hZEV4cHJlc3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zZXJ2ZXIiLCJfZXhwcmVzcyIsIl9kaXNhYmxlZCIsIl9leHByZXNzMiIsIl9ncmFwaHFsIiwiX21pZGRsZXdhcmVzIiwiX3JlcXVpcmVkUGFyYW1ldGVyIiwiX3F1ZXJ5Q29tcGxleGl0eSIsIl9sb2dnZXIiLCJfUGFyc2VHcmFwaFFMU2NoZW1hIiwiX1BhcnNlR3JhcGhRTENvbnRyb2xsZXIiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsImUiLCJ0IiwiV2Vha01hcCIsInIiLCJuIiwiX19lc01vZHVsZSIsIm8iLCJpIiwiZiIsIl9fcHJvdG9fXyIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJzZXQiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIkludHJvc3BlY3Rpb25Db250cm9sUGx1Z2luIiwicHVibGljSW50cm9zcGVjdGlvbiIsInJlcXVlc3REaWRTdGFydCIsInJlcXVlc3RDb250ZXh0IiwiZGlkUmVzb2x2ZU9wZXJhdGlvbiIsImlzTWFzdGVyT3JNYWludGVuYW5jZSIsImNvbnRleHRWYWx1ZSIsImF1dGgiLCJpc01hc3RlciIsImlzTWFpbnRlbmFuY2UiLCJpc0ludHJvc3BlY3Rpb25RdWVyeSIsInJlcXVlc3QiLCJxdWVyeSIsImluY2x1ZGVzIiwiR3JhcGhRTEVycm9yIiwiZXh0ZW5zaW9ucyIsImh0dHAiLCJzdGF0dXMiLCJQYXJzZUdyYXBoUUxTZXJ2ZXIiLCJjb25zdHJ1Y3RvciIsInBhcnNlU2VydmVyIiwiY29uZmlnIiwicmVxdWlyZWRQYXJhbWV0ZXIiLCJncmFwaFFMUGF0aCIsInBhcnNlR3JhcGhRTENvbnRyb2xsZXIiLCJsb2ciLCJsb2dnZXJDb250cm9sbGVyIiwiZGVmYXVsdExvZ2dlciIsInBhcnNlR3JhcGhRTFNjaGVtYSIsIlBhcnNlR3JhcGhRTFNjaGVtYSIsImRhdGFiYXNlQ29udHJvbGxlciIsImdyYXBoUUxDdXN0b21UeXBlRGVmcyIsImFwcElkIiwiX2dldEdyYXBoUUxPcHRpb25zIiwic2NoZW1hIiwibG9hZCIsImNvbnRleHQiLCJyZXEiLCJpbmZvIiwiZXJyb3IiLCJzdGFjayIsInRvU3RyaW5nIiwiX2dldFNlcnZlciIsInNjaGVtYVJlZiIsImdyYXBoUUxTY2hlbWEiLCJuZXdTY2hlbWFSZWYiLCJfc2NoZW1hUmVmTXV0ZXgiLCJjcmVhdGVTZXJ2ZXIiLCJhcG9sbG8iLCJBcG9sbG9TZXJ2ZXIiLCJjc3JmUHJldmVudGlvbiIsInJlcXVlc3RIZWFkZXJzIiwiaW50cm9zcGVjdGlvbiIsImdyYXBoUUxQdWJsaWNJbnRyb3NwZWN0aW9uIiwicGx1Z2lucyIsIkFwb2xsb1NlcnZlclBsdWdpbkNhY2hlQ29udHJvbERpc2FibGVkIiwiY3JlYXRlQ29tcGxleGl0eVZhbGlkYXRpb25QbHVnaW4iLCJyZXF1ZXN0Q29tcGxleGl0eSIsInN0YXJ0IiwiZXhwcmVzc01pZGRsZXdhcmUiLCJfdHJhbnNmb3JtTWF4VXBsb2FkU2l6ZVRvQnl0ZXMiLCJtYXhVcGxvYWRTaXplIiwidW5pdE1hcCIsImtiIiwibWIiLCJnYiIsIk51bWJlciIsInNsaWNlIiwiTWF0aCIsInBvdyIsInRvTG93ZXJDYXNlIiwiYXBwbHlSZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUiLCJhcGkiLCJvcHRpb25zIiwicmVxdWVzdENvbnRleHRNaWRkbGV3YXJlIiwiRXJyb3IiLCJ1c2UiLCJhcHBseUdyYXBoUUwiLCJhcHAiLCJhbGxvd0Nyb3NzRG9tYWluIiwiaGFuZGxlUGFyc2VIZWFkZXJzIiwiaGFuZGxlUGFyc2VTZXNzaW9uIiwiaGFuZGxlUGFyc2VFcnJvcnMiLCJncmFwaHFsVXBsb2FkRXhwcmVzcyIsIm1heEZpbGVTaXplIiwiZXhwcmVzcyIsImpzb24iLCJyZXMiLCJuZXh0Iiwic2VydmVyIiwiYXBwbHlQbGF5Z3JvdW5kIiwicGxheWdyb3VuZFBhdGgiLCJfcmVxIiwic2V0SGVhZGVyIiwid3JpdGUiLCJKU09OIiwic3RyaW5naWZ5IiwibWFzdGVyS2V5IiwiZW5kIiwic2V0R3JhcGhRTENvbmZpZyIsImdyYXBoUUxDb25maWciLCJ1cGRhdGVHcmFwaFFMQ29uZmlnIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9HcmFwaFFML1BhcnNlR3JhcGhRTFNlcnZlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZ3JhcGhxbFVwbG9hZEV4cHJlc3MgZnJvbSAnZ3JhcGhxbC11cGxvYWQvZ3JhcGhxbFVwbG9hZEV4cHJlc3MuanMnO1xuaW1wb3J0IHsgQXBvbGxvU2VydmVyIH0gZnJvbSAnQGFwb2xsby9zZXJ2ZXInO1xuaW1wb3J0IHsgZXhwcmVzc01pZGRsZXdhcmUgfSBmcm9tICdAYXBvbGxvL3NlcnZlci9leHByZXNzNCc7XG5pbXBvcnQgeyBBcG9sbG9TZXJ2ZXJQbHVnaW5DYWNoZUNvbnRyb2xEaXNhYmxlZCB9IGZyb20gJ0BhcG9sbG8vc2VydmVyL3BsdWdpbi9kaXNhYmxlZCc7XG5pbXBvcnQgZXhwcmVzcyBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IEdyYXBoUUxFcnJvciB9IGZyb20gJ2dyYXBocWwnO1xuaW1wb3J0IHsgYWxsb3dDcm9zc0RvbWFpbiwgaGFuZGxlUGFyc2VFcnJvcnMsIGhhbmRsZVBhcnNlSGVhZGVycywgaGFuZGxlUGFyc2VTZXNzaW9uIH0gZnJvbSAnLi4vbWlkZGxld2FyZXMnO1xuaW1wb3J0IHJlcXVpcmVkUGFyYW1ldGVyIGZyb20gJy4uL3JlcXVpcmVkUGFyYW1ldGVyJztcbmltcG9ydCB7IGNyZWF0ZUNvbXBsZXhpdHlWYWxpZGF0aW9uUGx1Z2luIH0gZnJvbSAnLi9oZWxwZXJzL3F1ZXJ5Q29tcGxleGl0eSc7XG5pbXBvcnQgZGVmYXVsdExvZ2dlciBmcm9tICcuLi9sb2dnZXInO1xuaW1wb3J0IHsgUGFyc2VHcmFwaFFMU2NoZW1hIH0gZnJvbSAnLi9QYXJzZUdyYXBoUUxTY2hlbWEnO1xuaW1wb3J0IFBhcnNlR3JhcGhRTENvbnRyb2xsZXIsIHsgUGFyc2VHcmFwaFFMQ29uZmlnIH0gZnJvbSAnLi4vQ29udHJvbGxlcnMvUGFyc2VHcmFwaFFMQ29udHJvbGxlcic7XG5cblxuY29uc3QgSW50cm9zcGVjdGlvbkNvbnRyb2xQbHVnaW4gPSAocHVibGljSW50cm9zcGVjdGlvbikgPT4gKHtcblxuXG4gIHJlcXVlc3REaWRTdGFydDogKHJlcXVlc3RDb250ZXh0KSA9PiAoe1xuXG4gICAgZGlkUmVzb2x2ZU9wZXJhdGlvbjogYXN5bmMgKCkgPT4ge1xuICAgICAgLy8gSWYgcHVibGljIGludHJvc3BlY3Rpb24gaXMgZW5hYmxlZCwgd2UgYWxsb3cgYWxsIGludHJvc3BlY3Rpb24gcXVlcmllc1xuICAgICAgaWYgKHB1YmxpY0ludHJvc3BlY3Rpb24pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBpc01hc3Rlck9yTWFpbnRlbmFuY2UgPSByZXF1ZXN0Q29udGV4dC5jb250ZXh0VmFsdWUuYXV0aD8uaXNNYXN0ZXIgfHwgcmVxdWVzdENvbnRleHQuY29udGV4dFZhbHVlLmF1dGg/LmlzTWFpbnRlbmFuY2VcbiAgICAgIGlmIChpc01hc3Rlck9yTWFpbnRlbmFuY2UpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBOb3cgd2UgY2hlY2sgaWYgdGhlIHF1ZXJ5IGlzIGFuIGludHJvc3BlY3Rpb24gcXVlcnlcbiAgICAgIC8vIHRoaXMgY2hlY2sgc3RyYXRlZ3kgc2hvdWxkIHdvcmsgaW4gOTkuOTklIGNhc2VzXG4gICAgICAvLyB3ZSBjYW4gaGF2ZSBhbiBpc3N1ZSBpZiBhIHVzZXIgbmFtZSBhIGZpZWxkIG9yIGNsYXNzIF9fc2NoZW1hU29tZXRoaW5nXG4gICAgICAvLyB3ZSB3YW50IHRvIGF2b2lkIGEgZnVsbCBBU1QgY2hlY2tcbiAgICAgIGNvbnN0IGlzSW50cm9zcGVjdGlvblF1ZXJ5ID1cbiAgICAgICAgcmVxdWVzdENvbnRleHQucmVxdWVzdC5xdWVyeT8uaW5jbHVkZXMoJ19fc2NoZW1hJylcblxuICAgICAgaWYgKGlzSW50cm9zcGVjdGlvblF1ZXJ5KSB7XG4gICAgICAgIHRocm93IG5ldyBHcmFwaFFMRXJyb3IoJ0ludHJvc3BlY3Rpb24gaXMgbm90IGFsbG93ZWQnLCB7XG4gICAgICAgICAgZXh0ZW5zaW9uczoge1xuICAgICAgICAgICAgaHR0cDoge1xuICAgICAgICAgICAgICBzdGF0dXM6IDQwMyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuXG4gIH0pXG5cbn0pO1xuXG5jbGFzcyBQYXJzZUdyYXBoUUxTZXJ2ZXIge1xuICBwYXJzZUdyYXBoUUxDb250cm9sbGVyOiBQYXJzZUdyYXBoUUxDb250cm9sbGVyO1xuXG4gIGNvbnN0cnVjdG9yKHBhcnNlU2VydmVyLCBjb25maWcpIHtcbiAgICB0aGlzLnBhcnNlU2VydmVyID0gcGFyc2VTZXJ2ZXIgfHwgcmVxdWlyZWRQYXJhbWV0ZXIoJ1lvdSBtdXN0IHByb3ZpZGUgYSBwYXJzZVNlcnZlciBpbnN0YW5jZSEnKTtcbiAgICBpZiAoIWNvbmZpZyB8fCAhY29uZmlnLmdyYXBoUUxQYXRoKSB7XG4gICAgICByZXF1aXJlZFBhcmFtZXRlcignWW91IG11c3QgcHJvdmlkZSBhIGNvbmZpZy5ncmFwaFFMUGF0aCEnKTtcbiAgICB9XG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgdGhpcy5wYXJzZUdyYXBoUUxDb250cm9sbGVyID0gdGhpcy5wYXJzZVNlcnZlci5jb25maWcucGFyc2VHcmFwaFFMQ29udHJvbGxlcjtcbiAgICB0aGlzLmxvZyA9XG4gICAgICAodGhpcy5wYXJzZVNlcnZlci5jb25maWcgJiYgdGhpcy5wYXJzZVNlcnZlci5jb25maWcubG9nZ2VyQ29udHJvbGxlcikgfHwgZGVmYXVsdExvZ2dlcjtcbiAgICB0aGlzLnBhcnNlR3JhcGhRTFNjaGVtYSA9IG5ldyBQYXJzZUdyYXBoUUxTY2hlbWEoe1xuICAgICAgcGFyc2VHcmFwaFFMQ29udHJvbGxlcjogdGhpcy5wYXJzZUdyYXBoUUxDb250cm9sbGVyLFxuICAgICAgZGF0YWJhc2VDb250cm9sbGVyOiB0aGlzLnBhcnNlU2VydmVyLmNvbmZpZy5kYXRhYmFzZUNvbnRyb2xsZXIsXG4gICAgICBsb2c6IHRoaXMubG9nLFxuICAgICAgZ3JhcGhRTEN1c3RvbVR5cGVEZWZzOiB0aGlzLmNvbmZpZy5ncmFwaFFMQ3VzdG9tVHlwZURlZnMsXG4gICAgICBhcHBJZDogdGhpcy5wYXJzZVNlcnZlci5jb25maWcuYXBwSWQsXG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBfZ2V0R3JhcGhRTE9wdGlvbnMoKSB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHNjaGVtYTogYXdhaXQgdGhpcy5wYXJzZUdyYXBoUUxTY2hlbWEubG9hZCgpLFxuICAgICAgICBjb250ZXh0OiBhc3luYyAoeyByZXEgfSkgPT4ge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpbmZvOiByZXEuaW5mbyxcbiAgICAgICAgICAgIGNvbmZpZzogcmVxLmNvbmZpZyxcbiAgICAgICAgICAgIGF1dGg6IHJlcS5hdXRoLFxuICAgICAgICAgIH07XG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRoaXMubG9nLmVycm9yKGUuc3RhY2sgfHwgKHR5cGVvZiBlLnRvU3RyaW5nID09PSAnZnVuY3Rpb24nICYmIGUudG9TdHJpbmcoKSkgfHwgZSk7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIF9nZXRTZXJ2ZXIoKSB7XG4gICAgY29uc3Qgc2NoZW1hUmVmID0gdGhpcy5wYXJzZUdyYXBoUUxTY2hlbWEuZ3JhcGhRTFNjaGVtYTtcbiAgICBjb25zdCBuZXdTY2hlbWFSZWYgPSBhd2FpdCB0aGlzLnBhcnNlR3JhcGhRTFNjaGVtYS5sb2FkKCk7XG4gICAgaWYgKHNjaGVtYVJlZiA9PT0gbmV3U2NoZW1hUmVmICYmIHRoaXMuX3NlcnZlcikge1xuICAgICAgcmV0dXJuIHRoaXMuX3NlcnZlcjtcbiAgICB9XG4gICAgLy8gSXQgbWVhbnMgYSBwYXJhbGxlbCBfZ2V0U2VydmVyIGNhbGwgaXMgYWxyZWFkeSBpbiBwcm9ncmVzc1xuICAgIGlmICh0aGlzLl9zY2hlbWFSZWZNdXRleCA9PT0gbmV3U2NoZW1hUmVmKSB7XG4gICAgICByZXR1cm4gdGhpcy5fc2VydmVyO1xuICAgIH1cbiAgICAvLyBVcGRhdGUgdGhlIHNjaGVtYSByZWYgbXV0ZXggdG8gYXZvaWQgcGFyYWxsZWwgX2dldFNlcnZlciBjYWxsc1xuICAgIHRoaXMuX3NjaGVtYVJlZk11dGV4ID0gbmV3U2NoZW1hUmVmO1xuICAgIGNvbnN0IGNyZWF0ZVNlcnZlciA9IGFzeW5jICgpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgc2NoZW1hLCBjb250ZXh0IH0gPSBhd2FpdCB0aGlzLl9nZXRHcmFwaFFMT3B0aW9ucygpO1xuICAgICAgICBjb25zdCBhcG9sbG8gPSBuZXcgQXBvbGxvU2VydmVyKHtcbiAgICAgICAgICBjc3JmUHJldmVudGlvbjoge1xuICAgICAgICAgICAgLy8gU2VlIGh0dHBzOi8vd3d3LmFwb2xsb2dyYXBocWwuY29tL2RvY3Mvcm91dGVyL2NvbmZpZ3VyYXRpb24vY3NyZi9cbiAgICAgICAgICAgIC8vIG5lZWRlZCBzaW5jZSB3ZSB1c2UgZ3JhcGhxbCB1cGxvYWRcbiAgICAgICAgICAgIHJlcXVlc3RIZWFkZXJzOiBbJ1gtUGFyc2UtQXBwbGljYXRpb24tSWQnXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGludHJvc3BlY3Rpb246IHRoaXMuY29uZmlnLmdyYXBoUUxQdWJsaWNJbnRyb3NwZWN0aW9uLFxuICAgICAgICAgIHBsdWdpbnM6IFtBcG9sbG9TZXJ2ZXJQbHVnaW5DYWNoZUNvbnRyb2xEaXNhYmxlZCgpLCBJbnRyb3NwZWN0aW9uQ29udHJvbFBsdWdpbih0aGlzLmNvbmZpZy5ncmFwaFFMUHVibGljSW50cm9zcGVjdGlvbiksIGNyZWF0ZUNvbXBsZXhpdHlWYWxpZGF0aW9uUGx1Z2luKCgpID0+IHRoaXMucGFyc2VTZXJ2ZXIuY29uZmlnLnJlcXVlc3RDb21wbGV4aXR5KV0sXG4gICAgICAgICAgc2NoZW1hLFxuICAgICAgICB9KTtcbiAgICAgICAgYXdhaXQgYXBvbGxvLnN0YXJ0KCk7XG4gICAgICAgIHJldHVybiBleHByZXNzTWlkZGxld2FyZShhcG9sbG8sIHtcbiAgICAgICAgICBjb250ZXh0LFxuICAgICAgICB9KTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgLy8gUmVzZXQgYWxsIG11dGV4ZXMgYW5kIGZvcndhcmQgdGhlIGVycm9yXG4gICAgICAgIHRoaXMuX3NlcnZlciA9IG51bGw7XG4gICAgICAgIHRoaXMuX3NjaGVtYVJlZk11dGV4ID0gbnVsbDtcbiAgICAgICAgdGhyb3cgZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gRG8gbm90IGF3YWl0IHNvIHBhcmFsbGVsIHJlcXVlc3Qgd2lsbCB3YWl0IHRoZSBzYW1lIHByb21pc2UgcmVmXG4gICAgdGhpcy5fc2VydmVyID0gY3JlYXRlU2VydmVyKCk7XG4gICAgcmV0dXJuIHRoaXMuX3NlcnZlcjtcbiAgfVxuXG4gIF90cmFuc2Zvcm1NYXhVcGxvYWRTaXplVG9CeXRlcyhtYXhVcGxvYWRTaXplKSB7XG4gICAgY29uc3QgdW5pdE1hcCA9IHtcbiAgICAgIGtiOiAxLFxuICAgICAgbWI6IDIsXG4gICAgICBnYjogMyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgIE51bWJlcihtYXhVcGxvYWRTaXplLnNsaWNlKDAsIC0yKSkgKlxuICAgICAgTWF0aC5wb3coMTAyNCwgdW5pdE1hcFttYXhVcGxvYWRTaXplLnNsaWNlKC0yKS50b0xvd2VyQ2FzZSgpXSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdGF0aWNcbiAgICogQWxsb3cgZGV2ZWxvcGVycyB0byBjdXN0b21pemUgZWFjaCByZXF1ZXN0IHdpdGggaW52ZXJzaW9uIG9mIGNvbnRyb2wvZGVwZW5kZW5jeSBpbmplY3Rpb25cbiAgICovXG4gIGFwcGx5UmVxdWVzdENvbnRleHRNaWRkbGV3YXJlKGFwaSwgb3B0aW9ucykge1xuICAgIGlmIChvcHRpb25zLnJlcXVlc3RDb250ZXh0TWlkZGxld2FyZSkge1xuICAgICAgaWYgKHR5cGVvZiBvcHRpb25zLnJlcXVlc3RDb250ZXh0TWlkZGxld2FyZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlcXVlc3RDb250ZXh0TWlkZGxld2FyZSBtdXN0IGJlIGEgZnVuY3Rpb24nKTtcbiAgICAgIH1cbiAgICAgIGFwaS51c2UodGhpcy5jb25maWcuZ3JhcGhRTFBhdGgsIG9wdGlvbnMucmVxdWVzdENvbnRleHRNaWRkbGV3YXJlKTtcbiAgICB9XG4gIH1cblxuICBhcHBseUdyYXBoUUwoYXBwKSB7XG4gICAgaWYgKCFhcHAgfHwgIWFwcC51c2UpIHtcbiAgICAgIHJlcXVpcmVkUGFyYW1ldGVyKCdZb3UgbXVzdCBwcm92aWRlIGFuIEV4cHJlc3MuanMgYXBwIGluc3RhbmNlIScpO1xuICAgIH1cbiAgICBhcHAudXNlKHRoaXMuY29uZmlnLmdyYXBoUUxQYXRoLCBhbGxvd0Nyb3NzRG9tYWluKHRoaXMucGFyc2VTZXJ2ZXIuY29uZmlnLmFwcElkKSk7XG4gICAgYXBwLnVzZSh0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCwgaGFuZGxlUGFyc2VIZWFkZXJzKTtcbiAgICBhcHAudXNlKHRoaXMuY29uZmlnLmdyYXBoUUxQYXRoLCBoYW5kbGVQYXJzZVNlc3Npb24pO1xuICAgIHRoaXMuYXBwbHlSZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUoYXBwLCB0aGlzLnBhcnNlU2VydmVyLmNvbmZpZyk7XG4gICAgYXBwLnVzZSh0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCwgaGFuZGxlUGFyc2VFcnJvcnMpO1xuICAgIGFwcC51c2UoXG4gICAgICB0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCxcbiAgICAgIGdyYXBocWxVcGxvYWRFeHByZXNzKHtcbiAgICAgICAgbWF4RmlsZVNpemU6IHRoaXMuX3RyYW5zZm9ybU1heFVwbG9hZFNpemVUb0J5dGVzKFxuICAgICAgICAgIHRoaXMucGFyc2VTZXJ2ZXIuY29uZmlnLm1heFVwbG9hZFNpemUgfHwgJzIwbWInXG4gICAgICAgICksXG4gICAgICB9KVxuICAgICk7XG4gICAgYXBwLnVzZSh0aGlzLmNvbmZpZy5ncmFwaFFMUGF0aCwgZXhwcmVzcy5qc29uKCksIGFzeW5jIChyZXEsIHJlcywgbmV4dCkgPT4ge1xuICAgICAgY29uc3Qgc2VydmVyID0gYXdhaXQgdGhpcy5fZ2V0U2VydmVyKCk7XG4gICAgICByZXR1cm4gc2VydmVyKHJlcSwgcmVzLCBuZXh0KTtcbiAgICB9KTtcbiAgfVxuXG4gIGFwcGx5UGxheWdyb3VuZChhcHApIHtcbiAgICBpZiAoIWFwcCB8fCAhYXBwLmdldCkge1xuICAgICAgcmVxdWlyZWRQYXJhbWV0ZXIoJ1lvdSBtdXN0IHByb3ZpZGUgYW4gRXhwcmVzcy5qcyBhcHAgaW5zdGFuY2UhJyk7XG4gICAgfVxuXG4gICAgYXBwLmdldChcbiAgICAgIHRoaXMuY29uZmlnLnBsYXlncm91bmRQYXRoIHx8XG4gICAgICByZXF1aXJlZFBhcmFtZXRlcignWW91IG11c3QgcHJvdmlkZSBhIGNvbmZpZy5wbGF5Z3JvdW5kUGF0aCB0byBhcHBseVBsYXlncm91bmQhJyksXG4gICAgICAoX3JlcSwgcmVzKSA9PiB7XG4gICAgICAgIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtVHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgICAgICAgcmVzLndyaXRlKFxuICAgICAgICAgIGA8ZGl2IGlkPVwic2FuZGJveFwiIHN0eWxlPVwicG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjBcIj48L2Rpdj5cbiAgICAgICAgICA8c2NyaXB0IHNyYz1cImh0dHBzOi8vZW1iZWRkYWJsZS1zYW5kYm94LmNkbi5hcG9sbG9ncmFwaHFsLmNvbS9fbGF0ZXN0L2VtYmVkZGFibGUtc2FuZGJveC51bWQucHJvZHVjdGlvbi5taW4uanNcIj48L3NjcmlwdD5cbiAgICAgICAgICA8c2NyaXB0PlxuICAgICAgICAgICBuZXcgd2luZG93LkVtYmVkZGVkU2FuZGJveCh7XG4gICAgICAgICAgICAgdGFyZ2V0OiBcIiNzYW5kYm94XCIsXG4gICAgICAgICAgICAgZW5kcG9pbnRJc0VkaXRhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgICBpbml0aWFsRW5kcG9pbnQ6ICR7SlNPTi5zdHJpbmdpZnkodGhpcy5jb25maWcuZ3JhcGhRTFBhdGgpfSxcbiAgICAgICAgICAgICBoYW5kbGVSZXF1ZXN0OiAoZW5kcG9pbnRVcmwsIG9wdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIGZldGNoKGVuZHBvaW50VXJsLCB7XG4gICAgICAgICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLm9wdGlvbnMuaGVhZGVycyxcbiAgICAgICAgICAgICAgICAgICAgJ1gtUGFyc2UtQXBwbGljYXRpb24tSWQnOiAke0pTT04uc3RyaW5naWZ5KHRoaXMucGFyc2VTZXJ2ZXIuY29uZmlnLmFwcElkKX0sXG4gICAgICAgICAgICAgICAgICAgICdYLVBhcnNlLU1hc3Rlci1LZXknOiAke0pTT04uc3RyaW5naWZ5KHRoaXMucGFyc2VTZXJ2ZXIuY29uZmlnLm1hc3RlcktleSl9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICB9KTtcbiAgICAgICAgICAgLy8gYWR2YW5jZWQgb3B0aW9uczogaHR0cHM6Ly93d3cuYXBvbGxvZ3JhcGhxbC5jb20vZG9jcy9zdHVkaW8vZXhwbG9yZXIvc2FuZGJveCNlbWJlZGRpbmctc2FuZGJveFxuICAgICAgICAgIDwvc2NyaXB0PmBcbiAgICAgICAgKTtcbiAgICAgICAgcmVzLmVuZCgpO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBzZXRHcmFwaFFMQ29uZmlnKGdyYXBoUUxDb25maWc6IFBhcnNlR3JhcGhRTENvbmZpZyk6IFByb21pc2Uge1xuICAgIHJldHVybiB0aGlzLnBhcnNlR3JhcGhRTENvbnRyb2xsZXIudXBkYXRlR3JhcGhRTENvbmZpZyhncmFwaFFMQ29uZmlnKTtcbiAgfVxufVxuXG5leHBvcnQgeyBQYXJzZUdyYXBoUUxTZXJ2ZXIgfTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEscUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFFBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLFNBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLFFBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGtCQUFBLEdBQUFSLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUSxnQkFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsT0FBQSxHQUFBVixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVUsbUJBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLHVCQUFBLEdBQUFDLHVCQUFBLENBQUFaLE9BQUE7QUFBbUcsU0FBQVksd0JBQUFDLENBQUEsRUFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxNQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFILHVCQUFBLFlBQUFBLENBQUFDLENBQUEsRUFBQUMsQ0FBQSxTQUFBQSxDQUFBLElBQUFELENBQUEsSUFBQUEsQ0FBQSxDQUFBSyxVQUFBLFNBQUFMLENBQUEsTUFBQU0sQ0FBQSxFQUFBQyxDQUFBLEVBQUFDLENBQUEsS0FBQUMsU0FBQSxRQUFBQyxPQUFBLEVBQUFWLENBQUEsaUJBQUFBLENB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "parse-server",
3
- "version": "8.6.65",
3
+ "version": "8.6.66",
4
4
  "description": "An express module providing a Parse-compatible API server",
5
5
  "main": "lib/index.js",
6
6
  "repository": {