@fonixtree/magic-design 0.0.83 → 0.0.85

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 (75) hide show
  1. package/es/assets/less/button.less +23 -0
  2. package/es/assets/less/datepicker.less +11 -0
  3. package/es/assets/less/index.less +2 -1
  4. package/es/composite-comp/bol/components/Banner/mobile/index.js +5 -1
  5. package/es/composite-comp/bol/components/Carousel/mobile/index.js +1 -1
  6. package/es/composite-comp/bol/components/Carousel/pc/index.js +18 -14
  7. package/es/composite-comp/bol/components/ImageGallery/defaultJSON.js +13 -4
  8. package/es/composite-comp/bol/components/ImageGallery/index.js +5 -1
  9. package/es/composite-comp/bol/components/ImageGallery/mobile/index.js +53 -15
  10. package/es/composite-comp/bol/components/ImageGallery/mobile/index.less +11 -63
  11. package/es/composite-comp/bol/components/ImageGallery/pc/index.js +138 -0
  12. package/es/composite-comp/bol/components/ImageGallery/pc/index.less +21 -0
  13. package/es/composite-comp/bol/config-panels/ImageGalleryConfig/ImageGalleryConfigImageGroup/index.js +4 -2
  14. package/es/composite-comp/bol/config-panels/ImageGalleryConfig/index.js +20 -4
  15. package/es/composite-comp/bol/second-config-panels/ImageGallerySecondConfig/index.js +6 -17
  16. package/es/composite-comp/common/components/ProductItem/index.less +0 -1
  17. package/es/composite-comp/common/config-panels/CustomizeConfig/index.js +30 -20
  18. package/es/composite-comp/dito/components/FlashDeal/mobile/index.js +0 -12
  19. package/es/composite-comp/dito/components/FlashDeal/mobile/index.less +1 -0
  20. package/es/composite-comp/dito/components/FlashDeal/pc/index.js +0 -42
  21. package/es/composite-comp/dito/components/FlashDeal/pc/index.less +1 -0
  22. package/es/composite-comp/dito/components/SearchBar/mobile/index.js +8 -6
  23. package/es/constants/component-types.js +3 -1
  24. package/es/constants/index.js +1 -0
  25. package/es/constants/layout.js +1 -6
  26. package/es/core/Designer/AppointmentModal/index.js +83 -0
  27. package/es/core/Designer/AppointmentModal/index.less +10 -0
  28. package/es/core/Designer/ConfigPanel/index.js +1 -0
  29. package/es/core/Designer/QuickMenuBar/index.js +34 -2
  30. package/es/core/Designer/QuickMenuBar/index.less +34 -0
  31. package/es/core/Designer/ViewArea/index.js +32 -2
  32. package/es/core/Designer/ViewArea/index.less +29 -0
  33. package/es/core/Designer/index.js +44 -4
  34. package/es/decorator/metaDecorator.js +1 -1
  35. package/es/locale/en/en.json +5 -0
  36. package/es/locale/es/es.json +5 -0
  37. package/es/locale/id/id.json +5 -0
  38. package/lib/assets/less/button.less +23 -0
  39. package/lib/assets/less/datepicker.less +11 -0
  40. package/lib/assets/less/index.less +2 -1
  41. package/lib/composite-comp/bol/components/Banner/mobile/index.js +5 -1
  42. package/lib/composite-comp/bol/components/Carousel/mobile/index.js +1 -1
  43. package/lib/composite-comp/bol/components/Carousel/pc/index.js +18 -14
  44. package/lib/composite-comp/bol/components/ImageGallery/defaultJSON.js +13 -4
  45. package/lib/composite-comp/bol/components/ImageGallery/index.js +5 -1
  46. package/lib/composite-comp/bol/components/ImageGallery/mobile/index.js +53 -15
  47. package/lib/composite-comp/bol/components/ImageGallery/mobile/index.less +11 -63
  48. package/lib/composite-comp/bol/components/ImageGallery/pc/index.js +138 -0
  49. package/lib/composite-comp/bol/components/ImageGallery/pc/index.less +21 -0
  50. package/lib/composite-comp/bol/config-panels/ImageGalleryConfig/ImageGalleryConfigImageGroup/index.js +4 -2
  51. package/lib/composite-comp/bol/config-panels/ImageGalleryConfig/index.js +20 -4
  52. package/lib/composite-comp/bol/second-config-panels/ImageGallerySecondConfig/index.js +6 -17
  53. package/lib/composite-comp/common/components/ProductItem/index.less +0 -1
  54. package/lib/composite-comp/common/config-panels/CustomizeConfig/index.js +30 -20
  55. package/lib/composite-comp/dito/components/FlashDeal/mobile/index.js +0 -12
  56. package/lib/composite-comp/dito/components/FlashDeal/mobile/index.less +1 -0
  57. package/lib/composite-comp/dito/components/FlashDeal/pc/index.js +0 -42
  58. package/lib/composite-comp/dito/components/FlashDeal/pc/index.less +1 -0
  59. package/lib/composite-comp/dito/components/SearchBar/mobile/index.js +8 -6
  60. package/lib/constants/component-types.js +3 -1
  61. package/lib/constants/index.js +1 -0
  62. package/lib/constants/layout.js +1 -6
  63. package/lib/core/Designer/AppointmentModal/index.js +83 -0
  64. package/lib/core/Designer/AppointmentModal/index.less +10 -0
  65. package/lib/core/Designer/ConfigPanel/index.js +1 -0
  66. package/lib/core/Designer/QuickMenuBar/index.js +34 -2
  67. package/lib/core/Designer/QuickMenuBar/index.less +34 -0
  68. package/lib/core/Designer/ViewArea/index.js +32 -2
  69. package/lib/core/Designer/ViewArea/index.less +29 -0
  70. package/lib/core/Designer/index.js +44 -4
  71. package/lib/decorator/metaDecorator.js +1 -1
  72. package/lib/locale/en/en.json +5 -0
  73. package/lib/locale/es/es.json +5 -0
  74. package/lib/locale/id/id.json +5 -0
  75. package/package.json +1 -1
@@ -91,21 +91,12 @@ function (_super) {
91
91
  showRowNum: true
92
92
  };
93
93
 
94
- _this.layoutChange = function (v) {
94
+ _this.onInit = function (v) {
95
95
  var _a;
96
96
 
97
97
  var _b = _this.props,
98
- selectedLayoutFun = _b.selectedLayoutFun,
99
- data = _b.data,
100
98
  component = _b.component,
101
- id = _b.id;
102
-
103
- if (selectedLayoutFun) {
104
- selectedLayoutFun(v);
105
- } else {
106
- data.layout = v;
107
- } // 轮播组件特殊处理
108
-
99
+ id = _b.id; // 轮播组件特殊处理
109
100
 
110
101
  if (component === 'carousel') {
111
102
  if (v === 'layout2') {
@@ -136,6 +127,19 @@ function (_super) {
136
127
  });
137
128
  }
138
129
  }
130
+ } // imageGallery 第二种布局可选列数
131
+
132
+
133
+ if (component === 'imageGallery') {
134
+ if (v === 'layout2') {
135
+ _this.setState({
136
+ showRowNum: true
137
+ });
138
+ } else {
139
+ _this.setState({
140
+ showRowNum: false
141
+ });
142
+ }
139
143
  } // 移动端导航特殊处理
140
144
  // 更改需求,两个布局都需 可选行数
141
145
  // if (component == 'mobileNavigation') {
@@ -146,6 +150,20 @@ function (_super) {
146
150
  // }
147
151
  // }
148
152
 
153
+ };
154
+
155
+ _this.layoutChange = function (v) {
156
+ var _a = _this.props,
157
+ selectedLayoutFun = _a.selectedLayoutFun,
158
+ data = _a.data;
159
+
160
+ if (selectedLayoutFun) {
161
+ selectedLayoutFun(v);
162
+ } else {
163
+ data.layout = v;
164
+ }
165
+
166
+ _this.onInit(v);
149
167
 
150
168
  _this.selfRender(); // this.setState({});
151
169
 
@@ -169,15 +187,7 @@ function (_super) {
169
187
  CustomizeConfig.prototype.componentDidMount = function () {
170
188
  var _a;
171
189
 
172
- if (((_a = this.props.data) === null || _a === void 0 ? void 0 : _a.layout) === 'layout2') {
173
- this.setState({
174
- showRowNum: false
175
- });
176
- } else {
177
- this.setState({
178
- showRowNum: true
179
- });
180
- }
190
+ this.onInit((_a = this.props.data) === null || _a === void 0 ? void 0 : _a.layout);
181
191
  };
182
192
 
183
193
  CustomizeConfig.prototype.render = function () {
@@ -13,8 +13,6 @@ var _defImg = _interopRequireDefault(require("./imgs/defImg1.png"));
13
13
 
14
14
  var _defImg2 = _interopRequireDefault(require("./imgs/defImg2.png"));
15
15
 
16
- var _defImg3 = _interopRequireDefault(require("./imgs/defImg3.png"));
17
-
18
16
  var _ProductItem = _interopRequireDefault(require("../../../../common/components/ProductItem"));
19
17
 
20
18
  var _coreUtil = require("../../../../../utils/coreUtil");
@@ -238,16 +236,6 @@ var defaultData = [{
238
236
  discountPercent: 50,
239
237
  salePercent: 5000,
240
238
  sppType: '2'
241
- }, {
242
- imgUrlContent: {
243
- url: _defImg3["default"]
244
- },
245
- offerName: 'DITO Level-Up Pack 99 7GB',
246
- salesPrice: 99,
247
- marketPrice: 138,
248
- discountPercent: 28,
249
- salePercent: 5000,
250
- sppType: '2'
251
239
  }];
252
240
 
253
241
  var FlashDealMobile =
@@ -66,6 +66,7 @@
66
66
  white-space: nowrap;
67
67
  display: flex;
68
68
  align-items: flex-start;
69
+ justify-content: flex-start;
69
70
  position: relative;
70
71
 
71
72
  .loading-wrap {
@@ -15,8 +15,6 @@ var _defImg = _interopRequireDefault(require("./imgs/defImg1.png"));
15
15
 
16
16
  var _defImg2 = _interopRequireDefault(require("./imgs/defImg2.png"));
17
17
 
18
- var _defImg3 = _interopRequireDefault(require("./imgs/defImg3.png"));
19
-
20
18
  var _ProductItem = _interopRequireDefault(require("../../../../common/components/ProductItem"));
21
19
 
22
20
  var _coreUtil = require("../../../../../utils/coreUtil");
@@ -242,46 +240,6 @@ var defaultData = [{
242
240
  discountPercent: 50,
243
241
  salePercent: 5000,
244
242
  sppType: '2'
245
- }, {
246
- imgUrlContent: {
247
- url: _defImg3["default"]
248
- },
249
- offerName: 'DITO Level-Up Pack 99 7GB',
250
- salesPrice: 99,
251
- marketPrice: 138,
252
- discountPercent: 28,
253
- salePercent: 5000,
254
- sppType: '2'
255
- }, {
256
- imgUrlContent: {
257
- url: _defImg3["default"]
258
- },
259
- offerName: 'DITO Level-Up Pack 99 7GB',
260
- salesPrice: 99,
261
- marketPrice: 138,
262
- discountPercent: 28,
263
- salePercent: 5000,
264
- sppType: '2'
265
- }, {
266
- imgUrlContent: {
267
- url: _defImg3["default"]
268
- },
269
- offerName: 'DITO Level-Up Pack 99 7GB',
270
- salesPrice: 99,
271
- marketPrice: 138,
272
- discountPercent: 28,
273
- salePercent: 5000,
274
- sppType: '2'
275
- }, {
276
- imgUrlContent: {
277
- url: _defImg3["default"]
278
- },
279
- offerName: 'DITO Level-Up Pack 99 7GB',
280
- salesPrice: 99,
281
- marketPrice: 138,
282
- discountPercent: 28,
283
- salePercent: 5000,
284
- sppType: '2'
285
243
  }];
286
244
 
287
245
  var FlashDealPc =
@@ -92,6 +92,7 @@
92
92
  white-space: nowrap;
93
93
  display: flex;
94
94
  align-items: flex-start;
95
+ justify-content: flex-start;
95
96
  position: relative;
96
97
  flex: 1;
97
98
 
@@ -232,6 +232,8 @@ function (_super) {
232
232
  };
233
233
 
234
234
  SearchMobile.prototype.render = function () {
235
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
236
+
235
237
  var data = this.props.data;
236
238
  console.log('----search ', data);
237
239
  var messageNum = this.state.messageNum; // let styleWrap = {};
@@ -253,22 +255,22 @@ function (_super) {
253
255
  className: "m-search-bar"
254
256
  }, /*#__PURE__*/_react["default"].createElement("div", {
255
257
  className: "right"
256
- }, data.content && data.content.box.open && /*#__PURE__*/_react["default"].createElement("div", {
258
+ }, data.content && ((_a = data.content.box) === null || _a === void 0 ? void 0 : _a.open) && /*#__PURE__*/_react["default"].createElement("div", {
257
259
  className: "search-input-wrap",
258
260
  onClick: function onClick() {
259
261
  return (0, _coreUtil.clickUrl)('/search-page');
260
262
  },
261
263
  style: {
262
- borderColor: data.content.box.color.mobile
264
+ borderColor: (_c = (_b = data.content.box) === null || _b === void 0 ? void 0 : _b.color) === null || _c === void 0 ? void 0 : _c.mobile
263
265
  }
264
266
  }, /*#__PURE__*/_react["default"].createElement(_common.Iconfont, {
265
- color: data.content.box.color.mobile,
267
+ color: (_e = (_d = data.content.box) === null || _d === void 0 ? void 0 : _d.color) === null || _e === void 0 ? void 0 : _e.mobile,
266
268
  size: 24,
267
269
  type: "icon-search2"
268
- })), data.content && data.content.icon.open && /*#__PURE__*/_react["default"].createElement("div", {
270
+ })), data.content && ((_f = data.content.icon) === null || _f === void 0 ? void 0 : _f.open) && /*#__PURE__*/_react["default"].createElement("div", {
269
271
  className: "message-wrap"
270
272
  }, /*#__PURE__*/_react["default"].createElement(_common.Iconfont, {
271
- color: data.content.icon.color.mobile,
273
+ color: (_h = (_g = data.content.icon) === null || _g === void 0 ? void 0 : _g.color) === null || _h === void 0 ? void 0 : _h.mobile,
272
274
  onClick: function onClick() {
273
275
  return (0, _coreUtil.clickUrl)('/message-center');
274
276
  },
@@ -276,7 +278,7 @@ function (_super) {
276
278
  type: "icon-ChatDots"
277
279
  }), !!messageNum && /*#__PURE__*/_react["default"].createElement("span", {
278
280
  className: "num"
279
- }, messageNum))), data.content && data.content.logo.open && /*#__PURE__*/_react["default"].createElement(_components.MetaImage, {
281
+ }, messageNum))), data.content && ((_j = data.content.logo) === null || _j === void 0 ? void 0 : _j.open) && /*#__PURE__*/_react["default"].createElement(_components.MetaImage, {
280
282
  data: data.content.logo,
281
283
  style: {
282
284
  height: 30
@@ -69,6 +69,8 @@ var _ImageTextSecondConfig = _interopRequireDefault(require("../composite-comp/b
69
69
 
70
70
  var _CarouselSecondConfig = _interopRequireDefault(require("../composite-comp/bol/second-config-panels/CarouselSecondConfig"));
71
71
 
72
+ var _ImageGallerySecondConfig = _interopRequireDefault(require("../composite-comp/bol/second-config-panels/ImageGallerySecondConfig"));
73
+
72
74
  var _RecommendSecondConfig = _interopRequireDefault(require("../composite-comp/dito/second-config-panels/RecommendSecondConfig"));
73
75
 
74
76
  var _MobileNavigationSecondConfig = _interopRequireDefault(require("../composite-comp/dito/second-config-panels/MobileNavigationSecondConfig"));
@@ -99,5 +101,5 @@ var configPanelMap = (_b = {}, _b[_Banner["default"].type] = _BannerConfig["defa
99
101
  */
100
102
 
101
103
  exports.configPanelMap = configPanelMap;
102
- var secondConfigPanelMap = (_c = {}, _c[_Banner["default"].type] = _BannerSecondConfig["default"], _c[_Text["default"].type] = _TextSecondConfig["default"], _c[_ImageText["default"].type] = _ImageTextSecondConfig["default"], _c[_Recommend["default"].type] = _RecommendSecondConfig["default"], _c[_MobileNavigation["default"].type] = _MobileNavigationSecondConfig["default"], _c[_PcNavigation["default"].type] = _PcNavigationSecondConfig["default"], _c[_Carousel["default"].type] = _CarouselSecondConfig["default"], _c[_Tag["default"].type] = _TagSecondConfig["default"], _c[_Button["default"].type] = _ButtonSecondConfig["default"], _c);
104
+ var secondConfigPanelMap = (_c = {}, _c[_Banner["default"].type] = _BannerSecondConfig["default"], _c[_Text["default"].type] = _TextSecondConfig["default"], _c[_ImageText["default"].type] = _ImageTextSecondConfig["default"], _c[_Recommend["default"].type] = _RecommendSecondConfig["default"], _c[_MobileNavigation["default"].type] = _MobileNavigationSecondConfig["default"], _c[_PcNavigation["default"].type] = _PcNavigationSecondConfig["default"], _c[_Carousel["default"].type] = _CarouselSecondConfig["default"], _c[_ImageGallery["default"].type] = _ImageGallerySecondConfig["default"], _c[_Tag["default"].type] = _TagSecondConfig["default"], _c[_Button["default"].type] = _ButtonSecondConfig["default"], _c);
103
105
  exports.secondConfigPanelMap = secondConfigPanelMap;
@@ -43,6 +43,7 @@ var quickMenuCode = {
43
43
  PREVIEW: 'PREVIEW',
44
44
  SAVE: 'SAVE',
45
45
  PUBLISH: 'PUBLISH',
46
+ PUBLISH_LATER: 'PUBLISH_LATER',
46
47
  MODE_PC: 'MODE_PC',
47
48
  MODE_PHONE: 'MODE_PHONE'
48
49
  };
@@ -13,8 +13,6 @@ var _imageGalleryLayout = _interopRequireDefault(require("../assets/images/layou
13
13
 
14
14
  var _imageGalleryLayout2 = _interopRequireDefault(require("../assets/images/layout-icon/imageGalleryLayout2.png"));
15
15
 
16
- var _imageGalleryLayout3 = _interopRequireDefault(require("../assets/images/layout-icon/imageGalleryLayout3.png"));
17
-
18
16
  var _layoutImagetextM = _interopRequireDefault(require("../assets/images/layout-icon/layout-imagetext-m1-1.png"));
19
17
 
20
18
  var _layoutImagetextM2 = _interopRequireDefault(require("../assets/images/layout-icon/layout-imagetext-m1-2.png"));
@@ -55,6 +53,7 @@ var _layoutNavigationNormal = _interopRequireDefault(require("../assets/images/l
55
53
 
56
54
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
57
55
 
56
+ // import imageGalleryLayout3 from '../assets/images/layout-icon/imageGalleryLayout3.png';
58
57
  // import p3 from '../assets/images/layout-icon/layout-imagetext-p3.png';
59
58
  var dividerLayout = [{
60
59
  id: 'layout1',
@@ -76,10 +75,6 @@ var imageGalleryLayout = [{
76
75
  id: 'layout2',
77
76
  name: 'layout2',
78
77
  image: _imageGalleryLayout2["default"]
79
- }, {
80
- id: 'layout3',
81
- name: 'layout3',
82
- image: _imageGalleryLayout3["default"]
83
78
  }];
84
79
  exports.imageGalleryLayout = imageGalleryLayout;
85
80
  var carouselLayout = [{
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = AppointmentModal;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _antd = require("antd");
11
+
12
+ var _moment = _interopRequireDefault(require("moment"));
13
+
14
+ var _locale = require("../../../locale");
15
+
16
+ require("./index.less");
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
+
20
+ // import { Button } from '../../../common';
21
+ function AppointmentModal(props) {
22
+ var visible = props.visible,
23
+ onClose = props.onClose,
24
+ onConfirm = props.onConfirm;
25
+
26
+ var form = _antd.Form.useForm()[0];
27
+
28
+ var onConfirmPublish = function onConfirmPublish() {
29
+ form.submit();
30
+ };
31
+
32
+ var onFinish = function onFinish(values) {
33
+ console.log(values);
34
+ var dateString = values.date.format('YYYY-MM-DD HH:mm:ss');
35
+ onConfirm(dateString);
36
+ };
37
+
38
+ var disabledDate = function disabledDate(current) {
39
+ return current && current < (0, _moment["default"])().add(30, 'minutes');
40
+ };
41
+
42
+ return /*#__PURE__*/_react["default"].createElement(_antd.Modal, {
43
+ footer: /*#__PURE__*/_react["default"].createElement("div", {
44
+ className: "footer"
45
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Button, {
46
+ onClick: function onClick() {
47
+ return onClose && onClose();
48
+ },
49
+ size: "small",
50
+ type: "light"
51
+ }, (0, _locale.i18n)('CANCEL')), /*#__PURE__*/_react["default"].createElement(_antd.Button, {
52
+ onClick: onConfirmPublish,
53
+ size: "small",
54
+ type: "primary"
55
+ }, (0, _locale.i18n)('CONFIRM'))),
56
+ maskClosable: false,
57
+ onCancel: onClose,
58
+ title: (0, _locale.i18n)('PUBLISH_LATER'),
59
+ visible: visible,
60
+ width: 500
61
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Form, {
62
+ autoComplete: "off",
63
+ form: form,
64
+ layout: "vertical",
65
+ onFinish: onFinish
66
+ }, /*#__PURE__*/_react["default"].createElement(_antd.Form.Item, {
67
+ label: (0, _locale.i18n)('PUBLISH_TIME'),
68
+ name: "date",
69
+ rules: [{
70
+ required: true
71
+ }]
72
+ }, /*#__PURE__*/_react["default"].createElement(_antd.DatePicker, {
73
+ disabledDate: disabledDate,
74
+ placeholder: "Select Time",
75
+ showNow: false,
76
+ showTime: true,
77
+ style: {
78
+ width: '100%'
79
+ }
80
+ })), /*#__PURE__*/_react["default"].createElement("div", {
81
+ className: "tips"
82
+ }, "Please select a time after 30 minutes and within 30 days")));
83
+ }
@@ -0,0 +1,10 @@
1
+ .footer {
2
+ display: flex;
3
+ justify-content: flex-end;
4
+ }
5
+ .tips {
6
+ font-size: 13px;
7
+ line-height: 18px;
8
+ color: #A3AEC3;
9
+ margin-bottom:40px;
10
+ }
@@ -236,6 +236,7 @@ function (_super) {
236
236
  var groupName = '';
237
237
 
238
238
  switch (selectedNode.type) {
239
+ case 'IMAGE_GALLERY':
239
240
  case 'BANNER':
240
241
  groupName = (_a = panelProps.title) === null || _a === void 0 ? void 0 : _a.text;
241
242
 
@@ -23,6 +23,8 @@ require("./index.less");
23
23
 
24
24
  var _locale = require("../../../locale");
25
25
 
26
+ var _antd = require("antd");
27
+
26
28
  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); }
27
29
 
28
30
  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; }
@@ -95,6 +97,12 @@ function (_super) {
95
97
  _this.props.onBtnClick(code);
96
98
  };
97
99
 
100
+ _this.onPublishLater = function (e) {
101
+ _this.onBtnClick(e);
102
+
103
+ e.stopPropagation();
104
+ };
105
+
98
106
  return _this;
99
107
  }
100
108
 
@@ -170,13 +178,37 @@ function (_super) {
170
178
  onClick: this.onBtnClick,
171
179
  tip: "The page is in use. Please copy or create a new page",
172
180
  type: "light"
173
- }, (0, _locale.i18n)('SAVE')), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
181
+ }, (0, _locale.i18n)('SAVE')), /*#__PURE__*/_react["default"].createElement("div", {
182
+ className: "publish_wrap"
183
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
174
184
  "data-code": _constants.quickMenuCode.PUBLISH,
175
185
  disabled: window.magicDesign.readOnly,
176
186
  onClick: this.onBtnClick,
177
187
  tip: "The page is in use. Please copy or create a new page",
178
188
  type: "primary"
179
- }, (0, _locale.i18n)('PUBLISH'))));
189
+ }, (0, _locale.i18n)('PUBLISH_NOW'), /*#__PURE__*/_react["default"].createElement(_antd.Dropdown, {
190
+ getPopupContainer: function getPopupContainer() {
191
+ return document.querySelector('.publish_wrap');
192
+ },
193
+ overlay: /*#__PURE__*/_react["default"].createElement("div", {
194
+ className: "publish_later_wrap"
195
+ }, /*#__PURE__*/_react["default"].createElement("div", {
196
+ className: "publish_btn",
197
+ "data-code": _constants.quickMenuCode.PUBLISH_LATER,
198
+ onClick: this.onPublishLater
199
+ }, (0, _locale.i18n)('PUBLISH_LATER'))),
200
+ overlayClassName: "publish_later_drop",
201
+ trigger: "click"
202
+ }, /*#__PURE__*/_react["default"].createElement(_Iconfont["default"], {
203
+ onClick: function onClick(e) {
204
+ return e.stopPropagation();
205
+ },
206
+ size: "14px",
207
+ style: {
208
+ padding: '8px 3px 8px 6px'
209
+ },
210
+ type: "icon-outlined-down"
211
+ }))))));
180
212
  };
181
213
 
182
214
  return QuickMenuBar;
@@ -72,5 +72,39 @@
72
72
 
73
73
  .menu_right {
74
74
  display: flex;
75
+ .publish_wrap {
76
+ position: relative;
77
+ margin-left: 12px;
78
+ }
79
+ .publish_later_drop {
80
+ width: 100%;
81
+ top: 56px !important;
82
+ left: 0 !important;
83
+ .publish_later_wrap {
84
+ box-shadow: 4px 4px 25px 4px rgba(35, 47, 70, 0.1);
85
+ border-radius: 10px;
86
+ padding: 4px 0;
87
+ background-color: #FFF;
88
+ position: absolute;
89
+ left: 0;
90
+ right: 0;
91
+ .publish_btn {
92
+ display: flex;
93
+ align-items: center;
94
+ justify-content: center;
95
+ font-family: 'Open Sans';
96
+ font-style: normal;
97
+ font-weight: 600;
98
+ font-size: 16px;
99
+ height: 48px;
100
+ background-color: #E9F0FF;
101
+ color: #2F54EB;
102
+ cursor: pointer;
103
+ &:hover {
104
+ background-color: #D6E4FF;
105
+ }
106
+ }
107
+ }
108
+ }
75
109
  }
76
110
  }
@@ -13,6 +13,8 @@ var _react = _interopRequireWildcard(require("react"));
13
13
 
14
14
  var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
15
15
 
16
+ var _antd = require("antd");
17
+
16
18
  var _constants = require("../../../constants");
17
19
 
18
20
  var _componentTypes = require("../../../constants/component-types");
@@ -106,6 +108,26 @@ function (_super) {
106
108
  return source;
107
109
  };
108
110
 
111
+ _this.onCancelClick = function () {
112
+ var onCancelPublish = _this.props.onCancelPublish;
113
+
114
+ _antd.Modal.confirm({
115
+ title: 'Cancel Publish Later',
116
+ content: 'Do you want to cancel publishing later?',
117
+ okText: 'Yes',
118
+ cancelText: 'No',
119
+ onOk: function onOk() {
120
+ return new Promise(function (resolve) {
121
+ if (onCancelPublish) {
122
+ onCancelPublish();
123
+ }
124
+
125
+ resolve();
126
+ });
127
+ }
128
+ });
129
+ };
130
+
109
131
  return _this;
110
132
  }
111
133
 
@@ -127,12 +149,20 @@ function (_super) {
127
149
  var _a = this.props,
128
150
  device = _a.device,
129
151
  renderHeader = _a.renderHeader,
130
- pageData = _a.pageData;
152
+ pageData = _a.pageData,
153
+ appointmentDate = _a.appointmentDate;
131
154
  return /*#__PURE__*/_react["default"].createElement("div", {
132
155
  className: (0, _classnames["default"])('design-area-wrap', {
133
156
  'phone-edit': this.isPhoneEdit()
134
157
  })
135
- }, renderHeader(), /*#__PURE__*/_react["default"].createElement("div", {
158
+ }, renderHeader(), appointmentDate && /*#__PURE__*/_react["default"].createElement("div", {
159
+ className: "appointment_wrap"
160
+ }, /*#__PURE__*/_react["default"].createElement("div", {
161
+ className: "appointment_tip"
162
+ }, "This page will be published at " + appointmentDate + ", If you need to edit it, please cancel the publishing later"), /*#__PURE__*/_react["default"].createElement("div", {
163
+ className: "cancel_btn",
164
+ onClick: this.onCancelClick
165
+ }, "Cancel Publish Later")), /*#__PURE__*/_react["default"].createElement("div", {
136
166
  className: device === _constants.deviceTypeMap.PC ? 'pc_view_area' : 'phone_view_area'
137
167
  }, /*#__PURE__*/_react["default"].createElement("div", {
138
168
  className: "device_border",
@@ -8,6 +8,35 @@
8
8
  transition-property: all;
9
9
  transition-duration: .3s;
10
10
  transition-timing-function: ease;
11
+ .appointment_wrap {
12
+ height: 44px;
13
+ background-color: #FFF8F0;
14
+ display: flex;
15
+ align-items: center;
16
+ justify-content: center;
17
+ .appointment_tip{
18
+ font-family: 'Open Sans';
19
+ font-style: normal;
20
+ font-weight: 400;
21
+ font-size: 13px;
22
+ color:#FF8541;
23
+ }
24
+ .cancel_btn {
25
+ font-family: 'Open Sans';
26
+ font-style: normal;
27
+ font-weight: 400;
28
+ font-size: 14px;
29
+ margin-left: 10px;
30
+ display: flex;
31
+ align-items: center;
32
+ padding: 0 12px;
33
+ height: 22px;
34
+ background-color: #2F54EB;
35
+ border-radius: 4px;
36
+ color: #FFF;
37
+ cursor: pointer;
38
+ }
39
+ }
11
40
  &.phone-edit {
12
41
  margin-left: 355px;
13
42
  }