@apistudio/apim-cli
Version:
CLI for API Management Products
49 lines (44 loc) • 1.33 kB
text/typescript
/**
* Copyright Super iPaaS Integration LLC, an IBM Company 2024
*/
import { KindEnums } from '@apic/api-model/common/StudioEnums.js';
import { equalsIgnoreCase } from '../../common/data-helper.js';
const isPolicyKind = (kind: string | null | undefined): boolean => {
if (typeof kind !== 'string') {
return false;
}
const policyKinds: string[] = [
KindEnums.Log,
KindEnums.ErrorProcessing,
KindEnums.IdentifyAndAuthorize,
KindEnums.SetContextVariable,
KindEnums.MonitorTraffic,
KindEnums.CacheServiceResult,
KindEnums.RateLimiter,
KindEnums.InvokeAWSLambdaFunction,
KindEnums.DataMasking,
KindEnums.HTTPInvoke,
KindEnums.InvokeMessagingExtension,
KindEnums.TransformRequest,
KindEnums.TransformResponse,
KindEnums.ValidateAPISpecification,
KindEnums.CORS,
KindEnums.Route,
KindEnums.Transport,
KindEnums.OutboundAlias,
KindEnums.OutboundAnonymous,
KindEnums.OutboundBasicAuth,
KindEnums.OutboundIncomingJWT,
KindEnums.OutboundKerberosAuth,
KindEnums.OutboundNTLMAuth,
KindEnums.OutboundOAuth2,
KindEnums.Scope,
KindEnums.WebMethodsISService,
KindEnums.CustomHttpHeader,
KindEnums.InboundBulkHead,
KindEnums.AuthorizeUser,
KindEnums.SetMediaType
];
return policyKinds.some((policyKind) => equalsIgnoreCase(policyKind, kind));
};
export { isPolicyKind };