UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

171 lines (170 loc) 5.14 kB
/** * Copyright IBM Corp. 2024, 2025 */ import { KindEnums } from '@apic/api-model/common/StudioEnums.js'; export const AssetKinds = { API: 'API', Scope: 'Scope', PolicySequence: 'PolicySequence', CORS: 'CORS', Test: 'Test', Assertion: 'Assertion', Environment: 'Environment', Plan: 'Plan', Product: 'Product', Quota: 'Quota', Properties: 'Properties', URISchemes: 'URISchemes', DataPowerAssembly: 'DataPowerAssembly', FreeFlowPolicySequence: 'FreeFlowPolicySequence', StagedPolicySequence: 'StagedPolicySequence', Telemetry: 'Telemetry', Invoke: 'Invoke', LoadBalancer: 'LoadBalancer', InboundBulkHead: 'InboundBulkHead', InboundMessaging: 'InboundMessaging', SetMediaType: 'SetMediaType', AuthorizeUser: 'AuthorizeUser', SetContextVariable: 'SetContextVariable', WebMethodsISService: 'WebMethodsISService', Log: 'Log', IAM: 'IAM', Authorize: 'Authorize', TransformResponse: 'TransformResponse', TransformRequest: 'TransformRequest', MonitorTraffic: 'MonitorTraffic', SetAuthorization: 'SetAuthorization', OutboundAnonymous: 'OutboundAnonymous', OutboundAlias: 'OutboundAlias', CacheServiceResult: 'CacheServiceResult', ValidateAPISpecification: 'ValidateAPISpecification', ErrorProcessing: 'ErrorProcessing', HTTPEndpoint: 'HTTPEndpoint', HandlebarsTemplate: 'HandlebarsTemplate', Route: 'Route', SQLInjectionFilter: 'SQLInjectionFilter', MessageConfig: 'MessageConfig', LuaScript: 'LuaScript', Set: 'Set', RateLimitDef: 'RateLimitDef', RateLimit: 'RateLimit', Return: 'Return', GlobalPolicy: 'GlobalPolicy', DataMasking: 'DataMasking', InvokeMessagingExtension: 'InvokeMessagingExtension', HTTPInvoke: 'HTTPInvoke', CountLimit: 'CountLimit', CountLimitDef: 'CountLimitDef', Redact: 'Redact', Remove: 'Remove', Throw: 'Throw', Block: 'Block', Transform: 'Transform', Switch: 'Switch', If: 'If', OperationSwitch: 'OperationSwitch', InvokeAWSLambda: 'InvokeAWSLambda', WatsonXAIInvoke: 'WatsonXAIInvoke', OpenAIInvoke: 'OpenAIInvoke', ExtractIdentity: 'ExtractIdentity', EnforceCircuitBreaker: 'EnforceCircuitBreaker', Parse: 'Parse', Retry: 'Retry', IBMCloudLogin: 'IBMCloudLogin', Authenticate: 'Authenticate', Cache: 'Cache', Try: 'Try', }; export const POLICY_KINDS = [ KindEnums.Log, KindEnums.Route, KindEnums.Transport, KindEnums.CacheServiceResult, KindEnums.ErrorProcessing, KindEnums.IdentifyAndAuthorize, KindEnums.InvokeMessagingExtension, KindEnums.InvokeAWSLambdaFunction, KindEnums.MonitorTraffic, KindEnums.RateLimiter, KindEnums.SetContextVariable, KindEnums.TransformRequest, KindEnums.ValidateAPISpecification, KindEnums.HTTPEndpoint, KindEnums.TransformResponse, KindEnums.SetMediaType, KindEnums.WebMethodsISService, KindEnums.InboundBulkHead, KindEnums.InboundMessaging, KindEnums.AuthorizeUser, KindEnums.CustomHttpHeader, KindEnums.MessageConfig, KindEnums.OutboundAlias, KindEnums.OutboundAnonymous, KindEnums.OutboundBasicAuth, KindEnums.OutboundOAuth2, KindEnums.OutboundIncomingJWT, KindEnums.OutboundNTLMAuth, KindEnums.OutboundKerberosAuth, AssetKinds.SetAuthorization, AssetKinds.Invoke, AssetKinds.LoadBalancer, AssetKinds.URISchemes, AssetKinds.Properties, AssetKinds.CORS, AssetKinds.Log, AssetKinds.MonitorTraffic, AssetKinds.OutboundAnonymous, AssetKinds.OutboundAlias, AssetKinds.CacheServiceResult, AssetKinds.RateLimitDef, AssetKinds.RateLimit, AssetKinds.IAM, AssetKinds.Set, AssetKinds.Return, AssetKinds.LuaScript, AssetKinds.CountLimit, AssetKinds.HTTPInvoke, AssetKinds.CountLimitDef, AssetKinds.Redact, AssetKinds.Remove, AssetKinds.Block, AssetKinds.InvokeAWSLambda, AssetKinds.EnforceCircuitBreaker, AssetKinds.Parse, AssetKinds.Switch, AssetKinds.InvokeMessagingExtension, AssetKinds.DataMasking, AssetKinds.If, AssetKinds.OperationSwitch, AssetKinds.HTTPInvoke, AssetKinds.Switch, AssetKinds.If, AssetKinds.ExtractIdentity, AssetKinds.SQLInjectionFilter, AssetKinds.Retry, AssetKinds.IBMCloudLogin, AssetKinds.Throw, AssetKinds.Authenticate, AssetKinds.Cache, AssetKinds.Try, ]; export const NANO_GW_POLICY_KINDS = [ AssetKinds.Invoke, AssetKinds.HandlebarsTemplate, AssetKinds.LoadBalancer, AssetKinds.Telemetry, AssetKinds.Authorize, AssetKinds.Transform ]; export const CommonModelExtensionInfo = { [AssetKinds.Invoke]: { versions: ['api.ibm.com/v1'], defaultVersion: 'api.ibm.com/v1', }, }; export { KindEnums as AssetModelKindConstants }; export class AssetModelInternalKindConstants { } AssetModelInternalKindConstants.POLICY = 'Policy'; AssetModelInternalKindConstants.MOCK_END_POINT = 'MockEndpoint'; AssetModelInternalKindConstants.MOCK_RESPONSE = 'MockResponse';