@guanjinke/artifact-client 1.0.1 → 1.1.0
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 +173 -165
- package/dist/artifact-client.d.ts +15 -0
- package/dist/artifact-client.d.ts.map +1 -1
- package/dist/artifact-client.js +20 -0
- package/dist/artifact-client.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +25 -46
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli.js +0 -0
- package/dist/providers/azure-provider.d.ts +6 -18
- package/dist/providers/azure-provider.d.ts.map +1 -1
- package/dist/providers/azure-provider.js +100 -188
- package/dist/providers/azure-provider.js.map +1 -1
- package/dist/providers/oss-provider.d.ts +6 -17
- package/dist/providers/oss-provider.d.ts.map +1 -1
- package/dist/providers/oss-provider.js +106 -195
- package/dist/providers/oss-provider.js.map +1 -1
- package/dist/providers/storage-provider.d.ts +10 -0
- package/dist/providers/storage-provider.d.ts.map +1 -1
- package/dist/providers/storage-provider.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/semver.d.ts +6 -32
- package/dist/utils/semver.d.ts.map +1 -1
- package/dist/utils/semver.js +18 -55
- package/dist/utils/semver.js.map +1 -1
- package/package.json +43 -43
package/dist/utils/semver.js
CHANGED
|
@@ -12,38 +12,23 @@ exports.getArtifactPath = getArtifactPath;
|
|
|
12
12
|
const semver_1 = require("semver");
|
|
13
13
|
/**
|
|
14
14
|
* Compare two version strings following semver rules.
|
|
15
|
-
* Returns negative if a < b, zero if a == b, positive if a > b.
|
|
16
|
-
* Supports pre-release tags (e.g., 1.0.5-beta < 1.0.5).
|
|
17
15
|
*/
|
|
18
16
|
function compareVersions(a, b) {
|
|
19
|
-
|
|
20
|
-
const vb = (0, semver_1.valid)(b);
|
|
21
|
-
if (!va && !vb) {
|
|
22
|
-
// Both invalid — fall back to string comparison
|
|
23
|
-
return a.localeCompare(b);
|
|
24
|
-
}
|
|
25
|
-
if (!va)
|
|
26
|
-
return 1; // invalid sorts after valid
|
|
27
|
-
if (!vb)
|
|
28
|
-
return -1; // invalid sorts after valid
|
|
29
|
-
return (0, semver_1.compare)(va, vb);
|
|
17
|
+
return (0, semver_1.compare)(a, b);
|
|
30
18
|
}
|
|
31
19
|
/**
|
|
32
|
-
* Sort an array of version strings by semver rules.
|
|
33
|
-
* Default order is descending (newest first).
|
|
20
|
+
* Sort an array of version strings by semver rules. Default: descending.
|
|
34
21
|
*/
|
|
35
22
|
function sortVersions(versions, order = 'desc') {
|
|
36
|
-
|
|
37
|
-
return sorted;
|
|
23
|
+
return [...versions].sort(order === 'desc' ? semver_1.rcompare : semver_1.compare);
|
|
38
24
|
}
|
|
39
25
|
/**
|
|
40
26
|
* Extract the major.minor portion from a full semver string.
|
|
41
|
-
* e.g. "1.0.5" → "1.0", "
|
|
27
|
+
* e.g. "1.0.5" → "1.0", "0.0.3" → "dev"
|
|
42
28
|
*/
|
|
43
29
|
function extractMajorMinor(version) {
|
|
44
30
|
const v = (0, semver_1.parse)(version);
|
|
45
31
|
if (!v) {
|
|
46
|
-
// If parsing fails, try to extract manually
|
|
47
32
|
const parts = version.split('.');
|
|
48
33
|
if (parts.length >= 2) {
|
|
49
34
|
const maj = parseInt(parts[0], 10);
|
|
@@ -56,57 +41,35 @@ function extractMajorMinor(version) {
|
|
|
56
41
|
}
|
|
57
42
|
return isDevMajorMinor(v.major, v.minor) ? 'dev' : `${v.major}.${v.minor}`;
|
|
58
43
|
}
|
|
59
|
-
/**
|
|
60
|
-
* Check if a version is a dev version (major === 0 and minor === 0).
|
|
61
|
-
*/
|
|
62
44
|
function isDevVersion(version) {
|
|
63
45
|
const v = (0, semver_1.parse)(version);
|
|
64
46
|
if (!v)
|
|
65
47
|
return false;
|
|
66
48
|
return isDevMajorMinor(v.major, v.minor);
|
|
67
49
|
}
|
|
68
|
-
/**
|
|
69
|
-
* Check if major=0 and minor=0 indicates a dev version.
|
|
70
|
-
*/
|
|
71
50
|
function isDevMajorMinor(major, minor) {
|
|
72
51
|
return major === 0 && minor === 0;
|
|
73
52
|
}
|
|
74
|
-
/**
|
|
75
|
-
* Get the version file name for a given major version string.
|
|
76
|
-
* "1.0" → "version1.0.txt", "dev" → "versiondev.txt"
|
|
77
|
-
*/
|
|
78
53
|
function getVersionFileName(majorVersion) {
|
|
79
|
-
|
|
80
|
-
return 'versiondev.txt';
|
|
81
|
-
}
|
|
82
|
-
return `version${majorVersion}.txt`;
|
|
54
|
+
return majorVersion === 'dev' ? 'versiondev.txt' : `version${majorVersion}.txt`;
|
|
83
55
|
}
|
|
84
56
|
/**
|
|
85
|
-
* Build
|
|
86
|
-
* e.g. "plugin_artifacts/myPlugin/version1.0.txt"
|
|
57
|
+
* Build path helpers. All take a `base` prefix (e.g. "" or "plugin_artifacts/").
|
|
87
58
|
*/
|
|
88
|
-
function
|
|
89
|
-
|
|
59
|
+
function prefix(base, ...parts) {
|
|
60
|
+
const b = base ? (base.endsWith('/') ? base : base + '/') : '';
|
|
61
|
+
return b + parts.join('/');
|
|
90
62
|
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
* e.g. "plugin_artifacts/myPlugin/"
|
|
94
|
-
*/
|
|
95
|
-
function getPluginPrefix(pluginName) {
|
|
96
|
-
return `plugin_artifacts/${pluginName}/`;
|
|
63
|
+
function getVersionFilePath(base, pluginName, majorVersion) {
|
|
64
|
+
return prefix(base, pluginName, getVersionFileName(majorVersion));
|
|
97
65
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
* e.g. "plugin_artifacts/myPlugin/1.0.5/"
|
|
101
|
-
*/
|
|
102
|
-
function getVersionPrefix(pluginName, version) {
|
|
103
|
-
return `plugin_artifacts/${pluginName}/${version}/`;
|
|
66
|
+
function getPluginPrefix(base, pluginName) {
|
|
67
|
+
return prefix(base, pluginName) + '/';
|
|
104
68
|
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
return `plugin_artifacts/${pluginName}/${version}/${fileName}`;
|
|
69
|
+
function getVersionPrefix(base, pluginName, version) {
|
|
70
|
+
return prefix(base, pluginName, version) + '/';
|
|
71
|
+
}
|
|
72
|
+
function getArtifactPath(base, pluginName, version, fileName) {
|
|
73
|
+
return prefix(base, pluginName, version, fileName);
|
|
111
74
|
}
|
|
112
75
|
//# sourceMappingURL=semver.js.map
|
package/dist/utils/semver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"semver.js","sourceRoot":"","sources":["../../src/utils/semver.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"semver.js","sourceRoot":"","sources":["../../src/utils/semver.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@guanjinke/artifact-client",
|
|
3
|
-
"version": "1.0
|
|
4
|
-
"description": "Artifact management client and CLI for Azure Storage and Aliyun OSS",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
7
|
-
"bin": {
|
|
8
|
-
"afm": "./dist/cli.js"
|
|
9
|
-
},
|
|
10
|
-
"files": [
|
|
11
|
-
"dist/"
|
|
12
|
-
],
|
|
13
|
-
"scripts": {
|
|
14
|
-
"build": "tsc &&
|
|
15
|
-
"test": "jest",
|
|
16
|
-
"test:watch": "jest --watch",
|
|
17
|
-
"prepublishOnly": "npm run build"
|
|
18
|
-
},
|
|
19
|
-
"keywords": [
|
|
20
|
-
"artifact",
|
|
21
|
-
"azure",
|
|
22
|
-
"oss",
|
|
23
|
-
"storage"
|
|
24
|
-
],
|
|
25
|
-
"license": "MIT",
|
|
26
|
-
"engines": {
|
|
27
|
-
"node": ">=20"
|
|
28
|
-
},
|
|
29
|
-
"dependencies": {
|
|
30
|
-
"@azure/storage-blob": "^12.24.0",
|
|
31
|
-
"ali-oss": "^6.21.0",
|
|
32
|
-
"commander": "^12.1.0",
|
|
33
|
-
"semver": "^7.6.0"
|
|
34
|
-
},
|
|
35
|
-
"devDependencies": {
|
|
36
|
-
"@types/jest": "^29.5.12",
|
|
37
|
-
"@types/node": "^20.14.0",
|
|
38
|
-
"@types/semver": "^7.5.8",
|
|
39
|
-
"jest": "^29.7.0",
|
|
40
|
-
"ts-jest": "^29.2.0",
|
|
41
|
-
"typescript": "^5.5.0"
|
|
42
|
-
}
|
|
43
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@guanjinke/artifact-client",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Artifact management client and CLI for Azure Storage and Aliyun OSS",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"bin": {
|
|
8
|
+
"afm": "./dist/cli.js"
|
|
9
|
+
},
|
|
10
|
+
"files": [
|
|
11
|
+
"dist/"
|
|
12
|
+
],
|
|
13
|
+
"scripts": {
|
|
14
|
+
"build": "tsc && node -e \"process.platform !== 'win32' && require('fs').chmodSync('dist/cli.js', '755')\"",
|
|
15
|
+
"test": "jest",
|
|
16
|
+
"test:watch": "jest --watch",
|
|
17
|
+
"prepublishOnly": "npm run build"
|
|
18
|
+
},
|
|
19
|
+
"keywords": [
|
|
20
|
+
"artifact",
|
|
21
|
+
"azure",
|
|
22
|
+
"oss",
|
|
23
|
+
"storage"
|
|
24
|
+
],
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"engines": {
|
|
27
|
+
"node": ">=20"
|
|
28
|
+
},
|
|
29
|
+
"dependencies": {
|
|
30
|
+
"@azure/storage-blob": "^12.24.0",
|
|
31
|
+
"ali-oss": "^6.21.0",
|
|
32
|
+
"commander": "^12.1.0",
|
|
33
|
+
"semver": "^7.6.0"
|
|
34
|
+
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@types/jest": "^29.5.12",
|
|
37
|
+
"@types/node": "^20.14.0",
|
|
38
|
+
"@types/semver": "^7.5.8",
|
|
39
|
+
"jest": "^29.7.0",
|
|
40
|
+
"ts-jest": "^29.2.0",
|
|
41
|
+
"typescript": "^5.5.0"
|
|
42
|
+
}
|
|
43
|
+
}
|