@bigbinary/neeto-image-uploader-frontend 2.3.9 → 2.3.11

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 (61) hide show
  1. package/app/javascript/src/translations/en.json +1 -1
  2. package/dist/AssetLibrary.js +9 -8
  3. package/dist/AssetLibrary.js.map +1 -1
  4. package/dist/BasicImageUploader.js +4 -4
  5. package/dist/ImageUploader.js +7 -6
  6. package/dist/ImageUploader.js.map +1 -1
  7. package/dist/ImageWithFallback-Csv6Oivd.js +51 -0
  8. package/dist/ImageWithFallback-Csv6Oivd.js.map +1 -0
  9. package/dist/ImageWithFallback-DeznMgbx.js +53 -0
  10. package/dist/ImageWithFallback-DeznMgbx.js.map +1 -0
  11. package/dist/cjs/AssetLibrary.js +9 -8
  12. package/dist/cjs/AssetLibrary.js.map +1 -1
  13. package/dist/cjs/BasicImageUploader.js +10 -18
  14. package/dist/cjs/BasicImageUploader.js.map +1 -1
  15. package/dist/cjs/ImageUploader.js +19 -29
  16. package/dist/cjs/ImageUploader.js.map +1 -1
  17. package/dist/cjs/hooks.js +4 -6
  18. package/dist/cjs/hooks.js.map +1 -1
  19. package/dist/cjs/index.js +8 -9
  20. package/dist/cjs/index.js.map +1 -1
  21. package/dist/cjs/utils.js +1 -3
  22. package/dist/cjs/utils.js.map +1 -1
  23. package/dist/hooks.js +4 -4
  24. package/dist/{index-9fdcdfac.js → index-BkKE5xo-.js} +179 -213
  25. package/dist/index-BkKE5xo-.js.map +1 -0
  26. package/dist/{index-cf7e4b89.js → index-BtHfh_eu.js} +2 -3
  27. package/dist/{index-cf7e4b89.js.map → index-BtHfh_eu.js.map} +1 -1
  28. package/dist/{index-8605e11c.js → index-CZjb2iXB.js} +2 -3
  29. package/dist/{index-8605e11c.js.map → index-CZjb2iXB.js.map} +1 -1
  30. package/dist/{index-a3668c72.js → index-FbPHXCzL.js} +107 -118
  31. package/dist/index-FbPHXCzL.js.map +1 -0
  32. package/dist/index.js +8 -7
  33. package/dist/index.js.map +1 -1
  34. package/dist/{query-dcc7b81b.js → query-B0eDmse7.js} +1 -1
  35. package/dist/{query-dcc7b81b.js.map → query-B0eDmse7.js.map} +1 -1
  36. package/dist/{query-3c31bf92.js → query-B7ahlELA.js} +1 -1
  37. package/dist/{query-3c31bf92.js.map → query-B7ahlELA.js.map} +1 -1
  38. package/dist/{useImageUploader-49fd1436.js → useImageUploader-Bm9TukCy.js} +16 -24
  39. package/dist/useImageUploader-Bm9TukCy.js.map +1 -0
  40. package/dist/{useImageUploader-9c1a27d0.js → useImageUploader-RX88_Cp-.js} +4 -4
  41. package/dist/{useImageUploader-9c1a27d0.js.map → useImageUploader-RX88_Cp-.js.map} +1 -1
  42. package/dist/{useProfileImageUpload-faa539d7.js → useProfileImageUpload-KpvcwEqx.js} +3 -3
  43. package/dist/{useProfileImageUpload-faa539d7.js.map → useProfileImageUpload-KpvcwEqx.js.map} +1 -1
  44. package/dist/{useProfileImageUpload-9c1d2b0f.js → useProfileImageUpload-UUrg2Lkw.js} +19 -26
  45. package/dist/useProfileImageUpload-UUrg2Lkw.js.map +1 -0
  46. package/dist/{utils-ede1695e.js → utils-BxC_k1lu.js} +105 -27
  47. package/dist/utils-BxC_k1lu.js.map +1 -0
  48. package/dist/{utils-fa0fa918.js → utils-WEbpTEyB.js} +101 -16
  49. package/dist/utils-WEbpTEyB.js.map +1 -0
  50. package/dist/utils.js +1 -1
  51. package/package.json +21 -20
  52. package/dist/ImageWithFallback-1ddf3f25.js +0 -154
  53. package/dist/ImageWithFallback-1ddf3f25.js.map +0 -1
  54. package/dist/ImageWithFallback-933ea4b1.js +0 -141
  55. package/dist/ImageWithFallback-933ea4b1.js.map +0 -1
  56. package/dist/index-9fdcdfac.js.map +0 -1
  57. package/dist/index-a3668c72.js.map +0 -1
  58. package/dist/useImageUploader-49fd1436.js.map +0 -1
  59. package/dist/useProfileImageUpload-9c1d2b0f.js.map +0 -1
  60. package/dist/utils-ede1695e.js.map +0 -1
  61. package/dist/utils-fa0fa918.js.map +0 -1
@@ -1,20 +1,21 @@
1
1
  'use strict';
2
2
 
3
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
+ var classnames = require('classnames');
5
+ var neetoCist = require('@bigbinary/neeto-cist');
6
+ var Button = require('@bigbinary/neetoui/Button');
7
+ var Typography = require('@bigbinary/neetoui/Typography');
8
+ var ProgressBar = require('@bigbinary/neetoui/ProgressBar');
9
+ var ramda = require('ramda');
10
+ var reactI18next = require('react-i18next');
3
11
  var initializers = require('@bigbinary/neeto-commons-frontend/initializers');
4
12
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
5
13
  var require$$0 = require('react');
6
14
  var reactDropzone = require('react-dropzone');
7
15
  var i18next = require('i18next');
8
16
  var Toastr = require('@bigbinary/neetoui/Toastr');
9
- var neetoCist = require('@bigbinary/neeto-cist');
10
- var index = require('./index-cf7e4b89.js');
11
- var ramda = require('ramda');
12
-
13
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
14
-
15
- var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
16
- var i18next__default = /*#__PURE__*/_interopDefaultLegacy(i18next);
17
- var Toastr__default = /*#__PURE__*/_interopDefaultLegacy(Toastr);
17
+ var jsxRuntime = require('react/jsx-runtime');
18
+ var index = require('./index-BtHfh_eu.js');
18
19
 
19
20
  var DEFAULT_ALLOWED_IMAGE_TYPES = {
20
21
  "image/png": [".png"],
@@ -31,6 +32,12 @@ var OPTION_KEYS = {
31
32
  remove: "remove"
32
33
  };
33
34
 
35
+ var getAllowedTypes = function getAllowedTypes(uploadConfig) {
36
+ return ramda.pipe(ramda.values, ramda.flatten, ramda.map(function (extension) {
37
+ return extension.slice(1);
38
+ }), ramda.map(ramda.toUpper), ramda.join(", "))(uploadConfig.allowedImageTypes);
39
+ };
40
+
34
41
  var DROPZONE_ROOT_DIV_CLASSNAME = "neeto-ui-border-primary-600 hover:neeto-ui-bg-gray-100 neeto-ui-rounded-lg flex h-full w-full flex-col items-center justify-center gap-3 border border-dashed p-4 transition-all duration-300 ease-in-out";
35
42
  var FILE_ERRORS = {
36
43
  "file-invalid-type": i18next.t("neetoImageUploader.imageUpload.fileTypeError"),
@@ -42,7 +49,7 @@ var handleDropRejected = function handleDropRejected(fileRejections) {
42
49
  var errors = _ref.errors;
43
50
  return errors.map(function (_ref2) {
44
51
  var code = _ref2.code;
45
- return Toastr__default["default"].error(FILE_ERRORS[code] || i18next.t("neetoImageUploader.imageUpload.genericError"));
52
+ return Toastr.error(FILE_ERRORS[code] || i18next.t("neetoImageUploader.imageUpload.genericError"));
46
53
  });
47
54
  });
48
55
  };
@@ -55,7 +62,7 @@ var useUploadDropzone = function useUploadDropzone(_ref) {
55
62
  } : _ref$uploadConfig,
56
63
  _onDrop = _ref.onDrop;
57
64
  var _useState = require$$0.useState(0),
58
- _useState2 = _slicedToArray__default["default"](_useState, 2),
65
+ _useState2 = _slicedToArray(_useState, 2),
59
66
  uploadProgress = _useState2[0],
60
67
  setUploadProgress = _useState2[1];
61
68
  var _useDropzone = reactDropzone.useDropzone({
@@ -69,17 +76,92 @@ var useUploadDropzone = function useUploadDropzone(_ref) {
69
76
  }),
70
77
  getRootProps = _useDropzone.getRootProps,
71
78
  getInputProps = _useDropzone.getInputProps,
72
- isDragActive = _useDropzone.isDragActive,
73
- inputRef = _useDropzone.inputRef;
79
+ isDragActive = _useDropzone.isDragActive;
74
80
  return {
75
81
  getRootProps: getRootProps,
76
82
  getInputProps: getInputProps,
77
83
  isDragActive: isDragActive,
78
- uploadProgress: uploadProgress,
79
- inputRef: inputRef
84
+ uploadProgress: uploadProgress
80
85
  };
81
86
  };
82
87
 
88
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
89
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
90
+ var ImageDirectUpload = function ImageDirectUpload(_ref) {
91
+ var _ref$uploadConfig = _ref.uploadConfig,
92
+ uploadConfig = _ref$uploadConfig === void 0 ? DEFAULT_UPLOAD_CONFIG : _ref$uploadConfig,
93
+ _ref$onDrop = _ref.onDrop,
94
+ onDrop = _ref$onDrop === void 0 ? neetoCist.noop : _ref$onDrop,
95
+ _ref$isDisabled = _ref.isDisabled,
96
+ isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
97
+ setIsAssetLibraryOpen = _ref.setIsAssetLibraryOpen;
98
+ var _useUploadDropzone = useUploadDropzone({
99
+ uploadConfig: uploadConfig,
100
+ onDrop: onDrop
101
+ }),
102
+ getRootProps = _useUploadDropzone.getRootProps,
103
+ getInputProps = _useUploadDropzone.getInputProps,
104
+ isDragActive = _useUploadDropzone.isDragActive,
105
+ uploadProgress = _useUploadDropzone.uploadProgress;
106
+ var shouldShowProgress = !!(uploadProgress && !ramda.equals(uploadProgress, 1));
107
+ return /*#__PURE__*/jsxRuntime.jsx("div", _objectSpread(_objectSpread({}, getRootProps()), {}, {
108
+ className: classnames(DROPZONE_ROOT_DIV_CLASSNAME, {
109
+ "neeto-ui-border-gray-300": !isDragActive,
110
+ "neeto-ui-border-gray-700": isDragActive
111
+ }),
112
+ children: shouldShowProgress ? /*#__PURE__*/jsxRuntime.jsx(ProgressBar, {
113
+ progressPercentage: uploadProgress,
114
+ progressValue: "".concat(uploadProgress, "%")
115
+ }) : /*#__PURE__*/jsxRuntime.jsxs("div", {
116
+ className: "flex flex-col space-y-1",
117
+ children: [!isDisabled && /*#__PURE__*/jsxRuntime.jsx(Typography, {
118
+ className: "neeto-ui-text-gray-800 text-center leading-4",
119
+ style: "body2",
120
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
121
+ i18nKey: "neetoImageUploader.imageUpload.dragAndDropOrBrowseFile",
122
+ components: {
123
+ span: /*#__PURE__*/jsxRuntime.jsx(Button, {
124
+ "data-cy": "neeto-image-uploader-browse-text",
125
+ style: "link"
126
+ })
127
+ }
128
+ })
129
+ }), setIsAssetLibraryOpen && /*#__PURE__*/jsxRuntime.jsx(Typography, {
130
+ className: "text-center leading-4",
131
+ style: "body2",
132
+ onClick: function onClick(e) {
133
+ e.stopPropagation();
134
+ setIsAssetLibraryOpen(true);
135
+ },
136
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
137
+ i18nKey: "neetoImageUploader.imageUpload.selectImagefromImageLibrary",
138
+ components: {
139
+ span: /*#__PURE__*/jsxRuntime.jsx(Button, {
140
+ "data-cy": "open-asset-library-button",
141
+ style: "link"
142
+ })
143
+ }
144
+ })
145
+ }), /*#__PURE__*/jsxRuntime.jsx("input", _objectSpread(_objectSpread({}, getInputProps()), {}, {
146
+ "data-cy": "neeto-image-uploader-file-input",
147
+ disabled: isDisabled
148
+ })), /*#__PURE__*/jsxRuntime.jsx(Typography, {
149
+ className: "neeto-ui-text-gray-700 text-center leading-4",
150
+ "data-cy": "neeto-image-uploader-restriction-message",
151
+ lineHeight: "snug",
152
+ style: "nano",
153
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
154
+ i18nKey: "neetoImageUploader.imageUpload.restrictionMessage",
155
+ values: {
156
+ fileTypes: getAllowedTypes(uploadConfig),
157
+ size: uploadConfig === null || uploadConfig === void 0 ? void 0 : uploadConfig.maxImageSize
158
+ }
159
+ })
160
+ })]
161
+ })
162
+ }));
163
+ };
164
+
83
165
  var UNSPLASH_DEFAULT_NAME = "Unsplash-asset";
84
166
  var UNSPLASH_URL = "https://unsplash.com/";
85
167
  var IMAGES_PER_PAGE = 30;
@@ -91,21 +173,18 @@ var UNSPLASH_DEFAULT_REQUEST_CONFIG = {
91
173
  responseType: "blob"
92
174
  };
93
175
  var TABS = [{
94
- label: i18next__default["default"].t("neetoImageUploader.labels.myImages"),
176
+ label: i18next.t("neetoImageUploader.labels.uploadImage"),
177
+ key: "upload",
178
+ dataCy: "neeto-image-uploader-upload-image-tab"
179
+ }, {
180
+ label: i18next.t("neetoImageUploader.labels.myImages"),
95
181
  key: "images",
96
182
  dataCy: "neeto-image-uploader-my-images-tab"
97
183
  }, {
98
- label: i18next__default["default"].t("neetoImageUploader.labels.searchTheWeb"),
184
+ label: i18next.t("neetoImageUploader.labels.searchTheWeb"),
99
185
  key: "unsplash",
100
186
  dataCy: "neeto-image-uploader-unsplash-tab"
101
187
  }];
102
- var OPTIONS = [{
103
- key: "local",
104
- label: i18next__default["default"].t("neetoImageUploader.labels.uploadNewImage"),
105
- "data-cy": "upload-new-asset",
106
- style: "primary",
107
- onClick: neetoCist.noop
108
- }];
109
188
  var DEFAULT_CROP_CONFIG = {
110
189
  unit: "px",
111
190
  height: 0,
@@ -264,12 +343,11 @@ exports.ASSETS_DESTROY_URL = ASSETS_DESTROY_URL;
264
343
  exports.ASSETS_FETCH_URL = ASSETS_FETCH_URL;
265
344
  exports.DEFAULT_CROP_CONFIG = DEFAULT_CROP_CONFIG;
266
345
  exports.DEFAULT_UPLOAD_CONFIG = DEFAULT_UPLOAD_CONFIG;
267
- exports.DROPZONE_ROOT_DIV_CLASSNAME = DROPZONE_ROOT_DIV_CLASSNAME;
268
346
  exports.IMAGES_PER_PAGE = IMAGES_PER_PAGE;
269
347
  exports.IMAGE_WRAPPER_CLASSNAME = IMAGE_WRAPPER_CLASSNAME;
270
348
  exports.INFINITE_SCROLLER_SIZES = INFINITE_SCROLLER_SIZES;
271
349
  exports.INFINITE_SCROLLER_STYLE = INFINITE_SCROLLER_STYLE;
272
- exports.OPTIONS = OPTIONS;
350
+ exports.ImageDirectUpload = ImageDirectUpload;
273
351
  exports.OPTION_KEYS = OPTION_KEYS;
274
352
  exports.TABS = TABS;
275
353
  exports.UNSPLASH_DEFAULT_NAME = UNSPLASH_DEFAULT_NAME;
@@ -283,4 +361,4 @@ exports.isNilOrEmpty = isNilOrEmpty;
283
361
  exports.isNotNilOrEmpty = isNotNilOrEmpty;
284
362
  exports.onImageLoaded = onImageLoaded;
285
363
  exports.useUploadDropzone = useUploadDropzone;
286
- //# sourceMappingURL=utils-ede1695e.js.map
364
+ //# sourceMappingURL=utils-BxC_k1lu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-BxC_k1lu.js","sources":["../app/javascript/src/components/ImageUploader/constants.js","../app/javascript/src/components/ImageUploader/utils.js","../app/javascript/src/components/common/constants.js","../app/javascript/src/components/common/utils.js","../app/javascript/src/hooks/useUploadDropzone.js","../app/javascript/src/components/common/ImageDirectUpload.jsx","../app/javascript/src/components/constants.js","../app/javascript/src/components/ImageEditor/utils.js"],"sourcesContent":["import { globalProps } from \"neetocommons/initializers\";\n\nexport const DEFAULT_ALLOWED_IMAGE_TYPES = {\n \"image/png\": [\".png\"],\n \"image/jpg\": [\".jpg\", \".jpeg\"],\n \"image/gif\": [\".gif\"],\n \"image/svg+xml\": [\".svg\"],\n};\n\nexport const DEFAULT_UPLOAD_CONFIG = {\n maxImageSize: globalProps.endUserUploadedFileSizeLimitInMb,\n allowedImageTypes: DEFAULT_ALLOWED_IMAGE_TYPES,\n};\n\nexport const OPTION_KEYS = { asset: \"asset\", remove: \"remove\" };\n","import { flatten, pipe, join, map, toUpper, values } from \"ramda\";\n\nexport const getAllowedTypes = uploadConfig =>\n pipe(\n values,\n flatten,\n map(extension => extension.slice(1)),\n map(toUpper),\n join(\", \")\n )(uploadConfig.allowedImageTypes);\n","import { t } from \"i18next\";\n\nexport const DROPZONE_ROOT_DIV_CLASSNAME =\n \"neeto-ui-border-primary-600 hover:neeto-ui-bg-gray-100 neeto-ui-rounded-lg flex h-full w-full flex-col items-center justify-center gap-3 border border-dashed p-4 transition-all duration-300 ease-in-out\";\n\nexport const FILE_ERRORS = {\n \"file-invalid-type\": t(\"neetoImageUploader.imageUpload.fileTypeError\"),\n \"file-too-large\": t(\"neetoImageUploader.imageUpload.fileSizeError\"),\n};\n","import { t } from \"i18next\";\nimport { Toastr } from \"neetoui\";\n\nimport { FILE_ERRORS } from \"./constants\";\n\nexport const handleDropRejected = fileRejections => {\n fileRejections.map(({ errors }) =>\n errors.map(({ code }) =>\n Toastr.error(\n FILE_ERRORS[code] || t(\"neetoImageUploader.imageUpload.genericError\")\n )\n )\n );\n};\n","import { useState } from \"react\";\n\nimport { useDropzone } from \"react-dropzone\";\n\nimport { handleDropRejected } from \"components/common/utils\";\n\nconst useUploadDropzone = ({\n uploadConfig = { allowedImageTypes: [], maxImageSize: 0 },\n onDrop,\n}) => {\n const [uploadProgress, setUploadProgress] = useState(0);\n\n const { getRootProps, getInputProps, isDragActive } = useDropzone({\n onDrop: acceptedFiles => onDrop(acceptedFiles[0], setUploadProgress),\n accept: uploadConfig?.allowedImageTypes,\n multiple: false,\n maxSize: uploadConfig.maxImageSize * 1_048_576,\n onDropRejected: handleDropRejected,\n });\n\n return {\n getRootProps,\n getInputProps,\n isDragActive,\n uploadProgress,\n };\n};\n\nexport default useUploadDropzone;\n","import classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { Button, Typography, ProgressBar } from \"neetoui\";\nimport { equals } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport { DEFAULT_UPLOAD_CONFIG } from \"components/ImageUploader/constants\";\nimport { getAllowedTypes } from \"components/ImageUploader/utils\";\nimport useUploadDropzone from \"hooks/useUploadDropzone\";\n\nimport { DROPZONE_ROOT_DIV_CLASSNAME } from \"./constants\";\n\nconst ImageDirectUpload = ({\n uploadConfig = DEFAULT_UPLOAD_CONFIG,\n onDrop = noop,\n isDisabled = false,\n setIsAssetLibraryOpen,\n}) => {\n const { getRootProps, getInputProps, isDragActive, uploadProgress } =\n useUploadDropzone({ uploadConfig, onDrop });\n\n const shouldShowProgress = !!(uploadProgress && !equals(uploadProgress, 1));\n\n return (\n <div\n {...getRootProps()}\n className={classnames(DROPZONE_ROOT_DIV_CLASSNAME, {\n \"neeto-ui-border-gray-300\": !isDragActive,\n \"neeto-ui-border-gray-700\": isDragActive,\n })}\n >\n {shouldShowProgress ? (\n <ProgressBar\n progressPercentage={uploadProgress}\n progressValue={`${uploadProgress}%`}\n />\n ) : (\n <div className=\"flex flex-col space-y-1\">\n {!isDisabled && (\n <Typography\n className=\"neeto-ui-text-gray-800 text-center leading-4\"\n style=\"body2\"\n >\n <Trans\n i18nKey=\"neetoImageUploader.imageUpload.dragAndDropOrBrowseFile\"\n components={{\n span: (\n <Button\n data-cy=\"neeto-image-uploader-browse-text\"\n style=\"link\"\n />\n ),\n }}\n />\n </Typography>\n )}\n {setIsAssetLibraryOpen && (\n <Typography\n className=\"text-center leading-4\"\n style=\"body2\"\n onClick={e => {\n e.stopPropagation();\n setIsAssetLibraryOpen(true);\n }}\n >\n <Trans\n i18nKey=\"neetoImageUploader.imageUpload.selectImagefromImageLibrary\"\n components={{\n span: (\n <Button data-cy=\"open-asset-library-button\" style=\"link\" />\n ),\n }}\n />\n </Typography>\n )}\n <input\n {...getInputProps()}\n data-cy=\"neeto-image-uploader-file-input\"\n disabled={isDisabled}\n />\n <Typography\n className=\"neeto-ui-text-gray-700 text-center leading-4\"\n data-cy=\"neeto-image-uploader-restriction-message\"\n lineHeight=\"snug\"\n style=\"nano\"\n >\n <Trans\n i18nKey=\"neetoImageUploader.imageUpload.restrictionMessage\"\n values={{\n fileTypes: getAllowedTypes(uploadConfig),\n size: uploadConfig?.maxImageSize,\n }}\n />\n </Typography>\n </div>\n )}\n </div>\n );\n};\n\nexport default ImageDirectUpload;\n","import i18next from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\n\nimport { CLOUD_FLARE, IS_DEVELOPMENT_OR_HEROKU_ENV } from \"src/constants\";\n\nexport const UNSPLASH_DEFAULT_NAME = \"Unsplash-asset\";\n\nexport const UNSPLASH_URL = \"https://unsplash.com/\";\n\nexport const IMAGES_PER_PAGE = 30;\n\nexport const UNSPLASH_DEFAULT_REQUEST_CONFIG = {\n headers: {\n \"Access-Control-Allow-Origin\": \"*\",\n \"Access-Control-Allow-Methods\": \"GET\",\n },\n responseType: \"blob\",\n};\n\nexport const TABS = [\n {\n label: i18next.t(\"neetoImageUploader.labels.uploadImage\"),\n key: \"upload\",\n dataCy: \"neeto-image-uploader-upload-image-tab\",\n },\n {\n label: i18next.t(\"neetoImageUploader.labels.myImages\"),\n key: \"images\",\n dataCy: \"neeto-image-uploader-my-images-tab\",\n },\n {\n label: i18next.t(\"neetoImageUploader.labels.searchTheWeb\"),\n key: \"unsplash\",\n dataCy: \"neeto-image-uploader-unsplash-tab\",\n },\n];\n\nexport const DEFAULT_CROP_CONFIG = {\n unit: \"px\",\n height: 0,\n width: 0,\n x: 0,\n y: 0,\n};\n\nexport const URL_REGEXP =\n /[(http(s)?)://(www.)?a-zA-Z0-9@:%._+~#=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%_+.~#?&//=]*)/;\n\nexport const INFINITE_SCROLLER_SIZES = [\n { columns: 2, gutter: 0 },\n { mq: \"768px\", columns: 4, gutter: 0 },\n { mq: \"1024px\", columns: 4, gutter: 0 },\n];\n\nexport const INFINITE_SCROLLER_STYLE = { width: \"100%\" };\n\nexport const ALLOWED_IMAGE_TYPES = {\n \"image/*\": [\".png\", \".jpg\", \".jpeg\", \".svg\", \".gif\"],\n};\n\nexport const IMAGE_UPLOAD_SERVICE_URL =\n globalProps.assetsUploaderService === CLOUD_FLARE\n ? \"neeto_image_uploader_engine/cloudflare_images\"\n : \"neeto_image_uploader_engine/imagekit/fetch\";\n\nexport const ASSETS_FETCH_URL = IS_DEVELOPMENT_OR_HEROKU_ENV\n ? \"neeto_image_uploader_engine/development/fetch\"\n : IMAGE_UPLOAD_SERVICE_URL;\n\nexport const ASSETS_DESTROY_URL = IS_DEVELOPMENT_OR_HEROKU_ENV\n ? \"neeto_image_uploader_engine/development/bulk_destroy\"\n : \"neeto_image_uploader_engine/imagekit/bulk_destroy\";\n\nexport const IMAGE_WRAPPER_CLASSNAME =\n \"neeto-ui-border-gray-300 neeto-ui-bg-gray-100 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-lg relative flex h-full w-full flex-col items-center justify-center gap-5 border border-dashed p-2 transition-all duration-300 ease-in-out\";\n","import ImageKit from \"imagekit-javascript\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { isEmpty, isNil } from \"ramda\";\n\nexport const getCropValues = ({ crop, imageRef }) => ({\n x: imageRef.current.naturalWidth * (crop.x / imageRef.current.width),\n y: imageRef.current.naturalHeight * (crop.y / imageRef.current.height),\n height:\n imageRef.current.naturalHeight * (crop.height / imageRef.current.height),\n width: imageRef.current.naturalWidth * (crop.width / imageRef.current.width),\n});\n\nexport const getImageKitCroppedURL = ({ imageURL, crop, imageRef }) => {\n const imagekit = new ImageKit({\n urlEndpoint: globalProps.imagekit.urlEndpoint,\n });\n const { x, y, height, width } = getCropValues({ crop, imageRef });\n\n const transformation = [{ cropMode: \"extract\", x, y, height, width }];\n\n return imagekit.url({ src: imageURL, transformation });\n};\n\nexport const isNilOrEmpty = value => isNil(value) || isEmpty(value);\nexport const isNotNilOrEmpty = value => !isNilOrEmpty(value);\n\nexport const onImageLoaded = ({ image, setCrop, cropAspectRatio = 16 / 9 }) => {\n const { width, height } = image;\n const imageAspectRatio = width / height;\n const maxCropWidth = 250;\n const maxCropHeight = maxCropWidth / cropAspectRatio;\n\n let cropWidth, cropHeight;\n\n if (imageAspectRatio > cropAspectRatio) {\n cropWidth = Math.min(maxCropWidth, width);\n cropHeight = cropWidth / cropAspectRatio;\n } else if (height < maxCropHeight) {\n cropWidth = width;\n cropHeight = height;\n } else {\n cropHeight = Math.min(maxCropHeight, height);\n cropWidth = cropHeight * cropAspectRatio;\n }\n\n const cropX = (width - cropWidth) / 2;\n const cropY = (height - cropHeight) / 2;\n\n setCrop({\n unit: \"px\",\n width: cropWidth,\n height: cropHeight,\n x: cropX,\n y: cropY,\n });\n};\n\nexport const isItemsCenter = ({ imageRef, wrapperRef }) => {\n const { height: imageHeight, width: imageWidth } = imageRef.current || {};\n const wrapperHeight = (wrapperRef.current || {}).clientHeight;\n\n if (imageHeight < imageWidth && imageHeight < wrapperHeight - 1) {\n // Landscape images smaller than wrapper dimensions\n return true;\n }\n\n if (imageHeight === imageWidth && imageHeight < wrapperHeight - 1) {\n // Square images smaller than wrapper dimensions\n return true;\n }\n\n return imageHeight > imageWidth && imageHeight < wrapperHeight - 1;\n};\n\nexport const calculateCloudFlareImageCroppedValues = ({\n imageRef,\n image,\n crop,\n}) => {\n const scaleX = image.metadata.width / imageRef.current.width;\n const scaleY = image.metadata.height / imageRef.current.height;\n\n const sourceX = scaleX * crop.x;\n const sourceY = scaleY * crop.y;\n const sourceWidth = scaleX * crop.width;\n const sourceHeight = scaleY * crop.height;\n\n const distanceFromRight = Math.abs(\n image.metadata.width - (sourceX + sourceWidth)\n );\n\n const distanceFromBottom = Math.abs(\n image.metadata.height - (sourceY + sourceHeight)\n );\n\n return {\n top: sourceY,\n right: distanceFromRight,\n bottom: distanceFromBottom,\n left: sourceX,\n };\n};\n\nexport const getCloudFlareCroppedURL = ({ imageRef, image, crop }) => {\n const { top, right, bottom, left } = calculateCloudFlareImageCroppedValues({\n imageRef,\n image,\n crop,\n });\n const trimValues = `${top};${right};${bottom};${left}`;\n\n return image.url.replace(\"public\", `trim=${trimValues}`);\n};\n"],"names":["DEFAULT_ALLOWED_IMAGE_TYPES","DEFAULT_UPLOAD_CONFIG","maxImageSize","globalProps","endUserUploadedFileSizeLimitInMb","allowedImageTypes","OPTION_KEYS","asset","remove","getAllowedTypes","uploadConfig","pipe","values","flatten","map","extension","slice","toUpper","join","DROPZONE_ROOT_DIV_CLASSNAME","FILE_ERRORS","t","handleDropRejected","fileRejections","_ref","errors","_ref2","code","Toastr","error","useUploadDropzone","_ref$uploadConfig","onDrop","_useState","useState","_useState2","_slicedToArray","uploadProgress","setUploadProgress","_useDropzone","useDropzone","acceptedFiles","accept","multiple","maxSize","onDropRejected","getRootProps","getInputProps","isDragActive","ImageDirectUpload","_ref$onDrop","noop","_ref$isDisabled","isDisabled","setIsAssetLibraryOpen","_useUploadDropzone","shouldShowProgress","equals","_jsx","_objectSpread","className","classnames","children","ProgressBar","progressPercentage","progressValue","concat","_jsxs","Typography","style","Trans","i18nKey","components","span","Button","onClick","e","stopPropagation","disabled","lineHeight","fileTypes","size","UNSPLASH_DEFAULT_NAME","UNSPLASH_URL","IMAGES_PER_PAGE","UNSPLASH_DEFAULT_REQUEST_CONFIG","headers","responseType","TABS","label","i18next","key","dataCy","DEFAULT_CROP_CONFIG","unit","height","width","x","y","INFINITE_SCROLLER_SIZES","columns","gutter","mq","INFINITE_SCROLLER_STYLE","IMAGE_UPLOAD_SERVICE_URL","assetsUploaderService","CLOUD_FLARE","ASSETS_FETCH_URL","IS_DEVELOPMENT_OR_HEROKU_ENV","ASSETS_DESTROY_URL","IMAGE_WRAPPER_CLASSNAME","getCropValues","crop","imageRef","current","naturalWidth","naturalHeight","getImageKitCroppedURL","imageURL","imagekit","ImageKit","urlEndpoint","_getCropValues","transformation","cropMode","url","src","isNilOrEmpty","value","isNil","isEmpty","isNotNilOrEmpty","onImageLoaded","_ref3","image","setCrop","_ref3$cropAspectRatio","cropAspectRatio","imageAspectRatio","maxCropWidth","maxCropHeight","cropWidth","cropHeight","Math","min","cropX","cropY","isItemsCenter","_ref4","wrapperRef","_ref5","imageHeight","imageWidth","wrapperHeight","clientHeight","calculateCloudFlareImageCroppedValues","_ref6","scaleX","metadata","scaleY","sourceX","sourceY","sourceWidth","sourceHeight","distanceFromRight","abs","distanceFromBottom","top","right","bottom","left","getCloudFlareCroppedURL","_ref7","_calculateCloudFlareI","trimValues","replace"],"mappings":"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"}
@@ -1,12 +1,19 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import classnames from 'classnames';
3
+ import { noop } from '@bigbinary/neeto-cist';
4
+ import Button from '@bigbinary/neetoui/Button';
5
+ import Typography from '@bigbinary/neetoui/Typography';
6
+ import ProgressBar from '@bigbinary/neetoui/ProgressBar';
7
+ import { pipe, values, flatten, map, toUpper, join, equals, isNil, isEmpty } from 'ramda';
8
+ import { Trans } from 'react-i18next';
1
9
  import { globalProps } from '@bigbinary/neeto-commons-frontend/initializers';
2
10
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
11
  import { useState } from 'react';
4
12
  import { useDropzone } from 'react-dropzone';
5
13
  import i18next, { t } from 'i18next';
6
14
  import Toastr from '@bigbinary/neetoui/Toastr';
7
- import { noop } from '@bigbinary/neeto-cist';
8
- import { C as CLOUD_FLARE, I as IS_DEVELOPMENT_OR_HEROKU_ENV, a as ImageKit } from './index-8605e11c.js';
9
- import { isNil, isEmpty } from 'ramda';
15
+ import { jsx, jsxs } from 'react/jsx-runtime';
16
+ import { C as CLOUD_FLARE, I as IS_DEVELOPMENT_OR_HEROKU_ENV, a as ImageKit } from './index-CZjb2iXB.js';
10
17
 
11
18
  var DEFAULT_ALLOWED_IMAGE_TYPES = {
12
19
  "image/png": [".png"],
@@ -23,6 +30,12 @@ var OPTION_KEYS = {
23
30
  remove: "remove"
24
31
  };
25
32
 
33
+ var getAllowedTypes = function getAllowedTypes(uploadConfig) {
34
+ return pipe(values, flatten, map(function (extension) {
35
+ return extension.slice(1);
36
+ }), map(toUpper), join(", "))(uploadConfig.allowedImageTypes);
37
+ };
38
+
26
39
  var DROPZONE_ROOT_DIV_CLASSNAME = "neeto-ui-border-primary-600 hover:neeto-ui-bg-gray-100 neeto-ui-rounded-lg flex h-full w-full flex-col items-center justify-center gap-3 border border-dashed p-4 transition-all duration-300 ease-in-out";
27
40
  var FILE_ERRORS = {
28
41
  "file-invalid-type": t("neetoImageUploader.imageUpload.fileTypeError"),
@@ -61,17 +74,92 @@ var useUploadDropzone = function useUploadDropzone(_ref) {
61
74
  }),
62
75
  getRootProps = _useDropzone.getRootProps,
63
76
  getInputProps = _useDropzone.getInputProps,
64
- isDragActive = _useDropzone.isDragActive,
65
- inputRef = _useDropzone.inputRef;
77
+ isDragActive = _useDropzone.isDragActive;
66
78
  return {
67
79
  getRootProps: getRootProps,
68
80
  getInputProps: getInputProps,
69
81
  isDragActive: isDragActive,
70
- uploadProgress: uploadProgress,
71
- inputRef: inputRef
82
+ uploadProgress: uploadProgress
72
83
  };
73
84
  };
74
85
 
86
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
87
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
88
+ var ImageDirectUpload = function ImageDirectUpload(_ref) {
89
+ var _ref$uploadConfig = _ref.uploadConfig,
90
+ uploadConfig = _ref$uploadConfig === void 0 ? DEFAULT_UPLOAD_CONFIG : _ref$uploadConfig,
91
+ _ref$onDrop = _ref.onDrop,
92
+ onDrop = _ref$onDrop === void 0 ? noop : _ref$onDrop,
93
+ _ref$isDisabled = _ref.isDisabled,
94
+ isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
95
+ setIsAssetLibraryOpen = _ref.setIsAssetLibraryOpen;
96
+ var _useUploadDropzone = useUploadDropzone({
97
+ uploadConfig: uploadConfig,
98
+ onDrop: onDrop
99
+ }),
100
+ getRootProps = _useUploadDropzone.getRootProps,
101
+ getInputProps = _useUploadDropzone.getInputProps,
102
+ isDragActive = _useUploadDropzone.isDragActive,
103
+ uploadProgress = _useUploadDropzone.uploadProgress;
104
+ var shouldShowProgress = !!(uploadProgress && !equals(uploadProgress, 1));
105
+ return /*#__PURE__*/jsx("div", _objectSpread(_objectSpread({}, getRootProps()), {}, {
106
+ className: classnames(DROPZONE_ROOT_DIV_CLASSNAME, {
107
+ "neeto-ui-border-gray-300": !isDragActive,
108
+ "neeto-ui-border-gray-700": isDragActive
109
+ }),
110
+ children: shouldShowProgress ? /*#__PURE__*/jsx(ProgressBar, {
111
+ progressPercentage: uploadProgress,
112
+ progressValue: "".concat(uploadProgress, "%")
113
+ }) : /*#__PURE__*/jsxs("div", {
114
+ className: "flex flex-col space-y-1",
115
+ children: [!isDisabled && /*#__PURE__*/jsx(Typography, {
116
+ className: "neeto-ui-text-gray-800 text-center leading-4",
117
+ style: "body2",
118
+ children: /*#__PURE__*/jsx(Trans, {
119
+ i18nKey: "neetoImageUploader.imageUpload.dragAndDropOrBrowseFile",
120
+ components: {
121
+ span: /*#__PURE__*/jsx(Button, {
122
+ "data-cy": "neeto-image-uploader-browse-text",
123
+ style: "link"
124
+ })
125
+ }
126
+ })
127
+ }), setIsAssetLibraryOpen && /*#__PURE__*/jsx(Typography, {
128
+ className: "text-center leading-4",
129
+ style: "body2",
130
+ onClick: function onClick(e) {
131
+ e.stopPropagation();
132
+ setIsAssetLibraryOpen(true);
133
+ },
134
+ children: /*#__PURE__*/jsx(Trans, {
135
+ i18nKey: "neetoImageUploader.imageUpload.selectImagefromImageLibrary",
136
+ components: {
137
+ span: /*#__PURE__*/jsx(Button, {
138
+ "data-cy": "open-asset-library-button",
139
+ style: "link"
140
+ })
141
+ }
142
+ })
143
+ }), /*#__PURE__*/jsx("input", _objectSpread(_objectSpread({}, getInputProps()), {}, {
144
+ "data-cy": "neeto-image-uploader-file-input",
145
+ disabled: isDisabled
146
+ })), /*#__PURE__*/jsx(Typography, {
147
+ className: "neeto-ui-text-gray-700 text-center leading-4",
148
+ "data-cy": "neeto-image-uploader-restriction-message",
149
+ lineHeight: "snug",
150
+ style: "nano",
151
+ children: /*#__PURE__*/jsx(Trans, {
152
+ i18nKey: "neetoImageUploader.imageUpload.restrictionMessage",
153
+ values: {
154
+ fileTypes: getAllowedTypes(uploadConfig),
155
+ size: uploadConfig === null || uploadConfig === void 0 ? void 0 : uploadConfig.maxImageSize
156
+ }
157
+ })
158
+ })]
159
+ })
160
+ }));
161
+ };
162
+
75
163
  var UNSPLASH_DEFAULT_NAME = "Unsplash-asset";
76
164
  var UNSPLASH_URL = "https://unsplash.com/";
77
165
  var IMAGES_PER_PAGE = 30;
@@ -83,6 +171,10 @@ var UNSPLASH_DEFAULT_REQUEST_CONFIG = {
83
171
  responseType: "blob"
84
172
  };
85
173
  var TABS = [{
174
+ label: i18next.t("neetoImageUploader.labels.uploadImage"),
175
+ key: "upload",
176
+ dataCy: "neeto-image-uploader-upload-image-tab"
177
+ }, {
86
178
  label: i18next.t("neetoImageUploader.labels.myImages"),
87
179
  key: "images",
88
180
  dataCy: "neeto-image-uploader-my-images-tab"
@@ -91,13 +183,6 @@ var TABS = [{
91
183
  key: "unsplash",
92
184
  dataCy: "neeto-image-uploader-unsplash-tab"
93
185
  }];
94
- var OPTIONS = [{
95
- key: "local",
96
- label: i18next.t("neetoImageUploader.labels.uploadNewImage"),
97
- "data-cy": "upload-new-asset",
98
- style: "primary",
99
- onClick: noop
100
- }];
101
186
  var DEFAULT_CROP_CONFIG = {
102
187
  unit: "px",
103
188
  height: 0,
@@ -252,5 +337,5 @@ var getCloudFlareCroppedURL = function getCloudFlareCroppedURL(_ref7) {
252
337
  return image.url.replace("public", "trim=".concat(trimValues));
253
338
  };
254
339
 
255
- export { ASSETS_DESTROY_URL as A, DEFAULT_CROP_CONFIG as D, IMAGES_PER_PAGE as I, OPTIONS as O, TABS as T, UNSPLASH_DEFAULT_NAME as U, isItemsCenter as a, getImageKitCroppedURL as b, getCropValues as c, INFINITE_SCROLLER_SIZES as d, INFINITE_SCROLLER_STYLE as e, ASSETS_FETCH_URL as f, getCloudFlareCroppedURL as g, UNSPLASH_DEFAULT_REQUEST_CONFIG as h, isNilOrEmpty as i, DEFAULT_UPLOAD_CONFIG as j, UNSPLASH_URL as k, OPTION_KEYS as l, isNotNilOrEmpty as m, IMAGE_WRAPPER_CLASSNAME as n, onImageLoaded as o, DROPZONE_ROOT_DIV_CLASSNAME as p, useUploadDropzone as u };
256
- //# sourceMappingURL=utils-fa0fa918.js.map
340
+ export { ASSETS_DESTROY_URL as A, DEFAULT_UPLOAD_CONFIG as D, IMAGE_WRAPPER_CLASSNAME as I, OPTION_KEYS as O, TABS as T, UNSPLASH_DEFAULT_NAME as U, ImageDirectUpload as a, isNilOrEmpty as b, DEFAULT_CROP_CONFIG as c, isItemsCenter as d, getImageKitCroppedURL as e, getCropValues as f, getCloudFlareCroppedURL as g, IMAGES_PER_PAGE as h, isNotNilOrEmpty as i, INFINITE_SCROLLER_SIZES as j, INFINITE_SCROLLER_STYLE as k, ASSETS_FETCH_URL as l, UNSPLASH_DEFAULT_REQUEST_CONFIG as m, UNSPLASH_URL as n, onImageLoaded as o, useUploadDropzone as u };
341
+ //# sourceMappingURL=utils-WEbpTEyB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-WEbpTEyB.js","sources":["../app/javascript/src/components/ImageUploader/constants.js","../app/javascript/src/components/ImageUploader/utils.js","../app/javascript/src/components/common/constants.js","../app/javascript/src/components/common/utils.js","../app/javascript/src/hooks/useUploadDropzone.js","../app/javascript/src/components/common/ImageDirectUpload.jsx","../app/javascript/src/components/constants.js","../app/javascript/src/components/ImageEditor/utils.js"],"sourcesContent":["import { globalProps } from \"neetocommons/initializers\";\n\nexport const DEFAULT_ALLOWED_IMAGE_TYPES = {\n \"image/png\": [\".png\"],\n \"image/jpg\": [\".jpg\", \".jpeg\"],\n \"image/gif\": [\".gif\"],\n \"image/svg+xml\": [\".svg\"],\n};\n\nexport const DEFAULT_UPLOAD_CONFIG = {\n maxImageSize: globalProps.endUserUploadedFileSizeLimitInMb,\n allowedImageTypes: DEFAULT_ALLOWED_IMAGE_TYPES,\n};\n\nexport const OPTION_KEYS = { asset: \"asset\", remove: \"remove\" };\n","import { flatten, pipe, join, map, toUpper, values } from \"ramda\";\n\nexport const getAllowedTypes = uploadConfig =>\n pipe(\n values,\n flatten,\n map(extension => extension.slice(1)),\n map(toUpper),\n join(\", \")\n )(uploadConfig.allowedImageTypes);\n","import { t } from \"i18next\";\n\nexport const DROPZONE_ROOT_DIV_CLASSNAME =\n \"neeto-ui-border-primary-600 hover:neeto-ui-bg-gray-100 neeto-ui-rounded-lg flex h-full w-full flex-col items-center justify-center gap-3 border border-dashed p-4 transition-all duration-300 ease-in-out\";\n\nexport const FILE_ERRORS = {\n \"file-invalid-type\": t(\"neetoImageUploader.imageUpload.fileTypeError\"),\n \"file-too-large\": t(\"neetoImageUploader.imageUpload.fileSizeError\"),\n};\n","import { t } from \"i18next\";\nimport { Toastr } from \"neetoui\";\n\nimport { FILE_ERRORS } from \"./constants\";\n\nexport const handleDropRejected = fileRejections => {\n fileRejections.map(({ errors }) =>\n errors.map(({ code }) =>\n Toastr.error(\n FILE_ERRORS[code] || t(\"neetoImageUploader.imageUpload.genericError\")\n )\n )\n );\n};\n","import { useState } from \"react\";\n\nimport { useDropzone } from \"react-dropzone\";\n\nimport { handleDropRejected } from \"components/common/utils\";\n\nconst useUploadDropzone = ({\n uploadConfig = { allowedImageTypes: [], maxImageSize: 0 },\n onDrop,\n}) => {\n const [uploadProgress, setUploadProgress] = useState(0);\n\n const { getRootProps, getInputProps, isDragActive } = useDropzone({\n onDrop: acceptedFiles => onDrop(acceptedFiles[0], setUploadProgress),\n accept: uploadConfig?.allowedImageTypes,\n multiple: false,\n maxSize: uploadConfig.maxImageSize * 1_048_576,\n onDropRejected: handleDropRejected,\n });\n\n return {\n getRootProps,\n getInputProps,\n isDragActive,\n uploadProgress,\n };\n};\n\nexport default useUploadDropzone;\n","import classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { Button, Typography, ProgressBar } from \"neetoui\";\nimport { equals } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport { DEFAULT_UPLOAD_CONFIG } from \"components/ImageUploader/constants\";\nimport { getAllowedTypes } from \"components/ImageUploader/utils\";\nimport useUploadDropzone from \"hooks/useUploadDropzone\";\n\nimport { DROPZONE_ROOT_DIV_CLASSNAME } from \"./constants\";\n\nconst ImageDirectUpload = ({\n uploadConfig = DEFAULT_UPLOAD_CONFIG,\n onDrop = noop,\n isDisabled = false,\n setIsAssetLibraryOpen,\n}) => {\n const { getRootProps, getInputProps, isDragActive, uploadProgress } =\n useUploadDropzone({ uploadConfig, onDrop });\n\n const shouldShowProgress = !!(uploadProgress && !equals(uploadProgress, 1));\n\n return (\n <div\n {...getRootProps()}\n className={classnames(DROPZONE_ROOT_DIV_CLASSNAME, {\n \"neeto-ui-border-gray-300\": !isDragActive,\n \"neeto-ui-border-gray-700\": isDragActive,\n })}\n >\n {shouldShowProgress ? (\n <ProgressBar\n progressPercentage={uploadProgress}\n progressValue={`${uploadProgress}%`}\n />\n ) : (\n <div className=\"flex flex-col space-y-1\">\n {!isDisabled && (\n <Typography\n className=\"neeto-ui-text-gray-800 text-center leading-4\"\n style=\"body2\"\n >\n <Trans\n i18nKey=\"neetoImageUploader.imageUpload.dragAndDropOrBrowseFile\"\n components={{\n span: (\n <Button\n data-cy=\"neeto-image-uploader-browse-text\"\n style=\"link\"\n />\n ),\n }}\n />\n </Typography>\n )}\n {setIsAssetLibraryOpen && (\n <Typography\n className=\"text-center leading-4\"\n style=\"body2\"\n onClick={e => {\n e.stopPropagation();\n setIsAssetLibraryOpen(true);\n }}\n >\n <Trans\n i18nKey=\"neetoImageUploader.imageUpload.selectImagefromImageLibrary\"\n components={{\n span: (\n <Button data-cy=\"open-asset-library-button\" style=\"link\" />\n ),\n }}\n />\n </Typography>\n )}\n <input\n {...getInputProps()}\n data-cy=\"neeto-image-uploader-file-input\"\n disabled={isDisabled}\n />\n <Typography\n className=\"neeto-ui-text-gray-700 text-center leading-4\"\n data-cy=\"neeto-image-uploader-restriction-message\"\n lineHeight=\"snug\"\n style=\"nano\"\n >\n <Trans\n i18nKey=\"neetoImageUploader.imageUpload.restrictionMessage\"\n values={{\n fileTypes: getAllowedTypes(uploadConfig),\n size: uploadConfig?.maxImageSize,\n }}\n />\n </Typography>\n </div>\n )}\n </div>\n );\n};\n\nexport default ImageDirectUpload;\n","import i18next from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\n\nimport { CLOUD_FLARE, IS_DEVELOPMENT_OR_HEROKU_ENV } from \"src/constants\";\n\nexport const UNSPLASH_DEFAULT_NAME = \"Unsplash-asset\";\n\nexport const UNSPLASH_URL = \"https://unsplash.com/\";\n\nexport const IMAGES_PER_PAGE = 30;\n\nexport const UNSPLASH_DEFAULT_REQUEST_CONFIG = {\n headers: {\n \"Access-Control-Allow-Origin\": \"*\",\n \"Access-Control-Allow-Methods\": \"GET\",\n },\n responseType: \"blob\",\n};\n\nexport const TABS = [\n {\n label: i18next.t(\"neetoImageUploader.labels.uploadImage\"),\n key: \"upload\",\n dataCy: \"neeto-image-uploader-upload-image-tab\",\n },\n {\n label: i18next.t(\"neetoImageUploader.labels.myImages\"),\n key: \"images\",\n dataCy: \"neeto-image-uploader-my-images-tab\",\n },\n {\n label: i18next.t(\"neetoImageUploader.labels.searchTheWeb\"),\n key: \"unsplash\",\n dataCy: \"neeto-image-uploader-unsplash-tab\",\n },\n];\n\nexport const DEFAULT_CROP_CONFIG = {\n unit: \"px\",\n height: 0,\n width: 0,\n x: 0,\n y: 0,\n};\n\nexport const URL_REGEXP =\n /[(http(s)?)://(www.)?a-zA-Z0-9@:%._+~#=]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%_+.~#?&//=]*)/;\n\nexport const INFINITE_SCROLLER_SIZES = [\n { columns: 2, gutter: 0 },\n { mq: \"768px\", columns: 4, gutter: 0 },\n { mq: \"1024px\", columns: 4, gutter: 0 },\n];\n\nexport const INFINITE_SCROLLER_STYLE = { width: \"100%\" };\n\nexport const ALLOWED_IMAGE_TYPES = {\n \"image/*\": [\".png\", \".jpg\", \".jpeg\", \".svg\", \".gif\"],\n};\n\nexport const IMAGE_UPLOAD_SERVICE_URL =\n globalProps.assetsUploaderService === CLOUD_FLARE\n ? \"neeto_image_uploader_engine/cloudflare_images\"\n : \"neeto_image_uploader_engine/imagekit/fetch\";\n\nexport const ASSETS_FETCH_URL = IS_DEVELOPMENT_OR_HEROKU_ENV\n ? \"neeto_image_uploader_engine/development/fetch\"\n : IMAGE_UPLOAD_SERVICE_URL;\n\nexport const ASSETS_DESTROY_URL = IS_DEVELOPMENT_OR_HEROKU_ENV\n ? \"neeto_image_uploader_engine/development/bulk_destroy\"\n : \"neeto_image_uploader_engine/imagekit/bulk_destroy\";\n\nexport const IMAGE_WRAPPER_CLASSNAME =\n \"neeto-ui-border-gray-300 neeto-ui-bg-gray-100 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-lg relative flex h-full w-full flex-col items-center justify-center gap-5 border border-dashed p-2 transition-all duration-300 ease-in-out\";\n","import ImageKit from \"imagekit-javascript\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { isEmpty, isNil } from \"ramda\";\n\nexport const getCropValues = ({ crop, imageRef }) => ({\n x: imageRef.current.naturalWidth * (crop.x / imageRef.current.width),\n y: imageRef.current.naturalHeight * (crop.y / imageRef.current.height),\n height:\n imageRef.current.naturalHeight * (crop.height / imageRef.current.height),\n width: imageRef.current.naturalWidth * (crop.width / imageRef.current.width),\n});\n\nexport const getImageKitCroppedURL = ({ imageURL, crop, imageRef }) => {\n const imagekit = new ImageKit({\n urlEndpoint: globalProps.imagekit.urlEndpoint,\n });\n const { x, y, height, width } = getCropValues({ crop, imageRef });\n\n const transformation = [{ cropMode: \"extract\", x, y, height, width }];\n\n return imagekit.url({ src: imageURL, transformation });\n};\n\nexport const isNilOrEmpty = value => isNil(value) || isEmpty(value);\nexport const isNotNilOrEmpty = value => !isNilOrEmpty(value);\n\nexport const onImageLoaded = ({ image, setCrop, cropAspectRatio = 16 / 9 }) => {\n const { width, height } = image;\n const imageAspectRatio = width / height;\n const maxCropWidth = 250;\n const maxCropHeight = maxCropWidth / cropAspectRatio;\n\n let cropWidth, cropHeight;\n\n if (imageAspectRatio > cropAspectRatio) {\n cropWidth = Math.min(maxCropWidth, width);\n cropHeight = cropWidth / cropAspectRatio;\n } else if (height < maxCropHeight) {\n cropWidth = width;\n cropHeight = height;\n } else {\n cropHeight = Math.min(maxCropHeight, height);\n cropWidth = cropHeight * cropAspectRatio;\n }\n\n const cropX = (width - cropWidth) / 2;\n const cropY = (height - cropHeight) / 2;\n\n setCrop({\n unit: \"px\",\n width: cropWidth,\n height: cropHeight,\n x: cropX,\n y: cropY,\n });\n};\n\nexport const isItemsCenter = ({ imageRef, wrapperRef }) => {\n const { height: imageHeight, width: imageWidth } = imageRef.current || {};\n const wrapperHeight = (wrapperRef.current || {}).clientHeight;\n\n if (imageHeight < imageWidth && imageHeight < wrapperHeight - 1) {\n // Landscape images smaller than wrapper dimensions\n return true;\n }\n\n if (imageHeight === imageWidth && imageHeight < wrapperHeight - 1) {\n // Square images smaller than wrapper dimensions\n return true;\n }\n\n return imageHeight > imageWidth && imageHeight < wrapperHeight - 1;\n};\n\nexport const calculateCloudFlareImageCroppedValues = ({\n imageRef,\n image,\n crop,\n}) => {\n const scaleX = image.metadata.width / imageRef.current.width;\n const scaleY = image.metadata.height / imageRef.current.height;\n\n const sourceX = scaleX * crop.x;\n const sourceY = scaleY * crop.y;\n const sourceWidth = scaleX * crop.width;\n const sourceHeight = scaleY * crop.height;\n\n const distanceFromRight = Math.abs(\n image.metadata.width - (sourceX + sourceWidth)\n );\n\n const distanceFromBottom = Math.abs(\n image.metadata.height - (sourceY + sourceHeight)\n );\n\n return {\n top: sourceY,\n right: distanceFromRight,\n bottom: distanceFromBottom,\n left: sourceX,\n };\n};\n\nexport const getCloudFlareCroppedURL = ({ imageRef, image, crop }) => {\n const { top, right, bottom, left } = calculateCloudFlareImageCroppedValues({\n imageRef,\n image,\n crop,\n });\n const trimValues = `${top};${right};${bottom};${left}`;\n\n return image.url.replace(\"public\", `trim=${trimValues}`);\n};\n"],"names":["DEFAULT_ALLOWED_IMAGE_TYPES","DEFAULT_UPLOAD_CONFIG","maxImageSize","globalProps","endUserUploadedFileSizeLimitInMb","allowedImageTypes","OPTION_KEYS","asset","remove","getAllowedTypes","uploadConfig","pipe","values","flatten","map","extension","slice","toUpper","join","DROPZONE_ROOT_DIV_CLASSNAME","FILE_ERRORS","t","handleDropRejected","fileRejections","_ref","errors","_ref2","code","Toastr","error","useUploadDropzone","_ref$uploadConfig","onDrop","_useState","useState","_useState2","_slicedToArray","uploadProgress","setUploadProgress","_useDropzone","useDropzone","acceptedFiles","accept","multiple","maxSize","onDropRejected","getRootProps","getInputProps","isDragActive","ImageDirectUpload","_ref$onDrop","noop","_ref$isDisabled","isDisabled","setIsAssetLibraryOpen","_useUploadDropzone","shouldShowProgress","equals","_jsx","_objectSpread","className","classnames","children","ProgressBar","progressPercentage","progressValue","concat","_jsxs","Typography","style","Trans","i18nKey","components","span","Button","onClick","e","stopPropagation","disabled","lineHeight","fileTypes","size","UNSPLASH_DEFAULT_NAME","UNSPLASH_URL","IMAGES_PER_PAGE","UNSPLASH_DEFAULT_REQUEST_CONFIG","headers","responseType","TABS","label","i18next","key","dataCy","DEFAULT_CROP_CONFIG","unit","height","width","x","y","INFINITE_SCROLLER_SIZES","columns","gutter","mq","INFINITE_SCROLLER_STYLE","IMAGE_UPLOAD_SERVICE_URL","assetsUploaderService","CLOUD_FLARE","ASSETS_FETCH_URL","IS_DEVELOPMENT_OR_HEROKU_ENV","ASSETS_DESTROY_URL","IMAGE_WRAPPER_CLASSNAME","getCropValues","crop","imageRef","current","naturalWidth","naturalHeight","getImageKitCroppedURL","imageURL","imagekit","ImageKit","urlEndpoint","_getCropValues","transformation","cropMode","url","src","isNilOrEmpty","value","isNil","isEmpty","isNotNilOrEmpty","onImageLoaded","_ref3","image","setCrop","_ref3$cropAspectRatio","cropAspectRatio","imageAspectRatio","maxCropWidth","maxCropHeight","cropWidth","cropHeight","Math","min","cropX","cropY","isItemsCenter","_ref4","wrapperRef","_ref5","imageHeight","imageWidth","wrapperHeight","clientHeight","calculateCloudFlareImageCroppedValues","_ref6","scaleX","metadata","scaleY","sourceX","sourceY","sourceWidth","sourceHeight","distanceFromRight","abs","distanceFromBottom","top","right","bottom","left","getCloudFlareCroppedURL","_ref7","_calculateCloudFlareI","trimValues","replace"],"mappings":"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"}
package/dist/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- import { Q as QUERY_KEYS } from './query-dcc7b81b.js';
1
+ import { Q as QUERY_KEYS } from './query-B0eDmse7.js';
2
2
 
3
3
  var refetchImageLibraryAssetList = function refetchImageLibraryAssetList(queryClient) {
4
4
  return queryClient.invalidateQueries({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-image-uploader-frontend",
3
- "version": "2.3.9",
3
+ "version": "2.3.11",
4
4
  "license": "UNLICENSED",
5
5
  "bugs": {
6
6
  "url": "https://github.com/bigbinary/neeto-image-uploader-nano/issues"
@@ -16,7 +16,7 @@
16
16
  "module": "dist/index.js",
17
17
  "types": "types.d.ts",
18
18
  "scripts": {
19
- "build": "NODE_ENV=production rollup -c --environment production",
19
+ "build": "NODE_ENV=production rollup --bundleConfigAsCjs -c --environment production",
20
20
  "build-preview": "NODE_ENV=production webpack",
21
21
  "prepare": "husky install",
22
22
  "release": "yarn build && yalc push --sig"
@@ -65,15 +65,15 @@
65
65
  "@babel/preset-typescript": "^7.18.6",
66
66
  "@babel/runtime": "7.19.0",
67
67
  "@bigbinary/babel-preset-neeto": "^1.0.3",
68
- "@bigbinary/eslint-plugin-neeto": "1.5.4",
69
- "@bigbinary/neeto-cist": "1.0.12",
70
- "@bigbinary/neeto-commons-frontend": "4.8.4",
71
- "@bigbinary/neeto-editor": "1.43.8",
72
- "@bigbinary/neeto-filters-frontend": "4.3.5",
73
- "@bigbinary/neeto-icons": "1.20.8",
74
- "@bigbinary/neeto-molecules": "3.7.21",
75
- "@bigbinary/neeto-team-members-frontend": "4.4.2",
76
- "@bigbinary/neetoui": "8.2.23",
68
+ "@bigbinary/eslint-plugin-neeto": "1.5.5",
69
+ "@bigbinary/neeto-cist": "1.0.13",
70
+ "@bigbinary/neeto-commons-frontend": "4.10.0",
71
+ "@bigbinary/neeto-editor": "1.43.12",
72
+ "@bigbinary/neeto-filters-frontend": "4.3.6",
73
+ "@bigbinary/neeto-icons": "1.20.10",
74
+ "@bigbinary/neeto-molecules": "3.7.30",
75
+ "@bigbinary/neeto-team-members-frontend": "4.4.3",
76
+ "@bigbinary/neetoui": "8.2.31",
77
77
  "@emotion/is-prop-valid": "1.2.0",
78
78
  "@faker-js/faker": "8.2.0",
79
79
  "@honeybadger-io/js": "^6.4.1",
@@ -95,6 +95,7 @@
95
95
  "babel-plugin-istanbul": "^6.1.1",
96
96
  "babel-plugin-js-logger": "1.0.17",
97
97
  "babel-plugin-macros": "3.1.0",
98
+ "babel-plugin-module-resolver": "^5.0.0",
98
99
  "babel-plugin-preval": "^5.1.0",
99
100
  "babel-plugin-transform-react-remove-prop-types": "0.4.24",
100
101
  "babel-preset-react": "6.24.1",
@@ -155,7 +156,7 @@
155
156
  "react-router-dom": "5.3.3",
156
157
  "react-toastify": "8.0.2",
157
158
  "react_ujs": "^3.1.1",
158
- "rollup": "2.79.2",
159
+ "rollup": "^4.24.0",
159
160
  "rollup-plugin-analyzer": "4.0.0",
160
161
  "rollup-plugin-cleaner": "1.0.0",
161
162
  "rollup-plugin-copy": "3.5.0",
@@ -182,14 +183,14 @@
182
183
  },
183
184
  "peerDependencies": {
184
185
  "@babel/runtime": "7.19.0",
185
- "@bigbinary/neeto-cist": "1.0.12",
186
- "@bigbinary/neeto-commons-frontend": "4.8.4",
187
- "@bigbinary/neeto-editor": "1.43.8",
188
- "@bigbinary/neeto-filters-frontend": "4.3.5",
189
- "@bigbinary/neeto-icons": "1.20.8",
190
- "@bigbinary/neeto-molecules": "3.7.21",
191
- "@bigbinary/neeto-team-members-frontend": "4.4.2",
192
- "@bigbinary/neetoui": "8.2.23",
186
+ "@bigbinary/neeto-cist": "1.0.13",
187
+ "@bigbinary/neeto-commons-frontend": "4.10.0",
188
+ "@bigbinary/neeto-editor": "1.43.12",
189
+ "@bigbinary/neeto-filters-frontend": "4.3.6",
190
+ "@bigbinary/neeto-icons": "1.20.10",
191
+ "@bigbinary/neeto-molecules": "3.7.30",
192
+ "@bigbinary/neeto-team-members-frontend": "4.4.3",
193
+ "@bigbinary/neetoui": "8.2.31",
193
194
  "@honeybadger-io/js": "^6.4.1",
194
195
  "@honeybadger-io/react": "^6.1.3",
195
196
  "@rails/activestorage": "7.0.8-3",