dce-reactkit 1.0.19 → 2.0.1

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 (203) hide show
  1. package/.eslintrc.js +95 -0
  2. package/lib/components/LoadingSpinner.d.ts +6 -0
  3. package/lib/components/LoadingSpinner.js +41 -0
  4. package/lib/components/LoadingSpinner.js.map +1 -0
  5. package/lib/components/Modal.d.ts +69 -0
  6. package/lib/components/Modal.js +315 -0
  7. package/lib/components/Modal.js.map +1 -0
  8. package/lib/helpers/abbreviate.d.ts +9 -0
  9. package/lib/helpers/abbreviate.js +21 -0
  10. package/lib/helpers/abbreviate.js.map +1 -0
  11. package/lib/helpers/avg.d.ts +8 -0
  12. package/lib/helpers/avg.js +24 -0
  13. package/lib/helpers/avg.js.map +1 -0
  14. package/lib/helpers/ceilToNumDecimals.d.ts +9 -0
  15. package/lib/helpers/ceilToNumDecimals.js +15 -0
  16. package/lib/helpers/ceilToNumDecimals.js.map +1 -0
  17. package/lib/helpers/floorToNumDecimals.d.ts +9 -0
  18. package/lib/helpers/floorToNumDecimals.js +15 -0
  19. package/lib/helpers/floorToNumDecimals.js.map +1 -0
  20. package/lib/helpers/forceNumIntoBounds.d.ts +10 -0
  21. package/lib/helpers/forceNumIntoBounds.js +15 -0
  22. package/lib/helpers/forceNumIntoBounds.js.map +1 -0
  23. package/lib/helpers/padDecimalZeros.d.ts +10 -0
  24. package/lib/helpers/padDecimalZeros.js +30 -0
  25. package/lib/helpers/padDecimalZeros.js.map +1 -0
  26. package/lib/helpers/padZerosLeft.d.ts +9 -0
  27. package/lib/helpers/padZerosLeft.js +21 -0
  28. package/lib/helpers/padZerosLeft.js.map +1 -0
  29. package/lib/helpers/roundToNumDecimals.d.ts +9 -0
  30. package/lib/helpers/roundToNumDecimals.js +15 -0
  31. package/lib/helpers/roundToNumDecimals.js.map +1 -0
  32. package/lib/helpers/sum.d.ts +8 -0
  33. package/lib/helpers/sum.js +15 -0
  34. package/lib/helpers/sum.js.map +1 -0
  35. package/lib/helpers/waitMs.d.ts +7 -0
  36. package/lib/helpers/waitMs.js +55 -0
  37. package/lib/helpers/waitMs.js.map +1 -0
  38. package/lib/types/Variant.d.ts +15 -0
  39. package/lib/types/Variant.js +19 -0
  40. package/lib/types/Variant.js.map +1 -0
  41. package/package.json +21 -39
  42. package/src/components/LoadingSpinner.tsx +105 -0
  43. package/src/components/Modal.tsx +447 -0
  44. package/src/helpers/abbreviate.tsx +23 -0
  45. package/src/helpers/avg.tsx +22 -0
  46. package/src/helpers/ceilToNumDecimals.tsx +13 -0
  47. package/src/helpers/floorToNumDecimals.tsx +13 -0
  48. package/src/helpers/forceNumIntoBounds.tsx +19 -0
  49. package/src/helpers/padDecimalZeros.tsx +32 -0
  50. package/src/helpers/padZerosLeft.tsx +21 -0
  51. package/src/helpers/roundToNumDecimals.tsx +13 -0
  52. package/src/helpers/sum.tsx +16 -0
  53. package/src/helpers/waitMs.tsx +12 -0
  54. package/src/types/Variant.tsx +16 -0
  55. package/tsconfig.json +24 -0
  56. package/index.js +0 -1
  57. package/lib/Bar.js +0 -169
  58. package/lib/Donut.js +0 -145
  59. package/lib/DownloadButton.js +0 -81
  60. package/lib/Histogram.js +0 -193
  61. package/lib/Scatter.js +0 -162
  62. package/lib/StackedBar.js +0 -243
  63. package/lib/common/chart/Holder/index.js +0 -182
  64. package/lib/common/chart/Holder/style.css +0 -41
  65. package/lib/common/chart/colors.js +0 -12
  66. package/lib/common/csvToString.js +0 -23
  67. package/lib/common/isFloat.js +0 -14
  68. package/lib/common/isInteger.js +0 -24
  69. package/lib/common/math.js +0 -21
  70. package/lib/common/validators.js +0 -18
  71. package/lib/glyph/Adjust.js +0 -13
  72. package/lib/glyph/Angle.js +0 -44
  73. package/lib/glyph/Archive.js +0 -13
  74. package/lib/glyph/Arrow.js +0 -49
  75. package/lib/glyph/ArrowsHorizontal.js +0 -13
  76. package/lib/glyph/ArrowsVertical.js +0 -13
  77. package/lib/glyph/Award.js +0 -13
  78. package/lib/glyph/Ban.js +0 -13
  79. package/lib/glyph/Barcode.js +0 -13
  80. package/lib/glyph/Bed.js +0 -13
  81. package/lib/glyph/Bell.js +0 -35
  82. package/lib/glyph/Bolt.js +0 -13
  83. package/lib/glyph/Bookmark.js +0 -37
  84. package/lib/glyph/Bug.js +0 -13
  85. package/lib/glyph/Calendar.js +0 -13
  86. package/lib/glyph/Check.js +0 -36
  87. package/lib/glyph/Checkbox.js +0 -40
  88. package/lib/glyph/Chevron.js +0 -63
  89. package/lib/glyph/Circle.js +0 -15
  90. package/lib/glyph/Cog.js +0 -13
  91. package/lib/glyph/DoubleAngle.js +0 -45
  92. package/lib/glyph/Download.js +0 -13
  93. package/lib/glyph/Ellipsis.js +0 -36
  94. package/lib/glyph/Envelope.js +0 -13
  95. package/lib/glyph/File.js +0 -37
  96. package/lib/glyph/IdCard.js +0 -13
  97. package/lib/glyph/Menu.js +0 -13
  98. package/lib/glyph/Minus.js +0 -13
  99. package/lib/glyph/Move.js +0 -13
  100. package/lib/glyph/Plus.js +0 -13
  101. package/lib/glyph/Square.js +0 -47
  102. package/lib/glyph/Teacher.js +0 -13
  103. package/lib/glyph/TextAlign.js +0 -53
  104. package/lib/glyph/Times.js +0 -36
  105. package/lib/glyph/WarningTriangle.js +0 -13
  106. package/lib/index.js +0 -1
  107. package/src-old/common/csvToString.js +0 -5
  108. package/src-old/common/isFloat.js +0 -3
  109. package/src-old/common/isInteger.js +0 -14
  110. package/src-old/common/math.js +0 -16
  111. package/src-old/common/validators.js +0 -14
  112. package/src-old/components/Alert.js +0 -79
  113. package/src-old/components/Button.js +0 -64
  114. package/src-old/components/CSV/autoMatch.js +0 -174
  115. package/src-old/components/CSV/getNumCols.js +0 -15
  116. package/src-old/components/CSV/index.js +0 -743
  117. package/src-old/components/Card.js +0 -64
  118. package/src-old/components/Chart/Bar.js +0 -169
  119. package/src-old/components/Chart/Donut.js +0 -160
  120. package/src-old/components/Chart/Histogram.js +0 -189
  121. package/src-old/components/Chart/Scatter.js +0 -162
  122. package/src-old/components/Chart/colors.js +0 -20
  123. package/src-old/components/Checkbox/index.js +0 -106
  124. package/src-old/components/Checkbox/style.css +0 -11
  125. package/src-old/components/DatePicker.js +0 -59
  126. package/src-old/components/DownloadButton.js +0 -72
  127. package/src-old/components/Dropdown.js +0 -120
  128. package/src-old/components/Layout/LeftAddon.js +0 -63
  129. package/src-old/components/Layout/RightAddon.js +0 -64
  130. package/src-old/components/Layout/TwoCol.js +0 -67
  131. package/src-old/components/Modal.js +0 -161
  132. package/src-old/components/PhotoRoster.js +0 -152
  133. package/src-old/components/Pills.js +0 -117
  134. package/src-old/components/Radio.js +0 -94
  135. package/src-old/components/Splash/Error.js +0 -62
  136. package/src-old/components/Splash/Load/index.js +0 -32
  137. package/src-old/components/Splash/Load/style.css +0 -51
  138. package/src-old/components/Stat/General.js +0 -252
  139. package/src-old/components/Stat/helpers/calcAverage.js +0 -20
  140. package/src-old/components/Stat/helpers/calcExtremes.js +0 -27
  141. package/src-old/components/Stat/helpers/calcMedian.js +0 -32
  142. package/src-old/components/Stat/helpers/calcStdDev.js +0 -30
  143. package/src-old/components/Stat/helpers/calcSum.js +0 -8
  144. package/src-old/components/UserProfile/index.js +0 -151
  145. package/src-old/components/UserProfile/style.css +0 -33
  146. package/src-old/components/Well.js +0 -28
  147. package/src-old/components/Wizard/Question/CSV.js +0 -307
  148. package/src-old/components/Wizard/Question/Chooser/Assignment.js +0 -108
  149. package/src-old/components/Wizard/Question/Chooser/Course.js +0 -214
  150. package/src-old/components/Wizard/Question/Chooser/helpers/divideIntoSections.js +0 -16
  151. package/src-old/components/Wizard/Question/Chooser/helpers/genGetItemsPromise.js +0 -20
  152. package/src-old/components/Wizard/Question/Chooser/helpers/preprocessSections.js +0 -36
  153. package/src-old/components/Wizard/Question/Chooser/index.js +0 -306
  154. package/src-old/components/Wizard/Question/Form/Field/CheckableItem.js +0 -155
  155. package/src-old/components/Wizard/Question/Form/Field/Input.js +0 -149
  156. package/src-old/components/Wizard/Question/Form/Field/NumberItem.js +0 -374
  157. package/src-old/components/Wizard/Question/Form/Field/index.js +0 -34
  158. package/src-old/components/Wizard/Question/Form/Field/readme.md +0 -7
  159. package/src-old/components/Wizard/Question/Form/index.js +0 -175
  160. package/src-old/components/Wizard/Question/Form/style.css +0 -3
  161. package/src-old/components/Wizard/Question/OneButton.js +0 -80
  162. package/src-old/components/Wizard/Question/index.js +0 -46
  163. package/src-old/components/Wizard/Question/readme.md +0 -10
  164. package/src-old/components/Wizard/QuestionGroup/AnswerAll.js +0 -126
  165. package/src-old/components/Wizard/QuestionGroup/AnswerAny.js +0 -60
  166. package/src-old/components/Wizard/index.js +0 -233
  167. package/src-old/components/Wizard/style.css +0 -21
  168. package/src-old/glyphs/Adjust.js +0 -13
  169. package/src-old/glyphs/Angle.js +0 -57
  170. package/src-old/glyphs/Archive.js +0 -13
  171. package/src-old/glyphs/Arrow.js +0 -85
  172. package/src-old/glyphs/ArrowsHorizontal.js +0 -13
  173. package/src-old/glyphs/ArrowsVertical.js +0 -13
  174. package/src-old/glyphs/Award.js +0 -13
  175. package/src-old/glyphs/Ban.js +0 -13
  176. package/src-old/glyphs/Barcode.js +0 -13
  177. package/src-old/glyphs/Bed.js +0 -13
  178. package/src-old/glyphs/Bell.js +0 -34
  179. package/src-old/glyphs/Bolt.js +0 -13
  180. package/src-old/glyphs/Bookmark.js +0 -36
  181. package/src-old/glyphs/Bug.js +0 -13
  182. package/src-old/glyphs/Calendar.js +0 -13
  183. package/src-old/glyphs/Check.js +0 -34
  184. package/src-old/glyphs/Checkbox.js +0 -42
  185. package/src-old/glyphs/Chevron.js +0 -88
  186. package/src-old/glyphs/Circle.js +0 -16
  187. package/src-old/glyphs/Cog.js +0 -13
  188. package/src-old/glyphs/DoubleAngle.js +0 -58
  189. package/src-old/glyphs/Download.js +0 -13
  190. package/src-old/glyphs/Ellipsis.js +0 -35
  191. package/src-old/glyphs/Envelope.js +0 -13
  192. package/src-old/glyphs/File.js +0 -40
  193. package/src-old/glyphs/IdCard.js +0 -13
  194. package/src-old/glyphs/Menu.js +0 -13
  195. package/src-old/glyphs/Minus.js +0 -13
  196. package/src-old/glyphs/Move.js +0 -13
  197. package/src-old/glyphs/Plus.js +0 -13
  198. package/src-old/glyphs/Square.js +0 -48
  199. package/src-old/glyphs/Teacher.js +0 -13
  200. package/src-old/glyphs/TextAlign.js +0 -58
  201. package/src-old/glyphs/Times.js +0 -34
  202. package/src-old/glyphs/WarningTriangle.js +0 -13
  203. package/src-old/index.js +0 -1
@@ -1,36 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
4
-
5
- import React, { Component } from 'react';
6
- import PropTypes from 'prop-types';
7
-
8
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
9
- import { faEllipsisH, faEllipsisV } from '@fortawesome/free-solid-svg-icons';
10
-
11
- class Adjust extends Component {
12
- render() {
13
- // Deconstruct props
14
- const _props = this.props,
15
- {
16
- vertical
17
- } = _props,
18
- props = _objectWithoutProperties(_props, ['vertical']);
19
-
20
- if (vertical) {
21
- return React.createElement(FontAwesomeIcon, _extends({ icon: faEllipsisV }, props));
22
- }
23
- return React.createElement(FontAwesomeIcon, _extends({ icon: faEllipsisH }, props));
24
- }
25
- }
26
-
27
- Adjust.propTypes = {
28
- // If true, ellipsis is vertical
29
- vertical: PropTypes.bool
30
- };
31
-
32
- Adjust.defaultProps = {
33
- vertical: false
34
- };
35
-
36
- export default Adjust;
@@ -1,13 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
- import { faEnvelope } from '@fortawesome/free-solid-svg-icons';
6
-
7
- class Envelope extends Component {
8
- render() {
9
- return React.createElement(FontAwesomeIcon, _extends({ icon: faEnvelope }, this.props));
10
- }
11
- }
12
-
13
- export default Envelope;
package/lib/glyph/File.js DELETED
@@ -1,37 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import PropTypes from 'prop-types';
5
-
6
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
7
- import { faFile, faFileCsv } from '@fortawesome/free-solid-svg-icons';
8
-
9
- class File extends Component {
10
- render() {
11
- const { type } = this.props;
12
-
13
- // Choose an icon
14
- let icon;
15
- switch (type) {
16
- case 'csv':
17
- icon = faFileCsv;
18
- break;
19
- default:
20
- icon = faFile;
21
- break;
22
- }
23
-
24
- return React.createElement(FontAwesomeIcon, _extends({ icon: icon }, this.props));
25
- }
26
- }
27
-
28
- File.propTypes = {
29
- // Supported file types: 'csv'
30
- type: PropTypes.string
31
- };
32
-
33
- File.defaultProps = {
34
- type: null
35
- };
36
-
37
- export default File;
@@ -1,13 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
- import { faIdCard } from '@fortawesome/free-solid-svg-icons';
6
-
7
- class IdCard extends Component {
8
- render() {
9
- return React.createElement(FontAwesomeIcon, _extends({ icon: faIdCard }, this.props));
10
- }
11
- }
12
-
13
- export default IdCard;
package/lib/glyph/Menu.js DELETED
@@ -1,13 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
- import { faBars } from '@fortawesome/free-solid-svg-icons';
6
-
7
- class Menu extends Component {
8
- render() {
9
- return React.createElement(FontAwesomeIcon, _extends({ icon: faBars }, this.props));
10
- }
11
- }
12
-
13
- export default Menu;
@@ -1,13 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
- import { faMinus } from '@fortawesome/free-solid-svg-icons';
6
-
7
- class Minus extends Component {
8
- render() {
9
- return React.createElement(FontAwesomeIcon, _extends({ icon: faMinus }, this.props));
10
- }
11
- }
12
-
13
- export default Minus;
package/lib/glyph/Move.js DELETED
@@ -1,13 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
- import { faArrowsAlt } from '@fortawesome/free-solid-svg-icons';
6
-
7
- class Move extends Component {
8
- render() {
9
- return React.createElement(FontAwesomeIcon, _extends({ icon: faArrowsAlt }, this.props));
10
- }
11
- }
12
-
13
- export default Move;
package/lib/glyph/Plus.js DELETED
@@ -1,13 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
- import { faPlus } from '@fortawesome/free-solid-svg-icons';
6
-
7
- class Plus extends Component {
8
- render() {
9
- return React.createElement(FontAwesomeIcon, _extends({ icon: faPlus }, this.props));
10
- }
11
- }
12
-
13
- export default Plus;
@@ -1,47 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
4
-
5
- import React, { Component } from 'react';
6
- import PropTypes from 'prop-types';
7
-
8
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
9
- import { faSquare as faSquareFilled } from '@fortawesome/free-solid-svg-icons';
10
- import { faSquare } from '@fortawesome/free-regular-svg-icons';
11
-
12
- class Square extends Component {
13
- render() {
14
- // Deconstruct props
15
- const _props = this.props,
16
- {
17
- grow,
18
- filled
19
- } = _props,
20
- props = _objectWithoutProperties(_props, ['grow', 'filled']);
21
-
22
- if (filled) {
23
- return React.createElement(FontAwesomeIcon, _extends({
24
- icon: faSquareFilled,
25
- transform: grow ? `grow-${grow}` : undefined
26
- }, props));
27
- }
28
- return React.createElement(FontAwesomeIcon, _extends({
29
- icon: faSquare,
30
- transform: grow ? `grow-${grow}` : undefined
31
- }, props));
32
- }
33
- }
34
-
35
- Square.propTypes = {
36
- // If true, the square is filled
37
- filled: PropTypes.bool,
38
- // Factor by which to grow the check mark
39
- grow: PropTypes.number
40
- };
41
-
42
- Square.defaultProps = {
43
- filled: false,
44
- grow: null
45
- };
46
-
47
- export default Square;
@@ -1,13 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
- import { faChalkboardTeacher } from '@fortawesome/free-solid-svg-icons';
6
-
7
- class Teacher extends Component {
8
- render() {
9
- return React.createElement(FontAwesomeIcon, _extends({ icon: faChalkboardTeacher }, this.props));
10
- }
11
- }
12
-
13
- export default Teacher;
@@ -1,53 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import PropTypes from 'prop-types';
5
-
6
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
7
- import { faAlignCenter, faAlignLeft, faAlignRight, faAlignJustify } from '@fortawesome/free-solid-svg-icons';
8
-
9
- class TextAlign extends Component {
10
- render() {
11
- // Deconstruct props
12
- const {
13
- left,
14
- right,
15
- justify,
16
- center
17
- } = this.props;
18
-
19
- let icon;
20
- if (left) {
21
- icon = faAlignLeft;
22
- } else if (right) {
23
- icon = faAlignRight;
24
- } else if (justify) {
25
- icon = faAlignJustify;
26
- } else if (center) {
27
- icon = faAlignCenter;
28
- } else {
29
- icon = faAlignLeft;
30
- }
31
- return React.createElement(FontAwesomeIcon, _extends({ icon: icon }, this.props));
32
- }
33
- }
34
-
35
- TextAlign.propTypes = {
36
- // If true, left align is shown
37
- left: PropTypes.bool,
38
- // If true, right align is shown
39
- right: PropTypes.bool,
40
- // If true, justify alignment is shown
41
- justify: PropTypes.bool,
42
- // If true, center align is shown
43
- center: PropTypes.bool
44
- };
45
-
46
- TextAlign.defaultProps = {
47
- left: null,
48
- right: null,
49
- justify: null,
50
- center: null
51
- };
52
-
53
- export default TextAlign;
@@ -1,36 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
4
-
5
- import React, { Component } from 'react';
6
- import PropTypes from 'prop-types';
7
-
8
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
9
- import { faTimes } from '@fortawesome/free-solid-svg-icons';
10
-
11
- class Times extends Component {
12
- render() {
13
- // Deconstruct props
14
- const _props = this.props,
15
- {
16
- grow
17
- } = _props,
18
- props = _objectWithoutProperties(_props, ['grow']);
19
-
20
- return React.createElement(FontAwesomeIcon, _extends({
21
- icon: faTimes,
22
- transform: grow ? `grow-${grow}` : undefined
23
- }, props));
24
- }
25
- }
26
-
27
- Times.propTypes = {
28
- // Factor by which to grow the check mark
29
- grow: PropTypes.number
30
- };
31
-
32
- Times.defaultProps = {
33
- grow: null
34
- };
35
-
36
- export default Times;
@@ -1,13 +0,0 @@
1
- var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
-
3
- import React, { Component } from 'react';
4
- import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
- import { faExclamationTriangle } from '@fortawesome/free-solid-svg-icons';
6
-
7
- class WarningTriangle extends Component {
8
- render() {
9
- return React.createElement(FontAwesomeIcon, _extends({ icon: faExclamationTriangle }, this.props));
10
- }
11
- }
12
-
13
- export default WarningTriangle;
package/lib/index.js DELETED
@@ -1 +0,0 @@
1
- throw new Error('Do not import dce-reactkit directly. Import components individually. View the docs for more information: https://harvard-edtech.github.io/dce-reactkit/');
@@ -1,5 +0,0 @@
1
- import CSVParser from 'papaparse';
2
-
3
- export default (csv) => {
4
- return CSVParser.unparse(csv);
5
- };
@@ -1,3 +0,0 @@
1
- export default (str) => {
2
- return String(str).match(/^-?\d*(\.\d+)?$/);
3
- };
@@ -1,14 +0,0 @@
1
- import isFloat from './isFloat';
2
-
3
- export default (str) => {
4
- const matchSucceeded = String(str).match(/^-{0,1}\d+$/);
5
- if (matchSucceeded) {
6
- return true;
7
- }
8
- // If no match, check if string represents an integer with decimals but all
9
- // of which are zeroes
10
- if (isFloat(str)) {
11
- return (parseFloat(str) % 1) === 0;
12
- }
13
- return false;
14
- };
@@ -1,16 +0,0 @@
1
- import _ from 'lodash-arithmetic';
2
-
3
- export default {
4
- add: (a, b) => {
5
- return _.add(a, b);
6
- },
7
- sub: (a, b) => {
8
- return _.subtract(a, b);
9
- },
10
- mult: (a, b) => {
11
- return _.multiply(a, b);
12
- },
13
- div: (a, b) => {
14
- return _.divide(a, b);
15
- },
16
- };
@@ -1,14 +0,0 @@
1
- import Validator from 'validator';
2
-
3
- export default {
4
- email: Validator.isEmail,
5
- eightDigit: (datum) => {
6
- if (!Number.isNaN(parseFloat(datum))) {
7
- return false;
8
- }
9
- return String(datum).length === 8;
10
- },
11
- number: (datum) => {
12
- return !Number.isNaN(parseFloat(datum));
13
- },
14
- };
@@ -1,79 +0,0 @@
1
- import React, { Component } from 'react';
2
- import PropTypes from 'prop-types';
3
-
4
- // Import bootstrap components
5
- import { Alert as BootstrapAlert } from 'reactstrap';
6
- // Import bootstrap stylesheet
7
- import 'bootstrap/dist/css/bootstrap.min.css';
8
-
9
- class Alert extends Component {
10
- constructor(props) {
11
- super(props);
12
-
13
- this.state = {
14
- visible: true,
15
- };
16
- this.closeClicked = this.closeClicked.bind(this);
17
- }
18
-
19
- closeClicked() {
20
- this.setState({
21
- visible: false,
22
- });
23
-
24
- // Call parent's onDismiss function
25
- const { onDismiss } = this.props;
26
- if (onDismiss) {
27
- onDismiss();
28
- }
29
- }
30
-
31
- render() {
32
- // Extract properties
33
- const {
34
- dismissible,
35
- onDismiss,
36
- centered,
37
- children,
38
- ...props
39
- } = this.props;
40
-
41
- // Deconstruct state
42
- const { visible } = this.state;
43
-
44
- return (
45
- <BootstrapAlert
46
- isOpen={visible}
47
- toggle={dismissible ? this.closeClicked : undefined}
48
- style={{
49
- textAlign: (centered ? 'center' : 'left'),
50
- }}
51
- {...props}
52
- >
53
- {children}
54
- </BootstrapAlert>
55
- );
56
- }
57
- }
58
-
59
- Alert.propTypes = {
60
- /* If true, the alert is dismissible */
61
- dismissible: PropTypes.bool,
62
- /* Handler to call when the alert is dismissed (only valid if dismissible) */
63
- onDismiss: PropTypes.func,
64
- /* If true, text is centered in the alert */
65
- centered: PropTypes.bool,
66
- /* Children (body) of the alert */
67
- children: PropTypes.oneOfType([
68
- PropTypes.arrayOf(PropTypes.node),
69
- PropTypes.node,
70
- ]).isRequired,
71
- };
72
-
73
- Alert.defaultProps = {
74
- dismissible: false,
75
- onDismiss: null,
76
- centered: false,
77
- };
78
-
79
- export default Alert;
@@ -1,64 +0,0 @@
1
- import React, { Component } from 'react';
2
- import PropTypes from 'prop-types';
3
-
4
- // Import bootstrap components
5
- import { Button as BootstrapButton } from 'reactstrap';
6
- // Import bootstrap stylesheet
7
- import 'bootstrap/dist/css/bootstrap.min.css';
8
-
9
- /* Allowed colors:
10
- * - primary
11
- * - secondary
12
- * - success
13
- * - info
14
- * - warning
15
- * - danger
16
- * - link
17
- *
18
- * To disable, include "disabled" tag
19
- * To use outline-style of button, include "outline" tag
20
- * To use block-style of button, include "block" tag
21
- *
22
- * Sizes:
23
- * - lg
24
- * - sm
25
- * - normal (used by default)
26
- */
27
-
28
- class Button extends Component {
29
- render() {
30
- // Extract properties
31
- const {
32
- text,
33
- children,
34
- ...props
35
- } = this.props;
36
-
37
- // Set up button style
38
- return (
39
- <BootstrapButton {...props}>
40
- {text || children || 'Choose'}
41
- </BootstrapButton>
42
- );
43
- }
44
- }
45
-
46
- Button.propTypes = {
47
- /* Label text of the button */
48
- text: PropTypes.string,
49
- /* Body of the button (only valid if text is not included) */
50
- children: PropTypes.oneOfType([
51
- PropTypes.arrayOf(PropTypes.node),
52
- PropTypes.node,
53
- ]),
54
- /* Also, all Bootstrap button props may be included:
55
- * https://reactstrap.github.io/components/buttons/
56
- */
57
- };
58
-
59
- Button.defaultProps = {
60
- text: null,
61
- children: null,
62
- };
63
-
64
- export default Button;