rishabhsrao/voxel

View on GitHub
src/index.html

Summary

Maintainability
Test Coverage
<!doctype html>
<html class="voxel-no-js" lang="en">
<head>
  <meta charset="utf-8">
  <title>Voxel &mdash; A minimal theme</title>

  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="description" content="A minimal theme.">
  <meta name="viewport" content="width=device-width, initial-scale=1, minimal-ui">
  <link rel="apple-touch-icon" href="apple-touch-icon.png">

  <link rel="stylesheet" href="../dist/styles/index.css">

  <script src="scripts/libraries/modernizr.custom.js"></script>

  <!--
            ___
           / '_)   Voxel.
    .-^^^-/ /      Handcrafted with ♥.
 __/       /       github.com/rishabhsrao/voxel.
<__.|_|-|_|
  -->
</head>
<body>
  <main>
    <aside data-js="voxelDrawer" class="voxel-drawer">
      <header class="voxel-drawer__header">
        <a href="#" class="voxel-drawer__title">Voxel</a>
      </header>
      <div class="voxel-layout__content">
        <ol class="voxel-list  voxel-list--ordered">
          <li class="voxel-list__item">
            <p class="voxel-list__item__text">One</p>
            <ol class="voxel-list  voxel-list--ordered">
              <li class="voxel-list__item">
                <a href="javascript:;" class="voxel-list__item__link">One.One</a>
              </li>
              <li class="voxel-list__item">
                <a href="javascript:;" class="voxel-list__item__link  voxel-list__item__link--active">One.Two</a>
              </li>
              <li class="voxel-list__item">
                <a href="javascript:;" class="voxel-list__item__link">One.Three</a>
              </li>
            </ol>
          </li>
          <li class="voxel-list__item">
            <a href="javascript:;" class="voxel-list__item__link">Two</a>
          </li>
          <li class="voxel-list__item">
            <a href="javascript:;" class="voxel-list__item__link">Three</a>
          </li>
          <li class="voxel-list__item">
            <p class="voxel-list__item__text">Four</p>
            <ol class="voxel-list  voxel-list--ordered">
              <li class="voxel-list__item">
                <a href="javascript:;" class="voxel-list__item__link">Four.One</a>
              </li>
              <li class="voxel-list__item">
                <a href="javascript:;" class="voxel-list__item__link">Four.Two</a>
              </li>
              <li class="voxel-list__item">
                <a href="javascript:;" class="voxel-list__item__link">Four.Three</a>
              </li>
              <li class="voxel-list__item">
                <a href="javascript:;" class="voxel-list__item__link">Four.Four</a>
              </li>
            </ol>
          </li>
          <li class="voxel-list__item">
            <a href="javascript:;" class="voxel-list__item__link">Five</a>
          </li>
          <li class="voxel-list__item">
            <a href="javascript:;" class="voxel-list__item__link">Six</a>
          </li>
        </ol> <!-- /.voxel-list -->
      </div> <!-- /.voxel-layout__content -->
    </aside> <!-- /.voxel-drawer -->

    <header class="voxel-header">
      <a href="javascript:;" data-js="voxelDrawerToggle" class="voxel-drawer__toggle">&#8942;</a>
      <div class="voxel-layout__content">
        <a href="#" class="voxel-header__title" data-js="voxelDrawerHeaderTitle">Voxel <span class="voxel-header__title__sub">A minimal theme.</span></a>
      </div> <!-- /.voxel-layout__content -->
    </header> <!-- /.voxel-header -->

    <div class="voxel-layout__page" data-js="voxelDrawerPage">
      <div class="voxel-layout__content">
        <!--[if lt IE 9]>
          <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
        <![endif]-->

        <ul class="voxel-pills">
          <!-- Temporary usage of an `onclick` attribute. -->
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--red');" class="voxel-pill">red</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--pink');" class="voxel-pill">pink</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--purple');" class="voxel-pill">purple</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--deep-purple');" class="voxel-pill">deep-purple</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--indigo');" class="voxel-pill">indigo</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--blue');" class="voxel-pill">blue</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--light-blue');" class="voxel-pill">light-blue</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--cyan');" class="voxel-pill">cyan</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--teal');" class="voxel-pill">teal</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--green');" class="voxel-pill">green</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--light-green');" class="voxel-pill">light-green</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--lime');" class="voxel-pill">lime</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--yellow');" class="voxel-pill">yellow</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--amber');" class="voxel-pill">amber</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--orange');" class="voxel-pill">orange</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--deep-orange');" class="voxel-pill">deep-orange</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--brown');" class="voxel-pill">brown</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--gray');" class="voxel-pill">gray</a></li>
          <li class="voxel-pills__item"><a href="#" onclick="jQuery('body').removeClass().addClass('voxel-theme--blue-gray');" class="voxel-pill">blue-gray</a></li>
        </ul> <!-- /.voxel-pills -->

        <h1>Examples</h1>

        <blockquote cite="http://demo.getpoole.com/page2">
          <p>This example page contains a demo of all the supported HTML elements. You can also try the different color themes above.</p>
        </blockquote>

        <p>Cum sociis natoque penatibus et magnis <a href="#">dis parturient montes</a>, nascetur ridiculus mus. <em>Aenean eu leo quam.</em> Pellentesque ornare sem lacinia quam venenatis vestibulum. Sed posuere consectetur est at lobortis. Cras mattis consectetur purus sit amet fermentum.</p>

        <p>Etiam porta <strong>sem malesuada magna</strong> mollis euismod. Cras mattis consectetur purus sit amet fermentum. Aenean lacinia bibendum nulla sed consectetur.</p>

        <h2>Inline HTML elements</h2>

        <p>HTML defines a long list of available inline tags, a complete list of which can be found on the <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Element">Mozilla Developer Network</a>.</p>

        <ul>
          <li><strong>To bold text</strong>, use <code>&lt;strong&gt;</code>.</li>
          <li><em>To italicize text</em>, use <code>&lt;em&gt;</code>.</li>
          <li>Abbreviations, like <abbr title="HyperText Markup Language">HTML</abbr> should use <code>&lt;abbr&gt;</code>, with an optional <code>title</code> attribute for the full phrase.</li>
          <li>Citations, like <cite>— Issac Newton</cite>, should use <code>&lt;cite&gt;</code>.</li>
          <li><del>Deleted</del> text should use <code>&lt;del&gt;</code> and <ins>inserted</ins> text should use <code>&lt;ins&gt;</code>.</li>
          <li>Superscript <sup>text</sup> uses <code>&lt;sup&gt;</code> and subscript <sub>text</sub> uses <code>&lt;sub&gt;</code>.</li>
        </ul>

        <p>Most of these elements are styled by browsers with few modifications on our part.</p>

        <h2>Heading</h2>

        <p>Vivamus sagittis lacus vel augue rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.</p>

        <h3>Code</h3>

        <p>Cum sociis natoque penatibus et magnis dis <code>code element</code> montes, nascetur ridiculus mus.</p>

        <div class="voxel-code-snippet  voxel-code-snippet--js  syntax">
            <pre>
  <span class="c1">// Sample JavaScript. Courtesy https://highlightjs.org</span>
  <span class="kr">import</span> <span class="p">{</span><span class="nx">x</span><span class="p">,</span> <span class="nx">y</span><span class="p">}</span> <span class="nx">as</span> <span class="nx">p</span> <span class="nx">from</span> <span class="s1">'point'</span><span class="p">;</span>
  <span class="kr">const</span> <span class="nx">ANSWER</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>

  <span class="kr">class</span> <span class="nx">Car</span> <span class="kr">extends</span> <span class="nx">Vehicle</span> <span class="p">{</span>
    <span class="nx">constructor</span><span class="p">(</span><span class="nx">speed</span><span class="p">,</span> <span class="nx">cost</span><span class="p">)</span> <span class="p">{</span>
      <span class="kr">super</span><span class="p">(</span><span class="nx">speed</span><span class="p">);</span>

      <span class="kd">var</span> <span class="nx">c</span> <span class="o">=</span> <span class="nx">Symbol</span><span class="p">(</span><span class="s1">'cost'</span><span class="p">);</span>
      <span class="k">this</span><span class="p">[</span><span class="nx">c</span><span class="p">]</span> <span class="o">=</span> <span class="nx">cost</span><span class="p">;</span>

      <span class="k">this</span><span class="p">.</span><span class="nx">intro</span> <span class="o">=</span> <span class="err">`</span><span class="nx">This</span> <span class="nx">is</span> <span class="nx">a</span> <span class="nx">car</span> <span class="nx">runs</span> <span class="nx">at</span>
        <span class="nx">$</span><span class="p">{</span><span class="nx">speed</span><span class="p">}.</span><span class="err">`</span><span class="p">;</span>
    <span class="p">}</span>
  <span class="p">}</span>

  <span class="k">for</span> <span class="p">(</span><span class="kd">let</span> <span class="nx">num</span> <span class="nx">of</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">])</span> <span class="p">{</span>
    <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">num</span> <span class="o">+</span> <span class="mi">0</span><span class="nx">b111110111</span><span class="p">);</span>
  <span class="p">}</span>

  <span class="kd">function</span> <span class="nx">$initHighlight</span><span class="p">(</span><span class="nx">block</span><span class="p">,</span> <span class="nx">flags</span><span class="p">)</span> <span class="p">{</span>
    <span class="k">try</span> <span class="p">{</span>
      <span class="k">if</span> <span class="p">(</span><span class="nx">block</span><span class="p">.</span><span class="nx">className</span><span class="p">.</span><span class="nx">search</span><span class="p">(</span><span class="sr">/\bno\-highlight\b/</span><span class="p">)</span> <span class="o">!=</span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span>
        <span class="k">return</span> <span class="nx">processBlock</span><span class="p">(</span><span class="nx">block</span><span class="p">.</span><span class="kd">function</span><span class="p">,</span> <span class="kc">true</span><span class="p">,</span> <span class="mh">0x0F</span><span class="p">)</span> <span class="o">+</span> <span class="s1">' class=""'</span><span class="p">;</span>
    <span class="p">}</span> <span class="k">catch</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span>
      <span class="cm">/* handle exception */</span>
      <span class="kd">var</span> <span class="nx">e4x</span> <span class="o">=</span>
          <span class="o">&amp;</span><span class="nx">lt</span><span class="p">;</span><span class="nx">div</span><span class="o">&amp;</span><span class="nx">gt</span><span class="p">;</span><span class="nx">Example</span>
              <span class="o">&amp;</span><span class="nx">lt</span><span class="p">;</span><span class="nx">p</span><span class="o">&amp;</span><span class="nx">gt</span><span class="p">;</span><span class="mi">1234</span><span class="o">&amp;</span><span class="nx">lt</span><span class="p">;</span><span class="err">/p&amp;gt;&amp;lt;/div&amp;gt;;</span>
    <span class="p">}</span>
    <span class="k">for</span> <span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">/</span> <span class="mi">2</span><span class="p">;</span> <span class="nx">i</span> <span class="o">&amp;</span><span class="nx">lt</span><span class="p">;</span> <span class="nx">classes</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// "0 / 2" should not be parsed as regexp</span>
      <span class="k">if</span> <span class="p">(</span><span class="nx">checkCondition</span><span class="p">(</span><span class="nx">classes</span><span class="p">[</span><span class="nx">i</span><span class="p">])</span> <span class="o">===</span> <span class="kc">undefined</span><span class="p">)</span>
        <span class="k">return</span> <span class="sr">/\d+[\s/]/g</span><span class="p">;</span>
    <span class="p">}</span>
    <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nb">Array</span><span class="p">.</span><span class="nx">every</span><span class="p">(</span><span class="nx">classes</span><span class="p">,</span> <span class="nb">Boolean</span><span class="p">));</span>
  <span class="p">}</span>

  <span class="kr">export</span>  <span class="nx">$initHighlight</span><span class="p">;</span>
  </pre>
        </div>

        <div class="voxel-code-snippet  voxel-code-snippet--html  syntax">
          <pre><span class="cp">&lt;!doctype html&gt;</span>
<span class="nt">&lt;html</span> <span class="na">class=</span><span class="s">"no-js"</span> <span class="na">lang=</span><span class="s">"en"</span><span class="nt">&gt;</span>
<span class="nt">&lt;head&gt;</span>
  <span class="nt">&lt;meta</span> <span class="na">charset=</span><span class="s">"utf-8"</span><span class="nt">&gt;</span>
  <span class="nt">&lt;title&gt;</span>Voxel<span class="nt">&lt;/title&gt;</span>

  <span class="nt">&lt;meta</span> <span class="na">http-equiv=</span><span class="s">"X-UA-Compatible"</span> <span class="na">content=</span><span class="s">"IE=edge"</span><span class="nt">&gt;</span>
  <span class="nt">&lt;meta</span> <span class="na">name=</span><span class="s">"description"</span> <span class="na">content=</span><span class="s">"A minimal theme."</span><span class="nt">&gt;</span>
  <span class="nt">&lt;meta</span> <span class="na">name=</span><span class="s">"viewport"</span> <span class="na">content=</span><span class="s">"width=device-width, initial-scale=1, minimal-ui"</span><span class="nt">&gt;</span>
<span class="nt">&lt;/head&gt;</span>
<span class="nt">&lt;body&gt;</span>
<span class="c">&lt;!-- Content --&gt;</span>
<span class="nt">&lt;/body&gt;</span>
<span class="nt">&lt;/html&gt;</span>
          </pre>
        </div>

        <div class="voxel-code-snippet  voxel-code-snippet--jsx  syntax">
          <pre><span class="nt">&lt;HelloComponent</span> <span class="na">name=</span><span class="s">"Hello world"</span><span class="nt">&gt;&lt;/HelloComponent&gt;</span></pre>
        </div>

        <p>Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa.</p>

        <p>Vestibulum id ligula porta felis euismod semper. Nullam quis risus eget urna mollis ornare vel eu leo. Donec sed odio dui.</p>

        <p>Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec sed odio dui. Vestibulum id ligula porta felis euismod semper.</p>

        <h3>Lists</h3>

        <p>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>

        <h4>Unordered lists</h4>
        <ul>
          <li>Praesent commodo cursus magna, vel scelerisque nisl consectetur et.</li>
          <li>Donec id elit non mi porta gravida at eget metus.</li>
          <li>Nulla vitae elit libero, a pharetra augue.</li>
        </ul>

        <p>Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue.</p>

        <h4>Ordered lists</h4>
        <ol>
          <li>Vestibulum id ligula porta felis euismod semper.</li>
          <li>Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.</li>
          <li>Maecenas sed diam eget risus varius blandit sit amet non magna.</li>
        </ol>

        <p>Cras mattis consectetur purus sit amet fermentum. Sed posuere consectetur est at lobortis.</p>

        <h4>Definition lists</h4>
        <dl>
          <dt>HyperText Markup Language (HTML)</dt>
          <dd>The language used to describe and define the content of a Web page</dd>

          <dt>Cascading Style Sheets (CSS)</dt>
          <dd>Used to describe the appearance of Web content</dd>

          <dt>JavaScript (JS)</dt>
          <dd>The programming language used to build advanced Web sites and applications</dd>
        </dl>

        <p>Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Nullam quis risus eget urna mollis ornare vel eu leo.</p>

        <h3>Images</h3>

        <p>Quisque consequat sapien eget quam rhoncus, sit amet laoreet diam tempus. Aliquam aliquam metus erat, a pulvinar turpis suscipit at.</p>

        <img src="http://placehold.it/800x400" class="voxel-layout__image" alt="placeholder" title="Large example image">
        <img src="http://placehold.it/400x200" class="voxel-layout__image" alt="placeholder" title="Medium example image">
        <img src="http://placehold.it/200x200" class="voxel-layout__image" alt="placeholder" title="Small example image">

        <h3>Tables</h3>

        <p>Aenean lacinia bibendum nulla sed consectetur. Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>

        <table class="voxel-table">
          <thead>
            <tr>
              <th>Name</th>
              <th>Upvotes</th>
              <th>Downvotes</th>
            </tr>
          </thead>
          <tfoot>
            <tr>
              <td>Totals</td>
              <td>21</td>
              <td>23</td>
            </tr>
          </tfoot>
          <tbody>
            <tr>
              <td>Alice</td>
              <td>10</td>
              <td>11</td>
            </tr>
            <tr>
              <td>Bob</td>
              <td>4</td>
              <td>3</td>
            </tr>
            <tr>
              <td>Charlie</td>
              <td>7</td>
              <td>9</td>
            </tr>
          </tbody>
        </table>

        <p>Nullam id dolor id nibh ultricies vehicula ut id elit. Sed posuere consectetur est at lobortis. Nullam quis risus eget urna mollis ornare vel eu leo.</p>

        <hr>

        <footer>
          <p><small><a href="https://github.com/rishabhsrao/voxel">Voxel</a> &mdash; A minimal theme. Handcrafted with &hearts;.</small></p>
        </footer>
      </div> <!-- /.voxel-layout__content -->
    </div> <!-- /.voxel-layout__page -->
  </main> <!-- /#voxel -->

  <script src="../libraries/requirejs/require.js" data-main="scripts/index.js"></script>
</body>
</html>