@pie-lib/render-ui 4.15.9 → 4.16.1-beta.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 +20 -52
- package/NEXT.CHANGELOG.json +1 -0
- package/package.json +6 -4
- package/src/__tests__/__snapshots__/html-and-math.test.js.snap +11 -0
- package/src/__tests__/__snapshots__/preview-prompt.test.jsx.snap +37 -0
- package/src/__tests__/__snapshots__/purpose.test.jsx.snap +42 -0
- package/src/__tests__/__snapshots__/readable.test.jsx.snap +64 -0
- package/src/__tests__/__snapshots__/response-indicators.test.jsx.snap +95 -0
- package/src/__tests__/color.test.js +12 -0
- package/src/__tests__/has-media.test.js +20 -0
- package/src/__tests__/has-text.test.js +21 -0
- package/src/__tests__/html-and-math.test.js +46 -0
- package/src/__tests__/preview-prompt.test.jsx +56 -0
- package/src/__tests__/purpose.test.jsx +47 -0
- package/src/__tests__/readable.test.jsx +64 -0
- package/src/__tests__/response-indicators.test.jsx +16 -0
- package/src/__tests__/ui-layout.test.jsx +34 -0
- package/src/__tests__/withUndoReset.test.jsx +254 -0
- package/src/append-css-rules.js +51 -0
- package/src/assets/enableAudioAutoplayImage.js +1 -0
- package/src/collapsible/__tests__/__snapshots__/index.test.jsx.snap +18 -0
- package/src/collapsible/__tests__/index.test.jsx +13 -0
- package/src/collapsible/index.jsx +1 -0
- package/src/color.js +40 -0
- package/src/feedback.jsx +0 -1
- package/src/has-media.js +16 -0
- package/src/has-text.js +5 -1
- package/src/index.js +8 -0
- package/src/preview-layout.jsx +14 -3
- package/src/preview-prompt.jsx +150 -26
- package/src/ui-layout.jsx +66 -0
- package/README.md +0 -33
- package/lib/collapsible/index.js +0 -134
- package/lib/collapsible/index.js.map +0 -1
- package/lib/color.js +0 -157
- package/lib/color.js.map +0 -1
- package/lib/feedback.js +0 -151
- package/lib/feedback.js.map +0 -1
- package/lib/has-text.js +0 -24
- package/lib/has-text.js.map +0 -1
- package/lib/html-and-math.js +0 -90
- package/lib/html-and-math.js.map +0 -1
- package/lib/index.js +0 -104
- package/lib/index.js.map +0 -1
- package/lib/input-container.js +0 -60
- package/lib/input-container.js.map +0 -1
- package/lib/preview-layout.js +0 -133
- package/lib/preview-layout.js.map +0 -1
- package/lib/preview-prompt.js +0 -206
- package/lib/preview-prompt.js.map +0 -1
- package/lib/purpose.js +0 -28
- package/lib/purpose.js.map +0 -1
- package/lib/readable.js +0 -28
- package/lib/readable.js.map +0 -1
- package/lib/response-indicators.js +0 -151
- package/lib/response-indicators.js.map +0 -1
- package/lib/withUndoReset.js +0 -181
- package/lib/withUndoReset.js.map +0 -1
package/lib/withUndoReset.js
DELETED
|
@@ -1,181 +0,0 @@
|
|
|
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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
-
|
|
14
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
15
|
-
|
|
16
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
17
|
-
|
|
18
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
19
|
-
|
|
20
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
21
|
-
|
|
22
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
23
|
-
|
|
24
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
25
|
-
|
|
26
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
27
|
-
|
|
28
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
29
|
-
|
|
30
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
31
|
-
|
|
32
|
-
var React = _interopRequireWildcard(require("react"));
|
|
33
|
-
|
|
34
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
35
|
-
|
|
36
|
-
var _Button = _interopRequireDefault(require("@material-ui/core/Button"));
|
|
37
|
-
|
|
38
|
-
var _styles = require("@material-ui/core/styles");
|
|
39
|
-
|
|
40
|
-
var _Restore = _interopRequireDefault(require("@material-ui/icons/Restore"));
|
|
41
|
-
|
|
42
|
-
var _Undo = _interopRequireDefault(require("@material-ui/icons/Undo"));
|
|
43
|
-
|
|
44
|
-
var _excluded = ["classes"];
|
|
45
|
-
|
|
46
|
-
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); }
|
|
47
|
-
|
|
48
|
-
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; }
|
|
49
|
-
|
|
50
|
-
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); }; }
|
|
51
|
-
|
|
52
|
-
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; } }
|
|
53
|
-
|
|
54
|
-
var styles = function styles(theme) {
|
|
55
|
-
return {
|
|
56
|
-
wrapper: {
|
|
57
|
-
display: 'flex',
|
|
58
|
-
flexDirection: 'column'
|
|
59
|
-
},
|
|
60
|
-
resetUndoContainer: {
|
|
61
|
-
display: 'flex',
|
|
62
|
-
alignItems: 'center',
|
|
63
|
-
justifyContent: 'center'
|
|
64
|
-
},
|
|
65
|
-
icon: {
|
|
66
|
-
width: '24px',
|
|
67
|
-
height: '24px',
|
|
68
|
-
color: 'gray',
|
|
69
|
-
marginRight: theme.spacing.unit
|
|
70
|
-
},
|
|
71
|
-
buttonContainer: {
|
|
72
|
-
display: 'flex',
|
|
73
|
-
alignItems: 'center',
|
|
74
|
-
marginLeft: theme.spacing.unit * 3,
|
|
75
|
-
marginRight: theme.spacing.unit * 3
|
|
76
|
-
}
|
|
77
|
-
};
|
|
78
|
-
};
|
|
79
|
-
/**
|
|
80
|
-
* HOC that adds undo and reset functionality for session values
|
|
81
|
-
*/
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
var withUndoReset = function withUndoReset(WrappedComponent) {
|
|
85
|
-
var WithUndoReset = /*#__PURE__*/function (_React$Component) {
|
|
86
|
-
(0, _inherits2["default"])(WithUndoReset, _React$Component);
|
|
87
|
-
|
|
88
|
-
var _super = _createSuper(WithUndoReset);
|
|
89
|
-
|
|
90
|
-
function WithUndoReset(props) {
|
|
91
|
-
var _this;
|
|
92
|
-
|
|
93
|
-
(0, _classCallCheck2["default"])(this, WithUndoReset);
|
|
94
|
-
_this = _super.call(this, props);
|
|
95
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onSessionChange", function (session) {
|
|
96
|
-
_this.setState(function (state) {
|
|
97
|
-
return {
|
|
98
|
-
session: session,
|
|
99
|
-
changes: [].concat((0, _toConsumableArray2["default"])(state.changes), [session])
|
|
100
|
-
};
|
|
101
|
-
}, function () {
|
|
102
|
-
return _this.props.onSessionChange(session);
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onUndo", function () {
|
|
106
|
-
_this.setState(function (state) {
|
|
107
|
-
var newChanges = (0, _toConsumableArray2["default"])(state.changes);
|
|
108
|
-
newChanges.pop();
|
|
109
|
-
return {
|
|
110
|
-
changes: newChanges,
|
|
111
|
-
session: newChanges.length ? newChanges[newChanges.length - 1] : state.sessionInitialValues
|
|
112
|
-
};
|
|
113
|
-
}, function () {
|
|
114
|
-
return _this.props.onSessionChange(_this.state.session);
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onReset", function () {
|
|
118
|
-
_this.setState(function (state) {
|
|
119
|
-
return {
|
|
120
|
-
session: state.sessionInitialValues,
|
|
121
|
-
changes: []
|
|
122
|
-
};
|
|
123
|
-
}, function () {
|
|
124
|
-
return _this.props.onSessionChange(_this.state.sessionInitialValues);
|
|
125
|
-
});
|
|
126
|
-
});
|
|
127
|
-
_this.state = {
|
|
128
|
-
sessionInitialValues: JSON.parse(JSON.stringify(props.session)),
|
|
129
|
-
session: props.session,
|
|
130
|
-
changes: []
|
|
131
|
-
};
|
|
132
|
-
return _this;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
(0, _createClass2["default"])(WithUndoReset, [{
|
|
136
|
-
key: "render",
|
|
137
|
-
value: function render() {
|
|
138
|
-
var _this$props = this.props,
|
|
139
|
-
classes = _this$props.classes,
|
|
140
|
-
rest = (0, _objectWithoutProperties2["default"])(_this$props, _excluded);
|
|
141
|
-
var _this$state = this.state,
|
|
142
|
-
changes = _this$state.changes,
|
|
143
|
-
session = _this$state.session;
|
|
144
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
145
|
-
className: classes.wrapper
|
|
146
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
147
|
-
className: classes.resetUndoContainer
|
|
148
|
-
}, /*#__PURE__*/React.createElement(_Button["default"], {
|
|
149
|
-
className: classes.buttonContainer,
|
|
150
|
-
color: "primary",
|
|
151
|
-
disabled: changes.length === 0,
|
|
152
|
-
onClick: this.onUndo
|
|
153
|
-
}, /*#__PURE__*/React.createElement(_Undo["default"], {
|
|
154
|
-
className: classes.icon
|
|
155
|
-
}), " Undo"), /*#__PURE__*/React.createElement(_Button["default"], {
|
|
156
|
-
className: classes.buttonContainer,
|
|
157
|
-
color: "primary",
|
|
158
|
-
disabled: changes.length === 0,
|
|
159
|
-
onClick: this.onReset
|
|
160
|
-
}, /*#__PURE__*/React.createElement(_Restore["default"], {
|
|
161
|
-
className: classes.icon
|
|
162
|
-
}), " Start Over")), /*#__PURE__*/React.createElement(WrappedComponent, (0, _extends2["default"])({}, rest, {
|
|
163
|
-
session: session,
|
|
164
|
-
onSessionChange: this.onSessionChange
|
|
165
|
-
})));
|
|
166
|
-
}
|
|
167
|
-
}]);
|
|
168
|
-
return WithUndoReset;
|
|
169
|
-
}(React.Component);
|
|
170
|
-
|
|
171
|
-
(0, _defineProperty2["default"])(WithUndoReset, "propTypes", {
|
|
172
|
-
classes: _propTypes["default"].object,
|
|
173
|
-
session: _propTypes["default"].object,
|
|
174
|
-
onSessionChange: _propTypes["default"].func
|
|
175
|
-
});
|
|
176
|
-
return (0, _styles.withStyles)(styles)(WithUndoReset);
|
|
177
|
-
};
|
|
178
|
-
|
|
179
|
-
var _default = withUndoReset;
|
|
180
|
-
exports["default"] = _default;
|
|
181
|
-
//# sourceMappingURL=withUndoReset.js.map
|
package/lib/withUndoReset.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/withUndoReset.jsx"],"names":["styles","theme","wrapper","display","flexDirection","resetUndoContainer","alignItems","justifyContent","icon","width","height","color","marginRight","spacing","unit","buttonContainer","marginLeft","withUndoReset","WrappedComponent","WithUndoReset","props","session","setState","state","changes","onSessionChange","newChanges","pop","length","sessionInitialValues","JSON","parse","stringify","classes","rest","onUndo","onReset","React","Component","PropTypes","object","func"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport Button from '@material-ui/core/Button';\nimport { withStyles } from '@material-ui/core/styles';\nimport Restore from '@material-ui/icons/Restore';\nimport Undo from '@material-ui/icons/Undo';\n\nconst styles = (theme) => ({\n wrapper: {\n display: 'flex',\n flexDirection: 'column',\n },\n resetUndoContainer: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n icon: {\n width: '24px',\n height: '24px',\n color: 'gray',\n marginRight: theme.spacing.unit,\n },\n buttonContainer: {\n display: 'flex',\n alignItems: 'center',\n marginLeft: theme.spacing.unit * 3,\n marginRight: theme.spacing.unit * 3,\n },\n});\n\n/**\n * HOC that adds undo and reset functionality for session values\n */\nconst withUndoReset = (WrappedComponent) => {\n class WithUndoReset extends React.Component {\n static propTypes = {\n classes: PropTypes.object,\n session: PropTypes.object,\n onSessionChange: PropTypes.func,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n sessionInitialValues: JSON.parse(JSON.stringify(props.session)),\n session: props.session,\n changes: [],\n };\n }\n\n onSessionChange = (session) => {\n this.setState(\n (state) => ({ session, changes: [...state.changes, session] }),\n () => this.props.onSessionChange(session),\n );\n };\n\n onUndo = () => {\n this.setState(\n (state) => {\n const newChanges = [...state.changes];\n\n newChanges.pop();\n\n return {\n changes: newChanges,\n session: newChanges.length ? newChanges[newChanges.length - 1] : state.sessionInitialValues,\n };\n },\n () => this.props.onSessionChange(this.state.session),\n );\n };\n\n onReset = () => {\n this.setState(\n (state) => ({ session: state.sessionInitialValues, changes: [] }),\n () => this.props.onSessionChange(this.state.sessionInitialValues),\n );\n };\n\n render() {\n const { classes, ...rest } = this.props;\n const { changes, session } = this.state;\n\n return (\n <div className={classes.wrapper}>\n <div className={classes.resetUndoContainer}>\n <Button\n className={classes.buttonContainer}\n color=\"primary\"\n disabled={changes.length === 0}\n onClick={this.onUndo}\n >\n <Undo className={classes.icon} /> Undo\n </Button>\n <Button\n className={classes.buttonContainer}\n color=\"primary\"\n disabled={changes.length === 0}\n onClick={this.onReset}\n >\n <Restore className={classes.icon} /> Start Over\n </Button>\n </div>\n <WrappedComponent {...rest} session={session} onSessionChange={this.onSessionChange} />\n </div>\n );\n }\n }\n\n return withStyles(styles)(WithUndoReset);\n};\n\nexport default withUndoReset;\n"],"file":"withUndoReset.js"}
|