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

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 +24 -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,110 @@
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.Tabs = 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 _react = _interopRequireDefault(require("react"));
25
+
26
+ var _Tabs = _interopRequireDefault(require("@material-ui/core/Tabs"));
27
+
28
+ var _Tab = _interopRequireDefault(require("@material-ui/core/Tab"));
29
+
30
+ var _propTypes = _interopRequireDefault(require("prop-types"));
31
+
32
+ var _core = require("@material-ui/core");
33
+
34
+ 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); }; }
35
+
36
+ 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; } }
37
+
38
+ var Tabs = /*#__PURE__*/function (_React$Component) {
39
+ (0, _inherits2["default"])(Tabs, _React$Component);
40
+
41
+ var _super = _createSuper(Tabs);
42
+
43
+ function Tabs(props) {
44
+ var _this;
45
+
46
+ (0, _classCallCheck2["default"])(this, Tabs);
47
+ _this = _super.call(this, props);
48
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleChange", function (event, value) {
49
+ _this.setState({
50
+ value: value
51
+ });
52
+ });
53
+ _this.state = {
54
+ value: 0
55
+ };
56
+ return _this;
57
+ }
58
+
59
+ (0, _createClass2["default"])(Tabs, [{
60
+ key: "render",
61
+ value: function render() {
62
+ var value = this.state.value;
63
+ var _this$props = this.props,
64
+ children = _this$props.children,
65
+ className = _this$props.className,
66
+ contentClassName = _this$props.contentClassName,
67
+ _this$props$contentSt = _this$props.contentStyle,
68
+ contentStyle = _this$props$contentSt === void 0 ? {} : _this$props$contentSt,
69
+ classes = _this$props.classes;
70
+ var tabClasses = {
71
+ root: classes.tabRoot
72
+ };
73
+ return /*#__PURE__*/_react["default"].createElement("div", {
74
+ className: className
75
+ }, /*#__PURE__*/_react["default"].createElement(_Tabs["default"], {
76
+ indicatorColor: "primary",
77
+ value: value,
78
+ onChange: this.handleChange
79
+ }, _react["default"].Children.map(children, function (c, index) {
80
+ return c && c.props.title ? /*#__PURE__*/_react["default"].createElement(_Tab["default"], {
81
+ classes: tabClasses,
82
+ key: index,
83
+ label: c.props.title
84
+ }) : null;
85
+ })), /*#__PURE__*/_react["default"].createElement("div", {
86
+ className: contentClassName,
87
+ style: contentStyle
88
+ }, children[value]));
89
+ }
90
+ }]);
91
+ return Tabs;
92
+ }(_react["default"].Component);
93
+
94
+ exports.Tabs = Tabs;
95
+ (0, _defineProperty2["default"])(Tabs, "propTypes", {
96
+ classes: _propTypes["default"].object,
97
+ className: _propTypes["default"].string,
98
+ contentClassName: _propTypes["default"].string,
99
+ contentStyle: _propTypes["default"].object,
100
+ children: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].node), _propTypes["default"].node]).isRequired
101
+ });
102
+
103
+ var _default = (0, _core.withStyles)(function () {
104
+ return {
105
+ tabRoot: {}
106
+ };
107
+ })(Tabs);
108
+
109
+ exports["default"] = _default;
110
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/tabs/index.jsx"],"names":["Tabs","props","event","value","setState","state","children","className","contentClassName","contentStyle","classes","tabClasses","root","tabRoot","handleChange","React","Children","map","c","index","title","Component","PropTypes","object","string","oneOfType","arrayOf","node","isRequired"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;;;;;IAEaA,I;;;;;AASX,gBAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AADiB,qGAKJ,UAACC,KAAD,EAAQC,KAAR,EAAkB;AAC/B,YAAKC,QAAL,CAAc;AAAED,QAAAA,KAAK,EAALA;AAAF,OAAd;AACD,KAPkB;AAEjB,UAAKE,KAAL,GAAa;AAAEF,MAAAA,KAAK,EAAE;AAAT,KAAb;AAFiB;AAGlB;;;;WAMD,kBAAS;AACP,UAAQA,KAAR,GAAkB,KAAKE,KAAvB,CAAQF,KAAR;AACA,wBAA8E,KAAKF,KAAnF;AAAA,UAAQK,QAAR,eAAQA,QAAR;AAAA,UAAkBC,SAAlB,eAAkBA,SAAlB;AAAA,UAA6BC,gBAA7B,eAA6BA,gBAA7B;AAAA,8CAA+CC,YAA/C;AAAA,UAA+CA,YAA/C,sCAA8D,EAA9D;AAAA,UAAkEC,OAAlE,eAAkEA,OAAlE;AACA,UAAMC,UAAU,GAAG;AAAEC,QAAAA,IAAI,EAAEF,OAAO,CAACG;AAAhB,OAAnB;AAEA,0BACE;AAAK,QAAA,SAAS,EAAEN;AAAhB,sBACE,gCAAC,gBAAD;AAAS,QAAA,cAAc,EAAC,SAAxB;AAAkC,QAAA,KAAK,EAAEJ,KAAzC;AAAgD,QAAA,QAAQ,EAAE,KAAKW;AAA/D,SACGC,kBAAMC,QAAN,CAAeC,GAAf,CAAmBX,QAAnB,EAA6B,UAACY,CAAD,EAAIC,KAAJ;AAAA,eAC5BD,CAAC,IAAIA,CAAC,CAACjB,KAAF,CAAQmB,KAAb,gBAAqB,gCAAC,eAAD;AAAQ,UAAA,OAAO,EAAET,UAAjB;AAA6B,UAAA,GAAG,EAAEQ,KAAlC;AAAyC,UAAA,KAAK,EAAED,CAAC,CAACjB,KAAF,CAAQmB;AAAxD,UAArB,GAAyF,IAD7D;AAAA,OAA7B,CADH,CADF,eAOE;AAAK,QAAA,SAAS,EAAEZ,gBAAhB;AAAkC,QAAA,KAAK,EAAEC;AAAzC,SACGH,QAAQ,CAACH,KAAD,CADX,CAPF,CADF;AAaD;;;EApCuBY,kBAAMM,S;;;iCAAnBrB,I,eACQ;AACjBU,EAAAA,OAAO,EAAEY,sBAAUC,MADF;AAEjBhB,EAAAA,SAAS,EAAEe,sBAAUE,MAFJ;AAGjBhB,EAAAA,gBAAgB,EAAEc,sBAAUE,MAHX;AAIjBf,EAAAA,YAAY,EAAEa,sBAAUC,MAJP;AAKjBjB,EAAAA,QAAQ,EAAEgB,sBAAUG,SAAV,CAAoB,CAACH,sBAAUI,OAAV,CAAkBJ,sBAAUK,IAA5B,CAAD,EAAoCL,sBAAUK,IAA9C,CAApB,EAAyEC;AALlE,C;;eAsCN,sBAAW;AAAA,SAAO;AAAEf,IAAAA,OAAO,EAAE;AAAX,GAAP;AAAA,CAAX,EAAoCb,IAApC,C","sourcesContent":["import React from 'react';\n\nimport MuiTabs from '@material-ui/core/Tabs';\nimport MuiTab from '@material-ui/core/Tab';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core';\n\nexport class Tabs extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n className: PropTypes.string,\n contentClassName: PropTypes.string,\n contentStyle: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = { value: 0 };\n }\n\n handleChange = (event, value) => {\n this.setState({ value });\n };\n\n render() {\n const { value } = this.state;\n const { children, className, contentClassName, contentStyle = {}, classes } = this.props;\n const tabClasses = { root: classes.tabRoot };\n\n return (\n <div className={className}>\n <MuiTabs indicatorColor=\"primary\" value={value} onChange={this.handleChange}>\n {React.Children.map(children, (c, index) =>\n c && c.props.title ? <MuiTab classes={tabClasses} key={index} label={c.props.title} /> : null,\n )}\n </MuiTabs>\n\n <div className={contentClassName} style={contentStyle}>\n {children[value]}\n </div>\n </div>\n );\n }\n}\n\nexport default withStyles(() => ({ tabRoot: {} }))(Tabs);\n"],"file":"index.js"}
@@ -0,0 +1,198 @@
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.TagsInput = 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 _react = _interopRequireDefault(require("react"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _styles = require("@material-ui/core/styles");
29
+
30
+ var _uniq = _interopRequireDefault(require("lodash/uniq"));
31
+
32
+ var _Chip = _interopRequireDefault(require("@material-ui/core/Chip"));
33
+
34
+ var _muiBox = _interopRequireDefault(require("../mui-box"));
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 ENTER = 13;
41
+ var Tag = (0, _styles.withStyles)(function () {
42
+ return {
43
+ tag: {
44
+ padding: '0px',
45
+ margin: '1px'
46
+ }
47
+ };
48
+ })(function (_ref) {
49
+ var classes = _ref.classes,
50
+ label = _ref.label,
51
+ onDelete = _ref.onDelete;
52
+ return /*#__PURE__*/_react["default"].createElement(_Chip["default"], {
53
+ className: classes.tag,
54
+ label: label,
55
+ onDelete: onDelete
56
+ });
57
+ });
58
+ Tag.propTypes = {
59
+ label: _propTypes["default"].string.isRequired,
60
+ onDelete: _propTypes["default"].func.isRequired
61
+ };
62
+
63
+ var TagsInput = /*#__PURE__*/function (_React$Component) {
64
+ (0, _inherits2["default"])(TagsInput, _React$Component);
65
+
66
+ var _super = _createSuper(TagsInput);
67
+
68
+ function TagsInput(props) {
69
+ var _this;
70
+
71
+ (0, _classCallCheck2["default"])(this, TagsInput);
72
+ _this = _super.call(this, props);
73
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onFocus", function () {
74
+ _this.setState({
75
+ focused: true
76
+ });
77
+ });
78
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onBlur", function () {
79
+ _this.setState({
80
+ focused: false
81
+ });
82
+ });
83
+ _this.state = {
84
+ value: '',
85
+ focused: false
86
+ };
87
+
88
+ _this.onKeyDown = function (event) {
89
+ if (event.keyCode === ENTER && _this.state.value !== '') {
90
+ var tag = _this.state.value.trim();
91
+
92
+ var newTags = (0, _uniq["default"])(_this.props.tags.concat([tag]));
93
+
94
+ if (newTags.length !== _this.props.tags.length) {
95
+ _this.props.onChange(newTags);
96
+
97
+ _this.setState({
98
+ value: ''
99
+ });
100
+ }
101
+ }
102
+ };
103
+
104
+ _this.onChange = function (event) {
105
+ _this.setState({
106
+ value: event.target.value
107
+ });
108
+ };
109
+
110
+ _this.deleteTag = function (tag) {
111
+ var tags = _this.props.tags;
112
+ var tagIndex = tags.indexOf(tag);
113
+
114
+ if (tagIndex !== -1) {
115
+ tags.splice(tagIndex, 1);
116
+
117
+ _this.props.onChange(tags);
118
+
119
+ _this.input.focus();
120
+ }
121
+ };
122
+
123
+ return _this;
124
+ }
125
+
126
+ (0, _createClass2["default"])(TagsInput, [{
127
+ key: "render",
128
+ value: function render() {
129
+ var _this2 = this;
130
+
131
+ var _this$props = this.props,
132
+ classes = _this$props.classes,
133
+ tags = _this$props.tags;
134
+ return /*#__PURE__*/_react["default"].createElement(_muiBox["default"], {
135
+ focused: this.state.focused
136
+ }, /*#__PURE__*/_react["default"].createElement("div", {
137
+ className: classes.tagsInput
138
+ }, (tags || []).map(function (t, index) {
139
+ return /*#__PURE__*/_react["default"].createElement(Tag, {
140
+ key: index,
141
+ label: t,
142
+ onDelete: function onDelete() {
143
+ return _this2.deleteTag(t);
144
+ }
145
+ });
146
+ }), /*#__PURE__*/_react["default"].createElement("input", {
147
+ ref: function ref(r) {
148
+ return _this2.input = r;
149
+ },
150
+ onKeyDown: this.onKeyDown,
151
+ onChange: this.onChange,
152
+ className: classes.input,
153
+ value: this.state.value,
154
+ onFocus: this.onFocus,
155
+ onBlur: this.onBlur,
156
+ type: "text"
157
+ })));
158
+ }
159
+ }]);
160
+ return TagsInput;
161
+ }(_react["default"].Component);
162
+
163
+ exports.TagsInput = TagsInput;
164
+ (0, _defineProperty2["default"])(TagsInput, "propTypes", {
165
+ classes: _propTypes["default"].object.isRequired,
166
+ tags: _propTypes["default"].arrayOf(_propTypes["default"].string).isRequired,
167
+ onChange: _propTypes["default"].func.isRequired
168
+ });
169
+
170
+ var styles = function styles(theme) {
171
+ return {
172
+ tagsInput: {
173
+ border: "0px solid ".concat(theme.palette.background.paper),
174
+ display: 'flex',
175
+ flexWrap: 'wrap'
176
+ },
177
+ input: {
178
+ padding: '2px',
179
+ margin: '1px',
180
+ minWidth: '30px',
181
+ width: '100%',
182
+ flex: '1',
183
+ border: "0px solid ".concat(theme.palette.background.paper),
184
+ height: '28px',
185
+ fontSize: theme.typography.fontSize,
186
+ fontFamily: theme.typography.fontFamily,
187
+ outline: 'none',
188
+ '&:focus': {
189
+ outline: 'none'
190
+ }
191
+ }
192
+ };
193
+ };
194
+
195
+ var _default = (0, _styles.withStyles)(styles)(TagsInput);
196
+
197
+ exports["default"] = _default;
198
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/tags-input/index.jsx"],"names":["ENTER","Tag","tag","padding","margin","classes","label","onDelete","propTypes","PropTypes","string","isRequired","func","TagsInput","props","setState","focused","state","value","onKeyDown","event","keyCode","trim","newTags","tags","concat","length","onChange","target","deleteTag","tagIndex","indexOf","splice","input","focus","tagsInput","map","t","index","r","onFocus","onBlur","React","Component","object","arrayOf","styles","theme","border","palette","background","paper","display","flexWrap","minWidth","width","flex","height","fontSize","typography","fontFamily","outline"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,KAAK,GAAG,EAAd;AAEA,IAAMC,GAAG,GAAG,wBAAW;AAAA,SAAO;AAC5BC,IAAAA,GAAG,EAAE;AACHC,MAAAA,OAAO,EAAE,KADN;AAEHC,MAAAA,MAAM,EAAE;AAFL;AADuB,GAAP;AAAA,CAAX,EAKR;AAAA,MAAGC,OAAH,QAAGA,OAAH;AAAA,MAAYC,KAAZ,QAAYA,KAAZ;AAAA,MAAmBC,QAAnB,QAAmBA,QAAnB;AAAA,sBAAkC,gCAAC,gBAAD;AAAM,IAAA,SAAS,EAAEF,OAAO,CAACH,GAAzB;AAA8B,IAAA,KAAK,EAAEI,KAArC;AAA4C,IAAA,QAAQ,EAAEC;AAAtD,IAAlC;AAAA,CALQ,CAAZ;AAOAN,GAAG,CAACO,SAAJ,GAAgB;AACdF,EAAAA,KAAK,EAAEG,sBAAUC,MAAV,CAAiBC,UADV;AAEdJ,EAAAA,QAAQ,EAAEE,sBAAUG,IAAV,CAAeD;AAFX,CAAhB;;IAKaE,S;;;;;AAOX,qBAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,8BAAMA,KAAN;AADiB,gGAmCT,YAAM;AACd,YAAKC,QAAL,CAAc;AAAEC,QAAAA,OAAO,EAAE;AAAX,OAAd;AACD,KArCkB;AAAA,+FAuCV,YAAM;AACb,YAAKD,QAAL,CAAc;AAAEC,QAAAA,OAAO,EAAE;AAAX,OAAd;AACD,KAzCkB;AAEjB,UAAKC,KAAL,GAAa;AACXC,MAAAA,KAAK,EAAE,EADI;AAEXF,MAAAA,OAAO,EAAE;AAFE,KAAb;;AAKA,UAAKG,SAAL,GAAiB,UAACC,KAAD,EAAW;AAC1B,UAAIA,KAAK,CAACC,OAAN,KAAkBrB,KAAlB,IAA2B,MAAKiB,KAAL,CAAWC,KAAX,KAAqB,EAApD,EAAwD;AACtD,YAAMhB,GAAG,GAAG,MAAKe,KAAL,CAAWC,KAAX,CAAiBI,IAAjB,EAAZ;;AACA,YAAMC,OAAO,GAAG,sBAAK,MAAKT,KAAL,CAAWU,IAAX,CAAgBC,MAAhB,CAAuB,CAACvB,GAAD,CAAvB,CAAL,CAAhB;;AAEA,YAAIqB,OAAO,CAACG,MAAR,KAAmB,MAAKZ,KAAL,CAAWU,IAAX,CAAgBE,MAAvC,EAA+C;AAC7C,gBAAKZ,KAAL,CAAWa,QAAX,CAAoBJ,OAApB;;AACA,gBAAKR,QAAL,CAAc;AAAEG,YAAAA,KAAK,EAAE;AAAT,WAAd;AACD;AACF;AACF,KAVD;;AAYA,UAAKS,QAAL,GAAgB,UAACP,KAAD,EAAW;AACzB,YAAKL,QAAL,CAAc;AAAEG,QAAAA,KAAK,EAAEE,KAAK,CAACQ,MAAN,CAAaV;AAAtB,OAAd;AACD,KAFD;;AAIA,UAAKW,SAAL,GAAiB,UAAC3B,GAAD,EAAS;AACxB,UAAQsB,IAAR,GAAiB,MAAKV,KAAtB,CAAQU,IAAR;AAEA,UAAMM,QAAQ,GAAGN,IAAI,CAACO,OAAL,CAAa7B,GAAb,CAAjB;;AACA,UAAI4B,QAAQ,KAAK,CAAC,CAAlB,EAAqB;AACnBN,QAAAA,IAAI,CAACQ,MAAL,CAAYF,QAAZ,EAAsB,CAAtB;;AACA,cAAKhB,KAAL,CAAWa,QAAX,CAAoBH,IAApB;;AACA,cAAKS,KAAL,CAAWC,KAAX;AACD;AACF,KATD;;AAvBiB;AAiClB;;;;WAUD,kBAAS;AAAA;;AACP,wBAA0B,KAAKpB,KAA/B;AAAA,UAAQT,OAAR,eAAQA,OAAR;AAAA,UAAiBmB,IAAjB,eAAiBA,IAAjB;AACA,0BACE,gCAAC,kBAAD;AAAQ,QAAA,OAAO,EAAE,KAAKP,KAAL,CAAWD;AAA5B,sBACE;AAAK,QAAA,SAAS,EAAEX,OAAO,CAAC8B;AAAxB,SACG,CAACX,IAAI,IAAI,EAAT,EAAaY,GAAb,CAAiB,UAACC,CAAD,EAAIC,KAAJ;AAAA,4BAChB,gCAAC,GAAD;AAAK,UAAA,GAAG,EAAEA,KAAV;AAAiB,UAAA,KAAK,EAAED,CAAxB;AAA2B,UAAA,QAAQ,EAAE;AAAA,mBAAM,MAAI,CAACR,SAAL,CAAeQ,CAAf,CAAN;AAAA;AAArC,UADgB;AAAA,OAAjB,CADH,eAIE;AACE,QAAA,GAAG,EAAE,aAACE,CAAD;AAAA,iBAAQ,MAAI,CAACN,KAAL,GAAaM,CAArB;AAAA,SADP;AAEE,QAAA,SAAS,EAAE,KAAKpB,SAFlB;AAGE,QAAA,QAAQ,EAAE,KAAKQ,QAHjB;AAIE,QAAA,SAAS,EAAEtB,OAAO,CAAC4B,KAJrB;AAKE,QAAA,KAAK,EAAE,KAAKhB,KAAL,CAAWC,KALpB;AAME,QAAA,OAAO,EAAE,KAAKsB,OANhB;AAOE,QAAA,MAAM,EAAE,KAAKC,MAPf;AAQE,QAAA,IAAI,EAAC;AARP,QAJF,CADF,CADF;AAmBD;;;EAvE4BC,kBAAMC,S;;;iCAAxB9B,S,eACQ;AACjBR,EAAAA,OAAO,EAAEI,sBAAUmC,MAAV,CAAiBjC,UADT;AAEjBa,EAAAA,IAAI,EAAEf,sBAAUoC,OAAV,CAAkBpC,sBAAUC,MAA5B,EAAoCC,UAFzB;AAGjBgB,EAAAA,QAAQ,EAAElB,sBAAUG,IAAV,CAAeD;AAHR,C;;AAyErB,IAAMmC,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;AAAA,SAAY;AACzBZ,IAAAA,SAAS,EAAE;AACTa,MAAAA,MAAM,sBAAeD,KAAK,CAACE,OAAN,CAAcC,UAAd,CAAyBC,KAAxC,CADG;AAETC,MAAAA,OAAO,EAAE,MAFA;AAGTC,MAAAA,QAAQ,EAAE;AAHD,KADc;AAMzBpB,IAAAA,KAAK,EAAE;AACL9B,MAAAA,OAAO,EAAE,KADJ;AAELC,MAAAA,MAAM,EAAE,KAFH;AAGLkD,MAAAA,QAAQ,EAAE,MAHL;AAILC,MAAAA,KAAK,EAAE,MAJF;AAKLC,MAAAA,IAAI,EAAE,GALD;AAMLR,MAAAA,MAAM,sBAAeD,KAAK,CAACE,OAAN,CAAcC,UAAd,CAAyBC,KAAxC,CAND;AAOLM,MAAAA,MAAM,EAAE,MAPH;AAQLC,MAAAA,QAAQ,EAAEX,KAAK,CAACY,UAAN,CAAiBD,QARtB;AASLE,MAAAA,UAAU,EAAEb,KAAK,CAACY,UAAN,CAAiBC,UATxB;AAULC,MAAAA,OAAO,EAAE,MAVJ;AAWL,iBAAW;AACTA,QAAAA,OAAO,EAAE;AADA;AAXN;AANkB,GAAZ;AAAA,CAAf;;eAuBe,wBAAWf,MAAX,EAAmBjC,SAAnB,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport uniq from 'lodash/uniq';\nimport Chip from '@material-ui/core/Chip';\nimport MuiBox from '../mui-box';\n\nconst ENTER = 13;\n\nconst Tag = withStyles(() => ({\n tag: {\n padding: '0px',\n margin: '1px',\n },\n}))(({ classes, label, onDelete }) => <Chip className={classes.tag} label={label} onDelete={onDelete} />);\n\nTag.propTypes = {\n label: PropTypes.string.isRequired,\n onDelete: PropTypes.func.isRequired,\n};\n\nexport class TagsInput extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n tags: PropTypes.arrayOf(PropTypes.string).isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n value: '',\n focused: false,\n };\n\n this.onKeyDown = (event) => {\n if (event.keyCode === ENTER && this.state.value !== '') {\n const tag = this.state.value.trim();\n const newTags = uniq(this.props.tags.concat([tag]));\n\n if (newTags.length !== this.props.tags.length) {\n this.props.onChange(newTags);\n this.setState({ value: '' });\n }\n }\n };\n\n this.onChange = (event) => {\n this.setState({ value: event.target.value });\n };\n\n this.deleteTag = (tag) => {\n const { tags } = this.props;\n\n const tagIndex = tags.indexOf(tag);\n if (tagIndex !== -1) {\n tags.splice(tagIndex, 1);\n this.props.onChange(tags);\n this.input.focus();\n }\n };\n }\n\n onFocus = () => {\n this.setState({ focused: true });\n };\n\n onBlur = () => {\n this.setState({ focused: false });\n };\n\n render() {\n const { classes, tags } = this.props;\n return (\n <MuiBox focused={this.state.focused}>\n <div className={classes.tagsInput}>\n {(tags || []).map((t, index) => (\n <Tag key={index} label={t} onDelete={() => this.deleteTag(t)} />\n ))}\n <input\n ref={(r) => (this.input = r)}\n onKeyDown={this.onKeyDown}\n onChange={this.onChange}\n className={classes.input}\n value={this.state.value}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n type=\"text\"\n />\n </div>\n </MuiBox>\n );\n }\n}\n\nconst styles = (theme) => ({\n tagsInput: {\n border: `0px solid ${theme.palette.background.paper}`,\n display: 'flex',\n flexWrap: 'wrap',\n },\n input: {\n padding: '2px',\n margin: '1px',\n minWidth: '30px',\n width: '100%',\n flex: '1',\n border: `0px solid ${theme.palette.background.paper}`,\n height: '28px',\n fontSize: theme.typography.fontSize,\n fontFamily: theme.typography.fontFamily,\n outline: 'none',\n '&:focus': {\n outline: 'none',\n },\n },\n});\n\nexport default withStyles(styles)(TagsInput);\n"],"file":"index.js"}
@@ -0,0 +1,180 @@
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.NChoice = 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 _renderUi = require("@pie-lib/render-ui");
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _radioWithLabel = _interopRequireDefault(require("./radio-with-label"));
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
+ 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 styles = function styles(theme) {
41
+ return {
42
+ group: {
43
+ display: 'flex',
44
+ flexWrap: 'wrap',
45
+ paddingLeft: 0,
46
+ marginTop: theme.spacing.unit
47
+ },
48
+ vertical: {
49
+ flexDirection: 'column'
50
+ }
51
+ };
52
+ };
53
+
54
+ var RawNChoice = /*#__PURE__*/function (_React$Component) {
55
+ (0, _inherits2["default"])(RawNChoice, _React$Component);
56
+
57
+ var _super = _createSuper(RawNChoice);
58
+
59
+ function RawNChoice() {
60
+ var _this;
61
+
62
+ (0, _classCallCheck2["default"])(this, RawNChoice);
63
+
64
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
65
+ args[_key] = arguments[_key];
66
+ }
67
+
68
+ _this = _super.call.apply(_super, [this].concat(args));
69
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "handleChange", function (event) {
70
+ _this.props.onChange(event.currentTarget.value);
71
+ });
72
+ return _this;
73
+ }
74
+
75
+ (0, _createClass2["default"])(RawNChoice, [{
76
+ key: "render",
77
+ value: function render() {
78
+ var _this2 = this;
79
+
80
+ var _this$props = this.props,
81
+ header = _this$props.header,
82
+ className = _this$props.className,
83
+ classes = _this$props.classes,
84
+ customLabel = _this$props.customLabel,
85
+ opts = _this$props.opts,
86
+ value = _this$props.value,
87
+ direction = _this$props.direction;
88
+ var preppedOpts = opts.map(function (o) {
89
+ return typeof o === 'string' ? {
90
+ label: o,
91
+ value: o
92
+ } : o;
93
+ });
94
+ var LabelComponent = customLabel || _radioWithLabel["default"];
95
+ return /*#__PURE__*/_react["default"].createElement(_renderUi.InputContainer, {
96
+ label: header,
97
+ className: className
98
+ }, /*#__PURE__*/_react["default"].createElement("div", {
99
+ className: (0, _classnames["default"])(classes.group, classes[direction])
100
+ }, preppedOpts.map(function (o, index) {
101
+ return /*#__PURE__*/_react["default"].createElement(LabelComponent, {
102
+ value: o.value,
103
+ key: index,
104
+ checked: o.value === value,
105
+ onChange: _this2.handleChange,
106
+ label: o.label
107
+ });
108
+ })));
109
+ }
110
+ }]);
111
+ return RawNChoice;
112
+ }(_react["default"].Component);
113
+
114
+ (0, _defineProperty2["default"])(RawNChoice, "propTypes", {
115
+ header: _propTypes["default"].string.isRequired,
116
+ className: _propTypes["default"].string,
117
+ customLabel: _propTypes["default"].func,
118
+ opts: _propTypes["default"].array.isRequired,
119
+ value: _propTypes["default"].string,
120
+ onChange: _propTypes["default"].func.isRequired,
121
+ direction: _propTypes["default"].oneOf(['horizontal', 'vertical']),
122
+ classes: _propTypes["default"].object.isRequired
123
+ });
124
+ var NChoice = (0, _styles.withStyles)(styles)(RawNChoice);
125
+ exports.NChoice = NChoice;
126
+
127
+ var labelValue = _propTypes["default"].shape({
128
+ label: _propTypes["default"].string,
129
+ value: _propTypes["default"].string
130
+ });
131
+
132
+ var TwoChoice = /*#__PURE__*/function (_React$Component2) {
133
+ (0, _inherits2["default"])(TwoChoice, _React$Component2);
134
+
135
+ var _super2 = _createSuper(TwoChoice);
136
+
137
+ function TwoChoice() {
138
+ (0, _classCallCheck2["default"])(this, TwoChoice);
139
+ return _super2.apply(this, arguments);
140
+ }
141
+
142
+ (0, _createClass2["default"])(TwoChoice, [{
143
+ key: "render",
144
+ value: function render() {
145
+ var _this$props2 = this.props,
146
+ one = _this$props2.one,
147
+ two = _this$props2.two,
148
+ header = _this$props2.header,
149
+ className = _this$props2.className,
150
+ customLabel = _this$props2.customLabel,
151
+ value = _this$props2.value,
152
+ onChange = _this$props2.onChange;
153
+ var opts = [one, two];
154
+ return /*#__PURE__*/_react["default"].createElement(NChoice, {
155
+ customLabel: customLabel,
156
+ header: header,
157
+ className: className,
158
+ opts: opts,
159
+ value: value,
160
+ onChange: onChange
161
+ });
162
+ }
163
+ }]);
164
+ return TwoChoice;
165
+ }(_react["default"].Component);
166
+
167
+ (0, _defineProperty2["default"])(TwoChoice, "propTypes", {
168
+ header: _propTypes["default"].string.isRequired,
169
+ value: _propTypes["default"].string.isRequired,
170
+ onChange: _propTypes["default"].func.isRequired,
171
+ one: _propTypes["default"].oneOfType([labelValue, _propTypes["default"].string]),
172
+ two: _propTypes["default"].oneOfType([labelValue, _propTypes["default"].string]),
173
+ className: _propTypes["default"].string,
174
+ customLabel: _propTypes["default"].func
175
+ });
176
+
177
+ var _default = (0, _styles.withStyles)(styles)(TwoChoice);
178
+
179
+ exports["default"] = _default;
180
+ //# sourceMappingURL=two-choice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/two-choice.jsx"],"names":["styles","theme","group","display","flexWrap","paddingLeft","marginTop","spacing","unit","vertical","flexDirection","RawNChoice","event","props","onChange","currentTarget","value","header","className","classes","customLabel","opts","direction","preppedOpts","map","o","label","LabelComponent","RadioWithLabel","index","handleChange","React","Component","PropTypes","string","isRequired","func","array","oneOf","object","NChoice","labelValue","shape","TwoChoice","one","two","oneOfType"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;AAAA,SAAY;AACzBC,IAAAA,KAAK,EAAE;AACLC,MAAAA,OAAO,EAAE,MADJ;AAELC,MAAAA,QAAQ,EAAE,MAFL;AAGLC,MAAAA,WAAW,EAAE,CAHR;AAILC,MAAAA,SAAS,EAAEL,KAAK,CAACM,OAAN,CAAcC;AAJpB,KADkB;AAOzBC,IAAAA,QAAQ,EAAE;AACRC,MAAAA,aAAa,EAAE;AADP;AAPe,GAAZ;AAAA,CAAf;;IAYMC,U;;;;;;;;;;;;;;;qGAYW,UAACC,KAAD,EAAW;AACxB,YAAKC,KAAL,CAAWC,QAAX,CAAoBF,KAAK,CAACG,aAAN,CAAoBC,KAAxC;AACD,K;;;;;;WAED,kBAAS;AAAA;;AACP,wBAA4E,KAAKH,KAAjF;AAAA,UAAQI,MAAR,eAAQA,MAAR;AAAA,UAAgBC,SAAhB,eAAgBA,SAAhB;AAAA,UAA2BC,OAA3B,eAA2BA,OAA3B;AAAA,UAAoCC,WAApC,eAAoCA,WAApC;AAAA,UAAiDC,IAAjD,eAAiDA,IAAjD;AAAA,UAAuDL,KAAvD,eAAuDA,KAAvD;AAAA,UAA8DM,SAA9D,eAA8DA,SAA9D;AAEA,UAAMC,WAAW,GAAGF,IAAI,CAACG,GAAL,CAAS,UAACC,CAAD,EAAO;AAClC,eAAO,OAAOA,CAAP,KAAa,QAAb,GAAwB;AAAEC,UAAAA,KAAK,EAAED,CAAT;AAAYT,UAAAA,KAAK,EAAES;AAAnB,SAAxB,GAAiDA,CAAxD;AACD,OAFmB,CAApB;AAGA,UAAME,cAAc,GAAGP,WAAW,IAAIQ,0BAAtC;AAEA,0BACE,gCAAC,wBAAD;AAAgB,QAAA,KAAK,EAAEX,MAAvB;AAA+B,QAAA,SAAS,EAAEC;AAA1C,sBACE;AAAK,QAAA,SAAS,EAAE,4BAAWC,OAAO,CAACjB,KAAnB,EAA0BiB,OAAO,CAACG,SAAD,CAAjC;AAAhB,SACGC,WAAW,CAACC,GAAZ,CAAgB,UAACC,CAAD,EAAII,KAAJ;AAAA,4BACf,gCAAC,cAAD;AACE,UAAA,KAAK,EAAEJ,CAAC,CAACT,KADX;AAEE,UAAA,GAAG,EAAEa,KAFP;AAGE,UAAA,OAAO,EAAEJ,CAAC,CAACT,KAAF,KAAYA,KAHvB;AAIE,UAAA,QAAQ,EAAE,MAAI,CAACc,YAJjB;AAKE,UAAA,KAAK,EAAEL,CAAC,CAACC;AALX,UADe;AAAA,OAAhB,CADH,CADF,CADF;AAeD;;;EAvCsBK,kBAAMC,S;;iCAAzBrB,U,eACe;AACjBM,EAAAA,MAAM,EAAEgB,sBAAUC,MAAV,CAAiBC,UADR;AAEjBjB,EAAAA,SAAS,EAAEe,sBAAUC,MAFJ;AAGjBd,EAAAA,WAAW,EAAEa,sBAAUG,IAHN;AAIjBf,EAAAA,IAAI,EAAEY,sBAAUI,KAAV,CAAgBF,UAJL;AAKjBnB,EAAAA,KAAK,EAAEiB,sBAAUC,MALA;AAMjBpB,EAAAA,QAAQ,EAAEmB,sBAAUG,IAAV,CAAeD,UANR;AAOjBb,EAAAA,SAAS,EAAEW,sBAAUK,KAAV,CAAgB,CAAC,YAAD,EAAe,UAAf,CAAhB,CAPM;AAQjBnB,EAAAA,OAAO,EAAEc,sBAAUM,MAAV,CAAiBJ;AART,C;AAyCd,IAAMK,OAAO,GAAG,wBAAWxC,MAAX,EAAmBW,UAAnB,CAAhB;;;AAEP,IAAM8B,UAAU,GAAGR,sBAAUS,KAAV,CAAgB;AAAEhB,EAAAA,KAAK,EAAEO,sBAAUC,MAAnB;AAA2BlB,EAAAA,KAAK,EAAEiB,sBAAUC;AAA5C,CAAhB,CAAnB;;IAEMS,S;;;;;;;;;;;;WAWJ,kBAAS;AACP,yBAAsE,KAAK9B,KAA3E;AAAA,UAAQ+B,GAAR,gBAAQA,GAAR;AAAA,UAAaC,GAAb,gBAAaA,GAAb;AAAA,UAAkB5B,MAAlB,gBAAkBA,MAAlB;AAAA,UAA0BC,SAA1B,gBAA0BA,SAA1B;AAAA,UAAqCE,WAArC,gBAAqCA,WAArC;AAAA,UAAkDJ,KAAlD,gBAAkDA,KAAlD;AAAA,UAAyDF,QAAzD,gBAAyDA,QAAzD;AACA,UAAMO,IAAI,GAAG,CAACuB,GAAD,EAAMC,GAAN,CAAb;AAEA,0BACE,gCAAC,OAAD;AACE,QAAA,WAAW,EAAEzB,WADf;AAEE,QAAA,MAAM,EAAEH,MAFV;AAGE,QAAA,SAAS,EAAEC,SAHb;AAIE,QAAA,IAAI,EAAEG,IAJR;AAKE,QAAA,KAAK,EAAEL,KALT;AAME,QAAA,QAAQ,EAAEF;AANZ,QADF;AAUD;;;EAzBqBiB,kBAAMC,S;;iCAAxBW,S,eACe;AACjB1B,EAAAA,MAAM,EAAEgB,sBAAUC,MAAV,CAAiBC,UADR;AAEjBnB,EAAAA,KAAK,EAAEiB,sBAAUC,MAAV,CAAiBC,UAFP;AAGjBrB,EAAAA,QAAQ,EAAEmB,sBAAUG,IAAV,CAAeD,UAHR;AAIjBS,EAAAA,GAAG,EAAEX,sBAAUa,SAAV,CAAoB,CAACL,UAAD,EAAaR,sBAAUC,MAAvB,CAApB,CAJY;AAKjBW,EAAAA,GAAG,EAAEZ,sBAAUa,SAAV,CAAoB,CAACL,UAAD,EAAaR,sBAAUC,MAAvB,CAApB,CALY;AAMjBhB,EAAAA,SAAS,EAAEe,sBAAUC,MANJ;AAOjBd,EAAAA,WAAW,EAAEa,sBAAUG;AAPN,C;;eA2BN,wBAAWpC,MAAX,EAAmB2C,SAAnB,C","sourcesContent":["import { InputContainer } from '@pie-lib/render-ui';\nimport PropTypes from 'prop-types';\nimport RadioWithLabel from './radio-with-label';\nimport React from 'react';\nimport classNames from 'classnames';\nimport { withStyles } from '@material-ui/core/styles';\n\nconst styles = (theme) => ({\n group: {\n display: 'flex',\n flexWrap: 'wrap',\n paddingLeft: 0,\n marginTop: theme.spacing.unit,\n },\n vertical: {\n flexDirection: 'column',\n },\n});\n\nclass RawNChoice extends React.Component {\n static propTypes = {\n header: PropTypes.string.isRequired,\n className: PropTypes.string,\n customLabel: PropTypes.func,\n opts: PropTypes.array.isRequired,\n value: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n direction: PropTypes.oneOf(['horizontal', 'vertical']),\n classes: PropTypes.object.isRequired,\n };\n\n handleChange = (event) => {\n this.props.onChange(event.currentTarget.value);\n };\n\n render() {\n const { header, className, classes, customLabel, opts, value, direction } = this.props;\n\n const preppedOpts = opts.map((o) => {\n return typeof o === 'string' ? { label: o, value: o } : o;\n });\n const LabelComponent = customLabel || RadioWithLabel;\n\n return (\n <InputContainer label={header} className={className}>\n <div className={classNames(classes.group, classes[direction])}>\n {preppedOpts.map((o, index) => (\n <LabelComponent\n value={o.value}\n key={index}\n checked={o.value === value}\n onChange={this.handleChange}\n label={o.label}\n />\n ))}\n </div>\n </InputContainer>\n );\n }\n}\n\nexport const NChoice = withStyles(styles)(RawNChoice);\n\nconst labelValue = PropTypes.shape({ label: PropTypes.string, value: PropTypes.string });\n\nclass TwoChoice extends React.Component {\n static propTypes = {\n header: PropTypes.string.isRequired,\n value: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n one: PropTypes.oneOfType([labelValue, PropTypes.string]),\n two: PropTypes.oneOfType([labelValue, PropTypes.string]),\n className: PropTypes.string,\n customLabel: PropTypes.func,\n };\n\n render() {\n const { one, two, header, className, customLabel, value, onChange } = this.props;\n const opts = [one, two];\n\n return (\n <NChoice\n customLabel={customLabel}\n header={header}\n className={className}\n opts={opts}\n value={value}\n onChange={onChange}\n />\n );\n }\n}\n\nexport default withStyles(styles)(TwoChoice);\n"],"file":"two-choice.js"}
@@ -0,0 +1,84 @@
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 _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 _react = _interopRequireDefault(require("react"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ 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); }; }
29
+
30
+ 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; } }
31
+
32
+ var withStatefulModel = function withStatefulModel(Component) {
33
+ var Stateful = /*#__PURE__*/function (_React$Component) {
34
+ (0, _inherits2["default"])(Stateful, _React$Component);
35
+
36
+ var _super = _createSuper(Stateful);
37
+
38
+ function Stateful(props) {
39
+ var _this;
40
+
41
+ (0, _classCallCheck2["default"])(this, Stateful);
42
+ _this = _super.call(this, props);
43
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onChange", function (model) {
44
+ _this.setState({
45
+ model: model
46
+ }, function () {
47
+ _this.props.onChange(_this.state.model);
48
+ });
49
+ });
50
+ _this.state = {
51
+ model: props.model
52
+ };
53
+ return _this;
54
+ }
55
+
56
+ (0, _createClass2["default"])(Stateful, [{
57
+ key: "UNSAFE_componentWillReceiveProps",
58
+ value: function UNSAFE_componentWillReceiveProps(props) {
59
+ this.setState({
60
+ model: props.model
61
+ });
62
+ }
63
+ }, {
64
+ key: "render",
65
+ value: function render() {
66
+ return /*#__PURE__*/_react["default"].createElement(Component, {
67
+ model: this.state.model,
68
+ onChange: this.onChange
69
+ });
70
+ }
71
+ }]);
72
+ return Stateful;
73
+ }(_react["default"].Component);
74
+
75
+ (0, _defineProperty2["default"])(Stateful, "propTypes", {
76
+ model: _propTypes["default"].object.isRequired,
77
+ onChange: _propTypes["default"].func.isRequired
78
+ });
79
+ return Stateful;
80
+ };
81
+
82
+ var _default = withStatefulModel;
83
+ exports["default"] = _default;
84
+ //# sourceMappingURL=with-stateful-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/with-stateful-model.jsx"],"names":["withStatefulModel","Component","Stateful","props","model","setState","onChange","state","React","PropTypes","object","isRequired","func"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;AAEA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,SAAD,EAAe;AAAA,MACjCC,QADiC;AAAA;;AAAA;;AAOrC,sBAAYC,KAAZ,EAAmB;AAAA;;AAAA;AACjB,gCAAMA,KAAN;AADiB,mGAWR,UAACC,KAAD,EAAW;AACpB,cAAKC,QAAL,CAAc;AAAED,UAAAA,KAAK,EAALA;AAAF,SAAd,EAAyB,YAAM;AAC7B,gBAAKD,KAAL,CAAWG,QAAX,CAAoB,MAAKC,KAAL,CAAWH,KAA/B;AACD,SAFD;AAGD,OAfkB;AAEjB,YAAKG,KAAL,GAAa;AACXH,QAAAA,KAAK,EAAED,KAAK,CAACC;AADF,OAAb;AAFiB;AAKlB;;AAZoC;AAAA;AAAA,aAcrC,0CAAiCD,KAAjC,EAAwC;AACtC,aAAKE,QAAL,CAAc;AAAED,UAAAA,KAAK,EAAED,KAAK,CAACC;AAAf,SAAd;AACD;AAhBoC;AAAA;AAAA,aAwBrC,kBAAS;AACP,4BAAO,gCAAC,SAAD;AAAW,UAAA,KAAK,EAAE,KAAKG,KAAL,CAAWH,KAA7B;AAAoC,UAAA,QAAQ,EAAE,KAAKE;AAAnD,UAAP;AACD;AA1BoC;AAAA;AAAA,IAChBE,kBAAMP,SADU;;AAAA,mCACjCC,QADiC,eAElB;AACjBE,IAAAA,KAAK,EAAEK,sBAAUC,MAAV,CAAiBC,UADP;AAEjBL,IAAAA,QAAQ,EAAEG,sBAAUG,IAAV,CAAeD;AAFR,GAFkB;AA6BvC,SAAOT,QAAP;AACD,CA9BD;;eAgCeF,iB","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst withStatefulModel = (Component) => {\n class Stateful extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n onChange: PropTypes.func.isRequired,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n model: props.model,\n };\n }\n\n UNSAFE_componentWillReceiveProps(props) {\n this.setState({ model: props.model });\n }\n\n onChange = (model) => {\n this.setState({ model }, () => {\n this.props.onChange(this.state.model);\n });\n };\n\n render() {\n return <Component model={this.state.model} onChange={this.onChange} />;\n }\n }\n\n return Stateful;\n};\n\nexport default withStatefulModel;\n"],"file":"with-stateful-model.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-lib/config-ui",
3
- "version": "11.10.0-beta.2",
3
+ "version": "11.10.0-beta.3",
4
4
  "main": "lib/index.js",
5
5
  "module": "src/index.js",
6
6
  "publishConfig": {