@tecsinapse/cortex-react 1.15.0-beta.12 → 1.15.0-beta.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.
@@ -17,7 +17,7 @@ const Manager = ({
17
17
  uploadProgressText = "Upload(s) in progress",
18
18
  onClose
19
19
  }) => {
20
- const { min, setMin, regularFiles, folderFiles } = useManagerHelpers.useManagerHelpers({
20
+ const { min, setMin, regularFiles, folderFiles, totalLength, setFolders } = useManagerHelpers.useManagerHelpers({
21
21
  files
22
22
  });
23
23
  return reactDom.createPortal(
@@ -54,7 +54,7 @@ const Manager = ({
54
54
  className: clsx.clsx("w-full h-auto max-h-[300px] gap-mili", {
55
55
  hidden: min,
56
56
  "flex flex-col": !min,
57
- "pb-kilo overflow-scroll pr-deca": (files ?? []).length > 3
57
+ "pb-kilo overflow-scroll pr-deca": totalLength > 3
58
58
  }),
59
59
  children: [
60
60
  regularFiles.length > 0 ? regularFiles.map((file, index) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -67,7 +67,7 @@ const Manager = ({
67
67
  },
68
68
  file.uid
69
69
  )) : null,
70
- folderFiles.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(Upload.FolderList, { files: folderFiles }) : null
70
+ folderFiles.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(Upload.FolderList, { files: folderFiles, setFolders }) : null
71
71
  ]
72
72
  }
73
73
  )
@@ -116,7 +116,7 @@ const Folder = ({ name, subItems }) => {
116
116
  /* @__PURE__ */ jsxRuntime.jsx(ProgressBar.ProgressBar, { intent, infinite: loading })
117
117
  ] });
118
118
  };
119
- const FolderList = ({ files }) => {
119
+ const FolderList = ({ files, setFolders }) => {
120
120
  const folders = React.useMemo(() => {
121
121
  const segments = {};
122
122
  files.forEach((file) => {
@@ -127,6 +127,7 @@ const FolderList = ({ files }) => {
127
127
  });
128
128
  return segments;
129
129
  }, [files]);
130
+ setFolders(Object.entries(folders));
130
131
  return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: Object.entries(folders).map(([name, children], index) => /* @__PURE__ */ jsxRuntime.jsx(Folder, { name, subItems: children }, index)) });
131
132
  };
132
133
 
@@ -6,6 +6,7 @@ const useManagerHelpers = ({
6
6
  files
7
7
  }) => {
8
8
  const [min, setMin] = React.useState(false);
9
+ const [folders, setFolders] = React.useState();
9
10
  const folderFiles = React.useMemo(
10
11
  () => files?.filter((file) => file.isFolder) ?? [],
11
12
  [files]
@@ -14,11 +15,14 @@ const useManagerHelpers = ({
14
15
  () => files?.filter((file) => !file.isFolder) ?? [],
15
16
  [files]
16
17
  );
18
+ const totalLength = (regularFiles ?? []).length + (folders ?? []).length;
17
19
  return {
18
20
  min,
19
21
  setMin,
20
22
  folderFiles,
21
- regularFiles
23
+ regularFiles,
24
+ totalLength,
25
+ setFolders
22
26
  };
23
27
  };
24
28
 
@@ -15,7 +15,7 @@ const Manager = ({
15
15
  uploadProgressText = "Upload(s) in progress",
16
16
  onClose
17
17
  }) => {
18
- const { min, setMin, regularFiles, folderFiles } = useManagerHelpers({
18
+ const { min, setMin, regularFiles, folderFiles, totalLength, setFolders } = useManagerHelpers({
19
19
  files
20
20
  });
21
21
  return createPortal(
@@ -52,7 +52,7 @@ const Manager = ({
52
52
  className: clsx("w-full h-auto max-h-[300px] gap-mili", {
53
53
  hidden: min,
54
54
  "flex flex-col": !min,
55
- "pb-kilo overflow-scroll pr-deca": (files ?? []).length > 3
55
+ "pb-kilo overflow-scroll pr-deca": totalLength > 3
56
56
  }),
57
57
  children: [
58
58
  regularFiles.length > 0 ? regularFiles.map((file, index) => /* @__PURE__ */ jsx(
@@ -65,7 +65,7 @@ const Manager = ({
65
65
  },
66
66
  file.uid
67
67
  )) : null,
68
- folderFiles.length > 0 ? /* @__PURE__ */ jsx(FolderList, { files: folderFiles }) : null
68
+ folderFiles.length > 0 ? /* @__PURE__ */ jsx(FolderList, { files: folderFiles, setFolders }) : null
69
69
  ]
70
70
  }
71
71
  )
@@ -114,7 +114,7 @@ const Folder = ({ name, subItems }) => {
114
114
  /* @__PURE__ */ jsx(ProgressBar, { intent, infinite: loading })
115
115
  ] });
116
116
  };
117
- const FolderList = ({ files }) => {
117
+ const FolderList = ({ files, setFolders }) => {
118
118
  const folders = useMemo(() => {
119
119
  const segments = {};
120
120
  files.forEach((file) => {
@@ -125,6 +125,7 @@ const FolderList = ({ files }) => {
125
125
  });
126
126
  return segments;
127
127
  }, [files]);
128
+ setFolders(Object.entries(folders));
128
129
  return /* @__PURE__ */ jsx(Fragment, { children: Object.entries(folders).map(([name, children], index) => /* @__PURE__ */ jsx(Folder, { name, subItems: children }, index)) });
129
130
  };
130
131
 
@@ -4,6 +4,7 @@ const useManagerHelpers = ({
4
4
  files
5
5
  }) => {
6
6
  const [min, setMin] = useState(false);
7
+ const [folders, setFolders] = useState();
7
8
  const folderFiles = useMemo(
8
9
  () => files?.filter((file) => file.isFolder) ?? [],
9
10
  [files]
@@ -12,11 +13,14 @@ const useManagerHelpers = ({
12
13
  () => files?.filter((file) => !file.isFolder) ?? [],
13
14
  [files]
14
15
  );
16
+ const totalLength = (regularFiles ?? []).length + (folders ?? []).length;
15
17
  return {
16
18
  min,
17
19
  setMin,
18
20
  folderFiles,
19
- regularFiles
21
+ regularFiles,
22
+ totalLength,
23
+ setFolders
20
24
  };
21
25
  };
22
26
 
@@ -1,4 +1,4 @@
1
1
  import { FileProps, FolderListProps, FolderProps } from './types';
2
2
  export declare const File: <T>({ file, index, onDelete, showDelete, }: FileProps<T>) => import("react/jsx-runtime").JSX.Element;
3
3
  export declare const Folder: ({ name, subItems }: FolderProps) => import("react/jsx-runtime").JSX.Element;
4
- export declare const FolderList: <T>({ files }: FolderListProps<T>) => import("react/jsx-runtime").JSX.Element;
4
+ export declare const FolderList: <T>({ files, setFolders }: FolderListProps<T>) => import("react/jsx-runtime").JSX.Element;
@@ -24,6 +24,13 @@ export interface FolderProps {
24
24
  }
25
25
  export interface FolderListProps<T> {
26
26
  files: FileUpload<T>[];
27
+ setFolders: React.Dispatch<React.SetStateAction<[
28
+ string,
29
+ {
30
+ status: string;
31
+ path: string;
32
+ }[]
33
+ ][] | undefined>>;
27
34
  }
28
35
  export interface FilesProps<T> {
29
36
  files: FileUpload<T>[];
@@ -6,4 +6,9 @@ export declare const useManagerHelpers: <T>({ files, }: {
6
6
  setMin: import("react").Dispatch<import("react").SetStateAction<boolean>>;
7
7
  folderFiles: FileUpload<T>[];
8
8
  regularFiles: FileUpload<T>[];
9
+ totalLength: number;
10
+ setFolders: import("react").Dispatch<import("react").SetStateAction<[string, {
11
+ status: string;
12
+ path: string;
13
+ }[]][] | undefined>>;
9
14
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tecsinapse/cortex-react",
3
- "version": "1.15.0-beta.12",
3
+ "version": "1.15.0-beta.13",
4
4
  "description": "React components based in @tecsinapse/cortex-core",
5
5
  "license": "MIT",
6
6
  "main": "dist/esm/index.js",
@@ -48,5 +48,5 @@
48
48
  "react-icons": ">=5.2.0",
49
49
  "tailwind": ">=3.3.0"
50
50
  },
51
- "gitHead": "88be974ff93d865dacc62c3b0700a7f5bebb630b"
51
+ "gitHead": "fcf96ee7829502dc73a02e3e9b26d9f729a1298e"
52
52
  }