@mantine/dropzone 5.2.4 → 5.2.5
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.
|
@@ -68,7 +68,6 @@ const DropzoneFullScreen = React.forwardRef((props, ref) => {
|
|
|
68
68
|
active,
|
|
69
69
|
onDrop,
|
|
70
70
|
onReject,
|
|
71
|
-
onDragLeave,
|
|
72
71
|
zIndex,
|
|
73
72
|
withinPortal
|
|
74
73
|
} = _a, others = __objRest(_a, [
|
|
@@ -81,10 +80,10 @@ const DropzoneFullScreen = React.forwardRef((props, ref) => {
|
|
|
81
80
|
"active",
|
|
82
81
|
"onDrop",
|
|
83
82
|
"onReject",
|
|
84
|
-
"onDragLeave",
|
|
85
83
|
"zIndex",
|
|
86
84
|
"withinPortal"
|
|
87
85
|
]);
|
|
86
|
+
const [counter, setCounter] = React__default.useState(0);
|
|
88
87
|
const [visible, { open, close }] = hooks.useDisclosure(false);
|
|
89
88
|
const { classes, cx } = DropzoneFullScreen_styles['default'](null, {
|
|
90
89
|
name: "DropzoneFullScreen",
|
|
@@ -92,12 +91,25 @@ const DropzoneFullScreen = React.forwardRef((props, ref) => {
|
|
|
92
91
|
styles,
|
|
93
92
|
unstyled
|
|
94
93
|
});
|
|
94
|
+
const handleDragEnter = () => {
|
|
95
|
+
setCounter((prev) => prev + 1);
|
|
96
|
+
open();
|
|
97
|
+
};
|
|
98
|
+
const handleDragLeave = () => {
|
|
99
|
+
setCounter((prev) => prev - 1);
|
|
100
|
+
};
|
|
95
101
|
React.useEffect(() => {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
102
|
+
counter === 0 && close();
|
|
103
|
+
}, [counter]);
|
|
104
|
+
React.useEffect(() => {
|
|
105
|
+
if (!active)
|
|
106
|
+
return void 0;
|
|
107
|
+
document.addEventListener("dragenter", handleDragEnter, false);
|
|
108
|
+
document.addEventListener("dragleave", handleDragLeave, false);
|
|
109
|
+
return () => {
|
|
110
|
+
document.removeEventListener("dragover", handleDragEnter, false);
|
|
111
|
+
document.removeEventListener("dragleave", handleDragLeave, false);
|
|
112
|
+
};
|
|
101
113
|
}, [active]);
|
|
102
114
|
return /* @__PURE__ */ React__default.createElement(core.OptionalPortal, {
|
|
103
115
|
withinPortal
|
|
@@ -122,10 +134,6 @@ const DropzoneFullScreen = React.forwardRef((props, ref) => {
|
|
|
122
134
|
onReject: (files) => {
|
|
123
135
|
onReject == null ? void 0 : onReject(files);
|
|
124
136
|
close();
|
|
125
|
-
},
|
|
126
|
-
onDragLeave: (event) => {
|
|
127
|
-
onDragLeave == null ? void 0 : onDragLeave(event);
|
|
128
|
-
close();
|
|
129
137
|
}
|
|
130
138
|
}))));
|
|
131
139
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropzoneFullScreen.js","sources":["../src/DropzoneFullScreen.tsx"],"sourcesContent":["import React, { forwardRef, useEffect } from 'react';\nimport {\n Box,\n useComponentDefaultProps,\n OptionalPortal,\n DefaultProps,\n Selectors,\n getDefaultZIndex,\n} from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { DropzoneStylesNames, DropzoneProps, _Dropzone } from './Dropzone';\nimport useFullScreenStyles from './DropzoneFullScreen.styles';\n\nexport type DropzoneFullScreenStylesName =\n | DropzoneStylesNames\n | Exclude<Selectors<typeof useFullScreenStyles>, 'dropzone'>;\n\nexport interface DropzoneFullScreenProps\n extends Omit<DropzoneProps, 'styles' | 'classNames'>,\n DefaultProps<DropzoneFullScreenStylesName> {\n /** Determines whether user can drop files to browser window, true by default */\n active?: boolean;\n\n /** z-index value, 9999 by default */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Determines whether component should be rendered within Portal, true by default */\n withinPortal?: boolean;\n}\n\nconst fullScreenDefaultProps: Partial<DropzoneFullScreenProps> = {\n padding: 'md',\n loading: false,\n multiple: true,\n maxSize: Infinity,\n autoFocus: false,\n activateOnClick: true,\n activateOnDrag: true,\n dragEventsBubbling: true,\n activateOnKeyboard: true,\n active: true,\n zIndex: getDefaultZIndex('max'),\n withinPortal: true,\n};\n\nexport const DropzoneFullScreen = forwardRef<HTMLDivElement, DropzoneFullScreenProps>(\n (props, ref) => {\n const {\n classNames,\n styles,\n sx,\n className,\n style,\n unstyled,\n active,\n onDrop,\n onReject,\n
|
|
1
|
+
{"version":3,"file":"DropzoneFullScreen.js","sources":["../src/DropzoneFullScreen.tsx"],"sourcesContent":["import React, { forwardRef, useEffect } from 'react';\nimport {\n Box,\n useComponentDefaultProps,\n OptionalPortal,\n DefaultProps,\n Selectors,\n getDefaultZIndex,\n} from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { DropzoneStylesNames, DropzoneProps, _Dropzone } from './Dropzone';\nimport useFullScreenStyles from './DropzoneFullScreen.styles';\n\nexport type DropzoneFullScreenStylesName =\n | DropzoneStylesNames\n | Exclude<Selectors<typeof useFullScreenStyles>, 'dropzone'>;\n\nexport interface DropzoneFullScreenProps\n extends Omit<DropzoneProps, 'styles' | 'classNames'>,\n DefaultProps<DropzoneFullScreenStylesName> {\n /** Determines whether user can drop files to browser window, true by default */\n active?: boolean;\n\n /** z-index value, 9999 by default */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Determines whether component should be rendered within Portal, true by default */\n withinPortal?: boolean;\n}\n\nconst fullScreenDefaultProps: Partial<DropzoneFullScreenProps> = {\n padding: 'md',\n loading: false,\n multiple: true,\n maxSize: Infinity,\n autoFocus: false,\n activateOnClick: true,\n activateOnDrag: true,\n dragEventsBubbling: true,\n activateOnKeyboard: true,\n active: true,\n zIndex: getDefaultZIndex('max'),\n withinPortal: true,\n};\n\nexport const DropzoneFullScreen = forwardRef<HTMLDivElement, DropzoneFullScreenProps>(\n (props, ref) => {\n const {\n classNames,\n styles,\n sx,\n className,\n style,\n unstyled,\n active,\n onDrop,\n onReject,\n zIndex,\n withinPortal,\n ...others\n } = useComponentDefaultProps('DropzoneFullScreen', fullScreenDefaultProps, props);\n\n const [counter, setCounter] = React.useState(0);\n const [visible, { open, close }] = useDisclosure(false);\n const { classes, cx } = useFullScreenStyles(null, {\n name: 'DropzoneFullScreen',\n classNames,\n styles,\n unstyled,\n });\n\n const handleDragEnter = () => {\n setCounter((prev) => prev + 1);\n open();\n };\n\n const handleDragLeave = () => {\n setCounter((prev) => prev - 1);\n };\n\n useEffect(() => {\n counter === 0 && close();\n }, [counter]);\n\n useEffect(() => {\n if (!active) return undefined;\n\n document.addEventListener('dragenter', handleDragEnter, false);\n document.addEventListener('dragleave', handleDragLeave, false);\n\n return () => {\n document.removeEventListener('dragover', handleDragEnter, false);\n document.removeEventListener('dragleave', handleDragLeave, false);\n };\n }, [active]);\n return (\n <OptionalPortal withinPortal={withinPortal}>\n <Box\n className={cx(classes.wrapper, className)}\n sx={sx}\n style={{\n ...style,\n opacity: visible ? 1 : 0,\n pointerEvents: visible ? 'all' : 'none',\n zIndex,\n }}\n >\n <_Dropzone\n {...others}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n ref={ref}\n className={classes.dropzone}\n onDrop={(files: any) => {\n onDrop?.(files);\n close();\n }}\n onReject={(files: any) => {\n onReject?.(files);\n close();\n }}\n />\n </Box>\n </OptionalPortal>\n );\n }\n);\n\nDropzoneFullScreen.displayName = '@mantine/dropzone/DropzoneFullScreen';\n\nexport type DropzoneFullScreenType = typeof DropzoneFullScreen;\n"],"names":["getDefaultZIndex","forwardRef","useComponentDefaultProps","React","useDisclosure","useFullScreenStyles","useEffect","OptionalPortal","Box","_Dropzone"],"mappings":"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"}
|
|
@@ -60,7 +60,6 @@ const DropzoneFullScreen = forwardRef((props, ref) => {
|
|
|
60
60
|
active,
|
|
61
61
|
onDrop,
|
|
62
62
|
onReject,
|
|
63
|
-
onDragLeave,
|
|
64
63
|
zIndex,
|
|
65
64
|
withinPortal
|
|
66
65
|
} = _a, others = __objRest(_a, [
|
|
@@ -73,10 +72,10 @@ const DropzoneFullScreen = forwardRef((props, ref) => {
|
|
|
73
72
|
"active",
|
|
74
73
|
"onDrop",
|
|
75
74
|
"onReject",
|
|
76
|
-
"onDragLeave",
|
|
77
75
|
"zIndex",
|
|
78
76
|
"withinPortal"
|
|
79
77
|
]);
|
|
78
|
+
const [counter, setCounter] = React.useState(0);
|
|
80
79
|
const [visible, { open, close }] = useDisclosure(false);
|
|
81
80
|
const { classes, cx } = useFullScreenStyles(null, {
|
|
82
81
|
name: "DropzoneFullScreen",
|
|
@@ -84,12 +83,25 @@ const DropzoneFullScreen = forwardRef((props, ref) => {
|
|
|
84
83
|
styles,
|
|
85
84
|
unstyled
|
|
86
85
|
});
|
|
86
|
+
const handleDragEnter = () => {
|
|
87
|
+
setCounter((prev) => prev + 1);
|
|
88
|
+
open();
|
|
89
|
+
};
|
|
90
|
+
const handleDragLeave = () => {
|
|
91
|
+
setCounter((prev) => prev - 1);
|
|
92
|
+
};
|
|
87
93
|
useEffect(() => {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
94
|
+
counter === 0 && close();
|
|
95
|
+
}, [counter]);
|
|
96
|
+
useEffect(() => {
|
|
97
|
+
if (!active)
|
|
98
|
+
return void 0;
|
|
99
|
+
document.addEventListener("dragenter", handleDragEnter, false);
|
|
100
|
+
document.addEventListener("dragleave", handleDragLeave, false);
|
|
101
|
+
return () => {
|
|
102
|
+
document.removeEventListener("dragover", handleDragEnter, false);
|
|
103
|
+
document.removeEventListener("dragleave", handleDragLeave, false);
|
|
104
|
+
};
|
|
93
105
|
}, [active]);
|
|
94
106
|
return /* @__PURE__ */ React.createElement(OptionalPortal, {
|
|
95
107
|
withinPortal
|
|
@@ -114,10 +126,6 @@ const DropzoneFullScreen = forwardRef((props, ref) => {
|
|
|
114
126
|
onReject: (files) => {
|
|
115
127
|
onReject == null ? void 0 : onReject(files);
|
|
116
128
|
close();
|
|
117
|
-
},
|
|
118
|
-
onDragLeave: (event) => {
|
|
119
|
-
onDragLeave == null ? void 0 : onDragLeave(event);
|
|
120
|
-
close();
|
|
121
129
|
}
|
|
122
130
|
}))));
|
|
123
131
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropzoneFullScreen.js","sources":["../src/DropzoneFullScreen.tsx"],"sourcesContent":["import React, { forwardRef, useEffect } from 'react';\nimport {\n Box,\n useComponentDefaultProps,\n OptionalPortal,\n DefaultProps,\n Selectors,\n getDefaultZIndex,\n} from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { DropzoneStylesNames, DropzoneProps, _Dropzone } from './Dropzone';\nimport useFullScreenStyles from './DropzoneFullScreen.styles';\n\nexport type DropzoneFullScreenStylesName =\n | DropzoneStylesNames\n | Exclude<Selectors<typeof useFullScreenStyles>, 'dropzone'>;\n\nexport interface DropzoneFullScreenProps\n extends Omit<DropzoneProps, 'styles' | 'classNames'>,\n DefaultProps<DropzoneFullScreenStylesName> {\n /** Determines whether user can drop files to browser window, true by default */\n active?: boolean;\n\n /** z-index value, 9999 by default */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Determines whether component should be rendered within Portal, true by default */\n withinPortal?: boolean;\n}\n\nconst fullScreenDefaultProps: Partial<DropzoneFullScreenProps> = {\n padding: 'md',\n loading: false,\n multiple: true,\n maxSize: Infinity,\n autoFocus: false,\n activateOnClick: true,\n activateOnDrag: true,\n dragEventsBubbling: true,\n activateOnKeyboard: true,\n active: true,\n zIndex: getDefaultZIndex('max'),\n withinPortal: true,\n};\n\nexport const DropzoneFullScreen = forwardRef<HTMLDivElement, DropzoneFullScreenProps>(\n (props, ref) => {\n const {\n classNames,\n styles,\n sx,\n className,\n style,\n unstyled,\n active,\n onDrop,\n onReject,\n
|
|
1
|
+
{"version":3,"file":"DropzoneFullScreen.js","sources":["../src/DropzoneFullScreen.tsx"],"sourcesContent":["import React, { forwardRef, useEffect } from 'react';\nimport {\n Box,\n useComponentDefaultProps,\n OptionalPortal,\n DefaultProps,\n Selectors,\n getDefaultZIndex,\n} from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { DropzoneStylesNames, DropzoneProps, _Dropzone } from './Dropzone';\nimport useFullScreenStyles from './DropzoneFullScreen.styles';\n\nexport type DropzoneFullScreenStylesName =\n | DropzoneStylesNames\n | Exclude<Selectors<typeof useFullScreenStyles>, 'dropzone'>;\n\nexport interface DropzoneFullScreenProps\n extends Omit<DropzoneProps, 'styles' | 'classNames'>,\n DefaultProps<DropzoneFullScreenStylesName> {\n /** Determines whether user can drop files to browser window, true by default */\n active?: boolean;\n\n /** z-index value, 9999 by default */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** Determines whether component should be rendered within Portal, true by default */\n withinPortal?: boolean;\n}\n\nconst fullScreenDefaultProps: Partial<DropzoneFullScreenProps> = {\n padding: 'md',\n loading: false,\n multiple: true,\n maxSize: Infinity,\n autoFocus: false,\n activateOnClick: true,\n activateOnDrag: true,\n dragEventsBubbling: true,\n activateOnKeyboard: true,\n active: true,\n zIndex: getDefaultZIndex('max'),\n withinPortal: true,\n};\n\nexport const DropzoneFullScreen = forwardRef<HTMLDivElement, DropzoneFullScreenProps>(\n (props, ref) => {\n const {\n classNames,\n styles,\n sx,\n className,\n style,\n unstyled,\n active,\n onDrop,\n onReject,\n zIndex,\n withinPortal,\n ...others\n } = useComponentDefaultProps('DropzoneFullScreen', fullScreenDefaultProps, props);\n\n const [counter, setCounter] = React.useState(0);\n const [visible, { open, close }] = useDisclosure(false);\n const { classes, cx } = useFullScreenStyles(null, {\n name: 'DropzoneFullScreen',\n classNames,\n styles,\n unstyled,\n });\n\n const handleDragEnter = () => {\n setCounter((prev) => prev + 1);\n open();\n };\n\n const handleDragLeave = () => {\n setCounter((prev) => prev - 1);\n };\n\n useEffect(() => {\n counter === 0 && close();\n }, [counter]);\n\n useEffect(() => {\n if (!active) return undefined;\n\n document.addEventListener('dragenter', handleDragEnter, false);\n document.addEventListener('dragleave', handleDragLeave, false);\n\n return () => {\n document.removeEventListener('dragover', handleDragEnter, false);\n document.removeEventListener('dragleave', handleDragLeave, false);\n };\n }, [active]);\n return (\n <OptionalPortal withinPortal={withinPortal}>\n <Box\n className={cx(classes.wrapper, className)}\n sx={sx}\n style={{\n ...style,\n opacity: visible ? 1 : 0,\n pointerEvents: visible ? 'all' : 'none',\n zIndex,\n }}\n >\n <_Dropzone\n {...others}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n ref={ref}\n className={classes.dropzone}\n onDrop={(files: any) => {\n onDrop?.(files);\n close();\n }}\n onReject={(files: any) => {\n onReject?.(files);\n close();\n }}\n />\n </Box>\n </OptionalPortal>\n );\n }\n);\n\nDropzoneFullScreen.displayName = '@mantine/dropzone/DropzoneFullScreen';\n\nexport type DropzoneFullScreenType = typeof DropzoneFullScreen;\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropzoneFullScreen.d.ts","sourceRoot":"","sources":["../src/DropzoneFullScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AACrD,OAAO,EAIL,YAAY,EACZ,SAAS,EAEV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAa,MAAM,YAAY,CAAC;AAC3E,OAAO,mBAAmB,MAAM,6BAA6B,CAAC;AAE9D,oBAAY,4BAA4B,GACpC,mBAAmB,GACnB,OAAO,CAAC,SAAS,CAAC,OAAO,mBAAmB,CAAC,EAAE,UAAU,CAAC,CAAC;AAE/D,MAAM,WAAW,uBACf,SAAQ,IAAI,CAAC,aAAa,EAAE,QAAQ,GAAG,YAAY,CAAC,EAClD,YAAY,CAAC,4BAA4B,CAAC;IAC5C,gFAAgF;IAChF,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,qCAAqC;IACrC,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAEvC,qFAAqF;IACrF,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAiBD,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"DropzoneFullScreen.d.ts","sourceRoot":"","sources":["../src/DropzoneFullScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AACrD,OAAO,EAIL,YAAY,EACZ,SAAS,EAEV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAa,MAAM,YAAY,CAAC;AAC3E,OAAO,mBAAmB,MAAM,6BAA6B,CAAC;AAE9D,oBAAY,4BAA4B,GACpC,mBAAmB,GACnB,OAAO,CAAC,SAAS,CAAC,OAAO,mBAAmB,CAAC,EAAE,UAAU,CAAC,CAAC;AAE/D,MAAM,WAAW,uBACf,SAAQ,IAAI,CAAC,aAAa,EAAE,QAAQ,GAAG,YAAY,CAAC,EAClD,YAAY,CAAC,4BAA4B,CAAC;IAC5C,gFAAgF;IAChF,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,qCAAqC;IACrC,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAEvC,qFAAqF;IACrF,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAiBD,eAAO,MAAM,kBAAkB,6jKAkF9B,CAAC;AAIF,oBAAY,sBAAsB,GAAG,OAAO,kBAAkB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mantine/dropzone",
|
|
3
3
|
"description": "Dropzone component built with Mantine theme and components",
|
|
4
|
-
"version": "5.2.
|
|
4
|
+
"version": "5.2.5",
|
|
5
5
|
"main": "cjs/index.js",
|
|
6
6
|
"module": "esm/index.js",
|
|
7
7
|
"types": "lib/index.d.ts",
|
|
@@ -28,14 +28,14 @@
|
|
|
28
28
|
"upload"
|
|
29
29
|
],
|
|
30
30
|
"peerDependencies": {
|
|
31
|
-
"@mantine/core": "5.2.
|
|
32
|
-
"@mantine/hooks": "5.2.
|
|
31
|
+
"@mantine/core": "5.2.5",
|
|
32
|
+
"@mantine/hooks": "5.2.5",
|
|
33
33
|
"react": ">=16.8.0",
|
|
34
34
|
"react-dom": ">=16.8.0"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"react-dropzone": "14.2.1",
|
|
38
|
-
"@mantine/utils": "5.2.
|
|
38
|
+
"@mantine/utils": "5.2.5"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {}
|
|
41
41
|
}
|