occam-open-cli 5.0.44 → 5.0.45

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.
package/README.md CHANGED
@@ -41,6 +41,8 @@ Commands:
41
41
 
42
42
  initialise Create a configuration file
43
43
 
44
+ set-options Set options
45
+
44
46
  clone <package_name> Clone a package with Git
45
47
 
46
48
  publish <package_name> Publish a package
@@ -53,9 +55,7 @@ Commands:
53
55
 
54
56
  sign-out Sign out
55
57
 
56
- set-options Set options
57
-
58
- reset-password [<email_address>] Reset your password
58
+ reset-password [<email_address>] Reset password
59
59
 
60
60
  Options:
61
61
 
@@ -6,8 +6,7 @@ const createAccountOperation = require("../operation/createAccount"),
6
6
  setIdentityTokenOperation = require("../operation/setIdentityToken"),
7
7
  emailAddressPromptOperation = require("../operation/prompt/emailAddress");
8
8
 
9
- const { executeOperations } = require("../utilities/operation"),
10
- { FAILED_CREATE_ACCOUNT_MESSAGE, SUCCESSFUL_CREATE_ACCOUNT_MESSAGE } = require("../messages");
9
+ const { executeOperations } = require("../utilities/operation");
11
10
 
12
11
  function createAccount(argument) {
13
12
  const emailAddress = argument, ///
@@ -27,10 +26,7 @@ function createAccount(argument) {
27
26
  };
28
27
 
29
28
  executeOperations(operations, (completed) => {
30
- const success = completed, ///
31
- message = success ?
32
- SUCCESSFUL_CREATE_ACCOUNT_MESSAGE :
33
- FAILED_CREATE_ACCOUNT_MESSAGE;
29
+ const { message } = context;
34
30
 
35
31
  console.log(message);
36
32
 
@@ -13,6 +13,8 @@ Commands:
13
13
 
14
14
  initialise Create a configuration file
15
15
 
16
+ set-options Set options
17
+
16
18
  clone <package_name> Clone a package with Git
17
19
 
18
20
  publish <package_name> Publish a package
@@ -25,9 +27,7 @@ Commands:
25
27
 
26
28
  sign-out Sign out
27
29
 
28
- set-options Set options
29
-
30
- reset-password [<email_address>] Reset your password
30
+ reset-password [<email_address>] Reset password
31
31
 
32
32
  Options:
33
33
 
@@ -41,6 +41,8 @@ Please see the readme file on GitHub:
41
41
 
42
42
  https://github.com/djalbat/occam-open-cli
43
43
  `);
44
+
45
+ process.exit();
44
46
  }
45
47
 
46
48
  module.exports = help;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ const { OPEN_MESSAGE } = require("../messages");
4
+
5
+ function open(argument) {
6
+ const message = OPEN_MESSAGE;
7
+
8
+ console.log(message);
9
+
10
+ process.exit();
11
+ }
12
+
13
+ module.exports = open;
@@ -3,8 +3,7 @@
3
3
  const resetPasswordOperation = require("../operation/resetPassword"),
4
4
  emailAddressPromptOperation = require("../operation/prompt/emailAddress");
5
5
 
6
- const { executeOperations } = require("../utilities/operation"),
7
- { RESET_PASSWORD_MESSAGE } = require("../messages");
6
+ const { executeOperations } = require("../utilities/operation");
8
7
 
9
8
  function resetPassword(argument) {
10
9
  const emailAddress = argument, ///
@@ -17,7 +16,7 @@ function resetPassword(argument) {
17
16
  };
18
17
 
19
18
  executeOperations(operations, (completed) => {
20
- const message = RESET_PASSWORD_MESSAGE;
19
+ const { message } = context;
21
20
 
22
21
  console.log(message);
23
22
 
@@ -5,8 +5,7 @@ const signInOperation = require("../operation/signIn"),
5
5
  setIdentityTokenOperation = require("../operation/setIdentityToken"),
6
6
  emailAddressOrUsernamePromptOperation = require("../operation/prompt/emailAddressOrUsername");
7
7
 
8
- const { executeOperations } = require("../utilities/operation"),
9
- { FAILED_SIGN_IN_MESSAGE, SUCCESSFUL_SIGN_IN_MESSAGE } = require("../messages");
8
+ const { executeOperations } = require("../utilities/operation");
10
9
 
11
10
  function signIn(argument) {
12
11
  const emailAddressOrUsername = argument, ///
@@ -23,10 +22,7 @@ function signIn(argument) {
23
22
  };
24
23
 
25
24
  executeOperations(operations, (completed) => {
26
- const success = completed, ///
27
- message = success ?
28
- SUCCESSFUL_SIGN_IN_MESSAGE :
29
- FAILED_SIGN_IN_MESSAGE;
25
+ const { message } = context;
30
26
 
31
27
  console.log(message);
32
28
 
@@ -8,6 +8,8 @@ function version() {
8
8
  version = packageVersion; ///
9
9
 
10
10
  console.log(`${OPEN_CLI} version ${version}`);
11
+
12
+ process.exit();
11
13
  }
12
14
 
13
15
  module.exports = version;
package/bin/actions.js CHANGED
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  const help = require("./action/help"),
4
+ open = require("./action/open"),
4
5
  clone = require("./action/clone"),
5
6
  signIn = require("./action/signIn"),
6
7
  signOut = require("./action/signOut"),
7
8
  version = require("./action/version"),
8
- install = require("./action/install"),
9
9
  publish = require("./action/publish"),
10
10
  deprecate = require("./action/deprecate"),
11
11
  initialise = require("./action/initialise"),
@@ -44,7 +44,7 @@ function actions(command, argument, options) {
44
44
  case HELP_COMMAND : help(); break;
45
45
  case CLONE_COMMAND : clone(argument); break;
46
46
  case VERSION_COMMAND : version(); break;
47
- case INSTALL_COMMAND : install(argument); break;
47
+ case INSTALL_COMMAND : open(argument); break;
48
48
  case PUBLISH_COMMAND : publish(argument); break;
49
49
  case SIGN_IN_COMMAND : signIn(argument); break;
50
50
  case SIGN_OUT_COMMAND : signOut(); break;
@@ -57,7 +57,7 @@ function actions(command, argument, options) {
57
57
  default :
58
58
  argument = command; ///
59
59
 
60
- install(argument);
60
+ open(argument);
61
61
 
62
62
  break;
63
63
  }
package/bin/commands.js CHANGED
@@ -3,7 +3,6 @@
3
3
  const HELP_COMMAND = "help",
4
4
  CLONE_COMMAND = "clone",
5
5
  VERSION_COMMAND = "version",
6
- INSTALL_COMMAND = "install",
7
6
  PUBLISH_COMMAND = "publish",
8
7
  SIGN_IN_COMMAND = "sign-in",
9
8
  SIGN_OUT_COMMAND = "sign-out",
@@ -17,7 +16,6 @@ module.exports = {
17
16
  HELP_COMMAND,
18
17
  CLONE_COMMAND,
19
18
  VERSION_COMMAND,
20
- INSTALL_COMMAND,
21
19
  PUBLISH_COMMAND,
22
20
  SIGN_IN_COMMAND,
23
21
  SIGN_OUT_COMMAND,
package/bin/messages.js CHANGED
@@ -1,11 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  const PASSWORDS_DO_NOT_MATCH_MESSAGE = "The passwords do not match.",
4
- SERVER_FAILED_TO_RESPOND_ERROR_MESSAGE = "The server failed to respond in a timely fashion. If this problem persists then please be kind enough to report it.",
4
+ SERVER_FAILED_TO_RESPOND_ERROR_MESSAGE = "The server did not respond in a timely or intelligible fashion. If this problem persists then please be kind enough to report it.",
5
5
  CONFIGURATION_FILE_DOES_NOT_EXIST_MESSAGE = "The action cannot be performed because the configuration file is missing. Run 'open initialise' to create one.",
6
- INSTALL_MESSAGE = "The install functionality is not implemented yet.",
6
+ OPEN_MESSAGE = "The open functionality is not implemented yet.",
7
7
  SIGN_OUT_MESSAGE = "You have been signed out.",
8
- RESET_PASSWORD_MESSAGE = "If the email address corresponds to an account then an email will have been sent.",
9
8
  INVALID_USERNAME_MESSAGE = "Usernames must consist of groups of at least two and no more than sixteen numbers or lowercase letters, separated by dashes.",
10
9
  INVALID_PASSWORD_MESSAGE = "Passwords must consist of at least eight letters, numbers or common punctuation symbols.",
11
10
  INVALID_AFFIRMATION_MESSAGE = "You must answer (y)es or (n)o.",
@@ -13,17 +12,13 @@ const PASSWORDS_DO_NOT_MATCH_MESSAGE = "The passwords do not match.",
13
12
  INVALID_EMAIL_ADDRESS_MESSAGE = "The email address does not appear to be a valid one.",
14
13
  INVALID_GITHUB_HOST_NAME_MESSAGE = "The GitHub host name can be any number of alphabetical, numeric, dash or period characters, or can be left blank.",
15
14
  INVALID_EMAIL_ADDRESS_OR_USERNAME_MESSAGE = "The email address or username does not appear to be a valid one.",
16
- FAILED_CLONE_MESSAGE = "Failed to clone the package. Perhaps the readme file or meta JSON file is missing.",
17
- FAILED_SIGN_IN_MESSAGE = "Failed to sign in.",
15
+ FAILED_CLONE_MESSAGE = "Failed to clone the package.",
18
16
  FAILED_PUBLISH_MESSAGE = "Failed to publish the package.",
19
17
  FAILED_DEPRECATE_MESSAGE = "Failed to deprecate the package.",
20
18
  FAILED_INITIALISE_MESSAGE = "Failed to create a configuration file because one is already present.",
21
19
  FAILED_SET_OPTIONS_MESSAGE = "Failed to set the options.",
22
- FAILED_CREATE_ACCOUNT_MESSAGE = "Failed to create account.",
23
20
  SUCCESSFUL_CLONE_MESSAGE = "The package has been cloned successfully.",
24
- SUCCESSFUL_SIGN_IN_MESSAGE = "You have signed in successfully.",
25
21
  SUCCESSFUL_PUBLISH_MESSAGE = "The package has been published successfully.",
26
- SUCCESSFUL_CREATE_ACCOUNT_MESSAGE = "You have created an account successfully.",
27
22
  SUCCESSFUL_DEPRECATE_MESSAGE = "The package has been deprecated successfully.",
28
23
  SUCCESSFUL_INITIALISE_MESSAGE = "The configuration file has been created successfully.",
29
24
  SUCCESSFUL_SET_OPTIONS_MESSAGE = "The options have been set successfully.";
@@ -32,9 +27,8 @@ module.exports = {
32
27
  PASSWORDS_DO_NOT_MATCH_MESSAGE,
33
28
  SERVER_FAILED_TO_RESPOND_ERROR_MESSAGE,
34
29
  CONFIGURATION_FILE_DOES_NOT_EXIST_MESSAGE,
35
- INSTALL_MESSAGE,
30
+ OPEN_MESSAGE,
36
31
  SIGN_OUT_MESSAGE,
37
- RESET_PASSWORD_MESSAGE,
38
32
  INVALID_USERNAME_MESSAGE,
39
33
  INVALID_PASSWORD_MESSAGE,
40
34
  INVALID_AFFIRMATION_MESSAGE,
@@ -43,16 +37,12 @@ module.exports = {
43
37
  INVALID_GITHUB_HOST_NAME_MESSAGE,
44
38
  INVALID_EMAIL_ADDRESS_OR_USERNAME_MESSAGE,
45
39
  FAILED_CLONE_MESSAGE,
46
- FAILED_SIGN_IN_MESSAGE,
47
40
  FAILED_PUBLISH_MESSAGE,
48
41
  FAILED_DEPRECATE_MESSAGE,
49
42
  FAILED_INITIALISE_MESSAGE,
50
43
  FAILED_SET_OPTIONS_MESSAGE,
51
- FAILED_CREATE_ACCOUNT_MESSAGE,
52
44
  SUCCESSFUL_CLONE_MESSAGE,
53
- SUCCESSFUL_SIGN_IN_MESSAGE,
54
45
  SUCCESSFUL_PUBLISH_MESSAGE,
55
- SUCCESSFUL_CREATE_ACCOUNT_MESSAGE,
56
46
  SUCCESSFUL_DEPRECATE_MESSAGE,
57
47
  SUCCESSFUL_INITIALISE_MESSAGE,
58
48
  SUCCESSFUL_SET_OPTIONS_MESSAGE
@@ -21,8 +21,6 @@ function cloneOperation(proceed, abort, context) {
21
21
 
22
22
  exec(command, (error) => {
23
23
  if (error) {
24
- console.log(`An error occurred: ${error}`);
25
-
26
24
  abort();
27
25
 
28
26
  return;
@@ -14,15 +14,10 @@ function createAccountOperation(proceed, abort, context) {
14
14
  };
15
15
 
16
16
  post(uri, json, (json) => {
17
- const { identityToken = null } = json;
18
-
19
- if (identityToken === null) {
20
- abort();
21
-
22
- return;
23
- }
17
+ const { message = null, identityToken = null } = json;
24
18
 
25
19
  Object.assign(context, {
20
+ message,
26
21
  identityToken
27
22
  });
28
23
 
@@ -8,8 +8,15 @@ const { PERIOD_CHARACTER } = characters,
8
8
  { entriesFromTopmostDirectoryName } = entriesUtilities;
9
9
 
10
10
  function createReleaseOperation(proceed, abort, context) {
11
- const { releaseName } = context,
12
- release = releaseFromReleaseName(releaseName);
11
+ const { releaseName } = context;
12
+
13
+ let release = null;
14
+
15
+ try {
16
+ release = releaseFromReleaseName(releaseName);
17
+ } catch (error) {
18
+ ///
19
+ }
13
20
 
14
21
  if (release === null) {
15
22
  abort();
@@ -12,11 +12,7 @@ function deprecateOperation(proceed, abort, context) {
12
12
  };
13
13
 
14
14
  post(uri, json, (json) => {
15
- const { success } = json;
16
-
17
- success ?
18
- proceed() :
19
- abort();
15
+ proceed();
20
16
  });
21
17
  }
22
18
 
@@ -12,6 +12,12 @@ function resetPasswordOperation(proceed, abort, context) {
12
12
  };
13
13
 
14
14
  post(uri, json, (json) => {
15
+ const { message = null } = json;
16
+
17
+ Object.assign(context, {
18
+ message
19
+ });
20
+
15
21
  proceed();
16
22
  });
17
23
  }
@@ -5,7 +5,9 @@ const { setIdentityToken } = require("../configuration");
5
5
  function setIdentityTokenOperation(proceed, abort, context) {
6
6
  const { identityToken } = context;
7
7
 
8
- setIdentityToken(identityToken);
8
+ if (identityToken !== null) {
9
+ setIdentityToken(identityToken);
10
+ }
9
11
 
10
12
  proceed();
11
13
  }
@@ -13,15 +13,10 @@ function signInOperation(proceed, abort, context) {
13
13
  };
14
14
 
15
15
  post(uri, json, (json) => {
16
- const { identityToken = null } = json;
17
-
18
- if (identityToken === null) {
19
- abort();
20
-
21
- return;
22
- }
16
+ const { message = null, identityToken = null } = json;
23
17
 
24
18
  Object.assign(context, {
19
+ message,
25
20
  identityToken
26
21
  });
27
22
 
package/bin/post.js CHANGED
@@ -1,14 +1,16 @@
1
1
  "use strict";
2
2
 
3
- const { Readable } = require("stream");
4
- const { headers, contentTypes, requestUtilities } = require("necessary");
3
+ const { Readable } = require("stream"),
4
+ { headers, contentTypes, statusCodes, requestUtilities } = require("necessary");
5
5
 
6
6
  const { getHost } = require("./configuration"),
7
7
  { getPackageVersion } = require("./utilities/packageJSON"),
8
8
  { contentFromResponse } = require("./utilities/response"),
9
+ { statusMessageFromStatusCode } = require("./utilities/status"),
9
10
  { SERVER_FAILED_TO_RESPOND_ERROR_MESSAGE } = require("./messages");
10
11
 
11
12
  const { createPostRequest } = requestUtilities,
13
+ { OK_200_STATUS_CODE } = statusCodes,
12
14
  { CONTENT_TYPE_HEADER } = headers,
13
15
  { APPLICATION_JSON_CHARSET_UTF_8_CONTENT_TYPE } = contentTypes;
14
16
 
@@ -24,31 +26,42 @@ function post(uri, json, callback) {
24
26
  });
25
27
 
26
28
  const postRequest = createPostRequest(host, uri, query, headers, (error, response) => {
27
- if (error) {
28
- console.log(SERVER_FAILED_TO_RESPOND_ERROR_MESSAGE);
29
+ if (error) {
30
+ console.log(SERVER_FAILED_TO_RESPOND_ERROR_MESSAGE);
29
31
 
30
- process.exit();
31
- }
32
+ process.exit();
33
+ }
32
34
 
33
- contentFromResponse(response, (content) => {
34
- let json;
35
+ const { statusCode } = response;
35
36
 
36
- try {
37
- const jsonString = content; ///
37
+ if (statusCode !== OK_200_STATUS_CODE) {
38
+ const statusMessage = statusMessageFromStatusCode(statusCode);
38
39
 
39
- json = JSON.parse(jsonString);
40
- } catch (error) {
41
- if (error) {
42
- console.log(SERVER_FAILED_TO_RESPOND_ERROR_MESSAGE);
40
+ console.log(`The server responded with '${statusMessage}'.`);
43
41
 
44
- process.exit();
45
- }
46
- }
42
+ process.exit();
43
+ }
47
44
 
48
- callback(json);
49
- });
50
- }),
51
- readable = Readable.from(content);
45
+ contentFromResponse(response, (content) => {
46
+ let json;
47
+
48
+ try {
49
+ const jsonString = content; ///
50
+
51
+ json = JSON.parse(jsonString);
52
+ } catch (error) {
53
+ if (error) {
54
+ console.log(SERVER_FAILED_TO_RESPOND_ERROR_MESSAGE);
55
+
56
+ process.exit();
57
+ }
58
+ }
59
+
60
+ callback(json);
61
+ });
62
+ });
63
+
64
+ const readable = Readable.from(content);
52
65
 
53
66
  readable.pipe(postRequest);
54
67
  }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ const { statusCodes, statusMessages } = require("necessary");
4
+
5
+ const { ZERO_0_STATUS_CODE,
6
+ OK_200_STATUS_CODE,
7
+ FOUND_302_STATUS_CODE,
8
+ CREATED_201_STATUS_CODE,
9
+ SEE_OTHER_303_STATUS_CODE,
10
+ FORBIDDEN_403_STATUS_CODE,
11
+ NOT_FOUND_404_STATUS_CODE,
12
+ NO_CONTENT_204_STATUS_CODE,
13
+ BAD_GATEWAY_502_STATUS_CODE,
14
+ BAD_REQUEST_400_STATUS_CODE,
15
+ UNAUTHORIZED_401_STATUS_CODE,
16
+ REQUEST_TIMEOUT_408_STATUS_CODE,
17
+ TOO_MANY_REQUESTS_429_STATUS_CODE,
18
+ SERVICE_UNAVAILABLE_503_STATUS_CODE,
19
+ INTERNAL_SERVER_ERROR_500_STATUS_CODE } = statusCodes,
20
+ { ZERO_0_STATUS_MESSAGE,
21
+ OK_200_STATUS_MESSAGE,
22
+ FOUND_302_STATUS_MESSAGE,
23
+ CREATED_201_STATUS_MESSAGE,
24
+ SEE_OTHER_303_STATUS_MESSAGE,
25
+ FORBIDDEN_403_STATUS_MESSAGE,
26
+ NOT_FOUND_404_STATUS_MESSAGE,
27
+ NO_CONTENT_204_STATUS_MESSAGE,
28
+ BAD_GATEWAY_502_STATUS_MESSAGE,
29
+ BAD_REQUEST_400_STATUS_MESSAGE,
30
+ UNAUTHORIZED_401_STATUS_MESSAGE,
31
+ REQUEST_TIMEOUT_408_STATUS_MESSAGE,
32
+ TOO_MANY_REQUESTS_429_STATUS_MESSAGE,
33
+ SERVICE_UNAVAILABLE_503_STATUS_MESSAGE,
34
+ INTERNAL_SERVER_ERROR_500_STATUS_MESSAGE } = statusMessages;
35
+
36
+ const statusMap = {
37
+ [ZERO_0_STATUS_CODE]: ZERO_0_STATUS_MESSAGE,
38
+ [OK_200_STATUS_CODE]: OK_200_STATUS_MESSAGE,
39
+ [FOUND_302_STATUS_CODE]: FOUND_302_STATUS_MESSAGE,
40
+ [CREATED_201_STATUS_CODE]: CREATED_201_STATUS_MESSAGE,
41
+ [SEE_OTHER_303_STATUS_CODE]: SEE_OTHER_303_STATUS_MESSAGE,
42
+ [FORBIDDEN_403_STATUS_CODE]: FORBIDDEN_403_STATUS_MESSAGE,
43
+ [NOT_FOUND_404_STATUS_CODE]: NOT_FOUND_404_STATUS_MESSAGE,
44
+ [NO_CONTENT_204_STATUS_CODE]: NO_CONTENT_204_STATUS_MESSAGE,
45
+ [BAD_GATEWAY_502_STATUS_CODE]: BAD_GATEWAY_502_STATUS_MESSAGE,
46
+ [BAD_REQUEST_400_STATUS_CODE]: BAD_REQUEST_400_STATUS_MESSAGE,
47
+ [UNAUTHORIZED_401_STATUS_CODE]: UNAUTHORIZED_401_STATUS_MESSAGE,
48
+ [REQUEST_TIMEOUT_408_STATUS_CODE]: REQUEST_TIMEOUT_408_STATUS_MESSAGE,
49
+ [TOO_MANY_REQUESTS_429_STATUS_CODE]: TOO_MANY_REQUESTS_429_STATUS_MESSAGE,
50
+ [SERVICE_UNAVAILABLE_503_STATUS_CODE]: SERVICE_UNAVAILABLE_503_STATUS_MESSAGE,
51
+ [INTERNAL_SERVER_ERROR_500_STATUS_CODE]: INTERNAL_SERVER_ERROR_500_STATUS_MESSAGE
52
+ };
53
+
54
+ function statusMessageFromStatusCode(statusCode) {
55
+ const statusMessage = statusMap[statusCode];
56
+
57
+ return statusMessage;
58
+ }
59
+
60
+ module.exports = {
61
+ statusMessageFromStatusCode
62
+ };
package/lib/browser.js CHANGED
@@ -15,9 +15,6 @@ _export(exports, {
15
15
  Files: function() {
16
16
  return _files.default;
17
17
  },
18
- types: function() {
19
- return _types.default;
20
- },
21
18
  Version: function() {
22
19
  return _version.default;
23
20
  },
@@ -33,6 +30,15 @@ _export(exports, {
33
30
  Projects: function() {
34
31
  return _projects.default;
35
32
  },
33
+ Dependency: function() {
34
+ return _dependency.default;
35
+ },
36
+ ShortenedVersion: function() {
37
+ return _shortenedVersion.default;
38
+ },
39
+ types: function() {
40
+ return _types.default;
41
+ },
36
42
  fileNames: function() {
37
43
  return _fileNames.default;
38
44
  },
@@ -48,12 +54,14 @@ _export(exports, {
48
54
  });
49
55
  var _file = /*#__PURE__*/ _interopRequireDefault(require("./file"));
50
56
  var _files = /*#__PURE__*/ _interopRequireDefault(require("./files"));
51
- var _types = /*#__PURE__*/ _interopRequireDefault(require("./types"));
52
57
  var _version = /*#__PURE__*/ _interopRequireDefault(require("./version"));
53
58
  var _release = /*#__PURE__*/ _interopRequireDefault(require("./release"));
54
59
  var _entries = /*#__PURE__*/ _interopRequireDefault(require("./entries"));
55
60
  var _project = /*#__PURE__*/ _interopRequireDefault(require("./project"));
56
61
  var _projects = /*#__PURE__*/ _interopRequireDefault(require("./projects"));
62
+ var _dependency = /*#__PURE__*/ _interopRequireDefault(require("./dependency"));
63
+ var _shortenedVersion = /*#__PURE__*/ _interopRequireDefault(require("./shortenedVersion"));
64
+ var _types = /*#__PURE__*/ _interopRequireDefault(require("./types"));
57
65
  var _fileNames = /*#__PURE__*/ _interopRequireDefault(require("./fileNames"));
58
66
  var _name = /*#__PURE__*/ _interopRequireDefault(require("./utilities/name"));
59
67
  var _content = /*#__PURE__*/ _interopRequireDefault(require("./utilities/content"));
@@ -64,4 +72,4 @@ function _interopRequireDefault(obj) {
64
72
  };
65
73
  }
66
74
 
67
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9icm93c2VyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlIH0gZnJvbSBcIi4vZmlsZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlcyB9IGZyb20gXCIuL2ZpbGVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHR5cGVzIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVmVyc2lvbiB9IGZyb20gXCIuL3ZlcnNpb25cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVsZWFzZSB9IGZyb20gXCIuL3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRW50cmllcyB9IGZyb20gXCIuL2VudHJpZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdHMgfSBmcm9tIFwiLi9wcm9qZWN0c1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaWxlTmFtZXMgfSBmcm9tIFwiLi9maWxlTmFtZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgbmFtZVV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9uYW1lXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGNvbnRlbnRVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvY29udGVudFwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaWxlUGF0aFV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9maWxlUGF0aFwiO1xuIl0sIm5hbWVzIjpbIkZpbGUiLCJGaWxlcyIsInR5cGVzIiwiVmVyc2lvbiIsIlJlbGVhc2UiLCJFbnRyaWVzIiwiUHJvamVjdCIsIlByb2plY3RzIiwiZmlsZU5hbWVzIiwibmFtZVV0aWxpdGllcyIsImNvbnRlbnRVdGlsaXRpZXMiLCJmaWxlUGF0aFV0aWxpdGllcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBRW9CQSxJQUFJO2VBQUpBLGFBQUk7O0lBQ0pDLEtBQUs7ZUFBTEEsY0FBSzs7SUFDTEMsS0FBSztlQUFMQSxjQUFLOztJQUNMQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxRQUFRO2VBQVJBLGlCQUFROztJQUNSQyxTQUFTO2VBQVRBLGtCQUFTOztJQUNUQyxhQUFhO2VBQWJBLGFBQWE7O0lBQ2JDLGdCQUFnQjtlQUFoQkEsZ0JBQWdCOztJQUNoQkMsaUJBQWlCO2VBQWpCQSxpQkFBaUI7Ozt5REFYTDswREFDQzswREFDQTs0REFDRTs0REFDQTs0REFDQTs0REFDQTs2REFDQzs4REFDQzt5REFDSTs0REFDRzs2REFDQyJ9
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9icm93c2VyLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlIH0gZnJvbSBcIi4vZmlsZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlcyB9IGZyb20gXCIuL2ZpbGVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFZlcnNpb24gfSBmcm9tIFwiLi92ZXJzaW9uXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFJlbGVhc2UgfSBmcm9tIFwiLi9yZWxlYXNlXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEVudHJpZXMgfSBmcm9tIFwiLi9lbnRyaWVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFByb2plY3QgfSBmcm9tIFwiLi9wcm9qZWN0XCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFByb2plY3RzIH0gZnJvbSBcIi4vcHJvamVjdHNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRGVwZW5kZW5jeSB9IGZyb20gXCIuL2RlcGVuZGVuY3lcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2hvcnRlbmVkVmVyc2lvbiB9IGZyb20gXCIuL3Nob3J0ZW5lZFZlcnNpb25cIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyB0eXBlcyB9IGZyb20gXCIuL3R5cGVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGZpbGVOYW1lcyB9IGZyb20gXCIuL2ZpbGVOYW1lc1wiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIG5hbWVVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvbmFtZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjb250ZW50VXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2NvbnRlbnRcIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaWxlUGF0aFV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9maWxlUGF0aFwiO1xuIl0sIm5hbWVzIjpbIkZpbGUiLCJGaWxlcyIsIlZlcnNpb24iLCJSZWxlYXNlIiwiRW50cmllcyIsIlByb2plY3QiLCJQcm9qZWN0cyIsIkRlcGVuZGVuY3kiLCJTaG9ydGVuZWRWZXJzaW9uIiwidHlwZXMiLCJmaWxlTmFtZXMiLCJuYW1lVXRpbGl0aWVzIiwiY29udGVudFV0aWxpdGllcyIsImZpbGVQYXRoVXRpbGl0aWVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFFb0JBLElBQUk7ZUFBSkEsYUFBSTs7SUFDSkMsS0FBSztlQUFMQSxjQUFLOztJQUNMQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxRQUFRO2VBQVJBLGlCQUFROztJQUNSQyxVQUFVO2VBQVZBLG1CQUFVOztJQUNWQyxnQkFBZ0I7ZUFBaEJBLHlCQUFnQjs7SUFFaEJDLEtBQUs7ZUFBTEEsY0FBSzs7SUFDTEMsU0FBUztlQUFUQSxrQkFBUzs7SUFFVEMsYUFBYTtlQUFiQSxhQUFhOztJQUNiQyxnQkFBZ0I7ZUFBaEJBLGdCQUFnQjs7SUFFaEJDLGlCQUFpQjtlQUFqQkEsaUJBQWlCOzs7eURBaEJMOzBEQUNDOzREQUNFOzREQUNBOzREQUNBOzREQUNBOzZEQUNDOytEQUNFO3FFQUNNOzBEQUVYOzhEQUNJO3lEQUVJOzREQUNHOzZEQUVDIn0=
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Dependency;
9
+ }
10
+ });
11
+ function _classCallCheck(instance, Constructor) {
12
+ if (!(instance instanceof Constructor)) {
13
+ throw new TypeError("Cannot call a class as a function");
14
+ }
15
+ }
16
+ function _defineProperties(target, props) {
17
+ for(var i = 0; i < props.length; i++){
18
+ var descriptor = props[i];
19
+ descriptor.enumerable = descriptor.enumerable || false;
20
+ descriptor.configurable = true;
21
+ if ("value" in descriptor) descriptor.writable = true;
22
+ Object.defineProperty(target, descriptor.key, descriptor);
23
+ }
24
+ }
25
+ function _createClass(Constructor, protoProps, staticProps) {
26
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
27
+ if (staticProps) _defineProperties(Constructor, staticProps);
28
+ return Constructor;
29
+ }
30
+ var Dependency = /*#__PURE__*/ function() {
31
+ function Dependency(name, shortenedVersion) {
32
+ _classCallCheck(this, Dependency);
33
+ this.name = name;
34
+ this.shortenedVersion = shortenedVersion;
35
+ }
36
+ _createClass(Dependency, [
37
+ {
38
+ key: "getName",
39
+ value: function getName() {
40
+ return this.name;
41
+ }
42
+ },
43
+ {
44
+ key: "getShortedVersion",
45
+ value: function getShortedVersion() {
46
+ return this.shortenedVersion;
47
+ }
48
+ }
49
+ ], [
50
+ {
51
+ key: "fromNameAndShortenedVersion",
52
+ value: function fromNameAndShortenedVersion(name, shortenedVersion) {
53
+ var dependency = new Dependency(name, shortenedVersion);
54
+ return dependency;
55
+ }
56
+ }
57
+ ]);
58
+ return Dependency;
59
+ }();
60
+
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZXBlbmRlbmN5LmpzIiwiPDxqc3gtY29uZmlnLXByYWdtYS5qcz4+Il0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBEZXBlbmRlbmN5IHtcbiAgY29uc3RydWN0b3IobmFtZSwgc2hvcnRlbmVkVmVyc2lvbikge1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5zaG9ydGVuZWRWZXJzaW9uID0gc2hvcnRlbmVkVmVyc2lvbjtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIGdldFNob3J0ZWRWZXJzaW9uKCkge1xuICAgIHJldHVybiB0aGlzLnNob3J0ZW5lZFZlcnNpb247XG4gIH1cblxuICBzdGF0aWMgZnJvbU5hbWVBbmRTaG9ydGVuZWRWZXJzaW9uKG5hbWUsIHNob3J0ZW5lZFZlcnNpb24pIHtcbiAgICBjb25zdCBkZXBlbmRlbmN5ID0gbmV3IERlcGVuZGVuY3kobmFtZSwgc2hvcnRlbmVkVmVyc2lvbik7XG5cbiAgICByZXR1cm4gZGVwZW5kZW5jeTtcbiAgfVxufVxuIiwiUmVhY3QuY3JlYXRlRWxlbWVudCJdLCJuYW1lcyI6WyJEZXBlbmRlbmN5IiwibmFtZSIsInNob3J0ZW5lZFZlcnNpb24iLCJnZXROYW1lIiwiZ2V0U2hvcnRlZFZlcnNpb24iLCJmcm9tTmFtZUFuZFNob3J0ZW5lZFZlcnNpb24iLCJkZXBlbmRlbmN5Il0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDJCQUFOO2FBQU1BLFdBQ1BDLElBQUksRUFBRUMsZ0JBQWdCOzhCQURmRjtRQUVqQixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLGdCQUFnQixHQUFHQTs7aUJBSFBGOztZQU1uQkcsS0FBQUE7bUJBQUFBLFNBQUFBLFVBQVU7Z0JBQ1IsT0FBTyxJQUFJLENBQUNGLElBQUk7WUFDbEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsb0JBQW9CO2dCQUNsQixPQUFPLElBQUksQ0FBQ0YsZ0JBQWdCO1lBQzlCOzs7O1lBRU9HLEtBQUFBO21CQUFQLFNBQU9BLDRCQUE0QkosSUFBSSxFQUFFQyxnQkFBZ0IsRUFBRTtnQkFDekQsSUFBTUksYUFBYSxJQWZGTixXQWVpQkMsTUFBTUM7Z0JBRXhDLE9BQU9JO1lBQ1Q7OztXQWxCbUJOIn0=
package/lib/main.js CHANGED
@@ -15,9 +15,6 @@ _export(exports, {
15
15
  Files: function() {
16
16
  return _files.default;
17
17
  },
18
- types: function() {
19
- return _types.default;
20
- },
21
18
  Version: function() {
22
19
  return _version.default;
23
20
  },
@@ -33,6 +30,15 @@ _export(exports, {
33
30
  Projects: function() {
34
31
  return _projects.default;
35
32
  },
33
+ Dependency: function() {
34
+ return _dependency.default;
35
+ },
36
+ ShortenedVersion: function() {
37
+ return _shortenedVersion.default;
38
+ },
39
+ types: function() {
40
+ return _types.default;
41
+ },
36
42
  fileNames: function() {
37
43
  return _fileNames.default;
38
44
  },
@@ -51,12 +57,14 @@ _export(exports, {
51
57
  });
52
58
  var _file = /*#__PURE__*/ _interopRequireDefault(require("./file"));
53
59
  var _files = /*#__PURE__*/ _interopRequireDefault(require("./files"));
54
- var _types = /*#__PURE__*/ _interopRequireDefault(require("./types"));
55
60
  var _version = /*#__PURE__*/ _interopRequireDefault(require("./version"));
56
61
  var _release = /*#__PURE__*/ _interopRequireDefault(require("./release"));
57
62
  var _entries = /*#__PURE__*/ _interopRequireDefault(require("./entries"));
58
63
  var _project = /*#__PURE__*/ _interopRequireDefault(require("./project"));
59
64
  var _projects = /*#__PURE__*/ _interopRequireDefault(require("./projects"));
65
+ var _dependency = /*#__PURE__*/ _interopRequireDefault(require("./dependency"));
66
+ var _shortenedVersion = /*#__PURE__*/ _interopRequireDefault(require("./shortenedVersion"));
67
+ var _types = /*#__PURE__*/ _interopRequireDefault(require("./types"));
60
68
  var _fileNames = /*#__PURE__*/ _interopRequireDefault(require("./fileNames"));
61
69
  var _name = /*#__PURE__*/ _interopRequireDefault(require("./utilities/name"));
62
70
  var _content = /*#__PURE__*/ _interopRequireDefault(require("./utilities/content"));
@@ -68,4 +76,4 @@ function _interopRequireDefault(obj) {
68
76
  };
69
77
  }
70
78
 
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlIH0gZnJvbSBcIi4vZmlsZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlcyB9IGZyb20gXCIuL2ZpbGVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHR5cGVzIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVmVyc2lvbiB9IGZyb20gXCIuL3ZlcnNpb25cIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUmVsZWFzZSB9IGZyb20gXCIuL3JlbGVhc2VcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRW50cmllcyB9IGZyb20gXCIuL2VudHJpZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgUHJvamVjdHMgfSBmcm9tIFwiLi9wcm9qZWN0c1wiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBmaWxlTmFtZXMgfSBmcm9tIFwiLi9maWxlTmFtZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgbmFtZVV0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9uYW1lXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGNvbnRlbnRVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvY29udGVudFwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBlbnRyaWVzVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2VudHJpZXNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZmlsZVBhdGhVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvZmlsZVBhdGhcIjtcbiJdLCJuYW1lcyI6WyJGaWxlIiwiRmlsZXMiLCJ0eXBlcyIsIlZlcnNpb24iLCJSZWxlYXNlIiwiRW50cmllcyIsIlByb2plY3QiLCJQcm9qZWN0cyIsImZpbGVOYW1lcyIsIm5hbWVVdGlsaXRpZXMiLCJjb250ZW50VXRpbGl0aWVzIiwiZW50cmllc1V0aWxpdGllcyIsImZpbGVQYXRoVXRpbGl0aWVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFFb0JBLElBQUk7ZUFBSkEsYUFBSTs7SUFDSkMsS0FBSztlQUFMQSxjQUFLOztJQUNMQyxLQUFLO2VBQUxBLGNBQUs7O0lBQ0xDLE9BQU87ZUFBUEEsZ0JBQU87O0lBQ1BDLE9BQU87ZUFBUEEsZ0JBQU87O0lBQ1BDLE9BQU87ZUFBUEEsZ0JBQU87O0lBQ1BDLE9BQU87ZUFBUEEsZ0JBQU87O0lBQ1BDLFFBQVE7ZUFBUkEsaUJBQVE7O0lBQ1JDLFNBQVM7ZUFBVEEsa0JBQVM7O0lBQ1RDLGFBQWE7ZUFBYkEsYUFBYTs7SUFDYkMsZ0JBQWdCO2VBQWhCQSxnQkFBZ0I7O0lBQ2hCQyxnQkFBZ0I7ZUFBaEJBLGlCQUFnQjs7SUFDaEJDLGlCQUFpQjtlQUFqQkEsaUJBQWlCOzs7eURBWkw7MERBQ0M7MERBQ0E7NERBQ0U7NERBQ0E7NERBQ0E7NERBQ0E7NkRBQ0M7OERBQ0M7eURBQ0k7NERBQ0c7NkRBQ0E7NkRBQ0MifQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlIH0gZnJvbSBcIi4vZmlsZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGaWxlcyB9IGZyb20gXCIuL2ZpbGVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFZlcnNpb24gfSBmcm9tIFwiLi92ZXJzaW9uXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFJlbGVhc2UgfSBmcm9tIFwiLi9yZWxlYXNlXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIEVudHJpZXMgfSBmcm9tIFwiLi9lbnRyaWVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFByb2plY3QgfSBmcm9tIFwiLi9wcm9qZWN0XCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFByb2plY3RzIH0gZnJvbSBcIi4vcHJvamVjdHNcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgRGVwZW5kZW5jeSB9IGZyb20gXCIuL2RlcGVuZGVuY3lcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU2hvcnRlbmVkVmVyc2lvbiB9IGZyb20gXCIuL3Nob3J0ZW5lZFZlcnNpb25cIjtcblxuZXhwb3J0IHsgZGVmYXVsdCBhcyB0eXBlcyB9IGZyb20gXCIuL3R5cGVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGZpbGVOYW1lcyB9IGZyb20gXCIuL2ZpbGVOYW1lc1wiO1xuXG5leHBvcnQgeyBkZWZhdWx0IGFzIG5hbWVVdGlsaXRpZXMgfSBmcm9tIFwiLi91dGlsaXRpZXMvbmFtZVwiO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBjb250ZW50VXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2NvbnRlbnRcIjtcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZW50cmllc1V0aWxpdGllcyB9IGZyb20gXCIuL3V0aWxpdGllcy9lbnRyaWVzXCI7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGZpbGVQYXRoVXRpbGl0aWVzIH0gZnJvbSBcIi4vdXRpbGl0aWVzL2ZpbGVQYXRoXCI7XG4iXSwibmFtZXMiOlsiRmlsZSIsIkZpbGVzIiwiVmVyc2lvbiIsIlJlbGVhc2UiLCJFbnRyaWVzIiwiUHJvamVjdCIsIlByb2plY3RzIiwiRGVwZW5kZW5jeSIsIlNob3J0ZW5lZFZlcnNpb24iLCJ0eXBlcyIsImZpbGVOYW1lcyIsIm5hbWVVdGlsaXRpZXMiLCJjb250ZW50VXRpbGl0aWVzIiwiZW50cmllc1V0aWxpdGllcyIsImZpbGVQYXRoVXRpbGl0aWVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7SUFFb0JBLElBQUk7ZUFBSkEsYUFBSTs7SUFDSkMsS0FBSztlQUFMQSxjQUFLOztJQUNMQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxPQUFPO2VBQVBBLGdCQUFPOztJQUNQQyxRQUFRO2VBQVJBLGlCQUFROztJQUNSQyxVQUFVO2VBQVZBLG1CQUFVOztJQUNWQyxnQkFBZ0I7ZUFBaEJBLHlCQUFnQjs7SUFFaEJDLEtBQUs7ZUFBTEEsY0FBSzs7SUFDTEMsU0FBUztlQUFUQSxrQkFBUzs7SUFFVEMsYUFBYTtlQUFiQSxhQUFhOztJQUNiQyxnQkFBZ0I7ZUFBaEJBLGdCQUFnQjs7SUFDaEJDLGdCQUFnQjtlQUFoQkEsaUJBQWdCOztJQUNoQkMsaUJBQWlCO2VBQWpCQSxpQkFBaUI7Ozt5REFoQkw7MERBQ0M7NERBQ0U7NERBQ0E7NERBQ0E7NERBQ0E7NkRBQ0M7K0RBQ0U7cUVBQ007MERBRVg7OERBQ0k7eURBRUk7NERBQ0c7NkRBQ0E7NkRBQ0MifQ==
@@ -0,0 +1,108 @@
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 ShortenedVersion;
9
+ }
10
+ });
11
+ var _necessary = require("necessary");
12
+ function _classCallCheck(instance, Constructor) {
13
+ if (!(instance instanceof Constructor)) {
14
+ throw new TypeError("Cannot call a class as a function");
15
+ }
16
+ }
17
+ function _defineProperties(target, props) {
18
+ for(var i = 0; i < props.length; i++){
19
+ var descriptor = props[i];
20
+ descriptor.enumerable = descriptor.enumerable || false;
21
+ descriptor.configurable = true;
22
+ if ("value" in descriptor) descriptor.writable = true;
23
+ Object.defineProperty(target, descriptor.key, descriptor);
24
+ }
25
+ }
26
+ function _createClass(Constructor, protoProps, staticProps) {
27
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
28
+ if (staticProps) _defineProperties(Constructor, staticProps);
29
+ return Constructor;
30
+ }
31
+ var second = _necessary.arrayUtilities.second;
32
+ var ShortenedVersion = /*#__PURE__*/ function() {
33
+ function ShortenedVersion(majorNumber, minorNumber) {
34
+ _classCallCheck(this, ShortenedVersion);
35
+ this.majorNumber = majorNumber;
36
+ this.minorNumber = minorNumber;
37
+ }
38
+ _createClass(ShortenedVersion, [
39
+ {
40
+ key: "getMajorNumber",
41
+ value: function getMajorNumber() {
42
+ return this.majorNumber;
43
+ }
44
+ },
45
+ {
46
+ key: "getMinorNumber",
47
+ value: function getMinorNumber() {
48
+ return this.minorNumber;
49
+ }
50
+ },
51
+ {
52
+ key: "toString",
53
+ value: function toString() {
54
+ var string = "".concat(this.majorNumber, ".").concat(this.minorNumber);
55
+ return string;
56
+ }
57
+ },
58
+ {
59
+ key: "asNumber",
60
+ value: function asNumber() {
61
+ var number = this.majorNumber * 1e12 + this.minorNumber * 1e6; ///
62
+ return number;
63
+ }
64
+ }
65
+ ], [
66
+ {
67
+ key: "fromString",
68
+ value: function fromString(string) {
69
+ var majorNumber = majorNumberFromString(string), minorNumber = minorNumberFromString(string), shortenedVersion = new ShortenedVersion(majorNumber, minorNumber);
70
+ return shortenedVersion;
71
+ }
72
+ },
73
+ {
74
+ key: "fromVersionNumber",
75
+ value: function fromVersionNumber(versionNumber) {
76
+ var number = versionNumber, majorNumber = majorNumberFromNumber(number), minorNumber = minorNumberFromNumber(number), shortenedVersion = new ShortenedVersion(majorNumber, minorNumber);
77
+ return shortenedVersion;
78
+ }
79
+ }
80
+ ]);
81
+ return ShortenedVersion;
82
+ }();
83
+ function majorNumberFromNumber(number) {
84
+ var majorNumber = number !== null ? Math.floor(number / 1e12) : 0; ///
85
+ return majorNumber;
86
+ }
87
+ function minorNumberFromNumber(number) {
88
+ var minorNumber = number !== null ? Math.floor(number / 1e6) : 0; ///
89
+ return minorNumber;
90
+ }
91
+ function majorNumberFromString(string) {
92
+ var majorNumber = 0;
93
+ if (string) {
94
+ var matches = string.match(/^(\d+)\.\d+$/), secondMatch = second(matches);
95
+ majorNumber = secondMatch; ///
96
+ }
97
+ return majorNumber;
98
+ }
99
+ function minorNumberFromString(string) {
100
+ var minorNumber = 0;
101
+ if (string) {
102
+ var matches = string.match(/^\d+\.(\d+)$/), secondMatch = second(matches);
103
+ minorNumber = secondMatch; ///
104
+ }
105
+ return minorNumber;
106
+ }
107
+
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zaG9ydGVuZWRWZXJzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgeyBzZWNvbmQgfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTaG9ydGVuZWRWZXJzaW9uIHtcbiAgY29uc3RydWN0b3IobWFqb3JOdW1iZXIsIG1pbm9yTnVtYmVyKSB7XG4gICAgdGhpcy5tYWpvck51bWJlciA9IG1ham9yTnVtYmVyO1xuICAgIHRoaXMubWlub3JOdW1iZXIgPSBtaW5vck51bWJlcjtcbiAgfVxuXG4gIGdldE1ham9yTnVtYmVyKCkge1xuICAgIHJldHVybiB0aGlzLm1ham9yTnVtYmVyO1xuICB9XG5cbiAgZ2V0TWlub3JOdW1iZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubWlub3JOdW1iZXI7XG4gIH1cblxuICB0b1N0cmluZygpIHtcbiAgICBjb25zdCBzdHJpbmcgPSBgJHt0aGlzLm1ham9yTnVtYmVyfS4ke3RoaXMubWlub3JOdW1iZXJ9YDtcblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICBhc051bWJlcigpIHtcbiAgICBjb25zdCBudW1iZXIgPSB0aGlzLm1ham9yTnVtYmVyICogMWUxMiArIHRoaXMubWlub3JOdW1iZXIgKiAxZTY7IC8vL1xuXG4gICAgcmV0dXJuIG51bWJlcjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3RyaW5nKHN0cmluZykge1xuICAgIGNvbnN0IG1ham9yTnVtYmVyID0gbWFqb3JOdW1iZXJGcm9tU3RyaW5nKHN0cmluZyksXG4gICAgICAgICAgbWlub3JOdW1iZXIgPSBtaW5vck51bWJlckZyb21TdHJpbmcoc3RyaW5nKSxcbiAgICAgICAgICBzaG9ydGVuZWRWZXJzaW9uID0gbmV3IFNob3J0ZW5lZFZlcnNpb24obWFqb3JOdW1iZXIsIG1pbm9yTnVtYmVyKTtcblxuICAgIHJldHVybiBzaG9ydGVuZWRWZXJzaW9uO1xuICB9XG5cbiAgc3RhdGljIGZyb21WZXJzaW9uTnVtYmVyKHZlcnNpb25OdW1iZXIpIHtcbiAgICBjb25zdCBudW1iZXIgPSB2ZXJzaW9uTnVtYmVyLCAvLy9cbiAgICAgICAgICBtYWpvck51bWJlciA9IG1ham9yTnVtYmVyRnJvbU51bWJlcihudW1iZXIpLFxuICAgICAgICAgIG1pbm9yTnVtYmVyID0gbWlub3JOdW1iZXJGcm9tTnVtYmVyKG51bWJlciksXG4gICAgICAgICAgc2hvcnRlbmVkVmVyc2lvbiA9IG5ldyBTaG9ydGVuZWRWZXJzaW9uKG1ham9yTnVtYmVyLCBtaW5vck51bWJlcik7XG5cbiAgICByZXR1cm4gc2hvcnRlbmVkVmVyc2lvbjtcbiAgfVxufVxuXG5mdW5jdGlvbiBtYWpvck51bWJlckZyb21OdW1iZXIobnVtYmVyKSB7XG4gIGNvbnN0IG1ham9yTnVtYmVyID0gKG51bWJlciAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5mbG9vcihudW1iZXIgLyAxZTEyKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDA7ICAvLy9cblxuICByZXR1cm4gbWFqb3JOdW1iZXI7XG59XG5cbmZ1bmN0aW9uIG1pbm9yTnVtYmVyRnJvbU51bWJlcihudW1iZXIpIHtcbiAgY29uc3QgbWlub3JOdW1iZXIgPSAobnVtYmVyICE9PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICBNYXRoLmZsb29yKG51bWJlciAvIDFlNikgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAwOyAgLy8vXG5cbiAgcmV0dXJuIG1pbm9yTnVtYmVyO1xufVxuXG5mdW5jdGlvbiBtYWpvck51bWJlckZyb21TdHJpbmcoc3RyaW5nKSB7XG4gIGxldCBtYWpvck51bWJlciA9IDA7XG5cbiAgaWYgKHN0cmluZykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSBzdHJpbmcubWF0Y2goL14oXFxkKylcXC5cXGQrJC8pLFxuICAgICAgICAgIHNlY29uZE1hdGNoID0gc2Vjb25kKG1hdGNoZXMpO1xuXG4gICAgbWFqb3JOdW1iZXIgPSBzZWNvbmRNYXRjaDsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIG1ham9yTnVtYmVyO1xufVxuXG5mdW5jdGlvbiBtaW5vck51bWJlckZyb21TdHJpbmcoc3RyaW5nKSB7XG4gIGxldCBtaW5vck51bWJlciA9IDA7XG5cbiAgaWYgKHN0cmluZykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSBzdHJpbmcubWF0Y2goL15cXGQrXFwuKFxcZCspJC8pLFxuICAgICAgICAgIHNlY29uZE1hdGNoID0gc2Vjb25kKG1hdGNoZXMpO1xuXG4gICAgbWlub3JOdW1iZXIgPSBzZWNvbmRNYXRjaDsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIG1pbm9yTnVtYmVyO1xufVxuIl0sIm5hbWVzIjpbIlNob3J0ZW5lZFZlcnNpb24iLCJzZWNvbmQiLCJhcnJheVV0aWxpdGllcyIsIm1ham9yTnVtYmVyIiwibWlub3JOdW1iZXIiLCJnZXRNYWpvck51bWJlciIsImdldE1pbm9yTnVtYmVyIiwidG9TdHJpbmciLCJzdHJpbmciLCJhc051bWJlciIsIm51bWJlciIsImZyb21TdHJpbmciLCJtYWpvck51bWJlckZyb21TdHJpbmciLCJtaW5vck51bWJlckZyb21TdHJpbmciLCJzaG9ydGVuZWRWZXJzaW9uIiwiZnJvbVZlcnNpb25OdW1iZXIiLCJ2ZXJzaW9uTnVtYmVyIiwibWFqb3JOdW1iZXJGcm9tTnVtYmVyIiwibWlub3JOdW1iZXJGcm9tTnVtYmVyIiwiTWF0aCIsImZsb29yIiwibWF0Y2hlcyIsIm1hdGNoIiwic2Vjb25kTWF0Y2giXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O3lCQUpVOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUvQixJQUFNLEFBQUVDLFNBQVdDLHlCQUFjLENBQXpCRDtBQUVPLElBQUEsQUFBTUQsaUNBNENsQixBQTVDWTthQUFNQSxpQkFDUEcsV0FBVyxFQUFFQyxXQUFXOzhCQURqQko7UUFFakIsSUFBSSxDQUFDRyxXQUFXLEdBQUdBO1FBQ25CLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTs7aUJBSEZKOztZQU1uQkssS0FBQUE7bUJBQUFBLFNBQUFBLGlCQUFpQjtnQkFDZixPQUFPLElBQUksQ0FBQ0YsV0FBVztZQUN6Qjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUI7Z0JBQ2YsT0FBTyxJQUFJLENBQUNGLFdBQVc7WUFDekI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsV0FBVztnQkFDVCxJQUFNQyxTQUFTLEFBQUMsR0FBc0IsT0FBcEIsSUFBSSxDQUFDTCxXQUFXLEVBQUMsS0FBb0IsT0FBakIsSUFBSSxDQUFDQyxXQUFXO2dCQUV0RCxPQUFPSTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLFdBQVc7Z0JBQ1QsSUFBTUMsU0FBUyxJQUFJLENBQUNQLFdBQVcsR0FBRyxPQUFPLElBQUksQ0FBQ0MsV0FBVyxHQUFHLEtBQUssR0FBRztnQkFFcEUsT0FBT007WUFDVDs7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxXQUFXSCxNQUFNLEVBQUU7Z0JBQ3hCLElBQU1MLGNBQWNTLHNCQUFzQkosU0FDcENKLGNBQWNTLHNCQUFzQkwsU0FDcENNLG1CQUFtQixJQTdCUmQsaUJBNkI2QkcsYUFBYUM7Z0JBRTNELE9BQU9VO1lBQ1Q7OztZQUVPQyxLQUFBQTttQkFBUCxTQUFPQSxrQkFBa0JDLGFBQWEsRUFBRTtnQkFDdEMsSUFBTU4sU0FBU00sZUFDVGIsY0FBY2Msc0JBQXNCUCxTQUNwQ04sY0FBY2Msc0JBQXNCUixTQUNwQ0ksbUJBQW1CLElBdENSZCxpQkFzQzZCRyxhQUFhQztnQkFFM0QsT0FBT1U7WUFDVDs7O1dBekNtQmQ7O0FBNENyQixTQUFTaUIsc0JBQXNCUCxNQUFNLEVBQUU7SUFDckMsSUFBTVAsY0FBYyxBQUFDTyxXQUFXLElBQUksR0FDZFMsS0FBS0MsS0FBSyxDQUFDVixTQUFTLFFBQ2xCLENBQUMsRUFBRyxHQUFHO0lBRS9CLE9BQU9QO0FBQ1Q7QUFFQSxTQUFTZSxzQkFBc0JSLE1BQU0sRUFBRTtJQUNyQyxJQUFNTixjQUFjLEFBQUNNLFdBQVcsSUFBSSxHQUNkUyxLQUFLQyxLQUFLLENBQUNWLFNBQVMsT0FDbEIsQ0FBQyxFQUFHLEdBQUc7SUFFL0IsT0FBT047QUFDVDtBQUVBLFNBQVNRLHNCQUFzQkosTUFBTSxFQUFFO0lBQ3JDLElBQUlMLGNBQWM7SUFFbEIsSUFBSUssUUFBUTtRQUNWLElBQU1hLFVBQVViLE9BQU9jLEtBQUssQ0FBQyxpQkFDdkJDLGNBQWN0QixPQUFPb0I7UUFFM0JsQixjQUFjb0IsYUFBYyxHQUFHO0lBQ2pDLENBQUM7SUFFRCxPQUFPcEI7QUFDVDtBQUVBLFNBQVNVLHNCQUFzQkwsTUFBTSxFQUFFO0lBQ3JDLElBQUlKLGNBQWM7SUFFbEIsSUFBSUksUUFBUTtRQUNWLElBQU1hLFVBQVViLE9BQU9jLEtBQUssQ0FBQyxpQkFDdkJDLGNBQWN0QixPQUFPb0I7UUFFM0JqQixjQUFjbUIsYUFBYyxHQUFHO0lBQ2pDLENBQUM7SUFFRCxPQUFPbkI7QUFDVCJ9
package/lib/version.js CHANGED
@@ -55,10 +55,22 @@ var Version = /*#__PURE__*/ function() {
55
55
  return this.patchNumber;
56
56
  }
57
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
+ },
58
70
  {
59
71
  key: "bumpPatchNumber",
60
72
  value: function bumpPatchNumber() {
61
- this.patchNumber += 1; ///
73
+ this.patchNumber += 1;
62
74
  }
63
75
  },
64
76
  {
@@ -71,7 +83,7 @@ var Version = /*#__PURE__*/ function() {
71
83
  {
72
84
  key: "asNumber",
73
85
  value: function asNumber() {
74
- var number = this.patchNumber * 1e0 + this.minorNumber * 1e6 + this.majorNumber * 1e12; ///
86
+ var number = this.majorNumber * 1e12 + this.minorNumber * 1e6 + this.patchNumber * 1e0; ///
75
87
  return number;
76
88
  }
77
89
  }
@@ -130,4 +142,4 @@ function patchNumberFromString(string) {
130
142
  return patchNumber;
131
143
  }
132
144
 
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92ZXJzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgeyBzZWNvbmQgfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZXJzaW9uIHtcbiAgY29uc3RydWN0b3IobWFqb3JOdW1iZXIsIG1pbm9yTnVtYmVyLCBwYXRjaE51bWJlcikge1xuICAgIHRoaXMubWFqb3JOdW1iZXIgPSBtYWpvck51bWJlcjtcbiAgICB0aGlzLm1pbm9yTnVtYmVyID0gbWlub3JOdW1iZXI7XG4gICAgdGhpcy5wYXRjaE51bWJlciA9IHBhdGNoTnVtYmVyO1xuICB9XG5cbiAgZ2V0TWFqb3JOdW1iZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubWFqb3JOdW1iZXI7XG4gIH1cblxuICBnZXRNaW5vck51bWJlcigpIHtcbiAgICByZXR1cm4gdGhpcy5taW5vck51bWJlcjtcbiAgfVxuXG4gIGdldFBhdGNoTnVtYmVyKCkge1xuICAgIHJldHVybiB0aGlzLnBhdGNoTnVtYmVyO1xuICB9XG5cbiAgYnVtcFBhdGNoTnVtYmVyKCkge1xuICAgIHRoaXMucGF0Y2hOdW1iZXIgKz0gMTsgIC8vL1xuICB9XG5cbiAgdG9TdHJpbmcoKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gYCR7dGhpcy5tYWpvck51bWJlcn0uJHt0aGlzLm1pbm9yTnVtYmVyfS4ke3RoaXMucGF0Y2hOdW1iZXJ9YDtcblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICBhc051bWJlcigpIHtcbiAgICBjb25zdCBudW1iZXIgPSB0aGlzLnBhdGNoTnVtYmVyICogMWUwICsgdGhpcy5taW5vck51bWJlciAqIDFlNiArIHRoaXMubWFqb3JOdW1iZXIgKiAxZTEyOyAvLy9cblxuICAgIHJldHVybiBudW1iZXI7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0cmluZyhzdHJpbmcpIHtcbiAgICBjb25zdCBtYWpvck51bWJlciA9IG1ham9yTnVtYmVyRnJvbVN0cmluZyhzdHJpbmcpLFxuICAgICAgICAgIG1pbm9yTnVtYmVyID0gbWlub3JOdW1iZXJGcm9tU3RyaW5nKHN0cmluZyksXG4gICAgICAgICAgcGF0Y2hOdW1iZXIgPSBwYXRjaE51bWJlckZyb21TdHJpbmcoc3RyaW5nKSxcbiAgICAgICAgICB2ZXJzaW9uID0gbmV3IFZlcnNpb24obWFqb3JOdW1iZXIsIG1pbm9yTnVtYmVyLCBwYXRjaE51bWJlcik7XG5cbiAgICByZXR1cm4gdmVyc2lvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVmVyc2lvbk51bWJlcih2ZXJzaW9uTnVtYmVyKSB7XG4gICAgY29uc3QgbnVtYmVyID0gdmVyc2lvbk51bWJlciwgLy8vXG4gICAgICAgICAgbWFqb3JOdW1iZXIgPSBtYWpvck51bWJlckZyb21OdW1iZXIobnVtYmVyKSxcbiAgICAgICAgICBtaW5vck51bWJlciA9IG1pbm9yTnVtYmVyRnJvbU51bWJlcihudW1iZXIpLFxuICAgICAgICAgIHBhdGNoTnVtYmVyID0gcGF0Y2hOdW1iZXJGcm9tTnVtYmVyKG51bWJlciksXG4gICAgICAgICAgdmVyc2lvbiA9IG5ldyBWZXJzaW9uKG1ham9yTnVtYmVyLCBtaW5vck51bWJlciwgcGF0Y2hOdW1iZXIpO1xuXG4gICAgcmV0dXJuIHZlcnNpb247XG4gIH1cbn1cblxuZnVuY3Rpb24gbWFqb3JOdW1iZXJGcm9tTnVtYmVyKG51bWJlcikge1xuICBjb25zdCBtYWpvck51bWJlciA9IChudW1iZXIgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgIE1hdGguZmxvb3IobnVtYmVyIC8gMWUxMikgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAwOyAgLy8vXG5cbiAgcmV0dXJuIG1ham9yTnVtYmVyO1xufVxuXG5mdW5jdGlvbiBtaW5vck51bWJlckZyb21OdW1iZXIobnVtYmVyKSB7XG4gIGNvbnN0IG1pbm9yTnVtYmVyID0gKG51bWJlciAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5mbG9vcihudW1iZXIgLyAxZTYpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMDsgIC8vL1xuXG4gIHJldHVybiBtaW5vck51bWJlcjtcbn1cblxuZnVuY3Rpb24gcGF0Y2hOdW1iZXJGcm9tTnVtYmVyKG51bWJlcikge1xuICBjb25zdCBwYXRjaE51bWJlciA9IChudW1iZXIgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgIE1hdGguZmxvb3IobnVtYmVyIC8gMWUwKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDA7ICAvLy9cblxuICByZXR1cm4gcGF0Y2hOdW1iZXI7XG59XG5cbmZ1bmN0aW9uIG1ham9yTnVtYmVyRnJvbVN0cmluZyhzdHJpbmcpIHtcbiAgbGV0IG1ham9yTnVtYmVyID0gMDtcblxuICBpZiAoc3RyaW5nKSB7XG4gICAgY29uc3QgbWF0Y2hlcyA9IHN0cmluZy5tYXRjaCgvXihcXGQrKVxcLlxcZCtcXC5cXGQrJC8pLFxuICAgICAgICAgIHNlY29uZE1hdGNoID0gc2Vjb25kKG1hdGNoZXMpO1xuXG4gICAgbWFqb3JOdW1iZXIgPSBzZWNvbmRNYXRjaDsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIG1ham9yTnVtYmVyO1xufVxuXG5mdW5jdGlvbiBtaW5vck51bWJlckZyb21TdHJpbmcoc3RyaW5nKSB7XG4gIGxldCBtaW5vck51bWJlciA9IDA7XG5cbiAgaWYgKHN0cmluZykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSBzdHJpbmcubWF0Y2goL15cXGQrXFwuKFxcZCspXFwuXFxkKyQvKSxcbiAgICAgICAgICBzZWNvbmRNYXRjaCA9IHNlY29uZChtYXRjaGVzKTtcblxuICAgIG1pbm9yTnVtYmVyID0gc2Vjb25kTWF0Y2g7ICAvLy9cbiAgfVxuXG4gIHJldHVybiBtaW5vck51bWJlcjtcbn1cblxuZnVuY3Rpb24gcGF0Y2hOdW1iZXJGcm9tU3RyaW5nKHN0cmluZykge1xuICBsZXQgcGF0Y2hOdW1iZXIgPSAwO1xuXG4gIGlmIChzdHJpbmcpIHtcbiAgICBjb25zdCBtYXRjaGVzID0gc3RyaW5nLm1hdGNoKC9eXFxkK1xcLlxcZCtcXC4oXFxkKykkLyksXG4gICAgICAgICAgc2Vjb25kTWF0Y2ggPSBzZWNvbmQobWF0Y2hlcyk7XG5cbiAgICBwYXRjaE51bWJlciA9IHNlY29uZE1hdGNoOyAgLy8vXG4gIH1cblxuICByZXR1cm4gcGF0Y2hOdW1iZXI7XG59XG4iXSwibmFtZXMiOlsiVmVyc2lvbiIsInNlY29uZCIsImFycmF5VXRpbGl0aWVzIiwibWFqb3JOdW1iZXIiLCJtaW5vck51bWJlciIsInBhdGNoTnVtYmVyIiwiZ2V0TWFqb3JOdW1iZXIiLCJnZXRNaW5vck51bWJlciIsImdldFBhdGNoTnVtYmVyIiwiYnVtcFBhdGNoTnVtYmVyIiwidG9TdHJpbmciLCJzdHJpbmciLCJhc051bWJlciIsIm51bWJlciIsImZyb21TdHJpbmciLCJtYWpvck51bWJlckZyb21TdHJpbmciLCJtaW5vck51bWJlckZyb21TdHJpbmciLCJwYXRjaE51bWJlckZyb21TdHJpbmciLCJ2ZXJzaW9uIiwiZnJvbVZlcnNpb25OdW1iZXIiLCJ2ZXJzaW9uTnVtYmVyIiwibWFqb3JOdW1iZXJGcm9tTnVtYmVyIiwibWlub3JOdW1iZXJGcm9tTnVtYmVyIiwicGF0Y2hOdW1iZXJGcm9tTnVtYmVyIiwiTWF0aCIsImZsb29yIiwibWF0Y2hlcyIsIm1hdGNoIiwic2Vjb25kTWF0Y2giXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O3lCQUpVOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUvQixJQUFNLEFBQUVDLFNBQVdDLHlCQUFjLENBQXpCRDtBQUVPLElBQUEsQUFBTUQsd0JBdURsQixBQXZEWTthQUFNQSxRQUNQRyxXQUFXLEVBQUVDLFdBQVcsRUFBRUMsV0FBVzs4QkFEOUJMO1FBRWpCLElBQUksQ0FBQ0csV0FBVyxHQUFHQTtRQUNuQixJQUFJLENB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
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy92ZXJzaW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuY29uc3QgeyBzZWNvbmQgfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZXJzaW9uIHtcbiAgY29uc3RydWN0b3IobWFqb3JOdW1iZXIsIG1pbm9yTnVtYmVyLCBwYXRjaE51bWJlcikge1xuICAgIHRoaXMubWFqb3JOdW1iZXIgPSBtYWpvck51bWJlcjtcbiAgICB0aGlzLm1pbm9yTnVtYmVyID0gbWlub3JOdW1iZXI7XG4gICAgdGhpcy5wYXRjaE51bWJlciA9IHBhdGNoTnVtYmVyO1xuICB9XG5cbiAgZ2V0TWFqb3JOdW1iZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubWFqb3JOdW1iZXI7XG4gIH1cblxuICBnZXRNaW5vck51bWJlcigpIHtcbiAgICByZXR1cm4gdGhpcy5taW5vck51bWJlcjtcbiAgfVxuXG4gIGdldFBhdGNoTnVtYmVyKCkge1xuICAgIHJldHVybiB0aGlzLnBhdGNoTnVtYmVyO1xuICB9XG5cbiAgYnVtcE1ham9yTnVtYmVyKCkge1xuICAgIHRoaXMubWFqb3JOdW1iZXIgKz0gMTtcbiAgfVxuXG4gIGJ1bXBNaW5vck51bWJlcigpIHtcbiAgICB0aGlzLm1pbm9yTnVtYmVyICs9IDE7XG4gIH1cblxuICBidW1wUGF0Y2hOdW1iZXIoKSB7XG4gICAgdGhpcy5wYXRjaE51bWJlciArPSAxO1xuICB9XG5cbiAgdG9TdHJpbmcoKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gYCR7dGhpcy5tYWpvck51bWJlcn0uJHt0aGlzLm1pbm9yTnVtYmVyfS4ke3RoaXMucGF0Y2hOdW1iZXJ9YDtcblxuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICBhc051bWJlcigpIHtcbiAgICBjb25zdCBudW1iZXIgPSB0aGlzLm1ham9yTnVtYmVyICogMWUxMiArIHRoaXMubWlub3JOdW1iZXIgKiAxZTYgKyB0aGlzLnBhdGNoTnVtYmVyICogMWUwOyAvLy9cblxuICAgIHJldHVybiBudW1iZXI7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0cmluZyhzdHJpbmcpIHtcbiAgICBjb25zdCBtYWpvck51bWJlciA9IG1ham9yTnVtYmVyRnJvbVN0cmluZyhzdHJpbmcpLFxuICAgICAgICAgIG1pbm9yTnVtYmVyID0gbWlub3JOdW1iZXJGcm9tU3RyaW5nKHN0cmluZyksXG4gICAgICAgICAgcGF0Y2hOdW1iZXIgPSBwYXRjaE51bWJlckZyb21TdHJpbmcoc3RyaW5nKSxcbiAgICAgICAgICB2ZXJzaW9uID0gbmV3IFZlcnNpb24obWFqb3JOdW1iZXIsIG1pbm9yTnVtYmVyLCBwYXRjaE51bWJlcik7XG5cbiAgICByZXR1cm4gdmVyc2lvbjtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVmVyc2lvbk51bWJlcih2ZXJzaW9uTnVtYmVyKSB7XG4gICAgY29uc3QgbnVtYmVyID0gdmVyc2lvbk51bWJlciwgLy8vXG4gICAgICAgICAgbWFqb3JOdW1iZXIgPSBtYWpvck51bWJlckZyb21OdW1iZXIobnVtYmVyKSxcbiAgICAgICAgICBtaW5vck51bWJlciA9IG1pbm9yTnVtYmVyRnJvbU51bWJlcihudW1iZXIpLFxuICAgICAgICAgIHBhdGNoTnVtYmVyID0gcGF0Y2hOdW1iZXJGcm9tTnVtYmVyKG51bWJlciksXG4gICAgICAgICAgdmVyc2lvbiA9IG5ldyBWZXJzaW9uKG1ham9yTnVtYmVyLCBtaW5vck51bWJlciwgcGF0Y2hOdW1iZXIpO1xuXG4gICAgcmV0dXJuIHZlcnNpb247XG4gIH1cbn1cblxuZnVuY3Rpb24gbWFqb3JOdW1iZXJGcm9tTnVtYmVyKG51bWJlcikge1xuICBjb25zdCBtYWpvck51bWJlciA9IChudW1iZXIgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgIE1hdGguZmxvb3IobnVtYmVyIC8gMWUxMikgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAwOyAgLy8vXG5cbiAgcmV0dXJuIG1ham9yTnVtYmVyO1xufVxuXG5mdW5jdGlvbiBtaW5vck51bWJlckZyb21OdW1iZXIobnVtYmVyKSB7XG4gIGNvbnN0IG1pbm9yTnVtYmVyID0gKG51bWJlciAhPT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgICAgICAgICAgTWF0aC5mbG9vcihudW1iZXIgLyAxZTYpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMDsgIC8vL1xuXG4gIHJldHVybiBtaW5vck51bWJlcjtcbn1cblxuZnVuY3Rpb24gcGF0Y2hOdW1iZXJGcm9tTnVtYmVyKG51bWJlcikge1xuICBjb25zdCBwYXRjaE51bWJlciA9IChudW1iZXIgIT09IG51bGwpID9cbiAgICAgICAgICAgICAgICAgICAgICAgIE1hdGguZmxvb3IobnVtYmVyIC8gMWUwKSA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDA7ICAvLy9cblxuICByZXR1cm4gcGF0Y2hOdW1iZXI7XG59XG5cbmZ1bmN0aW9uIG1ham9yTnVtYmVyRnJvbVN0cmluZyhzdHJpbmcpIHtcbiAgbGV0IG1ham9yTnVtYmVyID0gMDtcblxuICBpZiAoc3RyaW5nKSB7XG4gICAgY29uc3QgbWF0Y2hlcyA9IHN0cmluZy5tYXRjaCgvXihcXGQrKVxcLlxcZCtcXC5cXGQrJC8pLFxuICAgICAgICAgIHNlY29uZE1hdGNoID0gc2Vjb25kKG1hdGNoZXMpO1xuXG4gICAgbWFqb3JOdW1iZXIgPSBzZWNvbmRNYXRjaDsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIG1ham9yTnVtYmVyO1xufVxuXG5mdW5jdGlvbiBtaW5vck51bWJlckZyb21TdHJpbmcoc3RyaW5nKSB7XG4gIGxldCBtaW5vck51bWJlciA9IDA7XG5cbiAgaWYgKHN0cmluZykge1xuICAgIGNvbnN0IG1hdGNoZXMgPSBzdHJpbmcubWF0Y2goL15cXGQrXFwuKFxcZCspXFwuXFxkKyQvKSxcbiAgICAgICAgICBzZWNvbmRNYXRjaCA9IHNlY29uZChtYXRjaGVzKTtcblxuICAgIG1pbm9yTnVtYmVyID0gc2Vjb25kTWF0Y2g7ICAvLy9cbiAgfVxuXG4gIHJldHVybiBtaW5vck51bWJlcjtcbn1cblxuZnVuY3Rpb24gcGF0Y2hOdW1iZXJGcm9tU3RyaW5nKHN0cmluZykge1xuICBsZXQgcGF0Y2hOdW1iZXIgPSAwO1xuXG4gIGlmIChzdHJpbmcpIHtcbiAgICBjb25zdCBtYXRjaGVzID0gc3RyaW5nLm1hdGNoKC9eXFxkK1xcLlxcZCtcXC4oXFxkKykkLyksXG4gICAgICAgICAgc2Vjb25kTWF0Y2ggPSBzZWNvbmQobWF0Y2hlcyk7XG5cbiAgICBwYXRjaE51bWJlciA9IHNlY29uZE1hdGNoOyAgLy8vXG4gIH1cblxuICByZXR1cm4gcGF0Y2hOdW1iZXI7XG59XG4iXSwibmFtZXMiOlsiVmVyc2lvbiIsInNlY29uZCIsImFycmF5VXRpbGl0aWVzIiwibWFqb3JOdW1iZXIiLCJtaW5vck51bWJlciIsInBhdGNoTnVtYmVyIiwiZ2V0TWFqb3JOdW1iZXIiLCJnZXRNaW5vck51bWJlciIsImdldFBhdGNoTnVtYmVyIiwiYnVtcE1ham9yTnVtYmVyIiwiYnVtcE1pbm9yTnVtYmVyIiwiYnVtcFBhdGNoTnVtYmVyIiwidG9TdHJpbmciLCJzdHJpbmciLCJhc051bWJlciIsIm51bWJlciIsImZyb21TdHJpbmciLCJtYWpvck51bWJlckZyb21TdHJpbmciLCJtaW5vck51bWJlckZyb21TdHJpbmciLCJwYXRjaE51bWJlckZyb21TdHJpbmciLCJ2ZXJzaW9uIiwiZnJvbVZlcnNpb25OdW1iZXIiLCJ2ZXJzaW9uTnVtYmVyIiwibWFqb3JOdW1iZXJGcm9tTnVtYmVyIiwibWlub3JOdW1iZXJGcm9tTnVtYmVyIiwicGF0Y2hOdW1iZXJGcm9tTnVtYmVyIiwiTWF0aCIsImZsb29yIiwibWF0Y2hlcyIsIm1hdGNoIiwic2Vjb25kTWF0Y2giXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O3lCQUpVOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUvQixJ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
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-open-cli",
3
3
  "author": "James Smith",
4
- "version": "5.0.44",
4
+ "version": "5.0.45",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-open-cli",
7
7
  "description": "Occam's command line package management tool.",
package/src/browser.js CHANGED
@@ -2,13 +2,18 @@
2
2
 
3
3
  export { default as File } from "./file";
4
4
  export { default as Files } from "./files";
5
- export { default as types } from "./types";
6
5
  export { default as Version } from "./version";
7
6
  export { default as Release } from "./release";
8
7
  export { default as Entries } from "./entries";
9
8
  export { default as Project } from "./project";
10
9
  export { default as Projects } from "./projects";
10
+ export { default as Dependency } from "./dependency";
11
+ export { default as ShortenedVersion } from "./shortenedVersion";
12
+
13
+ export { default as types } from "./types";
11
14
  export { default as fileNames } from "./fileNames";
15
+
12
16
  export { default as nameUtilities } from "./utilities/name";
13
17
  export { default as contentUtilities } from "./utilities/content";
18
+
14
19
  export { default as filePathUtilities } from "./utilities/filePath";
@@ -0,0 +1,22 @@
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 fromNameAndShortenedVersion(name, shortenedVersion) {
18
+ const dependency = new Dependency(name, shortenedVersion);
19
+
20
+ return dependency;
21
+ }
22
+ }
package/src/main.js CHANGED
@@ -2,13 +2,17 @@
2
2
 
3
3
  export { default as File } from "./file";
4
4
  export { default as Files } from "./files";
5
- export { default as types } from "./types";
6
5
  export { default as Version } from "./version";
7
6
  export { default as Release } from "./release";
8
7
  export { default as Entries } from "./entries";
9
8
  export { default as Project } from "./project";
10
9
  export { default as Projects } from "./projects";
10
+ export { default as Dependency } from "./dependency";
11
+ export { default as ShortenedVersion } from "./shortenedVersion";
12
+
13
+ export { default as types } from "./types";
11
14
  export { default as fileNames } from "./fileNames";
15
+
12
16
  export { default as nameUtilities } from "./utilities/name";
13
17
  export { default as contentUtilities } from "./utilities/content";
14
18
  export { default as entriesUtilities } from "./utilities/entries";
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ import { arrayUtilities } from "necessary";
4
+
5
+ const { second } = arrayUtilities;
6
+
7
+ export default class ShortenedVersion {
8
+ constructor(majorNumber, minorNumber) {
9
+ this.majorNumber = majorNumber;
10
+ this.minorNumber = minorNumber;
11
+ }
12
+
13
+ getMajorNumber() {
14
+ return this.majorNumber;
15
+ }
16
+
17
+ getMinorNumber() {
18
+ return this.minorNumber;
19
+ }
20
+
21
+ toString() {
22
+ const string = `${this.majorNumber}.${this.minorNumber}`;
23
+
24
+ return string;
25
+ }
26
+
27
+ asNumber() {
28
+ const number = this.majorNumber * 1e12 + this.minorNumber * 1e6; ///
29
+
30
+ return number;
31
+ }
32
+
33
+ static fromString(string) {
34
+ const majorNumber = majorNumberFromString(string),
35
+ minorNumber = minorNumberFromString(string),
36
+ shortenedVersion = new ShortenedVersion(majorNumber, minorNumber);
37
+
38
+ return shortenedVersion;
39
+ }
40
+
41
+ static fromVersionNumber(versionNumber) {
42
+ const number = versionNumber, ///
43
+ majorNumber = majorNumberFromNumber(number),
44
+ minorNumber = minorNumberFromNumber(number),
45
+ shortenedVersion = new ShortenedVersion(majorNumber, minorNumber);
46
+
47
+ return shortenedVersion;
48
+ }
49
+ }
50
+
51
+ function majorNumberFromNumber(number) {
52
+ const majorNumber = (number !== null) ?
53
+ Math.floor(number / 1e12) :
54
+ 0; ///
55
+
56
+ return majorNumber;
57
+ }
58
+
59
+ function minorNumberFromNumber(number) {
60
+ const minorNumber = (number !== null) ?
61
+ Math.floor(number / 1e6) :
62
+ 0; ///
63
+
64
+ return minorNumber;
65
+ }
66
+
67
+ function majorNumberFromString(string) {
68
+ let majorNumber = 0;
69
+
70
+ if (string) {
71
+ const matches = string.match(/^(\d+)\.\d+$/),
72
+ secondMatch = second(matches);
73
+
74
+ majorNumber = secondMatch; ///
75
+ }
76
+
77
+ return majorNumber;
78
+ }
79
+
80
+ function minorNumberFromString(string) {
81
+ let minorNumber = 0;
82
+
83
+ if (string) {
84
+ const matches = string.match(/^\d+\.(\d+)$/),
85
+ secondMatch = second(matches);
86
+
87
+ minorNumber = secondMatch; ///
88
+ }
89
+
90
+ return minorNumber;
91
+ }
package/src/version.js CHANGED
@@ -23,8 +23,16 @@ export default class Version {
23
23
  return this.patchNumber;
24
24
  }
25
25
 
26
+ bumpMajorNumber() {
27
+ this.majorNumber += 1;
28
+ }
29
+
30
+ bumpMinorNumber() {
31
+ this.minorNumber += 1;
32
+ }
33
+
26
34
  bumpPatchNumber() {
27
- this.patchNumber += 1; ///
35
+ this.patchNumber += 1;
28
36
  }
29
37
 
30
38
  toString() {
@@ -34,7 +42,7 @@ export default class Version {
34
42
  }
35
43
 
36
44
  asNumber() {
37
- const number = this.patchNumber * 1e0 + this.minorNumber * 1e6 + this.majorNumber * 1e12; ///
45
+ const number = this.majorNumber * 1e12 + this.minorNumber * 1e6 + this.patchNumber * 1e0; ///
38
46
 
39
47
  return number;
40
48
  }
@@ -1,13 +0,0 @@
1
- "use strict";
2
-
3
- const { INSTALL_MESSAGE } = require("../messages");
4
-
5
- function install(argument) {
6
- const message = INSTALL_MESSAGE;
7
-
8
- console.log(message);
9
-
10
- process.exit();
11
- }
12
-
13
- module.exports = install;