@lekseek/ui
Version:
Vue 3 components library
165 lines (150 loc) • 2.82 kB
text/typescript
export interface Bem {
hyphenate?: boolean;
}
export interface BemItem {
b?: string;
e?: string;
m?: string | string[] | {[key in string]: boolean};
}
export interface Dictionary {
asyncContent: {
errorText: string;
reloadText: string;
};
autocomplete: {
noMatchingItems: string;
};
infiniteScroll: {
loadingText: string;
completeText: string;
errorText: string;
};
phoneInput: {
errorText: string;
};
pagination: {
page: string;
total: string;
};
select: {
placeholder: string;
search: string;
noMatchingItems: string;
};
image: {
downloadFailed: string;
checkNetwork: string;
downloadImage: string;
};
fileUploader: {
selectFromDisk: string;
dropAreaText: string;
dropAreaTextWhenDragging: string;
dropAreaTextWhenDisabled: string;
title: string;
validationError: string;
sizeError: string;
};
weekdays: string[];
months: string[];
timeline: {
noItems: string;
};
table: {
loading: string;
noItems: string;
};
}
export enum Locale {
PL = 'pl',
EN = 'en',
UK = 'uk',
}
export interface CustomBemOptions {
bem?: Bem;
}
export interface BemOptions {
bem: Bem;
}
export interface CustomLocaleOptions {
locale?: string;
locales?: {
[key in string]: Dictionary;
};
}
export interface LocaleOptions {
locale: string;
locales: {
[key in string]: Dictionary;
};
t (): Dictionary;
}
export interface CustomTestOptions {
test?: {
elAttrName: string;
elNamePrefix: string;
};
}
export interface TestOptions {
test: {
elAttrName: string;
elNamePrefix: string;
};
testElName (name: string): {
[key in string]: string
};
}
export interface IconsOptions {
icons: {
type: string;
prefix: string;
values: {
edit: string;
error: string;
spinner: string;
check: string;
previous: string;
next: string;
expand: string;
collapse: string;
file: string;
close: string;
hamburger: string;
};
};
}
export interface CustomIconsOptions {
icons?: {
type: string;
prefix: string;
values: {[key in string]: string};
};
}
export interface Options extends
LocaleOptions,
BemOptions,
IconsOptions,
TestOptions,
ChartOptions {
}
export interface CustomOptions extends
CustomLocaleOptions,
CustomBemOptions,
CustomIconsOptions,
CustomTestOptions {
}
export const tooltipPositions = {
left: 'left',
right: 'right',
top: 'top',
bottom: 'bottom',
} as const;
type TooltipPositionName = keyof typeof tooltipPositions;
export type TooltipPosition = typeof tooltipPositions[TooltipPositionName];
export interface ChartOptions {
chartColors: {
red: string;
green: string;
gray: string;
}
}