unleash-server 4.0.10 → 4.0.15
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/lib/db/project-store.js.map +1 -1
- package/dist/lib/db/user-store.d.ts +1 -0
- package/dist/lib/db/user-store.js +6 -0
- package/dist/lib/db/user-store.js.map +1 -1
- package/dist/lib/routes/admin-api/index.js +2 -0
- package/dist/lib/routes/admin-api/index.js.map +1 -1
- package/dist/lib/routes/admin-api/project/health-report.d.ts +11 -0
- package/dist/lib/routes/admin-api/project/health-report.js +30 -0
- package/dist/lib/routes/admin-api/project/health-report.js.map +1 -0
- package/dist/lib/routes/admin-api/project/index.d.ts +6 -0
- package/dist/lib/routes/admin-api/project/index.js +15 -0
- package/dist/lib/routes/admin-api/project/index.js.map +1 -0
- package/dist/lib/services/index.js +3 -0
- package/dist/lib/services/index.js.map +1 -1
- package/dist/lib/services/project-health-service.d.ts +18 -0
- package/dist/lib/services/project-health-service.js +75 -0
- package/dist/lib/services/project-health-service.js.map +1 -0
- package/dist/lib/services/user-service.js +2 -2
- package/dist/lib/services/user-service.js.map +1 -1
- package/dist/lib/types/model.d.ts +110 -0
- package/dist/lib/types/model.js +3 -0
- package/dist/lib/types/model.js.map +1 -0
- package/dist/lib/types/services.d.ts +2 -0
- package/dist/lib/util/constants.d.ts +2 -0
- package/dist/lib/util/constants.js +6 -0
- package/dist/lib/util/constants.js.map +1 -0
- package/dist/migrations/20210428103922-patch-role-table.d.ts +2 -0
- package/dist/migrations/20210428103922-patch-role-table.js +19 -0
- package/dist/migrations/20210428103922-patch-role-table.js.map +1 -0
- package/dist/migrations/20210428103924-patch-admin-role-name.d.ts +2 -0
- package/dist/migrations/20210428103924-patch-admin-role-name.js +11 -0
- package/dist/migrations/20210428103924-patch-admin-role-name.js.map +1 -0
- package/dist/migrations/20210428103924-patch-admin_role.d.ts +2 -0
- package/dist/migrations/20210428103924-patch-admin_role.js +23 -0
- package/dist/migrations/20210428103924-patch-admin_role.js.map +1 -0
- package/dist/migrations/20210428103924-patch-role_permissions.d.ts +2 -0
- package/dist/migrations/20210428103924-patch-role_permissions.js +50 -0
- package/dist/migrations/20210428103924-patch-role_permissions.js.map +1 -0
- package/dist/test/e2e/services/user-service.e2e.test.js +12 -0
- package/dist/test/e2e/services/user-service.e2e.test.js.map +1 -1
- package/dist/test/fixtures/fake-user-store.d.ts +1 -0
- package/dist/test/fixtures/fake-user-store.js +3 -0
- package/dist/test/fixtures/fake-user-store.js.map +1 -1
- package/docs/api/oas/favicon-16x16.png +0 -0
- package/docs/api/oas/favicon-32x32.png +0 -0
- package/docs/api/oas/index.html +43 -0
- package/docs/api/oas/oauth2-redirect.html +74 -0
- package/docs/api/oas/openapi.yaml +1685 -0
- package/docs/api/oas/swagger-ui-bundle.js +3 -0
- package/docs/api/oas/swagger-ui-bundle.js.map +1 -0
- package/docs/api/oas/swagger-ui-es-bundle-core.js +3 -0
- package/docs/api/oas/swagger-ui-es-bundle-core.js.map +1 -0
- package/docs/api/oas/swagger-ui-es-bundle.js +3 -0
- package/docs/api/oas/swagger-ui-es-bundle.js.map +1 -0
- package/docs/api/oas/swagger-ui-standalone-preset.js +3 -0
- package/docs/api/oas/swagger-ui-standalone-preset.js.map +1 -0
- package/docs/api/oas/swagger-ui.css +8906 -0
- package/docs/api/oas/swagger-ui.css.map +1 -0
- package/docs/api/oas/swagger-ui.js +3 -0
- package/docs/api/oas/swagger-ui.js.map +1 -0
- package/docs/api/oas/swagger.json +1479 -0
- package/package.json +7 -4
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
exports.up = function (db, cb) {
|
|
3
|
+
db.runSql(`
|
|
4
|
+
DO $$
|
|
5
|
+
declare
|
|
6
|
+
begin
|
|
7
|
+
WITH editor AS (
|
|
8
|
+
SELECT * FROM roles WHERE name in ('Editor', 'Regular') LIMIT 1
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
INSERT INTO role_permission(role_id, project, permission)
|
|
12
|
+
VALUES
|
|
13
|
+
((SELECT id from editor), '', 'CREATE_STRATEGY'),
|
|
14
|
+
((SELECT id from editor), '', 'UPDATE_STRATEGY'),
|
|
15
|
+
((SELECT id from editor), '', 'DELETE_STRATEGY'),
|
|
16
|
+
|
|
17
|
+
((SELECT id from editor), '', 'UPDATE_APPLICATION'),
|
|
18
|
+
|
|
19
|
+
((SELECT id from editor), '', 'CREATE_CONTEXT_FIELD'),
|
|
20
|
+
((SELECT id from editor), '', 'UPDATE_CONTEXT_FIELD'),
|
|
21
|
+
((SELECT id from editor), '', 'DELETE_CONTEXT_FIELD'),
|
|
22
|
+
|
|
23
|
+
((SELECT id from editor), '', 'CREATE_PROJECT'),
|
|
24
|
+
|
|
25
|
+
((SELECT id from editor), '', 'CREATE_ADDON'),
|
|
26
|
+
((SELECT id from editor), '', 'UPDATE_ADDON'),
|
|
27
|
+
((SELECT id from editor), '', 'DELETE_ADDON'),
|
|
28
|
+
|
|
29
|
+
((SELECT id from editor), 'default', 'UPDATE_PROJECT'),
|
|
30
|
+
((SELECT id from editor), 'default', 'DELETE_PROJECT'),
|
|
31
|
+
((SELECT id from editor), 'default', 'CREATE_FEATURE'),
|
|
32
|
+
((SELECT id from editor), 'default', 'UPDATE_FEATURE'),
|
|
33
|
+
((SELECT id from editor), 'default', 'DELETE_FEATURE');
|
|
34
|
+
|
|
35
|
+
-- Clean up duplicates
|
|
36
|
+
DELETE FROM role_permission p1
|
|
37
|
+
USING role_permission p2
|
|
38
|
+
WHERE p1.created_at < p2.created_at -- select the "older" ones
|
|
39
|
+
AND p1.project = p2.project -- list columns that define duplicates
|
|
40
|
+
AND p1.permission = p2.permission;
|
|
41
|
+
EXCEPTION WHEN OTHERS THEN
|
|
42
|
+
raise notice 'Ignored';
|
|
43
|
+
end;
|
|
44
|
+
$$;`, cb);
|
|
45
|
+
};
|
|
46
|
+
exports.down = function (db, cb) {
|
|
47
|
+
// We can't just remove roles for users as we don't know if there has been any manual additions.
|
|
48
|
+
cb();
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=20210428103924-patch-role_permissions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"20210428103924-patch-role_permissions.js","sourceRoot":"","sources":["../../src/migrations/20210428103924-patch-role_permissions.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE;IACzB,EAAE,CAAC,MAAM,CACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAyCI,EACJ,EAAE,CACL,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,CAAC,IAAI,GAAG,UAAU,EAAE,EAAE,EAAE;IAC3B,gGAAgG;IAChG,EAAE,EAAE,CAAC;AACT,CAAC,CAAC"}
|
|
@@ -47,6 +47,18 @@ test('should create initial admin user', async () => {
|
|
|
47
47
|
await expect(async () => userService.loginUser('admin', 'wrong-password')).rejects.toThrow(Error);
|
|
48
48
|
await expect(async () => userService.loginUser('admin', 'unleash4all')).toBeTruthy();
|
|
49
49
|
});
|
|
50
|
+
test('should not init default user if we already have users', async () => {
|
|
51
|
+
await userService.createUser({
|
|
52
|
+
username: 'test',
|
|
53
|
+
password: 'A very strange P4ssw0rd_',
|
|
54
|
+
rootRole: adminRole.id,
|
|
55
|
+
});
|
|
56
|
+
await userService.initAdminUser();
|
|
57
|
+
const users = await userService.getAll();
|
|
58
|
+
expect(users).toHaveLength(1);
|
|
59
|
+
expect(users[0].username).toBe('test');
|
|
60
|
+
await expect(async () => userService.loginUser('admin', 'unleash4all')).rejects.toThrow(Error);
|
|
61
|
+
});
|
|
50
62
|
test('should not be allowed to create existing user', async () => {
|
|
51
63
|
await userStore.insert({ username: 'test', name: 'Hans Mola' });
|
|
52
64
|
await expect(async () => userService.createUser({ username: 'test', rootRole: adminRole.id })).rejects.toThrow(Error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-service.e2e.test.js","sourceRoot":"","sources":["../../../../src/test/e2e/services/user-service.e2e.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"user-service.e2e.test.js","sourceRoot":"","sources":["../../../../src/test/e2e/services/user-service.e2e.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ declare class UserStoreMock extends UserStore {
|
|
|
5
5
|
idSeq: number;
|
|
6
6
|
constructor();
|
|
7
7
|
hasUser({ id, username, email, }: IUserLookup): Promise<number | undefined>;
|
|
8
|
+
count(): Promise<number>;
|
|
8
9
|
insert(user: User): Promise<User>;
|
|
9
10
|
update(id: number, user: User): Promise<User>;
|
|
10
11
|
get({ id, username, email }: IUserLookup): Promise<User>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fake-user-store.js","sourceRoot":"","sources":["../../../src/test/fixtures/fake-user-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fake-user-store.js","sourceRoot":"","sources":["../../../src/test/fixtures/fake-user-store.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<title>ReDoc</title>
|
|
5
|
+
<!-- needed for adaptive design -->
|
|
6
|
+
<meta charset="utf-8"/>
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
8
|
+
<link href="https://fonts.googleapis.com/css?family=Montserrat:300,400,700|Roboto:300,400,700" rel="stylesheet">
|
|
9
|
+
|
|
10
|
+
<!--
|
|
11
|
+
ReDoc doesn't change outer page styles
|
|
12
|
+
-->
|
|
13
|
+
<style>
|
|
14
|
+
body {
|
|
15
|
+
margin: 0;
|
|
16
|
+
padding: 0;
|
|
17
|
+
}
|
|
18
|
+
</style>
|
|
19
|
+
</head>
|
|
20
|
+
<body>
|
|
21
|
+
|
|
22
|
+
<!-- ### DEFAULT REDOC - NO 'TRY' FEATURE -->
|
|
23
|
+
<!-- <redoc spec-url='openapi.yaml'></redoc> -->
|
|
24
|
+
<!-- <script src="https://cdn.jsdelivr.net/npm/redoc@next/bundles/redoc.standalone.js"> </script> -->
|
|
25
|
+
<!-- ### REDOC WITH SWAGGER UI'S 'TRY' FEATURE WITHIN REDOC -->
|
|
26
|
+
<!-- From https://github.com/wll8/redoc-try -->
|
|
27
|
+
<div id="redoc-container"></div>
|
|
28
|
+
<script src="//cdn.jsdelivr.net/npm/redoc@2.0.0-rc.28/bundles/redoc.standalone.min.js"> </script>
|
|
29
|
+
<script src="//cdn.jsdelivr.net/gh/wll8/redoc-try/dist/try.js"></script>
|
|
30
|
+
<script>
|
|
31
|
+
var unleashRedoc = {
|
|
32
|
+
openApi: `openapi.yaml`,
|
|
33
|
+
onlySwagger: false, // Set to true to switch to Swagger UI output
|
|
34
|
+
tryText: `Try it out`, // Try button text
|
|
35
|
+
trySwaggerInApi: false, // Do not display Swagger debugging window under API
|
|
36
|
+
redocOptions: {hideDownloadButton: true, noAutoAuth: true, sortPropsAlphabetically: true, theme: {spacing: {sectionVertical: '5px',}},},
|
|
37
|
+
swaggerOptions: {dom_id: `#swagger-ui`},
|
|
38
|
+
}
|
|
39
|
+
initTry(unleashRedoc);
|
|
40
|
+
</script>
|
|
41
|
+
|
|
42
|
+
</body>
|
|
43
|
+
</html>
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en-US">
|
|
3
|
+
<head>
|
|
4
|
+
<title>Swagger UI: OAuth2 Redirect</title>
|
|
5
|
+
</head>
|
|
6
|
+
<body>
|
|
7
|
+
</body>
|
|
8
|
+
</html>
|
|
9
|
+
<script>
|
|
10
|
+
'use strict';
|
|
11
|
+
function run () {
|
|
12
|
+
var oauth2 = window.opener.swaggerUIRedirectOauth2;
|
|
13
|
+
var sentState = oauth2.state;
|
|
14
|
+
var redirectUrl = oauth2.redirectUrl;
|
|
15
|
+
var isValid, qp, arr;
|
|
16
|
+
|
|
17
|
+
if (/code|token|error/.test(window.location.hash)) {
|
|
18
|
+
qp = window.location.hash.substring(1);
|
|
19
|
+
} else {
|
|
20
|
+
qp = location.search.substring(1);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
arr = qp.split("&")
|
|
24
|
+
arr.forEach(function (v,i,_arr) { _arr[i] = '"' + v.replace('=', '":"') + '"';})
|
|
25
|
+
qp = qp ? JSON.parse('{' + arr.join() + '}',
|
|
26
|
+
function (key, value) {
|
|
27
|
+
return key === "" ? value : decodeURIComponent(value)
|
|
28
|
+
}
|
|
29
|
+
) : {}
|
|
30
|
+
|
|
31
|
+
isValid = qp.state === sentState
|
|
32
|
+
|
|
33
|
+
if ((
|
|
34
|
+
oauth2.auth.schema.get("flow") === "accessCode"||
|
|
35
|
+
oauth2.auth.schema.get("flow") === "authorizationCode"
|
|
36
|
+
) && !oauth2.auth.code) {
|
|
37
|
+
if (!isValid) {
|
|
38
|
+
oauth2.errCb({
|
|
39
|
+
authId: oauth2.auth.name,
|
|
40
|
+
source: "auth",
|
|
41
|
+
level: "warning",
|
|
42
|
+
message: "Authorization may be unsafe, passed state was changed in server Passed state wasn't returned from auth server"
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (qp.code) {
|
|
47
|
+
delete oauth2.state;
|
|
48
|
+
oauth2.auth.code = qp.code;
|
|
49
|
+
oauth2.callback({auth: oauth2.auth, redirectUrl: redirectUrl});
|
|
50
|
+
} else {
|
|
51
|
+
let oauthErrorMsg
|
|
52
|
+
if (qp.error) {
|
|
53
|
+
oauthErrorMsg = "["+qp.error+"]: " +
|
|
54
|
+
(qp.error_description ? qp.error_description+ ". " : "no accessCode received from the server. ") +
|
|
55
|
+
(qp.error_uri ? "More info: "+qp.error_uri : "");
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
oauth2.errCb({
|
|
59
|
+
authId: oauth2.auth.name,
|
|
60
|
+
source: "auth",
|
|
61
|
+
level: "error",
|
|
62
|
+
message: oauthErrorMsg || "[Authorization failed]: no accessCode received from the server"
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
} else {
|
|
66
|
+
oauth2.callback({auth: oauth2.auth, token: qp, isValid: isValid, redirectUrl: redirectUrl});
|
|
67
|
+
}
|
|
68
|
+
window.close();
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
window.addEventListener('DOMContentLoaded', function () {
|
|
72
|
+
run();
|
|
73
|
+
});
|
|
74
|
+
</script>
|