techsbcn-storybook 2.10.3 → 2.11.0
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/dist/index.js +25 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +25 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2873,6 +2873,7 @@ var FileUploadComponent = ({ labels, onUpload }) => {
|
|
|
2873
2873
|
const [file, setFile] = React10.useState(null);
|
|
2874
2874
|
const [note, setNote] = React10.useState("");
|
|
2875
2875
|
const [loading, setLoading] = React10.useState(false);
|
|
2876
|
+
const [dragging, setDragging] = React10.useState(false);
|
|
2876
2877
|
const save = async () => {
|
|
2877
2878
|
if (!file) return;
|
|
2878
2879
|
setLoading(true);
|
|
@@ -2891,16 +2892,37 @@ var FileUploadComponent = ({ labels, onUpload }) => {
|
|
|
2891
2892
|
{
|
|
2892
2893
|
component: "label",
|
|
2893
2894
|
onDragOver: (event) => event.preventDefault(),
|
|
2895
|
+
onDragEnter: () => setDragging(true),
|
|
2896
|
+
onDragLeave: (event) => {
|
|
2897
|
+
if (!event.currentTarget.contains(event.relatedTarget)) setDragging(false);
|
|
2898
|
+
},
|
|
2894
2899
|
onDrop: (event) => {
|
|
2895
2900
|
event.preventDefault();
|
|
2896
|
-
|
|
2901
|
+
setDragging(false);
|
|
2902
|
+
const dropped = event.dataTransfer.files[0];
|
|
2903
|
+
if (dropped) setFile(dropped);
|
|
2904
|
+
},
|
|
2905
|
+
sx: {
|
|
2906
|
+
display: "flex",
|
|
2907
|
+
flexDirection: "column",
|
|
2908
|
+
alignItems: "center",
|
|
2909
|
+
gap: 1,
|
|
2910
|
+
p: 3,
|
|
2911
|
+
border: "2px dashed",
|
|
2912
|
+
borderColor: dragging ? "primary.main" : "divider",
|
|
2913
|
+
bgcolor: dragging ? "action.hover" : "transparent",
|
|
2914
|
+
borderRadius: 1,
|
|
2915
|
+
cursor: "pointer",
|
|
2916
|
+
position: "relative",
|
|
2917
|
+
"&:focus-within": { borderColor: "primary.main" }
|
|
2897
2918
|
}
|
|
2898
2919
|
},
|
|
2899
2920
|
/* @__PURE__ */ React10__default.default.createElement(
|
|
2900
|
-
|
|
2921
|
+
material.Box,
|
|
2901
2922
|
{
|
|
2923
|
+
component: "input",
|
|
2902
2924
|
type: "file",
|
|
2903
|
-
|
|
2925
|
+
sx: { position: "absolute", width: 1, height: 1, opacity: 0, overflow: "hidden" },
|
|
2904
2926
|
onChange: (event) => {
|
|
2905
2927
|
setFile(event.target.files?.[0] ?? null);
|
|
2906
2928
|
event.target.value = "";
|