@sap-cloud-sdk/generator-common 3.0.0 → 3.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @sap-cloud-sdk/generator-common
2
2
 
3
+ ## 3.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - c78c16ddf: [Improvement] Improve logs when generating OData clients without package.json
8
+ - @sap-cloud-sdk/util@3.0.1
9
+
3
10
  ## 3.0.0
4
11
 
5
12
  ### Major Changes
@@ -107,10 +107,13 @@ function parseDirectoryName(filePath) {
107
107
  * @internal
108
108
  */
109
109
  function getServiceOptions(directoryName, skipValidation, serviceOptions) {
110
- if (!skipValidation && serviceOptions?.packageName) {
111
- const adjusted = (0, util_2.npmCompliantName)(serviceOptions?.packageName);
112
- if (adjusted !== serviceOptions?.packageName) {
113
- throw new Error(`The intended packageName name ${serviceOptions.packageName} is not npm compliant. Either change to a compliant value e.g. '${adjusted}' in your options per service configuration or execute with '--skipValidation'.`);
110
+ if (serviceOptions?.packageName) {
111
+ const packageName = (0, util_2.npmCompliantName)(serviceOptions?.packageName);
112
+ if (skipValidation) {
113
+ (0, util_2.validateNpmCompliance)(serviceOptions?.packageName);
114
+ }
115
+ else if (packageName !== serviceOptions?.packageName) {
116
+ throw new Error(`The intended package name ${serviceOptions.packageName} is not npm compliant. Either change to a compliant value e.g. '${packageName}' in your options per service configuration or execute with '--skipValidation'.`);
114
117
  }
115
118
  }
116
119
  const defaultConfig = {
@@ -1 +1 @@
1
- {"version":3,"file":"options-per-service.js","sourceRoot":"","sources":["../src/options-per-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options-per-service.js","sourceRoot":"","sources":["../src/options-per-service.ts"],"names":[],"mappings":"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"}
package/dist/util.d.ts CHANGED
@@ -3,13 +3,19 @@
3
3
  * @internal
4
4
  */
5
5
  export declare function getCopyrightHeader(): string;
6
+ /**
7
+ * Checks whether a name is compliant with npm naming rules. Logs a warning if not.
8
+ * @param packageName - The name to be checked.
9
+ * @internal
10
+ */
11
+ export declare function validateNpmCompliance(packageName: string): void;
6
12
  /**
7
13
  * Takes a name and returns a transformation that is guaranteed to be compliant with npm naming rules.
8
- * @param name - The name to be transformed if necessary.
9
- * @returns Name that is guaranteed to be compliant.
14
+ * @param packageName - The name to be transformed, if necessary.
15
+ * @returns Name that is guaranteed to be npm compliant.
10
16
  * @internal
11
17
  */
12
- export declare function npmCompliantName(name: string): string;
18
+ export declare function npmCompliantName(packageName: string): string;
13
19
  /**
14
20
  * This is taken from version 2.0
15
21
  * @internal
package/dist/util.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.directoryToServiceName = exports.directoryToSpeakingModuleName = exports.npmCompliantName = exports.getCopyrightHeader = void 0;
6
+ exports.directoryToServiceName = exports.directoryToSpeakingModuleName = exports.npmCompliantName = exports.validateNpmCompliance = exports.getCopyrightHeader = void 0;
7
7
  const util_1 = require("@sap-cloud-sdk/util");
8
8
  const voca_1 = __importDefault(require("voca"));
9
9
  /**
@@ -23,42 +23,52 @@ exports.getCopyrightHeader = getCopyrightHeader;
23
23
  const logger = (0, util_1.createLogger)('generator-common-util');
24
24
  const npmMaxLength = 214;
25
25
  const npmRegex = /^(?:@[a-z0-9-~][a-z0-9-._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/;
26
+ /**
27
+ * Checks whether a name is compliant with npm naming rules. Logs a warning if not.
28
+ * @param packageName - The name to be checked.
29
+ * @internal
30
+ */
31
+ function validateNpmCompliance(packageName) {
32
+ if (packageName.length > npmMaxLength) {
33
+ logger.warn(`Provided package name "${packageName}" is longer than 214 chars and will be cut!`);
34
+ }
35
+ if (!isCompliant(packageName)) {
36
+ const newPackageName = npmCompliantName(packageName);
37
+ logger.warn(`Provided package name "${packageName}" is not compliant with npm naming rules and was transformed to ${newPackageName}!`);
38
+ }
39
+ }
40
+ exports.validateNpmCompliance = validateNpmCompliance;
26
41
  /**
27
42
  * Takes a name and returns a transformation that is guaranteed to be compliant with npm naming rules.
28
- * @param name - The name to be transformed if necessary.
29
- * @returns Name that is guaranteed to be compliant.
43
+ * @param packageName - The name to be transformed, if necessary.
44
+ * @returns Name that is guaranteed to be npm compliant.
30
45
  * @internal
31
46
  */
32
- function npmCompliantName(name) {
33
- let compliantName = trimToNpmMaxLength(name);
34
- compliantName = transformIfNecessary(compliantName);
35
- return compliantName;
47
+ function npmCompliantName(packageName) {
48
+ packageName = packageName.substring(0, npmMaxLength);
49
+ return isScoped(packageName)
50
+ ? transformScopedName(packageName)
51
+ : transformUnscopedName(packageName);
36
52
  }
37
53
  exports.npmCompliantName = npmCompliantName;
38
- const trimToNpmMaxLength = (str) => {
39
- if (str.length > npmMaxLength) {
40
- logger.warn(`Provided package name ${str} is longer than 214 chars and will be cut!`);
41
- return str.substr(0, npmMaxLength);
42
- }
43
- return str;
44
- };
45
- const transformIfNecessary = (packageName) => {
46
- if (npmRegex.exec(packageName)) {
47
- return packageName;
48
- }
49
- const newName = _npmCompliantName(packageName);
50
- logger.warn(`Provided name ${packageName} is not compliant with npm naming rules and was transformed to ${newName}!`);
51
- return newName;
52
- };
53
- const _npmCompliantName = (name) => {
54
- if (name.startsWith('@') && name.includes('/')) {
55
- return ('@' +
56
- splitAtFirstOccurrence(name, '/')
57
- .map(x => makeNpmCompliant(x))
58
- .join('/'));
59
- }
60
- return makeNpmCompliant(name);
61
- };
54
+ function isCompliant(packageName) {
55
+ return !!npmRegex.exec(packageName);
56
+ }
57
+ function isScoped(packageName) {
58
+ return packageName.startsWith('@') && packageName.includes('/');
59
+ }
60
+ function transformScopedName(packageName) {
61
+ return ('@' +
62
+ splitAtFirstOccurrence(packageName, '/')
63
+ .map(scopeOrName => transformUnscopedName(scopeOrName))
64
+ .join('/'));
65
+ }
66
+ function transformUnscopedName(packageName) {
67
+ let compliantName = packageName.toLowerCase();
68
+ compliantName = stripLeadingDotsAndUnderscores(compliantName);
69
+ compliantName = replaceNonNpmPackageCharacters(compliantName);
70
+ return compliantName;
71
+ }
62
72
  /**
63
73
  * This is taken from version 2.0
64
74
  * @internal
@@ -75,17 +85,16 @@ function directoryToServiceName(name) {
75
85
  return `${directoryToSpeakingModuleName(name).replace(/ /g, '')}`;
76
86
  }
77
87
  exports.directoryToServiceName = directoryToServiceName;
78
- const lowerCase = (str) => str.toLowerCase();
79
- const stripLeadingDotsAndUnderscores = (str) => str.replace(/^[._]*/g, '');
80
- const replaceNonNpmPackageCharacters = (str) => str.replace(/[^a-z0-9-~._]/g, '');
81
- const makeNpmCompliant = (name) => {
82
- let compliantName = lowerCase(name);
83
- compliantName = stripLeadingDotsAndUnderscores(compliantName);
84
- compliantName = replaceNonNpmPackageCharacters(compliantName);
85
- return compliantName;
86
- };
87
- const splitAtFirstOccurrence = (str, separator) => [
88
- str.slice(0, str.indexOf(separator)),
89
- str.slice(str.indexOf(separator) + 1)
90
- ];
88
+ function stripLeadingDotsAndUnderscores(str) {
89
+ return str.replace(/^[._]*/g, '');
90
+ }
91
+ function replaceNonNpmPackageCharacters(str) {
92
+ return str.replace(/[^a-z0-9-~._]/g, '');
93
+ }
94
+ function splitAtFirstOccurrence(str, separator) {
95
+ return [
96
+ str.slice(0, str.indexOf(separator)),
97
+ str.slice(str.indexOf(separator) + 1)
98
+ ];
99
+ }
91
100
  //# sourceMappingURL=util.js.map
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap-cloud-sdk/generator-common",
3
- "version": "3.0.0",
3
+ "version": "3.0.1",
4
4
  "description": "SAP Cloud SDK for JavaScript common functions of OData client generator and OpenAPI clint generator.",
5
5
  "homepage": "https://sap.github.io/cloud-sdk/docs/js/overview",
6
6
  "license": "Apache-2.0",
@@ -37,7 +37,7 @@
37
37
  "readme": "ts-node ../../scripts/replace-common-readme.ts"
38
38
  },
39
39
  "dependencies": {
40
- "@sap-cloud-sdk/util": "^3.0.0",
40
+ "@sap-cloud-sdk/util": "^3.0.1",
41
41
  "fast-levenshtein": "~3.0.0",
42
42
  "fs-extra": "^11.1.0",
43
43
  "glob": "^8.1.0",