UNPKG

7.38 kBJavaScriptView Raw
1"use strict";
2
3function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
5require("core-js/modules/es.weak-map.js");
6
7require("core-js/modules/es.object.to-string.js");
8
9require("core-js/modules/es.string.iterator.js");
10
11require("core-js/modules/es.array.iterator.js");
12
13require("core-js/modules/web.dom-collections.iterator.js");
14
15require("core-js/modules/es.object.get-own-property-descriptor.js");
16
17require("core-js/modules/es.symbol.js");
18
19require("core-js/modules/es.symbol.description.js");
20
21require("core-js/modules/es.symbol.iterator.js");
22
23Object.defineProperty(exports, "__esModule", {
24 value: true
25});
26exports.AboutScreen = void 0;
27
28require("core-js/modules/es.string.bold.js");
29
30var _react = _interopRequireWildcard(require("react"));
31
32var _semver = _interopRequireDefault(require("@storybook/semver"));
33
34var _theming = require("@storybook/theming");
35
36var _markdownToJsx = _interopRequireDefault(require("markdown-to-jsx"));
37
38var _components = require("@storybook/components");
39
40var _SettingsFooter = _interopRequireDefault(require("./SettingsFooter"));
41
42function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
43
44function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
45
46function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
47
48var Header = _theming.styled.header(function (_ref) {
49 var theme = _ref.theme;
50 return {
51 marginBottom: 20,
52 fontSize: theme.typography.size.m3,
53 fontWeight: theme.typography.weight.black,
54 alignItems: 'center',
55 display: 'flex',
56 '> svg': {
57 height: 32,
58 width: 'auto',
59 marginRight: 8
60 }
61 };
62});
63
64var Subheading = _theming.styled.span(function (_ref2) {
65 var theme = _ref2.theme;
66 return {
67 letterSpacing: '0.35em',
68 textTransform: 'uppercase',
69 fontWeight: theme.typography.weight.black,
70 fontSize: theme.typography.size.s2 - 1,
71 lineHeight: '24px',
72 color: theme.color.mediumdark
73 };
74});
75
76var SubheadingLink = (0, _theming.styled)(_components.Link)(function (_ref3) {
77 var theme = _ref3.theme;
78 return {
79 fontSize: theme.typography.size.s1
80 };
81});
82
83var Subheader = _theming.styled.div({
84 display: 'flex',
85 justifyContent: 'space-between',
86 alignItems: 'center',
87 marginBottom: '.75rem'
88});
89
90var UpdateMessage = _theming.styled.div(function (_ref4) {
91 var status = _ref4.status,
92 theme = _ref4.theme;
93
94 if (status === 'positive') {
95 return {
96 background: theme.background.positive,
97 color: theme.color.positive
98 };
99 }
100
101 if (status === 'negative') {
102 return {
103 background: theme.background.negative,
104 color: theme.color.negative
105 };
106 }
107
108 return {
109 background: '#EAF3FC',
110 color: theme.color.darkest
111 };
112}, function (_ref5) {
113 var theme = _ref5.theme;
114 return {
115 fontWeight: theme.typography.weight.bold,
116 fontSize: theme.typography.size.s2,
117 padding: '10px 20px',
118 marginBottom: 24,
119 borderRadius: theme.appBorderRadius,
120 border: "1px solid ".concat(theme.appBorderColor),
121 textAlign: 'center'
122 };
123});
124
125var ErrorMessage = _theming.styled.div(function (_ref6) {
126 var theme = _ref6.theme;
127 return {
128 fontWeight: theme.typography.weight.bold,
129 textAlign: 'center'
130 };
131});
132
133var Upgrade = _theming.styled.div(function (_ref7) {
134 var theme = _ref7.theme;
135 return {
136 marginTop: 20,
137 borderTop: "1px solid ".concat(theme.appBorderColor)
138 };
139});
140
141var Container = _theming.styled.div({
142 padding: "3rem 20px",
143 maxWidth: 600,
144 margin: '0 auto'
145});
146
147var AboutScreen = function AboutScreen(_ref8) {
148 var _ref8$latest = _ref8.latest,
149 latest = _ref8$latest === void 0 ? null : _ref8$latest,
150 current = _ref8.current;
151
152 var canUpdate = latest && _semver.default.gt(latest.version, current.version);
153
154 var updateMessage;
155
156 if (latest) {
157 if (canUpdate) {
158 updateMessage = /*#__PURE__*/_react.default.createElement(UpdateMessage, {
159 status: "positive"
160 }, "Storybook ", latest.version, " is available. Upgrade from ", current.version, " now.");
161 } else {
162 updateMessage = /*#__PURE__*/_react.default.createElement(UpdateMessage, {
163 status: "neutral"
164 }, "Looking good! You're up to date.");
165 }
166 } else {
167 updateMessage = /*#__PURE__*/_react.default.createElement(UpdateMessage, {
168 status: "negative"
169 }, "Oops! The latest version of Storybook couldn't be fetched.");
170 }
171
172 return /*#__PURE__*/_react.default.createElement(Container, null, /*#__PURE__*/_react.default.createElement(Header, null, /*#__PURE__*/_react.default.createElement(_components.StorybookIcon, null), "Storybook ", current.version), updateMessage, latest ? /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(Subheader, null, /*#__PURE__*/_react.default.createElement(Subheading, null, latest.version, " Changelog"), /*#__PURE__*/_react.default.createElement(SubheadingLink, {
173 secondary: true,
174 href: "https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md",
175 withArrow: true,
176 cancel: false,
177 target: "_blank"
178 }, "Read full changelog")), /*#__PURE__*/_react.default.createElement(_components.DocumentWrapper, null, /*#__PURE__*/_react.default.createElement(_markdownToJsx.default, null, latest.info.plain))) : /*#__PURE__*/_react.default.createElement(ErrorMessage, null, /*#__PURE__*/_react.default.createElement(_components.Link, {
179 href: "https://github.com/storybookjs/storybook/releases",
180 target: "_blank",
181 withArrow: true,
182 secondary: true,
183 cancel: false
184 }, "Check Storybook's release history")), canUpdate && /*#__PURE__*/_react.default.createElement(Upgrade, null, /*#__PURE__*/_react.default.createElement(_components.DocumentWrapper, null, /*#__PURE__*/_react.default.createElement("p", null, /*#__PURE__*/_react.default.createElement("b", null, "Upgrade all Storybook packages to latest:")), /*#__PURE__*/_react.default.createElement(_components.SyntaxHighlighter, {
185 language: "bash",
186 copyable: true,
187 padded: true,
188 bordered: true
189 }, "npx sb upgrade"))), /*#__PURE__*/_react.default.createElement(_SettingsFooter.default, null));
190};
191
192exports.AboutScreen = AboutScreen;
193AboutScreen.displayName = "AboutScreen";
\No newline at end of file