@dreamcommerce/aurora 2.18.0 → 2.19.0-2

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 (34) hide show
  1. package/build/cjs/packages/aurora/src/components/file_picker/use_file_picker.js +24 -17
  2. package/build/cjs/packages/aurora/src/components/file_picker/use_file_picker.js.map +1 -1
  3. package/build/cjs/packages/aurora/src/components/image_picker/index.js +20 -6
  4. package/build/cjs/packages/aurora/src/components/image_picker/index.js.map +1 -1
  5. package/build/cjs/packages/aurora/src/components/loader/index.js +1 -1
  6. package/build/cjs/packages/aurora/src/components/with_loader/css_classes.js +2 -0
  7. package/build/cjs/packages/aurora/src/components/with_loader/css_classes.js.map +1 -1
  8. package/build/cjs/packages/aurora/src/components/with_loader/index.js +9 -3
  9. package/build/cjs/packages/aurora/src/components/with_loader/index.js.map +1 -1
  10. package/build/cjs/packages/aurora/src/components/xhr_image_picker/index.js +33 -12
  11. package/build/cjs/packages/aurora/src/components/xhr_image_picker/index.js.map +1 -1
  12. package/build/cjs/packages/aurora/src/css/with-loader/main.module.less.js +4 -2
  13. package/build/cjs/packages/aurora/src/css/with-loader/main.module.less.js.map +1 -1
  14. package/build/cjs/packages/aurora/src/index.js +4 -4
  15. package/build/esm/packages/aurora/src/components/file_picker/use_file_picker.js +24 -17
  16. package/build/esm/packages/aurora/src/components/file_picker/use_file_picker.js.map +1 -1
  17. package/build/esm/packages/aurora/src/components/image_picker/index.js +21 -7
  18. package/build/esm/packages/aurora/src/components/image_picker/index.js.map +1 -1
  19. package/build/esm/packages/aurora/src/components/image_picker/types.d.ts +1 -0
  20. package/build/esm/packages/aurora/src/components/loader/index.js +1 -1
  21. package/build/esm/packages/aurora/src/components/with_loader/css_classes.d.ts +2 -0
  22. package/build/esm/packages/aurora/src/components/with_loader/css_classes.js +2 -1
  23. package/build/esm/packages/aurora/src/components/with_loader/css_classes.js.map +1 -1
  24. package/build/esm/packages/aurora/src/components/with_loader/index.js +10 -4
  25. package/build/esm/packages/aurora/src/components/with_loader/index.js.map +1 -1
  26. package/build/esm/packages/aurora/src/components/with_loader/types.d.ts +4 -2
  27. package/build/esm/packages/aurora/src/components/with_loader/types.js +1 -0
  28. package/build/esm/packages/aurora/src/components/with_loader/types.js.map +1 -1
  29. package/build/esm/packages/aurora/src/components/xhr_image_picker/index.js +33 -12
  30. package/build/esm/packages/aurora/src/components/xhr_image_picker/index.js.map +1 -1
  31. package/build/esm/packages/aurora/src/css/with-loader/main.module.less.js +4 -2
  32. package/build/esm/packages/aurora/src/css/with-loader/main.module.less.js.map +1 -1
  33. package/build/esm/packages/aurora/src/index.js +2 -2
  34. package/package.json +1 -1
@@ -46,15 +46,16 @@ var useFilePicker = function useFilePicker(_ref) {
46
46
  setPreview = _useState12[1];
47
47
 
48
48
  var reader = React.useRef(new FileReader());
49
+ var isMounted = React.useRef(true); // Nowy ref do śledzenia czy komponent jest zamontowany
50
+
49
51
  React.useEffect(function () {
50
- reader.current && getDataUrlFromFile(reader.current.result);
51
- reader.current.addEventListener('load', function () {
52
- return getDataUrlFromFile(reader.current.result);
53
- }, false);
52
+ isMounted.current = true; // Ustawienie ref na true podczas montowania komponentu
53
+
54
+ reader.current.addEventListener('load', handleFileRead, false);
54
55
  return function () {
55
- return reader.current.removeEventListener('load', function () {
56
- return getDataUrlFromFile(reader.current.result);
57
- });
56
+ isMounted.current = false; // Ustawienie ref na false podczas odmontowywania komponentu
57
+
58
+ reader.current.removeEventListener('load', handleFileRead);
58
59
  };
59
60
  }, []);
60
61
  React.useEffect(function () {
@@ -64,12 +65,20 @@ var useFilePicker = function useFilePicker(_ref) {
64
65
  initialErrors && setErrors(initialErrors);
65
66
  }, [initialErrors]);
66
67
  React.useEffect(function () {
67
- fileAsDataUrl && (onChange === null || onChange === void 0 ? void 0 : onChange({
68
- fileList: fileList,
69
- fileAsDataUrl: fileAsDataUrl
70
- }));
68
+ if (fileAsDataUrl && isMounted.current) {
69
+ onChange === null || onChange === void 0 || onChange({
70
+ fileList: fileList,
71
+ fileAsDataUrl: fileAsDataUrl
72
+ });
73
+ }
71
74
  }, [fileAsDataUrl]);
72
75
 
76
+ var handleFileRead = function handleFileRead() {
77
+ if (isMounted.current) {
78
+ setFileAsDataUrl(reader.current.result);
79
+ }
80
+ };
81
+
73
82
  var onDropFile = function onDropFile(event) {
74
83
  setErrors([]);
75
84
  event.stopPropagation();
@@ -116,22 +125,20 @@ var useFilePicker = function useFilePicker(_ref) {
116
125
  });
117
126
  var isValid = validateFileExtension(allowedExtensions, files[0].type);
118
127
  if (isValid) onChange === null || onChange === void 0 || onChange({
119
- fileList: files
128
+ fileList: files,
129
+ fileAsDataUrl: reader.current.result
120
130
  });
121
131
  } else {
122
132
  setFile(undefined);
123
133
  onChange === null || onChange === void 0 || onChange({
124
- fileList: files
134
+ fileList: files,
135
+ fileAsDataUrl: null
125
136
  });
126
137
  }
127
138
 
128
139
  setPreview(true);
129
140
  };
130
141
 
131
- var getDataUrlFromFile = function getDataUrlFromFile(fileReaderResult) {
132
- setFileAsDataUrl(fileReaderResult);
133
- };
134
-
135
142
  var onDragOver = function onDragOver(event) {
136
143
  event.stopPropagation();
137
144
  event.preventDefault();
@@ -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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -42,6 +42,13 @@ var ImagePicker = /*#__PURE__*/React.memo(function (_ref) {
42
42
  t = _useTranslation2[0];
43
43
 
44
44
  var inputRef = /*#__PURE__*/React.createRef();
45
+ var isMounted = React.useRef(true);
46
+ React.useEffect(function () {
47
+ isMounted.current = true;
48
+ return function () {
49
+ isMounted.current = false;
50
+ };
51
+ }, []);
45
52
 
46
53
  var handleOnChange = function handleOnChange(ev) {
47
54
  var _ev$fileList;
@@ -82,10 +89,14 @@ var ImagePicker = /*#__PURE__*/React.memo(function (_ref) {
82
89
  var imagePickerClassName = classnames__default['default'](main_module['default'][css_classes['default'].imagePicker], className && className);
83
90
  var imagePickerWrapperClassName = classnames__default['default'](main_module['default'][css_classes['default'].imagePickerWrapper], file && main_module['default'][css_classes['default'].imagePickerWrapperHasFile], _rollupPluginBabelHelpers.defineProperty({}, main_module['default'][css_classes['default'].imagePickerWrapperError], errors.length));
84
91
  React.useEffect(function () {
85
- onImageSizeUpdated === null || onImageSizeUpdated === void 0 || onImageSizeUpdated(imageSize);
92
+ if (isMounted.current) {
93
+ onImageSizeUpdated === null || onImageSizeUpdated === void 0 || onImageSizeUpdated(imageSize);
94
+ }
86
95
  }, [imageSize]);
87
96
  React.useEffect(function () {
88
- initialFile && setImageSizeBasedOnUrl(initialFile === null || initialFile === void 0 ? void 0 : initialFile.fileUrl);
97
+ if (initialFile) {
98
+ setImageSizeBasedOnUrl(initialFile === null || initialFile === void 0 ? void 0 : initialFile.fileUrl);
99
+ }
89
100
  }, [initialFile]);
90
101
  React.useEffect(function () {
91
102
  if (!editedImageResult) return;
@@ -100,11 +111,14 @@ var ImagePicker = /*#__PURE__*/React.memo(function (_ref) {
100
111
  };
101
112
 
102
113
  var setImageSizeBasedOnUrl = function setImageSizeBasedOnUrl(fileUrl) {
114
+ console.log('fileUrl', fileUrl);
103
115
  createImageFromUrl(fileUrl).then(function (image) {
104
- setImageSize({
105
- width: image.naturalWidth,
106
- height: image.naturalHeight
107
- });
116
+ if (isMounted.current) {
117
+ setImageSize({
118
+ width: image.naturalWidth,
119
+ height: image.naturalHeight
120
+ });
121
+ }
108
122
  });
109
123
  };
110
124
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA,6BAA6B,iEAAqE;AAClG;AACA;AACA;AACA,2BAA2B,yDAA6D;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,6BAA6B,iEAAqE;AAClG;AACA;AACA;AACA,2BAA2B,yDAA6D;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -4,9 +4,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
6
  var classnames = require('classnames');
7
+ var main_module = require('../../css/loader/main.module.less.js');
7
8
  var css_classes = require('./css_classes.js');
8
9
  var constants = require('./constants.js');
9
- var main_module = require('../../css/loader/main.module.less.js');
10
10
 
11
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
12
 
@@ -3,6 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var cssWithLoader = 'with-loader';
6
+ var cssWithLoaderWrapper = 'with-loader-wrapper';
6
7
 
7
8
  exports.cssWithLoader = cssWithLoader;
9
+ exports.cssWithLoaderWrapper = cssWithLoaderWrapper;
8
10
  //# sourceMappingURL=css_classes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;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;"}
@@ -4,8 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
6
  var classnames = require('classnames');
7
- var index = require('../loader/index.js');
8
7
  var main_module = require('../../css/with-loader/main.module.less.js');
8
+ var index = require('../loader/index.js');
9
9
  var css_classes = require('./css_classes.js');
10
10
 
11
11
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -15,14 +15,20 @@ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
15
15
 
16
16
  var WithLoader = function WithLoader(_ref) {
17
17
  var isLoading = _ref.isLoading,
18
+ textOnLoading = _ref.textOnLoading,
18
19
  children = _ref.children,
19
- size = _ref.size;
20
+ size = _ref.size,
21
+ customStyle = _ref.customStyle;
20
22
  return isLoading ? /*#__PURE__*/React__default['default'].createElement("div", {
23
+ className: customStyle || ''
24
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
25
+ className: classnames__default['default'](main_module['default'][css_classes.cssWithLoaderWrapper])
26
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
21
27
  className: classnames__default['default'](main_module['default'][css_classes.cssWithLoader]),
22
28
  "data-test-id": "loader"
23
29
  }, /*#__PURE__*/React__default['default'].createElement(index['default'], {
24
30
  size: size
25
- })) : /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, children);
31
+ }), textOnLoading && /*#__PURE__*/React__default['default'].createElement("span", null, textOnLoading)))) : /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, children);
26
32
  };
27
33
 
28
34
  exports.default = WithLoader;
@@ -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;"}
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;"}
@@ -6,6 +6,7 @@ var React = require('react');
6
6
  var useTranslation = require('../../../../../external/react-i18next/dist/es/useTranslation.js');
7
7
  var _rollupPluginBabelHelpers = require('../../../../../_virtual/_rollupPluginBabelHelpers.js');
8
8
  var constants = require('../file_picker/constants.js');
9
+ require('classnames');
9
10
  var css_classes = require('../image_picker/css_classes.js');
10
11
  var icon_image = require('../../assets/icon_image.js');
11
12
  var main_module = require('../../css/image_picker/main.module.less.js');
@@ -67,6 +68,11 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
67
68
  imageEditorResult = _useState8[0],
68
69
  setImageEditorResult = _useState8[1];
69
70
 
71
+ var _useState9 = React.useState(false),
72
+ _useState10 = _rollupPluginBabelHelpers.slicedToArray(_useState9, 2),
73
+ isLoading = _useState10[0],
74
+ setIsLoading = _useState10[1];
75
+
70
76
  var handleControlChange = /*#__PURE__*/function () {
71
77
  var _ref2 = _rollupPluginBabelHelpers.asyncToGenerator( /*#__PURE__*/_rollupPluginBabelHelpers.regeneratorRuntime().mark(function _callee(file) {
72
78
  var fileList, fileAsDataUrl, _httpApi$fetch, response, cancelRequest, responseObject;
@@ -75,20 +81,26 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
75
81
  while (1) switch (_context.prev = _context.next) {
76
82
  case 0:
77
83
  fileList = file.fileList, fileAsDataUrl = file.fileAsDataUrl;
84
+ console.log('handleControlChange - file:', file);
85
+ console.log('handleControlChange - fileList:', fileList);
86
+ console.log('handleControlChange - fileAsDataUrl:', fileAsDataUrl);
78
87
  fileList && setImage(fileList[0]);
79
88
  onChange === null || onChange === void 0 || onChange({
80
89
  fileList: fileList,
81
90
  fileAsDataUrl: fileAsDataUrl
82
91
  });
92
+ console.log('handleControlChange - fileAsDataUrl:', fileAsDataUrl);
83
93
 
84
94
  if (!(!fileList || !fileList.length)) {
85
- _context.next = 5;
95
+ _context.next = 9;
86
96
  break;
87
97
  }
88
98
 
89
99
  return _context.abrupt("return");
90
100
 
91
- case 5:
101
+ case 9:
102
+ setIsLoading(true);
103
+
92
104
  if (pendingRequestRef.current) {
93
105
  pendingRequestRef.current();
94
106
  pendingRequestRef.current = undefined;
@@ -100,18 +112,20 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
100
112
  data: fileList[0]
101
113
  }), response = _httpApi$fetch.response, cancelRequest = _httpApi$fetch.cancelRequest;
102
114
  pendingRequestRef.current = cancelRequest;
103
- _context.next = 10;
115
+ _context.next = 15;
104
116
  return response;
105
117
 
106
- case 10:
118
+ case 15:
107
119
  responseObject = _context.sent;
120
+ console.log('handleControlChange - responseObject:', responseObject);
108
121
  onUploaded === null || onUploaded === void 0 || onUploaded({
109
122
  fileList: fileList,
110
123
  dataUrl: fileAsDataUrl,
111
124
  imageId: responseObject.data.imageId
112
125
  });
126
+ setIsLoading(false);
113
127
 
114
- case 12:
128
+ case 19:
115
129
  case "end":
116
130
  return _context.stop();
117
131
  }
@@ -125,6 +139,7 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
125
139
 
126
140
  React.useEffect(function () {
127
141
  initialImageFile.current = initialFile;
142
+ console.log('useEffect - initialFile:', initialFile);
128
143
 
129
144
  var setFileFromUrl = /*#__PURE__*/function () {
130
145
  var _ref3 = _rollupPluginBabelHelpers.asyncToGenerator( /*#__PURE__*/_rollupPluginBabelHelpers.regeneratorRuntime().mark(function _callee2(fileData) {
@@ -132,20 +147,22 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
132
147
  return _rollupPluginBabelHelpers.regeneratorRuntime().wrap(function _callee2$(_context2) {
133
148
  while (1) switch (_context2.prev = _context2.next) {
134
149
  case 0:
135
- _context2.next = 2;
150
+ console.log('setFileFromUrl - fileData:', fileData);
151
+ _context2.next = 3;
136
152
  return fetch(fileData.fileUrl);
137
153
 
138
- case 2:
154
+ case 3:
139
155
  response = _context2.sent;
140
- _context2.next = 5;
156
+ _context2.next = 6;
141
157
  return response.blob();
142
158
 
143
- case 5:
159
+ case 6:
144
160
  data = _context2.sent;
145
161
  file = new File([data], fileData.fileName);
146
162
  setInitialImage(file);
163
+ console.log('setFileFromUrl - file:', file);
147
164
 
148
- case 8:
165
+ case 10:
149
166
  case "end":
150
167
  return _context2.stop();
151
168
  }
@@ -164,17 +181,21 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
164
181
 
165
182
  return (_pendingRequestRef$cu = pendingRequestRef.current) === null || _pendingRequestRef$cu === void 0 ? void 0 : _pendingRequestRef$cu.call(pendingRequestRef);
166
183
  };
167
- }, []);
184
+ }, [image, initialFile]);
168
185
  React.useEffect(function () {
169
186
  var src = image !== null && image !== void 0 ? image : initialImage;
187
+ console.log('useEffect - image:', image);
188
+ console.log('useEffect - initialImage:', initialImage);
189
+ console.log('useEffect - src:', src !== null && src !== void 0 ? src : '');
170
190
  setImageEditorSrc(src !== null && src !== void 0 ? src : '');
171
191
  }, [image, initialImage]);
172
192
 
173
193
  var renderImageEditor = function renderImageEditor(defaultProps) {
194
+ console.log('renderImageEditor - defaultProps:', defaultProps);
174
195
  return ImageEditor ? /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(ImageEditor, _rollupPluginBabelHelpers.objectSpread2({}, defaultProps))) : null;
175
196
  };
176
197
 
177
- return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(index['default'], {
198
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, isLoading ? /*#__PURE__*/React__default['default'].createElement("div", null, t('File transfer...')) : /*#__PURE__*/React__default['default'].createElement(index['default'], {
178
199
  id: id,
179
200
  name: name,
180
201
  onChange: handleControlChange,
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA,6BAA6B,iEAAqE;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,6BAA6B,iEAAqE;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -4,9 +4,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var styleInject_es = require('../../../../../external/style-inject/dist/style-inject.es.js');
6
6
 
7
- var css_248z = ".main-module_with-loader__X2lLa {\n text-align: center;\n}\n";
7
+ var css_248z = "/* font colors */\n/* actions */\n/* background */\n/* errors */\n/* borders */\n/* grid */\n/* scrollBar */\n/* sizes */\n/** WithLoader Variables */\n.main-module_with-loader__X2lLa {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n.main-module_with-loader__X2lLa :nth-child(2) {\n margin-top: 0.5rem;\n color: #5c657e;\n}\n.main-module_with-loader-wrapper__B1nI2 {\n padding: 2rem 0;\n}\n.main-module_with-loader-bordered__1pf_Y {\n border: 1px dashed #abb4cd;\n border-radius: 2px;\n}\n";
8
8
  var cssClasses = {
9
- "with-loader": "main-module_with-loader__X2lLa"
9
+ "with-loader": "main-module_with-loader__X2lLa",
10
+ "with-loader-wrapper": "main-module_with-loader-wrapper__B1nI2",
11
+ "with-loader-bordered": "main-module_with-loader-bordered__1pf_Y"
10
12
  };
11
13
  styleInject_es['default'](css_248z);
12
14
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,6BAA6B,8DAAkE;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA,6BAA6B,8DAAkE;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -44,6 +44,8 @@ var index$g = require('./components/controls/hoc/control_textarea/index.js');
44
44
  var index$F = require('./components/image_picker/index.js');
45
45
  var use_modals_context = require('./components/modal_new/hooks/use_modals_context.js');
46
46
  var modal = require('./components/modal_new/components/modal/modal.js');
47
+ var index$L = require('./components/loader/index.js');
48
+ var index$M = require('./components/with_loader/index.js');
47
49
  var index$P = require('./components/xhr_image_picker/index.js');
48
50
  var index$p = require('./components/controls/hoc/control_xhr_image_picker/index.js');
49
51
  var index$z = require('./components/table/index.js');
@@ -63,7 +65,6 @@ var icon_mobile = require('./assets/icon_mobile.js');
63
65
  var icon_tablet = require('./assets/icon_tablet.js');
64
66
  var icon_warning = require('./assets/icon_warning.js');
65
67
  var index$N = require('./components/link/index.js');
66
- var index$L = require('./components/loader/index.js');
67
68
  var index$s = require('./components/modal/index.js');
68
69
  var modal_context = require('./components/modal/context/modal_context.js');
69
70
  var modal_provider = require('./components/modal/hoc/modal_provider.js');
@@ -92,7 +93,6 @@ var index$2 = require('./components/tooltip/index.js');
92
93
  var index$Q = require('./components/tree/index.js');
93
94
  var tree_node = require('./components/tree/components/tree_node.js');
94
95
  var values_syncer = require('./components/controls/components/values_syncer.js');
95
- var index$M = require('./components/with_loader/index.js');
96
96
 
97
97
 
98
98
 
@@ -139,6 +139,8 @@ exports.ControlTextarea = index$g['default'];
139
139
  exports.ImagePicker = index$F['default'];
140
140
  exports.useModalsContext = use_modals_context.useModalsContext;
141
141
  exports.ModalNew = modal.ModalNew;
142
+ exports.Loader = index$L['default'];
143
+ exports.WithLoader = index$M['default'];
142
144
  exports.XhrImagePicker = index$P['default'];
143
145
  exports.ControlXhrImagePicker = index$p['default'];
144
146
  exports.Table = index$z['default'];
@@ -159,7 +161,6 @@ exports.IconMobile = icon_mobile['default'];
159
161
  exports.IconTablet = icon_tablet['default'];
160
162
  exports.IconWarning = icon_warning['default'];
161
163
  exports.Link = index$N['default'];
162
- exports.Loader = index$L['default'];
163
164
  exports.Modal = index$s['default'];
164
165
  exports.ModalContext = modal_context.ModalContext;
165
166
  exports.ModalProvider = modal_provider['default'];
@@ -188,5 +189,4 @@ exports.Tooltip = index$2['default'];
188
189
  exports.Tree = index$Q.Tree;
189
190
  exports.TreeNode = tree_node.TreeNode;
190
191
  exports.ValuesSyncer = values_syncer['default'];
191
- exports.WithLoader = index$M['default'];
192
192
  //# sourceMappingURL=index.js.map
@@ -42,15 +42,16 @@ var useFilePicker = function useFilePicker(_ref) {
42
42
  setPreview = _useState12[1];
43
43
 
44
44
  var reader = useRef(new FileReader());
45
+ var isMounted = useRef(true); // Nowy ref do śledzenia czy komponent jest zamontowany
46
+
45
47
  useEffect(function () {
46
- reader.current && getDataUrlFromFile(reader.current.result);
47
- reader.current.addEventListener('load', function () {
48
- return getDataUrlFromFile(reader.current.result);
49
- }, false);
48
+ isMounted.current = true; // Ustawienie ref na true podczas montowania komponentu
49
+
50
+ reader.current.addEventListener('load', handleFileRead, false);
50
51
  return function () {
51
- return reader.current.removeEventListener('load', function () {
52
- return getDataUrlFromFile(reader.current.result);
53
- });
52
+ isMounted.current = false; // Ustawienie ref na false podczas odmontowywania komponentu
53
+
54
+ reader.current.removeEventListener('load', handleFileRead);
54
55
  };
55
56
  }, []);
56
57
  useEffect(function () {
@@ -60,12 +61,20 @@ var useFilePicker = function useFilePicker(_ref) {
60
61
  initialErrors && setErrors(initialErrors);
61
62
  }, [initialErrors]);
62
63
  useEffect(function () {
63
- fileAsDataUrl && (onChange === null || onChange === void 0 ? void 0 : onChange({
64
- fileList: fileList,
65
- fileAsDataUrl: fileAsDataUrl
66
- }));
64
+ if (fileAsDataUrl && isMounted.current) {
65
+ onChange === null || onChange === void 0 || onChange({
66
+ fileList: fileList,
67
+ fileAsDataUrl: fileAsDataUrl
68
+ });
69
+ }
67
70
  }, [fileAsDataUrl]);
68
71
 
72
+ var handleFileRead = function handleFileRead() {
73
+ if (isMounted.current) {
74
+ setFileAsDataUrl(reader.current.result);
75
+ }
76
+ };
77
+
69
78
  var onDropFile = function onDropFile(event) {
70
79
  setErrors([]);
71
80
  event.stopPropagation();
@@ -112,22 +121,20 @@ var useFilePicker = function useFilePicker(_ref) {
112
121
  });
113
122
  var isValid = validateFileExtension(allowedExtensions, files[0].type);
114
123
  if (isValid) onChange === null || onChange === void 0 || onChange({
115
- fileList: files
124
+ fileList: files,
125
+ fileAsDataUrl: reader.current.result
116
126
  });
117
127
  } else {
118
128
  setFile(undefined);
119
129
  onChange === null || onChange === void 0 || onChange({
120
- fileList: files
130
+ fileList: files,
131
+ fileAsDataUrl: null
121
132
  });
122
133
  }
123
134
 
124
135
  setPreview(true);
125
136
  };
126
137
 
127
- var getDataUrlFromFile = function getDataUrlFromFile(fileReaderResult) {
128
- setFileAsDataUrl(fileReaderResult);
129
- };
130
-
131
138
  var onDragOver = function onDragOver(event) {
132
139
  event.stopPropagation();
133
140
  event.preventDefault();
@@ -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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,4 +1,4 @@
1
- import React, { memo, useState, useEffect, createRef } from 'react';
1
+ import React, { memo, useRef, useEffect, useState, createRef } from 'react';
2
2
  import { useTranslation } from '../../../../../external/react-i18next/dist/es/useTranslation.js';
3
3
  import { slicedToArray as _slicedToArray, defineProperty as _defineProperty, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
4
4
  import { FILES_EXTENSIONS } from '../file_picker/constants.js';
@@ -33,6 +33,13 @@ var ImagePicker = /*#__PURE__*/memo(function (_ref) {
33
33
  t = _useTranslation2[0];
34
34
 
35
35
  var inputRef = /*#__PURE__*/createRef();
36
+ var isMounted = useRef(true);
37
+ useEffect(function () {
38
+ isMounted.current = true;
39
+ return function () {
40
+ isMounted.current = false;
41
+ };
42
+ }, []);
36
43
 
37
44
  var handleOnChange = function handleOnChange(ev) {
38
45
  var _ev$fileList;
@@ -73,10 +80,14 @@ var ImagePicker = /*#__PURE__*/memo(function (_ref) {
73
80
  var imagePickerClassName = classnames(styles[CSS_CLASSES.imagePicker], className && className);
74
81
  var imagePickerWrapperClassName = classnames(styles[CSS_CLASSES.imagePickerWrapper], file && styles[CSS_CLASSES.imagePickerWrapperHasFile], _defineProperty({}, styles[CSS_CLASSES.imagePickerWrapperError], errors.length));
75
82
  useEffect(function () {
76
- onImageSizeUpdated === null || onImageSizeUpdated === void 0 || onImageSizeUpdated(imageSize);
83
+ if (isMounted.current) {
84
+ onImageSizeUpdated === null || onImageSizeUpdated === void 0 || onImageSizeUpdated(imageSize);
85
+ }
77
86
  }, [imageSize]);
78
87
  useEffect(function () {
79
- initialFile && setImageSizeBasedOnUrl(initialFile === null || initialFile === void 0 ? void 0 : initialFile.fileUrl);
88
+ if (initialFile) {
89
+ setImageSizeBasedOnUrl(initialFile === null || initialFile === void 0 ? void 0 : initialFile.fileUrl);
90
+ }
80
91
  }, [initialFile]);
81
92
  useEffect(function () {
82
93
  if (!editedImageResult) return;
@@ -91,11 +102,14 @@ var ImagePicker = /*#__PURE__*/memo(function (_ref) {
91
102
  };
92
103
 
93
104
  var setImageSizeBasedOnUrl = function setImageSizeBasedOnUrl(fileUrl) {
105
+ console.log('fileUrl', fileUrl);
94
106
  createImageFromUrl(fileUrl).then(function (image) {
95
- setImageSize({
96
- width: image.naturalWidth,
97
- height: image.naturalHeight
98
- });
107
+ if (isMounted.current) {
108
+ setImageSize({
109
+ width: image.naturalWidth,
110
+ height: image.naturalHeight
111
+ });
112
+ }
99
113
  });
100
114
  };
101
115
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA,+BAA+B,iEAAqE;AACpG;AACA;AACA;AACA,gCAAgC,yDAA6D;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,gCAAgC,yDAA6D;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -16,6 +16,7 @@ export interface IImagePickerInput {
16
16
  onDragLeave: (event: React.DragEvent<HTMLLabelElement>) => void;
17
17
  allowedExtensions: TFilesExtension[];
18
18
  isDragOver: boolean;
19
+ isLoaderVisible?: boolean;
19
20
  }
20
21
  export declare type TImageSize = {
21
22
  width: number;
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
2
  import classnames from 'classnames';
3
+ import cssClasses from '../../css/loader/main.module.less.js';
3
4
  import { cssLoader } from './css_classes.js';
4
5
  import { LOADER_SIZE_CSS_CLASS_MAP, LOADER_SIZE } from './constants.js';
5
- import cssClasses from '../../css/loader/main.module.less.js';
6
6
 
7
7
  var Loader = function Loader(_ref) {
8
8
  var size = _ref.size,
@@ -1 +1,3 @@
1
1
  export declare const cssWithLoader = "with-loader";
2
+ export declare const cssWithLoaderWrapper = "with-loader-wrapper";
3
+ export declare const cssWithLoaderBordered = "with-loader-bordered";
@@ -1,4 +1,5 @@
1
1
  var cssWithLoader = 'with-loader';
2
+ var cssWithLoaderWrapper = 'with-loader-wrapper';
2
3
 
3
- export { cssWithLoader };
4
+ export { cssWithLoader, cssWithLoaderWrapper };
4
5
  //# sourceMappingURL=css_classes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;"}
@@ -1,19 +1,25 @@
1
1
  import React from 'react';
2
2
  import classnames from 'classnames';
3
- import Loader from '../loader/index.js';
4
3
  import cssClasses from '../../css/with-loader/main.module.less.js';
5
- import { cssWithLoader } from './css_classes.js';
4
+ import Loader from '../loader/index.js';
5
+ import { cssWithLoaderWrapper, cssWithLoader } from './css_classes.js';
6
6
 
7
7
  var WithLoader = function WithLoader(_ref) {
8
8
  var isLoading = _ref.isLoading,
9
+ textOnLoading = _ref.textOnLoading,
9
10
  children = _ref.children,
10
- size = _ref.size;
11
+ size = _ref.size,
12
+ customStyle = _ref.customStyle;
11
13
  return isLoading ? /*#__PURE__*/React.createElement("div", {
14
+ className: customStyle || ''
15
+ }, /*#__PURE__*/React.createElement("div", {
16
+ className: classnames(cssClasses[cssWithLoaderWrapper])
17
+ }, /*#__PURE__*/React.createElement("div", {
12
18
  className: classnames(cssClasses[cssWithLoader]),
13
19
  "data-test-id": "loader"
14
20
  }, /*#__PURE__*/React.createElement(Loader, {
15
21
  size: size
16
- })) : /*#__PURE__*/React.createElement(React.Fragment, null, children);
22
+ }), textOnLoading && /*#__PURE__*/React.createElement("span", null, textOnLoading)))) : /*#__PURE__*/React.createElement(React.Fragment, null, children);
17
23
  };
18
24
 
19
25
  export default WithLoader;
@@ -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;"}
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;"}
@@ -1,8 +1,10 @@
1
- /// <reference types="react" />
2
1
  import { ILoaderProps } from "../loader/types";
3
2
  import { TLoaderSize } from "../loader/types";
3
+ import { ReactNode } from 'react';
4
4
  export interface IWithLoader extends ILoaderProps {
5
5
  size?: TLoaderSize;
6
6
  children?: React.ReactNode;
7
- isLoading: boolean;
7
+ isLoading?: boolean;
8
+ textOnLoading?: ReactNode | string;
9
+ customStyle?: string;
8
10
  }
@@ -1,3 +1,4 @@
1
1
  import '@auroraComponents/loader/types';
2
2
  import '@auroraComponents/loader/types';
3
+ import 'react';
3
4
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../src/components/with_loader/types.ts"],"names":[],"mappings":"AAAA,OAA6B,gCAAgC,CAAC;AAC9D,OAA4B,gCAAgC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../src/components/with_loader/types.ts"],"names":[],"mappings":"AAAA,OAA6B,gCAAgC,CAAC;AAC9D,OAA4B,gCAAgC,CAAC;AAC7D,OAA0B,OAAO,CAAC"}
@@ -2,6 +2,7 @@ import React, { 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 { FILES_EXTENSIONS } from '../file_picker/constants.js';
5
+ import 'classnames';
5
6
  import CSS_CLASSES from '../image_picker/css_classes.js';
6
7
  import IconImage from '../../assets/icon_image.js';
7
8
  import styles from '../../css/image_picker/main.module.less.js';
@@ -59,6 +60,11 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
59
60
  imageEditorResult = _useState8[0],
60
61
  setImageEditorResult = _useState8[1];
61
62
 
63
+ var _useState9 = useState(false),
64
+ _useState10 = _slicedToArray(_useState9, 2),
65
+ isLoading = _useState10[0],
66
+ setIsLoading = _useState10[1];
67
+
62
68
  var handleControlChange = /*#__PURE__*/function () {
63
69
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(file) {
64
70
  var fileList, fileAsDataUrl, _httpApi$fetch, response, cancelRequest, responseObject;
@@ -67,20 +73,26 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
67
73
  while (1) switch (_context.prev = _context.next) {
68
74
  case 0:
69
75
  fileList = file.fileList, fileAsDataUrl = file.fileAsDataUrl;
76
+ console.log('handleControlChange - file:', file);
77
+ console.log('handleControlChange - fileList:', fileList);
78
+ console.log('handleControlChange - fileAsDataUrl:', fileAsDataUrl);
70
79
  fileList && setImage(fileList[0]);
71
80
  onChange === null || onChange === void 0 || onChange({
72
81
  fileList: fileList,
73
82
  fileAsDataUrl: fileAsDataUrl
74
83
  });
84
+ console.log('handleControlChange - fileAsDataUrl:', fileAsDataUrl);
75
85
 
76
86
  if (!(!fileList || !fileList.length)) {
77
- _context.next = 5;
87
+ _context.next = 9;
78
88
  break;
79
89
  }
80
90
 
81
91
  return _context.abrupt("return");
82
92
 
83
- case 5:
93
+ case 9:
94
+ setIsLoading(true);
95
+
84
96
  if (pendingRequestRef.current) {
85
97
  pendingRequestRef.current();
86
98
  pendingRequestRef.current = undefined;
@@ -92,18 +104,20 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
92
104
  data: fileList[0]
93
105
  }), response = _httpApi$fetch.response, cancelRequest = _httpApi$fetch.cancelRequest;
94
106
  pendingRequestRef.current = cancelRequest;
95
- _context.next = 10;
107
+ _context.next = 15;
96
108
  return response;
97
109
 
98
- case 10:
110
+ case 15:
99
111
  responseObject = _context.sent;
112
+ console.log('handleControlChange - responseObject:', responseObject);
100
113
  onUploaded === null || onUploaded === void 0 || onUploaded({
101
114
  fileList: fileList,
102
115
  dataUrl: fileAsDataUrl,
103
116
  imageId: responseObject.data.imageId
104
117
  });
118
+ setIsLoading(false);
105
119
 
106
- case 12:
120
+ case 19:
107
121
  case "end":
108
122
  return _context.stop();
109
123
  }
@@ -117,6 +131,7 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
117
131
 
118
132
  useEffect(function () {
119
133
  initialImageFile.current = initialFile;
134
+ console.log('useEffect - initialFile:', initialFile);
120
135
 
121
136
  var setFileFromUrl = /*#__PURE__*/function () {
122
137
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(fileData) {
@@ -124,20 +139,22 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
124
139
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
125
140
  while (1) switch (_context2.prev = _context2.next) {
126
141
  case 0:
127
- _context2.next = 2;
142
+ console.log('setFileFromUrl - fileData:', fileData);
143
+ _context2.next = 3;
128
144
  return fetch(fileData.fileUrl);
129
145
 
130
- case 2:
146
+ case 3:
131
147
  response = _context2.sent;
132
- _context2.next = 5;
148
+ _context2.next = 6;
133
149
  return response.blob();
134
150
 
135
- case 5:
151
+ case 6:
136
152
  data = _context2.sent;
137
153
  file = new File([data], fileData.fileName);
138
154
  setInitialImage(file);
155
+ console.log('setFileFromUrl - file:', file);
139
156
 
140
- case 8:
157
+ case 10:
141
158
  case "end":
142
159
  return _context2.stop();
143
160
  }
@@ -156,17 +173,21 @@ var XhrImagePicker = function XhrImagePicker(_ref) {
156
173
 
157
174
  return (_pendingRequestRef$cu = pendingRequestRef.current) === null || _pendingRequestRef$cu === void 0 ? void 0 : _pendingRequestRef$cu.call(pendingRequestRef);
158
175
  };
159
- }, []);
176
+ }, [image, initialFile]);
160
177
  useEffect(function () {
161
178
  var src = image !== null && image !== void 0 ? image : initialImage;
179
+ console.log('useEffect - image:', image);
180
+ console.log('useEffect - initialImage:', initialImage);
181
+ console.log('useEffect - src:', src !== null && src !== void 0 ? src : '');
162
182
  setImageEditorSrc(src !== null && src !== void 0 ? src : '');
163
183
  }, [image, initialImage]);
164
184
 
165
185
  var renderImageEditor = function renderImageEditor(defaultProps) {
186
+ console.log('renderImageEditor - defaultProps:', defaultProps);
166
187
  return ImageEditor ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(ImageEditor, _objectSpread2({}, defaultProps))) : null;
167
188
  };
168
189
 
169
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ImagePicker, {
190
+ return /*#__PURE__*/React.createElement(React.Fragment, null, isLoading ? /*#__PURE__*/React.createElement("div", null, t('File transfer...')) : /*#__PURE__*/React.createElement(ImagePicker, {
170
191
  id: id,
171
192
  name: name,
172
193
  onChange: handleControlChange,
@@ -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;"}
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;"}
@@ -1,8 +1,10 @@
1
1
  import styleInject from '../../../../../external/style-inject/dist/style-inject.es.js';
2
2
 
3
- var css_248z = ".main-module_with-loader__X2lLa {\n text-align: center;\n}\n";
3
+ var css_248z = "/* font colors */\n/* actions */\n/* background */\n/* errors */\n/* borders */\n/* grid */\n/* scrollBar */\n/* sizes */\n/** WithLoader Variables */\n.main-module_with-loader__X2lLa {\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n.main-module_with-loader__X2lLa :nth-child(2) {\n margin-top: 0.5rem;\n color: #5c657e;\n}\n.main-module_with-loader-wrapper__B1nI2 {\n padding: 2rem 0;\n}\n.main-module_with-loader-bordered__1pf_Y {\n border: 1px dashed #abb4cd;\n border-radius: 2px;\n}\n";
4
4
  var cssClasses = {
5
- "with-loader": "main-module_with-loader__X2lLa"
5
+ "with-loader": "main-module_with-loader__X2lLa",
6
+ "with-loader-wrapper": "main-module_with-loader-wrapper__B1nI2",
7
+ "with-loader-bordered": "main-module_with-loader-bordered__1pf_Y"
6
8
  };
7
9
  styleInject(css_248z);
8
10
 
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,wBAAwB,8DAAkE;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA,wBAAwB,8DAAkE;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -40,6 +40,8 @@ export { default as ControlTextarea } from './components/controls/hoc/control_te
40
40
  export { default as ImagePicker } from './components/image_picker/index.js';
41
41
  export { useModalsContext } from './components/modal_new/hooks/use_modals_context.js';
42
42
  export { ModalNew } from './components/modal_new/components/modal/modal.js';
43
+ export { default as Loader } from './components/loader/index.js';
44
+ export { default as WithLoader } from './components/with_loader/index.js';
43
45
  export { default as XhrImagePicker } from './components/xhr_image_picker/index.js';
44
46
  export { default as ControlXhrImagePicker } from './components/controls/hoc/control_xhr_image_picker/index.js';
45
47
  export { default as Table } from './components/table/index.js';
@@ -59,7 +61,6 @@ export { default as IconMobile } from './assets/icon_mobile.js';
59
61
  export { default as IconTablet } from './assets/icon_tablet.js';
60
62
  export { default as IconWarning } from './assets/icon_warning.js';
61
63
  export { default as Link } from './components/link/index.js';
62
- export { default as Loader } from './components/loader/index.js';
63
64
  export { default as Modal } from './components/modal/index.js';
64
65
  export { ModalContext } from './components/modal/context/modal_context.js';
65
66
  export { default as ModalProvider } from './components/modal/hoc/modal_provider.js';
@@ -88,5 +89,4 @@ export { default as Tooltip } from './components/tooltip/index.js';
88
89
  export { Tree } from './components/tree/index.js';
89
90
  export { TreeNode } from './components/tree/components/tree_node.js';
90
91
  export { default as ValuesSyncer } from './components/controls/components/values_syncer.js';
91
- export { default as WithLoader } from './components/with_loader/index.js';
92
92
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@dreamcommerce/aurora",
3
3
  "packageManager": "yarn@3.2.0",
4
4
  "sideEffects": false,
5
- "version": "2.18.0",
5
+ "version": "2.19.0-2",
6
6
  "description": "aurora",
7
7
  "author": "k0ssak",
8
8
  "license": "MIT",