@dreamcommerce/aurora 3.1.7 → 3.1.9

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 (40) hide show
  1. package/build/cjs/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control.js +5 -3
  2. package/build/cjs/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control.js.map +1 -1
  3. package/build/cjs/packages/aurora/src/components/image_picker/components/image_picker_drag_over_placeholder.js +5 -3
  4. package/build/cjs/packages/aurora/src/components/image_picker/components/image_picker_drag_over_placeholder.js.map +1 -1
  5. package/build/cjs/packages/aurora/src/components/image_picker/components/image_picker_input.js +6 -10
  6. package/build/cjs/packages/aurora/src/components/image_picker/components/image_picker_input.js.map +1 -1
  7. package/build/cjs/packages/aurora/src/components/image_picker/components/image_picker_preview_container.js +3 -9
  8. package/build/cjs/packages/aurora/src/components/image_picker/components/image_picker_preview_container.js.map +1 -1
  9. package/build/cjs/packages/aurora/src/components/image_picker/image_picker.js +22 -15
  10. package/build/cjs/packages/aurora/src/components/image_picker/image_picker.js.map +1 -1
  11. package/build/cjs/packages/aurora/src/components/image_picker/image_picker_delete_button.js +5 -1
  12. package/build/cjs/packages/aurora/src/components/image_picker/image_picker_delete_button.js.map +1 -1
  13. package/build/cjs/packages/aurora/src/components/image_picker/use_image_picker.js +17 -11
  14. package/build/cjs/packages/aurora/src/components/image_picker/use_image_picker.js.map +1 -1
  15. package/build/cjs/packages/aurora/src/components/xhr_image_picker/xhr_image_picker.js +18 -7
  16. package/build/cjs/packages/aurora/src/components/xhr_image_picker/xhr_image_picker.js.map +1 -1
  17. package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control.d.ts +1 -1
  18. package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control.js +6 -4
  19. package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control.js.map +1 -1
  20. package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_drag_over_placeholder.d.ts +5 -1
  21. package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_drag_over_placeholder.js +5 -3
  22. package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_drag_over_placeholder.js.map +1 -1
  23. package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_input.d.ts +1 -3
  24. package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_input.js +6 -10
  25. package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_input.js.map +1 -1
  26. package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_preview_container.js +3 -9
  27. package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_preview_container.js.map +1 -1
  28. package/build/esm/packages/aurora/src/components/image_picker/image_picker.d.ts +1 -1
  29. package/build/esm/packages/aurora/src/components/image_picker/image_picker.js +23 -16
  30. package/build/esm/packages/aurora/src/components/image_picker/image_picker.js.map +1 -1
  31. package/build/esm/packages/aurora/src/components/image_picker/image_picker_delete_button.js +5 -1
  32. package/build/esm/packages/aurora/src/components/image_picker/image_picker_delete_button.js.map +1 -1
  33. package/build/esm/packages/aurora/src/components/image_picker/image_picker_types.d.ts +3 -9
  34. package/build/esm/packages/aurora/src/components/image_picker/use_image_picker.js +17 -11
  35. package/build/esm/packages/aurora/src/components/image_picker/use_image_picker.js.map +1 -1
  36. package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker.d.ts +1 -1
  37. package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker.js +19 -8
  38. package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker.js.map +1 -1
  39. package/build/index.css +1 -1
  40. package/package.json +1 -1
@@ -10,7 +10,11 @@ var ImagePickerDeleteButton = function ImagePickerDeleteButton(_ref) {
10
10
  t = _useTranslation2[0];
11
11
  return /*#__PURE__*/React.createElement("button", {
12
12
  "data-test-id": "image-picker-remove-button",
13
- onClick: onFileDelete,
13
+ onClick: function onClick(e) {
14
+ e.stopPropagation();
15
+ e.preventDefault();
16
+ onFileDelete();
17
+ },
14
18
  className: "aurora-flex aurora-items-center aurora-gap-1 aurora-border aurora-border-danger aurora-rounded-full aurora-px-3 aurora-py-[6px]",
15
19
  type: "button"
16
20
  }, /*#__PURE__*/React.createElement(DeleteBinLineIcon, {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA,+BAA+B,iEAAqE;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA,+BAA+B,iEAAqE;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -27,16 +27,10 @@ export interface IImagePicker {
27
27
  }
28
28
  export interface IImagePickerInput {
29
29
  id: string;
30
- onDropFile: (event: React.DragEvent<HTMLLabelElement>) => void;
31
- onDragOver: (event: React.DragEvent<HTMLLabelElement>) => void;
32
- onDragLeave: (event: React.DragEvent<HTMLLabelElement>) => void;
33
30
  allowedExtensions: TImagePickerExtension[];
34
31
  isDragOver: boolean;
35
32
  }
36
33
  export interface IImagePickerPreviewContainer {
37
- onDropFile: (event: React.DragEvent<HTMLLabelElement>) => void;
38
- onDragOver: (event: React.DragEvent<HTMLLabelElement>) => void;
39
- onDragLeave: (event: React.DragEvent<HTMLLabelElement>) => void;
40
34
  children: ReactNode;
41
35
  classname: string;
42
36
  }
@@ -45,9 +39,9 @@ export declare type TImageSize = {
45
39
  height: number;
46
40
  };
47
41
  export interface IUseImagePicker {
48
- onDropFile: (event: React.DragEvent<HTMLLabelElement>) => void;
49
- onDragOver: (event: React.DragEvent<HTMLLabelElement>) => void;
50
- onDragLeave: (event: React.DragEvent<HTMLLabelElement>) => void;
42
+ onDropFile: (event: React.DragEvent<HTMLDivElement>) => void;
43
+ onDragOver: (event: React.DragEvent<HTMLDivElement>) => void;
44
+ onDragLeave: (event: React.DragEvent<HTMLDivElement>) => void;
51
45
  onFileChange: (event: ChangeEvent<HTMLInputElement>) => void;
52
46
  onFileDelete: () => void;
53
47
  onPreviewError: () => void;
@@ -23,6 +23,7 @@ var useImagePicker = function useImagePicker(_ref) {
23
23
  isPreview = _useState6[0],
24
24
  setPreview = _useState6[1];
25
25
  var reader = useRef(new FileReader());
26
+ var dragTimeoutRef = useRef(null);
26
27
  useEffect(function () {
27
28
  reader.current.result && getDataUrlFromFile(reader.current.result);
28
29
  reader.current.addEventListener('load', function () {
@@ -41,10 +42,11 @@ var useImagePicker = function useImagePicker(_ref) {
41
42
  onError === null || onError === void 0 ? void 0 : onError([]);
42
43
  event.stopPropagation();
43
44
  event.preventDefault();
45
+ setDragOver(false);
44
46
  var files = event.dataTransfer.files;
45
47
  if (!files.length) return;
46
- validateFileExtension(allowedExtensions, files[0].type);
47
- setDragOver(false);
48
+ var isValid = validateFileExtension(allowedExtensions, files[0].type);
49
+ if (!isValid) return;
48
50
  updateFile(files);
49
51
  };
50
52
  var validateFileExtension = function validateFileExtension(allowedExtensions, mimeType) {
@@ -52,11 +54,9 @@ var useImagePicker = function useImagePicker(_ref) {
52
54
  var isValid = allowedExtensions.reduce(function (acc, extension) {
53
55
  return acc ? acc : MIME_TYPE_TO_FILE_EXTENSIONS[mimeType] === extension;
54
56
  }, false);
55
- if (isValid) {
56
- return isValid;
57
+ if (!isValid) {
58
+ onError === null || onError === void 0 ? void 0 : onError([i18n.t(IMAGE_PICKER_ERROR.invalidFileFormat)]);
57
59
  }
58
- var newErrors = [i18n.t(IMAGE_PICKER_ERROR.invalidFileFormat)];
59
- onError === null || onError === void 0 ? void 0 : onError(newErrors);
60
60
  return isValid;
61
61
  };
62
62
  var onFileChange = function onFileChange(event) {
@@ -93,15 +93,21 @@ var useImagePicker = function useImagePicker(_ref) {
93
93
  });
94
94
  };
95
95
  var onDragOver = function onDragOver(event) {
96
+ var dt = event.dataTransfer;
97
+ if (!dt.types || !(dt.types.indexOf ? dt.types.indexOf('Files') != -1 : dt.types.includes('Files'))) {
98
+ return;
99
+ }
96
100
  event.stopPropagation();
97
101
  event.preventDefault();
98
102
  event.dataTransfer.dropEffect = 'copy';
99
- if (!isDragOver) {
100
- setDragOver(true);
101
- }
103
+ setDragOver(true);
104
+ dragTimeoutRef.current && window.clearTimeout(dragTimeoutRef.current);
102
105
  };
103
- var onDragLeave = function onDragLeave() {
104
- setDragOver(false);
106
+ var onDragLeave = function onDragLeave(event) {
107
+ dragTimeoutRef.current = setTimeout(function () {
108
+ setDragOver(false);
109
+ dragTimeoutRef.current = null;
110
+ }, 25);
105
111
  };
106
112
  var onFileDelete = function onFileDelete() {
107
113
  inputRef.current.value = '';
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,3 +1,3 @@
1
1
  import { IXhrImagePickerProps } from './xhr_image_picker_types';
2
2
  import React from 'react';
3
- export declare const XhrImagePicker: React.FC<IXhrImagePickerProps>;
3
+ export declare const XhrImagePicker: React.ForwardRefExoticComponent<IXhrImagePickerProps & React.RefAttributes<HTMLButtonElement>>;
@@ -1,4 +1,4 @@
1
- import React, { useRef, useState, useEffect } from 'react';
1
+ import React, { forwardRef, useRef, useState, useEffect } from 'react';
2
2
  import { useTranslation } from '../../../../../external/react-i18next/dist/es/useTranslation.js';
3
3
  import { slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
4
4
  import { Loader } from '../loader/loader.js';
@@ -11,7 +11,7 @@ import { ImageEditLineIcon } from '../../assets/icons/image_edit_icon.js';
11
11
  import { REQUEST_TYPES } from '../../../../star_core/build/esm/packages/star_core/src/features/http_requester/http_requester_contants.js';
12
12
  import { useHttpApi } from '../../hooks/use_http_api.js';
13
13
 
14
- var XhrImagePicker = function XhrImagePicker(_ref) {
14
+ var XhrImagePicker = /*#__PURE__*/forwardRef(function (_ref, ref) {
15
15
  var id = _ref.id,
16
16
  url = _ref.url,
17
17
  name = _ref.name,
@@ -62,7 +62,7 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
62
62
  var fileAsDataUrlRef = useRef(undefined);
63
63
  var handleControlChange = /*#__PURE__*/function () {
64
64
  var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(file) {
65
- var fileList, fileAsDataUrl, _httpApi$fetch, response, cancelRequest, responseObject, paths;
65
+ var fileList, fileAsDataUrl, _httpApi$fetch, response, cancelRequest, responseObject, _responseObject$data$, paths;
66
66
  return _regeneratorRuntime().wrap(function _callee$(_context) {
67
67
  while (1) switch (_context.prev = _context.next) {
68
68
  case 0:
@@ -112,6 +112,13 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
112
112
  }
113
113
  return _context.abrupt("return");
114
114
  case 24:
115
+ if (!(responseObject.data.isSuccess === false)) {
116
+ _context.next = 27;
117
+ break;
118
+ }
119
+ onError === null || onError === void 0 ? void 0 : onError((_responseObject$data$ = responseObject.data.messages) !== null && _responseObject$data$ !== void 0 ? _responseObject$data$ : [t('File upload failed')]);
120
+ return _context.abrupt("return");
121
+ case 27:
115
122
  if (responseObject.data.imagePath) {
116
123
  paths = {
117
124
  original: responseObject.data.imagePath
@@ -123,7 +130,7 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
123
130
  imageId: responseObject.data.imageId,
124
131
  paths: paths
125
132
  });
126
- case 26:
133
+ case 29:
127
134
  case "end":
128
135
  return _context.stop();
129
136
  }
@@ -201,8 +208,10 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
201
208
  initialFile: initialImageFile.current,
202
209
  onImageSizeUpdated: onImageSizeUpdated,
203
210
  topButtons: !!ImageEditor && imageExtenstion !== 'svg' && (/*#__PURE__*/React.createElement("button", {
204
- onClick: function onClick() {
205
- return showModal(modalId);
211
+ onClick: function onClick(e) {
212
+ e.preventDefault();
213
+ e.stopPropagation();
214
+ showModal(modalId);
206
215
  },
207
216
  type: "button",
208
217
  className: "aurora-absolute aurora-top-2 aurora-right-2 aurora-z-10 aurora-flex aurora-items-center aurora-gap-1 aurora-border aurora-rounded-full aurora-px-3 aurora-py-[6px] aurora-bg"
@@ -211,7 +220,8 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
211
220
  }), /*#__PURE__*/React.createElement("span", {
212
221
  className: "aurora-text-xs aurora-text aurora-font-semibold"
213
222
  }, "".concat(t('Edit'))))),
214
- editedImageResult: imageEditorResult
223
+ editedImageResult: imageEditorResult,
224
+ ref: ref
215
225
  })), !!ImageEditor && (/*#__PURE__*/React.createElement(Modal, {
216
226
  name: modalId,
217
227
  header: /*#__PURE__*/React.createElement(React.Fragment, null, t('Edit image')),
@@ -223,7 +233,8 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
223
233
  setImageEditorResult(result);
224
234
  }
225
235
  }))));
226
- };
236
+ });
237
+ XhrImagePicker.displayName = 'XhrImagePicker';
227
238
 
228
239
  export { XhrImagePicker };
229
240
  //# sourceMappingURL=xhr_image_picker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA,+BAA+B,iEAAqE;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA,+BAA+B,iEAAqE;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}