solidworks-mcp-server 2.2.0 → 3.0.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 (104) hide show
  1. package/README.md +33 -10
  2. package/dist/application/services/command-bus.d.ts +39 -0
  3. package/dist/application/services/command-bus.d.ts.map +1 -0
  4. package/dist/application/services/command-bus.js +88 -0
  5. package/dist/application/services/command-bus.js.map +1 -0
  6. package/dist/application/services/event-bus.d.ts +31 -0
  7. package/dist/application/services/event-bus.d.ts.map +1 -0
  8. package/dist/application/services/event-bus.js +83 -0
  9. package/dist/application/services/event-bus.js.map +1 -0
  10. package/dist/application/services/query-bus.d.ts +30 -0
  11. package/dist/application/services/query-bus.d.ts.map +1 -0
  12. package/dist/application/services/query-bus.js +59 -0
  13. package/dist/application/services/query-bus.js.map +1 -0
  14. package/dist/application/services/tool-registry.d.ts +53 -0
  15. package/dist/application/services/tool-registry.d.ts.map +1 -0
  16. package/dist/application/services/tool-registry.js +81 -0
  17. package/dist/application/services/tool-registry.js.map +1 -0
  18. package/dist/application/use-cases/analysis/index.d.ts +13 -0
  19. package/dist/application/use-cases/analysis/index.d.ts.map +1 -0
  20. package/dist/application/use-cases/analysis/index.js +17 -0
  21. package/dist/application/use-cases/analysis/index.js.map +1 -0
  22. package/dist/application/use-cases/drawing/index.d.ts +13 -0
  23. package/dist/application/use-cases/drawing/index.d.ts.map +1 -0
  24. package/dist/application/use-cases/drawing/index.js +17 -0
  25. package/dist/application/use-cases/drawing/index.js.map +1 -0
  26. package/dist/application/use-cases/export/index.d.ts +13 -0
  27. package/dist/application/use-cases/export/index.d.ts.map +1 -0
  28. package/dist/application/use-cases/export/index.js +17 -0
  29. package/dist/application/use-cases/export/index.js.map +1 -0
  30. package/dist/application/use-cases/macro/index.d.ts +13 -0
  31. package/dist/application/use-cases/macro/index.d.ts.map +1 -0
  32. package/dist/application/use-cases/macro/index.js +17 -0
  33. package/dist/application/use-cases/macro/index.js.map +1 -0
  34. package/dist/application/use-cases/modeling/index.d.ts +56 -0
  35. package/dist/application/use-cases/modeling/index.d.ts.map +1 -0
  36. package/dist/application/use-cases/modeling/index.js +385 -0
  37. package/dist/application/use-cases/modeling/index.js.map +1 -0
  38. package/dist/core/interfaces/core-abstractions.d.ts +289 -0
  39. package/dist/core/interfaces/core-abstractions.d.ts.map +1 -0
  40. package/dist/core/interfaces/core-abstractions.js +121 -0
  41. package/dist/core/interfaces/core-abstractions.js.map +1 -0
  42. package/dist/index.refactored.d.ts +7 -0
  43. package/dist/index.refactored.d.ts.map +1 -0
  44. package/dist/index.refactored.js +254 -0
  45. package/dist/index.refactored.js.map +1 -0
  46. package/dist/infrastructure/config/configuration-manager.d.ts +381 -0
  47. package/dist/infrastructure/config/configuration-manager.d.ts.map +1 -0
  48. package/dist/infrastructure/config/configuration-manager.js +566 -0
  49. package/dist/infrastructure/config/configuration-manager.js.map +1 -0
  50. package/dist/infrastructure/container/service-locator.d.ts +14 -0
  51. package/dist/infrastructure/container/service-locator.d.ts.map +1 -0
  52. package/dist/infrastructure/container/service-locator.js +38 -0
  53. package/dist/infrastructure/container/service-locator.js.map +1 -0
  54. package/dist/infrastructure/logging/logger.d.ts +24 -0
  55. package/dist/infrastructure/logging/logger.d.ts.map +1 -0
  56. package/dist/infrastructure/logging/logger.js +65 -0
  57. package/dist/infrastructure/logging/logger.js.map +1 -0
  58. package/dist/infrastructure/solidworks/solidworks-adapter.d.ts +43 -0
  59. package/dist/infrastructure/solidworks/solidworks-adapter.d.ts.map +1 -0
  60. package/dist/infrastructure/solidworks/solidworks-adapter.js +527 -0
  61. package/dist/infrastructure/solidworks/solidworks-adapter.js.map +1 -0
  62. package/dist/presentation/mcp/request-handler.d.ts +41 -0
  63. package/dist/presentation/mcp/request-handler.d.ts.map +1 -0
  64. package/dist/presentation/mcp/request-handler.js +100 -0
  65. package/dist/presentation/mcp/request-handler.js.map +1 -0
  66. package/dist/presentation/transformers/error-transformer.d.ts +16 -0
  67. package/dist/presentation/transformers/error-transformer.d.ts.map +1 -0
  68. package/dist/presentation/transformers/error-transformer.js +44 -0
  69. package/dist/presentation/transformers/error-transformer.js.map +1 -0
  70. package/dist/presentation/transformers/response-transformer.d.ts +24 -0
  71. package/dist/presentation/transformers/response-transformer.d.ts.map +1 -0
  72. package/dist/presentation/transformers/response-transformer.js +102 -0
  73. package/dist/presentation/transformers/response-transformer.js.map +1 -0
  74. package/dist/resources/design-table.d.ts +28 -28
  75. package/dist/resources/pdm.d.ts +70 -70
  76. package/dist/shared/constants/solidworks-constants.d.ts +302 -0
  77. package/dist/shared/constants/solidworks-constants.d.ts.map +1 -0
  78. package/dist/shared/constants/solidworks-constants.js +471 -0
  79. package/dist/shared/constants/solidworks-constants.js.map +1 -0
  80. package/dist/tools/diagnostics.d.ts +21 -0
  81. package/dist/tools/diagnostics.d.ts.map +1 -0
  82. package/dist/tools/diagnostics.js +120 -0
  83. package/dist/tools/diagnostics.js.map +1 -0
  84. package/dist/tools/drawing-analysis.d.ts +9 -0
  85. package/dist/tools/drawing-analysis.d.ts.map +1 -0
  86. package/dist/tools/drawing-analysis.js +239 -0
  87. package/dist/tools/drawing-analysis.js.map +1 -0
  88. package/dist/tools/drawing.d.ts +4 -4
  89. package/dist/tools/enhanced-drawing.d.ts +51 -0
  90. package/dist/tools/enhanced-drawing.d.ts.map +1 -0
  91. package/dist/tools/enhanced-drawing.js +193 -0
  92. package/dist/tools/enhanced-drawing.js.map +1 -0
  93. package/dist/tools/export.d.ts +6 -6
  94. package/dist/tools/macro-security.d.ts +9 -0
  95. package/dist/tools/macro-security.d.ts.map +1 -0
  96. package/dist/tools/macro-security.js +86 -0
  97. package/dist/tools/macro-security.js.map +1 -0
  98. package/dist/tools/vba-advanced.d.ts +12 -12
  99. package/dist/tools/vba-assembly.d.ts +8 -8
  100. package/dist/tools/vba-drawing.d.ts +14 -14
  101. package/dist/tools/vba-file-management.d.ts +16 -16
  102. package/dist/tools/vba-part.d.ts +10 -10
  103. package/dist/tools/vba.d.ts +67 -67
  104. package/package.json +12 -7
@@ -0,0 +1,289 @@
1
+ /**
2
+ * Core Abstractions and Interfaces
3
+ * These form the foundation of our clean architecture
4
+ */
5
+ export type Success<T> = {
6
+ success: true;
7
+ data: T;
8
+ };
9
+ export type Failure<E = Error> = {
10
+ success: false;
11
+ error: E;
12
+ };
13
+ export type Result<T, E = Error> = Success<T> | Failure<E>;
14
+ export declare class ResultUtil {
15
+ static ok<T>(data: T): Success<T>;
16
+ static fail<E = Error>(error: E): Failure<E>;
17
+ static isSuccess<T, E>(result: Result<T, E>): result is Success<T>;
18
+ static isFailure<T, E>(result: Result<T, E>): result is Failure<E>;
19
+ static map<T, U, E>(result: Result<T, E>, fn: (data: T) => U): Result<U, E>;
20
+ static flatMap<T, U, E>(result: Result<T, E>, fn: (data: T) => Result<U, E>): Result<U, E>;
21
+ static fromPromise<T>(promise: Promise<T>, errorHandler?: (error: unknown) => Error): Promise<Result<T>>;
22
+ }
23
+ export declare abstract class DomainError extends Error {
24
+ readonly details?: unknown | undefined;
25
+ abstract readonly code: string;
26
+ abstract readonly statusCode: number;
27
+ constructor(message: string, details?: unknown | undefined);
28
+ toJSON(): {
29
+ name: string;
30
+ code: string;
31
+ message: string;
32
+ details: unknown;
33
+ stack: string | undefined;
34
+ };
35
+ }
36
+ export declare class ConnectionError extends DomainError {
37
+ readonly code = "CONNECTION_ERROR";
38
+ readonly statusCode = 503;
39
+ }
40
+ export declare class ModelNotFoundError extends DomainError {
41
+ readonly code = "MODEL_NOT_FOUND";
42
+ readonly statusCode = 404;
43
+ }
44
+ export declare class InvalidOperationError extends DomainError {
45
+ readonly code = "INVALID_OPERATION";
46
+ readonly statusCode = 400;
47
+ }
48
+ export declare class ValidationError extends DomainError {
49
+ readonly code = "VALIDATION_ERROR";
50
+ readonly statusCode = 422;
51
+ }
52
+ export declare class COMError extends DomainError {
53
+ readonly code = "COM_ERROR";
54
+ readonly statusCode = 500;
55
+ }
56
+ /**
57
+ * Connection management interface
58
+ */
59
+ export interface IConnection<T = unknown> {
60
+ connect(): Promise<Result<T>>;
61
+ disconnect(): Promise<Result<void>>;
62
+ isConnected(): boolean;
63
+ getConnection(): T | null;
64
+ healthCheck(): Promise<Result<boolean>>;
65
+ }
66
+ /**
67
+ * Repository pattern interface
68
+ */
69
+ export interface IRepository<T, ID = string> {
70
+ findById(id: ID): Promise<Result<T | null>>;
71
+ findAll(): Promise<Result<T[]>>;
72
+ save(entity: T): Promise<Result<T>>;
73
+ update(id: ID, entity: Partial<T>): Promise<Result<T>>;
74
+ delete(id: ID): Promise<Result<void>>;
75
+ exists(id: ID): Promise<Result<boolean>>;
76
+ }
77
+ /**
78
+ * Unit of Work pattern for transactions
79
+ */
80
+ export interface IUnitOfWork {
81
+ begin(): Promise<Result<void>>;
82
+ commit(): Promise<Result<void>>;
83
+ rollback(): Promise<Result<void>>;
84
+ inTransaction(): boolean;
85
+ }
86
+ /**
87
+ * Command pattern interface
88
+ */
89
+ export interface ICommand<TParams = unknown, TResult = unknown> {
90
+ execute(params: TParams): Promise<Result<TResult>>;
91
+ canExecute(params: TParams): Promise<Result<boolean>>;
92
+ validate(params: TParams): Result<void>;
93
+ }
94
+ /**
95
+ * Query pattern interface
96
+ */
97
+ export interface IQuery<TParams = unknown, TResult = unknown> {
98
+ execute(params: TParams): Promise<Result<TResult>>;
99
+ validate(params: TParams): Result<void>;
100
+ }
101
+ /**
102
+ * Event interface for Observer pattern
103
+ */
104
+ export interface IEvent {
105
+ readonly id: string;
106
+ readonly timestamp: Date;
107
+ readonly type: string;
108
+ readonly payload?: unknown;
109
+ }
110
+ /**
111
+ * Event handler interface
112
+ */
113
+ export interface IEventHandler<T extends IEvent = IEvent> {
114
+ handle(event: T): Promise<Result<void>>;
115
+ canHandle(event: IEvent): boolean;
116
+ }
117
+ /**
118
+ * Event bus interface
119
+ */
120
+ export interface IEventBus {
121
+ publish(event: IEvent): Promise<Result<void>>;
122
+ subscribe(eventType: string, handler: IEventHandler): void;
123
+ unsubscribe(eventType: string, handler: IEventHandler): void;
124
+ }
125
+ /**
126
+ * SolidWorks model types
127
+ */
128
+ export declare enum ModelType {
129
+ Part = "Part",
130
+ Assembly = "Assembly",
131
+ Drawing = "Drawing"
132
+ }
133
+ /**
134
+ * SolidWorks model interface
135
+ */
136
+ export interface ISolidWorksModel {
137
+ readonly id: string;
138
+ readonly path: string;
139
+ readonly name: string;
140
+ readonly type: ModelType;
141
+ readonly isActive: boolean;
142
+ readonly isDirty: boolean;
143
+ readonly metadata?: Record<string, unknown>;
144
+ }
145
+ /**
146
+ * SolidWorks feature interface
147
+ */
148
+ export interface ISolidWorksFeature {
149
+ readonly id: string;
150
+ readonly name: string;
151
+ readonly type: string;
152
+ readonly suppressed: boolean;
153
+ readonly parameters?: Record<string, unknown>;
154
+ }
155
+ /**
156
+ * SolidWorks dimension interface
157
+ */
158
+ export interface ISolidWorksDimension {
159
+ readonly name: string;
160
+ readonly value: number;
161
+ readonly feature: string;
162
+ readonly tolerance?: {
163
+ upper: number;
164
+ lower: number;
165
+ };
166
+ }
167
+ /**
168
+ * SolidWorks API adapter interface
169
+ */
170
+ export interface ISolidWorksAdapter {
171
+ connect(): Promise<Result<void>>;
172
+ disconnect(): Promise<Result<void>>;
173
+ isConnected(): boolean;
174
+ openModel(path: string): Promise<Result<ISolidWorksModel>>;
175
+ closeModel(save: boolean): Promise<Result<void>>;
176
+ createPart(): Promise<Result<ISolidWorksModel>>;
177
+ getCurrentModel(): Result<ISolidWorksModel | null>;
178
+ saveModel(path?: string): Promise<Result<void>>;
179
+ createFeature(params: unknown): Promise<Result<ISolidWorksFeature>>;
180
+ getFeatures(): Promise<Result<ISolidWorksFeature[]>>;
181
+ suppressFeature(name: string): Promise<Result<void>>;
182
+ getDimension(name: string): Promise<Result<ISolidWorksDimension>>;
183
+ setDimension(name: string, value: number): Promise<Result<void>>;
184
+ listDimensions(): Promise<Result<ISolidWorksDimension[]>>;
185
+ exportModel(path: string, format: string): Promise<Result<void>>;
186
+ }
187
+ /**
188
+ * Configuration provider interface
189
+ */
190
+ export interface IConfigurationProvider {
191
+ get<T = unknown>(key: string): T | undefined;
192
+ getRequired<T = unknown>(key: string): T;
193
+ set(key: string, value: unknown): void;
194
+ has(key: string): boolean;
195
+ validate(): Result<void>;
196
+ reload(): Promise<Result<void>>;
197
+ }
198
+ /**
199
+ * Logger interface
200
+ */
201
+ export interface ILogger {
202
+ debug(message: string, context?: Record<string, unknown>): void;
203
+ info(message: string, context?: Record<string, unknown>): void;
204
+ warn(message: string, context?: Record<string, unknown>): void;
205
+ error(message: string, error?: Error, context?: Record<string, unknown>): void;
206
+ fatal(message: string, error?: Error, context?: Record<string, unknown>): void;
207
+ }
208
+ /**
209
+ * Abstract factory interface
210
+ */
211
+ export interface IFactory<T, TParams = unknown> {
212
+ create(params: TParams): Result<T>;
213
+ canCreate(params: TParams): boolean;
214
+ }
215
+ /**
216
+ * Service locator interface (for dependency injection)
217
+ */
218
+ export interface IServiceLocator {
219
+ register<T>(token: symbol | string, instance: T): void;
220
+ resolve<T>(token: symbol | string): T;
221
+ has(token: symbol | string): boolean;
222
+ reset(): void;
223
+ }
224
+ /**
225
+ * Validator interface
226
+ */
227
+ export interface IValidator<T = unknown> {
228
+ validate(input: unknown): Result<T>;
229
+ isValid(input: unknown): boolean;
230
+ }
231
+ /**
232
+ * Validation rule interface
233
+ */
234
+ export interface IValidationRule<T = unknown> {
235
+ validate(value: T): Result<void>;
236
+ message: string;
237
+ }
238
+ /**
239
+ * Middleware interface for request processing pipeline
240
+ */
241
+ export interface IMiddleware<TContext = unknown> {
242
+ execute(context: TContext, next: () => Promise<Result<void>>): Promise<Result<void>>;
243
+ }
244
+ /**
245
+ * Pipeline interface
246
+ */
247
+ export interface IPipeline<TContext = unknown> {
248
+ use(middleware: IMiddleware<TContext>): void;
249
+ execute(context: TContext): Promise<Result<void>>;
250
+ }
251
+ /**
252
+ * Cache interface
253
+ */
254
+ export interface ICache<T = unknown> {
255
+ get(key: string): Promise<Result<T | null>>;
256
+ set(key: string, value: T, ttl?: number): Promise<Result<void>>;
257
+ has(key: string): Promise<Result<boolean>>;
258
+ delete(key: string): Promise<Result<void>>;
259
+ clear(): Promise<Result<void>>;
260
+ size(): Promise<Result<number>>;
261
+ }
262
+ /**
263
+ * Metrics collector interface
264
+ */
265
+ export interface IMetricsCollector {
266
+ increment(metric: string, value?: number, tags?: Record<string, string>): void;
267
+ gauge(metric: string, value: number, tags?: Record<string, string>): void;
268
+ histogram(metric: string, value: number, tags?: Record<string, string>): void;
269
+ timing(metric: string, duration: number, tags?: Record<string, string>): void;
270
+ }
271
+ /**
272
+ * Health check interface
273
+ */
274
+ export interface IHealthCheck {
275
+ name: string;
276
+ check(): Promise<Result<HealthStatus>>;
277
+ }
278
+ export interface HealthStatus {
279
+ status: 'healthy' | 'degraded' | 'unhealthy';
280
+ message?: string;
281
+ details?: Record<string, unknown>;
282
+ }
283
+ export declare const TypeGuards: {
284
+ isModelType(value: unknown): value is ModelType;
285
+ isSolidWorksModel(value: unknown): value is ISolidWorksModel;
286
+ isError(value: unknown): value is Error;
287
+ isDomainError(value: unknown): value is DomainError;
288
+ };
289
+ //# sourceMappingURL=core-abstractions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-abstractions.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/core-abstractions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI;IACvB,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,CAAC,CAAC;CACT,CAAC;AAEF,MAAM,MAAM,OAAO,CAAC,CAAC,GAAG,KAAK,IAAI;IAC/B,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE3D,qBAAa,UAAU;IACrB,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIjC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAI5C,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC;IAIlE,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC;IAIlE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAChB,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GACjB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;IAOf,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACpB,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EACpB,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAC5B,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;WAOF,WAAW,CAAC,CAAC,EACxB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,GACvC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;CAatB;AAMD,8BAAsB,WAAY,SAAQ,KAAK;aAIA,OAAO,CAAC,EAAE,OAAO;IAH9D,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEzB,OAAO,EAAE,MAAM,EAAkB,OAAO,CAAC,EAAE,OAAO,YAAA;IAM9D,MAAM;;;;;;;CASP;AAED,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED,qBAAa,kBAAmB,SAAQ,WAAW;IACjD,QAAQ,CAAC,IAAI,qBAAqB;IAClC,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED,qBAAa,qBAAsB,SAAQ,WAAW;IACpD,QAAQ,CAAC,IAAI,uBAAuB;IACpC,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAED,qBAAa,QAAS,SAAQ,WAAW;IACvC,QAAQ,CAAC,IAAI,eAAe;IAC5B,QAAQ,CAAC,UAAU,OAAO;CAC3B;AAMD;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,WAAW,IAAI,OAAO,CAAC;IACvB,aAAa,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM;IACzC,QAAQ,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAC5C,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/B,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAChC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAClC,aAAa,IAAI,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO;IAC5D,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,MAAM,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO;IAC1D,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACtD,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACxC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC3D,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;CAC9D;AAMD;;GAEG;AACH,oBAAY,SAAS;IACnB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,OAAO,YAAY;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAEjC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACjC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,WAAW,IAAI,OAAO,CAAC;IAGvB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC3D,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAChD,eAAe,IAAI,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACnD,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAGhD,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACpE,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;IACrD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAGrD,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAClE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACjE,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;IAG1D,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CAClE;AAMD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC;IAC7C,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC;IACzC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACvC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAChE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC/D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC/D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC/E,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAChF;AAMD;;GAEG;AACH,MAAM,WAAW,QAAQ,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO;IAC5C,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACnC,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC;IACvD,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC;IACtC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACrC,KAAK,IAAI,IAAI,CAAC;CACf;AAMD;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,OAAO;IACrC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpC,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO;IAC1C,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,QAAQ,GAAG,OAAO;IAC7C,OAAO,CACL,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAChC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,SAAS,CAAC,QAAQ,GAAG,OAAO;IAC3C,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IAC7C,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CACnD;AAMD;;GAEG;AACH,MAAM,WAAW,MAAM,CAAC,CAAC,GAAG,OAAO;IACjC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAC5C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/B,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;CACjC;AAMD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC/E,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC1E,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC9E,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;CAC/E;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAMD,eAAO,MAAM,UAAU;uBACF,OAAO,GAAG,KAAK,IAAI,SAAS;6BAItB,OAAO,GAAG,KAAK,IAAI,gBAAgB;mBAY7C,OAAO,GAAG,KAAK,IAAI,KAAK;yBAIlB,OAAO,GAAG,KAAK,IAAI,WAAW;CAGpD,CAAC"}
@@ -0,0 +1,121 @@
1
+ /**
2
+ * Core Abstractions and Interfaces
3
+ * These form the foundation of our clean architecture
4
+ */
5
+ export class ResultUtil {
6
+ static ok(data) {
7
+ return { success: true, data };
8
+ }
9
+ static fail(error) {
10
+ return { success: false, error };
11
+ }
12
+ static isSuccess(result) {
13
+ return result.success === true;
14
+ }
15
+ static isFailure(result) {
16
+ return result.success === false;
17
+ }
18
+ static map(result, fn) {
19
+ if (ResultUtil.isSuccess(result)) {
20
+ return ResultUtil.ok(fn(result.data));
21
+ }
22
+ return result;
23
+ }
24
+ static flatMap(result, fn) {
25
+ if (ResultUtil.isSuccess(result)) {
26
+ return fn(result.data);
27
+ }
28
+ return result;
29
+ }
30
+ static async fromPromise(promise, errorHandler) {
31
+ try {
32
+ const data = await promise;
33
+ return ResultUtil.ok(data);
34
+ }
35
+ catch (error) {
36
+ const processedError = errorHandler
37
+ ? errorHandler(error)
38
+ : error instanceof Error
39
+ ? error
40
+ : new Error(String(error));
41
+ return ResultUtil.fail(processedError);
42
+ }
43
+ }
44
+ }
45
+ // ============================================
46
+ // 2. DOMAIN ERRORS
47
+ // ============================================
48
+ export class DomainError extends Error {
49
+ details;
50
+ constructor(message, details) {
51
+ super(message);
52
+ this.details = details;
53
+ this.name = this.constructor.name;
54
+ Error.captureStackTrace(this, this.constructor);
55
+ }
56
+ toJSON() {
57
+ return {
58
+ name: this.name,
59
+ code: this.code,
60
+ message: this.message,
61
+ details: this.details,
62
+ stack: this.stack,
63
+ };
64
+ }
65
+ }
66
+ export class ConnectionError extends DomainError {
67
+ code = 'CONNECTION_ERROR';
68
+ statusCode = 503;
69
+ }
70
+ export class ModelNotFoundError extends DomainError {
71
+ code = 'MODEL_NOT_FOUND';
72
+ statusCode = 404;
73
+ }
74
+ export class InvalidOperationError extends DomainError {
75
+ code = 'INVALID_OPERATION';
76
+ statusCode = 400;
77
+ }
78
+ export class ValidationError extends DomainError {
79
+ code = 'VALIDATION_ERROR';
80
+ statusCode = 422;
81
+ }
82
+ export class COMError extends DomainError {
83
+ code = 'COM_ERROR';
84
+ statusCode = 500;
85
+ }
86
+ // ============================================
87
+ // 4. SOLIDWORKS SPECIFIC INTERFACES
88
+ // ============================================
89
+ /**
90
+ * SolidWorks model types
91
+ */
92
+ export var ModelType;
93
+ (function (ModelType) {
94
+ ModelType["Part"] = "Part";
95
+ ModelType["Assembly"] = "Assembly";
96
+ ModelType["Drawing"] = "Drawing";
97
+ })(ModelType || (ModelType = {}));
98
+ // ============================================
99
+ // TYPE GUARDS
100
+ // ============================================
101
+ export const TypeGuards = {
102
+ isModelType(value) {
103
+ return Object.values(ModelType).includes(value);
104
+ },
105
+ isSolidWorksModel(value) {
106
+ return (typeof value === 'object' &&
107
+ value !== null &&
108
+ 'id' in value &&
109
+ 'path' in value &&
110
+ 'name' in value &&
111
+ 'type' in value &&
112
+ TypeGuards.isModelType(value.type));
113
+ },
114
+ isError(value) {
115
+ return value instanceof Error;
116
+ },
117
+ isDomainError(value) {
118
+ return value instanceof DomainError;
119
+ },
120
+ };
121
+ //# sourceMappingURL=core-abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-abstractions.js","sourceRoot":"","sources":["../../../src/core/interfaces/core-abstractions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * SolidWorks MCP Server - Clean Architecture Implementation
4
+ * Production-ready, maintainable, and scalable MCP server
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=index.refactored.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.refactored.d.ts","sourceRoot":"","sources":["../src/index.refactored.ts"],"names":[],"mappings":";AAEA;;;GAGG"}