@webiny/app-file-manager 0.0.0-unstable.e53eceafb5 → 0.0.0-unstable.eb196ccd2f
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/components/Grid/ActionButton.js +7 -2
- package/components/Grid/ActionButton.js.map +1 -1
- package/components/Table/Cells/CellActions.js +3 -3
- package/components/Table/Cells/CellActions.js.map +1 -1
- package/components/Table/Cells/CellAuthor.js +1 -1
- package/components/Table/Cells/CellAuthor.js.map +1 -1
- package/components/Table/Cells/CellCreated.js +1 -1
- package/components/Table/Cells/CellCreated.js.map +1 -1
- package/components/Table/Cells/CellModified.js +1 -1
- package/components/Table/Cells/CellModified.js.map +1 -1
- package/components/Table/Cells/CellName.d.ts +4 -4
- package/components/Table/Cells/CellName.js +2 -2
- package/components/Table/Cells/CellName.js.map +1 -1
- package/components/Table/Cells/CellSize.js +1 -1
- package/components/Table/Cells/CellSize.js.map +1 -1
- package/components/Table/Cells/CellType.js +1 -1
- package/components/Table/Cells/CellType.js.map +1 -1
- package/components/Table/Table.js +4 -1
- package/components/Table/Table.js.map +1 -1
- package/modules/Enterprise/components/ThreatScanInProgressTableCell.js +1 -1
- package/modules/Enterprise/components/ThreatScanInProgressTableCell.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerView/FileManagerView.js +1 -2
- package/modules/FileManagerRenderer/FileManagerView/FileManagerView.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig.d.ts +7 -2
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FileAction.d.ts +2 -2
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FileAction.js +1 -2
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FileAction.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.d.ts +2 -2
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.js +1 -2
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.d.ts +9 -4
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.js +1 -2
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/index.d.ts +7 -2
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/index.d.ts +7 -2
- package/modules/HeadlessCms/fileRenderer/fileField.js +2 -1
- package/modules/HeadlessCms/fileRenderer/fileField.js.map +1 -1
- package/modules/HeadlessCms/fileRenderer/fileFields.js +2 -1
- package/modules/HeadlessCms/fileRenderer/fileFields.js.map +1 -1
- package/package.json +21 -21
- package/types.d.ts +2 -3
- package/types.js.map +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import React, { useCallback } from "react";
|
|
2
2
|
import { IconButton, Tooltip } from "@webiny/admin-ui";
|
|
3
3
|
export const ActionButton = ({
|
|
4
4
|
icon,
|
|
@@ -7,13 +7,18 @@ export const ActionButton = ({
|
|
|
7
7
|
disabled,
|
|
8
8
|
...props
|
|
9
9
|
}) => {
|
|
10
|
+
const onClick = useCallback(event => {
|
|
11
|
+
// Prevent the click event from propagating to the grid item component.
|
|
12
|
+
event.stopPropagation();
|
|
13
|
+
onAction && onAction();
|
|
14
|
+
}, [onAction]);
|
|
10
15
|
return /*#__PURE__*/React.createElement(Tooltip, {
|
|
11
16
|
content: label ?? "Custom action",
|
|
12
17
|
trigger: /*#__PURE__*/React.createElement(IconButton, {
|
|
13
18
|
variant: "tertiary",
|
|
14
19
|
size: "sm",
|
|
15
20
|
icon: icon,
|
|
16
|
-
onClick:
|
|
21
|
+
onClick: onClick,
|
|
17
22
|
disabled: disabled,
|
|
18
23
|
"data-testid": props["data-testid"]
|
|
19
24
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","IconButton","Tooltip","ActionButton","icon","label","onAction","disabled","props","createElement","content","trigger","variant","size"
|
|
1
|
+
{"version":3,"names":["React","useCallback","IconButton","Tooltip","ActionButton","icon","label","onAction","disabled","props","onClick","event","stopPropagation","createElement","content","trigger","variant","size"],"sources":["ActionButton.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { IconButton, Tooltip } from \"@webiny/admin-ui\";\n\nexport interface ActionButtonProps {\n icon: JSX.Element;\n label?: string;\n onAction: () => void;\n \"data-testid\"?: string;\n disabled?: boolean;\n}\n\nexport const ActionButton = ({ icon, label, onAction, disabled, ...props }: ActionButtonProps) => {\n const onClick = useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n // Prevent the click event from propagating to the grid item component.\n event.stopPropagation();\n onAction && onAction();\n },\n [onAction]\n );\n\n return (\n <Tooltip\n content={label ?? \"Custom action\"}\n trigger={\n <IconButton\n variant={\"tertiary\"}\n size={\"sm\"}\n icon={icon}\n onClick={onClick}\n disabled={disabled}\n data-testid={props[\"data-testid\"]}\n />\n }\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,WAAW,QAAQ,OAAO;AAC1C,SAASC,UAAU,EAAEC,OAAO,QAAQ,kBAAkB;AAUtD,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAAEC,IAAI;EAAEC,KAAK;EAAEC,QAAQ;EAAEC,QAAQ;EAAE,GAAGC;AAAyB,CAAC,KAAK;EAC9F,MAAMC,OAAO,GAAGT,WAAW,CACtBU,KAA0C,IAAK;IAC5C;IACAA,KAAK,CAACC,eAAe,CAAC,CAAC;IACvBL,QAAQ,IAAIA,QAAQ,CAAC,CAAC;EAC1B,CAAC,EACD,CAACA,QAAQ,CACb,CAAC;EAED,oBACIP,KAAA,CAAAa,aAAA,CAACV,OAAO;IACJW,OAAO,EAAER,KAAK,IAAI,eAAgB;IAClCS,OAAO,eACHf,KAAA,CAAAa,aAAA,CAACX,UAAU;MACPc,OAAO,EAAE,UAAW;MACpBC,IAAI,EAAE,IAAK;MACXZ,IAAI,EAAEA,IAAK;MACXK,OAAO,EAAEA,OAAQ;MACjBF,QAAQ,EAAEA,QAAS;MACnB,eAAaC,KAAK,CAAC,aAAa;IAAE,CACrC;EACJ,CACJ,CAAC;AAEV,CAAC","ignoreList":[]}
|
|
@@ -17,18 +17,18 @@ export const CellActions = () => {
|
|
|
17
17
|
} = useAcoConfig();
|
|
18
18
|
if (isFolderRow(row)) {
|
|
19
19
|
// If the user cannot manage folder structure, no need to show the menu.
|
|
20
|
-
if (!row.canManageStructure) {
|
|
20
|
+
if (!row.data.canManageStructure) {
|
|
21
21
|
return null;
|
|
22
22
|
}
|
|
23
23
|
return /*#__PURE__*/React.createElement(FolderProvider, {
|
|
24
|
-
folder: row
|
|
24
|
+
folder: row.data
|
|
25
25
|
}, /*#__PURE__*/React.createElement(OptionsMenu, {
|
|
26
26
|
actions: folderConfig.actions,
|
|
27
27
|
"data-testid": "table.row.folder.menu-action"
|
|
28
28
|
}));
|
|
29
29
|
}
|
|
30
30
|
return /*#__PURE__*/React.createElement(FileProvider, {
|
|
31
|
-
file: row
|
|
31
|
+
file: row.data
|
|
32
32
|
}, /*#__PURE__*/React.createElement(OptionsMenu, {
|
|
33
33
|
actions: recordConfig.actions,
|
|
34
34
|
"data-testid": "table.row.file.menu-action"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","OptionsMenu","FolderProvider","useAcoConfig","FileProvider","FileManagerViewConfig","CellActions","useTableRow","isFolderRow","Browser","Table","Column","row","folder","folderConfig","record","recordConfig","canManageStructure","createElement","actions","file"],"sources":["CellActions.tsx"],"sourcesContent":["import React from \"react\";\nimport { OptionsMenu } from \"@webiny/app-admin\";\nimport { FolderProvider, useAcoConfig } from \"@webiny/app-aco\";\nimport { FileProvider } from \"~/contexts/FileProvider\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellActions = () => {\n const { useTableRow, isFolderRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n const { folder: folderConfig, record: recordConfig } = useAcoConfig();\n\n if (isFolderRow(row)) {\n // If the user cannot manage folder structure, no need to show the menu.\n if (!row.canManageStructure) {\n return null;\n }\n\n return (\n <FolderProvider folder={row}>\n <OptionsMenu\n actions={folderConfig.actions}\n data-testid={\"table.row.folder.menu-action\"}\n />\n </FolderProvider>\n );\n }\n\n return (\n <FileProvider file={row}>\n <OptionsMenu\n actions={recordConfig.actions}\n data-testid={\"table.row.file.menu-action\"}\n />\n </FileProvider>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,cAAc,EAAEC,YAAY,QAAQ,iBAAiB;AAC9D,SAASC,YAAY;AACrB,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGH,qBAAqB,CAACI,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/E,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAC,CAAC;EAC7B,MAAM;IAAEM,MAAM,EAAEC,YAAY;IAAEC,MAAM,EAAEC;EAAa,CAAC,GAAGb,YAAY,CAAC,CAAC;EAErE,IAAIK,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB;IACA,IAAI,CAACA,GAAG,CAACK,kBAAkB,EAAE;
|
|
1
|
+
{"version":3,"names":["React","OptionsMenu","FolderProvider","useAcoConfig","FileProvider","FileManagerViewConfig","CellActions","useTableRow","isFolderRow","Browser","Table","Column","row","folder","folderConfig","record","recordConfig","data","canManageStructure","createElement","actions","file"],"sources":["CellActions.tsx"],"sourcesContent":["import React from \"react\";\nimport { OptionsMenu } from \"@webiny/app-admin\";\nimport { FolderProvider, useAcoConfig } from \"@webiny/app-aco\";\nimport { FileProvider } from \"~/contexts/FileProvider\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellActions = () => {\n const { useTableRow, isFolderRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n const { folder: folderConfig, record: recordConfig } = useAcoConfig();\n\n if (isFolderRow(row)) {\n // If the user cannot manage folder structure, no need to show the menu.\n if (!row.data.canManageStructure) {\n return null;\n }\n\n return (\n <FolderProvider folder={row.data}>\n <OptionsMenu\n actions={folderConfig.actions}\n data-testid={\"table.row.folder.menu-action\"}\n />\n </FolderProvider>\n );\n }\n\n return (\n <FileProvider file={row.data}>\n <OptionsMenu\n actions={recordConfig.actions}\n data-testid={\"table.row.file.menu-action\"}\n />\n </FileProvider>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,cAAc,EAAEC,YAAY,QAAQ,iBAAiB;AAC9D,SAASC,YAAY;AACrB,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGH,qBAAqB,CAACI,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/E,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAC,CAAC;EAC7B,MAAM;IAAEM,MAAM,EAAEC,YAAY;IAAEC,MAAM,EAAEC;EAAa,CAAC,GAAGb,YAAY,CAAC,CAAC;EAErE,IAAIK,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB;IACA,IAAI,CAACA,GAAG,CAACK,IAAI,CAACC,kBAAkB,EAAE;MAC9B,OAAO,IAAI;IACf;IAEA,oBACIlB,KAAA,CAAAmB,aAAA,CAACjB,cAAc;MAACW,MAAM,EAAED,GAAG,CAACK;IAAK,gBAC7BjB,KAAA,CAAAmB,aAAA,CAAClB,WAAW;MACRmB,OAAO,EAAEN,YAAY,CAACM,OAAQ;MAC9B,eAAa;IAA+B,CAC/C,CACW,CAAC;EAEzB;EAEA,oBACIpB,KAAA,CAAAmB,aAAA,CAACf,YAAY;IAACiB,IAAI,EAAET,GAAG,CAACK;EAAK,gBACzBjB,KAAA,CAAAmB,aAAA,CAAClB,WAAW;IACRmB,OAAO,EAAEJ,YAAY,CAACI,OAAQ;IAC9B,eAAa;EAA6B,CAC7C,CACS,CAAC;AAEvB,CAAC","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ export const CellAuthor = () => {
|
|
|
7
7
|
const {
|
|
8
8
|
row
|
|
9
9
|
} = useTableRow();
|
|
10
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, row.createdBy.displayName);
|
|
10
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, row.data.createdBy.displayName);
|
|
11
11
|
};
|
|
12
12
|
|
|
13
13
|
//# sourceMappingURL=CellAuthor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","FileManagerViewConfig","CellAuthor","useTableRow","Browser","Table","Column","row","createElement","Fragment","createdBy","displayName"],"sources":["CellAuthor.tsx"],"sourcesContent":["import React from \"react\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellAuthor = () => {\n const { useTableRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <>{row.createdBy.displayName}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,UAAU,GAAGA,CAAA,KAAM;EAC5B,MAAM;IAAEC;EAAY,CAAC,GAAGF,qBAAqB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAClE,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOH,KAAA,CAAAQ,aAAA,CAAAR,KAAA,CAAAS,QAAA,QAAGF,GAAG,CAACG,SAAS,CAACC,WAAc,CAAC;
|
|
1
|
+
{"version":3,"names":["React","FileManagerViewConfig","CellAuthor","useTableRow","Browser","Table","Column","row","createElement","Fragment","data","createdBy","displayName"],"sources":["CellAuthor.tsx"],"sourcesContent":["import React from \"react\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellAuthor = () => {\n const { useTableRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <>{row.data.createdBy.displayName}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,UAAU,GAAGA,CAAA,KAAM;EAC5B,MAAM;IAAEC;EAAY,CAAC,GAAGF,qBAAqB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAClE,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOH,KAAA,CAAAQ,aAAA,CAAAR,KAAA,CAAAS,QAAA,QAAGF,GAAG,CAACG,IAAI,CAACC,SAAS,CAACC,WAAc,CAAC;AAChD,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","TimeAgo","FileManagerViewConfig","CellCreated","useTableRow","Browser","Table","Column","row","createElement","datetime","createdOn"],"sources":["CellCreated.tsx"],"sourcesContent":["import React from \"react\";\nimport { TimeAgo } from \"@webiny/admin-ui\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellCreated = () => {\n const { useTableRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <TimeAgo datetime={row.createdOn} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,MAAM;IAAEC;EAAY,CAAC,GAAGF,qBAAqB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAClE,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOJ,KAAA,CAAAS,aAAA,CAACR,OAAO;IAACS,QAAQ,EAAEF,GAAG,CAACG;EAAU,CAAE,CAAC;
|
|
1
|
+
{"version":3,"names":["React","TimeAgo","FileManagerViewConfig","CellCreated","useTableRow","Browser","Table","Column","row","createElement","datetime","data","createdOn"],"sources":["CellCreated.tsx"],"sourcesContent":["import React from \"react\";\nimport { TimeAgo } from \"@webiny/admin-ui\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellCreated = () => {\n const { useTableRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <TimeAgo datetime={row.data.createdOn} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,MAAM;IAAEC;EAAY,CAAC,GAAGF,qBAAqB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAClE,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOJ,KAAA,CAAAS,aAAA,CAACR,OAAO;IAACS,QAAQ,EAAEF,GAAG,CAACG,IAAI,CAACC;EAAU,CAAE,CAAC;AACpD,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","TimeAgo","FileManagerViewConfig","CellModified","useTableRow","Browser","Table","Column","row","createElement","datetime","savedOn"],"sources":["CellModified.tsx"],"sourcesContent":["import React from \"react\";\nimport { TimeAgo } from \"@webiny/admin-ui\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellModified = () => {\n const { useTableRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <TimeAgo datetime={row.savedOn} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,YAAY,GAAGA,CAAA,KAAM;EAC9B,MAAM;IAAEC;EAAY,CAAC,GAAGF,qBAAqB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAClE,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOJ,KAAA,CAAAS,aAAA,CAACR,OAAO;IAACS,QAAQ,EAAEF,GAAG,CAACG;EAAQ,CAAE,CAAC;
|
|
1
|
+
{"version":3,"names":["React","TimeAgo","FileManagerViewConfig","CellModified","useTableRow","Browser","Table","Column","row","createElement","datetime","data","savedOn"],"sources":["CellModified.tsx"],"sourcesContent":["import React from \"react\";\nimport { TimeAgo } from \"@webiny/admin-ui\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellModified = () => {\n const { useTableRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n return <TimeAgo datetime={row.data.savedOn} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,YAAY,GAAGA,CAAA,KAAM;EAC9B,MAAM;IAAEC;EAAY,CAAC,GAAGF,qBAAqB,CAACG,OAAO,CAACC,KAAK,CAACC,MAAM;EAClE,MAAM;IAAEC;EAAI,CAAC,GAAGJ,WAAW,CAAC,CAAC;EAE7B,oBAAOJ,KAAA,CAAAS,aAAA,CAACR,OAAO;IAACS,QAAQ,EAAEF,GAAG,CAACG,IAAI,CAACC;EAAQ,CAAE,CAAC;AAClD,CAAC","ignoreList":[]}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
2
|
+
import type { FolderItem } from "@webiny/app-aco/types";
|
|
3
|
+
import type { FileItem } from "@webiny/app-admin/types";
|
|
4
4
|
interface DefaultProps {
|
|
5
5
|
onClick: (id: string) => void;
|
|
6
6
|
}
|
|
7
7
|
interface FolderCellNameProps extends DefaultProps {
|
|
8
|
-
folder:
|
|
8
|
+
folder: FolderItem;
|
|
9
9
|
}
|
|
10
10
|
export declare const FolderCellName: ({ folder, onClick }: FolderCellNameProps) => React.JSX.Element;
|
|
11
11
|
interface FileCellNameProps extends DefaultProps {
|
|
12
|
-
file:
|
|
12
|
+
file: FileItem;
|
|
13
13
|
}
|
|
14
14
|
export declare const FileCellName: ({ file, onClick }: FileCellNameProps) => React.JSX.Element;
|
|
15
15
|
export declare const CellName: () => React.JSX.Element;
|
|
@@ -57,12 +57,12 @@ export const CellName = () => {
|
|
|
57
57
|
} = useFileManagerView();
|
|
58
58
|
if (isFolderRow(row)) {
|
|
59
59
|
return /*#__PURE__*/React.createElement(FolderCellName, {
|
|
60
|
-
folder: row,
|
|
60
|
+
folder: row.data,
|
|
61
61
|
onClick: setFolderId
|
|
62
62
|
});
|
|
63
63
|
}
|
|
64
64
|
return /*#__PURE__*/React.createElement(FileCellName, {
|
|
65
|
-
file: row,
|
|
65
|
+
file: row.data,
|
|
66
66
|
onClick: showFileDetails
|
|
67
67
|
});
|
|
68
68
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","FolderIcon","FolderSharedIcon","useFileManagerView","FileManagerViewConfig","cn","Text","CellThumbnail","FileProvider","FolderCellName","folder","onClick","icon","createElement","width","height","hasNonInheritedPermissions","canManagePermissions","className","id","title","FileCellName","file","name","CellName","useTableRow","isFolderRow","Browser","Table","Column","row","showFileDetails","setFolderId"],"sources":["CellName.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { FolderIcon, FolderSharedIcon } from \"@webiny/app-aco\";\nimport { useFileManagerView } from \"~/modules/FileManagerRenderer/FileManagerViewProvider\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\nimport type {
|
|
1
|
+
{"version":3,"names":["React","FolderIcon","FolderSharedIcon","useFileManagerView","FileManagerViewConfig","cn","Text","CellThumbnail","FileProvider","FolderCellName","folder","onClick","icon","createElement","width","height","hasNonInheritedPermissions","canManagePermissions","className","id","title","FileCellName","file","name","CellName","useTableRow","isFolderRow","Browser","Table","Column","row","showFileDetails","setFolderId","data"],"sources":["CellName.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { FolderIcon, FolderSharedIcon } from \"@webiny/app-aco\";\nimport { useFileManagerView } from \"~/modules/FileManagerRenderer/FileManagerViewProvider\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\nimport type { FolderItem } from \"@webiny/app-aco/types\";\nimport { cn, Text } from \"@webiny/admin-ui\";\nimport { CellThumbnail } from \"./CellThumbnail\";\nimport { FileProvider } from \"~/contexts/FileProvider\";\nimport type { FileItem } from \"@webiny/app-admin/types\";\n\ninterface DefaultProps {\n onClick: (id: string) => void;\n}\n\ninterface FolderCellNameProps extends DefaultProps {\n folder: FolderItem;\n}\n\nexport const FolderCellName = ({ folder, onClick }: FolderCellNameProps) => {\n let icon = <FolderIcon width={32} height={32} />;\n if (folder.hasNonInheritedPermissions && folder.canManagePermissions) {\n icon = <FolderSharedIcon width={32} height={32} />;\n }\n\n return (\n <div\n className={cn([\n \"wby-flex wby-items-center wby-gap-md\",\n \"wby-truncate wby-cursor-pointer wby-font-semibold\",\n \"hover:wby-underline\"\n ])}\n onClick={() => onClick(folder.id)}\n >\n <div className={\"wby-size-xl wby-rounded-md wby-overflow-hidden wby-flex-shrink-0\"}>\n {icon}\n </div>\n <Text className={\"wby-truncate wby-min-w-0 wby-flex-shrink\"}>{folder.title}</Text>\n </div>\n );\n};\n\ninterface FileCellNameProps extends DefaultProps {\n file: FileItem;\n}\n\nexport const FileCellName = ({ file, onClick }: FileCellNameProps) => {\n return (\n <div\n className={cn([\n \"wby-flex wby-items-center wby-gap-md\",\n \"wby-truncate wby-cursor-pointer\",\n \"hover:wby-underline\"\n ])}\n onClick={() => onClick(file.id)}\n >\n <FileProvider file={file}>\n <div\n className={\n \"wby-size-xl wby-aspect-square wby-rounded-md wby-bg-neutral-muted wby-overflow-hidden wby-flex-shrink-0\"\n }\n >\n <CellThumbnail />\n </div>\n </FileProvider>\n <Text className={\"wby-truncate wby-min-w-0 wby-flex-shrink\"}>{file.name}</Text>\n </div>\n );\n};\n\nexport const CellName = () => {\n const { useTableRow, isFolderRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n const { showFileDetails, setFolderId } = useFileManagerView();\n\n if (isFolderRow(row)) {\n return <FolderCellName folder={row.data} onClick={setFolderId} />;\n }\n\n return <FileCellName file={row.data} onClick={showFileDetails} />;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,UAAU,EAAEC,gBAAgB,QAAQ,iBAAiB;AAC9D,SAASC,kBAAkB;AAC3B,SAASC,qBAAqB;AAE9B,SAASC,EAAE,EAAEC,IAAI,QAAQ,kBAAkB;AAC3C,SAASC,aAAa;AACtB,SAASC,YAAY;AAWrB,OAAO,MAAMC,cAAc,GAAGA,CAAC;EAAEC,MAAM;EAAEC;AAA6B,CAAC,KAAK;EACxE,IAAIC,IAAI,gBAAGZ,KAAA,CAAAa,aAAA,CAACZ,UAAU;IAACa,KAAK,EAAE,EAAG;IAACC,MAAM,EAAE;EAAG,CAAE,CAAC;EAChD,IAAIL,MAAM,CAACM,0BAA0B,IAAIN,MAAM,CAACO,oBAAoB,EAAE;IAClEL,IAAI,gBAAGZ,KAAA,CAAAa,aAAA,CAACX,gBAAgB;MAACY,KAAK,EAAE,EAAG;MAACC,MAAM,EAAE;IAAG,CAAE,CAAC;EACtD;EAEA,oBACIf,KAAA,CAAAa,aAAA;IACIK,SAAS,EAAEb,EAAE,CAAC,CACV,sCAAsC,EACtC,mDAAmD,EACnD,qBAAqB,CACxB,CAAE;IACHM,OAAO,EAAEA,CAAA,KAAMA,OAAO,CAACD,MAAM,CAACS,EAAE;EAAE,gBAElCnB,KAAA,CAAAa,aAAA;IAAKK,SAAS,EAAE;EAAmE,GAC9EN,IACA,CAAC,eACNZ,KAAA,CAAAa,aAAA,CAACP,IAAI;IAACY,SAAS,EAAE;EAA2C,GAAER,MAAM,CAACU,KAAY,CAChF,CAAC;AAEd,CAAC;AAMD,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAAEC,IAAI;EAAEX;AAA2B,CAAC,KAAK;EAClE,oBACIX,KAAA,CAAAa,aAAA;IACIK,SAAS,EAAEb,EAAE,CAAC,CACV,sCAAsC,EACtC,iCAAiC,EACjC,qBAAqB,CACxB,CAAE;IACHM,OAAO,EAAEA,CAAA,KAAMA,OAAO,CAACW,IAAI,CAACH,EAAE;EAAE,gBAEhCnB,KAAA,CAAAa,aAAA,CAACL,YAAY;IAACc,IAAI,EAAEA;EAAK,gBACrBtB,KAAA,CAAAa,aAAA;IACIK,SAAS,EACL;EACH,gBAEDlB,KAAA,CAAAa,aAAA,CAACN,aAAa,MAAE,CACf,CACK,CAAC,eACfP,KAAA,CAAAa,aAAA,CAACP,IAAI;IAACY,SAAS,EAAE;EAA2C,GAAEI,IAAI,CAACC,IAAW,CAC7E,CAAC;AAEd,CAAC;AAED,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGtB,qBAAqB,CAACuB,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/E,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAC,CAAC;EAC7B,MAAM;IAAEM,eAAe;IAAEC;EAAY,CAAC,GAAG7B,kBAAkB,CAAC,CAAC;EAE7D,IAAIuB,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB,oBAAO9B,KAAA,CAAAa,aAAA,CAACJ,cAAc;MAACC,MAAM,EAAEoB,GAAG,CAACG,IAAK;MAACtB,OAAO,EAAEqB;IAAY,CAAE,CAAC;EACrE;EAEA,oBAAOhC,KAAA,CAAAa,aAAA,CAACQ,YAAY;IAACC,IAAI,EAAEQ,GAAG,CAACG,IAAK;IAACtB,OAAO,EAAEoB;EAAgB,CAAE,CAAC;AACrE,CAAC","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@ export const CellSize = () => {
|
|
|
12
12
|
if (isFolderRow(row)) {
|
|
13
13
|
return /*#__PURE__*/React.createElement(React.Fragment, null, "-");
|
|
14
14
|
}
|
|
15
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, bytes.format(row.size, {
|
|
15
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, bytes.format(row.data.size, {
|
|
16
16
|
unitSeparator: " "
|
|
17
17
|
}));
|
|
18
18
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","bytes","FileManagerViewConfig","CellSize","useTableRow","isFolderRow","Browser","Table","Column","row","createElement","Fragment","format","size","unitSeparator"],"sources":["CellSize.tsx"],"sourcesContent":["import React from \"react\";\nimport bytes from \"bytes\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellSize = () => {\n const { useTableRow, isFolderRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n if (isFolderRow(row)) {\n return <>{\"-\"}</>;\n }\n\n return <>{bytes.format(row.size, { unitSeparator: \" \" })}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGH,qBAAqB,CAACI,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/E,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAC,CAAC;EAE7B,IAAIC,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB,oBAAOT,KAAA,CAAAU,aAAA,CAAAV,KAAA,CAAAW,QAAA,QAAG,GAAM,CAAC;EACrB;EAEA,oBAAOX,KAAA,CAAAU,aAAA,CAAAV,KAAA,CAAAW,QAAA,QAAGV,KAAK,CAACW,MAAM,CAACH,GAAG,CAACI,IAAI,EAAE;IAAEC,aAAa,EAAE;EAAI,CAAC,CAAI,CAAC;
|
|
1
|
+
{"version":3,"names":["React","bytes","FileManagerViewConfig","CellSize","useTableRow","isFolderRow","Browser","Table","Column","row","createElement","Fragment","format","data","size","unitSeparator"],"sources":["CellSize.tsx"],"sourcesContent":["import React from \"react\";\nimport bytes from \"bytes\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellSize = () => {\n const { useTableRow, isFolderRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n if (isFolderRow(row)) {\n return <>{\"-\"}</>;\n }\n\n return <>{bytes.format(row.data.size, { unitSeparator: \" \" })}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGH,qBAAqB,CAACI,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/E,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAC,CAAC;EAE7B,IAAIC,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB,oBAAOT,KAAA,CAAAU,aAAA,CAAAV,KAAA,CAAAW,QAAA,QAAG,GAAM,CAAC;EACrB;EAEA,oBAAOX,KAAA,CAAAU,aAAA,CAAAV,KAAA,CAAAW,QAAA,QAAGV,KAAK,CAACW,MAAM,CAACH,GAAG,CAACI,IAAI,CAACC,IAAI,EAAE;IAAEC,aAAa,EAAE;EAAI,CAAC,CAAI,CAAC;AACrE,CAAC","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ export const CellType = () => {
|
|
|
11
11
|
if (isFolderRow(row)) {
|
|
12
12
|
return /*#__PURE__*/React.createElement(React.Fragment, null, "-");
|
|
13
13
|
}
|
|
14
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, row.type);
|
|
14
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, row.data.type);
|
|
15
15
|
};
|
|
16
16
|
|
|
17
17
|
//# sourceMappingURL=CellType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","FileManagerViewConfig","CellType","useTableRow","isFolderRow","Browser","Table","Column","row","createElement","Fragment","type"],"sources":["CellType.tsx"],"sourcesContent":["import React from \"react\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellType = () => {\n const { useTableRow, isFolderRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n if (isFolderRow(row)) {\n return <>{\"-\"}</>;\n }\n\n return <>{row.type}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGH,qBAAqB,CAACI,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/E,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAC,CAAC;EAE7B,IAAIC,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB,oBAAOR,KAAA,CAAAS,aAAA,CAAAT,KAAA,CAAAU,QAAA,QAAG,GAAM,CAAC;EACrB;EAEA,oBAAOV,KAAA,CAAAS,aAAA,CAAAT,KAAA,CAAAU,QAAA,QAAGF,GAAG,CAACG,IAAO,CAAC;
|
|
1
|
+
{"version":3,"names":["React","FileManagerViewConfig","CellType","useTableRow","isFolderRow","Browser","Table","Column","row","createElement","Fragment","data","type"],"sources":["CellType.tsx"],"sourcesContent":["import React from \"react\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nexport const CellType = () => {\n const { useTableRow, isFolderRow } = FileManagerViewConfig.Browser.Table.Column;\n const { row } = useTableRow();\n\n if (isFolderRow(row)) {\n return <>{\"-\"}</>;\n }\n\n return <>{row.data.type}</>;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,qBAAqB;AAE9B,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGH,qBAAqB,CAACI,OAAO,CAACC,KAAK,CAACC,MAAM;EAC/E,MAAM;IAAEC;EAAI,CAAC,GAAGL,WAAW,CAAC,CAAC;EAE7B,IAAIC,WAAW,CAACI,GAAG,CAAC,EAAE;IAClB,oBAAOR,KAAA,CAAAS,aAAA,CAAAT,KAAA,CAAAU,QAAA,QAAG,GAAM,CAAC;EACrB;EAEA,oBAAOV,KAAA,CAAAS,aAAA,CAAAT,KAAA,CAAAU,QAAA,QAAGF,GAAG,CAACG,IAAI,CAACC,IAAO,CAAC;AAC/B,CAAC","ignoreList":[]}
|
|
@@ -9,6 +9,9 @@ export const Table = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
9
9
|
}
|
|
10
10
|
return [...createFoldersData(view.folders), ...createRecordsData(view.files)];
|
|
11
11
|
}, [view.folders, view.files, view.displaySubFolders]);
|
|
12
|
+
const selected = useMemo(() => {
|
|
13
|
+
return createRecordsData(view.selected);
|
|
14
|
+
}, [view.selected]);
|
|
12
15
|
return /*#__PURE__*/React.createElement("div", {
|
|
13
16
|
ref: ref
|
|
14
17
|
}, /*#__PURE__*/React.createElement(AcoTable, {
|
|
@@ -18,7 +21,7 @@ export const Table = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
18
21
|
onToggleRow: props.onToggleRow,
|
|
19
22
|
sorting: props.sorting,
|
|
20
23
|
onSortingChange: props.onSortingChange,
|
|
21
|
-
selected:
|
|
24
|
+
selected: selected,
|
|
22
25
|
namespace: "fm.file"
|
|
23
26
|
}));
|
|
24
27
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","forwardRef","useMemo","createFoldersData","createRecordsData","Table","AcoTable","useFileManagerView","props","ref","view","data","displaySubFolders","files","folders","createElement","loading","isListLoading","onSelectRow","onToggleRow","sorting","onSortingChange","
|
|
1
|
+
{"version":3,"names":["React","forwardRef","useMemo","createFoldersData","createRecordsData","Table","AcoTable","useFileManagerView","props","ref","view","data","displaySubFolders","files","folders","selected","createElement","loading","isListLoading","onSelectRow","onToggleRow","sorting","onSortingChange","namespace","displayName"],"sources":["Table.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from \"react\";\nimport type { DataTableSorting, OnDataTableSortingChange } from \"@webiny/admin-ui\";\nimport { createFoldersData, createRecordsData, Table as AcoTable } from \"@webiny/app-aco\";\nimport { useFileManagerView } from \"~/modules/FileManagerRenderer/FileManagerViewProvider\";\nimport type { TableItem } from \"~/types\";\n\nexport interface TableProps {\n onSelectRow: ((rows: TableItem[] | []) => void) | undefined;\n onToggleRow: ((row: TableItem) => void) | undefined;\n sorting: DataTableSorting;\n onSortingChange: OnDataTableSortingChange;\n}\n\nexport const Table = forwardRef<HTMLDivElement, TableProps>((props, ref) => {\n const view = useFileManagerView();\n\n const data = useMemo<TableItem[]>(() => {\n if (!view.displaySubFolders) {\n return createRecordsData(view.files);\n }\n return [...createFoldersData(view.folders), ...createRecordsData(view.files)];\n }, [view.folders, view.files, view.displaySubFolders]);\n\n const selected = useMemo<TableItem[]>(() => {\n return createRecordsData(view.selected);\n }, [view.selected]);\n\n return (\n <div ref={ref}>\n <AcoTable<TableItem>\n data={data}\n loading={view.isListLoading}\n onSelectRow={props.onSelectRow}\n onToggleRow={props.onToggleRow}\n sorting={props.sorting}\n onSortingChange={props.onSortingChange}\n selected={selected}\n namespace={\"fm.file\"}\n />\n </div>\n );\n});\n\nTable.displayName = \"Table\";\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AAElD,SAASC,iBAAiB,EAAEC,iBAAiB,EAAEC,KAAK,IAAIC,QAAQ,QAAQ,iBAAiB;AACzF,SAASC,kBAAkB;AAU3B,OAAO,MAAMF,KAAK,gBAAGJ,UAAU,CAA6B,CAACO,KAAK,EAAEC,GAAG,KAAK;EACxE,MAAMC,IAAI,GAAGH,kBAAkB,CAAC,CAAC;EAEjC,MAAMI,IAAI,GAAGT,OAAO,CAAc,MAAM;IACpC,IAAI,CAACQ,IAAI,CAACE,iBAAiB,EAAE;MACzB,OAAOR,iBAAiB,CAACM,IAAI,CAACG,KAAK,CAAC;IACxC;IACA,OAAO,CAAC,GAAGV,iBAAiB,CAACO,IAAI,CAACI,OAAO,CAAC,EAAE,GAAGV,iBAAiB,CAACM,IAAI,CAACG,KAAK,CAAC,CAAC;EACjF,CAAC,EAAE,CAACH,IAAI,CAACI,OAAO,EAAEJ,IAAI,CAACG,KAAK,EAAEH,IAAI,CAACE,iBAAiB,CAAC,CAAC;EAEtD,MAAMG,QAAQ,GAAGb,OAAO,CAAc,MAAM;IACxC,OAAOE,iBAAiB,CAACM,IAAI,CAACK,QAAQ,CAAC;EAC3C,CAAC,EAAE,CAACL,IAAI,CAACK,QAAQ,CAAC,CAAC;EAEnB,oBACIf,KAAA,CAAAgB,aAAA;IAAKP,GAAG,EAAEA;EAAI,gBACVT,KAAA,CAAAgB,aAAA,CAACV,QAAQ;IACLK,IAAI,EAAEA,IAAK;IACXM,OAAO,EAAEP,IAAI,CAACQ,aAAc;IAC5BC,WAAW,EAAEX,KAAK,CAACW,WAAY;IAC/BC,WAAW,EAAEZ,KAAK,CAACY,WAAY;IAC/BC,OAAO,EAAEb,KAAK,CAACa,OAAQ;IACvBC,eAAe,EAAEd,KAAK,CAACc,eAAgB;IACvCP,QAAQ,EAAEA,QAAS;IACnBQ,SAAS,EAAE;EAAU,CACxB,CACA,CAAC;AAEd,CAAC,CAAC;AAEFlB,KAAK,CAACmB,WAAW,GAAG,OAAO","ignoreList":[]}
|
|
@@ -18,7 +18,7 @@ export const ThreatScanInProgressTableCell = ({
|
|
|
18
18
|
if (isFolderRow(row)) {
|
|
19
19
|
return /*#__PURE__*/React.createElement(React.Fragment, null, children);
|
|
20
20
|
}
|
|
21
|
-
if (!row.tags.length || !row.tags.includes(THREAT_SCAN.IN_PROGRESS)) {
|
|
21
|
+
if (!row.data.tags.length || !row.data.tags.includes(THREAT_SCAN.IN_PROGRESS)) {
|
|
22
22
|
return /*#__PURE__*/React.createElement(React.Fragment, null, children);
|
|
23
23
|
}
|
|
24
24
|
return /*#__PURE__*/React.createElement(Tooltip, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Tooltip","THREAT_SCAN","FileManagerViewConfig","Table","Browser","ThreatScanInProgressTableCell","children","useTableRow","isFolderRow","Column","row","createElement","Fragment","tags","length","includes","IN_PROGRESS","content","trigger","className"],"sources":["ThreatScanInProgressTableCell.tsx"],"sourcesContent":["import React from \"react\";\nimport { Tooltip } from \"@webiny/admin-ui\";\nimport { THREAT_SCAN } from \"~/modules/Enterprise/constants\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nconst { Table } = FileManagerViewConfig.Browser;\n\ninterface ThreatScanInProgressTableCellProps {\n children: React.ReactNode;\n}\n\nexport const ThreatScanInProgressTableCell = ({ children }: ThreatScanInProgressTableCellProps) => {\n const { useTableRow, isFolderRow } = Table.Column;\n const { row } = useTableRow();\n\n if (isFolderRow(row)) {\n return <>{children}</>;\n }\n\n if (!row.tags.length || !row.tags.includes(THREAT_SCAN.IN_PROGRESS)) {\n return <>{children}</>;\n }\n\n return (\n <Tooltip\n content={`This file is currently being scanned for threats.`}\n trigger={\n <div className={\"wby-pointer-events-none wby-opacity-50 wby-block wby-truncate\"}>\n {children}\n </div>\n }\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,WAAW;AACpB,SAASC,qBAAqB;AAE9B,MAAM;EAAEC;AAAM,CAAC,GAAGD,qBAAqB,CAACE,OAAO;AAM/C,OAAO,MAAMC,6BAA6B,GAAGA,CAAC;EAAEC;AAA6C,CAAC,KAAK;EAC/F,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGL,KAAK,CAACM,MAAM;EACjD,MAAM;IAAEC;EAAI,CAAC,GAAGH,WAAW,CAAC,CAAC;EAE7B,IAAIC,WAAW,CAACE,GAAG,CAAC,EAAE;IAClB,oBAAOX,KAAA,CAAAY,aAAA,CAAAZ,KAAA,CAAAa,QAAA,QAAGN,QAAW,CAAC;EAC1B;EAEA,IAAI,CAACI,GAAG,CAACG,IAAI,CAACC,MAAM,IAAI,
|
|
1
|
+
{"version":3,"names":["React","Tooltip","THREAT_SCAN","FileManagerViewConfig","Table","Browser","ThreatScanInProgressTableCell","children","useTableRow","isFolderRow","Column","row","createElement","Fragment","data","tags","length","includes","IN_PROGRESS","content","trigger","className"],"sources":["ThreatScanInProgressTableCell.tsx"],"sourcesContent":["import React from \"react\";\nimport { Tooltip } from \"@webiny/admin-ui\";\nimport { THREAT_SCAN } from \"~/modules/Enterprise/constants\";\nimport { FileManagerViewConfig } from \"~/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig\";\n\nconst { Table } = FileManagerViewConfig.Browser;\n\ninterface ThreatScanInProgressTableCellProps {\n children: React.ReactNode;\n}\n\nexport const ThreatScanInProgressTableCell = ({ children }: ThreatScanInProgressTableCellProps) => {\n const { useTableRow, isFolderRow } = Table.Column;\n const { row } = useTableRow();\n\n if (isFolderRow(row)) {\n return <>{children}</>;\n }\n\n if (!row.data.tags.length || !row.data.tags.includes(THREAT_SCAN.IN_PROGRESS)) {\n return <>{children}</>;\n }\n\n return (\n <Tooltip\n content={`This file is currently being scanned for threats.`}\n trigger={\n <div className={\"wby-pointer-events-none wby-opacity-50 wby-block wby-truncate\"}>\n {children}\n </div>\n }\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,SAASC,WAAW;AACpB,SAASC,qBAAqB;AAE9B,MAAM;EAAEC;AAAM,CAAC,GAAGD,qBAAqB,CAACE,OAAO;AAM/C,OAAO,MAAMC,6BAA6B,GAAGA,CAAC;EAAEC;AAA6C,CAAC,KAAK;EAC/F,MAAM;IAAEC,WAAW;IAAEC;EAAY,CAAC,GAAGL,KAAK,CAACM,MAAM;EACjD,MAAM;IAAEC;EAAI,CAAC,GAAGH,WAAW,CAAC,CAAC;EAE7B,IAAIC,WAAW,CAACE,GAAG,CAAC,EAAE;IAClB,oBAAOX,KAAA,CAAAY,aAAA,CAAAZ,KAAA,CAAAa,QAAA,QAAGN,QAAW,CAAC;EAC1B;EAEA,IAAI,CAACI,GAAG,CAACG,IAAI,CAACC,IAAI,CAACC,MAAM,IAAI,CAACL,GAAG,CAACG,IAAI,CAACC,IAAI,CAACE,QAAQ,CAACf,WAAW,CAACgB,WAAW,CAAC,EAAE;IAC3E,oBAAOlB,KAAA,CAAAY,aAAA,CAAAZ,KAAA,CAAAa,QAAA,QAAGN,QAAW,CAAC;EAC1B;EAEA,oBACIP,KAAA,CAAAY,aAAA,CAACX,OAAO;IACJkB,OAAO,EAAE,mDAAoD;IAC7DC,OAAO,eACHpB,KAAA,CAAAY,aAAA;MAAKS,SAAS,EAAE;IAAgE,GAC3Ed,QACA;EACR,CACJ,CAAC;AAEV,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React, { useCallback, useEffect, useMemo, useState } from "react";
|
|
2
2
|
import Files from "react-butterfiles";
|
|
3
3
|
import debounce from "lodash/debounce";
|
|
4
|
-
import omit from "lodash/omit";
|
|
5
4
|
// @ts-expect-error
|
|
6
5
|
import { useHotkeys } from "react-hotkeyz";
|
|
7
6
|
import { observer } from "mobx-react-lite";
|
|
@@ -159,7 +158,7 @@ const FileManagerView = () => {
|
|
|
159
158
|
});
|
|
160
159
|
}
|
|
161
160
|
if (view.listTable) {
|
|
162
|
-
const getSelectableRow = rows => rows.filter(row => row.$type === "RECORD").map(row =>
|
|
161
|
+
const getSelectableRow = rows => rows.filter(row => row.$type === "RECORD").map(row => row.data);
|
|
163
162
|
const onSelectRow = view.hasOnSelectCallback ? rows => {
|
|
164
163
|
const files = getSelectableRow(rows);
|
|
165
164
|
if (view.multiple) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useEffect","useMemo","useState","Files","debounce","omit","useHotkeys","observer","Heading","Scrollbar","i18n","OverlayLayout","useSnackbar","LeftPanel","RightPanel","SplitView","useI18N","useTenancy","useFileManagerView","outputFileSelectionError","LeftSidebar","useFileManagerViewConfig","BatchFileUploader","BottomInfoBar","BulkActions","FileDropPlaceholder","Empty","FileDetails","Filters","Grid","Header","SearchWidget","Table","TagsList","UploadStatus","t","ns","createSort","sorting","length","undefined","reduce","items","item","sort","id","desc","includes","push","useLayoutId","applicationId","tenant","getCurrentLocale","localeCode","console","warn","FileManagerView","view","browser","showSnackbar","drawerLoading","setDrawerLoading","uploader","uploadFile","folderId","tableSorting","setTableSorting","currentFile","setCurrentFile","layoutId","fetchFileDetails","showingFileDetails","file","getFile","setListSort","getFileUploadErrorMessage","e","match","message","zIndex","keys","esc","onClose","uploadFiles","files","addFiles","setIsUploadProgressIndicatorVisible","onUploadFinished","uploaded","errors","reset","createElement","Fragment","map","key","name","timeout","onUploadCompletion","filesBeingUploaded","getJobs","progress","renderList","browseFiles","isListLoading","isSearch","isSearchResult","folders","listTable","getSelectableRow","rows","filter","row","$type","onSelectRow","hasOnSelectCallback","multiple","setSelected","onChange","onToggleRow","toggleSelected","onSortingChange","records","loading","onFolderClick","setFolderId","selected","deselectAll","displaySubFolders","loadMoreOnScroll","scrollFrame","top","loadMoreFiles","meta","updateFile","data","fileData","hideFileDetails","maxSize","settings","uploadMaxFileSize","multipleMaxSize","accept","onSuccess","filesToUpload","src","Boolean","onError","getDropZoneProps","variant","onExited","barLeft","level","barMiddle","open","onSave","span","currentFolder","filterByTags","tags","activeTags","allTags","onActivatedTagsChange","setActiveTags","className","style","height","Object","assign","onDragOver","setDragging","onDragLeave","onDrop","onScrollFrame","dragging","numberOfFiles","isVisible","isUploadProgressIndicatorVisible","setIsVisible","listing","isListLoadingMore","totalCount","currentCount"],"sources":["FileManagerView.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport type { FilesRenderChildren } from \"react-butterfiles\";\nimport Files from \"react-butterfiles\";\nimport debounce from \"lodash/debounce\";\nimport omit from \"lodash/omit\";\nimport type { positionValues } from \"react-custom-scrollbars\";\n// @ts-expect-error\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { observer } from \"mobx-react-lite\";\nimport { Heading, type DataTableSorting, Scrollbar } from \"@webiny/admin-ui\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { OverlayLayout, useSnackbar } from \"@webiny/app-admin\";\nimport { LeftPanel, RightPanel, SplitView } from \"@webiny/app-admin/components/SplitView\";\nimport { useI18N } from \"@webiny/app-i18n\";\nimport { useTenancy } from \"@webiny/app-tenancy\";\nimport { useFileManagerView } from \"~/modules/FileManagerRenderer/FileManagerViewProvider\";\nimport { outputFileSelectionError } from \"./outputFileSelectionError\";\nimport { LeftSidebar } from \"./LeftSidebar\";\nimport { useFileManagerViewConfig } from \"~/index\";\nimport type { FileItem } from \"@webiny/app-admin/types\";\nimport { BatchFileUploader } from \"~/BatchFileUploader\";\nimport type { ListFilesSort, ListFilesSortItem } from \"~/modules/FileManagerApiProvider/graphql\";\nimport type { TableItem } from \"~/types\";\n\nimport { BottomInfoBar } from \"~/components/BottomInfoBar\";\nimport { BulkActions } from \"~/components/BulkActions\";\nimport { FileDropPlaceholder } from \"~/components/FileDropPlaceholder\";\nimport { Empty } from \"~/components/Empty\";\nimport { FileDetails } from \"~/components/FileDetails\";\nimport { Filters } from \"~/components/Filters\";\nimport { Grid } from \"~/components/Grid\";\nimport { Header } from \"~/components/Header\";\nimport { SearchWidget } from \"~/components/SearchWidget\";\nimport type { TableProps } from \"~/components/Table\";\nimport { Table } from \"~/components/Table\";\nimport { TagsList } from \"~/components/TagsList\";\nimport { UploadStatus } from \"~/components/UploadStatus\";\n\nconst t = i18n.ns(\"app-admin/file-manager/file-manager-view\");\n\ntype GetFileUploadErrorMessageProps =\n | string\n | {\n message: string;\n };\n\nconst createSort = (sorting?: DataTableSorting): ListFilesSort | undefined => {\n if (!sorting?.length) {\n return undefined;\n }\n return sorting.reduce<ListFilesSort>((items, item) => {\n const sort = `${item.id}_${item.desc ? \"DESC\" : \"ASC\"}` as ListFilesSortItem;\n if (items.includes(sort)) {\n return items;\n }\n items.push(sort);\n return items;\n }, []);\n};\n\n/**\n * Generates a `layoutId` to be used with the `<SplitView />` component.\n * The `layoutId` is essential for saving user preferences into localStorage.\n * The generation of the `layoutId` takes into account the current `tenantId`, `localeCode`, and the provided `applicationId`.\n *\n * TODO: export the useLayoutId from a generic use package, such as app-admin. At the moment is not possible because of circular dependency issues.\n */\nconst useLayoutId = (applicationId: string) => {\n const { tenant } = useTenancy();\n const { getCurrentLocale } = useI18N();\n const localeCode = getCurrentLocale(\"content\");\n\n if (!tenant || !localeCode) {\n console.warn(\"Missing tenant or localeCode while creating layoutId\");\n return null;\n }\n\n return `T#${tenant}#L#${localeCode}#A#${applicationId}`;\n};\n\nconst FileManagerView = () => {\n const view = useFileManagerView();\n const { browser } = useFileManagerViewConfig();\n const { showSnackbar } = useSnackbar();\n const [drawerLoading, setDrawerLoading] = useState<string | null>(null);\n\n const uploader = useMemo<BatchFileUploader>(\n () => new BatchFileUploader(view.uploadFile),\n [view.folderId]\n );\n\n const [tableSorting, setTableSorting] = useState<DataTableSorting>([]);\n const [currentFile, setCurrentFile] = useState<FileItem>();\n const layoutId = useLayoutId(\"fm:file\");\n\n useEffect(() => {\n const fetchFileDetails = async () => {\n if (view.showingFileDetails) {\n setDrawerLoading(\"Loading file details...\");\n const file = await view.getFile(view.showingFileDetails);\n setCurrentFile(file);\n } else {\n setCurrentFile(undefined);\n }\n setDrawerLoading(null);\n };\n\n // call the function\n fetchFileDetails();\n }, [view.showingFileDetails]);\n\n useEffect(() => {\n if (!tableSorting?.length) {\n return;\n }\n const sort = createSort(tableSorting);\n if (!sort) {\n return;\n }\n view.setListSort(sort);\n }, [tableSorting]);\n\n const getFileUploadErrorMessage = useCallback((e: GetFileUploadErrorMessageProps) => {\n if (typeof e === \"string\") {\n const match = e.match(/Message>(.*?)<\\/Message/);\n if (match) {\n const [, message] = match;\n return message;\n }\n\n return e;\n }\n return e.message;\n }, []);\n\n useHotkeys({\n zIndex: 20,\n keys: {\n esc: view.onClose\n }\n });\n\n const uploadFiles = async (files: File[]) => {\n uploader.addFiles(files);\n view.setIsUploadProgressIndicatorVisible(true);\n\n uploader.onUploadFinished(({ uploaded, errors }) => {\n uploader.reset();\n view.setIsUploadProgressIndicatorVisible(true);\n\n if (errors.length > 0) {\n showSnackbar(\n <>\n {t`One or more files were not uploaded successfully:`}\n <ol>\n {errors.map(({ file, e }) => (\n <li key={file.name}>\n <strong>{file.name}</strong>: {getFileUploadErrorMessage(e)}\n </li>\n ))}\n </ol>\n </>\n );\n return;\n }\n\n showSnackbar(t`File upload complete.`, { timeout: 3000 });\n\n view.onUploadCompletion(uploaded);\n });\n };\n\n const filesBeingUploaded = uploader.getJobs().length;\n const progress = uploader.progress;\n\n const renderList = (browseFiles: FilesRenderChildren[\"browseFiles\"]) => {\n if (!view.isListLoading && view.isSearch && view.files.length === 0) {\n return <Empty isSearchResult={true} browseFiles={browseFiles} />;\n }\n\n if (!view.isListLoading && view.files.length === 0 && view.folders.length === 0) {\n return <Empty isSearchResult={false} browseFiles={browseFiles} />;\n }\n\n if (view.listTable) {\n const getSelectableRow = (rows: TableItem[]) =>\n rows\n .filter(row => row.$type === \"RECORD\")\n .map(row => omit(row, [\"$type\", \"$selectable\"]) as FileItem);\n\n const onSelectRow: TableProps[\"onSelectRow\"] = view.hasOnSelectCallback\n ? rows => {\n const files = getSelectableRow(rows);\n\n if (view.multiple) {\n view.setSelected(files);\n } else {\n view.onChange(files[0]);\n }\n }\n : rows => {\n const files = getSelectableRow(rows);\n view.setSelected(files);\n };\n\n const onToggleRow: TableProps[\"onToggleRow\"] = view.hasOnSelectCallback\n ? row => {\n const files = getSelectableRow([row]);\n\n if (view.multiple) {\n view.toggleSelected(files[0]);\n } else {\n view.onChange(files[0]);\n }\n }\n : row => {\n const files = getSelectableRow([row]);\n view.toggleSelected(files[0]);\n };\n\n return (\n <Table\n onSelectRow={onSelectRow}\n onToggleRow={onToggleRow}\n sorting={tableSorting}\n onSortingChange={setTableSorting}\n />\n );\n }\n\n return (\n <Grid\n folders={view.folders}\n records={view.files}\n loading={view.isListLoading}\n onFolderClick={view.setFolderId}\n selected={view.selected}\n multiple={view.multiple}\n toggleSelected={view.toggleSelected}\n deselectAll={view.deselectAll}\n onChange={view.onChange}\n onClose={view.onClose}\n hasOnSelectCallback={view.hasOnSelectCallback}\n displaySubFolders={view.displaySubFolders}\n />\n );\n };\n\n const loadMoreOnScroll = useCallback(\n debounce(async ({ scrollFrame }: { scrollFrame: positionValues }) => {\n if (scrollFrame.top > 0.8) {\n view.loadMoreFiles();\n }\n }, 200),\n [view.meta, view.loadMoreFiles]\n );\n\n const updateFile = useCallback(\n async (data: FileItem) => {\n const { id, ...fileData } = data;\n setDrawerLoading(\"Saving file changes...\");\n await view.updateFile(id, fileData);\n setDrawerLoading(null);\n showSnackbar(\"File updated successfully!\");\n view.hideFileDetails();\n },\n [view.updateFile]\n );\n\n return (\n <>\n <Files\n multiple\n maxSize={view.settings ? view.settings.uploadMaxFileSize + \"b\" : \"1TB\"}\n multipleMaxSize={\"1TB\"}\n accept={view.accept}\n onSuccess={files => {\n const filesToUpload = files\n .map(file => file.src.file)\n .filter(Boolean) as File[];\n uploadFiles(filesToUpload);\n }}\n onError={errors => {\n const message = outputFileSelectionError(errors);\n showSnackbar(message);\n }}\n >\n {({ getDropZoneProps, browseFiles }) => (\n <OverlayLayout\n variant={\"strong\"}\n onExited={view.onClose}\n barLeft={<Heading level={5}>{\"File manager\"}</Heading>}\n barMiddle={<SearchWidget />}\n >\n <>\n <FileDetails\n loading={drawerLoading}\n file={currentFile}\n open={Boolean(view.showingFileDetails)}\n onClose={view.hideFileDetails}\n onSave={updateFile}\n />\n <SplitView layoutId={layoutId}>\n <LeftPanel span={2}>\n <LeftSidebar\n currentFolder={view.folderId}\n onFolderClick={view.setFolderId}\n >\n {browser.filterByTags ? (\n <TagsList\n loading={view.tags.loading}\n activeTags={view.tags.activeTags}\n tags={view.tags.allTags}\n onActivatedTagsChange={view.tags.setActiveTags}\n />\n ) : null}\n </LeftSidebar>\n </LeftPanel>\n <RightPanel span={10}>\n <div\n className={\"wby-flex wby-flex-col wby-relative\"}\n style={{ height: \"calc(100vh - 69px\" }}\n >\n <Header browseFiles={browseFiles} />\n <div\n className={\"wby-flex-1\"}\n {...getDropZoneProps({\n onDragOver: () => view.setDragging(true),\n onDragLeave: () => view.setDragging(false),\n onDrop: () => view.setDragging(false)\n })}\n data-testid={\"fm-list-wrapper\"}\n >\n <BulkActions />\n <Filters />\n <Scrollbar\n onScrollFrame={scrollFrame =>\n loadMoreOnScroll({ scrollFrame })\n }\n >\n {renderList(browseFiles)}\n </Scrollbar>\n {view.dragging && <FileDropPlaceholder />}\n <UploadStatus\n numberOfFiles={filesBeingUploaded}\n progress={progress}\n isVisible={view.isUploadProgressIndicatorVisible}\n setIsVisible={\n view.setIsUploadProgressIndicatorVisible\n }\n />\n </div>\n <BottomInfoBar\n accept={view.accept}\n listing={view.isListLoadingMore}\n loading={view.isListLoading}\n totalCount={view.meta?.totalCount ?? 0}\n currentCount={view.files.length}\n />\n </div>\n </RightPanel>\n </SplitView>\n </>\n </OverlayLayout>\n )}\n </Files>\n </>\n );\n};\n\nexport default observer(FileManagerView);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useCallback","useEffect","useMemo","useState","Files","debounce","useHotkeys","observer","Heading","Scrollbar","i18n","OverlayLayout","useSnackbar","LeftPanel","RightPanel","SplitView","useI18N","useTenancy","useFileManagerView","outputFileSelectionError","LeftSidebar","useFileManagerViewConfig","BatchFileUploader","BottomInfoBar","BulkActions","FileDropPlaceholder","Empty","FileDetails","Filters","Grid","Header","SearchWidget","Table","TagsList","UploadStatus","t","ns","createSort","sorting","length","undefined","reduce","items","item","sort","id","desc","includes","push","useLayoutId","applicationId","tenant","getCurrentLocale","localeCode","console","warn","FileManagerView","view","browser","showSnackbar","drawerLoading","setDrawerLoading","uploader","uploadFile","folderId","tableSorting","setTableSorting","currentFile","setCurrentFile","layoutId","fetchFileDetails","showingFileDetails","file","getFile","setListSort","getFileUploadErrorMessage","e","match","message","zIndex","keys","esc","onClose","uploadFiles","files","addFiles","setIsUploadProgressIndicatorVisible","onUploadFinished","uploaded","errors","reset","createElement","Fragment","map","key","name","timeout","onUploadCompletion","filesBeingUploaded","getJobs","progress","renderList","browseFiles","isListLoading","isSearch","isSearchResult","folders","listTable","getSelectableRow","rows","filter","row","$type","data","onSelectRow","hasOnSelectCallback","multiple","setSelected","onChange","onToggleRow","toggleSelected","onSortingChange","records","loading","onFolderClick","setFolderId","selected","deselectAll","displaySubFolders","loadMoreOnScroll","scrollFrame","top","loadMoreFiles","meta","updateFile","fileData","hideFileDetails","maxSize","settings","uploadMaxFileSize","multipleMaxSize","accept","onSuccess","filesToUpload","src","Boolean","onError","getDropZoneProps","variant","onExited","barLeft","level","barMiddle","open","onSave","span","currentFolder","filterByTags","tags","activeTags","allTags","onActivatedTagsChange","setActiveTags","className","style","height","Object","assign","onDragOver","setDragging","onDragLeave","onDrop","onScrollFrame","dragging","numberOfFiles","isVisible","isUploadProgressIndicatorVisible","setIsVisible","listing","isListLoadingMore","totalCount","currentCount"],"sources":["FileManagerView.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport type { FilesRenderChildren } from \"react-butterfiles\";\nimport Files from \"react-butterfiles\";\nimport debounce from \"lodash/debounce\";\nimport type { positionValues } from \"react-custom-scrollbars\";\n// @ts-expect-error\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { observer } from \"mobx-react-lite\";\nimport { Heading, type DataTableSorting, Scrollbar } from \"@webiny/admin-ui\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { OverlayLayout, useSnackbar } from \"@webiny/app-admin\";\nimport { LeftPanel, RightPanel, SplitView } from \"@webiny/app-admin/components/SplitView\";\nimport { useI18N } from \"@webiny/app-i18n\";\nimport { useTenancy } from \"@webiny/app-tenancy\";\nimport { useFileManagerView } from \"~/modules/FileManagerRenderer/FileManagerViewProvider\";\nimport { outputFileSelectionError } from \"./outputFileSelectionError\";\nimport { LeftSidebar } from \"./LeftSidebar\";\nimport { useFileManagerViewConfig } from \"~/index\";\nimport type { FileItem } from \"@webiny/app-admin/types\";\nimport { BatchFileUploader } from \"~/BatchFileUploader\";\nimport type { ListFilesSort, ListFilesSortItem } from \"~/modules/FileManagerApiProvider/graphql\";\nimport type { TableItem } from \"~/types\";\n\nimport { BottomInfoBar } from \"~/components/BottomInfoBar\";\nimport { BulkActions } from \"~/components/BulkActions\";\nimport { FileDropPlaceholder } from \"~/components/FileDropPlaceholder\";\nimport { Empty } from \"~/components/Empty\";\nimport { FileDetails } from \"~/components/FileDetails\";\nimport { Filters } from \"~/components/Filters\";\nimport { Grid } from \"~/components/Grid\";\nimport { Header } from \"~/components/Header\";\nimport { SearchWidget } from \"~/components/SearchWidget\";\nimport type { TableProps } from \"~/components/Table\";\nimport { Table } from \"~/components/Table\";\nimport { TagsList } from \"~/components/TagsList\";\nimport { UploadStatus } from \"~/components/UploadStatus\";\n\nconst t = i18n.ns(\"app-admin/file-manager/file-manager-view\");\n\ntype GetFileUploadErrorMessageProps =\n | string\n | {\n message: string;\n };\n\nconst createSort = (sorting?: DataTableSorting): ListFilesSort | undefined => {\n if (!sorting?.length) {\n return undefined;\n }\n return sorting.reduce<ListFilesSort>((items, item) => {\n const sort = `${item.id}_${item.desc ? \"DESC\" : \"ASC\"}` as ListFilesSortItem;\n if (items.includes(sort)) {\n return items;\n }\n items.push(sort);\n return items;\n }, []);\n};\n\n/**\n * Generates a `layoutId` to be used with the `<SplitView />` component.\n * The `layoutId` is essential for saving user preferences into localStorage.\n * The generation of the `layoutId` takes into account the current `tenantId`, `localeCode`, and the provided `applicationId`.\n *\n * TODO: export the useLayoutId from a generic use package, such as app-admin. At the moment is not possible because of circular dependency issues.\n */\nconst useLayoutId = (applicationId: string) => {\n const { tenant } = useTenancy();\n const { getCurrentLocale } = useI18N();\n const localeCode = getCurrentLocale(\"content\");\n\n if (!tenant || !localeCode) {\n console.warn(\"Missing tenant or localeCode while creating layoutId\");\n return null;\n }\n\n return `T#${tenant}#L#${localeCode}#A#${applicationId}`;\n};\n\nconst FileManagerView = () => {\n const view = useFileManagerView();\n const { browser } = useFileManagerViewConfig();\n const { showSnackbar } = useSnackbar();\n const [drawerLoading, setDrawerLoading] = useState<string | null>(null);\n\n const uploader = useMemo<BatchFileUploader>(\n () => new BatchFileUploader(view.uploadFile),\n [view.folderId]\n );\n\n const [tableSorting, setTableSorting] = useState<DataTableSorting>([]);\n const [currentFile, setCurrentFile] = useState<FileItem>();\n const layoutId = useLayoutId(\"fm:file\");\n\n useEffect(() => {\n const fetchFileDetails = async () => {\n if (view.showingFileDetails) {\n setDrawerLoading(\"Loading file details...\");\n const file = await view.getFile(view.showingFileDetails);\n setCurrentFile(file);\n } else {\n setCurrentFile(undefined);\n }\n setDrawerLoading(null);\n };\n\n // call the function\n fetchFileDetails();\n }, [view.showingFileDetails]);\n\n useEffect(() => {\n if (!tableSorting?.length) {\n return;\n }\n const sort = createSort(tableSorting);\n if (!sort) {\n return;\n }\n view.setListSort(sort);\n }, [tableSorting]);\n\n const getFileUploadErrorMessage = useCallback((e: GetFileUploadErrorMessageProps) => {\n if (typeof e === \"string\") {\n const match = e.match(/Message>(.*?)<\\/Message/);\n if (match) {\n const [, message] = match;\n return message;\n }\n\n return e;\n }\n return e.message;\n }, []);\n\n useHotkeys({\n zIndex: 20,\n keys: {\n esc: view.onClose\n }\n });\n\n const uploadFiles = async (files: File[]) => {\n uploader.addFiles(files);\n view.setIsUploadProgressIndicatorVisible(true);\n\n uploader.onUploadFinished(({ uploaded, errors }) => {\n uploader.reset();\n view.setIsUploadProgressIndicatorVisible(true);\n\n if (errors.length > 0) {\n showSnackbar(\n <>\n {t`One or more files were not uploaded successfully:`}\n <ol>\n {errors.map(({ file, e }) => (\n <li key={file.name}>\n <strong>{file.name}</strong>: {getFileUploadErrorMessage(e)}\n </li>\n ))}\n </ol>\n </>\n );\n return;\n }\n\n showSnackbar(t`File upload complete.`, { timeout: 3000 });\n\n view.onUploadCompletion(uploaded);\n });\n };\n\n const filesBeingUploaded = uploader.getJobs().length;\n const progress = uploader.progress;\n\n const renderList = (browseFiles: FilesRenderChildren[\"browseFiles\"]) => {\n if (!view.isListLoading && view.isSearch && view.files.length === 0) {\n return <Empty isSearchResult={true} browseFiles={browseFiles} />;\n }\n\n if (!view.isListLoading && view.files.length === 0 && view.folders.length === 0) {\n return <Empty isSearchResult={false} browseFiles={browseFiles} />;\n }\n\n if (view.listTable) {\n const getSelectableRow = (rows: TableItem[]) =>\n rows.filter(row => row.$type === \"RECORD\").map(row => row.data as FileItem);\n\n const onSelectRow: TableProps[\"onSelectRow\"] = view.hasOnSelectCallback\n ? rows => {\n const files = getSelectableRow(rows);\n\n if (view.multiple) {\n view.setSelected(files);\n } else {\n view.onChange(files[0]);\n }\n }\n : rows => {\n const files = getSelectableRow(rows);\n view.setSelected(files);\n };\n\n const onToggleRow: TableProps[\"onToggleRow\"] = view.hasOnSelectCallback\n ? row => {\n const files = getSelectableRow([row]);\n\n if (view.multiple) {\n view.toggleSelected(files[0]);\n } else {\n view.onChange(files[0]);\n }\n }\n : row => {\n const files = getSelectableRow([row]);\n view.toggleSelected(files[0]);\n };\n\n return (\n <Table\n onSelectRow={onSelectRow}\n onToggleRow={onToggleRow}\n sorting={tableSorting}\n onSortingChange={setTableSorting}\n />\n );\n }\n\n return (\n <Grid\n folders={view.folders}\n records={view.files}\n loading={view.isListLoading}\n onFolderClick={view.setFolderId}\n selected={view.selected}\n multiple={view.multiple}\n toggleSelected={view.toggleSelected}\n deselectAll={view.deselectAll}\n onChange={view.onChange}\n onClose={view.onClose}\n hasOnSelectCallback={view.hasOnSelectCallback}\n displaySubFolders={view.displaySubFolders}\n />\n );\n };\n\n const loadMoreOnScroll = useCallback(\n debounce(async ({ scrollFrame }: { scrollFrame: positionValues }) => {\n if (scrollFrame.top > 0.8) {\n view.loadMoreFiles();\n }\n }, 200),\n [view.meta, view.loadMoreFiles]\n );\n\n const updateFile = useCallback(\n async (data: FileItem) => {\n const { id, ...fileData } = data;\n setDrawerLoading(\"Saving file changes...\");\n await view.updateFile(id, fileData);\n setDrawerLoading(null);\n showSnackbar(\"File updated successfully!\");\n view.hideFileDetails();\n },\n [view.updateFile]\n );\n\n return (\n <>\n <Files\n multiple\n maxSize={view.settings ? view.settings.uploadMaxFileSize + \"b\" : \"1TB\"}\n multipleMaxSize={\"1TB\"}\n accept={view.accept}\n onSuccess={files => {\n const filesToUpload = files\n .map(file => file.src.file)\n .filter(Boolean) as File[];\n uploadFiles(filesToUpload);\n }}\n onError={errors => {\n const message = outputFileSelectionError(errors);\n showSnackbar(message);\n }}\n >\n {({ getDropZoneProps, browseFiles }) => (\n <OverlayLayout\n variant={\"strong\"}\n onExited={view.onClose}\n barLeft={<Heading level={5}>{\"File manager\"}</Heading>}\n barMiddle={<SearchWidget />}\n >\n <>\n <FileDetails\n loading={drawerLoading}\n file={currentFile}\n open={Boolean(view.showingFileDetails)}\n onClose={view.hideFileDetails}\n onSave={updateFile}\n />\n <SplitView layoutId={layoutId}>\n <LeftPanel span={2}>\n <LeftSidebar\n currentFolder={view.folderId}\n onFolderClick={view.setFolderId}\n >\n {browser.filterByTags ? (\n <TagsList\n loading={view.tags.loading}\n activeTags={view.tags.activeTags}\n tags={view.tags.allTags}\n onActivatedTagsChange={view.tags.setActiveTags}\n />\n ) : null}\n </LeftSidebar>\n </LeftPanel>\n <RightPanel span={10}>\n <div\n className={\"wby-flex wby-flex-col wby-relative\"}\n style={{ height: \"calc(100vh - 69px\" }}\n >\n <Header browseFiles={browseFiles} />\n <div\n className={\"wby-flex-1\"}\n {...getDropZoneProps({\n onDragOver: () => view.setDragging(true),\n onDragLeave: () => view.setDragging(false),\n onDrop: () => view.setDragging(false)\n })}\n data-testid={\"fm-list-wrapper\"}\n >\n <BulkActions />\n <Filters />\n <Scrollbar\n onScrollFrame={scrollFrame =>\n loadMoreOnScroll({ scrollFrame })\n }\n >\n {renderList(browseFiles)}\n </Scrollbar>\n {view.dragging && <FileDropPlaceholder />}\n <UploadStatus\n numberOfFiles={filesBeingUploaded}\n progress={progress}\n isVisible={view.isUploadProgressIndicatorVisible}\n setIsVisible={\n view.setIsUploadProgressIndicatorVisible\n }\n />\n </div>\n <BottomInfoBar\n accept={view.accept}\n listing={view.isListLoadingMore}\n loading={view.isListLoading}\n totalCount={view.meta?.totalCount ?? 0}\n currentCount={view.files.length}\n />\n </div>\n </RightPanel>\n </SplitView>\n </>\n </OverlayLayout>\n )}\n </Files>\n </>\n );\n};\n\nexport default observer(FileManagerView);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -141,8 +141,13 @@ export declare const FileManagerViewConfig: (({ priority, children }: import("@w
|
|
|
141
141
|
displayName: string;
|
|
142
142
|
}>) => (props: unknown) => React.JSX.Element;
|
|
143
143
|
} & {
|
|
144
|
-
useTableRow:
|
|
145
|
-
|
|
144
|
+
useTableRow: {
|
|
145
|
+
(): import("@webiny/app-aco").TableRowContextData<import("../../../types").TableItem>;
|
|
146
|
+
<TUserRow>(): import("@webiny/app-aco").TableRowContextData<import("../../../types").TableItem & {
|
|
147
|
+
data: TUserRow;
|
|
148
|
+
}>;
|
|
149
|
+
};
|
|
150
|
+
isFolderRow: (row: import("@webiny/app-aco").TableRow<unknown>) => row is import("@webiny/app-aco").FolderTableRow;
|
|
146
151
|
};
|
|
147
152
|
Cell: {
|
|
148
153
|
Thumbnail: (({ type, element }: import("./configComponents/Browser/Table/Thumbnail").RendererProps) => React.JSX.Element) & {
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FileAction.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig, RecordActionConfig } from "@webiny/app-aco";
|
|
3
|
-
export { RecordActionConfig as FileActionConfig };
|
|
2
|
+
import { AcoConfig, type RecordActionConfig } from "@webiny/app-aco";
|
|
3
|
+
export type { RecordActionConfig as FileActionConfig };
|
|
4
4
|
type FileActionProps = React.ComponentProps<typeof AcoConfig.Record.Action>;
|
|
5
5
|
export declare const FileAction: ((props: FileActionProps) => React.JSX.Element) & {
|
|
6
6
|
OptionsMenuItem: (props: import("@webiny/app-admin").OptionsMenuItemProps) => React.JSX.Element;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig
|
|
2
|
+
import { AcoConfig } from "@webiny/app-aco";
|
|
3
3
|
const {
|
|
4
4
|
Record
|
|
5
5
|
} = AcoConfig;
|
|
6
|
-
export { RecordActionConfig as FileActionConfig };
|
|
7
6
|
const BaseFileAction = props => {
|
|
8
7
|
return /*#__PURE__*/React.createElement(AcoConfig, null, /*#__PURE__*/React.createElement(Record.Action, props));
|
|
9
8
|
};
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FileAction.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","AcoConfig","
|
|
1
|
+
{"version":3,"names":["React","AcoConfig","Record","BaseFileAction","props","createElement","Action","FileAction","Object","assign","OptionsMenuItem","OptionsMenuLink"],"sources":["FileAction.tsx"],"sourcesContent":["import React from \"react\";\nimport { AcoConfig, type RecordActionConfig } from \"@webiny/app-aco\";\n\nconst { Record } = AcoConfig;\n\nexport type { RecordActionConfig as FileActionConfig };\n\ntype FileActionProps = React.ComponentProps<typeof AcoConfig.Record.Action>;\n\nconst BaseFileAction = (props: FileActionProps) => {\n return (\n <AcoConfig>\n <Record.Action {...props} />\n </AcoConfig>\n );\n};\n\nexport const FileAction = Object.assign(BaseFileAction, {\n OptionsMenuItem: Record.Action.OptionsMenuItem,\n OptionsMenuLink: Record.Action.OptionsMenuLink\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAiC,iBAAiB;AAEpE,MAAM;EAAEC;AAAO,CAAC,GAAGD,SAAS;AAM5B,MAAME,cAAc,GAAIC,KAAsB,IAAK;EAC/C,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,SAAS,qBACND,KAAA,CAAAK,aAAA,CAACH,MAAM,CAACI,MAAM,EAAKF,KAAQ,CACpB,CAAC;AAEpB,CAAC;AAED,OAAO,MAAMG,UAAU,GAAGC,MAAM,CAACC,MAAM,CAACN,cAAc,EAAE;EACpDO,eAAe,EAAER,MAAM,CAACI,MAAM,CAACI,eAAe;EAC9CC,eAAe,EAAET,MAAM,CAACI,MAAM,CAACK;AACnC,CAAC,CAAC","ignoreList":[]}
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig, FolderActionConfig } from "@webiny/app-aco";
|
|
3
|
-
export { FolderActionConfig };
|
|
2
|
+
import { AcoConfig, type FolderActionConfig } from "@webiny/app-aco";
|
|
3
|
+
export type { FolderActionConfig };
|
|
4
4
|
type FolderActionProps = React.ComponentProps<typeof AcoConfig.Folder.Action>;
|
|
5
5
|
export declare const FolderAction: ((props: FolderActionProps) => React.JSX.Element) & {
|
|
6
6
|
OptionsMenuItem: (props: import("@webiny/app-admin").OptionsMenuItemProps) => React.JSX.Element;
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig
|
|
2
|
+
import { AcoConfig } from "@webiny/app-aco";
|
|
3
3
|
const {
|
|
4
4
|
Folder
|
|
5
5
|
} = AcoConfig;
|
|
6
|
-
export { FolderActionConfig };
|
|
7
6
|
const BaseFolderAction = props => {
|
|
8
7
|
return /*#__PURE__*/React.createElement(AcoConfig, null, /*#__PURE__*/React.createElement(Folder.Action, props));
|
|
9
8
|
};
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FolderAction.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","AcoConfig","
|
|
1
|
+
{"version":3,"names":["React","AcoConfig","Folder","BaseFolderAction","props","createElement","Action","FolderAction","Object","assign","OptionsMenuItem"],"sources":["FolderAction.tsx"],"sourcesContent":["import React from \"react\";\nimport { AcoConfig, type FolderActionConfig } from \"@webiny/app-aco\";\n\nconst { Folder } = AcoConfig;\n\nexport type { FolderActionConfig };\n\ntype FolderActionProps = React.ComponentProps<typeof AcoConfig.Folder.Action>;\n\nconst BaseFolderAction = (props: FolderActionProps) => {\n return (\n <AcoConfig>\n <Folder.Action {...props} />\n </AcoConfig>\n );\n};\n\nexport const FolderAction = Object.assign(BaseFolderAction, {\n OptionsMenuItem: Folder.Action.OptionsMenuItem\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAiC,iBAAiB;AAEpE,MAAM;EAAEC;AAAO,CAAC,GAAGD,SAAS;AAM5B,MAAME,gBAAgB,GAAIC,KAAwB,IAAK;EACnD,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,SAAS,qBACND,KAAA,CAAAK,aAAA,CAACH,MAAM,CAACI,MAAM,EAAKF,KAAQ,CACpB,CAAC;AAEpB,CAAC;AAED,OAAO,MAAMG,YAAY,GAAGC,MAAM,CAACC,MAAM,CAACN,gBAAgB,EAAE;EACxDO,eAAe,EAAER,MAAM,CAACI,MAAM,CAACI;AACnC,CAAC,CAAC","ignoreList":[]}
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig, TableColumnConfig as ColumnConfig } from "@webiny/app-aco";
|
|
2
|
+
import { AcoConfig, type TableColumnConfig as ColumnConfig } from "@webiny/app-aco";
|
|
3
3
|
import type { TableItem } from "../../../../../../types";
|
|
4
|
-
export { ColumnConfig };
|
|
4
|
+
export type { ColumnConfig };
|
|
5
5
|
type ColumnProps = React.ComponentProps<typeof AcoConfig.Table.Column>;
|
|
6
6
|
export declare const Column: ((props: ColumnProps) => React.JSX.Element) & {
|
|
7
7
|
original: (props: ColumnProps) => React.JSX.Element;
|
|
@@ -22,6 +22,11 @@ export declare const Column: ((props: ColumnProps) => React.JSX.Element) & {
|
|
|
22
22
|
displayName: string;
|
|
23
23
|
}>) => (props: unknown) => React.JSX.Element;
|
|
24
24
|
} & {
|
|
25
|
-
useTableRow:
|
|
26
|
-
|
|
25
|
+
useTableRow: {
|
|
26
|
+
(): import("@webiny/app-aco").TableRowContextData<TableItem>;
|
|
27
|
+
<TUserRow>(): import("@webiny/app-aco").TableRowContextData<TableItem & {
|
|
28
|
+
data: TUserRow;
|
|
29
|
+
}>;
|
|
30
|
+
};
|
|
31
|
+
isFolderRow: (row: import("@webiny/app-aco").TableRow<unknown>) => row is import("@webiny/app-aco").FolderTableRow;
|
|
27
32
|
};
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { AcoConfig
|
|
2
|
+
import { AcoConfig } from "@webiny/app-aco";
|
|
3
3
|
import { makeDecoratable } from "@webiny/react-composition";
|
|
4
4
|
const {
|
|
5
5
|
Table
|
|
6
6
|
} = AcoConfig;
|
|
7
|
-
export { ColumnConfig };
|
|
8
7
|
const BaseColumnComponent = props => {
|
|
9
8
|
return /*#__PURE__*/React.createElement(AcoConfig, null, /*#__PURE__*/React.createElement(Table.Column, props));
|
|
10
9
|
};
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/Column.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","AcoConfig","
|
|
1
|
+
{"version":3,"names":["React","AcoConfig","makeDecoratable","Table","BaseColumnComponent","props","createElement","Column","BaseColumn","Object","assign","useTableRow","createUseTableRow","isFolderRow"],"sources":["Column.tsx"],"sourcesContent":["import React from \"react\";\nimport { AcoConfig, type TableColumnConfig as ColumnConfig } from \"@webiny/app-aco\";\nimport type { TableItem } from \"~/types\";\nimport { makeDecoratable } from \"@webiny/react-composition\";\n\nconst { Table } = AcoConfig;\n\nexport type { ColumnConfig };\n\ntype ColumnProps = React.ComponentProps<typeof AcoConfig.Table.Column>;\n\nconst BaseColumnComponent = (props: ColumnProps) => {\n return (\n <AcoConfig>\n <Table.Column {...props} />\n </AcoConfig>\n );\n};\n\nconst BaseColumn = makeDecoratable(\"Column\", BaseColumnComponent);\n\nexport const Column = Object.assign(BaseColumn, {\n useTableRow: Table.Column.createUseTableRow<TableItem>(),\n isFolderRow: Table.Column.isFolderRow\n});\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAgD,iBAAiB;AAEnF,SAASC,eAAe,QAAQ,2BAA2B;AAE3D,MAAM;EAAEC;AAAM,CAAC,GAAGF,SAAS;AAM3B,MAAMG,mBAAmB,GAAIC,KAAkB,IAAK;EAChD,oBACIL,KAAA,CAAAM,aAAA,CAACL,SAAS,qBACND,KAAA,CAAAM,aAAA,CAACH,KAAK,CAACI,MAAM,EAAKF,KAAQ,CACnB,CAAC;AAEpB,CAAC;AAED,MAAMG,UAAU,GAAGN,eAAe,CAAC,QAAQ,EAAEE,mBAAmB,CAAC;AAEjE,OAAO,MAAMG,MAAM,GAAGE,MAAM,CAACC,MAAM,CAACF,UAAU,EAAE;EAC5CG,WAAW,EAAER,KAAK,CAACI,MAAM,CAACK,iBAAiB,CAAY,CAAC;EACxDC,WAAW,EAAEV,KAAK,CAACI,MAAM,CAACM;AAC9B,CAAC,CAAC","ignoreList":[]}
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Table/index.d.ts
CHANGED
|
@@ -25,8 +25,13 @@ export declare const Table: {
|
|
|
25
25
|
displayName: string;
|
|
26
26
|
}>) => (props: unknown) => import("react").JSX.Element;
|
|
27
27
|
} & {
|
|
28
|
-
useTableRow:
|
|
29
|
-
|
|
28
|
+
useTableRow: {
|
|
29
|
+
(): import("@webiny/app-aco").TableRowContextData<import("../../../../../../types").TableItem>;
|
|
30
|
+
<TUserRow>(): import("@webiny/app-aco").TableRowContextData<import("../../../../../../types").TableItem & {
|
|
31
|
+
data: TUserRow;
|
|
32
|
+
}>;
|
|
33
|
+
};
|
|
34
|
+
isFolderRow: (row: import("@webiny/app-aco").TableRow<unknown>) => row is import("@webiny/app-aco").FolderTableRow;
|
|
30
35
|
};
|
|
31
36
|
Cell: {
|
|
32
37
|
Thumbnail: (({ type, element }: import("./Thumbnail").RendererProps) => import("react").JSX.Element) & {
|
|
@@ -163,8 +163,13 @@ export declare const Browser: {
|
|
|
163
163
|
displayName: string;
|
|
164
164
|
}>) => (props: unknown) => import("react").JSX.Element;
|
|
165
165
|
} & {
|
|
166
|
-
useTableRow:
|
|
167
|
-
|
|
166
|
+
useTableRow: {
|
|
167
|
+
(): import("@webiny/app-aco").TableRowContextData<import("../../../../../types").TableItem>;
|
|
168
|
+
<TUserRow>(): import("@webiny/app-aco").TableRowContextData<import("../../../../../types").TableItem & {
|
|
169
|
+
data: TUserRow;
|
|
170
|
+
}>;
|
|
171
|
+
};
|
|
172
|
+
isFolderRow: (row: import("@webiny/app-aco").TableRow<unknown>) => row is import("@webiny/app-aco").FolderTableRow;
|
|
168
173
|
};
|
|
169
174
|
Cell: {
|
|
170
175
|
Thumbnail: (({ type, element }: import("./Table/Thumbnail").RendererProps) => import("react").JSX.Element) & {
|
|
@@ -27,7 +27,8 @@ const FieldRenderer = ({
|
|
|
27
27
|
return /*#__PURE__*/React.createElement(FilePicker, Object.assign({}, bind, {
|
|
28
28
|
label: field.label,
|
|
29
29
|
validation: validation,
|
|
30
|
-
description:
|
|
30
|
+
description: field.helpText,
|
|
31
|
+
note: getSupportedExtensionsLabelHint(imagesOnly),
|
|
31
32
|
value: value,
|
|
32
33
|
onSelectItem: () => showFileManager(file => onChange(file.src)),
|
|
33
34
|
onEditItem: () => editFile(value),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","FileManager","EditFileUsingUrl","FilePicker","getSupportedExtensionsLabelHint","FieldRenderer","field","getBind","Bind","imagesOnly","settings","createElement","bind","value","onChange","validation","ValidationContainer","onSetFile","file","src","editFile","images","render","showFileManager","Object","assign","label","description","helpText","
|
|
1
|
+
{"version":3,"names":["React","FileManager","EditFileUsingUrl","FilePicker","getSupportedExtensionsLabelHint","FieldRenderer","field","getBind","Bind","imagesOnly","settings","createElement","bind","value","onChange","validation","ValidationContainer","onSetFile","file","src","editFile","images","render","showFileManager","Object","assign","label","description","helpText","note","onSelectItem","onEditItem","onRemoveItem","placeholder","placeholderText","type","singleFile","name","renderer","rendererName","canUse","multipleValues","params"],"sources":["fileField.tsx"],"sourcesContent":["import React from \"react\";\nimport type {\n CmsModelFieldRendererPlugin,\n CmsModelFieldRendererProps\n} from \"@webiny/app-headless-cms/types\";\nimport { FileManager } from \"@webiny/app-admin/components\";\nimport { EditFileUsingUrl } from \"~/components/EditFileUsingUrl\";\nimport { FilePicker } from \"@webiny/admin-ui\";\nimport { getSupportedExtensionsLabelHint } from \"~/modules/HeadlessCms/fileRenderer/utils\";\n\nconst FieldRenderer = ({ field, getBind }: CmsModelFieldRendererProps) => {\n const Bind = getBind();\n\n const imagesOnly = field.settings && field.settings.imagesOnly;\n\n return (\n <Bind>\n {bind => {\n const { value, onChange, validation } = bind;\n\n return (\n <Bind.ValidationContainer>\n <EditFileUsingUrl onSetFile={file => bind.onChange(file.src)}>\n {({ editFile }) => (\n <FileManager\n images={imagesOnly}\n render={({ showFileManager }) => {\n return (\n <FilePicker\n {...bind}\n label={field.label}\n validation={validation}\n description={field.helpText}\n note={getSupportedExtensionsLabelHint(imagesOnly)}\n value={value}\n onSelectItem={() =>\n showFileManager(file => onChange(file.src))\n }\n onEditItem={() => editFile(value)}\n onRemoveItem={() => onChange(null)}\n placeholder={field.placeholderText}\n type={\"compact\"}\n data-testid={`fr.input.filefield.${field.label}`}\n />\n );\n }}\n />\n )}\n </EditFileUsingUrl>\n </Bind.ValidationContainer>\n );\n }}\n </Bind>\n );\n};\n\nexport const singleFile: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-file\",\n renderer: {\n rendererName: \"file-input\",\n name: \"File Input\",\n description: \"Enables selecting a single file via File Manager.\",\n canUse({ field }) {\n return field.type === \"file\" && !field.multipleValues;\n },\n render(params) {\n return <FieldRenderer {...params} />;\n }\n }\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAKzB,SAASC,WAAW,QAAQ,8BAA8B;AAC1D,SAASC,gBAAgB;AACzB,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,+BAA+B;AAExC,MAAMC,aAAa,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAoC,CAAC,KAAK;EACtE,MAAMC,IAAI,GAAGD,OAAO,CAAC,CAAC;EAEtB,MAAME,UAAU,GAAGH,KAAK,CAACI,QAAQ,IAAIJ,KAAK,CAACI,QAAQ,CAACD,UAAU;EAE9D,oBACIT,KAAA,CAAAW,aAAA,CAACH,IAAI,QACAI,IAAI,IAAI;IACL,MAAM;MAAEC,KAAK;MAAEC,QAAQ;MAAEC;IAAW,CAAC,GAAGH,IAAI;IAE5C,oBACIZ,KAAA,CAAAW,aAAA,CAACH,IAAI,CAACQ,mBAAmB,qBACrBhB,KAAA,CAAAW,aAAA,CAACT,gBAAgB;MAACe,SAAS,EAAEC,IAAI,IAAIN,IAAI,CAACE,QAAQ,CAACI,IAAI,CAACC,GAAG;IAAE,GACxD,CAAC;MAAEC;IAAS,CAAC,kBACVpB,KAAA,CAAAW,aAAA,CAACV,WAAW;MACRoB,MAAM,EAAEZ,UAAW;MACnBa,MAAM,EAAEA,CAAC;QAAEC;MAAgB,CAAC,KAAK;QAC7B,oBACIvB,KAAA,CAAAW,aAAA,CAACR,UAAU,EAAAqB,MAAA,CAAAC,MAAA,KACHb,IAAI;UACRc,KAAK,EAAEpB,KAAK,CAACoB,KAAM;UACnBX,UAAU,EAAEA,UAAW;UACvBY,WAAW,EAAErB,KAAK,CAACsB,QAAS;UAC5BC,IAAI,EAAEzB,+BAA+B,CAACK,UAAU,CAAE;UAClDI,KAAK,EAAEA,KAAM;UACbiB,YAAY,EAAEA,CAAA,KACVP,eAAe,CAACL,IAAI,IAAIJ,QAAQ,CAACI,IAAI,CAACC,GAAG,CAAC,CAC7C;UACDY,UAAU,EAAEA,CAAA,KAAMX,QAAQ,CAACP,KAAK,CAAE;UAClCmB,YAAY,EAAEA,CAAA,KAAMlB,QAAQ,CAAC,IAAI,CAAE;UACnCmB,WAAW,EAAE3B,KAAK,CAAC4B,eAAgB;UACnCC,IAAI,EAAE,SAAU;UAChB,eAAa,sBAAsB7B,KAAK,CAACoB,KAAK;QAAG,EACpD,CAAC;MAEV;IAAE,CACL,CAES,CACI,CAAC;EAEnC,CACE,CAAC;AAEf,CAAC;AAED,OAAO,MAAMU,UAAuC,GAAG;EACnDD,IAAI,EAAE,2BAA2B;EACjCE,IAAI,EAAE,gCAAgC;EACtCC,QAAQ,EAAE;IACNC,YAAY,EAAE,YAAY;IAC1BF,IAAI,EAAE,YAAY;IAClBV,WAAW,EAAE,mDAAmD;IAChEa,MAAMA,CAAC;MAAElC;IAAM,CAAC,EAAE;MACd,OAAOA,KAAK,CAAC6B,IAAI,KAAK,MAAM,IAAI,CAAC7B,KAAK,CAACmC,cAAc;IACzD,CAAC;IACDnB,MAAMA,CAACoB,MAAM,EAAE;MACX,oBAAO1C,KAAA,CAAAW,aAAA,CAACN,aAAa,EAAKqC,MAAS,CAAC;IACxC;EACJ;AACJ,CAAC","ignoreList":[]}
|
|
@@ -54,7 +54,8 @@ const FieldRenderer = ({
|
|
|
54
54
|
return /*#__PURE__*/React.createElement(MultiFilePicker, Object.assign({}, bind, {
|
|
55
55
|
label: field.label,
|
|
56
56
|
validation: validation,
|
|
57
|
-
description:
|
|
57
|
+
description: field.helpText,
|
|
58
|
+
note: getSupportedExtensionsLabelHint(imagesOnly),
|
|
58
59
|
values: values,
|
|
59
60
|
onSelectItem: () => selectFiles(),
|
|
60
61
|
onReplaceItem: (_, index) => selectFiles(index),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useRef","dotProp","i18n","FileManager","getSupportedExtensionsLabelHint","EditFileUsingUrl","MultiFilePicker","t","ns","FieldRenderer","getBind","field","Bind","editFileRef","imagesOnly","settings","onSetFile","bind","file","current","newValue","value","onChange","slice","index","src","undefined","createElement","validation","values","Array","isArray","filter","Boolean","ValidationContainer","editFile","multiple","images","render","showFileManager","selectFiles","files","urls","map","f","Object","assign","label","description","helpText","join","onSelectItem","onReplaceItem","_","onRemoveItem","delete","onEditItem","url","placeholder","placeholderText","type","multipleFiles","name","renderer","rendererName","canUse","multipleValues","props"],"sources":["fileFields.tsx"],"sourcesContent":["import React, { useRef } from \"react\";\nimport dotProp from \"dot-prop-immutable\";\nimport type {\n BindComponentRenderProp,\n CmsModelFieldRendererPlugin,\n CmsModelFieldRendererProps\n} from \"@webiny/app-headless-cms/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { FileManager } from \"@webiny/app-admin/components\";\nimport { getSupportedExtensionsLabelHint } from \"./utils\";\nimport { EditFileUsingUrl } from \"~/components/EditFileUsingUrl\";\nimport type { FileItem } from \"@webiny/app-admin/types\";\nimport { MultiFilePicker } from \"@webiny/admin-ui\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/file\");\n\nconst FieldRenderer = ({ getBind, field }: CmsModelFieldRendererProps) => {\n const Bind = getBind();\n const editFileRef = useRef<{ index: number; url: string } | undefined>();\n\n const imagesOnly = field.settings && field.settings.imagesOnly;\n\n const onSetFile = (bind: BindComponentRenderProp) => {\n return (file: FileItem) => {\n if (!editFileRef.current) {\n return;\n }\n\n const newValue = [...bind.value];\n bind.onChange([\n ...newValue.slice(0, editFileRef.current.index),\n file.src,\n ...newValue.slice(editFileRef.current.index + 1)\n ]);\n\n editFileRef.current = undefined;\n };\n };\n\n return (\n <Bind>\n {bind => {\n const { onChange, validation } = bind;\n\n // We need to make sure the value is an array, since this is a multi-value component.\n const values: string[] = (\n Array.isArray(bind.value) ? bind.value : [bind.value]\n ).filter(Boolean);\n\n return (\n <Bind.ValidationContainer>\n <EditFileUsingUrl onSetFile={onSetFile(bind)}>\n {({ editFile }) => (\n <FileManager\n multiple\n images={imagesOnly}\n render={({ showFileManager }) => {\n const selectFiles = (index = -1) => {\n showFileManager(files => {\n const urls = files.map(f => f.src);\n if (index === -1) {\n onChange([...values, ...urls]);\n } else {\n onChange([\n ...values.slice(0, index),\n ...urls,\n ...values.slice(index + 1)\n ]);\n }\n });\n };\n return (\n <MultiFilePicker\n {...bind}\n label={field.label}\n validation={validation}\n description={[\n field.helpText,\n getSupportedExtensionsLabelHint(imagesOnly)\n ]\n .filter(Boolean)\n .join(\" \")}\n values={values}\n onSelectItem={() => selectFiles()}\n onReplaceItem={(_, index) => selectFiles(index)}\n onRemoveItem={(_, index) =>\n onChange(dotProp.delete(values, index))\n }\n onEditItem={(value, index) => {\n if (!value) {\n return;\n }\n\n editFileRef.current = {\n index,\n url: value.url\n };\n\n editFile(value.url);\n }}\n placeholder={field.placeholderText}\n type={\"compact\"}\n data-testid={`fr.input.filefields.${field.label}`}\n />\n );\n }}\n />\n )}\n </EditFileUsingUrl>\n </Bind.ValidationContainer>\n );\n }}\n </Bind>\n );\n};\n\nexport const multipleFiles: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-files\",\n renderer: {\n rendererName: \"file-inputs\",\n name: t`File Inputs`,\n description: t`Enables selecting multiple files via File Manager.`,\n canUse({ field }) {\n return field.type === \"file\" && !!field.multipleValues;\n },\n render(props) {\n return <FieldRenderer {...props} />;\n }\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useRef","dotProp","i18n","FileManager","getSupportedExtensionsLabelHint","EditFileUsingUrl","MultiFilePicker","t","ns","FieldRenderer","getBind","field","Bind","editFileRef","imagesOnly","settings","onSetFile","bind","file","current","newValue","value","onChange","slice","index","src","undefined","createElement","validation","values","Array","isArray","filter","Boolean","ValidationContainer","editFile","multiple","images","render","showFileManager","selectFiles","files","urls","map","f","Object","assign","label","description","helpText","note","onSelectItem","onReplaceItem","_","onRemoveItem","delete","onEditItem","url","placeholder","placeholderText","type","multipleFiles","name","renderer","rendererName","canUse","multipleValues","props"],"sources":["fileFields.tsx"],"sourcesContent":["import React, { useRef } from \"react\";\nimport dotProp from \"dot-prop-immutable\";\nimport type {\n BindComponentRenderProp,\n CmsModelFieldRendererPlugin,\n CmsModelFieldRendererProps\n} from \"@webiny/app-headless-cms/types\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { FileManager } from \"@webiny/app-admin/components\";\nimport { getSupportedExtensionsLabelHint } from \"./utils\";\nimport { EditFileUsingUrl } from \"~/components/EditFileUsingUrl\";\nimport type { FileItem } from \"@webiny/app-admin/types\";\nimport { MultiFilePicker } from \"@webiny/admin-ui\";\n\nconst t = i18n.ns(\"app-headless-cms/admin/fields/file\");\n\nconst FieldRenderer = ({ getBind, field }: CmsModelFieldRendererProps) => {\n const Bind = getBind();\n const editFileRef = useRef<{ index: number; url: string } | undefined>();\n\n const imagesOnly = field.settings && field.settings.imagesOnly;\n\n const onSetFile = (bind: BindComponentRenderProp) => {\n return (file: FileItem) => {\n if (!editFileRef.current) {\n return;\n }\n\n const newValue = [...bind.value];\n bind.onChange([\n ...newValue.slice(0, editFileRef.current.index),\n file.src,\n ...newValue.slice(editFileRef.current.index + 1)\n ]);\n\n editFileRef.current = undefined;\n };\n };\n\n return (\n <Bind>\n {bind => {\n const { onChange, validation } = bind;\n\n // We need to make sure the value is an array, since this is a multi-value component.\n const values: string[] = (\n Array.isArray(bind.value) ? bind.value : [bind.value]\n ).filter(Boolean);\n\n return (\n <Bind.ValidationContainer>\n <EditFileUsingUrl onSetFile={onSetFile(bind)}>\n {({ editFile }) => (\n <FileManager\n multiple\n images={imagesOnly}\n render={({ showFileManager }) => {\n const selectFiles = (index = -1) => {\n showFileManager(files => {\n const urls = files.map(f => f.src);\n if (index === -1) {\n onChange([...values, ...urls]);\n } else {\n onChange([\n ...values.slice(0, index),\n ...urls,\n ...values.slice(index + 1)\n ]);\n }\n });\n };\n return (\n <MultiFilePicker\n {...bind}\n label={field.label}\n validation={validation}\n description={field.helpText}\n note={getSupportedExtensionsLabelHint(imagesOnly)}\n values={values}\n onSelectItem={() => selectFiles()}\n onReplaceItem={(_, index) => selectFiles(index)}\n onRemoveItem={(_, index) =>\n onChange(dotProp.delete(values, index))\n }\n onEditItem={(value, index) => {\n if (!value) {\n return;\n }\n\n editFileRef.current = {\n index,\n url: value.url\n };\n\n editFile(value.url);\n }}\n placeholder={field.placeholderText}\n type={\"compact\"}\n data-testid={`fr.input.filefields.${field.label}`}\n />\n );\n }}\n />\n )}\n </EditFileUsingUrl>\n </Bind.ValidationContainer>\n );\n }}\n </Bind>\n );\n};\n\nexport const multipleFiles: CmsModelFieldRendererPlugin = {\n type: \"cms-editor-field-renderer\",\n name: \"cms-editor-field-renderer-files\",\n renderer: {\n rendererName: \"file-inputs\",\n name: t`File Inputs`,\n description: t`Enables selecting multiple files via File Manager.`,\n canUse({ field }) {\n return field.type === \"file\" && !!field.multipleValues;\n },\n render(props) {\n return <FieldRenderer {...props} />;\n }\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/app-file-manager",
|
|
3
|
-
"version": "0.0.0-unstable.
|
|
3
|
+
"version": "0.0.0-unstable.eb196ccd2f",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -13,24 +13,24 @@
|
|
|
13
13
|
"@apollo/react-components": "3.1.5",
|
|
14
14
|
"@apollo/react-hooks": "3.1.5",
|
|
15
15
|
"@types/react": "18.2.79",
|
|
16
|
-
"@webiny/admin-ui": "0.0.0-unstable.
|
|
17
|
-
"@webiny/app": "0.0.0-unstable.
|
|
18
|
-
"@webiny/app-aco": "0.0.0-unstable.
|
|
19
|
-
"@webiny/app-admin": "0.0.0-unstable.
|
|
20
|
-
"@webiny/app-headless-cms": "0.0.0-unstable.
|
|
21
|
-
"@webiny/app-headless-cms-common": "0.0.0-unstable.
|
|
22
|
-
"@webiny/app-i18n": "0.0.0-unstable.
|
|
23
|
-
"@webiny/app-security": "0.0.0-unstable.
|
|
24
|
-
"@webiny/app-tenancy": "0.0.0-unstable.
|
|
25
|
-
"@webiny/app-websockets": "0.0.0-unstable.
|
|
26
|
-
"@webiny/error": "0.0.0-unstable.
|
|
27
|
-
"@webiny/form": "0.0.0-unstable.
|
|
28
|
-
"@webiny/icons": "0.0.0-unstable.
|
|
29
|
-
"@webiny/plugins": "0.0.0-unstable.
|
|
30
|
-
"@webiny/react-composition": "0.0.0-unstable.
|
|
31
|
-
"@webiny/react-properties": "0.0.0-unstable.
|
|
32
|
-
"@webiny/utils": "0.0.0-unstable.
|
|
33
|
-
"@webiny/validation": "0.0.0-unstable.
|
|
16
|
+
"@webiny/admin-ui": "0.0.0-unstable.eb196ccd2f",
|
|
17
|
+
"@webiny/app": "0.0.0-unstable.eb196ccd2f",
|
|
18
|
+
"@webiny/app-aco": "0.0.0-unstable.eb196ccd2f",
|
|
19
|
+
"@webiny/app-admin": "0.0.0-unstable.eb196ccd2f",
|
|
20
|
+
"@webiny/app-headless-cms": "0.0.0-unstable.eb196ccd2f",
|
|
21
|
+
"@webiny/app-headless-cms-common": "0.0.0-unstable.eb196ccd2f",
|
|
22
|
+
"@webiny/app-i18n": "0.0.0-unstable.eb196ccd2f",
|
|
23
|
+
"@webiny/app-security": "0.0.0-unstable.eb196ccd2f",
|
|
24
|
+
"@webiny/app-tenancy": "0.0.0-unstable.eb196ccd2f",
|
|
25
|
+
"@webiny/app-websockets": "0.0.0-unstable.eb196ccd2f",
|
|
26
|
+
"@webiny/error": "0.0.0-unstable.eb196ccd2f",
|
|
27
|
+
"@webiny/form": "0.0.0-unstable.eb196ccd2f",
|
|
28
|
+
"@webiny/icons": "0.0.0-unstable.eb196ccd2f",
|
|
29
|
+
"@webiny/plugins": "0.0.0-unstable.eb196ccd2f",
|
|
30
|
+
"@webiny/react-composition": "0.0.0-unstable.eb196ccd2f",
|
|
31
|
+
"@webiny/react-properties": "0.0.0-unstable.eb196ccd2f",
|
|
32
|
+
"@webiny/utils": "0.0.0-unstable.eb196ccd2f",
|
|
33
|
+
"@webiny/validation": "0.0.0-unstable.eb196ccd2f",
|
|
34
34
|
"apollo-cache": "1.3.5",
|
|
35
35
|
"apollo-client": "2.6.10",
|
|
36
36
|
"apollo-link": "1.2.14",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
61
|
"@svgr/webpack": "6.5.1",
|
|
62
|
-
"@webiny/project-utils": "0.0.0-unstable.
|
|
62
|
+
"@webiny/project-utils": "0.0.0-unstable.eb196ccd2f",
|
|
63
63
|
"rimraf": "6.0.1",
|
|
64
64
|
"typescript": "5.3.3"
|
|
65
65
|
},
|
|
@@ -71,5 +71,5 @@
|
|
|
71
71
|
"build": "node ../cli/bin.js run build",
|
|
72
72
|
"watch": "node ../cli/bin.js run watch"
|
|
73
73
|
},
|
|
74
|
-
"gitHead": "
|
|
74
|
+
"gitHead": "eb196ccd2f32296e10f7add6dd7220d4e3abece4"
|
|
75
75
|
}
|
package/types.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type * as React from "react";
|
|
|
2
2
|
import type { Plugin } from "@webiny/plugins/types";
|
|
3
3
|
import type { SecurityPermission } from "@webiny/app-security/types";
|
|
4
4
|
import type { FileItem } from "@webiny/app-admin/types";
|
|
5
|
-
import type {
|
|
5
|
+
import type { FolderTableRow, RecordTableRow } from "@webiny/app-aco";
|
|
6
6
|
export { FileInput } from "./modules/FileManagerApiProvider/graphql";
|
|
7
7
|
export type PermissionRendererPluginRenderFunctionType = (props: {
|
|
8
8
|
value: SecurityPermission;
|
|
@@ -31,5 +31,4 @@ export interface FileTag {
|
|
|
31
31
|
tag: string;
|
|
32
32
|
count: number;
|
|
33
33
|
}
|
|
34
|
-
export type
|
|
35
|
-
export type TableItem = FolderTableItem | FileTableItem;
|
|
34
|
+
export type TableItem = FolderTableRow | RecordTableRow<FileItem>;
|
package/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FileInput"],"sources":["types.ts"],"sourcesContent":["import type * as React from \"react\";\nimport type { Plugin } from \"@webiny/plugins/types\";\nimport type { SecurityPermission } from \"@webiny/app-security/types\";\nimport type { FileItem } from \"@webiny/app-admin/types\";\nimport type {
|
|
1
|
+
{"version":3,"names":["FileInput"],"sources":["types.ts"],"sourcesContent":["import type * as React from \"react\";\nimport type { Plugin } from \"@webiny/plugins/types\";\nimport type { SecurityPermission } from \"@webiny/app-security/types\";\nimport type { FileItem } from \"@webiny/app-admin/types\";\nimport type { FolderTableRow, RecordTableRow } from \"@webiny/app-aco\";\n\nexport { FileInput } from \"./modules/FileManagerApiProvider/graphql\";\n\nexport type PermissionRendererPluginRenderFunctionType = (props: {\n value: SecurityPermission;\n setValue: (newValue: SecurityPermission) => void;\n}) => React.ReactElement<any>;\n\nexport type PermissionRendererFileManager = Plugin & {\n type: \"permission-renderer-file-manager\";\n key: string;\n label: string;\n render: PermissionRendererPluginRenderFunctionType;\n};\n\nexport interface Settings {\n uploadMinFileSize: string;\n uploadMaxFileSize: string;\n srcPrefix: string;\n}\nexport interface QueryGetSettingsResult {\n fileManager: {\n getSettings: {\n data: Settings;\n error: Error | null;\n };\n };\n}\n\nexport interface FileTag {\n tag: string;\n count: number;\n}\n\nexport type TableItem = FolderTableRow | RecordTableRow<FileItem>;\n"],"mappings":"AAMA,SAASA,SAAS","ignoreList":[]}
|