Yansen 2 yıl önce
ebeveyn
işleme
2aca6cfa70
39 değiştirilmiş dosya ile 914 ekleme ve 203 silme
  1. BIN
      public/images/goback.png
  2. BIN
      public/images/pg2/1939年.png
  3. BIN
      public/images/pg2/cloud-left.png
  4. BIN
      public/images/pg2/cloud-right.png
  5. BIN
      public/images/pg2/content-bg.png
  6. BIN
      public/images/pg2/flower/1-1.png
  7. BIN
      public/images/pg2/flower/1-2.png
  8. BIN
      public/images/pg2/flower/1-3.png
  9. BIN
      public/images/pg2/flower/1-4.png
  10. BIN
      public/images/pg2/flower/右-小.png
  11. BIN
      public/images/pg2/flower/左-小.png
  12. BIN
      public/images/pg2/flower1.png
  13. BIN
      public/images/pg2/flower2.png
  14. BIN
      public/images/pg2/footer.png
  15. BIN
      public/images/pg2/mountain.png
  16. BIN
      public/images/pg2/persons.png
  17. BIN
      public/images/pg2/ruins-bak.png
  18. BIN
      public/images/pg2/ruins.png
  19. BIN
      public/images/pg2/stele.png
  20. BIN
      public/images/pg2/story.png
  21. BIN
      public/images/pg2/text1.png
  22. BIN
      public/images/pg2/text2.png
  23. BIN
      public/images/pg2/废墟.png
  24. BIN
      public/images/pg2/废墟color.png
  25. BIN
      public/images/pg2/箭头-右.png
  26. BIN
      public/images/pg4/beijing.png
  27. BIN
      public/images/pg4/播撒种子.png
  28. BIN
      public/images/pg4/重播.png
  29. 10
    19
      src/pages/pg1/Md1.vue
  30. 54
    0
      src/pages/pg1/Md2.vue
  31. 43
    0
      src/pages/pg1/Md3.vue
  32. 4
    2
      src/pages/pg1/index.vue
  33. 134
    127
      src/pages/pg2/index.vue
  34. 3
    2
      src/pages/pg4/Badge.vue
  35. 3
    2
      src/pages/pg4/Rule.vue
  36. 2
    2
      src/pages/pg4/index.vue
  37. 40
    0
      src/pages/pg4/plant.vue
  38. 57
    49
      src/pages/pg4/video.vue
  39. 564
    0
      yarn.lock

BIN
public/images/goback.png Dosyayı Görüntüle


BIN
public/images/pg2/1939年.png Dosyayı Görüntüle


BIN
public/images/pg2/cloud-left.png Dosyayı Görüntüle


BIN
public/images/pg2/cloud-right.png Dosyayı Görüntüle


BIN
public/images/pg2/content-bg.png Dosyayı Görüntüle


BIN
public/images/pg2/flower/1-1.png Dosyayı Görüntüle


BIN
public/images/pg2/flower/1-2.png Dosyayı Görüntüle


BIN
public/images/pg2/flower/1-3.png Dosyayı Görüntüle


BIN
public/images/pg2/flower/1-4.png Dosyayı Görüntüle


BIN
public/images/pg2/flower/右-小.png Dosyayı Görüntüle


BIN
public/images/pg2/flower/左-小.png Dosyayı Görüntüle


BIN
public/images/pg2/flower1.png Dosyayı Görüntüle


BIN
public/images/pg2/flower2.png Dosyayı Görüntüle


BIN
public/images/pg2/footer.png Dosyayı Görüntüle


BIN
public/images/pg2/mountain.png Dosyayı Görüntüle


BIN
public/images/pg2/persons.png Dosyayı Görüntüle


BIN
public/images/pg2/ruins-bak.png Dosyayı Görüntüle


BIN
public/images/pg2/ruins.png Dosyayı Görüntüle


BIN
public/images/pg2/stele.png Dosyayı Görüntüle


BIN
public/images/pg2/story.png Dosyayı Görüntüle


BIN
public/images/pg2/text1.png Dosyayı Görüntüle


BIN
public/images/pg2/text2.png Dosyayı Görüntüle


BIN
public/images/pg2/废墟.png Dosyayı Görüntüle


BIN
public/images/pg2/废墟color.png Dosyayı Görüntüle


BIN
public/images/pg2/箭头-右.png Dosyayı Görüntüle


BIN
public/images/pg4/beijing.png Dosyayı Görüntüle


BIN
public/images/pg4/播撒种子.png Dosyayı Görüntüle


BIN
public/images/pg4/重播.png Dosyayı Görüntüle


+ 10
- 19
src/pages/pg1/Md1.vue Dosyayı Görüntüle

@@ -1,20 +1,18 @@
1 1
 <template>
2 2
   <Modal>
3 3
     <div class="md1-box md-bg">
4
-      <img class="md1-bg" src="/images/pg1/2014.png" alt="">
5 4
       <div class="md1-header">
6 5
         <img src="/images/pg1/logo.png" alt="">
7 6
       </div>
8 7
       <div class="md1-context">
9
-        <p class="txt">
10
-          南京广电集团以“紫金草”为原型,<br />
11
-          制作紫金草徽章发放给市民。<br />
12
-          9年来,20万人加入“紫金草行动”,<br />
13
-          把紫金草徽章佩戴在离心脏最近的地方。
14
-        </p>
15
-        <img src="/images/pg1/md1-1.jpg" alt="">
16
-        <p class="txt" style="text-align: right">
17
-          在2亿人心中,和平的愿景被播撒。
8
+        <p class="txt animate__animated animate__fadeInUp" style="margin-top: 0">
9
+          紫金草已成为和平的语言 <br>
10
+          从南京向世界传递出和平的呼唤。<br>
11
+          中国、芬兰、土耳其、德国、英国、瑞士、美国、<br>
12
+          加拿大、日本、韩国、马拉西亚、澳大利亚、<br>
13
+          新西兰、新加坡,紫金草在14个国家被点亮,<br>
14
+          播撒和平的种子。<br>
15
+          近20万枚紫金草徽章佩戴在了人们的心口。
18 16
         </p>
19 17
       </div>
20 18
     </div>
@@ -32,14 +30,6 @@
32 30
   box-sizing: border-box;
33 31
   padding: 16px;
34 32
 
35
-  .md1-bg {
36
-    position: absolute;
37
-    top: 10px;
38
-    right: 5px;
39
-    width: 50px;
40
-    z-index: 0;
41
-  }
42
-
43 33
   .md1-header {
44 34
     box-sizing: border-box;
45 35
     width: 32vw;
@@ -47,8 +37,9 @@
47 37
 
48 38
   .md1-context {
49 39
     box-sizing: border-box;
50
-    padding-top: 60px;
40
+    padding-top: 20px;
51 41
     font-size: 12px;
42
+    text-align: center;
52 43
   }
53 44
 }
54 45
 </style>

+ 54
- 0
src/pages/pg1/Md2.vue Dosyayı Görüntüle

@@ -0,0 +1,54 @@
1
+<template>
2
+  <Modal>
3
+    <div class="md2-box md-bg">
4
+      <img class="md2-bg" src="/images/pg1/2014.png" alt="">
5
+      <div class="md2-header">
6
+        <img src="/images/pg1/logo.png" alt="">
7
+      </div>
8
+      <div class="md2-context">
9
+        <p class="txt animate__animated animate__fadeInDown">
10
+          南京广电集团以“紫金草”为原型,<br />
11
+          制作紫金草徽章发放给市民。<br />
12
+          9年来,20万人加入“紫金草行动”,<br />
13
+          把紫金草徽章佩戴在离心脏最近的地方。
14
+        </p>
15
+        <img class="animate__animated animate__fadeInDown" style="animation-delay: 300ms;" src="/images/pg1/md1-1.jpg" alt="">
16
+        <p class="txt animate__animated animate__fadeInDown" style="animation-delay: 600ms; text-align: right">
17
+          在2亿人心中,和平的愿景被播撒。
18
+        </p>
19
+      </div>
20
+    </div>
21
+  </Modal>
22
+</template>
23
+
24
+<script setup>
25
+  import Modal from '@/components/Modal.vue';
26
+</script>
27
+
28
+<style lang="less" scoped>
29
+.md2-box {
30
+  width: 80vw;
31
+  position: relative;
32
+  box-sizing: border-box;
33
+  padding: 16px;
34
+
35
+  .md2-bg {
36
+    position: absolute;
37
+    top: 10px;
38
+    right: 5px;
39
+    width: 50px;
40
+    z-index: 0;
41
+  }
42
+
43
+  .md2-header {
44
+    box-sizing: border-box;
45
+    width: 32vw;
46
+  }
47
+
48
+  .md2-context {
49
+    box-sizing: border-box;
50
+    padding-top: 60px;
51
+    font-size: 12px;
52
+  }
53
+}
54
+</style>

+ 43
- 0
src/pages/pg1/Md3.vue Dosyayı Görüntüle

@@ -0,0 +1,43 @@
1
+<template>
2
+  <Modal>
3
+    <div class="md3-box md-bg">
4
+      <div class="md3-header">
5
+        <img src="/images/pg1/logo.png" alt="">
6
+      </div>
7
+      <div class="md3-context">
8
+      </div>
9
+    </div>
10
+  </Modal>
11
+</template>
12
+
13
+<script setup>
14
+  import Modal from '@/components/Modal.vue';
15
+</script>
16
+
17
+<style lang="less" scoped>
18
+.md3-box {
19
+  width: 80vw;
20
+  position: relative;
21
+  box-sizing: border-box;
22
+  padding: 16px;
23
+
24
+  .md3-bg {
25
+    position: absolute;
26
+    top: 10px;
27
+    right: 5px;
28
+    width: 50px;
29
+    z-index: 0;
30
+  }
31
+
32
+  .md3-header {
33
+    box-sizing: border-box;
34
+    width: 32vw;
35
+  }
36
+
37
+  .md3-context {
38
+    box-sizing: border-box;
39
+    padding-top: 60px;
40
+    font-size: 12px;
41
+  }
42
+}
43
+</style>

+ 4
- 2
src/pages/pg1/index.vue Dosyayı Görüntüle

@@ -19,8 +19,8 @@
19 19
       <img src="/images/pg1/bg2.png" alt="" parallax-offset='-200'>
20 20
     </div>
21 21
     <Md1 v-if="mdActive == 1" @cancel="onCancel(1)" />
22
-    <Md1 v-if="mdActive == 2" @cancel="onCancel(2)" />
23
-    <Md1 v-if="mdActive == 3" @cancel="onCancel(3)" />
22
+    <Md2 v-if="mdActive == 2" @cancel="onCancel(2)" />
23
+    <Md3 v-if="mdActive == 3" @cancel="onCancel(3)" />
24 24
   </div>
25 25
 </template>
26 26
 
@@ -33,6 +33,8 @@
33 33
   import Part2 from './P2.vue';
34 34
   import Part3 from './P3.vue';
35 35
   import Md1 from './Md1.vue';
36
+  import Md2 from './Md2.vue';
37
+  import Md3 from './Md3.vue';
36 38
 
37 39
   const router = useRouter();
38 40
   const active = ref(1);

+ 134
- 127
src/pages/pg2/index.vue Dosyayı Görüntüle

@@ -1,120 +1,153 @@
1 1
 <template>
2 2
   <div class="page pg-bg pg2" parallax ref="pgRef">
3
-    <Cloud class="cloud abs" />
4
-    <div class="content txt">
5
-      <Animate comp="p" name="animate__lightSpeedInRight" delay="100ms" :ready="show">
6
-        1939年
7
-        <br />
8
-        <strong>一抹紫色</strong>在战争的废墟中……
9
-      </Animate>
10
-      <Animate
11
-        @click="onClick"
12
-        class="story"
13
-        comp="img"
14
-        name="animate__fadeInDown"
15
-        delay="600ms"
16
-        src="./images/pg2/story.png"
17
-        alt
18
-        :ready="show"
19
-      />
3
+    <div class="bg">
4
+      <div>
5
+        <Animate
6
+          comp="img"
7
+          name="animate__fadeInLeft"
8
+          src="/images/pg2/content-bg.png"
9
+          :ready="show"
10
+        />
11
+      </div>
20 12
     </div>
13
+    <div class="content">
14
+      <div>
15
+        <Animate
16
+          class="year"
17
+          comp="img"
18
+          name="animate__fadeIn"
19
+          src="/images/pg2/1939年.png"
20
+          delay="1000ms"
21
+          :ready="show"
22
+        />
23
+      </div>
24
+      <div>
25
+        <Animate
26
+          class="text1"
27
+          comp="img"
28
+          name="animate__fadeInUp"
29
+          src="/images/pg2/text1.png"
30
+          delay="2000ms"
31
+          :ready="show"
32
+        />
33
+      </div>
34
+      <div>
35
+        <Animate
36
+          class="text2"
37
+          comp="img"
38
+          name="animate__fadeIn"
39
+          src="/images/pg2/text2.png"
40
+          delay="3000ms"
41
+          :ready="show"
42
+        />
43
+      </div>
21 44
 
22
-    <div class="hill abs">
23
-      <img class src="/images/pg2/mountain.png" alt parallax-offset="-100" />
24 45
     </div>
25 46
 
26 47
     <div class="groups abs">
27 48
       <div>
28
-        <img class="stele" src="/images/pg2/stele.png" alt parallax-offset="-150" />
29
-        <div parallax-offset="-300">
30
-          <img class="ruins" src="/images/pg2/ruins.png" alt />
31
-          <!-- <Smoke class="smoke abs" /> -->
49
+        <div>
50
+          <img class="ruins" src="/images/pg2/废墟.png" alt />
32 51
         </div>
33
-        <img class="persons" src="/images/pg2/persons.png" alt parallax-offset="-500" />
52
+      </div>
53
+    </div>
54
+    <div class="flower1">
55
+      <div>
56
+        <img src="/images/pg2/flower1.png" alt="" />
34 57
       </div>
35 58
     </div>
36 59
 
37
-    <img class="footer abs" src="/images/pg2/footer.png" alt />
60
+    <div class="flower2">
61
+      <div>
62
+        <img src="/images/pg2/flower2.png" alt="" />
63
+      </div>
64
+    </div>
38 65
 
39
-    <div class="flower abs">
40
-      <Animate class="flower1 abs" :comp="Flower1" :name="flowerAnimate.left" :ready="show" />
41
-      <Animate class="flower2 abs" :comp="Flower2" :name="flowerAnimate.right" :ready="show" />
42
-      <Animate class="flower3 abs" :comp="Flower3" :name="flowerAnimate.left" :ready="show" />
66
+    <div class="footer txt">
67
+      了解故事
68
+      <img src="/images/pg2/箭头-右.png" alt />
43 69
     </div>
44 70
   </div>
45 71
 </template>
46 72
 
47 73
 <script setup>
48
-import { reactive, ref } from 'vue'
49
-import { useRouter } from 'vue-router'
50
-import Bell from '@/components/Bell.vue'
51
-import Animate from '@/components/Animate.vue'
52
-import Cloud from './Cloud.vue'
53
-import Smoke from './smoke.vue'
54
-import Flower1 from './flower/Flower1.vue'
55
-import Flower2 from './flower/Flower2.vue'
56
-import Flower3 from './flower/Flower3.vue'
57
-import usePageShow from '../usePageShow'
58
-
59
-const router = useRouter()
74
+import { reactive, ref } from "vue";
75
+import { useRouter } from "vue-router";
76
+import Bell from "@/components/Bell.vue";
77
+import Animate from "@/components/Animate.vue";
78
+import Cloud from "./Cloud.vue";
79
+import Smoke from "./smoke.vue";
80
+import Flower1 from "./flower/Flower1.vue";
81
+import Flower2 from "./flower/Flower2.vue";
82
+import Flower3 from "./flower/Flower3.vue";
83
+import usePageShow from "../usePageShow";
84
+
85
+const router = useRouter();
60 86
 
61 87
 const onClick = () => {
62
-  router.push(`/pg2-2`)
63
-}
88
+  router.push(`/pg2-2`);
89
+};
64 90
 
65 91
 const flowerAnimate = reactive({
66
-  left: '',
67
-  right: ''
68
-})
92
+  left: "",
93
+  right: "",
94
+});
69 95
 
70
-let lastRatio = 0
96
+let lastRatio = 0;
71 97
 const flowShow = ({ intersectionRatio }) => {
72
-  console.log(intersectionRatio)
73
-  const isIn = intersectionRatio > 0.5 && intersectionRatio > lastRatio
74
-  const isOut = intersectionRatio < 0.9 && intersectionRatio < lastRatio
98
+  console.log(intersectionRatio);
99
+  const isIn = intersectionRatio > 0.5 && intersectionRatio > lastRatio;
100
+  const isOut = intersectionRatio < 0.9 && intersectionRatio < lastRatio;
75 101
 
76 102
   if (isIn) {
77
-    flowerAnimate.left = 'animate__fadeInLeft'
78
-    flowerAnimate.right = 'animate__fadeInRight'
103
+    flowerAnimate.left = "animate__fadeInLeft";
104
+    flowerAnimate.right = "animate__fadeInRight";
79 105
   }
80 106
   if (isOut) {
81
-    flowerAnimate.left = 'animate__fadeOutLeft'
82
-    flowerAnimate.right = 'animate__fadeOutRight'
107
+    flowerAnimate.left = "animate__fadeOutLeft";
108
+    flowerAnimate.right = "animate__fadeOutRight";
83 109
   }
84 110
 
85
-  lastRatio = intersectionRatio
86
-}
111
+  lastRatio = intersectionRatio;
112
+};
87 113
 
88
-const [pgRef, show] = usePageShow(flowShow)
114
+const [pgRef, show] = usePageShow(flowShow);
89 115
 </script>
90 116
 
91 117
 <style lang="less" scoped>
92 118
 .pg2 {
93 119
   overflow: hidden;
94
-
95
-  .bell {
96
-    top: 30px;
97
-    right: 30px;
98
-  }
99
-
100
-  .cloud {
101
-    top: 0;
120
+  .bg {
121
+    position: absolute;
122
+    z-index: 0;
123
+    width: 50%;
102 124
     left: 0;
103
-    width: 100vw;
104
-  }
105
-
106
-  .hill {
107
-    top: 30vh;
108
-    z-index: 2;
125
+    top: 0;
126
+    & > div {
127
+      position: relative;
128
+    }
109 129
   }
110 130
 
111 131
   .content {
112 132
     z-index: 10;
113 133
     width: 80vw;
114
-    margin-left: 20vw;
134
+    margin-left: 15vw;
115 135
     padding-top: 80px;
116 136
     line-height: 2em;
117 137
 
138
+    .year {
139
+      margin-top: 40px;
140
+      width: 60%;
141
+    }
142
+
143
+    .text1 {
144
+      margin-top: 30px;
145
+      width: 30%;
146
+    }
147
+    .text2 {
148
+      margin-top: 30px;
149
+      width: 60%;
150
+    }
118 151
     .story {
119 152
       margin-top: 12px;
120 153
       width: 45%;
@@ -133,73 +166,47 @@ const [pgRef, show] = usePageShow(flowShow)
133 166
       position: relative;
134 167
     }
135 168
 
136
-    .persons {
137
-      z-index: 3;
138
-      position: absolute;
139
-      bottom: -50%;
140
-    }
141
-
142 169
     .ruins {
143 170
       z-index: 2;
144 171
       position: relative;
145 172
     }
146
-
147
-    .smoke {
148
-      bottom: 0;
149
-      left: 55%;
150
-      z-index: 0;
151
-      width: 100%;
152
-      background: transparent;
153
-    }
154
-
155
-    .stele {
156
-      position: absolute;
157
-      width: 40%;
158
-      right: 0;
159
-      top: -60%;
160
-    }
161 173
   }
162
-
163
-  .footer {
164
-    left: 0;
165
-    bottom: 0;
166
-  }
167
-
168
-  .flower {
169
-    bottom: 0;
170
-    left: 0;
171
-    width: 100%;
172
-    height: 50vh;
173
-    z-index: 4;
174
-    overflow: hidden;
175
-  }
176
-
177 174
   .flower1 {
178
-    left: 0;
179
-    bottom: 0;
175
+    position: absolute;
176
+    z-index: 20;
177
+    width: 50%;
178
+    left: 50px;
179
+    top: 500px;
180
+    & > div {
181
+      position: relative;
182
+    }
183
+    img {
184
+      width: 50px;
185
+    }
180 186
   }
181
-
182 187
   .flower2 {
183
-    width: 20vw;
188
+    position: absolute;
189
+    z-index: 20;
184 190
     right: 0;
185
-    bottom: 0;
191
+    top: 250px;
192
+    img {
193
+      width: 80px;
194
+    }
186 195
   }
187
-
188
-  .flower3 {
189
-    width: 20vw;
190
-    left: 20vw;
196
+  .footer {
197
+    left: 0;
191 198
     bottom: 0;
192
-  }
193
-
194
-  .hill,
195
-  .wall,
196
-  .flower {
199
+    position: absolute;
200
+    width: 100%;
201
+    text-align: center;
202
+    font-size: 24px;
197 203
     img {
198
-      width: 100%;
199
-      display: block;
200
-      position: relative;
201
-      z-index: 100;
204
+      width: 15px;
205
+      height: 25px;
206
+      display: inline;
207
+      width: auto;
208
+      vertical-align: text-bottom;
202 209
     }
203 210
   }
204 211
 }
205
-</style>
212
+</style>

+ 3
- 2
src/pages/pg4/Badge.vue Dosyayı Görüntüle

@@ -1,6 +1,6 @@
1 1
 <template>
2 2
   <Modal v-if="show" @cancel="emit('cancel')">
3
-    <div class="badge-wrapper pg-bg txt">
3
+    <div class="badge-wrapper md-bg txt">
4 4
       <div class="title">领取徽章</div>
5 5
       <div class="qrcode">
6 6
         <img src="/images/电视台二维码.png" alt="">
@@ -31,11 +31,12 @@
31 31
 <style lang="less" scoped>
32 32
 .badge-wrapper {
33 33
   width: 70vw;
34
-  border-radius: 16px;
34
+  border-radius: 6px;
35 35
   overflow: hidden;
36 36
   text-align: center;
37 37
   padding: 1em;
38 38
   box-sizing: border-box;
39
+  color: #5D4135;
39 40
 
40 41
   .title {
41 42
     font-size: 18px;

+ 3
- 2
src/pages/pg4/Rule.vue Dosyayı Görüntüle

@@ -1,6 +1,6 @@
1 1
 <template>
2 2
   <Modal v-if="show" @cancel="onCancel">
3
-    <div class="pg-bg txt modal-rule">
3
+    <div class="md-bg txt modal-rule">
4 4
       <h3>参与规则</h3>
5 5
       <ul>
6 6
         <li>选择要播撒的种子,并进行播种。</li>
@@ -27,8 +27,9 @@
27 27
   padding: 0 1em;
28 28
   width: 80vw;
29 29
   text-align: center;
30
-  border-radius: 16px;
30
+  border-radius: 6px;
31 31
   overflow: hidden;
32
+  color: #5D4135;
32 33
 
33 34
   h3 {
34 35
     font-size: 18px;

+ 2
- 2
src/pages/pg4/index.vue Dosyayı Görüntüle

@@ -1,9 +1,9 @@
1 1
 <template>
2 2
   <div class="page pg-bg pg4">
3
-    <Map @click="onMapClick" />
3
+    <!-- <Map @click="onMapClick" /> -->
4 4
     <Rule />
5 5
     <Flower
6
-      :show="flowerShow"
6
+      :show="!flowerShow"
7 7
       :country="countryRef"
8 8
       @planted="onPlanted"
9 9
       @cancel="flowerShow = false"

+ 40
- 0
src/pages/pg4/plant.vue Dosyayı Görüntüle

@@ -0,0 +1,40 @@
1
+<template>
2
+    <div class="page pg-bg pg4">
3
+     
4
+    </div>
5
+  </template>
6
+  
7
+  <script setup>
8
+    import { onMounted, ref, watch } from 'vue';
9
+    import { useRouter } from 'vue-router';
10
+    import Rule from './Rule.vue';
11
+    import Map from './Map.vue';
12
+    import Flower from './Flower.vue';
13
+    import Share from './Share.vue';
14
+    import Badge from './Badge.vue';
15
+  
16
+    const router = useRouter();
17
+    const countryRef = ref();
18
+    const flowerShow = ref();
19
+    const planted = ref(false);
20
+    const badgeShow = ref(false);
21
+  
22
+    const onMapClick = (country) => {
23
+      countryRef.value = country;
24
+      flowerShow.value = true;
25
+    }
26
+  
27
+    const onPlanted = () => {
28
+      planted.value = true;
29
+      flowerShow.value = false;
30
+    }
31
+  
32
+    const onShare = () => {
33
+      router.push('/share')
34
+    }
35
+  
36
+  </script>
37
+  
38
+  <style lang="less">
39
+
40
+  </style>

+ 57
- 49
src/pages/pg4/video.vue Dosyayı Görüntüle

@@ -1,69 +1,77 @@
1 1
 <template>
2 2
   <div class="page pg-bg video-pg">
3
-    <video
4
-      webkit-playsinline
5
-      playsinline
6
-      src="/video/和平宣言-视频-压缩.mp4"
7
-      preload="preload"
8
-      controls="controls"
9
-      ref="mediaRef"
10
-      @ended="show = true"
11
-    ></video>
12
-    <div class="play-action animate__animated animate__fadeIn" v-if="show">
13
-      <div class="btns">
14
-        <Btn front-color="#000" back-color="rgba(255,255,255, 1)" @click="onReplay">重播</Btn>
15
-        <Btn front-color="#000" back-color="rgba(255,255,255, 1)" style="margin-left: 24px" @click="onNext">下一步</Btn>
3
+    <div class="content">
4
+      <video
5
+        webkit-playsinline
6
+        playsinline
7
+        src="/video/和平宣言-视频-压缩.mp4"
8
+        preload="preload"
9
+        controls="controls"
10
+        ref="mediaRef"
11
+        @ended="show = true"
12
+      ></video>
13
+      <div class="play-action animate__animated animate__fadeIn" v-if="show">
14
+        <img src="/images/pg4/重播.png" @click="onReplay" alt="" />
15
+        <img src="/images/pg4/播撒种子.png" @click="onNext" alt="" />
16 16
       </div>
17 17
     </div>
18 18
   </div>
19 19
 </template>
20 20
 
21 21
 <script setup>
22
-  import { ref } from 'vue';
23
-  import { useRouter } from 'vue-router';
24
-  import Btn from '@/components/Btn.vue';
25
-  
26
-  const router = useRouter();
27
-  const mediaRef = ref();
28
-  const show = ref(false);
22
+import { ref } from "vue";
23
+import { useRouter } from "vue-router";
29 24
 
30
-  const onReplay = () => {
31
-    mediaRef.value.play();
32
-    show.value = false;
33
-  }
25
+const router = useRouter();
26
+const mediaRef = ref();
27
+const show = ref(false);
34 28
 
35
-  const onNext = () => {
36
-    router.push('/pg4/next')
37
-  }
29
+const onReplay = () => {
30
+  mediaRef.value.play();
31
+  show.value = false;
32
+};
33
+
34
+const onNext = () => {
35
+  router.push("/pg4/next");
36
+};
38 37
 </script>
39 38
 
40 39
 <style lang="less" scoped>
41 40
 .video-pg {
42 41
   position: relative;
43
-
44
-  video {
42
+  background-image: url("/images/pg4/beijing.png");
43
+  background-repeat: no-repeat;
44
+  background-size: 100% 100%;
45
+  display: flex;
46
+  align-items: center;
47
+  .content {
45 48
     position: relative;
46
-    width: 100%;
47
-    height: 100%;
48
-    z-index: 1;
49
-  }
50
-
51
-  .play-action {
52
-    position: absolute;
53
-    z-index: 2;
54
-    top: 0;
55
-
56
-    width: 100%;
57
-    height: 100%;
58
-    background: rgba(0, 0, 0, 0.5);
59
-
60
-    display: flex;
61
-    align-items: center;
62
-    justify-content: center;
63
-
64
-    .btns {
49
+    video {
50
+      width: 100%;
51
+      z-index: 1;
52
+    }
53
+    .play-action {
54
+      position: absolute;
55
+      z-index: 2;
56
+      bottom: -80px;
57
+      width: 100%;
58
+      height: 80px;
59
+      display: flex;
60
+      align-items: center;
61
+      justify-content: center;
65 62
 
63
+      img {
64
+        width: 100px;
65
+        width: 30vw;
66
+        height: 10vw;
67
+      }
68
+      img:first-child {
69
+        margin-right: 20px;
70
+      }
71
+      img:last-child {
72
+        margin-left: 20px;
73
+      }
66 74
     }
67 75
   }
68 76
 }
69
-</style>
77
+</style>

+ 564
- 0
yarn.lock Dosyayı Görüntüle

@@ -1,3 +1,4 @@
1
+<<<<<<< HEAD
1 2
 # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 3
 # yarn lockfile v1
3 4
 
@@ -681,3 +682,566 @@ vue@^3.2.37:
681 682
     "@vue/runtime-dom" "3.2.45"
682 683
     "@vue/server-renderer" "3.2.45"
683 684
     "@vue/shared" "3.2.45"
685
+=======
686
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
687
+# yarn lockfile v1
688
+
689
+
690
+"@babel/parser@^7.16.4":
691
+  "integrity" "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA=="
692
+  "resolved" "https://registry.npmmirror.com/@babel/parser/-/parser-7.20.5.tgz"
693
+  "version" "7.20.5"
694
+
695
+"@intlify/core-base@9.2.2":
696
+  "integrity" "sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA=="
697
+  "resolved" "https://registry.npmmirror.com/@intlify/core-base/-/core-base-9.2.2.tgz"
698
+  "version" "9.2.2"
699
+  dependencies:
700
+    "@intlify/devtools-if" "9.2.2"
701
+    "@intlify/message-compiler" "9.2.2"
702
+    "@intlify/shared" "9.2.2"
703
+    "@intlify/vue-devtools" "9.2.2"
704
+
705
+"@intlify/devtools-if@9.2.2":
706
+  "integrity" "sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg=="
707
+  "resolved" "https://registry.npmmirror.com/@intlify/devtools-if/-/devtools-if-9.2.2.tgz"
708
+  "version" "9.2.2"
709
+  dependencies:
710
+    "@intlify/shared" "9.2.2"
711
+
712
+"@intlify/message-compiler@9.2.2":
713
+  "integrity" "sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA=="
714
+  "resolved" "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-9.2.2.tgz"
715
+  "version" "9.2.2"
716
+  dependencies:
717
+    "@intlify/shared" "9.2.2"
718
+    "source-map" "0.6.1"
719
+
720
+"@intlify/shared@9.2.2":
721
+  "integrity" "sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q=="
722
+  "resolved" "https://registry.npmmirror.com/@intlify/shared/-/shared-9.2.2.tgz"
723
+  "version" "9.2.2"
724
+
725
+"@intlify/vue-devtools@9.2.2":
726
+  "integrity" "sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg=="
727
+  "resolved" "https://registry.npmmirror.com/@intlify/vue-devtools/-/vue-devtools-9.2.2.tgz"
728
+  "version" "9.2.2"
729
+  dependencies:
730
+    "@intlify/core-base" "9.2.2"
731
+    "@intlify/shared" "9.2.2"
732
+
733
+"@splidejs/splide@^4.1.4":
734
+  "integrity" "sha512-5I30evTJcAJQXt6vJ26g2xEkG+l1nXcpEw4xpKh0/FWQ8ozmAeTbtniVtVmz2sH1Es3vgfC4SS8B2X4o5JMptA=="
735
+  "resolved" "https://registry.npmmirror.com/@splidejs/splide/-/splide-4.1.4.tgz"
736
+  "version" "4.1.4"
737
+
738
+"@vitejs/plugin-vue@^3.0.3":
739
+  "integrity" "sha512-E0tnaL4fr+qkdCNxJ+Xd0yM31UwMkQje76fsDVBBUCoGOUPexu2VDUYHL8P4CwV+zMvWw6nlRw19OnRKmYAJpw=="
740
+  "resolved" "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-3.2.0.tgz"
741
+  "version" "3.2.0"
742
+
743
+"@vue/compiler-core@3.2.45":
744
+  "integrity" "sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A=="
745
+  "resolved" "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz"
746
+  "version" "3.2.45"
747
+  dependencies:
748
+    "@babel/parser" "^7.16.4"
749
+    "@vue/shared" "3.2.45"
750
+    "estree-walker" "^2.0.2"
751
+    "source-map" "^0.6.1"
752
+
753
+"@vue/compiler-dom@3.2.45":
754
+  "integrity" "sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw=="
755
+  "resolved" "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz"
756
+  "version" "3.2.45"
757
+  dependencies:
758
+    "@vue/compiler-core" "3.2.45"
759
+    "@vue/shared" "3.2.45"
760
+
761
+"@vue/compiler-sfc@3.2.45":
762
+  "integrity" "sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q=="
763
+  "resolved" "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz"
764
+  "version" "3.2.45"
765
+  dependencies:
766
+    "@babel/parser" "^7.16.4"
767
+    "@vue/compiler-core" "3.2.45"
768
+    "@vue/compiler-dom" "3.2.45"
769
+    "@vue/compiler-ssr" "3.2.45"
770
+    "@vue/reactivity-transform" "3.2.45"
771
+    "@vue/shared" "3.2.45"
772
+    "estree-walker" "^2.0.2"
773
+    "magic-string" "^0.25.7"
774
+    "postcss" "^8.1.10"
775
+    "source-map" "^0.6.1"
776
+
777
+"@vue/compiler-ssr@3.2.45":
778
+  "integrity" "sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ=="
779
+  "resolved" "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz"
780
+  "version" "3.2.45"
781
+  dependencies:
782
+    "@vue/compiler-dom" "3.2.45"
783
+    "@vue/shared" "3.2.45"
784
+
785
+"@vue/devtools-api@^6.2.1", "@vue/devtools-api@^6.4.5":
786
+  "integrity" "sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ=="
787
+  "resolved" "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.4.5.tgz"
788
+  "version" "6.4.5"
789
+
790
+"@vue/reactivity-transform@3.2.45":
791
+  "integrity" "sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ=="
792
+  "resolved" "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz"
793
+  "version" "3.2.45"
794
+  dependencies:
795
+    "@babel/parser" "^7.16.4"
796
+    "@vue/compiler-core" "3.2.45"
797
+    "@vue/shared" "3.2.45"
798
+    "estree-walker" "^2.0.2"
799
+    "magic-string" "^0.25.7"
800
+
801
+"@vue/reactivity@3.2.45":
802
+  "integrity" "sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A=="
803
+  "resolved" "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.45.tgz"
804
+  "version" "3.2.45"
805
+  dependencies:
806
+    "@vue/shared" "3.2.45"
807
+
808
+"@vue/runtime-core@3.2.45":
809
+  "integrity" "sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A=="
810
+  "resolved" "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz"
811
+  "version" "3.2.45"
812
+  dependencies:
813
+    "@vue/reactivity" "3.2.45"
814
+    "@vue/shared" "3.2.45"
815
+
816
+"@vue/runtime-dom@3.2.45":
817
+  "integrity" "sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA=="
818
+  "resolved" "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz"
819
+  "version" "3.2.45"
820
+  dependencies:
821
+    "@vue/runtime-core" "3.2.45"
822
+    "@vue/shared" "3.2.45"
823
+    "csstype" "^2.6.8"
824
+
825
+"@vue/server-renderer@3.2.45":
826
+  "integrity" "sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g=="
827
+  "resolved" "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz"
828
+  "version" "3.2.45"
829
+  dependencies:
830
+    "@vue/compiler-ssr" "3.2.45"
831
+    "@vue/shared" "3.2.45"
832
+
833
+"@vue/shared@3.2.45":
834
+  "integrity" "sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg=="
835
+  "resolved" "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.45.tgz"
836
+  "version" "3.2.45"
837
+
838
+"@zjxpcyc/vue-tiny-store@^1.0.1":
839
+  "integrity" "sha512-2r/E2bxGygn859ntWLHPDI+pLUR+MuIEPGSN82Y6xPdbQqcsmX1/+L+Pivh/LwFeEY51YcEDhPH8wkhzmtuD8g=="
840
+  "resolved" "https://registry.npmmirror.com/@zjxpcyc/vue-tiny-store/-/vue-tiny-store-1.0.1.tgz"
841
+  "version" "1.0.1"
842
+
843
+"animate.css@^4.1.1":
844
+  "integrity" "sha512-+mRmCTv6SbCmtYJCN4faJMNFVNN5EuCTTprDTAo7YzIGji2KADmakjVA3+8mVDkZ2Bf09vayB35lSQIex2+QaQ=="
845
+  "resolved" "https://registry.npmmirror.com/animate.css/-/animate.css-4.1.1.tgz"
846
+  "version" "4.1.1"
847
+
848
+"asynckit@^0.4.0":
849
+  "integrity" "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
850
+  "resolved" "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz"
851
+  "version" "0.4.0"
852
+
853
+"axios@^1.2.1":
854
+  "integrity" "sha512-I88cFiGu9ryt/tfVEi4kX2SITsvDddTajXTOFmt2uK1ZVA8LytjtdeyefdQWEf5PU8w+4SSJDoYnggflB5tW4A=="
855
+  "resolved" "https://registry.npmmirror.com/axios/-/axios-1.2.1.tgz"
856
+  "version" "1.2.1"
857
+  dependencies:
858
+    "follow-redirects" "^1.15.0"
859
+    "form-data" "^4.0.0"
860
+    "proxy-from-env" "^1.1.0"
861
+
862
+"base64-arraybuffer@^1.0.2":
863
+  "integrity" "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ=="
864
+  "resolved" "https://registry.npmmirror.com/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz"
865
+  "version" "1.0.2"
866
+
867
+"combined-stream@^1.0.8":
868
+  "integrity" "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="
869
+  "resolved" "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz"
870
+  "version" "1.0.8"
871
+  dependencies:
872
+    "delayed-stream" "~1.0.0"
873
+
874
+"copy-anything@^2.0.1":
875
+  "integrity" "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw=="
876
+  "resolved" "https://registry.npmmirror.com/copy-anything/-/copy-anything-2.0.6.tgz"
877
+  "version" "2.0.6"
878
+  dependencies:
879
+    "is-what" "^3.14.1"
880
+
881
+"css-line-break@^2.1.0":
882
+  "integrity" "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w=="
883
+  "resolved" "https://registry.npmmirror.com/css-line-break/-/css-line-break-2.1.0.tgz"
884
+  "version" "2.1.0"
885
+  dependencies:
886
+    "utrie" "^1.0.2"
887
+
888
+"csstype@^2.6.8":
889
+  "integrity" "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w=="
890
+  "resolved" "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz"
891
+  "version" "2.6.21"
892
+
893
+"debug@^3.2.6":
894
+  "integrity" "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ=="
895
+  "resolved" "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz"
896
+  "version" "3.2.7"
897
+  dependencies:
898
+    "ms" "^2.1.1"
899
+
900
+"delayed-stream@~1.0.0":
901
+  "integrity" "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
902
+  "resolved" "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz"
903
+  "version" "1.0.0"
904
+
905
+"errno@^0.1.1":
906
+  "integrity" "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A=="
907
+  "resolved" "https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz"
908
+  "version" "0.1.8"
909
+  dependencies:
910
+    "prr" "~1.0.1"
911
+
912
+"esbuild-windows-64@0.15.18":
913
+  "integrity" "sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw=="
914
+  "resolved" "https://registry.npmmirror.com/esbuild-windows-64/-/esbuild-windows-64-0.15.18.tgz"
915
+  "version" "0.15.18"
916
+
917
+"esbuild@^0.15.9":
918
+  "integrity" "sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q=="
919
+  "resolved" "https://registry.npmmirror.com/esbuild/-/esbuild-0.15.18.tgz"
920
+  "version" "0.15.18"
921
+  optionalDependencies:
922
+    "@esbuild/android-arm" "0.15.18"
923
+    "@esbuild/linux-loong64" "0.15.18"
924
+    "esbuild-android-64" "0.15.18"
925
+    "esbuild-android-arm64" "0.15.18"
926
+    "esbuild-darwin-64" "0.15.18"
927
+    "esbuild-darwin-arm64" "0.15.18"
928
+    "esbuild-freebsd-64" "0.15.18"
929
+    "esbuild-freebsd-arm64" "0.15.18"
930
+    "esbuild-linux-32" "0.15.18"
931
+    "esbuild-linux-64" "0.15.18"
932
+    "esbuild-linux-arm" "0.15.18"
933
+    "esbuild-linux-arm64" "0.15.18"
934
+    "esbuild-linux-mips64le" "0.15.18"
935
+    "esbuild-linux-ppc64le" "0.15.18"
936
+    "esbuild-linux-riscv64" "0.15.18"
937
+    "esbuild-linux-s390x" "0.15.18"
938
+    "esbuild-netbsd-64" "0.15.18"
939
+    "esbuild-openbsd-64" "0.15.18"
940
+    "esbuild-sunos-64" "0.15.18"
941
+    "esbuild-windows-32" "0.15.18"
942
+    "esbuild-windows-64" "0.15.18"
943
+    "esbuild-windows-arm64" "0.15.18"
944
+
945
+"estree-walker@^2.0.2":
946
+  "integrity" "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
947
+  "resolved" "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz"
948
+  "version" "2.0.2"
949
+
950
+"follow-redirects@^1.15.0":
951
+  "integrity" "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA=="
952
+  "resolved" "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.2.tgz"
953
+  "version" "1.15.2"
954
+
955
+"form-data@^4.0.0":
956
+  "integrity" "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww=="
957
+  "resolved" "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz"
958
+  "version" "4.0.0"
959
+  dependencies:
960
+    "asynckit" "^0.4.0"
961
+    "combined-stream" "^1.0.8"
962
+    "mime-types" "^2.1.12"
963
+
964
+"function-bind@^1.1.1":
965
+  "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
966
+  "resolved" "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz"
967
+  "version" "1.1.1"
968
+
969
+"graceful-fs@^4.1.2":
970
+  "integrity" "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA=="
971
+  "resolved" "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz"
972
+  "version" "4.2.10"
973
+
974
+"has@^1.0.3":
975
+  "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw=="
976
+  "resolved" "https://registry.npmmirror.com/has/-/has-1.0.3.tgz"
977
+  "version" "1.0.3"
978
+  dependencies:
979
+    "function-bind" "^1.1.1"
980
+
981
+"html2canvas@^1.4.1":
982
+  "integrity" "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA=="
983
+  "resolved" "https://registry.npmmirror.com/html2canvas/-/html2canvas-1.4.1.tgz"
984
+  "version" "1.4.1"
985
+  dependencies:
986
+    "css-line-break" "^2.1.0"
987
+    "text-segmentation" "^1.0.3"
988
+
989
+"iconv-lite@^0.6.3":
990
+  "integrity" "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw=="
991
+  "resolved" "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz"
992
+  "version" "0.6.3"
993
+  dependencies:
994
+    "safer-buffer" ">= 2.1.2 < 3.0.0"
995
+
996
+"image-size@~0.5.0":
997
+  "integrity" "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ=="
998
+  "resolved" "https://registry.npmmirror.com/image-size/-/image-size-0.5.5.tgz"
999
+  "version" "0.5.5"
1000
+
1001
+"is-core-module@^2.9.0":
1002
+  "integrity" "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw=="
1003
+  "resolved" "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.11.0.tgz"
1004
+  "version" "2.11.0"
1005
+  dependencies:
1006
+    "has" "^1.0.3"
1007
+
1008
+"is-what@^3.14.1":
1009
+  "integrity" "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA=="
1010
+  "resolved" "https://registry.npmmirror.com/is-what/-/is-what-3.14.1.tgz"
1011
+  "version" "3.14.1"
1012
+
1013
+"less@*", "less@^4.1.3":
1014
+  "integrity" "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA=="
1015
+  "resolved" "https://registry.npmmirror.com/less/-/less-4.1.3.tgz"
1016
+  "version" "4.1.3"
1017
+  dependencies:
1018
+    "copy-anything" "^2.0.1"
1019
+    "parse-node-version" "^1.0.1"
1020
+    "tslib" "^2.3.0"
1021
+  optionalDependencies:
1022
+    "errno" "^0.1.1"
1023
+    "graceful-fs" "^4.1.2"
1024
+    "image-size" "~0.5.0"
1025
+    "make-dir" "^2.1.0"
1026
+    "mime" "^1.4.1"
1027
+    "needle" "^3.1.0"
1028
+    "source-map" "~0.6.0"
1029
+
1030
+"lodash@^4.17.21":
1031
+  "integrity" "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
1032
+  "resolved" "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz"
1033
+  "version" "4.17.21"
1034
+
1035
+"magic-string@^0.25.7":
1036
+  "integrity" "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ=="
1037
+  "resolved" "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz"
1038
+  "version" "0.25.9"
1039
+  dependencies:
1040
+    "sourcemap-codec" "^1.4.8"
1041
+
1042
+"make-dir@^2.1.0":
1043
+  "integrity" "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA=="
1044
+  "resolved" "https://registry.npmmirror.com/make-dir/-/make-dir-2.1.0.tgz"
1045
+  "version" "2.1.0"
1046
+  dependencies:
1047
+    "pify" "^4.0.1"
1048
+    "semver" "^5.6.0"
1049
+
1050
+"mime-db@1.52.0":
1051
+  "integrity" "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
1052
+  "resolved" "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz"
1053
+  "version" "1.52.0"
1054
+
1055
+"mime-types@^2.1.12":
1056
+  "integrity" "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="
1057
+  "resolved" "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz"
1058
+  "version" "2.1.35"
1059
+  dependencies:
1060
+    "mime-db" "1.52.0"
1061
+
1062
+"mime@^1.4.1":
1063
+  "integrity" "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="
1064
+  "resolved" "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz"
1065
+  "version" "1.6.0"
1066
+
1067
+"ms@^2.1.1":
1068
+  "integrity" "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
1069
+  "resolved" "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
1070
+  "version" "2.1.3"
1071
+
1072
+"nanoid@^3.3.4":
1073
+  "integrity" "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw=="
1074
+  "resolved" "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz"
1075
+  "version" "3.3.4"
1076
+
1077
+"needle@^3.1.0":
1078
+  "integrity" "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ=="
1079
+  "resolved" "https://registry.npmmirror.com/needle/-/needle-3.2.0.tgz"
1080
+  "version" "3.2.0"
1081
+  dependencies:
1082
+    "debug" "^3.2.6"
1083
+    "iconv-lite" "^0.6.3"
1084
+    "sax" "^1.2.4"
1085
+
1086
+"parse-node-version@^1.0.1":
1087
+  "integrity" "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA=="
1088
+  "resolved" "https://registry.npmmirror.com/parse-node-version/-/parse-node-version-1.0.1.tgz"
1089
+  "version" "1.0.1"
1090
+
1091
+"path-parse@^1.0.7":
1092
+  "integrity" "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
1093
+  "resolved" "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz"
1094
+  "version" "1.0.7"
1095
+
1096
+"picocolors@^1.0.0":
1097
+  "integrity" "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
1098
+  "resolved" "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz"
1099
+  "version" "1.0.0"
1100
+
1101
+"pify@^4.0.1":
1102
+  "integrity" "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g=="
1103
+  "resolved" "https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz"
1104
+  "version" "4.0.1"
1105
+
1106
+"postcss@^8.1.10", "postcss@^8.4.18":
1107
+  "integrity" "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA=="
1108
+  "resolved" "https://registry.npmmirror.com/postcss/-/postcss-8.4.19.tgz"
1109
+  "version" "8.4.19"
1110
+  dependencies:
1111
+    "nanoid" "^3.3.4"
1112
+    "picocolors" "^1.0.0"
1113
+    "source-map-js" "^1.0.2"
1114
+
1115
+"proxy-from-env@^1.1.0":
1116
+  "integrity" "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="
1117
+  "resolved" "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz"
1118
+  "version" "1.1.0"
1119
+
1120
+"prr@~1.0.1":
1121
+  "integrity" "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw=="
1122
+  "resolved" "https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz"
1123
+  "version" "1.0.1"
1124
+
1125
+"resolve@^1.22.1":
1126
+  "integrity" "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw=="
1127
+  "resolved" "https://registry.npmmirror.com/resolve/-/resolve-1.22.1.tgz"
1128
+  "version" "1.22.1"
1129
+  dependencies:
1130
+    "is-core-module" "^2.9.0"
1131
+    "path-parse" "^1.0.7"
1132
+    "supports-preserve-symlinks-flag" "^1.0.0"
1133
+
1134
+"rollup@^2.79.1":
1135
+  "integrity" "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw=="
1136
+  "resolved" "https://registry.npmmirror.com/rollup/-/rollup-2.79.1.tgz"
1137
+  "version" "2.79.1"
1138
+  optionalDependencies:
1139
+    "fsevents" "~2.3.2"
1140
+
1141
+"safer-buffer@>= 2.1.2 < 3.0.0":
1142
+  "integrity" "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
1143
+  "resolved" "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz"
1144
+  "version" "2.1.2"
1145
+
1146
+"sax@^1.2.4":
1147
+  "integrity" "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
1148
+  "resolved" "https://registry.npmmirror.com/sax/-/sax-1.2.4.tgz"
1149
+  "version" "1.2.4"
1150
+
1151
+"semver@^5.6.0":
1152
+  "integrity" "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="
1153
+  "resolved" "https://registry.npmmirror.com/semver/-/semver-5.7.1.tgz"
1154
+  "version" "5.7.1"
1155
+
1156
+"source-map-js@^1.0.2":
1157
+  "integrity" "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
1158
+  "resolved" "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz"
1159
+  "version" "1.0.2"
1160
+
1161
+"source-map@^0.6.1", "source-map@~0.6.0", "source-map@0.6.1":
1162
+  "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
1163
+  "resolved" "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz"
1164
+  "version" "0.6.1"
1165
+
1166
+"sourcemap-codec@^1.4.8":
1167
+  "integrity" "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA=="
1168
+  "resolved" "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz"
1169
+  "version" "1.4.8"
1170
+
1171
+"supports-preserve-symlinks-flag@^1.0.0":
1172
+  "integrity" "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
1173
+  "resolved" "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
1174
+  "version" "1.0.0"
1175
+
1176
+"text-segmentation@^1.0.3":
1177
+  "integrity" "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw=="
1178
+  "resolved" "https://registry.npmmirror.com/text-segmentation/-/text-segmentation-1.0.3.tgz"
1179
+  "version" "1.0.3"
1180
+  dependencies:
1181
+    "utrie" "^1.0.2"
1182
+
1183
+"tslib@^2.3.0":
1184
+  "integrity" "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA=="
1185
+  "resolved" "https://registry.npmmirror.com/tslib/-/tslib-2.4.1.tgz"
1186
+  "version" "2.4.1"
1187
+
1188
+"utrie@^1.0.2":
1189
+  "integrity" "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw=="
1190
+  "resolved" "https://registry.npmmirror.com/utrie/-/utrie-1.0.2.tgz"
1191
+  "version" "1.0.2"
1192
+  dependencies:
1193
+    "base64-arraybuffer" "^1.0.2"
1194
+
1195
+"v-viewer@^3.0.10":
1196
+  "integrity" "sha512-E8LOdAxhzuktt4HB3PswVCccQ1Q1sYHYnLsS6zaJISpb5EvmAFs5sYNfXnDLFxVb5DQ82v4ZlGxkYlseXwWRJw=="
1197
+  "resolved" "https://registry.npmmirror.com/v-viewer/-/v-viewer-3.0.11.tgz"
1198
+  "version" "3.0.11"
1199
+  dependencies:
1200
+    "lodash" "^4.17.21"
1201
+    "viewerjs" "^1.9.0"
1202
+
1203
+"viewerjs@^1.9.0", "viewerjs@1.9.0":
1204
+  "integrity" "sha512-2D1OdGatb5aCZbZvaCdbJYuoDObjD9ITe7GZp0SoG7rgw3arOIZoIO1ygmfG+I4+RvEuDo+aZ75kNgwmYS9j3w=="
1205
+  "resolved" "https://registry.npmmirror.com/viewerjs/-/viewerjs-1.9.0.tgz"
1206
+  "version" "1.9.0"
1207
+
1208
+"vite@^3.0.0", "vite@^3.0.7":
1209
+  "integrity" "sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ=="
1210
+  "resolved" "https://registry.npmmirror.com/vite/-/vite-3.2.5.tgz"
1211
+  "version" "3.2.5"
1212
+  dependencies:
1213
+    "esbuild" "^0.15.9"
1214
+    "postcss" "^8.4.18"
1215
+    "resolve" "^1.22.1"
1216
+    "rollup" "^2.79.1"
1217
+  optionalDependencies:
1218
+    "fsevents" "~2.3.2"
1219
+
1220
+"vue-i18n@9":
1221
+  "integrity" "sha512-yswpwtj89rTBhegUAv9Mu37LNznyu3NpyLQmozF3i1hYOhwpG8RjcjIFIIfnu+2MDZJGSZPXaKWvnQA71Yv9TQ=="
1222
+  "resolved" "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-9.2.2.tgz"
1223
+  "version" "9.2.2"
1224
+  dependencies:
1225
+    "@intlify/core-base" "9.2.2"
1226
+    "@intlify/shared" "9.2.2"
1227
+    "@intlify/vue-devtools" "9.2.2"
1228
+    "@vue/devtools-api" "^6.2.1"
1229
+
1230
+"vue-router@4":
1231
+  "integrity" "sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ=="
1232
+  "resolved" "https://registry.npmmirror.com/vue-router/-/vue-router-4.1.6.tgz"
1233
+  "version" "4.1.6"
1234
+  dependencies:
1235
+    "@vue/devtools-api" "^6.4.5"
1236
+
1237
+"vue@^3.0.0", "vue@^3.2.0", "vue@^3.2.25", "vue@^3.2.37", "vue@3.2.45":
1238
+  "integrity" "sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA=="
1239
+  "resolved" "https://registry.npmmirror.com/vue/-/vue-3.2.45.tgz"
1240
+  "version" "3.2.45"
1241
+  dependencies:
1242
+    "@vue/compiler-dom" "3.2.45"
1243
+    "@vue/compiler-sfc" "3.2.45"
1244
+    "@vue/runtime-dom" "3.2.45"
1245
+    "@vue/server-renderer" "3.2.45"
1246
+    "@vue/shared" "3.2.45"
1247
+>>>>>>> 34b60564331784524cea47ea3f8b56fc2498b550