async_list.html 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <!--Import Google Icon Font-->
  5. <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
  6. <!--Import materialize.css-->
  7. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
  8. <!--Let browser know website is optimized for mobile-->
  9. <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
  10. <style>
  11. .flip-list-move {
  12. transition: transform 1s;
  13. }
  14. .flip-list-enter-active, .flip-list-leave-active {
  15. transition: all .2s;
  16. }
  17. .flip-list-enter, .flip-list-leave-to {
  18. opacity: 0;
  19. transform: translateX(30px);
  20. }
  21. .currency{
  22. font-weight: bold;
  23. white-space: nowrap;
  24. }
  25. .amount{
  26. text-align: end;
  27. width: 100%;
  28. font-family: "Roboto Mono", monospace;
  29. font-size:0.9rem;
  30. }
  31. .amount::before{
  32. content: "$ ";
  33. }
  34. </style>
  35. </head>
  36. <body>
  37. <div id="startDate" class="hide">{{date}}</div>
  38. <div id="app">
  39. <div class="row">
  40. <nav class="nav-extended">
  41. <div class="nav-wrapper blue-grey">
  42. <div class="col s12">
  43. <a class="brand-logo">Max app</a>
  44. </div>
  45. </div>
  46. </nav>
  47. </div>
  48. <div class="container">
  49. <form action="#">
  50. <p class="range-field">
  51. <label for="date">Select Date</label>
  52. <input type="text" id="date" v-model="date" class="datepicker">
  53. <input type="range" id="rangeDate" min="0" :max="maxRange" v-model="rangeDate" />
  54. </p>
  55. </form>
  56. <h4>Top 50 Cryptocurrency by market cap </h4>
  57. {% raw %}
  58. <transition-group name="flip-list" tag="div" class="row">
  59. <div class=" col xl2 l3 m4 s6" v-for="item,k in items" :key="item.name">
  60. <div class="card-panel blue-grey" @click="getChart(item.id)">
  61. <div class="white-text currency">{{k+1}}. {{ item.name }} : ${{ displayRoundedPrice(item.prices) }}</div>
  62. <div class="white-text amount">{{ Math.round(item.marketCap).toLocaleString() }}</div>
  63. </div>
  64. </div>
  65. </transition-group>
  66. {% endraw %}
  67. </div>
  68. </div>
  69. <!--JavaScript at end of body for optimized loading-->
  70. <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
  71. <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
  72. <script src="https://unpkg.com/dayjs@1.8.21/dayjs.min.js"></script>
  73. <script src="https://cdn.jsdelivr.net/npm/lodash@4.17.21/lodash.min.js"></script>
  74. <script src="https://unpkg.com/vue@next"></script>
  75. <script src="{{ url_for('static', filename='js/app.js')}}"></script>
  76. <script src="{{ url_for('static', filename='js/round.js')}}"></script>
  77. </body>
  78. </html>