@odoo/o-spreadsheet
Version:
A spreadsheet component
119 lines (118 loc) • 3.45 kB
TypeScript
import { Component } from "@odoo/owl";
import { SpreadsheetChildEnv } from "../../types/spreadsheet_env";
interface RippleProps {
color: string;
opacity: number;
duration: number;
/** If true, the ripple will play from the element center instead of the position of the click */
ignoreClickPosition?: boolean;
/** Width of the ripple. Defaults to the width of the element the ripple is on (without margins). */
width?: number;
/** Height of the ripple. Defaults to the height of the element the ripple is on (without margins). */
height?: number;
offsetY?: number;
offsetX?: number;
allowOverflow?: boolean;
enabled: boolean;
onAnimationEnd: () => void;
class?: string;
}
interface RippleEffectProps extends Omit<Required<RippleProps>, "ignoreClickPosition" | "enabled" | "class"> {
x: string;
y: string;
style: string;
}
declare class RippleEffect extends Component<RippleEffectProps, SpreadsheetChildEnv> {
static template: string;
static props: {
x: StringConstructor;
y: StringConstructor;
color: StringConstructor;
opacity: NumberConstructor;
duration: NumberConstructor;
width: NumberConstructor;
height: NumberConstructor;
offsetY: NumberConstructor;
offsetX: NumberConstructor;
allowOverflow: BooleanConstructor;
onAnimationEnd: FunctionConstructor;
style: StringConstructor;
};
private rippleRef;
setup(): void;
get rippleStyle(): string;
}
export declare class Ripple extends Component<RippleProps, SpreadsheetChildEnv> {
static template: string;
static props: {
color: {
type: StringConstructor;
optional: boolean;
};
opacity: {
type: NumberConstructor;
optional: boolean;
};
duration: {
type: NumberConstructor;
optional: boolean;
};
ignoreClickPosition: {
type: BooleanConstructor;
optional: boolean;
};
width: {
type: NumberConstructor;
optional: boolean;
};
height: {
type: NumberConstructor;
optional: boolean;
};
offsetY: {
type: NumberConstructor;
optional: boolean;
};
offsetX: {
type: NumberConstructor;
optional: boolean;
};
allowOverflow: {
type: BooleanConstructor;
optional: boolean;
};
enabled: {
type: BooleanConstructor;
optional: boolean;
};
onAnimationEnd: {
type: FunctionConstructor;
optional: boolean;
};
slots: ObjectConstructor;
class: {
type: StringConstructor;
optional: boolean;
};
};
static components: {
RippleEffect: typeof RippleEffect;
};
static defaultProps: {
color: string;
opacity: number;
duration: number;
enabled: boolean;
onAnimationEnd: () => void;
class: string;
};
private childContainer;
private state;
private currentId;
onClick(ev: MouseEvent): void;
private getRippleStyle;
private getRippleChildRectInfo;
private removeRipple;
getRippleEffectProps(id: number): RippleEffectProps;
}
export {};