UNPKG

@orfeas126/box-ui-elements

Version:
908 lines (793 loc) 123 kB
/*! * Box UI Element * * Copyright 2019 Box, Inc. All rights reserved. * * This product includes software developed by Box, Inc. ("Box") * (http://www.box.com) * * ALL BOX SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL BOX BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * See the Box license for the specific language governing permissions * and limitations under the license. */ "use strict"; (globalThis["webpackChunk_orfeas126_box_ui_elements"] = globalThis["webpackChunk_orfeas126_box_ui_elements"] || []).push([["versions-sidebar"],{ /***/ "./src/components/inline-error/index.js": /*!**********************************************!*\ !*** ./src/components/inline-error/index.js ***! \**********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* reexport safe */ _InlineError__WEBPACK_IMPORTED_MODULE_0__["default"]) /* harmony export */ }); /* harmony import */ var _InlineError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./InlineError */ "./src/components/inline-error/InlineError.js"); /***/ }), /***/ "./src/components/primary-button/PrimaryButton.tsx": /*!*********************************************************!*\ !*** ./src/components/primary-button/PrimaryButton.tsx ***! \*********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _button_Button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../button/Button */ "./src/components/button/Button.tsx"); const _excluded = ["children", "className"]; function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; } function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; } const PrimaryButton = _ref => { let { children, className = '' } = _ref, rest = _objectWithoutProperties(_ref, _excluded); return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_button_Button__WEBPACK_IMPORTED_MODULE_1__["default"], _extends({ className: `btn-primary ${className}` }, rest), children); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PrimaryButton); /***/ }), /***/ "./src/components/primary-button/index.ts": /*!************************************************!*\ !*** ./src/components/primary-button/index.ts ***! \************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* reexport safe */ _PrimaryButton__WEBPACK_IMPORTED_MODULE_0__["default"]) /* harmony export */ }); /* harmony import */ var _PrimaryButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PrimaryButton */ "./src/components/primary-button/PrimaryButton.tsx"); /***/ }), /***/ "./src/components/time/ReadableTime.js": /*!*********************************************!*\ !*** ./src/components/time/ReadableTime.js ***! \*********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ ReadableTimeComponent: () => (/* binding */ ReadableTime), /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react_intl__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react-intl */ "./node_modules/react-intl/lib/src/components/injectIntl.js"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../constants */ "./src/constants.js"); /* harmony import */ var _utils_datetime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../utils/datetime */ "./src/utils/datetime.js"); /* harmony import */ var _utils_relativeTime__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../utils/relativeTime */ "./src/utils/relativeTime.js"); /* harmony import */ var _messages__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./messages */ "./src/components/time/messages.js"); // exclude languages that do not have a grammar for uppercase (e.g. russian) const nonUppercaseLocales = ['ru']; const ReadableTime = ({ intl, timestamp, relativeThreshold = _constants__WEBPACK_IMPORTED_MODULE_0__.ONE_HOUR_MS, allowFutureTimestamps = true, alwaysShowTime = false, showWeekday = false, uppercase = false }) => { const shouldUppercase = uppercase && !nonUppercaseLocales.includes(intl.locale); const relativeIfNewerThanTs = Date.now() - relativeThreshold; const shouldShowYear = !(0,_utils_datetime__WEBPACK_IMPORTED_MODULE_1__.isCurrentYear)(timestamp); if (!allowFutureTimestamps && timestamp > Date.now()) { // TODO: what is the reasoning behind this rule? timestamp = relativeIfNewerThanTs; // Default to 'Today' for timestamps that would show a future date } // e.g. Oct 5, 2018 let dateMessage = _messages__WEBPACK_IMPORTED_MODULE_3__["default"].eventTime; let date = null; let weekday = null; let output; if ((0,_utils_datetime__WEBPACK_IMPORTED_MODULE_1__.isToday)(timestamp)) { // e.g. Today at 12:30 PM dateMessage = _messages__WEBPACK_IMPORTED_MODULE_3__["default"].eventTimeToday; } else if ((0,_utils_datetime__WEBPACK_IMPORTED_MODULE_1__.isYesterday)(timestamp)) { // e.g. Yesterday at 11:30 AM dateMessage = _messages__WEBPACK_IMPORTED_MODULE_3__["default"].eventTimeYesterday; } else if (showWeekday) { // e.g. Monday, Oct 5, 2018 dateMessage = _messages__WEBPACK_IMPORTED_MODULE_3__["default"].eventTimeWeekdayLong; weekday = intl.formatDate(timestamp, { weekday: 'long' }); } else if (shouldShowYear && alwaysShowTime) { // e.g. Oct 5, 2018 at 10:30 PM dateMessage = _messages__WEBPACK_IMPORTED_MODULE_3__["default"].eventTimeDate; } else if (!shouldShowYear && alwaysShowTime) { // e.g. Oct 5 at 10:30 PM dateMessage = _messages__WEBPACK_IMPORTED_MODULE_3__["default"].eventTimeDateShort; date = intl.formatDate(timestamp, { month: 'short', day: 'numeric' }); } else if (!shouldShowYear && !alwaysShowTime) { // e.g. Oct 5 output = intl.formatDate(timestamp, { month: 'short', day: 'numeric' }); return shouldUppercase ? output.toLocaleUpperCase(intl.locale) : output; } const values = { time: timestamp, date, weekday }; output = intl.formatMessage(dateMessage, values); // if the time stamp is within +/- the relative threshold for the current time, // print the default time format const timeDiff = timestamp - Date.now(); if (Math.abs(timeDiff) <= relativeThreshold) { const { value, unit } = (0,_utils_relativeTime__WEBPACK_IMPORTED_MODULE_2__["default"])(timestamp); output = intl.formatRelativeTime(value, unit); } return shouldUppercase ? output.toLocaleUpperCase(intl.locale) : output; }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react_intl__WEBPACK_IMPORTED_MODULE_4__["default"])(ReadableTime)); /***/ }), /***/ "./src/components/time/index.js": /*!**************************************!*\ !*** ./src/components/time/index.js ***! \**************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ ReadableTime: () => (/* reexport safe */ _ReadableTime__WEBPACK_IMPORTED_MODULE_0__["default"]) /* harmony export */ }); /* harmony import */ var _ReadableTime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./ReadableTime */ "./src/components/time/ReadableTime.js"); // eslint-disable-next-line import/prefer-default-export /***/ }), /***/ "./src/components/time/messages.js": /*!*****************************************!*\ !*** ./src/components/time/messages.js ***! \*****************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react_intl__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-intl */ "./node_modules/react-intl/lib/index.js"); const messages = (0,react_intl__WEBPACK_IMPORTED_MODULE_0__.defineMessages)({ eventTime: { "id": "boxui.readableTime.eventTime", "defaultMessage": "{time, date, medium}" }, eventTimeToday: { "id": "boxui.readableTime.eventTimeToday", "defaultMessage": "Today at {time, time, short}" }, eventTimeYesterday: { "id": "boxui.readableTime.eventTimeYesterday", "defaultMessage": "Yesterday at {time, time, short}" }, eventTimeDate: { "id": "boxui.readableTime.eventTimeDate", "defaultMessage": "{time, date, medium} at {time, time, short}" }, eventTimeDateShort: { "id": "boxui.readableTime.eventTimeDateShort", "defaultMessage": "{date} at {time, time, short}" }, eventTimeWeekdayLong: { "id": "boxui.readableTime.eventTimeWeekdayLong", "defaultMessage": "{weekday}, {time, date, medium}" } }); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (messages); /***/ }), /***/ "./src/elements/content-sidebar/versions/StaticVersionSidebar.js": /*!***********************************************************************!*\ !*** ./src/elements/content-sidebar/versions/StaticVersionSidebar.js ***! \***********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var react_intl__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react-intl */ "./node_modules/react-intl/lib/src/components/message.js"); /* harmony import */ var _illustration_BoxDrive140__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../illustration/BoxDrive140 */ "./src/illustration/BoxDrive140.tsx"); /* harmony import */ var _common_nav_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../common/nav-button */ "./src/elements/common/nav-button/index.js"); /* harmony import */ var _components_primary_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../components/primary-button */ "./src/components/primary-button/index.ts"); /* harmony import */ var _components_loading_indicator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../components/loading-indicator */ "./src/components/loading-indicator/index.ts"); /* harmony import */ var _VersionsMenu__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./VersionsMenu */ "./src/elements/content-sidebar/versions/VersionsMenu.js"); /* harmony import */ var _messages__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./messages */ "./src/elements/content-sidebar/versions/messages.js"); /* harmony import */ var _StaticVersionsSidebar_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./StaticVersionsSidebar.scss */ "./src/elements/content-sidebar/versions/StaticVersionsSidebar.scss"); /** * * @file Static Versions Sidebar component * @author Box */ const StaticVersionsSidebar = ({ isLoading, onUpgradeClick, parentName }) => { const versionTimestamp = new Date(); versionTimestamp.setDate(versionTimestamp.getDate() - 1); const versions = ['1', '2', '3'].map(versionNumber => { return { id: versionNumber, version_number: versionNumber, type: 'file_version', permissions: { can_preview: true }, created_at: versionTimestamp.toUTCString(), modified_by: null, size: 1875887, trashed_at: null, uploader_display_name: 'John Doe' }; }); return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-StaticVersionSidebar", role: "tabpanel", "data-resin-component": "preview", "data-resin-feature": "versions" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-StaticVersionSidebar-header" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("h3", { className: "bcs-StaticVersionSidebar-title" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_common_nav_button__WEBPACK_IMPORTED_MODULE_2__.BackButton, { "data-resin-target": "back", to: `/${parentName}` }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_8__["default"], _messages__WEBPACK_IMPORTED_MODULE_6__["default"].versionsTitle)))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-StaticVersionSidebar-content-wrapper" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_loading_indicator__WEBPACK_IMPORTED_MODULE_4__.LoadingIndicatorWrapper, { className: "bcs-StaticVersionSidebar-content", crawlerPosition: "top", isLoading: isLoading }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsMenu__WEBPACK_IMPORTED_MODULE_5__["default"], { versions: versions, fileId: "1", versionCount: 3, versionLimit: 3 }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-StaticVersionSidebar-upsell-wrapper" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-StaticVersionSidebar-upsell" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_illustration_BoxDrive140__WEBPACK_IMPORTED_MODULE_1__["default"], { className: "bcs-StaticVersionSidebar-upsell-icon" }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("p", { className: "bcs-StaticVersionSidebar-upsell-header" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_8__["default"], _messages__WEBPACK_IMPORTED_MODULE_6__["default"].versionUpgradeLink)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("p", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_8__["default"], _messages__WEBPACK_IMPORTED_MODULE_6__["default"].versionUpsell)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_primary_button__WEBPACK_IMPORTED_MODULE_3__["default"], { className: "bcs-StaticVersionSidebar-upsell-button", "data-resin-target": "versioning_error_upgrade_cta", onClick: onUpgradeClick, type: "button" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_8__["default"], _messages__WEBPACK_IMPORTED_MODULE_6__["default"].upgradeButton))))); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (StaticVersionsSidebar); /***/ }), /***/ "./src/elements/content-sidebar/versions/VersionsGroup.js": /*!****************************************************************!*\ !*** ./src/elements/content-sidebar/versions/VersionsGroup.js ***! \****************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _VersionsList__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VersionsList */ "./src/elements/content-sidebar/versions/VersionsList.js"); /* harmony import */ var _VersionsGroup_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VersionsGroup.scss */ "./src/elements/content-sidebar/versions/VersionsGroup.scss"); const _excluded = ["heading"]; function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; } function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; } /** * * @file Versions Group component * @author Box */ const VersionsGroup = _ref => { let { heading } = _ref, rest = _objectWithoutProperties(_ref, _excluded); return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("section", { className: "bcs-VersionsGroup" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("h4", { className: "bcs-VersionsGroup-heading" }, heading), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsList__WEBPACK_IMPORTED_MODULE_1__["default"], rest)); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VersionsGroup); /***/ }), /***/ "./src/elements/content-sidebar/versions/VersionsItem.js": /*!***************************************************************!*\ !*** ./src/elements/content-sidebar/versions/VersionsItem.js ***! \***************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var react_intl__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! react-intl */ "./node_modules/react-intl/lib/src/components/message.js"); /* harmony import */ var _messages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./messages */ "./src/elements/content-sidebar/versions/messages.js"); /* harmony import */ var _common_selectors_version__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../common/selectors/version */ "./src/elements/common/selectors/version.js"); /* harmony import */ var _utils_size__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../utils/size */ "./src/utils/size.js"); /* harmony import */ var _VersionsItemActions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./VersionsItemActions */ "./src/elements/content-sidebar/versions/VersionsItemActions.js"); /* harmony import */ var _VersionsItemButton__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./VersionsItemButton */ "./src/elements/content-sidebar/versions/VersionsItemButton.js"); /* harmony import */ var _VersionsItemBadge__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./VersionsItemBadge */ "./src/elements/content-sidebar/versions/VersionsItemBadge.js"); /* harmony import */ var _VersionsItemRetention__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./VersionsItemRetention */ "./src/elements/content-sidebar/versions/VersionsItemRetention.js"); /* harmony import */ var _components_time__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../components/time */ "./src/components/time/index.js"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js"); /* harmony import */ var _VersionsItem_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./VersionsItem.scss */ "./src/elements/content-sidebar/versions/VersionsItem.scss"); function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /** * * @file Versions Item component * @author Box */ const ACTION_MAP = { [_constants__WEBPACK_IMPORTED_MODULE_9__.VERSION_DELETE_ACTION]: _messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionDeletedBy, [_constants__WEBPACK_IMPORTED_MODULE_9__.VERSION_RESTORE_ACTION]: _messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionRestoredBy, [_constants__WEBPACK_IMPORTED_MODULE_9__.VERSION_PROMOTE_ACTION]: _messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionPromotedBy, [_constants__WEBPACK_IMPORTED_MODULE_9__.VERSION_UPLOAD_ACTION]: _messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionUploadedBy }; const FILE_EXTENSIONS_OFFICE = ['xlsb', 'xlsm', 'xlsx']; const FIVE_MINUTES_MS = 5 * 60 * 1000; const VersionsItem = ({ fileId, isArchived = false, isCurrent = false, isSelected = false, isWatermarked = false, onDelete, onDownload, onPreview, onPromote, onRestore, version, versionCount, versionLimit }) => { const { created_at: createdAt, extension, id: versionId, is_download_available, permissions = {}, restored_at: restoredAt, retention, size, trashed_at: trashedAt, version_number: versionNumber, version_promoted: versionPromoted } = version; const { can_delete, can_download, can_preview, can_upload } = permissions; const { applied_at: retentionAppliedAt, disposition_at: retentionDispositionAt } = retention || {}; const retentionDispositionAtDate = retentionDispositionAt && new Date(retentionDispositionAt); // Version info helpers const versionAction = _common_selectors_version__WEBPACK_IMPORTED_MODULE_2__["default"].getVersionAction(version); const versionInteger = versionNumber ? parseInt(versionNumber, 10) : 1; const versionTime = restoredAt || trashedAt || createdAt; const versionTimestamp = versionTime && new Date(versionTime).getTime(); const versionUserName = _common_selectors_version__WEBPACK_IMPORTED_MODULE_2__["default"].getVersionUser(version).name || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_11__["default"], _messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionUserUnknown); const versionDisplayName = versionUserName !== _constants__WEBPACK_IMPORTED_MODULE_9__.FILE_REQUEST_NAME ? versionUserName : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_11__["default"], _messages__WEBPACK_IMPORTED_MODULE_1__["default"].fileRequestDisplayName); // Version state helpers const isDeleted = versionAction === _constants__WEBPACK_IMPORTED_MODULE_9__.VERSION_DELETE_ACTION; const isDownloadable = !!is_download_available; const isLimited = versionCount - versionInteger >= versionLimit; const isOffice = FILE_EXTENSIONS_OFFICE.includes(extension); const isRestricted = (isOffice || isWatermarked) && !isCurrent; const isRetained = !!retentionAppliedAt && (!retentionDispositionAtDate || retentionDispositionAtDate > new Date()); // Version action helpers const canPreview = can_preview && !isDeleted && !isLimited && !isRestricted; const showDelete = can_delete && !isDeleted && !isArchived && !isCurrent; const showDownload = can_download && !isDeleted && isDownloadable; const showPromote = can_upload && !isDeleted && !isArchived && !isCurrent; const showRestore = can_delete && isDeleted && !isArchived; const showPreview = canPreview && !isSelected; const hasActions = showDelete || showDownload || showPreview || showPromote || showRestore; // Version action callback helper const handleAction = handler => () => { if (handler) { handler(versionId); } }; return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-VersionsItem" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemButton__WEBPACK_IMPORTED_MODULE_5__["default"], { fileId: fileId, isCurrent: isCurrent, isDisabled: !canPreview, isSelected: isSelected, onClick: handleAction(onPreview) }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-VersionsItem-badge" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemBadge__WEBPACK_IMPORTED_MODULE_6__["default"], { versionNumber: versionNumber })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-VersionsItem-details" }, isCurrent && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-VersionsItem-current" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_11__["default"], _messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionCurrent)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-VersionsItem-log", "data-testid": "bcs-VersionsItem-log", title: versionDisplayName }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_11__["default"], _extends({}, ACTION_MAP[versionAction], { values: { name: versionDisplayName, versionPromoted } }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-VersionsItem-info", "data-testid": "bcs-VersionsItem-info" }, versionTimestamp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("time", { className: "bcs-VersionsItem-date", dateTime: versionTime }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_time__WEBPACK_IMPORTED_MODULE_8__.ReadableTime, { alwaysShowTime: true, relativeThreshold: FIVE_MINUTES_MS, timestamp: versionTimestamp })), !!size && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { className: "bcs-VersionsItem-size" }, (0,_utils_size__WEBPACK_IMPORTED_MODULE_3__["default"])(size))), isRetained && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-VersionsItem-retention", "data-testid": "bcs-VersionsItem-retention" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemRetention__WEBPACK_IMPORTED_MODULE_7__["default"], { retention: retention })), isLimited && hasActions && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { className: "bcs-VersionsItem-footer" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_11__["default"], _extends({}, _messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionLimitExceeded, { values: { versionLimit } }))))), !isLimited && hasActions && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemActions__WEBPACK_IMPORTED_MODULE_4__["default"], { fileId: fileId, isCurrent: isCurrent, isRetained: isRetained, onDelete: handleAction(onDelete), onDownload: handleAction(onDownload), onPreview: handleAction(onPreview), onPromote: handleAction(onPromote), onRestore: handleAction(onRestore), showDelete: showDelete, showDownload: showDownload, showPreview: showPreview, showPromote: showPromote, showRestore: showRestore })); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VersionsItem); /***/ }), /***/ "./src/elements/content-sidebar/versions/VersionsItemAction.js": /*!*********************************************************************!*\ !*** ./src/elements/content-sidebar/versions/VersionsItemAction.js ***! \*********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _components_menu__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/menu */ "./src/components/menu/index.ts"); /* harmony import */ var _VersionsItemAction_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VersionsItemAction.scss */ "./src/elements/content-sidebar/versions/VersionsItemAction.scss"); const _excluded = ["action", "children", "fileId", "isCurrent"]; function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; } function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; } /** * * @file Versions Item Action component * @author Box */ const VersionsItemAction = _ref => { let { action, children, fileId, isCurrent } = _ref, rest = _objectWithoutProperties(_ref, _excluded); return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_menu__WEBPACK_IMPORTED_MODULE_1__.MenuItem, _extends({ className: "bcs-VersionsItemAction", "data-resin-iscurrent": isCurrent, "data-resin-itemid": fileId, "data-resin-target": action }, rest), children); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VersionsItemAction); /***/ }), /***/ "./src/elements/content-sidebar/versions/VersionsItemActions.js": /*!**********************************************************************!*\ !*** ./src/elements/content-sidebar/versions/VersionsItemActions.js ***! \**********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var react_intl__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! react-intl */ "./node_modules/react-intl/lib/src/components/message.js"); /* harmony import */ var _components_dropdown_menu__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/dropdown-menu */ "./src/components/dropdown-menu/index.js"); /* harmony import */ var _icons_general_IconClockPast__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../icons/general/IconClockPast */ "./src/icons/general/IconClockPast.tsx"); /* harmony import */ var _icons_general_IconDownload__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../icons/general/IconDownload */ "./src/icons/general/IconDownload.tsx"); /* harmony import */ var _icons_general_IconEllipsis__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../icons/general/IconEllipsis */ "./src/icons/general/IconEllipsis.tsx"); /* harmony import */ var _icons_general_IconOpenWith__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../icons/general/IconOpenWith */ "./src/icons/general/IconOpenWith.tsx"); /* harmony import */ var _icons_general_IconTrash__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../icons/general/IconTrash */ "./src/icons/general/IconTrash.tsx"); /* harmony import */ var _icons_general_IconUpload__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../icons/general/IconUpload */ "./src/icons/general/IconUpload.tsx"); /* harmony import */ var _messages__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./messages */ "./src/elements/content-sidebar/versions/messages.js"); /* harmony import */ var _components_plain_button__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../components/plain-button */ "./src/components/plain-button/index.ts"); /* harmony import */ var _components_tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../components/tooltip/Tooltip */ "./src/components/tooltip/Tooltip.tsx"); /* harmony import */ var _VersionsItemAction__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./VersionsItemAction */ "./src/elements/content-sidebar/versions/VersionsItemAction.js"); /* harmony import */ var _components_menu__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../components/menu */ "./src/components/menu/index.ts"); /* harmony import */ var _VersionsItemActions_scss__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./VersionsItemActions.scss */ "./src/elements/content-sidebar/versions/VersionsItemActions.scss"); /** * * @file Versions Item Actions component * @author Box */ const handleMenuClose = event => { event.stopPropagation(); }; const handleToggleClick = event => { event.stopPropagation(); }; const VersionsItemActions = ({ fileId, isCurrent = false, isRetained = false, onDelete, onDownload, onPreview, onPromote, onRestore, showDelete = false, showDownload = false, showPreview = false, showPromote = false, showRestore = false }) => { if (!showDelete && !showDownload && !showPreview && !showPromote && !showRestore) { return null; } return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_dropdown_menu__WEBPACK_IMPORTED_MODULE_1__["default"], { className: "bcs-VersionsItemActions", constrainToScrollParent: true, constrainToWindow: true, isRightAligned: true, onMenuClose: handleMenuClose }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_plain_button__WEBPACK_IMPORTED_MODULE_9__["default"], { className: "bcs-VersionsItemActions-toggle", "data-resin-iscurrent": isCurrent, "data-resin-itemid": fileId, "data-resin-target": "overflow", onClick: handleToggleClick, type: "button" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_icons_general_IconEllipsis__WEBPACK_IMPORTED_MODULE_4__["default"], { height: 4, width: 14 }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_14__["default"], _messages__WEBPACK_IMPORTED_MODULE_8__["default"].versionActionToggle, text => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", { className: "accessibility-hidden" }, text))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_menu__WEBPACK_IMPORTED_MODULE_12__.Menu, { className: "bcs-VersionsItemActions-menu", "data-resin-component": "preview" // Needed for resin events due to tether moving menu to body , "data-resin-feature": "versions" // Needed for resin events due to tether moving menu to body }, showPreview && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemAction__WEBPACK_IMPORTED_MODULE_11__["default"], { action: "preview", fileId: fileId, isCurrent: isCurrent, onClick: onPreview }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_icons_general_IconOpenWith__WEBPACK_IMPORTED_MODULE_5__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_14__["default"], _messages__WEBPACK_IMPORTED_MODULE_8__["default"].versionActionPreview)), showDownload && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemAction__WEBPACK_IMPORTED_MODULE_11__["default"], { action: "download", fileId: fileId, isCurrent: isCurrent, onClick: onDownload }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_icons_general_IconDownload__WEBPACK_IMPORTED_MODULE_3__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_14__["default"], _messages__WEBPACK_IMPORTED_MODULE_8__["default"].versionActionDownload)), showPromote && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemAction__WEBPACK_IMPORTED_MODULE_11__["default"], { action: "promote", fileId: fileId, isCurrent: isCurrent, onClick: onPromote }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_icons_general_IconUpload__WEBPACK_IMPORTED_MODULE_7__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_14__["default"], _messages__WEBPACK_IMPORTED_MODULE_8__["default"].versionActionPromote)), showRestore && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemAction__WEBPACK_IMPORTED_MODULE_11__["default"], { action: "restore", fileId: fileId, isCurrent: isCurrent, onClick: onRestore }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_icons_general_IconClockPast__WEBPACK_IMPORTED_MODULE_2__["default"], { height: 14, width: 14 }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_14__["default"], _messages__WEBPACK_IMPORTED_MODULE_8__["default"].versionActionRestore)), showDelete && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_10__["default"], { position: "middle-left", text: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_14__["default"], _messages__WEBPACK_IMPORTED_MODULE_8__["default"].versionActionDisabledRetention), isTabbable: false, isDisabled: !isRetained }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_VersionsItemAction__WEBPACK_IMPORTED_MODULE_11__["default"], { action: "remove", fileId: fileId, isCurrent: isCurrent, isDisabled: isRetained, onClick: onDelete }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_icons_general_IconTrash__WEBPACK_IMPORTED_MODULE_6__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_14__["default"], _messages__WEBPACK_IMPORTED_MODULE_8__["default"].versionActionDelete))))); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VersionsItemActions); /***/ }), /***/ "./src/elements/content-sidebar/versions/VersionsItemBadge.js": /*!********************************************************************!*\ !*** ./src/elements/content-sidebar/versions/VersionsItemBadge.js ***! \********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var react_intl__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-intl */ "./node_modules/react-intl/lib/src/components/message.js"); /* harmony import */ var react_intl__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react-intl */ "./node_modules/react-intl/lib/src/components/injectIntl.js"); /* harmony import */ var _messages__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./messages */ "./src/elements/content-sidebar/versions/messages.js"); /* harmony import */ var _VersionsItemBadge_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./VersionsItemBadge.scss */ "./src/elements/content-sidebar/versions/VersionsItemBadge.scss"); function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /** * * @file Versions Item Badge component * @author Box */ const VersionsItemBadge = ({ intl, versionNumber }) => { const intlValues = { versionNumber }; return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", { "aria-label": intl.formatMessage(_messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionNumberLabel, intlValues), className: "bcs-VersionsItemBadge" }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(react_intl__WEBPACK_IMPORTED_MODULE_3__["default"], _extends({}, _messages__WEBPACK_IMPORTED_MODULE_1__["default"].versionNumberBadge, { values: intlValues }))); }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ((0,react_intl__WEBPACK_IMPORTED_MODULE_4__["default"])(VersionsItemBadge)); /***/ }), /***/ "./src/elements/content-sidebar/versions/VersionsItemButton.js": /*!*********************************************************************!*\ !*** ./src/elements/content-sidebar/versions/VersionsItemButton.js ***! \*********************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"); /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _components_plain_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/plain-button */ "./src/components/plain-button/index.ts"); /* harmony import */ var _utils_dom__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../utils/dom */ "./src/utils/dom.js"); /* harmony import */ var _VersionsItemButton_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./VersionsItemButton.scss */ "./src/elements/content-sidebar/versions/VersionsItemButton.scss"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /** * * @file Versions Item Button component * @author Box */ class VersionsItemButton extends react__WEBPACK_IMPORTED_MODULE_0__.Component { constructor(...args) { super(...args); _defineProperty(this, "setButtonRef", buttonRef => { this.buttonRef = buttonRef; }); _defineProperty(this, "setScroll", () => { const { isSelected } = this.props; if (this.buttonRef && isSelected) { (0,_utils_dom__WEBPACK_IMPORTED_MODULE_3__.scrollIntoView)(this.buttonRef); } }); } componentDidMount() { this.setScroll(); } componentDidUpdate({ isSelected: prevIsSelected }) { const { isSelected } = this.props; if (isSelected !== prevIsSelected) { this.setScroll(); } } render() { const { children, fileId, isCurrent, isDisabled, isSelected, onClick } = this.props; const buttonClassName = classnames__WEBPACK_IMPORTED_MODULE_1___default()('bcs-VersionsItemButton', { 'bcs-is-disabled': isDisabled, 'bcs-is-selected': isSelected && !isDisabled }); return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components_plain_button__WEBPACK_IMPORTED_MODULE_2__["default"], { "aria-disabled": isDisabled, className: buttonClassName, "data-resin-iscurrent": isCurrent, "data-resin-itemid": fileId, "data-resin-target": "select", "data-testid": "versions-item-button", getDOMRef: this.setButtonRef, isDisabled: isDisabled, onClick: onClick, type: "button" }, children); } } _defineProperty(VersionsItemButton, "defaultProps", { isCurrent: false, isDisabled: false, isSelected: false }); /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VersionsItemButton); /***/ }), /***/ "./src/elements/content-sidebar/versions/VersionsItemRetention.js": /*!************************************************************************!*\ !*** ./src/elements/content-sidebar/versions/VersionsItemRetention.js ***! \************************************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var react_intl__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react-intl */ "./node_modules/react-intl/lib/src/components/message.js"); /* harmony import */ var _components_time__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/time */ "./src/components/time/index.js"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js"); /* harmony import */ var _messages__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./messages */ "./src/elements/content