occam-file-system 5.0.13 → 5.0.15

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 (68) hide show
  1. package/README.md +4 -4
  2. package/lib/browser.js +63 -0
  3. package/lib/constants.js +13 -1
  4. package/lib/dependencies.js +81 -0
  5. package/lib/dependency.js +89 -0
  6. package/lib/directory.js +100 -0
  7. package/lib/entries.js +228 -0
  8. package/lib/file.js +141 -0
  9. package/lib/fileNames.js +38 -0
  10. package/lib/files.js +121 -0
  11. package/lib/loadProjects.js +1 -1
  12. package/lib/loadReleases.js +18 -0
  13. package/lib/main.js +103 -0
  14. package/lib/messages.js +13 -0
  15. package/lib/mixins/bnf.js +47 -0
  16. package/lib/mixins/entries.js +31 -0
  17. package/lib/mixins/files.js +41 -0
  18. package/lib/mixins/pattern.js +47 -0
  19. package/lib/project.js +123 -0
  20. package/lib/projects.js +112 -0
  21. package/lib/release.js +127 -0
  22. package/lib/releases.js +112 -0
  23. package/lib/shortenedVersion.js +125 -0
  24. package/lib/types.js +22 -0
  25. package/lib/utilities/content.js +34 -0
  26. package/lib/utilities/filePath.js +63 -0
  27. package/lib/utilities/fileSystem.js +130 -12
  28. package/lib/utilities/files.js +95 -0
  29. package/lib/utilities/metaJSON.js +80 -0
  30. package/lib/utilities/name.js +25 -4
  31. package/lib/utilities/query.js +48 -0
  32. package/lib/version.js +163 -0
  33. package/package.json +5 -3
  34. package/src/browser.js +14 -0
  35. package/src/constants.js +3 -0
  36. package/src/dependencies.js +46 -0
  37. package/src/dependency.js +52 -0
  38. package/src/directory.js +54 -0
  39. package/src/entries.js +192 -0
  40. package/src/file.js +95 -0
  41. package/src/fileNames.js +8 -0
  42. package/src/files.js +78 -0
  43. package/src/loadProjects.js +1 -1
  44. package/src/loadReleases.js +13 -0
  45. package/src/main.js +25 -0
  46. package/src/messages.js +3 -0
  47. package/src/mixins/bnf.js +59 -0
  48. package/src/mixins/entries.js +18 -0
  49. package/src/mixins/files.js +52 -0
  50. package/src/mixins/pattern.js +59 -0
  51. package/src/project.js +92 -0
  52. package/src/projects.js +66 -0
  53. package/src/release.js +97 -0
  54. package/src/releases.js +66 -0
  55. package/src/shortenedVersion.js +109 -0
  56. package/src/types.js +4 -0
  57. package/src/utilities/content.js +12 -0
  58. package/src/utilities/filePath.js +36 -0
  59. package/src/utilities/fileSystem.js +186 -15
  60. package/src/utilities/files.js +103 -0
  61. package/src/utilities/metaJSON.js +82 -0
  62. package/src/utilities/name.js +17 -0
  63. package/src/utilities/query.js +36 -0
  64. package/src/version.js +151 -0
  65. package/lib/index.js +0 -55
  66. package/lib/utilities/pathMaps.js +0 -31
  67. package/src/index.js +0 -11
  68. package/src/utilities/pathMaps.js +0 -21
@@ -0,0 +1,34 @@
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
+ trimDoubleQuotes: function() {
13
+ return trimDoubleQuotes;
14
+ },
15
+ convertContentTabsToWhitespace: function() {
16
+ return convertContentTabsToWhitespace;
17
+ },
18
+ default: function() {
19
+ return _default;
20
+ }
21
+ });
22
+ var _constants = require("../constants");
23
+ function trimDoubleQuotes(content) {
24
+ return content.replace(/(^"|"$)/g, _constants.EMPTY_STRING);
25
+ } ///
26
+ function convertContentTabsToWhitespace(content) {
27
+ return content.replace(/\t/g, _constants.DOUBLE_SPACE);
28
+ } ///
29
+ var _default = {
30
+ trimDoubleQuotes: trimDoubleQuotes,
31
+ convertContentTabsToWhitespace: convertContentTabsToWhitespace
32
+ };
33
+
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvY29udGVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HLCBET1VCTEVfU1BBQ0UgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmltRG91YmxlUXVvdGVzKGNvbnRlbnQpIHsgcmV0dXJuIGNvbnRlbnQucmVwbGFjZSgvKF5cInxcIiQpL2csIEVNUFRZX1NUUklORyk7IH0gLy8vXG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2UoY29udGVudCkgeyByZXR1cm4gY29udGVudC5yZXBsYWNlKC9cXHQvZywgRE9VQkxFX1NQQUNFKTsgfSAvLy9cblxuZXhwb3J0IGRlZmF1bHQge1xuICB0cmltRG91YmxlUXVvdGVzLFxuICBjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2Vcbn07XG4iXSwibmFtZXMiOlsidHJpbURvdWJsZVF1b3RlcyIsImNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZSIsImNvbnRlbnQiLCJyZXBsYWNlIiwiRU1QVFlfU1RSSU5HIiwiRE9VQkxFX1NQQUNFIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFJZ0JBLGdCQUFnQjtlQUFoQkE7O0lBRUFDLDhCQUE4QjtlQUE5QkE7O0lBRWhCLE9BR0U7ZUFIRjs7O3lCQU4yQztBQUVwQyxTQUFTRCxpQkFBaUJFLE9BQU8sRUFBRTtJQUFFLE9BQU9BLFFBQVFDLE9BQU8sQ0FBQyxZQUFZQyx1QkFBWTtBQUFHLEVBQUUsR0FBRztBQUU1RixTQUFTSCwrQkFBK0JDLE9BQU8sRUFBRTtJQUFFLE9BQU9BLFFBQVFDLE9BQU8sQ0FBQyxPQUFPRSx1QkFBWTtBQUFHLEVBQUUsR0FBRztJQUU1RyxXQUFlO0lBQ2JMLGtCQUFBQTtJQUNBQyxnQ0FBQUE7QUFDRiJ9
@@ -0,0 +1,63 @@
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
+ isFilePathReadmeFilePath: function() {
13
+ return isFilePathReadmeFilePath;
14
+ },
15
+ isFilePathFlorenceFilePath: function() {
16
+ return isFilePathFlorenceFilePath;
17
+ },
18
+ isFilePathMetaJSONFilePath: function() {
19
+ return isFilePathMetaJSONFilePath;
20
+ },
21
+ isFilePathRecognisedFilePath: function() {
22
+ return isFilePathRecognisedFilePath;
23
+ },
24
+ isFilePathCustomGrammarBNFFilePath: function() {
25
+ return isFilePathCustomGrammarBNFFilePath;
26
+ },
27
+ isFilePathCustomGrammarPatternFilePath: function() {
28
+ return isFilePathCustomGrammarPatternFilePath;
29
+ },
30
+ default: function() {
31
+ return _default;
32
+ }
33
+ });
34
+ var readmeFilePathPattern = "^(?:[^\\/]+\\/){1}README\\.md$", florenceFilePathPattern = "^(?:[^\\/]+\\/){1,}[^\\.]+\\.fls$", metaJSONFilePathPattern = "^(?:[^\\/]+\\/){1}meta\\.json$", customGrammarBNFFilePathPattern = "^(?:[^\\/]+\\/){1}(term|statement|metastatement)\\.bnf$", customGrammarPatternFilePathPattern = "^(?:[^\\/]+\\/){1}(type|symbol|operator)\\.ptn$", recognisedFilePathPattern = "".concat(readmeFilePathPattern, "|").concat(florenceFilePathPattern, "|").concat(metaJSONFilePathPattern, "|").concat(customGrammarBNFFilePathPattern, "|").concat(customGrammarPatternFilePathPattern);
35
+ var readmeFilePathRegularExpression = new RegExp(readmeFilePathPattern), florenceFilePathRegularExpression = new RegExp(florenceFilePathPattern), metaJSONFilePathRegularExpression = new RegExp(metaJSONFilePathPattern), recognisedFilePathRegularExpression = new RegExp(recognisedFilePathPattern), customGrammarBNFFilePathRegularExpression = new RegExp(customGrammarBNFFilePathPattern), customGrammarPatternFilePathRegularExpression = new RegExp(customGrammarPatternFilePathPattern);
36
+ function isFilePathReadmeFilePath(filePath) {
37
+ return readmeFilePathRegularExpression.test(filePath);
38
+ }
39
+ function isFilePathFlorenceFilePath(filePath) {
40
+ return florenceFilePathRegularExpression.test(filePath);
41
+ }
42
+ function isFilePathMetaJSONFilePath(filePath) {
43
+ return metaJSONFilePathRegularExpression.test(filePath);
44
+ }
45
+ function isFilePathRecognisedFilePath(filePath) {
46
+ return recognisedFilePathRegularExpression.test(filePath);
47
+ }
48
+ function isFilePathCustomGrammarBNFFilePath(filePath) {
49
+ return customGrammarBNFFilePathRegularExpression.test(filePath);
50
+ }
51
+ function isFilePathCustomGrammarPatternFilePath(filePath) {
52
+ return customGrammarPatternFilePathRegularExpression.test(filePath);
53
+ }
54
+ var _default = {
55
+ isFilePathReadmeFilePath: isFilePathReadmeFilePath,
56
+ isFilePathFlorenceFilePath: isFilePathFlorenceFilePath,
57
+ isFilePathMetaJSONFilePath: isFilePathMetaJSONFilePath,
58
+ isFilePathRecognisedFilePath: isFilePathRecognisedFilePath,
59
+ isFilePathCustomGrammarBNFFilePath: isFilePathCustomGrammarBNFFilePath,
60
+ isFilePathCustomGrammarPatternFilePath: isFilePathCustomGrammarPatternFilePath
61
+ };
62
+
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVBhdGguanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XHJcblxyXG5jb25zdCByZWFkbWVGaWxlUGF0aFBhdHRlcm4gPSBcIl4oPzpbXlxcXFwvXStcXFxcLyl7MX1SRUFETUVcXFxcLm1kJFwiLFxyXG4gICAgICBmbG9yZW5jZUZpbGVQYXRoUGF0dGVybiA9IFwiXig/OlteXFxcXC9dK1xcXFwvKXsxLH1bXlxcXFwuXStcXFxcLmZscyRcIixcclxuICAgICAgbWV0YUpTT05GaWxlUGF0aFBhdHRlcm4gPSBcIl4oPzpbXlxcXFwvXStcXFxcLyl7MX1tZXRhXFxcXC5qc29uJFwiLFxyXG4gICAgICBjdXN0b21HcmFtbWFyQk5GRmlsZVBhdGhQYXR0ZXJuID0gXCJeKD86W15cXFxcL10rXFxcXC8pezF9KHRlcm18c3RhdGVtZW50fG1ldGFzdGF0ZW1lbnQpXFxcXC5ibmYkXCIsXHJcbiAgICAgIGN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZVBhdGhQYXR0ZXJuID0gXCJeKD86W15cXFxcL10rXFxcXC8pezF9KHR5cGV8c3ltYm9sfG9wZXJhdG9yKVxcXFwucHRuJFwiLFxyXG4gICAgICByZWNvZ25pc2VkRmlsZVBhdGhQYXR0ZXJuID0gYCR7cmVhZG1lRmlsZVBhdGhQYXR0ZXJufXwke2Zsb3JlbmNlRmlsZVBhdGhQYXR0ZXJufXwke21ldGFKU09ORmlsZVBhdGhQYXR0ZXJufXwke2N1c3RvbUdyYW1tYXJCTkZGaWxlUGF0aFBhdHRlcm59fCR7Y3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlUGF0aFBhdHRlcm59YDtcclxuXHJcbmNvbnN0IHJlYWRtZUZpbGVQYXRoUmVndWxhckV4cHJlc3Npb24gPSBuZXcgUmVnRXhwKHJlYWRtZUZpbGVQYXRoUGF0dGVybiksXHJcbiAgICAgIGZsb3JlbmNlRmlsZVBhdGhSZWd1bGFyRXhwcmVzc2lvbiA9IG5ldyBSZWdFeHAoZmxvcmVuY2VGaWxlUGF0aFBhdHRlcm4pLFxyXG4gICAgICBtZXRhSlNPTkZpbGVQYXRoUmVndWxhckV4cHJlc3Npb24gPSBuZXcgUmVnRXhwKG1ldGFKU09ORmlsZVBhdGhQYXR0ZXJuKSxcclxuICAgICAgcmVjb2duaXNlZEZpbGVQYXRoUmVndWxhckV4cHJlc3Npb24gPSBuZXcgUmVnRXhwKHJlY29nbmlzZWRGaWxlUGF0aFBhdHRlcm4pLFxyXG4gICAgICBjdXN0b21HcmFtbWFyQk5GRmlsZVBhdGhSZWd1bGFyRXhwcmVzc2lvbiA9IG5ldyBSZWdFeHAoY3VzdG9tR3JhbW1hckJORkZpbGVQYXRoUGF0dGVybiksXHJcbiAgICAgIGN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZVBhdGhSZWd1bGFyRXhwcmVzc2lvbiA9IG5ldyBSZWdFeHAoY3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlUGF0aFBhdHRlcm4pO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRmlsZVBhdGhSZWFkbWVGaWxlUGF0aChmaWxlUGF0aCkgeyByZXR1cm4gcmVhZG1lRmlsZVBhdGhSZWd1bGFyRXhwcmVzc2lvbi50ZXN0KGZpbGVQYXRoKTsgfVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRmlsZVBhdGhGbG9yZW5jZUZpbGVQYXRoKGZpbGVQYXRoKSB7IHJldHVybiBmbG9yZW5jZUZpbGVQYXRoUmVndWxhckV4cHJlc3Npb24udGVzdChmaWxlUGF0aCk7IH1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0ZpbGVQYXRoTWV0YUpTT05GaWxlUGF0aChmaWxlUGF0aCkgeyByZXR1cm4gbWV0YUpTT05GaWxlUGF0aFJlZ3VsYXJFeHByZXNzaW9uLnRlc3QoZmlsZVBhdGgpOyB9XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aChmaWxlUGF0aCkgeyByZXR1cm4gcmVjb2duaXNlZEZpbGVQYXRoUmVndWxhckV4cHJlc3Npb24udGVzdChmaWxlUGF0aCk7IH1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc0ZpbGVQYXRoQ3VzdG9tR3JhbW1hckJORkZpbGVQYXRoKGZpbGVQYXRoKSB7IHJldHVybiBjdXN0b21HcmFtbWFyQk5GRmlsZVBhdGhSZWd1bGFyRXhwcmVzc2lvbi50ZXN0KGZpbGVQYXRoKTsgfVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRmlsZVBhdGhDdXN0b21HcmFtbWFyUGF0dGVybkZpbGVQYXRoKGZpbGVQYXRoKSB7IHJldHVybiBjdXN0b21HcmFtbWFyUGF0dGVybkZpbGVQYXRoUmVndWxhckV4cHJlc3Npb24udGVzdChmaWxlUGF0aCk7IH1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IHtcclxuICBpc0ZpbGVQYXRoUmVhZG1lRmlsZVBhdGgsXHJcbiAgaXNGaWxlUGF0aEZsb3JlbmNlRmlsZVBhdGgsXHJcbiAgaXNGaWxlUGF0aE1ldGFKU09ORmlsZVBhdGgsXHJcbiAgaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCxcclxuICBpc0ZpbGVQYXRoQ3VzdG9tR3JhbW1hckJORkZpbGVQYXRoLFxyXG4gIGlzRmlsZVBhdGhDdXN0b21HcmFtbWFyUGF0dGVybkZpbGVQYXRoXHJcbn07XHJcbiJdLCJuYW1lcyI6WyJpc0ZpbGVQYXRoUmVhZG1lRmlsZVBhdGgiLCJpc0ZpbGVQYXRoRmxvcmVuY2VGaWxlUGF0aCIsImlzRmlsZVBhdGhNZXRhSlNPTkZpbGVQYXRoIiwiaXNGaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCIsImlzRmlsZVBhdGhDdXN0b21HcmFtbWFyQk5GRmlsZVBhdGgiLCJpc0ZpbGVQYXRoQ3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlUGF0aCIsInJlYWRtZUZpbGVQYXRoUGF0dGVybiIsImZsb3JlbmNlRmlsZVBhdGhQYXR0ZXJuIiwibWV0YUpTT05GaWxlUGF0aFBhdHRlcm4iLCJjdXN0b21HcmFtbWFyQk5GRmlsZVBhdGhQYXR0ZXJuIiwiY3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlUGF0aFBhdHRlcm4iLCJyZWNvZ25pc2VkRmlsZVBhdGhQYXR0ZXJuIiwicmVhZG1lRmlsZVBhdGhSZWd1bGFyRXhwcmVzc2lvbiIsIlJlZ0V4cCIsImZsb3JlbmNlRmlsZVBhdGhSZWd1bGFyRXhwcmVzc2lvbiIsIm1ldGFKU09ORmlsZVBhdGhSZWd1bGFyRXhwcmVzc2lvbiIsInJlY29nbmlzZWRGaWxlUGF0aFJlZ3VsYXJFeHByZXNzaW9uIiwiY3VzdG9tR3JhbW1hckJORkZpbGVQYXRoUmVndWxhckV4cHJlc3Npb24iLCJjdXN0b21HcmFtbWFyUGF0dGVybkZpbGVQYXRoUmVndWxhckV4cHJlc3Npb24iLCJmaWxlUGF0aCIsInRlc3QiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQWdCZ0JBLHdCQUF3QjtlQUF4QkE7O0lBRUFDLDBCQUEwQjtlQUExQkE7O0lBRUFDLDBCQUEwQjtlQUExQkE7O0lBRUFDLDRCQUE0QjtlQUE1QkE7O0lBRUFDLGtDQUFrQztlQUFsQ0E7O0lBRUFDLHNDQUFzQztlQUF0Q0E7O0lBRWhCLE9BT0U7ZUFQRjs7O0FBMUJBLElBQU1DLHdCQUF3QixrQ0FDeEJDLDBCQUEwQixxQ0FDMUJDLDBCQUEwQixrQ0FDMUJDLGtDQUFrQywyREFDbENDLHNDQUFzQyxtREFDdENDLDRCQUE0QixBQUFDLEdBQTJCSixPQUF6QkQsdUJBQXNCLEtBQThCRSxPQUEzQkQseUJBQXdCLEtBQThCRSxPQUEzQkQseUJBQXdCLEtBQXNDRSxPQUFuQ0QsaUNBQWdDLEtBQXVDLE9BQXBDQztBQUV2SixJQUFNRSxrQ0FBa0MsSUFBSUMsT0FBT1Asd0JBQzdDUSxvQ0FBb0MsSUFBSUQsT0FBT04sMEJBQy9DUSxvQ0FBb0MsSUFBSUYsT0FBT0wsMEJBQy9DUSxzQ0FBc0MsSUFBSUgsT0FBT0YsNEJBQ2pETSw0Q0FBNEMsSUFBSUosT0FBT0osa0NBQ3ZEUyxnREFBZ0QsSUFBSUwsT0FBT0g7QUFFMUQsU0FBU1YseUJBQXlCbUIsUUFBUSxFQUFFO0lBQUUsT0FBT1AsZ0NBQWdDUSxJQUFJLENBQUNEO0FBQVc7QUFFckcsU0FBU2xCLDJCQUEyQmtCLFFBQVEsRUFBRTtJQUFFLE9BQU9MLGtDQUFrQ00sSUFBSSxDQUFDRDtBQUFXO0FBRXpHLFNBQVNqQiwyQkFBMkJpQixRQUFRLEVBQUU7SUFBRSxPQUFPSixrQ0FBa0NLLElBQUksQ0FBQ0Q7QUFBVztBQUV6RyxTQUFTaEIsNkJBQTZCZ0IsUUFBUSxFQUFFO0lBQUUsT0FBT0gsb0NBQW9DSSxJQUFJLENBQUNEO0FBQVc7QUFFN0csU0FBU2YsbUNBQW1DZSxRQUFRLEVBQUU7SUFBRSxPQUFPRiwwQ0FBMENHLElBQUksQ0FBQ0Q7QUFBVztBQUV6SCxTQUFTZCx1Q0FBdUNjLFFBQVEsRUFBRTtJQUFFLE9BQU9ELDhDQUE4Q0UsSUFBSSxDQUFDRDtBQUFXO0lBRXhJLFdBQWU7SUFDYm5CLDBCQUFBQTtJQUNBQyw0QkFBQUE7SUFDQUMsNEJBQUFBO0lBQ0FDLDhCQUFBQTtJQUNBQyxvQ0FBQUE7SUFDQUMsd0NBQUFBO0FBQ0YifQ==
@@ -21,30 +21,56 @@ _export(exports, {
21
21
  saveFiles: function() {
22
22
  return saveFiles;
23
23
  },
24
+ loadEntries: function() {
25
+ return loadEntries;
26
+ },
27
+ loadRelease: function() {
28
+ return loadRelease;
29
+ },
24
30
  loadProject: function() {
25
31
  return loadProject;
26
32
  },
33
+ loadReleases: function() {
34
+ return loadReleases;
35
+ },
27
36
  loadProjects: function() {
28
37
  return loadProjects;
38
+ },
39
+ loadDirectory: function() {
40
+ return loadDirectory;
29
41
  }
30
42
  });
31
43
  var _mkdirp = /*#__PURE__*/ _interopRequireDefault(require("mkdirp"));
44
+ var _occamGrammars = require("occam-grammars");
32
45
  var _necessary = require("necessary");
33
- var _occamOpenCli = require("occam-open-cli");
46
+ var _file = /*#__PURE__*/ _interopRequireDefault(require("../file"));
47
+ var _files = /*#__PURE__*/ _interopRequireDefault(require("../files"));
48
+ var _entries = /*#__PURE__*/ _interopRequireDefault(require("../entries"));
49
+ var _project = /*#__PURE__*/ _interopRequireDefault(require("../project"));
50
+ var _projects = /*#__PURE__*/ _interopRequireDefault(require("../projects"));
51
+ var _releases = /*#__PURE__*/ _interopRequireDefault(require("../releases"));
52
+ var _directory = /*#__PURE__*/ _interopRequireDefault(require("../directory"));
53
+ var _constants = require("../constants");
54
+ var _name = require("../utilities/name");
55
+ var _filePath = require("../utilities/filePath");
56
+ var _content = require("../utilities/content");
57
+ var _files1 = require("../utilities/files");
58
+ var _metaJSON = require("./metaJSON");
34
59
  function _interopRequireDefault(obj) {
35
60
  return obj && obj.__esModule ? obj : {
36
61
  default: obj
37
62
  };
38
63
  }
39
- var isNameHiddenName = _occamOpenCli.nameUtilities.isNameHiddenName, convertContentTabsToWhitespace = _occamOpenCli.contentUtilities.convertContentTabsToWhitespace, entriesFromTopmostDirectoryName = _occamOpenCli.entriesUtilities.entriesFromTopmostDirectoryName, 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;
64
+ var 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;
65
+ var metaJSONLexer = _occamGrammars.MetaJSONLexer.fromNothing(), metaJSONParser = _occamGrammars.MetaJSONParser.fromNothing();
40
66
  function loadFile(path, projectsDirectoryPath) {
41
67
  var file = null;
42
68
  try {
43
69
  var absolutePath = concatenatePaths(projectsDirectoryPath, path), entryFile = isEntryFile(absolutePath);
44
70
  if (entryFile) {
45
71
  var content = readFile(absolutePath);
46
- content = convertContentTabsToWhitespace(content); ///
47
- file = new _occamOpenCli.File(path, content);
72
+ content = (0, _content.convertContentTabsToWhitespace)(content); ///
73
+ file = _file.default.fromPathAndContent(path, content);
48
74
  }
49
75
  } catch (error) {
50
76
  ///
@@ -57,7 +83,7 @@ function saveFile(file, projectsDirectoryPath) {
57
83
  writeFile(absolutePath, content);
58
84
  }
59
85
  function loadFiles(paths, projectsDirectoryPath) {
60
- var array = [], files = new _occamOpenCli.Files(array);
86
+ var files = _files.default.fromNothing();
61
87
  paths.forEach(function(path) {
62
88
  var file = loadFile(path, projectsDirectoryPath);
63
89
  files.addFile(file);
@@ -69,30 +95,122 @@ function saveFiles(files, projectsDirectoryPath) {
69
95
  saveFile(file, projectsDirectoryPath);
70
96
  });
71
97
  }
98
+ function loadEntries(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories) {
99
+ var entries = _entries.default.fromNothing(), relativeDirectoryPath = topmostDirectoryName; ///
100
+ entriesFromRelativeDirectoryPath(entries, relativeDirectoryPath, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories);
101
+ return entries;
102
+ }
103
+ function loadRelease(topmostDirectoryName) {
104
+ var projectsDirectoryPath = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : _constants.PERIOD;
105
+ var release = null;
106
+ var name = topmostDirectoryName, loadOnlyRecognisedFiles = true, doNotLoadHiddenFilesAndDirectories = true, entries = loadEntries(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories), files = entries.getFiles(), readmeFile = (0, _files1.readmeFileFromFiles)(files), metaJSONFile = (0, _files1.metaJSONFileFromFiles)(files);
107
+ if (readmeFile !== null && metaJSONFile !== null) {
108
+ var metaJSONNode = metaJSONNodeFromMetaJSONFile(metaJSONFile);
109
+ if (metaJSONNode !== null) {
110
+ var node = metaJSONNode, version = (0, _metaJSON.versionFromNode)(node), repository = (0, _metaJSON.repositoryFromNode)(node), dependencies = (0, _metaJSON.dependenciesFromNode)(node);
111
+ release = Release.fromNameEntriesVersionRepositoryAndDependencies(name, entries, version, repository, dependencies);
112
+ }
113
+ }
114
+ return release;
115
+ }
72
116
  function loadProject(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories) {
73
- var name = topmostDirectoryName, entries = entriesFromTopmostDirectoryName(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories), project = new _occamOpenCli.Project(name, entries);
117
+ var name = topmostDirectoryName, entries = loadEntries(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories), files = entries.getFiles(), metaJSONFile = (0, _files1.metaJSONFileFromFiles)(files);
118
+ var repository = null, dependencies = [];
119
+ if (metaJSONFile !== null) {
120
+ var metaJSONNode = metaJSONNodeFromMetaJSONFile(metaJSONFile), node = metaJSONNode;
121
+ repository = (0, _metaJSON.repositoryFromNode)(node);
122
+ dependencies = (0, _metaJSON.dependenciesFromNode)(node);
123
+ }
124
+ var project = _project.default.fromNameEntriesRepositoryAndDependencies(name, entries, repository, dependencies);
74
125
  return project;
75
126
  }
127
+ function loadReleases(projectsDirectoryPath) {
128
+ var releases;
129
+ try {
130
+ var releases1 = _releases.default.fromNothing(), topmostFileNames = topmostFileNamesFromProjectsDirectoryPath(projectsDirectoryPath);
131
+ topmostFileNames.forEach(function(topmostFileName) {
132
+ var release = loadRelease(topmostFileName, projectsDirectoryPath);
133
+ releases1.addRelease(release);
134
+ });
135
+ } catch (error) {
136
+ releases = null;
137
+ }
138
+ return releases;
139
+ }
76
140
  function loadProjects(projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories) {
77
141
  var projects;
78
142
  try {
79
- var array = [];
80
- projects = new _occamOpenCli.Projects(array);
81
- var topmostDirectoryNames = topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath, doNotLoadHiddenFilesAndDirectories);
143
+ var projects1 = _projects.default.fromNothing(), topmostDirectoryNames = topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath, doNotLoadHiddenFilesAndDirectories);
82
144
  topmostDirectoryNames.forEach(function(topmostDirectoryName) {
83
145
  var project = loadProject(topmostDirectoryName, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories);
84
- projects.addProject(project);
146
+ projects1.addProject(project);
85
147
  });
86
148
  } catch (error) {
87
149
  projects = null;
88
150
  }
89
151
  return projects;
90
152
  }
153
+ function loadDirectory(path, projectsDirectoryPath) {
154
+ var directory = null;
155
+ try {
156
+ var absolutePath = concatenatePaths(projectsDirectoryPath, path), entryDirectory = isEntryDirectory(absolutePath);
157
+ if (entryDirectory) {
158
+ directory = _directory.default.fromPath(path);
159
+ }
160
+ } catch (error) {
161
+ ///
162
+ }
163
+ return directory;
164
+ }
165
+ function metaJSONNodeFromMetaJSONFile(metaJSONFile) {
166
+ var content = metaJSONFile.getContent(), tokens = metaJSONLexer.tokenise(content), node = metaJSONParser.parse(tokens), metaJSONNode = node; ///
167
+ return metaJSONNode;
168
+ }
169
+ function entriesFromRelativeDirectoryPath(entries, relativeDirectoryPath, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories) {
170
+ var absoluteDirectoryPath = concatenatePaths(projectsDirectoryPath, relativeDirectoryPath), subEntryNames = readDirectory(absoluteDirectoryPath);
171
+ subEntryNames.forEach(function(subEntryName) {
172
+ var subEntryNameHiddenName = (0, _name.isNameHiddenName)(subEntryName), subEntryNameNotHiddenName = !subEntryNameHiddenName, loadHiddenFilesAndDirectories = !doNotLoadHiddenFilesAndDirectories, loadUnrecognisedFilesAndDirectories = !loadOnlyRecognisedFiles;
173
+ if (subEntryNameNotHiddenName || loadHiddenFilesAndDirectories) {
174
+ var path = concatenatePaths(relativeDirectoryPath, subEntryName), directory = loadDirectory(path, projectsDirectoryPath);
175
+ if (directory !== null) {
176
+ var directoryPath = path; ///
177
+ if (loadUnrecognisedFilesAndDirectories) {
178
+ entries.addDirectory(directory);
179
+ }
180
+ entriesFromRelativeDirectoryPath(entries, directoryPath, projectsDirectoryPath, loadOnlyRecognisedFiles, doNotLoadHiddenFilesAndDirectories); ///
181
+ } else {
182
+ var file = loadFile(path, projectsDirectoryPath);
183
+ if (file !== null) {
184
+ var filePath = file.getPath(), filePathRecognisedFilePath = (0, _filePath.isFilePathRecognisedFilePath)(filePath), fileRecognisedFile = filePathRecognisedFilePath; ///
185
+ if (fileRecognisedFile || loadUnrecognisedFilesAndDirectories) {
186
+ entries.addFile(file);
187
+ }
188
+ }
189
+ }
190
+ }
191
+ });
192
+ }
193
+ function topmostFileNamesFromProjectsDirectoryPath(projectsDirectoryPath) {
194
+ var topmostFileNames;
195
+ var subEntryNames = readDirectory(projectsDirectoryPath);
196
+ topmostFileNames = subEntryNames.reduce(function(topmostFileNames, subEntryName) {
197
+ var absoluteSubEntryPath = concatenatePaths(projectsDirectoryPath, subEntryName), subEntryNameHiddenName = (0, _name.isNameHiddenName)(subEntryName), subEntryNameNotHiddenName = !subEntryNameHiddenName;
198
+ if (subEntryNameNotHiddenName) {
199
+ var subEntryFile = isEntryFile(absoluteSubEntryPath);
200
+ if (subEntryFile) {
201
+ var topmostFileName = subEntryName; ///
202
+ topmostFileNames.push(topmostFileName);
203
+ }
204
+ }
205
+ return topmostFileNames;
206
+ }, []);
207
+ return topmostFileNames;
208
+ }
91
209
  function topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath, doNotLoadHiddenFilesAndDirectories) {
92
210
  var topmostDirectoryNames;
93
211
  var subEntryNames = readDirectory(projectsDirectoryPath);
94
212
  topmostDirectoryNames = subEntryNames.reduce(function(topmostDirectoryNames, subEntryName) {
95
- var absoluteSubEntryPath = concatenatePaths(projectsDirectoryPath, subEntryName), subEntryNameHiddenName = isNameHiddenName(subEntryName), subEntryNameNotHiddenName = !subEntryNameHiddenName, loadHiddenFilesAndDirectories = !doNotLoadHiddenFilesAndDirectories;
213
+ var absoluteSubEntryPath = concatenatePaths(projectsDirectoryPath, subEntryName), subEntryNameHiddenName = (0, _name.isNameHiddenName)(subEntryName), subEntryNameNotHiddenName = !subEntryNameHiddenName, loadHiddenFilesAndDirectories = !doNotLoadHiddenFilesAndDirectories;
96
214
  if (subEntryNameNotHiddenName || loadHiddenFilesAndDirectories) {
97
215
  var subEntryDirectory = isEntryDirectory(absoluteSubEntryPath);
98
216
  if (subEntryDirectory) {
@@ -105,4 +223,4 @@ function topmostDirectoryNamesFromProjectsDirectoryPath(projectsDirectoryPath, d
105
223
  return topmostDirectoryNames;
106
224
  }
107
225
 
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCBta2RpcnAgZnJvbSBcIm1rZGlycFwiO1xyXG5cclxuaW1wb3J0IHsgcGF0aFV0aWxpdGllcywgZmlsZVN5c3RlbVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcclxuaW1wb3J0IHsgRmlsZSwgRmlsZXMsIFByb2plY3QsIFByb2plY3RzLCBuYW1lVXRpbGl0aWVzLCBlbnRyaWVzVXRpbGl0aWVzLCBjb250ZW50VXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLW9wZW4tY2xpXCI7XHJcblxyXG5jb25zdCB7IGlzTmFtZUhpZGRlbk5hbWUgfSA9IG5hbWVVdGlsaXRpZXMsXHJcbiAgICAgIHsgY29udmVydENvbnRlbnRUYWJzVG9XaGl0ZXNwYWNlIH0gPSBjb250ZW50VXRpbGl0aWVzLFxyXG4gICAgICB7IGVudHJpZXNGcm9tVG9wbW9zdERpcmVjdG9yeU5hbWUgfSA9IGVudHJpZXNVdGlsaXRpZXMsXHJcbiAgICAgIHsgY29uY2F0ZW5hdGVQYXRocywgdG9wbW9zdERpcmVjdG9yeVBhdGhGcm9tUGF0aCB9ID0gcGF0aFV0aWxpdGllcyxcclxuICAgICAgeyByZWFkRmlsZSwgd3JpdGVGaWxlLCBpc0VudHJ5RmlsZSwgcmVhZERpcmVjdG9yeSwgaXNFbnRyeURpcmVjdG9yeSB9ID0gZmlsZVN5c3RlbVV0aWxpdGllcztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkRmlsZShwYXRoLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBsZXQgZmlsZSA9IG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcGF0aCksXHJcbiAgICAgICAgICBlbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgIGlmIChlbnRyeUZpbGUpIHtcclxuICAgICAgbGV0IGNvbnRlbnQgPSByZWFkRmlsZShhYnNvbHV0ZVBhdGgpO1xyXG5cclxuICAgICAgY29udGVudCA9IGNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZShjb250ZW50KTsgIC8vL1xyXG5cclxuICAgICAgZmlsZSA9IG5ldyBGaWxlKHBhdGgsIGNvbnRlbnQpO1xyXG4gICAgfVxyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAvLy9cclxuICB9XHJcblxyXG4gIHJldHVybiBmaWxlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2F2ZUZpbGUoZmlsZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgcGF0aCA9IGZpbGUuZ2V0UGF0aCgpLFxyXG4gICAgICAgIGNvbnRlbnQgPSBmaWxlLmdldENvbnRlbnQoKSxcclxuICAgICAgICBhYnNvbHV0ZVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcGF0aCksXHJcbiAgICAgICAgdG9wbW9zdEFic29sdXRlRGlyZWN0b3J5UGF0aCA9IHRvcG1vc3REaXJlY3RvcnlQYXRoRnJvbVBhdGgoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgbWtkaXJwLnN5bmModG9wbW9zdEFic29sdXRlRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHdyaXRlRmlsZShhYnNvbHV0ZVBhdGgsIGNvbnRlbnQpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEZpbGVzKHBhdGhzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBjb25zdCBhcnJheSA9IFtdLFxyXG4gICAgICAgIGZpbGVzID0gbmV3IEZpbGVzKGFycmF5KTtcclxuXHJcbiAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xyXG4gICAgY29uc3QgZmlsZSA9IGxvYWRGaWxlKHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gICAgZmlsZXMuYWRkRmlsZShmaWxlKTtcclxuICB9KTtcclxuXHJcbiAgcmV0dXJuIGZpbGVzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2F2ZUZpbGVzKGZpbGVzLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpIHtcclxuICBmaWxlcy5mb3JFYWNoRmlsZSgoZmlsZSkgPT4ge1xyXG4gICAgc2F2ZUZpbGUoZmlsZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRQcm9qZWN0KHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgY29uc3QgbmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lLCAgLy8vXHJcbiAgICAgICAgZW50cmllcyA9IGVudHJpZXNGcm9tVG9wbW9zdERpcmVjdG9yeU5hbWUodG9wbW9zdERpcmVjdG9yeU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpLFxyXG4gICAgICAgIHByb2plY3QgPSBuZXcgUHJvamVjdChuYW1lLCBlbnRyaWVzKTtcclxuXHJcbiAgcmV0dXJuIHByb2plY3Q7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkUHJvamVjdHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gIGxldCBwcm9qZWN0cztcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IGFycmF5ID0gW107XHJcblxyXG4gICAgcHJvamVjdHMgPSBuZXcgUHJvamVjdHMoYXJyYXkpO1xyXG5cclxuICAgIGNvbnN0IHRvcG1vc3REaXJlY3RvcnlOYW1lcyA9IHRvcG1vc3REaXJlY3RvcnlOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKTtcclxuXHJcbiAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMuZm9yRWFjaCgodG9wbW9zdERpcmVjdG9yeU5hbWUpID0+IHtcclxuICAgICAgY29uc3QgcHJvamVjdCA9IGxvYWRQcm9qZWN0KHRvcG1vc3REaXJlY3RvcnlOYW1lLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKTtcclxuXHJcbiAgICAgIHByb2plY3RzLmFkZFByb2plY3QocHJvamVjdCk7XHJcbiAgICB9KTtcclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgcHJvamVjdHMgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHByb2plY3RzO1xyXG59XHJcblxyXG5mdW5jdGlvbiB0b3Btb3N0RGlyZWN0b3J5TmFtZXNGcm9tUHJvamVjdHNEaXJlY3RvcnlQYXRoKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gIGxldCB0b3Btb3N0RGlyZWN0b3J5TmFtZXM7XHJcblxyXG4gIGNvbnN0IHN1YkVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHRvcG1vc3REaXJlY3RvcnlOYW1lcyA9IHN1YkVudHJ5TmFtZXMucmVkdWNlKCh0b3Btb3N0RGlyZWN0b3J5TmFtZXMsIHN1YkVudHJ5TmFtZSkgPT4ge1xyXG4gICAgY29uc3QgYWJzb2x1dGVTdWJFbnRyeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIHN1YkVudHJ5TmFtZUhpZGRlbk5hbWUgPSBpc05hbWVIaWRkZW5OYW1lKHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICBzdWJFbnRyeU5hbWVOb3RIaWRkZW5OYW1lID0gIXN1YkVudHJ5TmFtZUhpZGRlbk5hbWUsXHJcbiAgICAgICAgICBsb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyA9ICFkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzO1xyXG5cclxuICAgIGlmIChzdWJFbnRyeU5hbWVOb3RIaWRkZW5OYW1lIHx8IGxvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgIGNvbnN0IHN1YkVudHJ5RGlyZWN0b3J5ID0gaXNFbnRyeURpcmVjdG9yeShhYnNvbHV0ZVN1YkVudHJ5UGF0aCk7XHJcblxyXG4gICAgICBpZiAoc3ViRW50cnlEaXJlY3RvcnkpIHtcclxuICAgICAgICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHN1YkVudHJ5TmFtZTsgIC8vL1xyXG5cclxuICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMucHVzaCh0b3Btb3N0RGlyZWN0b3J5TmFtZSlcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0b3Btb3N0RGlyZWN0b3J5TmFtZXM7XHJcbiAgfSwgW10pO1xyXG5cclxuICByZXR1cm4gdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG59XHJcbiJdLCJuYW1lcyI6WyJsb2FkRmlsZSIsInNhdmVGaWxlIiwibG9hZEZpbGVzIiwic2F2ZUZpbGVzIiwibG9hZFByb2plY3QiLCJsb2FkUHJvamVjdHMiLCJpc05hbWVIaWRkZW5OYW1lIiwibmFtZVV0aWxpdGllcyIsImNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZSIsImNvbnRlbnRVdGlsaXRpZXMiLCJlbnRyaWVzRnJvbVRvcG1vc3REaXJlY3RvcnlOYW1lIiwiZW50cmllc1V0aWxpdGllcyIsImNvbmNhdGVuYXRlUGF0aHMiLCJwYXRoVXRpbGl0aWVzIiwidG9wbW9zdERpcmVjdG9yeVBhdGhGcm9tUGF0aCIsInJlYWRGaWxlIiwiZmlsZVN5c3RlbVV0aWxpdGllcyIsIndyaXRlRmlsZSIsImlzRW50cnlGaWxlIiwicmVhZERpcmVjdG9yeSIsImlzRW50cnlEaXJlY3RvcnkiLCJwYXRoIiwicHJvamVjdHNEaXJlY3RvcnlQYXRoIiwiZmlsZSIsImFic29sdXRlUGF0aCIsImVudHJ5RmlsZSIsImNvbnRlbnQiLCJGaWxlIiwiZXJyb3IiLCJnZXRQYXRoIiwiZ2V0Q29udGVudCIsInRvcG1vc3RBYnNvbHV0ZURpcmVjdG9yeVBhdGgiLCJta2RpcnAiLCJzeW5jIiwicGF0aHMiLCJhcnJheSIsImZpbGVzIiwiRmlsZXMiLCJmb3JFYWNoIiwiYWRkRmlsZSIsImZvckVhY2hGaWxlIiwidG9wbW9zdERpcmVjdG9yeU5hbWUiLCJsb2FkT25seVJlY29nbmlzZWRGaWxlcyIsImRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMiLCJuYW1lIiwiZW50cmllcyIsInByb2plY3QiLCJQcm9qZWN0IiwicHJvamVjdHMiLCJQcm9qZWN0cyIsInRvcG1vc3REaXJlY3RvcnlOYW1lcyIsInRvcG1vc3REaXJlY3RvcnlOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJhZGRQcm9qZWN0Iiwic3ViRW50cnlOYW1lcyIsInJlZHVjZSIsInN1YkVudHJ5TmFtZSIsImFic29sdXRlU3ViRW50cnlQYXRoIiwic3ViRW50cnlOYW1lSGlkZGVuTmFtZSIsInN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUiLCJsb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyIsInN1YkVudHJ5RGlyZWN0b3J5IiwicHVzaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBYWdCQSxRQUFRO2VBQVJBOztJQXFCQUMsUUFBUTtlQUFSQTs7SUFXQUMsU0FBUztlQUFUQTs7SUFhQUMsU0FBUztlQUFUQTs7SUFNQUMsV0FBVztlQUFYQTs7SUFRQUMsWUFBWTtlQUFaQTs7OzJE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
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZVN5c3RlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCBta2RpcnAgZnJvbSBcIm1rZGlycFwiO1xyXG5cclxuaW1wb3J0IHsgTWV0YUpTT05MZXhlciwgTWV0YUpTT05QYXJzZXIgfSBmcm9tIFwib2NjYW0tZ3JhbW1hcnNcIjtcclxuaW1wb3J0IHsgcGF0aFV0aWxpdGllcywgZmlsZVN5c3RlbVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcclxuXHJcbmltcG9ydCBGaWxlIGZyb20gXCIuLi9maWxlXCI7XHJcbmltcG9ydCBGaWxlcyBmcm9tIFwiLi4vZmlsZXNcIjtcclxuaW1wb3J0IEVudHJpZXMgZnJvbSBcIi4uL2VudHJpZXNcIjtcclxuaW1wb3J0IFByb2plY3QgZnJvbSBcIi4uL3Byb2plY3RcIjtcclxuaW1wb3J0IFByb2plY3RzIGZyb20gXCIuLi9wcm9qZWN0c1wiO1xyXG5pbXBvcnQgUmVsZWFzZXMgZnJvbSBcIi4uL3JlbGVhc2VzXCI7XHJcbmltcG9ydCBEaXJlY3RvcnkgZnJvbSBcIi4uL2RpcmVjdG9yeVwiO1xyXG5cclxuaW1wb3J0IHsgUEVSSU9EIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xyXG5pbXBvcnQgeyBpc05hbWVIaWRkZW5OYW1lIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9uYW1lXCI7XHJcbmltcG9ydCB7IGlzRmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGggfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2ZpbGVQYXRoXCI7XHJcbmltcG9ydCB7IGNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGVudFwiO1xyXG5pbXBvcnQgeyBtZXRhSlNPTkZpbGVGcm9tRmlsZXMsIHJlYWRtZUZpbGVGcm9tRmlsZXMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2ZpbGVzXCI7XHJcbmltcG9ydCB7IHZlcnNpb25Gcm9tTm9kZSwgcmVwb3NpdG9yeUZyb21Ob2RlLCBkZXBlbmRlbmNpZXNGcm9tTm9kZSB9IGZyb20gXCIuL21ldGFKU09OXCI7XHJcblxyXG5jb25zdCB7IGNvbmNhdGVuYXRlUGF0aHMsIHRvcG1vc3REaXJlY3RvcnlQYXRoRnJvbVBhdGggfSA9IHBhdGhVdGlsaXRpZXMsXHJcbiAgICAgIHsgcmVhZEZpbGUsIHdyaXRlRmlsZSwgaXNFbnRyeUZpbGUsIHJlYWREaXJlY3RvcnksIGlzRW50cnlEaXJlY3RvcnkgfSA9IGZpbGVTeXN0ZW1VdGlsaXRpZXM7XHJcblxyXG5jb25zdCBtZXRhSlNPTkxleGVyID0gTWV0YUpTT05MZXhlci5mcm9tTm90aGluZygpLFxyXG4gICAgICBtZXRhSlNPTlBhcnNlciA9IE1ldGFKU09OUGFyc2VyLmZyb21Ob3RoaW5nKCk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IGZpbGUgPSBudWxsO1xyXG5cclxuICB0cnkge1xyXG4gICAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHBhdGgpLFxyXG4gICAgICAgICAgZW50cnlGaWxlID0gaXNFbnRyeUZpbGUoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICBpZiAoZW50cnlGaWxlKSB7XHJcbiAgICAgIGxldCBjb250ZW50ID0gcmVhZEZpbGUoYWJzb2x1dGVQYXRoKTtcclxuXHJcbiAgICAgIGNvbnRlbnQgPSBjb252ZXJ0Q29udGVudFRhYnNUb1doaXRlc3BhY2UoY29udGVudCk7ICAvLy9cclxuXHJcbiAgICAgIGZpbGUgPSBGaWxlLmZyb21QYXRoQW5kQ29udGVudChwYXRoLCBjb250ZW50KTtcclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gZmlsZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNhdmVGaWxlKGZpbGUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGNvbnN0IHBhdGggPSBmaWxlLmdldFBhdGgoKSxcclxuICAgICAgICBjb250ZW50ID0gZmlsZS5nZXRDb250ZW50KCksXHJcbiAgICAgICAgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHBhdGgpLFxyXG4gICAgICAgIHRvcG1vc3RBYnNvbHV0ZURpcmVjdG9yeVBhdGggPSB0b3Btb3N0RGlyZWN0b3J5UGF0aEZyb21QYXRoKGFic29sdXRlUGF0aCk7XHJcblxyXG4gIG1rZGlycC5zeW5jKHRvcG1vc3RBYnNvbHV0ZURpcmVjdG9yeVBhdGgpO1xyXG5cclxuICB3cml0ZUZpbGUoYWJzb2x1dGVQYXRoLCBjb250ZW50KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRGaWxlcyhwYXRocywgcHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgY29uc3QgZmlsZXMgPSBGaWxlcy5mcm9tTm90aGluZygpO1xyXG5cclxuICBwYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XHJcbiAgICBjb25zdCBmaWxlID0gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICBmaWxlcy5hZGRGaWxlKGZpbGUpO1xyXG4gIH0pO1xyXG5cclxuICByZXR1cm4gZmlsZXM7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzYXZlRmlsZXMoZmlsZXMsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGZpbGVzLmZvckVhY2hGaWxlKChmaWxlKSA9PiB7XHJcbiAgICBzYXZlRmlsZShmaWxlLCBwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG4gIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZEVudHJpZXModG9wbW9zdERpcmVjdG9yeU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpIHtcclxuICBjb25zdCBlbnRyaWVzID0gRW50cmllcy5mcm9tTm90aGluZygpLFxyXG4gICAgICAgIHJlbGF0aXZlRGlyZWN0b3J5UGF0aCA9IHRvcG1vc3REaXJlY3RvcnlOYW1lOyAgLy8vXHJcblxyXG4gIGVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoKGVudHJpZXMsIHJlbGF0aXZlRGlyZWN0b3J5UGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcyk7XHJcblxyXG4gIHJldHVybiBlbnRyaWVzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZFJlbGVhc2UodG9wbW9zdERpcmVjdG9yeU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCA9IFBFUklPRCkge1xyXG4gIGxldCByZWxlYXNlID0gbnVsbDtcclxuXHJcbiAgY29uc3QgbmFtZSA9IHRvcG1vc3REaXJlY3RvcnlOYW1lLCAgLy8vXHJcbiAgICAgICAgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMgPSB0cnVlLFxyXG4gICAgICAgIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMgPSB0cnVlLFxyXG4gICAgICAgIGVudHJpZXMgPSBsb2FkRW50cmllcyh0b3Btb3N0RGlyZWN0b3J5TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyksXHJcbiAgICAgICAgZmlsZXMgPSBlbnRyaWVzLmdldEZpbGVzKCksXHJcbiAgICAgICAgcmVhZG1lRmlsZSA9IHJlYWRtZUZpbGVGcm9tRmlsZXMoZmlsZXMpLFxyXG4gICAgICAgIG1ldGFKU09ORmlsZSA9IG1ldGFKU09ORmlsZUZyb21GaWxlcyhmaWxlcyk7XHJcblxyXG4gIGlmICgocmVhZG1lRmlsZSAhPT0gbnVsbCkgJiYgKG1ldGFKU09ORmlsZSAhPT0gbnVsbCkpIHtcclxuICAgIGNvbnN0IG1ldGFKU09OTm9kZSA9IG1ldGFKU09OTm9kZUZyb21NZXRhSlNPTkZpbGUobWV0YUpTT05GaWxlKTtcclxuXHJcbiAgICBpZiAobWV0YUpTT05Ob2RlICE9PSBudWxsKSB7XHJcbiAgICAgIGNvbnN0IG5vZGUgPSBtZXRhSlNPTk5vZGUsICAvLy9cclxuICAgICAgICAgICAgdmVyc2lvbiA9IHZlcnNpb25Gcm9tTm9kZShub2RlKSxcclxuICAgICAgICAgICAgcmVwb3NpdG9yeSA9IHJlcG9zaXRvcnlGcm9tTm9kZShub2RlKSxcclxuICAgICAgICAgICAgZGVwZW5kZW5jaWVzID0gZGVwZW5kZW5jaWVzRnJvbU5vZGUobm9kZSk7XHJcblxyXG4gICAgICByZWxlYXNlID0gUmVsZWFzZS5mcm9tTmFtZUVudHJpZXNWZXJzaW9uUmVwb3NpdG9yeUFuZERlcGVuZGVuY2llcyhuYW1lLCBlbnRyaWVzLCB2ZXJzaW9uLCByZXBvc2l0b3J5LCBkZXBlbmRlbmNpZXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlbGVhc2U7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkUHJvamVjdCh0b3Btb3N0RGlyZWN0b3J5TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gIGNvbnN0IG5hbWUgPSB0b3Btb3N0RGlyZWN0b3J5TmFtZSwgIC8vL1xyXG4gICAgICAgIGVudHJpZXMgPSBsb2FkRW50cmllcyh0b3Btb3N0RGlyZWN0b3J5TmFtZSwgcHJvamVjdHNEaXJlY3RvcnlQYXRoLCBsb2FkT25seVJlY29nbmlzZWRGaWxlcywgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyksXHJcbiAgICAgICAgZmlsZXMgPSBlbnRyaWVzLmdldEZpbGVzKCksXHJcbiAgICAgICAgbWV0YUpTT05GaWxlID0gbWV0YUpTT05GaWxlRnJvbUZpbGVzKGZpbGVzKTtcclxuXHJcbiAgbGV0IHJlcG9zaXRvcnkgPSBudWxsLFxyXG4gICAgICBkZXBlbmRlbmNpZXMgPSBbXTtcclxuXHJcbiAgaWYgKG1ldGFKU09ORmlsZSAhPT0gbnVsbCkge1xyXG4gICAgY29uc3QgbWV0YUpTT05Ob2RlID0gbWV0YUpTT05Ob2RlRnJvbU1ldGFKU09ORmlsZShtZXRhSlNPTkZpbGUpLFxyXG4gICAgICAgICAgbm9kZSA9IG1ldGFKU09OTm9kZTtcclxuXHJcbiAgICByZXBvc2l0b3J5ID0gcmVwb3NpdG9yeUZyb21Ob2RlKG5vZGUpO1xyXG4gICAgZGVwZW5kZW5jaWVzID0gZGVwZW5kZW5jaWVzRnJvbU5vZGUobm9kZSk7XHJcbiAgfVxyXG5cclxuICBjb25zdCBwcm9qZWN0ID0gUHJvamVjdC5mcm9tTmFtZUVudHJpZXNSZXBvc2l0b3J5QW5kRGVwZW5kZW5jaWVzKG5hbWUsIGVudHJpZXMsIHJlcG9zaXRvcnksIGRlcGVuZGVuY2llcyk7XHJcblxyXG4gIHJldHVybiBwcm9qZWN0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbG9hZFJlbGVhc2VzKHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCByZWxlYXNlcztcclxuXHJcbiAgdHJ5IHtcclxuICAgIGNvbnN0IHJlbGVhc2VzID0gUmVsZWFzZXMuZnJvbU5vdGhpbmcoKSxcclxuICAgICAgICAgIHRvcG1vc3RGaWxlTmFtZXMgPSB0b3Btb3N0RmlsZU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aChwcm9qZWN0c0RpcmVjdG9yeVBhdGgpO1xyXG5cclxuICAgIHRvcG1vc3RGaWxlTmFtZXMuZm9yRWFjaCgodG9wbW9zdEZpbGVOYW1lKSA9PiB7XHJcbiAgICAgIGNvbnN0IHJlbGVhc2UgPSBsb2FkUmVsZWFzZSh0b3Btb3N0RmlsZU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gICAgICByZWxlYXNlcy5hZGRSZWxlYXNlKHJlbGVhc2UpO1xyXG4gICAgfSk7XHJcbiAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgIHJlbGVhc2VzID0gbnVsbDtcclxuICB9XHJcblxyXG4gIHJldHVybiByZWxlYXNlcztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRQcm9qZWN0cyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGxvYWRPbmx5UmVjb2duaXNlZEZpbGVzLCBkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgbGV0IHByb2plY3RzO1xyXG5cclxuICB0cnkge1xyXG4gICAgY29uc3QgcHJvamVjdHMgPSBQcm9qZWN0cy5mcm9tTm90aGluZygpLFxyXG4gICAgICAgICAgdG9wbW9zdERpcmVjdG9yeU5hbWVzID0gdG9wbW9zdERpcmVjdG9yeU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aChwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpO1xyXG5cclxuICAgIHRvcG1vc3REaXJlY3RvcnlOYW1lcy5mb3JFYWNoKCh0b3Btb3N0RGlyZWN0b3J5TmFtZSkgPT4ge1xyXG4gICAgICBjb25zdCBwcm9qZWN0ID0gbG9hZFByb2plY3QodG9wbW9zdERpcmVjdG9yeU5hbWUsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpO1xyXG5cclxuICAgICAgcHJvamVjdHMuYWRkUHJvamVjdChwcm9qZWN0KTtcclxuICAgIH0pO1xyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICBwcm9qZWN0cyA9IG51bGw7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcHJvamVjdHM7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBsb2FkRGlyZWN0b3J5KHBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCkge1xyXG4gIGxldCBkaXJlY3RvcnkgPSBudWxsO1xyXG5cclxuICB0cnkge1xyXG4gICAgY29uc3QgYWJzb2x1dGVQYXRoID0gY29uY2F0ZW5hdGVQYXRocyhwcm9qZWN0c0RpcmVjdG9yeVBhdGgsIHBhdGgpLFxyXG4gICAgICAgICAgZW50cnlEaXJlY3RvcnkgPSBpc0VudHJ5RGlyZWN0b3J5KGFic29sdXRlUGF0aCk7XHJcblxyXG4gICAgaWYgKGVudHJ5RGlyZWN0b3J5KSB7XHJcbiAgICAgIGRpcmVjdG9yeSA9IERpcmVjdG9yeS5mcm9tUGF0aChwYXRoKTtcclxuICAgIH1cclxuICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgLy8vXHJcbiAgfVxyXG5cclxuICByZXR1cm4gZGlyZWN0b3J5O1xyXG59XHJcblxyXG5mdW5jdGlvbiBtZXRhSlNPTk5vZGVGcm9tTWV0YUpTT05GaWxlKG1ldGFKU09ORmlsZSkge1xyXG4gIGNvbnN0IGNvbnRlbnQgPSBtZXRhSlNPTkZpbGUuZ2V0Q29udGVudCgpLFxyXG4gICAgICAgIHRva2VucyA9IG1ldGFKU09OTGV4ZXIudG9rZW5pc2UoY29udGVudCksXHJcbiAgICAgICAgbm9kZSA9IG1ldGFKU09OUGFyc2VyLnBhcnNlKHRva2VucyksXHJcbiAgICAgICAgbWV0YUpTT05Ob2RlID0gbm9kZTsgIC8vL1xyXG5cclxuICByZXR1cm4gbWV0YUpTT05Ob2RlO1xyXG59XHJcblxyXG5mdW5jdGlvbiBlbnRyaWVzRnJvbVJlbGF0aXZlRGlyZWN0b3J5UGF0aChlbnRyaWVzLCByZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpIHtcclxuICBjb25zdCBhYnNvbHV0ZURpcmVjdG9yeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgcmVsYXRpdmVEaXJlY3RvcnlQYXRoKSxcclxuICAgICAgICBzdWJFbnRyeU5hbWVzID0gcmVhZERpcmVjdG9yeShhYnNvbHV0ZURpcmVjdG9yeVBhdGgpO1xyXG5cclxuICBzdWJFbnRyeU5hbWVzLmZvckVhY2goKHN1YkVudHJ5TmFtZSkgPT4ge1xyXG4gICAgY29uc3Qgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIHN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUgPSAhc3ViRW50cnlOYW1lSGlkZGVuTmFtZSxcclxuICAgICAgICAgIGxvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzID0gIWRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMsXHJcbiAgICAgICAgICBsb2FkVW5yZWNvZ25pc2VkRmlsZXNBbmREaXJlY3RvcmllcyA9ICFsb2FkT25seVJlY29nbmlzZWRGaWxlcztcclxuXHJcbiAgICBpZiAoc3ViRW50cnlOYW1lTm90SGlkZGVuTmFtZSB8fCBsb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gICAgICBjb25zdCBwYXRoID0gY29uY2F0ZW5hdGVQYXRocyhyZWxhdGl2ZURpcmVjdG9yeVBhdGgsIHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICAgIGRpcmVjdG9yeSA9IGxvYWREaXJlY3RvcnkocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgIGlmIChkaXJlY3RvcnkgIT09IG51bGwpIHtcclxuICAgICAgICBjb25zdCBkaXJlY3RvcnlQYXRoID0gcGF0aDsgLy8vXHJcblxyXG4gICAgICAgIGlmIChsb2FkVW5yZWNvZ25pc2VkRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gICAgICAgICAgZW50cmllcy5hZGREaXJlY3RvcnkoZGlyZWN0b3J5KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoKGVudHJpZXMsIGRpcmVjdG9yeVBhdGgsIHByb2plY3RzRGlyZWN0b3J5UGF0aCwgbG9hZE9ubHlSZWNvZ25pc2VkRmlsZXMsIGRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMpOyAvLy9cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBmaWxlID0gbG9hZEZpbGUocGF0aCwgcHJvamVjdHNEaXJlY3RvcnlQYXRoKTtcclxuXHJcbiAgICAgICAgaWYgKGZpbGUgIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXHJcbiAgICAgICAgICAgICAgICBmaWxlUGF0aFJlY29nbmlzZWRGaWxlUGF0aCA9IGlzRmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgoZmlsZVBhdGgpLFxyXG4gICAgICAgICAgICAgICAgZmlsZVJlY29nbmlzZWRGaWxlID0gZmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGg7ICAvLy9cclxuXHJcbiAgICAgICAgICBpZiAoZmlsZVJlY29nbmlzZWRGaWxlIHx8IGxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgICAgICAgIGVudHJpZXMuYWRkRmlsZShmaWxlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9KTtcclxufVxyXG5cclxuZnVuY3Rpb24gdG9wbW9zdEZpbGVOYW1lc0Zyb21Qcm9qZWN0c0RpcmVjdG9yeVBhdGgocHJvamVjdHNEaXJlY3RvcnlQYXRoKSB7XHJcbiAgbGV0IHRvcG1vc3RGaWxlTmFtZXM7XHJcblxyXG4gIGNvbnN0IHN1YkVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHRvcG1vc3RGaWxlTmFtZXMgPSBzdWJFbnRyeU5hbWVzLnJlZHVjZSgodG9wbW9zdEZpbGVOYW1lcywgc3ViRW50cnlOYW1lKSA9PiB7XHJcbiAgICBjb25zdCBhYnNvbHV0ZVN1YkVudHJ5UGF0aCA9IGNvbmNhdGVuYXRlUGF0aHMocHJvamVjdHNEaXJlY3RvcnlQYXRoLCBzdWJFbnRyeU5hbWUpLFxyXG4gICAgICAgICAgc3ViRW50cnlOYW1lSGlkZGVuTmFtZSA9IGlzTmFtZUhpZGRlbk5hbWUoc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIHN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUgPSAhc3ViRW50cnlOYW1lSGlkZGVuTmFtZTtcclxuXHJcbiAgICBpZiAoc3ViRW50cnlOYW1lTm90SGlkZGVuTmFtZSkge1xyXG4gICAgICBjb25zdCBzdWJFbnRyeUZpbGUgPSBpc0VudHJ5RmlsZShhYnNvbHV0ZVN1YkVudHJ5UGF0aCk7XHJcblxyXG4gICAgICBpZiAoc3ViRW50cnlGaWxlKSB7XHJcbiAgICAgICAgY29uc3QgdG9wbW9zdEZpbGVOYW1lID0gc3ViRW50cnlOYW1lOyAgLy8vXHJcblxyXG4gICAgICAgIHRvcG1vc3RGaWxlTmFtZXMucHVzaCh0b3Btb3N0RmlsZU5hbWUpXHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdG9wbW9zdEZpbGVOYW1lcztcclxuICB9LCBbXSk7XHJcblxyXG4gIHJldHVybiB0b3Btb3N0RmlsZU5hbWVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiB0b3Btb3N0RGlyZWN0b3J5TmFtZXNGcm9tUHJvamVjdHNEaXJlY3RvcnlQYXRoKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgZG9Ob3RMb2FkSGlkZGVuRmlsZXNBbmREaXJlY3Rvcmllcykge1xyXG4gIGxldCB0b3Btb3N0RGlyZWN0b3J5TmFtZXM7XHJcblxyXG4gIGNvbnN0IHN1YkVudHJ5TmFtZXMgPSByZWFkRGlyZWN0b3J5KHByb2plY3RzRGlyZWN0b3J5UGF0aCk7XHJcblxyXG4gIHRvcG1vc3REaXJlY3RvcnlOYW1lcyA9IHN1YkVudHJ5TmFtZXMucmVkdWNlKCh0b3Btb3N0RGlyZWN0b3J5TmFtZXMsIHN1YkVudHJ5TmFtZSkgPT4ge1xyXG4gICAgY29uc3QgYWJzb2x1dGVTdWJFbnRyeVBhdGggPSBjb25jYXRlbmF0ZVBhdGhzKHByb2plY3RzRGlyZWN0b3J5UGF0aCwgc3ViRW50cnlOYW1lKSxcclxuICAgICAgICAgIHN1YkVudHJ5TmFtZUhpZGRlbk5hbWUgPSBpc05hbWVIaWRkZW5OYW1lKHN1YkVudHJ5TmFtZSksXHJcbiAgICAgICAgICBzdWJFbnRyeU5hbWVOb3RIaWRkZW5OYW1lID0gIXN1YkVudHJ5TmFtZUhpZGRlbk5hbWUsXHJcbiAgICAgICAgICBsb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyA9ICFkb05vdExvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzO1xyXG5cclxuICAgIGlmIChzdWJFbnRyeU5hbWVOb3RIaWRkZW5OYW1lIHx8IGxvYWRIaWRkZW5GaWxlc0FuZERpcmVjdG9yaWVzKSB7XHJcbiAgICAgIGNvbnN0IHN1YkVudHJ5RGlyZWN0b3J5ID0gaXNFbnRyeURpcmVjdG9yeShhYnNvbHV0ZVN1YkVudHJ5UGF0aCk7XHJcblxyXG4gICAgICBpZiAoc3ViRW50cnlEaXJlY3RvcnkpIHtcclxuICAgICAgICBjb25zdCB0b3Btb3N0RGlyZWN0b3J5TmFtZSA9IHN1YkVudHJ5TmFtZTsgIC8vL1xyXG5cclxuICAgICAgICB0b3Btb3N0RGlyZWN0b3J5TmFtZXMucHVzaCh0b3Btb3N0RGlyZWN0b3J5TmFtZSlcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0b3Btb3N0RGlyZWN0b3J5TmFtZXM7XHJcbiAgfSwgW10pO1xyXG5cclxuICByZXR1cm4gdG9wbW9zdERpcmVjdG9yeU5hbWVzO1xyXG59XHJcbiJdLCJuYW1lcyI6WyJsb2FkRmlsZSIsInNhdmVGaWxlIiwibG9hZEZpbGVzIiwic2F2ZUZpbGVzIiwibG9hZEVudHJpZXMiLCJsb2FkUmVsZWFzZSIsImxvYWRQcm9qZWN0IiwibG9hZFJlbGVhc2VzIiwibG9hZFByb2plY3RzIiwibG9hZERpcmVjdG9yeSIsImNvbmNhdGVuYXRlUGF0aHMiLCJwYXRoVXRpbGl0aWVzIiwidG9wbW9zdERpcmVjdG9yeVBhdGhGcm9tUGF0aCIsInJlYWRGaWxlIiwiZmlsZVN5c3RlbVV0aWxpdGllcyIsIndyaXRlRmlsZSIsImlzRW50cnlGaWxlIiwicmVhZERpcmVjdG9yeSIsImlzRW50cnlEaXJlY3RvcnkiLCJtZXRhSlNPTkxleGVyIiwiTWV0YUpTT05MZXhlciIsImZyb21Ob3RoaW5nIiwibWV0YUpTT05QYXJzZXIiLCJNZXRhSlNPTlBhcnNlciIsInBhdGgiLCJwcm9qZWN0c0RpcmVjdG9yeVBhdGgiLCJmaWxlIiwiYWJzb2x1dGVQYXRoIiwiZW50cnlGaWxlIiwiY29udGVudCIsImNvbnZlcnRDb250ZW50VGFic1RvV2hpdGVzcGFjZSIsIkZpbGUiLCJmcm9tUGF0aEFuZENvbnRlbnQiLCJlcnJvciIsImdldFBhdGgiLCJnZXRDb250ZW50IiwidG9wbW9zdEFic29sdXRlRGlyZWN0b3J5UGF0aCIsIm1rZGlycCIsInN5bmMiLCJwYXRocyIsImZpbGVzIiwiRmlsZXMiLCJmb3JFYWNoIiwiYWRkRmlsZSIsImZvckVhY2hGaWxlIiwidG9wbW9zdERpcmVjdG9yeU5hbWUiLCJsb2FkT25seVJlY29nbmlzZWRGaWxlcyIsImRvTm90TG9hZEhpZGRlbkZpbGVzQW5kRGlyZWN0b3JpZXMiLCJlbnRyaWVzIiwiRW50cmllcyIsInJlbGF0aXZlRGlyZWN0b3J5UGF0aCIsImVudHJpZXNGcm9tUmVsYXRpdmVEaXJlY3RvcnlQYXRoIiwiUEVSSU9EIiwicmVsZWFzZSIsIm5hbWUiLCJnZXRGaWxlcyIsInJlYWRtZUZpbGUiLCJyZWFkbWVGaWxlRnJvbUZpbGVzIiwibWV0YUpTT05GaWxlIiwibWV0YUpTT05GaWxlRnJvbUZpbGVzIiwibWV0YUpTT05Ob2RlIiwibWV0YUpTT05Ob2RlRnJvbU1ldGFKU09ORmlsZSIsIm5vZGUiLCJ2ZXJzaW9uIiwidmVyc2lvbkZyb21Ob2RlIiwicmVwb3NpdG9yeSIsInJlcG9zaXRvcnlGcm9tTm9kZSIsImRlcGVuZGVuY2llcyIsImRlcGVuZGVuY2llc0Zyb21Ob2RlIiwiUmVsZWFzZSIsImZyb21OYW1lRW50cmllc1ZlcnNpb25SZXBvc2l0b3J5QW5kRGVwZW5kZW5jaWVzIiwicHJvamVjdCIsIlByb2plY3QiLCJmcm9tTmFtZUVudHJpZXNSZXBvc2l0b3J5QW5kRGVwZW5kZW5jaWVzIiwicmVsZWFzZXMiLCJSZWxlYXNlcyIsInRvcG1vc3RGaWxlTmFtZXMiLCJ0b3Btb3N0RmlsZU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aCIsInRvcG1vc3RGaWxlTmFtZSIsImFkZFJlbGVhc2UiLCJwcm9qZWN0cyIsIlByb2plY3RzIiwidG9wbW9zdERpcmVjdG9yeU5hbWVzIiwidG9wbW9zdERpcmVjdG9yeU5hbWVzRnJvbVByb2plY3RzRGlyZWN0b3J5UGF0aCIsImFkZFByb2plY3QiLCJkaXJlY3RvcnkiLCJlbnRyeURpcmVjdG9yeSIsIkRpcmVjdG9yeSIsImZyb21QYXRoIiwidG9rZW5zIiwidG9rZW5pc2UiLCJwYXJzZSIsImFic29sdXRlRGlyZWN0b3J5UGF0aCIsInN1YkVudHJ5TmFtZXMiLCJzdWJFbnRyeU5hbWUiLCJzdWJFbnRyeU5hbWVIaWRkZW5OYW1lIiwiaXNOYW1lSGlkZGVuTmFtZSIsInN1YkVudHJ5TmFtZU5vdEhpZGRlbk5hbWUiLCJsb2FkSGlkZGVuRmlsZXNBbmREaXJlY3RvcmllcyIsImxvYWRVbnJlY29nbmlzZWRGaWxlc0FuZERpcmVjdG9yaWVzIiwiZGlyZWN0b3J5UGF0aCIsImFkZERpcmVjdG9yeSIsImZpbGVQYXRoIiwiZmlsZVBhdGhSZWNvZ25pc2VkRmlsZVBhdGgiLCJpc0ZpbGVQYXRoUmVjb2duaXNlZEZpbGVQYXRoIiwiZmlsZVJlY29nbmlzZWRGaWxlIiwicmVkdWNlIiwiYWJzb2x1dGVTdWJFbnRyeVBhdGgiLCJzdWJFbnRyeUZpbGUiLCJwdXNoIiwic3ViRW50cnlEaXJlY3RvcnkiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQTRCZ0JBLFFBQVE7ZUFBUkE7O0lBcUJBQyxRQUFRO2VB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
@@ -0,0 +1,95 @@
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
+ readmeFileFromFiles: function() {
13
+ return readmeFileFromFiles;
14
+ },
15
+ metaJSONFileFromFiles: function() {
16
+ return metaJSONFileFromFiles;
17
+ },
18
+ florenceFilesFromFiles: function() {
19
+ return florenceFilesFromFiles;
20
+ },
21
+ customGrammarBNFFilesFromFiles: function() {
22
+ return customGrammarBNFFilesFromFiles;
23
+ },
24
+ customGrammarPatternFilesFromFiles: function() {
25
+ return customGrammarPatternFilesFromFiles;
26
+ },
27
+ default: function() {
28
+ return _default;
29
+ }
30
+ });
31
+ var _filePath = require("../utilities/filePath");
32
+ function readmeFileFromFiles(files) {
33
+ var readmeFile = null;
34
+ files.someFile(function(file) {
35
+ var filePath = file.getPath(), filePathReadmeFilePath = (0, _filePath.isFilePathReadmeFilePath)(filePath);
36
+ if (filePathReadmeFilePath) {
37
+ readmeFile = file; ///
38
+ return true;
39
+ }
40
+ });
41
+ return readmeFile;
42
+ }
43
+ function metaJSONFileFromFiles(files) {
44
+ var metaJSONFile = null;
45
+ files.someFile(function(file) {
46
+ var filePath = file.getPath(), filePathMetaJSONFilePath = (0, _filePath.isFilePathMetaJSONFilePath)(filePath);
47
+ if (filePathMetaJSONFilePath) {
48
+ metaJSONFile = file; ///
49
+ return true;
50
+ }
51
+ });
52
+ return metaJSONFile;
53
+ }
54
+ function florenceFilesFromFiles(files) {
55
+ var florenceFiles = files.reduceFile(function(florenceFiles, file) {
56
+ var filePath = file.getPath(), filePathFlorenceFilePath = (0, _filePath.isFilePathFlorenceFilePath)(filePath), fileFlorenceFile = filePathFlorenceFilePath; ///
57
+ if (fileFlorenceFile) {
58
+ var florenceFile = file; ///
59
+ florenceFiles.push(florenceFile);
60
+ }
61
+ return florenceFiles;
62
+ }, []);
63
+ return florenceFiles;
64
+ }
65
+ function customGrammarBNFFilesFromFiles(files) {
66
+ var customGrammarBNFFiles = files.reduceFile(function(customGrammarBNFFiles, file) {
67
+ var filePath = file.getPath(), filePathCustomGrammarBNFFilePath = (0, _filePath.isFilePathCustomGrammarBNFFilePath)(filePath), fileCustomGrammarBNFFile = filePathCustomGrammarBNFFilePath; ///
68
+ if (fileCustomGrammarBNFFile) {
69
+ var customGrammarBNFFile = file; ///
70
+ customGrammarBNFFiles.push(customGrammarBNFFile);
71
+ }
72
+ return customGrammarBNFFiles;
73
+ }, []);
74
+ return customGrammarBNFFiles;
75
+ }
76
+ function customGrammarPatternFilesFromFiles(files) {
77
+ var customGrammarPatternFiles = files.reduceFile(function(customGrammarPatternFiles, file) {
78
+ var filePath = file.getPath(), filePathCustomGrammarPatternFilePath = (0, _filePath.isFilePathCustomGrammarPatternFilePath)(filePath), fileCustomGrammarPatternFile = filePathCustomGrammarPatternFilePath; ///
79
+ if (fileCustomGrammarPatternFile) {
80
+ var customGrammarPatternFile = file; ///
81
+ customGrammarPatternFiles.push(customGrammarPatternFile);
82
+ }
83
+ return customGrammarPatternFiles;
84
+ }, []);
85
+ return customGrammarPatternFiles;
86
+ }
87
+ var _default = {
88
+ readmeFileFromFiles: readmeFileFromFiles,
89
+ metaJSONFileFromFiles: metaJSONFileFromFiles,
90
+ florenceFilesFromFiles: florenceFilesFromFiles,
91
+ customGrammarBNFFilesFromFiles: customGrammarBNFFilesFromFiles,
92
+ customGrammarPatternFilesFromFiles: customGrammarPatternFilesFromFiles
93
+ };
94
+
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvZmlsZXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGlzRmlsZVBhdGhSZWFkbWVGaWxlUGF0aCxcbiAgICAgICAgIGlzRmlsZVBhdGhGbG9yZW5jZUZpbGVQYXRoLFxuICAgICAgICAgaXNGaWxlUGF0aE1ldGFKU09ORmlsZVBhdGgsXG4gICAgICAgICBpc0ZpbGVQYXRoQ3VzdG9tR3JhbW1hckJORkZpbGVQYXRoLFxuICAgICAgICAgaXNGaWxlUGF0aEN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZVBhdGggfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2ZpbGVQYXRoXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiByZWFkbWVGaWxlRnJvbUZpbGVzKGZpbGVzKSB7XG4gIGxldCByZWFkbWVGaWxlID0gbnVsbDtcblxuICBmaWxlcy5zb21lRmlsZSgoZmlsZSkgPT4ge1xuICAgIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXG4gICAgICAgICAgZmlsZVBhdGhSZWFkbWVGaWxlUGF0aCA9IGlzRmlsZVBhdGhSZWFkbWVGaWxlUGF0aChmaWxlUGF0aCk7XG5cbiAgICBpZiAoZmlsZVBhdGhSZWFkbWVGaWxlUGF0aCkge1xuICAgICAgcmVhZG1lRmlsZSA9IGZpbGU7ICAvLy9cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gcmVhZG1lRmlsZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ldGFKU09ORmlsZUZyb21GaWxlcyhmaWxlcykge1xuICBsZXQgbWV0YUpTT05GaWxlID0gbnVsbDtcblxuICBmaWxlcy5zb21lRmlsZSgoZmlsZSkgPT4ge1xuICAgIGNvbnN0IGZpbGVQYXRoID0gZmlsZS5nZXRQYXRoKCksXG4gICAgICAgICAgZmlsZVBhdGhNZXRhSlNPTkZpbGVQYXRoID0gaXNGaWxlUGF0aE1ldGFKU09ORmlsZVBhdGgoZmlsZVBhdGgpO1xuXG4gICAgaWYgKGZpbGVQYXRoTWV0YUpTT05GaWxlUGF0aCkge1xuICAgICAgbWV0YUpTT05GaWxlID0gZmlsZTsgIC8vL1xuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBtZXRhSlNPTkZpbGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmbG9yZW5jZUZpbGVzRnJvbUZpbGVzKGZpbGVzKSB7XG4gIGNvbnN0IGZsb3JlbmNlRmlsZXMgPSBmaWxlcy5yZWR1Y2VGaWxlKChmbG9yZW5jZUZpbGVzLCBmaWxlKSA9PiB7XG4gICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBmaWxlLmdldFBhdGgoKSxcbiAgICAgICAgICAgICAgICBmaWxlUGF0aEZsb3JlbmNlRmlsZVBhdGggPSBpc0ZpbGVQYXRoRmxvcmVuY2VGaWxlUGF0aChmaWxlUGF0aCksXG4gICAgICAgICAgICAgICAgZmlsZUZsb3JlbmNlRmlsZSA9IGZpbGVQYXRoRmxvcmVuY2VGaWxlUGF0aDsgIC8vL1xuXG4gICAgICAgICAgaWYgKGZpbGVGbG9yZW5jZUZpbGUpIHtcbiAgICAgICAgICAgIGNvbnN0IGZsb3JlbmNlRmlsZSA9IGZpbGU7ICAvLy9cblxuICAgICAgICAgICAgZmxvcmVuY2VGaWxlcy5wdXNoKGZsb3JlbmNlRmlsZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIGZsb3JlbmNlRmlsZXM7XG4gICAgICAgIH0sIFtdKTtcblxuICByZXR1cm4gZmxvcmVuY2VGaWxlcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGN1c3RvbUdyYW1tYXJCTkZGaWxlc0Zyb21GaWxlcyhmaWxlcykge1xuICBjb25zdCBjdXN0b21HcmFtbWFyQk5GRmlsZXMgPSBmaWxlcy5yZWR1Y2VGaWxlKChjdXN0b21HcmFtbWFyQk5GRmlsZXMsIGZpbGUpID0+IHtcbiAgICAgICAgICBjb25zdCBmaWxlUGF0aCA9IGZpbGUuZ2V0UGF0aCgpLFxuICAgICAgICAgICAgICAgIGZpbGVQYXRoQ3VzdG9tR3JhbW1hckJORkZpbGVQYXRoID0gaXNGaWxlUGF0aEN1c3RvbUdyYW1tYXJCTkZGaWxlUGF0aChmaWxlUGF0aCksXG4gICAgICAgICAgICAgICAgZmlsZUN1c3RvbUdyYW1tYXJCTkZGaWxlID0gZmlsZVBhdGhDdXN0b21HcmFtbWFyQk5GRmlsZVBhdGg7ICAvLy9cblxuICAgICAgICAgIGlmIChmaWxlQ3VzdG9tR3JhbW1hckJORkZpbGUpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbUdyYW1tYXJCTkZGaWxlID0gZmlsZTsgIC8vL1xuXG4gICAgICAgICAgICBjdXN0b21HcmFtbWFyQk5GRmlsZXMucHVzaChjdXN0b21HcmFtbWFyQk5GRmlsZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIGN1c3RvbUdyYW1tYXJCTkZGaWxlcztcbiAgICAgICAgfSwgW10pO1xuXG4gIHJldHVybiBjdXN0b21HcmFtbWFyQk5GRmlsZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjdXN0b21HcmFtbWFyUGF0dGVybkZpbGVzRnJvbUZpbGVzKGZpbGVzKSB7XG4gIGNvbnN0IGN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZXMgPSBmaWxlcy5yZWR1Y2VGaWxlKChjdXN0b21HcmFtbWFyUGF0dGVybkZpbGVzLCBmaWxlKSA9PiB7XG4gICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBmaWxlLmdldFBhdGgoKSxcbiAgICAgICAgICAgICAgICBmaWxlUGF0aEN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZVBhdGggPSBpc0ZpbGVQYXRoQ3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlUGF0aChmaWxlUGF0aCksXG4gICAgICAgICAgICAgICAgZmlsZUN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZSA9IGZpbGVQYXRoQ3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlUGF0aDsgIC8vL1xuXG4gICAgICAgICAgaWYgKGZpbGVDdXN0b21HcmFtbWFyUGF0dGVybkZpbGUpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZSA9IGZpbGU7ICAvLy9cblxuICAgICAgICAgICAgY3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlcy5wdXNoKGN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIGN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZXM7XG4gICAgICAgIH0sIFtdKTtcblxuICByZXR1cm4gY3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlcztcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICByZWFkbWVGaWxlRnJvbUZpbGVzLFxuICBtZXRhSlNPTkZpbGVGcm9tRmlsZXMsXG4gIGZsb3JlbmNlRmlsZXNGcm9tRmlsZXMsXG4gIGN1c3RvbUdyYW1tYXJCTkZGaWxlc0Zyb21GaWxlcyxcbiAgY3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlc0Zyb21GaWxlc1xufTtcbiJdLCJuYW1lcyI6WyJyZWFkbWVGaWxlRnJvbUZpbGVzIiwibWV0YUpTT05GaWxlRnJvbUZpbGVzIiwiZmxvcmVuY2VGaWxlc0Zyb21GaWxlcyIsImN1c3RvbUdyYW1tYXJCTkZGaWxlc0Zyb21GaWxlcyIsImN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZXNGcm9tRmlsZXMiLCJmaWxlcyIsInJlYWRtZUZpbGUiLCJzb21lRmlsZSIsImZpbGUiLCJmaWxlUGF0aCIsImdldFBhdGgiLCJmaWxlUGF0aFJlYWRtZUZpbGVQYXRoIiwiaXNGaWxlUGF0aFJlYWRtZUZpbGVQYXRoIiwibWV0YUpTT05GaWxlIiwiZmlsZVBhdGhNZXRhSlNPTkZpbGVQYXRoIiwiaXNGaWxlUGF0aE1ldGFKU09ORmlsZVBhdGgiLCJmbG9yZW5jZUZpbGVzIiwicmVkdWNlRmlsZSIsImZpbGVQYXRoRmxvcmVuY2VGaWxlUGF0aCIsImlzRmlsZVBhdGhGbG9yZW5jZUZpbGVQYXRoIiwiZmlsZUZsb3JlbmNlRmlsZSIsImZsb3JlbmNlRmlsZSIsInB1c2giLCJjdXN0b21HcmFtbWFyQk5GRmlsZXMiLCJmaWxlUGF0aEN1c3RvbUdyYW1tYXJCTkZGaWxlUGF0aCIsImlzRmlsZVBhdGhDdXN0b21HcmFtbWFyQk5GRmlsZVBhdGgiLCJmaWxlQ3VzdG9tR3JhbW1hckJORkZpbGUiLCJjdXN0b21HcmFtbWFyQk5GRmlsZSIsImN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZXMiLCJmaWxlUGF0aEN1c3RvbUdyYW1tYXJQYXR0ZXJuRmlsZVBhdGgiLCJpc0ZpbGVQYXRoQ3VzdG9tR3JhbW1hclBhdHRlcm5GaWxlUGF0aCIsImZpbGVDdXN0b21HcmFtbWFyUGF0dGVybkZpbGUiLCJjdXN0b21HcmFtbWFyUGF0dGVybkZpbGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQVFnQkEsbUJBQW1CO2VBQW5CQTs7SUFpQkFDLHFCQUFxQjtlQUFyQkE7O0lBaUJBQyxzQkFBc0I7ZUFBdEJBOztJQWtCQUMsOEJBQThCO2VBQTlCQTs7SUFrQkFDLGtDQUFrQztlQUFsQ0E7O0lBa0JoQixPQU1FO2VBTkY7Ozt3QkExRnVEO0FBRWhELFNBQVNKLG9CQUFvQkssS0FBSyxFQUFFO0lBQ3pDLElBQUlDLGFBQWEsSUFBSTtJQUVyQkQsTUFBTUUsUUFBUSxDQUFDLFNBQUNDLE1BQVM7UUFDdkIsSUFBTUMsV0FBV0QsS0FBS0UsT0FBTyxJQUN2QkMseUJBQXlCQyxJQUFBQSxrQ0FBd0IsRUFBQ0g7UUFFeEQsSUFBSUUsd0JBQXdCO1lBQzFCTCxhQUFhRSxNQUFPLEdBQUc7WUFFdkIsT0FBTyxJQUFJO1FBQ2IsQ0FBQztJQUNIO0lBRUEsT0FBT0Y7QUFDVDtBQUVPLFNBQVNMLHNCQUFzQkksS0FBSyxFQUFFO0lBQzNDLElBQUlRLGVBQWUsSUFBSTtJQUV2QlIsTUFBTUUsUUFBUSxDQUFDLFNBQUNDLE1BQVM7UUFDdkIsSUFBTUMsV0FBV0QsS0FBS0UsT0FBTyxJQUN2QkksMkJBQTJCQyxJQUFBQSxvQ0FBMEIsRUFBQ047UUFFNUQsSUFBSUssMEJBQTBCO1lBQzVCRCxlQUFlTCxNQUFPLEdBQUc7WUFFekIsT0FBTyxJQUFJO1FBQ2IsQ0FBQztJQUNIO0lBRUEsT0FBT0s7QUFDVDtBQUVPLFNBQVNYLHVCQUF1QkcsS0FBSyxFQUFFO0lBQzVDLElBQU1XLGdCQUFnQlgsTUFBTVksVUFBVSxDQUFDLFNBQUNELGVBQWVSLE1BQVM7UUFDeEQsSUFBTUMsV0FBV0QsS0FBS0UsT0FBTyxJQUN2QlEsMkJBQTJCQyxJQUFBQSxvQ0FBMEIsRUFBQ1YsV0FDdERXLG1CQUFtQkYsMEJBQTJCLEdBQUc7UUFFdkQsSUFBSUUsa0JBQWtCO1lBQ3BCLElBQU1DLGVBQWViLE1BQU8sR0FBRztZQUUvQlEsY0FBY00sSUFBSSxDQUFDRDtRQUNyQixDQUFDO1FBRUQsT0FBT0w7SUFDVCxHQUFHLEVBQUU7SUFFWCxPQUFPQTtBQUNUO0FBRU8sU0FBU2IsK0JBQStCRSxLQUFLLEVBQUU7SUFDcEQsSUFBTWtCLHdCQUF3QmxCLE1BQU1ZLFVBQVUsQ0FBQyxTQUFDTSx1QkFBdUJmLE1BQVM7UUFDeEUsSUFBTUMsV0FBV0QsS0FBS0UsT0FBTyxJQUN2QmMsbUNBQW1DQyxJQUFBQSw0Q0FBa0MsRUFBQ2hCLFdBQ3RFaUIsMkJBQTJCRixrQ0FBbUMsR0FBRztRQUV2RSxJQUFJRSwwQkFBMEI7WUFDNUIsSUFBTUMsdUJBQXVCbkIsTUFBTyxHQUFHO1lBRXZDZSxzQkFBc0JELElBQUksQ0FBQ0s7UUFDN0IsQ0FBQztRQUVELE9BQU9KO0lBQ1QsR0FBRyxFQUFFO0lBRVgsT0FBT0E7QUFDVDtBQUVPLFNBQVNuQixtQ0FBbUNDLEtBQUssRUFBRTtJQUN4RCxJQUFNdUIsNEJBQTRCdkIsTUFBTVksVUFBVSxDQUFDLFNBQUNXLDJCQUEyQnBCLE1BQVM7UUFDaEYsSUFBTUMsV0FBV0QsS0FBS0UsT0FBTyxJQUN2Qm1CLHVDQUF1Q0MsSUFBQUEsZ0RBQXNDLEVBQUNyQixXQUM5RXNCLCtCQUErQkYsc0NBQXVDLEdBQUc7UUFFL0UsSUFBSUUsOEJBQThCO1lBQ2hDLElBQU1DLDJCQUEyQnhCLE1BQU8sR0FBRztZQUUzQ29CLDBCQUEwQk4sSUFBSSxDQUFDVTtRQUNqQyxDQUFDO1FBRUQsT0FBT0o7SUFDVCxHQUFHLEVBQUU7SUFFWCxPQUFPQTtBQUNUO0lBRUEsV0FBZTtJQUNiNUIscUJBQUFBO0lBQ0FDLHVCQUFBQTtJQUNBQyx3QkFBQUE7SUFDQUMsZ0NBQUFBO0lBQ0FDLG9DQUFBQTtBQUNGIn0=
@@ -0,0 +1,80 @@
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
+ versionFromNode: function() {
13
+ return versionFromNode;
14
+ },
15
+ repositoryFromNode: function() {
16
+ return repositoryFromNode;
17
+ },
18
+ dependenciesFromNode: function() {
19
+ return dependenciesFromNode;
20
+ },
21
+ dependencyNamesFromNode: function() {
22
+ return dependencyNamesFromNode;
23
+ },
24
+ default: function() {
25
+ return _default;
26
+ }
27
+ });
28
+ var _version = /*#__PURE__*/ _interopRequireDefault(require("../version"));
29
+ var _dependency = /*#__PURE__*/ _interopRequireDefault(require("../dependency"));
30
+ var _shortenedVersion = /*#__PURE__*/ _interopRequireDefault(require("../shortenedVersion"));
31
+ var _content = require("../utilities/content");
32
+ var _query = require("../utilities/query");
33
+ function _interopRequireDefault(obj) {
34
+ return obj && obj.__esModule ? obj : {
35
+ default: obj
36
+ };
37
+ }
38
+ var dependencyNodesQuery = (0, _query.nodesQuery)("//dependencies/dependency"), repositoryTerminalNodeQuery = (0, _query.nodeQuery)("//repository!/@*!"), versionNumberTerminalNodeQuery = (0, _query.nodeQuery)("//version!/versionNumber!/@*!"), dependencyNameTerminalNodeQuery = (0, _query.nodeQuery)("/dependency/name!/@*!"), shortenedVersionNumberTerminalNodeQuery = (0, _query.nodeQuery)("//dependency/shortenedVersionNumber/@*!");
39
+ function versionFromNode(node) {
40
+ var version = null;
41
+ if (node !== null) {
42
+ var versionNumberTerminalNode = versionNumberTerminalNodeQuery(node), versionNumberTerminalNodeContent = versionNumberTerminalNode.getContent(), versionNumber = (0, _content.trimDoubleQuotes)(versionNumberTerminalNodeContent); //
43
+ version = _version.default.fromVersionNumber(versionNumber);
44
+ }
45
+ return version;
46
+ }
47
+ function repositoryFromNode(node) {
48
+ var repository = null;
49
+ if (node !== null) {
50
+ var repositoryTerminalNode = repositoryTerminalNodeQuery(node), repositoryTerminalNodeContent = repositoryTerminalNode.getContent();
51
+ repository = (0, _content.trimDoubleQuotes)(repositoryTerminalNodeContent); //
52
+ }
53
+ return repository;
54
+ }
55
+ function dependenciesFromNode(node) {
56
+ var dependencies = [];
57
+ if (node !== null) {
58
+ var dependencyNodes = dependencyNodesQuery(node);
59
+ dependencyNodes.forEach(function(dependencyNode) {
60
+ var dependencyNameTerminalNode = dependencyNameTerminalNodeQuery(dependencyNode), shortenedVersionNumberTerminalNode = shortenedVersionNumberTerminalNodeQuery(dependencyNode), dependencyNameTerminalNodeContent = dependencyNameTerminalNode.getContent(), shortenedVersionNumberTerminalNodeContent = shortenedVersionNumberTerminalNode.getContent(), string = (0, _content.trimDoubleQuotes)(shortenedVersionNumberTerminalNodeContent), name = (0, _content.trimDoubleQuotes)(dependencyNameTerminalNodeContent), shortenedVersion = _shortenedVersion.default.fromString(string), dependency = _dependency.default.fromNameAndShortenedVersion(name, shortenedVersion);
61
+ dependencies.push(dependency);
62
+ });
63
+ }
64
+ return dependencies;
65
+ }
66
+ function dependencyNamesFromNode(node) {
67
+ var dependencies = this.dependenciesFromNode(node), dependencyNames = dependencies.map(function(dependency) {
68
+ var dependencyName = dependency.getName();
69
+ return dependencyName;
70
+ });
71
+ return dependencyNames;
72
+ }
73
+ var _default = {
74
+ versionFromNode: versionFromNode,
75
+ repositoryFromNode: repositoryFromNode,
76
+ dependenciesFromNode: dependenciesFromNode,
77
+ dependencyNamesFromNode: dependencyNamesFromNode
78
+ };
79
+
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbWV0YUpTT04uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBWZXJzaW9uIGZyb20gXCIuLi92ZXJzaW9uXCI7XG5pbXBvcnQgRGVwZW5kZW5jeSBmcm9tIFwiLi4vZGVwZW5kZW5jeVwiO1xuaW1wb3J0IFNob3J0ZW5lZFZlcnNpb24gZnJvbSBcIi4uL3Nob3J0ZW5lZFZlcnNpb25cIjtcblxuaW1wb3J0IHsgdHJpbURvdWJsZVF1b3RlcyB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGVudFwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBkZXBlbmRlbmN5Tm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvL2RlcGVuZGVuY2llcy9kZXBlbmRlbmN5XCIpLFxuICAgICAgcmVwb3NpdG9yeVRlcm1pbmFsTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiLy9yZXBvc2l0b3J5IS9AKiFcIiksXG4gICAgICB2ZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvL3ZlcnNpb24hL3ZlcnNpb25OdW1iZXIhL0AqIVwiKSxcbiAgICAgIGRlcGVuZGVuY3lOYW1lVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZGVwZW5kZW5jeS9uYW1lIS9AKiFcIiksXG4gICAgICBzaG9ydGVuZWRWZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvL2RlcGVuZGVuY3kvc2hvcnRlbmVkVmVyc2lvbk51bWJlci9AKiFcIik7XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJzaW9uRnJvbU5vZGUobm9kZSkge1xuICBsZXQgdmVyc2lvbiA9IG51bGw7XG5cbiAgaWYgKG5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCB2ZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlID0gdmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZVF1ZXJ5KG5vZGUpLFxuICAgICAgICAgIHZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGVDb250ZW50ID0gdmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgICAgdmVyc2lvbk51bWJlciA9IHRyaW1Eb3VibGVRdW90ZXModmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZUNvbnRlbnQpOyAvL1xuXG4gICAgdmVyc2lvbiA9IFZlcnNpb24uZnJvbVZlcnNpb25OdW1iZXIodmVyc2lvbk51bWJlcik7XG4gIH1cblxuICByZXR1cm4gdmVyc2lvbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcG9zaXRvcnlGcm9tTm9kZShub2RlKSB7XG4gIGxldCByZXBvc2l0b3J5ID0gbnVsbDtcblxuICBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHJlcG9zaXRvcnlUZXJtaW5hbE5vZGUgPSByZXBvc2l0b3J5VGVybWluYWxOb2RlUXVlcnkobm9kZSksXG4gICAgICAgICAgcmVwb3NpdG9yeVRlcm1pbmFsTm9kZUNvbnRlbnQgPSByZXBvc2l0b3J5VGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgIHJlcG9zaXRvcnkgPSB0cmltRG91YmxlUXVvdGVzKHJlcG9zaXRvcnlUZXJtaW5hbE5vZGVDb250ZW50KTsgLy9cbiAgfVxuXG4gIHJldHVybiByZXBvc2l0b3J5O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVwZW5kZW5jaWVzRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBkZXBlbmRlbmNpZXMgPSBbXTtcblxuICBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGRlcGVuZGVuY3lOb2RlcyA9IGRlcGVuZGVuY3lOb2Rlc1F1ZXJ5KG5vZGUpO1xuXG4gICAgZGVwZW5kZW5jeU5vZGVzLmZvckVhY2goKGRlcGVuZGVuY3lOb2RlKSA9PiB7XG4gICAgICBjb25zdCBkZXBlbmRlbmN5TmFtZVRlcm1pbmFsTm9kZSA9IGRlcGVuZGVuY3lOYW1lVGVybWluYWxOb2RlUXVlcnkoZGVwZW5kZW5jeU5vZGUpLFxuICAgICAgICAgICAgc2hvcnRlbmVkVmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZSA9IHNob3J0ZW5lZFZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGVRdWVyeShkZXBlbmRlbmN5Tm9kZSksXG4gICAgICAgICAgICBkZXBlbmRlbmN5TmFtZVRlcm1pbmFsTm9kZUNvbnRlbnQgPSBkZXBlbmRlbmN5TmFtZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgICAgICBzaG9ydGVuZWRWZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlQ29udGVudCA9IHNob3J0ZW5lZFZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICAgICAgc3RyaW5nID0gdHJpbURvdWJsZVF1b3RlcyhzaG9ydGVuZWRWZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlQ29udGVudCksICAvLy9cbiAgICAgICAgICAgIG5hbWUgPSB0cmltRG91YmxlUXVvdGVzKGRlcGVuZGVuY3lOYW1lVGVybWluYWxOb2RlQ29udGVudCksLy8vXG4gICAgICAgICAgICBzaG9ydGVuZWRWZXJzaW9uID0gU2hvcnRlbmVkVmVyc2lvbi5mcm9tU3RyaW5nKHN0cmluZyksXG4gICAgICAgICAgICBkZXBlbmRlbmN5ID0gRGVwZW5kZW5jeS5mcm9tTmFtZUFuZFNob3J0ZW5lZFZlcnNpb24obmFtZSwgc2hvcnRlbmVkVmVyc2lvbik7XG5cbiAgICAgIGRlcGVuZGVuY2llcy5wdXNoKGRlcGVuZGVuY3kpO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGRlcGVuZGVuY2llcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlcGVuZGVuY3lOYW1lc0Zyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgZGVwZW5kZW5jaWVzID0gdGhpcy5kZXBlbmRlbmNpZXNGcm9tTm9kZShub2RlKSxcbiAgICAgICAgZGVwZW5kZW5jeU5hbWVzID0gZGVwZW5kZW5jaWVzLm1hcCgoZGVwZW5kZW5jeSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCk7XG5cbiAgICAgICAgICByZXR1cm4gZGVwZW5kZW5jeU5hbWU7XG4gICAgICAgIH0pXG5cbiAgcmV0dXJuIGRlcGVuZGVuY3lOYW1lcztcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICB2ZXJzaW9uRnJvbU5vZGUsXG4gIHJlcG9zaXRvcnlGcm9tTm9kZSxcbiAgZGVwZW5kZW5jaWVzRnJvbU5vZGUsXG4gIGRlcGVuZGVuY3lOYW1lc0Zyb21Ob2RlXG59O1xuIl0sIm5hbWVzIjpbInZlcnNpb25Gcm9tTm9kZSIsInJlcG9zaXRvcnlGcm9tTm9kZSIsImRlcGVuZGVuY2llc0Zyb21Ob2RlIiwiZGVwZW5kZW5jeU5hbWVzRnJvbU5vZGUiLCJkZXBlbmRlbmN5Tm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJyZXBvc2l0b3J5VGVybWluYWxOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ2ZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlUXVlcnkiLCJkZXBlbmRlbmN5TmFtZVRlcm1pbmFsTm9kZVF1ZXJ5Iiwic2hvcnRlbmVkVmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZVF1ZXJ5Iiwibm9kZSIsInZlcnNpb24iLCJ2ZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlIiwidmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZUNvbnRlbnQiLCJnZXRDb250ZW50IiwidmVyc2lvbk51bWJlciIsInRyaW1Eb3VibGVRdW90ZXMiLCJWZXJzaW9uIiwiZnJvbVZlcnNpb25OdW1iZXIiLCJyZXBvc2l0b3J5IiwicmVwb3NpdG9yeVRlcm1pbmFsTm9kZSIsInJlcG9zaXRvcnlUZXJtaW5hbE5vZGVDb250ZW50IiwiZGVwZW5kZW5jaWVzIiwiZGVwZW5kZW5jeU5vZGVzIiwiZm9yRWFjaCIsImRlcGVuZGVuY3lOb2RlIiwiZGVwZW5kZW5jeU5hbWVUZXJtaW5hbE5vZGUiLCJzaG9ydGVuZWRWZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlIiwiZGVwZW5kZW5jeU5hbWVUZXJtaW5hbE5vZGVDb250ZW50Iiwic2hvcnRlbmVkVmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZUNvbnRlbnQiLCJzdHJpbmciLCJuYW1lIiwic2hvcnRlbmVkVmVyc2lvbiIsIlNob3J0ZW5lZFZlcnNpb24iLCJmcm9tU3RyaW5nIiwiZGVwZW5kZW5jeSIsIkRlcGVuZGVuY3kiLCJmcm9tTmFtZUFuZFNob3J0ZW5lZFZlcnNpb24iLCJwdXNoIiwiZGVwZW5kZW5jeU5hbWVzIiwibWFwIiwiZGVwZW5kZW5jeU5hbWUiLCJnZXROYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFlZ0JBLGVBQWU7ZUFBZkE7O0lBY0FDLGtCQUFrQjtlQUFsQkE7O0lBYUFDLG9CQUFvQjtlQUFwQkE7O0lBdUJBQyx1QkFBdUI7ZUFBdkJBOztJQVdoQixPQUtFO2VBTEY7Ozs0REExRW9COytEQUNHO3FFQUNNO3VCQUVJO3FCQUNLOzs7Ozs7QUFFdEMsSUFBTUMsdUJBQXVCQyxJQUFBQSxpQkFBVSxFQUFDLDhCQUNsQ0MsOEJBQThCQyxJQUFBQSxnQkFBUyxFQUFDLHNCQUN4Q0MsaUNBQWlDRCxJQUFBQSxnQkFBUyxFQUFDLGtDQUMzQ0Usa0NBQWtDRixJQUFBQSxnQkFBUyxFQUFDLDBCQUM1Q0csMENBQTBDSCxJQUFBQSxnQkFBUyxFQUFDO0FBRW5ELFNBQVNQLGdCQUFnQlcsSUFBSSxFQUFFO0lBQ3BDLElBQUlDLFVBQVUsSUFBSTtJQUVsQixJQUFJRCxTQUFTLElBQUksRUFBRTtRQUNqQixJQUFNRSw0QkFBNEJMLCtCQUErQkcsT0FDM0RHLG1DQUFtQ0QsMEJBQTBCRSxVQUFVLElBQ3ZFQyxnQkFBZ0JDLElBQUFBLHlCQUFnQixFQUFDSCxtQ0FBbUMsRUFBRTtRQUU1RUYsVUFBVU0sZ0JBQU8sQ0FBQ0MsaUJBQWlCLENBQUNIO0lBQ3RDLENBQUM7SUFFRCxPQUFPSjtBQUNUO0FBRU8sU0FBU1gsbUJBQW1CVSxJQUFJLEVBQUU7SUFDdkMsSUFBSVMsYUFBYSxJQUFJO0lBRXJCLElBQUlULFNBQVMsSUFBSSxFQUFFO1FBQ2pCLElBQU1VLHlCQUF5QmYsNEJBQTRCSyxPQUNyRFcsZ0NBQWdDRCx1QkFBdUJOLFVBQVU7UUFFdkVLLGFBQWFILElBQUFBLHlCQUFnQixFQUFDSyxnQ0FBZ0MsRUFBRTtJQUNsRSxDQUFDO0lBRUQsT0FBT0Y7QUFDVDtBQUVPLFNBQVNsQixxQkFBcUJTLElBQUksRUFBRTtJQUN6QyxJQUFNWSxlQUFlLEVBQUU7SUFFdkIsSUFBSVosU0FBUyxJQUFJLEVBQUU7UUFDakIsSUFBTWEsa0JBQWtCcEIscUJBQXFCTztRQUU3Q2EsZ0JBQWdCQyxPQUFPLENBQUMsU0FBQ0MsZ0JBQW1CO1lBQzFDLElBQU1DLDZCQUE2QmxCLGdDQUFnQ2lCLGlCQUM3REUscUNBQXFDbEIsd0NBQXdDZ0IsaUJBQzdFRyxvQ0FBb0NGLDJCQUEyQlosVUFBVSxJQUN6RWUsNENBQTRDRixtQ0FBbUNiLFVBQVUsSUFDekZnQixTQUFTZCxJQUFBQSx5QkFBZ0IsRUFBQ2EsNENBQzFCRSxPQUFPZixJQUFBQSx5QkFBZ0IsRUFBQ1ksb0NBQ3hCSSxtQkFBbUJDLHlCQUFnQixDQUFDQyxVQUFVLENBQUNKLFNBQy9DSyxhQUFhQyxtQkFBVSxDQUFDQywyQkFBMkIsQ0FBQ04sTUFBTUM7WUFFaEVWLGFBQWFnQixJQUFJLENBQUNIO1FBQ3BCO0lBQ0YsQ0FBQztJQUVELE9BQU9iO0FBQ1Q7QUFFTyxTQUFTcEIsd0JBQXdCUSxJQUFJLEVBQUU7SUFDNUMsSUFBTVksZUFBZSxJQUFJLENBQUNyQixvQkFBb0IsQ0FBQ1MsT0FDekM2QixrQkFBa0JqQixhQUFha0IsR0FBRyxDQUFDLFNBQUNMLFlBQWU7UUFDakQsSUFBTU0saUJBQWlCTixXQUFXTyxPQUFPO1FBRXpDLE9BQU9EO0lBQ1Q7SUFFTixPQUFPRjtBQUNUO0lBRUEsV0FBZTtJQUNieEMsaUJBQUFBO0lBQ0FDLG9CQUFBQTtJQUNBQyxzQkFBQUE7SUFDQUMseUJBQUFBO0FBQ0YifQ==
@@ -2,16 +2,37 @@
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
+ fileNameFromFilePath: function() {
16
+ return fileNameFromFilePath;
17
+ },
18
+ default: function() {
19
+ return _default;
9
20
  }
10
21
  });
22
+ var _necessary = require("necessary");
11
23
  var hiddenNameRegularExpression = /^\..+/;
24
+ var bottommostNameFromPath = _necessary.pathUtilities.bottommostNameFromPath;
12
25
  function isNameHiddenName(name) {
13
26
  var nameHiddenName = hiddenNameRegularExpression.test(name);
14
27
  return nameHiddenName;
15
28
  }
29
+ function fileNameFromFilePath(filePath) {
30
+ var path = filePath, bottommostName = bottommostNameFromPath(path), fileName = bottommostName; //
31
+ return fileName;
32
+ }
33
+ var _default = {
34
+ isNameHiddenName: isNameHiddenName,
35
+ fileNameFromFilePath: fileNameFromFilePath
36
+ };
16
37
 
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuY29uc3QgaGlkZGVuTmFtZVJlZ3VsYXJFeHByZXNzaW9uID0gL15cXC4uKy87XG5cbmV4cG9ydCBmdW5jdGlvbiBpc05hbWVIaWRkZW5OYW1lKG5hbWUpIHtcbiAgY29uc3QgbmFtZUhpZGRlbk5hbWUgPSBoaWRkZW5OYW1lUmVndWxhckV4cHJlc3Npb24udGVzdChuYW1lKTtcblxuICByZXR1cm4gbmFtZUhpZGRlbk5hbWU7XG59XG4iXSwibmFtZXMiOlsiaXNOYW1lSGlkZGVuTmFtZSIsImhpZGRlbk5hbWVSZWd1bGFyRXhwcmVzc2lvbiIsIm5hbWUiLCJuYW1lSGlkZGVuTmFtZSIsInRlc3QiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUlnQkE7OztlQUFBQTs7O0FBRmhCLElBQU1DLDhCQUE4QjtBQUU3QixTQUFTRCxpQkFBaUJFLElBQUksRUFBRTtJQUNyQyxJQUFNQyxpQkFBaUJGLDRCQUE0QkcsSUFBSSxDQUFDRjtJQUV4RCxPQUFPQztBQUNUIn0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcGF0aFV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgaGlkZGVuTmFtZVJlZ3VsYXJFeHByZXNzaW9uID0gL15cXC4uKy87XG5cbmNvbnN0IHsgYm90dG9tbW9zdE5hbWVGcm9tUGF0aCB9ID0gcGF0aFV0aWxpdGllcztcblxuZXhwb3J0IGZ1bmN0aW9uIGlzTmFtZUhpZGRlbk5hbWUobmFtZSkge1xuICBjb25zdCBuYW1lSGlkZGVuTmFtZSA9IGhpZGRlbk5hbWVSZWd1bGFyRXhwcmVzc2lvbi50ZXN0KG5hbWUpO1xuXG4gIHJldHVybiBuYW1lSGlkZGVuTmFtZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbGVOYW1lRnJvbUZpbGVQYXRoKGZpbGVQYXRoKSB7XG4gIGNvbnN0IHBhdGggPSBmaWxlUGF0aCwgIC8vL1xuICAgICAgICBib3R0b21tb3N0TmFtZSA9IGJvdHRvbW1vc3ROYW1lRnJvbVBhdGgocGF0aCksXG4gICAgICAgIGZpbGVOYW1lID0gYm90dG9tbW9zdE5hbWU7ICAvL1xuXG4gIHJldHVybiBmaWxlTmFtZTtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBpc05hbWVIaWRkZW5OYW1lLFxuICBmaWxlTmFtZUZyb21GaWxlUGF0aFxufTtcbiJdLCJuYW1lcyI6WyJpc05hbWVIaWRkZW5OYW1lIiwiZmlsZU5hbWVGcm9tRmlsZVBhdGgiLCJoaWRkZW5OYW1lUmVndWxhckV4cHJlc3Npb24iLCJib3R0b21tb3N0TmFtZUZyb21QYXRoIiwicGF0aFV0aWxpdGllcyIsIm5hbWUiLCJuYW1lSGlkZGVuTmFtZSIsInRlc3QiLCJmaWxlUGF0aCIsInBhdGgiLCJib3R0b21tb3N0TmFtZSIsImZpbGVOYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFRZ0JBLGdCQUFnQjtlQUFoQkE7O0lBTUFDLG9CQUFvQjtlQUFwQkE7O0lBUWhCLE9BR0U7ZUFIRjs7O3lCQXBCOEI7QUFFOUIsSUFBTUMsOEJBQThCO0FBRXBDLElBQU0sQUFBRUMseUJBQTJCQyx3QkFBYSxDQUF4Q0Q7QUFFRCxTQUFTSCxpQkFBaUJLLElBQUksRUFBRTtJQUNyQyxJQUFNQyxpQkFBaUJKLDRCQUE0QkssSUFBSSxDQUFDRjtJQUV4RCxPQUFPQztBQUNUO0FBRU8sU0FBU0wscUJBQXFCTyxRQUFRLEVBQUU7SUFDN0MsSUFBTUMsT0FBT0QsVUFDUEUsaUJBQWlCUCx1QkFBdUJNLE9BQ3hDRSxXQUFXRCxnQkFBaUIsRUFBRTtJQUVwQyxPQUFPQztBQUNUO0lBRUEsV0FBZTtJQUNiWCxrQkFBQUE7SUFDQUMsc0JBQUFBO0FBQ0YifQ==