@blaze-cms/plugin-media-ui 0.124.0 → 0.125.0-admin-updates.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/lib/components/CardMedia/CardMedia.js.map +1 -1
  3. package/lib/components/EditMediaFile/EditMediaFile.js.map +1 -1
  4. package/lib/components/EditMediaFile/EditMediaFilePage.js.map +1 -1
  5. package/lib/components/EditorAdapter/EditorAdapter.js.map +1 -1
  6. package/lib/components/FileList/FilesListContext/index.js.map +1 -1
  7. package/lib/components/FileList/FilesListProvider/index.js.map +1 -1
  8. package/lib/components/FileList/useFileList/index.js.map +1 -1
  9. package/lib/components/FileList/useGetFiles/getFiles.js.map +1 -1
  10. package/lib/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
  11. package/lib/components/FileList/useGetFilesList/getCounters.js.map +1 -1
  12. package/lib/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
  13. package/lib/components/FilePreview/Actions/index.js.map +1 -1
  14. package/lib/components/FilePreview/Image/Image.js.map +1 -1
  15. package/lib/components/FilePreview/Image/RawImage.js.map +1 -1
  16. package/lib/components/FilePreview/PDF/PDF.js.map +1 -1
  17. package/lib/components/FilePreview/PDF/RawPDF.js.map +1 -1
  18. package/lib/components/FilePreview/index.js.map +1 -1
  19. package/lib/components/FileUploadAdapter/FileList.js.map +1 -1
  20. package/lib/components/FileUploadAdapter/FilePreviewList.js.map +1 -1
  21. package/lib/components/FileUploadAdapter/FileReorderList.js.map +1 -1
  22. package/lib/components/FileUploadAdapter/FileReorderListItem.js.map +1 -1
  23. package/lib/components/FileUploadAdapter/FileUploadAdapter.js +2 -4
  24. package/lib/components/FileUploadAdapter/FileUploadAdapter.js.map +1 -1
  25. package/lib/components/FileUploadAdapter/useLimit.js.map +1 -1
  26. package/lib/components/FileUploadModal/FileUploadModal.js.map +1 -1
  27. package/lib/components/FilterPanel/FilterPanel.js.map +1 -1
  28. package/lib/components/ListingContainer/Listing/Listing.js.map +1 -1
  29. package/lib/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js.map +1 -1
  30. package/lib/components/ListingContainer/Listing/MediaListing/MediaListing.js.map +1 -1
  31. package/lib/components/ListingContainer/ListingContainer.js.map +1 -1
  32. package/lib/index.js.map +1 -1
  33. package/lib/utils/media-context/media-context.js.map +1 -1
  34. package/lib/utils/media-context/useMediaContext.js.map +1 -1
  35. package/lib-es/components/FileUploadAdapter/FileUploadAdapter.js +1 -2
  36. package/lib-es/components/FileUploadAdapter/FileUploadAdapter.js.map +1 -1
  37. package/package.json +5 -5
  38. package/src/components/FileUploadAdapter/FileUploadAdapter.js +1 -2
package/CHANGELOG.md CHANGED
@@ -3,6 +3,23 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.125.0-admin-updates.0](https://github.com/thebyte9/blaze/compare/v0.124.1...v0.125.0-admin-updates.0) (2022-10-05)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * update tests ([8fd2675](https://github.com/thebyte9/blaze/commit/8fd2675624126e5a23ecc0af3202d08c46667441))
12
+
13
+
14
+ ### Features
15
+
16
+ * add updated snapshots ([a0444bd](https://github.com/thebyte9/blaze/commit/a0444bd0d4e2f78753ac069067d39f3f6e741832))
17
+ * delete duplicated code ([6fc900c](https://github.com/thebyte9/blaze/commit/6fc900c4e3a57664c0972c6ed739345e5d93af0b))
18
+
19
+
20
+
21
+
22
+
6
23
  # [0.124.0](https://github.com/thebyte9/blaze/compare/v0.124.0-alpha.43...v0.124.0) (2022-08-08)
7
24
 
8
25
  **Note:** Version bump only for package @blaze-cms/plugin-media-ui
@@ -1 +1 @@
1
- {"version":3,"file":"CardMedia.js","names":["CardMedia","onSelected","name","url","mimetype","id","selected","displayLayout","data","modalTargetRef","updateFile","removeFile","index","displayDeleteModal","setDisplayDeleteModal","displayEditModal","setDisplayEditModal","enableSaveButton","setEnableSaveButton","fileData","setFileData","addToast","deleteFile","split","type","extension","client","deleteFileById","variables","input","appearance","autoDismiss","message","handleClick","cardMediaClassNames","handleCloseModal","handleSaveButtonStatus","state","modalActions","textButton","callback","modifiers","handleFormSave","handleFileChange","file","mutate","mutation","update","cache","fileUpdated","writeQuery","query","result","updatedFile","console","error","current","event","preventDefault","stopPropagation","propTypes","PropTypes","string","isRequired","object","func","bool","number","defaultProps"],"sources":["../../../src/components/CardMedia/CardMedia.js"],"sourcesContent":["import React, { useState } from 'react';\nimport More from '@blaze-react/more';\nimport Button from '@blaze-react/button';\nimport { DeleteAction } from '@blaze-cms/admin';\nimport PropTypes from 'prop-types';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useMutation, useApolloClient } from '@apollo/client';\nimport classnames from 'classnames';\nimport { useToasts } from '@blaze-react/toaster';\nimport Modal from '@blaze-react/modal';\nimport { createPortal } from 'react-dom';\nimport { Link } from 'react-router-dom';\nimport EditMediaFile from '../EditMediaFile';\n\nconst CardMedia = ({\n onSelected,\n name,\n url,\n mimetype,\n id,\n selected,\n displayLayout,\n data,\n modalTargetRef,\n updateFile,\n removeFile,\n index\n}) => {\n const [displayDeleteModal, setDisplayDeleteModal] = useState(false);\n const [displayEditModal, setDisplayEditModal] = useState(false);\n const [enableSaveButton, setEnableSaveButton] = useState(false);\n const [fileData, setFileData] = useState(null);\n const { addToast } = useToasts();\n const [deleteFile] = useMutation(getMutation('DELETE_FILE_BY_ID'));\n const [type, extension] = mimetype.split('/');\n const client = useApolloClient();\n\n const deleteFileById = async () => {\n setDisplayDeleteModal(false);\n try {\n await deleteFile({\n variables: { input: { id } }\n });\n\n removeFile({\n index\n });\n\n addToast(`File: ${name} has been deleted`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (error) {\n addToast(error.message, {\n appearance: 'error',\n autoDismiss: true\n });\n }\n };\n\n const handleClick = () => {\n onSelected({ id, url, name, data });\n };\n\n const cardMediaClassNames = classnames('card card--media-list', {\n 'card--media-list--selected': selected,\n [`card--media-${displayLayout}`]: displayLayout\n });\n\n const handleCloseModal = () => {\n setDisplayEditModal(false);\n };\n\n const handleSaveButtonStatus = state => {\n setEnableSaveButton(state);\n };\n\n const modalActions = [\n {\n textButton: 'Cancel',\n callback: handleCloseModal,\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: () => handleFormSave(),\n modifiers: enableSaveButton ? [] : ['disabled']\n }\n ];\n\n const handleFileChange = file => {\n setFileData(file);\n };\n\n const handleFormSave = async () => {\n try {\n const {\n data: { updateFile: updatedFile }\n } = await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: { input: fileData },\n update(\n cache,\n {\n data: { updateFile: fileUpdated }\n }\n ) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n updateFile({ file: updatedFile.result, index });\n addToast(`File: ${fileData.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (e) {\n addToast(`File: ${fileData.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n handleCloseModal();\n setEnableSaveButton(false);\n };\n\n return (\n <>\n {displayEditModal &&\n createPortal(\n <Modal title=\"Edit\" actions={modalActions} onClose={handleCloseModal}>\n <EditMediaFile\n onChange={handleFileChange}\n fileId={id}\n handleSaveButtonStatus={handleSaveButtonStatus}\n handleFormSave={handleFormSave}\n enableSaveButton={enableSaveButton}\n />\n </Modal>,\n modalTargetRef.current\n )}\n <div className={cardMediaClassNames} role=\"button\" onClick={handleClick}>\n {displayDeleteModal &&\n createPortal(\n <DeleteAction\n onClose={() => setDisplayDeleteModal(false)}\n deleteAction={() => deleteFileById()}\n itemName={name}\n />,\n modalTargetRef.current\n )}\n\n {type === 'image' ? (\n <div className={`card__image card__image--media-${displayLayout}`}>\n <img src={url} alt={name} />\n </div>\n ) : (\n <div className=\"card__image card__image--media-list-document\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"100\" viewBox=\"0 0 8 8\">\n <path d=\"M0 0v8h7v-4h-4v-4h-3zm4 0v3h3l-3-3zm-3 2h1v1h-1v-1zm0 2h1v1h-1v-1zm0 2h4v1h-4v-1z\" />\n </svg>\n </div>\n )}\n\n <footer className={`card__footer card__footer--media-${displayLayout}`}>\n <div className={`card__details card__details--media-${displayLayout}`}>\n <div className={`card__title card__title--media-${displayLayout}`}>\n <h2>{name}</h2>\n </div>\n <p>\n <span>format: {extension}</span>\n </p>\n </div>\n <div className={`card__menu card__menu--${displayLayout}`}>\n <div className=\"more-menu__wrapper more-menu__wrapper--card\">\n <More displayBg>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu>\n <Link to={`/media/edit/${id}`} className=\"more-menu__link\">\n Edit\n </Link>\n <Button\n onClick={event => {\n event.preventDefault();\n event.stopPropagation();\n setDisplayDeleteModal(true);\n }}\n className=\"more-menu__link\">\n Delete\n </Button>\n </More.Content>\n </More>\n </div>\n </div>\n </footer>\n </div>\n </>\n );\n};\n\nCardMedia.propTypes = {\n name: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n mimetype: PropTypes.string.isRequired,\n displayLayout: PropTypes.string.isRequired,\n data: PropTypes.object,\n onSelected: PropTypes.func,\n updateFile: PropTypes.func.isRequired,\n removeFile: PropTypes.func.isRequired,\n selected: PropTypes.bool,\n modalTargetRef: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired\n};\n\nCardMedia.defaultProps = {\n onSelected: () => {},\n selected: false,\n data: {}\n};\n\nexport default CardMedia;\n"],"mappings":"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"}
1
+ {"version":3,"file":"CardMedia.js","names":["CardMedia","onSelected","name","url","mimetype","id","selected","displayLayout","data","modalTargetRef","updateFile","removeFile","index","useState","displayDeleteModal","setDisplayDeleteModal","displayEditModal","setDisplayEditModal","enableSaveButton","setEnableSaveButton","fileData","setFileData","useToasts","addToast","useMutation","getMutation","deleteFile","split","type","extension","client","useApolloClient","deleteFileById","variables","input","appearance","autoDismiss","message","handleClick","cardMediaClassNames","classnames","handleCloseModal","handleSaveButtonStatus","state","modalActions","textButton","callback","modifiers","handleFormSave","handleFileChange","file","mutate","mutation","update","cache","fileUpdated","writeQuery","query","getQuery","result","updatedFile","console","error","createPortal","current","event","preventDefault","stopPropagation","propTypes","PropTypes","string","isRequired","object","func","bool","number","defaultProps"],"sources":["../../../src/components/CardMedia/CardMedia.js"],"sourcesContent":["import React, { useState } from 'react';\nimport More from '@blaze-react/more';\nimport Button from '@blaze-react/button';\nimport { DeleteAction } from '@blaze-cms/admin';\nimport PropTypes from 'prop-types';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useMutation, useApolloClient } from '@apollo/client';\nimport classnames from 'classnames';\nimport { useToasts } from '@blaze-react/toaster';\nimport Modal from '@blaze-react/modal';\nimport { createPortal } from 'react-dom';\nimport { Link } from 'react-router-dom';\nimport EditMediaFile from '../EditMediaFile';\n\nconst CardMedia = ({\n onSelected,\n name,\n url,\n mimetype,\n id,\n selected,\n displayLayout,\n data,\n modalTargetRef,\n updateFile,\n removeFile,\n index\n}) => {\n const [displayDeleteModal, setDisplayDeleteModal] = useState(false);\n const [displayEditModal, setDisplayEditModal] = useState(false);\n const [enableSaveButton, setEnableSaveButton] = useState(false);\n const [fileData, setFileData] = useState(null);\n const { addToast } = useToasts();\n const [deleteFile] = useMutation(getMutation('DELETE_FILE_BY_ID'));\n const [type, extension] = mimetype.split('/');\n const client = useApolloClient();\n\n const deleteFileById = async () => {\n setDisplayDeleteModal(false);\n try {\n await deleteFile({\n variables: { input: { id } }\n });\n\n removeFile({\n index\n });\n\n addToast(`File: ${name} has been deleted`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (error) {\n addToast(error.message, {\n appearance: 'error',\n autoDismiss: true\n });\n }\n };\n\n const handleClick = () => {\n onSelected({ id, url, name, data });\n };\n\n const cardMediaClassNames = classnames('card card--media-list', {\n 'card--media-list--selected': selected,\n [`card--media-${displayLayout}`]: displayLayout\n });\n\n const handleCloseModal = () => {\n setDisplayEditModal(false);\n };\n\n const handleSaveButtonStatus = state => {\n setEnableSaveButton(state);\n };\n\n const modalActions = [\n {\n textButton: 'Cancel',\n callback: handleCloseModal,\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: () => handleFormSave(),\n modifiers: enableSaveButton ? [] : ['disabled']\n }\n ];\n\n const handleFileChange = file => {\n setFileData(file);\n };\n\n const handleFormSave = async () => {\n try {\n const {\n data: { updateFile: updatedFile }\n } = await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: { input: fileData },\n update(\n cache,\n {\n data: { updateFile: fileUpdated }\n }\n ) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n updateFile({ file: updatedFile.result, index });\n addToast(`File: ${fileData.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (e) {\n addToast(`File: ${fileData.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n handleCloseModal();\n setEnableSaveButton(false);\n };\n\n return (\n <>\n {displayEditModal &&\n createPortal(\n <Modal title=\"Edit\" actions={modalActions} onClose={handleCloseModal}>\n <EditMediaFile\n onChange={handleFileChange}\n fileId={id}\n handleSaveButtonStatus={handleSaveButtonStatus}\n handleFormSave={handleFormSave}\n enableSaveButton={enableSaveButton}\n />\n </Modal>,\n modalTargetRef.current\n )}\n <div className={cardMediaClassNames} role=\"button\" onClick={handleClick}>\n {displayDeleteModal &&\n createPortal(\n <DeleteAction\n onClose={() => setDisplayDeleteModal(false)}\n deleteAction={() => deleteFileById()}\n itemName={name}\n />,\n modalTargetRef.current\n )}\n\n {type === 'image' ? (\n <div className={`card__image card__image--media-${displayLayout}`}>\n <img src={url} alt={name} />\n </div>\n ) : (\n <div className=\"card__image card__image--media-list-document\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"100\" viewBox=\"0 0 8 8\">\n <path d=\"M0 0v8h7v-4h-4v-4h-3zm4 0v3h3l-3-3zm-3 2h1v1h-1v-1zm0 2h1v1h-1v-1zm0 2h4v1h-4v-1z\" />\n </svg>\n </div>\n )}\n\n <footer className={`card__footer card__footer--media-${displayLayout}`}>\n <div className={`card__details card__details--media-${displayLayout}`}>\n <div className={`card__title card__title--media-${displayLayout}`}>\n <h2>{name}</h2>\n </div>\n <p>\n <span>format: {extension}</span>\n </p>\n </div>\n <div className={`card__menu card__menu--${displayLayout}`}>\n <div className=\"more-menu__wrapper more-menu__wrapper--card\">\n <More displayBg>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu>\n <Link to={`/media/edit/${id}`} className=\"more-menu__link\">\n Edit\n </Link>\n <Button\n onClick={event => {\n event.preventDefault();\n event.stopPropagation();\n setDisplayDeleteModal(true);\n }}\n className=\"more-menu__link\">\n Delete\n </Button>\n </More.Content>\n </More>\n </div>\n </div>\n </footer>\n </div>\n </>\n );\n};\n\nCardMedia.propTypes = {\n name: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n mimetype: PropTypes.string.isRequired,\n displayLayout: PropTypes.string.isRequired,\n data: PropTypes.object,\n onSelected: PropTypes.func,\n updateFile: PropTypes.func.isRequired,\n removeFile: PropTypes.func.isRequired,\n selected: PropTypes.bool,\n modalTargetRef: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired\n};\n\nCardMedia.defaultProps = {\n onSelected: () => {},\n selected: false,\n data: {}\n};\n\nexport default CardMedia;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EditMediaFile.js","names":["EditMediaFile","onChange","handleSaveButtonStatus","enableSaveButton","fileId","formValues","setFormValues","query","variables","id","loading","data","file","fileStoresType","visibleInAdmin","getFileStores","storeType","handleFormChange","isValid","isNewValueSet","valuesChecked","valuesCheckedWithoutName","filter","NAME","STORE_KEY","dataValues","reduce","acc","value","find","newFileName","storeKey","shouldEnableSaveButton","updatedFile","name","getFileWithStoreType","storeOptions","map","type","key","defaultStore","isDefault","store","fileWithStoreType","propTypes","PropTypes","string","isRequired","func","bool","defaultProps"],"sources":["../../../src/components/EditMediaFile/EditMediaFile.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { useQuery } from '@apollo/client';\nimport FilePreview from '../FilePreview';\nimport { STORE_KEY, NAME } from '../../constants';\n\nconst EditMediaFile = ({ onChange, handleSaveButtonStatus, enableSaveButton, fileId }) => {\n const [formValues, setFormValues] = useState(null);\n const query = getQuery('GET_FILE_BY_ID');\n const { loading, data: { file } = {} } = useQuery(query, {\n variables: { id: fileId }\n });\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { data: { getFileStores: storeType = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n\n useEffect(\n () => {\n if (!formValues && file) {\n setFormValues(file);\n }\n },\n [file, formValues, storeType]\n );\n\n const handleFormChange = ({ isValid, isNewValueSet, valuesChecked }) => {\n const valuesCheckedWithoutName = valuesChecked.filter(({ id }) => {\n if (id === NAME || id === STORE_KEY) return false;\n return true;\n });\n\n const dataValues = valuesCheckedWithoutName.reduce((acc, { id, value }) => {\n acc[id] = value;\n return acc;\n }, {});\n const { value: newFileName } = valuesChecked.find(({ id }) => id === NAME) || {};\n const { value: storeKey } = valuesChecked.find(({ id }) => id === STORE_KEY) || {};\n\n const shouldEnableSaveButton = isNewValueSet && isValid;\n handleSaveButtonStatus(false);\n\n if (shouldEnableSaveButton && shouldEnableSaveButton !== enableSaveButton) {\n handleSaveButtonStatus(shouldEnableSaveButton);\n }\n\n const updatedFile = {\n id: file.id,\n name: newFileName,\n storeKey,\n data: dataValues\n };\n setFormValues(updatedFile);\n onChange(updatedFile);\n };\n\n const getFileWithStoreType = () => {\n if (storeType) {\n const storeOptions = storeType.map(type => [type.key, type.name]);\n const defaultStore = storeType.find(type => type.isDefault) || null;\n return { ...file, store: { defaultStore, storeOptions } };\n }\n\n return file;\n };\n\n const fileWithStoreType = getFileWithStoreType();\n\n return (\n <>\n {!loading ? (\n <>\n {file ? (\n <FilePreview file={fileWithStoreType} handleFormChange={handleFormChange} displayForm />\n ) : null}\n </>\n ) : (\n <div>loading...</div>\n )}\n </>\n );\n};\n\nEditMediaFile.propTypes = {\n fileId: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n handleSaveButtonStatus: PropTypes.func.isRequired,\n enableSaveButton: PropTypes.bool\n};\n\nEditMediaFile.defaultProps = {\n enableSaveButton: false\n};\n\nexport default EditMediaFile;\n"],"mappings":"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"}
1
+ {"version":3,"file":"EditMediaFile.js","names":["EditMediaFile","onChange","handleSaveButtonStatus","enableSaveButton","fileId","useState","formValues","setFormValues","query","getQuery","useQuery","variables","id","loading","data","file","fileStoresType","visibleInAdmin","getFileStores","storeType","useEffect","handleFormChange","isValid","isNewValueSet","valuesChecked","valuesCheckedWithoutName","filter","NAME","STORE_KEY","dataValues","reduce","acc","value","find","newFileName","storeKey","shouldEnableSaveButton","updatedFile","name","getFileWithStoreType","storeOptions","map","type","key","defaultStore","isDefault","store","fileWithStoreType","propTypes","PropTypes","string","isRequired","func","bool","defaultProps"],"sources":["../../../src/components/EditMediaFile/EditMediaFile.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { useQuery } from '@apollo/client';\nimport FilePreview from '../FilePreview';\nimport { STORE_KEY, NAME } from '../../constants';\n\nconst EditMediaFile = ({ onChange, handleSaveButtonStatus, enableSaveButton, fileId }) => {\n const [formValues, setFormValues] = useState(null);\n const query = getQuery('GET_FILE_BY_ID');\n const { loading, data: { file } = {} } = useQuery(query, {\n variables: { id: fileId }\n });\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { data: { getFileStores: storeType = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n\n useEffect(\n () => {\n if (!formValues && file) {\n setFormValues(file);\n }\n },\n [file, formValues, storeType]\n );\n\n const handleFormChange = ({ isValid, isNewValueSet, valuesChecked }) => {\n const valuesCheckedWithoutName = valuesChecked.filter(({ id }) => {\n if (id === NAME || id === STORE_KEY) return false;\n return true;\n });\n\n const dataValues = valuesCheckedWithoutName.reduce((acc, { id, value }) => {\n acc[id] = value;\n return acc;\n }, {});\n const { value: newFileName } = valuesChecked.find(({ id }) => id === NAME) || {};\n const { value: storeKey } = valuesChecked.find(({ id }) => id === STORE_KEY) || {};\n\n const shouldEnableSaveButton = isNewValueSet && isValid;\n handleSaveButtonStatus(false);\n\n if (shouldEnableSaveButton && shouldEnableSaveButton !== enableSaveButton) {\n handleSaveButtonStatus(shouldEnableSaveButton);\n }\n\n const updatedFile = {\n id: file.id,\n name: newFileName,\n storeKey,\n data: dataValues\n };\n setFormValues(updatedFile);\n onChange(updatedFile);\n };\n\n const getFileWithStoreType = () => {\n if (storeType) {\n const storeOptions = storeType.map(type => [type.key, type.name]);\n const defaultStore = storeType.find(type => type.isDefault) || null;\n return { ...file, store: { defaultStore, storeOptions } };\n }\n\n return file;\n };\n\n const fileWithStoreType = getFileWithStoreType();\n\n return (\n <>\n {!loading ? (\n <>\n {file ? (\n <FilePreview file={fileWithStoreType} handleFormChange={handleFormChange} displayForm />\n ) : null}\n </>\n ) : (\n <div>loading...</div>\n )}\n </>\n );\n};\n\nEditMediaFile.propTypes = {\n fileId: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n handleSaveButtonStatus: PropTypes.func.isRequired,\n enableSaveButton: PropTypes.bool\n};\n\nEditMediaFile.defaultProps = {\n enableSaveButton: false\n};\n\nexport default EditMediaFile;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EditMediaFilePage.js","names":["EditMediaFilePage","match","history","shouldEnableSaveButton","setShouldEnableSaveButton","file","setFile","client","addToast","handleFileChange","values","handleSaveButtonStatus","value","handleFormSave","mutate","mutation","variables","input","update","cache","fileUpdated","data","updateFile","writeQuery","query","id","params","fileId","result","name","appearance","autoDismiss","console","error","pushBack","push","buttonModifiers","propTypes","PropTypes","object","isRequired"],"sources":["../../../src/components/EditMediaFile/EditMediaFilePage.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { withRouter } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useToasts } from '@blaze-react/toaster';\nimport EditMediaFile from './EditMediaFile';\n\nconst EditMediaFilePage = ({ match, history }) => {\n const [shouldEnableSaveButton, setShouldEnableSaveButton] = useState(false);\n const [file, setFile] = useState(null);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const handleFileChange = values => setFile(values);\n\n const handleSaveButtonStatus = value => {\n setShouldEnableSaveButton(value);\n };\n\n const handleFormSave = async () => {\n try {\n await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: { input: file },\n update(\n cache,\n {\n data: { updateFile: fileUpdated }\n }\n ) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id: match.params.fileId },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n addToast(`File: ${file.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (e) {\n addToast(`File: ${file.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n setShouldEnableSaveButton(false);\n };\n\n const pushBack = () => history.push('/media');\n\n const buttonModifiers = shouldEnableSaveButton ? [] : ['disabled'];\n\n return (\n <div className=\"page\">\n <div className=\"page__content\">\n <div className=\"page__content__mediaWrapper\">\n <EditMediaFile\n onChange={handleFileChange}\n fileId={match.params.fileId}\n handleSaveButtonStatus={handleSaveButtonStatus}\n handleFormSave={handleFormSave}\n />\n <div className=\"page__content__mediaWrapperActions\">\n <Button onClick={pushBack}>Cancel</Button>\n <Button onClick={handleFormSave} modifiers={buttonModifiers}>\n Save\n </Button>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nEditMediaFilePage.propTypes = {\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(EditMediaFilePage);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,OAAwB;EAAA,IAArBC,KAAqB,QAArBA,KAAqB;EAAA,IAAdC,OAAc,QAAdA,OAAc;;EAChD,gBAA4D,qBAAS,KAAT,CAA5D;EAAA;EAAA,IAAOC,sBAAP;EAAA,IAA+BC,yBAA/B;;EACA,iBAAwB,qBAAS,IAAT,CAAxB;EAAA;EAAA,IAAOC,IAAP;EAAA,IAAaC,OAAb;;EACA,IAAMC,MAAM,GAAG,8BAAf;;EACA,iBAAqB,yBAArB;EAAA,IAAQC,QAAR,cAAQA,QAAR;;EAEA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAAC,MAAM;IAAA,OAAIJ,OAAO,CAACI,MAAD,CAAX;EAAA,CAA/B;;EAEA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAAAC,KAAK,EAAI;IACtCR,yBAAyB,CAACQ,KAAD,CAAzB;EACD,CAFD;;EAIA,IAAMC,cAAc;IAAA,0FAAG;MAAA;QAAA;UAAA;YAAA;cAAA;cAAA;cAAA,OAEbN,MAAM,CAACO,MAAP,CAAc;gBAClBC,QAAQ,EAAE,+BAAY,aAAZ,CADQ;gBAElBC,SAAS,EAAE;kBAAEC,KAAK,EAAEZ;gBAAT,CAFO;gBAGlBa,MAHkB,kBAIhBC,KAJgB,SAQhB;kBAAA,IAFsBC,WAEtB,SAFEC,IAEF,CAFUC,UAEV;kBACAH,KAAK,CAACI,UAAN,CAAiB;oBACfC,KAAK,EAAE,4BAAS,gBAAT,CADQ;oBAEfR,SAAS,EAAE;sBAAES,EAAE,EAAExB,KAAK,CAACyB,MAAN,CAAaC;oBAAnB,CAFI;oBAGfN,IAAI,EAAE;sBAAEhB,IAAI,EAAEe,WAAW,CAACQ;oBAApB;kBAHS,CAAjB;gBAKD;cAdiB,CAAd,CAFa;;YAAA;cAmBnBpB,QAAQ,iBAAUH,IAAI,CAACwB,IAAf,wBAAwC;gBAC9CC,UAAU,EAAE,SADkC;gBAE9CC,WAAW,EAAE;cAFiC,CAAxC,CAAR;cAnBmB;cAAA;;YAAA;cAAA;cAAA;cAwBnBvB,QAAQ,iBAAUH,IAAI,CAACwB,IAAf,4BAA4C;gBAClDC,UAAU,EAAE,OADsC;gBAElDC,WAAW,EAAE;cAFqC,CAA5C,CAAR;cAIAC,OAAO,CAACC,KAAR,cA5BmB,CA4BD;;YA5BC;cA8BrB7B,yBAAyB,CAAC,KAAD,CAAzB;;YA9BqB;YAAA;cAAA;UAAA;QAAA;MAAA;IAAA,CAAH;;IAAA,gBAAdS,cAAc;MAAA;IAAA;EAAA,GAApB;;EAiCA,IAAMqB,QAAQ,GAAG,SAAXA,QAAW;IAAA,OAAMhC,OAAO,CAACiC,IAAR,CAAa,QAAb,CAAN;EAAA,CAAjB;;EAEA,IAAMC,eAAe,GAAGjC,sBAAsB,GAAG,EAAH,GAAQ,CAAC,UAAD,CAAtD;EAEA,oBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,yBAAD;IACE,QAAQ,EAAEM,gBADZ;IAEE,MAAM,EAAER,KAAK,CAACyB,MAAN,CAAaC,MAFvB;IAGE,sBAAsB,EAAEhB,sBAH1B;IAIE,cAAc,EAAEE;EAJlB,EADF,eAOE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,kBAAD;IAAQ,OAAO,EAAEqB;EAAjB,YADF,eAEE,gCAAC,kBAAD;IAAQ,OAAO,EAAErB,cAAjB;IAAiC,SAAS,EAAEuB;EAA5C,UAFF,CAPF,CADF,CADF,CADF;AAoBD,CArED;;AAuEApC,iBAAiB,CAACqC,SAAlB,GAA8B;EAC5BpC,KAAK,EAAEqC,sBAAUC,MAAV,CAAiBC,UADI;EAE5BtC,OAAO,EAAEoC,sBAAUC,MAAV,CAAiBC;AAFE,CAA9B;;eAKe,gCAAWxC,iBAAX,C"}
1
+ {"version":3,"file":"EditMediaFilePage.js","names":["EditMediaFilePage","match","history","useState","shouldEnableSaveButton","setShouldEnableSaveButton","file","setFile","client","useApolloClient","useToasts","addToast","handleFileChange","values","handleSaveButtonStatus","value","handleFormSave","mutate","mutation","getMutation","variables","input","update","cache","fileUpdated","data","updateFile","writeQuery","query","getQuery","id","params","fileId","result","name","appearance","autoDismiss","console","error","pushBack","push","buttonModifiers","propTypes","PropTypes","object","isRequired","withRouter"],"sources":["../../../src/components/EditMediaFile/EditMediaFilePage.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { withRouter } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useToasts } from '@blaze-react/toaster';\nimport EditMediaFile from './EditMediaFile';\n\nconst EditMediaFilePage = ({ match, history }) => {\n const [shouldEnableSaveButton, setShouldEnableSaveButton] = useState(false);\n const [file, setFile] = useState(null);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const handleFileChange = values => setFile(values);\n\n const handleSaveButtonStatus = value => {\n setShouldEnableSaveButton(value);\n };\n\n const handleFormSave = async () => {\n try {\n await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: { input: file },\n update(\n cache,\n {\n data: { updateFile: fileUpdated }\n }\n ) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id: match.params.fileId },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n addToast(`File: ${file.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (e) {\n addToast(`File: ${file.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n setShouldEnableSaveButton(false);\n };\n\n const pushBack = () => history.push('/media');\n\n const buttonModifiers = shouldEnableSaveButton ? [] : ['disabled'];\n\n return (\n <div className=\"page\">\n <div className=\"page__content\">\n <div className=\"page__content__mediaWrapper\">\n <EditMediaFile\n onChange={handleFileChange}\n fileId={match.params.fileId}\n handleSaveButtonStatus={handleSaveButtonStatus}\n handleFormSave={handleFormSave}\n />\n <div className=\"page__content__mediaWrapperActions\">\n <Button onClick={pushBack}>Cancel</Button>\n <Button onClick={handleFormSave} modifiers={buttonModifiers}>\n Save\n </Button>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nEditMediaFilePage.propTypes = {\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(EditMediaFilePage);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EditorAdapter.js","names":["DraftEditorAdapter","id","value","onChange","error","validationMessage","label","props","propTypes","PropTypes","string","isRequired","func","bool","defaultProps","undefined"],"sources":["../../../src/components/EditorAdapter/EditorAdapter.js"],"sourcesContent":["import React from 'react';\nimport DraftEditor from '@blaze-react/drafteditor';\nimport PropTypes from 'prop-types';\n\nconst DraftEditorAdapter = ({ id, value, onChange, error, validationMessage, label, ...props }) => (\n <div className=\"form-field form-field--full-width\">\n <label>{label}</label>\n <DraftEditor\n name={id}\n value={value}\n onChange={onChange}\n error={error}\n validationMessage={validationMessage}\n />\n </div>\n);\n\nDraftEditorAdapter.propTypes = {\n id: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n error: PropTypes.bool,\n validationMessage: PropTypes.string,\n label: PropTypes.string.isRequired\n};\n\nDraftEditorAdapter.defaultProps = {\n error: false,\n validationMessage: undefined\n};\n\nexport default DraftEditorAdapter;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;AAEA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB;EAAA,IAAGC,EAAH,QAAGA,EAAH;EAAA,IAAOC,KAAP,QAAOA,KAAP;EAAA,IAAcC,QAAd,QAAcA,QAAd;EAAA,IAAwBC,KAAxB,QAAwBA,KAAxB;EAAA,IAA+BC,iBAA/B,QAA+BA,iBAA/B;EAAA,IAAkDC,KAAlD,QAAkDA,KAAlD;EAAA,IAA4DC,KAA5D;EAAA,oBACzB;IAAK,SAAS,EAAC;EAAf,gBACE,+CAAQD,KAAR,CADF,eAEE,gCAAC,uBAAD;IACE,IAAI,EAAEL,EADR;IAEE,KAAK,EAAEC,KAFT;IAGE,QAAQ,EAAEC,QAHZ;IAIE,KAAK,EAAEC,KAJT;IAKE,iBAAiB,EAAEC;EALrB,EAFF,CADyB;AAAA,CAA3B;;AAaAL,kBAAkB,CAACQ,SAAnB,GAA+B;EAC7BP,EAAE,EAAEQ,sBAAUC,MAAV,CAAiBC,UADQ;EAE7BT,KAAK,EAAEO,sBAAUC,MAAV,CAAiBC,UAFK;EAG7BR,QAAQ,EAAEM,sBAAUG,IAAV,CAAeD,UAHI;EAI7BP,KAAK,EAAEK,sBAAUI,IAJY;EAK7BR,iBAAiB,EAAEI,sBAAUC,MALA;EAM7BJ,KAAK,EAAEG,sBAAUC,MAAV,CAAiBC;AANK,CAA/B;AASAX,kBAAkB,CAACc,YAAnB,GAAkC;EAChCV,KAAK,EAAE,KADyB;EAEhCC,iBAAiB,EAAEU;AAFa,CAAlC;eAKef,kB"}
1
+ {"version":3,"file":"EditorAdapter.js","names":["DraftEditorAdapter","id","value","onChange","error","validationMessage","label","props","propTypes","PropTypes","string","isRequired","func","bool","defaultProps","undefined"],"sources":["../../../src/components/EditorAdapter/EditorAdapter.js"],"sourcesContent":["import React from 'react';\nimport DraftEditor from '@blaze-react/drafteditor';\nimport PropTypes from 'prop-types';\n\nconst DraftEditorAdapter = ({ id, value, onChange, error, validationMessage, label, ...props }) => (\n <div className=\"form-field form-field--full-width\">\n <label>{label}</label>\n <DraftEditor\n name={id}\n value={value}\n onChange={onChange}\n error={error}\n validationMessage={validationMessage}\n />\n </div>\n);\n\nDraftEditorAdapter.propTypes = {\n id: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n error: PropTypes.bool,\n validationMessage: PropTypes.string,\n label: PropTypes.string.isRequired\n};\n\nDraftEditorAdapter.defaultProps = {\n error: false,\n validationMessage: undefined\n};\n\nexport default DraftEditorAdapter;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;AAEA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAqB;EAAA,IAAGC,EAAH,QAAGA,EAAH;EAAA,IAAOC,KAAP,QAAOA,KAAP;EAAA,IAAcC,QAAd,QAAcA,QAAd;EAAA,IAAwBC,KAAxB,QAAwBA,KAAxB;EAAA,IAA+BC,iBAA/B,QAA+BA,iBAA/B;EAAA,IAAkDC,KAAlD,QAAkDA,KAAlD;EAAA,IAA4DC,KAA5D;EAAA,oBACzB;IAAK,SAAS,EAAC;EAAf,gBACE,+CAAQD,KAAR,CADF,eAEE,gCAAC,uBAAD;IACE,IAAI,EAAEL,EADR;IAEE,KAAK,EAAEC,KAFT;IAGE,QAAQ,EAAEC,QAHZ;IAIE,KAAK,EAAEC,KAJT;IAKE,iBAAiB,EAAEC;EALrB,EAFF,CADyB;AAAA,CAA3B;;AAaAL,kBAAkB,CAACQ,SAAnB,GAA+B;EAC7BP,EAAE,EAAEQ,qBAAA,CAAUC,MAAV,CAAiBC,UADQ;EAE7BT,KAAK,EAAEO,qBAAA,CAAUC,MAAV,CAAiBC,UAFK;EAG7BR,QAAQ,EAAEM,qBAAA,CAAUG,IAAV,CAAeD,UAHI;EAI7BP,KAAK,EAAEK,qBAAA,CAAUI,IAJY;EAK7BR,iBAAiB,EAAEI,qBAAA,CAAUC,MALA;EAM7BJ,KAAK,EAAEG,qBAAA,CAAUC,MAAV,CAAiBC;AANK,CAA/B;AASAX,kBAAkB,CAACc,YAAnB,GAAkC;EAChCV,KAAK,EAAE,KADyB;EAEhCC,iBAAiB,EAAEU;AAFa,CAAlC;eAKef,kB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["FilesListContext","React","createContext"],"sources":["../../../../src/components/FileList/FilesListContext/index.js"],"sourcesContent":["import React from 'react';\n\nconst FilesListContext = React.createContext({});\n\nexport default FilesListContext;\n"],"mappings":";;;;;;;;;;;AAAA;;AAEA,IAAMA,gBAAgB,gBAAGC,kBAAMC,aAAN,CAAoB,EAApB,CAAzB;;eAEeF,gB"}
1
+ {"version":3,"file":"index.js","names":["FilesListContext","React","createContext"],"sources":["../../../../src/components/FileList/FilesListContext/index.js"],"sourcesContent":["import React from 'react';\n\nconst FilesListContext = React.createContext({});\n\nexport default FilesListContext;\n"],"mappings":";;;;;;;;;;;AAAA;;AAEA,IAAMA,gBAAgB,gBAAGC,iBAAA,CAAMC,aAAN,CAAoB,EAApB,CAAzB;;eAEeF,gB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["FilesListProvider","children","queryParams","data","loading","setQueryParams","clearList","removeFile","addNewFile","updateFile","propTypes","PropTypes","oneOfType","arrayOf","node","isRequired"],"sources":["../../../../src/components/FileList/FilesListProvider/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport useGetFilesList from '../useGetFilesList/useGetFilesList';\nimport FilesListContext from '../FilesListContext';\n\nconst FilesListProvider = ({ children }) => {\n const [\n { queryParams, data, loading },\n { setQueryParams, clearList, removeFile, addNewFile, updateFile }\n ] = useGetFilesList();\n return (\n <FilesListContext.Provider\n value={{\n queryParams,\n data,\n loading,\n setQueryParams,\n clearList,\n removeFile,\n addNewFile,\n updateFile\n }}>\n {children}\n </FilesListContext.Provider>\n );\n};\n\nFilesListProvider.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired\n};\n\nexport default FilesListProvider;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,OAAkB;EAAA,IAAfC,QAAe,QAAfA,QAAe;;EAC1C,uBAGI,mCAHJ;EAAA;EAAA;EAAA,IACIC,WADJ,sBACIA,WADJ;EAAA,IACiBC,IADjB,sBACiBA,IADjB;EAAA,IACuBC,OADvB,sBACuBA,OADvB;EAAA;EAAA,IAEIC,cAFJ,uBAEIA,cAFJ;EAAA,IAEoBC,SAFpB,uBAEoBA,SAFpB;EAAA,IAE+BC,UAF/B,uBAE+BA,UAF/B;EAAA,IAE2CC,UAF3C,uBAE2CA,UAF3C;EAAA,IAEuDC,UAFvD,uBAEuDA,UAFvD;;EAIA,oBACE,gCAAC,4BAAD,CAAkB,QAAlB;IACE,KAAK,EAAE;MACLP,WAAW,EAAXA,WADK;MAELC,IAAI,EAAJA,IAFK;MAGLC,OAAO,EAAPA,OAHK;MAILC,cAAc,EAAdA,cAJK;MAKLC,SAAS,EAATA,SALK;MAMLC,UAAU,EAAVA,UANK;MAOLC,UAAU,EAAVA,UAPK;MAQLC,UAAU,EAAVA;IARK;EADT,GAWGR,QAXH,CADF;AAeD,CApBD;;AAsBAD,iBAAiB,CAACU,SAAlB,GAA8B;EAC5BT,QAAQ,EAAEU,sBAAUC,SAAV,CAAoB,CAACD,sBAAUE,OAAV,CAAkBF,sBAAUG,IAA5B,CAAD,EAAoCH,sBAAUG,IAA9C,CAApB,EAAyEC;AADvD,CAA9B;eAIef,iB"}
1
+ {"version":3,"file":"index.js","names":["FilesListProvider","children","useGetFilesList","queryParams","data","loading","setQueryParams","clearList","removeFile","addNewFile","updateFile","propTypes","PropTypes","oneOfType","arrayOf","node","isRequired"],"sources":["../../../../src/components/FileList/FilesListProvider/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport useGetFilesList from '../useGetFilesList/useGetFilesList';\nimport FilesListContext from '../FilesListContext';\n\nconst FilesListProvider = ({ children }) => {\n const [\n { queryParams, data, loading },\n { setQueryParams, clearList, removeFile, addNewFile, updateFile }\n ] = useGetFilesList();\n return (\n <FilesListContext.Provider\n value={{\n queryParams,\n data,\n loading,\n setQueryParams,\n clearList,\n removeFile,\n addNewFile,\n updateFile\n }}>\n {children}\n </FilesListContext.Provider>\n );\n};\n\nFilesListProvider.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired\n};\n\nexport default FilesListProvider;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,OAAkB;EAAA,IAAfC,QAAe,QAAfA,QAAe;;EAC1C,uBAGI,IAAAC,4BAAA,GAHJ;EAAA;EAAA;EAAA,IACIC,WADJ,sBACIA,WADJ;EAAA,IACiBC,IADjB,sBACiBA,IADjB;EAAA,IACuBC,OADvB,sBACuBA,OADvB;EAAA;EAAA,IAEIC,cAFJ,uBAEIA,cAFJ;EAAA,IAEoBC,SAFpB,uBAEoBA,SAFpB;EAAA,IAE+BC,UAF/B,uBAE+BA,UAF/B;EAAA,IAE2CC,UAF3C,uBAE2CA,UAF3C;EAAA,IAEuDC,UAFvD,uBAEuDA,UAFvD;;EAIA,oBACE,gCAAC,4BAAD,CAAkB,QAAlB;IACE,KAAK,EAAE;MACLP,WAAW,EAAXA,WADK;MAELC,IAAI,EAAJA,IAFK;MAGLC,OAAO,EAAPA,OAHK;MAILC,cAAc,EAAdA,cAJK;MAKLC,SAAS,EAATA,SALK;MAMLC,UAAU,EAAVA,UANK;MAOLC,UAAU,EAAVA,UAPK;MAQLC,UAAU,EAAVA;IARK;EADT,GAWGT,QAXH,CADF;AAeD,CApBD;;AAsBAD,iBAAiB,CAACW,SAAlB,GAA8B;EAC5BV,QAAQ,EAAEW,qBAAA,CAAUC,SAAV,CAAoB,CAACD,qBAAA,CAAUE,OAAV,CAAkBF,qBAAA,CAAUG,IAA5B,CAAD,EAAoCH,qBAAA,CAAUG,IAA9C,CAApB,EAAyEC;AADvD,CAA9B;eAIehB,iB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useFileList","FilesListContext"],"sources":["../../../../src/components/FileList/useFileList/index.js"],"sourcesContent":["import { useContext } from 'react';\nimport FilesListContext from '../FilesListContext';\n\nconst useFileList = () => useContext(FilesListContext);\n\nexport default useFileList;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc;EAAA,OAAM,uBAAWC,4BAAX,CAAN;AAAA,CAApB;;eAEeD,W"}
1
+ {"version":3,"file":"index.js","names":["useFileList","useContext","FilesListContext"],"sources":["../../../../src/components/FileList/useFileList/index.js"],"sourcesContent":["import { useContext } from 'react';\nimport FilesListContext from '../FilesListContext';\n\nconst useFileList = () => useContext(FilesListContext);\n\nexport default useFileList;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc;EAAA,OAAM,IAAAC,iBAAA,EAAWC,4BAAX,CAAN;AAAA,CAApB;;eAEeF,W"}
@@ -1 +1 @@
1
- {"version":3,"file":"getFiles.js","names":["getFromSearch","searchTerm","offset","limit","where","client","allTypesMatches","match","type","matchSpecificType","ALL","mustMatch","push","query_string","query","fields","minimum_should_match","storeKey","INVALID_STORE_KEY_VALUES","includes","fetchPolicy","variables","sort","rawQuery","bool","must","should","rawQueryAllResults","rawQueryImages","rawQueryVideos","rawQueryDocs","data","files","results","all","image","video","text","getFiles"],"sources":["../../../../src/components/FileList/useGetFiles/getFiles.js"],"sourcesContent":["import { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { ALL, INVALID_STORE_KEY_VALUES } from '../../../constants';\n\nconst getFromSearch = async ({ searchTerm, offset, limit, where, client }) => {\n const allTypesMatches = [\n {\n match: { type: 'image' }\n },\n {\n match: { type: 'video' }\n },\n {\n match: { type: 'text' }\n }\n ];\n const matchSpecificType = [\n {\n match: { type: where.type }\n }\n ];\n const match = !where.type || where.type === ALL ? allTypesMatches : matchSpecificType;\n const mustMatch = [];\n\n if (searchTerm) {\n mustMatch.push({\n query_string: {\n query: `${searchTerm}*`,\n fields: [],\n minimum_should_match: 2,\n type: 'cross_fields'\n }\n });\n }\n\n if (where.storeKey && !INVALID_STORE_KEY_VALUES.includes(where.storeKey)) {\n mustMatch.push({\n match: { storeKey: where.storeKey }\n });\n }\n\n const {\n data: {\n files: { results: files },\n all,\n image,\n video,\n text\n }\n } = await client.query({\n query: getQuery('SEARCH_ADMIN_MEDIA'),\n fetchPolicy: 'network-only',\n variables: {\n offset,\n limit,\n sort: searchTerm ? null : 'updated:desc',\n rawQuery: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: match\n }\n }\n ]\n }\n }\n },\n rawQueryAllResults: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'image' }\n },\n {\n match: { type: 'video' }\n },\n {\n match: { type: 'text' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryImages: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'image' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryVideos: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'video' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryDocs: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'text' }\n }\n ]\n }\n }\n ]\n }\n }\n }\n }\n });\n\n return { files, all, image, video, text };\n};\n\nconst getFiles = ({ offset, limit, where, searchTerm }, client) =>\n getFromSearch({ searchTerm, offset, limit, where, client });\n\nexport default getFiles;\n"],"mappings":"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"}
1
+ {"version":3,"file":"getFiles.js","names":["getFromSearch","searchTerm","offset","limit","where","client","allTypesMatches","match","type","matchSpecificType","ALL","mustMatch","push","query_string","query","fields","minimum_should_match","storeKey","INVALID_STORE_KEY_VALUES","includes","getQuery","fetchPolicy","variables","sort","rawQuery","bool","must","should","rawQueryAllResults","rawQueryImages","rawQueryVideos","rawQueryDocs","data","files","results","all","image","video","text","getFiles"],"sources":["../../../../src/components/FileList/useGetFiles/getFiles.js"],"sourcesContent":["import { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { ALL, INVALID_STORE_KEY_VALUES } from '../../../constants';\n\nconst getFromSearch = async ({ searchTerm, offset, limit, where, client }) => {\n const allTypesMatches = [\n {\n match: { type: 'image' }\n },\n {\n match: { type: 'video' }\n },\n {\n match: { type: 'text' }\n }\n ];\n const matchSpecificType = [\n {\n match: { type: where.type }\n }\n ];\n const match = !where.type || where.type === ALL ? allTypesMatches : matchSpecificType;\n const mustMatch = [];\n\n if (searchTerm) {\n mustMatch.push({\n query_string: {\n query: `${searchTerm}*`,\n fields: [],\n minimum_should_match: 2,\n type: 'cross_fields'\n }\n });\n }\n\n if (where.storeKey && !INVALID_STORE_KEY_VALUES.includes(where.storeKey)) {\n mustMatch.push({\n match: { storeKey: where.storeKey }\n });\n }\n\n const {\n data: {\n files: { results: files },\n all,\n image,\n video,\n text\n }\n } = await client.query({\n query: getQuery('SEARCH_ADMIN_MEDIA'),\n fetchPolicy: 'network-only',\n variables: {\n offset,\n limit,\n sort: searchTerm ? null : 'updated:desc',\n rawQuery: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: match\n }\n }\n ]\n }\n }\n },\n rawQueryAllResults: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'image' }\n },\n {\n match: { type: 'video' }\n },\n {\n match: { type: 'text' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryImages: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'image' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryVideos: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'video' }\n }\n ]\n }\n }\n ]\n }\n }\n },\n rawQueryDocs: {\n query: {\n bool: {\n must: [\n ...mustMatch,\n {\n bool: {\n should: [\n {\n match: { type: 'text' }\n }\n ]\n }\n }\n ]\n }\n }\n }\n }\n });\n\n return { files, all, image, video, text };\n};\n\nconst getFiles = ({ offset, limit, where, searchTerm }, client) =>\n getFromSearch({ searchTerm, offset, limit, where, client });\n\nexport default getFiles;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useGetFiles.js","names":["useGetFiles","limit","offset","where","sort","property","direction","queryParams","setQueryParams","previousFilter","setPreviousFilter","previousOffset","setPreviousOffset","previousSearchTerm","setPreviousSearchTerm","files","total","data","setData","isLoading","setIsLoading","client","setParams","newQueryParams","searchTerm","isSearch","newFilter","JSON","stringify","isNewFilterSet","isNewOffsetSet","isNewSearchTermSet","isResetSearch","shouldRequest","fetchData","length","all","image","video","text","then","loading"],"sources":["../../../../src/components/FileList/useGetFiles/useGetFiles.js"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport { useApolloClient } from '@apollo/client';\nimport getFiles from './getFiles';\n\nfunction useGetFiles() {\n const [queryParams, setQueryParams] = useState({\n limit: 20,\n offset: 0,\n where: null,\n sort: [\n {\n property: 'updated',\n direction: 'desc'\n }\n ]\n });\n const [previousFilter, setPreviousFilter] = useState(null);\n const [previousOffset, setPreviousOffset] = useState(null);\n const [previousSearchTerm, setPreviousSearchTerm] = useState(null);\n const [data, setData] = useState({ files: [], total: 0 });\n const [isLoading, setIsLoading] = useState(false);\n const client = useApolloClient();\n\n const setParams = newQueryParams => {\n setQueryParams({ ...queryParams, ...newQueryParams });\n };\n\n useEffect(\n () => {\n const { offset, limit, where, sort, searchTerm, isSearch } = queryParams;\n const newFilter = JSON.stringify(where);\n const isNewFilterSet = newFilter !== previousFilter;\n const isNewOffsetSet = previousOffset !== null && offset !== previousOffset;\n const isNewSearchTermSet = searchTerm && previousSearchTerm !== searchTerm;\n const isResetSearch = searchTerm === null && !isSearch && previousFilter;\n const shouldRequest =\n where && (isNewOffsetSet || isNewFilterSet || isNewSearchTermSet || isResetSearch);\n async function fetchData() {\n if (data.files.length) {\n setData({ files: [] });\n }\n\n const { files, total, all, image, video, text } = await getFiles(\n { offset, limit, where, sort, searchTerm, isSearch },\n client\n );\n setData({ files, total, all, image, video, text });\n }\n\n if (shouldRequest) {\n setIsLoading(true);\n fetchData().then(() => {\n setIsLoading(false);\n });\n setPreviousFilter(newFilter);\n setPreviousOffset(offset);\n setPreviousSearchTerm(searchTerm);\n }\n },\n [queryParams, previousOffset, previousFilter] //eslint-disable-line\n );\n\n const { files, total, all, image, video, text } = data;\n return [\n {\n queryParams,\n previousFilter,\n previousSearchTerm,\n loading: isLoading,\n data: { files, total, all, image, video, text }\n },\n setParams\n ];\n}\n\nexport default useGetFiles;\n"],"mappings":"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"}
1
+ {"version":3,"file":"useGetFiles.js","names":["useGetFiles","useState","limit","offset","where","sort","property","direction","queryParams","setQueryParams","previousFilter","setPreviousFilter","previousOffset","setPreviousOffset","previousSearchTerm","setPreviousSearchTerm","files","total","data","setData","isLoading","setIsLoading","client","useApolloClient","setParams","newQueryParams","useEffect","searchTerm","isSearch","newFilter","JSON","stringify","isNewFilterSet","isNewOffsetSet","isNewSearchTermSet","isResetSearch","shouldRequest","fetchData","length","getFiles","all","image","video","text","then","loading"],"sources":["../../../../src/components/FileList/useGetFiles/useGetFiles.js"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport { useApolloClient } from '@apollo/client';\nimport getFiles from './getFiles';\n\nfunction useGetFiles() {\n const [queryParams, setQueryParams] = useState({\n limit: 20,\n offset: 0,\n where: null,\n sort: [\n {\n property: 'updated',\n direction: 'desc'\n }\n ]\n });\n const [previousFilter, setPreviousFilter] = useState(null);\n const [previousOffset, setPreviousOffset] = useState(null);\n const [previousSearchTerm, setPreviousSearchTerm] = useState(null);\n const [data, setData] = useState({ files: [], total: 0 });\n const [isLoading, setIsLoading] = useState(false);\n const client = useApolloClient();\n\n const setParams = newQueryParams => {\n setQueryParams({ ...queryParams, ...newQueryParams });\n };\n\n useEffect(\n () => {\n const { offset, limit, where, sort, searchTerm, isSearch } = queryParams;\n const newFilter = JSON.stringify(where);\n const isNewFilterSet = newFilter !== previousFilter;\n const isNewOffsetSet = previousOffset !== null && offset !== previousOffset;\n const isNewSearchTermSet = searchTerm && previousSearchTerm !== searchTerm;\n const isResetSearch = searchTerm === null && !isSearch && previousFilter;\n const shouldRequest =\n where && (isNewOffsetSet || isNewFilterSet || isNewSearchTermSet || isResetSearch);\n async function fetchData() {\n if (data.files.length) {\n setData({ files: [] });\n }\n\n const { files, total, all, image, video, text } = await getFiles(\n { offset, limit, where, sort, searchTerm, isSearch },\n client\n );\n setData({ files, total, all, image, video, text });\n }\n\n if (shouldRequest) {\n setIsLoading(true);\n fetchData().then(() => {\n setIsLoading(false);\n });\n setPreviousFilter(newFilter);\n setPreviousOffset(offset);\n setPreviousSearchTerm(searchTerm);\n }\n },\n [queryParams, previousOffset, previousFilter] //eslint-disable-line\n );\n\n const { files, total, all, image, video, text } = data;\n return [\n {\n queryParams,\n previousFilter,\n previousSearchTerm,\n loading: isLoading,\n data: { files, total, all, image, video, text }\n },\n setParams\n ];\n}\n\nexport default useGetFiles;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getCounters.js","names":["getCounters","client","query","data"],"sources":["../../../../src/components/FileList/useGetFilesList/getCounters.js"],"sourcesContent":["import { getQuery } from '@blaze-cms/admin-ui-utils';\n\nconst getCounters = async client => {\n const { data } = await client.query({ query: getQuery('GET_COUNT_ALL_FILES') });\n return data;\n};\n\nexport default getCounters;\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AAEA,IAAMA,WAAW;EAAA,yFAAG,iBAAMC,MAAN;IAAA;;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA,OACKA,MAAM,CAACC,KAAP,CAAa;cAAEA,KAAK,EAAE,4BAAS,qBAAT;YAAT,CAAb,CADL;;UAAA;YAAA;YACVC,IADU,uBACVA,IADU;YAAA,iCAEXA,IAFW;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAAH;;EAAA,gBAAXH,WAAW;IAAA;EAAA;AAAA,GAAjB;;eAKeA,W"}
1
+ {"version":3,"file":"getCounters.js","names":["getCounters","client","query","getQuery","data"],"sources":["../../../../src/components/FileList/useGetFilesList/getCounters.js"],"sourcesContent":["import { getQuery } from '@blaze-cms/admin-ui-utils';\n\nconst getCounters = async client => {\n const { data } = await client.query({ query: getQuery('GET_COUNT_ALL_FILES') });\n return data;\n};\n\nexport default getCounters;\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AAEA,IAAMA,WAAW;EAAA,yFAAG,iBAAMC,MAAN;IAAA;;IAAA;MAAA;QAAA;UAAA;YAAA;YAAA,OACKA,MAAM,CAACC,KAAP,CAAa;cAAEA,KAAK,EAAE,IAAAC,sBAAA,EAAS,qBAAT;YAAT,CAAb,CADL;;UAAA;YAAA;YACVC,IADU,uBACVA,IADU;YAAA,iCAEXA,IAFW;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,CAAH;;EAAA,gBAAXJ,WAAW;IAAA;EAAA;AAAA,GAAjB;;eAKeA,W"}
@@ -1 +1 @@
1
- {"version":3,"file":"useGetFilesList.js","names":["useGetFilesList","queryParams","previousFilter","previousSearchTerm","loading","data","results","files","all","image","video","text","setParams","currentResults","setCurrentResults","allResults","setAllResults","currentFilter","setCurrentFilter","allFilesCounter","setAllFilesCounter","counters","setCounters","total","isContentDifferent","isEqual","length","shouldSetContentIfListIsVoid","removeFile","index","resultsToUpdate","splice","currentFileType","type","updatedFileTypeCounterValue","updateAllFilesCounter","isSearch","updatedCounters","updateFile","file","addNewFile","newFiles","reduce","acc","_image","_video","_text","searchTerm","clearList","params","offset","setQueryParams","isNewSearchTerm","hasDeletedSearchTerm","newFilter","JSON","stringify","where","isNewFilter","shouldClearList","parsedQueryParams","formatCounterNumber","images","videos","documents","n"],"sources":["../../../../src/components/FileList/useGetFilesList/useGetFilesList.js"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport differenceWith from 'lodash.differencewith';\nimport isEqual from 'lodash.isequal';\nimport useGetFiles from '../useGetFiles';\n\nfunction useGetFilesList() {\n const [\n {\n queryParams,\n previousFilter,\n previousSearchTerm,\n loading,\n data: { files: results, all, image, video, text }\n },\n setParams\n ] = useGetFiles();\n const [currentResults, setCurrentResults] = useState([]);\n const [allResults, setAllResults] = useState([]);\n const [currentFilter, setCurrentFilter] = useState(null);\n const [allFilesCounter, setAllFilesCounter] = useState({ all: 0, text: 0, image: 0, video: 0 });\n const [counters, setCounters] = useState(null);\n\n useEffect(\n () => {\n if (all && image && video && text) {\n setCounters({\n all: all.total,\n image: image.total,\n video: video.total,\n text: text.total\n });\n }\n },\n [all, image, video, text]\n );\n\n useEffect(\n () => {\n if (!currentFilter && previousFilter) {\n setCurrentFilter(previousFilter);\n }\n\n if (currentFilter !== previousFilter) {\n setAllResults([]);\n setCurrentResults([]);\n return;\n }\n\n const isContentDifferent = !!differenceWith(results, currentResults, isEqual).length;\n if (isContentDifferent) {\n setAllResults([...allResults, ...results]);\n setCurrentResults(results);\n }\n\n const shouldSetContentIfListIsVoid =\n !isContentDifferent && !allResults.length && results.length;\n\n if (shouldSetContentIfListIsVoid) {\n setAllResults(results);\n setCurrentResults(results);\n }\n },\n [currentFilter, currentResults, currentResults.length, previousFilter, results] //eslint-disable-line\n );\n\n const removeFile = ({ index }) => {\n const resultsToUpdate = [...allResults];\n resultsToUpdate.splice(index, 1);\n const currentFileType = resultsToUpdate[index].type;\n const updatedFileTypeCounterValue = allFilesCounter[currentFileType] - 1;\n const updateAllFilesCounter = allFilesCounter.all - 1;\n if (queryParams.isSearch) {\n setCounters({\n ...counters,\n [currentFileType]: counters[currentFileType] - 1,\n all: counters.all - 1\n });\n setAllFilesCounter({\n ...allFilesCounter,\n [currentFileType]: updatedFileTypeCounterValue,\n all: updateAllFilesCounter\n });\n }\n\n if (!queryParams.isSearch) {\n const updatedCounters = {\n ...allFilesCounter,\n [currentFileType]: updatedFileTypeCounterValue,\n all: updateAllFilesCounter\n };\n\n setCounters(updatedCounters);\n setAllFilesCounter(updatedCounters);\n }\n setAllResults(resultsToUpdate);\n };\n\n const updateFile = ({ file, index }) => {\n const resultsToUpdate = [...allResults];\n resultsToUpdate[index] = file;\n setAllResults(resultsToUpdate);\n };\n\n const addNewFile = newFiles => {\n const { image: _image, video: _video, text: _text } = newFiles.reduce(\n (acc, { type }) => {\n acc[type] += 1;\n return acc;\n },\n { image: 0, video: 0, text: 0 }\n );\n\n if (queryParams.isSearch) {\n setAllResults([]);\n setParams({ queryParams, isSearch: false, searchTerm: null });\n }\n\n const updatedCounters = {\n all: allFilesCounter.all + _image + _video + _text,\n image: allFilesCounter.image + _image,\n video: allFilesCounter.video + _video,\n text: allFilesCounter.text + _text\n };\n\n setCounters(updatedCounters);\n setAllFilesCounter(updatedCounters);\n setAllResults([...newFiles, ...allResults]);\n };\n\n const clearList = params => {\n setAllResults([]);\n setParams({ ...params, offset: 0 });\n setCounters(allFilesCounter);\n };\n\n const setQueryParams = params => {\n const isNewSearchTerm = params.isSearch && previousSearchTerm !== params.searchTerm;\n const hasDeletedSearchTerm = previousSearchTerm && params.searchTerm === null;\n const newFilter = JSON.stringify(params.where);\n const isNewFilter = newFilter !== previousFilter;\n const shouldClearList = hasDeletedSearchTerm || isNewFilter || isNewSearchTerm;\n shouldClearList ? clearList(params) : setParams(params);\n setCurrentFilter(newFilter);\n };\n\n const parsedQueryParams = {\n ...queryParams,\n where: { ...queryParams.where }\n };\n\n if (parsedQueryParams.where.type === 'all') delete parsedQueryParams.where.type;\n\n return [\n {\n queryParams: parsedQueryParams,\n loading,\n data: {\n files: allResults,\n all: counters ? formatCounterNumber(counters.all) : 0,\n images: counters ? formatCounterNumber(counters.image) : 0,\n videos: counters ? formatCounterNumber(counters.video) : 0,\n documents: counters ? formatCounterNumber(counters.text) : 0\n }\n },\n { setQueryParams, clearList, removeFile, addNewFile, updateFile }\n ];\n}\n\nconst formatCounterNumber = n => (n === 10000 ? '10000+' : n);\n\nexport default useGetFilesList;\n"],"mappings":"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"}
1
+ {"version":3,"file":"useGetFilesList.js","names":["useGetFilesList","useGetFiles","queryParams","previousFilter","previousSearchTerm","loading","data","results","files","all","image","video","text","setParams","useState","currentResults","setCurrentResults","allResults","setAllResults","currentFilter","setCurrentFilter","allFilesCounter","setAllFilesCounter","counters","setCounters","useEffect","total","isContentDifferent","differenceWith","isEqual","length","shouldSetContentIfListIsVoid","removeFile","index","resultsToUpdate","splice","currentFileType","type","updatedFileTypeCounterValue","updateAllFilesCounter","isSearch","updatedCounters","updateFile","file","addNewFile","newFiles","reduce","acc","_image","_video","_text","searchTerm","clearList","params","offset","setQueryParams","isNewSearchTerm","hasDeletedSearchTerm","newFilter","JSON","stringify","where","isNewFilter","shouldClearList","parsedQueryParams","formatCounterNumber","images","videos","documents","n"],"sources":["../../../../src/components/FileList/useGetFilesList/useGetFilesList.js"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport differenceWith from 'lodash.differencewith';\nimport isEqual from 'lodash.isequal';\nimport useGetFiles from '../useGetFiles';\n\nfunction useGetFilesList() {\n const [\n {\n queryParams,\n previousFilter,\n previousSearchTerm,\n loading,\n data: { files: results, all, image, video, text }\n },\n setParams\n ] = useGetFiles();\n const [currentResults, setCurrentResults] = useState([]);\n const [allResults, setAllResults] = useState([]);\n const [currentFilter, setCurrentFilter] = useState(null);\n const [allFilesCounter, setAllFilesCounter] = useState({ all: 0, text: 0, image: 0, video: 0 });\n const [counters, setCounters] = useState(null);\n\n useEffect(\n () => {\n if (all && image && video && text) {\n setCounters({\n all: all.total,\n image: image.total,\n video: video.total,\n text: text.total\n });\n }\n },\n [all, image, video, text]\n );\n\n useEffect(\n () => {\n if (!currentFilter && previousFilter) {\n setCurrentFilter(previousFilter);\n }\n\n if (currentFilter !== previousFilter) {\n setAllResults([]);\n setCurrentResults([]);\n return;\n }\n\n const isContentDifferent = !!differenceWith(results, currentResults, isEqual).length;\n if (isContentDifferent) {\n setAllResults([...allResults, ...results]);\n setCurrentResults(results);\n }\n\n const shouldSetContentIfListIsVoid =\n !isContentDifferent && !allResults.length && results.length;\n\n if (shouldSetContentIfListIsVoid) {\n setAllResults(results);\n setCurrentResults(results);\n }\n },\n [currentFilter, currentResults, currentResults.length, previousFilter, results] //eslint-disable-line\n );\n\n const removeFile = ({ index }) => {\n const resultsToUpdate = [...allResults];\n resultsToUpdate.splice(index, 1);\n const currentFileType = resultsToUpdate[index].type;\n const updatedFileTypeCounterValue = allFilesCounter[currentFileType] - 1;\n const updateAllFilesCounter = allFilesCounter.all - 1;\n if (queryParams.isSearch) {\n setCounters({\n ...counters,\n [currentFileType]: counters[currentFileType] - 1,\n all: counters.all - 1\n });\n setAllFilesCounter({\n ...allFilesCounter,\n [currentFileType]: updatedFileTypeCounterValue,\n all: updateAllFilesCounter\n });\n }\n\n if (!queryParams.isSearch) {\n const updatedCounters = {\n ...allFilesCounter,\n [currentFileType]: updatedFileTypeCounterValue,\n all: updateAllFilesCounter\n };\n\n setCounters(updatedCounters);\n setAllFilesCounter(updatedCounters);\n }\n setAllResults(resultsToUpdate);\n };\n\n const updateFile = ({ file, index }) => {\n const resultsToUpdate = [...allResults];\n resultsToUpdate[index] = file;\n setAllResults(resultsToUpdate);\n };\n\n const addNewFile = newFiles => {\n const { image: _image, video: _video, text: _text } = newFiles.reduce(\n (acc, { type }) => {\n acc[type] += 1;\n return acc;\n },\n { image: 0, video: 0, text: 0 }\n );\n\n if (queryParams.isSearch) {\n setAllResults([]);\n setParams({ queryParams, isSearch: false, searchTerm: null });\n }\n\n const updatedCounters = {\n all: allFilesCounter.all + _image + _video + _text,\n image: allFilesCounter.image + _image,\n video: allFilesCounter.video + _video,\n text: allFilesCounter.text + _text\n };\n\n setCounters(updatedCounters);\n setAllFilesCounter(updatedCounters);\n setAllResults([...newFiles, ...allResults]);\n };\n\n const clearList = params => {\n setAllResults([]);\n setParams({ ...params, offset: 0 });\n setCounters(allFilesCounter);\n };\n\n const setQueryParams = params => {\n const isNewSearchTerm = params.isSearch && previousSearchTerm !== params.searchTerm;\n const hasDeletedSearchTerm = previousSearchTerm && params.searchTerm === null;\n const newFilter = JSON.stringify(params.where);\n const isNewFilter = newFilter !== previousFilter;\n const shouldClearList = hasDeletedSearchTerm || isNewFilter || isNewSearchTerm;\n shouldClearList ? clearList(params) : setParams(params);\n setCurrentFilter(newFilter);\n };\n\n const parsedQueryParams = {\n ...queryParams,\n where: { ...queryParams.where }\n };\n\n if (parsedQueryParams.where.type === 'all') delete parsedQueryParams.where.type;\n\n return [\n {\n queryParams: parsedQueryParams,\n loading,\n data: {\n files: allResults,\n all: counters ? formatCounterNumber(counters.all) : 0,\n images: counters ? formatCounterNumber(counters.image) : 0,\n videos: counters ? formatCounterNumber(counters.video) : 0,\n documents: counters ? formatCounterNumber(counters.text) : 0\n }\n },\n { setQueryParams, clearList, removeFile, addNewFile, updateFile }\n ];\n}\n\nconst formatCounterNumber = n => (n === 10000 ? '10000+' : n);\n\nexport default useGetFilesList;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Actions","file","MediaContext","handleEditModal","onUnselectFile","mimetype","split","extension","id","propTypes","PropTypes","object","isRequired"],"sources":["../../../../src/components/FilePreview/Actions/index.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MediaContext } from '../../../utils/media-context';\n\nconst Actions = ({ file }) => {\n const { handleEditModal, onUnselectFile } = useContext(MediaContext);\n const [, extension] = file.mimetype.split('/');\n\n return (\n <>\n <div className=\"FilePreviewItem__info__actions\">\n <div className=\"FilePreviewItem__info__actions FilePreviewItem__info__actions--media-type\">\n <i className=\"FilePreviewItem__info__actionsIcon material-icons\">insert_photo</i>{' '}\n <span>{extension}</span>\n </div>\n <div>\n <div\n data-testid={`open-media-library-${file.id}`}\n className=\"FilePreviewItem__info__actionsIcon material-icons edit\"\n aria-hidden=\"true\"\n onClick={() => handleEditModal(file)}>\n <i className=\"fas fa-pen fa-xs\" />\n </div>\n <div\n data-testid={`unselect-${file.id}`}\n className=\"FilePreviewItem__info__actionsIcon material-icons delete\"\n aria-hidden=\"true\"\n onClick={() => onUnselectFile([file.id])}>\n <i className=\"fas fa-trash fa-xs\" />\n </div>\n </div>\n </div>\n </>\n );\n};\n\nActions.propTypes = {\n file: PropTypes.object.isRequired\n};\n\nexport default Actions;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAEA,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAAc;EAAA,IAAXC,IAAW,QAAXA,IAAW;;EAC5B,kBAA4C,uBAAWC,0BAAX,CAA5C;EAAA,IAAQC,eAAR,eAAQA,eAAR;EAAA,IAAyBC,cAAzB,eAAyBA,cAAzB;;EACA,2BAAsBH,IAAI,CAACI,QAAL,CAAcC,KAAd,CAAoB,GAApB,CAAtB;EAAA;EAAA,IAASC,SAAT;;EAEA,oBACE,+EACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAG,SAAS,EAAC;EAAb,kBADF,EACoF,GADpF,eAEE,8CAAOA,SAAP,CAFF,CADF,eAKE,0DACE;IACE,4CAAmCN,IAAI,CAACO,EAAxC,CADF;IAEE,SAAS,EAAC,wDAFZ;IAGE,eAAY,MAHd;IAIE,OAAO,EAAE;MAAA,OAAML,eAAe,CAACF,IAAD,CAArB;IAAA;EAJX,gBAKE;IAAG,SAAS,EAAC;EAAb,EALF,CADF,eAQE;IACE,kCAAyBA,IAAI,CAACO,EAA9B,CADF;IAEE,SAAS,EAAC,0DAFZ;IAGE,eAAY,MAHd;IAIE,OAAO,EAAE;MAAA,OAAMJ,cAAc,CAAC,CAACH,IAAI,CAACO,EAAN,CAAD,CAApB;IAAA;EAJX,gBAKE;IAAG,SAAS,EAAC;EAAb,EALF,CARF,CALF,CADF,CADF;AA0BD,CA9BD;;AAgCAR,OAAO,CAACS,SAAR,GAAoB;EAClBR,IAAI,EAAES,sBAAUC,MAAV,CAAiBC;AADL,CAApB;eAIeZ,O"}
1
+ {"version":3,"file":"index.js","names":["Actions","file","useContext","MediaContext","handleEditModal","onUnselectFile","mimetype","split","extension","id","propTypes","PropTypes","object","isRequired"],"sources":["../../../../src/components/FilePreview/Actions/index.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { MediaContext } from '../../../utils/media-context';\n\nconst Actions = ({ file }) => {\n const { handleEditModal, onUnselectFile } = useContext(MediaContext);\n const [, extension] = file.mimetype.split('/');\n\n return (\n <>\n <div className=\"FilePreviewItem__info__actions\">\n <div className=\"FilePreviewItem__info__actions FilePreviewItem__info__actions--media-type\">\n <i className=\"FilePreviewItem__info__actionsIcon material-icons\">insert_photo</i>{' '}\n <span>{extension}</span>\n </div>\n <div>\n <div\n data-testid={`open-media-library-${file.id}`}\n className=\"FilePreviewItem__info__actionsIcon material-icons edit\"\n aria-hidden=\"true\"\n onClick={() => handleEditModal(file)}>\n <i className=\"fas fa-pen fa-xs\" />\n </div>\n <div\n data-testid={`unselect-${file.id}`}\n className=\"FilePreviewItem__info__actionsIcon material-icons delete\"\n aria-hidden=\"true\"\n onClick={() => onUnselectFile([file.id])}>\n <i className=\"fas fa-trash fa-xs\" />\n </div>\n </div>\n </div>\n </>\n );\n};\n\nActions.propTypes = {\n file: PropTypes.object.isRequired\n};\n\nexport default Actions;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;AAEA,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAAc;EAAA,IAAXC,IAAW,QAAXA,IAAW;;EAC5B,kBAA4C,IAAAC,iBAAA,EAAWC,0BAAX,CAA5C;EAAA,IAAQC,eAAR,eAAQA,eAAR;EAAA,IAAyBC,cAAzB,eAAyBA,cAAzB;;EACA,2BAAsBJ,IAAI,CAACK,QAAL,CAAcC,KAAd,CAAoB,GAApB,CAAtB;EAAA;EAAA,IAASC,SAAT;;EAEA,oBACE,+EACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAG,SAAS,EAAC;EAAb,kBADF,EACoF,GADpF,eAEE,8CAAOA,SAAP,CAFF,CADF,eAKE,0DACE;IACE,4CAAmCP,IAAI,CAACQ,EAAxC,CADF;IAEE,SAAS,EAAC,wDAFZ;IAGE,eAAY,MAHd;IAIE,OAAO,EAAE;MAAA,OAAML,eAAe,CAACH,IAAD,CAArB;IAAA;EAJX,gBAKE;IAAG,SAAS,EAAC;EAAb,EALF,CADF,eAQE;IACE,kCAAyBA,IAAI,CAACQ,EAA9B,CADF;IAEE,SAAS,EAAC,0DAFZ;IAGE,eAAY,MAHd;IAIE,OAAO,EAAE;MAAA,OAAMJ,cAAc,CAAC,CAACJ,IAAI,CAACQ,EAAN,CAAD,CAApB;IAAA;EAJX,gBAKE;IAAG,SAAS,EAAC;EAAb,EALF,CARF,CALF,CADF,CADF;AA0BD,CA9BD;;AAgCAT,OAAO,CAACU,SAAR,GAAoB;EAClBT,IAAI,EAAEU,qBAAA,CAAUC,MAAV,CAAiBC;AADL,CAApB;eAIeb,O"}
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","names":["Image","url","name","children","propTypes","PropTypes","string","isRequired","oneOfType","arrayOf","node"],"sources":["../../../../src/components/FilePreview/Image/Image.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Image = ({ url, name, children }) => (\n <div className=\"preview\">\n <div className=\"preview__file preview__file--image\">\n <img src={url} alt={name} />\n <div className=\"preview__details preview__details--file\">\n <p>\n <strong>File details</strong>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Original\n </a>\n </p>\n </div>\n </div>\n {children}\n </div>\n);\n\nImage.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired\n};\n\nexport { Image };\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAQ;EAAA,IAAGC,GAAH,QAAGA,GAAH;EAAA,IAAQC,IAAR,QAAQA,IAAR;EAAA,IAAcC,QAAd,QAAcA,QAAd;EAAA,oBACZ;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,GAAG,EAAEF,GAAV;IAAe,GAAG,EAAEC;EAApB,EADF,eAEE;IAAK,SAAS,EAAC;EAAf,gBACE,wDACE,+DADF,eAEE;IAAG,IAAI,EAAED,GAAT;IAAc,GAAG,EAAC,qBAAlB;IAAwC,MAAM,EAAC;EAA/C,cAFF,CADF,CAFF,CADF,EAYGE,QAZH,CADY;AAAA,CAAd;;;AAiBAH,KAAK,CAACI,SAAN,GAAkB;EAChBH,GAAG,EAAEI,sBAAUC,MAAV,CAAiBC,UADN;EAEhBL,IAAI,EAAEG,sBAAUC,MAAV,CAAiBC,UAFP;EAGhBJ,QAAQ,EAAEE,sBAAUG,SAAV,CAAoB,CAACH,sBAAUI,OAAV,CAAkBJ,sBAAUK,IAA5B,CAAD,EAAoCL,sBAAUK,IAA9C,CAApB,EAAyEH;AAHnE,CAAlB"}
1
+ {"version":3,"file":"Image.js","names":["Image","url","name","children","propTypes","PropTypes","string","isRequired","oneOfType","arrayOf","node"],"sources":["../../../../src/components/FilePreview/Image/Image.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Image = ({ url, name, children }) => (\n <div className=\"preview\">\n <div className=\"preview__file preview__file--image\">\n <img src={url} alt={name} />\n <div className=\"preview__details preview__details--file\">\n <p>\n <strong>File details</strong>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Original\n </a>\n </p>\n </div>\n </div>\n {children}\n </div>\n);\n\nImage.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired\n};\n\nexport { Image };\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAQ;EAAA,IAAGC,GAAH,QAAGA,GAAH;EAAA,IAAQC,IAAR,QAAQA,IAAR;EAAA,IAAcC,QAAd,QAAcA,QAAd;EAAA,oBACZ;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,GAAG,EAAEF,GAAV;IAAe,GAAG,EAAEC;EAApB,EADF,eAEE;IAAK,SAAS,EAAC;EAAf,gBACE,wDACE,+DADF,eAEE;IAAG,IAAI,EAAED,GAAT;IAAc,GAAG,EAAC,qBAAlB;IAAwC,MAAM,EAAC;EAA/C,cAFF,CADF,CAFF,CADF,EAYGE,QAZH,CADY;AAAA,CAAd;;;AAiBAH,KAAK,CAACI,SAAN,GAAkB;EAChBH,GAAG,EAAEI,qBAAA,CAAUC,MAAV,CAAiBC,UADN;EAEhBL,IAAI,EAAEG,qBAAA,CAAUC,MAAV,CAAiBC,UAFP;EAGhBJ,QAAQ,EAAEE,qBAAA,CAAUG,SAAV,CAAoB,CAACH,qBAAA,CAAUI,OAAV,CAAkBJ,qBAAA,CAAUK,IAA5B,CAAD,EAAoCL,qBAAA,CAAUK,IAA9C,CAApB,EAAyEH;AAHnE,CAAlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"RawImage.js","names":["RawImage","url","name","file","propTypes","PropTypes","string","isRequired","object"],"sources":["../../../../src/components/FilePreview/Image/RawImage.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Actions from '../Actions';\n\nconst RawImage = ({ url, name, file }) => (\n <div className=\"FilePreview\">\n <div className=\"FilePreviewItem\">\n <div className=\"FilePreviewItem__wrapper\">\n <img className=\"FilePreviewItem__wrapper__image\" src={url} alt={name} />\n </div>\n <div className=\"FilePreviewItem__info\">\n <p className=\"FilePreviewItem__info__fileName\">{name}</p>\n <Actions file={file} />\n </div>\n </div>\n </div>\n);\n\nRawImage.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n file: PropTypes.object.isRequired\n};\n\nexport { RawImage };\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,QAAQ,GAAG,SAAXA,QAAW;EAAA,IAAGC,GAAH,QAAGA,GAAH;EAAA,IAAQC,IAAR,QAAQA,IAAR;EAAA,IAAcC,IAAd,QAAcA,IAAd;EAAA,oBACf;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC,iCAAf;IAAiD,GAAG,EAAEF,GAAtD;IAA2D,GAAG,EAAEC;EAAhE,EADF,CADF,eAIE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAG,SAAS,EAAC;EAAb,GAAgDA,IAAhD,CADF,eAEE,gCAAC,mBAAD;IAAS,IAAI,EAAEC;EAAf,EAFF,CAJF,CADF,CADe;AAAA,CAAjB;;;AAcAH,QAAQ,CAACI,SAAT,GAAqB;EACnBH,GAAG,EAAEI,sBAAUC,MAAV,CAAiBC,UADH;EAEnBL,IAAI,EAAEG,sBAAUC,MAAV,CAAiBC,UAFJ;EAGnBJ,IAAI,EAAEE,sBAAUG,MAAV,CAAiBD;AAHJ,CAArB"}
1
+ {"version":3,"file":"RawImage.js","names":["RawImage","url","name","file","propTypes","PropTypes","string","isRequired","object"],"sources":["../../../../src/components/FilePreview/Image/RawImage.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Actions from '../Actions';\n\nconst RawImage = ({ url, name, file }) => (\n <div className=\"FilePreview\">\n <div className=\"FilePreviewItem\">\n <div className=\"FilePreviewItem__wrapper\">\n <img className=\"FilePreviewItem__wrapper__image\" src={url} alt={name} />\n </div>\n <div className=\"FilePreviewItem__info\">\n <p className=\"FilePreviewItem__info__fileName\">{name}</p>\n <Actions file={file} />\n </div>\n </div>\n </div>\n);\n\nRawImage.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n file: PropTypes.object.isRequired\n};\n\nexport { RawImage };\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,QAAQ,GAAG,SAAXA,QAAW;EAAA,IAAGC,GAAH,QAAGA,GAAH;EAAA,IAAQC,IAAR,QAAQA,IAAR;EAAA,IAAcC,IAAd,QAAcA,IAAd;EAAA,oBACf;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC,iCAAf;IAAiD,GAAG,EAAEF,GAAtD;IAA2D,GAAG,EAAEC;EAAhE,EADF,CADF,eAIE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAG,SAAS,EAAC;EAAb,GAAgDA,IAAhD,CADF,eAEE,gCAAC,mBAAD;IAAS,IAAI,EAAEC;EAAf,EAFF,CAJF,CADF,CADe;AAAA,CAAjB;;;AAcAH,QAAQ,CAACI,SAAT,GAAqB;EACnBH,GAAG,EAAEI,qBAAA,CAAUC,MAAV,CAAiBC,UADH;EAEnBL,IAAI,EAAEG,qBAAA,CAAUC,MAAV,CAAiBC,UAFJ;EAGnBJ,IAAI,EAAEE,qBAAA,CAAUG,MAAV,CAAiBD;AAHJ,CAArB"}
@@ -1 +1 @@
1
- {"version":3,"file":"PDF.js","names":["PDF","mimetype","url","name","children","propTypes","PropTypes","string","isRequired","oneOfType","arrayOf","node"],"sources":["../../../../src/components/FilePreview/PDF/PDF.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst PDF = ({ mimetype, url, name, children }) => (\n <div className=\"preview\">\n <div className=\"preview__file preview__file--pdf\">\n <object data={url} type={mimetype} className=\"preview__file--pdf\">\n <p>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Download {name}\n </a>\n </p>\n </object>\n <div className=\"preview__details preview__details--file\">\n <p>\n <strong>File details</strong>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Original\n </a>\n </p>\n </div>\n </div>\n {children}\n </div>\n);\n\nPDF.propTypes = {\n mimetype: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired\n};\n\nexport { PDF };\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,GAAG,GAAG,SAANA,GAAM;EAAA,IAAGC,QAAH,QAAGA,QAAH;EAAA,IAAaC,GAAb,QAAaA,GAAb;EAAA,IAAkBC,IAAlB,QAAkBA,IAAlB;EAAA,IAAwBC,QAAxB,QAAwBA,QAAxB;EAAA,oBACV;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAQ,IAAI,EAAEF,GAAd;IAAmB,IAAI,EAAED,QAAzB;IAAmC,SAAS,EAAC;EAA7C,gBACE,wDACE;IAAG,IAAI,EAAEC,GAAT;IAAc,GAAG,EAAC,qBAAlB;IAAwC,MAAM,EAAC;EAA/C,gBACYC,IADZ,CADF,CADF,CADF,eAQE;IAAK,SAAS,EAAC;EAAf,gBACE,wDACE,+DADF,eAEE;IAAG,IAAI,EAAED,GAAT;IAAc,GAAG,EAAC,qBAAlB;IAAwC,MAAM,EAAC;EAA/C,cAFF,CADF,CARF,CADF,EAkBGE,QAlBH,CADU;AAAA,CAAZ;;;AAuBAJ,GAAG,CAACK,SAAJ,GAAgB;EACdJ,QAAQ,EAAEK,sBAAUC,MAAV,CAAiBC,UADb;EAEdN,GAAG,EAAEI,sBAAUC,MAAV,CAAiBC,UAFR;EAGdL,IAAI,EAAEG,sBAAUC,MAAV,CAAiBC,UAHT;EAIdJ,QAAQ,EAAEE,sBAAUG,SAAV,CAAoB,CAACH,sBAAUI,OAAV,CAAkBJ,sBAAUK,IAA5B,CAAD,EAAoCL,sBAAUK,IAA9C,CAApB,EAAyEH;AAJrE,CAAhB"}
1
+ {"version":3,"file":"PDF.js","names":["PDF","mimetype","url","name","children","propTypes","PropTypes","string","isRequired","oneOfType","arrayOf","node"],"sources":["../../../../src/components/FilePreview/PDF/PDF.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst PDF = ({ mimetype, url, name, children }) => (\n <div className=\"preview\">\n <div className=\"preview__file preview__file--pdf\">\n <object data={url} type={mimetype} className=\"preview__file--pdf\">\n <p>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Download {name}\n </a>\n </p>\n </object>\n <div className=\"preview__details preview__details--file\">\n <p>\n <strong>File details</strong>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Original\n </a>\n </p>\n </div>\n </div>\n {children}\n </div>\n);\n\nPDF.propTypes = {\n mimetype: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired\n};\n\nexport { PDF };\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,GAAG,GAAG,SAANA,GAAM;EAAA,IAAGC,QAAH,QAAGA,QAAH;EAAA,IAAaC,GAAb,QAAaA,GAAb;EAAA,IAAkBC,IAAlB,QAAkBA,IAAlB;EAAA,IAAwBC,QAAxB,QAAwBA,QAAxB;EAAA,oBACV;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAQ,IAAI,EAAEF,GAAd;IAAmB,IAAI,EAAED,QAAzB;IAAmC,SAAS,EAAC;EAA7C,gBACE,wDACE;IAAG,IAAI,EAAEC,GAAT;IAAc,GAAG,EAAC,qBAAlB;IAAwC,MAAM,EAAC;EAA/C,gBACYC,IADZ,CADF,CADF,CADF,eAQE;IAAK,SAAS,EAAC;EAAf,gBACE,wDACE,+DADF,eAEE;IAAG,IAAI,EAAED,GAAT;IAAc,GAAG,EAAC,qBAAlB;IAAwC,MAAM,EAAC;EAA/C,cAFF,CADF,CARF,CADF,EAkBGE,QAlBH,CADU;AAAA,CAAZ;;;AAuBAJ,GAAG,CAACK,SAAJ,GAAgB;EACdJ,QAAQ,EAAEK,qBAAA,CAAUC,MAAV,CAAiBC,UADb;EAEdN,GAAG,EAAEI,qBAAA,CAAUC,MAAV,CAAiBC,UAFR;EAGdL,IAAI,EAAEG,qBAAA,CAAUC,MAAV,CAAiBC,UAHT;EAIdJ,QAAQ,EAAEE,qBAAA,CAAUG,SAAV,CAAoB,CAACH,qBAAA,CAAUI,OAAV,CAAkBJ,qBAAA,CAAUK,IAA5B,CAAD,EAAoCL,qBAAA,CAAUK,IAA9C,CAApB,EAAyEH;AAJrE,CAAhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"RawPDF.js","names":["RawPDF","mimetype","url","name","file","propTypes","PropTypes","string","isRequired","object"],"sources":["../../../../src/components/FilePreview/PDF/RawPDF.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Actions from '../Actions';\n\nconst RawPDF = ({ mimetype, url, name, file }) => (\n <div className=\"FilePreview\">\n <object data={url} type={mimetype} className=\"preview__file--pdf\">\n <p>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Download {name}\n </a>\n </p>\n </object>\n <div className=\"FilePreviewItem__info\">\n <p className=\"FilePreviewItem__info__fileName\">{name}</p>\n <Actions file={file} />\n </div>\n </div>\n);\n\nRawPDF.propTypes = {\n mimetype: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n file: PropTypes.object.isRequired\n};\n\nexport { RawPDF };\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS;EAAA,IAAGC,QAAH,QAAGA,QAAH;EAAA,IAAaC,GAAb,QAAaA,GAAb;EAAA,IAAkBC,IAAlB,QAAkBA,IAAlB;EAAA,IAAwBC,IAAxB,QAAwBA,IAAxB;EAAA,oBACb;IAAK,SAAS,EAAC;EAAf,gBACE;IAAQ,IAAI,EAAEF,GAAd;IAAmB,IAAI,EAAED,QAAzB;IAAmC,SAAS,EAAC;EAA7C,gBACE,wDACE;IAAG,IAAI,EAAEC,GAAT;IAAc,GAAG,EAAC,qBAAlB;IAAwC,MAAM,EAAC;EAA/C,gBACYC,IADZ,CADF,CADF,CADF,eAQE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAG,SAAS,EAAC;EAAb,GAAgDA,IAAhD,CADF,eAEE,gCAAC,mBAAD;IAAS,IAAI,EAAEC;EAAf,EAFF,CARF,CADa;AAAA,CAAf;;;AAgBAJ,MAAM,CAACK,SAAP,GAAmB;EACjBJ,QAAQ,EAAEK,sBAAUC,MAAV,CAAiBC,UADV;EAEjBN,GAAG,EAAEI,sBAAUC,MAAV,CAAiBC,UAFL;EAGjBL,IAAI,EAAEG,sBAAUC,MAAV,CAAiBC,UAHN;EAIjBJ,IAAI,EAAEE,sBAAUG,MAAV,CAAiBD;AAJN,CAAnB"}
1
+ {"version":3,"file":"RawPDF.js","names":["RawPDF","mimetype","url","name","file","propTypes","PropTypes","string","isRequired","object"],"sources":["../../../../src/components/FilePreview/PDF/RawPDF.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Actions from '../Actions';\n\nconst RawPDF = ({ mimetype, url, name, file }) => (\n <div className=\"FilePreview\">\n <object data={url} type={mimetype} className=\"preview__file--pdf\">\n <p>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Download {name}\n </a>\n </p>\n </object>\n <div className=\"FilePreviewItem__info\">\n <p className=\"FilePreviewItem__info__fileName\">{name}</p>\n <Actions file={file} />\n </div>\n </div>\n);\n\nRawPDF.propTypes = {\n mimetype: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n file: PropTypes.object.isRequired\n};\n\nexport { RawPDF };\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS;EAAA,IAAGC,QAAH,QAAGA,QAAH;EAAA,IAAaC,GAAb,QAAaA,GAAb;EAAA,IAAkBC,IAAlB,QAAkBA,IAAlB;EAAA,IAAwBC,IAAxB,QAAwBA,IAAxB;EAAA,oBACb;IAAK,SAAS,EAAC;EAAf,gBACE;IAAQ,IAAI,EAAEF,GAAd;IAAmB,IAAI,EAAED,QAAzB;IAAmC,SAAS,EAAC;EAA7C,gBACE,wDACE;IAAG,IAAI,EAAEC,GAAT;IAAc,GAAG,EAAC,qBAAlB;IAAwC,MAAM,EAAC;EAA/C,gBACYC,IADZ,CADF,CADF,CADF,eAQE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAG,SAAS,EAAC;EAAb,GAAgDA,IAAhD,CADF,eAEE,gCAAC,mBAAD;IAAS,IAAI,EAAEC;EAAf,EAFF,CARF,CADa;AAAA,CAAf;;;AAgBAJ,MAAM,CAACK,SAAP,GAAmB;EACjBJ,QAAQ,EAAEK,qBAAA,CAAUC,MAAV,CAAiBC,UADV;EAEjBN,GAAG,EAAEI,qBAAA,CAAUC,MAAV,CAAiBC,UAFL;EAGjBL,IAAI,EAAEG,qBAAA,CAAUC,MAAV,CAAiBC,UAHN;EAIjBJ,IAAI,EAAEE,qBAAA,CAAUG,MAAV,CAAiBD;AAJN,CAAnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["FilePreview","file","handleFormChange","displayForm","previewType","children","name","url","mimetype","data","store","Preview","schema","shouldRenderForm","defaultStore","storeOptions","formSchema","properties","storeKey","options","key","selected","formBuilderData","values","filename","availablePreviewTypes","card","raw","propTypes","PropTypes","object","isRequired","fileName","string","func","bool","handlers","oneOf","Object","keys","oneOfType","array","defaultProps"],"sources":["../../../src/components/FilePreview/index.js"],"sourcesContent":["import React from 'react';\nimport { FormBuilder } from '@blaze-cms/react-form-builder';\nimport PropTypes from 'prop-types';\nimport { getPreview } from './get-preview';\n\nconst FilePreview = ({ file, handleFormChange, displayForm, previewType, children }) => {\n const { name, url, mimetype, data, store } = file;\n const [Preview, schema] = getPreview({ mimetype, previewType });\n const shouldRenderForm = schema && displayForm;\n\n if (shouldRenderForm && store) {\n const { defaultStore = {}, storeOptions = [] } = store;\n if (schema.formSchema.properties.storeKey) {\n schema.formSchema.properties.storeKey.options = storeOptions;\n if (defaultStore) {\n const { key } = defaultStore;\n schema.formSchema.properties.storeKey.selected = key;\n }\n }\n }\n\n const formBuilderData = { values: { ...file, ...data } };\n\n return (\n <>\n <Preview mimetype={mimetype} url={url} name={name} {...data} file={file}>\n {shouldRenderForm && (\n <div className=\"preview__details\">\n <div className=\"preview__filename\">{file.filename}</div>\n <FormBuilder\n formClassName=\"preview__form\"\n onChange={handleFormChange}\n data={formBuilderData}\n schema={schema.formSchema}\n />\n </div>\n )}\n </Preview>\n {children}\n </>\n );\n};\n\nFilePreview.availablePreviewTypes = {\n card: 'card',\n raw: 'raw'\n};\n\nFilePreview.propTypes = {\n file: PropTypes.object.isRequired,\n fileName: PropTypes.string,\n handleFormChange: PropTypes.func,\n displayForm: PropTypes.bool,\n handlers: PropTypes.object,\n previewType: PropTypes.oneOf(Object.keys(FilePreview.availablePreviewTypes)),\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFilePreview.defaultProps = {\n displayForm: false,\n fileName: '',\n handlers: {},\n previewType: FilePreview.availablePreviewTypes.card,\n handleFormChange: () => {},\n children: []\n};\n\nexport default FilePreview;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAAoE;EAAA,IAAjEC,IAAiE,QAAjEA,IAAiE;EAAA,IAA3DC,gBAA2D,QAA3DA,gBAA2D;EAAA,IAAzCC,WAAyC,QAAzCA,WAAyC;EAAA,IAA5BC,WAA4B,QAA5BA,WAA4B;EAAA,IAAfC,QAAe,QAAfA,QAAe;EACtF,IAAQC,IAAR,GAA6CL,IAA7C,CAAQK,IAAR;EAAA,IAAcC,GAAd,GAA6CN,IAA7C,CAAcM,GAAd;EAAA,IAAmBC,QAAnB,GAA6CP,IAA7C,CAAmBO,QAAnB;EAAA,IAA6BC,IAA7B,GAA6CR,IAA7C,CAA6BQ,IAA7B;EAAA,IAAmCC,KAAnC,GAA6CT,IAA7C,CAAmCS,KAAnC;;EACA,kBAA0B,6BAAW;IAAEF,QAAQ,EAARA,QAAF;IAAYJ,WAAW,EAAXA;EAAZ,CAAX,CAA1B;EAAA;EAAA,IAAOO,OAAP;EAAA,IAAgBC,MAAhB;;EACA,IAAMC,gBAAgB,GAAGD,MAAM,IAAIT,WAAnC;;EAEA,IAAIU,gBAAgB,IAAIH,KAAxB,EAA+B;IAC7B,0BAAiDA,KAAjD,CAAQI,YAAR;IAAA,IAAQA,YAAR,oCAAuB,EAAvB;IAAA,0BAAiDJ,KAAjD,CAA2BK,YAA3B;IAAA,IAA2BA,YAA3B,oCAA0C,EAA1C;;IACA,IAAIH,MAAM,CAACI,UAAP,CAAkBC,UAAlB,CAA6BC,QAAjC,EAA2C;MACzCN,MAAM,CAACI,UAAP,CAAkBC,UAAlB,CAA6BC,QAA7B,CAAsCC,OAAtC,GAAgDJ,YAAhD;;MACA,IAAID,YAAJ,EAAkB;QAChB,IAAQM,GAAR,GAAgBN,YAAhB,CAAQM,GAAR;QACAR,MAAM,CAACI,UAAP,CAAkBC,UAAlB,CAA6BC,QAA7B,CAAsCG,QAAtC,GAAiDD,GAAjD;MACD;IACF;EACF;;EAED,IAAME,eAAe,GAAG;IAAEC,MAAM,kCAAOtB,IAAP,GAAgBQ,IAAhB;EAAR,CAAxB;EAEA,oBACE,+EACE,gCAAC,OAAD;IAAS,QAAQ,EAAED,QAAnB;IAA6B,GAAG,EAAED,GAAlC;IAAuC,IAAI,EAAED;EAA7C,GAAuDG,IAAvD;IAA6D,IAAI,EAAER;EAAnE,IACGY,gBAAgB,iBACf;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,GAAoCZ,IAAI,CAACuB,QAAzC,CADF,eAEE,gCAAC,6BAAD;IACE,aAAa,EAAC,eADhB;IAEE,QAAQ,EAAEtB,gBAFZ;IAGE,IAAI,EAAEoB,eAHR;IAIE,MAAM,EAAEV,MAAM,CAACI;EAJjB,EAFF,CAFJ,CADF,EAcGX,QAdH,CADF;AAkBD,CApCD;;AAsCAL,WAAW,CAACyB,qBAAZ,GAAoC;EAClCC,IAAI,EAAE,MAD4B;EAElCC,GAAG,EAAE;AAF6B,CAApC;AAKA3B,WAAW,CAAC4B,SAAZ,GAAwB;EACtB3B,IAAI,EAAE4B,sBAAUC,MAAV,CAAiBC,UADD;EAEtBC,QAAQ,EAAEH,sBAAUI,MAFE;EAGtB/B,gBAAgB,EAAE2B,sBAAUK,IAHN;EAItB/B,WAAW,EAAE0B,sBAAUM,IAJD;EAKtBC,QAAQ,EAAEP,sBAAUC,MALE;EAMtB1B,WAAW,EAAEyB,sBAAUQ,KAAV,CAAgBC,MAAM,CAACC,IAAP,CAAYvC,WAAW,CAACyB,qBAAxB,CAAhB,CANS;EAOtBpB,QAAQ,EAAEwB,sBAAUW,SAAV,CAAoB,CAACX,sBAAUY,KAAX,EAAkBZ,sBAAUC,MAA5B,EAAoCD,sBAAUI,MAA9C,CAApB;AAPY,CAAxB;AAUAjC,WAAW,CAAC0C,YAAZ,GAA2B;EACzBvC,WAAW,EAAE,KADY;EAEzB6B,QAAQ,EAAE,EAFe;EAGzBI,QAAQ,EAAE,EAHe;EAIzBhC,WAAW,EAAEJ,WAAW,CAACyB,qBAAZ,CAAkCC,IAJtB;EAKzBxB,gBAAgB,EAAE,4BAAM,CAAE,CALD;EAMzBG,QAAQ,EAAE;AANe,CAA3B;eASeL,W"}
1
+ {"version":3,"file":"index.js","names":["FilePreview","file","handleFormChange","displayForm","previewType","children","name","url","mimetype","data","store","getPreview","Preview","schema","shouldRenderForm","defaultStore","storeOptions","formSchema","properties","storeKey","options","key","selected","formBuilderData","values","filename","availablePreviewTypes","card","raw","propTypes","PropTypes","object","isRequired","fileName","string","func","bool","handlers","oneOf","Object","keys","oneOfType","array","defaultProps"],"sources":["../../../src/components/FilePreview/index.js"],"sourcesContent":["import React from 'react';\nimport { FormBuilder } from '@blaze-cms/react-form-builder';\nimport PropTypes from 'prop-types';\nimport { getPreview } from './get-preview';\n\nconst FilePreview = ({ file, handleFormChange, displayForm, previewType, children }) => {\n const { name, url, mimetype, data, store } = file;\n const [Preview, schema] = getPreview({ mimetype, previewType });\n const shouldRenderForm = schema && displayForm;\n\n if (shouldRenderForm && store) {\n const { defaultStore = {}, storeOptions = [] } = store;\n if (schema.formSchema.properties.storeKey) {\n schema.formSchema.properties.storeKey.options = storeOptions;\n if (defaultStore) {\n const { key } = defaultStore;\n schema.formSchema.properties.storeKey.selected = key;\n }\n }\n }\n\n const formBuilderData = { values: { ...file, ...data } };\n\n return (\n <>\n <Preview mimetype={mimetype} url={url} name={name} {...data} file={file}>\n {shouldRenderForm && (\n <div className=\"preview__details\">\n <div className=\"preview__filename\">{file.filename}</div>\n <FormBuilder\n formClassName=\"preview__form\"\n onChange={handleFormChange}\n data={formBuilderData}\n schema={schema.formSchema}\n />\n </div>\n )}\n </Preview>\n {children}\n </>\n );\n};\n\nFilePreview.availablePreviewTypes = {\n card: 'card',\n raw: 'raw'\n};\n\nFilePreview.propTypes = {\n file: PropTypes.object.isRequired,\n fileName: PropTypes.string,\n handleFormChange: PropTypes.func,\n displayForm: PropTypes.bool,\n handlers: PropTypes.object,\n previewType: PropTypes.oneOf(Object.keys(FilePreview.availablePreviewTypes)),\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFilePreview.defaultProps = {\n displayForm: false,\n fileName: '',\n handlers: {},\n previewType: FilePreview.availablePreviewTypes.card,\n handleFormChange: () => {},\n children: []\n};\n\nexport default FilePreview;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileList.js","names":["FileList","selectedFiles","allFiles","handleReorderFiles","canDragAndDrop","fetchMore","children","isReorderActive","setIsReorderActive","toggleMode","length","totalImagesString","IMAGES","PREVIEW","REORDER","propTypes","PropTypes","array","isRequired","func","bool","oneOfType","object","string","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FileList.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport FilePreviewList from './FilePreviewList';\nimport FileReorderList from './FileReorderList';\nimport { PREVIEW, REORDER, IMAGES } from '../../constants';\n\nconst FileList = ({\n selectedFiles,\n allFiles,\n handleReorderFiles,\n canDragAndDrop,\n fetchMore,\n children\n}) => {\n const [isReorderActive, setIsReorderActive] = useState(false);\n const toggleMode = () => {\n fetchMore(true);\n setIsReorderActive(!isReorderActive);\n };\n\n useEffect(\n () => {\n if (isReorderActive && selectedFiles.length > allFiles.length) fetchMore(true);\n },\n [selectedFiles] //eslint-disable-line\n );\n const totalImagesString = `${selectedFiles.length} ${IMAGES}`;\n\n return (\n <>\n <div className=\"FileUploadAdapter__header\">\n {selectedFiles.length > 1 && (\n <p className=\"FileUploadAdapter FileUploadAdapter__preview-counter\">\n {totalImagesString}\n </p>\n )}\n {canDragAndDrop && (\n <Button onClick={toggleMode}>{isReorderActive ? PREVIEW : REORDER}</Button>\n )}\n </div>\n\n {canDragAndDrop && isReorderActive ? (\n <FileReorderList selectedFiles={selectedFiles} handleReorderFiles={handleReorderFiles} />\n ) : (\n <FilePreviewList selectedFiles={selectedFiles}>{children}</FilePreviewList>\n )}\n </>\n );\n};\n\nFileList.propTypes = {\n selectedFiles: PropTypes.array.isRequired,\n fetchMore: PropTypes.func.isRequired,\n handleReorderFiles: PropTypes.func.isRequired,\n allFiles: PropTypes.array,\n canDragAndDrop: PropTypes.bool,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFileList.defaultProps = {\n children: [],\n allFiles: [],\n canDragAndDrop: false\n};\n\nexport default FileList;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAOX;EAAA,IANJC,aAMI,QANJA,aAMI;EAAA,IALJC,QAKI,QALJA,QAKI;EAAA,IAJJC,kBAII,QAJJA,kBAII;EAAA,IAHJC,cAGI,QAHJA,cAGI;EAAA,IAFJC,SAEI,QAFJA,SAEI;EAAA,IADJC,QACI,QADJA,QACI;;EACJ,gBAA8C,qBAAS,KAAT,CAA9C;EAAA;EAAA,IAAOC,eAAP;EAAA,IAAwBC,kBAAxB;;EACA,IAAMC,UAAU,GAAG,SAAbA,UAAa,GAAM;IACvBJ,SAAS,CAAC,IAAD,CAAT;IACAG,kBAAkB,CAAC,CAACD,eAAF,CAAlB;EACD,CAHD;;EAKA,sBACE,YAAM;IACJ,IAAIA,eAAe,IAAIN,aAAa,CAACS,MAAd,GAAuBR,QAAQ,CAACQ,MAAvD,EAA+DL,SAAS,CAAC,IAAD,CAAT;EAChE,CAHH,EAIE,CAACJ,aAAD,CAJF,CAIkB;EAJlB;EAMA,IAAMU,iBAAiB,aAAMV,aAAa,CAACS,MAApB,cAA8BE,iBAA9B,CAAvB;EAEA,oBACE,+EACE;IAAK,SAAS,EAAC;EAAf,GACGX,aAAa,CAACS,MAAd,GAAuB,CAAvB,iBACC;IAAG,SAAS,EAAC;EAAb,GACGC,iBADH,CAFJ,EAMGP,cAAc,iBACb,gCAAC,kBAAD;IAAQ,OAAO,EAAEK;EAAjB,GAA8BF,eAAe,GAAGM,kBAAH,GAAaC,kBAA1D,CAPJ,CADF,EAYGV,cAAc,IAAIG,eAAlB,gBACC,gCAAC,2BAAD;IAAiB,aAAa,EAAEN,aAAhC;IAA+C,kBAAkB,EAAEE;EAAnE,EADD,gBAGC,gCAAC,2BAAD;IAAiB,aAAa,EAAEF;EAAhC,GAAgDK,QAAhD,CAfJ,CADF;AAoBD,CA1CD;;AA4CAN,QAAQ,CAACe,SAAT,GAAqB;EACnBd,aAAa,EAAEe,sBAAUC,KAAV,CAAgBC,UADZ;EAEnBb,SAAS,EAAEW,sBAAUG,IAAV,CAAeD,UAFP;EAGnBf,kBAAkB,EAAEa,sBAAUG,IAAV,CAAeD,UAHhB;EAInBhB,QAAQ,EAAEc,sBAAUC,KAJD;EAKnBb,cAAc,EAAEY,sBAAUI,IALP;EAMnBd,QAAQ,EAAEU,sBAAUK,SAAV,CAAoB,CAACL,sBAAUC,KAAX,EAAkBD,sBAAUM,MAA5B,EAAoCN,sBAAUO,MAA9C,CAApB;AANS,CAArB;AASAvB,QAAQ,CAACwB,YAAT,GAAwB;EACtBlB,QAAQ,EAAE,EADY;EAEtBJ,QAAQ,EAAE,EAFY;EAGtBE,cAAc,EAAE;AAHM,CAAxB;eAMeJ,Q"}
1
+ {"version":3,"file":"FileList.js","names":["FileList","selectedFiles","allFiles","handleReorderFiles","canDragAndDrop","fetchMore","children","useState","isReorderActive","setIsReorderActive","toggleMode","useEffect","length","totalImagesString","IMAGES","PREVIEW","REORDER","propTypes","PropTypes","array","isRequired","func","bool","oneOfType","object","string","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FileList.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport FilePreviewList from './FilePreviewList';\nimport FileReorderList from './FileReorderList';\nimport { PREVIEW, REORDER, IMAGES } from '../../constants';\n\nconst FileList = ({\n selectedFiles,\n allFiles,\n handleReorderFiles,\n canDragAndDrop,\n fetchMore,\n children\n}) => {\n const [isReorderActive, setIsReorderActive] = useState(false);\n const toggleMode = () => {\n fetchMore(true);\n setIsReorderActive(!isReorderActive);\n };\n\n useEffect(\n () => {\n if (isReorderActive && selectedFiles.length > allFiles.length) fetchMore(true);\n },\n [selectedFiles] //eslint-disable-line\n );\n const totalImagesString = `${selectedFiles.length} ${IMAGES}`;\n\n return (\n <>\n <div className=\"FileUploadAdapter__header\">\n {selectedFiles.length > 1 && (\n <p className=\"FileUploadAdapter FileUploadAdapter__preview-counter\">\n {totalImagesString}\n </p>\n )}\n {canDragAndDrop && (\n <Button onClick={toggleMode}>{isReorderActive ? PREVIEW : REORDER}</Button>\n )}\n </div>\n\n {canDragAndDrop && isReorderActive ? (\n <FileReorderList selectedFiles={selectedFiles} handleReorderFiles={handleReorderFiles} />\n ) : (\n <FilePreviewList selectedFiles={selectedFiles}>{children}</FilePreviewList>\n )}\n </>\n );\n};\n\nFileList.propTypes = {\n selectedFiles: PropTypes.array.isRequired,\n fetchMore: PropTypes.func.isRequired,\n handleReorderFiles: PropTypes.func.isRequired,\n allFiles: PropTypes.array,\n canDragAndDrop: PropTypes.bool,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFileList.defaultProps = {\n children: [],\n allFiles: [],\n canDragAndDrop: false\n};\n\nexport default FileList;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAOX;EAAA,IANJC,aAMI,QANJA,aAMI;EAAA,IALJC,QAKI,QALJA,QAKI;EAAA,IAJJC,kBAII,QAJJA,kBAII;EAAA,IAHJC,cAGI,QAHJA,cAGI;EAAA,IAFJC,SAEI,QAFJA,SAEI;EAAA,IADJC,QACI,QADJA,QACI;;EACJ,gBAA8C,IAAAC,eAAA,EAAS,KAAT,CAA9C;EAAA;EAAA,IAAOC,eAAP;EAAA,IAAwBC,kBAAxB;;EACA,IAAMC,UAAU,GAAG,SAAbA,UAAa,GAAM;IACvBL,SAAS,CAAC,IAAD,CAAT;IACAI,kBAAkB,CAAC,CAACD,eAAF,CAAlB;EACD,CAHD;;EAKA,IAAAG,gBAAA,EACE,YAAM;IACJ,IAAIH,eAAe,IAAIP,aAAa,CAACW,MAAd,GAAuBV,QAAQ,CAACU,MAAvD,EAA+DP,SAAS,CAAC,IAAD,CAAT;EAChE,CAHH,EAIE,CAACJ,aAAD,CAJF,CAIkB;EAJlB;EAMA,IAAMY,iBAAiB,aAAMZ,aAAa,CAACW,MAApB,cAA8BE,iBAA9B,CAAvB;EAEA,oBACE,+EACE;IAAK,SAAS,EAAC;EAAf,GACGb,aAAa,CAACW,MAAd,GAAuB,CAAvB,iBACC;IAAG,SAAS,EAAC;EAAb,GACGC,iBADH,CAFJ,EAMGT,cAAc,iBACb,gCAAC,kBAAD;IAAQ,OAAO,EAAEM;EAAjB,GAA8BF,eAAe,GAAGO,kBAAH,GAAaC,kBAA1D,CAPJ,CADF,EAYGZ,cAAc,IAAII,eAAlB,gBACC,gCAAC,2BAAD;IAAiB,aAAa,EAAEP,aAAhC;IAA+C,kBAAkB,EAAEE;EAAnE,EADD,gBAGC,gCAAC,2BAAD;IAAiB,aAAa,EAAEF;EAAhC,GAAgDK,QAAhD,CAfJ,CADF;AAoBD,CA1CD;;AA4CAN,QAAQ,CAACiB,SAAT,GAAqB;EACnBhB,aAAa,EAAEiB,qBAAA,CAAUC,KAAV,CAAgBC,UADZ;EAEnBf,SAAS,EAAEa,qBAAA,CAAUG,IAAV,CAAeD,UAFP;EAGnBjB,kBAAkB,EAAEe,qBAAA,CAAUG,IAAV,CAAeD,UAHhB;EAInBlB,QAAQ,EAAEgB,qBAAA,CAAUC,KAJD;EAKnBf,cAAc,EAAEc,qBAAA,CAAUI,IALP;EAMnBhB,QAAQ,EAAEY,qBAAA,CAAUK,SAAV,CAAoB,CAACL,qBAAA,CAAUC,KAAX,EAAkBD,qBAAA,CAAUM,MAA5B,EAAoCN,qBAAA,CAAUO,MAA9C,CAApB;AANS,CAArB;AASAzB,QAAQ,CAAC0B,YAAT,GAAwB;EACtBpB,QAAQ,EAAE,EADY;EAEtBJ,QAAQ,EAAE,EAFY;EAGtBE,cAAc,EAAE;AAHM,CAAxB;eAMeJ,Q"}
@@ -1 +1 @@
1
- {"version":3,"file":"FilePreviewList.js","names":["FilePreviewList","selectedFiles","children","map","file","id","FilePreview","availablePreviewTypes","raw","propTypes","PropTypes","array","isRequired","oneOfType","object","string","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FilePreviewList.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport FilePreview from '../FilePreview';\n\nconst FilePreviewList = ({ selectedFiles, children }) => (\n <div className=\"FileUploadAdapter__preview\">\n {selectedFiles.map(file => (\n <FilePreview key={file.id} file={file} previewType={FilePreview.availablePreviewTypes.raw} />\n ))}\n {children}\n </div>\n);\n\nFilePreviewList.propTypes = {\n selectedFiles: PropTypes.array.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFilePreviewList.defaultProps = {\n children: []\n};\n\nexport default FilePreviewList;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB;EAAA,IAAGC,aAAH,QAAGA,aAAH;EAAA,IAAkBC,QAAlB,QAAkBA,QAAlB;EAAA,oBACtB;IAAK,SAAS,EAAC;EAAf,GACGD,aAAa,CAACE,GAAd,CAAkB,UAAAC,IAAI;IAAA,oBACrB,gCAAC,uBAAD;MAAa,GAAG,EAAEA,IAAI,CAACC,EAAvB;MAA2B,IAAI,EAAED,IAAjC;MAAuC,WAAW,EAAEE,wBAAYC,qBAAZ,CAAkCC;IAAtF,EADqB;EAAA,CAAtB,CADH,EAIGN,QAJH,CADsB;AAAA,CAAxB;;AASAF,eAAe,CAACS,SAAhB,GAA4B;EAC1BR,aAAa,EAAES,sBAAUC,KAAV,CAAgBC,UADL;EAE1BV,QAAQ,EAAEQ,sBAAUG,SAAV,CAAoB,CAACH,sBAAUC,KAAX,EAAkBD,sBAAUI,MAA5B,EAAoCJ,sBAAUK,MAA9C,CAApB;AAFgB,CAA5B;AAKAf,eAAe,CAACgB,YAAhB,GAA+B;EAC7Bd,QAAQ,EAAE;AADmB,CAA/B;eAIeF,e"}
1
+ {"version":3,"file":"FilePreviewList.js","names":["FilePreviewList","selectedFiles","children","map","file","id","FilePreview","availablePreviewTypes","raw","propTypes","PropTypes","array","isRequired","oneOfType","object","string","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FilePreviewList.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport FilePreview from '../FilePreview';\n\nconst FilePreviewList = ({ selectedFiles, children }) => (\n <div className=\"FileUploadAdapter__preview\">\n {selectedFiles.map(file => (\n <FilePreview key={file.id} file={file} previewType={FilePreview.availablePreviewTypes.raw} />\n ))}\n {children}\n </div>\n);\n\nFilePreviewList.propTypes = {\n selectedFiles: PropTypes.array.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFilePreviewList.defaultProps = {\n children: []\n};\n\nexport default FilePreviewList;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB;EAAA,IAAGC,aAAH,QAAGA,aAAH;EAAA,IAAkBC,QAAlB,QAAkBA,QAAlB;EAAA,oBACtB;IAAK,SAAS,EAAC;EAAf,GACGD,aAAa,CAACE,GAAd,CAAkB,UAAAC,IAAI;IAAA,oBACrB,gCAAC,uBAAD;MAAa,GAAG,EAAEA,IAAI,CAACC,EAAvB;MAA2B,IAAI,EAAED,IAAjC;MAAuC,WAAW,EAAEE,uBAAA,CAAYC,qBAAZ,CAAkCC;IAAtF,EADqB;EAAA,CAAtB,CADH,EAIGN,QAJH,CADsB;AAAA,CAAxB;;AASAF,eAAe,CAACS,SAAhB,GAA4B;EAC1BR,aAAa,EAAES,qBAAA,CAAUC,KAAV,CAAgBC,UADL;EAE1BV,QAAQ,EAAEQ,qBAAA,CAAUG,SAAV,CAAoB,CAACH,qBAAA,CAAUC,KAAX,EAAkBD,qBAAA,CAAUI,MAA5B,EAAoCJ,qBAAA,CAAUK,MAA9C,CAApB;AAFgB,CAA5B;AAKAf,eAAe,CAACgB,YAAhB,GAA+B;EAC7Bd,QAAQ,EAAE;AADmB,CAA/B;eAIeF,e"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileReorderList.js","names":["FileReorderList","selectedFiles","handleReorderFiles","handleOnChange","newOrder","item","DragHandler","propTypes","PropTypes","array","isRequired","func"],"sources":["../../../src/components/FileUploadAdapter/FileReorderList.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Nestable from '@blaze-react/dnd';\nimport FileReorderListItem from './FileReorderListItem';\n\nconst FileReorderList = ({ selectedFiles, handleReorderFiles }) => {\n const handleOnChange = newOrder => {\n handleReorderFiles(newOrder);\n };\n\n return (\n <div className=\"FileUploadAdapter__reorder\">\n <Nestable\n onChange={newOrder => handleOnChange(newOrder)}\n childrenWrapperClassName=\"add\"\n items={selectedFiles}\n childrenProp=\"selectedFiles\"\n renderItem={({ item, DragHandler }) => (\n <div className=\"file-reorder\">\n <DragHandler />\n <FileReorderListItem {...item} />\n </div>\n )}\n />\n </div>\n );\n};\n\nFileReorderList.propTypes = {\n selectedFiles: PropTypes.array.isRequired,\n handleReorderFiles: PropTypes.func.isRequired\n};\n\nexport default FileReorderList;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,OAA2C;EAAA,IAAxCC,aAAwC,QAAxCA,aAAwC;EAAA,IAAzBC,kBAAyB,QAAzBA,kBAAyB;;EACjE,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAAAC,QAAQ,EAAI;IACjCF,kBAAkB,CAACE,QAAD,CAAlB;EACD,CAFD;;EAIA,oBACE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,eAAD;IACE,QAAQ,EAAE,kBAAAA,QAAQ;MAAA,OAAID,cAAc,CAACC,QAAD,CAAlB;IAAA,CADpB;IAEE,wBAAwB,EAAC,KAF3B;IAGE,KAAK,EAAEH,aAHT;IAIE,YAAY,EAAC,eAJf;IAKE,UAAU,EAAE;MAAA,IAAGI,IAAH,SAAGA,IAAH;MAAA,IAASC,WAAT,SAASA,WAAT;MAAA,oBACV;QAAK,SAAS,EAAC;MAAf,gBACE,gCAAC,WAAD,OADF,eAEE,gCAAC,+BAAD,EAAyBD,IAAzB,CAFF,CADU;IAAA;EALd,EADF,CADF;AAgBD,CArBD;;AAuBAL,eAAe,CAACO,SAAhB,GAA4B;EAC1BN,aAAa,EAAEO,sBAAUC,KAAV,CAAgBC,UADL;EAE1BR,kBAAkB,EAAEM,sBAAUG,IAAV,CAAeD;AAFT,CAA5B;eAKeV,e"}
1
+ {"version":3,"file":"FileReorderList.js","names":["FileReorderList","selectedFiles","handleReorderFiles","handleOnChange","newOrder","item","DragHandler","propTypes","PropTypes","array","isRequired","func"],"sources":["../../../src/components/FileUploadAdapter/FileReorderList.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Nestable from '@blaze-react/dnd';\nimport FileReorderListItem from './FileReorderListItem';\n\nconst FileReorderList = ({ selectedFiles, handleReorderFiles }) => {\n const handleOnChange = newOrder => {\n handleReorderFiles(newOrder);\n };\n\n return (\n <div className=\"FileUploadAdapter__reorder\">\n <Nestable\n onChange={newOrder => handleOnChange(newOrder)}\n childrenWrapperClassName=\"add\"\n items={selectedFiles}\n childrenProp=\"selectedFiles\"\n renderItem={({ item, DragHandler }) => (\n <div className=\"file-reorder\">\n <DragHandler />\n <FileReorderListItem {...item} />\n </div>\n )}\n />\n </div>\n );\n};\n\nFileReorderList.propTypes = {\n selectedFiles: PropTypes.array.isRequired,\n handleReorderFiles: PropTypes.func.isRequired\n};\n\nexport default FileReorderList;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,OAA2C;EAAA,IAAxCC,aAAwC,QAAxCA,aAAwC;EAAA,IAAzBC,kBAAyB,QAAzBA,kBAAyB;;EACjE,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAAAC,QAAQ,EAAI;IACjCF,kBAAkB,CAACE,QAAD,CAAlB;EACD,CAFD;;EAIA,oBACE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,eAAD;IACE,QAAQ,EAAE,kBAAAA,QAAQ;MAAA,OAAID,cAAc,CAACC,QAAD,CAAlB;IAAA,CADpB;IAEE,wBAAwB,EAAC,KAF3B;IAGE,KAAK,EAAEH,aAHT;IAIE,YAAY,EAAC,eAJf;IAKE,UAAU,EAAE;MAAA,IAAGI,IAAH,SAAGA,IAAH;MAAA,IAASC,WAAT,SAASA,WAAT;MAAA,oBACV;QAAK,SAAS,EAAC;MAAf,gBACE,gCAAC,WAAD,OADF,eAEE,gCAAC,+BAAD,EAAyBD,IAAzB,CAFF,CADU;IAAA;EALd,EADF,CADF;AAgBD,CArBD;;AAuBAL,eAAe,CAACO,SAAhB,GAA4B;EAC1BN,aAAa,EAAEO,qBAAA,CAAUC,KAAV,CAAgBC,UADL;EAE1BR,kBAAkB,EAAEM,qBAAA,CAAUG,IAAV,CAAeD;AAFT,CAA5B;eAKeV,e"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileReorderListItem.js","names":["FileReorderListItem","url","name","propTypes","PropTypes","string","isRequired"],"sources":["../../../src/components/FileUploadAdapter/FileReorderListItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst FileReorderListItem = ({ url, name }) => (\n <div className=\"file-reorder-item\">\n <div className=\"file-reorder-item__wrapper\">\n <img className=\"file-reorder-item__image\" src={url} alt={name} />\n </div>\n <div className=\"file-reorder-item__info\">\n <p className=\"file-reorder-item__filename\">{name}</p>\n </div>\n </div>\n);\n\nFileReorderListItem.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired\n};\n\nexport default FileReorderListItem;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB;EAAA,IAAGC,GAAH,QAAGA,GAAH;EAAA,IAAQC,IAAR,QAAQA,IAAR;EAAA,oBAC1B;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC,0BAAf;IAA0C,GAAG,EAAED,GAA/C;IAAoD,GAAG,EAAEC;EAAzD,EADF,CADF,eAIE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAG,SAAS,EAAC;EAAb,GAA4CA,IAA5C,CADF,CAJF,CAD0B;AAAA,CAA5B;;AAWAF,mBAAmB,CAACG,SAApB,GAAgC;EAC9BF,GAAG,EAAEG,sBAAUC,MAAV,CAAiBC,UADQ;EAE9BJ,IAAI,EAAEE,sBAAUC,MAAV,CAAiBC;AAFO,CAAhC;eAKeN,mB"}
1
+ {"version":3,"file":"FileReorderListItem.js","names":["FileReorderListItem","url","name","propTypes","PropTypes","string","isRequired"],"sources":["../../../src/components/FileUploadAdapter/FileReorderListItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst FileReorderListItem = ({ url, name }) => (\n <div className=\"file-reorder-item\">\n <div className=\"file-reorder-item__wrapper\">\n <img className=\"file-reorder-item__image\" src={url} alt={name} />\n </div>\n <div className=\"file-reorder-item__info\">\n <p className=\"file-reorder-item__filename\">{name}</p>\n </div>\n </div>\n);\n\nFileReorderListItem.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired\n};\n\nexport default FileReorderListItem;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB;EAAA,IAAGC,GAAH,QAAGA,GAAH;EAAA,IAAQC,IAAR,QAAQA,IAAR;EAAA,oBAC1B;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC,0BAAf;IAA0C,GAAG,EAAED,GAA/C;IAAoD,GAAG,EAAEC;EAAzD,EADF,CADF,eAIE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAG,SAAS,EAAC;EAAb,GAA4CA,IAA5C,CADF,CAJF,CAD0B;AAAA,CAA5B;;AAWAF,mBAAmB,CAACG,SAApB,GAAgC;EAC9BF,GAAG,EAAEG,qBAAA,CAAUC,MAAV,CAAiBC,UADQ;EAE9BJ,IAAI,EAAEE,qBAAA,CAAUC,MAAV,CAAiBC;AAFO,CAAhC;eAKeN,mB"}
@@ -63,8 +63,6 @@ var _react = _interopRequireWildcard(require("react"));
63
63
 
64
64
  var _fileUpload = _interopRequireDefault(require("@blaze-react/file-upload"));
65
65
 
66
- var _modal = _interopRequireDefault(require("@blaze-react/modal"));
67
-
68
66
  var _propTypes = _interopRequireDefault(require("prop-types"));
69
67
 
70
68
  var _client = require("@apollo/client");
@@ -511,7 +509,7 @@ var FileUploadAdapter = function FileUploadAdapter(_ref) {
511
509
  actionText: fileUploadButtonText,
512
510
  handleLibraryClick: onOpenLibrary,
513
511
  enableDragAndDrop: false
514
- })), editFile && /*#__PURE__*/_react["default"].createElement(_modal["default"], {
512
+ })), editFile && /*#__PURE__*/_react["default"].createElement(_adminUiUtils.ModalAdapter, {
515
513
  actions: editModalActions,
516
514
  title: "Edit File",
517
515
  onClose: function onClose() {
@@ -525,7 +523,7 @@ var FileUploadAdapter = function FileUploadAdapter(_ref) {
525
523
  previewType: "card"
526
524
  })), displayModal && /*#__PURE__*/_react["default"].createElement("div", {
527
525
  className: "file-upload-modal-wrapper"
528
- }, /*#__PURE__*/_react["default"].createElement(_modal["default"], {
526
+ }, /*#__PURE__*/_react["default"].createElement(_adminUiUtils.ModalAdapter, {
529
527
  actions: modalActions,
530
528
  className: "file-upload-modal",
531
529
  title: "Media library",
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploadAdapter.js","names":["FileUploadAdapter","onChange","label","id","type","value","maxItems","shouldRenderInPreview","canDragAndDrop","FormContext","InjectPreview","currentLimit","displayModal","setDisplayModal","initialValue","currentValue","setCurrentValue","currentOffset","setCurrentOffset","selectedFiles","setSelectedFiles","editFile","setEditFile","client","addToast","getFiles","offset","ids","fetchAll","query","variables","limit","where","_in","skip","length","fetchPolicy","newFiles","data","files","initialFiles","filter","_","i","orderedFiles","orderFiles","fetchMore","shouldFetchAll","newOffset","updatedOffset","offsetToUse","handleSelectedFiles","checkIsUnselecting","isUnselectingFile","valueArray","selectedFilesIds","valueId","includes","parsedValue","filesIds","event","target","name","fileData","handleReorderFiles","map","fileId","closeModalAndSetValue","isSaving","fileUploadButtonText","filesPending","onOpenLibrary","handleEditModal","file","selectedEditFile","find","_id","handleEditFileForm","editedFile","values","valuesChecked","altText","caption","credits","hrefUrl","currentId","Boolean","modalActions","textButton","callback","modifiers","editModalActions","editedFileId","updatedSelectedFiles","selectedFile","mutate","mutation","input","update","cache","fileUpdated","updateFile","writeQuery","result","appearance","autoDismiss","console","error","filesPendingString","MORE","fileListSpan","onUnselectFile","previewerId","fileName","propTypes","PropTypes","func","isRequired","string","oneOfType","array","number","bool","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FileUploadAdapter.js"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport FileUpload from '@blaze-react/file-upload';\nimport Modal from '@blaze-react/modal';\nimport PropTypes from 'prop-types';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { parseFormValues } from '@blaze-cms/react-form-builder';\nimport useToasts from '@blaze-react/toaster/lib/Toast/useToasts';\nimport { MORE } from '../../constants';\nimport ListingContainer from '../ListingContainer';\nimport { MediaContextProvider } from '../../utils/media-context';\nimport FileList from './FileList';\nimport useLimit from './useLimit';\nimport {\n getFormat,\n formatInitialValue,\n transformToArray,\n isUnselecting,\n getButtonText,\n getNumberFilesPendingToFetch\n} from './mappers';\nimport FilePreview from '../FilePreview';\n\nconst FileUploadAdapter = ({\n onChange,\n label,\n id,\n type,\n value,\n maxItems,\n shouldRenderInPreview,\n canDragAndDrop\n}) => {\n const { InjectPreview } = useContext(FileUploadAdapter.FormContext);\n const [currentLimit] = useLimit(maxItems);\n const [displayModal, setDisplayModal] = useState(false);\n const initialValue = formatInitialValue({ value, type });\n const [currentValue, setCurrentValue] = useState(initialValue);\n const [currentOffset, setCurrentOffset] = useState(0);\n const [selectedFiles, setSelectedFiles] = useState([]);\n const [editFile, setEditFile] = useState(null);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const getFiles = async (offset, ids, fetchAll) => {\n const {\n data: { files: newFiles }\n } = await client.query({\n query: getQuery('GET_FILES'),\n variables: {\n limit: fetchAll ? 0 : 4,\n offset,\n where: {\n id: {\n _in: ids\n }\n }\n },\n skip: !currentValue.length,\n fetchPolicy: 'network-only'\n });\n return newFiles;\n };\n\n useEffect(\n () => {\n (async () => {\n const initialFiles = !selectedFiles.length\n ? currentValue.filter((_, i) => i <= 3)\n : currentValue;\n\n const files = await getFiles(0, initialFiles);\n const orderedFiles = orderFiles(files, currentValue);\n setCurrentOffset(0);\n setSelectedFiles(orderedFiles);\n })();\n },\n [currentValue] //eslint-disable-line\n );\n\n const fetchMore = async shouldFetchAll => {\n if (selectedFiles.length === currentValue.length) return;\n const newOffset = currentOffset + 4;\n const updatedOffset = newOffset > currentValue.length ? currentValue.length : newOffset;\n const offsetToUse = shouldFetchAll ? 0 : updatedOffset;\n const files = await getFiles(offsetToUse, currentValue, shouldFetchAll);\n const newFiles = [...selectedFiles, ...files];\n const orderedFiles = orderFiles(newFiles, currentValue);\n setSelectedFiles(orderedFiles);\n setCurrentOffset(newOffset);\n };\n\n const handleSelectedFiles = (files, checkIsUnselecting = true) => {\n const isUnselectingFile = isUnselecting(value, checkIsUnselecting, files);\n if (isUnselectingFile) {\n const valueArray = transformToArray(value);\n const selectedFilesIds = valueArray.filter(valueId => !files.includes(valueId));\n const parsedValue = getFormat(type, { filesIds: selectedFilesIds });\n setCurrentValue(selectedFilesIds);\n return onChange({\n event: {\n target: {\n value: parsedValue,\n name: id,\n type,\n fileData: selectedFilesIds.length ? selectedFilesIds : null\n }\n },\n value: parsedValue\n });\n }\n\n setCurrentValue(files);\n };\n\n const handleReorderFiles = files => {\n const filesIds = files.map(({ id: fileId }) => fileId);\n const parsedValue = getFormat(type, { filesIds });\n setSelectedFiles(files);\n\n return onChange({\n event: {\n target: {\n value: parsedValue,\n name: id,\n type,\n fileData: filesIds\n }\n },\n value: parsedValue\n });\n };\n\n const closeModalAndSetValue = isSaving => {\n if (isSaving) {\n const parsedValue = getFormat(type, { filesIds: currentValue });\n setDisplayModal(false);\n return onChange({\n event: { target: { value: parsedValue, name: id, type, currentValue } },\n value: parsedValue\n });\n }\n\n setCurrentValue(initialValue);\n setDisplayModal(false);\n };\n\n const fileUploadButtonText = getButtonText({ maxItems, value: initialValue });\n\n const filesPending = getNumberFilesPendingToFetch(currentOffset, currentValue);\n const onOpenLibrary = () => setDisplayModal(true);\n const handleEditModal = file => {\n const selectedEditFile = selectedFiles.find(({ id: _id }) => _id === file.id);\n setEditFile(selectedEditFile);\n };\n\n const handleEditFileForm = editedFile => {\n const values = parseFormValues(editedFile.valuesChecked);\n\n const { altText, caption, credits, hrefUrl, name } = values;\n setEditFile({\n ...editFile,\n name,\n data: {\n altText,\n caption,\n credits,\n hrefUrl\n }\n });\n };\n\n const orderFiles = (files, ids) =>\n ids.map(currentId => files.find(({ id: fileId }) => fileId === currentId)).filter(Boolean);\n\n const modalActions = [\n {\n textButton: 'Cancel',\n callback: () => {\n closeModalAndSetValue();\n },\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: () => {\n closeModalAndSetValue(true);\n },\n modifiers: []\n }\n ];\n\n const editModalActions = [\n {\n textButton: 'Cancel',\n callback: () => {\n setEditFile(null);\n },\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: async () => {\n const { name, id: editedFileId, data } = editFile;\n const updatedSelectedFiles = selectedFiles.map(selectedFile => {\n if (selectedFile.id === editedFileId) {\n return { ...selectedFile, name, data };\n }\n return selectedFile;\n });\n setSelectedFiles(updatedSelectedFiles);\n\n try {\n await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: {\n input: {\n name,\n data,\n id: editedFileId\n }\n },\n update(\n cache,\n {\n data: { updateFile: fileUpdated }\n }\n ) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n addToast(`File: ${editFile.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n closeModalAndSetValue(true);\n setEditFile(null);\n } catch (e) {\n addToast(`File: ${editFile.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n },\n modifiers: []\n }\n ];\n const filesPendingString = `${filesPending} ${MORE}`;\n const fileListSpan = filesPending ? (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <span className=\"FileUploadAdapter__preview-link button button--link\" onClick={fetchMore}>\n + {filesPendingString}\n </span>\n ) : null;\n\n return (\n <>\n <div className=\"form-field form-field--button\">\n <label>{label}</label>\n {selectedFiles && (\n <>\n <MediaContextProvider value={{ handleEditModal, onUnselectFile: handleSelectedFiles }}>\n {shouldRenderInPreview ? (\n <InjectPreview selector={FileUploadAdapter.previewerId}>\n <FileList\n selectedFiles={selectedFiles}\n allFiles={currentValue}\n handleReorderFiles={handleReorderFiles}\n canDragAndDrop={canDragAndDrop}\n fetchMore={fetchMore}>\n {fileListSpan}\n </FileList>\n </InjectPreview>\n ) : (\n <FileList\n selectedFiles={selectedFiles}\n handleReorderFiles={handleReorderFiles}\n fetchMore={fetchMore}\n />\n )}\n </MediaContextProvider>\n </>\n )}\n <FileUpload\n actionText={fileUploadButtonText}\n handleLibraryClick={onOpenLibrary}\n enableDragAndDrop={false}\n />\n </div>\n {editFile && (\n <Modal actions={editModalActions} title=\"Edit File\" onClose={() => setEditFile(null)}>\n <FilePreview\n file={editFile}\n fileName={editFile.fileName}\n handleFormChange={handleEditFileForm}\n displayForm\n previewType=\"card\"\n />\n </Modal>\n )}\n {displayModal && (\n <div className=\"file-upload-modal-wrapper\">\n <Modal\n actions={modalActions}\n className=\"file-upload-modal\"\n title=\"Media library\"\n onClose={() => closeModalAndSetValue()}>\n <ListingContainer\n handleSelectedFiles={handleSelectedFiles}\n maxItems={currentLimit}\n filesSelected={currentValue.length > 1 ? currentValue : []}\n />\n </Modal>\n </div>\n )}\n </>\n );\n};\n\nFileUploadAdapter.propTypes = {\n onChange: PropTypes.func.isRequired,\n label: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n maxItems: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n shouldRenderInPreview: PropTypes.bool,\n canDragAndDrop: PropTypes.bool\n};\n\nFileUploadAdapter.defaultProps = {\n value: '',\n maxItems: false,\n shouldRenderInPreview: false,\n canDragAndDrop: false\n};\n\nexport default FileUploadAdapter;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAQA;;;;;;;;;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,OASpB;EAAA,IARJC,QAQI,QARJA,QAQI;EAAA,IAPJC,KAOI,QAPJA,KAOI;EAAA,IANJC,EAMI,QANJA,EAMI;EAAA,IALJC,IAKI,QALJA,IAKI;EAAA,IAJJC,KAII,QAJJA,KAII;EAAA,IAHJC,QAGI,QAHJA,QAGI;EAAA,IAFJC,qBAEI,QAFJA,qBAEI;EAAA,IADJC,cACI,QADJA,cACI;;EACJ,kBAA0B,uBAAWR,iBAAiB,CAACS,WAA7B,CAA1B;EAAA,IAAQC,aAAR,eAAQA,aAAR;;EACA,gBAAuB,2BAASJ,QAAT,CAAvB;EAAA;EAAA,IAAOK,YAAP;;EACA,gBAAwC,qBAAS,KAAT,CAAxC;EAAA;EAAA,IAAOC,YAAP;EAAA,IAAqBC,eAArB;;EACA,IAAMC,YAAY,GAAG,iCAAmB;IAAET,KAAK,EAALA,KAAF;IAASD,IAAI,EAAJA;EAAT,CAAnB,CAArB;;EACA,iBAAwC,qBAASU,YAAT,CAAxC;EAAA;EAAA,IAAOC,YAAP;EAAA,IAAqBC,eAArB;;EACA,iBAA0C,qBAAS,CAAT,CAA1C;EAAA;EAAA,IAAOC,aAAP;EAAA,IAAsBC,gBAAtB;;EACA,iBAA0C,qBAAS,EAAT,CAA1C;EAAA;EAAA,IAAOC,aAAP;EAAA,IAAsBC,gBAAtB;;EACA,iBAAgC,qBAAS,IAAT,CAAhC;EAAA;EAAA,IAAOC,QAAP;EAAA,IAAiBC,WAAjB;;EACA,IAAMC,MAAM,GAAG,8BAAf;;EACA,iBAAqB,6BAArB;EAAA,IAAQC,QAAR,cAAQA,QAAR;;EAEA,IAAMC,QAAQ;IAAA,0FAAG,iBAAOC,MAAP,EAAeC,GAAf,EAAoBC,QAApB;MAAA;;MAAA;QAAA;UAAA;YAAA;cAAA;cAAA,OAGLL,MAAM,CAACM,KAAP,CAAa;gBACrBA,KAAK,EAAE,4BAAS,WAAT,CADc;gBAErBC,SAAS,EAAE;kBACTC,KAAK,EAAEH,QAAQ,GAAG,CAAH,GAAO,CADb;kBAETF,MAAM,EAANA,MAFS;kBAGTM,KAAK,EAAE;oBACL7B,EAAE,EAAE;sBACF8B,GAAG,EAAEN;oBADH;kBADC;gBAHE,CAFU;gBAWrBO,IAAI,EAAE,CAACnB,YAAY,CAACoB,MAXC;gBAYrBC,WAAW,EAAE;cAZQ,CAAb,CAHK;;YAAA;cAAA;cAEEC,QAFF,uBAEbC,IAFa,CAELC,KAFK;cAAA,iCAiBRF,QAjBQ;;YAAA;YAAA;cAAA;UAAA;QAAA;MAAA;IAAA,CAAH;;IAAA,gBAARZ,QAAQ;MAAA;IAAA;EAAA,GAAd;;EAoBA,sBACE,YAAM;IACJ,8EAAC;MAAA;MAAA;QAAA;UAAA;YAAA;cACOe,YADP,GACsB,CAACrB,aAAa,CAACgB,MAAf,GACjBpB,YAAY,CAAC0B,MAAb,CAAoB,UAACC,CAAD,EAAIC,CAAJ;gBAAA,OAAUA,CAAC,IAAI,CAAf;cAAA,CAApB,CADiB,GAEjB5B,YAHL;cAAA;cAAA,OAKqBU,QAAQ,CAAC,CAAD,EAAIe,YAAJ,CAL7B;;YAAA;cAKOD,KALP;cAMOK,YANP,GAMsBC,UAAU,CAACN,KAAD,EAAQxB,YAAR,CANhC;cAOCG,gBAAgB,CAAC,CAAD,CAAhB;cACAE,gBAAgB,CAACwB,YAAD,CAAhB;;YARD;YAAA;cAAA;UAAA;QAAA;MAAA;IAAA,CAAD;EAUD,CAZH,EAaE,CAAC7B,YAAD,CAbF,CAaiB;EAbjB;;EAgBA,IAAM+B,SAAS;IAAA,0FAAG,kBAAMC,cAAN;MAAA;MAAA;QAAA;UAAA;YAAA;cAAA,MACZ5B,aAAa,CAACgB,MAAd,KAAyBpB,YAAY,CAACoB,MAD1B;gBAAA;gBAAA;cAAA;;cAAA;;YAAA;cAEVa,SAFU,GAEE/B,aAAa,GAAG,CAFlB;cAGVgC,aAHU,GAGMD,SAAS,GAAGjC,YAAY,CAACoB,MAAzB,GAAkCpB,YAAY,CAACoB,MAA/C,GAAwDa,SAH9D;cAIVE,WAJU,GAIIH,cAAc,GAAG,CAAH,GAAOE,aAJzB;cAAA;cAAA,OAKIxB,QAAQ,CAACyB,WAAD,EAAcnC,YAAd,EAA4BgC,cAA5B,CALZ;;YAAA;cAKVR,KALU;cAMVF,QANU,iDAMKlB,aANL,uCAMuBoB,KANvB;cAOVK,YAPU,GAOKC,UAAU,CAACR,QAAD,EAAWtB,YAAX,CAPf;cAQhBK,gBAAgB,CAACwB,YAAD,CAAhB;cACA1B,gBAAgB,CAAC8B,SAAD,CAAhB;;YATgB;YAAA;cAAA;UAAA;QAAA;MAAA;IAAA,CAAH;;IAAA,gBAATF,SAAS;MAAA;IAAA;EAAA,GAAf;;EAYA,IAAMK,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACZ,KAAD,EAAsC;IAAA,IAA9Ba,kBAA8B,uEAAT,IAAS;IAChE,IAAMC,iBAAiB,GAAG,4BAAchD,KAAd,EAAqB+C,kBAArB,EAAyCb,KAAzC,CAA1B;;IACA,IAAIc,iBAAJ,EAAuB;MACrB,IAAMC,UAAU,GAAG,+BAAiBjD,KAAjB,CAAnB;MACA,IAAMkD,gBAAgB,GAAGD,UAAU,CAACb,MAAX,CAAkB,UAAAe,OAAO;QAAA,OAAI,CAACjB,KAAK,CAACkB,QAAN,CAAeD,OAAf,CAAL;MAAA,CAAzB,CAAzB;MACA,IAAME,WAAW,GAAG,wBAAUtD,IAAV,EAAgB;QAAEuD,QAAQ,EAAEJ;MAAZ,CAAhB,CAApB;MACAvC,eAAe,CAACuC,gBAAD,CAAf;MACA,OAAOtD,QAAQ,CAAC;QACd2D,KAAK,EAAE;UACLC,MAAM,EAAE;YACNxD,KAAK,EAAEqD,WADD;YAENI,IAAI,EAAE3D,EAFA;YAGNC,IAAI,EAAJA,IAHM;YAIN2D,QAAQ,EAAER,gBAAgB,CAACpB,MAAjB,GAA0BoB,gBAA1B,GAA6C;UAJjD;QADH,CADO;QASdlD,KAAK,EAAEqD;MATO,CAAD,CAAf;IAWD;;IAED1C,eAAe,CAACuB,KAAD,CAAf;EACD,CArBD;;EAuBA,IAAMyB,kBAAkB,GAAG,SAArBA,kBAAqB,CAAAzB,KAAK,EAAI;IAClC,IAAMoB,QAAQ,GAAGpB,KAAK,CAAC0B,GAAN,CAAU;MAAA,IAAOC,MAAP,SAAG/D,EAAH;MAAA,OAAoB+D,MAApB;IAAA,CAAV,CAAjB;IACA,IAAMR,WAAW,GAAG,wBAAUtD,IAAV,EAAgB;MAAEuD,QAAQ,EAARA;IAAF,CAAhB,CAApB;IACAvC,gBAAgB,CAACmB,KAAD,CAAhB;IAEA,OAAOtC,QAAQ,CAAC;MACd2D,KAAK,EAAE;QACLC,MAAM,EAAE;UACNxD,KAAK,EAAEqD,WADD;UAENI,IAAI,EAAE3D,EAFA;UAGNC,IAAI,EAAJA,IAHM;UAIN2D,QAAQ,EAAEJ;QAJJ;MADH,CADO;MASdtD,KAAK,EAAEqD;IATO,CAAD,CAAf;EAWD,CAhBD;;EAkBA,IAAMS,qBAAqB,GAAG,SAAxBA,qBAAwB,CAAAC,QAAQ,EAAI;IACxC,IAAIA,QAAJ,EAAc;MACZ,IAAMV,WAAW,GAAG,wBAAUtD,IAAV,EAAgB;QAAEuD,QAAQ,EAAE5C;MAAZ,CAAhB,CAApB;MACAF,eAAe,CAAC,KAAD,CAAf;MACA,OAAOZ,QAAQ,CAAC;QACd2D,KAAK,EAAE;UAAEC,MAAM,EAAE;YAAExD,KAAK,EAAEqD,WAAT;YAAsBI,IAAI,EAAE3D,EAA5B;YAAgCC,IAAI,EAAJA,IAAhC;YAAsCW,YAAY,EAAZA;UAAtC;QAAV,CADO;QAEdV,KAAK,EAAEqD;MAFO,CAAD,CAAf;IAID;;IAED1C,eAAe,CAACF,YAAD,CAAf;IACAD,eAAe,CAAC,KAAD,CAAf;EACD,CAZD;;EAcA,IAAMwD,oBAAoB,GAAG,4BAAc;IAAE/D,QAAQ,EAARA,QAAF;IAAYD,KAAK,EAAES;EAAnB,CAAd,CAA7B;EAEA,IAAMwD,YAAY,GAAG,2CAA6BrD,aAA7B,EAA4CF,YAA5C,CAArB;;EACA,IAAMwD,aAAa,GAAG,SAAhBA,aAAgB;IAAA,OAAM1D,eAAe,CAAC,IAAD,CAArB;EAAA,CAAtB;;EACA,IAAM2D,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,IAAI,EAAI;IAC9B,IAAMC,gBAAgB,GAAGvD,aAAa,CAACwD,IAAd,CAAmB;MAAA,IAAOC,GAAP,SAAGzE,EAAH;MAAA,OAAiByE,GAAG,KAAKH,IAAI,CAACtE,EAA9B;IAAA,CAAnB,CAAzB;IACAmB,WAAW,CAACoD,gBAAD,CAAX;EACD,CAHD;;EAKA,IAAMG,kBAAkB,GAAG,SAArBA,kBAAqB,CAAAC,UAAU,EAAI;IACvC,IAAMC,MAAM,GAAG,uCAAgBD,UAAU,CAACE,aAA3B,CAAf;IAEA,IAAQC,OAAR,GAAqDF,MAArD,CAAQE,OAAR;IAAA,IAAiBC,OAAjB,GAAqDH,MAArD,CAAiBG,OAAjB;IAAA,IAA0BC,OAA1B,GAAqDJ,MAArD,CAA0BI,OAA1B;IAAA,IAAmCC,OAAnC,GAAqDL,MAArD,CAAmCK,OAAnC;IAAA,IAA4CtB,IAA5C,GAAqDiB,MAArD,CAA4CjB,IAA5C;IACAxC,WAAW,iCACND,QADM;MAETyC,IAAI,EAAJA,IAFS;MAGTxB,IAAI,EAAE;QACJ2C,OAAO,EAAPA,OADI;QAEJC,OAAO,EAAPA,OAFI;QAGJC,OAAO,EAAPA,OAHI;QAIJC,OAAO,EAAPA;MAJI;IAHG,GAAX;EAUD,CAdD;;EAgBA,IAAMvC,UAAU,GAAG,SAAbA,UAAa,CAACN,KAAD,EAAQZ,GAAR;IAAA,OACjBA,GAAG,CAACsC,GAAJ,CAAQ,UAAAoB,SAAS;MAAA,OAAI9C,KAAK,CAACoC,IAAN,CAAW;QAAA,IAAOT,MAAP,SAAG/D,EAAH;QAAA,OAAoB+D,MAAM,KAAKmB,SAA/B;MAAA,CAAX,CAAJ;IAAA,CAAjB,EAA2E5C,MAA3E,CAAkF6C,OAAlF,CADiB;EAAA,CAAnB;;EAGA,IAAMC,YAAY,GAAG,CACnB;IACEC,UAAU,EAAE,QADd;IAEEC,QAAQ,EAAE,oBAAM;MACdtB,qBAAqB;IACtB,CAJH;IAKEuB,SAAS,EAAE,CAAC,QAAD;EALb,CADmB,EAQnB;IACEF,UAAU,EAAE,MADd;IAEEC,QAAQ,EAAE,oBAAM;MACdtB,qBAAqB,CAAC,IAAD,CAArB;IACD,CAJH;IAKEuB,SAAS,EAAE;EALb,CARmB,CAArB;EAiBA,IAAMC,gBAAgB,GAAG,CACvB;IACEH,UAAU,EAAE,QADd;IAEEC,QAAQ,EAAE,oBAAM;MACdnE,WAAW,CAAC,IAAD,CAAX;IACD,CAJH;IAKEoE,SAAS,EAAE,CAAC,QAAD;EALb,CADuB,EAQvB;IACEF,UAAU,EAAE,MADd;IAEEC,QAAQ;MAAA,8FAAE;QAAA;QAAA;UAAA;YAAA;cAAA;gBACA3B,IADA,GACiCzC,QADjC,CACAyC,IADA,EACU8B,YADV,GACiCvE,QADjC,CACMlB,EADN,EACwBmC,IADxB,GACiCjB,QADjC,CACwBiB,IADxB;gBAEFuD,oBAFE,GAEqB1E,aAAa,CAAC8C,GAAd,CAAkB,UAAA6B,YAAY,EAAI;kBAC7D,IAAIA,YAAY,CAAC3F,EAAb,KAAoByF,YAAxB,EAAsC;oBACpC,uCAAYE,YAAZ;sBAA0BhC,IAAI,EAAJA,IAA1B;sBAAgCxB,IAAI,EAAJA;oBAAhC;kBACD;;kBACD,OAAOwD,YAAP;gBACD,CAL4B,CAFrB;gBAQR1E,gBAAgB,CAACyE,oBAAD,CAAhB;gBARQ;gBAAA;gBAAA,OAWAtE,MAAM,CAACwE,MAAP,CAAc;kBAClBC,QAAQ,EAAE,+BAAY,aAAZ,CADQ;kBAElBlE,SAAS,EAAE;oBACTmE,KAAK,EAAE;sBACLnC,IAAI,EAAJA,IADK;sBAELxB,IAAI,EAAJA,IAFK;sBAGLnC,EAAE,EAAEyF;oBAHC;kBADE,CAFO;kBASlBM,MATkB,kBAUhBC,KAVgB,SAchB;oBAAA,IAFsBC,WAEtB,SAFE9D,IAEF,CAFU+D,UAEV;oBACAF,KAAK,CAACG,UAAN,CAAiB;sBACfzE,KAAK,EAAE,4BAAS,gBAAT,CADQ;sBAEfC,SAAS,EAAE;wBAAE3B,EAAE,EAAFA;sBAAF,CAFI;sBAGfmC,IAAI,EAAE;wBAAEmC,IAAI,EAAE2B,WAAW,CAACG;sBAApB;oBAHS,CAAjB;kBAKD;gBApBiB,CAAd,CAXA;;cAAA;gBAkCN/E,QAAQ,iBAAUH,QAAQ,CAACyC,IAAnB,wBAA4C;kBAClD0C,UAAU,EAAE,SADsC;kBAElDC,WAAW,EAAE;gBAFqC,CAA5C,CAAR;gBAIAtC,qBAAqB,CAAC,IAAD,CAArB;gBACA7C,WAAW,CAAC,IAAD,CAAX;gBAvCM;gBAAA;;cAAA;gBAAA;gBAAA;gBAyCNE,QAAQ,iBAAUH,QAAQ,CAACyC,IAAnB,4BAAgD;kBACtD0C,UAAU,EAAE,OAD0C;kBAEtDC,WAAW,EAAE;gBAFyC,CAAhD,CAAR;gBAIAC,OAAO,CAACC,KAAR,eA7CM,CA6CY;;cA7CZ;cAAA;gBAAA;YAAA;UAAA;QAAA;MAAA,CAAF;;MAAA;QAAA;MAAA;;MAAA;IAAA,GAFV;IAkDEjB,SAAS,EAAE;EAlDb,CARuB,CAAzB;EA6DA,IAAMkB,kBAAkB,aAAMtC,YAAN,cAAsBuC,eAAtB,CAAxB;EACA,IAAMC,YAAY,GAAGxC,YAAY;EAAA;EAC/B;EACA;IAAM,SAAS,EAAC,qDAAhB;IAAsE,OAAO,EAAExB;EAA/E,SACK8D,kBADL,CAF+B,GAK7B,IALJ;EAOA,oBACE,+EACE;IAAK,SAAS,EAAC;EAAf,gBACE,+CAAQ1G,KAAR,CADF,EAEGiB,aAAa,iBACZ,+EACE,gCAAC,kCAAD;IAAsB,KAAK,EAAE;MAAEqD,eAAe,EAAfA,eAAF;MAAmBuC,cAAc,EAAE5D;IAAnC;EAA7B,GACG5C,qBAAqB,gBACpB,gCAAC,aAAD;IAAe,QAAQ,EAAEP,iBAAiB,CAACgH;EAA3C,gBACE,gCAAC,oBAAD;IACE,aAAa,EAAE7F,aADjB;IAEE,QAAQ,EAAEJ,YAFZ;IAGE,kBAAkB,EAAEiD,kBAHtB;IAIE,cAAc,EAAExD,cAJlB;IAKE,SAAS,EAAEsC;EALb,GAMGgE,YANH,CADF,CADoB,gBAYpB,gCAAC,oBAAD;IACE,aAAa,EAAE3F,aADjB;IAEE,kBAAkB,EAAE6C,kBAFtB;IAGE,SAAS,EAAElB;EAHb,EAbJ,CADF,CAHJ,eA0BE,gCAAC,sBAAD;IACE,UAAU,EAAEuB,oBADd;IAEE,kBAAkB,EAAEE,aAFtB;IAGE,iBAAiB,EAAE;EAHrB,EA1BF,CADF,EAiCGlD,QAAQ,iBACP,gCAAC,iBAAD;IAAO,OAAO,EAAEsE,gBAAhB;IAAkC,KAAK,EAAC,WAAxC;IAAoD,OAAO,EAAE;MAAA,OAAMrE,WAAW,CAAC,IAAD,CAAjB;IAAA;EAA7D,gBACE,gCAAC,uBAAD;IACE,IAAI,EAAED,QADR;IAEE,QAAQ,EAAEA,QAAQ,CAAC4F,QAFrB;IAGE,gBAAgB,EAAEpC,kBAHpB;IAIE,WAAW,MAJb;IAKE,WAAW,EAAC;EALd,EADF,CAlCJ,EA4CGjE,YAAY,iBACX;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,iBAAD;IACE,OAAO,EAAE2E,YADX;IAEE,SAAS,EAAC,mBAFZ;IAGE,KAAK,EAAC,eAHR;IAIE,OAAO,EAAE;MAAA,OAAMpB,qBAAqB,EAA3B;IAAA;EAJX,gBAKE,gCAAC,4BAAD;IACE,mBAAmB,EAAEhB,mBADvB;IAEE,QAAQ,EAAExC,YAFZ;IAGE,aAAa,EAAEI,YAAY,CAACoB,MAAb,GAAsB,CAAtB,GAA0BpB,YAA1B,GAAyC;EAH1D,EALF,CADF,CA7CJ,CADF;AA8DD,CA5SD;;AA8SAf,iBAAiB,CAACkH,SAAlB,GAA8B;EAC5BjH,QAAQ,EAAEkH,sBAAUC,IAAV,CAAeC,UADG;EAE5BnH,KAAK,EAAEiH,sBAAUG,MAAV,CAAiBD,UAFI;EAG5BlH,EAAE,EAAEgH,sBAAUG,MAAV,CAAiBD,UAHO;EAI5BjH,IAAI,EAAE+G,sBAAUG,MAAV,CAAiBD,UAJK;EAK5BhH,KAAK,EAAE8G,sBAAUI,SAAV,CAAoB,CAACJ,sBAAUG,MAAX,EAAmBH,sBAAUK,KAA7B,CAApB,CALqB;EAM5BlH,QAAQ,EAAE6G,sBAAUI,SAAV,CAAoB,CAACJ,sBAAUM,MAAX,EAAmBN,sBAAUO,IAA7B,CAApB,CANkB;EAO5BnH,qBAAqB,EAAE4G,sBAAUO,IAPL;EAQ5BlH,cAAc,EAAE2G,sBAAUO;AARE,CAA9B;AAWA1H,iBAAiB,CAAC2H,YAAlB,GAAiC;EAC/BtH,KAAK,EAAE,EADwB;EAE/BC,QAAQ,EAAE,KAFqB;EAG/BC,qBAAqB,EAAE,KAHQ;EAI/BC,cAAc,EAAE;AAJe,CAAjC;eAOeR,iB"}
1
+ {"version":3,"file":"FileUploadAdapter.js","names":["FileUploadAdapter","onChange","label","id","type","value","maxItems","shouldRenderInPreview","canDragAndDrop","useContext","FormContext","InjectPreview","useLimit","currentLimit","useState","displayModal","setDisplayModal","initialValue","formatInitialValue","currentValue","setCurrentValue","currentOffset","setCurrentOffset","selectedFiles","setSelectedFiles","editFile","setEditFile","client","useApolloClient","useToasts","addToast","getFiles","offset","ids","fetchAll","query","getQuery","variables","limit","where","_in","skip","length","fetchPolicy","newFiles","data","files","useEffect","initialFiles","filter","_","i","orderedFiles","orderFiles","fetchMore","shouldFetchAll","newOffset","updatedOffset","offsetToUse","handleSelectedFiles","checkIsUnselecting","isUnselectingFile","isUnselecting","valueArray","transformToArray","selectedFilesIds","valueId","includes","parsedValue","getFormat","filesIds","event","target","name","fileData","handleReorderFiles","map","fileId","closeModalAndSetValue","isSaving","fileUploadButtonText","getButtonText","filesPending","getNumberFilesPendingToFetch","onOpenLibrary","handleEditModal","file","selectedEditFile","find","_id","handleEditFileForm","editedFile","values","parseFormValues","valuesChecked","altText","caption","credits","hrefUrl","currentId","Boolean","modalActions","textButton","callback","modifiers","editModalActions","editedFileId","updatedSelectedFiles","selectedFile","mutate","mutation","getMutation","input","update","cache","fileUpdated","updateFile","writeQuery","result","appearance","autoDismiss","console","error","filesPendingString","MORE","fileListSpan","onUnselectFile","previewerId","fileName","propTypes","PropTypes","func","isRequired","string","oneOfType","array","number","bool","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FileUploadAdapter.js"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport FileUpload from '@blaze-react/file-upload';\nimport PropTypes from 'prop-types';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery, getMutation, ModalAdapter as Modal } from '@blaze-cms/admin-ui-utils';\nimport { parseFormValues } from '@blaze-cms/react-form-builder';\nimport useToasts from '@blaze-react/toaster/lib/Toast/useToasts';\nimport { MORE } from '../../constants';\nimport ListingContainer from '../ListingContainer';\nimport { MediaContextProvider } from '../../utils/media-context';\nimport FileList from './FileList';\nimport useLimit from './useLimit';\nimport {\n getFormat,\n formatInitialValue,\n transformToArray,\n isUnselecting,\n getButtonText,\n getNumberFilesPendingToFetch\n} from './mappers';\nimport FilePreview from '../FilePreview';\n\nconst FileUploadAdapter = ({\n onChange,\n label,\n id,\n type,\n value,\n maxItems,\n shouldRenderInPreview,\n canDragAndDrop\n}) => {\n const { InjectPreview } = useContext(FileUploadAdapter.FormContext);\n const [currentLimit] = useLimit(maxItems);\n const [displayModal, setDisplayModal] = useState(false);\n const initialValue = formatInitialValue({ value, type });\n const [currentValue, setCurrentValue] = useState(initialValue);\n const [currentOffset, setCurrentOffset] = useState(0);\n const [selectedFiles, setSelectedFiles] = useState([]);\n const [editFile, setEditFile] = useState(null);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const getFiles = async (offset, ids, fetchAll) => {\n const {\n data: { files: newFiles }\n } = await client.query({\n query: getQuery('GET_FILES'),\n variables: {\n limit: fetchAll ? 0 : 4,\n offset,\n where: {\n id: {\n _in: ids\n }\n }\n },\n skip: !currentValue.length,\n fetchPolicy: 'network-only'\n });\n return newFiles;\n };\n\n useEffect(\n () => {\n (async () => {\n const initialFiles = !selectedFiles.length\n ? currentValue.filter((_, i) => i <= 3)\n : currentValue;\n\n const files = await getFiles(0, initialFiles);\n const orderedFiles = orderFiles(files, currentValue);\n setCurrentOffset(0);\n setSelectedFiles(orderedFiles);\n })();\n },\n [currentValue] //eslint-disable-line\n );\n\n const fetchMore = async shouldFetchAll => {\n if (selectedFiles.length === currentValue.length) return;\n const newOffset = currentOffset + 4;\n const updatedOffset = newOffset > currentValue.length ? currentValue.length : newOffset;\n const offsetToUse = shouldFetchAll ? 0 : updatedOffset;\n const files = await getFiles(offsetToUse, currentValue, shouldFetchAll);\n const newFiles = [...selectedFiles, ...files];\n const orderedFiles = orderFiles(newFiles, currentValue);\n setSelectedFiles(orderedFiles);\n setCurrentOffset(newOffset);\n };\n\n const handleSelectedFiles = (files, checkIsUnselecting = true) => {\n const isUnselectingFile = isUnselecting(value, checkIsUnselecting, files);\n if (isUnselectingFile) {\n const valueArray = transformToArray(value);\n const selectedFilesIds = valueArray.filter(valueId => !files.includes(valueId));\n const parsedValue = getFormat(type, { filesIds: selectedFilesIds });\n setCurrentValue(selectedFilesIds);\n return onChange({\n event: {\n target: {\n value: parsedValue,\n name: id,\n type,\n fileData: selectedFilesIds.length ? selectedFilesIds : null\n }\n },\n value: parsedValue\n });\n }\n\n setCurrentValue(files);\n };\n\n const handleReorderFiles = files => {\n const filesIds = files.map(({ id: fileId }) => fileId);\n const parsedValue = getFormat(type, { filesIds });\n setSelectedFiles(files);\n\n return onChange({\n event: {\n target: {\n value: parsedValue,\n name: id,\n type,\n fileData: filesIds\n }\n },\n value: parsedValue\n });\n };\n\n const closeModalAndSetValue = isSaving => {\n if (isSaving) {\n const parsedValue = getFormat(type, { filesIds: currentValue });\n setDisplayModal(false);\n return onChange({\n event: { target: { value: parsedValue, name: id, type, currentValue } },\n value: parsedValue\n });\n }\n\n setCurrentValue(initialValue);\n setDisplayModal(false);\n };\n\n const fileUploadButtonText = getButtonText({ maxItems, value: initialValue });\n\n const filesPending = getNumberFilesPendingToFetch(currentOffset, currentValue);\n const onOpenLibrary = () => setDisplayModal(true);\n const handleEditModal = file => {\n const selectedEditFile = selectedFiles.find(({ id: _id }) => _id === file.id);\n setEditFile(selectedEditFile);\n };\n\n const handleEditFileForm = editedFile => {\n const values = parseFormValues(editedFile.valuesChecked);\n\n const { altText, caption, credits, hrefUrl, name } = values;\n setEditFile({\n ...editFile,\n name,\n data: {\n altText,\n caption,\n credits,\n hrefUrl\n }\n });\n };\n\n const orderFiles = (files, ids) =>\n ids.map(currentId => files.find(({ id: fileId }) => fileId === currentId)).filter(Boolean);\n\n const modalActions = [\n {\n textButton: 'Cancel',\n callback: () => {\n closeModalAndSetValue();\n },\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: () => {\n closeModalAndSetValue(true);\n },\n modifiers: []\n }\n ];\n\n const editModalActions = [\n {\n textButton: 'Cancel',\n callback: () => {\n setEditFile(null);\n },\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: async () => {\n const { name, id: editedFileId, data } = editFile;\n const updatedSelectedFiles = selectedFiles.map(selectedFile => {\n if (selectedFile.id === editedFileId) {\n return { ...selectedFile, name, data };\n }\n return selectedFile;\n });\n setSelectedFiles(updatedSelectedFiles);\n\n try {\n await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: {\n input: {\n name,\n data,\n id: editedFileId\n }\n },\n update(\n cache,\n {\n data: { updateFile: fileUpdated }\n }\n ) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n addToast(`File: ${editFile.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n closeModalAndSetValue(true);\n setEditFile(null);\n } catch (e) {\n addToast(`File: ${editFile.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n },\n modifiers: []\n }\n ];\n const filesPendingString = `${filesPending} ${MORE}`;\n const fileListSpan = filesPending ? (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <span className=\"FileUploadAdapter__preview-link button button--link\" onClick={fetchMore}>\n + {filesPendingString}\n </span>\n ) : null;\n\n return (\n <>\n <div className=\"form-field form-field--button\">\n <label>{label}</label>\n {selectedFiles && (\n <>\n <MediaContextProvider value={{ handleEditModal, onUnselectFile: handleSelectedFiles }}>\n {shouldRenderInPreview ? (\n <InjectPreview selector={FileUploadAdapter.previewerId}>\n <FileList\n selectedFiles={selectedFiles}\n allFiles={currentValue}\n handleReorderFiles={handleReorderFiles}\n canDragAndDrop={canDragAndDrop}\n fetchMore={fetchMore}>\n {fileListSpan}\n </FileList>\n </InjectPreview>\n ) : (\n <FileList\n selectedFiles={selectedFiles}\n handleReorderFiles={handleReorderFiles}\n fetchMore={fetchMore}\n />\n )}\n </MediaContextProvider>\n </>\n )}\n <FileUpload\n actionText={fileUploadButtonText}\n handleLibraryClick={onOpenLibrary}\n enableDragAndDrop={false}\n />\n </div>\n {editFile && (\n <Modal actions={editModalActions} title=\"Edit File\" onClose={() => setEditFile(null)}>\n <FilePreview\n file={editFile}\n fileName={editFile.fileName}\n handleFormChange={handleEditFileForm}\n displayForm\n previewType=\"card\"\n />\n </Modal>\n )}\n {displayModal && (\n <div className=\"file-upload-modal-wrapper\">\n <Modal\n actions={modalActions}\n className=\"file-upload-modal\"\n title=\"Media library\"\n onClose={() => closeModalAndSetValue()}>\n <ListingContainer\n handleSelectedFiles={handleSelectedFiles}\n maxItems={currentLimit}\n filesSelected={currentValue.length > 1 ? currentValue : []}\n />\n </Modal>\n </div>\n )}\n </>\n );\n};\n\nFileUploadAdapter.propTypes = {\n onChange: PropTypes.func.isRequired,\n label: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n maxItems: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n shouldRenderInPreview: PropTypes.bool,\n canDragAndDrop: PropTypes.bool\n};\n\nFileUploadAdapter.defaultProps = {\n value: '',\n maxItems: false,\n shouldRenderInPreview: false,\n canDragAndDrop: false\n};\n\nexport default FileUploadAdapter;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLimit.js","names":["useLimit","initialLimit","currentLimit","setCurrentLimit","ONE_FILE_AS_LIMIT"],"sources":["../../../src/components/FileUploadAdapter/useLimit.js"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { ONE_FILE_AS_LIMIT } from '../../constants';\n\nfunction useLimit(initialLimit) {\n const [currentLimit, setCurrentLimit] = useState(initialLimit);\n useEffect(\n () => {\n if (initialLimit && currentLimit !== ONE_FILE_AS_LIMIT) {\n setCurrentLimit(ONE_FILE_AS_LIMIT);\n }\n },\n [currentLimit, initialLimit]\n );\n\n return [currentLimit, setCurrentLimit];\n}\n\nexport default useLimit;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,SAASA,QAAT,CAAkBC,YAAlB,EAAgC;EAC9B,gBAAwC,qBAASA,YAAT,CAAxC;EAAA;EAAA,IAAOC,YAAP;EAAA,IAAqBC,eAArB;;EACA,sBACE,YAAM;IACJ,IAAIF,YAAY,IAAIC,YAAY,KAAKE,4BAArC,EAAwD;MACtDD,eAAe,CAACC,4BAAD,CAAf;IACD;EACF,CALH,EAME,CAACF,YAAD,EAAeD,YAAf,CANF;EASA,OAAO,CAACC,YAAD,EAAeC,eAAf,CAAP;AACD;;eAEcH,Q"}
1
+ {"version":3,"file":"useLimit.js","names":["useLimit","initialLimit","useState","currentLimit","setCurrentLimit","useEffect","ONE_FILE_AS_LIMIT"],"sources":["../../../src/components/FileUploadAdapter/useLimit.js"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { ONE_FILE_AS_LIMIT } from '../../constants';\n\nfunction useLimit(initialLimit) {\n const [currentLimit, setCurrentLimit] = useState(initialLimit);\n useEffect(\n () => {\n if (initialLimit && currentLimit !== ONE_FILE_AS_LIMIT) {\n setCurrentLimit(ONE_FILE_AS_LIMIT);\n }\n },\n [currentLimit, initialLimit]\n );\n\n return [currentLimit, setCurrentLimit];\n}\n\nexport default useLimit;\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA,SAASA,QAAT,CAAkBC,YAAlB,EAAgC;EAC9B,gBAAwC,IAAAC,eAAA,EAASD,YAAT,CAAxC;EAAA;EAAA,IAAOE,YAAP;EAAA,IAAqBC,eAArB;;EACA,IAAAC,gBAAA,EACE,YAAM;IACJ,IAAIJ,YAAY,IAAIE,YAAY,KAAKG,4BAArC,EAAwD;MACtDF,eAAe,CAACE,4BAAD,CAAf;IACD;EACF,CALH,EAME,CAACH,YAAD,EAAeF,YAAf,CANF;EASA,OAAO,CAACE,YAAD,EAAeC,eAAf,CAAP;AACD;;eAEcJ,Q"}
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploadModal.js","names":["FileUploadModal","onClose","files","setFiles","addToast","client","addNewFile","fileStoresType","variables","visibleInAdmin","data","getFileStores","storeType","handleFiles","filesToUpload","uploadFiles","Promise","all","map","file","name","fileData","storeKey","mutate","mutation","input","filename","error","message","appearance","autoDismiss","response","parsedResponse","result","fileNames","join","handleOnSave","length","storeOptions","type","key","textButton","callback","modifiers","propTypes","PropTypes","func","defaultProps"],"sources":["../../../src/components/FileUploadModal/FileUploadModal.js"],"sourcesContent":["import React, { useState } from 'react';\nimport Modal from '@blaze-react/modal';\nimport FileUpload from '@blaze-react/file-upload';\nimport PropTypes from 'prop-types';\nimport { getMutation, getQuery } from '@blaze-cms/admin-ui-utils';\nimport { useToasts } from '@blaze-react/toaster';\nimport { useApolloClient, useQuery } from '@apollo/client';\nimport useFileList from '../FileList/useFileList';\n\nconst FileUploadModal = ({ onClose }) => {\n const [files, setFiles] = useState([]);\n const { addToast } = useToasts();\n const client = useApolloClient();\n const { addNewFile } = useFileList();\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n\n const { data: { getFileStores: storeType = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n\n const handleFiles = filesToUpload => {\n setFiles(filesToUpload);\n };\n\n const uploadFiles = async () => {\n const response = await Promise.all(\n files.map(({ file, name, data: fileData, storeKey }) =>\n client.mutate({\n mutation: getMutation('UPLOAD_FILE'),\n variables: {\n input: {\n file,\n name: name || file.filename,\n storeKey,\n data: fileData\n }\n }\n })\n )\n ).catch(error => {\n addToast(error.message, {\n appearance: 'error',\n autoDismiss: true\n });\n });\n\n const parsedResponse = response.map(({ data: { file } }) => file.result);\n\n const fileNames = files.map(({ file }) => file.name);\n addNewFile(parsedResponse);\n addToast(`Uploaded: ${fileNames.join(', ')}`, {\n appearance: 'success',\n autoDismiss: true\n });\n };\n\n const handleOnSave = async () => {\n onClose();\n if (files.length) await uploadFiles();\n };\n\n const storeOptions = storeType.map(type => [type.key, type.name]);\n\n return (\n <>\n <Modal\n onClose={onClose}\n title=\"Add media\"\n actions={[\n {\n textButton: 'Cancel',\n callback: onClose,\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: handleOnSave,\n modifiers: []\n }\n ]}\n upload>\n <FileUpload onChange={handleFiles} selectOptions={storeOptions} />\n </Modal>\n </>\n );\n};\n\nFileUploadModal.propTypes = {\n onClose: PropTypes.func\n};\n\nFileUploadModal.defaultProps = {\n onClose: () => {}\n};\n\nexport default FileUploadModal;\n"],"mappings":"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"}
1
+ {"version":3,"file":"FileUploadModal.js","names":["FileUploadModal","onClose","useState","files","setFiles","useToasts","addToast","client","useApolloClient","useFileList","addNewFile","fileStoresType","getQuery","useQuery","variables","visibleInAdmin","data","getFileStores","storeType","handleFiles","filesToUpload","uploadFiles","Promise","all","map","file","name","fileData","storeKey","mutate","mutation","getMutation","input","filename","error","message","appearance","autoDismiss","response","parsedResponse","result","fileNames","join","handleOnSave","length","storeOptions","type","key","textButton","callback","modifiers","propTypes","PropTypes","func","defaultProps"],"sources":["../../../src/components/FileUploadModal/FileUploadModal.js"],"sourcesContent":["import React, { useState } from 'react';\nimport Modal from '@blaze-react/modal';\nimport FileUpload from '@blaze-react/file-upload';\nimport PropTypes from 'prop-types';\nimport { getMutation, getQuery } from '@blaze-cms/admin-ui-utils';\nimport { useToasts } from '@blaze-react/toaster';\nimport { useApolloClient, useQuery } from '@apollo/client';\nimport useFileList from '../FileList/useFileList';\n\nconst FileUploadModal = ({ onClose }) => {\n const [files, setFiles] = useState([]);\n const { addToast } = useToasts();\n const client = useApolloClient();\n const { addNewFile } = useFileList();\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n\n const { data: { getFileStores: storeType = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n\n const handleFiles = filesToUpload => {\n setFiles(filesToUpload);\n };\n\n const uploadFiles = async () => {\n const response = await Promise.all(\n files.map(({ file, name, data: fileData, storeKey }) =>\n client.mutate({\n mutation: getMutation('UPLOAD_FILE'),\n variables: {\n input: {\n file,\n name: name || file.filename,\n storeKey,\n data: fileData\n }\n }\n })\n )\n ).catch(error => {\n addToast(error.message, {\n appearance: 'error',\n autoDismiss: true\n });\n });\n\n const parsedResponse = response.map(({ data: { file } }) => file.result);\n\n const fileNames = files.map(({ file }) => file.name);\n addNewFile(parsedResponse);\n addToast(`Uploaded: ${fileNames.join(', ')}`, {\n appearance: 'success',\n autoDismiss: true\n });\n };\n\n const handleOnSave = async () => {\n onClose();\n if (files.length) await uploadFiles();\n };\n\n const storeOptions = storeType.map(type => [type.key, type.name]);\n\n return (\n <>\n <Modal\n onClose={onClose}\n title=\"Add media\"\n actions={[\n {\n textButton: 'Cancel',\n callback: onClose,\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: handleOnSave,\n modifiers: []\n }\n ]}\n upload>\n <FileUpload onChange={handleFiles} selectOptions={storeOptions} />\n </Modal>\n </>\n );\n};\n\nFileUploadModal.propTypes = {\n onClose: PropTypes.func\n};\n\nFileUploadModal.defaultProps = {\n onClose: () => {}\n};\n\nexport default FileUploadModal;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FilterPanel.js","names":["FilterPanel","searchTerm","setSearchTerm","MediaContext","filters","selectedFilter","changeSelectedFilter","fileStores","queryParams","data","id","active","setActive","handleSearchTerm","value","target","storeKey","onChangeFilter","filter","isSearch","handleKeyDown","key","trim","onSelectFilter","activeSegements","reduce","acc","index","activeBarSegment","storeOptions","map","type","name","label"],"sources":["../../../src/components/FilterPanel/FilterPanel.js"],"sourcesContent":["/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/anchor-is-valid */\nimport React, { useState, useEffect } from 'react';\nimport { SearchBar } from '@blaze-cms/plugin-search-ui';\nimport classnames from 'classnames';\nimport Select from '@blaze-react/select';\nimport { useMediaContext, MediaContext } from '../../utils/media-context';\nimport useFileList from '../FileList/useFileList';\n\nconst FilterPanel = () => {\n const [searchTerm, setSearchTerm] = useState('');\n const { filters, selectedFilter, changeSelectedFilter, fileStores } = useMediaContext(\n MediaContext\n );\n const { queryParams, data } = useFileList();\n const [active, setActive] = useState(filters[0].id);\n\n useEffect(\n () => {\n if (queryParams.searchTerm === null) {\n setSearchTerm('');\n }\n },\n [queryParams.searchTerm]\n );\n\n const handleSearchTerm = ({ target: { value } }) => {\n setSearchTerm(value);\n };\n\n const storeKey = selectedFilter.storeKey || '';\n\n const onChangeFilter = id => {\n setActive(id);\n searchTerm\n ? changeSelectedFilter({\n filter: id,\n isSearch: true,\n searchTerm,\n storeKey\n })\n : changeSelectedFilter({\n filter: id,\n isSearch: false,\n searchTerm: null,\n storeKey\n });\n };\n\n const handleKeyDown = ({ key }) => {\n if (key === 'Enter') {\n searchTerm\n ? changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: true,\n searchTerm: searchTerm.trim(),\n storeKey\n })\n : changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: false,\n searchTerm: null,\n storeKey\n });\n }\n };\n\n const onSelectFilter = ({ value }) => {\n searchTerm\n ? changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: true,\n searchTerm: searchTerm.trim(),\n storeKey: value\n })\n : changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: false,\n searchTerm: null,\n storeKey: value\n });\n };\n\n const activeSegements = filters.reduce((acc, { id }, index) => {\n acc[`active-${index}`] = active === id;\n return acc;\n }, {});\n const activeBarSegment = classnames('filter-panel__barWrapper--active', activeSegements);\n const storeOptions = (fileStores || []).map(type => [type.key, type.name]);\n\n return (\n <div className=\"filter-panel\">\n <div className=\"filter-panel__wrapper\">\n <ul className=\"filter-panel__list\">\n {filters.map(\n ({ label, id }) =>\n selectedFilter.filter !== id ? (\n <li key={label} className=\"filter-panel__list-item\">\n <a onClick={() => onChangeFilter(id)}>\n {label} ({data[id]})\n </a>\n </li>\n ) : (\n <li key={label} className=\"filter-panel__list-item active\">\n {label} ({data[id]})\n </li>\n )\n )}\n </ul>\n <div className=\"filter-panel__barWrapper\">\n <div className={activeBarSegment} />\n </div>\n </div>\n <div className=\"filter-panel__searchBarWrapper\">\n <div className=\"select__wrapper\">\n <Select\n options={storeOptions}\n onChange={onSelectFilter}\n selected={selectedFilter.storeKey}\n />\n </div>\n <SearchBar\n search={() =>\n changeSelectedFilter({ filter: selectedFilter.filter, isSearch: true, searchTerm })\n }\n handleKeyDown={handleKeyDown}\n searchTerm={searchTerm}\n handleSearchTerm={handleSearchTerm}\n placeholder=\"Search term here...\"\n close={false}\n />\n </div>\n </div>\n );\n};\n\nexport default FilterPanel;\n"],"mappings":"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"}
1
+ {"version":3,"file":"FilterPanel.js","names":["FilterPanel","useState","searchTerm","setSearchTerm","useMediaContext","MediaContext","filters","selectedFilter","changeSelectedFilter","fileStores","useFileList","queryParams","data","id","active","setActive","useEffect","handleSearchTerm","value","target","storeKey","onChangeFilter","filter","isSearch","handleKeyDown","key","trim","onSelectFilter","activeSegements","reduce","acc","index","activeBarSegment","classnames","storeOptions","map","type","name","label"],"sources":["../../../src/components/FilterPanel/FilterPanel.js"],"sourcesContent":["/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/anchor-is-valid */\nimport React, { useState, useEffect } from 'react';\nimport { SearchBar } from '@blaze-cms/plugin-search-ui';\nimport classnames from 'classnames';\nimport Select from '@blaze-react/select';\nimport { useMediaContext, MediaContext } from '../../utils/media-context';\nimport useFileList from '../FileList/useFileList';\n\nconst FilterPanel = () => {\n const [searchTerm, setSearchTerm] = useState('');\n const { filters, selectedFilter, changeSelectedFilter, fileStores } = useMediaContext(\n MediaContext\n );\n const { queryParams, data } = useFileList();\n const [active, setActive] = useState(filters[0].id);\n\n useEffect(\n () => {\n if (queryParams.searchTerm === null) {\n setSearchTerm('');\n }\n },\n [queryParams.searchTerm]\n );\n\n const handleSearchTerm = ({ target: { value } }) => {\n setSearchTerm(value);\n };\n\n const storeKey = selectedFilter.storeKey || '';\n\n const onChangeFilter = id => {\n setActive(id);\n searchTerm\n ? changeSelectedFilter({\n filter: id,\n isSearch: true,\n searchTerm,\n storeKey\n })\n : changeSelectedFilter({\n filter: id,\n isSearch: false,\n searchTerm: null,\n storeKey\n });\n };\n\n const handleKeyDown = ({ key }) => {\n if (key === 'Enter') {\n searchTerm\n ? changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: true,\n searchTerm: searchTerm.trim(),\n storeKey\n })\n : changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: false,\n searchTerm: null,\n storeKey\n });\n }\n };\n\n const onSelectFilter = ({ value }) => {\n searchTerm\n ? changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: true,\n searchTerm: searchTerm.trim(),\n storeKey: value\n })\n : changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: false,\n searchTerm: null,\n storeKey: value\n });\n };\n\n const activeSegements = filters.reduce((acc, { id }, index) => {\n acc[`active-${index}`] = active === id;\n return acc;\n }, {});\n const activeBarSegment = classnames('filter-panel__barWrapper--active', activeSegements);\n const storeOptions = (fileStores || []).map(type => [type.key, type.name]);\n\n return (\n <div className=\"filter-panel\">\n <div className=\"filter-panel__wrapper\">\n <ul className=\"filter-panel__list\">\n {filters.map(\n ({ label, id }) =>\n selectedFilter.filter !== id ? (\n <li key={label} className=\"filter-panel__list-item\">\n <a onClick={() => onChangeFilter(id)}>\n {label} ({data[id]})\n </a>\n </li>\n ) : (\n <li key={label} className=\"filter-panel__list-item active\">\n {label} ({data[id]})\n </li>\n )\n )}\n </ul>\n <div className=\"filter-panel__barWrapper\">\n <div className={activeBarSegment} />\n </div>\n </div>\n <div className=\"filter-panel__searchBarWrapper\">\n <div className=\"select__wrapper\">\n <Select\n options={storeOptions}\n onChange={onSelectFilter}\n selected={selectedFilter.storeKey}\n />\n </div>\n <SearchBar\n search={() =>\n changeSelectedFilter({ filter: selectedFilter.filter, isSearch: true, searchTerm })\n }\n handleKeyDown={handleKeyDown}\n searchTerm={searchTerm}\n handleSearchTerm={handleSearchTerm}\n placeholder=\"Search term here...\"\n close={false}\n />\n </div>\n </div>\n );\n};\n\nexport default FilterPanel;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Listing.js","names":["Listing","displayFileUploadModal","handleDisplayFileUploadModal","propTypes","PropTypes","bool","func","defaultProps"],"sources":["../../../../src/components/ListingContainer/Listing/Listing.js"],"sourcesContent":["import React from 'react';\nimport { PageHeader } from '@blaze-cms/admin';\nimport Button from '@blaze-react/button';\nimport More from '@blaze-react/more';\nimport PropTypes from 'prop-types';\nimport FileUploadModal from '../../FileUploadModal';\nimport MediaListing from './MediaListing';\nimport FilterPanel from '../../FilterPanel';\n\nconst Listing = ({ displayFileUploadModal, handleDisplayFileUploadModal }) => (\n <div className=\"page\">\n {displayFileUploadModal && (\n <FileUploadModal onClose={() => handleDisplayFileUploadModal(false)} />\n )}\n <PageHeader title=\"Media library\">\n <PageHeader.Actions>\n <Button\n modifiers={['small']}\n onClick={() => {\n handleDisplayFileUploadModal(true);\n }}>\n Add\n </Button>\n <More displayBg>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu />\n </More>\n </PageHeader.Actions>\n </PageHeader>\n <div className=\"page__content page__content--with-side-panel\">\n <FilterPanel />\n <MediaListing />\n </div>\n </div>\n);\n\nListing.propTypes = {\n displayFileUploadModal: PropTypes.bool,\n handleDisplayFileUploadModal: PropTypes.func\n};\n\nListing.defaultProps = {\n displayFileUploadModal: false,\n handleDisplayFileUploadModal: () => {}\n};\n\nexport default Listing;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,OAAO,GAAG,SAAVA,OAAU;EAAA,IAAGC,sBAAH,QAAGA,sBAAH;EAAA,IAA2BC,4BAA3B,QAA2BA,4BAA3B;EAAA,oBACd;IAAK,SAAS,EAAC;EAAf,GACGD,sBAAsB,iBACrB,gCAAC,2BAAD;IAAiB,OAAO,EAAE;MAAA,OAAMC,4BAA4B,CAAC,KAAD,CAAlC;IAAA;EAA1B,EAFJ,eAIE,gCAAC,iBAAD;IAAY,KAAK,EAAC;EAAlB,gBACE,gCAAC,iBAAD,CAAY,OAAZ,qBACE,gCAAC,kBAAD;IACE,SAAS,EAAE,CAAC,OAAD,CADb;IAEE,OAAO,EAAE,mBAAM;MACbA,4BAA4B,CAAC,IAAD,CAA5B;IACD;EAJH,SADF,eAQE,gCAAC,gBAAD;IAAM,SAAS;EAAf,gBACE,gCAAC,gBAAD,CAAM,MAAN;IAAa,UAAU;EAAvB,gBACE;IAAM,SAAS,EAAC;EAAhB,eADF,CADF,eAIE,gCAAC,gBAAD,CAAM,OAAN;IAAc,UAAU;EAAxB,EAJF,CARF,CADF,CAJF,eAqBE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,uBAAD,OADF,eAEE,gCAAC,wBAAD,OAFF,CArBF,CADc;AAAA,CAAhB;;AA6BAF,OAAO,CAACG,SAAR,GAAoB;EAClBF,sBAAsB,EAAEG,sBAAUC,IADhB;EAElBH,4BAA4B,EAAEE,sBAAUE;AAFtB,CAApB;AAKAN,OAAO,CAACO,YAAR,GAAuB;EACrBN,sBAAsB,EAAE,KADH;EAErBC,4BAA4B,EAAE,wCAAM,CAAE;AAFjB,CAAvB;eAKeF,O"}
1
+ {"version":3,"file":"Listing.js","names":["Listing","displayFileUploadModal","handleDisplayFileUploadModal","propTypes","PropTypes","bool","func","defaultProps"],"sources":["../../../../src/components/ListingContainer/Listing/Listing.js"],"sourcesContent":["import React from 'react';\nimport { PageHeader } from '@blaze-cms/admin';\nimport Button from '@blaze-react/button';\nimport More from '@blaze-react/more';\nimport PropTypes from 'prop-types';\nimport FileUploadModal from '../../FileUploadModal';\nimport MediaListing from './MediaListing';\nimport FilterPanel from '../../FilterPanel';\n\nconst Listing = ({ displayFileUploadModal, handleDisplayFileUploadModal }) => (\n <div className=\"page\">\n {displayFileUploadModal && (\n <FileUploadModal onClose={() => handleDisplayFileUploadModal(false)} />\n )}\n <PageHeader title=\"Media library\">\n <PageHeader.Actions>\n <Button\n modifiers={['small']}\n onClick={() => {\n handleDisplayFileUploadModal(true);\n }}>\n Add\n </Button>\n <More displayBg>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu />\n </More>\n </PageHeader.Actions>\n </PageHeader>\n <div className=\"page__content page__content--with-side-panel\">\n <FilterPanel />\n <MediaListing />\n </div>\n </div>\n);\n\nListing.propTypes = {\n displayFileUploadModal: PropTypes.bool,\n handleDisplayFileUploadModal: PropTypes.func\n};\n\nListing.defaultProps = {\n displayFileUploadModal: false,\n handleDisplayFileUploadModal: () => {}\n};\n\nexport default Listing;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA,IAAMA,OAAO,GAAG,SAAVA,OAAU;EAAA,IAAGC,sBAAH,QAAGA,sBAAH;EAAA,IAA2BC,4BAA3B,QAA2BA,4BAA3B;EAAA,oBACd;IAAK,SAAS,EAAC;EAAf,GACGD,sBAAsB,iBACrB,gCAAC,2BAAD;IAAiB,OAAO,EAAE;MAAA,OAAMC,4BAA4B,CAAC,KAAD,CAAlC;IAAA;EAA1B,EAFJ,eAIE,gCAAC,iBAAD;IAAY,KAAK,EAAC;EAAlB,gBACE,gCAAC,iBAAD,CAAY,OAAZ,qBACE,gCAAC,kBAAD;IACE,SAAS,EAAE,CAAC,OAAD,CADb;IAEE,OAAO,EAAE,mBAAM;MACbA,4BAA4B,CAAC,IAAD,CAA5B;IACD;EAJH,SADF,eAQE,gCAAC,gBAAD;IAAM,SAAS;EAAf,gBACE,gCAAC,gBAAD,CAAM,MAAN;IAAa,UAAU;EAAvB,gBACE;IAAM,SAAS,EAAC;EAAhB,eADF,CADF,eAIE,gCAAC,gBAAD,CAAM,OAAN;IAAc,UAAU;EAAxB,EAJF,CARF,CADF,CAJF,eAqBE;IAAK,SAAS,EAAC;EAAf,gBACE,gCAAC,uBAAD,OADF,eAEE,gCAAC,wBAAD,OAFF,CArBF,CADc;AAAA,CAAhB;;AA6BAF,OAAO,CAACG,SAAR,GAAoB;EAClBF,sBAAsB,EAAEG,qBAAA,CAAUC,IADhB;EAElBH,4BAA4B,EAAEE,qBAAA,CAAUE;AAFtB,CAApB;AAKAN,OAAO,CAACO,YAAR,GAAuB;EACrBN,sBAAsB,EAAE,KADH;EAErBC,4BAA4B,EAAE,wCAAM,CAAE;AAFjB,CAAvB;eAKeF,O"}
@@ -1 +1 @@
1
- {"version":3,"file":"MediaFileList.js","names":["MediaFileList","displayCardPrompt","setDisplayCardPrompt","displayLayout","wrapperRef","modalTargetRef","currentListIndex","setCurrentListIndex","verifiedRanges","setVerifiedRanges","listHeight","setListHeight","queryParams","data","loading","setQueryParams","clearList","removeFile","updateFile","MediaContext","onClickPrompt","getSelectedFiles","selectedFiles","selectedFilter","where","AVAILABLE_FILTER_TYPES","filter","storeKey","isSearch","searchTerm","handleRenderedItems","startIndex","rowsLength","files","length","loadIndex","Math","floor","MEDIA_OVER_SCAN_COUNT","includes","offset","handleListHeight","current","clientHeight","window","addEventListener","removeEventListener","searchedTerm","MEDIA_LIST_ITEM_SIZE","index","style","name","url","mimetype","id","isSelected","propTypes","PropTypes","func","isRequired","bool","string","object","defaultProps"],"sources":["../../../../../../src/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { CardPrompt } from '@blaze-cms/admin';\nimport Button from '@blaze-react/button';\nimport VirtualList from 'react-tiny-virtual-list';\nimport { useMediaContext, MediaContext } from '../../../../../utils/media-context';\nimport CardMedia from '../../../../CardMedia';\nimport { existPrevious } from '../../../mappers';\nimport useFileList from '../../../../FileList/useFileList';\nimport {\n MEDIA_LIST_ITEM_SIZE,\n MEDIA_OVER_SCAN_COUNT,\n AVAILABLE_FILTER_TYPES\n} from '../../../../../constants';\n\nconst MediaFileList = ({\n displayCardPrompt,\n setDisplayCardPrompt,\n displayLayout,\n wrapperRef,\n modalTargetRef\n}) => {\n const [currentListIndex, setCurrentListIndex] = useState(1);\n const [verifiedRanges, setVerifiedRanges] = useState([]);\n const [listHeight, setListHeight] = useState(null);\n const {\n queryParams,\n data,\n loading,\n setQueryParams,\n clearList,\n removeFile,\n updateFile\n } = useFileList();\n const { onClickPrompt, getSelectedFiles, selectedFiles, selectedFilter } = useMediaContext(\n MediaContext\n );\n\n useEffect(\n () => {\n setVerifiedRanges([]);\n setCurrentListIndex(0);\n setQueryParams({\n where: {\n ...AVAILABLE_FILTER_TYPES[selectedFilter.filter],\n storeKey: selectedFilter.storeKey\n },\n isSearch: selectedFilter.isSearch,\n searchTerm: selectedFilter.searchTerm\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n selectedFilter.filter,\n selectedFilter.storeKey,\n selectedFilter.isSearch,\n selectedFilter.searchTerm\n ]\n );\n\n const handleRenderedItems = ({ startIndex }) => {\n const rowsLength = data.files.length;\n const loadIndex = Math.floor(rowsLength / 3) - MEDIA_OVER_SCAN_COUNT;\n\n if (loadIndex > 0 && loadIndex < startIndex && !verifiedRanges.includes(loadIndex)) {\n setQueryParams({\n offset: data.files.length,\n where: {\n ...AVAILABLE_FILTER_TYPES[selectedFilter.filter],\n storeKey: selectedFilter.storeKey\n },\n isSearch: selectedFilter.isSearch,\n searchTerm: selectedFilter.searchTerm\n });\n setVerifiedRanges([...verifiedRanges, loadIndex]);\n setCurrentListIndex(startIndex + MEDIA_OVER_SCAN_COUNT);\n }\n };\n\n useEffect(\n () => {\n const handleListHeight = () => {\n setListHeight(wrapperRef.current.clientHeight - 40);\n };\n\n if (wrapperRef.current) {\n if (!listHeight) {\n handleListHeight();\n }\n\n window.addEventListener('resize', handleListHeight);\n }\n return () => {\n window.removeEventListener('resize', handleListHeight);\n };\n },\n [listHeight, wrapperRef]\n );\n\n const searchedTerm = queryParams.searchTerm && `${queryParams.searchTerm} -`;\n\n return (\n <>\n {data.files && data.files.length ? (\n <>\n <p className=\"media__fileList-counter\">\n {searchedTerm} {data[selectedFilter.filter]} items\n </p>\n <VirtualList\n width=\"100%\"\n height={listHeight}\n itemCount={data.files.length}\n itemSize={MEDIA_LIST_ITEM_SIZE}\n overscanCount={MEDIA_OVER_SCAN_COUNT}\n scrollToIndex={currentListIndex}\n onItemsRendered={handleRenderedItems}\n renderItem={({ index, style }) => {\n const { name, url, mimetype, id } = data.files[index];\n const isSelected = existPrevious(selectedFiles, id);\n return (\n <div key={index} style={style} className=\"list__item--resultWrapper\">\n <CardMedia\n updateFile={updateFile}\n clearList={clearList}\n latestQueryToRefetchParams={queryParams}\n modalTargetRef={modalTargetRef}\n onSelected={getSelectedFiles}\n key={id}\n displayLayout={displayLayout}\n selected={!!isSelected}\n name={name}\n url={url}\n mimetype={mimetype}\n id={id}\n index={index}\n removeFile={removeFile}\n />\n </div>\n );\n }}\n />\n </>\n ) : null}\n {!loading && data.files && !data.files.length && displayCardPrompt ? (\n <CardPrompt\n onClose={() => {\n setDisplayCardPrompt(false);\n }}>\n <Button onClick={onClickPrompt} className=\"button button--rounded button--cta\">\n Add\n </Button>\n </CardPrompt>\n ) : null}\n </>\n );\n};\n\nMediaFileList.propTypes = {\n setDisplayCardPrompt: PropTypes.func.isRequired,\n displayCardPrompt: PropTypes.bool,\n displayLayout: PropTypes.string.isRequired,\n wrapperRef: PropTypes.object.isRequired,\n modalTargetRef: PropTypes.object.isRequired\n};\n\nMediaFileList.defaultProps = {\n displayCardPrompt: true\n};\n\nexport default MediaFileList;\n"],"mappings":"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"}
1
+ {"version":3,"file":"MediaFileList.js","names":["MediaFileList","displayCardPrompt","setDisplayCardPrompt","displayLayout","wrapperRef","modalTargetRef","useState","currentListIndex","setCurrentListIndex","verifiedRanges","setVerifiedRanges","listHeight","setListHeight","useFileList","queryParams","data","loading","setQueryParams","clearList","removeFile","updateFile","useMediaContext","MediaContext","onClickPrompt","getSelectedFiles","selectedFiles","selectedFilter","useEffect","where","AVAILABLE_FILTER_TYPES","filter","storeKey","isSearch","searchTerm","handleRenderedItems","startIndex","rowsLength","files","length","loadIndex","Math","floor","MEDIA_OVER_SCAN_COUNT","includes","offset","handleListHeight","current","clientHeight","window","addEventListener","removeEventListener","searchedTerm","MEDIA_LIST_ITEM_SIZE","index","style","name","url","mimetype","id","isSelected","existPrevious","propTypes","PropTypes","func","isRequired","bool","string","object","defaultProps"],"sources":["../../../../../../src/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { CardPrompt } from '@blaze-cms/admin';\nimport Button from '@blaze-react/button';\nimport VirtualList from 'react-tiny-virtual-list';\nimport { useMediaContext, MediaContext } from '../../../../../utils/media-context';\nimport CardMedia from '../../../../CardMedia';\nimport { existPrevious } from '../../../mappers';\nimport useFileList from '../../../../FileList/useFileList';\nimport {\n MEDIA_LIST_ITEM_SIZE,\n MEDIA_OVER_SCAN_COUNT,\n AVAILABLE_FILTER_TYPES\n} from '../../../../../constants';\n\nconst MediaFileList = ({\n displayCardPrompt,\n setDisplayCardPrompt,\n displayLayout,\n wrapperRef,\n modalTargetRef\n}) => {\n const [currentListIndex, setCurrentListIndex] = useState(1);\n const [verifiedRanges, setVerifiedRanges] = useState([]);\n const [listHeight, setListHeight] = useState(null);\n const {\n queryParams,\n data,\n loading,\n setQueryParams,\n clearList,\n removeFile,\n updateFile\n } = useFileList();\n const { onClickPrompt, getSelectedFiles, selectedFiles, selectedFilter } = useMediaContext(\n MediaContext\n );\n\n useEffect(\n () => {\n setVerifiedRanges([]);\n setCurrentListIndex(0);\n setQueryParams({\n where: {\n ...AVAILABLE_FILTER_TYPES[selectedFilter.filter],\n storeKey: selectedFilter.storeKey\n },\n isSearch: selectedFilter.isSearch,\n searchTerm: selectedFilter.searchTerm\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n selectedFilter.filter,\n selectedFilter.storeKey,\n selectedFilter.isSearch,\n selectedFilter.searchTerm\n ]\n );\n\n const handleRenderedItems = ({ startIndex }) => {\n const rowsLength = data.files.length;\n const loadIndex = Math.floor(rowsLength / 3) - MEDIA_OVER_SCAN_COUNT;\n\n if (loadIndex > 0 && loadIndex < startIndex && !verifiedRanges.includes(loadIndex)) {\n setQueryParams({\n offset: data.files.length,\n where: {\n ...AVAILABLE_FILTER_TYPES[selectedFilter.filter],\n storeKey: selectedFilter.storeKey\n },\n isSearch: selectedFilter.isSearch,\n searchTerm: selectedFilter.searchTerm\n });\n setVerifiedRanges([...verifiedRanges, loadIndex]);\n setCurrentListIndex(startIndex + MEDIA_OVER_SCAN_COUNT);\n }\n };\n\n useEffect(\n () => {\n const handleListHeight = () => {\n setListHeight(wrapperRef.current.clientHeight - 40);\n };\n\n if (wrapperRef.current) {\n if (!listHeight) {\n handleListHeight();\n }\n\n window.addEventListener('resize', handleListHeight);\n }\n return () => {\n window.removeEventListener('resize', handleListHeight);\n };\n },\n [listHeight, wrapperRef]\n );\n\n const searchedTerm = queryParams.searchTerm && `${queryParams.searchTerm} -`;\n\n return (\n <>\n {data.files && data.files.length ? (\n <>\n <p className=\"media__fileList-counter\">\n {searchedTerm} {data[selectedFilter.filter]} items\n </p>\n <VirtualList\n width=\"100%\"\n height={listHeight}\n itemCount={data.files.length}\n itemSize={MEDIA_LIST_ITEM_SIZE}\n overscanCount={MEDIA_OVER_SCAN_COUNT}\n scrollToIndex={currentListIndex}\n onItemsRendered={handleRenderedItems}\n renderItem={({ index, style }) => {\n const { name, url, mimetype, id } = data.files[index];\n const isSelected = existPrevious(selectedFiles, id);\n return (\n <div key={index} style={style} className=\"list__item--resultWrapper\">\n <CardMedia\n updateFile={updateFile}\n clearList={clearList}\n latestQueryToRefetchParams={queryParams}\n modalTargetRef={modalTargetRef}\n onSelected={getSelectedFiles}\n key={id}\n displayLayout={displayLayout}\n selected={!!isSelected}\n name={name}\n url={url}\n mimetype={mimetype}\n id={id}\n index={index}\n removeFile={removeFile}\n />\n </div>\n );\n }}\n />\n </>\n ) : null}\n {!loading && data.files && !data.files.length && displayCardPrompt ? (\n <CardPrompt\n onClose={() => {\n setDisplayCardPrompt(false);\n }}>\n <Button onClick={onClickPrompt} className=\"button button--rounded button--cta\">\n Add\n </Button>\n </CardPrompt>\n ) : null}\n </>\n );\n};\n\nMediaFileList.propTypes = {\n setDisplayCardPrompt: PropTypes.func.isRequired,\n displayCardPrompt: PropTypes.bool,\n displayLayout: PropTypes.string.isRequired,\n wrapperRef: PropTypes.object.isRequired,\n modalTargetRef: PropTypes.object.isRequired\n};\n\nMediaFileList.defaultProps = {\n displayCardPrompt: true\n};\n\nexport default MediaFileList;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAMA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAMhB;EAAA,IALJC,iBAKI,QALJA,iBAKI;EAAA,IAJJC,oBAII,QAJJA,oBAII;EAAA,IAHJC,aAGI,QAHJA,aAGI;EAAA,IAFJC,UAEI,QAFJA,UAEI;EAAA,IADJC,cACI,QADJA,cACI;;EACJ,gBAAgD,IAAAC,eAAA,EAAS,CAAT,CAAhD;EAAA;EAAA,IAAOC,gBAAP;EAAA,IAAyBC,mBAAzB;;EACA,iBAA4C,IAAAF,eAAA,EAAS,EAAT,CAA5C;EAAA;EAAA,IAAOG,cAAP;EAAA,IAAuBC,iBAAvB;;EACA,iBAAoC,IAAAJ,eAAA,EAAS,IAAT,CAApC;EAAA;EAAA,IAAOK,UAAP;EAAA,IAAmBC,aAAnB;;EACA,mBAQI,IAAAC,wBAAA,GARJ;EAAA,IACEC,WADF,gBACEA,WADF;EAAA,IAEEC,IAFF,gBAEEA,IAFF;EAAA,IAGEC,OAHF,gBAGEA,OAHF;EAAA,IAIEC,cAJF,gBAIEA,cAJF;EAAA,IAKEC,SALF,gBAKEA,SALF;EAAA,IAMEC,UANF,gBAMEA,UANF;EAAA,IAOEC,UAPF,gBAOEA,UAPF;;EASA,uBAA2E,IAAAC,6BAAA,EACzEC,0BADyE,CAA3E;EAAA,IAAQC,aAAR,oBAAQA,aAAR;EAAA,IAAuBC,gBAAvB,oBAAuBA,gBAAvB;EAAA,IAAyCC,aAAzC,oBAAyCA,aAAzC;EAAA,IAAwDC,cAAxD,oBAAwDA,cAAxD;;EAIA,IAAAC,gBAAA,EACE,YAAM;IACJjB,iBAAiB,CAAC,EAAD,CAAjB;IACAF,mBAAmB,CAAC,CAAD,CAAnB;IACAS,cAAc,CAAC;MACbW,KAAK,kCACAC,iCAAA,CAAuBH,cAAc,CAACI,MAAtC,CADA;QAEHC,QAAQ,EAAEL,cAAc,CAACK;MAFtB,EADQ;MAKbC,QAAQ,EAAEN,cAAc,CAACM,QALZ;MAMbC,UAAU,EAAEP,cAAc,CAACO;IANd,CAAD,CAAd;EAQD,CAZH,EAaE;EACA,CACEP,cAAc,CAACI,MADjB,EAEEJ,cAAc,CAACK,QAFjB,EAGEL,cAAc,CAACM,QAHjB,EAIEN,cAAc,CAACO,UAJjB,CAdF;;EAsBA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,QAAoB;IAAA,IAAjBC,UAAiB,SAAjBA,UAAiB;IAC9C,IAAMC,UAAU,GAAGrB,IAAI,CAACsB,KAAL,CAAWC,MAA9B;;IACA,IAAMC,SAAS,GAAGC,IAAI,CAACC,KAAL,CAAWL,UAAU,GAAG,CAAxB,IAA6BM,gCAA/C;;IAEA,IAAIH,SAAS,GAAG,CAAZ,IAAiBA,SAAS,GAAGJ,UAA7B,IAA2C,CAAC1B,cAAc,CAACkC,QAAf,CAAwBJ,SAAxB,CAAhD,EAAoF;MAClFtB,cAAc,CAAC;QACb2B,MAAM,EAAE7B,IAAI,CAACsB,KAAL,CAAWC,MADN;QAEbV,KAAK,kCACAC,iCAAA,CAAuBH,cAAc,CAACI,MAAtC,CADA;UAEHC,QAAQ,EAAEL,cAAc,CAACK;QAFtB,EAFQ;QAMbC,QAAQ,EAAEN,cAAc,CAACM,QANZ;QAObC,UAAU,EAAEP,cAAc,CAACO;MAPd,CAAD,CAAd;MASAvB,iBAAiB,+CAAKD,cAAL,IAAqB8B,SAArB,GAAjB;MACA/B,mBAAmB,CAAC2B,UAAU,GAAGO,gCAAd,CAAnB;IACD;EACF,CAjBD;;EAmBA,IAAAf,gBAAA,EACE,YAAM;IACJ,IAAMkB,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;MAC7BjC,aAAa,CAACR,UAAU,CAAC0C,OAAX,CAAmBC,YAAnB,GAAkC,EAAnC,CAAb;IACD,CAFD;;IAIA,IAAI3C,UAAU,CAAC0C,OAAf,EAAwB;MACtB,IAAI,CAACnC,UAAL,EAAiB;QACfkC,gBAAgB;MACjB;;MAEDG,MAAM,CAACC,gBAAP,CAAwB,QAAxB,EAAkCJ,gBAAlC;IACD;;IACD,OAAO,YAAM;MACXG,MAAM,CAACE,mBAAP,CAA2B,QAA3B,EAAqCL,gBAArC;IACD,CAFD;EAGD,CAhBH,EAiBE,CAAClC,UAAD,EAAaP,UAAb,CAjBF;EAoBA,IAAM+C,YAAY,GAAGrC,WAAW,CAACmB,UAAZ,cAA6BnB,WAAW,CAACmB,UAAzC,OAArB;EAEA,oBACE,kEACGlB,IAAI,CAACsB,KAAL,IAActB,IAAI,CAACsB,KAAL,CAAWC,MAAzB,gBACC,+EACE;IAAG,SAAS,EAAC;EAAb,GACGa,YADH,OACkBpC,IAAI,CAACW,cAAc,CAACI,MAAhB,CADtB,WADF,eAIE,gCAAC,gCAAD;IACE,KAAK,EAAC,MADR;IAEE,MAAM,EAAEnB,UAFV;IAGE,SAAS,EAAEI,IAAI,CAACsB,KAAL,CAAWC,MAHxB;IAIE,QAAQ,EAAEc,+BAJZ;IAKE,aAAa,EAAEV,gCALjB;IAME,aAAa,EAAEnC,gBANjB;IAOE,eAAe,EAAE2B,mBAPnB;IAQE,UAAU,EAAE,2BAAsB;MAAA,IAAnBmB,KAAmB,SAAnBA,KAAmB;MAAA,IAAZC,KAAY,SAAZA,KAAY;MAChC,wBAAoCvC,IAAI,CAACsB,KAAL,CAAWgB,KAAX,CAApC;MAAA,IAAQE,IAAR,qBAAQA,IAAR;MAAA,IAAcC,GAAd,qBAAcA,GAAd;MAAA,IAAmBC,QAAnB,qBAAmBA,QAAnB;MAAA,IAA6BC,EAA7B,qBAA6BA,EAA7B;MACA,IAAMC,UAAU,GAAG,IAAAC,sBAAA,EAAcnC,aAAd,EAA6BiC,EAA7B,CAAnB;MACA,oBACE;QAAK,GAAG,EAAEL,KAAV;QAAiB,KAAK,EAAEC,KAAxB;QAA+B,SAAS,EAAC;MAAzC,gBACE,gCAAC,qBAAD;QACE,UAAU,EAAElC,UADd;QAEE,SAAS,EAAEF,SAFb;QAGE,0BAA0B,EAAEJ,WAH9B;QAIE,cAAc,EAAET,cAJlB;QAKE,UAAU,EAAEmB,gBALd;QAME,GAAG,EAAEkC,EANP;QAOE,aAAa,EAAEvD,aAPjB;QAQE,QAAQ,EAAE,CAAC,CAACwD,UARd;QASE,IAAI,EAAEJ,IATR;QAUE,GAAG,EAAEC,GAVP;QAWE,QAAQ,EAAEC,QAXZ;QAYE,EAAE,EAAEC,EAZN;QAaE,KAAK,EAAEL,KAbT;QAcE,UAAU,EAAElC;MAdd,EADF,CADF;IAoBD;EA/BH,EAJF,CADD,GAuCG,IAxCN,EAyCG,CAACH,OAAD,IAAYD,IAAI,CAACsB,KAAjB,IAA0B,CAACtB,IAAI,CAACsB,KAAL,CAAWC,MAAtC,IAAgDrC,iBAAhD,gBACC,gCAAC,iBAAD;IACE,OAAO,EAAE,mBAAM;MACbC,oBAAoB,CAAC,KAAD,CAApB;IACD;EAHH,gBAIE,gCAAC,kBAAD;IAAQ,OAAO,EAAEqB,aAAjB;IAAgC,SAAS,EAAC;EAA1C,SAJF,CADD,GASG,IAlDN,CADF;AAsDD,CA5ID;;AA8IAvB,aAAa,CAAC6D,SAAd,GAA0B;EACxB3D,oBAAoB,EAAE4D,qBAAA,CAAUC,IAAV,CAAeC,UADb;EAExB/D,iBAAiB,EAAE6D,qBAAA,CAAUG,IAFL;EAGxB9D,aAAa,EAAE2D,qBAAA,CAAUI,MAAV,CAAiBF,UAHR;EAIxB5D,UAAU,EAAE0D,qBAAA,CAAUK,MAAV,CAAiBH,UAJL;EAKxB3D,cAAc,EAAEyD,qBAAA,CAAUK,MAAV,CAAiBH;AALT,CAA1B;AAQAhE,aAAa,CAACoE,YAAd,GAA6B;EAC3BnE,iBAAiB,EAAE;AADQ,CAA7B;eAIeD,a"}
@@ -1 +1 @@
1
- {"version":3,"file":"MediaListing.js","names":["MediaListing","displayCardPrompt","setDisplayCardPrompt","mediaFileListWrapperRef","modalTargetRef","state","propTypes"],"sources":["../../../../../src/components/ListingContainer/Listing/MediaListing/MediaListing.js"],"sourcesContent":["import React, { useState, useRef } from 'react';\nimport MediaFileList from './MediaFileList';\n\nconst MediaListing = () => {\n const [displayCardPrompt, setDisplayCardPrompt] = useState(true);\n const mediaFileListWrapperRef = useRef();\n const modalTargetRef = useRef();\n\n return (\n <div className=\"listing listing--media\">\n <div className=\"media\" ref={mediaFileListWrapperRef}>\n <MediaFileList\n modalTargetRef={modalTargetRef}\n wrapperRef={mediaFileListWrapperRef}\n displayCardPrompt={displayCardPrompt}\n setDisplayCardPrompt={state => setDisplayCardPrompt(state)}\n displayLayout=\"list\"\n />\n </div>\n {/* render edit card modal outside of the virtual list */}\n <div ref={modalTargetRef} />\n </div>\n );\n};\n\nMediaListing.propTypes = {};\n\nexport default MediaListing;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,GAAM;EACzB,gBAAkD,qBAAS,IAAT,CAAlD;EAAA;EAAA,IAAOC,iBAAP;EAAA,IAA0BC,qBAA1B;;EACA,IAAMC,uBAAuB,GAAG,oBAAhC;EACA,IAAMC,cAAc,GAAG,oBAAvB;EAEA,oBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC,OAAf;IAAuB,GAAG,EAAED;EAA5B,gBACE,gCAAC,yBAAD;IACE,cAAc,EAAEC,cADlB;IAEE,UAAU,EAAED,uBAFd;IAGE,iBAAiB,EAAEF,iBAHrB;IAIE,oBAAoB,EAAE,8BAAAI,KAAK;MAAA,OAAIH,qBAAoB,CAACG,KAAD,CAAxB;IAAA,CAJ7B;IAKE,aAAa,EAAC;EALhB,EADF,CADF,eAWE;IAAK,GAAG,EAAED;EAAV,EAXF,CADF;AAeD,CApBD;;AAsBAJ,YAAY,CAACM,SAAb,GAAyB,EAAzB;eAEeN,Y"}
1
+ {"version":3,"file":"MediaListing.js","names":["MediaListing","useState","displayCardPrompt","setDisplayCardPrompt","mediaFileListWrapperRef","useRef","modalTargetRef","state","propTypes"],"sources":["../../../../../src/components/ListingContainer/Listing/MediaListing/MediaListing.js"],"sourcesContent":["import React, { useState, useRef } from 'react';\nimport MediaFileList from './MediaFileList';\n\nconst MediaListing = () => {\n const [displayCardPrompt, setDisplayCardPrompt] = useState(true);\n const mediaFileListWrapperRef = useRef();\n const modalTargetRef = useRef();\n\n return (\n <div className=\"listing listing--media\">\n <div className=\"media\" ref={mediaFileListWrapperRef}>\n <MediaFileList\n modalTargetRef={modalTargetRef}\n wrapperRef={mediaFileListWrapperRef}\n displayCardPrompt={displayCardPrompt}\n setDisplayCardPrompt={state => setDisplayCardPrompt(state)}\n displayLayout=\"list\"\n />\n </div>\n {/* render edit card modal outside of the virtual list */}\n <div ref={modalTargetRef} />\n </div>\n );\n};\n\nMediaListing.propTypes = {};\n\nexport default MediaListing;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAe,GAAM;EACzB,gBAAkD,IAAAC,eAAA,EAAS,IAAT,CAAlD;EAAA;EAAA,IAAOC,iBAAP;EAAA,IAA0BC,qBAA1B;;EACA,IAAMC,uBAAuB,GAAG,IAAAC,aAAA,GAAhC;EACA,IAAMC,cAAc,GAAG,IAAAD,aAAA,GAAvB;EAEA,oBACE;IAAK,SAAS,EAAC;EAAf,gBACE;IAAK,SAAS,EAAC,OAAf;IAAuB,GAAG,EAAED;EAA5B,gBACE,gCAAC,yBAAD;IACE,cAAc,EAAEE,cADlB;IAEE,UAAU,EAAEF,uBAFd;IAGE,iBAAiB,EAAEF,iBAHrB;IAIE,oBAAoB,EAAE,8BAAAK,KAAK;MAAA,OAAIJ,qBAAoB,CAACI,KAAD,CAAxB;IAAA,CAJ7B;IAKE,aAAa,EAAC;EALhB,EADF,CADF,eAWE;IAAK,GAAG,EAAED;EAAV,EAXF,CADF;AAeD,CApBD;;AAsBAN,YAAY,CAACQ,SAAb,GAAyB,EAAzB;eAEeR,Y"}
@@ -1 +1 @@
1
- {"version":3,"file":"ListingContainer.js","names":["ListingContainer","handleSelectedFiles","maxItems","filesSelected","displayFileUploadModal","setDisplayFileUploadModal","selectedFiles","setSelectedFiles","filter","isSearch","searchTerm","storeKey","selectedFilter","setSelectedFilter","fileStoresType","variables","visibleInAdmin","loading","data","getFileStores","fileStores","getSelectedFiles","id","existPreviousFile","length","allSelectedFiles","fileId","handleDisplayFileUploadModal","param","defaultFileStore","find","isDefault","key","changeSelectedFilter","value","filters","availableFilters","onClickPrompt","propTypes","PropTypes","func","oneOfType","number","bool","arrayOf","string","defaultProps"],"sources":["../../../src/components/ListingContainer/ListingContainer.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport Listing from './Listing';\nimport { availableFilters } from '../../utils/available-filters/available-filters';\nimport { MediaContextProvider } from '../../utils/media-context';\nimport FilesListProvider from '../FileList/FilesListProvider';\nimport { existPrevious } from './mappers';\n\nconst ListingContainer = ({ handleSelectedFiles, maxItems, filesSelected }) => {\n const [displayFileUploadModal, setDisplayFileUploadModal] = useState(false);\n const [selectedFiles, setSelectedFiles] = useState(filesSelected || []);\n const [selectedFilter, setSelectedFilter] = useState({\n filter: 'all',\n isSearch: false,\n searchTerm: null,\n storeKey: null\n });\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { loading, data: { getFileStores: fileStores = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n if (loading) return null;\n\n const getSelectedFiles = ({ id }) => {\n const existPreviousFile = existPrevious(selectedFiles, id);\n\n if (maxItems === selectedFiles.length && !existPreviousFile) {\n handleSelectedFiles([id], false);\n setSelectedFiles([id]);\n } else {\n const allSelectedFiles = existPreviousFile\n ? selectedFiles.filter(fileId => fileId !== existPreviousFile)\n : [...selectedFiles, id];\n\n handleSelectedFiles(allSelectedFiles, false);\n setSelectedFiles(allSelectedFiles);\n }\n };\n\n const handleDisplayFileUploadModal = param => setDisplayFileUploadModal(param);\n\n const defaultFileStore = (fileStores.find(({ isDefault }) => isDefault) || {}).key;\n\n return (\n <MediaContextProvider\n value={{\n fileStores,\n defaultFileStore,\n changeSelectedFilter: value => setSelectedFilter(value),\n selectedFilter: {\n ...selectedFilter,\n storeKey: selectedFilter.storeKey || defaultFileStore\n },\n selectedFiles,\n getSelectedFiles,\n filters: availableFilters,\n onClickPrompt: () => handleDisplayFileUploadModal(true)\n }}>\n <FilesListProvider>\n <Listing\n displayFileUploadModal={displayFileUploadModal}\n handleDisplayFileUploadModal={handleDisplayFileUploadModal}\n />\n </FilesListProvider>\n </MediaContextProvider>\n );\n};\n\nListingContainer.propTypes = {\n handleSelectedFiles: PropTypes.func,\n maxItems: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n filesSelected: PropTypes.arrayOf(PropTypes.string)\n};\n\nListingContainer.defaultProps = {\n handleSelectedFiles: () => {},\n maxItems: false,\n filesSelected: []\n};\n\nexport default ListingContainer;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ListingContainer.js","names":["ListingContainer","handleSelectedFiles","maxItems","filesSelected","useState","displayFileUploadModal","setDisplayFileUploadModal","selectedFiles","setSelectedFiles","filter","isSearch","searchTerm","storeKey","selectedFilter","setSelectedFilter","fileStoresType","getQuery","useQuery","variables","visibleInAdmin","loading","data","getFileStores","fileStores","getSelectedFiles","id","existPreviousFile","existPrevious","length","allSelectedFiles","fileId","handleDisplayFileUploadModal","param","defaultFileStore","find","isDefault","key","changeSelectedFilter","value","filters","availableFilters","onClickPrompt","propTypes","PropTypes","func","oneOfType","number","bool","arrayOf","string","defaultProps"],"sources":["../../../src/components/ListingContainer/ListingContainer.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport Listing from './Listing';\nimport { availableFilters } from '../../utils/available-filters/available-filters';\nimport { MediaContextProvider } from '../../utils/media-context';\nimport FilesListProvider from '../FileList/FilesListProvider';\nimport { existPrevious } from './mappers';\n\nconst ListingContainer = ({ handleSelectedFiles, maxItems, filesSelected }) => {\n const [displayFileUploadModal, setDisplayFileUploadModal] = useState(false);\n const [selectedFiles, setSelectedFiles] = useState(filesSelected || []);\n const [selectedFilter, setSelectedFilter] = useState({\n filter: 'all',\n isSearch: false,\n searchTerm: null,\n storeKey: null\n });\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { loading, data: { getFileStores: fileStores = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n if (loading) return null;\n\n const getSelectedFiles = ({ id }) => {\n const existPreviousFile = existPrevious(selectedFiles, id);\n\n if (maxItems === selectedFiles.length && !existPreviousFile) {\n handleSelectedFiles([id], false);\n setSelectedFiles([id]);\n } else {\n const allSelectedFiles = existPreviousFile\n ? selectedFiles.filter(fileId => fileId !== existPreviousFile)\n : [...selectedFiles, id];\n\n handleSelectedFiles(allSelectedFiles, false);\n setSelectedFiles(allSelectedFiles);\n }\n };\n\n const handleDisplayFileUploadModal = param => setDisplayFileUploadModal(param);\n\n const defaultFileStore = (fileStores.find(({ isDefault }) => isDefault) || {}).key;\n\n return (\n <MediaContextProvider\n value={{\n fileStores,\n defaultFileStore,\n changeSelectedFilter: value => setSelectedFilter(value),\n selectedFilter: {\n ...selectedFilter,\n storeKey: selectedFilter.storeKey || defaultFileStore\n },\n selectedFiles,\n getSelectedFiles,\n filters: availableFilters,\n onClickPrompt: () => handleDisplayFileUploadModal(true)\n }}>\n <FilesListProvider>\n <Listing\n displayFileUploadModal={displayFileUploadModal}\n handleDisplayFileUploadModal={handleDisplayFileUploadModal}\n />\n </FilesListProvider>\n </MediaContextProvider>\n );\n};\n\nListingContainer.propTypes = {\n handleSelectedFiles: PropTypes.func,\n maxItems: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n filesSelected: PropTypes.arrayOf(PropTypes.string)\n};\n\nListingContainer.defaultProps = {\n handleSelectedFiles: () => {},\n maxItems: false,\n filesSelected: []\n};\n\nexport default ListingContainer;\n"],"mappings":"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"}
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["ListingContainer","React","lazy","EditMediaFilePage","load","app","events","once","addItem","name","uri","addFieldType","type","component","FileUploadAdapter","EditorAdapter","mediaRoute","path","key","exact","editMediaFileRoute","addRoute","PLUGIN_NAME","version","pkg","pluginName"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport FileUploadAdapter from './components/FileUploadAdapter';\nimport EditorAdapter from './components/EditorAdapter';\nimport pkg from '../package.json';\nimport { PLUGIN_NAME } from './constants';\n\nconst ListingContainer = React.lazy(() =>\n import(/* webpackChunkName: 'MediaListingContainer' */ './components/ListingContainer')\n);\n\nconst EditMediaFilePage = React.lazy(() =>\n import(/* webpackChunkName: 'EditMediaFilePage' */ './components/EditMediaFile/EditMediaFilePage')\n);\n\nexport default async function load(app) {\n app.events.once('load:menu-items', addItem => {\n addItem({ name: 'Media', uri: '/media' }, 'plugins');\n });\n\n app.events.once('load:custom:field:type', addFieldType => {\n addFieldType({ type: 'fileUpload', component: FileUploadAdapter });\n addFieldType({ type: 'editor', component: EditorAdapter });\n });\n\n const mediaRoute = {\n path: '/media',\n key: 'media',\n component: ListingContainer,\n exact: true\n };\n\n const editMediaFileRoute = {\n path: '/media/edit/:fileId',\n key: 'editMedia',\n component: EditMediaFilePage,\n exact: true\n };\n\n app.addRoute(mediaRoute);\n app.addRoute(editMediaFileRoute);\n\n return {\n name: PLUGIN_NAME,\n version: pkg.version\n };\n}\n\nload.pluginName = PLUGIN_NAME;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,gBAAgB,gBAAGC,kBAAMC,IAAN,CAAW;EAAA;IAAA,uCACqB,+BADrB;EAAA;AAAA,CAAX,CAAzB;;AAIA,IAAMC,iBAAiB,gBAAGF,kBAAMC,IAAN,CAAW;EAAA;IAAA,uCACgB,8CADhB;EAAA;AAAA,CAAX,CAA1B;;SAI8BE,I;;;;;wFAAf,iBAAoBC,GAApB;IAAA;IAAA;MAAA;QAAA;UAAA;YACbA,GAAG,CAACC,MAAJ,CAAWC,IAAX,CAAgB,iBAAhB,EAAmC,UAAAC,OAAO,EAAI;cAC5CA,OAAO,CAAC;gBAAEC,IAAI,EAAE,OAAR;gBAAiBC,GAAG,EAAE;cAAtB,CAAD,EAAmC,SAAnC,CAAP;YACD,CAFD;YAIAL,GAAG,CAACC,MAAJ,CAAWC,IAAX,CAAgB,wBAAhB,EAA0C,UAAAI,YAAY,EAAI;cACxDA,YAAY,CAAC;gBAAEC,IAAI,EAAE,YAAR;gBAAsBC,SAAS,EAAEC;cAAjC,CAAD,CAAZ;cACAH,YAAY,CAAC;gBAAEC,IAAI,EAAE,QAAR;gBAAkBC,SAAS,EAAEE;cAA7B,CAAD,CAAZ;YACD,CAHD;YAKMC,UAVO,GAUM;cACjBC,IAAI,EAAE,QADW;cAEjBC,GAAG,EAAE,OAFY;cAGjBL,SAAS,EAAEb,gBAHM;cAIjBmB,KAAK,EAAE;YAJU,CAVN;YAiBPC,kBAjBO,GAiBc;cACzBH,IAAI,EAAE,qBADmB;cAEzBC,GAAG,EAAE,WAFoB;cAGzBL,SAAS,EAAEV,iBAHc;cAIzBgB,KAAK,EAAE;YAJkB,CAjBd;YAwBbd,GAAG,CAACgB,QAAJ,CAAaL,UAAb;YACAX,GAAG,CAACgB,QAAJ,CAAaD,kBAAb;YAzBa,iCA2BN;cACLX,IAAI,EAAEa,sBADD;cAELC,OAAO,EAAEC,oBAAID;YAFR,CA3BM;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,C;;;;AAiCfnB,IAAI,CAACqB,UAAL,GAAkBH,sBAAlB"}
1
+ {"version":3,"file":"index.js","names":["ListingContainer","React","lazy","EditMediaFilePage","load","app","events","once","addItem","name","uri","addFieldType","type","component","FileUploadAdapter","EditorAdapter","mediaRoute","path","key","exact","editMediaFileRoute","addRoute","PLUGIN_NAME","version","pkg","pluginName"],"sources":["../src/index.js"],"sourcesContent":["import React from 'react';\nimport FileUploadAdapter from './components/FileUploadAdapter';\nimport EditorAdapter from './components/EditorAdapter';\nimport pkg from '../package.json';\nimport { PLUGIN_NAME } from './constants';\n\nconst ListingContainer = React.lazy(() =>\n import(/* webpackChunkName: 'MediaListingContainer' */ './components/ListingContainer')\n);\n\nconst EditMediaFilePage = React.lazy(() =>\n import(/* webpackChunkName: 'EditMediaFilePage' */ './components/EditMediaFile/EditMediaFilePage')\n);\n\nexport default async function load(app) {\n app.events.once('load:menu-items', addItem => {\n addItem({ name: 'Media', uri: '/media' }, 'plugins');\n });\n\n app.events.once('load:custom:field:type', addFieldType => {\n addFieldType({ type: 'fileUpload', component: FileUploadAdapter });\n addFieldType({ type: 'editor', component: EditorAdapter });\n });\n\n const mediaRoute = {\n path: '/media',\n key: 'media',\n component: ListingContainer,\n exact: true\n };\n\n const editMediaFileRoute = {\n path: '/media/edit/:fileId',\n key: 'editMedia',\n component: EditMediaFilePage,\n exact: true\n };\n\n app.addRoute(mediaRoute);\n app.addRoute(editMediaFileRoute);\n\n return {\n name: PLUGIN_NAME,\n version: pkg.version\n };\n}\n\nload.pluginName = PLUGIN_NAME;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,gBAAgB,gBAAGC,iBAAA,CAAMC,IAAN,CAAW;EAAA;IAAA,uCACqB,+BADrB;EAAA;AAAA,CAAX,CAAzB;;AAIA,IAAMC,iBAAiB,gBAAGF,iBAAA,CAAMC,IAAN,CAAW;EAAA;IAAA,uCACgB,8CADhB;EAAA;AAAA,CAAX,CAA1B;;SAI8BE,I;;;;;wFAAf,iBAAoBC,GAApB;IAAA;IAAA;MAAA;QAAA;UAAA;YACbA,GAAG,CAACC,MAAJ,CAAWC,IAAX,CAAgB,iBAAhB,EAAmC,UAAAC,OAAO,EAAI;cAC5CA,OAAO,CAAC;gBAAEC,IAAI,EAAE,OAAR;gBAAiBC,GAAG,EAAE;cAAtB,CAAD,EAAmC,SAAnC,CAAP;YACD,CAFD;YAIAL,GAAG,CAACC,MAAJ,CAAWC,IAAX,CAAgB,wBAAhB,EAA0C,UAAAI,YAAY,EAAI;cACxDA,YAAY,CAAC;gBAAEC,IAAI,EAAE,YAAR;gBAAsBC,SAAS,EAAEC;cAAjC,CAAD,CAAZ;cACAH,YAAY,CAAC;gBAAEC,IAAI,EAAE,QAAR;gBAAkBC,SAAS,EAAEE;cAA7B,CAAD,CAAZ;YACD,CAHD;YAKMC,UAVO,GAUM;cACjBC,IAAI,EAAE,QADW;cAEjBC,GAAG,EAAE,OAFY;cAGjBL,SAAS,EAAEb,gBAHM;cAIjBmB,KAAK,EAAE;YAJU,CAVN;YAiBPC,kBAjBO,GAiBc;cACzBH,IAAI,EAAE,qBADmB;cAEzBC,GAAG,EAAE,WAFoB;cAGzBL,SAAS,EAAEV,iBAHc;cAIzBgB,KAAK,EAAE;YAJkB,CAjBd;YAwBbd,GAAG,CAACgB,QAAJ,CAAaL,UAAb;YACAX,GAAG,CAACgB,QAAJ,CAAaD,kBAAb;YAzBa,iCA2BN;cACLX,IAAI,EAAEa,sBADD;cAELC,OAAO,EAAEC,mBAAA,CAAID;YAFR,CA3BM;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,C;;;;AAiCfnB,IAAI,CAACqB,UAAL,GAAkBH,sBAAlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"media-context.js","names":["MediaContext","React","createContext","MediaContextProvider","Provider","MediaContextConsumer","Consumer"],"sources":["../../../src/utils/media-context/media-context.js"],"sourcesContent":["import React from 'react';\n\nconst MediaContext = React.createContext();\nconst MediaContextProvider = MediaContext.Provider;\nconst MediaContextConsumer = MediaContext.Consumer;\n\nexport { MediaContext, MediaContextProvider, MediaContextConsumer };\n"],"mappings":";;;;;;;;;;;AAAA;;AAEA,IAAMA,YAAY,gBAAGC,kBAAMC,aAAN,EAArB;;;AACA,IAAMC,oBAAoB,GAAGH,YAAY,CAACI,QAA1C;;AACA,IAAMC,oBAAoB,GAAGL,YAAY,CAACM,QAA1C"}
1
+ {"version":3,"file":"media-context.js","names":["MediaContext","React","createContext","MediaContextProvider","Provider","MediaContextConsumer","Consumer"],"sources":["../../../src/utils/media-context/media-context.js"],"sourcesContent":["import React from 'react';\n\nconst MediaContext = React.createContext();\nconst MediaContextProvider = MediaContext.Provider;\nconst MediaContextConsumer = MediaContext.Consumer;\n\nexport { MediaContext, MediaContextProvider, MediaContextConsumer };\n"],"mappings":";;;;;;;;;;;AAAA;;AAEA,IAAMA,YAAY,gBAAGC,iBAAA,CAAMC,aAAN,EAArB;;;AACA,IAAMC,oBAAoB,GAAGH,YAAY,CAACI,QAA1C;;AACA,IAAMC,oBAAoB,GAAGL,YAAY,CAACM,QAA1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMediaContext.js","names":["useMediaContext","ctx"],"sources":["../../../src/utils/media-context/useMediaContext.js"],"sourcesContent":["import { useContext } from 'react';\n\nconst useMediaContext = ctx => useContext(ctx);\n\nexport { useMediaContext };\n"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,GAAG;EAAA,OAAI,uBAAWA,GAAX,CAAJ;AAAA,CAA3B"}
1
+ {"version":3,"file":"useMediaContext.js","names":["useMediaContext","ctx","useContext"],"sources":["../../../src/utils/media-context/useMediaContext.js"],"sourcesContent":["import { useContext } from 'react';\n\nconst useMediaContext = ctx => useContext(ctx);\n\nexport { useMediaContext };\n"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,GAAG;EAAA,OAAI,IAAAC,iBAAA,EAAWD,GAAX,CAAJ;AAAA,CAA3B"}
@@ -6,10 +6,9 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
6
6
 
7
7
  import React, { useState, useContext, useEffect } from 'react';
8
8
  import FileUpload from '@blaze-react/file-upload';
9
- import Modal from '@blaze-react/modal';
10
9
  import PropTypes from 'prop-types';
11
10
  import { useApolloClient } from '@apollo/client';
12
- import { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';
11
+ import { getQuery, getMutation, ModalAdapter as Modal } from '@blaze-cms/admin-ui-utils';
13
12
  import { parseFormValues } from '@blaze-cms/react-form-builder';
14
13
  import useToasts from '@blaze-react/toaster/lib/Toast/useToasts';
15
14
  import { MORE } from '../../constants';
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploadAdapter.js","names":["React","useState","useContext","useEffect","FileUpload","Modal","PropTypes","useApolloClient","getQuery","getMutation","parseFormValues","useToasts","MORE","ListingContainer","MediaContextProvider","FileList","useLimit","getFormat","formatInitialValue","transformToArray","isUnselecting","getButtonText","getNumberFilesPendingToFetch","FilePreview","FileUploadAdapter","onChange","label","id","type","value","maxItems","shouldRenderInPreview","canDragAndDrop","InjectPreview","FormContext","currentLimit","displayModal","setDisplayModal","initialValue","currentValue","setCurrentValue","currentOffset","setCurrentOffset","selectedFiles","setSelectedFiles","editFile","setEditFile","client","addToast","getFiles","offset","ids","fetchAll","data","files","newFiles","query","variables","limit","where","_in","skip","length","fetchPolicy","initialFiles","filter","_","i","orderedFiles","orderFiles","fetchMore","shouldFetchAll","newOffset","updatedOffset","offsetToUse","handleSelectedFiles","checkIsUnselecting","isUnselectingFile","valueArray","selectedFilesIds","valueId","includes","parsedValue","filesIds","event","target","name","fileData","handleReorderFiles","map","fileId","closeModalAndSetValue","isSaving","fileUploadButtonText","filesPending","onOpenLibrary","handleEditModal","file","selectedEditFile","find","_id","handleEditFileForm","editedFile","values","valuesChecked","altText","caption","credits","hrefUrl","currentId","Boolean","modalActions","textButton","callback","modifiers","editModalActions","editedFileId","updatedSelectedFiles","selectedFile","mutate","mutation","input","update","cache","updateFile","fileUpdated","writeQuery","result","appearance","autoDismiss","e","console","error","filesPendingString","fileListSpan","onUnselectFile","previewerId","fileName","propTypes","func","isRequired","string","oneOfType","array","number","bool","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FileUploadAdapter.js"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport FileUpload from '@blaze-react/file-upload';\nimport Modal from '@blaze-react/modal';\nimport PropTypes from 'prop-types';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { parseFormValues } from '@blaze-cms/react-form-builder';\nimport useToasts from '@blaze-react/toaster/lib/Toast/useToasts';\nimport { MORE } from '../../constants';\nimport ListingContainer from '../ListingContainer';\nimport { MediaContextProvider } from '../../utils/media-context';\nimport FileList from './FileList';\nimport useLimit from './useLimit';\nimport {\n getFormat,\n formatInitialValue,\n transformToArray,\n isUnselecting,\n getButtonText,\n getNumberFilesPendingToFetch\n} from './mappers';\nimport FilePreview from '../FilePreview';\n\nconst FileUploadAdapter = ({\n onChange,\n label,\n id,\n type,\n value,\n maxItems,\n shouldRenderInPreview,\n canDragAndDrop\n}) => {\n const { InjectPreview } = useContext(FileUploadAdapter.FormContext);\n const [currentLimit] = useLimit(maxItems);\n const [displayModal, setDisplayModal] = useState(false);\n const initialValue = formatInitialValue({ value, type });\n const [currentValue, setCurrentValue] = useState(initialValue);\n const [currentOffset, setCurrentOffset] = useState(0);\n const [selectedFiles, setSelectedFiles] = useState([]);\n const [editFile, setEditFile] = useState(null);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const getFiles = async (offset, ids, fetchAll) => {\n const {\n data: { files: newFiles }\n } = await client.query({\n query: getQuery('GET_FILES'),\n variables: {\n limit: fetchAll ? 0 : 4,\n offset,\n where: {\n id: {\n _in: ids\n }\n }\n },\n skip: !currentValue.length,\n fetchPolicy: 'network-only'\n });\n return newFiles;\n };\n\n useEffect(\n () => {\n (async () => {\n const initialFiles = !selectedFiles.length\n ? currentValue.filter((_, i) => i <= 3)\n : currentValue;\n\n const files = await getFiles(0, initialFiles);\n const orderedFiles = orderFiles(files, currentValue);\n setCurrentOffset(0);\n setSelectedFiles(orderedFiles);\n })();\n },\n [currentValue] //eslint-disable-line\n );\n\n const fetchMore = async shouldFetchAll => {\n if (selectedFiles.length === currentValue.length) return;\n const newOffset = currentOffset + 4;\n const updatedOffset = newOffset > currentValue.length ? currentValue.length : newOffset;\n const offsetToUse = shouldFetchAll ? 0 : updatedOffset;\n const files = await getFiles(offsetToUse, currentValue, shouldFetchAll);\n const newFiles = [...selectedFiles, ...files];\n const orderedFiles = orderFiles(newFiles, currentValue);\n setSelectedFiles(orderedFiles);\n setCurrentOffset(newOffset);\n };\n\n const handleSelectedFiles = (files, checkIsUnselecting = true) => {\n const isUnselectingFile = isUnselecting(value, checkIsUnselecting, files);\n if (isUnselectingFile) {\n const valueArray = transformToArray(value);\n const selectedFilesIds = valueArray.filter(valueId => !files.includes(valueId));\n const parsedValue = getFormat(type, { filesIds: selectedFilesIds });\n setCurrentValue(selectedFilesIds);\n return onChange({\n event: {\n target: {\n value: parsedValue,\n name: id,\n type,\n fileData: selectedFilesIds.length ? selectedFilesIds : null\n }\n },\n value: parsedValue\n });\n }\n\n setCurrentValue(files);\n };\n\n const handleReorderFiles = files => {\n const filesIds = files.map(({ id: fileId }) => fileId);\n const parsedValue = getFormat(type, { filesIds });\n setSelectedFiles(files);\n\n return onChange({\n event: {\n target: {\n value: parsedValue,\n name: id,\n type,\n fileData: filesIds\n }\n },\n value: parsedValue\n });\n };\n\n const closeModalAndSetValue = isSaving => {\n if (isSaving) {\n const parsedValue = getFormat(type, { filesIds: currentValue });\n setDisplayModal(false);\n return onChange({\n event: { target: { value: parsedValue, name: id, type, currentValue } },\n value: parsedValue\n });\n }\n\n setCurrentValue(initialValue);\n setDisplayModal(false);\n };\n\n const fileUploadButtonText = getButtonText({ maxItems, value: initialValue });\n\n const filesPending = getNumberFilesPendingToFetch(currentOffset, currentValue);\n const onOpenLibrary = () => setDisplayModal(true);\n const handleEditModal = file => {\n const selectedEditFile = selectedFiles.find(({ id: _id }) => _id === file.id);\n setEditFile(selectedEditFile);\n };\n\n const handleEditFileForm = editedFile => {\n const values = parseFormValues(editedFile.valuesChecked);\n\n const { altText, caption, credits, hrefUrl, name } = values;\n setEditFile({\n ...editFile,\n name,\n data: {\n altText,\n caption,\n credits,\n hrefUrl\n }\n });\n };\n\n const orderFiles = (files, ids) =>\n ids.map(currentId => files.find(({ id: fileId }) => fileId === currentId)).filter(Boolean);\n\n const modalActions = [\n {\n textButton: 'Cancel',\n callback: () => {\n closeModalAndSetValue();\n },\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: () => {\n closeModalAndSetValue(true);\n },\n modifiers: []\n }\n ];\n\n const editModalActions = [\n {\n textButton: 'Cancel',\n callback: () => {\n setEditFile(null);\n },\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: async () => {\n const { name, id: editedFileId, data } = editFile;\n const updatedSelectedFiles = selectedFiles.map(selectedFile => {\n if (selectedFile.id === editedFileId) {\n return { ...selectedFile, name, data };\n }\n return selectedFile;\n });\n setSelectedFiles(updatedSelectedFiles);\n\n try {\n await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: {\n input: {\n name,\n data,\n id: editedFileId\n }\n },\n update(\n cache,\n {\n data: { updateFile: fileUpdated }\n }\n ) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n addToast(`File: ${editFile.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n closeModalAndSetValue(true);\n setEditFile(null);\n } catch (e) {\n addToast(`File: ${editFile.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n },\n modifiers: []\n }\n ];\n const filesPendingString = `${filesPending} ${MORE}`;\n const fileListSpan = filesPending ? (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <span className=\"FileUploadAdapter__preview-link button button--link\" onClick={fetchMore}>\n + {filesPendingString}\n </span>\n ) : null;\n\n return (\n <>\n <div className=\"form-field form-field--button\">\n <label>{label}</label>\n {selectedFiles && (\n <>\n <MediaContextProvider value={{ handleEditModal, onUnselectFile: handleSelectedFiles }}>\n {shouldRenderInPreview ? (\n <InjectPreview selector={FileUploadAdapter.previewerId}>\n <FileList\n selectedFiles={selectedFiles}\n allFiles={currentValue}\n handleReorderFiles={handleReorderFiles}\n canDragAndDrop={canDragAndDrop}\n fetchMore={fetchMore}>\n {fileListSpan}\n </FileList>\n </InjectPreview>\n ) : (\n <FileList\n selectedFiles={selectedFiles}\n handleReorderFiles={handleReorderFiles}\n fetchMore={fetchMore}\n />\n )}\n </MediaContextProvider>\n </>\n )}\n <FileUpload\n actionText={fileUploadButtonText}\n handleLibraryClick={onOpenLibrary}\n enableDragAndDrop={false}\n />\n </div>\n {editFile && (\n <Modal actions={editModalActions} title=\"Edit File\" onClose={() => setEditFile(null)}>\n <FilePreview\n file={editFile}\n fileName={editFile.fileName}\n handleFormChange={handleEditFileForm}\n displayForm\n previewType=\"card\"\n />\n </Modal>\n )}\n {displayModal && (\n <div className=\"file-upload-modal-wrapper\">\n <Modal\n actions={modalActions}\n className=\"file-upload-modal\"\n title=\"Media library\"\n onClose={() => closeModalAndSetValue()}>\n <ListingContainer\n handleSelectedFiles={handleSelectedFiles}\n maxItems={currentLimit}\n filesSelected={currentValue.length > 1 ? currentValue : []}\n />\n </Modal>\n </div>\n )}\n </>\n );\n};\n\nFileUploadAdapter.propTypes = {\n onChange: PropTypes.func.isRequired,\n label: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n maxItems: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n shouldRenderInPreview: PropTypes.bool,\n canDragAndDrop: PropTypes.bool\n};\n\nFileUploadAdapter.defaultProps = {\n value: '',\n maxItems: false,\n shouldRenderInPreview: false,\n canDragAndDrop: false\n};\n\nexport default FileUploadAdapter;\n"],"mappings":"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"}
1
+ {"version":3,"file":"FileUploadAdapter.js","names":["React","useState","useContext","useEffect","FileUpload","PropTypes","useApolloClient","getQuery","getMutation","ModalAdapter","Modal","parseFormValues","useToasts","MORE","ListingContainer","MediaContextProvider","FileList","useLimit","getFormat","formatInitialValue","transformToArray","isUnselecting","getButtonText","getNumberFilesPendingToFetch","FilePreview","FileUploadAdapter","onChange","label","id","type","value","maxItems","shouldRenderInPreview","canDragAndDrop","InjectPreview","FormContext","currentLimit","displayModal","setDisplayModal","initialValue","currentValue","setCurrentValue","currentOffset","setCurrentOffset","selectedFiles","setSelectedFiles","editFile","setEditFile","client","addToast","getFiles","offset","ids","fetchAll","data","files","newFiles","query","variables","limit","where","_in","skip","length","fetchPolicy","initialFiles","filter","_","i","orderedFiles","orderFiles","fetchMore","shouldFetchAll","newOffset","updatedOffset","offsetToUse","handleSelectedFiles","checkIsUnselecting","isUnselectingFile","valueArray","selectedFilesIds","valueId","includes","parsedValue","filesIds","event","target","name","fileData","handleReorderFiles","map","fileId","closeModalAndSetValue","isSaving","fileUploadButtonText","filesPending","onOpenLibrary","handleEditModal","file","selectedEditFile","find","_id","handleEditFileForm","editedFile","values","valuesChecked","altText","caption","credits","hrefUrl","currentId","Boolean","modalActions","textButton","callback","modifiers","editModalActions","editedFileId","updatedSelectedFiles","selectedFile","mutate","mutation","input","update","cache","updateFile","fileUpdated","writeQuery","result","appearance","autoDismiss","e","console","error","filesPendingString","fileListSpan","onUnselectFile","previewerId","fileName","propTypes","func","isRequired","string","oneOfType","array","number","bool","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FileUploadAdapter.js"],"sourcesContent":["import React, { useState, useContext, useEffect } from 'react';\nimport FileUpload from '@blaze-react/file-upload';\nimport PropTypes from 'prop-types';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery, getMutation, ModalAdapter as Modal } from '@blaze-cms/admin-ui-utils';\nimport { parseFormValues } from '@blaze-cms/react-form-builder';\nimport useToasts from '@blaze-react/toaster/lib/Toast/useToasts';\nimport { MORE } from '../../constants';\nimport ListingContainer from '../ListingContainer';\nimport { MediaContextProvider } from '../../utils/media-context';\nimport FileList from './FileList';\nimport useLimit from './useLimit';\nimport {\n getFormat,\n formatInitialValue,\n transformToArray,\n isUnselecting,\n getButtonText,\n getNumberFilesPendingToFetch\n} from './mappers';\nimport FilePreview from '../FilePreview';\n\nconst FileUploadAdapter = ({\n onChange,\n label,\n id,\n type,\n value,\n maxItems,\n shouldRenderInPreview,\n canDragAndDrop\n}) => {\n const { InjectPreview } = useContext(FileUploadAdapter.FormContext);\n const [currentLimit] = useLimit(maxItems);\n const [displayModal, setDisplayModal] = useState(false);\n const initialValue = formatInitialValue({ value, type });\n const [currentValue, setCurrentValue] = useState(initialValue);\n const [currentOffset, setCurrentOffset] = useState(0);\n const [selectedFiles, setSelectedFiles] = useState([]);\n const [editFile, setEditFile] = useState(null);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const getFiles = async (offset, ids, fetchAll) => {\n const {\n data: { files: newFiles }\n } = await client.query({\n query: getQuery('GET_FILES'),\n variables: {\n limit: fetchAll ? 0 : 4,\n offset,\n where: {\n id: {\n _in: ids\n }\n }\n },\n skip: !currentValue.length,\n fetchPolicy: 'network-only'\n });\n return newFiles;\n };\n\n useEffect(\n () => {\n (async () => {\n const initialFiles = !selectedFiles.length\n ? currentValue.filter((_, i) => i <= 3)\n : currentValue;\n\n const files = await getFiles(0, initialFiles);\n const orderedFiles = orderFiles(files, currentValue);\n setCurrentOffset(0);\n setSelectedFiles(orderedFiles);\n })();\n },\n [currentValue] //eslint-disable-line\n );\n\n const fetchMore = async shouldFetchAll => {\n if (selectedFiles.length === currentValue.length) return;\n const newOffset = currentOffset + 4;\n const updatedOffset = newOffset > currentValue.length ? currentValue.length : newOffset;\n const offsetToUse = shouldFetchAll ? 0 : updatedOffset;\n const files = await getFiles(offsetToUse, currentValue, shouldFetchAll);\n const newFiles = [...selectedFiles, ...files];\n const orderedFiles = orderFiles(newFiles, currentValue);\n setSelectedFiles(orderedFiles);\n setCurrentOffset(newOffset);\n };\n\n const handleSelectedFiles = (files, checkIsUnselecting = true) => {\n const isUnselectingFile = isUnselecting(value, checkIsUnselecting, files);\n if (isUnselectingFile) {\n const valueArray = transformToArray(value);\n const selectedFilesIds = valueArray.filter(valueId => !files.includes(valueId));\n const parsedValue = getFormat(type, { filesIds: selectedFilesIds });\n setCurrentValue(selectedFilesIds);\n return onChange({\n event: {\n target: {\n value: parsedValue,\n name: id,\n type,\n fileData: selectedFilesIds.length ? selectedFilesIds : null\n }\n },\n value: parsedValue\n });\n }\n\n setCurrentValue(files);\n };\n\n const handleReorderFiles = files => {\n const filesIds = files.map(({ id: fileId }) => fileId);\n const parsedValue = getFormat(type, { filesIds });\n setSelectedFiles(files);\n\n return onChange({\n event: {\n target: {\n value: parsedValue,\n name: id,\n type,\n fileData: filesIds\n }\n },\n value: parsedValue\n });\n };\n\n const closeModalAndSetValue = isSaving => {\n if (isSaving) {\n const parsedValue = getFormat(type, { filesIds: currentValue });\n setDisplayModal(false);\n return onChange({\n event: { target: { value: parsedValue, name: id, type, currentValue } },\n value: parsedValue\n });\n }\n\n setCurrentValue(initialValue);\n setDisplayModal(false);\n };\n\n const fileUploadButtonText = getButtonText({ maxItems, value: initialValue });\n\n const filesPending = getNumberFilesPendingToFetch(currentOffset, currentValue);\n const onOpenLibrary = () => setDisplayModal(true);\n const handleEditModal = file => {\n const selectedEditFile = selectedFiles.find(({ id: _id }) => _id === file.id);\n setEditFile(selectedEditFile);\n };\n\n const handleEditFileForm = editedFile => {\n const values = parseFormValues(editedFile.valuesChecked);\n\n const { altText, caption, credits, hrefUrl, name } = values;\n setEditFile({\n ...editFile,\n name,\n data: {\n altText,\n caption,\n credits,\n hrefUrl\n }\n });\n };\n\n const orderFiles = (files, ids) =>\n ids.map(currentId => files.find(({ id: fileId }) => fileId === currentId)).filter(Boolean);\n\n const modalActions = [\n {\n textButton: 'Cancel',\n callback: () => {\n closeModalAndSetValue();\n },\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: () => {\n closeModalAndSetValue(true);\n },\n modifiers: []\n }\n ];\n\n const editModalActions = [\n {\n textButton: 'Cancel',\n callback: () => {\n setEditFile(null);\n },\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: async () => {\n const { name, id: editedFileId, data } = editFile;\n const updatedSelectedFiles = selectedFiles.map(selectedFile => {\n if (selectedFile.id === editedFileId) {\n return { ...selectedFile, name, data };\n }\n return selectedFile;\n });\n setSelectedFiles(updatedSelectedFiles);\n\n try {\n await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: {\n input: {\n name,\n data,\n id: editedFileId\n }\n },\n update(\n cache,\n {\n data: { updateFile: fileUpdated }\n }\n ) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n addToast(`File: ${editFile.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n closeModalAndSetValue(true);\n setEditFile(null);\n } catch (e) {\n addToast(`File: ${editFile.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n },\n modifiers: []\n }\n ];\n const filesPendingString = `${filesPending} ${MORE}`;\n const fileListSpan = filesPending ? (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <span className=\"FileUploadAdapter__preview-link button button--link\" onClick={fetchMore}>\n + {filesPendingString}\n </span>\n ) : null;\n\n return (\n <>\n <div className=\"form-field form-field--button\">\n <label>{label}</label>\n {selectedFiles && (\n <>\n <MediaContextProvider value={{ handleEditModal, onUnselectFile: handleSelectedFiles }}>\n {shouldRenderInPreview ? (\n <InjectPreview selector={FileUploadAdapter.previewerId}>\n <FileList\n selectedFiles={selectedFiles}\n allFiles={currentValue}\n handleReorderFiles={handleReorderFiles}\n canDragAndDrop={canDragAndDrop}\n fetchMore={fetchMore}>\n {fileListSpan}\n </FileList>\n </InjectPreview>\n ) : (\n <FileList\n selectedFiles={selectedFiles}\n handleReorderFiles={handleReorderFiles}\n fetchMore={fetchMore}\n />\n )}\n </MediaContextProvider>\n </>\n )}\n <FileUpload\n actionText={fileUploadButtonText}\n handleLibraryClick={onOpenLibrary}\n enableDragAndDrop={false}\n />\n </div>\n {editFile && (\n <Modal actions={editModalActions} title=\"Edit File\" onClose={() => setEditFile(null)}>\n <FilePreview\n file={editFile}\n fileName={editFile.fileName}\n handleFormChange={handleEditFileForm}\n displayForm\n previewType=\"card\"\n />\n </Modal>\n )}\n {displayModal && (\n <div className=\"file-upload-modal-wrapper\">\n <Modal\n actions={modalActions}\n className=\"file-upload-modal\"\n title=\"Media library\"\n onClose={() => closeModalAndSetValue()}>\n <ListingContainer\n handleSelectedFiles={handleSelectedFiles}\n maxItems={currentLimit}\n filesSelected={currentValue.length > 1 ? currentValue : []}\n />\n </Modal>\n </div>\n )}\n </>\n );\n};\n\nFileUploadAdapter.propTypes = {\n onChange: PropTypes.func.isRequired,\n label: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n maxItems: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n shouldRenderInPreview: PropTypes.bool,\n canDragAndDrop: PropTypes.bool\n};\n\nFileUploadAdapter.defaultProps = {\n value: '',\n maxItems: false,\n shouldRenderInPreview: false,\n canDragAndDrop: false\n};\n\nexport default FileUploadAdapter;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAP,IAAgBC,QAAhB,EAA0BC,UAA1B,EAAsCC,SAAtC,QAAuD,OAAvD;AACA,OAAOC,UAAP,MAAuB,0BAAvB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,SAASC,eAAT,QAAgC,gBAAhC;AACA,SAASC,QAAT,EAAmBC,WAAnB,EAAgCC,YAAY,IAAIC,KAAhD,QAA6D,2BAA7D;AACA,SAASC,eAAT,QAAgC,+BAAhC;AACA,OAAOC,SAAP,MAAsB,0CAAtB;AACA,SAASC,IAAT,QAAqB,iBAArB;AACA,OAAOC,gBAAP,MAA6B,qBAA7B;AACA,SAASC,oBAAT,QAAqC,2BAArC;AACA,OAAOC,QAAP,MAAqB,YAArB;AACA,OAAOC,QAAP,MAAqB,YAArB;AACA,SACEC,SADF,EAEEC,kBAFF,EAGEC,gBAHF,EAIEC,aAJF,EAKEC,aALF,EAMEC,4BANF,QAOO,WAPP;AAQA,OAAOC,WAAP,MAAwB,gBAAxB;;AAEA,MAAMC,iBAAiB,GAAG,CAAC;EACzBC,QADyB;EAEzBC,KAFyB;EAGzBC,EAHyB;EAIzBC,IAJyB;EAKzBC,KALyB;EAMzBC,QANyB;EAOzBC,qBAPyB;EAQzBC;AARyB,CAAD,KASpB;EACJ,MAAM;IAAEC;EAAF,IAAoBhC,UAAU,CAACuB,iBAAiB,CAACU,WAAnB,CAApC;EACA,MAAM,CAACC,YAAD,IAAiBnB,QAAQ,CAACc,QAAD,CAA/B;EACA,MAAM,CAACM,YAAD,EAAeC,eAAf,IAAkCrC,QAAQ,CAAC,KAAD,CAAhD;EACA,MAAMsC,YAAY,GAAGpB,kBAAkB,CAAC;IAAEW,KAAF;IAASD;EAAT,CAAD,CAAvC;EACA,MAAM,CAACW,YAAD,EAAeC,eAAf,IAAkCxC,QAAQ,CAACsC,YAAD,CAAhD;EACA,MAAM,CAACG,aAAD,EAAgBC,gBAAhB,IAAoC1C,QAAQ,CAAC,CAAD,CAAlD;EACA,MAAM,CAAC2C,aAAD,EAAgBC,gBAAhB,IAAoC5C,QAAQ,CAAC,EAAD,CAAlD;EACA,MAAM,CAAC6C,QAAD,EAAWC,WAAX,IAA0B9C,QAAQ,CAAC,IAAD,CAAxC;EACA,MAAM+C,MAAM,GAAG1C,eAAe,EAA9B;EACA,MAAM;IAAE2C;EAAF,IAAerC,SAAS,EAA9B;;EAEA,MAAMsC,QAAQ,GAAG,OAAOC,MAAP,EAAeC,GAAf,EAAoBC,QAApB,KAAiC;IAChD,MAAM;MACJC,IAAI,EAAE;QAAEC,KAAK,EAAEC;MAAT;IADF,IAEF,MAAMR,MAAM,CAACS,KAAP,CAAa;MACrBA,KAAK,EAAElD,QAAQ,CAAC,WAAD,CADM;MAErBmD,SAAS,EAAE;QACTC,KAAK,EAAEN,QAAQ,GAAG,CAAH,GAAO,CADb;QAETF,MAFS;QAGTS,KAAK,EAAE;UACLhC,EAAE,EAAE;YACFiC,GAAG,EAAET;UADH;QADC;MAHE,CAFU;MAWrBU,IAAI,EAAE,CAACtB,YAAY,CAACuB,MAXC;MAYrBC,WAAW,EAAE;IAZQ,CAAb,CAFV;IAgBA,OAAOR,QAAP;EACD,CAlBD;;EAoBArD,SAAS,CACP,MAAM;IACJ,CAAC,YAAY;MACX,MAAM8D,YAAY,GAAG,CAACrB,aAAa,CAACmB,MAAf,GACjBvB,YAAY,CAAC0B,MAAb,CAAoB,CAACC,CAAD,EAAIC,CAAJ,KAAUA,CAAC,IAAI,CAAnC,CADiB,GAEjB5B,YAFJ;MAIA,MAAMe,KAAK,GAAG,MAAML,QAAQ,CAAC,CAAD,EAAIe,YAAJ,CAA5B;MACA,MAAMI,YAAY,GAAGC,UAAU,CAACf,KAAD,EAAQf,YAAR,CAA/B;MACAG,gBAAgB,CAAC,CAAD,CAAhB;MACAE,gBAAgB,CAACwB,YAAD,CAAhB;IACD,CATD;EAUD,CAZM,EAaP,CAAC7B,YAAD,CAbO,CAaQ;EAbR,CAAT;;EAgBA,MAAM+B,SAAS,GAAG,MAAMC,cAAN,IAAwB;IACxC,IAAI5B,aAAa,CAACmB,MAAd,KAAyBvB,YAAY,CAACuB,MAA1C,EAAkD;IAClD,MAAMU,SAAS,GAAG/B,aAAa,GAAG,CAAlC;IACA,MAAMgC,aAAa,GAAGD,SAAS,GAAGjC,YAAY,CAACuB,MAAzB,GAAkCvB,YAAY,CAACuB,MAA/C,GAAwDU,SAA9E;IACA,MAAME,WAAW,GAAGH,cAAc,GAAG,CAAH,GAAOE,aAAzC;IACA,MAAMnB,KAAK,GAAG,MAAML,QAAQ,CAACyB,WAAD,EAAcnC,YAAd,EAA4BgC,cAA5B,CAA5B;IACA,MAAMhB,QAAQ,GAAG,CAAC,GAAGZ,aAAJ,EAAmB,GAAGW,KAAtB,CAAjB;IACA,MAAMc,YAAY,GAAGC,UAAU,CAACd,QAAD,EAAWhB,YAAX,CAA/B;IACAK,gBAAgB,CAACwB,YAAD,CAAhB;IACA1B,gBAAgB,CAAC8B,SAAD,CAAhB;EACD,CAVD;;EAYA,MAAMG,mBAAmB,GAAG,CAACrB,KAAD,EAAQsB,kBAAkB,GAAG,IAA7B,KAAsC;IAChE,MAAMC,iBAAiB,GAAGzD,aAAa,CAACS,KAAD,EAAQ+C,kBAAR,EAA4BtB,KAA5B,CAAvC;;IACA,IAAIuB,iBAAJ,EAAuB;MACrB,MAAMC,UAAU,GAAG3D,gBAAgB,CAACU,KAAD,CAAnC;MACA,MAAMkD,gBAAgB,GAAGD,UAAU,CAACb,MAAX,CAAkBe,OAAO,IAAI,CAAC1B,KAAK,CAAC2B,QAAN,CAAeD,OAAf,CAA9B,CAAzB;MACA,MAAME,WAAW,GAAGjE,SAAS,CAACW,IAAD,EAAO;QAAEuD,QAAQ,EAAEJ;MAAZ,CAAP,CAA7B;MACAvC,eAAe,CAACuC,gBAAD,CAAf;MACA,OAAOtD,QAAQ,CAAC;QACd2D,KAAK,EAAE;UACLC,MAAM,EAAE;YACNxD,KAAK,EAAEqD,WADD;YAENI,IAAI,EAAE3D,EAFA;YAGNC,IAHM;YAIN2D,QAAQ,EAAER,gBAAgB,CAACjB,MAAjB,GAA0BiB,gBAA1B,GAA6C;UAJjD;QADH,CADO;QASdlD,KAAK,EAAEqD;MATO,CAAD,CAAf;IAWD;;IAED1C,eAAe,CAACc,KAAD,CAAf;EACD,CArBD;;EAuBA,MAAMkC,kBAAkB,GAAGlC,KAAK,IAAI;IAClC,MAAM6B,QAAQ,GAAG7B,KAAK,CAACmC,GAAN,CAAU,CAAC;MAAE9D,EAAE,EAAE+D;IAAN,CAAD,KAAoBA,MAA9B,CAAjB;IACA,MAAMR,WAAW,GAAGjE,SAAS,CAACW,IAAD,EAAO;MAAEuD;IAAF,CAAP,CAA7B;IACAvC,gBAAgB,CAACU,KAAD,CAAhB;IAEA,OAAO7B,QAAQ,CAAC;MACd2D,KAAK,EAAE;QACLC,MAAM,EAAE;UACNxD,KAAK,EAAEqD,WADD;UAENI,IAAI,EAAE3D,EAFA;UAGNC,IAHM;UAIN2D,QAAQ,EAAEJ;QAJJ;MADH,CADO;MASdtD,KAAK,EAAEqD;IATO,CAAD,CAAf;EAWD,CAhBD;;EAkBA,MAAMS,qBAAqB,GAAGC,QAAQ,IAAI;IACxC,IAAIA,QAAJ,EAAc;MACZ,MAAMV,WAAW,GAAGjE,SAAS,CAACW,IAAD,EAAO;QAAEuD,QAAQ,EAAE5C;MAAZ,CAAP,CAA7B;MACAF,eAAe,CAAC,KAAD,CAAf;MACA,OAAOZ,QAAQ,CAAC;QACd2D,KAAK,EAAE;UAAEC,MAAM,EAAE;YAAExD,KAAK,EAAEqD,WAAT;YAAsBI,IAAI,EAAE3D,EAA5B;YAAgCC,IAAhC;YAAsCW;UAAtC;QAAV,CADO;QAEdV,KAAK,EAAEqD;MAFO,CAAD,CAAf;IAID;;IAED1C,eAAe,CAACF,YAAD,CAAf;IACAD,eAAe,CAAC,KAAD,CAAf;EACD,CAZD;;EAcA,MAAMwD,oBAAoB,GAAGxE,aAAa,CAAC;IAAES,QAAF;IAAYD,KAAK,EAAES;EAAnB,CAAD,CAA1C;EAEA,MAAMwD,YAAY,GAAGxE,4BAA4B,CAACmB,aAAD,EAAgBF,YAAhB,CAAjD;;EACA,MAAMwD,aAAa,GAAG,MAAM1D,eAAe,CAAC,IAAD,CAA3C;;EACA,MAAM2D,eAAe,GAAGC,IAAI,IAAI;IAC9B,MAAMC,gBAAgB,GAAGvD,aAAa,CAACwD,IAAd,CAAmB,CAAC;MAAExE,EAAE,EAAEyE;IAAN,CAAD,KAAiBA,GAAG,KAAKH,IAAI,CAACtE,EAAjD,CAAzB;IACAmB,WAAW,CAACoD,gBAAD,CAAX;EACD,CAHD;;EAKA,MAAMG,kBAAkB,GAAGC,UAAU,IAAI;IACvC,MAAMC,MAAM,GAAG7F,eAAe,CAAC4F,UAAU,CAACE,aAAZ,CAA9B;IAEA,MAAM;MAAEC,OAAF;MAAWC,OAAX;MAAoBC,OAApB;MAA6BC,OAA7B;MAAsCtB;IAAtC,IAA+CiB,MAArD;IACAzD,WAAW,iCACND,QADM;MAETyC,IAFS;MAGTjC,IAAI,EAAE;QACJoD,OADI;QAEJC,OAFI;QAGJC,OAHI;QAIJC;MAJI;IAHG,GAAX;EAUD,CAdD;;EAgBA,MAAMvC,UAAU,GAAG,CAACf,KAAD,EAAQH,GAAR,KACjBA,GAAG,CAACsC,GAAJ,CAAQoB,SAAS,IAAIvD,KAAK,CAAC6C,IAAN,CAAW,CAAC;IAAExE,EAAE,EAAE+D;EAAN,CAAD,KAAoBA,MAAM,KAAKmB,SAA1C,CAArB,EAA2E5C,MAA3E,CAAkF6C,OAAlF,CADF;;EAGA,MAAMC,YAAY,GAAG,CACnB;IACEC,UAAU,EAAE,QADd;IAEEC,QAAQ,EAAE,MAAM;MACdtB,qBAAqB;IACtB,CAJH;IAKEuB,SAAS,EAAE,CAAC,QAAD;EALb,CADmB,EAQnB;IACEF,UAAU,EAAE,MADd;IAEEC,QAAQ,EAAE,MAAM;MACdtB,qBAAqB,CAAC,IAAD,CAArB;IACD,CAJH;IAKEuB,SAAS,EAAE;EALb,CARmB,CAArB;EAiBA,MAAMC,gBAAgB,GAAG,CACvB;IACEH,UAAU,EAAE,QADd;IAEEC,QAAQ,EAAE,MAAM;MACdnE,WAAW,CAAC,IAAD,CAAX;IACD,CAJH;IAKEoE,SAAS,EAAE,CAAC,QAAD;EALb,CADuB,EAQvB;IACEF,UAAU,EAAE,MADd;IAEEC,QAAQ,EAAE,YAAY;MACpB,MAAM;QAAE3B,IAAF;QAAQ3D,EAAE,EAAEyF,YAAZ;QAA0B/D;MAA1B,IAAmCR,QAAzC;MACA,MAAMwE,oBAAoB,GAAG1E,aAAa,CAAC8C,GAAd,CAAkB6B,YAAY,IAAI;QAC7D,IAAIA,YAAY,CAAC3F,EAAb,KAAoByF,YAAxB,EAAsC;UACpC,uCAAYE,YAAZ;YAA0BhC,IAA1B;YAAgCjC;UAAhC;QACD;;QACD,OAAOiE,YAAP;MACD,CAL4B,CAA7B;MAMA1E,gBAAgB,CAACyE,oBAAD,CAAhB;;MAEA,IAAI;QACF,MAAMtE,MAAM,CAACwE,MAAP,CAAc;UAClBC,QAAQ,EAAEjH,WAAW,CAAC,aAAD,CADH;UAElBkD,SAAS,EAAE;YACTgE,KAAK,EAAE;cACLnC,IADK;cAELjC,IAFK;cAGL1B,EAAE,EAAEyF;YAHC;UADE,CAFO;;UASlBM,MAAM,CACJC,KADI,EAEJ;YACEtE,IAAI,EAAE;cAAEuE,UAAU,EAAEC;YAAd;UADR,CAFI,EAKJ;YACAF,KAAK,CAACG,UAAN,CAAiB;cACftE,KAAK,EAAElD,QAAQ,CAAC,gBAAD,CADA;cAEfmD,SAAS,EAAE;gBAAE9B;cAAF,CAFI;cAGf0B,IAAI,EAAE;gBAAE4C,IAAI,EAAE4B,WAAW,CAACE;cAApB;YAHS,CAAjB;UAKD;;QApBiB,CAAd,CAAN;QAuBA/E,QAAQ,CAAE,SAAQH,QAAQ,CAACyC,IAAK,mBAAxB,EAA4C;UAClD0C,UAAU,EAAE,SADsC;UAElDC,WAAW,EAAE;QAFqC,CAA5C,CAAR;QAIAtC,qBAAqB,CAAC,IAAD,CAArB;QACA7C,WAAW,CAAC,IAAD,CAAX;MACD,CA9BD,CA8BE,OAAOoF,CAAP,EAAU;QACVlF,QAAQ,CAAE,SAAQH,QAAQ,CAACyC,IAAK,uBAAxB,EAAgD;UACtD0C,UAAU,EAAE,OAD0C;UAEtDC,WAAW,EAAE;QAFyC,CAAhD,CAAR;QAIAE,OAAO,CAACC,KAAR,CAAcF,CAAd,EALU,CAKQ;MACnB;IACF,CAjDH;IAkDEhB,SAAS,EAAE;EAlDb,CARuB,CAAzB;EA6DA,MAAMmB,kBAAkB,GAAI,GAAEvC,YAAa,IAAGlF,IAAK,EAAnD;EACA,MAAM0H,YAAY,GAAGxC,YAAY;EAAA;EAC/B;EACA;IAAM,SAAS,EAAC,qDAAhB;IAAsE,OAAO,EAAExB;EAA/E,SACK+D,kBADL,CAF+B,GAK7B,IALJ;EAOA,oBACE,uDACE;IAAK,SAAS,EAAC;EAAf,gBACE,mCAAQ3G,KAAR,CADF,EAEGiB,aAAa,iBACZ,uDACE,oBAAC,oBAAD;IAAsB,KAAK,EAAE;MAAEqD,eAAF;MAAmBuC,cAAc,EAAE5D;IAAnC;EAA7B,GACG5C,qBAAqB,gBACpB,oBAAC,aAAD;IAAe,QAAQ,EAAEP,iBAAiB,CAACgH;EAA3C,gBACE,oBAAC,QAAD;IACE,aAAa,EAAE7F,aADjB;IAEE,QAAQ,EAAEJ,YAFZ;IAGE,kBAAkB,EAAEiD,kBAHtB;IAIE,cAAc,EAAExD,cAJlB;IAKE,SAAS,EAAEsC;EALb,GAMGgE,YANH,CADF,CADoB,gBAYpB,oBAAC,QAAD;IACE,aAAa,EAAE3F,aADjB;IAEE,kBAAkB,EAAE6C,kBAFtB;IAGE,SAAS,EAAElB;EAHb,EAbJ,CADF,CAHJ,eA0BE,oBAAC,UAAD;IACE,UAAU,EAAEuB,oBADd;IAEE,kBAAkB,EAAEE,aAFtB;IAGE,iBAAiB,EAAE;EAHrB,EA1BF,CADF,EAiCGlD,QAAQ,iBACP,oBAAC,KAAD;IAAO,OAAO,EAAEsE,gBAAhB;IAAkC,KAAK,EAAC,WAAxC;IAAoD,OAAO,EAAE,MAAMrE,WAAW,CAAC,IAAD;EAA9E,gBACE,oBAAC,WAAD;IACE,IAAI,EAAED,QADR;IAEE,QAAQ,EAAEA,QAAQ,CAAC4F,QAFrB;IAGE,gBAAgB,EAAEpC,kBAHpB;IAIE,WAAW,MAJb;IAKE,WAAW,EAAC;EALd,EADF,CAlCJ,EA4CGjE,YAAY,iBACX;IAAK,SAAS,EAAC;EAAf,gBACE,oBAAC,KAAD;IACE,OAAO,EAAE2E,YADX;IAEE,SAAS,EAAC,mBAFZ;IAGE,KAAK,EAAC,eAHR;IAIE,OAAO,EAAE,MAAMpB,qBAAqB;EAJtC,gBAKE,oBAAC,gBAAD;IACE,mBAAmB,EAAEhB,mBADvB;IAEE,QAAQ,EAAExC,YAFZ;IAGE,aAAa,EAAEI,YAAY,CAACuB,MAAb,GAAsB,CAAtB,GAA0BvB,YAA1B,GAAyC;EAH1D,EALF,CADF,CA7CJ,CADF;AA8DD,CA5SD;;AA8SAf,iBAAiB,CAACkH,SAAlB,GAA8B;EAC5BjH,QAAQ,EAAErB,SAAS,CAACuI,IAAV,CAAeC,UADG;EAE5BlH,KAAK,EAAEtB,SAAS,CAACyI,MAAV,CAAiBD,UAFI;EAG5BjH,EAAE,EAAEvB,SAAS,CAACyI,MAAV,CAAiBD,UAHO;EAI5BhH,IAAI,EAAExB,SAAS,CAACyI,MAAV,CAAiBD,UAJK;EAK5B/G,KAAK,EAAEzB,SAAS,CAAC0I,SAAV,CAAoB,CAAC1I,SAAS,CAACyI,MAAX,EAAmBzI,SAAS,CAAC2I,KAA7B,CAApB,CALqB;EAM5BjH,QAAQ,EAAE1B,SAAS,CAAC0I,SAAV,CAAoB,CAAC1I,SAAS,CAAC4I,MAAX,EAAmB5I,SAAS,CAAC6I,IAA7B,CAApB,CANkB;EAO5BlH,qBAAqB,EAAE3B,SAAS,CAAC6I,IAPL;EAQ5BjH,cAAc,EAAE5B,SAAS,CAAC6I;AARE,CAA9B;AAWAzH,iBAAiB,CAAC0H,YAAlB,GAAiC;EAC/BrH,KAAK,EAAE,EADwB;EAE/BC,QAAQ,EAAE,KAFqB;EAG/BC,qBAAqB,EAAE,KAHQ;EAI/BC,cAAc,EAAE;AAJe,CAAjC;AAOA,eAAeR,iBAAf"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/plugin-media-ui",
3
- "version": "0.124.0",
3
+ "version": "0.125.0-admin-updates.0",
4
4
  "description": "Blaze plugin media ui",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -27,10 +27,10 @@
27
27
  },
28
28
  "license": "GPL-3.0",
29
29
  "dependencies": {
30
- "@blaze-cms/admin-ui-utils": "^0.124.0",
30
+ "@blaze-cms/admin-ui-utils": "^0.125.0-admin-updates.0",
31
31
  "@blaze-cms/core-errors": "^0.118.0",
32
- "@blaze-cms/plugin-search-ui": "^0.124.0",
33
- "@blaze-cms/react-form-builder": "^0.124.0",
32
+ "@blaze-cms/plugin-search-ui": "^0.125.0-admin-updates.0",
33
+ "@blaze-cms/react-form-builder": "^0.125.0-admin-updates.0",
34
34
  "@blaze-cms/setup-ui": "^0.92.0",
35
35
  "@blaze-react/button": "0.5.19",
36
36
  "@blaze-react/drafteditor": "0.7.0",
@@ -57,5 +57,5 @@
57
57
  "lib/*",
58
58
  "lib-es/*"
59
59
  ],
60
- "gitHead": "db99e69def55f8ea7fa5e670bee910103b291ca9"
60
+ "gitHead": "935ad60cd8cb3d04e45459a93a04bc0846644445"
61
61
  }
@@ -1,9 +1,8 @@
1
1
  import React, { useState, useContext, useEffect } from 'react';
2
2
  import FileUpload from '@blaze-react/file-upload';
3
- import Modal from '@blaze-react/modal';
4
3
  import PropTypes from 'prop-types';
5
4
  import { useApolloClient } from '@apollo/client';
6
- import { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';
5
+ import { getQuery, getMutation, ModalAdapter as Modal } from '@blaze-cms/admin-ui-utils';
7
6
  import { parseFormValues } from '@blaze-cms/react-form-builder';
8
7
  import useToasts from '@blaze-react/toaster/lib/Toast/useToasts';
9
8
  import { MORE } from '../../constants';