Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
import { useEffect, useState, useCallback } from 'react';
import { DEFAULT_ZOOM_RATIO } from './Body.constants';
import Styled from './Body.styled';
import Footer from './Footer';
import Header from './Header';
import Preview from './Preview';
import { TABS_IDS } from '../tabs/tabs.constants';
import CommentingField from './CommentingField';
import { jsx as _jsx } from "react/jsx-runtime";
import { jsxs as _jsxs } from "react/jsx-runtime";
var FileWindowBody = function FileWindowBody(_ref) {
  var _ref$originalFile = _ref.originalFile,
    originalFile = _ref$originalFile === void 0 ? {} : _ref$originalFile,
    _ref$previewedFile = _ref.previewedFile,
    previewedFile = _ref$previewedFile === void 0 ? {} : _ref$previewedFile,
    isSupportAnnotationFile = _ref.isSupportAnnotationFile,
    setFileData = _ref.setFileData,
    isCommentsTabOpened = _ref.isCommentsTabOpened,
    setPreviewedFile = _ref.setPreviewedFile,
    activeTabId = _ref.activeTabId,
    setActiveTabId = _ref.setActiveTabId,
    isPdfPreviewSupported = _ref.isPdfPreviewSupported,
    isImageFile = _ref.isImageFile,
    annotatingFieldProps = _ref.annotatingFieldProps,
    isPdfFile = _ref.isPdfFile,
    isAudioFileAndSupportsPlayback = _ref.isAudioFileAndSupportsPlayback,
    isVideoFile = _ref.isVideoFile,
    isAudioFile = _ref.isAudioFile,
    isVideoFileAndSupportsPlayback = _ref.isVideoFileAndSupportsPlayback,
    alertUnsavedChangesFirst = _ref.alertUnsavedChangesFirst;
  var _useState = useState(DEFAULT_ZOOM_RATIO),
    _useState2 = _slicedToArray(_useState, 2),
    zoomRatio = _useState2[0],
    setZoomRatio = _useState2[1];
  var _useState3 = useState(function () {
      return previewedFile;
    }),
    _useState4 = _slicedToArray(_useState3, 2),
    displayedFileVariant = _useState4[0],
    setDisplayedFileVariant = _useState4[1];
  var _useState5 = useState(null),
    _useState6 = _slicedToArray(_useState5, 2),
    videoEl = _useState6[0],
    setVideoEl = _useState6[1];
  var _useState7 = useState(null),
    _useState8 = _slicedToArray(_useState7, 2),
    imgEl = _useState8[0],
    setImgEl = _useState8[1];
  var _useState9 = useState(false),
    _useState10 = _slicedToArray(_useState9, 2),
    isMediaLoadingFailed = _useState10[0],
    setIsMediaLoadingFailed = _useState10[1];
  var isFileLoading = originalFile.loading;
  var isFileFailedToLoad = originalFile.error;
  var _isPdfPreviewSupported = isPdfFile && isPdfPreviewSupported;
  var setVideoRef = useCallback(function (node) {
    if (node !== null) {
      setVideoEl({
        current: node
      });
    }
  }, [previewedFile]);
  var setImgRef = useCallback(function (node) {
    if (node !== null) {
      setImgEl({
        current: node
      });
    }
  }, [previewedFile]);
  var changeDisplayedVariant = function changeDisplayedVariant(variant) {
    if (variant) {
      setDisplayedFileVariant(variant);
      return;
    }
    var _previewedFile;
    setPreviewedFile(function (_latestPreviewedFile) {
      _previewedFile = _latestPreviewedFile;
      return _latestPreviewedFile;
    });
    setDisplayedFileVariant(_previewedFile);
  };
  useEffect(function () {
    changeDisplayedVariant(previewedFile);
    setIsMediaLoadingFailed(false);
    if (previewedFile.uuid !== displayedFileVariant.uuid) {
      changeDisplayedVariant(previewedFile);
    }
  }, [previewedFile]);
  useEffect(function () {
    if (isCommentsTabOpened && !isSupportAnnotationFile) {
      setActiveTabId(TABS_IDS.DETAILS);
    }
  }, [isSupportAnnotationFile, isCommentsTabOpened]);
  useEffect(function () {
    if (isCommentsTabOpened) {
      setZoomRatio(DEFAULT_ZOOM_RATIO);
    }
  }, [isCommentsTabOpened]);
  return /*#__PURE__*/_jsxs(Styled.Container, {
    children: [/*#__PURE__*/_jsx(Header, {
      file: displayedFileVariant,
      isPdfFile: isPdfFile,
      isAudioFile: isAudioFile,
      isVideoFile: isVideoFile,
      isFileLoading: isFileLoading
    }), /*#__PURE__*/_jsx(Preview, {
      originalFile: originalFile,
      previewedFile: previewedFile // the file previewed (original/version)
      ,
      displayedVariant: displayedFileVariant // the variant selected to preview (variant of origina/version file).
      ,
      zoomRatio: zoomRatio,
      setZoomRatio: setZoomRatio,
      isPdfPreviewSupported: _isPdfPreviewSupported,
      videoEl: videoEl,
      isFileLoading: isFileLoading,
      isFileFailedToLoad: isFileFailedToLoad,
      setFileData: setFileData,
      setVideoRef: setVideoRef,
      imgEl: imgEl,
      setImgRef: setImgRef,
      isCommentsTabOpened: isCommentsTabOpened,
      activeTabId: activeTabId,
      setActiveTabId: setActiveTabId,
      isSupportAnnotationFile: isSupportAnnotationFile,
      isMediaLoadingFailed: isMediaLoadingFailed,
      setIsMediaLoadingFailed: setIsMediaLoadingFailed,
      alertUnsavedChangesFirst: alertUnsavedChangesFirst
    }), (!isCommentsTabOpened || isVideoFile) && /*#__PURE__*/_jsx(Footer, {
      isImageFile: isImageFile,
      isPdfFile: isPdfFile,
      isVideoFile: isVideoFile,
      isAudioFile: isAudioFile,
      originalFile: originalFile,
      previewedFile: previewedFile,
      zoomRatio: zoomRatio,
      setZoomRatio: setZoomRatio,
      setDisplayedFileVariant: changeDisplayedVariant,
      displayedFileVariant: displayedFileVariant,
      isPdfPreviewSupported: _isPdfPreviewSupported,
      isCommentsTabOpened: isCommentsTabOpened,
      isMediaLoadingFailed: isMediaLoadingFailed,
      isAudioFileAndSupportsPlayback: isAudioFileAndSupportsPlayback,
      isVideoFileAndSupportsPlayback: isVideoFileAndSupportsPlayback,
      videoEl: videoEl
    }), isCommentsTabOpened && /*#__PURE__*/_jsx(Styled.AnnotatingFieldWrapper, {
      "data-expand-height": true,
      children: /*#__PURE__*/_jsx(CommentingField, {
        previewedFile: previewedFile,
        annotatingFieldProps: annotatingFieldProps
      }, previewedFile.uuid)
    })]
  });
};
export default FileWindowBody;