@xpert-ai/plugin-drawio 0.1.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 (100) hide show
  1. package/.xpertai-plugin/plugin.json +118 -0
  2. package/README.md +5 -0
  3. package/assets/composerIcon.svg +6 -0
  4. package/assets/logo.svg +10 -0
  5. package/dist/docs/drawio-agent-skill.md +36 -0
  6. package/dist/index.d.ts +14 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +153 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/lib/constants.d.ts +24 -0
  11. package/dist/lib/constants.d.ts.map +1 -0
  12. package/dist/lib/constants.js +43 -0
  13. package/dist/lib/constants.js.map +1 -0
  14. package/dist/lib/drawio-view.provider.d.ts +14 -0
  15. package/dist/lib/drawio-view.provider.d.ts.map +1 -0
  16. package/dist/lib/drawio-view.provider.js +435 -0
  17. package/dist/lib/drawio-view.provider.js.map +1 -0
  18. package/dist/lib/drawio.middleware.d.ts +10 -0
  19. package/dist/lib/drawio.middleware.d.ts.map +1 -0
  20. package/dist/lib/drawio.middleware.js +159 -0
  21. package/dist/lib/drawio.middleware.js.map +1 -0
  22. package/dist/lib/drawio.plugin.d.ts +8 -0
  23. package/dist/lib/drawio.plugin.d.ts.map +1 -0
  24. package/dist/lib/drawio.plugin.js +27 -0
  25. package/dist/lib/drawio.plugin.js.map +1 -0
  26. package/dist/lib/drawio.service.d.ts +176 -0
  27. package/dist/lib/drawio.service.d.ts.map +1 -0
  28. package/dist/lib/drawio.service.js +415 -0
  29. package/dist/lib/drawio.service.js.map +1 -0
  30. package/dist/lib/drawio.templates.d.ts +3 -0
  31. package/dist/lib/drawio.templates.d.ts.map +1 -0
  32. package/dist/lib/drawio.templates.js +78 -0
  33. package/dist/lib/drawio.templates.js.map +1 -0
  34. package/dist/lib/entities/drawio-action-log.entity.d.ts +18 -0
  35. package/dist/lib/entities/drawio-action-log.entity.d.ts.map +1 -0
  36. package/dist/lib/entities/drawio-action-log.entity.js +69 -0
  37. package/dist/lib/entities/drawio-action-log.entity.js.map +1 -0
  38. package/dist/lib/entities/drawio-drawing-version.entity.d.ts +22 -0
  39. package/dist/lib/entities/drawio-drawing-version.entity.d.ts.map +1 -0
  40. package/dist/lib/entities/drawio-drawing-version.entity.js +86 -0
  41. package/dist/lib/entities/drawio-drawing-version.entity.js.map +1 -0
  42. package/dist/lib/entities/drawio-drawing.entity.d.ts +24 -0
  43. package/dist/lib/entities/drawio-drawing.entity.d.ts.map +1 -0
  44. package/dist/lib/entities/drawio-drawing.entity.js +94 -0
  45. package/dist/lib/entities/drawio-drawing.entity.js.map +1 -0
  46. package/dist/lib/entities/index.d.ts +4 -0
  47. package/dist/lib/entities/index.d.ts.map +1 -0
  48. package/dist/lib/entities/index.js +4 -0
  49. package/dist/lib/entities/index.js.map +1 -0
  50. package/dist/lib/remote-components/drawio-workbench/app.css +0 -0
  51. package/dist/lib/remote-components/drawio-workbench/app.js +1151 -0
  52. package/dist/lib/remote-components/drawio-workbench/src/i18n.d.ts +3 -0
  53. package/dist/lib/remote-components/drawio-workbench/src/i18n.d.ts.map +1 -0
  54. package/dist/lib/remote-components/drawio-workbench/src/i18n.js +95 -0
  55. package/dist/lib/remote-components/drawio-workbench/src/i18n.js.map +1 -0
  56. package/dist/lib/remote-components/drawio-workbench/src/i18n.ts +139 -0
  57. package/dist/lib/remote-components/drawio-workbench/src/main.tsx +916 -0
  58. package/dist/lib/remote-components/drawio-workbench/src/react-dom-client-shim.d.ts +3 -0
  59. package/dist/lib/remote-components/drawio-workbench/src/react-dom-client-shim.d.ts.map +1 -0
  60. package/dist/lib/remote-components/drawio-workbench/src/react-dom-client-shim.js +4 -0
  61. package/dist/lib/remote-components/drawio-workbench/src/react-dom-client-shim.js.map +1 -0
  62. package/dist/lib/remote-components/drawio-workbench/src/react-dom-client-shim.ts +4 -0
  63. package/dist/lib/remote-components/drawio-workbench/src/react-dom-shim.d.ts +11 -0
  64. package/dist/lib/remote-components/drawio-workbench/src/react-dom-shim.d.ts.map +1 -0
  65. package/dist/lib/remote-components/drawio-workbench/src/react-dom-shim.js +11 -0
  66. package/dist/lib/remote-components/drawio-workbench/src/react-dom-shim.js.map +1 -0
  67. package/dist/lib/remote-components/drawio-workbench/src/react-dom-shim.ts +11 -0
  68. package/dist/lib/remote-components/drawio-workbench/src/react-jsx-runtime-shim.d.ts +5 -0
  69. package/dist/lib/remote-components/drawio-workbench/src/react-jsx-runtime-shim.d.ts.map +1 -0
  70. package/dist/lib/remote-components/drawio-workbench/src/react-jsx-runtime-shim.js +8 -0
  71. package/dist/lib/remote-components/drawio-workbench/src/react-jsx-runtime-shim.js.map +1 -0
  72. package/dist/lib/remote-components/drawio-workbench/src/react-jsx-runtime-shim.ts +8 -0
  73. package/dist/lib/remote-components/drawio-workbench/src/react-shim.d.ts +36 -0
  74. package/dist/lib/remote-components/drawio-workbench/src/react-shim.d.ts.map +1 -0
  75. package/dist/lib/remote-components/drawio-workbench/src/react-shim.js +36 -0
  76. package/dist/lib/remote-components/drawio-workbench/src/react-shim.js.map +1 -0
  77. package/dist/lib/remote-components/drawio-workbench/src/react-shim.ts +36 -0
  78. package/dist/lib/remote-components/drawio-workbench/src/runtime.d.ts +21 -0
  79. package/dist/lib/remote-components/drawio-workbench/src/runtime.d.ts.map +1 -0
  80. package/dist/lib/remote-components/drawio-workbench/src/runtime.js +198 -0
  81. package/dist/lib/remote-components/drawio-workbench/src/runtime.js.map +1 -0
  82. package/dist/lib/remote-components/drawio-workbench/src/runtime.ts +228 -0
  83. package/dist/lib/remote-components/drawio-workbench/src/styles.d.ts +2 -0
  84. package/dist/lib/remote-components/drawio-workbench/src/styles.d.ts.map +1 -0
  85. package/dist/lib/remote-components/drawio-workbench/src/styles.js +290 -0
  86. package/dist/lib/remote-components/drawio-workbench/src/styles.js.map +1 -0
  87. package/dist/lib/remote-components/drawio-workbench/src/styles.ts +289 -0
  88. package/dist/lib/remote-components/drawio-workbench/src/vendor.d.ts +4 -0
  89. package/dist/lib/remote-components/drawio-workbench/src/vendor.d.ts.map +1 -0
  90. package/dist/lib/remote-components/drawio-workbench/src/vendor.js +4 -0
  91. package/dist/lib/remote-components/drawio-workbench/src/vendor.js.map +1 -0
  92. package/dist/lib/remote-components/drawio-workbench/src/vendor.ts +3 -0
  93. package/dist/lib/types.d.ts +67 -0
  94. package/dist/lib/types.d.ts.map +1 -0
  95. package/dist/lib/types.js +2 -0
  96. package/dist/lib/types.js.map +1 -0
  97. package/dist/xpert-drawio-assistant.yaml +130 -0
  98. package/package.json +85 -0
  99. package/skills/index/SKILL.md +45 -0
  100. package/skills/index/agents/xpertai.yaml +6 -0
@@ -0,0 +1,8 @@
1
+ import type { IOnPluginBootstrap, IOnPluginDestroy } from '@xpert-ai/plugin-sdk';
2
+ import { DrawioActionLog, DrawioDrawing, DrawioDrawingVersion } from './entities/index.js';
3
+ export declare const DRAWIO_ENTITIES: (typeof DrawioActionLog | typeof DrawioDrawing | typeof DrawioDrawingVersion)[];
4
+ export declare class DrawioPlugin implements IOnPluginBootstrap, IOnPluginDestroy {
5
+ onPluginBootstrap(): void | Promise<void>;
6
+ onPluginDestroy(): void | Promise<void>;
7
+ }
8
+ //# sourceMappingURL=drawio.plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawio.plugin.d.ts","sourceRoot":"","sources":["../../src/lib/drawio.plugin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEhF,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAK1F,eAAO,MAAM,eAAe,iFAAyD,CAAA;AAErF,qBAMa,YAAa,YAAW,kBAAkB,EAAE,gBAAgB;IACvE,iBAAiB,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,eAAe,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAGxC"}
@@ -0,0 +1,27 @@
1
+ var DrawioPlugin_1;
2
+ import { __decorate } from "tslib";
3
+ import { TypeOrmModule } from '@nestjs/typeorm';
4
+ import { XpertServerPlugin } from '@xpert-ai/plugin-sdk';
5
+ import { DrawioActionLog, DrawioDrawing, DrawioDrawingVersion } from './entities/index.js';
6
+ import { DrawioMiddleware } from './drawio.middleware.js';
7
+ import { DrawioService } from './drawio.service.js';
8
+ import { DrawioViewProvider } from './drawio-view.provider.js';
9
+ export const DRAWIO_ENTITIES = [DrawioDrawing, DrawioDrawingVersion, DrawioActionLog];
10
+ let DrawioPlugin = DrawioPlugin_1 = class DrawioPlugin {
11
+ onPluginBootstrap() {
12
+ console.log(`${DrawioPlugin_1.name} is being bootstrapped...`);
13
+ }
14
+ onPluginDestroy() {
15
+ console.log(`${DrawioPlugin_1.name} is being destroyed...`);
16
+ }
17
+ };
18
+ DrawioPlugin = DrawioPlugin_1 = __decorate([
19
+ XpertServerPlugin({
20
+ imports: [TypeOrmModule.forFeature(DRAWIO_ENTITIES)],
21
+ entities: DRAWIO_ENTITIES,
22
+ providers: [DrawioService, DrawioMiddleware, DrawioViewProvider],
23
+ exports: [DrawioService]
24
+ })
25
+ ], DrawioPlugin);
26
+ export { DrawioPlugin };
27
+ //# sourceMappingURL=drawio.plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawio.plugin.js","sourceRoot":"","sources":["../../src/lib/drawio.plugin.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,aAAa,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAA;AAQ9E,IAAM,YAAY,oBAAlB,MAAM,YAAY;IACvB,iBAAiB;QACf,OAAO,CAAC,GAAG,CAAC,GAAG,cAAY,CAAC,IAAI,2BAA2B,CAAC,CAAA;IAC9D,CAAC;IAED,eAAe;QACb,OAAO,CAAC,GAAG,CAAC,GAAG,cAAY,CAAC,IAAI,wBAAwB,CAAC,CAAA;IAC3D,CAAC;CACF,CAAA;AARY,YAAY;IANxB,iBAAiB,CAAC;QACjB,OAAO,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QACpD,QAAQ,EAAE,eAAe;QACzB,SAAS,EAAE,CAAC,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;QAChE,OAAO,EAAE,CAAC,aAAa,CAAC;KACzB,CAAC;GACW,YAAY,CAQxB"}
@@ -0,0 +1,176 @@
1
+ import { Repository } from 'typeorm';
2
+ import { DrawioActionLog, DrawioDrawing, DrawioDrawingVersion } from './entities/index.js';
3
+ import type { CreateDrawioDrawingInput, DrawioScope, PatchDrawioSceneInput, ReportDrawioFailureInput, SaveDrawioMermaidDraftInput, SaveDrawioSceneVersionInput, SearchDrawioDrawingsInput, UpdateDrawioDrawingStatusInput } from './types.js';
4
+ export declare class DrawioService {
5
+ private readonly drawingRepository;
6
+ private readonly versionRepository;
7
+ private readonly logRepository;
8
+ constructor(drawingRepository: Repository<DrawioDrawing>, versionRepository: Repository<DrawioDrawingVersion>, logRepository: Repository<DrawioActionLog>);
9
+ createDrawing(scope: DrawioScope, input: CreateDrawioDrawingInput): Promise<{
10
+ item: DrawioDrawing;
11
+ currentVersion: DrawioDrawingVersion;
12
+ versions: DrawioDrawingVersion[];
13
+ logs: DrawioActionLog[];
14
+ total: number;
15
+ summary: {
16
+ versionCount: number;
17
+ currentVersionNumber: number;
18
+ hasXml: boolean;
19
+ hasMermaidDraft: boolean;
20
+ };
21
+ }>;
22
+ saveSceneVersion(scope: DrawioScope, input: SaveDrawioSceneVersionInput): Promise<{
23
+ success: boolean;
24
+ message: string;
25
+ drawing: {
26
+ item: DrawioDrawing;
27
+ currentVersion: DrawioDrawingVersion;
28
+ versions: DrawioDrawingVersion[];
29
+ logs: DrawioActionLog[];
30
+ total: number;
31
+ summary: {
32
+ versionCount: number;
33
+ currentVersionNumber: number;
34
+ hasXml: boolean;
35
+ hasMermaidDraft: boolean;
36
+ };
37
+ };
38
+ version: DrawioDrawingVersion;
39
+ }>;
40
+ patchScene(scope: DrawioScope, input: PatchDrawioSceneInput): Promise<{
41
+ success: boolean;
42
+ message: string;
43
+ drawing: {
44
+ item: DrawioDrawing;
45
+ currentVersion: DrawioDrawingVersion;
46
+ versions: DrawioDrawingVersion[];
47
+ logs: DrawioActionLog[];
48
+ total: number;
49
+ summary: {
50
+ versionCount: number;
51
+ currentVersionNumber: number;
52
+ hasXml: boolean;
53
+ hasMermaidDraft: boolean;
54
+ };
55
+ };
56
+ version: DrawioDrawingVersion;
57
+ }>;
58
+ saveMermaidDraft(scope: DrawioScope, input: SaveDrawioMermaidDraftInput): Promise<{
59
+ success: boolean;
60
+ message: string;
61
+ drawing: {
62
+ item: DrawioDrawing;
63
+ currentVersion: DrawioDrawingVersion;
64
+ versions: DrawioDrawingVersion[];
65
+ logs: DrawioActionLog[];
66
+ total: number;
67
+ summary: {
68
+ versionCount: number;
69
+ currentVersionNumber: number;
70
+ hasXml: boolean;
71
+ hasMermaidDraft: boolean;
72
+ };
73
+ };
74
+ version: DrawioDrawingVersion;
75
+ }>;
76
+ searchDrawings(scope: DrawioScope, query?: SearchDrawioDrawingsInput): Promise<{
77
+ items: DrawioDrawing[];
78
+ total: number;
79
+ page: number;
80
+ pageSize: number;
81
+ search: string;
82
+ }>;
83
+ getDrawing(scope: DrawioScope, drawingId: string): Promise<{
84
+ item: DrawioDrawing;
85
+ currentVersion: DrawioDrawingVersion;
86
+ versions: DrawioDrawingVersion[];
87
+ logs: DrawioActionLog[];
88
+ total: number;
89
+ summary: {
90
+ versionCount: number;
91
+ currentVersionNumber: number;
92
+ hasXml: boolean;
93
+ hasMermaidDraft: boolean;
94
+ };
95
+ }>;
96
+ getWorkbenchData(scope: DrawioScope, query?: SearchDrawioDrawingsInput & {
97
+ drawingId?: string;
98
+ }): Promise<{
99
+ item: DrawioDrawing;
100
+ currentVersion: DrawioDrawingVersion;
101
+ versions: DrawioDrawingVersion[];
102
+ logs: DrawioActionLog[];
103
+ total: number;
104
+ summary: {
105
+ versionCount: number;
106
+ currentVersionNumber: number;
107
+ hasXml: boolean;
108
+ hasMermaidDraft: boolean;
109
+ };
110
+ } | {
111
+ summary: {
112
+ page: number;
113
+ pageSize: number;
114
+ search: string;
115
+ };
116
+ items: DrawioDrawing[];
117
+ total: number;
118
+ page: number;
119
+ pageSize: number;
120
+ search: string;
121
+ }>;
122
+ updateDrawingStatus(scope: DrawioScope, input: UpdateDrawioDrawingStatusInput): Promise<{
123
+ success: boolean;
124
+ message: string;
125
+ item: {
126
+ status: import("./types.js").DrawioDrawingStatus;
127
+ lastEditedById: string;
128
+ lastEditedAt: Date;
129
+ id?: string;
130
+ tenantId?: string;
131
+ organizationId?: string;
132
+ workspaceId?: string;
133
+ projectId?: string;
134
+ createdById?: string;
135
+ assistantId?: string;
136
+ conversationId?: string;
137
+ title: string;
138
+ description?: string;
139
+ kind?: import("./types.js").DrawioDrawingKind;
140
+ tags?: string[];
141
+ source?: string;
142
+ currentVersionId?: string;
143
+ currentVersionNumber?: number;
144
+ createdAt?: Date;
145
+ updatedAt?: Date;
146
+ } & DrawioDrawing;
147
+ }>;
148
+ restoreVersion(scope: DrawioScope, drawingId: string, versionId: string, changeSummary?: string): Promise<{
149
+ success: boolean;
150
+ message: string;
151
+ drawing: {
152
+ item: DrawioDrawing;
153
+ currentVersion: DrawioDrawingVersion;
154
+ versions: DrawioDrawingVersion[];
155
+ logs: DrawioActionLog[];
156
+ total: number;
157
+ summary: {
158
+ versionCount: number;
159
+ currentVersionNumber: number;
160
+ hasXml: boolean;
161
+ hasMermaidDraft: boolean;
162
+ };
163
+ };
164
+ version: DrawioDrawingVersion;
165
+ }>;
166
+ reportFailure(scope: DrawioScope, input: ReportDrawioFailureInput): Promise<{
167
+ success: boolean;
168
+ message: string;
169
+ log: DrawioActionLog;
170
+ }>;
171
+ private createVersion;
172
+ private getCurrentVersion;
173
+ private requireDrawing;
174
+ private writeLog;
175
+ }
176
+ //# sourceMappingURL=drawio.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawio.service.d.ts","sourceRoot":"","sources":["../../src/lib/drawio.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1F,OAAO,KAAK,EACV,wBAAwB,EAGxB,WAAW,EAGX,qBAAqB,EACrB,wBAAwB,EACxB,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,8BAA8B,EAC/B,MAAM,YAAY,CAAA;AASnB,qBACa,aAAa;IAGtB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAJb,iBAAiB,EAAE,UAAU,CAAC,aAAa,CAAC,EAE5C,iBAAiB,EAAE,UAAU,CAAC,oBAAoB,CAAC,EAEnD,aAAa,EAAE,UAAU,CAAC,eAAe,CAAC;IAGvD,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,wBAAwB;;;;;;;;;;;;;IA2CjE,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,2BAA2B;;;;;;;;;;;;;;;;;;IAoBvE,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,qBAAqB;;;;;;;;;;;;;;;;;;IAwC3D,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,2BAA2B;;;;;;;;;;;;;;;;;;IA0CvE,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,GAAE,yBAA8B;;;;;;;IAmCxE,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM;;;;;;;;;;;;;IAiChD,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,GAAE,yBAAyB,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;IAenG,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;IAyB7E,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;IAoC/F,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,wBAAwB;;;;;YAqBzD,aAAa;YAsDb,iBAAiB;YASjB,cAAc;YAWd,QAAQ;CA0BvB"}
@@ -0,0 +1,415 @@
1
+ import { __decorate, __metadata, __param } from "tslib";
2
+ import { BadRequestException, Injectable, NotFoundException } from '@nestjs/common';
3
+ import { InjectRepository } from '@nestjs/typeorm';
4
+ import { Repository } from 'typeorm';
5
+ import { DrawioActionLog, DrawioDrawing, DrawioDrawingVersion } from './entities/index.js';
6
+ let DrawioService = class DrawioService {
7
+ constructor(drawingRepository, versionRepository, logRepository) {
8
+ this.drawingRepository = drawingRepository;
9
+ this.versionRepository = versionRepository;
10
+ this.logRepository = logRepository;
11
+ }
12
+ async createDrawing(scope, input) {
13
+ const title = normalizeRequired(input.title, 'Diagram title is required.');
14
+ const drawing = await this.drawingRepository.save(this.drawingRepository.create({
15
+ ...scopedCreate(scope),
16
+ assistantId: scope.assistantId ?? null,
17
+ conversationId: scope.conversationId ?? null,
18
+ createdById: scope.userId ?? null,
19
+ title,
20
+ description: normalizeOptional(input.description),
21
+ kind: input.kind ?? 'diagram',
22
+ status: 'draft',
23
+ tags: normalizeStringArray(input.tags),
24
+ source: normalizeOptional(input.source),
25
+ currentVersionNumber: 0,
26
+ lastEditedById: scope.userId ?? null,
27
+ lastEditedAt: new Date()
28
+ }));
29
+ await this.writeLog(scope, {
30
+ drawingId: drawing.id,
31
+ action: 'drawing_created',
32
+ actorType: scope.assistantId ? 'agent' : 'user',
33
+ message: `draw.io diagram "${title}" was created.`,
34
+ snapshot: { title, kind: drawing.kind, source: drawing.source }
35
+ });
36
+ if (hasSceneContent(input)) {
37
+ await this.createVersion(scope, drawing, {
38
+ sourceType: input.mermaidSource ? 'agent_mermaid' : 'agent_xml',
39
+ xml: normalizeNullableText(input.xml),
40
+ mermaidSource: normalizeNullableText(input.mermaidSource),
41
+ previewSvg: normalizeNullableText(input.previewSvg),
42
+ previewPng: normalizeNullableText(input.previewPng),
43
+ descriptor: normalizeObject(input.descriptor),
44
+ changeSummary: normalizeOptional(input.changeSummary) ?? 'Initial diagram'
45
+ });
46
+ }
47
+ return this.getDrawing(scope, drawing.id);
48
+ }
49
+ async saveSceneVersion(scope, input) {
50
+ const drawing = await this.requireDrawing(scope, input.drawingId);
51
+ const version = await this.createVersion(scope, drawing, {
52
+ sourceType: input.sourceType ?? 'agent_xml',
53
+ xml: normalizeNullableText(input.xml),
54
+ mermaidSource: normalizeNullableText(input.mermaidSource),
55
+ previewSvg: normalizeNullableText(input.previewSvg),
56
+ previewPng: normalizeNullableText(input.previewPng),
57
+ descriptor: normalizeObject(input.descriptor),
58
+ changeSummary: normalizeOptional(input.changeSummary)
59
+ });
60
+ return {
61
+ success: true,
62
+ message: 'draw.io diagram version was saved.',
63
+ drawing: await this.getDrawing(scope, drawing.id),
64
+ version
65
+ };
66
+ }
67
+ async patchScene(scope, input) {
68
+ const drawing = await this.requireDrawing(scope, input.drawingId);
69
+ const currentVersion = await this.getCurrentVersion(scope, drawing);
70
+ const version = await this.createVersion(scope, drawing, {
71
+ sourceType: 'agent_patch',
72
+ xml: input.xml === undefined ? normalizeNullableText(currentVersion?.xml) : normalizeNullableText(input.xml),
73
+ mermaidSource: input.mermaidSource === undefined
74
+ ? normalizeNullableText(currentVersion?.mermaidSource)
75
+ : normalizeNullableText(input.mermaidSource),
76
+ previewSvg: input.previewSvg === undefined ? normalizeNullableText(currentVersion?.previewSvg) : normalizeNullableText(input.previewSvg),
77
+ previewPng: input.previewPng === undefined ? normalizeNullableText(currentVersion?.previewPng) : normalizeNullableText(input.previewPng),
78
+ descriptor: input.descriptor === undefined ? normalizeObject(currentVersion?.descriptor) : normalizeObject(input.descriptor),
79
+ changeSummary: normalizeOptional(input.changeSummary) ?? 'Agent patch'
80
+ });
81
+ await this.writeLog(scope, {
82
+ drawingId: drawing.id,
83
+ versionId: version.id,
84
+ action: 'scene_patched',
85
+ actorType: 'agent',
86
+ message: input.changeSummary,
87
+ snapshot: {
88
+ hasXml: Boolean(input.xml),
89
+ hasMermaidSource: Boolean(input.mermaidSource),
90
+ hasPreview: Boolean(input.previewSvg || input.previewPng)
91
+ }
92
+ });
93
+ return {
94
+ success: true,
95
+ message: 'draw.io diagram patch was saved as a new version.',
96
+ drawing: await this.getDrawing(scope, drawing.id),
97
+ version
98
+ };
99
+ }
100
+ async saveMermaidDraft(scope, input) {
101
+ const mermaidSource = normalizeRequired(input.mermaidSource, 'Mermaid source is required.');
102
+ const drawing = input.drawingId
103
+ ? await this.requireDrawing(scope, input.drawingId)
104
+ : (await this.createDrawing(scope, {
105
+ title: input.title ?? 'Untitled Mermaid Diagram',
106
+ description: input.description,
107
+ kind: input.kind ?? 'flowchart'
108
+ })).item;
109
+ const version = await this.createVersion(scope, drawing, {
110
+ sourceType: 'agent_mermaid',
111
+ xml: null,
112
+ mermaidSource,
113
+ previewSvg: null,
114
+ previewPng: null,
115
+ descriptor: {
116
+ format: 'mermaid',
117
+ data: mermaidSource
118
+ },
119
+ changeSummary: normalizeOptional(input.changeSummary) ?? 'Mermaid draft'
120
+ });
121
+ await this.writeLog(scope, {
122
+ drawingId: drawing.id,
123
+ versionId: version.id,
124
+ action: 'mermaid_draft_saved',
125
+ actorType: 'agent',
126
+ message: input.changeSummary,
127
+ snapshot: { mermaidSource }
128
+ });
129
+ return {
130
+ success: true,
131
+ message: 'Mermaid draft was saved. Open it in the draw.io workbench to convert and continue editing.',
132
+ drawing: await this.getDrawing(scope, drawing.id),
133
+ version
134
+ };
135
+ }
136
+ async searchDrawings(scope, query = {}) {
137
+ const page = Math.max(1, query.page ?? 1);
138
+ const pageSize = Math.max(1, Math.min(query.pageSize ?? 20, 100));
139
+ const search = query.search?.trim().toLowerCase() ?? '';
140
+ const drawings = await this.drawingRepository.find({
141
+ where: scopedWhere(scope),
142
+ order: {
143
+ updatedAt: 'DESC'
144
+ }
145
+ });
146
+ const filtered = drawings.filter((drawing) => {
147
+ if (query.status && drawing.status !== query.status) {
148
+ return false;
149
+ }
150
+ if (query.kind && drawing.kind !== query.kind) {
151
+ return false;
152
+ }
153
+ if (!search) {
154
+ return true;
155
+ }
156
+ return [drawing.title, drawing.description, drawing.kind, ...(drawing.tags ?? [])]
157
+ .filter(isString)
158
+ .some((value) => value.toLowerCase().includes(search));
159
+ });
160
+ const start = (page - 1) * pageSize;
161
+ return {
162
+ items: filtered.slice(start, start + pageSize),
163
+ total: filtered.length,
164
+ page,
165
+ pageSize,
166
+ search
167
+ };
168
+ }
169
+ async getDrawing(scope, drawingId) {
170
+ const drawing = await this.requireDrawing(scope, drawingId);
171
+ const [versions, logs] = await Promise.all([
172
+ this.versionRepository.find({
173
+ where: scopedWhere(scope, { drawingId }),
174
+ order: {
175
+ versionNumber: 'DESC'
176
+ }
177
+ }),
178
+ this.logRepository.find({
179
+ where: scopedWhere(scope, { drawingId }),
180
+ order: {
181
+ createdAt: 'DESC'
182
+ }
183
+ })
184
+ ]);
185
+ const currentVersion = versions.find((version) => version.id === drawing.currentVersionId) ?? versions[0] ?? null;
186
+ return {
187
+ item: drawing,
188
+ currentVersion,
189
+ versions,
190
+ logs,
191
+ total: versions.length,
192
+ summary: {
193
+ versionCount: versions.length,
194
+ currentVersionNumber: drawing.currentVersionNumber ?? currentVersion?.versionNumber ?? 0,
195
+ hasXml: versions.some((version) => Boolean(version.xml)),
196
+ hasMermaidDraft: versions.some((version) => Boolean(version.mermaidSource))
197
+ }
198
+ };
199
+ }
200
+ async getWorkbenchData(scope, query = {}) {
201
+ if (query.drawingId) {
202
+ return this.getDrawing(scope, query.drawingId);
203
+ }
204
+ const result = await this.searchDrawings(scope, query);
205
+ return {
206
+ ...result,
207
+ summary: {
208
+ page: result.page,
209
+ pageSize: result.pageSize,
210
+ search: result.search
211
+ }
212
+ };
213
+ }
214
+ async updateDrawingStatus(scope, input) {
215
+ const drawing = await this.requireDrawing(scope, input.drawingId);
216
+ const updated = await this.drawingRepository.save({
217
+ ...drawing,
218
+ status: input.status,
219
+ lastEditedById: scope.userId ?? null,
220
+ lastEditedAt: new Date()
221
+ });
222
+ await this.writeLog(scope, {
223
+ drawingId: drawing.id,
224
+ versionId: drawing.currentVersionId,
225
+ action: input.status === 'archived' ? 'drawing_archived' : 'status_updated',
226
+ actorType: scope.assistantId ? 'agent' : 'user',
227
+ message: input.reason ?? `Status updated to ${input.status}`,
228
+ snapshot: { status: input.status }
229
+ });
230
+ return {
231
+ success: true,
232
+ message: 'draw.io diagram status was updated.',
233
+ item: updated
234
+ };
235
+ }
236
+ async restoreVersion(scope, drawingId, versionId, changeSummary) {
237
+ const drawing = await this.requireDrawing(scope, drawingId);
238
+ const version = await this.versionRepository.findOne({
239
+ where: scopedWhere(scope, { id: versionId, drawingId })
240
+ });
241
+ if (!version) {
242
+ throw new NotFoundException('draw.io diagram version was not found.');
243
+ }
244
+ const restored = await this.createVersion(scope, drawing, {
245
+ sourceType: 'restore',
246
+ xml: normalizeNullableText(version.xml),
247
+ mermaidSource: normalizeNullableText(version.mermaidSource),
248
+ previewSvg: normalizeNullableText(version.previewSvg),
249
+ previewPng: normalizeNullableText(version.previewPng),
250
+ descriptor: normalizeObject(version.descriptor),
251
+ changeSummary: normalizeOptional(changeSummary) ?? `Restored version ${version.versionNumber}`
252
+ });
253
+ await this.writeLog(scope, {
254
+ drawingId,
255
+ versionId: restored.id,
256
+ action: 'version_restored',
257
+ actorType: 'user',
258
+ message: changeSummary,
259
+ snapshot: { restoredFromVersionId: versionId, restoredFromVersionNumber: version.versionNumber }
260
+ });
261
+ return {
262
+ success: true,
263
+ message: 'draw.io diagram version was restored.',
264
+ drawing: await this.getDrawing(scope, drawingId),
265
+ version: restored
266
+ };
267
+ }
268
+ async reportFailure(scope, input) {
269
+ const log = await this.writeLog(scope, {
270
+ drawingId: input.drawingId,
271
+ versionId: input.versionId,
272
+ action: 'failure_reported',
273
+ actorType: scope.assistantId ? 'agent' : 'system',
274
+ message: input.operation,
275
+ errorMessage: input.errorMessage,
276
+ snapshot: {
277
+ recoverable: input.recoverable,
278
+ evidence: input.evidence
279
+ }
280
+ });
281
+ return {
282
+ success: true,
283
+ message: 'draw.io diagram failure was recorded.',
284
+ log
285
+ };
286
+ }
287
+ async createVersion(scope, drawing, input) {
288
+ const currentVersionNumber = drawing.currentVersionNumber ?? 0;
289
+ const versionNumber = currentVersionNumber + 1;
290
+ const version = await this.versionRepository.save(this.versionRepository.create({
291
+ ...scopedCreate(scope),
292
+ drawingId: drawing.id,
293
+ versionNumber,
294
+ sourceType: input.sourceType,
295
+ xml: normalizeNullableText(input.xml),
296
+ mermaidSource: normalizeNullableText(input.mermaidSource),
297
+ previewSvg: normalizeNullableText(input.previewSvg),
298
+ previewPng: normalizeNullableText(input.previewPng),
299
+ descriptor: normalizeObject(input.descriptor),
300
+ changeSummary: normalizeOptional(input.changeSummary),
301
+ createdById: scope.userId ?? null,
302
+ assistantId: scope.assistantId ?? null,
303
+ conversationId: scope.conversationId ?? null
304
+ }));
305
+ await this.drawingRepository.save({
306
+ ...drawing,
307
+ currentVersionId: version.id,
308
+ currentVersionNumber: version.versionNumber,
309
+ lastEditedById: scope.userId ?? null,
310
+ lastEditedAt: new Date()
311
+ });
312
+ await this.writeLog(scope, {
313
+ drawingId: drawing.id,
314
+ versionId: version.id,
315
+ action: 'version_saved',
316
+ actorType: input.sourceType.startsWith('agent') ? 'agent' : 'user',
317
+ message: input.changeSummary,
318
+ snapshot: {
319
+ sourceType: input.sourceType,
320
+ versionNumber,
321
+ hasXml: Boolean(input.xml),
322
+ hasMermaidSource: Boolean(input.mermaidSource),
323
+ hasPreview: Boolean(input.previewSvg || input.previewPng)
324
+ }
325
+ });
326
+ return version;
327
+ }
328
+ async getCurrentVersion(scope, drawing) {
329
+ if (!drawing.currentVersionId) {
330
+ return null;
331
+ }
332
+ return this.versionRepository.findOne({
333
+ where: scopedWhere(scope, { id: drawing.currentVersionId, drawingId: drawing.id })
334
+ });
335
+ }
336
+ async requireDrawing(scope, drawingId) {
337
+ const id = normalizeRequired(drawingId, 'Diagram id is required.');
338
+ const drawing = await this.drawingRepository.findOne({
339
+ where: scopedWhere(scope, { id })
340
+ });
341
+ if (!drawing) {
342
+ throw new NotFoundException('draw.io diagram was not found.');
343
+ }
344
+ return drawing;
345
+ }
346
+ async writeLog(scope, input) {
347
+ return this.logRepository.save(this.logRepository.create({
348
+ ...scopedCreate(scope),
349
+ drawingId: input.drawingId,
350
+ versionId: input.versionId,
351
+ action: input.action,
352
+ actorType: input.actorType,
353
+ actorId: scope.userId ?? scope.assistantId ?? null,
354
+ message: normalizeOptional(input.message),
355
+ errorMessage: normalizeOptional(input.errorMessage),
356
+ snapshot: input.snapshot
357
+ }));
358
+ }
359
+ };
360
+ DrawioService = __decorate([
361
+ Injectable(),
362
+ __param(0, InjectRepository(DrawioDrawing)),
363
+ __param(1, InjectRepository(DrawioDrawingVersion)),
364
+ __param(2, InjectRepository(DrawioActionLog)),
365
+ __metadata("design:paramtypes", [Repository,
366
+ Repository,
367
+ Repository])
368
+ ], DrawioService);
369
+ export { DrawioService };
370
+ function scopedCreate(scope) {
371
+ return {
372
+ tenantId: scope.tenantId,
373
+ organizationId: scope.organizationId ?? null,
374
+ workspaceId: scope.workspaceId ?? null,
375
+ projectId: scope.projectId ?? null
376
+ };
377
+ }
378
+ function scopedWhere(scope, extra) {
379
+ return {
380
+ ...scopedCreate(scope),
381
+ ...(extra ?? {})
382
+ };
383
+ }
384
+ function hasSceneContent(input) {
385
+ return Boolean(normalizeNullableText(input.xml) ||
386
+ normalizeNullableText(input.mermaidSource) ||
387
+ normalizeNullableText(input.previewSvg) ||
388
+ normalizeNullableText(input.previewPng) ||
389
+ (isPlainObject(input.descriptor) && Object.keys(input.descriptor).length > 0));
390
+ }
391
+ function normalizeRequired(value, message) {
392
+ if (typeof value !== 'string' || !value.trim()) {
393
+ throw new BadRequestException(message);
394
+ }
395
+ return value.trim();
396
+ }
397
+ function normalizeOptional(value) {
398
+ return typeof value === 'string' && value.trim() ? value.trim() : undefined;
399
+ }
400
+ function normalizeNullableText(value) {
401
+ return typeof value === 'string' && value.trim() ? value : null;
402
+ }
403
+ function normalizeStringArray(value) {
404
+ return Array.isArray(value) ? value.filter(isString).map((item) => item.trim()).filter(Boolean) : [];
405
+ }
406
+ function normalizeObject(value) {
407
+ return isPlainObject(value) ? value : {};
408
+ }
409
+ function isPlainObject(value) {
410
+ return Boolean(value && typeof value === 'object' && !Array.isArray(value));
411
+ }
412
+ function isString(value) {
413
+ return typeof value === 'string';
414
+ }
415
+ //# sourceMappingURL=drawio.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawio.service.js","sourceRoot":"","sources":["../../src/lib/drawio.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { XpertTemplateContribution } from '@xpert-ai/plugin-sdk';
2
+ export declare const drawioTemplates: XpertTemplateContribution[];
3
+ //# sourceMappingURL=drawio.templates.d.ts.map