igniteui-theming 1.0.0-beta.11 → 1.0.0-beta.12

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.
Files changed (38) hide show
  1. package/_index.scss +1 -0
  2. package/package.json +1 -1
  3. package/sass/_index.scss +1 -0
  4. package/sass/animations/_easings.scss +77 -0
  5. package/sass/animations/_index.scss +41 -0
  6. package/sass/animations/_mixins.scss +50 -0
  7. package/sass/animations/entrances/_bounce.scss +289 -0
  8. package/sass/animations/entrances/_fade.scss +170 -0
  9. package/sass/animations/entrances/_flicker.scss +317 -0
  10. package/sass/animations/entrances/_flip.scss +127 -0
  11. package/sass/animations/entrances/_puff.scss +210 -0
  12. package/sass/animations/entrances/_roll.scss +67 -0
  13. package/sass/animations/entrances/_rotate.scss +414 -0
  14. package/sass/animations/entrances/_scale.scss +256 -0
  15. package/sass/animations/entrances/_slide.scss +533 -0
  16. package/sass/animations/entrances/_slit.scss +89 -0
  17. package/sass/animations/entrances/_swing.scss +143 -0
  18. package/sass/animations/entrances/_swirl.scss +309 -0
  19. package/sass/animations/exits/_bounce.scss +303 -0
  20. package/sass/animations/exits/_fade.scss +170 -0
  21. package/sass/animations/exits/_flicker.scss +333 -0
  22. package/sass/animations/exits/_flip.scss +127 -0
  23. package/sass/animations/exits/_puff.scss +210 -0
  24. package/sass/animations/exits/_roll.scss +67 -0
  25. package/sass/animations/exits/_rotate.scss +414 -0
  26. package/sass/animations/exits/_scale.scss +256 -0
  27. package/sass/animations/exits/_slide.scss +533 -0
  28. package/sass/animations/exits/_slit.scss +87 -0
  29. package/sass/animations/exits/_swing.scss +143 -0
  30. package/sass/animations/exits/_swirl.scss +309 -0
  31. package/sass/animations/generic/_flip.scss +671 -0
  32. package/sass/animations/generic/_rotate.scss +641 -0
  33. package/sass/animations/generic/_scale.scss +462 -0
  34. package/sass/animations/generic/_shadows.scss +582 -0
  35. package/sass/animations/generic/_slide.scss +517 -0
  36. package/sass/animations/generic/_swing.scss +247 -0
  37. package/test/_animations.spec.scss +52 -0
  38. package/test/_index.scss +1 -0
package/_index.scss CHANGED
@@ -1,3 +1,4 @@
1
+ @forward './sass/animations';
1
2
  @forward './sass/color';
2
3
  @forward './sass/typography';
3
4
  @forward './sass/elevations';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "igniteui-theming",
3
- "version": "1.0.0-beta.11",
3
+ "version": "1.0.0-beta.12",
4
4
  "description": "A set of Sass variables, mixins, and functions for generating palettes, typography, and elevations used by Ignite UI components.",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/sass/_index.scss CHANGED
@@ -1,3 +1,4 @@
1
+ @forward 'animations';
1
2
  @forward 'color';
2
3
  @forward 'elevations';
3
4
  @forward 'typography';
@@ -0,0 +1,77 @@
1
+ ////
2
+ /// @group animations
3
+ /// @access public
4
+ /// @author <a href="https://github.com/simeonoff" target="_blank">Simeon Simeonoff</a>
5
+ ////
6
+
7
+ /// @type Timing Function
8
+ $in-quad: cubic-bezier(.55, .085, .68, .53);
9
+
10
+ /// @type Timing Function
11
+ $in-cubic: cubic-bezier(.55, .55, .675, .19);
12
+
13
+ /// @type Timing Function
14
+ $in-quart: cubic-bezier(.895, .03, .685, .22);
15
+
16
+ /// @type Timing Function
17
+ $in-quint: cubic-bezier(.755, .05, .855, .06);
18
+
19
+ /// @type Timing Function
20
+ $in-sine: cubic-bezier(.47, 0, .745, .715);
21
+
22
+ /// @type Timing Function
23
+ $in-expo: cubic-bezier(.95, .05, .795, .035);
24
+
25
+ /// @type Timing Function
26
+ $in-circ: cubic-bezier(.95, .05, .795, .035);
27
+
28
+ /// @type Timing Function
29
+ $in-back: cubic-bezier(.95, .05, .795, .035);
30
+
31
+ /// @type Timing Function
32
+ $out-quad: cubic-bezier(.25, .46, .45, .94);
33
+
34
+ /// @type Timing Function
35
+ $out-cubic: cubic-bezier(.215, .61, .355, 1);
36
+
37
+ /// @type Timing Function
38
+ $out-quart: cubic-bezier(.165, .84, .44, 1);
39
+
40
+ /// @type Timing Function
41
+ $out-quint: cubic-bezier(.23, 1, .32, 1);
42
+
43
+ /// @type Timing Function
44
+ $out-sine: cubic-bezier(.39, .575, .565, 1);
45
+
46
+ /// @type Timing Function
47
+ $out-expo: cubic-bezier(.19, 1, .22, 1);
48
+
49
+ /// @type Timing Function
50
+ $out-circ: cubic-bezier(.075, .82, .165, 1);
51
+
52
+ /// @type Timing Function
53
+ $out-back: cubic-bezier(.175, .885, .32, 1.275);
54
+
55
+ /// @type Timing Function
56
+ $in-out-quad: cubic-bezier(.455, .03, .515, .955);
57
+
58
+ /// @type Timing Function
59
+ $in-out-cubic: cubic-bezier(.645, .045, .355, 1);
60
+
61
+ /// @type Timing Function
62
+ $in-out-quart: cubic-bezier(.77, 0, .175, 1);
63
+
64
+ /// @type Timing Function
65
+ $in-out-quint: .5s cubic-bezier(.86, 0, .07, 1);
66
+
67
+ /// @type Timing Function
68
+ $in-out-sine: cubic-bezier(.445, .05, .55, .95);
69
+
70
+ /// @type Timing Function
71
+ $in-out-expo: cubic-bezier(1, 0, 0, 1);
72
+
73
+ /// @type Timing Function
74
+ $in-out-circ: cubic-bezier(.785, .135, .15, .86);
75
+
76
+ /// @type Timing Function
77
+ $in-out-back: cubic-bezier(.68, -.55, .265, 1.55);
@@ -0,0 +1,41 @@
1
+ // Easing Functions
2
+ @forward 'easings' as ease-*;
3
+
4
+ // mixins
5
+ @forward 'mixins';
6
+
7
+ // Generic Animations
8
+ @forward 'generic/flip';
9
+ @forward 'generic/rotate';
10
+ @forward 'generic/scale';
11
+ @forward 'generic/shadows';
12
+ @forward 'generic/slide';
13
+ @forward 'generic/swing';
14
+
15
+ // Entrance Animations
16
+ @forward 'entrances/bounce';
17
+ @forward 'entrances/fade';
18
+ @forward 'entrances/flicker';
19
+ @forward 'entrances/flip';
20
+ @forward 'entrances/puff';
21
+ @forward 'entrances/roll';
22
+ @forward 'entrances/rotate';
23
+ @forward 'entrances/scale';
24
+ @forward 'entrances/slide';
25
+ @forward 'entrances/slit';
26
+ @forward 'entrances/swing';
27
+ @forward 'entrances/swirl';
28
+
29
+ // Exit Animations
30
+ @forward 'exits/bounce';
31
+ @forward 'exits/fade';
32
+ @forward 'exits/flicker';
33
+ @forward 'exits/flip';
34
+ @forward 'exits/puff';
35
+ @forward 'exits/roll';
36
+ @forward 'exits/rotate';
37
+ @forward 'exits/scale';
38
+ @forward 'exits/slide';
39
+ @forward 'exits/slit';
40
+ @forward 'exits/swing';
41
+ @forward 'exits/swirl';
@@ -0,0 +1,50 @@
1
+ /* stylelint-disable keyframes-name-pattern */
2
+ @use 'sass:list';
3
+ @use 'sass:map';
4
+ @use 'sass:string';
5
+
6
+ $keyframes: () !default;
7
+
8
+ /// Registers a keyframes animation in the keyframes registry.
9
+ /// @access public
10
+ /// @group animations
11
+ /// @param {String} $name - The name of the keyframes animation.
12
+ @mixin keyframes($name) {
13
+ $keyframe: map.has-key($keyframes, $name);
14
+
15
+ @if not($keyframe) {
16
+ $keyframe: string.unique-id();
17
+ $keyframes: map.merge($keyframes, (#{$name}: $keyframe)) !global;
18
+
19
+ @at-root {
20
+ @keyframes #{$name} {
21
+ @content;
22
+ }
23
+ }
24
+ }
25
+ }
26
+
27
+ /// Animates an element.
28
+ /// @access public
29
+ /// @group animations
30
+ /// @param {List} $animate - The list of animation properties.
31
+ /// @example scss - Animating an element
32
+ /// @include fade-in(); // include the 'fade-in' keyframes animation mixin
33
+ ///
34
+ /// .bozo {
35
+ /// @include animation('fade-in' .3s ease-out);
36
+ /// }
37
+ @mixin animation($animate...) {
38
+ $max: list.length($animate);
39
+ $animations: '';
40
+
41
+ @for $i from 1 through $max {
42
+ $animations: #{$animations + list.nth($animate, $i)};
43
+
44
+ @if $i < $max {
45
+ $animations: #{$animations + ', '};
46
+ }
47
+ }
48
+
49
+ animation: #{$animations};
50
+ }
@@ -0,0 +1,289 @@
1
+ @use '../mixins' as *;
2
+
3
+ ////
4
+ /// @group animations
5
+ /// @access public
6
+ /// @author <a href="https://github.com/simeonoff" target="_blank">Simeon Simeonoff</a>
7
+ ////
8
+
9
+ /// @requires {mixin} keyframes
10
+ @mixin bounce-in-top {
11
+ @include keyframes(bounce-in-top) {
12
+ 0% {
13
+ transform: translateY(-500px);
14
+ animation-timing-function: ease-in;
15
+ opacity: 0;
16
+ }
17
+
18
+ 38% {
19
+ transform: translateY(0);
20
+ animation-timing-function: ease-out;
21
+ opacity: 1;
22
+ }
23
+
24
+ 55% {
25
+ transform: translateY(-65px);
26
+ animation-timing-function: ease-in;
27
+ }
28
+
29
+ 72% {
30
+ transform: translateY(0);
31
+ animation-timing-function: ease-out;
32
+ }
33
+
34
+ 81% {
35
+ transform: translateY(-28px);
36
+ animation-timing-function: ease-in;
37
+ }
38
+
39
+ 90% {
40
+ transform: translateY(0);
41
+ animation-timing-function: ease-out;
42
+ }
43
+
44
+ 95% {
45
+ transform: translateY(-8px);
46
+ animation-timing-function: ease-in;
47
+ }
48
+
49
+ 100% {
50
+ transform: translateY(0);
51
+ animation-timing-function: ease-out;
52
+ }
53
+ }
54
+ }
55
+
56
+ /// @requires {mixin} keyframes
57
+ @mixin bounce-in-right {
58
+ @include keyframes(bounce-in-right) {
59
+ 0% {
60
+ transform: translateX(600px);
61
+ animation-timing-function: ease-in;
62
+ opacity: 0;
63
+ }
64
+
65
+ 38% {
66
+ transform: translateX(0);
67
+ animation-timing-function: ease-out;
68
+ opacity: 1;
69
+ }
70
+
71
+ 55% {
72
+ transform: translateX(68px);
73
+ animation-timing-function: ease-in;
74
+ }
75
+
76
+ 72% {
77
+ transform: translateX(0);
78
+ animation-timing-function: ease-out;
79
+ }
80
+
81
+ 81% {
82
+ transform: translateX(32px);
83
+ animation-timing-function: ease-in;
84
+ }
85
+
86
+ 90% {
87
+ transform: translateX(0);
88
+ animation-timing-function: ease-out;
89
+ }
90
+
91
+ 95% {
92
+ transform: translateX(8px);
93
+ animation-timing-function: ease-in;
94
+ }
95
+
96
+ 100% {
97
+ transform: translateX(0);
98
+ animation-timing-function: ease-out;
99
+ }
100
+ }
101
+ }
102
+
103
+ /// @requires {mixin} keyframes
104
+ @mixin bounce-in-bottom {
105
+ @include keyframes(bounce-in-bottom) {
106
+ 0% {
107
+ transform: translateY(500px);
108
+ animation-timing-function: ease-in;
109
+ opacity: 0;
110
+ }
111
+
112
+ 38% {
113
+ transform: translateY(0);
114
+ animation-timing-function: ease-out;
115
+ opacity: 1;
116
+ }
117
+
118
+ 55% {
119
+ transform: translateY(65px);
120
+ animation-timing-function: ease-in;
121
+ }
122
+
123
+ 72% {
124
+ transform: translateY(0);
125
+ animation-timing-function: ease-out;
126
+ }
127
+
128
+ 81% {
129
+ transform: translateY(28px);
130
+ animation-timing-function: ease-in;
131
+ }
132
+
133
+ 90% {
134
+ transform: translateY(0);
135
+ animation-timing-function: ease-out;
136
+ }
137
+
138
+ 95% {
139
+ transform: translateY(8px);
140
+ animation-timing-function: ease-in;
141
+ }
142
+
143
+ 100% {
144
+ transform: translateY(0);
145
+ animation-timing-function: ease-out;
146
+ }
147
+ }
148
+ }
149
+
150
+ /// @requires {mixin} keyframes
151
+ @mixin bounce-in-left {
152
+ @include keyframes(bounce-in-left) {
153
+ 0% {
154
+ transform: translateX(-600px);
155
+ animation-timing-function: ease-in;
156
+ opacity: 0;
157
+ }
158
+
159
+ 38% {
160
+ transform: translateX(0);
161
+ animation-timing-function: ease-out;
162
+ opacity: 1;
163
+ }
164
+
165
+ 55% {
166
+ transform: translateX(-68px);
167
+ animation-timing-function: ease-in;
168
+ }
169
+
170
+ 72% {
171
+ transform: translateX(0);
172
+ animation-timing-function: ease-out;
173
+ }
174
+
175
+ 81% {
176
+ transform: translateX(-28px);
177
+ animation-timing-function: ease-in;
178
+ }
179
+
180
+ 90% {
181
+ transform: translateX(0);
182
+ animation-timing-function: ease-out;
183
+ }
184
+
185
+ 95% {
186
+ transform: translateX(-8px);
187
+ animation-timing-function: ease-in;
188
+ }
189
+
190
+ 100% {
191
+ transform: translateX(0);
192
+ animation-timing-function: ease-out;
193
+ }
194
+ }
195
+ }
196
+
197
+ /// @requires {mixin} keyframes
198
+ @mixin bounce-in-fwd {
199
+ @include keyframes(bounce-in-fwd) {
200
+ 0% {
201
+ transform: scale(0);
202
+ animation-timing-function: ease-in;
203
+ opacity: 0;
204
+ }
205
+
206
+ 38% {
207
+ transform: scale(1);
208
+ animation-timing-function: ease-out;
209
+ opacity: 1;
210
+ }
211
+
212
+ 55% {
213
+ transform: scale(.7);
214
+ animation-timing-function: ease-in;
215
+ }
216
+
217
+ 72% {
218
+ transform: scale(1);
219
+ animation-timing-function: ease-out;
220
+ }
221
+
222
+ 81% {
223
+ transform: scale(.84);
224
+ animation-timing-function: ease-in;
225
+ }
226
+
227
+ 89% {
228
+ transform: scale(1);
229
+ animation-timing-function: ease-out;
230
+ }
231
+
232
+ 95% {
233
+ transform: scale(.95);
234
+ animation-timing-function: ease-in;
235
+ }
236
+
237
+ 100% {
238
+ transform: scale(1);
239
+ animation-timing-function: ease-out;
240
+ }
241
+ }
242
+ }
243
+
244
+ /// @requires {mixin} keyframes
245
+ @mixin bounce-in-bck {
246
+ @include keyframes(bounce-in-bck) {
247
+ 0% {
248
+ transform: scale(7);
249
+ animation-timing-function: ease-in;
250
+ opacity: 0;
251
+ }
252
+
253
+ 38% {
254
+ transform: scale(1);
255
+ animation-timing-function: ease-out;
256
+ opacity: 1;
257
+ }
258
+
259
+ 55% {
260
+ transform: scale(1.5);
261
+ animation-timing-function: ease-in;
262
+ }
263
+
264
+ 72% {
265
+ transform: scale(1);
266
+ animation-timing-function: ease-out;
267
+ }
268
+
269
+ 81% {
270
+ transform: scale(1.24);
271
+ animation-timing-function: ease-in;
272
+ }
273
+
274
+ 89% {
275
+ transform: scale(1);
276
+ animation-timing-function: ease-out;
277
+ }
278
+
279
+ 95% {
280
+ transform: scale(1.04);
281
+ animation-timing-function: ease-in;
282
+ }
283
+
284
+ 100% {
285
+ transform: scale(1);
286
+ animation-timing-function: ease-out;
287
+ }
288
+ }
289
+ }
@@ -0,0 +1,170 @@
1
+ @use '../mixins' as *;
2
+
3
+ ////
4
+ /// @group animations
5
+ /// @access public
6
+ /// @author <a href="https://github.com/simeonoff" target="_blank">Simeon Simeonoff</a>
7
+ ////
8
+
9
+ /// @requires {mixin} keyframes
10
+ @mixin fade-in-bck {
11
+ @include keyframes(fade-in-bck) {
12
+ 0% {
13
+ transform: translateZ(80px);
14
+ opacity: 0;
15
+ }
16
+
17
+ 100% {
18
+ transform: translateZ(0);
19
+ opacity: 1;
20
+ }
21
+ }
22
+ }
23
+
24
+ /// @requires {mixin} keyframes
25
+ @mixin fade-in-bl {
26
+ @include keyframes(fade-in-bl) {
27
+ 0% {
28
+ transform: translateX(-50px) translateY(50px);
29
+ opacity: 0;
30
+ }
31
+
32
+ 100% {
33
+ transform: translateX(0) translateY(0);
34
+ opacity: 1;
35
+ }
36
+ }
37
+ }
38
+
39
+ /// @requires {mixin} keyframes
40
+ @mixin fade-in-bottom {
41
+ @include keyframes(fade-in-bottom) {
42
+ 0% {
43
+ transform: translateY(50px);
44
+ opacity: 0;
45
+ }
46
+
47
+ 100% {
48
+ transform: translateY(0);
49
+ opacity: 1;
50
+ }
51
+ }
52
+ }
53
+
54
+ /// @requires {mixin} keyframes
55
+ @mixin fade-in-br {
56
+ @include keyframes(fade-in-br) {
57
+ 0% {
58
+ transform: translateX(50px) translateY(50px);
59
+ opacity: 0;
60
+ }
61
+
62
+ 100% {
63
+ transform: translateX(0) translateY(0);
64
+ opacity: 1;
65
+ }
66
+ }
67
+ }
68
+
69
+ /// @requires {mixin} keyframes
70
+ @mixin fade-in-fwd {
71
+ @include keyframes(fade-in-fwd) {
72
+ 0% {
73
+ transform: translateZ(-80px);
74
+ opacity: 0;
75
+ }
76
+
77
+ 100% {
78
+ transform: translateZ(0);
79
+ opacity: 1;
80
+ }
81
+ }
82
+ }
83
+
84
+ /// @requires {mixin} keyframes
85
+ @mixin fade-in-left {
86
+ @include keyframes(fade-in-left) {
87
+ 0% {
88
+ transform: translateX(-50px);
89
+ opacity: 0;
90
+ }
91
+
92
+ 100% {
93
+ transform: translateX(0);
94
+ opacity: 1;
95
+ }
96
+ }
97
+ }
98
+
99
+ /// @requires {mixin} keyframes
100
+ @mixin fade-in-right {
101
+ @include keyframes(fade-in-right) {
102
+ 0% {
103
+ transform: translateX(50px);
104
+ opacity: 0;
105
+ }
106
+
107
+ 100% {
108
+ transform: translateX(0);
109
+ opacity: 1;
110
+ }
111
+ }
112
+ }
113
+
114
+ /// @requires {mixin} keyframes
115
+ @mixin fade-in-tl {
116
+ @include keyframes(fade-in-tl) {
117
+ 0% {
118
+ transform: translateX(-50px) translateY(-50px);
119
+ opacity: 0;
120
+ }
121
+
122
+ 100% {
123
+ transform: translateX(0) translateY(0);
124
+ opacity: 1;
125
+ }
126
+ }
127
+ }
128
+
129
+ /// @requires {mixin} keyframes
130
+ @mixin fade-in-top {
131
+ @include keyframes(fade-in-top) {
132
+ 0% {
133
+ transform: translateY(-50px);
134
+ opacity: 0;
135
+ }
136
+
137
+ 100% {
138
+ transform: translateY(0);
139
+ opacity: 1;
140
+ }
141
+ }
142
+ }
143
+
144
+ /// @requires {mixin} keyframes
145
+ @mixin fade-in-tr {
146
+ @include keyframes(fade-in-tr) {
147
+ 0% {
148
+ transform: translateX(50px) translateY(-50px);
149
+ opacity: 0;
150
+ }
151
+
152
+ 100% {
153
+ transform: translateX(0) translateY(0);
154
+ opacity: 1;
155
+ }
156
+ }
157
+ }
158
+
159
+ /// @requires {mixin} keyframes
160
+ @mixin fade-in {
161
+ @include keyframes(fade-in) {
162
+ 0% {
163
+ opacity: 0;
164
+ }
165
+
166
+ 100% {
167
+ opacity: 1;
168
+ }
169
+ }
170
+ }