@fonixtree/magic-design 0.0.50 → 0.0.52
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.
- package/es/common/LinkModal/BundleCampaign/index.js +390 -0
- package/es/common/LinkModal/CustomTable/index.js +2 -1
- package/es/common/MagicLink/index.js +89 -0
- package/es/common/MagicLink/index.less +0 -0
- package/lib/common/LinkModal/BundleCampaign/index.js +390 -0
- package/lib/common/LinkModal/CustomTable/index.js +2 -1
- package/lib/common/MagicLink/index.js +89 -0
- package/lib/common/MagicLink/index.less +0 -0
- package/package.json +1 -86
- package/README.md +0 -320
|
@@ -0,0 +1,390 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
12
|
+
var _antd = require("antd");
|
|
13
|
+
|
|
14
|
+
var _commonUtil = require("../../../utils/commonUtil");
|
|
15
|
+
|
|
16
|
+
var _dateUtil = require("../../../utils/dateUtil");
|
|
17
|
+
|
|
18
|
+
require("./index.less");
|
|
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
|
+
var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
|
|
25
|
+
function adopt(value) {
|
|
26
|
+
return value instanceof P ? value : new P(function (resolve) {
|
|
27
|
+
resolve(value);
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
32
|
+
function fulfilled(value) {
|
|
33
|
+
try {
|
|
34
|
+
step(generator.next(value));
|
|
35
|
+
} catch (e) {
|
|
36
|
+
reject(e);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function rejected(value) {
|
|
41
|
+
try {
|
|
42
|
+
step(generator["throw"](value));
|
|
43
|
+
} catch (e) {
|
|
44
|
+
reject(e);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function step(result) {
|
|
49
|
+
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
var __generator = void 0 && (void 0).__generator || function (thisArg, body) {
|
|
57
|
+
var _ = {
|
|
58
|
+
label: 0,
|
|
59
|
+
sent: function sent() {
|
|
60
|
+
if (t[0] & 1) throw t[1];
|
|
61
|
+
return t[1];
|
|
62
|
+
},
|
|
63
|
+
trys: [],
|
|
64
|
+
ops: []
|
|
65
|
+
},
|
|
66
|
+
f,
|
|
67
|
+
y,
|
|
68
|
+
t,
|
|
69
|
+
g;
|
|
70
|
+
return g = {
|
|
71
|
+
next: verb(0),
|
|
72
|
+
"throw": verb(1),
|
|
73
|
+
"return": verb(2)
|
|
74
|
+
}, typeof Symbol === "function" && (g[Symbol.iterator] = function () {
|
|
75
|
+
return this;
|
|
76
|
+
}), g;
|
|
77
|
+
|
|
78
|
+
function verb(n) {
|
|
79
|
+
return function (v) {
|
|
80
|
+
return step([n, v]);
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function step(op) {
|
|
85
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
86
|
+
|
|
87
|
+
while (_) {
|
|
88
|
+
try {
|
|
89
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
90
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
91
|
+
|
|
92
|
+
switch (op[0]) {
|
|
93
|
+
case 0:
|
|
94
|
+
case 1:
|
|
95
|
+
t = op;
|
|
96
|
+
break;
|
|
97
|
+
|
|
98
|
+
case 4:
|
|
99
|
+
_.label++;
|
|
100
|
+
return {
|
|
101
|
+
value: op[1],
|
|
102
|
+
done: false
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
case 5:
|
|
106
|
+
_.label++;
|
|
107
|
+
y = op[1];
|
|
108
|
+
op = [0];
|
|
109
|
+
continue;
|
|
110
|
+
|
|
111
|
+
case 7:
|
|
112
|
+
op = _.ops.pop();
|
|
113
|
+
|
|
114
|
+
_.trys.pop();
|
|
115
|
+
|
|
116
|
+
continue;
|
|
117
|
+
|
|
118
|
+
default:
|
|
119
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
120
|
+
_ = 0;
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
125
|
+
_.label = op[1];
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
130
|
+
_.label = t[1];
|
|
131
|
+
t = op;
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
if (t && _.label < t[2]) {
|
|
136
|
+
_.label = t[2];
|
|
137
|
+
|
|
138
|
+
_.ops.push(op);
|
|
139
|
+
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if (t[2]) _.ops.pop();
|
|
144
|
+
|
|
145
|
+
_.trys.pop();
|
|
146
|
+
|
|
147
|
+
continue;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
op = body.call(thisArg, _);
|
|
151
|
+
} catch (e) {
|
|
152
|
+
op = [6, e];
|
|
153
|
+
y = 0;
|
|
154
|
+
} finally {
|
|
155
|
+
f = t = 0;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
if (op[0] & 5) throw op[1];
|
|
160
|
+
return {
|
|
161
|
+
value: op[0] ? op[1] : void 0,
|
|
162
|
+
done: true
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
var Option = _antd.Select.Option;
|
|
168
|
+
|
|
169
|
+
var BundleCampaign = function BundleCampaign(props) {
|
|
170
|
+
var setUrl = props.setUrl;
|
|
171
|
+
|
|
172
|
+
var _a = (0, _react.useState)([]),
|
|
173
|
+
bundleList = _a[0],
|
|
174
|
+
SetBundleList = _a[1];
|
|
175
|
+
|
|
176
|
+
var _b = (0, _react.useState)(''),
|
|
177
|
+
campaignName = _b[0],
|
|
178
|
+
setCampaignName = _b[1];
|
|
179
|
+
|
|
180
|
+
var _c = (0, _react.useState)(''),
|
|
181
|
+
storeId = _c[0],
|
|
182
|
+
setStoreId = _c[1];
|
|
183
|
+
|
|
184
|
+
var _d = (0, _react.useState)('A,B'),
|
|
185
|
+
cmpState = _d[0],
|
|
186
|
+
setCmpState = _d[1];
|
|
187
|
+
|
|
188
|
+
var _e = (0, _react.useState)(false),
|
|
189
|
+
loading = _e[0],
|
|
190
|
+
setLoading = _e[1];
|
|
191
|
+
|
|
192
|
+
var _f = (0, _react.useState)([]),
|
|
193
|
+
storeList = _f[0],
|
|
194
|
+
setStoreList = _f[1];
|
|
195
|
+
|
|
196
|
+
var stateMap = [{
|
|
197
|
+
key: 'A,B',
|
|
198
|
+
value: 'All'
|
|
199
|
+
}, {
|
|
200
|
+
key: 'A',
|
|
201
|
+
value: 'Has not started'
|
|
202
|
+
}, {
|
|
203
|
+
key: 'B',
|
|
204
|
+
value: 'Processing'
|
|
205
|
+
}];
|
|
206
|
+
var cmpStateMap = {
|
|
207
|
+
A: 'Has not started',
|
|
208
|
+
B: 'Processing'
|
|
209
|
+
};
|
|
210
|
+
var columns = [{
|
|
211
|
+
title: 'Campaign Name',
|
|
212
|
+
dataIndex: 'campaignName'
|
|
213
|
+
}, {
|
|
214
|
+
title: 'Start/End time',
|
|
215
|
+
dataIndex: 'effDate',
|
|
216
|
+
render: function render(text, record) {
|
|
217
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", null, (0, _dateUtil.formatDateTime)(record.effDate)), /*#__PURE__*/_react["default"].createElement("div", null, (0, _dateUtil.formatDateTime)(record.expDate)));
|
|
218
|
+
}
|
|
219
|
+
}, {
|
|
220
|
+
title: 'Campaign State',
|
|
221
|
+
dataIndex: 'cmpState',
|
|
222
|
+
render: function render(text, record) {
|
|
223
|
+
return cmpStateMap[record.cmpState];
|
|
224
|
+
}
|
|
225
|
+
}, {
|
|
226
|
+
title: 'Store Name',
|
|
227
|
+
dataIndex: 'storeName'
|
|
228
|
+
}];
|
|
229
|
+
var rowSelection = {
|
|
230
|
+
onChange: function onChange(selectedRowKeys) {
|
|
231
|
+
setUrl("bundleCampaign-" + selectedRowKeys);
|
|
232
|
+
},
|
|
233
|
+
type: 'radio'
|
|
234
|
+
};
|
|
235
|
+
|
|
236
|
+
var changeCamState = function changeCamState(value) {
|
|
237
|
+
setCmpState(value);
|
|
238
|
+
};
|
|
239
|
+
|
|
240
|
+
var reset = function reset() {
|
|
241
|
+
setCampaignName('');
|
|
242
|
+
setStoreId('');
|
|
243
|
+
setCmpState('A,B');
|
|
244
|
+
};
|
|
245
|
+
|
|
246
|
+
var queryBundleList = function queryBundleList(params) {
|
|
247
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
248
|
+
var res;
|
|
249
|
+
return __generator(this, function (_a) {
|
|
250
|
+
switch (_a.label) {
|
|
251
|
+
case 0:
|
|
252
|
+
return [4
|
|
253
|
+
/*yield*/
|
|
254
|
+
, (0, _commonUtil.commonFetch)(window.magicDesign.MBaseUrl + "/bundle/list", params, 'GET')];
|
|
255
|
+
|
|
256
|
+
case 1:
|
|
257
|
+
res = _a.sent();
|
|
258
|
+
setLoading(false);
|
|
259
|
+
SetBundleList(res.list);
|
|
260
|
+
return [2
|
|
261
|
+
/*return*/
|
|
262
|
+
];
|
|
263
|
+
}
|
|
264
|
+
});
|
|
265
|
+
});
|
|
266
|
+
};
|
|
267
|
+
|
|
268
|
+
var queryFunc = function queryFunc() {
|
|
269
|
+
var params = {
|
|
270
|
+
campaignName: campaignName,
|
|
271
|
+
storeId: storeId,
|
|
272
|
+
cmpState: cmpState
|
|
273
|
+
};
|
|
274
|
+
setLoading(true);
|
|
275
|
+
queryBundleList(params);
|
|
276
|
+
}; // 请求店铺列表
|
|
277
|
+
|
|
278
|
+
|
|
279
|
+
var queryStore = function queryStore() {
|
|
280
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
281
|
+
var res;
|
|
282
|
+
return __generator(this, function (_a) {
|
|
283
|
+
switch (_a.label) {
|
|
284
|
+
case 0:
|
|
285
|
+
return [4
|
|
286
|
+
/*yield*/
|
|
287
|
+
, (0, _commonUtil.commonFetch)(window.magicDesign.MBaseUrl + "/stores/list", {}, 'GET')];
|
|
288
|
+
|
|
289
|
+
case 1:
|
|
290
|
+
res = _a.sent();
|
|
291
|
+
setStoreList(res);
|
|
292
|
+
return [2
|
|
293
|
+
/*return*/
|
|
294
|
+
];
|
|
295
|
+
}
|
|
296
|
+
});
|
|
297
|
+
});
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
(0, _react.useEffect)(function () {
|
|
301
|
+
queryStore();
|
|
302
|
+
var params = {
|
|
303
|
+
campaignName: campaignName,
|
|
304
|
+
storeId: storeId,
|
|
305
|
+
cmpState: cmpState
|
|
306
|
+
};
|
|
307
|
+
setLoading(true);
|
|
308
|
+
queryBundleList(params);
|
|
309
|
+
}, []);
|
|
310
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
311
|
+
className: "bundleCampaign"
|
|
312
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Row, {
|
|
313
|
+
className: "mb12",
|
|
314
|
+
style: {
|
|
315
|
+
width: '100%'
|
|
316
|
+
}
|
|
317
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Col, {
|
|
318
|
+
span: 12
|
|
319
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
320
|
+
className: "labelStyle"
|
|
321
|
+
}, "Campaign Name"), /*#__PURE__*/_react["default"].createElement(_antd.Input, {
|
|
322
|
+
className: "inputStyle",
|
|
323
|
+
onChange: function onChange(e) {
|
|
324
|
+
setCampaignName(e.target.value);
|
|
325
|
+
},
|
|
326
|
+
value: campaignName
|
|
327
|
+
})), /*#__PURE__*/_react["default"].createElement(_antd.Col, {
|
|
328
|
+
span: 12
|
|
329
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
330
|
+
className: "labelStyle"
|
|
331
|
+
}, "Store"), /*#__PURE__*/_react["default"].createElement(_antd.Select, {
|
|
332
|
+
className: "inputStyle",
|
|
333
|
+
onChange: function onChange(value) {
|
|
334
|
+
return setStoreId(value);
|
|
335
|
+
},
|
|
336
|
+
optionFilterProp: "children",
|
|
337
|
+
placeholder: "Please select",
|
|
338
|
+
showSearch: true,
|
|
339
|
+
value: storeId
|
|
340
|
+
}, storeList && storeList.length > 0 && storeList.map(function (v) {
|
|
341
|
+
return /*#__PURE__*/_react["default"].createElement(Option, {
|
|
342
|
+
key: v.storeId,
|
|
343
|
+
value: v.storeId
|
|
344
|
+
}, v.storeName);
|
|
345
|
+
})))), /*#__PURE__*/_react["default"].createElement(_antd.Row, {
|
|
346
|
+
className: "mb12",
|
|
347
|
+
style: {
|
|
348
|
+
width: '100%'
|
|
349
|
+
}
|
|
350
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Col, {
|
|
351
|
+
span: 12
|
|
352
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
353
|
+
className: "labelStyle"
|
|
354
|
+
}, "Campaign State"), /*#__PURE__*/_react["default"].createElement(_antd.Select, {
|
|
355
|
+
className: "inputStyle",
|
|
356
|
+
defaultValue: "A,B",
|
|
357
|
+
onChange: changeCamState,
|
|
358
|
+
value: cmpState
|
|
359
|
+
}, stateMap && stateMap.length > 0 && stateMap.map(function (v) {
|
|
360
|
+
return /*#__PURE__*/_react["default"].createElement(Option, {
|
|
361
|
+
key: v.key,
|
|
362
|
+
value: v.key
|
|
363
|
+
}, v.value);
|
|
364
|
+
}))), /*#__PURE__*/_react["default"].createElement(_antd.Col, {
|
|
365
|
+
span: 12
|
|
366
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
367
|
+
onClick: queryFunc,
|
|
368
|
+
style: {
|
|
369
|
+
marginRight: 10
|
|
370
|
+
},
|
|
371
|
+
type: "primary"
|
|
372
|
+
}, "Query"), /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
373
|
+
onClick: function onClick() {
|
|
374
|
+
reset();
|
|
375
|
+
}
|
|
376
|
+
}, "Cancel"))), /*#__PURE__*/_react["default"].createElement(_antd.Table, {
|
|
377
|
+
bordered: false,
|
|
378
|
+
columns: columns,
|
|
379
|
+
dataSource: bundleList,
|
|
380
|
+
loading: loading,
|
|
381
|
+
rowKey: "campaignId",
|
|
382
|
+
rowSelection: rowSelection,
|
|
383
|
+
scroll: {
|
|
384
|
+
y: 340
|
|
385
|
+
}
|
|
386
|
+
}));
|
|
387
|
+
};
|
|
388
|
+
|
|
389
|
+
var _default = BundleCampaign;
|
|
390
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.onAClick = exports.getLinkUrl = exports["default"] = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _businessUtil = require("src/components/utils/businessUtil");
|
|
11
|
+
|
|
12
|
+
var _coreUtil = require("src/components/utils/coreUtil");
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
|
+
|
|
16
|
+
var __extends = void 0 && (void 0).__extends || function () {
|
|
17
|
+
var _extendStatics = function extendStatics(d, b) {
|
|
18
|
+
_extendStatics = Object.setPrototypeOf || {
|
|
19
|
+
__proto__: []
|
|
20
|
+
} instanceof Array && function (d, b) {
|
|
21
|
+
d.__proto__ = b;
|
|
22
|
+
} || function (d, b) {
|
|
23
|
+
for (var p in b) {
|
|
24
|
+
if (b.hasOwnProperty(p)) d[p] = b[p];
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
return _extendStatics(d, b);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
return function (d, b) {
|
|
32
|
+
_extendStatics(d, b);
|
|
33
|
+
|
|
34
|
+
function __() {
|
|
35
|
+
this.constructor = d;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
39
|
+
};
|
|
40
|
+
}();
|
|
41
|
+
|
|
42
|
+
var onAClick = function onAClick(e, url) {
|
|
43
|
+
e.preventDefault();
|
|
44
|
+
|
|
45
|
+
if (window.magicDesign.mode === 'renderer') {
|
|
46
|
+
(0, _coreUtil.clickUrl)(url);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
exports.onAClick = onAClick;
|
|
51
|
+
|
|
52
|
+
var getLinkUrl = function getLinkUrl(url) {
|
|
53
|
+
var h5Link = (0, _businessUtil.parseUrl)(url).h5Link;
|
|
54
|
+
return h5Link;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
exports.getLinkUrl = getLinkUrl;
|
|
58
|
+
|
|
59
|
+
var MagicLink =
|
|
60
|
+
/** @class */
|
|
61
|
+
function (_super) {
|
|
62
|
+
__extends(MagicLink, _super);
|
|
63
|
+
|
|
64
|
+
function MagicLink() {
|
|
65
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
66
|
+
|
|
67
|
+
_this.state = {};
|
|
68
|
+
return _this;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
MagicLink.prototype.render = function () {
|
|
72
|
+
var _a = this.props,
|
|
73
|
+
url = _a.url,
|
|
74
|
+
children = _a.children;
|
|
75
|
+
var href = getLinkUrl(url);
|
|
76
|
+
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
77
|
+
href: href,
|
|
78
|
+
onClick: function onClick(e) {
|
|
79
|
+
return onAClick(e, url);
|
|
80
|
+
}
|
|
81
|
+
}, children);
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
MagicLink.defaultProps = {};
|
|
85
|
+
return MagicLink;
|
|
86
|
+
}(_react["default"].Component);
|
|
87
|
+
|
|
88
|
+
var _default = MagicLink;
|
|
89
|
+
exports["default"] = _default;
|
|
File without changes
|
|
@@ -0,0 +1,390 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
12
|
+
var _antd = require("antd");
|
|
13
|
+
|
|
14
|
+
var _commonUtil = require("../../../utils/commonUtil");
|
|
15
|
+
|
|
16
|
+
var _dateUtil = require("../../../utils/dateUtil");
|
|
17
|
+
|
|
18
|
+
require("./index.less");
|
|
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
|
+
var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
|
|
25
|
+
function adopt(value) {
|
|
26
|
+
return value instanceof P ? value : new P(function (resolve) {
|
|
27
|
+
resolve(value);
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
32
|
+
function fulfilled(value) {
|
|
33
|
+
try {
|
|
34
|
+
step(generator.next(value));
|
|
35
|
+
} catch (e) {
|
|
36
|
+
reject(e);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function rejected(value) {
|
|
41
|
+
try {
|
|
42
|
+
step(generator["throw"](value));
|
|
43
|
+
} catch (e) {
|
|
44
|
+
reject(e);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function step(result) {
|
|
49
|
+
result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
var __generator = void 0 && (void 0).__generator || function (thisArg, body) {
|
|
57
|
+
var _ = {
|
|
58
|
+
label: 0,
|
|
59
|
+
sent: function sent() {
|
|
60
|
+
if (t[0] & 1) throw t[1];
|
|
61
|
+
return t[1];
|
|
62
|
+
},
|
|
63
|
+
trys: [],
|
|
64
|
+
ops: []
|
|
65
|
+
},
|
|
66
|
+
f,
|
|
67
|
+
y,
|
|
68
|
+
t,
|
|
69
|
+
g;
|
|
70
|
+
return g = {
|
|
71
|
+
next: verb(0),
|
|
72
|
+
"throw": verb(1),
|
|
73
|
+
"return": verb(2)
|
|
74
|
+
}, typeof Symbol === "function" && (g[Symbol.iterator] = function () {
|
|
75
|
+
return this;
|
|
76
|
+
}), g;
|
|
77
|
+
|
|
78
|
+
function verb(n) {
|
|
79
|
+
return function (v) {
|
|
80
|
+
return step([n, v]);
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function step(op) {
|
|
85
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
86
|
+
|
|
87
|
+
while (_) {
|
|
88
|
+
try {
|
|
89
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
90
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
91
|
+
|
|
92
|
+
switch (op[0]) {
|
|
93
|
+
case 0:
|
|
94
|
+
case 1:
|
|
95
|
+
t = op;
|
|
96
|
+
break;
|
|
97
|
+
|
|
98
|
+
case 4:
|
|
99
|
+
_.label++;
|
|
100
|
+
return {
|
|
101
|
+
value: op[1],
|
|
102
|
+
done: false
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
case 5:
|
|
106
|
+
_.label++;
|
|
107
|
+
y = op[1];
|
|
108
|
+
op = [0];
|
|
109
|
+
continue;
|
|
110
|
+
|
|
111
|
+
case 7:
|
|
112
|
+
op = _.ops.pop();
|
|
113
|
+
|
|
114
|
+
_.trys.pop();
|
|
115
|
+
|
|
116
|
+
continue;
|
|
117
|
+
|
|
118
|
+
default:
|
|
119
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
120
|
+
_ = 0;
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
125
|
+
_.label = op[1];
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
130
|
+
_.label = t[1];
|
|
131
|
+
t = op;
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
if (t && _.label < t[2]) {
|
|
136
|
+
_.label = t[2];
|
|
137
|
+
|
|
138
|
+
_.ops.push(op);
|
|
139
|
+
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if (t[2]) _.ops.pop();
|
|
144
|
+
|
|
145
|
+
_.trys.pop();
|
|
146
|
+
|
|
147
|
+
continue;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
op = body.call(thisArg, _);
|
|
151
|
+
} catch (e) {
|
|
152
|
+
op = [6, e];
|
|
153
|
+
y = 0;
|
|
154
|
+
} finally {
|
|
155
|
+
f = t = 0;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
if (op[0] & 5) throw op[1];
|
|
160
|
+
return {
|
|
161
|
+
value: op[0] ? op[1] : void 0,
|
|
162
|
+
done: true
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
var Option = _antd.Select.Option;
|
|
168
|
+
|
|
169
|
+
var BundleCampaign = function BundleCampaign(props) {
|
|
170
|
+
var setUrl = props.setUrl;
|
|
171
|
+
|
|
172
|
+
var _a = (0, _react.useState)([]),
|
|
173
|
+
bundleList = _a[0],
|
|
174
|
+
SetBundleList = _a[1];
|
|
175
|
+
|
|
176
|
+
var _b = (0, _react.useState)(''),
|
|
177
|
+
campaignName = _b[0],
|
|
178
|
+
setCampaignName = _b[1];
|
|
179
|
+
|
|
180
|
+
var _c = (0, _react.useState)(''),
|
|
181
|
+
storeId = _c[0],
|
|
182
|
+
setStoreId = _c[1];
|
|
183
|
+
|
|
184
|
+
var _d = (0, _react.useState)('A,B'),
|
|
185
|
+
cmpState = _d[0],
|
|
186
|
+
setCmpState = _d[1];
|
|
187
|
+
|
|
188
|
+
var _e = (0, _react.useState)(false),
|
|
189
|
+
loading = _e[0],
|
|
190
|
+
setLoading = _e[1];
|
|
191
|
+
|
|
192
|
+
var _f = (0, _react.useState)([]),
|
|
193
|
+
storeList = _f[0],
|
|
194
|
+
setStoreList = _f[1];
|
|
195
|
+
|
|
196
|
+
var stateMap = [{
|
|
197
|
+
key: 'A,B',
|
|
198
|
+
value: 'All'
|
|
199
|
+
}, {
|
|
200
|
+
key: 'A',
|
|
201
|
+
value: 'Has not started'
|
|
202
|
+
}, {
|
|
203
|
+
key: 'B',
|
|
204
|
+
value: 'Processing'
|
|
205
|
+
}];
|
|
206
|
+
var cmpStateMap = {
|
|
207
|
+
A: 'Has not started',
|
|
208
|
+
B: 'Processing'
|
|
209
|
+
};
|
|
210
|
+
var columns = [{
|
|
211
|
+
title: 'Campaign Name',
|
|
212
|
+
dataIndex: 'campaignName'
|
|
213
|
+
}, {
|
|
214
|
+
title: 'Start/End time',
|
|
215
|
+
dataIndex: 'effDate',
|
|
216
|
+
render: function render(text, record) {
|
|
217
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", null, (0, _dateUtil.formatDateTime)(record.effDate)), /*#__PURE__*/_react["default"].createElement("div", null, (0, _dateUtil.formatDateTime)(record.expDate)));
|
|
218
|
+
}
|
|
219
|
+
}, {
|
|
220
|
+
title: 'Campaign State',
|
|
221
|
+
dataIndex: 'cmpState',
|
|
222
|
+
render: function render(text, record) {
|
|
223
|
+
return cmpStateMap[record.cmpState];
|
|
224
|
+
}
|
|
225
|
+
}, {
|
|
226
|
+
title: 'Store Name',
|
|
227
|
+
dataIndex: 'storeName'
|
|
228
|
+
}];
|
|
229
|
+
var rowSelection = {
|
|
230
|
+
onChange: function onChange(selectedRowKeys) {
|
|
231
|
+
setUrl("bundleCampaign-" + selectedRowKeys);
|
|
232
|
+
},
|
|
233
|
+
type: 'radio'
|
|
234
|
+
};
|
|
235
|
+
|
|
236
|
+
var changeCamState = function changeCamState(value) {
|
|
237
|
+
setCmpState(value);
|
|
238
|
+
};
|
|
239
|
+
|
|
240
|
+
var reset = function reset() {
|
|
241
|
+
setCampaignName('');
|
|
242
|
+
setStoreId('');
|
|
243
|
+
setCmpState('A,B');
|
|
244
|
+
};
|
|
245
|
+
|
|
246
|
+
var queryBundleList = function queryBundleList(params) {
|
|
247
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
248
|
+
var res;
|
|
249
|
+
return __generator(this, function (_a) {
|
|
250
|
+
switch (_a.label) {
|
|
251
|
+
case 0:
|
|
252
|
+
return [4
|
|
253
|
+
/*yield*/
|
|
254
|
+
, (0, _commonUtil.commonFetch)(window.magicDesign.MBaseUrl + "/bundle/list", params, 'GET')];
|
|
255
|
+
|
|
256
|
+
case 1:
|
|
257
|
+
res = _a.sent();
|
|
258
|
+
setLoading(false);
|
|
259
|
+
SetBundleList(res.list);
|
|
260
|
+
return [2
|
|
261
|
+
/*return*/
|
|
262
|
+
];
|
|
263
|
+
}
|
|
264
|
+
});
|
|
265
|
+
});
|
|
266
|
+
};
|
|
267
|
+
|
|
268
|
+
var queryFunc = function queryFunc() {
|
|
269
|
+
var params = {
|
|
270
|
+
campaignName: campaignName,
|
|
271
|
+
storeId: storeId,
|
|
272
|
+
cmpState: cmpState
|
|
273
|
+
};
|
|
274
|
+
setLoading(true);
|
|
275
|
+
queryBundleList(params);
|
|
276
|
+
}; // 请求店铺列表
|
|
277
|
+
|
|
278
|
+
|
|
279
|
+
var queryStore = function queryStore() {
|
|
280
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
281
|
+
var res;
|
|
282
|
+
return __generator(this, function (_a) {
|
|
283
|
+
switch (_a.label) {
|
|
284
|
+
case 0:
|
|
285
|
+
return [4
|
|
286
|
+
/*yield*/
|
|
287
|
+
, (0, _commonUtil.commonFetch)(window.magicDesign.MBaseUrl + "/stores/list", {}, 'GET')];
|
|
288
|
+
|
|
289
|
+
case 1:
|
|
290
|
+
res = _a.sent();
|
|
291
|
+
setStoreList(res);
|
|
292
|
+
return [2
|
|
293
|
+
/*return*/
|
|
294
|
+
];
|
|
295
|
+
}
|
|
296
|
+
});
|
|
297
|
+
});
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
(0, _react.useEffect)(function () {
|
|
301
|
+
queryStore();
|
|
302
|
+
var params = {
|
|
303
|
+
campaignName: campaignName,
|
|
304
|
+
storeId: storeId,
|
|
305
|
+
cmpState: cmpState
|
|
306
|
+
};
|
|
307
|
+
setLoading(true);
|
|
308
|
+
queryBundleList(params);
|
|
309
|
+
}, []);
|
|
310
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
311
|
+
className: "bundleCampaign"
|
|
312
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Row, {
|
|
313
|
+
className: "mb12",
|
|
314
|
+
style: {
|
|
315
|
+
width: '100%'
|
|
316
|
+
}
|
|
317
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Col, {
|
|
318
|
+
span: 12
|
|
319
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
320
|
+
className: "labelStyle"
|
|
321
|
+
}, "Campaign Name"), /*#__PURE__*/_react["default"].createElement(_antd.Input, {
|
|
322
|
+
className: "inputStyle",
|
|
323
|
+
onChange: function onChange(e) {
|
|
324
|
+
setCampaignName(e.target.value);
|
|
325
|
+
},
|
|
326
|
+
value: campaignName
|
|
327
|
+
})), /*#__PURE__*/_react["default"].createElement(_antd.Col, {
|
|
328
|
+
span: 12
|
|
329
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
330
|
+
className: "labelStyle"
|
|
331
|
+
}, "Store"), /*#__PURE__*/_react["default"].createElement(_antd.Select, {
|
|
332
|
+
className: "inputStyle",
|
|
333
|
+
onChange: function onChange(value) {
|
|
334
|
+
return setStoreId(value);
|
|
335
|
+
},
|
|
336
|
+
optionFilterProp: "children",
|
|
337
|
+
placeholder: "Please select",
|
|
338
|
+
showSearch: true,
|
|
339
|
+
value: storeId
|
|
340
|
+
}, storeList && storeList.length > 0 && storeList.map(function (v) {
|
|
341
|
+
return /*#__PURE__*/_react["default"].createElement(Option, {
|
|
342
|
+
key: v.storeId,
|
|
343
|
+
value: v.storeId
|
|
344
|
+
}, v.storeName);
|
|
345
|
+
})))), /*#__PURE__*/_react["default"].createElement(_antd.Row, {
|
|
346
|
+
className: "mb12",
|
|
347
|
+
style: {
|
|
348
|
+
width: '100%'
|
|
349
|
+
}
|
|
350
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Col, {
|
|
351
|
+
span: 12
|
|
352
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
|
353
|
+
className: "labelStyle"
|
|
354
|
+
}, "Campaign State"), /*#__PURE__*/_react["default"].createElement(_antd.Select, {
|
|
355
|
+
className: "inputStyle",
|
|
356
|
+
defaultValue: "A,B",
|
|
357
|
+
onChange: changeCamState,
|
|
358
|
+
value: cmpState
|
|
359
|
+
}, stateMap && stateMap.length > 0 && stateMap.map(function (v) {
|
|
360
|
+
return /*#__PURE__*/_react["default"].createElement(Option, {
|
|
361
|
+
key: v.key,
|
|
362
|
+
value: v.key
|
|
363
|
+
}, v.value);
|
|
364
|
+
}))), /*#__PURE__*/_react["default"].createElement(_antd.Col, {
|
|
365
|
+
span: 12
|
|
366
|
+
}, /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
367
|
+
onClick: queryFunc,
|
|
368
|
+
style: {
|
|
369
|
+
marginRight: 10
|
|
370
|
+
},
|
|
371
|
+
type: "primary"
|
|
372
|
+
}, "Query"), /*#__PURE__*/_react["default"].createElement(_antd.Button, {
|
|
373
|
+
onClick: function onClick() {
|
|
374
|
+
reset();
|
|
375
|
+
}
|
|
376
|
+
}, "Cancel"))), /*#__PURE__*/_react["default"].createElement(_antd.Table, {
|
|
377
|
+
bordered: false,
|
|
378
|
+
columns: columns,
|
|
379
|
+
dataSource: bundleList,
|
|
380
|
+
loading: loading,
|
|
381
|
+
rowKey: "campaignId",
|
|
382
|
+
rowSelection: rowSelection,
|
|
383
|
+
scroll: {
|
|
384
|
+
y: 340
|
|
385
|
+
}
|
|
386
|
+
}));
|
|
387
|
+
};
|
|
388
|
+
|
|
389
|
+
var _default = BundleCampaign;
|
|
390
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.onAClick = exports.getLinkUrl = exports["default"] = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _businessUtil = require("src/components/utils/businessUtil");
|
|
11
|
+
|
|
12
|
+
var _coreUtil = require("src/components/utils/coreUtil");
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
|
+
|
|
16
|
+
var __extends = void 0 && (void 0).__extends || function () {
|
|
17
|
+
var _extendStatics = function extendStatics(d, b) {
|
|
18
|
+
_extendStatics = Object.setPrototypeOf || {
|
|
19
|
+
__proto__: []
|
|
20
|
+
} instanceof Array && function (d, b) {
|
|
21
|
+
d.__proto__ = b;
|
|
22
|
+
} || function (d, b) {
|
|
23
|
+
for (var p in b) {
|
|
24
|
+
if (b.hasOwnProperty(p)) d[p] = b[p];
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
return _extendStatics(d, b);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
return function (d, b) {
|
|
32
|
+
_extendStatics(d, b);
|
|
33
|
+
|
|
34
|
+
function __() {
|
|
35
|
+
this.constructor = d;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
39
|
+
};
|
|
40
|
+
}();
|
|
41
|
+
|
|
42
|
+
var onAClick = function onAClick(e, url) {
|
|
43
|
+
e.preventDefault();
|
|
44
|
+
|
|
45
|
+
if (window.magicDesign.mode === 'renderer') {
|
|
46
|
+
(0, _coreUtil.clickUrl)(url);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
exports.onAClick = onAClick;
|
|
51
|
+
|
|
52
|
+
var getLinkUrl = function getLinkUrl(url) {
|
|
53
|
+
var h5Link = (0, _businessUtil.parseUrl)(url).h5Link;
|
|
54
|
+
return h5Link;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
exports.getLinkUrl = getLinkUrl;
|
|
58
|
+
|
|
59
|
+
var MagicLink =
|
|
60
|
+
/** @class */
|
|
61
|
+
function (_super) {
|
|
62
|
+
__extends(MagicLink, _super);
|
|
63
|
+
|
|
64
|
+
function MagicLink() {
|
|
65
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
66
|
+
|
|
67
|
+
_this.state = {};
|
|
68
|
+
return _this;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
MagicLink.prototype.render = function () {
|
|
72
|
+
var _a = this.props,
|
|
73
|
+
url = _a.url,
|
|
74
|
+
children = _a.children;
|
|
75
|
+
var href = getLinkUrl(url);
|
|
76
|
+
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
77
|
+
href: href,
|
|
78
|
+
onClick: function onClick(e) {
|
|
79
|
+
return onAClick(e, url);
|
|
80
|
+
}
|
|
81
|
+
}, children);
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
MagicLink.defaultProps = {};
|
|
85
|
+
return MagicLink;
|
|
86
|
+
}(_react["default"].Component);
|
|
87
|
+
|
|
88
|
+
var _default = MagicLink;
|
|
89
|
+
exports["default"] = _default;
|
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fonixtree/magic-design",
|
|
3
3
|
"author": "Cylon Team",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.52",
|
|
5
5
|
"description": "Magic Design",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"module": "es/index.js",
|
|
@@ -34,91 +34,6 @@
|
|
|
34
34
|
"replace": "^1.2.1",
|
|
35
35
|
"slick-carousel": "^1.8.1"
|
|
36
36
|
},
|
|
37
|
-
"devDependencies": {
|
|
38
|
-
"react-dom": "^16.11.0",
|
|
39
|
-
"react": "^16.11.0",
|
|
40
|
-
"gulp": "4.0.2",
|
|
41
|
-
"gulp-less": "5.0.0",
|
|
42
|
-
"gulp-postcss": "9.0.1",
|
|
43
|
-
"gulp-rename": "2.0.0",
|
|
44
|
-
"postcss-less": "6.0.0",
|
|
45
|
-
"@babel/core": "^7.16.0",
|
|
46
|
-
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.3",
|
|
47
|
-
"@rollup/plugin-babel": "^5.3.1",
|
|
48
|
-
"@rollup/plugin-commonjs": "^22.0.0",
|
|
49
|
-
"@rollup/plugin-image": "^2.1.1",
|
|
50
|
-
"@rollup/plugin-json": "^4.1.0",
|
|
51
|
-
"@rollup/plugin-node-resolve": "^13.3.0",
|
|
52
|
-
"@svgr/webpack": "^5.5.0",
|
|
53
|
-
"@types/axios": "^0.14.0",
|
|
54
|
-
"@types/lodash": "^4.14.182",
|
|
55
|
-
"@types/node": "^17.0.36",
|
|
56
|
-
"@types/react": "^18.0.9",
|
|
57
|
-
"@types/react-color": "^3.0.6",
|
|
58
|
-
"@types/react-dom": "^18.0.5",
|
|
59
|
-
"@types/uuid": "^8.3.4",
|
|
60
|
-
"@typescript-eslint/eslint-plugin": "^5.27.1",
|
|
61
|
-
"add": "^2.0.6",
|
|
62
|
-
"babel-loader": "^8.2.3",
|
|
63
|
-
"babel-plugin-named-asset-import": "^0.3.8",
|
|
64
|
-
"babel-preset-react-app": "^10.0.1",
|
|
65
|
-
"bfj": "^7.0.2",
|
|
66
|
-
"browserslist": "^4.18.1",
|
|
67
|
-
"camelcase": "^6.2.1",
|
|
68
|
-
"case-sensitive-paths-webpack-plugin": "^2.4.0",
|
|
69
|
-
"child_process": "^1.0.2",
|
|
70
|
-
"classnames": "^2.3.1",
|
|
71
|
-
"css-loader": "^6.5.1",
|
|
72
|
-
"css-minimizer-webpack-plugin": "^3.2.0",
|
|
73
|
-
"dotenv": "^10.0.0",
|
|
74
|
-
"dotenv-expand": "^5.1.0",
|
|
75
|
-
"eslint": "7",
|
|
76
|
-
"eslint-config-next": "^12.1.6",
|
|
77
|
-
"eslint-config-react-app": "^7.0.1",
|
|
78
|
-
"eslint-webpack-plugin": "^3.1.1",
|
|
79
|
-
"extract-zip": "^2.0.1",
|
|
80
|
-
"file-loader": "^6.2.0",
|
|
81
|
-
"fs-extra": "^10.0.0",
|
|
82
|
-
"html-webpack-plugin": "^5.5.0",
|
|
83
|
-
"http-proxy-middleware": "^2.0.6",
|
|
84
|
-
"identity-obj-proxy": "^3.0.0",
|
|
85
|
-
"less": "3.13.1",
|
|
86
|
-
"less-loader": "^11.0.0",
|
|
87
|
-
"mini-css-extract-plugin": "^2.4.5",
|
|
88
|
-
"mv": "^2.1.1",
|
|
89
|
-
"ora": "^4.1.1",
|
|
90
|
-
"postcss": "^8.4.4",
|
|
91
|
-
"postcss-flexbugs-fixes": "^5.0.2",
|
|
92
|
-
"postcss-loader": "^6.2.1",
|
|
93
|
-
"postcss-normalize": "^10.0.1",
|
|
94
|
-
"postcss-preset-env": "^7.0.1",
|
|
95
|
-
"postcss-px-to-viewport": "^1.1.1",
|
|
96
|
-
"postcss-selector-namespace": "^3.0.1",
|
|
97
|
-
"prompts": "^2.4.2",
|
|
98
|
-
"rc-tools": "^9.6.1-alpha.1",
|
|
99
|
-
"react-app-polyfill": "^3.0.0",
|
|
100
|
-
"react-dev-utils": "^12.0.1",
|
|
101
|
-
"react-refresh": "^0.11.0",
|
|
102
|
-
"resolve": "^1.20.0",
|
|
103
|
-
"resolve-url-loader": "^4.0.0",
|
|
104
|
-
"rollup-plugin-dts": "^4.2.2",
|
|
105
|
-
"rollup-plugin-peer-deps-external": "^2.2.4",
|
|
106
|
-
"rollup-plugin-postcss": "^4.0.2",
|
|
107
|
-
"rollup-plugin-styles": "^4.0.0",
|
|
108
|
-
"rollup-plugin-typescript2": "^0.32.1",
|
|
109
|
-
"sass-loader": "^12.3.0",
|
|
110
|
-
"semver": "^7.3.5",
|
|
111
|
-
"source-map-loader": "^3.0.0",
|
|
112
|
-
"style-loader": "^3.3.1",
|
|
113
|
-
"tailwindcss": "^3.0.2",
|
|
114
|
-
"terser-webpack-plugin": "^5.2.5",
|
|
115
|
-
"typescript": "^4.7.2",
|
|
116
|
-
"web-vitals": "^2.1.4",
|
|
117
|
-
"webpack": "^5.64.4",
|
|
118
|
-
"webpack-dev-server": "^4.6.0",
|
|
119
|
-
"webpack-manifest-plugin": "^4.0.2",
|
|
120
|
-
"workbox-webpack-plugin": "^6.4.1"
|
|
121
|
-
},
|
|
122
37
|
"peerDependencies": {
|
|
123
38
|
"react-dom": ">=16.11.0",
|
|
124
39
|
"react": ">=16.11.0"
|
package/README.md
DELETED
|
@@ -1,320 +0,0 @@
|
|
|
1
|
-
# 快捷指令使用
|
|
2
|
-
|
|
3
|
-
## 1、发布 -- npm run pub
|
|
4
|
-
|
|
5
|
-
## 2、新增国际化 -- npm run cl "Hello world"
|
|
6
|
-
|
|
7
|
-
## 3、更新iconfont -- npm run iconfont
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
# 设计器二期
|
|
11
|
-
|
|
12
|
-
## 1、基本概念
|
|
13
|
-
|
|
14
|
-
### 1.1、元组件:构成复合组件的最小单位
|
|
15
|
-
|
|
16
|
-
Text、Image、Button、Divider、Video 等
|
|
17
|
-
|
|
18
|
-
### 1.2、复合组件:由若干个元组件构成的一个大组件
|
|
19
|
-
|
|
20
|
-
Text、Banner、Image Gallery、Image and Text、Carousel、Reward、Newsletter 等
|
|
21
|
-
|
|
22
|
-
### 1.3、业务公共组件:项目中复用的公共组件
|
|
23
|
-
|
|
24
|
-
所有的公共组件需要开放 value 和 onChange Api(除 Button、Iconfont)
|
|
25
|
-
|
|
26
|
-
Button、Iconfont、AlignSelecter、Collapse、ColorPicker、ImagePicker、LayoutSelecter、Slider、UrlPicker
|
|
27
|
-
|
|
28
|
-
## 2、元组件
|
|
29
|
-
|
|
30
|
-
### 2.1
|
|
31
|
-
|
|
32
|
-
元组件类型:
|
|
33
|
-
|
|
34
|
-
TEXT、IMAGE、BUTTON、DIVIDER、VIDEO
|
|
35
|
-
|
|
36
|
-
元组件报文格式:
|
|
37
|
-
|
|
38
|
-
```json
|
|
39
|
-
{
|
|
40
|
-
id:'xxxx' //元组件key
|
|
41
|
-
type: 'TYPE', //元组件类型
|
|
42
|
-
style:{
|
|
43
|
-
fontFamily:'xxx', //字体
|
|
44
|
-
...css //属性名称尽量使用标准css名称
|
|
45
|
-
},
|
|
46
|
-
hoverStyle:{
|
|
47
|
-
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
动态设置 hover 效果
|
|
53
|
-
|
|
54
|
-
onMouseEnter={e => { e.target.style.color = 'red'; }}
|
|
55
|
-
|
|
56
|
-
onMouseLeave={e => { e.target.style.color = 'white'; }}
|
|
57
|
-
|
|
58
|
-
文本可编辑
|
|
59
|
-
|
|
60
|
-
contenteditable="true"
|
|
61
|
-
|
|
62
|
-
### 2.2 、元组件报文
|
|
63
|
-
|
|
64
|
-
#### Text
|
|
65
|
-
|
|
66
|
-
```json
|
|
67
|
-
{
|
|
68
|
-
id:'xxxx' //元组件key
|
|
69
|
-
type: 'TYPE', //元组件类型
|
|
70
|
-
content:'this is text',
|
|
71
|
-
style:{
|
|
72
|
-
fontFamily:'xxx', //字体
|
|
73
|
-
fontSize: '14px',
|
|
74
|
-
width: '200px',
|
|
75
|
-
...css
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
#### Image
|
|
81
|
-
|
|
82
|
-
```json
|
|
83
|
-
{
|
|
84
|
-
id:'xxxx' //元组件key
|
|
85
|
-
type: 'IMAGE', //元组件类型
|
|
86
|
-
name:'123.png',
|
|
87
|
-
src:'../image.png', //图片地址
|
|
88
|
-
url:'www.baidu.com', //图片跳转地址
|
|
89
|
-
style:{
|
|
90
|
-
width: '200px',
|
|
91
|
-
...css
|
|
92
|
-
},
|
|
93
|
-
hoverStyle:{ //hover 类型为new时保存src,类型为enlarge时保存scale
|
|
94
|
-
scale: '2',
|
|
95
|
-
src:'../image1.png',
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
#### Button
|
|
101
|
-
|
|
102
|
-
```json
|
|
103
|
-
{
|
|
104
|
-
id:'xxxx' //元组件key
|
|
105
|
-
type: 'BUTTON', //元组件类型
|
|
106
|
-
name:'Submit',
|
|
107
|
-
url: 'www.baidu.com',
|
|
108
|
-
style:{
|
|
109
|
-
buttonIconSrc:'../img.png',
|
|
110
|
-
buttonIconPlace: 'left',
|
|
111
|
-
color:'#FEFEFE',
|
|
112
|
-
border: '1px solid red',
|
|
113
|
-
borderRadius:'10px',
|
|
114
|
-
fontFamily:'xxx', //字体
|
|
115
|
-
fontSize: '14px',
|
|
116
|
-
...css
|
|
117
|
-
},
|
|
118
|
-
hoverStyle {
|
|
119
|
-
color:'#FEFEFE',
|
|
120
|
-
border: '1px solid red',
|
|
121
|
-
fontFamily:'xxx', //字体
|
|
122
|
-
fontSize: '14px',
|
|
123
|
-
...css
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
## 2、复合组件
|
|
129
|
-
|
|
130
|
-
### 2.1
|
|
131
|
-
|
|
132
|
-
元组件类型:
|
|
133
|
-
|
|
134
|
-
TEXT、BANNER、IMAGE_GALLERT、IMAGE_TEXT、CAROUSEL、REWARD、NEWSLETTER
|
|
135
|
-
|
|
136
|
-
复合组件报文格式:
|
|
137
|
-
|
|
138
|
-
```json
|
|
139
|
-
{
|
|
140
|
-
id:'xxxx' //复合组件key
|
|
141
|
-
type: 'TYPE', //复合组件类型
|
|
142
|
-
setting:{ //开关类型的配置及属性配置放在这里
|
|
143
|
-
autoplays: 3, //3秒轮播
|
|
144
|
-
},
|
|
145
|
-
groupSource:[], //元组件集合组数据放在这里
|
|
146
|
-
metas:{
|
|
147
|
-
title:{
|
|
148
|
-
open:false,
|
|
149
|
-
type:'IMAGE'
|
|
150
|
-
...metaCompJson
|
|
151
|
-
},
|
|
152
|
-
subTitle:{
|
|
153
|
-
open:false,
|
|
154
|
-
type:'IMAGE'
|
|
155
|
-
...metaCompJson
|
|
156
|
-
}
|
|
157
|
-
},
|
|
158
|
-
customize:{
|
|
159
|
-
layout:'',
|
|
160
|
-
background:{
|
|
161
|
-
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
#### Text
|
|
168
|
-
|
|
169
|
-
```js
|
|
170
|
-
{
|
|
171
|
-
id: 'xxxx', //复合组件key
|
|
172
|
-
type: 'TEXT', //复合组件类型
|
|
173
|
-
setting:{
|
|
174
|
-
layout:'left', // 模块布局 left/center/right ,每一个layout可能都是一个不同的组件
|
|
175
|
-
title:{
|
|
176
|
-
type:'TEXT'
|
|
177
|
-
...metaCompJson
|
|
178
|
-
},
|
|
179
|
-
subtitle:{
|
|
180
|
-
type:'TEXT'
|
|
181
|
-
...metaCompJson
|
|
182
|
-
},
|
|
183
|
-
},
|
|
184
|
-
source:[
|
|
185
|
-
{ //此处可以抽出业务组件
|
|
186
|
-
title:{
|
|
187
|
-
type:'TEXT'
|
|
188
|
-
...metaCompJson
|
|
189
|
-
},
|
|
190
|
-
content:{
|
|
191
|
-
type:'TEXT'
|
|
192
|
-
...metaCompJson
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
],
|
|
196
|
-
style:{
|
|
197
|
-
align:'left', //文本布局 left/center/right
|
|
198
|
-
backgroundColor: 'red',
|
|
199
|
-
backgroundImage:'../image.png'
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
#### Banner
|
|
205
|
-
|
|
206
|
-
modifySetting
|
|
207
|
-
|
|
208
|
-
```json
|
|
209
|
-
{
|
|
210
|
-
"comositeId": "1111",
|
|
211
|
-
|
|
212
|
-
"value": {
|
|
213
|
-
"autoplays": 4
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
```
|
|
217
|
-
|
|
218
|
-
```json
|
|
219
|
-
{
|
|
220
|
-
id: 'xxxx',
|
|
221
|
-
type: 'BANNER',
|
|
222
|
-
setting:{
|
|
223
|
-
open:false
|
|
224
|
-
autoplays: 3, //3秒轮播
|
|
225
|
-
arrows:{ // 滚动箭头
|
|
226
|
-
open:false,
|
|
227
|
-
color:'red',
|
|
228
|
-
size:'',
|
|
229
|
-
hoverSize:'',
|
|
230
|
-
hoverColor:'green',
|
|
231
|
-
},
|
|
232
|
-
dots:{ //面板指示点
|
|
233
|
-
open:false,
|
|
234
|
-
color: 'red',
|
|
235
|
-
size:'',
|
|
236
|
-
hoverSize:''
|
|
237
|
-
hoverColor:'green',
|
|
238
|
-
},
|
|
239
|
-
},
|
|
240
|
-
groupSource:[
|
|
241
|
-
{ //此处可以作为一个业务组件
|
|
242
|
-
id:'xxxxx',
|
|
243
|
-
image:{
|
|
244
|
-
open:false,
|
|
245
|
-
type:'IMAGE'
|
|
246
|
-
...metaCompJson
|
|
247
|
-
},
|
|
248
|
-
title:{
|
|
249
|
-
open:false,
|
|
250
|
-
type:'TEXT',
|
|
251
|
-
...metaCompJson
|
|
252
|
-
},
|
|
253
|
-
content:{
|
|
254
|
-
open:false,
|
|
255
|
-
type:'TEXT',
|
|
256
|
-
...metaCompJson
|
|
257
|
-
},
|
|
258
|
-
button:{
|
|
259
|
-
type:'BUTTON',
|
|
260
|
-
...metaCompJson
|
|
261
|
-
},
|
|
262
|
-
secondaryButton:{
|
|
263
|
-
type:'BUTTON',
|
|
264
|
-
...metaCompJson
|
|
265
|
-
},
|
|
266
|
-
layout:'center',
|
|
267
|
-
align:'left',
|
|
268
|
-
//文本布局 left/center/right
|
|
269
|
-
}
|
|
270
|
-
]
|
|
271
|
-
}
|
|
272
|
-
```
|
|
273
|
-
|
|
274
|
-
#### Image Gallery
|
|
275
|
-
|
|
276
|
-
```json
|
|
277
|
-
|
|
278
|
-
```
|
|
279
|
-
|
|
280
|
-
#### Image and Text
|
|
281
|
-
|
|
282
|
-
```json
|
|
283
|
-
{
|
|
284
|
-
id:'xxxx'
|
|
285
|
-
type: 'IMAGE_TEXT',
|
|
286
|
-
setting:{
|
|
287
|
-
layout:'left',
|
|
288
|
-
title:{},
|
|
289
|
-
subtitle:{},
|
|
290
|
-
button:{},
|
|
291
|
-
secondaryButton:{}
|
|
292
|
-
},
|
|
293
|
-
source:[
|
|
294
|
-
|
|
295
|
-
],
|
|
296
|
-
style:{
|
|
297
|
-
align:'left',
|
|
298
|
-
backgroundColor:'red',
|
|
299
|
-
backgroundImage:'./img.png'
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
```
|
|
303
|
-
|
|
304
|
-
疑问:
|
|
305
|
-
|
|
306
|
-
Text 元组件
|
|
307
|
-
|
|
308
|
-
文字链接配置好之后,怎么删除
|
|
309
|
-
|
|
310
|
-
链接配置的规则,按单词还是字符
|
|
311
|
-
|
|
312
|
-
image 元组件
|
|
313
|
-
|
|
314
|
-
属性控制进度条和输入框是否要限制最大最小值
|
|
315
|
-
|
|
316
|
-
button 元组件
|
|
317
|
-
|
|
318
|
-
是否需要 icon 的 hover 效果
|
|
319
|
-
|
|
320
|
-
banner 中的 text Align 放在元组件里?
|