@gitpod/gitpod-protocol 0.1.5-se-workspaceid.1 → 0.1.5-se-workspaceid.6
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/lib/util/generate-workspace-id.js +13 -13
- package/lib/util/generate-workspace-id.js.map +1 -1
- package/lib/util/generate-workspace-id.spec.js +2 -2
- package/lib/util/generate-workspace-id.spec.js.map +1 -1
- package/lib/util/gitpod-host-url.js +1 -1
- package/lib/util/gitpod-host-url.js.map +1 -1
- package/package.json +1 -1
- package/pkg-yarn.lock +1 -1
- package/src/util/generate-workspace-id.spec.ts +2 -2
- package/src/util/generate-workspace-id.ts +13 -13
- package/src/util/gitpod-host-url.ts +1 -1
|
@@ -19,24 +19,24 @@ const randomNumber = require("random-number-csprng");
|
|
|
19
19
|
function generateWorkspaceID(firstSegment, secondSegment) {
|
|
20
20
|
return __awaiter(this, void 0, void 0, function* () {
|
|
21
21
|
const firstSeg = clean(firstSegment) || (yield random(exports.colors));
|
|
22
|
-
const secSeg = clean(secondSegment, Math.min(
|
|
23
|
-
return firstSeg + '-' + secSeg + '-' + (yield random(characters,
|
|
22
|
+
const secSeg = clean(secondSegment, Math.min(15, 23 - firstSeg.length)) || (yield random(exports.animals));
|
|
23
|
+
return firstSeg + '-' + secSeg + '-' + (yield random(characters, 11));
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
26
|
exports.generateWorkspaceID = generateWorkspaceID;
|
|
27
|
-
function clean(segment, maxChars =
|
|
28
|
-
if (segment) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
if (result.length >= 2) {
|
|
36
|
-
return result.substring(0, maxChars);
|
|
27
|
+
function clean(segment, maxChars = 15) {
|
|
28
|
+
if (!segment) {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
let result = '';
|
|
32
|
+
for (let i = 0; i < segment.length; i++) {
|
|
33
|
+
if (characters.indexOf(segment[i]) !== -1) {
|
|
34
|
+
result += segment[i];
|
|
37
35
|
}
|
|
38
36
|
}
|
|
39
|
-
|
|
37
|
+
if (result.length >= 2) {
|
|
38
|
+
return result.substring(0, maxChars);
|
|
39
|
+
}
|
|
40
40
|
}
|
|
41
41
|
function random(array, length = 1) {
|
|
42
42
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-workspace-id.js","sourceRoot":"","sources":["../../src/util/generate-workspace-id.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;GAIG;AACH,qDAAsD;AAEtD,SAAsB,mBAAmB,CAAC,YAAqB,EAAE,aAAsB;;QACnF,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,KAAI,MAAM,MAAM,CAAC,cAAM,CAAC,CAAA,CAAC;QAC7D,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"generate-workspace-id.js","sourceRoot":"","sources":["../../src/util/generate-workspace-id.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,8 +49,8 @@ let TestGenerateWorkspaceId = class TestGenerateWorkspaceId {
|
|
|
49
49
|
['foo', 'bar', 'foo-bar-'],
|
|
50
50
|
['f', 'bar', '.{2,16}-bar-'],
|
|
51
51
|
['gitpod-io', 'gitpod', 'gitpodio-gitpod-'],
|
|
52
|
-
['this is rather long and has some "§$"% special chars', 'also here pretty long and needs abbreviation', '
|
|
53
|
-
['breatheco-de', 'python-flask-api-tutorial', 'breathecode-
|
|
52
|
+
['this is rather long and has some "§$"% special chars', 'also here pretty long and needs abbreviation', 'thisisratherlon-alsohere-'],
|
|
53
|
+
['breatheco-de', 'python-flask-api-tutorial', 'breathecode-pythonflaska-'],
|
|
54
54
|
];
|
|
55
55
|
for (const d of data) {
|
|
56
56
|
const id = yield (0, generate_workspace_id_1.generateWorkspaceID)(d[0], d[1]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-workspace-id.spec.js","sourceRoot":"","sources":["../../src/util/generate-workspace-id.spec.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;AAEH,uDAA8C;AAC9C,6BAA4B;AAC5B,mEAA+E;AAC/E,uDAAkD;AAElD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;AAEnB,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAEb,uBAAuB;;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gBAC1B,MAAM,EAAE,GAAG,MAAM,IAAA,2CAAmB,GAAE,CAAC;gBACvC,MAAM,CAAC,IAAI,+BAAa,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aACtF;QACL,CAAC;KAAA;IAEY,eAAe;QACxB,MAAM,YAAY,GAAG,8BAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,MAAM,aAAa,GAAG,+BAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,WAAW,GAAG,GAAG,YAAY,IAAI,aAAa,WAAW,CAAC;QAChE,MAAM,CAAC,WAAW,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,WAAW,8BAA8B,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACpH,CAAC;IAEkB,cAAc;;YAC7B,MAAM,IAAI,GAAG;gBACT,CAAC,KAAK,EAAC,KAAK,EAAC,UAAU,CAAC;gBACxB,CAAC,GAAG,EAAC,KAAK,EAAC,cAAc,CAAC;gBAC1B,CAAC,WAAW,EAAC,QAAQ,EAAC,kBAAkB,CAAC;gBACzC,CAAC,sDAAsD,EAAC,8CAA8C,EAAC,
|
|
1
|
+
{"version":3,"file":"generate-workspace-id.spec.js","sourceRoot":"","sources":["../../src/util/generate-workspace-id.spec.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;AAEH,uDAA8C;AAC9C,6BAA4B;AAC5B,mEAA+E;AAC/E,uDAAkD;AAElD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;AAEnB,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAEb,uBAAuB;;YACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gBAC1B,MAAM,EAAE,GAAG,MAAM,IAAA,2CAAmB,GAAE,CAAC;gBACvC,MAAM,CAAC,IAAI,+BAAa,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aACtF;QACL,CAAC;KAAA;IAEY,eAAe;QACxB,MAAM,YAAY,GAAG,8BAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,MAAM,aAAa,GAAG,+BAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,MAAM,WAAW,GAAG,GAAG,YAAY,IAAI,aAAa,WAAW,CAAC;QAChE,MAAM,CAAC,WAAW,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,WAAW,8BAA8B,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACpH,CAAC;IAEkB,cAAc;;YAC7B,MAAM,IAAI,GAAG;gBACT,CAAC,KAAK,EAAC,KAAK,EAAC,UAAU,CAAC;gBACxB,CAAC,GAAG,EAAC,KAAK,EAAC,cAAc,CAAC;gBAC1B,CAAC,WAAW,EAAC,QAAQ,EAAC,kBAAkB,CAAC;gBACzC,CAAC,sDAAsD,EAAC,8CAA8C,EAAC,2BAA2B,CAAC;gBACnI,CAAC,cAAc,EAAE,2BAA2B,EAAE,2BAA2B,CAAC;aAC7E,CAAA;YACD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;gBAClB,MAAM,EAAE,GAAG,MAAM,IAAA,2CAAmB,EAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,GAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,MAAM,CAAC,IAAI,+BAAa,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACnF,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;aACxF;QACL,CAAC;KAAA;CAEJ,CAAA;AA9BS;IAAL,uBAAI;;;;sEAKJ;AAEK;IAAL,uBAAI;;;;8DAKJ;AAEK;IAAL,uBAAI;;;;6DAcJ;AA9BQ,uBAAuB;IAAnC,wBAAK;GAAO,uBAAuB,CAgCnC;AACD,MAAM,CAAC,OAAO,GAAG,IAAI,uBAAuB,EAAE,CAAA"}
|
|
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
8
8
|
exports.GitpodHostUrl = void 0;
|
|
9
9
|
const URL = require('url').URL || window.URL;
|
|
10
10
|
const logging_1 = require("./logging");
|
|
11
|
-
const baseWorkspaceIDRegex = "(([a-f][0-9a-f]{7}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})|([0-9a-z]{2,16}-[0-9a-z]{2,16}-[0-9a-z]{8}))";
|
|
11
|
+
const baseWorkspaceIDRegex = "(([a-f][0-9a-f]{7}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})|([0-9a-z]{2,16}-[0-9a-z]{2,16}-[0-9a-z]{8,11}))";
|
|
12
12
|
// this pattern matches v4 UUIDs as well as the new generated workspace ids (e.g. pink-panda-ns35kd21)
|
|
13
13
|
const workspaceIDRegex = RegExp(`^${baseWorkspaceIDRegex}$`);
|
|
14
14
|
// this pattern matches URL prefixes of workspaces
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitpod-host-url.js","sourceRoot":"","sources":["../../src/util/gitpod-host-url.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC;AAC7C,uCAAgC;AAOhC,MAAM,oBAAoB,GAAG,
|
|
1
|
+
{"version":3,"file":"gitpod-host-url.js","sourceRoot":"","sources":["../../src/util/gitpod-host-url.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/pkg-yarn.lock
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
"@gitpod/gitpod-protocol@0.1.5":
|
|
6
6
|
version "0.1.5"
|
|
7
|
-
resolved "file:///tmp/cache/
|
|
7
|
+
resolved "file:///tmp/cache/a30ff0aff99ac4287ce13ebe2f210e7099adfa88.tar.gz"
|
|
8
8
|
dependencies:
|
|
9
9
|
"@types/react" "17.0.32"
|
|
10
10
|
ajv "^6.5.4"
|
|
@@ -32,8 +32,8 @@ const expect = chai.expect
|
|
|
32
32
|
['foo','bar','foo-bar-'],
|
|
33
33
|
['f','bar','.{2,16}-bar-'],
|
|
34
34
|
['gitpod-io','gitpod','gitpodio-gitpod-'],
|
|
35
|
-
['this is rather long and has some "§$"% special chars','also here pretty long and needs abbreviation','
|
|
36
|
-
['breatheco-de', 'python-flask-api-tutorial', 'breathecode-
|
|
35
|
+
['this is rather long and has some "§$"% special chars','also here pretty long and needs abbreviation','thisisratherlon-alsohere-'],
|
|
36
|
+
['breatheco-de', 'python-flask-api-tutorial', 'breathecode-pythonflaska-'],
|
|
37
37
|
]
|
|
38
38
|
for (const d of data) {
|
|
39
39
|
const id = await generateWorkspaceID(d[0], d[1]);
|
|
@@ -7,23 +7,23 @@ import randomNumber = require("random-number-csprng");
|
|
|
7
7
|
|
|
8
8
|
export async function generateWorkspaceID(firstSegment?: string, secondSegment?: string): Promise<string> {
|
|
9
9
|
const firstSeg = clean(firstSegment) || await random(colors);
|
|
10
|
-
const secSeg = clean(secondSegment, Math.min(
|
|
11
|
-
return firstSeg+'-'+secSeg+'-'+(await random(characters,
|
|
10
|
+
const secSeg = clean(secondSegment, Math.min(15, 23 - firstSeg.length)) || await random(animals);
|
|
11
|
+
return firstSeg+'-'+secSeg+'-'+(await random(characters, 11));
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
function clean(segment: string | undefined, maxChars: number =
|
|
15
|
-
if (segment) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (result.length >= 2) {
|
|
23
|
-
return result.substring(0, maxChars);
|
|
14
|
+
function clean(segment: string | undefined, maxChars: number = 15) {
|
|
15
|
+
if (!segment) {
|
|
16
|
+
return undefined;
|
|
17
|
+
}
|
|
18
|
+
let result = '';
|
|
19
|
+
for (let i =0; i < segment.length; i++) {
|
|
20
|
+
if (characters.indexOf(segment[i]) !== -1) {
|
|
21
|
+
result += segment[i];
|
|
24
22
|
}
|
|
25
23
|
}
|
|
26
|
-
|
|
24
|
+
if (result.length >= 2) {
|
|
25
|
+
return result.substring(0, maxChars);
|
|
26
|
+
}
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
async function random(array: string[], length: number = 1): Promise<string> {
|
|
@@ -12,7 +12,7 @@ export interface UrlChange {
|
|
|
12
12
|
}
|
|
13
13
|
export type UrlUpdate = UrlChange | Partial<URL>;
|
|
14
14
|
|
|
15
|
-
const baseWorkspaceIDRegex = "(([a-f][0-9a-f]{7}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})|([0-9a-z]{2,16}-[0-9a-z]{2,16}-[0-9a-z]{8}))";
|
|
15
|
+
const baseWorkspaceIDRegex = "(([a-f][0-9a-f]{7}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})|([0-9a-z]{2,16}-[0-9a-z]{2,16}-[0-9a-z]{8,11}))";
|
|
16
16
|
|
|
17
17
|
// this pattern matches v4 UUIDs as well as the new generated workspace ids (e.g. pink-panda-ns35kd21)
|
|
18
18
|
const workspaceIDRegex = RegExp(`^${baseWorkspaceIDRegex}$`);
|