@snowball-tech/fractal
Version:
Fractal's (Snowball's design system) React component library based on RadixUI and PandaCSS
132 lines (126 loc) • 4.75 kB
TypeScript
import * as react_jsx_runtime from 'react/jsx-runtime';
import { AllHTMLAttributes } from 'react';
import { Themes } from '../../constants.js';
import '@snowball-tech/design-tokens/dist/web/typescript/constants';
declare enum Categories {
Activity = "activity",
Flags = "flags",
Foods = "foods",
Frequent = "frequent",
Nature = "nature",
Objects = "objects",
People = "people",
Places = "places",
Symbols = "symbols"
}
declare const DEFAULT_CATEGORIES: Categories[];
declare enum Locales {
Ar = "ar",
Be = "be",
Cs = "cs",
De = "de",
En = "en",
Es = "es",
Fa = "fa",
Fi = "fi",
Fr = "fr",
Hi = "hi",
It = "it",
Ja = "ja",
Ko = "ko",
Nl = "nl",
Pl = "pl",
Pt = "pt",
Ru = "ru",
Sa = "sa",
Tr = "tr",
Uk = "uk",
Vi = "vi",
Zh = "zh"
}
declare const DEFAULT_LOCALE = Locales.En;
declare enum Positions {
Bottom = "bottom",
Top = "top"
}
declare const DEFAULT_NAV_POSITION = Positions.Top;
declare const DEFAULT_PREVIEW_POSITION = Positions.Bottom;
declare enum SearchPositions {
Static = "static",
Sticky = "sticky"
}
declare const DEFAULT_SEARCH_POSITION = SearchPositions.Sticky;
declare enum SkinTonePositions {
Preview = "preview",
Search = "search"
}
declare const DEFAULT_SKIN_TONE_POSITION = SkinTonePositions.Preview;
declare enum EmojisSets {
Apple = "apple",
Facebook = "facebook",
Google = "google",
Native = "native",
Twitter = "twitter"
}
declare const DEFAULT_EMOJIS_SET = EmojisSets.Native;
declare const SKIN_TONES: readonly [1, 2, 3, 4, 5, 6];
type SkinTone = (typeof SKIN_TONES)[number];
declare const DEFAULT_SKIN_TONE: SkinTone;
declare const VERSIONS: readonly [1, 2, 3, 4, 5, 11, 12, 12.1, 13, 13.1, 14, 15];
type Version = (typeof VERSIONS)[number];
declare const DEFAULT_VERSION: Version;
type EmojisCategory = {
emojis: Array<Emoji$1>;
id: string;
name: string;
};
type Emoji$1 = {
id: string;
name: string;
native: string;
shortcodes: string;
unified: string;
emoticons?: Array<string>;
keywords?: Array<string>;
};
interface EmojiPickerProps extends Omit<AllHTMLAttributes<HTMLDivElement>, 'onSelect'> {
set: `${EmojisSets}`;
skinTone: SkinTone;
autoFocus?: boolean;
categories?: Array<`${Categories}`>;
custom?: Array<EmojisCategory>;
customIcon?: Record<string, {
src: string;
} | {
svg: string;
}>;
exclude?: Array<string>;
frequentsRowNumber?: number;
locale?: `${Locales}`;
navPosition?: `${Positions}` | false;
perLine?: number;
previewPosition?: `${Positions}` | false;
search?: string;
searchPosition?: `${SearchPositions}` | false;
skinTonePosition?: `${SkinTonePositions}` | false;
theme?: Themes;
version?: Version;
onClickOutside?: () => void;
onSelect?: (emoji: Emoji$1) => void;
}
interface EmojiProps extends Omit<AllHTMLAttributes<HTMLDivElement>, 'size'> {
set: `${EmojisSets}`;
id?: string;
native?: string;
shortCode?: string;
skinTone?: SkinTone;
}
declare const Emoji: {
({ id, native, set, shortCode, skinTone, ...props }: EmojiProps): react_jsx_runtime.JSX.Element;
displayName: string;
};
declare const EmojiPicker: {
({ autoFocus, categories, custom, customIcon, exclude, frequentsRowNumber, locale, navPosition, onClickOutside, onSelect, perLine, previewPosition, search, searchPosition, set, skinTone, skinTonePosition, theme: themeOverride, version, ...props }: EmojiPickerProps): react_jsx_runtime.JSX.Element;
displayName: string;
};
export { DEFAULT_CATEGORIES as DEFAULT_EMOJI_PICKER_CATEGORIES, DEFAULT_EMOJIS_SET as DEFAULT_EMOJI_PICKER_EMOJIS_SET, DEFAULT_VERSION as DEFAULT_EMOJI_PICKER_EMOJIS_VERSION, DEFAULT_LOCALE as DEFAULT_EMOJI_PICKER_LOCALE, DEFAULT_NAV_POSITION as DEFAULT_EMOJI_PICKER_NAV_POSITION, DEFAULT_PREVIEW_POSITION as DEFAULT_EMOJI_PICKER_PREVIEW_POSITION, DEFAULT_SEARCH_POSITION as DEFAULT_EMOJI_PICKER_SEARCH_POSITION, DEFAULT_SKIN_TONE as DEFAULT_EMOJI_PICKER_SKIN_TONE, DEFAULT_SKIN_TONE_POSITION as DEFAULT_EMOJI_PICKER_SKIN_TONE_POSITION, DEFAULT_SKIN_TONE as DEFAULT_EMOJI_SKIN_TONE, Emoji, EmojiPicker, Categories as EmojiPickerCategories, EmojisSets as EmojiPickerEmojisSets, VERSIONS as EmojiPickerEmojisVersions, Locales as EmojiPickerLocales, Positions as EmojiPickerNavPositions, Positions as EmojiPickerPreviewPositions, type EmojiPickerProps, SearchPositions as EmojiPickerSearchPositions, SkinTonePositions as EmojiPickerSkinTonePositions, SKIN_TONES as EmojiPickerSkinTones, type EmojiProps, SKIN_TONES as EmojiSkinTones, type Emoji$1 as EmojiType, type EmojisCategory, EmojisSets, SKIN_TONES as SkinTones };