@pie-element/complex-rubric 2.2.0-next.1 → 2.2.1-next.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +5 -0
- package/configure/lib/defaults.js +2 -2
- package/configure/lib/defaults.js.map +1 -1
- package/configure/lib/index.js +1 -1
- package/configure/lib/main.js +1 -1
- package/configure/node_modules/@pie-lib/render-ui/CHANGELOG.json +937 -0
- package/configure/node_modules/@pie-lib/render-ui/CHANGELOG.md +848 -0
- package/configure/node_modules/@pie-lib/render-ui/LICENSE.md +5 -0
- package/configure/node_modules/@pie-lib/render-ui/README.md +33 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/collapsible/index.js +134 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/collapsible/index.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/color.js +157 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/color.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/feedback.js +151 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/feedback.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/has-text.js +24 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/has-text.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/html-and-math.js +90 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/html-and-math.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/index.js +104 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/index.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/input-container.js +60 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/input-container.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/preview-layout.js +133 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/preview-layout.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/preview-prompt.js +206 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/preview-prompt.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/purpose.js +28 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/purpose.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/readable.js +28 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/readable.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/response-indicators.js +151 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/response-indicators.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/withUndoReset.js +181 -0
- package/configure/node_modules/@pie-lib/render-ui/lib/withUndoReset.js.map +1 -0
- package/configure/node_modules/@pie-lib/render-ui/package.json +30 -0
- package/configure/node_modules/@pie-lib/render-ui/src/collapsible/index.jsx +63 -0
- package/configure/node_modules/@pie-lib/render-ui/src/color.js +55 -0
- package/configure/node_modules/@pie-lib/render-ui/src/feedback.jsx +100 -0
- package/configure/node_modules/@pie-lib/render-ui/src/has-text.js +14 -0
- package/configure/node_modules/@pie-lib/render-ui/src/html-and-math.js +34 -0
- package/configure/node_modules/@pie-lib/render-ui/src/index.js +27 -0
- package/configure/node_modules/@pie-lib/render-ui/src/input-container.jsx +41 -0
- package/configure/node_modules/@pie-lib/render-ui/src/preview-layout.jsx +84 -0
- package/configure/node_modules/@pie-lib/render-ui/src/preview-prompt.jsx +130 -0
- package/configure/node_modules/@pie-lib/render-ui/src/purpose.jsx +17 -0
- package/configure/node_modules/@pie-lib/render-ui/src/readable.jsx +19 -0
- package/configure/node_modules/@pie-lib/render-ui/src/response-indicators.jsx +89 -0
- package/configure/node_modules/@pie-lib/render-ui/src/withUndoReset.jsx +116 -0
- package/configure/src/defaults.js +1 -1
- package/controller/lib/defaults.js +2 -2
- package/controller/lib/defaults.js.map +1 -1
- package/controller/lib/index.js +1 -1
- package/controller/lib/utils.js +1 -1
- package/controller/src/defaults.js +1 -1
- package/docs/demo/generate.js +1 -1
- package/lib/index.js +1 -1
- package/lib/print.js +1 -1
- package/module/configure.js +232989 -0
- package/module/controller.js +375 -0
- package/module/demo.js +1 -1
- package/module/element.js +57005 -34984
- package/module/manifest.json +1 -1
- package/module/print-demo.js +1 -1
- package/module/print.js +57005 -34984
- package/package.json +4 -4
- package/configure/lib/__tests__/index.test.js +0 -57
- package/configure/lib/__tests__/main.test.js +0 -138
- package/controller/lib/__tests__/index.test.js +0 -134
- package/docs/demo/pie.manifest.json +0 -11
- package/lib/__tests__/index.test.js +0 -127
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as indicators from './response-indicators';
|
|
2
|
+
import Feedback from './feedback';
|
|
3
|
+
import Collapsible from './collapsible';
|
|
4
|
+
import withUndoReset from './withUndoReset';
|
|
5
|
+
import PreviewLayout from './preview-layout';
|
|
6
|
+
import HtmlAndMath from './html-and-math';
|
|
7
|
+
import InputContainer from './input-container';
|
|
8
|
+
import PreviewPrompt from './preview-prompt';
|
|
9
|
+
import Readable from './readable';
|
|
10
|
+
import Purpose from './purpose';
|
|
11
|
+
import * as color from './color';
|
|
12
|
+
import { hasText } from './has-text';
|
|
13
|
+
|
|
14
|
+
export {
|
|
15
|
+
HtmlAndMath,
|
|
16
|
+
indicators,
|
|
17
|
+
withUndoReset,
|
|
18
|
+
Feedback,
|
|
19
|
+
PreviewLayout,
|
|
20
|
+
Collapsible,
|
|
21
|
+
InputContainer,
|
|
22
|
+
PreviewPrompt,
|
|
23
|
+
color,
|
|
24
|
+
Readable,
|
|
25
|
+
Purpose,
|
|
26
|
+
hasText,
|
|
27
|
+
};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import InputLabel from '@material-ui/core/InputLabel';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import classNames from 'classnames';
|
|
5
|
+
import { withStyles } from '@material-ui/core/styles';
|
|
6
|
+
import FormControl from '@material-ui/core/FormControl';
|
|
7
|
+
|
|
8
|
+
const RawInputContainer = (props) => {
|
|
9
|
+
const { label, className, children, classes } = props;
|
|
10
|
+
const names = classNames(classes.formControl, className);
|
|
11
|
+
|
|
12
|
+
return (
|
|
13
|
+
<FormControl className={names}>
|
|
14
|
+
<InputLabel className={classes.label} shrink={true}>
|
|
15
|
+
{label}
|
|
16
|
+
</InputLabel>
|
|
17
|
+
{children}
|
|
18
|
+
</FormControl>
|
|
19
|
+
);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
RawInputContainer.propTypes = {
|
|
23
|
+
label: PropTypes.oneOfType([PropTypes.string, PropTypes.object]).isRequired,
|
|
24
|
+
className: PropTypes.string,
|
|
25
|
+
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,
|
|
26
|
+
classes: PropTypes.object.isRequired,
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export default withStyles((theme) => ({
|
|
30
|
+
formControl: {
|
|
31
|
+
marginLeft: 0,
|
|
32
|
+
marginRight: 0,
|
|
33
|
+
paddingBottom: theme.spacing.unit,
|
|
34
|
+
flex: '1 0 auto',
|
|
35
|
+
minWidth: theme.spacing.unit * 4,
|
|
36
|
+
},
|
|
37
|
+
label: {
|
|
38
|
+
fontSize: 'inherit',
|
|
39
|
+
whiteSpace: 'nowrap',
|
|
40
|
+
},
|
|
41
|
+
}))(RawInputContainer);
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { withStyles, createMuiTheme, MuiThemeProvider } from '@material-ui/core/styles';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
|
|
5
|
+
class PreviewLayout extends React.Component {
|
|
6
|
+
static propTypes = {
|
|
7
|
+
ariaLabel: PropTypes.string,
|
|
8
|
+
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,
|
|
9
|
+
classes: PropTypes.object,
|
|
10
|
+
role: PropTypes.string,
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
render() {
|
|
14
|
+
const { children, classes, ariaLabel, role } = this.props;
|
|
15
|
+
const accessibility = ariaLabel ? { 'aria-label': ariaLabel, role } : {};
|
|
16
|
+
|
|
17
|
+
return (
|
|
18
|
+
<div className={classes.container} {...accessibility}>
|
|
19
|
+
{children}
|
|
20
|
+
</div>
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const styles = () => ({
|
|
26
|
+
container: {
|
|
27
|
+
display: 'flex',
|
|
28
|
+
flexDirection: 'column',
|
|
29
|
+
position: 'relative',
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
const theme = createMuiTheme({
|
|
34
|
+
typography: {
|
|
35
|
+
useNextVariants: true,
|
|
36
|
+
},
|
|
37
|
+
palette: {
|
|
38
|
+
action: {
|
|
39
|
+
disabled: 'rgba(0, 0, 0, 0.54);',
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
overrides: {
|
|
43
|
+
MuiRadio: {
|
|
44
|
+
root: {
|
|
45
|
+
'&$checked': {
|
|
46
|
+
color: '#3f51b5 !important',
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
MuiCheckbox: {
|
|
51
|
+
root: {
|
|
52
|
+
'&$checked': {
|
|
53
|
+
color: '#3f51b5 !important',
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
MuiTabs: {
|
|
58
|
+
root: {
|
|
59
|
+
borderBottom: '1px solid #eee',
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
MuiSwitch: {
|
|
63
|
+
root: {
|
|
64
|
+
'&$checked': {
|
|
65
|
+
color: '#3f51b5 !important',
|
|
66
|
+
'& + $bar': {
|
|
67
|
+
backgroundColor: '#3f51b5 !important',
|
|
68
|
+
opacity: 0.5,
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
const Styled = withStyles(styles)(PreviewLayout);
|
|
77
|
+
|
|
78
|
+
const RootElem = (props) => (
|
|
79
|
+
<MuiThemeProvider theme={theme}>
|
|
80
|
+
<Styled {...props} />
|
|
81
|
+
</MuiThemeProvider>
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
export default RootElem;
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import React, { Component } from 'react';
|
|
2
|
+
import { withStyles } from '@material-ui/core/styles';
|
|
3
|
+
import PropTypes from 'prop-types';
|
|
4
|
+
import * as color from './color';
|
|
5
|
+
|
|
6
|
+
//Used these below to replace \\embed{newLine} with \\newline from prompt which will get parsed in MathJax
|
|
7
|
+
const NEWLINE_BLOCK_REGEX = /\\embed\{newLine\}\[\]/g;
|
|
8
|
+
const NEWLINE_LATEX = '\\newline ';
|
|
9
|
+
|
|
10
|
+
export class PreviewPrompt extends Component {
|
|
11
|
+
static propTypes = {
|
|
12
|
+
classes: PropTypes.object,
|
|
13
|
+
prompt: PropTypes.string,
|
|
14
|
+
tagName: PropTypes.string,
|
|
15
|
+
className: PropTypes.string,
|
|
16
|
+
onClick: PropTypes.func,
|
|
17
|
+
defaultClassName: PropTypes.string,
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
static defaultProps = {
|
|
21
|
+
onClick: () => {},
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
parsedText = (text) => {
|
|
25
|
+
// fix imported audio content for Safari PD-1419
|
|
26
|
+
const div = document.createElement('div');
|
|
27
|
+
div.innerHTML = text;
|
|
28
|
+
|
|
29
|
+
const audio = div.querySelector('audio');
|
|
30
|
+
if (audio) {
|
|
31
|
+
const source = document.createElement('source');
|
|
32
|
+
|
|
33
|
+
source.setAttribute('type', 'audio/mp3');
|
|
34
|
+
source.setAttribute('src', audio.getAttribute('src'));
|
|
35
|
+
|
|
36
|
+
audio.removeAttribute('src');
|
|
37
|
+
audio.appendChild(source);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return div.innerHTML;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
componentDidUpdate() {
|
|
44
|
+
// set image parent style so it can be horizontally aligned
|
|
45
|
+
const previewPrompt = document.querySelector('#preview-prompt');
|
|
46
|
+
const images = previewPrompt && previewPrompt.getElementsByTagName('img');
|
|
47
|
+
|
|
48
|
+
if (images && images.length) {
|
|
49
|
+
for (let image of images) {
|
|
50
|
+
// check if alignment property was set
|
|
51
|
+
if (image.attributes && image.attributes.alignment && image.attributes.alignment.value) {
|
|
52
|
+
const parentNode = image.parentElement;
|
|
53
|
+
|
|
54
|
+
// check if div is not already added to dom and replace current image with wrapped image
|
|
55
|
+
if (
|
|
56
|
+
!(parentNode.tagName === 'DIV' && parentNode.style.display === 'flex' && parentNode.style.width === '100%')
|
|
57
|
+
) {
|
|
58
|
+
const div = document.createElement('div');
|
|
59
|
+
div.style.display = 'flex';
|
|
60
|
+
div.style.width = '100%';
|
|
61
|
+
|
|
62
|
+
const copyImage = image.cloneNode(true);
|
|
63
|
+
div.appendChild(copyImage);
|
|
64
|
+
parentNode.replaceChild(div, image);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
render() {
|
|
72
|
+
const { prompt, classes, tagName, className, onClick, defaultClassName } = this.props;
|
|
73
|
+
const CustomTag = tagName || 'div';
|
|
74
|
+
// legend tag was added once with accessibility tasks, wee need extra style to make it work with images alignment
|
|
75
|
+
const legendClass = tagName === 'legend' ? 'legend' : '';
|
|
76
|
+
const customClasses = `${classes.promptTable} ${classes[className] || ''} ${defaultClassName || ''} ${classes[
|
|
77
|
+
legendClass
|
|
78
|
+
] || ''}`;
|
|
79
|
+
|
|
80
|
+
return (
|
|
81
|
+
<CustomTag
|
|
82
|
+
id={'preview-prompt'}
|
|
83
|
+
onClick={onClick}
|
|
84
|
+
className={customClasses}
|
|
85
|
+
dangerouslySetInnerHTML={{
|
|
86
|
+
__html: this.parsedText(prompt || '').replace(NEWLINE_BLOCK_REGEX, NEWLINE_LATEX),
|
|
87
|
+
}}
|
|
88
|
+
/>
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
const styles = (theme) => ({
|
|
94
|
+
prompt: {
|
|
95
|
+
verticalAlign: 'middle',
|
|
96
|
+
color: color.text(),
|
|
97
|
+
},
|
|
98
|
+
legend: {
|
|
99
|
+
width: '100%',
|
|
100
|
+
fontSize: 'inherit !important',
|
|
101
|
+
},
|
|
102
|
+
rationale: {
|
|
103
|
+
paddingLeft: theme.spacing.unit * 4,
|
|
104
|
+
paddingBottom: theme.spacing.unit,
|
|
105
|
+
},
|
|
106
|
+
label: {
|
|
107
|
+
color: `${color.text()} !important`, //'var(--choice-input-color, black)',
|
|
108
|
+
display: 'inline-block',
|
|
109
|
+
verticalAlign: 'middle',
|
|
110
|
+
cursor: 'pointer',
|
|
111
|
+
'& > p': {
|
|
112
|
+
margin: '0 0 0 0 !important',
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
promptTable: {
|
|
116
|
+
'&:not(.MathJax) > table': {
|
|
117
|
+
borderCollapse: 'collapse',
|
|
118
|
+
},
|
|
119
|
+
'&:not(.MathJax) > table tr': {
|
|
120
|
+
'&:nth-child(2n)': {
|
|
121
|
+
backgroundColor: '#f6f8fa',
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
'&:not(.MathJax) > table td, &:not(.MathJax) > table th': {
|
|
125
|
+
padding: '.6em 1em',
|
|
126
|
+
textAlign: 'center',
|
|
127
|
+
},
|
|
128
|
+
},
|
|
129
|
+
});
|
|
130
|
+
export default withStyles(styles)(PreviewPrompt);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import PropTypes from 'prop-types';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
|
|
4
|
+
const Purpose = (props) => {
|
|
5
|
+
return (
|
|
6
|
+
<>
|
|
7
|
+
{React.Children.map(props.children, (child) => React.cloneElement(child, { 'data-pie-purpose': props.purpose }))}
|
|
8
|
+
</>
|
|
9
|
+
);
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
Purpose.propTypes = {
|
|
13
|
+
children: PropTypes.node,
|
|
14
|
+
purpose: PropTypes.string,
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default Purpose;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import PropTypes from 'prop-types';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
|
|
4
|
+
const Readable = (props) => {
|
|
5
|
+
return (
|
|
6
|
+
<>
|
|
7
|
+
{React.Children.map(props.children, (child) =>
|
|
8
|
+
React.cloneElement(child, { 'data-pie-readable': props.false === undefined }),
|
|
9
|
+
)}
|
|
10
|
+
</>
|
|
11
|
+
);
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
Readable.propTypes = {
|
|
15
|
+
children: PropTypes.node,
|
|
16
|
+
false: PropTypes.bool,
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export default Readable;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import * as icons from '@pie-lib/icons';
|
|
4
|
+
import Popover from '@material-ui/core/Popover';
|
|
5
|
+
import { withStyles } from '@material-ui/core/styles';
|
|
6
|
+
import Feedback from './feedback';
|
|
7
|
+
import debug from 'debug';
|
|
8
|
+
|
|
9
|
+
const log = debug('pie-libs:render-ui:response-indicators');
|
|
10
|
+
|
|
11
|
+
const styles = () => ({
|
|
12
|
+
responseIndicator: {
|
|
13
|
+
cursor: 'pointer',
|
|
14
|
+
},
|
|
15
|
+
paper: {
|
|
16
|
+
padding: '0',
|
|
17
|
+
borderRadius: '4px',
|
|
18
|
+
},
|
|
19
|
+
popover: {
|
|
20
|
+
cursor: 'pointer',
|
|
21
|
+
},
|
|
22
|
+
popperClose: {
|
|
23
|
+
cursor: 'pointer',
|
|
24
|
+
},
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
const BuildIndicator = (Icon, correctness) => {
|
|
28
|
+
class RawIndicator extends React.Component {
|
|
29
|
+
constructor(props) {
|
|
30
|
+
super(props);
|
|
31
|
+
this.state = {};
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
handlePopoverOpen = (event) => {
|
|
35
|
+
log('[handlePopoverOpen]', event.target);
|
|
36
|
+
this.setState({ anchorEl: event.target });
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
handlePopoverClose = () => {
|
|
40
|
+
this.setState({ anchorEl: null });
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
render() {
|
|
44
|
+
const { feedback, classes } = this.props;
|
|
45
|
+
const { anchorEl } = this.state;
|
|
46
|
+
return (
|
|
47
|
+
<div className={feedback && classes.responseIndicator}>
|
|
48
|
+
<span ref={(r) => (this.icon = r)} onClick={this.handlePopoverOpen}>
|
|
49
|
+
<Icon />
|
|
50
|
+
</span>
|
|
51
|
+
|
|
52
|
+
{feedback && (
|
|
53
|
+
<Popover
|
|
54
|
+
className={classes.popover}
|
|
55
|
+
classes={{
|
|
56
|
+
paper: classes.paper,
|
|
57
|
+
}}
|
|
58
|
+
open={!!anchorEl}
|
|
59
|
+
anchorEl={anchorEl}
|
|
60
|
+
anchorOrigin={{
|
|
61
|
+
vertical: 'bottom',
|
|
62
|
+
horizontal: 'left',
|
|
63
|
+
}}
|
|
64
|
+
transformOrigin={{
|
|
65
|
+
vertical: 'top',
|
|
66
|
+
horizontal: 'left',
|
|
67
|
+
}}
|
|
68
|
+
onClose={this.handlePopoverClose}
|
|
69
|
+
>
|
|
70
|
+
<Feedback feedback={feedback} correctness={correctness} />
|
|
71
|
+
</Popover>
|
|
72
|
+
)}
|
|
73
|
+
</div>
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
RawIndicator.propTypes = {
|
|
79
|
+
feedback: PropTypes.string,
|
|
80
|
+
classes: PropTypes.object.isRequired,
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
return withStyles(styles)(RawIndicator);
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const Correct = BuildIndicator(icons.Correct, 'correct');
|
|
87
|
+
export const Incorrect = BuildIndicator(icons.Incorrect, 'incorrect');
|
|
88
|
+
export const PartiallyCorrect = BuildIndicator(icons.PartiallyCorrect, 'partially-correct');
|
|
89
|
+
export const NothingSubmitted = BuildIndicator(icons.NothingSubmitted, 'nothing-submitted');
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import Button from '@material-ui/core/Button';
|
|
4
|
+
import { withStyles } from '@material-ui/core/styles';
|
|
5
|
+
import Restore from '@material-ui/icons/Restore';
|
|
6
|
+
import Undo from '@material-ui/icons/Undo';
|
|
7
|
+
|
|
8
|
+
const styles = (theme) => ({
|
|
9
|
+
wrapper: {
|
|
10
|
+
display: 'flex',
|
|
11
|
+
flexDirection: 'column',
|
|
12
|
+
},
|
|
13
|
+
resetUndoContainer: {
|
|
14
|
+
display: 'flex',
|
|
15
|
+
alignItems: 'center',
|
|
16
|
+
justifyContent: 'center',
|
|
17
|
+
},
|
|
18
|
+
icon: {
|
|
19
|
+
width: '24px',
|
|
20
|
+
height: '24px',
|
|
21
|
+
color: 'gray',
|
|
22
|
+
marginRight: theme.spacing.unit,
|
|
23
|
+
},
|
|
24
|
+
buttonContainer: {
|
|
25
|
+
display: 'flex',
|
|
26
|
+
alignItems: 'center',
|
|
27
|
+
marginLeft: theme.spacing.unit * 3,
|
|
28
|
+
marginRight: theme.spacing.unit * 3,
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* HOC that adds undo and reset functionality for session values
|
|
34
|
+
*/
|
|
35
|
+
const withUndoReset = (WrappedComponent) => {
|
|
36
|
+
class WithUndoReset extends React.Component {
|
|
37
|
+
static propTypes = {
|
|
38
|
+
classes: PropTypes.object,
|
|
39
|
+
session: PropTypes.object,
|
|
40
|
+
onSessionChange: PropTypes.func,
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
constructor(props) {
|
|
44
|
+
super(props);
|
|
45
|
+
|
|
46
|
+
this.state = {
|
|
47
|
+
sessionInitialValues: JSON.parse(JSON.stringify(props.session)),
|
|
48
|
+
session: props.session,
|
|
49
|
+
changes: [],
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
onSessionChange = (session) => {
|
|
54
|
+
this.setState(
|
|
55
|
+
(state) => ({ session, changes: [...state.changes, session] }),
|
|
56
|
+
() => this.props.onSessionChange(session),
|
|
57
|
+
);
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
onUndo = () => {
|
|
61
|
+
this.setState(
|
|
62
|
+
(state) => {
|
|
63
|
+
const newChanges = [...state.changes];
|
|
64
|
+
|
|
65
|
+
newChanges.pop();
|
|
66
|
+
|
|
67
|
+
return {
|
|
68
|
+
changes: newChanges,
|
|
69
|
+
session: newChanges.length ? newChanges[newChanges.length - 1] : state.sessionInitialValues,
|
|
70
|
+
};
|
|
71
|
+
},
|
|
72
|
+
() => this.props.onSessionChange(this.state.session),
|
|
73
|
+
);
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
onReset = () => {
|
|
77
|
+
this.setState(
|
|
78
|
+
(state) => ({ session: state.sessionInitialValues, changes: [] }),
|
|
79
|
+
() => this.props.onSessionChange(this.state.sessionInitialValues),
|
|
80
|
+
);
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
render() {
|
|
84
|
+
const { classes, ...rest } = this.props;
|
|
85
|
+
const { changes, session } = this.state;
|
|
86
|
+
|
|
87
|
+
return (
|
|
88
|
+
<div className={classes.wrapper}>
|
|
89
|
+
<div className={classes.resetUndoContainer}>
|
|
90
|
+
<Button
|
|
91
|
+
className={classes.buttonContainer}
|
|
92
|
+
color="primary"
|
|
93
|
+
disabled={changes.length === 0}
|
|
94
|
+
onClick={this.onUndo}
|
|
95
|
+
>
|
|
96
|
+
<Undo className={classes.icon} /> Undo
|
|
97
|
+
</Button>
|
|
98
|
+
<Button
|
|
99
|
+
className={classes.buttonContainer}
|
|
100
|
+
color="primary"
|
|
101
|
+
disabled={changes.length === 0}
|
|
102
|
+
onClick={this.onReset}
|
|
103
|
+
>
|
|
104
|
+
<Restore className={classes.icon} /> Start Over
|
|
105
|
+
</Button>
|
|
106
|
+
</div>
|
|
107
|
+
<WrappedComponent {...rest} session={session} onSessionChange={this.onSessionChange} />
|
|
108
|
+
</div>
|
|
109
|
+
);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return withStyles(styles)(WithUndoReset);
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
export default withUndoReset;
|
|
@@ -157,7 +157,7 @@ export default {
|
|
|
157
157
|
},
|
|
158
158
|
configuration: {
|
|
159
159
|
// width: '770px',
|
|
160
|
-
rubricOptions: ['simpleRubric', 'multiTraitRubric'
|
|
160
|
+
rubricOptions: ['simpleRubric', 'multiTraitRubric'],
|
|
161
161
|
[RUBRIC_TYPES.MULTI_TRAIT_RUBRIC]: multiTraitDefaultConfiguration,
|
|
162
162
|
[RUBRIC_TYPES.SIMPLE_RUBRIC]: rubricDefaultConfiguration,
|
|
163
163
|
[RUBRIC_TYPES.RUBRICLESS]: rubriclessDefaultConfiguration,
|
|
@@ -116,7 +116,7 @@ var rubriclessDefaultConfiguration = {
|
|
|
116
116
|
};
|
|
117
117
|
var _default = {
|
|
118
118
|
model: {
|
|
119
|
-
rubricOptions: ['simpleRubric', 'multiTraitRubric'
|
|
119
|
+
rubricOptions: ['simpleRubric', 'multiTraitRubric'],
|
|
120
120
|
rubricType: 'simpleRubric',
|
|
121
121
|
rubrics: {
|
|
122
122
|
simpleRubric: rubricDefaultModel,
|
|
@@ -131,4 +131,4 @@ var _default = {
|
|
|
131
131
|
}
|
|
132
132
|
};
|
|
133
133
|
exports["default"] = _default;
|
|
134
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWZhdWx0cy5qcyJdLCJuYW1lcyI6WyJtdWx0aVRyYWl0RGVmYXVsdE1vZGVsIiwidmlzaWJsZVRvU3R1ZGVudCIsImhhbGZTY29yaW5nIiwicG9pbnRMYWJlbHMiLCJkZXNjcmlwdGlvbiIsInN0YW5kYXJkcyIsInNjYWxlcyIsImV4Y2x1ZGVaZXJvIiwicnVicmljRGVmYXVsdE1vZGVsIiwicG9pbnRzIiwic2FtcGxlQW5zd2VycyIsIm1heFBvaW50cyIsInJ1YnJpY2xlc3NEZWZhdWx0TW9kZWwiLCJydWJyaWNsZXNzSW5zdHJ1Y3Rpb25FbmFibGVkIiwibXVsdGlUcmFpdERlZmF1bHRDb25maWd1cmF0aW9uIiwic2V0dGluZ3NQYW5lbERpc2FibGVkIiwiZXhjbHVkZVplcm9EaWFsb2dCb3hDb250ZW50IiwidGl0bGUiLCJ0ZXh0IiwiaW5jbHVkZVplcm9EaWFsb2dCb3hDb250ZW50IiwiZGVsZXRlU2NhbGVEaWFsb2dCb3hDb250ZW50IiwibWF4UG9pbnRzRGlhbG9nQm94Q29udGVudCIsInNwZWxsQ2hlY2siLCJsYWJlbCIsInNldHRpbmdzIiwiZW5hYmxlZCIsInNob3dFeGNsdWRlWmVybyIsInNob3dTY29yZVBvaW50TGFiZWxzIiwic2hvd0Rlc2NyaXB0aW9uIiwic2hvd1Zpc2libGVUb1N0dWRlbnQiLCJzaG93SGFsZlNjb3JpbmciLCJ3aWR0aCIsInNob3dTdGFuZGFyZHMiLCJzaG93TGV2ZWxUYWdJbnB1dCIsImRyYWdBbmREcm9wIiwicnVicmljRGVmYXVsdENvbmZpZ3VyYXRpb24iLCJzaG93TWF4UG9pbnQiLCJydWJyaWNsZXNzRGVmYXVsdENvbmZpZ3VyYXRpb24iLCJydWJyaWNsZXNzIiwicnVicmljbGVzc0luc3RydWN0aW9uIiwibWF4TWF4UG9pbnRzIiwibW9kZWwiLCJydWJyaWNPcHRpb25zIiwicnVicmljVHlwZSIsInJ1YnJpY3MiLCJzaW1wbGVSdWJyaWMiLCJtdWx0aVRyYWl0UnVicmljIiwiY29uZmlndXJh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RUFBRTlDLHNCQUF0RDtBQUE4RXNDLE1BQUFBLFVBQVUsRUFBRTFCO0FBQTFGO0FBSEosR0FETTtBQU1ibUMsRUFBQUEsYUFBYSxFQUFFO0FBQ2JELElBQUFBLGdCQUFnQixFQUFFaEMsOEJBREw7QUFFYitCLElBQUFBLFlBQVksRUFBRVYsMEJBRkQ7QUFHYkcsSUFBQUEsVUFBVSxFQUFFRDtBQUhDO0FBTkYsQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IG11bHRpVHJhaXREZWZhdWx0TW9kZWwgPSB7XG4gIHZpc2libGVUb1N0dWRlbnQ6IHRydWUsXG4gIGhhbGZTY29yaW5nOiBmYWxzZSxcbiAgcG9pbnRMYWJlbHM6IHRydWUsXG4gIGRlc2NyaXB0aW9uOiBmYWxzZSxcbiAgc3RhbmRhcmRzOiBmYWxzZSxcbiAgc2NhbGVzOiBbXSxcbiAgZXhjbHVkZVplcm86IGZhbHNlLFxufTtcblxuY29uc3QgcnVicmljRGVmYXVsdE1vZGVsID0ge1xuICBwb2ludHM6IFsnJywgJycsICcnLCAnJ10sXG4gIHNhbXBsZUFuc3dlcnM6IFtudWxsLCBudWxsLCBudWxsLCBudWxsXSxcbiAgbWF4UG9pbnRzOiA0LFxuICBleGNsdWRlWmVybzogZmFsc2UsXG59O1xuXG5jb25zdCBydWJyaWNsZXNzRGVmYXVsdE1vZGVsID0ge1xuICBtYXhQb2ludHM6IDEwMCxcbiAgZXhjbHVkZVplcm86IGZhbHNlLFxuICBydWJyaWNsZXNzSW5zdHJ1Y3Rpb25FbmFibGVkOiB0cnVlLFxufTtcblxuY29uc3QgbXVsdGlUcmFpdERlZmF1bHRDb25maWd1cmF0aW9uID0ge1xuICBzZXR0aW5nc1BhbmVsRGlzYWJsZWQ6IGZhbHNlLFxuICBleGNsdWRlWmVyb0RpYWxvZ0JveENvbnRlbnQ6IHtcbiAgICB0aXRsZTogJ0V4Y2x1ZGUgMCAoWmVybykgZnJvbSBTY29yZSBQb2ludCBWYWx1ZXMuJyxcbiAgICB0ZXh0OiBgPGRpdj5cbiAgICAgICAgWW91IGFyZSBhYm91dCB0byBleGNsdWRlIDAgZnJvbSBzY29yZSBwb2ludCB2YWx1ZXMuXG4gICAgICAgIDxici8+XG4gICAgICAgIFNvbWUgb2YgdGhlIGV4aXN0aW5nIGRhdGEgaGFzIHRvIGJlIGNoYW5nZWQuXG4gICAgICAgIDxici8+XG4gICAgICAgIFBsZWFzZSBjaG9vc2UgaWYgeW91IHdhbnQgdG86XG4gICAgICAgIDx1bD5cbiAgICAgICAgICA8bGk+XG4gICAgICAgICAgICBzaGlmdCBMYWJlbHMgYW5kIERlc2NyaXB0aW9ucyB0byB0aGUgbGVmdFxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPGxpPlxuICAgICAgICAgICAgcmVtb3ZlIDAgY29sdW1uIHdpdGggaXRzIExhYmVsIGFuZCBEZXNjcmlwdGlvblxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5gLFxuICB9LFxuICBpbmNsdWRlWmVyb0RpYWxvZ0JveENvbnRlbnQ6IHtcbiAgICB0aXRsZTogJ0luY2x1ZGUgMCAoWmVybykgaW4gU2NvcmUgUG9pbnQgVmFsdWVzLicsXG4gICAgdGV4dDogYDxkaXY+XG4gICAgICAgIFlvdSBhcmUgYWJvdXQgdG8gaW5jbHVkZSAwIGluIHNjb3JlIHBvaW50IHZhbHVlcy5cbiAgICAgICAgPGJyLz5cbiAgICAgICAgU29tZSBvZiB0aGUgZXhpc3RpbmcgZGF0YSBoYXMgdG8gYmUgY2hhbmdlZC5cbiAgICAgICAgPGJyLz5cbiAgICAgICAgUGxlYXNlIGNob29zZSBpZiB5b3Ugd2FudCB0bzpcbiAgICAgICAgPHVsPlxuICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgIHNoaWZ0IExhYmVscyBhbmQgRGVzY3JpcHRpb25zIHRvIHRoZSByaWdodFxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPGxpPlxuICAgICAgICAgICAgYWRkIDAgY29sdW1uIHdpdGggZW1wdHkgTGFiZWwgYW5kIERlc2NyaXB0aW9uc1xuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5gLFxuICB9LFxuICBkZWxldGVTY2FsZURpYWxvZ0JveENvbnRlbnQ6IHtcbiAgICB0aXRsZTogJ0RlbGV0ZSBTY2FsZScsXG4gICAgdGV4dDogJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBzY2FsZT8nLFxuICB9LFxuICBtYXhQb2ludHNEaWFsb2dCb3hDb250ZW50OiB7XG4gICAgdGl0bGU6ICdEZWNyZWFzaW5nIE1heCBQb2ludHMuJyxcbiAgICB0ZXh0OiBgIFlvdSBhcmUgYWJvdXQgdG8gZGVjcmVhc2UgbWF4IHNjb3JlIHBvaW50IHZhbHVlLlxuICAgICAgICA8YnIvPlxuICAgICAgICBBbGwgdGhlIExhYmVscyBhbmQgRGVzY3JpcHRpb25zIGZvciBzY29yZXMgYWJvdmUgTWF4IFBvaW50IHdpbGwgYmUgZGVsZXRlZC5gLFxuICB9LFxuICBzcGVsbENoZWNrOiB7XG4gICAgbGFiZWw6ICdTcGVsbGNoZWNrJyxcbiAgICBzZXR0aW5nczogZmFsc2UsXG4gICAgZW5hYmxlZDogdHJ1ZSxcbiAgfSxcbiAgc2hvd0V4Y2x1ZGVaZXJvOiB7XG4gICAgc2V0dGluZ3M6IHRydWUsXG4gICAgbGFiZWw6ICdFeGNsdWRlIFplcm8nLFxuICB9LFxuICBzaG93U2NvcmVQb2ludExhYmVsczoge1xuICAgIHNldHRpbmdzOiB0cnVlLFxuICAgIGxhYmVsOiAnU2hvdyBTY29yZSBQb2ludCBMYWJlbHMnLFxuICB9LFxuICBzaG93RGVzY3JpcHRpb246IHtcbiAgICBzZXR0aW5nczogdHJ1ZSxcbiAgICBsYWJlbDogJ1Nob3cgRGVzY3JpcHRpb24nLFxuICB9LFxuICBzaG93VmlzaWJsZVRvU3R1ZGVudDoge1xuICAgIHNldHRpbmdzOiB0cnVlLFxuICAgIGxhYmVsOiAnVmlzaWJsZSB0byBTdHVkZW50JyxcbiAgfSxcbiAgc2hvd0hhbGZTY29yaW5nOiB7XG4gICAgc2V0dGluZ3M6IHRydWUsXG4gICAgbGFiZWw6ICdIYWxmIFNjb3JpbmcnLFxuICB9LFxuICB3aWR0aDogJzkwMHB4JyxcbiAgLy8gdGhlc2Ugc2hvdWxkIG5vdCBiZSBzZXQgdG8gdHJ1ZSAoc2hvdWxkIG5vdCBiZSB1c2VkKSBmb3Igbm93XG4gIHNob3dTdGFuZGFyZHM6IHtcbiAgICBzZXR0aW5nczogZmFsc2UsXG4gICAgbGFiZWw6ICdTaG93IFN0YW5kYXJkcycsXG4gIH0sXG4gIHNob3dMZXZlbFRhZ0lucHV0OiB7XG4gICAgc2V0dGluZ3M6IGZhbHNlLFxuICAgIGxhYmVsOiAnU2hvdyBMZXZlbCBUYWcgSW5wdXQnLFxuICAgIGVuYWJsZWQ6IGZhbHNlLFxuICB9LFxuICBkcmFnQW5kRHJvcDoge1xuICAgIHNldHRpbmdzOiB0cnVlLFxuICAgIGxhYmVsOiAnRW5hYmxlIERyYWcgYW5kIERyb3AnLFxuICAgIGVuYWJsZWQ6IGZhbHNlLFxuICB9LFxufTtcblxuY29uc3QgcnVicmljRGVmYXVsdENvbmZpZ3VyYXRpb24gPSB7XG4gIHNob3dFeGNsdWRlWmVybzoge1xuICAgIHNldHRpbmdzOiB0cnVlLFxuICAgIGxhYmVsOiAnQWJpbGl0eSB0byBleGNsdWRlIHplcm8nLFxuICB9LFxuICBzaG93TWF4UG9pbnQ6IHtcbiAgICBzZXR0aW5nczogdHJ1ZSxcbiAgICBsYWJlbDogJ1Nob3cgbWF4IHBvaW50cyBkcm9wZG93bicsXG4gIH0sXG4gIHNldHRpbmdzUGFuZWxEaXNhYmxlZDogZmFsc2UsXG59O1xuXG5jb25zdCBydWJyaWNsZXNzRGVmYXVsdENvbmZpZ3VyYXRpb24gPSB7XG4gIHNob3dFeGNsdWRlWmVybzoge1xuICAgIHNldHRpbmdzOiB0cnVlLFxuICAgIGxhYmVsOiAnQWJpbGl0eSB0byBleGNsdWRlIHplcm8nLFxuICB9LFxuICBzaG93TWF4UG9pbnQ6IHtcbiAgICBzZXR0aW5nczogdHJ1ZSxcbiAgICBsYWJlbDogJ1Nob3cgbWF4IHBvaW50cyBkcm9wZG93bicsXG4gIH0sXG4gIHNldHRpbmdzUGFuZWxEaXNhYmxlZDogZmFsc2UsXG4gIC8vIHNob3dzIHVzIGlmIGl0IHNpbXBsZSBydWJyaWMgb3IgcnVicmljbGVzcyhzaW1wbGUgcnVicmljIHdpdGggbGVzcyBzdHJ1Y3R1cmUpXG4gIHJ1YnJpY2xlc3M6IHRydWUsXG4gIC8vIHNjb3JpbmcgaW5zdHJ1Y3Rpb24gZm9yIHJ1YnJpY2xlc3NcbiAgcnVicmljbGVzc0luc3RydWN0aW9uOiB7XG4gICAgc2V0dGluZ3M6IHRydWUsXG4gICAgbGFiZWw6ICdJbnN0cnVjdGlvbicsXG4gIH0sXG4gIG1heE1heFBvaW50czogMTAwLFxufTtcblxuZXhwb3J0IGRlZmF1bHQge1xuICBtb2RlbDoge1xuICAgIHJ1YnJpY09wdGlvbnM6IFsnc2ltcGxlUnVicmljJywgJ211bHRpVHJhaXRSdWJyaWMnLCAncnVicmljbGVzcyddLFxuICAgIHJ1YnJpY1R5cGU6ICdzaW1wbGVSdWJyaWMnLFxuICAgIHJ1YnJpY3M6IHsgc2ltcGxlUnVicmljOiBydWJyaWNEZWZhdWx0TW9kZWwsIG11bHRpVHJhaXRSdWJyaWM6IG11bHRpVHJhaXREZWZhdWx0TW9kZWwsIHJ1YnJpY2xlc3M6IHJ1YnJpY2xlc3NEZWZhdWx0TW9kZWwgfSxcbiAgfSxcbiAgY29uZmlndXJhdGlvbjoge1xuICAgIG11bHRpVHJhaXRSdWJyaWM6IG11bHRpVHJhaXREZWZhdWx0Q29uZmlndXJhdGlvbixcbiAgICBzaW1wbGVSdWJyaWM6IHJ1YnJpY0RlZmF1bHRDb25maWd1cmF0aW9uLFxuICAgIHJ1YnJpY2xlc3M6IHJ1YnJpY2xlc3NEZWZhdWx0Q29uZmlndXJhdGlvbixcbiAgfSxcbn07XG4iXX0=
|
|
134
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/defaults.js"],"names":["multiTraitDefaultModel","visibleToStudent","halfScoring","pointLabels","description","standards","scales","excludeZero","rubricDefaultModel","points","sampleAnswers","maxPoints","rubriclessDefaultModel","rubriclessInstructionEnabled","multiTraitDefaultConfiguration","settingsPanelDisabled","excludeZeroDialogBoxContent","title","text","includeZeroDialogBoxContent","deleteScaleDialogBoxContent","maxPointsDialogBoxContent","spellCheck","label","settings","enabled","showExcludeZero","showScorePointLabels","showDescription","showVisibleToStudent","showHalfScoring","width","showStandards","showLevelTagInput","dragAndDrop","rubricDefaultConfiguration","showMaxPoint","rubriclessDefaultConfiguration","rubricless","rubriclessInstruction","maxMaxPoints","model","rubricOptions","rubricType","rubrics","simpleRubric","multiTraitRubric","configuration"],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../src/defaults.js"],"names":["multiTraitDefaultModel","visibleToStudent","halfScoring","pointLabels","description","standards","scales","excludeZero","rubricDefaultModel","points","sampleAnswers","maxPoints","rubriclessDefaultModel","rubriclessInstructionEnabled","multiTraitDefaultConfiguration","settingsPanelDisabled","excludeZeroDialogBoxContent","title","text","includeZeroDialogBoxContent","deleteScaleDialogBoxContent","maxPointsDialogBoxContent","spellCheck","label","settings","enabled","showExcludeZero","showScorePointLabels","showDescription","showVisibleToStudent","showHalfScoring","width","showStandards","showLevelTagInput","dragAndDrop","rubricDefaultConfiguration","showMaxPoint","rubriclessDefaultConfiguration","rubricless","rubriclessInstruction","maxMaxPoints","model","rubricOptions","rubricType","rubrics","simpleRubric","multiTraitRubric","configuration"],"mappings":"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","sourcesContent":["const multiTraitDefaultModel = {\n visibleToStudent: true,\n halfScoring: false,\n pointLabels: true,\n description: false,\n standards: false,\n scales: [],\n excludeZero: false,\n};\n\nconst rubricDefaultModel = {\n points: ['', '', '', ''],\n sampleAnswers: [null, null, null, null],\n maxPoints: 4,\n excludeZero: false,\n};\n\nconst rubriclessDefaultModel = {\n maxPoints: 100,\n excludeZero: false,\n rubriclessInstructionEnabled: true,\n};\n\nconst multiTraitDefaultConfiguration = {\n settingsPanelDisabled: false,\n excludeZeroDialogBoxContent: {\n title: 'Exclude 0 (Zero) from Score Point Values.',\n text: `<div>\n You are about to exclude 0 from score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the left\n </li>\n <li>\n remove 0 column with its Label and Description\n </li>\n </ul>\n </div>`,\n },\n includeZeroDialogBoxContent: {\n title: 'Include 0 (Zero) in Score Point Values.',\n text: `<div>\n You are about to include 0 in score point values.\n <br/>\n Some of the existing data has to be changed.\n <br/>\n Please choose if you want to:\n <ul>\n <li>\n shift Labels and Descriptions to the right\n </li>\n <li>\n add 0 column with empty Label and Descriptions\n </li>\n </ul>\n </div>`,\n },\n deleteScaleDialogBoxContent: {\n title: 'Delete Scale',\n text: 'Are you sure you want to delete this scale?',\n },\n maxPointsDialogBoxContent: {\n title: 'Decreasing Max Points.',\n text: ` You are about to decrease max score point value.\n <br/>\n All the Labels and Descriptions for scores above Max Point will be deleted.`,\n },\n spellCheck: {\n label: 'Spellcheck',\n settings: false,\n enabled: true,\n },\n showExcludeZero: {\n settings: true,\n label: 'Exclude Zero',\n },\n showScorePointLabels: {\n settings: true,\n label: 'Show Score Point Labels',\n },\n showDescription: {\n settings: true,\n label: 'Show Description',\n },\n showVisibleToStudent: {\n settings: true,\n label: 'Visible to Student',\n },\n showHalfScoring: {\n settings: true,\n label: 'Half Scoring',\n },\n width: '900px',\n // these should not be set to true (should not be used) for now\n showStandards: {\n settings: false,\n label: 'Show Standards',\n },\n showLevelTagInput: {\n settings: false,\n label: 'Show Level Tag Input',\n enabled: false,\n },\n dragAndDrop: {\n settings: true,\n label: 'Enable Drag and Drop',\n enabled: false,\n },\n};\n\nconst rubricDefaultConfiguration = {\n showExcludeZero: {\n settings: true,\n label: 'Ability to exclude zero',\n },\n showMaxPoint: {\n settings: true,\n label: 'Show max points dropdown',\n },\n settingsPanelDisabled: false,\n};\n\nconst rubriclessDefaultConfiguration = {\n showExcludeZero: {\n settings: true,\n label: 'Ability to exclude zero',\n },\n showMaxPoint: {\n settings: true,\n label: 'Show max points dropdown',\n },\n settingsPanelDisabled: false,\n // shows us if it simple rubric or rubricless(simple rubric with less structure)\n rubricless: true,\n // scoring instruction for rubricless\n rubriclessInstruction: {\n settings: true,\n label: 'Instruction',\n },\n maxMaxPoints: 100,\n};\n\nexport default {\n model: {\n rubricOptions: ['simpleRubric', 'multiTraitRubric'],\n rubricType: 'simpleRubric',\n rubrics: { simpleRubric: rubricDefaultModel, multiTraitRubric: multiTraitDefaultModel, rubricless: rubriclessDefaultModel },\n },\n configuration: {\n multiTraitRubric: multiTraitDefaultConfiguration,\n simpleRubric: rubricDefaultConfiguration,\n rubricless: rubriclessDefaultConfiguration,\n },\n};\n"],"file":"defaults.js"}
|
package/controller/lib/index.js
CHANGED
|
@@ -298,4 +298,4 @@ var validate = function validate() {
|
|
|
298
298
|
};
|
|
299
299
|
|
|
300
300
|
exports.validate = validate;
|
|
301
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJSVUJSSUNfVFlQRVMiLCJTSU1QTEVfUlVCUklDIiwiTVVMVElfVFJBSVRfUlVCUklDIiwiY3JlYXRlRGVmYXVsdE1vZGVsIiwibW9kZWwiLCJQcm9taXNlIiwicmVzb2x2ZSIsImRlZmF1bHRzIiwibm9ybWFsaXplIiwicXVlc3Rpb24iLCJzZXNzaW9uIiwiZW52Iiwibm9ybWFsaXplZFF1ZXN0aW9uIiwicnVicmljVHlwZSIsInJvbGUiLCJydWJyaWNzIiwibXVsdGlUcmFpdFJ1YnJpYyIsInZpc2libGUiLCJ2aXNpYmxlVG9TdHVkZW50Iiwic2NhbGVzIiwiZXhjbHVkZVplcm8iLCJwYXJzZWRTY2FsZXMiLCJtYXAiLCJzY2FsZSIsInNpbXBsZVJ1YnJpYyIsInJ1YnJpY2xlc3MiLCJnZXRTY29yZSIsIm91dGNvbWUiLCJzY29yZSIsImVtcHR5IiwiY3JlYXRlQ29ycmVjdFJlc3BvbnNlU2Vzc2lvbiIsIm1vZGUiLCJpZCIsInZhbGlkYXRlU2ltcGxlUnVicmljIiwicG9pbnRzIiwiZXJyb3JzIiwicG9pbnRzRGVzY3JpcHRvcnNFcnJvcnMiLCJmb3JFYWNoIiwicG9pbnQiLCJpbmRleCIsImlkZW50aWNhbFBvaW50RGVzY3IiLCJzbGljZSIsInNvbWUiLCJwIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsInZhbGlkYXRlTXVsdGlUcmFpdFJ1YnJpYyIsImRlc2NyaXB0aW9uIiwicG9pbnRMYWJlbHMiLCJ0cmFpdHNFcnJvcnMiLCJzY29yZVBvaW50c0Vycm9ycyIsInNjYWxlSW5kZXgiLCJ0cmFpdHMiLCJzY29yZVBvaW50c0xhYmVscyIsInNjYWxlRXJyb3JzIiwic2NvcmVQb2ludHNMYWJlbHNFcnJvcnMiLCJzY29yZVBvaW50TGFiZWwiLCJzY29yZUluZGV4IiwiaWRlbnRpY2FsU2NvcmVQb2ludExhYmVsIiwicyIsInRyYWl0IiwidHJhaXRJbmRleCIsIm5hbWUiLCJpZGVudGljYWxUcmFpdE5hbWUiLCJ0IiwiaWRlbnRpY2FsVHJhaXREZXNjciIsInZhbGlkYXRlIiwiY29uZmlnIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7Ozs7O0FBRUE7QUFDQSxJQUFNQSxZQUFZLEdBQUc7QUFDbkJDLEVBQUFBLGFBQWEsRUFBRSxjQURJO0FBRW5CQyxFQUFBQSxrQkFBa0IsRUFBRSxrQkFGRDtBQUduQixnQkFBYztBQUhLLENBQXJCOztBQU1PLFNBQVNDLGtCQUFULEdBQXdDO0FBQUEsTUFBWkMsS0FBWSx1RUFBSixFQUFJO0FBQzdDLFNBQU8sSUFBSUMsT0FBSixDQUFZLFVBQUNDLE9BQUQ7QUFBQSxXQUFhQSxPQUFPLGlDQUFNQyxxQkFBU0gsS0FBZixHQUF5QkEsS0FBekIsRUFBcEI7QUFBQSxHQUFaLENBQVA7QUFDRDs7QUFFTSxJQUFNSSxTQUFTLEdBQUcsU0FBWkEsU0FBWSxDQUFDQyxRQUFEO0FBQUEseUNBQW9CRixxQkFBU0gsS0FBN0IsR0FBdUNLLFFBQXZDO0FBQUEsQ0FBbEI7QUFFUDtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7OztTQUNzQkwsSzs7Ozs7eUZBQWYsaUJBQXFCSyxRQUFyQixFQUErQkMsT0FBL0IsRUFBd0NDLEdBQXhDO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQ0MsWUFBQUEsa0JBREQsR0FDc0JKLFNBQVMsQ0FBQ0MsUUFBRCxDQUQvQjs7QUFBQSxrQkFHREcsa0JBQWtCLENBQUNDLFVBQW5CLEtBQWtDYixZQUFZLENBQUNDLGFBQS9DLElBQWdFVyxrQkFBa0IsQ0FBQ0MsVUFBbkIsS0FBa0MsWUFIakc7QUFBQTtBQUFBO0FBQUE7O0FBQUEsNkNBSUksSUFBSVIsT0FBSixDQUFZLFVBQUNDLE9BQUQsRUFBYTtBQUM5QkEsY0FBQUEsT0FBTyxDQUNMSyxHQUFHLElBQUlBLEdBQUcsQ0FBQ0csSUFBWCxJQUFtQkgsR0FBRyxDQUFDRyxJQUFKLEtBQWEsWUFBaEMsbUNBRU9GLGtCQUZQO0FBR0lHLGdCQUFBQSxPQUFPLGtDQUNGSCxrQkFBa0IsQ0FBQ0csT0FEakI7QUFFTEMsa0JBQUFBLGdCQUFnQixrQ0FDWEosa0JBQWtCLENBQUNHLE9BQW5CLENBQTJCQyxnQkFEaEI7QUFFZEMsb0JBQUFBLE9BQU8sRUFBRTtBQUZLO0FBRlg7QUFIWCxtQkFXSSxFQVpDLENBQVA7QUFjRCxhQWZNLENBSko7O0FBQUE7QUFxQkgsZ0JBQ0UsQ0FBQ04sR0FBRyxDQUFDRyxJQUFMLElBQ0NILEdBQUcsQ0FBQ0csSUFBSixLQUFhLFNBQWIsSUFBMEJGLGtCQUFrQixDQUFDRyxPQUE3QyxJQUF3REgsa0JBQWtCLENBQUNHLE9BQW5CLENBQTJCQyxnQkFGdEYsRUFHRTtBQUNBSixjQUFBQSxrQkFBa0IsQ0FBQ0csT0FBbkIsQ0FBMkJDLGdCQUEzQixDQUE0Q0MsT0FBNUMsR0FBc0RMLGtCQUFrQixDQUFDTSxnQkFBekU7QUFDRCxhQUxELE1BS087QUFDTE4sY0FBQUEsa0JBQWtCLENBQUNHLE9BQW5CLENBQTJCQyxnQkFBM0IsQ0FBNENDLE9BQTVDLEdBQXNELElBQXREO0FBQ0QsYUE1QkUsQ0E4Qkg7OztBQTlCRyxtQkErQjZCTCxrQkFBa0IsQ0FBQ0csT0FBbkIsQ0FBMkJDLGdCQUEzQixJQUErQyxFQS9CNUUsRUErQktHLE1BL0JMLFFBK0JLQSxNQS9CTCxFQStCYUMsV0EvQmIsUUErQmFBLFdBL0JiO0FBZ0NHQyxZQUFBQSxZQWhDSCxHQWdDa0IsQ0FBQ0YsTUFBTSxJQUFJLEVBQVgsRUFBZUcsR0FBZixDQUFtQixVQUFDQyxLQUFEO0FBQUEscURBQWlCQSxLQUFqQjtBQUF3QkgsZ0JBQUFBLFdBQVcsRUFBWEE7QUFBeEI7QUFBQSxhQUFuQixDQWhDbEI7QUFBQSw2RUFtQ0VSLGtCQW5DRjtBQW9DREcsY0FBQUEsT0FBTyxrQ0FDRkgsa0JBQWtCLENBQUNHLE9BRGpCO0FBRUxTLGdCQUFBQSxZQUFZLGtDQUNQWixrQkFBa0IsQ0FBQ0csT0FBbkIsQ0FBMkJTLFlBRHBCO0FBRVZQLGtCQUFBQSxPQUFPLEVBQUU7QUFGQyxrQkFGUDtBQU1MUSxnQkFBQUEsVUFBVSxrQ0FDTGIsa0JBQWtCLENBQUNHLE9BQW5CLENBQTJCVSxVQUR0QjtBQUVSUixrQkFBQUEsT0FBTyxFQUFFO0FBRkQsa0JBTkw7QUFVTEQsZ0JBQUFBLGdCQUFnQixrQ0FDWEosa0JBQWtCLENBQUNHLE9BQW5CLENBQTJCQyxnQkFEaEI7QUFFZEcsa0JBQUFBLE1BQU0sRUFBRUU7QUFGTTtBQVZYO0FBcENOOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEc7Ozs7QUF1REEsSUFBTUssUUFBUSxHQUFHLFNBQVhBLFFBQVc7QUFBQSxTQUFNLENBQU47QUFBQSxDQUFqQjtBQUVQO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7O0FBQ08sU0FBU0MsT0FBVCxHQUFtQjtBQUN4QixTQUFPLElBQUl0QixPQUFKLENBQVksVUFBQ0MsT0FBRDtBQUFBLFdBQWFBLE9BQU8sQ0FBQztBQUFFc0IsTUFBQUEsS0FBSyxFQUFFLENBQVQ7QUFBWUMsTUFBQUEsS0FBSyxFQUFFO0FBQW5CLEtBQUQsQ0FBcEI7QUFBQSxHQUFaLENBQVA7QUFDRDs7QUFFTSxJQUFNQyw0QkFBNEIsR0FBRyxTQUEvQkEsNEJBQStCLENBQUNyQixRQUFELEVBQVdFLEdBQVgsRUFBbUI7QUFDN0QsU0FBTyxJQUFJTixPQUFKLENBQVksVUFBQ0MsT0FBRCxFQUFhO0FBQzlCLFFBQUlLLEdBQUcsQ0FBQ29CLElBQUosS0FBYSxVQUFiLElBQTJCcEIsR0FBRyxDQUFDRyxJQUFKLEtBQWEsWUFBNUMsRUFBMEQ7QUFDeERSLE1BQUFBLE9BQU8sQ0FBQztBQUFFMEIsUUFBQUEsRUFBRSxFQUFFO0FBQU4sT0FBRCxDQUFQO0FBQ0QsS0FGRCxNQUVPO0FBQ0wxQixNQUFBQSxPQUFPLENBQUMsSUFBRCxDQUFQO0FBQ0Q7QUFDRixHQU5NLENBQVA7QUFPRCxDQVJNLEMsQ0FVUDtBQUNBOzs7OztBQUNBLElBQU0yQixvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQXVCLENBQUM3QixLQUFELEVBQVc7QUFDdEMsTUFBUThCLE1BQVIsR0FBbUI5QixLQUFuQixDQUFROEIsTUFBUjtBQUNBLE1BQU1DLE1BQU0sR0FBRyxFQUFmO0FBQ0EsTUFBTUMsdUJBQXVCLEdBQUcsRUFBaEM7QUFFQSxHQUFDRixNQUFNLElBQUksRUFBWCxFQUFlRyxPQUFmLENBQXVCLFVBQUNDLEtBQUQsRUFBUUMsS0FBUixFQUFrQjtBQUN2QyxRQUFHLENBQUNELEtBQUQsSUFBU0EsS0FBSyxLQUFLLGFBQXRCLEVBQXFDO0FBQ25DRixNQUFBQSx1QkFBdUIsQ0FBQ0csS0FBRCxDQUF2QixHQUFpQyxxQ0FBakM7QUFDRCxLQUZELE1BR0k7QUFDRixVQUFNQyxtQkFBbUIsR0FBR04sTUFBTSxDQUFDTyxLQUFQLENBQWFGLEtBQUssR0FBRyxDQUFyQixFQUF3QkcsSUFBeEIsQ0FBNkIsVUFBQUMsQ0FBQztBQUFBLGVBQUkseUJBQWFBLENBQWIsTUFBb0IseUJBQWFMLEtBQWIsQ0FBeEI7QUFBQSxPQUE5QixDQUE1Qjs7QUFFQSxVQUFJRSxtQkFBSixFQUF5QjtBQUN2QkosUUFBQUEsdUJBQXVCLENBQUNHLEtBQUQsQ0FBdkIsR0FBaUMsc0NBQWpDO0FBQ0Q7QUFDRjtBQUNGLEdBWEQ7O0FBYUEsTUFBR0ssTUFBTSxDQUFDQyxJQUFQLENBQVlULHVCQUFaLEVBQXFDVSxNQUFyQyxHQUE4QyxDQUFqRCxFQUFtRDtBQUNqRFgsSUFBQUEsTUFBTSxDQUFDQyx1QkFBUCxHQUFpQ0EsdUJBQWpDO0FBQ0Q7O0FBRUQsU0FBT0QsTUFBUDtBQUNELENBdkJELEMsQ0F5QkE7QUFDQTs7O0FBQ0EsSUFBTVksd0JBQXdCLEdBQUcsU0FBM0JBLHdCQUEyQixDQUFDM0MsS0FBRCxFQUFXO0FBQzFDLE1BQVFlLE1BQVIsR0FBNkRmLEtBQTdELENBQVFlLE1BQVI7QUFBQSwyQkFBNkRmLEtBQTdELENBQWdCNEMsV0FBaEI7QUFBQSxNQUFnQkEsV0FBaEIsbUNBQThCLEtBQTlCO0FBQUEsMkJBQTZENUMsS0FBN0QsQ0FBcUM2QyxXQUFyQztBQUFBLE1BQXFDQSxXQUFyQyxtQ0FBbUQsS0FBbkQ7QUFDQSxNQUFNZCxNQUFNLEdBQUcsRUFBZjtBQUNBLE1BQU1lLFlBQVksR0FBRyxFQUFyQjtBQUNBLE1BQU1DLGlCQUFpQixHQUFHLEVBQTFCO0FBRUEsR0FBQ2hDLE1BQU0sSUFBSSxFQUFYLEVBQWVrQixPQUFmLENBQXVCLFVBQUNkLEtBQUQsRUFBUTZCLFVBQVIsRUFBdUI7QUFDNUMsd0JBQXdCN0IsS0FBeEIsQ0FBUThCLE1BQVI7QUFBQSxRQUFRQSxNQUFSLDhCQUFpQixFQUFqQjtBQUNBLGdDQUFtQzlCLEtBQW5DLENBQVErQixpQkFBUjtBQUFBLFFBQVFBLGlCQUFSLHNDQUE0QixFQUE1QjtBQUNBLFFBQU1DLFdBQVcsR0FBRyxFQUFwQjtBQUNBLFFBQU1DLHVCQUF1QixHQUFHLEVBQWhDOztBQUVBLFFBQUdQLFdBQUgsRUFBZ0I7QUFDZEssTUFBQUEsaUJBQWlCLENBQUNqQixPQUFsQixDQUEwQixVQUFDb0IsZUFBRCxFQUFrQkMsVUFBbEIsRUFBaUM7QUFDekQsWUFBSSxDQUFDRCxlQUFELElBQW9CQSxlQUFlLEtBQUssYUFBNUMsRUFBMkQ7QUFDekRELFVBQUFBLHVCQUF1QixDQUFDRSxVQUFELENBQXZCLEdBQXNDLG9DQUF0QztBQUNELFNBRkQsTUFFTztBQUNMLGNBQU1DLHdCQUF3QixHQUFHTCxpQkFBaUIsQ0FBQ2IsS0FBbEIsQ0FBd0JpQixVQUFVLEdBQUcsQ0FBckMsRUFBd0NoQixJQUF4QyxDQUE2QyxVQUFBa0IsQ0FBQztBQUFBLG1CQUFJLHlCQUFhQSxDQUFiLE1BQW9CLHlCQUFhSCxlQUFiLENBQXhCO0FBQUEsV0FBOUMsQ0FBakM7O0FBRUEsY0FBSUUsd0JBQUosRUFBOEI7QUFDNUJILFlBQUFBLHVCQUF1QixDQUFDRSxVQUFELENBQXZCLEdBQXNDLGlDQUF0QztBQUNEO0FBQ0Y7QUFDRixPQVZEO0FBV0Q7O0FBRUQsUUFBR2QsTUFBTSxDQUFDQyxJQUFQLENBQVlXLHVCQUFaLEVBQXFDVixNQUFyQyxHQUE4QyxDQUFqRCxFQUFtRDtBQUNqREssTUFBQUEsaUJBQWlCLENBQUNDLFVBQUQsQ0FBakIsR0FBZ0NJLHVCQUFoQztBQUNEOztBQUVESCxJQUFBQSxNQUFNLENBQUNoQixPQUFQLENBQWUsVUFBQ3dCLEtBQUQsRUFBUUMsVUFBUixFQUF1QjtBQUNwQyxVQUFHLENBQUNELEtBQUssQ0FBQ0UsSUFBUCxJQUFlRixLQUFLLENBQUNFLElBQU4sS0FBZSxhQUFqQyxFQUFnRDtBQUM5Q1IsUUFBQUEsV0FBVyxDQUFDTyxVQUFELENBQVgsR0FBMEI7QUFBQ0MsVUFBQUEsSUFBSSxFQUFFO0FBQVAsU0FBMUI7QUFDRCxPQUZELE1BR0k7QUFDRixZQUFNQyxrQkFBa0IsR0FBR1gsTUFBTSxDQUFDWixLQUFQLENBQWFxQixVQUFVLEdBQUcsQ0FBMUIsRUFBNkJwQixJQUE3QixDQUFrQyxVQUFBdUIsQ0FBQztBQUFBLGlCQUFJLHlCQUFhQSxDQUFDLENBQUNGLElBQWYsTUFBeUIseUJBQWFGLEtBQUssQ0FBQ0UsSUFBbkIsQ0FBN0I7QUFBQSxTQUFuQyxDQUEzQjs7QUFFQSxZQUFJQyxrQkFBSixFQUF3QjtBQUN0QlQsVUFBQUEsV0FBVyxDQUFDTyxVQUFELENBQVgsR0FBMEI7QUFBQ0MsWUFBQUEsSUFBSSxFQUFFO0FBQVAsV0FBMUI7QUFDRDtBQUNGOztBQUNELFVBQUdmLFdBQVcsS0FBSyxDQUFDYSxLQUFLLENBQUNiLFdBQVAsSUFBc0JhLEtBQUssQ0FBQ2IsV0FBTixLQUFzQixhQUFqRCxDQUFkLEVBQStFO0FBQzdFTyxRQUFBQSxXQUFXLENBQUNPLFVBQUQsQ0FBWCxtQ0FBK0JQLFdBQVcsQ0FBQ08sVUFBRCxDQUExQztBQUF3RGQsVUFBQUEsV0FBVyxFQUFFO0FBQXJFO0FBQ0QsT0FGRCxNQUdJO0FBQ0YsWUFBTWtCLG1CQUFtQixHQUFHYixNQUFNLENBQUNaLEtBQVAsQ0FBYXFCLFVBQVUsR0FBRyxDQUExQixFQUE2QnBCLElBQTdCLENBQWtDLFVBQUF1QixDQUFDO0FBQUEsaUJBQUkseUJBQWFBLENBQUMsQ0FBQ2pCLFdBQWYsTUFBZ0MseUJBQWFhLEtBQUssQ0FBQ2IsV0FBbkIsQ0FBcEM7QUFBQSxTQUFuQyxDQUE1Qjs7QUFFQSxZQUFJQSxXQUFXLElBQUlrQixtQkFBbkIsRUFBd0M7QUFDdENYLFVBQUFBLFdBQVcsQ0FBQ08sVUFBRCxDQUFYLG1DQUErQlAsV0FBVyxDQUFDTyxVQUFELENBQTFDO0FBQXdEZCxZQUFBQSxXQUFXLEVBQUU7QUFBckU7QUFDRDtBQUNGO0FBRUYsS0F0QkQ7O0FBdUJBLFFBQUdKLE1BQU0sQ0FBQ0MsSUFBUCxDQUFZVSxXQUFaLEVBQXlCVCxNQUF6QixHQUFrQyxDQUFyQyxFQUF1QztBQUNyQ0ksTUFBQUEsWUFBWSxDQUFDRSxVQUFELENBQVosR0FBMkJHLFdBQTNCO0FBQ0Q7QUFDRixHQWxERDs7QUFvREEsTUFBR1gsTUFBTSxDQUFDQyxJQUFQLENBQVlLLFlBQVosRUFBMEJKLE1BQTFCLEdBQW1DLENBQXRDLEVBQXdDO0FBQ3RDWCxJQUFBQSxNQUFNLENBQUNlLFlBQVAsR0FBc0JBLFlBQXRCO0FBQ0Q7O0FBRUQsTUFBR04sTUFBTSxDQUFDQyxJQUFQLENBQVlNLGlCQUFaLEVBQStCTCxNQUEvQixHQUF3QyxDQUEzQyxFQUE2QztBQUMzQ1gsSUFBQUEsTUFBTSxDQUFDZ0IsaUJBQVAsR0FBMkJBLGlCQUEzQjtBQUNEOztBQUVELFNBQU9oQixNQUFQO0FBQ0QsQ0FuRUQ7O0FBc0VPLElBQU1nQyxRQUFRLEdBQUcsU0FBWEEsUUFBVyxHQUE2QjtBQUFBLE1BQTVCL0QsS0FBNEIsdUVBQXBCLEVBQW9CO0FBQUEsTUFBaEJnRSxNQUFnQix1RUFBUCxFQUFPO0FBQ25ELHVCQUFxQ2hFLEtBQXJDLENBQVFXLE9BQVI7QUFBQSxNQUFRQSxPQUFSLCtCQUFrQixFQUFsQjtBQUFBLE1BQXNCRixVQUF0QixHQUFxQ1QsS0FBckMsQ0FBc0JTLFVBQXRCO0FBQ0EsOEJBQXFERSxPQUFyRCxDQUFRQyxnQkFBUjtBQUFBLE1BQVFBLGdCQUFSLHNDQUEyQixFQUEzQjtBQUFBLDhCQUFxREQsT0FBckQsQ0FBK0JTLFlBQS9CO0FBQUEsTUFBK0JBLFlBQS9CLHNDQUE4QyxFQUE5QztBQUNBLE1BQUlXLE1BQU0sR0FBRyxFQUFiOztBQUVBLFVBQVF0QixVQUFSO0FBQ0UsU0FBS2IsWUFBWSxDQUFDQyxhQUFsQjtBQUNBO0FBQ0VrQyxNQUFBQSxNQUFNLEdBQUdGLG9CQUFvQixDQUFDVCxZQUFELENBQTdCO0FBQ0E7O0FBQ0YsU0FBS3hCLFlBQVksQ0FBQ0Usa0JBQWxCO0FBQ0VpQyxNQUFBQSxNQUFNLEdBQUdZLHdCQUF3QixDQUFDL0IsZ0JBQUQsQ0FBakM7QUFDQTtBQVBKOztBQVVBLFNBQU9tQixNQUFQO0FBQ0QsQ0FoQk0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZGVmYXVsdHMgZnJvbSAnLi9kZWZhdWx0cyc7XG5pbXBvcnQgeyBtYXJrdXBUb1RleHQgfSBmcm9tICcuL3V0aWxzJztcblxuLy8gdG9kbyB0aGUgaW1wb3J0IGZyb20gcGllLWxpYi9ydWJyaWMgbWlnaHQgYnJlYWsgd2VicGFja1xuY29uc3QgUlVCUklDX1RZUEVTID0ge1xuICBTSU1QTEVfUlVCUklDOiAnc2ltcGxlUnVicmljJyxcbiAgTVVMVElfVFJBSVRfUlVCUklDOiAnbXVsdGlUcmFpdFJ1YnJpYycsXG4gICdydWJyaWNsZXNzJzogJ3J1YnJpY2xlc3MnLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZURlZmF1bHRNb2RlbChtb2RlbCA9IHt9KSB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gcmVzb2x2ZSh7IC4uLmRlZmF1bHRzLm1vZGVsLCAuLi5tb2RlbCB9KSk7XG59XG5cbmV4cG9ydCBjb25zdCBub3JtYWxpemUgPSAocXVlc3Rpb24pID0+ICh7IC4uLmRlZmF1bHRzLm1vZGVsLCAuLi5xdWVzdGlvbiB9KTtcblxuLyoqXG4gKiBAcGFyYW0geyp9IHF1ZXN0aW9uXG4gKiBAcGFyYW0geyp9IHNlc3Npb25cbiAqIEBwYXJhbSB7Kn0gZW52XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtb2RlbChxdWVzdGlvbiwgc2Vzc2lvbiwgZW52KSB7XG4gIGNvbnN0IG5vcm1hbGl6ZWRRdWVzdGlvbiA9IG5vcm1hbGl6ZShxdWVzdGlvbik7XG5cbiAgaWYgKG5vcm1hbGl6ZWRRdWVzdGlvbi5ydWJyaWNUeXBlID09PSBSVUJSSUNfVFlQRVMuU0lNUExFX1JVQlJJQyB8fCBub3JtYWxpemVkUXVlc3Rpb24ucnVicmljVHlwZSA9PT0gJ3J1YnJpY2xlc3MnKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICByZXNvbHZlKFxuICAgICAgICBlbnYgJiYgZW52LnJvbGUgJiYgZW52LnJvbGUgPT09ICdpbnN0cnVjdG9yJ1xuICAgICAgICAgID8ge1xuICAgICAgICAgICAgLi4ubm9ybWFsaXplZFF1ZXN0aW9uLFxuICAgICAgICAgICAgcnVicmljczoge1xuICAgICAgICAgICAgICAuLi5ub3JtYWxpemVkUXVlc3Rpb24ucnVicmljcyxcbiAgICAgICAgICAgICAgbXVsdGlUcmFpdFJ1YnJpYzoge1xuICAgICAgICAgICAgICAgIC4uLm5vcm1hbGl6ZWRRdWVzdGlvbi5ydWJyaWNzLm11bHRpVHJhaXRSdWJyaWMsXG4gICAgICAgICAgICAgICAgdmlzaWJsZTogZmFsc2UsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9LFxuICAgICAgKTtcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBpZiAoXG4gICAgICAhZW52LnJvbGUgfHxcbiAgICAgIChlbnYucm9sZSA9PT0gJ3N0dWRlbnQnICYmIG5vcm1hbGl6ZWRRdWVzdGlvbi5ydWJyaWNzICYmIG5vcm1hbGl6ZWRRdWVzdGlvbi5ydWJyaWNzLm11bHRpVHJhaXRSdWJyaWMpXG4gICAgKSB7XG4gICAgICBub3JtYWxpemVkUXVlc3Rpb24ucnVicmljcy5tdWx0aVRyYWl0UnVicmljLnZpc2libGUgPSBub3JtYWxpemVkUXVlc3Rpb24udmlzaWJsZVRvU3R1ZGVudDtcbiAgICB9IGVsc2Uge1xuICAgICAgbm9ybWFsaXplZFF1ZXN0aW9uLnJ1YnJpY3MubXVsdGlUcmFpdFJ1YnJpYy52aXNpYmxlID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyB0b2RvIHVwZGF0ZSBwaWUtdWkgaW5zdGVhZCBvZiBwYXJzaW5nIHRoaXMgaGVyZTpcbiAgICBjb25zdCB7IHNjYWxlcywgZXhjbHVkZVplcm8gfSA9IG5vcm1hbGl6ZWRRdWVzdGlvbi5ydWJyaWNzLm11bHRpVHJhaXRSdWJyaWMgfHwge307XG4gICAgY29uc3QgcGFyc2VkU2NhbGVzID0gKHNjYWxlcyB8fCBbXSkubWFwKChzY2FsZSkgPT4gKHsgLi4uc2NhbGUsIGV4Y2x1ZGVaZXJvIH0pKTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5ub3JtYWxpemVkUXVlc3Rpb24sXG4gICAgICBydWJyaWNzOiB7XG4gICAgICAgIC4uLm5vcm1hbGl6ZWRRdWVzdGlvbi5ydWJyaWNzLFxuICAgICAgICBzaW1wbGVSdWJyaWM6IHtcbiAgICAgICAgICAuLi5ub3JtYWxpemVkUXVlc3Rpb24ucnVicmljcy5zaW1wbGVSdWJyaWMsXG4gICAgICAgICAgdmlzaWJsZTogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIHJ1YnJpY2xlc3M6IHtcbiAgICAgICAgICAuLi5ub3JtYWxpemVkUXVlc3Rpb24ucnVicmljcy5ydWJyaWNsZXNzLFxuICAgICAgICAgIHZpc2libGU6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICBtdWx0aVRyYWl0UnVicmljOiB7XG4gICAgICAgICAgLi4ubm9ybWFsaXplZFF1ZXN0aW9uLnJ1YnJpY3MubXVsdGlUcmFpdFJ1YnJpYyxcbiAgICAgICAgICBzY2FsZXM6IHBhcnNlZFNjYWxlcyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZ2V0U2NvcmUgPSAoKSA9PiAwO1xuXG4vKipcbiAqIEBwYXJhbSB7T2JqZWN0fSBtb2RlbCAtIHRoZSBtYWluIG1vZGVsXG4gKiBAcGFyYW0geyp9IHNlc3Npb25cbiAqIEBwYXJhbSB7T2JqZWN0fSBlbnZcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG91dGNvbWUoKSB7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gcmVzb2x2ZSh7IHNjb3JlOiAwLCBlbXB0eTogdHJ1ZSB9KSk7XG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVDb3JyZWN0UmVzcG9uc2VTZXNzaW9uID0gKHF1ZXN0aW9uLCBlbnYpID0+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgaWYgKGVudi5tb2RlICE9PSAnZXZhbHVhdGUnICYmIGVudi5yb2xlID09PSAnaW5zdHJ1Y3RvcicpIHtcbiAgICAgIHJlc29sdmUoeyBpZDogJzEnIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXNvbHZlKG51bGwpO1xuICAgIH1cbiAgfSk7XG59O1xuXG4vLyBJTVBPUlRBTlQhIFRoaXMgZnVuY3Rpb24gaXMgYSBkdXBsaWNhdGUgb2YgcnVicmljL2NvbnRyb2xsZXIvdmFsaWRhdGUgZnVuY3Rpb24hXG4vLyBJZiB5b3UgbWFrZSBhbnkgY2hhbmdlcyB0byB0aGlzIGZ1bmN0aW9uLCBwbGVhc2UgbWFrZSBzdXJlIHlvdSBhbHNvIHVwZGF0ZSBydWJyaWMvY29udHJvbGxlci92YWxpZGF0ZSBmdW5jdGlvbiHigJwuXG5jb25zdCB2YWxpZGF0ZVNpbXBsZVJ1YnJpYyA9IChtb2RlbCkgPT4ge1xuICBjb25zdCB7IHBvaW50cyB9ID0gbW9kZWw7XG4gIGNvbnN0IGVycm9ycyA9IHt9O1xuICBjb25zdCBwb2ludHNEZXNjcmlwdG9yc0Vycm9ycyA9IHt9O1xuXG4gIChwb2ludHMgfHwgW10pLmZvckVhY2goKHBvaW50LCBpbmRleCkgPT4ge1xuICAgIGlmKCFwb2ludHx8IHBvaW50ID09PSAnPGRpdj48L2Rpdj4nKSB7XG4gICAgICBwb2ludHNEZXNjcmlwdG9yc0Vycm9yc1tpbmRleF0gPSAnUG9pbnRzIGRlc2NyaXB0b3JzIGNhbm5vdCBiZSBlbXB0eS4nO1xuICAgIH1cbiAgICBlbHNle1xuICAgICAgY29uc3QgaWRlbnRpY2FsUG9pbnREZXNjciA9IHBvaW50cy5zbGljZShpbmRleCArIDEpLnNvbWUocCA9PiBtYXJrdXBUb1RleHQocCkgPT09IG1hcmt1cFRvVGV4dChwb2ludCkpO1xuXG4gICAgICBpZiAoaWRlbnRpY2FsUG9pbnREZXNjcikge1xuICAgICAgICBwb2ludHNEZXNjcmlwdG9yc0Vycm9yc1tpbmRleF0gPSAnUG9pbnRzIGRlc2NyaXB0b3JzIHNob3VsZCBiZSB1bmlxdWUuJztcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIGlmKE9iamVjdC5rZXlzKHBvaW50c0Rlc2NyaXB0b3JzRXJyb3JzKS5sZW5ndGggPiAwKXtcbiAgICBlcnJvcnMucG9pbnRzRGVzY3JpcHRvcnNFcnJvcnMgPSBwb2ludHNEZXNjcmlwdG9yc0Vycm9ycztcbiAgfVxuXG4gIHJldHVybiBlcnJvcnM7XG59O1xuXG4vLyBJTVBPUlRBTlQhIFRoaXMgZnVuY3Rpb24gaXMgYSBkdXBsaWNhdGUgb2YgbXVsdGktdHJhaXQtcnVicmljL2NvbnRyb2xsZXIvdmFsaWRhdGUgZnVuY3Rpb24hXG4vLyBJZiB5b3UgbWFrZSBhbnkgY2hhbmdlcyB0byB0aGlzIGZ1bmN0aW9uLCBwbGVhc2UgbWFrZSBzdXJlIHlvdSBhbHNvIHVwZGF0ZSBtdWx0aS10cmFpdC1ydWJyaWMvY29udHJvbGxlci92YWxpZGF0ZSBmdW5jdGlvbiHigJwuXG5jb25zdCB2YWxpZGF0ZU11bHRpVHJhaXRSdWJyaWMgPSAobW9kZWwpID0+IHtcbiAgY29uc3QgeyBzY2FsZXMsIGRlc2NyaXB0aW9uID0gZmFsc2UsIHBvaW50TGFiZWxzID0gZmFsc2UgfSA9IG1vZGVsO1xuICBjb25zdCBlcnJvcnMgPSB7fTtcbiAgY29uc3QgdHJhaXRzRXJyb3JzID0ge307XG4gIGNvbnN0IHNjb3JlUG9pbnRzRXJyb3JzID0ge307XG5cbiAgKHNjYWxlcyB8fCBbXSkuZm9yRWFjaCgoc2NhbGUsIHNjYWxlSW5kZXgpID0+IHtcbiAgICBjb25zdCB7IHRyYWl0cyA9IFtdIH0gPSBzY2FsZTtcbiAgICBjb25zdCB7IHNjb3JlUG9pbnRzTGFiZWxzID0gW10gfSA9IHNjYWxlO1xuICAgIGNvbnN0IHNjYWxlRXJyb3JzID0ge307XG4gICAgY29uc3Qgc2NvcmVQb2ludHNMYWJlbHNFcnJvcnMgPSB7fTtcblxuICAgIGlmKHBvaW50TGFiZWxzKSB7XG4gICAgICBzY29yZVBvaW50c0xhYmVscy5mb3JFYWNoKChzY29yZVBvaW50TGFiZWwsIHNjb3JlSW5kZXgpID0+IHtcbiAgICAgICAgaWYgKCFzY29yZVBvaW50TGFiZWwgfHwgc2NvcmVQb2ludExhYmVsID09PSAnPGRpdj48L2Rpdj4nKSB7XG4gICAgICAgICAgc2NvcmVQb2ludHNMYWJlbHNFcnJvcnNbc2NvcmVJbmRleF0gPSAnUG9pbnRzIGxhYmVscyBzaG91bGQgbm90IGJlIGVtcHR5Lic7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgaWRlbnRpY2FsU2NvcmVQb2ludExhYmVsID0gc2NvcmVQb2ludHNMYWJlbHMuc2xpY2Uoc2NvcmVJbmRleCArIDEpLnNvbWUocyA9PiBtYXJrdXBUb1RleHQocykgPT09IG1hcmt1cFRvVGV4dChzY29yZVBvaW50TGFiZWwpKTtcblxuICAgICAgICAgIGlmIChpZGVudGljYWxTY29yZVBvaW50TGFiZWwpIHtcbiAgICAgICAgICAgIHNjb3JlUG9pbnRzTGFiZWxzRXJyb3JzW3Njb3JlSW5kZXhdID0gJ1BvaW50cyBsYWJlbHMgc2hvdWxkIGJlIHVuaXF1ZS4nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG5cbiAgICBpZihPYmplY3Qua2V5cyhzY29yZVBvaW50c0xhYmVsc0Vycm9ycykubGVuZ3RoID4gMCl7XG4gICAgICBzY29yZVBvaW50c0Vycm9yc1tzY2FsZUluZGV4XSA9IHNjb3JlUG9pbnRzTGFiZWxzRXJyb3JzO1xuICAgIH1cblxuICAgIHRyYWl0cy5mb3JFYWNoKCh0cmFpdCwgdHJhaXRJbmRleCkgPT4ge1xuICAgICAgaWYoIXRyYWl0Lm5hbWUgfHwgdHJhaXQubmFtZSA9PT0gJzxkaXY+PC9kaXY+Jykge1xuICAgICAgICBzY2FsZUVycm9yc1t0cmFpdEluZGV4XSA9IHtuYW1lOiAnVHJhaXQgbmFtZXMgc2hvdWxkIG5vdCBiZSBlbXB0eS4nfTtcbiAgICAgIH1cbiAgICAgIGVsc2V7XG4gICAgICAgIGNvbnN0IGlkZW50aWNhbFRyYWl0TmFtZSA9IHRyYWl0cy5zbGljZSh0cmFpdEluZGV4ICsgMSkuc29tZSh0ID0+IG1hcmt1cFRvVGV4dCh0Lm5hbWUpID09PSBtYXJrdXBUb1RleHQodHJhaXQubmFtZSkpO1xuXG4gICAgICAgIGlmIChpZGVudGljYWxUcmFpdE5hbWUpIHtcbiAgICAgICAgICBzY2FsZUVycm9yc1t0cmFpdEluZGV4XSA9IHtuYW1lOiAnVHJhaXQgbmFtZXMgc2hvdWxkIGJlIHVuaXF1ZS4nfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYoZGVzY3JpcHRpb24gJiYgKCF0cmFpdC5kZXNjcmlwdGlvbiB8fCB0cmFpdC5kZXNjcmlwdGlvbiA9PT0gJzxkaXY+PC9kaXY+JykpIHtcbiAgICAgICAgc2NhbGVFcnJvcnNbdHJhaXRJbmRleF0gPSB7Li4uIHNjYWxlRXJyb3JzW3RyYWl0SW5kZXhdLCBkZXNjcmlwdGlvbjogJ1RyYWl0IGRlc2NyaXB0aW9uIHNob3VsZCBub3QgYmUgZW1wdHknfTtcbiAgICAgIH1cbiAgICAgIGVsc2V7XG4gICAgICAgIGNvbnN0IGlkZW50aWNhbFRyYWl0RGVzY3IgPSB0cmFpdHMuc2xpY2UodHJhaXRJbmRleCArIDEpLnNvbWUodCA9PiBtYXJrdXBUb1RleHQodC5kZXNjcmlwdGlvbikgPT09IG1hcmt1cFRvVGV4dCh0cmFpdC5kZXNjcmlwdGlvbikpO1xuXG4gICAgICAgIGlmIChkZXNjcmlwdGlvbiAmJiBpZGVudGljYWxUcmFpdERlc2NyKSB7XG4gICAgICAgICAgc2NhbGVFcnJvcnNbdHJhaXRJbmRleF0gPSB7Li4uIHNjYWxlRXJyb3JzW3RyYWl0SW5kZXhdLCBkZXNjcmlwdGlvbjogJ1RyYWl0IGRlc2NyaXB0aW9ucyBzaG91bGQgYmUgdW5pcXVlLid9O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9KTtcbiAgICBpZihPYmplY3Qua2V5cyhzY2FsZUVycm9ycykubGVuZ3RoID4gMCl7XG4gICAgICB0cmFpdHNFcnJvcnNbc2NhbGVJbmRleF0gPSBzY2FsZUVycm9ycztcbiAgICB9XG4gIH0pO1xuXG4gIGlmKE9iamVjdC5rZXlzKHRyYWl0c0Vycm9ycykubGVuZ3RoID4gMCl7XG4gICAgZXJyb3JzLnRyYWl0c0Vycm9ycyA9IHRyYWl0c0Vycm9ycztcbiAgfVxuXG4gIGlmKE9iamVjdC5rZXlzKHNjb3JlUG9pbnRzRXJyb3JzKS5sZW5ndGggPiAwKXtcbiAgICBlcnJvcnMuc2NvcmVQb2ludHNFcnJvcnMgPSBzY29yZVBvaW50c0Vycm9ycztcbiAgfVxuXG4gIHJldHVybiBlcnJvcnM7XG59O1xuXG5cbmV4cG9ydCBjb25zdCB2YWxpZGF0ZSA9IChtb2RlbCA9IHt9LCBjb25maWcgPSB7fSkgPT4ge1xuICBjb25zdCB7IHJ1YnJpY3MgPSB7fSwgcnVicmljVHlwZSB9ID0gbW9kZWw7XG4gIGNvbnN0IHsgbXVsdGlUcmFpdFJ1YnJpYyA9IHt9LCBzaW1wbGVSdWJyaWMgPSB7fSB9ID0gcnVicmljcztcbiAgbGV0IGVycm9ycyA9IHt9O1xuXG4gIHN3aXRjaCAocnVicmljVHlwZSkge1xuICAgIGNhc2UgUlVCUklDX1RZUEVTLlNJTVBMRV9SVUJSSUM6XG4gICAgZGVmYXVsdDpcbiAgICAgIGVycm9ycyA9IHZhbGlkYXRlU2ltcGxlUnVicmljKHNpbXBsZVJ1YnJpYyk7XG4gICAgICBicmVhaztcbiAgICBjYXNlIFJVQlJJQ19UWVBFUy5NVUxUSV9UUkFJVF9SVUJSSUM6XG4gICAgICBlcnJvcnMgPSB2YWxpZGF0ZU11bHRpVHJhaXRSdWJyaWMobXVsdGlUcmFpdFJ1YnJpYyk7XG4gICAgICBicmVhaztcbiAgfVxuXG4gIHJldHVybiBlcnJvcnM7XG59O1xuIl19
|
|
301
|
+
//# sourceMappingURL=index.js.map
|