@meridianjs/meridian 1.15.0 → 1.16.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.
@@ -0,0 +1,3 @@
1
+ import type { Response, NextFunction } from "express";
2
+ export declare const POST: (req: any, res: Response, next: NextFunction) => Promise<void>;
3
+ //# sourceMappingURL=route.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../../src/api/admin/projects/[id]/members/batch/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAGrD,eAAO,MAAM,IAAI,GAAU,KAAK,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,kBA+DrE,CAAA"}
@@ -0,0 +1,59 @@
1
+ import { requirePermission } from "@meridianjs/auth";
2
+ export const POST = async (req, res, next) => {
3
+ requirePermission("project:manage_access")(req, res, async () => {
4
+ try {
5
+ const projectMemberService = req.scope.resolve("projectMemberModuleService");
6
+ const projectService = req.scope.resolve("projectModuleService");
7
+ const eventBus = req.scope.resolve("eventBus");
8
+ const activityService = req.scope.resolve("activityModuleService");
9
+ const { user_ids, role } = req.body;
10
+ if (!Array.isArray(user_ids) || user_ids.length === 0) {
11
+ res.status(400).json({ error: { message: "user_ids must be a non-empty array" } });
12
+ return;
13
+ }
14
+ const projectRef = req.params.id;
15
+ const project = (await projectService.retrieveProject(projectRef).catch(() => null)) ??
16
+ (await projectService.retrieveProjectByIdentifier?.(projectRef).catch(() => null));
17
+ if (!project) {
18
+ res.status(404).json({ error: { message: `Project "${projectRef}" not found` } });
19
+ return;
20
+ }
21
+ const memberRole = role ?? "member";
22
+ let added = 0;
23
+ let skipped = 0;
24
+ for (const userId of user_ids) {
25
+ try {
26
+ await projectMemberService.ensureProjectMember(project.id, userId, memberRole);
27
+ added++;
28
+ }
29
+ catch {
30
+ skipped++;
31
+ continue;
32
+ }
33
+ eventBus.emit({
34
+ name: "project.member_added",
35
+ data: {
36
+ project_id: project.id,
37
+ project_name: project.name,
38
+ workspace_id: project.workspace_id,
39
+ user_id: userId,
40
+ actor_id: req.user?.id ?? "system",
41
+ },
42
+ }).catch(() => { });
43
+ activityService.recordActivity({
44
+ entity_type: "project",
45
+ entity_id: project.id,
46
+ actor_id: req.user?.id ?? "system",
47
+ action: "member_added",
48
+ workspace_id: project.workspace_id,
49
+ changes: { user_id: { from: null, to: userId }, role: { from: null, to: memberRole } },
50
+ }).catch(() => { });
51
+ }
52
+ res.status(201).json({ added, skipped });
53
+ }
54
+ catch (err) {
55
+ next(err);
56
+ }
57
+ });
58
+ };
59
+ //# sourceMappingURL=route.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../../../../../src/api/admin/projects/[id]/members/batch/route.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Response, NextFunction } from "express";
2
+ export declare const POST: (req: any, res: Response, next: NextFunction) => Promise<void>;
3
+ //# sourceMappingURL=route.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../../src/api/admin/projects/[id]/teams/batch/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAGrD,eAAO,MAAM,IAAI,GAAU,KAAK,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,kBAkDrE,CAAA"}
@@ -0,0 +1,47 @@
1
+ import { requirePermission } from "@meridianjs/auth";
2
+ export const POST = async (req, res, next) => {
3
+ requirePermission("project:manage_access")(req, res, async () => {
4
+ try {
5
+ const projectMemberService = req.scope.resolve("projectMemberModuleService");
6
+ const projectService = req.scope.resolve("projectModuleService");
7
+ const activityService = req.scope.resolve("activityModuleService");
8
+ const { team_ids } = req.body;
9
+ if (!Array.isArray(team_ids) || team_ids.length === 0) {
10
+ res.status(400).json({ error: { message: "team_ids must be a non-empty array" } });
11
+ return;
12
+ }
13
+ const projectRef = req.params.id;
14
+ const project = (await projectService.retrieveProject(projectRef).catch(() => null)) ??
15
+ (await projectService.retrieveProjectByIdentifier?.(projectRef).catch(() => null));
16
+ if (!project) {
17
+ res.status(404).json({ error: { message: `Project "${projectRef}" not found` } });
18
+ return;
19
+ }
20
+ let added = 0;
21
+ let skipped = 0;
22
+ for (const teamId of team_ids) {
23
+ try {
24
+ await projectMemberService.ensureProjectTeam(project.id, teamId);
25
+ added++;
26
+ }
27
+ catch {
28
+ skipped++;
29
+ continue;
30
+ }
31
+ activityService.recordActivity({
32
+ entity_type: "project",
33
+ entity_id: project.id,
34
+ actor_id: req.user?.id ?? "system",
35
+ action: "team_added",
36
+ workspace_id: project.workspace_id,
37
+ changes: { team_id: { from: null, to: teamId } },
38
+ }).catch(() => { });
39
+ }
40
+ res.status(201).json({ added, skipped });
41
+ }
42
+ catch (err) {
43
+ next(err);
44
+ }
45
+ });
46
+ };
47
+ //# sourceMappingURL=route.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../../../../../src/api/admin/projects/[id]/teams/batch/route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EAAE,GAAQ,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;IACxE,iBAAiB,CAAC,uBAAuB,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;QAC9D,IAAI,CAAC;YACH,MAAM,oBAAoB,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,4BAA4B,CAAQ,CAAA;YACnF,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAQ,CAAA;YACvE,MAAM,eAAe,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,uBAAuB,CAAQ,CAAA;YAEzE,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,IAAI,CAAA;YAE7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,oCAAoC,EAAE,EAAE,CAAC,CAAA;gBAClF,OAAM;YACR,CAAC;YAED,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAA;YAChC,MAAM,OAAO,GACX,CAAC,MAAM,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBACpE,CAAC,MAAM,cAAc,CAAC,2BAA2B,EAAE,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;YACpF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,YAAY,UAAU,aAAa,EAAE,EAAE,CAAC,CAAA;gBACjF,OAAM;YACR,CAAC;YAED,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,IAAI,OAAO,GAAG,CAAC,CAAA;YAEf,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC9B,IAAI,CAAC;oBACH,MAAM,oBAAoB,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;oBAChE,KAAK,EAAE,CAAA;gBACT,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,EAAE,CAAA;oBACT,SAAQ;gBACV,CAAC;gBAED,eAAe,CAAC,cAAc,CAAC;oBAC7B,WAAW,EAAE,SAAS;oBACtB,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,QAAQ;oBAClC,MAAM,EAAE,YAAY;oBACpB,YAAY,EAAE,OAAO,CAAC,YAAY;oBAClC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE;iBACjD,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YACpB,CAAC;YAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;QAC1C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,CAAA;QACX,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { Response, NextFunction } from "express";
2
+ export declare const POST: (req: any, res: Response, next: NextFunction) => Promise<void>;
3
+ //# sourceMappingURL=route.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../../../../src/api/admin/workspaces/[id]/members/batch/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAGrD,eAAO,MAAM,IAAI,GAAU,KAAK,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,kBA6ErE,CAAA"}
@@ -0,0 +1,71 @@
1
+ import { requirePermission } from "@meridianjs/auth";
2
+ export const POST = async (req, res, next) => {
3
+ requirePermission("member:invite")(req, res, async () => {
4
+ try {
5
+ const workspaceService = req.scope.resolve("workspaceModuleService");
6
+ const workspaceMemberService = req.scope.resolve("workspaceMemberModuleService");
7
+ const workspace = await workspaceService.retrieveWorkspace(req.params.id);
8
+ if (!workspace) {
9
+ res.status(404).json({ error: { message: "Workspace not found" } });
10
+ return;
11
+ }
12
+ const roles = req.user?.roles ?? [];
13
+ const isPrivileged = roles.includes("super-admin") || roles.includes("admin");
14
+ if (workspace.is_private || !isPrivileged) {
15
+ const membership = await workspaceMemberService.getMembership(req.params.id, req.user?.id);
16
+ if (!membership) {
17
+ res.status(403).json({ error: { message: "Forbidden — not a member of this workspace" } });
18
+ return;
19
+ }
20
+ }
21
+ const { user_ids, role, app_role_id } = req.body;
22
+ if (!Array.isArray(user_ids) || user_ids.length === 0) {
23
+ res.status(400).json({ error: { message: "user_ids must be a non-empty array" } });
24
+ return;
25
+ }
26
+ const wsRole = role === "member" ? "member" : "admin";
27
+ let added = 0;
28
+ let skipped = 0;
29
+ for (const userId of user_ids) {
30
+ const existing = await workspaceMemberService.getMembership(req.params.id, userId);
31
+ if (existing) {
32
+ skipped++;
33
+ continue;
34
+ }
35
+ await workspaceMemberService.createWorkspaceMember({
36
+ workspace_id: req.params.id,
37
+ user_id: userId,
38
+ role: wsRole,
39
+ });
40
+ added++;
41
+ const eventBus = req.scope.resolve("eventBus");
42
+ eventBus.emit({
43
+ name: "workspace.member_added",
44
+ data: {
45
+ workspace_id: req.params.id,
46
+ user_id: userId,
47
+ role: wsRole,
48
+ actor_id: req.user?.id ?? "system",
49
+ },
50
+ }).catch(() => { });
51
+ }
52
+ // Optionally assign custom app role to all added users
53
+ if (app_role_id) {
54
+ try {
55
+ const userService = req.scope.resolve("userModuleService");
56
+ for (const userId of user_ids) {
57
+ await userService.updateUser(userId, { app_role_id }).catch(() => { });
58
+ }
59
+ }
60
+ catch {
61
+ // Non-fatal
62
+ }
63
+ }
64
+ res.status(201).json({ added, skipped });
65
+ }
66
+ catch (err) {
67
+ next(err);
68
+ }
69
+ });
70
+ };
71
+ //# sourceMappingURL=route.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.js","sourceRoot":"","sources":["../../../../../../../src/api/admin/workspaces/[id]/members/batch/route.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meridianjs/meridian",
3
- "version": "1.15.0",
3
+ "version": "1.16.0",
4
4
  "description": "Default API routes, workflows, links, and subscribers for Meridian applications",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -20,13 +20,13 @@
20
20
  "prepublishOnly": "cd ../.. && npm run check:routes && cd packages/meridian && npm run build"
21
21
  },
22
22
  "dependencies": {
23
- "@meridianjs/framework": "^1.15.0",
24
- "@meridianjs/framework-utils": "^1.15.0",
25
- "@meridianjs/workflow-engine": "^1.15.0",
26
- "@meridianjs/types": "^1.15.0",
23
+ "@meridianjs/framework": "^1.16.0",
24
+ "@meridianjs/framework-utils": "^1.16.0",
25
+ "@meridianjs/workflow-engine": "^1.16.0",
26
+ "@meridianjs/types": "^1.16.0",
27
27
  "@meridianjs/user": "^1.0.0",
28
28
  "@meridianjs/workspace": "^1.2.0",
29
- "@meridianjs/auth": "^1.15.0",
29
+ "@meridianjs/auth": "^1.16.0",
30
30
  "@meridianjs/project": "^1.1.0",
31
31
  "@meridianjs/issue": "^1.3.0",
32
32
  "@meridianjs/sprint": "^1.0.0",