antd-img-crop 4.18.0 → 4.20.0
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/dist/antd-img-crop.cjs.js +28 -19
- package/dist/antd-img-crop.esm.js +28 -19
- package/package.json +16 -16
|
@@ -178,38 +178,42 @@ const ImgCrop = react.forwardRef((props, cropperRef) => {
|
|
|
178
178
|
const [modalImage, setModalImage] = react.useState('');
|
|
179
179
|
const onCancel = react.useRef();
|
|
180
180
|
const onOk = react.useRef();
|
|
181
|
-
const
|
|
181
|
+
const runBeforeUpload = react.useCallback(({ beforeUpload, file, resolve, reject, }) => tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
182
182
|
const rawFile = file;
|
|
183
183
|
if (typeof beforeUpload !== 'function') {
|
|
184
|
-
|
|
184
|
+
resolve(rawFile);
|
|
185
185
|
return;
|
|
186
186
|
}
|
|
187
187
|
try {
|
|
188
188
|
// https://ant.design/components/upload-cn#api
|
|
189
189
|
// https://github.com/ant-design/ant-design/blob/master/components/upload/Upload.tsx#L152-L178
|
|
190
190
|
const result = yield beforeUpload(file, [file]);
|
|
191
|
-
|
|
191
|
+
if (result === false) {
|
|
192
|
+
reject(rawFile);
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
resolve((result !== true && result) || rawFile);
|
|
192
196
|
}
|
|
193
197
|
catch (err) {
|
|
194
|
-
|
|
198
|
+
reject(err);
|
|
195
199
|
}
|
|
196
200
|
}), []);
|
|
197
201
|
const getNewBeforeUpload = react.useCallback((beforeUpload) => {
|
|
198
202
|
return ((file, fileList) => {
|
|
199
203
|
return new Promise((resolve, reject) => tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
200
|
-
let
|
|
204
|
+
let processedFile = file;
|
|
201
205
|
if (typeof cb.current.beforeCrop === 'function') {
|
|
202
206
|
try {
|
|
203
207
|
const result = yield cb.current.beforeCrop(file, fileList);
|
|
204
208
|
if (result === false) {
|
|
205
|
-
return
|
|
209
|
+
return runBeforeUpload({ beforeUpload, file, resolve, reject });
|
|
206
210
|
}
|
|
207
211
|
if (result !== true) {
|
|
208
|
-
|
|
212
|
+
processedFile = result || file;
|
|
209
213
|
}
|
|
210
214
|
}
|
|
211
215
|
catch (err) {
|
|
212
|
-
return
|
|
216
|
+
return runBeforeUpload({ beforeUpload, file, resolve, reject });
|
|
213
217
|
}
|
|
214
218
|
}
|
|
215
219
|
// read file
|
|
@@ -219,7 +223,7 @@ const ImgCrop = react.forwardRef((props, cropperRef) => {
|
|
|
219
223
|
setModalImage(reader.result); // open modal
|
|
220
224
|
}
|
|
221
225
|
});
|
|
222
|
-
reader.readAsDataURL(
|
|
226
|
+
reader.readAsDataURL(processedFile);
|
|
223
227
|
// on modal cancel
|
|
224
228
|
onCancel.current = () => {
|
|
225
229
|
var _a, _b;
|
|
@@ -233,24 +237,29 @@ const ImgCrop = react.forwardRef((props, cropperRef) => {
|
|
|
233
237
|
setModalImage('');
|
|
234
238
|
easyCropRef.current.onReset();
|
|
235
239
|
const canvas = getCropCanvas(event.target);
|
|
236
|
-
const { type, name, uid } =
|
|
240
|
+
const { type, name, uid } = processedFile;
|
|
237
241
|
canvas.toBlob((blob) => tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
238
242
|
const newFile = new File([blob], name, { type });
|
|
239
243
|
Object.assign(newFile, { uid });
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
244
|
+
runBeforeUpload({
|
|
245
|
+
beforeUpload,
|
|
246
|
+
file: newFile,
|
|
247
|
+
resolve: (file) => {
|
|
248
|
+
var _a, _b;
|
|
249
|
+
resolve(file);
|
|
250
|
+
(_b = (_a = cb.current).onModalOk) === null || _b === void 0 ? void 0 : _b.call(_a, file);
|
|
251
|
+
},
|
|
252
|
+
reject: (err) => {
|
|
253
|
+
var _a, _b;
|
|
254
|
+
reject(err);
|
|
255
|
+
(_b = (_a = cb.current).onModalOk) === null || _b === void 0 ? void 0 : _b.call(_a, err);
|
|
256
|
+
},
|
|
248
257
|
});
|
|
249
258
|
}), type, quality);
|
|
250
259
|
});
|
|
251
260
|
}));
|
|
252
261
|
});
|
|
253
|
-
}, [getCropCanvas, quality,
|
|
262
|
+
}, [getCropCanvas, quality, runBeforeUpload]);
|
|
254
263
|
const getNewUpload = react.useCallback((children) => {
|
|
255
264
|
const upload = Array.isArray(children) ? children[0] : children;
|
|
256
265
|
const _a = upload.props, { beforeUpload, accept } = _a, restUploadProps = tslib.__rest(_a, ["beforeUpload", "accept"]);
|
|
@@ -176,38 +176,42 @@ const ImgCrop = forwardRef((props, cropperRef) => {
|
|
|
176
176
|
const [modalImage, setModalImage] = useState('');
|
|
177
177
|
const onCancel = useRef();
|
|
178
178
|
const onOk = useRef();
|
|
179
|
-
const
|
|
179
|
+
const runBeforeUpload = useCallback(({ beforeUpload, file, resolve, reject, }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
180
180
|
const rawFile = file;
|
|
181
181
|
if (typeof beforeUpload !== 'function') {
|
|
182
|
-
|
|
182
|
+
resolve(rawFile);
|
|
183
183
|
return;
|
|
184
184
|
}
|
|
185
185
|
try {
|
|
186
186
|
// https://ant.design/components/upload-cn#api
|
|
187
187
|
// https://github.com/ant-design/ant-design/blob/master/components/upload/Upload.tsx#L152-L178
|
|
188
188
|
const result = yield beforeUpload(file, [file]);
|
|
189
|
-
|
|
189
|
+
if (result === false) {
|
|
190
|
+
reject(rawFile);
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
resolve((result !== true && result) || rawFile);
|
|
190
194
|
}
|
|
191
195
|
catch (err) {
|
|
192
|
-
|
|
196
|
+
reject(err);
|
|
193
197
|
}
|
|
194
198
|
}), []);
|
|
195
199
|
const getNewBeforeUpload = useCallback((beforeUpload) => {
|
|
196
200
|
return ((file, fileList) => {
|
|
197
201
|
return new Promise((resolve, reject) => __awaiter(void 0, void 0, void 0, function* () {
|
|
198
|
-
let
|
|
202
|
+
let processedFile = file;
|
|
199
203
|
if (typeof cb.current.beforeCrop === 'function') {
|
|
200
204
|
try {
|
|
201
205
|
const result = yield cb.current.beforeCrop(file, fileList);
|
|
202
206
|
if (result === false) {
|
|
203
|
-
return
|
|
207
|
+
return runBeforeUpload({ beforeUpload, file, resolve, reject });
|
|
204
208
|
}
|
|
205
209
|
if (result !== true) {
|
|
206
|
-
|
|
210
|
+
processedFile = result || file;
|
|
207
211
|
}
|
|
208
212
|
}
|
|
209
213
|
catch (err) {
|
|
210
|
-
return
|
|
214
|
+
return runBeforeUpload({ beforeUpload, file, resolve, reject });
|
|
211
215
|
}
|
|
212
216
|
}
|
|
213
217
|
// read file
|
|
@@ -217,7 +221,7 @@ const ImgCrop = forwardRef((props, cropperRef) => {
|
|
|
217
221
|
setModalImage(reader.result); // open modal
|
|
218
222
|
}
|
|
219
223
|
});
|
|
220
|
-
reader.readAsDataURL(
|
|
224
|
+
reader.readAsDataURL(processedFile);
|
|
221
225
|
// on modal cancel
|
|
222
226
|
onCancel.current = () => {
|
|
223
227
|
var _a, _b;
|
|
@@ -231,24 +235,29 @@ const ImgCrop = forwardRef((props, cropperRef) => {
|
|
|
231
235
|
setModalImage('');
|
|
232
236
|
easyCropRef.current.onReset();
|
|
233
237
|
const canvas = getCropCanvas(event.target);
|
|
234
|
-
const { type, name, uid } =
|
|
238
|
+
const { type, name, uid } = processedFile;
|
|
235
239
|
canvas.toBlob((blob) => __awaiter(void 0, void 0, void 0, function* () {
|
|
236
240
|
const newFile = new File([blob], name, { type });
|
|
237
241
|
Object.assign(newFile, { uid });
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
242
|
+
runBeforeUpload({
|
|
243
|
+
beforeUpload,
|
|
244
|
+
file: newFile,
|
|
245
|
+
resolve: (file) => {
|
|
246
|
+
var _a, _b;
|
|
247
|
+
resolve(file);
|
|
248
|
+
(_b = (_a = cb.current).onModalOk) === null || _b === void 0 ? void 0 : _b.call(_a, file);
|
|
249
|
+
},
|
|
250
|
+
reject: (err) => {
|
|
251
|
+
var _a, _b;
|
|
252
|
+
reject(err);
|
|
253
|
+
(_b = (_a = cb.current).onModalOk) === null || _b === void 0 ? void 0 : _b.call(_a, err);
|
|
254
|
+
},
|
|
246
255
|
});
|
|
247
256
|
}), type, quality);
|
|
248
257
|
});
|
|
249
258
|
}));
|
|
250
259
|
});
|
|
251
|
-
}, [getCropCanvas, quality,
|
|
260
|
+
}, [getCropCanvas, quality, runBeforeUpload]);
|
|
252
261
|
const getNewUpload = useCallback((children) => {
|
|
253
262
|
const upload = Array.isArray(children) ? children[0] : children;
|
|
254
263
|
const _a = upload.props, { beforeUpload, accept } = _a, restUploadProps = __rest(_a, ["beforeUpload", "accept"]);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "antd-img-crop",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.20.0",
|
|
4
4
|
"description": "An image cropper for Ant Design Upload",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -32,32 +32,32 @@
|
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"compare-versions": "6.1.0",
|
|
35
|
-
"react-easy-crop": "^5.0.
|
|
35
|
+
"react-easy-crop": "^5.0.4",
|
|
36
36
|
"tslib": "^2.6.2"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@rollup/plugin-replace": "^5.0.5",
|
|
40
40
|
"@rollup/plugin-typescript": "^11.1.5",
|
|
41
|
-
"@types/node": "^20.10.
|
|
42
|
-
"@types/react": "^18.2.
|
|
43
|
-
"@types/react-dom": "^18.2.
|
|
44
|
-
"@vitejs/plugin-react": "^4.2.
|
|
45
|
-
"antd": "^5.
|
|
41
|
+
"@types/node": "^20.10.5",
|
|
42
|
+
"@types/react": "^18.2.46",
|
|
43
|
+
"@types/react-dom": "^18.2.18",
|
|
44
|
+
"@vitejs/plugin-react": "^4.2.1",
|
|
45
|
+
"antd": "^5.12.5",
|
|
46
46
|
"autoprefixer": "^10.4.16",
|
|
47
|
-
"eslint": "^8.
|
|
48
|
-
"eslint-config-prettier": "^9.
|
|
47
|
+
"eslint": "^8.56.0",
|
|
48
|
+
"eslint-config-prettier": "^9.1.0",
|
|
49
49
|
"eslint-config-react-app": "^7.0.1",
|
|
50
|
-
"postcss": "^8.4.
|
|
51
|
-
"prettier": "^3.1.
|
|
50
|
+
"postcss": "^8.4.32",
|
|
51
|
+
"prettier": "^3.1.1",
|
|
52
52
|
"prettier-plugin-organize-imports": "^3.2.4",
|
|
53
|
-
"prettier-plugin-tailwindcss": "^0.5.
|
|
53
|
+
"prettier-plugin-tailwindcss": "^0.5.10",
|
|
54
54
|
"react": "^18.2.0",
|
|
55
55
|
"react-dom": "^18.2.0",
|
|
56
|
-
"rollup": "4.
|
|
56
|
+
"rollup": "4.9.1",
|
|
57
57
|
"rollup-plugin-dts": "^6.1.0",
|
|
58
58
|
"rollup-plugin-postcss": "^4.0.2",
|
|
59
|
-
"tailwindcss": "^3.
|
|
60
|
-
"typescript": "^5.3.
|
|
61
|
-
"vite": "^5.0.
|
|
59
|
+
"tailwindcss": "^3.4.0",
|
|
60
|
+
"typescript": "^5.3.3",
|
|
61
|
+
"vite": "^5.0.10"
|
|
62
62
|
}
|
|
63
63
|
}
|