@fonixtree/magic-design 2.0.81 → 2.0.83

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 (97) hide show
  1. package/es/assets/fonts/.DS_Store +0 -0
  2. package/es/assets/fonts/magic-box-iconfont.css +30 -6
  3. package/es/assets/fonts/magic-box-iconfont.js +1 -1
  4. package/es/assets/fonts/magic-box-iconfont.ttf +0 -0
  5. package/es/assets/fonts/magic-box-iconfont.woff +0 -0
  6. package/es/assets/fonts/magic-box-iconfont.woff2 +0 -0
  7. package/es/common/GroupList/index.js +5 -2
  8. package/es/common/ProductModal/SortableImageList/index.js +118 -0
  9. package/es/common/ProductModal/SortableImageList/index.less +3 -0
  10. package/es/common/ProductModal/index.js +40 -27
  11. package/es/composite-comp/common/config-panels/SpacingConfig/index.js +1 -0
  12. package/es/composite-comp/dito/components/CommonFunctions/defaultJSON.js +88 -0
  13. package/es/composite-comp/dito/components/CommonFunctions/index.js +84 -0
  14. package/es/composite-comp/dito/components/CommonFunctions/mobile/index.js +105 -0
  15. package/es/composite-comp/dito/components/CommonFunctions/mobile/index.less +33 -0
  16. package/es/composite-comp/dito/components/Orders/defaultJSON.js +89 -0
  17. package/es/composite-comp/dito/components/Orders/index.js +84 -0
  18. package/es/composite-comp/dito/components/Orders/mobile/index.js +334 -0
  19. package/es/composite-comp/dito/components/Orders/mobile/index.less +83 -0
  20. package/es/composite-comp/dito/components/PersonalInformation/defaultJSON.js +95 -0
  21. package/es/composite-comp/dito/components/PersonalInformation/index.js +84 -0
  22. package/es/composite-comp/dito/components/PersonalInformation/mobile/images/avatar.png +0 -0
  23. package/es/composite-comp/dito/components/PersonalInformation/mobile/index.js +451 -0
  24. package/es/composite-comp/dito/components/PersonalInformation/mobile/index.less +127 -0
  25. package/es/composite-comp/dito/config-panels/CommonFunctionsConfig/ConfigGroup/index.js +128 -0
  26. package/es/composite-comp/dito/config-panels/CommonFunctionsConfig/index.js +113 -0
  27. package/es/composite-comp/dito/config-panels/OrdersConfig/ConfigGroup/index.js +128 -0
  28. package/es/composite-comp/dito/config-panels/OrdersConfig/index.js +113 -0
  29. package/es/composite-comp/dito/config-panels/PersonalInformationConfig/ConfigGroup/index.js +128 -0
  30. package/es/composite-comp/dito/config-panels/PersonalInformationConfig/index.js +117 -0
  31. package/es/composite-comp/dito/second-config-panels/CommonFunctionsSecondConfig/index.js +122 -0
  32. package/es/composite-comp/dito/second-config-panels/CommonFunctionsSecondConfig/index.less +1 -0
  33. package/es/composite-comp/dito/second-config-panels/OrdersSecondConfig/index.js +148 -0
  34. package/es/composite-comp/dito/second-config-panels/OrdersSecondConfig/index.less +9 -0
  35. package/es/composite-comp/dito/second-config-panels/PersonalInformationSecondConfig/index.js +143 -0
  36. package/es/composite-comp/dito/second-config-panels/PersonalInformationSecondConfig/index.less +9 -0
  37. package/es/constants/component-types.js +21 -3
  38. package/es/constants/index.js +37 -3
  39. package/es/core/Designer/ConfigPanel/index.js +6 -0
  40. package/es/decorator/compositeDecorator.js +1 -1
  41. package/es/locale/en/en.json +14 -0
  42. package/es/locale/es/es.json +14 -0
  43. package/es/locale/id/id.json +14 -0
  44. package/es/mobx/UserState.js +144 -0
  45. package/es/mobx/index.js +9 -3
  46. package/es/utils/androidUtil.js +13 -2
  47. package/es/utils/commonUtil.js +117 -3
  48. package/es/utils/coreUtil.js +1 -1
  49. package/lib/assets/fonts/.DS_Store +0 -0
  50. package/lib/assets/fonts/magic-box-iconfont.css +30 -6
  51. package/lib/assets/fonts/magic-box-iconfont.js +1 -1
  52. package/lib/assets/fonts/magic-box-iconfont.ttf +0 -0
  53. package/lib/assets/fonts/magic-box-iconfont.woff +0 -0
  54. package/lib/assets/fonts/magic-box-iconfont.woff2 +0 -0
  55. package/lib/common/GroupList/index.js +5 -2
  56. package/lib/common/ProductModal/SortableImageList/index.js +118 -0
  57. package/lib/common/ProductModal/SortableImageList/index.less +3 -0
  58. package/lib/common/ProductModal/index.js +40 -27
  59. package/lib/composite-comp/common/config-panels/SpacingConfig/index.js +1 -0
  60. package/lib/composite-comp/dito/components/CommonFunctions/defaultJSON.js +88 -0
  61. package/lib/composite-comp/dito/components/CommonFunctions/index.js +84 -0
  62. package/lib/composite-comp/dito/components/CommonFunctions/mobile/index.js +105 -0
  63. package/lib/composite-comp/dito/components/CommonFunctions/mobile/index.less +33 -0
  64. package/lib/composite-comp/dito/components/Orders/defaultJSON.js +89 -0
  65. package/lib/composite-comp/dito/components/Orders/index.js +84 -0
  66. package/lib/composite-comp/dito/components/Orders/mobile/index.js +334 -0
  67. package/lib/composite-comp/dito/components/Orders/mobile/index.less +83 -0
  68. package/lib/composite-comp/dito/components/PersonalInformation/defaultJSON.js +95 -0
  69. package/lib/composite-comp/dito/components/PersonalInformation/index.js +84 -0
  70. package/lib/composite-comp/dito/components/PersonalInformation/mobile/images/avatar.png +0 -0
  71. package/lib/composite-comp/dito/components/PersonalInformation/mobile/index.js +451 -0
  72. package/lib/composite-comp/dito/components/PersonalInformation/mobile/index.less +127 -0
  73. package/lib/composite-comp/dito/config-panels/CommonFunctionsConfig/ConfigGroup/index.js +128 -0
  74. package/lib/composite-comp/dito/config-panels/CommonFunctionsConfig/index.js +113 -0
  75. package/lib/composite-comp/dito/config-panels/OrdersConfig/ConfigGroup/index.js +128 -0
  76. package/lib/composite-comp/dito/config-panels/OrdersConfig/index.js +113 -0
  77. package/lib/composite-comp/dito/config-panels/PersonalInformationConfig/ConfigGroup/index.js +128 -0
  78. package/lib/composite-comp/dito/config-panels/PersonalInformationConfig/index.js +117 -0
  79. package/lib/composite-comp/dito/second-config-panels/CommonFunctionsSecondConfig/index.js +122 -0
  80. package/lib/composite-comp/dito/second-config-panels/CommonFunctionsSecondConfig/index.less +1 -0
  81. package/lib/composite-comp/dito/second-config-panels/OrdersSecondConfig/index.js +148 -0
  82. package/lib/composite-comp/dito/second-config-panels/OrdersSecondConfig/index.less +9 -0
  83. package/lib/composite-comp/dito/second-config-panels/PersonalInformationSecondConfig/index.js +143 -0
  84. package/lib/composite-comp/dito/second-config-panels/PersonalInformationSecondConfig/index.less +9 -0
  85. package/lib/constants/component-types.js +21 -3
  86. package/lib/constants/index.js +37 -3
  87. package/lib/core/Designer/ConfigPanel/index.js +6 -0
  88. package/lib/decorator/compositeDecorator.js +1 -1
  89. package/lib/locale/en/en.json +14 -0
  90. package/lib/locale/es/es.json +14 -0
  91. package/lib/locale/id/id.json +14 -0
  92. package/lib/mobx/UserState.js +144 -0
  93. package/lib/mobx/index.js +9 -3
  94. package/lib/utils/androidUtil.js +13 -2
  95. package/lib/utils/commonUtil.js +117 -3
  96. package/lib/utils/coreUtil.js +1 -1
  97. package/package.json +1 -1
@@ -0,0 +1,144 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.UserState = void 0;
7
+
8
+ var _mobx = require("mobx");
9
+
10
+ var _storeUtil = require("../utils/storeUtil");
11
+
12
+ var _androidUtil = require("../utils/androidUtil");
13
+
14
+ var _commonUtil = require("../utils/commonUtil");
15
+
16
+ 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); }
17
+
18
+ var __assign = void 0 && (void 0).__assign || function () {
19
+ __assign = Object.assign || function (t) {
20
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
21
+ s = arguments[i];
22
+
23
+ for (var p in s) {
24
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
25
+ }
26
+ }
27
+
28
+ return t;
29
+ };
30
+
31
+ return __assign.apply(this, arguments);
32
+ };
33
+
34
+ var __decorate = void 0 && (void 0).__decorate || function (decorators, target, key, desc) {
35
+ var c = arguments.length,
36
+ r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
37
+ d;
38
+ if ((typeof Reflect === "undefined" ? "undefined" : _typeof(Reflect)) === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);else for (var i = decorators.length - 1; i >= 0; i--) {
39
+ if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
40
+ }
41
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
42
+ };
43
+
44
+ var debug = require('debug')('worker:userState');
45
+ /** 缓存 Key */
46
+
47
+
48
+ var CACHE_KEY = 'USER_STATE';
49
+ /** 持久化白名单 */
50
+
51
+ var whiteList = ['photo', 'firstName', 'middleName', 'lastName', 'nickName', 'mobilePhone', 'cartNum', 'email', 'lastPaymentDate', 'userAddress', 'userDefAddress', 'recentViewNum', 'userCollectionNum', 'couponNum', 'language', 'distributor', 'tempVal', 'gender', 'birthdayDay', 'enUserId'];
52
+
53
+ var getUserStore = function getUserStore() {
54
+ if (!(0, _commonUtil.isLogin)()) {
55
+ return {};
56
+ }
57
+
58
+ return (0, _storeUtil.getStore)(CACHE_KEY);
59
+ };
60
+
61
+ var initData = {
62
+ /** 头像 */
63
+ photo: '',
64
+
65
+ /** userId */
66
+ userId: '',
67
+
68
+ /** 昵称 */
69
+ nickName: '',
70
+
71
+ /** 名字 */
72
+ firstName: '',
73
+
74
+ /** 名字 */
75
+ middleName: '',
76
+
77
+ /** 名字 */
78
+ lastName: '',
79
+
80
+ /** 手机号 */
81
+ mobilePhone: '',
82
+
83
+ /** 购物车数量 */
84
+ cartNum: 0,
85
+ // 邮箱
86
+ email: '',
87
+ // 上次支付时间
88
+ lastPaymentDate: '',
89
+ // 用户设置语言
90
+ language: (0, _androidUtil.browserVersion)().isApp && localStorage.getItem('USER_LANGUAGE') ? localStorage.getItem('USER_LANGUAGE') : 'en',
91
+
92
+ /** 用户邮寄地址 */
93
+ userAddress: null,
94
+ userDefAddress: {},
95
+ // 最近浏览数量
96
+ recentViewNum: 0,
97
+ // 收藏数量
98
+ userCollectionNum: 0,
99
+ // 优惠券数量
100
+ couponNum: 0,
101
+ // 临时存放值
102
+ tempVal: '',
103
+ gender: '',
104
+ birthdayDay: '',
105
+ enUserId: '',
106
+ distributor: null
107
+ };
108
+
109
+ var UserState =
110
+ /** @class */
111
+ function () {
112
+ function UserState() {
113
+ this.state = __assign(__assign({}, initData), getUserStore());
114
+ }
115
+ /** 修改状态 */
116
+
117
+
118
+ UserState.prototype.setState = function (data) {
119
+ debug('用户状态更新', data);
120
+ var preState = this.state;
121
+ this.state = __assign(__assign({}, preState), data);
122
+ (0, _storeUtil.persistence)(CACHE_KEY, this.state, whiteList);
123
+ };
124
+
125
+ UserState.prototype.clearUserState = function () {
126
+ this.state = __assign(__assign({}, initData), {
127
+ language: this.state.language
128
+ });
129
+ (0, _storeUtil.persistence)(CACHE_KEY, this.state, whiteList);
130
+ /** 恢复默认地址 */
131
+
132
+ (0, _commonUtil.setDefaultAddressFromIP)();
133
+ };
134
+
135
+ __decorate([_mobx.observable], UserState.prototype, "state", void 0);
136
+
137
+ __decorate([_mobx.action.bound], UserState.prototype, "setState", null);
138
+
139
+ __decorate([_mobx.action.bound], UserState.prototype, "clearUserState", null);
140
+
141
+ return UserState;
142
+ }();
143
+
144
+ exports.UserState = UserState;
package/es/mobx/index.js CHANGED
@@ -5,9 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  var _exportNames = {
7
7
  store: true,
8
- frameStore: true
8
+ frameStore: true,
9
+ userState: true
9
10
  };
10
- exports.store = exports.frameStore = exports["default"] = void 0;
11
+ exports.userState = exports.store = exports.frameStore = exports["default"] = void 0;
11
12
 
12
13
  var _mobx = require("mobx");
13
14
 
@@ -27,6 +28,8 @@ var _Store = require("./Store");
27
28
 
28
29
  var _Frame = require("./Frame");
29
30
 
31
+ var _UserState = require("./UserState");
32
+
30
33
  /* 开启严格模式 */
31
34
  (0, _mobx.configure)({
32
35
  enforceActions: 'observed'
@@ -35,8 +38,11 @@ var store = new _Store.Store();
35
38
  exports.store = store;
36
39
  var frameStore = new _Frame.Frame();
37
40
  exports.frameStore = frameStore;
41
+ var userState = new _UserState.UserState();
42
+ exports.userState = userState;
38
43
  var _default = {
39
44
  store: store,
40
- frameStore: frameStore
45
+ frameStore: frameStore,
46
+ userState: userState
41
47
  };
42
48
  exports["default"] = _default;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.sendToJs = exports.sendToIos = exports.sendToApp = exports.sendToAndroid = exports.iosSendToJs = exports.connectWebViewJavascriptBridge = exports.browserVersion = void 0;
6
+ exports.sendToJs = exports.sendToIos = exports.sendToApp = exports.sendToAndroid = exports.iosSendToJs = exports.goToLoginApp = exports.connectWebViewJavascriptBridge = exports.browserVersion = void 0;
7
7
 
8
8
  // 判断访问终端
9
9
  var browserVersion = function browserVersion() {
@@ -129,6 +129,17 @@ var sendToApp = function sendToApp(params) {
129
129
  if (AlipayJSBridge) {
130
130
  AlipayJSBridge.call('mpaasAction', params);
131
131
  }
132
+ }; // 拉起APP登录
133
+
134
+
135
+ exports.sendToApp = sendToApp;
136
+
137
+ var goToLoginApp = function goToLoginApp() {
138
+ if (browserVersion().androidApp) {
139
+ window.dito.goToLogin();
140
+ } else if (browserVersion().iosApp) {
141
+ window.dito.goToLogin();
142
+ }
132
143
  };
133
144
 
134
- exports.sendToApp = sendToApp;
145
+ exports.goToLoginApp = goToLoginApp;
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.addZero = exports.addUrlQuery = void 0;
7
7
  exports.asyncDataURLtoImage = asyncDataURLtoImage;
8
- exports.checkFileName = exports.calcLastTime = exports.asyncNextTick = void 0;
8
+ exports.checkLogin = exports.checkFileName = exports.calcLastTime = exports.asyncNextTick = void 0;
9
9
  exports.commonFetch = commonFetch;
10
10
  exports.convertCount = exports.compatibleNewPageData = void 0;
11
11
  exports.convertImageUrl = convertImageUrl;
@@ -16,9 +16,13 @@ exports.dragSource = exports.downloadBase64Image = void 0;
16
16
  exports.ensure = ensure;
17
17
  exports.getGAData = exports.getColorRgba = void 0;
18
18
  exports.getPageDataMap = getPageDataMap;
19
- exports.onListenTouch = exports.nextTick = exports.navigateTo = exports.importAsync = exports.getUrlParams = void 0;
19
+ exports.getUrlParams = void 0;
20
+ exports.goLogin = goLogin;
21
+ exports.importAsync = void 0;
22
+ exports.isLogin = isLogin;
23
+ exports.onListenTouch = exports.nextTick = exports.navigateTo = void 0;
20
24
  exports.pushGA = pushGA;
21
- exports.pxToRem = void 0;
25
+ exports.setDefaultAddressFromIP = exports.pxToRem = void 0;
22
26
  exports.shareFacebook = shareFacebook;
23
27
  exports.shareLinkedin = shareLinkedin;
24
28
  exports.shareTwitter = shareTwitter;
@@ -33,8 +37,14 @@ var _uuid = require("uuid");
33
37
 
34
38
  var _qs = _interopRequireDefault(require("qs"));
35
39
 
40
+ var _androidUtil = require("./androidUtil");
41
+
42
+ var _storeUtil = require("./storeUtil");
43
+
36
44
  var _constants = require("../constants");
37
45
 
46
+ var _mobx = require("../mobx");
47
+
38
48
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
39
49
 
40
50
  var __assign = void 0 && (void 0).__assign || function () {
@@ -287,6 +297,8 @@ function commonFetch(url, data, method) {
287
297
  }
288
298
 
289
299
  var navigateTo = function navigateTo(url) {
300
+ console.log(url);
301
+
290
302
  if (!url) {
291
303
  return;
292
304
  }
@@ -309,9 +321,111 @@ var navigateTo = function navigateTo(url) {
309
321
  }
310
322
  }
311
323
  };
324
+ /** 判断是否登录状态 */
325
+
312
326
 
313
327
  exports.navigateTo = navigateTo;
314
328
 
329
+ function isLogin() {
330
+ return localStorage.getItem('isLogin') === 'Y';
331
+ }
332
+ /**
333
+ * 跳转登陆页面
334
+ * SF打开的页面,需要跳转到手机验证码登陆页面
335
+ * @param {*} state
336
+ */
337
+
338
+
339
+ function goLogin(state, replaceFlag) {
340
+ if (state === void 0) {
341
+ state = {};
342
+ }
343
+
344
+ if (replaceFlag === void 0) {
345
+ replaceFlag = false;
346
+ }
347
+
348
+ var isFromSf = (0, _storeUtil.getStore)(_constants.STORE_KEY.IS_FROM_SF);
349
+ var signUrl = isFromSf === 'Y' ? '/sign-in-opt' : '/sign-in';
350
+
351
+ if (replaceFlag) {
352
+ Fishx.history.replace({
353
+ pathname: signUrl,
354
+ state: state
355
+ });
356
+ } else {
357
+ navigateTo(signUrl, state);
358
+ }
359
+ }
360
+ /**
361
+ * 检查是否登录 未登录返回登录页
362
+ * @param {boolean?} isLead 是否引导登录
363
+ * @returns boolean
364
+ */
365
+
366
+
367
+ var checkLogin = function checkLogin(isLead, redirectUrl, replaceFlag) {
368
+ if (isLead === void 0) {
369
+ isLead = true;
370
+ }
371
+
372
+ if (!isLogin()) {
373
+ if (isLead) {
374
+ if ((0, _androidUtil.browserVersion)().isApp) {
375
+ goToLoginApp();
376
+ } else {
377
+ var _a = window.location,
378
+ pathname = _a.pathname,
379
+ search = _a.search,
380
+ hash = _a.hash;
381
+
382
+ var _redirectUrl = pathname + search + hash;
383
+
384
+ goLogin({
385
+ redirectUrl: redirectUrl || _redirectUrl
386
+ }, replaceFlag);
387
+ }
388
+ }
389
+
390
+ return false;
391
+ }
392
+
393
+ return true;
394
+ };
395
+ /**
396
+ * TODO 根据IP获取地址信息
397
+ */
398
+
399
+
400
+ exports.checkLogin = checkLogin;
401
+
402
+ var setDefaultAddressFromIP = function setDefaultAddressFromIP() {
403
+ /** 设置初始地址 */
404
+
405
+ /** 接口返回数据addrPath: "1|2|137088|137089|137090" 保留后两个再拼上contactStdId
406
+ * 未登陆造数据和真实数据一致使用countryId占位
407
+ */
408
+
409
+ /** 138375,138376,126065,126066 */
410
+ if (!_mobx.userState.state.userAddress) {
411
+ _mobx.userState.setState({
412
+ userAddress: {
413
+ _FROM: 'ip',
414
+ addrPath: 'countryId|countryId1T|countryId2T|138375|138376|126065',
415
+ city: 'CITY OF MANILA',
416
+ contactStdId: 126066,
417
+ // country: 'CITY OF MANILA',
418
+ district: 'SAN MIGUEL',
419
+ street: 'Barangay 637',
420
+ province: 'NCR, CITY OF MANILA, FIRST DISTRICT',
421
+ type: 'address'
422
+ }
423
+ });
424
+ }
425
+ };
426
+
427
+ exports.setDefaultAddressFromIP = setDefaultAddressFromIP;
428
+
315
429
  var addUrlQuery = function addUrlQuery(url, queryObj) {
316
430
  if (/\?/.test(url)) {
317
431
  return url + '&' + _qs["default"].stringify(queryObj);
@@ -383,7 +383,7 @@ var clickUrl = function clickUrl(url) {
383
383
  window.open(a);
384
384
  }
385
385
  } else {
386
- window.open(a);
386
+ window.open(link);
387
387
  }
388
388
  } else {
389
389
  (0, _commonUtil.navigateTo)(link);
Binary file
@@ -1,8 +1,9 @@
1
1
  @font-face {
2
- font-family: "magic-box-iconfont"; /* Project id 3317752 */
3
- src: url('magic-box-iconfont.woff2?t=1704245006151') format('woff2'),
4
- url('magic-box-iconfont.woff?t=1704245006151') format('woff'),
5
- url('magic-box-iconfont.ttf?t=1704245006151') format('truetype');
2
+ font-family: "magic-box-iconfont";
3
+ /* Project id 3317752 */
4
+ src: url('magic-box-iconfont.woff2?t=1709712007938') format('woff2'),
5
+ url('magic-box-iconfont.woff?t=1709712007938') format('woff'),
6
+ url('magic-box-iconfont.ttf?t=1709712007938') format('truetype');
6
7
  }
7
8
 
8
9
  .magic-box-iconfont {
@@ -13,6 +14,30 @@
13
14
  -moz-osx-font-smoothing: grayscale;
14
15
  }
15
16
 
17
+ .magic-box-icon-orders:before {
18
+ content: "\e64c";
19
+ }
20
+
21
+ .magic-box-icon-function:before {
22
+ content: "\e6d1";
23
+ }
24
+
25
+ .magic-box-icon-messages:before {
26
+ content: "\e600";
27
+ }
28
+
29
+ .magic-box-icon-set:before {
30
+ content: "\e601";
31
+ }
32
+
33
+ .magic-box-icon-cards_fill:before {
34
+ content: "\e7a6";
35
+ }
36
+
37
+ .magic-box-icon-account:before {
38
+ content: "\e655";
39
+ }
40
+
16
41
  .magic-box-icon-anchor:before {
17
42
  content: "\e642";
18
43
  }
@@ -519,5 +544,4 @@
519
544
 
520
545
  .magic-box-icon-image:before {
521
546
  content: "\e608";
522
- }
523
-
547
+ }