cozy-ui 111.21.0 → 112.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/package.json +3 -2
- package/react/FileImageLoader/Readme.md +66 -3
- package/react/FileImageLoader/index.jsx +3 -3
- package/react/FileImageLoader/index.spec.jsx +1 -1
- package/react/hooks/useClientErrors.jsx +140 -0
- package/react/hooks/useClientErrors.spec.jsx +102 -0
- package/react/index.js +0 -1
- package/transpiled/react/FileImageLoader/index.js +3 -3
- package/transpiled/react/hooks/useClientErrors.js +167 -0
- package/transpiled/react/index.js +0 -1
- package/transpiled/react/stylesheet.css +1 -1
- package/react/Viewer/Footer/BottomSheetContent.jsx +0 -29
- package/react/Viewer/Footer/DownloadButton.jsx +0 -67
- package/react/Viewer/Footer/FooterActionButtons.jsx +0 -22
- package/react/Viewer/Footer/FooterActionButtons.spec.jsx +0 -30
- package/react/Viewer/Footer/FooterContent.jsx +0 -99
- package/react/Viewer/Footer/ForwardButton.jsx +0 -95
- package/react/Viewer/Footer/ForwardButton.spec.jsx +0 -87
- package/react/Viewer/Footer/ForwardOrDownloadButton.jsx +0 -24
- package/react/Viewer/Footer/Sharing.jsx +0 -60
- package/react/Viewer/Footer/helpers.js +0 -107
- package/react/Viewer/Footer/helpers.spec.js +0 -77
- package/react/Viewer/NoViewer/DownloadButton.jsx +0 -28
- package/react/Viewer/NoViewer/FileIcon.jsx +0 -46
- package/react/Viewer/NoViewer/NoViewer.jsx +0 -29
- package/react/Viewer/NoViewer/NoViewer.spec.jsx +0 -44
- package/react/Viewer/NoViewer/__snapshots__/NoViewer.spec.jsx.snap +0 -82
- package/react/Viewer/NoViewer/index.jsx +0 -1
- package/react/Viewer/Panel/ActionMenuDesktop.jsx +0 -66
- package/react/Viewer/Panel/ActionMenuMobile.jsx +0 -74
- package/react/Viewer/Panel/ActionMenuWrapper.jsx +0 -104
- package/react/Viewer/Panel/Certifications.jsx +0 -62
- package/react/Viewer/Panel/PanelContent.jsx +0 -49
- package/react/Viewer/Panel/Qualification.jsx +0 -114
- package/react/Viewer/Panel/QualificationListItemContact.jsx +0 -85
- package/react/Viewer/Panel/QualificationListItemDate.jsx +0 -77
- package/react/Viewer/Panel/QualificationListItemInformation.jsx +0 -68
- package/react/Viewer/Panel/QualificationListItemInformation.spec.jsx +0 -73
- package/react/Viewer/Panel/QualificationListItemOther.jsx +0 -61
- package/react/Viewer/Panel/QualificationListItemText.jsx +0 -30
- package/react/Viewer/Panel/getPanelBlocks.jsx +0 -56
- package/react/Viewer/Panel/getPanelBlocks.spec.jsx +0 -79
- package/react/Viewer/Panel/styles.styl +0 -13
- package/react/Viewer/Readme.md +0 -352
- package/react/Viewer/Viewer.jsx +0 -134
- package/react/Viewer/ViewerContainer.jsx +0 -169
- package/react/Viewer/ViewerExposer.js +0 -3
- package/react/Viewer/ViewerInformationsWrapper.jsx +0 -69
- package/react/Viewer/ViewerInformationsWrapper.spec.jsx +0 -63
- package/react/Viewer/ViewerWithCustomPanelAndFooter.jsx +0 -55
- package/react/Viewer/ViewersByFile/AudioViewer.jsx +0 -21
- package/react/Viewer/ViewersByFile/AudioViewer.spec.jsx +0 -39
- package/react/Viewer/ViewersByFile/BlankPaperViewer.jsx +0 -46
- package/react/Viewer/ViewersByFile/ImageViewer.jsx +0 -330
- package/react/Viewer/ViewersByFile/ImageViewer.spec.jsx +0 -70
- package/react/Viewer/ViewersByFile/NoNetworkViewer.jsx +0 -17
- package/react/Viewer/ViewersByFile/OnlyOfficeViewer.jsx +0 -28
- package/react/Viewer/ViewersByFile/PdfJsViewer.jsx +0 -210
- package/react/Viewer/ViewersByFile/PdfJsViewer.spec.jsx +0 -160
- package/react/Viewer/ViewersByFile/PdfMobileViewer.jsx +0 -106
- package/react/Viewer/ViewersByFile/PdfMobileViewer.spec.jsx +0 -76
- package/react/Viewer/ViewersByFile/ShortcutViewer.jsx +0 -38
- package/react/Viewer/ViewersByFile/ShortcutViewer.spec.jsx +0 -32
- package/react/Viewer/ViewersByFile/TextViewer.jsx +0 -126
- package/react/Viewer/ViewersByFile/TextViewer.spec.jsx +0 -118
- package/react/Viewer/ViewersByFile/VideoViewer.jsx +0 -13
- package/react/Viewer/ViewersByFile/VideoViewer.spec.jsx +0 -39
- package/react/Viewer/ViewersByFile/__snapshots__/AudioViewer.spec.jsx.snap +0 -43
- package/react/Viewer/ViewersByFile/__snapshots__/ShortcutViewer.spec.jsx.snap +0 -57
- package/react/Viewer/ViewersByFile/__snapshots__/TextViewer.spec.jsx.snap +0 -100
- package/react/Viewer/ViewersByFile/__snapshots__/VideoViewer.spec.jsx.snap +0 -19
- package/react/Viewer/ViewersByFile/styles.styl +0 -87
- package/react/Viewer/assets/IlluGenericNewPage.svg +0 -10
- package/react/Viewer/components/ExpirationAlert.jsx +0 -86
- package/react/Viewer/components/ExpirationAnnotation.jsx +0 -40
- package/react/Viewer/components/Footer.jsx +0 -13
- package/react/Viewer/components/InformationPanel.jsx +0 -26
- package/react/Viewer/components/Navigation.jsx +0 -39
- package/react/Viewer/components/PdfToolbarButton.jsx +0 -26
- package/react/Viewer/components/PrintButton.jsx +0 -90
- package/react/Viewer/components/Toolbar.jsx +0 -111
- package/react/Viewer/components/ToolbarButtons.jsx +0 -11
- package/react/Viewer/components/ToolbarFilePath.jsx +0 -61
- package/react/Viewer/components/ViewerByFile.jsx +0 -112
- package/react/Viewer/components/ViewerByFile.spec.jsx +0 -100
- package/react/Viewer/components/ViewerControls.jsx +0 -190
- package/react/Viewer/components/ViewerControls.spec.jsx +0 -54
- package/react/Viewer/components/ViewerSpinner.jsx +0 -17
- package/react/Viewer/components/styles.styl +0 -93
- package/react/Viewer/helpers.js +0 -131
- package/react/Viewer/helpers.spec.js +0 -136
- package/react/Viewer/hoc/withFileUrl.jsx +0 -93
- package/react/Viewer/hoc/withViewerLocales.jsx +0 -4
- package/react/Viewer/hooks/useReferencedContactName.jsx +0 -26
- package/react/Viewer/index.jsx +0 -12
- package/react/Viewer/locales/en.json +0 -66
- package/react/Viewer/locales/fr.json +0 -66
- package/react/Viewer/locales/index.js +0 -4
- package/react/Viewer/proptypes.js +0 -12
- package/react/Viewer/providers/ActionMenuProvider.jsx +0 -35
- package/react/Viewer/queries.js +0 -20
- package/react/Viewer/styles.styl +0 -22
- package/react/Viewer/vars.styl +0 -6
- package/transpiled/react/Viewer/Footer/BottomSheetContent.js +0 -28
- package/transpiled/react/Viewer/Footer/DownloadButton.js +0 -91
- package/transpiled/react/Viewer/Footer/FooterActionButtons.js +0 -21
- package/transpiled/react/Viewer/Footer/FooterContent.js +0 -98
- package/transpiled/react/Viewer/Footer/ForwardButton.js +0 -143
- package/transpiled/react/Viewer/Footer/ForwardOrDownloadButton.js +0 -25
- package/transpiled/react/Viewer/Footer/Sharing.js +0 -57
- package/transpiled/react/Viewer/Footer/helpers.js +0 -151
- package/transpiled/react/Viewer/NoViewer/DownloadButton.js +0 -34
- package/transpiled/react/Viewer/NoViewer/FileIcon.js +0 -57
- package/transpiled/react/Viewer/NoViewer/NoViewer.js +0 -49
- package/transpiled/react/Viewer/NoViewer/index.js +0 -1
- package/transpiled/react/Viewer/Panel/ActionMenuDesktop.js +0 -68
- package/transpiled/react/Viewer/Panel/ActionMenuMobile.js +0 -70
- package/transpiled/react/Viewer/Panel/ActionMenuWrapper.js +0 -129
- package/transpiled/react/Viewer/Panel/Certifications.js +0 -56
- package/transpiled/react/Viewer/Panel/PanelContent.js +0 -48
- package/transpiled/react/Viewer/Panel/Qualification.js +0 -119
- package/transpiled/react/Viewer/Panel/QualificationListItemContact.js +0 -96
- package/transpiled/react/Viewer/Panel/QualificationListItemDate.js +0 -64
- package/transpiled/react/Viewer/Panel/QualificationListItemInformation.js +0 -59
- package/transpiled/react/Viewer/Panel/QualificationListItemOther.js +0 -53
- package/transpiled/react/Viewer/Panel/QualificationListItemText.js +0 -29
- package/transpiled/react/Viewer/Panel/getPanelBlocks.js +0 -62
- package/transpiled/react/Viewer/Viewer.js +0 -172
- package/transpiled/react/Viewer/ViewerContainer.js +0 -189
- package/transpiled/react/Viewer/ViewerExposer.js +0 -2
- package/transpiled/react/Viewer/ViewerInformationsWrapper.js +0 -49
- package/transpiled/react/Viewer/ViewerWithCustomPanelAndFooter.js +0 -56
- package/transpiled/react/Viewer/ViewersByFile/AudioViewer.js +0 -41
- package/transpiled/react/Viewer/ViewersByFile/BlankPaperViewer.js +0 -74
- package/transpiled/react/Viewer/ViewersByFile/ImageViewer.js +0 -367
- package/transpiled/react/Viewer/ViewersByFile/NoNetworkViewer.js +0 -38
- package/transpiled/react/Viewer/ViewersByFile/OnlyOfficeViewer.js +0 -29
- package/transpiled/react/Viewer/ViewersByFile/PdfJsViewer.js +0 -254
- package/transpiled/react/Viewer/ViewersByFile/PdfMobileViewer.js +0 -153
- package/transpiled/react/Viewer/ViewersByFile/ShortcutViewer.js +0 -42
- package/transpiled/react/Viewer/ViewersByFile/TextViewer.js +0 -219
- package/transpiled/react/Viewer/ViewersByFile/VideoViewer.js +0 -33
- package/transpiled/react/Viewer/assets/IlluGenericNewPage.svg +0 -10
- package/transpiled/react/Viewer/components/ExpirationAlert.js +0 -100
- package/transpiled/react/Viewer/components/ExpirationAnnotation.js +0 -41
- package/transpiled/react/Viewer/components/Footer.js +0 -29
- package/transpiled/react/Viewer/components/InformationPanel.js +0 -23
- package/transpiled/react/Viewer/components/Navigation.js +0 -47
- package/transpiled/react/Viewer/components/PdfToolbarButton.js +0 -28
- package/transpiled/react/Viewer/components/PrintButton.js +0 -137
- package/transpiled/react/Viewer/components/Toolbar.js +0 -115
- package/transpiled/react/Viewer/components/ToolbarButtons.js +0 -9
- package/transpiled/react/Viewer/components/ToolbarFilePath.js +0 -71
- package/transpiled/react/Viewer/components/ViewerByFile.js +0 -105
- package/transpiled/react/Viewer/components/ViewerControls.js +0 -226
- package/transpiled/react/Viewer/components/ViewerSpinner.js +0 -17
- package/transpiled/react/Viewer/helpers.js +0 -147
- package/transpiled/react/Viewer/hoc/withFileUrl.js +0 -207
- package/transpiled/react/Viewer/hoc/withViewerLocales.js +0 -3
- package/transpiled/react/Viewer/hooks/useReferencedContactName.js +0 -32
- package/transpiled/react/Viewer/index.js +0 -11
- package/transpiled/react/Viewer/locales/index.js +0 -136
- package/transpiled/react/Viewer/proptypes.js +0 -14
- package/transpiled/react/Viewer/providers/ActionMenuProvider.js +0 -34
- package/transpiled/react/Viewer/queries.js +0 -26
- /package/react/{Viewer/providers/EncryptedProvider.jsx → providers/Encrypted/index.jsx} +0 -0
- /package/transpiled/react/{Viewer/providers/EncryptedProvider.js → providers/Encrypted/index.js} +0 -0
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import PropTypes from 'prop-types';
|
|
2
|
-
import React, { useMemo } from 'react';
|
|
3
|
-
import { isPlainText } from 'cozy-client/dist/models/file';
|
|
4
|
-
import { isMobile as isMobileDevice } from 'cozy-device-helper';
|
|
5
|
-
import withBreakpoints from "cozy-ui/transpiled/react/helpers/withBreakpoints";
|
|
6
|
-
import { FileDoctype } from "cozy-ui/transpiled/react/proptypes";
|
|
7
|
-
import NoViewer from "cozy-ui/transpiled/react/Viewer/NoViewer";
|
|
8
|
-
import AudioViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/AudioViewer";
|
|
9
|
-
import BlankPaperViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/BlankPaperViewer";
|
|
10
|
-
import ImageViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/ImageViewer";
|
|
11
|
-
import OnlyOfficeViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/OnlyOfficeViewer";
|
|
12
|
-
import PdfJsViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/PdfJsViewer";
|
|
13
|
-
import PdfMobileViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/PdfMobileViewer";
|
|
14
|
-
import ShortcutViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/ShortcutViewer";
|
|
15
|
-
import TextViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/TextViewer";
|
|
16
|
-
import VideoViewer from "cozy-ui/transpiled/react/Viewer/ViewersByFile/VideoViewer";
|
|
17
|
-
import { useEncrypted } from "cozy-ui/transpiled/react/Viewer/providers/EncryptedProvider";
|
|
18
|
-
|
|
19
|
-
var isBlankPaper = function isBlankPaper(doc) {
|
|
20
|
-
var _doc$metadata, _doc$metadata$paperPr;
|
|
21
|
-
|
|
22
|
-
return (_doc$metadata = doc.metadata) === null || _doc$metadata === void 0 ? void 0 : (_doc$metadata$paperPr = _doc$metadata.paperProps) === null || _doc$metadata$paperPr === void 0 ? void 0 : _doc$metadata$paperPr.isBlank;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
export var getViewerComponentName = function getViewerComponentName(_ref) {
|
|
26
|
-
var file = _ref.file,
|
|
27
|
-
isDesktop = _ref.isDesktop,
|
|
28
|
-
isOnlyOfficeEnabled = _ref.isOnlyOfficeEnabled;
|
|
29
|
-
|
|
30
|
-
switch (file.class) {
|
|
31
|
-
case 'shortcut':
|
|
32
|
-
return ShortcutViewer;
|
|
33
|
-
|
|
34
|
-
case 'image':
|
|
35
|
-
return ImageViewer;
|
|
36
|
-
|
|
37
|
-
case 'audio':
|
|
38
|
-
return AudioViewer;
|
|
39
|
-
|
|
40
|
-
case 'video':
|
|
41
|
-
return isMobileDevice() ? NoViewer : VideoViewer;
|
|
42
|
-
|
|
43
|
-
case 'pdf':
|
|
44
|
-
return isBlankPaper(file) ? BlankPaperViewer : isDesktop ? PdfJsViewer : PdfMobileViewer;
|
|
45
|
-
|
|
46
|
-
case 'text':
|
|
47
|
-
return isPlainText(file.mime, file.name) ? TextViewer : isOnlyOfficeEnabled ? OnlyOfficeViewer : NoViewer;
|
|
48
|
-
|
|
49
|
-
case 'slide':
|
|
50
|
-
return isOnlyOfficeEnabled ? OnlyOfficeViewer : NoViewer;
|
|
51
|
-
|
|
52
|
-
case 'spreadsheet':
|
|
53
|
-
return isOnlyOfficeEnabled ? OnlyOfficeViewer : NoViewer;
|
|
54
|
-
|
|
55
|
-
default:
|
|
56
|
-
return NoViewer;
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
var ViewerByFile = withBreakpoints()(function (_ref2) {
|
|
60
|
-
var _componentsProps$Only, _componentsProps$Only2;
|
|
61
|
-
|
|
62
|
-
var file = _ref2.file,
|
|
63
|
-
onClose = _ref2.onClose,
|
|
64
|
-
renderFallbackExtraContent = _ref2.renderFallbackExtraContent,
|
|
65
|
-
gestures = _ref2.gestures,
|
|
66
|
-
gesturesRef = _ref2.gesturesRef,
|
|
67
|
-
onSwipe = _ref2.onSwipe,
|
|
68
|
-
isDesktop = _ref2.breakpoints.isDesktop,
|
|
69
|
-
componentsProps = _ref2.componentsProps;
|
|
70
|
-
var isOnlyOfficeEnabled = componentsProps === null || componentsProps === void 0 ? void 0 : (_componentsProps$Only = componentsProps.OnlyOfficeViewer) === null || _componentsProps$Only === void 0 ? void 0 : _componentsProps$Only.isEnabled;
|
|
71
|
-
var onlyOfficeOpener = componentsProps === null || componentsProps === void 0 ? void 0 : (_componentsProps$Only2 = componentsProps.OnlyOfficeViewer) === null || _componentsProps$Only2 === void 0 ? void 0 : _componentsProps$Only2.opener;
|
|
72
|
-
|
|
73
|
-
var _useEncrypted = useEncrypted(),
|
|
74
|
-
url = _useEncrypted.url;
|
|
75
|
-
|
|
76
|
-
var ComponentName = useMemo(function () {
|
|
77
|
-
return getViewerComponentName({
|
|
78
|
-
file: file,
|
|
79
|
-
isDesktop: isDesktop,
|
|
80
|
-
isOnlyOfficeEnabled: isOnlyOfficeEnabled
|
|
81
|
-
});
|
|
82
|
-
}, [file, isDesktop, isOnlyOfficeEnabled]);
|
|
83
|
-
return /*#__PURE__*/React.createElement(ComponentName, {
|
|
84
|
-
file: file,
|
|
85
|
-
url: url,
|
|
86
|
-
onClose: onClose,
|
|
87
|
-
renderFallbackExtraContent: renderFallbackExtraContent,
|
|
88
|
-
gestures: gestures,
|
|
89
|
-
gesturesRef: gesturesRef,
|
|
90
|
-
onSwipe: onSwipe,
|
|
91
|
-
onlyOfficeOpener: onlyOfficeOpener
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
ViewerByFile.propTypes = {
|
|
95
|
-
file: FileDoctype.isRequired,
|
|
96
|
-
onClose: PropTypes.func.isRequired,
|
|
97
|
-
renderFallbackExtraContent: PropTypes.func,
|
|
98
|
-
// gestures, gesturesRef and onSwipe are got from ViewerControls
|
|
99
|
-
gestures: PropTypes.object,
|
|
100
|
-
gesturesRef: PropTypes.object,
|
|
101
|
-
onSwipe: PropTypes.func,
|
|
102
|
-
componentsProps: PropTypes.object
|
|
103
|
-
};
|
|
104
|
-
ViewerByFile.displayName = 'ViewerByFile';
|
|
105
|
-
export default ViewerByFile;
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
-
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
4
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
5
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
6
|
-
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
7
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
8
|
-
|
|
9
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
10
|
-
|
|
11
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
12
|
-
|
|
13
|
-
import cx from 'classnames';
|
|
14
|
-
import Hammer from 'hammerjs';
|
|
15
|
-
import flow from 'lodash/flow';
|
|
16
|
-
import PropTypes from 'prop-types';
|
|
17
|
-
import React, { Component } from 'react';
|
|
18
|
-
import { infoWidth } from "cozy-ui/transpiled/react/Viewer/components/InformationPanel";
|
|
19
|
-
import Navigation from "cozy-ui/transpiled/react/Viewer/components/Navigation";
|
|
20
|
-
import Toolbar from "cozy-ui/transpiled/react/Viewer/components/Toolbar";
|
|
21
|
-
var styles = {
|
|
22
|
-
"viewer-nav": "styles__viewer-nav___1MSd7",
|
|
23
|
-
"viewer-nav--visible": "styles__viewer-nav--visible___h_KJD",
|
|
24
|
-
"viewer-nav--previous": "styles__viewer-nav--previous___WOwzv",
|
|
25
|
-
"viewer-nav-arrow": "styles__viewer-nav-arrow___3_d1_",
|
|
26
|
-
"viewer-nav--next": "styles__viewer-nav--next___1ah-4",
|
|
27
|
-
"viewer-controls": "styles__viewer-controls___1BYEX",
|
|
28
|
-
"--expanded": "styles__--expanded___2NoA-",
|
|
29
|
-
"viewer-controls--display-content-top": "styles__viewer-controls--display-content-top___3I1xq",
|
|
30
|
-
"viewer-toolbar": "styles__viewer-toolbar___2zPR7",
|
|
31
|
-
"viewer-toolbar--hidden": "styles__viewer-toolbar--hidden___3r3Sj",
|
|
32
|
-
"viewer-footer": "styles__viewer-footer___2ieQS"
|
|
33
|
-
};
|
|
34
|
-
import { toolbarPropsPropType } from "cozy-ui/transpiled/react/Viewer";
|
|
35
|
-
import withBreakpoints from "cozy-ui/transpiled/react/helpers/withBreakpoints";
|
|
36
|
-
import { withStyles } from "cozy-ui/transpiled/react/styles";
|
|
37
|
-
import { isValidForPanel } from "cozy-ui/transpiled/react/Viewer/helpers";
|
|
38
|
-
var ACTIONS_HIDE_DELAY = 3000;
|
|
39
|
-
|
|
40
|
-
var customStyles = function customStyles() {
|
|
41
|
-
return {
|
|
42
|
-
viewerControlsWithInfo: {
|
|
43
|
-
width: "calc(100% - ".concat(infoWidth, ") !important")
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
var ViewerControls = /*#__PURE__*/function (_Component) {
|
|
49
|
-
_inherits(ViewerControls, _Component);
|
|
50
|
-
|
|
51
|
-
var _super = _createSuper(ViewerControls);
|
|
52
|
-
|
|
53
|
-
function ViewerControls() {
|
|
54
|
-
var _this;
|
|
55
|
-
|
|
56
|
-
_classCallCheck(this, ViewerControls);
|
|
57
|
-
|
|
58
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
59
|
-
args[_key] = arguments[_key];
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
63
|
-
|
|
64
|
-
_defineProperty(_assertThisInitialized(_this), "state", {
|
|
65
|
-
hidden: false,
|
|
66
|
-
gestures: null
|
|
67
|
-
});
|
|
68
|
-
|
|
69
|
-
_defineProperty(_assertThisInitialized(_this), "_mounted", false);
|
|
70
|
-
|
|
71
|
-
_defineProperty(_assertThisInitialized(_this), "showControls", function () {
|
|
72
|
-
if (_this._mounted) {
|
|
73
|
-
_this.setState({
|
|
74
|
-
hidden: false
|
|
75
|
-
});
|
|
76
|
-
|
|
77
|
-
_this.hideAfterDelay();
|
|
78
|
-
|
|
79
|
-
document.removeEventListener('mousemove', _this.showControls);
|
|
80
|
-
document.addEventListener('mousemove', _this.hideAfterDelay);
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
|
|
84
|
-
_defineProperty(_assertThisInitialized(_this), "hideControls", function () {
|
|
85
|
-
if (_this._mounted) {
|
|
86
|
-
_this.setState({
|
|
87
|
-
hidden: true
|
|
88
|
-
});
|
|
89
|
-
|
|
90
|
-
document.removeEventListener('mousemove', _this.hideAfterDelay);
|
|
91
|
-
document.addEventListener('mousemove', _this.showControls);
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
_defineProperty(_assertThisInitialized(_this), "hideAfterDelay", function () {
|
|
96
|
-
clearTimeout(_this.hideTimeout);
|
|
97
|
-
_this.hideTimeout = setTimeout(function () {
|
|
98
|
-
_this.hideControls();
|
|
99
|
-
}, ACTIONS_HIDE_DELAY);
|
|
100
|
-
});
|
|
101
|
-
|
|
102
|
-
_defineProperty(_assertThisInitialized(_this), "onSwipe", function (e) {
|
|
103
|
-
if (e.direction === Hammer.DIRECTION_LEFT) _this.props.onNext();else if (e.direction === Hammer.DIRECTION_RIGHT) _this.props.onPrevious();
|
|
104
|
-
});
|
|
105
|
-
|
|
106
|
-
_defineProperty(_assertThisInitialized(_this), "initGestures", function () {
|
|
107
|
-
var gestures = new Hammer(_this.wrapped, _this.props.breakpoints.isDesktop ? {
|
|
108
|
-
cssProps: {
|
|
109
|
-
userSelect: 'auto'
|
|
110
|
-
}
|
|
111
|
-
} : {});
|
|
112
|
-
if (!_this.props.breakpoints.isDesktop) gestures.on('swipe', _this.onSwipe);
|
|
113
|
-
return gestures;
|
|
114
|
-
});
|
|
115
|
-
|
|
116
|
-
return _this;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
_createClass(ViewerControls, [{
|
|
120
|
-
key: "componentDidMount",
|
|
121
|
-
value: function componentDidMount() {
|
|
122
|
-
this._mounted = true;
|
|
123
|
-
clearTimeout(this.hideTimeout);
|
|
124
|
-
this.hideAfterDelay();
|
|
125
|
-
var gestures = this.initGestures();
|
|
126
|
-
this.setState({
|
|
127
|
-
gestures: gestures
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
}, {
|
|
131
|
-
key: "componentWillUnmount",
|
|
132
|
-
value: function componentWillUnmount() {
|
|
133
|
-
this._mounted = false;
|
|
134
|
-
clearTimeout(this.hideTimeout);
|
|
135
|
-
if (this.state.gestures) this.state.gestures.destroy();
|
|
136
|
-
}
|
|
137
|
-
}, {
|
|
138
|
-
key: "renderChildren",
|
|
139
|
-
value: function renderChildren(children) {
|
|
140
|
-
var _this2 = this;
|
|
141
|
-
|
|
142
|
-
if (!children) return null;
|
|
143
|
-
return React.Children.map(children, function (child) {
|
|
144
|
-
var _child$type, _child$type2;
|
|
145
|
-
|
|
146
|
-
if ((child === null || child === void 0 ? void 0 : (_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.name) === 'ViewerByFile' || (child === null || child === void 0 ? void 0 : (_child$type2 = child.type) === null || _child$type2 === void 0 ? void 0 : _child$type2.displayName) === 'ViewerByFile') {
|
|
147
|
-
return /*#__PURE__*/React.cloneElement(child, {
|
|
148
|
-
gestures: _this2.state.gestures,
|
|
149
|
-
gesturesRef: _this2.wrapped,
|
|
150
|
-
onSwipe: _this2.onSwipe
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
|
-
}
|
|
155
|
-
}, {
|
|
156
|
-
key: "render",
|
|
157
|
-
value: function render() {
|
|
158
|
-
var _cx,
|
|
159
|
-
_this3 = this;
|
|
160
|
-
|
|
161
|
-
var _this$props = this.props,
|
|
162
|
-
file = _this$props.file,
|
|
163
|
-
onClose = _this$props.onClose,
|
|
164
|
-
hasPrevious = _this$props.hasPrevious,
|
|
165
|
-
hasNext = _this$props.hasNext,
|
|
166
|
-
onPrevious = _this$props.onPrevious,
|
|
167
|
-
onNext = _this$props.onNext,
|
|
168
|
-
expanded = _this$props.expanded,
|
|
169
|
-
toolbarProps = _this$props.toolbarProps,
|
|
170
|
-
showNavigation = _this$props.showNavigation,
|
|
171
|
-
showInfoPanel = _this$props.showInfoPanel,
|
|
172
|
-
children = _this$props.children,
|
|
173
|
-
classes = _this$props.classes,
|
|
174
|
-
isDesktop = _this$props.breakpoints.isDesktop;
|
|
175
|
-
var showToolbar = toolbarProps.showToolbar,
|
|
176
|
-
showClose = toolbarProps.showClose,
|
|
177
|
-
toolbarRef = toolbarProps.toolbarRef,
|
|
178
|
-
showFilePath = toolbarProps.showFilePath;
|
|
179
|
-
var hidden = this.state.hidden;
|
|
180
|
-
var shouldDisplayContentTop = isValidForPanel({
|
|
181
|
-
file: file
|
|
182
|
-
});
|
|
183
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
184
|
-
className: cx(styles['viewer-controls'], (_cx = {}, _defineProperty(_cx, styles['viewer-controls--expanded'], expanded), _defineProperty(_cx, styles['viewer-controls--display-content-top'], shouldDisplayContentTop), _defineProperty(_cx, classes.viewerControlsWithInfo, showInfoPanel), _cx)),
|
|
185
|
-
ref: function ref(wrapped) {
|
|
186
|
-
_this3.wrapped = wrapped;
|
|
187
|
-
}
|
|
188
|
-
}, showToolbar && /*#__PURE__*/React.createElement(Toolbar, {
|
|
189
|
-
toolbarRef: toolbarRef,
|
|
190
|
-
file: file,
|
|
191
|
-
showFilePath: showFilePath,
|
|
192
|
-
onMouseEnter: this.showControls,
|
|
193
|
-
onMouseLeave: this.hideControls,
|
|
194
|
-
onClose: showClose && onClose
|
|
195
|
-
}, children), showNavigation && isDesktop && hasPrevious && /*#__PURE__*/React.createElement(Navigation, {
|
|
196
|
-
className: styles['viewer-nav--previous'],
|
|
197
|
-
hidden: hidden,
|
|
198
|
-
onMouseEnter: this.showControls,
|
|
199
|
-
onMouseLeave: this.hideControls,
|
|
200
|
-
onClick: onPrevious
|
|
201
|
-
}), this.renderChildren(children), showNavigation && isDesktop && hasNext && /*#__PURE__*/React.createElement(Navigation, {
|
|
202
|
-
className: styles['viewer-nav--next'],
|
|
203
|
-
hidden: hidden,
|
|
204
|
-
onMouseEnter: this.showControls,
|
|
205
|
-
onMouseLeave: this.hideControls,
|
|
206
|
-
onClick: onNext
|
|
207
|
-
}));
|
|
208
|
-
}
|
|
209
|
-
}]);
|
|
210
|
-
|
|
211
|
-
return ViewerControls;
|
|
212
|
-
}(Component);
|
|
213
|
-
|
|
214
|
-
ViewerControls.propTypes = {
|
|
215
|
-
file: PropTypes.object.isRequired,
|
|
216
|
-
onClose: PropTypes.func.isRequired,
|
|
217
|
-
hasPrevious: PropTypes.bool.isRequired,
|
|
218
|
-
hasNext: PropTypes.bool.isRequired,
|
|
219
|
-
onPrevious: PropTypes.func.isRequired,
|
|
220
|
-
onNext: PropTypes.func.isRequired,
|
|
221
|
-
expanded: PropTypes.bool.isRequired,
|
|
222
|
-
toolbarProps: PropTypes.shape(toolbarPropsPropType),
|
|
223
|
-
showNavigation: PropTypes.bool.isRequired,
|
|
224
|
-
showInfoPanel: PropTypes.bool
|
|
225
|
-
};
|
|
226
|
-
export default flow(withBreakpoints(), withStyles(customStyles))(ViewerControls);
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import Spinner from "cozy-ui/transpiled/react/Spinner";
|
|
4
|
-
import withBreakpoints from "cozy-ui/transpiled/react/helpers/withBreakpoints";
|
|
5
|
-
|
|
6
|
-
var ViewerSpinner = function ViewerSpinner(_ref) {
|
|
7
|
-
var isDesktop = _ref.breakpoints.isDesktop;
|
|
8
|
-
return /*#__PURE__*/React.createElement(Spinner, _extends({
|
|
9
|
-
size: "xxlarge",
|
|
10
|
-
middle: true,
|
|
11
|
-
noMargin: true
|
|
12
|
-
}, isDesktop && {
|
|
13
|
-
color: 'white'
|
|
14
|
-
}));
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
export default withBreakpoints()(ViewerSpinner);
|
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
3
|
-
|
|
4
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
5
|
-
|
|
6
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
7
|
-
|
|
8
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
9
|
-
import { generateWebLink } from 'cozy-client';
|
|
10
|
-
import { isEncrypted, isFromKonnector, hasQualifications, hasCertifications, normalize } from 'cozy-client/dist/models/file';
|
|
11
|
-
import { KNOWN_DATE_METADATA_NAMES, KNOWN_INFORMATION_METADATA_NAMES, KNOWN_BILLS_ATTRIBUTES_NAMES } from 'cozy-client/dist/models/paper';
|
|
12
|
-
export var getCurrentModel = function getCurrentModel(metadataName) {
|
|
13
|
-
if (KNOWN_DATE_METADATA_NAMES.includes(metadataName) || KNOWN_INFORMATION_METADATA_NAMES.includes(metadataName) || KNOWN_BILLS_ATTRIBUTES_NAMES.includes(metadataName)) {
|
|
14
|
-
return 'information';
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
if (metadataName === 'contact') return 'contact';
|
|
18
|
-
if (metadataName === 'page') return 'page';
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* @typedef {object} Reference
|
|
22
|
-
* @property {string} id - id of the document
|
|
23
|
-
* @property {string} type - doctype of the document
|
|
24
|
-
*/
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Checks if the file matches one of the following conditions:
|
|
28
|
-
* - Is certified
|
|
29
|
-
* - Is Qualified
|
|
30
|
-
* - From a Connector
|
|
31
|
-
*
|
|
32
|
-
* @param {object} param
|
|
33
|
-
* @param {IOCozyFile} param.file
|
|
34
|
-
* @returns {boolean}
|
|
35
|
-
*/
|
|
36
|
-
|
|
37
|
-
export var isValidForPanel = function isValidForPanel(_ref) {
|
|
38
|
-
var file = _ref.file;
|
|
39
|
-
return hasCertifications(file) || hasQualifications(file) || isFromKonnector(file);
|
|
40
|
-
};
|
|
41
|
-
export var downloadFile = /*#__PURE__*/function () {
|
|
42
|
-
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref2) {
|
|
43
|
-
var client, file, url;
|
|
44
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
45
|
-
while (1) {
|
|
46
|
-
switch (_context.prev = _context.next) {
|
|
47
|
-
case 0:
|
|
48
|
-
client = _ref2.client, file = _ref2.file, url = _ref2.url;
|
|
49
|
-
|
|
50
|
-
if (!isEncrypted(file)) {
|
|
51
|
-
_context.next = 3;
|
|
52
|
-
break;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
return _context.abrupt("return", client.collection('io.cozy.files').forceFileDownload(url, file.name));
|
|
56
|
-
|
|
57
|
-
case 3:
|
|
58
|
-
return _context.abrupt("return", client.collection('io.cozy.files').download(file));
|
|
59
|
-
|
|
60
|
-
case 4:
|
|
61
|
-
case "end":
|
|
62
|
-
return _context.stop();
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}, _callee);
|
|
66
|
-
}));
|
|
67
|
-
|
|
68
|
-
return function downloadFile(_x) {
|
|
69
|
-
return _ref3.apply(this, arguments);
|
|
70
|
-
};
|
|
71
|
-
}();
|
|
72
|
-
export var isFileEncrypted = function isFileEncrypted(file) {
|
|
73
|
-
return isEncrypted(file);
|
|
74
|
-
};
|
|
75
|
-
export var formatDate = function formatDate(_ref4) {
|
|
76
|
-
var f = _ref4.f,
|
|
77
|
-
lang = _ref4.lang,
|
|
78
|
-
date = _ref4.date;
|
|
79
|
-
|
|
80
|
-
if (lang === 'en') {
|
|
81
|
-
return f(date, 'MM/DD/YYYY');
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
return f(date, 'DD/MM/YYYY');
|
|
85
|
-
};
|
|
86
|
-
/**
|
|
87
|
-
* @param {{ information: string, page: string }} editPathByModelProps
|
|
88
|
-
* @param {string} currentModel
|
|
89
|
-
* @param {string} name
|
|
90
|
-
* @returns {string}
|
|
91
|
-
*/
|
|
92
|
-
|
|
93
|
-
export var buildEditAttributePath = function buildEditAttributePath(editPathByModelProps, currentModel, name) {
|
|
94
|
-
var _currentPath$replace;
|
|
95
|
-
|
|
96
|
-
var currentPath = editPathByModelProps[currentModel];
|
|
97
|
-
return (_currentPath$replace = currentPath === null || currentPath === void 0 ? void 0 : currentPath.replace(/__NAME__/, name)) !== null && _currentPath$replace !== void 0 ? _currentPath$replace : '';
|
|
98
|
-
};
|
|
99
|
-
export var isEditableAttribute = function isEditableAttribute(name, file) {
|
|
100
|
-
var isNotEditableAttributes = ['datetime', 'qualification'];
|
|
101
|
-
return !isNotEditableAttributes.includes(name) && (name === 'issueDate' && !isFromKonnector(file) || name !== 'issueDate');
|
|
102
|
-
};
|
|
103
|
-
export var normalizeAndSpreadAttributes = function normalizeAndSpreadAttributes(rawFile) {
|
|
104
|
-
var normalizedFile = normalize(rawFile);
|
|
105
|
-
return _objectSpread(_objectSpread({}, normalizedFile), normalizedFile === null || normalizedFile === void 0 ? void 0 : normalizedFile.attributes);
|
|
106
|
-
};
|
|
107
|
-
/**
|
|
108
|
-
* Return a web link to an application in the Cozy environment with the specified path
|
|
109
|
-
* @param {object} param
|
|
110
|
-
* @param {CozyClient} param.client - Instance of CozyClient
|
|
111
|
-
* @param {string} param.slug - Slug of the application
|
|
112
|
-
* @param {string} param.path - Path into the application
|
|
113
|
-
* @returns {string} web link
|
|
114
|
-
*/
|
|
115
|
-
|
|
116
|
-
export var makeWebLink = function makeWebLink(_ref5) {
|
|
117
|
-
var client = _ref5.client,
|
|
118
|
-
slug = _ref5.slug,
|
|
119
|
-
path = _ref5.path;
|
|
120
|
-
|
|
121
|
-
try {
|
|
122
|
-
var cozyURL = new URL(client.getStackClient().uri);
|
|
123
|
-
|
|
124
|
-
var _client$getInstanceOp = client.getInstanceOptions(),
|
|
125
|
-
subDomainType = _client$getInstanceOp.subdomain;
|
|
126
|
-
|
|
127
|
-
return generateWebLink({
|
|
128
|
-
pathname: '/',
|
|
129
|
-
cozyUrl: cozyURL.origin,
|
|
130
|
-
slug: slug,
|
|
131
|
-
hash: path,
|
|
132
|
-
subDomainType: subDomainType
|
|
133
|
-
});
|
|
134
|
-
} catch (e) {
|
|
135
|
-
return null;
|
|
136
|
-
}
|
|
137
|
-
};
|
|
138
|
-
/**
|
|
139
|
-
* Remove the file name at the end of a path
|
|
140
|
-
* @param {string} path
|
|
141
|
-
* @returns {string} new path
|
|
142
|
-
*/
|
|
143
|
-
|
|
144
|
-
export var removeFilenameFromPath = function removeFilenameFromPath(path) {
|
|
145
|
-
var newPath = path.substring(0, path.lastIndexOf('/'));
|
|
146
|
-
return newPath === '' ? '/' : newPath;
|
|
147
|
-
};
|