windmill-components 1.13.22 → 1.13.25
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/common.js +5 -1
- package/components/ArgInfo.svelte +16 -11
- package/components/ArgInput.svelte +50 -45
- package/components/AutosizedTextarea.svelte +8 -6
- package/components/Badge.svelte +10 -4
- package/components/Button.svelte +11 -6
- package/components/ButtonAndDropdown.svelte +12 -6
- package/components/ChevronButton.svelte +9 -4
- package/components/DisplayResult.svelte +11 -6
- package/components/Dropdown.svelte +13 -8
- package/components/Editor.svelte +95 -62
- package/components/FieldHeader.svelte +12 -7
- package/components/FlowBuilder.svelte +35 -30
- package/components/FlowEditor.svelte +25 -19
- package/components/FlowPreview.svelte +31 -27
- package/components/FlowStatusViewer.svelte +21 -17
- package/components/GroupModal.svelte +20 -13
- package/components/IconedResourceType.svelte +16 -11
- package/components/InviteGlobalUser.svelte +15 -8
- package/components/InviteUser.svelte +16 -9
- package/components/ItemPicker.svelte +14 -11
- package/components/JobStatus.svelte +10 -5
- package/components/Modal.svelte +14 -9
- package/components/ModuleStep.svelte +24 -20
- package/components/ObjectResourceInput.svelte +20 -16
- package/components/ObjectTypeNarrowing.svelte +12 -7
- package/components/PageHeader.svelte +9 -4
- package/components/Password.svelte +8 -6
- package/components/Path.svelte +30 -23
- package/components/RadioButton.svelte +7 -6
- package/components/Required.svelte +4 -2
- package/components/ResourceEditor.svelte +33 -25
- package/components/ResourcePicker.svelte +7 -6
- package/components/ResourceTypePicker.svelte +13 -8
- package/components/RunForm.svelte +19 -15
- package/components/SchemaEditor.svelte +61 -31
- package/components/SchemaForm.svelte +22 -16
- package/components/SchemaModal.svelte +40 -25
- package/components/SchemaViewer.svelte +12 -6
- package/components/ScriptBuilder.svelte +44 -38
- package/components/ScriptEditor.svelte +58 -53
- package/components/ScriptPicker.svelte +34 -28
- package/components/ScriptSchema.svelte +17 -13
- package/components/ShareModal.svelte +29 -23
- package/components/SharedBadge.svelte +16 -11
- package/components/StringTypeNarrowing.svelte +11 -8
- package/components/TableCustom.svelte +8 -5
- package/components/TableSimple.svelte +8 -9
- package/components/Tabs.svelte +8 -6
- package/components/Tooltip.svelte +11 -5
- package/components/VariableEditor.svelte +27 -19
- package/components/icons/DbIcon.svelte +5 -2
- package/components/icons/Mail.svelte +5 -2
- package/components/icons/Mysql.svelte +5 -2
- package/components/icons/PostgresIcon.svelte +5 -2
- package/components/icons/Slack.svelte +5 -2
- package/gen/core/ApiError.js +5 -1
- package/gen/core/ApiRequestOptions.js +2 -1
- package/gen/core/ApiResult.js +2 -1
- package/gen/core/CancelablePromise.js +7 -2
- package/gen/core/OpenAPI.js +4 -1
- package/gen/core/request.js +13 -8
- package/gen/index.js +58 -27
- package/gen/models/AuditLog.js +5 -2
- package/gen/models/CompletedJob.js +5 -2
- package/gen/models/ContextualVariable.js +2 -1
- package/gen/models/CreateResource.js +2 -1
- package/gen/models/CreateVariable.js +2 -1
- package/gen/models/CreateWorkspace.js +2 -1
- package/gen/models/EditResource.js +2 -1
- package/gen/models/EditResourceType.js +2 -1
- package/gen/models/EditSchedule.js +2 -1
- package/gen/models/EditVariable.js +2 -1
- package/gen/models/EditWorkspaceUser.js +2 -1
- package/gen/models/Flow.js +2 -1
- package/gen/models/FlowModule.js +2 -1
- package/gen/models/FlowModuleValue.js +5 -2
- package/gen/models/FlowPreview.js +2 -1
- package/gen/models/FlowStatus.js +2 -1
- package/gen/models/FlowStatusModule.js +5 -2
- package/gen/models/FlowValue.js +2 -1
- package/gen/models/GlobalUserInfo.js +5 -2
- package/gen/models/Group.js +2 -1
- package/gen/models/InputTransform.js +5 -2
- package/gen/models/Job.js +5 -2
- package/gen/models/ListableVariable.js +2 -1
- package/gen/models/Login.js +2 -1
- package/gen/models/MainArgSignature.js +2 -1
- package/gen/models/NewSchedule.js +2 -1
- package/gen/models/NewToken.js +2 -1
- package/gen/models/NewUser.js +2 -1
- package/gen/models/Preview.js +5 -2
- package/gen/models/QueuedJob.js +5 -2
- package/gen/models/Resource.js +2 -1
- package/gen/models/ResourceType.js +2 -1
- package/gen/models/Schedule.js +2 -1
- package/gen/models/Script.js +5 -2
- package/gen/models/ScriptArgs.js +2 -1
- package/gen/models/TruncatedToken.js +2 -1
- package/gen/models/User.js +2 -1
- package/gen/models/UserWorkspaceList.js +2 -1
- package/gen/models/WorkerPing.js +2 -1
- package/gen/models/Workspace.js +2 -1
- package/gen/models/WorkspaceInvite.js +2 -1
- package/gen/services/AdminService.js +10 -6
- package/gen/services/AuditService.js +9 -5
- package/gen/services/FlowService.js +12 -8
- package/gen/services/GranularAclService.js +10 -6
- package/gen/services/GroupService.js +15 -11
- package/gen/services/JobService.js +20 -16
- package/gen/services/ResourceService.js +18 -14
- package/gen/services/ScheduleService.js +13 -9
- package/gen/services/ScriptService.js +19 -15
- package/gen/services/SettingsService.js +9 -5
- package/gen/services/UserService.js +29 -25
- package/gen/services/VariableService.js +13 -9
- package/gen/services/WorkerService.js +8 -4
- package/gen/services/WorkspaceService.js +20 -16
- package/infer.js +9 -5
- package/logout.js +17 -12
- package/package.json +2 -3
- package/scripts.js +15 -11
- package/stores.js +22 -18
- package/user.js +15 -10
- package/utils.js +52 -26
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkspaceService = void 0;
|
|
4
|
+
const OpenAPI_1 = require("../core/OpenAPI");
|
|
5
|
+
const request_1 = require("../core/request");
|
|
6
|
+
class WorkspaceService {
|
|
4
7
|
/**
|
|
5
8
|
* list all workspaces visible to me
|
|
6
9
|
* @returns Workspace all workspaces
|
|
7
10
|
* @throws ApiError
|
|
8
11
|
*/
|
|
9
12
|
static listWorkspaces() {
|
|
10
|
-
return
|
|
13
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
11
14
|
method: 'GET',
|
|
12
15
|
url: '/workspaces/list',
|
|
13
16
|
});
|
|
@@ -18,7 +21,7 @@ export class WorkspaceService {
|
|
|
18
21
|
* @throws ApiError
|
|
19
22
|
*/
|
|
20
23
|
static listUserWorkspaces() {
|
|
21
|
-
return
|
|
24
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
22
25
|
method: 'GET',
|
|
23
26
|
url: '/workspaces/users',
|
|
24
27
|
});
|
|
@@ -29,7 +32,7 @@ export class WorkspaceService {
|
|
|
29
32
|
* @throws ApiError
|
|
30
33
|
*/
|
|
31
34
|
static listWorkspacesAsSuperAdmin({ page, perPage, }) {
|
|
32
|
-
return
|
|
35
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
33
36
|
method: 'GET',
|
|
34
37
|
url: '/workspaces/list_as_superadmin',
|
|
35
38
|
query: {
|
|
@@ -44,7 +47,7 @@ export class WorkspaceService {
|
|
|
44
47
|
* @throws ApiError
|
|
45
48
|
*/
|
|
46
49
|
static createWorkspace({ requestBody, }) {
|
|
47
|
-
return
|
|
50
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
48
51
|
method: 'POST',
|
|
49
52
|
url: '/workspaces/create',
|
|
50
53
|
body: requestBody,
|
|
@@ -57,7 +60,7 @@ export class WorkspaceService {
|
|
|
57
60
|
* @throws ApiError
|
|
58
61
|
*/
|
|
59
62
|
static validateId({ requestBody, }) {
|
|
60
|
-
return
|
|
63
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
61
64
|
method: 'POST',
|
|
62
65
|
url: '/workspaces/validate_id',
|
|
63
66
|
body: requestBody,
|
|
@@ -70,7 +73,7 @@ export class WorkspaceService {
|
|
|
70
73
|
* @throws ApiError
|
|
71
74
|
*/
|
|
72
75
|
static validateUsername({ requestBody, }) {
|
|
73
|
-
return
|
|
76
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
74
77
|
method: 'POST',
|
|
75
78
|
url: '/workspaces/validate_username',
|
|
76
79
|
body: requestBody,
|
|
@@ -83,7 +86,7 @@ export class WorkspaceService {
|
|
|
83
86
|
* @throws ApiError
|
|
84
87
|
*/
|
|
85
88
|
static inviteUser({ workspace, requestBody, }) {
|
|
86
|
-
return
|
|
89
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
87
90
|
method: 'POST',
|
|
88
91
|
url: '/w/{workspace}/workspaces/invite_user',
|
|
89
92
|
path: {
|
|
@@ -99,7 +102,7 @@ export class WorkspaceService {
|
|
|
99
102
|
* @throws ApiError
|
|
100
103
|
*/
|
|
101
104
|
static deleteInvite({ workspace, requestBody, }) {
|
|
102
|
-
return
|
|
105
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
103
106
|
method: 'POST',
|
|
104
107
|
url: '/w/{workspace}/workspaces/delete_invite',
|
|
105
108
|
path: {
|
|
@@ -115,7 +118,7 @@ export class WorkspaceService {
|
|
|
115
118
|
* @throws ApiError
|
|
116
119
|
*/
|
|
117
120
|
static deleteWorkspace({ workspace, }) {
|
|
118
|
-
return
|
|
121
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
119
122
|
method: 'DELETE',
|
|
120
123
|
url: '/w/{workspace}/workspaces/delete',
|
|
121
124
|
path: {
|
|
@@ -129,7 +132,7 @@ export class WorkspaceService {
|
|
|
129
132
|
* @throws ApiError
|
|
130
133
|
*/
|
|
131
134
|
static listPendingInvites({ workspace, }) {
|
|
132
|
-
return
|
|
135
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
133
136
|
method: 'GET',
|
|
134
137
|
url: '/w/{workspace}/workspaces/list_pending_invites',
|
|
135
138
|
path: {
|
|
@@ -143,7 +146,7 @@ export class WorkspaceService {
|
|
|
143
146
|
* @throws ApiError
|
|
144
147
|
*/
|
|
145
148
|
static getSettings({ workspace, }) {
|
|
146
|
-
return
|
|
149
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
147
150
|
method: 'GET',
|
|
148
151
|
url: '/w/{workspace}/workspaces/get_settings',
|
|
149
152
|
path: {
|
|
@@ -157,7 +160,7 @@ export class WorkspaceService {
|
|
|
157
160
|
* @throws ApiError
|
|
158
161
|
*/
|
|
159
162
|
static editSlackCommand({ workspace, requestBody, }) {
|
|
160
|
-
return
|
|
163
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
161
164
|
method: 'POST',
|
|
162
165
|
url: '/w/{workspace}/workspaces/edit_slack_command',
|
|
163
166
|
path: {
|
|
@@ -173,7 +176,7 @@ export class WorkspaceService {
|
|
|
173
176
|
* @throws ApiError
|
|
174
177
|
*/
|
|
175
178
|
static disconnectClient({ workspace, clientName, }) {
|
|
176
|
-
return
|
|
179
|
+
return (0, request_1.request)(OpenAPI_1.OpenAPI, {
|
|
177
180
|
method: 'POST',
|
|
178
181
|
url: '/w/{workspace}/oauth/disconnect/{client_name}',
|
|
179
182
|
path: {
|
|
@@ -183,3 +186,4 @@ export class WorkspaceService {
|
|
|
183
186
|
});
|
|
184
187
|
}
|
|
185
188
|
}
|
|
189
|
+
exports.WorkspaceService = WorkspaceService;
|
package/infer.js
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.inferArgs = void 0;
|
|
4
|
+
const gen_1 = require("$lib/gen");
|
|
5
|
+
require("./utils.js");
|
|
6
|
+
async function inferArgs(language, code, schema) {
|
|
4
7
|
let inferedSchema;
|
|
5
8
|
if (language == 'python3') {
|
|
6
|
-
inferedSchema = await ScriptService.pythonToJsonschema({
|
|
9
|
+
inferedSchema = await gen_1.ScriptService.pythonToJsonschema({
|
|
7
10
|
requestBody: code
|
|
8
11
|
});
|
|
9
12
|
}
|
|
10
13
|
else if (language == 'deno') {
|
|
11
|
-
inferedSchema = await ScriptService.denoToJsonschema({
|
|
14
|
+
inferedSchema = await gen_1.ScriptService.denoToJsonschema({
|
|
12
15
|
requestBody: code
|
|
13
16
|
});
|
|
14
17
|
}
|
|
@@ -32,6 +35,7 @@ export async function inferArgs(language, code, schema) {
|
|
|
32
35
|
}
|
|
33
36
|
}
|
|
34
37
|
}
|
|
38
|
+
exports.inferArgs = inferArgs;
|
|
35
39
|
function argSigToJsonSchemaType(t, s) {
|
|
36
40
|
if (t === 'int') {
|
|
37
41
|
s.type = 'integer';
|
package/logout.js
CHANGED
|
@@ -1,20 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.logout = exports.logoutWithRedirect = void 0;
|
|
4
|
+
const navigation_1 = require("$app/navigation");
|
|
5
|
+
const gen_1 = require("./gen");
|
|
6
|
+
const stores_js_1 = require("./stores.js");
|
|
7
|
+
const utils_js_1 = require("./utils.js");
|
|
8
|
+
function logoutWithRedirect(rd) {
|
|
6
9
|
const error = encodeURIComponent('You have been logged out because your session has expired.');
|
|
7
|
-
goto(`/user/login?error=${error}${rd ? '&rd=' + encodeURIComponent(rd) : ''}`);
|
|
10
|
+
(0, navigation_1.goto)(`/user/login?error=${error}${rd ? '&rd=' + encodeURIComponent(rd) : ''}`);
|
|
8
11
|
}
|
|
9
|
-
|
|
12
|
+
exports.logoutWithRedirect = logoutWithRedirect;
|
|
13
|
+
async function logout(logoutMessage) {
|
|
10
14
|
try {
|
|
11
|
-
clearStores();
|
|
12
|
-
await UserService.logout();
|
|
13
|
-
goto(`/user/login${logoutMessage ? '?error=' + encodeURIComponent(logoutMessage) : ''}`);
|
|
14
|
-
sendUserToast('you have been logged out');
|
|
15
|
+
(0, stores_js_1.clearStores)();
|
|
16
|
+
await gen_1.UserService.logout();
|
|
17
|
+
(0, navigation_1.goto)(`/user/login${logoutMessage ? '?error=' + encodeURIComponent(logoutMessage) : ''}`);
|
|
18
|
+
(0, utils_js_1.sendUserToast)('you have been logged out');
|
|
15
19
|
}
|
|
16
20
|
catch (error) {
|
|
17
|
-
goto(`/user/login?error=${encodeURIComponent('There was a problem logging you out, check the logs')}`);
|
|
21
|
+
(0, navigation_1.goto)(`/user/login?error=${encodeURIComponent('There was a problem logging you out, check the logs')}`);
|
|
18
22
|
console.error(error);
|
|
19
23
|
}
|
|
20
24
|
}
|
|
25
|
+
exports.logout = logout;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "windmill-components",
|
|
3
|
-
"version": "1.13.
|
|
3
|
+
"version": "1.13.25",
|
|
4
4
|
"devDependencies": {
|
|
5
5
|
"@sveltejs/adapter-node": "^1.0.0-next.78",
|
|
6
6
|
"@sveltejs/adapter-static": "^1.0.0-next.34",
|
|
@@ -32,7 +32,6 @@
|
|
|
32
32
|
"tslib": "^2.3.1",
|
|
33
33
|
"typescript": "^4.7.4"
|
|
34
34
|
},
|
|
35
|
-
"type": "module",
|
|
36
35
|
"dependencies": {
|
|
37
36
|
"@codingame/monaco-jsonrpc": "^0.4.0",
|
|
38
37
|
"@fortawesome/free-brands-svg-icons": "^6.1.1",
|
|
@@ -176,4 +175,4 @@
|
|
|
176
175
|
"./user": "./user.js",
|
|
177
176
|
"./utils": "./utils.js"
|
|
178
177
|
}
|
|
179
|
-
}
|
|
178
|
+
}
|
package/scripts.js
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadSchema = void 0;
|
|
4
|
+
const store_1 = require("svelte/store");
|
|
5
|
+
const gen_1 = require("./gen");
|
|
6
|
+
const infer_1 = require("./infer");
|
|
7
|
+
const stores_1 = require("./stores");
|
|
8
|
+
const utils_1 = require("./utils");
|
|
9
|
+
async function loadSchema(path) {
|
|
7
10
|
if (path.startsWith('hub/')) {
|
|
8
|
-
const code = await ScriptService.getHubScriptContentByPath({ path });
|
|
9
|
-
const schema = emptySchema();
|
|
10
|
-
await inferArgs('deno', code, schema);
|
|
11
|
+
const code = await gen_1.ScriptService.getHubScriptContentByPath({ path });
|
|
12
|
+
const schema = (0, utils_1.emptySchema)();
|
|
13
|
+
await (0, infer_1.inferArgs)('deno', code, schema);
|
|
11
14
|
return schema;
|
|
12
15
|
}
|
|
13
16
|
else {
|
|
14
|
-
const script = await ScriptService.getScriptByPath({
|
|
15
|
-
workspace: get(workspaceStore),
|
|
17
|
+
const script = await gen_1.ScriptService.getScriptByPath({
|
|
18
|
+
workspace: (0, store_1.get)(stores_1.workspaceStore),
|
|
16
19
|
path: path ?? ''
|
|
17
20
|
});
|
|
18
21
|
return script.schema;
|
|
19
22
|
}
|
|
20
23
|
}
|
|
24
|
+
exports.loadSchema = loadSchema;
|
package/stores.js
CHANGED
|
@@ -1,26 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.clearStores = exports.hubScripts = exports.superadmin = exports.usersWorkspaceStore = exports.workspaceStore = exports.userStore = void 0;
|
|
4
|
+
const env_1 = require("$app/env");
|
|
5
|
+
const store_1 = require("svelte/store");
|
|
6
|
+
const user_1 = require("./user");
|
|
7
|
+
let persistedWorkspace = env_1.browser && localStorage.getItem('workspace');
|
|
8
|
+
exports.userStore = (0, store_1.writable)(undefined);
|
|
9
|
+
exports.workspaceStore = (0, store_1.writable)(persistedWorkspace ? String(persistedWorkspace) : undefined);
|
|
10
|
+
exports.usersWorkspaceStore = (0, store_1.writable)(undefined);
|
|
11
|
+
exports.superadmin = (0, store_1.writable)(undefined);
|
|
12
|
+
exports.hubScripts = (0, store_1.writable)(undefined);
|
|
13
|
+
if (env_1.browser) {
|
|
14
|
+
exports.workspaceStore.subscribe(async (workspace) => {
|
|
12
15
|
if (workspace) {
|
|
13
16
|
localStorage.setItem('workspace', String(workspace));
|
|
14
|
-
userStore.set(await getUserExt(workspace));
|
|
17
|
+
exports.userStore.set(await (0, user_1.getUserExt)(workspace));
|
|
15
18
|
}
|
|
16
19
|
else {
|
|
17
|
-
userStore.set(undefined);
|
|
20
|
+
exports.userStore.set(undefined);
|
|
18
21
|
}
|
|
19
22
|
});
|
|
20
23
|
}
|
|
21
|
-
|
|
22
|
-
userStore.set(undefined);
|
|
23
|
-
workspaceStore.set(undefined);
|
|
24
|
-
usersWorkspaceStore.set(undefined);
|
|
25
|
-
superadmin.set(undefined);
|
|
24
|
+
function clearStores() {
|
|
25
|
+
exports.userStore.set(undefined);
|
|
26
|
+
exports.workspaceStore.set(undefined);
|
|
27
|
+
exports.usersWorkspaceStore.set(undefined);
|
|
28
|
+
exports.superadmin.set(undefined);
|
|
26
29
|
}
|
|
30
|
+
exports.clearStores = clearStores;
|
package/user.js
CHANGED
|
@@ -1,27 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getUserExt = exports.refreshSuperadmin = void 0;
|
|
4
|
+
const store_1 = require("svelte/store");
|
|
5
|
+
const gen_1 = require("$lib/gen");
|
|
6
|
+
const stores_js_1 = require("./stores.js");
|
|
7
|
+
async function refreshSuperadmin() {
|
|
8
|
+
if ((0, store_1.get)(stores_js_1.superadmin) == undefined) {
|
|
9
|
+
gen_1.UserService.globalWhoami().then((x) => {
|
|
7
10
|
if (x.super_admin) {
|
|
8
|
-
superadmin.set(x.email);
|
|
11
|
+
stores_js_1.superadmin.set(x.email);
|
|
9
12
|
}
|
|
10
13
|
else {
|
|
11
|
-
superadmin.set(false);
|
|
14
|
+
stores_js_1.superadmin.set(false);
|
|
12
15
|
}
|
|
13
16
|
});
|
|
14
17
|
}
|
|
15
18
|
}
|
|
16
|
-
|
|
19
|
+
exports.refreshSuperadmin = refreshSuperadmin;
|
|
20
|
+
async function getUserExt(workspace) {
|
|
17
21
|
try {
|
|
18
|
-
const user = await UserService.whoami({ workspace });
|
|
22
|
+
const user = await gen_1.UserService.whoami({ workspace });
|
|
19
23
|
return mapUserToUserExt(user);
|
|
20
24
|
}
|
|
21
25
|
catch (error) {
|
|
22
26
|
return undefined;
|
|
23
27
|
}
|
|
24
28
|
}
|
|
29
|
+
exports.getUserExt = getUserExt;
|
|
25
30
|
function mapUserToUserExt(user) {
|
|
26
31
|
return {
|
|
27
32
|
...user,
|
package/utils.js
CHANGED
|
@@ -1,19 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isString = exports.truncateRev = exports.truncate = exports.groupBy = exports.elapsedSinceSecs = exports.forLater = exports.allTrue = exports.removeKeysWithEmptyValues = exports.canWrite = exports.removeItemAll = exports.simpleSchema = exports.emptySchema = exports.clickOutside = exports.validatePassword = exports.sleep = exports.truncateHash = exports.sendUserToast = exports.getToday = exports.displayDate = exports.displayDaysAgo = exports.secondsAgo = exports.daysAgo = exports.isToday = void 0;
|
|
1
4
|
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
2
|
-
|
|
3
|
-
|
|
5
|
+
const svelte_toast_1 = require("@zerodevx/svelte-toast");
|
|
6
|
+
function isToday(someDate) {
|
|
4
7
|
const today = new Date();
|
|
5
8
|
return (someDate.getDate() == today.getDate() &&
|
|
6
9
|
someDate.getMonth() == today.getMonth() &&
|
|
7
10
|
someDate.getFullYear() == today.getFullYear());
|
|
8
11
|
}
|
|
9
|
-
|
|
12
|
+
exports.isToday = isToday;
|
|
13
|
+
function daysAgo(someDate) {
|
|
10
14
|
const today = new Date();
|
|
11
15
|
return Math.floor((today.getTime() - someDate.getTime()) / 86400000);
|
|
12
16
|
}
|
|
13
|
-
|
|
17
|
+
exports.daysAgo = daysAgo;
|
|
18
|
+
function secondsAgo(date) {
|
|
14
19
|
return Math.floor((new Date().getTime() - date.getTime()) / 1000);
|
|
15
20
|
}
|
|
16
|
-
|
|
21
|
+
exports.secondsAgo = secondsAgo;
|
|
22
|
+
function displayDaysAgo(dateString) {
|
|
17
23
|
const date = new Date(dateString);
|
|
18
24
|
const nbSecondsAgo = secondsAgo(date);
|
|
19
25
|
if (nbSecondsAgo < 600) {
|
|
@@ -26,7 +32,8 @@ export function displayDaysAgo(dateString) {
|
|
|
26
32
|
return `${daysAgo(date) + 1} days ago`;
|
|
27
33
|
}
|
|
28
34
|
}
|
|
29
|
-
|
|
35
|
+
exports.displayDaysAgo = displayDaysAgo;
|
|
36
|
+
function displayDate(dateString) {
|
|
30
37
|
const date = new Date(dateString ?? '');
|
|
31
38
|
if (date.toString() === 'Invalid Date') {
|
|
32
39
|
return '';
|
|
@@ -35,13 +42,15 @@ export function displayDate(dateString) {
|
|
|
35
42
|
return `${date.getFullYear()}/${date.getMonth() + 1}/${date.getDate()} at ${date.toLocaleTimeString()}`;
|
|
36
43
|
}
|
|
37
44
|
}
|
|
38
|
-
|
|
45
|
+
exports.displayDate = displayDate;
|
|
46
|
+
function getToday() {
|
|
39
47
|
var today = new Date();
|
|
40
48
|
return today;
|
|
41
49
|
}
|
|
42
|
-
|
|
50
|
+
exports.getToday = getToday;
|
|
51
|
+
function sendUserToast(message, error = false) {
|
|
43
52
|
if (error) {
|
|
44
|
-
toast.push(message, {
|
|
53
|
+
svelte_toast_1.toast.push(message, {
|
|
45
54
|
theme: {
|
|
46
55
|
'--toastBackground': '#FEE2E2',
|
|
47
56
|
'--toastBarBackground': '#FEE2E2'
|
|
@@ -49,9 +58,10 @@ export function sendUserToast(message, error = false) {
|
|
|
49
58
|
});
|
|
50
59
|
}
|
|
51
60
|
else
|
|
52
|
-
toast.push(message);
|
|
61
|
+
svelte_toast_1.toast.push(message);
|
|
53
62
|
}
|
|
54
|
-
|
|
63
|
+
exports.sendUserToast = sendUserToast;
|
|
64
|
+
function truncateHash(hash) {
|
|
55
65
|
if (hash.length >= 6) {
|
|
56
66
|
return hash.substr(hash.length - 6);
|
|
57
67
|
}
|
|
@@ -59,15 +69,18 @@ export function truncateHash(hash) {
|
|
|
59
69
|
return hash;
|
|
60
70
|
}
|
|
61
71
|
}
|
|
62
|
-
|
|
72
|
+
exports.truncateHash = truncateHash;
|
|
73
|
+
function sleep(ms) {
|
|
63
74
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
64
75
|
}
|
|
65
|
-
|
|
76
|
+
exports.sleep = sleep;
|
|
77
|
+
function validatePassword(password) {
|
|
66
78
|
const re = /^(?=.*[\d])(?=.*[!@#$%^&*])[\w!@#$%^&*]{8,30}$/;
|
|
67
79
|
return re.test(password);
|
|
68
80
|
}
|
|
81
|
+
exports.validatePassword = validatePassword;
|
|
69
82
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
70
|
-
|
|
83
|
+
function clickOutside(node) {
|
|
71
84
|
const handleClick = (event) => {
|
|
72
85
|
if (node && !node.contains(event.target) && !event.defaultPrevented) {
|
|
73
86
|
node.dispatchEvent(new CustomEvent('click_outside', node));
|
|
@@ -80,7 +93,8 @@ export function clickOutside(node) {
|
|
|
80
93
|
}
|
|
81
94
|
};
|
|
82
95
|
}
|
|
83
|
-
|
|
96
|
+
exports.clickOutside = clickOutside;
|
|
97
|
+
function emptySchema() {
|
|
84
98
|
return {
|
|
85
99
|
$schema: 'https://json-schema.org/draft/2020-12/schema',
|
|
86
100
|
properties: {},
|
|
@@ -88,7 +102,8 @@ export function emptySchema() {
|
|
|
88
102
|
type: 'object'
|
|
89
103
|
};
|
|
90
104
|
}
|
|
91
|
-
|
|
105
|
+
exports.emptySchema = emptySchema;
|
|
106
|
+
function simpleSchema() {
|
|
92
107
|
return {
|
|
93
108
|
$schema: 'https://json-schema.org/draft/2020-12/schema',
|
|
94
109
|
type: 'object',
|
|
@@ -101,7 +116,8 @@ export function simpleSchema() {
|
|
|
101
116
|
required: []
|
|
102
117
|
};
|
|
103
118
|
}
|
|
104
|
-
|
|
119
|
+
exports.simpleSchema = simpleSchema;
|
|
120
|
+
function removeItemAll(arr, value) {
|
|
105
121
|
var i = 0;
|
|
106
122
|
while (i < arr.length) {
|
|
107
123
|
if (arr[i] === value) {
|
|
@@ -113,7 +129,8 @@ export function removeItemAll(arr, value) {
|
|
|
113
129
|
}
|
|
114
130
|
return arr;
|
|
115
131
|
}
|
|
116
|
-
|
|
132
|
+
exports.removeItemAll = removeItemAll;
|
|
133
|
+
function canWrite(path, extra_perms, user) {
|
|
117
134
|
let keys = Object.keys(extra_perms);
|
|
118
135
|
if (!user) {
|
|
119
136
|
return false;
|
|
@@ -133,19 +150,24 @@ export function canWrite(path, extra_perms, user) {
|
|
|
133
150
|
}
|
|
134
151
|
return false;
|
|
135
152
|
}
|
|
136
|
-
|
|
153
|
+
exports.canWrite = canWrite;
|
|
154
|
+
function removeKeysWithEmptyValues(obj) {
|
|
137
155
|
Object.keys(obj).forEach((key) => (obj[key] === undefined ? delete obj[key] : {}));
|
|
138
156
|
}
|
|
139
|
-
|
|
157
|
+
exports.removeKeysWithEmptyValues = removeKeysWithEmptyValues;
|
|
158
|
+
function allTrue(dict) {
|
|
140
159
|
return Object.values(dict).every(Boolean);
|
|
141
160
|
}
|
|
142
|
-
|
|
161
|
+
exports.allTrue = allTrue;
|
|
162
|
+
function forLater(scheduledString) {
|
|
143
163
|
return new Date() < new Date(scheduledString);
|
|
144
164
|
}
|
|
145
|
-
|
|
165
|
+
exports.forLater = forLater;
|
|
166
|
+
function elapsedSinceSecs(date) {
|
|
146
167
|
return Math.round((new Date().getTime() - new Date(date).getTime()) / 1000);
|
|
147
168
|
}
|
|
148
|
-
|
|
169
|
+
exports.elapsedSinceSecs = elapsedSinceSecs;
|
|
170
|
+
function groupBy(scripts, toGroup, dflts = []) {
|
|
149
171
|
let r = {};
|
|
150
172
|
for (const dflt of dflts) {
|
|
151
173
|
r[dflt] = [];
|
|
@@ -173,7 +195,8 @@ export function groupBy(scripts, toGroup, dflts = []) {
|
|
|
173
195
|
}
|
|
174
196
|
});
|
|
175
197
|
}
|
|
176
|
-
|
|
198
|
+
exports.groupBy = groupBy;
|
|
199
|
+
function truncate(s, n, suffix = '...') {
|
|
177
200
|
if (s.length <= n) {
|
|
178
201
|
return s;
|
|
179
202
|
}
|
|
@@ -181,7 +204,8 @@ export function truncate(s, n, suffix = '...') {
|
|
|
181
204
|
return s.substring(0, n) + suffix;
|
|
182
205
|
}
|
|
183
206
|
}
|
|
184
|
-
|
|
207
|
+
exports.truncate = truncate;
|
|
208
|
+
function truncateRev(s, n, prefix = '...') {
|
|
185
209
|
if (s.length <= n) {
|
|
186
210
|
return s;
|
|
187
211
|
}
|
|
@@ -189,6 +213,8 @@ export function truncateRev(s, n, prefix = '...') {
|
|
|
189
213
|
return prefix + s.substring(s.length - n, s.length);
|
|
190
214
|
}
|
|
191
215
|
}
|
|
192
|
-
|
|
216
|
+
exports.truncateRev = truncateRev;
|
|
217
|
+
function isString(value) {
|
|
193
218
|
return typeof value === 'string' || value instanceof String;
|
|
194
219
|
}
|
|
220
|
+
exports.isString = isString;
|