gtht-miniapp-sdk
Version:
gtht-miniapp-sdk 是一套基于 Uniapp + Vue3 框架开发的兼容多端的 UI 组件库
534 lines (533 loc) • 13.6 kB
TypeScript
import { type AvatarProps } from '../avatar';
import { type AlertProps } from '../alert';
import { type ButtonProps } from '../button';
import { type CalendarInputProps } from '../calendar-input';
import { type CalendarProps } from '../calendar';
import { type CascaderInputProps } from '../cascader-input';
import { type CheckboxGroupProps } from '../checkbox';
import { type CheckboxInputProps } from '../checkbox-input';
import { type DatetimePickerInputProps } from '../datetime-picker-input';
import { type DatetimeRangePickerInputProps } from '../datetime-range-picker-input';
import { type DialogProps } from '../dialog';
import { type DropdownProps } from '../dropdown';
import { type FloatingBubbleProps } from '../floating-bubble';
import { type FormProps } from '../form';
import { type GridProps } from '../grid';
import { type IconProps } from '../icon';
import { type InputProps } from '../input';
import { type KeyboardProps } from '../keyboard';
import { type ListItemProps } from '../list';
import { type LoadingProps } from '../loading';
import { type MarqueeProps } from '../marquee';
import { type NoticeBarProps } from '../notice-bar';
import { type NotifyProps } from '../notify';
import { type PaginationProps } from '../pagination';
import { type PasswordInputProps } from '../password-input';
import { type PickerInputProps } from '../picker-input';
import { type PopoutProps } from '../popout';
import { type PopoverProps } from '../popover';
import { type PopupProps } from '../popup';
import { type QrcodeProps } from '../qrcode';
import { type RadioGroupProps } from '../radio';
import { type RadioInputProps } from '../radio-input';
import { type RadioPopoutProps } from '../radio-popout';
import { type ResultProps } from '../result';
import { type SearchProps } from '../search';
import { type SpaceProps } from '../space';
import { type StepperProps } from '../stepper';
import { type StepsProps } from '../steps';
import { type SwiperDotProps } from '../swiper-dot';
import { type TabsProps } from '../tabs';
import { type TagProps } from '../tag';
import { type ToastProps } from '../toast';
import { type TreeProps } from '../tree';
import { type UploadPreviewProps, type UploadProps } from '../upload';
import { type DividerProps } from '../divider';
type DeepPartial<T> = {
[P in keyof T]?: T[P] extends Record<any, any> ? DeepPartial<T[P]> : T[P];
};
export declare const defaultConfig: {
initialZIndex: number;
/**
* 设置点击清除按钮后的值
*
* - 类型:() => any
* - 默认值:() = undefined
*
* 支持以下组件:
*
* - CalendarInput
* - DatetimePickerInput
* - DatetimeRangePickerInput
* - CascaderInput
* - CheckboxInput
* - PickerInput
* - RadioInput
*/
valueOnClear: (() => any) | undefined;
actionSheet: {
overlayClosable: boolean;
duration: number;
};
alert: {
type: AlertProps["type"];
};
avatar: {
shape: AvatarProps["shape"];
};
backTop: {
visibleHeight: number;
};
badge: {
value: number;
max: number;
};
button: {
type: ButtonProps["type"];
theme: ButtonProps["theme"];
size: ButtonProps["size"];
hoverStopPropagation: boolean;
lang: string;
showMessageCard: boolean;
block: boolean;
loadingType: LoadingProps["type"];
};
calendar: {
type: CalendarProps["type"];
maxDays: number;
weekStartsOn: number;
};
calendarInput: {
outletFormat: string;
valueOnClear: CalendarInputProps["valueOnClear"];
};
calendarPopout: {
showConfirm: boolean;
validateEvent: boolean;
};
cascaderPopout: {
showConfirm: boolean;
validateEvent: boolean;
};
cascaderInput: {
valueOnClear: CascaderInputProps["valueOnClear"];
};
checkbox: {
validateEvent: boolean;
};
checkboxGroup: {
direction: CheckboxGroupProps["direction"];
validateEvent: boolean;
};
checkboxInput: {
valueOnClear: CheckboxInputProps["valueOnClear"];
};
checkboxPopout: {
validateEvent: boolean;
};
countDown: {
time: number;
autoStart: boolean;
format: string;
};
countTo: {
value: number;
precision: number;
separatorDigit: number;
duration: number;
};
cropImage: {
duration: number;
cropScale: string;
type: "png";
quality: number;
};
cropImageAgent: {
id: string;
};
datetimePicker: {
type: string;
calendar: "solar";
};
datetimePickerInput: {
valueOnClear: DatetimePickerInputProps["valueOnClear"];
};
datetimePickerPopout: {
validateEvent: boolean;
};
datetimeRangePicker: {
type: string;
};
datetimeRangePickerInput: {
valueOnClear: DatetimeRangePickerInputProps["valueOnClear"];
};
datetimeRangePickerPopout: {
validateEvent: boolean;
};
dialog: {
headed: boolean;
buttonType: DialogProps["buttonType"];
showCancel: boolean;
showConfirm: boolean;
overlayClosable: boolean;
duration: number;
};
dialogAgent: {
id: string;
};
divider: {
type: DividerProps["type"];
hairline: boolean;
position: DividerProps["position"];
};
dropdown: {
direction: DropdownProps["direction"];
disabled: boolean;
awayClosable: boolean;
overlayClosable: boolean;
duration: number;
};
empty: {
icon: string;
};
fab: {
overlayClosable: boolean;
hideName: boolean;
duration: number;
};
floatingBubble: {
axis: FloatingBubbleProps["axis"];
gapX: number;
gapY: number;
};
floatingPanel: {
duration: number;
contentDraggable: boolean;
safeAreaInsetBottom: boolean;
};
form: {
validateTrigger: FormProps["validateTrigger"];
validateOnRuleChange: boolean;
direction: FormProps["direction"];
labelAlign: FormProps["labelAlign"];
labelValign: FormProps["labelValign"];
starPosition: FormProps["starPosition"];
showError: boolean;
scrollDuration: number;
};
formItem: {
showError: boolean;
};
grid: {
columns: number;
direction: GridProps["direction"];
};
icon: {
name: string;
family: string;
separate: IconProps["separate"];
};
indexes: {
hintDuration: number;
};
input: {
maxlength: number;
adjustPosition: boolean;
ignoreCompositionEvent: boolean;
showConfirmBar: boolean;
disableDefaultPadding: boolean;
modelValue: string;
validateEvent: boolean;
cursorSpacing: number;
confirmType: InputProps["confirmType"];
cursor: number;
selectionStart: number;
selectionEnd: number;
inputmode: InputProps["inputmode"];
};
keyboard: {
type: KeyboardProps["type"];
};
listItem: {
arrowDirection: ListItemProps["arrowDirection"];
};
loading: {
type: LoadingProps["type"];
};
marquee: {
direction: MarqueeProps["direction"];
delay: number;
speed: number;
};
noticeBar: {
delay: number;
speed: number;
scrollable: NoticeBarProps["scrollable"];
visible: boolean;
};
notify: {
type: NotifyProps["type"];
position: NotifyProps["position"];
duration: number;
timeout: number;
};
notifyAgent: {
id: string;
};
overlay: {
duration: number;
};
pagination: {
total: number;
pageSize: number;
current: number;
pageButtonCount: number;
type: PaginationProps["type"];
multiCount: number;
};
passwordInput: {
length: number;
type: PasswordInputProps["type"];
validateEvent: boolean;
};
picker: {
immediateChange: boolean;
};
pickerInput: {
valueOnClear: PickerInputProps["valueOnClear"];
};
pickerPopout: {
validateEvent: boolean;
};
popout: {
type: PopoutProps["type"];
showConfirm: boolean;
showClose: boolean;
showFooter: boolean;
overlayClosable: boolean;
duration: number;
};
popoutInput: {
arrow: string;
arrowFamily: string;
};
popover: {
position: PopoverProps["position"];
direction: PopoverProps["direction"];
theme: PopoverProps["theme"];
refGap: number;
viewportGap: number;
transparent: boolean;
duration: number;
};
popup: {
duration: number;
effect: PopupProps["effect"];
overlay: boolean;
overlayClosable: boolean;
};
progressBar: {
percent: number;
showText: boolean;
};
progressCircle: {
percent: number;
thickness: number;
};
pullDownRefresh: {
threshold: number;
headerHeight: number;
transitionDuration: number;
doneDuration: number;
};
qrcode: {
ecl: QrcodeProps["ecl"];
size: string;
canvasSize: number;
type: QrcodeProps["type"];
text: string;
color: string;
bgColor: string;
quietZoneModules: number;
};
radioGroup: {
direction: RadioGroupProps["direction"];
validateEvent: boolean;
};
radioInput: {
valueOnClear: RadioInputProps["valueOnClear"];
};
radioPopout: {
validateEvent: boolean;
type: RadioPopoutProps["type"];
};
rate: {
count: number;
icon: string;
voidIcon: string;
validateEvent: boolean;
};
readMore: {
maxHeight: number;
};
resizeSensor: {
threshold: number;
};
result: {
status: ResultProps["status"];
};
search: {
shape: SearchProps["shape"];
focus: boolean;
};
shareSheet: {
overlayClosable: boolean;
duration: number;
};
signature: {
lineWidth: number;
fullScreen: boolean;
color: string;
duration: number;
type: "png";
target: "dataURL";
quality: number;
};
skeleton: {
rows: number;
loading: boolean;
};
slider: {
min: number;
max: number;
step: number;
validateEvent: boolean;
};
space: {
direction: SpaceProps["direction"];
size: SpaceProps["size"];
};
statusBar: {
height: string;
};
stepper: {
min: number;
max: number;
step: number;
inputType: StepperProps["inputType"];
press: boolean;
pressTime: number;
interval: number;
validateEvent: boolean;
size: StepperProps["size"];
};
steps: {
current: number;
center: boolean;
itemList: () => never[];
direction: StepsProps["direction"];
finishIcon: string;
processIcon: string;
waitIcon: string;
errorIcon: string;
};
swiperDot: {
type: SwiperDotProps["type"];
current: number;
total: number;
field: string;
};
switch: {
checkedValue: boolean;
uncheckedValue: boolean;
validateEvent: boolean;
};
tabbar: {
bordered: boolean;
};
table: {
bordered: boolean;
underline: boolean;
};
tabs: {
type: TabsProps["type"];
};
tag: {
theme: TagProps["theme"];
size: TagProps["size"];
};
toast: {
type: ToastProps["type"];
position: ToastProps["position"];
overlay: boolean;
timeout: number;
duration: number;
};
toastAgent: {
id: string;
};
tree: {
defaultExpandAll: boolean;
filterMode: TreeProps["filterMode"];
accordion: boolean;
};
upload: {
accept: UploadProps["accept"];
sourceType: () => UploadProps["sourceType"];
sizeType: () => UploadProps["sizeType"];
maxDuration: number;
maxCount: number;
maxSize: number;
removable: boolean;
validateEvent: boolean;
};
uploadPreview: {
status: UploadPreviewProps["status"];
};
waterfall: {
columns: number;
columnGap: number;
rowGap: number;
};
wxApp: {
baseUrl: string;
};
};
export type ConfigOptions = typeof defaultConfig;
export declare function setConfig(...optionsArgs: DeepPartial<ConfigOptions>[]): void;
export declare function getDurationConfig(duration: number): {
actionSheet: {
duration: number;
};
dialog: {
duration: number;
};
dropdown: {
duration: number;
};
fab: {
duration: number;
};
notify: {
duration: number;
};
overlay: {
duration: number;
};
popout: {
duration: number;
};
popover: {
duration: number;
};
popup: {
duration: number;
};
shareSheet: {
duration: number;
};
toast: {
duration: number;
};
};
export {};