@pie-element/likert 4.1.1-next.0 → 4.1.1-next.29

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 (171) hide show
  1. package/CHANGELOG.json +1 -0
  2. package/CHANGELOG.md +1451 -0
  3. package/LICENSE.md +5 -0
  4. package/configure/CHANGELOG.json +1 -0
  5. package/configure/CHANGELOG.md +1369 -0
  6. package/configure/lib/choiceGenerator.js +219 -0
  7. package/configure/lib/choiceGenerator.js.map +1 -0
  8. package/configure/lib/defaults.js +100 -0
  9. package/configure/lib/defaults.js.map +1 -0
  10. package/configure/lib/index.js +106 -0
  11. package/configure/lib/index.js.map +1 -0
  12. package/configure/lib/likertEntities.js +24 -0
  13. package/configure/lib/likertEntities.js.map +1 -0
  14. package/configure/lib/main.js +388 -0
  15. package/configure/lib/main.js.map +1 -0
  16. package/configure/package.json +27 -0
  17. package/controller/CHANGELOG.json +1 -0
  18. package/controller/CHANGELOG.md +86 -0
  19. package/controller/lib/defaults.js +17 -0
  20. package/controller/lib/defaults.js.map +1 -0
  21. package/controller/lib/index.js +81 -0
  22. package/controller/lib/index.js.map +1 -0
  23. package/controller/package.json +17 -0
  24. package/docs/config-schema.json +2011 -0
  25. package/docs/config-schema.json.md +1487 -0
  26. package/docs/demo/config.js +8 -0
  27. package/docs/demo/generate.js +22 -0
  28. package/docs/demo/index.html +1 -0
  29. package/docs/demo/session.js +6 -0
  30. package/docs/pie-schema.json +966 -0
  31. package/docs/pie-schema.json.md +711 -0
  32. package/lib/choice-input.js +90 -0
  33. package/lib/choice-input.js.map +1 -0
  34. package/lib/index.js +64 -0
  35. package/lib/index.js.map +1 -0
  36. package/lib/likert.js +97 -0
  37. package/lib/likert.js.map +1 -0
  38. package/lib/likertEntities.js +11 -0
  39. package/lib/likertEntities.js.map +1 -0
  40. package/lib/main.js +42 -0
  41. package/lib/main.js.map +1 -0
  42. package/lib/session-updater.js +15 -0
  43. package/lib/session-updater.js.map +1 -0
  44. package/package.json +19 -54
  45. package/readme.md +55 -0
  46. package/dist/author/choiceGenerator.d.ts +0 -13
  47. package/dist/author/choiceGenerator.js +0 -255
  48. package/dist/author/defaults.d.ts +0 -102
  49. package/dist/author/defaults.js +0 -60
  50. package/dist/author/index.d.ts +0 -31
  51. package/dist/author/index.js +0 -73
  52. package/dist/author/likertEntities.d.ts +0 -25
  53. package/dist/author/likertEntities.js +0 -18
  54. package/dist/author/main.d.ts +0 -27
  55. package/dist/author/main.js +0 -298
  56. package/dist/controller/defaults.d.ts +0 -19
  57. package/dist/controller/defaults.js +0 -13
  58. package/dist/controller/index.d.ts +0 -19
  59. package/dist/controller/index.js +0 -41
  60. package/dist/delivery/choice-input.d.ts +0 -27
  61. package/dist/delivery/choice-input.js +0 -59
  62. package/dist/delivery/index.d.ts +0 -19
  63. package/dist/delivery/index.js +0 -44
  64. package/dist/delivery/likert.d.ts +0 -26
  65. package/dist/delivery/likert.js +0 -70
  66. package/dist/delivery/likertEntities.d.ts +0 -12
  67. package/dist/delivery/likertEntities.js +0 -7
  68. package/dist/delivery/main.d.ts +0 -23
  69. package/dist/delivery/main.js +0 -37
  70. package/dist/delivery/session-updater.d.ts +0 -9
  71. package/dist/index.d.ts +0 -1
  72. package/dist/index.iife.d.ts +0 -8
  73. package/dist/index.iife.js +0 -145
  74. package/dist/index.js +0 -2
  75. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Hash.js +0 -16
  76. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_ListCache.js +0 -16
  77. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Map.js +0 -6
  78. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_MapCache.js +0 -16
  79. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Stack.js +0 -14
  80. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Symbol.js +0 -5
  81. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_Uint8Array.js +0 -5
  82. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_apply.js +0 -12
  83. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_arrayLikeKeys.js +0 -15
  84. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assignMergeValue.js +0 -8
  85. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assignValue.js +0 -10
  86. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_assocIndexOf.js +0 -8
  87. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseAssignValue.js +0 -12
  88. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseCreate.js +0 -14
  89. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseFor.js +0 -5
  90. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseGetTag.js +0 -10
  91. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsArguments.js +0 -9
  92. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsNative.js +0 -11
  93. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseIsTypedArray.js +0 -11
  94. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseKeysIn.js +0 -13
  95. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseMerge.js +0 -19
  96. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseMergeDeep.js +0 -31
  97. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseRest.js +0 -9
  98. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseSetToString.js +0 -14
  99. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseTimes.js +0 -7
  100. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_baseUnary.js +0 -8
  101. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneArrayBuffer.js +0 -8
  102. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneBuffer.js +0 -10
  103. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_cloneTypedArray.js +0 -8
  104. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyArray.js +0 -8
  105. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_copyObject.js +0 -14
  106. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_coreJsData.js +0 -5
  107. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_createAssigner.js +0 -15
  108. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_createBaseFor.js +0 -12
  109. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_defineProperty.js +0 -10
  110. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_freeGlobal.js +0 -4
  111. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getMapData.js +0 -8
  112. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getNative.js +0 -9
  113. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getPrototype.js +0 -5
  114. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getRawTag.js +0 -14
  115. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_getValue.js +0 -6
  116. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashClear.js +0 -7
  117. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashDelete.js +0 -7
  118. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashGet.js +0 -13
  119. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashHas.js +0 -9
  120. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_hashSet.js +0 -9
  121. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_initCloneObject.js +0 -9
  122. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isIndex.js +0 -8
  123. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isIterateeCall.js +0 -12
  124. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isKeyable.js +0 -7
  125. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isMasked.js +0 -11
  126. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_isPrototype.js +0 -8
  127. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheClear.js +0 -6
  128. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheDelete.js +0 -9
  129. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheGet.js +0 -8
  130. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheHas.js +0 -7
  131. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_listCacheSet.js +0 -8
  132. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheClear.js +0 -13
  133. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheDelete.js +0 -8
  134. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheGet.js +0 -7
  135. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheHas.js +0 -7
  136. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_mapCacheSet.js +0 -8
  137. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeCreate.js +0 -5
  138. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nativeKeysIn.js +0 -8
  139. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_nodeUtil.js +0 -9
  140. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_objectToString.js +0 -7
  141. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_overArg.js +0 -8
  142. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_overRest.js +0 -13
  143. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_root.js +0 -5
  144. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_safeGet.js +0 -6
  145. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_setToString.js +0 -6
  146. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_shortOut.js +0 -14
  147. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackClear.js +0 -7
  148. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackDelete.js +0 -7
  149. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackGet.js +0 -6
  150. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackHas.js +0 -6
  151. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_stackSet.js +0 -16
  152. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/_toSource.js +0 -15
  153. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/constant.js +0 -8
  154. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/defaults.js +0 -16
  155. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/eq.js +0 -6
  156. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/identity.js +0 -6
  157. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArguments.js +0 -10
  158. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArray.js +0 -4
  159. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArrayLike.js +0 -8
  160. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isArrayLikeObject.js +0 -8
  161. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isBuffer.js +0 -6
  162. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isFunction.js +0 -11
  163. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isLength.js +0 -7
  164. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObject.js +0 -7
  165. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isObjectLike.js +0 -6
  166. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isPlainObject.js +0 -14
  167. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/isTypedArray.js +0 -7
  168. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/keysIn.js +0 -9
  169. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/merge.js +0 -8
  170. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/stubFalse.js +0 -6
  171. package/dist/node_modules/.bun/lodash-es@4.18.1/node_modules/lodash-es/toPlainObject.js +0 -8
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = exports.RadioStyled = exports.ChoiceInput = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _FormControlLabel = _interopRequireDefault(require("@mui/material/FormControlLabel"));
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var _styles = require("@mui/material/styles");
13
+ var _renderUi = require("@pie-lib/render-ui");
14
+ var _Radio = _interopRequireDefault(require("@mui/material/Radio"));
15
+ var _likertEntities = require("./likertEntities");
16
+ const RadioStyled = exports.RadioStyled = (0, _styles.styled)(_Radio.default)({
17
+ color: `var(--choice-input-color, ${_renderUi.color.text()})`,
18
+ '&.Mui-checked': {
19
+ color: `var(--choice-input-selected-color, ${_renderUi.color.primary()})`
20
+ },
21
+ '&.Mui-disabled': {
22
+ color: `var(--choice-input-disabled-color, ${_renderUi.color.defaults.DISABLED})`
23
+ }
24
+ });
25
+ const LabelRoot = (0, _styles.styled)('p')({
26
+ color: _renderUi.color.text(),
27
+ textAlign: 'center',
28
+ cursor: 'pointer'
29
+ });
30
+ const CheckboxHolderRoot = (0, _styles.styled)('div')({
31
+ display: 'flex',
32
+ alignItems: 'center',
33
+ flex: 1,
34
+ padding: '0 5px',
35
+ '& label': {}
36
+ });
37
+ const StyledFormControlLabel = (0, _styles.styled)(_FormControlLabel.default)({
38
+ margin: 0
39
+ });
40
+ class ChoiceInput extends _react.default.Component {
41
+ constructor(...args) {
42
+ super(...args);
43
+ (0, _defineProperty2.default)(this, "onToggleChoice", () => {
44
+ this.props.onChange({
45
+ value: this.props.value,
46
+ selected: !this.props.checked
47
+ });
48
+ });
49
+ }
50
+ render() {
51
+ const {
52
+ disabled,
53
+ label,
54
+ checked,
55
+ likertOrientation
56
+ } = this.props;
57
+ const flexDirection = likertOrientation === _likertEntities.LIKERT_ORIENTATION.vertical ? 'row' : 'column';
58
+ return /*#__PURE__*/_react.default.createElement(CheckboxHolderRoot, {
59
+ style: {
60
+ flexDirection
61
+ }
62
+ }, /*#__PURE__*/_react.default.createElement(StyledFormControlLabel, {
63
+ disabled: disabled,
64
+ control: /*#__PURE__*/_react.default.createElement(RadioStyled, {
65
+ checked: checked,
66
+ onChange: this.onToggleChoice,
67
+ disabled: disabled
68
+ })
69
+ }), /*#__PURE__*/_react.default.createElement(LabelRoot, {
70
+ onClick: this.onToggleChoice,
71
+ dangerouslySetInnerHTML: {
72
+ __html: label
73
+ }
74
+ }));
75
+ }
76
+ }
77
+ exports.ChoiceInput = ChoiceInput;
78
+ (0, _defineProperty2.default)(ChoiceInput, "propTypes", {
79
+ checked: _propTypes.default.bool.isRequired,
80
+ disabled: _propTypes.default.bool.isRequired,
81
+ label: _propTypes.default.string.isRequired,
82
+ likertOrientation: _propTypes.default.string.isRequired,
83
+ onChange: _propTypes.default.func.isRequired,
84
+ value: _propTypes.default.number.isRequired
85
+ });
86
+ (0, _defineProperty2.default)(ChoiceInput, "defaultProps", {
87
+ checked: false
88
+ });
89
+ var _default = exports.default = ChoiceInput;
90
+ //# sourceMappingURL=choice-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"choice-input.js","names":["_react","_interopRequireDefault","require","_FormControlLabel","_propTypes","_styles","_renderUi","_Radio","_likertEntities","RadioStyled","exports","styled","Radio","color","text","primary","defaults","DISABLED","LabelRoot","textAlign","cursor","CheckboxHolderRoot","display","alignItems","flex","padding","StyledFormControlLabel","FormControlLabel","margin","ChoiceInput","React","Component","constructor","args","_defineProperty2","default","props","onChange","value","selected","checked","render","disabled","label","likertOrientation","flexDirection","LIKERT_ORIENTATION","vertical","createElement","style","control","onToggleChoice","onClick","dangerouslySetInnerHTML","__html","PropTypes","bool","isRequired","string","func","number","_default"],"sources":["../src/choice-input.jsx"],"sourcesContent":["import React from 'react';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\n\nimport { color } from '@pie-lib/render-ui';\nimport Radio from '@mui/material/Radio';\nimport { LIKERT_ORIENTATION } from './likertEntities';\n\nexport const RadioStyled = styled(Radio)({\n color: `var(--choice-input-color, ${color.text()})`,\n '&.Mui-checked': {\n color: `var(--choice-input-selected-color, ${color.primary()})`,\n },\n '&.Mui-disabled': {\n color: `var(--choice-input-disabled-color, ${color.defaults.DISABLED})`,\n },\n});\n\nconst LabelRoot = styled('p')({\n color: color.text(),\n textAlign: 'center',\n cursor: 'pointer',\n});\n\nconst CheckboxHolderRoot = styled('div')({\n display: 'flex',\n alignItems: 'center',\n flex: 1,\n padding: '0 5px',\n '& label': {},\n});\n\nconst StyledFormControlLabel = styled(FormControlLabel)({\n margin: 0,\n});\n\nexport class ChoiceInput extends React.Component {\n static propTypes = {\n checked: PropTypes.bool.isRequired,\n disabled: PropTypes.bool.isRequired,\n label: PropTypes.string.isRequired,\n likertOrientation: PropTypes.string.isRequired,\n onChange: PropTypes.func.isRequired,\n value: PropTypes.number.isRequired,\n };\n\n static defaultProps = {\n checked: false,\n };\n\n onToggleChoice = () => {\n this.props.onChange({\n value: this.props.value,\n selected: !this.props.checked,\n });\n };\n\n render() {\n const { disabled, label, checked, likertOrientation } = this.props;\n const flexDirection = likertOrientation === LIKERT_ORIENTATION.vertical ? 'row' : 'column';\n\n return (\n <CheckboxHolderRoot style={{ flexDirection }}>\n <StyledFormControlLabel\n disabled={disabled}\n control={<RadioStyled checked={checked} onChange={this.onToggleChoice} disabled={disabled} />}\n />\n <LabelRoot onClick={this.onToggleChoice} dangerouslySetInnerHTML={{ __html: label }} />\n </CheckboxHolderRoot>\n );\n }\n}\n\nexport default ChoiceInput;\n"],"mappings":"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","ignoreList":[]}
package/lib/index.js ADDED
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.isComplete = exports.default = void 0;
8
+ var _main = _interopRequireDefault(require("./main"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _client = require("react-dom/client");
11
+ var _piePlayerEvents = require("@pie-framework/pie-player-events");
12
+ var _mathRendering = require("@pie-lib/math-rendering");
13
+ const isComplete = session => !!(session && session.value && session.value.length);
14
+ exports.isComplete = isComplete;
15
+ class Likert extends HTMLElement {
16
+ constructor() {
17
+ super();
18
+ this._root = null;
19
+ }
20
+ set model(m) {
21
+ this._model = m;
22
+ this._render();
23
+ }
24
+ set session(s) {
25
+ this._session = s;
26
+ this._render();
27
+ }
28
+ get session() {
29
+ return this._session;
30
+ }
31
+ sessionChanged(s) {
32
+ this._session.value = s.value;
33
+ const complete = isComplete(this._session, this._model);
34
+ this.dispatchEvent(new _piePlayerEvents.SessionChangedEvent(this.tagName.toLowerCase(), complete));
35
+ this._render();
36
+ }
37
+ connectedCallback() {
38
+ this._render();
39
+ }
40
+ _render() {
41
+ if (!this._model || !this._session) {
42
+ return;
43
+ }
44
+ const el = /*#__PURE__*/_react.default.createElement(_main.default, {
45
+ model: this._model,
46
+ session: this._session,
47
+ onSessionChange: this.sessionChanged.bind(this)
48
+ });
49
+ if (!this._root) {
50
+ this._root = (0, _client.createRoot)(this);
51
+ }
52
+ this._root.render(el);
53
+ queueMicrotask(() => {
54
+ (0, _mathRendering.renderMath)(this);
55
+ });
56
+ }
57
+ disconnectedCallback() {
58
+ if (this._root) {
59
+ this._root.unmount();
60
+ }
61
+ }
62
+ }
63
+ exports.default = Likert;
64
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_main","_interopRequireDefault","require","_react","_client","_piePlayerEvents","_mathRendering","isComplete","session","value","length","exports","Likert","HTMLElement","constructor","_root","model","m","_model","_render","s","_session","sessionChanged","complete","dispatchEvent","SessionChangedEvent","tagName","toLowerCase","connectedCallback","el","React","createElement","Main","onSessionChange","bind","createRoot","render","queueMicrotask","renderMath","disconnectedCallback","unmount","default"],"sources":["../src/index.js"],"sourcesContent":["import Main from './main';\nimport React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { SessionChangedEvent } from '@pie-framework/pie-player-events';\nimport { renderMath } from '@pie-lib/math-rendering';\n\nexport const isComplete = (session) => !!(session && session.value && session.value.length);\n\nexport default class Likert extends HTMLElement {\n constructor() {\n super();\n this._root = null;\n }\n\n set model(m) {\n this._model = m;\n this._render();\n }\n\n set session(s) {\n this._session = s;\n this._render();\n }\n\n get session() {\n return this._session;\n }\n\n sessionChanged(s) {\n this._session.value = s.value;\n const complete = isComplete(this._session, this._model);\n this.dispatchEvent(new SessionChangedEvent(this.tagName.toLowerCase(), complete));\n this._render();\n }\n\n connectedCallback() {\n this._render();\n }\n\n _render() {\n if (!this._model || !this._session) {\n return;\n }\n\n const el = React.createElement(Main, {\n model: this._model,\n session: this._session,\n onSessionChange: this.sessionChanged.bind(this),\n });\n\n if (!this._root) {\n this._root = createRoot(this);\n }\n this._root.render(el);\n queueMicrotask(() => {\n renderMath(this);\n });\n }\n\n disconnectedCallback() {\n if (this._root) {\n this._root.unmount();\n }\n }\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,gBAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAEO,MAAMK,UAAU,GAAIC,OAAO,IAAK,CAAC,EAAEA,OAAO,IAAIA,OAAO,CAACC,KAAK,IAAID,OAAO,CAACC,KAAK,CAACC,MAAM,CAAC;AAACC,OAAA,CAAAJ,UAAA,GAAAA,UAAA;AAE7E,MAAMK,MAAM,SAASC,WAAW,CAAC;EAC9CC,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,CAAC;IACP,IAAI,CAACC,KAAK,GAAG,IAAI;EACnB;EAEA,IAAIC,KAAKA,CAACC,CAAC,EAAE;IACX,IAAI,CAACC,MAAM,GAAGD,CAAC;IACf,IAAI,CAACE,OAAO,CAAC,CAAC;EAChB;EAEA,IAAIX,OAAOA,CAACY,CAAC,EAAE;IACb,IAAI,CAACC,QAAQ,GAAGD,CAAC;IACjB,IAAI,CAACD,OAAO,CAAC,CAAC;EAChB;EAEA,IAAIX,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACa,QAAQ;EACtB;EAEAC,cAAcA,CAACF,CAAC,EAAE;IAChB,IAAI,CAACC,QAAQ,CAACZ,KAAK,GAAGW,CAAC,CAACX,KAAK;IAC7B,MAAMc,QAAQ,GAAGhB,UAAU,CAAC,IAAI,CAACc,QAAQ,EAAE,IAAI,CAACH,MAAM,CAAC;IACvD,IAAI,CAACM,aAAa,CAAC,IAAIC,oCAAmB,CAAC,IAAI,CAACC,OAAO,CAACC,WAAW,CAAC,CAAC,EAAEJ,QAAQ,CAAC,CAAC;IACjF,IAAI,CAACJ,OAAO,CAAC,CAAC;EAChB;EAEAS,iBAAiBA,CAAA,EAAG;IAClB,IAAI,CAACT,OAAO,CAAC,CAAC;EAChB;EAEAA,OAAOA,CAAA,EAAG;IACR,IAAI,CAAC,IAAI,CAACD,MAAM,IAAI,CAAC,IAAI,CAACG,QAAQ,EAAE;MAClC;IACF;IAEA,MAAMQ,EAAE,gBAAGC,cAAK,CAACC,aAAa,CAACC,aAAI,EAAE;MACnChB,KAAK,EAAE,IAAI,CAACE,MAAM;MAClBV,OAAO,EAAE,IAAI,CAACa,QAAQ;MACtBY,eAAe,EAAE,IAAI,CAACX,cAAc,CAACY,IAAI,CAAC,IAAI;IAChD,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAACnB,KAAK,EAAE;MACf,IAAI,CAACA,KAAK,GAAG,IAAAoB,kBAAU,EAAC,IAAI,CAAC;IAC/B;IACA,IAAI,CAACpB,KAAK,CAACqB,MAAM,CAACP,EAAE,CAAC;IACrBQ,cAAc,CAAC,MAAM;MACnB,IAAAC,yBAAU,EAAC,IAAI,CAAC;IAClB,CAAC,CAAC;EACJ;EAEAC,oBAAoBA,CAAA,EAAG;IACrB,IAAI,IAAI,CAACxB,KAAK,EAAE;MACd,IAAI,CAACA,KAAK,CAACyB,OAAO,CAAC,CAAC;IACtB;EACF;AACF;AAAC7B,OAAA,CAAA8B,OAAA,GAAA7B,MAAA","ignoreList":[]}
package/lib/likert.js ADDED
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = exports.Likert = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _choiceInput = _interopRequireDefault(require("./choice-input"));
12
+ var _styles = require("@mui/material/styles");
13
+ var _renderUi = require("@pie-lib/render-ui");
14
+ var _likertEntities = require("./likertEntities");
15
+ const Main = (0, _styles.styled)('div')({
16
+ color: _renderUi.color.text(),
17
+ backgroundColor: _renderUi.color.background(),
18
+ '& *': {
19
+ '-webkit-font-smoothing': 'antialiased'
20
+ }
21
+ });
22
+ const StyledCollapsible = (0, _styles.styled)(_renderUi.Collapsible)(({
23
+ theme
24
+ }) => ({
25
+ marginBottom: theme.spacing(2)
26
+ }));
27
+ const Prompt = (0, _styles.styled)('div')(({
28
+ theme
29
+ }) => ({
30
+ verticalAlign: 'middle',
31
+ color: 'var(--pie-primary-text, var(--pie-text, #000000))',
32
+ paddingBottom: theme.spacing(2)
33
+ }));
34
+ const ChoicesWrapper = (0, _styles.styled)('div')({
35
+ display: 'flex'
36
+ });
37
+ class Likert extends _react.default.Component {
38
+ UNSAFE_componentWillReceiveProps() {}
39
+ isSelected(value) {
40
+ return this.props.session && this.props.session.value === value;
41
+ }
42
+ render() {
43
+ const {
44
+ disabled,
45
+ choices = [],
46
+ prompt,
47
+ onSessionChange,
48
+ teacherInstructions,
49
+ className,
50
+ likertOrientation
51
+ } = this.props;
52
+ const flexDirection = likertOrientation === _likertEntities.LIKERT_ORIENTATION.vertical ? 'column' : 'row';
53
+ return /*#__PURE__*/_react.default.createElement(Main, {
54
+ className: className
55
+ }, teacherInstructions && /*#__PURE__*/_react.default.createElement(StyledCollapsible, {
56
+ labels: {
57
+ hidden: 'Show Teacher Instructions',
58
+ visible: 'Hide Teacher Instructions'
59
+ }
60
+ }, /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
61
+ prompt: teacherInstructions
62
+ })), prompt && /*#__PURE__*/_react.default.createElement(Prompt, null, /*#__PURE__*/_react.default.createElement(_renderUi.PreviewPrompt, {
63
+ prompt: prompt
64
+ })), /*#__PURE__*/_react.default.createElement(ChoicesWrapper, {
65
+ style: {
66
+ flexDirection
67
+ }
68
+ }, choices.map((choice, index) => /*#__PURE__*/_react.default.createElement(_choiceInput.default, {
69
+ key: `choice-${index}`,
70
+ label: choice.label,
71
+ value: choice.value,
72
+ index: index,
73
+ disabled: disabled,
74
+ onChange: onSessionChange,
75
+ likertOrientation: likertOrientation,
76
+ checked: this.isSelected(choice.value)
77
+ }))));
78
+ }
79
+ }
80
+ exports.Likert = Likert;
81
+ (0, _defineProperty2.default)(Likert, "propTypes", {
82
+ className: _propTypes.default.string,
83
+ choices: _propTypes.default.array,
84
+ prompt: _propTypes.default.string,
85
+ teacherInstructions: _propTypes.default.string,
86
+ session: _propTypes.default.object,
87
+ disabled: _propTypes.default.bool.isRequired,
88
+ onSessionChange: _propTypes.default.func.isRequired,
89
+ likertOrientation: _propTypes.default.string.isRequired
90
+ });
91
+ Likert.defaultProps = {
92
+ session: {
93
+ value: []
94
+ }
95
+ };
96
+ var _default = exports.default = Likert;
97
+ //# sourceMappingURL=likert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"likert.js","names":["_react","_interopRequireDefault","require","_propTypes","_choiceInput","_styles","_renderUi","_likertEntities","Main","styled","color","text","backgroundColor","background","StyledCollapsible","Collapsible","theme","marginBottom","spacing","Prompt","verticalAlign","paddingBottom","ChoicesWrapper","display","Likert","React","Component","UNSAFE_componentWillReceiveProps","isSelected","value","props","session","render","disabled","choices","prompt","onSessionChange","teacherInstructions","className","likertOrientation","flexDirection","LIKERT_ORIENTATION","vertical","default","createElement","labels","hidden","visible","PreviewPrompt","style","map","choice","index","key","label","onChange","checked","exports","_defineProperty2","PropTypes","string","array","object","bool","isRequired","func","defaultProps","_default"],"sources":["../src/likert.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ChoiceInput from './choice-input';\nimport { styled } from '@mui/material/styles';\nimport { color, Collapsible, PreviewPrompt } from '@pie-lib/render-ui';\nimport { LIKERT_ORIENTATION } from './likertEntities';\n\nconst Main = styled('div')({\n color: color.text(),\n backgroundColor: color.background(),\n '& *': {\n '-webkit-font-smoothing': 'antialiased',\n },\n});\n\nconst StyledCollapsible = styled(Collapsible)(({ theme }) => ({\n marginBottom: theme.spacing(2),\n}));\n\nconst Prompt = styled('div')(({ theme }) => ({\n verticalAlign: 'middle',\n color: 'var(--pie-primary-text, var(--pie-text, #000000))',\n paddingBottom: theme.spacing(2),\n}));\n\nconst ChoicesWrapper = styled('div')({\n display: 'flex',\n});\n\nexport class Likert extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n choices: PropTypes.array,\n prompt: PropTypes.string,\n teacherInstructions: PropTypes.string,\n session: PropTypes.object,\n disabled: PropTypes.bool.isRequired,\n onSessionChange: PropTypes.func.isRequired,\n likertOrientation: PropTypes.string.isRequired,\n };\n\n UNSAFE_componentWillReceiveProps() {}\n\n isSelected(value) {\n return this.props.session && this.props.session.value === value;\n }\n\n render() {\n const {\n disabled,\n choices = [],\n prompt,\n onSessionChange,\n teacherInstructions,\n className,\n likertOrientation,\n } = this.props;\n\n const flexDirection = likertOrientation === LIKERT_ORIENTATION.vertical ? 'column' : 'row';\n\n return (\n <Main className={className}>\n {teacherInstructions && (\n <StyledCollapsible\n labels={{\n hidden: 'Show Teacher Instructions',\n visible: 'Hide Teacher Instructions',\n }}\n >\n <PreviewPrompt prompt={teacherInstructions} />\n </StyledCollapsible>\n )}\n\n {prompt && (\n <Prompt>\n <PreviewPrompt prompt={prompt} />\n </Prompt>\n )}\n\n <ChoicesWrapper style={{ flexDirection }}>\n {choices.map((choice, index) => (\n <ChoiceInput\n key={`choice-${index}`}\n label={choice.label}\n value={choice.value}\n index={index}\n disabled={disabled}\n onChange={onSessionChange}\n likertOrientation={likertOrientation}\n checked={this.isSelected(choice.value)}\n />\n ))}\n </ChoicesWrapper>\n </Main>\n );\n }\n}\n\nLikert.defaultProps = {\n session: {\n value: [],\n },\n};\n\nexport default Likert;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.LIKERT_ORIENTATION = void 0;
7
+ const LIKERT_ORIENTATION = exports.LIKERT_ORIENTATION = {
8
+ horizontal: 'horizontal',
9
+ vertical: 'vertical'
10
+ };
11
+ //# sourceMappingURL=likertEntities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"likertEntities.js","names":["LIKERT_ORIENTATION","exports","horizontal","vertical"],"sources":["../src/likertEntities.js"],"sourcesContent":["export const LIKERT_ORIENTATION = {\n horizontal: 'horizontal',\n vertical: 'vertical',\n};\n"],"mappings":";;;;;;AAAO,MAAMA,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG;EAChCE,UAAU,EAAE,YAAY;EACxBC,QAAQ,EAAE;AACZ,CAAC","ignoreList":[]}
package/lib/main.js ADDED
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var _renderUi = require("@pie-lib/render-ui");
13
+ var _likert = _interopRequireDefault(require("./likert"));
14
+ class Main extends _react.default.Component {
15
+ render() {
16
+ const {
17
+ model,
18
+ onSessionChange,
19
+ session
20
+ } = this.props;
21
+ const {
22
+ extraCSSRules
23
+ } = model;
24
+ return /*#__PURE__*/_react.default.createElement(_renderUi.PreviewLayout, {
25
+ extraCSSRules: extraCSSRules
26
+ }, /*#__PURE__*/_react.default.createElement(_likert.default, (0, _extends2.default)({}, model, {
27
+ session: session,
28
+ onSessionChange: onSessionChange
29
+ })));
30
+ }
31
+ }
32
+ (0, _defineProperty2.default)(Main, "propTypes", {
33
+ model: _propTypes.default.object,
34
+ session: _propTypes.default.object,
35
+ onSessionChange: _propTypes.default.func
36
+ });
37
+ (0, _defineProperty2.default)(Main, "defaultProps", {
38
+ model: {},
39
+ session: {}
40
+ });
41
+ var _default = exports.default = Main;
42
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","names":["_react","_interopRequireDefault","require","_propTypes","_renderUi","_likert","Main","React","Component","render","model","onSessionChange","session","props","extraCSSRules","default","createElement","PreviewLayout","_extends2","_defineProperty2","PropTypes","object","func","_default","exports"],"sources":["../src/main.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { PreviewLayout } from '@pie-lib/render-ui';\nimport Likert from './likert';\n\nclass Main extends React.Component {\n static propTypes = {\n model: PropTypes.object,\n session: PropTypes.object,\n onSessionChange: PropTypes.func,\n };\n\n static defaultProps = {\n model: {},\n session: {},\n };\n\n render() {\n const { model, onSessionChange, session } = this.props;\n const { extraCSSRules } = model;\n\n return (\n <PreviewLayout extraCSSRules={extraCSSRules}>\n <Likert {...model} session={session} onSessionChange={onSessionChange} />\n </PreviewLayout>\n );\n }\n}\n\nexport default Main;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAEA,MAAMI,IAAI,SAASC,cAAK,CAACC,SAAS,CAAC;EAYjCC,MAAMA,CAAA,EAAG;IACP,MAAM;MAAEC,KAAK;MAAEC,eAAe;MAAEC;IAAQ,CAAC,GAAG,IAAI,CAACC,KAAK;IACtD,MAAM;MAAEC;IAAc,CAAC,GAAGJ,KAAK;IAE/B,oBACEV,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAACZ,SAAA,CAAAa,aAAa;MAACH,aAAa,EAAEA;IAAc,gBAC1Cd,MAAA,CAAAe,OAAA,CAAAC,aAAA,CAACX,OAAA,CAAAU,OAAM,MAAAG,SAAA,CAAAH,OAAA,MAAKL,KAAK;MAAEE,OAAO,EAAEA,OAAQ;MAACD,eAAe,EAAEA;IAAgB,EAAE,CAC3D,CAAC;EAEpB;AACF;AAAC,IAAAQ,gBAAA,CAAAJ,OAAA,EAtBKT,IAAI,eACW;EACjBI,KAAK,EAAEU,kBAAS,CAACC,MAAM;EACvBT,OAAO,EAAEQ,kBAAS,CAACC,MAAM;EACzBV,eAAe,EAAES,kBAAS,CAACE;AAC7B,CAAC;AAAA,IAAAH,gBAAA,CAAAJ,OAAA,EALGT,IAAI,kBAOc;EACpBI,KAAK,EAAE,CAAC,CAAC;EACTE,OAAO,EAAE,CAAC;AACZ,CAAC;AAAA,IAAAW,QAAA,GAAAC,OAAA,CAAAT,OAAA,GAcYT,IAAI","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.updateSessionValue = updateSessionValue;
7
+ function updateSessionValue(session, data) {
8
+ session.value = session.value || [];
9
+ if (data.selected) {
10
+ session.value = [data.value];
11
+ } else {
12
+ session.value = [];
13
+ }
14
+ }
15
+ //# sourceMappingURL=session-updater.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-updater.js","names":["updateSessionValue","session","data","value","selected"],"sources":["../src/session-updater.js"],"sourcesContent":["export function updateSessionValue(session, data) {\n session.value = session.value || [];\n if (data.selected) {\n session.value = [data.value];\n } else {\n session.value = [];\n }\n}\n"],"mappings":";;;;;;AAAO,SAASA,kBAAkBA,CAACC,OAAO,EAAEC,IAAI,EAAE;EAChDD,OAAO,CAACE,KAAK,GAAGF,OAAO,CAACE,KAAK,IAAI,EAAE;EACnC,IAAID,IAAI,CAACE,QAAQ,EAAE;IACjBH,OAAO,CAACE,KAAK,GAAG,CAACD,IAAI,CAACC,KAAK,CAAC;EAC9B,CAAC,MAAM;IACLF,OAAO,CAACE,KAAK,GAAG,EAAE;EACpB;AACF","ignoreList":[]}
package/package.json CHANGED
@@ -1,68 +1,33 @@
1
1
  {
2
2
  "name": "@pie-element/likert",
3
- "version": "4.1.1-next.0",
3
+ "repository": "pie-framework/pie-elements",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "version": "4.1.1-next.29+863eb8c67",
4
8
  "description": "",
9
+ "scripts": {
10
+ "test": "echo \"Error: no test specified\" && exit 1"
11
+ },
5
12
  "dependencies": {
6
13
  "@emotion/react": "^11.14.0",
7
14
  "@emotion/style": "^0.8.0",
8
15
  "@mui/icons-material": "^7.3.4",
9
16
  "@mui/material": "^7.3.4",
10
- "@pie-lib/render-ui": "6.1.1-next.0",
17
+ "@pie-framework/pie-player-events": "^0.1.0",
18
+ "@pie-lib/math-rendering": "5.0.2",
19
+ "@pie-lib/render-ui": "6.1.2",
11
20
  "classnames": "^2.2.6",
12
21
  "debug": "^4.1.1",
13
22
  "lodash-es": "^4.17.23",
14
23
  "prop-types": "^15.8.1",
15
- "react-test-renderer": "18.2.0",
16
- "@pie-element/shared-configure-events": "0.1.0",
17
- "@pie-lib/editable-html-tip-tap": "2.1.2-next.0",
18
- "@pie-lib/config-ui": "13.0.4-next.0",
19
- "@pie-element/shared-player-events": "0.1.0",
20
- "@pie-element/shared-math-rendering-mathjax": "0.1.0"
21
- },
22
- "peerDependencies": {
23
- "react": "^18.0.0",
24
- "react-dom": "^18.0.0"
24
+ "react": "18.3.1",
25
+ "react-dom": "18.3.1",
26
+ "react-test-renderer": "18.2.0"
25
27
  },
26
- "exports": {
27
- ".": {
28
- "types": "./dist/index.d.ts",
29
- "default": "./dist/index.js"
30
- },
31
- "./delivery": {
32
- "types": "./dist/delivery/index.d.ts",
33
- "default": "./dist/delivery/index.js"
34
- },
35
- "./author": {
36
- "types": "./dist/author/index.d.ts",
37
- "default": "./dist/author/index.js"
38
- },
39
- "./controller": {
40
- "types": "./dist/controller/index.d.ts",
41
- "default": "./dist/controller/index.js"
42
- },
43
- "./controller.js": {
44
- "types": "./dist/controller/index.d.ts",
45
- "default": "./dist/controller/index.js"
46
- }
47
- },
48
- "type": "module",
49
- "main": "./dist/index.js",
50
- "types": "./dist/index.d.ts",
51
- "files": [
52
- "dist"
53
- ],
54
- "sideEffects": false,
55
- "devDependencies": {
56
- "vite": "^8.0.1",
57
- "typescript": "^5.9.3",
58
- "@vitejs/plugin-react": "^6.0.1",
59
- "@types/react": "^18.2.0",
60
- "@types/react-dom": "^18.2.0"
61
- },
62
- "scripts": {
63
- "build": "bun x vite build && bun x vite build --config vite.config.iife.ts && bun x tsc --emitDeclarationOnly",
64
- "dev": "bun x vite",
65
- "demo": "bun x vite --mode demo",
66
- "test": "bun x vitest run"
67
- }
28
+ "author": "",
29
+ "license": "ISC",
30
+ "gitHead": "863eb8c673c7375c2b6bb481c36e50c3a54e73d0",
31
+ "main": "lib/index.js",
32
+ "module": "src/index.js"
68
33
  }
package/readme.md ADDED
@@ -0,0 +1,55 @@
1
+ # @pie-element/likert
2
+
3
+
4
+ A [pie][pie]likert component.
5
+
6
+
7
+ ## Usage
8
+
9
+ To use this pie, you need to configure it within an Assessment Item. This means that you'll need to add it to the `index.html` and `config.json` files.
10
+
11
+ ```html
12
+ <likert-element pie-id="1"></likert-element>
13
+ ```
14
+
15
+ ```javascript
16
+ {
17
+ elements: {
18
+ 'likert': '@pie-element/likert-element@^0.0.1'
19
+ },
20
+ models: [
21
+ {
22
+ id : "1",
23
+ element: 'likert',
24
+ prompt : "How likely are you to report a problem?",
25
+ // more configuration...
26
+ }
27
+ ]
28
+ ```
29
+
30
+ ### Pie Demo
31
+ There is a demo in `docs/demo` that you can run to see an example of it's usage.
32
+
33
+ To preview it in that context you'll need the [pie][pie] tool.
34
+
35
+ ```shell
36
+ npm install -g pie
37
+ cd likert/docs/demo
38
+ pie serve #will build and serve the pie... then go to http://localhost:4000
39
+ ```
40
+
41
+ ## Test
42
+
43
+ ```shell
44
+ npm test # run client and controller tests
45
+ npm run client-test # run client tests
46
+ npm run controller-test # run controller tests
47
+ ```
48
+ ## Release
49
+
50
+ ```shell
51
+ gulp release
52
+ git checkout master
53
+ npm publish
54
+ ```
55
+ [pie]: http://npmjs.org/package/pie
@@ -1,13 +0,0 @@
1
- /**
2
- * @synced-from pie-elements/packages/likert/configure/src/choiceGenerator.js
3
- * @auto-generated
4
- *
5
- * This file is automatically synced from pie-elements and converted to TypeScript.
6
- * Manual edits will be overwritten on next sync.
7
- * To make changes, edit the upstream JavaScript file and run sync again.
8
- */
9
- declare const generateChoices: (likertScale: any, likertType: any) => {
10
- label: string;
11
- value: number;
12
- }[];
13
- export default generateChoices;