Added some finishing touches here and there
This commit is contained in:
parent
ddd77d9f82
commit
656b1ba417
42 changed files with 9344 additions and 30 deletions
428
node_modules/@iconify/react/dist/iconify.d.ts
generated
vendored
Normal file
428
node_modules/@iconify/react/dist/iconify.d.ts
generated
vendored
Normal file
|
|
@ -0,0 +1,428 @@
|
|||
import { IconifyIcon } from '@iconify/types';
|
||||
import { IconifyJSON } from '@iconify/types';
|
||||
import { IconifyTransformations } from '@iconify/types';
|
||||
import type { JSX as JSX_2 } from 'react';
|
||||
import type { ReactNode } from 'react';
|
||||
import type { SVGProps } from 'react';
|
||||
|
||||
/**
|
||||
* Add custom config for provider
|
||||
*/
|
||||
export declare function addAPIProvider(provider: string, customConfig: PartialIconifyAPIConfig): boolean;
|
||||
|
||||
/**
|
||||
* Add icon set
|
||||
*/
|
||||
export declare function addCollection(data: IconifyJSON, provider?: string): boolean;
|
||||
|
||||
/**
|
||||
* Add one icon
|
||||
*/
|
||||
export declare function addIcon(name: string, data: IconifyIcon | null): boolean;
|
||||
|
||||
/**
|
||||
* Internal API
|
||||
*/
|
||||
export declare const _api: IconifyAPIInternalFunctions;
|
||||
|
||||
/**
|
||||
* Get SVG attributes and content from icon + customisations
|
||||
*
|
||||
* Does not generate style to make it compatible with frameworks that use objects for style, such as React.
|
||||
* Instead, it generates 'inline' value. If true, rendering engine should add verticalAlign: -0.125em to icon.
|
||||
*
|
||||
* Customisations should be normalised by platform specific parser.
|
||||
* Result should be converted to <svg> by platform specific parser.
|
||||
* Use replaceIDs to generate unique IDs for body.
|
||||
*/
|
||||
export declare function buildIcon(icon: IconifyIcon, customisations?: IconifyIconCustomisations_2): IconifyIconBuildResult;
|
||||
|
||||
/**
|
||||
* Calculate second dimension when only 1 dimension is set
|
||||
*/
|
||||
export declare function calculateSize(size: string, ratio: number, precision?: number): string;
|
||||
|
||||
export declare function calculateSize(size: number, ratio: number, precision?: number): number;
|
||||
|
||||
export declare function calculateSize(size: string | number, ratio: number, precision?: number): string | number;
|
||||
|
||||
/**
|
||||
* Signature for getAPIConfig
|
||||
*/
|
||||
export declare type GetAPIConfig = (provider: string) => IconifyAPIConfig | undefined;
|
||||
|
||||
/**
|
||||
* Get full icon
|
||||
*/
|
||||
export declare function getIcon(name: string): Required<IconifyIcon> | null | undefined;
|
||||
|
||||
/**
|
||||
* Block icon
|
||||
*
|
||||
* @param props - Component properties
|
||||
*/
|
||||
export declare const Icon: IconComponentType;
|
||||
|
||||
declare type IconComponentType = (props: IconProps) => JSX_2.Element;
|
||||
|
||||
/**
|
||||
* API config
|
||||
*/
|
||||
export declare interface IconifyAPIConfig extends RedundancyConfig {
|
||||
path: string;
|
||||
maxURL: number;
|
||||
}
|
||||
|
||||
export declare interface IconifyAPICustomQueryParams {
|
||||
type: 'custom';
|
||||
provider?: string;
|
||||
uri: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Iconify API functions
|
||||
*/
|
||||
export declare interface IconifyAPIFunctions {
|
||||
/**
|
||||
* Load icons
|
||||
*/
|
||||
loadIcons: (icons: (IconifyIconName | string)[], callback?: IconifyIconLoaderCallback) => IconifyIconLoaderAbort;
|
||||
/**
|
||||
* Load one icon, using Promise syntax
|
||||
*/
|
||||
loadIcon: (icon: IconifyIconName | string) => Promise<Required<IconifyIcon>>;
|
||||
/**
|
||||
* Add API provider
|
||||
*/
|
||||
addAPIProvider: (provider: string, customConfig: PartialIconifyAPIConfig) => boolean;
|
||||
/**
|
||||
* Set custom loader for multple icons
|
||||
*/
|
||||
setCustomIconsLoader: (callback: IconifyCustomIconsLoader, prefix: string, provider?: string) => void;
|
||||
/**
|
||||
* Set custom loader for one icon
|
||||
*/
|
||||
setCustomIconLoader: (callback: IconifyCustomIconLoader, prefix: string, provider?: string) => void;
|
||||
}
|
||||
|
||||
/**
|
||||
* Params for sendQuery()
|
||||
*/
|
||||
declare interface IconifyAPIIconsQueryParams {
|
||||
type: 'icons';
|
||||
provider: string;
|
||||
prefix: string;
|
||||
icons: string[];
|
||||
}
|
||||
|
||||
/**
|
||||
* Exposed internal functions
|
||||
*
|
||||
* Used by plug-ins, such as Icon Finder
|
||||
*
|
||||
* Important: any changes published in a release must be backwards compatible.
|
||||
*/
|
||||
export declare interface IconifyAPIInternalFunctions {
|
||||
/**
|
||||
* Get API config, used by custom modules
|
||||
*/
|
||||
getAPIConfig: GetAPIConfig;
|
||||
/**
|
||||
* Set custom API module
|
||||
*/
|
||||
setAPIModule: (provider: string, item: IconifyAPIModule) => void;
|
||||
/**
|
||||
* Send API query
|
||||
*/
|
||||
sendAPIQuery: (target: string | PartialIconifyAPIConfig, query: IconifyAPIQueryParams, callback: QueryDoneCallback) => QueryAbortCallback;
|
||||
/**
|
||||
* Set and get fetch()
|
||||
*/
|
||||
setFetch: (item: typeof fetch) => void;
|
||||
getFetch: () => typeof fetch | undefined;
|
||||
/**
|
||||
* List all API providers (from config)
|
||||
*/
|
||||
listAPIProviders: () => string[];
|
||||
}
|
||||
|
||||
/**
|
||||
* API modules
|
||||
*/
|
||||
export declare interface IconifyAPIModule {
|
||||
prepare: IconifyAPIPrepareIconsQuery;
|
||||
send: IconifyAPISendQuery;
|
||||
}
|
||||
|
||||
/**
|
||||
* Functions to implement in module
|
||||
*/
|
||||
export declare type IconifyAPIPrepareIconsQuery = (provider: string, prefix: string, icons: string[]) => IconifyAPIIconsQueryParams[];
|
||||
|
||||
export declare type IconifyAPIQueryParams = IconifyAPIIconsQueryParams | IconifyAPICustomQueryParams;
|
||||
|
||||
export declare type IconifyAPISendQuery = (host: string, params: IconifyAPIQueryParams, callback: QueryModuleResponse) => void;
|
||||
|
||||
/**
|
||||
* Interface for exported builder functions
|
||||
*/
|
||||
export declare interface IconifyBuilderFunctions {
|
||||
replaceIDs?: (body: string, prefix?: string | (() => string)) => string;
|
||||
calculateSize: (size: string | number, ratio: number, precision?: number) => string | number;
|
||||
buildIcon: (icon: IconifyIcon, customisations?: IconifyIconCustomisations_2) => IconifyIconBuildResult;
|
||||
}
|
||||
|
||||
/**
|
||||
* Custom loader for one icon
|
||||
*/
|
||||
export declare type IconifyCustomIconLoader = (name: string, prefix: string, provider: string) => Promise<IconifyIcon | null> | IconifyIcon | null;
|
||||
|
||||
/**
|
||||
* Custom icons loader
|
||||
*/
|
||||
export declare type IconifyCustomIconsLoader = (icons: string[], prefix: string, provider: string) => Promise<IconifyJSON | null> | IconifyJSON | null;
|
||||
|
||||
/**
|
||||
* React component properties: generic element for Icon component, SVG for generated component
|
||||
*/
|
||||
declare type IconifyElementProps = SVGProps<SVGSVGElement>;
|
||||
|
||||
export { IconifyIcon }
|
||||
|
||||
/**
|
||||
* Interface for getSVGData() result
|
||||
*/
|
||||
export declare interface IconifyIconBuildResult {
|
||||
attributes: {
|
||||
width?: string;
|
||||
height?: string;
|
||||
viewBox: string;
|
||||
};
|
||||
viewBox: SVGViewBox;
|
||||
body: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Icon customisations
|
||||
*/
|
||||
export declare type IconifyIconCustomisations = IconifyIconCustomisations_2 & {
|
||||
rotate?: string | number;
|
||||
inline?: boolean;
|
||||
};
|
||||
|
||||
/**
|
||||
* Icon customisations
|
||||
*/
|
||||
declare interface IconifyIconCustomisations_2 extends IconifyTransformations, IconifyIconSizeCustomisations {
|
||||
}
|
||||
|
||||
/**
|
||||
* Function to abort loading (usually just removes callback because loading is already in progress)
|
||||
*/
|
||||
export declare type IconifyIconLoaderAbort = () => void;
|
||||
|
||||
/**
|
||||
* Loader callback
|
||||
*
|
||||
* Provides list of icons that have been loaded
|
||||
*/
|
||||
export declare type IconifyIconLoaderCallback = (loaded: IconifyIconName[], missing: IconifyIconName[], pending: IconifyIconName[], unsubscribe: IconifyIconLoaderAbort) => void;
|
||||
|
||||
/**
|
||||
* Icon name
|
||||
*/
|
||||
export declare interface IconifyIconName {
|
||||
readonly provider: string;
|
||||
readonly prefix: string;
|
||||
readonly name: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Callback for when icon has been loaded (only triggered for icons loaded from API)
|
||||
*/
|
||||
export declare type IconifyIconOnLoad = (name: string) => void;
|
||||
|
||||
/**
|
||||
* Icon properties
|
||||
*/
|
||||
export declare interface IconifyIconProps extends IconifyIconCustomisations {
|
||||
icon: IconifyIcon | string;
|
||||
mode?: IconifyRenderMode;
|
||||
color?: string;
|
||||
flip?: string;
|
||||
id?: string;
|
||||
ssr?: boolean;
|
||||
fallback?: ReactNode;
|
||||
onLoad?: IconifyIconOnLoad;
|
||||
}
|
||||
|
||||
/**
|
||||
* Icon size
|
||||
*/
|
||||
export declare type IconifyIconSize = null | string | number;
|
||||
|
||||
/**
|
||||
* Dimensions
|
||||
*/
|
||||
declare interface IconifyIconSizeCustomisations {
|
||||
width?: IconifyIconSize;
|
||||
height?: IconifyIconSize;
|
||||
}
|
||||
|
||||
export { IconifyJSON }
|
||||
|
||||
/**
|
||||
* Function to load icons
|
||||
*/
|
||||
declare type IconifyLoadIcons = (icons: (IconifyIconName | string)[], callback?: IconifyIconLoaderCallback) => IconifyIconLoaderAbort;
|
||||
|
||||
/**
|
||||
* Icon render mode
|
||||
*
|
||||
* 'style' = 'bg' or 'mask', depending on icon content
|
||||
* 'bg' = <span> with style using `background`
|
||||
* 'mask' = <span> with style using `mask`
|
||||
* 'svg' = <svg>
|
||||
*/
|
||||
export declare type IconifyRenderMode = 'style' | 'bg' | 'mask' | 'svg';
|
||||
|
||||
/**
|
||||
* Interface for exported storage functions
|
||||
*/
|
||||
export declare interface IconifyStorageFunctions {
|
||||
/**
|
||||
* Check if icon data is available
|
||||
*/
|
||||
iconLoaded: (name: string) => boolean;
|
||||
/**
|
||||
* Get icon data with all properties
|
||||
*
|
||||
* Returns null if icon is missing (attempted to load, but failed)
|
||||
* Returns undefined if icon was not loaded
|
||||
*/
|
||||
getIcon: (name: string) => Required<IconifyIcon> | null | undefined;
|
||||
/**
|
||||
* List all available icons
|
||||
*/
|
||||
listIcons: (provider?: string, prefix?: string) => string[];
|
||||
/**
|
||||
* Add icon to storage
|
||||
*
|
||||
* Data is null if icon is missing
|
||||
*/
|
||||
addIcon: (name: string, data: IconifyIcon | null) => boolean;
|
||||
/**
|
||||
* Add icon set to storage
|
||||
*/
|
||||
addCollection: (data: IconifyJSON, provider?: string) => boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if icon data is available
|
||||
*/
|
||||
export declare function iconLoaded(name: string): boolean;
|
||||
|
||||
/**
|
||||
* Mix of icon properties and SVGSVGElement properties
|
||||
*/
|
||||
export declare type IconProps = IconifyElementProps & IconifyIconProps;
|
||||
|
||||
/**
|
||||
* Inline icon (has negative verticalAlign that makes it behave like icon font)
|
||||
*
|
||||
* @param props - Component properties
|
||||
*/
|
||||
export declare const InlineIcon: IconComponentType;
|
||||
|
||||
/**
|
||||
* List available icons
|
||||
*/
|
||||
export declare function listIcons(provider?: string, prefix?: string): string[];
|
||||
|
||||
/**
|
||||
* Load one icon using Promise
|
||||
*/
|
||||
export declare const loadIcon: (icon: IconifyIconName | string) => Promise<Required<IconifyIcon>>;
|
||||
|
||||
/**
|
||||
* Load icons
|
||||
*/
|
||||
export declare const loadIcons: IconifyLoadIcons;
|
||||
|
||||
export declare type PartialIconifyAPIConfig = Partial<IconifyAPIConfig> & Pick<IconifyAPIConfig, 'resources'>;
|
||||
|
||||
/**
|
||||
* Callback for "abort" pending item.
|
||||
*/
|
||||
declare type QueryAbortCallback = () => void;
|
||||
|
||||
/**
|
||||
* Callback
|
||||
*
|
||||
* If error is present, something went wrong and data is undefined. If error is undefined, data is set.
|
||||
*/
|
||||
declare type QueryDoneCallback = (data?: QueryModuleResponseData, error?: QueryModuleResponseData) => void;
|
||||
|
||||
declare type QueryModuleResponse = (status: QueryModuleResponseType, data: QueryModuleResponseData) => void;
|
||||
|
||||
/**
|
||||
* Response from query module
|
||||
*/
|
||||
declare type QueryModuleResponseData = unknown;
|
||||
|
||||
/**
|
||||
* Response from query module
|
||||
*/
|
||||
declare type QueryModuleResponseType = 'success' | 'next' | 'abort';
|
||||
|
||||
/**
|
||||
* Configuration object
|
||||
*/
|
||||
declare interface RedundancyConfig {
|
||||
resources: RedundancyResource[];
|
||||
index: number;
|
||||
timeout: number;
|
||||
rotate: number;
|
||||
random: boolean;
|
||||
dataAfterTimeout: boolean;
|
||||
}
|
||||
|
||||
/**
|
||||
* Resource to rotate (usually hostname or partial URL)
|
||||
*/
|
||||
declare type RedundancyResource = string;
|
||||
|
||||
/**
|
||||
* IDs usage:
|
||||
*
|
||||
* id="{id}"
|
||||
* xlink:href="#{id}"
|
||||
* url(#{id})
|
||||
*
|
||||
* From SVG animations:
|
||||
*
|
||||
* begin="0;{id}.end"
|
||||
* begin="{id}.end"
|
||||
* begin="{id}.click"
|
||||
*/
|
||||
/**
|
||||
* Replace IDs in SVG output with unique IDs
|
||||
*/
|
||||
export declare function replaceIDs(body: string, prefix?: string | ((id: string) => string)): string;
|
||||
|
||||
/**
|
||||
* Set custom loader for one icon
|
||||
*/
|
||||
export declare function setCustomIconLoader(loader: IconifyCustomIconLoader, prefix: string, provider?: string): void;
|
||||
|
||||
/**
|
||||
* Set custom loader for multiple icons
|
||||
*/
|
||||
export declare function setCustomIconsLoader(loader: IconifyCustomIconsLoader, prefix: string, provider?: string): void;
|
||||
|
||||
/**
|
||||
* SVG viewBox: x, y, width, height
|
||||
*/
|
||||
declare type SVGViewBox = [x: number, y: number, width: number, height: number];
|
||||
|
||||
export { }
|
||||
Loading…
Add table
Add a link
Reference in a new issue