@instructure/quiz-core 17.53.0 → 17.53.1-rc.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.
- package/es/common/components/layout/Page/index.js +3 -1
- package/es/messages/postMessageService.js +7 -0
- package/es/messages/subjectHandlers/forwardMessage.js +7 -0
- package/es/messages/subjectHandlers/lti.scrollToTop.js +15 -0
- package/lib/common/components/layout/Page/index.js +3 -1
- package/lib/messages/postMessageService.js +9 -0
- package/lib/messages/subjectHandlers/forwardMessage.js +15 -0
- package/lib/messages/subjectHandlers/lti.scrollToTop.js +23 -0
- package/package.json +10 -10
|
@@ -49,6 +49,7 @@ export var Page = (_dec = themeable(theme, styles), _dec(_class = (_temp = _clas
|
|
|
49
49
|
key: "render",
|
|
50
50
|
value: function render() {
|
|
51
51
|
var childrenWrapperStyles = classnames(styles.content, _defineProperty({}, styles.scrollable, this.shouldRenderSidebar()));
|
|
52
|
+
var scrollableToolContainerId = 'scrollable-tool-container';
|
|
52
53
|
return /*#__PURE__*/React.createElement("div", {
|
|
53
54
|
className: styles.wrapper
|
|
54
55
|
}, this.shouldRenderSidebar() ? this.renderSidebar() : null, /*#__PURE__*/React.createElement("div", {
|
|
@@ -56,7 +57,8 @@ export var Page = (_dec = themeable(theme, styles), _dec(_class = (_temp = _clas
|
|
|
56
57
|
tabIndex: "-1",
|
|
57
58
|
ref: this.props.childrenWrapperRef,
|
|
58
59
|
role: this.props.contentRole,
|
|
59
|
-
className: childrenWrapperStyles
|
|
60
|
+
className: childrenWrapperStyles,
|
|
61
|
+
id: scrollableToolContainerId
|
|
60
62
|
}, this.props.children));
|
|
61
63
|
}
|
|
62
64
|
}]);
|
|
@@ -2,6 +2,8 @@ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
|
2
2
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
3
3
|
import handleFrameResize from './subjectHandlers/lti.frameResize';
|
|
4
4
|
import handleCapabilities from './subjectHandlers/lti.capabilities';
|
|
5
|
+
import forwardMessage from "./subjectHandlers/forwardMessage.js";
|
|
6
|
+
import handleScrollToTop from './subjectHandlers/lti.scrollToTop';
|
|
5
7
|
|
|
6
8
|
var PostMessageService = function PostMessageService() {
|
|
7
9
|
var _this = this;
|
|
@@ -61,6 +63,11 @@ var PostMessageService = function PostMessageService() {
|
|
|
61
63
|
this.handlerMap = new Map();
|
|
62
64
|
this.handlerMap.set('lti.frameResize', handleFrameResize);
|
|
63
65
|
this.handlerMap.set('lti.capabilities', handleCapabilities);
|
|
66
|
+
this.handlerMap.set('lti.setUnloadMessage', forwardMessage);
|
|
67
|
+
this.handlerMap.set('lti.removeUnloadMessage', forwardMessage);
|
|
68
|
+
this.handlerMap.set('lti.screenReaderAlert', forwardMessage);
|
|
69
|
+
this.handlerMap.set('lti.showAlert', forwardMessage);
|
|
70
|
+
this.handlerMap.set('lti.scrollToTop', handleScrollToTop);
|
|
64
71
|
};
|
|
65
72
|
|
|
66
73
|
export { PostMessageService as default };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
var handleScrollToTop = function handleScrollToTop(event, postMessageService) {
|
|
2
|
+
var container = document.getElementById('scrollable-tool-container');
|
|
3
|
+
|
|
4
|
+
if (container) {
|
|
5
|
+
container.scrollTo({
|
|
6
|
+
top: 0,
|
|
7
|
+
behavior: 'smooth'
|
|
8
|
+
});
|
|
9
|
+
postMessageService.sendSuccessPostMessageResponse('lti.scrollToTop', void 0, event.source);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
return false;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export default handleScrollToTop;
|
|
@@ -68,6 +68,7 @@ var Page = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
|
|
|
68
68
|
key: "render",
|
|
69
69
|
value: function render() {
|
|
70
70
|
var childrenWrapperStyles = (0, _classnames2.default)(styles.content, (0, _defineProperty2.default)({}, styles.scrollable, this.shouldRenderSidebar()));
|
|
71
|
+
var scrollableToolContainerId = 'scrollable-tool-container';
|
|
71
72
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
72
73
|
className: styles.wrapper
|
|
73
74
|
}, this.shouldRenderSidebar() ? this.renderSidebar() : null, /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -75,7 +76,8 @@ var Page = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
|
|
|
75
76
|
tabIndex: "-1",
|
|
76
77
|
ref: this.props.childrenWrapperRef,
|
|
77
78
|
role: this.props.contentRole,
|
|
78
|
-
className: childrenWrapperStyles
|
|
79
|
+
className: childrenWrapperStyles,
|
|
80
|
+
id: scrollableToolContainerId
|
|
79
81
|
}, this.props.children));
|
|
80
82
|
}
|
|
81
83
|
}]);
|
|
@@ -15,6 +15,10 @@ var _lti = _interopRequireDefault(require("./subjectHandlers/lti.frameResize"));
|
|
|
15
15
|
|
|
16
16
|
var _lti2 = _interopRequireDefault(require("./subjectHandlers/lti.capabilities"));
|
|
17
17
|
|
|
18
|
+
var _forwardMessage = _interopRequireDefault(require("./subjectHandlers/forwardMessage.js"));
|
|
19
|
+
|
|
20
|
+
var _lti3 = _interopRequireDefault(require("./subjectHandlers/lti.scrollToTop"));
|
|
21
|
+
|
|
18
22
|
var PostMessageService = function PostMessageService() {
|
|
19
23
|
var _this = this;
|
|
20
24
|
|
|
@@ -73,6 +77,11 @@ var PostMessageService = function PostMessageService() {
|
|
|
73
77
|
this.handlerMap = new Map();
|
|
74
78
|
this.handlerMap.set('lti.frameResize', _lti.default);
|
|
75
79
|
this.handlerMap.set('lti.capabilities', _lti2.default);
|
|
80
|
+
this.handlerMap.set('lti.setUnloadMessage', _forwardMessage.default);
|
|
81
|
+
this.handlerMap.set('lti.removeUnloadMessage', _forwardMessage.default);
|
|
82
|
+
this.handlerMap.set('lti.screenReaderAlert', _forwardMessage.default);
|
|
83
|
+
this.handlerMap.set('lti.showAlert', _forwardMessage.default);
|
|
84
|
+
this.handlerMap.set('lti.scrollToTop', _lti3.default);
|
|
76
85
|
};
|
|
77
86
|
|
|
78
87
|
exports.default = PostMessageService;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var forwardMessage = function forwardMessage(event, _) {
|
|
9
|
+
if (window !== window.parent) {
|
|
10
|
+
window.parent.postMessage(event.data, '*');
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
var _default = forwardMessage;
|
|
15
|
+
exports.default = _default;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var handleScrollToTop = function handleScrollToTop(event, postMessageService) {
|
|
9
|
+
var container = document.getElementById('scrollable-tool-container');
|
|
10
|
+
|
|
11
|
+
if (container) {
|
|
12
|
+
container.scrollTo({
|
|
13
|
+
top: 0,
|
|
14
|
+
behavior: 'smooth'
|
|
15
|
+
});
|
|
16
|
+
postMessageService.sendSuccessPostMessageResponse('lti.scrollToTop', void 0, event.source);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
return false;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
var _default = handleScrollToTop;
|
|
23
|
+
exports.default = _default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@instructure/quiz-core",
|
|
3
|
-
"version": "17.53.
|
|
3
|
+
"version": "17.53.1-rc.1+95e89c485",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "The Quiz React SDK by Instructure Inc.",
|
|
6
6
|
"author": "Instructure, Inc. Engineering and Product Design",
|
|
@@ -41,11 +41,11 @@
|
|
|
41
41
|
],
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@instructure/outcomes-ui": "^2.1.7",
|
|
44
|
-
"@instructure/quiz-common": "
|
|
45
|
-
"@instructure/quiz-i18n": "
|
|
46
|
-
"@instructure/quiz-interactions": "
|
|
47
|
-
"@instructure/quiz-number-input": "
|
|
48
|
-
"@instructure/quiz-rce": "
|
|
44
|
+
"@instructure/quiz-common": "17.53.1-rc.1+95e89c485",
|
|
45
|
+
"@instructure/quiz-i18n": "17.53.1-rc.1+95e89c485",
|
|
46
|
+
"@instructure/quiz-interactions": "17.53.1-rc.1+95e89c485",
|
|
47
|
+
"@instructure/quiz-number-input": "17.53.1-rc.1+95e89c485",
|
|
48
|
+
"@instructure/quiz-rce": "17.53.1-rc.1+95e89c485",
|
|
49
49
|
"@instructure/ui-a11y-content": "^7.20.0",
|
|
50
50
|
"@instructure/ui-alerts": "^7.20.0",
|
|
51
51
|
"@instructure/ui-avatar": "^7.20.0",
|
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
"eventemitter3": "^3.1.0",
|
|
107
107
|
"humps": "^2.0.0",
|
|
108
108
|
"immutable": "^3.8.1",
|
|
109
|
-
"instructure-validations": "
|
|
109
|
+
"instructure-validations": "17.53.1-rc.1+95e89c485",
|
|
110
110
|
"ipaddr.js": "^1.5.4",
|
|
111
111
|
"isomorphic-fetch": "^2.2.0",
|
|
112
112
|
"isuuid": "^0.1.0",
|
|
@@ -137,7 +137,7 @@
|
|
|
137
137
|
"uuid": "^3.2.1"
|
|
138
138
|
},
|
|
139
139
|
"devDependencies": {
|
|
140
|
-
"@instructure/quiz-scripts": "
|
|
140
|
+
"@instructure/quiz-scripts": "17.53.0",
|
|
141
141
|
"@instructure/ui-axe-check": "^7.20.0",
|
|
142
142
|
"@instructure/ui-babel-preset": "^7.20.0",
|
|
143
143
|
"@instructure/ui-karma-config": "^7.20.0",
|
|
@@ -156,7 +156,7 @@
|
|
|
156
156
|
"intl": "^1.2.4",
|
|
157
157
|
"jquery": "^2.2.3",
|
|
158
158
|
"most-subject": "^5.3.0",
|
|
159
|
-
"quiz-presets": "
|
|
159
|
+
"quiz-presets": "17.53.1-rc.1+95e89c485",
|
|
160
160
|
"react": "^16.8.6",
|
|
161
161
|
"react-addons-test-utils": "^15.6.2",
|
|
162
162
|
"react-dom": "^16.8.6",
|
|
@@ -172,5 +172,5 @@
|
|
|
172
172
|
"publishConfig": {
|
|
173
173
|
"access": "public"
|
|
174
174
|
},
|
|
175
|
-
"gitHead": "
|
|
175
|
+
"gitHead": "95e89c485d521d802218f90909273009f03d62bf"
|
|
176
176
|
}
|