@fonixtree/magic-design 1.0.219 → 1.0.220

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 (33) hide show
  1. package/es/common/LinkModal/index.js +3 -23
  2. package/es/composite-comp/bol/components/Banner/pc/components/SwiperBannerPc.js +13 -8
  3. package/es/composite-comp/bol/components/Banner/pc/index.less +6 -6
  4. package/es/composite-comp/dito/components/GroupedImage/defaultJSON.js +6 -7
  5. package/es/composite-comp/dito/components/GroupedImage/pc/index.js +243 -26
  6. package/es/composite-comp/dito/components/GroupedImage/pc/index.less +78 -9
  7. package/es/composite-comp/dito/components/Recommend/pc/index.js +2 -2
  8. package/es/composite-comp/dito/components/Recommend/pc/index.less +1 -1
  9. package/es/composite-comp/dito/second-config-panels/GroupedImageSecondConfig/index.js +127 -29
  10. package/es/composite-comp/dito/second-config-panels/GroupedImageSecondConfig/index.less +21 -0
  11. package/es/constants/index.js +1 -1
  12. package/es/core/Designer/ConfigPanel/index.js +217 -4
  13. package/es/core/Designer/ConfigPanel/index.less +39 -0
  14. package/es/meta-comp/components/Image/index.js +15 -11
  15. package/es/meta-comp/config-panels/ImageConfig/index.js +25 -8
  16. package/es/mobx/Store.js +4 -1
  17. package/lib/common/LinkModal/index.js +3 -23
  18. package/lib/composite-comp/bol/components/Banner/pc/components/SwiperBannerPc.js +13 -8
  19. package/lib/composite-comp/bol/components/Banner/pc/index.less +6 -6
  20. package/lib/composite-comp/dito/components/GroupedImage/defaultJSON.js +6 -7
  21. package/lib/composite-comp/dito/components/GroupedImage/pc/index.js +243 -26
  22. package/lib/composite-comp/dito/components/GroupedImage/pc/index.less +78 -9
  23. package/lib/composite-comp/dito/components/Recommend/pc/index.js +2 -2
  24. package/lib/composite-comp/dito/components/Recommend/pc/index.less +1 -1
  25. package/lib/composite-comp/dito/second-config-panels/GroupedImageSecondConfig/index.js +127 -29
  26. package/lib/composite-comp/dito/second-config-panels/GroupedImageSecondConfig/index.less +21 -0
  27. package/lib/constants/index.js +1 -1
  28. package/lib/core/Designer/ConfigPanel/index.js +217 -4
  29. package/lib/core/Designer/ConfigPanel/index.less +39 -0
  30. package/lib/meta-comp/components/Image/index.js +15 -11
  31. package/lib/meta-comp/config-panels/ImageConfig/index.js +25 -8
  32. package/lib/mobx/Store.js +4 -1
  33. package/package.json +1 -1
@@ -279,7 +279,7 @@ function (_super) {
279
279
  };
280
280
 
281
281
  _this.initTab = function (index, hideTabs) {
282
- var selectedTabDom = document.querySelector(".tab-select-wrap .tabTitle:nth-child(" + (index + 1) + ")");
282
+ var selectedTabDom = document.querySelector(".recommend-tab-select-wrap .tabTitle:nth-child(" + (index + 1) + ")");
283
283
  var tabLeft = 0;
284
284
  var tabWidth = 0;
285
285
 
@@ -642,7 +642,7 @@ function (_super) {
642
642
  return /*#__PURE__*/_react["default"].createElement("div", {
643
643
  className: "m-recommend-pc"
644
644
  }, !hideTabs && /*#__PURE__*/_react["default"].createElement("div", {
645
- className: "tab-select-wrap"
645
+ className: "recommend-tab-select-wrap"
646
646
  }, groupSource.map(function (tab, index) {
647
647
  var _image = index == tabIndex && tab.hover.open && tab.hover.image.open ? tab.hover.image : tab.image;
648
648
 
@@ -13,7 +13,7 @@
13
13
  // display: none;
14
14
  // }
15
15
 
16
- .tab-select-wrap {
16
+ .recommend-tab-select-wrap {
17
17
  display: flex;
18
18
  align-items: center;
19
19
  height: 50px;
@@ -7,6 +7,8 @@ exports["default"] = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
+ var _mobxReact = require("mobx-react");
11
+
10
12
  var _common = require("../../../../common");
11
13
 
12
14
  var _ImageConfig = _interopRequireDefault(require("../../../../meta-comp/config-panels/ImageConfig"));
@@ -15,12 +17,26 @@ var _TextConfig = _interopRequireDefault(require("../../../../meta-comp/config-p
15
17
 
16
18
  var _BaseConfig = _interopRequireDefault(require("../../../../meta-comp/config-panels/BaseConfig"));
17
19
 
20
+ var _GroupList = _interopRequireDefault(require("../../../../common/GroupList"));
21
+
22
+ var _Button = _interopRequireDefault(require("../../../../common/Button"));
23
+
18
24
  var _locale = require("../../../../locale");
19
25
 
20
26
  var _coreUtil = require("../../../../utils/coreUtil");
21
27
 
28
+ var _defaultImg = _interopRequireDefault(require("../../../../common/GroupList/defaultImg.png"));
29
+
30
+ var _defaultJSON = require("../../components/GroupedImage/defaultJSON");
31
+
32
+ var _mobx = require("../../../../mobx");
33
+
34
+ require("./index.less");
35
+
22
36
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
37
 
38
+ 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); }
39
+
24
40
  var __extends = void 0 && (void 0).__extends || function () {
25
41
  var _extendStatics = function extendStatics(d, b) {
26
42
  _extendStatics = Object.setPrototypeOf || {
@@ -63,13 +79,45 @@ var __assign = void 0 && (void 0).__assign || function () {
63
79
  return __assign.apply(this, arguments);
64
80
  };
65
81
 
82
+ var __decorate = void 0 && (void 0).__decorate || function (decorators, target, key, desc) {
83
+ var c = arguments.length,
84
+ r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
85
+ d;
86
+ 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--) {
87
+ if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
88
+ }
89
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
90
+ };
91
+
66
92
  var GroupedImageSecondConfig =
67
93
  /** @class */
68
94
  function (_super) {
69
95
  __extends(GroupedImageSecondConfig, _super);
70
96
 
71
97
  function GroupedImageSecondConfig() {
72
- var _this = _super !== null && _super.apply(this, arguments) || this;
98
+ var _this = _super !== null && _super.apply(this, arguments) || this; // 数据迁移:将旧的image1-4迁移到images数组
99
+
100
+
101
+ _this.migrateData = function (panelProps) {
102
+ if (!panelProps.images && (panelProps.image1 || panelProps.image2 || panelProps.image3 || panelProps.image4)) {
103
+ panelProps.images = [];
104
+ [panelProps.image1, panelProps.image2, panelProps.image3, panelProps.image4].forEach(function (img) {
105
+ if (img) {
106
+ panelProps.images.push(img);
107
+ }
108
+ }); // 删除旧字段
109
+
110
+ delete panelProps.image1;
111
+ delete panelProps.image2;
112
+ delete panelProps.image3;
113
+ delete panelProps.image4;
114
+ } // 确保images数组存在
115
+
116
+
117
+ if (!panelProps.images) {
118
+ panelProps.images = [];
119
+ }
120
+ };
73
121
 
74
122
  _this.getContentPanel = function () {
75
123
  var panelProps = _this.props.panelProps;
@@ -87,34 +135,6 @@ function (_super) {
87
135
  data: panelProps.title
88
136
  }),
89
137
  metaOption: panelProps.title
90
- }, {
91
- key: 'defaultSource_3',
92
- name: (0, _locale.i18n)('IMAGE') + " 1",
93
- value: /*#__PURE__*/_react["default"].createElement(_ImageConfig["default"], {
94
- data: panelProps.image1
95
- }),
96
- metaOption: panelProps.image1
97
- }, {
98
- key: 'defaultSource_4',
99
- name: (0, _locale.i18n)('IMAGE') + " 2",
100
- value: /*#__PURE__*/_react["default"].createElement(_ImageConfig["default"], {
101
- data: panelProps.image2
102
- }),
103
- metaOption: panelProps.image2
104
- }, {
105
- key: 'defaultSource_5',
106
- name: (0, _locale.i18n)('IMAGE') + " 3",
107
- value: /*#__PURE__*/_react["default"].createElement(_ImageConfig["default"], {
108
- data: panelProps.image3
109
- }),
110
- metaOption: panelProps.image3
111
- }, {
112
- key: 'defaultSource_6',
113
- name: (0, _locale.i18n)('IMAGE') + " 4",
114
- value: /*#__PURE__*/_react["default"].createElement(_ImageConfig["default"], {
115
- data: panelProps.image4
116
- }),
117
- metaOption: panelProps.image4
118
138
  }];
119
139
  return /*#__PURE__*/_react["default"].createElement(_common.Collapse, {
120
140
  headerSize: "middle",
@@ -127,6 +147,69 @@ function (_super) {
127
147
  });
128
148
  };
129
149
 
150
+ _this.getImagePanel = function () {
151
+ var panelProps = _this.props.panelProps;
152
+ var clickedImage = _mobx.store.clickedImage; // 如果选中了图片,不显示图片列表,由ConfigPanel统一处理第三级面板
153
+
154
+ if (clickedImage) {
155
+ return null;
156
+ } // 显示图片列表
157
+
158
+
159
+ var renderCard = function renderCard(src) {
160
+ var _a, _b;
161
+
162
+ return /*#__PURE__*/_react["default"].createElement("div", {
163
+ className: "card_wrap"
164
+ }, /*#__PURE__*/_react["default"].createElement("img", {
165
+ alt: "",
166
+ src: ((0, _coreUtil.isPc)() ? (_a = src.content) === null || _a === void 0 ? void 0 : _a.pcImgSrc : (_b = src.content) === null || _b === void 0 ? void 0 : _b.h5ImgSrc) || _defaultImg["default"]
167
+ }), /*#__PURE__*/_react["default"].createElement("div", {
168
+ className: "name"
169
+ }, "Image Name"));
170
+ };
171
+
172
+ var onClickItem = function onClickItem(node) {
173
+ _mobx.store.setState({
174
+ clickedImage: node.id
175
+ });
176
+ };
177
+
178
+ var onAddClick = function onAddClick() {
179
+ if (!panelProps.images) {
180
+ panelProps.images = [];
181
+ }
182
+
183
+ var newImage = (0, _defaultJSON.createImageMeta)(panelProps.id);
184
+ panelProps.images.push(newImage);
185
+
186
+ _this.setState({});
187
+
188
+ (0, _coreUtil.renderPreview)();
189
+ };
190
+
191
+ var reRender = function reRender() {
192
+ _this.setState({});
193
+ };
194
+
195
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
196
+ className: "node_list"
197
+ }, !panelProps.images || panelProps.images.length === 0 ? /*#__PURE__*/_react["default"].createElement("span", {
198
+ className: "notice"
199
+ }) : /*#__PURE__*/_react["default"].createElement(_GroupList["default"], {
200
+ onClickItem: onClickItem,
201
+ renderCard: renderCard,
202
+ reRender: reRender,
203
+ source: panelProps.images || []
204
+ })), /*#__PURE__*/_react["default"].createElement("div", {
205
+ className: "btn_wrap"
206
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
207
+ icon: "icon-add",
208
+ onClick: onAddClick,
209
+ type: "primary"
210
+ }, (0, _locale.i18n)('ADD_IMAGE'))));
211
+ };
212
+
130
213
  _this.resetHover = function () {
131
214
  var panelProps = _this.props.panelProps;
132
215
 
@@ -138,6 +221,16 @@ function (_super) {
138
221
  return _this;
139
222
  }
140
223
 
224
+ GroupedImageSecondConfig.prototype.componentDidMount = function () {
225
+ var panelProps = this.props.panelProps;
226
+ this.migrateData(panelProps);
227
+ };
228
+
229
+ GroupedImageSecondConfig.prototype.componentWillReceiveProps = function (nextProps) {
230
+ var panelProps = nextProps.panelProps;
231
+ this.migrateData(panelProps);
232
+ };
233
+
141
234
  GroupedImageSecondConfig.prototype.render = function () {
142
235
  var _this = this;
143
236
 
@@ -174,6 +267,10 @@ function (_super) {
174
267
  value: this.getContentPanel()
175
268
  }, {
176
269
  key: '2',
270
+ name: (0, _locale.i18n)('IMAGE'),
271
+ value: this.getImagePanel()
272
+ }, {
273
+ key: '3',
177
274
  name: (0, _locale.i18n)('HOVER'),
178
275
  value: hoverPanel,
179
276
  metaOption: panelProps.hover,
@@ -185,6 +282,7 @@ function (_super) {
185
282
  GroupedImageSecondConfig.defaultProps = {
186
283
  panelProps: {}
187
284
  };
285
+ GroupedImageSecondConfig = __decorate([(0, _mobxReact.inject)('store'), _mobxReact.observer], GroupedImageSecondConfig);
188
286
  return GroupedImageSecondConfig;
189
287
  }(_BaseConfig["default"]);
190
288
 
@@ -0,0 +1,21 @@
1
+ .grouped_image_second_conf_wrap {
2
+ .config_header {
3
+ .button_wrap {
4
+ display: flex;
5
+ }
6
+
7
+ .title {
8
+ margin-top: 20px;
9
+ font-family: 'Open Sans';
10
+ font-style: normal;
11
+ font-weight: 700;
12
+ font-size: 26px;
13
+ line-height: 32px;
14
+ color: #232F46;
15
+ overflow: hidden;
16
+ text-overflow: ellipsis;
17
+ white-space: nowrap;
18
+ }
19
+ }
20
+ }
21
+
@@ -119,7 +119,7 @@ var urlTypeMap = {
119
119
  AFFILIATE_PRODUCT: 'AffiliateProduct',
120
120
  ANCHOR: 'Anchor',
121
121
  CARD_PRODUCT_LIST: 'ProductList',
122
- PICTURE: 'Picture'
122
+ PICTURE: 'ImageLibrary'
123
123
  };
124
124
  exports.urlTypeMap = urlTypeMap;
125
125
  var respCodeMap = {
@@ -9,6 +9,8 @@ exports.getSecondConfigName = exports["default"] = void 0;
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
+ var _antd = require("antd");
13
+
12
14
  var _TerminalSelect = _interopRequireDefault(require("./TerminalSelect"));
13
15
 
14
16
  var _coreUtil = require("../../../utils/coreUtil");
@@ -25,6 +27,8 @@ var _mobx = require("../../../mobx");
25
27
 
26
28
  var _locale = require("../../../locale");
27
29
 
30
+ var _ImageConfig = _interopRequireDefault(require("../../../meta-comp/config-panels/ImageConfig"));
31
+
28
32
  require("./index.less");
29
33
 
30
34
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -164,7 +168,8 @@ function (_super) {
164
168
  function ConfigPanel() {
165
169
  var _this = _super !== null && _super.apply(this, arguments) || this;
166
170
 
167
- _this.preClickedGroup = null; // 以及面板展开状态
171
+ _this.preClickedGroup = null;
172
+ _this.preClickedImage = null; // 以及面板展开状态
168
173
 
169
174
  _this.configOpen = false;
170
175
  _this.state = {
@@ -179,6 +184,7 @@ function (_super) {
179
184
 
180
185
  _this.setState({
181
186
  clickedGroup: _mobx.store.clickedGroup,
187
+ clickedImage: _mobx.store.clickedImage,
182
188
  selectedNode: selectedNode
183
189
  }); // 展开一级面板
184
190
 
@@ -194,9 +200,17 @@ function (_super) {
194
200
  _this.closeSecConfig();
195
201
  } else if (Boolean(_mobx.store.clickedGroup) != Boolean(_this.preClickedGroup)) {
196
202
  _this.openSecConfig();
203
+ } // 展开三级面板
204
+
205
+
206
+ if (!_mobx.store.clickedImage && _this.preClickedImage) {
207
+ _this.closeThirdConfig();
208
+ } else if (Boolean(_mobx.store.clickedImage) != Boolean(_this.preClickedImage)) {
209
+ _this.openThirdConfig();
197
210
  }
198
211
 
199
212
  _this.preClickedGroup = _mobx.store.clickedGroup;
213
+ _this.preClickedImage = _mobx.store.clickedImage;
200
214
  };
201
215
 
202
216
  _this.animation = function (type) {
@@ -263,6 +277,22 @@ function (_super) {
263
277
  });
264
278
  };
265
279
 
280
+ _this.openThirdConfig = function () {
281
+ var thirdConfigWrap = document.getElementsByClassName('third_config_wrap')[0];
282
+
283
+ if (thirdConfigWrap) {
284
+ thirdConfigWrap.setAttribute('style', 'animation-name:openSecConfig;animation-duration: 0.3s;animation-fill-mode:both');
285
+ }
286
+ };
287
+
288
+ _this.closeThirdConfig = function () {
289
+ var thirdConfigWrap = document.getElementsByClassName('third_config_wrap')[0];
290
+
291
+ if (thirdConfigWrap) {
292
+ thirdConfigWrap.setAttribute('style', 'animation-name:closeSecConfig;animation-duration: 0.3s;animation-fill-mode:both');
293
+ }
294
+ };
295
+
266
296
  _this.onDoneClick = function () {
267
297
  var _a = _this.props,
268
298
  device = _a.device,
@@ -334,6 +364,164 @@ function (_super) {
334
364
  }));
335
365
  };
336
366
 
367
+ _this.onThirdConfigBack = function () {
368
+ _mobx.store.setState({
369
+ clickedImage: ''
370
+ });
371
+ };
372
+
373
+ _this.onThirdConfigSwitchChange = function (checked) {
374
+ var _a;
375
+
376
+ var selectedNode = _this.state.selectedNode;
377
+ var panelProps = (0, _commonUtil.ensure)(function () {
378
+ return selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource.find(function (src) {
379
+ return src.id === _this.state.clickedGroup;
380
+ });
381
+ }, null);
382
+
383
+ if (!panelProps && (selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource2)) {
384
+ panelProps = (0, _commonUtil.ensure)(function () {
385
+ return selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource2.find(function (src) {
386
+ return src.id === _this.state.clickedGroup;
387
+ });
388
+ }, null);
389
+ }
390
+
391
+ if (panelProps && _mobx.store.clickedImage) {
392
+ var selectedImage = (_a = panelProps.images) === null || _a === void 0 ? void 0 : _a.find(function (img) {
393
+ return img && img.id === _mobx.store.clickedImage;
394
+ });
395
+
396
+ if (selectedImage) {
397
+ selectedImage.open = checked;
398
+ (0, _coreUtil.renderPreview)();
399
+
400
+ _this.setState({});
401
+ }
402
+ }
403
+ };
404
+
405
+ _this.getThirdConfigSwitch = function () {
406
+ var selectedNode = _this.state.selectedNode;
407
+
408
+ if (!selectedNode || !_mobx.store.clickedImage) {
409
+ return null;
410
+ }
411
+
412
+ var panelProps = (0, _commonUtil.ensure)(function () {
413
+ return selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource.find(function (src) {
414
+ return src.id === _this.state.clickedGroup;
415
+ });
416
+ }, null);
417
+
418
+ if (!panelProps && (selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource2)) {
419
+ panelProps = (0, _commonUtil.ensure)(function () {
420
+ return selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource2.find(function (src) {
421
+ return src.id === _this.state.clickedGroup;
422
+ });
423
+ }, null);
424
+ }
425
+
426
+ if (!panelProps) {
427
+ return null;
428
+ } // 数据迁移:确保images数组存在
429
+
430
+
431
+ if (!panelProps.images && (panelProps.image1 || panelProps.image2 || panelProps.image3 || panelProps.image4)) {
432
+ panelProps.images = [];
433
+ [panelProps.image1, panelProps.image2, panelProps.image3, panelProps.image4].forEach(function (img) {
434
+ if (img) {
435
+ panelProps.images.push(img);
436
+ }
437
+ });
438
+ }
439
+
440
+ if (!panelProps.images) {
441
+ panelProps.images = [];
442
+ }
443
+
444
+ var selectedImage = panelProps.images.find(function (img) {
445
+ return img && img.id === _mobx.store.clickedImage;
446
+ });
447
+
448
+ if (selectedImage) {
449
+ return /*#__PURE__*/_react["default"].createElement(_antd.Switch, {
450
+ checked: selectedImage.open !== false,
451
+ onChange: _this.onThirdConfigSwitchChange
452
+ });
453
+ }
454
+
455
+ return null;
456
+ };
457
+
458
+ _this.getThirdConfigInstance = function () {
459
+ var _a, _b;
460
+
461
+ var selectedNode = _this.state.selectedNode;
462
+
463
+ if (!selectedNode || !_mobx.store.clickedImage) {
464
+ return null;
465
+ }
466
+
467
+ var panelProps = (0, _commonUtil.ensure)(function () {
468
+ return selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource.find(function (src) {
469
+ return src.id === _this.state.clickedGroup;
470
+ });
471
+ }, null);
472
+
473
+ if (!panelProps && (selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource2)) {
474
+ panelProps = (0, _commonUtil.ensure)(function () {
475
+ return selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource2.find(function (src) {
476
+ return src.id === _this.state.clickedGroup;
477
+ });
478
+ }, null);
479
+ }
480
+
481
+ if (!panelProps) {
482
+ console.warn('getThirdConfigInstance: panelProps not found', {
483
+ clickedGroup: _this.state.clickedGroup,
484
+ selectedNodeType: selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.type,
485
+ hasGroupSource: !!(selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource),
486
+ hasGroupSource2: !!(selectedNode === null || selectedNode === void 0 ? void 0 : selectedNode.groupSource2)
487
+ });
488
+ return null;
489
+ } // 数据迁移:确保images数组存在
490
+
491
+
492
+ if (!panelProps.images && (panelProps.image1 || panelProps.image2 || panelProps.image3 || panelProps.image4)) {
493
+ panelProps.images = [];
494
+ [panelProps.image1, panelProps.image2, panelProps.image3, panelProps.image4].forEach(function (img) {
495
+ if (img) {
496
+ panelProps.images.push(img);
497
+ }
498
+ });
499
+ }
500
+
501
+ if (!panelProps.images) {
502
+ panelProps.images = [];
503
+ }
504
+
505
+ var selectedImage = panelProps.images.find(function (img) {
506
+ return img && img.id === _mobx.store.clickedImage;
507
+ });
508
+
509
+ if (!selectedImage) {
510
+ console.warn('getThirdConfigInstance: selectedImage not found', {
511
+ clickedImage: _mobx.store.clickedImage,
512
+ imagesCount: (_a = panelProps.images) === null || _a === void 0 ? void 0 : _a.length,
513
+ imageIds: (_b = panelProps.images) === null || _b === void 0 ? void 0 : _b.map(function (img) {
514
+ return img === null || img === void 0 ? void 0 : img.id;
515
+ })
516
+ });
517
+ return null;
518
+ }
519
+
520
+ return /*#__PURE__*/_react["default"].createElement(_ImageConfig["default"], {
521
+ data: selectedImage
522
+ });
523
+ };
524
+
337
525
  _this.onTerminalChange = function (terminal) {
338
526
  var selectedNode = _this.state.selectedNode;
339
527
  selectedNode.activeTerminal = terminal;
@@ -353,7 +541,13 @@ function (_super) {
353
541
  var _this = this;
354
542
 
355
543
  this.distroy = (0, _mobx.autorun)(function () {
356
- _this.resetState(_this.props, _mobx.store.clickedFloor);
544
+ // 监听store中所有相关状态的变化,确保clickedImage变化时也能触发resetState
545
+ // 通过访问clickedFloor、clickedGroup和clickedImage,确保autorun能监听到所有变化
546
+ var clickedFloor = _mobx.store.clickedFloor;
547
+ var clickedGroup = _mobx.store.clickedGroup;
548
+ var clickedImage = _mobx.store.clickedImage;
549
+
550
+ _this.resetState(_this.props, clickedFloor);
357
551
  });
358
552
  };
359
553
 
@@ -373,7 +567,9 @@ function (_super) {
373
567
  var device = this.props.device;
374
568
  var _c = this.state,
375
569
  selectedNode = _c.selectedNode,
376
- clickedGroup = _c.clickedGroup;
570
+ clickedGroup = _c.clickedGroup,
571
+ clickedImage = _c.clickedImage;
572
+ var hasClickedImage = _mobx.store.clickedImage && clickedImage;
377
573
  return /*#__PURE__*/_react["default"].createElement("div", {
378
574
  className: "config_wrap"
379
575
  }, /*#__PURE__*/_react["default"].createElement("div", {
@@ -408,7 +604,24 @@ function (_super) {
408
604
  dangerouslySetInnerHTML: {
409
605
  __html: getSecondConfigName(selectedNode, clickedGroup)
410
606
  }
411
- })), this.getSecondConfigInstance()));
607
+ })), !hasClickedImage && this.getSecondConfigInstance()), hasClickedImage && /*#__PURE__*/_react["default"].createElement("div", {
608
+ className: "third_config_wrap",
609
+ style: {
610
+ left: 0
611
+ }
612
+ }, /*#__PURE__*/_react["default"].createElement("div", {
613
+ className: "config_header"
614
+ }, /*#__PURE__*/_react["default"].createElement("div", {
615
+ className: "button_wrap"
616
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
617
+ icon: "icon-left",
618
+ onClick: this.onThirdConfigBack,
619
+ type: "icon"
620
+ })), /*#__PURE__*/_react["default"].createElement("div", {
621
+ className: "title_wrap"
622
+ }, /*#__PURE__*/_react["default"].createElement("div", {
623
+ className: "title"
624
+ }, (0, _locale.i18n)('IMAGE')), this.getThirdConfigSwitch())), this.getThirdConfigInstance()));
412
625
  };
413
626
 
414
627
  return ConfigPanel;
@@ -79,6 +79,45 @@
79
79
  }
80
80
  }
81
81
  }
82
+
83
+ .third_config_wrap {
84
+ position: absolute;
85
+ height: 100vh;
86
+ overflow: auto;
87
+ width: 354px;
88
+ z-index: 202;
89
+ left: -354px;
90
+ bottom: 0;
91
+ top: 0;
92
+ background-color: #FFF;
93
+ padding: 24px;
94
+
95
+ .config_header {
96
+ .button_wrap {
97
+ display: flex;
98
+ }
99
+
100
+ .title_wrap {
101
+ margin: 20px 0;
102
+ display: flex;
103
+ justify-content: space-between;
104
+ align-items: center;
105
+
106
+ .title {
107
+ font-family: 'Open Sans';
108
+ font-style: normal;
109
+ font-weight: 700;
110
+ font-size: 26px;
111
+ line-height: 32px;
112
+ color: #232F46;
113
+ overflow: hidden;
114
+ text-overflow: ellipsis;
115
+ white-space: nowrap;
116
+ flex: 1;
117
+ }
118
+ }
119
+ }
120
+ }
82
121
  }
83
122
 
84
123
 
@@ -81,17 +81,17 @@ function (_super) {
81
81
  };
82
82
 
83
83
  _this.getStyle = function () {
84
- var _a, _b;
85
-
86
- var _c = _this.props,
87
- data = _c.data,
88
- hoverState = _c.hoverState,
89
- maxHeight = _c.maxHeight,
90
- maxWidth = _c.maxWidth,
91
- minHeight = _c.minHeight,
92
- minWidth = _c.minWidth,
93
- limitWidthHeight = _c.limitWidthHeight,
94
- scale = _c.scale;
84
+ var _a, _b, _c;
85
+
86
+ var _d = _this.props,
87
+ data = _d.data,
88
+ hoverState = _d.hoverState,
89
+ maxHeight = _d.maxHeight,
90
+ maxWidth = _d.maxWidth,
91
+ minHeight = _d.minHeight,
92
+ minWidth = _d.minWidth,
93
+ limitWidthHeight = _d.limitWidthHeight,
94
+ scale = _d.scale;
95
95
  var hoverImgSrc = _this.state.hoverImgSrc;
96
96
  var obj = {};
97
97
 
@@ -133,6 +133,10 @@ function (_super) {
133
133
  }
134
134
  }
135
135
 
136
+ if ((_c = data === null || data === void 0 ? void 0 : data.content) === null || _c === void 0 ? void 0 : _c.borderRadius) {
137
+ obj.borderRadius = data.content.borderRadius + "px";
138
+ }
139
+
136
140
  return obj;
137
141
  };
138
142