occam-entities 1.0.1

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 (62) hide show
  1. package/.swcrc +5 -0
  2. package/README.md +78 -0
  3. package/lib/constants.js +26 -0
  4. package/lib/dependencies.js +114 -0
  5. package/lib/dependency.js +68 -0
  6. package/lib/directory.js +107 -0
  7. package/lib/entries.js +251 -0
  8. package/lib/file.js +155 -0
  9. package/lib/fileNames.js +59 -0
  10. package/lib/files.js +121 -0
  11. package/lib/index.js +79 -0
  12. package/lib/mixins/bnf.js +47 -0
  13. package/lib/mixins/entries.js +103 -0
  14. package/lib/mixins/files.js +41 -0
  15. package/lib/mixins/metaJSON.js +36 -0
  16. package/lib/mixins/pattern.js +47 -0
  17. package/lib/multiplers.js +26 -0
  18. package/lib/project.js +98 -0
  19. package/lib/projects.js +112 -0
  20. package/lib/release.js +148 -0
  21. package/lib/releases.js +112 -0
  22. package/lib/shortenedVersion.js +105 -0
  23. package/lib/types.js +22 -0
  24. package/lib/utilities/content.js +34 -0
  25. package/lib/utilities/filePath.js +63 -0
  26. package/lib/utilities/files.js +85 -0
  27. package/lib/utilities/metaJSON.js +127 -0
  28. package/lib/utilities/name.js +18 -0
  29. package/lib/utilities/query.js +41 -0
  30. package/lib/utilities/version.js +71 -0
  31. package/lib/version.js +160 -0
  32. package/license.txt +48 -0
  33. package/package.json +34 -0
  34. package/src/constants.js +5 -0
  35. package/src/dependencies.js +75 -0
  36. package/src/dependency.js +29 -0
  37. package/src/directory.js +60 -0
  38. package/src/entries.js +217 -0
  39. package/src/file.js +107 -0
  40. package/src/fileNames.js +22 -0
  41. package/src/files.js +78 -0
  42. package/src/index.js +17 -0
  43. package/src/mixins/bnf.js +59 -0
  44. package/src/mixins/entries.js +73 -0
  45. package/src/mixins/files.js +52 -0
  46. package/src/mixins/metaJSON.js +48 -0
  47. package/src/mixins/pattern.js +59 -0
  48. package/src/multiplers.js +5 -0
  49. package/src/project.js +63 -0
  50. package/src/projects.js +66 -0
  51. package/src/release.js +145 -0
  52. package/src/releases.js +66 -0
  53. package/src/shortenedVersion.js +71 -0
  54. package/src/types.js +4 -0
  55. package/src/utilities/content.js +12 -0
  56. package/src/utilities/filePath.js +36 -0
  57. package/src/utilities/files.js +95 -0
  58. package/src/utilities/metaJSON.js +149 -0
  59. package/src/utilities/name.js +13 -0
  60. package/src/utilities/query.js +31 -0
  61. package/src/utilities/version.js +70 -0
  62. package/src/version.js +123 -0
@@ -0,0 +1,127 @@
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
+ default: function() {
13
+ return _default;
14
+ },
15
+ dependenciesFromNode: function() {
16
+ return dependenciesFromNode;
17
+ },
18
+ dependencyNamesFromNode: function() {
19
+ return dependencyNamesFromNode;
20
+ },
21
+ isMetaJSONFileValid: function() {
22
+ return isMetaJSONFileValid;
23
+ },
24
+ metaJSONNodeFromMetaJSONFile: function() {
25
+ return metaJSONNodeFromMetaJSONFile;
26
+ },
27
+ repositoryFromNode: function() {
28
+ return repositoryFromNode;
29
+ },
30
+ updateMetaJSONFileVersion: function() {
31
+ return updateMetaJSONFileVersion;
32
+ },
33
+ versionFromNode: function() {
34
+ return versionFromNode;
35
+ }
36
+ });
37
+ var _occamgrammars = require("occam-grammars");
38
+ var _version = /*#__PURE__*/ _interop_require_default(require("../version"));
39
+ var _dependency = /*#__PURE__*/ _interop_require_default(require("../dependency"));
40
+ var _dependencies = /*#__PURE__*/ _interop_require_default(require("../dependencies"));
41
+ var _shortenedVersion = /*#__PURE__*/ _interop_require_default(require("../shortenedVersion"));
42
+ var _constants = require("../constants");
43
+ var _content = require("../utilities/content");
44
+ var _query = require("../utilities/query");
45
+ function _interop_require_default(obj) {
46
+ return obj && obj.__esModule ? obj : {
47
+ default: obj
48
+ };
49
+ }
50
+ var metaJSONLexer = _occamgrammars.MetaJSONLexer.fromNothing(), metaJSONParser = _occamgrammars.MetaJSONParser.fromNothing(), errorNodesQuery = (0, _query.nodesQuery)("//error"), 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/@*!");
51
+ function versionFromNode(node) {
52
+ var version = null;
53
+ if (node !== null) {
54
+ var versionNumberTerminalNode = versionNumberTerminalNodeQuery(node), versionNumberTerminalNodeContent = versionNumberTerminalNode.getContent(), string = (0, _content.trimDoubleQuotes)(versionNumberTerminalNodeContent); //
55
+ version = _version.default.fromString(string);
56
+ }
57
+ return version;
58
+ }
59
+ function repositoryFromNode(node) {
60
+ var repository = null;
61
+ if (node !== null) {
62
+ var repositoryTerminalNode = repositoryTerminalNodeQuery(node), repositoryTerminalNodeContent = repositoryTerminalNode.getContent();
63
+ repository = (0, _content.trimDoubleQuotes)(repositoryTerminalNodeContent); //
64
+ }
65
+ return repository;
66
+ }
67
+ function isMetaJSONFileValid(metaJSONFile) {
68
+ var metaJSONFileValid = false;
69
+ var metaJSONNode = metaJSONNodeFromMetaJSONFile(metaJSONFile);
70
+ if (metaJSONNode !== null) {
71
+ var node = metaJSONNode, errorNodes = errorNodesQuery(node), errorNodesLength = errorNodes.length;
72
+ if (errorNodesLength === 0) {
73
+ metaJSONFileValid = true;
74
+ }
75
+ }
76
+ return metaJSONFileValid;
77
+ }
78
+ function dependenciesFromNode(node) {
79
+ var dependencies = _dependencies.default.fromNothing();
80
+ if (node !== null) {
81
+ var dependencyNodes = dependencyNodesQuery(node);
82
+ dependencyNodes.forEach(function(dependencyNode) {
83
+ 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);
84
+ dependencies.addDependency(dependency);
85
+ });
86
+ }
87
+ return dependencies;
88
+ }
89
+ function dependencyNamesFromNode(node) {
90
+ var dependencies = dependenciesFromNode(node), dependencyNames = dependencies.mapDependency(function(dependency) {
91
+ var dependencyName = dependency.getName();
92
+ return dependencyName;
93
+ });
94
+ return dependencyNames;
95
+ }
96
+ function updateMetaJSONFileVersion(metaJSONFile, version) {
97
+ var metaJSONNode = metaJSONNodeFromMetaJSONFile(metaJSONFile), node = metaJSONNode, repository = repositoryFromNode(node);
98
+ var dependencies = dependenciesFromNode(node);
99
+ var string = version.toString(), dependenciesJSON = dependencies.toJSON();
100
+ version = string; ///
101
+ dependencies = dependenciesJSON; ///
102
+ var metaJSON = {
103
+ version: version,
104
+ repository: repository,
105
+ dependencies: dependencies
106
+ }, metaJSONString = JSON.stringify(metaJSON, null, _constants.DOUBLE_SPACE), metaJSONFileContent = metaJSONString; ///
107
+ metaJSONFile.setContent(metaJSONFileContent);
108
+ }
109
+ function metaJSONNodeFromMetaJSONFile(metaJSONFile) {
110
+ var metaJSONNode = null;
111
+ if (metaJSONFile !== null) {
112
+ var content = metaJSONFile.getContent(), tokens = metaJSONLexer.tokenise(content), node = metaJSONParser.parse(tokens);
113
+ metaJSONNode = node; ///
114
+ }
115
+ return metaJSONNode;
116
+ }
117
+ var _default = {
118
+ versionFromNode: versionFromNode,
119
+ repositoryFromNode: repositoryFromNode,
120
+ isMetaJSONFileValid: isMetaJSONFileValid,
121
+ dependenciesFromNode: dependenciesFromNode,
122
+ dependencyNamesFromNode: dependencyNamesFromNode,
123
+ updateMetaJSONFileVersion: updateMetaJSONFileVersion,
124
+ metaJSONNodeFromMetaJSONFile: metaJSONNodeFromMetaJSONFile
125
+ };
126
+
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbWV0YUpTT04uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE1ldGFKU09OTGV4ZXIsIE1ldGFKU09OUGFyc2VyIH0gZnJvbSBcIm9jY2FtLWdyYW1tYXJzXCI7XG5cbmltcG9ydCBWZXJzaW9uIGZyb20gXCIuLi92ZXJzaW9uXCI7XG5pbXBvcnQgRGVwZW5kZW5jeSBmcm9tIFwiLi4vZGVwZW5kZW5jeVwiO1xuaW1wb3J0IERlcGVuZGVuY2llcyBmcm9tIFwiLi4vZGVwZW5kZW5jaWVzXCI7XG5pbXBvcnQgU2hvcnRlbmVkVmVyc2lvbiBmcm9tIFwiLi4vc2hvcnRlbmVkVmVyc2lvblwiO1xuXG5pbXBvcnQgeyBET1VCTEVfU1BBQ0UgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyB0cmltRG91YmxlUXVvdGVzIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250ZW50XCI7XG5pbXBvcnQgeyBub2RlUXVlcnksIG5vZGVzUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IG1ldGFKU09OTGV4ZXIgPSBNZXRhSlNPTkxleGVyLmZyb21Ob3RoaW5nKCksXG4gICAgICBtZXRhSlNPTlBhcnNlciA9IE1ldGFKU09OUGFyc2VyLmZyb21Ob3RoaW5nKCksXG4gICAgICBlcnJvck5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiLy9lcnJvclwiKSxcbiAgICAgIGRlcGVuZGVuY3lOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi8vZGVwZW5kZW5jaWVzL2RlcGVuZGVuY3lcIiksXG4gICAgICByZXBvc2l0b3J5VGVybWluYWxOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvL3JlcG9zaXRvcnkhL0AqIVwiKSxcbiAgICAgIHZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi8vdmVyc2lvbiEvdmVyc2lvbk51bWJlciEvQCohXCIpLFxuICAgICAgZGVwZW5kZW5jeU5hbWVUZXJtaW5hbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9kZXBlbmRlbmN5L25hbWUhL0AqIVwiKSxcbiAgICAgIHNob3J0ZW5lZFZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi8vZGVwZW5kZW5jeS9zaG9ydGVuZWRWZXJzaW9uTnVtYmVyL0AqIVwiKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHZlcnNpb25Gcm9tTm9kZShub2RlKSB7XG4gIGxldCB2ZXJzaW9uID0gbnVsbDtcblxuICBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGUgPSB2ZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlUXVlcnkobm9kZSksXG4gICAgICAgICAgdmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZUNvbnRlbnQgPSB2ZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlLmdldENvbnRlbnQoKSxcbiAgICAgICAgICBzdHJpbmcgPSB0cmltRG91YmxlUXVvdGVzKHZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGVDb250ZW50KTsgLy9cblxuICAgIHZlcnNpb24gPSBWZXJzaW9uLmZyb21TdHJpbmcoc3RyaW5nKTtcbiAgfVxuXG4gIHJldHVybiB2ZXJzaW9uO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVwb3NpdG9yeUZyb21Ob2RlKG5vZGUpIHtcbiAgbGV0IHJlcG9zaXRvcnkgPSBudWxsO1xuXG4gIGlmIChub2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgcmVwb3NpdG9yeVRlcm1pbmFsTm9kZSA9IHJlcG9zaXRvcnlUZXJtaW5hbE5vZGVRdWVyeShub2RlKSxcbiAgICAgICAgICByZXBvc2l0b3J5VGVybWluYWxOb2RlQ29udGVudCA9IHJlcG9zaXRvcnlUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpO1xuXG4gICAgcmVwb3NpdG9yeSA9IHRyaW1Eb3VibGVRdW90ZXMocmVwb3NpdG9yeVRlcm1pbmFsTm9kZUNvbnRlbnQpOyAvL1xuICB9XG5cbiAgcmV0dXJuIHJlcG9zaXRvcnk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc01ldGFKU09ORmlsZVZhbGlkKG1ldGFKU09ORmlsZSkge1xuICBsZXQgbWV0YUpTT05GaWxlVmFsaWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhSlNPTk5vZGUgPSBtZXRhSlNPTk5vZGVGcm9tTWV0YUpTT05GaWxlKG1ldGFKU09ORmlsZSk7XG5cbiAgaWYgKG1ldGFKU09OTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG5vZGUgPSBtZXRhSlNPTk5vZGUsICAvLy9cbiAgICAgICAgICBlcnJvck5vZGVzID0gZXJyb3JOb2Rlc1F1ZXJ5KG5vZGUpLFxuICAgICAgICAgIGVycm9yTm9kZXNMZW5ndGggPSBlcnJvck5vZGVzLmxlbmd0aDtcblxuICAgIGlmIChlcnJvck5vZGVzTGVuZ3RoID09PSAwKSB7XG4gICAgICBtZXRhSlNPTkZpbGVWYWxpZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1ldGFKU09ORmlsZVZhbGlkO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVwZW5kZW5jaWVzRnJvbU5vZGUobm9kZSkge1xuICBjb25zdCBkZXBlbmRlbmNpZXMgPSBEZXBlbmRlbmNpZXMuZnJvbU5vdGhpbmcoKTtcblxuICBpZiAobm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGRlcGVuZGVuY3lOb2RlcyA9IGRlcGVuZGVuY3lOb2Rlc1F1ZXJ5KG5vZGUpO1xuXG4gICAgZGVwZW5kZW5jeU5vZGVzLmZvckVhY2goKGRlcGVuZGVuY3lOb2RlKSA9PiB7XG4gICAgICBjb25zdCBkZXBlbmRlbmN5TmFtZVRlcm1pbmFsTm9kZSA9IGRlcGVuZGVuY3lOYW1lVGVybWluYWxOb2RlUXVlcnkoZGVwZW5kZW5jeU5vZGUpLFxuICAgICAgICAgICAgc2hvcnRlbmVkVmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZSA9IHNob3J0ZW5lZFZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGVRdWVyeShkZXBlbmRlbmN5Tm9kZSksXG4gICAgICAgICAgICBkZXBlbmRlbmN5TmFtZVRlcm1pbmFsTm9kZUNvbnRlbnQgPSBkZXBlbmRlbmN5TmFtZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCksXG4gICAgICAgICAgICBzaG9ydGVuZWRWZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlQ29udGVudCA9IHNob3J0ZW5lZFZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICAgICAgc3RyaW5nID0gdHJpbURvdWJsZVF1b3RlcyhzaG9ydGVuZWRWZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlQ29udGVudCksICAvLy9cbiAgICAgICAgICAgIG5hbWUgPSB0cmltRG91YmxlUXVvdGVzKGRlcGVuZGVuY3lOYW1lVGVybWluYWxOb2RlQ29udGVudCksLy8vXG4gICAgICAgICAgICBzaG9ydGVuZWRWZXJzaW9uID0gU2hvcnRlbmVkVmVyc2lvbi5mcm9tU3RyaW5nKHN0cmluZyksXG4gICAgICAgICAgICBkZXBlbmRlbmN5ID0gRGVwZW5kZW5jeS5mcm9tTmFtZUFuZFNob3J0ZW5lZFZlcnNpb24obmFtZSwgc2hvcnRlbmVkVmVyc2lvbik7XG5cbiAgICAgIGRlcGVuZGVuY2llcy5hZGREZXBlbmRlbmN5KGRlcGVuZGVuY3kpO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGRlcGVuZGVuY2llcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlcGVuZGVuY3lOYW1lc0Zyb21Ob2RlKG5vZGUpIHtcbiAgY29uc3QgZGVwZW5kZW5jaWVzID0gZGVwZW5kZW5jaWVzRnJvbU5vZGUobm9kZSksXG4gICAgICAgIGRlcGVuZGVuY3lOYW1lcyA9IGRlcGVuZGVuY2llcy5tYXBEZXBlbmRlbmN5KChkZXBlbmRlbmN5KSA9PiB7XG4gICAgICAgICAgY29uc3QgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKTtcblxuICAgICAgICAgIHJldHVybiBkZXBlbmRlbmN5TmFtZTtcbiAgICAgICAgfSk7XG5cbiAgcmV0dXJuIGRlcGVuZGVuY3lOYW1lcztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZU1ldGFKU09ORmlsZVZlcnNpb24obWV0YUpTT05GaWxlLCB2ZXJzaW9uKSB7XG4gIGNvbnN0IG1ldGFKU09OTm9kZSA9IG1ldGFKU09OTm9kZUZyb21NZXRhSlNPTkZpbGUobWV0YUpTT05GaWxlKSxcbiAgICAgICAgbm9kZSA9IG1ldGFKU09OTm9kZSwgIC8vL1xuICAgICAgICByZXBvc2l0b3J5ID0gcmVwb3NpdG9yeUZyb21Ob2RlKG5vZGUpO1xuXG4gIGxldCBkZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXNGcm9tTm9kZShub2RlKTtcblxuICBjb25zdCBzdHJpbmcgPSB2ZXJzaW9uLnRvU3RyaW5nKCksXG4gICAgICBkZXBlbmRlbmNpZXNKU09OID0gZGVwZW5kZW5jaWVzLnRvSlNPTigpO1xuXG4gIHZlcnNpb24gPSBzdHJpbmc7ICAvLy9cblxuICBkZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXNKU09OOyAgLy8vXG5cbiAgY29uc3QgbWV0YUpTT04gPSB7XG4gICAgICAgICAgdmVyc2lvbixcbiAgICAgICAgICByZXBvc2l0b3J5LFxuICAgICAgICAgIGRlcGVuZGVuY2llc1xuICAgICAgICB9LFxuICAgICAgICBtZXRhSlNPTlN0cmluZyA9IEpTT04uc3RyaW5naWZ5KG1ldGFKU09OLCBudWxsLCBET1VCTEVfU1BBQ0UpLFxuICAgICAgICBtZXRhSlNPTkZpbGVDb250ZW50ID0gbWV0YUpTT05TdHJpbmc7IC8vL1xuXG4gIG1ldGFKU09ORmlsZS5zZXRDb250ZW50KG1ldGFKU09ORmlsZUNvbnRlbnQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YUpTT05Ob2RlRnJvbU1ldGFKU09ORmlsZShtZXRhSlNPTkZpbGUpIHtcbiAgbGV0IG1ldGFKU09OTm9kZSA9IG51bGw7XG5cbiAgaWYgKG1ldGFKU09ORmlsZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGNvbnRlbnQgPSBtZXRhSlNPTkZpbGUuZ2V0Q29udGVudCgpLFxuICAgICAgICAgIHRva2VucyA9IG1ldGFKU09OTGV4ZXIudG9rZW5pc2UoY29udGVudCksXG4gICAgICAgICAgbm9kZSA9IG1ldGFKU09OUGFyc2VyLnBhcnNlKHRva2Vucyk7XG5cbiAgICBtZXRhSlNPTk5vZGUgPSBub2RlOyAgLy8vXG4gIH1cblxuICByZXR1cm4gbWV0YUpTT05Ob2RlO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIHZlcnNpb25Gcm9tTm9kZSxcbiAgcmVwb3NpdG9yeUZyb21Ob2RlLFxuICBpc01ldGFKU09ORmlsZVZhbGlkLFxuICBkZXBlbmRlbmNpZXNGcm9tTm9kZSxcbiAgZGVwZW5kZW5jeU5hbWVzRnJvbU5vZGUsXG4gIHVwZGF0ZU1ldGFKU09ORmlsZVZlcnNpb24sXG4gIG1ldGFKU09OTm9kZUZyb21NZXRhSlNPTkZpbGVcbn07XG4iXSwibmFtZXMiOlsiZGVwZW5kZW5jaWVzRnJvbU5vZGUiLCJkZXBlbmRlbmN5TmFtZXNGcm9tTm9kZSIsImlzTWV0YUpTT05GaWxlVmFsaWQiLCJtZXRhSlNPTk5vZGVGcm9tTWV0YUpTT05GaWxlIiwicmVwb3NpdG9yeUZyb21Ob2RlIiwidXBkYXRlTWV0YUpTT05GaWxlVmVyc2lvbiIsInZlcnNpb25Gcm9tTm9kZSIsIm1ldGFKU09OTGV4ZXIiLCJNZXRhSlNPTkxleGVyIiwiZnJvbU5vdGhpbmciLCJtZXRhSlNPTlBhcnNlciIsIk1ldGFKU09OUGFyc2VyIiwiZXJyb3JOb2Rlc1F1ZXJ5Iiwibm9kZXNRdWVyeSIsImRlcGVuZGVuY3lOb2Rlc1F1ZXJ5IiwicmVwb3NpdG9yeVRlcm1pbmFsTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZVF1ZXJ5IiwiZGVwZW5kZW5jeU5hbWVUZXJtaW5hbE5vZGVRdWVyeSIsInNob3J0ZW5lZFZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGVRdWVyeSIsIm5vZGUiLCJ2ZXJzaW9uIiwidmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZSIsInZlcnNpb25OdW1iZXJUZXJtaW5hbE5vZGVDb250ZW50IiwiZ2V0Q29udGVudCIsInN0cmluZyIsInRyaW1Eb3VibGVRdW90ZXMiLCJWZXJzaW9uIiwiZnJvbVN0cmluZyIsInJlcG9zaXRvcnkiLCJyZXBvc2l0b3J5VGVybWluYWxOb2RlIiwicmVwb3NpdG9yeVRlcm1pbmFsTm9kZUNvbnRlbnQiLCJtZXRhSlNPTkZpbGUiLCJtZXRhSlNPTkZpbGVWYWxpZCIsIm1ldGFKU09OTm9kZSIsImVycm9yTm9kZXMiLCJlcnJvck5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwiZGVwZW5kZW5jaWVzIiwiRGVwZW5kZW5jaWVzIiwiZGVwZW5kZW5jeU5vZGVzIiwiZm9yRWFjaCIsImRlcGVuZGVuY3lOb2RlIiwiZGVwZW5kZW5jeU5hbWVUZXJtaW5hbE5vZGUiLCJzaG9ydGVuZWRWZXJzaW9uTnVtYmVyVGVybWluYWxOb2RlIiwiZGVwZW5kZW5jeU5hbWVUZXJtaW5hbE5vZGVDb250ZW50Iiwic2hvcnRlbmVkVmVyc2lvbk51bWJlclRlcm1pbmFsTm9kZUNvbnRlbnQiLCJuYW1lIiwic2hvcnRlbmVkVmVyc2lvbiIsIlNob3J0ZW5lZFZlcnNpb24iLCJkZXBlbmRlbmN5IiwiRGVwZW5kZW5jeSIsImZyb21OYW1lQW5kU2hvcnRlbmVkVmVyc2lvbiIsImFkZERlcGVuZGVuY3kiLCJkZXBlbmRlbmN5TmFtZXMiLCJtYXBEZXBlbmRlbmN5IiwiZGVwZW5kZW5jeU5hbWUiLCJnZXROYW1lIiwidG9TdHJpbmciLCJkZXBlbmRlbmNpZXNKU09OIiwidG9KU09OIiwibWV0YUpTT04iLCJtZXRhSlNPTlN0cmluZyIsIkpTT04iLCJzdHJpbmdpZnkiLCJET1VCTEVfU1BBQ0UiLCJtZXRhSlNPTkZpbGVDb250ZW50Iiwic2V0Q29udGVudCIsImNvbnRlbnQiLCJ0b2tlbnMiLCJ0b2tlbmlzZSIsInBhcnNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUE0SUEsT0FRRTtlQVJGOztJ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
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "fileNameFromFilePath", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return fileNameFromFilePath;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ var bottommostNameFromPath = _necessary.pathUtilities.bottommostNameFromPath;
13
+ function fileNameFromFilePath(filePath) {
14
+ var path = filePath, bottommostName = bottommostNameFromPath(path), fileName = bottommostName; //
15
+ return fileName;
16
+ }
17
+
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbmFtZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgcGF0aFV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgeyBib3R0b21tb3N0TmFtZUZyb21QYXRoIH0gPSBwYXRoVXRpbGl0aWVzO1xuXG5leHBvcnQgZnVuY3Rpb24gZmlsZU5hbWVGcm9tRmlsZVBhdGgoZmlsZVBhdGgpIHtcbiAgY29uc3QgcGF0aCA9IGZpbGVQYXRoLCAgLy8vXG4gICAgICAgIGJvdHRvbW1vc3ROYW1lID0gYm90dG9tbW9zdE5hbWVGcm9tUGF0aChwYXRoKSxcbiAgICAgICAgZmlsZU5hbWUgPSBib3R0b21tb3N0TmFtZTsgIC8vXG5cbiAgcmV0dXJuIGZpbGVOYW1lO1xufVxuIl0sIm5hbWVzIjpbImZpbGVOYW1lRnJvbUZpbGVQYXRoIiwiYm90dG9tbW9zdE5hbWVGcm9tUGF0aCIsInBhdGhVdGlsaXRpZXMiLCJmaWxlUGF0aCIsInBhdGgiLCJib3R0b21tb3N0TmFtZSIsImZpbGVOYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFNZ0JBOzs7ZUFBQUE7Ozt5QkFKYztBQUU5QixJQUFNLEFBQUVDLHlCQUEyQkMsd0JBQWEsQ0FBeENEO0FBRUQsU0FBU0QscUJBQXFCRyxRQUFRO0lBQzNDLElBQU1DLE9BQU9ELFVBQ1BFLGlCQUFpQkosdUJBQXVCRyxPQUN4Q0UsV0FBV0QsZ0JBQWlCLEVBQUU7SUFFcEMsT0FBT0M7QUFDVCJ9
@@ -0,0 +1,41 @@
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
+ nodeQuery: function() {
13
+ return nodeQuery;
14
+ },
15
+ nodesQuery: function() {
16
+ return nodesQuery;
17
+ }
18
+ });
19
+ var _occamdom = require("occam-dom");
20
+ function nodeQuery(expression) {
21
+ var query = _occamdom.Query.fromExpression(expression);
22
+ return function(node) {
23
+ if (node !== null) {
24
+ var nodes = query.execute(node);
25
+ node = nodes.shift() || null; ///
26
+ }
27
+ return node;
28
+ };
29
+ }
30
+ function nodesQuery(expression) {
31
+ var query = _occamdom.Query.fromExpression(expression);
32
+ return function(node) {
33
+ var nodes = null;
34
+ if (node !== null) {
35
+ nodes = query.execute(node);
36
+ }
37
+ return nodes;
38
+ };
39
+ }
40
+
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcXVlcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IFF1ZXJ5IH0gZnJvbSBcIm9jY2FtLWRvbVwiO1xuXG5leHBvcnQgZnVuY3Rpb24gbm9kZVF1ZXJ5KGV4cHJlc3Npb24pIHtcbiAgY29uc3QgcXVlcnkgPSBRdWVyeS5mcm9tRXhwcmVzc2lvbihleHByZXNzaW9uKTtcblxuICByZXR1cm4gZnVuY3Rpb24obm9kZSkge1xuICAgIGlmIChub2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBub2RlcyA9IHF1ZXJ5LmV4ZWN1dGUobm9kZSk7XG5cbiAgICAgIG5vZGUgPSBub2Rlcy5zaGlmdCgpIHx8IG51bGw7IC8vL1xuICAgIH1cblxuICAgIHJldHVybiBub2RlO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9kZXNRdWVyeShleHByZXNzaW9uKSB7XG4gIGNvbnN0IHF1ZXJ5ID0gUXVlcnkuZnJvbUV4cHJlc3Npb24oZXhwcmVzc2lvbik7XG5cbiAgcmV0dXJuIGZ1bmN0aW9uKG5vZGUpIHtcbiAgICBsZXQgbm9kZXMgPSBudWxsO1xuXG4gICAgaWYgKG5vZGUgIT09IG51bGwpIHtcbiAgICAgIG5vZGVzID0gcXVlcnkuZXhlY3V0ZShub2RlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbm9kZXM7XG4gIH07XG59XG4iXSwibmFtZXMiOlsibm9kZVF1ZXJ5Iiwibm9kZXNRdWVyeSIsImV4cHJlc3Npb24iLCJxdWVyeSIsIlF1ZXJ5IiwiZnJvbUV4cHJlc3Npb24iLCJub2RlIiwibm9kZXMiLCJleGVjdXRlIiwic2hpZnQiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztJQUlnQkEsU0FBUztlQUFUQTs7SUFjQUMsVUFBVTtlQUFWQTs7O3dCQWhCTTtBQUVmLFNBQVNELFVBQVVFLFVBQVU7SUFDbEMsSUFBTUMsUUFBUUMsZUFBSyxDQUFDQyxjQUFjLENBQUNIO0lBRW5DLE9BQU8sU0FBU0ksSUFBSTtRQUNsQixJQUFJQSxTQUFTLE1BQU07WUFDakIsSUFBTUMsUUFBUUosTUFBTUssT0FBTyxDQUFDRjtZQUU1QkEsT0FBT0MsTUFBTUUsS0FBSyxNQUFNLE1BQU0sR0FBRztRQUNuQztRQUVBLE9BQU9IO0lBQ1Q7QUFDRjtBQUVPLFNBQVNMLFdBQVdDLFVBQVU7SUFDbkMsSUFBTUMsUUFBUUMsZUFBSyxDQUFDQyxjQUFjLENBQUNIO0lBRW5DLE9BQU8sU0FBU0ksSUFBSTtRQUNsQixJQUFJQyxRQUFRO1FBRVosSUFBSUQsU0FBUyxNQUFNO1lBQ2pCQyxRQUFRSixNQUFNSyxPQUFPLENBQUNGO1FBQ3hCO1FBRUEsT0FBT0M7SUFDVDtBQUNGIn0=
@@ -0,0 +1,71 @@
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
+ majorNumberFromNumber: function() {
13
+ return majorNumberFromNumber;
14
+ },
15
+ majorNumberFromString: function() {
16
+ return majorNumberFromString;
17
+ },
18
+ minorNumberFromNumber: function() {
19
+ return minorNumberFromNumber;
20
+ },
21
+ minorNumberFromString: function() {
22
+ return minorNumberFromString;
23
+ },
24
+ patchNumberFromNumber: function() {
25
+ return patchNumberFromNumber;
26
+ },
27
+ patchNumberFromString: function() {
28
+ return patchNumberFromString;
29
+ }
30
+ });
31
+ var _necessary = require("necessary");
32
+ var _multiplers = require("../multiplers");
33
+ var second = _necessary.arrayUtilities.second;
34
+ function majorNumberFromNumber(number) {
35
+ var majorNumber = number !== null ? Math.floor(number / _multiplers.MAJOR_NUMBER_MULTIPLIER) : 0; ///
36
+ return majorNumber;
37
+ }
38
+ function minorNumberFromNumber(number) {
39
+ var minorNumber = number !== null ? Math.floor(number % _multiplers.MAJOR_NUMBER_MULTIPLIER / _multiplers.MINOR_NUMBER_MULTIPLIER) : 0; ///
40
+ return minorNumber;
41
+ }
42
+ function patchNumberFromNumber(number) {
43
+ var patchNumber = number !== null ? Math.floor(number % _multiplers.MINOR_NUMBER_MULTIPLIER / _multiplers.PATCH_NUMBER_MULTIPLIER) : 0; ///
44
+ return patchNumber;
45
+ }
46
+ function majorNumberFromString(string) {
47
+ var majorNumber = 0;
48
+ if (string) {
49
+ var matches = string.match(/^(\d+)/), secondMatch = second(matches);
50
+ majorNumber = Number(secondMatch); ///
51
+ }
52
+ return majorNumber;
53
+ }
54
+ function minorNumberFromString(string) {
55
+ var minorNumber = 0;
56
+ if (string) {
57
+ var matches = string.match(/^\d+\.(\d+)/), secondMatch = second(matches);
58
+ minorNumber = Number(secondMatch); ///
59
+ }
60
+ return minorNumber;
61
+ }
62
+ function patchNumberFromString(string) {
63
+ var patchNumber = 0;
64
+ if (string) {
65
+ var matches = string.match(/^\d+\.\d+\.(\d+)/), secondMatch = second(matches);
66
+ patchNumber = Number(secondMatch); ///
67
+ }
68
+ return patchNumber;
69
+ }
70
+
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmVyc2lvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYXJyYXlVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCI7XG5cbmltcG9ydCB7IE1BSk9SX05VTUJFUl9NVUxUSVBMSUVSLCBNSU5PUl9OVU1CRVJfTVVMVElQTElFUiwgUEFUQ0hfTlVNQkVSX01VTFRJUExJRVIgfSBmcm9tIFwiLi4vbXVsdGlwbGVyc1wiO1xuXG5jb25zdCB7IHNlY29uZCB9ID0gYXJyYXlVdGlsaXRpZXM7XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWpvck51bWJlckZyb21OdW1iZXIobnVtYmVyKSB7XG4gIGNvbnN0IG1ham9yTnVtYmVyID0gKG51bWJlciAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5mbG9vcihudW1iZXIgLyBNQUpPUl9OVU1CRVJfTVVMVElQTElFUikgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAwOyAgLy8vXG5cbiAgcmV0dXJuIG1ham9yTnVtYmVyO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWlub3JOdW1iZXJGcm9tTnVtYmVyKG51bWJlcikge1xuICBjb25zdCBtaW5vck51bWJlciA9IChudW1iZXIgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgIE1hdGguZmxvb3IoKG51bWJlciAlIE1BSk9SX05VTUJFUl9NVUxUSVBMSUVSKSAvIE1JTk9SX05VTUJFUl9NVUxUSVBMSUVSKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDA7ICAvLy9cblxuICByZXR1cm4gbWlub3JOdW1iZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXRjaE51bWJlckZyb21OdW1iZXIobnVtYmVyKSB7XG4gIGNvbnN0IHBhdGNoTnVtYmVyID0gKG51bWJlciAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5mbG9vcigobnVtYmVyICUgTUlOT1JfTlVNQkVSX01VTFRJUExJRVIpIC8gUEFUQ0hfTlVNQkVSX01VTFRJUExJRVIpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMDsgIC8vL1xuXG4gIHJldHVybiBwYXRjaE51bWJlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ham9yTnVtYmVyRnJvbVN0cmluZyhzdHJpbmcpIHtcbiAgbGV0IG1ham9yTnVtYmVyID0gMDtcblxuICBpZiAoc3RyaW5nKSB7XG4gICAgY29uc3QgbWF0Y2hlcyA9IHN0cmluZy5tYXRjaCgvXihcXGQrKS8pLFxuICAgICAgICAgIHNlY29uZE1hdGNoID0gc2Vjb25kKG1hdGNoZXMpO1xuXG4gICAgbWFqb3JOdW1iZXIgPSBOdW1iZXIoc2Vjb25kTWF0Y2gpOyAgLy8vXG4gIH1cblxuICByZXR1cm4gbWFqb3JOdW1iZXI7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtaW5vck51bWJlckZyb21TdHJpbmcoc3RyaW5nKSB7XG4gIGxldCBtaW5vck51bWJlciA9IDA7XG5cbiAgaWYgKHN0cmluZykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSBzdHJpbmcubWF0Y2goL15cXGQrXFwuKFxcZCspLyksXG4gICAgICAgICAgc2Vjb25kTWF0Y2ggPSBzZWNvbmQobWF0Y2hlcyk7XG5cbiAgICBtaW5vck51bWJlciA9IE51bWJlcihzZWNvbmRNYXRjaCk7ICAvLy9cbiAgfVxuXG4gIHJldHVybiBtaW5vck51bWJlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoTnVtYmVyRnJvbVN0cmluZyhzdHJpbmcpIHtcbiAgbGV0IHBhdGNoTnVtYmVyID0gMDtcblxuICBpZiAoc3RyaW5nKSB7XG4gICAgY29uc3QgbWF0Y2hlcyA9IHN0cmluZy5tYXRjaCgvXlxcZCtcXC5cXGQrXFwuKFxcZCspLyksXG4gICAgICAgICAgc2Vjb25kTWF0Y2ggPSBzZWNvbmQobWF0Y2hlcyk7XG5cbiAgICBwYXRjaE51bWJlciA9IE51bWJlcihzZWNvbmRNYXRjaCk7ICAvLy9cbiAgfVxuXG4gIHJldHVybiBwYXRjaE51bWJlcjtcbn1cbiJdLCJuYW1lcyI6WyJtYWpvck51bWJlckZyb21OdW1iZXIiLCJtYWpvck51bWJlckZyb21TdHJpbmciLCJtaW5vck51bWJlckZyb21OdW1iZXIiLCJtaW5vck51bWJlckZyb21TdHJpbmciLCJwYXRjaE51bWJlckZyb21OdW1iZXIiLCJwYXRjaE51bWJlckZyb21TdHJpbmciLCJzZWNvbmQiLCJhcnJheVV0aWxpdGllcyIsIm51bWJlciIsIm1ham9yTnVtYmVyIiwiTWF0aCIsImZsb29yIiwiTUFKT1JfTlVNQkVSX01VTFRJUExJRVIiLCJtaW5vck51bWJlciIsIk1JTk9SX05VTUJFUl9NVUxUSVBMSUVSIiwicGF0Y2hOdW1iZXIiLCJQQVRDSF9OVU1CRVJfTVVMVElQTElFUiIsInN0cmluZyIsIm1hdGNoZXMiLCJtYXRjaCIsInNlY29uZE1hdGNoIiwiTnVtYmVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFRZ0JBLHFCQUFxQjtlQUFyQkE7O0lBd0JBQyxxQkFBcUI7ZUFBckJBOztJQWhCQUMscUJBQXFCO2VBQXJCQTs7SUE2QkFDLHFCQUFxQjtlQUFyQkE7O0lBckJBQyxxQkFBcUI7ZUFBckJBOztJQWtDQUMscUJBQXFCO2VBQXJCQTs7O3lCQXhEZTswQkFFMkQ7QUFFMUYsSUFBTSxBQUFFQyxTQUFXQyx5QkFBYyxDQUF6QkQ7QUFFRCxTQUFTTixzQkFBc0JRLE1BQU07SUFDMUMsSUFBTUMsY0FBYyxBQUFDRCxXQUFXLE9BQ1ZFLEtBQUtDLEtBQUssQ0FBQ0gsU0FBU0ksbUNBQXVCLElBQ3pDLEdBQUksR0FBRztJQUUvQixPQUFPSDtBQUNUO0FBRU8sU0FBU1Asc0JBQXNCTSxNQUFNO0lBQzFDLElBQU1LLGNBQWMsQUFBQ0wsV0FBVyxPQUNWRSxLQUFLQyxLQUFLLENBQUMsQUFBQ0gsU0FBU0ksbUNBQXVCLEdBQUlFLG1DQUF1QixJQUNyRSxHQUFJLEdBQUc7SUFFL0IsT0FBT0Q7QUFDVDtBQUVPLFNBQVNULHNCQUFzQkksTUFBTTtJQUMxQyxJQUFNTyxjQUFjLEFBQUNQLFdBQVcsT0FDVkUsS0FBS0MsS0FBSyxDQUFDLEFBQUNILFNBQVNNLG1DQUF1QixHQUFJRSxtQ0FBdUIsSUFDckUsR0FBSSxHQUFHO0lBRS9CLE9BQU9EO0FBQ1Q7QUFFTyxTQUFTZCxzQkFBc0JnQixNQUFNO0lBQzFDLElBQUlSLGNBQWM7SUFFbEIsSUFBSVEsUUFBUTtRQUNWLElBQU1DLFVBQVVELE9BQU9FLEtBQUssQ0FBQyxXQUN2QkMsY0FBY2QsT0FBT1k7UUFFM0JULGNBQWNZLE9BQU9ELGNBQWUsR0FBRztJQUN6QztJQUVBLE9BQU9YO0FBQ1Q7QUFFTyxTQUFTTixzQkFBc0JjLE1BQU07SUFDMUMsSUFBSUosY0FBYztJQUVsQixJQUFJSSxRQUFRO1FBQ1YsSUFBTUMsVUFBVUQsT0FBT0UsS0FBSyxDQUFDLGdCQUN2QkMsY0FBY2QsT0FBT1k7UUFFM0JMLGNBQWNRLE9BQU9ELGNBQWUsR0FBRztJQUN6QztJQUVBLE9BQU9QO0FBQ1Q7QUFFTyxTQUFTUixzQkFBc0JZLE1BQU07SUFDMUMsSUFBSUYsY0FBYztJQUVsQixJQUFJRSxRQUFRO1FBQ1YsSUFBTUMsVUFBVUQsT0FBT0UsS0FBSyxDQUFDLHFCQUN2QkMsY0FBY2QsT0FBT1k7UUFFM0JILGNBQWNNLE9BQU9ELGNBQWUsR0FBRztJQUN6QztJQUVBLE9BQU9MO0FBQ1QifQ==
package/lib/version.js ADDED
@@ -0,0 +1,160 @@
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 Version;
9
+ }
10
+ });
11
+ var _multiplers = require("./multiplers");
12
+ var _version = require("./utilities/version");
13
+ function _class_call_check(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 _create_class(Constructor, protoProps, staticProps) {
28
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
29
+ if (staticProps) _defineProperties(Constructor, staticProps);
30
+ return Constructor;
31
+ }
32
+ var Version = /*#__PURE__*/ function() {
33
+ function Version(majorNumber, minorNumber, patchNumber) {
34
+ _class_call_check(this, Version);
35
+ this.majorNumber = majorNumber;
36
+ this.minorNumber = minorNumber;
37
+ this.patchNumber = patchNumber;
38
+ }
39
+ _create_class(Version, [
40
+ {
41
+ key: "getMajorNumber",
42
+ value: function getMajorNumber() {
43
+ return this.majorNumber;
44
+ }
45
+ },
46
+ {
47
+ key: "getMinorNumber",
48
+ value: function getMinorNumber() {
49
+ return this.minorNumber;
50
+ }
51
+ },
52
+ {
53
+ key: "getPatchNumber",
54
+ value: function getPatchNumber() {
55
+ return this.patchNumber;
56
+ }
57
+ },
58
+ {
59
+ key: "bumpMajorNumber",
60
+ value: function bumpMajorNumber() {
61
+ this.majorNumber += 1;
62
+ }
63
+ },
64
+ {
65
+ key: "bumpMinorNumber",
66
+ value: function bumpMinorNumber() {
67
+ this.minorNumber += 1;
68
+ }
69
+ },
70
+ {
71
+ key: "bumpPatchNumber",
72
+ value: function bumpPatchNumber() {
73
+ this.patchNumber += 1;
74
+ }
75
+ },
76
+ {
77
+ key: "resetMajorNumber",
78
+ value: function resetMajorNumber() {
79
+ this.majorNumber = 0;
80
+ }
81
+ },
82
+ {
83
+ key: "resetMinorNumber",
84
+ value: function resetMinorNumber() {
85
+ this.minorNumber = 0;
86
+ }
87
+ },
88
+ {
89
+ key: "resetPatchNumber",
90
+ value: function resetPatchNumber() {
91
+ this.patchNumber = 0;
92
+ }
93
+ },
94
+ {
95
+ key: "matchShortenedVersion",
96
+ value: function matchShortenedVersion(shortenedVersion) {
97
+ var matchesShortenedVersion = false;
98
+ if (shortenedVersion === null) {
99
+ matchesShortenedVersion = true;
100
+ } else {
101
+ var majorNumber = shortenedVersion.getMajorNumber();
102
+ if (this.majorNumber === majorNumber) {
103
+ var minorNumber = shortenedVersion.getMinorNumber();
104
+ if (this.minorNumber >= minorNumber) {
105
+ matchesShortenedVersion = true;
106
+ }
107
+ }
108
+ }
109
+ return matchesShortenedVersion;
110
+ }
111
+ },
112
+ {
113
+ key: "toString",
114
+ value: function toString() {
115
+ var string = "".concat(this.majorNumber, ".").concat(this.minorNumber, ".").concat(this.patchNumber);
116
+ return string;
117
+ }
118
+ },
119
+ {
120
+ key: "toVersionNumber",
121
+ value: function toVersionNumber() {
122
+ var versionNumber = this.majorNumber * _multiplers.MAJOR_NUMBER_MULTIPLIER + this.minorNumber * _multiplers.MINOR_NUMBER_MULTIPLIER + this.patchNumber * _multiplers.PATCH_NUMBER_MULTIPLIER;
123
+ return versionNumber;
124
+ }
125
+ }
126
+ ], [
127
+ {
128
+ key: "fromString",
129
+ value: function fromString(string) {
130
+ var majorNumber = (0, _version.majorNumberFromString)(string), minorNumber = (0, _version.minorNumberFromString)(string), patchNumber = (0, _version.patchNumberFromString)(string), version = new Version(majorNumber, minorNumber, patchNumber);
131
+ return version;
132
+ }
133
+ },
134
+ {
135
+ key: "fromNothing",
136
+ value: function fromNothing() {
137
+ var majorNumber = 0, minorNumber = 0, patchNumber = 0, version = new Version(majorNumber, minorNumber, patchNumber);
138
+ return version;
139
+ }
140
+ },
141
+ {
142
+ key: "fromVersion",
143
+ value: function fromVersion(version) {
144
+ var majorNumber = version.getMajorNumber(), minorNumber = version.getMinorNumber(), patchNumber = version.getPatchNumber();
145
+ version = new Version(majorNumber, minorNumber, patchNumber); ///
146
+ return version;
147
+ }
148
+ },
149
+ {
150
+ key: "fromVersionNumber",
151
+ value: function fromVersionNumber(versionNumber) {
152
+ var number = versionNumber, majorNumber = (0, _version.majorNumberFromNumber)(number), minorNumber = (0, _version.minorNumberFromNumber)(number), patchNumber = (0, _version.patchNumberFromNumber)(number), version = new Version(majorNumber, minorNumber, patchNumber);
153
+ return version;
154
+ }
155
+ }
156
+ ]);
157
+ return Version;
158
+ }();
159
+
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92ZXJzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBNQUpPUl9OVU1CRVJfTVVMVElQTElFUiwgTUlOT1JfTlVNQkVSX01VTFRJUExJRVIsIFBBVENIX05VTUJFUl9NVUxUSVBMSUVSIH0gZnJvbSBcIi4vbXVsdGlwbGVyc1wiO1xuaW1wb3J0IHsgbWFqb3JOdW1iZXJGcm9tTnVtYmVyLFxuICAgICAgICAgbWlub3JOdW1iZXJGcm9tTnVtYmVyLFxuICAgICAgICAgcGF0Y2hOdW1iZXJGcm9tTnVtYmVyLFxuICAgICAgICAgbWFqb3JOdW1iZXJGcm9tU3RyaW5nLFxuICAgICAgICAgbWlub3JOdW1iZXJGcm9tU3RyaW5nLFxuICAgICAgICAgcGF0Y2hOdW1iZXJGcm9tU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3ZlcnNpb25cIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVyc2lvbiB7XG4gIGNvbnN0cnVjdG9yKG1ham9yTnVtYmVyLCBtaW5vck51bWJlciwgcGF0Y2hOdW1iZXIpIHtcbiAgICB0aGlzLm1ham9yTnVtYmVyID0gbWFqb3JOdW1iZXI7XG4gICAgdGhpcy5taW5vck51bWJlciA9IG1pbm9yTnVtYmVyO1xuICAgIHRoaXMucGF0Y2hOdW1iZXIgPSBwYXRjaE51bWJlcjtcbiAgfVxuXG4gIGdldE1ham9yTnVtYmVyKCkge1xuICAgIHJldHVybiB0aGlzLm1ham9yTnVtYmVyO1xuICB9XG5cbiAgZ2V0TWlub3JOdW1iZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubWlub3JOdW1iZXI7XG4gIH1cblxuICBnZXRQYXRjaE51bWJlcigpIHtcbiAgICByZXR1cm4gdGhpcy5wYXRjaE51bWJlcjtcbiAgfVxuXG4gIGJ1bXBNYWpvck51bWJlcigpIHtcbiAgICB0aGlzLm1ham9yTnVtYmVyICs9IDE7XG4gIH1cblxuICBidW1wTWlub3JOdW1iZXIoKSB7XG4gICAgdGhpcy5taW5vck51bWJlciArPSAxO1xuICB9XG5cbiAgYnVtcFBhdGNoTnVtYmVyKCkge1xuICAgIHRoaXMucGF0Y2hOdW1iZXIgKz0gMTtcbiAgfVxuXG4gIHJlc2V0TWFqb3JOdW1iZXIoKSB7XG4gICAgdGhpcy5tYWpvck51bWJlciA9IDA7XG4gIH1cblxuICByZXNldE1pbm9yTnVtYmVyKCkge1xuICAgIHRoaXMubWlub3JOdW1iZXIgPSAwO1xuICB9XG5cbiAgcmVzZXRQYXRjaE51bWJlcigpIHtcbiAgICB0aGlzLnBhdGNoTnVtYmVyID0gMDtcbiAgfVxuXG4gIG1hdGNoU2hvcnRlbmVkVmVyc2lvbihzaG9ydGVuZWRWZXJzaW9uKSB7XG4gICAgbGV0IG1hdGNoZXNTaG9ydGVuZWRWZXJzaW9uID0gZmFsc2U7XG5cbiAgICBpZiAoc2hvcnRlbmVkVmVyc2lvbiA9PT0gbnVsbCkge1xuICAgICAgbWF0Y2hlc1Nob3J0ZW5lZFZlcnNpb24gPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBtYWpvck51bWJlciA9IHNob3J0ZW5lZFZlcnNpb24uZ2V0TWFqb3JOdW1iZXIoKTtcblxuICAgICAgaWYgKHRoaXMubWFqb3JOdW1iZXIgPT09IG1ham9yTnVtYmVyKSB7XG4gICAgICAgIGNvbnN0IG1pbm9yTnVtYmVyID0gc2hvcnRlbmVkVmVyc2lvbi5nZXRNaW5vck51bWJlcigpO1xuXG4gICAgICAgIGlmICh0aGlzLm1pbm9yTnVtYmVyID49IG1pbm9yTnVtYmVyKSB7XG4gICAgICAgICAgbWF0Y2hlc1Nob3J0ZW5lZFZlcnNpb24gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hdGNoZXNTaG9ydGVuZWRWZXJzaW9uO1xuICB9XG5cbiAgdG9TdHJpbmcoKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gYCR7dGhpcy5tYWpvck51bWJlcn0uJHt0aGlzLm1pbm9yTnVtYmVyfS4ke3RoaXMucGF0Y2hOdW1iZXJ9YDtcblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICB0b1ZlcnNpb25OdW1iZXIoKSB7XG4gICAgY29uc3QgdmVyc2lvbk51bWJlciA9IHRoaXMubWFqb3JOdW1iZXIgKiBNQUpPUl9OVU1CRVJfTVVMVElQTElFUiArIHRoaXMubWlub3JOdW1iZXIgKiBNSU5PUl9OVU1CRVJfTVVMVElQTElFUiArIHRoaXMucGF0Y2hOdW1iZXIgKiBQQVRDSF9OVU1CRVJfTVVMVElQTElFUjtcblxuICAgIHJldHVybiB2ZXJzaW9uTnVtYmVyO1xuICB9XG5cbiAgc3RhdGljIGZyb21TdHJpbmcoc3RyaW5nKSB7XG4gICAgY29uc3QgbWFqb3JOdW1iZXIgPSBtYWpvck51bWJlckZyb21TdHJpbmcoc3RyaW5nKSxcbiAgICAgICAgICBtaW5vck51bWJlciA9IG1pbm9yTnVtYmVyRnJvbVN0cmluZyhzdHJpbmcpLFxuICAgICAgICAgIHBhdGNoTnVtYmVyID0gcGF0Y2hOdW1iZXJGcm9tU3RyaW5nKHN0cmluZyksXG4gICAgICAgICAgdmVyc2lvbiA9IG5ldyBWZXJzaW9uKG1ham9yTnVtYmVyLCBtaW5vck51bWJlciwgcGF0Y2hOdW1iZXIpO1xuXG4gICAgcmV0dXJuIHZlcnNpb247XG4gIH1cblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7XG4gICAgY29uc3QgbWFqb3JOdW1iZXIgPSAwLFxuICAgICAgICAgIG1pbm9yTnVtYmVyID0gMCxcbiAgICAgICAgICBwYXRjaE51bWJlciA9IDAsXG4gICAgICAgICAgdmVyc2lvbiA9IG5ldyBWZXJzaW9uKG1ham9yTnVtYmVyLCBtaW5vck51bWJlciwgcGF0Y2hOdW1iZXIpO1xuXG4gICAgcmV0dXJuIHZlcnNpb247XG4gIH1cblxuICBzdGF0aWMgZnJvbVZlcnNpb24odmVyc2lvbikge1xuICAgIGNvbnN0IG1ham9yTnVtYmVyID0gdmVyc2lvbi5nZXRNYWpvck51bWJlcigpLFxuICAgICAgICAgIG1pbm9yTnVtYmVyID0gdmVyc2lvbi5nZXRNaW5vck51bWJlcigpLFxuICAgICAgICAgIHBhdGNoTnVtYmVyID0gdmVyc2lvbi5nZXRQYXRjaE51bWJlcigpO1xuXG4gICAgdmVyc2lvbiA9IG5ldyBWZXJzaW9uKG1ham9yTnVtYmVyLCBtaW5vck51bWJlciwgcGF0Y2hOdW1iZXIpOyAvLy9cblxuICAgIHJldHVybiB2ZXJzaW9uO1xuICB9XG5cbiAgc3RhdGljIGZyb21WZXJzaW9uTnVtYmVyKHZlcnNpb25OdW1iZXIpIHtcbiAgICBjb25zdCBudW1iZXIgPSB2ZXJzaW9uTnVtYmVyLCAvLy9cbiAgICAgICAgICBtYWpvck51bWJlciA9IG1ham9yTnVtYmVyRnJvbU51bWJlcihudW1iZXIpLFxuICAgICAgICAgIG1pbm9yTnVtYmVyID0gbWlub3JOdW1iZXJGcm9tTnVtYmVyKG51bWJlciksXG4gICAgICAgICAgcGF0Y2hOdW1iZXIgPSBwYXRjaE51bWJlckZyb21OdW1iZXIobnVtYmVyKSxcbiAgICAgICAgICB2ZXJzaW9uID0gbmV3IFZlcnNpb24obWFqb3JOdW1iZXIsIG1pbm9yTnVtYmVyLCBwYXRjaE51bWJlcik7XG5cbiAgICByZXR1cm4gdmVyc2lvbjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlZlcnNpb24iLCJtYWpvck51bWJlciIsIm1pbm9yTnVtYmVyIiwicGF0Y2hOdW1iZXIiLCJnZXRNYWpvck51bWJlciIsImdldE1pbm9yTnVtYmVyIiwiZ2V0UGF0Y2hOdW1iZXIiLCJidW1wTWFqb3JOdW1iZXIiLCJidW1wTWlub3JOdW1iZXIiLCJidW1wUGF0Y2hOdW1iZXIiLCJyZXNldE1ham9yTnVtYmVyIiwicmVzZXRNaW5vck51bWJlciIsInJlc2V0UGF0Y2hOdW1iZXIiLCJtYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJzaG9ydGVuZWRWZXJzaW9uIiwibWF0Y2hlc1Nob3J0ZW5lZFZlcnNpb24iLCJ0b1N0cmluZyIsInN0cmluZyIsInRvVmVyc2lvbk51bWJlciIsInZlcnNpb25OdW1iZXIiLCJNQUpPUl9OVU1CRVJfTVVMVElQTElFUiIsIk1JTk9SX05VTUJFUl9NVUxUSVBMSUVSIiwiUEFUQ0hfTlVNQkVSX01VTFRJUExJRVIiLCJmcm9tU3RyaW5nIiwibWFqb3JOdW1iZXJGcm9tU3RyaW5nIiwibWlub3JOdW1iZXJGcm9tU3RyaW5nIiwicGF0Y2hOdW1iZXJGcm9tU3RyaW5nIiwidmVyc2lvbiIsImZyb21Ob3RoaW5nIiwiZnJvbVZlcnNpb24iLCJmcm9tVmVyc2lvbk51bWJlciIsIm51bWJlciIsIm1ham9yTnVtYmVyRnJvbU51bWJlciIsIm1pbm9yTnVtYmVyRnJvbU51bWJlciIsInBhdGNoTnVtYmVyRnJvbU51bWJlciJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFVcUJBOzs7MEJBUnFFO3VCQU1wRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdkIsSUFBQSxBQUFNQSx3QkFBTjthQUFNQSxRQUNQQyxXQUFXLEVBQUVDLFdBQVcsRUFBRUMsV0FBVztnQ0FEOUJIO1FBRWpCLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtRQUNuQixJQUFJLENBQUNDLFdBQVcsR0FBR0E7UUFDbkIsSUFBSSxDQUFDQyxXQUFXLEdBQUdBOztrQkFKRkg7O1lBT25CSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILFdBQVc7WUFDekI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILFdBQVc7WUFDekI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILFdBQVc7WUFDekI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDTixXQUFXLElBQUk7WUFDdEI7OztZQUVBTyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDTixXQUFXLElBQUk7WUFDdEI7OztZQUVBTyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDTixXQUFXLElBQUk7WUFDdEI7OztZQUVBTyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDVCxXQUFXLEdBQUc7WUFDckI7OztZQUVBVSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDVCxXQUFXLEdBQUc7WUFDckI7OztZQUVBVSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSSxDQUFDVCxXQUFXLEdBQUc7WUFDckI7OztZQUVBVSxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxnQkFBZ0I7Z0JBQ3BDLElBQUlDLDBCQUEwQjtnQkFFOUIsSUFBSUQscUJBQXFCLE1BQU07b0JBQzdCQywwQkFBMEI7Z0JBQzVCLE9BQU87b0JBQ0wsSUFBTWQsY0FBY2EsaUJBQWlCVixjQUFjO29CQUVuRCxJQUFJLElBQUksQ0FBQ0gsV0FBVyxLQUFLQSxhQUFhO3dCQUNwQyxJQUFNQyxjQUFjWSxpQkFBaUJULGNBQWM7d0JBRW5ELElBQUksSUFBSSxDQUFDSCxXQUFXLElBQUlBLGFBQWE7NEJBQ25DYSwwQkFBMEI7d0JBQzVCO29CQUNGO2dCQUNGO2dCQUVBLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsU0FBUyxBQUFDLEdBQXNCLE9BQXBCLElBQUksQ0FBQ2hCLFdBQVcsRUFBQyxLQUF1QixPQUFwQixJQUFJLENBQUNDLFdBQVcsRUFBQyxLQUFvQixPQUFqQixJQUFJLENBQUNDLFdBQVc7Z0JBRTFFLE9BQU9jO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsZ0JBQWdCLElBQUksQ0FBQ2xCLFdBQVcsR0FBR21CLG1DQUF1QixHQUFHLElBQUksQ0FBQ2xCLFdBQVcsR0FBR21CLG1DQUF1QixHQUFHLElBQUksQ0FBQ2xCLFdBQVcsR0FBR21CLG1DQUF1QjtnQkFFMUosT0FBT0g7WUFDVDs7OztZQUVPSSxLQUFBQTttQkFBUCxTQUFPQSxXQUFXTixNQUFNO2dCQUN0QixJQUFNaEIsY0FBY3VCLElBQUFBLDhCQUFxQixFQUFDUCxTQUNwQ2YsY0FBY3VCLElBQUFBLDhCQUFxQixFQUFDUixTQUNwQ2QsY0FBY3VCLElBQUFBLDhCQUFxQixFQUFDVCxTQUNwQ1UsVUFBVSxJQS9FQzNCLFFBK0VXQyxhQUFhQyxhQUFhQztnQkFFdEQsT0FBT3dCO1lBQ1Q7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQTtnQkFDTCxJQUFNM0IsY0FBYyxHQUNkQyxjQUFjLEdBQ2RDLGNBQWMsR0FDZHdCLFVBQVUsSUF4RkMzQixRQXdGV0MsYUFBYUMsYUFBYUM7Z0JBRXRELE9BQU93QjtZQUNUOzs7WUFFT0UsS0FBQUE7bUJBQVAsU0FBT0EsWUFBWUYsT0FBTztnQkFDeEIsSUFBTTFCLGNBQWMwQixRQUFRdkIsY0FBYyxJQUNwQ0YsY0FBY3lCLFFBQVF0QixjQUFjLElBQ3BDRixjQUFjd0IsUUFBUXJCLGNBQWM7Z0JBRTFDcUIsVUFBVSxJQWxHTzNCLFFBa0dLQyxhQUFhQyxhQUFhQyxjQUFjLEdBQUc7Z0JBRWpFLE9BQU93QjtZQUNUOzs7WUFFT0csS0FBQUE7bUJBQVAsU0FBT0Esa0JBQWtCWCxhQUFhO2dCQUNwQyxJQUFNWSxTQUFTWixlQUNUbEIsY0FBYytCLElBQUFBLDhCQUFxQixFQUFDRCxTQUNwQzdCLGNBQWMrQixJQUFBQSw4QkFBcUIsRUFBQ0YsU0FDcEM1QixjQUFjK0IsSUFBQUEsOEJBQXFCLEVBQUNILFNBQ3BDSixVQUFVLElBNUdDM0IsUUE0R1dDLGFBQWFDLGFBQWFDO2dCQUV0RCxPQUFPd0I7WUFDVDs7O1dBL0dtQjNCIn0=
package/license.txt ADDED
@@ -0,0 +1,48 @@
1
+ MIT And Anti-996 Licenses
2
+
3
+ Copyright (c) 2023 James Smith
4
+
5
+ These licenses shall be included in all copies or substantial portions of
6
+ this software and associated documentation files (the "Software").
7
+
8
+ Permission is hereby granted, free of charge, to any person obtaining a copy
9
+ of this Software, to deal in the Software without restriction, including
10
+ without limitation the rights to use, copy, modify, merge, publish,
11
+ distribute, sublicense, and/or sell copies of the Software, and to permit
12
+ persons to whom the Software is furnished to do so, subject to the following
13
+ conditions:
14
+
15
+ 1. The individual or the legal entity must conspicuously display,
16
+ without modification, this License and the notice on each redistributed
17
+ or derivative copy of the Licensed Work.
18
+
19
+ 2. The individual or the legal entity must strictly comply with all
20
+ applicable laws, regulations, rules and standards of the jurisdiction
21
+ relating to labor and employment where the individual is physically
22
+ located or where the individual was born or naturalized; or where the
23
+ legal entity is registered or is operating (whichever is stricter). In
24
+ case that the jurisdiction has no such laws, regulations, rules and
25
+ standards or its laws, regulations, rules and standards are
26
+ unenforceable, the individual or the legal entity are required to
27
+ comply with Core International Labor Standards.
28
+
29
+ 3. The individual or the legal entity shall not induce, suggest or force
30
+ its employee(s), whether full-time or part-time, or its independent
31
+ contractor(s), in any methods, to agree in oral or written form, to
32
+ directly or indirectly restrict, weaken or relinquish his or her
33
+ rights or remedies under such laws, regulations, rules and standards
34
+ relating to labor and employment as mentioned above, no matter whether
35
+ such written or oral agreements are enforceable under the laws of the
36
+ said jurisdiction, nor shall such individual or the legal entity
37
+ limit, in any methods, the rights of its employee(s) or independent
38
+ contractor(s) from reporting or complaining to the copyright holder or
39
+ relevant authorities monitoring the compliance of the license about
40
+ its violation(s) of the said license.
41
+
42
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
43
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
44
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
45
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
46
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
47
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
48
+ SOFTWARE.
package/package.json ADDED
@@ -0,0 +1,34 @@
1
+ {
2
+ "name": "occam-entities",
3
+ "author": "James Smith",
4
+ "version": "1.0.1",
5
+ "license": "MIT, Anti-996",
6
+ "homepage": "https://github.com/djalbat/occam-entities",
7
+ "description": "Occam's entities.",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/djalbat/occam-entities"
11
+ },
12
+ "dependencies": {
13
+ "necessary": "^11.9.3",
14
+ "occam-dom": "^3.1.63",
15
+ "occam-grammars": "^1.0.469"
16
+ },
17
+ "devDependencies": {
18
+ "@swc/core": "^1.2.51",
19
+ "watchful-cli": "^1.7.39"
20
+ },
21
+ "scripts": {
22
+ "clean": "rm -rf ./lib",
23
+ "watchful": "watchful -m --transpiler=swc --source-directory=./src --lib-directory=./lib",
24
+ "batch": "npm run watchful batch --",
25
+ "batch-debug": "npm run watchful batch -- --debug",
26
+ "incremental": "npm run watchful incremental --",
27
+ "incremental-debug": "npm run watchful incremental -- --debug",
28
+ "build": "npm run clean && npm run batch",
29
+ "build-debug": "npm run clean && npm run batch-debug",
30
+ "watch": "npm run clean && npm run batch && npm run incremental",
31
+ "watch-debug": "npm run clean && npm run batch-debug && npm run incremental-debug"
32
+ },
33
+ "main": "./lib/index"
34
+ }
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export const EMPTY_STRING = "";
4
+ export const DOUBLE_SPACE = " ";
5
+ export const ENTRIES_MAXIMUM_LENGTH = 1024;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ import { asynchronousUtilities } from "necessary";
4
+
5
+ import Dependency from "./dependency";
6
+ import ShortenedVersion from "./shortenedVersion";
7
+
8
+ const { forEach } = asynchronousUtilities;
9
+
10
+ export default class Dependencies {
11
+ constructor(array) {
12
+ this.array = array;
13
+ }
14
+
15
+ addDependency(dependency) {
16
+ this.array.push(dependency);
17
+ }
18
+
19
+ mapDependency(callback) {
20
+ return this.array.map(callback);
21
+ }
22
+
23
+ everyDependency(callback) {
24
+ return this.array.every(callback);
25
+ }
26
+
27
+ reduceDependency(callback, initialValue) {
28
+ return this.array.reduce(callback, initialValue);
29
+ }
30
+
31
+ forEachDependency(callback) {
32
+ this.array.forEach(callback);
33
+ }
34
+
35
+ asynchronousForEachDependency(operation, done) { forEach(this.array, operation, done); }
36
+
37
+ 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;
44
+
45
+ return dependenciesJSON;
46
+ }, {}),
47
+ json = dependenciesJSON; ///
48
+
49
+ return json;
50
+ }
51
+
52
+ static fromJSON(json) {
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);
65
+
66
+ return dependencies;
67
+ }
68
+
69
+ static fromNothing() {
70
+ const array = [],
71
+ dependencies = new Dependencies(array);
72
+
73
+ return dependencies;
74
+ }
75
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ export default class Dependency {
4
+ constructor(name, shortenedVersion) {
5
+ this.name = name;
6
+ this.shortenedVersion = shortenedVersion;
7
+ }
8
+
9
+ getName() {
10
+ return this.name;
11
+ }
12
+
13
+ getShortedVersion() {
14
+ return this.shortenedVersion;
15
+ }
16
+
17
+ static fromName(name) {
18
+ const shortenedVersion = null,
19
+ dependency = new Dependency(name, shortenedVersion);
20
+
21
+ return dependency;
22
+ }
23
+
24
+ static fromNameAndShortenedVersion(name, shortenedVersion) {
25
+ const dependency = new Dependency(name, shortenedVersion);
26
+
27
+ return dependency;
28
+ }
29
+ }