mirror of
https://github.com/pybricks/pybricks-code.git
synced 2026-09-12 01:23:52 +00:00
@@ -0,0 +1,24 @@
|
||||
<!-- Refer to https://keepachangelog.com/en/1.0.0/ for guidance. -->
|
||||
|
||||
# Changelog
|
||||
|
||||
## [1.0.0] - 2021-06-08
|
||||
|
||||
### Added
|
||||
- Added changelog link to about dialog.
|
||||
|
||||
### Changed
|
||||
- Updated hub firmware to [v3.0.0].
|
||||
- Updated documentation.
|
||||
|
||||
## Prerelease
|
||||
|
||||
Prerelease changes are documented at [support#48].
|
||||
|
||||
|
||||
<!-- let's try to keep this list sorted -->
|
||||
[support#48]: https://github.com/pybricks/support/issues/48
|
||||
[v3.0.0]: https://github.com/pybricks/pybricks-micropython/blob/master/CHANGELOG.md#300---2021-06-08
|
||||
|
||||
[Unreleased]: https://github.com/pybricks/pybricks-micropython/compare/v1.0.0...HEAD
|
||||
[1.0.0]: https://github.com/pybricks/pybricks-micropython/compare/v1.0.0c1...v1.0.0
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@pybricks/pybricks-code",
|
||||
"version": "1.0.0-rc.2",
|
||||
"version": "1.0.0",
|
||||
"license": "MIT",
|
||||
"author": "The Pybricks Authors",
|
||||
"repository": {
|
||||
@@ -10,7 +10,7 @@
|
||||
"dependencies": {
|
||||
"@blueprintjs/core": "^3.41.0",
|
||||
"@craco/craco": "^6.1.1",
|
||||
"@pybricks/firmware": "4.11.0",
|
||||
"@pybricks/firmware": "4.12.0",
|
||||
"@pybricks/ide-docs": "1.3.3",
|
||||
"@pybricks/mpy-cross-v5": "^2.0.0",
|
||||
"@shopify/react-i18n": "^5.3.0",
|
||||
|
||||
@@ -50,7 +50,7 @@ it('should manage license dialog open/close', async () => {
|
||||
</Provider>,
|
||||
);
|
||||
|
||||
userEvent.click(screen.getByText('Open Source Licenses'));
|
||||
userEvent.click(screen.getByText('Software Licenses'));
|
||||
|
||||
expect(
|
||||
screen.getByText('Pybricks Code is built on open source software.', {
|
||||
|
||||
@@ -10,6 +10,7 @@ import { connect } from 'react-redux';
|
||||
import {
|
||||
appName,
|
||||
appVersion,
|
||||
changelogUrl,
|
||||
legoDisclaimer,
|
||||
pybricksCopyright,
|
||||
pybricksWebsiteUrl,
|
||||
@@ -57,8 +58,12 @@ class AboutDialog extends React.Component<AboutDialogProps> {
|
||||
>
|
||||
{i18n.translate(AboutStringId.LicenseButtonLabel)}
|
||||
</Button>
|
||||
<AnchorButton href={changelogUrl} target="blank_">
|
||||
{i18n.translate(AboutStringId.ChangelogButtonLabel)}
|
||||
<ExternalLinkIcon />
|
||||
</AnchorButton>
|
||||
<AnchorButton href={pybricksWebsiteUrl} target="blank_">
|
||||
{i18n.translate(AboutStringId.WebsiteButtonLabel)}
|
||||
{i18n.translate(AboutStringId.WebsiteButtonLabel)}
|
||||
<ExternalLinkIcon />
|
||||
</AnchorButton>
|
||||
</div>
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
{
|
||||
"about": {
|
||||
"description": "MicroPython for LEGO® Powered Up smart hubs.",
|
||||
"licenseButton": { "label": "Open Source Licenses" },
|
||||
"licenseButton": { "label": "Software Licenses" },
|
||||
"changelogButton": { "label": "Changelog" },
|
||||
"websiteButton": { "label": "Pybricks Website" }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,5 +6,6 @@
|
||||
export enum AboutStringId {
|
||||
Description = 'about.description',
|
||||
LicenseButtonLabel = 'about.licenseButton.label',
|
||||
ChangelogButtonLabel = 'about.changelogButton.label',
|
||||
WebsiteButtonLabel = 'about.websiteButton.label',
|
||||
}
|
||||
|
||||
@@ -13,6 +13,10 @@ export const appName = process.env.REACT_APP_NAME || 'REACT_APP_NAME is undefine
|
||||
export const appVersion =
|
||||
process.env.REACT_APP_VERSION || 'REACT_APP_VERSION is undefined';
|
||||
|
||||
/** URL to Pybricks Code changelog. */
|
||||
export const changelogUrl =
|
||||
'https://github.com/pybricks/pybricks-code/blob/master/CHANGELOG.md';
|
||||
|
||||
/** URL to main Pybricks website. */
|
||||
export const pybricksWebsiteUrl = 'https://pybricks.com';
|
||||
|
||||
|
||||
@@ -44,10 +44,19 @@ body {
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
a.#{$ns}-button {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.#{$ns}-button-text > img {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.#{$ns}-dialog-footer-actions {
|
||||
flex-wrap: wrap;
|
||||
row-gap: 10px;
|
||||
}
|
||||
|
||||
.#{$ns}-form-group > .#{$ns}-label {
|
||||
font-weight: bolder;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"license": {
|
||||
"title": "Open Source Licenses",
|
||||
"title": "Open Source Software Licenses",
|
||||
"description": "{name} is built on open source software. By using {name} you are agreeing to the terms and conditions of all of the included software licenses.",
|
||||
"packageLabel": "Package:",
|
||||
"authorLabel": "Author:",
|
||||
|
||||
@@ -193,7 +193,6 @@ class SettingsDrawer extends React.PureComponent<SettingsProps> {
|
||||
target="blank_"
|
||||
>
|
||||
{i18n.translate(SettingsStringId.HelpProjectsLabel)}
|
||||
|
||||
<ExternalLinkIcon />
|
||||
</AnchorButton>
|
||||
<AnchorButton
|
||||
@@ -202,7 +201,6 @@ class SettingsDrawer extends React.PureComponent<SettingsProps> {
|
||||
target="blank_"
|
||||
>
|
||||
{i18n.translate(SettingsStringId.HelpSupportLabel)}
|
||||
|
||||
<ExternalLinkIcon />
|
||||
</AnchorButton>
|
||||
<AnchorButton
|
||||
@@ -211,7 +209,6 @@ class SettingsDrawer extends React.PureComponent<SettingsProps> {
|
||||
target="blank_"
|
||||
>
|
||||
{i18n.translate(SettingsStringId.HelpChatLabel)}
|
||||
|
||||
<ExternalLinkIcon />
|
||||
</AnchorButton>
|
||||
<AnchorButton
|
||||
@@ -220,7 +217,6 @@ class SettingsDrawer extends React.PureComponent<SettingsProps> {
|
||||
target="blank_"
|
||||
>
|
||||
{i18n.translate(SettingsStringId.HelpBugsLabel)}
|
||||
|
||||
<ExternalLinkIcon />
|
||||
</AnchorButton>
|
||||
<AboutDialog
|
||||
|
||||
@@ -11,9 +11,12 @@ import './external-link.scss';
|
||||
class ExternalLinkIcon extends React.Component {
|
||||
render(): JSX.Element {
|
||||
return (
|
||||
<sup className="pb-external-link">
|
||||
<Icon icon="share" iconSize={12} />
|
||||
</sup>
|
||||
<span className="pb-external-link">
|
||||
{' '}
|
||||
<sup>
|
||||
<Icon icon="share" iconSize={12} />
|
||||
</sup>
|
||||
</span>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,10 @@
|
||||
|
||||
@import '../variables.scss';
|
||||
|
||||
span.pb-external-link {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
// override some button magic in case this is used in a button
|
||||
.#{$ns}-button .pb-external-link .#{$ns}-icon:first-child:last-child {
|
||||
margin: 0;
|
||||
|
||||
@@ -1536,10 +1536,10 @@
|
||||
schema-utils "^2.6.5"
|
||||
source-map "^0.7.3"
|
||||
|
||||
"@pybricks/firmware@4.11.0":
|
||||
version "4.11.0"
|
||||
resolved "https://registry.yarnpkg.com/@pybricks/firmware/-/firmware-4.11.0.tgz#cd65d43a307aceb11b4880e3bb426d77da8a136a"
|
||||
integrity sha512-RUa/qZwOdbmwrfsUD5jB5aXFSFLPffif2N2nJVz/tIyWV3C3Q0XiJ+bC1O8j5oLnw+dJOgmc/7Og9UyuA60yog==
|
||||
"@pybricks/firmware@4.12.0":
|
||||
version "4.12.0"
|
||||
resolved "https://registry.yarnpkg.com/@pybricks/firmware/-/firmware-4.12.0.tgz#274ed378e971a32f8c9fb31603f2dffdcdeab449"
|
||||
integrity sha512-/kWgx2YWRjCS4gldb0TnP6imjo7STX+PcMucu1+q+1emLPrWNueYAKxFM+VwCxG4dYZRLbpLqMBW8woKjAe0ZQ==
|
||||
dependencies:
|
||||
jszip "^3.5.0"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user