@blaze-cms/plugin-media-ui 0.147.0-rc-eagle.2 → 0.147.0-rc-eagle.6

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 (86) hide show
  1. package/lib/components/CardMedia/CardMedia.js +94 -51
  2. package/lib/components/CardMedia/CardMedia.js.map +1 -1
  3. package/lib/components/EditMediaFile/EditMediaFile.js +24 -40
  4. package/lib/components/EditMediaFile/EditMediaFile.js.map +1 -1
  5. package/lib/components/EditMediaFile/EditMediaFilePage.js +14 -7
  6. package/lib/components/EditMediaFile/EditMediaFilePage.js.map +1 -1
  7. package/lib/components/FileList/useGetFiles/getFiles.js +6 -3
  8. package/lib/components/FileList/useGetFiles/getFiles.js.map +1 -1
  9. package/lib/components/FileList/useGetFiles/useGetFiles.js +7 -2
  10. package/lib/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
  11. package/lib/components/FileList/useGetFilesList/useGetFilesList.js +4 -1
  12. package/lib/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
  13. package/lib/components/FilePreview/Image/imageSchema.js +8 -4
  14. package/lib/components/FilePreview/Image/imageSchema.js.map +1 -1
  15. package/lib/components/FilePreview/PDF/schema.js +2 -1
  16. package/lib/components/FilePreview/PDF/schema.js.map +1 -1
  17. package/lib/components/FilePreview/index.js +47 -3
  18. package/lib/components/FilePreview/index.js.map +1 -1
  19. package/lib/components/FilePreview/previewDefault/previewDefaultSchema.js +2 -1
  20. package/lib/components/FilePreview/previewDefault/previewDefaultSchema.js.map +1 -1
  21. package/lib/components/FileUploadAdapter/FileUploadAdapter.js +33 -22
  22. package/lib/components/FileUploadAdapter/FileUploadAdapter.js.map +1 -1
  23. package/lib/components/FileUploadModal/FileUploadModal.js +80 -17
  24. package/lib/components/FileUploadModal/FileUploadModal.js.map +1 -1
  25. package/lib/components/FilterPanel/FilterPanel.js +43 -125
  26. package/lib/components/FilterPanel/FilterPanel.js.map +1 -1
  27. package/lib/components/FilterPanel/MediaSearchFilter.js +41 -0
  28. package/lib/components/FilterPanel/MediaSearchFilter.js.map +1 -0
  29. package/lib/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +7 -4
  30. package/lib/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js.map +1 -1
  31. package/lib/components/ListingContainer/ListingContainer.js +4 -1
  32. package/lib/components/ListingContainer/ListingContainer.js.map +1 -1
  33. package/lib/constants.js +3 -2
  34. package/lib/constants.js.map +1 -1
  35. package/lib-es/components/CardMedia/CardMedia.js +96 -53
  36. package/lib-es/components/CardMedia/CardMedia.js.map +1 -1
  37. package/lib-es/components/EditMediaFile/EditMediaFile.js +26 -42
  38. package/lib-es/components/EditMediaFile/EditMediaFile.js.map +1 -1
  39. package/lib-es/components/EditMediaFile/EditMediaFilePage.js +15 -8
  40. package/lib-es/components/EditMediaFile/EditMediaFilePage.js.map +1 -1
  41. package/lib-es/components/FileList/useGetFiles/getFiles.js +6 -3
  42. package/lib-es/components/FileList/useGetFiles/getFiles.js.map +1 -1
  43. package/lib-es/components/FileList/useGetFiles/useGetFiles.js +7 -2
  44. package/lib-es/components/FileList/useGetFiles/useGetFiles.js.map +1 -1
  45. package/lib-es/components/FileList/useGetFilesList/useGetFilesList.js +4 -1
  46. package/lib-es/components/FileList/useGetFilesList/useGetFilesList.js.map +1 -1
  47. package/lib-es/components/FilePreview/Image/imageSchema.js +8 -4
  48. package/lib-es/components/FilePreview/Image/imageSchema.js.map +1 -1
  49. package/lib-es/components/FilePreview/PDF/schema.js +2 -1
  50. package/lib-es/components/FilePreview/PDF/schema.js.map +1 -1
  51. package/lib-es/components/FilePreview/index.js +47 -3
  52. package/lib-es/components/FilePreview/index.js.map +1 -1
  53. package/lib-es/components/FilePreview/previewDefault/previewDefaultSchema.js +2 -1
  54. package/lib-es/components/FilePreview/previewDefault/previewDefaultSchema.js.map +1 -1
  55. package/lib-es/components/FileUploadAdapter/FileUploadAdapter.js +34 -23
  56. package/lib-es/components/FileUploadAdapter/FileUploadAdapter.js.map +1 -1
  57. package/lib-es/components/FileUploadModal/FileUploadModal.js +81 -18
  58. package/lib-es/components/FileUploadModal/FileUploadModal.js.map +1 -1
  59. package/lib-es/components/FilterPanel/FilterPanel.js +43 -123
  60. package/lib-es/components/FilterPanel/FilterPanel.js.map +1 -1
  61. package/lib-es/components/FilterPanel/MediaSearchFilter.js +34 -0
  62. package/lib-es/components/FilterPanel/MediaSearchFilter.js.map +1 -0
  63. package/lib-es/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +7 -4
  64. package/lib-es/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js.map +1 -1
  65. package/lib-es/components/ListingContainer/ListingContainer.js +4 -1
  66. package/lib-es/components/ListingContainer/ListingContainer.js.map +1 -1
  67. package/lib-es/constants.js +3 -2
  68. package/lib-es/constants.js.map +1 -1
  69. package/package.json +10 -9
  70. package/src/components/CardMedia/CardMedia.js +119 -89
  71. package/src/components/EditMediaFile/EditMediaFile.js +21 -24
  72. package/src/components/EditMediaFile/EditMediaFilePage.js +12 -7
  73. package/src/components/FileList/useGetFiles/getFiles.js +12 -4
  74. package/src/components/FileList/useGetFiles/useGetFiles.js +3 -4
  75. package/src/components/FileList/useGetFilesList/useGetFilesList.js +2 -1
  76. package/src/components/FilePreview/Image/imageSchema.js +8 -4
  77. package/src/components/FilePreview/PDF/schema.js +2 -1
  78. package/src/components/FilePreview/index.js +36 -2
  79. package/src/components/FilePreview/previewDefault/previewDefaultSchema.js +2 -1
  80. package/src/components/FileUploadAdapter/FileUploadAdapter.js +24 -14
  81. package/src/components/FileUploadModal/FileUploadModal.js +71 -6
  82. package/src/components/FilterPanel/FilterPanel.js +44 -129
  83. package/src/components/FilterPanel/MediaSearchFilter.js +32 -0
  84. package/src/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js +7 -2
  85. package/src/components/ListingContainer/ListingContainer.js +4 -1
  86. package/src/constants.js +16 -2
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _client = require("@apollo/client");
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _adminUiUtils = require("@blaze-cms/admin-ui-utils");
12
+ var _pluginDataUi = require("@blaze-cms/plugin-data-ui");
13
+ const MediaSearchFilter = ({
14
+ selectedFilter,
15
+ listFilters,
16
+ updateListingFilters
17
+ }) => {
18
+ var _data$getEntitySchema;
19
+ const {
20
+ data
21
+ } = (0, _client.useQuery)((0, _adminUiUtils.getQuery)('GET_ENTITY_SCHEMA'), {
22
+ variables: {
23
+ identifier: 'file'
24
+ }
25
+ });
26
+ const getEntitySchemas = (_data$getEntitySchema = data === null || data === void 0 ? void 0 : data.getEntitySchemas) !== null && _data$getEntitySchema !== void 0 ? _data$getEntitySchema : [];
27
+ if (!getEntitySchemas.length) return null;
28
+ return /*#__PURE__*/_react.default.createElement(_pluginDataUi.SearchFilter, {
29
+ schema: getEntitySchemas[0],
30
+ listFilters: listFilters,
31
+ setListFilters: updateListingFilters,
32
+ values: selectedFilter.defaultFilters
33
+ });
34
+ };
35
+ MediaSearchFilter.propTypes = {
36
+ selectedFilter: _propTypes.default.object.isRequired,
37
+ updateListingFilters: _propTypes.default.func.isRequired,
38
+ listFilters: _propTypes.default.array.isRequired
39
+ };
40
+ var _default = exports.default = MediaSearchFilter;
41
+ //# sourceMappingURL=MediaSearchFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaSearchFilter.js","names":["_client","require","_react","_interopRequireDefault","_propTypes","_adminUiUtils","_pluginDataUi","MediaSearchFilter","selectedFilter","listFilters","updateListingFilters","_data$getEntitySchema","data","useQuery","getQuery","variables","identifier","getEntitySchemas","length","default","createElement","SearchFilter","schema","setListFilters","values","defaultFilters","propTypes","PropTypes","object","isRequired","func","array","_default","exports"],"sources":["../../../src/components/FilterPanel/MediaSearchFilter.js"],"sourcesContent":["import { useQuery } from '@apollo/client';\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { SearchFilter } from '@blaze-cms/plugin-data-ui';\n\nconst MediaSearchFilter = ({ selectedFilter, listFilters, updateListingFilters }) => {\n const { data } = useQuery(getQuery('GET_ENTITY_SCHEMA'), {\n variables: { identifier: 'file' }\n });\n\n const getEntitySchemas = data?.getEntitySchemas ?? [];\n\n if (!getEntitySchemas.length) return null;\n\n return (\n <SearchFilter\n schema={getEntitySchemas[0]}\n listFilters={listFilters}\n setListFilters={updateListingFilters}\n values={selectedFilter.defaultFilters}\n />\n );\n};\n\nMediaSearchFilter.propTypes = {\n selectedFilter: PropTypes.object.isRequired,\n updateListingFilters: PropTypes.func.isRequired,\n listFilters: PropTypes.array.isRequired\n};\n\nexport default MediaSearchFilter;\n"],"mappings":";;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AAEA,MAAMM,iBAAiB,GAAGA,CAAC;EAAEC,cAAc;EAAEC,WAAW;EAAEC;AAAqB,CAAC,KAAK;EAAA,IAAAC,qBAAA;EACnF,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,gBAAQ,EAAC,IAAAC,sBAAQ,EAAC,mBAAmB,CAAC,EAAE;IACvDC,SAAS,EAAE;MAAEC,UAAU,EAAE;IAAO;EAClC,CAAC,CAAC;EAEF,MAAMC,gBAAgB,IAAAN,qBAAA,GAAGC,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEK,gBAAgB,cAAAN,qBAAA,cAAAA,qBAAA,GAAI,EAAE;EAErD,IAAI,CAACM,gBAAgB,CAACC,MAAM,EAAE,OAAO,IAAI;EAEzC,oBACEhB,MAAA,CAAAiB,OAAA,CAAAC,aAAA,CAACd,aAAA,CAAAe,YAAY;IACXC,MAAM,EAAEL,gBAAgB,CAAC,CAAC,CAAE;IAC5BR,WAAW,EAAEA,WAAY;IACzBc,cAAc,EAAEb,oBAAqB;IACrCc,MAAM,EAAEhB,cAAc,CAACiB;EAAe,CACvC,CAAC;AAEN,CAAC;AAEDlB,iBAAiB,CAACmB,SAAS,GAAG;EAC5BlB,cAAc,EAAEmB,kBAAS,CAACC,MAAM,CAACC,UAAU;EAC3CnB,oBAAoB,EAAEiB,kBAAS,CAACG,IAAI,CAACD,UAAU;EAC/CpB,WAAW,EAAEkB,kBAAS,CAACI,KAAK,CAACF;AAC/B,CAAC;AAAC,IAAAG,QAAA,GAAAC,OAAA,CAAAd,OAAA,GAEaZ,iBAAiB","ignoreList":[]}
@@ -48,20 +48,22 @@ const MediaFileList = ({
48
48
  const hasFiles = !!data.files && !!data.files.length;
49
49
  (0, _react.useEffect)(() => {
50
50
  if (!loading && !hasFiles) setDisplayCardPrompt(true);
51
+ if (!loading) setDisplayCardPrompt(false);
52
+ if (hasFiles) setDisplayCardPrompt(false);
51
53
  }, [loading, hasFiles, setDisplayCardPrompt]);
52
54
  (0, _react.useEffect)(() => {
53
55
  setVerifiedRanges([]);
54
56
  setCurrentListIndex(0);
55
- setQueryParams({
57
+ setQueryParams(_objectSpread(_objectSpread({}, selectedFilter), {}, {
56
58
  where: _objectSpread(_objectSpread({}, _constants.AVAILABLE_FILTER_TYPES[selectedFilter.filter]), {}, {
57
59
  storeKey: selectedFilter.storeKey
58
60
  }),
59
61
  isSearch: selectedFilter.isSearch,
60
62
  searchTerm: selectedFilter.searchTerm
61
- });
63
+ }));
62
64
  },
63
65
  // eslint-disable-next-line react-hooks/exhaustive-deps
64
- [selectedFilter.filter, selectedFilter.storeKey, selectedFilter.isSearch, selectedFilter.searchTerm]);
66
+ [selectedFilter.filter, selectedFilter.storeKey, selectedFilter.isSearch, selectedFilter.searchTerm, selectedFilter.esFilters]);
65
67
  const handleRenderedItems = ({
66
68
  startIndex
67
69
  }) => {
@@ -74,7 +76,8 @@ const MediaFileList = ({
74
76
  storeKey: selectedFilter.storeKey
75
77
  }),
76
78
  isSearch: selectedFilter.isSearch,
77
- searchTerm: selectedFilter.searchTerm
79
+ searchTerm: selectedFilter.searchTerm,
80
+ esFilters: selectedFilter.esFilters
78
81
  });
79
82
  setVerifiedRanges([...verifiedRanges, loadIndex]);
80
83
  setCurrentListIndex(startIndex + _constants.MEDIA_OVER_SCAN_COUNT);
@@ -1 +1 @@
1
- {"version":3,"file":"MediaFileList.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_admin","_button","_reactTinyVirtualList","_mediaContext","_CardMedia","_mappers","_useFileList","_constants","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","MediaFileList","displayCardPrompt","setDisplayCardPrompt","displayLayout","wrapperRef","modalTargetRef","openEditInModal","currentListIndex","setCurrentListIndex","useState","verifiedRanges","setVerifiedRanges","listHeight","setListHeight","queryParams","data","loading","setQueryParams","clearList","removeFile","updateFile","useFileList","onClickPrompt","getSelectedFiles","selectedFiles","selectedFilter","useMediaContext","MediaContext","hasFiles","files","useEffect","where","AVAILABLE_FILTER_TYPES","storeKey","isSearch","searchTerm","handleRenderedItems","startIndex","rowsLength","loadIndex","Math","floor","MEDIA_OVER_SCAN_COUNT","includes","offset","handleListHeight","current","clientHeight","window","addEventListener","removeEventListener","searchedTerm","createElement","Fragment","className","width","height","itemCount","itemSize","MEDIA_LIST_ITEM_SIZE","overscanCount","scrollToIndex","onItemsRendered","renderItem","index","style","name","url","mimetype","id","fileData","updated","isSelected","existPrevious","key","latestQueryToRefetchParams","onSelected","selected","CardPrompt","onClick","propTypes","PropTypes","func","isRequired","bool","string","object","defaultProps","_default","exports"],"sources":["../../../../../../src/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { CardPrompt } from '@blaze-cms/admin';\nimport Button from '@blaze-react/button';\nimport VirtualList from 'react-tiny-virtual-list';\nimport { useMediaContext, MediaContext } from '../../../../../utils/media-context';\nimport CardMedia from '../../../../CardMedia';\nimport { existPrevious } from '../../../mappers';\nimport useFileList from '../../../../FileList/useFileList';\nimport {\n MEDIA_LIST_ITEM_SIZE,\n MEDIA_OVER_SCAN_COUNT,\n AVAILABLE_FILTER_TYPES\n} from '../../../../../constants';\n\nconst MediaFileList = ({\n displayCardPrompt,\n setDisplayCardPrompt,\n displayLayout,\n wrapperRef,\n modalTargetRef,\n openEditInModal\n}) => {\n const [currentListIndex, setCurrentListIndex] = useState(1);\n const [verifiedRanges, setVerifiedRanges] = useState([]);\n const [listHeight, setListHeight] = useState(null);\n const { queryParams, data, loading, setQueryParams, clearList, removeFile, updateFile } =\n useFileList();\n\n const { onClickPrompt, getSelectedFiles, selectedFiles, selectedFilter } =\n useMediaContext(MediaContext);\n\n const hasFiles = !!data.files && !!data.files.length;\n\n useEffect(() => {\n if (!loading && !hasFiles) setDisplayCardPrompt(true);\n }, [loading, hasFiles, setDisplayCardPrompt]);\n\n useEffect(\n () => {\n setVerifiedRanges([]);\n setCurrentListIndex(0);\n setQueryParams({\n where: {\n ...AVAILABLE_FILTER_TYPES[selectedFilter.filter],\n storeKey: selectedFilter.storeKey\n },\n isSearch: selectedFilter.isSearch,\n searchTerm: selectedFilter.searchTerm\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n selectedFilter.filter,\n selectedFilter.storeKey,\n selectedFilter.isSearch,\n selectedFilter.searchTerm\n ]\n );\n\n const handleRenderedItems = ({ startIndex }) => {\n const rowsLength = data.files.length;\n const loadIndex = Math.floor(rowsLength / 3) - MEDIA_OVER_SCAN_COUNT;\n\n if (loadIndex > 0 && loadIndex < startIndex && !verifiedRanges.includes(loadIndex)) {\n setQueryParams({\n offset: data.files.length,\n where: {\n ...AVAILABLE_FILTER_TYPES[selectedFilter.filter],\n storeKey: selectedFilter.storeKey\n },\n isSearch: selectedFilter.isSearch,\n searchTerm: selectedFilter.searchTerm\n });\n setVerifiedRanges([...verifiedRanges, loadIndex]);\n setCurrentListIndex(startIndex + MEDIA_OVER_SCAN_COUNT);\n }\n };\n\n useEffect(() => {\n const handleListHeight = () => {\n setListHeight(wrapperRef.current.clientHeight - 40);\n };\n\n if (wrapperRef.current) {\n handleListHeight();\n window.addEventListener('resize', handleListHeight);\n }\n return () => {\n window.removeEventListener('resize', handleListHeight);\n };\n }, [listHeight, wrapperRef]);\n\n const searchedTerm = queryParams.searchTerm && `${queryParams.searchTerm} -`;\n\n return (\n <>\n {hasFiles && (\n <>\n <p className=\"media__fileList-counter\">\n {searchedTerm} {data[selectedFilter.filter]} items\n </p>\n <VirtualList\n width=\"100%\"\n height={listHeight}\n itemCount={data.files.length}\n itemSize={MEDIA_LIST_ITEM_SIZE}\n overscanCount={MEDIA_OVER_SCAN_COUNT}\n scrollToIndex={currentListIndex}\n onItemsRendered={handleRenderedItems}\n renderItem={({ index, style }) => {\n const { name, url, mimetype, id, data: fileData, updated } = data.files[index];\n const isSelected = existPrevious(selectedFiles, id);\n return (\n <div key={index} style={style} className=\"list__item--resultWrapper\">\n <CardMedia\n updateFile={updateFile}\n clearList={clearList}\n latestQueryToRefetchParams={queryParams}\n modalTargetRef={modalTargetRef}\n onSelected={getSelectedFiles}\n key={id}\n displayLayout={displayLayout}\n selected={!!isSelected}\n name={name}\n url={url}\n mimetype={mimetype}\n id={id}\n index={index}\n removeFile={removeFile}\n openEditInModal={openEditInModal}\n data={fileData}\n updated={updated}\n />\n </div>\n );\n }}\n />\n </>\n )}\n {displayCardPrompt && (\n <CardPrompt>\n <Button onClick={onClickPrompt} className=\"button button--rounded button--cta\">\n Upload\n </Button>\n </CardPrompt>\n )}\n </>\n );\n};\n\nMediaFileList.propTypes = {\n setDisplayCardPrompt: PropTypes.func.isRequired,\n displayCardPrompt: PropTypes.bool,\n displayLayout: PropTypes.string.isRequired,\n wrapperRef: PropTypes.object.isRequired,\n modalTargetRef: PropTypes.object.isRequired,\n openEditInModal: PropTypes.bool\n};\n\nMediaFileList.defaultProps = {\n displayCardPrompt: true,\n openEditInModal: false\n};\n\nexport default MediaFileList;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MediaFileList.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_admin","_button","_reactTinyVirtualList","_mediaContext","_CardMedia","_mappers","_useFileList","_constants","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","MediaFileList","displayCardPrompt","setDisplayCardPrompt","displayLayout","wrapperRef","modalTargetRef","openEditInModal","currentListIndex","setCurrentListIndex","useState","verifiedRanges","setVerifiedRanges","listHeight","setListHeight","queryParams","data","loading","setQueryParams","clearList","removeFile","updateFile","useFileList","onClickPrompt","getSelectedFiles","selectedFiles","selectedFilter","useMediaContext","MediaContext","hasFiles","files","useEffect","where","AVAILABLE_FILTER_TYPES","storeKey","isSearch","searchTerm","esFilters","handleRenderedItems","startIndex","rowsLength","loadIndex","Math","floor","MEDIA_OVER_SCAN_COUNT","includes","offset","handleListHeight","current","clientHeight","window","addEventListener","removeEventListener","searchedTerm","createElement","Fragment","className","width","height","itemCount","itemSize","MEDIA_LIST_ITEM_SIZE","overscanCount","scrollToIndex","onItemsRendered","renderItem","index","style","name","url","mimetype","id","fileData","updated","isSelected","existPrevious","key","latestQueryToRefetchParams","onSelected","selected","CardPrompt","onClick","propTypes","PropTypes","func","isRequired","bool","string","object","defaultProps","_default","exports"],"sources":["../../../../../../src/components/ListingContainer/Listing/MediaListing/MediaFileList/MediaFileList.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { CardPrompt } from '@blaze-cms/admin';\nimport Button from '@blaze-react/button';\nimport VirtualList from 'react-tiny-virtual-list';\nimport { useMediaContext, MediaContext } from '../../../../../utils/media-context';\nimport CardMedia from '../../../../CardMedia';\nimport { existPrevious } from '../../../mappers';\nimport useFileList from '../../../../FileList/useFileList';\nimport {\n MEDIA_LIST_ITEM_SIZE,\n MEDIA_OVER_SCAN_COUNT,\n AVAILABLE_FILTER_TYPES\n} from '../../../../../constants';\n\nconst MediaFileList = ({\n displayCardPrompt,\n setDisplayCardPrompt,\n displayLayout,\n wrapperRef,\n modalTargetRef,\n openEditInModal\n}) => {\n const [currentListIndex, setCurrentListIndex] = useState(1);\n const [verifiedRanges, setVerifiedRanges] = useState([]);\n const [listHeight, setListHeight] = useState(null);\n const { queryParams, data, loading, setQueryParams, clearList, removeFile, updateFile } =\n useFileList();\n\n const { onClickPrompt, getSelectedFiles, selectedFiles, selectedFilter } =\n useMediaContext(MediaContext);\n\n const hasFiles = !!data.files && !!data.files.length;\n\n useEffect(() => {\n if (!loading && !hasFiles) setDisplayCardPrompt(true);\n if (!loading) setDisplayCardPrompt(false);\n if (hasFiles) setDisplayCardPrompt(false);\n }, [loading, hasFiles, setDisplayCardPrompt]);\n\n useEffect(\n () => {\n setVerifiedRanges([]);\n setCurrentListIndex(0);\n setQueryParams({\n ...selectedFilter,\n where: {\n ...AVAILABLE_FILTER_TYPES[selectedFilter.filter],\n storeKey: selectedFilter.storeKey\n },\n isSearch: selectedFilter.isSearch,\n searchTerm: selectedFilter.searchTerm\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n selectedFilter.filter,\n selectedFilter.storeKey,\n selectedFilter.isSearch,\n selectedFilter.searchTerm,\n selectedFilter.esFilters\n ]\n );\n\n const handleRenderedItems = ({ startIndex }) => {\n const rowsLength = data.files.length;\n const loadIndex = Math.floor(rowsLength / 3) - MEDIA_OVER_SCAN_COUNT;\n\n if (loadIndex > 0 && loadIndex < startIndex && !verifiedRanges.includes(loadIndex)) {\n setQueryParams({\n offset: data.files.length,\n where: {\n ...AVAILABLE_FILTER_TYPES[selectedFilter.filter],\n storeKey: selectedFilter.storeKey\n },\n isSearch: selectedFilter.isSearch,\n searchTerm: selectedFilter.searchTerm,\n esFilters: selectedFilter.esFilters\n });\n setVerifiedRanges([...verifiedRanges, loadIndex]);\n setCurrentListIndex(startIndex + MEDIA_OVER_SCAN_COUNT);\n }\n };\n\n useEffect(() => {\n const handleListHeight = () => {\n setListHeight(wrapperRef.current.clientHeight - 40);\n };\n\n if (wrapperRef.current) {\n handleListHeight();\n window.addEventListener('resize', handleListHeight);\n }\n return () => {\n window.removeEventListener('resize', handleListHeight);\n };\n }, [listHeight, wrapperRef]);\n\n const searchedTerm = queryParams.searchTerm && `${queryParams.searchTerm} -`;\n\n return (\n <>\n {hasFiles && (\n <>\n <p className=\"media__fileList-counter\">\n {searchedTerm} {data[selectedFilter.filter]} items\n </p>\n <VirtualList\n width=\"100%\"\n height={listHeight}\n itemCount={data.files.length}\n itemSize={MEDIA_LIST_ITEM_SIZE}\n overscanCount={MEDIA_OVER_SCAN_COUNT}\n scrollToIndex={currentListIndex}\n onItemsRendered={handleRenderedItems}\n renderItem={({ index, style }) => {\n const { name, url, mimetype, id, data: fileData, updated } = data.files[index];\n const isSelected = existPrevious(selectedFiles, id);\n return (\n <div key={index} style={style} className=\"list__item--resultWrapper\">\n <CardMedia\n updateFile={updateFile}\n clearList={clearList}\n latestQueryToRefetchParams={queryParams}\n modalTargetRef={modalTargetRef}\n onSelected={getSelectedFiles}\n key={id}\n displayLayout={displayLayout}\n selected={!!isSelected}\n name={name}\n url={url}\n mimetype={mimetype}\n id={id}\n index={index}\n removeFile={removeFile}\n openEditInModal={openEditInModal}\n data={fileData}\n updated={updated}\n />\n </div>\n );\n }}\n />\n </>\n )}\n {displayCardPrompt && (\n <CardPrompt>\n <Button onClick={onClickPrompt} className=\"button button--rounded button--cta\">\n Upload\n </Button>\n </CardPrompt>\n )}\n </>\n );\n};\n\nMediaFileList.propTypes = {\n setDisplayCardPrompt: PropTypes.func.isRequired,\n displayCardPrompt: PropTypes.bool,\n displayLayout: PropTypes.string.isRequired,\n wrapperRef: PropTypes.object.isRequired,\n modalTargetRef: PropTypes.object.isRequired,\n openEditInModal: PropTypes.bool\n};\n\nMediaFileList.defaultProps = {\n displayCardPrompt: true,\n openEditInModal: false\n};\n\nexport default MediaFileList;\n"],"mappings":"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","ignoreList":[]}
@@ -78,7 +78,10 @@ const ListingContainer = ({
78
78
  defaultFileStore,
79
79
  changeSelectedFilter: value => setSelectedFilter(value),
80
80
  selectedFilter: _objectSpread(_objectSpread({}, selectedFilter), {}, {
81
- storeKey: selectedFilter.storeKey || defaultFileStore
81
+ storeKey: selectedFilter.storeKey || defaultFileStore,
82
+ defaultFilters: {
83
+ storeKey: selectedFilter.storeKey || defaultFileStore
84
+ }
82
85
  }),
83
86
  selectedFiles,
84
87
  getSelectedFiles,
@@ -1 +1 @@
1
- {"version":3,"file":"ListingContainer.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_client","_adminUiUtils","_toaster","_Listing","_availableFilters","_mediaContext","_FilesListProvider","_mappers","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ListingContainer","handleSelectedFiles","maxItems","filesSelected","displayFileUploadModal","setDisplayFileUploadModal","closeModalAndSetValue","simpleLayout","openEditInModal","storeKey","selectedFiles","setSelectedFiles","useState","selectedFilter","setSelectedFilter","isSearch","searchTerm","fileStoresType","getQuery","loading","data","getFileStores","fileStores","useQuery","variables","visibleInAdmin","getSelectedFiles","file","files","id","existPreviousFile","existPrevious","allSelectedFiles","fileId","handleDisplayFileUploadModal","param","defaultFileStore","find","isDefault","key","createElement","ToastProvider","MediaContextProvider","value","changeSelectedFilter","filters","availableFilters","onClickPrompt","selectedStoreKey","propTypes","PropTypes","func","oneOfType","number","bool","arrayOf","string","isRequired","defaultProps","_default","exports"],"sources":["../../../src/components/ListingContainer/ListingContainer.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { ToastProvider } from '@blaze-react/toaster';\nimport Listing from './Listing';\nimport { availableFilters } from '../../utils/available-filters/available-filters';\nimport { MediaContextProvider } from '../../utils/media-context';\nimport FilesListProvider from '../FileList/FilesListProvider';\nimport { existPrevious } from './mappers';\n\nconst ListingContainer = ({\n handleSelectedFiles,\n maxItems,\n filesSelected,\n displayFileUploadModal,\n setDisplayFileUploadModal,\n closeModalAndSetValue,\n simpleLayout,\n openEditInModal,\n storeKey\n}) => {\n const [selectedFiles, setSelectedFiles] = useState(filesSelected || []);\n const [selectedFilter, setSelectedFilter] = useState({\n filter: 'all',\n isSearch: false,\n searchTerm: null,\n storeKey\n });\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { loading, data: { getFileStores: fileStores = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n if (loading) return null;\n\n const getSelectedFiles = (file, files) => {\n if (simpleLayout) {\n handleSelectedFiles(files, false);\n setSelectedFiles(files);\n return;\n }\n const { id } = file;\n const existPreviousFile = existPrevious(selectedFiles, id);\n if (maxItems === selectedFiles.length && !existPreviousFile) {\n handleSelectedFiles([id], false);\n setSelectedFiles([id]);\n } else {\n const allSelectedFiles = existPreviousFile\n ? selectedFiles.filter(fileId => fileId !== existPreviousFile)\n : [...selectedFiles, id];\n\n handleSelectedFiles(allSelectedFiles, false);\n setSelectedFiles(allSelectedFiles);\n }\n };\n\n const handleDisplayFileUploadModal = param => setDisplayFileUploadModal(param);\n const defaultFileStore = (fileStores.find(({ isDefault }) => isDefault) || {}).key;\n\n return (\n <ToastProvider>\n <MediaContextProvider\n value={{\n fileStores,\n defaultFileStore,\n changeSelectedFilter: value => setSelectedFilter(value),\n selectedFilter: {\n ...selectedFilter,\n storeKey: selectedFilter.storeKey || defaultFileStore\n },\n selectedFiles,\n getSelectedFiles,\n filters: availableFilters,\n onClickPrompt: () => handleDisplayFileUploadModal(true)\n }}>\n <FilesListProvider>\n <Listing\n closeModalAndSetValue={closeModalAndSetValue}\n simpleLayout={simpleLayout}\n getSelectedFiles={getSelectedFiles}\n setDisplayFileUploadModal={setDisplayFileUploadModal}\n displayFileUploadModal={displayFileUploadModal}\n handleDisplayFileUploadModal={handleDisplayFileUploadModal}\n setSelectedFiles={setSelectedFiles}\n handleSelectedFiles={handleSelectedFiles}\n openEditInModal={openEditInModal}\n selectedStoreKey={selectedFilter.storeKey || defaultFileStore}\n storeKey={storeKey}\n />\n </FilesListProvider>\n </MediaContextProvider>\n </ToastProvider>\n );\n};\n\nListingContainer.propTypes = {\n handleSelectedFiles: PropTypes.func,\n maxItems: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n filesSelected: PropTypes.arrayOf(PropTypes.string),\n simpleLayout: PropTypes.bool,\n setDisplayFileUploadModal: PropTypes.func.isRequired,\n displayFileUploadModal: PropTypes.bool.isRequired,\n closeModalAndSetValue: PropTypes.func,\n openEditInModal: PropTypes.bool,\n storeKey: PropTypes.string\n};\n\nListingContainer.defaultProps = {\n closeModalAndSetValue: () => {},\n handleSelectedFiles: () => {},\n maxItems: false,\n filesSelected: [],\n simpleLayout: false,\n openEditInModal: false,\n storeKey: 'default'\n};\n\nexport default ListingContainer;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,iBAAA,GAAAP,OAAA;AACA,IAAAQ,aAAA,GAAAR,OAAA;AACA,IAAAS,kBAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAA0C,SAAAD,wBAAAY,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAd,uBAAA,YAAAA,CAAAY,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAkB,QAAAnB,CAAA,EAAAG,CAAA,QAAAF,CAAA,GAAAe,MAAA,CAAAI,IAAA,CAAApB,CAAA,OAAAgB,MAAA,CAAAK,qBAAA,QAAAf,CAAA,GAAAU,MAAA,CAAAK,qBAAA,CAAArB,CAAA,GAAAG,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAAgB,MAAA,WAAAnB,CAAA,WAAAa,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,EAAAoB,UAAA,OAAAtB,CAAA,CAAAuB,IAAA,CAAAC,KAAA,CAAAxB,CAAA,EAAAK,CAAA,YAAAL,CAAA;AAAA,SAAAyB,cAAA1B,CAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAwB,SAAA,CAAAC,MAAA,EAAAzB,CAAA,UAAAF,CAAA,WAAA0B,SAAA,CAAAxB,CAAA,IAAAwB,SAAA,CAAAxB,CAAA,QAAAA,CAAA,OAAAgB,OAAA,CAAAH,MAAA,CAAAf,CAAA,OAAA4B,OAAA,WAAA1B,CAAA,QAAA2B,gBAAA,CAAApB,OAAA,EAAAV,CAAA,EAAAG,CAAA,EAAAF,CAAA,CAAAE,CAAA,SAAAa,MAAA,CAAAe,yBAAA,GAAAf,MAAA,CAAAgB,gBAAA,CAAAhC,CAAA,EAAAgB,MAAA,CAAAe,yBAAA,CAAA9B,CAAA,KAAAkB,OAAA,CAAAH,MAAA,CAAAf,CAAA,GAAA4B,OAAA,WAAA1B,CAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAjB,CAAA,EAAAG,CAAA,EAAAa,MAAA,CAAAE,wBAAA,CAAAjB,CAAA,EAAAE,CAAA,iBAAAH,CAAA;AAE1C,MAAMiC,gBAAgB,GAAGA,CAAC;EACxBC,mBAAmB;EACnBC,QAAQ;EACRC,aAAa;EACbC,sBAAsB;EACtBC,yBAAyB;EACzBC,qBAAqB;EACrBC,YAAY;EACZC,eAAe;EACfC;AACF,CAAC,KAAK;EACJ,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAG,IAAAC,eAAQ,EAACT,aAAa,IAAI,EAAE,CAAC;EACvE,MAAM,CAACU,cAAc,EAAEC,iBAAiB,CAAC,GAAG,IAAAF,eAAQ,EAAC;IACnDvB,MAAM,EAAE,KAAK;IACb0B,QAAQ,EAAE,KAAK;IACfC,UAAU,EAAE,IAAI;IAChBP;EACF,CAAC,CAAC;EAEF,MAAMQ,cAAc,GAAG,IAAAC,sBAAQ,EAAC,iBAAiB,CAAC;EAClD,MAAM;IAAEC,OAAO;IAAEC,IAAI,EAAE;MAAEC,aAAa,EAAEC,UAAU,GAAG;IAAG,CAAC,GAAG,CAAC;EAAE,CAAC,GAAG,IAAAC,gBAAQ,EAACN,cAAc,EAAE;IAC1FO,SAAS,EAAE;MAAEC,cAAc,EAAE;IAAK;EACpC,CAAC,CAAC;EACF,IAAIN,OAAO,EAAE,OAAO,IAAI;EAExB,MAAMO,gBAAgB,GAAGA,CAACC,IAAI,EAAEC,KAAK,KAAK;IACxC,IAAIrB,YAAY,EAAE;MAChBN,mBAAmB,CAAC2B,KAAK,EAAE,KAAK,CAAC;MACjCjB,gBAAgB,CAACiB,KAAK,CAAC;MACvB;IACF;IACA,MAAM;MAAEC;IAAG,CAAC,GAAGF,IAAI;IACnB,MAAMG,iBAAiB,GAAG,IAAAC,sBAAa,EAACrB,aAAa,EAAEmB,EAAE,CAAC;IAC1D,IAAI3B,QAAQ,KAAKQ,aAAa,CAACf,MAAM,IAAI,CAACmC,iBAAiB,EAAE;MAC3D7B,mBAAmB,CAAC,CAAC4B,EAAE,CAAC,EAAE,KAAK,CAAC;MAChClB,gBAAgB,CAAC,CAACkB,EAAE,CAAC,CAAC;IACxB,CAAC,MAAM;MACL,MAAMG,gBAAgB,GAAGF,iBAAiB,GACtCpB,aAAa,CAACrB,MAAM,CAAC4C,MAAM,IAAIA,MAAM,KAAKH,iBAAiB,CAAC,GAC5D,CAAC,GAAGpB,aAAa,EAAEmB,EAAE,CAAC;MAE1B5B,mBAAmB,CAAC+B,gBAAgB,EAAE,KAAK,CAAC;MAC5CrB,gBAAgB,CAACqB,gBAAgB,CAAC;IACpC;EACF,CAAC;EAED,MAAME,4BAA4B,GAAGC,KAAK,IAAI9B,yBAAyB,CAAC8B,KAAK,CAAC;EAC9E,MAAMC,gBAAgB,GAAG,CAACd,UAAU,CAACe,IAAI,CAAC,CAAC;IAAEC;EAAU,CAAC,KAAKA,SAAS,CAAC,IAAI,CAAC,CAAC,EAAEC,GAAG;EAElF,oBACErF,MAAA,CAAAuB,OAAA,CAAA+D,aAAA,CAAC/E,QAAA,CAAAgF,aAAa,qBACZvF,MAAA,CAAAuB,OAAA,CAAA+D,aAAA,CAAC5E,aAAA,CAAA8E,oBAAoB;IACnBC,KAAK,EAAE;MACLrB,UAAU;MACVc,gBAAgB;MAChBQ,oBAAoB,EAAED,KAAK,IAAI7B,iBAAiB,CAAC6B,KAAK,CAAC;MACvD9B,cAAc,EAAApB,aAAA,CAAAA,aAAA,KACToB,cAAc;QACjBJ,QAAQ,EAAEI,cAAc,CAACJ,QAAQ,IAAI2B;MAAgB,EACtD;MACD1B,aAAa;MACbgB,gBAAgB;MAChBmB,OAAO,EAAEC,kCAAgB;MACzBC,aAAa,EAAEA,CAAA,KAAMb,4BAA4B,CAAC,IAAI;IACxD;EAAE,gBACFhF,MAAA,CAAAuB,OAAA,CAAA+D,aAAA,CAAC3E,kBAAA,CAAAY,OAAiB,qBAChBvB,MAAA,CAAAuB,OAAA,CAAA+D,aAAA,CAAC9E,QAAA,CAAAe,OAAO;IACN6B,qBAAqB,EAAEA,qBAAsB;IAC7CC,YAAY,EAAEA,YAAa;IAC3BmB,gBAAgB,EAAEA,gBAAiB;IACnCrB,yBAAyB,EAAEA,yBAA0B;IACrDD,sBAAsB,EAAEA,sBAAuB;IAC/C8B,4BAA4B,EAAEA,4BAA6B;IAC3DvB,gBAAgB,EAAEA,gBAAiB;IACnCV,mBAAmB,EAAEA,mBAAoB;IACzCO,eAAe,EAAEA,eAAgB;IACjCwC,gBAAgB,EAAEnC,cAAc,CAACJ,QAAQ,IAAI2B,gBAAiB;IAC9D3B,QAAQ,EAAEA;EAAS,CACpB,CACgB,CACC,CACT,CAAC;AAEpB,CAAC;AAEDT,gBAAgB,CAACiD,SAAS,GAAG;EAC3BhD,mBAAmB,EAAEiD,kBAAS,CAACC,IAAI;EACnCjD,QAAQ,EAAEgD,kBAAS,CAACE,SAAS,CAAC,CAACF,kBAAS,CAACG,MAAM,EAAEH,kBAAS,CAACI,IAAI,CAAC,CAAC;EACjEnD,aAAa,EAAE+C,kBAAS,CAACK,OAAO,CAACL,kBAAS,CAACM,MAAM,CAAC;EAClDjD,YAAY,EAAE2C,kBAAS,CAACI,IAAI;EAC5BjD,yBAAyB,EAAE6C,kBAAS,CAACC,IAAI,CAACM,UAAU;EACpDrD,sBAAsB,EAAE8C,kBAAS,CAACI,IAAI,CAACG,UAAU;EACjDnD,qBAAqB,EAAE4C,kBAAS,CAACC,IAAI;EACrC3C,eAAe,EAAE0C,kBAAS,CAACI,IAAI;EAC/B7C,QAAQ,EAAEyC,kBAAS,CAACM;AACtB,CAAC;AAEDxD,gBAAgB,CAAC0D,YAAY,GAAG;EAC9BpD,qBAAqB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC/BL,mBAAmB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC7BC,QAAQ,EAAE,KAAK;EACfC,aAAa,EAAE,EAAE;EACjBI,YAAY,EAAE,KAAK;EACnBC,eAAe,EAAE,KAAK;EACtBC,QAAQ,EAAE;AACZ,CAAC;AAAC,IAAAkD,QAAA,GAAAC,OAAA,CAAAnF,OAAA,GAEauB,gBAAgB","ignoreList":[]}
1
+ {"version":3,"file":"ListingContainer.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_client","_adminUiUtils","_toaster","_Listing","_availableFilters","_mediaContext","_FilesListProvider","_mappers","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ListingContainer","handleSelectedFiles","maxItems","filesSelected","displayFileUploadModal","setDisplayFileUploadModal","closeModalAndSetValue","simpleLayout","openEditInModal","storeKey","selectedFiles","setSelectedFiles","useState","selectedFilter","setSelectedFilter","isSearch","searchTerm","fileStoresType","getQuery","loading","data","getFileStores","fileStores","useQuery","variables","visibleInAdmin","getSelectedFiles","file","files","id","existPreviousFile","existPrevious","allSelectedFiles","fileId","handleDisplayFileUploadModal","param","defaultFileStore","find","isDefault","key","createElement","ToastProvider","MediaContextProvider","value","changeSelectedFilter","defaultFilters","filters","availableFilters","onClickPrompt","selectedStoreKey","propTypes","PropTypes","func","oneOfType","number","bool","arrayOf","string","isRequired","defaultProps","_default","exports"],"sources":["../../../src/components/ListingContainer/ListingContainer.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getQuery } from '@blaze-cms/admin-ui-utils';\nimport { ToastProvider } from '@blaze-react/toaster';\nimport Listing from './Listing';\nimport { availableFilters } from '../../utils/available-filters/available-filters';\nimport { MediaContextProvider } from '../../utils/media-context';\nimport FilesListProvider from '../FileList/FilesListProvider';\nimport { existPrevious } from './mappers';\n\nconst ListingContainer = ({\n handleSelectedFiles,\n maxItems,\n filesSelected,\n displayFileUploadModal,\n setDisplayFileUploadModal,\n closeModalAndSetValue,\n simpleLayout,\n openEditInModal,\n storeKey\n}) => {\n const [selectedFiles, setSelectedFiles] = useState(filesSelected || []);\n const [selectedFilter, setSelectedFilter] = useState({\n filter: 'all',\n isSearch: false,\n searchTerm: null,\n storeKey\n });\n\n const fileStoresType = getQuery('GET_FILE_STORES');\n const { loading, data: { getFileStores: fileStores = [] } = {} } = useQuery(fileStoresType, {\n variables: { visibleInAdmin: true }\n });\n if (loading) return null;\n\n const getSelectedFiles = (file, files) => {\n if (simpleLayout) {\n handleSelectedFiles(files, false);\n setSelectedFiles(files);\n return;\n }\n const { id } = file;\n const existPreviousFile = existPrevious(selectedFiles, id);\n if (maxItems === selectedFiles.length && !existPreviousFile) {\n handleSelectedFiles([id], false);\n setSelectedFiles([id]);\n } else {\n const allSelectedFiles = existPreviousFile\n ? selectedFiles.filter(fileId => fileId !== existPreviousFile)\n : [...selectedFiles, id];\n\n handleSelectedFiles(allSelectedFiles, false);\n setSelectedFiles(allSelectedFiles);\n }\n };\n\n const handleDisplayFileUploadModal = param => setDisplayFileUploadModal(param);\n const defaultFileStore = (fileStores.find(({ isDefault }) => isDefault) || {}).key;\n\n return (\n <ToastProvider>\n <MediaContextProvider\n value={{\n fileStores,\n defaultFileStore,\n changeSelectedFilter: value => setSelectedFilter(value),\n selectedFilter: {\n ...selectedFilter,\n storeKey: selectedFilter.storeKey || defaultFileStore,\n defaultFilters: {\n storeKey: selectedFilter.storeKey || defaultFileStore\n }\n },\n selectedFiles,\n getSelectedFiles,\n filters: availableFilters,\n onClickPrompt: () => handleDisplayFileUploadModal(true)\n }}>\n <FilesListProvider>\n <Listing\n closeModalAndSetValue={closeModalAndSetValue}\n simpleLayout={simpleLayout}\n getSelectedFiles={getSelectedFiles}\n setDisplayFileUploadModal={setDisplayFileUploadModal}\n displayFileUploadModal={displayFileUploadModal}\n handleDisplayFileUploadModal={handleDisplayFileUploadModal}\n setSelectedFiles={setSelectedFiles}\n handleSelectedFiles={handleSelectedFiles}\n openEditInModal={openEditInModal}\n selectedStoreKey={selectedFilter.storeKey || defaultFileStore}\n storeKey={storeKey}\n />\n </FilesListProvider>\n </MediaContextProvider>\n </ToastProvider>\n );\n};\n\nListingContainer.propTypes = {\n handleSelectedFiles: PropTypes.func,\n maxItems: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),\n filesSelected: PropTypes.arrayOf(PropTypes.string),\n simpleLayout: PropTypes.bool,\n setDisplayFileUploadModal: PropTypes.func.isRequired,\n displayFileUploadModal: PropTypes.bool.isRequired,\n closeModalAndSetValue: PropTypes.func,\n openEditInModal: PropTypes.bool,\n storeKey: PropTypes.string\n};\n\nListingContainer.defaultProps = {\n closeModalAndSetValue: () => {},\n handleSelectedFiles: () => {},\n maxItems: false,\n filesSelected: [],\n simpleLayout: false,\n openEditInModal: false,\n storeKey: 'default'\n};\n\nexport default ListingContainer;\n"],"mappings":"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","ignoreList":[]}
package/lib/constants.js CHANGED
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.STORE_KEY = exports.REORDER = exports.PREVIEW = exports.PLUGIN_NAME = exports.ONE_FILE_AS_LIMIT = exports.NAME = exports.MORE = exports.MEDIA_OVER_SCAN_COUNT = exports.MEDIA_LIST_ITEM_SIZE = exports.INVALID_STORE_KEY_VALUES = exports.IMAGES = exports.ICON_SIZE = exports.ICON_COLOR = exports.AVAILABLE_FILTER_TYPES = exports.ALL = void 0;
6
+ exports.STORE_KEY = exports.REORDER = exports.PREVIEW = exports.PLUGIN_NAME = exports.ONE_FILE_AS_LIMIT = exports.NAME = exports.MORE = exports.MEDIA_OVER_SCAN_COUNT = exports.MEDIA_LIST_ITEM_SIZE = exports.INVALID_STORE_KEY_VALUES = exports.IMAGES = exports.ICON_SIZE = exports.ICON_COLOR = exports.FILE_DEFAULT_PROPS = exports.AVAILABLE_FILTER_TYPES = exports.ALL = void 0;
7
7
  const PLUGIN_NAME = exports.PLUGIN_NAME = 'media-ui';
8
8
  const ONE_FILE_AS_LIMIT = exports.ONE_FILE_AS_LIMIT = 1;
9
9
  const AVAILABLE_FILTER_TYPES = exports.AVAILABLE_FILTER_TYPES = {
@@ -21,7 +21,7 @@ const AVAILABLE_FILTER_TYPES = exports.AVAILABLE_FILTER_TYPES = {
21
21
  }
22
22
  };
23
23
  const MEDIA_LIST_ITEM_SIZE = exports.MEDIA_LIST_ITEM_SIZE = 97;
24
- const MEDIA_OVER_SCAN_COUNT = exports.MEDIA_OVER_SCAN_COUNT = 0;
24
+ const MEDIA_OVER_SCAN_COUNT = exports.MEDIA_OVER_SCAN_COUNT = 3;
25
25
  const ICON_SIZE = exports.ICON_SIZE = {
26
26
  WIDTH: '25px',
27
27
  HEIGHT: '25px'
@@ -38,4 +38,5 @@ const PREVIEW = exports.PREVIEW = 'Preview';
38
38
  const REORDER = exports.REORDER = 'Reorder';
39
39
  const IMAGES = exports.IMAGES = 'Images';
40
40
  const MORE = exports.MORE = 'more ...';
41
+ const FILE_DEFAULT_PROPS = exports.FILE_DEFAULT_PROPS = ['id', 'location', 'mimetype', 'url', 'data', 'name', 'storeKey', 'filename', 'type', 'updated'];
41
42
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","names":["PLUGIN_NAME","exports","ONE_FILE_AS_LIMIT","AVAILABLE_FILTER_TYPES","all","type","images","videos","documents","MEDIA_LIST_ITEM_SIZE","MEDIA_OVER_SCAN_COUNT","ICON_SIZE","WIDTH","HEIGHT","ICON_COLOR","STROKE","FILL","STORE_KEY","NAME","ALL","INVALID_STORE_KEY_VALUES","PREVIEW","REORDER","IMAGES","MORE"],"sources":["../src/constants.js"],"sourcesContent":["const PLUGIN_NAME = 'media-ui';\nconst ONE_FILE_AS_LIMIT = 1;\nconst AVAILABLE_FILTER_TYPES = {\n all: {\n type: 'all'\n },\n images: {\n type: 'image'\n },\n videos: {\n type: 'video'\n },\n documents: {\n type: 'text'\n }\n};\n\nconst MEDIA_LIST_ITEM_SIZE = 97;\nconst MEDIA_OVER_SCAN_COUNT = 0;\n\nconst ICON_SIZE = {\n WIDTH: '25px',\n HEIGHT: '25px'\n};\n\nconst ICON_COLOR = {\n STROKE: '#63779C',\n FILL: '#63779C'\n};\n\nconst STORE_KEY = 'storeKey';\nconst NAME = 'name';\n\nconst ALL = 'all';\nconst INVALID_STORE_KEY_VALUES = [null, '', 'Please Choose...', 'Any'];\nconst PREVIEW = 'Preview';\nconst REORDER = 'Reorder';\nconst IMAGES = 'Images';\nconst MORE = 'more ...';\n\nexport {\n ALL,\n AVAILABLE_FILTER_TYPES,\n IMAGES,\n INVALID_STORE_KEY_VALUES,\n MEDIA_LIST_ITEM_SIZE,\n MEDIA_OVER_SCAN_COUNT,\n MORE,\n NAME,\n ONE_FILE_AS_LIMIT,\n PLUGIN_NAME,\n PREVIEW,\n REORDER,\n STORE_KEY,\n ICON_SIZE,\n ICON_COLOR\n};\n"],"mappings":";;;;;;AAAA,MAAMA,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,UAAU;AAC9B,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,CAAC;AAC3B,MAAMC,sBAAsB,GAAAF,OAAA,CAAAE,sBAAA,GAAG;EAC7BC,GAAG,EAAE;IACHC,IAAI,EAAE;EACR,CAAC;EACDC,MAAM,EAAE;IACND,IAAI,EAAE;EACR,CAAC;EACDE,MAAM,EAAE;IACNF,IAAI,EAAE;EACR,CAAC;EACDG,SAAS,EAAE;IACTH,IAAI,EAAE;EACR;AACF,CAAC;AAED,MAAMI,oBAAoB,GAAAR,OAAA,CAAAQ,oBAAA,GAAG,EAAE;AAC/B,MAAMC,qBAAqB,GAAAT,OAAA,CAAAS,qBAAA,GAAG,CAAC;AAE/B,MAAMC,SAAS,GAAAV,OAAA,CAAAU,SAAA,GAAG;EAChBC,KAAK,EAAE,MAAM;EACbC,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,UAAU,GAAAb,OAAA,CAAAa,UAAA,GAAG;EACjBC,MAAM,EAAE,SAAS;EACjBC,IAAI,EAAE;AACR,CAAC;AAED,MAAMC,SAAS,GAAAhB,OAAA,CAAAgB,SAAA,GAAG,UAAU;AAC5B,MAAMC,IAAI,GAAAjB,OAAA,CAAAiB,IAAA,GAAG,MAAM;AAEnB,MAAMC,GAAG,GAAAlB,OAAA,CAAAkB,GAAA,GAAG,KAAK;AACjB,MAAMC,wBAAwB,GAAAnB,OAAA,CAAAmB,wBAAA,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,CAAC;AACtE,MAAMC,OAAO,GAAApB,OAAA,CAAAoB,OAAA,GAAG,SAAS;AACzB,MAAMC,OAAO,GAAArB,OAAA,CAAAqB,OAAA,GAAG,SAAS;AACzB,MAAMC,MAAM,GAAAtB,OAAA,CAAAsB,MAAA,GAAG,QAAQ;AACvB,MAAMC,IAAI,GAAAvB,OAAA,CAAAuB,IAAA,GAAG,UAAU","ignoreList":[]}
1
+ {"version":3,"file":"constants.js","names":["PLUGIN_NAME","exports","ONE_FILE_AS_LIMIT","AVAILABLE_FILTER_TYPES","all","type","images","videos","documents","MEDIA_LIST_ITEM_SIZE","MEDIA_OVER_SCAN_COUNT","ICON_SIZE","WIDTH","HEIGHT","ICON_COLOR","STROKE","FILL","STORE_KEY","NAME","ALL","INVALID_STORE_KEY_VALUES","PREVIEW","REORDER","IMAGES","MORE","FILE_DEFAULT_PROPS"],"sources":["../src/constants.js"],"sourcesContent":["const PLUGIN_NAME = 'media-ui';\nconst ONE_FILE_AS_LIMIT = 1;\nconst AVAILABLE_FILTER_TYPES = {\n all: {\n type: 'all'\n },\n images: {\n type: 'image'\n },\n videos: {\n type: 'video'\n },\n documents: {\n type: 'text'\n }\n};\n\nconst MEDIA_LIST_ITEM_SIZE = 97;\nconst MEDIA_OVER_SCAN_COUNT = 3;\n\nconst ICON_SIZE = {\n WIDTH: '25px',\n HEIGHT: '25px'\n};\n\nconst ICON_COLOR = {\n STROKE: '#63779C',\n FILL: '#63779C'\n};\n\nconst STORE_KEY = 'storeKey';\nconst NAME = 'name';\n\nconst ALL = 'all';\nconst INVALID_STORE_KEY_VALUES = [null, '', 'Please Choose...', 'Any'];\nconst PREVIEW = 'Preview';\nconst REORDER = 'Reorder';\nconst IMAGES = 'Images';\nconst MORE = 'more ...';\n\nconst FILE_DEFAULT_PROPS = [\n 'id',\n 'location',\n 'mimetype',\n 'url',\n 'data',\n 'name',\n 'storeKey',\n 'filename',\n 'type',\n 'updated'\n];\n\nexport {\n ALL,\n AVAILABLE_FILTER_TYPES,\n IMAGES,\n INVALID_STORE_KEY_VALUES,\n MEDIA_LIST_ITEM_SIZE,\n MEDIA_OVER_SCAN_COUNT,\n MORE,\n NAME,\n ONE_FILE_AS_LIMIT,\n PLUGIN_NAME,\n PREVIEW,\n REORDER,\n STORE_KEY,\n ICON_SIZE,\n ICON_COLOR,\n FILE_DEFAULT_PROPS\n};\n"],"mappings":";;;;;;AAAA,MAAMA,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,UAAU;AAC9B,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,CAAC;AAC3B,MAAMC,sBAAsB,GAAAF,OAAA,CAAAE,sBAAA,GAAG;EAC7BC,GAAG,EAAE;IACHC,IAAI,EAAE;EACR,CAAC;EACDC,MAAM,EAAE;IACND,IAAI,EAAE;EACR,CAAC;EACDE,MAAM,EAAE;IACNF,IAAI,EAAE;EACR,CAAC;EACDG,SAAS,EAAE;IACTH,IAAI,EAAE;EACR;AACF,CAAC;AAED,MAAMI,oBAAoB,GAAAR,OAAA,CAAAQ,oBAAA,GAAG,EAAE;AAC/B,MAAMC,qBAAqB,GAAAT,OAAA,CAAAS,qBAAA,GAAG,CAAC;AAE/B,MAAMC,SAAS,GAAAV,OAAA,CAAAU,SAAA,GAAG;EAChBC,KAAK,EAAE,MAAM;EACbC,MAAM,EAAE;AACV,CAAC;AAED,MAAMC,UAAU,GAAAb,OAAA,CAAAa,UAAA,GAAG;EACjBC,MAAM,EAAE,SAAS;EACjBC,IAAI,EAAE;AACR,CAAC;AAED,MAAMC,SAAS,GAAAhB,OAAA,CAAAgB,SAAA,GAAG,UAAU;AAC5B,MAAMC,IAAI,GAAAjB,OAAA,CAAAiB,IAAA,GAAG,MAAM;AAEnB,MAAMC,GAAG,GAAAlB,OAAA,CAAAkB,GAAA,GAAG,KAAK;AACjB,MAAMC,wBAAwB,GAAAnB,OAAA,CAAAmB,wBAAA,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,CAAC;AACtE,MAAMC,OAAO,GAAApB,OAAA,CAAAoB,OAAA,GAAG,SAAS;AACzB,MAAMC,OAAO,GAAArB,OAAA,CAAAqB,OAAA,GAAG,SAAS;AACzB,MAAMC,MAAM,GAAAtB,OAAA,CAAAsB,MAAA,GAAG,QAAQ;AACvB,MAAMC,IAAI,GAAAvB,OAAA,CAAAuB,IAAA,GAAG,UAAU;AAEvB,MAAMC,kBAAkB,GAAAxB,OAAA,CAAAwB,kBAAA,GAAG,CACzB,IAAI,EACJ,UAAU,EACV,UAAU,EACV,KAAK,EACL,MAAM,EACN,MAAM,EACN,UAAU,EACV,UAAU,EACV,MAAM,EACN,SAAS,CACV","ignoreList":[]}
@@ -1,15 +1,14 @@
1
- import React, { useState } from 'react';
2
- import More from '@blaze-react/more';
3
- import Button from '@blaze-react/button';
1
+ import React, { useState, useCallback } from 'react';
4
2
  import { DeleteAction } from '@blaze-cms/admin';
5
3
  import PropTypes from 'prop-types';
6
4
  import { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';
7
- import { useMutation, useApolloClient } from '@apollo/client';
5
+ import { useMutation, useApolloClient, useQuery } from '@apollo/client';
8
6
  import classnames from 'classnames';
9
7
  import { useToasts } from '@blaze-react/toaster';
10
8
  import Modal from '@blaze-react/modal';
11
9
  import { createPortal } from 'react-dom';
12
10
  import { Link } from 'react-router-dom';
11
+ import { DeleteIcon, EditIcon } from '@blaze-cms/plugin-page-builder-ui';
13
12
  import EditMediaFile from '../EditMediaFile';
14
13
  import bustUrl from '../../utils/bustUrl';
15
14
  const CardMedia = ({
@@ -38,6 +37,16 @@ const CardMedia = ({
38
37
  const [deleteFile] = useMutation(getMutation('DELETE_FILE_BY_ID'));
39
38
  const [type, extension] = mimetype.split('/');
40
39
  const client = useApolloClient();
40
+ const {
41
+ data: {
42
+ getEntitySchemas: [schemaData] = []
43
+ } = {},
44
+ loading: schemaLoading
45
+ } = useQuery(getQuery('GET_ENTITY_SCHEMA'), {
46
+ variables: {
47
+ identifier: 'file'
48
+ }
49
+ });
41
50
  const deleteFileById = async () => {
42
51
  setDisplayDeleteModal(false);
43
52
  try {
@@ -62,24 +71,33 @@ const CardMedia = ({
62
71
  });
63
72
  }
64
73
  };
65
- const handleClick = () => {
74
+ const handleRowClick = () => onSelected({
75
+ id,
76
+ url,
77
+ name,
78
+ data
79
+ });
80
+ const handleCheckboxToggle = useCallback(e => {
81
+ e.preventDefault();
82
+ e.stopPropagation();
66
83
  onSelected({
67
84
  id,
68
85
  url,
69
86
  name,
70
87
  data
71
88
  });
89
+ }, [id, url, name, data, onSelected]);
90
+ const handleKeyDown = e => {
91
+ if (e.key === ' ' || e.key === 'Enter') {
92
+ e.preventDefault();
93
+ handleRowClick();
94
+ }
72
95
  };
73
- const cardMediaClassNames = classnames('card card--media-list', {
74
- 'card--media-list--selected': selected,
75
- [`card--media-${displayLayout}`]: displayLayout
96
+ const cardMediaClassNames = classnames('card card--media-list card--media-list-row', `card--media-${displayLayout}`, {
97
+ 'card--media-list--selected': selected
76
98
  });
77
- const handleCloseModal = () => {
78
- setDisplayEditModal(false);
79
- };
80
- const handleSaveButtonStatus = state => {
81
- setEnableSaveButton(state);
82
- };
99
+ const handleCloseModal = () => setDisplayEditModal(false);
100
+ const handleSaveButtonStatus = state => setEnableSaveButton(state);
83
101
  const modalActions = [{
84
102
  textButton: 'Cancel',
85
103
  callback: handleCloseModal,
@@ -89,9 +107,8 @@ const CardMedia = ({
89
107
  callback: () => handleFormSave(),
90
108
  modifiers: enableSaveButton ? [] : ['disabled']
91
109
  }];
92
- const handleFileChange = file => {
93
- setFileData(file);
94
- };
110
+ const handleFileChange = file => setFileData(file);
111
+ const handleStopPropagation = e => e.stopPropagation();
95
112
  const handleFormSave = async () => {
96
113
  try {
97
114
  const {
@@ -101,7 +118,7 @@ const CardMedia = ({
101
118
  } = await client.mutate({
102
119
  mutation: getMutation('UPDATE_FILE'),
103
120
  variables: {
104
- input: fileData
121
+ input: fileData.formData
105
122
  },
106
123
  update(cache, {
107
124
  data: {
@@ -137,6 +154,7 @@ const CardMedia = ({
137
154
  handleCloseModal();
138
155
  setEnableSaveButton(false);
139
156
  };
157
+ if (schemaLoading) return null;
140
158
  return /*#__PURE__*/React.createElement(React.Fragment, null, displayEditModal && createPortal(/*#__PURE__*/React.createElement(Modal, {
141
159
  title: "Edit",
142
160
  actions: modalActions,
@@ -146,16 +164,28 @@ const CardMedia = ({
146
164
  fileId: id,
147
165
  handleSaveButtonStatus: handleSaveButtonStatus,
148
166
  handleFormSave: handleFormSave,
149
- enableSaveButton: enableSaveButton
150
- })), modalTargetRef.current), /*#__PURE__*/React.createElement("div", {
151
- className: cardMediaClassNames,
152
- role: "button",
153
- onClick: handleClick
154
- }, displayDeleteModal && createPortal(/*#__PURE__*/React.createElement(DeleteAction, {
167
+ enableSaveButton: enableSaveButton,
168
+ schemaData: schemaData
169
+ })), modalTargetRef.current), displayDeleteModal && createPortal(/*#__PURE__*/React.createElement(DeleteAction, {
155
170
  onClose: () => setDisplayDeleteModal(false),
156
171
  deleteAction: () => deleteFileById(),
157
172
  itemName: name
158
- }), modalTargetRef.current), type === 'image' ? /*#__PURE__*/React.createElement("div", {
173
+ }), modalTargetRef.current), /*#__PURE__*/React.createElement("div", {
174
+ className: cardMediaClassNames,
175
+ role: "option",
176
+ "aria-selected": selected,
177
+ tabIndex: 0,
178
+ onClick: handleRowClick,
179
+ onKeyDown: handleKeyDown
180
+ }, openEditInModal && /*#__PURE__*/React.createElement("div", {
181
+ className: "card__select"
182
+ }, /*#__PURE__*/React.createElement("input", {
183
+ type: "checkbox",
184
+ "aria-label": `Select ${name}`,
185
+ checked: !!selected,
186
+ onChange: handleCheckboxToggle,
187
+ onClick: handleStopPropagation
188
+ })), type === 'image' ? /*#__PURE__*/React.createElement("div", {
159
189
  className: `card__image card__image--media-${displayLayout}`
160
190
  }, /*#__PURE__*/React.createElement("img", {
161
191
  src: bustUrl(url, updated),
@@ -166,7 +196,8 @@ const CardMedia = ({
166
196
  xmlns: "http://www.w3.org/2000/svg",
167
197
  width: "100",
168
198
  height: "100",
169
- viewBox: "0 0 8 8"
199
+ viewBox: "0 0 8 8",
200
+ "aria-hidden": "true"
170
201
  }, /*#__PURE__*/React.createElement("path", {
171
202
  d: "M0 0v8h7v-4h-4v-4h-3zm4 0v3h3l-3-3zm-3 2h1v1h-1v-1zm0 2h1v1h-1v-1zm0 2h4v1h-4v-1z"
172
203
  }))), /*#__PURE__*/React.createElement("footer", {
@@ -175,36 +206,48 @@ const CardMedia = ({
175
206
  className: `card__details card__details--media-${displayLayout}`
176
207
  }, /*#__PURE__*/React.createElement("div", {
177
208
  className: `card__title card__title--media-${displayLayout}`
178
- }, /*#__PURE__*/React.createElement("h2", null, name)), /*#__PURE__*/React.createElement("p", null, /*#__PURE__*/React.createElement("span", null, "format: ", extension))), /*#__PURE__*/React.createElement("div", {
179
- className: `card__menu card__menu--${displayLayout}`
180
- }, /*#__PURE__*/React.createElement("div", {
181
- className: "more-menu__wrapper more-menu__wrapper--card"
182
- }, /*#__PURE__*/React.createElement(More, {
183
- displayBg: true
184
- }, /*#__PURE__*/React.createElement(More.Avatar, {
185
- isMoreMenu: true
186
- }, /*#__PURE__*/React.createElement("span", {
187
- className: "material-icons"
188
- }, "more_vert")), /*#__PURE__*/React.createElement(More.Content, {
189
- isMoreMenu: true
190
- }, openEditInModal ? /*#__PURE__*/React.createElement(Button, {
191
- onClick: event => {
192
- event.preventDefault();
193
- event.stopPropagation();
209
+ }, /*#__PURE__*/React.createElement("h2", {
210
+ className: "card__file-name"
211
+ }, name)), /*#__PURE__*/React.createElement("p", {
212
+ className: "card__meta"
213
+ }, /*#__PURE__*/React.createElement("span", null, "Format: ", extension))), /*#__PURE__*/React.createElement("div", {
214
+ className: `card__menu card__menu--icons card__menu--${displayLayout}`
215
+ }, openEditInModal ? /*#__PURE__*/React.createElement("button", {
216
+ type: "button",
217
+ className: "card__icon-btn",
218
+ title: "Edit",
219
+ "aria-label": "Edit",
220
+ onClick: e => {
221
+ e.preventDefault();
222
+ e.stopPropagation();
194
223
  setDisplayEditModal(true);
195
- },
196
- className: "more-menu__link"
197
- }, "Edit") : /*#__PURE__*/React.createElement(Link, {
224
+ }
225
+ }, /*#__PURE__*/React.createElement(EditIcon, {
226
+ width: "20px",
227
+ height: "20px"
228
+ })) : /*#__PURE__*/React.createElement(Link, {
198
229
  to: `/media/edit/${id}`,
199
- className: "more-menu__link"
200
- }, "Edit"), /*#__PURE__*/React.createElement(Button, {
201
- onClick: event => {
202
- event.preventDefault();
203
- event.stopPropagation();
230
+ className: "card__icon-btn",
231
+ title: "Edit",
232
+ "aria-label": "Edit",
233
+ onClick: e => e.stopPropagation()
234
+ }, /*#__PURE__*/React.createElement(EditIcon, {
235
+ width: "20px",
236
+ height: "20px"
237
+ })), /*#__PURE__*/React.createElement("button", {
238
+ type: "button",
239
+ className: "card__icon-btn",
240
+ title: "Delete",
241
+ "aria-label": "Delete",
242
+ onClick: e => {
243
+ e.preventDefault();
244
+ e.stopPropagation();
204
245
  setDisplayDeleteModal(true);
205
- },
206
- className: "more-menu__link"
207
- }, "Delete"))))))));
246
+ }
247
+ }, /*#__PURE__*/React.createElement(DeleteIcon, {
248
+ width: "18px",
249
+ height: "18px"
250
+ }))))));
208
251
  };
209
252
  CardMedia.propTypes = {
210
253
  name: PropTypes.string.isRequired,
@@ -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","bustUrl","CardMedia","onSelected","name","url","mimetype","id","selected","displayLayout","data","updated","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","oneOfType","number","func","bool","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';\nimport bustUrl from '../../utils/bustUrl';\n\nconst CardMedia = ({\n onSelected,\n name,\n url,\n mimetype,\n id,\n selected,\n displayLayout,\n data,\n updated,\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={bustUrl(url, updated)} 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 updated: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\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 updated: null,\n openEditInModal: false\n};\n\nexport default CardMedia;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"CardMedia.js","names":["React","useState","useCallback","DeleteAction","PropTypes","getQuery","getMutation","useMutation","useApolloClient","useQuery","classnames","useToasts","Modal","createPortal","Link","DeleteIcon","EditIcon","EditMediaFile","bustUrl","CardMedia","onSelected","name","url","mimetype","id","selected","displayLayout","data","updated","modalTargetRef","updateFile","removeFile","index","openEditInModal","displayDeleteModal","setDisplayDeleteModal","displayEditModal","setDisplayEditModal","enableSaveButton","setEnableSaveButton","fileData","setFileData","addToast","deleteFile","type","extension","split","client","getEntitySchemas","schemaData","loading","schemaLoading","variables","identifier","deleteFileById","input","appearance","autoDismiss","error","message","handleRowClick","handleCheckboxToggle","e","preventDefault","stopPropagation","handleKeyDown","key","cardMediaClassNames","handleCloseModal","handleSaveButtonStatus","state","modalActions","textButton","callback","modifiers","handleFormSave","handleFileChange","file","handleStopPropagation","updatedFile","mutate","mutation","formData","update","cache","fileUpdated","writeQuery","query","result","console","createElement","Fragment","title","actions","onClose","onChange","fileId","current","deleteAction","itemName","className","role","tabIndex","onClick","onKeyDown","checked","src","alt","xmlns","width","height","viewBox","d","to","propTypes","string","isRequired","object","oneOfType","number","func","bool","defaultProps"],"sources":["../../../src/components/CardMedia/CardMedia.js"],"sourcesContent":["import React, { useState, useCallback } from 'react';\nimport { DeleteAction } from '@blaze-cms/admin';\nimport PropTypes from 'prop-types';\nimport { getQuery, getMutation } from '@blaze-cms/admin-ui-utils';\nimport { useMutation, useApolloClient, useQuery } 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 { DeleteIcon, EditIcon } from '@blaze-cms/plugin-page-builder-ui';\nimport EditMediaFile from '../EditMediaFile';\nimport bustUrl from '../../utils/bustUrl';\n\nconst CardMedia = ({\n onSelected,\n name,\n url,\n mimetype,\n id,\n selected,\n displayLayout,\n data,\n updated,\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 { data: { getEntitySchemas: [schemaData] = [] } = {}, loading: schemaLoading } = useQuery(\n getQuery('GET_ENTITY_SCHEMA'),\n {\n variables: { identifier: 'file' }\n }\n );\n\n const deleteFileById = async () => {\n setDisplayDeleteModal(false);\n try {\n await deleteFile({ variables: { input: { id } } });\n removeFile({ index });\n addToast(`File: ${name} has been deleted`, { appearance: 'success', autoDismiss: true });\n } catch (error) {\n addToast(error.message, { appearance: 'error', autoDismiss: true });\n }\n };\n\n const handleRowClick = () => onSelected({ id, url, name, data });\n\n const handleCheckboxToggle = useCallback(\n e => {\n e.preventDefault();\n e.stopPropagation();\n onSelected({ id, url, name, data });\n },\n [id, url, name, data, onSelected]\n );\n\n const handleKeyDown = e => {\n if (e.key === ' ' || e.key === 'Enter') {\n e.preventDefault();\n handleRowClick();\n }\n };\n\n const cardMediaClassNames = classnames(\n 'card card--media-list card--media-list-row',\n `card--media-${displayLayout}`,\n { 'card--media-list--selected': selected }\n );\n\n const handleCloseModal = () => setDisplayEditModal(false);\n const handleSaveButtonStatus = state => setEnableSaveButton(state);\n\n const modalActions = [\n { textButton: 'Cancel', callback: handleCloseModal, modifiers: ['cancel'] },\n {\n textButton: 'Apply',\n callback: () => handleFormSave(),\n modifiers: enableSaveButton ? [] : ['disabled']\n }\n ];\n\n const handleFileChange = file => setFileData(file);\n\n const handleStopPropagation = e => e.stopPropagation();\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.formData },\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 if (schemaLoading) return null;\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 schemaData={schemaData}\n />\n </Modal>,\n modalTargetRef.current\n )}\n\n {displayDeleteModal &&\n createPortal(\n <DeleteAction\n onClose={() => setDisplayDeleteModal(false)}\n deleteAction={() => deleteFileById()}\n itemName={name}\n />,\n modalTargetRef.current\n )}\n\n <div\n className={cardMediaClassNames}\n role=\"option\"\n aria-selected={selected}\n tabIndex={0}\n onClick={handleRowClick}\n onKeyDown={handleKeyDown}>\n {openEditInModal && (\n <div className=\"card__select\">\n <input\n type=\"checkbox\"\n aria-label={`Select ${name}`}\n checked={!!selected}\n onChange={handleCheckboxToggle}\n onClick={handleStopPropagation}\n />\n </div>\n )}\n {type === 'image' ? (\n <div className={`card__image card__image--media-${displayLayout}`}>\n <img src={bustUrl(url, updated)} alt={name} />\n </div>\n ) : (\n <div className=\"card__image card__image--media-list-document\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"100\"\n height=\"100\"\n viewBox=\"0 0 8 8\"\n aria-hidden=\"true\">\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 className=\"card__file-name\">{name}</h2>\n </div>\n <p className=\"card__meta\">\n <span>Format: {extension}</span>\n </p>\n </div>\n\n <div className={`card__menu card__menu--icons card__menu--${displayLayout}`}>\n {openEditInModal ? (\n <button\n type=\"button\"\n className=\"card__icon-btn\"\n title=\"Edit\"\n aria-label=\"Edit\"\n onClick={e => {\n e.preventDefault();\n e.stopPropagation();\n setDisplayEditModal(true);\n }}>\n <EditIcon width=\"20px\" height=\"20px\" />\n </button>\n ) : (\n <Link\n to={`/media/edit/${id}`}\n className=\"card__icon-btn\"\n title=\"Edit\"\n aria-label=\"Edit\"\n onClick={e => e.stopPropagation()}>\n <EditIcon width=\"20px\" height=\"20px\" />\n </Link>\n )}\n\n <button\n type=\"button\"\n className=\"card__icon-btn\"\n title=\"Delete\"\n aria-label=\"Delete\"\n onClick={e => {\n e.preventDefault();\n e.stopPropagation();\n setDisplayDeleteModal(true);\n }}>\n <DeleteIcon width=\"18px\" height=\"18px\" />\n </button>\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 updated: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\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 updated: null,\n openEditInModal: false\n};\n\nexport default CardMedia;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,WAAW,QAAQ,OAAO;AACpD,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,QAAQ,EAAEC,WAAW,QAAQ,2BAA2B;AACjE,SAASC,WAAW,EAAEC,eAAe,EAAEC,QAAQ,QAAQ,gBAAgB;AACvE,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,SAAS,QAAQ,sBAAsB;AAChD,OAAOC,KAAK,MAAM,oBAAoB;AACtC,SAASC,YAAY,QAAQ,WAAW;AACxC,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,UAAU,EAAEC,QAAQ,QAAQ,mCAAmC;AACxE,OAAOC,aAAa,MAAM,kBAAkB;AAC5C,OAAOC,OAAO,MAAM,qBAAqB;AAEzC,MAAMC,SAAS,GAAGA,CAAC;EACjBC,UAAU;EACVC,IAAI;EACJC,GAAG;EACHC,QAAQ;EACRC,EAAE;EACFC,QAAQ;EACRC,aAAa;EACbC,IAAI;EACJC,OAAO;EACPC,cAAc;EACdC,UAAU;EACVC,UAAU;EACVC,KAAK;EACLC;AACF,CAAC,KAAK;EACJ,MAAM,CAACC,kBAAkB,EAAEC,qBAAqB,CAAC,GAAGlC,QAAQ,CAAC,KAAK,CAAC;EACnE,MAAM,CAACmC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGpC,QAAQ,CAAC,KAAK,CAAC;EAC/D,MAAM,CAACqC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGtC,QAAQ,CAAC,KAAK,CAAC;EAC/D,MAAM,CAACuC,QAAQ,EAAEC,WAAW,CAAC,GAAGxC,QAAQ,CAAC,IAAI,CAAC;EAC9C,MAAM;IAAEyC;EAAS,CAAC,GAAG/B,SAAS,CAAC,CAAC;EAChC,MAAM,CAACgC,UAAU,CAAC,GAAGpC,WAAW,CAACD,WAAW,CAAC,mBAAmB,CAAC,CAAC;EAClE,MAAM,CAACsC,IAAI,EAAEC,SAAS,CAAC,GAAGtB,QAAQ,CAACuB,KAAK,CAAC,GAAG,CAAC;EAC7C,MAAMC,MAAM,GAAGvC,eAAe,CAAC,CAAC;EAEhC,MAAM;IAAEmB,IAAI,EAAE;MAAEqB,gBAAgB,EAAE,CAACC,UAAU,CAAC,GAAG;IAAG,CAAC,GAAG,CAAC,CAAC;IAAEC,OAAO,EAAEC;EAAc,CAAC,GAAG1C,QAAQ,CAC7FJ,QAAQ,CAAC,mBAAmB,CAAC,EAC7B;IACE+C,SAAS,EAAE;MAAEC,UAAU,EAAE;IAAO;EAClC,CACF,CAAC;EAED,MAAMC,cAAc,GAAG,MAAAA,CAAA,KAAY;IACjCnB,qBAAqB,CAAC,KAAK,CAAC;IAC5B,IAAI;MACF,MAAMQ,UAAU,CAAC;QAAES,SAAS,EAAE;UAAEG,KAAK,EAAE;YAAE/B;UAAG;QAAE;MAAE,CAAC,CAAC;MAClDO,UAAU,CAAC;QAAEC;MAAM,CAAC,CAAC;MACrBU,QAAQ,CAAC,SAASrB,IAAI,mBAAmB,EAAE;QAAEmC,UAAU,EAAE,SAAS;QAAEC,WAAW,EAAE;MAAK,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdhB,QAAQ,CAACgB,KAAK,CAACC,OAAO,EAAE;QAAEH,UAAU,EAAE,OAAO;QAAEC,WAAW,EAAE;MAAK,CAAC,CAAC;IACrE;EACF,CAAC;EAED,MAAMG,cAAc,GAAGA,CAAA,KAAMxC,UAAU,CAAC;IAAEI,EAAE;IAAEF,GAAG;IAAED,IAAI;IAAEM;EAAK,CAAC,CAAC;EAEhE,MAAMkC,oBAAoB,GAAG3D,WAAW,CACtC4D,CAAC,IAAI;IACHA,CAAC,CAACC,cAAc,CAAC,CAAC;IAClBD,CAAC,CAACE,eAAe,CAAC,CAAC;IACnB5C,UAAU,CAAC;MAAEI,EAAE;MAAEF,GAAG;MAAED,IAAI;MAAEM;IAAK,CAAC,CAAC;EACrC,CAAC,EACD,CAACH,EAAE,EAAEF,GAAG,EAAED,IAAI,EAAEM,IAAI,EAAEP,UAAU,CAClC,CAAC;EAED,MAAM6C,aAAa,GAAGH,CAAC,IAAI;IACzB,IAAIA,CAAC,CAACI,GAAG,KAAK,GAAG,IAAIJ,CAAC,CAACI,GAAG,KAAK,OAAO,EAAE;MACtCJ,CAAC,CAACC,cAAc,CAAC,CAAC;MAClBH,cAAc,CAAC,CAAC;IAClB;EACF,CAAC;EAED,MAAMO,mBAAmB,GAAGzD,UAAU,CACpC,4CAA4C,EAC5C,eAAegB,aAAa,EAAE,EAC9B;IAAE,4BAA4B,EAAED;EAAS,CAC3C,CAAC;EAED,MAAM2C,gBAAgB,GAAGA,CAAA,KAAM/B,mBAAmB,CAAC,KAAK,CAAC;EACzD,MAAMgC,sBAAsB,GAAGC,KAAK,IAAI/B,mBAAmB,CAAC+B,KAAK,CAAC;EAElE,MAAMC,YAAY,GAAG,CACnB;IAAEC,UAAU,EAAE,QAAQ;IAAEC,QAAQ,EAAEL,gBAAgB;IAAEM,SAAS,EAAE,CAAC,QAAQ;EAAE,CAAC,EAC3E;IACEF,UAAU,EAAE,OAAO;IACnBC,QAAQ,EAAEA,CAAA,KAAME,cAAc,CAAC,CAAC;IAChCD,SAAS,EAAEpC,gBAAgB,GAAG,EAAE,GAAG,CAAC,UAAU;EAChD,CAAC,CACF;EAED,MAAMsC,gBAAgB,GAAGC,IAAI,IAAIpC,WAAW,CAACoC,IAAI,CAAC;EAElD,MAAMC,qBAAqB,GAAGhB,CAAC,IAAIA,CAAC,CAACE,eAAe,CAAC,CAAC;EAEtD,MAAMW,cAAc,GAAG,MAAAA,CAAA,KAAY;IACjC,IAAI;MACF,MAAM;QACJhD,IAAI,EAAE;UAAEG,UAAU,EAAEiD;QAAY;MAClC,CAAC,GAAG,MAAMhC,MAAM,CAACiC,MAAM,CAAC;QACtBC,QAAQ,EAAE3E,WAAW,CAAC,aAAa,CAAC;QACpC8C,SAAS,EAAE;UAAEG,KAAK,EAAEf,QAAQ,CAAC0C;QAAS,CAAC;QACvCC,MAAMA,CAACC,KAAK,EAAE;UAAEzD,IAAI,EAAE;YAAEG,UAAU,EAAEuD;UAAY;QAAE,CAAC,EAAE;UACnDD,KAAK,CAACE,UAAU,CAAC;YACfC,KAAK,EAAElF,QAAQ,CAAC,gBAAgB,CAAC;YACjC+C,SAAS,EAAE;cAAE5B;YAAG,CAAC;YACjBG,IAAI,EAAE;cAAEkD,IAAI,EAAEQ,WAAW,CAACG;YAAO;UACnC,CAAC,CAAC;QACJ;MACF,CAAC,CAAC;MAEF1D,UAAU,CAAC;QAAE+C,IAAI,EAAEE,WAAW,CAACS,MAAM;QAAExD;MAAM,CAAC,CAAC;MAC/CU,QAAQ,CAAC,SAASF,QAAQ,CAACnB,IAAI,mBAAmB,EAAE;QAClDmC,UAAU,EAAE,SAAS;QACrBC,WAAW,EAAE;MACf,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOK,CAAC,EAAE;MACVpB,QAAQ,CAAC,SAASF,QAAQ,CAACnB,IAAI,uBAAuB,EAAE;QACtDmC,UAAU,EAAE,OAAO;QACnBC,WAAW,EAAE;MACf,CAAC,CAAC;MACFgC,OAAO,CAAC/B,KAAK,CAACI,CAAC,CAAC,CAAC,CAAC;IACpB;IACAM,gBAAgB,CAAC,CAAC;IAClB7B,mBAAmB,CAAC,KAAK,CAAC;EAC5B,CAAC;EAED,IAAIY,aAAa,EAAE,OAAO,IAAI;EAE9B,oBACEnD,KAAA,CAAA0F,aAAA,CAAA1F,KAAA,CAAA2F,QAAA,QACGvD,gBAAgB,IACfvB,YAAY,cACVb,KAAA,CAAA0F,aAAA,CAAC9E,KAAK;IAACgF,KAAK,EAAC,MAAM;IAACC,OAAO,EAAEtB,YAAa;IAACuB,OAAO,EAAE1B;EAAiB,gBACnEpE,KAAA,CAAA0F,aAAA,CAACzE,aAAa;IACZ8E,QAAQ,EAAEnB,gBAAiB;IAC3BoB,MAAM,EAAExE,EAAG;IACX6C,sBAAsB,EAAEA,sBAAuB;IAC/CM,cAAc,EAAEA,cAAe;IAC/BrC,gBAAgB,EAAEA,gBAAiB;IACnCW,UAAU,EAAEA;EAAW,CACxB,CACI,CAAC,EACRpB,cAAc,CAACoE,OACjB,CAAC,EAEF/D,kBAAkB,IACjBrB,YAAY,cACVb,KAAA,CAAA0F,aAAA,CAACvF,YAAY;IACX2F,OAAO,EAAEA,CAAA,KAAM3D,qBAAqB,CAAC,KAAK,CAAE;IAC5C+D,YAAY,EAAEA,CAAA,KAAM5C,cAAc,CAAC,CAAE;IACrC6C,QAAQ,EAAE9E;EAAK,CAChB,CAAC,EACFQ,cAAc,CAACoE,OACjB,CAAC,eAEHjG,KAAA,CAAA0F,aAAA;IACEU,SAAS,EAAEjC,mBAAoB;IAC/BkC,IAAI,EAAC,QAAQ;IACb,iBAAe5E,QAAS;IACxB6E,QAAQ,EAAE,CAAE;IACZC,OAAO,EAAE3C,cAAe;IACxB4C,SAAS,EAAEvC;EAAc,GACxBhC,eAAe,iBACdjC,KAAA,CAAA0F,aAAA;IAAKU,SAAS,EAAC;EAAc,gBAC3BpG,KAAA,CAAA0F,aAAA;IACE9C,IAAI,EAAC,UAAU;IACf,cAAY,UAAUvB,IAAI,EAAG;IAC7BoF,OAAO,EAAE,CAAC,CAAChF,QAAS;IACpBsE,QAAQ,EAAElC,oBAAqB;IAC/B0C,OAAO,EAAEzB;EAAsB,CAChC,CACE,CACN,EACAlC,IAAI,KAAK,OAAO,gBACf5C,KAAA,CAAA0F,aAAA;IAAKU,SAAS,EAAE,kCAAkC1E,aAAa;EAAG,gBAChE1B,KAAA,CAAA0F,aAAA;IAAKgB,GAAG,EAAExF,OAAO,CAACI,GAAG,EAAEM,OAAO,CAAE;IAAC+E,GAAG,EAAEtF;EAAK,CAAE,CAC1C,CAAC,gBAENrB,KAAA,CAAA0F,aAAA;IAAKU,SAAS,EAAC;EAA8C,gBAC3DpG,KAAA,CAAA0F,aAAA;IACEkB,KAAK,EAAC,4BAA4B;IAClCC,KAAK,EAAC,KAAK;IACXC,MAAM,EAAC,KAAK;IACZC,OAAO,EAAC,SAAS;IACjB,eAAY;EAAM,gBAClB/G,KAAA,CAAA0F,aAAA;IAAMsB,CAAC,EAAC;EAAmF,CAAE,CAC1F,CACF,CACN,eAEDhH,KAAA,CAAA0F,aAAA;IAAQU,SAAS,EAAE,oCAAoC1E,aAAa;EAAG,gBACrE1B,KAAA,CAAA0F,aAAA;IAAKU,SAAS,EAAE,sCAAsC1E,aAAa;EAAG,gBACpE1B,KAAA,CAAA0F,aAAA;IAAKU,SAAS,EAAE,kCAAkC1E,aAAa;EAAG,gBAChE1B,KAAA,CAAA0F,aAAA;IAAIU,SAAS,EAAC;EAAiB,GAAE/E,IAAS,CACvC,CAAC,eACNrB,KAAA,CAAA0F,aAAA;IAAGU,SAAS,EAAC;EAAY,gBACvBpG,KAAA,CAAA0F,aAAA,eAAM,UAAQ,EAAC7C,SAAgB,CAC9B,CACA,CAAC,eAEN7C,KAAA,CAAA0F,aAAA;IAAKU,SAAS,EAAE,4CAA4C1E,aAAa;EAAG,GACzEO,eAAe,gBACdjC,KAAA,CAAA0F,aAAA;IACE9C,IAAI,EAAC,QAAQ;IACbwD,SAAS,EAAC,gBAAgB;IAC1BR,KAAK,EAAC,MAAM;IACZ,cAAW,MAAM;IACjBW,OAAO,EAAEzC,CAAC,IAAI;MACZA,CAAC,CAACC,cAAc,CAAC,CAAC;MAClBD,CAAC,CAACE,eAAe,CAAC,CAAC;MACnB3B,mBAAmB,CAAC,IAAI,CAAC;IAC3B;EAAE,gBACFrC,KAAA,CAAA0F,aAAA,CAAC1E,QAAQ;IAAC6F,KAAK,EAAC,MAAM;IAACC,MAAM,EAAC;EAAM,CAAE,CAChC,CAAC,gBAET9G,KAAA,CAAA0F,aAAA,CAAC5E,IAAI;IACHmG,EAAE,EAAE,eAAezF,EAAE,EAAG;IACxB4E,SAAS,EAAC,gBAAgB;IAC1BR,KAAK,EAAC,MAAM;IACZ,cAAW,MAAM;IACjBW,OAAO,EAAEzC,CAAC,IAAIA,CAAC,CAACE,eAAe,CAAC;EAAE,gBAClChE,KAAA,CAAA0F,aAAA,CAAC1E,QAAQ;IAAC6F,KAAK,EAAC,MAAM;IAACC,MAAM,EAAC;EAAM,CAAE,CAClC,CACP,eAED9G,KAAA,CAAA0F,aAAA;IACE9C,IAAI,EAAC,QAAQ;IACbwD,SAAS,EAAC,gBAAgB;IAC1BR,KAAK,EAAC,QAAQ;IACd,cAAW,QAAQ;IACnBW,OAAO,EAAEzC,CAAC,IAAI;MACZA,CAAC,CAACC,cAAc,CAAC,CAAC;MAClBD,CAAC,CAACE,eAAe,CAAC,CAAC;MACnB7B,qBAAqB,CAAC,IAAI,CAAC;IAC7B;EAAE,gBACFnC,KAAA,CAAA0F,aAAA,CAAC3E,UAAU;IAAC8F,KAAK,EAAC,MAAM;IAACC,MAAM,EAAC;EAAM,CAAE,CAClC,CACL,CACC,CACL,CACL,CAAC;AAEP,CAAC;AAED3F,SAAS,CAAC+F,SAAS,GAAG;EACpB7F,IAAI,EAAEjB,SAAS,CAAC+G,MAAM,CAACC,UAAU;EACjC9F,GAAG,EAAElB,SAAS,CAAC+G,MAAM,CAACC,UAAU;EAChC5F,EAAE,EAAEpB,SAAS,CAAC+G,MAAM,CAACC,UAAU;EAC/B7F,QAAQ,EAAEnB,SAAS,CAAC+G,MAAM,CAACC,UAAU;EACrC1F,aAAa,EAAEtB,SAAS,CAAC+G,MAAM,CAACC,UAAU;EAC1CzF,IAAI,EAAEvB,SAAS,CAACiH,MAAM;EACtBzF,OAAO,EAAExB,SAAS,CAACkH,SAAS,CAAC,CAAClH,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACmH,MAAM,CAAC,CAAC;EAClEnG,UAAU,EAAEhB,SAAS,CAACoH,IAAI;EAC1B1F,UAAU,EAAE1B,SAAS,CAACoH,IAAI,CAACJ,UAAU;EACrCrF,UAAU,EAAE3B,SAAS,CAACoH,IAAI,CAACJ,UAAU;EACrC3F,QAAQ,EAAErB,SAAS,CAACqH,IAAI;EACxB5F,cAAc,EAAEzB,SAAS,CAACiH,MAAM,CAACD,UAAU;EAC3CpF,KAAK,EAAE5B,SAAS,CAACmH,MAAM,CAACH,UAAU;EAClCnF,eAAe,EAAE7B,SAAS,CAACqH;AAC7B,CAAC;AAEDtG,SAAS,CAACuG,YAAY,GAAG;EACvBtG,UAAU,EAAEA,CAAA,KAAM,CAAC,CAAC;EACpBK,QAAQ,EAAE,KAAK;EACfE,IAAI,EAAE,CAAC,CAAC;EACRC,OAAO,EAAE,IAAI;EACbK,eAAe,EAAE;AACnB,CAAC;AAED,eAAed,SAAS","ignoreList":[]}