@pie-lib/config-ui 11.10.0-beta.2 → 11.10.0-beta.4

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 (64) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/lib/alert-dialog.js +75 -0
  3. package/lib/alert-dialog.js.map +1 -0
  4. package/lib/checkbox.js +99 -0
  5. package/lib/checkbox.js.map +1 -0
  6. package/lib/choice-configuration/feedback-menu.js +164 -0
  7. package/lib/choice-configuration/feedback-menu.js.map +1 -0
  8. package/lib/choice-configuration/index.js +445 -0
  9. package/lib/choice-configuration/index.js.map +1 -0
  10. package/lib/choice-utils.js +54 -0
  11. package/lib/choice-utils.js.map +1 -0
  12. package/lib/feedback-config/feedback-selector.js +195 -0
  13. package/lib/feedback-config/feedback-selector.js.map +1 -0
  14. package/lib/feedback-config/group.js +75 -0
  15. package/lib/feedback-config/group.js.map +1 -0
  16. package/lib/feedback-config/index.js +189 -0
  17. package/lib/feedback-config/index.js.map +1 -0
  18. package/lib/form-section.js +46 -0
  19. package/lib/form-section.js.map +1 -0
  20. package/lib/help.js +147 -0
  21. package/lib/help.js.map +1 -0
  22. package/lib/index.js +216 -0
  23. package/lib/index.js.map +1 -0
  24. package/lib/input.js +139 -0
  25. package/lib/input.js.map +1 -0
  26. package/lib/inputs.js +139 -0
  27. package/lib/inputs.js.map +1 -0
  28. package/lib/langs.js +179 -0
  29. package/lib/langs.js.map +1 -0
  30. package/lib/layout/config-layout.js +143 -0
  31. package/lib/layout/config-layout.js.map +1 -0
  32. package/lib/layout/index.js +24 -0
  33. package/lib/layout/index.js.map +1 -0
  34. package/lib/layout/layout-contents.js +191 -0
  35. package/lib/layout/layout-contents.js.map +1 -0
  36. package/lib/layout/settings-box.js +86 -0
  37. package/lib/layout/settings-box.js.map +1 -0
  38. package/lib/mui-box/index.js +79 -0
  39. package/lib/mui-box/index.js.map +1 -0
  40. package/lib/number-text-field-custom.js +458 -0
  41. package/lib/number-text-field-custom.js.map +1 -0
  42. package/lib/number-text-field.js +267 -0
  43. package/lib/number-text-field.js.map +1 -0
  44. package/lib/radio-with-label.js +49 -0
  45. package/lib/radio-with-label.js.map +1 -0
  46. package/lib/settings/display-size.js +77 -0
  47. package/lib/settings/display-size.js.map +1 -0
  48. package/lib/settings/index.js +143 -0
  49. package/lib/settings/index.js.map +1 -0
  50. package/lib/settings/panel.js +463 -0
  51. package/lib/settings/panel.js.map +1 -0
  52. package/lib/settings/settings-radio-label.js +53 -0
  53. package/lib/settings/settings-radio-label.js.map +1 -0
  54. package/lib/settings/toggle.js +74 -0
  55. package/lib/settings/toggle.js.map +1 -0
  56. package/lib/tabs/index.js +110 -0
  57. package/lib/tabs/index.js.map +1 -0
  58. package/lib/tags-input/index.js +198 -0
  59. package/lib/tags-input/index.js.map +1 -0
  60. package/lib/two-choice.js +180 -0
  61. package/lib/two-choice.js.map +1 -0
  62. package/lib/with-stateful-model.js +84 -0
  63. package/lib/with-stateful-model.js.map +1 -0
  64. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/inputs.jsx"],"names":["InputTypes","classes","PropTypes","object","isRequired","className","string","label","checked","bool","onChange","func","disabled","error","RawInputSwitch","switchRoot","propTypes","InputSwitch","justifyContent","transform","RawInputCheckbox","props","checkboxRoot","customColor","RawInputRadio","radioRoot","InputCheckbox","theme","color","palette","main","tertiary","InputRadio"],"mappings":"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","sourcesContent":["import Checkbox from '@material-ui/core/Checkbox';\nimport Radio from '@material-ui/core/Radio';\nimport { InputContainer } from '@pie-lib/render-ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport Switch from '@material-ui/core/Switch';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { color } from '@pie-lib/render-ui';\n\nconst InputTypes = {\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n label: PropTypes.string,\n checked: PropTypes.bool,\n onChange: PropTypes.func,\n disabled: PropTypes.bool,\n error: PropTypes.string,\n};\n\nconst RawInputSwitch = ({ classes, className, label, checked, onChange }) => {\n return (\n <InputContainer className={className} label={label}>\n <Switch className={classes.switchRoot} checked={checked} onChange={onChange} aria-label={label} />\n </InputContainer>\n );\n};\n\nRawInputSwitch.propTypes = { ...InputTypes };\n\nconst InputSwitch = withStyles({\n switchRoot: {\n justifyContent: 'inherit',\n transform: 'translate(-20%, 20%)',\n },\n})(RawInputSwitch);\n\nconst RawInputCheckbox = (props) => {\n const { classes, className, label, checked, onChange, disabled, error } = props;\n\n return (\n <InputContainer className={className} label={label}>\n <Checkbox\n className={classNames(classes.checkboxRoot, classes.customColor, error && classes.error)}\n disabled={disabled}\n checked={checked}\n onChange={onChange}\n aria-label={label}\n />\n </InputContainer>\n );\n};\n\nRawInputCheckbox.propTypes = { ...InputTypes };\n\nconst RawInputRadio = (props) => {\n const { classes, className, label, checked, onChange, disabled, error } = props;\n\n return (\n <InputContainer className={className} label={label}>\n <Radio\n className={classNames(classes.radioRoot, classes.customColor, error && classes.error)}\n disabled={disabled}\n checked={checked}\n onChange={onChange}\n aria-label={label}\n />\n </InputContainer>\n );\n};\n\nRawInputRadio.propTypes = { ...InputTypes };\n\nconst InputCheckbox = withStyles((theme) => ({\n checkboxRoot: {\n transform: 'translate(-25%, 20%)',\n },\n error: {\n color: theme.palette.error.main,\n },\n customColor: {\n color: `${color.tertiary()} !important`,\n },\n}))(RawInputCheckbox);\n\nconst InputRadio = withStyles((theme) => ({\n radioRoot: {\n transform: 'translate(-20%, 20%)',\n },\n error: {\n color: theme.palette.error.main,\n },\n customColor: {\n color: `${color.tertiary()} !important`,\n },\n}))(RawInputRadio);\n\nexport { InputSwitch, InputCheckbox, InputRadio };\n"],"file":"inputs.js"}
package/lib/langs.js ADDED
@@ -0,0 +1,179 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.RawLangs = exports.LanguageControls = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
24
+ var _Input = _interopRequireDefault(require("@material-ui/core/Input"));
25
+
26
+ var _InputLabel = _interopRequireDefault(require("@material-ui/core/InputLabel"));
27
+
28
+ var _propTypes = _interopRequireDefault(require("prop-types"));
29
+
30
+ var _react = _interopRequireDefault(require("react"));
31
+
32
+ var _classnames = _interopRequireDefault(require("classnames"));
33
+
34
+ var _styles = require("@material-ui/core/styles");
35
+
36
+ var _Select = _interopRequireDefault(require("@material-ui/core/Select"));
37
+
38
+ var _MenuItem = _interopRequireDefault(require("@material-ui/core/MenuItem"));
39
+
40
+ var _FormControl = _interopRequireDefault(require("@material-ui/core/FormControl"));
41
+
42
+ var _debug = _interopRequireDefault(require("debug"));
43
+
44
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
45
+
46
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
47
+
48
+ var log = (0, _debug["default"])('pie-elements:config-ui:langs');
49
+
50
+ var styles = function styles(theme) {
51
+ return {
52
+ root: {
53
+ flexDirection: 'column',
54
+ alignItems: 'start',
55
+ display: 'flex',
56
+ position: 'relative',
57
+ paddingTop: '0px',
58
+ paddingRight: '0px'
59
+ },
60
+ formControl: {
61
+ position: 'initial'
62
+ },
63
+ inputLabel: {
64
+ paddingBottom: theme.spacing.unit
65
+ }
66
+ };
67
+ };
68
+
69
+ var RawLangs = /*#__PURE__*/function (_React$Component) {
70
+ (0, _inherits2["default"])(RawLangs, _React$Component);
71
+
72
+ var _super = _createSuper(RawLangs);
73
+
74
+ function RawLangs(props) {
75
+ var _this;
76
+
77
+ (0, _classCallCheck2["default"])(this, RawLangs);
78
+ _this = _super.call(this, props);
79
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "choose", function (event) {
80
+ log('[choose] event: ', event);
81
+
82
+ if (_this.props.onChange) {
83
+ _this.props.onChange(event.target.value);
84
+ }
85
+ });
86
+ _this.uid = props.uid || (Math.random() * 10000).toFixed();
87
+ return _this;
88
+ }
89
+
90
+ (0, _createClass2["default"])(RawLangs, [{
91
+ key: "render",
92
+ value: function render() {
93
+ var _this$props = this.props,
94
+ langs = _this$props.langs,
95
+ selected = _this$props.selected,
96
+ label = _this$props.label,
97
+ classes = _this$props.classes;
98
+ log('[render] selected:', selected);
99
+ return /*#__PURE__*/_react["default"].createElement("div", {
100
+ className: classes.root
101
+ }, /*#__PURE__*/_react["default"].createElement(_FormControl["default"], {
102
+ className: classes.formControl
103
+ }, /*#__PURE__*/_react["default"].createElement(_InputLabel["default"], {
104
+ className: classes.inputLabel,
105
+ htmlFor: this.uid
106
+ }, label), /*#__PURE__*/_react["default"].createElement(_Select["default"], {
107
+ value: selected,
108
+ onChange: this.choose,
109
+ input: /*#__PURE__*/_react["default"].createElement(_Input["default"], {
110
+ id: this.uid
111
+ })
112
+ }, langs.map(function (l, index) {
113
+ return /*#__PURE__*/_react["default"].createElement(_MenuItem["default"], {
114
+ key: index,
115
+ value: l
116
+ }, l);
117
+ }))));
118
+ }
119
+ }]);
120
+ return RawLangs;
121
+ }(_react["default"].Component);
122
+
123
+ exports.RawLangs = RawLangs;
124
+ (0, _defineProperty2["default"])(RawLangs, "propTypes", {
125
+ onChange: _propTypes["default"].func,
126
+ langs: _propTypes["default"].array,
127
+ selected: _propTypes["default"].string,
128
+ label: _propTypes["default"].string,
129
+ classes: _propTypes["default"].object.isRequired,
130
+ uid: _propTypes["default"].string
131
+ });
132
+ var Langs = (0, _styles.withStyles)(styles, {
133
+ name: 'Langs'
134
+ })(RawLangs);
135
+ var _default = Langs;
136
+ exports["default"] = _default;
137
+ var LanguageControls = (0, _styles.withStyles)({
138
+ languageControls: {
139
+ display: 'grid',
140
+ gridAutoFlow: 'column',
141
+ gridAutoColumns: '1fr',
142
+ gridGap: '8px'
143
+ }
144
+ })(function (_ref) {
145
+ var classes = _ref.classes,
146
+ langs = _ref.langs,
147
+ activeLang = _ref.activeLang,
148
+ defaultLang = _ref.defaultLang,
149
+ onActiveLangChange = _ref.onActiveLangChange,
150
+ onDefaultLangChange = _ref.onDefaultLangChange,
151
+ className = _ref.className;
152
+ var names = (0, _classnames["default"])(classes.languageControls, className);
153
+ return /*#__PURE__*/_react["default"].createElement("div", {
154
+ className: names
155
+ }, /*#__PURE__*/_react["default"].createElement(Langs, {
156
+ label: "Choose language to edit",
157
+ langs: langs,
158
+ selected: activeLang,
159
+ onChange: function onChange(l) {
160
+ return onActiveLangChange(l);
161
+ }
162
+ }), /*#__PURE__*/_react["default"].createElement(Langs, {
163
+ label: "Default language",
164
+ langs: langs,
165
+ selected: defaultLang,
166
+ onChange: function onChange(l) {
167
+ return onDefaultLangChange(l);
168
+ }
169
+ }));
170
+ });
171
+ exports.LanguageControls = LanguageControls;
172
+ LanguageControls.propTypes = {
173
+ langs: _propTypes["default"].array,
174
+ activeLang: _propTypes["default"].string.isRequired,
175
+ defaultLang: _propTypes["default"].string.isRequired,
176
+ onActiveLangChange: _propTypes["default"].func.isRequired,
177
+ onDefaultLangChange: _propTypes["default"].func.isRequired
178
+ };
179
+ //# sourceMappingURL=langs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/langs.jsx"],"names":["log","styles","theme","root","flexDirection","alignItems","display","position","paddingTop","paddingRight","formControl","inputLabel","paddingBottom","spacing","unit","RawLangs","props","event","onChange","target","value","uid","Math","random","toFixed","langs","selected","label","classes","choose","map","l","index","React","Component","PropTypes","func","array","string","object","isRequired","Langs","name","LanguageControls","languageControls","gridAutoFlow","gridAutoColumns","gridGap","activeLang","defaultLang","onActiveLangChange","onDefaultLangChange","className","names","propTypes"],"mappings":"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","sourcesContent":["import Input from '@material-ui/core/Input';\nimport InputLabel from '@material-ui/core/InputLabel';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport FormControl from '@material-ui/core/FormControl';\nimport debug from 'debug';\n\nconst log = debug('pie-elements:config-ui:langs');\n\nconst styles = (theme) => ({\n root: {\n flexDirection: 'column',\n alignItems: 'start',\n display: 'flex',\n position: 'relative',\n paddingTop: '0px',\n paddingRight: '0px',\n },\n formControl: {\n position: 'initial',\n },\n inputLabel: {\n paddingBottom: theme.spacing.unit,\n },\n});\n\nexport class RawLangs extends React.Component {\n static propTypes = {\n onChange: PropTypes.func,\n langs: PropTypes.array,\n selected: PropTypes.string,\n label: PropTypes.string,\n classes: PropTypes.object.isRequired,\n uid: PropTypes.string,\n };\n\n constructor(props) {\n super(props);\n this.uid = props.uid || (Math.random() * 10000).toFixed();\n }\n\n choose = (event) => {\n log('[choose] event: ', event);\n\n if (this.props.onChange) {\n this.props.onChange(event.target.value);\n }\n };\n\n render() {\n let { langs, selected, label, classes } = this.props;\n\n log('[render] selected:', selected);\n\n return (\n <div className={classes.root}>\n <FormControl className={classes.formControl}>\n <InputLabel className={classes.inputLabel} htmlFor={this.uid}>\n {label}\n </InputLabel>\n\n <Select value={selected} onChange={this.choose} input={<Input id={this.uid} />}>\n {langs.map((l, index) => (\n <MenuItem key={index} value={l}>\n {l}\n </MenuItem>\n ))}\n </Select>\n </FormControl>\n </div>\n );\n }\n}\n\nconst Langs = withStyles(styles, { name: 'Langs' })(RawLangs);\nexport default Langs;\n\nexport const LanguageControls = withStyles({\n languageControls: {\n display: 'grid',\n gridAutoFlow: 'column',\n gridAutoColumns: '1fr',\n gridGap: '8px',\n },\n})(({ classes, langs, activeLang, defaultLang, onActiveLangChange, onDefaultLangChange, className }) => {\n const names = classNames(classes.languageControls, className);\n\n return (\n <div className={names}>\n <Langs\n label=\"Choose language to edit\"\n langs={langs}\n selected={activeLang}\n onChange={(l) => onActiveLangChange(l)}\n />\n <Langs label=\"Default language\" langs={langs} selected={defaultLang} onChange={(l) => onDefaultLangChange(l)} />\n </div>\n );\n});\n\nLanguageControls.propTypes = {\n langs: PropTypes.array,\n activeLang: PropTypes.string.isRequired,\n defaultLang: PropTypes.string.isRequired,\n onActiveLangChange: PropTypes.func.isRequired,\n onDefaultLangChange: PropTypes.func.isRequired,\n};\n"],"file":"langs.js"}
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = void 0;
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
16
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
+
18
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
+
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
+
22
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
+
24
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
+
26
+ var _react = _interopRequireDefault(require("react"));
27
+
28
+ var _reactMeasure = _interopRequireWildcard(require("react-measure"));
29
+
30
+ var _styles = require("@material-ui/core/styles");
31
+
32
+ var _propTypes = _interopRequireDefault(require("prop-types"));
33
+
34
+ var _classnames = _interopRequireDefault(require("classnames"));
35
+
36
+ var _layoutContents = _interopRequireDefault(require("./layout-contents"));
37
+
38
+ var _settingsBox = _interopRequireDefault(require("./settings-box"));
39
+
40
+ var _renderUi = require("@pie-lib/render-ui");
41
+
42
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
+
44
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && 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; }
45
+
46
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
47
+
48
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
49
+
50
+ var styles = {
51
+ extraCSSRules: {}
52
+ };
53
+
54
+ var MeasuredConfigLayout = /*#__PURE__*/function (_AppendCSSRules) {
55
+ (0, _inherits2["default"])(MeasuredConfigLayout, _AppendCSSRules);
56
+
57
+ var _super = _createSuper(MeasuredConfigLayout);
58
+
59
+ function MeasuredConfigLayout() {
60
+ var _this;
61
+
62
+ (0, _classCallCheck2["default"])(this, MeasuredConfigLayout);
63
+
64
+ for (var _len = arguments.length, props = new Array(_len), _key = 0; _key < _len; _key++) {
65
+ props[_key] = arguments[_key];
66
+ }
67
+
68
+ _this = _super.call.apply(_super, [this].concat(props));
69
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onResize", function (contentRect) {
70
+ var bounds = contentRect.bounds;
71
+ var _this$props = _this.props,
72
+ sidePanelMinWidth = _this$props.sidePanelMinWidth,
73
+ dimensions = _this$props.dimensions;
74
+
75
+ var _ref = dimensions || {},
76
+ maxWidth = _ref.maxWidth;
77
+
78
+ var layoutMode = bounds.width > sidePanelMinWidth && (maxWidth ? maxWidth > sidePanelMinWidth : true) ? 'inline' : 'tabbed';
79
+
80
+ _this.setState({
81
+ layoutMode: layoutMode
82
+ });
83
+ });
84
+ _this.state = {
85
+ layoutMode: undefined
86
+ };
87
+ return _this;
88
+ }
89
+
90
+ (0, _createClass2["default"])(MeasuredConfigLayout, [{
91
+ key: "render",
92
+ value: function render() {
93
+ var _this2 = this;
94
+
95
+ return /*#__PURE__*/_react["default"].createElement(_reactMeasure["default"], {
96
+ bounds: true,
97
+ onResize: this.onResize
98
+ }, function (_ref2) {
99
+ var measureRef = _ref2.measureRef;
100
+ var _this2$props = _this2.props,
101
+ children = _this2$props.children,
102
+ settings = _this2$props.settings,
103
+ hideSettings = _this2$props.hideSettings,
104
+ dimensions = _this2$props.dimensions,
105
+ classes = _this2$props.classes;
106
+ var layoutMode = _this2.state.layoutMode;
107
+ var settingsPanel = layoutMode === 'inline' ? /*#__PURE__*/_react["default"].createElement(_settingsBox["default"], {
108
+ className: "settings-box"
109
+ }, settings) : settings;
110
+ var secondaryContent = hideSettings ? null : settingsPanel;
111
+ var finalClass = (0, _classnames["default"])('main-container', classes.extraCSSRules);
112
+ return /*#__PURE__*/_react["default"].createElement("div", {
113
+ ref: measureRef,
114
+ className: finalClass
115
+ }, /*#__PURE__*/_react["default"].createElement(_layoutContents["default"], {
116
+ mode: layoutMode,
117
+ secondary: secondaryContent,
118
+ dimensions: dimensions
119
+ }, children));
120
+ });
121
+ }
122
+ }]);
123
+ return MeasuredConfigLayout;
124
+ }(_renderUi.AppendCSSRules);
125
+
126
+ (0, _defineProperty2["default"])(MeasuredConfigLayout, "propTypes", {
127
+ children: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].arrayOf(_propTypes["default"].element), _propTypes["default"].element]),
128
+ className: _propTypes["default"].string,
129
+ classes: _propTypes["default"].object,
130
+ dimensions: _propTypes["default"].object,
131
+ settings: _propTypes["default"].element,
132
+ sidePanelMinWidth: _propTypes["default"].number,
133
+ hideSettings: _propTypes["default"].bool
134
+ });
135
+ (0, _defineProperty2["default"])(MeasuredConfigLayout, "defaultProps", {
136
+ sidePanelMinWidth: 1135,
137
+ hideSettings: false,
138
+ dimensions: {}
139
+ });
140
+ var ConfigLayout = (0, _styles.withStyles)(styles)((0, _reactMeasure.withContentRect)('bounds')(MeasuredConfigLayout));
141
+ var _default = ConfigLayout;
142
+ exports["default"] = _default;
143
+ //# sourceMappingURL=config-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/layout/config-layout.jsx"],"names":["styles","extraCSSRules","MeasuredConfigLayout","props","contentRect","bounds","sidePanelMinWidth","dimensions","maxWidth","layoutMode","width","setState","state","undefined","onResize","measureRef","children","settings","hideSettings","classes","settingsPanel","secondaryContent","finalClass","AppendCSSRules","PropTypes","oneOfType","string","arrayOf","element","className","object","number","bool","ConfigLayout"],"mappings":"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","sourcesContent":["import React from 'react';\nimport Measure from 'react-measure';\nimport { withContentRect } from 'react-measure';\nimport { withStyles } from '@material-ui/core/styles';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport LayoutContents from './layout-contents';\nimport SettingsBox from './settings-box';\nimport { AppendCSSRules } from '@pie-lib/render-ui';\n\nconst styles = {\n extraCSSRules: {},\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 classes: PropTypes.object,\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 <Measure bounds onResize={this.onResize}>\n {({ measureRef }) => {\n const { children, settings, hideSettings, dimensions, classes } = 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 = classNames('main-container', classes.extraCSSRules);\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 );\n }\n}\n\nconst ConfigLayout = withStyles(styles)(withContentRect('bounds')(MeasuredConfigLayout));\n\nexport default ConfigLayout;\n"],"file":"config-layout.js"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "ConfigLayout", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _configLayout["default"];
12
+ }
13
+ });
14
+ Object.defineProperty(exports, "LayoutContents", {
15
+ enumerable: true,
16
+ get: function get() {
17
+ return _layoutContents["default"];
18
+ }
19
+ });
20
+
21
+ var _configLayout = _interopRequireDefault(require("./config-layout"));
22
+
23
+ var _layoutContents = _interopRequireDefault(require("./layout-contents"));
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/layout/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;;AACA","sourcesContent":["import ConfigLayout from './config-layout';\nimport LayoutContents from './layout-contents';\n\nexport { LayoutContents, ConfigLayout };\n"],"file":"index.js"}
@@ -0,0 +1,191 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
16
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
+
18
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
+
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
+
22
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
+
24
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
+
26
+ var _react = _interopRequireDefault(require("react"));
27
+
28
+ var _classnames = _interopRequireDefault(require("classnames"));
29
+
30
+ var _propTypes = _interopRequireDefault(require("prop-types"));
31
+
32
+ var _core = require("@material-ui/core");
33
+
34
+ var _tabs = _interopRequireDefault(require("../tabs"));
35
+
36
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
37
+
38
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
+
40
+ var RawLayoutContents = /*#__PURE__*/function (_React$Component) {
41
+ (0, _inherits2["default"])(RawLayoutContents, _React$Component);
42
+
43
+ var _super = _createSuper(RawLayoutContents);
44
+
45
+ function RawLayoutContents() {
46
+ var _this;
47
+
48
+ (0, _classCallCheck2["default"])(this, RawLayoutContents);
49
+
50
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
51
+ args[_key] = arguments[_key];
52
+ }
53
+
54
+ _this = _super.call.apply(_super, [this].concat(args));
55
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "getConfiguration", function () {
56
+ var _secondary$props, _secondary$props2, _secondary$props2$chi, _secondary$props2$chi2;
57
+
58
+ var secondary = _this.props.secondary; // in config-layout, secondary can be: <SettingsBox>{settings}</SettingsBox>, settings, null
59
+
60
+ return (secondary === null || secondary === void 0 ? void 0 : (_secondary$props = secondary.props) === null || _secondary$props === void 0 ? void 0 : _secondary$props.configuration) || (secondary === null || secondary === void 0 ? void 0 : (_secondary$props2 = secondary.props) === null || _secondary$props2 === void 0 ? void 0 : (_secondary$props2$chi = _secondary$props2.children) === null || _secondary$props2$chi === void 0 ? void 0 : (_secondary$props2$chi2 = _secondary$props2$chi.props) === null || _secondary$props2$chi2 === void 0 ? void 0 : _secondary$props2$chi2.configuration) || undefined;
61
+ });
62
+ return _this;
63
+ }
64
+
65
+ (0, _createClass2["default"])(RawLayoutContents, [{
66
+ key: "render",
67
+ value: // // eslint-disable-next-line no-unused-vars
68
+ // componentDidUpdate(prevProps, prevState, snapshot) {
69
+ // const configuration = this.getConfiguration();
70
+ // const { mode } = this.props;
71
+ //
72
+ // // promptHolder class is used to wrap up inputs:
73
+ // // we don't want inputs to fill the entire scrollable container,
74
+ // // but instead we want inputs to fit in the first view,
75
+ // // so we calculate the maximum space inputs need
76
+ // try {
77
+ // if (
78
+ // configuration?.maxWidth &&
79
+ // getComputedStyle(document.documentElement).getPropertyValue('--pie-prompt-holder-max-width') !==
80
+ // configuration?.maxWidth
81
+ // ) {
82
+ // document.documentElement.style.setProperty(
83
+ // '--pie-prompt-holder-max-width',
84
+ // mode === 'inline' ? `calc(${configuration.maxWidth} - 340px)` : configuration.maxWidth,
85
+ // );
86
+ // }
87
+ // } catch (e) {
88
+ // console.log(e.toString());
89
+ // }
90
+ // }
91
+ function render() {
92
+ var _this$props = this.props,
93
+ mode = _this$props.mode,
94
+ secondary = _this$props.secondary,
95
+ children = _this$props.children,
96
+ classes = _this$props.classes,
97
+ dimensions = _this$props.dimensions;
98
+
99
+ var _ref = dimensions || {},
100
+ minHeight = _ref.minHeight,
101
+ minWidth = _ref.minWidth,
102
+ maxHeight = _ref.maxHeight,
103
+ maxWidth = _ref.maxWidth;
104
+
105
+ var configuration = this.getConfiguration();
106
+ var hasSettingsPanel = Object.entries(configuration || {}).some(function (_ref2) {
107
+ var _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
108
+ obj = _ref3[1];
109
+
110
+ return !!(obj !== null && obj !== void 0 && obj.settings);
111
+ }); // ebsr has configuration.partA and configuration.partB
112
+ // because we might have nested configuration for other item types as well, let's add this simple regex to check values for settings
113
+
114
+ if (!hasSettingsPanel) {
115
+ try {
116
+ var _JSON$stringify, _JSON$stringify$match;
117
+
118
+ hasSettingsPanel = (_JSON$stringify = JSON.stringify(configuration)) === null || _JSON$stringify === void 0 ? void 0 : (_JSON$stringify$match = _JSON$stringify.match(/settings":true/)) === null || _JSON$stringify$match === void 0 ? void 0 : _JSON$stringify$match.length;
119
+ } catch (e) {
120
+ // eslint-disable-next-line no-console
121
+ console.log(e.toString());
122
+ }
123
+ }
124
+
125
+ return /*#__PURE__*/_react["default"].createElement("div", {
126
+ className: classes.container,
127
+ style: {
128
+ minHeight: minHeight,
129
+ minWidth: minWidth,
130
+ maxHeight: maxHeight,
131
+ maxWidth: maxWidth
132
+ }
133
+ }, mode === 'inline' && /*#__PURE__*/_react["default"].createElement("div", {
134
+ className: (0, _classnames["default"])(classes.flow, classes.contentContainer)
135
+ }, /*#__PURE__*/_react["default"].createElement("div", {
136
+ className: (0, _classnames["default"])(classes.configContainer, 'design-container')
137
+ }, children), hasSettingsPanel && /*#__PURE__*/_react["default"].createElement("div", {
138
+ className: (0, _classnames["default"])(classes.settingsContainer, 'settings-container')
139
+ }, secondary)), mode === 'tabbed' && hasSettingsPanel && /*#__PURE__*/_react["default"].createElement(_tabs["default"], {
140
+ onChange: this.onTabsChange,
141
+ contentClassName: classes.contentContainer,
142
+ indicatorColor: "primary"
143
+ }, /*#__PURE__*/_react["default"].createElement("div", {
144
+ title: "Design",
145
+ className: "design-container"
146
+ }, children), /*#__PURE__*/_react["default"].createElement("div", {
147
+ title: "Settings",
148
+ className: "settings-container"
149
+ }, secondary)), mode === 'tabbed' && !hasSettingsPanel && /*#__PURE__*/_react["default"].createElement("div", {
150
+ className: (0, _classnames["default"])(classes.contentContainer, 'design-container')
151
+ }, children));
152
+ }
153
+ }]);
154
+ return RawLayoutContents;
155
+ }(_react["default"].Component);
156
+
157
+ (0, _defineProperty2["default"])(RawLayoutContents, "propTypes", {
158
+ mode: _propTypes["default"].oneOf(['tabbed', 'inline']),
159
+ secondary: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]),
160
+ children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]),
161
+ classes: _propTypes["default"].object,
162
+ dimensions: _propTypes["default"].object
163
+ });
164
+
165
+ var styles = function styles(theme) {
166
+ return {
167
+ flow: {
168
+ display: 'flex',
169
+ justifyContent: 'space-between'
170
+ },
171
+ container: {
172
+ display: 'flex',
173
+ flexDirection: 'column',
174
+ position: 'relative'
175
+ },
176
+ contentContainer: {
177
+ padding: "".concat(theme.spacing.unit * 2, "px 0")
178
+ },
179
+ configContainer: {
180
+ flex: '1'
181
+ },
182
+ settingsContainer: {
183
+ marginLeft: theme.spacing.unit * 2
184
+ }
185
+ };
186
+ };
187
+
188
+ var _default = (0, _core.withStyles)(styles)(RawLayoutContents);
189
+
190
+ exports["default"] = _default;
191
+ //# sourceMappingURL=layout-contents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/layout/layout-contents.jsx"],"names":["RawLayoutContents","secondary","props","configuration","children","undefined","mode","classes","dimensions","minHeight","minWidth","maxHeight","maxWidth","getConfiguration","hasSettingsPanel","Object","entries","some","obj","settings","JSON","stringify","match","length","e","console","log","toString","container","flow","contentContainer","configContainer","settingsContainer","onTabsChange","React","Component","PropTypes","oneOf","oneOfType","arrayOf","node","object","styles","theme","display","justifyContent","flexDirection","position","padding","spacing","unit","flex","marginLeft"],"mappings":"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","sourcesContent":["import React from 'react';\nimport classnames from 'classnames';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core';\nimport Tabs from '../tabs';\nimport classNames from 'classnames';\n\nclass RawLayoutContents extends React.Component {\n static propTypes = {\n mode: PropTypes.oneOf(['tabbed', 'inline']),\n secondary: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n classes: PropTypes.object,\n dimensions: PropTypes.object,\n };\n\n getConfiguration = () => {\n const { secondary } = this.props;\n // in config-layout, secondary can be: <SettingsBox>{settings}</SettingsBox>, settings, null\n\n return secondary?.props?.configuration || secondary?.props?.children?.props?.configuration || undefined;\n };\n\n // // eslint-disable-next-line no-unused-vars\n // componentDidUpdate(prevProps, prevState, snapshot) {\n // const configuration = this.getConfiguration();\n // const { mode } = this.props;\n //\n // // promptHolder class is used to wrap up inputs:\n // // we don't want inputs to fill the entire scrollable container,\n // // but instead we want inputs to fit in the first view,\n // // so we calculate the maximum space inputs need\n // try {\n // if (\n // configuration?.maxWidth &&\n // getComputedStyle(document.documentElement).getPropertyValue('--pie-prompt-holder-max-width') !==\n // configuration?.maxWidth\n // ) {\n // document.documentElement.style.setProperty(\n // '--pie-prompt-holder-max-width',\n // mode === 'inline' ? `calc(${configuration.maxWidth} - 340px)` : configuration.maxWidth,\n // );\n // }\n // } catch (e) {\n // console.log(e.toString());\n // }\n // }\n\n render() {\n const { mode, secondary, children, classes, dimensions } = this.props;\n const { minHeight, minWidth, maxHeight, maxWidth } = dimensions || {};\n const configuration = this.getConfiguration();\n\n let hasSettingsPanel = Object.entries(configuration || {}).some(([, obj]) => !!obj?.settings);\n // ebsr has configuration.partA and configuration.partB\n // because we might have nested configuration for other item types as well, let's add this simple regex to check values for settings\n\n if (!hasSettingsPanel) {\n try {\n hasSettingsPanel = JSON.stringify(configuration)?.match(/settings\":true/)?.length;\n } catch (e) {\n // eslint-disable-next-line no-console\n console.log(e.toString());\n }\n }\n\n return (\n <div className={classes.container} style={{ minHeight, minWidth, maxHeight, maxWidth }}>\n {mode === 'inline' && (\n <div className={classnames(classes.flow, classes.contentContainer)}>\n <div className={classnames(classes.configContainer, 'design-container')}>{children}</div>\n {hasSettingsPanel && (\n <div className={classnames(classes.settingsContainer, 'settings-container')}>{secondary}</div>\n )}\n </div>\n )}\n\n {mode === 'tabbed' && hasSettingsPanel && (\n <Tabs onChange={this.onTabsChange} contentClassName={classes.contentContainer} indicatorColor=\"primary\">\n <div title=\"Design\" className=\"design-container\">\n {children}\n </div>\n <div title=\"Settings\" className=\"settings-container\">\n {secondary}\n </div>\n </Tabs>\n )}\n\n {mode === 'tabbed' && !hasSettingsPanel && (\n <div className={classNames(classes.contentContainer, 'design-container')}>{children}</div>\n )}\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n flow: {\n display: 'flex',\n justifyContent: 'space-between',\n },\n container: {\n display: 'flex',\n flexDirection: 'column',\n position: 'relative',\n },\n contentContainer: {\n padding: `${theme.spacing.unit * 2}px 0`,\n },\n configContainer: {\n flex: '1',\n },\n settingsContainer: {\n marginLeft: theme.spacing.unit * 2,\n },\n});\n\nexport default withStyles(styles)(RawLayoutContents);\n"],"file":"layout-contents.js"}