@blaze-cms/plugin-media-ui 0.146.0-node18-core-styles-tooltips.3 → 0.146.0-node18-core-styles-tooltips.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/lib/components/CardMedia/CardMedia.js +15 -5
  3. package/lib/components/CardMedia/CardMedia.js.map +1 -1
  4. package/lib/components/EditMediaFile/EditMediaFile.js +11 -6
  5. package/lib/components/EditMediaFile/EditMediaFile.js.map +1 -1
  6. package/lib/components/EditMediaFile/EditMediaFilePage.js +3 -2
  7. package/lib/components/EditMediaFile/EditMediaFilePage.js.map +1 -1
  8. package/lib/components/FilePreview/Image/Image.js +10 -5
  9. package/lib/components/FilePreview/Image/Image.js.map +1 -1
  10. package/lib/components/FilePreview/ModalContext.js +10 -0
  11. package/lib/components/FilePreview/ModalContext.js.map +1 -0
  12. package/lib/components/FilePreview/index.js +8 -4
  13. package/lib/components/FilePreview/index.js.map +1 -1
  14. package/lib/components/FileUploadAdapter/FileUploadAdapter.js +4 -3
  15. package/lib/components/FileUploadAdapter/FileUploadAdapter.js.map +1 -1
  16. package/lib/components/FileUploadModal/FileUploadModal.js +1 -1
  17. package/lib/components/FileUploadModal/FileUploadModal.js.map +1 -1
  18. package/lib/components/ListingContainer/Listing/Listing.js +10 -5
  19. package/lib/components/ListingContainer/Listing/Listing.js.map +1 -1
  20. package/lib/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +9 -5
  21. package/lib/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js.map +1 -1
  22. package/lib/components/ListingContainer/Listing/MediaListing/MediaListing.js +11 -3
  23. package/lib/components/ListingContainer/Listing/MediaListing/MediaListing.js.map +1 -1
  24. package/lib/components/ListingContainer/ListingContainer.js +8 -4
  25. package/lib/components/ListingContainer/ListingContainer.js.map +1 -1
  26. package/lib-es/components/CardMedia/CardMedia.js +15 -5
  27. package/lib-es/components/CardMedia/CardMedia.js.map +1 -1
  28. package/lib-es/components/EditMediaFile/EditMediaFile.js +11 -6
  29. package/lib-es/components/EditMediaFile/EditMediaFile.js.map +1 -1
  30. package/lib-es/components/EditMediaFile/EditMediaFilePage.js +3 -2
  31. package/lib-es/components/EditMediaFile/EditMediaFilePage.js.map +1 -1
  32. package/lib-es/components/FilePreview/Image/Image.js +10 -5
  33. package/lib-es/components/FilePreview/Image/Image.js.map +1 -1
  34. package/lib-es/components/FilePreview/ModalContext.js +3 -0
  35. package/lib-es/components/FilePreview/ModalContext.js.map +1 -0
  36. package/lib-es/components/FilePreview/index.js +8 -4
  37. package/lib-es/components/FilePreview/index.js.map +1 -1
  38. package/lib-es/components/FileUploadAdapter/FileUploadAdapter.js +4 -3
  39. package/lib-es/components/FileUploadAdapter/FileUploadAdapter.js.map +1 -1
  40. package/lib-es/components/FileUploadModal/FileUploadModal.js +1 -1
  41. package/lib-es/components/FileUploadModal/FileUploadModal.js.map +1 -1
  42. package/lib-es/components/ListingContainer/Listing/Listing.js +10 -5
  43. package/lib-es/components/ListingContainer/Listing/Listing.js.map +1 -1
  44. package/lib-es/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +9 -5
  45. package/lib-es/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js.map +1 -1
  46. package/lib-es/components/ListingContainer/Listing/MediaListing/MediaListing.js +12 -3
  47. package/lib-es/components/ListingContainer/Listing/MediaListing/MediaListing.js.map +1 -1
  48. package/lib-es/components/ListingContainer/ListingContainer.js +8 -4
  49. package/lib-es/components/ListingContainer/ListingContainer.js.map +1 -1
  50. package/package.json +5 -5
  51. package/src/components/CardMedia/CardMedia.js +22 -7
  52. package/src/components/EditMediaFile/EditMediaFile.js +29 -5
  53. package/src/components/EditMediaFile/EditMediaFilePage.js +2 -1
  54. package/src/components/FilePreview/Image/Image.js +10 -4
  55. package/src/components/FilePreview/ModalContext.js +3 -0
  56. package/src/components/FilePreview/index.js +8 -4
  57. package/src/components/FileUploadAdapter/FileUploadAdapter.js +3 -2
  58. package/src/components/FileUploadModal/FileUploadModal.js +1 -1
  59. package/src/components/ListingContainer/Listing/Listing.js +8 -5
  60. package/src/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +8 -4
  61. package/src/components/ListingContainer/Listing/MediaListing/MediaListing.js +10 -2
  62. package/src/components/ListingContainer/ListingContainer.js +7 -3
@@ -23,7 +23,8 @@ const CardMedia = ({
23
23
  modalTargetRef,
24
24
  updateFile,
25
25
  removeFile,
26
- index
26
+ index,
27
+ openEditInModal
27
28
  }) => {
28
29
  const [displayDeleteModal, setDisplayDeleteModal] = useState(false);
29
30
  const [displayEditModal, setDisplayEditModal] = useState(false);
@@ -82,7 +83,7 @@ const CardMedia = ({
82
83
  callback: handleCloseModal,
83
84
  modifiers: ['cancel']
84
85
  }, {
85
- textButton: 'Save',
86
+ textButton: 'Apply',
86
87
  callback: () => handleFormSave(),
87
88
  modifiers: enableSaveButton ? [] : ['disabled']
88
89
  }];
@@ -184,7 +185,14 @@ const CardMedia = ({
184
185
  className: "material-icons"
185
186
  }, "more_vert")), /*#__PURE__*/React.createElement(More.Content, {
186
187
  isMoreMenu: true
187
- }, /*#__PURE__*/React.createElement(Link, {
188
+ }, openEditInModal ? /*#__PURE__*/React.createElement(Button, {
189
+ onClick: event => {
190
+ event.preventDefault();
191
+ event.stopPropagation();
192
+ setDisplayEditModal(true);
193
+ },
194
+ className: "more-menu__link"
195
+ }, "Edit") : /*#__PURE__*/React.createElement(Link, {
188
196
  to: `/media/edit/${id}`,
189
197
  className: "more-menu__link"
190
198
  }, "Edit"), /*#__PURE__*/React.createElement(Button, {
@@ -208,12 +216,14 @@ CardMedia.propTypes = {
208
216
  removeFile: PropTypes.func.isRequired,
209
217
  selected: PropTypes.bool,
210
218
  modalTargetRef: PropTypes.object.isRequired,
211
- index: PropTypes.number.isRequired
219
+ index: PropTypes.number.isRequired,
220
+ openEditInModal: PropTypes.bool
212
221
  };
213
222
  CardMedia.defaultProps = {
214
223
  onSelected: () => {},
215
224
  selected: false,
216
- data: {}
225
+ data: {},
226
+ openEditInModal: false
217
227
  };
218
228
  export default CardMedia;
219
229
  //# sourceMappingURL=CardMedia.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardMedia.js","names":["React","useState","More","Button","DeleteAction","PropTypes","getQuery","getMutation","useMutation","useApolloClient","classnames","useToasts","Modal","createPortal","Link","EditMediaFile","CardMedia","onSelected","name","url","mimetype","id","selected","displayLayout","data","modalTargetRef","updateFile","removeFile","index","displayDeleteModal","setDisplayDeleteModal","displayEditModal","setDisplayEditModal","enableSaveButton","setEnableSaveButton","fileData","setFileData","addToast","deleteFile","type","extension","split","client","deleteFileById","variables","input","appearance","autoDismiss","error","message","handleClick","cardMediaClassNames","handleCloseModal","handleSaveButtonStatus","state","modalActions","textButton","callback","modifiers","handleFormSave","handleFileChange","file","updatedFile","mutate","mutation","update","cache","fileUpdated","writeQuery","query","result","e","console","createElement","Fragment","title","actions","onClose","onChange","fileId","current","className","role","onClick","deleteAction","itemName","src","alt","xmlns","width","height","viewBox","d","displayBg","Avatar","isMoreMenu","Content","to","event","preventDefault","stopPropagation","propTypes","string","isRequired","object","func","bool","number","defaultProps"],"sources":["../../../src/components/CardMedia/CardMedia.js"],"sourcesContent":["import React, { useState } from 'react';\nimport More from '@blaze-react/more';\nimport Button from '@blaze-react/button';\nimport { DeleteAction } from '@blaze-cms/admin';\nimport PropTypes from 'prop-types';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useMutation, useApolloClient } from '@apollo/client';\nimport classnames from 'classnames';\nimport { useToasts } from '@blaze-react/toaster';\nimport Modal from '@blaze-react/modal';\nimport { createPortal } from 'react-dom';\nimport { Link } from 'react-router-dom';\nimport EditMediaFile from '../EditMediaFile';\n\nconst CardMedia = ({\n onSelected,\n name,\n url,\n mimetype,\n id,\n selected,\n displayLayout,\n data,\n modalTargetRef,\n updateFile,\n removeFile,\n index\n}) => {\n const [displayDeleteModal, setDisplayDeleteModal] = useState(false);\n const [displayEditModal, setDisplayEditModal] = useState(false);\n const [enableSaveButton, setEnableSaveButton] = useState(false);\n const [fileData, setFileData] = useState(null);\n const { addToast } = useToasts();\n const [deleteFile] = useMutation(getMutation('DELETE_FILE_BY_ID'));\n const [type, extension] = mimetype.split('/');\n const client = useApolloClient();\n\n const deleteFileById = async () => {\n setDisplayDeleteModal(false);\n try {\n await deleteFile({\n variables: { input: { id } }\n });\n\n removeFile({\n index\n });\n\n addToast(`File: ${name} has been deleted`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (error) {\n addToast(error.message, {\n appearance: 'error',\n autoDismiss: true\n });\n }\n };\n\n const handleClick = () => {\n onSelected({ id, url, name, data });\n };\n\n const cardMediaClassNames = classnames('card card--media-list', {\n 'card--media-list--selected': selected,\n [`card--media-${displayLayout}`]: displayLayout\n });\n\n const handleCloseModal = () => {\n setDisplayEditModal(false);\n };\n\n const handleSaveButtonStatus = state => {\n setEnableSaveButton(state);\n };\n\n const modalActions = [\n {\n textButton: 'Cancel',\n callback: handleCloseModal,\n modifiers: ['cancel']\n },\n {\n textButton: 'Save',\n callback: () => handleFormSave(),\n modifiers: enableSaveButton ? [] : ['disabled']\n }\n ];\n\n const handleFileChange = file => {\n setFileData(file);\n };\n\n const handleFormSave = async () => {\n try {\n const {\n data: { updateFile: updatedFile }\n } = await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: { input: fileData },\n update(cache, { data: { updateFile: fileUpdated } }) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n updateFile({ file: updatedFile.result, index });\n addToast(`File: ${fileData.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (e) {\n addToast(`File: ${fileData.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n handleCloseModal();\n setEnableSaveButton(false);\n };\n\n return (\n <>\n {displayEditModal &&\n createPortal(\n <Modal title=\"Edit\" actions={modalActions} onClose={handleCloseModal}>\n <EditMediaFile\n onChange={handleFileChange}\n fileId={id}\n handleSaveButtonStatus={handleSaveButtonStatus}\n handleFormSave={handleFormSave}\n enableSaveButton={enableSaveButton}\n />\n </Modal>,\n modalTargetRef.current\n )}\n <div className={cardMediaClassNames} role=\"button\" onClick={handleClick}>\n {displayDeleteModal &&\n createPortal(\n <DeleteAction\n onClose={() => setDisplayDeleteModal(false)}\n deleteAction={() => deleteFileById()}\n itemName={name}\n />,\n modalTargetRef.current\n )}\n\n {type === 'image' ? (\n <div className={`card__image card__image--media-${displayLayout}`}>\n <img src={url} alt={name} />\n </div>\n ) : (\n <div className=\"card__image card__image--media-list-document\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"100\" viewBox=\"0 0 8 8\">\n <path d=\"M0 0v8h7v-4h-4v-4h-3zm4 0v3h3l-3-3zm-3 2h1v1h-1v-1zm0 2h1v1h-1v-1zm0 2h4v1h-4v-1z\" />\n </svg>\n </div>\n )}\n\n <footer className={`card__footer card__footer--media-${displayLayout}`}>\n <div className={`card__details card__details--media-${displayLayout}`}>\n <div className={`card__title card__title--media-${displayLayout}`}>\n <h2>{name}</h2>\n </div>\n <p>\n <span>format: {extension}</span>\n </p>\n </div>\n <div className={`card__menu card__menu--${displayLayout}`}>\n <div className=\"more-menu__wrapper more-menu__wrapper--card\">\n <More displayBg>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu>\n <Link to={`/media/edit/${id}`} className=\"more-menu__link\">\n Edit\n </Link>\n <Button\n onClick={event => {\n event.preventDefault();\n event.stopPropagation();\n setDisplayDeleteModal(true);\n }}\n className=\"more-menu__link\">\n Delete\n </Button>\n </More.Content>\n </More>\n </div>\n </div>\n </footer>\n </div>\n </>\n );\n};\n\nCardMedia.propTypes = {\n name: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n mimetype: PropTypes.string.isRequired,\n displayLayout: PropTypes.string.isRequired,\n data: PropTypes.object,\n onSelected: PropTypes.func,\n updateFile: PropTypes.func.isRequired,\n removeFile: PropTypes.func.isRequired,\n selected: PropTypes.bool,\n modalTargetRef: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired\n};\n\nCardMedia.defaultProps = {\n onSelected: () => {},\n selected: false,\n data: {}\n};\n\nexport default CardMedia;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"CardMedia.js","names":["React","useState","More","Button","DeleteAction","PropTypes","getQuery","getMutation","useMutation","useApolloClient","classnames","useToasts","Modal","createPortal","Link","EditMediaFile","CardMedia","onSelected","name","url","mimetype","id","selected","displayLayout","data","modalTargetRef","updateFile","removeFile","index","openEditInModal","displayDeleteModal","setDisplayDeleteModal","displayEditModal","setDisplayEditModal","enableSaveButton","setEnableSaveButton","fileData","setFileData","addToast","deleteFile","type","extension","split","client","deleteFileById","variables","input","appearance","autoDismiss","error","message","handleClick","cardMediaClassNames","handleCloseModal","handleSaveButtonStatus","state","modalActions","textButton","callback","modifiers","handleFormSave","handleFileChange","file","updatedFile","mutate","mutation","update","cache","fileUpdated","writeQuery","query","result","e","console","createElement","Fragment","title","actions","onClose","onChange","fileId","current","className","role","onClick","deleteAction","itemName","src","alt","xmlns","width","height","viewBox","d","displayBg","Avatar","isMoreMenu","Content","event","preventDefault","stopPropagation","to","propTypes","string","isRequired","object","func","bool","number","defaultProps"],"sources":["../../../src/components/CardMedia/CardMedia.js"],"sourcesContent":["import React, { useState } from 'react';\nimport More from '@blaze-react/more';\nimport Button from '@blaze-react/button';\nimport { DeleteAction } from '@blaze-cms/admin';\nimport PropTypes from 'prop-types';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useMutation, useApolloClient } from '@apollo/client';\nimport classnames from 'classnames';\nimport { useToasts } from '@blaze-react/toaster';\nimport Modal from '@blaze-react/modal';\nimport { createPortal } from 'react-dom';\nimport { Link } from 'react-router-dom';\nimport EditMediaFile from '../EditMediaFile';\n\nconst CardMedia = ({\n onSelected,\n name,\n url,\n mimetype,\n id,\n selected,\n displayLayout,\n data,\n modalTargetRef,\n updateFile,\n removeFile,\n index,\n openEditInModal\n}) => {\n const [displayDeleteModal, setDisplayDeleteModal] = useState(false);\n const [displayEditModal, setDisplayEditModal] = useState(false);\n const [enableSaveButton, setEnableSaveButton] = useState(false);\n const [fileData, setFileData] = useState(null);\n const { addToast } = useToasts();\n const [deleteFile] = useMutation(getMutation('DELETE_FILE_BY_ID'));\n const [type, extension] = mimetype.split('/');\n const client = useApolloClient();\n\n const deleteFileById = async () => {\n setDisplayDeleteModal(false);\n try {\n await deleteFile({\n variables: { input: { id } }\n });\n\n removeFile({\n index\n });\n\n addToast(`File: ${name} has been deleted`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (error) {\n addToast(error.message, {\n appearance: 'error',\n autoDismiss: true\n });\n }\n };\n\n const handleClick = () => {\n onSelected({ id, url, name, data });\n };\n\n const cardMediaClassNames = classnames('card card--media-list', {\n 'card--media-list--selected': selected,\n [`card--media-${displayLayout}`]: displayLayout\n });\n\n const handleCloseModal = () => {\n setDisplayEditModal(false);\n };\n\n const handleSaveButtonStatus = state => {\n setEnableSaveButton(state);\n };\n\n const modalActions = [\n {\n textButton: 'Cancel',\n callback: handleCloseModal,\n modifiers: ['cancel']\n },\n {\n textButton: 'Apply',\n callback: () => handleFormSave(),\n modifiers: enableSaveButton ? [] : ['disabled']\n }\n ];\n\n const handleFileChange = file => {\n setFileData(file);\n };\n\n const handleFormSave = async () => {\n try {\n const {\n data: { updateFile: updatedFile }\n } = await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: { input: fileData },\n update(cache, { data: { updateFile: fileUpdated } }) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n updateFile({ file: updatedFile.result, index });\n addToast(`File: ${fileData.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (e) {\n addToast(`File: ${fileData.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n handleCloseModal();\n setEnableSaveButton(false);\n };\n\n return (\n <>\n {displayEditModal &&\n createPortal(\n <Modal title=\"Edit\" actions={modalActions} onClose={handleCloseModal}>\n <EditMediaFile\n onChange={handleFileChange}\n fileId={id}\n handleSaveButtonStatus={handleSaveButtonStatus}\n handleFormSave={handleFormSave}\n enableSaveButton={enableSaveButton}\n />\n </Modal>,\n modalTargetRef.current\n )}\n <div className={cardMediaClassNames} role=\"button\" onClick={handleClick}>\n {displayDeleteModal &&\n createPortal(\n <DeleteAction\n onClose={() => setDisplayDeleteModal(false)}\n deleteAction={() => deleteFileById()}\n itemName={name}\n />,\n modalTargetRef.current\n )}\n\n {type === 'image' ? (\n <div className={`card__image card__image--media-${displayLayout}`}>\n <img src={url} alt={name} />\n </div>\n ) : (\n <div className=\"card__image card__image--media-list-document\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"100\" height=\"100\" viewBox=\"0 0 8 8\">\n <path d=\"M0 0v8h7v-4h-4v-4h-3zm4 0v3h3l-3-3zm-3 2h1v1h-1v-1zm0 2h1v1h-1v-1zm0 2h4v1h-4v-1z\" />\n </svg>\n </div>\n )}\n\n <footer className={`card__footer card__footer--media-${displayLayout}`}>\n <div className={`card__details card__details--media-${displayLayout}`}>\n <div className={`card__title card__title--media-${displayLayout}`}>\n <h2>{name}</h2>\n </div>\n <p>\n <span>format: {extension}</span>\n </p>\n </div>\n <div className={`card__menu card__menu--${displayLayout}`}>\n <div className=\"more-menu__wrapper more-menu__wrapper--card\">\n <More displayBg>\n <More.Avatar isMoreMenu>\n <span className=\"material-icons\">more_vert</span>\n </More.Avatar>\n <More.Content isMoreMenu>\n {openEditInModal ? (\n <Button\n onClick={event => {\n event.preventDefault();\n event.stopPropagation();\n setDisplayEditModal(true);\n }}\n className=\"more-menu__link\">\n Edit\n </Button>\n ) : (\n <Link to={`/media/edit/${id}`} className=\"more-menu__link\">\n Edit\n </Link>\n )}\n <Button\n onClick={event => {\n event.preventDefault();\n event.stopPropagation();\n setDisplayDeleteModal(true);\n }}\n className=\"more-menu__link\">\n Delete\n </Button>\n </More.Content>\n </More>\n </div>\n </div>\n </footer>\n </div>\n </>\n );\n};\n\nCardMedia.propTypes = {\n name: PropTypes.string.isRequired,\n url: PropTypes.string.isRequired,\n id: PropTypes.string.isRequired,\n mimetype: PropTypes.string.isRequired,\n displayLayout: PropTypes.string.isRequired,\n data: PropTypes.object,\n onSelected: PropTypes.func,\n updateFile: PropTypes.func.isRequired,\n removeFile: PropTypes.func.isRequired,\n selected: PropTypes.bool,\n modalTargetRef: PropTypes.object.isRequired,\n index: PropTypes.number.isRequired,\n openEditInModal: PropTypes.bool\n};\n\nCardMedia.defaultProps = {\n onSelected: () => {},\n selected: false,\n data: {},\n openEditInModal: false\n};\n\nexport default CardMedia;\n"],"mappings":"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","ignoreList":[]}
@@ -13,7 +13,8 @@ const EditMediaFile = ({
13
13
  onChange,
14
14
  handleSaveButtonStatus,
15
15
  enableSaveButton,
16
- fileId
16
+ fileId,
17
+ showChangeButton
17
18
  }) => {
18
19
  const [formValues, setFormValues] = useState(null);
19
20
  const [displayFileUploadModal, setDisplayFileUploadModal] = useState(false);
@@ -116,13 +117,15 @@ const EditMediaFile = ({
116
117
  const handleChangeFile = () => {
117
118
  setDisplayFileUploadModal(true);
118
119
  };
120
+ if (loading) return /*#__PURE__*/React.createElement("div", null, "loading...");
119
121
  const fileWithStoreType = getFileWithStoreType();
120
- return !loading ? /*#__PURE__*/React.createElement(React.Fragment, null, file ? /*#__PURE__*/React.createElement(FilePreview, {
122
+ return !loading ? /*#__PURE__*/React.createElement(React.Fragment, null, !!file && /*#__PURE__*/React.createElement(FilePreview, {
121
123
  file: fileWithStoreType,
122
124
  handleFormChange: handleFormChange,
123
125
  handleChangeFile: handleChangeFile,
124
- displayForm: true
125
- }) : null, displayFileUploadModal && /*#__PURE__*/React.createElement("div", {
126
+ displayForm: true,
127
+ showChangeButton: showChangeButton
128
+ }), displayFileUploadModal && /*#__PURE__*/React.createElement("div", {
126
129
  className: "file-upload-modal-wrapper"
127
130
  }, /*#__PURE__*/React.createElement(FileUploadModal, {
128
131
  onClose: () => {
@@ -138,10 +141,12 @@ EditMediaFile.propTypes = {
138
141
  fileId: PropTypes.string.isRequired,
139
142
  onChange: PropTypes.func.isRequired,
140
143
  handleSaveButtonStatus: PropTypes.func.isRequired,
141
- enableSaveButton: PropTypes.bool
144
+ enableSaveButton: PropTypes.bool,
145
+ showChangeButton: PropTypes.bool
142
146
  };
143
147
  EditMediaFile.defaultProps = {
144
- enableSaveButton: false
148
+ enableSaveButton: false,
149
+ showChangeButton: false
145
150
  };
146
151
  export default EditMediaFile;
147
152
  //# sourceMappingURL=EditMediaFile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditMediaFile.js","names":["React","useState","useEffect","PropTypes","getQuery","useQuery","useToasts","FilePreview","FileUploadModal","STORE_KEY","NAME","EditMediaFile","onChange","handleSaveButtonStatus","enableSaveButton","fileId","formValues","setFormValues","displayFileUploadModal","setDisplayFileUploadModal","addToast","fileQuery","loading","data","file","refetch","refetchFile","variables","id","fetchPolicy","fileStoresType","getFileStores","storeType","visibleInAdmin","handleFormChange","isValid","isNewValueSet","valuesChecked","valuesCheckedWithoutName","filter","dataValues","reduce","acc","value","newFileName","find","storeKey","shouldEnableSaveButton","updatedFile","name","getFileWithStoreType","storeOptions","map","type","key","defaultStore","isDefault","_objectSpread","store","closeModalAndSetValue","isSaving","values","toastMessage","appearance","autoDismiss","timestamp","Date","now","handleChangeFile","fileWithStoreType","createElement","Fragment","displayForm","className","onClose","simpleLayout","getSelectedFiles","propTypes","string","isRequired","func","bool","defaultProps"],"sources":["../../../src/components/EditMediaFile/EditMediaFile.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { useQuery } from '@apollo/client';\nimport { useToasts } from '@blaze-react/toaster';\nimport FilePreview from '../FilePreview';\nimport FileUploadModal from '../FileUploadModal';\nimport { STORE_KEY, NAME } from '../../constants';\n\nconst EditMediaFile = ({ onChange, handleSaveButtonStatus, enableSaveButton, fileId }) => {\n const [formValues, setFormValues] = useState(null);\n const [displayFileUploadModal, setDisplayFileUploadModal] = useState(false);\n const { addToast } = useToasts();\n\n const fileQuery = getQuery('GET_FILE_BY_ID');\n const {\n loading,\n data: { file } = {},\n refetch: refetchFile\n } = useQuery(fileQuery, {\n variables: { id: fileId },\n fetchPolicy: 'network-only'\n });\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { data: { getFileStores: storeType = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n\n useEffect(() => {\n if (!formValues && file) {\n setFormValues(file);\n }\n }, [file, formValues, storeType]);\n\n const handleFormChange = ({ isValid, isNewValueSet, valuesChecked }) => {\n const valuesCheckedWithoutName = valuesChecked.filter(\n ({ id }) => id !== NAME && id !== STORE_KEY\n );\n const dataValues = valuesCheckedWithoutName.reduce((acc, { id, value }) => {\n acc[id] = value;\n return acc;\n }, {});\n const { value: newFileName } = valuesChecked.find(({ id }) => id === NAME) || {};\n const { value: storeKey } = valuesChecked.find(({ id }) => id === STORE_KEY) || {};\n const shouldEnableSaveButton = isNewValueSet && isValid;\n handleSaveButtonStatus(false);\n if (shouldEnableSaveButton && shouldEnableSaveButton !== enableSaveButton) {\n handleSaveButtonStatus(shouldEnableSaveButton);\n }\n const updatedFile = {\n id: file.id,\n name: newFileName,\n storeKey,\n data: dataValues\n };\n setFormValues(updatedFile);\n onChange(updatedFile);\n };\n const getFileWithStoreType = () => {\n if (storeType && file) {\n const storeOptions = storeType.map(type => [type.key, type.name]);\n const defaultStore = storeType.find(type => type.isDefault) || null;\n return { ...file, store: { defaultStore, storeOptions } };\n }\n return file;\n };\n const closeModalAndSetValue = async (isSaving, values, toastMessage) => {\n if (toastMessage) {\n addToast(toastMessage, {\n appearance: 'success',\n autoDismiss: true\n });\n }\n await refetchFile({\n id: fileId,\n timestamp: Date.now()\n });\n setDisplayFileUploadModal(false);\n };\n const handleChangeFile = () => {\n setDisplayFileUploadModal(true);\n };\n const fileWithStoreType = getFileWithStoreType();\n\n return !loading ? (\n <>\n {file ? (\n <FilePreview\n file={fileWithStoreType}\n handleFormChange={handleFormChange}\n handleChangeFile={handleChangeFile}\n displayForm\n />\n ) : null}\n {displayFileUploadModal && (\n <div className=\"file-upload-modal-wrapper\">\n <FileUploadModal\n onClose={() => {\n setDisplayFileUploadModal(false);\n }}\n closeModalAndSetValue={closeModalAndSetValue}\n simpleLayout\n fileId={fileId}\n getSelectedFiles={() => {}}\n />\n </div>\n )}\n </>\n ) : (\n <div>loading...</div>\n );\n};\nEditMediaFile.propTypes = {\n fileId: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n handleSaveButtonStatus: PropTypes.func.isRequired,\n enableSaveButton: PropTypes.bool\n};\nEditMediaFile.defaultProps = {\n enableSaveButton: false\n};\nexport default EditMediaFile;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"EditMediaFile.js","names":["React","useState","useEffect","PropTypes","getQuery","useQuery","useToasts","FilePreview","FileUploadModal","STORE_KEY","NAME","EditMediaFile","onChange","handleSaveButtonStatus","enableSaveButton","fileId","showChangeButton","formValues","setFormValues","displayFileUploadModal","setDisplayFileUploadModal","addToast","fileQuery","loading","data","file","refetch","refetchFile","variables","id","fetchPolicy","fileStoresType","getFileStores","storeType","visibleInAdmin","handleFormChange","isValid","isNewValueSet","valuesChecked","valuesCheckedWithoutName","filter","dataValues","reduce","acc","value","newFileName","find","storeKey","shouldEnableSaveButton","updatedFile","name","getFileWithStoreType","storeOptions","map","type","key","defaultStore","isDefault","_objectSpread","store","closeModalAndSetValue","isSaving","values","toastMessage","appearance","autoDismiss","timestamp","Date","now","handleChangeFile","createElement","fileWithStoreType","Fragment","displayForm","className","onClose","simpleLayout","getSelectedFiles","propTypes","string","isRequired","func","bool","defaultProps"],"sources":["../../../src/components/EditMediaFile/EditMediaFile.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { useQuery } from '@apollo/client';\nimport { useToasts } from '@blaze-react/toaster';\nimport FilePreview from '../FilePreview';\nimport FileUploadModal from '../FileUploadModal';\nimport { STORE_KEY, NAME } from '../../constants';\n\nconst EditMediaFile = ({\n onChange,\n handleSaveButtonStatus,\n enableSaveButton,\n fileId,\n showChangeButton\n}) => {\n const [formValues, setFormValues] = useState(null);\n const [displayFileUploadModal, setDisplayFileUploadModal] = useState(false);\n const { addToast } = useToasts();\n\n const fileQuery = getQuery('GET_FILE_BY_ID');\n const {\n loading,\n data: { file } = {},\n refetch: refetchFile\n } = useQuery(fileQuery, {\n variables: { id: fileId },\n fetchPolicy: 'network-only'\n });\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { data: { getFileStores: storeType = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n\n useEffect(() => {\n if (!formValues && file) {\n setFormValues(file);\n }\n }, [file, formValues, storeType]);\n\n const handleFormChange = ({ isValid, isNewValueSet, valuesChecked }) => {\n const valuesCheckedWithoutName = valuesChecked.filter(\n ({ id }) => id !== NAME && id !== STORE_KEY\n );\n\n const dataValues = valuesCheckedWithoutName.reduce((acc, { id, value }) => {\n acc[id] = value;\n return acc;\n }, {});\n\n const { value: newFileName } = valuesChecked.find(({ id }) => id === NAME) || {};\n const { value: storeKey } = valuesChecked.find(({ id }) => id === STORE_KEY) || {};\n\n const shouldEnableSaveButton = isNewValueSet && isValid;\n handleSaveButtonStatus(false);\n if (shouldEnableSaveButton && shouldEnableSaveButton !== enableSaveButton) {\n handleSaveButtonStatus(shouldEnableSaveButton);\n }\n\n const updatedFile = {\n id: file.id,\n name: newFileName,\n storeKey,\n data: dataValues\n };\n\n setFormValues(updatedFile);\n onChange(updatedFile);\n };\n\n const getFileWithStoreType = () => {\n if (storeType && file) {\n const storeOptions = storeType.map(type => [type.key, type.name]);\n const defaultStore = storeType.find(type => type.isDefault) || null;\n return { ...file, store: { defaultStore, storeOptions } };\n }\n return file;\n };\n\n const closeModalAndSetValue = async (isSaving, values, toastMessage) => {\n if (toastMessage) {\n addToast(toastMessage, {\n appearance: 'success',\n autoDismiss: true\n });\n }\n await refetchFile({\n id: fileId,\n timestamp: Date.now()\n });\n setDisplayFileUploadModal(false);\n };\n\n const handleChangeFile = () => {\n setDisplayFileUploadModal(true);\n };\n\n if (loading) return <div>loading...</div>;\n\n const fileWithStoreType = getFileWithStoreType();\n\n return !loading ? (\n <>\n {!!file && (\n <FilePreview\n file={fileWithStoreType}\n handleFormChange={handleFormChange}\n handleChangeFile={handleChangeFile}\n displayForm\n showChangeButton={showChangeButton}\n />\n )}\n {displayFileUploadModal && (\n <div className=\"file-upload-modal-wrapper\">\n <FileUploadModal\n onClose={() => {\n setDisplayFileUploadModal(false);\n }}\n closeModalAndSetValue={closeModalAndSetValue}\n simpleLayout\n fileId={fileId}\n getSelectedFiles={() => {}}\n />\n </div>\n )}\n </>\n ) : (\n <div>loading...</div>\n );\n};\n\nEditMediaFile.propTypes = {\n fileId: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n handleSaveButtonStatus: PropTypes.func.isRequired,\n enableSaveButton: PropTypes.bool,\n showChangeButton: PropTypes.bool\n};\n\nEditMediaFile.defaultProps = {\n enableSaveButton: false,\n showChangeButton: false\n};\n\nexport default EditMediaFile;\n"],"mappings":"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","ignoreList":[]}
@@ -68,7 +68,8 @@ const EditMediaFilePage = ({
68
68
  onChange: handleFileChange,
69
69
  fileId: match.params.fileId,
70
70
  handleSaveButtonStatus: handleSaveButtonStatus,
71
- handleFormSave: handleFormSave
71
+ handleFormSave: handleFormSave,
72
+ showChangeButton: true
72
73
  }), /*#__PURE__*/React.createElement("div", {
73
74
  className: "page__content__mediaWrapperActions"
74
75
  }, /*#__PURE__*/React.createElement(Button, {
@@ -76,7 +77,7 @@ const EditMediaFilePage = ({
76
77
  }, "Cancel"), /*#__PURE__*/React.createElement(Button, {
77
78
  onClick: handleFormSave,
78
79
  modifiers: buttonModifiers
79
- }, "Save")))));
80
+ }, "Apply")))));
80
81
  };
81
82
  EditMediaFilePage.propTypes = {
82
83
  match: PropTypes.object.isRequired,
@@ -1 +1 @@
1
- {"version":3,"file":"EditMediaFilePage.js","names":["React","useState","withRouter","PropTypes","Button","useApolloClient","getQuery","getMutation","useToasts","EditMediaFile","EditMediaFilePage","match","history","shouldEnableSaveButton","setShouldEnableSaveButton","file","setFile","client","addToast","handleFileChange","values","handleSaveButtonStatus","value","handleFormSave","mutate","mutation","variables","input","update","cache","data","updateFile","fileUpdated","writeQuery","query","id","params","fileId","result","name","appearance","autoDismiss","e","console","error","pushBack","push","buttonModifiers","createElement","className","onChange","onClick","modifiers","propTypes","object","isRequired"],"sources":["../../../src/components/EditMediaFile/EditMediaFilePage.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { withRouter } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useToasts } from '@blaze-react/toaster';\nimport EditMediaFile from './EditMediaFile';\n\nconst EditMediaFilePage = ({ match, history }) => {\n const [shouldEnableSaveButton, setShouldEnableSaveButton] = useState(false);\n const [file, setFile] = useState(null);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const handleFileChange = values => setFile(values);\n\n const handleSaveButtonStatus = value => {\n setShouldEnableSaveButton(value);\n };\n\n const handleFormSave = async () => {\n try {\n await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: { input: file },\n update(cache, { data: { updateFile: fileUpdated } }) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id: match.params.fileId },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n addToast(`File: ${file.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (e) {\n addToast(`File: ${file.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n setShouldEnableSaveButton(false);\n };\n\n const pushBack = () => history.push('/media');\n\n const buttonModifiers = shouldEnableSaveButton ? [] : ['disabled'];\n\n return (\n <div className=\"page\">\n <div className=\"page__content\">\n <div className=\"page__content__mediaWrapper\">\n <EditMediaFile\n onChange={handleFileChange}\n fileId={match.params.fileId}\n handleSaveButtonStatus={handleSaveButtonStatus}\n handleFormSave={handleFormSave}\n />\n <div className=\"page__content__mediaWrapperActions\">\n <Button onClick={pushBack}>Cancel</Button>\n <Button onClick={handleFormSave} modifiers={buttonModifiers}>\n Save\n </Button>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nEditMediaFilePage.propTypes = {\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(EditMediaFilePage);\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,MAAM,MAAM,qBAAqB;AACxC,SAASC,eAAe,QAAQ,gBAAgB;AAChD,SAASC,QAAQ,EAAEC,WAAW,QAAQ,2BAA2B;AACjE,SAASC,SAAS,QAAQ,sBAAsB;AAChD,OAAOC,aAAa,MAAM,iBAAiB;AAE3C,MAAMC,iBAAiB,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAQ,CAAC,KAAK;EAChD,MAAM,CAACC,sBAAsB,EAAEC,yBAAyB,CAAC,GAAGb,QAAQ,CAAC,KAAK,CAAC;EAC3E,MAAM,CAACc,IAAI,EAAEC,OAAO,CAAC,GAAGf,QAAQ,CAAC,IAAI,CAAC;EACtC,MAAMgB,MAAM,GAAGZ,eAAe,CAAC,CAAC;EAChC,MAAM;IAAEa;EAAS,CAAC,GAAGV,SAAS,CAAC,CAAC;EAEhC,MAAMW,gBAAgB,GAAGC,MAAM,IAAIJ,OAAO,CAACI,MAAM,CAAC;EAElD,MAAMC,sBAAsB,GAAGC,KAAK,IAAI;IACtCR,yBAAyB,CAACQ,KAAK,CAAC;EAClC,CAAC;EAED,MAAMC,cAAc,GAAG,MAAAA,CAAA,KAAY;IACjC,IAAI;MACF,MAAMN,MAAM,CAACO,MAAM,CAAC;QAClBC,QAAQ,EAAElB,WAAW,CAAC,aAAa,CAAC;QACpCmB,SAAS,EAAE;UAAEC,KAAK,EAAEZ;QAAK,CAAC;QAC1Ba,MAAMA,CAACC,KAAK,EAAE;UAAEC,IAAI,EAAE;YAAEC,UAAU,EAAEC;UAAY;QAAE,CAAC,EAAE;UACnDH,KAAK,CAACI,UAAU,CAAC;YACfC,KAAK,EAAE5B,QAAQ,CAAC,gBAAgB,CAAC;YACjCoB,SAAS,EAAE;cAAES,EAAE,EAAExB,KAAK,CAACyB,MAAM,CAACC;YAAO,CAAC;YACtCP,IAAI,EAAE;cAAEf,IAAI,EAAEiB,WAAW,CAACM;YAAO;UACnC,CAAC,CAAC;QACJ;MACF,CAAC,CAAC;MAEFpB,QAAQ,CAAC,SAASH,IAAI,CAACwB,IAAI,mBAAmB,EAAE;QAC9CC,UAAU,EAAE,SAAS;QACrBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOC,CAAC,EAAE;MACVxB,QAAQ,CAAC,SAASH,IAAI,CAACwB,IAAI,uBAAuB,EAAE;QAClDC,UAAU,EAAE,OAAO;QACnBC,WAAW,EAAE;MACf,CAAC,CAAC;MACFE,OAAO,CAACC,KAAK,CAACF,CAAC,CAAC,CAAC,CAAC;IACpB;IACA5B,yBAAyB,CAAC,KAAK,CAAC;EAClC,CAAC;EAED,MAAM+B,QAAQ,GAAGA,CAAA,KAAMjC,OAAO,CAACkC,IAAI,CAAC,QAAQ,CAAC;EAE7C,MAAMC,eAAe,GAAGlC,sBAAsB,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC;EAElE,oBACEb,KAAA,CAAAgD,aAAA;IAAKC,SAAS,EAAC;EAAM,gBACnBjD,KAAA,CAAAgD,aAAA;IAAKC,SAAS,EAAC;EAAe,gBAC5BjD,KAAA,CAAAgD,aAAA;IAAKC,SAAS,EAAC;EAA6B,gBAC1CjD,KAAA,CAAAgD,aAAA,CAACvC,aAAa;IACZyC,QAAQ,EAAE/B,gBAAiB;IAC3BkB,MAAM,EAAE1B,KAAK,CAACyB,MAAM,CAACC,MAAO;IAC5BhB,sBAAsB,EAAEA,sBAAuB;IAC/CE,cAAc,EAAEA;EAAe,CAChC,CAAC,eACFvB,KAAA,CAAAgD,aAAA;IAAKC,SAAS,EAAC;EAAoC,gBACjDjD,KAAA,CAAAgD,aAAA,CAAC5C,MAAM;IAAC+C,OAAO,EAAEN;EAAS,GAAC,QAAc,CAAC,eAC1C7C,KAAA,CAAAgD,aAAA,CAAC5C,MAAM;IAAC+C,OAAO,EAAE5B,cAAe;IAAC6B,SAAS,EAAEL;EAAgB,GAAC,MAErD,CACL,CACF,CACF,CACF,CAAC;AAEV,CAAC;AAEDrC,iBAAiB,CAAC2C,SAAS,GAAG;EAC5B1C,KAAK,EAAER,SAAS,CAACmD,MAAM,CAACC,UAAU;EAClC3C,OAAO,EAAET,SAAS,CAACmD,MAAM,CAACC;AAC5B,CAAC;AAED,eAAerD,UAAU,CAACQ,iBAAiB,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"EditMediaFilePage.js","names":["React","useState","withRouter","PropTypes","Button","useApolloClient","getQuery","getMutation","useToasts","EditMediaFile","EditMediaFilePage","match","history","shouldEnableSaveButton","setShouldEnableSaveButton","file","setFile","client","addToast","handleFileChange","values","handleSaveButtonStatus","value","handleFormSave","mutate","mutation","variables","input","update","cache","data","updateFile","fileUpdated","writeQuery","query","id","params","fileId","result","name","appearance","autoDismiss","e","console","error","pushBack","push","buttonModifiers","createElement","className","onChange","showChangeButton","onClick","modifiers","propTypes","object","isRequired"],"sources":["../../../src/components/EditMediaFile/EditMediaFilePage.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { withRouter } from 'react-router-dom';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport { useApolloClient } from '@apollo/client';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useToasts } from '@blaze-react/toaster';\nimport EditMediaFile from './EditMediaFile';\n\nconst EditMediaFilePage = ({ match, history }) => {\n const [shouldEnableSaveButton, setShouldEnableSaveButton] = useState(false);\n const [file, setFile] = useState(null);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const handleFileChange = values => setFile(values);\n\n const handleSaveButtonStatus = value => {\n setShouldEnableSaveButton(value);\n };\n\n const handleFormSave = async () => {\n try {\n await client.mutate({\n mutation: getMutation('UPDATE_FILE'),\n variables: { input: file },\n update(cache, { data: { updateFile: fileUpdated } }) {\n cache.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id: match.params.fileId },\n data: { file: fileUpdated.result }\n });\n }\n });\n\n addToast(`File: ${file.name} has been updated`, {\n appearance: 'success',\n autoDismiss: true\n });\n } catch (e) {\n addToast(`File: ${file.name} has not been updated`, {\n appearance: 'error',\n autoDismiss: true\n });\n console.error(e); //eslint-disable-line\n }\n setShouldEnableSaveButton(false);\n };\n\n const pushBack = () => history.push('/media');\n\n const buttonModifiers = shouldEnableSaveButton ? [] : ['disabled'];\n\n return (\n <div className=\"page\">\n <div className=\"page__content\">\n <div className=\"page__content__mediaWrapper\">\n <EditMediaFile\n onChange={handleFileChange}\n fileId={match.params.fileId}\n handleSaveButtonStatus={handleSaveButtonStatus}\n handleFormSave={handleFormSave}\n showChangeButton\n />\n <div className=\"page__content__mediaWrapperActions\">\n <Button onClick={pushBack}>Cancel</Button>\n <Button onClick={handleFormSave} modifiers={buttonModifiers}>\n Apply\n </Button>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nEditMediaFilePage.propTypes = {\n match: PropTypes.object.isRequired,\n history: PropTypes.object.isRequired\n};\n\nexport default withRouter(EditMediaFilePage);\n"],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,8 @@ const Image = ({
5
5
  url,
6
6
  name,
7
7
  children,
8
- handleChangeFile
8
+ handleChangeFile,
9
+ showChangeButton
9
10
  }) => /*#__PURE__*/React.createElement("div", {
10
11
  className: "preview"
11
12
  }, /*#__PURE__*/React.createElement("div", {
@@ -19,17 +20,21 @@ const Image = ({
19
20
  href: url,
20
21
  rel: "noopener noreferrer",
21
22
  target: "_blank"
22
- }, "Original")), /*#__PURE__*/React.createElement(Button, {
23
+ }, "Original")), showChangeButton && /*#__PURE__*/React.createElement("div", {
24
+ className: "preview__change-button"
25
+ }, /*#__PURE__*/React.createElement(Button, {
23
26
  onClick: handleChangeFile
24
- }, "Change file"))), children);
27
+ }, "Change file")))), children);
25
28
  Image.propTypes = {
26
29
  url: PropTypes.string.isRequired,
27
30
  name: PropTypes.string.isRequired,
28
31
  children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,
29
- handleChangeFile: PropTypes.func
32
+ handleChangeFile: PropTypes.func,
33
+ showChangeButton: PropTypes.bool
30
34
  };
31
35
  Image.defaultProps = {
32
- handleChangeFile: () => {}
36
+ handleChangeFile: () => {},
37
+ showChangeButton: false
33
38
  };
34
39
  export { Image };
35
40
  //# sourceMappingURL=Image.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","names":["React","PropTypes","Button","Image","url","name","children","handleChangeFile","createElement","className","src","alt","href","rel","target","onClick","propTypes","string","isRequired","oneOfType","arrayOf","node","func","defaultProps"],"sources":["../../../../src/components/FilePreview/Image/Image.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\n\nconst Image = ({ url, name, children, handleChangeFile }) => (\n <div className=\"preview\">\n <div className=\"preview__file preview__file--image\">\n <img src={url} alt={name} />\n <div className=\"preview__details preview__details--file\">\n <p>\n <strong>File details</strong>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Original\n </a>\n </p>\n <Button onClick={handleChangeFile}>Change file</Button>\n </div>\n </div>\n {children}\n </div>\n);\n\nImage.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n handleChangeFile: PropTypes.func\n};\n\nImage.defaultProps = {\n handleChangeFile: () => {}\n};\n\nexport { Image };\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,MAAM,MAAM,qBAAqB;AAExC,MAAMC,KAAK,GAAGA,CAAC;EAAEC,GAAG;EAAEC,IAAI;EAAEC,QAAQ;EAAEC;AAAiB,CAAC,kBACtDP,KAAA,CAAAQ,aAAA;EAAKC,SAAS,EAAC;AAAS,gBACtBT,KAAA,CAAAQ,aAAA;EAAKC,SAAS,EAAC;AAAoC,gBACjDT,KAAA,CAAAQ,aAAA;EAAKE,GAAG,EAAEN,GAAI;EAACO,GAAG,EAAEN;AAAK,CAAE,CAAC,eAC5BL,KAAA,CAAAQ,aAAA;EAAKC,SAAS,EAAC;AAAyC,gBACtDT,KAAA,CAAAQ,aAAA,yBACER,KAAA,CAAAQ,aAAA,iBAAQ,cAAoB,CAAC,eAC7BR,KAAA,CAAAQ,aAAA;EAAGI,IAAI,EAAER,GAAI;EAACS,GAAG,EAAC,qBAAqB;EAACC,MAAM,EAAC;AAAQ,GAAC,UAErD,CACF,CAAC,eACJd,KAAA,CAAAQ,aAAA,CAACN,MAAM;EAACa,OAAO,EAAER;AAAiB,GAAC,aAAmB,CACnD,CACF,CAAC,EACLD,QACE,CACN;AAEDH,KAAK,CAACa,SAAS,GAAG;EAChBZ,GAAG,EAAEH,SAAS,CAACgB,MAAM,CAACC,UAAU;EAChCb,IAAI,EAAEJ,SAAS,CAACgB,MAAM,CAACC,UAAU;EACjCZ,QAAQ,EAAEL,SAAS,CAACkB,SAAS,CAAC,CAAClB,SAAS,CAACmB,OAAO,CAACnB,SAAS,CAACoB,IAAI,CAAC,EAAEpB,SAAS,CAACoB,IAAI,CAAC,CAAC,CAACH,UAAU;EAC7FX,gBAAgB,EAAEN,SAAS,CAACqB;AAC9B,CAAC;AAEDnB,KAAK,CAACoB,YAAY,GAAG;EACnBhB,gBAAgB,EAAEA,CAAA,KAAM,CAAC;AAC3B,CAAC;AAED,SAASJ,KAAK","ignoreList":[]}
1
+ {"version":3,"file":"Image.js","names":["React","PropTypes","Button","Image","url","name","children","handleChangeFile","showChangeButton","createElement","className","src","alt","href","rel","target","onClick","propTypes","string","isRequired","oneOfType","arrayOf","node","func","bool","defaultProps"],"sources":["../../../../src/components/FilePreview/Image/Image.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\n\nconst Image = ({ url, name, children, handleChangeFile, showChangeButton }) => (\n <div className=\"preview\">\n <div className=\"preview__file preview__file--image\">\n <img src={url} alt={name} />\n <div className=\"preview__details preview__details--file\">\n <p>\n <strong>File details</strong>\n <a href={url} rel=\"noopener noreferrer\" target=\"_blank\">\n Original\n </a>\n </p>\n {showChangeButton && (\n <div className=\"preview__change-button\">\n <Button onClick={handleChangeFile}>Change file</Button>\n </div>\n )}\n </div>\n </div>\n {children}\n </div>\n);\n\nImage.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n handleChangeFile: PropTypes.func,\n showChangeButton: PropTypes.bool\n};\n\nImage.defaultProps = {\n handleChangeFile: () => {},\n showChangeButton: false\n};\n\nexport { Image };\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,MAAM,MAAM,qBAAqB;AAExC,MAAMC,KAAK,GAAGA,CAAC;EAAEC,GAAG;EAAEC,IAAI;EAAEC,QAAQ;EAAEC,gBAAgB;EAAEC;AAAiB,CAAC,kBACxER,KAAA,CAAAS,aAAA;EAAKC,SAAS,EAAC;AAAS,gBACtBV,KAAA,CAAAS,aAAA;EAAKC,SAAS,EAAC;AAAoC,gBACjDV,KAAA,CAAAS,aAAA;EAAKE,GAAG,EAAEP,GAAI;EAACQ,GAAG,EAAEP;AAAK,CAAE,CAAC,eAC5BL,KAAA,CAAAS,aAAA;EAAKC,SAAS,EAAC;AAAyC,gBACtDV,KAAA,CAAAS,aAAA,yBACET,KAAA,CAAAS,aAAA,iBAAQ,cAAoB,CAAC,eAC7BT,KAAA,CAAAS,aAAA;EAAGI,IAAI,EAAET,GAAI;EAACU,GAAG,EAAC,qBAAqB;EAACC,MAAM,EAAC;AAAQ,GAAC,UAErD,CACF,CAAC,EACHP,gBAAgB,iBACfR,KAAA,CAAAS,aAAA;EAAKC,SAAS,EAAC;AAAwB,gBACrCV,KAAA,CAAAS,aAAA,CAACP,MAAM;EAACc,OAAO,EAAET;AAAiB,GAAC,aAAmB,CACnD,CAEJ,CACF,CAAC,EACLD,QACE,CACN;AAEDH,KAAK,CAACc,SAAS,GAAG;EAChBb,GAAG,EAAEH,SAAS,CAACiB,MAAM,CAACC,UAAU;EAChCd,IAAI,EAAEJ,SAAS,CAACiB,MAAM,CAACC,UAAU;EACjCb,QAAQ,EAAEL,SAAS,CAACmB,SAAS,CAAC,CAACnB,SAAS,CAACoB,OAAO,CAACpB,SAAS,CAACqB,IAAI,CAAC,EAAErB,SAAS,CAACqB,IAAI,CAAC,CAAC,CAACH,UAAU;EAC7FZ,gBAAgB,EAAEN,SAAS,CAACsB,IAAI;EAChCf,gBAAgB,EAAEP,SAAS,CAACuB;AAC9B,CAAC;AAEDrB,KAAK,CAACsB,YAAY,GAAG;EACnBlB,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BC,gBAAgB,EAAE;AACpB,CAAC;AAED,SAASL,KAAK","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import { createContext } from 'react';
2
+ export const ModalContext = createContext(false);
3
+ //# sourceMappingURL=ModalContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalContext.js","names":["createContext","ModalContext"],"sources":["../../../src/components/FilePreview/ModalContext.js"],"sourcesContent":["import { createContext } from 'react';\n\nexport const ModalContext = createContext(false);\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,OAAO;AAErC,OAAO,MAAMC,YAAY,GAAGD,aAAa,CAAC,KAAK,CAAC","ignoreList":[]}
@@ -12,7 +12,8 @@ const FilePreview = ({
12
12
  displayForm,
13
13
  previewType,
14
14
  children,
15
- handleChangeFile
15
+ handleChangeFile,
16
+ showChangeButton
16
17
  }) => {
17
18
  const {
18
19
  name,
@@ -50,7 +51,8 @@ const FilePreview = ({
50
51
  name: name
51
52
  }, data, {
52
53
  file: file,
53
- handleChangeFile: handleChangeFile
54
+ handleChangeFile: handleChangeFile,
55
+ showChangeButton: showChangeButton
54
56
  }), shouldRenderForm && /*#__PURE__*/React.createElement("div", {
55
57
  className: "preview__details"
56
58
  }, /*#__PURE__*/React.createElement("div", {
@@ -74,7 +76,8 @@ FilePreview.propTypes = {
74
76
  displayForm: PropTypes.bool,
75
77
  handlers: PropTypes.object,
76
78
  previewType: PropTypes.oneOf(Object.keys(FilePreview.availablePreviewTypes)),
77
- children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])
79
+ children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string]),
80
+ showChangeButton: PropTypes.bool
78
81
  };
79
82
  FilePreview.defaultProps = {
80
83
  displayForm: false,
@@ -83,7 +86,8 @@ FilePreview.defaultProps = {
83
86
  previewType: FilePreview.availablePreviewTypes.card,
84
87
  handleFormChange: () => {},
85
88
  handleChangeFile: () => {},
86
- children: []
89
+ children: [],
90
+ showChangeButton: false
87
91
  };
88
92
  export default FilePreview;
89
93
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","FormBuilder","PropTypes","getPreview","FilePreview","file","handleFormChange","displayForm","previewType","children","handleChangeFile","name","url","mimetype","data","store","Preview","schema","shouldRenderForm","defaultStore","storeOptions","formSchema","properties","storeKey","options","key","selected","formBuilderData","values","_objectSpread","createElement","Fragment","_extends","className","filename","formClassName","onChange","availablePreviewTypes","card","raw","propTypes","object","isRequired","fileName","string","func","bool","handlers","oneOf","Object","keys","oneOfType","array","defaultProps"],"sources":["../../../src/components/FilePreview/index.js"],"sourcesContent":["import React from 'react';\nimport { FormBuilder } from '@blaze-cms/react-form-builder';\nimport PropTypes from 'prop-types';\nimport { getPreview } from './get-preview';\n\nconst FilePreview = ({\n file,\n handleFormChange,\n displayForm,\n previewType,\n children,\n handleChangeFile\n}) => {\n const { name, url, mimetype, data, store } = file;\n const [Preview, schema] = getPreview({ mimetype, previewType });\n const shouldRenderForm = schema && displayForm;\n\n if (shouldRenderForm && store) {\n const { defaultStore = {}, storeOptions = [] } = store;\n if (schema.formSchema.properties.storeKey) {\n schema.formSchema.properties.storeKey.options = storeOptions;\n if (defaultStore) {\n const { key } = defaultStore;\n schema.formSchema.properties.storeKey.selected = key;\n }\n }\n }\n\n const formBuilderData = { values: { ...file, ...data } };\n\n return (\n <>\n <Preview\n mimetype={mimetype}\n url={url}\n name={name}\n {...data}\n file={file}\n handleChangeFile={handleChangeFile}>\n {shouldRenderForm && (\n <div className=\"preview__details\">\n <div className=\"preview__filename\">{file.filename}</div>\n <FormBuilder\n formClassName=\"preview__form\"\n onChange={handleFormChange}\n data={formBuilderData}\n schema={schema.formSchema}\n />\n </div>\n )}\n </Preview>\n {children}\n </>\n );\n};\n\nFilePreview.availablePreviewTypes = {\n card: 'card',\n raw: 'raw'\n};\n\nFilePreview.propTypes = {\n file: PropTypes.object.isRequired,\n fileName: PropTypes.string,\n handleFormChange: PropTypes.func,\n handleChangeFile: PropTypes.func,\n displayForm: PropTypes.bool,\n handlers: PropTypes.object,\n previewType: PropTypes.oneOf(Object.keys(FilePreview.availablePreviewTypes)),\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFilePreview.defaultProps = {\n displayForm: false,\n fileName: '',\n handlers: {},\n previewType: FilePreview.availablePreviewTypes.card,\n handleFormChange: () => {},\n handleChangeFile: () => {},\n children: []\n};\n\nexport default FilePreview;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","FormBuilder","PropTypes","getPreview","FilePreview","file","handleFormChange","displayForm","previewType","children","handleChangeFile","showChangeButton","name","url","mimetype","data","store","Preview","schema","shouldRenderForm","defaultStore","storeOptions","formSchema","properties","storeKey","options","key","selected","formBuilderData","values","_objectSpread","createElement","Fragment","_extends","className","filename","formClassName","onChange","availablePreviewTypes","card","raw","propTypes","object","isRequired","fileName","string","func","bool","handlers","oneOf","Object","keys","oneOfType","array","defaultProps"],"sources":["../../../src/components/FilePreview/index.js"],"sourcesContent":["import React from 'react';\nimport { FormBuilder } from '@blaze-cms/react-form-builder';\nimport PropTypes from 'prop-types';\nimport { getPreview } from './get-preview';\n\nconst FilePreview = ({\n file,\n handleFormChange,\n displayForm,\n previewType,\n children,\n handleChangeFile,\n showChangeButton\n}) => {\n const { name, url, mimetype, data, store } = file;\n const [Preview, schema] = getPreview({ mimetype, previewType });\n const shouldRenderForm = schema && displayForm;\n\n if (shouldRenderForm && store) {\n const { defaultStore = {}, storeOptions = [] } = store;\n if (schema.formSchema.properties.storeKey) {\n schema.formSchema.properties.storeKey.options = storeOptions;\n if (defaultStore) {\n const { key } = defaultStore;\n schema.formSchema.properties.storeKey.selected = key;\n }\n }\n }\n\n const formBuilderData = { values: { ...file, ...data } };\n\n return (\n <>\n <Preview\n mimetype={mimetype}\n url={url}\n name={name}\n {...data}\n file={file}\n handleChangeFile={handleChangeFile}\n showChangeButton={showChangeButton}>\n {shouldRenderForm && (\n <div className=\"preview__details\">\n <div className=\"preview__filename\">{file.filename}</div>\n <FormBuilder\n formClassName=\"preview__form\"\n onChange={handleFormChange}\n data={formBuilderData}\n schema={schema.formSchema}\n />\n </div>\n )}\n </Preview>\n {children}\n </>\n );\n};\n\nFilePreview.availablePreviewTypes = {\n card: 'card',\n raw: 'raw'\n};\n\nFilePreview.propTypes = {\n file: PropTypes.object.isRequired,\n fileName: PropTypes.string,\n handleFormChange: PropTypes.func,\n handleChangeFile: PropTypes.func,\n displayForm: PropTypes.bool,\n handlers: PropTypes.object,\n previewType: PropTypes.oneOf(Object.keys(FilePreview.availablePreviewTypes)),\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string]),\n showChangeButton: PropTypes.bool\n};\n\nFilePreview.defaultProps = {\n displayForm: false,\n fileName: '',\n handlers: {},\n previewType: FilePreview.availablePreviewTypes.card,\n handleFormChange: () => {},\n handleChangeFile: () => {},\n children: [],\n showChangeButton: false\n};\n\nexport default FilePreview;\n"],"mappings":"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","ignoreList":[]}
@@ -202,7 +202,7 @@ const FileUploadAdapter = ({
202
202
  },
203
203
  modifiers: ['cancel']
204
204
  }, {
205
- textButton: 'Save',
205
+ textButton: 'Apply',
206
206
  callback: () => {
207
207
  closeModalAndSetValue(true);
208
208
  },
@@ -215,7 +215,7 @@ const FileUploadAdapter = ({
215
215
  },
216
216
  modifiers: ['cancel']
217
217
  }, {
218
- textButton: 'Save',
218
+ textButton: 'Apply',
219
219
  callback: async () => {
220
220
  const {
221
221
  name,
@@ -346,7 +346,8 @@ const FileUploadAdapter = ({
346
346
  setDisplayFileUploadModal: setDisplayFileUploadModal,
347
347
  handleSelectedFiles: handleSelectedFiles,
348
348
  maxItems: currentLimit,
349
- filesSelected: currentValue.length > 1 ? currentValue : []
349
+ filesSelected: currentValue.length > 1 ? currentValue : [],
350
+ openEditInModal: true
350
351
  }))));
351
352
  };
352
353
  FileUploadAdapter.propTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploadAdapter.js","names":["React","useState","useContext","useEffect","FileUpload","PropTypes","useApolloClient","getQuery","getMutation","ModalAdapter","Modal","parseFormValues","useToasts","Tooltip","MORE","ListingContainer","MediaContextProvider","FileList","useLimit","getFormat","formatInitialValue","transformToArray","isUnselecting","getButtonText","getNumberFilesPendingToFetch","FilePreview","FileUploadAdapter","onChange","label","id","type","value","maxItems","shouldRenderInPreview","canDragAndDrop","simpleLayout","tooltip","previewAllFiles","fileType","InjectPreview","FormContext","currentLimit","displayModal","setDisplayModal","displayFileUploadModal","setDisplayFileUploadModal","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","values","toastMessage","appearance","autoDismiss","fileUploadButtonText","filesPending","onOpenLibrary","handleEditModal","file","selectedEditFile","find","_id","handleEditFileForm","editedFile","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","e","console","error","filesPendingString","fileListSpan","createElement","className","onClick","Fragment","tooltipContent","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 Tooltip from '@blaze-react/tooltip';\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 simpleLayout,\n tooltip,\n previewAllFiles,\n fileType\n}) => {\n const { InjectPreview } = useContext(FileUploadAdapter.FormContext);\n const [currentLimit] = useLimit(maxItems);\n const [displayModal, setDisplayModal] = useState(false);\n const [displayFileUploadModal, setDisplayFileUploadModal] = 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 = previewAllFiles) => {\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 =\n !selectedFiles.length && !previewAllFiles\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, values, toastMessage) => {\n if (toastMessage) {\n addToast(toastMessage, {\n appearance: 'success',\n autoDismiss: true\n });\n }\n\n if (isSaving) {\n const parsedValue = getFormat(type, { filesIds: simpleLayout ? values : 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, fileType });\n\n const filesPending = previewAllFiles\n ? 0\n : 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(cache, { data: { updateFile: fileUpdated } }) {\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>\n {label} <Tooltip tooltipContent={tooltip} />\n </label>\n {selectedFiles && (\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 <FileUpload\n actionText={fileUploadButtonText}\n handleLibraryClick={() => {\n if (simpleLayout) {\n setDisplayFileUploadModal(true);\n } else {\n onOpenLibrary();\n }\n }}\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\n {displayFileUploadModal && simpleLayout && (\n <div className=\"file-upload-modal-wrapper\">\n <ListingContainer\n displayFileUploadModal={displayFileUploadModal}\n closeModalAndSetValue={closeModalAndSetValue}\n setDisplayFileUploadModal={setDisplayFileUploadModal}\n handleSelectedFiles={handleSelectedFiles}\n maxItems={currentLimit}\n simpleLayout={simpleLayout}\n filesSelected={currentValue.length > 1 ? currentValue : []}\n />\n </div>\n )}\n\n {displayModal && !simpleLayout && (\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 closeModalAndSetValue={closeModalAndSetValue}\n displayFileUploadModal={displayFileUploadModal}\n setDisplayFileUploadModal={setDisplayFileUploadModal}\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 simpleLayout: PropTypes.bool,\n previewAllFiles: PropTypes.bool,\n tooltip: PropTypes.string,\n fileType: PropTypes.string\n};\n\nFileUploadAdapter.defaultProps = {\n value: '',\n maxItems: false,\n shouldRenderInPreview: false,\n canDragAndDrop: false,\n simpleLayout: false,\n previewAllFiles: false,\n tooltip: '',\n fileType: 'file'\n};\n\nexport default FileUploadAdapter;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FileUploadAdapter.js","names":["React","useState","useContext","useEffect","FileUpload","PropTypes","useApolloClient","getQuery","getMutation","ModalAdapter","Modal","parseFormValues","useToasts","Tooltip","MORE","ListingContainer","MediaContextProvider","FileList","useLimit","getFormat","formatInitialValue","transformToArray","isUnselecting","getButtonText","getNumberFilesPendingToFetch","FilePreview","FileUploadAdapter","onChange","label","id","type","value","maxItems","shouldRenderInPreview","canDragAndDrop","simpleLayout","tooltip","previewAllFiles","fileType","InjectPreview","FormContext","currentLimit","displayModal","setDisplayModal","displayFileUploadModal","setDisplayFileUploadModal","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","values","toastMessage","appearance","autoDismiss","fileUploadButtonText","filesPending","onOpenLibrary","handleEditModal","file","selectedEditFile","find","_id","handleEditFileForm","editedFile","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","e","console","error","filesPendingString","fileListSpan","createElement","className","onClick","Fragment","tooltipContent","onUnselectFile","selector","previewerId","allFiles","actionText","handleLibraryClick","enableDragAndDrop","actions","title","onClose","fileName","handleFormChange","displayForm","previewType","filesSelected","openEditInModal","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 Tooltip from '@blaze-react/tooltip';\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 simpleLayout,\n tooltip,\n previewAllFiles,\n fileType\n}) => {\n const { InjectPreview } = useContext(FileUploadAdapter.FormContext);\n const [currentLimit] = useLimit(maxItems);\n const [displayModal, setDisplayModal] = useState(false);\n const [displayFileUploadModal, setDisplayFileUploadModal] = 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 = previewAllFiles) => {\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 =\n !selectedFiles.length && !previewAllFiles\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, values, toastMessage) => {\n if (toastMessage) {\n addToast(toastMessage, {\n appearance: 'success',\n autoDismiss: true\n });\n }\n\n if (isSaving) {\n const parsedValue = getFormat(type, { filesIds: simpleLayout ? values : 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, fileType });\n\n const filesPending = previewAllFiles\n ? 0\n : 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: 'Apply',\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: 'Apply',\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(cache, { data: { updateFile: fileUpdated } }) {\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>\n {label} <Tooltip tooltipContent={tooltip} />\n </label>\n {selectedFiles && (\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 <FileUpload\n actionText={fileUploadButtonText}\n handleLibraryClick={() => {\n if (simpleLayout) {\n setDisplayFileUploadModal(true);\n } else {\n onOpenLibrary();\n }\n }}\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\n {displayFileUploadModal && simpleLayout && (\n <div className=\"file-upload-modal-wrapper\">\n <ListingContainer\n displayFileUploadModal={displayFileUploadModal}\n closeModalAndSetValue={closeModalAndSetValue}\n setDisplayFileUploadModal={setDisplayFileUploadModal}\n handleSelectedFiles={handleSelectedFiles}\n maxItems={currentLimit}\n simpleLayout={simpleLayout}\n filesSelected={currentValue.length > 1 ? currentValue : []}\n />\n </div>\n )}\n\n {displayModal && !simpleLayout && (\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 closeModalAndSetValue={closeModalAndSetValue}\n displayFileUploadModal={displayFileUploadModal}\n setDisplayFileUploadModal={setDisplayFileUploadModal}\n handleSelectedFiles={handleSelectedFiles}\n maxItems={currentLimit}\n filesSelected={currentValue.length > 1 ? currentValue : []}\n openEditInModal\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 simpleLayout: PropTypes.bool,\n previewAllFiles: PropTypes.bool,\n tooltip: PropTypes.string,\n fileType: PropTypes.string\n};\n\nFileUploadAdapter.defaultProps = {\n value: '',\n maxItems: false,\n shouldRenderInPreview: false,\n canDragAndDrop: false,\n simpleLayout: false,\n previewAllFiles: false,\n tooltip: '',\n fileType: 'file'\n};\n\nexport default FileUploadAdapter;\n"],"mappings":"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","ignoreList":[]}
@@ -101,7 +101,7 @@ const FileUploadModal = ({
101
101
  callback: onClose,
102
102
  modifiers: ['cancel']
103
103
  }, {
104
- textButton: 'Save',
104
+ textButton: 'Upload',
105
105
  callback: handleOnSave,
106
106
  modifiers: []
107
107
  }],