@caspingus/lt
Version:
A utility library of helpers and extensions useful when working with Learnosity APIs.
83 lines (66 loc) • 26.7 kB
HTML
<html lang="en" style="font-size:16px"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="./src/assets/images/favicon.ico"><meta name="author" content="Michael Sharman"><meta name="description" content="A utility library of helper modules and extensions that may be useful if you're developing with Learnosity APIs."><title>Learnosity Toolkit</title><!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]--><script src="scripts/third-party/hljs.js" defer="defer"></script><script src="scripts/third-party/hljs-line-num.js" defer="defer"></script><script src="scripts/third-party/popper.js" defer="defer"></script><script src="scripts/third-party/tippy.js" defer="defer"></script><script src="scripts/third-party/tocbot.min.js"></script><script>var baseURL="/",locationPathname="";baseURL=(baseURL=(baseURL="https://michaelsharman.github.io/LT/").replace(/https?:\/\//i,"")).substr(baseURL.indexOf("/"))</script><link rel="stylesheet" href="styles/clean-jsdoc-theme.min.css"><svg aria-hidden="true" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="display:none"><defs><symbol id="copy-icon" viewbox="0 0 488.3 488.3"><g><path d="M314.25,85.4h-227c-21.3,0-38.6,17.3-38.6,38.6v325.7c0,21.3,17.3,38.6,38.6,38.6h227c21.3,0,38.6-17.3,38.6-38.6V124 C352.75,102.7,335.45,85.4,314.25,85.4z M325.75,449.6c0,6.4-5.2,11.6-11.6,11.6h-227c-6.4,0-11.6-5.2-11.6-11.6V124 c0-6.4,5.2-11.6,11.6-11.6h227c6.4,0,11.6,5.2,11.6,11.6V449.6z"/><path d="M401.05,0h-227c-21.3,0-38.6,17.3-38.6,38.6c0,7.5,6,13.5,13.5,13.5s13.5-6,13.5-13.5c0-6.4,5.2-11.6,11.6-11.6h227 c6.4,0,11.6,5.2,11.6,11.6v325.7c0,6.4-5.2,11.6-11.6,11.6c-7.5,0-13.5,6-13.5,13.5s6,13.5,13.5,13.5c21.3,0,38.6-17.3,38.6-38.6 V38.6C439.65,17.3,422.35,0,401.05,0z"/></g></symbol><symbol id="search-icon" viewBox="0 0 512 512"><g><g><path d="M225.474,0C101.151,0,0,101.151,0,225.474c0,124.33,101.151,225.474,225.474,225.474 c124.33,0,225.474-101.144,225.474-225.474C450.948,101.151,349.804,0,225.474,0z M225.474,409.323 c-101.373,0-183.848-82.475-183.848-183.848S124.101,41.626,225.474,41.626s183.848,82.475,183.848,183.848 S326.847,409.323,225.474,409.323z"/></g></g><g><g><path d="M505.902,476.472L386.574,357.144c-8.131-8.131-21.299-8.131-29.43,0c-8.131,8.124-8.131,21.306,0,29.43l119.328,119.328 c4.065,4.065,9.387,6.098,14.715,6.098c5.321,0,10.649-2.033,14.715-6.098C514.033,497.778,514.033,484.596,505.902,476.472z"/></g></g></symbol><symbol id="font-size-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M11.246 15H4.754l-2 5H.6L7 4h2l6.4 16h-2.154l-2-5zm-.8-2L8 6.885 5.554 13h4.892zM21 12.535V12h2v8h-2v-.535a4 4 0 1 1 0-6.93zM19 18a2 2 0 1 0 0-4 2 2 0 0 0 0 4z"/></symbol><symbol id="add-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M11 11V5h2v6h6v2h-6v6h-2v-6H5v-2z"/></symbol><symbol id="minus-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M5 11h14v2H5z"/></symbol><symbol id="dark-theme-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M10 7a7 7 0 0 0 12 4.9v.1c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2h.1A6.979 6.979 0 0 0 10 7zm-6 5a8 8 0 0 0 15.062 3.762A9 9 0 0 1 8.238 4.938 7.999 7.999 0 0 0 4 12z"/></symbol><symbol id="light-theme-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 18a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM11 1h2v3h-2V1zm0 19h2v3h-2v-3zM3.515 4.929l1.414-1.414L7.05 5.636 5.636 7.05 3.515 4.93zM16.95 18.364l1.414-1.414 2.121 2.121-1.414 1.414-2.121-2.121zm2.121-14.85l1.414 1.415-2.121 2.121-1.414-1.414 2.121-2.121zM5.636 16.95l1.414 1.414-2.121 2.121-1.414-1.414 2.121-2.121zM23 11v2h-3v-2h3zM4 11v2H1v-2h3z"/></symbol><symbol id="reset-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M18.537 19.567A9.961 9.961 0 0 1 12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10c0 2.136-.67 4.116-1.81 5.74L17 12h3a8 8 0 1 0-2.46 5.772l.997 1.795z"/></symbol><symbol id="down-icon" viewBox="0 0 16 16"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.7803 6.21967C13.0732 6.51256 13.0732 6.98744 12.7803 7.28033L8.53033 11.5303C8.23744 11.8232 7.76256 11.8232 7.46967 11.5303L3.21967 7.28033C2.92678 6.98744 2.92678 6.51256 3.21967 6.21967C3.51256 5.92678 3.98744 5.92678 4.28033 6.21967L8 9.93934L11.7197 6.21967C12.0126 5.92678 12.4874 5.92678 12.7803 6.21967Z"></path></symbol><symbol id="codepen-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M16.5 13.202L13 15.535v3.596L19.197 15 16.5 13.202zM14.697 12L12 10.202 9.303 12 12 13.798 14.697 12zM20 10.869L18.303 12 20 13.131V10.87zM19.197 9L13 4.869v3.596l3.5 2.333L19.197 9zM7.5 10.798L11 8.465V4.869L4.803 9 7.5 10.798zM4.803 15L11 19.131v-3.596l-3.5-2.333L4.803 15zM4 13.131L5.697 12 4 10.869v2.262zM2 9a1 1 0 0 1 .445-.832l9-6a1 1 0 0 1 1.11 0l9 6A1 1 0 0 1 22 9v6a1 1 0 0 1-.445.832l-9 6a1 1 0 0 1-1.11 0l-9-6A1 1 0 0 1 2 15V9z"/></symbol><symbol id="close-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636z"/></symbol><symbol id="menu-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"/></symbol></defs></svg></head><body data-theme="light"><div class="sidebar-container"><div class="sidebar" id="sidebar"><div class="logo"><a href="/LT/index.html"><img src="./src/assets/docs/images/lt-logo.svg" alt="Learnosity Toolkit logo"></a><span class="sr-only">Learnosity Toolkit</span></div><div class="sidebar-items-container"><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-authoring core"><div>Authoring Core</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Authoring_App.html">app</a></div><div class="sidebar-section-children"><a href="module-Authoring_Diagnostics.html">diagnostics</a></div><div class="sidebar-section-children"><a href="module-Authoring_Navigation.html">navigation</a></div><div class="sidebar-section-children"><a href="module-Authoring_Widgets.html">widgets</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-authoring extensions"><div>Authoring Extensions</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Extensions_Authoring_contentTabs.html">contentTabs</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_createTags.html">createTags</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_dynamicContent.html">dynamicContent</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_essayMaxLength.html">essayMaxLength</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_imageUploader.html">imageUploader</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_languageTextDirection.html">languageTextDirection</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_nativeTabs.html">nativeTabs</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_renderPDF.html">renderPDF</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_requiredTags.html">requiredTags</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_singleQuestion.html">singleQuestion</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-assessment core"><div>Assessment Core</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Assessment_Activity.html">activity</a></div><div class="sidebar-section-children"><a href="module-Assessment_App.html">app</a></div><div class="sidebar-section-children"><a href="module-Assessment_Diagnostics.html">diagnostics</a></div><div class="sidebar-section-children"><a href="module-Assessment_Items.html">items</a></div><div class="sidebar-section-children"><a href="module-Assessment_Player.html">player</a></div><div class="sidebar-section-children"><a href="module-Assessment_Questions.html">questions</a></div><div class="sidebar-section-children"><a href="module-Assessment_Sections.html">sections</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-assessment extensions"><div>Assessment Extensions</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Extensions_Assessment_ariaCountOnNav.html">ariaCountOnNav</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_blockGrammarChecks.html">blockGrammarChecks</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_blueLightFilter.html">blueLightFilter</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_checkAnswerValidation.html">checkAnswerValidation</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_columnResizer.html">columnResizer</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_contentTabs.html">contentTabs</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_disableOnValidate.html">disableOnValidate</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_essayLimitByCharacter.html">essayLimitByCharacter</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_events.html">events</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_hideAlternatives.html">hideAlternatives</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_keyboardShortcuts.html">keyboardShortcuts</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_magnifier.html">magnifier</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_mcqLabelPrefix.html">mcqLabelPrefix</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_networkStatus.html">networkStatus</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_readingMask.html">readingMask</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_renderPDF.html">renderPDF</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_resetResponse.html">resetResponse</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_resources_periodicTable.html">periodicTable</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_toggleTimer.html">toggleTimer</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_whiteNoise.html">whiteNoise</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-assessment themes"><div>Assessment Themes</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Extensions_Assessment_themes_canvas.html">canvas</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_themes_juniorQuest.html">juniorQuest</a></div></div></div></div></div><div class="navbar-container" id="VuAckcnZhf"><nav class="navbar"><div class="navbar-left-items"><div class="navbar-item"><a id="" href="https://github.com/michaelsharman/LT" target="">Github</a></div><div class="navbar-item"><a id="" href="https://www.npmjs.com/package/@caspingus/lt" target="">npm</a></div></div><div class="navbar-right-items"><div class="navbar-right-item"><button class="icon-button search-button" aria-label="open-search"><svg><use xlink:href="#search-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button theme-toggle" aria-label="toggle-theme"><svg><use class="theme-svg-use" xlink:href="#dark-theme-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button font-size" aria-label="change-font-size"><svg><use xlink:href="#font-size-icon"></use></svg></button></div></div><nav></nav></nav></div><div class="toc-container"><div class="toc-content"><span class="bold">On this page</span><div id="eed4d2a0bfd64539bb9df78095dec881"></div></div></div><div class="body-wrapper"><div class="main-content"><div class="main-wrapper"><section class="readme"><article><h1 id="lt---learnosity-toolkit">LT - Learnosity Toolkit</h1><p>This is a utility library of helper modules and extensions that may be useful if you're developing with Learnosity APIs.</p><p>Modules and extensions are separated between Assessment (when using Items API) and Authoring (when using Author API).</p><p>See <a href="https://michaelsharman.github.io/LT/">documentation here</a>.</p><h2 id="important">Important</h2><p>This package is unofficial and wasn't created by Learnosity.</p><p>No modules contained within:</p><ul><li>ever have access to the consumer private key (i.e. <code>consumer_secret</code>)</li><li>track any usage or personal information</li></ul><p>Everything is open source under the MIT license. Feel free to use as you see fit.</p><h2 id="installation">Installation</h2><pre class="prettyprint source"><code>npm install @caspingus/lt
</code></pre><h2 id="usage">Usage</h2><p>Depending on where you are, import either the assessment or authoring into your project. You can import <code>core</code> or <code>bundle</code> from both areas.</p><h2 id="core-vs-bundle">core vs bundle</h2><p><strong>Recommendation</strong> - use <code>core</code> in all production settings for greater control on file size.</p><p>The <code>core</code> module contains the LT toolkit only, no extensions. This is the smallest file size (around 16kB for assessment and 3kB for authoring) and may be all you need.</p><p>If you want 1 or 2 extensions, you should import them individually to keep the overall file size down.</p><pre class="prettyprint source"><code>import { LT } from '@caspingus/lt/assessment/core';
LT.init(itemsApp, {
extensions: [
'blockGrammarChecks',
'columnResizer',
'disableOnValidate',
],
});
</code></pre><p>The <code>bundle</code> module contains everything in <code>core</code> along with <em>all</em> extensions except themes. This is the largest file size (around 240kB for assessment and 1400kB for authoring) This is useful in development if you want to browse the extensions, but also if you happen to use all the extensions in your project.</p><pre class="prettyprint source"><code>import { LT } from '@caspingus/lt/assessment/bundle';
</code></pre><h2 id="initialize">Initialize</h2><p>Everything is written using ES6 modules. By default we use <code>LT</code> as a variable for the toolkit. If you want to change this, use named imports.</p><p><code>LT</code> expects to be given the API application instance in the <code>readyListener</code>, either Items API or Author API. From there you can call any method you want off the <code>LT</code> object.</p><h2 id="items-api">Items API</h2><pre class="prettyprint source"><code>// Declare and set your variable with the Items API LearnosityItems.init() method
const itemsApp = LearnosityItems.init(signedConfigObject);
// The rest of your API set-up code
// Pass that app instance to the Toolkit constructor
import { LT } from '@caspingus/lt/assessment/core';
LT.init(itemsApp, {
extensions: ['renderPDF'],
});
// Optionally add to the global scope (handy for development)
window.LT = LT;
</code></pre><h2 id="usage-examples">Usage examples</h2><pre class="prettyprint source"><code>import { LT } from '@caspingus/lt/assessment/core';
// See if the item was _fully_ attempted
LT.isItemFullyAttempted();
// See if we're on the last item in a section
LT.isLastItemInSection();
// See the question response object
LT.questionResponse();
</code></pre><h2 id="author-api">Author API</h2><pre class="prettyprint source"><code>// Declare and set your variable with the Author API LearnosityItems.init() method
const authorApp = LearnosityAuthor.init(signedConfigObject);
// The rest of your API set-up code
// Pass that app instance to the Toolkit constructor
import { LT } from '@caspingus/lt/authoring/core';
LT.init(authorApp);
// Optionally add to the global scope (for development)
window.LT = LT;
</code></pre><h2 id="usage-examples-1">Usage examples</h2><pre class="prettyprint source"><code>import { LT } from '@caspingus/lt/authoring/core';
// Injects a route hash to the URI so SPAs can load to a deep view from a full page refresh.
LT.routingHash();
</code></pre><h1 id="cdn">CDN</h1><p>If you don't have a build system, or want to get up and running quickly, you can import LT via a CDN.</p><p>You will still need to have a module to initialize, eg:</p><pre class="prettyprint source"><code><script src="./src/my-module.js" type="module"></script>
<script src="https://items.learnosity.com"></script>
<script>
const initializationObject = mySignedRequest;
const callbacks = {
readyListener: init,
errorListener: error
};
function init() {
// widow.launch() is an example method that is inside my-module.js
window.launch(itemsApp);
}
function error(err) {
console.error(err);
}
const itemsApp = LearnosityItems.init(initializationObject, callbacks);
</script>
// my-module.js
import { LT } from 'https://cdn.jsdelivr.net/npm/@caspingus/lt/dist/assessment/bundle.js';
window.launch = function (app) {
LT.init(app, {
extensions: ['toggleTimer']
});
window.LT = LT;
};
</code></pre></article></section></div></div></div><div class="search-container" id="PkfLWpAbet" style="display:none"><div class="wrapper" id="iCxFxjkHbP"><button class="icon-button search-close-button" id="VjLlGakifb" aria-label="close search"><svg><use xlink:href="#close-icon"></use></svg></button><div class="search-box-c"><svg><use xlink:href="#search-icon"></use></svg> <input type="text" id="vpcKVYIppa" class="search-input" placeholder="Search..." autofocus></div><div class="search-result-c" id="fWwVHRuDuN"><span class="search-result-c-text">Type anything to view search result</span></div></div></div><div class="mobile-menu-icon-container"><button class="icon-button" id="mobile-menu" data-isopen="false" aria-label="menu"><svg><use xlink:href="#menu-icon"></use></svg></button></div><div id="mobile-sidebar" class="mobile-sidebar-container"><div class="mobile-sidebar-wrapper"><div class="logo"><a href="/LT/index.html"><img src="./src/assets/docs/images/lt-logo.svg" alt="Learnosity Toolkit logo"></a><span class="sr-only">Learnosity Toolkit</span></div><div class="mobile-nav-links"><div class="navbar-item"><a id="" href="https://github.com/michaelsharman/LT" target="">Github</a></div><div class="navbar-item"><a id="" href="https://www.npmjs.com/package/@caspingus/lt" target="">npm</a></div></div><div class="mobile-sidebar-items-c"><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-authoring core"><div>Authoring Core</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Authoring_App.html">app</a></div><div class="sidebar-section-children"><a href="module-Authoring_Diagnostics.html">diagnostics</a></div><div class="sidebar-section-children"><a href="module-Authoring_Navigation.html">navigation</a></div><div class="sidebar-section-children"><a href="module-Authoring_Widgets.html">widgets</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-authoring extensions"><div>Authoring Extensions</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Extensions_Authoring_contentTabs.html">contentTabs</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_createTags.html">createTags</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_dynamicContent.html">dynamicContent</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_essayMaxLength.html">essayMaxLength</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_imageUploader.html">imageUploader</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_languageTextDirection.html">languageTextDirection</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_nativeTabs.html">nativeTabs</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_renderPDF.html">renderPDF</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_requiredTags.html">requiredTags</a></div><div class="sidebar-section-children"><a href="module-Extensions_Authoring_singleQuestion.html">singleQuestion</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-assessment core"><div>Assessment Core</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Assessment_Activity.html">activity</a></div><div class="sidebar-section-children"><a href="module-Assessment_App.html">app</a></div><div class="sidebar-section-children"><a href="module-Assessment_Diagnostics.html">diagnostics</a></div><div class="sidebar-section-children"><a href="module-Assessment_Items.html">items</a></div><div class="sidebar-section-children"><a href="module-Assessment_Player.html">player</a></div><div class="sidebar-section-children"><a href="module-Assessment_Questions.html">questions</a></div><div class="sidebar-section-children"><a href="module-Assessment_Sections.html">sections</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-assessment extensions"><div>Assessment Extensions</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Extensions_Assessment_ariaCountOnNav.html">ariaCountOnNav</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_blockGrammarChecks.html">blockGrammarChecks</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_blueLightFilter.html">blueLightFilter</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_checkAnswerValidation.html">checkAnswerValidation</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_columnResizer.html">columnResizer</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_contentTabs.html">contentTabs</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_disableOnValidate.html">disableOnValidate</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_essayLimitByCharacter.html">essayLimitByCharacter</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_events.html">events</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_hideAlternatives.html">hideAlternatives</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_keyboardShortcuts.html">keyboardShortcuts</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_magnifier.html">magnifier</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_mcqLabelPrefix.html">mcqLabelPrefix</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_networkStatus.html">networkStatus</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_readingMask.html">readingMask</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_renderPDF.html">renderPDF</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_resetResponse.html">resetResponse</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_resources_periodicTable.html">periodicTable</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_toggleTimer.html">toggleTimer</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_whiteNoise.html">whiteNoise</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-assessment themes"><div>Assessment Themes</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="module-Extensions_Assessment_themes_canvas.html">canvas</a></div><div class="sidebar-section-children"><a href="module-Extensions_Assessment_themes_juniorQuest.html">juniorQuest</a></div></div></div><div class="mobile-navbar-actions"><div class="navbar-right-item"><button class="icon-button search-button" aria-label="open-search"><svg><use xlink:href="#search-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button theme-toggle" aria-label="toggle-theme"><svg><use class="theme-svg-use" xlink:href="#dark-theme-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button font-size" aria-label="change-font-size"><svg><use xlink:href="#font-size-icon"></use></svg></button></div></div></div></div><script type="text/javascript" src="scripts/core.min.js"></script><script src="scripts/search.min.js" defer="defer"></script><script src="scripts/third-party/fuse.js" defer="defer"></script><script type="text/javascript">var tocbotInstance=tocbot.init({tocSelector:"#eed4d2a0bfd64539bb9df78095dec881",contentSelector:".main-content",headingSelector:"h1, h2, h3",hasInnerContainers:!0,scrollContainer:".main-content",headingsOffset:130,onClick:bringLinkToView})</script></body></html>