@bindu-dashing/dam-solution-v2 5.8.13 → 5.8.14
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.
|
@@ -7,23 +7,29 @@ import DriveContainer from "./DriveContainer";
|
|
|
7
7
|
import useAppParams from "../utilities/useAppParams";
|
|
8
8
|
import { FoldersProvider } from "../utilities/FoldersContext";
|
|
9
9
|
export default function MyDriveMainContainer({ folders, setFolders }) {
|
|
10
|
-
console.log('## MyDriveMainContainer props', folders, setFolders);
|
|
11
10
|
const damConfig = useDamConfig();
|
|
12
11
|
const { rootFolderId, brand, isAdmin } = damConfig;
|
|
13
12
|
const params = useAppParams();
|
|
14
|
-
console.log('## all
|
|
13
|
+
console.log('## all params from useAppParams', params);
|
|
15
14
|
const [selectedKeys, setSelectedKeys] = useState([]);
|
|
16
15
|
const [expandedKeys, setExpandedKeys] = useState([]);
|
|
17
16
|
const [globalSearch, setGlobalSearch] = useState("");
|
|
18
17
|
useEffect(() => {
|
|
18
|
+
// Priority: URL params > Props from ParamsProvider > rootFolderId from config
|
|
19
19
|
if (params === null || params === void 0 ? void 0 : params.folderId) {
|
|
20
20
|
setSelectedKeys(params.folderId);
|
|
21
21
|
}
|
|
22
|
-
else if (
|
|
23
|
-
|
|
22
|
+
else if (params === null || params === void 0 ? void 0 : params.id) {
|
|
23
|
+
setSelectedKeys(params.id);
|
|
24
|
+
}
|
|
25
|
+
else if (params === null || params === void 0 ? void 0 : params.parentId) {
|
|
26
|
+
setSelectedKeys(params.parentId);
|
|
27
|
+
}
|
|
28
|
+
else if (rootFolderId) {
|
|
29
|
+
// Fallback to rootFolderId from config
|
|
24
30
|
setSelectedKeys(rootFolderId);
|
|
25
31
|
}
|
|
26
|
-
}, [params === null || params === void 0 ? void 0 : params.folderId, rootFolderId]);
|
|
32
|
+
}, [params === null || params === void 0 ? void 0 : params.folderId, params === null || params === void 0 ? void 0 : params.id, params === null || params === void 0 ? void 0 : params.parentId, rootFolderId]);
|
|
27
33
|
const currentRootId = isArray(selectedKeys)
|
|
28
34
|
? selectedKeys.length
|
|
29
35
|
? selectedKeys[selectedKeys.length - 1]
|
package/build/MyDrive/index.js
CHANGED
|
@@ -9,6 +9,7 @@ import { useMemo, useState } from "react";
|
|
|
9
9
|
import process from "process";
|
|
10
10
|
import { ParamsProvider } from "../utilities/useAppParams";
|
|
11
11
|
function App(props) {
|
|
12
|
+
var _a;
|
|
12
13
|
console.log('## receiver props', props);
|
|
13
14
|
const config = useMemo(() => ({
|
|
14
15
|
damAccessKey: props === null || props === void 0 ? void 0 : props.accessKey,
|
|
@@ -17,7 +18,11 @@ function App(props) {
|
|
|
17
18
|
teamIds: props === null || props === void 0 ? void 0 : props.teamIds,
|
|
18
19
|
styles: props === null || props === void 0 ? void 0 : props.styles,
|
|
19
20
|
appType: props === null || props === void 0 ? void 0 : props.appType,
|
|
20
|
-
|
|
21
|
+
folderId: props === null || props === void 0 ? void 0 : props.folderId,
|
|
22
|
+
id: props === null || props === void 0 ? void 0 : props.id,
|
|
23
|
+
parentId: props === null || props === void 0 ? void 0 : props.parentId,
|
|
24
|
+
showSubfolders: props === null || props === void 0 ? void 0 : props.showSubfolders,
|
|
25
|
+
routerVersion: props === null || props === void 0 ? void 0 : props.routerVersion,
|
|
21
26
|
}), [
|
|
22
27
|
props === null || props === void 0 ? void 0 : props.accessKey,
|
|
23
28
|
props === null || props === void 0 ? void 0 : props.secretKey,
|
|
@@ -29,11 +34,18 @@ function App(props) {
|
|
|
29
34
|
props === null || props === void 0 ? void 0 : props.folderId,
|
|
30
35
|
props === null || props === void 0 ? void 0 : props.id,
|
|
31
36
|
props === null || props === void 0 ? void 0 : props.parentId,
|
|
37
|
+
props === null || props === void 0 ? void 0 : props.showSubfolders,
|
|
38
|
+
props === null || props === void 0 ? void 0 : props.routerVersion,
|
|
32
39
|
]);
|
|
33
40
|
const [folders, setFolders] = useState([]);
|
|
34
41
|
if (typeof window !== "undefined" && !window.process) {
|
|
35
42
|
window.process = process;
|
|
36
43
|
}
|
|
37
|
-
return (_jsx(AppProvider, { children: _jsx(DamConfigProvider, { config: config, children: _jsxs(ThemeProvider, { styles: props === null || props === void 0 ? void 0 : props.styles, sessionTheme: ThemeModes.LIGHT, children: [_jsxs("div", { className: "md-lib-grid md:md-lib-grid-cols-[auto,1fr] md-lib-h-[inherit]", children: [" ", _jsx(ParamsProvider, {
|
|
44
|
+
return (_jsx(AppProvider, { children: _jsx(DamConfigProvider, { config: config, children: _jsxs(ThemeProvider, { styles: props === null || props === void 0 ? void 0 : props.styles, sessionTheme: ThemeModes.LIGHT, children: [_jsxs("div", { className: "md-lib-grid md:md-lib-grid-cols-[auto,1fr] md-lib-h-[inherit]", children: [" ", _jsx(ParamsProvider, { initialParams: {
|
|
45
|
+
folderId: props === null || props === void 0 ? void 0 : props.folderId,
|
|
46
|
+
id: props === null || props === void 0 ? void 0 : props.id,
|
|
47
|
+
parentId: props === null || props === void 0 ? void 0 : props.parentId,
|
|
48
|
+
showSubfolders: (_a = props === null || props === void 0 ? void 0 : props.showSubfolders) === null || _a === void 0 ? void 0 : _a.toString(),
|
|
49
|
+
}, children: _jsx(AppRoutes, { setFolders: setFolders, folders: folders, routerVersion: (props === null || props === void 0 ? void 0 : props.routerVersion) || 6 }) })] }), _jsx(ToastProvider, {})] }) }) }));
|
|
38
50
|
}
|
|
39
51
|
export default App;
|
|
@@ -19,7 +19,7 @@ import { SUBSCRIPTION_EXPIRED_ERROR_MESSAGE } from "./appConstants";
|
|
|
19
19
|
const DamConfigContext = createContext(null);
|
|
20
20
|
export const DamConfigProvider = ({ children, config }) => {
|
|
21
21
|
// console.log(config);
|
|
22
|
-
const { damAccessKey, secretKey, subdomain, teamIds, appType, initialRootFolderId } = config;
|
|
22
|
+
const { damAccessKey, secretKey, subdomain, teamIds, appType, initialRootFolderId, folderId, id, parentId, showSubfolders, routerVersion } = config;
|
|
23
23
|
const [accessToken, setAccessToken] = useState(null);
|
|
24
24
|
const [user, setDamUser] = useState(null);
|
|
25
25
|
const [brand, setBrand] = useState(null);
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
|
|
2
|
+
type ParamsProviderProps = {
|
|
3
3
|
children: React.ReactNode;
|
|
4
|
-
|
|
4
|
+
initialParams?: Record<string, string | undefined>;
|
|
5
|
+
};
|
|
6
|
+
export declare let ParamsProvider: React.FC<ParamsProviderProps>;
|
|
5
7
|
declare let useAppParams: () => Record<string, string>;
|
|
6
8
|
export default useAppParams;
|
|
@@ -1,22 +1,67 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
// src/utils/useAppParams.tsx
|
|
3
3
|
import * as React from "react";
|
|
4
|
-
// Declare this always so TS doesn
|
|
4
|
+
// Declare this always so TS doesn't complain
|
|
5
5
|
const ParamsContext = React.createContext({});
|
|
6
|
-
|
|
6
|
+
// Helper to filter out undefined values
|
|
7
|
+
const filterUndefined = (params) => {
|
|
8
|
+
const filtered = {};
|
|
9
|
+
Object.keys(params).forEach((key) => {
|
|
10
|
+
if (params[key] !== undefined) {
|
|
11
|
+
filtered[key] = params[key];
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
return filtered;
|
|
15
|
+
};
|
|
16
|
+
// Wrapper component for v6/v5.1+ that merges URL params with initial params
|
|
17
|
+
const ParamsMerger = ({ children, initialParams }) => {
|
|
18
|
+
try {
|
|
19
|
+
const rrd = require("react-router-dom");
|
|
20
|
+
if (rrd.useParams) {
|
|
21
|
+
const urlParams = rrd.useParams();
|
|
22
|
+
const mergedParams = React.useMemo(() => (Object.assign(Object.assign({}, filterUndefined(initialParams)), urlParams)), [urlParams, initialParams]);
|
|
23
|
+
return (_jsx(ParamsContext.Provider, { value: mergedParams, children: children }));
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
catch (_a) {
|
|
27
|
+
// Fallback if useParams not available
|
|
28
|
+
}
|
|
29
|
+
// Fallback: just use initial params (filtered)
|
|
30
|
+
return (_jsx(ParamsContext.Provider, { value: filterUndefined(initialParams), children: children }));
|
|
31
|
+
};
|
|
32
|
+
export let ParamsProvider = ({ children, initialParams = {}, }) => {
|
|
33
|
+
// For v6/v5.1+, use the merger component
|
|
34
|
+
try {
|
|
35
|
+
const rrd = require("react-router-dom");
|
|
36
|
+
if (rrd.useParams) {
|
|
37
|
+
// ✅ v6 or v5.1+ - Use merger component
|
|
38
|
+
return _jsx(ParamsMerger, { initialParams: initialParams, children: children });
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// ✅ v4 fallback
|
|
42
|
+
const { Route } = rrd;
|
|
43
|
+
return (_jsx(Route, { path: "*", render: ({ match }) => {
|
|
44
|
+
const urlParams = match ? match.params : {};
|
|
45
|
+
const mergedParams = Object.assign(Object.assign({}, filterUndefined(initialParams)), urlParams);
|
|
46
|
+
return (_jsx(ParamsContext.Provider, { value: mergedParams, children: children }));
|
|
47
|
+
} }));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
catch (_a) {
|
|
51
|
+
// if require fails for some reason, just use initial params (filtered)
|
|
52
|
+
return (_jsx(ParamsContext.Provider, { value: filterUndefined(initialParams), children: children }));
|
|
53
|
+
}
|
|
54
|
+
};
|
|
7
55
|
let useAppParams;
|
|
8
56
|
// Dynamically detect router version
|
|
9
57
|
try {
|
|
10
58
|
const rrd = require("react-router-dom");
|
|
11
59
|
if (rrd.useParams) {
|
|
12
|
-
// ✅ v6 or v5.1+
|
|
13
|
-
|
|
14
|
-
useAppParams = () => useParams();
|
|
60
|
+
// ✅ v6 or v5.1+ - Use context which now has merged params
|
|
61
|
+
useAppParams = () => React.useContext(ParamsContext);
|
|
15
62
|
}
|
|
16
63
|
else {
|
|
17
|
-
// ✅ v4 fallback
|
|
18
|
-
const { Route } = rrd;
|
|
19
|
-
ParamsProvider = ({ children }) => (_jsx(Route, { path: "*", render: ({ match }) => (_jsx(ParamsContext.Provider, { value: match ? match.params : {}, children: children })) }));
|
|
64
|
+
// ✅ v4 fallback - Use context
|
|
20
65
|
useAppParams = () => React.useContext(ParamsContext);
|
|
21
66
|
}
|
|
22
67
|
}
|