occam-file-system 5.0.62 → 5.0.64

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.
Files changed (50) hide show
  1. package/package.json +1 -1
  2. package/src/browser.js +1 -0
  3. package/src/dependencies.js +21 -14
  4. package/src/dependency.js +0 -29
  5. package/src/main.js +1 -0
  6. package/src/version.js +33 -0
  7. package/src/versionChanges.js +11 -0
  8. package/lib/browser.js +0 -75
  9. package/lib/constants.js +0 -34
  10. package/lib/dependencies.js +0 -113
  11. package/lib/dependency.js +0 -88
  12. package/lib/directory.js +0 -107
  13. package/lib/entries.js +0 -228
  14. package/lib/file.js +0 -141
  15. package/lib/fileNames.js +0 -59
  16. package/lib/files.js +0 -121
  17. package/lib/loadFile.js +0 -18
  18. package/lib/loadFiles.js +0 -18
  19. package/lib/loadProjects.js +0 -18
  20. package/lib/loadRelease.js +0 -18
  21. package/lib/loadReleases.js +0 -18
  22. package/lib/main.js +0 -115
  23. package/lib/messages.js +0 -13
  24. package/lib/mixins/bnf.js +0 -47
  25. package/lib/mixins/entries.js +0 -31
  26. package/lib/mixins/files.js +0 -41
  27. package/lib/mixins/metaJSON.js +0 -36
  28. package/lib/mixins/pattern.js +0 -47
  29. package/lib/moveProjectEntries.js +0 -96
  30. package/lib/multiplers.js +0 -26
  31. package/lib/project.js +0 -106
  32. package/lib/projects.js +0 -112
  33. package/lib/release.js +0 -132
  34. package/lib/releases.js +0 -112
  35. package/lib/removeProjectEntries.js +0 -82
  36. package/lib/saveFile.js +0 -25
  37. package/lib/saveFiles.js +0 -25
  38. package/lib/shortenedVersion.js +0 -84
  39. package/lib/types.js +0 -22
  40. package/lib/utilities/content.js +0 -34
  41. package/lib/utilities/filePath.js +0 -63
  42. package/lib/utilities/fileSystem.js +0 -219
  43. package/lib/utilities/files.js +0 -85
  44. package/lib/utilities/http.js +0 -63
  45. package/lib/utilities/metaJSON.js +0 -94
  46. package/lib/utilities/name.js +0 -31
  47. package/lib/utilities/pathMaps.js +0 -20
  48. package/lib/utilities/query.js +0 -41
  49. package/lib/utilities/version.js +0 -71
  50. package/lib/version.js +0 -135
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-file-system",
3
3
  "author": "James Smith",
4
- "version": "5.0.62",
4
+ "version": "5.0.64",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-file-system",
7
7
  "description": "Occam's file system functionality.",
package/src/browser.js CHANGED
@@ -12,6 +12,7 @@ export { default as Dependencies } from "./dependencies";
12
12
  export { default as ShortenedVersion } from "./shortenedVersion";
13
13
 
14
14
  export { default as fileNames } from "./fileNames";
15
+ export { default as versionChanges } from "./versionChanges";
15
16
 
16
17
 
17
18
  export { default as contentUtilities } from "./utilities/content";
@@ -3,6 +3,7 @@
3
3
  import { asynchronousUtilities } from "necessary";
4
4
 
5
5
  import Dependency from "./dependency";
6
+ import ShortenedVersion from "./shortenedVersion";
6
7
 
7
8
  const { forEach } = asynchronousUtilities;
8
9
 
@@ -34,27 +35,33 @@ export default class Dependencies {
34
35
  asynchronousForEachDependency(operation, done) { forEach(this.array, operation, done); }
35
36
 
36
37
  toJSON() {
37
- const dependenciesJSON = this.array.map((dependency) => {
38
- const dependencyJSON = dependency.toJSON();
38
+ const dependenciesJSON = this.array.reduce((dependenciesJSON, dependency) => {
39
+ const name = dependency.getName(),
40
+ shortenedVersion = dependency.getShortedVersion(),
41
+ shortenedVersionString = shortenedVersion.toString();
42
+
43
+ dependenciesJSON[name] = shortenedVersionString;
39
44
 
40
- return dependencyJSON;
41
- }),
45
+ return dependenciesJSON;
46
+ }, {}),
42
47
  json = dependenciesJSON; ///
43
48
 
44
49
  return json;
45
50
  }
46
51
 
47
52
  static fromJSON(json) {
48
- const array = [],
49
- dependencies = new Dependencies(array),
50
- dependenciesJSON = json; ///
51
-
52
- dependenciesJSON.forEach((dependencyJSON) => { ///
53
- const json = dependencyJSON, ///
54
- dependency = Dependency.fromJSON(json);
55
-
56
- dependencies.addDependency(dependency);
57
- });
53
+ const dependenciesJSON = json, ///
54
+ dependenciesJSONKeys = Object.keys(dependenciesJSON),
55
+ names = dependenciesJSONKeys, ///
56
+ array = names.map((name) => {
57
+ const shortenedVersionString = dependenciesJSON[name],
58
+ string = shortenedVersionString, ///
59
+ shortenedVersion = ShortenedVersion.fromString(string),
60
+ dependency = Dependency.fromNameAndShortenedVersion(name, shortenedVersion);
61
+
62
+ return dependency;
63
+ }),
64
+ dependencies = new Dependencies(array);
58
65
 
59
66
  return dependencies;
60
67
  }
package/src/dependency.js CHANGED
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import ShortenedVersion from "./shortenedVersion";
4
-
5
3
  export default class Dependency {
6
4
  constructor(name, shortenedVersion) {
7
5
  this.name = name;
@@ -16,33 +14,6 @@ export default class Dependency {
16
14
  return this.shortenedVersion;
17
15
  }
18
16
 
19
- toJSON() {
20
- const shortenedVersionString = this.shortenedVersion.toString(),
21
- name = this.name,
22
- shortenedVersion = shortenedVersionString, ///
23
- json = {
24
- name,
25
- shortenedVersion
26
- };
27
-
28
- return json;
29
- }
30
-
31
- static fromJSON(json) {
32
- const { name } = json;
33
-
34
- let { shortenedVersion } = json;
35
-
36
- const shortenedVersionString = shortenedVersion, ///
37
- string = shortenedVersionString; ///
38
-
39
- shortenedVersion = ShortenedVersion.fromString(string);
40
-
41
- const dependency = new Dependency(name, shortenedVersion);
42
-
43
- return dependency;
44
- }
45
-
46
17
  static fromNameAndShortenedVersion(name, shortenedVersion) {
47
18
  const dependency = new Dependency(name, shortenedVersion);
48
19
 
package/src/main.js CHANGED
@@ -12,6 +12,7 @@ export { default as Dependencies } from "./dependencies";
12
12
  export { default as ShortenedVersion } from "./shortenedVersion";
13
13
 
14
14
  export { default as fileNames } from "./fileNames";
15
+ export { default as versionChanges } from "./versionChanges";
15
16
 
16
17
  export { default as httpUtilities } from "./utilities/http";
17
18
  export { default as contentUtilities } from "./utilities/content";
package/src/version.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ import { MAJOR_VERSION_CHANGE, MINOR_VERSION_CHANGE, PATCH_VERSION_CHANGE } from "./versionChanges";
3
4
  import { MAJOR_NUMBER_MULTIPLIER, MINOR_NUMBER_MULTIPLIER, PATCH_NUMBER_MULTIPLIER } from "./multiplers";
4
5
  import { majorNumberFromNumber,
5
6
  minorNumberFromNumber,
@@ -39,6 +40,38 @@ export default class Version {
39
40
  this.patchNumber += 1;
40
41
  }
41
42
 
43
+ resetMajorNumber() {
44
+ this.majorNumber = 0;
45
+ }
46
+
47
+ resetMinorNumber() {
48
+ this.minorNumber = 0;
49
+ }
50
+
51
+ resetPatchNumber() {
52
+ this.patchNumber = 0;
53
+ }
54
+
55
+ change(versionChange) {
56
+ switch (versionChange) {
57
+ case MAJOR_VERSION_CHANGE:
58
+ this.bumpMajorNumber();
59
+ this.resetMinorNumber();
60
+ this.resetPatchNumber();
61
+
62
+ break;
63
+
64
+ case MINOR_VERSION_CHANGE:
65
+ this.bumpMinorNumber();
66
+ this.resetMajorNumber();
67
+ break;
68
+
69
+ case PATCH_VERSION_CHANGE:
70
+ this.bumpPatchNumber();
71
+ break;
72
+ }
73
+ }
74
+
42
75
  matchShortenedVersion(shortenedVersion) {
43
76
  let matchesShortenedVersion = false;
44
77
 
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ export const MAJOR_VERSION_CHANGE = "major";
4
+ export const MINOR_VERSION_CHANGE = "minor";
5
+ export const PATCH_VERSION_CHANGE = "patch";
6
+
7
+ module.exports = {
8
+ MAJOR_VERSION_CHANGE,
9
+ MINOR_VERSION_CHANGE,
10
+ PATCH_VERSION_CHANGE
11
+ };
package/lib/browser.js DELETED
@@ -1,75 +0,0 @@
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
- File: function() {
13
- return _file.default;
14
- },
15
- Files: function() {
16
- return _files.default;
17
- },
18
- Version: function() {
19
- return _version.default;
20
- },
21
- Release: function() {
22
- return _release.default;
23
- },
24
- Entries: function() {
25
- return _entries.default;
26
- },
27
- Project: function() {
28
- return _project.default;
29
- },
30
- Projects: function() {
31
- return _projects.default;
32
- },
33
- Dependency: function() {
34
- return _dependency.default;
35
- },
36
- Dependencies: function() {
37
- return _dependencies.default;
38
- },
39
- ShortenedVersion: function() {
40
- return _shortenedVersion.default;
41
- },
42
- fileNames: function() {
43
- return _fileNames.default;
44
- },
45
- contentUtilities: function() {
46
- return _content.default;
47
- },
48
- filePathUtilities: function() {
49
- return _filePath.default;
50
- },
51
- metaJSONUtilities: function() {
52
- return _metaJSON.default;
53
- }
54
- });
55
- var _file = /*#__PURE__*/ _interopRequireDefault(require("./file"));
56
- var _files = /*#__PURE__*/ _interopRequireDefault(require("./files"));
57
- var _version = /*#__PURE__*/ _interopRequireDefault(require("./version"));
58
- var _release = /*#__PURE__*/ _interopRequireDefault(require("./release"));
59
- var _entries = /*#__PURE__*/ _interopRequireDefault(require("./entries"));
60
- var _project = /*#__PURE__*/ _interopRequireDefault(require("./project"));
61
- var _projects = /*#__PURE__*/ _interopRequireDefault(require("./projects"));
62
- var _dependency = /*#__PURE__*/ _interopRequireDefault(require("./dependency"));
63
- var _dependencies = /*#__PURE__*/ _interopRequireDefault(require("./dependencies"));
64
- var _shortenedVersion = /*#__PURE__*/ _interopRequireDefault(require("./shortenedVersion"));
65
- var _fileNames = /*#__PURE__*/ _interopRequireDefault(require("./fileNames"));
66
- var _content = /*#__PURE__*/ _interopRequireDefault(require("./utilities/content"));
67
- var _filePath = /*#__PURE__*/ _interopRequireDefault(require("./utilities/filePath"));
68
- var _metaJSON = /*#__PURE__*/ _interopRequireDefault(require("./utilities/metaJSON"));
69
- function _interopRequireDefault(obj) {
70
- return obj && obj.__esModule ? obj : {
71
- default: obj
72
- };
73
- }
74
-
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9icm93c2VyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIEZpbGUgfSBmcm9tIFwiLi9maWxlXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEZpbGVzIH0gZnJvbSBcIi4vZmlsZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVmVyc2lvbiB9IGZyb20gXCIuL3ZlcnNpb25cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVsZWFzZSB9IGZyb20gXCIuL3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRW50cmllcyB9IGZyb20gXCIuL2VudHJpZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdHMgfSBmcm9tIFwiLi9wcm9qZWN0c1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBEZXBlbmRlbmN5IH0gZnJvbSBcIi4vZGVwZW5kZW5jeVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBEZXBlbmRlbmNpZXMgfSBmcm9tIFwiLi9kZXBlbmRlbmNpZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2hvcnRlbmVkVmVyc2lvbiB9IGZyb20gXCIuL3Nob3J0ZW5lZFZlcnNpb25cIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaWxlTmFtZXMgfSBmcm9tIFwiLi9maWxlTmFtZXNcIjtcblxuXG5leHBvcnQgeyBkZWZhdWx0IGFzIGNvbnRlbnRVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvY29udGVudFwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaWxlUGF0aFV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9maWxlUGF0aFwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBtZXRhSlNPTlV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9tZXRhSlNPTlwiO1xuIl0sIm5hbWVzIjpbIkZpbGUiLCJGaWxlcyIsIlZlcnNpb24iLCJSZWxlYXNlIiwiRW50cmllcyIsIlByb2plY3QiLCJQcm9qZWN0cyIsIkRlcGVuZGVuY3kiLCJEZXBlbmRlbmNpZXMiLCJTaG9ydGVuZWRWZXJzaW9uIiwiZmlsZU5hbWVzIiwiY29udGVudFV0aWxpdGllcyIsImZpbGVQYXRoVXRpbGl0aWVzIiwibWV0YUpTT05VdGlsaXRpZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUVvQkEsSUFBSTtlQUFKQSxhQUFJOztJQUNKQyxLQUFLO2VBQUxBLGNBQUs7O0lBQ0xDLE9BQU87ZUFBUEEsZ0JBQU87O0lBQ1BDLE9BQU87ZUFBUEEsZ0JBQU87O0lBQ1BDLE9BQU87ZUFBUEEsZ0JBQU87O0lBQ1BDLE9BQU87ZUFBUEEsZ0JBQU87O0lBQ1BDLFFBQVE7ZUFBUkEsaUJBQVE7O0lBQ1JDLFVBQVU7ZUFBVkEsbUJBQVU7O0lBQ1ZDLFlBQVk7ZUFBWkEscUJBQVk7O0lBQ1pDLGdCQUFnQjtlQUFoQkEseUJBQWdCOztJQUVoQkMsU0FBUztlQUFUQSxrQkFBUzs7SUFHVEMsZ0JBQWdCO2VBQWhCQSxnQkFBZ0I7O0lBQ2hCQyxpQkFBaUI7ZUFBakJBLGlCQUFpQjs7SUFDakJDLGlCQUFpQjtlQUFqQkEsaUJBQWlCOzs7eURBaEJMOzBEQUNDOzREQUNFOzREQUNBOzREQUNBOzREQUNBOzZEQUNDOytEQUNFO2lFQUNFO3FFQUNJOzhEQUVQOzREQUdPOzZEQUNDOzZEQUNBIn0=
package/lib/constants.js DELETED
@@ -1,34 +0,0 @@
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
- END: function() {
13
- return END;
14
- },
15
- DATA: function() {
16
- return DATA;
17
- },
18
- EMPTY_STRING: function() {
19
- return EMPTY_STRING;
20
- },
21
- DOUBLE_SPACE: function() {
22
- return DOUBLE_SPACE;
23
- },
24
- ENTRIES_MAXIMUM_LENGTH: function() {
25
- return ENTRIES_MAXIMUM_LENGTH;
26
- }
27
- });
28
- var END = "end";
29
- var DATA = "data";
30
- var EMPTY_STRING = "";
31
- var DOUBLE_SPACE = " ";
32
- var ENTRIES_MAXIMUM_LENGTH = 1024;
33
-
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zdGFudHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBjb25zdCBFTkQgPSBcImVuZFwiO1xuZXhwb3J0IGNvbnN0IERBVEEgPSBcImRhdGFcIjtcbmV4cG9ydCBjb25zdCBFTVBUWV9TVFJJTkcgPSBcIlwiO1xuZXhwb3J0IGNvbnN0IERPVUJMRV9TUEFDRSA9IFwiICBcIjtcbmV4cG9ydCBjb25zdCBFTlRSSUVTX01BWElNVU1fTEVOR1RIID0gMTAyNDtcbiJdLCJuYW1lcyI6WyJFTkQiLCJEQVRBIiwiRU1QVFlfU1RSSU5HIiwiRE9VQkxFX1NQQUNFIiwiRU5UUklFU19NQVhJTVVNX0xFTkdUSCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRWFBLEdBQUc7ZUFBSEE7O0lBQ0FDLElBQUk7ZUFBSkE7O0lBQ0FDLFlBQVk7ZUFBWkE7O0lBQ0FDLFlBQVk7ZUFBWkE7O0lBQ0FDLHNCQUFzQjtlQUF0QkE7OztBQUpOLElBQU1KLE1BQU07QUFDWixJQUFNQyxPQUFPO0FBQ2IsSUFBTUMsZUFBZTtBQUNyQixJQUFNQyxlQUFlO0FBQ3JCLElBQU1DLHlCQUF5QiJ9
@@ -1,113 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return Dependencies;
9
- }
10
- });
11
- var _necessary = require("necessary");
12
- var _dependency = /*#__PURE__*/ _interopRequireDefault(require("./dependency"));
13
- function _classCallCheck(instance, Constructor) {
14
- if (!(instance instanceof Constructor)) {
15
- throw new TypeError("Cannot call a class as a function");
16
- }
17
- }
18
- function _defineProperties(target, props) {
19
- for(var i = 0; i < props.length; i++){
20
- var descriptor = props[i];
21
- descriptor.enumerable = descriptor.enumerable || false;
22
- descriptor.configurable = true;
23
- if ("value" in descriptor) descriptor.writable = true;
24
- Object.defineProperty(target, descriptor.key, descriptor);
25
- }
26
- }
27
- function _createClass(Constructor, protoProps, staticProps) {
28
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29
- if (staticProps) _defineProperties(Constructor, staticProps);
30
- return Constructor;
31
- }
32
- function _interopRequireDefault(obj) {
33
- return obj && obj.__esModule ? obj : {
34
- default: obj
35
- };
36
- }
37
- var forEach = _necessary.asynchronousUtilities.forEach;
38
- var Dependencies = /*#__PURE__*/ function() {
39
- function Dependencies(array) {
40
- _classCallCheck(this, Dependencies);
41
- this.array = array;
42
- }
43
- _createClass(Dependencies, [
44
- {
45
- key: "addDependency",
46
- value: function addDependency(dependency) {
47
- this.array.push(dependency);
48
- }
49
- },
50
- {
51
- key: "mapDependency",
52
- value: function mapDependency(callback) {
53
- return this.array.map(callback);
54
- }
55
- },
56
- {
57
- key: "everyDependency",
58
- value: function everyDependency(callback) {
59
- return this.array.every(callback);
60
- }
61
- },
62
- {
63
- key: "reduceDependency",
64
- value: function reduceDependency(callback, initialValue) {
65
- return this.array.reduce(callback, initialValue);
66
- }
67
- },
68
- {
69
- key: "forEachDependency",
70
- value: function forEachDependency(callback) {
71
- this.array.forEach(callback);
72
- }
73
- },
74
- {
75
- key: "asynchronousForEachDependency",
76
- value: function asynchronousForEachDependency(operation, done) {
77
- forEach(this.array, operation, done);
78
- }
79
- },
80
- {
81
- key: "toJSON",
82
- value: function toJSON() {
83
- var dependenciesJSON = this.array.map(function(dependency) {
84
- var dependencyJSON = dependency.toJSON();
85
- return dependencyJSON;
86
- }), json = dependenciesJSON; ///
87
- return json;
88
- }
89
- }
90
- ], [
91
- {
92
- key: "fromJSON",
93
- value: function fromJSON(json) {
94
- var array = [], dependencies = new Dependencies(array), dependenciesJSON = json; ///
95
- dependenciesJSON.forEach(function(dependencyJSON) {
96
- var _$json = dependencyJSON, dependency = _dependency.default.fromJSON(_$json);
97
- dependencies.addDependency(dependency);
98
- });
99
- return dependencies;
100
- }
101
- },
102
- {
103
- key: "fromNothing",
104
- value: function fromNothing() {
105
- var array = [], dependencies = new Dependencies(array);
106
- return dependencies;
107
- }
108
- }
109
- ]);
110
- return Dependencies;
111
- }();
112
-
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXBlbmRlbmNpZXMuanMiLCI8PGpzeC1jb25maWctcHJhZ21hLmpzPj4iXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFzeW5jaHJvbm91c1V0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IERlcGVuZGVuY3kgZnJvbSBcIi4vZGVwZW5kZW5jeVwiO1xuXG5jb25zdCB7IGZvckVhY2ggfSA9IGFzeW5jaHJvbm91c1V0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGVwZW5kZW5jaWVzIHtcbiAgY29uc3RydWN0b3IoYXJyYXkpIHtcbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBhZGREZXBlbmRlbmN5KGRlcGVuZGVuY3kpIHtcbiAgICB0aGlzLmFycmF5LnB1c2goZGVwZW5kZW5jeSk7XG4gIH1cblxuICBtYXBEZXBlbmRlbmN5KGNhbGxiYWNrKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJyYXkubWFwKGNhbGxiYWNrKTtcbiAgfVxuXG4gIGV2ZXJ5RGVwZW5kZW5jeShjYWxsYmFjaykge1xuICAgIHJldHVybiB0aGlzLmFycmF5LmV2ZXJ5KGNhbGxiYWNrKTtcbiAgfVxuXG4gIHJlZHVjZURlcGVuZGVuY3koY2FsbGJhY2ssIGluaXRpYWxWYWx1ZSkge1xuICAgIHJldHVybiB0aGlzLmFycmF5LnJlZHVjZShjYWxsYmFjaywgaW5pdGlhbFZhbHVlKTtcbiAgfVxuXG4gIGZvckVhY2hEZXBlbmRlbmN5KGNhbGxiYWNrKSB7XG4gICAgdGhpcy5hcnJheS5mb3JFYWNoKGNhbGxiYWNrKTtcbiAgfVxuXG4gIGFzeW5jaHJvbm91c0ZvckVhY2hEZXBlbmRlbmN5KG9wZXJhdGlvbiwgZG9uZSkgeyBmb3JFYWNoKHRoaXMuYXJyYXksIG9wZXJhdGlvbiwgZG9uZSk7IH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgZGVwZW5kZW5jaWVzSlNPTiA9IHRoaXMuYXJyYXkubWFwKChkZXBlbmRlbmN5KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBkZXBlbmRlbmN5SlNPTiA9IGRlcGVuZGVuY3kudG9KU09OKCk7XG4gIFxuICAgICAgICAgICAgcmV0dXJuIGRlcGVuZGVuY3lKU09OO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIGpzb24gPSBkZXBlbmRlbmNpZXNKU09OOyAvLy9cblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24pIHtcbiAgICBjb25zdCBhcnJheSA9IFtdLFxuICAgICAgICAgIGRlcGVuZGVuY2llcyA9IG5ldyBEZXBlbmRlbmNpZXMoYXJyYXkpLFxuICAgICAgICAgIGRlcGVuZGVuY2llc0pTT04gPSBqc29uOyAvLy9cblxuICAgIGRlcGVuZGVuY2llc0pTT04uZm9yRWFjaCgoZGVwZW5kZW5jeUpTT04pID0+IHsgIC8vL1xuICAgICAgY29uc3QganNvbiA9IGRlcGVuZGVuY3lKU09OLCAgLy8vXG4gICAgICAgICAgICBkZXBlbmRlbmN5ID0gRGVwZW5kZW5jeS5mcm9tSlNPTihqc29uKTtcblxuICAgICAgZGVwZW5kZW5jaWVzLmFkZERlcGVuZGVuY3koZGVwZW5kZW5jeSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gZGVwZW5kZW5jaWVzO1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkge1xuICAgIGNvbnN0IGFycmF5ID0gW10sXG4gICAgICAgICAgZGVwZW5kZW5jaWVzID0gbmV3IERlcGVuZGVuY2llcyhhcnJheSk7XG5cbiAgICByZXR1cm4gZGVwZW5kZW5jaWVzO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIkRlcGVuZGVuY2llcyIsImZvckVhY2giLCJhc3luY2hyb25vdXNVdGlsaXRpZXMiLCJhcnJheSIsImFkZERlcGVuZGVuY3kiLCJkZXBlbmRlbmN5IiwicHVzaCIsIm1hcERlcGVuZGVuY3kiLCJjYWxsYmFjayIsIm1hcCIsImV2ZXJ5RGVwZW5kZW5jeSIsImV2ZXJ5IiwicmVkdWNlRGVwZW5kZW5jeSIsImluaXRpYWxWYWx1ZSIsInJlZHVjZSIsImZvckVhY2hEZXBlbmRlbmN5IiwiYXN5bmNocm9ub3VzRm9yRWFjaERlcGVuZGVuY3kiLCJvcGVyYXRpb24iLCJkb25lIiwidG9KU09OIiwiZGVwZW5kZW5jaWVzSlNPTiIsImRlcGVuZGVuY3lKU09OIiwianNvbiIsImZyb21KU09OIiwiZGVwZW5kZW5jaWVzIiwiRGVwZW5kZW5jeSIsImZyb21Ob3RoaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQVFxQkE7Ozt5QkFOaUI7K0RBRWY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdkIsSUFBTSxBQUFFQyxVQUFZQyxnQ0FBcUIsQ0FBakNEO0FBRU8sSUFBQSxBQUFNRCw2QkFBTjthQUFNQSxhQUNQRyxLQUFLOzhCQURFSDtRQUVqQixJQUFJLENBQUNHLEtBQUssR0FBR0E7O2lCQUZJSDs7WUFLbkJJLEtBQUFBO21CQUFBQSxTQUFBQSxjQUFjQyxVQUFVLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQ0YsS0FBSyxDQUFDRyxJQUFJLENBQUNEO1lBQ2xCOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWNDLFFBQVEsRUFBRTtnQkFDdEIsT0FBTyxJQUFJLENBQUNMLEtBQUssQ0FBQ00sR0FBRyxDQUFDRDtZQUN4Qjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxnQkFBZ0JGLFFBQVEsRUFBRTtnQkFDeEIsT0FBTyxJQUFJLENBQUNMLEtBQUssQ0FBQ1EsS0FBSyxDQUFDSDtZQUMxQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJKLFFBQVEsRUFBRUssWUFBWSxFQUFFO2dCQUN2QyxPQUFPLElBQUksQ0FBQ1YsS0FBSyxDQUFDVyxNQUFNLENBQUNOLFVBQVVLO1lBQ3JDOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQlAsUUFBUSxFQUFFO2dCQUMxQixJQUFJLENBQUNMLEtBQUssQ0FBQ0YsT0FBTyxDQUFDTztZQUNyQjs7O1lBRUFRLEtBQUFBO21CQUFBQSxTQUFBQSw4QkFBOEJDLFNBQVMsRUFBRUMsSUFBSSxFQUFFO2dCQUFFakIsUUFBUSxJQUFJLENBQUNFLEtBQUssRUFBRWMsV0FBV0M7WUFBTzs7O1lBRXZGQyxLQUFBQTttQkFBQUEsU0FBQUEsU0FBUztnQkFDUCxJQUFNQyxtQkFBbUIsSUFBSSxDQUFDakIsS0FBSyxDQUFDTSxHQUFHLENBQUMsU0FBQ0osWUFBZTtvQkFDaEQsSUFBTWdCLGlCQUFpQmhCLFdBQVdjLE1BQU07b0JBRXhDLE9BQU9FO2dCQUNULElBQ0FDLE9BQU9GLGtCQUFrQixHQUFHO2dCQUVsQyxPQUFPRTtZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNELElBQUksRUFBRTtnQkFDcEIsSUFBTW5CLFFBQVEsRUFBRSxFQUNWcUIsZUFBZSxJQXhDSnhCLGFBd0NxQkcsUUFDaENpQixtQkFBbUJFLE1BQU0sR0FBRztnQkFFbENGLGlCQUFpQm5CLE9BQU8sQ0FBQyxTQUFDb0IsZ0JBQW1CO29CQUMzQyxJQUFNQyxTQUFPRCxnQkFDUGhCLGFBQWFvQixtQkFBVSxDQUFDRixRQUFRLENBQUNEO29CQUV2Q0UsYUFBYXBCLGFBQWEsQ0FBQ0M7Z0JBQzdCO2dCQUVBLE9BQU9tQjtZQUNUOzs7WUFFT0UsS0FBQUE7bUJBQVAsU0FBT0EsY0FBYztnQkFDbkIsSUFBTXZCLFFBQVEsRUFBRSxFQUNWcUIsZUFBZSxJQXZESnhCLGFBdURxQkc7Z0JBRXRDLE9BQU9xQjtZQUNUOzs7V0ExRG1CeEIifQ==
package/lib/dependency.js DELETED
@@ -1,88 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return Dependency;
9
- }
10
- });
11
- var _shortenedVersion = /*#__PURE__*/ _interopRequireDefault(require("./shortenedVersion"));
12
- function _classCallCheck(instance, Constructor) {
13
- if (!(instance instanceof Constructor)) {
14
- throw new TypeError("Cannot call a class as a function");
15
- }
16
- }
17
- function _defineProperties(target, props) {
18
- for(var i = 0; i < props.length; i++){
19
- var descriptor = props[i];
20
- descriptor.enumerable = descriptor.enumerable || false;
21
- descriptor.configurable = true;
22
- if ("value" in descriptor) descriptor.writable = true;
23
- Object.defineProperty(target, descriptor.key, descriptor);
24
- }
25
- }
26
- function _createClass(Constructor, protoProps, staticProps) {
27
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
28
- if (staticProps) _defineProperties(Constructor, staticProps);
29
- return Constructor;
30
- }
31
- function _interopRequireDefault(obj) {
32
- return obj && obj.__esModule ? obj : {
33
- default: obj
34
- };
35
- }
36
- var Dependency = /*#__PURE__*/ function() {
37
- function Dependency(name, shortenedVersion) {
38
- _classCallCheck(this, Dependency);
39
- this.name = name;
40
- this.shortenedVersion = shortenedVersion;
41
- }
42
- _createClass(Dependency, [
43
- {
44
- key: "getName",
45
- value: function getName() {
46
- return this.name;
47
- }
48
- },
49
- {
50
- key: "getShortedVersion",
51
- value: function getShortedVersion() {
52
- return this.shortenedVersion;
53
- }
54
- },
55
- {
56
- key: "toJSON",
57
- value: function toJSON() {
58
- var shortenedVersionString = this.shortenedVersion.toString(), name = this.name, shortenedVersion = shortenedVersionString, json = {
59
- name: name,
60
- shortenedVersion: shortenedVersion
61
- };
62
- return json;
63
- }
64
- }
65
- ], [
66
- {
67
- key: "fromJSON",
68
- value: function fromJSON(json) {
69
- var name = json.name;
70
- var shortenedVersion = json.shortenedVersion;
71
- var shortenedVersionString = shortenedVersion, string = shortenedVersionString; ///
72
- shortenedVersion = _shortenedVersion.default.fromString(string);
73
- var dependency = new Dependency(name, shortenedVersion);
74
- return dependency;
75
- }
76
- },
77
- {
78
- key: "fromNameAndShortenedVersion",
79
- value: function fromNameAndShortenedVersion(name, shortenedVersion) {
80
- var dependency = new Dependency(name, shortenedVersion);
81
- return dependency;
82
- }
83
- }
84
- ]);
85
- return Dependency;
86
- }();
87
-
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXBlbmRlbmN5LmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgU2hvcnRlbmVkVmVyc2lvbiBmcm9tIFwiLi9zaG9ydGVuZWRWZXJzaW9uXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERlcGVuZGVuY3kge1xuICBjb25zdHJ1Y3RvcihuYW1lLCBzaG9ydGVuZWRWZXJzaW9uKSB7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLnNob3J0ZW5lZFZlcnNpb24gPSBzaG9ydGVuZWRWZXJzaW9uO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0U2hvcnRlZFZlcnNpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuc2hvcnRlbmVkVmVyc2lvbjtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBzaG9ydGVuZWRWZXJzaW9uU3RyaW5nID0gdGhpcy5zaG9ydGVuZWRWZXJzaW9uLnRvU3RyaW5nKCksXG4gICAgICAgICAgbmFtZSA9IHRoaXMubmFtZSxcbiAgICAgICAgICBzaG9ydGVuZWRWZXJzaW9uID0gc2hvcnRlbmVkVmVyc2lvblN0cmluZywgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBuYW1lLFxuICAgICAgICAgICAgc2hvcnRlbmVkVmVyc2lvblxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uKSB7XG4gICAgY29uc3QgeyBuYW1lIH0gPSBqc29uO1xuXG4gICAgbGV0IHsgc2hvcnRlbmVkVmVyc2lvbiB9ID0ganNvbjtcblxuICAgIGNvbnN0IHNob3J0ZW5lZFZlcnNpb25TdHJpbmcgPSBzaG9ydGVuZWRWZXJzaW9uLCAvLy9cbiAgICAgICAgICBzdHJpbmcgPSBzaG9ydGVuZWRWZXJzaW9uU3RyaW5nOyAgLy8vXG5cbiAgICBzaG9ydGVuZWRWZXJzaW9uID0gU2hvcnRlbmVkVmVyc2lvbi5mcm9tU3RyaW5nKHN0cmluZyk7XG5cbiAgICBjb25zdCBkZXBlbmRlbmN5ID0gbmV3IERlcGVuZGVuY3kobmFtZSwgc2hvcnRlbmVkVmVyc2lvbik7XG5cbiAgICByZXR1cm4gZGVwZW5kZW5jeTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTmFtZUFuZFNob3J0ZW5lZFZlcnNpb24obmFtZSwgc2hvcnRlbmVkVmVyc2lvbikge1xuICAgIGNvbnN0IGRlcGVuZGVuY3kgPSBuZXcgRGVwZW5kZW5jeShuYW1lLCBzaG9ydGVuZWRWZXJzaW9uKTtcblxuICAgIHJldHVybiBkZXBlbmRlbmN5O1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIkRlcGVuZGVuY3kiLCJuYW1lIiwic2hvcnRlbmVkVmVyc2lvbiIsImdldE5hbWUiLCJnZXRTaG9ydGVkVmVyc2lvbiIsInRvSlNPTiIsInNob3J0ZW5lZFZlcnNpb25TdHJpbmciLCJ0b1N0cmluZyIsImpzb24iLCJmcm9tSlNPTiIsInN0cmluZyIsIlNob3J0ZW5lZFZlcnNpb24iLCJmcm9tU3RyaW5nIiwiZGVwZW5kZW5jeSIsImZyb21OYW1lQW5kU2hvcnRlbmVkVmVyc2lvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFJcUJBOzs7cUVBRlE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFZCxJQUFBLEFBQU1BLDJCQUFOO2FBQU1BLFdBQ1BDLElBQUksRUFBRUMsZ0JBQWdCOzhCQURmRjtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLGdCQUFnQixHQUFHQTs7aUJBSFBGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVU7Z0JBQ1IsT0FBTyxJQUFJLENBQUNGLElBQUk7WUFDbEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsb0JBQW9CO2dCQUNsQixPQUFPLElBQUksQ0FBQ0YsZ0JBQWdCO1lBQzlCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLFNBQVM7Z0JBQ1AsSUFBTUMseUJBQXlCLElBQUksQ0FBQ0osZ0JBQWdCLENBQUNLLFFBQVEsSUFDdkROLE9BQU8sSUFBSSxDQUFDQSxJQUFJLEVBQ2hCQyxtQkFBbUJJLHdCQUNuQkUsT0FBTztvQkFDTFAsTUFBQUE7b0JBQ0FDLGtCQUFBQTtnQkFDRjtnQkFFTixPQUFPTTtZQUNUOzs7O1lBRU9DLEtBQUFBO21CQUFQLFNBQU9BLFNBQVNELElBQUksRUFBRTtnQkFDcEIsSUFBTSxBQUFFUCxPQUFTTyxLQUFUUDtnQkFFUixJQUFJLEFBQUVDLG1CQUFxQk0sS0FBckJOO2dCQUVOLElBQU1JLHlCQUF5Qkosa0JBQ3pCUSxTQUFTSix3QkFBeUIsR0FBRztnQkFFM0NKLG1CQUFtQlMseUJBQWdCLENBQUNDLFVBQVUsQ0FBQ0Y7Z0JBRS9DLElBQU1HLGFBQWEsSUFwQ0ZiLFdBb0NpQkMsTUFBTUM7Z0JBRXhDLE9BQU9XO1lBQ1Q7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSw0QkFBNEJiLElBQUksRUFBRUMsZ0JBQWdCLEVBQUU7Z0JBQ3pELElBQU1XLGFBQWEsSUExQ0ZiLFdBMENpQkMsTUFBTUM7Z0JBRXhDLE9BQU9XO1lBQ1Q7OztXQTdDbUJiIn0=
package/lib/directory.js DELETED
@@ -1,107 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return Directory;
9
- }
10
- });
11
- var _types = require("./types");
12
- function _classCallCheck(instance, Constructor) {
13
- if (!(instance instanceof Constructor)) {
14
- throw new TypeError("Cannot call a class as a function");
15
- }
16
- }
17
- function _defineProperties(target, props) {
18
- for(var i = 0; i < props.length; i++){
19
- var descriptor = props[i];
20
- descriptor.enumerable = descriptor.enumerable || false;
21
- descriptor.configurable = true;
22
- if ("value" in descriptor) descriptor.writable = true;
23
- Object.defineProperty(target, descriptor.key, descriptor);
24
- }
25
- }
26
- function _createClass(Constructor, protoProps, staticProps) {
27
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
28
- if (staticProps) _defineProperties(Constructor, staticProps);
29
- return Constructor;
30
- }
31
- function _defineProperty(obj, key, value) {
32
- if (key in obj) {
33
- Object.defineProperty(obj, key, {
34
- value: value,
35
- enumerable: true,
36
- configurable: true,
37
- writable: true
38
- });
39
- } else {
40
- obj[key] = value;
41
- }
42
- return obj;
43
- }
44
- var Directory = /*#__PURE__*/ function() {
45
- function Directory(path) {
46
- _classCallCheck(this, Directory);
47
- this.path = path;
48
- }
49
- _createClass(Directory, [
50
- {
51
- key: "getPath",
52
- value: function getPath() {
53
- return this.path;
54
- }
55
- },
56
- {
57
- key: "isFile",
58
- value: function isFile() {
59
- var file = false;
60
- return file;
61
- }
62
- },
63
- {
64
- key: "isDirectory",
65
- value: function isDirectory() {
66
- var directory = true;
67
- return directory;
68
- }
69
- },
70
- {
71
- key: "toJSON",
72
- value: function toJSON() {
73
- var type = Directory.type, path = this.path, json = {
74
- type: type,
75
- path: path
76
- };
77
- return json;
78
- }
79
- }
80
- ], [
81
- {
82
- key: "fromPath",
83
- value: function fromPath(path) {
84
- var directory = new Directory(path);
85
- return directory;
86
- }
87
- },
88
- {
89
- key: "fromJSON",
90
- value: function fromJSON(json) {
91
- var directory = null;
92
- if (json !== null) {
93
- var type = json.type;
94
- if (type === _types.DIRECTORY_TYPE) {
95
- var path = json.path;
96
- directory = new Directory(path);
97
- }
98
- }
99
- return directory;
100
- }
101
- }
102
- ]);
103
- return Directory;
104
- }();
105
- _defineProperty(Directory, "type", _types.DIRECTORY_TYPE);
106
-
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kaXJlY3RvcnkuanMiLCI8PGpzeC1jb25maWctcHJhZ21hLmpzPj4iXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IERJUkVDVE9SWV9UWVBFIH0gZnJvbSBcIi4vdHlwZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRGlyZWN0b3J5IHtcbiAgY29uc3RydWN0b3IocGF0aCkge1xuICAgIHRoaXMucGF0aCA9IHBhdGg7XG4gIH1cblxuICBnZXRQYXRoKCkge1xuICAgIHJldHVybiB0aGlzLnBhdGg7XG4gIH1cblxuICBpc0ZpbGUoKSB7XG4gICAgY29uc3QgZmlsZSA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cblxuICBpc0RpcmVjdG9yeSgpIHtcbiAgICBjb25zdCBkaXJlY3RvcnkgPSB0cnVlO1xuXG4gICAgcmV0dXJuIGRpcmVjdG9yeTtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCB7IHR5cGUgfSA9IERpcmVjdG9yeSxcbiAgICAgICAgICBwYXRoID0gdGhpcy5wYXRoLFxuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgcGF0aFxuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyB0eXBlID0gRElSRUNUT1JZX1RZUEU7XG5cbiAgc3RhdGljIGZyb21QYXRoKHBhdGgpIHtcbiAgICBjb25zdCBkaXJlY3RvcnkgPSBuZXcgRGlyZWN0b3J5KHBhdGgpO1xuXG4gICAgcmV0dXJuIGRpcmVjdG9yeTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uKSB7XG4gICAgbGV0IGRpcmVjdG9yeSA9IG51bGw7XG5cbiAgICBpZiAoanNvbiAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgeyB0eXBlIH0gPSBqc29uO1xuXG4gICAgICBpZiAodHlwZSA9PT0gRElSRUNUT1JZX1RZUEUpIHtcbiAgICAgICAgY29uc3QgeyBwYXRoIH0gPSBqc29uO1xuXG4gICAgICAgIGRpcmVjdG9yeSA9IG5ldyBEaXJlY3RvcnkocGF0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGRpcmVjdG9yeTtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJEaXJlY3RvcnkiLCJwYXRoIiwiZ2V0UGF0aCIsImlzRmlsZSIsImZpbGUiLCJpc0RpcmVjdG9yeSIsImRpcmVjdG9yeSIsInRvSlNPTiIsInR5cGUiLCJqc29uIiwiZnJvbVBhdGgiLCJmcm9tSlNPTiIsIkRJUkVDVE9SWV9UWVBFIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUlxQkE7OztxQkFGVTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWhCLElBQUEsQUFBTUEsMEJBQU47YUFBTUEsVUFDUEMsSUFBSTs4QkFER0Q7UUFFakIsSUFBSSxDQUFDQyxJQUFJLEdBQUdBOztpQkFGS0Q7O1lBS25CRSxLQUFBQTttQkFBQUEsU0FBQUEsVUFBVTtnQkFDUixPQUFPLElBQUksQ0FBQ0QsSUFBSTtZQUNsQjs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTO2dCQUNQLElBQU1DLE9BQU8sS0FBSztnQkFFbEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxjQUFjO2dCQUNaLElBQU1DLFlBQVksSUFBSTtnQkFFdEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxTQUFTO2dCQUNQLElBQU0sQUFBRUMsT0F0QlNSLFVBc0JUUSxNQUNGUCxPQUFPLElBQUksQ0FBQ0EsSUFBSSxFQUNoQlEsT0FBTztvQkFDTEQsTUFBQUE7b0JBQ0FQLE1BQUFBO2dCQUNGO2dCQUVOLE9BQU9RO1lBQ1Q7Ozs7WUFJT0MsS0FBQUE7bUJBQVAsU0FBT0EsU0FBU1QsSUFBSSxFQUFFO2dCQUNwQixJQUFNSyxZQUFZLElBbkNETixVQW1DZUM7Z0JBRWhDLE9BQU9LO1lBQ1Q7OztZQUVPSyxLQUFBQTttQkFBUCxTQUFPQSxTQUFTRixJQUFJLEVBQUU7Z0JBQ3BCLElBQUlILFlBQVksSUFBSTtnQkFFcEIsSUFBSUcsU0FBUyxJQUFJLEVBQUU7b0JBQ2pCLElBQU0sQUFBRUQsT0FBU0MsS0FBVEQ7b0JBRVIsSUFBSUEsU0FBU0kscUJBQWMsRUFBRTt3QkFDM0IsSUFBTSxBQUFFWCxPQUFTUSxLQUFUUjt3QkFFUkssWUFBWSxJQWpEQ04sVUFpRGFDO29CQUM1QixDQUFDO2dCQUNILENBQUM7Z0JBRUQsT0FBT0s7WUFDVDs7O1dBdERtQk47O0FBZ0NuQixnQkFoQ21CQSxXQWdDWlEsUUFBT0kscUJBQWMifQ==