box-ui-elements 23.4.0-beta.19 → 23.4.0-beta.20
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/dist/explorer.js +1 -1
- package/dist/picker.js +1 -1
- package/dist/preview.js +1 -1
- package/dist/sidebar.js +1 -1
- package/dist/uploader.js +1 -1
- package/es/elements/common/types/SidebarNavigation.js.flow +1 -1
- package/es/elements/common/types/SidebarNavigation.js.map +1 -1
- package/es/elements/content-sidebar/versions/StaticVersionSidebar.js +38 -8
- package/es/elements/content-sidebar/versions/StaticVersionSidebar.js.flow +104 -48
- package/es/elements/content-sidebar/versions/StaticVersionSidebar.js.map +1 -1
- package/es/elements/content-sidebar/versions/VersionsSidebar.js +37 -8
- package/es/elements/content-sidebar/versions/VersionsSidebar.js.flow +101 -48
- package/es/elements/content-sidebar/versions/VersionsSidebar.js.map +1 -1
- package/es/elements/content-sidebar/versions/VersionsSidebarContainer.js +2 -1
- package/es/elements/content-sidebar/versions/VersionsSidebarContainer.js.flow +3 -2
- package/es/elements/content-sidebar/versions/VersionsSidebarContainer.js.map +1 -1
- package/es/src/elements/common/types/SidebarNavigation.d.ts +1 -1
- package/package.json +3 -3
- package/src/elements/common/types/SidebarNavigation.js.flow +1 -1
- package/src/elements/common/types/SidebarNavigation.ts +1 -1
- package/src/elements/content-sidebar/versions/StaticVersionSidebar.js +104 -48
- package/src/elements/content-sidebar/versions/VersionsSidebar.js +101 -48
- package/src/elements/content-sidebar/versions/VersionsSidebarContainer.js +3 -2
- package/src/elements/content-sidebar/versions/__tests__/StaticVersionSidebar.test.js +56 -2
- package/src/elements/content-sidebar/versions/__tests__/VersionsSidebar.test.js +50 -1
- package/src/elements/content-sidebar/versions/__tests__/__snapshots__/VersionsSidebarContainer.test.js.snap +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SidebarNavigation.js","names":["ViewType","FeedEntryType"],"sources":["../../../../src/elements/common/types/SidebarNavigation.ts"],"sourcesContent":["export enum ViewType {\n BOXAI = 'boxai',\n SKILLS = 'skills',\n ACTIVITY = 'activity',\n DETAILS = 'details',\n METADATA = 'metadata',\n DOCGEN = 'docgen',\n}\n\nexport enum FeedEntryType {\n ANNOTATIONS = 'annotations',\n COMMENTS = 'comments',\n TASKS = 'tasks',\n}\n\ntype VersionSidebarView = {\n sidebar: ViewType.ACTIVITY | ViewType.DETAILS;\n versionId: string;\n};\n\nexport type ActivityAnnotationsSidebarView = {\n sidebar: ViewType.ACTIVITY;\n activeFeedEntryType: FeedEntryType.ANNOTATIONS;\n fileVersionId: string;\n activeFeedEntryId: string;\n};\ntype ActivityCommentsSidebarView = {\n sidebar: ViewType.ACTIVITY;\n activeFeedEntryType: FeedEntryType.COMMENTS | FeedEntryType.TASKS;\n activeFeedEntryId: string;\n};\n\nexport type SidebarNavigation =\n | {\n sidebar: ViewType;\n }\n | VersionSidebarView\n | ActivityCommentsSidebarView\n | ActivityAnnotationsSidebarView;\n\nexport type InternalSidebarNavigation = SidebarNavigation & {\n open
|
|
1
|
+
{"version":3,"file":"SidebarNavigation.js","names":["ViewType","FeedEntryType"],"sources":["../../../../src/elements/common/types/SidebarNavigation.ts"],"sourcesContent":["export enum ViewType {\n BOXAI = 'boxai',\n SKILLS = 'skills',\n ACTIVITY = 'activity',\n DETAILS = 'details',\n METADATA = 'metadata',\n DOCGEN = 'docgen',\n}\n\nexport enum FeedEntryType {\n ANNOTATIONS = 'annotations',\n COMMENTS = 'comments',\n TASKS = 'tasks',\n}\n\ntype VersionSidebarView = {\n sidebar: ViewType.ACTIVITY | ViewType.DETAILS;\n versionId: string;\n};\n\nexport type ActivityAnnotationsSidebarView = {\n sidebar: ViewType.ACTIVITY;\n activeFeedEntryType: FeedEntryType.ANNOTATIONS;\n fileVersionId: string;\n activeFeedEntryId: string;\n};\ntype ActivityCommentsSidebarView = {\n sidebar: ViewType.ACTIVITY;\n activeFeedEntryType: FeedEntryType.COMMENTS | FeedEntryType.TASKS;\n activeFeedEntryId: string;\n};\n\nexport type SidebarNavigation =\n | {\n sidebar: ViewType;\n }\n | VersionSidebarView\n | ActivityCommentsSidebarView\n | ActivityAnnotationsSidebarView;\n\nexport type InternalSidebarNavigation = SidebarNavigation & {\n open?: boolean;\n};\n\nexport type SidebarNavigationHandler = (sidebar: SidebarNavigation, replace?: boolean) => void;\n\nexport type InternalSidebarNavigationHandler = (sidebar: InternalSidebarNavigation, replace?: boolean) => void;\n"],"mappings":"AAAA,WAAYA,QAAQ,0BAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAARA,QAAQ;EAAA,OAARA,QAAQ;AAAA;AASpB,WAAYC,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA","ignoreList":[]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
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); }
|
|
1
2
|
/**
|
|
2
3
|
*
|
|
3
4
|
* @file Static Versions Sidebar component
|
|
@@ -14,10 +15,17 @@ import { LoadingIndicatorWrapper } from '../../../components/loading-indicator';
|
|
|
14
15
|
import VersionsMenu from './VersionsMenu';
|
|
15
16
|
import messages from './messages';
|
|
16
17
|
import './StaticVersionsSidebar.scss';
|
|
17
|
-
const
|
|
18
|
+
const {
|
|
19
|
+
useCallback
|
|
20
|
+
} = React;
|
|
21
|
+
const StaticVersionsContent = ({
|
|
22
|
+
history,
|
|
23
|
+
internalSidebarNavigation,
|
|
24
|
+
internalSidebarNavigationHandler,
|
|
18
25
|
isLoading,
|
|
19
26
|
onUpgradeClick,
|
|
20
|
-
parentName
|
|
27
|
+
parentName,
|
|
28
|
+
routerDisabled
|
|
21
29
|
}) => {
|
|
22
30
|
const versionTimestamp = new Date();
|
|
23
31
|
versionTimestamp.setDate(versionTimestamp.getDate() - 1);
|
|
@@ -36,9 +44,16 @@ const StaticVersionsSidebar = ({
|
|
|
36
44
|
uploader_display_name: 'John Doe'
|
|
37
45
|
};
|
|
38
46
|
});
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
47
|
+
const handleBackClick = useCallback(() => {
|
|
48
|
+
if (routerDisabled && internalSidebarNavigationHandler) {
|
|
49
|
+
internalSidebarNavigationHandler({
|
|
50
|
+
sidebar: parentName
|
|
51
|
+
});
|
|
52
|
+
} else if (!routerDisabled && history) {
|
|
53
|
+
history.push(`/${parentName}`);
|
|
54
|
+
}
|
|
55
|
+
}, [parentName, routerDisabled, internalSidebarNavigationHandler, history]);
|
|
56
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
42
57
|
className: "bcs-StaticVersionSidebar",
|
|
43
58
|
role: "tabpanel",
|
|
44
59
|
"data-resin-component": "preview",
|
|
@@ -49,7 +64,7 @@ const StaticVersionsSidebar = ({
|
|
|
49
64
|
className: "bcs-StaticVersionSidebar-title"
|
|
50
65
|
}, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BackButton, {
|
|
51
66
|
"data-resin-target": "back",
|
|
52
|
-
onClick:
|
|
67
|
+
onClick: handleBackClick
|
|
53
68
|
}), /*#__PURE__*/React.createElement(FormattedMessage, messages.versionsTitle)))), /*#__PURE__*/React.createElement("div", {
|
|
54
69
|
className: "bcs-StaticVersionSidebar-content-wrapper"
|
|
55
70
|
}, /*#__PURE__*/React.createElement(LoadingIndicatorWrapper, {
|
|
@@ -60,7 +75,9 @@ const StaticVersionsSidebar = ({
|
|
|
60
75
|
versions: versions,
|
|
61
76
|
fileId: "1",
|
|
62
77
|
versionCount: 3,
|
|
63
|
-
versionLimit: 3
|
|
78
|
+
versionLimit: 3,
|
|
79
|
+
routerDisabled: routerDisabled,
|
|
80
|
+
internalSidebarNavigation: internalSidebarNavigation
|
|
64
81
|
}))), /*#__PURE__*/React.createElement("div", {
|
|
65
82
|
className: "bcs-StaticVersionSidebar-upsell-wrapper"
|
|
66
83
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -74,7 +91,20 @@ const StaticVersionsSidebar = ({
|
|
|
74
91
|
"data-resin-target": "versioning_error_upgrade_cta",
|
|
75
92
|
onClick: onUpgradeClick,
|
|
76
93
|
type: "button"
|
|
77
|
-
}, /*#__PURE__*/React.createElement(FormattedMessage, messages.upgradeButton)))))
|
|
94
|
+
}, /*#__PURE__*/React.createElement(FormattedMessage, messages.upgradeButton)))));
|
|
95
|
+
};
|
|
96
|
+
const StaticVersionsSidebar = props => {
|
|
97
|
+
const {
|
|
98
|
+
routerDisabled
|
|
99
|
+
} = props;
|
|
100
|
+
if (routerDisabled) {
|
|
101
|
+
return /*#__PURE__*/React.createElement(StaticVersionsContent, props);
|
|
102
|
+
}
|
|
103
|
+
return /*#__PURE__*/React.createElement(Route, null, ({
|
|
104
|
+
history
|
|
105
|
+
}) => /*#__PURE__*/React.createElement(StaticVersionsContent, _extends({}, props, {
|
|
106
|
+
history: history
|
|
107
|
+
})));
|
|
78
108
|
};
|
|
79
109
|
export default StaticVersionsSidebar;
|
|
80
110
|
//# sourceMappingURL=StaticVersionSidebar.js.map
|
|
@@ -14,18 +14,46 @@ import BackButton from '../../common/back-button';
|
|
|
14
14
|
import PrimaryButton from '../../../components/primary-button';
|
|
15
15
|
import { LoadingIndicatorWrapper } from '../../../components/loading-indicator';
|
|
16
16
|
import VersionsMenu from './VersionsMenu';
|
|
17
|
+
import type {
|
|
18
|
+
InternalSidebarNavigation,
|
|
19
|
+
InternalSidebarNavigationHandler,
|
|
20
|
+
ViewTypeValues,
|
|
21
|
+
} from '../../common/types/SidebarNavigation';
|
|
17
22
|
|
|
18
23
|
import messages from './messages';
|
|
19
24
|
|
|
20
25
|
import './StaticVersionsSidebar.scss';
|
|
21
26
|
|
|
27
|
+
const { useCallback } = React;
|
|
28
|
+
|
|
22
29
|
type Props = {
|
|
30
|
+
internalSidebarNavigation?: InternalSidebarNavigation,
|
|
31
|
+
internalSidebarNavigationHandler?: InternalSidebarNavigationHandler,
|
|
32
|
+
isLoading: boolean,
|
|
33
|
+
onUpgradeClick: () => void,
|
|
34
|
+
parentName: ViewTypeValues,
|
|
35
|
+
routerDisabled?: boolean,
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
type StaticVersionsContentProps = {
|
|
39
|
+
history?: any,
|
|
40
|
+
internalSidebarNavigation?: InternalSidebarNavigation,
|
|
41
|
+
internalSidebarNavigationHandler?: InternalSidebarNavigationHandler,
|
|
23
42
|
isLoading: boolean,
|
|
24
43
|
onUpgradeClick: () => void,
|
|
25
|
-
parentName:
|
|
44
|
+
parentName: ViewTypeValues,
|
|
45
|
+
routerDisabled?: boolean,
|
|
26
46
|
};
|
|
27
47
|
|
|
28
|
-
const
|
|
48
|
+
const StaticVersionsContent = ({
|
|
49
|
+
history,
|
|
50
|
+
internalSidebarNavigation,
|
|
51
|
+
internalSidebarNavigationHandler,
|
|
52
|
+
isLoading,
|
|
53
|
+
onUpgradeClick,
|
|
54
|
+
parentName,
|
|
55
|
+
routerDisabled,
|
|
56
|
+
}: StaticVersionsContentProps): React.Node => {
|
|
29
57
|
const versionTimestamp = new Date();
|
|
30
58
|
versionTimestamp.setDate(versionTimestamp.getDate() - 1);
|
|
31
59
|
|
|
@@ -45,55 +73,83 @@ const StaticVersionsSidebar = ({ isLoading, onUpgradeClick, parentName }: Props)
|
|
|
45
73
|
};
|
|
46
74
|
});
|
|
47
75
|
|
|
76
|
+
const handleBackClick = useCallback(() => {
|
|
77
|
+
if (routerDisabled && internalSidebarNavigationHandler) {
|
|
78
|
+
internalSidebarNavigationHandler({ sidebar: parentName });
|
|
79
|
+
} else if (!routerDisabled && history) {
|
|
80
|
+
history.push(`/${parentName}`);
|
|
81
|
+
}
|
|
82
|
+
}, [parentName, routerDisabled, internalSidebarNavigationHandler, history]);
|
|
83
|
+
|
|
48
84
|
return (
|
|
49
|
-
<
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
85
|
+
<div
|
|
86
|
+
className="bcs-StaticVersionSidebar"
|
|
87
|
+
role="tabpanel"
|
|
88
|
+
data-resin-component="preview"
|
|
89
|
+
data-resin-feature="versions"
|
|
90
|
+
>
|
|
91
|
+
<div className="bcs-StaticVersionSidebar-header">
|
|
92
|
+
<h3 className="bcs-StaticVersionSidebar-title">
|
|
93
|
+
<>
|
|
94
|
+
<BackButton
|
|
95
|
+
data-resin-target="back"
|
|
96
|
+
onClick={handleBackClick}
|
|
97
|
+
/>
|
|
98
|
+
<FormattedMessage {...messages.versionsTitle} />
|
|
99
|
+
</>
|
|
100
|
+
</h3>
|
|
101
|
+
</div>
|
|
102
|
+
|
|
103
|
+
<div className="bcs-StaticVersionSidebar-content-wrapper">
|
|
104
|
+
<LoadingIndicatorWrapper
|
|
105
|
+
className="bcs-StaticVersionSidebar-content"
|
|
106
|
+
crawlerPosition="top"
|
|
107
|
+
isLoading={isLoading}
|
|
56
108
|
>
|
|
57
|
-
<
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
<PrimaryButton
|
|
86
|
-
className="bcs-StaticVersionSidebar-upsell-button"
|
|
87
|
-
data-resin-target="versioning_error_upgrade_cta"
|
|
88
|
-
onClick={onUpgradeClick}
|
|
89
|
-
type="button"
|
|
90
|
-
>
|
|
91
|
-
<FormattedMessage {...messages.upgradeButton} />
|
|
92
|
-
</PrimaryButton>
|
|
93
|
-
</div>
|
|
94
|
-
</div>
|
|
109
|
+
<VersionsMenu
|
|
110
|
+
versions={versions}
|
|
111
|
+
fileId="1"
|
|
112
|
+
versionCount={3}
|
|
113
|
+
versionLimit={3}
|
|
114
|
+
routerDisabled={routerDisabled}
|
|
115
|
+
internalSidebarNavigation={internalSidebarNavigation}
|
|
116
|
+
/>
|
|
117
|
+
</LoadingIndicatorWrapper>
|
|
118
|
+
</div>
|
|
119
|
+
|
|
120
|
+
<div className="bcs-StaticVersionSidebar-upsell-wrapper">
|
|
121
|
+
<div className="bcs-StaticVersionSidebar-upsell">
|
|
122
|
+
<BoxDrive140 className="bcs-StaticVersionSidebar-upsell-icon" />
|
|
123
|
+
<p className="bcs-StaticVersionSidebar-upsell-header">
|
|
124
|
+
<FormattedMessage {...messages.versionUpgradeLink} />
|
|
125
|
+
</p>
|
|
126
|
+
<p>
|
|
127
|
+
<FormattedMessage {...messages.versionUpsell} />
|
|
128
|
+
</p>
|
|
129
|
+
<PrimaryButton
|
|
130
|
+
className="bcs-StaticVersionSidebar-upsell-button"
|
|
131
|
+
data-resin-target="versioning_error_upgrade_cta"
|
|
132
|
+
onClick={onUpgradeClick}
|
|
133
|
+
type="button"
|
|
134
|
+
>
|
|
135
|
+
<FormattedMessage {...messages.upgradeButton} />
|
|
136
|
+
</PrimaryButton>
|
|
95
137
|
</div>
|
|
96
|
-
|
|
138
|
+
</div>
|
|
139
|
+
</div>
|
|
140
|
+
);
|
|
141
|
+
};
|
|
142
|
+
|
|
143
|
+
const StaticVersionsSidebar = (props: Props): React.Node => {
|
|
144
|
+
const { routerDisabled } = props;
|
|
145
|
+
|
|
146
|
+
if (routerDisabled) {
|
|
147
|
+
return <StaticVersionsContent {...props} />;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
return (
|
|
151
|
+
<Route>
|
|
152
|
+
{({ history }) => <StaticVersionsContent {...props} history={history} />}
|
|
97
153
|
</Route>
|
|
98
154
|
);
|
|
99
155
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StaticVersionSidebar.js","names":["React","FormattedMessage","Route","BoxDrive140","BackButton","PrimaryButton","LoadingIndicatorWrapper","VersionsMenu","messages","
|
|
1
|
+
{"version":3,"file":"StaticVersionSidebar.js","names":["React","FormattedMessage","Route","BoxDrive140","BackButton","PrimaryButton","LoadingIndicatorWrapper","VersionsMenu","messages","useCallback","StaticVersionsContent","history","internalSidebarNavigation","internalSidebarNavigationHandler","isLoading","onUpgradeClick","parentName","routerDisabled","versionTimestamp","Date","setDate","getDate","versions","map","versionNumber","id","version_number","type","permissions","can_preview","created_at","toUTCString","modified_by","size","trashed_at","uploader_display_name","handleBackClick","sidebar","push","createElement","className","role","Fragment","onClick","versionsTitle","crawlerPosition","fileId","versionCount","versionLimit","versionUpgradeLink","versionUpsell","upgradeButton","StaticVersionsSidebar","props","_extends"],"sources":["../../../../src/elements/content-sidebar/versions/StaticVersionSidebar.js"],"sourcesContent":["/**\n * @flow\n * @file Static Versions Sidebar component\n * @author Box\n */\n\nimport * as React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { Route } from 'react-router-dom';\n\nimport BoxDrive140 from '../../../illustration/BoxDrive140';\n\nimport BackButton from '../../common/back-button';\nimport PrimaryButton from '../../../components/primary-button';\nimport { LoadingIndicatorWrapper } from '../../../components/loading-indicator';\nimport VersionsMenu from './VersionsMenu';\nimport type {\n InternalSidebarNavigation,\n InternalSidebarNavigationHandler,\n ViewTypeValues,\n} from '../../common/types/SidebarNavigation';\n\nimport messages from './messages';\n\nimport './StaticVersionsSidebar.scss';\n\nconst { useCallback } = React;\n\ntype Props = {\n internalSidebarNavigation?: InternalSidebarNavigation,\n internalSidebarNavigationHandler?: InternalSidebarNavigationHandler,\n isLoading: boolean,\n onUpgradeClick: () => void,\n parentName: ViewTypeValues,\n routerDisabled?: boolean,\n};\n\ntype StaticVersionsContentProps = {\n history?: any,\n internalSidebarNavigation?: InternalSidebarNavigation,\n internalSidebarNavigationHandler?: InternalSidebarNavigationHandler,\n isLoading: boolean,\n onUpgradeClick: () => void,\n parentName: ViewTypeValues,\n routerDisabled?: boolean,\n};\n\nconst StaticVersionsContent = ({\n history,\n internalSidebarNavigation,\n internalSidebarNavigationHandler,\n isLoading,\n onUpgradeClick,\n parentName,\n routerDisabled,\n}: StaticVersionsContentProps): React.Node => {\n const versionTimestamp = new Date();\n versionTimestamp.setDate(versionTimestamp.getDate() - 1);\n\n const versions = ['1', '2', '3'].map(versionNumber => {\n return {\n id: versionNumber,\n version_number: versionNumber,\n type: 'file_version',\n permissions: {\n can_preview: true,\n },\n created_at: versionTimestamp.toUTCString(),\n modified_by: null,\n size: 1875887,\n trashed_at: null,\n uploader_display_name: 'John Doe',\n };\n });\n\n const handleBackClick = useCallback(() => {\n if (routerDisabled && internalSidebarNavigationHandler) {\n internalSidebarNavigationHandler({ sidebar: parentName });\n } else if (!routerDisabled && history) {\n history.push(`/${parentName}`);\n }\n }, [parentName, routerDisabled, internalSidebarNavigationHandler, history]);\n\n return (\n <div\n className=\"bcs-StaticVersionSidebar\"\n role=\"tabpanel\"\n data-resin-component=\"preview\"\n data-resin-feature=\"versions\"\n >\n <div className=\"bcs-StaticVersionSidebar-header\">\n <h3 className=\"bcs-StaticVersionSidebar-title\">\n <>\n <BackButton \n data-resin-target=\"back\" \n onClick={handleBackClick} \n />\n <FormattedMessage {...messages.versionsTitle} />\n </>\n </h3>\n </div>\n\n <div className=\"bcs-StaticVersionSidebar-content-wrapper\">\n <LoadingIndicatorWrapper\n className=\"bcs-StaticVersionSidebar-content\"\n crawlerPosition=\"top\"\n isLoading={isLoading}\n >\n <VersionsMenu\n versions={versions}\n fileId=\"1\"\n versionCount={3}\n versionLimit={3}\n routerDisabled={routerDisabled}\n internalSidebarNavigation={internalSidebarNavigation}\n />\n </LoadingIndicatorWrapper>\n </div>\n\n <div className=\"bcs-StaticVersionSidebar-upsell-wrapper\">\n <div className=\"bcs-StaticVersionSidebar-upsell\">\n <BoxDrive140 className=\"bcs-StaticVersionSidebar-upsell-icon\" />\n <p className=\"bcs-StaticVersionSidebar-upsell-header\">\n <FormattedMessage {...messages.versionUpgradeLink} />\n </p>\n <p>\n <FormattedMessage {...messages.versionUpsell} />\n </p>\n <PrimaryButton\n className=\"bcs-StaticVersionSidebar-upsell-button\"\n data-resin-target=\"versioning_error_upgrade_cta\"\n onClick={onUpgradeClick}\n type=\"button\"\n >\n <FormattedMessage {...messages.upgradeButton} />\n </PrimaryButton>\n </div>\n </div>\n </div>\n );\n};\n\nconst StaticVersionsSidebar = (props: Props): React.Node => {\n const { routerDisabled } = props;\n\n if (routerDisabled) {\n return <StaticVersionsContent {...props} />;\n }\n\n return (\n <Route>\n {({ history }) => <StaticVersionsContent {...props} history={history} />}\n </Route>\n );\n};\n\nexport default StaticVersionsSidebar;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const _excluded = ["error", "isLoading", "parentName", "versions"];
|
|
1
|
+
const _excluded = ["error", "history", "internalSidebarNavigation", "internalSidebarNavigationHandler", "isLoading", "parentName", "routerDisabled", "versions"];
|
|
2
2
|
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); }
|
|
3
3
|
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; }
|
|
4
4
|
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; }
|
|
@@ -19,12 +19,19 @@ import BackButton from '../../common/back-button';
|
|
|
19
19
|
import { DEFAULT_FETCH_END } from '../../../constants';
|
|
20
20
|
import { LoadingIndicatorWrapper } from '../../../components/loading-indicator';
|
|
21
21
|
import './VersionsSidebar.scss';
|
|
22
|
+
const {
|
|
23
|
+
useCallback
|
|
24
|
+
} = React;
|
|
22
25
|
const MAX_VERSIONS = DEFAULT_FETCH_END;
|
|
23
|
-
const
|
|
26
|
+
const VersionsContent = _ref => {
|
|
24
27
|
let {
|
|
25
28
|
error,
|
|
29
|
+
history,
|
|
30
|
+
internalSidebarNavigation,
|
|
31
|
+
internalSidebarNavigationHandler,
|
|
26
32
|
isLoading,
|
|
27
33
|
parentName,
|
|
34
|
+
routerDisabled,
|
|
28
35
|
versions
|
|
29
36
|
} = _ref,
|
|
30
37
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
@@ -32,15 +39,22 @@ const VersionsSidebar = _ref => {
|
|
|
32
39
|
const showVersions = !!versions.length;
|
|
33
40
|
const showEmpty = !isLoading && !showVersions;
|
|
34
41
|
const showError = !!error;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
42
|
+
const handleBackClick = useCallback(() => {
|
|
43
|
+
if (routerDisabled && internalSidebarNavigationHandler) {
|
|
44
|
+
internalSidebarNavigationHandler({
|
|
45
|
+
sidebar: parentName
|
|
46
|
+
});
|
|
47
|
+
} else if (!routerDisabled && history) {
|
|
48
|
+
history.push(`/${parentName}`);
|
|
49
|
+
}
|
|
50
|
+
}, [parentName, routerDisabled, internalSidebarNavigationHandler, history]);
|
|
51
|
+
return /*#__PURE__*/React.createElement(SidebarContent, {
|
|
38
52
|
className: "bcs-Versions",
|
|
39
53
|
"data-resin-component": "preview",
|
|
40
54
|
"data-resin-feature": "versions",
|
|
41
55
|
title: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BackButton, {
|
|
42
56
|
"data-resin-target": "back",
|
|
43
|
-
onClick:
|
|
57
|
+
onClick: handleBackClick
|
|
44
58
|
}), /*#__PURE__*/React.createElement(FormattedMessage, messages.versionsTitle))
|
|
45
59
|
}, /*#__PURE__*/React.createElement(LoadingIndicatorWrapper, {
|
|
46
60
|
className: "bcs-Versions-content",
|
|
@@ -54,7 +68,9 @@ const VersionsSidebar = _ref => {
|
|
|
54
68
|
className: "bcs-Versions-menu",
|
|
55
69
|
"data-testid": "bcs-Versions-menu"
|
|
56
70
|
}, /*#__PURE__*/React.createElement(VersionsMenu, _extends({
|
|
57
|
-
versions: versions
|
|
71
|
+
versions: versions,
|
|
72
|
+
routerDisabled: routerDisabled,
|
|
73
|
+
internalSidebarNavigation: internalSidebarNavigation
|
|
58
74
|
}, rest))), showLimit && /*#__PURE__*/React.createElement("div", {
|
|
59
75
|
className: "bcs-Versions-maxEntries",
|
|
60
76
|
"data-testid": "max-versions"
|
|
@@ -62,7 +78,20 @@ const VersionsSidebar = _ref => {
|
|
|
62
78
|
values: {
|
|
63
79
|
maxVersions: MAX_VERSIONS
|
|
64
80
|
}
|
|
65
|
-
})))))
|
|
81
|
+
})))));
|
|
82
|
+
};
|
|
83
|
+
const VersionsSidebar = props => {
|
|
84
|
+
const {
|
|
85
|
+
routerDisabled
|
|
86
|
+
} = props;
|
|
87
|
+
if (routerDisabled) {
|
|
88
|
+
return /*#__PURE__*/React.createElement(VersionsContent, props);
|
|
89
|
+
}
|
|
90
|
+
return /*#__PURE__*/React.createElement(Route, null, ({
|
|
91
|
+
history
|
|
92
|
+
}) => /*#__PURE__*/React.createElement(VersionsContent, _extends({}, props, {
|
|
93
|
+
history: history
|
|
94
|
+
})));
|
|
66
95
|
};
|
|
67
96
|
export default VersionsSidebar;
|
|
68
97
|
//# sourceMappingURL=VersionsSidebar.js.map
|
|
@@ -16,75 +16,128 @@ import BackButton from '../../common/back-button';
|
|
|
16
16
|
import { DEFAULT_FETCH_END } from '../../../constants';
|
|
17
17
|
import { LoadingIndicatorWrapper } from '../../../components/loading-indicator';
|
|
18
18
|
import type { BoxItemVersion } from '../../../common/types/core';
|
|
19
|
+
import type { InternalSidebarNavigation, InternalSidebarNavigationHandler, ViewTypeValues } from '../../common/types/SidebarNavigation';
|
|
19
20
|
import './VersionsSidebar.scss';
|
|
20
21
|
|
|
22
|
+
const { useCallback } = React;
|
|
23
|
+
|
|
21
24
|
const MAX_VERSIONS = DEFAULT_FETCH_END;
|
|
22
25
|
|
|
23
26
|
type Props = {
|
|
24
27
|
error?: MessageDescriptor,
|
|
25
28
|
fileId: string,
|
|
29
|
+
internalSidebarNavigation?: InternalSidebarNavigation,
|
|
30
|
+
internalSidebarNavigationHandler?: InternalSidebarNavigationHandler,
|
|
31
|
+
isLoading: boolean,
|
|
32
|
+
parentName: ViewTypeValues,
|
|
33
|
+
routerDisabled?: boolean,
|
|
34
|
+
versionCount: number,
|
|
35
|
+
versionLimit: number,
|
|
36
|
+
versions: Array<BoxItemVersion>,
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
type VersionsContentProps = {
|
|
40
|
+
error?: MessageDescriptor,
|
|
41
|
+
fileId: string,
|
|
42
|
+
history?: any,
|
|
43
|
+
internalSidebarNavigation?: InternalSidebarNavigation,
|
|
44
|
+
internalSidebarNavigationHandler?: InternalSidebarNavigationHandler,
|
|
26
45
|
isLoading: boolean,
|
|
27
|
-
parentName:
|
|
46
|
+
parentName: ViewTypeValues,
|
|
47
|
+
routerDisabled?: boolean,
|
|
28
48
|
versionCount: number,
|
|
29
49
|
versionLimit: number,
|
|
30
50
|
versions: Array<BoxItemVersion>,
|
|
31
51
|
};
|
|
32
52
|
|
|
33
|
-
const
|
|
53
|
+
const VersionsContent = ({
|
|
54
|
+
error,
|
|
55
|
+
history,
|
|
56
|
+
internalSidebarNavigation,
|
|
57
|
+
internalSidebarNavigationHandler,
|
|
58
|
+
isLoading,
|
|
59
|
+
parentName,
|
|
60
|
+
routerDisabled,
|
|
61
|
+
versions,
|
|
62
|
+
...rest
|
|
63
|
+
}: VersionsContentProps) => {
|
|
34
64
|
const showLimit = versions.length >= MAX_VERSIONS;
|
|
35
65
|
const showVersions = !!versions.length;
|
|
36
66
|
const showEmpty = !isLoading && !showVersions;
|
|
37
67
|
const showError = !!error;
|
|
38
68
|
|
|
69
|
+
const handleBackClick = useCallback(() => {
|
|
70
|
+
if (routerDisabled && internalSidebarNavigationHandler) {
|
|
71
|
+
internalSidebarNavigationHandler({ sidebar: parentName });
|
|
72
|
+
} else if (!routerDisabled && history) {
|
|
73
|
+
history.push(`/${parentName}`);
|
|
74
|
+
}
|
|
75
|
+
}, [parentName, routerDisabled, internalSidebarNavigationHandler, history]);
|
|
76
|
+
|
|
39
77
|
return (
|
|
40
|
-
<
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
>
|
|
58
|
-
{
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
78
|
+
<SidebarContent
|
|
79
|
+
className="bcs-Versions"
|
|
80
|
+
data-resin-component="preview"
|
|
81
|
+
data-resin-feature="versions"
|
|
82
|
+
title={
|
|
83
|
+
<>
|
|
84
|
+
<BackButton data-resin-target="back" onClick={handleBackClick} />
|
|
85
|
+
<FormattedMessage {...messages.versionsTitle} />
|
|
86
|
+
</>
|
|
87
|
+
}
|
|
88
|
+
>
|
|
89
|
+
<LoadingIndicatorWrapper
|
|
90
|
+
className="bcs-Versions-content"
|
|
91
|
+
crawlerPosition="top"
|
|
92
|
+
isLoading={isLoading}
|
|
93
|
+
>
|
|
94
|
+
{showError && (
|
|
95
|
+
<InlineError title={<FormattedMessage {...messages.versionServerError} />}>
|
|
96
|
+
<FormattedMessage {...error} />
|
|
97
|
+
</InlineError>
|
|
98
|
+
)}
|
|
99
|
+
|
|
100
|
+
{showEmpty && (
|
|
101
|
+
<div className="bcs-Versions-empty">
|
|
102
|
+
<FormattedMessage {...messages.versionsEmpty} />
|
|
103
|
+
</div>
|
|
104
|
+
)}
|
|
63
105
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
106
|
+
{showVersions && (
|
|
107
|
+
<div className="bcs-Versions-menu" data-testid="bcs-Versions-menu">
|
|
108
|
+
<VersionsMenu
|
|
109
|
+
versions={versions}
|
|
110
|
+
routerDisabled={routerDisabled}
|
|
111
|
+
internalSidebarNavigation={internalSidebarNavigation}
|
|
112
|
+
{...rest}
|
|
113
|
+
/>
|
|
114
|
+
</div>
|
|
115
|
+
)}
|
|
116
|
+
{showLimit && (
|
|
117
|
+
<div className="bcs-Versions-maxEntries" data-testid="max-versions">
|
|
118
|
+
<FormattedMessage
|
|
119
|
+
{...messages.versionMaxEntries}
|
|
120
|
+
values={{
|
|
121
|
+
maxVersions: MAX_VERSIONS,
|
|
122
|
+
}}
|
|
123
|
+
/>
|
|
124
|
+
</div>
|
|
125
|
+
)}
|
|
126
|
+
</LoadingIndicatorWrapper>
|
|
127
|
+
</SidebarContent>
|
|
128
|
+
);
|
|
129
|
+
};
|
|
69
130
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
maxVersions: MAX_VERSIONS,
|
|
81
|
-
}}
|
|
82
|
-
/>
|
|
83
|
-
</div>
|
|
84
|
-
)}
|
|
85
|
-
</LoadingIndicatorWrapper>
|
|
86
|
-
</SidebarContent>
|
|
87
|
-
)}
|
|
131
|
+
const VersionsSidebar = (props: Props) => {
|
|
132
|
+
const { routerDisabled } = props;
|
|
133
|
+
|
|
134
|
+
if (routerDisabled) {
|
|
135
|
+
return <VersionsContent {...props} />;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
return (
|
|
139
|
+
<Route>
|
|
140
|
+
{({ history }) => <VersionsContent {...props} history={history} />}
|
|
88
141
|
</Route>
|
|
89
142
|
);
|
|
90
143
|
};
|