occam-open-cli 5.0.37 → 5.0.38

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.
@@ -2,12 +2,11 @@
2
2
 
3
3
  const { fileSystemUtilities } = require("../../lib/main"); ///
4
4
 
5
- const { releaseFromName } = fileSystemUtilities;
5
+ const { releaseFromReleaseName } = fileSystemUtilities;
6
6
 
7
7
  function createReleaseOperation(proceed, abort, context) {
8
8
  const { releaseName } = context,
9
- name = releaseName, ///
10
- release = releaseFromName(name);
9
+ release = releaseFromReleaseName(releaseName);
11
10
 
12
11
  if (release === null) {
13
12
  abort();
package/lib/file.js CHANGED
@@ -2,22 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: all[name]
9
- });
10
- }
11
- _export(exports, {
12
- default: function() {
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
13
8
  return File;
14
- },
15
- convertContentTabsToWhitespace: function() {
16
- return convertContentTabsToWhitespace;
17
9
  }
18
10
  });
19
11
  var _types = require("./types");
20
- var _constants = require("./constants");
12
+ var _content = require("./utilities/content");
21
13
  function _classCallCheck(instance, Constructor) {
22
14
  if (!(instance instanceof Constructor)) {
23
15
  throw new TypeError("Cannot call a class as a function");
@@ -116,7 +108,7 @@ var File = /*#__PURE__*/ function() {
116
108
  if (type === _types.FILE_TYPE) {
117
109
  var content = json.content;
118
110
  var path = json.path;
119
- content = convertContentTabsToWhitespace(content); ///
111
+ content = (0, _content.convertContentTabsToWhitespace)(content); ///
120
112
  file = new File(path, content);
121
113
  }
122
114
  }
@@ -128,7 +120,7 @@ var File = /*#__PURE__*/ function() {
128
120
  value: function fromDocument(document) {
129
121
  var filePath = document.getFilePath(), path = filePath; ///
130
122
  var content = document.getContent();
131
- content = convertContentTabsToWhitespace(content); ///
123
+ content = (0, _content.convertContentTabsToWhitespace)(content); ///
132
124
  var file = new File(path, content);
133
125
  return file;
134
126
  }
@@ -136,7 +128,7 @@ var File = /*#__PURE__*/ function() {
136
128
  {
137
129
  key: "fromPathAndContent",
138
130
  value: function fromPathAndContent(path, content) {
139
- content = convertContentTabsToWhitespace(content); ///
131
+ content = (0, _content.convertContentTabsToWhitespace)(content); ///
140
132
  var file = new File(path, content);
141
133
  return file;
142
134
  }
@@ -145,8 +137,5 @@ var File = /*#__PURE__*/ function() {
145
137
  return File;
146
138
  }();
147
139
  _defineProperty(File, "type", _types.FILE_TYPE);
148
- function convertContentTabsToWhitespace(content) {
149
- return content.replace(/\t/g, _constants.DOUBLE_SPACE);
150
- } ///
151
140
 
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9maWxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBGSUxFX1RZUEUgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgRE9VQkxFX1NQQUNFIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZpbGUge1xuICBjb25zdHJ1Y3RvcihwYXRoLCBjb250ZW50KSB7XG4gICAgdGhpcy5wYXRoID0gcGF0aDtcbiAgICB0aGlzLmNvbnRlbnQgPSBjb250ZW50O1xuICB9XG5cbiAgZ2V0UGF0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXRoO1xuICB9XG5cbiAgZ2V0Q29udGVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZW50O1xuICB9XG5cbiAgaXNGaWxlKCkge1xuICAgIGNvbnN0IGZpbGUgPSB0cnVlO1xuXG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cblxuICBpc0RpcmVjdG9yeSgpIHtcbiAgICBjb25zdCBkaXJlY3RvcnkgPSBmYWxzZTtcblxuICAgIHJldHVybiBkaXJlY3Rvcnk7XG4gIH1cblxuICBzZXRQYXRoKHBhdGgpIHtcbiAgICB0aGlzLnBhdGggPSBwYXRoO1xuICB9XG5cbiAgc2V0Q29udGVudChjb250ZW50KSB7XG4gICAgdGhpcy5jb250ZW50ID0gY29udGVudDtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCB7IHR5cGUgfSA9IEZpbGUsXG4gICAgICAgICAgcGF0aCA9IHRoaXMucGF0aCxcbiAgICAgICAgICBjb250ZW50ID0gdGhpcy5jb250ZW50LFxuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgcGF0aCxcbiAgICAgICAgICAgIGNvbnRlbnRcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgdHlwZSA9IEZJTEVfVFlQRTtcblxuICBzdGF0aWMgZnJvbUpTT04oanNvbikge1xuICAgIGxldCBmaWxlID0gbnVsbDtcblxuICAgIGlmIChqc29uICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB7IHR5cGUgfSA9IGpzb247XG5cbiAgICAgIGlmICh0eXBlID09PSBGSUxFX1RZUEUpIHtcbiAgICAgICAgbGV0IHsgY29udGVudCB9ID0ganNvbjtcblxuICAgICAgICBjb25zdCB7IHBhdGggfSA9IGpzb247XG5cbiAgICAgICAgY29udGVudCA9IGNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZShjb250ZW50KTsgIC8vL1xuXG4gICAgICAgIGZpbGUgPSBuZXcgRmlsZShwYXRoLCBjb250ZW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmlsZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRG9jdW1lbnQoZG9jdW1lbnQpIHtcbiAgICBjb25zdCBmaWxlUGF0aCA9IGRvY3VtZW50LmdldEZpbGVQYXRoKCksXG4gICAgICAgICAgcGF0aCA9IGZpbGVQYXRoOyAgLy8vXG5cbiAgICBsZXQgY29udGVudCA9IGRvY3VtZW50LmdldENvbnRlbnQoKTtcblxuICAgIGNvbnRlbnQgPSBjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2UoY29udGVudCk7ICAvLy9cblxuICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZShwYXRoLCBjb250ZW50KTtcblxuICAgIHJldHVybiBmaWxlO1xuICB9XG5cbiAgc3RhdGljIGZyb21QYXRoQW5kQ29udGVudChwYXRoLCBjb250ZW50KSB7XG4gICAgY29udGVudCA9IGNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZShjb250ZW50KTsgIC8vL1xuXG4gICAgY29uc3QgZmlsZSA9IG5ldyBGaWxlKHBhdGgsIGNvbnRlbnQpO1xuXG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZShjb250ZW50KSB7IHJldHVybiBjb250ZW50LnJlcGxhY2UoL1xcdC9nLCBET1VCTEVfU1BBQ0UpOyB9IC8vL1xuIl0sIm5hbWVzIjpbIkZpbGUiLCJjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2UiLCJwYXRoIiwiY29udGVudCIsImdldFBhdGgiLCJnZXRDb250ZW50IiwiaXNGaWxlIiwiZmlsZSIsImlzRGlyZWN0b3J5IiwiZGlyZWN0b3J5Iiwic2V0UGF0aCIsInNldENvbnRlbnQiLCJ0b0pTT04iLCJ0eXBlIiwianNvbiIsImZyb21KU09OIiwiRklMRV9UWVBFIiwiZnJvbURvY3VtZW50IiwiZG9jdW1lbnQiLCJmaWxlUGF0aCIsImdldEZpbGVQYXRoIiwiZnJvbVBhdGhBbmRDb250ZW50IiwicmVwbGFjZSIsIkRPVUJMRV9TUEFDRSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7OztlQUtxQkE7O0lBMkZMQyw4QkFBOEI7ZUFBOUJBOzs7cUJBOUZVO3lCQUNHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFZCxJQUFBLEFBQU1ELHFCQTJGbEIsQUEzRlk7YUFBTUEsS0FDUEUsSUFBSSxFQUFFQyxPQUFPOzhCQUROSDtRQUVqQixJQUFJLENBQUNFLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLE9BQU8sR0FBR0E7O2lCQUhFSDs7WUFNbkJJLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVO2dCQUNSLE9BQU8sSUFBSSxDQUFDRixJQUFJO1lBQ2xCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGFBQWE7Z0JBQ1gsT0FBTyxJQUFJLENBQUNGLE9BQU87WUFDckI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBUztnQkFDUCxJQUFNQyxPQUFPLElBQUk7Z0JBRWpCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBYztnQkFDWixJQUFNQyxZQUFZLEtBQUs7Z0JBRXZCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsUUFBUVIsSUFBSSxFQUFFO2dCQUNaLElBQUksQ0FBQ0EsSUFBSSxHQUFHQTtZQUNkOzs7WUFFQVMsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVdSLE9BQU8sRUFBRTtnQkFDbEIsSUFBSSxDQUFDQSxPQUFPLEdBQUdBO1lBQ2pCOzs7WUFFQVMsS0FBQUE7bUJBQUFBLFNBQUFBLFNBQVM7Z0JBQ1AsSUFBTSxBQUFFQyxPQW5DU2IsS0FtQ1RhLE1BQ0ZYLE9BQU8sSUFBSSxDQUFDQSxJQUFJLEVBQ2hCQyxVQUFVLElBQUksQ0FBQ0EsT0FBTyxFQUN0QlcsT0FBTztvQkFDTEQsTUFBQUE7b0JBQ0FYLE1BQUFBO29CQUNBQyxTQUFBQTtnQkFDRjtnQkFFTixPQUFPVztZQUNUOzs7O1lBSU9DLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNELElBQUksRUFBRTtnQkFDcEIsSUFBSVAsT0FBTyxJQUFJO2dCQUVmLElBQUlPLFNBQVMsSUFBSSxFQUFFO29CQUNqQixJQUFNLEFBQUVELE9BQVNDLEtBQVREO29CQUVSLElBQUlBLFNBQVNHLGdCQUFTLEVBQUU7d0JBQ3RCLElBQUksQUFBRWIsVUFBWVcsS0FBWlg7d0JBRU4sSUFBTSxBQUFFRCxPQUFTWSxLQUFUWjt3QkFFUkMsVUFBVUYsK0JBQStCRSxVQUFXLEdBQUc7d0JBRXZESSxPQUFPLElBOURNUCxLQThER0UsTUFBTUM7b0JBQ3hCLENBQUM7Z0JBQ0gsQ0FBQztnQkFFRCxPQUFPSTtZQUNUOzs7WUFFT1UsS0FBQUE7bUJBQVAsU0FBT0EsYUFBYUMsUUFBUSxFQUFFO2dCQUM1QixJQUFNQyxXQUFXRCxTQUFTRSxXQUFXLElBQy9CbEIsT0FBT2lCLFVBQVcsR0FBRztnQkFFM0IsSUFBSWhCLFVBQVVlLFNBQVNiLFVBQVU7Z0JBRWpDRixVQUFVRiwrQkFBK0JFLFVBQVcsR0FBRztnQkFFdkQsSUFBTUksT0FBTyxJQTdFSVAsS0E2RUtFLE1BQU1DO2dCQUU1QixPQUFPSTtZQUNUOzs7WUFFT2MsS0FBQUE7bUJBQVAsU0FBT0EsbUJBQW1CbkIsSUFBSSxFQUFFQyxPQUFPLEVBQUU7Z0JBQ3ZDQSxVQUFVRiwrQkFBK0JFLFVBQVcsR0FBRztnQkFFdkQsSUFBTUksT0FBTyxJQXJGSVAsS0FxRktFLE1BQU1DO2dCQUU1QixPQUFPSTtZQUNUOzs7V0F4Rm1CUDs7QUErQ25CLGdCQS9DbUJBLE1BK0NaYSxRQUFPRyxnQkFBUztBQTRDbEIsU0FBU2YsK0JBQStCRSxPQUFPLEVBQUU7SUFBRSxPQUFPQSxRQUFRbUIsT0FBTyxDQUFDLE9BQU9DLHVCQUFZO0FBQUcsRUFBRSxHQUFHIn0=
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9maWxlLmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBGSUxFX1RZUEUgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2NvbnRlbnRcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBGaWxlIHtcbiAgY29uc3RydWN0b3IocGF0aCwgY29udGVudCkge1xuICAgIHRoaXMucGF0aCA9IHBhdGg7XG4gICAgdGhpcy5jb250ZW50ID0gY29udGVudDtcbiAgfVxuXG4gIGdldFBhdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMucGF0aDtcbiAgfVxuXG4gIGdldENvbnRlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGVudDtcbiAgfVxuXG4gIGlzRmlsZSgpIHtcbiAgICBjb25zdCBmaWxlID0gdHJ1ZTtcblxuICAgIHJldHVybiBmaWxlO1xuICB9XG5cbiAgaXNEaXJlY3RvcnkoKSB7XG4gICAgY29uc3QgZGlyZWN0b3J5ID0gZmFsc2U7XG5cbiAgICByZXR1cm4gZGlyZWN0b3J5O1xuICB9XG5cbiAgc2V0UGF0aChwYXRoKSB7XG4gICAgdGhpcy5wYXRoID0gcGF0aDtcbiAgfVxuXG4gIHNldENvbnRlbnQoY29udGVudCkge1xuICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgeyB0eXBlIH0gPSBGaWxlLFxuICAgICAgICAgIHBhdGggPSB0aGlzLnBhdGgsXG4gICAgICAgICAgY29udGVudCA9IHRoaXMuY29udGVudCxcbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAgdHlwZSxcbiAgICAgICAgICAgIHBhdGgsXG4gICAgICAgICAgICBjb250ZW50XG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIHR5cGUgPSBGSUxFX1RZUEU7XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24pIHtcbiAgICBsZXQgZmlsZSA9IG51bGw7XG5cbiAgICBpZiAoanNvbiAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgeyB0eXBlIH0gPSBqc29uO1xuXG4gICAgICBpZiAodHlwZSA9PT0gRklMRV9UWVBFKSB7XG4gICAgICAgIGxldCB7IGNvbnRlbnQgfSA9IGpzb247XG5cbiAgICAgICAgY29uc3QgeyBwYXRoIH0gPSBqc29uO1xuXG4gICAgICAgIGNvbnRlbnQgPSBjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2UoY29udGVudCk7ICAvLy9cblxuICAgICAgICBmaWxlID0gbmV3IEZpbGUocGF0aCwgY29udGVudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbURvY3VtZW50KGRvY3VtZW50KSB7XG4gICAgY29uc3QgZmlsZVBhdGggPSBkb2N1bWVudC5nZXRGaWxlUGF0aCgpLFxuICAgICAgICAgIHBhdGggPSBmaWxlUGF0aDsgIC8vL1xuXG4gICAgbGV0IGNvbnRlbnQgPSBkb2N1bWVudC5nZXRDb250ZW50KCk7XG5cbiAgICBjb250ZW50ID0gY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlKGNvbnRlbnQpOyAgLy8vXG5cbiAgICBjb25zdCBmaWxlID0gbmV3IEZpbGUocGF0aCwgY29udGVudCk7XG5cbiAgICByZXR1cm4gZmlsZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUGF0aEFuZENvbnRlbnQocGF0aCwgY29udGVudCkge1xuICAgIGNvbnRlbnQgPSBjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2UoY29udGVudCk7ICAvLy9cblxuICAgIGNvbnN0IGZpbGUgPSBuZXcgRmlsZShwYXRoLCBjb250ZW50KTtcblxuICAgIHJldHVybiBmaWxlO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIkZpbGUiLCJwYXRoIiwiY29udGVudCIsImdldFBhdGgiLCJnZXRDb250ZW50IiwiaXNGaWxlIiwiZmlsZSIsImlzRGlyZWN0b3J5IiwiZGlyZWN0b3J5Iiwic2V0UGF0aCIsInNldENvbnRlbnQiLCJ0b0pTT04iLCJ0eXBlIiwianNvbiIsImZyb21KU09OIiwiRklMRV9UWVBFIiwiY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlIiwiZnJvbURvY3VtZW50IiwiZG9jdW1lbnQiLCJmaWxlUGF0aCIsImdldEZpbGVQYXRoIiwiZnJvbVBhdGhBbmRDb250ZW50Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUtxQkE7OztxQkFISzt1QkFDcUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVoQyxJQUFBLEFBQU1BLHFCQUFOO2FBQU1BLEtBQ1BDLElBQUksRUFBRUMsT0FBTzs4QkFETkY7UUFFakIsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxPQUFPLEdBQUdBOztpQkFIRUY7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVTtnQkFDUixPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxhQUFhO2dCQUNYLE9BQU8sSUFBSSxDQUFDRixPQUFPO1lBQ3JCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFNBQVM7Z0JBQ1AsSUFBTUMsT0FBTyxJQUFJO2dCQUVqQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWM7Z0JBQ1osSUFBTUMsWUFBWSxLQUFLO2dCQUV2QixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLFFBQVFSLElBQUksRUFBRTtnQkFDWixJQUFJLENBQUNBLElBQUksR0FBR0E7WUFDZDs7O1lBRUFTLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXUixPQUFPLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQ0EsT0FBTyxHQUFHQTtZQUNqQjs7O1lBRUFTLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTO2dCQUNQLElBQU0sQUFBRUMsT0FuQ1NaLEtBbUNUWSxNQUNGWCxPQUFPLElBQUksQ0FBQ0EsSUFBSSxFQUNoQkMsVUFBVSxJQUFJLENBQUNBLE9BQU8sRUFDdEJXLE9BQU87b0JBQ0xELE1BQUFBO29CQUNBWCxNQUFBQTtvQkFDQUMsU0FBQUE7Z0JBQ0Y7Z0JBRU4sT0FBT1c7WUFDVDs7OztZQUlPQyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTRCxJQUFJLEVBQUU7Z0JBQ3BCLElBQUlQLE9BQU8sSUFBSTtnQkFFZixJQUFJTyxTQUFTLElBQUksRUFBRTtvQkFDakIsSUFBTSxBQUFFRCxPQUFTQyxLQUFURDtvQkFFUixJQUFJQSxTQUFTRyxnQkFBUyxFQUFFO3dCQUN0QixJQUFJLEFBQUViLFVBQVlXLEtBQVpYO3dCQUVOLElBQU0sQUFBRUQsT0FBU1ksS0FBVFo7d0JBRVJDLFVBQVVjLElBQUFBLHVDQUE4QixFQUFDZCxVQUFXLEdBQUc7d0JBRXZESSxPQUFPLElBOURNTixLQThER0MsTUFBTUM7b0JBQ3hCLENBQUM7Z0JBQ0gsQ0FBQztnQkFFRCxPQUFPSTtZQUNUOzs7WUFFT1csS0FBQUE7bUJBQVAsU0FBT0EsYUFBYUMsUUFBUSxFQUFFO2dCQUM1QixJQUFNQyxXQUFXRCxTQUFTRSxXQUFXLElBQy9CbkIsT0FBT2tCLFVBQVcsR0FBRztnQkFFM0IsSUFBSWpCLFVBQVVnQixTQUFTZCxVQUFVO2dCQUVqQ0YsVUFBVWMsSUFBQUEsdUNBQThCLEVBQUNkLFVBQVcsR0FBRztnQkFFdkQsSUFBTUksT0FBTyxJQTdFSU4sS0E2RUtDLE1BQU1DO2dCQUU1QixPQUFPSTtZQUNUOzs7WUFFT2UsS0FBQUE7bUJBQVAsU0FBT0EsbUJBQW1CcEIsSUFBSSxFQUFFQyxPQUFPLEVBQUU7Z0JBQ3ZDQSxVQUFVYyxJQUFBQSx1Q0FBOEIsRUFBQ2QsVUFBVyxHQUFHO2dCQUV2RCxJQUFNSSxPQUFPLElBckZJTixLQXFGS0MsTUFBTUM7Z0JBRTVCLE9BQU9JO1lBQ1Q7OztXQXhGbUJOOztBQStDbkIsZ0JBL0NtQkEsTUErQ1pZLFFBQU9HLGdCQUFTIn0=
package/lib/main.js CHANGED
@@ -33,6 +33,12 @@ _export(exports, {
33
33
  Projects: function() {
34
34
  return _projects.default;
35
35
  },
36
+ nameUtilities: function() {
37
+ return _name.default;
38
+ },
39
+ contentUtilities: function() {
40
+ return _content.default;
41
+ },
36
42
  filePathUtilities: function() {
37
43
  return _filePath.default;
38
44
  },
@@ -48,6 +54,8 @@ var _release = /*#__PURE__*/ _interopRequireDefault(require("./release"));
48
54
  var _entries = /*#__PURE__*/ _interopRequireDefault(require("./entries"));
49
55
  var _project = /*#__PURE__*/ _interopRequireDefault(require("./project"));
50
56
  var _projects = /*#__PURE__*/ _interopRequireDefault(require("./projects"));
57
+ var _name = /*#__PURE__*/ _interopRequireDefault(require("./utilities/name"));
58
+ var _content = /*#__PURE__*/ _interopRequireDefault(require("./utilities/content"));
51
59
  var _filePath = /*#__PURE__*/ _interopRequireDefault(require("./utilities/filePath"));
52
60
  var _fileSystem = /*#__PURE__*/ _interopRequireDefault(require("./utilities/fileSystem"));
53
61
  function _interopRequireDefault(obj) {
@@ -56,4 +64,4 @@ function _interopRequireDefault(obj) {
56
64
  };
57
65
  }
58
66
 
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlIH0gZnJvbSBcIi4vZmlsZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlcyB9IGZyb20gXCIuL2ZpbGVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHR5cGVzIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVmVyc2lvbiB9IGZyb20gXCIuL3ZlcnNpb25cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVsZWFzZSB9IGZyb20gXCIuL3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRW50cmllcyB9IGZyb20gXCIuL2VudHJpZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdHMgfSBmcm9tIFwiLi9wcm9qZWN0c1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaWxlUGF0aFV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9maWxlUGF0aFwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaWxlU3lzdGVtVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2ZpbGVTeXN0ZW1cIjtcbiJdLCJuYW1lcyI6WyJGaWxlIiwiRmlsZXMiLCJ0eXBlcyIsIlZlcnNpb24iLCJSZWxlYXNlIiwiRW50cmllcyIsIlByb2plY3QiLCJQcm9qZWN0cyIsImZpbGVQYXRoVXRpbGl0aWVzIiwiZmlsZVN5c3RlbVV0aWxpdGllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRW9CQSxJQUFJO2VBQUpBLGFBQUk7O0lBQ0pDLEtBQUs7ZUFBTEEsY0FBSzs7SUFDTEMsS0FBSztlQUFMQSxjQUFLOztJQUNMQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxRQUFRO2VBQVJBLGlCQUFROztJQUNSQyxpQkFBaUI7ZUFBakJBLGlCQUFpQjs7SUFDakJDLG1CQUFtQjtlQUFuQkEsbUJBQW1COzs7eURBVFA7MERBQ0M7MERBQ0E7NERBQ0U7NERBQ0E7NERBQ0E7NERBQ0E7NkRBQ0M7NkRBQ1M7K0RBQ0UifQ==
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlIH0gZnJvbSBcIi4vZmlsZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlcyB9IGZyb20gXCIuL2ZpbGVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHR5cGVzIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVmVyc2lvbiB9IGZyb20gXCIuL3ZlcnNpb25cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVsZWFzZSB9IGZyb20gXCIuL3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRW50cmllcyB9IGZyb20gXCIuL2VudHJpZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdHMgfSBmcm9tIFwiLi9wcm9qZWN0c1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBuYW1lVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL25hbWVcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgY29udGVudFV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9jb250ZW50XCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGZpbGVQYXRoVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2ZpbGVQYXRoXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvZmlsZVN5c3RlbVwiO1xuIl0sIm5hbWVzIjpbIkZpbGUiLCJGaWxlcyIsInR5cGVzIiwiVmVyc2lvbiIsIlJlbGVhc2UiLCJFbnRyaWVzIiwiUHJvamVjdCIsIlByb2plY3RzIiwibmFtZVV0aWxpdGllcyIsImNvbnRlbnRVdGlsaXRpZXMiLCJmaWxlUGF0aFV0aWxpdGllcyIsImZpbGVTeXN0ZW1VdGlsaXRpZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUVvQkEsSUFBSTtlQUFKQSxhQUFJOztJQUNKQyxLQUFLO2VBQUxBLGNBQUs7O0lBQ0xDLEtBQUs7ZUFBTEEsY0FBSzs7SUFDTEMsT0FBTztlQUFQQSxnQkFBTzs7SUFDUEMsT0FBTztlQUFQQSxnQkFBTzs7SUFDUEMsT0FBTztlQUFQQSxnQkFBTzs7SUFDUEMsT0FBTztlQUFQQSxnQkFBTzs7SUFDUEMsUUFBUTtlQUFSQSxpQkFBUTs7SUFDUkMsYUFBYTtlQUFiQSxhQUFhOztJQUNiQyxnQkFBZ0I7ZUFBaEJBLGdCQUFnQjs7SUFDaEJDLGlCQUFpQjtlQUFqQkEsaUJBQWlCOztJQUNqQkMsbUJBQW1CO2VBQW5CQSxtQkFBbUI7Ozt5REFYUDswREFDQzswREFDQTs0REFDRTs0REFDQTs0REFDQTs0REFDQTs2REFDQzt5REFDSzs0REFDRzs2REFDQzsrREFDRSJ9
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ convertContentTabsToWhitespace: function() {
13
+ return convertContentTabsToWhitespace;
14
+ },
15
+ default: function() {
16
+ return _default;
17
+ }
18
+ });
19
+ var _constants = require("../constants");
20
+ function convertContentTabsToWhitespace(content) {
21
+ return content.replace(/\t/g, _constants.DOUBLE_SPACE);
22
+ } ///
23
+ var _default = {
24
+ convertContentTabsToWhitespace: convertContentTabsToWhitespace
25
+ };
26
+
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29udGVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRE9VQkxFX1NQQUNFIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlKGNvbnRlbnQpIHsgcmV0dXJuIGNvbnRlbnQucmVwbGFjZSgvXFx0L2csIERPVUJMRV9TUEFDRSk7IH0gLy8vXG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlXG59O1xuIl0sIm5hbWVzIjpbImNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZSIsImNvbnRlbnQiLCJyZXBsYWNlIiwiRE9VQkxFX1NQQUNFIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFJZ0JBLDhCQUE4QjtlQUE5QkE7O0lBRWhCLE9BRUU7ZUFGRjs7O3lCQUo2QjtBQUV0QixTQUFTQSwrQkFBK0JDLE9BQU8sRUFBRTtJQUFFLE9BQU9BLFFBQVFDLE9BQU8sQ0FBQyxPQUFPQyx1QkFBWTtBQUFHLEVBQUUsR0FBRztJQUU1RyxXQUFlO0lBQ2JILGdDQUFBQTtBQUNGIn0=
@@ -9,39 +9,16 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
- loadFile: function() {
13
- return loadFile;
14
- },
15
- saveFile: function() {
16
- return saveFile;
17
- },
18
- loadFiles: function() {
19
- return loadFiles;
20
- },
21
- saveFiles: function() {
22
- return saveFiles;
23
- },
24
- loadProject: function() {
25
- return loadProject;
26
- },
27
- loadProjects: function() {
28
- return loadProjects;
29
- },
30
- releaseFromName: function() {
31
- return releaseFromName;
12
+ releaseFromReleaseName: function() {
13
+ return releaseFromReleaseName;
32
14
  },
33
15
  default: function() {
34
16
  return _default;
35
17
  }
36
18
  });
37
- var _mkdirp = /*#__PURE__*/ _interopRequireDefault(require("mkdirp"));
38
19
  var _necessary = require("necessary");
39
- var _file = /*#__PURE__*/ _interopRequireWildcard(require("../file"));
40
- var _files = /*#__PURE__*/ _interopRequireDefault(require("../files"));
41
20
  var _entries = /*#__PURE__*/ _interopRequireDefault(require("../entries"));
42
- var _project = /*#__PURE__*/ _interopRequireDefault(require("../project"));
43
21
  var _release = /*#__PURE__*/ _interopRequireDefault(require("../release"));
44
- var _projects = /*#__PURE__*/ _interopRequireDefault(require("../projects"));
45
22
  var _directory = /*#__PURE__*/ _interopRequireDefault(require("../directory"));
46
23
  var _name = require("../utilities/name");
47
24
  var _constants = require("../constants");
@@ -52,109 +29,13 @@ function _interopRequireDefault(obj) {
52
29
  default: obj
53
30
  };
54
31
  }
55
- function _getRequireWildcardCache(nodeInterop) {
56
- if (typeof WeakMap !== "function") return null;
57
- var cacheBabelInterop = new WeakMap();
58
- var cacheNodeInterop = new WeakMap();
59
- return (_getRequireWildcardCache = function(nodeInterop) {
60
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
61
- })(nodeInterop);
62
- }
63
- function _interopRequireWildcard(obj, nodeInterop) {
64
- if (!nodeInterop && obj && obj.__esModule) {
65
- return obj;
66
- }
67
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
68
- return {
69
- default: obj
70
- };
71
- }
72
- var cache = _getRequireWildcardCache(nodeInterop);
73
- if (cache && cache.has(obj)) {
74
- return cache.get(obj);
75
- }
76
- var newObj = {};
77
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
78
- for(var key in obj){
79
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
80
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
81
- if (desc && (desc.get || desc.set)) {
82
- Object.defineProperty(newObj, key, desc);
83
- } else {
84
- newObj[key] = obj[key];
85
- }
86
- }
87
- }
88
- newObj.default = obj;
89
- if (cache) {
90
- cache.set(obj, newObj);
91
- }
92
- return newObj;
93
- }
94
- var PERIOD_CHARACTER = _necessary.characters.PERIOD_CHARACTER, concatenatePaths = _necessary.pathUtilities.concatenatePaths, topmostDirectoryPathFromPath = _necessary.pathUtilities.topmostDirectoryPathFromPath, readFile = _necessary.fileSystemUtilities.readFile, writeFile = _necessary.fileSystemUtilities.writeFile, isEntryFile = _necessary.fileSystemUtilities.isEntryFile, readDirectory = _necessary.fileSystemUtilities.readDirectory, isEntryDirectory = _necessary.fileSystemUtilities.isEntryDirectory;
95
- function loadFile(path, projectsDirectoryPath) {
96
- var file = null;
97
- try {
98
- var absolutePath = concatenatePaths(projectsDirectoryPath, path), entryFile = isEntryFile(absolutePath);
99
- if (entryFile) {
100
- var content = readFile(absolutePath);
101
- content = (0, _file.convertContentTabsToWhitespace)(content); ///
102
- file = new _file.default(path, content);
103
- }
104
- } catch (error) {
105
- ///
106
- }
107
- return file;
108
- }
109
- function saveFile(file, projectsDirectoryPath) {
110
- var path = file.getPath(), content = file.getContent(), absolutePath = concatenatePaths(projectsDirectoryPath, path), topmostAbsoluteDirectoryPath = topmostDirectoryPathFromPath(absolutePath);
111
- _mkdirp.default.sync(topmostAbsoluteDirectoryPath);
112
- writeFile(absolutePath, content);
113
- }
114
- function loadFiles(paths, projectsDirectoryPath) {
115
- var array = [], files = new _files.default(array);
116
- paths.forEach(function(path) {
117
- var file = loadFile(path, projectsDirectoryPath);
118
- files.addFile(file);
119
- });
120
- return files;
121
- }
122
- function saveFiles(files, projectsDirectoryPath) {
123
- files.forEachFile(function(file) {
124
- saveFile(file, projectsDirectoryPath);
125
- });
126
- }
127
- function loadProject(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories) {
128
- var name = topmostDirectoryName, entries = entriesFromTopmostDirectoryName(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories), project = new _project.default(name, entries);
129
- return project;
130
- }
131
- function loadProjects(projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories) {
132
- var projects;
133
- try {
134
- var array = [];
135
- projects = new _projects.default(array);
136
- var topmostDirectoryNames = topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath, doNotLoadHiddenFilesAndDirectories);
137
- topmostDirectoryNames.forEach(function(topmostDirectoryName) {
138
- var project = loadProject(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories);
139
- projects.addProject(project);
140
- });
141
- } catch (error) {
142
- projects = null;
143
- }
144
- return projects;
145
- }
146
- function releaseFromName(name) {
147
- var topmostDirectoryName = name, projectsDirectoryPath = PERIOD_CHARACTER, loadOnlyRecognisedFiles = true, doNotLoadHiddenFilesAndDirectories = true, entries = entriesFromTopmostDirectoryName(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories), versionNumber = null, release = new _release.default(name, entries, versionNumber);
32
+ var PERIOD_CHARACTER = _necessary.characters.PERIOD_CHARACTER, concatenatePaths = _necessary.pathUtilities.concatenatePaths, readDirectory = _necessary.fileSystemUtilities.readDirectory, isEntryDirectory = _necessary.fileSystemUtilities.isEntryDirectory;
33
+ function releaseFromReleaseName(releaseName) {
34
+ var topmostDirectoryName = releaseName, projectsDirectoryPath = PERIOD_CHARACTER, loadOnlyRecognisedFiles = true, doNotLoadHiddenFilesAndDirectories = true, name = releaseName, entries = entriesFromTopmostDirectoryName(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories), versionNumber = null, release = new _release.default(name, entries, versionNumber);
148
35
  return release;
149
36
  }
150
37
  var _default = {
151
- loadFile: loadFile,
152
- saveFile: saveFile,
153
- loadFiles: loadFiles,
154
- saveFiles: saveFiles,
155
- loadProject: loadProject,
156
- loadProjects: loadProjects,
157
- releaseFromName: releaseFromName
38
+ releaseFromReleaseName: releaseFromReleaseName
158
39
  };
159
40
  function directoryFromPath(path, projectsDirectoryPath) {
160
41
  var directory = null;
@@ -209,21 +90,5 @@ function entriesFromRelativeDirectoryPath(array, relativeDirectoryPath, projects
209
90
  }
210
91
  });
211
92
  }
212
- function topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath, doNotLoadHiddenFilesAndDirectories) {
213
- var topmostDirectoryNames;
214
- var subEntryNames = readDirectory(projectsDirectoryPath);
215
- topmostDirectoryNames = subEntryNames.reduce(function(topmostDirectoryNames, subEntryName) {
216
- var absoluteSubEntryPath = concatenatePaths(projectsDirectoryPath, subEntryName), subEntryNameHiddenName = (0, _name.isNameHiddenName)(subEntryName), subEntryNameNotHiddenName = !subEntryNameHiddenName, loadHiddenFilesAndDirectories = !doNotLoadHiddenFilesAndDirectories;
217
- if (subEntryNameNotHiddenName || loadHiddenFilesAndDirectories) {
218
- var subEntryDirectory = isEntryDirectory(absoluteSubEntryPath);
219
- if (subEntryDirectory) {
220
- var topmostDirectoryName = subEntryName; ///
221
- topmostDirectoryNames.push(topmostDirectoryName);
222
- }
223
- }
224
- return topmostDirectoryNames;
225
- }, []);
226
- return topmostDirectoryNames;
227
- }
228
93
 
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCBta2RpcnAgZnJvbSBcIm1rZGlycFwiO1xyXG5cclxuaW1wb3J0IHsgY2hhcmFjdGVycywgcGF0aFV0aWxpdGllcywgZmlsZVN5c3RlbVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcclxuXHJcbmltcG9ydCBGaWxlIGZyb20gXCIuLi9maWxlXCI7XHJcbmltcG9ydCBGaWxlcyBmcm9tIFwiLi4vZmlsZXNcIjtcclxuaW1wb3J0IEVudHJpZXMgZnJvbSBcIi4uL2VudHJpZXNcIjtcclxuaW1wb3J0IFByb2plY3QgZnJvbSBcIi4uL3Byb2plY3RcIjtcclxuaW1wb3J0IFJlbGVhc2UgZnJvbSBcIi4uL3JlbGVhc2VcIjtcclxuaW1wb3J0IFByb2plY3RzIGZyb20gXCIuLi9wcm9qZWN0c1wiO1xyXG5pbXBvcnQgRGlyZWN0b3J5IGZyb20gXCIuLi9kaXJlY3RvcnlcIjtcclxuXHJcbmltcG9ydCB7IGlzTmFtZUhpZGRlbk5hbWUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL25hbWVcIjtcclxuaW1wb3J0IHsgRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSCB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCB9IGZyb20gXCIuLi91dGlsaXRpZXMvZmlsZVBhdGhcIjtcclxuaW1wb3J0IHsgY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlIH0gZnJvbSBcIi4uL2ZpbGVcIjtcclxuaW1wb3J0IHsgRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSF9FWENFRURFRF9NRVNTQUdFIH0gZnJvbSBcIi4uL21lc3NhZ2VzXCI7XHJcblxyXG5jb25zdCB7IFBFUklPRF9DSEFSQUNURVIgfSA9IGNoYXJhY3RlcnMsXHJcbiAgICAgIHsgY29uY2F0ZW5hdGVQYXRocywgdG9wbW9zdERpcmVjdG9yeVBhdGhGcm9tUGF0aCB9ID0gcGF0aFV0aWxpdGllcyxcclxuICAgICAgeyByZWFkRmlsZSwgd3JpdGVGaWxlLCBpc0VudHJ5RmlsZSwgcmVhZERpcmVjdG9yeSwgaXNFbnRyeURpcmVjdG9yeSB9ID0gZmlsZVN5c3RlbVV0aWxpdGllcztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkRmlsZShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgZmlsZSA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcGF0aCksXHJcbiAgICAgICAgICBlbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgIGlmIChlbnRyeUZpbGUpIHtcclxuICAgICAgbGV0IGNvbnRlbnQgPSByZWFkRmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgICAgY29udGVudCA9IGNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZShjb250ZW50KTsgIC8vL1xyXG5cclxuICAgICAgZmlsZSA9IG5ldyBGaWxlKHBhdGgsIGNvbnRlbnQpO1xyXG4gICAgfVxyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAvLy9cclxuICB9XHJcblxyXG4gIHJldHVybiBmaWxlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2F2ZUZpbGUoZmlsZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgcGF0aCA9IGZpbGUuZ2V0UGF0aCgpLFxyXG4gICAgICAgIGNvbnRlbnQgPSBmaWxlLmdldENvbnRlbnQoKSxcclxuICAgICAgICBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcGF0aCksXHJcbiAgICAgICAgdG9wbW9zdEFic29sdXRlRGlyZWN0b3J5UGF0aCA9IHRvcG1vc3REaXJlY3RvcnlQYXRoRnJvbVBhdGgoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgbWtkaXJwLnN5bmModG9wbW9zdEFic29sdXRlRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHdyaXRlRmlsZShhYnNvbHV0ZVBhdGgsIGNvbnRlbnQpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEZpbGVzKHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCBhcnJheSA9IFtdLFxyXG4gICAgICAgIGZpbGVzID0gbmV3IEZpbGVzKGFycmF5KTtcclxuXHJcbiAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xyXG4gICAgY29uc3QgZmlsZSA9IGxvYWRGaWxlKHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gICAgZmlsZXMuYWRkRmlsZShmaWxlKTtcclxuICB9KTtcclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2F2ZUZpbGVzKGZpbGVzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBmaWxlcy5mb3JFYWNoRmlsZSgoZmlsZSkgPT4ge1xyXG4gICAgc2F2ZUZpbGUoZmlsZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRQcm9qZWN0KHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgY29uc3QgbmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lLCAgLy8vXHJcbiAgICAgICAgZW50cmllcyA9IGVudHJpZXNGcm9tVG9wbW9zdERpcmVjdG9yeU5hbWUodG9wbW9zdERpcmVjdG9yeU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpLFxyXG4gICAgICAgIHByb2plY3QgPSBuZXcgUHJvamVjdChuYW1lLCBlbnRyaWVzKTtcclxuXHJcbiAgcmV0dXJuIHByb2plY3Q7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkUHJvamVjdHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gIGxldCBwcm9qZWN0cztcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IGFycmF5ID0gW107XHJcblxyXG4gICAgcHJvamVjdHMgPSBuZXcgUHJvamVjdHMoYXJyYXkpO1xyXG5cclxuICAgIGNvbnN0IHRvcG1vc3REaXJlY3RvcnlOYW1lcyA9IHRvcG1vc3REaXJlY3RvcnlOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKTtcclxuXHJcbiAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMuZm9yRWFjaCgodG9wbW9zdERpcmVjdG9yeU5hbWUpID0+IHtcclxuICAgICAgY29uc3QgcHJvamVjdCA9IGxvYWRQcm9qZWN0KHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKTtcclxuXHJcbiAgICAgIHByb2plY3RzLmFkZFByb2plY3QocHJvamVjdCk7XHJcbiAgICB9KTtcclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgcHJvamVjdHMgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHByb2plY3RzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVsZWFzZUZyb21OYW1lKG5hbWUpIHtcclxuICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IG5hbWUsIC8vL1xyXG4gICAgICAgIHByb2plY3RzRGlyZWN0b3J5UGF0aCA9IFBFUklPRF9DSEFSQUNURVIsXHJcbiAgICAgICAgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMgPSB0cnVlLFxyXG4gICAgICAgIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMgPSB0cnVlLFxyXG4gICAgICAgIGVudHJpZXMgPSBlbnRyaWVzRnJvbVRvcG1vc3REaXJlY3RvcnlOYW1lKHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSxcclxuICAgICAgICB2ZXJzaW9uTnVtYmVyID0gbnVsbCwgLy8vXHJcbiAgICAgICAgcmVsZWFzZSA9IG5ldyBSZWxlYXNlKG5hbWUsIGVudHJpZXMsIHZlcnNpb25OdW1iZXIpO1xyXG5cclxuICByZXR1cm4gcmVsZWFzZTtcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIGxvYWRGaWxlLFxyXG4gIHNhdmVGaWxlLFxyXG4gIGxvYWRGaWxlcyxcclxuICBzYXZlRmlsZXMsXHJcbiAgbG9hZFByb2plY3QsXHJcbiAgbG9hZFByb2plY3RzLFxyXG4gIHJlbGVhc2VGcm9tTmFtZVxyXG59O1xyXG5cclxuZnVuY3Rpb24gZGlyZWN0b3J5RnJvbVBhdGgocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IGRpcmVjdG9yeSA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcGF0aCksXHJcbiAgICAgICAgICBlbnRyeURpcmVjdG9yeSA9IGlzRW50cnlEaXJlY3RvcnkoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICBpZiAoZW50cnlEaXJlY3RvcnkpIHtcclxuICAgICAgZGlyZWN0b3J5ID0gbmV3IERpcmVjdG9yeShwYXRoKTtcclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gZGlyZWN0b3J5O1xyXG59XHJcblxyXG5mdW5jdGlvbiBlbnRyaWVzRnJvbVRvcG1vc3REaXJlY3RvcnlOYW1lKHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgY29uc3QgYXJyYXkgPSBbXSxcclxuICAgICAgICByZWxhdGl2ZURpcmVjdG9yeVBhdGggPSB0b3Btb3N0RGlyZWN0b3J5TmFtZTsgIC8vL1xyXG5cclxuICBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChhcnJheSwgcmVsYXRpdmVEaXJlY3RvcnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKTtcclxuXHJcbiAgY29uc3QgZW50cmllcyA9IG5ldyBFbnRyaWVzKGFycmF5KTtcclxuXHJcbiAgcmV0dXJuIGVudHJpZXM7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoKGFycmF5LCByZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpIHtcclxuICBjb25zdCBhYnNvbHV0ZURpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcmVsYXRpdmVEaXJlY3RvcnlQYXRoKSxcclxuICAgICAgICBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShhYnNvbHV0ZURpcmVjdG9yeVBhdGgpO1xyXG5cclxuICBzdWJFbnRyeU5hbWVzLmZvckVhY2goKHN1YkVudHJ5TmFtZSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIHN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUgPSAhc3ViRW50cnlOYW1lSGlkZGVuTmFtZSxcclxuICAgICAgICAgIGxvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzID0gIWRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMsXHJcbiAgICAgICAgICBsb2FkVW5yZWNvZ25pc2VkRmlsZXNBbmREaXJlY3RvcmllcyA9ICFsb2FkT25seVJlY29nbmlzZWRGaWxlcztcclxuXHJcbiAgICBpZiAoc3ViRW50cnlOYW1lTm90SGlkZGVuTmFtZSB8fCBsb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gICAgICBsZXQgZW50cnk7XHJcblxyXG4gICAgICBjb25zdCBwYXRoID0gY29uY2F0ZW5hdGVQYXRocyhyZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICAgIGRpcmVjdG9yeSA9IGRpcmVjdG9yeUZyb21QYXRoKHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gICAgICBpZiAoZGlyZWN0b3J5ICE9PSBudWxsKSB7XHJcbiAgICAgICAgY29uc3QgZGlyZWN0b3J5UGF0aCA9IHBhdGg7IC8vL1xyXG5cclxuICAgICAgICBpZiAobG9hZFVucmVjb2duaXNlZEZpbGVzQW5kRGlyZWN0b3JpZXMpIHtcclxuICAgICAgICAgIGVudHJ5ID0gZGlyZWN0b3J5OyAgLy8vXHJcblxyXG4gICAgICAgICAgYXJyYXkucHVzaChlbnRyeSk7ICAvLy9cclxuXHJcbiAgICAgICAgICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcclxuXHJcbiAgICAgICAgICBpZiAoYXJyYXlMZW5ndGggPiBFTlRSSUVTX01BWElNVU1fQVJSQVlfTEVOR1RIKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihFTlRSSUVTX01BWElNVU1fQVJSQVlfTEVOR1RIX0VYQ0VFREVEX01FU1NBR0UpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChhcnJheSwgZGlyZWN0b3J5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcyk7IC8vL1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IGZpbGUgPSBsb2FkRmlsZShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgICAgICBpZiAoZmlsZSAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBmaWxlLmdldFBhdGgoKSxcclxuICAgICAgICAgICAgICAgIGZpbGVQYXRoUmVjb2duaXNlZEZpbGVQYXRoID0gaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aChmaWxlUGF0aCksXHJcbiAgICAgICAgICAgICAgICBmaWxlUmVjb2duaXNlZEZpbGUgPSBmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aDsgIC8vL1xyXG5cclxuICAgICAgICAgIGlmIChmaWxlUmVjb2duaXNlZEZpbGUgfHwgbG9hZFVucmVjb2duaXNlZEZpbGVzQW5kRGlyZWN0b3JpZXMpIHtcclxuICAgICAgICAgICAgZW50cnkgPSBmaWxlOyAvLy9cclxuXHJcbiAgICAgICAgICAgIGFycmF5LnB1c2goZW50cnkpOyAgLy8vXHJcblxyXG4gICAgICAgICAgICBjb25zdCBhcnJheUxlbmd0aCA9IGFycmF5Lmxlbmd0aDtcclxuXHJcbiAgICAgICAgICAgIGlmIChhcnJheUxlbmd0aCA+IEVOVFJJRVNfTUFYSU1VTV9BUlJBWV9MRU5HVEgpIHtcclxuICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSF9FWENFRURFRF9NRVNTQUdFKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHRvcG1vc3REaXJlY3RvcnlOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgbGV0IHRvcG1vc3REaXJlY3RvcnlOYW1lcztcclxuXHJcbiAgY29uc3Qgc3ViRW50cnlOYW1lcyA9IHJlYWREaXJlY3RvcnkocHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgdG9wbW9zdERpcmVjdG9yeU5hbWVzID0gc3ViRW50cnlOYW1lcy5yZWR1Y2UoKHRvcG1vc3REaXJlY3RvcnlOYW1lcywgc3ViRW50cnlOYW1lKSA9PiB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVN1YkVudHJ5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBzdWJFbnRyeU5hbWUpLFxyXG4gICAgICAgICAgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIHN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUgPSAhc3ViRW50cnlOYW1lSGlkZGVuTmFtZSxcclxuICAgICAgICAgIGxvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzID0gIWRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXM7XHJcblxyXG4gICAgaWYgKHN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUgfHwgbG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpIHtcclxuICAgICAgY29uc3Qgc3ViRW50cnlEaXJlY3RvcnkgPSBpc0VudHJ5RGlyZWN0b3J5KGFic29sdXRlU3ViRW50cnlQYXRoKTtcclxuXHJcbiAgICAgIGlmIChzdWJFbnRyeURpcmVjdG9yeSkge1xyXG4gICAgICAgIGNvbnN0IHRvcG1vc3REaXJlY3RvcnlOYW1lID0gc3ViRW50cnlOYW1lOyAgLy8vXHJcblxyXG4gICAgICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lcy5wdXNoKHRvcG1vc3REaXJlY3RvcnlOYW1lKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRvcG1vc3REaXJlY3RvcnlOYW1lcztcclxuICB9LCBbXSk7XHJcblxyXG4gIHJldHVybiB0b3Btb3N0RGlyZWN0b3J5TmFtZXM7XHJcbn1cclxuIl0sIm5hbWVzIjpbImxvYWRGaWxlIiwic2F2ZUZpbGUiLCJsb2FkRmlsZXMiLCJzYXZlRmlsZXMiLCJsb2FkUHJvamVjdCIsImxvYWRQcm9qZWN0cyIsInJlbGVhc2VGcm9tTmFtZSIsIlBFUklPRF9DSEFSQUNURVIiLCJjaGFyYWN0ZXJzIiwiY29uY2F0ZW5hdGVQYXRocyIsInBhdGhVdGlsaXRpZXMiLCJ0b3Btb3N0RGlyZWN0b3J5UGF0aEZyb21QYXRoIiwicmVhZEZpbGUiLCJmaWxlU3lzdGVtVXRpbGl0aWVzIiwid3JpdGVGaWxlIiwiaXNFbnRyeUZpbGUiLCJyZWFkRGlyZWN0b3J5IiwiaXNFbnRyeURpcmVjdG9yeSIsInBhdGgiLCJwcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJmaWxlIiwiYWJzb2x1dGVQYXRoIiwiZW50cnlGaWxlIiwiY29udGVudCIsImNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZSIsIkZpbGUiLCJlcnJvciIsImdldFBhdGgiLCJnZXRDb250ZW50IiwidG9wbW9zdEFic29sdXRlRGlyZWN0b3J5UGF0aCIsIm1rZGlycCIsInN5bmMiLCJwYXRocyIsImFycmF5IiwiZmlsZXMiLCJGaWxlcyIsImZvckVhY2giLCJhZGRGaWxlIiwiZm9yRWFjaEZpbGUiLCJ0b3Btb3N0RGlyZWN0b3J5TmFtZSIsImxvYWRPbmx5UmVjb2duaXNlZEZpbGVzIiwiZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyIsIm5hbWUiLCJlbnRyaWVzIiwiZW50cmllc0Zyb21Ub3Btb3N0RGlyZWN0b3J5TmFtZSIsInByb2plY3QiLCJQcm9qZWN0IiwicHJvamVjdHMiLCJQcm9qZWN0cyIsInRvcG1vc3REaXJlY3RvcnlOYW1lcyIsInRvcG1vc3REaXJlY3RvcnlOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJhZGRQcm9qZWN0IiwidmVyc2lvbk51bWJlciIsInJlbGVhc2UiLCJSZWxlYXNlIiwiZGlyZWN0b3J5RnJvbVBhdGgiLCJkaXJlY3RvcnkiLCJlbnRyeURpcmVjdG9yeSIsIkRpcmVjdG9yeSIsInJlbGF0aXZlRGlyZWN0b3J5UGF0aCIsImVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoIiwiRW50cmllcyIsImFic29sdXRlRGlyZWN0b3J5UGF0aCIsInN1YkVudHJ5TmFtZXMiLCJzdWJFbnRyeU5hbWUiLCJzdWJFbnRyeU5hbWVIaWRkZW5OYW1lIiwiaXNOYW1lSGlkZGVuTmFtZSIsInN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUiLCJsb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyIsImxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzIiwiZW50cnkiLCJkaXJlY3RvcnlQYXRoIiwicHVzaCIsImFycmF5TGVuZ3RoIiwibGVuZ3RoIiwiRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSCIsIkVycm9yIiwiRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSF9FWENFRURFRF9NRVNTQUdFIiwiZmlsZVBhdGgiLCJmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCIsImlzRmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgiLCJmaWxlUmVjb2duaXNlZEZpbGUiLCJyZWR1Y2UiLCJhYnNv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
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCB7IGNoYXJhY3RlcnMsIHBhdGhVdGlsaXRpZXMsIGZpbGVTeXN0ZW1VdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XHJcblxyXG5pbXBvcnQgRW50cmllcyBmcm9tIFwiLi4vZW50cmllc1wiO1xyXG5pbXBvcnQgUmVsZWFzZSBmcm9tIFwiLi4vcmVsZWFzZVwiO1xyXG5pbXBvcnQgRGlyZWN0b3J5IGZyb20gXCIuLi9kaXJlY3RvcnlcIjtcclxuXHJcbmltcG9ydCB7IGlzTmFtZUhpZGRlbk5hbWUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL25hbWVcIjtcclxuaW1wb3J0IHsgRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSCB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCB9IGZyb20gXCIuLi91dGlsaXRpZXMvZmlsZVBhdGhcIjtcclxuaW1wb3J0IHsgRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSF9FWENFRURFRF9NRVNTQUdFIH0gZnJvbSBcIi4uL21lc3NhZ2VzXCI7XHJcblxyXG5jb25zdCB7IFBFUklPRF9DSEFSQUNURVIgfSA9IGNoYXJhY3RlcnMsXHJcbiAgICAgIHsgY29uY2F0ZW5hdGVQYXRocyB9ID0gcGF0aFV0aWxpdGllcyxcclxuICAgICAgeyByZWFkRGlyZWN0b3J5LCBpc0VudHJ5RGlyZWN0b3J5IH0gPSBmaWxlU3lzdGVtVXRpbGl0aWVzO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlbGVhc2VGcm9tUmVsZWFzZU5hbWUocmVsZWFzZU5hbWUpIHtcclxuICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHJlbGVhc2VOYW1lLCAvLy9cclxuICAgICAgICBwcm9qZWN0c0RpcmVjdG9yeVBhdGggPSBQRVJJT0RfQ0hBUkFDVEVSLFxyXG4gICAgICAgIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzID0gdHJ1ZSxcclxuICAgICAgICBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzID0gdHJ1ZSxcclxuICAgICAgICBuYW1lID0gcmVsZWFzZU5hbWUsIC8vL1xyXG4gICAgICAgIGVudHJpZXMgPSBlbnRyaWVzRnJvbVRvcG1vc3REaXJlY3RvcnlOYW1lKHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSxcclxuICAgICAgICB2ZXJzaW9uTnVtYmVyID0gbnVsbCwgLy8vXHJcbiAgICAgICAgcmVsZWFzZSA9IG5ldyBSZWxlYXNlKG5hbWUsIGVudHJpZXMsIHZlcnNpb25OdW1iZXIpO1xyXG5cclxuICByZXR1cm4gcmVsZWFzZTtcclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIHJlbGVhc2VGcm9tUmVsZWFzZU5hbWVcclxufTtcclxuXHJcbmZ1bmN0aW9uIGRpcmVjdG9yeUZyb21QYXRoKHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBkaXJlY3RvcnkgPSBudWxsO1xyXG5cclxuICB0cnkge1xyXG4gICAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHBhdGgpLFxyXG4gICAgICAgICAgZW50cnlEaXJlY3RvcnkgPSBpc0VudHJ5RGlyZWN0b3J5KGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgaWYgKGVudHJ5RGlyZWN0b3J5KSB7XHJcbiAgICAgIGRpcmVjdG9yeSA9IG5ldyBEaXJlY3RvcnkocGF0aCk7XHJcbiAgICB9XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIC8vL1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIGRpcmVjdG9yeTtcclxufVxyXG5cclxuZnVuY3Rpb24gZW50cmllc0Zyb21Ub3Btb3N0RGlyZWN0b3J5TmFtZSh0b3Btb3N0RGlyZWN0b3J5TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gIGNvbnN0IGFycmF5ID0gW10sXHJcbiAgICAgICAgcmVsYXRpdmVEaXJlY3RvcnlQYXRoID0gdG9wbW9zdERpcmVjdG9yeU5hbWU7ICAvLy9cclxuXHJcbiAgZW50cmllc0Zyb21SZWxhdGl2ZURpcmVjdG9yeVBhdGgoYXJyYXksIHJlbGF0aXZlRGlyZWN0b3J5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcyk7XHJcblxyXG4gIGNvbnN0IGVudHJpZXMgPSBuZXcgRW50cmllcyhhcnJheSk7XHJcblxyXG4gIHJldHVybiBlbnRyaWVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChhcnJheSwgcmVsYXRpdmVEaXJlY3RvcnlQYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgY29uc3QgYWJzb2x1dGVEaXJlY3RvcnlQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHJlbGF0aXZlRGlyZWN0b3J5UGF0aCksXHJcbiAgICAgICAgc3ViRW50cnlOYW1lcyA9IHJlYWREaXJlY3RvcnkoYWJzb2x1dGVEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgc3ViRW50cnlOYW1lcy5mb3JFYWNoKChzdWJFbnRyeU5hbWUpID0+IHtcclxuICAgIGNvbnN0IHN1YkVudHJ5TmFtZUhpZGRlbk5hbWUgPSBpc05hbWVIaWRkZW5OYW1lKHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICBzdWJFbnRyeU5hbWVOb3RIaWRkZW5OYW1lID0gIXN1YkVudHJ5TmFtZUhpZGRlbk5hbWUsXHJcbiAgICAgICAgICBsb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyA9ICFkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzLFxyXG4gICAgICAgICAgbG9hZFVucmVjb2duaXNlZEZpbGVzQW5kRGlyZWN0b3JpZXMgPSAhbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXM7XHJcblxyXG4gICAgaWYgKHN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUgfHwgbG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpIHtcclxuICAgICAgbGV0IGVudHJ5O1xyXG5cclxuICAgICAgY29uc3QgcGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocmVsYXRpdmVEaXJlY3RvcnlQYXRoLCBzdWJFbnRyeU5hbWUpLFxyXG4gICAgICAgICAgICBkaXJlY3RvcnkgPSBkaXJlY3RvcnlGcm9tUGF0aChwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgICAgaWYgKGRpcmVjdG9yeSAhPT0gbnVsbCkge1xyXG4gICAgICAgIGNvbnN0IGRpcmVjdG9yeVBhdGggPSBwYXRoOyAvLy9cclxuXHJcbiAgICAgICAgaWYgKGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgICAgICBlbnRyeSA9IGRpcmVjdG9yeTsgIC8vL1xyXG5cclxuICAgICAgICAgIGFycmF5LnB1c2goZW50cnkpOyAgLy8vXHJcblxyXG4gICAgICAgICAgY29uc3QgYXJyYXlMZW5ndGggPSBhcnJheS5sZW5ndGg7XHJcblxyXG4gICAgICAgICAgaWYgKGFycmF5TGVuZ3RoID4gRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoRU5UUklFU19NQVhJTVVNX0FSUkFZX0xFTkdUSF9FWENFRURFRF9NRVNTQUdFKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZW50cmllc0Zyb21SZWxhdGl2ZURpcmVjdG9yeVBhdGgoYXJyYXksIGRpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpOyAvLy9cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBmaWxlID0gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgICAgaWYgKGZpbGUgIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgICAgICAgICBmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCA9IGlzRmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgoZmlsZVBhdGgpLFxyXG4gICAgICAgICAgICAgICAgZmlsZVJlY29nbmlzZWRGaWxlID0gZmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGg7ICAvLy9cclxuXHJcbiAgICAgICAgICBpZiAoZmlsZVJlY29nbmlzZWRGaWxlIHx8IGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgICAgICAgIGVudHJ5ID0gZmlsZTsgLy8vXHJcblxyXG4gICAgICAgICAgICBhcnJheS5wdXNoKGVudHJ5KTsgIC8vL1xyXG5cclxuICAgICAgICAgICAgY29uc3QgYXJyYXlMZW5ndGggPSBhcnJheS5sZW5ndGg7XHJcblxyXG4gICAgICAgICAgICBpZiAoYXJyYXlMZW5ndGggPiBFTlRSSUVTX01BWElNVU1fQVJSQVlfTEVOR1RIKSB7XHJcbiAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKEVOVFJJRVNfTUFYSU1VTV9BUlJBWV9MRU5HVEhfRVhDRUVERURfTUVTU0FHRSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0pO1xyXG59XHJcbiJdLCJuYW1lcyI6WyJyZWxlYXNlRnJvbVJlbGVhc2VOYW1lIiwiUEVSSU9EX0NIQVJBQ1RFUiIsImNoYXJhY3RlcnMiLCJjb25jYXRlbmF0ZVBhdGhzIiwicGF0aFV0aWxpdGllcyIsInJlYWREaXJlY3RvcnkiLCJmaWxlU3lzdGVtVXRpbGl0aWVzIiwiaXNFbnRyeURpcmVjdG9yeSIsInJlbGVhc2VOYW1lIiwidG9wbW9zdERpcmVjdG9yeU5hbWUiLCJwcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJsb2FkT25seVJlY29nbmlzZWRGaWxlcyIsImRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMiLCJuYW1lIiwiZW50cmllcyIsImVudHJpZXNGcm9tVG9wbW9zdERpcmVjdG9yeU5hbWUiLCJ2ZXJzaW9uTnVtYmVyIiwicmVsZWFzZSIsIlJlbGVhc2UiLCJkaXJlY3RvcnlGcm9tUGF0aCIsInBhdGgiLCJkaXJlY3RvcnkiLCJhYnNvbHV0ZVBhdGgiLCJlbnRyeURpcmVjdG9yeSIsIkRpcmVjdG9yeSIsImVycm9yIiwiYXJyYXkiLCJyZWxhdGl2ZURpcmVjdG9yeVBhdGgiLCJlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aCIsIkVudHJpZXMiLCJhYnNvbHV0ZURpcmVjdG9yeVBhdGgiLCJzdWJFbnRyeU5hbWVzIiwiZm9yRWFjaCIsInN1YkVudHJ5TmFtZSIsInN1YkVudHJ5TmFtZUhpZGRlbk5hbWUiLCJpc05hbWVIaWRkZW5OYW1lIiwic3ViRW50cnlOYW1lTm90SGlkZGVuTmFtZSIsImxvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzIiwibG9hZFVucmVjb2duaXNlZEZpbGVzQW5kRGlyZWN0b3JpZXMiLCJlbnRyeSIsImRpcmVjdG9yeVBhdGgiLCJwdXNoIiwiYXJyYXlMZW5ndGgiLCJsZW5ndGgiLCJFTlRSSUVTX01BWElNVU1fQVJSQVlfTEVOR1RIIiwiRXJyb3IiLCJFTlRSSUVTX01BWElNVU1fQVJSQVlfTEVOR1RIX0VYQ0VFREVEX01FU1NBR0UiLCJmaWxlIiwibG9hZEZpbGUiLCJmaWxlUGF0aCIsImdldFBhdGgiLCJmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCIsImlzRmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgiLCJmaWxlUmVjb2duaXNlZEZpbGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQWlCZ0JBLHNCQUFzQjtlQUF0QkE7O0lBYWhCLE9BRUU7ZUFGRjs7O3lCQTVCK0Q7NERBRTNDOzREQUNBOzhEQUNFO29CQUVXO3lCQUNZO3dCQUNBO3dCQUNpQjs7Ozs7O0FBRTlELElBQU0sQUFBRUMsbUJBQXFCQyxxQkFBVSxDQUEvQkQsa0JBQ0YsQUFBRUUsbUJBQXFCQyx3QkFBYSxDQUFsQ0Qsa0JBQ0FFLGdCQUFvQ0MsOEJBQW1CLENBQXZERCxlQUFlRSxtQkFBcUJELDhCQUFtQixDQUF4Q0M7QUFFaEIsU0FBU1AsdUJBQXVCUSxXQUFXLEVBQUU7SUFDbEQsSUFBTUMsdUJBQXVCRCxhQUN2QkUsd0JBQXdCVCxrQkFDeEJVLDBCQUEwQixJQUFJLEVBQzlCQyxxQ0FBcUMsSUFBSSxFQUN6Q0MsT0FBT0wsYUFDUE0sVUFBVUMsZ0NBQWdDTixzQkFBc0JDLHVCQUF1QkMseUJBQXlCQyxxQ0FDaEhJLGdCQUFnQixJQUFJLEVBQ3BCQyxVQUFVLElBQUlDLGdCQUFPLENBQUNMLE1BQU1DLFNBQVNFO0lBRTNDLE9BQU9DO0FBQ1Q7SUFFQSxXQUFlO0lBQ2JqQix3QkFBQUE7QUFDRjtBQUVBLFNBQVNtQixrQkFBa0JDLElBQUksRUFBRVYscUJBQXFCLEVBQUU7SUFDdEQsSUFBSVcsWUFBWSxJQUFJO0lBRXBCLElBQUk7UUFDRixJQUFNQyxlQUFlbkIsaUJBQWlCTyx1QkFBdUJVLE9BQ3ZERyxpQkFBaUJoQixpQkFBaUJlO1FBRXhDLElBQUlDLGdCQUFnQjtZQUNsQkYsWUFBWSxJQUFJRyxrQkFBUyxDQUFDSjtRQUM1QixDQUFDO0lBQ0gsRUFBRSxPQUFPSyxPQUFPO0lBQ2QsR0FBRztJQUNMO0lBRUEsT0FBT0o7QUFDVDtBQUVBLFNBQVNOLGdDQUFnQ04sb0JBQW9CLEVBQUVDLHFCQUFxQixFQUFFQyx1QkFBdUIsRUFBRUMsa0NBQWtDLEVBQUU7SUFDakosSUFBTWMsUUFBUSxFQUFFLEVBQ1ZDLHdCQUF3QmxCLHNCQUF1QixHQUFHO0lBRXhEbUIsaUNBQWlDRixPQUFPQyx1QkFBdUJqQix1QkFBdUJDLHlCQUF5QkM7SUFFL0csSUFBTUUsVUFBVSxJQUFJZSxnQkFBTyxDQUFDSDtJQUU1QixPQUFPWjtBQUNUO0FBRUEsU0FBU2MsaUNBQWlDRixLQUFLLEVBQUVDLHFCQUFxQixFQUFFakIscUJBQXFCLEVBQUVDLHVCQUF1QixFQUFFQyxrQ0FBa0MsRUFBRTtJQUMxSixJQUFNa0Isd0JBQXdCM0IsaUJBQWlCTyx1QkFBdUJpQix3QkFDaEVJLGdCQUFnQjFCLGNBQWN5QjtJQUVwQ0MsY0FBY0MsT0FBTyxDQUFDLFNBQUNDLGNBQWlCO1FBQ3RDLElBQU1DLHlCQUF5QkMsSUFBQUEsc0JBQWdCLEVBQUNGLGVBQzFDRyw0QkFBNEIsQ0FBQ0Ysd0JBQzdCRyxnQ0FBZ0MsQ0FBQ3pCLG9DQUNqQzBCLHNDQUFzQyxDQUFDM0I7UUFFN0MsSUFBSXlCLDZCQUE2QkMsK0JBQStCO1lBQzlELElBQUlFO1lBRUosSUFBTW5CLE9BQU9qQixpQkFBaUJ3Qix1QkFBdUJNLGVBQy9DWixZQUFZRixrQkFBa0JDLE1BQU1WO1lBRTFDLElBQUlXLGNBQWMsSUFBSSxFQUFFO2dCQUN0QixJQUFNbUIsZ0JBQWdCcEIsTUFBTSxHQUFHO2dCQUUvQixJQUFJa0IscUNBQXFDO29CQUN2Q0MsUUFBUWxCLFdBQVksR0FBRztvQkFFdkJLLE1BQU1lLElBQUksQ0FBQ0YsUUFBUyxHQUFHO29CQUV2QixJQUFNRyxjQUFjaEIsTUFBTWlCLE1BQU07b0JBRWhDLElBQUlELGNBQWNFLHVDQUE0QixFQUFFO3dCQUM5QyxNQUFNLElBQUlDLE1BQU1DLHVEQUE2QyxFQUFDO29CQUNoRSxDQUFDO2dCQUNILENBQUM7Z0JBRURsQixpQ0FBaUNGLE9BQU9jLGVBQWU5Qix1QkFBdUJDLHlCQUF5QkMscUNBQXFDLEdBQUc7WUFDakosT0FBTztnQkFDTCxJQUFNbUMsT0FBT0MsU0FBUzVCLE1BQU1WO2dCQUU1QixJQUFJcUMsU0FBUyxJQUFJLEVBQUU7b0JBQ2pCLElBQU1FLFdBQVdGLEtBQUtHLE9BQU8sSUFDdkJDLDZCQUE2QkMsSUFBQUEsc0NBQTRCLEVBQUNILFdBQzFESSxxQkFBcUJGLDRCQUE2QixHQUFHO29CQUUzRCxJQUFJRSxzQkFBc0JmLHFDQUFxQzt3QkFDN0RDLFFBQVFRLE1BQU0sR0FBRzt3QkFFakJyQixNQUFNZSxJQUFJLENBQUNGLFFBQVMsR0FBRzt3QkFFdkIsSUFBTUcsZUFBY2hCLE1BQU1pQixNQUFNO3dCQUVoQyxJQUFJRCxlQUFjRSx1Q0FBNEIsRUFBRTs0QkFDOUMsTUFBTSxJQUFJQyxNQUFNQyx1REFBNkMsRUFBQzt3QkFDaEUsQ0FBQztvQkFDSCxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztJQUNIO0FBQ0YifQ==
@@ -2,10 +2,18 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- Object.defineProperty(exports, "isNameHiddenName", {
6
- enumerable: true,
7
- get: function() {
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ isNameHiddenName: function() {
8
13
  return isNameHiddenName;
14
+ },
15
+ default: function() {
16
+ return _default;
9
17
  }
10
18
  });
11
19
  var hiddenNameRegularExpression = /^\..+/;
@@ -13,5 +21,8 @@ function isNameHiddenName(name) {
13
21
  var nameHiddenName = hiddenNameRegularExpression.test(name);
14
22
  return nameHiddenName;
15
23
  }
24
+ var _default = {
25
+ isNameHiddenName: isNameHiddenName
26
+ };
16
27
 
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgaGlkZGVuTmFtZVJlZ3VsYXJFeHByZXNzaW9uID0gL15cXC4uKy87XG5cbmV4cG9ydCBmdW5jdGlvbiBpc05hbWVIaWRkZW5OYW1lKG5hbWUpIHtcbiAgY29uc3QgbmFtZUhpZGRlbk5hbWUgPSBoaWRkZW5OYW1lUmVndWxhckV4cHJlc3Npb24udGVzdChuYW1lKTtcblxuICByZXR1cm4gbmFtZUhpZGRlbk5hbWU7XG59XG4iXSwibmFtZXMiOlsiaXNOYW1lSGlkZGVuTmFtZSIsImhpZGRlbk5hbWVSZWd1bGFyRXhwcmVzc2lvbiIsIm5hbWUiLCJuYW1lSGlkZGVuTmFtZSIsInRlc3QiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUlnQkE7OztlQUFBQTs7O0FBRmhCLElBQU1DLDhCQUE4QjtBQUU3QixTQUFTRCxpQkFBaUJFLElBQUksRUFBRTtJQUNyQyxJQUFNQyxpQkFBaUJGLDRCQUE0QkcsSUFBSSxDQUFDRjtJQUV4RCxPQUFPQztBQUNUIn0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgaGlkZGVuTmFtZVJlZ3VsYXJFeHByZXNzaW9uID0gL15cXC4uKy87XG5cbmV4cG9ydCBmdW5jdGlvbiBpc05hbWVIaWRkZW5OYW1lKG5hbWUpIHtcbiAgY29uc3QgbmFtZUhpZGRlbk5hbWUgPSBoaWRkZW5OYW1lUmVndWxhckV4cHJlc3Npb24udGVzdChuYW1lKTtcblxuICByZXR1cm4gbmFtZUhpZGRlbk5hbWU7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgaXNOYW1lSGlkZGVuTmFtZVxufTtcbiJdLCJuYW1lcyI6WyJpc05hbWVIaWRkZW5OYW1lIiwiaGlkZGVuTmFtZVJlZ3VsYXJFeHByZXNzaW9uIiwibmFtZSIsIm5hbWVIaWRkZW5OYW1lIiwidGVzdCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBSWdCQSxnQkFBZ0I7ZUFBaEJBOztJQU1oQixPQUVFO2VBRkY7OztBQVJBLElBQU1DLDhCQUE4QjtBQUU3QixTQUFTRCxpQkFBaUJFLElBQUksRUFBRTtJQUNyQyxJQUFNQyxpQkFBaUJGLDRCQUE0QkcsSUFBSSxDQUFDRjtJQUV4RCxPQUFPQztBQUNUO0lBRUEsV0FBZTtJQUNiSCxrQkFBQUE7QUFDRiJ9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-open-cli",
3
3
  "author": "James Smith",
4
- "version": "5.0.37",
4
+ "version": "5.0.38",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-open-cli",
7
7
  "description": "Occam's command line package management tool.",
@@ -11,7 +11,6 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "argumentative": "^2.0.15",
14
- "mkdirp": "^0.5.1",
15
14
  "necessary": "^11.1.4",
16
15
  "occam-parsers": "^16.0.122"
17
16
  },
package/src/file.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { FILE_TYPE } from "./types";
4
- import { DOUBLE_SPACE } from "./constants";
4
+ import { convertContentTabsToWhitespace } from "./utilities/content"
5
5
 
6
6
  export default class File {
7
7
  constructor(path, content) {
@@ -93,5 +93,3 @@ export default class File {
93
93
  return file;
94
94
  }
95
95
  }
96
-
97
- export function convertContentTabsToWhitespace(content) { return content.replace(/\t/g, DOUBLE_SPACE); } ///
package/src/main.js CHANGED
@@ -8,5 +8,7 @@ export { default as Release } from "./release";
8
8
  export { default as Entries } from "./entries";
9
9
  export { default as Project } from "./project";
10
10
  export { default as Projects } from "./projects";
11
+ export { default as nameUtilities } from "./utilities/name";
12
+ export { default as contentUtilities } from "./utilities/content";
11
13
  export { default as filePathUtilities } from "./utilities/filePath";
12
14
  export { default as fileSystemUtilities } from "./utilities/fileSystem";
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ import { DOUBLE_SPACE } from "../constants";
4
+
5
+ export function convertContentTabsToWhitespace(content) { return content.replace(/\t/g, DOUBLE_SPACE); } ///
6
+
7
+ export default {
8
+ convertContentTabsToWhitespace
9
+ };
@@ -1,113 +1,26 @@
1
1
  "use strict";
2
2
 
3
- import mkdirp from "mkdirp";
4
-
5
3
  import { characters, pathUtilities, fileSystemUtilities } from "necessary";
6
4
 
7
- import File from "../file";
8
- import Files from "../files";
9
5
  import Entries from "../entries";
10
- import Project from "../project";
11
6
  import Release from "../release";
12
- import Projects from "../projects";
13
7
  import Directory from "../directory";
14
8
 
15
9
  import { isNameHiddenName } from "../utilities/name";
16
10
  import { ENTRIES_MAXIMUM_ARRAY_LENGTH } from "../constants";
17
11
  import { isFilePathRecognisedFilePath } from "../utilities/filePath";
18
- import { convertContentTabsToWhitespace } from "../file";
19
12
  import { ENTRIES_MAXIMUM_ARRAY_LENGTH_EXCEEDED_MESSAGE } from "../messages";
20
13
 
21
14
  const { PERIOD_CHARACTER } = characters,
22
- { concatenatePaths, topmostDirectoryPathFromPath } = pathUtilities,
23
- { readFile, writeFile, isEntryFile, readDirectory, isEntryDirectory } = fileSystemUtilities;
24
-
25
- export function loadFile(path, projectsDirectoryPath) {
26
- let file = null;
27
-
28
- try {
29
- const absolutePath = concatenatePaths(projectsDirectoryPath, path),
30
- entryFile = isEntryFile(absolutePath);
31
-
32
- if (entryFile) {
33
- let content = readFile(absolutePath);
34
-
35
- content = convertContentTabsToWhitespace(content); ///
36
-
37
- file = new File(path, content);
38
- }
39
- } catch (error) {
40
- ///
41
- }
42
-
43
- return file;
44
- }
45
-
46
- export function saveFile(file, projectsDirectoryPath) {
47
- const path = file.getPath(),
48
- content = file.getContent(),
49
- absolutePath = concatenatePaths(projectsDirectoryPath, path),
50
- topmostAbsoluteDirectoryPath = topmostDirectoryPathFromPath(absolutePath);
51
-
52
- mkdirp.sync(topmostAbsoluteDirectoryPath);
53
-
54
- writeFile(absolutePath, content);
55
- }
56
-
57
- export function loadFiles(paths, projectsDirectoryPath) {
58
- const array = [],
59
- files = new Files(array);
60
-
61
- paths.forEach((path) => {
62
- const file = loadFile(path, projectsDirectoryPath);
63
-
64
- files.addFile(file);
65
- });
66
-
67
- return files;
68
- }
69
-
70
- export function saveFiles(files, projectsDirectoryPath) {
71
- files.forEachFile((file) => {
72
- saveFile(file, projectsDirectoryPath);
73
- });
74
- }
15
+ { concatenatePaths } = pathUtilities,
16
+ { readDirectory, isEntryDirectory } = fileSystemUtilities;
75
17
 
76
- export function loadProject(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories) {
77
- const name = topmostDirectoryName, ///
78
- entries = entriesFromTopmostDirectoryName(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories),
79
- project = new Project(name, entries);
80
-
81
- return project;
82
- }
83
-
84
- export function loadProjects(projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories) {
85
- let projects;
86
-
87
- try {
88
- const array = [];
89
-
90
- projects = new Projects(array);
91
-
92
- const topmostDirectoryNames = topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath, doNotLoadHiddenFilesAndDirectories);
93
-
94
- topmostDirectoryNames.forEach((topmostDirectoryName) => {
95
- const project = loadProject(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories);
96
-
97
- projects.addProject(project);
98
- });
99
- } catch (error) {
100
- projects = null;
101
- }
102
-
103
- return projects;
104
- }
105
-
106
- export function releaseFromName(name) {
107
- const topmostDirectoryName = name, ///
18
+ export function releaseFromReleaseName(releaseName) {
19
+ const topmostDirectoryName = releaseName, ///
108
20
  projectsDirectoryPath = PERIOD_CHARACTER,
109
21
  loadOnlyRecognisedFiles = true,
110
22
  doNotLoadHiddenFilesAndDirectories = true,
23
+ name = releaseName, ///
111
24
  entries = entriesFromTopmostDirectoryName(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories),
112
25
  versionNumber = null, ///
113
26
  release = new Release(name, entries, versionNumber);
@@ -116,13 +29,7 @@ export function releaseFromName(name) {
116
29
  }
117
30
 
118
31
  export default {
119
- loadFile,
120
- saveFile,
121
- loadFiles,
122
- saveFiles,
123
- loadProject,
124
- loadProjects,
125
- releaseFromName
32
+ releaseFromReleaseName
126
33
  };
127
34
 
128
35
  function directoryFromPath(path, projectsDirectoryPath) {
@@ -209,30 +116,3 @@ function entriesFromRelativeDirectoryPath(array, relativeDirectoryPath, projects
209
116
  }
210
117
  });
211
118
  }
212
-
213
- function topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath, doNotLoadHiddenFilesAndDirectories) {
214
- let topmostDirectoryNames;
215
-
216
- const subEntryNames = readDirectory(projectsDirectoryPath);
217
-
218
- topmostDirectoryNames = subEntryNames.reduce((topmostDirectoryNames, subEntryName) => {
219
- const absoluteSubEntryPath = concatenatePaths(projectsDirectoryPath, subEntryName),
220
- subEntryNameHiddenName = isNameHiddenName(subEntryName),
221
- subEntryNameNotHiddenName = !subEntryNameHiddenName,
222
- loadHiddenFilesAndDirectories = !doNotLoadHiddenFilesAndDirectories;
223
-
224
- if (subEntryNameNotHiddenName || loadHiddenFilesAndDirectories) {
225
- const subEntryDirectory = isEntryDirectory(absoluteSubEntryPath);
226
-
227
- if (subEntryDirectory) {
228
- const topmostDirectoryName = subEntryName; ///
229
-
230
- topmostDirectoryNames.push(topmostDirectoryName)
231
- }
232
- }
233
-
234
- return topmostDirectoryNames;
235
- }, []);
236
-
237
- return topmostDirectoryNames;
238
- }
@@ -7,3 +7,7 @@ export function isNameHiddenName(name) {
7
7
 
8
8
  return nameHiddenName;
9
9
  }
10
+
11
+ export default {
12
+ isNameHiddenName
13
+ };