@fonixtree/magic-design 1.0.109 → 1.0.112

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 (101) hide show
  1. package/es/assets/fonts/Montserrat-Bold.ttf +0 -0
  2. package/es/assets/fonts/Montserrat-Medium.ttf +0 -0
  3. package/es/assets/fonts/Montserrat-Regular.ttf +0 -0
  4. package/es/assets/fonts/Montserrat-SemiBold.ttf +0 -0
  5. package/es/assets/fonts/magic-box-iconfont.css +59 -7
  6. package/es/assets/fonts/magic-box-iconfont.js +1 -1
  7. package/es/assets/fonts/magic-box-iconfont.ttf +0 -0
  8. package/es/assets/fonts/magic-box-iconfont.woff +0 -0
  9. package/es/assets/fonts/magic-box-iconfont.woff2 +0 -0
  10. package/es/common/ErrorBoundary/index.js +90 -0
  11. package/es/common/index.js +8 -0
  12. package/es/composite-comp/common/components/ImageLabel/index.js +2 -2
  13. package/es/composite-comp/common/components/ImageLabel/index.less +16 -7
  14. package/es/composite-comp/common/components/ProductItem/index.js +18 -18
  15. package/es/composite-comp/common/components/ProductItem/index.less +9 -2
  16. package/es/composite-comp/common/config-panels/BackgroundConfig/index.js +65 -3
  17. package/es/composite-comp/dito/components/AffiliateRecommend/mobile/index.js +1 -1
  18. package/es/composite-comp/dito/components/AffiliateRecommend/mobile/index.less +15 -15
  19. package/es/composite-comp/dito/components/FlashDeal/mobile/index.less +9 -1
  20. package/es/composite-comp/dito/components/GroupBuy/mobile/index.js +8 -5
  21. package/es/composite-comp/dito/components/PersonalInformation/mobile/images/avatar.png +0 -0
  22. package/es/composite-comp/dito/components/PersonalInformation/mobile/index.js +5 -7
  23. package/es/composite-comp/dito/components/Recommend/defaultJSON.js +34 -1
  24. package/es/composite-comp/dito/components/Recommend/mobile/index.js +17 -1
  25. package/es/composite-comp/dito/components/Recommend/mobile/index.less +13 -1
  26. package/es/composite-comp/dito/components/SearchBanner/defaultJSON.js +158 -0
  27. package/es/composite-comp/dito/components/SearchBanner/imgs/defaultImg.png +0 -0
  28. package/es/composite-comp/dito/components/SearchBanner/imgs/pcDefImg1.png +0 -0
  29. package/es/composite-comp/dito/components/SearchBanner/index.js +108 -0
  30. package/es/composite-comp/dito/components/SearchBanner/mobile/index.js +294 -0
  31. package/es/composite-comp/dito/components/SearchBanner/mobile/index.less +108 -0
  32. package/es/composite-comp/dito/config-panels/RecommendConfig/RecommendConfigContent/index.js +14 -1
  33. package/es/composite-comp/dito/config-panels/RecommendConfig/index.js +1 -0
  34. package/es/composite-comp/dito/config-panels/SearchBannerConfig/ConfigContent/index.js +192 -0
  35. package/es/composite-comp/dito/config-panels/SearchBannerConfig/ConfigContent/index.less +7 -0
  36. package/es/composite-comp/dito/config-panels/SearchBannerConfig/ConfigImageGroup/index.js +148 -0
  37. package/es/composite-comp/dito/config-panels/SearchBannerConfig/ConfigImageGroup/index.less +0 -0
  38. package/es/composite-comp/dito/config-panels/SearchBannerConfig/ConfigSetting/index.js +226 -0
  39. package/es/composite-comp/dito/config-panels/SearchBannerConfig/ConfigSetting/index.less +9 -0
  40. package/es/composite-comp/dito/config-panels/SearchBannerConfig/imgs/defaultImg.png +0 -0
  41. package/es/composite-comp/dito/config-panels/SearchBannerConfig/index.js +65 -0
  42. package/es/composite-comp/dito/second-config-panels/SearchBannerSecondConfig/index.js +98 -0
  43. package/es/constants/component-types.js +9 -3
  44. package/es/constants/index.js +4 -0
  45. package/es/core/Designer/ConfigPanel/index.js +1 -0
  46. package/es/core/Designer/index.js +2 -2
  47. package/es/decorator/compositeDecorator.js +27 -2
  48. package/es/locale/en/en.json +4 -0
  49. package/es/locale/es/es.json +4 -0
  50. package/es/locale/id/id.json +4 -0
  51. package/lib/assets/fonts/Montserrat-Bold.ttf +0 -0
  52. package/lib/assets/fonts/Montserrat-Medium.ttf +0 -0
  53. package/lib/assets/fonts/Montserrat-Regular.ttf +0 -0
  54. package/lib/assets/fonts/Montserrat-SemiBold.ttf +0 -0
  55. package/lib/assets/fonts/magic-box-iconfont.css +59 -7
  56. package/lib/assets/fonts/magic-box-iconfont.js +1 -1
  57. package/lib/assets/fonts/magic-box-iconfont.ttf +0 -0
  58. package/lib/assets/fonts/magic-box-iconfont.woff +0 -0
  59. package/lib/assets/fonts/magic-box-iconfont.woff2 +0 -0
  60. package/lib/common/ErrorBoundary/index.js +90 -0
  61. package/lib/common/index.js +8 -0
  62. package/lib/composite-comp/common/components/ImageLabel/index.js +2 -2
  63. package/lib/composite-comp/common/components/ImageLabel/index.less +16 -7
  64. package/lib/composite-comp/common/components/ProductItem/index.js +18 -18
  65. package/lib/composite-comp/common/components/ProductItem/index.less +9 -2
  66. package/lib/composite-comp/common/config-panels/BackgroundConfig/index.js +65 -3
  67. package/lib/composite-comp/dito/components/AffiliateRecommend/mobile/index.js +1 -1
  68. package/lib/composite-comp/dito/components/AffiliateRecommend/mobile/index.less +15 -15
  69. package/lib/composite-comp/dito/components/FlashDeal/mobile/index.less +9 -1
  70. package/lib/composite-comp/dito/components/GroupBuy/mobile/index.js +8 -5
  71. package/lib/composite-comp/dito/components/PersonalInformation/mobile/images/avatar.png +0 -0
  72. package/lib/composite-comp/dito/components/PersonalInformation/mobile/index.js +5 -7
  73. package/lib/composite-comp/dito/components/Recommend/defaultJSON.js +34 -1
  74. package/lib/composite-comp/dito/components/Recommend/mobile/index.js +17 -1
  75. package/lib/composite-comp/dito/components/Recommend/mobile/index.less +13 -1
  76. package/lib/composite-comp/dito/components/SearchBanner/defaultJSON.js +158 -0
  77. package/lib/composite-comp/dito/components/SearchBanner/imgs/defaultImg.png +0 -0
  78. package/lib/composite-comp/dito/components/SearchBanner/imgs/pcDefImg1.png +0 -0
  79. package/lib/composite-comp/dito/components/SearchBanner/index.js +108 -0
  80. package/lib/composite-comp/dito/components/SearchBanner/mobile/index.js +294 -0
  81. package/lib/composite-comp/dito/components/SearchBanner/mobile/index.less +108 -0
  82. package/lib/composite-comp/dito/config-panels/RecommendConfig/RecommendConfigContent/index.js +14 -1
  83. package/lib/composite-comp/dito/config-panels/RecommendConfig/index.js +1 -0
  84. package/lib/composite-comp/dito/config-panels/SearchBannerConfig/ConfigContent/index.js +192 -0
  85. package/lib/composite-comp/dito/config-panels/SearchBannerConfig/ConfigContent/index.less +7 -0
  86. package/lib/composite-comp/dito/config-panels/SearchBannerConfig/ConfigImageGroup/index.js +148 -0
  87. package/lib/composite-comp/dito/config-panels/SearchBannerConfig/ConfigImageGroup/index.less +0 -0
  88. package/lib/composite-comp/dito/config-panels/SearchBannerConfig/ConfigSetting/index.js +226 -0
  89. package/lib/composite-comp/dito/config-panels/SearchBannerConfig/ConfigSetting/index.less +9 -0
  90. package/lib/composite-comp/dito/config-panels/SearchBannerConfig/imgs/defaultImg.png +0 -0
  91. package/lib/composite-comp/dito/config-panels/SearchBannerConfig/index.js +65 -0
  92. package/lib/composite-comp/dito/second-config-panels/SearchBannerSecondConfig/index.js +98 -0
  93. package/lib/constants/component-types.js +9 -3
  94. package/lib/constants/index.js +4 -0
  95. package/lib/core/Designer/ConfigPanel/index.js +1 -0
  96. package/lib/core/Designer/index.js +2 -2
  97. package/lib/decorator/compositeDecorator.js +27 -2
  98. package/lib/locale/en/en.json +4 -0
  99. package/lib/locale/es/es.json +4 -0
  100. package/lib/locale/id/id.json +4 -0
  101. package/package.json +1 -1
@@ -65,7 +65,7 @@
65
65
  align-items: flex-start;
66
66
  }
67
67
  .m-recommend-mobile .scrollContainer .scrollProductList .productCard {
68
- margin-right: 0.24rem;
68
+ margin-right: 0.16rem;
69
69
  }
70
70
  .m-recommend-mobile .btnSeeAll {
71
71
  display: block;
@@ -74,3 +74,15 @@
74
74
  margin: 0 auto;
75
75
  flex: none;
76
76
  }
77
+ .m-recommend-mobile .m-product-item-wrap {
78
+ border-radius: 0.16rem;
79
+ }
80
+ .m-recommend-mobile .m-product-item-wrap .img-wrap {
81
+ border-radius: 0.16rem 0.16rem 0 0;
82
+ }
83
+ .m-recommend-mobile .m-product-item-wrap.horizontal .img-wrap {
84
+ border-radius: 0.16rem 0 0 0.16rem;
85
+ }
86
+ .m-recommend-mobile .scrollContainer .m-product-item-wrap {
87
+ border: none;
88
+ }
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.groupSourceJSON = exports.getDefaultJSON = void 0;
7
+
8
+ var _uuid = require("uuid");
9
+
10
+ var groupSourceJSON = function groupSourceJSON() {
11
+ var groupId = (0, _uuid.v4)();
12
+ return {
13
+ id: groupId,
14
+ image: {
15
+ parentId: groupId,
16
+ id: (0, _uuid.v4)(),
17
+ open: true,
18
+ type: 'IMAGE',
19
+ content: {
20
+ h5Name: 'Image Name',
21
+ pcName: 'Image Name',
22
+ h5ImgSrc: '',
23
+ pcImgSrc: '',
24
+ clickUrl: ''
25
+ },
26
+ hover: {
27
+ open: false,
28
+ backgroundType: 'enlarge',
29
+ magnification: 1.5,
30
+ pcImgHoverUrl: '',
31
+ h5ImgHoverUrl: ''
32
+ }
33
+ }
34
+ };
35
+ };
36
+
37
+ exports.groupSourceJSON = groupSourceJSON;
38
+
39
+ var getDefaultJSON = function getDefaultJSON() {
40
+ var compId = (0, _uuid.v4)();
41
+ return {
42
+ id: compId,
43
+ type: 'SEARCH_BANNER',
44
+ content: {
45
+ logo: {
46
+ id: (0, _uuid.v4)(),
47
+ open: true,
48
+ type: 'IMAGE',
49
+ content: {
50
+ h5Name: 'name2',
51
+ pcName: 'name2',
52
+ h5ImgSrc: '',
53
+ pcImgSrc: '',
54
+ clickUrl: ''
55
+ },
56
+ hover: {
57
+ open: false,
58
+ backgroundType: 'enlarge',
59
+ magnification: 1.5,
60
+ pcImgHoverUrl: '',
61
+ h5ImgHoverUrl: ''
62
+ }
63
+ },
64
+ box: {
65
+ id: (0, _uuid.v4)(),
66
+ open: true,
67
+ color: {
68
+ pc: '#fff',
69
+ mobile: '#fff'
70
+ },
71
+ backgroundColor: {
72
+ pc: 'transparent',
73
+ mobile: 'transparent'
74
+ }
75
+ },
76
+ icon: {
77
+ id: (0, _uuid.v4)(),
78
+ open: true,
79
+ color: {
80
+ pc: '#fff',
81
+ mobile: '#fff'
82
+ },
83
+ cartIcon: {
84
+ pc: true,
85
+ mobile: true
86
+ },
87
+ messageIcon: {
88
+ pc: false,
89
+ mobile: true
90
+ }
91
+ }
92
+ },
93
+ groupSource: [groupSourceJSON()],
94
+ setting: {
95
+ // 自动轮播
96
+ autoplay: {
97
+ open: true,
98
+ interval: 4
99
+ },
100
+ // 切换按钮
101
+ navigation: {
102
+ open: true,
103
+ size: 16,
104
+ hoverSize: 16,
105
+ color: '#aaa',
106
+ hoverColor: '#fff'
107
+ },
108
+ // 面板指示点
109
+ dots: {
110
+ open: true,
111
+ layout: 'layout1',
112
+ color: {
113
+ pc: '#fff',
114
+ mobile: '#fff'
115
+ },
116
+ hoverColor: {
117
+ pc: '#fff',
118
+ mobile: '#fff'
119
+ },
120
+ size: {
121
+ pc: 16,
122
+ mobile: 8
123
+ },
124
+ hoverSize: {
125
+ pc: 16,
126
+ mobile: 8
127
+ }
128
+ }
129
+ },
130
+ spacing: {
131
+ pc: {
132
+ paddingTop: 0,
133
+ paddingBottom: 0,
134
+ marginBottom: window.magicDesign.compSpacing * 1.5,
135
+ fillUp: false
136
+ },
137
+ mobile: {
138
+ paddingTop: 0,
139
+ paddingBottom: 0,
140
+ paddingLeft: 0,
141
+ paddingRight: 0,
142
+ marginBottom: window.magicDesign.compSpacing
143
+ }
144
+ },
145
+ customize: {
146
+ layout: 'left',
147
+ align: 'left'
148
+ },
149
+ background: {
150
+ opacity: 100,
151
+ color: '#fff',
152
+ image: '',
153
+ bgType: 'color'
154
+ }
155
+ };
156
+ };
157
+
158
+ exports.getDefaultJSON = getDefaultJSON;
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _react = _interopRequireWildcard(require("react"));
9
+
10
+ var _mobile = _interopRequireDefault(require("./mobile"));
11
+
12
+ var _defaultJSON = require("./defaultJSON");
13
+
14
+ var _compositeDecorator = _interopRequireDefault(require("../../../../decorator/compositeDecorator"));
15
+
16
+ var _decorator = require("../../../../decorator");
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
+
20
+ 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); }
21
+
22
+ 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; }
23
+
24
+ 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); }
25
+
26
+ var __extends = void 0 && (void 0).__extends || function () {
27
+ var _extendStatics = function extendStatics(d, b) {
28
+ _extendStatics = Object.setPrototypeOf || {
29
+ __proto__: []
30
+ } instanceof Array && function (d, b) {
31
+ d.__proto__ = b;
32
+ } || function (d, b) {
33
+ for (var p in b) {
34
+ if (b.hasOwnProperty(p)) d[p] = b[p];
35
+ }
36
+ };
37
+
38
+ return _extendStatics(d, b);
39
+ };
40
+
41
+ return function (d, b) {
42
+ _extendStatics(d, b);
43
+
44
+ function __() {
45
+ this.constructor = d;
46
+ }
47
+
48
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
49
+ };
50
+ }();
51
+
52
+ var __decorate = void 0 && (void 0).__decorate || function (decorators, target, key, desc) {
53
+ var c = arguments.length,
54
+ r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
55
+ d;
56
+ 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--) {
57
+ if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
58
+ }
59
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
60
+ };
61
+
62
+ var SearchBanner =
63
+ /** @class */
64
+ function (_super) {
65
+ __extends(SearchBanner, _super);
66
+
67
+ function SearchBanner() {
68
+ var _this = _super !== null && _super.apply(this, arguments) || this;
69
+
70
+ _this.state = {
71
+ lazyShow: false
72
+ };
73
+ _this.searchBannerRef = /*#__PURE__*/_react["default"].createRef();
74
+ _this.intersectionObserver = null;
75
+ return _this;
76
+ }
77
+
78
+ SearchBanner.prototype.componentDidMount = function () {};
79
+
80
+ SearchBanner.prototype.componentWillUnmount = function () {};
81
+
82
+ SearchBanner.prototype.render = function () {
83
+ var nodeData = this.props.nodeData;
84
+ var lazyShow = this.state.lazyShow;
85
+ return /*#__PURE__*/_react["default"].createElement("div", {
86
+ ref: this.searchBannerRef,
87
+ style: {
88
+ height: lazyShow ? 'auto' : 300
89
+ }
90
+ }, lazyShow && (window.magicDesign.device === 'pc' ? null : /*#__PURE__*/_react["default"].createElement(_mobile["default"], {
91
+ data: nodeData
92
+ })));
93
+ };
94
+
95
+ SearchBanner.defaultProps = {};
96
+ SearchBanner.type = 'SEARCH_BANNER';
97
+ SearchBanner.getDefaultJSON = _defaultJSON.getDefaultJSON;
98
+
99
+ __decorate([(0, _decorator.lazy)('searchBannerRef')], SearchBanner.prototype, "componentDidMount", null);
100
+
101
+ __decorate([_decorator.lazyDestroy], SearchBanner.prototype, "componentWillUnmount", null);
102
+
103
+ SearchBanner = __decorate([_compositeDecorator["default"]], SearchBanner);
104
+ return SearchBanner;
105
+ }(_react.Component);
106
+
107
+ var _default = SearchBanner;
108
+ exports["default"] = _default;
@@ -0,0 +1,294 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ require("./index.less");
11
+
12
+ var _antd = require("antd4");
13
+
14
+ var _classnames = _interopRequireDefault(require("classnames"));
15
+
16
+ var _common = require("../../../../../common");
17
+
18
+ var _commonUtil = require("../../../../../utils/commonUtil");
19
+
20
+ var _components = require("../../../../../meta-comp/components");
21
+
22
+ require("slick-carousel/slick/slick.css");
23
+
24
+ require("slick-carousel/slick/slick-theme.css");
25
+
26
+ var _ConfigPanel = require("../../../../../core/Designer/ConfigPanel");
27
+
28
+ var _coreUtil = require("../../../../../utils/coreUtil");
29
+
30
+ var _mobx = require("../../../../../mobx");
31
+
32
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
33
+
34
+ var __extends = void 0 && (void 0).__extends || function () {
35
+ var _extendStatics = function extendStatics(d, b) {
36
+ _extendStatics = Object.setPrototypeOf || {
37
+ __proto__: []
38
+ } instanceof Array && function (d, b) {
39
+ d.__proto__ = b;
40
+ } || function (d, b) {
41
+ for (var p in b) {
42
+ if (b.hasOwnProperty(p)) d[p] = b[p];
43
+ }
44
+ };
45
+
46
+ return _extendStatics(d, b);
47
+ };
48
+
49
+ return function (d, b) {
50
+ _extendStatics(d, b);
51
+
52
+ function __() {
53
+ this.constructor = d;
54
+ }
55
+
56
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
57
+ };
58
+ }();
59
+
60
+ var __assign = void 0 && (void 0).__assign || function () {
61
+ __assign = Object.assign || function (t) {
62
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
63
+ s = arguments[i];
64
+
65
+ for (var p in s) {
66
+ if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
67
+ }
68
+ }
69
+
70
+ return t;
71
+ };
72
+
73
+ return __assign.apply(this, arguments);
74
+ };
75
+
76
+ var SearchBannerMobile =
77
+ /** @class */
78
+ function (_super) {
79
+ __extends(SearchBannerMobile, _super);
80
+
81
+ function SearchBannerMobile() {
82
+ var _this = _super !== null && _super.apply(this, arguments) || this;
83
+
84
+ _this.state = {
85
+ carouseIndex: 0
86
+ };
87
+ _this.carouselRef = /*#__PURE__*/_react["default"].createRef();
88
+ _this.destroy = null;
89
+
90
+ _this.bannerGoto = function (groupSource) {
91
+ var nextIndex = groupSource.findIndex(function (item) {
92
+ return item.id === _mobx.store.clickedGroup;
93
+ });
94
+
95
+ if (nextIndex != -1 && nextIndex != _this.state.carouseIndex) {
96
+ _this.carouselRef.current.goTo(nextIndex);
97
+ }
98
+ };
99
+
100
+ _this.bannerGoto = function (groupSource) {
101
+ var nextIndex = groupSource.findIndex(function (item) {
102
+ return item.id === _mobx.store.clickedGroup;
103
+ });
104
+
105
+ if (nextIndex != -1 && nextIndex != _this.state.carouseIndex) {
106
+ _this.carouselRef.current.goTo(nextIndex);
107
+ }
108
+ }; // padding用统一设置
109
+
110
+
111
+ _this.getBackgroundStyle = function (item) {
112
+ var wrapStyle = {}; // 背景
113
+
114
+ if (item.background) {
115
+ if (item.background.bgType === 'color') {
116
+ wrapStyle.backgroundColor = item.background.color;
117
+ wrapStyle.opacity = item.background.opacity ? item.background.opacity : 1;
118
+ } else {
119
+ wrapStyle.backgroundImage = "url(" + item.background.image + ")";
120
+ wrapStyle.backgroundPosition = 'center';
121
+ wrapStyle.backgroundSize = 'cover';
122
+ }
123
+ }
124
+
125
+ return __assign({}, wrapStyle);
126
+ };
127
+
128
+ return _this;
129
+ }
130
+
131
+ SearchBannerMobile.prototype.componentDidMount = function () {
132
+ var _this = this;
133
+
134
+ this.destroy = (0, _mobx.autorun)(function () {
135
+ _this.bannerGoto(_this.props.data.groupSource);
136
+ });
137
+ };
138
+
139
+ SearchBannerMobile.prototype.componentWillReceiveProps = function (nextProps) {
140
+ this.bannerGoto(nextProps.data.groupSource);
141
+ };
142
+
143
+ SearchBannerMobile.prototype.componentWillUnmount = function () {
144
+ this.destroy();
145
+ };
146
+
147
+ SearchBannerMobile.prototype.render = function () {
148
+ var _this = this;
149
+
150
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
151
+
152
+ var data = this.props.data;
153
+ var GAData = (0, _commonUtil.getGAData)(data);
154
+ var _s = this.state,
155
+ messageNum = _s.messageNum,
156
+ cartNum = _s.cartNum,
157
+ carouseIndex = _s.carouseIndex;
158
+ var autoplay = data.setting.autoplay.open;
159
+ /** 设计器模式下 如果选中特定group 自动播放关闭 */
160
+
161
+ if ((0, _coreUtil.isDesignMode)() && _mobx.store.clickedGroup) {
162
+ autoplay = false;
163
+ }
164
+
165
+ return /*#__PURE__*/_react["default"].createElement("div", {
166
+ className: "m-search-banner-mobile"
167
+ }, /*#__PURE__*/_react["default"].createElement("div", {
168
+ className: "search-bar"
169
+ }, /*#__PURE__*/_react["default"].createElement("div", {
170
+ className: "right"
171
+ }, data.content && ((_a = data.content.box) === null || _a === void 0 ? void 0 : _a.open) && /*#__PURE__*/_react["default"].createElement("div", {
172
+ className: "search-input-wrap",
173
+ onClick: function onClick() {
174
+ return clickUrl('/search-page');
175
+ },
176
+ style: {
177
+ borderColor: (_c = (_b = data.content.box) === null || _b === void 0 ? void 0 : _b.color) === null || _c === void 0 ? void 0 : _c.mobile,
178
+ backgroundColor: (_e = (_d = data.content.box) === null || _d === void 0 ? void 0 : _d.backgroundColor) === null || _e === void 0 ? void 0 : _e.mobile
179
+ }
180
+ }, /*#__PURE__*/_react["default"].createElement(_common.Iconfont, {
181
+ color: (_g = (_f = data.content.box) === null || _f === void 0 ? void 0 : _f.color) === null || _g === void 0 ? void 0 : _g.mobile,
182
+ size: (0, _commonUtil.convertToRem)(20),
183
+ type: "icon-search2"
184
+ })), data.content && ((_j = (_h = data.content.icon) === null || _h === void 0 ? void 0 : _h.cartIcon) === null || _j === void 0 ? void 0 : _j.mobile) && /*#__PURE__*/_react["default"].createElement("div", {
185
+ className: "message-wrap"
186
+ }, /*#__PURE__*/_react["default"].createElement(_common.Iconfont, {
187
+ color: (_l = (_k = data.content.icon) === null || _k === void 0 ? void 0 : _k.color) === null || _l === void 0 ? void 0 : _l.mobile,
188
+ onClick: function onClick() {
189
+ return clickUrl('/new-chat');
190
+ },
191
+ size: (0, _commonUtil.convertToRem)(24),
192
+ type: "icon-chatbot"
193
+ }), !!cartNum && /*#__PURE__*/_react["default"].createElement("span", {
194
+ className: "num"
195
+ }, cartNum)), data.content && ((_o = (_m = data.content.icon) === null || _m === void 0 ? void 0 : _m.messageIcon) === null || _o === void 0 ? void 0 : _o.mobile) && /*#__PURE__*/_react["default"].createElement("div", {
196
+ className: "message-wrap"
197
+ }, /*#__PURE__*/_react["default"].createElement(_common.Iconfont, {
198
+ color: (_q = (_p = data.content.icon) === null || _p === void 0 ? void 0 : _p.color) === null || _q === void 0 ? void 0 : _q.mobile,
199
+ onClick: function onClick() {
200
+ return clickUrl('/message-center');
201
+ },
202
+ size: (0, _commonUtil.convertToRem)(24),
203
+ type: "icon-letter"
204
+ }), !!messageNum && /*#__PURE__*/_react["default"].createElement("span", {
205
+ className: "num"
206
+ }, messageNum))), data.content && ((_r = data.content.logo) === null || _r === void 0 ? void 0 : _r.open) && /*#__PURE__*/_react["default"].createElement("div", {
207
+ className: "logo",
208
+ onClick: function onClick() {
209
+ var _a, _b;
210
+ /** PTO 定制GA */
211
+
212
+
213
+ if (window.magicDesign.pushGA) {
214
+ window.magicDesign.pushGA({}, 'select_promotion', {
215
+ event_section: 'Search',
216
+ promotion_name: (_b = (_a = data.content.logo) === null || _a === void 0 ? void 0 : _a.content) === null || _b === void 0 ? void 0 : _b.h5Name
217
+ });
218
+ }
219
+ }
220
+ }, /*#__PURE__*/_react["default"].createElement(_components.MetaImage, {
221
+ data: data.content.logo,
222
+ style: {
223
+ height: 20
224
+ }
225
+ }))), /*#__PURE__*/_react["default"].createElement(_antd.Carousel, {
226
+ ref: this.carouselRef,
227
+ afterChange: function afterChange(n) {
228
+ return _this.setState({
229
+ carouseIndex: n
230
+ });
231
+ },
232
+ autoplay: autoplay,
233
+ autoplaySpeed: data.setting.autoplay.interval * 1000,
234
+ dots: false
235
+ }, data.groupSource.map(function (item) {
236
+ return /*#__PURE__*/_react["default"].createElement("div", {
237
+ key: item.id
238
+ }, /*#__PURE__*/_react["default"].createElement("div", {
239
+ style: _this.getBackgroundStyle(item)
240
+ }, /*#__PURE__*/_react["default"].createElement("div", {
241
+ className: "carouselItem",
242
+ onClick: function onClick() {
243
+ /** PTO 定制GA */
244
+ if (window.magicDesign.pushGA) {
245
+ window.magicDesign.pushGA({}, 'select_promotion', {
246
+ event_section: 'Search_Banner',
247
+ promotion_name: item.image.content.h5ImgSrc ? item.image.content.h5Name : i18n('BANNER_GROUP_NAME')
248
+ });
249
+ }
250
+ }
251
+ }, /*#__PURE__*/_react["default"].createElement(_components.MetaImage, {
252
+ data: item.image,
253
+ GAData: __assign(__assign({}, GAData), {
254
+ groupId: item.id,
255
+ groupName: (0, _ConfigPanel.getSecondConfigName)(data, item.id)
256
+ }),
257
+ isBackground: true,
258
+ style: {
259
+ width: '100%'
260
+ }
261
+ }))));
262
+ })), data.setting.dots.open && /*#__PURE__*/_react["default"].createElement("div", {
263
+ className: "swiper-ban"
264
+ }, data.groupSource.length > 1 && data.groupSource.map(function (item, i) {
265
+ return /*#__PURE__*/_react["default"].createElement("div", {
266
+ key: (item === null || item === void 0 ? void 0 : item.id) || i,
267
+ className: (0, _classnames["default"])('ban', {
268
+ active: i == carouseIndex,
269
+ isCircle: data.setting.dots.layout === 'layout1'
270
+ }),
271
+ onClick: function onClick() {
272
+ var _a;
273
+
274
+ return (_a = _this.carouselRef.current) === null || _a === void 0 ? void 0 : _a.goTo(i);
275
+ },
276
+ style: (0, _commonUtil.pxToRem)({
277
+ backgroundColor: i == carouseIndex ? data.setting.dots.hoverColor.mobile : data.setting.dots.color.mobile,
278
+ fontSize: i == carouseIndex ? data.setting.dots.hoverSize.mobile : data.setting.dots.size.mobile
279
+ })
280
+ });
281
+ })));
282
+ };
283
+
284
+ SearchBannerMobile.defaultProps = {
285
+ data: {
286
+ setting: {},
287
+ groupSource: []
288
+ }
289
+ };
290
+ return SearchBannerMobile;
291
+ }(_react["default"].Component);
292
+
293
+ var _default = SearchBannerMobile;
294
+ exports["default"] = _default;
@@ -0,0 +1,108 @@
1
+ .m-search-banner-mobile {
2
+ position: relative;
3
+ width: 100%;
4
+ }
5
+ .m-search-banner-mobile .search-bar {
6
+ height: 0.96rem;
7
+ padding: 0.2rem 0.32rem;
8
+ display: flex;
9
+ flex-direction: row-reverse;
10
+ align-items: center;
11
+ justify-content: space-between;
12
+ width: 100%;
13
+ position: absolute;
14
+ z-index: 2;
15
+ }
16
+ .m-search-banner-mobile .search-bar .right {
17
+ display: flex;
18
+ flex: 1;
19
+ margin-left: 0.3rem;
20
+ align-items: center;
21
+ justify-content: space-between;
22
+ }
23
+ .m-search-banner-mobile .search-bar .right .search-input-wrap {
24
+ flex: 1;
25
+ background: transparent;
26
+ border-radius: 0.4rem;
27
+ border: 0.02rem solid #fff;
28
+ padding: 0.08rem 0.2rem;
29
+ height: 0.56rem;
30
+ text-align: right;
31
+ display: flex;
32
+ justify-content: flex-start;
33
+ }
34
+ .m-search-banner-mobile .search-bar .right .message-wrap {
35
+ position: relative;
36
+ margin-left: 0.2rem;
37
+ }
38
+ .m-search-banner-mobile .search-bar .right .message-wrap .num {
39
+ position: absolute;
40
+ top: -0.12rem;
41
+ right: -0.06rem;
42
+ display: inline-block;
43
+ padding: 0.02rem 0.04rem;
44
+ min-width: 0.34rem;
45
+ text-align: center;
46
+ background-color: #0038A7;
47
+ border: 0.02rem solid #0038A7;
48
+ border-radius: 0.16rem;
49
+ font-family: 'Montserrat';
50
+ font-style: normal;
51
+ font-weight: 600;
52
+ font-size: 0.16rem;
53
+ color: #FFFFFF;
54
+ }
55
+ .m-search-banner-mobile .search-bar .logo img {
56
+ width: auto;
57
+ }
58
+ .m-search-banner-mobile .carouselItem {
59
+ position: relative;
60
+ display: flex;
61
+ }
62
+ .m-search-banner-mobile .carouselItem .carouseContent {
63
+ padding: 0 0.56rem;
64
+ position: absolute;
65
+ z-index: 2;
66
+ display: flex;
67
+ flex-direction: column;
68
+ margin-bottom: auto;
69
+ }
70
+ .m-search-banner-mobile .carouselItem .title {
71
+ margin-bottom: 0.16rem;
72
+ }
73
+ .m-search-banner-mobile .carouselItem .sub-title {
74
+ margin-bottom: 0.4rem;
75
+ }
76
+ .m-search-banner-mobile .carouselItem .btn-wrap {
77
+ display: flex;
78
+ align-items: center;
79
+ justify-content: flex-start;
80
+ }
81
+ .m-search-banner-mobile .carouselItem .btn-wrap .btn {
82
+ margin-right: 0.24rem;
83
+ }
84
+ .m-search-banner-mobile .swiper-ban {
85
+ position: absolute;
86
+ width: 100%;
87
+ bottom: 0.2rem;
88
+ display: flex;
89
+ align-items: center;
90
+ justify-content: center;
91
+ }
92
+ .m-search-banner-mobile .swiper-ban .ban {
93
+ font-size: 0.32rem;
94
+ width: 1em;
95
+ height: 0.25em;
96
+ background: #FFF;
97
+ cursor: inherit;
98
+ margin-right: 0.16rem;
99
+ transition: all 0.5s;
100
+ }
101
+ .m-search-banner-mobile .swiper-ban .ban.active {
102
+ opacity: 1;
103
+ }
104
+ .m-search-banner-mobile .swiper-ban .ban.isCircle {
105
+ width: 1em;
106
+ height: 1em;
107
+ border-radius: 50%;
108
+ }