@blaze-cms/plugin-media-ui 0.140.3 → 0.141.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,25 @@
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.141.0-alpha.1](https://github.com/thebyte9/blaze/compare/v0.141.0-alpha.0...v0.141.0-alpha.1) (2024-05-08)
7
+
8
+ **Note:** Version bump only for package @blaze-cms/plugin-media-ui
9
+
10
+
11
+
12
+
13
+
14
+ # [0.141.0-alpha.0](https://github.com/thebyte9/blaze/compare/v0.140.3...v0.141.0-alpha.0) (2024-04-24)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * fix import and wrap file upload in toast provider ([#4080](https://github.com/thebyte9/blaze/issues/4080)) ([19288f8](https://github.com/thebyte9/blaze/commit/19288f82c1eb646a60121c6e1bbb7e3d52b2f8d0))
20
+
21
+
22
+
23
+
24
+
6
25
  ## [0.140.3](https://github.com/thebyte9/blaze/compare/v0.140.2...v0.140.3) (2024-04-04)
7
26
 
8
27
  **Note:** Version bump only for package @blaze-cms/plugin-media-ui
@@ -37,7 +37,7 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
37
37
  var _client = require("@apollo/client");
38
38
  var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
39
39
  var _reactFormBuilder = require("@blaze-cms/react-form-builder");
40
- var _useToasts2 = _interopRequireDefault(require("@blaze-react/toaster/lib/Toast/useToasts"));
40
+ var _toaster = require("@blaze-react/toaster");
41
41
  var _constants = require("../../constants");
42
42
  var _ListingContainer = _interopRequireDefault(require("../ListingContainer"));
43
43
  var _mediaContext = require("../../utils/media-context");
@@ -88,7 +88,7 @@ var FileUploadAdapter = function FileUploadAdapter(_ref) {
88
88
  editFile = _useState10[0],
89
89
  setEditFile = _useState10[1];
90
90
  var client = (0, _client.useApolloClient)();
91
- var _useToasts = (0, _useToasts2["default"])(),
91
+ var _useToasts = (0, _toaster.useToasts)(),
92
92
  addToast = _useToasts.addToast;
93
93
  var getFiles = /*#__PURE__*/function () {
94
94
  var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(offset, ids, fetchAll) {
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploadAdapter.js","names":["_react","_interopRequireWildcard","require","_fileUpload","_interopRequireDefault","_propTypes","_client","_adminUiUtils","_reactFormBuilder","_useToasts2","_constants","_ListingContainer","_mediaContext","_FileList","_useLimit3","_mappers","_FilePreview","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","FileUploadAdapter","_ref","onChange","label","id","type","value","maxItems","shouldRenderInPreview","canDragAndDrop","_useContext","useContext","FormContext","InjectPreview","_useLimit","useLimit","_useLimit2","_slicedToArray2","currentLimit","_useState","useState","_useState2","displayModal","setDisplayModal","initialValue","formatInitialValue","_useState3","_useState4","currentValue","setCurrentValue","_useState5","_useState6","currentOffset","setCurrentOffset","_useState7","_useState8","selectedFiles","setSelectedFiles","_useState9","_useState10","editFile","setEditFile","client","useApolloClient","_useToasts","useToasts","addToast","getFiles","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","offset","ids","fetchAll","_yield$client$query","newFiles","wrap","_callee$","_context","prev","next","query","getQuery","variables","limit","where","_in","skip","fetchPolicy","sent","data","files","abrupt","stop","_x","_x2","_x3","useEffect","_callee2","initialFiles","orderedFiles","_callee2$","_context2","_","orderFiles","fetchMore","_ref4","_callee3","shouldFetchAll","newOffset","updatedOffset","offsetToUse","_callee3$","_context3","concat","_toConsumableArray2","_x4","handleSelectedFiles","checkIsUnselecting","undefined","isUnselectingFile","isUnselecting","valueArray","transformToArray","selectedFilesIds","valueId","includes","parsedValue","getFormat","filesIds","event","target","name","fileData","handleReorderFiles","map","_ref5","fileId","closeModalAndSetValue","isSaving","fileUploadButtonText","getButtonText","filesPending","getNumberFilesPendingToFetch","onOpenLibrary","handleEditModal","file","selectedEditFile","find","_ref6","_id","handleEditFileForm","editedFile","values","parseFormValues","valuesChecked","altText","caption","credits","hrefUrl","currentId","_ref7","Boolean","modalActions","textButton","callback","modifiers","editModalActions","_callback","_callee4","editedFileId","updatedSelectedFiles","_callee4$","_context4","selectedFile","mutate","mutation","getMutation","input","update","cache","_ref8","fileUpdated","updateFile","writeQuery","result","appearance","autoDismiss","t0","console","error","filesPendingString","MORE","fileListSpan","createElement","className","onClick","Fragment","MediaContextProvider","onUnselectFile","selector","previewerId","allFiles","actionText","handleLibraryClick","enableDragAndDrop","ModalAdapter","actions","title","onClose","fileName","handleFormChange","displayForm","previewType","filesSelected","propTypes","PropTypes","func","isRequired","string","oneOfType","array","number","bool","defaultProps","_default","exports"],"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
+ {"version":3,"file":"FileUploadAdapter.js","names":["_react","_interopRequireWildcard","require","_fileUpload","_interopRequireDefault","_propTypes","_client","_adminUiUtils","_reactFormBuilder","_toaster","_constants","_ListingContainer","_mediaContext","_FileList","_useLimit3","_mappers","_FilePreview","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","FileUploadAdapter","_ref","onChange","label","id","type","value","maxItems","shouldRenderInPreview","canDragAndDrop","_useContext","useContext","FormContext","InjectPreview","_useLimit","useLimit","_useLimit2","_slicedToArray2","currentLimit","_useState","useState","_useState2","displayModal","setDisplayModal","initialValue","formatInitialValue","_useState3","_useState4","currentValue","setCurrentValue","_useState5","_useState6","currentOffset","setCurrentOffset","_useState7","_useState8","selectedFiles","setSelectedFiles","_useState9","_useState10","editFile","setEditFile","client","useApolloClient","_useToasts","useToasts","addToast","getFiles","_ref2","_asyncToGenerator2","_regenerator","mark","_callee","offset","ids","fetchAll","_yield$client$query","newFiles","wrap","_callee$","_context","prev","next","query","getQuery","variables","limit","where","_in","skip","fetchPolicy","sent","data","files","abrupt","stop","_x","_x2","_x3","useEffect","_callee2","initialFiles","orderedFiles","_callee2$","_context2","_","orderFiles","fetchMore","_ref4","_callee3","shouldFetchAll","newOffset","updatedOffset","offsetToUse","_callee3$","_context3","concat","_toConsumableArray2","_x4","handleSelectedFiles","checkIsUnselecting","undefined","isUnselectingFile","isUnselecting","valueArray","transformToArray","selectedFilesIds","valueId","includes","parsedValue","getFormat","filesIds","event","target","name","fileData","handleReorderFiles","map","_ref5","fileId","closeModalAndSetValue","isSaving","fileUploadButtonText","getButtonText","filesPending","getNumberFilesPendingToFetch","onOpenLibrary","handleEditModal","file","selectedEditFile","find","_ref6","_id","handleEditFileForm","editedFile","values","parseFormValues","valuesChecked","altText","caption","credits","hrefUrl","currentId","_ref7","Boolean","modalActions","textButton","callback","modifiers","editModalActions","_callback","_callee4","editedFileId","updatedSelectedFiles","_callee4$","_context4","selectedFile","mutate","mutation","getMutation","input","update","cache","_ref8","fileUpdated","updateFile","writeQuery","result","appearance","autoDismiss","t0","console","error","filesPendingString","MORE","fileListSpan","createElement","className","onClick","Fragment","MediaContextProvider","onUnselectFile","selector","previewerId","allFiles","actionText","handleLibraryClick","enableDragAndDrop","ModalAdapter","actions","title","onClose","fileName","handleFormChange","displayForm","previewType","filesSelected","propTypes","PropTypes","func","isRequired","string","oneOfType","array","number","bool","defaultProps","_default","exports"],"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';\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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"}
@@ -139,6 +139,7 @@ var FilterPanel = function FilterPanel() {
139
139
  }, /*#__PURE__*/_react["default"].createElement("div", {
140
140
  className: "select__wrapper"
141
141
  }, /*#__PURE__*/_react["default"].createElement(_select["default"], {
142
+ name: "filter",
142
143
  defaultTextValue: "Any",
143
144
  options: storeOptions,
144
145
  onChange: onSelectFilter,
@@ -1 +1 @@
1
- {"version":3,"file":"FilterPanel.js","names":["_react","_interopRequireWildcard","require","_pluginSearchUi","_classnames","_interopRequireDefault","_select","_mediaContext","_useFileList2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","FilterPanel","_useState","useState","_useState2","_slicedToArray2","searchTerm","setSearchTerm","_useMediaContext","useMediaContext","MediaContext","filters","selectedFilter","changeSelectedFilter","fileStores","_useFileList","useFileList","queryParams","data","_useState3","id","_useState4","active","setActive","useEffect","handleSearchTerm","_ref","value","target","storeKey","onChangeFilter","filter","isSearch","handleKeyDown","_ref2","key","trim","onSelectFilter","_ref3","activeSegements","reduce","acc","_ref4","index","concat","activeBarSegment","classnames","storeOptions","map","type","name","createElement","className","_ref5","label","onClick","defaultTextValue","options","onChange","selected","SearchBar","search","placeholder","close","_default","exports"],"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 defaultTextValue=\"Any\"\n options={storeOptions}\n onChange={onSelectFilter}\n selected={selectedFilter.storeKey}\n />\n </div>\n <SearchBar\n search={() =>\n changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: true,\n searchTerm,\n storeKey: selectedFilter.storeKey\n })\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":["_react","_interopRequireWildcard","require","_pluginSearchUi","_classnames","_interopRequireDefault","_select","_mediaContext","_useFileList2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","FilterPanel","_useState","useState","_useState2","_slicedToArray2","searchTerm","setSearchTerm","_useMediaContext","useMediaContext","MediaContext","filters","selectedFilter","changeSelectedFilter","fileStores","_useFileList","useFileList","queryParams","data","_useState3","id","_useState4","active","setActive","useEffect","handleSearchTerm","_ref","value","target","storeKey","onChangeFilter","filter","isSearch","handleKeyDown","_ref2","key","trim","onSelectFilter","_ref3","activeSegements","reduce","acc","_ref4","index","concat","activeBarSegment","classnames","storeOptions","map","type","name","createElement","className","_ref5","label","onClick","defaultTextValue","options","onChange","selected","SearchBar","search","placeholder","close","_default","exports"],"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 name=\"filter\"\n defaultTextValue=\"Any\"\n options={storeOptions}\n onChange={onSelectFilter}\n selected={selectedFilter.storeKey}\n />\n </div>\n <SearchBar\n search={() =>\n changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: true,\n searchTerm,\n storeKey: selectedFilter.storeKey\n })\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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"}
@@ -29,6 +29,7 @@ var _react = _interopRequireWildcard(require("react"));
29
29
  var _propTypes = _interopRequireDefault(require("prop-types"));
30
30
  var _client = require("@apollo/client");
31
31
  var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
32
+ var _toaster = require("@blaze-react/toaster");
32
33
  var _Listing = _interopRequireDefault(require("./Listing"));
33
34
  var _availableFilters = require("../../utils/available-filters/available-filters");
34
35
  var _mediaContext = require("../../utils/media-context");
@@ -92,7 +93,7 @@ var ListingContainer = function ListingContainer(_ref) {
92
93
  var isDefault = _ref3.isDefault;
93
94
  return isDefault;
94
95
  }) || {}).key;
95
- return /*#__PURE__*/_react["default"].createElement(_mediaContext.MediaContextProvider, {
96
+ return /*#__PURE__*/_react["default"].createElement(_toaster.ToastProvider, null, /*#__PURE__*/_react["default"].createElement(_mediaContext.MediaContextProvider, {
96
97
  value: {
97
98
  fileStores: fileStores,
98
99
  defaultFileStore: defaultFileStore,
@@ -112,7 +113,7 @@ var ListingContainer = function ListingContainer(_ref) {
112
113
  }, /*#__PURE__*/_react["default"].createElement(_FilesListProvider["default"], null, /*#__PURE__*/_react["default"].createElement(_Listing["default"], {
113
114
  displayFileUploadModal: displayFileUploadModal,
114
115
  handleDisplayFileUploadModal: handleDisplayFileUploadModal
115
- })));
116
+ }))));
116
117
  };
117
118
  ListingContainer.propTypes = {
118
119
  handleSelectedFiles: _propTypes["default"].func,
@@ -1 +1 @@
1
- {"version":3,"file":"ListingContainer.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_client","_adminUiUtils","_Listing","_availableFilters","_mediaContext","_FilesListProvider","_mappers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ListingContainer","_ref","handleSelectedFiles","maxItems","filesSelected","_useState","useState","_useState2","_slicedToArray2","displayFileUploadModal","setDisplayFileUploadModal","_useState3","_useState4","selectedFiles","setSelectedFiles","_useState5","isSearch","searchTerm","storeKey","_useState6","selectedFilter","setSelectedFilter","fileStoresType","getQuery","_useQuery","useQuery","variables","visibleInAdmin","loading","_useQuery$data","data","_useQuery$data2","_useQuery$data2$getFi","getFileStores","fileStores","getSelectedFiles","_ref2","id","existPreviousFile","existPrevious","allSelectedFiles","fileId","concat","_toConsumableArray2","handleDisplayFileUploadModal","param","defaultFileStore","find","_ref3","isDefault","key","createElement","MediaContextProvider","value","changeSelectedFilter","filters","availableFilters","onClickPrompt","propTypes","PropTypes","func","oneOfType","number","bool","arrayOf","string","defaultProps","_default","exports"],"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":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_client","_adminUiUtils","_toaster","_Listing","_availableFilters","_mediaContext","_FilesListProvider","_mappers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ListingContainer","_ref","handleSelectedFiles","maxItems","filesSelected","_useState","useState","_useState2","_slicedToArray2","displayFileUploadModal","setDisplayFileUploadModal","_useState3","_useState4","selectedFiles","setSelectedFiles","_useState5","isSearch","searchTerm","storeKey","_useState6","selectedFilter","setSelectedFilter","fileStoresType","getQuery","_useQuery","useQuery","variables","visibleInAdmin","loading","_useQuery$data","data","_useQuery$data2","_useQuery$data2$getFi","getFileStores","fileStores","getSelectedFiles","_ref2","id","existPreviousFile","existPrevious","allSelectedFiles","fileId","concat","_toConsumableArray2","handleDisplayFileUploadModal","param","defaultFileStore","find","_ref3","isDefault","key","createElement","ToastProvider","MediaContextProvider","value","changeSelectedFilter","filters","availableFilters","onClickPrompt","propTypes","PropTypes","func","oneOfType","number","bool","arrayOf","string","defaultProps","_default","exports"],"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 { ToastProvider } from '@blaze-react/toaster';\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 <ToastProvider>\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 </ToastProvider>\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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"}
@@ -7,7 +7,7 @@ import PropTypes from 'prop-types';
7
7
  import { useApolloClient } from '@apollo/client';
8
8
  import { getQuery, getMutation, ModalAdapter as Modal } from '@blaze-cms/admin-ui-utils';
9
9
  import { parseFormValues } from '@blaze-cms/react-form-builder';
10
- import useToasts from '@blaze-react/toaster/lib/Toast/useToasts';
10
+ import { useToasts } from '@blaze-react/toaster';
11
11
  import { MORE } from '../../constants';
12
12
  import ListingContainer from '../ListingContainer';
13
13
  import { MediaContextProvider } from '../../utils/media-context';
@@ -1 +1 @@
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","_objectSpread","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","createElement","className","onClick","Fragment","onUnselectFile","selector","previewerId","allFiles","actionText","handleLibraryClick","enableDragAndDrop","actions","title","onClose","fileName","handleFormChange","displayForm","previewType","filesSelected","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,KAAK,IAAIC,QAAQ,EAAEC,UAAU,EAAEC,SAAS,QAAQ,OAAO;AAC9D,OAAOC,UAAU,MAAM,0BAA0B;AACjD,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,eAAe,QAAQ,gBAAgB;AAChD,SAASC,QAAQ,EAAEC,WAAW,EAAEC,YAAY,IAAIC,KAAK,QAAQ,2BAA2B;AACxF,SAASC,eAAe,QAAQ,+BAA+B;AAC/D,OAAOC,SAAS,MAAM,0CAA0C;AAChE,SAASC,IAAI,QAAQ,iBAAiB;AACtC,OAAOC,gBAAgB,MAAM,qBAAqB;AAClD,SAASC,oBAAoB,QAAQ,2BAA2B;AAChE,OAAOC,QAAQ,MAAM,YAAY;AACjC,OAAOC,QAAQ,MAAM,YAAY;AACjC,SACEC,SAAS,EACTC,kBAAkB,EAClBC,gBAAgB,EAChBC,aAAa,EACbC,aAAa,EACbC,4BAA4B,QACvB,WAAW;AAClB,OAAOC,WAAW,MAAM,gBAAgB;AAExC,MAAMC,iBAAiB,GAAGA,CAAC;EACzBC,QAAQ;EACRC,KAAK;EACLC,EAAE;EACFC,IAAI;EACJC,KAAK;EACLC,QAAQ;EACRC,qBAAqB;EACrBC;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAc,CAAC,GAAGhC,UAAU,CAACuB,iBAAiB,CAACU,WAAW,CAAC;EACnE,MAAM,CAACC,YAAY,CAAC,GAAGnB,QAAQ,CAACc,QAAQ,CAAC;EACzC,MAAM,CAACM,YAAY,EAAEC,eAAe,CAAC,GAAGrC,QAAQ,CAAC,KAAK,CAAC;EACvD,MAAMsC,YAAY,GAAGpB,kBAAkB,CAAC;IAAEW,KAAK;IAAED;EAAK,CAAC,CAAC;EACxD,MAAM,CAACW,YAAY,EAAEC,eAAe,CAAC,GAAGxC,QAAQ,CAACsC,YAAY,CAAC;EAC9D,MAAM,CAACG,aAAa,EAAEC,gBAAgB,CAAC,GAAG1C,QAAQ,CAAC,CAAC,CAAC;EACrD,MAAM,CAAC2C,aAAa,EAAEC,gBAAgB,CAAC,GAAG5C,QAAQ,CAAC,EAAE,CAAC;EACtD,MAAM,CAAC6C,QAAQ,EAAEC,WAAW,CAAC,GAAG9C,QAAQ,CAAC,IAAI,CAAC;EAC9C,MAAM+C,MAAM,GAAG1C,eAAe,CAAC,CAAC;EAChC,MAAM;IAAE2C;EAAS,CAAC,GAAGrC,SAAS,CAAC,CAAC;EAEhC,MAAMsC,QAAQ,GAAG,MAAAA,CAAOC,MAAM,EAAEC,GAAG,EAAEC,QAAQ,KAAK;IAChD,MAAM;MACJC,IAAI,EAAE;QAAEC,KAAK,EAAEC;MAAS;IAC1B,CAAC,GAAG,MAAMR,MAAM,CAACS,KAAK,CAAC;MACrBA,KAAK,EAAElD,QAAQ,CAAC,WAAW,CAAC;MAC5BmD,SAAS,EAAE;QACTC,KAAK,EAAEN,QAAQ,GAAG,CAAC,GAAG,CAAC;QACvBF,MAAM;QACNS,KAAK,EAAE;UACLhC,EAAE,EAAE;YACFiC,GAAG,EAAET;UACP;QACF;MACF,CAAC;MACDU,IAAI,EAAE,CAACtB,YAAY,CAACuB,MAAM;MAC1BC,WAAW,EAAE;IACf,CAAC,CAAC;IACF,OAAOR,QAAQ;EACjB,CAAC;EAEDrD,SAAS,CACP,MAAM;IACJ,CAAC,YAAY;MACX,MAAM8D,YAAY,GAAG,CAACrB,aAAa,CAACmB,MAAM,GACtCvB,YAAY,CAAC0B,MAAM,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKA,CAAC,IAAI,CAAC,CAAC,GACrC5B,YAAY;MAEhB,MAAMe,KAAK,GAAG,MAAML,QAAQ,CAAC,CAAC,EAAEe,YAAY,CAAC;MAC7C,MAAMI,YAAY,GAAGC,UAAU,CAACf,KAAK,EAAEf,YAAY,CAAC;MACpDG,gBAAgB,CAAC,CAAC,CAAC;MACnBE,gBAAgB,CAACwB,YAAY,CAAC;IAChC,CAAC,EAAE,CAAC;EACN,CAAC,EACD,CAAC7B,YAAY,CAAC,CAAC;EACjB,CAAC;EAED,MAAM+B,SAAS,GAAG,MAAMC,cAAc,IAAI;IACxC,IAAI5B,aAAa,CAACmB,MAAM,KAAKvB,YAAY,CAACuB,MAAM,EAAE;IAClD,MAAMU,SAAS,GAAG/B,aAAa,GAAG,CAAC;IACnC,MAAMgC,aAAa,GAAGD,SAAS,GAAGjC,YAAY,CAACuB,MAAM,GAAGvB,YAAY,CAACuB,MAAM,GAAGU,SAAS;IACvF,MAAME,WAAW,GAAGH,cAAc,GAAG,CAAC,GAAGE,aAAa;IACtD,MAAMnB,KAAK,GAAG,MAAML,QAAQ,CAACyB,WAAW,EAAEnC,YAAY,EAAEgC,cAAc,CAAC;IACvE,MAAMhB,QAAQ,GAAG,CAAC,GAAGZ,aAAa,EAAE,GAAGW,KAAK,CAAC;IAC7C,MAAMc,YAAY,GAAGC,UAAU,CAACd,QAAQ,EAAEhB,YAAY,CAAC;IACvDK,gBAAgB,CAACwB,YAAY,CAAC;IAC9B1B,gBAAgB,CAAC8B,SAAS,CAAC;EAC7B,CAAC;EAED,MAAMG,mBAAmB,GAAGA,CAACrB,KAAK,EAAEsB,kBAAkB,GAAG,IAAI,KAAK;IAChE,MAAMC,iBAAiB,GAAGzD,aAAa,CAACS,KAAK,EAAE+C,kBAAkB,EAAEtB,KAAK,CAAC;IACzE,IAAIuB,iBAAiB,EAAE;MACrB,MAAMC,UAAU,GAAG3D,gBAAgB,CAACU,KAAK,CAAC;MAC1C,MAAMkD,gBAAgB,GAAGD,UAAU,CAACb,MAAM,CAACe,OAAO,IAAI,CAAC1B,KAAK,CAAC2B,QAAQ,CAACD,OAAO,CAAC,CAAC;MAC/E,MAAME,WAAW,GAAGjE,SAAS,CAACW,IAAI,EAAE;QAAEuD,QAAQ,EAAEJ;MAAiB,CAAC,CAAC;MACnEvC,eAAe,CAACuC,gBAAgB,CAAC;MACjC,OAAOtD,QAAQ,CAAC;QACd2D,KAAK,EAAE;UACLC,MAAM,EAAE;YACNxD,KAAK,EAAEqD,WAAW;YAClBI,IAAI,EAAE3D,EAAE;YACRC,IAAI;YACJ2D,QAAQ,EAAER,gBAAgB,CAACjB,MAAM,GAAGiB,gBAAgB,GAAG;UACzD;QACF,CAAC;QACDlD,KAAK,EAAEqD;MACT,CAAC,CAAC;IACJ;IAEA1C,eAAe,CAACc,KAAK,CAAC;EACxB,CAAC;EAED,MAAMkC,kBAAkB,GAAGlC,KAAK,IAAI;IAClC,MAAM6B,QAAQ,GAAG7B,KAAK,CAACmC,GAAG,CAAC,CAAC;MAAE9D,EAAE,EAAE+D;IAAO,CAAC,KAAKA,MAAM,CAAC;IACtD,MAAMR,WAAW,GAAGjE,SAAS,CAACW,IAAI,EAAE;MAAEuD;IAAS,CAAC,CAAC;IACjDvC,gBAAgB,CAACU,KAAK,CAAC;IAEvB,OAAO7B,QAAQ,CAAC;MACd2D,KAAK,EAAE;QACLC,MAAM,EAAE;UACNxD,KAAK,EAAEqD,WAAW;UAClBI,IAAI,EAAE3D,EAAE;UACRC,IAAI;UACJ2D,QAAQ,EAAEJ;QACZ;MACF,CAAC;MACDtD,KAAK,EAAEqD;IACT,CAAC,CAAC;EACJ,CAAC;EAED,MAAMS,qBAAqB,GAAGC,QAAQ,IAAI;IACxC,IAAIA,QAAQ,EAAE;MACZ,MAAMV,WAAW,GAAGjE,SAAS,CAACW,IAAI,EAAE;QAAEuD,QAAQ,EAAE5C;MAAa,CAAC,CAAC;MAC/DF,eAAe,CAAC,KAAK,CAAC;MACtB,OAAOZ,QAAQ,CAAC;QACd2D,KAAK,EAAE;UAAEC,MAAM,EAAE;YAAExD,KAAK,EAAEqD,WAAW;YAAEI,IAAI,EAAE3D,EAAE;YAAEC,IAAI;YAAEW;UAAa;QAAE,CAAC;QACvEV,KAAK,EAAEqD;MACT,CAAC,CAAC;IACJ;IAEA1C,eAAe,CAACF,YAAY,CAAC;IAC7BD,eAAe,CAAC,KAAK,CAAC;EACxB,CAAC;EAED,MAAMwD,oBAAoB,GAAGxE,aAAa,CAAC;IAAES,QAAQ;IAAED,KAAK,EAAES;EAAa,CAAC,CAAC;EAE7E,MAAMwD,YAAY,GAAGxE,4BAA4B,CAACmB,aAAa,EAAEF,YAAY,CAAC;EAC9E,MAAMwD,aAAa,GAAGA,CAAA,KAAM1D,eAAe,CAAC,IAAI,CAAC;EACjD,MAAM2D,eAAe,GAAGC,IAAI,IAAI;IAC9B,MAAMC,gBAAgB,GAAGvD,aAAa,CAACwD,IAAI,CAAC,CAAC;MAAExE,EAAE,EAAEyE;IAAI,CAAC,KAAKA,GAAG,KAAKH,IAAI,CAACtE,EAAE,CAAC;IAC7EmB,WAAW,CAACoD,gBAAgB,CAAC;EAC/B,CAAC;EAED,MAAMG,kBAAkB,GAAGC,UAAU,IAAI;IACvC,MAAMC,MAAM,GAAG7F,eAAe,CAAC4F,UAAU,CAACE,aAAa,CAAC;IAExD,MAAM;MAAEC,OAAO;MAAEC,OAAO;MAAEC,OAAO;MAAEC,OAAO;MAAEtB;IAAK,CAAC,GAAGiB,MAAM;IAC3DzD,WAAW,CAAA+D,aAAA,CAAAA,aAAA,KACNhE,QAAQ;MACXyC,IAAI;MACJjC,IAAI,EAAE;QACJoD,OAAO;QACPC,OAAO;QACPC,OAAO;QACPC;MACF;IAAC,EACF,CAAC;EACJ,CAAC;EAED,MAAMvC,UAAU,GAAGA,CAACf,KAAK,EAAEH,GAAG,KAC5BA,GAAG,CAACsC,GAAG,CAACqB,SAAS,IAAIxD,KAAK,CAAC6C,IAAI,CAAC,CAAC;IAAExE,EAAE,EAAE+D;EAAO,CAAC,KAAKA,MAAM,KAAKoB,SAAS,CAAC,CAAC,CAAC7C,MAAM,CAAC8C,OAAO,CAAC;EAE5F,MAAMC,YAAY,GAAG,CACnB;IACEC,UAAU,EAAE,QAAQ;IACpBC,QAAQ,EAAEA,CAAA,KAAM;MACdvB,qBAAqB,CAAC,CAAC;IACzB,CAAC;IACDwB,SAAS,EAAE,CAAC,QAAQ;EACtB,CAAC,EACD;IACEF,UAAU,EAAE,MAAM;IAClBC,QAAQ,EAAEA,CAAA,KAAM;MACdvB,qBAAqB,CAAC,IAAI,CAAC;IAC7B,CAAC;IACDwB,SAAS,EAAE;EACb,CAAC,CACF;EAED,MAAMC,gBAAgB,GAAG,CACvB;IACEH,UAAU,EAAE,QAAQ;IACpBC,QAAQ,EAAEA,CAAA,KAAM;MACdpE,WAAW,CAAC,IAAI,CAAC;IACnB,CAAC;IACDqE,SAAS,EAAE,CAAC,QAAQ;EACtB,CAAC,EACD;IACEF,UAAU,EAAE,MAAM;IAClBC,QAAQ,EAAE,MAAAA,CAAA,KAAY;MACpB,MAAM;QAAE5B,IAAI;QAAE3D,EAAE,EAAE0F,YAAY;QAAEhE;MAAK,CAAC,GAAGR,QAAQ;MACjD,MAAMyE,oBAAoB,GAAG3E,aAAa,CAAC8C,GAAG,CAAC8B,YAAY,IAAI;QAC7D,IAAIA,YAAY,CAAC5F,EAAE,KAAK0F,YAAY,EAAE;UACpC,OAAAR,aAAA,CAAAA,aAAA,KAAYU,YAAY;YAAEjC,IAAI;YAAEjC;UAAI;QACtC;QACA,OAAOkE,YAAY;MACrB,CAAC,CAAC;MACF3E,gBAAgB,CAAC0E,oBAAoB,CAAC;MAEtC,IAAI;QACF,MAAMvE,MAAM,CAACyE,MAAM,CAAC;UAClBC,QAAQ,EAAElH,WAAW,CAAC,aAAa,CAAC;UACpCkD,SAAS,EAAE;YACTiE,KAAK,EAAE;cACLpC,IAAI;cACJjC,IAAI;cACJ1B,EAAE,EAAE0F;YACN;UACF,CAAC;UACDM,MAAMA,CACJC,KAAK,EACL;YACEvE,IAAI,EAAE;cAAEwE,UAAU,EAAEC;YAAY;UAClC,CAAC,EACD;YACAF,KAAK,CAACG,UAAU,CAAC;cACfvE,KAAK,EAAElD,QAAQ,CAAC,gBAAgB,CAAC;cACjCmD,SAAS,EAAE;gBAAE9B;cAAG,CAAC;cACjB0B,IAAI,EAAE;gBAAE4C,IAAI,EAAE6B,WAAW,CAACE;cAAO;YACnC,CAAC,CAAC;UACJ;QACF,CAAC,CAAC;QAEFhF,QAAQ,CAAE,SAAQH,QAAQ,CAACyC,IAAK,mBAAkB,EAAE;UAClD2C,UAAU,EAAE,SAAS;UACrBC,WAAW,EAAE;QACf,CAAC,CAAC;QACFvC,qBAAqB,CAAC,IAAI,CAAC;QAC3B7C,WAAW,CAAC,IAAI,CAAC;MACnB,CAAC,CAAC,OAAOqF,CAAC,EAAE;QACVnF,QAAQ,CAAE,SAAQH,QAAQ,CAACyC,IAAK,uBAAsB,EAAE;UACtD2C,UAAU,EAAE,OAAO;UACnBC,WAAW,EAAE;QACf,CAAC,CAAC;QACFE,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC,CAAC,CAAC;MACpB;IACF,CAAC;IACDhB,SAAS,EAAE;EACb,CAAC,CACF;EACD,MAAMmB,kBAAkB,GAAI,GAAExC,YAAa,IAAGlF,IAAK,EAAC;EACpD,MAAM2H,YAAY,GAAGzC,YAAY;EAAA;EAC/B;EACA/F,KAAA,CAAAyI,aAAA;IAAMC,SAAS,EAAC,qDAAqD;IAACC,OAAO,EAAEpE;EAAU,GAAC,IACtF,EAACgE,kBACC,CAAC,GACL,IAAI;EAER,oBACEvI,KAAA,CAAAyI,aAAA,CAAAzI,KAAA,CAAA4I,QAAA,qBACE5I,KAAA,CAAAyI,aAAA;IAAKC,SAAS,EAAC;EAA+B,gBAC5C1I,KAAA,CAAAyI,aAAA,gBAAQ9G,KAAa,CAAC,EACrBiB,aAAa,iBACZ5C,KAAA,CAAAyI,aAAA,CAAAzI,KAAA,CAAA4I,QAAA,qBACE5I,KAAA,CAAAyI,aAAA,CAAC1H,oBAAoB;IAACe,KAAK,EAAE;MAAEmE,eAAe;MAAE4C,cAAc,EAAEjE;IAAoB;EAAE,GACnF5C,qBAAqB,gBACpBhC,KAAA,CAAAyI,aAAA,CAACvG,aAAa;IAAC4G,QAAQ,EAAErH,iBAAiB,CAACsH;EAAY,gBACrD/I,KAAA,CAAAyI,aAAA,CAACzH,QAAQ;IACP4B,aAAa,EAAEA,aAAc;IAC7BoG,QAAQ,EAAExG,YAAa;IACvBiD,kBAAkB,EAAEA,kBAAmB;IACvCxD,cAAc,EAAEA,cAAe;IAC/BsC,SAAS,EAAEA;EAAU,GACpBiE,YACO,CACG,CAAC,gBAEhBxI,KAAA,CAAAyI,aAAA,CAACzH,QAAQ;IACP4B,aAAa,EAAEA,aAAc;IAC7B6C,kBAAkB,EAAEA,kBAAmB;IACvClB,SAAS,EAAEA;EAAU,CACtB,CAEiB,CACtB,CACH,eACDvE,KAAA,CAAAyI,aAAA,CAACrI,UAAU;IACT6I,UAAU,EAAEnD,oBAAqB;IACjCoD,kBAAkB,EAAElD,aAAc;IAClCmD,iBAAiB,EAAE;EAAM,CAC1B,CACE,CAAC,EACLrG,QAAQ,iBACP9C,KAAA,CAAAyI,aAAA,CAAC/H,KAAK;IAAC0I,OAAO,EAAE/B,gBAAiB;IAACgC,KAAK,EAAC,WAAW;IAACC,OAAO,EAAEA,CAAA,KAAMvG,WAAW,CAAC,IAAI;EAAE,gBACnF/C,KAAA,CAAAyI,aAAA,CAACjH,WAAW;IACV0E,IAAI,EAAEpD,QAAS;IACfyG,QAAQ,EAAEzG,QAAQ,CAACyG,QAAS;IAC5BC,gBAAgB,EAAElD,kBAAmB;IACrCmD,WAAW;IACXC,WAAW,EAAC;EAAM,CACnB,CACI,CACR,EACArH,YAAY,iBACXrC,KAAA,CAAAyI,aAAA;IAAKC,SAAS,EAAC;EAA2B,gBACxC1I,KAAA,CAAAyI,aAAA,CAAC/H,KAAK;IACJ0I,OAAO,EAAEnC,YAAa;IACtByB,SAAS,EAAC,mBAAmB;IAC7BW,KAAK,EAAC,eAAe;IACrBC,OAAO,EAAEA,CAAA,KAAM1D,qBAAqB,CAAC;EAAE,gBACvC5F,KAAA,CAAAyI,aAAA,CAAC3H,gBAAgB;IACf8D,mBAAmB,EAAEA,mBAAoB;IACzC7C,QAAQ,EAAEK,YAAa;IACvBuH,aAAa,EAAEnH,YAAY,CAACuB,MAAM,GAAG,CAAC,GAAGvB,YAAY,GAAG;EAAG,CAC5D,CACI,CACJ,CAEP,CAAC;AAEP,CAAC;AAEDf,iBAAiB,CAACmI,SAAS,GAAG;EAC5BlI,QAAQ,EAAErB,SAAS,CAACwJ,IAAI,CAACC,UAAU;EACnCnI,KAAK,EAAEtB,SAAS,CAAC0J,MAAM,CAACD,UAAU;EAClClI,EAAE,EAAEvB,SAAS,CAAC0J,MAAM,CAACD,UAAU;EAC/BjI,IAAI,EAAExB,SAAS,CAAC0J,MAAM,CAACD,UAAU;EACjChI,KAAK,EAAEzB,SAAS,CAAC2J,SAAS,CAAC,CAAC3J,SAAS,CAAC0J,MAAM,EAAE1J,SAAS,CAAC4J,KAAK,CAAC,CAAC;EAC/DlI,QAAQ,EAAE1B,SAAS,CAAC2J,SAAS,CAAC,CAAC3J,SAAS,CAAC6J,MAAM,EAAE7J,SAAS,CAAC8J,IAAI,CAAC,CAAC;EACjEnI,qBAAqB,EAAE3B,SAAS,CAAC8J,IAAI;EACrClI,cAAc,EAAE5B,SAAS,CAAC8J;AAC5B,CAAC;AAED1I,iBAAiB,CAAC2I,YAAY,GAAG;EAC/BtI,KAAK,EAAE,EAAE;EACTC,QAAQ,EAAE,KAAK;EACfC,qBAAqB,EAAE,KAAK;EAC5BC,cAAc,EAAE;AAClB,CAAC;AAED,eAAeR,iBAAiB"}
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","_objectSpread","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","createElement","className","onClick","Fragment","onUnselectFile","selector","previewerId","allFiles","actionText","handleLibraryClick","enableDragAndDrop","actions","title","onClose","fileName","handleFormChange","displayForm","previewType","filesSelected","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';\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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"}
@@ -112,6 +112,7 @@ const FilterPanel = () => {
112
112
  }, /*#__PURE__*/React.createElement("div", {
113
113
  className: "select__wrapper"
114
114
  }, /*#__PURE__*/React.createElement(Select, {
115
+ name: "filter",
115
116
  defaultTextValue: "Any",
116
117
  options: storeOptions,
117
118
  onChange: onSelectFilter,
@@ -1 +1 @@
1
- {"version":3,"file":"FilterPanel.js","names":["React","useState","useEffect","SearchBar","classnames","Select","useMediaContext","MediaContext","useFileList","FilterPanel","searchTerm","setSearchTerm","filters","selectedFilter","changeSelectedFilter","fileStores","queryParams","data","active","setActive","id","handleSearchTerm","target","value","storeKey","onChangeFilter","filter","isSearch","handleKeyDown","key","trim","onSelectFilter","activeSegements","reduce","acc","index","activeBarSegment","storeOptions","map","type","name","createElement","className","label","onClick","defaultTextValue","options","onChange","selected","search","placeholder","close"],"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 defaultTextValue=\"Any\"\n options={storeOptions}\n onChange={onSelectFilter}\n selected={selectedFilter.storeKey}\n />\n </div>\n <SearchBar\n search={() =>\n changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: true,\n searchTerm,\n storeKey: selectedFilter.storeKey\n })\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":["React","useState","useEffect","SearchBar","classnames","Select","useMediaContext","MediaContext","useFileList","FilterPanel","searchTerm","setSearchTerm","filters","selectedFilter","changeSelectedFilter","fileStores","queryParams","data","active","setActive","id","handleSearchTerm","target","value","storeKey","onChangeFilter","filter","isSearch","handleKeyDown","key","trim","onSelectFilter","activeSegements","reduce","acc","index","activeBarSegment","storeOptions","map","type","name","createElement","className","label","onClick","defaultTextValue","options","onChange","selected","search","placeholder","close"],"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 name=\"filter\"\n defaultTextValue=\"Any\"\n options={storeOptions}\n onChange={onSelectFilter}\n selected={selectedFilter.storeKey}\n />\n </div>\n <SearchBar\n search={() =>\n changeSelectedFilter({\n filter: selectedFilter.filter,\n isSearch: true,\n searchTerm,\n storeKey: selectedFilter.storeKey\n })\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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"}
@@ -5,6 +5,7 @@ import React, { useState } from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { useQuery } from '@apollo/client';
7
7
  import { getQuery } from '@blaze-cms/admin-ui-utils';
8
+ import { ToastProvider } from '@blaze-react/toaster';
8
9
  import Listing from './Listing';
9
10
  import { availableFilters } from '../../utils/available-filters/available-filters';
10
11
  import { MediaContextProvider } from '../../utils/media-context';
@@ -52,7 +53,7 @@ const ListingContainer = ({
52
53
  const defaultFileStore = (fileStores.find(({
53
54
  isDefault
54
55
  }) => isDefault) || {}).key;
55
- return /*#__PURE__*/React.createElement(MediaContextProvider, {
56
+ return /*#__PURE__*/React.createElement(ToastProvider, null, /*#__PURE__*/React.createElement(MediaContextProvider, {
56
57
  value: {
57
58
  fileStores,
58
59
  defaultFileStore,
@@ -68,7 +69,7 @@ const ListingContainer = ({
68
69
  }, /*#__PURE__*/React.createElement(FilesListProvider, null, /*#__PURE__*/React.createElement(Listing, {
69
70
  displayFileUploadModal: displayFileUploadModal,
70
71
  handleDisplayFileUploadModal: handleDisplayFileUploadModal
71
- })));
72
+ }))));
72
73
  };
73
74
  ListingContainer.propTypes = {
74
75
  handleSelectedFiles: PropTypes.func,
@@ -1 +1 @@
1
- {"version":3,"file":"ListingContainer.js","names":["React","useState","PropTypes","useQuery","getQuery","Listing","availableFilters","MediaContextProvider","FilesListProvider","existPrevious","ListingContainer","handleSelectedFiles","maxItems","filesSelected","displayFileUploadModal","setDisplayFileUploadModal","selectedFiles","setSelectedFiles","selectedFilter","setSelectedFilter","filter","isSearch","searchTerm","storeKey","fileStoresType","loading","data","getFileStores","fileStores","variables","visibleInAdmin","getSelectedFiles","id","existPreviousFile","length","allSelectedFiles","fileId","handleDisplayFileUploadModal","param","defaultFileStore","find","isDefault","key","createElement","value","changeSelectedFilter","_objectSpread","filters","onClickPrompt","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":["React","useState","PropTypes","useQuery","getQuery","ToastProvider","Listing","availableFilters","MediaContextProvider","FilesListProvider","existPrevious","ListingContainer","handleSelectedFiles","maxItems","filesSelected","displayFileUploadModal","setDisplayFileUploadModal","selectedFiles","setSelectedFiles","selectedFilter","setSelectedFilter","filter","isSearch","searchTerm","storeKey","fileStoresType","loading","data","getFileStores","fileStores","variables","visibleInAdmin","getSelectedFiles","id","existPreviousFile","length","allSelectedFiles","fileId","handleDisplayFileUploadModal","param","defaultFileStore","find","isDefault","key","createElement","value","changeSelectedFilter","_objectSpread","filters","onClickPrompt","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 { ToastProvider } from '@blaze-react/toaster';\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 <ToastProvider>\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 </ToastProvider>\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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/plugin-media-ui",
3
- "version": "0.140.3",
3
+ "version": "0.141.0-alpha.1",
4
4
  "description": "Blaze plugin media ui",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -27,14 +27,14 @@
27
27
  },
28
28
  "license": "GPL-3.0",
29
29
  "dependencies": {
30
- "@blaze-cms/admin-ui-utils": "^0.140.3",
30
+ "@blaze-cms/admin-ui-utils": "0.141.0-alpha.0",
31
31
  "@blaze-cms/core-errors": "^0.140.3",
32
- "@blaze-cms/plugin-search-ui": "^0.140.3",
33
- "@blaze-cms/react-form-builder": "^0.140.3",
32
+ "@blaze-cms/plugin-search-ui": "0.141.0-alpha.1",
33
+ "@blaze-cms/react-form-builder": "0.141.0-alpha.1",
34
34
  "@blaze-cms/setup-ui": "^0.140.3",
35
35
  "@blaze-react/button": "0.5.19",
36
36
  "@blaze-react/drafteditor": "0.7.0",
37
- "@blaze-react/file-upload": "0.8.0-alpha.67",
37
+ "@blaze-react/file-upload": "0.8.0-alpha.78",
38
38
  "@blaze-react/modal": "0.5.19",
39
39
  "@blaze-react/more": "0.5.19",
40
40
  "@blaze-react/toaster": "0.5.17",
@@ -57,5 +57,5 @@
57
57
  "lib/*",
58
58
  "lib-es/*"
59
59
  ],
60
- "gitHead": "f62fd2bbc9cd4f2d1d3e77e679551b1a6ee72b81"
60
+ "gitHead": "511c3db4259e32fc0e45b4072254189b9d64764c"
61
61
  }
@@ -4,7 +4,7 @@ import PropTypes from 'prop-types';
4
4
  import { useApolloClient } from '@apollo/client';
5
5
  import { getQuery, getMutation, ModalAdapter as Modal } from '@blaze-cms/admin-ui-utils';
6
6
  import { parseFormValues } from '@blaze-cms/react-form-builder';
7
- import useToasts from '@blaze-react/toaster/lib/Toast/useToasts';
7
+ import { useToasts } from '@blaze-react/toaster';
8
8
  import { MORE } from '../../constants';
9
9
  import ListingContainer from '../ListingContainer';
10
10
  import { MediaContextProvider } from '../../utils/media-context';
@@ -114,6 +114,7 @@ const FilterPanel = () => {
114
114
  <div className="filter-panel__searchBarWrapper">
115
115
  <div className="select__wrapper">
116
116
  <Select
117
+ name="filter"
117
118
  defaultTextValue="Any"
118
119
  options={storeOptions}
119
120
  onChange={onSelectFilter}
@@ -2,6 +2,7 @@ import React, { useState } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { useQuery } from '@apollo/client';
4
4
  import { getQuery } from '@blaze-cms/admin-ui-utils';
5
+ import { ToastProvider } from '@blaze-react/toaster';
5
6
  import Listing from './Listing';
6
7
  import { availableFilters } from '../../utils/available-filters/available-filters';
7
8
  import { MediaContextProvider } from '../../utils/media-context';
@@ -45,27 +46,29 @@ const ListingContainer = ({ handleSelectedFiles, maxItems, filesSelected }) => {
45
46
  const defaultFileStore = (fileStores.find(({ isDefault }) => isDefault) || {}).key;
46
47
 
47
48
  return (
48
- <MediaContextProvider
49
- value={{
50
- fileStores,
51
- defaultFileStore,
52
- changeSelectedFilter: value => setSelectedFilter(value),
53
- selectedFilter: {
54
- ...selectedFilter,
55
- storeKey: selectedFilter.storeKey || defaultFileStore
56
- },
57
- selectedFiles,
58
- getSelectedFiles,
59
- filters: availableFilters,
60
- onClickPrompt: () => handleDisplayFileUploadModal(true)
61
- }}>
62
- <FilesListProvider>
63
- <Listing
64
- displayFileUploadModal={displayFileUploadModal}
65
- handleDisplayFileUploadModal={handleDisplayFileUploadModal}
66
- />
67
- </FilesListProvider>
68
- </MediaContextProvider>
49
+ <ToastProvider>
50
+ <MediaContextProvider
51
+ value={{
52
+ fileStores,
53
+ defaultFileStore,
54
+ changeSelectedFilter: value => setSelectedFilter(value),
55
+ selectedFilter: {
56
+ ...selectedFilter,
57
+ storeKey: selectedFilter.storeKey || defaultFileStore
58
+ },
59
+ selectedFiles,
60
+ getSelectedFiles,
61
+ filters: availableFilters,
62
+ onClickPrompt: () => handleDisplayFileUploadModal(true)
63
+ }}>
64
+ <FilesListProvider>
65
+ <Listing
66
+ displayFileUploadModal={displayFileUploadModal}
67
+ handleDisplayFileUploadModal={handleDisplayFileUploadModal}
68
+ />
69
+ </FilesListProvider>
70
+ </MediaContextProvider>
71
+ </ToastProvider>
69
72
  );
70
73
  };
71
74