UNPKG

@lspriv/wx-calendar

Version:

微信小程序日历

94 lines (93 loc) 2.69 kB
import { CalendarHandler, CalendarInstance } from '../interface/component'; import { Shared } from './tools'; import { View } from './constants'; import { Callable } from '../utils/shared'; declare global { namespace WechatMiniprogram { interface Worklet { shared<T>(initialValue: T): Shared<T>; timing<T>(toValue: T, options: TimingOption, callback?: (...args: any[]) => any): T; spring<T>(toValue: T, options: SpringOption, callback?: (...args: any[]) => any): T; delay<T>(delayMS: number, delayedAnimation: T): T; sequence<T>(...args: Array<T>): T; } interface WorkletEasing { in(easing?: Callable): any; out(easing?: Callable): any; inOut(easing?: Callable): any; sin(...args: any[]): any; bezier(x1: number, y1: number, x2: number, y2: number): any; } } } /** * skyline渲染下的面板拖拽控制器 */ export declare class Dragger extends CalendarHandler { /** 保存动画id */ private _style_ids_; /** 保存当前面板的日程样式选择器 */ private _schedule_selector_?; constructor(instance: CalendarInstance); /** * 初始化动画变量 */ private initializeShared; /** * 更新当前面板索引和偏移量 */ update(): void; /** * 绑定动画 */ bindAnimations(): void; /** * 绑定日历容器动画,主要是整体高度变化 */ private bindContainerAnimation; /** * 绑定面板动画,主要是垂直方向偏移量变化 */ private bindPanelAnimation; /** * 绑定地步控制条动画,主要是角度变化 */ private bindBarAnimation; /** * 绑定视图控制条动画,主要是水平偏移量变化 */ private bindViewBarAnimation; /** * 绑定日程动画,主要是透明度变化 */ bindScheduleAnimation(): Promise<void>; /** * 清除日程动画绑定 */ private clearScheduleAnimation; /** * 计算面板偏移量 * @param idx 面板索引 * @param checked 当前选中日期 */ private calcPanelOffset; /** * 设置面板偏移量 */ private setPanelTrans; /** * 处理拖拽结束 * @param velocity 拖拽结束时纵向速度 */ dragout(velocity: number): Promise<View>; /** * 跳转到视图 * @param view 要跳转的视图 * @param animate 是否动画,默认否 */ toView(view: View, animate?: boolean): Promise<void>; /** * 清除拖拽控制器实例 */ clear(): void; }