@finagraph/strongbox-finconnect-react
Version:
React components to integrate with Finagraph Strongbox
83 lines (82 loc) • 3.19 kB
TypeScript
import './StrongboxLinkModal.scss';
import * as React from 'react';
import { AccountingPackage } from '../../../Models/AccountingPackages';
import { IDelegatedAccessToken } from '../../../Models/Api/ClientBase';
import { StrongboxConnectionRequest } from '../../../Utils/ConnectStrongbox';
import { Theme } from '../../../Models/Theme/Theme';
import { ConnectionRequestDescriptor } from '../../../Models/Api/strongbox.models';
import { TextContent } from '../../../Text/TextContent';
type Props = {
accountingPackage: AccountingPackage;
entityId: string;
strongboxCxnRequestDescriptor?: ConnectionRequestDescriptor;
cxnRequest?: StrongboxConnectionRequest;
onConnected?: (cxnRequest: StrongboxConnectionRequest, apiRequestParameters?: ConnectionRequestDescriptor) => void;
onRequestClose?: ((success: boolean) => void);
open: boolean;
strongboxUrl: string;
submissionId?: string;
delegatedAccessToken: IDelegatedAccessToken;
theme?: Theme;
updateProgress: (progress: number) => void;
executeConnect: (accountingPackage: AccountingPackage, connectionRequestId: string, connectionWindowHandle: Window | undefined) => void;
executeDisconnect?: (disconnected: () => void) => void;
isAuthorized?: boolean;
checkAuthorizationStatus?: boolean;
disabled?: boolean;
errorMsg?: string;
isWorking?: boolean;
textContent?: TextContent;
};
type State = {
descriptionTextQBO: string;
descriptionTextQBD: string;
descriptionTextXero: string;
descriptionTextSageIntacct: string;
descriptionTextExample: string;
descriptionTextFreeAgent: string;
descriptionTextNetSuite: string;
descriptionTextBusinessCentral: string;
descriptionTextMYOBBusiness: string;
descriptionTextFileUpload: string;
qbOneWay: string;
sageIntacctOneWay: string;
xeroOneWay: string;
exampleOneWay: string;
freeAgentOneWay: string;
netSuiteOneWay: string;
businessCentralOneWay: string;
myobBusinessOneWay: string;
fileUploadOneWay: string;
working: string;
updateFinancialsNow: string;
disconnect: string;
setAutoFocus: boolean;
};
declare class StrongboxLinkModal extends React.PureComponent<Props, State> {
static defaultProps: {
open: boolean;
isAuthorized: boolean;
checkAuthorizationStatus: boolean;
textContent: TextContent;
};
constructor(props: Props);
private _regularTextStyle;
private _securityTextStyle;
componentDidMount(): void;
componentDidUpdate(prevProps: any): void;
render(): false | React.JSX.Element;
private SetTextValues;
private RenderConnectToQuickBooks;
private RenderConnectToQuickBooksDesktop;
private RenderConnectWithFileUpload;
private RenderConnectToSageIntacct;
private RenderConnectToXero;
private RenderConnectToExample;
private RenderConnectToFreeAgent;
private RenderConnectToNetSuite;
private RenderConnectToBusinessCentral;
private RenderConnectToMYOBBusiness;
private RenderAccountingPackage;
}
export default StrongboxLinkModal;