@chameleoncloud/jupyterlab_zenodo
Version:
JupyterLab extension for uploading to Zenodo
75 lines (74 loc) • 2.47 kB
TypeScript
import * as React from 'react';
import { ReactWidget } from '@jupyterlab/apputils';
import { IZenodoRegistry, ZenodoFormFields, ZenodoConfig } from './tokens';
declare namespace ZenodoFormInput {
interface IProps {
readonly id: string;
readonly label: string;
readonly required: boolean;
readonly multiline: boolean;
readonly default?: string;
readonly placeholder?: string;
}
}
export declare class ZenodoFormInput extends React.Component<ZenodoFormInput.IProps, {}> {
constructor(props: ZenodoFormInput.IProps);
render(): JSX.Element;
private id;
static defaultProps: ZenodoFormInput.IProps;
}
declare namespace ZenodoUploadForm {
interface IProps {
readonly onSubmit: React.FormEventHandler;
readonly defaults: ZenodoFormFields;
readonly baseUrl: string;
}
interface IState {
error?: string;
}
}
export declare class ZenodoUploadForm extends React.Component<ZenodoUploadForm.IProps, ZenodoUploadForm.IState> {
constructor(props: ZenodoUploadForm.IProps);
render(): JSX.Element;
}
declare namespace ZenodoSuccessMessage {
interface IProps {
doi: string;
baseUrl: string;
}
}
export declare class ZenodoSuccessMessage extends React.Component<ZenodoSuccessMessage.IProps, {}> {
constructor(props: ZenodoSuccessMessage.IProps);
get recordUrl(): string;
onViewButtonClick(event: React.MouseEvent<HTMLButtonElement, MouseEvent>): void;
render(): JSX.Element;
}
declare namespace ZenodoManager {
interface IProps {
zenodoRegistry: IZenodoRegistry;
zenodoConfig: ZenodoConfig;
formDefaults: ZenodoFormFields;
}
type IStateValue = 'waiting' | 'success' | 'error' | 'form';
interface IState {
currentState: IStateValue;
doi?: string;
errorMessage?: string;
}
}
export declare class ZenodoManager extends React.Component<ZenodoManager.IProps, ZenodoManager.IState> {
constructor(props: ZenodoManager.IProps);
onSubmit(event: React.FormEvent): void;
render(): JSX.Element;
private onSuccess;
private onError;
private _allStates;
}
export declare class ZenodoWidget extends ReactWidget {
constructor(zenodoRegistry: IZenodoRegistry, zenodoConfig: ZenodoConfig, formDefaults: ZenodoFormFields);
render(): JSX.Element;
private _zenodoRegistry;
private _zenodoConfig;
private _formDefaults;
}
export {};