UNPKG

decap-cms-core

Version:

Decap CMS core application, see decap-cms package for the main distribution.

161 lines (159 loc) 16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fileShape = exports.default = void 0; var _base = _interopRequireDefault(require("@emotion/styled/base")); var _isEmpty2 = _interopRequireDefault(require("lodash/isEmpty")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _immutable = require("immutable"); var _reactPolyglot = require("react-polyglot"); var _decapCmsUiDefault = require("decap-cms-ui-default"); var _UI = require("../UI"); var _MediaLibraryTop = _interopRequireDefault(require("./MediaLibraryTop")); var _MediaLibraryCardGrid = _interopRequireDefault(require("./MediaLibraryCardGrid")); var _EmptyMessage = _interopRequireDefault(require("./EmptyMessage")); var _react2 = require("@emotion/react"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Responsive styling needs to be overhauled. Current setup requires specifying * widths per breakpoint. */const cardWidth = `280px`; const cardHeight = `240px`; const cardMargin = `10px`; /** * cardWidth + cardMargin * 2 = cardOutsideWidth * (not using calc because this will be nested in other calcs) */ const cardOutsideWidth = `300px`; const StyledModal = /*#__PURE__*/(0, _base.default)(_UI.Modal, { target: "e4d0svf0", label: "StyledModal" })("display:grid;grid-template-rows:120px auto;width:calc(", cardOutsideWidth, " + 20px);background-color:", props => props.isPrivate && _decapCmsUiDefault.colors.grayDark, ";@media (min-width: 800px){width:calc(", cardOutsideWidth, " * 2 + 20px);}@media (min-width: 1120px){width:calc(", cardOutsideWidth, " * 3 + 20px);}@media (min-width: 1440px){width:calc(", cardOutsideWidth, " * 4 + 20px);}@media (min-width: 1760px){width:calc(", cardOutsideWidth, " * 5 + 20px);}@media (min-width: 2080px){width:calc(", cardOutsideWidth, " * 6 + 20px);}h1{color:", props => props.isPrivate && _decapCmsUiDefault.colors.textFieldBorder, ";}button:disabled,label[disabled]{background-color:", props => props.isPrivate && `rgba(217, 217, 217, 0.15)`, ";}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL01lZGlhTGlicmFyeS9NZWRpYUxpYnJhcnlNb2RhbC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQmlDIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL01lZGlhTGlicmFyeS9NZWRpYUxpYnJhcnlNb2RhbC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnaW1tdXRhYmxlJztcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgdHJhbnNsYXRlIH0gZnJvbSAncmVhY3QtcG9seWdsb3QnO1xuaW1wb3J0IHsgY29sb3JzIH0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gJy4uL1VJJztcbmltcG9ydCBNZWRpYUxpYnJhcnlUb3AgZnJvbSAnLi9NZWRpYUxpYnJhcnlUb3AnO1xuaW1wb3J0IE1lZGlhTGlicmFyeUNhcmRHcmlkIGZyb20gJy4vTWVkaWFMaWJyYXJ5Q2FyZEdyaWQnO1xuaW1wb3J0IEVtcHR5TWVzc2FnZSBmcm9tICcuL0VtcHR5TWVzc2FnZSc7XG5cbi8qKlxuICogUmVzcG9uc2l2ZSBzdHlsaW5nIG5lZWRzIHRvIGJlIG92ZXJoYXVsZWQuIEN1cnJlbnQgc2V0dXAgcmVxdWlyZXMgc3BlY2lmeWluZ1xuICogd2lkdGhzIHBlciBicmVha3BvaW50LlxuICovXG5jb25zdCBjYXJkV2lkdGggPSBgMjgwcHhgO1xuY29uc3QgY2FyZEhlaWdodCA9IGAyNDBweGA7XG5jb25zdCBjYXJkTWFyZ2luID0gYDEwcHhgO1xuXG4vKipcbiAqIGNhcmRXaWR0aCArIGNhcmRNYXJnaW4gKiAyID0gY2FyZE91dHNpZGVXaWR0aFxuICogKG5vdCB1c2luZyBjYWxjIGJlY2F1c2UgdGhpcyB3aWxsIGJlIG5lc3RlZCBpbiBvdGhlciBjYWxjcylcbiAqL1xuY29uc3QgY2FyZE91dHNpZGVXaWR0aCA9IGAzMDBweGA7XG5cbmNvbnN0IFN0eWxlZE1vZGFsID0gc3R5bGVkKE1vZGFsKWBcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxMjBweCBhdXRvO1xuICB3aWR0aDogY2FsYygke2NhcmRPdXRzaWRlV2lkdGh9ICsgMjBweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMuaXNQcml2YXRlICYmIGNvbG9ycy5ncmF5RGFya307XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgd2lkdGg6IGNhbGMoJHtjYXJkT3V0c2lkZVdpZHRofSAqIDIgKyAyMHB4KTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMTIwcHgpIHtcbiAgICB3aWR0aDogY2FsYygke2NhcmRPdXRzaWRlV2lkdGh9ICogMyArIDIwcHgpO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAgIHdpZHRoOiBjYWxjKCR7Y2FyZE91dHNpZGVXaWR0aH0gKiA0ICsgMjBweCk7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogMTc2MHB4KSB7XG4gICAgd2lkdGg6IGNhbGMoJHtjYXJkT3V0c2lkZVdpZHRofSAqIDUgKyAyMHB4KTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAyMDgwcHgpIHtcbiAgICB3aWR0aDogY2FsYygke2NhcmRPdXRzaWRlV2lkdGh9ICogNiArIDIwcHgpO1xuICB9XG5cbiAgaDEge1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLmlzUHJpdmF0ZSAmJiBjb2xvcnMudGV4dEZpZWxkQm9yZGVyfTtcbiAgfVxuXG4gIGJ1dHRvbjpkaXNhYmxlZCxcbiAgbGFiZWxbZGlzYWJsZWRdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLmlzUHJpdmF0ZSAmJiBgcmdiYSgyMTcsIDIxNywgMjE3LCAwLjE1KWB9O1xuICB9XG5gO1xuXG5mdW5jdGlvbiBNZWRpYUxpYnJhcnlNb2RhbCh7XG4gIGlzVmlzaWJsZSxcbiAgY2FuSW5zZXJ0LFxuICBmaWxlcyxcbiAgZHluYW1pY1NlYXJjaCxcbiAgZHluYW1pY1NlYXJjaEFjdGl2ZSxcbiAgZm9ySW1hZ2UsXG4gIGlzTG9hZGluZyxcbiAgaXNQZXJzaXN0aW5nLFxuICBpc0RlbGV0aW5nLFxuICBoYXNOZXh0UGFnZSxcbiAgaXNQYWdpbmF0aW5nLFxuICBwcml2YXRlVXBsb2FkLFxuICBxdWVyeSxcbiAgc2VsZWN0ZWRGaWxlLFxuICBoYW5kbGVGaWx0ZXIsXG4gIGhhbmRsZVF1ZXJ5LFxuICB0b1RhYmxlRGF0YSxcbiAgaGFuZGxlQ2xvc2UsXG4gIGhhbmRsZVNlYXJjaENoYW5nZSxcbiAgaGFuZGxlU2VhcmNoS2V5RG93bixcbiAgaGFuZGxlUGVyc2lzdCxcbiAgaGFuZGxlRGVsZXRlLFxuICBoYW5kbGVJbnNlcnQsXG4gIGhhbmRsZURvd25sb2FkLFxuICBzZXRTY3JvbGxDb250YWluZXJSZWYsXG4gIGhhbmRsZUFzc2V0Q2xpY2ssXG4gIGhhbmRsZUxvYWRNb3JlLFxuICBsb2FkRGlzcGxheVVSTCxcbiAgZGlzcGxheVVSTHMsXG4gIHQsXG59KSB7XG4gIGNvbnN0IGZpbHRlcmVkRmlsZXMgPSBmb3JJbWFnZSA/IGhhbmRsZUZpbHRlcihmaWxlcykgOiBmaWxlcztcbiAgY29uc3QgcXVlcmllZEZpbGVzID0gIWR5bmFtaWNTZWFyY2ggJiYgcXVlcnkgPyBoYW5kbGVRdWVyeShxdWVyeSwgZmlsdGVyZWRGaWxlcykgOiBmaWx0ZXJlZEZpbGVzO1xuICBjb25zdCB0YWJsZURhdGEgPSB0b1RhYmxlRGF0YShxdWVyaWVkRmlsZXMpO1xuICBjb25zdCBoYXNGaWxlcyA9IGZpbGVzICYmICEhZmlsZXMubGVuZ3RoO1xuICBjb25zdCBoYXNGaWx0ZXJlZEZpbGVzID0gZmlsdGVyZWRGaWxlcyAmJiAhIWZpbHRlcmVkRmlsZXMubGVuZ3RoO1xuICBjb25zdCBoYXNTZWFyY2hSZXN1bHRzID0gcXVlcmllZEZpbGVzICYmICEhcXVlcmllZEZpbGVzLmxlbmd0aDtcbiAgY29uc3QgaGFzTWVkaWEgPSBoYXNTZWFyY2hSZXN1bHRzO1xuICBjb25zdCBzaG91bGRTaG93RW1wdHlNZXNzYWdlID0gIWhhc01lZGlhO1xuICBjb25zdCBlbXB0eU1lc3NhZ2UgPVxuICAgIChpc0xvYWRpbmcgJiYgIWhhc01lZGlhICYmIHQoJ21lZGlhTGlicmFyeS5tZWRpYUxpYnJhcnlNb2RhbC5sb2FkaW5nJykpIHx8XG4gICAgKGR5bmFtaWNTZWFyY2hBY3RpdmUgJiYgdCgnbWVkaWFMaWJyYXJ5Lm1lZGlhTGlicmFyeU1vZGFsLm5vUmVzdWx0cycpKSB8fFxuICAgICghaGFzRmlsZXMgJiYgdCgnbWVkaWFMaWJyYXJ5Lm1lZGlhTGlicmFyeU1vZGFsLm5vQXNzZXRzRm91bmQnKSkgfHxcbiAgICAoIWhhc0ZpbHRlcmVkRmlsZXMgJiYgdCgnbWVkaWFMaWJyYXJ5Lm1lZGlhTGlicmFyeU1vZGFsLm5vSW1hZ2VzRm91bmQnKSkgfHxcbiAgICAoIWhhc1NlYXJjaFJlc3VsdHMgJiYgdCgnbWVkaWFMaWJyYXJ5Lm1lZGlhTGlicmFyeU1vZGFsLm5vUmVzdWx0cycpKTtcblxuICBjb25zdCBoYXNTZWxlY3Rpb24gPSBoYXNNZWRpYSAmJiAhaXNFbXB0eShzZWxlY3RlZEZpbGUpO1xuXG4gIHJldHVybiAoXG4gICAgPFN0eWxlZE1vZGFsIGlzT3Blbj17aXNWaXNpYmxlfSBvbkNsb3NlPXtoYW5kbGVDbG9zZX0gaXNQcml2YXRlPXtwcml2YXRlVXBsb2FkfT5cbiAgICAgIDxNZWRpYUxpYnJhcnlUb3BcbiAgICAgICAgdD17dH1cbiAgICAgICAgb25DbG9zZT17aGFuZGxlQ2xvc2V9XG4gICAgICAgIHByaXZhdGVVcGxvYWQ9e3ByaXZhdGVVcGxvYWR9XG4gICAgICAgIGZvckltYWdlPXtmb3JJbWFnZX1cbiAgICAgICAgb25Eb3dubG9hZD17aGFuZGxlRG93bmxvYWR9XG4gICAgICAgIG9uVXBsb2FkPXtoYW5kbGVQZXJzaXN0fVxuICAgICAgICBxdWVyeT17cXVlcnl9XG4gICAgICAgIG9uU2VhcmNoQ2hhbmdlPXtoYW5kbGVTZWFyY2hDaGFuZ2V9XG4gICAgICAgIG9uU2VhcmNoS2V5RG93bj17aGFuZGxlU2VhcmNoS2V5RG93bn1cbiAgICAgICAgc2VhcmNoRGlzYWJsZWQ9eyFkeW5hbWljU2VhcmNoQWN0aXZlICYmICFoYXNGaWx0ZXJlZEZpbGVzfVxuICAgICAgICBvbkRlbGV0ZT17aGFuZGxlRGVsZXRlfVxuICAgICAgICBjYW5JbnNlcnQ9e2Nhbkluc2VydH1cbiAgICAgICAgb25JbnNlcnQ9e2hhbmRsZUluc2VydH1cbiAgICAgICAgaGFzU2VsZWN0aW9uPXtoYXNTZWxlY3Rpb259XG4gICAgICAgIGlzUGVyc2lzdGluZz17aXNQZXJzaXN0aW5nfVxuICAgICAgICBpc0RlbGV0aW5nPXtpc0RlbGV0aW5nfVxuICAgICAgICBzZWxlY3RlZEZpbGU9e3NlbGVjdGVkRmlsZX1cbiAgICAgIC8+XG4gICAgICB7IXNob3VsZFNob3dFbXB0eU1lc3NhZ2UgPyBudWxsIDogKFxuICAgICAgICA8RW1wdHlNZXNzYWdlIGNvbnRlbnQ9e2VtcHR5TWVzc2FnZX0gaXNQcml2YXRlPXtwcml2YXRlVXBsb2FkfSAvPlxuICAgICAgKX1cbiAgICAgIDxNZWRpYUxpYnJhcnlDYXJkR3JpZFxuICAgICAgICBzZXRTY3JvbGxDb250YWluZXJSZWY9e3NldFNjcm9sbENvbnRhaW5lclJlZn1cbiAgICAgICAgbWVkaWFJdGVtcz17dGFibGVEYXRhfVxuICAgICAgICBpc1NlbGVjdGVkRmlsZT17ZmlsZSA9PiBzZWxlY3RlZEZpbGUua2V5ID09PSBmaWxlLmtleX1cbiAgICAgICAgb25Bc3NldENsaWNrPXtoYW5kbGVBc3NldENsaWNrfVxuICAgICAgICBjYW5Mb2FkTW9yZT17aGFzTmV4dFBhZ2V9XG4gICAgICAgIG9uTG9hZE1vcmU9e2hhbmRsZUxvYWRNb3JlfVxuICAgICAgICBpc1BhZ2luYXRpbmc9e2lzUGFnaW5hdGluZ31cbiAgICAgICAgcGFnaW5hdGluZ01lc3NhZ2U9e3QoJ21lZGlhTGlicmFyeS5tZWRpYUxpYnJhcnlNb2RhbC5sb2FkaW5nJyl9XG4gICAgICAgIGNhcmREcmFmdFRleHQ9e3QoJ21lZGlhTGlicmFyeS5tZWRpYUxpYnJhcnlDYXJkLmRyYWZ0Jyl9XG4gICAgICAgIGNhcmRXaWR0aD17Y2FyZFdpZHRofVxuICAgICAgICBjYXJkSGVpZ2h0PXtjYXJkSGVpZ2h0fVxuICAgICAgICBjYXJkTWFyZ2luPXtjYXJkTWFyZ2lufVxuICAgICAgICBpc1ByaXZhdGU9e3ByaXZhdGVVcGxvYWR9XG4gICAgICAgIGxvYWREaXNwbGF5VVJMPXtsb2FkRGlzcGxheVVSTH1cbiAgICAgICAgZGlzcGxheVVSTHM9e2Rpc3BsYXlVUkxzfVxuICAgICAgLz5cbiAgICA8L1N0eWxlZE1vZGFsPlxuICApO1xufVxuXG5leHBvcnQgY29uc3QgZmlsZVNoYXBlID0ge1xuICBkaXNwbGF5VVJMOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuc3RyaW5nLCBQcm9wVHlwZXMub2JqZWN0XSkuaXNSZXF1aXJlZCxcbiAgaWQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAga2V5OiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gIG5hbWU6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgcXVlcnlPcmRlcjogUHJvcFR5cGVzLm51bWJlcixcbiAgc2l6ZTogUHJvcFR5cGVzLm51bWJlcixcbiAgcGF0aDogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxufTtcblxuTWVkaWFMaWJyYXJ5TW9kYWwucHJvcFR5cGVzID0ge1xuICBpc1Zpc2libGU6IFByb3BUeXBlcy5ib29sLFxuICBjYW5JbnNlcnQ6IFByb3BUeXBlcy5ib29sLFxuICBmaWxlczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnNoYXBlKGZpbGVTaGFwZSkpLmlzUmVxdWlyZWQsXG4gIGR5bmFtaWNTZWFyY2g6IFByb3BUeXBlcy5ib29sLFxuICBkeW5hbWljU2VhcmNoQWN0aXZlOiBQcm9wVHlwZXMuYm9vbCxcbiAgZm9ySW1hZ2U6IFByb3BUeXBlcy5ib29sLFxuICBpc0xvYWRpbmc6IFByb3BUeXBlcy5ib29sLFxuICBpc1BlcnNpc3Rpbmc6IFByb3BUeXBlcy5ib29sLFxuICBpc0RlbGV0aW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgaGFzTmV4dFBhZ2U6IFByb3BUeXBlcy5ib29sLFxuICBpc1BhZ2luYXRpbmc6IFByb3BUeXBlcy5ib29sLFxuICBwcml2YXRlVXBsb2FkOiBQcm9wVHlwZXMuYm9vbCxcbiAgcXVlcnk6IFByb3BUeXBlcy5zdHJpbmcsXG4gIHNlbGVjdGVkRmlsZTogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnNoYXBlKGZpbGVTaGFwZSksIFByb3BUeXBlcy5zaGFwZSh7fSldKSxcbiAgaGFuZGxlRmlsdGVyOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBoYW5kbGVRdWVyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgdG9UYWJsZURhdGE6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIGhhbmRsZUNsb3NlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBoYW5kbGVTZWFyY2hDaGFuZ2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIGhhbmRsZVNlYXJjaEtleURvd246IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIGhhbmRsZVBlcnNpc3Q6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIGhhbmRsZURlbGV0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgaGFuZGxlSW5zZXJ0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBzZXRTY3JvbGxDb250YWluZXJSZWY6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIGhhbmRsZUFzc2V0Q2xpY2s6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIGhhbmRsZUxvYWRNb3JlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBsb2FkRGlzcGxheVVSTDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgZGlzcGxheVVSTHM6IFByb3BUeXBlcy5pbnN0YW5jZU9mKE1hcCkuaXNSZXF1aXJlZCxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IHRyYW5zbGF0ZSgpKE1lZGlhTGlicmFyeU1vZGFsKTtcbiJdfQ== */")); function MediaLibraryModal({ isVisible, canInsert, files, dynamicSearch, dynamicSearchActive, forImage, isLoading, isPersisting, isDeleting, hasNextPage, isPaginating, privateUpload, query, selectedFile, handleFilter, handleQuery, toTableData, handleClose, handleSearchChange, handleSearchKeyDown, handlePersist, handleDelete, handleInsert, handleDownload, setScrollContainerRef, handleAssetClick, handleLoadMore, loadDisplayURL, displayURLs, t }) { const filteredFiles = forImage ? handleFilter(files) : files; const queriedFiles = !dynamicSearch && query ? handleQuery(query, filteredFiles) : filteredFiles; const tableData = toTableData(queriedFiles); const hasFiles = files && !!files.length; const hasFilteredFiles = filteredFiles && !!filteredFiles.length; const hasSearchResults = queriedFiles && !!queriedFiles.length; const hasMedia = hasSearchResults; const shouldShowEmptyMessage = !hasMedia; const emptyMessage = isLoading && !hasMedia && t('mediaLibrary.mediaLibraryModal.loading') || dynamicSearchActive && t('mediaLibrary.mediaLibraryModal.noResults') || !hasFiles && t('mediaLibrary.mediaLibraryModal.noAssetsFound') || !hasFilteredFiles && t('mediaLibrary.mediaLibraryModal.noImagesFound') || !hasSearchResults && t('mediaLibrary.mediaLibraryModal.noResults'); const hasSelection = hasMedia && !(0, _isEmpty2.default)(selectedFile); return (0, _react2.jsx)(StyledModal, { isOpen: isVisible, onClose: handleClose, isPrivate: privateUpload }, (0, _react2.jsx)(_MediaLibraryTop.default, { t: t, onClose: handleClose, privateUpload: privateUpload, forImage: forImage, onDownload: handleDownload, onUpload: handlePersist, query: query, onSearchChange: handleSearchChange, onSearchKeyDown: handleSearchKeyDown, searchDisabled: !dynamicSearchActive && !hasFilteredFiles, onDelete: handleDelete, canInsert: canInsert, onInsert: handleInsert, hasSelection: hasSelection, isPersisting: isPersisting, isDeleting: isDeleting, selectedFile: selectedFile }), !shouldShowEmptyMessage ? null : (0, _react2.jsx)(_EmptyMessage.default, { content: emptyMessage, isPrivate: privateUpload }), (0, _react2.jsx)(_MediaLibraryCardGrid.default, { setScrollContainerRef: setScrollContainerRef, mediaItems: tableData, isSelectedFile: file => selectedFile.key === file.key, onAssetClick: handleAssetClick, canLoadMore: hasNextPage, onLoadMore: handleLoadMore, isPaginating: isPaginating, paginatingMessage: t('mediaLibrary.mediaLibraryModal.loading'), cardDraftText: t('mediaLibrary.mediaLibraryCard.draft'), cardWidth: cardWidth, cardHeight: cardHeight, cardMargin: cardMargin, isPrivate: privateUpload, loadDisplayURL: loadDisplayURL, displayURLs: displayURLs })); } const fileShape = exports.fileShape = { displayURL: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.object]).isRequired, id: _propTypes.default.string.isRequired, key: _propTypes.default.string.isRequired, name: _propTypes.default.string.isRequired, queryOrder: _propTypes.default.number, size: _propTypes.default.number, path: _propTypes.default.string.isRequired }; MediaLibraryModal.propTypes = { isVisible: _propTypes.default.bool, canInsert: _propTypes.default.bool, files: _propTypes.default.arrayOf(_propTypes.default.shape(fileShape)).isRequired, dynamicSearch: _propTypes.default.bool, dynamicSearchActive: _propTypes.default.bool, forImage: _propTypes.default.bool, isLoading: _propTypes.default.bool, isPersisting: _propTypes.default.bool, isDeleting: _propTypes.default.bool, hasNextPage: _propTypes.default.bool, isPaginating: _propTypes.default.bool, privateUpload: _propTypes.default.bool, query: _propTypes.default.string, selectedFile: _propTypes.default.oneOfType([_propTypes.default.shape(fileShape), _propTypes.default.shape({})]), handleFilter: _propTypes.default.func.isRequired, handleQuery: _propTypes.default.func.isRequired, toTableData: _propTypes.default.func.isRequired, handleClose: _propTypes.default.func.isRequired, handleSearchChange: _propTypes.default.func.isRequired, handleSearchKeyDown: _propTypes.default.func.isRequired, handlePersist: _propTypes.default.func.isRequired, handleDelete: _propTypes.default.func.isRequired, handleInsert: _propTypes.default.func.isRequired, setScrollContainerRef: _propTypes.default.func.isRequired, handleAssetClick: _propTypes.default.func.isRequired, handleLoadMore: _propTypes.default.func.isRequired, loadDisplayURL: _propTypes.default.func.isRequired, t: _propTypes.default.func.isRequired, displayURLs: _propTypes.default.instanceOf(_immutable.Map).isRequired }; var _default = exports.default = (0, _reactPolyglot.translate)()(MediaLibraryModal);