openpost 1.0.4

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 (116) hide show
  1. package/README.md +359 -0
  2. package/dist/auth/authHandler.d.ts +11 -0
  3. package/dist/auth/authHandler.d.ts.map +1 -0
  4. package/dist/builtInVault.d.ts +25 -0
  5. package/dist/builtInVault.d.ts.map +1 -0
  6. package/dist/cli/commands/config.d.ts +3 -0
  7. package/dist/cli/commands/config.d.ts.map +1 -0
  8. package/dist/cli/commands/crud.d.ts +3 -0
  9. package/dist/cli/commands/crud.d.ts.map +1 -0
  10. package/dist/cli/commands/envVar.d.ts +3 -0
  11. package/dist/cli/commands/envVar.d.ts.map +1 -0
  12. package/dist/cli/commands/importExport.d.ts +3 -0
  13. package/dist/cli/commands/importExport.d.ts.map +1 -0
  14. package/dist/cli/commands/license.d.ts +3 -0
  15. package/dist/cli/commands/license.d.ts.map +1 -0
  16. package/dist/cli/commands/list.d.ts +4 -0
  17. package/dist/cli/commands/list.d.ts.map +1 -0
  18. package/dist/cli/commands/proxyCookie.d.ts +3 -0
  19. package/dist/cli/commands/proxyCookie.d.ts.map +1 -0
  20. package/dist/cli/commands/run.d.ts +3 -0
  21. package/dist/cli/commands/run.d.ts.map +1 -0
  22. package/dist/cli/commands/servers.d.ts +3 -0
  23. package/dist/cli/commands/servers.d.ts.map +1 -0
  24. package/dist/cli/commands/vault.d.ts +3 -0
  25. package/dist/cli/commands/vault.d.ts.map +1 -0
  26. package/dist/cli/config.d.ts +23 -0
  27. package/dist/cli/config.d.ts.map +1 -0
  28. package/dist/cli/mcp-collection-stdio.d.ts +13 -0
  29. package/dist/cli/mcp-collection-stdio.d.ts.map +1 -0
  30. package/dist/cli/mcp-stdio.d.ts +13 -0
  31. package/dist/cli/mcp-stdio.d.ts.map +1 -0
  32. package/dist/cli/openpost.d.ts +64 -0
  33. package/dist/cli/openpost.d.ts.map +1 -0
  34. package/dist/cli/output.d.ts +29 -0
  35. package/dist/cli/output.d.ts.map +1 -0
  36. package/dist/cli-bundle.js +263 -0
  37. package/dist/container/serviceContainer.d.ts +35 -0
  38. package/dist/container/serviceContainer.d.ts.map +1 -0
  39. package/dist/cookieJar.d.ts +18 -0
  40. package/dist/cookieJar.d.ts.map +1 -0
  41. package/dist/curlParser.d.ts +11 -0
  42. package/dist/curlParser.d.ts.map +1 -0
  43. package/dist/errors/appError.d.ts +35 -0
  44. package/dist/errors/appError.d.ts.map +1 -0
  45. package/dist/events/typedEventBus.d.ts +9 -0
  46. package/dist/events/typedEventBus.d.ts.map +1 -0
  47. package/dist/httpClient.d.ts +15 -0
  48. package/dist/httpClient.d.ts.map +1 -0
  49. package/dist/index.d.ts +50 -0
  50. package/dist/index.d.ts.map +1 -0
  51. package/dist/index.min.js +212 -0
  52. package/dist/inheritance.d.ts +9 -0
  53. package/dist/inheritance.d.ts.map +1 -0
  54. package/dist/interfaces/configProvider.d.ts +10 -0
  55. package/dist/interfaces/configProvider.d.ts.map +1 -0
  56. package/dist/interfaces/eventBus.d.ts +44 -0
  57. package/dist/interfaces/eventBus.d.ts.map +1 -0
  58. package/dist/interfaces/fileStore.d.ts +66 -0
  59. package/dist/interfaces/fileStore.d.ts.map +1 -0
  60. package/dist/interfaces/logger.d.ts +9 -0
  61. package/dist/interfaces/logger.d.ts.map +1 -0
  62. package/dist/interfaces/secretStorage.d.ts +7 -0
  63. package/dist/interfaces/secretStorage.d.ts.map +1 -0
  64. package/dist/interpolation.d.ts +10 -0
  65. package/dist/interpolation.d.ts.map +1 -0
  66. package/dist/licenseValidator.d.ts +18 -0
  67. package/dist/licenseValidator.d.ts.map +1 -0
  68. package/dist/managementMcpServer.d.ts +80 -0
  69. package/dist/managementMcpServer.d.ts.map +1 -0
  70. package/dist/mcpServer.d.ts +54 -0
  71. package/dist/mcpServer.d.ts.map +1 -0
  72. package/dist/mcpToolDefs.d.ts +13 -0
  73. package/dist/mcpToolDefs.d.ts.map +1 -0
  74. package/dist/mcpToolEngine.d.ts +22 -0
  75. package/dist/mcpToolEngine.d.ts.map +1 -0
  76. package/dist/mockServer.d.ts +117 -0
  77. package/dist/mockServer.d.ts.map +1 -0
  78. package/dist/mockServerManager.d.ts +219 -0
  79. package/dist/mockServerManager.d.ts.map +1 -0
  80. package/dist/openApiGenerator.d.ts +19 -0
  81. package/dist/openApiGenerator.d.ts.map +1 -0
  82. package/dist/openApiParser.d.ts +11 -0
  83. package/dist/openApiParser.d.ts.map +1 -0
  84. package/dist/openpost.d.ts +101 -0
  85. package/dist/openpost.d.ts.map +1 -0
  86. package/dist/routeMatcher.d.ts +59 -0
  87. package/dist/routeMatcher.d.ts.map +1 -0
  88. package/dist/scripting/sandbox.d.ts +14 -0
  89. package/dist/scripting/sandbox.d.ts.map +1 -0
  90. package/dist/serverRegistry.d.ts +22 -0
  91. package/dist/serverRegistry.d.ts.map +1 -0
  92. package/dist/services/collectionRunEngine.d.ts +24 -0
  93. package/dist/services/collectionRunEngine.d.ts.map +1 -0
  94. package/dist/services/collectionService.d.ts +22 -0
  95. package/dist/services/collectionService.d.ts.map +1 -0
  96. package/dist/services/environmentService.d.ts +16 -0
  97. package/dist/services/environmentService.d.ts.map +1 -0
  98. package/dist/services/historyService.d.ts +16 -0
  99. package/dist/services/historyService.d.ts.map +1 -0
  100. package/dist/services/requestEngine.d.ts +49 -0
  101. package/dist/services/requestEngine.d.ts.map +1 -0
  102. package/dist/services/settingsService.d.ts +21 -0
  103. package/dist/services/settingsService.d.ts.map +1 -0
  104. package/dist/services/snapshotEngine.d.ts +23 -0
  105. package/dist/services/snapshotEngine.d.ts.map +1 -0
  106. package/dist/storage/standaloneFileStore.d.ts +109 -0
  107. package/dist/storage/standaloneFileStore.d.ts.map +1 -0
  108. package/dist/stripComments.d.ts +3 -0
  109. package/dist/stripComments.d.ts.map +1 -0
  110. package/dist/testRunner.d.ts +4 -0
  111. package/dist/testRunner.d.ts.map +1 -0
  112. package/dist/types.d.ts +1011 -0
  113. package/dist/types.d.ts.map +1 -0
  114. package/dist/vaultManager.d.ts +50 -0
  115. package/dist/vaultManager.d.ts.map +1 -0
  116. package/package.json +56 -0
@@ -0,0 +1,9 @@
1
+ import { Collection, ApiRequest, AuthConfig } from './types';
2
+ /** Resolve inherited auth by walking up the folder chain */
3
+ export declare function resolveInheritedAuth(col: Collection, folderPath: string[], request: ApiRequest): AuthConfig;
4
+ /** Resolve inherited scripts by concatenating from collection down */
5
+ export declare function resolveInheritedScripts(col: Collection, folderPath: string[], request: ApiRequest): {
6
+ pre: string;
7
+ test: string;
8
+ };
9
+ //# sourceMappingURL=inheritance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inheritance.d.ts","sourceRoot":"","sources":["../src/inheritance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE/E,4DAA4D;AAC5D,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU,CAe3G;AAED,sEAAsE;AACtE,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAkBjI"}
@@ -0,0 +1,10 @@
1
+ export interface IConfigProvider {
2
+ get<T>(key: string, defaultValue: T): T;
3
+ }
4
+ /** Static config provider — useful for CLI/standalone contexts */
5
+ export declare class StaticConfigProvider implements IConfigProvider {
6
+ private values;
7
+ constructor(values?: Record<string, unknown>);
8
+ get<T>(key: string, defaultValue: T): T;
9
+ }
10
+ //# sourceMappingURL=configProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configProvider.d.ts","sourceRoot":"","sources":["../../src/interfaces/configProvider.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC;CACzC;AAED,kEAAkE;AAClE,qBAAa,oBAAqB,YAAW,eAAe;IAC9C,OAAO,CAAC,MAAM;gBAAN,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IACxD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC;CAGxC"}
@@ -0,0 +1,44 @@
1
+ export interface EventMap {
2
+ 'request.started': {
3
+ requestId: string;
4
+ };
5
+ 'request.completed': {
6
+ requestId: string;
7
+ status: number;
8
+ time: number;
9
+ };
10
+ 'request.failed': {
11
+ requestId: string;
12
+ error: Error;
13
+ };
14
+ 'collection.changed': {
15
+ scope: 'local' | 'global';
16
+ };
17
+ 'environment.changed': {
18
+ scope: 'local' | 'global';
19
+ };
20
+ 'history.changed': {
21
+ scope: 'local' | 'global';
22
+ };
23
+ 'snapshot.changed': {};
24
+ 'vault.locked': {};
25
+ 'vault.unlocked': {};
26
+ 'server.started': {
27
+ type: 'mock' | 'mcp' | 'management';
28
+ port: number;
29
+ };
30
+ 'server.stopped': {
31
+ type: 'mock' | 'mcp' | 'management';
32
+ };
33
+ 'settings.changed': {
34
+ key: string;
35
+ };
36
+ 'cookies.changed': {};
37
+ }
38
+ export interface IEventBus {
39
+ emit<T extends keyof EventMap>(event: T, payload: EventMap[T]): void;
40
+ on<T extends keyof EventMap>(event: T, handler: (payload: EventMap[T]) => void): () => void;
41
+ off<T extends keyof EventMap>(event: T, handler: (payload: EventMap[T]) => void): void;
42
+ removeAllListeners(): void;
43
+ }
44
+ //# sourceMappingURL=eventBus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventBus.d.ts","sourceRoot":"","sources":["../../src/interfaces/eventBus.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,iBAAiB,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,mBAAmB,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE,gBAAgB,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IACtD,oBAAoB,EAAE;QAAE,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAA;KAAE,CAAC;IACpD,qBAAqB,EAAE;QAAE,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAA;KAAE,CAAC;IACrD,iBAAiB,EAAE;QAAE,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAA;KAAE,CAAC;IACjD,kBAAkB,EAAE,EAAE,CAAC;IACvB,cAAc,EAAE,EAAE,CAAC;IACnB,gBAAgB,EAAE,EAAE,CAAC;IACrB,gBAAgB,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,YAAY,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,gBAAgB,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,YAAY,CAAA;KAAE,CAAC;IAC1D,kBAAkB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,iBAAiB,EAAE,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,CAAC,SAAS,MAAM,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACrE,EAAE,CAAC,CAAC,SAAS,MAAM,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC5F,GAAG,CAAC,CAAC,SAAS,MAAM,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IACvF,kBAAkB,IAAI,IAAI,CAAC;CAC5B"}
@@ -0,0 +1,66 @@
1
+ import type { Collection, Environment, HistoryEntry, CookieEntry, Snapshot, ProxyConfig, MockConfig, MockServerConfig, McpServerConfig, CollectionRunEntry, VaultProvider, SecretSet } from '../types';
2
+ export interface TabSettings {
3
+ tabViewCollapsed: boolean;
4
+ tabGrouping: boolean;
5
+ subtleContracts: boolean;
6
+ autoHideSidebar: boolean;
7
+ simpleMode: boolean;
8
+ uiZoom: number;
9
+ }
10
+ export type TabSettingKey = 'tabViewCollapsed' | 'tabGrouping' | 'subtleContracts' | 'autoHideSidebar' | 'simpleMode';
11
+ export interface IFileStore {
12
+ hasWorkspace(): boolean;
13
+ getStoragePath(): string | undefined;
14
+ getGlobalStoragePath(): string;
15
+ loadCollections(): Collection[];
16
+ saveCollections(c: Collection[]): void;
17
+ loadGlobalCollections(): Collection[];
18
+ saveGlobalCollections(c: Collection[]): void;
19
+ loadEnvironments(): Environment[];
20
+ saveEnvironments(e: Environment[]): void;
21
+ loadGlobalEnvironments(): Environment[];
22
+ saveGlobalEnvironments(e: Environment[]): void;
23
+ loadActiveEnvironmentId(): string | null;
24
+ saveActiveEnvironmentId(id: string | null): void;
25
+ loadGlobalActiveEnvironmentId(): string | null;
26
+ saveGlobalActiveEnvironmentId(id: string | null): void;
27
+ loadHistory(): HistoryEntry[];
28
+ saveHistory(h: HistoryEntry[]): void;
29
+ loadGlobalHistory(): HistoryEntry[];
30
+ saveGlobalHistory(h: HistoryEntry[]): void;
31
+ loadCookies(): CookieEntry[];
32
+ saveCookies(c: CookieEntry[]): void;
33
+ loadCookiesEnabled(): boolean;
34
+ saveCookiesEnabled(enabled: boolean): void;
35
+ loadSnapshots(): Snapshot[];
36
+ saveSnapshots(s: Snapshot[]): void;
37
+ loadSession(): unknown;
38
+ saveSession(data: unknown): void;
39
+ loadTabSettings(): TabSettings;
40
+ saveTabSetting(key: TabSettingKey, value: boolean): void;
41
+ saveUiZoom(value: number): void;
42
+ loadProxies(): ProxyConfig[];
43
+ saveProxies(proxies: ProxyConfig[]): void;
44
+ loadDefaultProxyId(): string | null;
45
+ saveDefaultProxyId(id: string | null): void;
46
+ loadMockConfig(): MockConfig;
47
+ saveMockConfig(config: MockConfig): void;
48
+ loadMockServers(): MockServerConfig[];
49
+ saveMockServers(configs: MockServerConfig[]): void;
50
+ migrateLegacyMockConfig(): void;
51
+ loadMaxMockServers(): number;
52
+ saveMaxMockServers(cap: number): void;
53
+ loadMcpServers(): McpServerConfig[];
54
+ saveMcpServers(configs: McpServerConfig[]): void;
55
+ loadCollectionRunHistory(scope: 'local' | 'global'): CollectionRunEntry[];
56
+ saveCollectionRunHistory(scope: 'local' | 'global', entries: CollectionRunEntry[]): void;
57
+ loadVaultProviders(): VaultProvider[];
58
+ saveVaultProviders(providers: VaultProvider[]): void;
59
+ loadSecretSets(): SecretSet[];
60
+ saveSecretSets(sets: SecretSet[]): void;
61
+ loadActiveSecretSetId(): string | null;
62
+ saveActiveSecretSetId(id: string | null): void;
63
+ loadLicenseKey(): string | null;
64
+ saveLicenseKey(key: string | null): void;
65
+ }
66
+ //# sourceMappingURL=fileStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileStore.d.ts","sourceRoot":"","sources":["../../src/interfaces/fileStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export interface ILogger {
2
+ debug(message: string, context?: Record<string, unknown>): void;
3
+ info(message: string, context?: Record<string, unknown>): void;
4
+ warn(message: string, context?: Record<string, unknown>): void;
5
+ error(message: string, error?: Error, context?: Record<string, unknown>): void;
6
+ }
7
+ /** No-op logger for contexts where logging is not needed */
8
+ export declare const nullLogger: ILogger;
9
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/interfaces/logger.ts"],"names":[],"mappings":"AAAA,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;CAChF;AAED,4DAA4D;AAC5D,eAAO,MAAM,UAAU,EAAE,OAKxB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /** Platform-agnostic secret storage (OS keychain abstraction) */
2
+ export interface ISecretStorage {
3
+ get(key: string): Promise<string | undefined>;
4
+ store(key: string, value: string): Promise<void>;
5
+ delete(key: string): Promise<void>;
6
+ }
7
+ //# sourceMappingURL=secretStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secretStorage.d.ts","sourceRoot":"","sources":["../../src/interfaces/secretStorage.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Recursively replaces {{variable}} placeholders with values from the variables map.
3
+ */
4
+ export declare function interpolateVariables(text: string, variables: Record<string, string>): string;
5
+ /**
6
+ * Resolves variables across scopes (request > collection > workspace > global).
7
+ * Later scopes are overridden by earlier ones.
8
+ */
9
+ export declare function resolveVariables(...scopes: Record<string, string>[]): Record<string, string>;
10
+ //# sourceMappingURL=interpolation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interpolation.d.ts","sourceRoot":"","sources":["../src/interpolation.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAE5F;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAClC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOxB"}
@@ -0,0 +1,18 @@
1
+ export declare function initLicenseStore(load: () => string | null, save: (key: string | null) => void): void;
2
+ export declare function verifyLicense(jwt: string): {
3
+ valid: boolean;
4
+ expired: boolean;
5
+ payload: any;
6
+ };
7
+ export declare function isLicensed(): boolean;
8
+ /** Throws AppError if not licensed. Call at the start of gated methods. */
9
+ export declare function requireLicense(): void;
10
+ export declare function invalidateCache(): void;
11
+ export declare function getLicenseInfo(): {
12
+ valid: boolean;
13
+ expired: boolean;
14
+ expiry: number | null;
15
+ machineId: string;
16
+ };
17
+ export declare function computeMachineId(): string;
18
+ //# sourceMappingURL=licenseValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"licenseValidator.d.ts","sourceRoot":"","sources":["../src/licenseValidator.ts"],"names":[],"mappings":"AAMA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,CAIpG;AAsBD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAqB7F;AAED,wBAAgB,UAAU,IAAI,OAAO,CAUpC;AAED,2EAA2E;AAC3E,wBAAgB,cAAc,IAAI,IAAI,CAKrC;AAED,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED,wBAAgB,cAAc,IAAI;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAM/G;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAGzC"}
@@ -0,0 +1,80 @@
1
+ import { Collection, Environment, McpServerConfig, CollectionRunEntry, HistoryEntry, Snapshot, CookieEntry, ProxyConfig, CertificateEntry } from './types';
2
+ import { MockServerManager } from './mockServerManager';
3
+ import { McpServer } from './mcpServer';
4
+ export interface ManagementMcpDeps {
5
+ loadCollections: () => Collection[];
6
+ saveCollections: (c: Collection[]) => void;
7
+ loadGlobalCollections: () => Collection[];
8
+ saveGlobalCollections: (c: Collection[]) => void;
9
+ loadEnvironments: () => Environment[];
10
+ saveEnvironments: (e: Environment[]) => void;
11
+ loadGlobalEnvironments: () => Environment[];
12
+ saveGlobalEnvironments: (e: Environment[]) => void;
13
+ loadActiveEnvironmentId: () => string | null;
14
+ loadGlobalActiveEnvironmentId: () => string | null;
15
+ mockServerManager: MockServerManager;
16
+ getMcpServers: () => Map<string, McpServer>;
17
+ loadMcpServers: () => McpServerConfig[];
18
+ saveMcpServers: (c: McpServerConfig[]) => void;
19
+ syncLocal: () => void;
20
+ syncGlobal: () => void;
21
+ syncMockServers: () => void;
22
+ workspacePath: string | null;
23
+ loadCollectionRunHistory: (scope: 'local' | 'global') => CollectionRunEntry[];
24
+ saveCollectionRunHistory: (scope: 'local' | 'global', entries: CollectionRunEntry[]) => void;
25
+ maxCollectionRunHistory?: number;
26
+ loadHistory: () => HistoryEntry[];
27
+ saveHistory: (h: HistoryEntry[]) => void;
28
+ loadGlobalHistory: () => HistoryEntry[];
29
+ loadSnapshots: () => Snapshot[];
30
+ saveSnapshots: (s: Snapshot[]) => void;
31
+ loadCookies: () => CookieEntry[];
32
+ saveCookies: (c: CookieEntry[]) => void;
33
+ loadCookiesEnabled: () => boolean;
34
+ loadProxies?: () => ProxyConfig[];
35
+ loadDefaultProxyId?: () => string | null;
36
+ loadCertificates?: () => CertificateEntry[];
37
+ resolveSecretVariables?: (vars: string[], existing: Record<string, string>) => Promise<Record<string, string>>;
38
+ }
39
+ export declare class ManagementMcpServer {
40
+ private server;
41
+ private port;
42
+ private running;
43
+ private enabled;
44
+ private transport;
45
+ private sessionId;
46
+ private deps;
47
+ private onStatusChange;
48
+ constructor(deps: ManagementMcpDeps);
49
+ setOnStatusChange(cb: (status: {
50
+ running: boolean;
51
+ port: number;
52
+ enabled: boolean;
53
+ transport: 'stdio' | 'http';
54
+ error?: string;
55
+ }) => void): void;
56
+ isRunning(): boolean;
57
+ getPort(): number;
58
+ isEnabled(): boolean;
59
+ setEnabled(v: boolean): void;
60
+ getTransport(): "http" | "stdio";
61
+ setTransport(v: 'stdio' | 'http'): void;
62
+ getStatus(): {
63
+ running: boolean;
64
+ port: number;
65
+ enabled: boolean;
66
+ transport: "http" | "stdio";
67
+ };
68
+ start(port: number): Promise<void>;
69
+ stop(): Promise<void>;
70
+ private cleanup;
71
+ private emitStatus;
72
+ private handleRequest;
73
+ private handleJsonRpc;
74
+ private sendRpc;
75
+ private handleToolCall;
76
+ private buildEnvVars;
77
+ private buildEnvVarsAsync;
78
+ private buildTlsCertsLocal;
79
+ }
80
+ //# sourceMappingURL=managementMcpServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managementMcpServer.d.ts","sourceRoot":"","sources":["../src/managementMcpServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * MCP Server — Exposes collection requests as MCP tools via Streamable HTTP transport.
3
+ *
4
+ * Implements JSON-RPC 2.0 on a single POST /mcp endpoint.
5
+ * Each ApiRequest in the collection becomes an MCP tool that, when called,
6
+ * actually executes the HTTP request and returns the response.
7
+ */
8
+ import { Collection, MockLogEntry, ProxyConfig } from './types';
9
+ import { TlsCerts } from './httpClient';
10
+ export interface McpServerStatus {
11
+ running: boolean;
12
+ port: number;
13
+ error?: string;
14
+ }
15
+ export declare class McpServer {
16
+ private id;
17
+ private server;
18
+ private port;
19
+ private collection;
20
+ private envVars;
21
+ private engine;
22
+ private running;
23
+ private sessionId;
24
+ private onStatusChange;
25
+ private onLogEntry;
26
+ private swaggerEnabled;
27
+ private maxLogEntries;
28
+ constructor(id: string);
29
+ getId(): string;
30
+ isRunning(): boolean;
31
+ getPort(): number;
32
+ getCollectionId(): string | null;
33
+ getStatus(): McpServerStatus;
34
+ setOnStatusChange(cb: (status: McpServerStatus) => void): void;
35
+ setOnLogEntry(cb: (entry: MockLogEntry) => void): void;
36
+ setSwaggerEnabled(enabled: boolean): void;
37
+ setMaxLogEntries(max: number): void;
38
+ private addLog;
39
+ updateCollection(col: Collection): void;
40
+ updateVariables(vars: Record<string, string>): void;
41
+ private proxy;
42
+ private tlsCerts;
43
+ updateTlsConfig(proxy: ProxyConfig | null, tlsCerts?: TlsCerts): void;
44
+ start(port: number, collection: Collection, envVars: Record<string, string>): Promise<void>;
45
+ stop(): Promise<void>;
46
+ private cleanup;
47
+ private emitStatus;
48
+ private handleRequest;
49
+ private handleJsonRpc;
50
+ private sendJsonRpc;
51
+ private buildOpenApiDoc;
52
+ }
53
+ export { slugify, autoInferSchema } from './mcpToolEngine';
54
+ //# sourceMappingURL=mcpServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpServer.d.ts","sourceRoot":"","sources":["../src/mcpServer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,UAAU,EAA4C,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC1G,OAAO,EAAkB,QAAQ,EAAE,MAAM,cAAc,CAAC;AAUxD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,cAAc,CAAoD;IAC1E,OAAO,CAAC,UAAU,CAAgD;IAClE,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,aAAa,CAAe;gBAExB,EAAE,EAAE,MAAM;IAEtB,KAAK,IAAI,MAAM;IACf,SAAS,IAAI,OAAO;IACpB,OAAO,IAAI,MAAM;IACjB,eAAe,IAAI,MAAM,GAAG,IAAI;IAEhC,SAAS,IAAI,eAAe;IAI5B,iBAAiB,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,GAAG,IAAI;IAI9D,aAAa,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAItD,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IACzC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAEnC,OAAO,CAAC,MAAM;IAad,gBAAgB,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI;IACvC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IACnD,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,QAAQ,CAAuB;IACvC,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI;IAMrE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B3F,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAWrB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,aAAa;YAiEP,aAAa;IA2D3B,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,eAAe;CAmBxB;AAED,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Shared MCP tool definitions — used by both HTTP and stdio transports.
3
+ * This file MUST remain vscode-free.
4
+ */
5
+ export declare function inferJsonSchema(val: any): any;
6
+ export declare const TOOL_DEFS: {
7
+ name: string;
8
+ description: string;
9
+ inputSchema: any;
10
+ }[];
11
+ /** Tools that require a running VS Code extension (mock/MCP server management). */
12
+ export declare const SERVER_ONLY_TOOLS: Set<string>;
13
+ //# sourceMappingURL=mcpToolDefs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpToolDefs.d.ts","sourceRoot":"","sources":["../src/mcpToolDefs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAS7C;AAED,eAAO,MAAM,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,GAAG,CAAA;CAAE,EAiC9E,CAAC;AAUF,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,aAI5B,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * McpToolEngine — transport-independent tool logic for collection MCP servers.
3
+ * Used by both HTTP (mcpServer.ts) and stdio (mcp-collection-stdio.ts) transports.
4
+ */
5
+ import { Collection, ApiRequest, ProxyConfig } from './types';
6
+ import { TlsCerts } from './httpClient';
7
+ export declare function slugify(name: string): string;
8
+ export declare function autoInferSchema(r: ApiRequest): object;
9
+ export declare class McpToolEngine {
10
+ private collection;
11
+ private envVars;
12
+ private proxy;
13
+ private tlsCerts;
14
+ constructor(collection: Collection, envVars: Record<string, string>, proxy?: ProxyConfig | null, tlsCerts?: TlsCerts);
15
+ updateCollection(col: Collection): void;
16
+ updateVariables(vars: Record<string, string>): void;
17
+ updateTlsConfig(proxy: ProxyConfig | null, tlsCerts?: TlsCerts): void;
18
+ getEnvVars(): Record<string, string>;
19
+ listTools(): any[];
20
+ callTool(toolName: string, args: Record<string, any>): Promise<any>;
21
+ }
22
+ //# sourceMappingURL=mcpToolEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcpToolEngine.d.ts","sourceRoot":"","sources":["../src/mcpToolEngine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAoB,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAChF,OAAO,EAAkB,QAAQ,EAAE,MAAM,cAAc,CAAC;AAMxD,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,CA8BrD;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,QAAQ,CAAuB;gBAE3B,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,IAAI,EAAE,QAAQ,CAAC,EAAE,QAAQ;IAOpH,gBAAgB,CAAC,GAAG,EAAE,UAAU;IAChC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAC5C,eAAe,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,EAAE,QAAQ,CAAC,EAAE,QAAQ;IAC9D,UAAU;IAEV,SAAS,IAAI,GAAG,EAAE;IAqBZ,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;CA8I1E"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Mock Server — Local HTTP mock server for Open Post.
3
+ *
4
+ * Instance-based class that manages a Node.js `http.Server` bound to 127.0.0.1.
5
+ * Each instance is identified by a unique `id` and can be independently started,
6
+ * stopped, and configured.
7
+ *
8
+ * Routes are evaluated at request time against the in-memory route list,
9
+ * so enable/disable and edits take effect immediately without restart.
10
+ *
11
+ * The request handler matches incoming requests against configured routes,
12
+ * handles CORS preflight, and optionally serves a generated OpenAPI document
13
+ * at `/_openapi.json` when Swagger exposure is enabled.
14
+ */
15
+ import type { MockRoute, MockLogEntry, MockServerStatusData } from './types';
16
+ /**
17
+ * Detect the Content-Type for a file based on its extension.
18
+ * Returns the matching MIME type from `MIME_MAP`, or `application/octet-stream`
19
+ * if the extension is not recognised.
20
+ */
21
+ export declare function detectContentType(filePath: string): string;
22
+ /**
23
+ * Returns `true` when `port` is an integer in the range 1024–65535 (inclusive).
24
+ * Ports below 1024 are reserved / privileged; ports above 65535 are invalid.
25
+ */
26
+ export declare function isValidPort(port: number): boolean;
27
+ export declare class MockServer {
28
+ private id;
29
+ private server;
30
+ private port;
31
+ private routes;
32
+ private running;
33
+ private logEntries;
34
+ private maxLogEntries;
35
+ private swaggerEnabled;
36
+ private mcpEnabled;
37
+ private serverName;
38
+ private variables;
39
+ private onStatusChange;
40
+ private onLogEntry;
41
+ constructor(id: string);
42
+ /** Return the unique identifier for this server instance. */
43
+ getId(): string;
44
+ /** Enable or disable the Swagger/OpenAPI endpoint at `/_openapi.json`. */
45
+ setSwaggerEnabled(enabled: boolean): void;
46
+ /** Enable or disable the MCP JSON-RPC endpoint at `/mcp`. */
47
+ setMcpEnabled(enabled: boolean): void;
48
+ /** Whether MCP is enabled on this mock server. */
49
+ isMcpEnabled(): boolean;
50
+ /** Set the human-readable server name (used in OpenAPI doc title). */
51
+ setServerName(name: string): void;
52
+ /**
53
+ * Replace the variable map used for `{{variable}}` interpolation.
54
+ * Can be called before or after `start()` — takes effect on the next request.
55
+ */
56
+ setVariables(variables: Record<string, string>): void;
57
+ /**
58
+ * Start the mock server on the given port with the provided routes.
59
+ *
60
+ * Validates the port, creates an `http.Server`, and binds to `127.0.0.1:{port}`.
61
+ * Rejects with a descriptive error if the port is invalid or already in use.
62
+ */
63
+ start(port: number, routes: MockRoute[]): Promise<void>;
64
+ /**
65
+ * Stop the mock server and release the port.
66
+ * Resolves immediately if the server is not running.
67
+ */
68
+ stop(): Promise<void>;
69
+ /** Whether the server is currently listening. */
70
+ isRunning(): boolean;
71
+ /** The port the server is bound to (or was last configured with). */
72
+ getPort(): number;
73
+ /** Current server status suitable for sending to the webview. */
74
+ getStatus(): MockServerStatusData;
75
+ /**
76
+ * Replace the in-memory route list without restarting the server.
77
+ * The next incoming request will use the updated routes.
78
+ */
79
+ updateRoutes(routes: MockRoute[]): void;
80
+ /** Return a copy of the current log entries. */
81
+ getLog(): MockLogEntry[];
82
+ /** Clear all log entries. */
83
+ clearLog(): void;
84
+ /** Update the maximum number of log entries kept in memory. */
85
+ setMaxLogEntries(max: number): void;
86
+ /** Register a callback fired whenever the server status changes. */
87
+ setOnStatusChange(cb: (status: MockServerStatusData) => void): void;
88
+ /** Register a callback fired whenever a new log entry is created. */
89
+ setOnLogEntry(cb: (entry: MockLogEntry) => void): void;
90
+ /**
91
+ * Handle an incoming HTTP request.
92
+ *
93
+ * - If `swaggerEnabled` is true and path is `/_openapi.json`, serve the
94
+ * generated OpenAPI document and return.
95
+ * - OPTIONS → CORS preflight response (204)
96
+ * - Non-OPTIONS → match against enabled routes
97
+ * - Matched → respond with route's status, headers, body + standard headers
98
+ * - Unmatched → 404 JSON error
99
+ *
100
+ * Every request (including OPTIONS) is logged.
101
+ */
102
+ private handleRequest;
103
+ /**
104
+ * Handle MCP JSON-RPC requests. Routes with mcpDescription are exposed as tools.
105
+ * Tool calls return the canned mock response body.
106
+ */
107
+ private handleMcpRequest;
108
+ /**
109
+ * Create a log entry, append it to the log (capped), and fire the callback.
110
+ */
111
+ private addLogEntry;
112
+ /** Reset internal state after the server closes. */
113
+ private cleanup;
114
+ /** Fire the onStatusChange callback if registered. */
115
+ private emitStatus;
116
+ }
117
+ //# sourceMappingURL=mockServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockServer.d.ts","sourceRoot":"","sources":["../src/mockServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AA+B7E;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,UAAU,CAAsB;IACxC,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,cAAc,CAAyD;IAC/E,OAAO,CAAC,UAAU,CAAgD;gBAEtD,EAAE,EAAE,MAAM;IAItB,6DAA6D;IAC7D,KAAK,IAAI,MAAM;IAIf,0EAA0E;IAC1E,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIzC,6DAA6D;IAC7D,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIrC,kDAAkD;IAClD,YAAY,IAAI,OAAO;IAIvB,sEAAsE;IACtE,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIjC;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAIrD;;;;;OAKG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA2CvD;;;OAGG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAerB,iDAAiD;IACjD,SAAS,IAAI,OAAO;IAIpB,qEAAqE;IACrE,OAAO,IAAI,MAAM;IAIjB,iEAAiE;IACjE,SAAS,IAAI,oBAAoB;IAIjC;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI;IAIvC,gDAAgD;IAChD,MAAM,IAAI,YAAY,EAAE;IAIxB,6BAA6B;IAC7B,QAAQ,IAAI,IAAI;IAIhB,+DAA+D;IAC/D,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAOnC,oEAAoE;IACpE,iBAAiB,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,GAAG,IAAI;IAInE,qEAAqE;IACrE,aAAa,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,IAAI;IAMtD;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,aAAa;IAkKrB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAgExB;;OAEG;IACH,OAAO,CAAC,WAAW;IA+BnB,oDAAoD;IACpD,OAAO,CAAC,OAAO;IAKf,sDAAsD;IACtD,OAAO,CAAC,UAAU;CAKnB"}