box-ui-elements 23.4.0-beta.16 → 23.4.0-beta.17

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.
Files changed (25) hide show
  1. package/dist/explorer.js +1 -1
  2. package/dist/preview.js +1 -1
  3. package/dist/sidebar.js +1 -1
  4. package/es/elements/common/nav-button/BackButton.js +5 -8
  5. package/es/elements/common/nav-button/BackButton.js.flow +8 -18
  6. package/es/elements/common/nav-button/BackButton.js.map +1 -1
  7. package/es/elements/content-sidebar/versions/StaticVersionSidebar.js +6 -3
  8. package/es/elements/content-sidebar/versions/StaticVersionSidebar.js.flow +47 -42
  9. package/es/elements/content-sidebar/versions/StaticVersionSidebar.js.map +1 -1
  10. package/es/elements/content-sidebar/versions/VersionsSidebar.js +6 -3
  11. package/es/elements/content-sidebar/versions/VersionsSidebar.js.flow +48 -39
  12. package/es/elements/content-sidebar/versions/VersionsSidebar.js.map +1 -1
  13. package/es/src/test-utils/testing-library.d.ts +2 -1
  14. package/es/test-utils/testing-library.js +4 -1
  15. package/es/test-utils/testing-library.js.map +1 -1
  16. package/package.json +1 -1
  17. package/src/elements/common/nav-button/BackButton.js +8 -18
  18. package/src/elements/common/nav-button/__tests__/BackButton.test.js +36 -27
  19. package/src/elements/content-sidebar/versions/StaticVersionSidebar.js +47 -42
  20. package/src/elements/content-sidebar/versions/VersionsSidebar.js +48 -39
  21. package/src/elements/content-sidebar/versions/__tests__/StaticVersionSidebar.test.js +171 -0
  22. package/src/elements/content-sidebar/versions/__tests__/VersionsSidebar.test.js +147 -20
  23. package/src/test-utils/testing-library.tsx +4 -1
  24. package/src/elements/common/nav-button/__tests__/__snapshots__/BackButton.test.js.snap +0 -64
  25. package/src/elements/content-sidebar/versions/__tests__/__snapshots__/VersionsSidebar.test.js.snap +0 -92
@@ -1,4 +1,4 @@
1
- const _excluded = ["className", "to"];
1
+ const _excluded = ["className", "onClick"];
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; }
@@ -11,7 +11,6 @@ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t =
11
11
  import * as React from 'react';
12
12
  import classNames from 'classnames';
13
13
  import { FormattedMessage } from 'react-intl';
14
- import { Route } from 'react-router-dom';
15
14
  import IconNavigateLeft from '../../../icons/general/IconNavigateLeft';
16
15
  import messages from '../messages';
17
16
  import PlainButton from '../../../components/plain-button';
@@ -19,21 +18,19 @@ import './BackButton.scss';
19
18
  const BackButton = _ref => {
20
19
  let {
21
20
  className,
22
- to
21
+ onClick
23
22
  } = _ref,
24
23
  rest = _objectWithoutProperties(_ref, _excluded);
25
- return /*#__PURE__*/React.createElement(Route, null, ({
26
- history
27
- }) => /*#__PURE__*/React.createElement(PlainButton, _extends({
24
+ return /*#__PURE__*/React.createElement(PlainButton, _extends({
28
25
  className: classNames('bdl-BackButton', className),
29
- onClick: () => to ? history.push(to) : history.goBack(),
26
+ onClick: onClick,
30
27
  type: "button"
31
28
  }, rest), /*#__PURE__*/React.createElement(IconNavigateLeft, {
32
29
  height: 24,
33
30
  width: 24
34
31
  }), /*#__PURE__*/React.createElement("span", {
35
32
  className: "accessibility-hidden"
36
- }, /*#__PURE__*/React.createElement(FormattedMessage, messages.back))));
33
+ }, /*#__PURE__*/React.createElement(FormattedMessage, messages.back)));
37
34
  };
38
35
  export default BackButton;
39
36
  //# sourceMappingURL=BackButton.js.map
@@ -7,7 +7,6 @@
7
7
  import * as React from 'react';
8
8
  import classNames from 'classnames';
9
9
  import { FormattedMessage } from 'react-intl';
10
- import { Route, type Location } from 'react-router-dom';
11
10
  import IconNavigateLeft from '../../../icons/general/IconNavigateLeft';
12
11
  import messages from '../messages';
13
12
  import PlainButton from '../../../components/plain-button';
@@ -15,25 +14,16 @@ import './BackButton.scss';
15
14
 
16
15
  type Props = {
17
16
  className?: string,
18
- to?: Location,
17
+ onClick: () => void,
19
18
  };
20
19
 
21
- const BackButton = ({ className, to, ...rest }: Props) => (
22
- <Route>
23
- {({ history }) => (
24
- <PlainButton
25
- className={classNames('bdl-BackButton', className)}
26
- onClick={() => (to ? history.push(to) : history.goBack())}
27
- type="button"
28
- {...rest}
29
- >
30
- <IconNavigateLeft height={24} width={24} />
31
- <span className="accessibility-hidden">
32
- <FormattedMessage {...messages.back} />
33
- </span>
34
- </PlainButton>
35
- )}
36
- </Route>
20
+ const BackButton = ({ className, onClick, ...rest }: Props) => (
21
+ <PlainButton className={classNames('bdl-BackButton', className)} onClick={onClick} type="button" {...rest}>
22
+ <IconNavigateLeft height={24} width={24} />
23
+ <span className="accessibility-hidden">
24
+ <FormattedMessage {...messages.back} />
25
+ </span>
26
+ </PlainButton>
37
27
  );
38
28
 
39
29
  export default BackButton;
@@ -1 +1 @@
1
- {"version":3,"file":"BackButton.js","names":["React","classNames","FormattedMessage","Route","IconNavigateLeft","messages","PlainButton","BackButton","_ref","className","to","rest","_objectWithoutProperties","_excluded","createElement","history","_extends","onClick","push","goBack","type","height","width","back"],"sources":["../../../../src/elements/common/nav-button/BackButton.js"],"sourcesContent":["/**\n * @flow\n * @file Back Button component\n * @author Box\n */\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { FormattedMessage } from 'react-intl';\nimport { Route, type Location } from 'react-router-dom';\nimport IconNavigateLeft from '../../../icons/general/IconNavigateLeft';\nimport messages from '../messages';\nimport PlainButton from '../../../components/plain-button';\nimport './BackButton.scss';\n\ntype Props = {\n className?: string,\n to?: Location,\n};\n\nconst BackButton = ({ className, to, ...rest }: Props) => (\n <Route>\n {({ history }) => (\n <PlainButton\n className={classNames('bdl-BackButton', className)}\n onClick={() => (to ? history.push(to) : history.goBack())}\n type=\"button\"\n {...rest}\n >\n <IconNavigateLeft height={24} width={24} />\n <span className=\"accessibility-hidden\">\n <FormattedMessage {...messages.back} />\n </span>\n </PlainButton>\n )}\n </Route>\n);\n\nexport default BackButton;\n"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,gBAAgB,QAAQ,YAAY;AAC7C,SAASC,KAAK,QAAuB,kBAAkB;AACvD,OAAOC,gBAAgB,MAAM,yCAAyC;AACtE,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,WAAW,MAAM,kCAAkC;AAC1D,OAAO,mBAAmB;AAO1B,MAAMC,UAAU,GAAGC,IAAA;EAAA,IAAC;MAAEC,SAAS;MAAEC;IAAmB,CAAC,GAAAF,IAAA;IAAbG,IAAI,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA;EAAA,oBACxCb,KAAA,CAAAc,aAAA,CAACX,KAAK,QACD,CAAC;IAAEY;EAAQ,CAAC,kBACTf,KAAA,CAAAc,aAAA,CAACR,WAAW,EAAAU,QAAA;IACRP,SAAS,EAAER,UAAU,CAAC,gBAAgB,EAAEQ,SAAS,CAAE;IACnDQ,OAAO,EAAEA,CAAA,KAAOP,EAAE,GAAGK,OAAO,CAACG,IAAI,CAACR,EAAE,CAAC,GAAGK,OAAO,CAACI,MAAM,CAAC,CAAG;IAC1DC,IAAI,EAAC;EAAQ,GACTT,IAAI,gBAERX,KAAA,CAAAc,aAAA,CAACV,gBAAgB;IAACiB,MAAM,EAAE,EAAG;IAACC,KAAK,EAAE;EAAG,CAAE,CAAC,eAC3CtB,KAAA,CAAAc,aAAA;IAAML,SAAS,EAAC;EAAsB,gBAClCT,KAAA,CAAAc,aAAA,CAACZ,gBAAgB,EAAKG,QAAQ,CAACkB,IAAO,CACpC,CACG,CAEd,CAAC;AAAA,CACX;AAED,eAAehB,UAAU","ignoreList":[]}
1
+ {"version":3,"file":"BackButton.js","names":["React","classNames","FormattedMessage","IconNavigateLeft","messages","PlainButton","BackButton","_ref","className","onClick","rest","_objectWithoutProperties","_excluded","createElement","_extends","type","height","width","back"],"sources":["../../../../src/elements/common/nav-button/BackButton.js"],"sourcesContent":["/**\n * @flow\n * @file Back Button component\n * @author Box\n */\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { FormattedMessage } from 'react-intl';\nimport IconNavigateLeft from '../../../icons/general/IconNavigateLeft';\nimport messages from '../messages';\nimport PlainButton from '../../../components/plain-button';\nimport './BackButton.scss';\n\ntype Props = {\n className?: string,\n onClick: () => void,\n};\n\nconst BackButton = ({ className, onClick, ...rest }: Props) => (\n <PlainButton className={classNames('bdl-BackButton', className)} onClick={onClick} type=\"button\" {...rest}>\n <IconNavigateLeft height={24} width={24} />\n <span className=\"accessibility-hidden\">\n <FormattedMessage {...messages.back} />\n </span>\n </PlainButton>\n);\n\nexport default BackButton;\n"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,gBAAgB,QAAQ,YAAY;AAC7C,OAAOC,gBAAgB,MAAM,yCAAyC;AACtE,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,WAAW,MAAM,kCAAkC;AAC1D,OAAO,mBAAmB;AAO1B,MAAMC,UAAU,GAAGC,IAAA;EAAA,IAAC;MAAEC,SAAS;MAAEC;IAAwB,CAAC,GAAAF,IAAA;IAAbG,IAAI,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA;EAAA,oBAC7CZ,KAAA,CAAAa,aAAA,CAACR,WAAW,EAAAS,QAAA;IAACN,SAAS,EAAEP,UAAU,CAAC,gBAAgB,EAAEO,SAAS,CAAE;IAACC,OAAO,EAAEA,OAAQ;IAACM,IAAI,EAAC;EAAQ,GAAKL,IAAI,gBACrGV,KAAA,CAAAa,aAAA,CAACV,gBAAgB;IAACa,MAAM,EAAE,EAAG;IAACC,KAAK,EAAE;EAAG,CAAE,CAAC,eAC3CjB,KAAA,CAAAa,aAAA;IAAML,SAAS,EAAC;EAAsB,gBAClCR,KAAA,CAAAa,aAAA,CAACX,gBAAgB,EAAKE,QAAQ,CAACc,IAAO,CACpC,CACG,CAAC;AAAA,CACjB;AAED,eAAeZ,UAAU","ignoreList":[]}
@@ -6,6 +6,7 @@
6
6
 
7
7
  import * as React from 'react';
8
8
  import { FormattedMessage } from 'react-intl';
9
+ import { Route } from 'react-router-dom';
9
10
  import BoxDrive140 from '../../../illustration/BoxDrive140';
10
11
  import { BackButton } from '../../common/nav-button';
11
12
  import PrimaryButton from '../../../components/primary-button';
@@ -35,7 +36,9 @@ const StaticVersionsSidebar = ({
35
36
  uploader_display_name: 'John Doe'
36
37
  };
37
38
  });
38
- return /*#__PURE__*/React.createElement("div", {
39
+ return /*#__PURE__*/React.createElement(Route, null, ({
40
+ history
41
+ }) => /*#__PURE__*/React.createElement("div", {
39
42
  className: "bcs-StaticVersionSidebar",
40
43
  role: "tabpanel",
41
44
  "data-resin-component": "preview",
@@ -46,7 +49,7 @@ const StaticVersionsSidebar = ({
46
49
  className: "bcs-StaticVersionSidebar-title"
47
50
  }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BackButton, {
48
51
  "data-resin-target": "back",
49
- to: `/${parentName}`
52
+ onClick: () => history.push(`/${parentName}`)
50
53
  }), /*#__PURE__*/React.createElement(FormattedMessage, messages.versionsTitle)))), /*#__PURE__*/React.createElement("div", {
51
54
  className: "bcs-StaticVersionSidebar-content-wrapper"
52
55
  }, /*#__PURE__*/React.createElement(LoadingIndicatorWrapper, {
@@ -71,7 +74,7 @@ const StaticVersionsSidebar = ({
71
74
  "data-resin-target": "versioning_error_upgrade_cta",
72
75
  onClick: onUpgradeClick,
73
76
  type: "button"
74
- }, /*#__PURE__*/React.createElement(FormattedMessage, messages.upgradeButton)))));
77
+ }, /*#__PURE__*/React.createElement(FormattedMessage, messages.upgradeButton))))));
75
78
  };
76
79
  export default StaticVersionsSidebar;
77
80
  //# sourceMappingURL=StaticVersionSidebar.js.map
@@ -6,6 +6,7 @@
6
6
 
7
7
  import * as React from 'react';
8
8
  import { FormattedMessage } from 'react-intl';
9
+ import { Route } from 'react-router-dom';
9
10
 
10
11
  import BoxDrive140 from '../../../illustration/BoxDrive140';
11
12
 
@@ -45,51 +46,55 @@ const StaticVersionsSidebar = ({ isLoading, onUpgradeClick, parentName }: Props)
45
46
  });
46
47
 
47
48
  return (
48
- <div
49
- className="bcs-StaticVersionSidebar"
50
- role="tabpanel"
51
- data-resin-component="preview"
52
- data-resin-feature="versions"
53
- >
54
- <div className="bcs-StaticVersionSidebar-header">
55
- <h3 className="bcs-StaticVersionSidebar-title">
56
- <>
57
- <BackButton data-resin-target="back" to={`/${parentName}`} />
58
- <FormattedMessage {...messages.versionsTitle} />
59
- </>
60
- </h3>
61
- </div>
62
-
63
- <div className="bcs-StaticVersionSidebar-content-wrapper">
64
- <LoadingIndicatorWrapper
65
- className="bcs-StaticVersionSidebar-content"
66
- crawlerPosition="top"
67
- isLoading={isLoading}
49
+ <Route>
50
+ {({ history }) => (
51
+ <div
52
+ className="bcs-StaticVersionSidebar"
53
+ role="tabpanel"
54
+ data-resin-component="preview"
55
+ data-resin-feature="versions"
68
56
  >
69
- <VersionsMenu versions={versions} fileId="1" versionCount={3} versionLimit={3} />
70
- </LoadingIndicatorWrapper>
71
- </div>
57
+ <div className="bcs-StaticVersionSidebar-header">
58
+ <h3 className="bcs-StaticVersionSidebar-title">
59
+ <>
60
+ <BackButton data-resin-target="back" onClick={() => history.push(`/${parentName}`)} />
61
+ <FormattedMessage {...messages.versionsTitle} />
62
+ </>
63
+ </h3>
64
+ </div>
65
+
66
+ <div className="bcs-StaticVersionSidebar-content-wrapper">
67
+ <LoadingIndicatorWrapper
68
+ className="bcs-StaticVersionSidebar-content"
69
+ crawlerPosition="top"
70
+ isLoading={isLoading}
71
+ >
72
+ <VersionsMenu versions={versions} fileId="1" versionCount={3} versionLimit={3} />
73
+ </LoadingIndicatorWrapper>
74
+ </div>
72
75
 
73
- <div className="bcs-StaticVersionSidebar-upsell-wrapper">
74
- <div className="bcs-StaticVersionSidebar-upsell">
75
- <BoxDrive140 className="bcs-StaticVersionSidebar-upsell-icon" />
76
- <p className="bcs-StaticVersionSidebar-upsell-header">
77
- <FormattedMessage {...messages.versionUpgradeLink} />
78
- </p>
79
- <p>
80
- <FormattedMessage {...messages.versionUpsell} />
81
- </p>
82
- <PrimaryButton
83
- className="bcs-StaticVersionSidebar-upsell-button"
84
- data-resin-target="versioning_error_upgrade_cta"
85
- onClick={onUpgradeClick}
86
- type="button"
87
- >
88
- <FormattedMessage {...messages.upgradeButton} />
89
- </PrimaryButton>
76
+ <div className="bcs-StaticVersionSidebar-upsell-wrapper">
77
+ <div className="bcs-StaticVersionSidebar-upsell">
78
+ <BoxDrive140 className="bcs-StaticVersionSidebar-upsell-icon" />
79
+ <p className="bcs-StaticVersionSidebar-upsell-header">
80
+ <FormattedMessage {...messages.versionUpgradeLink} />
81
+ </p>
82
+ <p>
83
+ <FormattedMessage {...messages.versionUpsell} />
84
+ </p>
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>
90
95
  </div>
91
- </div>
92
- </div>
96
+ )}
97
+ </Route>
93
98
  );
94
99
  };
95
100
 
@@ -1 +1 @@
1
- {"version":3,"file":"StaticVersionSidebar.js","names":["React","FormattedMessage","BoxDrive140","BackButton","PrimaryButton","LoadingIndicatorWrapper","VersionsMenu","messages","StaticVersionsSidebar","isLoading","onUpgradeClick","parentName","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","createElement","className","role","Fragment","to","versionsTitle","crawlerPosition","fileId","versionCount","versionLimit","versionUpgradeLink","versionUpsell","onClick","upgradeButton"],"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';\n\nimport BoxDrive140 from '../../../illustration/BoxDrive140';\n\nimport { BackButton } from '../../common/nav-button';\nimport PrimaryButton from '../../../components/primary-button';\nimport { LoadingIndicatorWrapper } from '../../../components/loading-indicator';\nimport VersionsMenu from './VersionsMenu';\n\nimport messages from './messages';\n\nimport './StaticVersionsSidebar.scss';\n\ntype Props = {\n isLoading: boolean,\n onUpgradeClick: () => void,\n parentName: string,\n};\n\nconst StaticVersionsSidebar = ({ isLoading, onUpgradeClick, parentName }: Props): 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 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 data-resin-target=\"back\" to={`/${parentName}`} />\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 versions={versions} fileId=\"1\" versionCount={3} versionLimit={3} />\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\nexport default StaticVersionsSidebar;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"StaticVersionSidebar.js","names":["React","FormattedMessage","Route","BoxDrive140","BackButton","PrimaryButton","LoadingIndicatorWrapper","VersionsMenu","messages","StaticVersionsSidebar","isLoading","onUpgradeClick","parentName","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","createElement","history","className","role","Fragment","onClick","push","versionsTitle","crawlerPosition","fileId","versionCount","versionLimit","versionUpgradeLink","versionUpsell","upgradeButton"],"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/nav-button';\nimport PrimaryButton from '../../../components/primary-button';\nimport { LoadingIndicatorWrapper } from '../../../components/loading-indicator';\nimport VersionsMenu from './VersionsMenu';\n\nimport messages from './messages';\n\nimport './StaticVersionsSidebar.scss';\n\ntype Props = {\n isLoading: boolean,\n onUpgradeClick: () => void,\n parentName: string,\n};\n\nconst StaticVersionsSidebar = ({ isLoading, onUpgradeClick, parentName }: Props): 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 return (\n <Route>\n {({ history }) => (\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 data-resin-target=\"back\" onClick={() => history.push(`/${parentName}`)} />\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 versions={versions} fileId=\"1\" versionCount={3} versionLimit={3} />\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 </Route>\n );\n};\n\nexport default StaticVersionsSidebar;\n"],"mappings":"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","ignoreList":[]}
@@ -10,6 +10,7 @@ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t =
10
10
 
11
11
  import * as React from 'react';
12
12
  import { FormattedMessage } from 'react-intl';
13
+ import { Route } from 'react-router-dom';
13
14
  import InlineError from '../../../components/inline-error';
14
15
  import messages from './messages';
15
16
  import SidebarContent from '../SidebarContent';
@@ -31,13 +32,15 @@ const VersionsSidebar = _ref => {
31
32
  const showVersions = !!versions.length;
32
33
  const showEmpty = !isLoading && !showVersions;
33
34
  const showError = !!error;
34
- return /*#__PURE__*/React.createElement(SidebarContent, {
35
+ return /*#__PURE__*/React.createElement(Route, null, ({
36
+ history
37
+ }) => /*#__PURE__*/React.createElement(SidebarContent, {
35
38
  className: "bcs-Versions",
36
39
  "data-resin-component": "preview",
37
40
  "data-resin-feature": "versions",
38
41
  title: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(BackButton, {
39
42
  "data-resin-target": "back",
40
- to: `/${parentName}`
43
+ onClick: () => history.push(`/${parentName}`)
41
44
  }), /*#__PURE__*/React.createElement(FormattedMessage, messages.versionsTitle))
42
45
  }, /*#__PURE__*/React.createElement(LoadingIndicatorWrapper, {
43
46
  className: "bcs-Versions-content",
@@ -59,7 +62,7 @@ const VersionsSidebar = _ref => {
59
62
  values: {
60
63
  maxVersions: MAX_VERSIONS
61
64
  }
62
- })))));
65
+ }))))));
63
66
  };
64
67
  export default VersionsSidebar;
65
68
  //# sourceMappingURL=VersionsSidebar.js.map
@@ -6,6 +6,7 @@
6
6
 
7
7
  import * as React from 'react';
8
8
  import { FormattedMessage } from 'react-intl';
9
+ import { Route } from 'react-router-dom';
9
10
  import type { MessageDescriptor } from 'react-intl';
10
11
  import InlineError from '../../../components/inline-error';
11
12
  import messages from './messages';
@@ -36,47 +37,55 @@ const VersionsSidebar = ({ error, isLoading, parentName, versions, ...rest }: Pr
36
37
  const showError = !!error;
37
38
 
38
39
  return (
39
- <SidebarContent
40
- className="bcs-Versions"
41
- data-resin-component="preview"
42
- data-resin-feature="versions"
43
- title={
44
- <>
45
- <BackButton data-resin-target="back" to={`/${parentName}`} />
46
- <FormattedMessage {...messages.versionsTitle} />
47
- </>
48
- }
49
- >
50
- <LoadingIndicatorWrapper className="bcs-Versions-content" crawlerPosition="top" isLoading={isLoading}>
51
- {showError && (
52
- <InlineError title={<FormattedMessage {...messages.versionServerError} />}>
53
- <FormattedMessage {...error} />
54
- </InlineError>
55
- )}
40
+ <Route>
41
+ {({ history }) => (
42
+ <SidebarContent
43
+ className="bcs-Versions"
44
+ data-resin-component="preview"
45
+ data-resin-feature="versions"
46
+ title={
47
+ <>
48
+ <BackButton data-resin-target="back" onClick={() => history.push(`/${parentName}`)} />
49
+ <FormattedMessage {...messages.versionsTitle} />
50
+ </>
51
+ }
52
+ >
53
+ <LoadingIndicatorWrapper
54
+ className="bcs-Versions-content"
55
+ crawlerPosition="top"
56
+ isLoading={isLoading}
57
+ >
58
+ {showError && (
59
+ <InlineError title={<FormattedMessage {...messages.versionServerError} />}>
60
+ <FormattedMessage {...error} />
61
+ </InlineError>
62
+ )}
56
63
 
57
- {showEmpty && (
58
- <div className="bcs-Versions-empty">
59
- <FormattedMessage {...messages.versionsEmpty} />
60
- </div>
61
- )}
64
+ {showEmpty && (
65
+ <div className="bcs-Versions-empty">
66
+ <FormattedMessage {...messages.versionsEmpty} />
67
+ </div>
68
+ )}
62
69
 
63
- {showVersions && (
64
- <div className="bcs-Versions-menu" data-testid="bcs-Versions-menu">
65
- <VersionsMenu versions={versions} {...rest} />
66
- </div>
67
- )}
68
- {showLimit && (
69
- <div className="bcs-Versions-maxEntries" data-testid="max-versions">
70
- <FormattedMessage
71
- {...messages.versionMaxEntries}
72
- values={{
73
- maxVersions: MAX_VERSIONS,
74
- }}
75
- />
76
- </div>
77
- )}
78
- </LoadingIndicatorWrapper>
79
- </SidebarContent>
70
+ {showVersions && (
71
+ <div className="bcs-Versions-menu" data-testid="bcs-Versions-menu">
72
+ <VersionsMenu versions={versions} {...rest} />
73
+ </div>
74
+ )}
75
+ {showLimit && (
76
+ <div className="bcs-Versions-maxEntries" data-testid="max-versions">
77
+ <FormattedMessage
78
+ {...messages.versionMaxEntries}
79
+ values={{
80
+ maxVersions: MAX_VERSIONS,
81
+ }}
82
+ />
83
+ </div>
84
+ )}
85
+ </LoadingIndicatorWrapper>
86
+ </SidebarContent>
87
+ )}
88
+ </Route>
80
89
  );
81
90
  };
82
91
 
@@ -1 +1 @@
1
- {"version":3,"file":"VersionsSidebar.js","names":["React","FormattedMessage","InlineError","messages","SidebarContent","VersionsMenu","BackButton","DEFAULT_FETCH_END","LoadingIndicatorWrapper","MAX_VERSIONS","VersionsSidebar","_ref","error","isLoading","parentName","versions","rest","_objectWithoutProperties","_excluded","showLimit","length","showVersions","showEmpty","showError","createElement","className","title","Fragment","to","versionsTitle","crawlerPosition","versionServerError","versionsEmpty","_extends","versionMaxEntries","values","maxVersions"],"sources":["../../../../src/elements/content-sidebar/versions/VersionsSidebar.js"],"sourcesContent":["/**\n * @flow\n * @file Versions Sidebar component\n * @author Box\n */\n\nimport * as React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport type { MessageDescriptor } from 'react-intl';\nimport InlineError from '../../../components/inline-error';\nimport messages from './messages';\nimport SidebarContent from '../SidebarContent';\nimport VersionsMenu from './VersionsMenu';\nimport { BackButton } from '../../common/nav-button';\nimport { DEFAULT_FETCH_END } from '../../../constants';\nimport { LoadingIndicatorWrapper } from '../../../components/loading-indicator';\nimport type { BoxItemVersion } from '../../../common/types/core';\nimport './VersionsSidebar.scss';\n\nconst MAX_VERSIONS = DEFAULT_FETCH_END;\n\ntype Props = {\n error?: MessageDescriptor,\n fileId: string,\n isLoading: boolean,\n parentName: string,\n versionCount: number,\n versionLimit: number,\n versions: Array<BoxItemVersion>,\n};\n\nconst VersionsSidebar = ({ error, isLoading, parentName, versions, ...rest }: Props) => {\n const showLimit = versions.length >= MAX_VERSIONS;\n const showVersions = !!versions.length;\n const showEmpty = !isLoading && !showVersions;\n const showError = !!error;\n\n return (\n <SidebarContent\n className=\"bcs-Versions\"\n data-resin-component=\"preview\"\n data-resin-feature=\"versions\"\n title={\n <>\n <BackButton data-resin-target=\"back\" to={`/${parentName}`} />\n <FormattedMessage {...messages.versionsTitle} />\n </>\n }\n >\n <LoadingIndicatorWrapper className=\"bcs-Versions-content\" crawlerPosition=\"top\" isLoading={isLoading}>\n {showError && (\n <InlineError title={<FormattedMessage {...messages.versionServerError} />}>\n <FormattedMessage {...error} />\n </InlineError>\n )}\n\n {showEmpty && (\n <div className=\"bcs-Versions-empty\">\n <FormattedMessage {...messages.versionsEmpty} />\n </div>\n )}\n\n {showVersions && (\n <div className=\"bcs-Versions-menu\" data-testid=\"bcs-Versions-menu\">\n <VersionsMenu versions={versions} {...rest} />\n </div>\n )}\n {showLimit && (\n <div className=\"bcs-Versions-maxEntries\" data-testid=\"max-versions\">\n <FormattedMessage\n {...messages.versionMaxEntries}\n values={{\n maxVersions: MAX_VERSIONS,\n }}\n />\n </div>\n )}\n </LoadingIndicatorWrapper>\n </SidebarContent>\n );\n};\n\nexport default VersionsSidebar;\n"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;;AAEA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,gBAAgB,QAAQ,YAAY;AAE7C,OAAOC,WAAW,MAAM,kCAAkC;AAC1D,OAAOC,QAAQ,MAAM,YAAY;AACjC,OAAOC,cAAc,MAAM,mBAAmB;AAC9C,OAAOC,YAAY,MAAM,gBAAgB;AACzC,SAASC,UAAU,QAAQ,yBAAyB;AACpD,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,SAASC,uBAAuB,QAAQ,uCAAuC;AAE/E,OAAO,wBAAwB;AAE/B,MAAMC,YAAY,GAAGF,iBAAiB;AAYtC,MAAMG,eAAe,GAAGC,IAAA,IAAgE;EAAA,IAA/D;MAAEC,KAAK;MAAEC,SAAS;MAAEC,UAAU;MAAEC;IAAyB,CAAC,GAAAJ,IAAA;IAAbK,IAAI,GAAAC,wBAAA,CAAAN,IAAA,EAAAO,SAAA;EACtE,MAAMC,SAAS,GAAGJ,QAAQ,CAACK,MAAM,IAAIX,YAAY;EACjD,MAAMY,YAAY,GAAG,CAAC,CAACN,QAAQ,CAACK,MAAM;EACtC,MAAME,SAAS,GAAG,CAACT,SAAS,IAAI,CAACQ,YAAY;EAC7C,MAAME,SAAS,GAAG,CAAC,CAACX,KAAK;EAEzB,oBACIZ,KAAA,CAAAwB,aAAA,CAACpB,cAAc;IACXqB,SAAS,EAAC,cAAc;IACxB,wBAAqB,SAAS;IAC9B,sBAAmB,UAAU;IAC7BC,KAAK,eACD1B,KAAA,CAAAwB,aAAA,CAAAxB,KAAA,CAAA2B,QAAA,qBACI3B,KAAA,CAAAwB,aAAA,CAAClB,UAAU;MAAC,qBAAkB,MAAM;MAACsB,EAAE,EAAE,IAAId,UAAU;IAAG,CAAE,CAAC,eAC7Dd,KAAA,CAAAwB,aAAA,CAACvB,gBAAgB,EAAKE,QAAQ,CAAC0B,aAAgB,CACjD;EACL,gBAED7B,KAAA,CAAAwB,aAAA,CAAChB,uBAAuB;IAACiB,SAAS,EAAC,sBAAsB;IAACK,eAAe,EAAC,KAAK;IAACjB,SAAS,EAAEA;EAAU,GAChGU,SAAS,iBACNvB,KAAA,CAAAwB,aAAA,CAACtB,WAAW;IAACwB,KAAK,eAAE1B,KAAA,CAAAwB,aAAA,CAACvB,gBAAgB,EAAKE,QAAQ,CAAC4B,kBAAqB;EAAE,gBACtE/B,KAAA,CAAAwB,aAAA,CAACvB,gBAAgB,EAAKW,KAAQ,CACrB,CAChB,EAEAU,SAAS,iBACNtB,KAAA,CAAAwB,aAAA;IAAKC,SAAS,EAAC;EAAoB,gBAC/BzB,KAAA,CAAAwB,aAAA,CAACvB,gBAAgB,EAAKE,QAAQ,CAAC6B,aAAgB,CAC9C,CACR,EAEAX,YAAY,iBACTrB,KAAA,CAAAwB,aAAA;IAAKC,SAAS,EAAC,mBAAmB;IAAC,eAAY;EAAmB,gBAC9DzB,KAAA,CAAAwB,aAAA,CAACnB,YAAY,EAAA4B,QAAA;IAAClB,QAAQ,EAAEA;EAAS,GAAKC,IAAI,CAAG,CAC5C,CACR,EACAG,SAAS,iBACNnB,KAAA,CAAAwB,aAAA;IAAKC,SAAS,EAAC,yBAAyB;IAAC,eAAY;EAAc,gBAC/DzB,KAAA,CAAAwB,aAAA,CAACvB,gBAAgB,EAAAgC,QAAA,KACT9B,QAAQ,CAAC+B,iBAAiB;IAC9BC,MAAM,EAAE;MACJC,WAAW,EAAE3B;IACjB;EAAE,EACL,CACA,CAEY,CACb,CAAC;AAEzB,CAAC;AAED,eAAeC,eAAe","ignoreList":[]}
1
+ {"version":3,"file":"VersionsSidebar.js","names":["React","FormattedMessage","Route","InlineError","messages","SidebarContent","VersionsMenu","BackButton","DEFAULT_FETCH_END","LoadingIndicatorWrapper","MAX_VERSIONS","VersionsSidebar","_ref","error","isLoading","parentName","versions","rest","_objectWithoutProperties","_excluded","showLimit","length","showVersions","showEmpty","showError","createElement","history","className","title","Fragment","onClick","push","versionsTitle","crawlerPosition","versionServerError","versionsEmpty","_extends","versionMaxEntries","values","maxVersions"],"sources":["../../../../src/elements/content-sidebar/versions/VersionsSidebar.js"],"sourcesContent":["/**\n * @flow\n * @file Versions Sidebar component\n * @author Box\n */\n\nimport * as React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { Route } from 'react-router-dom';\nimport type { MessageDescriptor } from 'react-intl';\nimport InlineError from '../../../components/inline-error';\nimport messages from './messages';\nimport SidebarContent from '../SidebarContent';\nimport VersionsMenu from './VersionsMenu';\nimport { BackButton } from '../../common/nav-button';\nimport { DEFAULT_FETCH_END } from '../../../constants';\nimport { LoadingIndicatorWrapper } from '../../../components/loading-indicator';\nimport type { BoxItemVersion } from '../../../common/types/core';\nimport './VersionsSidebar.scss';\n\nconst MAX_VERSIONS = DEFAULT_FETCH_END;\n\ntype Props = {\n error?: MessageDescriptor,\n fileId: string,\n isLoading: boolean,\n parentName: string,\n versionCount: number,\n versionLimit: number,\n versions: Array<BoxItemVersion>,\n};\n\nconst VersionsSidebar = ({ error, isLoading, parentName, versions, ...rest }: Props) => {\n const showLimit = versions.length >= MAX_VERSIONS;\n const showVersions = !!versions.length;\n const showEmpty = !isLoading && !showVersions;\n const showError = !!error;\n\n return (\n <Route>\n {({ history }) => (\n <SidebarContent\n className=\"bcs-Versions\"\n data-resin-component=\"preview\"\n data-resin-feature=\"versions\"\n title={\n <>\n <BackButton data-resin-target=\"back\" onClick={() => history.push(`/${parentName}`)} />\n <FormattedMessage {...messages.versionsTitle} />\n </>\n }\n >\n <LoadingIndicatorWrapper\n className=\"bcs-Versions-content\"\n crawlerPosition=\"top\"\n isLoading={isLoading}\n >\n {showError && (\n <InlineError title={<FormattedMessage {...messages.versionServerError} />}>\n <FormattedMessage {...error} />\n </InlineError>\n )}\n\n {showEmpty && (\n <div className=\"bcs-Versions-empty\">\n <FormattedMessage {...messages.versionsEmpty} />\n </div>\n )}\n\n {showVersions && (\n <div className=\"bcs-Versions-menu\" data-testid=\"bcs-Versions-menu\">\n <VersionsMenu versions={versions} {...rest} />\n </div>\n )}\n {showLimit && (\n <div className=\"bcs-Versions-maxEntries\" data-testid=\"max-versions\">\n <FormattedMessage\n {...messages.versionMaxEntries}\n values={{\n maxVersions: MAX_VERSIONS,\n }}\n />\n </div>\n )}\n </LoadingIndicatorWrapper>\n </SidebarContent>\n )}\n </Route>\n );\n};\n\nexport default VersionsSidebar;\n"],"mappings":"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","ignoreList":[]}
@@ -3,5 +3,6 @@ type RenderConnectedOptions = RenderOptions & {
3
3
  wrapperProps?: Record<string, unknown>;
4
4
  };
5
5
  declare const renderConnected: (element: any, options?: RenderConnectedOptions) => import("@testing-library/react").RenderResult<typeof import("@testing-library/dom/types/queries"), HTMLElement, HTMLElement>;
6
+ declare const createUserEvent: () => import("@testing-library/user-event").UserEvent;
6
7
  export * from '@testing-library/react';
7
- export { renderConnected as render };
8
+ export { renderConnected as render, createUserEvent as userEvent };
@@ -6,6 +6,7 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
6
6
  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); }
7
7
  import React from 'react';
8
8
  import { render } from '@testing-library/react';
9
+ import userEventInit from '@testing-library/user-event';
9
10
 
10
11
  // Data Providers
11
12
  import { TooltipProvider } from '@box/blueprint-web';
@@ -23,6 +24,8 @@ const Wrapper = ({
23
24
  const renderConnected = (element, options = {}) => render(element, _objectSpread({
24
25
  wrapper: options.wrapper ? options.wrapper : props => /*#__PURE__*/React.createElement(Wrapper, _extends({}, props, options.wrapperProps))
25
26
  }, options));
27
+ const createUserEvent = () => userEventInit.setup(); // factory function to create isolated userEvent instances
28
+
26
29
  export * from '@testing-library/react';
27
- export { renderConnected as render };
30
+ export { renderConnected as render, createUserEvent as userEvent };
28
31
  //# sourceMappingURL=testing-library.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing-library.js","names":["React","render","TooltipProvider","IntlProvider","FeatureProvider","jest","unmock","Wrapper","children","features","createElement","locale","renderConnected","element","options","_objectSpread","wrapper","props","_extends","wrapperProps"],"sources":["../../src/test-utils/testing-library.tsx"],"sourcesContent":["import React from 'react';\nimport { render, type RenderOptions } from '@testing-library/react';\n\n// Data Providers\nimport { TooltipProvider } from '@box/blueprint-web';\nimport { IntlProvider } from 'react-intl';\nimport { FeatureProvider } from '../elements/common/feature-checking';\n\njest.unmock('react-intl');\n\nconst Wrapper = ({ children, features = {} }) => (\n <FeatureProvider features={features}>\n <TooltipProvider>\n <IntlProvider locale=\"en\">{children}</IntlProvider>\n </TooltipProvider>\n </FeatureProvider>\n);\n\ntype RenderConnectedOptions = RenderOptions & {\n wrapperProps?: Record<string, unknown>;\n};\n\nconst renderConnected = (element, options: RenderConnectedOptions = {}) =>\n render(element, {\n wrapper: options.wrapper ? options.wrapper : props => <Wrapper {...props} {...options.wrapperProps} />,\n ...options,\n });\n\nexport * from '@testing-library/react';\nexport { renderConnected as render };\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,QAA4B,wBAAwB;;AAEnE;AACA,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,YAAY,QAAQ,YAAY;AACzC,SAASC,eAAe,QAAQ,qCAAqC;AAErEC,IAAI,CAACC,MAAM,CAAC,YAAY,CAAC;AAEzB,MAAMC,OAAO,GAAGA,CAAC;EAAEC,QAAQ;EAAEC,QAAQ,GAAG,CAAC;AAAE,CAAC,kBACxCT,KAAA,CAAAU,aAAA,CAACN,eAAe;EAACK,QAAQ,EAAEA;AAAS,gBAChCT,KAAA,CAAAU,aAAA,CAACR,eAAe,qBACZF,KAAA,CAAAU,aAAA,CAACP,YAAY;EAACQ,MAAM,EAAC;AAAI,GAAEH,QAAuB,CACrC,CACJ,CACpB;AAMD,MAAMI,eAAe,GAAGA,CAACC,OAAO,EAAEC,OAA+B,GAAG,CAAC,CAAC,KAClEb,MAAM,CAACY,OAAO,EAAAE,aAAA;EACVC,OAAO,EAAEF,OAAO,CAACE,OAAO,GAAGF,OAAO,CAACE,OAAO,GAAGC,KAAK,iBAAIjB,KAAA,CAAAU,aAAA,CAACH,OAAO,EAAAW,QAAA,KAAKD,KAAK,EAAMH,OAAO,CAACK,YAAY,CAAG;AAAC,GACnGL,OAAO,CACb,CAAC;AAEN,cAAc,wBAAwB;AACtC,SAASF,eAAe,IAAIX,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"testing-library.js","names":["React","render","userEventInit","TooltipProvider","IntlProvider","FeatureProvider","jest","unmock","Wrapper","children","features","createElement","locale","renderConnected","element","options","_objectSpread","wrapper","props","_extends","wrapperProps","createUserEvent","setup","userEvent"],"sources":["../../src/test-utils/testing-library.tsx"],"sourcesContent":["import React from 'react';\nimport { render, type RenderOptions } from '@testing-library/react';\nimport userEventInit from '@testing-library/user-event';\n\n// Data Providers\nimport { TooltipProvider } from '@box/blueprint-web';\nimport { IntlProvider } from 'react-intl';\nimport { FeatureProvider } from '../elements/common/feature-checking';\n\njest.unmock('react-intl');\n\nconst Wrapper = ({ children, features = {} }) => (\n <FeatureProvider features={features}>\n <TooltipProvider>\n <IntlProvider locale=\"en\">{children}</IntlProvider>\n </TooltipProvider>\n </FeatureProvider>\n);\n\ntype RenderConnectedOptions = RenderOptions & {\n wrapperProps?: Record<string, unknown>;\n};\n\nconst renderConnected = (element, options: RenderConnectedOptions = {}) =>\n render(element, {\n wrapper: options.wrapper ? options.wrapper : props => <Wrapper {...props} {...options.wrapperProps} />,\n ...options,\n });\n\nconst createUserEvent = () => userEventInit.setup(); // factory function to create isolated userEvent instances\n\nexport * from '@testing-library/react';\nexport { renderConnected as render, createUserEvent as userEvent };\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,MAAM,QAA4B,wBAAwB;AACnE,OAAOC,aAAa,MAAM,6BAA6B;;AAEvD;AACA,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,YAAY,QAAQ,YAAY;AACzC,SAASC,eAAe,QAAQ,qCAAqC;AAErEC,IAAI,CAACC,MAAM,CAAC,YAAY,CAAC;AAEzB,MAAMC,OAAO,GAAGA,CAAC;EAAEC,QAAQ;EAAEC,QAAQ,GAAG,CAAC;AAAE,CAAC,kBACxCV,KAAA,CAAAW,aAAA,CAACN,eAAe;EAACK,QAAQ,EAAEA;AAAS,gBAChCV,KAAA,CAAAW,aAAA,CAACR,eAAe,qBACZH,KAAA,CAAAW,aAAA,CAACP,YAAY;EAACQ,MAAM,EAAC;AAAI,GAAEH,QAAuB,CACrC,CACJ,CACpB;AAMD,MAAMI,eAAe,GAAGA,CAACC,OAAO,EAAEC,OAA+B,GAAG,CAAC,CAAC,KAClEd,MAAM,CAACa,OAAO,EAAAE,aAAA;EACVC,OAAO,EAAEF,OAAO,CAACE,OAAO,GAAGF,OAAO,CAACE,OAAO,GAAGC,KAAK,iBAAIlB,KAAA,CAAAW,aAAA,CAACH,OAAO,EAAAW,QAAA,KAAKD,KAAK,EAAMH,OAAO,CAACK,YAAY,CAAG;AAAC,GACnGL,OAAO,CACb,CAAC;AAEN,MAAMM,eAAe,GAAGA,CAAA,KAAMnB,aAAa,CAACoB,KAAK,CAAC,CAAC,CAAC,CAAC;;AAErD,cAAc,wBAAwB;AACtC,SAAST,eAAe,IAAIZ,MAAM,EAAEoB,eAAe,IAAIE,SAAS","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "box-ui-elements",
3
- "version": "23.4.0-beta.16",
3
+ "version": "23.4.0-beta.17",
4
4
  "description": "Box UI Elements",
5
5
  "author": "Box (https://www.box.com/)",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -7,7 +7,6 @@
7
7
  import * as React from 'react';
8
8
  import classNames from 'classnames';
9
9
  import { FormattedMessage } from 'react-intl';
10
- import { Route, type Location } from 'react-router-dom';
11
10
  import IconNavigateLeft from '../../../icons/general/IconNavigateLeft';
12
11
  import messages from '../messages';
13
12
  import PlainButton from '../../../components/plain-button';
@@ -15,25 +14,16 @@ import './BackButton.scss';
15
14
 
16
15
  type Props = {
17
16
  className?: string,
18
- to?: Location,
17
+ onClick: () => void,
19
18
  };
20
19
 
21
- const BackButton = ({ className, to, ...rest }: Props) => (
22
- <Route>
23
- {({ history }) => (
24
- <PlainButton
25
- className={classNames('bdl-BackButton', className)}
26
- onClick={() => (to ? history.push(to) : history.goBack())}
27
- type="button"
28
- {...rest}
29
- >
30
- <IconNavigateLeft height={24} width={24} />
31
- <span className="accessibility-hidden">
32
- <FormattedMessage {...messages.back} />
33
- </span>
34
- </PlainButton>
35
- )}
36
- </Route>
20
+ const BackButton = ({ className, onClick, ...rest }: Props) => (
21
+ <PlainButton className={classNames('bdl-BackButton', className)} onClick={onClick} type="button" {...rest}>
22
+ <IconNavigateLeft height={24} width={24} />
23
+ <span className="accessibility-hidden">
24
+ <FormattedMessage {...messages.back} />
25
+ </span>
26
+ </PlainButton>
37
27
  );
38
28
 
39
29
  export default BackButton;