futuro 1.0.9 → 1.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/html/assign/page.liquid +2 -1
  3. data/_includes/html/assign/site.liquid +30 -21
  4. data/_includes/html/layout/footer.liquid +5 -1
  5. data/_includes/html/overlay/browse/page.liquid +1 -1
  6. data/_includes/html/page/content/loop/screen/header.liquid +45 -2
  7. data/_includes/html/page/header.liquid +1 -2
  8. data/_includes/html/page/layout/home.liquid +17 -7
  9. data/_includes/html/page/topbar.liquid +28 -17
  10. data/_includes/html/page/topbar/navigation/link.liquid +22 -0
  11. data/_includes/svg/site/icon.liquid +39 -19
  12. data/_sass/area/topbar.scss +1 -1
  13. data/_sass/block/chart.scss +2 -1
  14. data/_sass/block/form/screen.scss +62 -29
  15. data/_sass/block/util.scss +3 -0
  16. data/_sass/futuro.core.scss +2 -0
  17. data/_sass/helpers/extends.scss +0 -17
  18. data/_sass/helpers/mixins/layout.scss +0 -1
  19. data/_sass/helpers/mixins/theme.scss +1 -3
  20. data/_sass/helpers/themes.scss +14 -13
  21. data/_sass/helpers/variables.scss +24 -244
  22. data/_sass/helpers/variables/colors.scss +290 -0
  23. data/_sass/link/book.scss +8 -6
  24. data/_sass/link/navigation.scss +11 -7
  25. data/_sass/title/book.scss +9 -0
  26. data/_sass/title/page.scss +2 -0
  27. data/_sass/title/type.scss +1 -0
  28. data/assets/js/footer/custom/1_Settings.js +5 -7
  29. data/assets/js/footer/custom/2_Check.width.js +5 -28
  30. data/assets/js/footer/custom/4_Setup.home.js +3 -1
  31. data/assets/js/footer/custom/4_Setup.overlays.js +35 -46
  32. data/assets/js/footer/custom/4_Start.browse.js +3 -67
  33. data/assets/js/footer/custom/5_Util.share.js +0 -75
  34. data/assets/js/footer/custom/5_WhatsOn.js +7 -7
  35. data/assets/js/footer/custom/5_respond.scroller.js +11 -0
  36. data/assets/js/footer/vendor/futuro/browsr.js +324 -0
  37. data/assets/js/footer/vendor/futuro/checkr.js +41 -0
  38. data/assets/js/footer/vendor/futuro/ovrly.js +102 -0
  39. data/assets/js/footer/vendor/{gsap-draw.js → gsap/draw.js} +0 -0
  40. data/assets/js/footer/vendor/{gsap-morph.js → gsap/morph.js} +0 -0
  41. data/assets/js/footer/vendor/{gsap-scramble.js → gsap/scramble.js} +0 -0
  42. data/assets/js/footer/vendor/gsap/scroll.js +11 -0
  43. data/assets/js/footer/vendor/{gsap-text.js → gsap/text.js} +0 -0
  44. data/assets/js/footer/vendor/{jquery.min.js → jquery.js} +0 -0
  45. data/assets/js/footer/vendor/{parsley.min.js → parsley.js} +0 -0
  46. data/assets/js/futuro.footer.custom.js +1 -1
  47. data/assets/js/futuro.footer.vendor.js +481 -314
  48. data/assets/js/futuro.header.legacy.js +4 -3
  49. data/assets/js/futuro.header.legacy.shopify.js +4 -3
  50. data/assets/js/futuro.header.vendor.js +4 -3
  51. data/assets/js/header/vendor/gsap.js +4 -3
  52. metadata +16 -15
  53. data/_includes/svg/site/book/orwell.svg +0 -1
  54. data/_includes/svg/site/book/woolf.svg +0 -1
  55. data/assets/js/footer/custom/3_Setup.browse.js +0 -298
  56. data/assets/js/footer/custom/5_Animate.scroller.js +0 -16
  57. data/assets/js/footer/custom/5_Respond.browse.js +0 -42
  58. data/assets/js/footer/vendor/scrollmagic-gsap.js +0 -310
  59. data/assets/js/footer/vendor/scrollmagic.js +0 -3
@@ -1,68 +1,4 @@
1
1
 
2
- Start.browse = () => {
3
-
4
- if (Book.url) {
5
-
6
- Browse.book.links.map((index,value)=>{
7
-
8
- Check.book.class(value);
9
-
10
- if (Browse.found.success) {
11
-
12
- gsap.set(value,BackgroundShade);
13
-
14
- }
15
-
16
- });
17
-
18
- Browse.chapter.books.map((index,value)=>{
19
-
20
- Check.book.class(value);
21
-
22
- if (Browse.found.success) {
23
-
24
- Browse.chapter.books.filter(index,value);
25
-
26
- } else {
27
-
28
- gsap.set(value,DisplayNone);
29
-
30
- }
31
-
32
- });
33
-
34
- Browse.page.books.map((index,value)=>{
35
-
36
- Check.book.class(value);
37
-
38
- if (Browse.found.success) {
39
-
40
- Browse.page.books.filter(index,value);
41
-
42
- } else {
43
-
44
- gsap.set(value,DisplayNone);
45
-
46
- }
47
-
48
- });
49
-
50
- } else {
51
-
52
- Browse.chapter.books.map((index,value)=>{
53
-
54
- Browse.chapter.books.filter(index,value);
55
-
56
- });
57
-
58
- Browse.page.books.map((index,value)=>{
59
-
60
- Browse.page.books.filter(index,value);
61
-
62
- });
63
-
64
- }
65
-
66
- }
67
-
68
- if (!Site.isTheme) { if (!Body.isHome) { if (Browse.able) { Start.browse(); } } }
2
+ if (!Site.isTheme && !Body.isHome && Browse.able) {
3
+ Browsr();
4
+ }
@@ -23,78 +23,3 @@ Util.share = function(ting) {
23
23
 
24
24
  Util.copy(getUrl);
25
25
  }
26
-
27
- // const UtilCopy = str => {
28
- // const el = document.createElement('textarea');
29
- // el.value = str;
30
- // document.body.appendChild(el);
31
- // el.select();
32
- // document.execCommand('copy');
33
- // document.body.removeChild(el);
34
- // }
35
-
36
- // // const UtilShare = e => {
37
- // // let ting = $(e.target).parents(Site.page.share),
38
- // // type = $(ting)[0].classList[2],
39
- // // url = $(ting).children(Site.page.url).text().replace('index',''),
40
- // // title = $(ting)[0].children[1],
41
- // // tl = gsap.timeline(),
42
- // // reset = '';
43
-
44
- // // console.log(e);
45
-
46
-
47
- // // if (type == 'page') {
48
- // // reset = 'Copy page';
49
- // // }
50
-
51
- // // UtilCopy(url);
52
-
53
- // // tl
54
- // // .set(title,{
55
- // // text : 'Copied!'
56
- // // })
57
- // // .to(title,{
58
- // // duration : 0.3,
59
- // // opacity : 0
60
- // // },'+=0.6')
61
- // // .set(title,{
62
- // // text : reset,
63
- // // clearProps : 'all'
64
- // // },'+=0.3');
65
- // // }
66
-
67
- // function UtilShare() {
68
- // let target = $(this).parents(Site.page.share),
69
- // getUrl = $(target.context).find(Site.page.url).text(),
70
- // tl = gsap.timeline(),
71
- // type = "";
72
- // getUrl = getUrl.replace("index","");
73
-
74
- // console.log("Util runs!");
75
-
76
-
77
- // $(target.context.classList).map((index,value)=>{
78
- // if (value.includes("type-")) {
79
- // type = value;
80
- // }
81
- // });
82
-
83
- // UtilCopy(getUrl);
84
-
85
- // // tl
86
- // // .set(title,{
87
- // // text : 'Copied!'
88
- // // })
89
- // // .to(title,{
90
- // // duration : 0.3,
91
- // // opacity : 0
92
- // // },'+=0.6')
93
- // // .set(title,{
94
- // // text : reset,
95
- // // clearProps : 'all'
96
- // // },'+=0.3');
97
-
98
- // }
99
-
100
- // // if (!Site.isTheme) { if (Site.isShareable) { $(Site.page.share).click(UtilShare); }}
@@ -2,17 +2,17 @@
2
2
  const WhatsOn = {
3
3
 
4
4
  speed : input => {
5
- return input * 0.03;
5
+ return input * 0.05;
6
6
  },
7
7
 
8
8
  slide : value => {
9
9
 
10
- let alert = $(".block.alert-content",value),
11
- feed = $(".alert-feed",value),
10
+ let alert = $(".screen-alert__wrap",value),
11
+ feed = $(".screen-alert__feed",value),
12
12
  width = $(feed).width() + 100,
13
- clone = $(".alert-clone",value);
13
+ clone = $(".screen-alert__clone",value);
14
14
 
15
- $(alert).addClass("modify-grid");
15
+ $(alert).addClass("modify-grid");
16
16
 
17
17
  const prep = gsap.timeline({ defaults : { ease : "none" }});
18
18
 
@@ -33,9 +33,9 @@ const WhatsOn = {
33
33
 
34
34
  scroll : value => {
35
35
 
36
- let feed = $(".feed",value),
36
+ let feed = $(".screen-event__feed",value),
37
37
  height = $(feed).height(),
38
- clone = $(".clone",value);
38
+ clone = $(".screen-event__clone",value);
39
39
 
40
40
  let tl = gsap.timeline({ repeat : -1, defaults : { ease : "none" }});
41
41
 
@@ -0,0 +1,11 @@
1
+ $(Site.scroller).map((_index, value) => {
2
+ gsap.to(value, {
3
+ scrollTrigger: {
4
+ trigger: ".block.stop#" + value.classList[2],
5
+ start: "+=80 center",
6
+ end: "+=280",
7
+ scrub: true,
8
+ },
9
+ opacity: 1,
10
+ });
11
+ });
@@ -0,0 +1,324 @@
1
+ (function (global, $) {
2
+ var Browsr = function (target) {
3
+ return new Browsr.init(target);
4
+ };
5
+
6
+ let library = false,
7
+ found = false,
8
+ book = {
9
+ found: false,
10
+ },
11
+ chapter = {
12
+ found: false,
13
+ },
14
+ page = {
15
+ found: false,
16
+ };
17
+
18
+ Browsr.prototype = {
19
+ match(value, type = "book") {
20
+ $(value.classList).map((_, value) => {
21
+ if (type == "book") {
22
+ if (value.startsWith(type + "-")) {
23
+ book.class = value;
24
+ }
25
+ } else if (type == "chapter") {
26
+ if (value.startsWith(type + "-")) {
27
+ chapter.class = value;
28
+ }
29
+ }
30
+ });
31
+ },
32
+ checkPage(value) {
33
+ found = false;
34
+ $(value.classList).map((_, value) => {
35
+ if (value.startsWith("page-")) {
36
+ if (page.class == value) {
37
+ found = true;
38
+ page.found = true;
39
+ }
40
+ }
41
+ });
42
+ },
43
+ checkChapter(value) {
44
+ found = false;
45
+ $(value.classList).map((_, value) => {
46
+ if (value.startsWith("chapter-")) {
47
+ if (chapter.class == value) {
48
+ found = true;
49
+ chapter.found = true;
50
+ }
51
+ }
52
+ });
53
+ },
54
+ checkBook(value) {
55
+ found = false;
56
+ $(value.classList).map((_, value) => {
57
+ if (value.startsWith("book-")) {
58
+ if (book.class == value) {
59
+ found = true;
60
+ book.found = true;
61
+ }
62
+ }
63
+ });
64
+ },
65
+ setPageUrl(index) {
66
+ if (!this.pathify()[index]) {
67
+ $(page.links[0].classList).map((_, value) => {
68
+ if (value.startsWith("page-")) {
69
+ page.url = value.slice(5);
70
+ }
71
+ });
72
+ } else {
73
+ page.url = this.pathify()[index];
74
+ }
75
+ },
76
+ setChapterUrl(index) {
77
+ if (!this.pathify()[index]) {
78
+ $(chapter.links[0].classList).map((_, value) => {
79
+ if (value.startsWith("chapter-")) {
80
+ chapter.url = value.slice(8);
81
+ }
82
+ });
83
+ } else {
84
+ chapter.url = this.pathify()[index];
85
+ }
86
+ },
87
+ nunify(value) {
88
+ gsap.set(value, { display: "none" });
89
+ },
90
+ shadify(value) {
91
+ gsap.set(value, { background: "rgba(0,0,0,0.05)" });
92
+ },
93
+ clearify(value, attr = "background") {
94
+ gsap.set(value, { clearProps: attr });
95
+ },
96
+ bookify(value) {
97
+ return $(".block.browse-book", ".wrap.browse-" + value);
98
+ },
99
+ linkify(value) {
100
+ return $(".link.browse-" + value, ".wrap.browse-" + value);
101
+ },
102
+ classify(value, type) {
103
+ return type + "-" + value;
104
+ },
105
+ pathify() {
106
+ return window.location.pathname.split("/").map((value) => {
107
+ if (value != "") {
108
+ return value;
109
+ }
110
+ });
111
+ },
112
+ setup() {
113
+ chapter.links = this.linkify("chapter");
114
+ page.links = this.linkify("page");
115
+ if (library) {
116
+ book.url = this.pathify()[1];
117
+ this.setChapterUrl(2);
118
+ this.setPageUrl(3);
119
+ book.links = this.linkify("book");
120
+ book.class = this.classify(book.url, "book");
121
+ } else {
122
+ this.setChapterUrl(1);
123
+ this.setPageUrl(2);
124
+ }
125
+ chapter.books = this.bookify("chapter");
126
+ chapter.class = this.classify(chapter.url, "chapter");
127
+ page.books = this.bookify("page");
128
+ page.class = this.classify(page.url, "page");
129
+ },
130
+ start() {
131
+ this.setup();
132
+
133
+ if (library) {
134
+ if (book.url) {
135
+ book.links.map((_, value) => {
136
+ this.checkBook(value);
137
+ if (found) {
138
+ this.shadify(value);
139
+ }
140
+ });
141
+ }
142
+ }
143
+
144
+ if (library) {
145
+ chapter.books.map((_, value) => {
146
+ this.checkBook(value);
147
+ if (found) {
148
+ chapter.books.map((_, value) => {
149
+ $(value.children).map((_, value) => {
150
+ this.checkChapter(value);
151
+ if (found) {
152
+ this.shadify(value);
153
+ }
154
+ });
155
+ });
156
+ } else {
157
+ this.nunify(value);
158
+ }
159
+ });
160
+ } else {
161
+ chapter.books.map((_, value) => {
162
+ $(value.children).map((_, value) => {
163
+ this.checkChapter(value);
164
+ if (found) {
165
+ this.shadify(value);
166
+ }
167
+ });
168
+ });
169
+ }
170
+
171
+ if (library) {
172
+ page.books.map((_, value) => {
173
+ this.checkBook(value);
174
+
175
+ if (found) {
176
+ page.books.map((_, value) => {
177
+ $(value.children).map((_, value) => {
178
+ this.checkChapter(value);
179
+
180
+ if (found) {
181
+ $(value.children).map((_, value) => {
182
+ this.checkPage(value);
183
+
184
+ if (found) {
185
+ this.shadify(value);
186
+ }
187
+ });
188
+ } else {
189
+ this.nunify(value);
190
+ }
191
+ });
192
+ });
193
+ } else {
194
+ this.nunify(value);
195
+ }
196
+ });
197
+ } else {
198
+ page.books.map((_, value) => {
199
+ $(value.children).map((_, value) => {
200
+ this.checkChapter(value);
201
+
202
+ if (found) {
203
+ $(value.children).map((_, value) => {
204
+ this.checkPage(value);
205
+
206
+ if (found) {
207
+ this.shadify(value);
208
+ }
209
+ });
210
+ } else {
211
+ this.nunify(value);
212
+ }
213
+ });
214
+ });
215
+ }
216
+
217
+ return this;
218
+ },
219
+ respond() {
220
+ if (library) {
221
+ book.links.hover((e) => {
222
+ this.match(e.target);
223
+ this.clearify(book.links);
224
+ this.shadify(e.target);
225
+
226
+ chapter.books.map((_, value) => {
227
+ this.nunify(value);
228
+ this.clearify(value.children);
229
+ this.checkBook(value);
230
+
231
+ if (found) {
232
+ this.clearify(value, "display");
233
+ this.shadify(value.children[0]);
234
+ }
235
+ });
236
+
237
+ page.books.map((_, value) => {
238
+ this.nunify(value);
239
+ this.checkBook(value);
240
+
241
+ if (found) {
242
+ this.clearify(value, "display");
243
+
244
+ $(value.children).map((index, value) => {
245
+ this.nunify(value);
246
+ this.clearify(value.children);
247
+
248
+ if (index == 0) {
249
+ this.clearify(value, "display");
250
+ this.shadify(value.children[0]);
251
+ }
252
+ });
253
+ }
254
+ });
255
+ });
256
+
257
+ chapter.links.hover((e) => {
258
+ this.match(e.target, "chapter");
259
+ this.clearify(chapter.links);
260
+ this.shadify(e.target);
261
+
262
+ page.books.map((_, value) => {
263
+ this.nunify(value);
264
+ this.checkBook(value);
265
+
266
+ if (found) {
267
+ this.clearify(value, "display");
268
+
269
+ $(value.children).map((_, value) => {
270
+ this.nunify(value);
271
+ this.clearify(value.children);
272
+ this.checkChapter(value);
273
+
274
+ if (found) {
275
+ this.clearify(value, "display");
276
+ this.shadify(value.children[0]);
277
+ }
278
+ });
279
+ }
280
+ });
281
+ });
282
+ page.links.hover((e) => {
283
+ this.clearify(page.links);
284
+ this.shadify(e.target);
285
+ });
286
+ } else {
287
+ chapter.links.hover((e) => {
288
+ this.match(e.target, "chapter");
289
+ this.clearify(chapter.links);
290
+ this.shadify(e.target);
291
+
292
+ page.books.map((_, value) => {
293
+ $(value.children).map((_, value) => {
294
+ this.nunify(value);
295
+ this.clearify(value.children);
296
+ this.checkChapter(value);
297
+
298
+ if (found) {
299
+ this.clearify(value, "display");
300
+ this.shadify(value.children[0]);
301
+ }
302
+ });
303
+ });
304
+ });
305
+ page.links.hover((e) => {
306
+ this.clearify(page.links);
307
+ this.shadify(e.target);
308
+ });
309
+ }
310
+
311
+ return this;
312
+ },
313
+ };
314
+
315
+ Browsr.init = function (target) {
316
+ var self = this;
317
+ self.target = target || document;
318
+ this.start().respond();
319
+ };
320
+
321
+ Browsr.init.prototype = Browsr.prototype;
322
+
323
+ global.Browsr = Browsr;
324
+ })(window, $);