move.gl 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +38 -0
- package/css/move.gl.css +2 -0
- package/css/move.gl.min.css +2 -0
- package/package.json +55 -0
- package/scss/classes/_animations.scss +576 -0
- package/scss/classes/_index.scss +0 -0
- package/scss/classes/_transforms.scss +124 -0
- package/scss/classes/keyboard.scss +18 -0
- package/scss/classes/screensaver.scss +15 -0
- package/scss/dev/_banner.scss +36 -0
- package/scss/dev/_debug.scss +18 -0
- package/scss/dev/_deprecation.scss +10 -0
- package/scss/dev/_index.scss +8 -0
- package/scss/dev/_modules.scss +24 -0
- package/scss/effects/_filter.scss +176 -0
- package/scss/effects/_index.scss +23 -0
- package/scss/effects/_opacity.scss +62 -0
- package/scss/effects/_shadow.scss +175 -0
- package/scss/functions/_index.scss +0 -0
- package/scss/functions/scenes/_bubble.scss +19 -0
- package/scss/functions/scenes/_index.scss +20 -0
- package/scss/index.scss +0 -0
- package/scss/keyframes/_beat.scss +26 -0
- package/scss/keyframes/_index.scss +0 -0
- package/scss/maps/_index.scss +0 -0
- package/scss/maps/_mouse.scss +96 -0
- package/scss/mixins/_accessibility.scss +70 -0
- package/scss/mixins/_boot.scss +51 -0
- package/scss/mixins/_hover.scss +51 -0
- package/scss/mixins/_index.scss +0 -0
- package/scss/mixins/_selection.scss +321 -0
- package/scss/mixins/_shape.scss +44 -0
- package/scss/mixins/_touch.scss +95 -0
- package/scss/mixins/animations/--hover.scss +107 -0
- package/scss/mixins/animations/_base.scss +337 -0
- package/scss/mixins/animations/_beat.scss +119 -0
- package/scss/mixins/animations/_blink.scss +151 -0
- package/scss/mixins/animations/_bounce.scss +192 -0
- package/scss/mixins/animations/_elastic.scss +65 -0
- package/scss/mixins/animations/_fade.scss +154 -0
- package/scss/mixins/animations/_flash.scss +177 -0
- package/scss/mixins/animations/_flip.scss +72 -0
- package/scss/mixins/animations/_float.scss +126 -0
- package/scss/mixins/animations/_glow.scss +179 -0
- package/scss/mixins/animations/_heartbeat.scss +175 -0
- package/scss/mixins/animations/_hinge.scss +119 -0
- package/scss/mixins/animations/_index.scss +37 -0
- package/scss/mixins/animations/_jello.scss +129 -0
- package/scss/mixins/animations/_jiggle.scss +163 -0
- package/scss/mixins/animations/_lightspeed.scss +130 -0
- package/scss/mixins/animations/_nod.scss +161 -0
- package/scss/mixins/animations/_pop.scss +150 -0
- package/scss/mixins/animations/_pulse.scss +213 -0
- package/scss/mixins/animations/_ripple.scss +169 -0
- package/scss/mixins/animations/_roll.scss +261 -0
- package/scss/mixins/animations/_rotate.scss +428 -0
- package/scss/mixins/animations/_rubber.scss +116 -0
- package/scss/mixins/animations/_scale.scss +113 -0
- package/scss/mixins/animations/_shake.scss +182 -0
- package/scss/mixins/animations/_slide.scss +294 -0
- package/scss/mixins/animations/_spin.scss +219 -0
- package/scss/mixins/animations/_sway.scss +167 -0
- package/scss/mixins/animations/_swing.scss +247 -0
- package/scss/mixins/animations/_tada.scss +233 -0
- package/scss/mixins/animations/_twist.scss +177 -0
- package/scss/mixins/animations/_wave.scss +166 -0
- package/scss/mixins/animations/_wobble.scss +254 -0
- package/scss/mixins/animations/_zoom.scss +166 -0
- package/scss/mixins/effects/_filter.scss +148 -0
- package/scss/mixins/effects/_index.scss +0 -0
- package/scss/mixins/effects/_shadow.scss +21 -0
- package/scss/mixins/loaders/_index.scss +0 -0
- package/scss/mixins/loaders/_progress.scss +174 -0
- package/scss/mixins/loaders/_spinner.scss +101 -0
- package/scss/mixins/loaders/circle_01.scss +22 -0
- package/scss/mixins/loaders/circle_02.scss +19 -0
- package/scss/mixins/loaders/circle_03.scss +29 -0
- package/scss/mixins/loaders/circle_inner_01.scss +33 -0
- package/scss/mixins/loaders/circle_inner_02.scss +33 -0
- package/scss/mixins/loaders/circle_inner_03.scss +34 -0
- package/scss/mixins/mouse/_cursor.scss +182 -0
- package/scss/mixins/mouse/_index.scss +0 -0
- package/scss/mixins/mouse/_pointer.scss +258 -0
- package/scss/mixins/scroll/_index.scss +0 -0
- package/scss/mixins/scroll/_scroll.scss +104 -0
- package/scss/mixins/scroll/_scrollbar.scss +249 -0
- package/scss/mixins/transforms/_flip.scss +76 -0
- package/scss/mixins/transforms/_index.scss +23 -0
- package/scss/mixins/transforms/_matrix.scss +1 -0
- package/scss/mixins/transforms/_perspective.scss +11 -0
- package/scss/mixins/transforms/_rotate.scss +101 -0
- package/scss/mixins/transforms/_scale.scss +11 -0
- package/scss/mixins/transforms/_skew.scss +13 -0
- package/scss/mixins/transforms/_translate.scss +13 -0
- package/scss/mixins/transitions/_index.scss +0 -0
- package/scss/mixins/transitions/_transition.scss +13 -0
- package/scss/variables/_animation.scss +91 -0
- package/scss/variables/_index.scss +0 -0
- package/ts/ARContent.ts +27 -0
- package/ts/ARInteraction.ts +34 -0
- package/ts/AdaptiveUI.ts +25 -0
- package/ts/ContentStreaming.ts +20 -0
- package/ts/Draggable.ts +71 -0
- package/ts/DynamicEnvironment.ts +60 -0
- package/ts/Gesture.ts +168 -0
- package/ts/ImmersiveAudio.ts +40 -0
- package/ts/InteractiveCanvas.ts +177 -0
- package/ts/InteractiveVideo.ts +29 -0
- package/ts/Keyboard.ts +162 -0
- package/ts/RealTimeCollaboration.ts +25 -0
- package/ts/Screensaver.ts +140 -0
- package/ts/SpatialNavigation.ts +38 -0
- package/ts/UserProfile.ts +27 -0
- package/ts/VRExperience.ts +58 -0
- package/ts/VideoOverlay.ts +116 -0
- package/ts/index.ts +0 -0
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// Poster
|
|
3
|
+
// ============================================================================
|
|
4
|
+
|
|
5
|
+
////
|
|
6
|
+
///
|
|
7
|
+
/// Sway Animations Mixin Module
|
|
8
|
+
/// ===========================================================================
|
|
9
|
+
///
|
|
10
|
+
/// This module ...
|
|
11
|
+
///
|
|
12
|
+
///
|
|
13
|
+
/// @group Animations
|
|
14
|
+
/// @author Scape Agency
|
|
15
|
+
/// @link https://move.gl
|
|
16
|
+
/// @since 0.1.0 initial release
|
|
17
|
+
/// @todo None
|
|
18
|
+
/// @access public
|
|
19
|
+
///
|
|
20
|
+
////
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
// ============================================================================
|
|
24
|
+
// Use
|
|
25
|
+
// ============================================================================
|
|
26
|
+
|
|
27
|
+
@use "../dev" as *;
|
|
28
|
+
@use "../variables" as *;
|
|
29
|
+
@use "../keyframes" as *;
|
|
30
|
+
@use "base" as *;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
// ============================================================================
|
|
34
|
+
// Mixins
|
|
35
|
+
// ============================================================================
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
///
|
|
41
|
+
/// Sway Animation
|
|
42
|
+
/// Creates a swaying motion animation.
|
|
43
|
+
/// @name animate_sway
|
|
44
|
+
/// @param {Angle} $angle [5deg] - The maximum angle to sway.
|
|
45
|
+
/// @param {Duration} $duration [$animate_base_duration/// 2] - The duration of the sway animation.
|
|
46
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the sway animation.
|
|
47
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
48
|
+
///
|
|
49
|
+
@mixin animate_sway(
|
|
50
|
+
$angle: 5deg,
|
|
51
|
+
$duration: $animate_base_duration * 2,
|
|
52
|
+
$timing_function: ease-in-out,
|
|
53
|
+
$iteration_count: $animate_base_iteration_count
|
|
54
|
+
) {
|
|
55
|
+
@include animate_base(
|
|
56
|
+
animate_sway,
|
|
57
|
+
$duration,
|
|
58
|
+
$timing_function,
|
|
59
|
+
$iteration_count,
|
|
60
|
+
);
|
|
61
|
+
@keyframes animate_sway {
|
|
62
|
+
0%, 100% { transform: rotate(0deg); }
|
|
63
|
+
50% { transform: rotate($angle); }
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
// Gentle Sway Animation
|
|
70
|
+
// ----------------------------------------------------------------------------
|
|
71
|
+
|
|
72
|
+
///
|
|
73
|
+
/// Gentle Sway Animation
|
|
74
|
+
/// Creates a slower, more subtle swaying motion.
|
|
75
|
+
/// @name animate_sway_slow
|
|
76
|
+
/// @param {Angle} $angle [3deg] - The maximum angle to sway.
|
|
77
|
+
/// @param {Duration} $duration [$animate_base_duration_slow/// 2] - The duration of the sway animation.
|
|
78
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the sway animation.
|
|
79
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
80
|
+
///
|
|
81
|
+
@mixin animate_sway_slow(
|
|
82
|
+
$angle: 3deg,
|
|
83
|
+
$duration: $animate_base_duration_slow * 2,
|
|
84
|
+
$timing_function: ease-in-out,
|
|
85
|
+
$iteration_count: $animate_base_iteration_count
|
|
86
|
+
) {
|
|
87
|
+
@include animate_base(
|
|
88
|
+
animate_sway_slow,
|
|
89
|
+
$duration,
|
|
90
|
+
$timing_function,
|
|
91
|
+
$iteration_count,
|
|
92
|
+
);
|
|
93
|
+
@keyframes animate_sway_slow {
|
|
94
|
+
0%, 100% { transform: rotate(0deg); }
|
|
95
|
+
50% { transform: rotate($angle); }
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
// Rapid Sway Animation
|
|
102
|
+
// ----------------------------------------------------------------------------
|
|
103
|
+
|
|
104
|
+
///
|
|
105
|
+
/// Rapid Sway Animation
|
|
106
|
+
/// Creates a faster and more exaggerated swaying motion.
|
|
107
|
+
/// @name animate_sway_fast
|
|
108
|
+
/// @param {Angle} $angle [10deg] - The maximum angle to sway.
|
|
109
|
+
/// @param {Duration} $duration [$animate_base_duration_fast/// 2] - The duration of the sway animation.
|
|
110
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the sway animation.
|
|
111
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
112
|
+
///
|
|
113
|
+
@mixin animate_sway_fast(
|
|
114
|
+
$angle: 10deg,
|
|
115
|
+
$duration: $animate_base_duration_fast * 2,
|
|
116
|
+
$timing_function: ease-in-out,
|
|
117
|
+
$iteration_count: $animate_base_iteration_count
|
|
118
|
+
) {
|
|
119
|
+
@include animate_base(
|
|
120
|
+
animate_sway_fast,
|
|
121
|
+
$duration,
|
|
122
|
+
$timing_function,
|
|
123
|
+
$iteration_count,
|
|
124
|
+
);
|
|
125
|
+
@keyframes animate_sway_fast {
|
|
126
|
+
0%, 100% { transform: rotate(0deg); }
|
|
127
|
+
50% { transform: rotate($angle); }
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
// Sway with Fade Animation
|
|
134
|
+
// ----------------------------------------------------------------------------
|
|
135
|
+
|
|
136
|
+
///
|
|
137
|
+
/// Sway with Fade Animation
|
|
138
|
+
/// Creates a swaying motion with a fading effect.
|
|
139
|
+
/// @name animate_sway_fade
|
|
140
|
+
/// @param {Angle} $angle [5deg] - The maximum angle to sway.
|
|
141
|
+
/// @param {Duration} $duration [$animate_base_duration/// 2] - The duration of the sway animation.
|
|
142
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the sway animation.
|
|
143
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
144
|
+
///
|
|
145
|
+
@mixin animate_sway_fade(
|
|
146
|
+
$angle: 5deg,
|
|
147
|
+
$duration: $animate_base_duration * 2,
|
|
148
|
+
$timing_function: ease-in-out,
|
|
149
|
+
$iteration_count: $animate_base_iteration_count
|
|
150
|
+
) {
|
|
151
|
+
@include animate_base(
|
|
152
|
+
animate_sway_fade,
|
|
153
|
+
$duration,
|
|
154
|
+
$timing_function,
|
|
155
|
+
$iteration_count,
|
|
156
|
+
);
|
|
157
|
+
@keyframes animate_sway_fade {
|
|
158
|
+
0%, 100% {
|
|
159
|
+
transform: rotate(0deg);
|
|
160
|
+
opacity: 1;
|
|
161
|
+
}
|
|
162
|
+
50% {
|
|
163
|
+
transform: rotate($angle);
|
|
164
|
+
opacity: 0.5;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// Poster
|
|
3
|
+
// ============================================================================
|
|
4
|
+
|
|
5
|
+
////
|
|
6
|
+
///
|
|
7
|
+
/// Swing Animations Mixin Module
|
|
8
|
+
/// ===========================================================================
|
|
9
|
+
///
|
|
10
|
+
/// This module ...
|
|
11
|
+
///
|
|
12
|
+
///
|
|
13
|
+
/// @group Animations
|
|
14
|
+
/// @author Scape Agency
|
|
15
|
+
/// @link https://move.gl
|
|
16
|
+
/// @since 0.1.0 initial release
|
|
17
|
+
/// @todo None
|
|
18
|
+
/// @access public
|
|
19
|
+
///
|
|
20
|
+
////
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
// ============================================================================
|
|
24
|
+
// Use
|
|
25
|
+
// ============================================================================
|
|
26
|
+
|
|
27
|
+
@use "../dev" as *;
|
|
28
|
+
@use "../variables" as *;
|
|
29
|
+
@use "../keyframes" as *;
|
|
30
|
+
@use "base" as *;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
// ============================================================================
|
|
34
|
+
// Mixins
|
|
35
|
+
// ============================================================================
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
// Swing Animation
|
|
41
|
+
// ----------------------------------------------------------------------------
|
|
42
|
+
|
|
43
|
+
///
|
|
44
|
+
/// Swing Animation
|
|
45
|
+
/// Creates a swinging motion animation.
|
|
46
|
+
/// @name animate_swing
|
|
47
|
+
/// @param {Angle} $angle [15deg] - The maximum angle to swing.
|
|
48
|
+
/// @param {Duration} $duration [$animate_base_duration] - The duration of the swing animation.
|
|
49
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the swing animation.
|
|
50
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
51
|
+
///
|
|
52
|
+
@mixin animate_swing(
|
|
53
|
+
$angle: 15deg,
|
|
54
|
+
$duration: $animate_base_duration,
|
|
55
|
+
$timing_function: ease-in-out,
|
|
56
|
+
$iteration_count: $animate_base_iteration_count
|
|
57
|
+
) {
|
|
58
|
+
@include animate_base(
|
|
59
|
+
animate_swing,
|
|
60
|
+
$duration,
|
|
61
|
+
$timing_function,
|
|
62
|
+
$iteration_count,
|
|
63
|
+
);
|
|
64
|
+
@keyframes animate_swing {
|
|
65
|
+
0%, 100% { transform: rotate(0deg); }
|
|
66
|
+
50% { transform: rotate($angle); }
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.animate_swing {
|
|
71
|
+
@include animate_swing(15deg);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
// Gentle Swing Animation
|
|
76
|
+
// ----------------------------------------------------------------------------
|
|
77
|
+
///
|
|
78
|
+
/// Gentle Swing Animation
|
|
79
|
+
/// Creates a slower, more subtle swinging motion.
|
|
80
|
+
/// @name animate_swing_slow
|
|
81
|
+
/// @param {Angle} $angle [10deg] - The maximum angle to swing.
|
|
82
|
+
/// @param {Duration} $duration [$animate_base_duration_slow] - The duration of the swing animation.
|
|
83
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the swing animation.
|
|
84
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
85
|
+
///
|
|
86
|
+
@mixin animate_swing_slow(
|
|
87
|
+
$angle: 10deg,
|
|
88
|
+
$duration: $animate_base_duration_slow,
|
|
89
|
+
$timing_function: ease-in-out,
|
|
90
|
+
$iteration_count: $animate_base_iteration_count
|
|
91
|
+
) {
|
|
92
|
+
@include animate_base(
|
|
93
|
+
animate_swing_slow,
|
|
94
|
+
$duration,
|
|
95
|
+
$timing_function,
|
|
96
|
+
$iteration_count,
|
|
97
|
+
);
|
|
98
|
+
@keyframes animate_swing_slow {
|
|
99
|
+
0%, 100% { transform: rotate(0deg); }
|
|
100
|
+
50% { transform: rotate($angle); }
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.animate_swing_slow {
|
|
105
|
+
@include animate_swing_slow();
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
// Rapid Swing Animation
|
|
110
|
+
// ----------------------------------------------------------------------------
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
///
|
|
114
|
+
/// Rapid Swing Animation
|
|
115
|
+
/// Creates a faster and more exaggerated swinging motion.
|
|
116
|
+
/// @name animate_swing_fast
|
|
117
|
+
/// @param {Angle} $angle [20deg] - The maximum angle to swing.
|
|
118
|
+
/// @param {Duration} $duration [$animate_base_duration_fast] - The duration of the swing animation.
|
|
119
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the swing animation.
|
|
120
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
121
|
+
///
|
|
122
|
+
@mixin animate_swing_fast(
|
|
123
|
+
$angle: 20deg,
|
|
124
|
+
$duration: $animate_base_duration_fast,
|
|
125
|
+
$timing_function: ease-in-out,
|
|
126
|
+
$iteration_count: $animate_base_iteration_count
|
|
127
|
+
) {
|
|
128
|
+
@include animate_base(
|
|
129
|
+
animate_swing_fast,
|
|
130
|
+
$duration,
|
|
131
|
+
$timing_function,
|
|
132
|
+
$iteration_count,
|
|
133
|
+
);
|
|
134
|
+
@keyframes animate_swing_fast {
|
|
135
|
+
0%, 100% { transform: rotate(0deg); }
|
|
136
|
+
50% { transform: rotate($angle); }
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
.animate_swing_fast {
|
|
141
|
+
@include animate_swing_fast();
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
// Swing with Fade Animation
|
|
146
|
+
// ----------------------------------------------------------------------------
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
///
|
|
150
|
+
/// Swing with Fade Animation
|
|
151
|
+
/// Creates a swinging motion with a fading effect.
|
|
152
|
+
/// @name animate_swing_fade
|
|
153
|
+
/// @param {Angle} $angle [15deg] - The maximum angle to swing.
|
|
154
|
+
/// @param {Duration} $duration [$animate_base_duration] - The duration of the swing animation.
|
|
155
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the swing animation.
|
|
156
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
157
|
+
///
|
|
158
|
+
@mixin animate_swing_fade(
|
|
159
|
+
$angle: 15deg,
|
|
160
|
+
$duration: $animate_base_duration,
|
|
161
|
+
$timing_function: ease-in-out,
|
|
162
|
+
$iteration_count: $animate_base_iteration_count
|
|
163
|
+
) {
|
|
164
|
+
@include animate_base(
|
|
165
|
+
animate_swing_fade,
|
|
166
|
+
$duration,
|
|
167
|
+
$timing_function,
|
|
168
|
+
$iteration_count,
|
|
169
|
+
);
|
|
170
|
+
@keyframes animate_swing_fade {
|
|
171
|
+
0%, 100% {
|
|
172
|
+
transform: rotate(0deg);
|
|
173
|
+
opacity: 1;
|
|
174
|
+
}
|
|
175
|
+
50% {
|
|
176
|
+
transform: rotate($angle);
|
|
177
|
+
opacity: 0.5;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
.animate_swing_fade {
|
|
183
|
+
@include animate_swing_fade();
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
// @-webkit-keyframes swing {
|
|
189
|
+
// 20% {
|
|
190
|
+
// -webkit-transform: rotate3d(0, 0, 1, 15deg);
|
|
191
|
+
// transform: rotate3d(0, 0, 1, 15deg);
|
|
192
|
+
// }
|
|
193
|
+
|
|
194
|
+
// 40% {
|
|
195
|
+
// -webkit-transform: rotate3d(0, 0, 1, -10deg);
|
|
196
|
+
// transform: rotate3d(0, 0, 1, -10deg);
|
|
197
|
+
// }
|
|
198
|
+
|
|
199
|
+
// 60% {
|
|
200
|
+
// -webkit-transform: rotate3d(0, 0, 1, 5deg);
|
|
201
|
+
// transform: rotate3d(0, 0, 1, 5deg);
|
|
202
|
+
// }
|
|
203
|
+
|
|
204
|
+
// 80% {
|
|
205
|
+
// -webkit-transform: rotate3d(0, 0, 1, -5deg);
|
|
206
|
+
// transform: rotate3d(0, 0, 1, -5deg);
|
|
207
|
+
// }
|
|
208
|
+
|
|
209
|
+
// 100% {
|
|
210
|
+
// -webkit-transform: rotate3d(0, 0, 1, 0deg);
|
|
211
|
+
// transform: rotate3d(0, 0, 1, 0deg);
|
|
212
|
+
// }
|
|
213
|
+
// }
|
|
214
|
+
|
|
215
|
+
// @keyframes swing {
|
|
216
|
+
// 20% {
|
|
217
|
+
// -webkit-transform: rotate3d(0, 0, 1, 15deg);
|
|
218
|
+
// transform: rotate3d(0, 0, 1, 15deg);
|
|
219
|
+
// }
|
|
220
|
+
|
|
221
|
+
// 40% {
|
|
222
|
+
// -webkit-transform: rotate3d(0, 0, 1, -10deg);
|
|
223
|
+
// transform: rotate3d(0, 0, 1, -10deg);
|
|
224
|
+
// }
|
|
225
|
+
|
|
226
|
+
// 60% {
|
|
227
|
+
// -webkit-transform: rotate3d(0, 0, 1, 5deg);
|
|
228
|
+
// transform: rotate3d(0, 0, 1, 5deg);
|
|
229
|
+
// }
|
|
230
|
+
|
|
231
|
+
// 80% {
|
|
232
|
+
// -webkit-transform: rotate3d(0, 0, 1, -5deg);
|
|
233
|
+
// transform: rotate3d(0, 0, 1, -5deg);
|
|
234
|
+
// }
|
|
235
|
+
|
|
236
|
+
// 100% {
|
|
237
|
+
// -webkit-transform: rotate3d(0, 0, 1, 0deg);
|
|
238
|
+
// transform: rotate3d(0, 0, 1, 0deg);
|
|
239
|
+
// }
|
|
240
|
+
// }
|
|
241
|
+
|
|
242
|
+
// .swing {
|
|
243
|
+
// -webkit-transform-origin: top center;
|
|
244
|
+
// transform-origin: top center;
|
|
245
|
+
// -webkit-animation-name: swing;
|
|
246
|
+
// animation-name: swing;
|
|
247
|
+
// }
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// Poster
|
|
3
|
+
// ============================================================================
|
|
4
|
+
|
|
5
|
+
////
|
|
6
|
+
///
|
|
7
|
+
/// Tada Animations Mixin Module
|
|
8
|
+
/// ===========================================================================
|
|
9
|
+
///
|
|
10
|
+
/// This module ...
|
|
11
|
+
///
|
|
12
|
+
///
|
|
13
|
+
/// @group Animations
|
|
14
|
+
/// @author Scape Agency
|
|
15
|
+
/// @link https://move.gl
|
|
16
|
+
/// @since 0.1.0 initial release
|
|
17
|
+
/// @todo None
|
|
18
|
+
/// @access public
|
|
19
|
+
///
|
|
20
|
+
////
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
// ============================================================================
|
|
24
|
+
// Use
|
|
25
|
+
// ============================================================================
|
|
26
|
+
|
|
27
|
+
@use "../dev" as *;
|
|
28
|
+
@use "../variables" as *;
|
|
29
|
+
@use "../keyframes" as *;
|
|
30
|
+
@use "base" as *;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
// ============================================================================
|
|
34
|
+
// Mixins
|
|
35
|
+
// ============================================================================
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
///
|
|
39
|
+
/// Tada Animation
|
|
40
|
+
/// Creates a "tada" effect with scaling and rotating.
|
|
41
|
+
///
|
|
42
|
+
/// @name animate_tada
|
|
43
|
+
/// @param {Number} $scale [1.1] - The scale factor for the animation.
|
|
44
|
+
/// @param {Duration} $duration [$animate_base_duration/// 2] - The duration of the animation.
|
|
45
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the animation.
|
|
46
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
47
|
+
///
|
|
48
|
+
@mixin animate_tada(
|
|
49
|
+
$scale: 1.1,
|
|
50
|
+
$duration: $animate_base_duration * 2,
|
|
51
|
+
$timing_function: ease-in-out,
|
|
52
|
+
$iteration_count: $animate_base_iteration_count
|
|
53
|
+
) {
|
|
54
|
+
@include animate_base(
|
|
55
|
+
animate_tada,
|
|
56
|
+
$duration,
|
|
57
|
+
$timing_function,
|
|
58
|
+
$iteration_count,
|
|
59
|
+
);
|
|
60
|
+
@keyframes animate_tada {
|
|
61
|
+
0%, 100% { transform: scale(1); }
|
|
62
|
+
10%, 20% { transform: scale(0.9) rotate(-3deg); }
|
|
63
|
+
30%, 50%, 70%, 90% { transform: scale($scale) rotate(3deg); }
|
|
64
|
+
40%, 60%, 80% { transform: scale($scale) rotate(-3deg); }
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
// Gentle Tada Animation
|
|
72
|
+
// ----------------------------------------------------------------------------
|
|
73
|
+
|
|
74
|
+
///
|
|
75
|
+
/// Gentle Tada Animation
|
|
76
|
+
/// A more subtle version of the Tada animation.
|
|
77
|
+
/// @name animate_tada_slow
|
|
78
|
+
/// @param {Number} $scale [1.05] - The scale factor for the animation.
|
|
79
|
+
/// @param {Duration} $duration [$animate_base_duration_slow/// 2] - The duration of the animation.
|
|
80
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the animation.
|
|
81
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
82
|
+
///
|
|
83
|
+
@mixin animate_tada_slow(
|
|
84
|
+
$scale: 1.05,
|
|
85
|
+
$duration: $animate_base_duration_slow * 2,
|
|
86
|
+
$timing_function: ease-in-out,
|
|
87
|
+
$iteration_count: $animate_base_iteration_count
|
|
88
|
+
) {
|
|
89
|
+
@include animate_base(
|
|
90
|
+
animate_tada_slow,
|
|
91
|
+
$duration,
|
|
92
|
+
$timing_function,
|
|
93
|
+
$iteration_count,
|
|
94
|
+
);
|
|
95
|
+
@keyframes animate_tada_slow {
|
|
96
|
+
0%, 100% { transform: scale(1); }
|
|
97
|
+
10%, 20% { transform: scale(0.95) rotate(-2deg); }
|
|
98
|
+
30%, 50%, 70%, 90% { transform: scale($scale) rotate(2deg); }
|
|
99
|
+
40%, 60%, 80% { transform: scale($scale) rotate(-2deg); }
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
// Rapid Tada Animation
|
|
106
|
+
// ----------------------------------------------------------------------------
|
|
107
|
+
|
|
108
|
+
///
|
|
109
|
+
/// Rapid Tada Animation
|
|
110
|
+
/// A faster and more exaggerated version of the Tada animation.
|
|
111
|
+
/// @name animate_tada_fast
|
|
112
|
+
/// @param {Number} $scale [1.15] - The scale factor for the animation.
|
|
113
|
+
/// @param {Duration} $duration [$animate_base_duration] - The duration of the animation.
|
|
114
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the animation.
|
|
115
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
116
|
+
///
|
|
117
|
+
@mixin animate_tada_fast(
|
|
118
|
+
$scale: 1.15,
|
|
119
|
+
$duration: $animate_base_duration,
|
|
120
|
+
$timing_function: ease-in-out,
|
|
121
|
+
$iteration_count: $animate_base_iteration_count
|
|
122
|
+
) {
|
|
123
|
+
@include animate_base(
|
|
124
|
+
animate_tada_fast,
|
|
125
|
+
$duration,
|
|
126
|
+
$timing_function,
|
|
127
|
+
$iteration_count,
|
|
128
|
+
);
|
|
129
|
+
@keyframes animate_tada_fast {
|
|
130
|
+
0%, 100% { transform: scale(1); }
|
|
131
|
+
10%, 20% { transform: scale(0.85) rotate(-4deg); }
|
|
132
|
+
30%, 50%, 70%, 90% { transform: scale($scale) rotate(4deg); }
|
|
133
|
+
40%, 60%, 80% { transform: scale($scale) rotate(-4deg); }
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
// Tada with Fade Animation
|
|
139
|
+
// ----------------------------------------------------------------------------
|
|
140
|
+
|
|
141
|
+
///
|
|
142
|
+
/// Tada with Fade Animation
|
|
143
|
+
/// Adds a fading effect to the Tada animation.
|
|
144
|
+
/// @name animate_tada_fade
|
|
145
|
+
/// @param {Number} $scale [1.1] - The scale factor for the animation.
|
|
146
|
+
/// @param {Duration} $duration [$animate_base_duration/// 2] - The duration of the animation.
|
|
147
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the animation.
|
|
148
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
149
|
+
///
|
|
150
|
+
@mixin animate_tada_fade(
|
|
151
|
+
$scale: 1.1,
|
|
152
|
+
$duration: $animate_base_duration * 2,
|
|
153
|
+
$timing_function: ease-in-out,
|
|
154
|
+
$iteration_count: $animate_base_iteration_count
|
|
155
|
+
) {
|
|
156
|
+
@include animate_base(
|
|
157
|
+
animate_tada_fade,
|
|
158
|
+
$duration,
|
|
159
|
+
$timing_function,
|
|
160
|
+
$iteration_count,
|
|
161
|
+
);
|
|
162
|
+
@keyframes animate_tada_fade {
|
|
163
|
+
0%, 100% {
|
|
164
|
+
transform: scale(1);
|
|
165
|
+
opacity: 1;
|
|
166
|
+
}
|
|
167
|
+
50% {
|
|
168
|
+
transform: scale($scale) rotate(3deg);
|
|
169
|
+
opacity: 0.5;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
// @-webkit-keyframes tada {
|
|
177
|
+
// from {
|
|
178
|
+
// -webkit-transform: scale3d(1, 1, 1);
|
|
179
|
+
// transform: scale3d(1, 1, 1);
|
|
180
|
+
// }
|
|
181
|
+
|
|
182
|
+
// 10%, 20% {
|
|
183
|
+
// -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
|
|
184
|
+
// transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
|
|
185
|
+
// }
|
|
186
|
+
|
|
187
|
+
// 30%, 50%, 70%, 90% {
|
|
188
|
+
// -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
|
|
189
|
+
// transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
|
|
190
|
+
// }
|
|
191
|
+
|
|
192
|
+
// 40%, 60%, 80% {
|
|
193
|
+
// -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
|
|
194
|
+
// transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
|
|
195
|
+
// }
|
|
196
|
+
|
|
197
|
+
// 100% {
|
|
198
|
+
// -webkit-transform: scale3d(1, 1, 1);
|
|
199
|
+
// transform: scale3d(1, 1, 1);
|
|
200
|
+
// }
|
|
201
|
+
// }
|
|
202
|
+
|
|
203
|
+
// @keyframes tada {
|
|
204
|
+
// from {
|
|
205
|
+
// -webkit-transform: scale3d(1, 1, 1);
|
|
206
|
+
// transform: scale3d(1, 1, 1);
|
|
207
|
+
// }
|
|
208
|
+
|
|
209
|
+
// 10%, 20% {
|
|
210
|
+
// -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
|
|
211
|
+
// transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
|
|
212
|
+
// }
|
|
213
|
+
|
|
214
|
+
// 30%, 50%, 70%, 90% {
|
|
215
|
+
// -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
|
|
216
|
+
// transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
|
|
217
|
+
// }
|
|
218
|
+
|
|
219
|
+
// 40%, 60%, 80% {
|
|
220
|
+
// -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
|
|
221
|
+
// transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
|
|
222
|
+
// }
|
|
223
|
+
|
|
224
|
+
// 100% {
|
|
225
|
+
// -webkit-transform: scale3d(1, 1, 1);
|
|
226
|
+
// transform: scale3d(1, 1, 1);
|
|
227
|
+
// }
|
|
228
|
+
// }
|
|
229
|
+
|
|
230
|
+
// .tada {
|
|
231
|
+
// -webkit-animation-name: tada;
|
|
232
|
+
// animation-name: tada;
|
|
233
|
+
// }
|