@jskit-ai/workspaces-core 0.1.37 → 0.1.39
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/package.descriptor.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export default Object.freeze({
|
|
2
2
|
packageVersion: 1,
|
|
3
3
|
packageId: "@jskit-ai/workspaces-core",
|
|
4
|
-
version: "0.1.
|
|
4
|
+
version: "0.1.39",
|
|
5
5
|
kind: "runtime",
|
|
6
6
|
description: "Workspace tenancy runtime plus HTTP routes, role catalog, and workspace config scaffolding.",
|
|
7
7
|
dependsOn: [
|
|
@@ -34,6 +34,32 @@ export default Object.freeze({
|
|
|
34
34
|
}
|
|
35
35
|
},
|
|
36
36
|
metadata: {
|
|
37
|
+
jskit: {
|
|
38
|
+
tableOwnership: {
|
|
39
|
+
tables: [
|
|
40
|
+
{
|
|
41
|
+
tableName: "workspaces",
|
|
42
|
+
provenance: "runtime-package",
|
|
43
|
+
ownerKind: "package-runtime"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
tableName: "workspace_memberships",
|
|
47
|
+
provenance: "runtime-package",
|
|
48
|
+
ownerKind: "package-runtime"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
tableName: "workspace_settings",
|
|
52
|
+
provenance: "runtime-package",
|
|
53
|
+
ownerKind: "package-runtime"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
tableName: "workspace_invites",
|
|
57
|
+
provenance: "runtime-package",
|
|
58
|
+
ownerKind: "package-runtime"
|
|
59
|
+
}
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
},
|
|
37
63
|
apiSummary: {
|
|
38
64
|
surfaces: [
|
|
39
65
|
{
|
|
@@ -116,10 +142,10 @@ export default Object.freeze({
|
|
|
116
142
|
mutations: {
|
|
117
143
|
dependencies: {
|
|
118
144
|
runtime: {
|
|
119
|
-
"@jskit-ai/json-rest-api-core": "0.1.
|
|
120
|
-
"@jskit-ai/resource-core": "0.1.
|
|
121
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
122
|
-
"@jskit-ai/users-core": "0.1.
|
|
145
|
+
"@jskit-ai/json-rest-api-core": "0.1.8",
|
|
146
|
+
"@jskit-ai/resource-core": "0.1.8",
|
|
147
|
+
"@jskit-ai/resource-crud-core": "0.1.8",
|
|
148
|
+
"@jskit-ai/users-core": "0.1.73"
|
|
123
149
|
},
|
|
124
150
|
dev: {}
|
|
125
151
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jskit-ai/workspaces-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.39",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "node --test"
|
|
@@ -17,14 +17,14 @@
|
|
|
17
17
|
"./shared/resources/workspaceSettingsResource": "./src/shared/resources/workspaceSettingsResource.js"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@jskit-ai/auth-core": "0.1.
|
|
21
|
-
"@jskit-ai/database-runtime": "0.1.
|
|
22
|
-
"@jskit-ai/http-runtime": "0.1.
|
|
23
|
-
"@jskit-ai/json-rest-api-core": "0.1.
|
|
24
|
-
"@jskit-ai/kernel": "0.1.
|
|
25
|
-
"@jskit-ai/resource-crud-core": "0.1.
|
|
26
|
-
"@jskit-ai/resource-core": "0.1.
|
|
27
|
-
"@jskit-ai/users-core": "0.1.
|
|
20
|
+
"@jskit-ai/auth-core": "0.1.62",
|
|
21
|
+
"@jskit-ai/database-runtime": "0.1.63",
|
|
22
|
+
"@jskit-ai/http-runtime": "0.1.62",
|
|
23
|
+
"@jskit-ai/json-rest-api-core": "0.1.8",
|
|
24
|
+
"@jskit-ai/kernel": "0.1.63",
|
|
25
|
+
"@jskit-ai/resource-crud-core": "0.1.8",
|
|
26
|
+
"@jskit-ai/resource-core": "0.1.8",
|
|
27
|
+
"@jskit-ai/users-core": "0.1.73",
|
|
28
28
|
"json-rest-schema": "1.x.x"
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -289,16 +289,13 @@ function createRepository({ api, knex } = {}) {
|
|
|
289
289
|
return [];
|
|
290
290
|
}
|
|
291
291
|
|
|
292
|
-
const rows = await queryMemberships(
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
},
|
|
297
|
-
options
|
|
298
|
-
);
|
|
292
|
+
const rows = await queryMemberships({
|
|
293
|
+
user: normalizedUserId,
|
|
294
|
+
status: "active"
|
|
295
|
+
}, options);
|
|
299
296
|
|
|
300
297
|
return rows
|
|
301
|
-
.map((row) => normalizeDbRecordId(row?.
|
|
298
|
+
.map((row) => normalizeDbRecordId(row?.workspaceId, { fallback: null }))
|
|
302
299
|
.filter(Boolean);
|
|
303
300
|
}
|
|
304
301
|
|
|
@@ -72,11 +72,24 @@ function createWorkspaceMembershipsApiStub({
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
if (Object.hasOwn(filters, "user") && Object.hasOwn(filters, "status")) {
|
|
75
|
+
const includeWorkspace = Array.isArray(queryParams?.include) && queryParams.include.includes("workspace");
|
|
75
76
|
const rows = [...rowByComposite.values()].filter((row) => (
|
|
76
77
|
String(row?.user?.id || "") === String(filters.user) &&
|
|
77
78
|
String(row?.status || "") === String(filters.status)
|
|
78
79
|
));
|
|
79
|
-
return asCollectionDocument(rows.map((row) =>
|
|
80
|
+
return asCollectionDocument(rows.map((row) => {
|
|
81
|
+
if (includeWorkspace) {
|
|
82
|
+
return toWorkspaceMembershipRow(row);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
return {
|
|
86
|
+
...toWorkspaceMembershipRow({
|
|
87
|
+
...row,
|
|
88
|
+
workspace: null
|
|
89
|
+
}),
|
|
90
|
+
workspaceId: row?.workspace?.id == null ? null : String(row.workspace.id)
|
|
91
|
+
};
|
|
92
|
+
}));
|
|
80
93
|
}
|
|
81
94
|
|
|
82
95
|
return asCollectionDocument([]);
|
|
@@ -251,7 +264,7 @@ test("workspaceMembershipsRepository.listActiveWorkspaceIdsByUserId returns norm
|
|
|
251
264
|
createdAt: "2026-03-09 00:26:35.710",
|
|
252
265
|
updatedAt: "2026-03-10 00:26:35.710"
|
|
253
266
|
};
|
|
254
|
-
const { api } = createWorkspaceMembershipsApiStub({
|
|
267
|
+
const { api, state } = createWorkspaceMembershipsApiStub({
|
|
255
268
|
rowByComposite: new Map([["7:9", membershipRow]])
|
|
256
269
|
});
|
|
257
270
|
const repository = createRepository({ api, knex: createKnexStub() });
|
|
@@ -259,4 +272,12 @@ test("workspaceMembershipsRepository.listActiveWorkspaceIdsByUserId returns norm
|
|
|
259
272
|
const workspaceIds = await repository.listActiveWorkspaceIdsByUserId("9");
|
|
260
273
|
|
|
261
274
|
assert.deepEqual(workspaceIds, ["7"]);
|
|
275
|
+
assert.deepEqual(state.queryCalls, [
|
|
276
|
+
{
|
|
277
|
+
filters: {
|
|
278
|
+
user: "9",
|
|
279
|
+
status: "active"
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
]);
|
|
262
283
|
});
|