@pie-element/categorize 7.7.2-beta.0 → 7.7.2-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 (60) hide show
  1. package/configure/package.json +2 -2
  2. package/package.json +2 -2
  3. package/configure/lib/defaults.js +0 -115
  4. package/configure/lib/defaults.js.map +0 -1
  5. package/configure/lib/design/builder.js +0 -74
  6. package/configure/lib/design/builder.js.map +0 -1
  7. package/configure/lib/design/buttons.js +0 -127
  8. package/configure/lib/design/buttons.js.map +0 -1
  9. package/configure/lib/design/categories/RowLabel.js +0 -68
  10. package/configure/lib/design/categories/RowLabel.js.map +0 -1
  11. package/configure/lib/design/categories/alternateResponses.js +0 -284
  12. package/configure/lib/design/categories/alternateResponses.js.map +0 -1
  13. package/configure/lib/design/categories/category.js +0 -205
  14. package/configure/lib/design/categories/category.js.map +0 -1
  15. package/configure/lib/design/categories/choice-preview.js +0 -128
  16. package/configure/lib/design/categories/choice-preview.js.map +0 -1
  17. package/configure/lib/design/categories/droppable-placeholder.js +0 -187
  18. package/configure/lib/design/categories/droppable-placeholder.js.map +0 -1
  19. package/configure/lib/design/categories/index.js +0 -396
  20. package/configure/lib/design/categories/index.js.map +0 -1
  21. package/configure/lib/design/choices/choice.js +0 -287
  22. package/configure/lib/design/choices/choice.js.map +0 -1
  23. package/configure/lib/design/choices/config.js +0 -146
  24. package/configure/lib/design/choices/config.js.map +0 -1
  25. package/configure/lib/design/choices/index.js +0 -277
  26. package/configure/lib/design/choices/index.js.map +0 -1
  27. package/configure/lib/design/header.js +0 -106
  28. package/configure/lib/design/header.js.map +0 -1
  29. package/configure/lib/design/index.js +0 -475
  30. package/configure/lib/design/index.js.map +0 -1
  31. package/configure/lib/design/input-header.js +0 -162
  32. package/configure/lib/design/input-header.js.map +0 -1
  33. package/configure/lib/index.js +0 -139
  34. package/configure/lib/index.js.map +0 -1
  35. package/configure/lib/main.js +0 -94
  36. package/configure/lib/main.js.map +0 -1
  37. package/configure/lib/utils.js +0 -27
  38. package/configure/lib/utils.js.map +0 -1
  39. package/controller/lib/defaults.js +0 -31
  40. package/controller/lib/defaults.js.map +0 -1
  41. package/controller/lib/index.js +0 -434
  42. package/controller/lib/index.js.map +0 -1
  43. package/controller/lib/utils.js +0 -60
  44. package/controller/lib/utils.js.map +0 -1
  45. package/lib/categorize/categories.js +0 -165
  46. package/lib/categorize/categories.js.map +0 -1
  47. package/lib/categorize/category.js +0 -134
  48. package/lib/categorize/category.js.map +0 -1
  49. package/lib/categorize/choice.js +0 -226
  50. package/lib/categorize/choice.js.map +0 -1
  51. package/lib/categorize/choices.js +0 -160
  52. package/lib/categorize/choices.js.map +0 -1
  53. package/lib/categorize/droppable-placeholder.js +0 -110
  54. package/lib/categorize/droppable-placeholder.js.map +0 -1
  55. package/lib/categorize/grid-content.js +0 -103
  56. package/lib/categorize/grid-content.js.map +0 -1
  57. package/lib/categorize/index.js +0 -324
  58. package/lib/categorize/index.js.map +0 -1
  59. package/lib/index.js +0 -110
  60. package/lib/index.js.map +0 -1
@@ -1,165 +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.Categories = void 0;
11
- Object.defineProperty(exports, "CategoryType", {
12
- enumerable: true,
13
- get: function get() {
14
- return _category.CategoryType;
15
- }
16
- });
17
- exports["default"] = void 0;
18
-
19
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
20
-
21
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
22
-
23
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
24
-
25
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
26
-
27
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
28
-
29
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
30
-
31
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
32
-
33
- var _react = _interopRequireDefault(require("react"));
34
-
35
- var _propTypes = _interopRequireDefault(require("prop-types"));
36
-
37
- var _styles = require("@material-ui/core/styles");
38
-
39
- var _Typography = _interopRequireDefault(require("@material-ui/core/Typography"));
40
-
41
- var _renderUi = require("@pie-lib/render-ui");
42
-
43
- var _chunk = _interopRequireDefault(require("lodash/chunk"));
44
-
45
- var _gridContent = _interopRequireDefault(require("./grid-content"));
46
-
47
- var _category = _interopRequireWildcard(require("./category"));
48
-
49
- 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); }
50
-
51
- 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; }
52
-
53
- 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); }; }
54
-
55
- 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; } }
56
-
57
- var Categories = /*#__PURE__*/function (_React$Component) {
58
- (0, _inherits2["default"])(Categories, _React$Component);
59
-
60
- var _super = _createSuper(Categories);
61
-
62
- function Categories() {
63
- (0, _classCallCheck2["default"])(this, Categories);
64
- return _super.apply(this, arguments);
65
- }
66
-
67
- (0, _createClass2["default"])(Categories, [{
68
- key: "render",
69
- value: function render() {
70
- var _this$props = this.props,
71
- classes = _this$props.classes,
72
- categories = _this$props.categories,
73
- model = _this$props.model,
74
- disabled = _this$props.disabled,
75
- _onDropChoice = _this$props.onDropChoice,
76
- onRemoveChoice = _this$props.onRemoveChoice;
77
- var categoriesPerRow = model.categoriesPerRow; // split categories into an array of arrays (inner array),
78
- // where each inner array represents how many categories should be displayed on one row
79
-
80
- var chunkedCategories = (0, _chunk["default"])(categories, categoriesPerRow);
81
- return /*#__PURE__*/_react["default"].createElement(_gridContent["default"], {
82
- columns: categoriesPerRow,
83
- className: classes.categories,
84
- rows: Math.ceil(categories.length / categoriesPerRow) * 2
85
- }, chunkedCategories.map(function (cat, rowIndex) {
86
- var items = []; // for each inner array of categories, create a row with category titles
87
-
88
- cat.forEach(function (c, columnIndex) {
89
- items.push( /*#__PURE__*/_react["default"].createElement(_Typography["default"], {
90
- className: classes.label,
91
- key: "category-label-".concat(rowIndex, "-").concat(columnIndex)
92
- }, /*#__PURE__*/_react["default"].createElement("span", {
93
- dangerouslySetInnerHTML: {
94
- __html: c.label
95
- }
96
- })));
97
- }); // if the last row has less categories than max on a row, fill the spaces with divs
98
-
99
- items = items.concat(Array(categoriesPerRow - cat.length).fill( /*#__PURE__*/_react["default"].createElement("div", null)).map(function (value, index) {
100
- return /*#__PURE__*/_react["default"].createElement("div", {
101
- key: "fill-space-".concat(index)
102
- });
103
- })); // for each inner array of categories, create a row with category containers
104
-
105
- cat.forEach(function (c, columnIndex) {
106
- items.push( /*#__PURE__*/_react["default"].createElement(_category["default"], (0, _extends2["default"])({
107
- onDropChoice: function onDropChoice(h) {
108
- return _onDropChoice(c.id, h);
109
- },
110
- onRemoveChoice: onRemoveChoice,
111
- disabled: disabled,
112
- className: classes.category,
113
- key: "category-element-".concat(rowIndex, "-").concat(columnIndex)
114
- }, c)));
115
- }); // if the last row has less categories than max on a row, fill the spaces with divs
116
-
117
- items = items.concat(Array(categoriesPerRow - cat.length).fill( /*#__PURE__*/_react["default"].createElement("div", null)).map(function (value, index) {
118
- return /*#__PURE__*/_react["default"].createElement("div", {
119
- key: "fill-space-final-".concat(index)
120
- });
121
- }));
122
- return items;
123
- }));
124
- }
125
- }]);
126
- return Categories;
127
- }(_react["default"].Component);
128
-
129
- exports.Categories = Categories;
130
- (0, _defineProperty2["default"])(Categories, "propTypes", {
131
- classes: _propTypes["default"].object.isRequired,
132
- categories: _propTypes["default"].arrayOf(_propTypes["default"].shape(_category.CategoryType)),
133
- model: _propTypes["default"].shape({
134
- categoriesPerRow: _propTypes["default"].number
135
- }),
136
- disabled: _propTypes["default"].bool,
137
- onDropChoice: _propTypes["default"].func.isRequired,
138
- onRemoveChoice: _propTypes["default"].func.isRequired
139
- });
140
- (0, _defineProperty2["default"])(Categories, "defaultProps", {
141
- model: {
142
- categoriesPerRow: 1
143
- }
144
- });
145
-
146
- var styles = function styles(theme) {
147
- return {
148
- categories: {
149
- flex: 1,
150
- padding: '8px'
151
- },
152
- label: {
153
- color: _renderUi.color.text(),
154
- backgroundColor: _renderUi.color.background(),
155
- fontSize: theme.typography.fontSize,
156
- textAlign: 'center',
157
- paddingTop: theme.spacing.unit
158
- }
159
- };
160
- };
161
-
162
- var _default = (0, _styles.withStyles)(styles)(Categories);
163
-
164
- exports["default"] = _default;
165
- //# sourceMappingURL=categories.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/categorize/categories.jsx"],"names":["Categories","props","classes","categories","model","disabled","onDropChoice","onRemoveChoice","categoriesPerRow","chunkedCategories","Math","ceil","length","map","cat","rowIndex","items","forEach","c","columnIndex","push","label","__html","concat","Array","fill","value","index","h","id","category","React","Component","PropTypes","object","isRequired","arrayOf","shape","CategoryType","number","bool","func","styles","theme","flex","padding","color","text","backgroundColor","background","fontSize","typography","textAlign","paddingTop","spacing","unit"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport Typography from '@material-ui/core/Typography';\nimport { color } from '@pie-lib/render-ui';\n\nimport chunk from 'lodash/chunk';\n\nimport GridContent from './grid-content';\nimport Category, { CategoryType } from './category';\n\nexport { CategoryType };\n\nexport class Categories extends React.Component {\n static propTypes = {\n classes: PropTypes.object.isRequired,\n categories: PropTypes.arrayOf(PropTypes.shape(CategoryType)),\n model: PropTypes.shape({\n categoriesPerRow: PropTypes.number,\n }),\n disabled: PropTypes.bool,\n onDropChoice: PropTypes.func.isRequired,\n onRemoveChoice: PropTypes.func.isRequired,\n };\n\n static defaultProps = {\n model: {\n categoriesPerRow: 1,\n },\n };\n\n render() {\n const { classes, categories, model, disabled, onDropChoice, onRemoveChoice } = this.props;\n const { categoriesPerRow } = model;\n\n // split categories into an array of arrays (inner array),\n // where each inner array represents how many categories should be displayed on one row\n const chunkedCategories = chunk(categories, categoriesPerRow);\n\n return (\n <GridContent\n columns={categoriesPerRow}\n className={classes.categories}\n rows={Math.ceil(categories.length / categoriesPerRow) * 2}\n >\n {chunkedCategories.map((cat, rowIndex) => {\n let items = [];\n\n // for each inner array of categories, create a row with category titles\n cat.forEach((c, columnIndex) => {\n items.push(\n <Typography className={classes.label} key={`category-label-${rowIndex}-${columnIndex}`}>\n <span dangerouslySetInnerHTML={{ __html: c.label }} />\n </Typography>,\n );\n });\n\n // if the last row has less categories than max on a row, fill the spaces with divs\n items = items.concat(Array(categoriesPerRow - cat.length).fill(<div/>).map((value,index) => <div key={`fill-space-${index}`} />));\n\n // for each inner array of categories, create a row with category containers\n cat.forEach((c, columnIndex) => {\n items.push(\n <Category\n onDropChoice={(h) => onDropChoice(c.id, h)}\n onRemoveChoice={onRemoveChoice}\n disabled={disabled}\n className={classes.category}\n key={`category-element-${rowIndex}-${columnIndex}`}\n {...c}\n />,\n );\n });\n\n // if the last row has less categories than max on a row, fill the spaces with divs\n items = items.concat(Array(categoriesPerRow - cat.length).fill(<div/>).map((value,index) =><div key={`fill-space-final-${index}`} />));\n\n return items;\n })}\n </GridContent>\n );\n }\n}\n\nconst styles = (theme) => ({\n categories: {\n flex: 1,\n padding: '8px'\n },\n label: {\n color: color.text(),\n backgroundColor: color.background(),\n fontSize: theme.typography.fontSize,\n textAlign: 'center',\n paddingTop: theme.spacing.unit,\n },\n});\nexport default withStyles(styles)(Categories);\n"],"file":"categories.js"}
@@ -1,134 +0,0 @@
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.CategoryType = exports.Category = void 0;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
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 _classnames = _interopRequireDefault(require("classnames"));
31
-
32
- var _choice = _interopRequireDefault(require("./choice"));
33
-
34
- var _droppablePlaceholder = _interopRequireDefault(require("./droppable-placeholder"));
35
-
36
- var _renderUi = require("@pie-lib/render-ui");
37
-
38
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
39
-
40
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
41
-
42
- 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); }; }
43
-
44
- 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; } }
45
-
46
- var CategoryType = {
47
- id: _propTypes["default"].string.isRequired,
48
- categoryId: _propTypes["default"].string
49
- };
50
- exports.CategoryType = CategoryType;
51
-
52
- var Category = /*#__PURE__*/function (_React$Component) {
53
- (0, _inherits2["default"])(Category, _React$Component);
54
-
55
- var _super = _createSuper(Category);
56
-
57
- function Category() {
58
- (0, _classCallCheck2["default"])(this, Category);
59
- return _super.apply(this, arguments);
60
- }
61
-
62
- (0, _createClass2["default"])(Category, [{
63
- key: "render",
64
- value: function render() {
65
- var _this$props = this.props,
66
- classes = _this$props.classes,
67
- className = _this$props.className,
68
- _this$props$choices = _this$props.choices,
69
- choices = _this$props$choices === void 0 ? [] : _this$props$choices,
70
- disabled = _this$props.disabled,
71
- onDropChoice = _this$props.onDropChoice,
72
- onRemoveChoice = _this$props.onRemoveChoice,
73
- id = _this$props.id,
74
- correct = _this$props.correct;
75
- var names = (0, _classnames["default"])(classes.category, className);
76
- var placeholderNames = (0, _classnames["default"])(classes.placeholder, correct === false && classes.incorrect);
77
- return /*#__PURE__*/_react["default"].createElement("div", {
78
- className: names
79
- }, /*#__PURE__*/_react["default"].createElement(_droppablePlaceholder["default"], {
80
- onDropChoice: onDropChoice,
81
- disabled: disabled,
82
- className: placeholderNames
83
- }, choices.map(function (c, index) {
84
- return /*#__PURE__*/_react["default"].createElement(_choice["default"], (0, _extends2["default"])({
85
- onRemoveChoice: onRemoveChoice,
86
- disabled: disabled,
87
- key: index,
88
- choiceIndex: index,
89
- categoryId: id
90
- }, c));
91
- })));
92
- }
93
- }]);
94
- return Category;
95
- }(_react["default"].Component);
96
-
97
- exports.Category = Category;
98
- (0, _defineProperty2["default"])(Category, "propTypes", _objectSpread(_objectSpread({}, CategoryType), {}, {
99
- className: _propTypes["default"].string,
100
- disabled: _propTypes["default"].bool,
101
- classes: _propTypes["default"].object.isRequired,
102
- onDropChoice: _propTypes["default"].func,
103
- onRemoveChoice: _propTypes["default"].func
104
- }));
105
- (0, _defineProperty2["default"])(Category, "defaultProps", {});
106
-
107
- var styles = function styles(theme) {
108
- return {
109
- incorrect: {
110
- border: "solid 2px ".concat(_renderUi.color.incorrect())
111
- },
112
- placeholder: {
113
- minHeight: '80px',
114
- padding: theme.spacing.unit / 2,
115
- borderRadius: theme.spacing.unit / 2,
116
- gridColumnGap: 0,
117
- gridRowGap: 0,
118
- display: 'flex',
119
- flexWrap: 'wrap',
120
- justifyContent: 'center',
121
- alignItems: 'center',
122
- alignContent: 'flex-start'
123
- },
124
- category: {
125
- display: 'flex',
126
- flexDirection: 'column'
127
- }
128
- };
129
- };
130
-
131
- var _default = (0, _styles.withStyles)(styles)(Category);
132
-
133
- exports["default"] = _default;
134
- //# sourceMappingURL=category.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/categorize/category.jsx"],"names":["CategoryType","id","PropTypes","string","isRequired","categoryId","Category","props","classes","className","choices","disabled","onDropChoice","onRemoveChoice","correct","names","category","placeholderNames","placeholder","incorrect","map","c","index","React","Component","bool","object","func","styles","theme","border","color","minHeight","padding","spacing","unit","borderRadius","gridColumnGap","gridRowGap","display","flexWrap","justifyContent","alignItems","alignContent","flexDirection"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEO,IAAMA,YAAY,GAAG;AAC1BC,EAAAA,EAAE,EAAEC,sBAAUC,MAAV,CAAiBC,UADK;AAE1BC,EAAAA,UAAU,EAAEH,sBAAUC;AAFI,CAArB;;;IAKMG,Q;;;;;;;;;;;;WAYX,kBAAS;AACP,wBAAkG,KAAKC,KAAvG;AAAA,UAAQC,OAAR,eAAQA,OAAR;AAAA,UAAiBC,SAAjB,eAAiBA,SAAjB;AAAA,4CAA4BC,OAA5B;AAAA,UAA4BA,OAA5B,oCAAsC,EAAtC;AAAA,UAA0CC,QAA1C,eAA0CA,QAA1C;AAAA,UAAoDC,YAApD,eAAoDA,YAApD;AAAA,UAAkEC,cAAlE,eAAkEA,cAAlE;AAAA,UAAkFZ,EAAlF,eAAkFA,EAAlF;AAAA,UAAsFa,OAAtF,eAAsFA,OAAtF;AAEA,UAAMC,KAAK,GAAG,4BAAWP,OAAO,CAACQ,QAAnB,EAA6BP,SAA7B,CAAd;AACA,UAAMQ,gBAAgB,GAAG,4BAAWT,OAAO,CAACU,WAAnB,EAAgCJ,OAAO,KAAK,KAAZ,IAAqBN,OAAO,CAACW,SAA7D,CAAzB;AAEA,0BACE;AAAK,QAAA,SAAS,EAAEJ;AAAhB,sBACE,gCAAC,gCAAD;AAAa,QAAA,YAAY,EAAEH,YAA3B;AAAyC,QAAA,QAAQ,EAAED,QAAnD;AAA6D,QAAA,SAAS,EAAEM;AAAxE,SACGP,OAAO,CAACU,GAAR,CAAY,UAACC,CAAD,EAAIC,KAAJ;AAAA,4BACX,gCAAC,kBAAD;AACE,UAAA,cAAc,EAAET,cADlB;AAEE,UAAA,QAAQ,EAAEF,QAFZ;AAGE,UAAA,GAAG,EAAEW,KAHP;AAIE,UAAA,WAAW,EAAEA,KAJf;AAKE,UAAA,UAAU,EAAErB;AALd,WAMMoB,CANN,EADW;AAAA,OAAZ,CADH,CADF,CADF;AAgBD;;;EAlC2BE,kBAAMC,S;;;iCAAvBlB,Q,+CAENN,Y;AACHS,EAAAA,SAAS,EAAEP,sBAAUC,M;AACrBQ,EAAAA,QAAQ,EAAET,sBAAUuB,I;AACpBjB,EAAAA,OAAO,EAAEN,sBAAUwB,MAAV,CAAiBtB,U;AAC1BQ,EAAAA,YAAY,EAAEV,sBAAUyB,I;AACxBd,EAAAA,cAAc,EAAEX,sBAAUyB;;iCAPjBrB,Q,kBAUW,E;;AA2BxB,IAAMsB,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;AAAA,SAAY;AACzBV,IAAAA,SAAS,EAAE;AACTW,MAAAA,MAAM,sBAAeC,gBAAMZ,SAAN,EAAf;AADG,KADc;AAIzBD,IAAAA,WAAW,EAAE;AACXc,MAAAA,SAAS,EAAE,MADA;AAEXC,MAAAA,OAAO,EAAEJ,KAAK,CAACK,OAAN,CAAcC,IAAd,GAAqB,CAFnB;AAGXC,MAAAA,YAAY,EAAEP,KAAK,CAACK,OAAN,CAAcC,IAAd,GAAqB,CAHxB;AAIXE,MAAAA,aAAa,EAAE,CAJJ;AAKXC,MAAAA,UAAU,EAAE,CALD;AAMXC,MAAAA,OAAO,EAAE,MANE;AAOXC,MAAAA,QAAQ,EAAE,MAPC;AAQXC,MAAAA,cAAc,EAAE,QARL;AASXC,MAAAA,UAAU,EAAE,QATD;AAUXC,MAAAA,YAAY,EAAE;AAVH,KAJY;AAgBzB3B,IAAAA,QAAQ,EAAE;AACRuB,MAAAA,OAAO,EAAE,MADD;AAERK,MAAAA,aAAa,EAAE;AAFP;AAhBe,GAAZ;AAAA,CAAf;;eAsBe,wBAAWhB,MAAX,EAAmBtB,QAAnB,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport Choice from './choice';\nimport PlaceHolder from './droppable-placeholder';\nimport { color } from '@pie-lib/render-ui';\n\nexport const CategoryType = {\n id: PropTypes.string.isRequired,\n categoryId: PropTypes.string,\n};\n\nexport class Category extends React.Component {\n static propTypes = {\n ...CategoryType,\n className: PropTypes.string,\n disabled: PropTypes.bool,\n classes: PropTypes.object.isRequired,\n onDropChoice: PropTypes.func,\n onRemoveChoice: PropTypes.func,\n };\n\n static defaultProps = {};\n\n render() {\n const { classes, className, choices = [], disabled, onDropChoice, onRemoveChoice, id, correct } = this.props;\n\n const names = classNames(classes.category, className);\n const placeholderNames = classNames(classes.placeholder, correct === false && classes.incorrect);\n\n return (\n <div className={names}>\n <PlaceHolder onDropChoice={onDropChoice} disabled={disabled} className={placeholderNames}>\n {choices.map((c, index) => (\n <Choice\n onRemoveChoice={onRemoveChoice}\n disabled={disabled}\n key={index}\n choiceIndex={index}\n categoryId={id}\n {...c}\n />\n ))}\n </PlaceHolder>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n incorrect: {\n border: `solid 2px ${color.incorrect()}`,\n },\n placeholder: {\n minHeight: '80px',\n padding: theme.spacing.unit / 2,\n borderRadius: theme.spacing.unit / 2,\n gridColumnGap: 0,\n gridRowGap: 0,\n display: 'flex',\n flexWrap: 'wrap',\n justifyContent: 'center',\n alignItems: 'center',\n alignContent: 'flex-start',\n },\n category: {\n display: 'flex',\n flexDirection: 'column',\n },\n});\n\nexport default withStyles(styles)(Category);\n"],"file":"category.js"}
@@ -1,226 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.spec = exports["default"] = exports.Layout = exports.ChoiceType = exports.Choice = 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 _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
-
16
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
-
18
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
-
20
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
-
22
- var _react = _interopRequireDefault(require("react"));
23
-
24
- var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
- var _styles = require("@material-ui/core/styles");
27
-
28
- var _classnames = _interopRequireDefault(require("classnames"));
29
-
30
- var _reactDnd = require("react-dnd");
31
-
32
- var _drag = require("@pie-lib/drag");
33
-
34
- var _Card = _interopRequireDefault(require("@material-ui/core/Card"));
35
-
36
- var _CardContent = _interopRequireDefault(require("@material-ui/core/CardContent"));
37
-
38
- var _renderUi = require("@pie-lib/render-ui");
39
-
40
- var _debug = _interopRequireDefault(require("debug"));
41
-
42
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
43
-
44
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
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 log = (0, _debug["default"])('@pie-ui:categorize:choice');
51
- var ChoiceType = {
52
- content: _propTypes["default"].string.isRequired,
53
- id: _propTypes["default"].string
54
- };
55
- exports.ChoiceType = ChoiceType;
56
-
57
- var Layout = /*#__PURE__*/function (_React$Component) {
58
- (0, _inherits2["default"])(Layout, _React$Component);
59
-
60
- var _super = _createSuper(Layout);
61
-
62
- function Layout() {
63
- (0, _classCallCheck2["default"])(this, Layout);
64
- return _super.apply(this, arguments);
65
- }
66
-
67
- (0, _createClass2["default"])(Layout, [{
68
- key: "render",
69
- value: function render() {
70
- var _this$props = this.props,
71
- classes = _this$props.classes,
72
- className = _this$props.className,
73
- content = _this$props.content,
74
- isDragging = _this$props.isDragging,
75
- disabled = _this$props.disabled,
76
- correct = _this$props.correct;
77
- var rootNames = (0, _classnames["default"])(correct === true && 'correct', correct === false && 'incorrect', classes.choice, isDragging && classes.dragging, disabled && classes.disabled, className);
78
- var cardNames = (0, _classnames["default"])(classes.card);
79
- return /*#__PURE__*/_react["default"].createElement("div", {
80
- className: rootNames
81
- }, /*#__PURE__*/_react["default"].createElement(_Card["default"], {
82
- className: cardNames
83
- }, /*#__PURE__*/_react["default"].createElement(_CardContent["default"], {
84
- classes: {
85
- root: classes.cardRoot
86
- },
87
- dangerouslySetInnerHTML: {
88
- __html: content
89
- }
90
- })));
91
- }
92
- }]);
93
- return Layout;
94
- }(_react["default"].Component);
95
-
96
- exports.Layout = Layout;
97
- (0, _defineProperty2["default"])(Layout, "propTypes", _objectSpread(_objectSpread({}, ChoiceType), {}, {
98
- classes: _propTypes["default"].object.isRequired,
99
- className: _propTypes["default"].string,
100
- disabled: _propTypes["default"].bool,
101
- correct: _propTypes["default"].bool
102
- }));
103
- (0, _defineProperty2["default"])(Layout, "defaultProps", {});
104
-
105
- var styles = function styles(theme) {
106
- return {
107
- choice: {
108
- direction: 'initial',
109
- cursor: 'pointer',
110
- width: '100%',
111
- '&.correct': {
112
- border: "solid 2px ".concat(_renderUi.color.correct())
113
- },
114
- '&.incorrect': {
115
- border: "solid 2px ".concat(_renderUi.color.incorrect())
116
- },
117
- borderRadius: '6px'
118
- },
119
- cardRoot: {
120
- color: _renderUi.color.text(),
121
- backgroundColor: _renderUi.color.background(),
122
- fontSize: theme.typography.fontSize + 2,
123
- '&:last-child': {
124
- paddingBottom: theme.spacing.unit * 2
125
- },
126
- borderRadius: '4px',
127
- border: '1px solid'
128
- },
129
- disabled: {
130
- cursor: 'not-allowed',
131
- opacity: '0.6'
132
- },
133
- dragging: {
134
- cursor: 'move'
135
- },
136
- card: {
137
- color: _renderUi.color.text(),
138
- backgroundColor: _renderUi.color.background(),
139
- width: '100%'
140
- }
141
- };
142
- };
143
-
144
- var Styled = (0, _styles.withStyles)(styles)(Layout);
145
-
146
- var Choice = /*#__PURE__*/function (_React$Component2) {
147
- (0, _inherits2["default"])(Choice, _React$Component2);
148
-
149
- var _super2 = _createSuper(Choice);
150
-
151
- function Choice() {
152
- (0, _classCallCheck2["default"])(this, Choice);
153
- return _super2.apply(this, arguments);
154
- }
155
-
156
- (0, _createClass2["default"])(Choice, [{
157
- key: "render",
158
- value: function render() {
159
- var _this$props2 = this.props,
160
- connectDragSource = _this$props2.connectDragSource,
161
- id = _this$props2.id,
162
- content = _this$props2.content,
163
- disabled = _this$props2.disabled,
164
- isDragging = _this$props2.isDragging,
165
- correct = _this$props2.correct,
166
- extraStyle = _this$props2.extraStyle;
167
- return connectDragSource( /*#__PURE__*/_react["default"].createElement("div", {
168
- style: _objectSpread({
169
- margin: '4px'
170
- }, extraStyle)
171
- }, /*#__PURE__*/_react["default"].createElement(Styled, {
172
- id: id,
173
- content: content,
174
- disabled: disabled,
175
- correct: correct,
176
- isDragging: isDragging
177
- })));
178
- }
179
- }]);
180
- return Choice;
181
- }(_react["default"].Component);
182
-
183
- exports.Choice = Choice;
184
- (0, _defineProperty2["default"])(Choice, "propTypes", _objectSpread(_objectSpread({}, ChoiceType), {}, {
185
- extraStyle: _propTypes["default"].object,
186
- connectDragSource: _propTypes["default"].func.isRequired
187
- }));
188
- var spec = {
189
- canDrag: function canDrag(props) {
190
- return !props.disabled;
191
- },
192
- beginDrag: function beginDrag(props) {
193
- var out = {
194
- id: props.id,
195
- categoryId: props.categoryId,
196
- choiceIndex: props.choiceIndex
197
- };
198
- log('[beginDrag] out:', out);
199
- return out;
200
- },
201
- endDrag: function endDrag(props, monitor) {
202
- if (!monitor.didDrop()) {
203
- var item = monitor.getItem();
204
-
205
- if (item.categoryId) {
206
- log('wasnt droppped - what to do?');
207
- props.onRemoveChoice(item);
208
- }
209
- }
210
- }
211
- };
212
- exports.spec = spec;
213
- var DraggableChoice = (0, _reactDnd.DragSource)(function (_ref) {
214
- var uid = _ref.uid;
215
- return uid;
216
- }, spec, function (connect, monitor) {
217
- return {
218
- connectDragSource: connect.dragSource(),
219
- isDragging: monitor.isDragging()
220
- };
221
- })(Choice);
222
-
223
- var _default = _drag.uid.withUid(DraggableChoice);
224
-
225
- exports["default"] = _default;
226
- //# sourceMappingURL=choice.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/categorize/choice.jsx"],"names":["log","ChoiceType","content","PropTypes","string","isRequired","id","Layout","props","classes","className","isDragging","disabled","correct","rootNames","choice","dragging","cardNames","card","root","cardRoot","__html","React","Component","object","bool","styles","theme","direction","cursor","width","border","color","incorrect","borderRadius","text","backgroundColor","background","fontSize","typography","paddingBottom","spacing","unit","opacity","Styled","Choice","connectDragSource","extraStyle","margin","func","spec","canDrag","beginDrag","out","categoryId","choiceIndex","endDrag","monitor","didDrop","item","getItem","onRemoveChoice","DraggableChoice","uid","connect","dragSource","withUid"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\nimport { DragSource } from 'react-dnd';\nimport { uid } from '@pie-lib/drag';\nimport Card from '@material-ui/core/Card';\nimport CardContent from '@material-ui/core/CardContent';\nimport { color } from '@pie-lib/render-ui';\nimport debug from 'debug';\n\nconst log = debug('@pie-ui:categorize:choice');\n\nexport const ChoiceType = {\n content: PropTypes.string.isRequired,\n id: PropTypes.string,\n};\n\nexport class Layout extends React.Component {\n static propTypes = {\n ...ChoiceType,\n classes: PropTypes.object.isRequired,\n className: PropTypes.string,\n disabled: PropTypes.bool,\n correct: PropTypes.bool,\n };\n static defaultProps = {};\n render() {\n const { classes, className, content, isDragging, disabled, correct } = this.props;\n\n const rootNames = classNames(\n correct === true && 'correct',\n correct === false && 'incorrect',\n classes.choice,\n isDragging && classes.dragging,\n disabled && classes.disabled,\n className,\n );\n const cardNames = classNames(classes.card);\n return (\n <div className={rootNames}>\n <Card className={cardNames}>\n <CardContent classes={{ root: classes.cardRoot }} dangerouslySetInnerHTML={{ __html: content }} />\n </Card>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n choice: {\n direction: 'initial',\n cursor: 'pointer',\n width: '100%',\n '&.correct': {\n border: `solid 2px ${color.correct()}`,\n },\n '&.incorrect': {\n border: `solid 2px ${color.incorrect()}`,\n },\n borderRadius: '6px',\n },\n cardRoot: {\n color: color.text(),\n backgroundColor: color.background(),\n fontSize: theme.typography.fontSize + 2,\n '&:last-child': {\n paddingBottom: theme.spacing.unit * 2,\n },\n borderRadius: '4px',\n border: '1px solid',\n },\n disabled: {\n cursor: 'not-allowed',\n opacity: '0.6',\n },\n dragging: {\n cursor: 'move',\n },\n card: {\n color: color.text(),\n backgroundColor: color.background(),\n width: '100%',\n },\n});\n\nconst Styled = withStyles(styles)(Layout);\n\nexport class Choice extends React.Component {\n static propTypes = {\n ...ChoiceType,\n extraStyle: PropTypes.object,\n connectDragSource: PropTypes.func.isRequired,\n };\n\n render() {\n const { connectDragSource, id, content, disabled, isDragging, correct, extraStyle } = this.props;\n\n return connectDragSource(\n <div style={{ margin: '4px', ...extraStyle }}>\n <Styled id={id} content={content} disabled={disabled} correct={correct} isDragging={isDragging} />\n </div>,\n );\n }\n}\n\nexport const spec = {\n canDrag: (props) => !props.disabled,\n beginDrag: (props) => {\n const out = {\n id: props.id,\n categoryId: props.categoryId,\n choiceIndex: props.choiceIndex,\n };\n log('[beginDrag] out:', out);\n return out;\n },\n endDrag: (props, monitor) => {\n if (!monitor.didDrop()) {\n const item = monitor.getItem();\n if (item.categoryId) {\n log('wasnt droppped - what to do?');\n props.onRemoveChoice(item);\n }\n }\n },\n};\n\nconst DraggableChoice = DragSource(\n ({ uid }) => uid,\n spec,\n (connect, monitor) => ({\n connectDragSource: connect.dragSource(),\n isDragging: monitor.isDragging(),\n }),\n)(Choice);\n\nexport default uid.withUid(DraggableChoice);\n"],"file":"choice.js"}