@peterhauge/apiops-cli 0.1.3-alpha.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/LICENSE.md +21 -0
- package/README.md +135 -0
- package/dist/cli/extract-command.d.ts +12 -0
- package/dist/cli/extract-command.d.ts.map +1 -0
- package/dist/cli/extract-command.js +157 -0
- package/dist/cli/extract-command.js.map +1 -0
- package/dist/cli/index.d.ts +7 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +74 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/init-command.d.ts +11 -0
- package/dist/cli/init-command.d.ts.map +1 -0
- package/dist/cli/init-command.js +87 -0
- package/dist/cli/init-command.js.map +1 -0
- package/dist/cli/publish-command.d.ts +12 -0
- package/dist/cli/publish-command.d.ts.map +1 -0
- package/dist/cli/publish-command.js +159 -0
- package/dist/cli/publish-command.js.map +1 -0
- package/dist/clients/apim-client.d.ts +110 -0
- package/dist/clients/apim-client.d.ts.map +1 -0
- package/dist/clients/apim-client.js +586 -0
- package/dist/clients/apim-client.js.map +1 -0
- package/dist/clients/artifact-store.d.ts +23 -0
- package/dist/clients/artifact-store.d.ts.map +1 -0
- package/dist/clients/artifact-store.js +188 -0
- package/dist/clients/artifact-store.js.map +1 -0
- package/dist/clients/iapim-client.d.ts +52 -0
- package/dist/clients/iapim-client.d.ts.map +1 -0
- package/dist/clients/iapim-client.js +6 -0
- package/dist/clients/iapim-client.js.map +1 -0
- package/dist/clients/iartifact-store.d.ts +50 -0
- package/dist/clients/iartifact-store.d.ts.map +1 -0
- package/dist/clients/iartifact-store.js +6 -0
- package/dist/clients/iartifact-store.js.map +1 -0
- package/dist/lib/auto-generated.d.ts +27 -0
- package/dist/lib/auto-generated.d.ts.map +1 -0
- package/dist/lib/auto-generated.js +34 -0
- package/dist/lib/auto-generated.js.map +1 -0
- package/dist/lib/cloud-config.d.ts +29 -0
- package/dist/lib/cloud-config.d.ts.map +1 -0
- package/dist/lib/cloud-config.js +60 -0
- package/dist/lib/cloud-config.js.map +1 -0
- package/dist/lib/config-loader.d.ts +21 -0
- package/dist/lib/config-loader.d.ts.map +1 -0
- package/dist/lib/config-loader.js +131 -0
- package/dist/lib/config-loader.js.map +1 -0
- package/dist/lib/dependency-graph.d.ts +43 -0
- package/dist/lib/dependency-graph.d.ts.map +1 -0
- package/dist/lib/dependency-graph.js +163 -0
- package/dist/lib/dependency-graph.js.map +1 -0
- package/dist/lib/exit-codes.d.ts +27 -0
- package/dist/lib/exit-codes.d.ts.map +1 -0
- package/dist/lib/exit-codes.js +33 -0
- package/dist/lib/exit-codes.js.map +1 -0
- package/dist/lib/logger.d.ts +39 -0
- package/dist/lib/logger.d.ts.map +1 -0
- package/dist/lib/logger.js +128 -0
- package/dist/lib/logger.js.map +1 -0
- package/dist/lib/parallel-runner.d.ts +38 -0
- package/dist/lib/parallel-runner.d.ts.map +1 -0
- package/dist/lib/parallel-runner.js +70 -0
- package/dist/lib/parallel-runner.js.map +1 -0
- package/dist/lib/resource-path.d.ts +205 -0
- package/dist/lib/resource-path.d.ts.map +1 -0
- package/dist/lib/resource-path.js +401 -0
- package/dist/lib/resource-path.js.map +1 -0
- package/dist/lib/resource-uri.d.ts +40 -0
- package/dist/lib/resource-uri.d.ts.map +1 -0
- package/dist/lib/resource-uri.js +86 -0
- package/dist/lib/resource-uri.js.map +1 -0
- package/dist/lib/user-agent.d.ts +2 -0
- package/dist/lib/user-agent.d.ts.map +1 -0
- package/dist/lib/user-agent.js +5 -0
- package/dist/lib/user-agent.js.map +1 -0
- package/dist/models/config.d.ts +83 -0
- package/dist/models/config.d.ts.map +1 -0
- package/dist/models/config.js +6 -0
- package/dist/models/config.js.map +1 -0
- package/dist/models/resource-types.d.ts +66 -0
- package/dist/models/resource-types.d.ts.map +1 -0
- package/dist/models/resource-types.js +243 -0
- package/dist/models/resource-types.js.map +1 -0
- package/dist/models/types.d.ts +47 -0
- package/dist/models/types.d.ts.map +1 -0
- package/dist/models/types.js +6 -0
- package/dist/models/types.js.map +1 -0
- package/dist/services/api-extractor.d.ts +36 -0
- package/dist/services/api-extractor.d.ts.map +1 -0
- package/dist/services/api-extractor.js +319 -0
- package/dist/services/api-extractor.js.map +1 -0
- package/dist/services/api-publisher.d.ts +18 -0
- package/dist/services/api-publisher.d.ts.map +1 -0
- package/dist/services/api-publisher.js +290 -0
- package/dist/services/api-publisher.js.map +1 -0
- package/dist/services/delete-unmatched-service.d.ts +17 -0
- package/dist/services/delete-unmatched-service.d.ts.map +1 -0
- package/dist/services/delete-unmatched-service.js +143 -0
- package/dist/services/delete-unmatched-service.js.map +1 -0
- package/dist/services/dry-run-reporter.d.ts +30 -0
- package/dist/services/dry-run-reporter.d.ts.map +1 -0
- package/dist/services/dry-run-reporter.js +111 -0
- package/dist/services/dry-run-reporter.js.map +1 -0
- package/dist/services/extract-service.d.ts +47 -0
- package/dist/services/extract-service.d.ts.map +1 -0
- package/dist/services/extract-service.js +374 -0
- package/dist/services/extract-service.js.map +1 -0
- package/dist/services/filter-service.d.ts +29 -0
- package/dist/services/filter-service.d.ts.map +1 -0
- package/dist/services/filter-service.js +143 -0
- package/dist/services/filter-service.js.map +1 -0
- package/dist/services/git-diff-service.d.ts +23 -0
- package/dist/services/git-diff-service.d.ts.map +1 -0
- package/dist/services/git-diff-service.js +135 -0
- package/dist/services/git-diff-service.js.map +1 -0
- package/dist/services/identity-guide-service.d.ts +11 -0
- package/dist/services/identity-guide-service.d.ts.map +1 -0
- package/dist/services/identity-guide-service.js +227 -0
- package/dist/services/identity-guide-service.js.map +1 -0
- package/dist/services/init-service.d.ts +16 -0
- package/dist/services/init-service.d.ts.map +1 -0
- package/dist/services/init-service.js +304 -0
- package/dist/services/init-service.js.map +1 -0
- package/dist/services/keyvault-checker.d.ts +58 -0
- package/dist/services/keyvault-checker.d.ts.map +1 -0
- package/dist/services/keyvault-checker.js +390 -0
- package/dist/services/keyvault-checker.js.map +1 -0
- package/dist/services/override-merger.d.ts +20 -0
- package/dist/services/override-merger.d.ts.map +1 -0
- package/dist/services/override-merger.js +102 -0
- package/dist/services/override-merger.js.map +1 -0
- package/dist/services/product-extractor.d.ts +26 -0
- package/dist/services/product-extractor.d.ts.map +1 -0
- package/dist/services/product-extractor.js +141 -0
- package/dist/services/product-extractor.js.map +1 -0
- package/dist/services/product-publisher.d.ts +15 -0
- package/dist/services/product-publisher.d.ts.map +1 -0
- package/dist/services/product-publisher.js +113 -0
- package/dist/services/product-publisher.js.map +1 -0
- package/dist/services/prompt-service.d.ts +13 -0
- package/dist/services/prompt-service.d.ts.map +1 -0
- package/dist/services/prompt-service.js +69 -0
- package/dist/services/prompt-service.js.map +1 -0
- package/dist/services/publish-service.d.ts +31 -0
- package/dist/services/publish-service.d.ts.map +1 -0
- package/dist/services/publish-service.js +445 -0
- package/dist/services/publish-service.js.map +1 -0
- package/dist/services/resource-extractor.d.ts +52 -0
- package/dist/services/resource-extractor.d.ts.map +1 -0
- package/dist/services/resource-extractor.js +168 -0
- package/dist/services/resource-extractor.js.map +1 -0
- package/dist/services/resource-publisher.d.ts +23 -0
- package/dist/services/resource-publisher.d.ts.map +1 -0
- package/dist/services/resource-publisher.js +349 -0
- package/dist/services/resource-publisher.js.map +1 -0
- package/dist/services/secret-redactor.d.ts +20 -0
- package/dist/services/secret-redactor.d.ts.map +1 -0
- package/dist/services/secret-redactor.js +45 -0
- package/dist/services/secret-redactor.js.map +1 -0
- package/dist/services/transitive-resolver.d.ts +45 -0
- package/dist/services/transitive-resolver.d.ts.map +1 -0
- package/dist/services/transitive-resolver.js +177 -0
- package/dist/services/transitive-resolver.js.map +1 -0
- package/dist/services/workspace-extractor.d.ts +34 -0
- package/dist/services/workspace-extractor.d.ts.map +1 -0
- package/dist/services/workspace-extractor.js +120 -0
- package/dist/services/workspace-extractor.js.map +1 -0
- package/dist/templates/azure-devops/extract-pipeline.d.ts +9 -0
- package/dist/templates/azure-devops/extract-pipeline.d.ts.map +1 -0
- package/dist/templates/azure-devops/extract-pipeline.js +95 -0
- package/dist/templates/azure-devops/extract-pipeline.js.map +1 -0
- package/dist/templates/azure-devops/publish-pipeline.d.ts +10 -0
- package/dist/templates/azure-devops/publish-pipeline.d.ts.map +1 -0
- package/dist/templates/azure-devops/publish-pipeline.js +100 -0
- package/dist/templates/azure-devops/publish-pipeline.js.map +1 -0
- package/dist/templates/configs/filter-config.d.ts +6 -0
- package/dist/templates/configs/filter-config.d.ts.map +1 -0
- package/dist/templates/configs/filter-config.js +51 -0
- package/dist/templates/configs/filter-config.js.map +1 -0
- package/dist/templates/configs/override-config.d.ts +6 -0
- package/dist/templates/configs/override-config.d.ts.map +1 -0
- package/dist/templates/configs/override-config.js +45 -0
- package/dist/templates/configs/override-config.js.map +1 -0
- package/dist/templates/configs/package-json.d.ts +10 -0
- package/dist/templates/configs/package-json.d.ts.map +1 -0
- package/dist/templates/configs/package-json.js +19 -0
- package/dist/templates/configs/package-json.js.map +1 -0
- package/dist/templates/copilot/identity-setup-prompt.d.ts +13 -0
- package/dist/templates/copilot/identity-setup-prompt.d.ts.map +1 -0
- package/dist/templates/copilot/identity-setup-prompt.js +279 -0
- package/dist/templates/copilot/identity-setup-prompt.js.map +1 -0
- package/dist/templates/github-actions/extract-workflow.d.ts +9 -0
- package/dist/templates/github-actions/extract-workflow.d.ts.map +1 -0
- package/dist/templates/github-actions/extract-workflow.js +126 -0
- package/dist/templates/github-actions/extract-workflow.js.map +1 -0
- package/dist/templates/github-actions/publish-workflow.d.ts +10 -0
- package/dist/templates/github-actions/publish-workflow.d.ts.map +1 -0
- package/dist/templates/github-actions/publish-workflow.js +105 -0
- package/dist/templates/github-actions/publish-workflow.js.map +1 -0
- package/package.json +65 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/models/config.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* T006: ResourceType enum and metadata
|
|
3
|
+
* All 33 APIM resource types with ARM path suffixes, artifact directories, and info file names
|
|
4
|
+
*/
|
|
5
|
+
export declare enum ResourceType {
|
|
6
|
+
NamedValue = "NamedValue",
|
|
7
|
+
Tag = "Tag",
|
|
8
|
+
Gateway = "Gateway",
|
|
9
|
+
VersionSet = "VersionSet",
|
|
10
|
+
Backend = "Backend",
|
|
11
|
+
Logger = "Logger",
|
|
12
|
+
Group = "Group",
|
|
13
|
+
Diagnostic = "Diagnostic",
|
|
14
|
+
PolicyFragment = "PolicyFragment",
|
|
15
|
+
ServicePolicy = "ServicePolicy",
|
|
16
|
+
Product = "Product",
|
|
17
|
+
ProductPolicy = "ProductPolicy",
|
|
18
|
+
ProductApi = "ProductApi",
|
|
19
|
+
ProductGroup = "ProductGroup",
|
|
20
|
+
ProductTag = "ProductTag",
|
|
21
|
+
Api = "Api",
|
|
22
|
+
ApiPolicy = "ApiPolicy",
|
|
23
|
+
ApiTag = "ApiTag",
|
|
24
|
+
ApiDiagnostic = "ApiDiagnostic",
|
|
25
|
+
ApiOperation = "ApiOperation",
|
|
26
|
+
ApiOperationPolicy = "ApiOperationPolicy",
|
|
27
|
+
GatewayApi = "GatewayApi",
|
|
28
|
+
Subscription = "Subscription",
|
|
29
|
+
GlobalSchema = "GlobalSchema",
|
|
30
|
+
PolicyRestriction = "PolicyRestriction",
|
|
31
|
+
Documentation = "Documentation",
|
|
32
|
+
ApiSchema = "ApiSchema",
|
|
33
|
+
ApiRelease = "ApiRelease",
|
|
34
|
+
ApiTagDescription = "ApiTagDescription",
|
|
35
|
+
ApiWiki = "ApiWiki",
|
|
36
|
+
ProductWiki = "ProductWiki",
|
|
37
|
+
GraphQLResolver = "GraphQLResolver",
|
|
38
|
+
GraphQLResolverPolicy = "GraphQLResolverPolicy"
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Pure-data descriptor for a single APIM resource type.
|
|
42
|
+
*
|
|
43
|
+
* Both `armPathSuffix` and `artifactDirectory` use positional placeholders
|
|
44
|
+
* `{0}`, `{1}`, … that map directly to `ResourceDescriptor.nameParts[i]`.
|
|
45
|
+
* All fill / reverse-parse logic lives in resource-path.ts and resource-uri.ts.
|
|
46
|
+
*
|
|
47
|
+
* Examples:
|
|
48
|
+
* armPathSuffix: 'namedValues/{0}' nameParts: [name]
|
|
49
|
+
* armPathSuffix: 'apis/{0}/tags/{1}' nameParts: [apiName, tagName]
|
|
50
|
+
* armPathSuffix: 'apis/{0}/operations/{1}/policies/policy' nameParts: [apiName, opName]
|
|
51
|
+
* armPathSuffix: 'policies/policy' nameParts: []
|
|
52
|
+
*/
|
|
53
|
+
export interface ResourceTypeMetadata {
|
|
54
|
+
readonly armPathSuffix: string;
|
|
55
|
+
readonly artifactDirectory: string;
|
|
56
|
+
readonly infoFile: string | null;
|
|
57
|
+
readonly supportsGet: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* True when the LIST endpoint returns a shallow payload that omits fields
|
|
60
|
+
* required for round-trip publish. When true, extraction must issue an
|
|
61
|
+
* individual GET per item to fetch the complete resource.
|
|
62
|
+
*/
|
|
63
|
+
readonly listOmitsFields?: boolean;
|
|
64
|
+
}
|
|
65
|
+
export declare const RESOURCE_TYPE_METADATA: Record<ResourceType, ResourceTypeMetadata>;
|
|
66
|
+
//# sourceMappingURL=resource-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-types.d.ts","sourceRoot":"","sources":["../../src/models/resource-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,oBAAY,YAAY;IACtB,UAAU,eAAe;IACzB,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,cAAc,mBAAmB;IACjC,aAAa,kBAAkB;IAC/B,OAAO,YAAY;IACnB,aAAa,kBAAkB;IAC/B,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,GAAG,QAAQ;IACX,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,kBAAkB,uBAAuB;IACzC,UAAU,eAAe;IACzB,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,aAAa,kBAAkB;IAC/B,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,iBAAiB,sBAAsB;IACvC,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,eAAe,oBAAoB;IACnC,qBAAqB,0BAA0B;CAChD;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,YAAY,EAAE,oBAAoB,CAyM7E,CAAC"}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* T006: ResourceType enum and metadata
|
|
3
|
+
* All 33 APIM resource types with ARM path suffixes, artifact directories, and info file names
|
|
4
|
+
*/
|
|
5
|
+
export var ResourceType;
|
|
6
|
+
(function (ResourceType) {
|
|
7
|
+
ResourceType["NamedValue"] = "NamedValue";
|
|
8
|
+
ResourceType["Tag"] = "Tag";
|
|
9
|
+
ResourceType["Gateway"] = "Gateway";
|
|
10
|
+
ResourceType["VersionSet"] = "VersionSet";
|
|
11
|
+
ResourceType["Backend"] = "Backend";
|
|
12
|
+
ResourceType["Logger"] = "Logger";
|
|
13
|
+
ResourceType["Group"] = "Group";
|
|
14
|
+
ResourceType["Diagnostic"] = "Diagnostic";
|
|
15
|
+
ResourceType["PolicyFragment"] = "PolicyFragment";
|
|
16
|
+
ResourceType["ServicePolicy"] = "ServicePolicy";
|
|
17
|
+
ResourceType["Product"] = "Product";
|
|
18
|
+
ResourceType["ProductPolicy"] = "ProductPolicy";
|
|
19
|
+
ResourceType["ProductApi"] = "ProductApi";
|
|
20
|
+
ResourceType["ProductGroup"] = "ProductGroup";
|
|
21
|
+
ResourceType["ProductTag"] = "ProductTag";
|
|
22
|
+
ResourceType["Api"] = "Api";
|
|
23
|
+
ResourceType["ApiPolicy"] = "ApiPolicy";
|
|
24
|
+
ResourceType["ApiTag"] = "ApiTag";
|
|
25
|
+
ResourceType["ApiDiagnostic"] = "ApiDiagnostic";
|
|
26
|
+
ResourceType["ApiOperation"] = "ApiOperation";
|
|
27
|
+
ResourceType["ApiOperationPolicy"] = "ApiOperationPolicy";
|
|
28
|
+
ResourceType["GatewayApi"] = "GatewayApi";
|
|
29
|
+
ResourceType["Subscription"] = "Subscription";
|
|
30
|
+
ResourceType["GlobalSchema"] = "GlobalSchema";
|
|
31
|
+
ResourceType["PolicyRestriction"] = "PolicyRestriction";
|
|
32
|
+
ResourceType["Documentation"] = "Documentation";
|
|
33
|
+
ResourceType["ApiSchema"] = "ApiSchema";
|
|
34
|
+
ResourceType["ApiRelease"] = "ApiRelease";
|
|
35
|
+
ResourceType["ApiTagDescription"] = "ApiTagDescription";
|
|
36
|
+
ResourceType["ApiWiki"] = "ApiWiki";
|
|
37
|
+
ResourceType["ProductWiki"] = "ProductWiki";
|
|
38
|
+
ResourceType["GraphQLResolver"] = "GraphQLResolver";
|
|
39
|
+
ResourceType["GraphQLResolverPolicy"] = "GraphQLResolverPolicy";
|
|
40
|
+
})(ResourceType || (ResourceType = {}));
|
|
41
|
+
export const RESOURCE_TYPE_METADATA = {
|
|
42
|
+
[ResourceType.NamedValue]: {
|
|
43
|
+
armPathSuffix: 'namedValues/{0}',
|
|
44
|
+
artifactDirectory: 'namedValues/{0}',
|
|
45
|
+
infoFile: 'namedValueInformation.json',
|
|
46
|
+
supportsGet: true,
|
|
47
|
+
},
|
|
48
|
+
[ResourceType.Tag]: {
|
|
49
|
+
armPathSuffix: 'tags/{0}',
|
|
50
|
+
artifactDirectory: 'tags/{0}',
|
|
51
|
+
infoFile: 'tagInformation.json',
|
|
52
|
+
supportsGet: true,
|
|
53
|
+
},
|
|
54
|
+
[ResourceType.Gateway]: {
|
|
55
|
+
armPathSuffix: 'gateways/{0}',
|
|
56
|
+
artifactDirectory: 'gateways/{0}',
|
|
57
|
+
infoFile: 'gatewayInformation.json',
|
|
58
|
+
supportsGet: true,
|
|
59
|
+
},
|
|
60
|
+
[ResourceType.VersionSet]: {
|
|
61
|
+
armPathSuffix: 'apiVersionSets/{0}',
|
|
62
|
+
artifactDirectory: 'versionSets/{0}',
|
|
63
|
+
infoFile: 'versionSetInformation.json',
|
|
64
|
+
supportsGet: true,
|
|
65
|
+
},
|
|
66
|
+
[ResourceType.Backend]: {
|
|
67
|
+
armPathSuffix: 'backends/{0}',
|
|
68
|
+
artifactDirectory: 'backends/{0}',
|
|
69
|
+
infoFile: 'backendInformation.json',
|
|
70
|
+
supportsGet: true,
|
|
71
|
+
},
|
|
72
|
+
[ResourceType.Logger]: {
|
|
73
|
+
armPathSuffix: 'loggers/{0}',
|
|
74
|
+
artifactDirectory: 'loggers/{0}',
|
|
75
|
+
infoFile: 'loggerInformation.json',
|
|
76
|
+
supportsGet: true,
|
|
77
|
+
},
|
|
78
|
+
[ResourceType.Group]: {
|
|
79
|
+
armPathSuffix: 'groups/{0}',
|
|
80
|
+
artifactDirectory: 'groups/{0}',
|
|
81
|
+
infoFile: 'groupInformation.json',
|
|
82
|
+
supportsGet: true,
|
|
83
|
+
},
|
|
84
|
+
[ResourceType.Diagnostic]: {
|
|
85
|
+
armPathSuffix: 'diagnostics/{0}',
|
|
86
|
+
artifactDirectory: 'diagnostics/{0}',
|
|
87
|
+
infoFile: 'diagnosticInformation.json',
|
|
88
|
+
supportsGet: true,
|
|
89
|
+
},
|
|
90
|
+
[ResourceType.PolicyFragment]: {
|
|
91
|
+
armPathSuffix: 'policyFragments/{0}',
|
|
92
|
+
artifactDirectory: 'policyFragments/{0}',
|
|
93
|
+
infoFile: 'policyFragmentInformation.json',
|
|
94
|
+
supportsGet: true,
|
|
95
|
+
},
|
|
96
|
+
[ResourceType.ServicePolicy]: {
|
|
97
|
+
armPathSuffix: 'policies/policy',
|
|
98
|
+
artifactDirectory: '',
|
|
99
|
+
infoFile: 'policy.xml',
|
|
100
|
+
supportsGet: true,
|
|
101
|
+
},
|
|
102
|
+
[ResourceType.Product]: {
|
|
103
|
+
armPathSuffix: 'products/{0}',
|
|
104
|
+
artifactDirectory: 'products/{0}',
|
|
105
|
+
infoFile: 'productInformation.json',
|
|
106
|
+
supportsGet: true,
|
|
107
|
+
},
|
|
108
|
+
[ResourceType.ProductPolicy]: {
|
|
109
|
+
armPathSuffix: 'products/{0}/policies/policy',
|
|
110
|
+
artifactDirectory: 'products/{0}',
|
|
111
|
+
infoFile: 'policy.xml',
|
|
112
|
+
supportsGet: true,
|
|
113
|
+
},
|
|
114
|
+
[ResourceType.ProductApi]: {
|
|
115
|
+
armPathSuffix: 'products/{0}/apis/{1}',
|
|
116
|
+
artifactDirectory: 'products/{0}',
|
|
117
|
+
infoFile: 'apis.json',
|
|
118
|
+
supportsGet: false,
|
|
119
|
+
},
|
|
120
|
+
[ResourceType.ProductGroup]: {
|
|
121
|
+
armPathSuffix: 'products/{0}/groups/{1}',
|
|
122
|
+
artifactDirectory: 'products/{0}',
|
|
123
|
+
infoFile: 'groups.json',
|
|
124
|
+
supportsGet: false,
|
|
125
|
+
},
|
|
126
|
+
[ResourceType.ProductTag]: {
|
|
127
|
+
armPathSuffix: 'products/{0}/tags/{1}',
|
|
128
|
+
artifactDirectory: 'products/{0}',
|
|
129
|
+
infoFile: null, // Embedded in productInformation.json
|
|
130
|
+
supportsGet: false,
|
|
131
|
+
},
|
|
132
|
+
[ResourceType.Api]: {
|
|
133
|
+
armPathSuffix: 'apis/{0}',
|
|
134
|
+
artifactDirectory: 'apis/{0}',
|
|
135
|
+
infoFile: 'apiInformation.json',
|
|
136
|
+
supportsGet: true,
|
|
137
|
+
},
|
|
138
|
+
[ResourceType.ApiPolicy]: {
|
|
139
|
+
armPathSuffix: 'apis/{0}/policies/policy',
|
|
140
|
+
artifactDirectory: 'apis/{0}',
|
|
141
|
+
infoFile: 'policy.xml',
|
|
142
|
+
supportsGet: true,
|
|
143
|
+
},
|
|
144
|
+
[ResourceType.ApiTag]: {
|
|
145
|
+
armPathSuffix: 'apis/{0}/tags/{1}',
|
|
146
|
+
artifactDirectory: 'apis/{0}/tags/{1}',
|
|
147
|
+
infoFile: 'tagInformation.json',
|
|
148
|
+
supportsGet: true,
|
|
149
|
+
},
|
|
150
|
+
[ResourceType.ApiDiagnostic]: {
|
|
151
|
+
armPathSuffix: 'apis/{0}/diagnostics/{1}',
|
|
152
|
+
artifactDirectory: 'apis/{0}/diagnostics/{1}',
|
|
153
|
+
infoFile: 'diagnosticInformation.json',
|
|
154
|
+
supportsGet: true,
|
|
155
|
+
},
|
|
156
|
+
[ResourceType.ApiOperation]: {
|
|
157
|
+
armPathSuffix: 'apis/{0}/operations/{1}',
|
|
158
|
+
artifactDirectory: 'apis/{0}/operations/{1}',
|
|
159
|
+
infoFile: null,
|
|
160
|
+
supportsGet: true,
|
|
161
|
+
},
|
|
162
|
+
[ResourceType.ApiOperationPolicy]: {
|
|
163
|
+
armPathSuffix: 'apis/{0}/operations/{1}/policies/policy',
|
|
164
|
+
artifactDirectory: 'apis/{0}/operations/{1}',
|
|
165
|
+
infoFile: 'policy.xml',
|
|
166
|
+
supportsGet: true,
|
|
167
|
+
},
|
|
168
|
+
[ResourceType.GatewayApi]: {
|
|
169
|
+
armPathSuffix: 'gateways/{0}/apis/{1}',
|
|
170
|
+
artifactDirectory: 'gateways/{0}',
|
|
171
|
+
infoFile: 'apis.json',
|
|
172
|
+
supportsGet: false,
|
|
173
|
+
},
|
|
174
|
+
[ResourceType.Subscription]: {
|
|
175
|
+
armPathSuffix: 'subscriptions/{0}',
|
|
176
|
+
artifactDirectory: 'subscriptions/{0}',
|
|
177
|
+
infoFile: 'subscriptionInformation.json',
|
|
178
|
+
supportsGet: true,
|
|
179
|
+
},
|
|
180
|
+
[ResourceType.GlobalSchema]: {
|
|
181
|
+
armPathSuffix: 'schemas/{0}',
|
|
182
|
+
artifactDirectory: 'schemas/{0}',
|
|
183
|
+
infoFile: 'schemaInformation.json',
|
|
184
|
+
supportsGet: true,
|
|
185
|
+
},
|
|
186
|
+
[ResourceType.PolicyRestriction]: {
|
|
187
|
+
armPathSuffix: 'policyRestrictions/{0}',
|
|
188
|
+
artifactDirectory: 'policyRestrictions/{0}',
|
|
189
|
+
infoFile: 'policyRestrictionInformation.json',
|
|
190
|
+
supportsGet: true,
|
|
191
|
+
},
|
|
192
|
+
[ResourceType.Documentation]: {
|
|
193
|
+
armPathSuffix: 'documentations/{0}',
|
|
194
|
+
artifactDirectory: 'documentations/{0}',
|
|
195
|
+
infoFile: 'documentationInformation.json',
|
|
196
|
+
supportsGet: true,
|
|
197
|
+
},
|
|
198
|
+
[ResourceType.ApiSchema]: {
|
|
199
|
+
armPathSuffix: 'apis/{0}/schemas/{1}',
|
|
200
|
+
artifactDirectory: 'apis/{0}/schemas/{1}',
|
|
201
|
+
infoFile: 'schemaInformation.json',
|
|
202
|
+
supportsGet: true,
|
|
203
|
+
listOmitsFields: true, // LIST omits properties.document (GraphQL SDL, XSD, JSON schema body)
|
|
204
|
+
},
|
|
205
|
+
[ResourceType.ApiRelease]: {
|
|
206
|
+
armPathSuffix: 'apis/{0}/releases/{1}',
|
|
207
|
+
artifactDirectory: 'apis/{0}/releases/{1}',
|
|
208
|
+
infoFile: 'releaseInformation.json',
|
|
209
|
+
supportsGet: true,
|
|
210
|
+
listOmitsFields: true, // LIST omits properties.apiId
|
|
211
|
+
},
|
|
212
|
+
[ResourceType.ApiTagDescription]: {
|
|
213
|
+
armPathSuffix: 'apis/{0}/tagDescriptions/{1}',
|
|
214
|
+
artifactDirectory: 'apis/{0}/tagDescriptions/{1}',
|
|
215
|
+
infoFile: 'tagDescriptionInformation.json',
|
|
216
|
+
supportsGet: true,
|
|
217
|
+
},
|
|
218
|
+
[ResourceType.ApiWiki]: {
|
|
219
|
+
armPathSuffix: 'apis/{0}/wikis/default',
|
|
220
|
+
artifactDirectory: 'apis/{0}',
|
|
221
|
+
infoFile: 'wiki.md',
|
|
222
|
+
supportsGet: true,
|
|
223
|
+
},
|
|
224
|
+
[ResourceType.ProductWiki]: {
|
|
225
|
+
armPathSuffix: 'products/{0}/wikis/default',
|
|
226
|
+
artifactDirectory: 'products/{0}',
|
|
227
|
+
infoFile: 'wiki.md',
|
|
228
|
+
supportsGet: true,
|
|
229
|
+
},
|
|
230
|
+
[ResourceType.GraphQLResolver]: {
|
|
231
|
+
armPathSuffix: 'apis/{0}/resolvers/{1}',
|
|
232
|
+
artifactDirectory: 'apis/{0}/resolvers/{1}',
|
|
233
|
+
infoFile: 'resolverInformation.json',
|
|
234
|
+
supportsGet: true,
|
|
235
|
+
},
|
|
236
|
+
[ResourceType.GraphQLResolverPolicy]: {
|
|
237
|
+
armPathSuffix: 'apis/{0}/resolvers/{1}/policies/policy',
|
|
238
|
+
artifactDirectory: 'apis/{0}/resolvers/{1}',
|
|
239
|
+
infoFile: 'policy.xml',
|
|
240
|
+
supportsGet: true,
|
|
241
|
+
},
|
|
242
|
+
};
|
|
243
|
+
//# sourceMappingURL=resource-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-types.js","sourceRoot":"","sources":["../../src/models/resource-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* T007: Core TypeScript interfaces
|
|
3
|
+
* ResourceDescriptor, ResourcePayload, ApimServiceContext, DependencyEdge
|
|
4
|
+
*/
|
|
5
|
+
import { ResourceType } from './resource-types.js';
|
|
6
|
+
export interface ResourceDescriptor {
|
|
7
|
+
type: ResourceType;
|
|
8
|
+
/**
|
|
9
|
+
* Ordered name-parts that fill the positional `{0}`, `{1}`, … placeholders
|
|
10
|
+
* in both `armPathSuffix` and `artifactDirectory` for this resource type.
|
|
11
|
+
*
|
|
12
|
+
* Examples:
|
|
13
|
+
* NamedValue "mySecret" → nameParts: ['mySecret']
|
|
14
|
+
* ApiOperation api="petstore" op="get" → nameParts: ['petstore', 'get']
|
|
15
|
+
* ApiOperationPolicy api="petstore" op="get" → nameParts: ['petstore', 'get']
|
|
16
|
+
* ServicePolicy → nameParts: []
|
|
17
|
+
*/
|
|
18
|
+
nameParts: string[];
|
|
19
|
+
/** Workspace name if workspace-scoped */
|
|
20
|
+
workspace?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface ResourcePayload {
|
|
23
|
+
descriptor: ResourceDescriptor;
|
|
24
|
+
/** Raw JSON from APIM GET response (properties envelope). Never parsed into typed fields. */
|
|
25
|
+
json: Record<string, unknown>;
|
|
26
|
+
}
|
|
27
|
+
export interface ApimServiceContext {
|
|
28
|
+
subscriptionId: string;
|
|
29
|
+
resourceGroup: string;
|
|
30
|
+
serviceName: string;
|
|
31
|
+
apiVersion: string;
|
|
32
|
+
baseUrl: string;
|
|
33
|
+
}
|
|
34
|
+
export interface DependencyEdge {
|
|
35
|
+
from: ResourceType;
|
|
36
|
+
to: ResourceType;
|
|
37
|
+
required: boolean;
|
|
38
|
+
}
|
|
39
|
+
export interface PublishAction {
|
|
40
|
+
type: 'put' | 'delete';
|
|
41
|
+
descriptor: ResourceDescriptor;
|
|
42
|
+
/** JSON body for PUT; undefined for DELETE */
|
|
43
|
+
payload?: Record<string, unknown>;
|
|
44
|
+
/** Dry-run description of what would change */
|
|
45
|
+
description: string;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/models/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,YAAY,CAAC;IACnB;;;;;;;;;OASG;IACH,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,kBAAkB,CAAC;IAC/B,6FAA6F;IAC7F,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,YAAY,CAAC;IACnB,EAAE,EAAE,YAAY,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAC;IACvB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/models/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* T022: API-specific extraction logic
|
|
3
|
+
* API revisions, API specifications, operations & operation policies,
|
|
4
|
+
* GraphQL resolvers & resolver policies, API tags, diagnostics, schemas,
|
|
5
|
+
* releases, tag descriptions, wikis.
|
|
6
|
+
*/
|
|
7
|
+
import { IApimClient } from '../clients/iapim-client.js';
|
|
8
|
+
import { IArtifactStore } from '../clients/iartifact-store.js';
|
|
9
|
+
import { ApimServiceContext, ResourceDescriptor } from '../models/types.js';
|
|
10
|
+
import { FilterConfig } from '../models/config.js';
|
|
11
|
+
import { ExtractedResource } from './resource-extractor.js';
|
|
12
|
+
/**
|
|
13
|
+
* Result of API-specific extraction for a single API.
|
|
14
|
+
*/
|
|
15
|
+
export interface ApiExtractionResult {
|
|
16
|
+
apiName: string;
|
|
17
|
+
revisions: ExtractedResource[];
|
|
18
|
+
specification: boolean;
|
|
19
|
+
operations: ExtractedResource[];
|
|
20
|
+
operationPolicies: ExtractedResource[];
|
|
21
|
+
tags: ExtractedResource[];
|
|
22
|
+
diagnostics: ExtractedResource[];
|
|
23
|
+
schemas: ExtractedResource[];
|
|
24
|
+
releases: ExtractedResource[];
|
|
25
|
+
tagDescriptions: ExtractedResource[];
|
|
26
|
+
wiki: boolean;
|
|
27
|
+
resolvers: ExtractedResource[];
|
|
28
|
+
resolverPolicies: ExtractedResource[];
|
|
29
|
+
policies: string[];
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Extract all API-specific resources for a single API.
|
|
33
|
+
* This includes revisions, specifications, operations, policies, etc.
|
|
34
|
+
*/
|
|
35
|
+
export declare function extractApiResources(client: IApimClient, store: IArtifactStore, context: ApimServiceContext, apiDescriptor: ResourceDescriptor, apiJson: Record<string, unknown>, outputDir: string, filter?: FilterConfig, workspace?: string): Promise<ApiExtractionResult>;
|
|
36
|
+
//# sourceMappingURL=api-extractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-extractor.d.ts","sourceRoot":"","sources":["../../src/services/api-extractor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE5E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAuB,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAKjF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC,IAAI,EAAE,iBAAiB,EAAE,CAAC;IAC1B,WAAW,EAAE,iBAAiB,EAAE,CAAC;IACjC,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,eAAe,EAAE,iBAAiB,EAAE,CAAC;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;IACtC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,WAAW,EACnB,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,kBAAkB,EAC3B,aAAa,EAAE,kBAAkB,EACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,YAAY,EACrB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,CAAC,CAkG9B"}
|