futuro 0.9.9 → 1.0.0
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.
- checksums.yaml +4 -4
- data/_includes/html/assign/site.liquid +1 -0
- data/_includes/html/page/content/loop/roller/assign.liquid +28 -0
- data/_includes/html/page/content/loop/roller/input.liquid +16 -0
- data/_includes/html/page/content/loop/roller/list.liquid +12 -0
- data/_includes/html/page/content/loop/roller/output.liquid +20 -0
- data/_includes/html/page/content/roller.liquid +12 -71
- data/_includes/html/search/loop.liquid +2 -1
- data/_sass/helpers/mixins/theme.scss +32 -8
- data/_sass/item/pie.scss +12 -3
- data/_sass/list/pie.scss +5 -1
- data/_sass/list/roller.scss +4 -0
- data/assets/js/footer/custom/1_Settings.js +13 -1
- data/assets/js/footer/custom/4_Roller.default.js +73 -0
- data/assets/js/footer/custom/4_Roller.morph.js +115 -0
- data/assets/js/footer/custom/4_Roller.snap.js +146 -0
- data/assets/js/footer/custom/{4_SmoothScroll.js → 4_Setup.scroll.js} +2 -2
- data/assets/js/footer/custom/5_Animate.chart.js +52 -0
- data/assets/js/footer/custom/5_Animate.number.js +28 -0
- data/assets/js/footer/custom/5_Animate.pies.js +74 -0
- data/assets/js/footer/custom/5_Respond.roller.js +46 -0
- data/assets/js/futuro.footer.custom.js +1 -1
- data/assets/js/futuro.header.custom.js +1 -1
- data/assets/js/header/custom/1_Settings.js +25 -2
- metadata +27 -18
- data/_includes/html/page/content/loop/roller/item.liquid +0 -47
- data/_includes/html/page/content/loop/roller.liquid +0 -6
- /data/assets/js/footer/custom/{2_CheckWidth.js → 2_Check.width.js} +0 -0
- /data/assets/js/footer/custom/{3_SetupBrowse.js → 3_Setup.browse.js} +0 -0
- /data/assets/js/footer/custom/{5_ActiveBook.js → 4_Setup.book.js} +0 -0
- /data/assets/js/footer/custom/{4_SetupHome.js → 4_Setup.home.js} +0 -0
- /data/assets/js/footer/custom/{4_SetupOverlays.js → 4_Setup.overlays.js} +0 -0
- /data/assets/js/footer/custom/{4_SetupSite.js → 4_Setup.site.js} +0 -0
- /data/assets/js/footer/custom/{4_StartBrowse.js → 4_Start.browse.js} +0 -0
- /data/assets/js/footer/custom/{5_AnimateScroller.js → 5_Animate.scroller.js} +0 -0
- /data/assets/js/footer/custom/{5_Artform.js → 5_Artform.header.js} +0 -0
- /data/assets/js/footer/custom/{5_RespondBrowse.js → 5_Respond.browse.js} +0 -0
- /data/assets/js/footer/custom/{5_SwitchButton.js → 5_Switch.button.js} +0 -0
- /data/assets/js/footer/custom/{5_SwitchFocus.js → 5_Switch.focus.js} +0 -0
- /data/assets/js/footer/custom/{5_UtilShare.js → 5_Util.share.js} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5d530d37ba776df440f2c666b767c2c3b3079944e7c1472989b566132d494f7b
|
4
|
+
data.tar.gz: 871c66b9d5a0f0711b7cd984ce67bf6d59ddb8a1b28c1fc9cba53fd918a42900
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bf01794aec599c6fc831dfdf634a55aaf9092abd452a1b2a1617549be9c78987cb004b421f65b0ccda87ef613bb76bc2f2f4b3e2598dec937d6e1e709f3bc68b
|
7
|
+
data.tar.gz: d1c979756e476f0a8c602990a3961b31bfbd2c761e0253672832ad42a4ff3fa12d516dc3d0c80f1ffc1348f11e5b833936cfd7c17c12a664b7a2638cdcd6da0b
|
@@ -14,6 +14,7 @@
|
|
14
14
|
{% assign ContentLoop = SiteContent | append : 'loop/' %}
|
15
15
|
{% assign LoopArtwork = ContentLoop | append : 'artwork/' %}
|
16
16
|
{% assign LoopForm = ContentLoop | append : 'form/' %}
|
17
|
+
{% assign LoopRoller = ContentLoop | append : 'roller/' %}
|
17
18
|
{% assign LoopHeader = ContentLoop | append : 'header/' %}
|
18
19
|
{% assign LoopScreen = ContentLoop | append : 'screen/' %}
|
19
20
|
{% assign LoopButton = ContentLoop | append : 'button/' %}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
|
2
|
+
{% assign RollerItems = 0 %}
|
3
|
+
|
4
|
+
{% assign RollerInline = false %}
|
5
|
+
|
6
|
+
{% assign RollerOutput = false %}
|
7
|
+
|
8
|
+
{% for item in include.loop %}
|
9
|
+
|
10
|
+
{% if item.inline %}
|
11
|
+
|
12
|
+
{% assign RollerInline = true %}
|
13
|
+
|
14
|
+
{% endif %}
|
15
|
+
|
16
|
+
{% if item.input %}
|
17
|
+
|
18
|
+
{% assign RollerItems = RollerItems | plus : 1 %}
|
19
|
+
|
20
|
+
{% endif %}
|
21
|
+
|
22
|
+
{% if item.output %}
|
23
|
+
|
24
|
+
{% assign RollerOutput = true %}
|
25
|
+
|
26
|
+
{% endif %}
|
27
|
+
|
28
|
+
{% endfor %}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
|
2
|
+
{% for item in include.loop %}
|
3
|
+
|
4
|
+
{% if item.input %}
|
5
|
+
|
6
|
+
{% assign RollerInput = item.input | replace : ' ','-' | downcase %}
|
7
|
+
|
8
|
+
<li class="item roller input {{ RollerInput | prepend : 'title-' }}">
|
9
|
+
|
10
|
+
{{ item.input }}
|
11
|
+
|
12
|
+
</li>
|
13
|
+
|
14
|
+
{% endif %}
|
15
|
+
|
16
|
+
{% endfor %}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
|
2
|
+
{% assign RollerPath = include.type | append : '.liquid' %}
|
3
|
+
|
4
|
+
<ul class="list roller {{ include.type }}
|
5
|
+
{{ RollerType | prepend : 'style-' }}
|
6
|
+
{{ PageChapter | prepend : 'chapter-' }}
|
7
|
+
{% if RollerInline %}{{ items | prepend : 'split-' }}{% endif %}">
|
8
|
+
|
9
|
+
{% include {{ LoopRoller | append : RollerPath }}
|
10
|
+
loop = include.loop %}
|
11
|
+
|
12
|
+
</ul>
|
@@ -0,0 +1,20 @@
|
|
1
|
+
|
2
|
+
{% for item in include.loop %}
|
3
|
+
|
4
|
+
{% if item.input %}
|
5
|
+
|
6
|
+
{% assign RollerLabel = item.input | replace : ' ','-' | downcase %}
|
7
|
+
|
8
|
+
{% endif %}
|
9
|
+
|
10
|
+
{% if item.output %}
|
11
|
+
|
12
|
+
<li class="item roller output {{ RollerLabel | prepend : 'title-' }}">
|
13
|
+
|
14
|
+
{{ item.output }}
|
15
|
+
|
16
|
+
</li>
|
17
|
+
|
18
|
+
{% endif %}
|
19
|
+
|
20
|
+
{% endfor %}
|
@@ -1,76 +1,17 @@
|
|
1
1
|
|
2
|
-
{%
|
3
|
-
|
4
|
-
{% assign output = false %}
|
2
|
+
{% include {{ LoopRoller | append : 'assign.liquid' }}
|
3
|
+
loop = page.roller.loop %}
|
5
4
|
|
6
|
-
{
|
5
|
+
{% assign RollerType = page.roller.type %}
|
7
6
|
|
8
|
-
|
7
|
+
{% include {{ LoopRoller | append : 'list.liquid' }}
|
8
|
+
loop = page.roller.loop
|
9
|
+
type = "input" %}
|
9
10
|
|
10
|
-
|
11
|
+
{% if RollerType == "default" %}
|
11
12
|
|
12
|
-
{
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
{%- endif -%}
|
19
|
-
|
20
|
-
{%- if item.output -%}
|
21
|
-
|
22
|
-
{% assign output = true %}
|
23
|
-
|
24
|
-
{%- endif -%}
|
25
|
-
|
26
|
-
{%- endfor -%}
|
27
|
-
|
28
|
-
<ul class="list roller input {{ PageChapter | prepend : 'chapter-' }}
|
29
|
-
{% if inline %}{{ items | prepend : 'split-' }}{% endif %}">
|
30
|
-
|
31
|
-
{%- for item in page.roller -%}
|
32
|
-
|
33
|
-
{%- if item.input -%}
|
34
|
-
|
35
|
-
{% assign label = item.input | replace : ' ','-' | downcase %}
|
36
|
-
|
37
|
-
<li class="item roller input {{ label | prepend : 'title-' }}">
|
38
|
-
|
39
|
-
{{ item.input }}
|
40
|
-
|
41
|
-
</li>
|
42
|
-
|
43
|
-
{%- endif -%}
|
44
|
-
|
45
|
-
{%- endfor -%}
|
46
|
-
|
47
|
-
</ul>
|
48
|
-
|
49
|
-
{%- if output -%}
|
50
|
-
|
51
|
-
<ul class="list roller output {{ PageChapter | prepend : 'chapter-' }}
|
52
|
-
{% if inline %}{{ items | prepend : 'split-' }}{% endif %}">
|
53
|
-
|
54
|
-
{%- for item in page.roller -%}
|
55
|
-
|
56
|
-
{%- if item.input -%}
|
57
|
-
|
58
|
-
{% assign label = item.input | replace : ' ','-' | downcase %}
|
59
|
-
|
60
|
-
{%- endif -%}
|
61
|
-
|
62
|
-
{%- if item.output -%}
|
63
|
-
|
64
|
-
<li class="item roller output {{ label | prepend : 'title-' }}">
|
65
|
-
|
66
|
-
{{ item.output }}
|
67
|
-
|
68
|
-
</li>
|
69
|
-
|
70
|
-
{%- endif -%}
|
71
|
-
|
72
|
-
{%- endfor -%}
|
73
|
-
|
74
|
-
</ul>
|
75
|
-
|
76
|
-
{%- endif -%}
|
13
|
+
{% include {{ LoopRoller | append : 'list.liquid' }}
|
14
|
+
loop = page.roller.loop
|
15
|
+
type = "output" %}
|
16
|
+
|
17
|
+
{% endif %}
|
@@ -7,10 +7,11 @@
|
|
7
7
|
{% assign shorturl = item.url | replace : '.html','' %}
|
8
8
|
{% assign longurl = longurl | replace : '/index','' %}
|
9
9
|
{% assign shorturl = shorturl | replace : '/index','' %}
|
10
|
+
{% assign chapter = item.chapter | replace : ' ','-' | downcase %}
|
10
11
|
|
11
12
|
{
|
12
13
|
"book" : "{{ item.collection }}",
|
13
|
-
"chapter" : "{{
|
14
|
+
"chapter" : "{{ chapter }}",
|
14
15
|
"title" : "{{ item.title }}",
|
15
16
|
"shorturl" : "{{ shorturl }}",
|
16
17
|
"longurl" : "{{ longurl }}"
|
@@ -9,13 +9,16 @@
|
|
9
9
|
color: setcolor($custom,dark);
|
10
10
|
}
|
11
11
|
|
12
|
+
// Used in Mindsets
|
12
13
|
@mixin ThemeMorph($name,$color) {
|
13
|
-
|
14
|
+
// find output path by dynamic class name
|
14
15
|
svg#morph path#output.#{$name} {
|
16
|
+
// set associated color for this class
|
15
17
|
stroke: $color;
|
16
18
|
}
|
17
19
|
}
|
18
20
|
|
21
|
+
// Used in Patterns
|
19
22
|
@mixin ThemeArtformHeader($name) {
|
20
23
|
|
21
24
|
.block.header.title-artform.tag-#{$name} {
|
@@ -40,6 +43,7 @@
|
|
40
43
|
}
|
41
44
|
}
|
42
45
|
|
46
|
+
// Used in Patterns
|
43
47
|
@mixin ThemeHeader($name,$col) {
|
44
48
|
|
45
49
|
.block.header.title-#{$name} {
|
@@ -64,6 +68,7 @@
|
|
64
68
|
}
|
65
69
|
}
|
66
70
|
|
71
|
+
// Used in Patterns
|
67
72
|
@mixin ThemeCheckbox($name,$col) {
|
68
73
|
.area.title-#{$name} {
|
69
74
|
|
@@ -75,6 +80,7 @@
|
|
75
80
|
}
|
76
81
|
}
|
77
82
|
|
83
|
+
// Used in Patterns
|
78
84
|
@mixin ThemeRadio($name,$col) {
|
79
85
|
.area.title-#{$name} {
|
80
86
|
|
@@ -93,6 +99,7 @@
|
|
93
99
|
}
|
94
100
|
}
|
95
101
|
|
102
|
+
// Used in Patterns
|
96
103
|
@mixin ThemeTextArea($name,$col) {
|
97
104
|
.area.title-#{$name} {
|
98
105
|
|
@@ -112,6 +119,7 @@
|
|
112
119
|
}
|
113
120
|
}
|
114
121
|
|
122
|
+
// Used in Patterns
|
115
123
|
@mixin ThemeSelect($name,$col) {
|
116
124
|
.area.title-#{$name} {
|
117
125
|
|
@@ -127,6 +135,7 @@
|
|
127
135
|
}
|
128
136
|
}
|
129
137
|
|
138
|
+
// Used in Patterns
|
130
139
|
@mixin ThemeList($name,$col) {
|
131
140
|
.area.title-#{$name} {
|
132
141
|
|
@@ -150,6 +159,7 @@
|
|
150
159
|
}
|
151
160
|
}
|
152
161
|
|
162
|
+
// Used in Patterns
|
153
163
|
@mixin ThemeText($name,$col) {
|
154
164
|
.area.title-#{$name} {
|
155
165
|
|
@@ -168,6 +178,7 @@
|
|
168
178
|
}
|
169
179
|
}
|
170
180
|
|
181
|
+
// Used in Patterns
|
171
182
|
@mixin ThemePassword($name,$col) {
|
172
183
|
.area.title-#{$name} {
|
173
184
|
.block.password-strength {
|
@@ -179,6 +190,7 @@
|
|
179
190
|
}
|
180
191
|
}
|
181
192
|
|
193
|
+
// Used in Patterns
|
182
194
|
@mixin ThemeMessage($name,$col) {
|
183
195
|
.area.title-#{$name} {
|
184
196
|
.block.message {
|
@@ -187,6 +199,7 @@
|
|
187
199
|
}
|
188
200
|
}
|
189
201
|
|
202
|
+
// Used in Patterns
|
190
203
|
@mixin ThemeCallout($name,$col) {
|
191
204
|
.area.title-#{$name} {
|
192
205
|
.block.title {
|
@@ -196,6 +209,7 @@
|
|
196
209
|
}
|
197
210
|
}
|
198
211
|
|
212
|
+
// Used in Patterns
|
199
213
|
@mixin ThemeAlert($name,$col) {
|
200
214
|
.area.title-#{$name} {
|
201
215
|
.block.form-alert {
|
@@ -206,6 +220,7 @@
|
|
206
220
|
}
|
207
221
|
}
|
208
222
|
|
223
|
+
// Used in Patterns
|
209
224
|
@mixin ThemeButton($name,$color) {
|
210
225
|
|
211
226
|
.area.title-#{$name} {
|
@@ -220,6 +235,7 @@
|
|
220
235
|
}
|
221
236
|
}
|
222
237
|
|
238
|
+
// Used globally
|
223
239
|
@mixin ThemeHome($name,$color){
|
224
240
|
// inherit theme color for the book cover
|
225
241
|
.link.book.#{$name} {
|
@@ -227,6 +243,7 @@
|
|
227
243
|
}
|
228
244
|
}
|
229
245
|
|
246
|
+
// Used globally
|
230
247
|
@mixin ThemeTopbar($name,$color) {
|
231
248
|
// inherit theme color for the topbar link
|
232
249
|
.link.navigation.#{$name} {
|
@@ -238,6 +255,7 @@
|
|
238
255
|
}
|
239
256
|
}
|
240
257
|
|
258
|
+
// Used globally
|
241
259
|
@mixin ThemeCover($name,$color,$left:false,$chapter:false) {
|
242
260
|
|
243
261
|
@if $chapter {
|
@@ -263,6 +281,7 @@
|
|
263
281
|
}
|
264
282
|
}
|
265
283
|
|
284
|
+
// Used globally
|
266
285
|
@mixin PageInfo($col,$right) {
|
267
286
|
|
268
287
|
.title.page-weight {
|
@@ -277,17 +296,20 @@
|
|
277
296
|
}
|
278
297
|
}
|
279
298
|
|
299
|
+
// Used in Mindsets
|
280
300
|
@mixin ThemeRollerInput($name,$col) {
|
281
301
|
background-color: rgba($col,10%);
|
282
302
|
color: $col;
|
283
303
|
}
|
284
304
|
|
305
|
+
// Used in Mindsets
|
285
306
|
@mixin ThemeRollerOutput($name,$col) {
|
286
307
|
background-color: rgba($col,10%);
|
287
308
|
border-color: rgba($col,20%);
|
288
309
|
color: $col;
|
289
310
|
}
|
290
311
|
|
312
|
+
// Used in Mindsets
|
291
313
|
@mixin ThemeRoller($name,$col,$chapter:false) {
|
292
314
|
|
293
315
|
@if $chapter {
|
@@ -325,6 +347,7 @@
|
|
325
347
|
}
|
326
348
|
}
|
327
349
|
|
350
|
+
// Used in Mindsets
|
328
351
|
@mixin ThemeChart($col) {
|
329
352
|
.block.chart-pcent-title {
|
330
353
|
color: $col;
|
@@ -335,6 +358,7 @@
|
|
335
358
|
}
|
336
359
|
}
|
337
360
|
|
361
|
+
// Used in Mindsets
|
338
362
|
@mixin ThemePages($name,$col,$right:false,$chapter:false) {
|
339
363
|
|
340
364
|
@if $chapter {
|
@@ -384,20 +408,20 @@
|
|
384
408
|
}
|
385
409
|
}
|
386
410
|
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
opacity: 1;
|
411
|
+
// Used in Mindsets
|
412
|
+
@mixin ThemeSnap($name,$color) {
|
413
|
+
svg.snap {
|
414
|
+
path.#{$name} {
|
415
|
+
fill: #{$color};
|
393
416
|
}
|
394
417
|
}
|
395
418
|
}
|
396
419
|
|
420
|
+
// Used everywhere
|
397
421
|
@mixin ThemeSearch($name,$col,$chapter:false) {
|
398
422
|
|
399
423
|
@if $chapter {
|
400
|
-
|
424
|
+
|
401
425
|
// Search Results
|
402
426
|
|
403
427
|
.block.results-entry.chapter-#{$name} {
|
data/_sass/item/pie.scss
CHANGED
@@ -1,15 +1,24 @@
|
|
1
1
|
|
2
|
-
|
2
|
+
%ItemPie {
|
3
3
|
text-align: center;
|
4
4
|
display: grid;
|
5
5
|
}
|
6
6
|
|
7
|
+
%ItemPieSnap {
|
8
|
+
@extend %ItemPie;
|
9
|
+
grid-row-gap: 15px;
|
10
|
+
font-size: 2.4rem;
|
11
|
+
}
|
12
|
+
|
13
|
+
.item.pie {
|
14
|
+
@extend %ItemPie;
|
15
|
+
}
|
16
|
+
|
7
17
|
.item.pie.style-spin {
|
8
18
|
grid-row-gap: 30px;
|
9
19
|
font-size: 2.8rem;
|
10
20
|
}
|
11
21
|
|
12
22
|
.item.pie.style-snap {
|
13
|
-
|
14
|
-
font-size: 2.4rem;
|
23
|
+
@extend %ItemPieSnap;
|
15
24
|
}
|
data/_sass/list/pie.scss
CHANGED
data/_sass/list/roller.scss
CHANGED
@@ -12,4 +12,16 @@ if ($("body").hasClass("type-home")) {
|
|
12
12
|
|
13
13
|
if (!Site.isTheme) {
|
14
14
|
Browse.able = $(".wrap.type-page").length;
|
15
|
-
}
|
15
|
+
}
|
16
|
+
|
17
|
+
const HandleClass = (e,state,name="active") => {
|
18
|
+
$(e).map((index,value) => {
|
19
|
+
if (state == "add") {
|
20
|
+
$(value).addClass(name);
|
21
|
+
} else if (state == "remove") {
|
22
|
+
$(value).removeClass(name);
|
23
|
+
} else if (state == "clear") {
|
24
|
+
$(value).removeClass();
|
25
|
+
}
|
26
|
+
});
|
27
|
+
}
|
@@ -0,0 +1,73 @@
|
|
1
|
+
|
2
|
+
Roller.default.over = (tl, input, value, output, index) => {
|
3
|
+
|
4
|
+
tl.pause();
|
5
|
+
|
6
|
+
input.map((index,value) => {
|
7
|
+
|
8
|
+
if ($(value).hasClass("active")) {
|
9
|
+
|
10
|
+
Save.input = value;
|
11
|
+
Save.index = index;
|
12
|
+
|
13
|
+
HandleClass([value,output[index]],'remove');
|
14
|
+
|
15
|
+
}
|
16
|
+
|
17
|
+
});
|
18
|
+
|
19
|
+
HandleClass([value,output[index]],'add');
|
20
|
+
|
21
|
+
}
|
22
|
+
|
23
|
+
Roller.default.out = (tl, input, output) => {
|
24
|
+
|
25
|
+
input.map((index,value) => {
|
26
|
+
|
27
|
+
if ($(value).hasClass("active")) {
|
28
|
+
|
29
|
+
HandleClass([value,output[index]],'remove');
|
30
|
+
|
31
|
+
}
|
32
|
+
|
33
|
+
});
|
34
|
+
|
35
|
+
HandleClass([Save.input,output[Save.index]],'add');
|
36
|
+
|
37
|
+
tl.play();
|
38
|
+
|
39
|
+
}
|
40
|
+
|
41
|
+
Roller.default.tl = (input, output) => {
|
42
|
+
|
43
|
+
let tl = gsap.timeline({ repeat : -1 });
|
44
|
+
|
45
|
+
input.map((index,value) => {
|
46
|
+
|
47
|
+
let live = "";
|
48
|
+
|
49
|
+
$(value.classList).map((index,value) => {
|
50
|
+
|
51
|
+
if (value.startsWith("title-")) { live = value.slice(6); }
|
52
|
+
|
53
|
+
});
|
54
|
+
|
55
|
+
tl
|
56
|
+
.call(HandleClass,[value,'add'])
|
57
|
+
.call(HandleClass,[output[index],'add'])
|
58
|
+
.call(HandleClass,[value,'remove'],"+=1")
|
59
|
+
.call(HandleClass,[output[index],'remove']);
|
60
|
+
|
61
|
+
$(value).hover(function(){
|
62
|
+
|
63
|
+
Roller.default.over(tl, input, value, output, index);
|
64
|
+
|
65
|
+
}, function() {
|
66
|
+
|
67
|
+
Roller.default.out(tl, input, output);
|
68
|
+
|
69
|
+
});
|
70
|
+
|
71
|
+
});
|
72
|
+
|
73
|
+
}
|
@@ -0,0 +1,115 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
Roller.morph.over = (tl, input, value, output, index, data, live) => {
|
4
|
+
|
5
|
+
tl.pause();
|
6
|
+
|
7
|
+
input.map((index,value)=>{
|
8
|
+
|
9
|
+
if ($(value).hasClass("active")) {
|
10
|
+
|
11
|
+
Save.input = value;
|
12
|
+
Save.index = index;
|
13
|
+
|
14
|
+
HandleClass(value,'remove');
|
15
|
+
|
16
|
+
}
|
17
|
+
|
18
|
+
});
|
19
|
+
|
20
|
+
HandleClass(output,'clear');
|
21
|
+
|
22
|
+
$(value.classList).map((index,value) => {
|
23
|
+
|
24
|
+
if (value.startsWith("title-")) { live = value.slice(6); }
|
25
|
+
|
26
|
+
});
|
27
|
+
|
28
|
+
data = `path#${live}`;
|
29
|
+
|
30
|
+
gsap.to(output,{
|
31
|
+
morphSVG : data,
|
32
|
+
duration : 0.3
|
33
|
+
});
|
34
|
+
|
35
|
+
HandleClass(value,'add');
|
36
|
+
|
37
|
+
HandleClass(output,'add',live);
|
38
|
+
|
39
|
+
}
|
40
|
+
|
41
|
+
Roller.morph.out = (tl, input, output, live, data) => {
|
42
|
+
|
43
|
+
input.map((index,value) => {
|
44
|
+
|
45
|
+
if ($(value).hasClass("active")) {
|
46
|
+
|
47
|
+
HandleClass(value,'remove');
|
48
|
+
|
49
|
+
}
|
50
|
+
|
51
|
+
});
|
52
|
+
|
53
|
+
HandleClass(output,'clear');
|
54
|
+
|
55
|
+
$(Save.input.classList).map((index,value) => {
|
56
|
+
|
57
|
+
if (value.startsWith("title-")) { live = value.slice(6); }
|
58
|
+
|
59
|
+
});
|
60
|
+
|
61
|
+
data = `path#${live}`;
|
62
|
+
|
63
|
+
gsap.to(output,{
|
64
|
+
morphSVG : data,
|
65
|
+
duration : 0.3
|
66
|
+
});
|
67
|
+
|
68
|
+
HandleClass(Save.input,'add');
|
69
|
+
|
70
|
+
HandleClass(output,'add',live);
|
71
|
+
|
72
|
+
tl.play();
|
73
|
+
|
74
|
+
}
|
75
|
+
|
76
|
+
Roller.morph.tl = (input, output) => {
|
77
|
+
|
78
|
+
let tl = gsap.timeline({ repeat : -1 }),
|
79
|
+
live = "",
|
80
|
+
data = "";
|
81
|
+
|
82
|
+
input.map((index,value) => {
|
83
|
+
|
84
|
+
$(value.classList).map((index,value) => {
|
85
|
+
|
86
|
+
if (value.startsWith("title-")) { live = value.slice(6); }
|
87
|
+
|
88
|
+
});
|
89
|
+
|
90
|
+
data = `path#${live}`;
|
91
|
+
|
92
|
+
tl
|
93
|
+
.call(HandleClass,[value,'add'])
|
94
|
+
.call(HandleClass,[output,'add',live])
|
95
|
+
.to(output,{
|
96
|
+
morphSVG : data,
|
97
|
+
duration : 0.3
|
98
|
+
})
|
99
|
+
.call(HandleClass,[value,'remove'],"+=1")
|
100
|
+
.call(HandleClass,[output,'remove',live])
|
101
|
+
;
|
102
|
+
|
103
|
+
$(value).hover(function(){
|
104
|
+
|
105
|
+
Roller.morph.over(tl, input, value, output, index, data, live);
|
106
|
+
|
107
|
+
}, function() {
|
108
|
+
|
109
|
+
Roller.morph.out(tl, input, output);
|
110
|
+
|
111
|
+
});
|
112
|
+
|
113
|
+
});
|
114
|
+
|
115
|
+
}
|