@webiny/app-file-manager 5.37.8 → 5.38.0-beta.1
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/BatchFileUploader.js +3 -1
- package/FileManagerFileTypePlugin.js +3 -1
- package/app.js +3 -1
- package/components/BottomInfoBar/BottomInfoBar.js +3 -1
- package/components/BottomInfoBar/ListStatus.js +3 -1
- package/components/BottomInfoBar/SupportedFileTypes.js +3 -1
- package/components/BottomInfoBar/index.js +3 -1
- package/components/BottomInfoBar/styled.js +3 -1
- package/components/BulkActions/ActionDelete.d.ts +4 -0
- package/components/BulkActions/ActionDelete.js +119 -0
- package/components/BulkActions/ActionDelete.js.map +1 -0
- package/components/BulkActions/ActionMove.d.ts +4 -0
- package/components/BulkActions/ActionMove.js +137 -0
- package/components/BulkActions/ActionMove.js.map +1 -0
- package/components/BulkActions/BulkActions.d.ts +3 -0
- package/components/BulkActions/BulkActions.js +51 -0
- package/components/BulkActions/BulkActions.js.map +1 -0
- package/components/BulkActions/BulkActions.styled.d.ts +15 -0
- package/components/BulkActions/BulkActions.styled.js +26 -0
- package/components/BulkActions/BulkActions.styled.js.map +1 -0
- package/components/BulkActions/index.d.ts +3 -0
- package/components/BulkActions/index.js +37 -0
- package/components/BulkActions/index.js.map +1 -0
- package/components/DropFilesHere/DropFilesHere.js +5 -7
- package/components/DropFilesHere/DropFilesHere.js.map +1 -1
- package/components/DropFilesHere/index.js +3 -1
- package/components/DropFilesHere/styled.js +9 -4
- package/components/DropFilesHere/styled.js.map +1 -1
- package/components/Empty/Empty.js +3 -1
- package/components/Empty/Empty.js.map +1 -1
- package/components/Empty/index.js +3 -1
- package/components/FileDetails/FileDetails.js +6 -4
- package/components/FileDetails/FileDetails.js.map +1 -1
- package/components/FileDetails/FileDetailsProvider.js +3 -1
- package/components/FileDetails/components/Actions.js +3 -1
- package/components/FileDetails/components/Aliases.js +3 -1
- package/components/FileDetails/components/BaseFields.js +3 -1
- package/components/FileDetails/components/Content.js +3 -1
- package/components/FileDetails/components/CreatedOn.js +3 -1
- package/components/FileDetails/components/Extensions.js +3 -1
- package/components/FileDetails/components/Flex.js +3 -1
- package/components/FileDetails/components/Footer.js +3 -1
- package/components/FileDetails/components/Header.js +3 -1
- package/components/FileDetails/components/Name.js +3 -1
- package/components/FileDetails/components/Preview.js +3 -1
- package/components/FileDetails/components/PreviewMeta.js +3 -1
- package/components/FileDetails/components/Tags.js +3 -1
- package/components/FileDetails/components/Thumbnail.js +3 -1
- package/components/FileDetails/components/TypeAndSize.js +3 -1
- package/components/FileDetails/components/actions/CopyUrl.js +3 -1
- package/components/FileDetails/components/actions/DeleteImage.js +3 -1
- package/components/FileDetails/components/actions/Download.js +3 -1
- package/components/FileDetails/components/actions/MoveTo.js +3 -1
- package/components/FileDetails/index.js +3 -1
- package/components/Grid/File.js +3 -1
- package/components/Grid/Grid.d.ts +2 -0
- package/components/Grid/Grid.js +14 -5
- package/components/Grid/Grid.js.map +1 -1
- package/components/Grid/index.js +3 -1
- package/components/Grid/styled.js +3 -1
- package/components/LayoutSwitch/LayoutSwitch.d.ts +2 -0
- package/components/LayoutSwitch/LayoutSwitch.js +34 -0
- package/components/LayoutSwitch/LayoutSwitch.js.map +1 -0
- package/components/LayoutSwitch/index.d.ts +1 -0
- package/components/LayoutSwitch/index.js +18 -0
- package/components/LayoutSwitch/index.js.map +1 -0
- package/components/NoPermission/NoPermission.js +3 -1
- package/components/NoPermission/index.js +3 -1
- package/components/NoPermission/styled.js +3 -1
- package/components/NoResults/NoResults.js +3 -1
- package/components/NoResults/index.js +3 -1
- package/components/NoResults/styled.js +3 -1
- package/components/Table/FolderActionDelete.js +3 -1
- package/components/Table/FolderActionEdit.js +3 -1
- package/components/Table/FolderActionManagePermissions.d.ts +6 -0
- package/components/Table/FolderActionManagePermissions.js +27 -0
- package/components/Table/FolderActionManagePermissions.js.map +1 -0
- package/components/Table/Name.d.ts +5 -1
- package/components/Table/Name.js +12 -3
- package/components/Table/Name.js.map +1 -1
- package/components/Table/RecordActionCopy.js +3 -1
- package/components/Table/RecordActionDelete.js +5 -3
- package/components/Table/RecordActionDelete.js.map +1 -1
- package/components/Table/RecordActionEdit.js +3 -1
- package/components/Table/RecordActionMove.js +3 -1
- package/components/Table/Table.d.ts +11 -13
- package/components/Table/Table.js +46 -15
- package/components/Table/Table.js.map +1 -1
- package/components/Table/index.js +3 -1
- package/components/Table/styled.d.ts +0 -1
- package/components/Table/styled.js +3 -3
- package/components/Table/styled.js.map +1 -1
- package/components/Title/Title.js +3 -1
- package/components/Title/index.js +3 -1
- package/components/Title/styled.js +3 -1
- package/components/UploadStatus/UploadStatus.js +3 -1
- package/components/UploadStatus/index.js +3 -1
- package/components/UploadStatus/styled.js +3 -1
- package/constants.js +3 -1
- package/contexts/FileProvider.js +3 -1
- package/getFileTypePlugin.js +3 -1
- package/hooks/useCopyFile.js +3 -1
- package/hooks/useDeleteFile.js +3 -1
- package/hooks/useFile.js +3 -1
- package/hooks/useFileDetails.js +3 -1
- package/hooks/useFileModel.js +3 -1
- package/hooks/useMoveFileToFolder.js +3 -1
- package/index.js +3 -1
- package/modules/FileManagerApiProvider/FileManagerApiContext/FileManagerApiContext.js +5 -3
- package/modules/FileManagerApiProvider/FileManagerApiContext/FileManagerApiContext.js.map +1 -1
- package/modules/FileManagerApiProvider/FileManagerApiContext/FileModelContext.js +3 -1
- package/modules/FileManagerApiProvider/FileManagerApiContext/getFileUploader.js +3 -1
- package/modules/FileManagerApiProvider/FileManagerApiContext/index.js +3 -1
- package/modules/FileManagerApiProvider/FileManagerApiContext/useFileManagerApi.js +3 -1
- package/modules/FileManagerApiProvider/graphql.js +3 -1
- package/modules/FileManagerApiProvider/index.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/FileManagerView.js +41 -33
- package/modules/FileManagerRenderer/FileManagerView/FileManagerView.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig.d.ts +12 -0
- package/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig.js +4 -1
- package/modules/FileManagerRenderer/FileManagerView/FileManagerViewConfig.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerView/LeftSidebar.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/NavigateFolderProvider.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/components/Filters.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/components/SearchWidget.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/components/TagsList/Empty.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/components/TagsList/Tag.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/components/TagsList/TagsList.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/components/TagsList/index.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/components/TagsList/styled.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkAction.d.ts +26 -0
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkAction.js +96 -0
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkAction.js.map +1 -0
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/Filter.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FilterByTags.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/FiltersToWhere.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/index.d.ts +13 -0
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/index.js +5 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/index.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Field.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/FieldDecorator.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/Width.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/index.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/index.js +3 -1
- package/modules/FileManagerRenderer/FileManagerView/outputFileSelectionError.js +3 -1
- package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.d.ts +2 -1
- package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.js +22 -21
- package/modules/FileManagerRenderer/FileManagerViewProvider/FileManagerViewContext.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerViewProvider/index.js +3 -1
- package/modules/FileManagerRenderer/FileManagerViewProvider/setSelection.d.ts +30 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/setSelection.js +115 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/setSelection.js.map +1 -0
- package/modules/FileManagerRenderer/FileManagerViewProvider/state.d.ts +4 -1
- package/modules/FileManagerRenderer/FileManagerViewProvider/state.js +4 -2
- package/modules/FileManagerRenderer/FileManagerViewProvider/state.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerViewProvider/useFileManagerView.js +3 -1
- package/modules/FileManagerRenderer/FileManagerViewProvider/useListFiles.d.ts +1 -2
- package/modules/FileManagerRenderer/FileManagerViewProvider/useListFiles.js +5 -9
- package/modules/FileManagerRenderer/FileManagerViewProvider/useListFiles.js.map +1 -1
- package/modules/FileManagerRenderer/FileManagerViewProvider/useTags.js +3 -1
- package/modules/FileManagerRenderer/filters/FilterByType.js +3 -1
- package/modules/FileManagerRenderer/index.js +10 -1
- package/modules/FileManagerRenderer/index.js.map +1 -1
- package/modules/FileTypes/fileDefault.js +3 -1
- package/modules/FileTypes/fileImage/EditAction.js +3 -1
- package/modules/FileTypes/fileImage/index.js +3 -1
- package/modules/FileTypes/index.js +3 -1
- package/modules/Settings/graphql.js +4 -2
- package/modules/Settings/graphql.js.map +1 -1
- package/modules/Settings/index.js +3 -1
- package/modules/Settings/plugins/installation.js +3 -1
- package/modules/Settings/plugins/permissionRenderer/FileManagerPermissions.js +3 -1
- package/modules/Settings/plugins/permissionRenderer/index.js +3 -1
- package/modules/Settings/views/FileManagerSettings.js +3 -1
- package/package.json +17 -16
- package/tagsHelpers.js +3 -1
- package/types.js +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactButterfiles","_interopRequireDefault","_styled","_debounce","_reactHotkeyz","_mobxReactLite","_cloud_upload","_add","_view_module","_view_list","_i18n","_appAco","_appAdmin","_Button","_Scrollbar","_Tooltip","_FileManagerViewProvider","_outputFileSelectionError","_LeftSidebar","_","_BottomInfoBar","_DropFilesHere","_Empty","_FileDetails","_Grid","_Table","_Title","_UploadStatus","_BatchFileUploader","_SearchWidget","_Filters","_TagsList","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","t","i18n","ns","FileListWrapper","styled","target","label","float","display","width","height","position","maxWidth","whiteSpace","overflow","textOverflow","createSort","sorting","length","undefined","reduce","items","item","sort","concat","id","desc","includes","push","FileManagerView","view","useFileManagerView","fileManager","useFileManagerApi","_useFileManagerViewCo","useFileManagerViewConfig","browser","_useSnackbar","useSnackbar","showSnackbar","uploader","useMemo","BatchFileUploader","uploadFile","folderId","_useState","useState","_useState2","_slicedToArray2","default","tableSorting","setTableSorting","_useState3","_useState4","showFoldersDialog","setFoldersDialog","openFoldersDialog","useCallback","closeFoldersDialog","_useState5","_useState6","currentFile","setCurrentFile","useEffect","fetchFileDetails","_ref","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","file","wrap","_callee$","_context","prev","next","showingFileDetails","getFile","sent","stop","apply","arguments","setListSort","getFileUploadErrorMessage","e","match","_match","message","useHotkeys","zIndex","keys","esc","onClose","uploadFiles","_ref2","_callee2","files","_callee2$","_context2","addFiles","onUploadFinished","_ref3","uploaded","errors","reset","createElement","Fragment","_taggedTemplateLiteral2","map","_ref4","key","name","onUploadCompletion","_x","renderUploadFileAction","_ref5","browseFiles","canCreate","ButtonPrimary","flat","small","onClick","ButtonIcon","icon","ReactComponent","filesBeingUploaded","getJobs","progress","renderList","isListLoading","isSearch","Empty","isSearchResult","folders","listTable","onSelectRow","areFilesSelectable","rows","filter","row","$type","original","multiple","setSelected","onChange","Table","canSelectAllRows","records","selectedRecords","selected","loading","onRecordClick","showFileDetails","onFolderClick","setFolderId","onSortingChange","settings","selectableItems","Grid","toggleSelected","loadMoreOnScroll","debounce","_ref7","_callee3","_ref6","scrollFrame","_callee3$","_context3","top","loadMoreFiles","_x2","meta","maxSize","uploadMaxFileSize","multipleMaxSize","accept","onSuccess","filesToUpload","src","Boolean","onError","console","log","outputFileSelectionError","_ref8","getDropZoneProps","OverlayLayout","onExited","barLeft","Title","title","listTitle","barMiddle","SearchWidget","barRight","ButtonSecondary","style","margin","Tooltip","content","mode","placement","IconButton","setListTable","FileDetails","loadingFileDetails","open","hideFileDetails","LeftSidebar","currentFolder","filterByTags","TagsList","tags","activeTags","allTags","onActivatedTagsChange","setActiveTags","Object","assign","onDragEnter","hasPreviouslyUploadedFiles","setDragging","dragging","DropFilesHere","onDragLeave","onDrop","Filters","Scrollbar","onScrollFrame","BottomInfoBar","listing","isListLoadingMore","UploadStatus","numberOfFiles","FolderDialogCreate","currentParentId","_default","observer","exports"],"sources":["FileManagerView.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport Files, { FilesRenderChildren } from \"react-butterfiles\";\nimport styled from \"@emotion/styled\";\nimport debounce from \"lodash/debounce\";\nimport { positionValues } from \"react-custom-scrollbars\";\n// @ts-ignore\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { observer } from \"mobx-react-lite\";\nimport { ReactComponent as UploadIcon } from \"@material-design-icons/svg/filled/cloud_upload.svg\";\nimport { ReactComponent as AddIcon } from \"@material-design-icons/svg/filled/add.svg\";\nimport { ReactComponent as GridIcon } from \"@material-design-icons/svg/outlined/view_module.svg\";\nimport { ReactComponent as TableIcon } from \"@material-design-icons/svg/outlined/view_list.svg\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { FolderDialogCreate } from \"@webiny/app-aco\";\nimport { OverlayLayout, useSnackbar } from \"@webiny/app-admin\";\nimport { ButtonIcon, ButtonPrimary, ButtonSecondary, IconButton } from \"@webiny/ui/Button\";\nimport { Sorting } from \"@webiny/ui/DataTable\";\nimport { Scrollbar } from \"@webiny/ui/Scrollbar\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { useFileManagerView } from \"~/modules/FileManagerRenderer/FileManagerViewProvider\";\nimport { outputFileSelectionError } from \"./outputFileSelectionError\";\nimport { LeftSidebar } from \"./LeftSidebar\";\nimport { useFileManagerApi, useFileManagerViewConfig } from \"~/index\";\nimport { FileItem } from \"@webiny/app-admin/types\";\nimport { BottomInfoBar } from \"~/components/BottomInfoBar\";\nimport { DropFilesHere } from \"~/components/DropFilesHere\";\nimport { Empty } from \"~/components/Empty\";\nimport { FileDetails } from \"~/components/FileDetails\";\nimport { Grid } from \"~/components/Grid\";\nimport { Table, TableProps } from \"~/components/Table\";\nimport { Title } from \"~/components/Title\";\nimport { UploadStatus } from \"~/components/UploadStatus\";\nimport { BatchFileUploader } from \"~/BatchFileUploader\";\nimport { SearchWidget } from \"./components/SearchWidget\";\nimport { Filters } from \"./components/Filters\";\nimport { TagsList } from \"~/modules/FileManagerRenderer/FileManagerView/components/TagsList\";\nimport { ListFilesSort, ListFilesSortItem } from \"~/modules/FileManagerApiProvider/graphql\";\n\nconst t = i18n.ns(\"app-admin/file-manager/file-manager-view\");\n\nconst FileListWrapper = styled(\"div\")({\n float: \"right\",\n display: \"inline-block\",\n width: \"calc(100vw - 286px)\",\n height: \"calc(100vh - 94px)\",\n position: \"relative\",\n \".mdc-data-table\": {\n display: \"inline-table\"\n },\n \".mdc-data-table__cell\": {\n width: \"250px\",\n maxWidth: \"250px\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\"\n }\n});\n\nconst createSort = (sorting?: Sorting): 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\nconst FileManagerView = () => {\n const view = useFileManagerView();\n const fileManager = useFileManagerApi();\n const { browser } = useFileManagerViewConfig();\n const { showSnackbar } = useSnackbar();\n\n const uploader = useMemo<BatchFileUploader>(\n () => new BatchFileUploader(view.uploadFile),\n [view.folderId]\n );\n\n const [tableSorting, setTableSorting] = useState<Sorting>([]);\n const [showFoldersDialog, setFoldersDialog] = useState(false);\n const openFoldersDialog = useCallback(() => setFoldersDialog(true), []);\n const closeFoldersDialog = useCallback(() => setFoldersDialog(false), []);\n const [currentFile, setCurrentFile] = useState<FileItem>();\n\n useEffect(() => {\n const fetchFileDetails = async () => {\n if (view.showingFileDetails) {\n const file = await view.getFile(view.showingFileDetails);\n setCurrentFile(file);\n } else {\n setCurrentFile(undefined);\n }\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 => {\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: 50,\n keys: {\n esc: view.onClose\n }\n });\n\n const uploadFiles = async (files: File[]) => {\n uploader.addFiles(files);\n\n uploader.onUploadFinished(({ uploaded, errors }) => {\n uploader.reset();\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.`);\n\n view.onUploadCompletion(uploaded);\n });\n };\n\n const renderUploadFileAction = useCallback(\n ({ browseFiles }) => {\n if (!fileManager.canCreate) {\n return null;\n }\n return (\n <ButtonPrimary flat={true} small={true} onClick={browseFiles}>\n <ButtonIcon icon={<UploadIcon />} />\n {t`Upload...`}\n </ButtonPrimary>\n );\n },\n [fileManager.canCreate]\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 onSelectRow: TableProps[\"onSelectRow\"] | undefined = view.areFilesSelectable\n ? rows => {\n const files = rows\n .filter(row => row.$type === \"RECORD\")\n .map(row => row.original as FileItem);\n\n if (view.multiple) {\n view.setSelected(files);\n } else {\n view.onChange(files[0]);\n }\n }\n : undefined;\n\n return (\n <Table\n canSelectAllRows={view.multiple}\n folders={view.folders}\n records={view.files}\n selectedRecords={view.selected}\n loading={view.isListLoading}\n onRecordClick={view.showFileDetails}\n onFolderClick={view.setFolderId}\n onSelectRow={onSelectRow}\n sorting={tableSorting}\n onSortingChange={setTableSorting}\n settings={view.settings}\n selectableItems={view.areFilesSelectable}\n />\n );\n }\n\n return (\n <Grid\n folders={view.folders}\n records={view.files}\n loading={view.isListLoading}\n onRecordClick={view.showFileDetails}\n onFolderClick={view.setFolderId}\n selected={view.selected}\n multiple={view.multiple}\n toggleSelected={view.toggleSelected}\n onChange={view.areFilesSelectable ? view.onChange : undefined}\n onClose={view.onClose}\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 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 console.log(\"onError\", errors);\n const message = outputFileSelectionError(errors);\n showSnackbar(message);\n }}\n >\n {({ getDropZoneProps, browseFiles }) => (\n <OverlayLayout\n onExited={view.onClose}\n barLeft={<Title title={view.listTitle} />}\n barMiddle={<SearchWidget />}\n barRight={\n <>\n {view.selected.length > 0 ? (\n <ButtonPrimary\n flat={true}\n small={true}\n onClick={() => view.onChange(view.selected)}\n >\n {t`Select`} {view.multiple && `(${view.selected.length})`}\n </ButtonPrimary>\n ) : (\n renderUploadFileAction({ browseFiles })\n )}\n <ButtonSecondary\n data-testid={\"file-manager.create-folder-button\"}\n onClick={openFoldersDialog}\n small={true}\n style={{ margin: \"0 8px\" }}\n >\n <ButtonIcon icon={<AddIcon />} />\n {t`New Folder`}\n </ButtonSecondary>\n <Tooltip\n content={t`{mode} layout`({\n mode: view.listTable ? \"Grid\" : \"Table\"\n })}\n placement={\"bottom\"}\n >\n <IconButton\n icon={view.listTable ? <GridIcon /> : <TableIcon />}\n onClick={() => view.setListTable(!view.listTable)}\n >\n {t`Switch`}\n </IconButton>\n </Tooltip>\n </>\n }\n >\n <>\n <FileDetails\n loading={view.loadingFileDetails}\n file={currentFile}\n open={Boolean(view.showingFileDetails)}\n onClose={view.hideFileDetails}\n />\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 <FileListWrapper\n {...getDropZoneProps({\n onDragEnter: () =>\n view.hasPreviouslyUploadedFiles && view.setDragging(true)\n })}\n data-testid={\"fm-list-wrapper\"}\n >\n {view.dragging && view.hasPreviouslyUploadedFiles && (\n <DropFilesHere\n onDragLeave={() => view.setDragging(false)}\n onDrop={() => view.setDragging(false)}\n />\n )}\n <Filters />\n <Scrollbar\n onScrollFrame={scrollFrame => loadMoreOnScroll({ scrollFrame })}\n >\n {renderList(browseFiles)}\n </Scrollbar>\n <BottomInfoBar\n accept={view.accept}\n listing={view.isListLoadingMore}\n />\n <UploadStatus\n numberOfFiles={filesBeingUploaded}\n progress={progress}\n />\n </FileListWrapper>\n </>\n </OverlayLayout>\n )}\n </Files>\n <FolderDialogCreate\n open={showFoldersDialog}\n onClose={closeFoldersDialog}\n currentParentId={view.folderId || null}\n />\n </>\n );\n};\n\nexport default observer(FileManagerView);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactButterfiles","_interopRequireDefault","_styled","_debounce","_reactHotkeyz","_mobxReactLite","_cloud_upload","_add","_i18n","_appAco","_appAdmin","_Button","_Scrollbar","_FileManagerViewProvider","_outputFileSelectionError","_LeftSidebar","_","_BottomInfoBar","_BulkActions","_DropFilesHere","_Empty","_FileDetails","_Grid","_LayoutSwitch","_Table","_Title","_UploadStatus","_BatchFileUploader","_SearchWidget","_Filters","_TagsList","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","t","i18n","ns","FileListWrapper","styled","target","label","float","zIndex","display","width","height","position","maxWidth","whiteSpace","overflow","textOverflow","createSort","sorting","length","undefined","reduce","items","item","sort","concat","id","desc","includes","push","FileManagerView","view","useFileManagerView","fileManager","useFileManagerApi","_useFileManagerViewCo","useFileManagerViewConfig","browser","_useSnackbar","useSnackbar","showSnackbar","uploader","useMemo","BatchFileUploader","uploadFile","folderId","_useState","useState","_useState2","_slicedToArray2","default","tableSorting","setTableSorting","_useState3","_useState4","showFoldersDialog","setFoldersDialog","openFoldersDialog","useCallback","closeFoldersDialog","_useState5","_useState6","currentFile","setCurrentFile","useEffect","fetchFileDetails","_ref","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","file","wrap","_callee$","_context","prev","next","showingFileDetails","getFile","sent","stop","apply","arguments","setListSort","getFileUploadErrorMessage","e","match","_match","message","useHotkeys","keys","esc","onClose","uploadFiles","_ref2","_callee2","files","_callee2$","_context2","addFiles","onUploadFinished","_ref3","uploaded","errors","reset","createElement","Fragment","_taggedTemplateLiteral2","map","_ref4","key","name","onUploadCompletion","_x","renderUploadFileAction","_ref5","browseFiles","canCreate","ButtonPrimary","flat","small","onClick","ButtonIcon","icon","ReactComponent","filesBeingUploaded","getJobs","progress","renderList","isListLoading","isSearch","Empty","isSearchResult","folders","listTable","getSelectableRow","rows","filter","row","$type","original","onSelectRow","hasOnSelectCallback","multiple","setSelected","onChange","onToggleRow","toggleSelected","Table","records","selectedRecords","selected","loading","onRecordClick","showFileDetails","onFolderClick","setFolderId","onSortingChange","settings","Grid","deselectAll","loadMoreOnScroll","debounce","_ref7","_callee3","_ref6","scrollFrame","_callee3$","_context3","top","loadMoreFiles","_x2","meta","maxSize","uploadMaxFileSize","multipleMaxSize","accept","onSuccess","filesToUpload","src","Boolean","onError","outputFileSelectionError","_ref8","getDropZoneProps","OverlayLayout","onExited","barLeft","Title","title","listTitle","barMiddle","SearchWidget","barRight","ButtonSecondary","style","margin","LayoutSwitch","FileDetails","loadingFileDetails","open","hideFileDetails","LeftSidebar","currentFolder","filterByTags","TagsList","tags","activeTags","allTags","onActivatedTagsChange","setActiveTags","Object","assign","onDragOver","setDragging","onDragLeave","onDrop","dragging","DropFilesHere","BulkActions","Filters","Scrollbar","onScrollFrame","BottomInfoBar","listing","isListLoadingMore","UploadStatus","numberOfFiles","FolderDialogCreate","currentParentId","_default","observer","exports"],"sources":["FileManagerView.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport Files, { FilesRenderChildren } from \"react-butterfiles\";\nimport styled from \"@emotion/styled\";\nimport debounce from \"lodash/debounce\";\nimport { positionValues } from \"react-custom-scrollbars\";\n// @ts-ignore\nimport { useHotkeys } from \"react-hotkeyz\";\nimport { observer } from \"mobx-react-lite\";\nimport { ReactComponent as UploadIcon } from \"@material-design-icons/svg/filled/cloud_upload.svg\";\nimport { ReactComponent as AddIcon } from \"@material-design-icons/svg/filled/add.svg\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { FolderDialogCreate } from \"@webiny/app-aco\";\nimport { OverlayLayout, useSnackbar } from \"@webiny/app-admin\";\nimport { ButtonIcon, ButtonPrimary, ButtonSecondary } from \"@webiny/ui/Button\";\nimport { Sorting } from \"@webiny/ui/DataTable\";\nimport { Scrollbar } from \"@webiny/ui/Scrollbar\";\nimport { useFileManagerView } from \"~/modules/FileManagerRenderer/FileManagerViewProvider\";\nimport { outputFileSelectionError } from \"./outputFileSelectionError\";\nimport { LeftSidebar } from \"./LeftSidebar\";\nimport { useFileManagerApi, useFileManagerViewConfig } from \"~/index\";\nimport { FileItem } from \"@webiny/app-admin/types\";\nimport { BottomInfoBar } from \"~/components/BottomInfoBar\";\nimport { BulkActions } from \"~/components/BulkActions\";\nimport { DropFilesHere } from \"~/components/DropFilesHere\";\nimport { Empty } from \"~/components/Empty\";\nimport { FileDetails } from \"~/components/FileDetails\";\nimport { Grid } from \"~/components/Grid\";\nimport { LayoutSwitch } from \"~/components/LayoutSwitch\";\nimport { Entry, Table, TableProps } from \"~/components/Table\";\nimport { Title } from \"~/components/Title\";\nimport { UploadStatus } from \"~/components/UploadStatus\";\nimport { BatchFileUploader } from \"~/BatchFileUploader\";\nimport { SearchWidget } from \"./components/SearchWidget\";\nimport { Filters } from \"./components/Filters\";\nimport { TagsList } from \"~/modules/FileManagerRenderer/FileManagerView/components/TagsList\";\nimport { ListFilesSort, ListFilesSortItem } from \"~/modules/FileManagerApiProvider/graphql\";\n\nconst t = i18n.ns(\"app-admin/file-manager/file-manager-view\");\n\nconst FileListWrapper = styled(\"div\")({\n float: \"right\",\n zIndex: 60,\n display: \"inline-block\",\n width: \"calc(100vw - 286px)\",\n height: \"calc(100vh - 94px)\",\n position: \"relative\",\n \".mdc-data-table\": {\n display: \"inline-table\"\n },\n \".mdc-data-table__cell\": {\n width: \"250px\",\n maxWidth: \"250px\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\"\n }\n});\n\nconst createSort = (sorting?: Sorting): 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\nconst FileManagerView = () => {\n const view = useFileManagerView();\n const fileManager = useFileManagerApi();\n const { browser } = useFileManagerViewConfig();\n const { showSnackbar } = useSnackbar();\n\n const uploader = useMemo<BatchFileUploader>(\n () => new BatchFileUploader(view.uploadFile),\n [view.folderId]\n );\n\n const [tableSorting, setTableSorting] = useState<Sorting>([]);\n const [showFoldersDialog, setFoldersDialog] = useState(false);\n const openFoldersDialog = useCallback(() => setFoldersDialog(true), []);\n const closeFoldersDialog = useCallback(() => setFoldersDialog(false), []);\n const [currentFile, setCurrentFile] = useState<FileItem>();\n\n useEffect(() => {\n const fetchFileDetails = async () => {\n if (view.showingFileDetails) {\n const file = await view.getFile(view.showingFileDetails);\n setCurrentFile(file);\n } else {\n setCurrentFile(undefined);\n }\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 => {\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: 50,\n keys: {\n esc: view.onClose\n }\n });\n\n const uploadFiles = async (files: File[]) => {\n uploader.addFiles(files);\n\n uploader.onUploadFinished(({ uploaded, errors }) => {\n uploader.reset();\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.`);\n\n view.onUploadCompletion(uploaded);\n });\n };\n\n const renderUploadFileAction = useCallback(\n ({ browseFiles }) => {\n if (!fileManager.canCreate) {\n return null;\n }\n return (\n <ButtonPrimary flat={true} small={true} onClick={browseFiles}>\n <ButtonIcon icon={<UploadIcon />} />\n {t`Upload...`}\n </ButtonPrimary>\n );\n },\n [fileManager.canCreate]\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: Entry[]) =>\n rows.filter(row => row.$type === \"RECORD\").map(row => row.original 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 folders={view.folders}\n records={view.files}\n selectedRecords={view.selected}\n loading={view.isListLoading}\n onRecordClick={view.showFileDetails}\n onFolderClick={view.setFolderId}\n onSelectRow={onSelectRow}\n onToggleRow={onToggleRow}\n sorting={tableSorting}\n onSortingChange={setTableSorting}\n settings={view.settings}\n />\n );\n }\n\n return (\n <Grid\n folders={view.folders}\n records={view.files}\n loading={view.isListLoading}\n onRecordClick={view.showFileDetails}\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 />\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 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 onExited={view.onClose}\n barLeft={<Title title={view.listTitle} />}\n barMiddle={<SearchWidget />}\n barRight={\n <>\n {view.hasOnSelectCallback && view.selected.length > 0 ? (\n <ButtonPrimary\n flat={true}\n small={true}\n onClick={() => view.onChange(view.selected)}\n >\n {t`Select`} {view.multiple && `(${view.selected.length})`}\n </ButtonPrimary>\n ) : (\n renderUploadFileAction({ browseFiles })\n )}\n <ButtonSecondary\n data-testid={\"file-manager.create-folder-button\"}\n onClick={openFoldersDialog}\n small={true}\n style={{ margin: \"0 8px\" }}\n >\n <ButtonIcon icon={<AddIcon />} />\n {t`New Folder`}\n </ButtonSecondary>\n <LayoutSwitch />\n </>\n }\n >\n <>\n <FileDetails\n loading={view.loadingFileDetails}\n file={currentFile}\n open={Boolean(view.showingFileDetails)}\n onClose={view.hideFileDetails}\n />\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 <FileListWrapper\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 {view.dragging && <DropFilesHere />}\n <BulkActions />\n <Filters />\n <Scrollbar\n onScrollFrame={scrollFrame => loadMoreOnScroll({ scrollFrame })}\n >\n {renderList(browseFiles)}\n </Scrollbar>\n <BottomInfoBar\n accept={view.accept}\n listing={view.isListLoadingMore}\n />\n <UploadStatus\n numberOfFiles={filesBeingUploaded}\n progress={progress}\n />\n </FileListWrapper>\n </>\n </OverlayLayout>\n )}\n </Files>\n <FolderDialogCreate\n open={showFoldersDialog}\n onClose={closeFoldersDialog}\n currentParentId={view.folderId || null}\n />\n </>\n );\n};\n\nexport default observer(FileManagerView);\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,SAAA,GAAAF,sBAAA,CAAAF,OAAA;AAGA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AACA,IAAAO,aAAA,GAAAP,OAAA;AACA,IAAAQ,IAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAT,OAAA;AACA,IAAAU,OAAA,GAAAV,OAAA;AACA,IAAAW,SAAA,GAAAX,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AAEA,IAAAa,UAAA,GAAAb,OAAA;AACA,IAAAc,wBAAA,GAAAd,OAAA;AACA,IAAAe,yBAAA,GAAAf,OAAA;AACA,IAAAgB,YAAA,GAAAhB,OAAA;AACA,IAAAiB,CAAA,GAAAjB,OAAA;AAEA,IAAAkB,cAAA,GAAAlB,OAAA;AACA,IAAAmB,YAAA,GAAAnB,OAAA;AACA,IAAAoB,cAAA,GAAApB,OAAA;AACA,IAAAqB,MAAA,GAAArB,OAAA;AACA,IAAAsB,YAAA,GAAAtB,OAAA;AACA,IAAAuB,KAAA,GAAAvB,OAAA;AACA,IAAAwB,aAAA,GAAAxB,OAAA;AACA,IAAAyB,MAAA,GAAAzB,OAAA;AACA,IAAA0B,MAAA,GAAA1B,OAAA;AACA,IAAA2B,aAAA,GAAA3B,OAAA;AACA,IAAA4B,kBAAA,GAAA5B,OAAA;AACA,IAAA6B,aAAA,GAAA7B,OAAA;AACA,IAAA8B,QAAA,GAAA9B,OAAA;AACA,IAAA+B,SAAA,GAAA/B,OAAA;AAA6F,IAAAgC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EA7B7F;AAgCA,IAAMC,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,0CAA0C,CAAC;AAE7D,IAAMC,eAAe,oBAAGC,eAAM,EAAC,KAAK;EAAAC,MAAA;EAAAC,KAAA;AAAA,GAAE;EAClCC,KAAK,EAAE,OAAO;EACdC,MAAM,EAAE,EAAE;EACVC,OAAO,EAAE,cAAc;EACvBC,KAAK,EAAE,qBAAqB;EAC5BC,MAAM,EAAE,oBAAoB;EAC5BC,QAAQ,EAAE,UAAU;EACpB,iBAAiB,EAAE;IACfH,OAAO,EAAE;EACb,CAAC;EACD,uBAAuB,EAAE;IACrBC,KAAK,EAAE,OAAO;IACdG,QAAQ,EAAE,OAAO;IACjBC,UAAU,EAAE,QAAQ;IACpBC,QAAQ,EAAE,QAAQ;IAClBC,YAAY,EAAE;EAClB;AACJ,CAAC,CAAC;AAEF,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,OAAiB,EAAgC;EACjE,IAAI,EAACA,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEC,MAAM,GAAE;IAClB,OAAOC,SAAS;EACpB;EACA,OAAOF,OAAO,CAACG,MAAM,CAAgB,UAACC,KAAK,EAAEC,IAAI,EAAK;IAClD,IAAMC,IAAI,MAAAC,MAAA,CAAMF,IAAI,CAACG,EAAE,OAAAD,MAAA,CAAIF,IAAI,CAACI,IAAI,GAAG,MAAM,GAAG,KAAK,CAAuB;IAC5E,IAAIL,KAAK,CAACM,QAAQ,CAACJ,IAAI,CAAC,EAAE;MACtB,OAAOF,KAAK;IAChB;IACAA,KAAK,CAACO,IAAI,CAACL,IAAI,CAAC;IAChB,OAAOF,KAAK;EAChB,CAAC,EAAE,EAAE,CAAC;AACV,CAAC;AAED,IAAMQ,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;EAC1B,IAAMC,IAAI,GAAG,IAAAC,2CAAkB,EAAC,CAAC;EACjC,IAAMC,WAAW,GAAG,IAAAC,mBAAiB,EAAC,CAAC;EACvC,IAAAC,qBAAA,GAAoB,IAAAC,0BAAwB,EAAC,CAAC;IAAtCC,OAAO,GAAAF,qBAAA,CAAPE,OAAO;EACf,IAAAC,YAAA,GAAyB,IAAAC,qBAAW,EAAC,CAAC;IAA9BC,YAAY,GAAAF,YAAA,CAAZE,YAAY;EAEpB,IAAMC,QAAQ,GAAG,IAAAC,cAAO,EACpB;IAAA,OAAM,IAAIC,oCAAiB,CAACZ,IAAI,CAACa,UAAU,CAAC;EAAA,GAC5C,CAACb,IAAI,CAACc,QAAQ,CAClB,CAAC;EAED,IAAAC,SAAA,GAAwC,IAAAC,eAAQ,EAAU,EAAE,CAAC;IAAAC,UAAA,OAAAC,eAAA,CAAAC,OAAA,EAAAJ,SAAA;IAAtDK,YAAY,GAAAH,UAAA;IAAEI,eAAe,GAAAJ,UAAA;EACpC,IAAAK,UAAA,GAA8C,IAAAN,eAAQ,EAAC,KAAK,CAAC;IAAAO,UAAA,OAAAL,eAAA,CAAAC,OAAA,EAAAG,UAAA;IAAtDE,iBAAiB,GAAAD,UAAA;IAAEE,gBAAgB,GAAAF,UAAA;EAC1C,IAAMG,iBAAiB,GAAG,IAAAC,kBAAW,EAAC;IAAA,OAAMF,gBAAgB,CAAC,IAAI,CAAC;EAAA,GAAE,EAAE,CAAC;EACvE,IAAMG,kBAAkB,GAAG,IAAAD,kBAAW,EAAC;IAAA,OAAMF,gBAAgB,CAAC,KAAK,CAAC;EAAA,GAAE,EAAE,CAAC;EACzE,IAAAI,UAAA,GAAsC,IAAAb,eAAQ,EAAW,CAAC;IAAAc,UAAA,OAAAZ,eAAA,CAAAC,OAAA,EAAAU,UAAA;IAAnDE,WAAW,GAAAD,UAAA;IAAEE,cAAc,GAAAF,UAAA;EAElC,IAAAG,gBAAS,EAAC,YAAM;IACZ,IAAMC,gBAAgB;MAAA,IAAAC,IAAA,OAAAC,kBAAA,CAAAjB,OAAA,oBAAAkB,oBAAA,CAAAlB,OAAA,IAAAmB,IAAA,CAAG,SAAAC,QAAA;QAAA,IAAAC,IAAA;QAAA,WAAAH,oBAAA,CAAAlB,OAAA,IAAAsB,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAA,KACjB7C,IAAI,CAAC8C,kBAAkB;gBAAAH,QAAA,CAAAE,IAAA;gBAAA;cAAA;cAAAF,QAAA,CAAAE,IAAA;cAAA,OACJ7C,IAAI,CAAC+C,OAAO,CAAC/C,IAAI,CAAC8C,kBAAkB,CAAC;YAAA;cAAlDN,IAAI,GAAAG,QAAA,CAAAK,IAAA;cACVhB,cAAc,CAACQ,IAAI,CAAC;cAACG,QAAA,CAAAE,IAAA;cAAA;YAAA;cAErBb,cAAc,CAAC3C,SAAS,CAAC;YAAC;YAAA;cAAA,OAAAsD,QAAA,CAAAM,IAAA;UAAA;QAAA,GAAAV,OAAA;MAAA,CAEjC;MAAA,gBAPKL,gBAAgBA,CAAA;QAAA,OAAAC,IAAA,CAAAe,KAAA,OAAAC,SAAA;MAAA;IAAA,GAOrB;;IAED;IACAjB,gBAAgB,CAAC,CAAC;EACtB,CAAC,EAAE,CAAClC,IAAI,CAAC8C,kBAAkB,CAAC,CAAC;EAE7B,IAAAb,gBAAS,EAAC,YAAM;IACZ,IAAI,EAACb,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAEhC,MAAM,GAAE;MACvB;IACJ;IACA,IAAMK,IAAI,GAAGP,UAAU,CAACkC,YAAY,CAAC;IACrC,IAAI,CAAC3B,IAAI,EAAE;MACP;IACJ;IACAO,IAAI,CAACoD,WAAW,CAAC3D,IAAI,CAAC;EAC1B,CAAC,EAAE,CAAC2B,YAAY,CAAC,CAAC;EAElB,IAAMiC,yBAAyB,GAAG,IAAA1B,kBAAW,EAAC,UAAA2B,CAAC,EAAI;IAC/C,IAAI,OAAOA,CAAC,KAAK,QAAQ,EAAE;MACvB,IAAMC,KAAK,GAAGD,CAAC,CAACC,KAAK,CAAC,yBAAyB,CAAC;MAChD,IAAIA,KAAK,EAAE;QACP,IAAAC,MAAA,OAAAtC,eAAA,CAAAC,OAAA,EAAoBoC,KAAK;UAAhBE,OAAO,GAAAD,MAAA;QAChB,OAAOC,OAAO;MAClB;MAEA,OAAOH,CAAC;IACZ;IACA,OAAOA,CAAC,CAACG,OAAO;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAC,wBAAU,EAAC;IACPjF,MAAM,EAAE,EAAE;IACVkF,IAAI,EAAE;MACFC,GAAG,EAAE5D,IAAI,CAAC6D;IACd;EACJ,CAAC,CAAC;EAEF,IAAMC,WAAW;IAAA,IAAAC,KAAA,OAAA3B,kBAAA,CAAAjB,OAAA,oBAAAkB,oBAAA,CAAAlB,OAAA,IAAAmB,IAAA,CAAG,SAAA0B,SAAOC,KAAa;MAAA,WAAA5B,oBAAA,CAAAlB,OAAA,IAAAsB,IAAA,UAAAyB,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAvB,IAAA,GAAAuB,SAAA,CAAAtB,IAAA;UAAA;YACpCnC,QAAQ,CAAC0D,QAAQ,CAACH,KAAK,CAAC;YAExBvD,QAAQ,CAAC2D,gBAAgB,CAAC,UAAAC,KAAA,EAA0B;cAAA,IAAvBC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;gBAAEC,MAAM,GAAAF,KAAA,CAANE,MAAM;cACzC9D,QAAQ,CAAC+D,KAAK,CAAC,CAAC;cAEhB,IAAID,MAAM,CAACpF,MAAM,GAAG,CAAC,EAAE;gBACnBqB,YAAY,eACR/E,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAAhJ,MAAA,CAAAyF,OAAA,CAAAwD,QAAA,QACK1G,CAAC,CAAAL,eAAA,KAAAA,eAAA,OAAAgH,uBAAA,CAAAzD,OAAA,yEACFzF,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,aACKF,MAAM,CAACK,GAAG,CAAC,UAAAC,KAAA;kBAAA,IAAGtC,IAAI,GAAAsC,KAAA,CAAJtC,IAAI;oBAAEc,CAAC,GAAAwB,KAAA,CAADxB,CAAC;kBAAA,oBAClB5H,MAAA,CAAAyF,OAAA,CAAAuD,aAAA;oBAAIK,GAAG,EAAEvC,IAAI,CAACwC;kBAAK,gBACftJ,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,iBAASlC,IAAI,CAACwC,IAAa,CAAC,MAAE,EAAC3B,yBAAyB,CAACC,CAAC,CAC1D,CAAC;gBAAA,CACR,CACD,CACN,CACN,CAAC;gBACD;cACJ;cAEA7C,YAAY,CAACxC,CAAC,CAAAJ,gBAAA,KAAAA,gBAAA,OAAA+G,uBAAA,CAAAzD,OAAA,8BAAuB,CAAC;cAEtCnB,IAAI,CAACiF,kBAAkB,CAACV,QAAQ,CAAC;YACrC,CAAC,CAAC;UAAC;UAAA;YAAA,OAAAJ,SAAA,CAAAlB,IAAA;QAAA;MAAA,GAAAe,QAAA;IAAA,CACN;IAAA,gBA1BKF,WAAWA,CAAAoB,EAAA;MAAA,OAAAnB,KAAA,CAAAb,KAAA,OAAAC,SAAA;IAAA;EAAA,GA0BhB;EAED,IAAMgC,sBAAsB,GAAG,IAAAxD,kBAAW,EACtC,UAAAyD,KAAA,EAAqB;IAAA,IAAlBC,WAAW,GAAAD,KAAA,CAAXC,WAAW;IACV,IAAI,CAACnF,WAAW,CAACoF,SAAS,EAAE;MACxB,OAAO,IAAI;IACf;IACA,oBACI5J,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAClI,OAAA,CAAA+I,aAAa;MAACC,IAAI,EAAE,IAAK;MAACC,KAAK,EAAE,IAAK;MAACC,OAAO,EAAEL;IAAY,gBACzD3J,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAClI,OAAA,CAAAmJ,UAAU;MAACC,IAAI,eAAElK,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACvI,aAAA,CAAA0J,cAAU,MAAE;IAAE,CAAE,CAAC,EACnC5H,CAAC,CAAAH,gBAAA,KAAAA,gBAAA,OAAA8G,uBAAA,CAAAzD,OAAA,kBACS,CAAC;EAExB,CAAC,EACD,CAACjB,WAAW,CAACoF,SAAS,CAC1B,CAAC;EAED,IAAMQ,kBAAkB,GAAGpF,QAAQ,CAACqF,OAAO,CAAC,CAAC,CAAC3G,MAAM;EACpD,IAAM4G,QAAQ,GAAGtF,QAAQ,CAACsF,QAAQ;EAElC,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAIZ,WAA+C,EAAK;IACpE,IAAI,CAACrF,IAAI,CAACkG,aAAa,IAAIlG,IAAI,CAACmG,QAAQ,IAAInG,IAAI,CAACiE,KAAK,CAAC7E,MAAM,KAAK,CAAC,EAAE;MACjE,oBAAO1D,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACzH,MAAA,CAAAmJ,KAAK;QAACC,cAAc,EAAE,IAAK;QAAChB,WAAW,EAAEA;MAAY,CAAE,CAAC;IACpE;IAEA,IAAI,CAACrF,IAAI,CAACkG,aAAa,IAAIlG,IAAI,CAACiE,KAAK,CAAC7E,MAAM,KAAK,CAAC,IAAIY,IAAI,CAACsG,OAAO,CAAClH,MAAM,KAAK,CAAC,EAAE;MAC7E,oBAAO1D,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACzH,MAAA,CAAAmJ,KAAK;QAACC,cAAc,EAAE,KAAM;QAAChB,WAAW,EAAEA;MAAY,CAAE,CAAC;IACrE;IAEA,IAAIrF,IAAI,CAACuG,SAAS,EAAE;MAChB,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,IAAa;QAAA,OACnCA,IAAI,CAACC,MAAM,CAAC,UAAAC,GAAG;UAAA,OAAIA,GAAG,CAACC,KAAK,KAAK,QAAQ;QAAA,EAAC,CAAC/B,GAAG,CAAC,UAAA8B,GAAG;UAAA,OAAIA,GAAG,CAACE,QAAQ;QAAA,CAAY,CAAC;MAAA;MAEnF,IAAMC,WAAsC,GAAG9G,IAAI,CAAC+G,mBAAmB,GACjE,UAAAN,IAAI,EAAI;QACJ,IAAMxC,KAAK,GAAGuC,gBAAgB,CAACC,IAAI,CAAC;QAEpC,IAAIzG,IAAI,CAACgH,QAAQ,EAAE;UACfhH,IAAI,CAACiH,WAAW,CAAChD,KAAK,CAAC;QAC3B,CAAC,MAAM;UACHjE,IAAI,CAACkH,QAAQ,CAACjD,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B;MACJ,CAAC,GACD,UAAAwC,IAAI,EAAI;QACJ,IAAMxC,KAAK,GAAGuC,gBAAgB,CAACC,IAAI,CAAC;QACpCzG,IAAI,CAACiH,WAAW,CAAChD,KAAK,CAAC;MAC3B,CAAC;MAEP,IAAMkD,WAAsC,GAAGnH,IAAI,CAAC+G,mBAAmB,GACjE,UAAAJ,GAAG,EAAI;QACH,IAAM1C,KAAK,GAAGuC,gBAAgB,CAAC,CAACG,GAAG,CAAC,CAAC;QAErC,IAAI3G,IAAI,CAACgH,QAAQ,EAAE;UACfhH,IAAI,CAACoH,cAAc,CAACnD,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,MAAM;UACHjE,IAAI,CAACkH,QAAQ,CAACjD,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B;MACJ,CAAC,GACD,UAAA0C,GAAG,EAAI;QACH,IAAM1C,KAAK,GAAGuC,gBAAgB,CAAC,CAACG,GAAG,CAAC,CAAC;QACrC3G,IAAI,CAACoH,cAAc,CAACnD,KAAK,CAAC,CAAC,CAAC,CAAC;MACjC,CAAC;MAEP,oBACIvI,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACrH,MAAA,CAAAgK,KAAK;QACFf,OAAO,EAAEtG,IAAI,CAACsG,OAAQ;QACtBgB,OAAO,EAAEtH,IAAI,CAACiE,KAAM;QACpBsD,eAAe,EAAEvH,IAAI,CAACwH,QAAS;QAC/BC,OAAO,EAAEzH,IAAI,CAACkG,aAAc;QAC5BwB,aAAa,EAAE1H,IAAI,CAAC2H,eAAgB;QACpCC,aAAa,EAAE5H,IAAI,CAAC6H,WAAY;QAChCf,WAAW,EAAEA,WAAY;QACzBK,WAAW,EAAEA,WAAY;QACzBhI,OAAO,EAAEiC,YAAa;QACtB0G,eAAe,EAAEzG,eAAgB;QACjC0G,QAAQ,EAAE/H,IAAI,CAAC+H;MAAS,CAC3B,CAAC;IAEV;IAEA,oBACIrM,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACvH,KAAA,CAAA6K,IAAI;MACD1B,OAAO,EAAEtG,IAAI,CAACsG,OAAQ;MACtBgB,OAAO,EAAEtH,IAAI,CAACiE,KAAM;MACpBwD,OAAO,EAAEzH,IAAI,CAACkG,aAAc;MAC5BwB,aAAa,EAAE1H,IAAI,CAAC2H,eAAgB;MACpCC,aAAa,EAAE5H,IAAI,CAAC6H,WAAY;MAChCL,QAAQ,EAAExH,IAAI,CAACwH,QAAS;MACxBR,QAAQ,EAAEhH,IAAI,CAACgH,QAAS;MACxBI,cAAc,EAAEpH,IAAI,CAACoH,cAAe;MACpCa,WAAW,EAAEjI,IAAI,CAACiI,WAAY;MAC9Bf,QAAQ,EAAElH,IAAI,CAACkH,QAAS;MACxBrD,OAAO,EAAE7D,IAAI,CAAC6D,OAAQ;MACtBkD,mBAAmB,EAAE/G,IAAI,CAAC+G;IAAoB,CACjD,CAAC;EAEV,CAAC;EAED,IAAMmB,gBAAgB,GAAG,IAAAvG,kBAAW,EAChC,IAAAwG,iBAAQ;IAAA,IAAAC,KAAA,OAAAhG,kBAAA,CAAAjB,OAAA,oBAAAkB,oBAAA,CAAAlB,OAAA,IAAAmB,IAAA,CAAC,SAAA+F,SAAAC,KAAA;MAAA,IAAAC,WAAA;MAAA,WAAAlG,oBAAA,CAAAlB,OAAA,IAAAsB,IAAA,UAAA+F,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAA7F,IAAA,GAAA6F,SAAA,CAAA5F,IAAA;UAAA;YAAS0F,WAAW,GAAAD,KAAA,CAAXC,WAAW;YACzB,IAAIA,WAAW,CAACG,GAAG,GAAG,GAAG,EAAE;cACvB1I,IAAI,CAAC2I,aAAa,CAAC,CAAC;YACxB;UAAC;UAAA;YAAA,OAAAF,SAAA,CAAAxF,IAAA;QAAA;MAAA,GAAAoF,QAAA;IAAA,CACJ;IAAA,iBAAAO,GAAA;MAAA,OAAAR,KAAA,CAAAlF,KAAA,OAAAC,SAAA;IAAA;EAAA,KAAE,GAAG,CAAC,EACP,CAACnD,IAAI,CAAC6I,IAAI,EAAE7I,IAAI,CAAC2I,aAAa,CAClC,CAAC;EAED,oBACIjN,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAAhJ,MAAA,CAAAyF,OAAA,CAAAwD,QAAA,qBACIjJ,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAC7I,iBAAA,CAAAsF,OAAK;IACF6F,QAAQ;IACR8B,OAAO,EAAE9I,IAAI,CAAC+H,QAAQ,GAAG/H,IAAI,CAAC+H,QAAQ,CAACgB,iBAAiB,GAAG,GAAG,GAAG,KAAM;IACvEC,eAAe,EAAE,KAAM;IACvBC,MAAM,EAAEjJ,IAAI,CAACiJ,MAAO;IACpBC,SAAS,EAAE,SAAAA,UAAAjF,KAAK,EAAI;MAChB,IAAMkF,aAAa,GAAGlF,KAAK,CACtBY,GAAG,CAAC,UAAArC,IAAI;QAAA,OAAIA,IAAI,CAAC4G,GAAG,CAAC5G,IAAI;MAAA,EAAC,CAC1BkE,MAAM,CAAC2C,OAAO,CAAW;MAC9BvF,WAAW,CAACqF,aAAa,CAAC;IAC9B,CAAE;IACFG,OAAO,EAAE,SAAAA,QAAA9E,MAAM,EAAI;MACf,IAAMf,OAAO,GAAG,IAAA8F,kDAAwB,EAAC/E,MAAM,CAAC;MAChD/D,YAAY,CAACgD,OAAO,CAAC;IACzB;EAAE,GAED,UAAA+F,KAAA;IAAA,IAAGC,gBAAgB,GAAAD,KAAA,CAAhBC,gBAAgB;MAAEpE,WAAW,GAAAmE,KAAA,CAAXnE,WAAW;IAAA,oBAC7B3J,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACnI,SAAA,CAAAmN,aAAa;MACVC,QAAQ,EAAE3J,IAAI,CAAC6D,OAAQ;MACvB+F,OAAO,eAAElO,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACpH,MAAA,CAAAuM,KAAK;QAACC,KAAK,EAAE9J,IAAI,CAAC+J;MAAU,CAAE,CAAE;MAC1CC,SAAS,eAAEtO,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACjH,aAAA,CAAAwM,YAAY,MAAE,CAAE;MAC5BC,QAAQ,eACJxO,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAAhJ,MAAA,CAAAyF,OAAA,CAAAwD,QAAA,QACK3E,IAAI,CAAC+G,mBAAmB,IAAI/G,IAAI,CAACwH,QAAQ,CAACpI,MAAM,GAAG,CAAC,gBACjD1D,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAClI,OAAA,CAAA+I,aAAa;QACVC,IAAI,EAAE,IAAK;QACXC,KAAK,EAAE,IAAK;QACZC,OAAO,EAAE,SAAAA,QAAA;UAAA,OAAM1F,IAAI,CAACkH,QAAQ,CAAClH,IAAI,CAACwH,QAAQ,CAAC;QAAA;MAAC,GAE3CvJ,CAAC,CAAAF,gBAAA,KAAAA,gBAAA,OAAA6G,uBAAA,CAAAzD,OAAA,iBAAS,GAAC,EAACnB,IAAI,CAACgH,QAAQ,QAAAtH,MAAA,CAAQM,IAAI,CAACwH,QAAQ,CAACpI,MAAM,MAC3C,CAAC,GAEhB+F,sBAAsB,CAAC;QAAEE,WAAW,EAAXA;MAAY,CAAC,CACzC,eACD3J,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAClI,OAAA,CAAA2N,eAAe;QACZ,eAAa,mCAAoC;QACjDzE,OAAO,EAAEhE,iBAAkB;QAC3B+D,KAAK,EAAE,IAAK;QACZ2E,KAAK,EAAE;UAAEC,MAAM,EAAE;QAAQ;MAAE,gBAE3B3O,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAClI,OAAA,CAAAmJ,UAAU;QAACC,IAAI,eAAElK,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACtI,IAAA,CAAAyJ,cAAO,MAAE;MAAE,CAAE,CAAC,EAChC5H,CAAC,CAAAD,gBAAA,KAAAA,gBAAA,OAAA4G,uBAAA,CAAAzD,OAAA,mBACW,CAAC,eAClBzF,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACtH,aAAA,CAAAkN,YAAY,MAAE,CACjB;IACL,gBAED5O,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAAhJ,MAAA,CAAAyF,OAAA,CAAAwD,QAAA,qBACIjJ,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACxH,YAAA,CAAAqN,WAAW;MACR9C,OAAO,EAAEzH,IAAI,CAACwK,kBAAmB;MACjChI,IAAI,EAAET,WAAY;MAClB0I,IAAI,EAAEpB,OAAO,CAACrJ,IAAI,CAAC8C,kBAAkB,CAAE;MACvCe,OAAO,EAAE7D,IAAI,CAAC0K;IAAgB,CACjC,CAAC,eACFhP,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAC9H,YAAA,CAAA+N,WAAW;MACRC,aAAa,EAAE5K,IAAI,CAACc,QAAS;MAC7B8G,aAAa,EAAE5H,IAAI,CAAC6H;IAAY,GAE/BvH,OAAO,CAACuK,YAAY,gBACjBnP,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAC/G,SAAA,CAAAmN,QAAQ;MACLrD,OAAO,EAAEzH,IAAI,CAAC+K,IAAI,CAACtD,OAAQ;MAC3BuD,UAAU,EAAEhL,IAAI,CAAC+K,IAAI,CAACC,UAAW;MACjCD,IAAI,EAAE/K,IAAI,CAAC+K,IAAI,CAACE,OAAQ;MACxBC,qBAAqB,EAAElL,IAAI,CAAC+K,IAAI,CAACI;IAAc,CAClD,CAAC,GACF,IACK,CAAC,eACdzP,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACtG,eAAe,EAAAgN,MAAA,CAAAC,MAAA,KACR5B,gBAAgB,CAAC;MACjB6B,UAAU,EAAE,SAAAA,WAAA;QAAA,OAAMtL,IAAI,CAACuL,WAAW,CAAC,IAAI,CAAC;MAAA;MACxCC,WAAW,EAAE,SAAAA,YAAA;QAAA,OAAMxL,IAAI,CAACuL,WAAW,CAAC,KAAK,CAAC;MAAA;MAC1CE,MAAM,EAAE,SAAAA,OAAA;QAAA,OAAMzL,IAAI,CAACuL,WAAW,CAAC,KAAK,CAAC;MAAA;IACzC,CAAC,CAAC;MACF,eAAa;IAAkB,IAE9BvL,IAAI,CAAC0L,QAAQ,iBAAIhQ,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAC1H,cAAA,CAAA2O,aAAa,MAAE,CAAC,eACnCjQ,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAC3H,YAAA,CAAA6O,WAAW,MAAE,CAAC,eACflQ,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAChH,QAAA,CAAAmO,OAAO,MAAE,CAAC,eACXnQ,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACjI,UAAA,CAAAqP,SAAS;MACNC,aAAa,EAAE,SAAAA,cAAAxD,WAAW;QAAA,OAAIL,gBAAgB,CAAC;UAAEK,WAAW,EAAXA;QAAY,CAAC,CAAC;MAAA;IAAC,GAE/DtC,UAAU,CAACZ,WAAW,CAChB,CAAC,eACZ3J,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAAC5H,cAAA,CAAAkP,aAAa;MACV/C,MAAM,EAAEjJ,IAAI,CAACiJ,MAAO;MACpBgD,OAAO,EAAEjM,IAAI,CAACkM;IAAkB,CACnC,CAAC,eACFxQ,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACnH,aAAA,CAAA4O,YAAY;MACTC,aAAa,EAAEtG,kBAAmB;MAClCE,QAAQ,EAAEA;IAAS,CACtB,CACY,CACnB,CACS,CAAC;EAAA,CAEjB,CAAC,eACRtK,MAAA,CAAAyF,OAAA,CAAAuD,aAAA,CAACpI,OAAA,CAAA+P,kBAAkB;IACf5B,IAAI,EAAEjJ,iBAAkB;IACxBqC,OAAO,EAAEjC,kBAAmB;IAC5B0K,eAAe,EAAEtM,IAAI,CAACc,QAAQ,IAAI;EAAK,CAC1C,CACH,CAAC;AAEX,CAAC;AAAC,IAAAyL,QAAA,GAEa,IAAAC,uBAAQ,EAACzM,eAAe,CAAC;AAAA0M,OAAA,CAAAtL,OAAA,GAAAoL,QAAA"}
|
|
@@ -3,6 +3,17 @@ export declare const FileManagerViewConfig: (({ children }: {
|
|
|
3
3
|
children: import("react").ReactNode;
|
|
4
4
|
}) => JSX.Element) & {
|
|
5
5
|
Browser: {
|
|
6
|
+
BulkAction: import("react").FC<import("./configComponents/Browser/BulkAction").BulkActionProps> & {
|
|
7
|
+
useButtons: () => import("@webiny/app-admin/components/Buttons/useButtons").ButtonsProviderContext;
|
|
8
|
+
useWorker: () => {
|
|
9
|
+
items: import("@webiny/app-admin/types").FileItem[];
|
|
10
|
+
process: (callback: (items: import("@webiny/app-admin/types").FileItem[]) => void) => void;
|
|
11
|
+
processInSeries: (callback: ({ item, allItems, report }: import("@webiny/app-admin").CallbackParams<import("@webiny/app-admin/types").FileItem>) => Promise<void>, chunkSize?: number | undefined) => Promise<void>;
|
|
12
|
+
resetItems: () => void;
|
|
13
|
+
results: import("@webiny/app-admin").Result[];
|
|
14
|
+
};
|
|
15
|
+
useDialog: () => import("@webiny/app-admin").UseDialogWithReportResponse;
|
|
16
|
+
};
|
|
6
17
|
Filter: import("@webiny/react-composition").ComposableFC<import("./configComponents/Browser/Filter").FilterProps> & {
|
|
7
18
|
createDecorator: (decorator: import("@webiny/react-composition").Decorator<import("./configComponents/Browser/Filter").FilterProps>) => (props: {
|
|
8
19
|
name: string;
|
|
@@ -30,6 +41,7 @@ export declare const FileManagerViewConfig: (({ children }: {
|
|
|
30
41
|
export declare const FileManagerViewWithConfig: ({ onProperties, children }: import("@webiny/react-properties").WithConfigProps) => JSX.Element;
|
|
31
42
|
export declare function useFileManagerViewConfig(): {
|
|
32
43
|
browser: {
|
|
44
|
+
bulkActions: import("./configComponents/Browser/BulkAction").BulkActionConfig[];
|
|
33
45
|
filterByTags: Boolean;
|
|
34
46
|
filters: import("./configComponents/Browser/Filter").FilterConfig[];
|
|
35
47
|
filtersToWhere: import("./configComponents/Browser/FiltersToWhere").FiltersToWhereConverter[];
|
|
@@ -27,6 +27,7 @@ function useFileManagerViewConfig() {
|
|
|
27
27
|
var _browser$filterByTags, _config$fileDetails$w, _config$fileDetails, _config$fileDetails$f, _config$fileDetails2;
|
|
28
28
|
return {
|
|
29
29
|
browser: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, browser), {}, {
|
|
30
|
+
bulkActions: (0, _toConsumableArray2.default)(browser.bulkActions || []),
|
|
30
31
|
filterByTags: (_browser$filterByTags = browser.filterByTags) !== null && _browser$filterByTags !== void 0 ? _browser$filterByTags : false,
|
|
31
32
|
filters: (0, _toConsumableArray2.default)(browser.filters || []),
|
|
32
33
|
filtersToWhere: (0, _toConsumableArray2.default)(browser.filtersToWhere || [])
|
|
@@ -37,4 +38,6 @@ function useFileManagerViewConfig() {
|
|
|
37
38
|
}
|
|
38
39
|
};
|
|
39
40
|
}, [config]);
|
|
40
|
-
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=FileManagerViewConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactProperties","_Browser","_FileDetails","base","createConfigurableComponent","FileManagerViewConfig","Object","assign","Config","Browser","FileDetails","exports","FileManagerViewWithConfig","WithConfig","useFileManagerViewConfig","config","useConfig","browser","useMemo","_browser$filterByTags","_config$fileDetails$w","_config$fileDetails","_config$fileDetails$f","_config$fileDetails2","_objectSpread2","default","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactProperties","_Browser","_FileDetails","base","createConfigurableComponent","FileManagerViewConfig","Object","assign","Config","Browser","FileDetails","exports","FileManagerViewWithConfig","WithConfig","useFileManagerViewConfig","config","useConfig","browser","useMemo","_browser$filterByTags","_config$fileDetails$w","_config$fileDetails","_config$fileDetails$f","_config$fileDetails2","_objectSpread2","default","bulkActions","_toConsumableArray2","filterByTags","filters","filtersToWhere","fileDetails","width","fields"],"sources":["FileManagerViewConfig.tsx"],"sourcesContent":["import { useMemo } from \"react\";\nimport { createConfigurableComponent } from \"@webiny/react-properties\";\nimport { Browser, BrowserConfig } from \"./configComponents/Browser\";\nimport { FileDetails, FileDetailsConfig } from \"./configComponents/FileDetails\";\n\nconst base = createConfigurableComponent<FileManagerViewConfigData>(\"FileManagerView\");\n\nexport const FileManagerViewConfig = Object.assign(base.Config, { Browser, FileDetails });\nexport const FileManagerViewWithConfig = base.WithConfig;\n\ninterface FileManagerViewConfigData {\n browser: BrowserConfig;\n fileDetails: FileDetailsConfig;\n}\n\nexport function useFileManagerViewConfig() {\n const config = base.useConfig();\n\n const browser = config.browser || {};\n\n return useMemo(\n () => ({\n browser: {\n ...browser,\n bulkActions: [...(browser.bulkActions || [])],\n filterByTags: browser.filterByTags ?? false,\n filters: [...(browser.filters || [])],\n filtersToWhere: [...(browser.filtersToWhere || [])]\n },\n fileDetails: {\n width: config.fileDetails?.width ?? \"1000px\",\n fields: config.fileDetails?.fields ?? []\n }\n }),\n [config]\n );\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAEA,IAAMI,IAAI,GAAG,IAAAC,4CAA2B,EAA4B,iBAAiB,CAAC;AAE/E,IAAMC,qBAAqB,GAAGC,MAAM,CAACC,MAAM,CAACJ,IAAI,CAACK,MAAM,EAAE;EAAEC,OAAO,EAAPA,gBAAO;EAAEC,WAAW,EAAXA;AAAY,CAAC,CAAC;AAACC,OAAA,CAAAN,qBAAA,GAAAA,qBAAA;AACnF,IAAMO,yBAAyB,GAAGT,IAAI,CAACU,UAAU;AAACF,OAAA,CAAAC,yBAAA,GAAAA,yBAAA;AAOlD,SAASE,wBAAwBA,CAAA,EAAG;EACvC,IAAMC,MAAM,GAAGZ,IAAI,CAACa,SAAS,CAAC,CAAC;EAE/B,IAAMC,OAAO,GAAGF,MAAM,CAACE,OAAO,IAAI,CAAC,CAAC;EAEpC,OAAO,IAAAC,cAAO,EACV;IAAA,IAAAC,qBAAA,EAAAC,qBAAA,EAAAC,mBAAA,EAAAC,qBAAA,EAAAC,oBAAA;IAAA,OAAO;MACHN,OAAO,MAAAO,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MACAR,OAAO;QACVS,WAAW,MAAAC,mBAAA,CAAAF,OAAA,EAAOR,OAAO,CAACS,WAAW,IAAI,EAAE,CAAE;QAC7CE,YAAY,GAAAT,qBAAA,GAAEF,OAAO,CAACW,YAAY,cAAAT,qBAAA,cAAAA,qBAAA,GAAI,KAAK;QAC3CU,OAAO,MAAAF,mBAAA,CAAAF,OAAA,EAAOR,OAAO,CAACY,OAAO,IAAI,EAAE,CAAE;QACrCC,cAAc,MAAAH,mBAAA,CAAAF,OAAA,EAAOR,OAAO,CAACa,cAAc,IAAI,EAAE;MAAE,EACtD;MACDC,WAAW,EAAE;QACTC,KAAK,GAAAZ,qBAAA,IAAAC,mBAAA,GAAEN,MAAM,CAACgB,WAAW,cAAAV,mBAAA,uBAAlBA,mBAAA,CAAoBW,KAAK,cAAAZ,qBAAA,cAAAA,qBAAA,GAAI,QAAQ;QAC5Ca,MAAM,GAAAX,qBAAA,IAAAC,oBAAA,GAAER,MAAM,CAACgB,WAAW,cAAAR,oBAAA,uBAAlBA,oBAAA,CAAoBU,MAAM,cAAAX,qBAAA,cAAAA,qBAAA,GAAI;MAC1C;IACJ,CAAC;EAAA,CAAC,EACF,CAACP,MAAM,CACX,CAAC;AACL"}
|
|
@@ -29,4 +29,6 @@ var LeftSidebar = function LeftSidebar(_ref) {
|
|
|
29
29
|
enableCreate: true
|
|
30
30
|
}), children ? /*#__PURE__*/_react.default.createElement(Divider, null) : null, children);
|
|
31
31
|
};
|
|
32
|
-
exports.LeftSidebar = LeftSidebar;
|
|
32
|
+
exports.LeftSidebar = LeftSidebar;
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=LeftSidebar.js.map
|
|
@@ -33,4 +33,6 @@ var NavigateFolderProvider = function NavigateFolderProvider(_ref) {
|
|
|
33
33
|
navigateToListHome: navigateToListHome
|
|
34
34
|
}, children);
|
|
35
35
|
};
|
|
36
|
-
exports.NavigateFolderProvider = NavigateFolderProvider;
|
|
36
|
+
exports.NavigateFolderProvider = NavigateFolderProvider;
|
|
37
|
+
|
|
38
|
+
//# sourceMappingURL=NavigateFolderProvider.js.map
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { CallbackParams } from "@webiny/app-admin";
|
|
3
|
+
import { FileItem } from "@webiny/app-admin/types";
|
|
4
|
+
export interface BulkActionConfig {
|
|
5
|
+
name: string;
|
|
6
|
+
element: React.ReactElement;
|
|
7
|
+
}
|
|
8
|
+
export interface BulkActionProps {
|
|
9
|
+
name: string;
|
|
10
|
+
remove?: boolean;
|
|
11
|
+
before?: string;
|
|
12
|
+
after?: string;
|
|
13
|
+
element: React.ReactElement;
|
|
14
|
+
}
|
|
15
|
+
export declare const BaseBulkAction: React.FC<BulkActionProps>;
|
|
16
|
+
export declare const BulkAction: React.FC<BulkActionProps> & {
|
|
17
|
+
useButtons: () => import("@webiny/app-admin/components/Buttons/useButtons").ButtonsProviderContext;
|
|
18
|
+
useWorker: () => {
|
|
19
|
+
items: FileItem[];
|
|
20
|
+
process: (callback: (items: FileItem[]) => void) => void;
|
|
21
|
+
processInSeries: (callback: ({ item, allItems, report }: CallbackParams<FileItem>) => Promise<void>, chunkSize?: number) => Promise<void>;
|
|
22
|
+
resetItems: () => void;
|
|
23
|
+
results: import("@webiny/app-admin").Result[];
|
|
24
|
+
};
|
|
25
|
+
useDialog: () => import("@webiny/app-admin").UseDialogWithReportResponse;
|
|
26
|
+
};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.BulkAction = exports.BaseBulkAction = void 0;
|
|
9
|
+
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _appAdmin = require("@webiny/app-admin");
|
|
13
|
+
var _reactProperties = require("@webiny/react-properties");
|
|
14
|
+
var _FileManagerViewProvider = require("../../../FileManagerViewProvider");
|
|
15
|
+
var BaseBulkAction = function BaseBulkAction(_ref) {
|
|
16
|
+
var name = _ref.name,
|
|
17
|
+
_ref$after = _ref.after,
|
|
18
|
+
after = _ref$after === void 0 ? undefined : _ref$after,
|
|
19
|
+
_ref$before = _ref.before,
|
|
20
|
+
before = _ref$before === void 0 ? undefined : _ref$before,
|
|
21
|
+
_ref$remove = _ref.remove,
|
|
22
|
+
remove = _ref$remove === void 0 ? false : _ref$remove,
|
|
23
|
+
element = _ref.element;
|
|
24
|
+
var getId = (0, _reactProperties.useIdGenerator)("bulkAction");
|
|
25
|
+
var placeAfter = after !== undefined ? getId(after) : undefined;
|
|
26
|
+
var placeBefore = before !== undefined ? getId(before) : undefined;
|
|
27
|
+
return /*#__PURE__*/_react.default.createElement(_reactProperties.Property, {
|
|
28
|
+
id: "browser",
|
|
29
|
+
name: "browser"
|
|
30
|
+
}, /*#__PURE__*/_react.default.createElement(_reactProperties.Property, {
|
|
31
|
+
id: getId(name),
|
|
32
|
+
name: "bulkActions",
|
|
33
|
+
remove: remove,
|
|
34
|
+
array: true,
|
|
35
|
+
before: placeBefore,
|
|
36
|
+
after: placeAfter
|
|
37
|
+
}, /*#__PURE__*/_react.default.createElement(_reactProperties.Property, {
|
|
38
|
+
id: getId(name, "name"),
|
|
39
|
+
name: "name",
|
|
40
|
+
value: name
|
|
41
|
+
}), /*#__PURE__*/_react.default.createElement(_reactProperties.Property, {
|
|
42
|
+
id: getId(name, "element"),
|
|
43
|
+
name: "element",
|
|
44
|
+
value: element
|
|
45
|
+
})));
|
|
46
|
+
};
|
|
47
|
+
exports.BaseBulkAction = BaseBulkAction;
|
|
48
|
+
var useWorker = function useWorker() {
|
|
49
|
+
var _useFileManagerView = (0, _FileManagerViewProvider.useFileManagerView)(),
|
|
50
|
+
selected = _useFileManagerView.selected,
|
|
51
|
+
setSelected = _useFileManagerView.setSelected;
|
|
52
|
+
var _useRef = (0, _react.useRef)(new _appAdmin.Worker()),
|
|
53
|
+
worker = _useRef.current;
|
|
54
|
+
(0, _react.useEffect)(function () {
|
|
55
|
+
worker.items = selected;
|
|
56
|
+
}, [selected.length]);
|
|
57
|
+
|
|
58
|
+
// Reset selected items in both useFileManagerView and Worker
|
|
59
|
+
var resetItems = (0, _react.useCallback)(function () {
|
|
60
|
+
worker.items = [];
|
|
61
|
+
setSelected([]);
|
|
62
|
+
}, []);
|
|
63
|
+
return {
|
|
64
|
+
items: selected,
|
|
65
|
+
process: function process(callback) {
|
|
66
|
+
return worker.process(callback);
|
|
67
|
+
},
|
|
68
|
+
processInSeries: function () {
|
|
69
|
+
var _processInSeries = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(callback, chunkSize) {
|
|
70
|
+
return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
|
|
71
|
+
while (1) switch (_context.prev = _context.next) {
|
|
72
|
+
case 0:
|
|
73
|
+
return _context.abrupt("return", worker.processInSeries(callback, chunkSize));
|
|
74
|
+
case 1:
|
|
75
|
+
case "end":
|
|
76
|
+
return _context.stop();
|
|
77
|
+
}
|
|
78
|
+
}, _callee);
|
|
79
|
+
}));
|
|
80
|
+
function processInSeries(_x, _x2) {
|
|
81
|
+
return _processInSeries.apply(this, arguments);
|
|
82
|
+
}
|
|
83
|
+
return processInSeries;
|
|
84
|
+
}(),
|
|
85
|
+
resetItems: resetItems,
|
|
86
|
+
results: worker.results
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
var BulkAction = Object.assign(BaseBulkAction, {
|
|
90
|
+
useButtons: _appAdmin.useButtons,
|
|
91
|
+
useWorker: useWorker,
|
|
92
|
+
useDialog: _appAdmin.useDialogWithReport
|
|
93
|
+
});
|
|
94
|
+
exports.BulkAction = BulkAction;
|
|
95
|
+
|
|
96
|
+
//# sourceMappingURL=BulkAction.js.map
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/Browser/BulkAction.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_appAdmin","_reactProperties","_FileManagerViewProvider","BaseBulkAction","_ref","name","_ref$after","after","undefined","_ref$before","before","_ref$remove","remove","element","getId","useIdGenerator","placeAfter","placeBefore","default","createElement","Property","id","array","value","exports","useWorker","_useFileManagerView","useFileManagerView","selected","setSelected","_useRef","useRef","Worker","worker","current","useEffect","items","length","resetItems","useCallback","process","callback","processInSeries","_processInSeries","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","chunkSize","wrap","_callee$","_context","prev","next","abrupt","stop","_x","_x2","apply","arguments","results","BulkAction","Object","assign","useButtons","useDialog","useDialogWithReport"],"sources":["BulkAction.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef } from \"react\";\nimport { CallbackParams, useButtons, useDialogWithReport, Worker } from \"@webiny/app-admin\";\nimport { Property, useIdGenerator } from \"@webiny/react-properties\";\nimport { useFileManagerView } from \"~/modules/FileManagerRenderer/FileManagerViewProvider\";\nimport { FileItem } from \"@webiny/app-admin/types\";\n\nexport interface BulkActionConfig {\n name: string;\n element: React.ReactElement;\n}\n\nexport interface BulkActionProps {\n name: string;\n remove?: boolean;\n before?: string;\n after?: string;\n element: React.ReactElement;\n}\n\nexport const BaseBulkAction: React.FC<BulkActionProps> = ({\n name,\n after = undefined,\n before = undefined,\n remove = false,\n element\n}) => {\n const getId = useIdGenerator(\"bulkAction\");\n\n const placeAfter = after !== undefined ? getId(after) : undefined;\n const placeBefore = before !== undefined ? getId(before) : undefined;\n\n return (\n <Property id=\"browser\" name={\"browser\"}>\n <Property\n id={getId(name)}\n name={\"bulkActions\"}\n remove={remove}\n array={true}\n before={placeBefore}\n after={placeAfter}\n >\n <Property id={getId(name, \"name\")} name={\"name\"} value={name} />\n <Property id={getId(name, \"element\")} name={\"element\"} value={element} />\n </Property>\n </Property>\n );\n};\n\nconst useWorker = () => {\n const { selected, setSelected } = useFileManagerView();\n const { current: worker } = useRef(new Worker<FileItem>());\n\n useEffect(() => {\n worker.items = selected;\n }, [selected.length]);\n\n // Reset selected items in both useFileManagerView and Worker\n const resetItems = useCallback(() => {\n worker.items = [];\n setSelected([]);\n }, []);\n\n return {\n items: selected,\n process: (callback: (items: FileItem[]) => void) => worker.process(callback),\n processInSeries: async (\n callback: ({ item, allItems, report }: CallbackParams<FileItem>) => Promise<void>,\n chunkSize?: number\n ) => worker.processInSeries(callback, chunkSize),\n resetItems: resetItems,\n results: worker.results\n };\n};\n\nexport const BulkAction = Object.assign(BaseBulkAction, {\n useButtons,\n useWorker,\n useDialog: useDialogWithReport\n});\n"],"mappings":"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"}
|
|
@@ -1,12 +1,25 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { BulkActionConfig } from "./BulkAction";
|
|
2
3
|
import { FilterConfig } from "./Filter";
|
|
3
4
|
import { FiltersToWhereConverter } from "./FiltersToWhere";
|
|
4
5
|
export interface BrowserConfig {
|
|
6
|
+
bulkActions: BulkActionConfig[];
|
|
5
7
|
filters: FilterConfig[];
|
|
6
8
|
filtersToWhere: FiltersToWhereConverter[];
|
|
7
9
|
filterByTags: Boolean;
|
|
8
10
|
}
|
|
9
11
|
export declare const Browser: {
|
|
12
|
+
BulkAction: import("react").FC<import("./BulkAction").BulkActionProps> & {
|
|
13
|
+
useButtons: () => import("@webiny/app-admin/components/Buttons/useButtons").ButtonsProviderContext;
|
|
14
|
+
useWorker: () => {
|
|
15
|
+
items: import("@webiny/app-admin/types").FileItem[];
|
|
16
|
+
process: (callback: (items: import("@webiny/app-admin/types").FileItem[]) => void) => void;
|
|
17
|
+
processInSeries: (callback: ({ item, allItems, report }: import("@webiny/app-admin").CallbackParams<import("@webiny/app-admin/types").FileItem>) => Promise<void>, chunkSize?: number | undefined) => Promise<void>;
|
|
18
|
+
resetItems: () => void;
|
|
19
|
+
results: import("@webiny/app-admin").Result[];
|
|
20
|
+
};
|
|
21
|
+
useDialog: () => import("@webiny/app-admin").UseDialogWithReportResponse;
|
|
22
|
+
};
|
|
10
23
|
Filter: import("@webiny/react-composition").ComposableFC<import("./Filter").FilterProps> & {
|
|
11
24
|
createDecorator: (decorator: import("@webiny/react-composition").Decorator<import("./Filter").FilterProps>) => (props: {
|
|
12
25
|
name: string;
|
|
@@ -4,12 +4,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.Browser = void 0;
|
|
7
|
+
var _BulkAction = require("./BulkAction");
|
|
7
8
|
var _Filter = require("./Filter");
|
|
8
9
|
var _FiltersToWhere = require("./FiltersToWhere");
|
|
9
10
|
var _FilterByTags = require("./FilterByTags");
|
|
10
11
|
var Browser = {
|
|
12
|
+
BulkAction: _BulkAction.BulkAction,
|
|
11
13
|
Filter: _Filter.Filter,
|
|
12
14
|
FiltersToWhere: _FiltersToWhere.FiltersToWhere,
|
|
13
15
|
FilterByTags: _FilterByTags.FilterByTags
|
|
14
16
|
};
|
|
15
|
-
exports.Browser = Browser;
|
|
17
|
+
exports.Browser = Browser;
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_BulkAction","require","_Filter","_FiltersToWhere","_FilterByTags","Browser","BulkAction","Filter","FiltersToWhere","FilterByTags","exports"],"sources":["index.ts"],"sourcesContent":["import { BulkAction, BulkActionConfig } from \"./BulkAction\";\nimport { Filter, FilterConfig } from \"./Filter\";\nimport { FiltersToWhere, FiltersToWhereConverter } from \"./FiltersToWhere\";\nimport { FilterByTags } from \"./FilterByTags\";\n\nexport interface BrowserConfig {\n bulkActions: BulkActionConfig[];\n filters: FilterConfig[];\n filtersToWhere: FiltersToWhereConverter[];\n filterByTags: Boolean;\n}\n\nexport const Browser = {\n BulkAction,\n Filter,\n FiltersToWhere,\n FilterByTags\n};\n"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AASO,IAAMI,OAAO,GAAG;EACnBC,UAAU,EAAVA,sBAAU;EACVC,MAAM,EAANA,cAAM;EACNC,cAAc,EAAdA,8BAAc;EACdC,YAAY,EAAZA;AACJ,CAAC;AAACC,OAAA,CAAAL,OAAA,GAAAA,OAAA"}
|
package/modules/FileManagerRenderer/FileManagerView/configComponents/FileDetails/FieldDecorator.js
CHANGED
|
@@ -29,4 +29,6 @@ var createScopedFieldDecorator = function createScopedFieldDecorator() {
|
|
|
29
29
|
};
|
|
30
30
|
};
|
|
31
31
|
};
|
|
32
|
-
exports.createScopedFieldDecorator = createScopedFieldDecorator;
|
|
32
|
+
exports.createScopedFieldDecorator = createScopedFieldDecorator;
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=FieldDecorator.js.map
|
|
@@ -69,4 +69,6 @@ var FileManagerRenderer = (0, _appAdmin.createComponentPlugin)(_appAdmin.FileMan
|
|
|
69
69
|
}, /*#__PURE__*/_react.default.createElement(_NavigateFolderProvider.NavigateFolderProvider, null, /*#__PURE__*/_react.default.createElement(_appAco.DialogsProvider, null, /*#__PURE__*/_react.default.createElement(_FileManagerViewProvider.FileManagerViewProvider, viewProps, /*#__PURE__*/_react.default.createElement(_FileManagerViewConfig.FileManagerViewWithConfig, null, /*#__PURE__*/_react.default.createElement(_FileManagerView.default, null))))));
|
|
70
70
|
};
|
|
71
71
|
});
|
|
72
|
-
exports.FileManagerRenderer = FileManagerRenderer;
|
|
72
|
+
exports.FileManagerRenderer = FileManagerRenderer;
|
|
73
|
+
|
|
74
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -37,4 +37,6 @@ var outputFileSelectionError = function outputFileSelectionError(errors) {
|
|
|
37
37
|
return null;
|
|
38
38
|
}
|
|
39
39
|
};
|
|
40
|
-
exports.outputFileSelectionError = outputFileSelectionError;
|
|
40
|
+
exports.outputFileSelectionError = outputFileSelectionError;
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=outputFileSelectionError.js.map
|
|
@@ -18,7 +18,7 @@ export interface FileManagerViewContext<TFileItem extends FileItem = FileItem> e
|
|
|
18
18
|
hideFilters: () => void;
|
|
19
19
|
isListLoading: boolean;
|
|
20
20
|
isListLoadingMore: boolean;
|
|
21
|
-
|
|
21
|
+
hasOnSelectCallback: boolean;
|
|
22
22
|
listTitle: string;
|
|
23
23
|
loadMoreFiles: () => void;
|
|
24
24
|
meta: ListMeta | undefined;
|
|
@@ -47,6 +47,7 @@ export interface FileManagerViewContext<TFileItem extends FileItem = FileItem> e
|
|
|
47
47
|
loading: boolean;
|
|
48
48
|
};
|
|
49
49
|
toggleSelected: (file: TFileItem) => void;
|
|
50
|
+
deselectAll: () => void;
|
|
50
51
|
updateFile: (id: string, data: Partial<TFileItem>) => Promise<void>;
|
|
51
52
|
uploadFile: (file: File, options?: UploadFileOptions) => Promise<TFileItem | undefined>;
|
|
52
53
|
}
|