@tableau/taco-toolkit
Version:
Tableau Connector Toolkit
40 lines (39 loc) • 1.3 kB
TypeScript
import { CallerType } from '../../shared/enums/caller-type';
import { ConnectionData } from '../../shared/types/connection-data';
import { SecretsType } from '../../shared/types/secrets-type';
export type ConnectorInput = {
browserWatcherUrl: string;
connectionId: string;
serverUrl: string;
callerId: string;
epsInstanceId: string;
connectorClass: string;
connectionData: string;
secrets: string;
tacoPath: string;
callerType: CallerType;
};
export type ConnectorOptions = Readonly<Omit<ConnectorInput, 'browserWatcherUrl' | 'connectionData' | 'secrets'>>;
export interface EPSHeaders {
'caller-id': string;
'connection-id': string;
'eps-instance-id': string;
'plugin-path': string;
'connector-class': string;
}
export interface IframeMessage {
type: string;
connectionData: ConnectionData;
secrets: SecretsType | undefined;
headers: EPSHeaders;
submissionUrl: string;
}
export interface ConnectorRequestOptions {
headers?: Record<string, string>;
/**
* Set to `true` if the requested server doesn't allow CORS requests from browser.
* In this case, the request will go through EPS server which acts as a proxy
* between user's client and the requested URL.
*/
bypassCorsPolicy?: boolean;
}