@blaze-cms/plugin-media-ui 0.146.0-node18-core-styles-tooltips.58 → 0.146.0-node18-tooltips.45
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 +29 -88
- package/lib/components/CardMedia/CardMedia.js +107 -50
- package/lib/components/CardMedia/CardMedia.js.map +1 -1
- package/lib/components/EditMediaFile/EditMediaFile.js +31 -45
- package/lib/components/EditMediaFile/EditMediaFile.js.map +1 -1
- package/lib/components/EditMediaFile/EditMediaFilePage.js +18 -9
- package/lib/components/EditMediaFile/EditMediaFilePage.js.map +1 -1
- package/lib/components/FileList/useGetFiles/getFiles.js +13 -12
- package/lib/components/FileList/useGetFiles/getFiles.js.map +1 -1
- package/lib/components/FileList/useGetFiles/useGetFiles.js +8 -4
- package/lib/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
- package/lib/components/FileList/useGetFilesList/getCounters.js +1 -1
- package/lib/components/FileList/useGetFilesList/getCounters.js.map +1 -1
- package/lib/components/FileList/useGetFilesList/useGetFilesList.js +4 -2
- package/lib/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
- package/lib/components/FilePreview/Actions/index.js +1 -1
- package/lib/components/FilePreview/Actions/index.js.map +1 -1
- package/lib/components/FilePreview/Image/Image.js.map +1 -1
- package/lib/components/FilePreview/Image/imageSchema.js +8 -4
- package/lib/components/FilePreview/Image/imageSchema.js.map +1 -1
- package/lib/components/FilePreview/PDF/PDF.js.map +1 -1
- package/lib/components/FilePreview/PDF/schema.js +2 -1
- package/lib/components/FilePreview/PDF/schema.js.map +1 -1
- package/lib/components/FilePreview/index.js +51 -9
- package/lib/components/FilePreview/index.js.map +1 -1
- package/lib/components/FilePreview/previewDefault/PreviewDefault.js.map +1 -1
- package/lib/components/FilePreview/previewDefault/previewDefaultSchema.js +2 -1
- package/lib/components/FilePreview/previewDefault/previewDefaultSchema.js.map +1 -1
- package/lib/components/FilePreviewReadOnly/FilePreviewList.js +0 -1
- package/lib/components/FilePreviewReadOnly/FilePreviewList.js.map +1 -1
- package/lib/components/FilePreviewReadOnly/FilePreviewReadOnly.js +3 -3
- package/lib/components/FilePreviewReadOnly/FilePreviewReadOnly.js.map +1 -1
- package/lib/components/FileUploadAdapter/FileList.js +1 -1
- package/lib/components/FileUploadAdapter/FileList.js.map +1 -1
- package/lib/components/FileUploadAdapter/FilePreviewList.js +0 -1
- package/lib/components/FileUploadAdapter/FilePreviewList.js.map +1 -1
- package/lib/components/FileUploadAdapter/FileReorderList.js.map +1 -1
- package/lib/components/FileUploadAdapter/FileUploadAdapter.js +50 -36
- package/lib/components/FileUploadAdapter/FileUploadAdapter.js.map +1 -1
- package/lib/components/FileUploadModal/FileUploadModal.js +3 -3
- package/lib/components/FileUploadModal/FileUploadModal.js.map +1 -1
- package/lib/components/FilterPanel/FilterPanel.js +42 -141
- package/lib/components/FilterPanel/FilterPanel.js.map +1 -1
- package/lib/components/FilterPanel/MediaSearchFilter.js +40 -0
- package/lib/components/FilterPanel/MediaSearchFilter.js.map +1 -0
- package/lib/components/ListingContainer/Listing/Listing.js.map +1 -1
- package/lib/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +6 -5
- package/lib/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js.map +1 -1
- package/lib/components/ListingContainer/Listing/MediaListing/MediaListing.js +1 -1
- package/lib/components/ListingContainer/Listing/MediaListing/MediaListing.js.map +1 -1
- package/lib/components/ListingContainer/ListingContainer.js +5 -2
- package/lib/components/ListingContainer/ListingContainer.js.map +1 -1
- package/lib/components/MediaListing.js +1 -1
- package/lib/components/MediaListing.js.map +1 -1
- package/lib/constants.js +2 -1
- package/lib/constants.js.map +1 -1
- package/lib/index.js +5 -5
- package/lib/index.js.map +1 -1
- package/lib/utils/bustUrl.js +1 -0
- package/lib/utils/bustUrl.js.map +1 -1
- package/lib-es/components/CardMedia/CardMedia.js +97 -54
- package/lib-es/components/CardMedia/CardMedia.js.map +1 -1
- package/lib-es/components/EditMediaFile/EditMediaFile.js +26 -42
- package/lib-es/components/EditMediaFile/EditMediaFile.js.map +1 -1
- package/lib-es/components/EditMediaFile/EditMediaFilePage.js +15 -8
- package/lib-es/components/EditMediaFile/EditMediaFilePage.js.map +1 -1
- package/lib-es/components/FileList/useGetFiles/getFiles.js +6 -3
- package/lib-es/components/FileList/useGetFiles/getFiles.js.map +1 -1
- package/lib-es/components/FileList/useGetFiles/useGetFiles.js +7 -2
- package/lib-es/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
- package/lib-es/components/FileList/useGetFilesList/useGetFilesList.js +4 -1
- package/lib-es/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
- package/lib-es/components/FilePreview/Actions/index.js.map +1 -1
- package/lib-es/components/FilePreview/Image/imageSchema.js +8 -4
- package/lib-es/components/FilePreview/Image/imageSchema.js.map +1 -1
- package/lib-es/components/FilePreview/PDF/PDF.js.map +1 -1
- package/lib-es/components/FilePreview/PDF/schema.js +2 -1
- package/lib-es/components/FilePreview/PDF/schema.js.map +1 -1
- package/lib-es/components/FilePreview/index.js +47 -3
- package/lib-es/components/FilePreview/index.js.map +1 -1
- package/lib-es/components/FilePreview/previewDefault/PreviewDefault.js.map +1 -1
- package/lib-es/components/FilePreview/previewDefault/previewDefaultSchema.js +2 -1
- package/lib-es/components/FilePreview/previewDefault/previewDefaultSchema.js.map +1 -1
- package/lib-es/components/FileUploadAdapter/FileList.js.map +1 -1
- package/lib-es/components/FileUploadAdapter/FileUploadAdapter.js +34 -23
- package/lib-es/components/FileUploadAdapter/FileUploadAdapter.js.map +1 -1
- package/lib-es/components/FileUploadAdapter/mappers/get-button-text.js.map +1 -1
- package/lib-es/components/FileUploadModal/FileUploadModal.js.map +1 -1
- package/lib-es/components/FilterPanel/FilterPanel.js +43 -123
- package/lib-es/components/FilterPanel/FilterPanel.js.map +1 -1
- package/lib-es/components/FilterPanel/MediaSearchFilter.js +34 -0
- package/lib-es/components/FilterPanel/MediaSearchFilter.js.map +1 -0
- package/lib-es/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +5 -4
- package/lib-es/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js.map +1 -1
- package/lib-es/components/ListingContainer/ListingContainer.js +4 -1
- package/lib-es/components/ListingContainer/ListingContainer.js.map +1 -1
- package/lib-es/constants.js +2 -1
- package/lib-es/constants.js.map +1 -1
- package/lib-es/index.js +3 -3
- package/lib-es/index.js.map +1 -1
- package/lib-es/utils/bustUrl.js.map +1 -1
- package/package.json +8 -8
- package/src/components/CardMedia/CardMedia.js +120 -90
- package/src/components/EditMediaFile/EditMediaFile.js +28 -27
- package/src/components/EditMediaFile/EditMediaFilePage.js +12 -7
- package/src/components/FileList/useGetFiles/getFiles.js +12 -4
- package/src/components/FileList/useGetFiles/useGetFiles.js +3 -4
- package/src/components/FileList/useGetFilesList/useGetFilesList.js +2 -1
- package/src/components/FilePreview/Image/imageSchema.js +8 -4
- package/src/components/FilePreview/PDF/schema.js +2 -1
- package/src/components/FilePreview/index.js +36 -2
- package/src/components/FilePreview/previewDefault/previewDefaultSchema.js +2 -1
- package/src/components/FileUploadAdapter/FileUploadAdapter.js +24 -14
- package/src/components/FilterPanel/FilterPanel.js +44 -129
- package/src/components/FilterPanel/MediaSearchFilter.js +32 -0
- package/src/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +5 -2
- package/src/components/ListingContainer/ListingContainer.js +4 -1
- package/src/constants.js +15 -1
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
import _extends from "@babel/runtime/helpers/extends";
|
|
2
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
4
|
+
const _excluded = ["name", "storeKey"];
|
|
3
5
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
6
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
7
|
import React from 'react';
|
|
6
8
|
import { FormBuilder } from '@blaze-cms/react-form-builder';
|
|
7
9
|
import PropTypes from 'prop-types';
|
|
10
|
+
import { useQuery } from '@apollo/client';
|
|
11
|
+
import { getQuery, getDynamicQuery } from '@blaze-cms/admin-ui-utils';
|
|
8
12
|
import { getPreview } from './get-preview';
|
|
13
|
+
import { FILE_DEFAULT_PROPS } from '../../constants';
|
|
9
14
|
const FilePreview = ({
|
|
10
15
|
file,
|
|
11
16
|
handleFormChange,
|
|
@@ -16,6 +21,36 @@ const FilePreview = ({
|
|
|
16
21
|
showChangeButton,
|
|
17
22
|
disableFilePreview
|
|
18
23
|
}) => {
|
|
24
|
+
const {
|
|
25
|
+
data: schemaData = {
|
|
26
|
+
getEntitySchemas: [{
|
|
27
|
+
properties: {},
|
|
28
|
+
actions: {
|
|
29
|
+
get: 'getFile'
|
|
30
|
+
}
|
|
31
|
+
}]
|
|
32
|
+
},
|
|
33
|
+
loading: schemaLoading
|
|
34
|
+
} = useQuery(getQuery('GET_ENTITY_SCHEMA'), {
|
|
35
|
+
variables: {
|
|
36
|
+
identifier: 'file'
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
const [fileSchema] = schemaData && schemaData.getEntitySchemas ? schemaData.getEntitySchemas : [];
|
|
40
|
+
const fileQuery = getDynamicQuery('DATA_QUERY')(fileSchema, file.id, null, FILE_DEFAULT_PROPS);
|
|
41
|
+
const {
|
|
42
|
+
loading,
|
|
43
|
+
data: {
|
|
44
|
+
entityData: fileData
|
|
45
|
+
} = {}
|
|
46
|
+
} = useQuery(fileQuery, {
|
|
47
|
+
variables: {
|
|
48
|
+
id: file.id
|
|
49
|
+
},
|
|
50
|
+
fetchPolicy: 'cache-and-network',
|
|
51
|
+
skip: !fileSchema || !fileSchema.id
|
|
52
|
+
});
|
|
53
|
+
if (!fileSchema || schemaLoading || loading) return null;
|
|
19
54
|
const {
|
|
20
55
|
name,
|
|
21
56
|
url,
|
|
@@ -23,7 +58,7 @@ const FilePreview = ({
|
|
|
23
58
|
data,
|
|
24
59
|
store,
|
|
25
60
|
updated
|
|
26
|
-
} =
|
|
61
|
+
} = fileData;
|
|
27
62
|
const bustUrl = (srcUrl, version) => {
|
|
28
63
|
if (!srcUrl) return srcUrl;
|
|
29
64
|
const sep = srcUrl.includes('?') ? '&' : '?';
|
|
@@ -35,6 +70,15 @@ const FilePreview = ({
|
|
|
35
70
|
previewType
|
|
36
71
|
});
|
|
37
72
|
const shouldRenderForm = schema && displayForm;
|
|
73
|
+
const {
|
|
74
|
+
properties
|
|
75
|
+
} = fileSchema;
|
|
76
|
+
const {
|
|
77
|
+
name: nameProp,
|
|
78
|
+
storeKey: storeKeyProp
|
|
79
|
+
} = properties,
|
|
80
|
+
restProperties = _objectWithoutProperties(properties, _excluded);
|
|
81
|
+
_extends(schema.formSchema.properties, restProperties);
|
|
38
82
|
if (shouldRenderForm && store) {
|
|
39
83
|
const {
|
|
40
84
|
defaultStore = {},
|
|
@@ -51,7 +95,7 @@ const FilePreview = ({
|
|
|
51
95
|
}
|
|
52
96
|
}
|
|
53
97
|
const formBuilderData = {
|
|
54
|
-
values: _objectSpread(_objectSpread({}, data),
|
|
98
|
+
values: _objectSpread(_objectSpread({}, data), fileData)
|
|
55
99
|
};
|
|
56
100
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Preview, _extends({
|
|
57
101
|
mimetype: mimetype,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","FormBuilder","PropTypes","getPreview","FilePreview","file","handleFormChange","displayForm","previewType","children","handleChangeFile","showChangeButton","disableFilePreview","name","url","mimetype","
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","FormBuilder","PropTypes","useQuery","getQuery","getDynamicQuery","getPreview","FILE_DEFAULT_PROPS","FilePreview","file","handleFormChange","displayForm","previewType","children","handleChangeFile","showChangeButton","disableFilePreview","data","schemaData","getEntitySchemas","properties","actions","get","loading","schemaLoading","variables","identifier","fileSchema","fileQuery","id","entityData","fileData","fetchPolicy","skip","name","url","mimetype","store","updated","bustUrl","srcUrl","version","sep","includes","Date","now","displayUrl","Preview","schema","shouldRenderForm","nameProp","storeKey","storeKeyProp","restProperties","_objectWithoutProperties","_excluded","_extends","formSchema","defaultStore","storeOptions","options","key","selected","formBuilderData","values","_objectSpread","createElement","Fragment","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 { useQuery } from '@apollo/client';\nimport { getQuery, getDynamicQuery } from '@blaze-cms/admin-ui-utils';\nimport { getPreview } from './get-preview';\nimport { FILE_DEFAULT_PROPS } from '../../constants';\n\nconst FilePreview = ({\n file,\n handleFormChange,\n displayForm,\n previewType,\n children,\n handleChangeFile,\n showChangeButton,\n disableFilePreview\n}) => {\n const {\n data: schemaData = {\n getEntitySchemas: [\n {\n properties: {},\n actions: {\n get: 'getFile'\n }\n }\n ]\n },\n loading: schemaLoading\n } = useQuery(getQuery('GET_ENTITY_SCHEMA'), {\n variables: { identifier: 'file' }\n });\n\n const [fileSchema] = schemaData && schemaData.getEntitySchemas ? schemaData.getEntitySchemas : [];\n\n const fileQuery = getDynamicQuery('DATA_QUERY')(fileSchema, file.id, null, FILE_DEFAULT_PROPS);\n const { loading, data: { entityData: fileData } = {} } = useQuery(fileQuery, {\n variables: { id: file.id },\n fetchPolicy: 'cache-and-network',\n skip: !fileSchema || !fileSchema.id\n });\n\n if (!fileSchema || schemaLoading || loading) return null;\n\n const { name, url, mimetype, data, store, updated } = fileData;\n const bustUrl = (srcUrl, version) => {\n if (!srcUrl) return srcUrl;\n const sep = srcUrl.includes('?') ? '&' : '?';\n return `${srcUrl}${sep}v=${version || Date.now()}`;\n };\n const displayUrl = bustUrl(url, updated);\n const [Preview, schema] = getPreview({ mimetype, previewType });\n const shouldRenderForm = schema && displayForm;\n\n const { properties } = fileSchema;\n const { name: nameProp, storeKey: storeKeyProp, ...restProperties } = properties;\n Object.assign(schema.formSchema.properties, restProperties);\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: { ...data, ...fileData } };\n\n return (\n <>\n <Preview\n mimetype={mimetype}\n url={displayUrl}\n name={name}\n {...data}\n file={file}\n handleChangeFile={handleChangeFile}\n disableFilePreview={disableFilePreview}\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 disableFilePreview: 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 disableFilePreview: true\n};\n\nexport default FilePreview;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,+BAA+B;AAC3D,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,SAASC,QAAQ,EAAEC,eAAe,QAAQ,2BAA2B;AACrE,SAASC,UAAU,QAAQ,eAAe;AAC1C,SAASC,kBAAkB,QAAQ,iBAAiB;AAEpD,MAAMC,WAAW,GAAGA,CAAC;EACnBC,IAAI;EACJC,gBAAgB;EAChBC,WAAW;EACXC,WAAW;EACXC,QAAQ;EACRC,gBAAgB;EAChBC,gBAAgB;EAChBC;AACF,CAAC,KAAK;EACJ,MAAM;IACJC,IAAI,EAAEC,UAAU,GAAG;MACjBC,gBAAgB,EAAE,CAChB;QACEC,UAAU,EAAE,CAAC,CAAC;QACdC,OAAO,EAAE;UACPC,GAAG,EAAE;QACP;MACF,CAAC;IAEL,CAAC;IACDC,OAAO,EAAEC;EACX,CAAC,GAAGrB,QAAQ,CAACC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;IAC1CqB,SAAS,EAAE;MAAEC,UAAU,EAAE;IAAO;EAClC,CAAC,CAAC;EAEF,MAAM,CAACC,UAAU,CAAC,GAAGT,UAAU,IAAIA,UAAU,CAACC,gBAAgB,GAAGD,UAAU,CAACC,gBAAgB,GAAG,EAAE;EAEjG,MAAMS,SAAS,GAAGvB,eAAe,CAAC,YAAY,CAAC,CAACsB,UAAU,EAAElB,IAAI,CAACoB,EAAE,EAAE,IAAI,EAAEtB,kBAAkB,CAAC;EAC9F,MAAM;IAAEgB,OAAO;IAAEN,IAAI,EAAE;MAAEa,UAAU,EAAEC;IAAS,CAAC,GAAG,CAAC;EAAE,CAAC,GAAG5B,QAAQ,CAACyB,SAAS,EAAE;IAC3EH,SAAS,EAAE;MAAEI,EAAE,EAAEpB,IAAI,CAACoB;IAAG,CAAC;IAC1BG,WAAW,EAAE,mBAAmB;IAChCC,IAAI,EAAE,CAACN,UAAU,IAAI,CAACA,UAAU,CAACE;EACnC,CAAC,CAAC;EAEF,IAAI,CAACF,UAAU,IAAIH,aAAa,IAAID,OAAO,EAAE,OAAO,IAAI;EAExD,MAAM;IAAEW,IAAI;IAAEC,GAAG;IAAEC,QAAQ;IAAEnB,IAAI;IAAEoB,KAAK;IAAEC;EAAQ,CAAC,GAAGP,QAAQ;EAC9D,MAAMQ,OAAO,GAAGA,CAACC,MAAM,EAAEC,OAAO,KAAK;IACnC,IAAI,CAACD,MAAM,EAAE,OAAOA,MAAM;IAC1B,MAAME,GAAG,GAAGF,MAAM,CAACG,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG;IAC5C,OAAQ,GAAEH,MAAO,GAAEE,GAAI,KAAID,OAAO,IAAIG,IAAI,CAACC,GAAG,CAAC,CAAE,EAAC;EACpD,CAAC;EACD,MAAMC,UAAU,GAAGP,OAAO,CAACJ,GAAG,EAAEG,OAAO,CAAC;EACxC,MAAM,CAACS,OAAO,EAAEC,MAAM,CAAC,GAAG1C,UAAU,CAAC;IAAE8B,QAAQ;IAAExB;EAAY,CAAC,CAAC;EAC/D,MAAMqC,gBAAgB,GAAGD,MAAM,IAAIrC,WAAW;EAE9C,MAAM;IAAES;EAAW,CAAC,GAAGO,UAAU;EACjC,MAAM;MAAEO,IAAI,EAAEgB,QAAQ;MAAEC,QAAQ,EAAEC;IAAgC,CAAC,GAAGhC,UAAU;IAA7BiC,cAAc,GAAAC,wBAAA,CAAKlC,UAAU,EAAAmC,SAAA;EAChFC,QAAA,CAAcR,MAAM,CAACS,UAAU,CAACrC,UAAU,EAAEiC,cAAc,CAAC;EAE3D,IAAIJ,gBAAgB,IAAIZ,KAAK,EAAE;IAC7B,MAAM;MAAEqB,YAAY,GAAG,CAAC,CAAC;MAAEC,YAAY,GAAG;IAAG,CAAC,GAAGtB,KAAK;IACtD,IAAIW,MAAM,CAACS,UAAU,CAACrC,UAAU,CAAC+B,QAAQ,EAAE;MACzCH,MAAM,CAACS,UAAU,CAACrC,UAAU,CAAC+B,QAAQ,CAACS,OAAO,GAAGD,YAAY;MAC5D,IAAID,YAAY,EAAE;QAChB,MAAM;UAAEG;QAAI,CAAC,GAAGH,YAAY;QAC5BV,MAAM,CAACS,UAAU,CAACrC,UAAU,CAAC+B,QAAQ,CAACW,QAAQ,GAAGD,GAAG;MACtD;IACF;EACF;EAEA,MAAME,eAAe,GAAG;IAAEC,MAAM,EAAAC,aAAA,CAAAA,aAAA,KAAOhD,IAAI,GAAKc,QAAQ;EAAG,CAAC;EAE5D,oBACE/B,KAAA,CAAAkE,aAAA,CAAAlE,KAAA,CAAAmE,QAAA,qBACEnE,KAAA,CAAAkE,aAAA,CAACnB,OAAO,EAAAS,QAAA;IACNpB,QAAQ,EAAEA,QAAS;IACnBD,GAAG,EAAEW,UAAW;IAChBZ,IAAI,EAAEA;EAAK,GACPjB,IAAI;IACRR,IAAI,EAAEA,IAAK;IACXK,gBAAgB,EAAEA,gBAAiB;IACnCE,kBAAkB,EAAEA,kBAAmB;IACvCD,gBAAgB,EAAEA;EAAiB,IAClCkC,gBAAgB,iBACfjD,KAAA,CAAAkE,aAAA;IAAKE,SAAS,EAAC;EAAkB,gBAC/BpE,KAAA,CAAAkE,aAAA;IAAKE,SAAS,EAAC;EAAmB,GAAE3D,IAAI,CAAC4D,QAAc,CAAC,eACxDrE,KAAA,CAAAkE,aAAA,CAACjE,WAAW;IACVqE,aAAa,EAAC,eAAe;IAC7BC,QAAQ,EAAE7D,gBAAiB;IAC3BO,IAAI,EAAE8C,eAAgB;IACtBf,MAAM,EAAEA,MAAM,CAACS;EAAW,CAC3B,CACE,CAEA,CAAC,EACT5C,QACD,CAAC;AAEP,CAAC;AAEDL,WAAW,CAACgE,qBAAqB,GAAG;EAClCC,IAAI,EAAE,MAAM;EACZC,GAAG,EAAE;AACP,CAAC;AAEDlE,WAAW,CAACmE,SAAS,GAAG;EACtBlE,IAAI,EAAEP,SAAS,CAAC0E,MAAM,CAACC,UAAU;EACjCC,QAAQ,EAAE5E,SAAS,CAAC6E,MAAM;EAC1BrE,gBAAgB,EAAER,SAAS,CAAC8E,IAAI;EAChClE,gBAAgB,EAAEZ,SAAS,CAAC8E,IAAI;EAChCrE,WAAW,EAAET,SAAS,CAAC+E,IAAI;EAC3BC,QAAQ,EAAEhF,SAAS,CAAC0E,MAAM;EAC1BhE,WAAW,EAAEV,SAAS,CAACiF,KAAK,CAACC,MAAM,CAACC,IAAI,CAAC7E,WAAW,CAACgE,qBAAqB,CAAC,CAAC;EAC5E3D,QAAQ,EAAEX,SAAS,CAACoF,SAAS,CAAC,CAACpF,SAAS,CAACqF,KAAK,EAAErF,SAAS,CAAC0E,MAAM,EAAE1E,SAAS,CAAC6E,MAAM,CAAC,CAAC;EACpFhE,gBAAgB,EAAEb,SAAS,CAAC+E,IAAI;EAChCjE,kBAAkB,EAAEd,SAAS,CAAC+E;AAChC,CAAC;AAEDzE,WAAW,CAACgF,YAAY,GAAG;EACzB7E,WAAW,EAAE,KAAK;EAClBmE,QAAQ,EAAE,EAAE;EACZI,QAAQ,EAAE,CAAC,CAAC;EACZtE,WAAW,EAAEJ,WAAW,CAACgE,qBAAqB,CAACC,IAAI;EACnD/D,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BI,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BD,QAAQ,EAAE,EAAE;EACZE,gBAAgB,EAAE,KAAK;EACvBC,kBAAkB,EAAE;AACtB,CAAC;AAED,eAAeR,WAAW","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviewDefault.js","names":["React","PropTypes","Button","DefaultIcon","PreviewDefault","url","name","children","handleChangeFile","showChangeButton","createElement","className","key","href","rel","target","onClick","propTypes","string","isRequired","oneOfType","arrayOf","node","func","bool","defaultProps"],"sources":["../../../../src/components/FilePreview/previewDefault/PreviewDefault.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport { DefaultIcon } from './icons';\n\nconst PreviewDefault = ({ url, name, children, handleChangeFile, showChangeButton }) => (\n <div className=\"preview\" key={`default-${url}`}>\n <div className=\"preview__file preview__file--default\">\n <div className=\"preview__file--icon\">\n <DefaultIcon />\n <span>Preview not available</span>\n </div>\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\nPreviewDefault.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\nPreviewDefault.defaultProps = {\n handleChangeFile: () => {},\n showChangeButton: false\n};\n\nexport { PreviewDefault };\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,MAAM,MAAM,qBAAqB;AACxC,SAASC,WAAW,QAAQ,SAAS;AAErC,MAAMC,cAAc,GAAGA,CAAC;EAAEC,GAAG;EAAEC,IAAI;EAAEC,QAAQ;EAAEC,gBAAgB;EAAEC;AAAiB,CAAC,kBACjFT,KAAA,CAAAU,aAAA;EAAKC,SAAS,EAAC,SAAS;EAACC,GAAG,
|
|
1
|
+
{"version":3,"file":"PreviewDefault.js","names":["React","PropTypes","Button","DefaultIcon","PreviewDefault","url","name","children","handleChangeFile","showChangeButton","createElement","className","key","href","rel","target","onClick","propTypes","string","isRequired","oneOfType","arrayOf","node","func","bool","defaultProps"],"sources":["../../../../src/components/FilePreview/previewDefault/PreviewDefault.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport { DefaultIcon } from './icons';\n\nconst PreviewDefault = ({ url, name, children, handleChangeFile, showChangeButton }) => (\n <div className=\"preview\" key={`default-${url}`}>\n <div className=\"preview__file preview__file--default\">\n <div className=\"preview__file--icon\">\n <DefaultIcon />\n <span>Preview not available</span>\n </div>\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\nPreviewDefault.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\nPreviewDefault.defaultProps = {\n handleChangeFile: () => {},\n showChangeButton: false\n};\n\nexport { PreviewDefault };\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,MAAM,MAAM,qBAAqB;AACxC,SAASC,WAAW,QAAQ,SAAS;AAErC,MAAMC,cAAc,GAAGA,CAAC;EAAEC,GAAG;EAAEC,IAAI;EAAEC,QAAQ;EAAEC,gBAAgB;EAAEC;AAAiB,CAAC,kBACjFT,KAAA,CAAAU,aAAA;EAAKC,SAAS,EAAC,SAAS;EAACC,GAAG,EAAG,WAAUP,GAAI;AAAE,gBAC7CL,KAAA,CAAAU,aAAA;EAAKC,SAAS,EAAC;AAAsC,gBACnDX,KAAA,CAAAU,aAAA;EAAKC,SAAS,EAAC;AAAqB,gBAClCX,KAAA,CAAAU,aAAA,CAACP,WAAW,MAAE,CAAC,eACfH,KAAA,CAAAU,aAAA,eAAM,uBAA2B,CAC9B,CAAC,eACNV,KAAA,CAAAU,aAAA;EAAKC,SAAS,EAAC;AAAyC,gBACtDX,KAAA,CAAAU,aAAA,yBACEV,KAAA,CAAAU,aAAA,iBAAQ,cAAoB,CAAC,eAC7BV,KAAA,CAAAU,aAAA;EAAGG,IAAI,EAAER,GAAI;EAACS,GAAG,EAAC,qBAAqB;EAACC,MAAM,EAAC;AAAQ,GAAC,UAErD,CACF,CAAC,EACHN,gBAAgB,iBACfT,KAAA,CAAAU,aAAA;EAAKC,SAAS,EAAC;AAAwB,gBACrCX,KAAA,CAAAU,aAAA,CAACR,MAAM;EAACc,OAAO,EAAER;AAAiB,GAAC,aAAmB,CACnD,CAEJ,CACF,CAAC,EACLD,QACE,CACN;AAEDH,cAAc,CAACa,SAAS,GAAG;EACzBZ,GAAG,EAAEJ,SAAS,CAACiB,MAAM,CAACC,UAAU;EAChCb,IAAI,EAAEL,SAAS,CAACiB,MAAM,CAACC,UAAU;EACjCZ,QAAQ,EAAEN,SAAS,CAACmB,SAAS,CAAC,CAACnB,SAAS,CAACoB,OAAO,CAACpB,SAAS,CAACqB,IAAI,CAAC,EAAErB,SAAS,CAACqB,IAAI,CAAC,CAAC,CAACH,UAAU;EAC7FX,gBAAgB,EAAEP,SAAS,CAACsB,IAAI;EAChCd,gBAAgB,EAAER,SAAS,CAACuB;AAC9B,CAAC;AAEDpB,cAAc,CAACqB,YAAY,GAAG;EAC5BjB,gBAAgB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC1BC,gBAAgB,EAAE;AACpB,CAAC;AAED,SAASL,cAAc","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"previewDefaultSchema.js","names":["previewDefaultSchema","settings","formSchema","properties","name","type","showInForm","label","formFieldType","formPriority","hrefUrl","format","description","required"],"sources":["../../../../src/components/FilePreview/previewDefault/previewDefaultSchema.js"],"sourcesContent":["const previewDefaultSchema = {\n settings: {},\n formSchema: {\n properties: {\n name: {\n type: 'string',\n showInForm: true,\n label: 'File name',\n formFieldType: 'text',\n formPriority: 1.0\n },\n hrefUrl: {\n type: 'string',\n format: 'uri-template',\n label: 'url',\n showInForm: true,\n formFieldType: 'text',\n description: 'Url format is not valid'\n }\n },\n required: ['name']\n }\n};\n\nexport { previewDefaultSchema };\n"],"mappings":"AAAA,MAAMA,oBAAoB,GAAG;EAC3BC,QAAQ,EAAE,CAAC,CAAC;EACZC,UAAU,EAAE;IACVC,UAAU,EAAE;MACVC,IAAI,EAAE;QACJC,IAAI,EAAE,QAAQ;QACdC,UAAU,EAAE,IAAI;QAChBC,KAAK,EAAE,WAAW;QAClBC,aAAa,EAAE,MAAM;QACrBC,YAAY,EAAE;MAChB,CAAC;MACDC,OAAO,EAAE;QACPL,IAAI,EAAE,QAAQ;QACdM,MAAM,EAAE,cAAc;QACtBJ,KAAK,EAAE,KAAK;QACZD,UAAU,EAAE,IAAI;QAChBE,aAAa,EAAE,MAAM;QACrBI,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"previewDefaultSchema.js","names":["previewDefaultSchema","settings","formSchema","properties","name","type","showInForm","label","formFieldType","formPriority","hrefUrl","format","description","isDataPropery","required"],"sources":["../../../../src/components/FilePreview/previewDefault/previewDefaultSchema.js"],"sourcesContent":["const previewDefaultSchema = {\n settings: {},\n formSchema: {\n properties: {\n name: {\n type: 'string',\n showInForm: true,\n label: 'File name',\n formFieldType: 'text',\n formPriority: 1.0\n },\n hrefUrl: {\n type: 'string',\n format: 'uri-template',\n label: 'url',\n showInForm: true,\n formFieldType: 'text',\n description: 'Url format is not valid',\n isDataPropery: true\n }\n },\n required: ['name']\n }\n};\n\nexport { previewDefaultSchema };\n"],"mappings":"AAAA,MAAMA,oBAAoB,GAAG;EAC3BC,QAAQ,EAAE,CAAC,CAAC;EACZC,UAAU,EAAE;IACVC,UAAU,EAAE;MACVC,IAAI,EAAE;QACJC,IAAI,EAAE,QAAQ;QACdC,UAAU,EAAE,IAAI;QAChBC,KAAK,EAAE,WAAW;QAClBC,aAAa,EAAE,MAAM;QACrBC,YAAY,EAAE;MAChB,CAAC;MACDC,OAAO,EAAE;QACPL,IAAI,EAAE,QAAQ;QACdM,MAAM,EAAE,cAAc;QACtBJ,KAAK,EAAE,KAAK;QACZD,UAAU,EAAE,IAAI;QAChBE,aAAa,EAAE,MAAM;QACrBI,WAAW,EAAE,yBAAyB;QACtCC,aAAa,EAAE;MACjB;IACF,CAAC;IACDC,QAAQ,EAAE,CAAC,MAAM;EACnB;AACF,CAAC;AAED,SAASd,oBAAoB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileList.js","names":["React","useState","useEffect","PropTypes","Button","FilePreviewList","FileReorderList","PREVIEW","REORDER","IMAGES","FileList","selectedFiles","allFiles","handleReorderFiles","canDragAndDrop","fetchMore","children","isReorderActive","setIsReorderActive","toggleMode","length","totalImagesString","createElement","Fragment","className","onClick","propTypes","array","isRequired","func","bool","oneOfType","object","string","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FileList.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport FilePreviewList from './FilePreviewList';\nimport FileReorderList from './FileReorderList';\nimport { PREVIEW, REORDER, IMAGES } from '../../constants';\n\nconst FileList = ({\n selectedFiles,\n allFiles,\n handleReorderFiles,\n canDragAndDrop,\n fetchMore,\n children\n}) => {\n const [isReorderActive, setIsReorderActive] = useState(false);\n const toggleMode = () => {\n fetchMore(true);\n setIsReorderActive(!isReorderActive);\n };\n\n useEffect(\n () => {\n if (isReorderActive && selectedFiles.length > allFiles.length) fetchMore(true);\n },\n [selectedFiles] //eslint-disable-line\n );\n const totalImagesString = `${selectedFiles.length} ${IMAGES}`;\n\n return (\n <>\n <div className=\"FileUploadAdapter__header\">\n {selectedFiles.length > 1 && (\n <p className=\"FileUploadAdapter FileUploadAdapter__preview-counter\">\n {totalImagesString}\n </p>\n )}\n {canDragAndDrop && (\n <Button onClick={toggleMode}>{isReorderActive ? PREVIEW : REORDER}</Button>\n )}\n </div>\n\n {canDragAndDrop && isReorderActive ? (\n <FileReorderList selectedFiles={selectedFiles} handleReorderFiles={handleReorderFiles} />\n ) : (\n <FilePreviewList selectedFiles={selectedFiles}>{children}</FilePreviewList>\n )}\n </>\n );\n};\n\nFileList.propTypes = {\n selectedFiles: PropTypes.array.isRequired,\n fetchMore: PropTypes.func.isRequired,\n handleReorderFiles: PropTypes.func.isRequired,\n allFiles: PropTypes.array,\n canDragAndDrop: PropTypes.bool,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFileList.defaultProps = {\n children: [],\n allFiles: [],\n canDragAndDrop: false\n};\n\nexport default FileList;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAClD,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,MAAM,MAAM,qBAAqB;AACxC,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,SAASC,OAAO,EAAEC,OAAO,EAAEC,MAAM,QAAQ,iBAAiB;AAE1D,MAAMC,QAAQ,GAAGA,CAAC;EAChBC,aAAa;EACbC,QAAQ;EACRC,kBAAkB;EAClBC,cAAc;EACdC,SAAS;EACTC;AACF,CAAC,KAAK;EACJ,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAGjB,QAAQ,CAAC,KAAK,CAAC;EAC7D,MAAMkB,UAAU,GAAGA,CAAA,KAAM;IACvBJ,SAAS,CAAC,IAAI,CAAC;IACfG,kBAAkB,CAAC,CAACD,eAAe,CAAC;EACtC,CAAC;EAEDf,SAAS,CACP,MAAM;IACJ,IAAIe,eAAe,IAAIN,aAAa,CAACS,MAAM,GAAGR,QAAQ,CAACQ,MAAM,EAAEL,SAAS,CAAC,IAAI,CAAC;EAChF,CAAC,EACD,CAACJ,aAAa,CAAC,CAAC;EAClB,CAAC;EACD,MAAMU,iBAAiB,
|
|
1
|
+
{"version":3,"file":"FileList.js","names":["React","useState","useEffect","PropTypes","Button","FilePreviewList","FileReorderList","PREVIEW","REORDER","IMAGES","FileList","selectedFiles","allFiles","handleReorderFiles","canDragAndDrop","fetchMore","children","isReorderActive","setIsReorderActive","toggleMode","length","totalImagesString","createElement","Fragment","className","onClick","propTypes","array","isRequired","func","bool","oneOfType","object","string","defaultProps"],"sources":["../../../src/components/FileUploadAdapter/FileList.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@blaze-react/button';\nimport FilePreviewList from './FilePreviewList';\nimport FileReorderList from './FileReorderList';\nimport { PREVIEW, REORDER, IMAGES } from '../../constants';\n\nconst FileList = ({\n selectedFiles,\n allFiles,\n handleReorderFiles,\n canDragAndDrop,\n fetchMore,\n children\n}) => {\n const [isReorderActive, setIsReorderActive] = useState(false);\n const toggleMode = () => {\n fetchMore(true);\n setIsReorderActive(!isReorderActive);\n };\n\n useEffect(\n () => {\n if (isReorderActive && selectedFiles.length > allFiles.length) fetchMore(true);\n },\n [selectedFiles] //eslint-disable-line\n );\n const totalImagesString = `${selectedFiles.length} ${IMAGES}`;\n\n return (\n <>\n <div className=\"FileUploadAdapter__header\">\n {selectedFiles.length > 1 && (\n <p className=\"FileUploadAdapter FileUploadAdapter__preview-counter\">\n {totalImagesString}\n </p>\n )}\n {canDragAndDrop && (\n <Button onClick={toggleMode}>{isReorderActive ? PREVIEW : REORDER}</Button>\n )}\n </div>\n\n {canDragAndDrop && isReorderActive ? (\n <FileReorderList selectedFiles={selectedFiles} handleReorderFiles={handleReorderFiles} />\n ) : (\n <FilePreviewList selectedFiles={selectedFiles}>{children}</FilePreviewList>\n )}\n </>\n );\n};\n\nFileList.propTypes = {\n selectedFiles: PropTypes.array.isRequired,\n fetchMore: PropTypes.func.isRequired,\n handleReorderFiles: PropTypes.func.isRequired,\n allFiles: PropTypes.array,\n canDragAndDrop: PropTypes.bool,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.object, PropTypes.string])\n};\n\nFileList.defaultProps = {\n children: [],\n allFiles: [],\n canDragAndDrop: false\n};\n\nexport default FileList;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAClD,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,MAAM,MAAM,qBAAqB;AACxC,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,SAASC,OAAO,EAAEC,OAAO,EAAEC,MAAM,QAAQ,iBAAiB;AAE1D,MAAMC,QAAQ,GAAGA,CAAC;EAChBC,aAAa;EACbC,QAAQ;EACRC,kBAAkB;EAClBC,cAAc;EACdC,SAAS;EACTC;AACF,CAAC,KAAK;EACJ,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAGjB,QAAQ,CAAC,KAAK,CAAC;EAC7D,MAAMkB,UAAU,GAAGA,CAAA,KAAM;IACvBJ,SAAS,CAAC,IAAI,CAAC;IACfG,kBAAkB,CAAC,CAACD,eAAe,CAAC;EACtC,CAAC;EAEDf,SAAS,CACP,MAAM;IACJ,IAAIe,eAAe,IAAIN,aAAa,CAACS,MAAM,GAAGR,QAAQ,CAACQ,MAAM,EAAEL,SAAS,CAAC,IAAI,CAAC;EAChF,CAAC,EACD,CAACJ,aAAa,CAAC,CAAC;EAClB,CAAC;EACD,MAAMU,iBAAiB,GAAI,GAAEV,aAAa,CAACS,MAAO,IAAGX,MAAO,EAAC;EAE7D,oBACET,KAAA,CAAAsB,aAAA,CAAAtB,KAAA,CAAAuB,QAAA,qBACEvB,KAAA,CAAAsB,aAAA;IAAKE,SAAS,EAAC;EAA2B,GACvCb,aAAa,CAACS,MAAM,GAAG,CAAC,iBACvBpB,KAAA,CAAAsB,aAAA;IAAGE,SAAS,EAAC;EAAsD,GAChEH,iBACA,CACJ,EACAP,cAAc,iBACbd,KAAA,CAAAsB,aAAA,CAAClB,MAAM;IAACqB,OAAO,EAAEN;EAAW,GAAEF,eAAe,GAAGV,OAAO,GAAGC,OAAgB,CAEzE,CAAC,EAELM,cAAc,IAAIG,eAAe,gBAChCjB,KAAA,CAAAsB,aAAA,CAAChB,eAAe;IAACK,aAAa,EAAEA,aAAc;IAACE,kBAAkB,EAAEA;EAAmB,CAAE,CAAC,gBAEzFb,KAAA,CAAAsB,aAAA,CAACjB,eAAe;IAACM,aAAa,EAAEA;EAAc,GAAEK,QAA0B,CAE5E,CAAC;AAEP,CAAC;AAEDN,QAAQ,CAACgB,SAAS,GAAG;EACnBf,aAAa,EAAER,SAAS,CAACwB,KAAK,CAACC,UAAU;EACzCb,SAAS,EAAEZ,SAAS,CAAC0B,IAAI,CAACD,UAAU;EACpCf,kBAAkB,EAAEV,SAAS,CAAC0B,IAAI,CAACD,UAAU;EAC7ChB,QAAQ,EAAET,SAAS,CAACwB,KAAK;EACzBb,cAAc,EAAEX,SAAS,CAAC2B,IAAI;EAC9Bd,QAAQ,EAAEb,SAAS,CAAC4B,SAAS,CAAC,CAAC5B,SAAS,CAACwB,KAAK,EAAExB,SAAS,CAAC6B,MAAM,EAAE7B,SAAS,CAAC8B,MAAM,CAAC;AACrF,CAAC;AAEDvB,QAAQ,CAACwB,YAAY,GAAG;EACtBlB,QAAQ,EAAE,EAAE;EACZJ,QAAQ,EAAE,EAAE;EACZE,cAAc,EAAE;AAClB,CAAC;AAED,eAAeJ,QAAQ","ignoreList":[]}
|
|
@@ -4,9 +4,8 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
4
4
|
import React, { useState, useContext, useEffect } from 'react';
|
|
5
5
|
import FileUpload from '@blaze-react/file-upload';
|
|
6
6
|
import PropTypes from 'prop-types';
|
|
7
|
-
import { useApolloClient } from '@apollo/client';
|
|
7
|
+
import { useApolloClient, useQuery } from '@apollo/client';
|
|
8
8
|
import { getQuery, getMutation, ModalAdapter as Modal } from '@blaze-cms/admin-ui-utils';
|
|
9
|
-
import { parseFormValues } from '@blaze-cms/react-form-builder';
|
|
10
9
|
import { useToasts } from '@blaze-react/toaster';
|
|
11
10
|
import Tooltip from '@blaze-react/tooltip';
|
|
12
11
|
import { MORE } from '../../constants';
|
|
@@ -50,6 +49,15 @@ const FileUploadAdapter = ({
|
|
|
50
49
|
const {
|
|
51
50
|
addToast
|
|
52
51
|
} = useToasts();
|
|
52
|
+
const {
|
|
53
|
+
data: {
|
|
54
|
+
getEntitySchemas: [schemaData] = []
|
|
55
|
+
} = {}
|
|
56
|
+
} = useQuery(getQuery('GET_ENTITY_SCHEMA'), {
|
|
57
|
+
variables: {
|
|
58
|
+
identifier: 'file'
|
|
59
|
+
}
|
|
60
|
+
});
|
|
53
61
|
const getFiles = async (offset, ids, fetchAll = previewAllFiles) => {
|
|
54
62
|
const {
|
|
55
63
|
data: {
|
|
@@ -178,22 +186,25 @@ const FileUploadAdapter = ({
|
|
|
178
186
|
setEditFile(selectedEditFile);
|
|
179
187
|
};
|
|
180
188
|
const handleEditFileForm = editedFile => {
|
|
181
|
-
const
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
name,
|
|
191
|
-
data: {
|
|
192
|
-
altText,
|
|
193
|
-
caption,
|
|
194
|
-
credits,
|
|
195
|
-
hrefUrl
|
|
189
|
+
const dataValues = editedFile.valuesChecked.reduce((acc, {
|
|
190
|
+
id: formValueId,
|
|
191
|
+
value: formValue,
|
|
192
|
+
isDataPropery
|
|
193
|
+
}) => {
|
|
194
|
+
if (isDataPropery) {
|
|
195
|
+
acc.data[formValueId] = formValue;
|
|
196
|
+
} else {
|
|
197
|
+
acc[formValueId] = formValue;
|
|
196
198
|
}
|
|
199
|
+
return acc;
|
|
200
|
+
}, {
|
|
201
|
+
id: editFile.id,
|
|
202
|
+
data: _objectSpread({}, editFile.data)
|
|
203
|
+
});
|
|
204
|
+
delete dataValues.data.__typename; // Remove __typename if it exists in data to avoid issues with Apollo cache.
|
|
205
|
+
|
|
206
|
+
setEditFile(_objectSpread(_objectSpread({}, editFile), {}, {
|
|
207
|
+
formData: dataValues
|
|
197
208
|
}));
|
|
198
209
|
};
|
|
199
210
|
const orderFiles = (files, ids) => ids.map(currentId => files.find(({
|
|
@@ -224,7 +235,8 @@ const FileUploadAdapter = ({
|
|
|
224
235
|
const {
|
|
225
236
|
name,
|
|
226
237
|
id: editedFileId,
|
|
227
|
-
data
|
|
238
|
+
data,
|
|
239
|
+
formData
|
|
228
240
|
} = editFile;
|
|
229
241
|
const updatedSelectedFiles = selectedFiles.map(selectedFile => {
|
|
230
242
|
if (selectedFile.id === editedFileId) {
|
|
@@ -240,11 +252,9 @@ const FileUploadAdapter = ({
|
|
|
240
252
|
await client.mutate({
|
|
241
253
|
mutation: getMutation('UPDATE_FILE'),
|
|
242
254
|
variables: {
|
|
243
|
-
input: {
|
|
244
|
-
name,
|
|
245
|
-
data,
|
|
255
|
+
input: _objectSpread(_objectSpread({}, formData), {}, {
|
|
246
256
|
id: editedFileId
|
|
247
|
-
}
|
|
257
|
+
})
|
|
248
258
|
},
|
|
249
259
|
update(cache, {
|
|
250
260
|
data: {
|
|
@@ -328,7 +338,8 @@ const FileUploadAdapter = ({
|
|
|
328
338
|
handleFormChange: handleEditFileForm,
|
|
329
339
|
displayForm: true,
|
|
330
340
|
previewType: "card",
|
|
331
|
-
disableFilePreview: disableFilePreview
|
|
341
|
+
disableFilePreview: disableFilePreview,
|
|
342
|
+
schemaData: schemaData
|
|
332
343
|
})), displayFileUploadModal && simpleLayout && /*#__PURE__*/React.createElement("div", {
|
|
333
344
|
className: "file-upload-modal-wrapper"
|
|
334
345
|
}, /*#__PURE__*/React.createElement(ListingContainer, {
|
|
@@ -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","disableFilePreview","fileType","storeKey","InjectPreview","FormContext","currentLimit","displayModal","setDisplayModal","displayFileUploadModal","setDisplayFileUploadModal","initialValue","currentValue","setCurrentValue","selectedFiles","setSelectedFiles","editFile","setEditFile","allFilesLoaded","setAllFilesLoaded","client","addToast","getFiles","offset","ids","fetchAll","data","files","newFiles","query","variables","limit","where","_in","skip","length","fetchPolicy","loadedFiles","loadedOrderedFiles","orderFiles","initialFiles","filter","_","i","orderedFiles","fetchMore","shouldFetchAll","newOrderedFiles","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 disableFilePreview,\n fileType,\n storeKey\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 [selectedFiles, setSelectedFiles] = useState([]);\n const [editFile, setEditFile] = useState(null);\n const [allFilesLoaded, setAllFilesLoaded] = useState(false);\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 if (allFilesLoaded) {\n const loadedFiles = await getFiles(0, currentValue, true);\n const loadedOrderedFiles = orderFiles(loadedFiles, currentValue);\n setSelectedFiles(loadedOrderedFiles);\n return;\n }\n\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 setSelectedFiles(orderedFiles);\n setAllFilesLoaded(false);\n })();\n },\n [currentValue] //eslint-disable-line\n );\n\n const fetchMore = async shouldFetchAll => {\n if (selectedFiles.length === currentValue.length) return;\n const newFiles = await getFiles(0, currentValue, true);\n const newOrderedFiles = orderFiles(newFiles, currentValue);\n setSelectedFiles(newOrderedFiles);\n setAllFilesLoaded(true);\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(selectedFiles.length, 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 storeKey={storeKey}\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 disableFilePreview={disableFilePreview}\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 openEditInModal\n storeKey={storeKey}\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 storeKey={storeKey}\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 disableFilePreview: PropTypes.bool,\n storeKey: 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 disableFilePreview: true,\n storeKey: null\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","useQuery","getQuery","getMutation","ModalAdapter","Modal","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","disableFilePreview","fileType","storeKey","InjectPreview","FormContext","currentLimit","displayModal","setDisplayModal","displayFileUploadModal","setDisplayFileUploadModal","initialValue","currentValue","setCurrentValue","selectedFiles","setSelectedFiles","editFile","setEditFile","allFilesLoaded","setAllFilesLoaded","client","addToast","data","getEntitySchemas","schemaData","variables","identifier","getFiles","offset","ids","fetchAll","files","newFiles","query","limit","where","_in","skip","length","fetchPolicy","loadedFiles","loadedOrderedFiles","orderFiles","initialFiles","filter","_","i","orderedFiles","fetchMore","shouldFetchAll","newOrderedFiles","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","dataValues","valuesChecked","reduce","acc","formValueId","formValue","isDataPropery","_objectSpread","__typename","formData","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, useQuery } from '@apollo/client';\nimport { getQuery, getMutation, ModalAdapter as Modal } from '@blaze-cms/admin-ui-utils';\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 disableFilePreview,\n fileType,\n storeKey\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 [selectedFiles, setSelectedFiles] = useState([]);\n const [editFile, setEditFile] = useState(null);\n const [allFilesLoaded, setAllFilesLoaded] = useState(false);\n const client = useApolloClient();\n const { addToast } = useToasts();\n\n const { data: { getEntitySchemas: [schemaData] = [] } = {} } = useQuery(\n getQuery('GET_ENTITY_SCHEMA'),\n {\n variables: { identifier: 'file' }\n }\n );\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 if (allFilesLoaded) {\n const loadedFiles = await getFiles(0, currentValue, true);\n const loadedOrderedFiles = orderFiles(loadedFiles, currentValue);\n setSelectedFiles(loadedOrderedFiles);\n return;\n }\n\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 setSelectedFiles(orderedFiles);\n setAllFilesLoaded(false);\n })();\n },\n [currentValue] //eslint-disable-line\n );\n\n const fetchMore = async shouldFetchAll => {\n if (selectedFiles.length === currentValue.length) return;\n const newFiles = await getFiles(0, currentValue, true);\n const newOrderedFiles = orderFiles(newFiles, currentValue);\n setSelectedFiles(newOrderedFiles);\n setAllFilesLoaded(true);\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(selectedFiles.length, 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 dataValues = editedFile.valuesChecked.reduce(\n (acc, { id: formValueId, value: formValue, isDataPropery }) => {\n if (isDataPropery) {\n acc.data[formValueId] = formValue;\n } else {\n acc[formValueId] = formValue;\n }\n return acc;\n },\n { id: editFile.id, data: { ...editFile.data } }\n );\n delete dataValues.data.__typename; // Remove __typename if it exists in data to avoid issues with Apollo cache.\n\n setEditFile({\n ...editFile,\n formData: dataValues\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, formData } = 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 ...formData,\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 storeKey={storeKey}\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 disableFilePreview={disableFilePreview}\n schemaData={schemaData}\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 openEditInModal\n storeKey={storeKey}\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 storeKey={storeKey}\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 disableFilePreview: PropTypes.bool,\n storeKey: 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 disableFilePreview: true,\n storeKey: null\n};\n\nexport default FileUploadAdapter;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-button-text.js","names":["getButtonText","maxItems","value","fileType","pluralSuffix","fileLabel","length"],"sources":["../../../../src/components/FileUploadAdapter/mappers/get-button-text.js"],"sourcesContent":["const getButtonText = ({ maxItems, value, fileType = 'file' }) => {\n const pluralSuffix = maxItems > 1 ? 's' : '';\n const fileLabel = `Add ${fileType}${pluralSuffix}`;\n return value && value.length > 0 ? `Change ${fileType}${pluralSuffix}` : fileLabel;\n};\n\nexport { getButtonText };\n"],"mappings":"AAAA,MAAMA,aAAa,GAAGA,CAAC;EAAEC,QAAQ;EAAEC,KAAK;EAAEC,QAAQ,GAAG;AAAO,CAAC,KAAK;EAChE,MAAMC,YAAY,GAAGH,QAAQ,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE;EAC5C,MAAMI,SAAS,
|
|
1
|
+
{"version":3,"file":"get-button-text.js","names":["getButtonText","maxItems","value","fileType","pluralSuffix","fileLabel","length"],"sources":["../../../../src/components/FileUploadAdapter/mappers/get-button-text.js"],"sourcesContent":["const getButtonText = ({ maxItems, value, fileType = 'file' }) => {\n const pluralSuffix = maxItems > 1 ? 's' : '';\n const fileLabel = `Add ${fileType}${pluralSuffix}`;\n return value && value.length > 0 ? `Change ${fileType}${pluralSuffix}` : fileLabel;\n};\n\nexport { getButtonText };\n"],"mappings":"AAAA,MAAMA,aAAa,GAAGA,CAAC;EAAEC,QAAQ;EAAEC,KAAK;EAAEC,QAAQ,GAAG;AAAO,CAAC,KAAK;EAChE,MAAMC,YAAY,GAAGH,QAAQ,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE;EAC5C,MAAMI,SAAS,GAAI,OAAMF,QAAS,GAAEC,YAAa,EAAC;EAClD,OAAOF,KAAK,IAAIA,KAAK,CAACI,MAAM,GAAG,CAAC,GAAI,UAASH,QAAS,GAAEC,YAAa,EAAC,GAAGC,SAAS;AACpF,CAAC;AAED,SAASL,aAAa","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileUploadModal.js","names":["React","useState","ModalAdapter","Modal","getMutation","getQuery","FileUpload","PropTypes","useToasts","useApolloClient","useQuery","useFileList","FileUploadModal","onClose","getSelectedFiles","closeModalAndSetValue","simpleLayout","fileId","storeKey","selectedStoreKey","files","setFiles","addToast","client","addNewFile","fileStoresType","data","getFileStores","storeType","variables","visibleInAdmin","handleFiles","filesToUpload","length","uploadFiles","filesToProcess","response","Promise","all","map","file","name","fileStoreKey","payload","id","filename","mutate","mutation","input","_objectSpread","catch","error","message","appearance","autoDismiss","parsedResponse","_ref","result","rest","_objectWithoutProperties","_excluded","fileNames","_parsedResponse$","updatedFile","_excluded2","writeQuery","query","e","console","updateMessage","filesToSelect","uploadMessage","join","toastMessage","handleOnSave","storeOptions","type","key","filter","createElement","title","actions","textButton","callback","modifiers","upload","onChange","selectOptions","propTypes","string","func","isRequired","bool","defaultProps"],"sources":["../../../src/components/FileUploadModal/FileUploadModal.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { ModalAdapter as Modal, getMutation, getQuery } from '@blaze-cms/admin-ui-utils';\nimport FileUpload from '@blaze-react/file-upload';\nimport PropTypes from 'prop-types';\nimport { useToasts } from '@blaze-react/toaster';\nimport { useApolloClient, useQuery } from '@apollo/client';\nimport useFileList from '../FileList/useFileList';\n\nconst FileUploadModal = ({\n onClose,\n getSelectedFiles,\n closeModalAndSetValue,\n simpleLayout,\n fileId,\n storeKey,\n selectedStoreKey\n}) => {\n const [files, setFiles] = useState([]);\n const { addToast } = useToasts();\n const client = useApolloClient();\n const { addNewFile } = useFileList();\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { data: { getFileStores: storeType = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n\n const handleFiles = filesToUpload => {\n if (fileId && filesToUpload && filesToUpload.length) {\n setFiles([filesToUpload[0]]);\n return;\n }\n setFiles(filesToUpload);\n };\n\n const uploadFiles = async () => {\n const filesToProcess = fileId && files.length ? [files[0]] : files;\n\n const response = await Promise.all(\n filesToProcess.map(({ file, name, data, storeKey: fileStoreKey }) => {\n const payload = {\n name,\n storeKey: fileStoreKey || selectedStoreKey || storeKey,\n data\n };\n if (fileId) {\n payload.id = fileId;\n } else if (!name) {\n payload.name = file.filename;\n }\n return client.mutate({\n mutation: getMutation('UPLOAD_FILE'),\n variables: { input: { file, ...payload } }\n });\n })\n ).catch(error => {\n addToast(error.message, {\n appearance: 'error',\n autoDismiss: true\n });\n return [];\n });\n\n const parsedResponse = response.map(({ data: { file } }) => {\n const { message, ...rest } = file.result || {};\n return rest;\n });\n\n const fileNames = files.map(({ file }) => file.name);\n\n if (simpleLayout) {\n if (fileId && parsedResponse && parsedResponse.length) {\n const { message, ...updatedFile } = parsedResponse[0];\n try {\n client.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id: fileId },\n data: { file: updatedFile }\n });\n } catch (e) {\n console.error(e); //eslint-disable-line\n }\n const updateMessage = `Updated: ${updatedFile.filename || fileNames[0]}`;\n closeModalAndSetValue(simpleLayout, updatedFile, updateMessage);\n return;\n }\n const filesToSelect = parsedResponse.map(({ id }) => id);\n const uploadMessage = `Uploaded: ${fileNames.join(', ')}`;\n getSelectedFiles(null, filesToSelect);\n closeModalAndSetValue(simpleLayout, filesToSelect, uploadMessage);\n return;\n }\n\n addNewFile && addNewFile(parsedResponse);\n const toastMessage = fileId ? `Updated: ${fileNames[0]}` : `Uploaded: ${fileNames.join(', ')}`;\n\n addToast(toastMessage, {\n appearance: 'success',\n autoDismiss: true\n });\n };\n\n const handleOnSave = async () => {\n if (files.length) await uploadFiles();\n onClose();\n };\n\n let storeOptions = storeType.map(type => [type.key, type.name]);\n storeOptions = storeKey ? storeOptions.filter(([key]) => key === storeKey) : storeOptions;\n\n return (\n <Modal\n onClose={onClose}\n title=\"Add media\"\n actions={[\n {\n textButton: 'Cancel',\n callback: onClose,\n modifiers: ['cancel']\n },\n {\n textButton: 'Upload',\n callback: handleOnSave,\n modifiers: []\n }\n ]}\n upload>\n <FileUpload\n storeKey={selectedStoreKey || storeKey}\n onChange={handleFiles}\n selectOptions={storeOptions}\n />\n </Modal>\n );\n};\n\nFileUploadModal.propTypes = {\n fileId: PropTypes.string,\n getSelectedFiles: PropTypes.func.isRequired,\n onClose: PropTypes.func,\n simpleLayout: PropTypes.bool,\n closeModalAndSetValue: PropTypes.func,\n storeKey: PropTypes.string,\n selectedStoreKey: PropTypes.string\n};\n\nFileUploadModal.defaultProps = {\n onClose: () => {},\n closeModalAndSetValue: () => {},\n simpleLayout: false,\n fileId: null,\n storeKey: null,\n selectedStoreKey: null\n};\n\nexport default FileUploadModal;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FileUploadModal.js","names":["React","useState","ModalAdapter","Modal","getMutation","getQuery","FileUpload","PropTypes","useToasts","useApolloClient","useQuery","useFileList","FileUploadModal","onClose","getSelectedFiles","closeModalAndSetValue","simpleLayout","fileId","storeKey","selectedStoreKey","files","setFiles","addToast","client","addNewFile","fileStoresType","data","getFileStores","storeType","variables","visibleInAdmin","handleFiles","filesToUpload","length","uploadFiles","filesToProcess","response","Promise","all","map","file","name","fileStoreKey","payload","id","filename","mutate","mutation","input","_objectSpread","catch","error","message","appearance","autoDismiss","parsedResponse","_ref","result","rest","_objectWithoutProperties","_excluded","fileNames","_parsedResponse$","updatedFile","_excluded2","writeQuery","query","e","console","updateMessage","filesToSelect","uploadMessage","join","toastMessage","handleOnSave","storeOptions","type","key","filter","createElement","title","actions","textButton","callback","modifiers","upload","onChange","selectOptions","propTypes","string","func","isRequired","bool","defaultProps"],"sources":["../../../src/components/FileUploadModal/FileUploadModal.js"],"sourcesContent":["import React, { useState } from 'react';\nimport { ModalAdapter as Modal, getMutation, getQuery } from '@blaze-cms/admin-ui-utils';\nimport FileUpload from '@blaze-react/file-upload';\nimport PropTypes from 'prop-types';\nimport { useToasts } from '@blaze-react/toaster';\nimport { useApolloClient, useQuery } from '@apollo/client';\nimport useFileList from '../FileList/useFileList';\n\nconst FileUploadModal = ({\n onClose,\n getSelectedFiles,\n closeModalAndSetValue,\n simpleLayout,\n fileId,\n storeKey,\n selectedStoreKey\n}) => {\n const [files, setFiles] = useState([]);\n const { addToast } = useToasts();\n const client = useApolloClient();\n const { addNewFile } = useFileList();\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { data: { getFileStores: storeType = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n\n const handleFiles = filesToUpload => {\n if (fileId && filesToUpload && filesToUpload.length) {\n setFiles([filesToUpload[0]]);\n return;\n }\n setFiles(filesToUpload);\n };\n\n const uploadFiles = async () => {\n const filesToProcess = fileId && files.length ? [files[0]] : files;\n\n const response = await Promise.all(\n filesToProcess.map(({ file, name, data, storeKey: fileStoreKey }) => {\n const payload = {\n name,\n storeKey: fileStoreKey || selectedStoreKey || storeKey,\n data\n };\n if (fileId) {\n payload.id = fileId;\n } else if (!name) {\n payload.name = file.filename;\n }\n return client.mutate({\n mutation: getMutation('UPLOAD_FILE'),\n variables: { input: { file, ...payload } }\n });\n })\n ).catch(error => {\n addToast(error.message, {\n appearance: 'error',\n autoDismiss: true\n });\n return [];\n });\n\n const parsedResponse = response.map(({ data: { file } }) => {\n const { message, ...rest } = file.result || {};\n return rest;\n });\n\n const fileNames = files.map(({ file }) => file.name);\n\n if (simpleLayout) {\n if (fileId && parsedResponse && parsedResponse.length) {\n const { message, ...updatedFile } = parsedResponse[0];\n try {\n client.writeQuery({\n query: getQuery('GET_FILE_BY_ID'),\n variables: { id: fileId },\n data: { file: updatedFile }\n });\n } catch (e) {\n console.error(e); //eslint-disable-line\n }\n const updateMessage = `Updated: ${updatedFile.filename || fileNames[0]}`;\n closeModalAndSetValue(simpleLayout, updatedFile, updateMessage);\n return;\n }\n const filesToSelect = parsedResponse.map(({ id }) => id);\n const uploadMessage = `Uploaded: ${fileNames.join(', ')}`;\n getSelectedFiles(null, filesToSelect);\n closeModalAndSetValue(simpleLayout, filesToSelect, uploadMessage);\n return;\n }\n\n addNewFile && addNewFile(parsedResponse);\n const toastMessage = fileId ? `Updated: ${fileNames[0]}` : `Uploaded: ${fileNames.join(', ')}`;\n\n addToast(toastMessage, {\n appearance: 'success',\n autoDismiss: true\n });\n };\n\n const handleOnSave = async () => {\n if (files.length) await uploadFiles();\n onClose();\n };\n\n let storeOptions = storeType.map(type => [type.key, type.name]);\n storeOptions = storeKey ? storeOptions.filter(([key]) => key === storeKey) : storeOptions;\n\n return (\n <Modal\n onClose={onClose}\n title=\"Add media\"\n actions={[\n {\n textButton: 'Cancel',\n callback: onClose,\n modifiers: ['cancel']\n },\n {\n textButton: 'Upload',\n callback: handleOnSave,\n modifiers: []\n }\n ]}\n upload>\n <FileUpload\n storeKey={selectedStoreKey || storeKey}\n onChange={handleFiles}\n selectOptions={storeOptions}\n />\n </Modal>\n );\n};\n\nFileUploadModal.propTypes = {\n fileId: PropTypes.string,\n getSelectedFiles: PropTypes.func.isRequired,\n onClose: PropTypes.func,\n simpleLayout: PropTypes.bool,\n closeModalAndSetValue: PropTypes.func,\n storeKey: PropTypes.string,\n selectedStoreKey: PropTypes.string\n};\n\nFileUploadModal.defaultProps = {\n onClose: () => {},\n closeModalAndSetValue: () => {},\n simpleLayout: false,\n fileId: null,\n storeKey: null,\n selectedStoreKey: null\n};\n\nexport default FileUploadModal;\n"],"mappings":"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","ignoreList":[]}
|