@ragwalla/agents-sdk 1.3.0 → 1.4.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.
Files changed (55) hide show
  1. package/README.md +54 -0
  2. package/dist/client/http-client.d.ts.map +1 -1
  3. package/dist/client/http-client.js +3 -1
  4. package/dist/client/http-client.js.map +1 -1
  5. package/dist/client/websocket-client.d.ts +5 -1
  6. package/dist/client/websocket-client.d.ts.map +1 -1
  7. package/dist/client/websocket-client.js +26 -5
  8. package/dist/client/websocket-client.js.map +1 -1
  9. package/dist/index.d.ts +21 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +39 -36
  12. package/dist/index.js.map +1 -1
  13. package/dist/resources/agents.d.ts +84 -6
  14. package/dist/resources/agents.d.ts.map +1 -1
  15. package/dist/resources/agents.js +90 -6
  16. package/dist/resources/agents.js.map +1 -1
  17. package/dist/resources/assistants.d.ts +32 -0
  18. package/dist/resources/assistants.d.ts.map +1 -0
  19. package/dist/resources/assistants.js +128 -0
  20. package/dist/resources/assistants.js.map +1 -0
  21. package/dist/resources/channels.d.ts +33 -0
  22. package/dist/resources/channels.d.ts.map +1 -0
  23. package/dist/resources/channels.js +39 -0
  24. package/dist/resources/channels.js.map +1 -0
  25. package/dist/resources/mcp-servers.d.ts +55 -0
  26. package/dist/resources/mcp-servers.d.ts.map +1 -0
  27. package/dist/resources/mcp-servers.js +63 -0
  28. package/dist/resources/mcp-servers.js.map +1 -0
  29. package/dist/resources/models.d.ts +11 -0
  30. package/dist/resources/models.d.ts.map +1 -0
  31. package/dist/resources/models.js +13 -0
  32. package/dist/resources/models.js.map +1 -0
  33. package/dist/resources/organizations.d.ts +40 -0
  34. package/dist/resources/organizations.d.ts.map +1 -0
  35. package/dist/resources/organizations.js +51 -0
  36. package/dist/resources/organizations.js.map +1 -0
  37. package/dist/resources/skills.d.ts +39 -0
  38. package/dist/resources/skills.d.ts.map +1 -0
  39. package/dist/resources/skills.js +45 -0
  40. package/dist/resources/skills.js.map +1 -0
  41. package/dist/resources/threads.d.ts +51 -0
  42. package/dist/resources/threads.d.ts.map +1 -0
  43. package/dist/resources/threads.js +31 -0
  44. package/dist/resources/threads.js.map +1 -0
  45. package/dist/resources/workspace-files.d.ts +35 -0
  46. package/dist/resources/workspace-files.d.ts.map +1 -0
  47. package/dist/resources/workspace-files.js +43 -0
  48. package/dist/resources/workspace-files.js.map +1 -0
  49. package/dist/types/index.d.ts +498 -6
  50. package/dist/types/index.d.ts.map +1 -1
  51. package/dist/workers.d.ts +12 -0
  52. package/dist/workers.d.ts.map +1 -1
  53. package/dist/workers.js +16 -0
  54. package/dist/workers.js.map +1 -1
  55. package/package.json +2 -1
@@ -0,0 +1,39 @@
1
+ import { HTTPClient } from '../client/http-client';
2
+ import { Skill, SkillSummary, InstalledSkill, CreateSkillRequest, InstallSkillResponse, UninstallSkillResponse } from '../types';
3
+ export declare class SkillsResource {
4
+ private client;
5
+ constructor(client: HTTPClient);
6
+ /**
7
+ * Create a new skill in the project registry
8
+ */
9
+ create(request: CreateSkillRequest): Promise<Skill>;
10
+ /**
11
+ * List all skills available in the project
12
+ */
13
+ list(params?: {
14
+ search?: string;
15
+ }): Promise<{
16
+ skills: SkillSummary[];
17
+ }>;
18
+ /**
19
+ * Retrieve a specific skill by ID
20
+ */
21
+ retrieve(skillId: string): Promise<Skill>;
22
+ /**
23
+ * Install a skill on an agent.
24
+ * Materializes skill tools into agent_tool_access and deploys to dispatch namespace.
25
+ */
26
+ install(agentId: string, skillId: string, config?: Record<string, unknown>): Promise<InstallSkillResponse>;
27
+ /**
28
+ * Uninstall a skill from an agent.
29
+ * Removes dispatch workers and agent_tool_access rows.
30
+ */
31
+ uninstall(agentId: string, skillId: string): Promise<UninstallSkillResponse>;
32
+ /**
33
+ * List skills installed on an agent
34
+ */
35
+ listAgentSkills(agentId: string): Promise<{
36
+ skills: InstalledSkill[];
37
+ }>;
38
+ }
39
+ //# sourceMappingURL=skills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/resources/skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACL,KAAK,EACL,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAElB,qBAAa,cAAc;IACb,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEtC;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;IAIzD;;OAEG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,YAAY,EAAE,CAAA;KAAE,CAAC;IAI7E;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAI/C;;;OAGG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAOhH;;;OAGG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAIlF;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,cAAc,EAAE,CAAA;KAAE,CAAC;CAG9E"}
@@ -0,0 +1,45 @@
1
+ export class SkillsResource {
2
+ client;
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ /**
7
+ * Create a new skill in the project registry
8
+ */
9
+ async create(request) {
10
+ return this.client.post('/v1/skills', request);
11
+ }
12
+ /**
13
+ * List all skills available in the project
14
+ */
15
+ async list(params) {
16
+ return this.client.get('/v1/skills', params);
17
+ }
18
+ /**
19
+ * Retrieve a specific skill by ID
20
+ */
21
+ async retrieve(skillId) {
22
+ return this.client.get(`/v1/skills/${skillId}`);
23
+ }
24
+ /**
25
+ * Install a skill on an agent.
26
+ * Materializes skill tools into agent_tool_access and deploys to dispatch namespace.
27
+ */
28
+ async install(agentId, skillId, config) {
29
+ return this.client.post(`/v1/agents/${agentId}/skills/${skillId}`, config ? { config } : {});
30
+ }
31
+ /**
32
+ * Uninstall a skill from an agent.
33
+ * Removes dispatch workers and agent_tool_access rows.
34
+ */
35
+ async uninstall(agentId, skillId) {
36
+ return this.client.delete(`/v1/agents/${agentId}/skills/${skillId}`);
37
+ }
38
+ /**
39
+ * List skills installed on an agent
40
+ */
41
+ async listAgentSkills(agentId) {
42
+ return this.client.get(`/v1/agents/${agentId}/skills`);
43
+ }
44
+ }
45
+ //# sourceMappingURL=skills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/resources/skills.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,cAAc;IACL;IAApB,YAAoB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAE1C;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,OAA2B;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAQ,YAAY,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,MAA4B;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAA6B,YAAY,EAAE,MAAM,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAe;QAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAQ,cAAc,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,OAAe,EAAE,MAAgC;QAC9E,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CACrB,cAAc,OAAO,WAAW,OAAO,EAAE,EACzC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CACzB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,OAAe,EAAE,OAAe;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAyB,cAAc,OAAO,WAAW,OAAO,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,OAAe;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAA+B,cAAc,OAAO,SAAS,CAAC,CAAC;IACvF,CAAC;CACF"}
@@ -0,0 +1,51 @@
1
+ import { HTTPClient } from '../client/http-client';
2
+ export interface Thread {
3
+ id: string;
4
+ object: 'thread';
5
+ created_at: number;
6
+ tool_resources: Record<string, unknown>;
7
+ metadata: Record<string, string>;
8
+ }
9
+ export interface ThreadDeleted {
10
+ id: string;
11
+ object: 'thread.deleted';
12
+ deleted: boolean;
13
+ }
14
+ export declare class ThreadsResource {
15
+ private client;
16
+ constructor(client: HTTPClient);
17
+ /**
18
+ * Create a new thread
19
+ */
20
+ create(params?: {
21
+ messages?: Array<{
22
+ role: 'user' | 'assistant';
23
+ content: string;
24
+ metadata?: Record<string, string>;
25
+ attachments?: Array<{
26
+ file_id: string;
27
+ tools: Array<{
28
+ type: string;
29
+ }>;
30
+ }>;
31
+ }>;
32
+ tool_resources?: Record<string, unknown>;
33
+ metadata?: Record<string, string>;
34
+ }): Promise<Thread>;
35
+ /**
36
+ * Retrieve a thread by ID
37
+ */
38
+ retrieve(threadId: string): Promise<Thread>;
39
+ /**
40
+ * Modify a thread
41
+ */
42
+ update(threadId: string, params: {
43
+ tool_resources?: Record<string, unknown>;
44
+ metadata?: Record<string, string>;
45
+ }): Promise<Thread>;
46
+ /**
47
+ * Delete a thread
48
+ */
49
+ delete(threadId: string): Promise<ThreadDeleted>;
50
+ }
51
+ //# sourceMappingURL=threads.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"threads.d.ts","sourceRoot":"","sources":["../../src/resources/threads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,QAAQ,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qBAAa,eAAe;IACd,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEtC;;OAEG;IACG,MAAM,CAAC,MAAM,CAAC,EAAE;QACpB,QAAQ,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;YAC3B,OAAO,EAAE,MAAM,CAAC;YAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClC,WAAW,CAAC,EAAE,KAAK,CAAC;gBAAE,OAAO,EAAE,MAAM,CAAC;gBAAC,KAAK,EAAE,KAAK,CAAC;oBAAE,IAAI,EAAE,MAAM,CAAA;iBAAE,CAAC,CAAA;aAAE,CAAC,CAAC;SAC1E,CAAC,CAAC;QACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACzC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACnC,GAAG,OAAO,CAAC,MAAM,CAAC;IAInB;;OAEG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIjD;;OAEG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;QACrC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACzC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACnC,GAAG,OAAO,CAAC,MAAM,CAAC;IAInB;;OAEG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;CAGvD"}
@@ -0,0 +1,31 @@
1
+ export class ThreadsResource {
2
+ client;
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ /**
7
+ * Create a new thread
8
+ */
9
+ async create(params) {
10
+ return this.client.post('/v1/threads', params || {});
11
+ }
12
+ /**
13
+ * Retrieve a thread by ID
14
+ */
15
+ async retrieve(threadId) {
16
+ return this.client.get(`/v1/threads/${threadId}`);
17
+ }
18
+ /**
19
+ * Modify a thread
20
+ */
21
+ async update(threadId, params) {
22
+ return this.client.post(`/v1/threads/${threadId}`, params);
23
+ }
24
+ /**
25
+ * Delete a thread
26
+ */
27
+ async delete(threadId) {
28
+ return this.client.delete(`/v1/threads/${threadId}`);
29
+ }
30
+ }
31
+ //# sourceMappingURL=threads.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"threads.js","sourceRoot":"","sources":["../../src/resources/threads.ts"],"names":[],"mappings":"AAgBA,MAAM,OAAO,eAAe;IACN;IAApB,YAAoB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAE1C;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,MASZ;QACC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAS,aAAa,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,QAAgB;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAS,eAAe,QAAQ,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,QAAgB,EAAE,MAG9B;QACC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAS,eAAe,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAgB,eAAe,QAAQ,EAAE,CAAC,CAAC;IACtE,CAAC;CACF"}
@@ -0,0 +1,35 @@
1
+ import { HTTPClient } from '../client/http-client';
2
+ import { WorkspaceFile, WorkspaceFileType, CreateWorkspaceFileRequest, UpdateWorkspaceFileRequest, WorkspacePreview } from '../types';
3
+ export declare class WorkspaceFilesResource {
4
+ private client;
5
+ constructor(client: HTTPClient);
6
+ /**
7
+ * Create or upsert a workspace file for an agent
8
+ */
9
+ create(agentId: string, request: CreateWorkspaceFileRequest): Promise<WorkspaceFile>;
10
+ /**
11
+ * List all workspace files for an agent
12
+ */
13
+ list(agentId: string): Promise<{
14
+ files: WorkspaceFile[];
15
+ }>;
16
+ /**
17
+ * Retrieve a specific workspace file by type
18
+ */
19
+ retrieve(agentId: string, fileType: WorkspaceFileType): Promise<WorkspaceFile>;
20
+ /**
21
+ * Update a workspace file's content or enabled state
22
+ */
23
+ update(agentId: string, fileType: WorkspaceFileType, request: UpdateWorkspaceFileRequest): Promise<WorkspaceFile>;
24
+ /**
25
+ * Delete a workspace file
26
+ */
27
+ delete(agentId: string, fileType: WorkspaceFileType): Promise<{
28
+ deleted: boolean;
29
+ }>;
30
+ /**
31
+ * Preview the composed system prompt from all enabled workspace files
32
+ */
33
+ preview(agentId: string): Promise<WorkspacePreview>;
34
+ }
35
+ //# sourceMappingURL=workspace-files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-files.d.ts","sourceRoot":"","sources":["../../src/resources/workspace-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,0BAA0B,EAC1B,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAElB,qBAAa,sBAAsB;IACrB,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,UAAU;IAEtC;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,aAAa,CAAC;IAI1F;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IAIhE;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAIpF;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,aAAa,CAAC;IAIvH;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAIzF;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAG1D"}
@@ -0,0 +1,43 @@
1
+ export class WorkspaceFilesResource {
2
+ client;
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ /**
7
+ * Create or upsert a workspace file for an agent
8
+ */
9
+ async create(agentId, request) {
10
+ return this.client.post(`/v1/agents/${agentId}/workspace/files`, request);
11
+ }
12
+ /**
13
+ * List all workspace files for an agent
14
+ */
15
+ async list(agentId) {
16
+ return this.client.get(`/v1/agents/${agentId}/workspace/files`);
17
+ }
18
+ /**
19
+ * Retrieve a specific workspace file by type
20
+ */
21
+ async retrieve(agentId, fileType) {
22
+ return this.client.get(`/v1/agents/${agentId}/workspace/files/${fileType}`);
23
+ }
24
+ /**
25
+ * Update a workspace file's content or enabled state
26
+ */
27
+ async update(agentId, fileType, request) {
28
+ return this.client.put(`/v1/agents/${agentId}/workspace/files/${fileType}`, request);
29
+ }
30
+ /**
31
+ * Delete a workspace file
32
+ */
33
+ async delete(agentId, fileType) {
34
+ return this.client.delete(`/v1/agents/${agentId}/workspace/files/${fileType}`);
35
+ }
36
+ /**
37
+ * Preview the composed system prompt from all enabled workspace files
38
+ */
39
+ async preview(agentId) {
40
+ return this.client.get(`/v1/agents/${agentId}/workspace/preview`);
41
+ }
42
+ }
43
+ //# sourceMappingURL=workspace-files.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-files.js","sourceRoot":"","sources":["../../src/resources/workspace-files.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,sBAAsB;IACb;IAApB,YAAoB,MAAkB;QAAlB,WAAM,GAAN,MAAM,CAAY;IAAG,CAAC;IAE1C;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,OAAmC;QAC/D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAgB,cAAc,OAAO,kBAAkB,EAAE,OAAO,CAAC,CAAC;IAC3F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,OAAe;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAA6B,cAAc,OAAO,kBAAkB,CAAC,CAAC;IAC9F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAe,EAAE,QAA2B;QACzD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAgB,cAAc,OAAO,oBAAoB,QAAQ,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,QAA2B,EAAE,OAAmC;QAC5F,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAgB,cAAc,OAAO,oBAAoB,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACtG,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,QAA2B;QACvD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAuB,cAAc,OAAO,oBAAoB,QAAQ,EAAE,CAAC,CAAC;IACvG,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAe;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAmB,cAAc,OAAO,oBAAoB,CAAC,CAAC;IACtF,CAAC;CACF"}