@privateaim/kit 0.6.0 → 0.8.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/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.8.0](https://github.com/PrivateAIM/hub/compare/v0.7.0...v0.8.0) (2024-07-02)
4
+
5
+
6
+ ### Features
7
+
8
+ * add missing analysis-permission validation steps ([30cba38](https://github.com/PrivateAIM/hub/commit/30cba3846cd7579b9482b7cd8f622d4cb39f5529))
9
+ * simplified and adjusted permission usage across codespace ([1839f5e](https://github.com/PrivateAIM/hub/commit/1839f5eb768f120e268e57e0a496fef5eb0eca41))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * **deps:** bump authup to v1.0.0.beta-19 ([3410786](https://github.com/PrivateAIM/hub/commit/34107860d7f810cea7b2024b0f303cd70d32a5fe))
15
+
16
+ ## [0.7.0](https://github.com/PrivateAIM/hub/compare/v0.6.0...v0.7.0) (2024-06-26)
17
+
18
+
19
+ ### Features
20
+
21
+ * extract utils and common consts, fns, ... to kit package ([258bbb2](https://github.com/PrivateAIM/hub/commit/258bbb21bfbf671a7cfad3e91740a1737eaf3f71))
22
+ * migrated to authup version v1.0.0-beta.18 ([06928f6](https://github.com/PrivateAIM/hub/commit/06928f681120b423f962a7869f8f6b12708d3047))
23
+
3
24
  ## [0.6.0](https://github.com/PrivateAIM/hub/compare/kit-v0.5.0...kit-v0.6.0) (2024-06-25)
4
25
 
5
26
 
@@ -1,88 +1,25 @@
1
- import { PermissionName as AuthPermissionName } from '@authup/core-kit';
2
- export declare enum PermissionKey {
3
- BUCKET_ADD = "bucket_add",
4
- BUCKET_EDIT = "bucket_edit",
5
- BUCKET_DROP = "bucket_drop",
6
- PROJECT_ADD = "project_add",
7
- PROJECT_DROP = "project_drop",
8
- PROJECT_EDIT = "project_edit",
1
+ export declare enum PermissionName {
2
+ BUCKET_CREATE = "bucket_create",
3
+ BUCKET_UPDATE = "bucket_update",
4
+ BUCKET_DELETE = "bucket_delete",
5
+ PROJECT_CREATE = "project_create",
6
+ PROJECT_DELETE = "project_delete",
7
+ PROJECT_UPDATE = "project_update",
9
8
  PROJECT_APPROVE = "project_approve",
10
9
  REGISTRY_MANAGE = "registry_manage",
11
10
  REGISTRY_PROJECT_MANAGE = "registry_project_manage",
12
- NODE_ADD = "node_add",
13
- NODE_DROP = "node_drop",
14
- NODE_EDIT = "node_edit",
11
+ NODE_CREATE = "node_create",
12
+ NODE_DELETE = "node_delete",
13
+ NODE_UPDATE = "node_update",
15
14
  ANALYSIS_APPROVE = "analysis_approve",
16
- ANALYSIS_EDIT = "analysis_edit",
17
- ANALYSIS_ADD = "analysis_add",
15
+ ANALYSIS_UPDATE = "analysis_update",
16
+ ANALYSIS_CREATE = "analysis_create",
18
17
  ANALYSIS_EXECUTION_START = "analysis_execution_start",
19
18
  ANALYSIS_EXECUTION_STOP = "analysis_execution_stop",
20
- ANALYSIS_DROP = "analysis_drop",
19
+ ANALYSIS_DELETE = "analysis_delete",
21
20
  ANALYSIS_RESULT_READ = "analysis_result_read",// todo: this is maybe not required anymore
22
21
  MASTER_IMAGE_MANAGE = "master_image_manage",
23
22
  MASTER_IMAGE_GROUP_MANAGE = "master_image_group_manage",
24
23
  SERVICE_MANAGE = "service_manage"
25
24
  }
26
- export declare const PermissionID: {
27
- CLIENT_ADD: AuthPermissionName.CLIENT_ADD;
28
- CLIENT_DROP: AuthPermissionName.CLIENT_DROP;
29
- CLIENT_EDIT: AuthPermissionName.CLIENT_EDIT;
30
- PROVIDER_ADD: AuthPermissionName.PROVIDER_ADD;
31
- PROVIDER_DROP: AuthPermissionName.PROVIDER_DROP;
32
- PROVIDER_EDIT: AuthPermissionName.PROVIDER_EDIT;
33
- PERMISSION_ADD: AuthPermissionName.PERMISSION_ADD;
34
- PERMISSION_DROP: AuthPermissionName.PERMISSION_DROP;
35
- PERMISSION_EDIT: AuthPermissionName.PERMISSION_EDIT;
36
- REALM_ADD: AuthPermissionName.REALM_ADD;
37
- REALM_DROP: AuthPermissionName.REALM_DROP;
38
- REALM_EDIT: AuthPermissionName.REALM_EDIT;
39
- ROBOT_ADD: AuthPermissionName.ROBOT_ADD;
40
- ROBOT_DROP: AuthPermissionName.ROBOT_DROP;
41
- ROBOT_EDIT: AuthPermissionName.ROBOT_EDIT;
42
- ROBOT_PERMISSION_ADD: AuthPermissionName.ROBOT_PERMISSION_ADD;
43
- ROBOT_PERMISSION_DROP: AuthPermissionName.ROBOT_PERMISSION_DROP;
44
- ROBOT_ROLE_ADD: AuthPermissionName.ROBOT_ROLE_ADD;
45
- ROBOT_ROLE_DROP: AuthPermissionName.ROBOT_ROLE_DROP;
46
- ROBOT_ROLE_EDIT: AuthPermissionName.ROBOT_ROLE_EDIT;
47
- ROLE_ADD: AuthPermissionName.ROLE_ADD;
48
- ROLE_DROP: AuthPermissionName.ROLE_DROP;
49
- ROLE_EDIT: AuthPermissionName.ROLE_EDIT;
50
- ROLE_PERMISSION_ADD: AuthPermissionName.ROLE_PERMISSION_ADD;
51
- ROLE_PERMISSION_DROP: AuthPermissionName.ROLE_PERMISSION_DROP;
52
- SCOPE_ADD: AuthPermissionName.SCOPE_ADD;
53
- SCOPE_DROP: AuthPermissionName.SCOPE_DROP;
54
- SCOPE_EDIT: AuthPermissionName.SCOPE_EDIT;
55
- TOKEN_VERIFY: AuthPermissionName.TOKEN_VERIFY;
56
- USER_ADD: AuthPermissionName.USER_ADD;
57
- USER_DROP: AuthPermissionName.USER_DROP;
58
- USER_EDIT: AuthPermissionName.USER_EDIT;
59
- USER_PERMISSION_ADD: AuthPermissionName.USER_PERMISSION_ADD;
60
- USER_PERMISSION_DROP: AuthPermissionName.USER_PERMISSION_DROP;
61
- USER_ROLE_ADD: AuthPermissionName.USER_ROLE_ADD;
62
- USER_ROLE_DROP: AuthPermissionName.USER_ROLE_DROP;
63
- USER_ROLE_EDIT: AuthPermissionName.USER_ROLE_EDIT;
64
- BUCKET_ADD: PermissionKey.BUCKET_ADD;
65
- BUCKET_EDIT: PermissionKey.BUCKET_EDIT;
66
- BUCKET_DROP: PermissionKey.BUCKET_DROP;
67
- PROJECT_ADD: PermissionKey.PROJECT_ADD;
68
- PROJECT_DROP: PermissionKey.PROJECT_DROP;
69
- PROJECT_EDIT: PermissionKey.PROJECT_EDIT;
70
- PROJECT_APPROVE: PermissionKey.PROJECT_APPROVE;
71
- REGISTRY_MANAGE: PermissionKey.REGISTRY_MANAGE;
72
- REGISTRY_PROJECT_MANAGE: PermissionKey.REGISTRY_PROJECT_MANAGE;
73
- NODE_ADD: PermissionKey.NODE_ADD;
74
- NODE_DROP: PermissionKey.NODE_DROP;
75
- NODE_EDIT: PermissionKey.NODE_EDIT;
76
- ANALYSIS_APPROVE: PermissionKey.ANALYSIS_APPROVE;
77
- ANALYSIS_EDIT: PermissionKey.ANALYSIS_EDIT;
78
- ANALYSIS_ADD: PermissionKey.ANALYSIS_ADD;
79
- ANALYSIS_EXECUTION_START: PermissionKey.ANALYSIS_EXECUTION_START;
80
- ANALYSIS_EXECUTION_STOP: PermissionKey.ANALYSIS_EXECUTION_STOP;
81
- ANALYSIS_DROP: PermissionKey.ANALYSIS_DROP;
82
- ANALYSIS_RESULT_READ: PermissionKey.ANALYSIS_RESULT_READ;
83
- MASTER_IMAGE_MANAGE: PermissionKey.MASTER_IMAGE_MANAGE;
84
- MASTER_IMAGE_GROUP_MANAGE: PermissionKey.MASTER_IMAGE_GROUP_MANAGE;
85
- SERVICE_MANAGE: PermissionKey.SERVICE_MANAGE;
86
- };
87
- export type PermissionIDType = typeof PermissionID[keyof typeof PermissionID];
88
25
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/domains/permission/constants.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAExE,oBAAY,aAAa;IACrB,UAAU,eAAe;IACzB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAE3B,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,eAAe,oBAAoB;IAEnC,eAAe,oBAAoB;IACnC,uBAAuB,4BAA4B;IAEnD,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,SAAS,cAAc;IAEvB,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,wBAAwB,6BAA6B;IACrD,uBAAuB,4BAA4B;IACnD,aAAa,kBAAkB;IAC/B,oBAAoB,yBAAyB,CAAE,2CAA2C;IAE1F,mBAAmB,wBAAwB;IAC3C,yBAAyB,8BAA8B;IAEvD,cAAc,mBAAmB;CACpC;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGxB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,OAAO,YAAY,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/domains/permission/constants.ts"],"names":[],"mappings":"AAOA,oBAAY,cAAc;IACtB,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAE/B,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;IAEnC,eAAe,oBAAoB;IACnC,uBAAuB,4BAA4B;IAEnD,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAE3B,gBAAgB,qBAAqB;IACrC,eAAe,oBAAoB;IACnC,eAAe,oBAAoB;IACnC,wBAAwB,6BAA6B;IACrD,uBAAuB,4BAA4B;IACnD,eAAe,oBAAoB;IACnC,oBAAoB,yBAAyB,CAAE,2CAA2C;IAE1F,mBAAmB,wBAAwB;IAC3C,yBAAyB,8BAA8B;IAEvD,cAAc,mBAAmB;CACpC"}
package/dist/index.cjs CHANGED
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
 
3
- var coreKit = require('@authup/core-kit');
4
3
  var nanoid = require('nanoid');
5
4
 
6
5
  /*
@@ -8,60 +7,31 @@ var nanoid = require('nanoid');
8
7
  * Author Peter Placzek (tada5hi)
9
8
  * For the full copyright and license information,
10
9
  * view the LICENSE file that was distributed with this source code.
11
- */ function _define_property(obj, key, value) {
12
- if (key in obj) {
13
- Object.defineProperty(obj, key, {
14
- value: value,
15
- enumerable: true,
16
- configurable: true,
17
- writable: true
18
- });
19
- } else {
20
- obj[key] = value;
21
- }
22
- return obj;
23
- }
24
- function _object_spread(target) {
25
- for(var i = 1; i < arguments.length; i++){
26
- var source = arguments[i] != null ? arguments[i] : {};
27
- var ownKeys = Object.keys(source);
28
- if (typeof Object.getOwnPropertySymbols === "function") {
29
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
30
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
31
- }));
32
- }
33
- ownKeys.forEach(function(key) {
34
- _define_property(target, key, source[key]);
35
- });
36
- }
37
- return target;
38
- }
39
- exports.PermissionKey = void 0;
40
- (function(PermissionKey) {
41
- PermissionKey["BUCKET_ADD"] = "bucket_add";
42
- PermissionKey["BUCKET_EDIT"] = "bucket_edit";
43
- PermissionKey["BUCKET_DROP"] = "bucket_drop";
44
- PermissionKey["PROJECT_ADD"] = "project_add";
45
- PermissionKey["PROJECT_DROP"] = "project_drop";
46
- PermissionKey["PROJECT_EDIT"] = "project_edit";
47
- PermissionKey["PROJECT_APPROVE"] = "project_approve";
48
- PermissionKey["REGISTRY_MANAGE"] = "registry_manage";
49
- PermissionKey["REGISTRY_PROJECT_MANAGE"] = "registry_project_manage";
50
- PermissionKey["NODE_ADD"] = "node_add";
51
- PermissionKey["NODE_DROP"] = "node_drop";
52
- PermissionKey["NODE_EDIT"] = "node_edit";
53
- PermissionKey["ANALYSIS_APPROVE"] = "analysis_approve";
54
- PermissionKey["ANALYSIS_EDIT"] = "analysis_edit";
55
- PermissionKey["ANALYSIS_ADD"] = "analysis_add";
56
- PermissionKey["ANALYSIS_EXECUTION_START"] = "analysis_execution_start";
57
- PermissionKey["ANALYSIS_EXECUTION_STOP"] = "analysis_execution_stop";
58
- PermissionKey["ANALYSIS_DROP"] = "analysis_drop";
59
- PermissionKey["ANALYSIS_RESULT_READ"] = "analysis_result_read";
60
- PermissionKey["MASTER_IMAGE_MANAGE"] = "master_image_manage";
61
- PermissionKey["MASTER_IMAGE_GROUP_MANAGE"] = "master_image_group_manage";
62
- PermissionKey["SERVICE_MANAGE"] = "service_manage";
63
- })(exports.PermissionKey || (exports.PermissionKey = {}));
64
- const PermissionID = _object_spread({}, exports.PermissionKey, coreKit.PermissionName);
10
+ */ exports.PermissionName = void 0;
11
+ (function(PermissionName) {
12
+ PermissionName["BUCKET_CREATE"] = "bucket_create";
13
+ PermissionName["BUCKET_UPDATE"] = "bucket_update";
14
+ PermissionName["BUCKET_DELETE"] = "bucket_delete";
15
+ PermissionName["PROJECT_CREATE"] = "project_create";
16
+ PermissionName["PROJECT_DELETE"] = "project_delete";
17
+ PermissionName["PROJECT_UPDATE"] = "project_update";
18
+ PermissionName["PROJECT_APPROVE"] = "project_approve";
19
+ PermissionName["REGISTRY_MANAGE"] = "registry_manage";
20
+ PermissionName["REGISTRY_PROJECT_MANAGE"] = "registry_project_manage";
21
+ PermissionName["NODE_CREATE"] = "node_create";
22
+ PermissionName["NODE_DELETE"] = "node_delete";
23
+ PermissionName["NODE_UPDATE"] = "node_update";
24
+ PermissionName["ANALYSIS_APPROVE"] = "analysis_approve";
25
+ PermissionName["ANALYSIS_UPDATE"] = "analysis_update";
26
+ PermissionName["ANALYSIS_CREATE"] = "analysis_create";
27
+ PermissionName["ANALYSIS_EXECUTION_START"] = "analysis_execution_start";
28
+ PermissionName["ANALYSIS_EXECUTION_STOP"] = "analysis_execution_stop";
29
+ PermissionName["ANALYSIS_DELETE"] = "analysis_delete";
30
+ PermissionName["ANALYSIS_RESULT_READ"] = "analysis_result_read";
31
+ PermissionName["MASTER_IMAGE_MANAGE"] = "master_image_manage";
32
+ PermissionName["MASTER_IMAGE_GROUP_MANAGE"] = "master_image_group_manage";
33
+ PermissionName["SERVICE_MANAGE"] = "service_manage";
34
+ })(exports.PermissionName || (exports.PermissionName = {}));
65
35
 
66
36
  /*
67
37
  * Copyright (c) 2024.
@@ -223,7 +193,6 @@ const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\d).{8,}$/;
223
193
  EnvironmentName["PRODUCTION"] = "production";
224
194
  })(exports.EnvironmentName || (exports.EnvironmentName = {}));
225
195
 
226
- exports.PermissionID = PermissionID;
227
196
  exports.alphaNumHyphenUnderscoreRegex = alphaNumHyphenUnderscoreRegex;
228
197
  exports.createNanoID = createNanoID;
229
198
  exports.deleteUndefinedObjectProperties = deleteUndefinedObjectProperties;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/domains/permission/constants.ts","../src/utils/boolean.ts","../src/utils/has-own-property.ts","../src/utils/error.ts","../src/utils/hex-checker.ts","../src/utils/hostname.ts","../src/utils/nanoid.ts","../src/utils/object-properties.ts","../src/utils/proxy-connection-string.ts","../src/utils/regex-patterns.ts","../src/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { PermissionName as AuthPermissionName } from '@authup/core-kit';\n\nexport enum PermissionKey {\n BUCKET_ADD = 'bucket_add',\n BUCKET_EDIT = 'bucket_edit',\n BUCKET_DROP = 'bucket_drop',\n\n PROJECT_ADD = 'project_add',\n PROJECT_DROP = 'project_drop',\n PROJECT_EDIT = 'project_edit',\n PROJECT_APPROVE = 'project_approve',\n\n REGISTRY_MANAGE = 'registry_manage',\n REGISTRY_PROJECT_MANAGE = 'registry_project_manage',\n\n NODE_ADD = 'node_add',\n NODE_DROP = 'node_drop',\n NODE_EDIT = 'node_edit',\n\n ANALYSIS_APPROVE = 'analysis_approve',\n ANALYSIS_EDIT = 'analysis_edit',\n ANALYSIS_ADD = 'analysis_add',\n ANALYSIS_EXECUTION_START = 'analysis_execution_start',\n ANALYSIS_EXECUTION_STOP = 'analysis_execution_stop',\n ANALYSIS_DROP = 'analysis_drop',\n ANALYSIS_RESULT_READ = 'analysis_result_read', // todo: this is maybe not required anymore\n\n MASTER_IMAGE_MANAGE = 'master_image_manage',\n MASTER_IMAGE_GROUP_MANAGE = 'master_image_group_manage',\n\n SERVICE_MANAGE = 'service_manage',\n}\n\nexport const PermissionID = {\n ...PermissionKey,\n ...AuthPermissionName,\n};\n\nexport type PermissionIDType = typeof PermissionID[keyof typeof PermissionID];\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isBoolTrue<T = any>(input: T | boolean) : input is true {\n return typeof input === 'boolean' && !!input;\n}\n\nexport function isBoolFalse<T = any>(input: T | boolean) : input is false {\n return typeof input === 'boolean' && !input;\n}\n\nexport function isBool<T = any>(input: T | boolean) : input is boolean {\n return typeof input === 'boolean';\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function hasOwnProperty<X extends {}, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, unknown> {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nexport function isObject(item: unknown) : item is Record<string, any> {\n return (\n !!item &&\n typeof item === 'object' &&\n !Array.isArray(item)\n );\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { hasOwnProperty } from './has-own-property';\n\nexport function isError(e: unknown) {\n return typeof e === 'object' && e && hasOwnProperty(e, 'message');\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isHex(value: string) : boolean {\n return /^[A-Fa-f0-9]+$/i.test(value);\n}\n\nexport function hexToUTF8(value: string) {\n try {\n return decodeURIComponent(`%${value.match(/.{1,2}/g).join('%')}`);\n } catch (e) {\n if (e instanceof URIError) {\n return value;\n }\n\n throw e;\n }\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function getHostNameFromString(value: string) : string {\n if (\n value.startsWith('http://') ||\n value.startsWith('https://')\n ) {\n const url = new URL(value);\n value = url.hostname;\n }\n\n return value;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { customAlphabet } from 'nanoid';\n\nexport function createNanoID(alphabet?: string) : string;\nexport function createNanoID(len?: number) : string;\nexport function createNanoID(alphabet?: string, len?: number) : string;\nexport function createNanoID(alphabetOrLen?: string | number, len?: number) : string {\n if (typeof alphabetOrLen === 'string') {\n return customAlphabet(alphabetOrLen, len || 21)();\n }\n\n if (typeof alphabetOrLen === 'number') {\n return customAlphabet('0123456789abcdefghijklmnopqrstuvwxyz', alphabetOrLen)();\n }\n\n return customAlphabet('0123456789abcdefghijklmnopqrstuvwxyz', len || 21)();\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function nullifyEmptyObjectProperties<T extends Record<string, any>>(data: T) : T {\n const keys : (keyof T)[] = Object.keys(data);\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (data[key] === '') {\n data[key] = null as T[keyof T];\n }\n }\n\n return data as T;\n}\n\nexport function deleteUndefinedObjectProperties<T extends Record<string, any>>(data: T) : T {\n const keys : string[] = Object.keys(data);\n\n for (let i = 0; i < keys.length; i++) {\n if (typeof data[keys[i]] === 'undefined') {\n delete data[keys[i]];\n }\n }\n\n return data;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport type ProxyConnectionConfig = {\n protocol: 'http' | 'https',\n host: string,\n port: number,\n auth: {\n username: string,\n password: string,\n }\n};\n\nexport function parseProxyConnectionString(connectionStr: string) : ProxyConnectionConfig | undefined {\n const match = connectionStr\n .match(/(?:(https|http):\\/\\/)(?:(\\w+)(?::(\\w+))?@)?(?:([^:]+))(?::(\\d{1,5}))?$/);\n\n if (!match) {\n return undefined;\n }\n\n return {\n protocol: match[1] as 'http' | 'https',\n host: match[4],\n port: parseInt(match[5], 10),\n auth: {\n username: match[2],\n password: match[3],\n },\n };\n}\n\nexport function detectProxyConnectionConfig() : ProxyConnectionConfig | undefined {\n const envKeys = [\n 'https_proxy',\n 'HTTPS_PROXY',\n 'http_proxy',\n 'HTTP_PROXY',\n ];\n\n let result : string | undefined;\n\n for (let i = 0; i < envKeys.length; i++) {\n const envKey = envKeys[i];\n const envVal = process.env[envKey];\n\n if (\n envVal !== undefined &&\n envVal !== null\n ) {\n result = result || envVal;\n }\n }\n\n if (!result) {\n return undefined;\n }\n\n return parseProxyConnectionString(result);\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport const alphaNumHyphenUnderscoreRegex = /^[a-z0-9-_]*$/;\nexport const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d).{8,}$/;\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum EnvironmentName {\n TEST = 'test',\n DEVELOPMENT = 'development',\n PRODUCTION = 'production',\n}\n"],"names":["PermissionKey","PermissionID","AuthPermissionName","isBoolTrue","input","isBoolFalse","isBool","hasOwnProperty","obj","prop","Object","prototype","call","isObject","item","Array","isArray","isError","e","isHex","value","test","hexToUTF8","decodeURIComponent","match","join","URIError","getHostNameFromString","startsWith","url","URL","hostname","createNanoID","alphabetOrLen","len","customAlphabet","nullifyEmptyObjectProperties","data","keys","i","length","key","deleteUndefinedObjectProperties","parseProxyConnectionString","connectionStr","undefined","protocol","host","port","parseInt","auth","username","password","detectProxyConnectionConfig","envKeys","result","envKey","envVal","process","env","alphaNumHyphenUnderscoreRegex","registryRobotSecretRegex","EnvironmentName"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/domains/permission/constants.ts","../src/utils/boolean.ts","../src/utils/has-own-property.ts","../src/utils/error.ts","../src/utils/hex-checker.ts","../src/utils/hostname.ts","../src/utils/nanoid.ts","../src/utils/object-properties.ts","../src/utils/proxy-connection-string.ts","../src/utils/regex-patterns.ts","../src/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum PermissionName {\n BUCKET_CREATE = 'bucket_create',\n BUCKET_UPDATE = 'bucket_update',\n BUCKET_DELETE = 'bucket_delete',\n\n PROJECT_CREATE = 'project_create',\n PROJECT_DELETE = 'project_delete',\n PROJECT_UPDATE = 'project_update',\n PROJECT_APPROVE = 'project_approve',\n\n REGISTRY_MANAGE = 'registry_manage',\n REGISTRY_PROJECT_MANAGE = 'registry_project_manage',\n\n NODE_CREATE = 'node_create',\n NODE_DELETE = 'node_delete',\n NODE_UPDATE = 'node_update',\n\n ANALYSIS_APPROVE = 'analysis_approve',\n ANALYSIS_UPDATE = 'analysis_update',\n ANALYSIS_CREATE = 'analysis_create',\n ANALYSIS_EXECUTION_START = 'analysis_execution_start',\n ANALYSIS_EXECUTION_STOP = 'analysis_execution_stop',\n ANALYSIS_DELETE = 'analysis_delete',\n ANALYSIS_RESULT_READ = 'analysis_result_read', // todo: this is maybe not required anymore\n\n MASTER_IMAGE_MANAGE = 'master_image_manage',\n MASTER_IMAGE_GROUP_MANAGE = 'master_image_group_manage',\n\n SERVICE_MANAGE = 'service_manage',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isBoolTrue<T = any>(input: T | boolean) : input is true {\n return typeof input === 'boolean' && !!input;\n}\n\nexport function isBoolFalse<T = any>(input: T | boolean) : input is false {\n return typeof input === 'boolean' && !input;\n}\n\nexport function isBool<T = any>(input: T | boolean) : input is boolean {\n return typeof input === 'boolean';\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function hasOwnProperty<X extends {}, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, unknown> {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nexport function isObject(item: unknown) : item is Record<string, any> {\n return (\n !!item &&\n typeof item === 'object' &&\n !Array.isArray(item)\n );\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { hasOwnProperty } from './has-own-property';\n\nexport function isError(e: unknown) {\n return typeof e === 'object' && e && hasOwnProperty(e, 'message');\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isHex(value: string) : boolean {\n return /^[A-Fa-f0-9]+$/i.test(value);\n}\n\nexport function hexToUTF8(value: string) {\n try {\n return decodeURIComponent(`%${value.match(/.{1,2}/g).join('%')}`);\n } catch (e) {\n if (e instanceof URIError) {\n return value;\n }\n\n throw e;\n }\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function getHostNameFromString(value: string) : string {\n if (\n value.startsWith('http://') ||\n value.startsWith('https://')\n ) {\n const url = new URL(value);\n value = url.hostname;\n }\n\n return value;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { customAlphabet } from 'nanoid';\n\nexport function createNanoID(alphabet?: string) : string;\nexport function createNanoID(len?: number) : string;\nexport function createNanoID(alphabet?: string, len?: number) : string;\nexport function createNanoID(alphabetOrLen?: string | number, len?: number) : string {\n if (typeof alphabetOrLen === 'string') {\n return customAlphabet(alphabetOrLen, len || 21)();\n }\n\n if (typeof alphabetOrLen === 'number') {\n return customAlphabet('0123456789abcdefghijklmnopqrstuvwxyz', alphabetOrLen)();\n }\n\n return customAlphabet('0123456789abcdefghijklmnopqrstuvwxyz', len || 21)();\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function nullifyEmptyObjectProperties<T extends Record<string, any>>(data: T) : T {\n const keys : (keyof T)[] = Object.keys(data);\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (data[key] === '') {\n data[key] = null as T[keyof T];\n }\n }\n\n return data as T;\n}\n\nexport function deleteUndefinedObjectProperties<T extends Record<string, any>>(data: T) : T {\n const keys : string[] = Object.keys(data);\n\n for (let i = 0; i < keys.length; i++) {\n if (typeof data[keys[i]] === 'undefined') {\n delete data[keys[i]];\n }\n }\n\n return data;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport type ProxyConnectionConfig = {\n protocol: 'http' | 'https',\n host: string,\n port: number,\n auth: {\n username: string,\n password: string,\n }\n};\n\nexport function parseProxyConnectionString(connectionStr: string) : ProxyConnectionConfig | undefined {\n const match = connectionStr\n .match(/(?:(https|http):\\/\\/)(?:(\\w+)(?::(\\w+))?@)?(?:([^:]+))(?::(\\d{1,5}))?$/);\n\n if (!match) {\n return undefined;\n }\n\n return {\n protocol: match[1] as 'http' | 'https',\n host: match[4],\n port: parseInt(match[5], 10),\n auth: {\n username: match[2],\n password: match[3],\n },\n };\n}\n\nexport function detectProxyConnectionConfig() : ProxyConnectionConfig | undefined {\n const envKeys = [\n 'https_proxy',\n 'HTTPS_PROXY',\n 'http_proxy',\n 'HTTP_PROXY',\n ];\n\n let result : string | undefined;\n\n for (let i = 0; i < envKeys.length; i++) {\n const envKey = envKeys[i];\n const envVal = process.env[envKey];\n\n if (\n envVal !== undefined &&\n envVal !== null\n ) {\n result = result || envVal;\n }\n }\n\n if (!result) {\n return undefined;\n }\n\n return parseProxyConnectionString(result);\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport const alphaNumHyphenUnderscoreRegex = /^[a-z0-9-_]*$/;\nexport const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d).{8,}$/;\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum EnvironmentName {\n TEST = 'test',\n DEVELOPMENT = 'development',\n PRODUCTION = 'production',\n}\n"],"names":["PermissionName","isBoolTrue","input","isBoolFalse","isBool","hasOwnProperty","obj","prop","Object","prototype","call","isObject","item","Array","isArray","isError","e","isHex","value","test","hexToUTF8","decodeURIComponent","match","join","URIError","getHostNameFromString","startsWith","url","URL","hostname","createNanoID","alphabetOrLen","len","customAlphabet","nullifyEmptyObjectProperties","data","keys","i","length","key","deleteUndefinedObjectProperties","parseProxyConnectionString","connectionStr","undefined","protocol","host","port","parseInt","auth","username","password","detectProxyConnectionConfig","envKeys","result","envKey","envVal","process","env","alphaNumHyphenUnderscoreRegex","registryRobotSecretRegex","EnvironmentName"],"mappings":";;;;AAAA;;;;;AAKC,IAAAA,gCAAA;AAEWA,CAAAA,SAAAA,cAAAA,EAAAA;;;;;;;;;;;;;;;;;;;;;;;GAAAA,sBAAAA,KAAAA,sBAAAA,GAAAA,EAAAA,CAAAA,CAAAA;;ACPZ;;;;;IAOO,SAASC,UAAAA,CAAoBC,KAAkB,EAAA;AAClD,IAAA,OAAO,OAAOA,KAAAA,KAAU,SAAa,IAAA,CAAC,CAACA,KAAAA,CAAAA;AAC3C,CAAA;AAEO,SAASC,YAAqBD,KAAkB,EAAA;IACnD,OAAO,OAAOA,KAAU,KAAA,SAAA,IAAa,CAACA,KAAAA,CAAAA;AAC1C,CAAA;AAEO,SAASE,OAAgBF,KAAkB,EAAA;AAC9C,IAAA,OAAO,OAAOA,KAAU,KAAA,SAAA,CAAA;AAC5B;;ACjBA;;;;;AAKC;AAGM,SAASG,cAAAA,CAAoDC,GAAM,EAAEC,IAAO,EAAA;AAC/E,IAAA,OAAOC,OAAOC,SAAS,CAACJ,cAAc,CAACK,IAAI,CAACJ,GAAKC,EAAAA,IAAAA,CAAAA,CAAAA;AACrD,CAAA;AAEO,SAASI,SAASC,IAAa,EAAA;IAClC,OACI,CAAC,CAACA,IACF,IAAA,OAAOA,SAAS,QAChB,IAAA,CAACC,KAAMC,CAAAA,OAAO,CAACF,IAAAA,CAAAA,CAAAA;AAEvB;;ACTO,SAASG,QAAQC,CAAU,EAAA;AAC9B,IAAA,OAAO,OAAOA,CAAAA,KAAM,QAAYA,IAAAA,CAAAA,IAAKX,eAAeW,CAAG,EAAA,SAAA,CAAA,CAAA;AAC3D;;ACXA;;;;;IAOO,SAASC,KAAAA,CAAMC,KAAa,EAAA;IAC/B,OAAO,iBAAA,CAAkBC,IAAI,CAACD,KAAAA,CAAAA,CAAAA;AAClC,CAAA;AAEO,SAASE,UAAUF,KAAa,EAAA;IACnC,IAAI;QACA,OAAOG,kBAAAA,CAAmB,CAAC,CAAC,EAAEH,KAAAA,CAAMI,KAAK,CAAC,SAAWC,CAAAA,CAAAA,IAAI,CAAC,GAAA,CAAA,CAAK,CAAC,CAAA,CAAA;AACpE,KAAA,CAAE,OAAOP,CAAG,EAAA;AACR,QAAA,IAAIA,aAAaQ,QAAU,EAAA;YACvB,OAAON,KAAAA,CAAAA;AACX,SAAA;QAEA,MAAMF,CAAAA,CAAAA;AACV,KAAA;AACJ;;ACrBA;;;;;IAOO,SAASS,qBAAAA,CAAsBP,KAAa,EAAA;AAC/C,IAAA,IACIA,MAAMQ,UAAU,CAAC,cACjBR,KAAMQ,CAAAA,UAAU,CAAC,UACnB,CAAA,EAAA;QACE,MAAMC,GAAAA,GAAM,IAAIC,GAAIV,CAAAA,KAAAA,CAAAA,CAAAA;AACpBA,QAAAA,KAAAA,GAAQS,IAAIE,QAAQ,CAAA;AACxB,KAAA;IAEA,OAAOX,KAAAA,CAAAA;AACX;;ACLO,SAASY,YAAAA,CAAaC,aAA+B,EAAEC,GAAY,EAAA;IACtE,IAAI,OAAOD,kBAAkB,QAAU,EAAA;QACnC,OAAOE,qBAAAA,CAAeF,eAAeC,GAAO,IAAA,EAAA,CAAA,EAAA,CAAA;AAChD,KAAA;IAEA,IAAI,OAAOD,kBAAkB,QAAU,EAAA;AACnC,QAAA,OAAOE,sBAAe,sCAAwCF,EAAAA,aAAAA,CAAAA,EAAAA,CAAAA;AAClE,KAAA;IAEA,OAAOE,qBAAAA,CAAe,wCAAwCD,GAAO,IAAA,EAAA,CAAA,EAAA,CAAA;AACzE;;ACtBA;;;;;IAOO,SAASE,4BAAAA,CAA4DC,IAAO,EAAA;IAC/E,MAAMC,IAAAA,GAAqB5B,MAAO4B,CAAAA,IAAI,CAACD,IAAAA,CAAAA,CAAAA;AAEvC,IAAA,IAAK,IAAIE,CAAI,GAAA,CAAA,EAAGA,IAAID,IAAKE,CAAAA,MAAM,EAAED,CAAK,EAAA,CAAA;QAClC,MAAME,GAAAA,GAAMH,IAAI,CAACC,CAAE,CAAA,CAAA;AACnB,QAAA,IAAIF,IAAI,CAACI,GAAI,CAAA,KAAK,EAAI,EAAA;YAClBJ,IAAI,CAACI,IAAI,GAAG,IAAA,CAAA;AAChB,SAAA;AACJ,KAAA;IAEA,OAAOJ,IAAAA,CAAAA;AACX,CAAA;AAEO,SAASK,gCAA+DL,IAAO,EAAA;IAClF,MAAMC,IAAAA,GAAkB5B,MAAO4B,CAAAA,IAAI,CAACD,IAAAA,CAAAA,CAAAA;AAEpC,IAAA,IAAK,IAAIE,CAAI,GAAA,CAAA,EAAGA,IAAID,IAAKE,CAAAA,MAAM,EAAED,CAAK,EAAA,CAAA;QAClC,IAAI,OAAOF,IAAI,CAACC,IAAI,CAACC,CAAE,CAAA,CAAC,KAAK,WAAa,EAAA;AACtC,YAAA,OAAOF,IAAI,CAACC,IAAI,CAACC,EAAE,CAAC,CAAA;AACxB,SAAA;AACJ,KAAA;IAEA,OAAOF,IAAAA,CAAAA;AACX;;AC9BA;;;;;IAiBO,SAASM,0BAAAA,CAA2BC,aAAqB,EAAA;IAC5D,MAAMpB,KAAAA,GAAQoB,aACTpB,CAAAA,KAAK,CAAC,wEAAA,CAAA,CAAA;AAEX,IAAA,IAAI,CAACA,KAAO,EAAA;QACR,OAAOqB,SAAAA,CAAAA;AACX,KAAA;IAEA,OAAO;QACHC,QAAUtB,EAAAA,KAAK,CAAC,CAAE,CAAA;QAClBuB,IAAMvB,EAAAA,KAAK,CAAC,CAAE,CAAA;AACdwB,QAAAA,IAAAA,EAAMC,QAASzB,CAAAA,KAAK,CAAC,CAAA,CAAE,EAAE,EAAA,CAAA;QACzB0B,IAAM,EAAA;YACFC,QAAU3B,EAAAA,KAAK,CAAC,CAAE,CAAA;YAClB4B,QAAU5B,EAAAA,KAAK,CAAC,CAAE,CAAA;AACtB,SAAA;AACJ,KAAA,CAAA;AACJ,CAAA;AAEO,SAAS6B,2BAAAA,GAAAA;AACZ,IAAA,MAAMC,OAAU,GAAA;AACZ,QAAA,aAAA;AACA,QAAA,aAAA;AACA,QAAA,YAAA;AACA,QAAA,YAAA;AACH,KAAA,CAAA;IAED,IAAIC,MAAAA,CAAAA;AAEJ,IAAA,IAAK,IAAIhB,CAAI,GAAA,CAAA,EAAGA,IAAIe,OAAQd,CAAAA,MAAM,EAAED,CAAK,EAAA,CAAA;QACrC,MAAMiB,MAAAA,GAASF,OAAO,CAACf,CAAE,CAAA,CAAA;AACzB,QAAA,MAAMkB,MAASC,GAAAA,OAAAA,CAAQC,GAAG,CAACH,MAAO,CAAA,CAAA;QAElC,IACIC,MAAAA,KAAWZ,SACXY,IAAAA,MAAAA,KAAW,IACb,EAAA;AACEF,YAAAA,MAAAA,GAASA,MAAUE,IAAAA,MAAAA,CAAAA;AACvB,SAAA;AACJ,KAAA;AAEA,IAAA,IAAI,CAACF,MAAQ,EAAA;QACT,OAAOV,SAAAA,CAAAA;AACX,KAAA;AAEA,IAAA,OAAOF,0BAA2BY,CAAAA,MAAAA,CAAAA,CAAAA;AACtC;;AC/DA;;;;;IAOaK,MAAAA,6BAAAA,GAAgC,gBAAgB;AACtD,MAAMC,2BAA2B;;ACRxC;;;;;AAKC,IAAAC,iCAAA;AAEWA,CAAAA,SAAAA,eAAAA,EAAAA;;;;GAAAA,uBAAAA,KAAAA,uBAAAA,GAAAA,EAAAA,CAAAA,CAAAA;;;;;;;;;;;;;;;;;;;"}
package/dist/index.mjs CHANGED
@@ -1,4 +1,3 @@
1
- import { PermissionName } from '@authup/core-kit';
2
1
  import { customAlphabet } from 'nanoid';
3
2
 
4
3
  /*
@@ -6,60 +5,31 @@ import { customAlphabet } from 'nanoid';
6
5
  * Author Peter Placzek (tada5hi)
7
6
  * For the full copyright and license information,
8
7
  * view the LICENSE file that was distributed with this source code.
9
- */ function _define_property(obj, key, value) {
10
- if (key in obj) {
11
- Object.defineProperty(obj, key, {
12
- value: value,
13
- enumerable: true,
14
- configurable: true,
15
- writable: true
16
- });
17
- } else {
18
- obj[key] = value;
19
- }
20
- return obj;
21
- }
22
- function _object_spread(target) {
23
- for(var i = 1; i < arguments.length; i++){
24
- var source = arguments[i] != null ? arguments[i] : {};
25
- var ownKeys = Object.keys(source);
26
- if (typeof Object.getOwnPropertySymbols === "function") {
27
- ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
28
- return Object.getOwnPropertyDescriptor(source, sym).enumerable;
29
- }));
30
- }
31
- ownKeys.forEach(function(key) {
32
- _define_property(target, key, source[key]);
33
- });
34
- }
35
- return target;
36
- }
37
- var PermissionKey;
38
- (function(PermissionKey) {
39
- PermissionKey["BUCKET_ADD"] = "bucket_add";
40
- PermissionKey["BUCKET_EDIT"] = "bucket_edit";
41
- PermissionKey["BUCKET_DROP"] = "bucket_drop";
42
- PermissionKey["PROJECT_ADD"] = "project_add";
43
- PermissionKey["PROJECT_DROP"] = "project_drop";
44
- PermissionKey["PROJECT_EDIT"] = "project_edit";
45
- PermissionKey["PROJECT_APPROVE"] = "project_approve";
46
- PermissionKey["REGISTRY_MANAGE"] = "registry_manage";
47
- PermissionKey["REGISTRY_PROJECT_MANAGE"] = "registry_project_manage";
48
- PermissionKey["NODE_ADD"] = "node_add";
49
- PermissionKey["NODE_DROP"] = "node_drop";
50
- PermissionKey["NODE_EDIT"] = "node_edit";
51
- PermissionKey["ANALYSIS_APPROVE"] = "analysis_approve";
52
- PermissionKey["ANALYSIS_EDIT"] = "analysis_edit";
53
- PermissionKey["ANALYSIS_ADD"] = "analysis_add";
54
- PermissionKey["ANALYSIS_EXECUTION_START"] = "analysis_execution_start";
55
- PermissionKey["ANALYSIS_EXECUTION_STOP"] = "analysis_execution_stop";
56
- PermissionKey["ANALYSIS_DROP"] = "analysis_drop";
57
- PermissionKey["ANALYSIS_RESULT_READ"] = "analysis_result_read";
58
- PermissionKey["MASTER_IMAGE_MANAGE"] = "master_image_manage";
59
- PermissionKey["MASTER_IMAGE_GROUP_MANAGE"] = "master_image_group_manage";
60
- PermissionKey["SERVICE_MANAGE"] = "service_manage";
61
- })(PermissionKey || (PermissionKey = {}));
62
- const PermissionID = _object_spread({}, PermissionKey, PermissionName);
8
+ */ var PermissionName;
9
+ (function(PermissionName) {
10
+ PermissionName["BUCKET_CREATE"] = "bucket_create";
11
+ PermissionName["BUCKET_UPDATE"] = "bucket_update";
12
+ PermissionName["BUCKET_DELETE"] = "bucket_delete";
13
+ PermissionName["PROJECT_CREATE"] = "project_create";
14
+ PermissionName["PROJECT_DELETE"] = "project_delete";
15
+ PermissionName["PROJECT_UPDATE"] = "project_update";
16
+ PermissionName["PROJECT_APPROVE"] = "project_approve";
17
+ PermissionName["REGISTRY_MANAGE"] = "registry_manage";
18
+ PermissionName["REGISTRY_PROJECT_MANAGE"] = "registry_project_manage";
19
+ PermissionName["NODE_CREATE"] = "node_create";
20
+ PermissionName["NODE_DELETE"] = "node_delete";
21
+ PermissionName["NODE_UPDATE"] = "node_update";
22
+ PermissionName["ANALYSIS_APPROVE"] = "analysis_approve";
23
+ PermissionName["ANALYSIS_UPDATE"] = "analysis_update";
24
+ PermissionName["ANALYSIS_CREATE"] = "analysis_create";
25
+ PermissionName["ANALYSIS_EXECUTION_START"] = "analysis_execution_start";
26
+ PermissionName["ANALYSIS_EXECUTION_STOP"] = "analysis_execution_stop";
27
+ PermissionName["ANALYSIS_DELETE"] = "analysis_delete";
28
+ PermissionName["ANALYSIS_RESULT_READ"] = "analysis_result_read";
29
+ PermissionName["MASTER_IMAGE_MANAGE"] = "master_image_manage";
30
+ PermissionName["MASTER_IMAGE_GROUP_MANAGE"] = "master_image_group_manage";
31
+ PermissionName["SERVICE_MANAGE"] = "service_manage";
32
+ })(PermissionName || (PermissionName = {}));
63
33
 
64
34
  /*
65
35
  * Copyright (c) 2024.
@@ -221,5 +191,5 @@ const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\d).{8,}$/;
221
191
  EnvironmentName["PRODUCTION"] = "production";
222
192
  })(EnvironmentName || (EnvironmentName = {}));
223
193
 
224
- export { EnvironmentName, PermissionID, PermissionKey, alphaNumHyphenUnderscoreRegex, createNanoID, deleteUndefinedObjectProperties, detectProxyConnectionConfig, getHostNameFromString, hasOwnProperty, hexToUTF8, isBool, isBoolFalse, isBoolTrue, isError, isHex, isObject, nullifyEmptyObjectProperties, parseProxyConnectionString, registryRobotSecretRegex };
194
+ export { EnvironmentName, PermissionName, alphaNumHyphenUnderscoreRegex, createNanoID, deleteUndefinedObjectProperties, detectProxyConnectionConfig, getHostNameFromString, hasOwnProperty, hexToUTF8, isBool, isBoolFalse, isBoolTrue, isError, isHex, isObject, nullifyEmptyObjectProperties, parseProxyConnectionString, registryRobotSecretRegex };
225
195
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/domains/permission/constants.ts","../src/utils/boolean.ts","../src/utils/has-own-property.ts","../src/utils/error.ts","../src/utils/hex-checker.ts","../src/utils/hostname.ts","../src/utils/nanoid.ts","../src/utils/object-properties.ts","../src/utils/proxy-connection-string.ts","../src/utils/regex-patterns.ts","../src/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { PermissionName as AuthPermissionName } from '@authup/core-kit';\n\nexport enum PermissionKey {\n BUCKET_ADD = 'bucket_add',\n BUCKET_EDIT = 'bucket_edit',\n BUCKET_DROP = 'bucket_drop',\n\n PROJECT_ADD = 'project_add',\n PROJECT_DROP = 'project_drop',\n PROJECT_EDIT = 'project_edit',\n PROJECT_APPROVE = 'project_approve',\n\n REGISTRY_MANAGE = 'registry_manage',\n REGISTRY_PROJECT_MANAGE = 'registry_project_manage',\n\n NODE_ADD = 'node_add',\n NODE_DROP = 'node_drop',\n NODE_EDIT = 'node_edit',\n\n ANALYSIS_APPROVE = 'analysis_approve',\n ANALYSIS_EDIT = 'analysis_edit',\n ANALYSIS_ADD = 'analysis_add',\n ANALYSIS_EXECUTION_START = 'analysis_execution_start',\n ANALYSIS_EXECUTION_STOP = 'analysis_execution_stop',\n ANALYSIS_DROP = 'analysis_drop',\n ANALYSIS_RESULT_READ = 'analysis_result_read', // todo: this is maybe not required anymore\n\n MASTER_IMAGE_MANAGE = 'master_image_manage',\n MASTER_IMAGE_GROUP_MANAGE = 'master_image_group_manage',\n\n SERVICE_MANAGE = 'service_manage',\n}\n\nexport const PermissionID = {\n ...PermissionKey,\n ...AuthPermissionName,\n};\n\nexport type PermissionIDType = typeof PermissionID[keyof typeof PermissionID];\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isBoolTrue<T = any>(input: T | boolean) : input is true {\n return typeof input === 'boolean' && !!input;\n}\n\nexport function isBoolFalse<T = any>(input: T | boolean) : input is false {\n return typeof input === 'boolean' && !input;\n}\n\nexport function isBool<T = any>(input: T | boolean) : input is boolean {\n return typeof input === 'boolean';\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function hasOwnProperty<X extends {}, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, unknown> {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nexport function isObject(item: unknown) : item is Record<string, any> {\n return (\n !!item &&\n typeof item === 'object' &&\n !Array.isArray(item)\n );\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { hasOwnProperty } from './has-own-property';\n\nexport function isError(e: unknown) {\n return typeof e === 'object' && e && hasOwnProperty(e, 'message');\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isHex(value: string) : boolean {\n return /^[A-Fa-f0-9]+$/i.test(value);\n}\n\nexport function hexToUTF8(value: string) {\n try {\n return decodeURIComponent(`%${value.match(/.{1,2}/g).join('%')}`);\n } catch (e) {\n if (e instanceof URIError) {\n return value;\n }\n\n throw e;\n }\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function getHostNameFromString(value: string) : string {\n if (\n value.startsWith('http://') ||\n value.startsWith('https://')\n ) {\n const url = new URL(value);\n value = url.hostname;\n }\n\n return value;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { customAlphabet } from 'nanoid';\n\nexport function createNanoID(alphabet?: string) : string;\nexport function createNanoID(len?: number) : string;\nexport function createNanoID(alphabet?: string, len?: number) : string;\nexport function createNanoID(alphabetOrLen?: string | number, len?: number) : string {\n if (typeof alphabetOrLen === 'string') {\n return customAlphabet(alphabetOrLen, len || 21)();\n }\n\n if (typeof alphabetOrLen === 'number') {\n return customAlphabet('0123456789abcdefghijklmnopqrstuvwxyz', alphabetOrLen)();\n }\n\n return customAlphabet('0123456789abcdefghijklmnopqrstuvwxyz', len || 21)();\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function nullifyEmptyObjectProperties<T extends Record<string, any>>(data: T) : T {\n const keys : (keyof T)[] = Object.keys(data);\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (data[key] === '') {\n data[key] = null as T[keyof T];\n }\n }\n\n return data as T;\n}\n\nexport function deleteUndefinedObjectProperties<T extends Record<string, any>>(data: T) : T {\n const keys : string[] = Object.keys(data);\n\n for (let i = 0; i < keys.length; i++) {\n if (typeof data[keys[i]] === 'undefined') {\n delete data[keys[i]];\n }\n }\n\n return data;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport type ProxyConnectionConfig = {\n protocol: 'http' | 'https',\n host: string,\n port: number,\n auth: {\n username: string,\n password: string,\n }\n};\n\nexport function parseProxyConnectionString(connectionStr: string) : ProxyConnectionConfig | undefined {\n const match = connectionStr\n .match(/(?:(https|http):\\/\\/)(?:(\\w+)(?::(\\w+))?@)?(?:([^:]+))(?::(\\d{1,5}))?$/);\n\n if (!match) {\n return undefined;\n }\n\n return {\n protocol: match[1] as 'http' | 'https',\n host: match[4],\n port: parseInt(match[5], 10),\n auth: {\n username: match[2],\n password: match[3],\n },\n };\n}\n\nexport function detectProxyConnectionConfig() : ProxyConnectionConfig | undefined {\n const envKeys = [\n 'https_proxy',\n 'HTTPS_PROXY',\n 'http_proxy',\n 'HTTP_PROXY',\n ];\n\n let result : string | undefined;\n\n for (let i = 0; i < envKeys.length; i++) {\n const envKey = envKeys[i];\n const envVal = process.env[envKey];\n\n if (\n envVal !== undefined &&\n envVal !== null\n ) {\n result = result || envVal;\n }\n }\n\n if (!result) {\n return undefined;\n }\n\n return parseProxyConnectionString(result);\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport const alphaNumHyphenUnderscoreRegex = /^[a-z0-9-_]*$/;\nexport const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d).{8,}$/;\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum EnvironmentName {\n TEST = 'test',\n DEVELOPMENT = 'development',\n PRODUCTION = 'production',\n}\n"],"names":["PermissionKey","PermissionID","AuthPermissionName","isBoolTrue","input","isBoolFalse","isBool","hasOwnProperty","obj","prop","Object","prototype","call","isObject","item","Array","isArray","isError","e","isHex","value","test","hexToUTF8","decodeURIComponent","match","join","URIError","getHostNameFromString","startsWith","url","URL","hostname","createNanoID","alphabetOrLen","len","customAlphabet","nullifyEmptyObjectProperties","data","keys","i","length","key","deleteUndefinedObjectProperties","parseProxyConnectionString","connectionStr","undefined","protocol","host","port","parseInt","auth","username","password","detectProxyConnectionConfig","envKeys","result","envKey","envVal","process","env","alphaNumHyphenUnderscoreRegex","registryRobotSecretRegex","EnvironmentName"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/domains/permission/constants.ts","../src/utils/boolean.ts","../src/utils/has-own-property.ts","../src/utils/error.ts","../src/utils/hex-checker.ts","../src/utils/hostname.ts","../src/utils/nanoid.ts","../src/utils/object-properties.ts","../src/utils/proxy-connection-string.ts","../src/utils/regex-patterns.ts","../src/constants.ts"],"sourcesContent":["/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum PermissionName {\n BUCKET_CREATE = 'bucket_create',\n BUCKET_UPDATE = 'bucket_update',\n BUCKET_DELETE = 'bucket_delete',\n\n PROJECT_CREATE = 'project_create',\n PROJECT_DELETE = 'project_delete',\n PROJECT_UPDATE = 'project_update',\n PROJECT_APPROVE = 'project_approve',\n\n REGISTRY_MANAGE = 'registry_manage',\n REGISTRY_PROJECT_MANAGE = 'registry_project_manage',\n\n NODE_CREATE = 'node_create',\n NODE_DELETE = 'node_delete',\n NODE_UPDATE = 'node_update',\n\n ANALYSIS_APPROVE = 'analysis_approve',\n ANALYSIS_UPDATE = 'analysis_update',\n ANALYSIS_CREATE = 'analysis_create',\n ANALYSIS_EXECUTION_START = 'analysis_execution_start',\n ANALYSIS_EXECUTION_STOP = 'analysis_execution_stop',\n ANALYSIS_DELETE = 'analysis_delete',\n ANALYSIS_RESULT_READ = 'analysis_result_read', // todo: this is maybe not required anymore\n\n MASTER_IMAGE_MANAGE = 'master_image_manage',\n MASTER_IMAGE_GROUP_MANAGE = 'master_image_group_manage',\n\n SERVICE_MANAGE = 'service_manage',\n}\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isBoolTrue<T = any>(input: T | boolean) : input is true {\n return typeof input === 'boolean' && !!input;\n}\n\nexport function isBoolFalse<T = any>(input: T | boolean) : input is false {\n return typeof input === 'boolean' && !input;\n}\n\nexport function isBool<T = any>(input: T | boolean) : input is boolean {\n return typeof input === 'boolean';\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function hasOwnProperty<X extends {}, Y extends PropertyKey>(obj: X, prop: Y): obj is X & Record<Y, unknown> {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nexport function isObject(item: unknown) : item is Record<string, any> {\n return (\n !!item &&\n typeof item === 'object' &&\n !Array.isArray(item)\n );\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { hasOwnProperty } from './has-own-property';\n\nexport function isError(e: unknown) {\n return typeof e === 'object' && e && hasOwnProperty(e, 'message');\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function isHex(value: string) : boolean {\n return /^[A-Fa-f0-9]+$/i.test(value);\n}\n\nexport function hexToUTF8(value: string) {\n try {\n return decodeURIComponent(`%${value.match(/.{1,2}/g).join('%')}`);\n } catch (e) {\n if (e instanceof URIError) {\n return value;\n }\n\n throw e;\n }\n}\n","/*\n * Copyright (c) 2022-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function getHostNameFromString(value: string) : string {\n if (\n value.startsWith('http://') ||\n value.startsWith('https://')\n ) {\n const url = new URL(value);\n value = url.hostname;\n }\n\n return value;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nimport { customAlphabet } from 'nanoid';\n\nexport function createNanoID(alphabet?: string) : string;\nexport function createNanoID(len?: number) : string;\nexport function createNanoID(alphabet?: string, len?: number) : string;\nexport function createNanoID(alphabetOrLen?: string | number, len?: number) : string {\n if (typeof alphabetOrLen === 'string') {\n return customAlphabet(alphabetOrLen, len || 21)();\n }\n\n if (typeof alphabetOrLen === 'number') {\n return customAlphabet('0123456789abcdefghijklmnopqrstuvwxyz', alphabetOrLen)();\n }\n\n return customAlphabet('0123456789abcdefghijklmnopqrstuvwxyz', len || 21)();\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport function nullifyEmptyObjectProperties<T extends Record<string, any>>(data: T) : T {\n const keys : (keyof T)[] = Object.keys(data);\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n if (data[key] === '') {\n data[key] = null as T[keyof T];\n }\n }\n\n return data as T;\n}\n\nexport function deleteUndefinedObjectProperties<T extends Record<string, any>>(data: T) : T {\n const keys : string[] = Object.keys(data);\n\n for (let i = 0; i < keys.length; i++) {\n if (typeof data[keys[i]] === 'undefined') {\n delete data[keys[i]];\n }\n }\n\n return data;\n}\n","/*\n * Copyright (c) 2021-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport type ProxyConnectionConfig = {\n protocol: 'http' | 'https',\n host: string,\n port: number,\n auth: {\n username: string,\n password: string,\n }\n};\n\nexport function parseProxyConnectionString(connectionStr: string) : ProxyConnectionConfig | undefined {\n const match = connectionStr\n .match(/(?:(https|http):\\/\\/)(?:(\\w+)(?::(\\w+))?@)?(?:([^:]+))(?::(\\d{1,5}))?$/);\n\n if (!match) {\n return undefined;\n }\n\n return {\n protocol: match[1] as 'http' | 'https',\n host: match[4],\n port: parseInt(match[5], 10),\n auth: {\n username: match[2],\n password: match[3],\n },\n };\n}\n\nexport function detectProxyConnectionConfig() : ProxyConnectionConfig | undefined {\n const envKeys = [\n 'https_proxy',\n 'HTTPS_PROXY',\n 'http_proxy',\n 'HTTP_PROXY',\n ];\n\n let result : string | undefined;\n\n for (let i = 0; i < envKeys.length; i++) {\n const envKey = envKeys[i];\n const envVal = process.env[envKey];\n\n if (\n envVal !== undefined &&\n envVal !== null\n ) {\n result = result || envVal;\n }\n }\n\n if (!result) {\n return undefined;\n }\n\n return parseProxyConnectionString(result);\n}\n","/*\n * Copyright (c) 2023-2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport const alphaNumHyphenUnderscoreRegex = /^[a-z0-9-_]*$/;\nexport const registryRobotSecretRegex = /^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d).{8,}$/;\n","/*\n * Copyright (c) 2024.\n * Author Peter Placzek (tada5hi)\n * For the full copyright and license information,\n * view the LICENSE file that was distributed with this source code.\n */\n\nexport enum EnvironmentName {\n TEST = 'test',\n DEVELOPMENT = 'development',\n PRODUCTION = 'production',\n}\n"],"names":["PermissionName","isBoolTrue","input","isBoolFalse","isBool","hasOwnProperty","obj","prop","Object","prototype","call","isObject","item","Array","isArray","isError","e","isHex","value","test","hexToUTF8","decodeURIComponent","match","join","URIError","getHostNameFromString","startsWith","url","URL","hostname","createNanoID","alphabetOrLen","len","customAlphabet","nullifyEmptyObjectProperties","data","keys","i","length","key","deleteUndefinedObjectProperties","parseProxyConnectionString","connectionStr","undefined","protocol","host","port","parseInt","auth","username","password","detectProxyConnectionConfig","envKeys","result","envKey","envVal","process","env","alphaNumHyphenUnderscoreRegex","registryRobotSecretRegex","EnvironmentName"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privateaim/kit",
3
- "version": "0.6.0",
3
+ "version": "0.8.0",
4
4
  "license": "Apache-2.0",
5
5
  "description": "",
6
6
  "exports": {
@@ -26,10 +26,10 @@
26
26
  "build-watch": "rimraf ./dist && tsc -p tsconfig.build.json --watch"
27
27
  },
28
28
  "devDependencies": {
29
- "@authup/core-kit": "^1.0.0-beta.18"
29
+ "@authup/core-kit": "^1.0.0-beta.19"
30
30
  },
31
31
  "peerDependencies": {
32
- "@authup/core-kit": "^1.0.0-beta.18"
32
+ "@authup/core-kit": "^1.0.0-beta.19"
33
33
  },
34
34
  "dependencies": {
35
35
  "nanoid": "^3.3.4"
@@ -5,31 +5,29 @@
5
5
  * view the LICENSE file that was distributed with this source code.
6
6
  */
7
7
 
8
- import { PermissionName as AuthPermissionName } from '@authup/core-kit';
9
-
10
- export enum PermissionKey {
11
- BUCKET_ADD = 'bucket_add',
12
- BUCKET_EDIT = 'bucket_edit',
13
- BUCKET_DROP = 'bucket_drop',
14
-
15
- PROJECT_ADD = 'project_add',
16
- PROJECT_DROP = 'project_drop',
17
- PROJECT_EDIT = 'project_edit',
8
+ export enum PermissionName {
9
+ BUCKET_CREATE = 'bucket_create',
10
+ BUCKET_UPDATE = 'bucket_update',
11
+ BUCKET_DELETE = 'bucket_delete',
12
+
13
+ PROJECT_CREATE = 'project_create',
14
+ PROJECT_DELETE = 'project_delete',
15
+ PROJECT_UPDATE = 'project_update',
18
16
  PROJECT_APPROVE = 'project_approve',
19
17
 
20
18
  REGISTRY_MANAGE = 'registry_manage',
21
19
  REGISTRY_PROJECT_MANAGE = 'registry_project_manage',
22
20
 
23
- NODE_ADD = 'node_add',
24
- NODE_DROP = 'node_drop',
25
- NODE_EDIT = 'node_edit',
21
+ NODE_CREATE = 'node_create',
22
+ NODE_DELETE = 'node_delete',
23
+ NODE_UPDATE = 'node_update',
26
24
 
27
25
  ANALYSIS_APPROVE = 'analysis_approve',
28
- ANALYSIS_EDIT = 'analysis_edit',
29
- ANALYSIS_ADD = 'analysis_add',
26
+ ANALYSIS_UPDATE = 'analysis_update',
27
+ ANALYSIS_CREATE = 'analysis_create',
30
28
  ANALYSIS_EXECUTION_START = 'analysis_execution_start',
31
29
  ANALYSIS_EXECUTION_STOP = 'analysis_execution_stop',
32
- ANALYSIS_DROP = 'analysis_drop',
30
+ ANALYSIS_DELETE = 'analysis_delete',
33
31
  ANALYSIS_RESULT_READ = 'analysis_result_read', // todo: this is maybe not required anymore
34
32
 
35
33
  MASTER_IMAGE_MANAGE = 'master_image_manage',
@@ -37,10 +35,3 @@ export enum PermissionKey {
37
35
 
38
36
  SERVICE_MANAGE = 'service_manage',
39
37
  }
40
-
41
- export const PermissionID = {
42
- ...PermissionKey,
43
- ...AuthPermissionName,
44
- };
45
-
46
- export type PermissionIDType = typeof PermissionID[keyof typeof PermissionID];