1 | import { CSSSelector } from '../shared';
|
2 |
|
3 | interface CreativeEffectTransform {
|
4 | translate?: (string | number)[];
|
5 | rotate?: number[];
|
6 | opacity?: number;
|
7 | scale?: number;
|
8 | shadow?: boolean;
|
9 | origin?: string;
|
10 | }
|
11 |
|
12 | export interface CreativeEffectMethods {}
|
13 |
|
14 | export interface CreativeEffectEvents {}
|
15 |
|
16 | export interface CreativeEffectOptions {
|
17 | /**
|
18 | * Previous slide transformations. Accepts object of the following type:
|
19 | *
|
20 | * @example
|
21 | * ```js
|
22 | * {
|
23 | * // Array with translate X, Y and Z values
|
24 | * translate: (string | number)[];
|
25 | * // Array with rotate X, Y and Z values (in deg)
|
26 | * rotate?: number[];
|
27 | * // Slide opacity
|
28 | * opacity?: number;
|
29 | * // Slide scale
|
30 | * scale?: number;
|
31 | * // Enables slide shadow
|
32 | * shadow?: boolean;
|
33 | * // Transform origin, e.g. `left bottom`
|
34 | * origin?: string;
|
35 | * }
|
36 | * ```
|
37 | *
|
38 | */
|
39 | prev?: CreativeEffectTransform;
|
40 | /**
|
41 | * Next slide transformations.
|
42 | *
|
43 | * @example
|
44 | * ```js
|
45 | * {
|
46 | * // Array with translate X, Y and Z values
|
47 | * translate: (string | number)[];
|
48 | * // Array with rotate X, Y and Z values (in deg)
|
49 | * rotate?: number[];
|
50 | * // Slide opacity
|
51 | * opacity?: number;
|
52 | * // Slide scale
|
53 | * scale?: number;
|
54 | * // Enables slide shadow
|
55 | * shadow?: boolean;
|
56 | * // Transform origin, e.g. `left bottom`
|
57 | * origin?: string;
|
58 | * }
|
59 | * ```
|
60 | *
|
61 | */
|
62 | next?: CreativeEffectTransform;
|
63 | /**
|
64 | * CSS selector of the element inside of the slide to transform instead of the slide itself. Useful to use with cssMode
|
65 | *
|
66 | * @default null
|
67 | */
|
68 | transformEl?: CSSSelector;
|
69 | /**
|
70 | * Limit progress/offset to amount of side slides. If `1`, then slides all slides after prev/next will have same state. If `2`, then all slides after 2nd before/after active will have same state, etc.
|
71 | *
|
72 | * @default 1
|
73 | */
|
74 | limitProgress?: number;
|
75 | /**
|
76 | * Splits shadow "opacity" per slide based on `limitProgress` (only if transformation shadows enabled). E.g. setting `limitProgress: 2` and enabling `shadowPerProgress`, will set shadow opacity to `0.5` and `1` on two slides next to active. With this parameter disabled, all slides beside active will have shadow with `1` opacity
|
77 | *
|
78 | * @default false
|
79 | */
|
80 | shadowPerProgress?: boolean;
|
81 | /**
|
82 | * Allows to multiply slides transformations and opacity.
|
83 | *
|
84 | * @default 1
|
85 | */
|
86 | progressMultiplier?: number;
|
87 | /**
|
88 | * Enable this parameter if your custom transforms require 3D transformations (`translateZ`, `rotateX`, `rotateY` )
|
89 | *
|
90 | * @default true
|
91 | */
|
92 | perspective?: boolean;
|
93 | }
|