udxcms 1.0.2 → 1.0.4

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.
@@ -0,0 +1,245 @@
1
+ <template>
2
+ <div class='team'>
3
+ <div class="visible-pc">
4
+ <Header :showMiddleInfo="true" />
5
+ </div>
6
+ <div class="visible-h5">
7
+ <Top class="top" />
8
+ </div>
9
+ <div>
10
+ <div class='team-content'>
11
+ <div class='top'>
12
+ <div class='top-title'>Our Team</div>
13
+ </div>
14
+ <div class='item-list-box'>
15
+ <div class='item'>
16
+ <div class='head'>
17
+ <img :src="aboutConfig.team_logo_1"/>
18
+ <div class='name'>{{$t('cms_about_team_user1_name')}}</div>
19
+ </div>
20
+ <div class='description'>
21
+ {{$t('cms_about_team_user1_description')}}
22
+ </div>
23
+ </div>
24
+ <div class='item item-left'>
25
+ <div class='description'>{{$t('cms_about_team_user2_description')}}</div>
26
+ <div class='head'>
27
+ <img :src="aboutConfig.team_logo_2">
28
+ <div class='name'>{{$t('cms_about_team_user2_name')}}</div>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ <div class='mission-box'>
33
+ <div class='msg'>
34
+ <div class='title'>{{$t('cms_about_team_item1_title')}}</div>
35
+ <div class='desc'>{{$t('cms_about_team_item1_content')}}</div>
36
+ </div>
37
+ <div class='mission-bg'></div>
38
+ </div>
39
+ <div class='putting'>
40
+ <div class='msg'>
41
+ <div class='content'>
42
+ <div class='title'>
43
+ {{$t('cms_about_team_item2_title')}}
44
+ </div>
45
+ <div class='desc'>
46
+ {{$t('cms_about_team_item2_content')}}
47
+ </div>
48
+ </div>
49
+ </div>
50
+ <div class='img'>
51
+ <img src="../../assets/component_img/putting.png" alt="" />
52
+ </div>
53
+ </div>
54
+ </div>
55
+ <Footer />
56
+ </div>
57
+ </div>
58
+ </template>
59
+
60
+ <script>
61
+ export default {
62
+ name: 'team',
63
+ computed: {
64
+ aboutConfig() {
65
+ return this.$store.state.theme?.common?.common_conf?.aboutConfig;
66
+ }
67
+ }
68
+ }
69
+ </script>
70
+
71
+ <style lang="less" scoped>
72
+ .team-content {
73
+ background: white;
74
+ .top {
75
+ height: 120px;
76
+ background: url('../../assets/component_img/about-team-bg2.png');
77
+ background-size: contain;
78
+ background-repeat: no-repeat;
79
+ line-height: 120px;
80
+ text-align: center;
81
+ font-size: 40px;
82
+ font-family: FontBold;
83
+ color: white;
84
+ }
85
+ .item-list-box {
86
+ padding: 60px 30px 80px 30px;
87
+ .item {
88
+ display: grid;
89
+ gap: 30px;
90
+ grid-template-columns: 80px 1fr;
91
+ &:not(:last-child) {
92
+ margin-bottom: 80px;
93
+ }
94
+ &.item-left {
95
+ grid-template-columns: 1fr 80px;
96
+ }
97
+ .head {
98
+ width: 80px;
99
+ img {
100
+ width: 80px;
101
+ height: 80px;
102
+ border-radius: 50%;
103
+ }
104
+ .name {
105
+ margin-top: 18px;
106
+ text-align: center;
107
+ font-size: 14px;
108
+ color: #000000;
109
+ white-space: nowrap;
110
+ }
111
+ }
112
+ .description {
113
+ flex: 1;
114
+ height: 100%;
115
+ display: flex;
116
+ align-items: center;
117
+ font-size: 16px;
118
+ color:#4F4F4F;
119
+ line-height: 24px;
120
+ }
121
+ }
122
+ }
123
+ .mission-box {
124
+ padding: 0 30px 80px 30px;
125
+ text-align: center;
126
+ .msg {
127
+ .title {
128
+ font-family: FontSemiBold;
129
+ color: var(--text-color);
130
+ font-size: 40px;
131
+ line-height: 48px;
132
+ }
133
+ .desc {
134
+ display: inline-block;
135
+ width: 550px;
136
+ max-width: 100%;
137
+ margin: auto 0;
138
+ margin-top: 24px;
139
+ font-size: 16px;
140
+ line-height: 24px;
141
+ color: #4F4F4F;
142
+ }
143
+ }
144
+ .mission-bg {
145
+ margin-top: 64px;
146
+ height: 130px;
147
+ background: url('../../assets/component_img/mission-bg.png');
148
+ background-size: cover;
149
+ background-repeat: no-repeat;
150
+ }
151
+ }
152
+ .putting {
153
+ padding: 20px 30px 80px 30px;
154
+ display: flex;
155
+ justify-content: space-between;
156
+ flex-wrap: wrap;
157
+ .msg {
158
+ flex: 1;
159
+ display: flex;
160
+ align-content: center;
161
+
162
+ .content {
163
+ .title {
164
+ font-size: 40px;
165
+ font-family: FontBold;
166
+ color: var(--text-color);
167
+ line-height: 48px;
168
+ }
169
+ .desc {
170
+ margin-top: 24px;
171
+ font-size: 16px;
172
+ line-height: 24px;
173
+ color: #4F4F4F;
174
+ }
175
+ }
176
+ }
177
+ .img {
178
+ margin-top: 30px;
179
+ width: 550px;
180
+ max-width: 100%;
181
+ img {
182
+ width: 100%;
183
+ height: auto;
184
+ }
185
+ }
186
+ }
187
+ }
188
+
189
+ @media screen and (min-width: 1200px) {
190
+ .team-content {
191
+ .top {
192
+ height: 320px;
193
+ background-size: cover;
194
+ line-height: 320px;
195
+ }
196
+ .item-list-box {
197
+ max-width: 1440px;
198
+ margin: 0 auto;
199
+ padding: 100px 120px 140px 120px;
200
+ .item {
201
+ display: grid;
202
+ gap: 72px;
203
+ grid-template-columns: 240px 1fr;
204
+ &.item-left {
205
+ grid-template-columns: 1fr 240px;
206
+ }
207
+ .head {
208
+ width: 240px;
209
+ img {
210
+ width: 240px;
211
+ height: 240px;
212
+ }
213
+ .name {
214
+ margin-top: 24px;
215
+ font-size: 24px;
216
+ }
217
+ }
218
+ }
219
+ }
220
+ .mission-box {
221
+ max-width: 1440px;
222
+ margin: 0 auto;
223
+ padding: 0 120px 150px 120px;
224
+ .mission-bg {
225
+ margin-top: 64px;
226
+ height: 260px;
227
+ background: url('../../assets/component_img/mission-bg.png');
228
+ background-size: contain;
229
+ background-repeat: no-repeat;
230
+ }
231
+ }
232
+ .putting {
233
+ max-width: 1440px;
234
+ margin: 0 auto;
235
+ padding: 0px 120px 150px 120px;
236
+ .msg {
237
+ padding-right: 128px;
238
+ }
239
+ .img {
240
+ margin-top: 0;
241
+ }
242
+ }
243
+ }
244
+ }
245
+ </style>
@@ -0,0 +1,88 @@
1
+ <!--
2
+ * @Author:
3
+ * @Date: 2021-01-15 10:25:20
4
+ * @LastEditTime: 2021-08-06 00:24:46
5
+ * @LastEditors: Lewis
6
+ * @Description:
7
+ -->
8
+ <template>
9
+ <div class='events-view term'>
10
+ <Header :scrollTop="500"/>
11
+ <PowxBread :list="navList">
12
+ </PowxBread>
13
+ <div class='whitepaper-content ivu-scroll'>
14
+ <div class='title'>{{term.title || 'Terms of Service'}}</div>
15
+ <p class='content' v-html='term.description'>
16
+ </p>
17
+ </div>
18
+ </div>
19
+ </template>
20
+
21
+ <script>
22
+ import { getService } from '../../api/common'
23
+ export default {
24
+ name: 'term',
25
+ data() {
26
+ return {
27
+ navList: [
28
+ {name: 'Home', path: '/'},
29
+ {name: 'Term', path: ''}
30
+ ],
31
+ term: {
32
+ title: 'Terms of Service',
33
+ description: ''
34
+ }
35
+ }
36
+ },
37
+ mounted() {
38
+ this.init()
39
+ },
40
+ methods: {
41
+ init() {
42
+ getService().then(res => {
43
+ this.term = res.data && res.data.data || {}
44
+ }).catch(e => e)
45
+ }
46
+ }
47
+ }
48
+ </script>
49
+
50
+ <style lang="less" scoped>
51
+ .pdfobject-container {
52
+ height: 600px;
53
+ }
54
+ .events-view {
55
+ width:1200px;
56
+ padding-top: 60px;
57
+ margin:0 auto;
58
+ .whitepaper-down {
59
+ font-size: 16px;
60
+ font-family: Font;
61
+ text-decoration: underline;
62
+ text-align: left;
63
+ color: var(--primary-color);
64
+ cursor: pointer;
65
+ margin-top: 7px;
66
+ }
67
+ .whitepaper-content {
68
+ border: 1px solid var(--border-color-base);
69
+ border-radius: 6px;
70
+ box-shadow: 0px 4px 12px 0px rgba(17,51,83,0.02);
71
+ }
72
+ .title {
73
+ padding: 36px 0;
74
+ font-size: 24px;
75
+ font-family: Font;
76
+ color: var(--text-color);
77
+ text-align: center;
78
+ }
79
+ .content {
80
+ text-indent: 2em;
81
+ font-size: 14px;
82
+ font-family: Font;
83
+ color: var(--text-color);
84
+ line-height: 24px;
85
+ padding: 0 40px 40px 40px;
86
+ }
87
+ }
88
+ </style>
@@ -0,0 +1,133 @@
1
+ <!--
2
+ * @Author: Sneed
3
+ * @Date: 2021-03-17 11:11:58
4
+ * @LastEditTime: 2021-09-02 16:20:01
5
+ * @LastEditors: Lewis
6
+ * @Description:
7
+ -->
8
+ <template>
9
+ <div class="vote">
10
+ <Header :scrollTop="500" />
11
+ <PowxBread :list="navList"> </PowxBread>
12
+ <div class="vote-content">
13
+ <div class="vote-title" v-html="arr[0]"></div>
14
+ <div class="vote-des">
15
+ <p v-html="arr[1]"></p>
16
+ <!-- <p>A minimum threhold of 1 % of the total MOBI supply is required to submit proposals .</p> -->
17
+ </div>
18
+ <div class="vote-des">
19
+ <p v-html="arr[2]"></p>
20
+ <!-- <p>A minimum threhold of 1 % of the total MOBI supply is required to submit proposals .</p> -->
21
+ </div>
22
+ <div class="read">
23
+ <a href="">{{ arr[3] }}</a>
24
+ </div>
25
+ </div>
26
+ </div>
27
+ </template>
28
+
29
+ <script>
30
+ import conf from "../../config/index"
31
+ import { loadImportScript } from "../../utils/index"
32
+ import { mapState } from "vuex"
33
+ export default {
34
+ name: "",
35
+ data() {
36
+ return {
37
+ navList: [
38
+ { name: this.$t("cms_announcement_home"), path: "/" },
39
+ { name: this.$t("index_header_menu_vote"), path: "/cms/vote" },
40
+ ],
41
+ arr: [],
42
+ };
43
+ },
44
+ computed: mapState({
45
+ lang: (state) => state.language,
46
+ localHostname: (state) => state.localHostname,
47
+ }),
48
+ created() {
49
+ // 接口CDN化。
50
+ loadImportScript(
51
+ `${conf.sitePath}${window.mainHostname}/help/APPROVE_${this.lang}.js`
52
+ )
53
+ .then(() => {
54
+ const data = window.message;
55
+ let reg = /<\/?.+?\/?>/g;
56
+ let arr = data.description.split("<br>").map((item) => {
57
+ return item.replace(reg, "");
58
+ });
59
+ this.arr = arr;
60
+ })
61
+ .catch(() => false);
62
+ // getAnnouncement('APPROVE').then(res=>{
63
+ // let reg=/<\/?.+?\/?>/g;
64
+ // let arr = res.data.content.split('<br>').map(item=>{
65
+ // return item.replace(reg,'')
66
+ // })
67
+ // this.arr = arr;
68
+ // })
69
+ },
70
+ };
71
+ </script>
72
+
73
+ <style lang="less" scoped>
74
+ .vote {
75
+ width: 1200px;
76
+ padding-top: 60px;
77
+ margin: 0 auto;
78
+ .vote-content {
79
+ width: 640px;
80
+ margin: 0 auto;
81
+ margin-top: 30px;
82
+ overflow: hidden;
83
+ .vote-title {
84
+ width: 100%;
85
+ height: 140px;
86
+ padding: 36px 40px;
87
+ background: url("../../assets/img/vote-bg.png") 0 0 no-repeat;
88
+ background-size: contain;
89
+ font-size: 20px;
90
+ font-family: Font;
91
+
92
+ text-align: left;
93
+ color: #ffffff;
94
+ line-height: 34px;
95
+ }
96
+ .vote-des {
97
+ margin-top: 20px;
98
+ width: 640px;
99
+ height: 124px;
100
+ background: #ffffff;
101
+ border-radius: 20px;
102
+ padding: 20px 40px;
103
+ p:first-child {
104
+ font-size: 20px;
105
+ font-family: Font;
106
+
107
+ text-align: left;
108
+ color: var(--text-color);
109
+ line-height: 20px;
110
+ }
111
+ p:last-child {
112
+ margin-top: 16px;
113
+ font-size: 16px;
114
+ font-family: Font;
115
+
116
+ text-align: left;
117
+ color: #708599;
118
+ line-height: 24px;
119
+ }
120
+ }
121
+ .read {
122
+ margin-top: 20px;
123
+ text-align: center;
124
+ font-size: 16px;
125
+ font-family: Font;
126
+
127
+ text-align: center;
128
+ color: var(--primary-color);
129
+ line-height: 16px;
130
+ }
131
+ }
132
+ }
133
+ </style>
@@ -0,0 +1,126 @@
1
+ <!--
2
+ * @Author:
3
+ * @Date: 2020-12-11 15:32:29
4
+ * @LastEditTime: 2021-08-24 18:19:57
5
+ * @LastEditors: Lewis
6
+ * @Description:
7
+ -->
8
+ <template>
9
+ <div class="events-view">
10
+ <!-- <nav-inner :nav='navList'>
11
+
12
+ </nav-inner> -->
13
+ <Header :scrollTop="500" />
14
+ <PowxBread :list="navList">
15
+ <div class="whitepaper-down opcHover" @click="downLoad">Download »</div>
16
+ </PowxBread>
17
+ <div class="whitepaper-content ivu-scroll">
18
+ <div class="title">{{ whitePaper.title || "whitePaper" }}</div>
19
+ <p class="content" v-html="whitePaper.content" v-if="false"></p>
20
+ <div id="whitePaper"></div>
21
+ </div>
22
+ </div>
23
+ </template>
24
+
25
+ <script>
26
+ import { getWhitePaper } from "../../api/common";
27
+ import { Pdfembed } from "../../utils/pdf.js";
28
+ export default {
29
+ name: "whitepaper",
30
+ data() {
31
+ return {
32
+ navList: [
33
+ { name: "Home", path: "/" },
34
+ { name: "Whitepaper", path: "" },
35
+ ],
36
+ whitePaper: {
37
+ title: "",
38
+ content: "",
39
+ file_url: "",
40
+ },
41
+ isDownLoad: false,
42
+ };
43
+ },
44
+ mounted() {
45
+ this.getWhitePaperFunc();
46
+ this.init();
47
+ },
48
+ methods: {
49
+ init() {},
50
+ getWhitePaperFunc() {
51
+ getWhitePaper({ announcement_type: "white_paper" }).then((res) => {
52
+ if (res.data.code == 200) {
53
+ let resData = res.data.data;
54
+ this.whitePaper.title = resData.title;
55
+ this.whitePaper.content = resData.content;
56
+ this.whitePaper.file_url = resData.file_url;
57
+ Pdfembed().embed("./boo.pdf", "#whitePaper", {
58
+ pdfOpenParams: {
59
+ view: "FitV",
60
+ pagemode: "thumbs",
61
+ search: "lorem ipsum",
62
+ },
63
+ forcePDFJS: true,
64
+ });
65
+ }
66
+ }).catch(e => e);
67
+ },
68
+ downLoad() {
69
+ var reg = /([^\\/]+)\.([^\\/]+)/i;
70
+ let filename = "./boo.pdf";
71
+ var a = document.createElement("a");
72
+ a.href = filename;
73
+ a.download = reg.exec(filename)[1];
74
+ var body = document.getElementsByTagName("body")[0];
75
+ body.appendChild(a);
76
+ a.click();
77
+ body.removeChild(a);
78
+ },
79
+ removeEmbed() {
80
+ var body = document.getElementsByTagName("body")[0];
81
+ let initembed = document.getElementById("embed");
82
+ if (initembed) body.removeChild(initembed);
83
+ },
84
+ },
85
+ };
86
+ </script>
87
+
88
+ <style lang="less" scoped>
89
+ .pdfobject-container {
90
+ height: 600px;
91
+ }
92
+ .events-view {
93
+ width: 1200px;
94
+ padding-top: 60px;
95
+ margin: 0 auto;
96
+ .whitepaper-down {
97
+ font-size: 16px;
98
+ font-family: Font;
99
+ text-decoration: underline;
100
+ text-align: left;
101
+ color: var(--primary-color);
102
+ cursor: pointer;
103
+ margin-top: 7px;
104
+ }
105
+ .whitepaper-content {
106
+ border: 1px solid var(--border-color-base);
107
+ border-radius: 6px;
108
+ box-shadow: 0px 4px 12px 0px rgba(17, 51, 83, 0.02);
109
+ }
110
+ .title {
111
+ padding: 36px 0;
112
+ font-size: 24px;
113
+ font-family: Font;
114
+ color: var(--text-color);
115
+ text-align: center;
116
+ }
117
+ .content {
118
+ text-indent: 2em;
119
+ font-size: 14px;
120
+ font-family: Font;
121
+ color: var(--text-color);
122
+ line-height: 24px;
123
+ padding: 0 40px 40px 40px;
124
+ }
125
+ }
126
+ </style>