@burdenoff/sdk-libs 2026.522.1 → 2026.523.1

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.
@@ -2,43 +2,61 @@ import { J as Json, P as PaginationInput, S as SdkModule } from '../../module-JD
2
2
  import 'graphql-request';
3
3
 
4
4
  type WorkspaceStatus = 'ACTIVE' | 'ARCHIVED' | 'DELETED' | 'SUSPENDED';
5
+ type WorkspaceType = 'PERSONAL' | 'TEAM' | 'ORGANIZATION';
5
6
  interface Workspace {
6
7
  id: string;
7
8
  name: string;
8
- slug: string;
9
- description?: string | null;
10
- tenantId: string;
11
- organizationId?: string | null;
9
+ type: WorkspaceType;
12
10
  status: WorkspaceStatus;
11
+ tenantId: string;
12
+ orgId?: string | null;
13
+ ownerId: string;
14
+ domain?: string | null;
15
+ contactEmail?: string | null;
16
+ website?: string | null;
17
+ address?: string | null;
13
18
  createdAt: string;
14
19
  updatedAt: string;
20
+ createdBy?: string | null;
21
+ deletedAt?: string | null;
15
22
  }
16
23
  interface WorkspaceList {
17
24
  items: Workspace[];
18
25
  total: number;
19
26
  hasMore: boolean;
20
27
  }
28
+ interface WorkspaceFilterInput {
29
+ status?: WorkspaceStatus;
30
+ type?: WorkspaceType;
31
+ ownerId?: string;
32
+ search?: string;
33
+ }
21
34
  interface CreateWorkspaceInput {
22
35
  name: string;
23
- slug?: string;
24
- description?: string;
25
- organizationId?: string;
26
- metadata?: Json;
36
+ type?: WorkspaceType;
37
+ orgId?: string;
38
+ domain?: string;
39
+ contactEmail?: string;
40
+ website?: string;
41
+ address?: string;
27
42
  }
28
43
  interface UpdateWorkspaceInput {
29
44
  name?: string;
30
- description?: string;
31
45
  status?: WorkspaceStatus;
32
- metadata?: Json;
46
+ domain?: string;
47
+ contactEmail?: string;
48
+ website?: string;
49
+ address?: string;
33
50
  }
34
51
  type WorkspaceMemberRole = 'OWNER' | 'ADMIN' | 'MEMBER' | 'VIEWER';
35
52
  interface WorkspaceMember {
36
53
  id: string;
37
54
  userId: string;
38
- email?: string | null;
39
- role: WorkspaceMemberRole;
40
- status?: string | null;
41
- joinedAt?: string | null;
55
+ workspaceId: string;
56
+ role: string;
57
+ status: string;
58
+ createdAt: string;
59
+ updatedAt: string;
42
60
  }
43
61
  interface WorkspaceMemberList {
44
62
  items: WorkspaceMember[];
@@ -57,11 +75,14 @@ interface UpdateWorkspaceMemberRolesInput {
57
75
  interface Project {
58
76
  id: string;
59
77
  name: string;
60
- description?: string | null;
78
+ key: string;
61
79
  workspaceId: string;
62
80
  status: string;
81
+ archived: boolean;
82
+ creatorId: string;
63
83
  createdAt: string;
64
- updatedAt?: string | null;
84
+ updatedAt: string;
85
+ deletedAt?: string | null;
65
86
  }
66
87
  interface ProjectList {
67
88
  items: Project[];
@@ -71,24 +92,31 @@ interface ProjectList {
71
92
  interface CreateProjectInput {
72
93
  workspaceId: string;
73
94
  name: string;
74
- description?: string;
95
+ key: string;
96
+ config?: Json;
75
97
  }
76
98
  interface ProjectFilterInput {
77
99
  workspaceId?: string;
78
100
  status?: string;
79
101
  search?: string;
102
+ archived?: boolean;
80
103
  }
81
104
  interface WorkspaceActivity {
82
105
  id: string;
83
106
  action: string;
84
- actorId?: string | null;
85
- summary?: string | null;
107
+ actorId: string;
108
+ workspaceId: string;
109
+ resourceType?: string | null;
110
+ resourceId?: string | null;
111
+ metadata?: Json;
86
112
  createdAt: string;
87
113
  }
88
114
  interface WorkspaceInvite {
89
115
  id: string;
90
116
  status: string;
91
- workspaceId: string;
117
+ workspaceId?: string | null;
118
+ email?: string | null;
119
+ expiresAt?: string | null;
92
120
  }
93
121
 
94
122
  interface WorkspaceMembersApi {
@@ -105,21 +133,19 @@ interface WorkspaceProjectsApi {
105
133
  interface WorkspaceInvitesApi {
106
134
  accept(id: string): Promise<WorkspaceInvite>;
107
135
  }
136
+ interface WorkspacesListOptions {
137
+ filter?: WorkspaceFilterInput;
138
+ pagination?: PaginationInput;
139
+ }
108
140
  interface WorkspacesApi {
109
- list(opts?: {
110
- limit?: number;
111
- offset?: number;
112
- }): Promise<WorkspaceList>;
141
+ list(opts?: WorkspacesListOptions): Promise<WorkspaceList>;
113
142
  get(id: string): Promise<Workspace | null>;
114
143
  create(input: CreateWorkspaceInput): Promise<Workspace>;
115
144
  update(id: string, input: UpdateWorkspaceInput): Promise<Workspace>;
116
145
  delete(id: string): Promise<boolean>;
117
146
  members: WorkspaceMembersApi;
118
147
  projects: WorkspaceProjectsApi;
119
- activity(workspaceId: string, opts?: {
120
- limit?: number;
121
- offset?: number;
122
- }): Promise<WorkspaceActivity[]>;
148
+ activity(workspaceId: string): Promise<WorkspaceActivity[]>;
123
149
  invites: WorkspaceInvitesApi;
124
150
  }
125
151
 
@@ -1,19 +1,22 @@
1
1
  var o=`
2
2
  fragment WorkspaceFields on Workspace {
3
- id name slug description tenantId organizationId status createdAt updatedAt
3
+ id name type status tenantId orgId ownerId
4
+ domain contactEmail website address
5
+ createdAt updatedAt createdBy deletedAt
4
6
  }
5
7
  `,p=`
6
8
  fragment WorkspaceMemberFields on WorkspaceMember {
7
- id userId email role status joinedAt
9
+ id userId workspaceId role status createdAt updatedAt
8
10
  }
9
11
  `,c=`
10
12
  fragment ProjectFields on Project {
11
- id name description workspaceId status createdAt updatedAt
13
+ id name key workspaceId status archived
14
+ createdAt updatedAt creatorId deletedAt
12
15
  }
13
16
  `,d=`
14
17
  ${o}
15
- query Workspaces($limit: Int, $offset: Int) {
16
- workspaces(limit: $limit, offset: $offset) {
18
+ query Workspaces($filter: WorkspaceFilterInput, $pagination: PaginationInput) {
19
+ workspaces(filter: $filter, pagination: $pagination) {
17
20
  items { ...WorkspaceFields }
18
21
  total
19
22
  hasMore
@@ -36,7 +39,7 @@ var o=`
36
39
  }
37
40
  `,m=`
38
41
  mutation DeleteWorkspace($id: ID!) { deleteWorkspace(id: $id) }
39
- `,P=`
42
+ `,I=`
40
43
  ${p}
41
44
  query WorkspaceMembers($workspaceId: ID!, $pagination: PaginationInput) {
42
45
  workspaceMembers(workspaceId: $workspaceId, pagination: $pagination) {
@@ -45,19 +48,19 @@ var o=`
45
48
  hasMore
46
49
  }
47
50
  }
48
- `,l=`
51
+ `,P=`
49
52
  ${p}
50
53
  mutation AddWorkspaceMember($input: AddWorkspaceMemberInput!) {
51
54
  addWorkspaceMember(input: $input) { ...WorkspaceMemberFields }
52
55
  }
53
- `,I=`
56
+ `,l=`
54
57
  mutation RemoveWorkspaceMember($id: ID!) { removeWorkspaceMember(id: $id) }
55
- `,E=`
58
+ `,A=`
56
59
  ${p}
57
60
  mutation UpdateWorkspaceMemberRoles($input: UpdateWorkspaceMemberRolesInput!) {
58
61
  updateWorkspaceMemberRoles(input: $input) { ...WorkspaceMemberFields }
59
62
  }
60
- `,A=`
63
+ `,E=`
61
64
  ${c}
62
65
  query Projects($filter: ProjectFilterInput, $pagination: PaginationInput) {
63
66
  projects(filter: $filter, pagination: $pagination) {
@@ -77,15 +80,16 @@ var o=`
77
80
  createProject(input: $input) { ...ProjectFields }
78
81
  }
79
82
  `,b=`
80
- query WorkspaceActivity($workspaceId: ID!, $limit: Int, $offset: Int) {
81
- getWorkspaceActivities(workspaceId: $workspaceId, limit: $limit, offset: $offset) {
82
- id action actorId summary createdAt
83
+ query WorkspaceActivity($workspaceId: ID!) {
84
+ workspaceActivity(workspaceId: $workspaceId) {
85
+ id action actorId resourceType resourceId
86
+ workspaceId metadata createdAt
83
87
  }
84
88
  }
85
89
  `,C=`
86
90
  mutation AcceptInvitation($id: ID!) {
87
91
  acceptInvitation(id: $id) {
88
- id status workspaceId
92
+ id status workspaceId email expiresAt
89
93
  }
90
94
  }
91
- `;function $(s){let{workspace:r}=s.gql;return {async list(e){return (await r.request(d,{limit:e?.limit,offset:e?.offset})).workspaces},async get(e){return (await r.request(k,{id:e})).workspace},async create(e){return (await r.request(W,{input:e})).createWorkspace},async update(e,t){return (await r.request(u,{id:e,input:t})).updateWorkspace},async delete(e){return (await r.request(m,{id:e})).deleteWorkspace},members:{async list(e,t){return (await r.request(P,{workspaceId:e,pagination:t})).workspaceMembers},async add(e){return (await r.request(l,{input:e})).addWorkspaceMember},async remove(e){return (await r.request(I,{id:e})).removeWorkspaceMember},async role(e,t){let a={id:e,role:t};return (await r.request(E,{input:a})).updateWorkspaceMemberRoles}},projects:{async list(e,t){return (await r.request(A,{filter:e,pagination:t})).projects},async get(e){return (await r.request(M,{id:e})).project},async create(e){return (await r.request(R,{input:e})).createProject}},async activity(e,t){return (await r.request(b,{workspaceId:e,limit:t?.limit,offset:t?.offset})).getWorkspaceActivities},invites:{async accept(e){return (await r.request(C,{id:e})).acceptInvitation}}}}var j={id:"workspaces",version:"1.0.0",displayName:"Workspaces",dependsOn:["auth"],attach(s){return $(s)}},O=j;export{O as default};
95
+ `;function j(s){let{workspace:r}=s.gql;return {async list(e){return (await r.request(d,{filter:e?.filter,pagination:e?.pagination})).workspaces},async get(e){return (await r.request(k,{id:e})).workspace},async create(e){return (await r.request(W,{input:e})).createWorkspace},async update(e,t){return (await r.request(u,{id:e,input:t})).updateWorkspace},async delete(e){return (await r.request(m,{id:e})).deleteWorkspace},members:{async list(e,t){return (await r.request(I,{workspaceId:e,pagination:t})).workspaceMembers},async add(e){return (await r.request(P,{input:e})).addWorkspaceMember},async remove(e){return (await r.request(l,{id:e})).removeWorkspaceMember},async role(e,t){let a={id:e,role:t};return (await r.request(A,{input:a})).updateWorkspaceMemberRoles}},projects:{async list(e,t){return (await r.request(E,{filter:e,pagination:t})).projects},async get(e){return (await r.request(M,{id:e})).project},async create(e){return (await r.request(R,{input:e})).createProject}},async activity(e){let t=await r.request(b,{workspaceId:e});return t.workspaceActivity?[t.workspaceActivity]:[]},invites:{async accept(e){return (await r.request(C,{id:e})).acceptInvitation}}}}var S={id:"workspaces",version:"1.0.0",displayName:"Workspaces",dependsOn:["auth"],attach(s){return j(s)}},v=S;export{v as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/sdk-libs",
3
- "version": "2026.522.1",
3
+ "version": "2026.523.1",
4
4
  "description": "Modular SDK library shared across all Burdenoff product SDKs (vibecontrols, botlit, fluidgrids, bigconsole, healthybowl, devportal, workspaces). Each module exports an SdkModule contract with attach(ctx) returning a typed API; product SDKs become thin shells that pick which modules to mount. Sister to @burdenoff/cli-sdk.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -41,7 +41,7 @@
41
41
  "test:watch": "vitest",
42
42
  "test:coverage": "vitest run --coverage",
43
43
  "clean": "rimraf dist .eslintcache",
44
- "sanity": "bun run format:check && bun run lint:sanity && bun run type-check && bun run build && bun run test",
44
+ "sanity": "bun run format:check && bun run lint:sanity && bun run type-check && bun run build && bun run test && bun run parity:check",
45
45
  "codegen": "bun scripts/codegen.ts",
46
46
  "codegen:check": "bun scripts/codegen.ts --check",
47
47
  "parity:check": "bun scripts/parity-check.ts",
@@ -73,7 +73,7 @@
73
73
  "homepage": "https://github.com/algoshred/sdk-libs-node#readme",
74
74
  "publishConfig": {
75
75
  "access": "restricted",
76
- "registry": "https://verdaccio.tooling.internal.burdenoff.com/"
76
+ "registry": "https://registry.npmjs.org/"
77
77
  },
78
78
  "dependencies": {
79
79
  "cross-fetch": "^4.1.0"