@jx3box/jx3box-common-ui 5.4.7 → 5.4.8

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jx3box/jx3box-common-ui",
3
- "version": "5.4.7",
3
+ "version": "5.4.8",
4
4
  "description": "JX3BOX UI",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -33,7 +33,7 @@
33
33
  "@jx3box/jx3box-comment-ui": "^1.6.6",
34
34
  "@jx3box/jx3box-common": "^6.7.8",
35
35
  "@jx3box/jx3box-data": "^1.8.3",
36
- "@jx3box/jx3box-editor": "^1.0.8",
36
+ "@jx3box/jx3box-editor": "^1.1.1",
37
37
  "axios": "^0.19.2",
38
38
  "element-ui": "^2.13.2",
39
39
  "jquery": "^3.5.1",
package/src/App.vue CHANGED
@@ -105,6 +105,7 @@ import RightSideMsg from "./RightSideMsg.vue";
105
105
  import Footer from "./Footer.vue";
106
106
  import Bottom from "./Bottom.vue";
107
107
 
108
+ // import cmsList from "./list/cms-list.vue";
108
109
  import singlebox from "./single/cms-single.vue";
109
110
  import PostHeader from "./single/PostHeader.vue";
110
111
  import PostCollection from "./single/PostCollection.vue";
@@ -149,6 +150,7 @@ export default {
149
150
  Bottom,
150
151
  RightSidebar,
151
152
 
153
+ // cmsList,
152
154
  singlebox,
153
155
  PostHeader,
154
156
  PostCollection,
@@ -15,8 +15,8 @@
15
15
  ></a>
16
16
  <el-dropdown-menu slot="dropdown" class="c-header-menu">
17
17
  <el-dropdown-item
18
- v-for="subitem in item.children"
19
- :key="'header-nav-drop-' + subitem.key"
18
+ v-for="(subitem, subIndex) in item.children"
19
+ :key="'header-nav-drop-' + subitem.key + subIndex"
20
20
  class="u-menu-item"
21
21
  >
22
22
  <a
@@ -1,354 +0,0 @@
1
- // 列表搜索
2
- .m-archive-search{
3
- .mb(10px);
4
- .el-select .el-input {
5
- width: 80px;
6
- }
7
- .u-switch{
8
- .el-switch__label{
9
- .bold;
10
- color:#666;
11
- }
12
- }
13
- .pl(122px);
14
- .pr;
15
- .u-publish{
16
- .pa;.lt(0);
17
- }
18
- }
19
- @media screen and (max-width:@phone){
20
- .m-archive-search{
21
- .pl(0);
22
- .u-publish{
23
- .none;
24
- }
25
- }
26
- }
27
- // 排序
28
- .m-archive-filter {
29
- .fz(12px);
30
- margin-bottom: 10px;
31
- padding-bottom: 5px;
32
- .clearfix;
33
- border-bottom: 1px solid #eee;
34
- .u-publish {
35
- .fl;
36
- .h(32px);
37
- .mr(10px);
38
- .ml(0);
39
- }
40
- .w-filter-mark,.w-filter-tag,.w-filter-client{
41
- .fl;
42
- }
43
- .w-filter-client{
44
- margin-top:(32px - 28px )/2;
45
- .mr(10px);
46
- }
47
- .w-filter-mark,.w-filter-tag{
48
- margin-top:8px;
49
- }
50
- .w-filter-menu{
51
- .fl;
52
- .mt(6px);
53
- .mr(15px);
54
- }
55
-
56
- .w-filter-order{
57
- .fr;
58
- margin-top:8px;
59
- }
60
- }
61
- @media screen and (max-width: @ipad) {
62
- .m-archive-filter {
63
- .u-publish {
64
- .mr(10px);
65
- }
66
- .w-filter-mark,.w-filter-tag,.w-filter-order{
67
- margin-top:0;
68
- }
69
- .w-filter-mark,.w-filter-tag{
70
- .mr(10px);
71
- }
72
- }
73
- }
74
- @media screen and (max-width: @phone) {
75
- .m-archive-filter {
76
- .none;
77
- }
78
- }
79
- // 为空
80
- .m-archive-null {
81
- margin-top: 10px;
82
- }
83
-
84
- // 加载更多
85
- .m-archive-more {
86
- .mb(10px);
87
- .w(100%);
88
- .none;
89
- }
90
- .m-archive-more.show {
91
- .db;
92
- }
93
-
94
- // 分页
95
- .m-archive-pages {
96
- overflow-x: auto;
97
- }
98
- @media screen and (max-width:@phone){
99
- .m-archive-pages{
100
- .el-pagination__jump{
101
- .none !important;
102
- }
103
- }
104
- }
105
-
106
- // 普通列表
107
- .m-archive-list {
108
- .u-list {
109
- padding: 0;
110
- margin: 0;
111
- list-style: none;
112
- }
113
-
114
- .u-item {
115
- border-bottom: 1px solid @border-hr;
116
- padding-bottom: 20px;
117
- .mb(20px);
118
- .clearfix;
119
- .pr;
120
- }
121
-
122
- // 海报
123
- .u-banner {
124
- .fl;
125
- .mr(10px);
126
- .w(180px);
127
- .h(100px);
128
- overflow: hidden;
129
- .db;
130
- .pr;
131
- .z(1);
132
- border: 1px solid #eee;
133
- padding: 5px;
134
- box-sizing: border-box;
135
- img {
136
- .size(100%);
137
- filter: saturate(120%);
138
- transition: 0.06s all ease-in-out;
139
- }
140
- transition: 0.06s border ease-in-out;
141
- &:hover {
142
- img {
143
- filter: saturate(140%) brightness(120%);
144
- }
145
- border-color: @border;
146
- }
147
- }
148
-
149
- // 标题
150
- .u-post {
151
- margin: 0;
152
- padding: 0;
153
- .nobreak;
154
- .mb(5px);
155
- .u-icon {
156
- .size(16px);
157
- .y(-3px);
158
- .mr(5px);
159
- }
160
- &.isSticky {
161
- .u-title::before {
162
- content: "🎯";
163
- .mr(5px);
164
- }
165
- // .u-title:hover{
166
- // box-shadow: 0 1px 0 #f00;
167
- // }
168
- }
169
- .u-title {
170
- // color:@darkblue;
171
- font-weight:400;
172
- &:hover {
173
- box-shadow: 0 1px 0 @primary;
174
- }
175
- }
176
- .fz(15px, 2);
177
- font-weight: normal;
178
- .lh(2);
179
- font-weight: 400;
180
- }
181
-
182
- // 角标
183
- .u-marks {
184
- }
185
- .u-mark {
186
- font-style: normal;
187
- font-size: 12px;
188
- padding: 1px 5px 2px 5px;
189
- margin-left: 5px;
190
- border-radius: 2px;
191
- background-color: #6f42c1;
192
- color: #fff;
193
- .ml(5px);
194
- }
195
-
196
- // 内容
197
- .u-content {
198
- .db;
199
- padding-left: 20px;
200
- .pr;
201
- }
202
-
203
- // 内容·描述类
204
- .u-desc {
205
- .db;
206
- .fz(12px, 1.8);
207
- color: #555;
208
- .break(2);
209
- .mb(6px);
210
- padding: 0 2px;
211
- }
212
-
213
- // 内容·meta列表
214
- .u-metalist {
215
- .nobreak;
216
- .db;
217
- .fz(12px, 25px);
218
- .mb(4px);
219
- strong {
220
- .dbi;
221
- .y(top);
222
- padding: 0 10px;
223
- .mr(10px);
224
- .r(4px);
225
- background-color: #f1f8ff;
226
- color: @color-link;
227
- font-weight: normal;
228
- }
229
- em {
230
- font-style: normal;
231
- }
232
- b {
233
- font-weight: normal;
234
- }
235
- a {
236
- color: #333;
237
- &:hover {
238
- color: @color-link;
239
- box-shadow: 0 1px 0 @color-link;
240
- }
241
- }
242
- }
243
- .u-tag {
244
- .db;
245
- .nobreak;
246
- a,
247
- b {
248
- padding: 0.2em 0.8em;
249
- margin: 0 0.5em 0 0;
250
- background-color: #f1f8ff;
251
- border-radius: 3px;
252
- .fz(12px);
253
- color: #4989d2;
254
- }
255
- a:hover {
256
- background-color: #def;
257
- }
258
- }
259
- .u-types {
260
- .db;
261
- .nobreak;
262
- b {
263
- padding: 0.1em 0.8em;
264
- margin: 0 0.5em 0.5em 0;
265
- border-radius: 3px;
266
- .fz(12px);
267
- .dbi;
268
- .y(top);
269
- }
270
- }
271
-
272
- // 底部
273
- .u-misc {
274
- .db;
275
- .pa;
276
- .rb(10px, 24px);
277
- .x(right);
278
- .fz(12px, 20px);
279
- color: #777;
280
- }
281
-
282
- .u-author{
283
- // .pa;.rt(0);
284
- }
285
- .u-author-avatar {
286
- .size(24px);
287
- .y;
288
- .r(2px);
289
- .mr(5px);
290
- // .fr;
291
- // .ml(5px);
292
- }
293
- .u-author-name {
294
- .fz(12px,24px);
295
- // .fl;
296
- color:#666;
297
- &:hover {
298
- color:@pink;
299
- }
300
- }
301
- .u-date {
302
- .db;
303
- .mt(3px);
304
- .clear;
305
- }
306
-
307
- .u-down {
308
- // .u-btn-white;
309
- i {
310
- .size(12px);
311
- .y(-1px);
312
- }
313
- }
314
- .u-pipe {
315
- margin: 0 5px;
316
- color: #999;
317
- }
318
- }
319
- @media screen and (max-width: @ipad) {
320
- .m-archive-list {
321
- .u-banner {
322
- .w(100px);
323
- .h(55px);
324
- padding: 3px;
325
- .fr;
326
- margin-left: 10px;
327
- margin-right: 0;
328
- }
329
-
330
- .u-post {
331
- white-space: normal;
332
- word-break: break-all;
333
- .break(2);
334
- .fz(14px, 22px);
335
- }
336
-
337
- .u-metalist,
338
- .u-down,
339
- .u-view {
340
- .none;
341
- }
342
- .u-tag {
343
- .mb(8px);
344
- }
345
-
346
- .u-misc {
347
- .ps;
348
- .x(left);
349
- }
350
- .u-author-name {
351
- color: #555;
352
- }
353
- }
354
- }
@@ -1,77 +0,0 @@
1
- <template>
2
- <div class="m-archive-box">
3
- <!-- 搜索靠前 -->
4
- <slot name="search-before"></slot>
5
- <!-- 筛选 -->
6
- <div class="m-archive-filter" v-if="$slots.filter">
7
- <slot name="filter"></slot>
8
- </div>
9
- <!-- 搜索靠后 -->
10
- <slot name="search-after"></slot>
11
- <!-- 列表 -->
12
- <slot></slot>
13
- <!-- 空 -->
14
- <el-alert v-if="!list.length" class="m-archive-null" title="没有找到相关条目" type="info" center show-icon></el-alert>
15
- <!-- 下一页 -->
16
- <el-button class="m-archive-more" :class="{ show: hasNextPage }" type="primary" @click="appendPage">加载更多</el-button>
17
- <!-- 分页 -->
18
- <el-pagination
19
- class="m-archive-pages"
20
- background
21
- layout="total, prev, pager, next,jumper"
22
- :hide-on-single-page="true"
23
- :page-size="perPage"
24
- :total="totalRecords"
25
- :current-page.sync="currentPage"
26
- @current-change="changePage"
27
- ></el-pagination>
28
- </div>
29
- </template>
30
- <script>
31
- export default {
32
- name: "cms-list",
33
- props: ["data", "total", "per", "pages", "page"],
34
- data: function() {
35
- return {
36
- currentPage: this.page || 1,
37
- };
38
- },
39
- computed: {
40
- list: function() {
41
- return this.data;
42
- },
43
- totalRecords: function() {
44
- return this.total;
45
- },
46
- totalPages: function() {
47
- return this.pages;
48
- },
49
- perPage: function() {
50
- return this.per;
51
- },
52
- hasNextPage: function() {
53
- return this.totalRecords > 1 && this.currentPage < this.totalPages;
54
- },
55
- },
56
- methods: {
57
- appendPage: function() {
58
- this.$emit("appendPage", ++this.currentPage);
59
- },
60
- changePage: function(i) {
61
- this.$emit("changePage", i);
62
- this.$route.query.page = i;
63
- },
64
- },
65
- watch: {
66
- page: function(page) {
67
- this.currentPage = page;
68
- },
69
- },
70
- mounted: function() {},
71
- components: {},
72
- };
73
- </script>
74
-
75
- <style lang="less">
76
- @import "../../assets/css/cms-list.less";
77
- </style>