UNPKG

@uppy/provider-views

Version:

View library for Uppy remote provider plugins.

45 lines 2.02 kB
import type { Body, DefinePluginOpts, Meta, PartialTree, PartialTreeFile, PartialTreeFolderNode, UnknownSearchProviderPlugin } from '@uppy/core'; import type { CompanionFile } from '@uppy/utils'; import type { h } from 'preact'; interface Opts<M extends Meta, B extends Body> { provider: UnknownSearchProviderPlugin<M, B>['provider']; viewType?: 'list' | 'grid' | 'unsplash'; showTitles?: boolean; showFilter?: boolean; utmSource?: string; } type RenderOpts<M extends Meta, B extends Body> = Omit<Opts<M, B>, 'provider'>; declare const defaultOptions: { viewType: "grid"; showTitles: boolean; showFilter: boolean; utmSource: string; }; /** * SearchProviderView, used for Unsplash and future image search providers. * Extends generic View, shared with regular providers like Google Drive and Instagram. */ export default class SearchProviderView<M extends Meta, B extends Body> { static VERSION: string; plugin: UnknownSearchProviderPlugin<M, B>; provider: UnknownSearchProviderPlugin<M, B>['provider']; opts: DefinePluginOpts<Opts<M, B>, keyof typeof defaultOptions>; isHandlingScroll: boolean; lastCheckbox: string | null; constructor(plugin: UnknownSearchProviderPlugin<M, B>, opts: Opts<M, B>); tearDown(): void; setLoading(loading: boolean | string): void; resetPluginState(): void; cancelSelection(): void; search(): Promise<void>; handleScroll(event: Event): Promise<void>; donePicking(): Promise<void>; toggleCheckbox(ourItem: PartialTreeFolderNode | PartialTreeFile, isShiftKeyPressed: boolean): void; validateSingleFile: (file: CompanionFile) => string | null; getDisplayedPartialTree: () => (PartialTreeFile | PartialTreeFolderNode)[]; setSearchString: (searchString: string) => void; validateAggregateRestrictions: (partialTree: PartialTree) => string | null; render(state: unknown, viewOptions?: RenderOpts<M, B>): h.JSX.Element; } export {}; //# sourceMappingURL=SearchProviderView.d.ts.map