@apistudio/apim-cli
Version:
CLI for API Management Products
65 lines (59 loc) • 2.88 kB
text/typescript
/**
* Copyright Super iPaaS Integration LLC, an IBM Company 2024
*/
import { AssetModelKindConstants, POLICY_KINDS } from "./base-asset.model.js";
import { EditorTab } from "./editor-tab.model.js";
export interface EditorTabsInfo {
editorId: number;
tabs: EditorTab[];
activeTab: EditorTab | -1;
hm: HashMap;
}
export interface EditorTabItem {
activeEditor: boolean;
editorTab: EditorTab;
position: { line: number, column: number };
tabsHeight: number;
width: number;
setUnSavedTabs: React.Dispatch<React.SetStateAction<number[]>>;
fileName: string;
}
interface HashMap {
[]: NestedHashMap;
}
interface NestedHashMap {
[]: string;
}
export const FormViewSupportedKinds = [
AssetModelKindConstants.API,
AssetModelKindConstants.Test,
AssetModelKindConstants.Assertion,
AssetModelKindConstants.Environment,
AssetModelKindConstants.PolicySequence,
AssetModelKindConstants.GlobalPolicy,
'OPENAPI',
'POLICY',
'SWAGGER'
];
export const FormViewUnsupportedKinds: Record<string, string> = {
'swagger': 'swagger',
[]: 'plan',
[]: 'package',
[]: 'set context varaible',
[]: 'invoke WebMethods IS Service',
[]: 'invoke AWS Lambda function',
[]: 'message config',
[]: 'invoke messaging extension',
[]: 'transform request',
[]: 'validate API specification',
[]: 'WebMethods IS service',
[]: 'routing',
[]: 'outbound alias',
[]: 'outbound anonymous',
[]: 'outbound basic auth',
[]: 'outbound incoming JWT',
[]: 'outbound kerberos auth',
};
export const API_FORM_VIEW_VALID_KINDS = [AssetModelKindConstants.API.toLowerCase(), 'openapi'];
export const POLICY_FORM_VIEW_VALID_KINDS = [AssetModelKindConstants.PolicySequence.toLowerCase(), ...POLICY_KINDS.map(kind => kind.toLowerCase()), AssetModelKindConstants.GlobalPolicy.toLowerCase()];
export const TEST_FORM_VIEW_VALID_KINDS = [AssetModelKindConstants.Assertion.toLowerCase(), AssetModelKindConstants.Environment.toLowerCase(), AssetModelKindConstants.Test.toLowerCase()];