Skip to content

Commit a2ba64d

Browse files
authored
Merge pull request #1181 from plotly/folded-by-default
Support link in logo; Folds folded by default
2 parents 8097fbd + eda2f86 commit a2ba64d

File tree

9 files changed

+57
-78
lines changed

9 files changed

+57
-78
lines changed

package.json

+16-16
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "react-chart-editor",
33
"description": "plotly.js chart editor react component UI",
4-
"version": "0.46.0",
4+
"version": "0.46.1",
55
"author": "Plotly, Inc.",
66
"bugs": {
77
"url": "https://github.com/plotly/react-chart-editor/issues"
@@ -49,32 +49,32 @@
4949
"tinycolor2": "^1.6.0"
5050
},
5151
"devDependencies": {
52-
"@babel/cli": "7.22.15",
53-
"@babel/core": "7.22.15",
52+
"@babel/cli": "7.23.0",
53+
"@babel/core": "7.23.2",
5454
"@babel/eslint-parser": "7.22.15",
55-
"@babel/node": "7.22.15",
55+
"@babel/node": "7.22.19",
5656
"@babel/plugin-proposal-object-rest-spread": "7.20.7",
57-
"@babel/preset-env": "7.22.15",
57+
"@babel/preset-env": "7.23.2",
5858
"@babel/preset-react": "7.22.15",
59-
"@babel/traverse": "7.22.15",
59+
"@babel/traverse": "7.23.2",
6060
"@hot-loader/react-dom": "16.14.0",
6161
"@percy/cli": "1.26.3",
6262
"@percy/storybook": "4.3.6",
6363
"@storybook/blocks": "7.4.1",
6464
"@storybook/react": "7.4.1",
6565
"@storybook/react-webpack5": "7.4.1",
6666
"@storybook/source-loader": "^7.4.1",
67-
"autoprefixer": "10.4.15",
67+
"autoprefixer": "10.4.16",
6868
"babel-jest": "26.6.3",
6969
"babel-loader": "9.1.3",
7070
"babel-plugin-module-resolver": "5.0.0",
7171
"css-loader": "6.8.1",
7272
"cssnano": "6.0.1",
7373
"enzyme": "3.11.0",
7474
"enzyme-adapter-react-16": "1.15.7",
75-
"eslint": "8.48.0",
76-
"eslint-config-prettier": "8.6.0",
77-
"eslint-plugin-import": "2.28.1",
75+
"eslint": "8.53.0",
76+
"eslint-config-prettier": "9.0.0",
77+
"eslint-plugin-import": "2.29.0",
7878
"eslint-plugin-jsx": "0.1.0",
7979
"eslint-plugin-react": "7.33.2",
8080
"eslint-plugin-react-percy": "0.2.4",
@@ -83,12 +83,12 @@
8383
"jest": "26.6.3",
8484
"jest-cli": "26.6.3",
8585
"mkdirp": "3.0.1",
86-
"plotly.js": "2.26.0",
87-
"postcss": "8.4.29",
86+
"plotly.js": "2.27.0",
87+
"postcss": "8.4.31",
8888
"postcss-cli": "10.1.0",
8989
"postcss-combine-duplicated-selectors": "10.0.3",
9090
"postcss-import": "15.1.0",
91-
"postcss-preset-env": "9.1.3",
91+
"postcss-preset-env": "9.3.0",
9292
"prettier": "2.8.4",
9393
"react": "16.14.0",
9494
"react-ace": "7.0.5",
@@ -97,12 +97,12 @@
9797
"react-inspector": "5.1.1",
9898
"react-test-renderer": "16.14.0",
9999
"request": "2.88.2",
100-
"rimraf": "5.0.1",
101-
"sass": "1.66.1",
100+
"rimraf": "5.0.5",
101+
"sass": "1.69.5",
102102
"sass-loader": "13.3.2",
103103
"storybook": "7.4.1",
104104
"style-loader": "3.3.3",
105-
"webpack": "5.88.2",
105+
"webpack": "5.89.0",
106106
"webpack-cli": "5.1.4",
107107
"webpack-dev-server": "4.15.1"
108108
},

renovate.json

-28
This file was deleted.

scripts/translationKeys/combined-translation-keys.txt

+12-12
Large diffs are not rendered by default.

scripts/translationKeys/translation-keys.txt

+12-12
Large diffs are not rendered by default.

src/DefaultEditor.js

+8-6
Original file line numberDiff line numberDiff line change
@@ -78,19 +78,20 @@ class DefaultEditor extends Component {
7878

7979
render() {
8080
const _ = this.context.localize;
81-
const logo = this.props.logoSrc && <Logo src={this.props.logoSrc} />;
81+
const {logoSrc, logoLinkUrl, menuPanelOrder, children} = this.props;
82+
const logo = logoSrc && <Logo src={logoSrc} link={logoLinkUrl} />;
8283

8384
return (
84-
<PanelMenuWrapper menuPanelOrder={this.props.menuPanelOrder}>
85-
{logo ? logo : null}
85+
<PanelMenuWrapper menuPanelOrder={menuPanelOrder}>
86+
{logo || null}
8687
<GraphCreatePanel group={_('Structure')} name={_('Traces')} />
8788
<GraphSubplotsPanel group={_('Structure')} name={_('Subplots')} />
8889
{this.hasTransforms() && (
8990
<GraphTransformsPanel group={_('Structure')} name={_('Transforms')} />
9091
)}
91-
<StyleLayoutPanel group={_('Style')} name={_('General')} />
92+
<StyleLayoutPanel group={_('Style')} name={_('General')} collapsedOnStart />
9293
<StyleTracesPanel group={_('Style')} name={_('Traces')} />
93-
{this.hasAxes() && <StyleAxesPanel group={_('Style')} name={_('Axes')} />}
94+
{this.hasAxes() && <StyleAxesPanel group={_('Style')} name={_('Axes')} collapsedOnStart />}
9495
{this.hasMaps() && <StyleMapsPanel group={_('Style')} name={_('Maps')} />}
9596
{this.hasLegend() && <StyleLegendPanel group={_('Style')} name={_('Legend')} />}
9697
{this.hasColorbars() && <StyleColorbarsPanel group={_('Style')} name={_('Color Bars')} />}
@@ -99,7 +100,7 @@ class DefaultEditor extends Component {
99100
<StyleImagesPanel group={_('Annotate')} name={_('Images')} />
100101
{this.hasSliders() && <StyleSlidersPanel group={_('Control')} name={_('Sliders')} />}
101102
{this.hasMenus() && <StyleUpdateMenusPanel group={_('Control')} name={_('Menus')} />}
102-
{this.props.children ? this.props.children : null}
103+
{children || null}
103104
</PanelMenuWrapper>
104105
);
105106
}
@@ -108,6 +109,7 @@ class DefaultEditor extends Component {
108109
DefaultEditor.propTypes = {
109110
children: PropTypes.node,
110111
logoSrc: PropTypes.string,
112+
logoLinkUrl: PropTypes.string,
111113
menuPanelOrder: PropTypes.array,
112114
};
113115

src/components/containers/PlotlyPanel.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ export class Panel extends Component {
6868
});
6969

7070
if (this.state.individualFoldStates.length !== numFolds) {
71-
const newFoldStates = new Array(numFolds).fill(false);
71+
const newFoldStates = new Array(numFolds).fill(this.props.collapsedOnStart);
7272
this.setState({
7373
individualFoldStates: this.props.addAction
7474
? newFoldStates.map((e, i) => i !== numFolds - 1)
@@ -129,10 +129,12 @@ Panel.propTypes = {
129129
noPadding: PropTypes.bool,
130130
showExpandCollapse: PropTypes.bool,
131131
canReorder: PropTypes.bool,
132+
collapsedOnStart: PropTypes.bool,
132133
};
133134

134135
Panel.defaultProps = {
135136
showExpandCollapse: true,
137+
collapsedOnStart: false,
136138
};
137139

138140
Panel.contextTypes = {

src/components/widgets/Logo.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,15 @@ import React, {Component} from 'react';
33

44
export default class Logo extends Component {
55
render() {
6-
return <img className="sidebar__logo" src={this.props.src} />;
6+
const {link, src} = this.props;
7+
const image = <img className="sidebar__logo" src={src} />;
8+
return link ? <a href={this.props.link}>{image}</a> : image;
79
}
810
}
911

1012
Logo.plotly_editor_traits = {sidebar_element: true};
1113

1214
Logo.propTypes = {
1315
src: PropTypes.string,
16+
link: PropTypes.string,
1417
};

src/default_panels/StyleAxesPanel.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ class StyleAxesPanel extends Component {
2727
render() {
2828
const {localize: _} = this.context;
2929
return (
30-
<LayoutPanel>
30+
<LayoutPanel {...this.props}>
3131
<AxesFold
3232
name={_('Titles')}
3333
axisFilter={(axis) => !(axis._name.includes('angular') || axis._subplot.includes('geo'))}

src/default_panels/StyleLayoutPanel.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import {HoverColor} from '../components/fields/derived';
2121
import DataSelector from '../components/fields/DataSelector';
2222

2323
const StyleLayoutPanel = (props, {localize: _}) => (
24-
<LayoutPanel>
24+
<LayoutPanel {...props}>
2525
<PlotlyFold name={_('Defaults')}>
2626
<ColorPicker label={_('Plot Background')} attr="plot_bgcolor" />
2727
<ColorPicker label={_('Margin Color')} attr="paper_bgcolor" />

0 commit comments

Comments
 (0)