@dreamcommerce/aurora 3.0.0-63 → 3.0.0-65
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/packages/aurora/src/components/controls/controls_group/controls_group.js +21 -0
- package/build/cjs/packages/aurora/src/components/controls/controls_group/controls_group.js.map +1 -0
- package/build/cjs/packages/aurora/src/components/controls/input_control/input_control.js +6 -1
- package/build/cjs/packages/aurora/src/components/controls/input_control/input_control.js.map +1 -1
- package/build/cjs/packages/aurora/src/components/controls/switch_control/switch_control.js +2 -1
- package/build/cjs/packages/aurora/src/components/controls/switch_control/switch_control.js.map +1 -1
- package/build/cjs/packages/aurora/src/constants/css_tokens/css_icon_color_tokens.js +1 -1
- package/build/cjs/packages/aurora/src/index.js +2 -0
- package/build/cjs/packages/aurora/src/index.js.map +1 -1
- package/build/esm/packages/aurora/src/assets/icons/delete_bin_icon.d.ts +1 -0
- package/build/esm/packages/aurora/src/assets/icons/delete_bin_icon.js +3 -0
- package/build/esm/packages/aurora/src/assets/icons/delete_bin_icon.js.map +1 -0
- package/build/esm/packages/aurora/src/assets/icons/image_edit_icon.d.ts +1 -0
- package/build/esm/packages/aurora/src/assets/icons/image_edit_icon.js +3 -0
- package/build/esm/packages/aurora/src/assets/icons/image_edit_icon.js.map +1 -0
- package/build/esm/packages/aurora/src/assets/icons/layout_bottom_line_icon.d.ts +1 -0
- package/build/esm/packages/aurora/src/assets/icons/layout_bottom_line_icon.js +3 -0
- package/build/esm/packages/aurora/src/assets/icons/layout_bottom_line_icon.js.map +1 -0
- package/build/esm/packages/aurora/src/assets/icons/upload_icon.d.ts +1 -0
- package/build/esm/packages/aurora/src/assets/icons/upload_icon.js +3 -0
- package/build/esm/packages/aurora/src/assets/icons/upload_icon.js.map +1 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumb_child.d.ts +3 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumb_child.js +14 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumb_child.js.map +1 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumbs.d.ts +6 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumbs.js +35 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumbs.js.map +1 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumbs_types.d.ts +10 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumbs_types.js +2 -0
- package/build/esm/packages/aurora/src/components/breadcrumbs/breadcrumbs_types.js.map +1 -0
- package/build/esm/packages/aurora/src/components/control/control_types.d.ts +2 -1
- package/build/esm/packages/aurora/src/components/control/control_types.js +1 -1
- package/build/esm/packages/aurora/src/components/controls/controls_group/controls_group.d.ts +3 -0
- package/build/esm/packages/aurora/src/components/controls/controls_group/controls_group.js +13 -0
- package/build/esm/packages/aurora/src/components/controls/controls_group/controls_group.js.map +1 -0
- package/build/esm/packages/aurora/src/components/controls/input_control/input_control.js +6 -1
- package/build/esm/packages/aurora/src/components/controls/input_control/input_control.js.map +1 -1
- package/build/esm/packages/aurora/src/components/controls/input_control/input_control_types.d.ts +1 -0
- package/build/esm/packages/aurora/src/components/controls/switch_control/switch_control.js +2 -1
- package/build/esm/packages/aurora/src/components/controls/switch_control/switch_control.js.map +1 -1
- package/build/esm/packages/aurora/src/components/controls/text_area_control/text_area_control.d.ts +3 -0
- package/build/esm/packages/aurora/src/components/controls/text_area_control/text_area_control.js +17 -0
- package/build/esm/packages/aurora/src/components/controls/text_area_control/text_area_control.js.map +1 -0
- package/build/esm/packages/aurora/src/components/controls/text_area_control/text_area_control_types.d.ts +8 -0
- package/build/esm/packages/aurora/src/components/controls/text_area_control/text_area_control_types.js +3 -0
- package/build/esm/packages/aurora/src/components/controls/text_area_control/text_area_control_types.js.map +1 -0
- package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control.d.ts +3 -0
- package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control.js +24 -0
- package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control.js.map +1 -0
- package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control_types.d.ts +15 -0
- package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control_types.js +5 -0
- package/build/esm/packages/aurora/src/components/controls/xhr_image_picker_control/xhr_image_picker_control_types.js.map +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_input.d.ts +9 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_input.js +19 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_input.js.map +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_preview.d.ts +9 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_preview.js +6 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/image_picker_preview.js.map +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/uploaded_image_picker_item.d.ts +9 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/uploaded_image_picker_item.js +19 -0
- package/build/esm/packages/aurora/src/components/image_picker/components/uploaded_image_picker_item.js.map +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker.d.ts +3 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker.js +76 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker.js.map +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_constants.d.ts +35 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_constants.js +36 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_constants.js.map +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_types.d.ts +59 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_types.js +4 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_types.js.map +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_utils.d.ts +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_utils.js +6 -0
- package/build/esm/packages/aurora/src/components/image_picker/image_picker_utils.js.map +1 -0
- package/build/esm/packages/aurora/src/components/image_picker/use_image_picker.d.ts +2 -0
- package/build/esm/packages/aurora/src/components/image_picker/use_image_picker.js +117 -0
- package/build/esm/packages/aurora/src/components/image_picker/use_image_picker.js.map +1 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area.d.ts +3 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area.js +7 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area.js.map +1 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area_types.d.ts +4 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area_types.js +2 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area_types.js.map +1 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area_variants.d.ts +1 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area_variants.js +3 -0
- package/build/esm/packages/aurora/src/components/text_area/text_area_variants.js.map +1 -0
- package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker.d.ts +3 -0
- package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker.js +102 -0
- package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker.js.map +1 -0
- package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker_types.d.ts +17 -0
- package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker_types.js +2 -0
- package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker_types.js.map +1 -0
- package/build/esm/packages/aurora/src/constants/css_tokens/css_icon_color_tokens.d.ts +1 -1
- package/build/esm/packages/aurora/src/constants/css_tokens/css_icon_color_tokens.js +1 -1
- package/build/esm/packages/aurora/src/index.d.ts +1 -0
- package/build/esm/packages/aurora/src/index.js +1 -0
- package/build/esm/packages/aurora/src/index.js.map +1 -1
- package/build/index.css +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import React, { createRef, memo, useEffect, useState } from 'react';
|
|
2
|
+
import { useTranslation } from 'react-i18next';
|
|
3
|
+
import { ErrorList } from '@auroraComponents/error_list/error_list';
|
|
4
|
+
import { ImagePickerPreview } from './components/image_picker_preview';
|
|
5
|
+
import { IMAGE_PICKER_EXTENSIONS } from './image_picker_constants';
|
|
6
|
+
import './image_picker_types';
|
|
7
|
+
import { ImagePickerInput } from './components/image_picker_input';
|
|
8
|
+
import { UploadedImagePickerItem } from './components/uploaded_image_picker_item';
|
|
9
|
+
import { getAcceptFilesParametersFromAllowedExtensions } from './image_picker_utils';
|
|
10
|
+
import { useImagePicker } from './use_image_picker';
|
|
11
|
+
import { cn } from '@auroraUtilities/cn';
|
|
12
|
+
export const ImagePicker = memo(({ id, onChange, onError, errors: initialErrors, allowedExtensions = [
|
|
13
|
+
IMAGE_PICKER_EXTENSIONS.WEBP,
|
|
14
|
+
IMAGE_PICKER_EXTENSIONS.JPG,
|
|
15
|
+
IMAGE_PICKER_EXTENSIONS.PNG,
|
|
16
|
+
IMAGE_PICKER_EXTENSIONS.GIF,
|
|
17
|
+
IMAGE_PICKER_EXTENSIONS.SVG,
|
|
18
|
+
IMAGE_PICKER_EXTENSIONS.JPEG
|
|
19
|
+
], initialFile, name, onImageSizeUpdated, topButtons, editedImageResult }) => {
|
|
20
|
+
const [t] = useTranslation();
|
|
21
|
+
const inputRef = createRef();
|
|
22
|
+
const handleOnChange = (ev) => {
|
|
23
|
+
onChange?.(ev);
|
|
24
|
+
if (ev.fileList?.length) {
|
|
25
|
+
setImageSizeBasedOnUrl(URL.createObjectURL(ev.fileList[0]));
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
const { onDropFile, onFileChange, onDragOver, onDragLeave, onFileDelete, onPreviewError, changeFile, file, errors, isPreview, isDragOver } = useImagePicker({ initialFile, onChange: handleOnChange, allowedExtensions, initialErrors, onError, inputRef });
|
|
29
|
+
const [imageSize, setImageSize] = useState(undefined);
|
|
30
|
+
const acceptFiles = getAcceptFilesParametersFromAllowedExtensions(allowedExtensions);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
onImageSizeUpdated?.(imageSize);
|
|
33
|
+
}, [imageSize]);
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
initialFile && setImageSizeBasedOnUrl(initialFile?.fileUrl);
|
|
36
|
+
}, [initialFile]);
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
if (!editedImageResult)
|
|
39
|
+
return;
|
|
40
|
+
const fileList = createFileList(editedImageResult);
|
|
41
|
+
changeFile(fileList);
|
|
42
|
+
}, [editedImageResult]);
|
|
43
|
+
const createFileList = (file) => {
|
|
44
|
+
const fileArray = [];
|
|
45
|
+
fileArray.push(file);
|
|
46
|
+
return fileArray;
|
|
47
|
+
};
|
|
48
|
+
const setImageSizeBasedOnUrl = (fileUrl) => {
|
|
49
|
+
createImageFromUrl(fileUrl).then((image) => {
|
|
50
|
+
setImageSize({ width: image.naturalWidth, height: image.naturalHeight });
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
const createImageFromUrl = async (url) => {
|
|
54
|
+
const img = new Image();
|
|
55
|
+
img.src = url;
|
|
56
|
+
await img.decode();
|
|
57
|
+
return img;
|
|
58
|
+
};
|
|
59
|
+
const handleOnFileDelete = () => {
|
|
60
|
+
onFileDelete();
|
|
61
|
+
setImageSize(undefined);
|
|
62
|
+
};
|
|
63
|
+
return (React.createElement("div", { className: "aurora-mb-1" },
|
|
64
|
+
React.createElement("div", { className: cn('aurora-rounded-8 aurora-relative hover:aurora-border-active', {
|
|
65
|
+
'aurora-border aurora-border-dashed': !(errors && errors.length > 0 && !isDragOver),
|
|
66
|
+
'aurora-border-2 aurora-border-danger aurora-border-solid hover:aurora-border-danger': errors && errors.length > 0,
|
|
67
|
+
'aurora-border-none': isDragOver
|
|
68
|
+
}) },
|
|
69
|
+
file && !errors?.length ? (isPreview ? (React.createElement("div", { className: "aurora-p-1 aurora-pb-2 aurora-relative" },
|
|
70
|
+
topButtons && React.createElement("div", null, topButtons),
|
|
71
|
+
React.createElement(ImagePickerPreview, { file: file, onError: onPreviewError }),
|
|
72
|
+
React.createElement(UploadedImagePickerItem, { imageSize: imageSize, file: file, isValid: !errors?.length, onFileDelete: handleOnFileDelete }))) : (React.createElement("div", null, `${t('No preview')}`))) : (React.createElement(ImagePickerInput, { onDragLeave: onDragLeave, onDragOver: onDragOver, isDragOver: isDragOver, allowedExtensions: allowedExtensions, id: id, onDropFile: onDropFile })),
|
|
73
|
+
React.createElement("input", { className: "aurora-hidden", onChange: onFileChange, id: id, ref: inputRef, type: "file", name: name, accept: acceptFiles })),
|
|
74
|
+
errors && React.createElement(ErrorList, { errors: errors })));
|
|
75
|
+
});
|
|
76
|
+
//# sourceMappingURL=image_picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image_picker.js","sourceRoot":"","sources":["../../../../../../../src/components/image_picker/image_picker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export declare const IMAGE_PICKER_EXTENSIONS: {
|
|
2
|
+
readonly GIF: "gif";
|
|
3
|
+
readonly JPG: "jpg";
|
|
4
|
+
readonly JPEG: "jpeg";
|
|
5
|
+
readonly PNG: "png";
|
|
6
|
+
readonly WEBP: "webp";
|
|
7
|
+
readonly SVG: "svg";
|
|
8
|
+
};
|
|
9
|
+
export declare const MIME_FILE_EXTENSIONS: {
|
|
10
|
+
readonly gif: "image/gif";
|
|
11
|
+
readonly jpg: "image/jpg";
|
|
12
|
+
readonly jpeg: "image/jpeg";
|
|
13
|
+
readonly png: "image/png";
|
|
14
|
+
readonly webp: "image/webp";
|
|
15
|
+
readonly svg: "image/svg+xml";
|
|
16
|
+
};
|
|
17
|
+
export declare const FILE_EXTENSION_TO_MIME_TYPE: {
|
|
18
|
+
readonly gif: "image/gif";
|
|
19
|
+
readonly jpg: "image/jpg";
|
|
20
|
+
readonly jpeg: "image/jpeg";
|
|
21
|
+
readonly png: "image/png";
|
|
22
|
+
readonly webp: "image/webp";
|
|
23
|
+
readonly svg: "image/svg+xml";
|
|
24
|
+
};
|
|
25
|
+
export declare const MIME_TYPE_TO_FILE_EXTENSIONS: {
|
|
26
|
+
readonly "image/gif": "gif";
|
|
27
|
+
readonly "image/jpg": "jpg";
|
|
28
|
+
readonly "image/jpeg": "jpeg";
|
|
29
|
+
readonly "image/png": "png";
|
|
30
|
+
readonly "image/webp": "webp";
|
|
31
|
+
readonly "image/svg+xml": "svg";
|
|
32
|
+
};
|
|
33
|
+
export declare const IMAGE_PICKER_ERROR: {
|
|
34
|
+
invalidFileFormat: string;
|
|
35
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export const IMAGE_PICKER_EXTENSIONS = {
|
|
2
|
+
GIF: 'gif',
|
|
3
|
+
JPG: 'jpg',
|
|
4
|
+
JPEG: 'jpeg',
|
|
5
|
+
PNG: 'png',
|
|
6
|
+
WEBP: 'webp',
|
|
7
|
+
SVG: 'svg'
|
|
8
|
+
};
|
|
9
|
+
export const MIME_FILE_EXTENSIONS = {
|
|
10
|
+
[IMAGE_PICKER_EXTENSIONS.GIF]: 'image/gif',
|
|
11
|
+
[IMAGE_PICKER_EXTENSIONS.JPG]: 'image/jpg',
|
|
12
|
+
[IMAGE_PICKER_EXTENSIONS.JPEG]: 'image/jpeg',
|
|
13
|
+
[IMAGE_PICKER_EXTENSIONS.PNG]: 'image/png',
|
|
14
|
+
[IMAGE_PICKER_EXTENSIONS.WEBP]: 'image/webp',
|
|
15
|
+
[IMAGE_PICKER_EXTENSIONS.SVG]: 'image/svg+xml'
|
|
16
|
+
};
|
|
17
|
+
export const FILE_EXTENSION_TO_MIME_TYPE = {
|
|
18
|
+
[IMAGE_PICKER_EXTENSIONS.GIF]: MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.GIF],
|
|
19
|
+
[IMAGE_PICKER_EXTENSIONS.JPG]: MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.JPG],
|
|
20
|
+
[IMAGE_PICKER_EXTENSIONS.JPEG]: MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.JPEG],
|
|
21
|
+
[IMAGE_PICKER_EXTENSIONS.PNG]: MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.PNG],
|
|
22
|
+
[IMAGE_PICKER_EXTENSIONS.WEBP]: MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.WEBP],
|
|
23
|
+
[IMAGE_PICKER_EXTENSIONS.SVG]: MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.SVG]
|
|
24
|
+
};
|
|
25
|
+
export const MIME_TYPE_TO_FILE_EXTENSIONS = {
|
|
26
|
+
[MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.GIF]]: IMAGE_PICKER_EXTENSIONS.GIF,
|
|
27
|
+
[MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.JPG]]: IMAGE_PICKER_EXTENSIONS.JPG,
|
|
28
|
+
[MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.JPEG]]: IMAGE_PICKER_EXTENSIONS.JPEG,
|
|
29
|
+
[MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.PNG]]: IMAGE_PICKER_EXTENSIONS.PNG,
|
|
30
|
+
[MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.WEBP]]: IMAGE_PICKER_EXTENSIONS.WEBP,
|
|
31
|
+
[MIME_FILE_EXTENSIONS[IMAGE_PICKER_EXTENSIONS.SVG]]: IMAGE_PICKER_EXTENSIONS.SVG
|
|
32
|
+
};
|
|
33
|
+
export const IMAGE_PICKER_ERROR = {
|
|
34
|
+
invalidFileFormat: 'Invalid file format'
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=image_picker_constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image_picker_constants.js","sourceRoot":"","sources":["../../../../../../../src/components/image_picker/image_picker_constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;CACJ,CAAC;AAEX,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAChC,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,WAAW;IAC1C,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,WAAW;IAC1C,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,YAAY;IAC5C,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,WAAW;IAC1C,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,YAAY;IAC5C,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,eAAe;CACxC,CAAC;AAEX,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACvC,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,GAAG,CAAC;IAChF,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,GAAG,CAAC;IAChF,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,CAAC;IAClF,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,GAAG,CAAC;IAChF,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,CAAC;IAClF,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,GAAG,CAAC;CAC1E,CAAC;AAEX,MAAM,CAAC,MAAM,4BAA4B,GAAG;IACxC,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC,GAAG;IAChF,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC,GAAG;IAChF,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,EAAE,uBAAuB,CAAC,IAAI;IAClF,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC,GAAG;IAChF,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,EAAE,uBAAuB,CAAC,IAAI;IAClF,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC,GAAG;CAC1E,CAAC;AAEX,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAC9B,iBAAiB,EAAE,qBAAqB;CAC3C,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import React, { ChangeEvent, ReactNode } from 'react';
|
|
2
|
+
import { IMAGE_PICKER_EXTENSIONS, MIME_FILE_EXTENSIONS } from './image_picker_constants';
|
|
3
|
+
import { TControlErrors } from "../control/control_types";
|
|
4
|
+
export declare type TImagePickerFile = {
|
|
5
|
+
fileUrl: string;
|
|
6
|
+
fileName: string;
|
|
7
|
+
};
|
|
8
|
+
export declare type TImagePickerExtension = typeof IMAGE_PICKER_EXTENSIONS[keyof typeof IMAGE_PICKER_EXTENSIONS];
|
|
9
|
+
export declare type TMimeFileExtension = typeof MIME_FILE_EXTENSIONS[keyof typeof MIME_FILE_EXTENSIONS];
|
|
10
|
+
export declare type IUseFilePickerOnChange = {
|
|
11
|
+
fileList: FileList | null;
|
|
12
|
+
fileAsDataUrl?: string | ArrayBuffer | null;
|
|
13
|
+
};
|
|
14
|
+
export interface IImagePicker {
|
|
15
|
+
id: string;
|
|
16
|
+
name?: string;
|
|
17
|
+
className?: string;
|
|
18
|
+
onChange?: (file: IUseFilePickerOnChange) => void;
|
|
19
|
+
allowedExtensions?: TImagePickerExtension[];
|
|
20
|
+
initialFile?: TImagePickerFile;
|
|
21
|
+
errors?: TControlErrors;
|
|
22
|
+
onError?: (errors: string[]) => void;
|
|
23
|
+
onImageSizeUpdated?: (imageSize?: TImageSize) => void;
|
|
24
|
+
topButtons?: ReactNode;
|
|
25
|
+
editedImageResult?: File;
|
|
26
|
+
}
|
|
27
|
+
export interface IImagePickerInput {
|
|
28
|
+
id: string;
|
|
29
|
+
onDropFile: (event: React.DragEvent<HTMLLabelElement>) => void;
|
|
30
|
+
onDragOver: (event: React.DragEvent<HTMLLabelElement>) => void;
|
|
31
|
+
onDragLeave: (event: React.DragEvent<HTMLLabelElement>) => void;
|
|
32
|
+
allowedExtensions: TImagePickerExtension[];
|
|
33
|
+
isDragOver: boolean;
|
|
34
|
+
}
|
|
35
|
+
export declare type TImageSize = {
|
|
36
|
+
width: number;
|
|
37
|
+
height: number;
|
|
38
|
+
};
|
|
39
|
+
export interface IUseImagePicker {
|
|
40
|
+
onDropFile: (event: React.DragEvent<HTMLLabelElement>) => void;
|
|
41
|
+
onDragOver: (event: React.DragEvent<HTMLLabelElement>) => void;
|
|
42
|
+
onDragLeave: (event: React.DragEvent<HTMLLabelElement>) => void;
|
|
43
|
+
onFileChange: (event: ChangeEvent<HTMLInputElement>) => void;
|
|
44
|
+
onFileDelete: () => void;
|
|
45
|
+
onPreviewError: () => void;
|
|
46
|
+
changeFile: (files: FileList) => void;
|
|
47
|
+
file: TImagePickerFile | undefined;
|
|
48
|
+
errors: string[];
|
|
49
|
+
isPreview: boolean;
|
|
50
|
+
isDragOver: boolean;
|
|
51
|
+
}
|
|
52
|
+
export interface IUseImagePickerProps {
|
|
53
|
+
onChange?: (file: IUseFilePickerOnChange) => void;
|
|
54
|
+
initialFile?: TImagePickerFile;
|
|
55
|
+
allowedExtensions?: TImagePickerExtension[];
|
|
56
|
+
inputRef: React.RefObject<HTMLInputElement>;
|
|
57
|
+
initialErrors?: TControlErrors;
|
|
58
|
+
onError?: (errors: string[]) => void;
|
|
59
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image_picker_types.js","sourceRoot":"","sources":["../../../../../../../src/components/image_picker/image_picker_types.ts"],"names":[],"mappings":"AAAA,OAA8C,OAAO,CAAC;AACtD,OAA8D,0BAA0B,CAAC;AACzF,OAA+B,yCAAyC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getAcceptFilesParametersFromAllowedExtensions: (allowedExtensions: string[]) => string;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { FILE_EXTENSION_TO_MIME_TYPE } from './image_picker_constants';
|
|
2
|
+
import './image_picker_types';
|
|
3
|
+
export const getAcceptFilesParametersFromAllowedExtensions = (allowedExtensions) => {
|
|
4
|
+
return allowedExtensions.map((extension) => FILE_EXTENSION_TO_MIME_TYPE[extension]).join(', ');
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=image_picker_utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image_picker_utils.js","sourceRoot":"","sources":["../../../../../../../src/components/image_picker/image_picker_utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAsC,sBAAsB,CAAC;AAE7D,MAAM,CAAC,MAAM,6CAA6C,GAAG,CAAC,iBAA2B,EAAE,EAAE;IACzF,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,SAAgC,EAAE,EAAE,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1H,CAAC,CAAC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { useEffect, useRef, useState } from 'react';
|
|
2
|
+
import i18n from '../../i18n';
|
|
3
|
+
import { IMAGE_PICKER_ERROR, MIME_TYPE_TO_FILE_EXTENSIONS } from './image_picker_constants';
|
|
4
|
+
import './image_picker_types';
|
|
5
|
+
export const useImagePicker = ({ onChange, initialFile, allowedExtensions, inputRef, initialErrors, onError }) => {
|
|
6
|
+
const [fileList, setFileList] = useState(null);
|
|
7
|
+
const [file, setFile] = useState(initialFile);
|
|
8
|
+
const [fileAsDataUrl, setFileAsDataUrl] = useState(null);
|
|
9
|
+
const [errors, setErrors] = useState([]);
|
|
10
|
+
const [isDragOver, setDragOver] = useState(false);
|
|
11
|
+
const [isPreview, setPreview] = useState(true);
|
|
12
|
+
const reader = useRef(new FileReader());
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
reader.current && getDataUrlFromFile(reader.current.result);
|
|
15
|
+
reader.current.addEventListener('load', () => getDataUrlFromFile(reader.current.result), false);
|
|
16
|
+
return () => reader.current.removeEventListener('load', () => getDataUrlFromFile(reader.current.result));
|
|
17
|
+
}, []);
|
|
18
|
+
useEffect(() => {
|
|
19
|
+
setFile(initialFile);
|
|
20
|
+
}, [initialFile]);
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
initialErrors && setErrors(initialErrors);
|
|
23
|
+
}, [initialErrors]);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
fileAsDataUrl && onChange?.({ fileList, fileAsDataUrl });
|
|
26
|
+
}, [fileAsDataUrl]);
|
|
27
|
+
const onDropFile = (event) => {
|
|
28
|
+
setErrors([]);
|
|
29
|
+
event.stopPropagation();
|
|
30
|
+
event.preventDefault();
|
|
31
|
+
const { dataTransfer: { files } } = event;
|
|
32
|
+
if (!files.length)
|
|
33
|
+
return;
|
|
34
|
+
validateFileExtension(allowedExtensions, files[0].type);
|
|
35
|
+
setDragOver(false);
|
|
36
|
+
updateFile(files);
|
|
37
|
+
};
|
|
38
|
+
const validateFileExtension = (allowedExtensions, mimeType) => {
|
|
39
|
+
if (!allowedExtensions)
|
|
40
|
+
return true;
|
|
41
|
+
const isValid = allowedExtensions.reduce((acc, extension) => {
|
|
42
|
+
return acc ? acc : MIME_TYPE_TO_FILE_EXTENSIONS[mimeType] === extension;
|
|
43
|
+
}, false);
|
|
44
|
+
if (isValid) {
|
|
45
|
+
setErrors([]);
|
|
46
|
+
return isValid;
|
|
47
|
+
}
|
|
48
|
+
setErrors([...errors, i18n.t(IMAGE_PICKER_ERROR.invalidFileFormat)]);
|
|
49
|
+
onError?.(errors);
|
|
50
|
+
return isValid;
|
|
51
|
+
};
|
|
52
|
+
const onFileChange = (event) => {
|
|
53
|
+
changeFile(event.target.files);
|
|
54
|
+
};
|
|
55
|
+
const changeFile = (files) => {
|
|
56
|
+
setErrors([]);
|
|
57
|
+
updateFile(files);
|
|
58
|
+
};
|
|
59
|
+
const updateFile = (files) => {
|
|
60
|
+
if (files?.length) {
|
|
61
|
+
setFileList(files);
|
|
62
|
+
reader.current.readAsDataURL(files[0]);
|
|
63
|
+
setFile({
|
|
64
|
+
fileName: files?.[0].name,
|
|
65
|
+
fileUrl: URL.createObjectURL(files?.[0])
|
|
66
|
+
});
|
|
67
|
+
const isValid = validateFileExtension(allowedExtensions, files[0].type);
|
|
68
|
+
if (isValid)
|
|
69
|
+
onChange?.({ fileList: files });
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
setFile(undefined);
|
|
73
|
+
onChange?.({ fileList: files });
|
|
74
|
+
}
|
|
75
|
+
setPreview(true);
|
|
76
|
+
};
|
|
77
|
+
const getDataUrlFromFile = (fileReaderResult) => {
|
|
78
|
+
setFileAsDataUrl(fileReaderResult);
|
|
79
|
+
};
|
|
80
|
+
const onDragOver = (event) => {
|
|
81
|
+
event.stopPropagation();
|
|
82
|
+
event.preventDefault();
|
|
83
|
+
event.dataTransfer.dropEffect = 'copy';
|
|
84
|
+
if (!isDragOver) {
|
|
85
|
+
setDragOver(true);
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
const onDragLeave = () => {
|
|
89
|
+
setDragOver(false);
|
|
90
|
+
};
|
|
91
|
+
const onFileDelete = () => {
|
|
92
|
+
inputRef.current.value = '';
|
|
93
|
+
setFileList(null);
|
|
94
|
+
setFile(undefined);
|
|
95
|
+
setFileAsDataUrl(null);
|
|
96
|
+
setPreview(true);
|
|
97
|
+
setErrors([]);
|
|
98
|
+
onChange?.({ fileList: null, fileAsDataUrl: null });
|
|
99
|
+
};
|
|
100
|
+
const onPreviewError = () => {
|
|
101
|
+
setPreview(false);
|
|
102
|
+
};
|
|
103
|
+
return {
|
|
104
|
+
onDropFile,
|
|
105
|
+
onFileChange,
|
|
106
|
+
onDragOver,
|
|
107
|
+
onDragLeave,
|
|
108
|
+
onFileDelete,
|
|
109
|
+
onPreviewError,
|
|
110
|
+
changeFile,
|
|
111
|
+
file,
|
|
112
|
+
errors,
|
|
113
|
+
isPreview,
|
|
114
|
+
isDragOver
|
|
115
|
+
};
|
|
116
|
+
};
|
|
117
|
+
//# sourceMappingURL=use_image_picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use_image_picker.js","sourceRoot":"","sources":["../../../../../../../src/components/image_picker/use_image_picker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { cn } from '@auroraUtilities/cn';
|
|
3
|
+
import { textAreaVariants } from './text_area_variants';
|
|
4
|
+
import './text_area_types';
|
|
5
|
+
export const TextArea = React.forwardRef(({ errors, className, id, name, value, defaultValue = '', placeholder = '', disabled, readOnly, onChange, onKeyDown, onKeyUp, ...props }, ref) => (React.createElement("textarea", { ...props, ref: ref, id: id, name: name, value: value, defaultValue: defaultValue, placeholder: placeholder, disabled: disabled, readOnly: readOnly, onChange: onChange, onKeyDown: onKeyDown, onKeyUp: onKeyUp, className: cn(textAreaVariants(), errors && 'aurora-border-danger', disabled && 'aurora-bg-subtle aurora-text-subtle-light aurora-pointer-events-none aurora-cursor-not-allowed', className) })));
|
|
6
|
+
TextArea.displayName = 'TextArea';
|
|
7
|
+
//# sourceMappingURL=text_area.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text_area.js","sourceRoot":"","sources":["../../../../../../../src/components/text_area/text_area.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAA+B,mBAAmB,CAAC;AAEnD,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CACpC,CACI,EACI,MAAM,EACN,SAAS,EACT,EAAE,EACF,IAAI,EACJ,KAAK,EACL,YAAY,GAAG,EAAE,EACjB,WAAW,GAAG,EAAE,EAChB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,GAAG,KAAK,EACX,EACD,GAAG,EACL,EAAE,CAAC,CACD,qCACQ,KAAK,EACT,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,EAAE,CACT,gBAAgB,EAAE,EAClB,MAAM,IAAI,sBAAsB,EAChC,QAAQ,IAAI,gGAAgG,EAC5G,SAAS,CACZ,GACH,CACL,CACJ,CAAC;AAEF,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text_area_types.js","sourceRoot":"","sources":["../../../../../../../src/components/text_area/text_area_types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const textAreaVariants: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { cva } from 'class-variance-authority';
|
|
2
|
+
export const textAreaVariants = cva('aurora-rounded-6 aurora-h-[72px] focus aurora-border aurora-bg aurora-text-s aurora-placeholder-neutral-500 aurora-text aurora-px-3 aurora-py-2 hover:aurora-border-strong active:aurora-border-active disabled:aurora-opacity-50 aurora-w-full');
|
|
3
|
+
//# sourceMappingURL=text_area_variants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text_area_variants.js","sourceRoot":"","sources":["../../../../../../../src/components/text_area/text_area_variants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE/C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAC/B,iPAAiP,CACpP,CAAC"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
2
|
+
import { FileUtils } from '@dreamcommerce/utilities';
|
|
3
|
+
import { REQUEST_TYPES } from '@dreamcommerce/star_core';
|
|
4
|
+
import { useHttpApi } from '@auroraHooks/use_http_api';
|
|
5
|
+
import { useTranslation } from 'react-i18next';
|
|
6
|
+
import { useModalsContext } from '@auroraComponents/modal/hooks/use_modals_context';
|
|
7
|
+
import { IMAGE_PICKER_EXTENSIONS } from '@auroraComponents/image_picker/image_picker_constants';
|
|
8
|
+
import { ImagePicker } from '@auroraComponents/image_picker/image_picker';
|
|
9
|
+
import { Loader } from '@auroraComponents/loader/loader';
|
|
10
|
+
import { Modal } from '@auroraComponents/modal/components/modal/modal';
|
|
11
|
+
import './xhr_image_picker_types';
|
|
12
|
+
import '@auroraComponents/image_picker/image_picker_types';
|
|
13
|
+
import { ImageEditLineIcon } from '@auroraAssets/icons/image_edit_icon';
|
|
14
|
+
export const XhrImagePicker = ({ id, url, name, onUploaded, initialFile, errors, onError, onChange, onImageSizeUpdated, allowedExtensions = [
|
|
15
|
+
IMAGE_PICKER_EXTENSIONS.WEBP,
|
|
16
|
+
IMAGE_PICKER_EXTENSIONS.JPG,
|
|
17
|
+
IMAGE_PICKER_EXTENSIONS.PNG,
|
|
18
|
+
IMAGE_PICKER_EXTENSIONS.GIF,
|
|
19
|
+
IMAGE_PICKER_EXTENSIONS.SVG,
|
|
20
|
+
IMAGE_PICKER_EXTENSIONS.JPEG
|
|
21
|
+
], ImageEditor }) => {
|
|
22
|
+
const [t] = useTranslation();
|
|
23
|
+
const httpApi = useHttpApi();
|
|
24
|
+
const pendingRequestRef = React.useRef();
|
|
25
|
+
const initialImageFile = useRef();
|
|
26
|
+
const { showModal, hideModal } = useModalsContext();
|
|
27
|
+
const modalId = `image-picker-editor-${id}`;
|
|
28
|
+
const [initialImage, setInitialImage] = useState();
|
|
29
|
+
const [image, setImage] = useState();
|
|
30
|
+
const [imageEditorSrc, setImageEditorSrc] = useState('');
|
|
31
|
+
const [imageEditorResult, setImageEditorResult] = useState();
|
|
32
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
33
|
+
const [imageExtenstion, setImageExtenstion] = useState();
|
|
34
|
+
const handleControlChange = async (file) => {
|
|
35
|
+
const { fileList, fileAsDataUrl } = file;
|
|
36
|
+
fileList && setImage(fileList[0]);
|
|
37
|
+
onChange?.({ fileList, fileAsDataUrl });
|
|
38
|
+
if (!fileList || !fileList.length)
|
|
39
|
+
return;
|
|
40
|
+
if (pendingRequestRef.current) {
|
|
41
|
+
pendingRequestRef.current();
|
|
42
|
+
pendingRequestRef.current = undefined;
|
|
43
|
+
}
|
|
44
|
+
setIsLoading(true);
|
|
45
|
+
const { response, cancelRequest } = httpApi.fetch({
|
|
46
|
+
url,
|
|
47
|
+
method: REQUEST_TYPES.post,
|
|
48
|
+
data: fileList[0]
|
|
49
|
+
});
|
|
50
|
+
pendingRequestRef.current = cancelRequest;
|
|
51
|
+
const responseObject = await response.finally(() => setIsLoading(false));
|
|
52
|
+
onUploaded?.({
|
|
53
|
+
fileList,
|
|
54
|
+
dataUrl: fileAsDataUrl,
|
|
55
|
+
imageId: responseObject.data.imageId
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
useEffect(() => {
|
|
59
|
+
if (initialFile) {
|
|
60
|
+
setImageExtenstion(FileUtils.getFileExtension(initialFile?.fileName));
|
|
61
|
+
initialImageFile.current = initialFile;
|
|
62
|
+
const setFileFromUrl = async (fileData) => {
|
|
63
|
+
const response = await fetch(fileData.fileUrl);
|
|
64
|
+
const data = await response.blob();
|
|
65
|
+
const file = new File([data], fileData.fileName);
|
|
66
|
+
setInitialImage(file);
|
|
67
|
+
};
|
|
68
|
+
if (!initialImageFile.current)
|
|
69
|
+
return;
|
|
70
|
+
setFileFromUrl(initialImageFile.current);
|
|
71
|
+
}
|
|
72
|
+
}, []);
|
|
73
|
+
useEffect(() => {
|
|
74
|
+
image && setImageExtenstion(FileUtils.getFileExtension(image?.name));
|
|
75
|
+
return () => pendingRequestRef.current?.();
|
|
76
|
+
}, [image]);
|
|
77
|
+
useEffect(() => {
|
|
78
|
+
const src = image ?? initialImage;
|
|
79
|
+
setImageEditorSrc(src ?? '');
|
|
80
|
+
}, [image, initialImage, isLoading]);
|
|
81
|
+
const renderImageEditor = (defaultProps) => {
|
|
82
|
+
return ImageEditor ? (React.createElement("div", null,
|
|
83
|
+
React.createElement(ImageEditor, { ...defaultProps }))) : null;
|
|
84
|
+
};
|
|
85
|
+
return (React.createElement(React.Fragment, null,
|
|
86
|
+
React.createElement("div", null,
|
|
87
|
+
React.createElement(ImagePicker, { id: id, name: name, onChange: handleControlChange, onError: onError, errors: errors, allowedExtensions: allowedExtensions, initialFile: initialImageFile.current, onImageSizeUpdated: onImageSizeUpdated, topButtons: !!ImageEditor &&
|
|
88
|
+
imageExtenstion !== 'svg' && (React.createElement("button", { onClick: () => showModal(modalId), type: "button", className: " aurora-absolute aurora-top-2 aurora-right-2 aurora-flex aurora-items-center aurora-gap-1 aurora-border aurora-rounded-full aurora-px-3 aurora-py-[6px] aurora-bg" },
|
|
89
|
+
React.createElement(ImageEditLineIcon, { className: "aurora-w-4 aurora-h-4 aurora-fill" }),
|
|
90
|
+
React.createElement("span", { className: "aurora-text-xs aurora-text aurora-font-semibold" }, `${t('Edit')}`))), editedImageResult: imageEditorResult }),
|
|
91
|
+
isLoading && (React.createElement("div", null,
|
|
92
|
+
React.createElement(Loader, null),
|
|
93
|
+
React.createElement("span", null, `${t('Transfering file...')}`)))),
|
|
94
|
+
!!ImageEditor && (React.createElement(Modal, { name: modalId, header: t('Edit image'), width: "l" }, renderImageEditor({
|
|
95
|
+
src: imageEditorSrc,
|
|
96
|
+
onEditionDone: (result) => {
|
|
97
|
+
hideModal(modalId);
|
|
98
|
+
setImageEditorResult(result);
|
|
99
|
+
}
|
|
100
|
+
})))));
|
|
101
|
+
};
|
|
102
|
+
//# sourceMappingURL=xhr_image_picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xhr_image_picker.js","sourceRoot":"","sources":["../../../../../../../src/components/xhr_image_picker/xhr_image_picker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { IImagePicker } from "../image_picker/image_picker_types";
|
|
3
|
+
export interface IXhrImagePickerProps extends Omit<IImagePicker, 'topButtons'> {
|
|
4
|
+
url: string;
|
|
5
|
+
onUploaded?: (data: TUploadedImageData) => void;
|
|
6
|
+
onUploadError?: Function;
|
|
7
|
+
ImageEditor?: React.FunctionComponent<IImageEditorProps>;
|
|
8
|
+
}
|
|
9
|
+
export interface IImageEditorProps {
|
|
10
|
+
src?: File | string;
|
|
11
|
+
onEditionDone?: (result: File | undefined) => void;
|
|
12
|
+
}
|
|
13
|
+
export declare type TUploadedImageData = {
|
|
14
|
+
fileList: FileList;
|
|
15
|
+
dataUrl: string | ArrayBuffer | null | undefined;
|
|
16
|
+
imageId: string;
|
|
17
|
+
};
|
package/build/esm/packages/aurora/src/components/xhr_image_picker/xhr_image_picker_types.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xhr_image_picker_types.js","sourceRoot":"","sources":["../../../../../../../src/components/xhr_image_picker/xhr_image_picker_types.ts"],"names":[],"mappings":"AAAA,OAA6B,mDAAmD,CAAC"}
|
|
@@ -18,7 +18,7 @@ export declare const CSS_ICON_COLOR_TOKENS: {
|
|
|
18
18
|
};
|
|
19
19
|
export declare const CSS_ICON_COLOR_TOKENS_VALUES: {
|
|
20
20
|
readonly base: "#03081C";
|
|
21
|
-
readonly subtle: "#
|
|
21
|
+
readonly subtle: "#9799A2";
|
|
22
22
|
readonly disabled: "#E6E7EB";
|
|
23
23
|
readonly inverse: "#FFFFFF";
|
|
24
24
|
readonly inverseSubtle: "#FFFFFF33";
|
|
@@ -2,7 +2,7 @@ import { CSS_COLOR_TOKENS_VALUES } from './css_color_tokens_values.js';
|
|
|
2
2
|
|
|
3
3
|
var CSS_ICON_COLOR_TOKENS_VALUES = {
|
|
4
4
|
base: CSS_COLOR_TOKENS_VALUES.neutral900,
|
|
5
|
-
subtle: CSS_COLOR_TOKENS_VALUES.
|
|
5
|
+
subtle: CSS_COLOR_TOKENS_VALUES.neutral600,
|
|
6
6
|
disabled: CSS_COLOR_TOKENS_VALUES.neutral200,
|
|
7
7
|
inverse: CSS_COLOR_TOKENS_VALUES.neutral0,
|
|
8
8
|
inverseSubtle: CSS_COLOR_TOKENS_VALUES.lightTransparent20,
|
|
@@ -91,3 +91,4 @@ export { ColorPickerWithContext } from "./components/color_picker/color_picker";
|
|
|
91
91
|
export { ColorPickerControl } from './components/controls/color_picker_control/color_picker_control';
|
|
92
92
|
export { Checkbox } from "./components/checkbox/checkbox";
|
|
93
93
|
export { RadioGroup } from "./components/radio_group/radio_group";
|
|
94
|
+
export { ControlsGroup } from "./components/controls/controls_group/controls_group";
|
|
@@ -88,4 +88,5 @@ export { ColorPickerWithContext } from './components/color_picker/color_picker.j
|
|
|
88
88
|
export { ColorPickerControl } from './components/controls/color_picker_control/color_picker_control.js';
|
|
89
89
|
export { Checkbox } from './components/checkbox/checkbox.js';
|
|
90
90
|
export { RadioGroup } from './components/radio_group/radio_group.js';
|
|
91
|
+
export { ControlsGroup } from './components/controls/controls_group/controls_group.js';
|
|
91
92
|
//# sourceMappingURL=index.js.map
|
|
@@ -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;"}
|
|
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;"}
|