@pie-lib/config-ui 11.36.1-mui-update.0 → 11.38.0-mui-update.0

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/CHANGELOG.md CHANGED
@@ -3,51 +3,18 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [11.36.1-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.36.0-mui-update.0...@pie-lib/config-ui@11.36.1-mui-update.0) (2025-11-20)
6
+ # [11.38.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.37.0-mui-update.0...@pie-lib/config-ui@11.38.0-mui-update.0) (2025-12-02)
7
7
 
8
8
 
9
- ### Bug Fixes
10
-
11
- * remove carets from [@pie-lib](https://github.com/pie-lib) dependencies and configure lerna to use exact versions ([c9cd800](https://github.com/pie-framework/pie-lib/commit/c9cd800844abca09e7acf1fd35b2ddf51a6d86df))
12
-
13
-
14
-
15
-
16
-
17
- # [11.36.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.35.0-mui-update.0...@pie-lib/config-ui@11.36.0-mui-update.0) (2025-11-20)
18
-
19
-
20
- ### Bug Fixes
21
-
22
- * remove carret, point to specific libs version ([09939a5](https://github.com/pie-framework/pie-lib/commit/09939a5aca19d7dda03d62c93d4d524f98dd69da))
23
-
24
-
25
-
26
-
27
-
28
- # [11.35.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.34.0-mui-update.0...@pie-lib/config-ui@11.35.0-mui-update.0) (2025-11-20)
29
-
30
-
31
- ### Bug Fixes
32
-
33
- * fix some popper components, fix some math toolbar color ([ed1df55](https://github.com/pie-framework/pie-lib/commit/ed1df558e272686a712767e347df49434790f334))
34
-
35
-
36
-
37
-
38
-
39
- # [11.34.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.33.0-mui-update.0...@pie-lib/config-ui@11.34.0-mui-update.0) (2025-11-19)
40
-
41
-
42
- ### Bug Fixes
9
+ ### Features
43
10
 
44
- * use fixed lib deps ([de7c64d](https://github.com/pie-framework/pie-lib/commit/de7c64d14f13259fe44d47405e4421baef21e24e))
11
+ * sync latest changes from dev ([c936e9c](https://github.com/pie-framework/pie-lib/commit/c936e9c7f9e095e7d9b9805ac2bf72bd271e05f1))
45
12
 
46
13
 
47
14
 
48
15
 
49
16
 
50
- # [11.33.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.32.0-mui-update.0...@pie-lib/config-ui@11.33.0-mui-update.0) (2025-11-18)
17
+ ## [11.30.2](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.30.1...@pie-lib/config-ui@11.30.2) (2025-11-27)
51
18
 
52
19
  **Note:** Version bump only for package @pie-lib/config-ui
53
20
 
@@ -55,48 +22,26 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
55
22
 
56
23
 
57
24
 
58
- # [11.32.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.31.0-mui-update.0...@pie-lib/config-ui@11.32.0-mui-update.0) (2025-11-18)
25
+ ## [11.30.1](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.25.2...@pie-lib/config-ui@11.30.1) (2025-10-22)
59
26
 
60
27
 
61
28
  ### Bug Fixes
62
29
 
63
- * **config-ui:** use the styled components for both tabs case as for the others ([81b8c23](https://github.com/pie-framework/pie-lib/commit/81b8c231c3e469e7a07a3e9d9321093dba8d0bcb))
64
-
65
-
66
-
30
+ * avoid redundant re-renders by guarding layoutMode setState ([3f4aecd](https://github.com/pie-framework/pie-lib/commit/3f4aecd1c862b94a9faf3e058086da30995ae60d))
67
31
 
68
32
 
69
- # [11.31.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.30.0-mui-update.0...@pie-lib/config-ui@11.31.0-mui-update.0) (2025-11-17)
70
33
 
71
34
 
72
- ### Bug Fixes
73
-
74
- * **config-ui, mask-markup:** replace deprecated props, externd AlerDialog with new props ([6e7a163](https://github.com/pie-framework/pie-lib/commit/6e7a16314944745154801010aa4973a03aa15dcc))
75
- * fix feedback menu, adjust choiceconfig style ([f5ea380](https://github.com/pie-framework/pie-lib/commit/f5ea380a108c0da9358c4e9028baa7068f4c5e91))
76
- * select in settings panel ([89d3f93](https://github.com/pie-framework/pie-lib/commit/89d3f935ebf9e13c6d1f538e6b3d76ff5612b5f6))
77
-
78
-
79
- ### Features
80
-
81
- * add MuiButton style overrides for consistent theming ([8fc184e](https://github.com/pie-framework/pie-lib/commit/8fc184e0eca3425cc76f1f76d8f1f24eb56c0779))
82
35
 
36
+ # [11.29.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.28.0...@pie-lib/config-ui@11.29.0) (2025-10-16)
83
37
 
84
-
85
-
86
-
87
- # [11.30.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.29.0-mui-update.0...@pie-lib/config-ui@11.30.0-mui-update.0) (2025-11-05)
88
-
89
-
90
- ### Bug Fixes
91
-
92
- * label positioning in input render-ui ([8012817](https://github.com/pie-framework/pie-lib/commit/80128173dc596181de296633e9413bba8b79db81))
93
- * remove parantheses ([07c8d13](https://github.com/pie-framework/pie-lib/commit/07c8d1366d768b1e22e31fb930a7d41a2a31d5ca))
38
+ **Note:** Version bump only for package @pie-lib/config-ui
94
39
 
95
40
 
96
41
 
97
42
 
98
43
 
99
- # [11.29.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.28.0-mui-update.0...@pie-lib/config-ui@11.29.0-mui-update.0) (2025-11-03)
44
+ # [11.28.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.25.0...@pie-lib/config-ui@11.28.0) (2025-10-16)
100
45
 
101
46
  **Note:** Version bump only for package @pie-lib/config-ui
102
47
 
@@ -104,7 +49,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
104
49
 
105
50
 
106
51
 
107
- # [11.28.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.26.0-mui-update.0...@pie-lib/config-ui@11.28.0-mui-update.0) (2025-11-03)
52
+ # [11.27.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.25.0...@pie-lib/config-ui@11.27.0) (2025-10-16)
108
53
 
109
54
  **Note:** Version bump only for package @pie-lib/config-ui
110
55
 
@@ -112,13 +57,9 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
112
57
 
113
58
 
114
59
 
115
- # [11.26.0-mui-update.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.25.2...@pie-lib/config-ui@11.26.0-mui-update.0) (2025-10-31)
116
-
60
+ # [11.26.0](https://github.com/pie-framework/pie-lib/compare/@pie-lib/config-ui@11.25.0...@pie-lib/config-ui@11.26.0) (2025-10-16)
117
61
 
118
- ### Features
119
-
120
- * **config-ui:** migrate to material v5 PD-5258 ([3ea0799](https://github.com/pie-framework/pie-lib/commit/3ea0799ce78ca20c938c7765b7af5a47194c39d1))
121
- * bump react and react-dom ([01dc19e](https://github.com/pie-framework/pie-lib/commit/01dc19e88bbc8d372c561d1511df1a82937d45af))
62
+ **Note:** Version bump only for package @pie-lib/config-ui
122
63
 
123
64
 
124
65
 
@@ -56,9 +56,13 @@ var MeasuredConfigLayout = /*#__PURE__*/function (_AppendCSSRules) {
56
56
  var _ref = dimensions || {},
57
57
  maxWidth = _ref.maxWidth;
58
58
  var layoutMode = bounds.width > sidePanelMinWidth && (maxWidth ? maxWidth > sidePanelMinWidth : true) ? 'inline' : 'tabbed';
59
- _this.setState({
60
- layoutMode: layoutMode
61
- });
59
+
60
+ // Only update state (and cause a re-render) if the computed layoutMode changed.
61
+ if (layoutMode !== _this.state.layoutMode) {
62
+ _this.setState({
63
+ layoutMode: layoutMode
64
+ });
65
+ }
62
66
  });
63
67
  _this.state = {
64
68
  layoutMode: undefined
@@ -70,35 +74,40 @@ var MeasuredConfigLayout = /*#__PURE__*/function (_AppendCSSRules) {
70
74
  key: "render",
71
75
  value: function render() {
72
76
  var _this2 = this;
73
- return /*#__PURE__*/_react["default"].createElement(_styles.StyledEngineProvider, {
74
- injectFirst: true
75
- }, /*#__PURE__*/_react["default"].createElement(_styles.ThemeProvider, {
76
- theme: theme
77
- }, /*#__PURE__*/_react["default"].createElement(_reactMeasure["default"], {
78
- bounds: true,
79
- onResize: this.onResize
80
- }, function (_ref2) {
81
- var measureRef = _ref2.measureRef;
82
- var _this2$props = _this2.props,
83
- children = _this2$props.children,
84
- settings = _this2$props.settings,
85
- hideSettings = _this2$props.hideSettings,
86
- dimensions = _this2$props.dimensions;
87
- var layoutMode = _this2.state.layoutMode;
88
- var settingsPanel = layoutMode === 'inline' ? /*#__PURE__*/_react["default"].createElement(_settingsBox["default"], {
89
- className: "settings-box"
90
- }, settings) : settings;
91
- var secondaryContent = hideSettings ? null : settingsPanel;
92
- var finalClass = 'main-container';
93
- return /*#__PURE__*/_react["default"].createElement("div", {
94
- ref: measureRef,
95
- className: finalClass
96
- }, /*#__PURE__*/_react["default"].createElement(_layoutContents["default"], {
97
- mode: layoutMode,
98
- secondary: secondaryContent,
99
- dimensions: dimensions
100
- }, children));
101
- })));
77
+ return (
78
+ /*#__PURE__*/
79
+ // TODO: REVIEW MuiThemeProvider usage
80
+ // Different theme object identities will force theme consumers to re-render.
81
+ _react["default"].createElement(_styles.StyledEngineProvider, {
82
+ injectFirst: true
83
+ }, /*#__PURE__*/_react["default"].createElement(_styles.ThemeProvider, {
84
+ theme: theme
85
+ }, /*#__PURE__*/_react["default"].createElement(_reactMeasure["default"], {
86
+ bounds: true,
87
+ onResize: this.onResize
88
+ }, function (_ref2) {
89
+ var measureRef = _ref2.measureRef;
90
+ var _this2$props = _this2.props,
91
+ children = _this2$props.children,
92
+ settings = _this2$props.settings,
93
+ hideSettings = _this2$props.hideSettings,
94
+ dimensions = _this2$props.dimensions;
95
+ var layoutMode = _this2.state.layoutMode;
96
+ var settingsPanel = layoutMode === 'inline' ? /*#__PURE__*/_react["default"].createElement(_settingsBox["default"], {
97
+ className: "settings-box"
98
+ }, settings) : settings;
99
+ var secondaryContent = hideSettings ? null : settingsPanel;
100
+ var finalClass = 'main-container';
101
+ return /*#__PURE__*/_react["default"].createElement("div", {
102
+ ref: measureRef,
103
+ className: finalClass
104
+ }, /*#__PURE__*/_react["default"].createElement(_layoutContents["default"], {
105
+ mode: layoutMode,
106
+ secondary: secondaryContent,
107
+ dimensions: dimensions
108
+ }, children));
109
+ })))
110
+ );
102
111
  }
103
112
  }]);
104
113
  }(_renderUi.AppendCSSRules);
@@ -1 +1 @@
1
- {"version":3,"file":"config-layout.js","names":["_react","_interopRequireDefault","require","_reactMeasure","_interopRequireWildcard","_styles","_propTypes","_layoutContents","_settingsBox","_renderUi","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","theme","createTheme","typography","fontFamily","components","MuiButton","styleOverrides","contained","backgroundColor","color","MeasuredConfigLayout","_AppendCSSRules","_this","_classCallCheck2","_len","arguments","length","props","Array","_key","concat","_defineProperty2","contentRect","bounds","_this$props","sidePanelMinWidth","dimensions","_ref","maxWidth","layoutMode","width","setState","state","undefined","_inherits2","_createClass2","key","value","render","_this2","createElement","StyledEngineProvider","injectFirst","ThemeProvider","onResize","_ref2","measureRef","_this2$props","children","settings","hideSettings","settingsPanel","className","secondaryContent","finalClass","ref","mode","secondary","AppendCSSRules","PropTypes","oneOfType","string","arrayOf","element","object","number","bool","ConfigLayout","withContentRect","_default","exports"],"sources":["../../src/layout/config-layout.jsx"],"sourcesContent":["import React from 'react';\nimport Measure from 'react-measure';\nimport { createTheme, ThemeProvider, StyledEngineProvider } from '@mui/material/styles';\nimport { withContentRect } from 'react-measure';\nimport PropTypes from 'prop-types';\nimport LayoutContents from './layout-contents';\nimport SettingsBox from './settings-box';\nimport { AppendCSSRules } from '@pie-lib/render-ui';\n\nconst theme = createTheme({\n typography: {\n fontFamily: 'inherit',\n },\n components: {\n MuiButton: {\n styleOverrides: {\n contained: {\n backgroundColor: '#e0e0e0',\n color: '#000000',\n '&:hover': {\n backgroundColor: '#bdbdbd',\n },\n },\n },\n },\n },\n});\n\nclass MeasuredConfigLayout extends AppendCSSRules {\n static propTypes = {\n children: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.element), PropTypes.element]),\n className: PropTypes.string,\n dimensions: PropTypes.object,\n settings: PropTypes.element,\n sidePanelMinWidth: PropTypes.number,\n hideSettings: PropTypes.bool,\n };\n\n static defaultProps = {\n sidePanelMinWidth: 1135,\n hideSettings: false,\n dimensions: {},\n };\n\n constructor(...props) {\n super(...props);\n this.state = { layoutMode: undefined };\n }\n\n onResize = (contentRect) => {\n const { bounds } = contentRect;\n const { sidePanelMinWidth, dimensions } = this.props;\n const { maxWidth } = dimensions || {};\n\n const layoutMode =\n bounds.width > sidePanelMinWidth && (maxWidth ? maxWidth > sidePanelMinWidth : true) ? 'inline' : 'tabbed';\n\n this.setState({ layoutMode });\n };\n\n render() {\n return (\n <StyledEngineProvider injectFirst>\n <ThemeProvider theme={theme}>\n <Measure bounds onResize={this.onResize}>\n {({ measureRef }) => {\n const { children, settings, hideSettings, dimensions } = this.props;\n const { layoutMode } = this.state;\n\n const settingsPanel =\n layoutMode === 'inline' ? <SettingsBox className=\"settings-box\">{settings}</SettingsBox> : settings;\n const secondaryContent = hideSettings ? null : settingsPanel;\n const finalClass = 'main-container';\n\n return (\n <div ref={measureRef} className={finalClass}>\n <LayoutContents mode={layoutMode} secondary={secondaryContent} dimensions={dimensions}>\n {children}\n </LayoutContents>\n </div>\n );\n }}\n </Measure>\n </ThemeProvider>\n </StyledEngineProvider>\n );\n }\n}\n\nconst ConfigLayout = withContentRect('bounds')(MeasuredConfigLayout);\n\nexport default ConfigLayout;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"config-layout.js","names":["_react","_interopRequireDefault","require","_reactMeasure","_interopRequireWildcard","_styles","_propTypes","_layoutContents","_settingsBox","_renderUi","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","theme","createTheme","typography","fontFamily","components","MuiButton","styleOverrides","contained","backgroundColor","color","MeasuredConfigLayout","_AppendCSSRules","_this","_classCallCheck2","_len","arguments","length","props","Array","_key","concat","_defineProperty2","contentRect","bounds","_this$props","sidePanelMinWidth","dimensions","_ref","maxWidth","layoutMode","width","state","setState","undefined","_inherits2","_createClass2","key","value","render","_this2","createElement","StyledEngineProvider","injectFirst","ThemeProvider","onResize","_ref2","measureRef","_this2$props","children","settings","hideSettings","settingsPanel","className","secondaryContent","finalClass","ref","mode","secondary","AppendCSSRules","PropTypes","oneOfType","string","arrayOf","element","object","number","bool","ConfigLayout","withContentRect","_default","exports"],"sources":["../../src/layout/config-layout.jsx"],"sourcesContent":["import React from 'react';\nimport Measure from 'react-measure';\nimport { createTheme, ThemeProvider, StyledEngineProvider } from '@mui/material/styles';\nimport { withContentRect } from 'react-measure';\nimport PropTypes from 'prop-types';\nimport LayoutContents from './layout-contents';\nimport SettingsBox from './settings-box';\nimport { AppendCSSRules } from '@pie-lib/render-ui';\n\nconst theme = createTheme({\n typography: {\n fontFamily: 'inherit',\n },\n components: {\n MuiButton: {\n styleOverrides: {\n contained: {\n backgroundColor: '#e0e0e0',\n color: '#000000',\n '&:hover': {\n backgroundColor: '#bdbdbd',\n },\n },\n },\n },\n },\n});\n\nclass MeasuredConfigLayout extends AppendCSSRules {\n static propTypes = {\n children: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.element), PropTypes.element]),\n className: PropTypes.string,\n dimensions: PropTypes.object,\n settings: PropTypes.element,\n sidePanelMinWidth: PropTypes.number,\n hideSettings: PropTypes.bool,\n };\n\n static defaultProps = {\n sidePanelMinWidth: 1135,\n hideSettings: false,\n dimensions: {},\n };\n\n constructor(...props) {\n super(...props);\n this.state = { layoutMode: undefined };\n }\n\n onResize = (contentRect) => {\n const { bounds } = contentRect;\n const { sidePanelMinWidth, dimensions } = this.props;\n const { maxWidth } = dimensions || {};\n\n const layoutMode =\n bounds.width > sidePanelMinWidth && (maxWidth ? maxWidth > sidePanelMinWidth : true) ? 'inline' : 'tabbed';\n\n // Only update state (and cause a re-render) if the computed layoutMode changed.\n if (layoutMode !== this.state.layoutMode) {\n this.setState({ layoutMode });\n }\n };\n\n render() {\n return (\n // TODO: REVIEW MuiThemeProvider usage\n // Different theme object identities will force theme consumers to re-render.\n <StyledEngineProvider injectFirst>\n <ThemeProvider theme={theme}>\n <Measure bounds onResize={this.onResize}>\n {({ measureRef }) => {\n const { children, settings, hideSettings, dimensions } = this.props;\n const { layoutMode } = this.state;\n\n const settingsPanel =\n layoutMode === 'inline' ? <SettingsBox className=\"settings-box\">{settings}</SettingsBox> : settings;\n const secondaryContent = hideSettings ? null : settingsPanel;\n const finalClass = 'main-container';\n\n return (\n <div ref={measureRef} className={finalClass}>\n <LayoutContents mode={layoutMode} secondary={secondaryContent} dimensions={dimensions}>\n {children}\n </LayoutContents>\n </div>\n );\n }}\n </Measure>\n </ThemeProvider>\n </StyledEngineProvider>\n );\n }\n}\n\nconst ConfigLayout = withContentRect('bounds')(MeasuredConfigLayout);\n\nexport default ConfigLayout;\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-lib/config-ui",
3
- "version": "11.36.1-mui-update.0",
3
+ "version": "11.38.0-mui-update.0",
4
4
  "main": "lib/index.js",
5
5
  "module": "src/index.js",
6
6
  "publishConfig": {
@@ -12,9 +12,9 @@
12
12
  "@emotion/style": "^0.8.0",
13
13
  "@mui/icons-material": "^7.3.4",
14
14
  "@mui/material": "^7.3.4",
15
- "@pie-lib/editable-html": "11.28.1-mui-update.0",
16
- "@pie-lib/icons": "2.31.1-mui-update.0",
17
- "@pie-lib/render-ui": "4.42.1-mui-update.0",
15
+ "@pie-lib/editable-html": "11.30.0-mui-update.0",
16
+ "@pie-lib/icons": "2.33.0-mui-update.0",
17
+ "@pie-lib/render-ui": "4.44.0-mui-update.0",
18
18
  "assert": "^1.4.1",
19
19
  "classnames": "^2.2.6",
20
20
  "complex.js": "2.1.1",
@@ -31,5 +31,5 @@
31
31
  "peerDependencies": {
32
32
  "react": "^18.2.0"
33
33
  },
34
- "gitHead": "5483c45ebef918678f098167fecdde7190b291dd"
34
+ "gitHead": "23a7cb8864b947778ac7e6dffdc6fa4a74af5927"
35
35
  }
@@ -55,11 +55,16 @@ class MeasuredConfigLayout extends AppendCSSRules {
55
55
  const layoutMode =
56
56
  bounds.width > sidePanelMinWidth && (maxWidth ? maxWidth > sidePanelMinWidth : true) ? 'inline' : 'tabbed';
57
57
 
58
- this.setState({ layoutMode });
58
+ // Only update state (and cause a re-render) if the computed layoutMode changed.
59
+ if (layoutMode !== this.state.layoutMode) {
60
+ this.setState({ layoutMode });
61
+ }
59
62
  };
60
63
 
61
64
  render() {
62
65
  return (
66
+ // TODO: REVIEW MuiThemeProvider usage
67
+ // Different theme object identities will force theme consumers to re-render.
63
68
  <StyledEngineProvider injectFirst>
64
69
  <ThemeProvider theme={theme}>
65
70
  <Measure bounds onResize={this.onResize}>