@cloudpss/env 0.3.0-alpha.3 → 0.3.0-alpha.4
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/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.js +25 -6
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.d.ts +2 -0
- package/dist/esm/index.js +23 -6
- package/dist/esm/index.js.map +1 -1
- package/package.json +2 -2
- package/src/index.ts +23 -6
package/dist/cjs/index.d.ts
CHANGED
package/dist/cjs/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.normalizeUrl = void 0;
|
|
3
4
|
let fakeEnv = undefined;
|
|
4
5
|
/** 获取环境变量 */
|
|
5
6
|
function env() {
|
|
@@ -20,7 +21,9 @@ function env() {
|
|
|
20
21
|
return fakeEnv;
|
|
21
22
|
}
|
|
22
23
|
}
|
|
23
|
-
|
|
24
|
+
/** 基址 */
|
|
25
|
+
function baseUrl() {
|
|
26
|
+
// 通过 DOM API 确定 baseUrl
|
|
24
27
|
let webBase = 'https://cloudpss.net/';
|
|
25
28
|
if (typeof document == 'object' && document.baseURI && document.baseURI.startsWith('http')) {
|
|
26
29
|
webBase = document.baseURI;
|
|
@@ -28,6 +31,7 @@ const BASE = (() => {
|
|
|
28
31
|
else if (typeof location == 'object' && location.protocol.startsWith('http')) {
|
|
29
32
|
webBase = location.href;
|
|
30
33
|
}
|
|
34
|
+
//通过 env 确定 baseUrl
|
|
31
35
|
const homeUrl = env()['CLOUDPSS_HOME_URL'];
|
|
32
36
|
if (homeUrl) {
|
|
33
37
|
try {
|
|
@@ -39,7 +43,7 @@ const BASE = (() => {
|
|
|
39
43
|
}
|
|
40
44
|
}
|
|
41
45
|
return webBase;
|
|
42
|
-
}
|
|
46
|
+
}
|
|
43
47
|
/** 获取 url */
|
|
44
48
|
function getUrl(envName, defaults) {
|
|
45
49
|
let url;
|
|
@@ -53,11 +57,26 @@ function getUrl(envName, defaults) {
|
|
|
53
57
|
if (typeof url != 'string') {
|
|
54
58
|
throw new Error('url must be a string');
|
|
55
59
|
}
|
|
56
|
-
const u =
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
+
const u = normalizeUrl(url);
|
|
61
|
+
e[envName] = u;
|
|
62
|
+
return u;
|
|
63
|
+
}
|
|
64
|
+
/** 规范化 URL,转为 absolute URL,去除末尾 '/' */
|
|
65
|
+
function normalizeUrl(url) {
|
|
66
|
+
if (typeof url != 'string') {
|
|
67
|
+
if (url && typeof url.href == 'string') {
|
|
68
|
+
url = url.href;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
throw new Error('Invalid url, must be a string or a URL');
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
const u = new URL(url, baseUrl());
|
|
75
|
+
if (u.href.endsWith('/'))
|
|
76
|
+
return u.href.slice(0, u.href.length - 1);
|
|
77
|
+
return u.href;
|
|
60
78
|
}
|
|
79
|
+
exports.normalizeUrl = normalizeUrl;
|
|
61
80
|
const cloudpssEnv = {};
|
|
62
81
|
const def = [
|
|
63
82
|
['API_URL', '/api'],
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.d.ts
CHANGED
package/dist/esm/index.js
CHANGED
|
@@ -18,7 +18,9 @@ function env() {
|
|
|
18
18
|
return fakeEnv;
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
|
|
21
|
+
/** 基址 */
|
|
22
|
+
function baseUrl() {
|
|
23
|
+
// 通过 DOM API 确定 baseUrl
|
|
22
24
|
let webBase = 'https://cloudpss.net/';
|
|
23
25
|
if (typeof document == 'object' && document.baseURI && document.baseURI.startsWith('http')) {
|
|
24
26
|
webBase = document.baseURI;
|
|
@@ -26,6 +28,7 @@ const BASE = (() => {
|
|
|
26
28
|
else if (typeof location == 'object' && location.protocol.startsWith('http')) {
|
|
27
29
|
webBase = location.href;
|
|
28
30
|
}
|
|
31
|
+
//通过 env 确定 baseUrl
|
|
29
32
|
const homeUrl = env()['CLOUDPSS_HOME_URL'];
|
|
30
33
|
if (homeUrl) {
|
|
31
34
|
try {
|
|
@@ -37,7 +40,7 @@ const BASE = (() => {
|
|
|
37
40
|
}
|
|
38
41
|
}
|
|
39
42
|
return webBase;
|
|
40
|
-
}
|
|
43
|
+
}
|
|
41
44
|
/** 获取 url */
|
|
42
45
|
function getUrl(envName, defaults) {
|
|
43
46
|
let url;
|
|
@@ -51,10 +54,24 @@ function getUrl(envName, defaults) {
|
|
|
51
54
|
if (typeof url != 'string') {
|
|
52
55
|
throw new Error('url must be a string');
|
|
53
56
|
}
|
|
54
|
-
const u =
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
57
|
+
const u = normalizeUrl(url);
|
|
58
|
+
e[envName] = u;
|
|
59
|
+
return u;
|
|
60
|
+
}
|
|
61
|
+
/** 规范化 URL,转为 absolute URL,去除末尾 '/' */
|
|
62
|
+
export function normalizeUrl(url) {
|
|
63
|
+
if (typeof url != 'string') {
|
|
64
|
+
if (url && typeof url.href == 'string') {
|
|
65
|
+
url = url.href;
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
throw new Error('Invalid url, must be a string or a URL');
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
const u = new URL(url, baseUrl());
|
|
72
|
+
if (u.href.endsWith('/'))
|
|
73
|
+
return u.href.slice(0, u.href.length - 1);
|
|
74
|
+
return u.href;
|
|
58
75
|
}
|
|
59
76
|
const cloudpssEnv = {};
|
|
60
77
|
const def = [
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,IAAI,OAAO,GAAkC,SAAS,CAAC;AAEvD,aAAa;AACb,SAAS,GAAG;IACR,IAAI,OAAO,OAAO,IAAI,QAAQ,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,OAAO,CAAC,GAAG,IAAI,QAAQ,EAAE;QAC7E,IAAI,OAAO,EAAE;YACT,yCAAyC;YACzC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;gBACvB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;aACnC;YACD,OAAO,GAAG,SAAS,CAAC;SACvB;QACD,OAAO,OAAO,CAAC,GAAG,CAAC;KACtB;SAAM;QACH,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,GAAG,EAAE,CAAC;SAChB;QACD,OAAO,OAAO,CAAC;KAClB;AACL,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -19,13 +19,17 @@ function env(): NodeJS.ProcessEnv {
|
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
/** 基址 */
|
|
23
|
+
function baseUrl(): string {
|
|
24
|
+
// 通过 DOM API 确定 baseUrl
|
|
23
25
|
let webBase = 'https://cloudpss.net/';
|
|
24
26
|
if (typeof document == 'object' && document.baseURI && document.baseURI.startsWith('http')) {
|
|
25
27
|
webBase = document.baseURI;
|
|
26
28
|
} else if (typeof location == 'object' && location.protocol.startsWith('http')) {
|
|
27
29
|
webBase = location.href;
|
|
28
30
|
}
|
|
31
|
+
|
|
32
|
+
//通过 env 确定 baseUrl
|
|
29
33
|
const homeUrl = env()['CLOUDPSS_HOME_URL'];
|
|
30
34
|
if (homeUrl) {
|
|
31
35
|
try {
|
|
@@ -36,7 +40,7 @@ const BASE = (() => {
|
|
|
36
40
|
}
|
|
37
41
|
}
|
|
38
42
|
return webBase;
|
|
39
|
-
}
|
|
43
|
+
}
|
|
40
44
|
|
|
41
45
|
/** 获取 url */
|
|
42
46
|
function getUrl(envName: string, defaults: string): string {
|
|
@@ -51,10 +55,23 @@ function getUrl(envName: string, defaults: string): string {
|
|
|
51
55
|
if (typeof url != 'string') {
|
|
52
56
|
throw new Error('url must be a string');
|
|
53
57
|
}
|
|
54
|
-
const u =
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
+
const u = normalizeUrl(url);
|
|
59
|
+
e[envName] = u;
|
|
60
|
+
return u;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/** 规范化 URL,转为 absolute URL,去除末尾 '/' */
|
|
64
|
+
export function normalizeUrl(url: string | URL): string {
|
|
65
|
+
if (typeof url != 'string') {
|
|
66
|
+
if (url && typeof url.href == 'string') {
|
|
67
|
+
url = url.href;
|
|
68
|
+
} else {
|
|
69
|
+
throw new Error('Invalid url, must be a string or a URL');
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
const u = new URL(url, baseUrl());
|
|
73
|
+
if (u.href.endsWith('/')) return u.href.slice(0, u.href.length - 1);
|
|
74
|
+
return u.href;
|
|
58
75
|
}
|
|
59
76
|
|
|
60
77
|
const cloudpssEnv = {} as {
|