@mantine/dropzone 5.0.0-alpha.10 → 5.0.0-alpha.13
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/cjs/Dropzone.context.js +11 -0
- package/cjs/Dropzone.context.js.map +1 -0
- package/cjs/{Dropzone/Dropzone.js → Dropzone.js} +67 -13
- package/cjs/Dropzone.js.map +1 -0
- package/cjs/{Dropzone/Dropzone.styles.js → Dropzone.styles.js} +23 -19
- package/cjs/Dropzone.styles.js.map +1 -0
- package/cjs/DropzoneFullScreen.js +135 -0
- package/cjs/DropzoneFullScreen.js.map +1 -0
- package/cjs/DropzoneFullScreen.styles.js +25 -0
- package/cjs/DropzoneFullScreen.styles.js.map +1 -0
- package/cjs/DropzoneStatus.js +43 -0
- package/cjs/DropzoneStatus.js.map +1 -0
- package/cjs/index.js +5 -5
- package/cjs/index.js.map +1 -1
- package/esm/Dropzone.context.js +6 -0
- package/esm/Dropzone.context.js.map +1 -0
- package/esm/{Dropzone/Dropzone.js → Dropzone.js} +66 -14
- package/esm/Dropzone.js.map +1 -0
- package/esm/{Dropzone/Dropzone.styles.js → Dropzone.styles.js} +23 -19
- package/esm/Dropzone.styles.js.map +1 -0
- package/esm/DropzoneFullScreen.js +127 -0
- package/esm/DropzoneFullScreen.js.map +1 -0
- package/esm/DropzoneFullScreen.styles.js +21 -0
- package/esm/DropzoneFullScreen.styles.js.map +1 -0
- package/esm/DropzoneStatus.js +37 -0
- package/esm/DropzoneStatus.js.map +1 -0
- package/esm/index.js +7 -2
- package/esm/index.js.map +1 -1
- package/lib/Dropzone.context.d.ts +10 -0
- package/lib/Dropzone.context.d.ts.map +1 -0
- package/lib/Dropzone.d.ts +67 -0
- package/lib/Dropzone.d.ts.map +1 -0
- package/lib/{Dropzone/Dropzone.styles.d.ts → Dropzone.styles.d.ts} +2 -2
- package/lib/Dropzone.styles.d.ts.map +1 -0
- package/lib/DropzoneFullScreen.d.ts +16 -0
- package/lib/DropzoneFullScreen.d.ts.map +1 -0
- package/lib/DropzoneFullScreen.styles.d.ts +7 -0
- package/lib/DropzoneFullScreen.styles.d.ts.map +1 -0
- package/lib/DropzoneStatus.d.ts +20 -0
- package/lib/DropzoneStatus.d.ts.map +1 -0
- package/lib/index.d.ts +19 -2
- package/lib/index.d.ts.map +1 -1
- package/package.json +4 -3
- package/cjs/Dropzone/Dropzone.js.map +0 -1
- package/cjs/Dropzone/Dropzone.styles.js.map +0 -1
- package/cjs/FullScreenDropzone/FullScreenDropzone.js +0 -150
- package/cjs/FullScreenDropzone/FullScreenDropzone.js.map +0 -1
- package/cjs/FullScreenDropzone/FullscreenDropzone.styles.js +0 -71
- package/cjs/FullScreenDropzone/FullscreenDropzone.styles.js.map +0 -1
- package/esm/Dropzone/Dropzone.js.map +0 -1
- package/esm/Dropzone/Dropzone.styles.js.map +0 -1
- package/esm/FullScreenDropzone/FullScreenDropzone.js +0 -142
- package/esm/FullScreenDropzone/FullScreenDropzone.js.map +0 -1
- package/esm/FullScreenDropzone/FullscreenDropzone.styles.js +0 -67
- package/esm/FullScreenDropzone/FullscreenDropzone.styles.js.map +0 -1
- package/lib/Dropzone/Dropzone.d.ts +0 -39
- package/lib/Dropzone/Dropzone.d.ts.map +0 -1
- package/lib/Dropzone/Dropzone.styles.d.ts.map +0 -1
- package/lib/Dropzone/index.d.ts +0 -4
- package/lib/Dropzone/index.d.ts.map +0 -1
- package/lib/FullScreenDropzone/FullScreenDropzone.d.ts +0 -28
- package/lib/FullScreenDropzone/FullScreenDropzone.d.ts.map +0 -1
- package/lib/FullScreenDropzone/FullscreenDropzone.styles.d.ts +0 -15
- package/lib/FullScreenDropzone/FullscreenDropzone.styles.d.ts.map +0 -1
- package/lib/FullScreenDropzone/index.d.ts +0 -4
- package/lib/FullScreenDropzone/index.d.ts.map +0 -1
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var React = require('react');
|
|
6
|
-
var core = require('@mantine/core');
|
|
7
|
-
var hooks = require('@mantine/hooks');
|
|
8
|
-
var FullscreenDropzone_styles = require('./FullscreenDropzone.styles.js');
|
|
9
|
-
|
|
10
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
|
|
11
|
-
|
|
12
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
13
|
-
|
|
14
|
-
var __defProp = Object.defineProperty;
|
|
15
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
16
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
17
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
18
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
19
|
-
var __spreadValues = (a, b) => {
|
|
20
|
-
for (var prop in b || (b = {}))
|
|
21
|
-
if (__hasOwnProp.call(b, prop))
|
|
22
|
-
__defNormalProp(a, prop, b[prop]);
|
|
23
|
-
if (__getOwnPropSymbols)
|
|
24
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
25
|
-
if (__propIsEnum.call(b, prop))
|
|
26
|
-
__defNormalProp(a, prop, b[prop]);
|
|
27
|
-
}
|
|
28
|
-
return a;
|
|
29
|
-
};
|
|
30
|
-
var __objRest = (source, exclude) => {
|
|
31
|
-
var target = {};
|
|
32
|
-
for (var prop in source)
|
|
33
|
-
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
34
|
-
target[prop] = source[prop];
|
|
35
|
-
if (source != null && __getOwnPropSymbols)
|
|
36
|
-
for (var prop of __getOwnPropSymbols(source)) {
|
|
37
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
38
|
-
target[prop] = source[prop];
|
|
39
|
-
}
|
|
40
|
-
return target;
|
|
41
|
-
};
|
|
42
|
-
function isVisible(event) {
|
|
43
|
-
for (let i = 0; i < event.dataTransfer.items.length; i += 1) {
|
|
44
|
-
if (event.dataTransfer.items[i].kind !== "file") {
|
|
45
|
-
return false;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return true;
|
|
49
|
-
}
|
|
50
|
-
function isValidDrop(event, mime) {
|
|
51
|
-
var _a;
|
|
52
|
-
const items = (_a = event == null ? void 0 : event.dataTransfer) == null ? void 0 : _a.items;
|
|
53
|
-
if (mime.includes("*")) {
|
|
54
|
-
return true;
|
|
55
|
-
}
|
|
56
|
-
for (let i = 0; i < (items == null ? void 0 : items.length); i += 1) {
|
|
57
|
-
if (!mime.includes(items[i].type)) {
|
|
58
|
-
return false;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return true;
|
|
62
|
-
}
|
|
63
|
-
const defaultProps = {
|
|
64
|
-
offset: "xl",
|
|
65
|
-
padding: "md",
|
|
66
|
-
accept: ["*"],
|
|
67
|
-
zIndex: core.getDefaultZIndex("max")
|
|
68
|
-
};
|
|
69
|
-
function FullScreenDropzone(props) {
|
|
70
|
-
const _a = core.useComponentDefaultProps("FullScreenDropzone", defaultProps, props), {
|
|
71
|
-
className,
|
|
72
|
-
style,
|
|
73
|
-
offset,
|
|
74
|
-
padding,
|
|
75
|
-
radius,
|
|
76
|
-
classNames,
|
|
77
|
-
styles,
|
|
78
|
-
disabled,
|
|
79
|
-
accept,
|
|
80
|
-
zIndex,
|
|
81
|
-
onDrop,
|
|
82
|
-
children,
|
|
83
|
-
unstyled
|
|
84
|
-
} = _a, others = __objRest(_a, [
|
|
85
|
-
"className",
|
|
86
|
-
"style",
|
|
87
|
-
"offset",
|
|
88
|
-
"padding",
|
|
89
|
-
"radius",
|
|
90
|
-
"classNames",
|
|
91
|
-
"styles",
|
|
92
|
-
"disabled",
|
|
93
|
-
"accept",
|
|
94
|
-
"zIndex",
|
|
95
|
-
"onDrop",
|
|
96
|
-
"children",
|
|
97
|
-
"unstyled"
|
|
98
|
-
]);
|
|
99
|
-
const { classes, cx } = FullscreenDropzone_styles['default']({ offset, padding, radius, zIndex }, { classNames, styles, unstyled, name: "FullScreenDropzone" });
|
|
100
|
-
const [visible, setVisible] = React.useState(false);
|
|
101
|
-
const [error, setError] = React.useState(false);
|
|
102
|
-
const handleDragOver = (event) => {
|
|
103
|
-
event.preventDefault();
|
|
104
|
-
setError(!isValidDrop(event, accept));
|
|
105
|
-
setVisible(isVisible(event));
|
|
106
|
-
};
|
|
107
|
-
const handleDragLeave = (event) => {
|
|
108
|
-
event.preventDefault();
|
|
109
|
-
setVisible(false);
|
|
110
|
-
};
|
|
111
|
-
const handleDrop = (event) => {
|
|
112
|
-
event.stopPropagation();
|
|
113
|
-
event.preventDefault();
|
|
114
|
-
setVisible(false);
|
|
115
|
-
if (isValidDrop(event, accept)) {
|
|
116
|
-
onDrop(Array.from(event.dataTransfer.files));
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
hooks.useIsomorphicEffect(() => {
|
|
120
|
-
if (!disabled) {
|
|
121
|
-
document.addEventListener("dragover", handleDragOver, false);
|
|
122
|
-
document.addEventListener("dragleave", handleDragLeave, false);
|
|
123
|
-
document.addEventListener("drop", handleDrop, false);
|
|
124
|
-
return () => {
|
|
125
|
-
document.removeEventListener("dragover", handleDragOver, false);
|
|
126
|
-
document.removeEventListener("dragleave", handleDragLeave, false);
|
|
127
|
-
document.removeEventListener("drop", handleDrop, false);
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
return void 0;
|
|
131
|
-
}, [disabled]);
|
|
132
|
-
return /* @__PURE__ */ React__default.createElement(core.Portal, null, /* @__PURE__ */ React__default.createElement(core.Transition, {
|
|
133
|
-
transition: "fade",
|
|
134
|
-
duration: 200,
|
|
135
|
-
timingFunction: "ease",
|
|
136
|
-
mounted: visible && !disabled
|
|
137
|
-
}, (transitionStyles) => /* @__PURE__ */ React__default.createElement(core.Box, __spreadValues({
|
|
138
|
-
style: __spreadValues(__spreadValues({}, style), transitionStyles),
|
|
139
|
-
className: cx(classes.root, className)
|
|
140
|
-
}, others), /* @__PURE__ */ React__default.createElement("div", {
|
|
141
|
-
className: cx(classes.dropzone, {
|
|
142
|
-
[classes.active]: visible && !error,
|
|
143
|
-
[classes.reject]: error
|
|
144
|
-
}, className)
|
|
145
|
-
}, children({ accepted: visible && !error, rejected: error })))));
|
|
146
|
-
}
|
|
147
|
-
FullScreenDropzone.displayName = "@mantine/dropzone/FullScreenDropzone";
|
|
148
|
-
|
|
149
|
-
exports.FullScreenDropzone = FullScreenDropzone;
|
|
150
|
-
//# sourceMappingURL=FullScreenDropzone.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FullScreenDropzone.js","sources":["../../src/FullScreenDropzone/FullScreenDropzone.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Portal,\n Transition,\n MantineNumberSize,\n Selectors,\n DefaultProps,\n Box,\n useComponentDefaultProps,\n getDefaultZIndex,\n} from '@mantine/core';\nimport { useIsomorphicEffect } from '@mantine/hooks';\nimport { DropzoneStatus } from '../Dropzone';\nimport useStyles from './FullscreenDropzone.styles';\n\nexport type FullScreenDropzoneStylesNames = Selectors<typeof useStyles>;\n\nexport interface FullScreenDropzoneProps\n extends DefaultProps<FullScreenDropzoneStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onDrop' | 'children'> {\n /** Space between dropzone and viewport edges */\n offset?: MantineNumberSize;\n\n /** Overlay z-index */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Disable dropzone */\n disabled?: boolean;\n\n /** Accepted mime types */\n accept: string[];\n\n /** Dropzone padding from theme or number to set padding in px */\n padding?: MantineNumberSize;\n\n /** Dropzone radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Called when files are dropped to document */\n onDrop(files: File[]): void;\n\n /** Render children based on dragging state */\n children(status: DropzoneStatus): React.ReactNode;\n}\n\nfunction isVisible(event: DragEvent) {\n for (let i = 0; i < event.dataTransfer.items.length; i += 1) {\n if (event.dataTransfer.items[i].kind !== 'file') {\n return false;\n }\n }\n\n return true;\n}\n\nfunction isValidDrop(event: DragEvent, mime: string[]) {\n const items = event?.dataTransfer?.items;\n\n if (mime.includes('*')) {\n return true;\n }\n\n for (let i = 0; i < items?.length; i += 1) {\n if (!mime.includes(items[i].type)) {\n return false;\n }\n }\n\n return true;\n}\n\nconst defaultProps: Partial<FullScreenDropzoneProps> = {\n offset: 'xl',\n padding: 'md',\n accept: ['*'],\n zIndex: getDefaultZIndex('max'),\n};\n\nexport function FullScreenDropzone(props: FullScreenDropzoneProps) {\n const {\n className,\n style,\n offset,\n padding,\n radius,\n classNames,\n styles,\n disabled,\n accept,\n zIndex,\n onDrop,\n children,\n unstyled,\n ...others\n } = useComponentDefaultProps('FullScreenDropzone', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { offset, padding, radius, zIndex },\n { classNames, styles, unstyled, name: 'FullScreenDropzone' }\n );\n const [visible, setVisible] = useState(false);\n const [error, setError] = useState(false);\n\n const handleDragOver = (event: DragEvent) => {\n event.preventDefault();\n setError(!isValidDrop(event, accept));\n setVisible(isVisible(event));\n };\n\n const handleDragLeave = (event: DragEvent) => {\n event.preventDefault();\n setVisible(false);\n };\n\n const handleDrop = (event: DragEvent) => {\n event.stopPropagation();\n event.preventDefault();\n setVisible(false);\n if (isValidDrop(event, accept)) {\n onDrop(Array.from(event.dataTransfer.files));\n }\n };\n\n useIsomorphicEffect(() => {\n if (!disabled) {\n document.addEventListener('dragover', handleDragOver, false);\n document.addEventListener('dragleave', handleDragLeave, false);\n document.addEventListener('drop', handleDrop, false);\n\n return () => {\n document.removeEventListener('dragover', handleDragOver, false);\n document.removeEventListener('dragleave', handleDragLeave, false);\n document.removeEventListener('drop', handleDrop, false);\n };\n }\n\n return undefined;\n }, [disabled]);\n\n return (\n <Portal>\n <Transition\n transition=\"fade\"\n duration={200}\n timingFunction=\"ease\"\n mounted={visible && !disabled}\n >\n {(transitionStyles) => (\n <Box\n style={{ ...style, ...transitionStyles }}\n className={cx(classes.root, className)}\n {...others}\n >\n <div\n className={cx(\n classes.dropzone,\n {\n [classes.active]: visible && !error,\n [classes.reject]: error,\n },\n className\n )}\n >\n {children({ accepted: visible && !error, rejected: error })}\n </div>\n </Box>\n )}\n </Transition>\n </Portal>\n );\n}\n\nFullScreenDropzone.displayName = '@mantine/dropzone/FullScreenDropzone';\n"],"names":["getDefaultZIndex","useComponentDefaultProps","useStyles","useState","useIsomorphicEffect","React","Portal","Transition","Box"],"mappings":"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"}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var core = require('@mantine/core');
|
|
6
|
-
|
|
7
|
-
var __defProp = Object.defineProperty;
|
|
8
|
-
var __defProps = Object.defineProperties;
|
|
9
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
10
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
11
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
13
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
14
|
-
var __spreadValues = (a, b) => {
|
|
15
|
-
for (var prop in b || (b = {}))
|
|
16
|
-
if (__hasOwnProp.call(b, prop))
|
|
17
|
-
__defNormalProp(a, prop, b[prop]);
|
|
18
|
-
if (__getOwnPropSymbols)
|
|
19
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
20
|
-
if (__propIsEnum.call(b, prop))
|
|
21
|
-
__defNormalProp(a, prop, b[prop]);
|
|
22
|
-
}
|
|
23
|
-
return a;
|
|
24
|
-
};
|
|
25
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
26
|
-
var useStyles = core.createStyles((theme, { offset, padding, radius, zIndex }) => {
|
|
27
|
-
const spacing = theme.fn.size({ size: offset, sizes: theme.spacing });
|
|
28
|
-
const rejected = theme.fn.variant({ color: "red", variant: "light" });
|
|
29
|
-
const accepted = theme.fn.variant({ color: theme.primaryColor, variant: "light" });
|
|
30
|
-
return {
|
|
31
|
-
root: {
|
|
32
|
-
position: "fixed",
|
|
33
|
-
zIndex,
|
|
34
|
-
top: 0,
|
|
35
|
-
left: 0,
|
|
36
|
-
right: 0,
|
|
37
|
-
bottom: 0,
|
|
38
|
-
backgroundColor: theme.colorScheme === "dark" ? theme.colors.dark[7] : theme.white,
|
|
39
|
-
padding: spacing
|
|
40
|
-
},
|
|
41
|
-
dropzone: __spreadProps(__spreadValues({}, theme.fn.fontStyles()), {
|
|
42
|
-
boxSizing: "border-box",
|
|
43
|
-
backgroundColor: theme.colorScheme === "dark" ? theme.colors.dark[6] : theme.white,
|
|
44
|
-
border: `2px dashed ${theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4]}`,
|
|
45
|
-
padding: theme.fn.size({ size: padding, sizes: theme.spacing }),
|
|
46
|
-
borderRadius: theme.fn.radius(radius),
|
|
47
|
-
cursor: "pointer",
|
|
48
|
-
userSelect: "none",
|
|
49
|
-
transition: "background-color 150ms ease",
|
|
50
|
-
position: "relative",
|
|
51
|
-
height: `calc(100vh - ${spacing * 2}px)`
|
|
52
|
-
}),
|
|
53
|
-
active: {
|
|
54
|
-
backgroundColor: theme.colorScheme === "dark" ? accepted.background : theme.colors[theme.primaryColor][0],
|
|
55
|
-
borderColor: theme.colorScheme === "dark" ? accepted.border : theme.colors[theme.primaryColor][4],
|
|
56
|
-
"&:hover": {
|
|
57
|
-
backgroundColor: theme.colorScheme === "dark" ? accepted.background : theme.colors[theme.primaryColor][0]
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
reject: {
|
|
61
|
-
backgroundColor: theme.colorScheme === "dark" ? rejected.background : theme.colors.red[0],
|
|
62
|
-
borderColor: theme.colorScheme === "dark" ? rejected.border : theme.colors.red[4],
|
|
63
|
-
"&:hover": {
|
|
64
|
-
backgroundColor: theme.colorScheme === "dark" ? rejected.background : theme.colors.red[0]
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
};
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
exports.default = useStyles;
|
|
71
|
-
//# sourceMappingURL=FullscreenDropzone.styles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FullscreenDropzone.styles.js","sources":["../../src/FullScreenDropzone/FullscreenDropzone.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize } from '@mantine/core';\n\nexport interface FullScreenDropzoneStylesParams {\n offset: MantineNumberSize;\n padding: MantineNumberSize;\n radius: MantineNumberSize;\n zIndex: React.CSSProperties['zIndex'];\n}\n\nexport default createStyles(\n (theme, { offset, padding, radius, zIndex }: FullScreenDropzoneStylesParams) => {\n const spacing = theme.fn.size({ size: offset, sizes: theme.spacing });\n const rejected = theme.fn.variant({ color: 'red', variant: 'light' });\n const accepted = theme.fn.variant({ color: theme.primaryColor, variant: 'light' });\n\n return {\n root: {\n position: 'fixed',\n zIndex,\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n padding: spacing,\n },\n\n dropzone: {\n ...theme.fn.fontStyles(),\n boxSizing: 'border-box',\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.white,\n border: `2px dashed ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n padding: theme.fn.size({ size: padding, sizes: theme.spacing }),\n borderRadius: theme.fn.radius(radius),\n cursor: 'pointer',\n userSelect: 'none',\n transition: 'background-color 150ms ease',\n position: 'relative',\n height: `calc(100vh - ${spacing * 2}px)`,\n },\n\n active: {\n backgroundColor:\n theme.colorScheme === 'dark' ? accepted.background : theme.colors[theme.primaryColor][0],\n borderColor:\n theme.colorScheme === 'dark' ? accepted.border : theme.colors[theme.primaryColor][4],\n\n '&:hover': {\n backgroundColor:\n theme.colorScheme === 'dark'\n ? accepted.background\n : theme.colors[theme.primaryColor][0],\n },\n },\n\n reject: {\n backgroundColor: theme.colorScheme === 'dark' ? rejected.background : theme.colors.red[0],\n borderColor: theme.colorScheme === 'dark' ? rejected.border : theme.colors.red[4],\n\n '&:hover': {\n backgroundColor: theme.colorScheme === 'dark' ? rejected.background : theme.colors.red[0],\n },\n },\n };\n }\n);\n"],"names":["createStyles"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Dropzone.js","sources":["../../src/Dropzone/Dropzone.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useDropzone, FileRejection } from 'react-dropzone';\nimport {\n DefaultProps,\n Selectors,\n MantineNumberSize,\n LoadingOverlay,\n Box,\n useComponentDefaultProps,\n} from '@mantine/core';\nimport { assignRef } from '@mantine/hooks';\nimport useStyles from './Dropzone.styles';\n\nexport type DropzoneStylesNames = Selectors<typeof useStyles>;\n\nexport interface DropzoneStatus {\n accepted: boolean;\n rejected: boolean;\n}\n\nexport interface DropzoneProps extends DefaultProps<DropzoneStylesNames> {\n /** Padding from theme.spacing, or number to set padding in px */\n padding?: MantineNumberSize;\n\n /** Border radius from theme.radius or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Render children based on dragging state */\n children(status: DropzoneStatus): React.ReactNode;\n\n /** Disable files capturing */\n disabled?: boolean;\n\n /** Called when files are dropped into dropzone */\n onDrop(files: File[]): void;\n\n /** Called when selected files don't meet file restrictions */\n onReject?(fileRejections: FileRejection[]): void;\n\n /** Display loading overlay over dropzone */\n loading?: boolean;\n\n /** File types to accept */\n accept?: { [key: string]: string[] } | string[];\n\n /** Get open function as ref */\n openRef?: React.ForwardedRef<() => void | undefined>;\n\n /** Allow selection of multiple files */\n multiple?: boolean;\n\n /** Set maximum file size in bytes */\n maxSize?: number;\n\n /** Name of the form control. Submitted with the form as part of a name/value pair. */\n name?: string;\n}\n\nconst defaultProps: Partial<DropzoneProps> = {\n padding: 'md',\n loading: false,\n multiple: true,\n maxSize: Infinity,\n};\n\nexport const Dropzone = forwardRef<HTMLDivElement, DropzoneProps>((props: DropzoneProps, ref) => {\n const {\n className,\n padding,\n radius,\n disabled,\n classNames,\n styles,\n loading,\n multiple,\n maxSize,\n accept,\n children,\n onDrop,\n onReject,\n openRef,\n name,\n unstyled,\n ...others\n } = useComponentDefaultProps('Dropzone', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { radius, padding },\n { classNames, styles, unstyled, name: 'Dropzone' }\n );\n\n const { getRootProps, getInputProps, isDragAccept, isDragReject, open } = useDropzone({\n onDropAccepted: onDrop,\n onDropRejected: onReject,\n disabled: disabled || loading,\n accept: Array.isArray(accept) ? accept.reduce((r, key) => ({ ...r, [key]: [] }), {}) : accept,\n multiple,\n maxSize,\n });\n\n assignRef(openRef, open);\n\n return (\n <Box\n {...others}\n {...getRootProps({ ref })}\n className={cx(\n classes.root,\n {\n [classes.active]: isDragAccept,\n [classes.reject]: isDragReject,\n [classes.loading]: loading,\n },\n className\n )}\n >\n <LoadingOverlay visible={loading} radius={radius} unstyled={unstyled} />\n <input {...getInputProps()} name={name} />\n {children({ accepted: isDragAccept, rejected: isDragReject })}\n </Box>\n );\n});\n\nDropzone.displayName = '@mantine/dropzone/Dropzone';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Dropzone.styles.js","sources":["../../src/Dropzone/Dropzone.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize } from '@mantine/core';\n\nexport interface DropzoneStylesParams {\n padding: MantineNumberSize;\n radius: MantineNumberSize;\n}\n\nexport default createStyles((theme, { padding, radius }: DropzoneStylesParams) => {\n const rejected = theme.fn.variant({ color: 'red', variant: 'light' });\n const accepted = theme.fn.variant({ color: theme.primaryColor, variant: 'light' });\n\n return {\n root: {\n ...theme.fn.fontStyles(),\n ...theme.fn.focusStyles(),\n boxSizing: 'border-box',\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.white,\n border: `2px dashed ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n padding: theme.fn.size({ size: padding, sizes: theme.spacing }),\n borderRadius: theme.fn.radius(radius),\n cursor: 'pointer',\n userSelect: 'none',\n transition: 'background-color 150ms ease',\n position: 'relative',\n\n '&:hover': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[5] : theme.colors.gray[0],\n },\n },\n\n loading: {\n cursor: 'default',\n\n '&:hover': {\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n },\n },\n\n active: {\n backgroundColor:\n theme.colorScheme === 'dark' ? accepted.background : theme.colors[theme.primaryColor][0],\n borderColor:\n theme.colorScheme === 'dark' ? accepted.border : theme.colors[theme.primaryColor][4],\n\n '&:hover': {\n backgroundColor:\n theme.colorScheme === 'dark' ? accepted.background : theme.colors[theme.primaryColor][0],\n },\n },\n\n reject: {\n backgroundColor: theme.colorScheme === 'dark' ? rejected.background : theme.colors.red[0],\n borderColor: theme.colorScheme === 'dark' ? rejected.border : theme.colors.red[4],\n\n '&:hover': {\n backgroundColor: theme.colorScheme === 'dark' ? rejected.background : theme.colors.red[0],\n },\n },\n };\n});\n"],"names":[],"mappings":";;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,IAAI,iBAAiB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACzD,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAElE,gBAAe,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AAC5D,EAAE,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACxE,EAAE,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACrF,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,aAAa,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE;AAC3G,MAAM,SAAS,EAAE,YAAY;AAC7B,MAAM,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK;AACxF,MAAM,MAAM,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACxG,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;AACrE,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;AAC3C,MAAM,MAAM,EAAE,SAAS;AACvB,MAAM,UAAU,EAAE,MAAM;AACxB,MAAM,UAAU,EAAE,6BAA6B;AAC/C,MAAM,QAAQ,EAAE,UAAU;AAC1B,MAAM,SAAS,EAAE;AACjB,QAAQ,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AACnG,OAAO;AACP,KAAK,CAAC;AACN,IAAI,OAAO,EAAE;AACb,MAAM,MAAM,EAAE,SAAS;AACvB,MAAM,SAAS,EAAE;AACjB,QAAQ,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK;AAC1F,OAAO;AACP,KAAK;AACL,IAAI,MAAM,EAAE;AACZ,MAAM,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAC/G,MAAM,WAAW,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AACvG,MAAM,SAAS,EAAE;AACjB,QAAQ,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AACjH,OAAO;AACP,KAAK;AACL,IAAI,MAAM,EAAE;AACZ,MAAM,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/F,MAAM,WAAW,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACvF,MAAM,SAAS,EAAE;AACjB,QAAQ,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACjG,OAAO;AACP,KAAK;AACL,GAAG,CAAC;AACJ,CAAC,CAAC;;;;"}
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import React, { useState } from 'react';
|
|
2
|
-
import { getDefaultZIndex, useComponentDefaultProps, Portal, Transition, Box } from '@mantine/core';
|
|
3
|
-
import { useIsomorphicEffect } from '@mantine/hooks';
|
|
4
|
-
import useStyles from './FullscreenDropzone.styles.js';
|
|
5
|
-
|
|
6
|
-
var __defProp = Object.defineProperty;
|
|
7
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
10
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
|
-
var __spreadValues = (a, b) => {
|
|
12
|
-
for (var prop in b || (b = {}))
|
|
13
|
-
if (__hasOwnProp.call(b, prop))
|
|
14
|
-
__defNormalProp(a, prop, b[prop]);
|
|
15
|
-
if (__getOwnPropSymbols)
|
|
16
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
17
|
-
if (__propIsEnum.call(b, prop))
|
|
18
|
-
__defNormalProp(a, prop, b[prop]);
|
|
19
|
-
}
|
|
20
|
-
return a;
|
|
21
|
-
};
|
|
22
|
-
var __objRest = (source, exclude) => {
|
|
23
|
-
var target = {};
|
|
24
|
-
for (var prop in source)
|
|
25
|
-
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
26
|
-
target[prop] = source[prop];
|
|
27
|
-
if (source != null && __getOwnPropSymbols)
|
|
28
|
-
for (var prop of __getOwnPropSymbols(source)) {
|
|
29
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
30
|
-
target[prop] = source[prop];
|
|
31
|
-
}
|
|
32
|
-
return target;
|
|
33
|
-
};
|
|
34
|
-
function isVisible(event) {
|
|
35
|
-
for (let i = 0; i < event.dataTransfer.items.length; i += 1) {
|
|
36
|
-
if (event.dataTransfer.items[i].kind !== "file") {
|
|
37
|
-
return false;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
return true;
|
|
41
|
-
}
|
|
42
|
-
function isValidDrop(event, mime) {
|
|
43
|
-
var _a;
|
|
44
|
-
const items = (_a = event == null ? void 0 : event.dataTransfer) == null ? void 0 : _a.items;
|
|
45
|
-
if (mime.includes("*")) {
|
|
46
|
-
return true;
|
|
47
|
-
}
|
|
48
|
-
for (let i = 0; i < (items == null ? void 0 : items.length); i += 1) {
|
|
49
|
-
if (!mime.includes(items[i].type)) {
|
|
50
|
-
return false;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
return true;
|
|
54
|
-
}
|
|
55
|
-
const defaultProps = {
|
|
56
|
-
offset: "xl",
|
|
57
|
-
padding: "md",
|
|
58
|
-
accept: ["*"],
|
|
59
|
-
zIndex: getDefaultZIndex("max")
|
|
60
|
-
};
|
|
61
|
-
function FullScreenDropzone(props) {
|
|
62
|
-
const _a = useComponentDefaultProps("FullScreenDropzone", defaultProps, props), {
|
|
63
|
-
className,
|
|
64
|
-
style,
|
|
65
|
-
offset,
|
|
66
|
-
padding,
|
|
67
|
-
radius,
|
|
68
|
-
classNames,
|
|
69
|
-
styles,
|
|
70
|
-
disabled,
|
|
71
|
-
accept,
|
|
72
|
-
zIndex,
|
|
73
|
-
onDrop,
|
|
74
|
-
children,
|
|
75
|
-
unstyled
|
|
76
|
-
} = _a, others = __objRest(_a, [
|
|
77
|
-
"className",
|
|
78
|
-
"style",
|
|
79
|
-
"offset",
|
|
80
|
-
"padding",
|
|
81
|
-
"radius",
|
|
82
|
-
"classNames",
|
|
83
|
-
"styles",
|
|
84
|
-
"disabled",
|
|
85
|
-
"accept",
|
|
86
|
-
"zIndex",
|
|
87
|
-
"onDrop",
|
|
88
|
-
"children",
|
|
89
|
-
"unstyled"
|
|
90
|
-
]);
|
|
91
|
-
const { classes, cx } = useStyles({ offset, padding, radius, zIndex }, { classNames, styles, unstyled, name: "FullScreenDropzone" });
|
|
92
|
-
const [visible, setVisible] = useState(false);
|
|
93
|
-
const [error, setError] = useState(false);
|
|
94
|
-
const handleDragOver = (event) => {
|
|
95
|
-
event.preventDefault();
|
|
96
|
-
setError(!isValidDrop(event, accept));
|
|
97
|
-
setVisible(isVisible(event));
|
|
98
|
-
};
|
|
99
|
-
const handleDragLeave = (event) => {
|
|
100
|
-
event.preventDefault();
|
|
101
|
-
setVisible(false);
|
|
102
|
-
};
|
|
103
|
-
const handleDrop = (event) => {
|
|
104
|
-
event.stopPropagation();
|
|
105
|
-
event.preventDefault();
|
|
106
|
-
setVisible(false);
|
|
107
|
-
if (isValidDrop(event, accept)) {
|
|
108
|
-
onDrop(Array.from(event.dataTransfer.files));
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
useIsomorphicEffect(() => {
|
|
112
|
-
if (!disabled) {
|
|
113
|
-
document.addEventListener("dragover", handleDragOver, false);
|
|
114
|
-
document.addEventListener("dragleave", handleDragLeave, false);
|
|
115
|
-
document.addEventListener("drop", handleDrop, false);
|
|
116
|
-
return () => {
|
|
117
|
-
document.removeEventListener("dragover", handleDragOver, false);
|
|
118
|
-
document.removeEventListener("dragleave", handleDragLeave, false);
|
|
119
|
-
document.removeEventListener("drop", handleDrop, false);
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
return void 0;
|
|
123
|
-
}, [disabled]);
|
|
124
|
-
return /* @__PURE__ */ React.createElement(Portal, null, /* @__PURE__ */ React.createElement(Transition, {
|
|
125
|
-
transition: "fade",
|
|
126
|
-
duration: 200,
|
|
127
|
-
timingFunction: "ease",
|
|
128
|
-
mounted: visible && !disabled
|
|
129
|
-
}, (transitionStyles) => /* @__PURE__ */ React.createElement(Box, __spreadValues({
|
|
130
|
-
style: __spreadValues(__spreadValues({}, style), transitionStyles),
|
|
131
|
-
className: cx(classes.root, className)
|
|
132
|
-
}, others), /* @__PURE__ */ React.createElement("div", {
|
|
133
|
-
className: cx(classes.dropzone, {
|
|
134
|
-
[classes.active]: visible && !error,
|
|
135
|
-
[classes.reject]: error
|
|
136
|
-
}, className)
|
|
137
|
-
}, children({ accepted: visible && !error, rejected: error })))));
|
|
138
|
-
}
|
|
139
|
-
FullScreenDropzone.displayName = "@mantine/dropzone/FullScreenDropzone";
|
|
140
|
-
|
|
141
|
-
export { FullScreenDropzone };
|
|
142
|
-
//# sourceMappingURL=FullScreenDropzone.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FullScreenDropzone.js","sources":["../../src/FullScreenDropzone/FullScreenDropzone.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Portal,\n Transition,\n MantineNumberSize,\n Selectors,\n DefaultProps,\n Box,\n useComponentDefaultProps,\n getDefaultZIndex,\n} from '@mantine/core';\nimport { useIsomorphicEffect } from '@mantine/hooks';\nimport { DropzoneStatus } from '../Dropzone';\nimport useStyles from './FullscreenDropzone.styles';\n\nexport type FullScreenDropzoneStylesNames = Selectors<typeof useStyles>;\n\nexport interface FullScreenDropzoneProps\n extends DefaultProps<FullScreenDropzoneStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onDrop' | 'children'> {\n /** Space between dropzone and viewport edges */\n offset?: MantineNumberSize;\n\n /** Overlay z-index */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Disable dropzone */\n disabled?: boolean;\n\n /** Accepted mime types */\n accept: string[];\n\n /** Dropzone padding from theme or number to set padding in px */\n padding?: MantineNumberSize;\n\n /** Dropzone radius from theme or number to set border-radius in px */\n radius?: MantineNumberSize;\n\n /** Called when files are dropped to document */\n onDrop(files: File[]): void;\n\n /** Render children based on dragging state */\n children(status: DropzoneStatus): React.ReactNode;\n}\n\nfunction isVisible(event: DragEvent) {\n for (let i = 0; i < event.dataTransfer.items.length; i += 1) {\n if (event.dataTransfer.items[i].kind !== 'file') {\n return false;\n }\n }\n\n return true;\n}\n\nfunction isValidDrop(event: DragEvent, mime: string[]) {\n const items = event?.dataTransfer?.items;\n\n if (mime.includes('*')) {\n return true;\n }\n\n for (let i = 0; i < items?.length; i += 1) {\n if (!mime.includes(items[i].type)) {\n return false;\n }\n }\n\n return true;\n}\n\nconst defaultProps: Partial<FullScreenDropzoneProps> = {\n offset: 'xl',\n padding: 'md',\n accept: ['*'],\n zIndex: getDefaultZIndex('max'),\n};\n\nexport function FullScreenDropzone(props: FullScreenDropzoneProps) {\n const {\n className,\n style,\n offset,\n padding,\n radius,\n classNames,\n styles,\n disabled,\n accept,\n zIndex,\n onDrop,\n children,\n unstyled,\n ...others\n } = useComponentDefaultProps('FullScreenDropzone', defaultProps, props);\n\n const { classes, cx } = useStyles(\n { offset, padding, radius, zIndex },\n { classNames, styles, unstyled, name: 'FullScreenDropzone' }\n );\n const [visible, setVisible] = useState(false);\n const [error, setError] = useState(false);\n\n const handleDragOver = (event: DragEvent) => {\n event.preventDefault();\n setError(!isValidDrop(event, accept));\n setVisible(isVisible(event));\n };\n\n const handleDragLeave = (event: DragEvent) => {\n event.preventDefault();\n setVisible(false);\n };\n\n const handleDrop = (event: DragEvent) => {\n event.stopPropagation();\n event.preventDefault();\n setVisible(false);\n if (isValidDrop(event, accept)) {\n onDrop(Array.from(event.dataTransfer.files));\n }\n };\n\n useIsomorphicEffect(() => {\n if (!disabled) {\n document.addEventListener('dragover', handleDragOver, false);\n document.addEventListener('dragleave', handleDragLeave, false);\n document.addEventListener('drop', handleDrop, false);\n\n return () => {\n document.removeEventListener('dragover', handleDragOver, false);\n document.removeEventListener('dragleave', handleDragLeave, false);\n document.removeEventListener('drop', handleDrop, false);\n };\n }\n\n return undefined;\n }, [disabled]);\n\n return (\n <Portal>\n <Transition\n transition=\"fade\"\n duration={200}\n timingFunction=\"ease\"\n mounted={visible && !disabled}\n >\n {(transitionStyles) => (\n <Box\n style={{ ...style, ...transitionStyles }}\n className={cx(classes.root, className)}\n {...others}\n >\n <div\n className={cx(\n classes.dropzone,\n {\n [classes.active]: visible && !error,\n [classes.reject]: error,\n },\n className\n )}\n >\n {children({ accepted: visible && !error, rejected: error })}\n </div>\n </Box>\n )}\n </Transition>\n </Portal>\n );\n}\n\nFullScreenDropzone.displayName = '@mantine/dropzone/FullScreenDropzone';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { createStyles } from '@mantine/core';
|
|
2
|
-
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __defProps = Object.defineProperties;
|
|
5
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
9
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
-
var __spreadValues = (a, b) => {
|
|
11
|
-
for (var prop in b || (b = {}))
|
|
12
|
-
if (__hasOwnProp.call(b, prop))
|
|
13
|
-
__defNormalProp(a, prop, b[prop]);
|
|
14
|
-
if (__getOwnPropSymbols)
|
|
15
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
16
|
-
if (__propIsEnum.call(b, prop))
|
|
17
|
-
__defNormalProp(a, prop, b[prop]);
|
|
18
|
-
}
|
|
19
|
-
return a;
|
|
20
|
-
};
|
|
21
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
22
|
-
var useStyles = createStyles((theme, { offset, padding, radius, zIndex }) => {
|
|
23
|
-
const spacing = theme.fn.size({ size: offset, sizes: theme.spacing });
|
|
24
|
-
const rejected = theme.fn.variant({ color: "red", variant: "light" });
|
|
25
|
-
const accepted = theme.fn.variant({ color: theme.primaryColor, variant: "light" });
|
|
26
|
-
return {
|
|
27
|
-
root: {
|
|
28
|
-
position: "fixed",
|
|
29
|
-
zIndex,
|
|
30
|
-
top: 0,
|
|
31
|
-
left: 0,
|
|
32
|
-
right: 0,
|
|
33
|
-
bottom: 0,
|
|
34
|
-
backgroundColor: theme.colorScheme === "dark" ? theme.colors.dark[7] : theme.white,
|
|
35
|
-
padding: spacing
|
|
36
|
-
},
|
|
37
|
-
dropzone: __spreadProps(__spreadValues({}, theme.fn.fontStyles()), {
|
|
38
|
-
boxSizing: "border-box",
|
|
39
|
-
backgroundColor: theme.colorScheme === "dark" ? theme.colors.dark[6] : theme.white,
|
|
40
|
-
border: `2px dashed ${theme.colorScheme === "dark" ? theme.colors.dark[4] : theme.colors.gray[4]}`,
|
|
41
|
-
padding: theme.fn.size({ size: padding, sizes: theme.spacing }),
|
|
42
|
-
borderRadius: theme.fn.radius(radius),
|
|
43
|
-
cursor: "pointer",
|
|
44
|
-
userSelect: "none",
|
|
45
|
-
transition: "background-color 150ms ease",
|
|
46
|
-
position: "relative",
|
|
47
|
-
height: `calc(100vh - ${spacing * 2}px)`
|
|
48
|
-
}),
|
|
49
|
-
active: {
|
|
50
|
-
backgroundColor: theme.colorScheme === "dark" ? accepted.background : theme.colors[theme.primaryColor][0],
|
|
51
|
-
borderColor: theme.colorScheme === "dark" ? accepted.border : theme.colors[theme.primaryColor][4],
|
|
52
|
-
"&:hover": {
|
|
53
|
-
backgroundColor: theme.colorScheme === "dark" ? accepted.background : theme.colors[theme.primaryColor][0]
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
reject: {
|
|
57
|
-
backgroundColor: theme.colorScheme === "dark" ? rejected.background : theme.colors.red[0],
|
|
58
|
-
borderColor: theme.colorScheme === "dark" ? rejected.border : theme.colors.red[4],
|
|
59
|
-
"&:hover": {
|
|
60
|
-
backgroundColor: theme.colorScheme === "dark" ? rejected.background : theme.colors.red[0]
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
export default useStyles;
|
|
67
|
-
//# sourceMappingURL=FullscreenDropzone.styles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FullscreenDropzone.styles.js","sources":["../../src/FullScreenDropzone/FullscreenDropzone.styles.ts"],"sourcesContent":["import { createStyles, MantineNumberSize } from '@mantine/core';\n\nexport interface FullScreenDropzoneStylesParams {\n offset: MantineNumberSize;\n padding: MantineNumberSize;\n radius: MantineNumberSize;\n zIndex: React.CSSProperties['zIndex'];\n}\n\nexport default createStyles(\n (theme, { offset, padding, radius, zIndex }: FullScreenDropzoneStylesParams) => {\n const spacing = theme.fn.size({ size: offset, sizes: theme.spacing });\n const rejected = theme.fn.variant({ color: 'red', variant: 'light' });\n const accepted = theme.fn.variant({ color: theme.primaryColor, variant: 'light' });\n\n return {\n root: {\n position: 'fixed',\n zIndex,\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n padding: spacing,\n },\n\n dropzone: {\n ...theme.fn.fontStyles(),\n boxSizing: 'border-box',\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.white,\n border: `2px dashed ${\n theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[4]\n }`,\n padding: theme.fn.size({ size: padding, sizes: theme.spacing }),\n borderRadius: theme.fn.radius(radius),\n cursor: 'pointer',\n userSelect: 'none',\n transition: 'background-color 150ms ease',\n position: 'relative',\n height: `calc(100vh - ${spacing * 2}px)`,\n },\n\n active: {\n backgroundColor:\n theme.colorScheme === 'dark' ? accepted.background : theme.colors[theme.primaryColor][0],\n borderColor:\n theme.colorScheme === 'dark' ? accepted.border : theme.colors[theme.primaryColor][4],\n\n '&:hover': {\n backgroundColor:\n theme.colorScheme === 'dark'\n ? accepted.background\n : theme.colors[theme.primaryColor][0],\n },\n },\n\n reject: {\n backgroundColor: theme.colorScheme === 'dark' ? rejected.background : theme.colors.red[0],\n borderColor: theme.colorScheme === 'dark' ? rejected.border : theme.colors.red[4],\n\n '&:hover': {\n backgroundColor: theme.colorScheme === 'dark' ? rejected.background : theme.colors.red[0],\n },\n },\n };\n }\n);\n"],"names":[],"mappings":";;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,IAAI,iBAAiB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACzD,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAElE,gBAAe,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC5E,EAAE,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AACxE,EAAE,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACxE,EAAE,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACrF,EAAE,OAAO;AACT,IAAI,IAAI,EAAE;AACV,MAAM,QAAQ,EAAE,OAAO;AACvB,MAAM,MAAM;AACZ,MAAM,GAAG,EAAE,CAAC;AACZ,MAAM,IAAI,EAAE,CAAC;AACb,MAAM,KAAK,EAAE,CAAC;AACd,MAAM,MAAM,EAAE,CAAC;AACf,MAAM,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK;AACxF,MAAM,OAAO,EAAE,OAAO;AACtB,KAAK;AACL,IAAI,QAAQ,EAAE,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,EAAE;AACvE,MAAM,SAAS,EAAE,YAAY;AAC7B,MAAM,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK;AACxF,MAAM,MAAM,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACxG,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;AACrE,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;AAC3C,MAAM,MAAM,EAAE,SAAS;AACvB,MAAM,UAAU,EAAE,MAAM;AACxB,MAAM,UAAU,EAAE,6BAA6B;AAC/C,MAAM,QAAQ,EAAE,UAAU;AAC1B,MAAM,MAAM,EAAE,CAAC,aAAa,EAAE,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC;AAC9C,KAAK,CAAC;AACN,IAAI,MAAM,EAAE;AACZ,MAAM,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAC/G,MAAM,WAAW,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AACvG,MAAM,SAAS,EAAE;AACjB,QAAQ,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AACjH,OAAO;AACP,KAAK;AACL,IAAI,MAAM,EAAE;AACZ,MAAM,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/F,MAAM,WAAW,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACvF,MAAM,SAAS,EAAE;AACjB,QAAQ,eAAe,EAAE,KAAK,CAAC,WAAW,KAAK,MAAM,GAAG,QAAQ,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACjG,OAAO;AACP,KAAK;AACL,GAAG,CAAC;AACJ,CAAC,CAAC;;;;"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { FileRejection } from 'react-dropzone';
|
|
3
|
-
import { DefaultProps, Selectors, MantineNumberSize } from '@mantine/core';
|
|
4
|
-
import useStyles from './Dropzone.styles';
|
|
5
|
-
export declare type DropzoneStylesNames = Selectors<typeof useStyles>;
|
|
6
|
-
export interface DropzoneStatus {
|
|
7
|
-
accepted: boolean;
|
|
8
|
-
rejected: boolean;
|
|
9
|
-
}
|
|
10
|
-
export interface DropzoneProps extends DefaultProps<DropzoneStylesNames> {
|
|
11
|
-
/** Padding from theme.spacing, or number to set padding in px */
|
|
12
|
-
padding?: MantineNumberSize;
|
|
13
|
-
/** Border radius from theme.radius or number to set border-radius in px */
|
|
14
|
-
radius?: MantineNumberSize;
|
|
15
|
-
/** Render children based on dragging state */
|
|
16
|
-
children(status: DropzoneStatus): React.ReactNode;
|
|
17
|
-
/** Disable files capturing */
|
|
18
|
-
disabled?: boolean;
|
|
19
|
-
/** Called when files are dropped into dropzone */
|
|
20
|
-
onDrop(files: File[]): void;
|
|
21
|
-
/** Called when selected files don't meet file restrictions */
|
|
22
|
-
onReject?(fileRejections: FileRejection[]): void;
|
|
23
|
-
/** Display loading overlay over dropzone */
|
|
24
|
-
loading?: boolean;
|
|
25
|
-
/** File types to accept */
|
|
26
|
-
accept?: {
|
|
27
|
-
[key: string]: string[];
|
|
28
|
-
} | string[];
|
|
29
|
-
/** Get open function as ref */
|
|
30
|
-
openRef?: React.ForwardedRef<() => void | undefined>;
|
|
31
|
-
/** Allow selection of multiple files */
|
|
32
|
-
multiple?: boolean;
|
|
33
|
-
/** Set maximum file size in bytes */
|
|
34
|
-
maxSize?: number;
|
|
35
|
-
/** Name of the form control. Submitted with the form as part of a name/value pair. */
|
|
36
|
-
name?: string;
|
|
37
|
-
}
|
|
38
|
-
export declare const Dropzone: React.ForwardRefExoticComponent<DropzoneProps & React.RefAttributes<HTMLDivElement>>;
|
|
39
|
-
//# sourceMappingURL=Dropzone.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Dropzone.d.ts","sourceRoot":"","sources":["../../src/Dropzone/Dropzone.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAe,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EACL,YAAY,EACZ,SAAS,EACT,iBAAiB,EAIlB,MAAM,eAAe,CAAC;AAEvB,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAE1C,oBAAY,mBAAmB,GAAG,SAAS,CAAC,OAAO,SAAS,CAAC,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY,CAAC,mBAAmB,CAAC;IACtE,iEAAiE;IACjE,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAE5B,2EAA2E;IAC3E,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC;IAElD,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,kDAAkD;IAClD,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAE5B,8DAA8D;IAC9D,QAAQ,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;IAEjD,4CAA4C;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,4BAA4B;IAC5B,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,GAAG,MAAM,EAAE,CAAC;IAEhD,+BAA+B;IAC/B,OAAO,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC;IAErD,wCAAwC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,sFAAsF;IACtF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AASD,eAAO,MAAM,QAAQ,sFAwDnB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Dropzone.styles.d.ts","sourceRoot":"","sources":["../../src/Dropzone/Dropzone.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEhE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,iBAAiB,CAAC;IAC3B,MAAM,EAAE,iBAAiB,CAAC;CAC3B;;;;;;AAED,wBAsDG"}
|
package/lib/Dropzone/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Dropzone/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrF,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { MantineNumberSize, Selectors, DefaultProps } from '@mantine/core';
|
|
3
|
-
import { DropzoneStatus } from '../Dropzone';
|
|
4
|
-
import useStyles from './FullscreenDropzone.styles';
|
|
5
|
-
export declare type FullScreenDropzoneStylesNames = Selectors<typeof useStyles>;
|
|
6
|
-
export interface FullScreenDropzoneProps extends DefaultProps<FullScreenDropzoneStylesNames>, Omit<React.ComponentPropsWithoutRef<'div'>, 'onDrop' | 'children'> {
|
|
7
|
-
/** Space between dropzone and viewport edges */
|
|
8
|
-
offset?: MantineNumberSize;
|
|
9
|
-
/** Overlay z-index */
|
|
10
|
-
zIndex?: React.CSSProperties['zIndex'];
|
|
11
|
-
/** Disable dropzone */
|
|
12
|
-
disabled?: boolean;
|
|
13
|
-
/** Accepted mime types */
|
|
14
|
-
accept: string[];
|
|
15
|
-
/** Dropzone padding from theme or number to set padding in px */
|
|
16
|
-
padding?: MantineNumberSize;
|
|
17
|
-
/** Dropzone radius from theme or number to set border-radius in px */
|
|
18
|
-
radius?: MantineNumberSize;
|
|
19
|
-
/** Called when files are dropped to document */
|
|
20
|
-
onDrop(files: File[]): void;
|
|
21
|
-
/** Render children based on dragging state */
|
|
22
|
-
children(status: DropzoneStatus): React.ReactNode;
|
|
23
|
-
}
|
|
24
|
-
export declare function FullScreenDropzone(props: FullScreenDropzoneProps): JSX.Element;
|
|
25
|
-
export declare namespace FullScreenDropzone {
|
|
26
|
-
var displayName: string;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=FullScreenDropzone.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FullScreenDropzone.d.ts","sourceRoot":"","sources":["../../src/FullScreenDropzone/FullScreenDropzone.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAGL,iBAAiB,EACjB,SAAS,EACT,YAAY,EAIb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,SAAS,MAAM,6BAA6B,CAAC;AAEpD,oBAAY,6BAA6B,GAAG,SAAS,CAAC,OAAO,SAAS,CAAC,CAAC;AAExE,MAAM,WAAW,uBACf,SAAQ,YAAY,CAAC,6BAA6B,CAAC,EACjD,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IACpE,gDAAgD;IAChD,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B,sBAAsB;IACtB,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAEvC,uBAAuB;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,0BAA0B;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB,iEAAiE;IACjE,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAE5B,sEAAsE;IACtE,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B,gDAAgD;IAChD,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAE5B,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC;CACnD;AAmCD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,eA4FhE;yBA5Fe,kBAAkB"}
|