@scalar/oas-utils 0.10.7 → 0.10.9
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 +15 -0
- package/dist/entities/cookie/cookie.js +11 -15
- package/dist/entities/cookie/index.js +1 -5
- package/dist/entities/environment/environment.js +7 -11
- package/dist/entities/environment/index.js +1 -5
- package/dist/entities/hotkeys/hotkeys.js +116 -111
- package/dist/entities/hotkeys/index.js +1 -6
- package/dist/entities/shared/index.js +1 -7
- package/dist/entities/shared/utility.js +9 -9
- package/dist/entities/spec/collection.js +91 -89
- package/dist/entities/spec/index.js +10 -59
- package/dist/entities/spec/operation.js +6 -6
- package/dist/entities/spec/parameters.js +38 -38
- package/dist/entities/spec/request-examples.js +421 -331
- package/dist/entities/spec/requests.js +102 -84
- package/dist/entities/spec/server.js +61 -46
- package/dist/entities/spec/spec-objects.js +121 -76
- package/dist/entities/spec/x-scalar-environments.js +18 -20
- package/dist/entities/spec/x-scalar-secrets.js +6 -8
- package/dist/entities/workspace/index.js +1 -7
- package/dist/entities/workspace/workspace.js +47 -46
- package/dist/helpers/client-plugins.js +13 -13
- package/dist/helpers/fetch-document.js +30 -25
- package/dist/helpers/fetch-with-proxy-fallback.js +26 -21
- package/dist/helpers/index.d.ts +1 -2
- package/dist/helpers/index.d.ts.map +1 -1
- package/dist/helpers/index.js +80 -119
- package/dist/helpers/normalize-mime-type-object.js +19 -18
- package/dist/helpers/normalize-mime-type.js +11 -9
- package/dist/helpers/operation-stability.js +25 -20
- package/dist/helpers/parse.d.ts +0 -4
- package/dist/helpers/parse.d.ts.map +1 -1
- package/dist/helpers/parse.js +77 -77
- package/dist/helpers/schema-model.js +13 -16
- package/dist/helpers/security/get-schemes.js +7 -8
- package/dist/helpers/security/has-token.js +18 -19
- package/dist/helpers/security/index.js +2 -7
- package/dist/helpers/servers.js +128 -79
- package/dist/helpers/should-ignore-entity.js +4 -5
- package/dist/migrations/data-version.js +15 -7
- package/dist/migrations/generate-types.js +34 -37
- package/dist/migrations/index.js +4 -18
- package/dist/migrations/local-storage.js +31 -29
- package/dist/migrations/migrate-to-indexdb.js +706 -529
- package/dist/migrations/migrator.js +58 -54
- package/dist/migrations/semver.js +24 -24
- package/dist/migrations/v-0.0.0/types.generated.js +1 -1
- package/dist/migrations/v-2.1.0/migration.js +272 -258
- package/dist/migrations/v-2.1.0/types.generated.js +1 -1
- package/dist/migrations/v-2.2.0/migration.js +99 -96
- package/dist/migrations/v-2.2.0/types.generated.js +1 -1
- package/dist/migrations/v-2.3.0/migration.js +45 -48
- package/dist/migrations/v-2.3.0/types.generated.js +1 -1
- package/dist/migrations/v-2.4.0/migration.js +25 -25
- package/dist/migrations/v-2.4.0/types.generated.js +1 -1
- package/dist/migrations/v-2.5.0/migration.js +122 -139
- package/dist/migrations/v-2.5.0/types.generated.js +1 -1
- package/dist/spec-getters/get-example-from-schema.js +489 -385
- package/dist/spec-getters/get-parameters-from-operation.js +39 -23
- package/dist/spec-getters/get-request-body-from-operation.d.ts.map +1 -1
- package/dist/spec-getters/get-request-body-from-operation.js +168 -126
- package/dist/spec-getters/get-server-variable-examples.js +10 -13
- package/dist/spec-getters/index.js +4 -11
- package/dist/transforms/import-spec.js +381 -291
- package/dist/transforms/index.js +1 -11
- package/package.json +15 -19
- package/dist/entities/cookie/cookie.js.map +0 -7
- package/dist/entities/cookie/index.js.map +0 -7
- package/dist/entities/environment/environment.js.map +0 -7
- package/dist/entities/environment/index.js.map +0 -7
- package/dist/entities/hotkeys/hotkeys.js.map +0 -7
- package/dist/entities/hotkeys/index.js.map +0 -7
- package/dist/entities/shared/index.js.map +0 -7
- package/dist/entities/shared/utility.js.map +0 -7
- package/dist/entities/spec/collection.js.map +0 -7
- package/dist/entities/spec/index.js.map +0 -7
- package/dist/entities/spec/operation.js.map +0 -7
- package/dist/entities/spec/parameters.js.map +0 -7
- package/dist/entities/spec/request-examples.js.map +0 -7
- package/dist/entities/spec/requests.js.map +0 -7
- package/dist/entities/spec/server.js.map +0 -7
- package/dist/entities/spec/spec-objects.js.map +0 -7
- package/dist/entities/spec/x-scalar-environments.js.map +0 -7
- package/dist/entities/spec/x-scalar-secrets.js.map +0 -7
- package/dist/entities/workspace/index.js.map +0 -7
- package/dist/entities/workspace/workspace.js.map +0 -7
- package/dist/helpers/client-plugins.js.map +0 -7
- package/dist/helpers/fetch-document.js.map +0 -7
- package/dist/helpers/fetch-with-proxy-fallback.js.map +0 -7
- package/dist/helpers/index.js.map +0 -7
- package/dist/helpers/normalize-mime-type-object.js.map +0 -7
- package/dist/helpers/normalize-mime-type.js.map +0 -7
- package/dist/helpers/operation-stability.js.map +0 -7
- package/dist/helpers/parse.js.map +0 -7
- package/dist/helpers/pretty-print-json.d.ts +0 -9
- package/dist/helpers/pretty-print-json.d.ts.map +0 -1
- package/dist/helpers/pretty-print-json.js +0 -38
- package/dist/helpers/pretty-print-json.js.map +0 -7
- package/dist/helpers/schema-model.js.map +0 -7
- package/dist/helpers/security/get-schemes.js.map +0 -7
- package/dist/helpers/security/has-token.js.map +0 -7
- package/dist/helpers/security/index.js.map +0 -7
- package/dist/helpers/servers.js.map +0 -7
- package/dist/helpers/should-ignore-entity.js.map +0 -7
- package/dist/migrations/data-version.js.map +0 -7
- package/dist/migrations/generate-types.js.map +0 -7
- package/dist/migrations/index.js.map +0 -7
- package/dist/migrations/local-storage.js.map +0 -7
- package/dist/migrations/migrate-to-indexdb.js.map +0 -7
- package/dist/migrations/migrator.js.map +0 -7
- package/dist/migrations/semver.js.map +0 -7
- package/dist/migrations/v-0.0.0/types.generated.js.map +0 -7
- package/dist/migrations/v-2.1.0/migration.js.map +0 -7
- package/dist/migrations/v-2.1.0/types.generated.js.map +0 -7
- package/dist/migrations/v-2.2.0/migration.js.map +0 -7
- package/dist/migrations/v-2.2.0/types.generated.js.map +0 -7
- package/dist/migrations/v-2.3.0/migration.js.map +0 -7
- package/dist/migrations/v-2.3.0/types.generated.js.map +0 -7
- package/dist/migrations/v-2.4.0/migration.js.map +0 -7
- package/dist/migrations/v-2.4.0/types.generated.js.map +0 -7
- package/dist/migrations/v-2.5.0/migration.js.map +0 -7
- package/dist/migrations/v-2.5.0/types.generated.js.map +0 -7
- package/dist/spec-getters/get-example-from-schema.js.map +0 -7
- package/dist/spec-getters/get-parameters-from-operation.js.map +0 -7
- package/dist/spec-getters/get-request-body-from-operation.js.map +0 -7
- package/dist/spec-getters/get-server-variable-examples.js.map +0 -7
- package/dist/spec-getters/index.js.map +0 -7
- package/dist/transforms/import-spec.js.map +0 -7
- package/dist/transforms/index.js.map +0 -7
|
@@ -1,105 +1,108 @@
|
|
|
1
|
+
/** Migrate security scheme from v-2.1.0 to v-2.2.0 */
|
|
1
2
|
const migrateSecurityScheme = (scheme, auth) => {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
if (scheme.type === "http" && auth.type === "http") {
|
|
9
|
-
return {
|
|
10
|
-
...scheme,
|
|
11
|
-
username: auth.username,
|
|
12
|
-
password: auth.password,
|
|
13
|
-
token: auth.token
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
if (scheme.type === "oauth2") {
|
|
17
|
-
const { flow, ..._scheme } = scheme;
|
|
18
|
-
if (flow.type === "implicit" && auth.type === "oauth-implicit") {
|
|
19
|
-
return {
|
|
20
|
-
..._scheme,
|
|
21
|
-
flows: {
|
|
22
|
-
implicit: {
|
|
23
|
-
...flow,
|
|
24
|
-
"scopes": flow.scopes,
|
|
25
|
-
"token": auth.token,
|
|
26
|
-
"x-scalar-client-id": _scheme["x-scalar-client-id"]
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
};
|
|
3
|
+
// API Key
|
|
4
|
+
if (scheme.type === 'apiKey' && auth.type === 'apiKey') {
|
|
5
|
+
return {
|
|
6
|
+
...scheme,
|
|
7
|
+
value: auth.value,
|
|
8
|
+
};
|
|
30
9
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
"token": auth.token,
|
|
40
|
-
"clientSecret": auth.clientSecret,
|
|
41
|
-
"scopes": flow.scopes,
|
|
42
|
-
"x-scalar-client-id": _scheme["x-scalar-client-id"]
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
};
|
|
10
|
+
// HTTP
|
|
11
|
+
if (scheme.type === 'http' && auth.type === 'http') {
|
|
12
|
+
return {
|
|
13
|
+
...scheme,
|
|
14
|
+
username: auth.username,
|
|
15
|
+
password: auth.password,
|
|
16
|
+
token: auth.token,
|
|
17
|
+
};
|
|
46
18
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
..._scheme
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
19
|
+
// OAuth2
|
|
20
|
+
if (scheme.type === 'oauth2') {
|
|
21
|
+
const { flow, ..._scheme } = scheme;
|
|
22
|
+
// Implicit
|
|
23
|
+
if (flow.type === 'implicit' && auth.type === 'oauth-implicit') {
|
|
24
|
+
return {
|
|
25
|
+
..._scheme,
|
|
26
|
+
flows: {
|
|
27
|
+
implicit: {
|
|
28
|
+
...flow,
|
|
29
|
+
'scopes': flow.scopes,
|
|
30
|
+
'token': auth.token,
|
|
31
|
+
'x-scalar-client-id': _scheme['x-scalar-client-id'],
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
};
|
|
58
35
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
36
|
+
// Password
|
|
37
|
+
if (flow.type === 'password' && auth.type === 'oauth-password') {
|
|
38
|
+
return {
|
|
39
|
+
..._scheme,
|
|
40
|
+
flows: {
|
|
41
|
+
password: {
|
|
42
|
+
...flow,
|
|
43
|
+
'username': auth.username,
|
|
44
|
+
'password': auth.password,
|
|
45
|
+
'token': auth.token,
|
|
46
|
+
'clientSecret': auth.clientSecret,
|
|
47
|
+
'scopes': flow.scopes,
|
|
48
|
+
'x-scalar-client-id': _scheme['x-scalar-client-id'],
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
// Client Credentials
|
|
54
|
+
if (flow.type === 'clientCredentials' && auth.type === 'oauth-clientCredentials') {
|
|
55
|
+
return {
|
|
56
|
+
..._scheme,
|
|
57
|
+
flows: {
|
|
58
|
+
clientCredentials: {
|
|
59
|
+
...flow,
|
|
60
|
+
'token': auth.token,
|
|
61
|
+
'clientSecret': auth.clientSecret,
|
|
62
|
+
'scopes': flow.scopes,
|
|
63
|
+
'x-scalar-client-id': _scheme['x-scalar-client-id'],
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
// Authorization Code
|
|
69
|
+
if (flow.type === 'authorizationCode' && auth.type === 'oauth-authorizationCode') {
|
|
70
|
+
return {
|
|
71
|
+
..._scheme,
|
|
72
|
+
flows: {
|
|
73
|
+
authorizationCode: {
|
|
74
|
+
...flow,
|
|
75
|
+
'token': auth.token,
|
|
76
|
+
'clientSecret': auth.clientSecret,
|
|
77
|
+
'scopes': flow.scopes,
|
|
78
|
+
'x-scalar-client-id': _scheme['x-scalar-client-id'],
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
};
|
|
72
82
|
}
|
|
73
|
-
};
|
|
74
83
|
}
|
|
75
|
-
|
|
76
|
-
return null;
|
|
84
|
+
return null;
|
|
77
85
|
};
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
(prev, s) => {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
86
|
+
/** V-2.1.0 to V-2.2.0 migration */
|
|
87
|
+
export const migrate_v_2_2_0 = (data) => {
|
|
88
|
+
console.info('Performing data migration v-2.1.0 to v-2.2.0');
|
|
89
|
+
const securitySchemes = Object.values(data.securitySchemes).reduce((prev, s) => {
|
|
90
|
+
const collection = Object.values(data.collections).find((c) => c.securitySchemes.includes(s.uid));
|
|
91
|
+
const auth = collection?.auth?.[s.uid];
|
|
92
|
+
if (!auth) {
|
|
93
|
+
return prev;
|
|
94
|
+
}
|
|
95
|
+
const newScheme = migrateSecurityScheme(s, auth);
|
|
96
|
+
if (newScheme) {
|
|
97
|
+
prev[s.uid] = newScheme;
|
|
98
|
+
}
|
|
85
99
|
return prev;
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
);
|
|
95
|
-
const servers = data.servers;
|
|
96
|
-
return {
|
|
97
|
-
...data,
|
|
98
|
-
securitySchemes,
|
|
99
|
-
servers
|
|
100
|
-
};
|
|
101
|
-
};
|
|
102
|
-
export {
|
|
103
|
-
migrate_v_2_2_0
|
|
100
|
+
}, {});
|
|
101
|
+
// No changes to servers
|
|
102
|
+
const servers = data.servers;
|
|
103
|
+
return {
|
|
104
|
+
...data,
|
|
105
|
+
securitySchemes,
|
|
106
|
+
servers,
|
|
107
|
+
};
|
|
104
108
|
};
|
|
105
|
-
//# sourceMappingURL=migration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
@@ -1,51 +1,48 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
prev
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
Object.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
1
|
+
/** V-2.2.0 to V-2.3.0 migration */
|
|
2
|
+
export const migrate_v_2_3_0 = (data) => {
|
|
3
|
+
console.info('Performing data migration v-2.2.0 to v-2.3.0');
|
|
4
|
+
const environments = data.environments;
|
|
5
|
+
const workspaces = Object.values(data.workspaces).reduce((prev, w) => {
|
|
6
|
+
const workspaceEnvironments = {};
|
|
7
|
+
Object.entries(environments).forEach(([envId, envData]) => {
|
|
8
|
+
const parsedData = typeof envData.value === 'string' ? JSON.parse(envData.value) : envData.value;
|
|
9
|
+
if (envId === 'default') {
|
|
10
|
+
Object.assign(workspaceEnvironments, parsedData);
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
prev[w.uid] = {
|
|
14
|
+
...w,
|
|
15
|
+
environments: workspaceEnvironments,
|
|
16
|
+
};
|
|
17
|
+
return prev;
|
|
18
|
+
}, {});
|
|
19
|
+
const collections = Object.values(data.collections).reduce((prev, c) => {
|
|
20
|
+
prev[c.uid] = {
|
|
21
|
+
...c,
|
|
22
|
+
'x-scalar-environments': c['x-scalar-environments'] || {},
|
|
23
|
+
};
|
|
24
|
+
return prev;
|
|
25
|
+
}, {});
|
|
26
|
+
Object.values(workspaces).forEach((workspace) => {
|
|
27
|
+
Object.entries(environments).forEach(([envKey, envData]) => {
|
|
28
|
+
if (envKey !== 'default') {
|
|
29
|
+
const parsedData = typeof envData.value === 'string' ? JSON.parse(envData.value) : envData.value;
|
|
30
|
+
const envName = envData.name;
|
|
31
|
+
Object.values(collections).forEach((collection) => {
|
|
32
|
+
collection['x-scalar-environments'] = collection['x-scalar-environments'] || {};
|
|
33
|
+
collection['x-scalar-environments'][envName] = {
|
|
34
|
+
variables: parsedData,
|
|
35
|
+
};
|
|
36
|
+
if (workspace.activeEnvironmentId === envKey) {
|
|
37
|
+
collection['x-scalar-active-environment'] = envName ?? '';
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
38
41
|
});
|
|
39
|
-
}
|
|
40
42
|
});
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
};
|
|
47
|
-
};
|
|
48
|
-
export {
|
|
49
|
-
migrate_v_2_3_0
|
|
43
|
+
return {
|
|
44
|
+
...data,
|
|
45
|
+
collections,
|
|
46
|
+
workspaces,
|
|
47
|
+
};
|
|
50
48
|
};
|
|
51
|
-
//# sourceMappingURL=migration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
/** V-2.3.0 to V-2.4.0 migration */
|
|
2
|
+
export const migrate_v_2_4_0 = (data) => {
|
|
3
|
+
console.info('Performing data migration v-2.3.0 to v-2.4.0');
|
|
4
|
+
const collections = Object.values(data.collections).reduce((prev, c) => {
|
|
5
|
+
if (c.info?.title === 'Drafts') {
|
|
6
|
+
// Remove the servers from the draft collection
|
|
7
|
+
c.servers = [];
|
|
8
|
+
Object.values(data.requests).forEach((request) => {
|
|
9
|
+
if (request.selectedServerUid && c.requests.includes(request.uid)) {
|
|
10
|
+
const server = data.servers[request.selectedServerUid];
|
|
11
|
+
if (server) {
|
|
12
|
+
// Update the request paths to include the server URL
|
|
13
|
+
request.path = `${server.url}${request.path}`;
|
|
14
|
+
}
|
|
15
|
+
// Remove the selected server UID from the draft request
|
|
16
|
+
request.selectedServerUid = '';
|
|
17
|
+
}
|
|
18
|
+
});
|
|
13
19
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
collections
|
|
22
|
-
};
|
|
20
|
+
prev[c.uid] = c;
|
|
21
|
+
return prev;
|
|
22
|
+
}, {});
|
|
23
|
+
return {
|
|
24
|
+
...data,
|
|
25
|
+
collections,
|
|
26
|
+
};
|
|
23
27
|
};
|
|
24
|
-
export {
|
|
25
|
-
migrate_v_2_4_0
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=migration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
@@ -1,144 +1,127 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
acc[key]
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
(acc, [key, collection]) => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
},
|
|
29
|
-
{}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
...environment,
|
|
35
|
-
uid: environment.uid
|
|
36
|
-
};
|
|
37
|
-
return acc;
|
|
38
|
-
},
|
|
39
|
-
{}
|
|
40
|
-
);
|
|
41
|
-
const requests = Object.entries(data.requests || {}).reduce(
|
|
42
|
-
(acc, [key, request]) => {
|
|
43
|
-
if (request.method === "connect") {
|
|
1
|
+
/** V-2.4.0 to V-2.5.0 migration */
|
|
2
|
+
export const migrate_v_2_5_0 = (data) => {
|
|
3
|
+
console.info('Performing data migration v-2.4.0 to v-2.5.0');
|
|
4
|
+
const cookies = Object.entries(data.cookies || {}).reduce((acc, [key, cookie]) => {
|
|
5
|
+
acc[key] = {
|
|
6
|
+
...cookie,
|
|
7
|
+
uid: cookie.uid,
|
|
8
|
+
};
|
|
9
|
+
return acc;
|
|
10
|
+
}, {});
|
|
11
|
+
const collections = Object.entries(data.collections || {}).reduce((acc, [key, collection]) => {
|
|
12
|
+
acc[key] = {
|
|
13
|
+
...collection,
|
|
14
|
+
info: collection.info ?? {
|
|
15
|
+
title: 'API',
|
|
16
|
+
version: '1.0',
|
|
17
|
+
},
|
|
18
|
+
uid: collection.uid,
|
|
19
|
+
selectedSecuritySchemeUids: collection.selectedSecuritySchemeUids,
|
|
20
|
+
servers: collection.servers.map((uid) => uid),
|
|
21
|
+
tags: collection.tags.map((uid) => uid),
|
|
22
|
+
requests: collection.requests.map((uid) => uid),
|
|
23
|
+
children: collection.children.map((uid) => uid),
|
|
24
|
+
selectedServerUid: collection.selectedServerUid,
|
|
25
|
+
useCollectionSecurity: false,
|
|
26
|
+
};
|
|
27
|
+
return acc;
|
|
28
|
+
}, {});
|
|
29
|
+
const environments = Object.entries(data.environments || {}).reduce((acc, [key, environment]) => {
|
|
30
|
+
acc[key] = {
|
|
31
|
+
...environment,
|
|
32
|
+
uid: environment.uid,
|
|
33
|
+
};
|
|
44
34
|
return acc;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
selectedServerUid: request.selectedServerUid,
|
|
51
|
-
examples: request.examples,
|
|
52
|
-
selectedSecuritySchemeUids: request.selectedSecuritySchemeUids,
|
|
53
|
-
method: request.method
|
|
54
|
-
};
|
|
55
|
-
return acc;
|
|
56
|
-
},
|
|
57
|
-
{}
|
|
58
|
-
);
|
|
59
|
-
const requestExamples = Object.entries(data.requestExamples || {}).reduce(
|
|
60
|
-
(acc, [key, example]) => {
|
|
61
|
-
const headers = example.parameters.headers;
|
|
62
|
-
const hasAcceptHeader = headers.some((header) => header.key.toLowerCase() === "accept");
|
|
63
|
-
if (!hasAcceptHeader) {
|
|
64
|
-
headers.unshift({ key: "Accept", value: "*/*", enabled: true });
|
|
65
|
-
}
|
|
66
|
-
acc[key] = {
|
|
67
|
-
...example,
|
|
68
|
-
uid: example.uid,
|
|
69
|
-
requestUid: example.requestUid,
|
|
70
|
-
parameters: {
|
|
71
|
-
...example.parameters,
|
|
72
|
-
headers
|
|
35
|
+
}, {});
|
|
36
|
+
const requests = Object.entries(data.requests || {}).reduce((acc, [key, request]) => {
|
|
37
|
+
// Skip 'connect' operations as they are not supported in v-2.5.0
|
|
38
|
+
if (request.method === 'connect') {
|
|
39
|
+
return acc;
|
|
73
40
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
...securityScheme,
|
|
83
|
-
uid: securityScheme.uid
|
|
84
|
-
};
|
|
85
|
-
return acc;
|
|
86
|
-
},
|
|
87
|
-
{}
|
|
88
|
-
);
|
|
89
|
-
const servers = Object.entries(data.servers || {}).reduce((acc, [key, server]) => {
|
|
90
|
-
acc[key] = {
|
|
91
|
-
...server,
|
|
92
|
-
uid: server.uid,
|
|
93
|
-
variables: Object.entries(server.variables || {}).reduce((variablesAcc, [variableKey, variable]) => {
|
|
94
|
-
variablesAcc[variableKey] = {
|
|
95
|
-
default: variable.default ?? "",
|
|
96
|
-
description: variable.description ?? "",
|
|
97
|
-
...variable.enum?.length && { enum: variable.enum }
|
|
41
|
+
acc[key] = {
|
|
42
|
+
...request,
|
|
43
|
+
uid: request.uid,
|
|
44
|
+
servers: request.servers,
|
|
45
|
+
selectedServerUid: request.selectedServerUid,
|
|
46
|
+
examples: request.examples,
|
|
47
|
+
selectedSecuritySchemeUids: request.selectedSecuritySchemeUids,
|
|
48
|
+
method: request.method,
|
|
98
49
|
};
|
|
99
|
-
return
|
|
100
|
-
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
children: tag.children
|
|
109
|
-
};
|
|
110
|
-
return acc;
|
|
111
|
-
}, {});
|
|
112
|
-
const workspaces = Object.entries(data.workspaces || {}).reduce(
|
|
113
|
-
(acc, [key, workspace]) => {
|
|
114
|
-
acc[key] = {
|
|
115
|
-
...workspace,
|
|
116
|
-
uid: workspace.uid,
|
|
117
|
-
collections: workspace.collections.map((uid) => uid),
|
|
118
|
-
cookies: workspace.cookies.map((uid) => uid),
|
|
119
|
-
selectedHttpClient: {
|
|
120
|
-
targetKey: "shell",
|
|
121
|
-
clientKey: "curl"
|
|
50
|
+
return acc;
|
|
51
|
+
}, {});
|
|
52
|
+
const requestExamples = Object.entries(data.requestExamples || {}).reduce((acc, [key, example]) => {
|
|
53
|
+
const headers = example.parameters.headers;
|
|
54
|
+
// Check if "Accept" header exists
|
|
55
|
+
const hasAcceptHeader = headers.some((header) => header.key.toLowerCase() === 'accept');
|
|
56
|
+
if (!hasAcceptHeader) {
|
|
57
|
+
// Add "Accept" header as the first entry
|
|
58
|
+
headers.unshift({ key: 'Accept', value: '*/*', enabled: true });
|
|
122
59
|
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
securitySchemes,
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
60
|
+
// Update the example with potentially modified headers
|
|
61
|
+
acc[key] = {
|
|
62
|
+
...example,
|
|
63
|
+
uid: example.uid,
|
|
64
|
+
requestUid: example.requestUid,
|
|
65
|
+
parameters: {
|
|
66
|
+
...example.parameters,
|
|
67
|
+
headers,
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
return acc;
|
|
71
|
+
}, {});
|
|
72
|
+
const securitySchemes = Object.entries(data.securitySchemes || {}).reduce((acc, [key, securityScheme]) => {
|
|
73
|
+
acc[key] = {
|
|
74
|
+
...securityScheme,
|
|
75
|
+
uid: securityScheme.uid,
|
|
76
|
+
};
|
|
77
|
+
return acc;
|
|
78
|
+
}, {});
|
|
79
|
+
const servers = Object.entries(data.servers || {}).reduce((acc, [key, server]) => {
|
|
80
|
+
acc[key] = {
|
|
81
|
+
...server,
|
|
82
|
+
uid: server.uid,
|
|
83
|
+
variables: Object.entries(server.variables || {}).reduce((variablesAcc, [variableKey, variable]) => {
|
|
84
|
+
variablesAcc[variableKey] = {
|
|
85
|
+
default: variable.default ?? '',
|
|
86
|
+
description: variable.description ?? '',
|
|
87
|
+
...(variable.enum?.length && { enum: variable.enum }),
|
|
88
|
+
};
|
|
89
|
+
return variablesAcc;
|
|
90
|
+
}, {}),
|
|
91
|
+
};
|
|
92
|
+
return acc;
|
|
93
|
+
}, {});
|
|
94
|
+
const tags = Object.entries(data.tags || {}).reduce((acc, [key, tag]) => {
|
|
95
|
+
acc[key] = {
|
|
96
|
+
...tag,
|
|
97
|
+
uid: tag.uid,
|
|
98
|
+
children: tag.children,
|
|
99
|
+
};
|
|
100
|
+
return acc;
|
|
101
|
+
}, {});
|
|
102
|
+
const workspaces = Object.entries(data.workspaces || {}).reduce((acc, [key, workspace]) => {
|
|
103
|
+
acc[key] = {
|
|
104
|
+
...workspace,
|
|
105
|
+
uid: workspace.uid,
|
|
106
|
+
collections: workspace.collections.map((uid) => uid),
|
|
107
|
+
cookies: workspace.cookies.map((uid) => uid),
|
|
108
|
+
selectedHttpClient: {
|
|
109
|
+
targetKey: 'shell',
|
|
110
|
+
clientKey: 'curl',
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
return acc;
|
|
114
|
+
}, {});
|
|
115
|
+
return {
|
|
116
|
+
...data,
|
|
117
|
+
collections,
|
|
118
|
+
cookies,
|
|
119
|
+
environments,
|
|
120
|
+
requests,
|
|
121
|
+
requestExamples,
|
|
122
|
+
securitySchemes,
|
|
123
|
+
servers,
|
|
124
|
+
tags,
|
|
125
|
+
workspaces,
|
|
126
|
+
};
|
|
143
127
|
};
|
|
144
|
-
//# sourceMappingURL=migration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|