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 | 
            +
            }
         |