@pisell/materials 1.0.482 → 1.0.484
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/build/lowcode/assets-daily.json +11 -11
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +11 -11
- package/build/lowcode/index.js +1 -1
- package/build/lowcode/meta.js +5 -5
- package/build/lowcode/preview.js +3 -3
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +21 -21
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +21 -21
- package/es/components/dataSourceComponents/fields/TimePicker/WithMode.js +2 -2
- package/es/components/dataSourceComponents/fields/Upload/BaseUpload.js +197 -74
- package/es/components/dataSourceComponents/fields/Upload/ReadPretty.js +4 -1
- package/es/components/dataSourceComponents/fields/Upload/index.less +6 -1
- package/es/components/dataSourceComponents/fields/Upload/type.d.ts +1 -1
- package/es/components/dataSourceComponents/fields/Upload/utils.d.ts +1 -0
- package/es/components/dataSourceComponents/fields/Upload/utils.js +203 -2
- package/es/components/dataSourceComponents/fields/index.d.ts +20 -20
- package/es/components/dataSourceComponents/fields/index.js +16 -16
- package/es/components/iconfont/index.js +1 -1
- package/es/components/table/Table/utils.d.ts +1 -1
- package/lib/components/dataSourceComponents/fields/TimePicker/WithMode.js +2 -2
- package/lib/components/dataSourceComponents/fields/Upload/BaseUpload.js +164 -50
- package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.js +2 -1
- package/lib/components/dataSourceComponents/fields/Upload/index.less +6 -1
- package/lib/components/dataSourceComponents/fields/Upload/type.d.ts +1 -1
- package/lib/components/dataSourceComponents/fields/Upload/utils.d.ts +1 -0
- package/lib/components/dataSourceComponents/fields/Upload/utils.js +235 -2
- package/lib/components/dataSourceComponents/fields/index.d.ts +20 -20
- package/lib/components/dataSourceComponents/fields/index.js +16 -16
- package/lib/components/iconfont/index.js +1 -1
- package/lib/components/table/Table/utils.d.ts +1 -1
- package/lowcode/data-source-form/constants.ts +47 -0
- package/lowcode/data-source-form/meta.ts +2 -10
- package/lowcode/data-source-form/utils.ts +27 -4
- package/lowcode/data-source-table/utils.tsx +2 -2
- package/lowcode/form/meta.ts +0 -94
- package/lowcode/form-group/snippets.ts +1 -0
- package/lowcode/form-item-checkbox/snippets.ts +7 -2
- package/lowcode/form-item-color-picker/snippets.ts +1 -0
- package/lowcode/form-item-input.json/snippets.ts +1 -0
- package/lowcode/form-item-radio/snippets.ts +1 -0
- package/lowcode/form-item-upload/meta.ts +52 -30
- package/lowcode/form-item-upload/utils.ts +230 -0
- package/lowcode/submit-button/meta.ts +12 -0
- package/lowcode/submit-button/snippets.ts +1 -0
- package/package.json +3 -3
|
@@ -78,8 +78,8 @@ var TimePicker = function TimePicker(props) {
|
|
|
78
78
|
value: normalizedValue === null || normalizedValue === void 0 ? void 0 : normalizedValue.format('HH:mm'),
|
|
79
79
|
onChange: function onChange(timeString) {
|
|
80
80
|
if (_onChange) {
|
|
81
|
-
var timeValue = dayjs("".concat(dayjs().format('YYYY-MM-DD'), " ").concat(timeString));
|
|
82
|
-
_onChange(timeValue, timeString);
|
|
81
|
+
var timeValue = timeString ? dayjs("".concat(dayjs().format('YYYY-MM-DD'), " ").concat(timeString)) : null;
|
|
82
|
+
_onChange(timeValue, timeString || '');
|
|
83
83
|
}
|
|
84
84
|
},
|
|
85
85
|
timePickerProps: _objectSpread({
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
var _excluded = ["renderMode", "maxSize", "minCount", "maxCount", "multiple", "presetType", "customType", "enablePresetType", "enableCustomType"]
|
|
2
|
+
var _excluded = ["renderMode", "maxSize", "minCount", "maxCount", "multiple", "presetType", "customType", "enablePresetType", "enableCustomType", "allowPreview", "value"],
|
|
3
|
+
_excluded2 = ["cover"];
|
|
3
4
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
5
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
6
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
7
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
9
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
4
10
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
5
11
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
6
12
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
@@ -16,18 +22,21 @@ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefine
|
|
|
16
22
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
17
23
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
18
24
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
19
|
-
import React, { useState, useMemo } from 'react';
|
|
25
|
+
import React, { useState, useMemo, useEffect } from 'react';
|
|
20
26
|
import { PlusOutlined } from '@ant-design/icons';
|
|
21
|
-
import { message } from 'antd';
|
|
27
|
+
import { message, Upload, Image } from 'antd';
|
|
22
28
|
import { useDebounceFn } from 'ahooks';
|
|
29
|
+
import { isString } from '@pisell/utils';
|
|
30
|
+
import IconFont from "../../../iconfont";
|
|
23
31
|
import useEngineContext from "../../../../hooks/useEngineContext";
|
|
24
32
|
import { getText } from "../../../../locales";
|
|
25
33
|
import PisellUpload from "../../../pisellUpload";
|
|
26
|
-
import { getPointSuffix, checkFileCount } from "./utils";
|
|
34
|
+
import { getPointSuffix, checkFileCount, getPresetTypes } from "./utils";
|
|
27
35
|
import "./index.less";
|
|
28
36
|
var BaseUpload = function BaseUpload(props) {
|
|
29
37
|
var renderMode = props.renderMode,
|
|
30
|
-
maxSize = props.maxSize,
|
|
38
|
+
_props$maxSize = props.maxSize,
|
|
39
|
+
maxSize = _props$maxSize === void 0 ? 3 : _props$maxSize,
|
|
31
40
|
minCount = props.minCount,
|
|
32
41
|
maxCount = props.maxCount,
|
|
33
42
|
multiple = props.multiple,
|
|
@@ -35,16 +44,53 @@ var BaseUpload = function BaseUpload(props) {
|
|
|
35
44
|
customType = props.customType,
|
|
36
45
|
enablePresetType = props.enablePresetType,
|
|
37
46
|
enableCustomType = props.enableCustomType,
|
|
47
|
+
allowPreview = props.allowPreview,
|
|
48
|
+
value = props.value,
|
|
38
49
|
restProps = _objectWithoutProperties(props, _excluded);
|
|
39
50
|
var _useState = useState([]),
|
|
40
51
|
_useState2 = _slicedToArray(_useState, 2),
|
|
41
52
|
fileList = _useState2[0],
|
|
42
53
|
setFileList = _useState2[1];
|
|
54
|
+
var _useState3 = useState(''),
|
|
55
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
56
|
+
previewImage = _useState4[0],
|
|
57
|
+
setPreviewImage = _useState4[1];
|
|
58
|
+
var _useState5 = useState(false),
|
|
59
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
60
|
+
previewOpen = _useState6[0],
|
|
61
|
+
setPreviewOpen = _useState6[1];
|
|
43
62
|
var _useEngineContext = useEngineContext(),
|
|
44
63
|
appHelper = _useEngineContext.appHelper;
|
|
45
64
|
var _appHelper$constants = appHelper === null || appHelper === void 0 ? void 0 : appHelper.constants,
|
|
46
65
|
mediaUploadUrl = _appHelper$constants.mediaUploadUrl,
|
|
47
66
|
getHeaders = _appHelper$constants.getHeaders;
|
|
67
|
+
useEffect(function () {
|
|
68
|
+
if (!value) {
|
|
69
|
+
setFileList([]);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
if (isString(value)) {
|
|
73
|
+
setFileList([{
|
|
74
|
+
uid: '-1',
|
|
75
|
+
name: value.split('/').pop() || 'file',
|
|
76
|
+
status: 'done',
|
|
77
|
+
url: value
|
|
78
|
+
}]);
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
if (Array.isArray(value)) {
|
|
82
|
+
var newFileList = value.map(function (url, index) {
|
|
83
|
+
return {
|
|
84
|
+
uid: "-".concat(index + 1),
|
|
85
|
+
name: url.split('/').pop() || "file".concat(index + 1),
|
|
86
|
+
status: 'done',
|
|
87
|
+
url: url
|
|
88
|
+
};
|
|
89
|
+
});
|
|
90
|
+
setFileList(newFileList);
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
}, [value]);
|
|
48
94
|
var calcMaxCount = useMemo(function () {
|
|
49
95
|
if (multiple) {
|
|
50
96
|
return maxCount || 9;
|
|
@@ -56,46 +102,78 @@ var BaseUpload = function BaseUpload(props) {
|
|
|
56
102
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
57
103
|
while (1) switch (_context.prev = _context.next) {
|
|
58
104
|
case 0:
|
|
105
|
+
if (!file.type.startsWith('video/')) {
|
|
106
|
+
_context.next = 2;
|
|
107
|
+
break;
|
|
108
|
+
}
|
|
59
109
|
return _context.abrupt("return", new Promise(function (resolve) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
110
|
+
var video = document.createElement('video');
|
|
111
|
+
video.preload = 'metadata';
|
|
112
|
+
var canvas = document.createElement('canvas');
|
|
113
|
+
var hasMetadata = false;
|
|
114
|
+
var hasSeeked = false;
|
|
115
|
+
var tryResolve = function tryResolve() {
|
|
116
|
+
if (hasMetadata && hasSeeked) {
|
|
117
|
+
var ctx = canvas.getContext('2d');
|
|
118
|
+
ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
|
|
119
|
+
canvas.toBlob(function (blob) {
|
|
120
|
+
if (blob) {
|
|
121
|
+
var cover = new File([blob], "".concat(file.name, "-cover.jpg"), {
|
|
122
|
+
type: 'image/jpeg'
|
|
123
|
+
});
|
|
124
|
+
URL.revokeObjectURL(video.src);
|
|
125
|
+
resolve({
|
|
126
|
+
width: video.videoWidth,
|
|
127
|
+
height: video.videoHeight,
|
|
128
|
+
duration: video.duration,
|
|
129
|
+
bitrate: file.size / video.duration,
|
|
130
|
+
cover: cover
|
|
131
|
+
});
|
|
132
|
+
} else {
|
|
133
|
+
URL.revokeObjectURL(video.src);
|
|
134
|
+
resolve({
|
|
135
|
+
width: video.videoWidth,
|
|
136
|
+
height: video.videoHeight,
|
|
137
|
+
duration: video.duration,
|
|
138
|
+
bitrate: file.size / video.duration
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}, 'image/jpeg', 0.8);
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
video.onloadedmetadata = function () {
|
|
145
|
+
canvas.width = video.videoWidth;
|
|
146
|
+
canvas.height = video.videoHeight;
|
|
147
|
+
video.currentTime = 0;
|
|
148
|
+
hasMetadata = true;
|
|
149
|
+
tryResolve();
|
|
150
|
+
};
|
|
151
|
+
video.onseeked = function () {
|
|
152
|
+
hasSeeked = true;
|
|
153
|
+
tryResolve();
|
|
154
|
+
};
|
|
155
|
+
video.src = URL.createObjectURL(file);
|
|
156
|
+
}));
|
|
157
|
+
case 2:
|
|
158
|
+
if (!file.type.startsWith('audio/')) {
|
|
159
|
+
_context.next = 4;
|
|
160
|
+
break;
|
|
161
|
+
}
|
|
162
|
+
return _context.abrupt("return", new Promise(function (resolve) {
|
|
163
|
+
var audio = document.createElement('audio');
|
|
164
|
+
audio.preload = 'metadata';
|
|
165
|
+
audio.src = URL.createObjectURL(file);
|
|
166
|
+
audio.onloadedmetadata = function () {
|
|
167
|
+
URL.revokeObjectURL(audio.src);
|
|
168
|
+
resolve({
|
|
169
|
+
duration: audio.duration,
|
|
170
|
+
bitrate: file.size / audio.duration
|
|
171
|
+
});
|
|
172
|
+
};
|
|
97
173
|
}));
|
|
98
|
-
case
|
|
174
|
+
case 4:
|
|
175
|
+
return _context.abrupt("return", Promise.resolve(null));
|
|
176
|
+
case 5:
|
|
99
177
|
case "end":
|
|
100
178
|
return _context.stop();
|
|
101
179
|
}
|
|
@@ -107,29 +185,18 @@ var BaseUpload = function BaseUpload(props) {
|
|
|
107
185
|
}();
|
|
108
186
|
var handleChange = /*#__PURE__*/function () {
|
|
109
187
|
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref2) {
|
|
110
|
-
var file, newFileList,
|
|
188
|
+
var file, newFileList, _props$onChange, _file$response, _file$response$data;
|
|
111
189
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
112
190
|
while (1) switch (_context2.prev = _context2.next) {
|
|
113
191
|
case 0:
|
|
114
192
|
file = _ref2.file, newFileList = _ref2.fileList;
|
|
115
193
|
setFileList(newFileList);
|
|
116
|
-
if (!(file.status === 'uploading')) {
|
|
117
|
-
_context2.next = 7;
|
|
118
|
-
break;
|
|
119
|
-
}
|
|
120
|
-
_context2.next = 5;
|
|
121
|
-
return getMediaMetadata(file.originFileObj);
|
|
122
|
-
case 5:
|
|
123
|
-
metadata = _context2.sent;
|
|
124
|
-
file.metadata = metadata;
|
|
125
|
-
case 7:
|
|
126
194
|
if (file.status === 'done') {
|
|
127
|
-
|
|
128
|
-
(_props$onChange = props.onChange) === null || _props$onChange === void 0 ? void 0 : _props$onChange.call(props, (_file$response = file.response) === null || _file$response === void 0 ? void 0 : _file$response.url);
|
|
195
|
+
(_props$onChange = props.onChange) === null || _props$onChange === void 0 ? void 0 : _props$onChange.call(props, (_file$response = file.response) === null || _file$response === void 0 ? void 0 : (_file$response$data = _file$response.data) === null || _file$response$data === void 0 ? void 0 : _file$response$data.url);
|
|
129
196
|
} else if (file.status === 'error') {
|
|
130
197
|
message.error("".concat(file.name, " \u4E0A\u4F20\u5931\u8D25"));
|
|
131
198
|
}
|
|
132
|
-
case
|
|
199
|
+
case 3:
|
|
133
200
|
case "end":
|
|
134
201
|
return _context2.stop();
|
|
135
202
|
}
|
|
@@ -156,23 +223,24 @@ var BaseUpload = function BaseUpload(props) {
|
|
|
156
223
|
});
|
|
157
224
|
var uploadButton = /*#__PURE__*/React.createElement("button", {
|
|
158
225
|
className: "pisell-upload-button",
|
|
159
|
-
type: "button"
|
|
226
|
+
type: "button",
|
|
227
|
+
disabled: restProps.disabled
|
|
160
228
|
}, /*#__PURE__*/React.createElement(PlusOutlined, null), /*#__PURE__*/React.createElement("div", {
|
|
161
229
|
className: "pisell-upload-text"
|
|
162
230
|
}, getText('pisell-upload-button')));
|
|
163
231
|
var accept = useMemo(function () {
|
|
164
232
|
var types = [];
|
|
165
233
|
if (enablePresetType) {
|
|
166
|
-
types = _toConsumableArray(presetType || []);
|
|
234
|
+
types = _toConsumableArray(getPresetTypes(presetType) || []);
|
|
167
235
|
}
|
|
168
236
|
if (enableCustomType) {
|
|
169
237
|
types = [].concat(_toConsumableArray(types), _toConsumableArray(customType || []));
|
|
170
238
|
}
|
|
171
|
-
return types.join(',
|
|
239
|
+
return types.join(',');
|
|
172
240
|
}, [presetType, customType, enableCustomType, enablePresetType]);
|
|
173
241
|
var beforeUpload = /*#__PURE__*/function () {
|
|
174
242
|
var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(file, newFileList) {
|
|
175
|
-
var currentFileCount, pointSuffix, _checkFileCount, success, messageStr;
|
|
243
|
+
var currentFileCount, pointSuffix, _checkFileCount, success, messageStr, metadata, cover, restMetadata;
|
|
176
244
|
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
177
245
|
while (1) switch (_context3.prev = _context3.next) {
|
|
178
246
|
case 0:
|
|
@@ -182,13 +250,14 @@ var BaseUpload = function BaseUpload(props) {
|
|
|
182
250
|
currentFileCount = index + 1;
|
|
183
251
|
}
|
|
184
252
|
});
|
|
253
|
+
|
|
185
254
|
// 文件大小超出限制
|
|
186
|
-
if (!(file.size >
|
|
255
|
+
if (!(file.size > maxSize * 1024 * 1024)) {
|
|
187
256
|
_context3.next = 5;
|
|
188
257
|
break;
|
|
189
258
|
}
|
|
190
259
|
sizeError.run(getText('pisell-upload-setting-size-error')(maxSize));
|
|
191
|
-
return _context3.abrupt("return",
|
|
260
|
+
return _context3.abrupt("return", Upload.LIST_IGNORE);
|
|
192
261
|
case 5:
|
|
193
262
|
pointSuffix = getPointSuffix(file.name); // 文件类型不符合
|
|
194
263
|
if (!(accept !== '' && !(accept || '').includes(pointSuffix))) {
|
|
@@ -196,7 +265,7 @@ var BaseUpload = function BaseUpload(props) {
|
|
|
196
265
|
break;
|
|
197
266
|
}
|
|
198
267
|
typeError.run(getText('pisell-upload-setting-type-error')(pointSuffix));
|
|
199
|
-
return _context3.abrupt("return",
|
|
268
|
+
return _context3.abrupt("return", Upload.LIST_IGNORE);
|
|
200
269
|
case 9:
|
|
201
270
|
// 文件个数超出限制
|
|
202
271
|
_checkFileCount = checkFileCount({
|
|
@@ -210,21 +279,53 @@ var BaseUpload = function BaseUpload(props) {
|
|
|
210
279
|
break;
|
|
211
280
|
}
|
|
212
281
|
countError.run(messageStr);
|
|
213
|
-
return _context3.abrupt("return",
|
|
282
|
+
return _context3.abrupt("return", Upload.LIST_IGNORE);
|
|
214
283
|
case 13:
|
|
284
|
+
_context3.prev = 13;
|
|
285
|
+
_context3.next = 16;
|
|
286
|
+
return getMediaMetadata(file);
|
|
287
|
+
case 16:
|
|
288
|
+
metadata = _context3.sent;
|
|
289
|
+
if (metadata) {
|
|
290
|
+
cover = metadata.cover, restMetadata = _objectWithoutProperties(metadata, _excluded2);
|
|
291
|
+
file.metadata = restMetadata;
|
|
292
|
+
file.cover = cover;
|
|
293
|
+
}
|
|
294
|
+
_context3.next = 23;
|
|
295
|
+
break;
|
|
296
|
+
case 20:
|
|
297
|
+
_context3.prev = 20;
|
|
298
|
+
_context3.t0 = _context3["catch"](13);
|
|
299
|
+
console.error('获取媒体元数据失败:', _context3.t0);
|
|
300
|
+
case 23:
|
|
215
301
|
return _context3.abrupt("return", file);
|
|
216
|
-
case
|
|
302
|
+
case 24:
|
|
217
303
|
case "end":
|
|
218
304
|
return _context3.stop();
|
|
219
305
|
}
|
|
220
|
-
}, _callee3);
|
|
306
|
+
}, _callee3, null, [[13, 20]]);
|
|
221
307
|
}));
|
|
222
308
|
return function beforeUpload(_x4, _x5) {
|
|
223
309
|
return _ref4.apply(this, arguments);
|
|
224
310
|
};
|
|
225
311
|
}();
|
|
226
|
-
|
|
312
|
+
var handlePreview = function handlePreview(file) {
|
|
313
|
+
var _file$response2, _file$response2$data;
|
|
314
|
+
setPreviewImage(file.url || ((_file$response2 = file.response) === null || _file$response2 === void 0 ? void 0 : (_file$response2$data = _file$response2.data) === null || _file$response2$data === void 0 ? void 0 : _file$response2$data.url) || '');
|
|
315
|
+
setPreviewOpen(true);
|
|
316
|
+
};
|
|
317
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(PisellUpload, _extends({}, restProps, {
|
|
318
|
+
multiple: multiple,
|
|
319
|
+
showUploadList: {
|
|
320
|
+
showRemoveIcon: true,
|
|
321
|
+
showPreviewIcon: allowPreview
|
|
322
|
+
},
|
|
227
323
|
uploadType: "custom",
|
|
324
|
+
iconRender: function iconRender() {
|
|
325
|
+
return /*#__PURE__*/React.createElement(IconFont, {
|
|
326
|
+
type: "pisell2-a-BlueFile1"
|
|
327
|
+
});
|
|
328
|
+
},
|
|
228
329
|
listType: "picture-card",
|
|
229
330
|
fileList: fileList,
|
|
230
331
|
onChange: handleChange,
|
|
@@ -232,14 +333,36 @@ var BaseUpload = function BaseUpload(props) {
|
|
|
232
333
|
method: "post",
|
|
233
334
|
accept: accept,
|
|
234
335
|
name: "file",
|
|
336
|
+
onPreview: handlePreview,
|
|
235
337
|
data: function data(file) {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
}
|
|
338
|
+
var _file$metadata, _file$metadata2, _file$metadata3, _file$metadata4;
|
|
339
|
+
return _objectSpread(_objectSpread({
|
|
340
|
+
group_id: 0
|
|
341
|
+
}, file.metadata ? {
|
|
342
|
+
'metadata[width]': (_file$metadata = file.metadata) === null || _file$metadata === void 0 ? void 0 : _file$metadata.width,
|
|
343
|
+
'metadata[height]': (_file$metadata2 = file.metadata) === null || _file$metadata2 === void 0 ? void 0 : _file$metadata2.height,
|
|
344
|
+
'metadata[duration]': (_file$metadata3 = file.metadata) === null || _file$metadata3 === void 0 ? void 0 : _file$metadata3.duration,
|
|
345
|
+
'metadata[bitrate]': (_file$metadata4 = file.metadata) === null || _file$metadata4 === void 0 ? void 0 : _file$metadata4.bitrate
|
|
346
|
+
} : {}), file.cover ? {
|
|
347
|
+
cover: file.cover
|
|
348
|
+
} : {});
|
|
240
349
|
},
|
|
241
|
-
headers: getHeaders(),
|
|
350
|
+
headers: getHeaders === null || getHeaders === void 0 ? void 0 : getHeaders(),
|
|
242
351
|
beforeUpload: beforeUpload
|
|
243
|
-
}), fileList.length >= calcMaxCount ? null : uploadButton)
|
|
352
|
+
}), fileList.length >= calcMaxCount ? null : uploadButton), previewImage && /*#__PURE__*/React.createElement(Image, {
|
|
353
|
+
wrapperStyle: {
|
|
354
|
+
display: 'none'
|
|
355
|
+
},
|
|
356
|
+
preview: {
|
|
357
|
+
visible: previewOpen,
|
|
358
|
+
onVisibleChange: function onVisibleChange(visible) {
|
|
359
|
+
return setPreviewOpen(visible);
|
|
360
|
+
},
|
|
361
|
+
afterOpenChange: function afterOpenChange(visible) {
|
|
362
|
+
return !visible && setPreviewImage('');
|
|
363
|
+
}
|
|
364
|
+
},
|
|
365
|
+
src: previewImage
|
|
366
|
+
}));
|
|
244
367
|
};
|
|
245
368
|
export default BaseUpload;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { Image } from 'antd';
|
|
2
3
|
var UploadReadPretty = function UploadReadPretty(props) {
|
|
3
|
-
return /*#__PURE__*/React.createElement(
|
|
4
|
+
return /*#__PURE__*/React.createElement(Image, {
|
|
5
|
+
src: props.value
|
|
6
|
+
});
|
|
4
7
|
};
|
|
5
8
|
export default UploadReadPretty;
|
|
@@ -10,7 +10,7 @@ export interface UploadFile extends AntdUploadFile {
|
|
|
10
10
|
}
|
|
11
11
|
export interface UploadProps extends PisellUploadProps {
|
|
12
12
|
renderMode?: 'read' | 'edit';
|
|
13
|
-
value?: string;
|
|
13
|
+
value?: string | string[];
|
|
14
14
|
allowMediaLibrary?: boolean;
|
|
15
15
|
allowLocalUpload?: boolean;
|
|
16
16
|
allowPreview?: boolean;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export declare const getSuffix: (name: string) => string | undefined;
|
|
2
2
|
export declare const getPointSuffix: (name: string) => string;
|
|
3
|
+
export declare const getPresetTypes: (presetTypes?: string[]) => string[];
|
|
3
4
|
export declare const checkFileCount: ({ multiple, minCount, maxCount, valueLength, }: {
|
|
4
5
|
multiple: boolean;
|
|
5
6
|
minCount: number;
|