index.html 3.72 KB
<!--
@license
Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
Code distributed by Google as part of the polymer project is also
subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
-->
<!doctype html>
<html>
<head>
  <title>paper-progress demo</title>

  <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1, user-scalable=yes">
  <meta name="mobile-web-app-capable" content="yes">
  <meta name="apple-mobile-web-app-capable" content="yes">

  <script src="../../webcomponentsjs/webcomponents-lite.js"></script>
  <link rel="import" href="../../paper-styles/color.html">
  <link rel="import" href="../../paper-styles/demo-pages.html">
  <link rel="import" href="../paper-progress.html">
  <link rel="import" href="../../paper-button/paper-button.html">

  <style is="custom-style">
    body {
      padding: 40px;
    }

    paper-progress {
      display: block;
      width: 100%;
      padding-top: 20px;
      padding-bottom: 20px;
    }

    paper-progress.blue {
      --paper-progress-active-color: var(--paper-light-blue-500);
      --paper-progress-secondary-color: var(--paper-light-blue-100);
    }

    paper-progress.red {
      --paper-progress-active-color: var(--paper-red-500);
      --paper-progress-secondary-color: var(--paper-red-100);
    }

    paper-progress.orange {
      --paper-progress-active-color: var(--paper-orange-500);
      --paper-progress-secondary-color: var(--paper-orange-100);
    }

    paper-progress.green {
      --paper-progress-active-color: var(--paper-light-green-500);
      --paper-progress-secondary-color: var(--paper-light-green-100);
    }
  </style>

</head>
<body unresolved>
  <div class="vertical-section-container">
    <h4>Progress bar</h4>
    <div class="vertical-section">
      <paper-progress></paper-progress>
      <paper-button raised onclick="startProgress();">Start</paper-button>
    </div>

    <h4>Indeterminate</h4>
    <div class="vertical-section">
      <paper-progress indeterminate></paper-progress><br>
      <paper-progress class="blue" indeterminate value="800" min="100" max="1000"></paper-progress><br>
    </div>

    <h4>Color</h4>
    <div class="vertical-section">
      <paper-progress value="40" class="blue"></paper-progress><br>
      <paper-progress value="800" min="100" max="1000" class="red"></paper-progress><br>
      <paper-progress value="40" class="orange"></paper-progress><br>
      <paper-progress value="200" max="200" class="green"></paper-progress><br>
      <paper-progress value="40" secondary-progress="80" class="blue"></paper-progress><br>
    </div>
  </div>

  <script>

    var progress = document.querySelector('paper-progress');
    var button = document.querySelector('paper-button');

    var repeat, maxRepeat = 5, animating = false;

    function nextProgress() {
      animating = true;
      if (progress.value < progress.max) {
        progress.value += (progress.step || 1);
      } else {
        if (++repeat >= maxRepeat) {
          animating = false;
          button.disabled = false;
          return;
        }
        progress.value = progress.min;
      }

      requestAnimationFrame(nextProgress);
    }

    function startProgress() {
      repeat = 0;
      progress.value = progress.min;
      button.disabled = true;
      if (!animating) {
        nextProgress();
      }
    }

    window.addEventListener('WebComponentsReady', function() {
      startProgress();
    });

  </script>

</body>
</html>