@robinmordasiewicz/f5xc-api-mcp 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.
- package/CHANGELOG.md +74 -0
- package/README.md +234 -0
- package/dist/auth/credential-manager.d.ts +116 -0
- package/dist/auth/credential-manager.d.ts.map +1 -0
- package/dist/auth/credential-manager.js +208 -0
- package/dist/auth/credential-manager.js.map +1 -0
- package/dist/auth/http-client.d.ts +81 -0
- package/dist/auth/http-client.d.ts.map +1 -0
- package/dist/auth/http-client.js +197 -0
- package/dist/auth/http-client.js.map +1 -0
- package/dist/auth/index.d.ts +8 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +6 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/generator/index.d.ts +7 -0
- package/dist/generator/index.d.ts.map +1 -0
- package/dist/generator/index.js +7 -0
- package/dist/generator/index.js.map +1 -0
- package/dist/generator/naming/acronyms.d.ts +81 -0
- package/dist/generator/naming/acronyms.d.ts.map +1 -0
- package/dist/generator/naming/acronyms.js +253 -0
- package/dist/generator/naming/acronyms.js.map +1 -0
- package/dist/generator/naming/index.d.ts +6 -0
- package/dist/generator/naming/index.d.ts.map +1 -0
- package/dist/generator/naming/index.js +6 -0
- package/dist/generator/naming/index.js.map +1 -0
- package/dist/generator/naming/volterra-mapping.d.ts +102 -0
- package/dist/generator/naming/volterra-mapping.d.ts.map +1 -0
- package/dist/generator/naming/volterra-mapping.js +259 -0
- package/dist/generator/naming/volterra-mapping.js.map +1 -0
- package/dist/generator/openapi-parser.d.ts +339 -0
- package/dist/generator/openapi-parser.d.ts.map +1 -0
- package/dist/generator/openapi-parser.js +463 -0
- package/dist/generator/openapi-parser.js.map +1 -0
- package/dist/generator/tool-generator.d.ts +74 -0
- package/dist/generator/tool-generator.d.ts.map +1 -0
- package/dist/generator/tool-generator.js +387 -0
- package/dist/generator/tool-generator.js.map +1 -0
- package/dist/generator/transformers/index.d.ts +7 -0
- package/dist/generator/transformers/index.d.ts.map +1 -0
- package/dist/generator/transformers/index.js +7 -0
- package/dist/generator/transformers/index.js.map +1 -0
- package/dist/generator/transformers/normalize-examples.d.ts +48 -0
- package/dist/generator/transformers/normalize-examples.d.ts.map +1 -0
- package/dist/generator/transformers/normalize-examples.js +66 -0
- package/dist/generator/transformers/normalize-examples.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +70 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/index.d.ts +6 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +5 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/workflows.d.ts +59 -0
- package/dist/prompts/workflows.d.ts.map +1 -0
- package/dist/prompts/workflows.js +585 -0
- package/dist/prompts/workflows.js.map +1 -0
- package/dist/resources/handlers.d.ts +72 -0
- package/dist/resources/handlers.d.ts.map +1 -0
- package/dist/resources/handlers.js +279 -0
- package/dist/resources/handlers.js.map +1 -0
- package/dist/resources/index.d.ts +8 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +6 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/resources/templates.d.ts +86 -0
- package/dist/resources/templates.d.ts.map +1 -0
- package/dist/resources/templates.js +248 -0
- package/dist/resources/templates.js.map +1 -0
- package/dist/server.d.ts +78 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +426 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/discovery/consolidate.d.ts +97 -0
- package/dist/tools/discovery/consolidate.d.ts.map +1 -0
- package/dist/tools/discovery/consolidate.js +200 -0
- package/dist/tools/discovery/consolidate.js.map +1 -0
- package/dist/tools/discovery/describe.d.ts +132 -0
- package/dist/tools/discovery/describe.d.ts.map +1 -0
- package/dist/tools/discovery/describe.js +206 -0
- package/dist/tools/discovery/describe.js.map +1 -0
- package/dist/tools/discovery/execute.d.ts +98 -0
- package/dist/tools/discovery/execute.d.ts.map +1 -0
- package/dist/tools/discovery/execute.js +251 -0
- package/dist/tools/discovery/execute.js.map +1 -0
- package/dist/tools/discovery/index-loader.d.ts +28 -0
- package/dist/tools/discovery/index-loader.d.ts.map +1 -0
- package/dist/tools/discovery/index-loader.js +69 -0
- package/dist/tools/discovery/index-loader.js.map +1 -0
- package/dist/tools/discovery/index.d.ts +185 -0
- package/dist/tools/discovery/index.d.ts.map +1 -0
- package/dist/tools/discovery/index.js +177 -0
- package/dist/tools/discovery/index.js.map +1 -0
- package/dist/tools/discovery/search.d.ts +41 -0
- package/dist/tools/discovery/search.d.ts.map +1 -0
- package/dist/tools/discovery/search.js +155 -0
- package/dist/tools/discovery/search.js.map +1 -0
- package/dist/tools/discovery/types.d.ts +70 -0
- package/dist/tools/discovery/types.d.ts.map +1 -0
- package/dist/tools/discovery/types.js +9 -0
- package/dist/tools/discovery/types.js.map +1 -0
- package/dist/tools/generated/ai_intelligence/index.d.ts +8 -0
- package/dist/tools/generated/ai_intelligence/index.d.ts.map +1 -0
- package/dist/tools/generated/ai_intelligence/index.js +282 -0
- package/dist/tools/generated/ai_intelligence/index.js.map +1 -0
- package/dist/tools/generated/api_security/index.d.ts +8 -0
- package/dist/tools/generated/api_security/index.d.ts.map +1 -0
- package/dist/tools/generated/api_security/index.js +1852 -0
- package/dist/tools/generated/api_security/index.js.map +1 -0
- package/dist/tools/generated/applications/index.d.ts +8 -0
- package/dist/tools/generated/applications/index.d.ts.map +1 -0
- package/dist/tools/generated/applications/index.js +1589 -0
- package/dist/tools/generated/applications/index.js.map +1 -0
- package/dist/tools/generated/bigip/index.d.ts +8 -0
- package/dist/tools/generated/bigip/index.d.ts.map +1 -0
- package/dist/tools/generated/bigip/index.js +1173 -0
- package/dist/tools/generated/bigip/index.js.map +1 -0
- package/dist/tools/generated/billing/index.d.ts +8 -0
- package/dist/tools/generated/billing/index.d.ts.map +1 -0
- package/dist/tools/generated/billing/index.js +759 -0
- package/dist/tools/generated/billing/index.js.map +1 -0
- package/dist/tools/generated/cdn/index.d.ts +8 -0
- package/dist/tools/generated/cdn/index.d.ts.map +1 -0
- package/dist/tools/generated/cdn/index.js +841 -0
- package/dist/tools/generated/cdn/index.js.map +1 -0
- package/dist/tools/generated/config/index.d.ts +8 -0
- package/dist/tools/generated/config/index.d.ts.map +1 -0
- package/dist/tools/generated/config/index.js +316 -0
- package/dist/tools/generated/config/index.js.map +1 -0
- package/dist/tools/generated/identity/index.d.ts +8 -0
- package/dist/tools/generated/identity/index.d.ts.map +1 -0
- package/dist/tools/generated/identity/index.js +5371 -0
- package/dist/tools/generated/identity/index.js.map +1 -0
- package/dist/tools/generated/infrastructure/index.d.ts +8 -0
- package/dist/tools/generated/infrastructure/index.d.ts.map +1 -0
- package/dist/tools/generated/infrastructure/index.js +5342 -0
- package/dist/tools/generated/infrastructure/index.js.map +1 -0
- package/dist/tools/generated/infrastructure_protection/index.d.ts +8 -0
- package/dist/tools/generated/infrastructure_protection/index.d.ts.map +1 -0
- package/dist/tools/generated/infrastructure_protection/index.js +2919 -0
- package/dist/tools/generated/infrastructure_protection/index.js.map +1 -0
- package/dist/tools/generated/integrations/index.d.ts +8 -0
- package/dist/tools/generated/integrations/index.d.ts.map +1 -0
- package/dist/tools/generated/integrations/index.js +1995 -0
- package/dist/tools/generated/integrations/index.js.map +1 -0
- package/dist/tools/generated/load_balancer/index.d.ts +8 -0
- package/dist/tools/generated/load_balancer/index.d.ts.map +1 -0
- package/dist/tools/generated/load_balancer/index.js +2269 -0
- package/dist/tools/generated/load_balancer/index.js.map +1 -0
- package/dist/tools/generated/networking/index.d.ts +8 -0
- package/dist/tools/generated/networking/index.d.ts.map +1 -0
- package/dist/tools/generated/networking/index.js +11289 -0
- package/dist/tools/generated/networking/index.js.map +1 -0
- package/dist/tools/generated/nginx/index.d.ts +8 -0
- package/dist/tools/generated/nginx/index.d.ts.map +1 -0
- package/dist/tools/generated/nginx/index.js +680 -0
- package/dist/tools/generated/nginx/index.js.map +1 -0
- package/dist/tools/generated/observability/index.d.ts +8 -0
- package/dist/tools/generated/observability/index.d.ts.map +1 -0
- package/dist/tools/generated/observability/index.js +6140 -0
- package/dist/tools/generated/observability/index.js.map +1 -0
- package/dist/tools/generated/operations/index.d.ts +8 -0
- package/dist/tools/generated/operations/index.d.ts.map +1 -0
- package/dist/tools/generated/operations/index.js +1759 -0
- package/dist/tools/generated/operations/index.js.map +1 -0
- package/dist/tools/generated/security/index.d.ts +8 -0
- package/dist/tools/generated/security/index.d.ts.map +1 -0
- package/dist/tools/generated/security/index.js +9111 -0
- package/dist/tools/generated/security/index.js.map +1 -0
- package/dist/tools/generated/service_mesh/index.d.ts +8 -0
- package/dist/tools/generated/service_mesh/index.d.ts.map +1 -0
- package/dist/tools/generated/service_mesh/index.js +1628 -0
- package/dist/tools/generated/service_mesh/index.js.map +1 -0
- package/dist/tools/generated/shape_security/index.d.ts +8 -0
- package/dist/tools/generated/shape_security/index.d.ts.map +1 -0
- package/dist/tools/generated/shape_security/index.js +4121 -0
- package/dist/tools/generated/shape_security/index.js.map +1 -0
- package/dist/tools/generated/subscriptions/index.d.ts +8 -0
- package/dist/tools/generated/subscriptions/index.d.ts.map +1 -0
- package/dist/tools/generated/subscriptions/index.js +778 -0
- package/dist/tools/generated/subscriptions/index.js.map +1 -0
- package/dist/tools/generated/tenant_management/index.d.ts +8 -0
- package/dist/tools/generated/tenant_management/index.d.ts.map +1 -0
- package/dist/tools/generated/tenant_management/index.js +2292 -0
- package/dist/tools/generated/tenant_management/index.js.map +1 -0
- package/dist/tools/generated/vpn/index.d.ts +8 -0
- package/dist/tools/generated/vpn/index.d.ts.map +1 -0
- package/dist/tools/generated/vpn/index.js +1183 -0
- package/dist/tools/generated/vpn/index.js.map +1 -0
- package/dist/tools/index.d.ts +7 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +6 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/registry.d.ts +27 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +83 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/utils/error-handling.d.ts +109 -0
- package/dist/utils/error-handling.d.ts.map +1 -0
- package/dist/utils/error-handling.js +239 -0
- package/dist/utils/error-handling.js.map +1 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +6 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logging.d.ts +75 -0
- package/dist/utils/logging.d.ts.map +1 -0
- package/dist/utils/logging.js +131 -0
- package/dist/utils/logging.js.map +1 -0
- package/manifest.json +143 -0
- package/package.json +95 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acronyms.js","sourceRoot":"","sources":["../../../src/generator/naming/acronyms.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Naming Module - Export all naming utilities
|
|
3
|
+
*/
|
|
4
|
+
export { TECHNICAL_ACRONYMS, normalizeAcronyms, normalizeTitleAcronyms, isAcronym, getCanonicalAcronym, toKebabCase, toSnakeCase, toPascalCase, toCamelCase, } from "./acronyms.js";
|
|
5
|
+
export { NAMESPACE_MAPPINGS, RESOURCE_MAPPINGS, FIELD_MAPPINGS, transformNamespace, transformResourceName, transformFieldName, transformText, transformOpenApiSpec, generateToolName, extractDomainFromPath, extractResourceFromPath, methodToOperation, } from "./volterra-mapping.js";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generator/naming/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,SAAS,EACT,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,GACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Naming Module - Export all naming utilities
|
|
3
|
+
*/
|
|
4
|
+
export { TECHNICAL_ACRONYMS, normalizeAcronyms, normalizeTitleAcronyms, isAcronym, getCanonicalAcronym, toKebabCase, toSnakeCase, toPascalCase, toCamelCase, } from "./acronyms.js";
|
|
5
|
+
export { NAMESPACE_MAPPINGS, RESOURCE_MAPPINGS, FIELD_MAPPINGS, transformNamespace, transformResourceName, transformFieldName, transformText, transformOpenApiSpec, generateToolName, extractDomainFromPath, extractResourceFromPath, methodToOperation, } from "./volterra-mapping.js";
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generator/naming/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,SAAS,EACT,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,GACZ,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Volterra to F5XC Naming Transforms
|
|
3
|
+
*
|
|
4
|
+
* Handles the rebranding transformation from legacy Volterra names
|
|
5
|
+
* to the current F5 Distributed Cloud (F5XC) naming convention.
|
|
6
|
+
*
|
|
7
|
+
* IMPORTANT: Functional URLs containing volterra.io are NOT transformed
|
|
8
|
+
* as they are required for API communication.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Namespace/package name mappings
|
|
12
|
+
*/
|
|
13
|
+
export declare const NAMESPACE_MAPPINGS: ReadonlyMap<string, string>;
|
|
14
|
+
/**
|
|
15
|
+
* Resource name mappings (legacy -> current)
|
|
16
|
+
*/
|
|
17
|
+
export declare const RESOURCE_MAPPINGS: ReadonlyMap<string, string>;
|
|
18
|
+
/**
|
|
19
|
+
* Field name mappings within resources
|
|
20
|
+
*/
|
|
21
|
+
export declare const FIELD_MAPPINGS: ReadonlyMap<string, string>;
|
|
22
|
+
/**
|
|
23
|
+
* Transform Volterra namespace/package names to F5XC
|
|
24
|
+
*
|
|
25
|
+
* @param namespace - Original namespace
|
|
26
|
+
* @returns Transformed namespace
|
|
27
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
28
|
+
*/
|
|
29
|
+
export declare function transformNamespace(namespace: string): string;
|
|
30
|
+
/**
|
|
31
|
+
* Transform Volterra resource names to F5XC
|
|
32
|
+
*
|
|
33
|
+
* @param resourceName - Original resource name
|
|
34
|
+
* @returns Transformed resource name
|
|
35
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
36
|
+
*/
|
|
37
|
+
export declare function transformResourceName(resourceName: string): string;
|
|
38
|
+
/**
|
|
39
|
+
* Transform Volterra field names to F5XC
|
|
40
|
+
*
|
|
41
|
+
* @param fieldName - Original field name
|
|
42
|
+
* @returns Transformed field name
|
|
43
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
44
|
+
*/
|
|
45
|
+
export declare function transformFieldName(fieldName: string): string;
|
|
46
|
+
/**
|
|
47
|
+
* Transform text content with Volterra references to F5XC
|
|
48
|
+
*
|
|
49
|
+
* Handles documentation strings, descriptions, and other text content
|
|
50
|
+
* while preserving functional URLs and API paths.
|
|
51
|
+
*
|
|
52
|
+
* @param text - Text to transform
|
|
53
|
+
* @returns Transformed text
|
|
54
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
55
|
+
*/
|
|
56
|
+
export declare function transformText(text: string): string;
|
|
57
|
+
/**
|
|
58
|
+
* Transform OpenAPI specification object
|
|
59
|
+
*
|
|
60
|
+
* Transforms naming throughout an OpenAPI spec while preserving
|
|
61
|
+
* functional URLs and schema references.
|
|
62
|
+
*
|
|
63
|
+
* @param spec - OpenAPI specification object
|
|
64
|
+
* @returns Transformed specification
|
|
65
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
66
|
+
*/
|
|
67
|
+
export declare function transformOpenApiSpec(spec: Record<string, unknown>): Record<string, unknown>;
|
|
68
|
+
/**
|
|
69
|
+
* Generate F5XC tool name from operation info
|
|
70
|
+
*
|
|
71
|
+
* Format: f5xc-api-{domain}-{resource}-{operation}
|
|
72
|
+
*
|
|
73
|
+
* @param domain - API domain (waap, dns, network, etc.)
|
|
74
|
+
* @param resource - Resource type (http-loadbalancer, origin-pool, etc.)
|
|
75
|
+
* @param operation - Operation type (create, list, get, update, delete)
|
|
76
|
+
* @returns Tool name in kebab-case
|
|
77
|
+
*/
|
|
78
|
+
export declare function generateToolName(domain: string, resource: string, operation: string): string;
|
|
79
|
+
/**
|
|
80
|
+
* Extract domain from OpenAPI path
|
|
81
|
+
*
|
|
82
|
+
* @param path - API path like /api/config/namespaces/{namespace}/http_loadbalancers
|
|
83
|
+
* @returns Domain category
|
|
84
|
+
* @deprecated Pre-enriched specs provide domain from filename. Old domain mappings (waap, dns, etc.) are replaced by new domains (load_balancer, networking, etc.)
|
|
85
|
+
*/
|
|
86
|
+
export declare function extractDomainFromPath(path: string): string;
|
|
87
|
+
/**
|
|
88
|
+
* Extract resource type from OpenAPI path
|
|
89
|
+
*
|
|
90
|
+
* @param path - API path like /api/config/namespaces/{namespace}/http_loadbalancers
|
|
91
|
+
* @returns Resource type in kebab-case
|
|
92
|
+
*/
|
|
93
|
+
export declare function extractResourceFromPath(path: string): string;
|
|
94
|
+
/**
|
|
95
|
+
* Map HTTP method to operation name
|
|
96
|
+
*
|
|
97
|
+
* @param method - HTTP method
|
|
98
|
+
* @param hasPathParam - Whether the path has a resource name parameter
|
|
99
|
+
* @returns Operation name
|
|
100
|
+
*/
|
|
101
|
+
export declare function methodToOperation(method: string, hasPathParam: boolean): string;
|
|
102
|
+
//# sourceMappingURL=volterra-mapping.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"volterra-mapping.d.ts","sourceRoot":"","sources":["../../../src/generator/naming/volterra-mapping.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAIzD,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CASxD,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAGrD,CAAC;AA2BH;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAO5D;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAG5D;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA6BlD;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE3F;AA+BD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAU5F;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAmB1D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkB5D;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,MAAM,CAiB/E"}
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Volterra to F5XC Naming Transforms
|
|
3
|
+
*
|
|
4
|
+
* Handles the rebranding transformation from legacy Volterra names
|
|
5
|
+
* to the current F5 Distributed Cloud (F5XC) naming convention.
|
|
6
|
+
*
|
|
7
|
+
* IMPORTANT: Functional URLs containing volterra.io are NOT transformed
|
|
8
|
+
* as they are required for API communication.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Namespace/package name mappings
|
|
12
|
+
*/
|
|
13
|
+
export const NAMESPACE_MAPPINGS = new Map([
|
|
14
|
+
["ves.io", "f5xc"],
|
|
15
|
+
["ves.io.schema", "f5xc.schema"],
|
|
16
|
+
["volterra", "f5xc"],
|
|
17
|
+
]);
|
|
18
|
+
/**
|
|
19
|
+
* Resource name mappings (legacy -> current)
|
|
20
|
+
*/
|
|
21
|
+
export const RESOURCE_MAPPINGS = new Map([
|
|
22
|
+
// Sites
|
|
23
|
+
["voltstack_site", "customer_edge_site"],
|
|
24
|
+
["voltstack", "customer_edge"],
|
|
25
|
+
["ves_site", "regional_edge_site"],
|
|
26
|
+
// General naming
|
|
27
|
+
["ves_io_tenant", "tenant"],
|
|
28
|
+
["ves_io", "f5xc"],
|
|
29
|
+
]);
|
|
30
|
+
/**
|
|
31
|
+
* Field name mappings within resources
|
|
32
|
+
*/
|
|
33
|
+
export const FIELD_MAPPINGS = new Map([
|
|
34
|
+
["ves_io_tenant", "tenant"],
|
|
35
|
+
["ves_certified_hw", "f5xc_certified_hw"],
|
|
36
|
+
]);
|
|
37
|
+
/**
|
|
38
|
+
* Patterns that should NOT be transformed (functional URLs)
|
|
39
|
+
*/
|
|
40
|
+
const PROTECTED_PATTERNS = [
|
|
41
|
+
// API URLs - must remain functional
|
|
42
|
+
/https?:\/\/[^/]*\.volterra\.(io|us)/gi,
|
|
43
|
+
// Console URLs
|
|
44
|
+
/console\.ves\.volterra\.io/gi,
|
|
45
|
+
// API paths
|
|
46
|
+
/\/api\/config\//gi,
|
|
47
|
+
/\/api\/data\//gi,
|
|
48
|
+
// Schema references in OpenAPI
|
|
49
|
+
/"?\$ref"?\s*:\s*"[^"]*"/gi,
|
|
50
|
+
];
|
|
51
|
+
/**
|
|
52
|
+
* Check if a string contains protected patterns that should not be transformed
|
|
53
|
+
*
|
|
54
|
+
* @param text - Text to check
|
|
55
|
+
* @returns True if text contains protected patterns
|
|
56
|
+
*/
|
|
57
|
+
function containsProtectedPattern(text) {
|
|
58
|
+
return PROTECTED_PATTERNS.some((pattern) => pattern.test(text));
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Transform Volterra namespace/package names to F5XC
|
|
62
|
+
*
|
|
63
|
+
* @param namespace - Original namespace
|
|
64
|
+
* @returns Transformed namespace
|
|
65
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
66
|
+
*/
|
|
67
|
+
export function transformNamespace(namespace) {
|
|
68
|
+
for (const [volterra, f5xc] of NAMESPACE_MAPPINGS) {
|
|
69
|
+
if (namespace.startsWith(volterra)) {
|
|
70
|
+
return namespace.replace(volterra, f5xc);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return namespace;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Transform Volterra resource names to F5XC
|
|
77
|
+
*
|
|
78
|
+
* @param resourceName - Original resource name
|
|
79
|
+
* @returns Transformed resource name
|
|
80
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
81
|
+
*/
|
|
82
|
+
export function transformResourceName(resourceName) {
|
|
83
|
+
const lowerName = resourceName.toLowerCase();
|
|
84
|
+
return RESOURCE_MAPPINGS.get(lowerName) ?? resourceName;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Transform Volterra field names to F5XC
|
|
88
|
+
*
|
|
89
|
+
* @param fieldName - Original field name
|
|
90
|
+
* @returns Transformed field name
|
|
91
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
92
|
+
*/
|
|
93
|
+
export function transformFieldName(fieldName) {
|
|
94
|
+
const lowerName = fieldName.toLowerCase();
|
|
95
|
+
return FIELD_MAPPINGS.get(lowerName) ?? fieldName;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Transform text content with Volterra references to F5XC
|
|
99
|
+
*
|
|
100
|
+
* Handles documentation strings, descriptions, and other text content
|
|
101
|
+
* while preserving functional URLs and API paths.
|
|
102
|
+
*
|
|
103
|
+
* @param text - Text to transform
|
|
104
|
+
* @returns Transformed text
|
|
105
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
106
|
+
*/
|
|
107
|
+
export function transformText(text) {
|
|
108
|
+
// Skip if text contains protected patterns
|
|
109
|
+
if (containsProtectedPattern(text)) {
|
|
110
|
+
return text;
|
|
111
|
+
}
|
|
112
|
+
let result = text;
|
|
113
|
+
// Transform display names and documentation
|
|
114
|
+
const textReplacements = [
|
|
115
|
+
// Company name - case-insensitive but preserve case pattern
|
|
116
|
+
[/\bVolterra\b/g, "F5 Distributed Cloud"],
|
|
117
|
+
[/\bVES\b/g, "F5XC"],
|
|
118
|
+
[/\bves\b/g, "f5xc"],
|
|
119
|
+
// Product names
|
|
120
|
+
[/\bVoltStack\b/gi, "Customer Edge"],
|
|
121
|
+
[/\bvoltstack\b/g, "customer_edge"],
|
|
122
|
+
// References in documentation
|
|
123
|
+
[/Volterra Edge Services/gi, "F5 Distributed Cloud"],
|
|
124
|
+
[/VES Console/gi, "F5XC Console"],
|
|
125
|
+
];
|
|
126
|
+
for (const [pattern, replacement] of textReplacements) {
|
|
127
|
+
result = result.replace(pattern, replacement);
|
|
128
|
+
}
|
|
129
|
+
return result;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Transform OpenAPI specification object
|
|
133
|
+
*
|
|
134
|
+
* Transforms naming throughout an OpenAPI spec while preserving
|
|
135
|
+
* functional URLs and schema references.
|
|
136
|
+
*
|
|
137
|
+
* @param spec - OpenAPI specification object
|
|
138
|
+
* @returns Transformed specification
|
|
139
|
+
* @deprecated Pre-enriched specs already have transformed naming
|
|
140
|
+
*/
|
|
141
|
+
export function transformOpenApiSpec(spec) {
|
|
142
|
+
return transformObject(spec);
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Recursively transform object properties
|
|
146
|
+
*/
|
|
147
|
+
function transformObject(obj) {
|
|
148
|
+
if (obj === null || obj === undefined) {
|
|
149
|
+
return obj;
|
|
150
|
+
}
|
|
151
|
+
if (typeof obj === "string") {
|
|
152
|
+
return transformText(obj);
|
|
153
|
+
}
|
|
154
|
+
if (Array.isArray(obj)) {
|
|
155
|
+
return obj.map(transformObject);
|
|
156
|
+
}
|
|
157
|
+
if (typeof obj === "object") {
|
|
158
|
+
const result = {};
|
|
159
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
160
|
+
// Transform field names
|
|
161
|
+
const newKey = transformFieldName(key);
|
|
162
|
+
result[newKey] = transformObject(value);
|
|
163
|
+
}
|
|
164
|
+
return result;
|
|
165
|
+
}
|
|
166
|
+
return obj;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Generate F5XC tool name from operation info
|
|
170
|
+
*
|
|
171
|
+
* Format: f5xc-api-{domain}-{resource}-{operation}
|
|
172
|
+
*
|
|
173
|
+
* @param domain - API domain (waap, dns, network, etc.)
|
|
174
|
+
* @param resource - Resource type (http-loadbalancer, origin-pool, etc.)
|
|
175
|
+
* @param operation - Operation type (create, list, get, update, delete)
|
|
176
|
+
* @returns Tool name in kebab-case
|
|
177
|
+
*/
|
|
178
|
+
export function generateToolName(domain, resource, operation) {
|
|
179
|
+
// Normalize inputs
|
|
180
|
+
const normalizedDomain = domain.toLowerCase().replace(/[^a-z0-9]/g, "");
|
|
181
|
+
const normalizedResource = resource
|
|
182
|
+
.toLowerCase()
|
|
183
|
+
.replace(/_/g, "-")
|
|
184
|
+
.replace(/[^a-z0-9-]/g, "");
|
|
185
|
+
const normalizedOperation = operation.toLowerCase().replace(/[^a-z0-9]/g, "");
|
|
186
|
+
return `f5xc-api-${normalizedDomain}-${normalizedResource}-${normalizedOperation}`;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Extract domain from OpenAPI path
|
|
190
|
+
*
|
|
191
|
+
* @param path - API path like /api/config/namespaces/{namespace}/http_loadbalancers
|
|
192
|
+
* @returns Domain category
|
|
193
|
+
* @deprecated Pre-enriched specs provide domain from filename. Old domain mappings (waap, dns, etc.) are replaced by new domains (load_balancer, networking, etc.)
|
|
194
|
+
*/
|
|
195
|
+
export function extractDomainFromPath(path) {
|
|
196
|
+
// Domain mappings based on path patterns
|
|
197
|
+
const domainPatterns = [
|
|
198
|
+
[/http_loadbalancer|origin_pool|app_firewall|rate_limiter/i, "waap"],
|
|
199
|
+
[/dns_zone|dns_load_balancer|dns_lb_pool/i, "dns"],
|
|
200
|
+
[/network_connector|network_firewall|enhanced_firewall/i, "network"],
|
|
201
|
+
[/aws_vpc_site|azure_vnet_site|gcp_vpc_site/i, "site"],
|
|
202
|
+
[/k8s_cluster|virtual_k8s|workload/i, "appstack"],
|
|
203
|
+
[/service_policy|waf|malicious_user/i, "security"],
|
|
204
|
+
[/namespace|certificate|cloud_credentials/i, "core"],
|
|
205
|
+
];
|
|
206
|
+
for (const [pattern, domain] of domainPatterns) {
|
|
207
|
+
if (pattern.test(path)) {
|
|
208
|
+
return domain;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
return "core";
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Extract resource type from OpenAPI path
|
|
215
|
+
*
|
|
216
|
+
* @param path - API path like /api/config/namespaces/{namespace}/http_loadbalancers
|
|
217
|
+
* @returns Resource type in kebab-case
|
|
218
|
+
*/
|
|
219
|
+
export function extractResourceFromPath(path) {
|
|
220
|
+
// Extract the resource name from the path
|
|
221
|
+
const segments = path.split("/").filter(Boolean);
|
|
222
|
+
const lastSegment = segments[segments.length - 1];
|
|
223
|
+
if (!lastSegment) {
|
|
224
|
+
return "unknown";
|
|
225
|
+
}
|
|
226
|
+
// Remove path parameters
|
|
227
|
+
if (lastSegment.startsWith("{")) {
|
|
228
|
+
const secondLast = segments[segments.length - 2];
|
|
229
|
+
return secondLast
|
|
230
|
+
? secondLast.replace(/_/g, "-").replace(/s$/, "") // Remove trailing 's' for plural
|
|
231
|
+
: "unknown";
|
|
232
|
+
}
|
|
233
|
+
return lastSegment.replace(/_/g, "-").replace(/s$/, "");
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Map HTTP method to operation name
|
|
237
|
+
*
|
|
238
|
+
* @param method - HTTP method
|
|
239
|
+
* @param hasPathParam - Whether the path has a resource name parameter
|
|
240
|
+
* @returns Operation name
|
|
241
|
+
*/
|
|
242
|
+
export function methodToOperation(method, hasPathParam) {
|
|
243
|
+
const upperMethod = method.toUpperCase();
|
|
244
|
+
switch (upperMethod) {
|
|
245
|
+
case "GET":
|
|
246
|
+
return hasPathParam ? "get" : "list";
|
|
247
|
+
case "POST":
|
|
248
|
+
return "create";
|
|
249
|
+
case "PUT":
|
|
250
|
+
return "update";
|
|
251
|
+
case "DELETE":
|
|
252
|
+
return "delete";
|
|
253
|
+
case "PATCH":
|
|
254
|
+
return "patch";
|
|
255
|
+
default:
|
|
256
|
+
return upperMethod.toLowerCase();
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
//# sourceMappingURL=volterra-mapping.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"volterra-mapping.js","sourceRoot":"","sources":["../../../src/generator/naming/volterra-mapping.ts"],"names":[],"mappings":"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"}
|