@fonixtree/magic-design 0.1.25 → 0.1.26

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.
Files changed (41) hide show
  1. package/es/common/LinkModal/FunctionTable/index.js +3 -1
  2. package/es/common/LinkModal/StoreTable/index.js +314 -0
  3. package/es/common/LinkModal/index.js +9 -1
  4. package/es/composite-comp/bol/components/Banner/mobile/index.js +1 -0
  5. package/es/composite-comp/bol/components/Banner/mobile/index.less +78 -52
  6. package/es/composite-comp/bol/components/Carousel/mobile/index.less +100 -81
  7. package/es/composite-comp/bol/components/ImageGallery/mobile/index.less +22 -15
  8. package/es/composite-comp/bol/components/ImageText/mobile/index.less +292 -233
  9. package/es/composite-comp/bol/components/Video/mobile/Layout1/index.less +27 -23
  10. package/es/composite-comp/bol/components/Video/mobile/Layout2/index.less +45 -38
  11. package/es/composite-comp/bol/components/Video/mobile/Layout3/index.less +50 -41
  12. package/es/composite-comp/bol/components/Video/mobile/index.less +3 -2
  13. package/es/composite-comp/bol/components/Wallet/mobile/index.less +40 -27
  14. package/es/composite-comp/dito/components/FlashDeal/mobile/index.less +97 -83
  15. package/es/composite-comp/dito/components/MobileNavigation/mobile/index.less +35 -18
  16. package/es/composite-comp/dito/components/PcNavigation/pc/index.js +1 -0
  17. package/es/composite-comp/dito/components/Recommend/mobile/index.less +86 -73
  18. package/es/composite-comp/dito/components/SearchBar/mobile/index.less +52 -45
  19. package/es/constants/index.js +7 -2
  20. package/es/core/Designer/index.js +2 -1
  21. package/lib/common/LinkModal/FunctionTable/index.js +3 -1
  22. package/lib/common/LinkModal/StoreTable/index.js +314 -0
  23. package/lib/common/LinkModal/index.js +9 -1
  24. package/lib/composite-comp/bol/components/Banner/mobile/index.js +1 -0
  25. package/lib/composite-comp/bol/components/Banner/mobile/index.less +78 -52
  26. package/lib/composite-comp/bol/components/Carousel/mobile/index.less +100 -81
  27. package/lib/composite-comp/bol/components/ImageGallery/mobile/index.less +22 -15
  28. package/lib/composite-comp/bol/components/ImageText/mobile/index.less +292 -233
  29. package/lib/composite-comp/bol/components/Video/mobile/Layout1/index.less +27 -23
  30. package/lib/composite-comp/bol/components/Video/mobile/Layout2/index.less +45 -38
  31. package/lib/composite-comp/bol/components/Video/mobile/Layout3/index.less +50 -41
  32. package/lib/composite-comp/bol/components/Video/mobile/index.less +3 -2
  33. package/lib/composite-comp/bol/components/Wallet/mobile/index.less +40 -27
  34. package/lib/composite-comp/dito/components/FlashDeal/mobile/index.less +97 -83
  35. package/lib/composite-comp/dito/components/MobileNavigation/mobile/index.less +35 -18
  36. package/lib/composite-comp/dito/components/PcNavigation/pc/index.js +1 -0
  37. package/lib/composite-comp/dito/components/Recommend/mobile/index.less +86 -73
  38. package/lib/composite-comp/dito/components/SearchBar/mobile/index.less +52 -45
  39. package/lib/constants/index.js +7 -2
  40. package/lib/core/Designer/index.js +2 -1
  41. package/package.json +1 -1
@@ -196,7 +196,9 @@ function FunctionTable(props) {
196
196
  setLoading(true);
197
197
  return [4
198
198
  /*yield*/
199
- , (0, _commonUtil.commonFetch)("/designer/v1/" + window.magicDesign.MBaseUrl + "/pages/functions", {}, 'GET')];
199
+ , (0, _commonUtil.commonFetch)("/designer/v1/" + window.magicDesign.MBaseUrl + "/pages/functions", {
200
+ partyType: window.magicDesign.partyType
201
+ }, 'GET')];
200
202
 
201
203
  case 1:
202
204
  res = _a.sent();
@@ -0,0 +1,314 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = StoreTable;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _antd = require("antd");
13
+
14
+ var _commonUtil = require("../../../utils/commonUtil");
15
+
16
+ var _locale = require("../../../locale");
17
+
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
22
+ var __assign = void 0 && (void 0).__assign || function () {
23
+ __assign = Object.assign || function (t) {
24
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
25
+ s = arguments[i];
26
+
27
+ for (var p in s) {
28
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
29
+ }
30
+ }
31
+
32
+ return t;
33
+ };
34
+
35
+ return __assign.apply(this, arguments);
36
+ };
37
+
38
+ var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
39
+ function adopt(value) {
40
+ return value instanceof P ? value : new P(function (resolve) {
41
+ resolve(value);
42
+ });
43
+ }
44
+
45
+ return new (P || (P = Promise))(function (resolve, reject) {
46
+ function fulfilled(value) {
47
+ try {
48
+ step(generator.next(value));
49
+ } catch (e) {
50
+ reject(e);
51
+ }
52
+ }
53
+
54
+ function rejected(value) {
55
+ try {
56
+ step(generator["throw"](value));
57
+ } catch (e) {
58
+ reject(e);
59
+ }
60
+ }
61
+
62
+ function step(result) {
63
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
64
+ }
65
+
66
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
67
+ });
68
+ };
69
+
70
+ var __generator = void 0 && (void 0).__generator || function (thisArg, body) {
71
+ var _ = {
72
+ label: 0,
73
+ sent: function sent() {
74
+ if (t[0] & 1) throw t[1];
75
+ return t[1];
76
+ },
77
+ trys: [],
78
+ ops: []
79
+ },
80
+ f,
81
+ y,
82
+ t,
83
+ g;
84
+ return g = {
85
+ next: verb(0),
86
+ "throw": verb(1),
87
+ "return": verb(2)
88
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function () {
89
+ return this;
90
+ }), g;
91
+
92
+ function verb(n) {
93
+ return function (v) {
94
+ return step([n, v]);
95
+ };
96
+ }
97
+
98
+ function step(op) {
99
+ if (f) throw new TypeError("Generator is already executing.");
100
+
101
+ while (_) {
102
+ try {
103
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
104
+ if (y = 0, t) op = [op[0] & 2, t.value];
105
+
106
+ switch (op[0]) {
107
+ case 0:
108
+ case 1:
109
+ t = op;
110
+ break;
111
+
112
+ case 4:
113
+ _.label++;
114
+ return {
115
+ value: op[1],
116
+ done: false
117
+ };
118
+
119
+ case 5:
120
+ _.label++;
121
+ y = op[1];
122
+ op = [0];
123
+ continue;
124
+
125
+ case 7:
126
+ op = _.ops.pop();
127
+
128
+ _.trys.pop();
129
+
130
+ continue;
131
+
132
+ default:
133
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
134
+ _ = 0;
135
+ continue;
136
+ }
137
+
138
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
139
+ _.label = op[1];
140
+ break;
141
+ }
142
+
143
+ if (op[0] === 6 && _.label < t[1]) {
144
+ _.label = t[1];
145
+ t = op;
146
+ break;
147
+ }
148
+
149
+ if (t && _.label < t[2]) {
150
+ _.label = t[2];
151
+
152
+ _.ops.push(op);
153
+
154
+ break;
155
+ }
156
+
157
+ if (t[2]) _.ops.pop();
158
+
159
+ _.trys.pop();
160
+
161
+ continue;
162
+ }
163
+
164
+ op = body.call(thisArg, _);
165
+ } catch (e) {
166
+ op = [6, e];
167
+ y = 0;
168
+ } finally {
169
+ f = t = 0;
170
+ }
171
+ }
172
+
173
+ if (op[0] & 5) throw op[1];
174
+ return {
175
+ value: op[0] ? op[1] : void 0,
176
+ done: true
177
+ };
178
+ }
179
+ };
180
+
181
+ var paginationParams = {
182
+ pageSize: 20,
183
+ pageIndex: 1
184
+ };
185
+
186
+ function StoreTable(props) {
187
+ var _this = this;
188
+
189
+ var _onChange = props.onChange;
190
+
191
+ var _a = (0, _react.useState)([]),
192
+ storeList = _a[0],
193
+ setStoreList = _a[1];
194
+
195
+ var _b = (0, _react.useState)(false),
196
+ loading = _b[0],
197
+ setLoading = _b[1];
198
+
199
+ var _c = (0, _react.useState)(''),
200
+ storeName = _c[0],
201
+ setStoreName = _c[1];
202
+
203
+ var queryStore = function queryStore(params) {
204
+ return __awaiter(_this, void 0, void 0, function () {
205
+ var res;
206
+ return __generator(this, function (_a) {
207
+ switch (_a.label) {
208
+ case 0:
209
+ setLoading(true);
210
+ return [4
211
+ /*yield*/
212
+ , (0, _commonUtil.commonFetch)("/designer/v1/" + window.magicDesign.MBaseUrl + "/offercatgs/list", params, 'GET')];
213
+
214
+ case 1:
215
+ res = _a.sent();
216
+ setStoreList(res.list);
217
+ setLoading(false);
218
+ return [2
219
+ /*return*/
220
+ ];
221
+ }
222
+ });
223
+ });
224
+ };
225
+
226
+ (0, _react.useEffect)(function () {
227
+ queryStore(paginationParams);
228
+ }, []);
229
+ var columns = [{
230
+ title: 'Logo',
231
+ dataIndex: 'catgName',
232
+ render: function render(catgName) {
233
+ return /*#__PURE__*/_react["default"].createElement("span", {
234
+ className: "productName"
235
+ }, catgName);
236
+ }
237
+ }, {
238
+ title: 'StoreName',
239
+ dataIndex: 'storeName'
240
+ }];
241
+ var rowSelection = {
242
+ onChange: function onChange(selectedRowKeys, selectedRow) {
243
+ _onChange({
244
+ value: selectedRowKeys[0],
245
+ name: selectedRow[0].catgName
246
+ });
247
+ },
248
+ type: 'radio'
249
+ };
250
+ return /*#__PURE__*/_react["default"].createElement("div", {
251
+ style: {
252
+ height: 550
253
+ }
254
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Form, {
255
+ labelCol: {
256
+ span: 4
257
+ },
258
+ layout: "horizontal"
259
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Row, {
260
+ gutter: 24
261
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Col, {
262
+ span: 12
263
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
264
+ label: "Store"
265
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Input, {
266
+ onChange: function onChange(e) {
267
+ return setStoreName(e.target.value);
268
+ },
269
+ size: "small",
270
+ value: storeName
271
+ }))), /*#__PURE__*/_react["default"].createElement(_antd.Col, {
272
+ span: 6
273
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Button, {
274
+ onClick: function onClick() {
275
+ setLoading(true);
276
+ paginationParams.pageIndex = 1;
277
+ queryGoods(__assign({
278
+ storeName: storeName
279
+ }, paginationParams));
280
+ },
281
+ size: "small",
282
+ style: {
283
+ marginRight: 10
284
+ },
285
+ type: "primary"
286
+ }, (0, _locale.i18n)('QUERY')), /*#__PURE__*/_react["default"].createElement(_antd.Button, {
287
+ onClick: function onClick() {
288
+ reset();
289
+ },
290
+ size: "small"
291
+ }, (0, _locale.i18n)('CANCEL'))))), /*#__PURE__*/_react["default"].createElement(_antd.Table, {
292
+ bordered: false,
293
+ columns: columns,
294
+ dataSource: storeList,
295
+ defaultExpandAllRows: true,
296
+ loading: loading,
297
+ pagination: __assign(__assign({}, paginationParams), {
298
+ onChange: function onChange(page) {
299
+ paginationParams.pageIndex = page;
300
+ queryStore(__assign(__assign({}, paginationParams), {
301
+ storeName: storeName
302
+ }));
303
+ },
304
+ showSizeChanger: false
305
+ }),
306
+ rowKey: function rowKey(record) {
307
+ return record && record.key;
308
+ },
309
+ rowSelection: rowSelection,
310
+ scroll: {
311
+ y: 440
312
+ }
313
+ }));
314
+ }
@@ -31,6 +31,8 @@ var _ShareUrl = _interopRequireDefault(require("./ShareUrl"));
31
31
 
32
32
  var _MiniAppTable = _interopRequireDefault(require("./MiniAppTable"));
33
33
 
34
+ var _StoreTable = _interopRequireDefault(require("./StoreTable"));
35
+
34
36
  var _locale = require("../../locale");
35
37
 
36
38
  var _commonUtil = require("../../utils/commonUtil");
@@ -231,7 +233,9 @@ var LinkModal = function LinkModal(props) {
231
233
  case 0:
232
234
  return [4
233
235
  /*yield*/
234
- , (0, _commonUtil.commonFetch)('/designer/v1/linktypes')];
236
+ , (0, _commonUtil.commonFetch)('/designer/v1/linktypes', {
237
+ partyType: window.magicDesign.partyType
238
+ })];
235
239
 
236
240
  case 1:
237
241
  types = _a.sent();
@@ -327,6 +331,10 @@ var LinkModal = function LinkModal(props) {
327
331
  onChange: function onChange(value) {
328
332
  return setLinkUrl(value);
329
333
  }
334
+ }), item.linkTypeCode === 'Store' && /*#__PURE__*/_react["default"].createElement(_StoreTable["default"], {
335
+ onChange: function onChange(value) {
336
+ return setLinkUrl(value);
337
+ }
330
338
  }));
331
339
  })), /*#__PURE__*/_react["default"].createElement("div", {
332
340
  className: "footer"
@@ -251,6 +251,7 @@ function (_super) {
251
251
  className: "swiper-ban"
252
252
  }, data.groupSource.length > 1 && data.groupSource.map(function (item, i) {
253
253
  return /*#__PURE__*/_react["default"].createElement("div", {
254
+ key: (item === null || item === void 0 ? void 0 : item.id) || i,
254
255
  className: (0, _classnames["default"])('ban', {
255
256
  active: i == carouseIndex
256
257
  }),
@@ -1,54 +1,80 @@
1
1
  .m-banner-mobile {
2
2
  position: relative;
3
- }
4
- .m-banner-mobile .cylon-carousel .slick-track {
5
- display: flex;
6
- align-items: center;
7
- }
8
- .m-banner-mobile .carouselItem {
9
- position: relative;
10
- display: flex;
11
- }
12
- .m-banner-mobile .carouselItem .carouseContent {
13
- padding: 1.6rem 0.56rem 0;
14
- position: absolute;
15
- z-index: 2;
16
- display: flex;
17
- flex-direction: column;
18
- margin-bottom: auto;
19
- }
20
- .m-banner-mobile .carouselItem .title {
21
- margin-bottom: 0.16rem;
22
- }
23
- .m-banner-mobile .carouselItem .sub-title {
24
- margin-bottom: 0.4rem;
25
- }
26
- .m-banner-mobile .carouselItem .btn-wrap {
27
- display: flex;
28
- align-items: center;
29
- justify-content: flex-start;
30
- }
31
- .m-banner-mobile .carouselItem .btn-wrap .btn {
32
- margin-right: 0.24rem;
33
- }
34
- .m-banner-mobile .swiper-ban {
35
- position: absolute;
36
- width: 100%;
37
- bottom: 0.2rem;
38
- display: flex;
39
- align-items: center;
40
- justify-content: center;
41
- }
42
- .m-banner-mobile .swiper-ban .ban {
43
- font-size: 0.32rem;
44
- width: 1.5em;
45
- height: 0.3em;
46
- background: #FFF;
47
- cursor: inherit;
48
- margin-right: 0.3em;
49
- transition: all 0.5s;
50
- }
51
- .m-banner-mobile .swiper-ban .ban.active {
52
- width: 1.5em;
53
- opacity: 1;
54
- }
3
+ // .turnPage {
4
+ // position: absolute;
5
+ // top: 50%;
6
+ // transform: translateY(-50%);
7
+ // z-index: 3;
8
+ // cursor: pointer;
9
+ // }
10
+ // .leftBtn {
11
+ // left: 20px;
12
+ // }
13
+ // .rightBtn {
14
+ // right: 20px;
15
+ // }
16
+
17
+ .cylon-carousel {
18
+ .slick-track {
19
+ display: flex;
20
+ align-items: center;
21
+ }
22
+ }
23
+
24
+ .carouselItem {
25
+ // height: 386px;
26
+ position: relative;
27
+ display: flex;
28
+
29
+ .carouseContent {
30
+ padding: 80px 28px 0;
31
+ position: absolute;
32
+ z-index: 2;
33
+ display: flex;
34
+ flex-direction: column;
35
+ margin-bottom: auto;
36
+ }
37
+
38
+ .title {
39
+ margin-bottom: 8px;
40
+ }
41
+
42
+ .sub-title {
43
+ margin-bottom: 20px;
44
+ }
45
+
46
+ .btn-wrap {
47
+ display: flex;
48
+ align-items: center;
49
+ justify-content: flex-start;
50
+
51
+ .btn {
52
+ margin-right: 12px;
53
+ }
54
+ }
55
+ }
56
+
57
+ .swiper-ban {
58
+ position: absolute;
59
+ width: 100%;
60
+ bottom: 10px;
61
+ display: flex;
62
+ align-items: center;
63
+ justify-content: center;
64
+
65
+ .ban {
66
+ font-size: 16px;
67
+ width: 1.5em;
68
+ height: 0.3em;
69
+ background: #FFF;
70
+ cursor: inherit;
71
+ margin-right: 0.3em;
72
+ transition: all .5s;
73
+
74
+ &.active {
75
+ width: 1.5em;
76
+ opacity: 1;
77
+ }
78
+ }
79
+ }
80
+ }
@@ -1,84 +1,103 @@
1
1
  .m-carousel-mobile {
2
2
  position: relative;
3
3
  width: 100%;
4
- }
5
- .m-carousel-mobile .content {
6
- display: flex;
7
- margin: 0 auto;
8
- }
9
- .m-carousel-mobile .slider-wrap {
10
- width: 100%;
11
- margin: 0 auto;
12
- line-height: 1;
13
- }
14
- .m-carousel-mobile .slider-wrap .slick-list {
15
- padding: 0;
16
- }
17
- .m-carousel-mobile .slider-wrap .slick-list:hover {
18
- padding-top: 2rem;
19
- margin-top: -2rem;
20
- padding-bottom: 2rem;
21
- margin-bottom: -2rem;
22
- }
23
- .m-carousel-mobile .slider-wrap .slick-list .slick-track {
24
- display: flex;
25
- align-items: center;
26
- gap: 0.24rem;
27
- }
28
- .m-carousel-mobile .slider-wrap .img-wrap .img {
29
- width: fit-content;
30
- height: fit-content;
31
- display: block;
32
- margin: 0 auto;
33
- }
34
- .m-carousel-mobile .slider-wrap .img-wrap .title {
35
- display: flex;
36
- justify-content: center;
37
- margin-top: 0.24rem;
38
- }
39
- .m-carousel-mobile .slider-wrap .img-wrap .text {
40
- display: flex;
41
- justify-content: center;
42
- margin-top: 0.12rem;
43
- }
44
- .m-carousel-mobile .slider-wrap .img-wrap .tags {
45
- margin-top: 0.16rem;
46
- margin-bottom: 0.24rem;
47
- display: flex;
48
- flex-direction: row;
49
- align-items: center;
50
- justify-content: center;
51
- }
52
- .m-carousel-mobile .slider-wrap .img-wrap .tags > div {
53
- margin-right: 0.16rem;
54
- }
55
- .m-carousel-mobile .slider-wrap .img-wrap .tags > div:last-child {
56
- margin-right: 0;
57
- }
58
- .m-carousel-mobile .swiper-ban {
59
- position: absolute;
60
- width: 100%;
61
- bottom: 0.12rem;
62
- display: flex;
63
- align-items: center;
64
- justify-content: center;
65
- }
66
- .m-carousel-mobile .swiper-ban .ban {
67
- font-size: 0.16rem;
68
- width: 1em;
69
- height: 1em;
70
- border-radius: 50%;
71
- background: #FFF;
72
- cursor: inherit;
73
- margin-right: 0.2rem;
74
- transition: all 0.5s;
75
- }
76
- .m-carousel-mobile .swiper-ban .ban:last-child {
77
- margin-right: 0;
78
- }
79
- .m-carousel-mobile .swiper-ban .ban.active {
80
- width: 2em;
81
- height: 1em;
82
- border-radius: 2rem;
83
- opacity: 1;
84
- }
4
+
5
+ .content {
6
+ display: flex;
7
+ margin: 0 auto;
8
+ }
9
+
10
+ .slider-wrap {
11
+ width: 100%;
12
+ margin: 0 auto;
13
+ line-height: 1;
14
+
15
+ .slick-list {
16
+ // margin-left: -11px;
17
+ // margin-right: -11px;
18
+ padding: 0;
19
+
20
+ &:hover {
21
+ padding-top: 100px;
22
+ margin-top: -100px;
23
+ padding-bottom: 100px;
24
+ margin-bottom: -100px;
25
+ }
26
+
27
+ .slick-track {
28
+ display: flex;
29
+ align-items: center;
30
+ gap: 12px;
31
+ }
32
+ }
33
+
34
+ .img-wrap {
35
+ .img {
36
+ width: fit-content;
37
+ height: fit-content;
38
+ display: block;
39
+ margin: 0 auto;
40
+ }
41
+
42
+ .title {
43
+ display: flex;
44
+ justify-content: center;
45
+ margin-top: 12px;
46
+ }
47
+
48
+ .text {
49
+ display: flex;
50
+ justify-content: center;
51
+ margin-top: 6px;
52
+ }
53
+
54
+ .tags {
55
+ margin-top: 8px;
56
+ margin-bottom: 12px;
57
+ display: flex;
58
+ flex-direction: row;
59
+ align-items: center;
60
+ justify-content: center;
61
+
62
+ >div {
63
+ margin-right: 8px;
64
+
65
+ &:last-child {
66
+ margin-right: 0;
67
+ }
68
+ }
69
+ }
70
+ }
71
+ }
72
+
73
+ .swiper-ban {
74
+ position: absolute;
75
+ width: 100%;
76
+ bottom: 6px;
77
+ display: flex;
78
+ align-items: center;
79
+ justify-content: center;
80
+
81
+ .ban {
82
+ font-size: 8px;
83
+ width: 1em;
84
+ height: 1em;
85
+ border-radius: 50%;
86
+ background: #FFF;
87
+ cursor: inherit;
88
+ margin-right: 10px;
89
+ transition: all .5s;
90
+
91
+ &:last-child {
92
+ margin-right: 0;
93
+ }
94
+
95
+ &.active {
96
+ width: 2em;
97
+ height: 1em;
98
+ border-radius: 100px;
99
+ opacity: 1;
100
+ }
101
+ }
102
+ }
103
+ }