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,428 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// Poster
|
|
3
|
+
// ============================================================================
|
|
4
|
+
|
|
5
|
+
////
|
|
6
|
+
///
|
|
7
|
+
/// Rotate 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
|
+
// @-webkit-keyframes rotateIn {
|
|
41
|
+
// from {
|
|
42
|
+
// -webkit-transform-origin: center;
|
|
43
|
+
// transform-origin: center;
|
|
44
|
+
// -webkit-transform: rotate3d(0, 0, 1, -200deg);
|
|
45
|
+
// transform: rotate3d(0, 0, 1, -200deg);
|
|
46
|
+
// opacity: 0;
|
|
47
|
+
// }
|
|
48
|
+
|
|
49
|
+
// 100% {
|
|
50
|
+
// -webkit-transform-origin: center;
|
|
51
|
+
// transform-origin: center;
|
|
52
|
+
// -webkit-transform: none;
|
|
53
|
+
// transform: none;
|
|
54
|
+
// opacity: 1;
|
|
55
|
+
// }
|
|
56
|
+
// }
|
|
57
|
+
|
|
58
|
+
// @keyframes rotateIn {
|
|
59
|
+
// from {
|
|
60
|
+
// -webkit-transform-origin: center;
|
|
61
|
+
// transform-origin: center;
|
|
62
|
+
// -webkit-transform: rotate3d(0, 0, 1, -200deg);
|
|
63
|
+
// transform: rotate3d(0, 0, 1, -200deg);
|
|
64
|
+
// opacity: 0;
|
|
65
|
+
// }
|
|
66
|
+
|
|
67
|
+
// 100% {
|
|
68
|
+
// -webkit-transform-origin: center;
|
|
69
|
+
// transform-origin: center;
|
|
70
|
+
// -webkit-transform: none;
|
|
71
|
+
// transform: none;
|
|
72
|
+
// opacity: 1;
|
|
73
|
+
// }
|
|
74
|
+
// }
|
|
75
|
+
|
|
76
|
+
// .rotateIn {
|
|
77
|
+
// -webkit-animation-name: rotateIn;
|
|
78
|
+
// animation-name: rotateIn;
|
|
79
|
+
// }
|
|
80
|
+
|
|
81
|
+
// @-webkit-keyframes rotateInDownLeft {
|
|
82
|
+
// from {
|
|
83
|
+
// -webkit-transform-origin: left bottom;
|
|
84
|
+
// transform-origin: left bottom;
|
|
85
|
+
// -webkit-transform: rotate3d(0, 0, 1, -45deg);
|
|
86
|
+
// transform: rotate3d(0, 0, 1, -45deg);
|
|
87
|
+
// opacity: 0;
|
|
88
|
+
// }
|
|
89
|
+
|
|
90
|
+
// 100% {
|
|
91
|
+
// -webkit-transform-origin: left bottom;
|
|
92
|
+
// transform-origin: left bottom;
|
|
93
|
+
// -webkit-transform: none;
|
|
94
|
+
// transform: none;
|
|
95
|
+
// opacity: 1;
|
|
96
|
+
// }
|
|
97
|
+
// }
|
|
98
|
+
|
|
99
|
+
// @keyframes rotateInDownLeft {
|
|
100
|
+
// from {
|
|
101
|
+
// -webkit-transform-origin: left bottom;
|
|
102
|
+
// transform-origin: left bottom;
|
|
103
|
+
// -webkit-transform: rotate3d(0, 0, 1, -45deg);
|
|
104
|
+
// transform: rotate3d(0, 0, 1, -45deg);
|
|
105
|
+
// opacity: 0;
|
|
106
|
+
// }
|
|
107
|
+
|
|
108
|
+
// 100% {
|
|
109
|
+
// -webkit-transform-origin: left bottom;
|
|
110
|
+
// transform-origin: left bottom;
|
|
111
|
+
// -webkit-transform: none;
|
|
112
|
+
// transform: none;
|
|
113
|
+
// opacity: 1;
|
|
114
|
+
// }
|
|
115
|
+
// }
|
|
116
|
+
|
|
117
|
+
// .rotateInDownLeft {
|
|
118
|
+
// -webkit-animation-name: rotateInDownLeft;
|
|
119
|
+
// animation-name: rotateInDownLeft;
|
|
120
|
+
// }
|
|
121
|
+
|
|
122
|
+
// @-webkit-keyframes rotateInDownRight {
|
|
123
|
+
// from {
|
|
124
|
+
// -webkit-transform-origin: right bottom;
|
|
125
|
+
// transform-origin: right bottom;
|
|
126
|
+
// -webkit-transform: rotate3d(0, 0, 1, 45deg);
|
|
127
|
+
// transform: rotate3d(0, 0, 1, 45deg);
|
|
128
|
+
// opacity: 0;
|
|
129
|
+
// }
|
|
130
|
+
|
|
131
|
+
// 100% {
|
|
132
|
+
// -webkit-transform-origin: right bottom;
|
|
133
|
+
// transform-origin: right bottom;
|
|
134
|
+
// -webkit-transform: none;
|
|
135
|
+
// transform: none;
|
|
136
|
+
// opacity: 1;
|
|
137
|
+
// }
|
|
138
|
+
// }
|
|
139
|
+
|
|
140
|
+
// @keyframes rotateInDownRight {
|
|
141
|
+
// from {
|
|
142
|
+
// -webkit-transform-origin: right bottom;
|
|
143
|
+
// transform-origin: right bottom;
|
|
144
|
+
// -webkit-transform: rotate3d(0, 0, 1, 45deg);
|
|
145
|
+
// transform: rotate3d(0, 0, 1, 45deg);
|
|
146
|
+
// opacity: 0;
|
|
147
|
+
// }
|
|
148
|
+
|
|
149
|
+
// 100% {
|
|
150
|
+
// -webkit-transform-origin: right bottom;
|
|
151
|
+
// transform-origin: right bottom;
|
|
152
|
+
// -webkit-transform: none;
|
|
153
|
+
// transform: none;
|
|
154
|
+
// opacity: 1;
|
|
155
|
+
// }
|
|
156
|
+
// }
|
|
157
|
+
|
|
158
|
+
// .rotateInDownRight {
|
|
159
|
+
// -webkit-animation-name: rotateInDownRight;
|
|
160
|
+
// animation-name: rotateInDownRight;
|
|
161
|
+
// }
|
|
162
|
+
|
|
163
|
+
// @-webkit-keyframes rotateInUpLeft {
|
|
164
|
+
// from {
|
|
165
|
+
// -webkit-transform-origin: left bottom;
|
|
166
|
+
// transform-origin: left bottom;
|
|
167
|
+
// -webkit-transform: rotate3d(0, 0, 1, 45deg);
|
|
168
|
+
// transform: rotate3d(0, 0, 1, 45deg);
|
|
169
|
+
// opacity: 0;
|
|
170
|
+
// }
|
|
171
|
+
|
|
172
|
+
// 100% {
|
|
173
|
+
// -webkit-transform-origin: left bottom;
|
|
174
|
+
// transform-origin: left bottom;
|
|
175
|
+
// -webkit-transform: none;
|
|
176
|
+
// transform: none;
|
|
177
|
+
// opacity: 1;
|
|
178
|
+
// }
|
|
179
|
+
// }
|
|
180
|
+
|
|
181
|
+
// @keyframes rotateInUpLeft {
|
|
182
|
+
// from {
|
|
183
|
+
// -webkit-transform-origin: left bottom;
|
|
184
|
+
// transform-origin: left bottom;
|
|
185
|
+
// -webkit-transform: rotate3d(0, 0, 1, 45deg);
|
|
186
|
+
// transform: rotate3d(0, 0, 1, 45deg);
|
|
187
|
+
// opacity: 0;
|
|
188
|
+
// }
|
|
189
|
+
|
|
190
|
+
// 100% {
|
|
191
|
+
// -webkit-transform-origin: left bottom;
|
|
192
|
+
// transform-origin: left bottom;
|
|
193
|
+
// -webkit-transform: none;
|
|
194
|
+
// transform: none;
|
|
195
|
+
// opacity: 1;
|
|
196
|
+
// }
|
|
197
|
+
// }
|
|
198
|
+
|
|
199
|
+
// .rotateInUpLeft {
|
|
200
|
+
// -webkit-animation-name: rotateInUpLeft;
|
|
201
|
+
// animation-name: rotateInUpLeft;
|
|
202
|
+
// }
|
|
203
|
+
|
|
204
|
+
// @-webkit-keyframes rotateInUpRight {
|
|
205
|
+
// from {
|
|
206
|
+
// -webkit-transform-origin: right bottom;
|
|
207
|
+
// transform-origin: right bottom;
|
|
208
|
+
// -webkit-transform: rotate3d(0, 0, 1, -90deg);
|
|
209
|
+
// transform: rotate3d(0, 0, 1, -90deg);
|
|
210
|
+
// opacity: 0;
|
|
211
|
+
// }
|
|
212
|
+
|
|
213
|
+
// 100% {
|
|
214
|
+
// -webkit-transform-origin: right bottom;
|
|
215
|
+
// transform-origin: right bottom;
|
|
216
|
+
// -webkit-transform: none;
|
|
217
|
+
// transform: none;
|
|
218
|
+
// opacity: 1;
|
|
219
|
+
// }
|
|
220
|
+
// }
|
|
221
|
+
|
|
222
|
+
// @keyframes rotateInUpRight {
|
|
223
|
+
// from {
|
|
224
|
+
// -webkit-transform-origin: right bottom;
|
|
225
|
+
// transform-origin: right bottom;
|
|
226
|
+
// -webkit-transform: rotate3d(0, 0, 1, -90deg);
|
|
227
|
+
// transform: rotate3d(0, 0, 1, -90deg);
|
|
228
|
+
// opacity: 0;
|
|
229
|
+
// }
|
|
230
|
+
|
|
231
|
+
// 100% {
|
|
232
|
+
// -webkit-transform-origin: right bottom;
|
|
233
|
+
// transform-origin: right bottom;
|
|
234
|
+
// -webkit-transform: none;
|
|
235
|
+
// transform: none;
|
|
236
|
+
// opacity: 1;
|
|
237
|
+
// }
|
|
238
|
+
// }
|
|
239
|
+
|
|
240
|
+
// .rotateInUpRight {
|
|
241
|
+
// -webkit-animation-name: rotateInUpRight;
|
|
242
|
+
// animation-name: rotateInUpRight;
|
|
243
|
+
// }
|
|
244
|
+
|
|
245
|
+
// @-webkit-keyframes rotateOut {
|
|
246
|
+
// from {
|
|
247
|
+
// -webkit-transform-origin: center;
|
|
248
|
+
// transform-origin: center;
|
|
249
|
+
// opacity: 1;
|
|
250
|
+
// }
|
|
251
|
+
|
|
252
|
+
// 100% {
|
|
253
|
+
// -webkit-transform-origin: center;
|
|
254
|
+
// transform-origin: center;
|
|
255
|
+
// -webkit-transform: rotate3d(0, 0, 1, 200deg);
|
|
256
|
+
// transform: rotate3d(0, 0, 1, 200deg);
|
|
257
|
+
// opacity: 0;
|
|
258
|
+
// }
|
|
259
|
+
// }
|
|
260
|
+
|
|
261
|
+
// @keyframes rotateOut {
|
|
262
|
+
// from {
|
|
263
|
+
// -webkit-transform-origin: center;
|
|
264
|
+
// transform-origin: center;
|
|
265
|
+
// opacity: 1;
|
|
266
|
+
// }
|
|
267
|
+
|
|
268
|
+
// 100% {
|
|
269
|
+
// -webkit-transform-origin: center;
|
|
270
|
+
// transform-origin: center;
|
|
271
|
+
// -webkit-transform: rotate3d(0, 0, 1, 200deg);
|
|
272
|
+
// transform: rotate3d(0, 0, 1, 200deg);
|
|
273
|
+
// opacity: 0;
|
|
274
|
+
// }
|
|
275
|
+
// }
|
|
276
|
+
|
|
277
|
+
// .rotateOut {
|
|
278
|
+
// -webkit-animation-name: rotateOut;
|
|
279
|
+
// animation-name: rotateOut;
|
|
280
|
+
// }
|
|
281
|
+
|
|
282
|
+
// @-webkit-keyframes rotateOutDownLeft {
|
|
283
|
+
// from {
|
|
284
|
+
// -webkit-transform-origin: left bottom;
|
|
285
|
+
// transform-origin: left bottom;
|
|
286
|
+
// opacity: 1;
|
|
287
|
+
// }
|
|
288
|
+
|
|
289
|
+
// 100% {
|
|
290
|
+
// -webkit-transform-origin: left bottom;
|
|
291
|
+
// transform-origin: left bottom;
|
|
292
|
+
// -webkit-transform: rotate3d(0, 0, 1, 45deg);
|
|
293
|
+
// transform: rotate3d(0, 0, 1, 45deg);
|
|
294
|
+
// opacity: 0;
|
|
295
|
+
// }
|
|
296
|
+
// }
|
|
297
|
+
|
|
298
|
+
// @keyframes rotateOutDownLeft {
|
|
299
|
+
// from {
|
|
300
|
+
// -webkit-transform-origin: left bottom;
|
|
301
|
+
// transform-origin: left bottom;
|
|
302
|
+
// opacity: 1;
|
|
303
|
+
// }
|
|
304
|
+
|
|
305
|
+
// 100% {
|
|
306
|
+
// -webkit-transform-origin: left bottom;
|
|
307
|
+
// transform-origin: left bottom;
|
|
308
|
+
// -webkit-transform: rotate3d(0, 0, 1, 45deg);
|
|
309
|
+
// transform: rotate3d(0, 0, 1, 45deg);
|
|
310
|
+
// opacity: 0;
|
|
311
|
+
// }
|
|
312
|
+
// }
|
|
313
|
+
|
|
314
|
+
// .rotateOutDownLeft {
|
|
315
|
+
// -webkit-animation-name: rotateOutDownLeft;
|
|
316
|
+
// animation-name: rotateOutDownLeft;
|
|
317
|
+
// }
|
|
318
|
+
|
|
319
|
+
// @-webkit-keyframes rotateOutDownRight {
|
|
320
|
+
// from {
|
|
321
|
+
// -webkit-transform-origin: right bottom;
|
|
322
|
+
// transform-origin: right bottom;
|
|
323
|
+
// opacity: 1;
|
|
324
|
+
// }
|
|
325
|
+
|
|
326
|
+
// 100% {
|
|
327
|
+
// -webkit-transform-origin: right bottom;
|
|
328
|
+
// transform-origin: right bottom;
|
|
329
|
+
// -webkit-transform: rotate3d(0, 0, 1, -45deg);
|
|
330
|
+
// transform: rotate3d(0, 0, 1, -45deg);
|
|
331
|
+
// opacity: 0;
|
|
332
|
+
// }
|
|
333
|
+
// }
|
|
334
|
+
|
|
335
|
+
// @keyframes rotateOutDownRight {
|
|
336
|
+
// from {
|
|
337
|
+
// -webkit-transform-origin: right bottom;
|
|
338
|
+
// transform-origin: right bottom;
|
|
339
|
+
// opacity: 1;
|
|
340
|
+
// }
|
|
341
|
+
|
|
342
|
+
// 100% {
|
|
343
|
+
// -webkit-transform-origin: right bottom;
|
|
344
|
+
// transform-origin: right bottom;
|
|
345
|
+
// -webkit-transform: rotate3d(0, 0, 1, -45deg);
|
|
346
|
+
// transform: rotate3d(0, 0, 1, -45deg);
|
|
347
|
+
// opacity: 0;
|
|
348
|
+
// }
|
|
349
|
+
// }
|
|
350
|
+
|
|
351
|
+
// .rotateOutDownRight {
|
|
352
|
+
// -webkit-animation-name: rotateOutDownRight;
|
|
353
|
+
// animation-name: rotateOutDownRight;
|
|
354
|
+
// }
|
|
355
|
+
|
|
356
|
+
// @-webkit-keyframes rotateOutUpLeft {
|
|
357
|
+
// from {
|
|
358
|
+
// -webkit-transform-origin: left bottom;
|
|
359
|
+
// transform-origin: left bottom;
|
|
360
|
+
// opacity: 1;
|
|
361
|
+
// }
|
|
362
|
+
|
|
363
|
+
// 100% {
|
|
364
|
+
// -webkit-transform-origin: left bottom;
|
|
365
|
+
// transform-origin: left bottom;
|
|
366
|
+
// -webkit-transform: rotate3d(0, 0, 1, -45deg);
|
|
367
|
+
// transform: rotate3d(0, 0, 1, -45deg);
|
|
368
|
+
// opacity: 0;
|
|
369
|
+
// }
|
|
370
|
+
// }
|
|
371
|
+
|
|
372
|
+
// @keyframes rotateOutUpLeft {
|
|
373
|
+
// from {
|
|
374
|
+
// -webkit-transform-origin: left bottom;
|
|
375
|
+
// transform-origin: left bottom;
|
|
376
|
+
// opacity: 1;
|
|
377
|
+
// }
|
|
378
|
+
|
|
379
|
+
// 100% {
|
|
380
|
+
// -webkit-transform-origin: left bottom;
|
|
381
|
+
// transform-origin: left bottom;
|
|
382
|
+
// -webkit-transform: rotate3d(0, 0, 1, -45deg);
|
|
383
|
+
// transform: rotate3d(0, 0, 1, -45deg);
|
|
384
|
+
// opacity: 0;
|
|
385
|
+
// }
|
|
386
|
+
// }
|
|
387
|
+
|
|
388
|
+
// .rotateOutUpLeft {
|
|
389
|
+
// -webkit-animation-name: rotateOutUpLeft;
|
|
390
|
+
// animation-name: rotateOutUpLeft;
|
|
391
|
+
// }
|
|
392
|
+
|
|
393
|
+
// @-webkit-keyframes rotateOutUpRight {
|
|
394
|
+
// from {
|
|
395
|
+
// -webkit-transform-origin: right bottom;
|
|
396
|
+
// transform-origin: right bottom;
|
|
397
|
+
// opacity: 1;
|
|
398
|
+
// }
|
|
399
|
+
|
|
400
|
+
// 100% {
|
|
401
|
+
// -webkit-transform-origin: right bottom;
|
|
402
|
+
// transform-origin: right bottom;
|
|
403
|
+
// -webkit-transform: rotate3d(0, 0, 1, 90deg);
|
|
404
|
+
// transform: rotate3d(0, 0, 1, 90deg);
|
|
405
|
+
// opacity: 0;
|
|
406
|
+
// }
|
|
407
|
+
// }
|
|
408
|
+
|
|
409
|
+
// @keyframes rotateOutUpRight {
|
|
410
|
+
// from {
|
|
411
|
+
// -webkit-transform-origin: right bottom;
|
|
412
|
+
// transform-origin: right bottom;
|
|
413
|
+
// opacity: 1;
|
|
414
|
+
// }
|
|
415
|
+
|
|
416
|
+
// 100% {
|
|
417
|
+
// -webkit-transform-origin: right bottom;
|
|
418
|
+
// transform-origin: right bottom;
|
|
419
|
+
// -webkit-transform: rotate3d(0, 0, 1, 90deg);
|
|
420
|
+
// transform: rotate3d(0, 0, 1, 90deg);
|
|
421
|
+
// opacity: 0;
|
|
422
|
+
// }
|
|
423
|
+
// }
|
|
424
|
+
|
|
425
|
+
// .rotateOutUpRight {
|
|
426
|
+
// -webkit-animation-name: rotateOutUpRight;
|
|
427
|
+
// animation-name: rotateOutUpRight;
|
|
428
|
+
// }
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// Poster
|
|
3
|
+
// ============================================================================
|
|
4
|
+
|
|
5
|
+
////
|
|
6
|
+
///
|
|
7
|
+
/// Rubber 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
|
+
// @-webkit-keyframes rubberBand {
|
|
40
|
+
// from {
|
|
41
|
+
// -webkit-transform: scale3d(1, 1, 1);
|
|
42
|
+
// transform: scale3d(1, 1, 1);
|
|
43
|
+
// }
|
|
44
|
+
|
|
45
|
+
// 30% {
|
|
46
|
+
// -webkit-transform: scale3d(1.25, 0.75, 1);
|
|
47
|
+
// transform: scale3d(1.25, 0.75, 1);
|
|
48
|
+
// }
|
|
49
|
+
|
|
50
|
+
// 40% {
|
|
51
|
+
// -webkit-transform: scale3d(0.75, 1.25, 1);
|
|
52
|
+
// transform: scale3d(0.75, 1.25, 1);
|
|
53
|
+
// }
|
|
54
|
+
|
|
55
|
+
// 50% {
|
|
56
|
+
// -webkit-transform: scale3d(1.15, 0.85, 1);
|
|
57
|
+
// transform: scale3d(1.15, 0.85, 1);
|
|
58
|
+
// }
|
|
59
|
+
|
|
60
|
+
// 65% {
|
|
61
|
+
// -webkit-transform: scale3d(.95, 1.05, 1);
|
|
62
|
+
// transform: scale3d(.95, 1.05, 1);
|
|
63
|
+
// }
|
|
64
|
+
|
|
65
|
+
// 75% {
|
|
66
|
+
// -webkit-transform: scale3d(1.05, .95, 1);
|
|
67
|
+
// transform: scale3d(1.05, .95, 1);
|
|
68
|
+
// }
|
|
69
|
+
|
|
70
|
+
// 100% {
|
|
71
|
+
// -webkit-transform: scale3d(1, 1, 1);
|
|
72
|
+
// transform: scale3d(1, 1, 1);
|
|
73
|
+
// }
|
|
74
|
+
// }
|
|
75
|
+
|
|
76
|
+
// @keyframes rubberBand {
|
|
77
|
+
// from {
|
|
78
|
+
// -webkit-transform: scale3d(1, 1, 1);
|
|
79
|
+
// transform: scale3d(1, 1, 1);
|
|
80
|
+
// }
|
|
81
|
+
|
|
82
|
+
// 30% {
|
|
83
|
+
// -webkit-transform: scale3d(1.25, 0.75, 1);
|
|
84
|
+
// transform: scale3d(1.25, 0.75, 1);
|
|
85
|
+
// }
|
|
86
|
+
|
|
87
|
+
// 40% {
|
|
88
|
+
// -webkit-transform: scale3d(0.75, 1.25, 1);
|
|
89
|
+
// transform: scale3d(0.75, 1.25, 1);
|
|
90
|
+
// }
|
|
91
|
+
|
|
92
|
+
// 50% {
|
|
93
|
+
// -webkit-transform: scale3d(1.15, 0.85, 1);
|
|
94
|
+
// transform: scale3d(1.15, 0.85, 1);
|
|
95
|
+
// }
|
|
96
|
+
|
|
97
|
+
// 65% {
|
|
98
|
+
// -webkit-transform: scale3d(.95, 1.05, 1);
|
|
99
|
+
// transform: scale3d(.95, 1.05, 1);
|
|
100
|
+
// }
|
|
101
|
+
|
|
102
|
+
// 75% {
|
|
103
|
+
// -webkit-transform: scale3d(1.05, .95, 1);
|
|
104
|
+
// transform: scale3d(1.05, .95, 1);
|
|
105
|
+
// }
|
|
106
|
+
|
|
107
|
+
// 100% {
|
|
108
|
+
// -webkit-transform: scale3d(1, 1, 1);
|
|
109
|
+
// transform: scale3d(1, 1, 1);
|
|
110
|
+
// }
|
|
111
|
+
// }
|
|
112
|
+
|
|
113
|
+
// .rubberBand {
|
|
114
|
+
// -webkit-animation-name: rubberBand;
|
|
115
|
+
// animation-name: rubberBand;
|
|
116
|
+
// }
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// Poster
|
|
3
|
+
// ============================================================================
|
|
4
|
+
|
|
5
|
+
////
|
|
6
|
+
///
|
|
7
|
+
/// Scale 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
|
+
/// Expand Animation
|
|
40
|
+
/// Creates an expand animation where the element scales up and down.
|
|
41
|
+
/// @name animate_scale_expand
|
|
42
|
+
/// @param {Number|String} $scale_start [1] - The initial scale of the element.
|
|
43
|
+
/// @param {Number|String} $scale_end [1.2] - The scale of the element at its maximum size.
|
|
44
|
+
/// @param {Number|String} $duration [$animate_base_duration] - The duration of the expand animation.
|
|
45
|
+
/// @param {String} $timing_function [ease-out] - The timing function for the expand animation.
|
|
46
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
47
|
+
///
|
|
48
|
+
@mixin animate_scale_expand(
|
|
49
|
+
$scale_start: 1,
|
|
50
|
+
$scale_end: 1.2,
|
|
51
|
+
$duration: $animate_base_duration,
|
|
52
|
+
$timing_function: ease-out,
|
|
53
|
+
$iteration_count: $animate_base_iteration_count
|
|
54
|
+
) {
|
|
55
|
+
@include animate_base(
|
|
56
|
+
animate_scale_expand,
|
|
57
|
+
$duration,
|
|
58
|
+
$timing_function,
|
|
59
|
+
$iteration_count,
|
|
60
|
+
);
|
|
61
|
+
@keyframes animate_scale_expand {
|
|
62
|
+
0%, 100% { transform: scale($scale_start); }
|
|
63
|
+
50% { transform: scale($scale_end); }
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
// // Scale transition
|
|
69
|
+
// .scale-transition {
|
|
70
|
+
// &.scale-out {
|
|
71
|
+
// transform: scale(0);
|
|
72
|
+
// transition: transform .2s !important;
|
|
73
|
+
// }
|
|
74
|
+
|
|
75
|
+
// &.scale-in {
|
|
76
|
+
// transform: scale(1);
|
|
77
|
+
// }
|
|
78
|
+
|
|
79
|
+
// transition: transform .3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important;
|
|
80
|
+
// }
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
// Expand and Shrink Animation
|
|
84
|
+
// ----------------------------------------------------------------------------
|
|
85
|
+
|
|
86
|
+
///
|
|
87
|
+
/// Expand and Shrink Animation
|
|
88
|
+
/// Creates an animation where the element alternates between expanding and shrinking.
|
|
89
|
+
/// @name animate_scale_shrink
|
|
90
|
+
/// @param {Number|String} $scale_min [0.8] - The minimum scale of the element during the animation.
|
|
91
|
+
/// @param {Number|String} $scale_max [1.2] - The maximum scale of the element during the animation.
|
|
92
|
+
/// @param {Number|String} $duration [$animate_base_duration] - The duration of the expand and shrink animation.
|
|
93
|
+
/// @param {String} $timing_function [ease-in-out] - The timing function for the expand and shrink animation.
|
|
94
|
+
/// @param {Number|String} $iteration_count [$animate_base_iteration_count] - The number of iterations the animation will run.
|
|
95
|
+
///
|
|
96
|
+
@mixin animate_scale_shrink(
|
|
97
|
+
$scale_min: 0.8,
|
|
98
|
+
$scale_max: 1.2,
|
|
99
|
+
$duration: $animate_base_duration,
|
|
100
|
+
$timing_function: ease-in-out,
|
|
101
|
+
$iteration_count: $animate_base_iteration_count
|
|
102
|
+
) {
|
|
103
|
+
@include animate_base(
|
|
104
|
+
animate_scale_shrink,
|
|
105
|
+
$duration,
|
|
106
|
+
$timing_function,
|
|
107
|
+
$iteration_count,
|
|
108
|
+
);
|
|
109
|
+
@keyframes animate_scale_shrink {
|
|
110
|
+
0%, 100% { transform: scale($scale_min); }
|
|
111
|
+
50% { transform: scale($scale_max); }
|
|
112
|
+
}
|
|
113
|
+
}
|