diff --git a/.build b/.build index 6ce761c0d1..411e1ab1bb 100644 --- a/.build +++ b/.build @@ -43,7 +43,7 @@ dist/lato-latin-ext-300-normal-VPGGJKJL.woff2 dist/lato-latin-ext-400-normal-N27NCBWW.woff2 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2 dist/remixicon-NKANDIL5.woff2 -dist/search_data-9432B728.js +dist/search_data-CA403A24.js dist/sidebar_items-ADA11C28.js end-user.html evaluationresponse.html diff --git a/OLI Torus.epub b/OLI Torus.epub index a8f7f6974b..fb7d8df852 100644 Binary files a/OLI Torus.epub and b/OLI Torus.epub differ diff --git a/activitycontext.html b/activitycontext.html index a3137a525b..64b208620a 100644 --- a/activitycontext.html +++ b/activitycontext.html @@ -139,97 +139,97 @@

bibParams

-

bibParams: any

Defined in

src/components/activities/DeliveryElement.ts:59


+

bibParams: any

Defined in

src/components/activities/DeliveryElement.ts:59


graded

-

graded: boolean

Defined in

src/components/activities/DeliveryElement.ts:52


+

graded: boolean

Defined in

src/components/activities/DeliveryElement.ts:52


groupId

-

groupId: null \| string

Defined in

src/components/activities/DeliveryElement.ts:57


+

groupId: null \| string

Defined in

src/components/activities/DeliveryElement.ts:57


isAnnotationLevel

-

isAnnotationLevel: boolean

Defined in

src/components/activities/DeliveryElement.ts:65


+

isAnnotationLevel: boolean

Defined in

src/components/activities/DeliveryElement.ts:65


learningLanguage

-

Optional learningLanguage: string

Defined in

src/components/activities/DeliveryElement.ts:56


+

Optional learningLanguage: string

Defined in

src/components/activities/DeliveryElement.ts:56


pageAttemptGuid

-

pageAttemptGuid: string

Defined in

src/components/activities/DeliveryElement.ts:60


+

pageAttemptGuid: string

Defined in

src/components/activities/DeliveryElement.ts:60


pageLinkParams

-

pageLinkParams: any

Defined in

src/components/activities/DeliveryElement.ts:67


+

pageLinkParams: any

Defined in

src/components/activities/DeliveryElement.ts:67


pageState

-

Optional pageState: any

Defined in

src/components/activities/DeliveryElement.ts:61


+

Optional pageState: any

Defined in

src/components/activities/DeliveryElement.ts:61


projectSlug

-

projectSlug: string

Defined in

src/components/activities/DeliveryElement.ts:54


+

projectSlug: string

Defined in

src/components/activities/DeliveryElement.ts:54


renderPointMarkers

-

renderPointMarkers: boolean

Defined in

src/components/activities/DeliveryElement.ts:64


+

renderPointMarkers: boolean

Defined in

src/components/activities/DeliveryElement.ts:64


resourceId

-

Optional resourceId: number

Defined in

src/components/activities/DeliveryElement.ts:63


+

Optional resourceId: number

Defined in

src/components/activities/DeliveryElement.ts:63


sectionSlug

-

sectionSlug: string

Defined in

src/components/activities/DeliveryElement.ts:53


+

sectionSlug: string

Defined in

src/components/activities/DeliveryElement.ts:53


showFeedback

-

showFeedback: null \| boolean

Defined in

src/components/activities/DeliveryElement.ts:62


+

showFeedback: null \| boolean

Defined in

src/components/activities/DeliveryElement.ts:62


surveyId

-

surveyId: null \| string

Defined in

src/components/activities/DeliveryElement.ts:58


+

surveyId: null \| string

Defined in

src/components/activities/DeliveryElement.ts:58


userId

-

userId: number

Defined in

src/components/activities/DeliveryElement.ts:55


+

userId: number

Defined in

src/components/activities/DeliveryElement.ts:55


variables

-

variables: any

Defined in

src/components/activities/DeliveryElement.ts:66

+

variables: any

Defined in

src/components/activities/DeliveryElement.ts:66

diff --git a/activitylevelscoring.html b/activitylevelscoring.html index d894f40820..e1831f7692 100644 --- a/activitylevelscoring.html +++ b/activitylevelscoring.html @@ -139,19 +139,19 @@

authoring

-

authoring: Object

Type declaration

NameType
partsPart[]

Defined in

src/components/activities/types.ts:622


+

authoring: Object

Type declaration

NameType
partsPart[]

Defined in

src/components/activities/types.ts:622


customScoring

-

Optional customScoring: boolean

Defined in

src/components/activities/types.ts:620


+

Optional customScoring: boolean

Defined in

src/components/activities/types.ts:620


scoringStrategy

-

Optional scoringStrategy: ScoringStrategy

Defined in

src/components/activities/types.ts:621

+

Optional scoringStrategy: ScoringStrategy

Defined in

src/components/activities/types.ts:621

diff --git a/activitymodelschema.html b/activitymodelschema.html index 5e7f2cf59d..aa87ae5a5e 100644 --- a/activitymodelschema.html +++ b/activitymodelschema.html @@ -145,49 +145,49 @@

activityType

-

Optional activityType: any

Defined in

src/components/activities/types.ts:212


+

Optional activityType: any

Defined in

src/components/activities/types.ts:212


activity_id

-

Optional activity_id: string

Defined in

src/components/activities/types.ts:215


+

Optional activity_id: string

Defined in

src/components/activities/types.ts:215


authoring

-

Optional authoring: any

Defined in

src/components/activities/types.ts:209


+

Optional authoring: any

Defined in

src/components/activities/types.ts:209


bibrefs

-

Optional bibrefs: string[]

Defined in

src/components/activities/types.ts:214


+

Optional bibrefs: string[]

Defined in

src/components/activities/types.ts:214


content

-

Optional content: any

Defined in

src/components/activities/types.ts:211


+

Optional content: any

Defined in

src/components/activities/types.ts:211


id

-

Optional id: string

Defined in

src/components/activities/types.ts:213


+

Optional id: string

Defined in

src/components/activities/types.ts:213


learningLanguage

-

Optional learningLanguage: string

Defined in

src/components/activities/types.ts:210


+

Optional learningLanguage: string

Defined in

src/components/activities/types.ts:210


resourceId

-

Optional resourceId: number

Defined in

src/components/activities/types.ts:208

+

Optional resourceId: number

Defined in

src/components/activities/types.ts:208

diff --git a/activitystate.html b/activitystate.html index 761a4ddb5f..89be31f684 100644 --- a/activitystate.html +++ b/activitystate.html @@ -140,75 +140,75 @@

activityId

-

Optional activityId: number

Resource id of the activity that this attempt pertains to.

Defined in

src/components/activities/types.ts:293


+

Optional activityId: number

Resource id of the activity that this attempt pertains to.

Defined in

src/components/activities/types.ts:293


attemptGuid

-

attemptGuid: string

Unique identifier of this attempt.

Defined in

src/components/activities/types.ts:297


+

attemptGuid: string

Unique identifier of this attempt.

Defined in

src/components/activities/types.ts:297


attemptNumber

-

attemptNumber: number

The orindal number of this attempt, relative to other attempts.

Defined in

src/components/activities/types.ts:302


+

attemptNumber: number

The orindal number of this attempt, relative to other attempts.

Defined in

src/components/activities/types.ts:302


dateEvaluated

dateEvaluated: null \| Date

If this attempt has been evaluated, the date of the evaluation, null -if this attempt has not been evaluated.

Defined in

src/components/activities/types.ts:307


+if this attempt has not been evaluated.

Defined in

src/components/activities/types.ts:307


dateSubmitted

dateSubmitted: null \| Date

The date that this attempt was submitted, if it has been submitted, null -if not.

Defined in

src/components/activities/types.ts:313


+if not.

Defined in

src/components/activities/types.ts:313


groupId

-

groupId: null \| string

Defined in

src/components/activities/types.ts:338


+

groupId: null \| string

Defined in

src/components/activities/types.ts:338


hasMoreAttempts

-

hasMoreAttempts: boolean

Whether or not this attempt has additional attempts.

Defined in

src/components/activities/types.ts:331


+

hasMoreAttempts: boolean

Whether or not this attempt has additional attempts.

Defined in

src/components/activities/types.ts:331


hasMoreHints

-

hasMoreHints: boolean

Whether or not this attempt has additional hints.

Defined in

src/components/activities/types.ts:335


+

hasMoreHints: boolean

Whether or not this attempt has additional hints.

Defined in

src/components/activities/types.ts:335


outOf

-

outOf: null \| number

Maximum point value that could have been received.

Defined in

src/components/activities/types.ts:322


+

outOf: null \| number

Maximum point value that could have been received.

Defined in

src/components/activities/types.ts:322


parts

-

parts: PartState[]

Collection of the part attempt states.

Defined in

src/components/activities/types.ts:326


+

parts: PartState[]

Collection of the part attempt states.

Defined in

src/components/activities/types.ts:326


score

-

score: null \| number

Score received. Null if this attempt has not been evaluated.

Defined in

src/components/activities/types.ts:318


+

score: null \| number

Score received. Null if this attempt has not been evaluated.

Defined in

src/components/activities/types.ts:318


snapshot

-

Optional snapshot: any

Defined in

src/components/activities/types.ts:336

+

Optional snapshot: any

Defined in

src/components/activities/types.ts:336

diff --git a/authoringelement.html b/authoringelement.html index a2fa7b557b..fa2ac43d91 100644 --- a/authoringelement.html +++ b/authoringelement.html @@ -184,7 +184,7 @@

constructor

-

new AuthoringElement<T>()

Type parameters

NameType
Textends ActivityModelSchema

Overrides

HTMLElement.constructor

Defined in

src/components/activities/AuthoringElement.ts:59

+

new AuthoringElement<T>()

Type parameters

NameType
Textends ActivityModelSchema

Overrides

HTMLElement.constructor

Defined in

src/components/activities/AuthoringElement.ts:59

@@ -304,7 +304,7 @@

_notify

-

Protected _notify: EventEmitter

Defined in

src/components/activities/AuthoringElement.ts:57


+

Protected _notify: EventEmitter

Defined in

src/components/activities/AuthoringElement.ts:57


@@ -622,7 +622,7 @@

connected

-

connected: boolean

Defined in

src/components/activities/AuthoringElement.ts:55


+

connected: boolean

Defined in

src/components/activities/AuthoringElement.ts:55


@@ -736,7 +736,7 @@

mountPoint

-

mountPoint: HTMLDivElement

Defined in

src/components/activities/AuthoringElement.ts:54


+

mountPoint: HTMLDivElement

Defined in

src/components/activities/AuthoringElement.ts:54


@@ -1510,7 +1510,7 @@

observedAttributes

-

Static observedAttributes: string[]

Defined in

src/components/activities/AuthoringElement.ts:182

+

Static observedAttributes: string[]

Defined in

src/components/activities/AuthoringElement.ts:182

@@ -1564,7 +1564,7 @@

attributeChangedCallback

-

attributeChangedCallback(_name, _oldValue, _newValue): void

Parameters

NameType
_nameany
_oldValueany
_newValueany

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:175


+

attributeChangedCallback(_name, _oldValue, _newValue): void

Parameters

NameType
_nameany
_oldValueany
_newValueany

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:175


@@ -1606,7 +1606,7 @@

connectedCallback

-

connectedCallback(): void

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:169


+

connectedCallback(): void

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:169


@@ -1618,13 +1618,13 @@

details

-

details(continuation, payload?): Object

Parameters

NameType
continuation(result: any, error: any) => void
payload?any

Returns

Object

NameType
bubblesboolean
composedboolean
detail{ continuation: (result: any, error: any) => void ; payload: any ; props: AuthoringElementProps<T> & SectionAuthoringProps }
detail.continuation(result: any, error: any) => void
detail.payloadany
detail.propsAuthoringElementProps<T> & SectionAuthoringProps

Defined in

src/components/activities/AuthoringElement.ts:129


+

details(continuation, payload?): Object

Parameters

NameType
continuation(result: any, error: any) => void
payload?any

Returns

Object

NameType
bubblesboolean
composedboolean
detail{ continuation: (result: any, error: any) => void ; payload: any ; props: AuthoringElementProps<T> & SectionAuthoringProps }
detail.continuation(result: any, error: any) => void
detail.payloadany
detail.propsAuthoringElementProps<T> & SectionAuthoringProps

Defined in

src/components/activities/AuthoringElement.ts:129


dispatch

-

dispatch(name, payload?): Promise<any>

Parameters

NameType
namestring
payload?any

Returns

Promise<any>

Defined in

src/components/activities/AuthoringElement.ts:141


+

dispatch(name, payload?): Promise<any>

Parameters

NameType
namestring
payload?any

Returns

Promise<any>

Defined in

src/components/activities/AuthoringElement.ts:141


@@ -1809,7 +1809,7 @@

schema of the activity's model. The activity will need to support the original versions of this model, however, as there will likely have been many instances of this original model already created and stored in the Torus database.

The migrateModelVersion function will be called by the component just before each call to render.

Parameters

NameTypeDescription
modelanythe state of the model of the activity, as deliveredy by Torus to this activity

Returns

T

a possibly migrated (i.e. upgraded) activity model, or the model as-is if no -migration is needed

Defined in

src/components/activities/AuthoringElement.ts:125


+migration is needed

Defined in

src/components/activities/AuthoringElement.ts:125


@@ -1821,7 +1821,7 @@

notify

-

notify(eventName, payload): void

Parameters

NameType
eventNamestring
payloadany

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:154


+

notify(eventName, payload): void

Parameters

NameType
eventNamestring
payloadany

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:154


@@ -1833,7 +1833,7 @@

props

-

props(): AuthoringElementProps<T> & SectionAuthoringProps

Returns

AuthoringElementProps<T> & SectionAuthoringProps

Defined in

src/components/activities/AuthoringElement.ts:67


+

props(): AuthoringElementProps<T> & SectionAuthoringProps

Returns

AuthoringElementProps<T> & SectionAuthoringProps

Defined in

src/components/activities/AuthoringElement.ts:67


@@ -1896,7 +1896,7 @@

Abstract render(mountPoint, props): void

Implemented by concrete web component, the render method is called once after the web component has been mounted and "connected" to the DOM, and then again every time that either the editMode or model attributes have -changed on the web component.

Parameters

NameTypeDescription
mountPointHTMLDivElementa top level div element created by the component that the concrete impl can use to render the rest of the actual UX
propsAuthoringElementProps<T>the current set of authoring component properties

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:167


+changed on the web component.

Parameters

NameTypeDescription
mountPointHTMLDivElementa top level div element created by the component that the concrete impl can use to render the rest of the actual UX
propsAuthoringElementProps<T>the current set of authoring component properties

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:167


diff --git a/authoringelementprops.html b/authoringelementprops.html index bd305543d3..41a3b4759b 100644 --- a/authoringelementprops.html +++ b/authoringelementprops.html @@ -151,31 +151,31 @@

authoringContext

-

Optional authoringContext: any

Defined in

src/components/activities/AuthoringElement.ts:19


+

Optional authoringContext: any

Defined in

src/components/activities/AuthoringElement.ts:19


editMode

-

editMode: boolean

Defined in

src/components/activities/AuthoringElement.ts:17


+

editMode: boolean

Defined in

src/components/activities/AuthoringElement.ts:17


model

-

model: T

Defined in

src/components/activities/AuthoringElement.ts:12


+

model: T

Defined in

src/components/activities/AuthoringElement.ts:12


notify

-

Optional notify: EventEmitter

Defined in

src/components/activities/AuthoringElement.ts:20


+

Optional notify: EventEmitter

Defined in

src/components/activities/AuthoringElement.ts:20


projectSlug

-

projectSlug: string

Defined in

src/components/activities/AuthoringElement.ts:18

+

projectSlug: string

Defined in

src/components/activities/AuthoringElement.ts:18

@@ -187,25 +187,25 @@

onCustomEvent

-

Optional onCustomEvent(eventName, payload): Promise<any>

Parameters

NameType
eventNamestring
payloadany

Returns

Promise<any>

Defined in

src/components/activities/AuthoringElement.ts:16


+

Optional onCustomEvent(eventName, payload): Promise<any>

Parameters

NameType
eventNamestring
payloadany

Returns

Promise<any>

Defined in

src/components/activities/AuthoringElement.ts:16


onEdit

-

onEdit(model): void

Parameters

NameType
modelT

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:13


+

onEdit(model): void

Parameters

NameType
modelT

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:13


onPostUndoable

-

onPostUndoable(undoable): void

Parameters

NameType
undoableUndoable

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:14


+

onPostUndoable(undoable): void

Parameters

NameType
undoableUndoable

Returns

void

Defined in

src/components/activities/AuthoringElement.ts:14


onRequestMedia

-

onRequestMedia(request): Promise<string \| boolean>

Parameters

NameType
requestMediaItemRequest

Returns

Promise<string \| boolean>

Defined in

src/components/activities/AuthoringElement.ts:15

+

onRequestMedia(request): Promise<string \| boolean>

Parameters

NameType
requestMediaItemRequest

Returns

Promise<string \| boolean>

Defined in

src/components/activities/AuthoringElement.ts:15

diff --git a/building.html b/building.html index 2ec6d5bbb6..3b1770c55a 100644 --- a/building.html +++ b/building.html @@ -125,7 +125,7 @@

+curl --fail -L https://oli-torus-releases.s3.amazonaws.com/oli-${RELEASE_VERSION}-${RELEASE_SHA}.zip -o oli-${RELEASE_VERSION}-${RELEASE_SHA}.zip

@@ -140,9 +140,9 @@

diff --git a/choice.html b/choice.html index 0a702fcecd..c1f0bfd40f 100644 --- a/choice.html +++ b/choice.html @@ -146,31 +146,31 @@

content

-

content: RichText

Inherited from

HasContent.content

Defined in

src/components/activities/types.ts:118


+

content: RichText

Inherited from

HasContent.content

Defined in

src/components/activities/types.ts:118


editor

-

Optional editor: "slate" \| "markdown"

Inherited from

SpecifiesEditor.editor

Defined in

src/components/activities/types.ts:364


+

Optional editor: "slate" \| "markdown"

Inherited from

SpecifiesEditor.editor

Defined in

src/components/activities/types.ts:364


frequency

-

Optional frequency: number

Defined in

src/components/activities/types.ts:346


+

Optional frequency: number

Defined in

src/components/activities/types.ts:346


id

-

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


+

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


textDirection

-

Optional textDirection: TextDirection

Inherited from

SpecifiesTextDirection.textDirection

Defined in

src/components/activities/types.ts:360

+

Optional textDirection: TextDirection

Inherited from

SpecifiesTextDirection.textDirection

Defined in

src/components/activities/types.ts:360

diff --git a/creationcontext.html b/creationcontext.html index e2ee5f3c19..c973b631a7 100644 --- a/creationcontext.html +++ b/creationcontext.html @@ -145,79 +145,79 @@

activityContexts

-

activityContexts: ActivityEditContext[]

Inherited from

ResourceContext.activityContexts

Defined in

src/data/content/resource.ts:173


+

activityContexts: ActivityEditContext[]

Inherited from

ResourceContext.activityContexts

Defined in

src/data/content/resource.ts:173


allObjectives

-

allObjectives: Objective[]

Inherited from

ResourceContext.allObjectives

Defined in

src/data/content/resource.ts:171


+

allObjectives: Objective[]

Inherited from

ResourceContext.allObjectives

Defined in

src/data/content/resource.ts:171


allTags

-

allTags: Tag[]

Inherited from

ResourceContext.allTags

Defined in

src/data/content/resource.ts:172


+

allTags: Tag[]

Inherited from

ResourceContext.allTags

Defined in

src/data/content/resource.ts:172


authorEmail

-

authorEmail: string

Inherited from

ResourceContext.authorEmail

Defined in

src/data/content/resource.ts:163


+

authorEmail: string

Inherited from

ResourceContext.authorEmail

Defined in

src/data/content/resource.ts:163


content

-

content: PageContent

Inherited from

ResourceContext.content

Defined in

src/data/content/resource.ts:169


+

content: PageContent

Inherited from

ResourceContext.content

Defined in

src/data/content/resource.ts:169


graded

-

graded: boolean

Inherited from

ResourceContext.graded

Defined in

src/data/content/resource.ts:162


+

graded: boolean

Inherited from

ResourceContext.graded

Defined in

src/data/content/resource.ts:162


hasExperiments

-

hasExperiments: boolean

Inherited from

ResourceContext.hasExperiments

Defined in

src/data/content/resource.ts:167


+

hasExperiments: boolean

Inherited from

ResourceContext.hasExperiments

Defined in

src/data/content/resource.ts:167


objectives

-

objectives: AttachedObjectives

Inherited from

ResourceContext.objectives

Defined in

src/data/content/resource.ts:170


+

objectives: AttachedObjectives

Inherited from

ResourceContext.objectives

Defined in

src/data/content/resource.ts:170


optionalContentTypes

-

optionalContentTypes: OptionalContentTypes

Inherited from

ResourceContext.optionalContentTypes

Defined in

src/data/content/resource.ts:174


+

optionalContentTypes: OptionalContentTypes

Inherited from

ResourceContext.optionalContentTypes

Defined in

src/data/content/resource.ts:174


projectSlug

-

projectSlug: string

Inherited from

ResourceContext.projectSlug

Defined in

src/data/content/resource.ts:164


+

projectSlug: string

Inherited from

ResourceContext.projectSlug

Defined in

src/data/content/resource.ts:164


resourceId

-

resourceId: number

Inherited from

ResourceContext.resourceId

Defined in

src/data/content/resource.ts:166


+

resourceId: number

Inherited from

ResourceContext.resourceId

Defined in

src/data/content/resource.ts:166


resourceSlug

-

resourceSlug: string

Inherited from

ResourceContext.resourceSlug

Defined in

src/data/content/resource.ts:165


+

resourceSlug: string

Inherited from

ResourceContext.resourceSlug

Defined in

src/data/content/resource.ts:165


title

-

title: string

Inherited from

ResourceContext.title

Defined in

src/data/content/resource.ts:168

+

title: string

Inherited from

ResourceContext.title

Defined in

src/data/content/resource.ts:168

diff --git a/deliveryelement.html b/deliveryelement.html index 3fa8ce1949..88efa8d8d9 100644 --- a/deliveryelement.html +++ b/deliveryelement.html @@ -189,7 +189,7 @@

constructor

-

new DeliveryElement<T>()

Type parameters

NameType
Textends ActivityModelSchema

Overrides

HTMLElement.constructor

Defined in

src/components/activities/DeliveryElement.ts:246

+

new DeliveryElement<T>()

Type parameters

NameType
Textends ActivityModelSchema

Overrides

HTMLElement.constructor

Defined in

src/components/activities/DeliveryElement.ts:246

@@ -309,7 +309,7 @@

_notify

-

Protected _notify: EventEmitter

Defined in

src/components/activities/DeliveryElement.ts:217


+

Protected _notify: EventEmitter

Defined in

src/components/activities/DeliveryElement.ts:217


@@ -627,7 +627,7 @@

connected

-

connected: boolean

Defined in

src/components/activities/DeliveryElement.ts:212


+

connected: boolean

Defined in

src/components/activities/DeliveryElement.ts:212


@@ -741,7 +741,7 @@

mountPoint

-

mountPoint: HTMLDivElement

Defined in

src/components/activities/DeliveryElement.ts:211


+

mountPoint: HTMLDivElement

Defined in

src/components/activities/DeliveryElement.ts:211


@@ -819,73 +819,73 @@

onGetData

-

Optional onGetData: (attemptGuid: string, partAttemptGuid: string, payload: any) => Promise<any>

Type declaration

▸ (attemptGuid, partAttemptGuid, payload): Promise<any>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
payloadany
Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:214


+

Optional onGetData: (attemptGuid: string, partAttemptGuid: string, payload: any) => Promise<any>

Type declaration

▸ (attemptGuid, partAttemptGuid, payload): Promise<any>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
payloadany
Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:214


onReady

-

onReady: (attemptGuid: string, response?: any[]) => Promise<Success>

Type declaration

▸ (attemptGuid, response?): Promise<Success>

Parameters
NameType
attemptGuidstring
response?any[]
Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:243


+

onReady: (attemptGuid: string, response?: any[]) => Promise<Success>

Type declaration

▸ (attemptGuid, response?): Promise<Success>

Parameters
NameType
attemptGuidstring
response?any[]
Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:243


onRequestHint

-

onRequestHint: (attemptGuid: string, partAttemptGuid: string) => Promise<RequestHintResponse>

Type declaration

▸ (attemptGuid, partAttemptGuid): Promise<RequestHintResponse>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
Returns

Promise<RequestHintResponse>

Defined in

src/components/activities/DeliveryElement.ts:219


+

onRequestHint: (attemptGuid: string, partAttemptGuid: string) => Promise<RequestHintResponse>

Type declaration

▸ (attemptGuid, partAttemptGuid): Promise<RequestHintResponse>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
Returns

Promise<RequestHintResponse>

Defined in

src/components/activities/DeliveryElement.ts:219


onResetActivity

-

onResetActivity: (attemptGuid: string) => Promise<ResetActivityResponse>

Type declaration

▸ (attemptGuid): Promise<ResetActivityResponse>

Parameters
NameType
attemptGuidstring
Returns

Promise<ResetActivityResponse>

Defined in

src/components/activities/DeliveryElement.ts:226


+

onResetActivity: (attemptGuid: string) => Promise<ResetActivityResponse>

Type declaration

▸ (attemptGuid): Promise<ResetActivityResponse>

Parameters
NameType
attemptGuidstring
Returns

Promise<ResetActivityResponse>

Defined in

src/components/activities/DeliveryElement.ts:226


onResetPart

-

onResetPart: (attemptGuid: string, partAttemptGuid: string) => Promise<PartActivityResponse>

Type declaration

▸ (attemptGuid, partAttemptGuid): Promise<PartActivityResponse>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
Returns

Promise<PartActivityResponse>

Defined in

src/components/activities/DeliveryElement.ts:238


+

onResetPart: (attemptGuid: string, partAttemptGuid: string) => Promise<PartActivityResponse>

Type declaration

▸ (attemptGuid, partAttemptGuid): Promise<PartActivityResponse>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
Returns

Promise<PartActivityResponse>

Defined in

src/components/activities/DeliveryElement.ts:238


onResize

-

onResize: (attemptGuid: string) => Promise<Success>

Type declaration

▸ (attemptGuid): Promise<Success>

Parameters
NameType
attemptGuidstring
Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:244


+

onResize: (attemptGuid: string) => Promise<Success>

Type declaration

▸ (attemptGuid): Promise<Success>

Parameters
NameType
attemptGuidstring
Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:244


onSaveActivity

-

onSaveActivity: (attemptGuid: string, partResponses: PartResponse[]) => Promise<Success>

Type declaration

▸ (attemptGuid, partResponses): Promise<Success>

Parameters
NameType
attemptGuidstring
partResponsesPartResponse[]
Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:221


+

onSaveActivity: (attemptGuid: string, partResponses: PartResponse[]) => Promise<Success>

Type declaration

▸ (attemptGuid, partResponses): Promise<Success>

Parameters
NameType
attemptGuidstring
partResponsesPartResponse[]
Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:221


onSavePart

-

onSavePart: (attemptGuid: string, partAttemptGuid: string, response: StudentResponse) => Promise<Success>

Type declaration

▸ (attemptGuid, partAttemptGuid, response): Promise<Success>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
responseStudentResponse
Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:228


+

onSavePart: (attemptGuid: string, partAttemptGuid: string, response: StudentResponse) => Promise<Success>

Type declaration

▸ (attemptGuid, partAttemptGuid, response): Promise<Success>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
responseStudentResponse
Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:228


onSetData

-

Optional onSetData: (attemptGuid: string, partAttemptGuid: string, payload: any) => Promise<any>

Type declaration

▸ (attemptGuid, partAttemptGuid, payload): Promise<any>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
payloadany
Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:215


+

Optional onSetData: (attemptGuid: string, partAttemptGuid: string, payload: any) => Promise<any>

Type declaration

▸ (attemptGuid, partAttemptGuid, payload): Promise<any>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
payloadany
Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:215


onSubmitActivity

-

onSubmitActivity: (attemptGuid: string, partResponses: PartResponse[]) => Promise<EvaluationResponse>

Type declaration

▸ (attemptGuid, partResponses): Promise<EvaluationResponse>

Parameters
NameType
attemptGuidstring
partResponsesPartResponse[]
Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:222


+

onSubmitActivity: (attemptGuid: string, partResponses: PartResponse[]) => Promise<EvaluationResponse>

Type declaration

▸ (attemptGuid, partResponses): Promise<EvaluationResponse>

Parameters
NameType
attemptGuidstring
partResponsesPartResponse[]
Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:222


onSubmitEvaluations

-

onSubmitEvaluations: (attemptGuid: string, clientEvaluations: ClientEvaluation[]) => Promise<EvaluationResponse>

Type declaration

▸ (attemptGuid, clientEvaluations): Promise<EvaluationResponse>

Parameters
NameType
attemptGuidstring
clientEvaluationsClientEvaluation[]
Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:239


+

onSubmitEvaluations: (attemptGuid: string, clientEvaluations: ClientEvaluation[]) => Promise<EvaluationResponse>

Type declaration

▸ (attemptGuid, clientEvaluations): Promise<EvaluationResponse>

Parameters
NameType
attemptGuidstring
clientEvaluationsClientEvaluation[]
Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:239


onSubmitPart

-

onSubmitPart: (attemptGuid: string, partAttemptGuid: string, response: StudentResponse) => Promise<EvaluationResponse>

Type declaration

▸ (attemptGuid, partAttemptGuid, response): Promise<EvaluationResponse>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
responseStudentResponse
Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:233


+

onSubmitPart: (attemptGuid: string, partAttemptGuid: string, response: StudentResponse) => Promise<EvaluationResponse>

Type declaration

▸ (attemptGuid, partAttemptGuid, response): Promise<EvaluationResponse>

Parameters
NameType
attemptGuidstring
partAttemptGuidstring
responseStudentResponse
Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:233


@@ -1509,7 +1509,7 @@

review

-

review: boolean

Defined in

src/components/activities/DeliveryElement.ts:213


+

review: boolean

Defined in

src/components/activities/DeliveryElement.ts:213


@@ -1599,7 +1599,7 @@

observedAttributes

-

Static get observedAttributes(): string[]

Returns

string[]

Defined in

src/components/activities/DeliveryElement.ts:285

+

Static get observedAttributes(): string[]

Returns

string[]

Defined in

src/components/activities/DeliveryElement.ts:285

@@ -1653,7 +1653,7 @@

attributeChangedCallback

-

attributeChangedCallback(_name, _oldValue, _newValue): void

Parameters

NameType
_nameany
_oldValueany
_newValueany

Returns

void

Defined in

src/components/activities/DeliveryElement.ts:389


+

attributeChangedCallback(_name, _oldValue, _newValue): void

Parameters

NameType
_nameany
_oldValueany
_newValueany

Returns

void

Defined in

src/components/activities/DeliveryElement.ts:389


@@ -1695,7 +1695,7 @@

connectedCallback

-

connectedCallback(): void

Returns

void

Defined in

src/components/activities/DeliveryElement.ts:380


+

connectedCallback(): void

Returns

void

Defined in

src/components/activities/DeliveryElement.ts:380


@@ -1707,13 +1707,13 @@

details

-

details(continuation, attemptGuid, partAttemptGuid, payload?): Object

Parameters

NameType
continuation(result: any, error: any) => void
attemptGuidstring
partAttemptGuidundefined | string
payload?any

Returns

Object

NameType
bubblesboolean
detail{ attemptGuid: string ; continuation: (result: any, error: any) => void ; partAttemptGuid: undefined | string ; payload: any ; props: DeliveryElementProps<T> ; sectionSlug: string = props.context.sectionSlug }
detail.attemptGuidstring
detail.continuation(result: any, error: any) => void
detail.partAttemptGuidundefined | string
detail.payloadany
detail.propsDeliveryElementProps<T>
detail.sectionSlugstring

Defined in

src/components/activities/DeliveryElement.ts:348


+

details(continuation, attemptGuid, partAttemptGuid, payload?): Object

Parameters

NameType
continuation(result: any, error: any) => void
attemptGuidstring
partAttemptGuidundefined | string
payload?any

Returns

Object

NameType
bubblesboolean
detail{ attemptGuid: string ; continuation: (result: any, error: any) => void ; partAttemptGuid: undefined | string ; payload: any ; props: DeliveryElementProps<T> ; sectionSlug: string = props.context.sectionSlug }
detail.attemptGuidstring
detail.continuation(result: any, error: any) => void
detail.partAttemptGuidundefined | string
detail.payloadany
detail.propsDeliveryElementProps<T>
detail.sectionSlugstring

Defined in

src/components/activities/DeliveryElement.ts:348


dispatch

-

dispatch(name, attemptGuid, partAttemptGuid, payload?): Promise<any>

Parameters

NameType
namestring
attemptGuidstring
partAttemptGuidundefined | string
payload?any

Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:289


+

dispatch(name, attemptGuid, partAttemptGuid, payload?): Promise<any>

Parameters

NameType
namestring
attemptGuidstring
partAttemptGuidundefined | string
payload?any

Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:289


@@ -1899,7 +1899,7 @@

notify

-

notify(eventName, payload): void

Parameters

NameType
eventNamestring
payloadany

Returns

void

Defined in

src/components/activities/DeliveryElement.ts:313


+

notify(eventName, payload): void

Parameters

NameType
eventNamestring
payloadany

Returns

void

Defined in

src/components/activities/DeliveryElement.ts:313


@@ -1911,7 +1911,7 @@

props

-

props(): DeliveryElementProps<T>

Returns

DeliveryElementProps<T>

Defined in

src/components/activities/DeliveryElement.ts:317


+

props(): DeliveryElementProps<T>

Returns

DeliveryElementProps<T>

Defined in

src/components/activities/DeliveryElement.ts:317


@@ -1974,7 +1974,7 @@

Abstract render(mountPoint, props): void

Implemented by concrete web component, the render method is called once after the web component has been mounted and "connected" to the DOM, and then again every time that either the state or model attributes have -changed on the web component.

Parameters

NameTypeDescription
mountPointHTMLDivElementa top level div element created by the component that the concrete impl can use to render the rest of the actual UX
propsDeliveryElementProps<T>the current set of delivery component properties

Returns

void

Defined in

src/components/activities/DeliveryElement.ts:378


+changed on the web component.

Parameters

NameTypeDescription
mountPointHTMLDivElementa top level div element created by the component that the concrete impl can use to render the rest of the actual UX
propsDeliveryElementProps<T>the current set of delivery component properties

Returns

void

Defined in

src/components/activities/DeliveryElement.ts:378


diff --git a/deliveryelementprops.html b/deliveryelementprops.html index a661bd036e..6bdffa238c 100644 --- a/deliveryelementprops.html +++ b/deliveryelementprops.html @@ -152,32 +152,32 @@

context

-

context: ActivityContext

The larger context that this activity operates within.

Defined in

src/components/activities/DeliveryElement.ts:88


+

context: ActivityContext

The larger context that this activity operates within.

Defined in

src/components/activities/DeliveryElement.ts:88


mode

-

mode: DeliveryMode

The current delivery mode.

Defined in

src/components/activities/DeliveryElement.ts:93


+

mode: DeliveryMode

The current delivery mode.

Defined in

src/components/activities/DeliveryElement.ts:93


model

-

model: T

The model of the activity, pruned to remove the authoring specific portion.

Defined in

src/components/activities/DeliveryElement.ts:78


+

model: T

The model of the activity, pruned to remove the authoring specific portion.

Defined in

src/components/activities/DeliveryElement.ts:78


mountPoint

Optional mountPoint: HTMLElement

The HTML div element reference created by the abstract component for use in -rendering by the concrete implementation.

Defined in

src/components/activities/DeliveryElement.ts:104


+rendering by the concrete implementation.

Defined in

src/components/activities/DeliveryElement.ts:104


state

-

state: ActivityState

The state of the activity and part attempts.

Defined in

src/components/activities/DeliveryElement.ts:83

+

state: ActivityState

The state of the activity and part attempts.

Defined in

src/components/activities/DeliveryElement.ts:83

@@ -189,61 +189,61 @@

onReadUserState

-

Optional onReadUserState(attemptGuid, partAttemptGuid, payload): Promise<any>

Allows read access to the user state.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring
payloadany

Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:109


+

Optional onReadUserState(attemptGuid, partAttemptGuid, payload): Promise<any>

Allows read access to the user state.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring
payloadany

Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:109


onRequestHint

-

onRequestHint(attemptGuid, partAttemptGuid): Promise<RequestHintResponse>

Requests a hint for a specific part.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring

Returns

Promise<RequestHintResponse>

Defined in

src/components/activities/DeliveryElement.ts:137


+

onRequestHint(attemptGuid, partAttemptGuid): Promise<RequestHintResponse>

Requests a hint for a specific part.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring

Returns

Promise<RequestHintResponse>

Defined in

src/components/activities/DeliveryElement.ts:137


onResetActivity

-

onResetActivity(attemptGuid): Promise<ResetActivityResponse>

Resets this activity attempt to create a new attempt.

Parameters

NameType
attemptGuidstring

Returns

Promise<ResetActivityResponse>

Defined in

src/components/activities/DeliveryElement.ts:132


+

onResetActivity(attemptGuid): Promise<ResetActivityResponse>

Resets this activity attempt to create a new attempt.

Parameters

NameType
attemptGuidstring

Returns

Promise<ResetActivityResponse>

Defined in

src/components/activities/DeliveryElement.ts:132


onResetPart

-

onResetPart(attemptGuid, partAttemptGuid): Promise<PartActivityResponse>

Resets the attempt for one part.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring

Returns

Promise<PartActivityResponse>

Defined in

src/components/activities/DeliveryElement.ts:160


+

onResetPart(attemptGuid, partAttemptGuid): Promise<PartActivityResponse>

Resets the attempt for one part.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring

Returns

Promise<PartActivityResponse>

Defined in

src/components/activities/DeliveryElement.ts:160


onSaveActivity

-

onSaveActivity(attemptGuid, partResponses): Promise<Success>

Initiates saving of the student response for all parts.

Parameters

NameType
attemptGuidstring
partResponsesPartResponse[]

Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:119


+

onSaveActivity(attemptGuid, partResponses): Promise<Success>

Initiates saving of the student response for all parts.

Parameters

NameType
attemptGuidstring
partResponsesPartResponse[]

Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:119


onSavePart

-

onSavePart(attemptGuid, partAttemptGuid, response): Promise<Success>

Saves the state of a specific part.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring
responseStudentResponse

Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:142


+

onSavePart(attemptGuid, partAttemptGuid, response): Promise<Success>

Saves the state of a specific part.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring
responseStudentResponse

Returns

Promise<Success>

Defined in

src/components/activities/DeliveryElement.ts:142


onSubmitActivity

-

onSubmitActivity(attemptGuid, partResponses): Promise<EvaluationResponse>

Submits all parts of the attempt for evaluation.

Parameters

NameType
attemptGuidstring
partResponsesPartResponse[]

Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:124


+

onSubmitActivity(attemptGuid, partResponses): Promise<EvaluationResponse>

Submits all parts of the attempt for evaluation.

Parameters

NameType
attemptGuidstring
partResponsesPartResponse[]

Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:124


onSubmitEvaluations

-

onSubmitEvaluations(attemptGuid, clientEvaluations): Promise<EvaluationResponse>

Submits client-side evaluations.

Parameters

NameType
attemptGuidstring
clientEvaluationsClientEvaluation[]

Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:165


+

onSubmitEvaluations(attemptGuid, clientEvaluations): Promise<EvaluationResponse>

Submits client-side evaluations.

Parameters

NameType
attemptGuidstring
clientEvaluationsClientEvaluation[]

Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:165


onSubmitPart

-

onSubmitPart(attemptGuid, partAttemptGuid, response): Promise<EvaluationResponse>

Submits for evaluation one part.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring
responseStudentResponse

Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:151


+

onSubmitPart(attemptGuid, partAttemptGuid, response): Promise<EvaluationResponse>

Submits for evaluation one part.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring
responseStudentResponse

Returns

Promise<EvaluationResponse>

Defined in

src/components/activities/DeliveryElement.ts:151


onWriteUserState

-

Optional onWriteUserState(attemptGuid, partAttemptGuid, payload): Promise<any>

Allows writing to the user state.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring
payloadany

Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:114

+

Optional onWriteUserState(attemptGuid, partAttemptGuid, payload): Promise<any>

Allows writing to the user state.

Parameters

NameType
attemptGuidstring
partAttemptGuidstring
payloadany

Returns

Promise<any>

Defined in

src/components/activities/DeliveryElement.ts:114

diff --git a/deployment.html b/deployment.html index f06449f7e6..4255fc447b 100644 --- a/deployment.html +++ b/deployment.html @@ -159,8 +159,8 @@

Hotfixes

-

A hotfix branch can be created using the release tag you wish to branch from. For example:

git checkout -b hotfix-X.Y.[Z+1] vX.Y.Z
-git push origin hotfix-X.Y.[Z+1]

Once the hotfix branch is created, it will essentially act as the master branch to land all bug fixes and enhancements that are intended to be included in the hotfix.

When a hotfix branch is ready to be deployed, it can be tagged using the Release Candidate and Deployment Process outlined above. Hotfix branches that follow the convention hotfix- will automatically be packaged when pushed to remote, just like master. Make sure to wait for the package step to complete before creating a release, or else the deployment will fail.

Note: Because hotfix branches are automatically packaged based on the branch name convention, there is no need to manually tag with package before deploying.

Finally, make sure the hotfix branch is eventually merged back to master to be included in downstream development. To do this easily, create a new branch from the hotfix branch called integrate-X.Y.Z (the name here is not necessarily important, but just serves as an example). Then pull master into this integration branch. Once any/all merge conflicts are resolved, open a PR against master.

+

A hotfix branch can be created using the release tag you wish to branch from. For example:

git checkout -b hotfix-X.Y.[Z+1] vX.Y.Z
+git push origin hotfix-X.Y.[Z+1]

Once the hotfix branch is created, it will essentially act as the master branch to land all bug fixes and enhancements that are intended to be included in the hotfix.

When a hotfix branch is ready to be deployed, it can be tagged using the Release Candidate and Deployment Process outlined above. Hotfix branches that follow the convention hotfix- will automatically be packaged when pushed to remote, just like master. Make sure to wait for the package step to complete before creating a release, or else the deployment will fail.

Note: Because hotfix branches are automatically packaged based on the branch name convention, there is no need to manually tag with package before deploying.

Finally, make sure the hotfix branch is eventually merged back to master to be included in downstream development. To do this easily, create a new branch from the hotfix branch called integrate-X.Y.Z (the name here is not necessarily important, but just serves as an example). Then pull master into this integration branch. Once any/all merge conflicts are resolved, open a PR against master.

diff --git a/dist/search_data-9432B728.js b/dist/search_data-CA403A24.js similarity index 96% rename from dist/search_data-9432B728.js rename to dist/search_data-CA403A24.js index 85e450404b..4b18351eb6 100644 --- a/dist/search_data-9432B728.js +++ b/dist/search_data-CA403A24.js @@ -1 +1 @@ -searchData={"items":[{"type":"extras","title":"As a new user","doc":"# As a new user\n\nA managed instance of Torus is available at [https://proton.oli.cmu.edu](https://proton.oli.cmu.edu]) where\none can create an account, create a course project and begin authoring.","ref":"end-user.html"},{"type":"extras","title":"As a developer","doc":"# As a developer\n\nThese instructions will set up a development environment\nwith the Torus server running directly on the host machine.","ref":"developer.html"},{"type":"extras","title":"Mostly Automated Steps - As a developer","doc":"1. Install dependencies:\n\n - [Docker](https://www.docker.com/) and docker-compose\n - [Elixir](https://elixir-lang.org/) (`$ brew install elixir`)\n - [Phoenix](https://www.phoenixframework.org/) (`$ mix archive.install hex phx_new 1.5.9`)\n\n1. Clone this repository `$ git clone https://github.com/Simon-Initiative/oli-torus`\n\n1. Run `$ sh ./devmode.sh`\n\n1. Run `$ mix phx.server`\n\n1. Open your web browser to `https://localhost`.","ref":"developer.html#mostly-automated-steps"},{"type":"extras","title":"Mostly Manual Steps - As a developer","doc":"1. Install dependencies:\n\n - [Docker](https://www.docker.com/) and docker-compose\n - [Elixir](https://elixir-lang.org/) (`$ brew install elixir`)\n - [Phoenix](https://www.phoenixframework.org/) (`$ mix archive.install hex phx_new 1.5.9`)\n\n1. Clone this repository `$ git clone https://github.com/Simon-Initiative/oli-torus`\n\n1. Create configuration env files:\n\n ```\n $ cp oli.example.env oli.env\n $ cp postgres.example.env postgres.env\n ```\n\n1. Configure `oli.env` for running natively:\n\n Make sure `DB_HOST` is set to `localhost` (as opposed to `postgress`).\n\n ```\n DB_HOST=localhost\n ```\n\n1. Start dockerized postgres 12 via the included docker-compose file:\n\n ```\n $ docker-compose up -d postgres\n ```\n\n1. Install server and client dependencies:\n\n ```\n $ mix deps.get\n $ cd assets && yarn\n ```\n\n1. Build frontend assets\n\n ```\n $ yarn deploy\n ```\n\n1. Create database\n\n ```\n $ cd ../ && mix ecto.create\n ```\n\n1. Run migration to create schema\n\n ```\n $ mix ecto.migrate\n ```\n\n1. Seed the database\n\n ```\n $ mix run priv/repo/seeds.exs\n ```\n\n1. Configure bash to properly source environment variable configurations\n\n ```\n $ set -a\n ```\n\n1. Load phoenix app configuration from environment file. This step is necessary anytime you change a configuration variable\n\n ```\n $ source oli.env\n ```\n\n1. Start Phoenix server\n\n ```\n $ mix phx.server\n ```\n\n > **Note**: Use Ctrl+c to stop the Phoenix server\n\n1. Open your web browser to `https://localhost`.","ref":"developer.html#mostly-manual-steps"},{"type":"extras","title":"Notes - As a developer","doc":"> In order to sign in, you must use **https** and accept the self-signed cert browser warning to avoid CSRF issues. If you would like to provide your own cert instead of accepting the included one, simply replace `priv/ssl/localhost.crt` -or- use the localhost tunneling method below to generate a public URL with SSL enabled.\n\n> To access email verification message and activate your locally-created account, visit `http://localhost/dev/sent_emails`.\n\n> Default administrator credentials are defined in `oli.env` as `ADMIN_EMAIL` and `ADMIN_PASSWORD`. These values are only used to seed the database during `mix ecto.setup` / `mix ecto.reset`.\n\n> Docker is not a strict dependency. We use it here to simplify the install and running of Postgres. You can choose to install and run Postgres bare-metal, but you will not be able to use the **Mostly Automated Steps** above (since the `./devmode.sh` script depends on Docker).","ref":"developer.html#notes"},{"type":"extras","title":"Running Tests - As a developer","doc":"> **Note**: If you are running using docker-compose as described in [**Quick Start**](Quick-Start), you can create a bash session to execute any of the following commands using `docker-compose exec app bash`\n\n1. Run JavaScript tests\n\n ```\n $ cd assets && yarn test\n ```\n\n1. Run elixir tests\n\n ```\n $ mix test\n ```\n\n1. Run elixir tests for a specific file, watch for changes and automatically re-run tests\n\n ```\n $ mix test.watch --stale --max-failures 1 --trace --seed 0 lib/some_dir/file_to_watch.ex\n ```\n\n Re-run only failed tests\n\n ```\n $ mix test.watch --failed --trace --seed 0 lib/some_dir/file_to_watch.ex\n ```\n\n Using fswatch, re-run only the test files that have changed as well as the tests that have gone stale due to changes in lib and pause on any failures\n\n ```\n $ fswatch lib test | mix test --listen-on-stdin --stale --seed 0 --trace --max-failures 1\n ```\n\n1. Generate an html coverage report\n\n ```\n $ mix coveralls.html\n ```\n\n1. Occasionally the test database will need to be reset (e.g. if tests were cancelled partway through)\n ```\n $ MIX_ENV=test mix ecto.reset\n ```","ref":"developer.html#running-tests"},{"type":"extras","title":"Tunneling localhost connection for LTI development - As a developer","doc":"When making an LTI connection from an LMS such as Canvas, we need an internet accessible FQDN with SSL to properly configure a connection. The service ngrok offers an easy to use command line tool that does just this.\n\n1. [Download ngrok](https://ngrok.com/) and install using their instructions (Create a free account if required)\n1. Run ngrok locally to tunnel to phoenix app on port 4000\n `ngrok http 4000`\n1. Access your running webapp using the generated https address (shown in console after `Forwarding`). This will be the same address used to configure the LMS LTI connection","ref":"developer.html#tunneling-localhost-connection-for-lti-development"},{"type":"extras","title":"Configuring an LTI 1.3 Connection - As a developer","doc":"Torus supports LTI 1.3 integration and leverages the Learning Management System for course delivery.\n\nTo configure an LTI connection, refer to the [Torus LTI 1.3 Manual Configuration](https://github.com/Simon-Initiative/oli-torus/wiki/Torus-LTI-1.3-Configuration).","ref":"developer.html#configuring-an-lti-1-3-connection"},{"type":"extras","title":"self-hosted","doc":"","ref":"self-hosted.html"},{"type":"extras","title":"With self-hosting - self-hosted","doc":"There are many different ways to structure your own production instance of Torus. This guide will outline a simple, single-app server method for getting a production instance of torus up-and-running on a linux environment of your choice. These instructions are geared specifically for and tested on Amazon Linux 2 machine, but should be easily adaptable to other linux distros such as Debian or Ubuntu.\n\nIf this all seems a bit too technical and you just want to use or try out Torus without maintaining all the infrastructure, check out the Open Learning Initiative's production instance at [proton.oli.cmu.edu](https://proton.oli.cmu.edu) where you can easily get started by creating an authoring account for free.","ref":"self-hosted.html#with-self-hosting"},{"type":"extras","title":"Prerequisites - self-hosted","doc":"Torus requires a few services that are necessary for it to run, the setup of which however is mostly outside the scope of this guide. The following list outlines these prerequisite services and how they should be configured for Torus:\n\n1. VPS (e.g. AWS, Azure, DigitalOcean, Self-hosted) linux server with SSH access\n\n - Torus requires NodeJS 15+ to be installed on the deployment machine. If `node` is not available in the torus path, you can use the `NODE_PATH` environment variable to configure the path.\n - Releases are built using openssl11-devel for erlang which means that OpenSSL 1.1.1 is required to be installed on the deployment target.\n ```\n sudo yum install openssl11\n ```\n\n2. S3-Compliant bucket (e.g. AWS S3, Backblaze B2, Self-hosted MinIO), public read-accessible\n - Torus will need the **Access Key ID** and the **Secret Access Key** for writable access\n - Access: **Public**, Block _all_ public access: **Off**\n - Bucket Policy: (replace ` ` with the name of your bucket)\n ```\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"PublicRead\",\n \"Effect\": \"Allow\",\n \"Principal\": \"*\",\n \"Action\": \"s3:GetObject\",\n \"Resource\": \"arn:aws:s3::: /*\"\n }\n ]\n }\n ```\n - Cross-origin resource sharing (CORS):\n ```\n [\n {\n \"AllowedHeaders\": [\n \"*\"\n ],\n \"AllowedMethods\": [\n \"GET\"\n ],\n \"AllowedOrigins\": [\n \"*\"\n ],\n \"ExposeHeaders\": []\n }\n ]\n ```\n3. Postgres 9 or later, network accessible from the VPS/server\n - Torus will need a database **db_username** and **db_password** to access the database.\n - The configured user must have database create permissions for initial setup. Alternatively, the database can be manually created and use the `Oli.ReleaseTasks.migrate_and_seed()` command instead of `Oli.ReleaseTasks.setup()` in the instructions below.","ref":"self-hosted.html#prerequisites"},{"type":"extras","title":"Initial Setup - self-hosted","doc":"","ref":"self-hosted.html#initial-setup"},{"type":"extras","title":"Torus User and Directory - self-hosted","doc":"Once you have provisioned a linux server, it is recommended you set up a specific user and directory from which to deploy Torus. This guide will assume a user `torus` and a directory `/torus` from where the app will be deployed.","ref":"self-hosted.html#torus-user-and-directory"},{"type":"extras","title":"Configuration - self-hosted","doc":"Get started by opening an SSH session and configuring Torus env.\n\n```\ncd /torus\nvim oli.env\n```\n\nThis file will define the necessary configs for torus to run and can also be used to modify various other aspects of the system. Make sure to replace any values in ` ` below. At a minimum, this file should contain:\n\n```","ref":"self-hosted.html#configuration"},{"type":"extras","title":"default administrator - self-hosted","doc":"ADMIN_EMAIL= \nADMIN_PASSWORD=","ref":"self-hosted.html#default-administrator"},{"type":"extras","title":"public host name - self-hosted","doc":"HOST=","ref":"self-hosted.html#public-host-name"},{"type":"extras","title":"Used to specify which port to expose the http server on, but doesnt affect the public url. - self-hosted","doc":"","ref":"self-hosted.html#used-to-specify-which-port-to-expose-the-http-server-on-but-doesnt-affect-the-public-url"},{"type":"extras","title":"useful for when you are using a proxy and need to run torus on a specific port without changing the - self-hosted","doc":"","ref":"self-hosted.html#useful-for-when-you-are-using-a-proxy-and-need-to-run-torus-on-a-specific-port-without-changing-the"},{"type":"extras","title":"public url - self-hosted","doc":"HTTP_PORT=80","ref":"self-hosted.html#public-url"},{"type":"extras","title":"Database url with credentials - self-hosted","doc":"DATABASE_URL=ecto:// : @postgres/oli","ref":"self-hosted.html#database-url-with-credentials"},{"type":"extras","title":"Email sending - self-hosted","doc":"EMAIL_FROM_NAME=\"OLI Torus\"\nEMAIL_FROM_ADDRESS=\"no-reply@example.edu\"\nEMAIL_REPLY_TO=","ref":"self-hosted.html#email-sending"},{"type":"extras","title":"Amazon AWS S3 and SES email services - self-hosted","doc":"AWS_ACCESS_KEY_ID= \nAWS_SECRET_ACCESS_KEY= \nAWS_REGION=","ref":"self-hosted.html#amazon-aws-s3-and-ses-email-services"},{"type":"extras","title":"S3 storage service config used for storing and serving media - self-hosted","doc":"S3_MEDIA_BUCKET_NAME= \nMEDIA_URL=","ref":"self-hosted.html#s3-storage-service-config-used-for-storing-and-serving-media"},{"type":"extras","title":"Google recaptcha key and secret - self-hosted","doc":"RECAPTCHA_SITE_KEY= \nRECAPTCHA_PRIVATE_KEY=","ref":"self-hosted.html#google-recaptcha-key-and-secret"},{"type":"extras","title":"Secret key base - self-hosted","doc":"","ref":"self-hosted.html#secret-key-base"},{"type":"extras","title":"A random 64 byte string. You can generate one by calling: openssl rand -base64 64 - self-hosted","doc":"SECRET_KEY_BASE=","ref":"self-hosted.html#a-random-64-byte-string-you-can-generate-one-by-calling-openssl-rand-base64-64"},{"type":"extras","title":"Live view salt - self-hosted","doc":"","ref":"self-hosted.html#live-view-salt"},{"type":"extras","title":"A random 64 byte string. You can generate one by calling: openssl rand -base64 64 - self-hosted","doc":"LIVE_VIEW_SALT= \n\n```\n\nFor more configuration variables, see [oli.example.env](https://github.com/Simon-Initiative/oli-torus/blob/master/oli.example.env).","ref":"self-hosted.html#a-random-64-byte-string-you-can-generate-one-by-calling-openssl-rand-base64-64"},{"type":"extras","title":"Deploying a release - self-hosted","doc":"Torus releases are built automatically on each new commit to master. These prebuilt releases are created specifically for Amazon Linux 2, but Torus can also be built for any other platform using the [Building Releases and Production Deployments](Building-Releases-for-Production-Deployments) guide and continuing at Step 2.","ref":"self-hosted.html#deploying-a-release"},{"type":"extras","title":"Using a Prebuilt Release with Amazon Linux 2 (Recommended) - self-hosted","doc":"1. Download a prebuilt release by first identifying the version number and first 7 digits of the release SHA you wish to deploy. These can be found on the [releases page](https://github.com/Simon-Initiative/oli-torus/releases) on the left side of each release (recommended), or alternatively for unstable bleeding-edge builds the [master commit history](https://github.com/Simon-Initiative/oli-torus/commits/master) can be used in combination with whichever version is set in mix.exs for that particular commit.\n\n```\nRELEASE_VERSION=0.18.3\nRELEASE_SHA=c9d615b\n\n# fetch the release package from the official torus builds S3 bucket\ncurl --fail -L https://oli-torus-releases.s3.amazonaws.com/oli-${RELEASE_VERSION}-${RELEASE_SHA}.zip -o\noli-${RELEASE_VERSION}-${RELEASE_SHA}.zip\n\n# unzip release\nunzip oli-*.zip -d oli\nchmod -R +x ./oli\n\n# cleanup release zip\nrm -rf ./oli-*.zip\n```\n\n2. Import configs\n\n```\nset -a; source ./oli.env\n```\n\n3. Initialize the Database\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.setup()\"\n```\n\n4. Start Torus\n\n```\n./oli/bin/oli start\n```","ref":"self-hosted.html#using-a-prebuilt-release-with-amazon-linux-2-recommended"},{"type":"extras","title":"Command Reference - self-hosted","doc":"Start\n\n```\n./oli/bin/oli start\n```\n\nStop\n\n```\n./oli/bin/oli stop\n```\n\nDaemonize\n\n```\n./oli/bin/oli daemon\n```\n\nTo learn more about these and other elixir release commands, see https://hexdocs.pm/mix/Mix.Tasks.Release.html","ref":"self-hosted.html#command-reference"},{"type":"extras","title":"Attach to Remote iex Shell - self-hosted","doc":"This will open a remote iex shell in a running instance\n\n```\n./oli/bin/oli remote\n```\n\nYou can also execute a single command using rpc\n\n```\n./oli/bin/oli rpc \"IO.puts(:hello)\"\n```\n\n**NOTE:** Since all Torus modules are available and any public function can be executed, be sure to take care in which functions you call so that you do not put the system into an unstable state. Try to avoid calls that involve the database but if necessary, be sure the function you are calling utilizes transactions in case of failure.\n\nSee https://hexdocs.pm/mix/Mix.Tasks.Release.html#module-one-off-commands-eval-and-rpc for more information.","ref":"self-hosted.html#attach-to-remote-iex-shell"},{"type":"extras","title":"Useful Release Tasks - self-hosted","doc":"**\\*\\*\\*IMPORTANT - RUN THIS BEFORE RUNNING ANY TASK\\*\\*\\***\n\nAll of the following tasks require environment configs before running:\n\n```\nset -a; source ./oli.env\n```","ref":"self-hosted.html#useful-release-tasks"},{"type":"extras","title":"Initial setup - self-hosted","doc":"Create, migrate, and seed the database before first run\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.setup\"\n```","ref":"self-hosted.html#initial-setup"},{"type":"extras","title":"Seed the database - self-hosted","doc":"After a new release is deployed, it is a good idea to run this task to apply any migrations\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.seed\"\n```","ref":"self-hosted.html#seed-the-database"},{"type":"extras","title":"Migrate the database - self-hosted","doc":"After a new release is deployed, it is a good idea to run this task to apply any migrations\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.migrate\"\n```","ref":"self-hosted.html#migrate-the-database"},{"type":"extras","title":"Rollback a database migration - self-hosted","doc":"After a new release is deployed, it is a good idea to run this task to apply any migrations\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.rollback(:oli, \" \")\"\n```","ref":"self-hosted.html#rollback-a-database-migration"},{"type":"extras","title":"Reset the database - self-hosted","doc":"```\n############################################################################################","ref":"self-hosted.html#reset-the-database"},{"type":"extras","title":"WARNING! The following command will wipe all data in the database. Please use caution! ## - self-hosted","doc":"############################################################################################","ref":"self-hosted.html#warning-the-following-command-will-wipe-all-data-in-the-database-please-use-caution"},{"type":"extras","title":"reset the database (requires interactive confirmation) - self-hosted","doc":"./oli/bin/oli eval \"Oli.ReleaseTasks.reset()\"","ref":"self-hosted.html#reset-the-database-requires-interactive-confirmation"},{"type":"extras","title":"reset the database (no interactive confirmation for scripting purposes, you better know what you are doing) - self-hosted","doc":"./oli/bin/oli eval \"Oli.ReleaseTasks.reset(%{ force: true })\"\n```\n\nOther public functions defined in [lib/oli/release.ex](https://github.com/Simon-Initiative/oli-torus/blob/master/lib/oli/release.ex) are also available as tasks in this way.","ref":"self-hosted.html#reset-the-database-no-interactive-confirmation-for-scripting-purposes-you-better-know-what-you-are-doing"},{"type":"extras","title":"HAProxy Configuration and SSL Certificates - self-hosted","doc":"It is recommended you run torus behind a load balancer or proxy that supports SSL termination and use that to manage SSL certificates. For convenience, a default certificate is provided by torus for development mode only but it is self-signed and therefore will show browser warnings when used.\n\nTorus can either be configured to terminate SSL certificates using `SSL_CERT_PATH ` and `SSL_KEY_PATH ` or can be hosted behind a proxy. The most flexible and straightforward solution is to configure Torus behind a proxy using the `HTTP_PORT` config set to whichever port you intend to point to from your proxy. You can also [setup LetsEncrypt certbot](https://www.digitalocean.com/community/tutorials/how-to-secure-haproxy-with-let-s-encrypt-on-centos-7) to automatically renew SSL certificates before they expire. For example, with `HTTP_PORT=8080` set in `oli.env`, your HAProxy `haproxy.cfg` might look something like this:\n\n```\nglobal\n # SSL options\n ssl-default-bind-ciphers AES256+EECDH:AES256+EDH:!aNULL;\n tune.ssl.default-dh-param 4096\n\ndefaults\n mode http\n timeout connect 5000ms\n timeout client 50000ms\n timeout server 50000ms\n option forwardfor\n\n # never fail on address resolution\n default-server init-addr last,libc,none\n\nfrontend http\n bind *:80\n mode http\n\n # if this is an ACME request to proof the domain owner, then redirect to certbot server\n acl is_acme_challenge path_beg -i /.well-known/acme-challenge/\n\n redirect scheme https code 301 if !is_acme_challenge !{ ssl_fc }\n\n use_backend letsencrypt if is_acme_challenge\n\nfrontend https\n bind *:443 ssl crt /etc/haproxy/certs/ no-sslv3 no-tls-tickets no-tlsv10 no-tlsv11\n http-response set-header Strict-Transport-Security \"max-age=16000000; includeSubDomains; preload;\"\n\n acl no_server nbsrv(www) lt 1\n use_backend maintenance if no_server\n\n default_backend www\n\nbackend letsencrypt\n server letsencrypt 127.0.0.1:54321\n\nbackend www\n server www 127.0.0.1:8080 check\n http-request add-header X-Forwarded-Proto https if { ssl_fc }\n\n```","ref":"self-hosted.html#haproxy-configuration-and-ssl-certificates"},{"type":"extras","title":"Firewall Configuration - self-hosted","doc":"If your server has a firewall, be sure to open the necessary tcp ports. If using HAProxy, these will probably be `80/tcp` and `443/tcp`. If using a load balancer and you have `HTTP_PORT` configured, then that should be the port you expose.","ref":"self-hosted.html#firewall-configuration"},{"type":"extras","title":"Systemd and autostart on reboot - self-hosted","doc":"You may want to configure torus as a systemd service to take full advantage of automatic start on reboot, logging, and other facilities.\n\nHere is an example of `/etc/systemd/system/torus.service` configured as a systemd service\n\n```\n[Unit]\nDescription=torus\n\n[Service]\nExecStart=/app/oli/bin/oli start\nExecStop=/app/oli/bin/oli stop\n\n\n[Install]\nWantedBy=multi-user.target\n```\n\nThis will also require a duplicate of oli.env config file in `/etc/systemd/system/torus.service.d/torusenv.conf` in the format:\n\n```\n[Service]\nEnvironment=\"HOST=mydomain.example.edu\"\nEnvironment=\"PORT=80\"\n\n```","ref":"self-hosted.html#systemd-and-autostart-on-reboot"},{"type":"extras","title":"AppSignal - self-hosted","doc":"APM for Ruby, Elixir & Node.js that includes error, performance, host, dashboards, anomalies and uptime monitoring. By default it is disabled and is not required for application to run. However, you can choose to activate AppSignal by adding the following ENV variables:\n\n```\nAPPSIGNAL_OTP_APP=\"oli\"\nAPPSIGNAL_PUSH_API_KEY=\"your-push-api-key\"\nAPPSIGNAL_APP_NAME=\"Torus\"\nAPPSIGNAL_APP_ENV=\"prod\"\n```","ref":"self-hosted.html#appsignal"},{"type":"extras","title":"Client-side coding standard","doc":"# Client-side coding standard\n\nThis document outlines the rules and guidelines for client-side code development in Torus.\n\nClient-side code here refers to any code written by Torus developers that runs client-side in the browser. This includes complete standalone React applications and small snippets of code that run in the context of a server-rendered page.\n\nEach item here is categorized as either a rule (required) or a guideline (recommended but not absolutely required). Guidelines recognize that there are always unique circumstances where it makes sense to depart from the recommendation. Rules will include words like `must` and `always` and guidelines include words like `should` and `can`.","ref":"client-coding.html"},{"type":"extras","title":"Core language - Client-side coding standard","doc":"All client-side code must be written in Typescript as opposed to being written directly in JavaScript.\n\nAll code must be formatted using [Prettier](https://prettier.io) and pass [ESLint](https://eslint.org/) checks. A GitHub build step will fail for any PR that includes code that triggers an ESLint error.","ref":"client-coding.html#core-language"},{"type":"extras","title":"Types - Client-side coding standard","doc":"Developers should leverage the TypeScript type system to model the domain as much as possible. This includes using type aliases, union and intersection types, discriminated union types, and utility types (`Partial `, `Readonly `, etc).\n\nDevelopers should add TypeScript type annotations to all new code.\n\nDevelopers should use the TypeScript `type` construct over an `interface` for all cases except for when extensibility is needed. For example, a `type` cannot be used in the following:\n\n```javascript\ninterface Identifiable {\n id: string;\n}\n\nexport interface Paragraph extends Identifiable {\n type: \"p\";\n}\n```","ref":"client-coding.html#types"},{"type":"extras","title":"Async code - Client-side coding standard","doc":"Async code should be written using standard ES6 Promise support or async/await features.","ref":"client-coding.html#async-code"},{"type":"extras","title":"Functional programming - Client-side coding standard","doc":"Code should be written in a functional programming style, leveraging first-class functions, programming as transformation, immutability, pure functions, etc.\n\n#### Immutability\n\nCode should be written leveraging immutable data structures and techniques as must as possible, this is particular importance in React-based UI code.\n\nLegacy Echo code that ports existing Immutable.js code can stay as-is, but new code that needs immutable data structures should be written using Immer.js.\n\nDevelopers can use the `Object.assign({}, current, update)` pattern as well.\n\n#### Programming as transformation\n\nFor conciseness and readability, Code should make heavy use of `map` and `reduce` style data transformations instead of imperative loops and similar constructs. For example:\n\n```javascript\nreturn Object.keys(textEntity)\n .filter((attr) => textEntity[attr] === true)\n .map((attr) => supportedMarkTags[attr])\n .filter((mark) => mark)\n .reduce((acc, mark) => `<${mark}>${acc}`, text);\n```","ref":"client-coding.html#functional-programming"},{"type":"extras","title":"UI - Client-side coding standard","doc":"","ref":"client-coding.html#ui"},{"type":"extras","title":"Library/framework - Client-side coding standard","doc":"User interfaces must be built using React.\n\nDevelopers should seek first to implement a React component as a functional stateless component. State, if needed, should be added via `useState` or `useReducer` hooks. Side effects should be incorporated via `useEffect`. For more complicated use cases it is acceptable to fall back to a traditional, class-based React component.","ref":"client-coding.html#library-framework"},{"type":"extras","title":"State management - Client-side coding standard","doc":"Developers should strive to use the simplest approach possible for global state management. The simplest approach being not using any third-party state management library and instead just maintaining all top-level state in a component (via `useReducer` or one or more `useState` hooks) and passing it down through properties. This approach only scales so far, thus for more complicated applications developers should fall back to a third-party library for global state management.\n\nOur team's experience with Redux overall has been positive, but we recognize that there is a substantial amount of boilerplate in a type-safe Redux implementation. Given that Torus client tends to have smaller, more focused apps we are seeking lighter-weight Redux alternatives including `useReducer` and up and coming new libraries such as [https://recoiljs.org/](https://recoiljs.org/)","ref":"client-coding.html#state-management"},{"type":"extras","title":"Styling - Client-side coding standard","doc":"Components should leverage Bootstrap 4 and be written in a way that works with the Torus theming approach. TODO add more details here, but a main takeaway is that any custom CSS should be captured in a `.scss` definition file.","ref":"client-coding.html#styling"},{"type":"extras","title":"Testing - Client-side coding standard","doc":"Code should be unit tested using the existing `jest` based unit testing infrastructure.\n\nUI code should be structured in a way that allows the implementation of the logic to be decoupled from the UI implementation, so that this logic can be easily unit tested.","ref":"client-coding.html#testing"},{"type":"extras","title":"Server-side coding standard","doc":"# Server-side coding standard","ref":"server-coding.html"},{"type":"extras","title":"Code Formatting - Server-side coding standard","doc":"This project uses the default Elixir code formatting rules through running `mix format`. To enable auto-format on save, install the _ElixirLS_ plugin for your code editor and add a configuration option. For Visual Studio Code, you can do this by opening the config file with `cmd+p`, typing `> Open Settings`, and adding this line:\n\n- `\"editor.formatOnSave\": true`","ref":"server-coding.html#code-formatting"},{"type":"extras","title":"UI Code - Server-side coding standard","doc":"User interface code can be implemented using either traditional, stateless controller rendered templated views or with stateful Phoenix LiveView implementations.","ref":"server-coding.html#ui-code"},{"type":"extras","title":"Pull Request Template","doc":"# Pull Request Template\n\n- Fill out the template below as the body of your pull request. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.\n- The pull request must update the test suite to demonstrate the changed functionality.\n- After you create the pull request, all status checks must be pass before a maintainer reviews your contribution.","ref":"pr-template.html"},{"type":"extras","title":"Identify the Issue - Pull Request Template","doc":"Link to the issue describing the bug that you're fixing or the enhancement that you are implemening.\n\nIf there is not yet an issue that your work targets, please open a new issue and then link to that issue in your pull request.\nNote: In some cases, one person's \"bug\" is another person's \"feature.\" If the pull request does not address an existing issue with the \"bug\" label, the maintainers have the final say on whether the current behavior is a bug.","ref":"pr-template.html#identify-the-issue"},{"type":"extras","title":"Description of the Change - Pull Request Template","doc":"We must be able to understand the design of your change from this description. If we can't get a good idea of what the code will be doing from the description here, the pull request may be closed at the maintainers' discretion. Keep in mind that the maintainer reviewing this PR may not be familiar with or have worked with the code here recently, so please walk us through the concepts.","ref":"pr-template.html#description-of-the-change"},{"type":"extras","title":"Alternate Designs - Pull Request Template","doc":"Explain what other alternates were considered and why the proposed version was selected","ref":"pr-template.html#alternate-designs"},{"type":"extras","title":"Possible Drawbacks - Pull Request Template","doc":"What are the possible side-effects or negative impacts of the code change?","ref":"pr-template.html#possible-drawbacks"},{"type":"extras","title":"Verification Process - Pull Request Template","doc":"What process did you follow to verify that the change has not introduced any regressions? Describe the actions you performed (including buttons you clicked, text you typed, commands you ran, etc.), and describe the results you observed.","ref":"pr-template.html#verification-process"},{"type":"extras","title":"PR processes","doc":"# PR processes","ref":"changelog-pr.html"},{"type":"extras","title":"Feature development / bug fixing - PR processes","doc":"1. Developer performs feature work or bug fix on a branch off of `master`.\n2. Developer opens a pull request against `master` once the work is completed.\n3. Reviewer reviews the PR and either requests changes or approves.\n4. After approval, the reviewer **squashes and merges** to master, updating the commit message to summarize the entirety of the work item. This aggregate commit message must be prefixed with the change type, a ticket reference and a description. For example, `[BUG FIX] [MER-1234] A description` or `[FEATURE] [NG23-29] Another description`.","ref":"changelog-pr.html#feature-development-bug-fixing"},{"type":"extras","title":"Valid Change Types - PR processes","doc":"- `[FEATURE]`: New feature for the user\n- `[ENHANCEMENT]`: Small improvements to existing features\n- `[BUG FIX]`: Bug fix for an existing feature\n- `[CHORE]`: Updating of build infrastructure, deployment automation, branch merging, docs, etc.\n- `[PERFORMANCE]`: Changes that target a performance improvement","ref":"changelog-pr.html#valid-change-types"},{"type":"extras","title":"Valid ticket references - PR processes","doc":"- `[MER-xxxx]`: MER board tickets\n- `[NG23-xxxx]`: NG board tickets","ref":"changelog-pr.html#valid-ticket-references"},{"type":"extras","title":"CI/CD and Deployment Process","doc":"# CI/CD and Deployment Process","ref":"deployment.html"},{"type":"extras","title":"Overview - CI/CD and Deployment Process","doc":"Torus uses Github Actions for its CI/CD pipelines. When a PR is opened, a build is automatically started and several checks are run including unit tests and lint checks which must all pass before a PR can be merged. Once a branch is merged into master, the resulting commit is packaged and deployed to the test server ([tokamak.oli.cmu.edu](https://tokamak.oli.cmu.edu)). The test server will always represent the latest from master unless a manual deployment is made. When a release is made (tagged vX.Y.Z), a deployment is kicked off to the production server ([proton.oli.cmu.edu](proton.oli.cmu.edu)). A production deployment will always use a prebuilt artifact identified by the version and commit SHA to ensure that the release tested is the same as the release deployed.\n\n**Test Server:** [tokamak.oli.cmu.edu](tokamak.oli.cmu.edu)\n\n**Production Server:** [proton.oli.cmu.edu](proton.oli.cmu.edu)","ref":"deployment.html#overview"},{"type":"extras","title":"Pull Requests - CI/CD and Deployment Process","doc":"Every pull request is required to pass a set of status checks in both Elixir and Typescript including a successful build, all unit tests passing, and successful lint with no errors (TypeScript). These checks are automatically started when a pull request is created. Other automated checks include Coveralls for unit test coverage and GitGuardian for identifying accidentally leaked secrets, however these checks are only informative and discretion is left to the developer and code reviewer to decide if issues found are blocking.","ref":"deployment.html#pull-requests"},{"type":"extras","title":"Deployments to Test - CI/CD and Deployment Process","doc":"Deployments to the test server are automatically initiated when a pull request is landed to master. This means the test server will usually be up-to-date with the latest changes from the master branch. There are some situations however, when someone may want to manually push a deployment to the test server which can be accomplished with the following:","ref":"deployment.html#deployments-to-test"},{"type":"extras","title":"Release Candidates - CI/CD and Deployment Process","doc":"If a release candidate is created with a tag formatted as `vX.Y.Z-rcN` where X.Y.Z represents a version number and N is the release candidate number, a deployment of the tag's targeted ref will be deployed to the test server.\n\n1. Go to https://github.com/Simon-Initiative/oli-torus/releases and click \"Draft a new release\"\n1. Enter your vX.Y.X-rcN for **Tag version** and **Release Title**\n1. Add the Features and Bug Fixes sections (formatted as markdown) to the description\n1. Check \"This is a pre-release\"\n1. Click \"Publish release\"\n\n### `deploy-test` Tag\n\nA deployment can be initiated by tagging any git ref with the `deploy-test` tag and pushing to remote. For example:\n\n```\ngit tag --delete deploy-test # if the tag previously existed locally\ngit tag deploy-test\ngit push origin deploy-test --force\n```","ref":"deployment.html#release-candidates"},{"type":"extras","title":"Deployments to Production - CI/CD and Deployment Process","doc":"Deployments to the production server will be initiated when a release is created with the tag formatted as `vX.Y.Z` where X.Y.Z represents a version number.\n\n> **Note:** Production deployments assume a previous build has been packaged, and therefore any commit tagged as a release must exist on the `master` branch, a `hotfix|prerelease-*` branch or be packaged by tagging the commit with the `package` tag first.","ref":"deployment.html#deployments-to-production"},{"type":"extras","title":"Hotfixes - CI/CD and Deployment Process","doc":"A hotfix branch can be created using the release tag you wish to branch from. For example:\n\n```\ngit checkout -b hotfix-X.Y.[Z+1] vX.Y.Z\ngit push origin hotfix-X.Y.[Z+1]\n```\n\nOnce the hotfix branch is created, it will essentially act as the master branch to land all bug fixes and enhancements that are intended to be included in the hotfix.\n\nWhen a hotfix branch is ready to be deployed, it can be tagged using the **Release Candidate** and **Deployment Process** outlined above. Hotfix branches that follow the convention `hotfix-` will automatically be packaged when pushed to remote, just like master. Make sure to wait for the package step to complete before creating a release, or else the deployment will fail.\n\n> **Note:** Because hotfix branches are automatically packaged based on the branch name convention, there is no need to manually tag with `package` before deploying.\n\nFinally, make sure the hotfix branch is eventually merged back to master to be included in downstream development. To do this easily, create a new branch from the hotfix branch called `integrate-X.Y.Z` (the name here is not necessarily important, but just serves as an example). Then pull `master` into this integration branch. Once any/all merge conflicts are resolved, open a PR against master.","ref":"deployment.html#hotfixes"},{"type":"extras","title":"Production Deployments","doc":"# Production Deployments","ref":"building.html"},{"type":"extras","title":"Using a Prebuilt Release (Recommended) - Production Deployments","doc":"Torus releases are built automatically with each new commit to master and uploaded to the public S3 bucket `oli-torus-releases`. These prebuilt releases are created specifically for Amazon Linux 2, but Torus can also be built for any other platform using the [Building a Release](#Building-a-Release) guide below. To download a prebuilt release, start by first identifying the version number and first 7 digits of the release SHA you wish to deploy. These can be found on the [releases page](https://github.com/Simon-Initiative/oli-torus/releases) on the left side of each release (recommended), or alternatively for unstable bleeding-edge builds the [master commit history](https://github.com/Simon-Initiative/oli-torus/commits/master) can be used in combination with whichever version is set in mix.exs for that particular commit.\n\n```\nRELEASE_VERSION=0.18.3\nRELEASE_SHA=c9d615b\n\n# fetch the release package from the official torus builds S3 bucket\ncurl --fail -L https://oli-torus-releases.s3.amazonaws.com/oli-${RELEASE_VERSION}-${RELEASE_SHA}.zip -o oli-${RELEASE_VERSION}-${RELEASE_SHA}.zip\n```","ref":"building.html#using-a-prebuilt-release-recommended"},{"type":"extras","title":"Building a Release - Production Deployments","doc":"Torus recommends using [elixir releases](https://hexdocs.pm/mix/Mix.Tasks.Release.html) for production deployments. You will have to have [Elixir installed on your machine](https://elixir-lang.org/install.html) to build Torus.\n\nA release can be created by executing [the following script](https://github.com/Simon-Initiative/oli-torus/blob/master/.github/actions/amazon-linux-builder/entrypoint.sh) in the oli-torus repository with a current git commit SHA set to `RELEASE_SHA`. This will compile a release for the system architecture on which it is executed:\n\n```\n# clone the oli-torus repository\ncd /tmp\ngit clone https://github.com/Simon-Initiative/oli-torus.git\ncd oli-torus\n\n# setup asset build dependencies\nnpm install -g yarn\nyarn --cwd ./assets\n\nRELEASE_SHA=$(git rev-parse --short HEAD)\nsh .github/actions/amazon-linux-builder/entrypoint.sh\n```\n\nYou'll find the newly built release under `_build/prod/rel/oli`. This can be zipped and deployed however you see fit (e.g. sftp, S3 and curl, etc.).\n\n```\ncd _build/prod/rel/oli\nzip -r ../../../../oli-${RELEASE_SHA}.zip *\n```\n\nThe release will contain all the necessary binaries to run Torus including the Erlang RunTime System and the BEAM virtual machine (except for NodeJS, which is expected to be installed on the target and available in the torus user's `PATH`). For more information on setting up a production environment, refer to the [Setting Up a Production Server](https://github.com/Simon-Initiative/oli-torus/wiki/Setting-Up-A-Production-Server) guide.\n\nOnce a release has been created and deployed to the target machine where you intend to run it, you can\nexecute predefined [release commands](Setting-Up-a-Production-Server#command-reference) to start/stop/daemonize the app.\nTo perform any of these though, you must first source the `oli.env` configuration into the current shell to configure the environment.\n\nConfigure Environment (**REQUIRED** before running any eval or iex commands)\n\n```\nset -a; source ./oli.env\n```\n\nStop the server\n\n```\n./oli/bin/oli stop\n```\n\nPrepare the release\n\n```\n# remove old deployment, if one exists\nrm -rf ./oli/\n\nunzip oli-*.zip -d oli\nchmod -R +x ./oli\n\n# cleanup release zip\nrm -rf ./oli-*.zip\n```\n\nMigrate and Seed Database\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.migrate_and_seed\"\n```\n\nRestart the server\n\n```\n./oli/bin/oli daemon\n```","ref":"building.html#building-a-release"},{"type":"extras","title":"NOTES - Production Deployments","doc":"- If you see the following deps build error, you must [install OpenSSL 1.1](https://gist.github.com/fernandoaleman/5459173e24d59b45ae2cfc618e20fe06) in order for AppSignal to compile and work properly.\n\n ```\n ==> appsignal\n Downloading agent release\n AppSignal installation failed: Could not download archive from any of our mirrors.\n Please make sure your network allows access to any of these mirrors.\n Attempted to download the archive from the following urls:\n - URL: https://appsignal-agent-releases.global.ssl.fastly.net/7376537/appsignal-x86_64-linux-all-static.tar.gz\n - Error (hackney response):\n {:error, {:options, {:insufficient_crypto_support, {:\"tlsv1.3\", {:versions, [:\"tlsv1.3\", :\"tlsv1.2\"]}}}}}\n\n - URL: https://d135dj0rjqvssy.cloudfront.net/7376537/appsignal-x86_64-linux-all-static.tar.gz\n - Error (hackney response):\n {:error, {:options, {:insufficient_crypto_support, {:\"tlsv1.3\", {:versions, [:\"tlsv1.3\", :\"tlsv1.2\"]}}}}}\n ```","ref":"building.html#notes"},{"type":"extras","title":"Introduction","doc":"# Introduction\n\nTorus is a learning engineering platform for authoring, delivering and improving online courses.","ref":"introduction.html"},{"type":"extras","title":"Key Features - Introduction","doc":"- **Automated Course Project Lifecyle** Authors can make edits and \"push a button\" to have those edits made available to end users\n- **Tight LMS Integration** Torus is accessible from any LTI 1.3 compliant LMSes, and Torus defers to those LMSes roster management, gradebook and other functionality\n- **Run-time extensibility** The system can have new content types and learning activities added to it at run-time by third party developers\n- **Simon Ecosystem Integration** Torus will enable deep integrations with existing and future Simon Ecosystem projects\n- **Learning Engineering Centric UX** Learning engineering science and best practies embedded in the UI/UX guide users through effective course creation","ref":"introduction.html#key-features"},{"type":"extras","title":"Key Design and Technical Considerations - Introduction","doc":"The following are the key non-functional requirements and considerations that fuel Torus technology and design choices:\n\n- **Usability** Torus must be understandable and approachable by new users, especially those unfamiliar with learning engineering concepts\n- **Extensibility** - Several aspects of the system are designed to be extended. The main focus of\n system extensibility is to support the development of new student-facing learning activities.\n- **Interoperability** - Torus is designed to interoperate seemlessly with external systems such\n as Learning Management Systems, using relevant industry standards\n- **Scalability** Torus must scale to 10x to 100x the user load of the current OLI system, which at peak usage levels sees around 1,000 reqs/min","ref":"introduction.html#key-design-and-technical-considerations"},{"type":"extras","title":"Technology Stack Overview - Introduction","doc":"","ref":"introduction.html#technology-stack-overview"},{"type":"extras","title":"Elixir/Phoenix - Introduction","doc":"All server side code in Torus is implemented in Elixir using the Phoenix web application framework.\n\nTorus also powers client-side UIs with Elixir code via Phoenix LiveView.","ref":"introduction.html#elixir-phoenix"},{"type":"extras","title":"TypeScript/React - Introduction","doc":"The limited amount of pure client-side code in Torus is written in TypeScript and utilises React for UI.","ref":"introduction.html#typescript-react"},{"type":"extras","title":"Postgres - Introduction","doc":"Primary data storage uses Postgres RDBMS.","ref":"introduction.html#postgres"},{"type":"extras","title":"Architectural Overview - Introduction","doc":"Torus is implemented in an\narchitecture that resembles that of a traditional monolithic web-based application. There is a single application server\nthat handles end user requests from web browser clients through a layered set of services that ultimately access\nthe persistence layer.\n\nA diagram of this architecture at a conceptual level is as follows:\n\n![conceptual architecture](assets/conceptual.png \"Conceptual Architecture\")\n\nTorus is designed to take advantage of Phoenix clustering support and Distributed Erlang to meet scalability and performance\nrequirements. The various \"Applications\" that comprise Torus can be replicated across and run on any number of Erlang nodes that\nare part of the cluster. This allows Torus to mimic modern, scalable service based architectures by varying its deployed configuration.","ref":"introduction.html#architectural-overview"},{"type":"extras","title":"High-level design","doc":"# High-level design\n\nThis page outlines fundamental system design choices","ref":"high-level.html"},{"type":"extras","title":"Roles - High-level design","doc":"System roles are divided into two categories. A user can be represented by a single role in each category.","ref":"high-level.html#roles"},{"type":"extras","title":"Authoring - High-level design","doc":"| Role | Description |\n| ----------------- | :---------------------------------------------------------------------------------------------------------------------------------------: |\n| **Author** | Someone who owns and/or contributes to the creation of course content |\n| **Administrator** | Someone who is in charge of administering the entire system. Administrators have complete access to all content and administrative tools. |","ref":"high-level.html#authoring"},{"type":"extras","title":"Delivery - High-level design","doc":"| Role | Description |\n| ----------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n| **Student** | Someone who has accessed the system from an LMS as a student. Students have the ability to view course content, complete coursework and earn assignment grades. |\n| **Instructor** | Someone who has accessed the system from an LMS as an instructor. Instructors can create/edit a course section and modify content for that section. |\n| **Administrator** | Someone who has accessed the system from an LMS as an administrator. Administrators have all the same capabilities as instructors as well as the ability change institution-wide settings such as LTI integration or policies. |","ref":"high-level.html#delivery"},{"type":"extras","title":"System Ontology - High-level design","doc":"","ref":"high-level.html#system-ontology"},{"type":"extras","title":"Resource - High-level design","doc":"A resource is an organized collection of content that is versioned and tracks content changes over time. Resources have a globally unique identifier across projects so that even if their content has diverged (different HEAD revision), they have the ability to diff and merge content with the same resource in other projects. Content within the system that is intended to track/diff/merge changes over time and provide rich versioning support is most likely using a resource to do this. Some examples of resource types are Page, Assessment, Activity, Learning Objective, etc...","ref":"high-level.html#resource"},{"type":"extras","title":"Resource Revision - High-level design","doc":"A resource revision represents a resource at a specific moment in it's revision history. A revision points to it's parent revision and therefore links to all of it's previous ancestors. The latest revision for a resource is referred to as the HEAD revision and it is referenced by the resource as it's last revision. If a revision's parent is null, then it is the initial revision of a resource. Revisions also track a resource's slug which is described in another section below.\n\n```\n------------- HEAD INITIAL\n| Resource | -> Revision -> Revision -> Revision -> Revision\n-------------\n```","ref":"high-level.html#resource-revision"},{"type":"extras","title":"Project - High-level design","doc":"A project is an organized container of all the resources that comprise a course and it's curriculum. These resources include pages, assessments, learning objectives, and media.","ref":"high-level.html#project"},{"type":"extras","title":"Publication - High-level design","doc":"A publication is a snapshot of a project at some point in time. Publications serve as an update, version or milestone of a project that an author deems ready for production use. Publications are created when a package is published which then become available for instructors to use for creating or updating a course section.","ref":"high-level.html#publication"},{"type":"extras","title":"Section - High-level design","doc":"A section is an instance of a course publication that is configured by an instructor and delivered to students. A new section will be created for each LMS context or cohort of students intended to access course content. A section tracks learner progress and reports grades back to the connected LMS.","ref":"high-level.html#section"},{"type":"extras","title":"Resource Slug - High-level design","doc":"When a resource is created, a slug will be generated based on some semantic meaning for the resource (e.g. using the resource title). This slug is actually stored at the revision level because it can change over time as the resource changes. For example, if a resource with title \"Introduction to Linear Algebra\" is created, then it's slug might be introduction-linear-algebra-55jl2k. As changes are made to the content, but not the title, this slug may remain the same for each new revision that gets created. If at some point the title is changed to \"Basic Linear Algebra Concepts\", the slug might change to basic-linear-algebra-conc-w8s25t. This slug is now related to the new semantic meaning of it's resource at that revision. It's important to understand however, that even though there are two different slugs for multiple different revisions, they are really just identifiers for the parent resource and both can be used to find a specific resource.\n\nTo summarize, a slug is a resource identifier that is stored at the revision level. Slugs do not have to change across revisions, but they can. Multiple slugs can point to a single resource.","ref":"high-level.html#resource-slug"},{"type":"extras","title":"Publication Model","doc":"# Publication Model","ref":"publication-model.html"},{"type":"extras","title":"Overview - Publication Model","doc":"Torus employs a publication model that is designed to support:\n\n- The ability to allow forward development for an author without interferring with student and instructor visible content\n- The ability to track changes across revisions of a project resource\n- The ability to migrate changes for resources across different projects\n- The ability to allow instructors to preview and opt-in to using newly published content","ref":"publication-model.html#overview"},{"type":"extras","title":"Data Model - Publication Model","doc":"The primary components and their relationships are as follows:\n\n![publication model](assets/pub-er.png \"Publication Model\")\n\nA `Resource` in a course project can be a page (graded or ungraded),\ncontainer (e.g. Unit, Module), an activity, or learning objective. A course\nproject consists of a collection of resources. This relationship is\na many-to-many relationship to allow multiple course projects to share\nthe same resource. That is a key aspect of Torus design to allow families\nof related course projects to exist in which content and changes of a\nshared resource can migrate from course to course within the course project\nfamily.\n\nChanges in the content of any particular resource, over time, are modeled as a collection of `Revisions`, hence the one-to-many relationship from `Resource` to `Revision`.\n\nA course project has a series of `Publications`. A publication is\neither `published` (meaning it is available and visible to instructors to use)\nor it is `unpublished`. Course `Sections` that an instructor teaches reference\nexactly one `Publication` for the course projects that the section is using.\n\nFinally, at the heart of the publication model, the `Published Resource` exists to tie together a specific revision for every resource in a course for a specific publication.","ref":"publication-model.html#data-model"},{"type":"extras","title":"Example Data - Publication Model","doc":"As an example of this publication model, consider the following table of\n`Published Resource` records, all from one course project that consists\nof two resources identified by `R1` and `R2` that have revision records identified by `V1` and `V2`, respectively. Initially the course has one publication identified by `P1` so the published resource records look like:\n\n| Publication | Resource | Revision |\n| ----------- | :------: | :------: |\n| P1 | R1 | V1 |\n| P1 | R2 | V2 |\n\nThe course author makes a change to the `R2` resource and publishes that\nchange as a second publication `P2`. Now the published resource records\nlook like:\n\n| Publication | Resource | Revision |\n| ----------- | :------: | :------: |\n| P1 | R1 | V1 |\n| P1 | R2 | V2 |\n| P2 | R1 | V1 |\n| P2 | R2 | V3 |\n\nIn the above, we see how the original publication is preserved - so any\ncourse sections teaching it will have their content unaffected by the new\npublication. Any course section that opts-in to using the `P2` publication\nwill see the update to the `R2` resource.","ref":"publication-model.html#example-data"},{"type":"extras","title":"Attempt design","doc":"# Attempt design\n\nTorus _attempts_ track student interaction and results for pages, activities and parts of activities.","ref":"attempt.html"},{"type":"extras","title":"Attempt Hierarchy - Attempt design","doc":"Torus models attempts in a hierarchy that mirrors the hierarchical\nstructure of course content. So for every\npage that a student visits in Torus a _page attempt_ record is created.\nFor every activity that exists on a visited page, an _activity\nattempt_ record is created (which points back to the parent page attempt\nrecord). Finally, for every part that an activity defines, a _part attempt_\nrecord is created.\n\nThe entire attempt hierarchy is rooted in a _resource access_ record\nthat tracks, amongst other things, the rolled up student result (aka grade)\nacross all attempts.","ref":"attempt.html#attempt-hierarchy"},{"type":"extras","title":"Attempt History - Attempt design","doc":"The Torus attempt hierarchy supports preservation of\nhistorical attempts. Consider an example where a student takes a graded\nassessment (i.e. a page) that contains two activities (each with one part) twice. The full\nattempt hierarchy, with history, would look like the following:\n\n```\nResource Access\n--Page Attempt 1\n----Activity A, Attempt 1\n------Part 1, Attempt 1\n----Activity B, Attempt 1\n------Part 1, Attempt 1\n--Page Attempt 2\n----Activity A, Attempt 1\n------Part 1, Attempt 1\n----Activity B, Attempt 1\n------Part 1, Attempt 1\n```\n\nAs another example, consider an ungraded page that contains one activity\nthat a student attempts several times:\n\n```\nResource Access\n--Page Attempt 1\n----Activity A, Attempt 1\n------Part 1, Attempt 1\n----Activity A, Attempt 2\n------Part 1, Attempt 1\n----Activity A, Attempt 3\n------Part 1, Attempt 1\n----Activity A, Attempt 4\n------Part 1, Attempt 1\n```","ref":"attempt.html#attempt-history"},{"type":"extras","title":"Attempt States - Attempt design","doc":"Attempts can exist in multiple states. These states are:\n\n- **Non-existent**: The student has yet to access the page, thus no attempt exists.\n- **Active**: A student attempt is \"active\" when they are currently interacting\n with this page or activity therefore the attempt is \"active\".\n- **Submitted**: The student submitted a response for an activity that requires manual\n instructor scoring, thus the attempt enters a \"submitted\" state. The attempt is now\n read-only for the student.\n- **Evaluated**: The student response has been evaluated (whether automatically or manually) and a score has been recorded into the attempt record. The attempt is now read-only for both the instructor and student.","ref":"attempt.html#attempt-states"},{"type":"extras","title":"Attempt handling","doc":"# Attempt handling\n\nWhen the underlying page or activity has a new revision available due to the\ninstructor applying a new course project publication, Torus handles existing page and\nactivity attempts in different ways depending on the attempt state.","ref":"attempt-handling.html"},{"type":"extras","title":"Ungraded Pages - Attempt handling","doc":"Here is how updates to content are applied to attempts in ungraded pages:\n\n- _Evaluated_ or _Submitted_: Evaluated and submitted attempts are affected in no way\n by new revision publication.\n These attempts always maintain a reference to the revision of the page or the activity\n that existed at the time of submission or evaluation. If a student \"Resets\" an evaluated attempt to\n create another attempt, this new attempt will always show the content of the most recentl\n published revision.\n- _Active_: Active activity attempts are left as-is by the system until the time that the\n student accesses the page again. In this\n manner, a student that is in the middle of interacting with a page that contains\n activities will not have this content updated by new revision publication. It is only at the time that a student revisits a page that\n has an active attempt where\n Torus will detect that a new revision of the page or activity is available. There are\n two cases to consider here:\n\n 1. The page itself has a new revision available. In this case, Torus simply creates a\n new page attempt record with all new activity attempt records for the student. The reasoning here\n is that since actual page content itself has changed the system should give all new activity\n attempts to allow the student to see these activities in the context of the latest page content.\n 2. Only activity revisions have changed. In this case, a new activity attempt will be created\n for each of only the changed activities. No new page attempt is created.\n\n- _Non existent_: For pages that a student has never visited, there is of course no attempt\n hierarchy present. At the time of first visit, the student will always encounter the latest published\n revision for the page and activities.","ref":"attempt-handling.html#ungraded-pages"},{"type":"extras","title":"Graded Pages - Attempt handling","doc":"- _Evaluated_ or _Submitted_: Both evaluated and submitted attempts for graded pages are affected in no way by new revision publication.\n Similar to ungraded page attempts, these attempts always maintain a reference to the revision of the page or the activity that existed at the time of finalization.\n- _Active_: Active activity attempts are left as-is by the system. In this\n manner, a student that is in the middle of interacting with a graded page will not have the content\n that they see updated by new revision publication. Even if the student leaves the page, and then\n returns, they will continue to see their attempt that is pinned to the original content. After the student\n submits the entire assessment for evaluation, subsequent attempts will show the newly published content.\n- _Non existent_: For graded pages that a student has never visited, there is of course no attempt\n hierarchy present. At the time of first visit, the student will always encounter the latest published\n revision for the page and activities.","ref":"attempt-handling.html#graded-pages"},{"type":"extras","title":"Document locking","doc":"# Document locking\n\nTorus authoring is designed to support only one user editing a document at a time. To\nenforce this, the system requires than an exclusive write-lock be obtained prior to\nediting a document.\n\nThe Torus authoring framework implementation handles obtaining and releasing the write-lock\nfor a set of documents. This implicit locking approach, as opposed to an explicit approach,\nsimplifies an activity implementation since the activity implementation does not need to concern\nitself with obtaining and releasing locks.\n\nThe following sequence diagram overviews the locking implementation.\n\n![locking](assets/locking.png \"Locking Implementation\")\n\nThe important takeaways from the above diagram are:\n\n- The Torus framework for authoring takes care of obtaining and releasing document locks\n- An activity implementation can strictly rely on the `editMode` property given to it to determine whether it should enable or disable authoring","ref":"locking.html"},{"type":"extras","title":"Page model","doc":"# Page model\n\nPage model is governed by a JSON schema.","ref":"page-model.html"},{"type":"extras","title":"GDPR compliance","doc":"# GDPR compliance","ref":"gdpr.html"},{"type":"extras","title":"Cookie compliance requirements - GDPR compliance","doc":"- Receive users’ consent before you use any cookies except strictly necessary cookies.\n- Provide accurate and specific information about the data each cookie tracks and its purpose in plain language before consent is received.\n- Document and store consent received from users.\n- Allow users to access your service even if they refuse to allow the use of certain cookies\n- Make it as easy for users to withdraw their consent as it was for them to give their consent in the first place.\n\nThe Cookie Law does not require that records of consent be kept but instead, indicates that you should be able to prove that consent occurred — even if that consent has been withdrawn.\n\nTo comply with the requirements, our approach needed to ensure that an opportunity for the user to provide consent is presented even in cases where a user never logins into our system. That consideration, combined with not having to maintain records of consent, meant that an approach that makes use of long-lived cookies to keep track of consent works fine in our use case. The approach works as follows.\n\n- Each page on our site is instrumented with some cookie consent management scripts\n- The scripts run every time any page is loaded on the browser\n- The script first checks to see if a cookie with the name “\\_cky_opt_in” is present and that its value is “true”. This cookie is used to track whether the consent pop-up has been launched in that particular browser before. If not a new one is created with a value “false” and an expiration value of 365 days (Compliant with GDPR).\n- A cookie named “\\_cky_opt_in_dismiss” with a duration of 1hr is also created whenever the cookie above is created. This cookie allows our website to re-prompt the user with the cookie consent pop-up every hour if they simply dismissed the pop-up without providing consent\n- If the user agrees to allow cookies, a cookie named “\\_cky_opt_choices” is created. Its duration is 365 days and the value is the consent preferences agreed to by the user. The value of the cookie “\\_cky_opt_in” is updated to true.\n- Note that after 365 days, our system will prompt the user for a new consent\n- The cookie consent pop-up also presents the user with the option to modifly cookie preferences. The preferences dialog simply updates the values store in the “\\_cky_opt_choices” cookie or creates one if one is not already present.\n- Each page on our site has a footer containing a link that will directly launch the preferences dialog any time the user wishes to adjust their cookie preferences.","ref":"gdpr.html#cookie-compliance-requirements"},{"type":"extras","title":"Miscelleanous","doc":"# Miscelleanous","ref":"misc.html"},{"type":"extras","title":"General Notes - Miscelleanous","doc":"- [bcrypt_elixir](https://github.com/riverrun/bcrypt_elixir) requires >1 CPU core to function. If you have only one core, on say a small VPS, your release will crash without giving a useful error message!! For a single core host, use Pbkdf2 instead of Bcrypt. See here for more on this: https://github.com/riverrun/comeonin/wiki/Deployment\n- Link account using social login will not work out of the box in development mode! This is because you must configure an exact url with the OAuth provider, and therefore a local ngrok tunnel address will not work. If you really need this to work, you can configure your OAuth provider with your temporary ngrok address e.g. `https://163400959f6a.ngrok.io/auth/google/link/callback`. Be sure to also set your HOST in oli.env to your ngrok address as well (e.g. `HOST=https://163400959f6a.ngrok.io`) or else you will be redirected to localhost by default after login and the user session will not be present for linking, because it was stored in the session for the ngrok address. Because of this complexity, it is recommended to simply use an email account to link accounts, which does not experience this issue.","ref":"misc.html#general-notes"},{"type":"extras","title":"Access Generated Emails in Development - Miscelleanous","doc":"When the system generates email in production, generally it will be handed to an email service such as Amazon SES. Any email service supported by Bamboo can be configured in config/prod.exs. Refer to the Bamboo and Pow docs to see a list of all supported email adapters and how to configure them https://hexdocs.pm/pow/configuring_mailer.html#content, https://hexdocs.pm/bamboo/readme.html\n\nIn development mode, the system will use the Bamboo.LocalAdapter mailer, which stores sent mail in memory and is accessible via web browser at `https://localhost/dev/sent_emails`. There is also a specific test adapter configured for unit testing.","ref":"misc.html#access-generated-emails-in-development"},{"type":"extras","title":"Create Registrations from seed - Miscelleanous","doc":"To ease the burden of creating a new registration after every database reset, there is the option to automatically create LTI registrations\nattached to the default institution in dev environment by creating a registrations.json file in the project root.\n\nExample:\n\n```\n[{\n \"issuer\": \"https://canvas.oli.cmu.edu\",\n \"client_id\": \"XXXXXXXXXXXXX\",\n \"key_set_url\": \"https://canvas.oli.cmu.edu/api/lti/security/jwks\",\n \"auth_token_url\": \"https://canvas.oli.cmu.edu/login/oauth2/token\",\n \"auth_login_url\": \"https://canvas.oli.cmu.edu/api/lti/authorize_redirect\",\n \"auth_server\": \"https://canvas.oli.cmu.edu/login/oauth2/token\"\n}]\n```\n\nWith this file, now when you run `mix ecto.seed` or `mix ecto.reset`, a registration with these details will be created for you.","ref":"misc.html#create-registrations-from-seed"},{"type":"extras","title":"Overview","doc":"# Overview","ref":"overview-1.html"},{"type":"extras","title":"Important concepts and terms - Overview","doc":"Torus operates broadly in two different modes:\n\n- _Authoring_: Authoring mode is a set of features used by authors to create, update and publish the\n material within their course project.\n- _Delivery_: Delivery mode is a set of features used by Instructors and Students during the\n delivery of course material to students in a course section.\n\nThe material with course projects is modeled as a collection of `Resources` of different\nsupported resource types. The following lists the various types of resources that exist:\n\n- _Container_: A collection of pages or containers that can correspond to \"Units\" or \"Modules\" within a course.\n- _Page_: A collection of content and activities that offer student instruction and assessment. Pages can be either \"graded\" or \"practice\".\n- _Activity_: A scorable interaction used in both practice or assessment contexts.\n- _Objective_: A learning objective that course content attempts to instruct and that activities offer\n practice and assessment on.\n- _Tag_: A tag is a flexible mechanism that can power a variety of platform functionality such as\n activity bank selection.\n\nActivities have several important concepts:\n\n- _Activity type_: Torus supports a variety of different kinds of student interactive experiences\n such as multiple choice, ordering, and check all that apply.\n- _Activity instance_: An activity instance is created when an author defines (aka \"authors\") a new\n activity of a supported activity type.\n- _Activity reference_: Activity instances are not directly embedded into pages, rather a reference\n to an instance is stored within pages. This mechanism allows activity instances to be shared\n across pages.\n- _Activity bank_: A collection of activity instances that can be randomly selected according to\n a defined set of criteria at delivery time. A page can contain _activity bank selections_ which\n allows the system to select and render different activities for each different student attempt.\n- _Parts_: Activity instances have a collection of one or more _parts_. A part offers a mechanism\n to track student interaction and submission, and ultimately to store a system or instructor\n assign score. Some activity types have a fixed number of parts: for example a multiple choice activity\n has only one part which models which choice the student selected, their received score and any\n received feedback. Other activity types feature multiple parts, and in some cases the number of\n parts is dynamic and determined at the time that the author defines the activity instance. For\n example, an author can create a \"Multi input\" activity that features three \"fill in the blank\"\n text inputs in the middle of the question stem. This activity instance would have three parts, one\n for each of these inputs, and allows each of them to be scored individually.\n- _Grading approach_: Each part within an activity instance can specify its required grading, or scoring, approach. The supported options are `automatic` and `manual`. Automatically scored\n parts require the definition of a collection of `responses` that specify the rules to use\n to allow the sytem to perform automatic scoring. Manually scored parts for activities ultimately\n require the instructor to review the submission for the part and to assign a score and provide\n feedback.","ref":"overview-1.html#important-concepts-and-terms"},{"type":"extras","title":"LTI 1.3","doc":"# LTI 1.3","ref":"implementing.html"},{"type":"extras","title":"LTI 1.3 Launch Overview - LTI 1.3","doc":"This is a summary of the LTI 1.3 handshake outlined in the IMS Security Framework 1.0 Specification ([5.1 Platform-Originating Messages](https://www.imsglobal.org/spec/security/v1p0/#platform-originating-messages)) geared toward elixir developers who wish to implement LTI 1.3 in their apps. This page assumes that both the tool and platform have been registered with each other.\n\nRemember that registering requires a tool and platform to store important details about each other, such as:\n\n**Example tool details** registered with the platform:\n\n```elixir\nclient_id: \"1000000000001\"\nkeyset_url: \"https://tool.example.edu/.well-known/jwks.json\"\noidc_login_url: \"https://tool.example.edu/login\"\nredirect_uris: \"https://tool.example.edu/launch\"\ntarget_link_ui: \"https://tool.example.edu/launch\"\n```\n\n**Example platform details** registered with the tool:\n\n```elixir\nissuer: \"https://platform.example.edu\"\nclient_id: \"1000000000001\"\nkey_set_url: \"https://platform.example.edu/.well-known/jwks.json\"\nauth_token_url: \"https://platform.example.edu/access_tokens\"\nauth_login_url: \"https://platform.example.edu/authorize_redirect\"\n```\n\nThis registration process happens out-of-band before the LTI launch itself can be performed. Typically this information is exchanged between two parties through some external form of communication (e.g. email) or automatic registration and approval process.","ref":"implementing.html#lti-1-3-launch-overview"},{"type":"extras","title":"LTI 1.3 Process - LTI 1.3","doc":"![LTI 1.3 Launch Flow](https://www.imsglobal.org/sites/default/files/specs/images/security/1p0/fig5p2-oidcflowv1.jpg)","ref":"implementing.html#lti-1-3-process"},{"type":"extras","title":"Step 1: Third-party Initiated Login - LTI 1.3","doc":"https://www.imsglobal.org/spec/security/v1p0/#step-1-third-party-initiated-login\n\nAn LTI launch begins with a form submission (GET or POST) from a platform webpage. The **platform** crafts the form using the pre-registered tool configuration and platform details. The form can either target the current window by default or an iframe embedded in the page. For example, this form will target the iframe below it:\n\n_controller.ex_\n\n```elixir\nlaunch_params = %{\n # client_id must match the value registered with the tool\n client_id: \"1000000000001\",\n\n # issuer value associated with the plaform\n iss: \"https://platform.example.edu\",\n\n # tool OIDC login path, the destination this request will be sent to\n oidc_login_url: \"https://tool.example.edu/login\",\n\n # the location of the requested LTI resource\n target_link_uri: \"https://tool.example.edu/launch\",\n\n # unique token used later by the platform to associate the request with this user session\n login_hint: \"ac5cdc6e-1dd2-97f2-e2c8-0d4236e9b092\",\n}\n\nrender(conn, \"lti_launch.html\", launch_params: launch_params)\n```\n\n_lti_launch.html.eex_\n\n```html\n \n \n \n \n \n\n Launch LTI 1.3 Tool \n \n\n \n```\n\nWhen a user clicks the \"Launch LTI 1.3 Tool\" button the form request will be sent to the tool's OIDC login endpoint and the LTI 1.3 handshake will begin.","ref":"implementing.html#step-1-third-party-initiated-login"},{"type":"extras","title":"Step 2: Authentication Request - LTI 1.3","doc":"https://www.imsglobal.org/spec/security/v1p0/#step-2-authentication-request\n\nWhen the request is recieved, the **tool** will validate the issuer and client_id match the registered platform, validate the login_hint param is present and issue a redirect to the platform's OIDC (OpenID Connect) endpoint to authenticate the user.\n\nIf validation is successful, the tool will craft the OIDC request with the following parameters:\n\n```elixir\n%{\n # OIDC and LTI 1.3 required params\n \"scope\" => \"openid\",\n \"response_type\" => \"id_token\",\n \"response_mode\" => \"form_post\",\n \"prompt\" => \"none\",\n\n # client_id that was given by POST params, also associated with the platform registration\n \"client_id\" => \"some-client-id\",\n\n # the tool url to redirect back to after successful login\n \"redirect_uri\" => \"some-redirect_uri\",\n\n # unique token associated with this request and used later to prevent CSRF\n \"state\" => \"some-unique-token\",\n\n # unique identifier cached by the platform to prevent replay attacks\n \"nonce\" => \"some-unique-nonce\",\n\n # opaque string used by the platform to validate the user session associated with the request\n \"login_hint\" => \"some-login-hint\",\n}\n```\n\nFor example, the final request using GET to the platform will look something like:\n`GET /authorize_redirect?scope=openid&response_type=id_token&... etc.`","ref":"implementing.html#step-2-authentication-request"},{"type":"extras","title":"Step 3: Authentication Response - LTI 1.3","doc":"https://www.imsglobal.org/spec/security/v1p0/#step-3-authentication-response\n\nThe **platform** will recieve the authorize_redirect request from the tool and it will validate the required OIDC params are present, validate the login_hint is associated with the current user session, validate the client_id is associated with a registered tool, validate the redirect_url matches one of the registered urls, and finally validate the nonce has not been used before. If valid, the platform will issue one final POST request to the tool's specified redirect_uri with the recieved state token and an id_token JWT containing the LTI 1.3 claims such as user details, context info, and any other LTI specific or custom claims that may be supported by the platform.\n\nHere is an example of the LTI params within the id_token JWT. [Full example resource link request](http://www.imsglobal.org/spec/lti/v1p3/#examplelinkrequest).\n\n```elixir\n%{\n # security claims\n \"iss\" => \"https://platform.example.edu\",\n \"sub\" => \"a6d5c443-1f51-4783-ba1a-7686ffe3b54a\",\n \"aud\" => [\"962fa4d8-bcbf-49a0-94b2-2de05ad274af\"],\n \"exp\" => 1510185728,\n \"iat\" => 1510185228,\n \"azp\" => \"962fa4d8-bcbf-49a0-94b2-2de05ad274af\",\n \"nonce\" => \"fc5fdc6d-5dd6-47f4-b2c9-5d1216e9b771\",\n\n # user details claims\n \"name\" => \"Ms Jane Marie Doe\",\n \"given_name\" => \"Jane\",\n \"family_name\" => \"Doe\",\n \"middle_name\" => \"Marie\",\n \"picture\" => \"https://platform.example.edu/jane.jpg\",\n \"email\" => \"jane@platform.example.edu\",\n \"locale\" => \"en-US\",\n\n # LTI claims\n \"https://purl.imsglobal.org/spec/lti/claim/deployment_id\":\n \"07940580-b309-415e-a37c-914d387c1150\",\n \"https://purl.imsglobal.org/spec/lti/claim/message_type\" => \"LtiResourceLinkRequest\",\n \"https://purl.imsglobal.org/spec/lti/claim/version\" => \"1.3.0\",\n \"https://purl.imsglobal.org/spec/lti/claim/roles\" => [\n \"http://purl.imsglobal.org/vocab/lis/v2/institution/person#Student\",\n \"http://purl.imsglobal.org/vocab/lis/v2/membership#Learner\",\n \"http://purl.imsglobal.org/vocab/lis/v2/membership#Mentor\"\n ],\n \"https://purl.imsglobal.org/spec/lti/claim/role_scope_mentor\" => [\n \"fad5fb29-a91c-770-3c110-1e687120efd9\",\n \"5d7373de-c76c-e2b-01214-69e487e2bd33\",\n \"d779cfd4-bc7b-019-9bf1a-04bf1915d4d0\"\n ],\n \"https://purl.imsglobal.org/spec/lti/claim/context\" => {\n \"id\" => \"c1d887f0-a1a3-4bca-ae25-c375edcc131a\",\n \"label\" => \"ECON 1010\",\n \"title\" => \"Economics as a Social Science\",\n \"type\" => [\"http://purl.imsglobal.org/vocab/lis/v2/course#CourseOffering\"]\n },\n \"https://purl.imsglobal.org/spec/lti/claim/resource_link\" => {\n \"id\" => \"200d101f-2c14-434a-a0f3-57c2a42369fd\",\n \"description\" => \"Assignment to introduce who you are\",\n \"title\" => \"Introduction Assignment\"\n },\n \"https://purl.imsglobal.org/spec/lti/claim/tool_platform\" => {\n \"guid\" => \"ex/48bbb541-ce55-456e-8b7d-ebc59a38d435\",\n \"contact_email\" => \"support@platform.example.edu\",\n \"description\" => \"An Example Tool Platform\",\n \"name\" => \"Example Tool Platform\",\n \"url\" => \"https://platform.example.edu\",\n \"product_family_code\" => \"ExamplePlatformVendor-Product\",\n \"version\" => \"1.0\"\n },\n \"https://purl.imsglobal.org/spec/lti/claim/target_link_uri\":\n \"https://tool.example.com/lti/48320/ruix8782rs\",\n \"https://purl.imsglobal.org/spec/lti/claim/launch_presentation\" => {\n \"document_target\" => \"iframe\",\n \"height\" => 320,\n \"width\" => 240,\n \"return_url\" => \"https://platform.example.edu/terms/201601/courses/7/sections/1/resources/2\"\n },\n \"https://purl.imsglobal.org/spec/lti/claim/lis\" => {\n \"person_sourcedid\" => \"example.edu:71ee7e42-f6d2-414a-80db-b69ac2defd4\",\n \"course_offering_sourcedid\" => \"example.edu:SI182-F16\",\n \"course_section_sourcedid\" => \"example.edu:SI182-001-F16\"\n },\n\n # additional custom claims\n \"https://purl.imsglobal.org/spec/lti/claim/custom\" => {\n \"xstart\" => \"2017-04-21T01:00:00Z\",\n \"request_url\" => \"https://tool.com/link/123\"\n },\n\n # additional extensions claims\n \"http://www.ExamplePlatformVendor.com/session\" => {\n \"id\" => \"89023sj890dju080\"\n }\n}\n```\n\nThese params are encoded and signed as a JWT using RSA256 and the platform's private JWK, which can later be verfied by the tool using the platforms publicly accessible JWK.\n\nThis redirect POST can be accomplished by rendering an html form and (if enabled) using javascript to submit on the user's behalf.\n\n```html\n\n \n \n You are being redirected... \n \n \n You are being redirected... \n \n \n \n\n \n \n \n \n\n \n window.onload = function () {\n document.getElementsByName(\"post_redirect\")[0].style.display = \"none\";\n document.forms[\"post_redirect\"].submit();\n };\n \n \n \n```","ref":"implementing.html#step-3-authentication-response"},{"type":"extras","title":"Step 4: Resource is displayed - LTI 1.3","doc":"https://www.imsglobal.org/spec/security/v1p0/#step-4-resource-is-displayed\n\nFinally, if all validations have passed and the launch was successful, the LTI 1.3 resource will be displayed in the user's browser.","ref":"implementing.html#step-4-resource-is-displayed"},{"type":"extras","title":"References and Useful Links - LTI 1.3","doc":"- Learning Tools Interoperability Core Specification - [http://www.imsglobal.org/spec/lti/v1p3/](http://www.imsglobal.org/spec/lti/v1p3/)\n- IMS Security Framework - [https://www.imsglobal.org/spec/security/v1p0](https://www.imsglobal.org/spec/security/v1p0)\n- Canvas Platform Implementaion (authentication_controller.rb) - [https://github.com/instructure/canvas-lms/blob/master/app/controllers/lti/ims/authentication_controller.rb](https://github.com/instructure/canvas-lms/blob/master/app/controllers/lti/ims/authentication_controller.rb)\n- IMS PHP Tool Library [https://github.com/IMSGlobal/lti-1-3-php-library](https://github.com/IMSGlobal/lti-1-3-php-library)","ref":"implementing.html#references-and-useful-links"},{"type":"extras","title":"LTI 1.3 Configuration","doc":"# LTI 1.3 Configuration\n\nTorus supports LTI 1.3 integration and leverages the Learning Management System (LMS) for course delivery. The philosophy of Torus is to focus and excel at what it is specifically designed for, which is rich course content authoring, delivery and data-driven continuous improvement. Many of the necessary features of course delivery such as roster management, grade book management and scheduling are deferred to the LMS, which is what it is specifically designed for. These aspects of the student and instructor experience are crucial and require tight integration which is enabled by the LTI 1.3 standard.\n\nMany LMSs currently support the LTI 1.3 standard including Canvas, Blackboard, Moodle, Brightspace D2L, and more. Each LMS may have a slightly different method of configuring an external tool like Torus, but in general the process is similar between them and is driven by the [LTI 1.3 Specification](http://www.imsglobal.org/spec/lti/v1p3/).","ref":"config.html"},{"type":"extras","title":"Concepts - LTI 1.3 Configuration","doc":"","ref":"config.html#concepts"},{"type":"extras","title":"Institutions - LTI 1.3 Configuration","doc":"Torus has the concept of an **Institution** which represents an organization whom wishes to use Torus, typically from their own self-hosted LMS or a cloud-hosted one. For example, Carnegie Mellon University would be considered an institution, and so is The Open Learning Initiative (OLI).","ref":"config.html#institutions"},{"type":"extras","title":"Registrations - LTI 1.3 Configuration","doc":"A **Registration** represents a configured LTI connection from an institution in Torus. Typically an institution will have a single registration but there may be certain cases where an institution has multiple registrations could be an institution that has multiple LMSs. Each one of these LMSs may belong to the same **Institution** but will have separate registrations. The combination of `issuer` (typically a URL e.g. https://canvas.oli.cmu.edu) and `client_id` represents a globally unique registration. The issuer represents the LTI Platform, not necessarily the institution. For example, `https://canvas.instructure.com` is the issuer that represents any institution who may be using Instructure's cloud platform and the client id represents the specific registration, and therefore institution.","ref":"config.html#registrations"},{"type":"extras","title":"Deployments - LTI 1.3 Configuration","doc":"A **Deployment** can be thought of as the next tier below registrations. A registration may have many deployments. For example, a **Registration** may have one deployment for every course, or a single deployment shared globally across the entire LMS.\n\nThere is some flexibility to how these concepts could be represented for an organization, but typically an organization will have a single **Institution**, with a single **Registration** for their LMS, and they may have one or many **Deployments** within their LMS depending on if the tool is configure globally or for an individual department/course.\n\nInstitutions, registrations and deployments are currently created and managed by a Torus administrator. In the future, we plan to add more flexibility on how these entities can be registered and approved. For now, please contact OLI if you wish to deliver a Torus course from your organization's LMS. If you are running your own instance of Torus, the steps below outline the process for creating these entities required for LTI 1.3 integration with an LMS.","ref":"config.html#deployments"},{"type":"extras","title":"Connecting to Torus with LTI 1.3 - LTI 1.3 Configuration","doc":"To get connected with Torus, you must first configure your LMS LTI 1.3 connection. This process will vary depending on your institution's LMS, but the basic principles are the same. Refer to the specific instructions for your LMS in the [Configuring LTI 1.3 in LMS](#configuring-lti1.3-in-lms) section below. You will only have to perform this setup process once for your LMS.\n\nAfter your LMS has been configured, you should be able to access Torus from your LMS. The first time you launch into Torus from your LMS, you will be presented with a \"Register Your Institution\" form. Please fill out this form and allow OLI up to 2 business days to review and approve your request.\n\n \n\nIf your are running your own instance of Torus, your Torus admin will need to approve this request under Institutions > Pending Requests.\n\nOnce your request has been approved, you should now be able to access Torus from your LMS which will guide you through course setup.","ref":"config.html#connecting-to-torus-with-lti-1-3"},{"type":"extras","title":"Configuring LTI 1.3 in LMS - LTI 1.3 Configuration","doc":"","ref":"config.html#configuring-lti-1-3-in-lms"},{"type":"extras","title":"Canvas - LTI 1.3 Configuration","doc":"#### Create LTI 1.3 Developer Key\n\nCanvas Docs: https://community.canvaslms.com/t5/Admin-Guide/How-do-I-configure-an-LTI-key-for-an-account/ta-p/140\n\nCanvas requires elevated privileges to configure LTI 1.3 Developer Keys and Apps. Canvas administrators should have the necessary privileges. If you don't see the options mentioned below, you may not have proper privileges or your canvas instance may be an older version which does not support LTI 1.3. In either case, you should check with your LMS administrator.\n\n1. In Canvas using the left main menu, select Admin > [Admin Account Name].\n\n \n\n Then click \"Developer Keys\" link\n\n \n\n1. Under Developer Keys, click \"+ Developer Key\" > \"+ LTI Key\"\n\n \n\n1. You have two options when configuring an LTI 1.3 Developer Key in Canvas:\n\n - **OPTION 1 (Recommended)** - Automatic Configuration using JSON URL\n\n 1. Select **Enter URL** for the method\n\n 1. Configure the following fields with values that correspond to your torus deployment. For example, if you are hosting torus at a specific domain or in a development environment using a service such as ngrok, you will want to replace all instances of `proton.oli.cmu.edu` with your domain or ngrok address e.g. `ba7c432acd17.ngrok.io`.\n\n - **Redirect URIs:** https://proton.oli.cmu.edu/lti/launch\n - **Developer Key JSON URL:** https://proton.oli.cmu.edu/lti/developer_key.json\n\n ![img](https://raw.githubusercontent.com/Simon-Initiative/oli-torus/master/docs/images/developer_key_json_url.png)\n\n Click \"Save\"\n\n - **OPTION 2** - Manual Entry\n\n 1. Configure the following fields with values that correspond to your torus deployment. For example, if you are hosting torus at a specific domain or in a development environment using a service such as ngrok, you will want to replace all instances of `proton.oli.cmu.edu` with your domain or ngrok address e.g. `ba7c432acd17.ngrok.io`.\n\n - **Key Name:** OLI Torus\n - **Owner Email:** admin@proton.oli.cmu.edu\n - **Redirect URIs:** https://proton.oli.cmu.edu/lti/launch\n - **Title:** Torus\n - **Description:** Create, deliver and iteratively improve course content with Torus, through the Open Learning Initiative\n - **Target Link URI:** https://proton.oli.cmu.edu/lti/launch\n - **OpenID Connect Initiation Url:** https://proton.oli.cmu.edu/lti/login\n - **JWK Method:** Public JWK URL\n - **Public JWK URL:** https://proton.oli.cmu.edu/.well-known/jwks.json\n - **Placements:** Configure depending on your needs, or leave defaults\n\n ![img](https://raw.githubusercontent.com/Simon-Initiative/oli-torus/master/docs/images/key_settings.png)\n\n Click \"Save\".\n\n1. Enable the newly created LTI Key by setting it to \"ON\". Your LTI 1.3 key is now configured and ready to use!\n\n \n\n1. Copy the corresponding number under details for future use, (e.g. 10000000000034). This will be our **Client ID**.\n\n \n\n#### Add Torus as an External Tool link in your Canvas course\n\nCanvas Docs: https://community.canvaslms.com/t5/Admin-Guide/How-do-I-configure-an-external-app-for-an-account-using-a-client/ta-p/202\n\n1. Navigate to your course and click \"Settings\" > \"Apps\"\n\n \n\n \n\n1. Select Configuration Type \"By Client ID\" and insert the **Client ID** we kept from the previous steps. Click \"Submit\". When prompted to install the tool, select \"Install\".\n \n\n1. We must configure this specific deployment with torus, as mentioned in the previous section 'Configuring LTI 1.3 in Torus'. To do this, we must get the **Deployment ID** by Selecting the \"gear\" menu > Deployment Id.\n\n \n\n \n\n Copy this entire ID and use it to configure a deployment in Torus as outlined in the previous section 'Configuring LTI 1.3 in Torus'.\n\n1. If you configured your LTI 1.3 Developer Key with placements other than Link, you will see Torus appear in those places. Otherwise, the default placement is a **Link Selection** placement which allows you to add Torus to any module in your course as you normally would by clicking the plus \"+\" button on a module, selecting \"External Tool\" and finally selecting the Torus tool we just added. Click \"Add Item\".\n \n\n1. Navigate to Torus through the placement you configured, and you should be guided through course setup, which is outside the scope of this document. If you see any errors related to your LTI configuration, you may need to revisit the previous section 'Configuring LTI 1.3 in Torus' or your canvas instance may be improperly configured. The error message should give you an indication of the specific issue and provide a link to OLI support for further help if needed.","ref":"config.html#canvas"},{"type":"extras","title":"Blackboard - LTI 1.3 Configuration","doc":"Coming soon...","ref":"config.html#blackboard"},{"type":"extras","title":"Moodle - LTI 1.3 Configuration","doc":"Coming soon...","ref":"config.html#moodle"},{"type":"extras","title":"Manual LTI 1.3 Configuration in Torus (Torus Admin) - LTI 1.3 Configuration","doc":"To manually configure an LTI 1.3 integration in Torus, we need to gather some important LMS details first. These details can usually be supplied by an LMS administrator. For certain values such as Client ID and Deployment ID, you will need to configure Torus in your LMS first before you can get this value. It is recommended you or your LMS administrator follow the steps in the section 'Configuring LTI 1.3 in LMS' below to obtain this.\n\n- **Issuer** (e.g. https://canvas.oli.cmu.edu)\n- **Client ID:** This is obtained by creating an LTI 1.3 Developer Key in the LMS. See specific instructions below depending on your LMS.\n- **Key Set Url** (e.g. https://canvas.oli.cmu.edu/api/lti/security/jwks)\n- **Auth Token Url** (e.g. https://canvas.oli.cmu.edu/login/oauth2/token)\n- **Auth Login Url** (e.g. https://canvas.oli.cmu.edu/api/lti/authorize_redirect)\n- **Auth Server Url** (e.g. https://canvas.oli.cmu.edu/login/oauth2/token)\n- **KID** (e.g. 2018-05-18T22:33:20Z). This can also be obtained by entering the **Key Set URL** in your browser and extracting the first value for `\"kid\":\"2018-05-18T22:33:20Z\"`\n- **Deployment ID** This is obtained by creating an LTI 1.3 Deployment in the LMS. See specific instructions below depending on your LMS.\n\n1. In Torus as an Administrator, select \"Institutions\" from the sidebar on the left of the workspace, then click \"Register New Institution\"\n\n \n\n1. Enter your Institution's details and click \"Save\"\n\n \n\n1. Click the \"Details\" button for the institution you just created\n\n \n\n1. Click \"Add Registration\" and enter registration details, which are outlined above and should be provided by your LMS administrator. You may use a placeholder value for Client ID if you haven't configured an LTI Key in your LMS yet, but it is very important you return and update this value before launching into Torus. When finished, click on the registration labeled by its **[Issuer - Client ID]** to expand it.\n\n ![img](https://raw.githubusercontent.com/Simon-Initiative/oli-torus/master/docs/images/institution_example.png)\n\n1. Click \"Add Deployment\" and enter the Deployment ID saved from the instructions below when you created a deployment in your LMS. Click \"Save\".\n\n1. Once you have a **Registration** and a **Deployment** configured for your **Institution**, you can now return to your LMS and launch into Torus and you will be guided through course setup, which is outside the scope of this document.","ref":"config.html#manual-lti-1-3-configuration-in-torus-torus-admin"},{"type":"extras","title":"Course material ingestion","doc":"# Course material ingestion\n\nTorus supports importing, or ingesting, externally developed course material.","ref":"overview-2.html"},{"type":"extras","title":"Overview - Course material ingestion","doc":"The Torus ingestion feature takes as input a _course digest archive_ and converts that into a course project.\n\nCourse digest archives can be produced from a variety of different sources, either manually or via automated tools.\n\nThere is an automated tool that produces course digest\narchives from the legacy OLI XML course format.\n\nhttps://github.com/Simon-Initiative/course-digest\n\n[[assets/ingest.png]]","ref":"overview-2.html#overview"},{"type":"extras","title":"Course Digest Format - Course material ingestion","doc":"Course digest archives are `zip` files that contain\n`JSON` files corresponding to curriculum resources.\n\nIn a course digest, the following are the minimally\nrequired files:\n\n### `_project.json`\n\nThis file describes high level course meta data.\n\n```json\n{\n \"slug\": \"edx_bio_1\",\n \"title\": \"Introduction to Biology\",\n \"description\": \"An introductory biology course suitable for non-majors\",\n \"type\": \"Manifest\"\n}\n```\n\n### `_hierarchy_.json`\n\nThis file describes the course outline, or hierarchy,\ndefining the units and modules of a course and the\npages that they contain. The following is an excerpt\nof a sample hierarchy file:\n\n```json\n{\n \"type\": \"Hierarchy\",\n \"children\": [\n {\n \"type\": \"container\",\n \"children\": [\n {\n \"type\": \"container\",\n \"children\": [\n {\n \"type\": \"item\",\n \"children\": [],\n \"idref\": \"u-introduction-m-introduction-p-welcome\"\n }\n ],\n \"id\": \"u-introduction-m-introduction\",\n \"title\": \"Introduction\"\n },\n {\n \"type\": \"container\",\n \"children\": [\n {\n \"type\": \"item\",\n```\n\nThe hierarchy file is essential a nested collection of children, that are of either type \"container\" (to represent a unit or module) or of type \"item\" (to\nrepresent a page reference). For \"item\" instances, the\n`idref` attribute is a reference to the `id` attribute\nof resource `JSON` file.\n\n### `_media-manifest_.json`\n\nThis file is a listing of all media assets that this\ncourse has prestaged into Torus S3 storage.\n\n```json\n{\n \"mediaItems\": [\n {\n \"name\": \"1x1.png\",\n \"url\": \"https://torus-media-dev.s3.amazonaws.com/media/nothingatall/1x1.png\",\n \"fileSize\": 95,\n \"mimeType\": \"image/png\",\n \"md5\": \"71a50dbba44c78128b221b7df7bb51f1\"\n },\n {\n \"name\": \"code-variable.png\",\n \"url\": \"https://torus-media-dev.s3.amazonaws.com/media/nothingatall/code-variable.png\",\n \"fileSize\": 3671,\n \"mimeType\": \"image/png\",\n \"md5\": \"0c084906e4502a6e93739b20a4ac119f\"\n },\n```","ref":"overview-2.html#course-digest-format"},{"type":"extras","title":"Resource Files - Course material ingestion","doc":"Beyond the three require metadata files, a course digest\narchive also contains any number of resource specific\nJSON files. These files must be named ` .json` where the `id` is the\nstring identifier used to reference the resource from `idref` attributes\nin the course hierarchy file.\n\nCurrently three types of resource files are supported for ingestion: Page, Activity,\nand Objective. All three follow the same format of requiring `type`, `id`, `title`, `content` and `objectives` attributes to be defined. Samples of each follow:\n\n#### Learning Objective\n\n```json\n{\n \"type\": \"Objective\",\n \"id\": \"u-hardware_and_software-m-hardware_and_software-p-kilobytes_megabytes_and_gigabytes_LO_1\",\n \"title\": \"Solve word problems with arithmetic combinations of kilobytes, megabytes, and gigabytes.\",\n \"content\": {},\n \"objectives\": []\n}\n```\n\n#### Activity\n\n```json\n{\n \"type\": \"Activity\",\n \"id\": \"3550878268\",\n \"title\": \"Image coding activity\",\n \"tags\": [],\n \"content\": {\n \"authoring\": {\n \"parts\": [\n {\n \"id\": \"1\",\n \"responses\": [\n {\n \"id\": \"3713976972\",\n \"score\": 1,\n \"rule\": \"input like {1}\",\n \"feedback\": {\n \"id\": \"2848932877\",\n \"content\": {\n \"id\": \"2564146359\",\n \"model\": [\n {\n \"type\": \"p\",\n \"children\": [\n {\n \"text\": \"Correct\"\n }\n ]\n }\n ]\n```\n\n#### Page\n\n```json\n{\n \"type\": \"Page\",\n \"id\": \"u-security-m-contents_security-p-contents_security\",\n \"originalFile\": \"\",\n \"title\": \"Contents: Security\",\n \"tags\": [],\n \"unresolvedReferences\": [],\n \"content\": {\n \"model\": [\n {\n \"type\": \"content\",\n \"purpose\": \"none\",\n \"id\": \"3177050314\",\n \"children\": [\n {\n \"type\": \"ul\",\n \"children\": [\n {\n \"type\": \"li\",\n \"children\": [\n {\n \"text\": \" \"\n },\n {\n```","ref":"overview-2.html#resource-files"},{"type":"extras","title":"Media assets","doc":"# Media assets\n\nTorus pages and activities can contain multimedia content such as\nimages, audio, and video. Currently, video support in Torus is via YouTube.\nAudio support is via the HTML5 ` ` element, and images are supported via\nHTML ` ` element.","ref":"media.html"},{"type":"extras","title":"External vs Internal Media Asset Storage - Media assets","doc":"For images and audio sources, Torus supports the use of both \"internally\" hosted media assets\nand \"externally\" hosted media assets. This simply means that an author of a course, when inserting\nan image into a page can choose to either upload an image file to Torus to use (thus, \"interally hosted\") or to copy and paste\na URL of a publicly available image to use (thus, \"externally hosted\").\n\nFor internally hosted assets, Torus does several things with that media asset to both ensure correct and efficient delivery\nof a course project and to enable a richer authoring experience:\n\n1. Deduplication: Upload receiving the uplaod of an asset, Torus calculates an MD5 hash and compares it all other assets of that course to prevent duplicate images from being added into the system.\n2. Cached, immutable storage: Once the asset is guaranteed to be unique, Torus stores it in AWS S3 storage, where it can be directly accessible via a URL. At this point, the asset is immutable: it cannot be updated or deleted by a Torus end user. This is necessary to allow proper functioning\n of the Torus publication model. See the `Immutability` section below for a use case that demonstrates this importance. The S3 buckets are\n fronted by an AWS edge caching solution.\n3. Project assocation: Meta-data regarding the asset is associated with the course project, primarily to power the \"Media Library\"\n feature within Torus. An author can then browse their media library within Torus to select the asset for use in other places within\n their course project.\n\nFor externally hosted asset references, Torus does none of the above. It simply allows that external URL to be embedded in the\ncontent of the page and the activity.","ref":"media.html#external-vs-internal-media-asset-storage"},{"type":"extras","title":"Immutability - Media assets","doc":"Immutability of media assets is paramount to correct delivery of a course project as that course project evolves over time.\n\nThe lack of an immutability guarantee for externally hosted assets can cause \"change leakage\" problems. Consider the\nfollowing scenario:\n\n1. An author embeds a reference to an externally hosted image in a page in their course. Perhaps the author has a blog where they have\n images and other assets present.\n2. Course sections are created and students begin to access the course material.\n3. The author then decides to begin editing their course material to prepare for a major revision that they will publish in a few months for the next semester of course sections. The author deems it necessary to update several of the images hosted on their blog to support these course material updates.\n4. While the Torus course material updates will not be visible to students (since the author hasn't \"Published\" those changes yet), as soon as the author changes those images, students working through the active course section see the new, updated images.","ref":"media.html#immutability"},{"type":"extras","title":"Asset Considerations for Course Ingestion - Media assets","doc":"Developers creating course digests to ingest into Torus can choose to take advantage of Torus \"internally hosted\" assets and the media library\nfeature.\n\n1. Asset URL references within pages and activities must use the Torus AWS URL prefixes, so that at runtime these reference resolve to the correct Torus asset location. The format of the URL is `https://d2xvti2irp4c7t.cloudfront.net/media/${project_slug}/${file_name}`, where\n `project_slug` is a unique project identifier (not necessarily the actual project slug that will get generated, more so simply a folder name) and `file_name` of course is the name of the file corresponding to the asset.\n2. Every asset in a course project that is intended to be tracked by Torus in the media library must have an entry in the `_media_manifest.json` file of the course digest.\n3. Before or after a course digest has been ingested, the actual media assets themselves need to be \"staged\" in the Torus AWS S3 instance.\n\nOnce both the digest has been ingested and the assets staged, an author can begin accessing and editing the newly ingested course and be able to view the existing assets in pages. Furthermore, the author is able to browse the library of all asssets via the Media Library capability.","ref":"media.html#asset-considerations-for-course-ingestion"},{"type":"extras","title":"Asset Staging - Media assets","doc":"The OLI Legacy course digest tool (https://github.com/Simon-Initiative/course-digest) contains an asset staging implementation that developers of other digests can reuse. This\nimplemenation takes as input a media manifest file and expects all\nthe assets referenced within it to also be present in the local filesystem. The implementation simply uploads, serially, the files\nin the manifest into the Torus AWS S3 storage.\n\nExternal developers that want to stage assets must work with internal\nTorus engineering to first obtain the `project_slug` identifier to use\nin constructing asset URLs, and the S3 credentials to use to drive the\nupload implementation.","ref":"media.html#asset-staging"},{"type":"extras","title":"Running Upgrade in a Dev Env","doc":"# Running Upgrade in a Dev Env\n\nThese instructions will set up a development environment\nfor the Upgrade A/B testing platform, paired with your local Torus dev env.\n\n1. Clone our fork at https://github.com/Simon-Initiative/UpGrade\n2. In `backend/packages/Upgrade` execute `yarn install`\n3. Create a `.env` in that directory from the contents of `.env.example` from `guides/upgrade/.env.example`\n4. In your Postgres, manually create a new database `upgrade`\n5. Executing `npm run dev` should populate the database. Subsequent executions will fail until you comment out line 83 of `backend/packages/Upgrade/src/loaders/typeormLoader.ts`\n6. From `frontend` directory, run `yarn install`\n7. From `frontend` directtory, run `npm run start`\n\nYou will also need to specify Torus `.env` variables:\n\n```\nUPGRADE_EXPERIMENT_PROVIDER_URL=http://localhost:3030\nUPGRADE_EXPERIMENT_USER_URL=http://localhost:4200\n```","ref":"dev-env.html"},{"type":"extras","title":"modules","doc":"[oli](README.md) / Exports\n\n# oli","ref":"modules.html"},{"type":"extras","title":"Table of contents - modules","doc":"","ref":"modules.html#table-of-contents"},{"type":"extras","title":"Enumerations - modules","doc":"- [GradingApproach](enums/GradingApproach.md)\n- [ScoringStrategy](enums/ScoringStrategy.md)\n- [Transform](enums/Transform.md)","ref":"modules.html#enumerations"},{"type":"extras","title":"Classes - modules","doc":"- [AuthoringElement](classes/AuthoringElement.md)\n- [DeliveryElement](classes/DeliveryElement.md)","ref":"modules.html#classes"},{"type":"extras","title":"Interfaces - modules","doc":"- [ActivityContext](interfaces/ActivityContext.md)\n- [ActivityLevelScoring](interfaces/ActivityLevelScoring.md)\n- [ActivityModelSchema](interfaces/ActivityModelSchema.md)\n- [ActivityState](interfaces/ActivityState.md)\n- [AuthoringElementProps](interfaces/AuthoringElementProps.md)\n- [Choice](interfaces/Choice.md)\n- [CreationContext](interfaces/CreationContext.md)\n- [DeliveryElementProps](interfaces/DeliveryElementProps.md)\n- [EvaluationResponse](interfaces/EvaluationResponse.md)\n- [Explanation](interfaces/Explanation.md)\n- [Feedback](interfaces/Feedback.md)\n- [FeedbackAction](interfaces/FeedbackAction.md)\n- [HasChoices](interfaces/HasChoices.md)\n- [HasContent](interfaces/HasContent.md)\n- [HasParts](interfaces/HasParts.md)\n- [HasPerPartSubmissionOption](interfaces/HasPerPartSubmissionOption.md)\n- [HasPreviewText](interfaces/HasPreviewText.md)\n- [HasStem](interfaces/HasStem.md)\n- [HasTransformations](interfaces/HasTransformations.md)\n- [Hint](interfaces/Hint.md)\n- [IsAction](interfaces/IsAction.md)\n- [NavigationAction](interfaces/NavigationAction.md)\n- [Part](interfaces/Part.md)\n- [PartActivityResponse](interfaces/PartActivityResponse.md)\n- [PartState](interfaces/PartState.md)\n- [RegistrationResult](interfaces/RegistrationResult.md)\n- [RequestHintResponse](interfaces/RequestHintResponse.md)\n- [ResetActivityResponse](interfaces/ResetActivityResponse.md)\n- [Response](interfaces/Response.md)\n- [SectionAuthoringProps](interfaces/SectionAuthoringProps.md)\n- [SpecifiesEditor](interfaces/SpecifiesEditor.md)\n- [SpecifiesTextDirection](interfaces/SpecifiesTextDirection.md)\n- [StateUpdateAction](interfaces/StateUpdateAction.md)\n- [Stem](interfaces/Stem.md)\n- [StudentResponse](interfaces/StudentResponse.md)\n- [SubmissionAction](interfaces/SubmissionAction.md)\n- [Success](interfaces/Success.md)\n- [Transformation](interfaces/Transformation.md)","ref":"modules.html#interfaces"},{"type":"extras","title":"Type aliases - modules","doc":"- [Action](modules.md#action)\n- [ChoiceId](modules.md#choiceid)\n- [ChoiceIdsToResponseId](modules.md#choiceidstoresponseid)\n- [ClientEvaluation](modules.md#clientevaluation)\n- [DeliveryMode](modules.md#deliverymode)\n- [FileMetaData](modules.md#filemetadata)\n- [HasHints](modules.md#hashints)\n- [HasStems](modules.md#hasstems)\n- [Manifest](modules.md#manifest)\n- [MatchStyle](modules.md#matchstyle)\n- [MediaItemRequest](modules.md#mediaitemrequest)\n- [ModeSpecification](modules.md#modespecification)\n- [PartId](modules.md#partid)\n- [PartResponse](modules.md#partresponse)\n- [PostUndoable](modules.md#postundoable)\n- [ResponseId](modules.md#responseid)\n- [RichText](modules.md#richtext)\n- [Undoable](modules.md#undoable)\n- [creationFn](modules.md#creationfn)","ref":"modules.html#type-aliases"},{"type":"extras","title":"Functions - modules","doc":"- [feedbackToString](modules.md#feedbacktostring)\n- [invokeCreationFunc](modules.md#invokecreationfunc)\n- [makeChoice](modules.md#makechoice)\n- [makeContent](modules.md#makecontent)\n- [makeFeedback](modules.md#makefeedback)\n- [makeHint](modules.md#makehint)\n- [makePart](modules.md#makepart)\n- [makePreviewText](modules.md#makepreviewtext)\n- [makeResponse](modules.md#makeresponse)\n- [makeStem](modules.md#makestem)\n- [makeTransformation](modules.md#maketransformation)\n- [makeUndoable](modules.md#makeundoable)\n- [register](modules.md#register)\n- [registerCreationFunc](modules.md#registercreationfunc)","ref":"modules.html#functions"},{"type":"extras","title":"Type aliases - modules","doc":"","ref":"modules.html#type-aliases"},{"type":"extras","title":"Action - modules","doc":"Ƭ **Action**: [`NavigationAction`](interfaces/NavigationAction.md) \\| [`FeedbackAction`](interfaces/FeedbackAction.md) \\| [`StateUpdateAction`](interfaces/StateUpdateAction.md) \\| [`SubmissionAction`](interfaces/SubmissionAction.md)\n\nSupported actions.\n\n#### Defined in\n\n[src/components/activities/types.ts:532](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L532)\n\n___","ref":"modules.html#action"},{"type":"extras","title":"ChoiceId - modules","doc":"Ƭ **ChoiceId**: `ID`\n\nAlias for the identifier of a choice.\n\n#### Defined in\n\n[src/components/activities/types.ts:93](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L93)\n\n___","ref":"modules.html#choiceid"},{"type":"extras","title":"ChoiceIdsToResponseId - modules","doc":"Ƭ **ChoiceIdsToResponseId**: [[`ChoiceId`](modules.md#choiceid)[], [`ResponseId`](modules.md#responseid)]\n\nDefines a mapping of a collection of choices to a response.\n\n#### Defined in\n\n[src/components/activities/types.ts:693](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L693)\n\n___","ref":"modules.html#choiceidstoresponseid"},{"type":"extras","title":"ClientEvaluation - modules","doc":"Ƭ **ClientEvaluation**: `Object`\n\nAllows submission of a client-side evaluation for an activity\nsubmission.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `feedback` | `any` |\n| `outOf` | `number` \\| ``null`` |\n| `response` | `any` |\n| `score` | `number` \\| ``null`` |\n\n#### Defined in\n\n[src/components/activities/types.ts:169](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L169)\n\n___","ref":"modules.html#clientevaluation"},{"type":"extras","title":"DeliveryMode - modules","doc":"Ƭ **DeliveryMode**: ``\"delivery\"`` \\| ``\"review\"`` \\| ``\"preview\"``\n\nThree different modes of activity delivery.\n\n`'delivery'` is the standard mode where a student is interacting\nwith a an activity\n`'review'` mode is when a student is reviewing a previously\nsubmitted activity, in a read only mode\n`'preview'` mode is instructor specific and allows access to\nresponses and hints\n\n#### Defined in\n\n[src/components/activities/types.ts:52](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L52)\n\n___","ref":"modules.html#deliverymode"},{"type":"extras","title":"FileMetaData - modules","doc":"Ƭ **FileMetaData**: `Object`\n\nFile response metadata.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `creationTime` | `number` |\n| `fileSize` | `number` |\n| `url` | `string` |\n\n#### Defined in\n\n[src/components/activities/types.ts:698](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L698)\n\n___","ref":"modules.html#filemetadata"},{"type":"extras","title":"HasHints - modules","doc":"Ƭ **HasHints**: [`HasParts`](interfaces/HasParts.md)\n\nMarker interface for an entity that has hints.\n\n#### Defined in\n\n[src/components/activities/types.ts:392](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L392)\n\n___","ref":"modules.html#hashints"},{"type":"extras","title":"HasStems - modules","doc":"Ƭ **HasStems**: `Object`\n\nMarker interface for an entity that has a collection of stems.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `stems` | [`Stem`](interfaces/Stem.md)[] |\n\n#### Defined in\n\n[src/components/activities/types.ts:380](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L380)\n\n___","ref":"modules.html#hasstems"},{"type":"extras","title":"Manifest - modules","doc":"Ƭ **Manifest**: `Object`\n\nStructure of an activity manifest.\n\nThe `id` field must be unique amongst all activities registered in\na Torus instance. The format for the `id` field is ` _ `\nwhere ` ` is the designated namespace for this family of activities\nand ` ` is a terse description of this specific activity. Examples\ninclude: `oli_multiple_choice`, `example_tf`.\n\nThe `friendlyName` attribute is a short, human readable string that the UX within\nTorus will display to students, instructors and authors in various contexts. Words\nwithin it should be space separated and capitalized. For example: \"Multiple Choice\"\n\nThe `descriptions` attribute is a slightly longer human readable description of the\nactivity. For example, \"A traditional multiple choice question with one correct answer\"\n\n`delivery` and `authoring` attributes specify the element tag names that the activity\nis implemented within.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `authoring` | [`ModeSpecification`](modules.md#modespecification) |\n| `delivery` | [`ModeSpecification`](modules.md#modespecification) |\n| `description` | `string` |\n| `friendlyName` | `string` |\n| `id` | `ID` |\n\n#### Defined in\n\n[src/components/activities/types.ts:196](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L196)\n\n___","ref":"modules.html#manifest"},{"type":"extras","title":"MatchStyle - modules","doc":"Ƭ **MatchStyle**: ``\"any\"`` \\| ``\"all\"`` \\| ``\"none\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:465](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L465)\n\n___","ref":"modules.html#matchstyle"},{"type":"extras","title":"MediaItemRequest - modules","doc":"Ƭ **MediaItemRequest**: `Object`\n\nRequest for a media item from the media library.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `mimeTypes` | `string`[] |\n| `type` | ``\"MediaItemRequest\"`` |\n\n#### Defined in\n\n[src/components/activities/types.ts:57](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L57)\n\n___","ref":"modules.html#mediaitemrequest"},{"type":"extras","title":"ModeSpecification - modules","doc":"Ƭ **ModeSpecification**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `element` | `string` |\n| `entry` | `string` |\n\n#### Defined in\n\n[src/components/activities/types.ts:151](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L151)\n\n___","ref":"modules.html#modespecification"},{"type":"extras","title":"PartId - modules","doc":"Ƭ **PartId**: `ID`\n\nAlias for the identifier of a part.\n\n#### Defined in\n\n[src/components/activities/types.ts:98](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L98)\n\n___","ref":"modules.html#partid"},{"type":"extras","title":"PartResponse - modules","doc":"Ƭ **PartResponse**: `Object`\n\nType type allows the submission of a response for a specific\npart of an activity.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `response` | [`StudentResponse`](interfaces/StudentResponse.md) |\n\n#### Defined in\n\n[src/components/activities/types.ts:160](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L160)\n\n___","ref":"modules.html#partresponse"},{"type":"extras","title":"PostUndoable - modules","doc":"Ƭ **PostUndoable**: (`undoable`: [`Undoable`](modules.md#undoable)) => `void`\n\n#### Type declaration\n\n▸ (`undoable`): `void`\n\nType for the post undo function.\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `undoable` | [`Undoable`](modules.md#undoable) |\n\n##### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/types.ts:40](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L40)\n\n___","ref":"modules.html#postundoable"},{"type":"extras","title":"ResponseId - modules","doc":"Ƭ **ResponseId**: `ID`\n\nAlias for the identifier of a response.\n\n#### Defined in\n\n[src/components/activities/types.ts:103](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L103)\n\n___","ref":"modules.html#responseid"},{"type":"extras","title":"RichText - modules","doc":"Ƭ **RichText**: `ModelElement`[]\n\nRich text definition, an array of `ModelElement` instances.\n\n#### Defined in\n\n[src/components/activities/types.ts:108](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L108)\n\n___","ref":"modules.html#richtext"},{"type":"extras","title":"Undoable - modules","doc":"Ƭ **Undoable**: `Object`\n\nAn Undoable action that an activity defines as a result of some (usually\ndestructive) operation.\n\nFor example, if a choice is deleted via the user interface of an activity,\nthe activity can create and post an `Undoable` that, if invoked by the\npage editor, would result in the choice being restored.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `description` | `string` |\n| `operations` | `PathOperation`[] |\n| `type` | ``\"Undoable\"`` |\n\n#### Defined in\n\n[src/components/activities/types.ts:70](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L70)\n\n___","ref":"modules.html#undoable"},{"type":"extras","title":"creationFn - modules","doc":"Ƭ **creationFn**: (`context`: [`CreationContext`](interfaces/CreationContext.md)) => `Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n#### Type declaration\n\n▸ (`context`): `Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `context` | [`CreationContext`](interfaces/CreationContext.md) |\n\n##### Returns\n\n`Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n#### Defined in\n\n[src/components/activities/creation.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/creation.ts#L4)","ref":"modules.html#creationfn"},{"type":"extras","title":"Functions - modules","doc":"","ref":"modules.html#functions"},{"type":"extras","title":"feedbackToString - modules","doc":"▸ **feedbackToString**(`feedback`): `string`\n\nConverts a rich text feedback, that may contain inline markup and\nblock-level elements, to text.\n\nThis function should only be used in contexts where there is a\nguarantee that the loss of data via this conversion is not a problem.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `feedback` | [`Feedback`](interfaces/Feedback.md) | rich text capable feedback |\n\n#### Returns\n\n`string`\n\nonly the string text found within the feedback\n\n#### Defined in\n\n[src/components/activities/types.ts:21](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L21)\n\n___","ref":"modules.html#feedbacktostring"},{"type":"extras","title":"invokeCreationFunc - modules","doc":"▸ **invokeCreationFunc**(`id`, `context`): `Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `id` | `string` |\n| `context` | `ResourceContext` |\n\n#### Returns\n\n`Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n#### Defined in\n\n[src/components/activities/creation.ts:26](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/creation.ts#L26)\n\n___","ref":"modules.html#invokecreationfunc"},{"type":"extras","title":"makeChoice - modules","doc":"▸ **makeChoice**(`text`, `id?`): [`Choice`](interfaces/Choice.md)\n\nHelper function to create a choice from simple text.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `text` | `string` |\n| `id?` | `string` |\n\n#### Returns\n\n[`Choice`](interfaces/Choice.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:351](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L351)\n\n___","ref":"modules.html#makechoice"},{"type":"extras","title":"makeContent - modules","doc":"▸ **makeContent**(`text`, `id?`): `Object`\n\nHelper function to create a content object out of a raw string. Returns\nthe string as a single paragraph within rich text, within the content\nobject.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `text` | `string` | text string |\n| `id?` | `string` | optional identifier |\n\n#### Returns\n\n`Object`\n\ncontent\n\n| Name | Type |\n| :------ | :------ |\n| `content` | [`RichText`](modules.md#richtext) |\n| `editor` | `EditorType` |\n| `id` | `string` |\n| `textDirection` | `TextDirection` |\n\n#### Defined in\n\n[src/components/activities/types.ts:129](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L129)\n\n___","ref":"modules.html#makecontent"},{"type":"extras","title":"makeFeedback - modules","doc":"▸ **makeFeedback**(`text`): [`Feedback`](interfaces/Feedback.md)\n\nHelper function to create Feedback from simple text.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `text` | `string` |\n\n#### Returns\n\n[`Feedback`](interfaces/Feedback.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:412](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L412)\n\n___","ref":"modules.html#makefeedback"},{"type":"extras","title":"makeHint - modules","doc":"▸ **makeHint**(`text`): [`Hint`](interfaces/Hint.md)\n\nHelper function to create a hint from simple text.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `text` | `string` |\n\n#### Returns\n\n[`Hint`](interfaces/Hint.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:396](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L396)\n\n___","ref":"modules.html#makehint"},{"type":"extras","title":"makePart - modules","doc":"▸ **makePart**(`responses`, `hints?`, `id?`, `targets?`): [`Part`](interfaces/Part.md)\n\nHelper function to create a part.\n\n#### Parameters\n\n| Name | Type | Default value | Description |\n| :------ | :------ | :------ | :------ |\n| `responses` | [`Response`](interfaces/Response.md)[] | `undefined` | responses to use |\n| `hints` | [`Hint`](interfaces/Hint.md)[] | `undefined` | hints to use |\n| `id?` | `string` | `undefined` | the part id |\n| `targets` | `string`[] | `[]` | - |\n\n#### Returns\n\n[`Part`](interfaces/Part.md)\n\nthe formulated part\n\n#### Defined in\n\n[src/components/activities/types.ts:593](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L593)\n\n___","ref":"modules.html#makepart"},{"type":"extras","title":"makePreviewText - modules","doc":"▸ **makePreviewText**(): `string`\n\nHelper function to create preview text.\n\n#### Returns\n\n`string`\n\n#### Defined in\n\n[src/components/activities/types.ts:688](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L688)\n\n___","ref":"modules.html#makepreviewtext"},{"type":"extras","title":"makeResponse - modules","doc":"▸ **makeResponse**(`rule`, `score`, `text?`, `correct?`): [`Response`](interfaces/Response.md)\n\nHelper function to create a response.\n\n#### Parameters\n\n| Name | Type | Default value | Description |\n| :------ | :------ | :------ | :------ |\n| `rule` | `string` | `undefined` | match rule |\n| `score` | `number` | `undefined` | score to assign |\n| `text` | `string` | `''` | simple text to formulate a Feedback from |\n| `correct?` | `boolean` | `undefined` | - |\n\n#### Returns\n\n[`Response`](interfaces/Response.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:507](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L507)\n\n___","ref":"modules.html#makeresponse"},{"type":"extras","title":"makeStem - modules","doc":"▸ **makeStem**(`text`): [`Stem`](interfaces/Stem.md)\n\nHelper function to create a stem from a simple string.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `text` | `string` |\n\n#### Returns\n\n[`Stem`](interfaces/Stem.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:384](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L384)\n\n___","ref":"modules.html#makestem"},{"type":"extras","title":"makeTransformation - modules","doc":"▸ **makeTransformation**(`path`, `operation`, `firstAttemptOnly`, `partId?`): [`Transformation`](interfaces/Transformation.md)\n\nHelper function to create a transformation.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `path` | `string` | JSON path of the node within the model to transform |\n| `operation` | [`shuffle`](enums/Transform.md#shuffle) | The transformation operation |\n| `firstAttemptOnly` | `boolean` | - |\n| `partId?` | `string` | - |\n\n#### Returns\n\n[`Transformation`](interfaces/Transformation.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:444](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L444)\n\n___","ref":"modules.html#maketransformation"},{"type":"extras","title":"makeUndoable - modules","doc":"▸ **makeUndoable**(`description`, `operations`): [`Undoable`](modules.md#undoable)\n\nHelper function to create an instance of an `Undoable`\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `description` | `string` | Description of the undoable |\n| `operations` | `PathOperation`[] | Collection of path operations on the model that implements the undoable |\n\n#### Returns\n\n[`Undoable`](modules.md#undoable)\n\nan undoable instance\n\n#### Defined in\n\n[src/components/activities/types.ts:82](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L82)\n\n___","ref":"modules.html#makeundoable"},{"type":"extras","title":"register - modules","doc":"▸ **register**(`localFile`, `torusHost`, `token`): `Promise`<[`RegistrationResult`](interfaces/RegistrationResult.md) \\| `ServerError`\\>\n\nHelper function to register an activity from a zip bundle into a\nspecific Torus instance.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `localFile` | `string` | path to the local file that is the activity zip bundle |\n| `torusHost` | `string` | URL specifying protocol, host and port of the Torus instance to register this activity into. Example: `\"https://proton.oli.cmu.edu/\"` |\n| `token` | `string` | encoded API token |\n\n#### Returns\n\n`Promise`<[`RegistrationResult`](interfaces/RegistrationResult.md) \\| `ServerError`\\>\n\n`RegistrationResult` on success\n\n#### Defined in\n\n[src/components/activities/registrar.ts:19](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/registrar.ts#L19)\n\n___","ref":"modules.html#register"},{"type":"extras","title":"registerCreationFunc - modules","doc":"▸ **registerCreationFunc**(`manifest`, `fn`): `void`\n\nRegisters a creation function for an activity type. The creation function\nis what the system will execute to create new instances of this\nactivity type in an authoring context. The most usual implementation\nof a creation function is to simply return (i.e. resolve) a default\nactivity model. But given the async interface here, a creation function\ncan have a more interesting implementation where it makes a network request\nto a third-party server to retrieve data to use in constructing the\nactivity instance.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `manifest` | [`Manifest`](modules.md#manifest) | manifest file JSON |\n| `fn` | [`creationFn`](modules.md#creationfn) | the creation function to use |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/creation.ts:18](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/creation.ts#L18)","ref":"modules.html#registercreationfunc"},{"type":"extras","title":"ActivityContext","doc":"[oli](../README.md) / [Exports](../modules.md) / ActivityContext\n\n# Interface: ActivityContext","ref":"activitycontext.html"},{"type":"extras","title":"Table of contents - ActivityContext","doc":"","ref":"activitycontext.html#table-of-contents"},{"type":"extras","title":"Properties - ActivityContext","doc":"- [bibParams](ActivityContext.md#bibparams)\n- [graded](ActivityContext.md#graded)\n- [groupId](ActivityContext.md#groupid)\n- [isAnnotationLevel](ActivityContext.md#isannotationlevel)\n- [learningLanguage](ActivityContext.md#learninglanguage)\n- [pageAttemptGuid](ActivityContext.md#pageattemptguid)\n- [pageLinkParams](ActivityContext.md#pagelinkparams)\n- [pageState](ActivityContext.md#pagestate)\n- [projectSlug](ActivityContext.md#projectslug)\n- [renderPointMarkers](ActivityContext.md#renderpointmarkers)\n- [resourceId](ActivityContext.md#resourceid)\n- [sectionSlug](ActivityContext.md#sectionslug)\n- [showFeedback](ActivityContext.md#showfeedback)\n- [surveyId](ActivityContext.md#surveyid)\n- [userId](ActivityContext.md#userid)\n- [variables](ActivityContext.md#variables)","ref":"activitycontext.html#properties"},{"type":"extras","title":"Properties - ActivityContext","doc":"","ref":"activitycontext.html#properties"},{"type":"extras","title":"bibParams - ActivityContext","doc":"• **bibParams**: `any`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:59](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L59)\n\n___","ref":"activitycontext.html#bibparams"},{"type":"extras","title":"graded - ActivityContext","doc":"• **graded**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:52](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L52)\n\n___","ref":"activitycontext.html#graded"},{"type":"extras","title":"groupId - ActivityContext","doc":"• **groupId**: ``null`` \\| `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:57](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L57)\n\n___","ref":"activitycontext.html#groupid"},{"type":"extras","title":"isAnnotationLevel - ActivityContext","doc":"• **isAnnotationLevel**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:65](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L65)\n\n___","ref":"activitycontext.html#isannotationlevel"},{"type":"extras","title":"learningLanguage - ActivityContext","doc":"• `Optional` **learningLanguage**: `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:56](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L56)\n\n___","ref":"activitycontext.html#learninglanguage"},{"type":"extras","title":"pageAttemptGuid - ActivityContext","doc":"• **pageAttemptGuid**: `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:60](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L60)\n\n___","ref":"activitycontext.html#pageattemptguid"},{"type":"extras","title":"pageLinkParams - ActivityContext","doc":"• **pageLinkParams**: `any`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:67](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L67)\n\n___","ref":"activitycontext.html#pagelinkparams"},{"type":"extras","title":"pageState - ActivityContext","doc":"• `Optional` **pageState**: `any`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:61](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L61)\n\n___","ref":"activitycontext.html#pagestate"},{"type":"extras","title":"projectSlug - ActivityContext","doc":"• **projectSlug**: `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:54](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L54)\n\n___","ref":"activitycontext.html#projectslug"},{"type":"extras","title":"renderPointMarkers - ActivityContext","doc":"• **renderPointMarkers**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:64](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L64)\n\n___","ref":"activitycontext.html#renderpointmarkers"},{"type":"extras","title":"resourceId - ActivityContext","doc":"• `Optional` **resourceId**: `number`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:63](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L63)\n\n___","ref":"activitycontext.html#resourceid"},{"type":"extras","title":"sectionSlug - ActivityContext","doc":"• **sectionSlug**: `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:53](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L53)\n\n___","ref":"activitycontext.html#sectionslug"},{"type":"extras","title":"showFeedback - ActivityContext","doc":"• **showFeedback**: ``null`` \\| `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:62](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L62)\n\n___","ref":"activitycontext.html#showfeedback"},{"type":"extras","title":"surveyId - ActivityContext","doc":"• **surveyId**: ``null`` \\| `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:58](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L58)\n\n___","ref":"activitycontext.html#surveyid"},{"type":"extras","title":"userId - ActivityContext","doc":"• **userId**: `number`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:55](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L55)\n\n___","ref":"activitycontext.html#userid"},{"type":"extras","title":"variables - ActivityContext","doc":"• **variables**: `any`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:66](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L66)","ref":"activitycontext.html#variables"},{"type":"extras","title":"ActivityLevelScoring","doc":"[oli](../README.md) / [Exports](../modules.md) / ActivityLevelScoring\n\n# Interface: ActivityLevelScoring","ref":"activitylevelscoring.html"},{"type":"extras","title":"Table of contents - ActivityLevelScoring","doc":"","ref":"activitylevelscoring.html#table-of-contents"},{"type":"extras","title":"Properties - ActivityLevelScoring","doc":"- [authoring](ActivityLevelScoring.md#authoring)\n- [customScoring](ActivityLevelScoring.md#customscoring)\n- [scoringStrategy](ActivityLevelScoring.md#scoringstrategy)","ref":"activitylevelscoring.html#properties"},{"type":"extras","title":"Properties - ActivityLevelScoring","doc":"","ref":"activitylevelscoring.html#properties"},{"type":"extras","title":"authoring - ActivityLevelScoring","doc":"• **authoring**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `parts` | [`Part`](Part.md)[] |\n\n#### Defined in\n\n[src/components/activities/types.ts:622](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L622)\n\n___","ref":"activitylevelscoring.html#authoring"},{"type":"extras","title":"customScoring - ActivityLevelScoring","doc":"• `Optional` **customScoring**: `boolean`\n\n#### Defined in\n\n[src/components/activities/types.ts:620](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L620)\n\n___","ref":"activitylevelscoring.html#customscoring"},{"type":"extras","title":"scoringStrategy - ActivityLevelScoring","doc":"• `Optional` **scoringStrategy**: [`ScoringStrategy`](../enums/ScoringStrategy.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:621](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L621)","ref":"activitylevelscoring.html#scoringstrategy"},{"type":"extras","title":"ActivityModelSchema","doc":"[oli](../README.md) / [Exports](../modules.md) / ActivityModelSchema\n\n# Interface: ActivityModelSchema\n\nAn extendable activity model schema.","ref":"activitymodelschema.html"},{"type":"extras","title":"Hierarchy - ActivityModelSchema","doc":"- **`ActivityModelSchema`**\n\n ↳ [`HasStem`](HasStem.md)","ref":"activitymodelschema.html#hierarchy"},{"type":"extras","title":"Table of contents - ActivityModelSchema","doc":"","ref":"activitymodelschema.html#table-of-contents"},{"type":"extras","title":"Properties - ActivityModelSchema","doc":"- [activityType](ActivityModelSchema.md#activitytype)\n- [activity\\_id](ActivityModelSchema.md#activity_id)\n- [authoring](ActivityModelSchema.md#authoring)\n- [bibrefs](ActivityModelSchema.md#bibrefs)\n- [content](ActivityModelSchema.md#content)\n- [id](ActivityModelSchema.md#id)\n- [learningLanguage](ActivityModelSchema.md#learninglanguage)\n- [resourceId](ActivityModelSchema.md#resourceid)","ref":"activitymodelschema.html#properties"},{"type":"extras","title":"Properties - ActivityModelSchema","doc":"","ref":"activitymodelschema.html#properties"},{"type":"extras","title":"activityType - ActivityModelSchema","doc":"• `Optional` **activityType**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:212](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L212)\n\n___","ref":"activitymodelschema.html#activitytype"},{"type":"extras","title":"activity\\_id - ActivityModelSchema","doc":"• `Optional` **activity\\_id**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:215](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L215)\n\n___","ref":"activitymodelschema.html#activity-_id"},{"type":"extras","title":"authoring - ActivityModelSchema","doc":"• `Optional` **authoring**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:209](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L209)\n\n___","ref":"activitymodelschema.html#authoring"},{"type":"extras","title":"bibrefs - ActivityModelSchema","doc":"• `Optional` **bibrefs**: `string`[]\n\n#### Defined in\n\n[src/components/activities/types.ts:214](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L214)\n\n___","ref":"activitymodelschema.html#bibrefs"},{"type":"extras","title":"content - ActivityModelSchema","doc":"• `Optional` **content**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:211](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L211)\n\n___","ref":"activitymodelschema.html#content"},{"type":"extras","title":"id - ActivityModelSchema","doc":"• `Optional` **id**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:213](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L213)\n\n___","ref":"activitymodelschema.html#id"},{"type":"extras","title":"learningLanguage - ActivityModelSchema","doc":"• `Optional` **learningLanguage**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:210](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L210)\n\n___","ref":"activitymodelschema.html#learninglanguage"},{"type":"extras","title":"resourceId - ActivityModelSchema","doc":"• `Optional` **resourceId**: `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:208](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L208)","ref":"activitymodelschema.html#resourceid"},{"type":"extras","title":"ActivityState","doc":"[oli](../README.md) / [Exports](../modules.md) / ActivityState\n\n# Interface: ActivityState\n\nDetails the current state of an activity attempt for a student\nand a specific activity instance.","ref":"activitystate.html"},{"type":"extras","title":"Table of contents - ActivityState","doc":"","ref":"activitystate.html#table-of-contents"},{"type":"extras","title":"Properties - ActivityState","doc":"- [activityId](ActivityState.md#activityid)\n- [attemptGuid](ActivityState.md#attemptguid)\n- [attemptNumber](ActivityState.md#attemptnumber)\n- [dateEvaluated](ActivityState.md#dateevaluated)\n- [dateSubmitted](ActivityState.md#datesubmitted)\n- [groupId](ActivityState.md#groupid)\n- [hasMoreAttempts](ActivityState.md#hasmoreattempts)\n- [hasMoreHints](ActivityState.md#hasmorehints)\n- [outOf](ActivityState.md#outof)\n- [parts](ActivityState.md#parts)\n- [score](ActivityState.md#score)\n- [snapshot](ActivityState.md#snapshot)","ref":"activitystate.html#properties"},{"type":"extras","title":"Properties - ActivityState","doc":"","ref":"activitystate.html#properties"},{"type":"extras","title":"activityId - ActivityState","doc":"• `Optional` **activityId**: `number`\n\nResource id of the activity that this attempt pertains to.\n\n#### Defined in\n\n[src/components/activities/types.ts:293](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L293)\n\n___","ref":"activitystate.html#activityid"},{"type":"extras","title":"attemptGuid - ActivityState","doc":"• **attemptGuid**: `string`\n\nUnique identifier of this attempt.\n\n#### Defined in\n\n[src/components/activities/types.ts:297](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L297)\n\n___","ref":"activitystate.html#attemptguid"},{"type":"extras","title":"attemptNumber - ActivityState","doc":"• **attemptNumber**: `number`\n\nThe orindal number of this attempt, relative to other attempts.\n\n#### Defined in\n\n[src/components/activities/types.ts:302](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L302)\n\n___","ref":"activitystate.html#attemptnumber"},{"type":"extras","title":"dateEvaluated - ActivityState","doc":"• **dateEvaluated**: ``null`` \\| `Date`\n\nIf this attempt has been evaluated, the date of the evaluation, null\nif this attempt has not been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:307](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L307)\n\n___","ref":"activitystate.html#dateevaluated"},{"type":"extras","title":"dateSubmitted - ActivityState","doc":"• **dateSubmitted**: ``null`` \\| `Date`\n\nThe date that this attempt was submitted, if it has been submitted, null\nif not.\n\n#### Defined in\n\n[src/components/activities/types.ts:313](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L313)\n\n___","ref":"activitystate.html#datesubmitted"},{"type":"extras","title":"groupId - ActivityState","doc":"• **groupId**: ``null`` \\| `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:338](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L338)\n\n___","ref":"activitystate.html#groupid"},{"type":"extras","title":"hasMoreAttempts - ActivityState","doc":"• **hasMoreAttempts**: `boolean`\n\nWhether or not this attempt has additional attempts.\n\n#### Defined in\n\n[src/components/activities/types.ts:331](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L331)\n\n___","ref":"activitystate.html#hasmoreattempts"},{"type":"extras","title":"hasMoreHints - ActivityState","doc":"• **hasMoreHints**: `boolean`\n\nWhether or not this attempt has additional hints.\n\n#### Defined in\n\n[src/components/activities/types.ts:335](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L335)\n\n___","ref":"activitystate.html#hasmorehints"},{"type":"extras","title":"outOf - ActivityState","doc":"• **outOf**: ``null`` \\| `number`\n\nMaximum point value that could have been received.\n\n#### Defined in\n\n[src/components/activities/types.ts:322](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L322)\n\n___","ref":"activitystate.html#outof"},{"type":"extras","title":"parts - ActivityState","doc":"• **parts**: [`PartState`](PartState.md)[]\n\nCollection of the part attempt states.\n\n#### Defined in\n\n[src/components/activities/types.ts:326](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L326)\n\n___","ref":"activitystate.html#parts"},{"type":"extras","title":"score - ActivityState","doc":"• **score**: ``null`` \\| `number`\n\nScore received. Null if this attempt has not been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:318](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L318)\n\n___","ref":"activitystate.html#score"},{"type":"extras","title":"snapshot - ActivityState","doc":"• `Optional` **snapshot**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:336](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L336)","ref":"activitystate.html#snapshot"},{"type":"extras","title":"AuthoringElementProps","doc":"[oli](../README.md) / [Exports](../modules.md) / AuthoringElementProps\n\n# Interface: AuthoringElementProps","ref":"authoringelementprops.html"},{"type":"extras","title":"Type parameters - AuthoringElementProps","doc":"| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](ActivityModelSchema.md) |","ref":"authoringelementprops.html#type-parameters"},{"type":"extras","title":"Table of contents - AuthoringElementProps","doc":"","ref":"authoringelementprops.html#table-of-contents"},{"type":"extras","title":"Properties - AuthoringElementProps","doc":"- [authoringContext](AuthoringElementProps.md#authoringcontext)\n- [editMode](AuthoringElementProps.md#editmode)\n- [model](AuthoringElementProps.md#model)\n- [notify](AuthoringElementProps.md#notify)\n- [projectSlug](AuthoringElementProps.md#projectslug)","ref":"authoringelementprops.html#properties"},{"type":"extras","title":"Methods - AuthoringElementProps","doc":"- [onCustomEvent](AuthoringElementProps.md#oncustomevent)\n- [onEdit](AuthoringElementProps.md#onedit)\n- [onPostUndoable](AuthoringElementProps.md#onpostundoable)\n- [onRequestMedia](AuthoringElementProps.md#onrequestmedia)","ref":"authoringelementprops.html#methods"},{"type":"extras","title":"Properties - AuthoringElementProps","doc":"","ref":"authoringelementprops.html#properties"},{"type":"extras","title":"authoringContext - AuthoringElementProps","doc":"• `Optional` **authoringContext**: `any`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:19](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L19)\n\n___","ref":"authoringelementprops.html#authoringcontext"},{"type":"extras","title":"editMode - AuthoringElementProps","doc":"• **editMode**: `boolean`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:17](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L17)\n\n___","ref":"authoringelementprops.html#editmode"},{"type":"extras","title":"model - AuthoringElementProps","doc":"• **model**: `T`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:12](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L12)\n\n___","ref":"authoringelementprops.html#model"},{"type":"extras","title":"notify - AuthoringElementProps","doc":"• `Optional` **notify**: `EventEmitter`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:20](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L20)\n\n___","ref":"authoringelementprops.html#notify"},{"type":"extras","title":"projectSlug - AuthoringElementProps","doc":"• **projectSlug**: `string`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:18](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L18)","ref":"authoringelementprops.html#projectslug"},{"type":"extras","title":"Methods - AuthoringElementProps","doc":"","ref":"authoringelementprops.html#methods"},{"type":"extras","title":"onCustomEvent - AuthoringElementProps","doc":"▸ `Optional` **onCustomEvent**(`eventName`, `payload`): `Promise`<`any`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `eventName` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:16](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L16)\n\n___","ref":"authoringelementprops.html#oncustomevent"},{"type":"extras","title":"onEdit - AuthoringElementProps","doc":"▸ **onEdit**(`model`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `model` | `T` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:13](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L13)\n\n___","ref":"authoringelementprops.html#onedit"},{"type":"extras","title":"onPostUndoable - AuthoringElementProps","doc":"▸ **onPostUndoable**(`undoable`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `undoable` | [`Undoable`](../modules.md#undoable) |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:14](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L14)\n\n___","ref":"authoringelementprops.html#onpostundoable"},{"type":"extras","title":"onRequestMedia - AuthoringElementProps","doc":"▸ **onRequestMedia**(`request`): `Promise`<`string` \\| `boolean`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `request` | [`MediaItemRequest`](../modules.md#mediaitemrequest) |\n\n#### Returns\n\n`Promise`<`string` \\| `boolean`\\>\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:15](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L15)","ref":"authoringelementprops.html#onrequestmedia"},{"type":"extras","title":"Choice","doc":"[oli](../README.md) / [Exports](../modules.md) / Choice\n\n# Interface: Choice\n\nDefines an option, or choice, within activities such as a\nmultiple choice activity.","ref":"choice.html"},{"type":"extras","title":"Hierarchy - Choice","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesEditor`](SpecifiesEditor.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Choice`**","ref":"choice.html#hierarchy"},{"type":"extras","title":"Table of contents - Choice","doc":"","ref":"choice.html#table-of-contents"},{"type":"extras","title":"Properties - Choice","doc":"- [content](Choice.md#content)\n- [editor](Choice.md#editor)\n- [frequency](Choice.md#frequency)\n- [id](Choice.md#id)\n- [textDirection](Choice.md#textdirection)","ref":"choice.html#properties"},{"type":"extras","title":"Properties - Choice","doc":"","ref":"choice.html#properties"},{"type":"extras","title":"content - Choice","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L118)\n\n___","ref":"choice.html#content"},{"type":"extras","title":"editor - Choice","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Inherited from\n\n[SpecifiesEditor](SpecifiesEditor.md).[editor](SpecifiesEditor.md#editor)\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L364)\n\n___","ref":"choice.html#editor"},{"type":"extras","title":"frequency - Choice","doc":"• `Optional` **frequency**: `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:346](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L346)\n\n___","ref":"choice.html#frequency"},{"type":"extras","title":"id - Choice","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"choice.html#id"},{"type":"extras","title":"textDirection - Choice","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L360)","ref":"choice.html#textdirection"},{"type":"extras","title":"CreationContext","doc":"[oli](../README.md) / [Exports](../modules.md) / CreationContext\n\n# Interface: CreationContext\n\nContext supplied to a creation function.","ref":"creationcontext.html"},{"type":"extras","title":"Hierarchy - CreationContext","doc":"- `ResourceContext`\n\n ↳ **`CreationContext`**","ref":"creationcontext.html#hierarchy"},{"type":"extras","title":"Table of contents - CreationContext","doc":"","ref":"creationcontext.html#table-of-contents"},{"type":"extras","title":"Properties - CreationContext","doc":"- [activityContexts](CreationContext.md#activitycontexts)\n- [allObjectives](CreationContext.md#allobjectives)\n- [allTags](CreationContext.md#alltags)\n- [authorEmail](CreationContext.md#authoremail)\n- [content](CreationContext.md#content)\n- [graded](CreationContext.md#graded)\n- [hasExperiments](CreationContext.md#hasexperiments)\n- [objectives](CreationContext.md#objectives)\n- [optionalContentTypes](CreationContext.md#optionalcontenttypes)\n- [projectSlug](CreationContext.md#projectslug)\n- [resourceId](CreationContext.md#resourceid)\n- [resourceSlug](CreationContext.md#resourceslug)\n- [title](CreationContext.md#title)","ref":"creationcontext.html#properties"},{"type":"extras","title":"Properties - CreationContext","doc":"","ref":"creationcontext.html#properties"},{"type":"extras","title":"activityContexts - CreationContext","doc":"• **activityContexts**: `ActivityEditContext`[]\n\n#### Inherited from\n\nResourceContext.activityContexts\n\n#### Defined in\n\n[src/data/content/resource.ts:173](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L173)\n\n___","ref":"creationcontext.html#activitycontexts"},{"type":"extras","title":"allObjectives - CreationContext","doc":"• **allObjectives**: `Objective`[]\n\n#### Inherited from\n\nResourceContext.allObjectives\n\n#### Defined in\n\n[src/data/content/resource.ts:171](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L171)\n\n___","ref":"creationcontext.html#allobjectives"},{"type":"extras","title":"allTags - CreationContext","doc":"• **allTags**: `Tag`[]\n\n#### Inherited from\n\nResourceContext.allTags\n\n#### Defined in\n\n[src/data/content/resource.ts:172](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L172)\n\n___","ref":"creationcontext.html#alltags"},{"type":"extras","title":"authorEmail - CreationContext","doc":"• **authorEmail**: `string`\n\n#### Inherited from\n\nResourceContext.authorEmail\n\n#### Defined in\n\n[src/data/content/resource.ts:163](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L163)\n\n___","ref":"creationcontext.html#authoremail"},{"type":"extras","title":"content - CreationContext","doc":"• **content**: `PageContent`\n\n#### Inherited from\n\nResourceContext.content\n\n#### Defined in\n\n[src/data/content/resource.ts:169](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L169)\n\n___","ref":"creationcontext.html#content"},{"type":"extras","title":"graded - CreationContext","doc":"• **graded**: `boolean`\n\n#### Inherited from\n\nResourceContext.graded\n\n#### Defined in\n\n[src/data/content/resource.ts:162](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L162)\n\n___","ref":"creationcontext.html#graded"},{"type":"extras","title":"hasExperiments - CreationContext","doc":"• **hasExperiments**: `boolean`\n\n#### Inherited from\n\nResourceContext.hasExperiments\n\n#### Defined in\n\n[src/data/content/resource.ts:167](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L167)\n\n___","ref":"creationcontext.html#hasexperiments"},{"type":"extras","title":"objectives - CreationContext","doc":"• **objectives**: `AttachedObjectives`\n\n#### Inherited from\n\nResourceContext.objectives\n\n#### Defined in\n\n[src/data/content/resource.ts:170](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L170)\n\n___","ref":"creationcontext.html#objectives"},{"type":"extras","title":"optionalContentTypes - CreationContext","doc":"• **optionalContentTypes**: `OptionalContentTypes`\n\n#### Inherited from\n\nResourceContext.optionalContentTypes\n\n#### Defined in\n\n[src/data/content/resource.ts:174](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L174)\n\n___","ref":"creationcontext.html#optionalcontenttypes"},{"type":"extras","title":"projectSlug - CreationContext","doc":"• **projectSlug**: `string`\n\n#### Inherited from\n\nResourceContext.projectSlug\n\n#### Defined in\n\n[src/data/content/resource.ts:164](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L164)\n\n___","ref":"creationcontext.html#projectslug"},{"type":"extras","title":"resourceId - CreationContext","doc":"• **resourceId**: `number`\n\n#### Inherited from\n\nResourceContext.resourceId\n\n#### Defined in\n\n[src/data/content/resource.ts:166](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L166)\n\n___","ref":"creationcontext.html#resourceid"},{"type":"extras","title":"resourceSlug - CreationContext","doc":"• **resourceSlug**: `string`\n\n#### Inherited from\n\nResourceContext.resourceSlug\n\n#### Defined in\n\n[src/data/content/resource.ts:165](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L165)\n\n___","ref":"creationcontext.html#resourceslug"},{"type":"extras","title":"title - CreationContext","doc":"• **title**: `string`\n\n#### Inherited from\n\nResourceContext.title\n\n#### Defined in\n\n[src/data/content/resource.ts:168](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/resource.ts#L168)","ref":"creationcontext.html#title"},{"type":"extras","title":"DeliveryElementProps","doc":"[oli](../README.md) / [Exports](../modules.md) / DeliveryElementProps\n\n# Interface: DeliveryElementProps \n\nDelivery web component properties made available via the\n`render` method.","ref":"deliveryelementprops.html"},{"type":"extras","title":"Type parameters - DeliveryElementProps","doc":"| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](ActivityModelSchema.md) |","ref":"deliveryelementprops.html#type-parameters"},{"type":"extras","title":"Table of contents - DeliveryElementProps","doc":"","ref":"deliveryelementprops.html#table-of-contents"},{"type":"extras","title":"Properties - DeliveryElementProps","doc":"- [context](DeliveryElementProps.md#context)\n- [mode](DeliveryElementProps.md#mode)\n- [model](DeliveryElementProps.md#model)\n- [mountPoint](DeliveryElementProps.md#mountpoint)\n- [state](DeliveryElementProps.md#state)","ref":"deliveryelementprops.html#properties"},{"type":"extras","title":"Methods - DeliveryElementProps","doc":"- [onReadUserState](DeliveryElementProps.md#onreaduserstate)\n- [onRequestHint](DeliveryElementProps.md#onrequesthint)\n- [onResetActivity](DeliveryElementProps.md#onresetactivity)\n- [onResetPart](DeliveryElementProps.md#onresetpart)\n- [onSaveActivity](DeliveryElementProps.md#onsaveactivity)\n- [onSavePart](DeliveryElementProps.md#onsavepart)\n- [onSubmitActivity](DeliveryElementProps.md#onsubmitactivity)\n- [onSubmitEvaluations](DeliveryElementProps.md#onsubmitevaluations)\n- [onSubmitPart](DeliveryElementProps.md#onsubmitpart)\n- [onWriteUserState](DeliveryElementProps.md#onwriteuserstate)","ref":"deliveryelementprops.html#methods"},{"type":"extras","title":"Properties - DeliveryElementProps","doc":"","ref":"deliveryelementprops.html#properties"},{"type":"extras","title":"context - DeliveryElementProps","doc":"• **context**: [`ActivityContext`](ActivityContext.md)\n\nThe larger context that this activity operates within.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:88](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L88)\n\n___","ref":"deliveryelementprops.html#context"},{"type":"extras","title":"mode - DeliveryElementProps","doc":"• **mode**: [`DeliveryMode`](../modules.md#deliverymode)\n\nThe current delivery mode.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:93](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L93)\n\n___","ref":"deliveryelementprops.html#mode"},{"type":"extras","title":"model - DeliveryElementProps","doc":"• **model**: `T`\n\nThe model of the activity, pruned to remove the authoring specific portion.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:78](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L78)\n\n___","ref":"deliveryelementprops.html#model"},{"type":"extras","title":"mountPoint - DeliveryElementProps","doc":"• `Optional` **mountPoint**: `HTMLElement`\n\nThe HTML div element reference created by the abstract component for use in\nrendering by the concrete implementation.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:104](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L104)\n\n___","ref":"deliveryelementprops.html#mountpoint"},{"type":"extras","title":"state - DeliveryElementProps","doc":"• **state**: [`ActivityState`](ActivityState.md)\n\nThe state of the activity and part attempts.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:83](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L83)","ref":"deliveryelementprops.html#state"},{"type":"extras","title":"Methods - DeliveryElementProps","doc":"","ref":"deliveryelementprops.html#methods"},{"type":"extras","title":"onReadUserState - DeliveryElementProps","doc":"▸ `Optional` **onReadUserState**(`attemptGuid`, `partAttemptGuid`, `payload`): `Promise`<`any`\\>\n\nAllows read access to the user state.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:109](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L109)\n\n___","ref":"deliveryelementprops.html#onreaduserstate"},{"type":"extras","title":"onRequestHint - DeliveryElementProps","doc":"▸ **onRequestHint**(`attemptGuid`, `partAttemptGuid`): `Promise`<[`RequestHintResponse`](RequestHintResponse.md)\\>\n\nRequests a hint for a specific part.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n\n#### Returns\n\n`Promise`<[`RequestHintResponse`](RequestHintResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:137](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L137)\n\n___","ref":"deliveryelementprops.html#onrequesthint"},{"type":"extras","title":"onResetActivity - DeliveryElementProps","doc":"▸ **onResetActivity**(`attemptGuid`): `Promise`<[`ResetActivityResponse`](ResetActivityResponse.md)\\>\n\nResets this activity attempt to create a new attempt.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n\n#### Returns\n\n`Promise`<[`ResetActivityResponse`](ResetActivityResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:132](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L132)\n\n___","ref":"deliveryelementprops.html#onresetactivity"},{"type":"extras","title":"onResetPart - DeliveryElementProps","doc":"▸ **onResetPart**(`attemptGuid`, `partAttemptGuid`): `Promise`<[`PartActivityResponse`](PartActivityResponse.md)\\>\n\nResets the attempt for one part.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n\n#### Returns\n\n`Promise`<[`PartActivityResponse`](PartActivityResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:160](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L160)\n\n___","ref":"deliveryelementprops.html#onresetpart"},{"type":"extras","title":"onSaveActivity - DeliveryElementProps","doc":"▸ **onSaveActivity**(`attemptGuid`, `partResponses`): `Promise`<[`Success`](Success.md)\\>\n\nInitiates saving of the student response for all parts.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partResponses` | [`PartResponse`](../modules.md#partresponse)[] |\n\n#### Returns\n\n`Promise`<[`Success`](Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:119](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L119)\n\n___","ref":"deliveryelementprops.html#onsaveactivity"},{"type":"extras","title":"onSavePart - DeliveryElementProps","doc":"▸ **onSavePart**(`attemptGuid`, `partAttemptGuid`, `response`): `Promise`<[`Success`](Success.md)\\>\n\nSaves the state of a specific part.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `response` | [`StudentResponse`](StudentResponse.md) |\n\n#### Returns\n\n`Promise`<[`Success`](Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:142](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L142)\n\n___","ref":"deliveryelementprops.html#onsavepart"},{"type":"extras","title":"onSubmitActivity - DeliveryElementProps","doc":"▸ **onSubmitActivity**(`attemptGuid`, `partResponses`): `Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\nSubmits all parts of the attempt for evaluation.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partResponses` | [`PartResponse`](../modules.md#partresponse)[] |\n\n#### Returns\n\n`Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:124](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L124)\n\n___","ref":"deliveryelementprops.html#onsubmitactivity"},{"type":"extras","title":"onSubmitEvaluations - DeliveryElementProps","doc":"▸ **onSubmitEvaluations**(`attemptGuid`, `clientEvaluations`): `Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\nSubmits client-side evaluations.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `clientEvaluations` | [`ClientEvaluation`](../modules.md#clientevaluation)[] |\n\n#### Returns\n\n`Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:165](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L165)\n\n___","ref":"deliveryelementprops.html#onsubmitevaluations"},{"type":"extras","title":"onSubmitPart - DeliveryElementProps","doc":"▸ **onSubmitPart**(`attemptGuid`, `partAttemptGuid`, `response`): `Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\nSubmits for evaluation one part.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `response` | [`StudentResponse`](StudentResponse.md) |\n\n#### Returns\n\n`Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:151](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L151)\n\n___","ref":"deliveryelementprops.html#onsubmitpart"},{"type":"extras","title":"onWriteUserState - DeliveryElementProps","doc":"▸ `Optional` **onWriteUserState**(`attemptGuid`, `partAttemptGuid`, `payload`): `Promise`<`any`\\>\n\nAllows writing to the user state.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:114](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L114)","ref":"deliveryelementprops.html#onwriteuserstate"},{"type":"extras","title":"EvaluationResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / EvaluationResponse\n\n# Interface: EvaluationResponse\n\nResponse to a submitted activity evaluation.","ref":"evaluationresponse.html"},{"type":"extras","title":"Hierarchy - EvaluationResponse","doc":"- [`Success`](Success.md)\n\n ↳ **`EvaluationResponse`**","ref":"evaluationresponse.html#hierarchy"},{"type":"extras","title":"Table of contents - EvaluationResponse","doc":"","ref":"evaluationresponse.html#table-of-contents"},{"type":"extras","title":"Properties - EvaluationResponse","doc":"- [actions](EvaluationResponse.md#actions)\n- [type](EvaluationResponse.md#type)","ref":"evaluationresponse.html#properties"},{"type":"extras","title":"Properties - EvaluationResponse","doc":"","ref":"evaluationresponse.html#properties"},{"type":"extras","title":"actions - EvaluationResponse","doc":"• **actions**: [`Action`](../modules.md#action)[]\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:20](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L20)\n\n___","ref":"evaluationresponse.html#actions"},{"type":"extras","title":"type - EvaluationResponse","doc":"• **type**: ``\"success\"``\n\n#### Inherited from\n\n[Success](Success.md).[type](Success.md#type)\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L111)","ref":"evaluationresponse.html#type"},{"type":"extras","title":"Explanation","doc":"[oli](../README.md) / [Exports](../modules.md) / Explanation\n\n# Interface: Explanation\n\nDefines explanation entity.","ref":"explanation.html"},{"type":"extras","title":"Hierarchy - Explanation","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Explanation`**","ref":"explanation.html#hierarchy"},{"type":"extras","title":"Table of contents - Explanation","doc":"","ref":"explanation.html#table-of-contents"},{"type":"extras","title":"Properties - Explanation","doc":"- [content](Explanation.md#content)\n- [id](Explanation.md#id)\n- [textDirection](Explanation.md#textdirection)","ref":"explanation.html#properties"},{"type":"extras","title":"Properties - Explanation","doc":"","ref":"explanation.html#properties"},{"type":"extras","title":"content - Explanation","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L118)\n\n___","ref":"explanation.html#content"},{"type":"extras","title":"id - Explanation","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"explanation.html#id"},{"type":"extras","title":"textDirection - Explanation","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L360)","ref":"explanation.html#textdirection"},{"type":"extras","title":"Feedback","doc":"[oli](../README.md) / [Exports](../modules.md) / Feedback\n\n# Interface: Feedback\n\nDefines feedback entity.","ref":"feedback.html"},{"type":"extras","title":"Hierarchy - Feedback","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesEditor`](SpecifiesEditor.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Feedback`**","ref":"feedback.html#hierarchy"},{"type":"extras","title":"Table of contents - Feedback","doc":"","ref":"feedback.html#table-of-contents"},{"type":"extras","title":"Properties - Feedback","doc":"- [content](Feedback.md#content)\n- [editor](Feedback.md#editor)\n- [id](Feedback.md#id)\n- [textDirection](Feedback.md#textdirection)","ref":"feedback.html#properties"},{"type":"extras","title":"Properties - Feedback","doc":"","ref":"feedback.html#properties"},{"type":"extras","title":"content - Feedback","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L118)\n\n___","ref":"feedback.html#content"},{"type":"extras","title":"editor - Feedback","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Inherited from\n\n[SpecifiesEditor](SpecifiesEditor.md).[editor](SpecifiesEditor.md#editor)\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L364)\n\n___","ref":"feedback.html#editor"},{"type":"extras","title":"id - Feedback","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"feedback.html#id"},{"type":"extras","title":"textDirection - Feedback","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L360)","ref":"feedback.html#textdirection"},{"type":"extras","title":"FeedbackAction","doc":"[oli](../README.md) / [Exports](../modules.md) / FeedbackAction\n\n# Interface: FeedbackAction\n\nAn action indicating that feedback should be displayed.","ref":"feedbackaction.html"},{"type":"extras","title":"Hierarchy - FeedbackAction","doc":"- [`IsAction`](IsAction.md)\n\n ↳ **`FeedbackAction`**","ref":"feedbackaction.html#hierarchy"},{"type":"extras","title":"Table of contents - FeedbackAction","doc":"","ref":"feedbackaction.html#table-of-contents"},{"type":"extras","title":"Properties - FeedbackAction","doc":"- [attempt\\_guid](FeedbackAction.md#attempt_guid)\n- [error](FeedbackAction.md#error)\n- [explanation](FeedbackAction.md#explanation)\n- [feedback](FeedbackAction.md#feedback)\n- [out\\_of](FeedbackAction.md#out_of)\n- [part\\_id](FeedbackAction.md#part_id)\n- [score](FeedbackAction.md#score)\n- [show\\_page](FeedbackAction.md#show_page)\n- [type](FeedbackAction.md#type)","ref":"feedbackaction.html#properties"},{"type":"extras","title":"Properties - FeedbackAction","doc":"","ref":"feedbackaction.html#properties"},{"type":"extras","title":"attempt\\_guid - FeedbackAction","doc":"• **attempt\\_guid**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[attempt_guid](IsAction.md#attempt_guid)\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L524)\n\n___","ref":"feedbackaction.html#attempt-_guid"},{"type":"extras","title":"error - FeedbackAction","doc":"• `Optional` **error**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[error](IsAction.md#error)\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L525)\n\n___","ref":"feedbackaction.html#error"},{"type":"extras","title":"explanation - FeedbackAction","doc":"• **explanation**: ``null`` \\| [`Explanation`](Explanation.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:551](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L551)\n\n___","ref":"feedbackaction.html#explanation"},{"type":"extras","title":"feedback - FeedbackAction","doc":"• **feedback**: [`Feedback`](Feedback.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:550](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L550)\n\n___","ref":"feedbackaction.html#feedback"},{"type":"extras","title":"out\\_of - FeedbackAction","doc":"• **out\\_of**: `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:548](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L548)\n\n___","ref":"feedbackaction.html#out-_of"},{"type":"extras","title":"part\\_id - FeedbackAction","doc":"• **part\\_id**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[part_id](IsAction.md#part_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L526)\n\n___","ref":"feedbackaction.html#part-_id"},{"type":"extras","title":"score - FeedbackAction","doc":"• **score**: `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:549](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L549)\n\n___","ref":"feedbackaction.html#score"},{"type":"extras","title":"show\\_page - FeedbackAction","doc":"• **show\\_page**: ``null`` \\| `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:552](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L552)\n\n___","ref":"feedbackaction.html#show-_page"},{"type":"extras","title":"type - FeedbackAction","doc":"• **type**: ``\"FeedbackAction\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:547](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L547)","ref":"feedbackaction.html#type"},{"type":"extras","title":"HasChoices","doc":"[oli](../README.md) / [Exports](../modules.md) / HasChoices\n\n# Interface: HasChoices\n\nMarker interface for an entity that has choices.","ref":"haschoices.html"},{"type":"extras","title":"Table of contents - HasChoices","doc":"","ref":"haschoices.html#table-of-contents"},{"type":"extras","title":"Properties - HasChoices","doc":"- [choices](HasChoices.md#choices)","ref":"haschoices.html#properties"},{"type":"extras","title":"Properties - HasChoices","doc":"","ref":"haschoices.html#properties"},{"type":"extras","title":"choices - HasChoices","doc":"• **choices**: [`Choice`](Choice.md)[]\n\n#### Defined in\n\n[src/components/activities/types.ts:356](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L356)","ref":"haschoices.html#choices"},{"type":"extras","title":"HasContent","doc":"[oli](../README.md) / [Exports](../modules.md) / HasContent\n\n# Interface: HasContent\n\nMarker interface for items that have rich text content.","ref":"hascontent.html"},{"type":"extras","title":"Hierarchy - HasContent","doc":"- **`HasContent`**\n\n ↳ [`Choice`](Choice.md)\n\n ↳ [`Stem`](Stem.md)\n\n ↳ [`Hint`](Hint.md)\n\n ↳ [`Feedback`](Feedback.md)\n\n ↳ [`Explanation`](Explanation.md)","ref":"hascontent.html#hierarchy"},{"type":"extras","title":"Table of contents - HasContent","doc":"","ref":"hascontent.html#table-of-contents"},{"type":"extras","title":"Properties - HasContent","doc":"- [content](HasContent.md#content)","ref":"hascontent.html#properties"},{"type":"extras","title":"Properties - HasContent","doc":"","ref":"hascontent.html#properties"},{"type":"extras","title":"content - HasContent","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L118)","ref":"hascontent.html#content"},{"type":"extras","title":"HasParts","doc":"[oli](../README.md) / [Exports](../modules.md) / HasParts\n\n# Interface: HasParts\n\nMarker interface for an entity that has parts.","ref":"hasparts.html"},{"type":"extras","title":"Table of contents - HasParts","doc":"","ref":"hasparts.html#table-of-contents"},{"type":"extras","title":"Properties - HasParts","doc":"- [authoring](HasParts.md#authoring)","ref":"hasparts.html#properties"},{"type":"extras","title":"Properties - HasParts","doc":"","ref":"hasparts.html#properties"},{"type":"extras","title":"authoring - HasParts","doc":"• **authoring**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `parts` | [`Part`](Part.md)[] |\n\n#### Defined in\n\n[src/components/activities/types.ts:614](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L614)","ref":"hasparts.html#authoring"},{"type":"extras","title":"HasPerPartSubmissionOption","doc":"[oli](../README.md) / [Exports](../modules.md) / HasPerPartSubmissionOption\n\n# Interface: HasPerPartSubmissionOption","ref":"hasperpartsubmissionoption.html"},{"type":"extras","title":"Table of contents - HasPerPartSubmissionOption","doc":"","ref":"hasperpartsubmissionoption.html#table-of-contents"},{"type":"extras","title":"Properties - HasPerPartSubmissionOption","doc":"- [submitPerPart](HasPerPartSubmissionOption.md#submitperpart)","ref":"hasperpartsubmissionoption.html#properties"},{"type":"extras","title":"Properties - HasPerPartSubmissionOption","doc":"","ref":"hasperpartsubmissionoption.html#properties"},{"type":"extras","title":"submitPerPart - HasPerPartSubmissionOption","doc":"• **submitPerPart**: `boolean`\n\n#### Defined in\n\n[src/components/activities/types.ts:435](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L435)","ref":"hasperpartsubmissionoption.html#submitperpart"},{"type":"extras","title":"HasPreviewText","doc":"[oli](../README.md) / [Exports](../modules.md) / HasPreviewText\n\n# Interface: HasPreviewText\n\nMarker interface for an entity that has preview text.","ref":"haspreviewtext.html"},{"type":"extras","title":"Table of contents - HasPreviewText","doc":"","ref":"haspreviewtext.html#table-of-contents"},{"type":"extras","title":"Properties - HasPreviewText","doc":"- [authoring](HasPreviewText.md#authoring)","ref":"haspreviewtext.html#properties"},{"type":"extras","title":"Properties - HasPreviewText","doc":"","ref":"haspreviewtext.html#properties"},{"type":"extras","title":"authoring - HasPreviewText","doc":"• **authoring**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `previewText` | `string` |\n\n#### Defined in\n\n[src/components/activities/types.ts:680](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L680)","ref":"haspreviewtext.html#authoring"},{"type":"extras","title":"HasStem","doc":"[oli](../README.md) / [Exports](../modules.md) / HasStem\n\n# Interface: HasStem\n\nMarker interface for an entity that has a question stem.","ref":"hasstem.html"},{"type":"extras","title":"Hierarchy - HasStem","doc":"- [`ActivityModelSchema`](ActivityModelSchema.md)\n\n ↳ **`HasStem`**","ref":"hasstem.html#hierarchy"},{"type":"extras","title":"Table of contents - HasStem","doc":"","ref":"hasstem.html#table-of-contents"},{"type":"extras","title":"Properties - HasStem","doc":"- [activityType](HasStem.md#activitytype)\n- [activity\\_id](HasStem.md#activity_id)\n- [authoring](HasStem.md#authoring)\n- [bibrefs](HasStem.md#bibrefs)\n- [content](HasStem.md#content)\n- [id](HasStem.md#id)\n- [learningLanguage](HasStem.md#learninglanguage)\n- [resourceId](HasStem.md#resourceid)\n- [stem](HasStem.md#stem)","ref":"hasstem.html#properties"},{"type":"extras","title":"Properties - HasStem","doc":"","ref":"hasstem.html#properties"},{"type":"extras","title":"activityType - HasStem","doc":"• `Optional` **activityType**: `any`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[activityType](ActivityModelSchema.md#activitytype)\n\n#### Defined in\n\n[src/components/activities/types.ts:212](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L212)\n\n___","ref":"hasstem.html#activitytype"},{"type":"extras","title":"activity\\_id - HasStem","doc":"• `Optional` **activity\\_id**: `string`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[activity_id](ActivityModelSchema.md#activity_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:215](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L215)\n\n___","ref":"hasstem.html#activity-_id"},{"type":"extras","title":"authoring - HasStem","doc":"• `Optional` **authoring**: `any`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[authoring](ActivityModelSchema.md#authoring)\n\n#### Defined in\n\n[src/components/activities/types.ts:209](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L209)\n\n___","ref":"hasstem.html#authoring"},{"type":"extras","title":"bibrefs - HasStem","doc":"• `Optional` **bibrefs**: `string`[]\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[bibrefs](ActivityModelSchema.md#bibrefs)\n\n#### Defined in\n\n[src/components/activities/types.ts:214](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L214)\n\n___","ref":"hasstem.html#bibrefs"},{"type":"extras","title":"content - HasStem","doc":"• `Optional` **content**: `any`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[content](ActivityModelSchema.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:211](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L211)\n\n___","ref":"hasstem.html#content"},{"type":"extras","title":"id - HasStem","doc":"• `Optional` **id**: `string`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[id](ActivityModelSchema.md#id)\n\n#### Defined in\n\n[src/components/activities/types.ts:213](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L213)\n\n___","ref":"hasstem.html#id"},{"type":"extras","title":"learningLanguage - HasStem","doc":"• `Optional` **learningLanguage**: `string`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[learningLanguage](ActivityModelSchema.md#learninglanguage)\n\n#### Defined in\n\n[src/components/activities/types.ts:210](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L210)\n\n___","ref":"hasstem.html#learninglanguage"},{"type":"extras","title":"resourceId - HasStem","doc":"• `Optional` **resourceId**: `number`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[resourceId](ActivityModelSchema.md#resourceid)\n\n#### Defined in\n\n[src/components/activities/types.ts:208](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L208)\n\n___","ref":"hasstem.html#resourceid"},{"type":"extras","title":"stem - HasStem","doc":"• **stem**: [`Stem`](Stem.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:375](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L375)","ref":"hasstem.html#stem"},{"type":"extras","title":"HasTransformations","doc":"[oli](../README.md) / [Exports](../modules.md) / HasTransformations\n\n# Interface: HasTransformations\n\nMarker interface for an entity that has transformations.","ref":"hastransformations.html"},{"type":"extras","title":"Table of contents - HasTransformations","doc":"","ref":"hastransformations.html#table-of-contents"},{"type":"extras","title":"Properties - HasTransformations","doc":"- [authoring](HasTransformations.md#authoring)","ref":"hastransformations.html#properties"},{"type":"extras","title":"Properties - HasTransformations","doc":"","ref":"hastransformations.html#properties"},{"type":"extras","title":"authoring - HasTransformations","doc":"• **authoring**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `transformations` | [`Transformation`](Transformation.md)[] |\n\n#### Defined in\n\n[src/components/activities/types.ts:429](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L429)","ref":"hastransformations.html#authoring"},{"type":"extras","title":"Hint","doc":"[oli](../README.md) / [Exports](../modules.md) / Hint\n\n# Interface: Hint\n\nDefines a hint.","ref":"hint.html"},{"type":"extras","title":"Hierarchy - Hint","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesEditor`](SpecifiesEditor.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Hint`**","ref":"hint.html#hierarchy"},{"type":"extras","title":"Table of contents - Hint","doc":"","ref":"hint.html#table-of-contents"},{"type":"extras","title":"Properties - Hint","doc":"- [content](Hint.md#content)\n- [editor](Hint.md#editor)\n- [id](Hint.md#id)\n- [textDirection](Hint.md#textdirection)","ref":"hint.html#properties"},{"type":"extras","title":"Properties - Hint","doc":"","ref":"hint.html#properties"},{"type":"extras","title":"content - Hint","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L118)\n\n___","ref":"hint.html#content"},{"type":"extras","title":"editor - Hint","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Inherited from\n\n[SpecifiesEditor](SpecifiesEditor.md).[editor](SpecifiesEditor.md#editor)\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L364)\n\n___","ref":"hint.html#editor"},{"type":"extras","title":"id - Hint","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"hint.html#id"},{"type":"extras","title":"textDirection - Hint","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L360)","ref":"hint.html#textdirection"},{"type":"extras","title":"IsAction","doc":"[oli](../README.md) / [Exports](../modules.md) / IsAction\n\n# Interface: IsAction\n\nMarker interface for an action.","ref":"isaction.html"},{"type":"extras","title":"Hierarchy - IsAction","doc":"- **`IsAction`**\n\n ↳ [`NavigationAction`](NavigationAction.md)\n\n ↳ [`FeedbackAction`](FeedbackAction.md)\n\n ↳ [`StateUpdateAction`](StateUpdateAction.md)\n\n ↳ [`SubmissionAction`](SubmissionAction.md)","ref":"isaction.html#hierarchy"},{"type":"extras","title":"Table of contents - IsAction","doc":"","ref":"isaction.html#table-of-contents"},{"type":"extras","title":"Properties - IsAction","doc":"- [attempt\\_guid](IsAction.md#attempt_guid)\n- [error](IsAction.md#error)\n- [part\\_id](IsAction.md#part_id)","ref":"isaction.html#properties"},{"type":"extras","title":"Properties - IsAction","doc":"","ref":"isaction.html#properties"},{"type":"extras","title":"attempt\\_guid - IsAction","doc":"• **attempt\\_guid**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L524)\n\n___","ref":"isaction.html#attempt-_guid"},{"type":"extras","title":"error - IsAction","doc":"• `Optional` **error**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L525)\n\n___","ref":"isaction.html#error"},{"type":"extras","title":"part\\_id - IsAction","doc":"• **part\\_id**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L526)","ref":"isaction.html#part-_id"},{"type":"extras","title":"NavigationAction","doc":"[oli](../README.md) / [Exports](../modules.md) / NavigationAction\n\n# Interface: NavigationAction\n\nAn action indicating that the current view should navigate\nto another view. Currently not in use.","ref":"navigationaction.html"},{"type":"extras","title":"Hierarchy - NavigationAction","doc":"- [`IsAction`](IsAction.md)\n\n ↳ **`NavigationAction`**","ref":"navigationaction.html#hierarchy"},{"type":"extras","title":"Table of contents - NavigationAction","doc":"","ref":"navigationaction.html#table-of-contents"},{"type":"extras","title":"Properties - NavigationAction","doc":"- [attempt\\_guid](NavigationAction.md#attempt_guid)\n- [error](NavigationAction.md#error)\n- [part\\_id](NavigationAction.md#part_id)\n- [to](NavigationAction.md#to)\n- [type](NavigationAction.md#type)","ref":"navigationaction.html#properties"},{"type":"extras","title":"Properties - NavigationAction","doc":"","ref":"navigationaction.html#properties"},{"type":"extras","title":"attempt\\_guid - NavigationAction","doc":"• **attempt\\_guid**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[attempt_guid](IsAction.md#attempt_guid)\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L524)\n\n___","ref":"navigationaction.html#attempt-_guid"},{"type":"extras","title":"error - NavigationAction","doc":"• `Optional` **error**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[error](IsAction.md#error)\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L525)\n\n___","ref":"navigationaction.html#error"},{"type":"extras","title":"part\\_id - NavigationAction","doc":"• **part\\_id**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[part_id](IsAction.md#part_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L526)\n\n___","ref":"navigationaction.html#part-_id"},{"type":"extras","title":"to - NavigationAction","doc":"• **to**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:540](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L540)\n\n___","ref":"navigationaction.html#to"},{"type":"extras","title":"type - NavigationAction","doc":"• **type**: ``\"NavigationAction\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:539](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L539)","ref":"navigationaction.html#type"},{"type":"extras","title":"Part","doc":"[oli](../README.md) / [Exports](../modules.md) / Part\n\n# Interface: Part\n\nDefines an activity part.","ref":"part.html"},{"type":"extras","title":"Hierarchy - Part","doc":"- `Identifiable`\n\n ↳ **`Part`**","ref":"part.html#hierarchy"},{"type":"extras","title":"Table of contents - Part","doc":"","ref":"part.html#table-of-contents"},{"type":"extras","title":"Properties - Part","doc":"- [explanation](Part.md#explanation)\n- [gradingApproach](Part.md#gradingapproach)\n- [hints](Part.md#hints)\n- [id](Part.md#id)\n- [incorrectScore](Part.md#incorrectscore)\n- [outOf](Part.md#outof)\n- [responses](Part.md#responses)\n- [scoringStrategy](Part.md#scoringstrategy)\n- [targets](Part.md#targets)","ref":"part.html#properties"},{"type":"extras","title":"Properties - Part","doc":"","ref":"part.html#properties"},{"type":"extras","title":"explanation - Part","doc":"• `Optional` **explanation**: [`Feedback`](Feedback.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:578](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L578)\n\n___","ref":"part.html#explanation"},{"type":"extras","title":"gradingApproach - Part","doc":"• `Optional` **gradingApproach**: [`GradingApproach`](../enums/GradingApproach.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:580](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L580)\n\n___","ref":"part.html#gradingapproach"},{"type":"extras","title":"hints - Part","doc":"• **hints**: [`Hint`](Hint.md)[]\n\n#### Defined in\n\n[src/components/activities/types.ts:577](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L577)\n\n___","ref":"part.html#hints"},{"type":"extras","title":"id - Part","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"part.html#id"},{"type":"extras","title":"incorrectScore - Part","doc":"• `Optional` **incorrectScore**: ``null`` \\| `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:582](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L582)\n\n___","ref":"part.html#incorrectscore"},{"type":"extras","title":"outOf - Part","doc":"• `Optional` **outOf**: ``null`` \\| `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:581](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L581)\n\n___","ref":"part.html#outof"},{"type":"extras","title":"responses - Part","doc":"• **responses**: [`Response`](Response.md)[]\n\n#### Defined in\n\n[src/components/activities/types.ts:576](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L576)\n\n___","ref":"part.html#responses"},{"type":"extras","title":"scoringStrategy - Part","doc":"• **scoringStrategy**: [`ScoringStrategy`](../enums/ScoringStrategy.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:579](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L579)\n\n___","ref":"part.html#scoringstrategy"},{"type":"extras","title":"targets - Part","doc":"• `Optional` **targets**: `string`[]\n\n#### Defined in\n\n[src/components/activities/types.ts:583](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L583)","ref":"part.html#targets"},{"type":"extras","title":"PartActivityResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / PartActivityResponse\n\n# Interface: PartActivityResponse\n\nResponse to reset a specific part attempt.","ref":"partactivityresponse.html"},{"type":"extras","title":"Hierarchy - PartActivityResponse","doc":"- [`Success`](Success.md)\n\n ↳ **`PartActivityResponse`**","ref":"partactivityresponse.html#hierarchy"},{"type":"extras","title":"Table of contents - PartActivityResponse","doc":"","ref":"partactivityresponse.html#table-of-contents"},{"type":"extras","title":"Properties - PartActivityResponse","doc":"- [attemptState](PartActivityResponse.md#attemptstate)\n- [type](PartActivityResponse.md#type)","ref":"partactivityresponse.html#properties"},{"type":"extras","title":"Properties - PartActivityResponse","doc":"","ref":"partactivityresponse.html#properties"},{"type":"extras","title":"attemptState - PartActivityResponse","doc":"• **attemptState**: [`PartState`](PartState.md)\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:48](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L48)\n\n___","ref":"partactivityresponse.html#attemptstate"},{"type":"extras","title":"type - PartActivityResponse","doc":"• **type**: ``\"success\"``\n\n#### Inherited from\n\n[Success](Success.md).[type](Success.md#type)\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L111)","ref":"partactivityresponse.html#type"},{"type":"extras","title":"PartState","doc":"[oli](../README.md) / [Exports](../modules.md) / PartState\n\n# Interface: PartState\n\nRepresentation of a student's current state for a specific part of\nan activity.","ref":"partstate.html"},{"type":"extras","title":"Table of contents - PartState","doc":"","ref":"partstate.html#table-of-contents"},{"type":"extras","title":"Properties - PartState","doc":"- [attemptGuid](PartState.md#attemptguid)\n- [attemptNumber](PartState.md#attemptnumber)\n- [dateEvaluated](PartState.md#dateevaluated)\n- [dateSubmitted](PartState.md#datesubmitted)\n- [error](PartState.md#error)\n- [explanation](PartState.md#explanation)\n- [feedback](PartState.md#feedback)\n- [hasMoreAttempts](PartState.md#hasmoreattempts)\n- [hasMoreHints](PartState.md#hasmorehints)\n- [hints](PartState.md#hints)\n- [outOf](PartState.md#outof)\n- [partId](PartState.md#partid)\n- [response](PartState.md#response)\n- [score](PartState.md#score)","ref":"partstate.html#properties"},{"type":"extras","title":"Properties - PartState","doc":"","ref":"partstate.html#properties"},{"type":"extras","title":"attemptGuid - PartState","doc":"• **attemptGuid**: `string`\n\nThe unique identifier of this part attempt.\n\n#### Defined in\n\n[src/components/activities/types.ts:226](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L226)\n\n___","ref":"partstate.html#attemptguid"},{"type":"extras","title":"attemptNumber - PartState","doc":"• **attemptNumber**: `number`\n\nThe number of this attempt.\n\n#### Defined in\n\n[src/components/activities/types.ts:230](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L230)\n\n___","ref":"partstate.html#attemptnumber"},{"type":"extras","title":"dateEvaluated - PartState","doc":"• **dateEvaluated**: ``null`` \\| `Date`\n\nIf this attempt has been evaluated, the date of the evaluation, null\nif this attempt has not been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:235](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L235)\n\n___","ref":"partstate.html#dateevaluated"},{"type":"extras","title":"dateSubmitted - PartState","doc":"• **dateSubmitted**: ``null`` \\| `Date`\n\nThe date that this attempt was submitted, if it has been submitted, null\nif not.\n\n#### Defined in\n\n[src/components/activities/types.ts:241](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L241)\n\n___","ref":"partstate.html#datesubmitted"},{"type":"extras","title":"error - PartState","doc":"• `Optional` **error**: `string`\n\nAny error associated with this attempt.\n\n#### Defined in\n\n[src/components/activities/types.ts:282](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L282)\n\n___","ref":"partstate.html#error"},{"type":"extras","title":"explanation - PartState","doc":"• **explanation**: ``null`` \\| [`Explanation`](Explanation.md)\n\nFeedback received, if this attempt has been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:262](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L262)\n\n___","ref":"partstate.html#explanation"},{"type":"extras","title":"feedback - PartState","doc":"• **feedback**: ``null`` \\| [`Feedback`](Feedback.md)\n\nFeedback received, if this attempt has been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:258](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L258)\n\n___","ref":"partstate.html#feedback"},{"type":"extras","title":"hasMoreAttempts - PartState","doc":"• **hasMoreAttempts**: `boolean`\n\nWhether or not additional attempts exist.\n\n#### Defined in\n\n[src/components/activities/types.ts:274](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L274)\n\n___","ref":"partstate.html#hasmoreattempts"},{"type":"extras","title":"hasMoreHints - PartState","doc":"• **hasMoreHints**: `boolean`\n\nWhether or not additional hints exist.\n\n#### Defined in\n\n[src/components/activities/types.ts:278](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L278)\n\n___","ref":"partstate.html#hasmorehints"},{"type":"extras","title":"hints - PartState","doc":"• **hints**: []\n\nHints that were requested and received by the student.\n\n#### Defined in\n\n[src/components/activities/types.ts:266](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L266)\n\n___","ref":"partstate.html#hints"},{"type":"extras","title":"outOf - PartState","doc":"• **outOf**: ``null`` \\| `number`\n\nMaximum point value that could have been received.\n\n#### Defined in\n\n[src/components/activities/types.ts:250](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L250)\n\n___","ref":"partstate.html#outof"},{"type":"extras","title":"partId - PartState","doc":"• **partId**: `string` \\| `number`\n\nThe id of the part that this attempt pertains to.\n\n#### Defined in\n\n[src/components/activities/types.ts:270](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L270)\n\n___","ref":"partstate.html#partid"},{"type":"extras","title":"response - PartState","doc":"• **response**: `any`\n\nThe student's response.\n\n#### Defined in\n\n[src/components/activities/types.ts:254](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L254)\n\n___","ref":"partstate.html#response"},{"type":"extras","title":"score - PartState","doc":"• **score**: ``null`` \\| `number`\n\nScore received. Null if this attempt has not been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:246](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L246)","ref":"partstate.html#score"},{"type":"extras","title":"RegistrationResult","doc":"[oli](../README.md) / [Exports](../modules.md) / RegistrationResult\n\n# Interface: RegistrationResult\n\nResult of a successful activity registration.","ref":"registrationresult.html"},{"type":"extras","title":"Table of contents - RegistrationResult","doc":"","ref":"registrationresult.html#table-of-contents"},{"type":"extras","title":"Properties - RegistrationResult","doc":"- [result](RegistrationResult.md#result)","ref":"registrationresult.html#properties"},{"type":"extras","title":"Properties - RegistrationResult","doc":"","ref":"registrationresult.html#properties"},{"type":"extras","title":"result - RegistrationResult","doc":"• **result**: ``\"success\"``\n\n#### Defined in\n\n[src/components/activities/registrar.ts:7](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/registrar.ts#L7)","ref":"registrationresult.html#result"},{"type":"extras","title":"RequestHintResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / RequestHintResponse\n\n# Interface: RequestHintResponse\n\nResponse to a request for an additional hint.\nNotice that the hint attribute here is optional. If a\nclient requests a hint and there are no more, the platform\nwill return an instance of this interface with hasMoreHints set to false\nand the hint attribute missing.","ref":"requesthintresponse.html"},{"type":"extras","title":"Hierarchy - RequestHintResponse","doc":"- [`Success`](Success.md)\n\n ↳ **`RequestHintResponse`**","ref":"requesthintresponse.html#hierarchy"},{"type":"extras","title":"Table of contents - RequestHintResponse","doc":"","ref":"requesthintresponse.html#table-of-contents"},{"type":"extras","title":"Properties - RequestHintResponse","doc":"- [hasMoreHints](RequestHintResponse.md#hasmorehints)\n- [hint](RequestHintResponse.md#hint)\n- [type](RequestHintResponse.md#type)","ref":"requesthintresponse.html#properties"},{"type":"extras","title":"Properties - RequestHintResponse","doc":"","ref":"requesthintresponse.html#properties"},{"type":"extras","title":"hasMoreHints - RequestHintResponse","doc":"• **hasMoreHints**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:32](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L32)\n\n___","ref":"requesthintresponse.html#hasmorehints"},{"type":"extras","title":"hint - RequestHintResponse","doc":"• `Optional` **hint**: [`Hint`](Hint.md)\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:31](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L31)\n\n___","ref":"requesthintresponse.html#hint"},{"type":"extras","title":"type - RequestHintResponse","doc":"• **type**: ``\"success\"``\n\n#### Inherited from\n\n[Success](Success.md).[type](Success.md#type)\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L111)","ref":"requesthintresponse.html#type"},{"type":"extras","title":"ResetActivityResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / ResetActivityResponse\n\n# Interface: ResetActivityResponse\n\nResponse to a request to reset the activity attempt. Resetting\nan activity attempt simply creates a new activity attempt.","ref":"resetactivityresponse.html"},{"type":"extras","title":"Hierarchy - ResetActivityResponse","doc":"- [`Success`](Success.md)\n\n ↳ **`ResetActivityResponse`**","ref":"resetactivityresponse.html#hierarchy"},{"type":"extras","title":"Table of contents - ResetActivityResponse","doc":"","ref":"resetactivityresponse.html#table-of-contents"},{"type":"extras","title":"Properties - ResetActivityResponse","doc":"- [attemptState](ResetActivityResponse.md#attemptstate)\n- [model](ResetActivityResponse.md#model)\n- [type](ResetActivityResponse.md#type)","ref":"resetactivityresponse.html#properties"},{"type":"extras","title":"Properties - ResetActivityResponse","doc":"","ref":"resetactivityresponse.html#properties"},{"type":"extras","title":"attemptState - ResetActivityResponse","doc":"• **attemptState**: [`ActivityState`](ActivityState.md)\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:40](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L40)\n\n___","ref":"resetactivityresponse.html#attemptstate"},{"type":"extras","title":"model - ResetActivityResponse","doc":"• **model**: [`ActivityModelSchema`](ActivityModelSchema.md)\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:41](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L41)\n\n___","ref":"resetactivityresponse.html#model"},{"type":"extras","title":"type - ResetActivityResponse","doc":"• **type**: ``\"success\"``\n\n#### Inherited from\n\n[Success](Success.md).[type](Success.md#type)\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L111)","ref":"resetactivityresponse.html#type"},{"type":"extras","title":"Response","doc":"[oli](../README.md) / [Exports](../modules.md) / Response\n\n# Interface: Response\n\nDefines a response.","ref":"response.html"},{"type":"extras","title":"Hierarchy - Response","doc":"- `Identifiable`\n\n ↳ **`Response`**","ref":"response.html#hierarchy"},{"type":"extras","title":"Table of contents - Response","doc":"","ref":"response.html#table-of-contents"},{"type":"extras","title":"Properties - Response","doc":"- [correct](Response.md#correct)\n- [feedback](Response.md#feedback)\n- [id](Response.md#id)\n- [matchStyle](Response.md#matchstyle)\n- [rule](Response.md#rule)\n- [score](Response.md#score)\n- [showPage](Response.md#showpage)","ref":"response.html#properties"},{"type":"extras","title":"Properties - Response","doc":"","ref":"response.html#properties"},{"type":"extras","title":"correct - Response","doc":"• `Optional` **correct**: `boolean`\n\nIs this response, the default correct response?\n\n#### Defined in\n\n[src/components/activities/types.ts:487](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L487)\n\n___","ref":"response.html#correct"},{"type":"extras","title":"feedback - Response","doc":"• **feedback**: [`Feedback`](Feedback.md)\n\nFeedback to assign if this response matches.\n\n#### Defined in\n\n[src/components/activities/types.ts:482](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L482)\n\n___","ref":"response.html#feedback"},{"type":"extras","title":"id - Response","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"response.html#id"},{"type":"extras","title":"matchStyle - Response","doc":"• `Optional` **matchStyle**: [`MatchStyle`](../modules.md#matchstyle)\n\n#### Defined in\n\n[src/components/activities/types.ts:497](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L497)\n\n___","ref":"response.html#matchstyle"},{"type":"extras","title":"rule - Response","doc":"• **rule**: `string`\n\nRule based match.\n\n#### Defined in\n\n[src/components/activities/types.ts:474](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L474)\n\n___","ref":"response.html#rule"},{"type":"extras","title":"score - Response","doc":"• **score**: `number`\n\nScore to assign if this response matches.\n\n#### Defined in\n\n[src/components/activities/types.ts:478](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L478)\n\n___","ref":"response.html#score"},{"type":"extras","title":"showPage - Response","doc":"• `Optional` **showPage**: `number`\n\nOptional, show a page by index when this response is evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:492](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L492)","ref":"response.html#showpage"},{"type":"extras","title":"SectionAuthoringProps","doc":"[oli](../README.md) / [Exports](../modules.md) / SectionAuthoringProps\n\n# Interface: SectionAuthoringProps","ref":"sectionauthoringprops.html"},{"type":"extras","title":"Table of contents - SectionAuthoringProps","doc":"","ref":"sectionauthoringprops.html#table-of-contents"},{"type":"extras","title":"Properties - SectionAuthoringProps","doc":"- [activityId](SectionAuthoringProps.md#activityid)\n- [sectionSlug](SectionAuthoringProps.md#sectionslug)","ref":"sectionauthoringprops.html#properties"},{"type":"extras","title":"Properties - SectionAuthoringProps","doc":"","ref":"sectionauthoringprops.html#properties"},{"type":"extras","title":"activityId - SectionAuthoringProps","doc":"• `Optional` **activityId**: `number`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:7](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L7)\n\n___","ref":"sectionauthoringprops.html#activityid"},{"type":"extras","title":"sectionSlug - SectionAuthoringProps","doc":"• `Optional` **sectionSlug**: `string`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:8](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L8)","ref":"sectionauthoringprops.html#sectionslug"},{"type":"extras","title":"SpecifiesEditor","doc":"[oli](../README.md) / [Exports](../modules.md) / SpecifiesEditor\n\n# Interface: SpecifiesEditor","ref":"specifieseditor.html"},{"type":"extras","title":"Hierarchy - SpecifiesEditor","doc":"- **`SpecifiesEditor`**\n\n ↳ [`Choice`](Choice.md)\n\n ↳ [`Stem`](Stem.md)\n\n ↳ [`Hint`](Hint.md)\n\n ↳ [`Feedback`](Feedback.md)","ref":"specifieseditor.html#hierarchy"},{"type":"extras","title":"Table of contents - SpecifiesEditor","doc":"","ref":"specifieseditor.html#table-of-contents"},{"type":"extras","title":"Properties - SpecifiesEditor","doc":"- [editor](SpecifiesEditor.md#editor)","ref":"specifieseditor.html#properties"},{"type":"extras","title":"Properties - SpecifiesEditor","doc":"","ref":"specifieseditor.html#properties"},{"type":"extras","title":"editor - SpecifiesEditor","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L364)","ref":"specifieseditor.html#editor"},{"type":"extras","title":"SpecifiesTextDirection","doc":"[oli](../README.md) / [Exports](../modules.md) / SpecifiesTextDirection\n\n# Interface: SpecifiesTextDirection","ref":"specifiestextdirection.html"},{"type":"extras","title":"Hierarchy - SpecifiesTextDirection","doc":"- **`SpecifiesTextDirection`**\n\n ↳ [`Choice`](Choice.md)\n\n ↳ [`Stem`](Stem.md)\n\n ↳ [`Hint`](Hint.md)\n\n ↳ [`Feedback`](Feedback.md)\n\n ↳ [`Explanation`](Explanation.md)","ref":"specifiestextdirection.html#hierarchy"},{"type":"extras","title":"Table of contents - SpecifiesTextDirection","doc":"","ref":"specifiestextdirection.html#table-of-contents"},{"type":"extras","title":"Properties - SpecifiesTextDirection","doc":"- [textDirection](SpecifiesTextDirection.md#textdirection)","ref":"specifiestextdirection.html#properties"},{"type":"extras","title":"Properties - SpecifiesTextDirection","doc":"","ref":"specifiestextdirection.html#properties"},{"type":"extras","title":"textDirection - SpecifiesTextDirection","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L360)","ref":"specifiestextdirection.html#textdirection"},{"type":"extras","title":"StateUpdateAction","doc":"[oli](../README.md) / [Exports](../modules.md) / StateUpdateAction\n\n# Interface: StateUpdateAction\n\nAn action indicating that global user state should be updated.\nCurrently not in use.","ref":"stateupdateaction.html"},{"type":"extras","title":"Hierarchy - StateUpdateAction","doc":"- [`IsAction`](IsAction.md)\n\n ↳ **`StateUpdateAction`**","ref":"stateupdateaction.html#hierarchy"},{"type":"extras","title":"Table of contents - StateUpdateAction","doc":"","ref":"stateupdateaction.html#table-of-contents"},{"type":"extras","title":"Properties - StateUpdateAction","doc":"- [attempt\\_guid](StateUpdateAction.md#attempt_guid)\n- [error](StateUpdateAction.md#error)\n- [part\\_id](StateUpdateAction.md#part_id)\n- [type](StateUpdateAction.md#type)\n- [update](StateUpdateAction.md#update)","ref":"stateupdateaction.html#properties"},{"type":"extras","title":"Properties - StateUpdateAction","doc":"","ref":"stateupdateaction.html#properties"},{"type":"extras","title":"attempt\\_guid - StateUpdateAction","doc":"• **attempt\\_guid**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[attempt_guid](IsAction.md#attempt_guid)\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L524)\n\n___","ref":"stateupdateaction.html#attempt-_guid"},{"type":"extras","title":"error - StateUpdateAction","doc":"• `Optional` **error**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[error](IsAction.md#error)\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L525)\n\n___","ref":"stateupdateaction.html#error"},{"type":"extras","title":"part\\_id - StateUpdateAction","doc":"• **part\\_id**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[part_id](IsAction.md#part_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L526)\n\n___","ref":"stateupdateaction.html#part-_id"},{"type":"extras","title":"type - StateUpdateAction","doc":"• **type**: ``\"StateUpdateAction\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:560](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L560)\n\n___","ref":"stateupdateaction.html#type"},{"type":"extras","title":"update - StateUpdateAction","doc":"• **update**: `Object`\n\n#### Defined in\n\n[src/components/activities/types.ts:562](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L562)","ref":"stateupdateaction.html#update"},{"type":"extras","title":"Stem","doc":"[oli](../README.md) / [Exports](../modules.md) / Stem\n\n# Interface: Stem\n\nDefines a question stem.","ref":"stem.html"},{"type":"extras","title":"Hierarchy - Stem","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesEditor`](SpecifiesEditor.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Stem`**","ref":"stem.html#hierarchy"},{"type":"extras","title":"Table of contents - Stem","doc":"","ref":"stem.html#table-of-contents"},{"type":"extras","title":"Properties - Stem","doc":"- [content](Stem.md#content)\n- [editor](Stem.md#editor)\n- [id](Stem.md#id)\n- [textDirection](Stem.md#textdirection)","ref":"stem.html#properties"},{"type":"extras","title":"Properties - Stem","doc":"","ref":"stem.html#properties"},{"type":"extras","title":"content - Stem","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L118)\n\n___","ref":"stem.html#content"},{"type":"extras","title":"editor - Stem","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Inherited from\n\n[SpecifiesEditor](SpecifiesEditor.md).[editor](SpecifiesEditor.md#editor)\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L364)\n\n___","ref":"stem.html#editor"},{"type":"extras","title":"id - Stem","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"stem.html#id"},{"type":"extras","title":"textDirection - Stem","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L360)","ref":"stem.html#textdirection"},{"type":"extras","title":"StudentResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / StudentResponse\n\n# Interface: StudentResponse\n\nA student submission for an activity. The `input` attribute can be\nencoded any way that the activity desires, from a simple string to a\ncomplex JSON tree.","ref":"studentresponse.html"},{"type":"extras","title":"Table of contents - StudentResponse","doc":"","ref":"studentresponse.html#table-of-contents"},{"type":"extras","title":"Properties - StudentResponse","doc":"- [files](StudentResponse.md#files)\n- [input](StudentResponse.md#input)","ref":"studentresponse.html#properties"},{"type":"extras","title":"Properties - StudentResponse","doc":"","ref":"studentresponse.html#properties"},{"type":"extras","title":"files - StudentResponse","doc":"• `Optional` **files**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:148](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L148)\n\n___","ref":"studentresponse.html#files"},{"type":"extras","title":"input - StudentResponse","doc":"• **input**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:147](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L147)","ref":"studentresponse.html#input"},{"type":"extras","title":"SubmissionAction","doc":"[oli](../README.md) / [Exports](../modules.md) / SubmissionAction\n\n# Interface: SubmissionAction\n\nAn action indicating that the submission was completed.","ref":"submissionaction.html"},{"type":"extras","title":"Hierarchy - SubmissionAction","doc":"- [`IsAction`](IsAction.md)\n\n ↳ **`SubmissionAction`**","ref":"submissionaction.html#hierarchy"},{"type":"extras","title":"Table of contents - SubmissionAction","doc":"","ref":"submissionaction.html#table-of-contents"},{"type":"extras","title":"Properties - SubmissionAction","doc":"- [attempt\\_guid](SubmissionAction.md#attempt_guid)\n- [error](SubmissionAction.md#error)\n- [part\\_id](SubmissionAction.md#part_id)\n- [type](SubmissionAction.md#type)","ref":"submissionaction.html#properties"},{"type":"extras","title":"Properties - SubmissionAction","doc":"","ref":"submissionaction.html#properties"},{"type":"extras","title":"attempt\\_guid - SubmissionAction","doc":"• **attempt\\_guid**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[attempt_guid](IsAction.md#attempt_guid)\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L524)\n\n___","ref":"submissionaction.html#attempt-_guid"},{"type":"extras","title":"error - SubmissionAction","doc":"• `Optional` **error**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[error](IsAction.md#error)\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L525)\n\n___","ref":"submissionaction.html#error"},{"type":"extras","title":"part\\_id - SubmissionAction","doc":"• **part\\_id**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[part_id](IsAction.md#part_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L526)\n\n___","ref":"submissionaction.html#part-_id"},{"type":"extras","title":"type - SubmissionAction","doc":"• **type**: ``\"SubmissionAction\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:569](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L569)","ref":"submissionaction.html#type"},{"type":"extras","title":"Success","doc":"[oli](../README.md) / [Exports](../modules.md) / Success\n\n# Interface: Success","ref":"success.html"},{"type":"extras","title":"Hierarchy - Success","doc":"- **`Success`**\n\n ↳ [`EvaluationResponse`](EvaluationResponse.md)\n\n ↳ [`RequestHintResponse`](RequestHintResponse.md)\n\n ↳ [`ResetActivityResponse`](ResetActivityResponse.md)\n\n ↳ [`PartActivityResponse`](PartActivityResponse.md)","ref":"success.html#hierarchy"},{"type":"extras","title":"Table of contents - Success","doc":"","ref":"success.html#table-of-contents"},{"type":"extras","title":"Properties - Success","doc":"- [type](Success.md#type)","ref":"success.html#properties"},{"type":"extras","title":"Properties - Success","doc":"","ref":"success.html#properties"},{"type":"extras","title":"type - Success","doc":"• **type**: ``\"success\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L111)","ref":"success.html#type"},{"type":"extras","title":"Transformation","doc":"[oli](../README.md) / [Exports](../modules.md) / Transformation\n\n# Interface: Transformation\n\nA transformation is a client-specified mutation of the activity\ncontent model that the server will perform during activity\ninstantiation.","ref":"transformation.html"},{"type":"extras","title":"Hierarchy - Transformation","doc":"- `Identifiable`\n\n ↳ **`Transformation`**","ref":"transformation.html#hierarchy"},{"type":"extras","title":"Table of contents - Transformation","doc":"","ref":"transformation.html#table-of-contents"},{"type":"extras","title":"Properties - Transformation","doc":"- [firstAttemptOnly](Transformation.md#firstattemptonly)\n- [id](Transformation.md#id)\n- [operation](Transformation.md#operation)\n- [partId](Transformation.md#partid)\n- [path](Transformation.md#path)","ref":"transformation.html#properties"},{"type":"extras","title":"Properties - Transformation","doc":"","ref":"transformation.html#properties"},{"type":"extras","title":"firstAttemptOnly - Transformation","doc":"• **firstAttemptOnly**: `boolean`\n\n#### Defined in\n\n[src/components/activities/types.ts:422](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L422)\n\n___","ref":"transformation.html#firstattemptonly"},{"type":"extras","title":"id - Transformation","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"transformation.html#id"},{"type":"extras","title":"operation - Transformation","doc":"• **operation**: [`shuffle`](../enums/Transform.md#shuffle)\n\n#### Defined in\n\n[src/components/activities/types.ts:421](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L421)\n\n___","ref":"transformation.html#operation"},{"type":"extras","title":"partId - Transformation","doc":"• `Optional` **partId**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:423](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L423)\n\n___","ref":"transformation.html#partid"},{"type":"extras","title":"path - Transformation","doc":"• **path**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:420](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L420)","ref":"transformation.html#path"},{"type":"extras","title":"GradingApproach","doc":"[oli](../README.md) / [Exports](../modules.md) / GradingApproach\n\n# Enumeration: GradingApproach\n\nThe types of grading, or scoring, supported for a part.","ref":"gradingapproach.html"},{"type":"extras","title":"Table of contents - GradingApproach","doc":"","ref":"gradingapproach.html#table-of-contents"},{"type":"extras","title":"Enumeration members - GradingApproach","doc":"- [automatic](GradingApproach.md#automatic)\n- [manual](GradingApproach.md#manual)","ref":"gradingapproach.html#enumeration-members"},{"type":"extras","title":"Enumeration members - GradingApproach","doc":"","ref":"gradingapproach.html#enumeration-members"},{"type":"extras","title":"automatic - GradingApproach","doc":"• **automatic** = `\"automatic\"`\n\nPart will be automatically graded by either the client or server.\n\n#### Defined in\n\n[src/components/activities/types.ts:634](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L634)\n\n___","ref":"gradingapproach.html#automatic"},{"type":"extras","title":"manual - GradingApproach","doc":"• **manual** = `\"manual\"`\n\nPart requires manual grading by an instructor.\n\n#### Defined in\n\n[src/components/activities/types.ts:638](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L638)","ref":"gradingapproach.html#manual"},{"type":"extras","title":"ScoringStrategy","doc":"[oli](../README.md) / [Exports](../modules.md) / ScoringStrategy\n\n# Enumeration: ScoringStrategy\n\nStrategy to use in calculating a score across a collection of\neither parts or attempts.","ref":"scoringstrategy.html"},{"type":"extras","title":"Table of contents - ScoringStrategy","doc":"","ref":"scoringstrategy.html#table-of-contents"},{"type":"extras","title":"Enumeration members - ScoringStrategy","doc":"- [average](ScoringStrategy.md#average)\n- [best](ScoringStrategy.md#best)\n- [most\\_recent](ScoringStrategy.md#most_recent)\n- [total](ScoringStrategy.md#total)","ref":"scoringstrategy.html#enumeration-members"},{"type":"extras","title":"Enumeration members - ScoringStrategy","doc":"","ref":"scoringstrategy.html#enumeration-members"},{"type":"extras","title":"average - ScoringStrategy","doc":"• **average** = `\"average\"`\n\n#### Defined in\n\n[src/components/activities/types.ts:646](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L646)\n\n___","ref":"scoringstrategy.html#average"},{"type":"extras","title":"best - ScoringStrategy","doc":"• **best** = `\"best\"`\n\n#### Defined in\n\n[src/components/activities/types.ts:647](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L647)\n\n___","ref":"scoringstrategy.html#best"},{"type":"extras","title":"most\\_recent - ScoringStrategy","doc":"• **most\\_recent** = `\"most_recent\"`\n\n#### Defined in\n\n[src/components/activities/types.ts:648](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L648)\n\n___","ref":"scoringstrategy.html#most-_recent"},{"type":"extras","title":"total - ScoringStrategy","doc":"• **total** = `\"total\"`\n\n#### Defined in\n\n[src/components/activities/types.ts:649](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L649)","ref":"scoringstrategy.html#total"},{"type":"extras","title":"Transform","doc":"[oli](../README.md) / [Exports](../modules.md) / Transform\n\n# Enumeration: Transform\n\nSupported transforms.","ref":"transform.html"},{"type":"extras","title":"Table of contents - Transform","doc":"","ref":"transform.html#table-of-contents"},{"type":"extras","title":"Enumeration members - Transform","doc":"- [shuffle](Transform.md#shuffle)","ref":"transform.html#enumeration-members"},{"type":"extras","title":"Enumeration members - Transform","doc":"","ref":"transform.html#enumeration-members"},{"type":"extras","title":"shuffle - Transform","doc":"• **shuffle** = `\"shuffle\"`\n\nRandomly shuffles a collection of items.\n\n#### Defined in\n\n[src/components/activities/types.ts:659](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/types.ts#L659)","ref":"transform.html#shuffle"},{"type":"extras","title":"AuthoringElement","doc":"[oli](../README.md) / [Exports](../modules.md) / AuthoringElement\n\n# Class: AuthoringElement \n\nAn abstract authoring web component, designed to delegate rendering\nvia the `render` method. This authoring web component will re-render\nwhen the 'model' attribute of the the web component changes. It also traps onEdit\ncallbacks from the concrete implementation and translates these calls into dispatches of the\n'modelUpdated' CustomEvent. It is this CustomEvent that is handled by\nTorus to process updates from the authoring web component.\n\nWhile the delegated implementation is a React component in the case of natively\nimplemented activities, this does not need to be the case. This `AuthoringElement`\nimplementation is tech-stack agnostic. One can use it to implement the authoring\ncomponent of a Torus activity in Vanilla JS, React, Vue, Angular, etc.\n\n```typescript\n// A typical React delegation\nexport class MultipleChoiceAuthoring extends AuthoringElement {\n\n render(mountPoint: HTMLDivElement, props: AuthoringElementProps ) {\n ReactDOM.render(\n \n \n \n \n ,\n mountPoint,\n );\n }\n}\n```","ref":"authoringelement.html"},{"type":"extras","title":"Type parameters - AuthoringElement","doc":"| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](../interfaces/ActivityModelSchema.md) |","ref":"authoringelement.html#type-parameters"},{"type":"extras","title":"Hierarchy - AuthoringElement","doc":"- `HTMLElement`\n\n ↳ **`AuthoringElement`**","ref":"authoringelement.html#hierarchy"},{"type":"extras","title":"Table of contents - AuthoringElement","doc":"","ref":"authoringelement.html#table-of-contents"},{"type":"extras","title":"Constructors - AuthoringElement","doc":"- [constructor](AuthoringElement.md#constructor)","ref":"authoringelement.html#constructors"},{"type":"extras","title":"Properties - AuthoringElement","doc":"- [ATTRIBUTE\\_NODE](AuthoringElement.md#attribute_node)\n- [CDATA\\_SECTION\\_NODE](AuthoringElement.md#cdata_section_node)\n- [COMMENT\\_NODE](AuthoringElement.md#comment_node)\n- [DOCUMENT\\_FRAGMENT\\_NODE](AuthoringElement.md#document_fragment_node)\n- [DOCUMENT\\_NODE](AuthoringElement.md#document_node)\n- [DOCUMENT\\_POSITION\\_CONTAINED\\_BY](AuthoringElement.md#document_position_contained_by)\n- [DOCUMENT\\_POSITION\\_CONTAINS](AuthoringElement.md#document_position_contains)\n- [DOCUMENT\\_POSITION\\_DISCONNECTED](AuthoringElement.md#document_position_disconnected)\n- [DOCUMENT\\_POSITION\\_FOLLOWING](AuthoringElement.md#document_position_following)\n- [DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC](AuthoringElement.md#document_position_implementation_specific)\n- [DOCUMENT\\_POSITION\\_PRECEDING](AuthoringElement.md#document_position_preceding)\n- [DOCUMENT\\_TYPE\\_NODE](AuthoringElement.md#document_type_node)\n- [ELEMENT\\_NODE](AuthoringElement.md#element_node)\n- [ENTITY\\_NODE](AuthoringElement.md#entity_node)\n- [ENTITY\\_REFERENCE\\_NODE](AuthoringElement.md#entity_reference_node)\n- [NOTATION\\_NODE](AuthoringElement.md#notation_node)\n- [PROCESSING\\_INSTRUCTION\\_NODE](AuthoringElement.md#processing_instruction_node)\n- [TEXT\\_NODE](AuthoringElement.md#text_node)\n- [\\_notify](AuthoringElement.md#_notify)\n- [accessKey](AuthoringElement.md#accesskey)\n- [accessKeyLabel](AuthoringElement.md#accesskeylabel)\n- [ariaAtomic](AuthoringElement.md#ariaatomic)\n- [ariaAutoComplete](AuthoringElement.md#ariaautocomplete)\n- [ariaBusy](AuthoringElement.md#ariabusy)\n- [ariaChecked](AuthoringElement.md#ariachecked)\n- [ariaColCount](AuthoringElement.md#ariacolcount)\n- [ariaColIndex](AuthoringElement.md#ariacolindex)\n- [ariaColSpan](AuthoringElement.md#ariacolspan)\n- [ariaCurrent](AuthoringElement.md#ariacurrent)\n- [ariaDisabled](AuthoringElement.md#ariadisabled)\n- [ariaExpanded](AuthoringElement.md#ariaexpanded)\n- [ariaHasPopup](AuthoringElement.md#ariahaspopup)\n- [ariaHidden](AuthoringElement.md#ariahidden)\n- [ariaKeyShortcuts](AuthoringElement.md#ariakeyshortcuts)\n- [ariaLabel](AuthoringElement.md#arialabel)\n- [ariaLevel](AuthoringElement.md#arialevel)\n- [ariaLive](AuthoringElement.md#arialive)\n- [ariaModal](AuthoringElement.md#ariamodal)\n- [ariaMultiLine](AuthoringElement.md#ariamultiline)\n- [ariaMultiSelectable](AuthoringElement.md#ariamultiselectable)\n- [ariaOrientation](AuthoringElement.md#ariaorientation)\n- [ariaPlaceholder](AuthoringElement.md#ariaplaceholder)\n- [ariaPosInSet](AuthoringElement.md#ariaposinset)\n- [ariaPressed](AuthoringElement.md#ariapressed)\n- [ariaReadOnly](AuthoringElement.md#ariareadonly)\n- [ariaRequired](AuthoringElement.md#ariarequired)\n- [ariaRoleDescription](AuthoringElement.md#ariaroledescription)\n- [ariaRowCount](AuthoringElement.md#ariarowcount)\n- [ariaRowIndex](AuthoringElement.md#ariarowindex)\n- [ariaRowSpan](AuthoringElement.md#ariarowspan)\n- [ariaSelected](AuthoringElement.md#ariaselected)\n- [ariaSetSize](AuthoringElement.md#ariasetsize)\n- [ariaSort](AuthoringElement.md#ariasort)\n- [ariaValueMax](AuthoringElement.md#ariavaluemax)\n- [ariaValueMin](AuthoringElement.md#ariavaluemin)\n- [ariaValueNow](AuthoringElement.md#ariavaluenow)\n- [ariaValueText](AuthoringElement.md#ariavaluetext)\n- [assignedSlot](AuthoringElement.md#assignedslot)\n- [attributes](AuthoringElement.md#attributes)\n- [autocapitalize](AuthoringElement.md#autocapitalize)\n- [autofocus](AuthoringElement.md#autofocus)\n- [baseURI](AuthoringElement.md#baseuri)\n- [childElementCount](AuthoringElement.md#childelementcount)\n- [childNodes](AuthoringElement.md#childnodes)\n- [children](AuthoringElement.md#children)\n- [classList](AuthoringElement.md#classlist)\n- [className](AuthoringElement.md#classname)\n- [clientHeight](AuthoringElement.md#clientheight)\n- [clientLeft](AuthoringElement.md#clientleft)\n- [clientTop](AuthoringElement.md#clienttop)\n- [clientWidth](AuthoringElement.md#clientwidth)\n- [connected](AuthoringElement.md#connected)\n- [contentEditable](AuthoringElement.md#contenteditable)\n- [dataset](AuthoringElement.md#dataset)\n- [dir](AuthoringElement.md#dir)\n- [draggable](AuthoringElement.md#draggable)\n- [enterKeyHint](AuthoringElement.md#enterkeyhint)\n- [firstChild](AuthoringElement.md#firstchild)\n- [firstElementChild](AuthoringElement.md#firstelementchild)\n- [hidden](AuthoringElement.md#hidden)\n- [id](AuthoringElement.md#id)\n- [innerHTML](AuthoringElement.md#innerhtml)\n- [innerText](AuthoringElement.md#innertext)\n- [inputMode](AuthoringElement.md#inputmode)\n- [isConnected](AuthoringElement.md#isconnected)\n- [isContentEditable](AuthoringElement.md#iscontenteditable)\n- [lang](AuthoringElement.md#lang)\n- [lastChild](AuthoringElement.md#lastchild)\n- [lastElementChild](AuthoringElement.md#lastelementchild)\n- [localName](AuthoringElement.md#localname)\n- [mountPoint](AuthoringElement.md#mountpoint)\n- [namespaceURI](AuthoringElement.md#namespaceuri)\n- [nextElementSibling](AuthoringElement.md#nextelementsibling)\n- [nextSibling](AuthoringElement.md#nextsibling)\n- [nodeName](AuthoringElement.md#nodename)\n- [nodeType](AuthoringElement.md#nodetype)\n- [nodeValue](AuthoringElement.md#nodevalue)\n- [nonce](AuthoringElement.md#nonce)\n- [offsetHeight](AuthoringElement.md#offsetheight)\n- [offsetLeft](AuthoringElement.md#offsetleft)\n- [offsetParent](AuthoringElement.md#offsetparent)\n- [offsetTop](AuthoringElement.md#offsettop)\n- [offsetWidth](AuthoringElement.md#offsetwidth)\n- [onabort](AuthoringElement.md#onabort)\n- [onanimationcancel](AuthoringElement.md#onanimationcancel)\n- [onanimationend](AuthoringElement.md#onanimationend)\n- [onanimationiteration](AuthoringElement.md#onanimationiteration)\n- [onanimationstart](AuthoringElement.md#onanimationstart)\n- [onauxclick](AuthoringElement.md#onauxclick)\n- [onblur](AuthoringElement.md#onblur)\n- [oncanplay](AuthoringElement.md#oncanplay)\n- [oncanplaythrough](AuthoringElement.md#oncanplaythrough)\n- [onchange](AuthoringElement.md#onchange)\n- [onclick](AuthoringElement.md#onclick)\n- [onclose](AuthoringElement.md#onclose)\n- [oncontextmenu](AuthoringElement.md#oncontextmenu)\n- [oncopy](AuthoringElement.md#oncopy)\n- [oncuechange](AuthoringElement.md#oncuechange)\n- [oncut](AuthoringElement.md#oncut)\n- [ondblclick](AuthoringElement.md#ondblclick)\n- [ondrag](AuthoringElement.md#ondrag)\n- [ondragend](AuthoringElement.md#ondragend)\n- [ondragenter](AuthoringElement.md#ondragenter)\n- [ondragleave](AuthoringElement.md#ondragleave)\n- [ondragover](AuthoringElement.md#ondragover)\n- [ondragstart](AuthoringElement.md#ondragstart)\n- [ondrop](AuthoringElement.md#ondrop)\n- [ondurationchange](AuthoringElement.md#ondurationchange)\n- [onemptied](AuthoringElement.md#onemptied)\n- [onended](AuthoringElement.md#onended)\n- [onerror](AuthoringElement.md#onerror)\n- [onfocus](AuthoringElement.md#onfocus)\n- [onformdata](AuthoringElement.md#onformdata)\n- [onfullscreenchange](AuthoringElement.md#onfullscreenchange)\n- [onfullscreenerror](AuthoringElement.md#onfullscreenerror)\n- [ongotpointercapture](AuthoringElement.md#ongotpointercapture)\n- [oninput](AuthoringElement.md#oninput)\n- [oninvalid](AuthoringElement.md#oninvalid)\n- [onkeydown](AuthoringElement.md#onkeydown)\n- [onkeypress](AuthoringElement.md#onkeypress)\n- [onkeyup](AuthoringElement.md#onkeyup)\n- [onload](AuthoringElement.md#onload)\n- [onloadeddata](AuthoringElement.md#onloadeddata)\n- [onloadedmetadata](AuthoringElement.md#onloadedmetadata)\n- [onloadstart](AuthoringElement.md#onloadstart)\n- [onlostpointercapture](AuthoringElement.md#onlostpointercapture)\n- [onmousedown](AuthoringElement.md#onmousedown)\n- [onmouseenter](AuthoringElement.md#onmouseenter)\n- [onmouseleave](AuthoringElement.md#onmouseleave)\n- [onmousemove](AuthoringElement.md#onmousemove)\n- [onmouseout](AuthoringElement.md#onmouseout)\n- [onmouseover](AuthoringElement.md#onmouseover)\n- [onmouseup](AuthoringElement.md#onmouseup)\n- [onpaste](AuthoringElement.md#onpaste)\n- [onpause](AuthoringElement.md#onpause)\n- [onplay](AuthoringElement.md#onplay)\n- [onplaying](AuthoringElement.md#onplaying)\n- [onpointercancel](AuthoringElement.md#onpointercancel)\n- [onpointerdown](AuthoringElement.md#onpointerdown)\n- [onpointerenter](AuthoringElement.md#onpointerenter)\n- [onpointerleave](AuthoringElement.md#onpointerleave)\n- [onpointermove](AuthoringElement.md#onpointermove)\n- [onpointerout](AuthoringElement.md#onpointerout)\n- [onpointerover](AuthoringElement.md#onpointerover)\n- [onpointerup](AuthoringElement.md#onpointerup)\n- [onprogress](AuthoringElement.md#onprogress)\n- [onratechange](AuthoringElement.md#onratechange)\n- [onreset](AuthoringElement.md#onreset)\n- [onresize](AuthoringElement.md#onresize)\n- [onscroll](AuthoringElement.md#onscroll)\n- [onsecuritypolicyviolation](AuthoringElement.md#onsecuritypolicyviolation)\n- [onseeked](AuthoringElement.md#onseeked)\n- [onseeking](AuthoringElement.md#onseeking)\n- [onselect](AuthoringElement.md#onselect)\n- [onselectionchange](AuthoringElement.md#onselectionchange)\n- [onselectstart](AuthoringElement.md#onselectstart)\n- [onslotchange](AuthoringElement.md#onslotchange)\n- [onstalled](AuthoringElement.md#onstalled)\n- [onsubmit](AuthoringElement.md#onsubmit)\n- [onsuspend](AuthoringElement.md#onsuspend)\n- [ontimeupdate](AuthoringElement.md#ontimeupdate)\n- [ontoggle](AuthoringElement.md#ontoggle)\n- [ontouchcancel](AuthoringElement.md#ontouchcancel)\n- [ontouchend](AuthoringElement.md#ontouchend)\n- [ontouchmove](AuthoringElement.md#ontouchmove)\n- [ontouchstart](AuthoringElement.md#ontouchstart)\n- [ontransitioncancel](AuthoringElement.md#ontransitioncancel)\n- [ontransitionend](AuthoringElement.md#ontransitionend)\n- [ontransitionrun](AuthoringElement.md#ontransitionrun)\n- [ontransitionstart](AuthoringElement.md#ontransitionstart)\n- [onvolumechange](AuthoringElement.md#onvolumechange)\n- [onwaiting](AuthoringElement.md#onwaiting)\n- [onwebkitanimationend](AuthoringElement.md#onwebkitanimationend)\n- [onwebkitanimationiteration](AuthoringElement.md#onwebkitanimationiteration)\n- [onwebkitanimationstart](AuthoringElement.md#onwebkitanimationstart)\n- [onwebkittransitionend](AuthoringElement.md#onwebkittransitionend)\n- [onwheel](AuthoringElement.md#onwheel)\n- [outerHTML](AuthoringElement.md#outerhtml)\n- [outerText](AuthoringElement.md#outertext)\n- [ownerDocument](AuthoringElement.md#ownerdocument)\n- [parentElement](AuthoringElement.md#parentelement)\n- [parentNode](AuthoringElement.md#parentnode)\n- [part](AuthoringElement.md#part)\n- [prefix](AuthoringElement.md#prefix)\n- [previousElementSibling](AuthoringElement.md#previouselementsibling)\n- [previousSibling](AuthoringElement.md#previoussibling)\n- [scrollHeight](AuthoringElement.md#scrollheight)\n- [scrollLeft](AuthoringElement.md#scrollleft)\n- [scrollTop](AuthoringElement.md#scrolltop)\n- [scrollWidth](AuthoringElement.md#scrollwidth)\n- [shadowRoot](AuthoringElement.md#shadowroot)\n- [slot](AuthoringElement.md#slot)\n- [spellcheck](AuthoringElement.md#spellcheck)\n- [style](AuthoringElement.md#style)\n- [tabIndex](AuthoringElement.md#tabindex)\n- [tagName](AuthoringElement.md#tagname)\n- [textContent](AuthoringElement.md#textcontent)\n- [title](AuthoringElement.md#title)\n- [translate](AuthoringElement.md#translate)\n- [observedAttributes](AuthoringElement.md#observedattributes)","ref":"authoringelement.html#properties"},{"type":"extras","title":"Methods - AuthoringElement","doc":"- [addEventListener](AuthoringElement.md#addeventlistener)\n- [after](AuthoringElement.md#after)\n- [animate](AuthoringElement.md#animate)\n- [append](AuthoringElement.md#append)\n- [appendChild](AuthoringElement.md#appendchild)\n- [attachInternals](AuthoringElement.md#attachinternals)\n- [attachShadow](AuthoringElement.md#attachshadow)\n- [attributeChangedCallback](AuthoringElement.md#attributechangedcallback)\n- [before](AuthoringElement.md#before)\n- [blur](AuthoringElement.md#blur)\n- [click](AuthoringElement.md#click)\n- [cloneNode](AuthoringElement.md#clonenode)\n- [closest](AuthoringElement.md#closest)\n- [compareDocumentPosition](AuthoringElement.md#comparedocumentposition)\n- [connectedCallback](AuthoringElement.md#connectedcallback)\n- [contains](AuthoringElement.md#contains)\n- [details](AuthoringElement.md#details)\n- [dispatch](AuthoringElement.md#dispatch)\n- [dispatchEvent](AuthoringElement.md#dispatchevent)\n- [focus](AuthoringElement.md#focus)\n- [getAnimations](AuthoringElement.md#getanimations)\n- [getAttribute](AuthoringElement.md#getattribute)\n- [getAttributeNS](AuthoringElement.md#getattributens)\n- [getAttributeNames](AuthoringElement.md#getattributenames)\n- [getAttributeNode](AuthoringElement.md#getattributenode)\n- [getAttributeNodeNS](AuthoringElement.md#getattributenodens)\n- [getBoundingClientRect](AuthoringElement.md#getboundingclientrect)\n- [getClientRects](AuthoringElement.md#getclientrects)\n- [getElementsByClassName](AuthoringElement.md#getelementsbyclassname)\n- [getElementsByTagName](AuthoringElement.md#getelementsbytagname)\n- [getElementsByTagNameNS](AuthoringElement.md#getelementsbytagnamens)\n- [getRootNode](AuthoringElement.md#getrootnode)\n- [hasAttribute](AuthoringElement.md#hasattribute)\n- [hasAttributeNS](AuthoringElement.md#hasattributens)\n- [hasAttributes](AuthoringElement.md#hasattributes)\n- [hasChildNodes](AuthoringElement.md#haschildnodes)\n- [hasPointerCapture](AuthoringElement.md#haspointercapture)\n- [insertAdjacentElement](AuthoringElement.md#insertadjacentelement)\n- [insertAdjacentHTML](AuthoringElement.md#insertadjacenthtml)\n- [insertAdjacentText](AuthoringElement.md#insertadjacenttext)\n- [insertBefore](AuthoringElement.md#insertbefore)\n- [isDefaultNamespace](AuthoringElement.md#isdefaultnamespace)\n- [isEqualNode](AuthoringElement.md#isequalnode)\n- [isSameNode](AuthoringElement.md#issamenode)\n- [lookupNamespaceURI](AuthoringElement.md#lookupnamespaceuri)\n- [lookupPrefix](AuthoringElement.md#lookupprefix)\n- [matches](AuthoringElement.md#matches)\n- [migrateModelVersion](AuthoringElement.md#migratemodelversion)\n- [normalize](AuthoringElement.md#normalize)\n- [notify](AuthoringElement.md#notify)\n- [prepend](AuthoringElement.md#prepend)\n- [props](AuthoringElement.md#props)\n- [querySelector](AuthoringElement.md#queryselector)\n- [querySelectorAll](AuthoringElement.md#queryselectorall)\n- [releasePointerCapture](AuthoringElement.md#releasepointercapture)\n- [remove](AuthoringElement.md#remove)\n- [removeAttribute](AuthoringElement.md#removeattribute)\n- [removeAttributeNS](AuthoringElement.md#removeattributens)\n- [removeAttributeNode](AuthoringElement.md#removeattributenode)\n- [removeChild](AuthoringElement.md#removechild)\n- [removeEventListener](AuthoringElement.md#removeeventlistener)\n- [render](AuthoringElement.md#render)\n- [replaceChild](AuthoringElement.md#replacechild)\n- [replaceChildren](AuthoringElement.md#replacechildren)\n- [replaceWith](AuthoringElement.md#replacewith)\n- [requestFullscreen](AuthoringElement.md#requestfullscreen)\n- [requestPointerLock](AuthoringElement.md#requestpointerlock)\n- [scroll](AuthoringElement.md#scroll)\n- [scrollBy](AuthoringElement.md#scrollby)\n- [scrollIntoView](AuthoringElement.md#scrollintoview)\n- [scrollTo](AuthoringElement.md#scrollto)\n- [setAttribute](AuthoringElement.md#setattribute)\n- [setAttributeNS](AuthoringElement.md#setattributens)\n- [setAttributeNode](AuthoringElement.md#setattributenode)\n- [setAttributeNodeNS](AuthoringElement.md#setattributenodens)\n- [setPointerCapture](AuthoringElement.md#setpointercapture)\n- [toggleAttribute](AuthoringElement.md#toggleattribute)\n- [webkitMatchesSelector](AuthoringElement.md#webkitmatchesselector)","ref":"authoringelement.html#methods"},{"type":"extras","title":"Constructors - AuthoringElement","doc":"","ref":"authoringelement.html#constructors"},{"type":"extras","title":"constructor - AuthoringElement","doc":"• **new AuthoringElement**<`T`\\>()\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](../interfaces/ActivityModelSchema.md) |\n\n#### Overrides\n\nHTMLElement.constructor\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:59](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L59)","ref":"authoringelement.html#constructor"},{"type":"extras","title":"Properties - AuthoringElement","doc":"","ref":"authoringelement.html#properties"},{"type":"extras","title":"ATTRIBUTE\\_NODE - AuthoringElement","doc":"• `Readonly` **ATTRIBUTE\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ATTRIBUTE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9822\n\n___","ref":"authoringelement.html#attribute-_node"},{"type":"extras","title":"CDATA\\_SECTION\\_NODE - AuthoringElement","doc":"• `Readonly` **CDATA\\_SECTION\\_NODE**: `number`\n\nnode is a CDATASection node.\n\n#### Inherited from\n\nHTMLElement.CDATA\\_SECTION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9824\n\n___","ref":"authoringelement.html#cdata-_section-_node"},{"type":"extras","title":"COMMENT\\_NODE - AuthoringElement","doc":"• `Readonly` **COMMENT\\_NODE**: `number`\n\nnode is a Comment node.\n\n#### Inherited from\n\nHTMLElement.COMMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9826\n\n___","ref":"authoringelement.html#comment-_node"},{"type":"extras","title":"DOCUMENT\\_FRAGMENT\\_NODE - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_FRAGMENT\\_NODE**: `number`\n\nnode is a DocumentFragment node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_FRAGMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9828\n\n___","ref":"authoringelement.html#document-_fragment-_node"},{"type":"extras","title":"DOCUMENT\\_NODE - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_NODE**: `number`\n\nnode is a document.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9830\n\n___","ref":"authoringelement.html#document-_node"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_CONTAINED\\_BY - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_CONTAINED\\_BY**: `number`\n\nSet when other is a descendant of node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_CONTAINED\\_BY\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9832\n\n___","ref":"authoringelement.html#document-_position-_contained-_by"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_CONTAINS - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_CONTAINS**: `number`\n\nSet when other is an ancestor of node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_CONTAINS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9834\n\n___","ref":"authoringelement.html#document-_position-_contains"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_DISCONNECTED - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_DISCONNECTED**: `number`\n\nSet when node and other are not in the same tree.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_DISCONNECTED\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9836\n\n___","ref":"authoringelement.html#document-_position-_disconnected"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_FOLLOWING - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_FOLLOWING**: `number`\n\nSet when other is following node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_FOLLOWING\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9838\n\n___","ref":"authoringelement.html#document-_position-_following"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC**: `number`\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9839\n\n___","ref":"authoringelement.html#document-_position-_implementation-_specific"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_PRECEDING - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_PRECEDING**: `number`\n\nSet when other is preceding node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_PRECEDING\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9841\n\n___","ref":"authoringelement.html#document-_position-_preceding"},{"type":"extras","title":"DOCUMENT\\_TYPE\\_NODE - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_TYPE\\_NODE**: `number`\n\nnode is a doctype.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_TYPE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9843\n\n___","ref":"authoringelement.html#document-_type-_node"},{"type":"extras","title":"ELEMENT\\_NODE - AuthoringElement","doc":"• `Readonly` **ELEMENT\\_NODE**: `number`\n\nnode is an element.\n\n#### Inherited from\n\nHTMLElement.ELEMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9845\n\n___","ref":"authoringelement.html#element-_node"},{"type":"extras","title":"ENTITY\\_NODE - AuthoringElement","doc":"• `Readonly` **ENTITY\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ENTITY\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9846\n\n___","ref":"authoringelement.html#entity-_node"},{"type":"extras","title":"ENTITY\\_REFERENCE\\_NODE - AuthoringElement","doc":"• `Readonly` **ENTITY\\_REFERENCE\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ENTITY\\_REFERENCE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9847\n\n___","ref":"authoringelement.html#entity-_reference-_node"},{"type":"extras","title":"NOTATION\\_NODE - AuthoringElement","doc":"• `Readonly` **NOTATION\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.NOTATION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9848\n\n___","ref":"authoringelement.html#notation-_node"},{"type":"extras","title":"PROCESSING\\_INSTRUCTION\\_NODE - AuthoringElement","doc":"• `Readonly` **PROCESSING\\_INSTRUCTION\\_NODE**: `number`\n\nnode is a ProcessingInstruction node.\n\n#### Inherited from\n\nHTMLElement.PROCESSING\\_INSTRUCTION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9850\n\n___","ref":"authoringelement.html#processing-_instruction-_node"},{"type":"extras","title":"TEXT\\_NODE - AuthoringElement","doc":"• `Readonly` **TEXT\\_NODE**: `number`\n\nnode is a Text node.\n\n#### Inherited from\n\nHTMLElement.TEXT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9852\n\n___\n\n### \\_notify\n\n• `Protected` **\\_notify**: `EventEmitter`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:57](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L57)\n\n___","ref":"authoringelement.html#text-_node"},{"type":"extras","title":"accessKey - AuthoringElement","doc":"• **accessKey**: `string`\n\n#### Inherited from\n\nHTMLElement.accessKey\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6223\n\n___","ref":"authoringelement.html#accesskey"},{"type":"extras","title":"accessKeyLabel - AuthoringElement","doc":"• `Readonly` **accessKeyLabel**: `string`\n\n#### Inherited from\n\nHTMLElement.accessKeyLabel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6224\n\n___","ref":"authoringelement.html#accesskeylabel"},{"type":"extras","title":"ariaAtomic - AuthoringElement","doc":"• **ariaAtomic**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaAtomic\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1857\n\n___","ref":"authoringelement.html#ariaatomic"},{"type":"extras","title":"ariaAutoComplete - AuthoringElement","doc":"• **ariaAutoComplete**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaAutoComplete\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1858\n\n___","ref":"authoringelement.html#ariaautocomplete"},{"type":"extras","title":"ariaBusy - AuthoringElement","doc":"• **ariaBusy**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaBusy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1859\n\n___","ref":"authoringelement.html#ariabusy"},{"type":"extras","title":"ariaChecked - AuthoringElement","doc":"• **ariaChecked**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaChecked\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1860\n\n___","ref":"authoringelement.html#ariachecked"},{"type":"extras","title":"ariaColCount - AuthoringElement","doc":"• **ariaColCount**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1861\n\n___","ref":"authoringelement.html#ariacolcount"},{"type":"extras","title":"ariaColIndex - AuthoringElement","doc":"• **ariaColIndex**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1862\n\n___","ref":"authoringelement.html#ariacolindex"},{"type":"extras","title":"ariaColSpan - AuthoringElement","doc":"• **ariaColSpan**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColSpan\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1863\n\n___","ref":"authoringelement.html#ariacolspan"},{"type":"extras","title":"ariaCurrent - AuthoringElement","doc":"• **ariaCurrent**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaCurrent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1864\n\n___","ref":"authoringelement.html#ariacurrent"},{"type":"extras","title":"ariaDisabled - AuthoringElement","doc":"• **ariaDisabled**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaDisabled\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1865\n\n___","ref":"authoringelement.html#ariadisabled"},{"type":"extras","title":"ariaExpanded - AuthoringElement","doc":"• **ariaExpanded**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaExpanded\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1866\n\n___","ref":"authoringelement.html#ariaexpanded"},{"type":"extras","title":"ariaHasPopup - AuthoringElement","doc":"• **ariaHasPopup**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaHasPopup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1867\n\n___","ref":"authoringelement.html#ariahaspopup"},{"type":"extras","title":"ariaHidden - AuthoringElement","doc":"• **ariaHidden**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaHidden\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1868\n\n___","ref":"authoringelement.html#ariahidden"},{"type":"extras","title":"ariaKeyShortcuts - AuthoringElement","doc":"• **ariaKeyShortcuts**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaKeyShortcuts\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1869\n\n___","ref":"authoringelement.html#ariakeyshortcuts"},{"type":"extras","title":"ariaLabel - AuthoringElement","doc":"• **ariaLabel**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLabel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1870\n\n___","ref":"authoringelement.html#arialabel"},{"type":"extras","title":"ariaLevel - AuthoringElement","doc":"• **ariaLevel**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLevel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1871\n\n___","ref":"authoringelement.html#arialevel"},{"type":"extras","title":"ariaLive - AuthoringElement","doc":"• **ariaLive**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLive\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1872\n\n___","ref":"authoringelement.html#arialive"},{"type":"extras","title":"ariaModal - AuthoringElement","doc":"• **ariaModal**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaModal\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1873\n\n___","ref":"authoringelement.html#ariamodal"},{"type":"extras","title":"ariaMultiLine - AuthoringElement","doc":"• **ariaMultiLine**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaMultiLine\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1874\n\n___","ref":"authoringelement.html#ariamultiline"},{"type":"extras","title":"ariaMultiSelectable - AuthoringElement","doc":"• **ariaMultiSelectable**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaMultiSelectable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1875\n\n___","ref":"authoringelement.html#ariamultiselectable"},{"type":"extras","title":"ariaOrientation - AuthoringElement","doc":"• **ariaOrientation**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaOrientation\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1876\n\n___","ref":"authoringelement.html#ariaorientation"},{"type":"extras","title":"ariaPlaceholder - AuthoringElement","doc":"• **ariaPlaceholder**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPlaceholder\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1877\n\n___","ref":"authoringelement.html#ariaplaceholder"},{"type":"extras","title":"ariaPosInSet - AuthoringElement","doc":"• **ariaPosInSet**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPosInSet\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1878\n\n___","ref":"authoringelement.html#ariaposinset"},{"type":"extras","title":"ariaPressed - AuthoringElement","doc":"• **ariaPressed**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPressed\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1879\n\n___","ref":"authoringelement.html#ariapressed"},{"type":"extras","title":"ariaReadOnly - AuthoringElement","doc":"• **ariaReadOnly**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaReadOnly\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1880\n\n___","ref":"authoringelement.html#ariareadonly"},{"type":"extras","title":"ariaRequired - AuthoringElement","doc":"• **ariaRequired**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRequired\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1881\n\n___","ref":"authoringelement.html#ariarequired"},{"type":"extras","title":"ariaRoleDescription - AuthoringElement","doc":"• **ariaRoleDescription**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRoleDescription\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1882\n\n___","ref":"authoringelement.html#ariaroledescription"},{"type":"extras","title":"ariaRowCount - AuthoringElement","doc":"• **ariaRowCount**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1883\n\n___","ref":"authoringelement.html#ariarowcount"},{"type":"extras","title":"ariaRowIndex - AuthoringElement","doc":"• **ariaRowIndex**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1884\n\n___","ref":"authoringelement.html#ariarowindex"},{"type":"extras","title":"ariaRowSpan - AuthoringElement","doc":"• **ariaRowSpan**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowSpan\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1885\n\n___","ref":"authoringelement.html#ariarowspan"},{"type":"extras","title":"ariaSelected - AuthoringElement","doc":"• **ariaSelected**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSelected\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1886\n\n___","ref":"authoringelement.html#ariaselected"},{"type":"extras","title":"ariaSetSize - AuthoringElement","doc":"• **ariaSetSize**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSetSize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1887\n\n___","ref":"authoringelement.html#ariasetsize"},{"type":"extras","title":"ariaSort - AuthoringElement","doc":"• **ariaSort**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSort\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1888\n\n___","ref":"authoringelement.html#ariasort"},{"type":"extras","title":"ariaValueMax - AuthoringElement","doc":"• **ariaValueMax**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueMax\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1889\n\n___","ref":"authoringelement.html#ariavaluemax"},{"type":"extras","title":"ariaValueMin - AuthoringElement","doc":"• **ariaValueMin**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueMin\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1890\n\n___","ref":"authoringelement.html#ariavaluemin"},{"type":"extras","title":"ariaValueNow - AuthoringElement","doc":"• **ariaValueNow**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueNow\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1891\n\n___","ref":"authoringelement.html#ariavaluenow"},{"type":"extras","title":"ariaValueText - AuthoringElement","doc":"• **ariaValueText**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1892\n\n___","ref":"authoringelement.html#ariavaluetext"},{"type":"extras","title":"assignedSlot - AuthoringElement","doc":"• `Readonly` **assignedSlot**: ``null`` \\| `HTMLSlotElement`\n\n#### Inherited from\n\nHTMLElement.assignedSlot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:13242\n\n___","ref":"authoringelement.html#assignedslot"},{"type":"extras","title":"attributes - AuthoringElement","doc":"• `Readonly` **attributes**: `NamedNodeMap`\n\n#### Inherited from\n\nHTMLElement.attributes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4768\n\n___","ref":"authoringelement.html#attributes"},{"type":"extras","title":"autocapitalize - AuthoringElement","doc":"• **autocapitalize**: `string`\n\n#### Inherited from\n\nHTMLElement.autocapitalize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6225\n\n___","ref":"authoringelement.html#autocapitalize"},{"type":"extras","title":"autofocus - AuthoringElement","doc":"• **autofocus**: `boolean`\n\n#### Inherited from\n\nHTMLElement.autofocus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7427\n\n___","ref":"authoringelement.html#autofocus"},{"type":"extras","title":"baseURI - AuthoringElement","doc":"• `Readonly` **baseURI**: `string`\n\nReturns node's node document's document base URL.\n\n#### Inherited from\n\nHTMLElement.baseURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9775\n\n___","ref":"authoringelement.html#baseuri"},{"type":"extras","title":"childElementCount - AuthoringElement","doc":"• `Readonly` **childElementCount**: `number`\n\n#### Inherited from\n\nHTMLElement.childElementCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10140\n\n___","ref":"authoringelement.html#childelementcount"},{"type":"extras","title":"childNodes - AuthoringElement","doc":"• `Readonly` **childNodes**: `NodeListOf`<`ChildNode`\\>\n\nReturns the children.\n\n#### Inherited from\n\nHTMLElement.childNodes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9777\n\n___","ref":"authoringelement.html#childnodes"},{"type":"extras","title":"children - AuthoringElement","doc":"• `Readonly` **children**: `HTMLCollection`\n\nReturns the child elements.\n\n#### Inherited from\n\nHTMLElement.children\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10142\n\n___","ref":"authoringelement.html#children"},{"type":"extras","title":"classList - AuthoringElement","doc":"• `Readonly` **classList**: `DOMTokenList`\n\nAllows for manipulation of element's class content attribute as a set of whitespace-separated tokens through a DOMTokenList object.\n\n#### Inherited from\n\nHTMLElement.classList\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4770\n\n___","ref":"authoringelement.html#classlist"},{"type":"extras","title":"className - AuthoringElement","doc":"• **className**: `string`\n\nReturns the value of element's class content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.className\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4772\n\n___","ref":"authoringelement.html#classname"},{"type":"extras","title":"clientHeight - AuthoringElement","doc":"• `Readonly` **clientHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.clientHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4773\n\n___","ref":"authoringelement.html#clientheight"},{"type":"extras","title":"clientLeft - AuthoringElement","doc":"• `Readonly` **clientLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.clientLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4774\n\n___","ref":"authoringelement.html#clientleft"},{"type":"extras","title":"clientTop - AuthoringElement","doc":"• `Readonly` **clientTop**: `number`\n\n#### Inherited from\n\nHTMLElement.clientTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4775\n\n___","ref":"authoringelement.html#clienttop"},{"type":"extras","title":"clientWidth - AuthoringElement","doc":"• `Readonly` **clientWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.clientWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4776\n\n___","ref":"authoringelement.html#clientwidth"},{"type":"extras","title":"connected - AuthoringElement","doc":"• **connected**: `boolean`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:55](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L55)\n\n___","ref":"authoringelement.html#connected"},{"type":"extras","title":"contentEditable - AuthoringElement","doc":"• **contentEditable**: `string`\n\n#### Inherited from\n\nHTMLElement.contentEditable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4887\n\n___","ref":"authoringelement.html#contenteditable"},{"type":"extras","title":"dataset - AuthoringElement","doc":"• `Readonly` **dataset**: `DOMStringMap`\n\n#### Inherited from\n\nHTMLElement.dataset\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7428\n\n___","ref":"authoringelement.html#dataset"},{"type":"extras","title":"dir - AuthoringElement","doc":"• **dir**: `string`\n\n#### Inherited from\n\nHTMLElement.dir\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6226\n\n___","ref":"authoringelement.html#dir"},{"type":"extras","title":"draggable - AuthoringElement","doc":"• **draggable**: `boolean`\n\n#### Inherited from\n\nHTMLElement.draggable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6227\n\n___","ref":"authoringelement.html#draggable"},{"type":"extras","title":"enterKeyHint - AuthoringElement","doc":"• **enterKeyHint**: `string`\n\n#### Inherited from\n\nHTMLElement.enterKeyHint\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4888\n\n___","ref":"authoringelement.html#enterkeyhint"},{"type":"extras","title":"firstChild - AuthoringElement","doc":"• `Readonly` **firstChild**: ``null`` \\| `ChildNode`\n\nReturns the first child.\n\n#### Inherited from\n\nHTMLElement.firstChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9779\n\n___","ref":"authoringelement.html#firstchild"},{"type":"extras","title":"firstElementChild - AuthoringElement","doc":"• `Readonly` **firstElementChild**: ``null`` \\| `Element`\n\nReturns the first child that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.firstElementChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10144\n\n___","ref":"authoringelement.html#firstelementchild"},{"type":"extras","title":"hidden - AuthoringElement","doc":"• **hidden**: `boolean`\n\n#### Inherited from\n\nHTMLElement.hidden\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6228\n\n___","ref":"authoringelement.html#hidden"},{"type":"extras","title":"id - AuthoringElement","doc":"• **id**: `string`\n\nReturns the value of element's id content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.id\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4778\n\n___","ref":"authoringelement.html#id"},{"type":"extras","title":"innerHTML - AuthoringElement","doc":"• **innerHTML**: `string`\n\n#### Inherited from\n\nHTMLElement.innerHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:8777\n\n___","ref":"authoringelement.html#innerhtml"},{"type":"extras","title":"innerText - AuthoringElement","doc":"• **innerText**: `string`\n\n#### Inherited from\n\nHTMLElement.innerText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6229\n\n___","ref":"authoringelement.html#innertext"},{"type":"extras","title":"inputMode - AuthoringElement","doc":"• **inputMode**: `string`\n\n#### Inherited from\n\nHTMLElement.inputMode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4889\n\n___","ref":"authoringelement.html#inputmode"},{"type":"extras","title":"isConnected - AuthoringElement","doc":"• `Readonly` **isConnected**: `boolean`\n\nReturns true if node is connected and false otherwise.\n\n#### Inherited from\n\nHTMLElement.isConnected\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9781\n\n___","ref":"authoringelement.html#isconnected"},{"type":"extras","title":"isContentEditable - AuthoringElement","doc":"• `Readonly` **isContentEditable**: `boolean`\n\n#### Inherited from\n\nHTMLElement.isContentEditable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4890\n\n___","ref":"authoringelement.html#iscontenteditable"},{"type":"extras","title":"lang - AuthoringElement","doc":"• **lang**: `string`\n\n#### Inherited from\n\nHTMLElement.lang\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6230\n\n___","ref":"authoringelement.html#lang"},{"type":"extras","title":"lastChild - AuthoringElement","doc":"• `Readonly` **lastChild**: ``null`` \\| `ChildNode`\n\nReturns the last child.\n\n#### Inherited from\n\nHTMLElement.lastChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9783\n\n___","ref":"authoringelement.html#lastchild"},{"type":"extras","title":"lastElementChild - AuthoringElement","doc":"• `Readonly` **lastElementChild**: ``null`` \\| `Element`\n\nReturns the last child that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.lastElementChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10146\n\n___","ref":"authoringelement.html#lastelementchild"},{"type":"extras","title":"localName - AuthoringElement","doc":"• `Readonly` **localName**: `string`\n\nReturns the local name.\n\n#### Inherited from\n\nHTMLElement.localName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4780\n\n___","ref":"authoringelement.html#localname"},{"type":"extras","title":"mountPoint - AuthoringElement","doc":"• **mountPoint**: `HTMLDivElement`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:54](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L54)\n\n___","ref":"authoringelement.html#mountpoint"},{"type":"extras","title":"namespaceURI - AuthoringElement","doc":"• `Readonly` **namespaceURI**: ``null`` \\| `string`\n\nReturns the namespace.\n\n#### Inherited from\n\nHTMLElement.namespaceURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4782\n\n___","ref":"authoringelement.html#namespaceuri"},{"type":"extras","title":"nextElementSibling - AuthoringElement","doc":"• `Readonly` **nextElementSibling**: ``null`` \\| `Element`\n\nReturns the first following sibling that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.nextElementSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9942\n\n___","ref":"authoringelement.html#nextelementsibling"},{"type":"extras","title":"nextSibling - AuthoringElement","doc":"• `Readonly` **nextSibling**: ``null`` \\| `ChildNode`\n\nReturns the next sibling.\n\n#### Inherited from\n\nHTMLElement.nextSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9785\n\n___","ref":"authoringelement.html#nextsibling"},{"type":"extras","title":"nodeName - AuthoringElement","doc":"• `Readonly` **nodeName**: `string`\n\nReturns a string appropriate for the type of node.\n\n#### Inherited from\n\nHTMLElement.nodeName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9787\n\n___","ref":"authoringelement.html#nodename"},{"type":"extras","title":"nodeType - AuthoringElement","doc":"• `Readonly` **nodeType**: `number`\n\nReturns the type of node.\n\n#### Inherited from\n\nHTMLElement.nodeType\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9789\n\n___","ref":"authoringelement.html#nodetype"},{"type":"extras","title":"nodeValue - AuthoringElement","doc":"• **nodeValue**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.nodeValue\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9790\n\n___","ref":"authoringelement.html#nodevalue"},{"type":"extras","title":"nonce - AuthoringElement","doc":"• `Optional` **nonce**: `string`\n\n#### Inherited from\n\nHTMLElement.nonce\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7429\n\n___","ref":"authoringelement.html#nonce"},{"type":"extras","title":"offsetHeight - AuthoringElement","doc":"• `Readonly` **offsetHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6231\n\n___","ref":"authoringelement.html#offsetheight"},{"type":"extras","title":"offsetLeft - AuthoringElement","doc":"• `Readonly` **offsetLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6232\n\n___","ref":"authoringelement.html#offsetleft"},{"type":"extras","title":"offsetParent - AuthoringElement","doc":"• `Readonly` **offsetParent**: ``null`` \\| `Element`\n\n#### Inherited from\n\nHTMLElement.offsetParent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6233\n\n___","ref":"authoringelement.html#offsetparent"},{"type":"extras","title":"offsetTop - AuthoringElement","doc":"• `Readonly` **offsetTop**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6234\n\n___","ref":"authoringelement.html#offsettop"},{"type":"extras","title":"offsetWidth - AuthoringElement","doc":"• `Readonly` **offsetWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6235\n\n___","ref":"authoringelement.html#offsetwidth"},{"type":"extras","title":"onabort - AuthoringElement","doc":"• **onabort**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `UIEvent`) => `any`\n\nFires when the user aborts the download.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onabort\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5542\n\n___","ref":"authoringelement.html#onabort"},{"type":"extras","title":"onanimationcancel - AuthoringElement","doc":"• **onanimationcancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationcancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5543\n\n___","ref":"authoringelement.html#onanimationcancel"},{"type":"extras","title":"onanimationend - AuthoringElement","doc":"• **onanimationend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5544\n\n___","ref":"authoringelement.html#onanimationend"},{"type":"extras","title":"onanimationiteration - AuthoringElement","doc":"• **onanimationiteration**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationiteration\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5545\n\n___","ref":"authoringelement.html#onanimationiteration"},{"type":"extras","title":"onanimationstart - AuthoringElement","doc":"• **onanimationstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5546\n\n___","ref":"authoringelement.html#onanimationstart"},{"type":"extras","title":"onauxclick - AuthoringElement","doc":"• **onauxclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onauxclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5547\n\n___","ref":"authoringelement.html#onauxclick"},{"type":"extras","title":"onblur - AuthoringElement","doc":"• **onblur**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FocusEvent`) => `any`\n\nFires when the object loses the input focus.\n\n**`param`** The focus event.\n\n#### Inherited from\n\nHTMLElement.onblur\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5552\n\n___","ref":"authoringelement.html#onblur"},{"type":"extras","title":"oncanplay - AuthoringElement","doc":"• **oncanplay**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback is possible, but would require further buffering.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.oncanplay\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5557\n\n___","ref":"authoringelement.html#oncanplay"},{"type":"extras","title":"oncanplaythrough - AuthoringElement","doc":"• **oncanplaythrough**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncanplaythrough\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5558\n\n___","ref":"authoringelement.html#oncanplaythrough"},{"type":"extras","title":"onchange - AuthoringElement","doc":"• **onchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the contents of the object or selection have changed.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5563\n\n___","ref":"authoringelement.html#onchange"},{"type":"extras","title":"onclick - AuthoringElement","doc":"• **onclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the left mouse button on the object\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5568\n\n___","ref":"authoringelement.html#onclick"},{"type":"extras","title":"onclose - AuthoringElement","doc":"• **onclose**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onclose\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5569\n\n___","ref":"authoringelement.html#onclose"},{"type":"extras","title":"oncontextmenu - AuthoringElement","doc":"• **oncontextmenu**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the right mouse button in the client area, opening the context menu.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.oncontextmenu\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5574\n\n___","ref":"authoringelement.html#oncontextmenu"},{"type":"extras","title":"oncopy - AuthoringElement","doc":"• **oncopy**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncopy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4624\n\n___","ref":"authoringelement.html#oncopy"},{"type":"extras","title":"oncuechange - AuthoringElement","doc":"• **oncuechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncuechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5575\n\n___","ref":"authoringelement.html#oncuechange"},{"type":"extras","title":"oncut - AuthoringElement","doc":"• **oncut**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncut\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4625\n\n___","ref":"authoringelement.html#oncut"},{"type":"extras","title":"ondblclick - AuthoringElement","doc":"• **ondblclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user double-clicks the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.ondblclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5580\n\n___","ref":"authoringelement.html#ondblclick"},{"type":"extras","title":"ondrag - AuthoringElement","doc":"• **ondrag**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object continuously during a drag operation.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondrag\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5585\n\n___","ref":"authoringelement.html#ondrag"},{"type":"extras","title":"ondragend - AuthoringElement","doc":"• **ondragend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object when the user releases the mouse at the close of a drag operation.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5590\n\n___","ref":"authoringelement.html#ondragend"},{"type":"extras","title":"ondragenter - AuthoringElement","doc":"• **ondragenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target element when the user drags the object to a valid drop target.\n\n**`param`** The drag event.\n\n#### Inherited from\n\nHTMLElement.ondragenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5595\n\n___","ref":"authoringelement.html#ondragenter"},{"type":"extras","title":"ondragleave - AuthoringElement","doc":"• **ondragleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target object when the user moves the mouse out of a valid drop target during a drag operation.\n\n**`param`** The drag event.\n\n#### Inherited from\n\nHTMLElement.ondragleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5600\n\n___","ref":"authoringelement.html#ondragleave"},{"type":"extras","title":"ondragover - AuthoringElement","doc":"• **ondragover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target element continuously while the user drags the object over a valid drop target.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5605\n\n___","ref":"authoringelement.html#ondragover"},{"type":"extras","title":"ondragstart - AuthoringElement","doc":"• **ondragstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object when the user starts to drag a text selection or selected object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5610\n\n___","ref":"authoringelement.html#ondragstart"},{"type":"extras","title":"ondrop - AuthoringElement","doc":"• **ondrop**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ondrop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5611\n\n___","ref":"authoringelement.html#ondrop"},{"type":"extras","title":"ondurationchange - AuthoringElement","doc":"• **ondurationchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the duration attribute is updated.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondurationchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5616\n\n___","ref":"authoringelement.html#ondurationchange"},{"type":"extras","title":"onemptied - AuthoringElement","doc":"• **onemptied**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the media element is reset to its initial state.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onemptied\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5621\n\n___","ref":"authoringelement.html#onemptied"},{"type":"extras","title":"onended - AuthoringElement","doc":"• **onended**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the end of playback is reached.\n\n**`param`** The event\n\n#### Inherited from\n\nHTMLElement.onended\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5626\n\n___","ref":"authoringelement.html#onended"},{"type":"extras","title":"onerror - AuthoringElement","doc":"• **onerror**: `OnErrorEventHandler`\n\nFires when an error occurs during object loading.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onerror\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5631\n\n___","ref":"authoringelement.html#onerror"},{"type":"extras","title":"onfocus - AuthoringElement","doc":"• **onfocus**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FocusEvent`) => `any`\n\nFires when the object receives focus.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onfocus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5636\n\n___","ref":"authoringelement.html#onfocus"},{"type":"extras","title":"onformdata - AuthoringElement","doc":"• **onformdata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FormDataEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onformdata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5637\n\n___","ref":"authoringelement.html#onformdata"},{"type":"extras","title":"onfullscreenchange - AuthoringElement","doc":"• **onfullscreenchange**: ``null`` \\| (`this`: `Element`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onfullscreenchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4783\n\n___","ref":"authoringelement.html#onfullscreenchange"},{"type":"extras","title":"onfullscreenerror - AuthoringElement","doc":"• **onfullscreenerror**: ``null`` \\| (`this`: `Element`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onfullscreenerror\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4784\n\n___","ref":"authoringelement.html#onfullscreenerror"},{"type":"extras","title":"ongotpointercapture - AuthoringElement","doc":"• **ongotpointercapture**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ongotpointercapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5638\n\n___","ref":"authoringelement.html#ongotpointercapture"},{"type":"extras","title":"oninput - AuthoringElement","doc":"• **oninput**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oninput\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5639\n\n___","ref":"authoringelement.html#oninput"},{"type":"extras","title":"oninvalid - AuthoringElement","doc":"• **oninvalid**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oninvalid\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5640\n\n___","ref":"authoringelement.html#oninvalid"},{"type":"extras","title":"onkeydown - AuthoringElement","doc":"• **onkeydown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user presses a key.\n\n**`param`** The keyboard event\n\n#### Inherited from\n\nHTMLElement.onkeydown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5645\n\n___","ref":"authoringelement.html#onkeydown"},{"type":"extras","title":"onkeypress - AuthoringElement","doc":"• **onkeypress**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user presses an alphanumeric key.\n\n**`param`** The event.\n\n**`deprecated`**\n\n#### Inherited from\n\nHTMLElement.onkeypress\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5651\n\n___","ref":"authoringelement.html#onkeypress"},{"type":"extras","title":"onkeyup - AuthoringElement","doc":"• **onkeyup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user releases a key.\n\n**`param`** The keyboard event\n\n#### Inherited from\n\nHTMLElement.onkeyup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5656\n\n___","ref":"authoringelement.html#onkeyup"},{"type":"extras","title":"onload - AuthoringElement","doc":"• **onload**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires immediately after the browser loads the object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onload\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5661\n\n___","ref":"authoringelement.html#onload"},{"type":"extras","title":"onloadeddata - AuthoringElement","doc":"• **onloadeddata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when media data is loaded at the current playback position.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadeddata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5666\n\n___","ref":"authoringelement.html#onloadeddata"},{"type":"extras","title":"onloadedmetadata - AuthoringElement","doc":"• **onloadedmetadata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the duration and dimensions of the media have been determined.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadedmetadata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5671\n\n___","ref":"authoringelement.html#onloadedmetadata"},{"type":"extras","title":"onloadstart - AuthoringElement","doc":"• **onloadstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when Internet Explorer begins looking for media data.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5676\n\n___","ref":"authoringelement.html#onloadstart"},{"type":"extras","title":"onlostpointercapture - AuthoringElement","doc":"• **onlostpointercapture**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onlostpointercapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5677\n\n___","ref":"authoringelement.html#onlostpointercapture"},{"type":"extras","title":"onmousedown - AuthoringElement","doc":"• **onmousedown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the object with either mouse button.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmousedown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5682\n\n___","ref":"authoringelement.html#onmousedown"},{"type":"extras","title":"onmouseenter - AuthoringElement","doc":"• **onmouseenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onmouseenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5683\n\n___","ref":"authoringelement.html#onmouseenter"},{"type":"extras","title":"onmouseleave - AuthoringElement","doc":"• **onmouseleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onmouseleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5684\n\n___","ref":"authoringelement.html#onmouseleave"},{"type":"extras","title":"onmousemove - AuthoringElement","doc":"• **onmousemove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse over the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmousemove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5689\n\n___","ref":"authoringelement.html#onmousemove"},{"type":"extras","title":"onmouseout - AuthoringElement","doc":"• **onmouseout**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse pointer outside the boundaries of the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseout\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5694\n\n___","ref":"authoringelement.html#onmouseout"},{"type":"extras","title":"onmouseover - AuthoringElement","doc":"• **onmouseover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse pointer into the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5699\n\n___","ref":"authoringelement.html#onmouseover"},{"type":"extras","title":"onmouseup - AuthoringElement","doc":"• **onmouseup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user releases a mouse button while the mouse is over the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5704\n\n___","ref":"authoringelement.html#onmouseup"},{"type":"extras","title":"onpaste - AuthoringElement","doc":"• **onpaste**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpaste\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4626\n\n___","ref":"authoringelement.html#onpaste"},{"type":"extras","title":"onpause - AuthoringElement","doc":"• **onpause**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback is paused.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onpause\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5709\n\n___","ref":"authoringelement.html#onpause"},{"type":"extras","title":"onplay - AuthoringElement","doc":"• **onplay**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the play method is requested.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onplay\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5714\n\n___","ref":"authoringelement.html#onplay"},{"type":"extras","title":"onplaying - AuthoringElement","doc":"• **onplaying**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the audio or video has started playing.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onplaying\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5719\n\n___","ref":"authoringelement.html#onplaying"},{"type":"extras","title":"onpointercancel - AuthoringElement","doc":"• **onpointercancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointercancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5720\n\n___","ref":"authoringelement.html#onpointercancel"},{"type":"extras","title":"onpointerdown - AuthoringElement","doc":"• **onpointerdown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerdown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5721\n\n___","ref":"authoringelement.html#onpointerdown"},{"type":"extras","title":"onpointerenter - AuthoringElement","doc":"• **onpointerenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5722\n\n___","ref":"authoringelement.html#onpointerenter"},{"type":"extras","title":"onpointerleave - AuthoringElement","doc":"• **onpointerleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5723\n\n___","ref":"authoringelement.html#onpointerleave"},{"type":"extras","title":"onpointermove - AuthoringElement","doc":"• **onpointermove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointermove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5724\n\n___","ref":"authoringelement.html#onpointermove"},{"type":"extras","title":"onpointerout - AuthoringElement","doc":"• **onpointerout**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerout\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5725\n\n___","ref":"authoringelement.html#onpointerout"},{"type":"extras","title":"onpointerover - AuthoringElement","doc":"• **onpointerover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5726\n\n___","ref":"authoringelement.html#onpointerover"},{"type":"extras","title":"onpointerup - AuthoringElement","doc":"• **onpointerup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5727\n\n___","ref":"authoringelement.html#onpointerup"},{"type":"extras","title":"onprogress - AuthoringElement","doc":"• **onprogress**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `ProgressEvent`<`EventTarget`\\>) => `any`\n\nOccurs to indicate progress while downloading media data.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onprogress\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5732\n\n___","ref":"authoringelement.html#onprogress"},{"type":"extras","title":"onratechange - AuthoringElement","doc":"• **onratechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the playback rate is increased or decreased.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onratechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5737\n\n___","ref":"authoringelement.html#onratechange"},{"type":"extras","title":"onreset - AuthoringElement","doc":"• **onreset**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the user resets a form.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onreset\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5742\n\n___","ref":"authoringelement.html#onreset"},{"type":"extras","title":"onresize - AuthoringElement","doc":"• **onresize**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `UIEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onresize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5743\n\n___","ref":"authoringelement.html#onresize"},{"type":"extras","title":"onscroll - AuthoringElement","doc":"• **onscroll**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the user repositions the scroll box in the scroll bar on the object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onscroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5748\n\n___","ref":"authoringelement.html#onscroll"},{"type":"extras","title":"onsecuritypolicyviolation - AuthoringElement","doc":"• **onsecuritypolicyviolation**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `SecurityPolicyViolationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onsecuritypolicyviolation\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5749\n\n___","ref":"authoringelement.html#onsecuritypolicyviolation"},{"type":"extras","title":"onseeked - AuthoringElement","doc":"• **onseeked**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the seek operation ends.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onseeked\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5754\n\n___","ref":"authoringelement.html#onseeked"},{"type":"extras","title":"onseeking - AuthoringElement","doc":"• **onseeking**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the current playback position is moved.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onseeking\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5759\n\n___","ref":"authoringelement.html#onseeking"},{"type":"extras","title":"onselect - AuthoringElement","doc":"• **onselect**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the current selection changes.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onselect\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5764\n\n___","ref":"authoringelement.html#onselect"},{"type":"extras","title":"onselectionchange - AuthoringElement","doc":"• **onselectionchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onselectionchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5765\n\n___","ref":"authoringelement.html#onselectionchange"},{"type":"extras","title":"onselectstart - AuthoringElement","doc":"• **onselectstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onselectstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5766\n\n___","ref":"authoringelement.html#onselectstart"},{"type":"extras","title":"onslotchange - AuthoringElement","doc":"• **onslotchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onslotchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5767\n\n___","ref":"authoringelement.html#onslotchange"},{"type":"extras","title":"onstalled - AuthoringElement","doc":"• **onstalled**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the download has stopped.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onstalled\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5772\n\n___","ref":"authoringelement.html#onstalled"},{"type":"extras","title":"onsubmit - AuthoringElement","doc":"• **onsubmit**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `SubmitEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onsubmit\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5773\n\n___","ref":"authoringelement.html#onsubmit"},{"type":"extras","title":"onsuspend - AuthoringElement","doc":"• **onsuspend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs if the load operation has been intentionally halted.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onsuspend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5778\n\n___","ref":"authoringelement.html#onsuspend"},{"type":"extras","title":"ontimeupdate - AuthoringElement","doc":"• **ontimeupdate**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs to indicate the current playback position.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ontimeupdate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5783\n\n___","ref":"authoringelement.html#ontimeupdate"},{"type":"extras","title":"ontoggle - AuthoringElement","doc":"• **ontoggle**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontoggle\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5784\n\n___","ref":"authoringelement.html#ontoggle"},{"type":"extras","title":"ontouchcancel - AuthoringElement","doc":"• `Optional` **ontouchcancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchcancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5785\n\n___","ref":"authoringelement.html#ontouchcancel"},{"type":"extras","title":"ontouchend - AuthoringElement","doc":"• `Optional` **ontouchend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5786\n\n___","ref":"authoringelement.html#ontouchend"},{"type":"extras","title":"ontouchmove - AuthoringElement","doc":"• `Optional` **ontouchmove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchmove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5787\n\n___","ref":"authoringelement.html#ontouchmove"},{"type":"extras","title":"ontouchstart - AuthoringElement","doc":"• `Optional` **ontouchstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5788\n\n___","ref":"authoringelement.html#ontouchstart"},{"type":"extras","title":"ontransitioncancel - AuthoringElement","doc":"• **ontransitioncancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitioncancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5789\n\n___","ref":"authoringelement.html#ontransitioncancel"},{"type":"extras","title":"ontransitionend - AuthoringElement","doc":"• **ontransitionend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5790\n\n___","ref":"authoringelement.html#ontransitionend"},{"type":"extras","title":"ontransitionrun - AuthoringElement","doc":"• **ontransitionrun**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionrun\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5791\n\n___","ref":"authoringelement.html#ontransitionrun"},{"type":"extras","title":"ontransitionstart - AuthoringElement","doc":"• **ontransitionstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5792\n\n___","ref":"authoringelement.html#ontransitionstart"},{"type":"extras","title":"onvolumechange - AuthoringElement","doc":"• **onvolumechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the volume is changed, or playback is muted or unmuted.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onvolumechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5797\n\n___","ref":"authoringelement.html#onvolumechange"},{"type":"extras","title":"onwaiting - AuthoringElement","doc":"• **onwaiting**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback stops because the next frame of a video resource is not available.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onwaiting\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5802\n\n___","ref":"authoringelement.html#onwaiting"},{"type":"extras","title":"onwebkitanimationend - AuthoringElement","doc":"• **onwebkitanimationend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationend`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5804\n\n___","ref":"authoringelement.html#onwebkitanimationend"},{"type":"extras","title":"onwebkitanimationiteration - AuthoringElement","doc":"• **onwebkitanimationiteration**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationiteration`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationiteration\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5806\n\n___","ref":"authoringelement.html#onwebkitanimationiteration"},{"type":"extras","title":"onwebkitanimationstart - AuthoringElement","doc":"• **onwebkitanimationstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationstart`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5808\n\n___","ref":"authoringelement.html#onwebkitanimationstart"},{"type":"extras","title":"onwebkittransitionend - AuthoringElement","doc":"• **onwebkittransitionend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `ontransitionend`.\n\n#### Inherited from\n\nHTMLElement.onwebkittransitionend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5810\n\n___","ref":"authoringelement.html#onwebkittransitionend"},{"type":"extras","title":"onwheel - AuthoringElement","doc":"• **onwheel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `WheelEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onwheel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5811\n\n___","ref":"authoringelement.html#onwheel"},{"type":"extras","title":"outerHTML - AuthoringElement","doc":"• **outerHTML**: `string`\n\n#### Inherited from\n\nHTMLElement.outerHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4785\n\n___","ref":"authoringelement.html#outerhtml"},{"type":"extras","title":"outerText - AuthoringElement","doc":"• **outerText**: `string`\n\n#### Inherited from\n\nHTMLElement.outerText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6236\n\n___","ref":"authoringelement.html#outertext"},{"type":"extras","title":"ownerDocument - AuthoringElement","doc":"• `Readonly` **ownerDocument**: `Document`\n\n#### Inherited from\n\nHTMLElement.ownerDocument\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4786\n\n___","ref":"authoringelement.html#ownerdocument"},{"type":"extras","title":"parentElement - AuthoringElement","doc":"• `Readonly` **parentElement**: ``null`` \\| `HTMLElement`\n\nReturns the parent element.\n\n#### Inherited from\n\nHTMLElement.parentElement\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9794\n\n___","ref":"authoringelement.html#parentelement"},{"type":"extras","title":"parentNode - AuthoringElement","doc":"• `Readonly` **parentNode**: ``null`` \\| `ParentNode`\n\nReturns the parent.\n\n#### Inherited from\n\nHTMLElement.parentNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9796\n\n___","ref":"authoringelement.html#parentnode"},{"type":"extras","title":"part - AuthoringElement","doc":"• `Readonly` **part**: `DOMTokenList`\n\n#### Inherited from\n\nHTMLElement.part\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4787\n\n___","ref":"authoringelement.html#part"},{"type":"extras","title":"prefix - AuthoringElement","doc":"• `Readonly` **prefix**: ``null`` \\| `string`\n\nReturns the namespace prefix.\n\n#### Inherited from\n\nHTMLElement.prefix\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4789\n\n___","ref":"authoringelement.html#prefix"},{"type":"extras","title":"previousElementSibling - AuthoringElement","doc":"• `Readonly` **previousElementSibling**: ``null`` \\| `Element`\n\nReturns the first preceding sibling that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.previousElementSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9944\n\n___","ref":"authoringelement.html#previouselementsibling"},{"type":"extras","title":"previousSibling - AuthoringElement","doc":"• `Readonly` **previousSibling**: ``null`` \\| `ChildNode`\n\nReturns the previous sibling.\n\n#### Inherited from\n\nHTMLElement.previousSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9798\n\n___","ref":"authoringelement.html#previoussibling"},{"type":"extras","title":"scrollHeight - AuthoringElement","doc":"• `Readonly` **scrollHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4790\n\n___","ref":"authoringelement.html#scrollheight"},{"type":"extras","title":"scrollLeft - AuthoringElement","doc":"• **scrollLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4791\n\n___","ref":"authoringelement.html#scrollleft"},{"type":"extras","title":"scrollTop - AuthoringElement","doc":"• **scrollTop**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4792\n\n___","ref":"authoringelement.html#scrolltop"},{"type":"extras","title":"scrollWidth - AuthoringElement","doc":"• `Readonly` **scrollWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4793\n\n___","ref":"authoringelement.html#scrollwidth"},{"type":"extras","title":"shadowRoot - AuthoringElement","doc":"• `Readonly` **shadowRoot**: ``null`` \\| `ShadowRoot`\n\nReturns element's shadow root, if any, and if shadow root's mode is \"open\", and null otherwise.\n\n#### Inherited from\n\nHTMLElement.shadowRoot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4795\n\n___","ref":"authoringelement.html#shadowroot"},{"type":"extras","title":"slot - AuthoringElement","doc":"• **slot**: `string`\n\nReturns the value of element's slot content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.slot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4797\n\n___","ref":"authoringelement.html#slot"},{"type":"extras","title":"spellcheck - AuthoringElement","doc":"• **spellcheck**: `boolean`\n\n#### Inherited from\n\nHTMLElement.spellcheck\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6237\n\n___","ref":"authoringelement.html#spellcheck"},{"type":"extras","title":"style - AuthoringElement","doc":"• `Readonly` **style**: `CSSStyleDeclaration`\n\n#### Inherited from\n\nHTMLElement.style\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4883\n\n___","ref":"authoringelement.html#style"},{"type":"extras","title":"tabIndex - AuthoringElement","doc":"• **tabIndex**: `number`\n\n#### Inherited from\n\nHTMLElement.tabIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7430\n\n___","ref":"authoringelement.html#tabindex"},{"type":"extras","title":"tagName - AuthoringElement","doc":"• `Readonly` **tagName**: `string`\n\nReturns the HTML-uppercased qualified name.\n\n#### Inherited from\n\nHTMLElement.tagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4799\n\n___","ref":"authoringelement.html#tagname"},{"type":"extras","title":"textContent - AuthoringElement","doc":"• **textContent**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.textContent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9799\n\n___","ref":"authoringelement.html#textcontent"},{"type":"extras","title":"title - AuthoringElement","doc":"• **title**: `string`\n\n#### Inherited from\n\nHTMLElement.title\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6238\n\n___","ref":"authoringelement.html#title"},{"type":"extras","title":"translate - AuthoringElement","doc":"• **translate**: `boolean`\n\n#### Inherited from\n\nHTMLElement.translate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6239\n\n___","ref":"authoringelement.html#translate"},{"type":"extras","title":"observedAttributes - AuthoringElement","doc":"▪ `Static` **observedAttributes**: `string`[]\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:182](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L182)","ref":"authoringelement.html#observedattributes"},{"type":"extras","title":"Methods - AuthoringElement","doc":"","ref":"authoringelement.html#methods"},{"type":"extras","title":"addEventListener - AuthoringElement","doc":"▸ **addEventListener**<`K`\\>(`type`, `listener`, `options?`): `void`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementEventMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `K` |\n| `listener` | (`this`: `HTMLElement`, `ev`: `HTMLElementEventMap`[`K`]) => `any` |\n| `options?` | `boolean` \\| `AddEventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.addEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6242\n\n▸ **addEventListener**(`type`, `listener`, `options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `string` |\n| `listener` | `EventListenerOrEventListenerObject` |\n| `options?` | `boolean` \\| `AddEventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.addEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6243\n\n___","ref":"authoringelement.html#addeventlistener"},{"type":"extras","title":"after - AuthoringElement","doc":"▸ **after**(...`nodes`): `void`\n\nInserts nodes just after node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.after\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3497\n\n___","ref":"authoringelement.html#after"},{"type":"extras","title":"animate - AuthoringElement","doc":"▸ **animate**(`keyframes`, `options?`): `Animation`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `keyframes` | ``null`` \\| `Keyframe`[] \\| `PropertyIndexedKeyframes` |\n| `options?` | `number` \\| `KeyframeAnimationOptions` |\n\n#### Returns\n\n`Animation`\n\n#### Inherited from\n\nHTMLElement.animate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1978\n\n___","ref":"authoringelement.html#animate"},{"type":"extras","title":"append - AuthoringElement","doc":"▸ **append**(...`nodes`): `void`\n\nInserts nodes after the last child of node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.append\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10152\n\n___","ref":"authoringelement.html#append"},{"type":"extras","title":"appendChild - AuthoringElement","doc":"▸ **appendChild**<`T`\\>(`node`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.appendChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9800\n\n___","ref":"authoringelement.html#appendchild"},{"type":"extras","title":"attachInternals - AuthoringElement","doc":"▸ **attachInternals**(): `ElementInternals`\n\n#### Returns\n\n`ElementInternals`\n\n#### Inherited from\n\nHTMLElement.attachInternals\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6240\n\n___","ref":"authoringelement.html#attachinternals"},{"type":"extras","title":"attachShadow - AuthoringElement","doc":"▸ **attachShadow**(`init`): `ShadowRoot`\n\nCreates a shadow root for element and returns it.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `init` | `ShadowRootInit` |\n\n#### Returns\n\n`ShadowRoot`\n\n#### Inherited from\n\nHTMLElement.attachShadow\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4801\n\n___","ref":"authoringelement.html#attachshadow"},{"type":"extras","title":"attributeChangedCallback - AuthoringElement","doc":"▸ **attributeChangedCallback**(`_name`, `_oldValue`, `_newValue`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `_name` | `any` |\n| `_oldValue` | `any` |\n| `_newValue` | `any` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:175](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L175)\n\n___","ref":"authoringelement.html#attributechangedcallback"},{"type":"extras","title":"before - AuthoringElement","doc":"▸ **before**(...`nodes`): `void`\n\nInserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.before\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3503\n\n___","ref":"authoringelement.html#before"},{"type":"extras","title":"blur - AuthoringElement","doc":"▸ **blur**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.blur\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7431\n\n___","ref":"authoringelement.html#blur"},{"type":"extras","title":"click - AuthoringElement","doc":"▸ **click**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.click\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6241\n\n___","ref":"authoringelement.html#click"},{"type":"extras","title":"cloneNode - AuthoringElement","doc":"▸ **cloneNode**(`deep?`): `Node`\n\nReturns a copy of node. If deep is true, the copy also includes the node's descendants.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `deep?` | `boolean` |\n\n#### Returns\n\n`Node`\n\n#### Inherited from\n\nHTMLElement.cloneNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9802\n\n___","ref":"authoringelement.html#clonenode"},{"type":"extras","title":"closest - AuthoringElement","doc":"▸ **closest**<`K`\\>(`selector`): ``null`` \\| `HTMLElementTagNameMap`[`K`]\n\nReturns the first (starting at element) inclusive ancestor that matches selectors, and null otherwise.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selector` | `K` |\n\n#### Returns\n\n``null`` \\| `HTMLElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4803\n\n▸ **closest**<`K`\\>(`selector`): ``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selector` | `K` |\n\n#### Returns\n\n``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4804\n\n▸ **closest**<`E`\\>(`selectors`): ``null`` \\| `E`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n``null`` \\| `E`\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4805\n\n___","ref":"authoringelement.html#closest"},{"type":"extras","title":"compareDocumentPosition - AuthoringElement","doc":"▸ **compareDocumentPosition**(`other`): `number`\n\nReturns a bitmask indicating the position of other relative to node.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `other` | `Node` |\n\n#### Returns\n\n`number`\n\n#### Inherited from\n\nHTMLElement.compareDocumentPosition\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9804\n\n___","ref":"authoringelement.html#comparedocumentposition"},{"type":"extras","title":"connectedCallback - AuthoringElement","doc":"▸ **connectedCallback**(): `void`\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:169](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L169)\n\n___","ref":"authoringelement.html#connectedcallback"},{"type":"extras","title":"contains - AuthoringElement","doc":"▸ **contains**(`other`): `boolean`\n\nReturns true if other is an inclusive descendant of node, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `other` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.contains\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9806\n\n___","ref":"authoringelement.html#contains"},{"type":"extras","title":"details - AuthoringElement","doc":"▸ **details**(`continuation`, `payload?`): `Object`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `continuation` | (`result`: `any`, `error`: `any`) => `void` |\n| `payload?` | `any` |\n\n#### Returns\n\n`Object`\n\n| Name | Type |\n| :------ | :------ |\n| `bubbles` | `boolean` |\n| `composed` | `boolean` |\n| `detail` | { `continuation`: (`result`: `any`, `error`: `any`) => `void` ; `payload`: `any` ; `props`: [`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> & [`SectionAuthoringProps`](../interfaces/SectionAuthoringProps.md) } |\n| `detail.continuation` | (`result`: `any`, `error`: `any`) => `void` |\n| `detail.payload` | `any` |\n| `detail.props` | [`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> & [`SectionAuthoringProps`](../interfaces/SectionAuthoringProps.md) |\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:129](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L129)\n\n___","ref":"authoringelement.html#details"},{"type":"extras","title":"dispatch - AuthoringElement","doc":"▸ **dispatch**(`name`, `payload?`): `Promise`<`any`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `name` | `string` |\n| `payload?` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:141](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L141)\n\n___","ref":"authoringelement.html#dispatch"},{"type":"extras","title":"dispatchEvent - AuthoringElement","doc":"▸ **dispatchEvent**(`event`): `boolean`\n\nDispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `event` | `Event` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.dispatchEvent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5033\n\n___","ref":"authoringelement.html#dispatchevent"},{"type":"extras","title":"focus - AuthoringElement","doc":"▸ **focus**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `FocusOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.focus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7432\n\n___","ref":"authoringelement.html#focus"},{"type":"extras","title":"getAnimations - AuthoringElement","doc":"▸ **getAnimations**(`options?`): `Animation`[]\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `GetAnimationsOptions` |\n\n#### Returns\n\n`Animation`[]\n\n#### Inherited from\n\nHTMLElement.getAnimations\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1979\n\n___","ref":"authoringelement.html#getanimations"},{"type":"extras","title":"getAttribute - AuthoringElement","doc":"▸ **getAttribute**(`qualifiedName`): ``null`` \\| `string`\n\nReturns element's first attribute whose qualified name is qualifiedName, and null if there is no such attribute otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.getAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4807\n\n___","ref":"authoringelement.html#getattribute"},{"type":"extras","title":"getAttributeNS - AuthoringElement","doc":"▸ **getAttributeNS**(`namespace`, `localName`): ``null`` \\| `string`\n\nReturns element's attribute whose namespace is namespace and local name is localName, and null if there is no such attribute otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.getAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4809\n\n___","ref":"authoringelement.html#getattributens"},{"type":"extras","title":"getAttributeNames - AuthoringElement","doc":"▸ **getAttributeNames**(): `string`[]\n\nReturns the qualified names of all element's attributes. Can contain duplicates.\n\n#### Returns\n\n`string`[]\n\n#### Inherited from\n\nHTMLElement.getAttributeNames\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4811\n\n___","ref":"authoringelement.html#getattributenames"},{"type":"extras","title":"getAttributeNode - AuthoringElement","doc":"▸ **getAttributeNode**(`qualifiedName`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.getAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4812\n\n___","ref":"authoringelement.html#getattributenode"},{"type":"extras","title":"getAttributeNodeNS - AuthoringElement","doc":"▸ **getAttributeNodeNS**(`namespace`, `localName`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.getAttributeNodeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4813\n\n___","ref":"authoringelement.html#getattributenodens"},{"type":"extras","title":"getBoundingClientRect - AuthoringElement","doc":"▸ **getBoundingClientRect**(): `DOMRect`\n\n#### Returns\n\n`DOMRect`\n\n#### Inherited from\n\nHTMLElement.getBoundingClientRect\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4814\n\n___","ref":"authoringelement.html#getboundingclientrect"},{"type":"extras","title":"getClientRects - AuthoringElement","doc":"▸ **getClientRects**(): `DOMRectList`\n\n#### Returns\n\n`DOMRectList`\n\n#### Inherited from\n\nHTMLElement.getClientRects\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4815\n\n___","ref":"authoringelement.html#getclientrects"},{"type":"extras","title":"getElementsByClassName - AuthoringElement","doc":"▸ **getElementsByClassName**(`classNames`): `HTMLCollectionOf`<`Element`\\>\n\nReturns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `classNames` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByClassName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4817\n\n___","ref":"authoringelement.html#getelementsbyclassname"},{"type":"extras","title":"getElementsByTagName - AuthoringElement","doc":"▸ **getElementsByTagName**<`K`\\>(`qualifiedName`): `HTMLCollectionOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `K` |\n\n#### Returns\n\n`HTMLCollectionOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4818\n\n▸ **getElementsByTagName**<`K`\\>(`qualifiedName`): `HTMLCollectionOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `K` |\n\n#### Returns\n\n`HTMLCollectionOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4819\n\n▸ **getElementsByTagName**(`qualifiedName`): `HTMLCollectionOf`<`Element`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4820\n\n___","ref":"authoringelement.html#getelementsbytagname"},{"type":"extras","title":"getElementsByTagNameNS - AuthoringElement","doc":"▸ **getElementsByTagNameNS**(`namespaceURI`, `localName`): `HTMLCollectionOf`<`HTMLElement`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespaceURI` | ``\"http://www.w3.org/1999/xhtml\"`` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`HTMLElement`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4821\n\n▸ **getElementsByTagNameNS**(`namespaceURI`, `localName`): `HTMLCollectionOf`<`SVGElement`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespaceURI` | ``\"http://www.w3.org/2000/svg\"`` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`SVGElement`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4822\n\n▸ **getElementsByTagNameNS**(`namespace`, `localName`): `HTMLCollectionOf`<`Element`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4823\n\n___","ref":"authoringelement.html#getelementsbytagnamens"},{"type":"extras","title":"getRootNode - AuthoringElement","doc":"▸ **getRootNode**(`options?`): `Node`\n\nReturns node's root.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `GetRootNodeOptions` |\n\n#### Returns\n\n`Node`\n\n#### Inherited from\n\nHTMLElement.getRootNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9808\n\n___","ref":"authoringelement.html#getrootnode"},{"type":"extras","title":"hasAttribute - AuthoringElement","doc":"▸ **hasAttribute**(`qualifiedName`): `boolean`\n\nReturns true if element has an attribute whose qualified name is qualifiedName, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4825\n\n___","ref":"authoringelement.html#hasattribute"},{"type":"extras","title":"hasAttributeNS - AuthoringElement","doc":"▸ **hasAttributeNS**(`namespace`, `localName`): `boolean`\n\nReturns true if element has an attribute whose namespace is namespace and local name is localName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4827\n\n___","ref":"authoringelement.html#hasattributens"},{"type":"extras","title":"hasAttributes - AuthoringElement","doc":"▸ **hasAttributes**(): `boolean`\n\nReturns true if element has attributes, and false otherwise.\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttributes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4829\n\n___","ref":"authoringelement.html#hasattributes"},{"type":"extras","title":"hasChildNodes - AuthoringElement","doc":"▸ **hasChildNodes**(): `boolean`\n\nReturns whether node has children.\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasChildNodes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9810\n\n___","ref":"authoringelement.html#haschildnodes"},{"type":"extras","title":"hasPointerCapture - AuthoringElement","doc":"▸ **hasPointerCapture**(`pointerId`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasPointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4830\n\n___","ref":"authoringelement.html#haspointercapture"},{"type":"extras","title":"insertAdjacentElement - AuthoringElement","doc":"▸ **insertAdjacentElement**(`where`, `element`): ``null`` \\| `Element`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `where` | `InsertPosition` |\n| `element` | `Element` |\n\n#### Returns\n\n``null`` \\| `Element`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentElement\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4831\n\n___","ref":"authoringelement.html#insertadjacentelement"},{"type":"extras","title":"insertAdjacentHTML - AuthoringElement","doc":"▸ **insertAdjacentHTML**(`position`, `text`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `position` | `InsertPosition` |\n| `text` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4832\n\n___","ref":"authoringelement.html#insertadjacenthtml"},{"type":"extras","title":"insertAdjacentText - AuthoringElement","doc":"▸ **insertAdjacentText**(`where`, `data`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `where` | `InsertPosition` |\n| `data` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4833\n\n___","ref":"authoringelement.html#insertadjacenttext"},{"type":"extras","title":"insertBefore - AuthoringElement","doc":"▸ **insertBefore**<`T`\\>(`node`, `child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `T` |\n| `child` | ``null`` \\| `Node` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.insertBefore\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9811\n\n___","ref":"authoringelement.html#insertbefore"},{"type":"extras","title":"isDefaultNamespace - AuthoringElement","doc":"▸ **isDefaultNamespace**(`namespace`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isDefaultNamespace\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9812\n\n___","ref":"authoringelement.html#isdefaultnamespace"},{"type":"extras","title":"isEqualNode - AuthoringElement","doc":"▸ **isEqualNode**(`otherNode`): `boolean`\n\nReturns whether node and otherNode have the same properties.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `otherNode` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isEqualNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9814\n\n___","ref":"authoringelement.html#isequalnode"},{"type":"extras","title":"isSameNode - AuthoringElement","doc":"▸ **isSameNode**(`otherNode`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `otherNode` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isSameNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9815\n\n___","ref":"authoringelement.html#issamenode"},{"type":"extras","title":"lookupNamespaceURI - AuthoringElement","doc":"▸ **lookupNamespaceURI**(`prefix`): ``null`` \\| `string`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `prefix` | ``null`` \\| `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.lookupNamespaceURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9816\n\n___","ref":"authoringelement.html#lookupnamespaceuri"},{"type":"extras","title":"lookupPrefix - AuthoringElement","doc":"▸ **lookupPrefix**(`namespace`): ``null`` \\| `string`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.lookupPrefix\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9817\n\n___","ref":"authoringelement.html#lookupprefix"},{"type":"extras","title":"matches - AuthoringElement","doc":"▸ **matches**(`selectors`): `boolean`\n\nReturns true if matching selectors against element's root yields element, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.matches\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4835\n\n___","ref":"authoringelement.html#matches"},{"type":"extras","title":"migrateModelVersion - AuthoringElement","doc":"▸ **migrateModelVersion**(`model`): `T`\n\nAllows for an activity to perform an inline, just in time, model migration. As an activity's\nimplementation changes over time, it may become necessary to make structural changes to the\nschema of the activity's model. The activity will need to support the original versions of this\nmodel, however, as there will likely have been many instances of this original model already\ncreated and stored in the Torus database.\n\nThe `migrateModelVersion` function will be called by the component just before each call to `render`.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `model` | `any` | the state of the model of the activity, as deliveredy by Torus to this activity |\n\n#### Returns\n\n`T`\n\na possibly migrated (i.e. upgraded) activity model, or the model as-is if no\nmigration is needed\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:125](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L125)\n\n___","ref":"authoringelement.html#migratemodelversion"},{"type":"extras","title":"normalize - AuthoringElement","doc":"▸ **normalize**(): `void`\n\nRemoves empty exclusive Text nodes and concatenates the data of remaining contiguous exclusive Text nodes into the first of their nodes.\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.normalize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9819\n\n___","ref":"authoringelement.html#normalize"},{"type":"extras","title":"notify - AuthoringElement","doc":"▸ **notify**(`eventName`, `payload`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `eventName` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:154](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L154)\n\n___","ref":"authoringelement.html#notify"},{"type":"extras","title":"prepend - AuthoringElement","doc":"▸ **prepend**(...`nodes`): `void`\n\nInserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.prepend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10158\n\n___","ref":"authoringelement.html#prepend"},{"type":"extras","title":"props - AuthoringElement","doc":"▸ **props**(): [`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> & [`SectionAuthoringProps`](../interfaces/SectionAuthoringProps.md)\n\n#### Returns\n\n[`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> & [`SectionAuthoringProps`](../interfaces/SectionAuthoringProps.md)\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:67](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L67)\n\n___","ref":"authoringelement.html#props"},{"type":"extras","title":"querySelector - AuthoringElement","doc":"▸ **querySelector**<`K`\\>(`selectors`): ``null`` \\| `HTMLElementTagNameMap`[`K`]\n\nReturns the first element that is a descendant of node that matches selectors.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n``null`` \\| `HTMLElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10160\n\n▸ **querySelector**<`K`\\>(`selectors`): ``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10161\n\n▸ **querySelector**<`E`\\>(`selectors`): ``null`` \\| `E`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n``null`` \\| `E`\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10162\n\n___","ref":"authoringelement.html#queryselector"},{"type":"extras","title":"querySelectorAll - AuthoringElement","doc":"▸ **querySelectorAll**<`K`\\>(`selectors`): `NodeListOf`<`HTMLElementTagNameMap`[`K`]\\>\n\nReturns all element descendants of node that match selectors.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n`NodeListOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10164\n\n▸ **querySelectorAll**<`K`\\>(`selectors`): `NodeListOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n`NodeListOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10165\n\n▸ **querySelectorAll**<`E`\\>(`selectors`): `NodeListOf`<`E`\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`NodeListOf`<`E`\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10166\n\n___","ref":"authoringelement.html#queryselectorall"},{"type":"extras","title":"releasePointerCapture - AuthoringElement","doc":"▸ **releasePointerCapture**(`pointerId`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.releasePointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4836\n\n___","ref":"authoringelement.html#releasepointercapture"},{"type":"extras","title":"remove - AuthoringElement","doc":"▸ **remove**(): `void`\n\nRemoves node.\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.remove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3505\n\n___","ref":"authoringelement.html#remove"},{"type":"extras","title":"removeAttribute - AuthoringElement","doc":"▸ **removeAttribute**(`qualifiedName`): `void`\n\nRemoves element's first attribute whose qualified name is qualifiedName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4838\n\n___","ref":"authoringelement.html#removeattribute"},{"type":"extras","title":"removeAttributeNS - AuthoringElement","doc":"▸ **removeAttributeNS**(`namespace`, `localName`): `void`\n\nRemoves element's attribute whose namespace is namespace and local name is localName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4840\n\n___","ref":"authoringelement.html#removeattributens"},{"type":"extras","title":"removeAttributeNode - AuthoringElement","doc":"▸ **removeAttributeNode**(`attr`): `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n`Attr`\n\n#### Inherited from\n\nHTMLElement.removeAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4841\n\n___","ref":"authoringelement.html#removeattributenode"},{"type":"extras","title":"removeChild - AuthoringElement","doc":"▸ **removeChild**<`T`\\>(`child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `child` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.removeChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9820\n\n___","ref":"authoringelement.html#removechild"},{"type":"extras","title":"removeEventListener - AuthoringElement","doc":"▸ **removeEventListener**<`K`\\>(`type`, `listener`, `options?`): `void`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementEventMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `K` |\n| `listener` | (`this`: `HTMLElement`, `ev`: `HTMLElementEventMap`[`K`]) => `any` |\n| `options?` | `boolean` \\| `EventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6244\n\n▸ **removeEventListener**(`type`, `listener`, `options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `string` |\n| `listener` | `EventListenerOrEventListenerObject` |\n| `options?` | `boolean` \\| `EventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6245\n\n___","ref":"authoringelement.html#removeeventlistener"},{"type":"extras","title":"render - AuthoringElement","doc":"▸ `Abstract` **render**(`mountPoint`, `props`): `void`\n\nImplemented by concrete web component, the `render` method is called\nonce after the web component has been mounted and \"connected\" to the DOM, and\nthen again every time that either the `editMode` or `model` attributes have\nchanged on the web component.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `mountPoint` | `HTMLDivElement` | a top level div element created by the component that the concrete impl can use to render the rest of the actual UX |\n| `props` | [`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> | the current set of authoring component properties |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:167](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/AuthoringElement.ts#L167)\n\n___","ref":"authoringelement.html#render"},{"type":"extras","title":"replaceChild - AuthoringElement","doc":"▸ **replaceChild**<`T`\\>(`node`, `child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `Node` |\n| `child` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.replaceChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9821\n\n___","ref":"authoringelement.html#replacechild"},{"type":"extras","title":"replaceChildren - AuthoringElement","doc":"▸ **replaceChildren**(...`nodes`): `void`\n\nReplace all children of node with nodes, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.replaceChildren\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10172\n\n___","ref":"authoringelement.html#replacechildren"},{"type":"extras","title":"replaceWith - AuthoringElement","doc":"▸ **replaceWith**(...`nodes`): `void`\n\nReplaces node with nodes, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.replaceWith\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3511\n\n___","ref":"authoringelement.html#replacewith"},{"type":"extras","title":"requestFullscreen - AuthoringElement","doc":"▸ **requestFullscreen**(`options?`): `Promise`<`void`\\>\n\nDisplays element fullscreen and resolves promise when done.\n\nWhen supplied, options's navigationUI member indicates whether showing navigation UI while in fullscreen is preferred or not. If set to \"show\", navigation simplicity is preferred over screen space, and if set to \"hide\", more screen space is preferred. User agents are always free to honor user preference over the application's. The default value \"auto\" indicates no application preference.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `FullscreenOptions` |\n\n#### Returns\n\n`Promise`<`void`\\>\n\n#### Inherited from\n\nHTMLElement.requestFullscreen\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4847\n\n___","ref":"authoringelement.html#requestfullscreen"},{"type":"extras","title":"requestPointerLock - AuthoringElement","doc":"▸ **requestPointerLock**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.requestPointerLock\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4848\n\n___","ref":"authoringelement.html#requestpointerlock"},{"type":"extras","title":"scroll - AuthoringElement","doc":"▸ **scroll**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4849\n\n▸ **scroll**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4850\n\n___","ref":"authoringelement.html#scroll"},{"type":"extras","title":"scrollBy - AuthoringElement","doc":"▸ **scrollBy**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollBy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4851\n\n▸ **scrollBy**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollBy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4852\n\n___","ref":"authoringelement.html#scrollby"},{"type":"extras","title":"scrollIntoView - AuthoringElement","doc":"▸ **scrollIntoView**(`arg?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `arg?` | `boolean` \\| `ScrollIntoViewOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollIntoView\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4853\n\n___","ref":"authoringelement.html#scrollintoview"},{"type":"extras","title":"scrollTo - AuthoringElement","doc":"▸ **scrollTo**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollTo\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4854\n\n▸ **scrollTo**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollTo\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4855\n\n___","ref":"authoringelement.html#scrollto"},{"type":"extras","title":"setAttribute - AuthoringElement","doc":"▸ **setAttribute**(`qualifiedName`, `value`): `void`\n\nSets the value of element's first attribute whose qualified name is qualifiedName to value.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n| `value` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4857\n\n___","ref":"authoringelement.html#setattribute"},{"type":"extras","title":"setAttributeNS - AuthoringElement","doc":"▸ **setAttributeNS**(`namespace`, `qualifiedName`, `value`): `void`\n\nSets the value of element's attribute whose namespace is namespace and local name is localName to value.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `qualifiedName` | `string` |\n| `value` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4859\n\n___","ref":"authoringelement.html#setattributens"},{"type":"extras","title":"setAttributeNode - AuthoringElement","doc":"▸ **setAttributeNode**(`attr`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.setAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4860\n\n___","ref":"authoringelement.html#setattributenode"},{"type":"extras","title":"setAttributeNodeNS - AuthoringElement","doc":"▸ **setAttributeNodeNS**(`attr`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.setAttributeNodeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4861\n\n___","ref":"authoringelement.html#setattributenodens"},{"type":"extras","title":"setPointerCapture - AuthoringElement","doc":"▸ **setPointerCapture**(`pointerId`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setPointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4862\n\n___","ref":"authoringelement.html#setpointercapture"},{"type":"extras","title":"toggleAttribute - AuthoringElement","doc":"▸ **toggleAttribute**(`qualifiedName`, `force?`): `boolean`\n\nIf force is not given, \"toggles\" qualifiedName, removing it if it is present and adding it if it is not present. If force is true, adds qualifiedName. If force is false, removes qualifiedName.\n\nReturns true if qualifiedName is now present, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n| `force?` | `boolean` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.toggleAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4868\n\n___","ref":"authoringelement.html#toggleattribute"},{"type":"extras","title":"webkitMatchesSelector - AuthoringElement","doc":"▸ **webkitMatchesSelector**(`selectors`): `boolean`\n\n**`deprecated`** This is a legacy alias of `matches`.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.webkitMatchesSelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4870","ref":"authoringelement.html#webkitmatchesselector"},{"type":"extras","title":"DeliveryElement","doc":"[oli](../README.md) / [Exports](../modules.md) / DeliveryElement\n\n# Class: DeliveryElement \n\nAn abstract delivery web component, designed to delegate rendering\nvia the `render` method. This delivery web component will re-render\nwhen the 'model' attribute of the the web component changes. It also provides\nseveral callback function to allow the concrete implementation to initiate\nlifecycle events (e.g. request a hint, reset an attempt, etc).\n\nWhile the delegated implementation is a React component in the case of natively\nimplemented activities, this does not need to be the case. This `DeliveryElement`\nimplementation is tech-stack agnostic. One can use it to implement the authoring\ncomponent of a Torus activity in Vanilla JS, React, Vue, Angular, etc.\n\n```typescript\n// A typical React delegation\nexport class MultipleChoiceDelivery extends DeliveryElement {\n render(mountPoint: HTMLDivElement, props: DeliveryElementProps ) {\n const store = configureStore({}, activityDeliverySlice.reducer);\n ReactDOM.render(\n \n \n \n \n ,\n mountPoint,\n );\n }\n }\n```","ref":"deliveryelement.html"},{"type":"extras","title":"Type parameters - DeliveryElement","doc":"| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](../interfaces/ActivityModelSchema.md) |","ref":"deliveryelement.html#type-parameters"},{"type":"extras","title":"Hierarchy - DeliveryElement","doc":"- `HTMLElement`\n\n ↳ **`DeliveryElement`**","ref":"deliveryelement.html#hierarchy"},{"type":"extras","title":"Table of contents - DeliveryElement","doc":"","ref":"deliveryelement.html#table-of-contents"},{"type":"extras","title":"Constructors - DeliveryElement","doc":"- [constructor](DeliveryElement.md#constructor)","ref":"deliveryelement.html#constructors"},{"type":"extras","title":"Properties - DeliveryElement","doc":"- [ATTRIBUTE\\_NODE](DeliveryElement.md#attribute_node)\n- [CDATA\\_SECTION\\_NODE](DeliveryElement.md#cdata_section_node)\n- [COMMENT\\_NODE](DeliveryElement.md#comment_node)\n- [DOCUMENT\\_FRAGMENT\\_NODE](DeliveryElement.md#document_fragment_node)\n- [DOCUMENT\\_NODE](DeliveryElement.md#document_node)\n- [DOCUMENT\\_POSITION\\_CONTAINED\\_BY](DeliveryElement.md#document_position_contained_by)\n- [DOCUMENT\\_POSITION\\_CONTAINS](DeliveryElement.md#document_position_contains)\n- [DOCUMENT\\_POSITION\\_DISCONNECTED](DeliveryElement.md#document_position_disconnected)\n- [DOCUMENT\\_POSITION\\_FOLLOWING](DeliveryElement.md#document_position_following)\n- [DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC](DeliveryElement.md#document_position_implementation_specific)\n- [DOCUMENT\\_POSITION\\_PRECEDING](DeliveryElement.md#document_position_preceding)\n- [DOCUMENT\\_TYPE\\_NODE](DeliveryElement.md#document_type_node)\n- [ELEMENT\\_NODE](DeliveryElement.md#element_node)\n- [ENTITY\\_NODE](DeliveryElement.md#entity_node)\n- [ENTITY\\_REFERENCE\\_NODE](DeliveryElement.md#entity_reference_node)\n- [NOTATION\\_NODE](DeliveryElement.md#notation_node)\n- [PROCESSING\\_INSTRUCTION\\_NODE](DeliveryElement.md#processing_instruction_node)\n- [TEXT\\_NODE](DeliveryElement.md#text_node)\n- [\\_notify](DeliveryElement.md#_notify)\n- [accessKey](DeliveryElement.md#accesskey)\n- [accessKeyLabel](DeliveryElement.md#accesskeylabel)\n- [ariaAtomic](DeliveryElement.md#ariaatomic)\n- [ariaAutoComplete](DeliveryElement.md#ariaautocomplete)\n- [ariaBusy](DeliveryElement.md#ariabusy)\n- [ariaChecked](DeliveryElement.md#ariachecked)\n- [ariaColCount](DeliveryElement.md#ariacolcount)\n- [ariaColIndex](DeliveryElement.md#ariacolindex)\n- [ariaColSpan](DeliveryElement.md#ariacolspan)\n- [ariaCurrent](DeliveryElement.md#ariacurrent)\n- [ariaDisabled](DeliveryElement.md#ariadisabled)\n- [ariaExpanded](DeliveryElement.md#ariaexpanded)\n- [ariaHasPopup](DeliveryElement.md#ariahaspopup)\n- [ariaHidden](DeliveryElement.md#ariahidden)\n- [ariaKeyShortcuts](DeliveryElement.md#ariakeyshortcuts)\n- [ariaLabel](DeliveryElement.md#arialabel)\n- [ariaLevel](DeliveryElement.md#arialevel)\n- [ariaLive](DeliveryElement.md#arialive)\n- [ariaModal](DeliveryElement.md#ariamodal)\n- [ariaMultiLine](DeliveryElement.md#ariamultiline)\n- [ariaMultiSelectable](DeliveryElement.md#ariamultiselectable)\n- [ariaOrientation](DeliveryElement.md#ariaorientation)\n- [ariaPlaceholder](DeliveryElement.md#ariaplaceholder)\n- [ariaPosInSet](DeliveryElement.md#ariaposinset)\n- [ariaPressed](DeliveryElement.md#ariapressed)\n- [ariaReadOnly](DeliveryElement.md#ariareadonly)\n- [ariaRequired](DeliveryElement.md#ariarequired)\n- [ariaRoleDescription](DeliveryElement.md#ariaroledescription)\n- [ariaRowCount](DeliveryElement.md#ariarowcount)\n- [ariaRowIndex](DeliveryElement.md#ariarowindex)\n- [ariaRowSpan](DeliveryElement.md#ariarowspan)\n- [ariaSelected](DeliveryElement.md#ariaselected)\n- [ariaSetSize](DeliveryElement.md#ariasetsize)\n- [ariaSort](DeliveryElement.md#ariasort)\n- [ariaValueMax](DeliveryElement.md#ariavaluemax)\n- [ariaValueMin](DeliveryElement.md#ariavaluemin)\n- [ariaValueNow](DeliveryElement.md#ariavaluenow)\n- [ariaValueText](DeliveryElement.md#ariavaluetext)\n- [assignedSlot](DeliveryElement.md#assignedslot)\n- [attributes](DeliveryElement.md#attributes)\n- [autocapitalize](DeliveryElement.md#autocapitalize)\n- [autofocus](DeliveryElement.md#autofocus)\n- [baseURI](DeliveryElement.md#baseuri)\n- [childElementCount](DeliveryElement.md#childelementcount)\n- [childNodes](DeliveryElement.md#childnodes)\n- [children](DeliveryElement.md#children)\n- [classList](DeliveryElement.md#classlist)\n- [className](DeliveryElement.md#classname)\n- [clientHeight](DeliveryElement.md#clientheight)\n- [clientLeft](DeliveryElement.md#clientleft)\n- [clientTop](DeliveryElement.md#clienttop)\n- [clientWidth](DeliveryElement.md#clientwidth)\n- [connected](DeliveryElement.md#connected)\n- [contentEditable](DeliveryElement.md#contenteditable)\n- [dataset](DeliveryElement.md#dataset)\n- [dir](DeliveryElement.md#dir)\n- [draggable](DeliveryElement.md#draggable)\n- [enterKeyHint](DeliveryElement.md#enterkeyhint)\n- [firstChild](DeliveryElement.md#firstchild)\n- [firstElementChild](DeliveryElement.md#firstelementchild)\n- [hidden](DeliveryElement.md#hidden)\n- [id](DeliveryElement.md#id)\n- [innerHTML](DeliveryElement.md#innerhtml)\n- [innerText](DeliveryElement.md#innertext)\n- [inputMode](DeliveryElement.md#inputmode)\n- [isConnected](DeliveryElement.md#isconnected)\n- [isContentEditable](DeliveryElement.md#iscontenteditable)\n- [lang](DeliveryElement.md#lang)\n- [lastChild](DeliveryElement.md#lastchild)\n- [lastElementChild](DeliveryElement.md#lastelementchild)\n- [localName](DeliveryElement.md#localname)\n- [mountPoint](DeliveryElement.md#mountpoint)\n- [namespaceURI](DeliveryElement.md#namespaceuri)\n- [nextElementSibling](DeliveryElement.md#nextelementsibling)\n- [nextSibling](DeliveryElement.md#nextsibling)\n- [nodeName](DeliveryElement.md#nodename)\n- [nodeType](DeliveryElement.md#nodetype)\n- [nodeValue](DeliveryElement.md#nodevalue)\n- [nonce](DeliveryElement.md#nonce)\n- [offsetHeight](DeliveryElement.md#offsetheight)\n- [offsetLeft](DeliveryElement.md#offsetleft)\n- [offsetParent](DeliveryElement.md#offsetparent)\n- [offsetTop](DeliveryElement.md#offsettop)\n- [offsetWidth](DeliveryElement.md#offsetwidth)\n- [onGetData](DeliveryElement.md#ongetdata)\n- [onReady](DeliveryElement.md#onready)\n- [onRequestHint](DeliveryElement.md#onrequesthint)\n- [onResetActivity](DeliveryElement.md#onresetactivity)\n- [onResetPart](DeliveryElement.md#onresetpart)\n- [onResize](DeliveryElement.md#onresize)\n- [onSaveActivity](DeliveryElement.md#onsaveactivity)\n- [onSavePart](DeliveryElement.md#onsavepart)\n- [onSetData](DeliveryElement.md#onsetdata)\n- [onSubmitActivity](DeliveryElement.md#onsubmitactivity)\n- [onSubmitEvaluations](DeliveryElement.md#onsubmitevaluations)\n- [onSubmitPart](DeliveryElement.md#onsubmitpart)\n- [onabort](DeliveryElement.md#onabort)\n- [onanimationcancel](DeliveryElement.md#onanimationcancel)\n- [onanimationend](DeliveryElement.md#onanimationend)\n- [onanimationiteration](DeliveryElement.md#onanimationiteration)\n- [onanimationstart](DeliveryElement.md#onanimationstart)\n- [onauxclick](DeliveryElement.md#onauxclick)\n- [onblur](DeliveryElement.md#onblur)\n- [oncanplay](DeliveryElement.md#oncanplay)\n- [oncanplaythrough](DeliveryElement.md#oncanplaythrough)\n- [onchange](DeliveryElement.md#onchange)\n- [onclick](DeliveryElement.md#onclick)\n- [onclose](DeliveryElement.md#onclose)\n- [oncontextmenu](DeliveryElement.md#oncontextmenu)\n- [oncopy](DeliveryElement.md#oncopy)\n- [oncuechange](DeliveryElement.md#oncuechange)\n- [oncut](DeliveryElement.md#oncut)\n- [ondblclick](DeliveryElement.md#ondblclick)\n- [ondrag](DeliveryElement.md#ondrag)\n- [ondragend](DeliveryElement.md#ondragend)\n- [ondragenter](DeliveryElement.md#ondragenter)\n- [ondragleave](DeliveryElement.md#ondragleave)\n- [ondragover](DeliveryElement.md#ondragover)\n- [ondragstart](DeliveryElement.md#ondragstart)\n- [ondrop](DeliveryElement.md#ondrop)\n- [ondurationchange](DeliveryElement.md#ondurationchange)\n- [onemptied](DeliveryElement.md#onemptied)\n- [onended](DeliveryElement.md#onended)\n- [onerror](DeliveryElement.md#onerror)\n- [onfocus](DeliveryElement.md#onfocus)\n- [onformdata](DeliveryElement.md#onformdata)\n- [onfullscreenchange](DeliveryElement.md#onfullscreenchange)\n- [onfullscreenerror](DeliveryElement.md#onfullscreenerror)\n- [ongotpointercapture](DeliveryElement.md#ongotpointercapture)\n- [oninput](DeliveryElement.md#oninput)\n- [oninvalid](DeliveryElement.md#oninvalid)\n- [onkeydown](DeliveryElement.md#onkeydown)\n- [onkeypress](DeliveryElement.md#onkeypress)\n- [onkeyup](DeliveryElement.md#onkeyup)\n- [onload](DeliveryElement.md#onload)\n- [onloadeddata](DeliveryElement.md#onloadeddata)\n- [onloadedmetadata](DeliveryElement.md#onloadedmetadata)\n- [onloadstart](DeliveryElement.md#onloadstart)\n- [onlostpointercapture](DeliveryElement.md#onlostpointercapture)\n- [onmousedown](DeliveryElement.md#onmousedown)\n- [onmouseenter](DeliveryElement.md#onmouseenter)\n- [onmouseleave](DeliveryElement.md#onmouseleave)\n- [onmousemove](DeliveryElement.md#onmousemove)\n- [onmouseout](DeliveryElement.md#onmouseout)\n- [onmouseover](DeliveryElement.md#onmouseover)\n- [onmouseup](DeliveryElement.md#onmouseup)\n- [onpaste](DeliveryElement.md#onpaste)\n- [onpause](DeliveryElement.md#onpause)\n- [onplay](DeliveryElement.md#onplay)\n- [onplaying](DeliveryElement.md#onplaying)\n- [onpointercancel](DeliveryElement.md#onpointercancel)\n- [onpointerdown](DeliveryElement.md#onpointerdown)\n- [onpointerenter](DeliveryElement.md#onpointerenter)\n- [onpointerleave](DeliveryElement.md#onpointerleave)\n- [onpointermove](DeliveryElement.md#onpointermove)\n- [onpointerout](DeliveryElement.md#onpointerout)\n- [onpointerover](DeliveryElement.md#onpointerover)\n- [onpointerup](DeliveryElement.md#onpointerup)\n- [onprogress](DeliveryElement.md#onprogress)\n- [onratechange](DeliveryElement.md#onratechange)\n- [onreset](DeliveryElement.md#onreset)\n- [onresize](DeliveryElement.md#onresize-1)\n- [onscroll](DeliveryElement.md#onscroll)\n- [onsecuritypolicyviolation](DeliveryElement.md#onsecuritypolicyviolation)\n- [onseeked](DeliveryElement.md#onseeked)\n- [onseeking](DeliveryElement.md#onseeking)\n- [onselect](DeliveryElement.md#onselect)\n- [onselectionchange](DeliveryElement.md#onselectionchange)\n- [onselectstart](DeliveryElement.md#onselectstart)\n- [onslotchange](DeliveryElement.md#onslotchange)\n- [onstalled](DeliveryElement.md#onstalled)\n- [onsubmit](DeliveryElement.md#onsubmit)\n- [onsuspend](DeliveryElement.md#onsuspend)\n- [ontimeupdate](DeliveryElement.md#ontimeupdate)\n- [ontoggle](DeliveryElement.md#ontoggle)\n- [ontouchcancel](DeliveryElement.md#ontouchcancel)\n- [ontouchend](DeliveryElement.md#ontouchend)\n- [ontouchmove](DeliveryElement.md#ontouchmove)\n- [ontouchstart](DeliveryElement.md#ontouchstart)\n- [ontransitioncancel](DeliveryElement.md#ontransitioncancel)\n- [ontransitionend](DeliveryElement.md#ontransitionend)\n- [ontransitionrun](DeliveryElement.md#ontransitionrun)\n- [ontransitionstart](DeliveryElement.md#ontransitionstart)\n- [onvolumechange](DeliveryElement.md#onvolumechange)\n- [onwaiting](DeliveryElement.md#onwaiting)\n- [onwebkitanimationend](DeliveryElement.md#onwebkitanimationend)\n- [onwebkitanimationiteration](DeliveryElement.md#onwebkitanimationiteration)\n- [onwebkitanimationstart](DeliveryElement.md#onwebkitanimationstart)\n- [onwebkittransitionend](DeliveryElement.md#onwebkittransitionend)\n- [onwheel](DeliveryElement.md#onwheel)\n- [outerHTML](DeliveryElement.md#outerhtml)\n- [outerText](DeliveryElement.md#outertext)\n- [ownerDocument](DeliveryElement.md#ownerdocument)\n- [parentElement](DeliveryElement.md#parentelement)\n- [parentNode](DeliveryElement.md#parentnode)\n- [part](DeliveryElement.md#part)\n- [prefix](DeliveryElement.md#prefix)\n- [previousElementSibling](DeliveryElement.md#previouselementsibling)\n- [previousSibling](DeliveryElement.md#previoussibling)\n- [review](DeliveryElement.md#review)\n- [scrollHeight](DeliveryElement.md#scrollheight)\n- [scrollLeft](DeliveryElement.md#scrollleft)\n- [scrollTop](DeliveryElement.md#scrolltop)\n- [scrollWidth](DeliveryElement.md#scrollwidth)\n- [shadowRoot](DeliveryElement.md#shadowroot)\n- [slot](DeliveryElement.md#slot)\n- [spellcheck](DeliveryElement.md#spellcheck)\n- [style](DeliveryElement.md#style)\n- [tabIndex](DeliveryElement.md#tabindex)\n- [tagName](DeliveryElement.md#tagname)\n- [textContent](DeliveryElement.md#textcontent)\n- [title](DeliveryElement.md#title)\n- [translate](DeliveryElement.md#translate)","ref":"deliveryelement.html#properties"},{"type":"extras","title":"Accessors - DeliveryElement","doc":"- [observedAttributes](DeliveryElement.md#observedattributes)","ref":"deliveryelement.html#accessors"},{"type":"extras","title":"Methods - DeliveryElement","doc":"- [addEventListener](DeliveryElement.md#addeventlistener)\n- [after](DeliveryElement.md#after)\n- [animate](DeliveryElement.md#animate)\n- [append](DeliveryElement.md#append)\n- [appendChild](DeliveryElement.md#appendchild)\n- [attachInternals](DeliveryElement.md#attachinternals)\n- [attachShadow](DeliveryElement.md#attachshadow)\n- [attributeChangedCallback](DeliveryElement.md#attributechangedcallback)\n- [before](DeliveryElement.md#before)\n- [blur](DeliveryElement.md#blur)\n- [click](DeliveryElement.md#click)\n- [cloneNode](DeliveryElement.md#clonenode)\n- [closest](DeliveryElement.md#closest)\n- [compareDocumentPosition](DeliveryElement.md#comparedocumentposition)\n- [connectedCallback](DeliveryElement.md#connectedcallback)\n- [contains](DeliveryElement.md#contains)\n- [details](DeliveryElement.md#details)\n- [dispatch](DeliveryElement.md#dispatch)\n- [dispatchEvent](DeliveryElement.md#dispatchevent)\n- [focus](DeliveryElement.md#focus)\n- [getAnimations](DeliveryElement.md#getanimations)\n- [getAttribute](DeliveryElement.md#getattribute)\n- [getAttributeNS](DeliveryElement.md#getattributens)\n- [getAttributeNames](DeliveryElement.md#getattributenames)\n- [getAttributeNode](DeliveryElement.md#getattributenode)\n- [getAttributeNodeNS](DeliveryElement.md#getattributenodens)\n- [getBoundingClientRect](DeliveryElement.md#getboundingclientrect)\n- [getClientRects](DeliveryElement.md#getclientrects)\n- [getElementsByClassName](DeliveryElement.md#getelementsbyclassname)\n- [getElementsByTagName](DeliveryElement.md#getelementsbytagname)\n- [getElementsByTagNameNS](DeliveryElement.md#getelementsbytagnamens)\n- [getRootNode](DeliveryElement.md#getrootnode)\n- [hasAttribute](DeliveryElement.md#hasattribute)\n- [hasAttributeNS](DeliveryElement.md#hasattributens)\n- [hasAttributes](DeliveryElement.md#hasattributes)\n- [hasChildNodes](DeliveryElement.md#haschildnodes)\n- [hasPointerCapture](DeliveryElement.md#haspointercapture)\n- [insertAdjacentElement](DeliveryElement.md#insertadjacentelement)\n- [insertAdjacentHTML](DeliveryElement.md#insertadjacenthtml)\n- [insertAdjacentText](DeliveryElement.md#insertadjacenttext)\n- [insertBefore](DeliveryElement.md#insertbefore)\n- [isDefaultNamespace](DeliveryElement.md#isdefaultnamespace)\n- [isEqualNode](DeliveryElement.md#isequalnode)\n- [isSameNode](DeliveryElement.md#issamenode)\n- [lookupNamespaceURI](DeliveryElement.md#lookupnamespaceuri)\n- [lookupPrefix](DeliveryElement.md#lookupprefix)\n- [matches](DeliveryElement.md#matches)\n- [normalize](DeliveryElement.md#normalize)\n- [notify](DeliveryElement.md#notify)\n- [prepend](DeliveryElement.md#prepend)\n- [props](DeliveryElement.md#props)\n- [querySelector](DeliveryElement.md#queryselector)\n- [querySelectorAll](DeliveryElement.md#queryselectorall)\n- [releasePointerCapture](DeliveryElement.md#releasepointercapture)\n- [remove](DeliveryElement.md#remove)\n- [removeAttribute](DeliveryElement.md#removeattribute)\n- [removeAttributeNS](DeliveryElement.md#removeattributens)\n- [removeAttributeNode](DeliveryElement.md#removeattributenode)\n- [removeChild](DeliveryElement.md#removechild)\n- [removeEventListener](DeliveryElement.md#removeeventlistener)\n- [render](DeliveryElement.md#render)\n- [replaceChild](DeliveryElement.md#replacechild)\n- [replaceChildren](DeliveryElement.md#replacechildren)\n- [replaceWith](DeliveryElement.md#replacewith)\n- [requestFullscreen](DeliveryElement.md#requestfullscreen)\n- [requestPointerLock](DeliveryElement.md#requestpointerlock)\n- [scroll](DeliveryElement.md#scroll)\n- [scrollBy](DeliveryElement.md#scrollby)\n- [scrollIntoView](DeliveryElement.md#scrollintoview)\n- [scrollTo](DeliveryElement.md#scrollto)\n- [setAttribute](DeliveryElement.md#setattribute)\n- [setAttributeNS](DeliveryElement.md#setattributens)\n- [setAttributeNode](DeliveryElement.md#setattributenode)\n- [setAttributeNodeNS](DeliveryElement.md#setattributenodens)\n- [setPointerCapture](DeliveryElement.md#setpointercapture)\n- [toggleAttribute](DeliveryElement.md#toggleattribute)\n- [webkitMatchesSelector](DeliveryElement.md#webkitmatchesselector)","ref":"deliveryelement.html#methods"},{"type":"extras","title":"Constructors - DeliveryElement","doc":"","ref":"deliveryelement.html#constructors"},{"type":"extras","title":"constructor - DeliveryElement","doc":"• **new DeliveryElement**<`T`\\>()\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](../interfaces/ActivityModelSchema.md) |\n\n#### Overrides\n\nHTMLElement.constructor\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:246](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L246)","ref":"deliveryelement.html#constructor"},{"type":"extras","title":"Properties - DeliveryElement","doc":"","ref":"deliveryelement.html#properties"},{"type":"extras","title":"ATTRIBUTE\\_NODE - DeliveryElement","doc":"• `Readonly` **ATTRIBUTE\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ATTRIBUTE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9822\n\n___","ref":"deliveryelement.html#attribute-_node"},{"type":"extras","title":"CDATA\\_SECTION\\_NODE - DeliveryElement","doc":"• `Readonly` **CDATA\\_SECTION\\_NODE**: `number`\n\nnode is a CDATASection node.\n\n#### Inherited from\n\nHTMLElement.CDATA\\_SECTION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9824\n\n___","ref":"deliveryelement.html#cdata-_section-_node"},{"type":"extras","title":"COMMENT\\_NODE - DeliveryElement","doc":"• `Readonly` **COMMENT\\_NODE**: `number`\n\nnode is a Comment node.\n\n#### Inherited from\n\nHTMLElement.COMMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9826\n\n___","ref":"deliveryelement.html#comment-_node"},{"type":"extras","title":"DOCUMENT\\_FRAGMENT\\_NODE - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_FRAGMENT\\_NODE**: `number`\n\nnode is a DocumentFragment node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_FRAGMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9828\n\n___","ref":"deliveryelement.html#document-_fragment-_node"},{"type":"extras","title":"DOCUMENT\\_NODE - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_NODE**: `number`\n\nnode is a document.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9830\n\n___","ref":"deliveryelement.html#document-_node"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_CONTAINED\\_BY - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_CONTAINED\\_BY**: `number`\n\nSet when other is a descendant of node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_CONTAINED\\_BY\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9832\n\n___","ref":"deliveryelement.html#document-_position-_contained-_by"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_CONTAINS - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_CONTAINS**: `number`\n\nSet when other is an ancestor of node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_CONTAINS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9834\n\n___","ref":"deliveryelement.html#document-_position-_contains"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_DISCONNECTED - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_DISCONNECTED**: `number`\n\nSet when node and other are not in the same tree.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_DISCONNECTED\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9836\n\n___","ref":"deliveryelement.html#document-_position-_disconnected"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_FOLLOWING - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_FOLLOWING**: `number`\n\nSet when other is following node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_FOLLOWING\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9838\n\n___","ref":"deliveryelement.html#document-_position-_following"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC**: `number`\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9839\n\n___","ref":"deliveryelement.html#document-_position-_implementation-_specific"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_PRECEDING - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_PRECEDING**: `number`\n\nSet when other is preceding node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_PRECEDING\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9841\n\n___","ref":"deliveryelement.html#document-_position-_preceding"},{"type":"extras","title":"DOCUMENT\\_TYPE\\_NODE - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_TYPE\\_NODE**: `number`\n\nnode is a doctype.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_TYPE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9843\n\n___","ref":"deliveryelement.html#document-_type-_node"},{"type":"extras","title":"ELEMENT\\_NODE - DeliveryElement","doc":"• `Readonly` **ELEMENT\\_NODE**: `number`\n\nnode is an element.\n\n#### Inherited from\n\nHTMLElement.ELEMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9845\n\n___","ref":"deliveryelement.html#element-_node"},{"type":"extras","title":"ENTITY\\_NODE - DeliveryElement","doc":"• `Readonly` **ENTITY\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ENTITY\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9846\n\n___","ref":"deliveryelement.html#entity-_node"},{"type":"extras","title":"ENTITY\\_REFERENCE\\_NODE - DeliveryElement","doc":"• `Readonly` **ENTITY\\_REFERENCE\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ENTITY\\_REFERENCE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9847\n\n___","ref":"deliveryelement.html#entity-_reference-_node"},{"type":"extras","title":"NOTATION\\_NODE - DeliveryElement","doc":"• `Readonly` **NOTATION\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.NOTATION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9848\n\n___","ref":"deliveryelement.html#notation-_node"},{"type":"extras","title":"PROCESSING\\_INSTRUCTION\\_NODE - DeliveryElement","doc":"• `Readonly` **PROCESSING\\_INSTRUCTION\\_NODE**: `number`\n\nnode is a ProcessingInstruction node.\n\n#### Inherited from\n\nHTMLElement.PROCESSING\\_INSTRUCTION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9850\n\n___","ref":"deliveryelement.html#processing-_instruction-_node"},{"type":"extras","title":"TEXT\\_NODE - DeliveryElement","doc":"• `Readonly` **TEXT\\_NODE**: `number`\n\nnode is a Text node.\n\n#### Inherited from\n\nHTMLElement.TEXT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9852\n\n___\n\n### \\_notify\n\n• `Protected` **\\_notify**: `EventEmitter`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:217](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L217)\n\n___","ref":"deliveryelement.html#text-_node"},{"type":"extras","title":"accessKey - DeliveryElement","doc":"• **accessKey**: `string`\n\n#### Inherited from\n\nHTMLElement.accessKey\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6223\n\n___","ref":"deliveryelement.html#accesskey"},{"type":"extras","title":"accessKeyLabel - DeliveryElement","doc":"• `Readonly` **accessKeyLabel**: `string`\n\n#### Inherited from\n\nHTMLElement.accessKeyLabel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6224\n\n___","ref":"deliveryelement.html#accesskeylabel"},{"type":"extras","title":"ariaAtomic - DeliveryElement","doc":"• **ariaAtomic**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaAtomic\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1857\n\n___","ref":"deliveryelement.html#ariaatomic"},{"type":"extras","title":"ariaAutoComplete - DeliveryElement","doc":"• **ariaAutoComplete**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaAutoComplete\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1858\n\n___","ref":"deliveryelement.html#ariaautocomplete"},{"type":"extras","title":"ariaBusy - DeliveryElement","doc":"• **ariaBusy**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaBusy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1859\n\n___","ref":"deliveryelement.html#ariabusy"},{"type":"extras","title":"ariaChecked - DeliveryElement","doc":"• **ariaChecked**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaChecked\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1860\n\n___","ref":"deliveryelement.html#ariachecked"},{"type":"extras","title":"ariaColCount - DeliveryElement","doc":"• **ariaColCount**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1861\n\n___","ref":"deliveryelement.html#ariacolcount"},{"type":"extras","title":"ariaColIndex - DeliveryElement","doc":"• **ariaColIndex**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1862\n\n___","ref":"deliveryelement.html#ariacolindex"},{"type":"extras","title":"ariaColSpan - DeliveryElement","doc":"• **ariaColSpan**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColSpan\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1863\n\n___","ref":"deliveryelement.html#ariacolspan"},{"type":"extras","title":"ariaCurrent - DeliveryElement","doc":"• **ariaCurrent**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaCurrent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1864\n\n___","ref":"deliveryelement.html#ariacurrent"},{"type":"extras","title":"ariaDisabled - DeliveryElement","doc":"• **ariaDisabled**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaDisabled\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1865\n\n___","ref":"deliveryelement.html#ariadisabled"},{"type":"extras","title":"ariaExpanded - DeliveryElement","doc":"• **ariaExpanded**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaExpanded\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1866\n\n___","ref":"deliveryelement.html#ariaexpanded"},{"type":"extras","title":"ariaHasPopup - DeliveryElement","doc":"• **ariaHasPopup**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaHasPopup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1867\n\n___","ref":"deliveryelement.html#ariahaspopup"},{"type":"extras","title":"ariaHidden - DeliveryElement","doc":"• **ariaHidden**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaHidden\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1868\n\n___","ref":"deliveryelement.html#ariahidden"},{"type":"extras","title":"ariaKeyShortcuts - DeliveryElement","doc":"• **ariaKeyShortcuts**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaKeyShortcuts\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1869\n\n___","ref":"deliveryelement.html#ariakeyshortcuts"},{"type":"extras","title":"ariaLabel - DeliveryElement","doc":"• **ariaLabel**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLabel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1870\n\n___","ref":"deliveryelement.html#arialabel"},{"type":"extras","title":"ariaLevel - DeliveryElement","doc":"• **ariaLevel**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLevel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1871\n\n___","ref":"deliveryelement.html#arialevel"},{"type":"extras","title":"ariaLive - DeliveryElement","doc":"• **ariaLive**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLive\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1872\n\n___","ref":"deliveryelement.html#arialive"},{"type":"extras","title":"ariaModal - DeliveryElement","doc":"• **ariaModal**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaModal\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1873\n\n___","ref":"deliveryelement.html#ariamodal"},{"type":"extras","title":"ariaMultiLine - DeliveryElement","doc":"• **ariaMultiLine**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaMultiLine\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1874\n\n___","ref":"deliveryelement.html#ariamultiline"},{"type":"extras","title":"ariaMultiSelectable - DeliveryElement","doc":"• **ariaMultiSelectable**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaMultiSelectable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1875\n\n___","ref":"deliveryelement.html#ariamultiselectable"},{"type":"extras","title":"ariaOrientation - DeliveryElement","doc":"• **ariaOrientation**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaOrientation\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1876\n\n___","ref":"deliveryelement.html#ariaorientation"},{"type":"extras","title":"ariaPlaceholder - DeliveryElement","doc":"• **ariaPlaceholder**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPlaceholder\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1877\n\n___","ref":"deliveryelement.html#ariaplaceholder"},{"type":"extras","title":"ariaPosInSet - DeliveryElement","doc":"• **ariaPosInSet**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPosInSet\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1878\n\n___","ref":"deliveryelement.html#ariaposinset"},{"type":"extras","title":"ariaPressed - DeliveryElement","doc":"• **ariaPressed**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPressed\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1879\n\n___","ref":"deliveryelement.html#ariapressed"},{"type":"extras","title":"ariaReadOnly - DeliveryElement","doc":"• **ariaReadOnly**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaReadOnly\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1880\n\n___","ref":"deliveryelement.html#ariareadonly"},{"type":"extras","title":"ariaRequired - DeliveryElement","doc":"• **ariaRequired**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRequired\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1881\n\n___","ref":"deliveryelement.html#ariarequired"},{"type":"extras","title":"ariaRoleDescription - DeliveryElement","doc":"• **ariaRoleDescription**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRoleDescription\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1882\n\n___","ref":"deliveryelement.html#ariaroledescription"},{"type":"extras","title":"ariaRowCount - DeliveryElement","doc":"• **ariaRowCount**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1883\n\n___","ref":"deliveryelement.html#ariarowcount"},{"type":"extras","title":"ariaRowIndex - DeliveryElement","doc":"• **ariaRowIndex**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1884\n\n___","ref":"deliveryelement.html#ariarowindex"},{"type":"extras","title":"ariaRowSpan - DeliveryElement","doc":"• **ariaRowSpan**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowSpan\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1885\n\n___","ref":"deliveryelement.html#ariarowspan"},{"type":"extras","title":"ariaSelected - DeliveryElement","doc":"• **ariaSelected**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSelected\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1886\n\n___","ref":"deliveryelement.html#ariaselected"},{"type":"extras","title":"ariaSetSize - DeliveryElement","doc":"• **ariaSetSize**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSetSize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1887\n\n___","ref":"deliveryelement.html#ariasetsize"},{"type":"extras","title":"ariaSort - DeliveryElement","doc":"• **ariaSort**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSort\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1888\n\n___","ref":"deliveryelement.html#ariasort"},{"type":"extras","title":"ariaValueMax - DeliveryElement","doc":"• **ariaValueMax**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueMax\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1889\n\n___","ref":"deliveryelement.html#ariavaluemax"},{"type":"extras","title":"ariaValueMin - DeliveryElement","doc":"• **ariaValueMin**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueMin\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1890\n\n___","ref":"deliveryelement.html#ariavaluemin"},{"type":"extras","title":"ariaValueNow - DeliveryElement","doc":"• **ariaValueNow**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueNow\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1891\n\n___","ref":"deliveryelement.html#ariavaluenow"},{"type":"extras","title":"ariaValueText - DeliveryElement","doc":"• **ariaValueText**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1892\n\n___","ref":"deliveryelement.html#ariavaluetext"},{"type":"extras","title":"assignedSlot - DeliveryElement","doc":"• `Readonly` **assignedSlot**: ``null`` \\| `HTMLSlotElement`\n\n#### Inherited from\n\nHTMLElement.assignedSlot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:13242\n\n___","ref":"deliveryelement.html#assignedslot"},{"type":"extras","title":"attributes - DeliveryElement","doc":"• `Readonly` **attributes**: `NamedNodeMap`\n\n#### Inherited from\n\nHTMLElement.attributes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4768\n\n___","ref":"deliveryelement.html#attributes"},{"type":"extras","title":"autocapitalize - DeliveryElement","doc":"• **autocapitalize**: `string`\n\n#### Inherited from\n\nHTMLElement.autocapitalize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6225\n\n___","ref":"deliveryelement.html#autocapitalize"},{"type":"extras","title":"autofocus - DeliveryElement","doc":"• **autofocus**: `boolean`\n\n#### Inherited from\n\nHTMLElement.autofocus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7427\n\n___","ref":"deliveryelement.html#autofocus"},{"type":"extras","title":"baseURI - DeliveryElement","doc":"• `Readonly` **baseURI**: `string`\n\nReturns node's node document's document base URL.\n\n#### Inherited from\n\nHTMLElement.baseURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9775\n\n___","ref":"deliveryelement.html#baseuri"},{"type":"extras","title":"childElementCount - DeliveryElement","doc":"• `Readonly` **childElementCount**: `number`\n\n#### Inherited from\n\nHTMLElement.childElementCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10140\n\n___","ref":"deliveryelement.html#childelementcount"},{"type":"extras","title":"childNodes - DeliveryElement","doc":"• `Readonly` **childNodes**: `NodeListOf`<`ChildNode`\\>\n\nReturns the children.\n\n#### Inherited from\n\nHTMLElement.childNodes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9777\n\n___","ref":"deliveryelement.html#childnodes"},{"type":"extras","title":"children - DeliveryElement","doc":"• `Readonly` **children**: `HTMLCollection`\n\nReturns the child elements.\n\n#### Inherited from\n\nHTMLElement.children\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10142\n\n___","ref":"deliveryelement.html#children"},{"type":"extras","title":"classList - DeliveryElement","doc":"• `Readonly` **classList**: `DOMTokenList`\n\nAllows for manipulation of element's class content attribute as a set of whitespace-separated tokens through a DOMTokenList object.\n\n#### Inherited from\n\nHTMLElement.classList\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4770\n\n___","ref":"deliveryelement.html#classlist"},{"type":"extras","title":"className - DeliveryElement","doc":"• **className**: `string`\n\nReturns the value of element's class content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.className\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4772\n\n___","ref":"deliveryelement.html#classname"},{"type":"extras","title":"clientHeight - DeliveryElement","doc":"• `Readonly` **clientHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.clientHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4773\n\n___","ref":"deliveryelement.html#clientheight"},{"type":"extras","title":"clientLeft - DeliveryElement","doc":"• `Readonly` **clientLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.clientLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4774\n\n___","ref":"deliveryelement.html#clientleft"},{"type":"extras","title":"clientTop - DeliveryElement","doc":"• `Readonly` **clientTop**: `number`\n\n#### Inherited from\n\nHTMLElement.clientTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4775\n\n___","ref":"deliveryelement.html#clienttop"},{"type":"extras","title":"clientWidth - DeliveryElement","doc":"• `Readonly` **clientWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.clientWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4776\n\n___","ref":"deliveryelement.html#clientwidth"},{"type":"extras","title":"connected - DeliveryElement","doc":"• **connected**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:212](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L212)\n\n___","ref":"deliveryelement.html#connected"},{"type":"extras","title":"contentEditable - DeliveryElement","doc":"• **contentEditable**: `string`\n\n#### Inherited from\n\nHTMLElement.contentEditable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4887\n\n___","ref":"deliveryelement.html#contenteditable"},{"type":"extras","title":"dataset - DeliveryElement","doc":"• `Readonly` **dataset**: `DOMStringMap`\n\n#### Inherited from\n\nHTMLElement.dataset\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7428\n\n___","ref":"deliveryelement.html#dataset"},{"type":"extras","title":"dir - DeliveryElement","doc":"• **dir**: `string`\n\n#### Inherited from\n\nHTMLElement.dir\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6226\n\n___","ref":"deliveryelement.html#dir"},{"type":"extras","title":"draggable - DeliveryElement","doc":"• **draggable**: `boolean`\n\n#### Inherited from\n\nHTMLElement.draggable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6227\n\n___","ref":"deliveryelement.html#draggable"},{"type":"extras","title":"enterKeyHint - DeliveryElement","doc":"• **enterKeyHint**: `string`\n\n#### Inherited from\n\nHTMLElement.enterKeyHint\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4888\n\n___","ref":"deliveryelement.html#enterkeyhint"},{"type":"extras","title":"firstChild - DeliveryElement","doc":"• `Readonly` **firstChild**: ``null`` \\| `ChildNode`\n\nReturns the first child.\n\n#### Inherited from\n\nHTMLElement.firstChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9779\n\n___","ref":"deliveryelement.html#firstchild"},{"type":"extras","title":"firstElementChild - DeliveryElement","doc":"• `Readonly` **firstElementChild**: ``null`` \\| `Element`\n\nReturns the first child that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.firstElementChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10144\n\n___","ref":"deliveryelement.html#firstelementchild"},{"type":"extras","title":"hidden - DeliveryElement","doc":"• **hidden**: `boolean`\n\n#### Inherited from\n\nHTMLElement.hidden\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6228\n\n___","ref":"deliveryelement.html#hidden"},{"type":"extras","title":"id - DeliveryElement","doc":"• **id**: `string`\n\nReturns the value of element's id content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.id\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4778\n\n___","ref":"deliveryelement.html#id"},{"type":"extras","title":"innerHTML - DeliveryElement","doc":"• **innerHTML**: `string`\n\n#### Inherited from\n\nHTMLElement.innerHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:8777\n\n___","ref":"deliveryelement.html#innerhtml"},{"type":"extras","title":"innerText - DeliveryElement","doc":"• **innerText**: `string`\n\n#### Inherited from\n\nHTMLElement.innerText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6229\n\n___","ref":"deliveryelement.html#innertext"},{"type":"extras","title":"inputMode - DeliveryElement","doc":"• **inputMode**: `string`\n\n#### Inherited from\n\nHTMLElement.inputMode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4889\n\n___","ref":"deliveryelement.html#inputmode"},{"type":"extras","title":"isConnected - DeliveryElement","doc":"• `Readonly` **isConnected**: `boolean`\n\nReturns true if node is connected and false otherwise.\n\n#### Inherited from\n\nHTMLElement.isConnected\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9781\n\n___","ref":"deliveryelement.html#isconnected"},{"type":"extras","title":"isContentEditable - DeliveryElement","doc":"• `Readonly` **isContentEditable**: `boolean`\n\n#### Inherited from\n\nHTMLElement.isContentEditable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4890\n\n___","ref":"deliveryelement.html#iscontenteditable"},{"type":"extras","title":"lang - DeliveryElement","doc":"• **lang**: `string`\n\n#### Inherited from\n\nHTMLElement.lang\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6230\n\n___","ref":"deliveryelement.html#lang"},{"type":"extras","title":"lastChild - DeliveryElement","doc":"• `Readonly` **lastChild**: ``null`` \\| `ChildNode`\n\nReturns the last child.\n\n#### Inherited from\n\nHTMLElement.lastChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9783\n\n___","ref":"deliveryelement.html#lastchild"},{"type":"extras","title":"lastElementChild - DeliveryElement","doc":"• `Readonly` **lastElementChild**: ``null`` \\| `Element`\n\nReturns the last child that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.lastElementChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10146\n\n___","ref":"deliveryelement.html#lastelementchild"},{"type":"extras","title":"localName - DeliveryElement","doc":"• `Readonly` **localName**: `string`\n\nReturns the local name.\n\n#### Inherited from\n\nHTMLElement.localName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4780\n\n___","ref":"deliveryelement.html#localname"},{"type":"extras","title":"mountPoint - DeliveryElement","doc":"• **mountPoint**: `HTMLDivElement`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:211](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L211)\n\n___","ref":"deliveryelement.html#mountpoint"},{"type":"extras","title":"namespaceURI - DeliveryElement","doc":"• `Readonly` **namespaceURI**: ``null`` \\| `string`\n\nReturns the namespace.\n\n#### Inherited from\n\nHTMLElement.namespaceURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4782\n\n___","ref":"deliveryelement.html#namespaceuri"},{"type":"extras","title":"nextElementSibling - DeliveryElement","doc":"• `Readonly` **nextElementSibling**: ``null`` \\| `Element`\n\nReturns the first following sibling that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.nextElementSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9942\n\n___","ref":"deliveryelement.html#nextelementsibling"},{"type":"extras","title":"nextSibling - DeliveryElement","doc":"• `Readonly` **nextSibling**: ``null`` \\| `ChildNode`\n\nReturns the next sibling.\n\n#### Inherited from\n\nHTMLElement.nextSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9785\n\n___","ref":"deliveryelement.html#nextsibling"},{"type":"extras","title":"nodeName - DeliveryElement","doc":"• `Readonly` **nodeName**: `string`\n\nReturns a string appropriate for the type of node.\n\n#### Inherited from\n\nHTMLElement.nodeName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9787\n\n___","ref":"deliveryelement.html#nodename"},{"type":"extras","title":"nodeType - DeliveryElement","doc":"• `Readonly` **nodeType**: `number`\n\nReturns the type of node.\n\n#### Inherited from\n\nHTMLElement.nodeType\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9789\n\n___","ref":"deliveryelement.html#nodetype"},{"type":"extras","title":"nodeValue - DeliveryElement","doc":"• **nodeValue**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.nodeValue\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9790\n\n___","ref":"deliveryelement.html#nodevalue"},{"type":"extras","title":"nonce - DeliveryElement","doc":"• `Optional` **nonce**: `string`\n\n#### Inherited from\n\nHTMLElement.nonce\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7429\n\n___","ref":"deliveryelement.html#nonce"},{"type":"extras","title":"offsetHeight - DeliveryElement","doc":"• `Readonly` **offsetHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6231\n\n___","ref":"deliveryelement.html#offsetheight"},{"type":"extras","title":"offsetLeft - DeliveryElement","doc":"• `Readonly` **offsetLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6232\n\n___","ref":"deliveryelement.html#offsetleft"},{"type":"extras","title":"offsetParent - DeliveryElement","doc":"• `Readonly` **offsetParent**: ``null`` \\| `Element`\n\n#### Inherited from\n\nHTMLElement.offsetParent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6233\n\n___","ref":"deliveryelement.html#offsetparent"},{"type":"extras","title":"offsetTop - DeliveryElement","doc":"• `Readonly` **offsetTop**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6234\n\n___","ref":"deliveryelement.html#offsettop"},{"type":"extras","title":"offsetWidth - DeliveryElement","doc":"• `Readonly` **offsetWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6235\n\n___","ref":"deliveryelement.html#offsetwidth"},{"type":"extras","title":"onGetData - DeliveryElement","doc":"• `Optional` **onGetData**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`, `payload`: `any`) => `Promise`<`any`\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`, `payload`): `Promise`<`any`\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `payload` | `any` |\n\n##### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:214](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L214)\n\n___","ref":"deliveryelement.html#ongetdata"},{"type":"extras","title":"onReady - DeliveryElement","doc":"• **onReady**: (`attemptGuid`: `string`, `response?`: `any`[]) => `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `response?`): `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `response?` | `any`[] |\n\n##### Returns\n\n`Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:243](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L243)\n\n___","ref":"deliveryelement.html#onready"},{"type":"extras","title":"onRequestHint - DeliveryElement","doc":"• **onRequestHint**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`) => `Promise`<[`RequestHintResponse`](../interfaces/RequestHintResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`): `Promise`<[`RequestHintResponse`](../interfaces/RequestHintResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n\n##### Returns\n\n`Promise`<[`RequestHintResponse`](../interfaces/RequestHintResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:219](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L219)\n\n___","ref":"deliveryelement.html#onrequesthint"},{"type":"extras","title":"onResetActivity - DeliveryElement","doc":"• **onResetActivity**: (`attemptGuid`: `string`) => `Promise`<[`ResetActivityResponse`](../interfaces/ResetActivityResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`): `Promise`<[`ResetActivityResponse`](../interfaces/ResetActivityResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n\n##### Returns\n\n`Promise`<[`ResetActivityResponse`](../interfaces/ResetActivityResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:226](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L226)\n\n___","ref":"deliveryelement.html#onresetactivity"},{"type":"extras","title":"onResetPart - DeliveryElement","doc":"• **onResetPart**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`) => `Promise`<[`PartActivityResponse`](../interfaces/PartActivityResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`): `Promise`<[`PartActivityResponse`](../interfaces/PartActivityResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n\n##### Returns\n\n`Promise`<[`PartActivityResponse`](../interfaces/PartActivityResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:238](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L238)\n\n___","ref":"deliveryelement.html#onresetpart"},{"type":"extras","title":"onResize - DeliveryElement","doc":"• **onResize**: (`attemptGuid`: `string`) => `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`): `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n\n##### Returns\n\n`Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:244](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L244)\n\n___","ref":"deliveryelement.html#onresize"},{"type":"extras","title":"onSaveActivity - DeliveryElement","doc":"• **onSaveActivity**: (`attemptGuid`: `string`, `partResponses`: [`PartResponse`](../modules.md#partresponse)[]) => `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partResponses`): `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partResponses` | [`PartResponse`](../modules.md#partresponse)[] |\n\n##### Returns\n\n`Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:221](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L221)\n\n___","ref":"deliveryelement.html#onsaveactivity"},{"type":"extras","title":"onSavePart - DeliveryElement","doc":"• **onSavePart**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`, `response`: [`StudentResponse`](../interfaces/StudentResponse.md)) => `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`, `response`): `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `response` | [`StudentResponse`](../interfaces/StudentResponse.md) |\n\n##### Returns\n\n`Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:228](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L228)\n\n___","ref":"deliveryelement.html#onsavepart"},{"type":"extras","title":"onSetData - DeliveryElement","doc":"• `Optional` **onSetData**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`, `payload`: `any`) => `Promise`<`any`\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`, `payload`): `Promise`<`any`\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `payload` | `any` |\n\n##### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:215](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L215)\n\n___","ref":"deliveryelement.html#onsetdata"},{"type":"extras","title":"onSubmitActivity - DeliveryElement","doc":"• **onSubmitActivity**: (`attemptGuid`: `string`, `partResponses`: [`PartResponse`](../modules.md#partresponse)[]) => `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partResponses`): `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partResponses` | [`PartResponse`](../modules.md#partresponse)[] |\n\n##### Returns\n\n`Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:222](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L222)\n\n___","ref":"deliveryelement.html#onsubmitactivity"},{"type":"extras","title":"onSubmitEvaluations - DeliveryElement","doc":"• **onSubmitEvaluations**: (`attemptGuid`: `string`, `clientEvaluations`: [`ClientEvaluation`](../modules.md#clientevaluation)[]) => `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `clientEvaluations`): `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `clientEvaluations` | [`ClientEvaluation`](../modules.md#clientevaluation)[] |\n\n##### Returns\n\n`Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:239](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L239)\n\n___","ref":"deliveryelement.html#onsubmitevaluations"},{"type":"extras","title":"onSubmitPart - DeliveryElement","doc":"• **onSubmitPart**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`, `response`: [`StudentResponse`](../interfaces/StudentResponse.md)) => `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`, `response`): `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `response` | [`StudentResponse`](../interfaces/StudentResponse.md) |\n\n##### Returns\n\n`Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:233](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L233)\n\n___","ref":"deliveryelement.html#onsubmitpart"},{"type":"extras","title":"onabort - DeliveryElement","doc":"• **onabort**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `UIEvent`) => `any`\n\nFires when the user aborts the download.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onabort\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5542\n\n___","ref":"deliveryelement.html#onabort"},{"type":"extras","title":"onanimationcancel - DeliveryElement","doc":"• **onanimationcancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationcancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5543\n\n___","ref":"deliveryelement.html#onanimationcancel"},{"type":"extras","title":"onanimationend - DeliveryElement","doc":"• **onanimationend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5544\n\n___","ref":"deliveryelement.html#onanimationend"},{"type":"extras","title":"onanimationiteration - DeliveryElement","doc":"• **onanimationiteration**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationiteration\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5545\n\n___","ref":"deliveryelement.html#onanimationiteration"},{"type":"extras","title":"onanimationstart - DeliveryElement","doc":"• **onanimationstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5546\n\n___","ref":"deliveryelement.html#onanimationstart"},{"type":"extras","title":"onauxclick - DeliveryElement","doc":"• **onauxclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onauxclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5547\n\n___","ref":"deliveryelement.html#onauxclick"},{"type":"extras","title":"onblur - DeliveryElement","doc":"• **onblur**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FocusEvent`) => `any`\n\nFires when the object loses the input focus.\n\n**`param`** The focus event.\n\n#### Inherited from\n\nHTMLElement.onblur\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5552\n\n___","ref":"deliveryelement.html#onblur"},{"type":"extras","title":"oncanplay - DeliveryElement","doc":"• **oncanplay**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback is possible, but would require further buffering.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.oncanplay\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5557\n\n___","ref":"deliveryelement.html#oncanplay"},{"type":"extras","title":"oncanplaythrough - DeliveryElement","doc":"• **oncanplaythrough**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncanplaythrough\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5558\n\n___","ref":"deliveryelement.html#oncanplaythrough"},{"type":"extras","title":"onchange - DeliveryElement","doc":"• **onchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the contents of the object or selection have changed.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5563\n\n___","ref":"deliveryelement.html#onchange"},{"type":"extras","title":"onclick - DeliveryElement","doc":"• **onclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the left mouse button on the object\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5568\n\n___","ref":"deliveryelement.html#onclick"},{"type":"extras","title":"onclose - DeliveryElement","doc":"• **onclose**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onclose\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5569\n\n___","ref":"deliveryelement.html#onclose"},{"type":"extras","title":"oncontextmenu - DeliveryElement","doc":"• **oncontextmenu**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the right mouse button in the client area, opening the context menu.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.oncontextmenu\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5574\n\n___","ref":"deliveryelement.html#oncontextmenu"},{"type":"extras","title":"oncopy - DeliveryElement","doc":"• **oncopy**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncopy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4624\n\n___","ref":"deliveryelement.html#oncopy"},{"type":"extras","title":"oncuechange - DeliveryElement","doc":"• **oncuechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncuechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5575\n\n___","ref":"deliveryelement.html#oncuechange"},{"type":"extras","title":"oncut - DeliveryElement","doc":"• **oncut**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncut\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4625\n\n___","ref":"deliveryelement.html#oncut"},{"type":"extras","title":"ondblclick - DeliveryElement","doc":"• **ondblclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user double-clicks the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.ondblclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5580\n\n___","ref":"deliveryelement.html#ondblclick"},{"type":"extras","title":"ondrag - DeliveryElement","doc":"• **ondrag**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object continuously during a drag operation.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondrag\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5585\n\n___","ref":"deliveryelement.html#ondrag"},{"type":"extras","title":"ondragend - DeliveryElement","doc":"• **ondragend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object when the user releases the mouse at the close of a drag operation.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5590\n\n___","ref":"deliveryelement.html#ondragend"},{"type":"extras","title":"ondragenter - DeliveryElement","doc":"• **ondragenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target element when the user drags the object to a valid drop target.\n\n**`param`** The drag event.\n\n#### Inherited from\n\nHTMLElement.ondragenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5595\n\n___","ref":"deliveryelement.html#ondragenter"},{"type":"extras","title":"ondragleave - DeliveryElement","doc":"• **ondragleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target object when the user moves the mouse out of a valid drop target during a drag operation.\n\n**`param`** The drag event.\n\n#### Inherited from\n\nHTMLElement.ondragleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5600\n\n___","ref":"deliveryelement.html#ondragleave"},{"type":"extras","title":"ondragover - DeliveryElement","doc":"• **ondragover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target element continuously while the user drags the object over a valid drop target.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5605\n\n___","ref":"deliveryelement.html#ondragover"},{"type":"extras","title":"ondragstart - DeliveryElement","doc":"• **ondragstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object when the user starts to drag a text selection or selected object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5610\n\n___","ref":"deliveryelement.html#ondragstart"},{"type":"extras","title":"ondrop - DeliveryElement","doc":"• **ondrop**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ondrop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5611\n\n___","ref":"deliveryelement.html#ondrop"},{"type":"extras","title":"ondurationchange - DeliveryElement","doc":"• **ondurationchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the duration attribute is updated.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondurationchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5616\n\n___","ref":"deliveryelement.html#ondurationchange"},{"type":"extras","title":"onemptied - DeliveryElement","doc":"• **onemptied**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the media element is reset to its initial state.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onemptied\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5621\n\n___","ref":"deliveryelement.html#onemptied"},{"type":"extras","title":"onended - DeliveryElement","doc":"• **onended**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the end of playback is reached.\n\n**`param`** The event\n\n#### Inherited from\n\nHTMLElement.onended\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5626\n\n___","ref":"deliveryelement.html#onended"},{"type":"extras","title":"onerror - DeliveryElement","doc":"• **onerror**: `OnErrorEventHandler`\n\nFires when an error occurs during object loading.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onerror\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5631\n\n___","ref":"deliveryelement.html#onerror"},{"type":"extras","title":"onfocus - DeliveryElement","doc":"• **onfocus**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FocusEvent`) => `any`\n\nFires when the object receives focus.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onfocus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5636\n\n___","ref":"deliveryelement.html#onfocus"},{"type":"extras","title":"onformdata - DeliveryElement","doc":"• **onformdata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FormDataEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onformdata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5637\n\n___","ref":"deliveryelement.html#onformdata"},{"type":"extras","title":"onfullscreenchange - DeliveryElement","doc":"• **onfullscreenchange**: ``null`` \\| (`this`: `Element`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onfullscreenchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4783\n\n___","ref":"deliveryelement.html#onfullscreenchange"},{"type":"extras","title":"onfullscreenerror - DeliveryElement","doc":"• **onfullscreenerror**: ``null`` \\| (`this`: `Element`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onfullscreenerror\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4784\n\n___","ref":"deliveryelement.html#onfullscreenerror"},{"type":"extras","title":"ongotpointercapture - DeliveryElement","doc":"• **ongotpointercapture**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ongotpointercapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5638\n\n___","ref":"deliveryelement.html#ongotpointercapture"},{"type":"extras","title":"oninput - DeliveryElement","doc":"• **oninput**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oninput\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5639\n\n___","ref":"deliveryelement.html#oninput"},{"type":"extras","title":"oninvalid - DeliveryElement","doc":"• **oninvalid**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oninvalid\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5640\n\n___","ref":"deliveryelement.html#oninvalid"},{"type":"extras","title":"onkeydown - DeliveryElement","doc":"• **onkeydown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user presses a key.\n\n**`param`** The keyboard event\n\n#### Inherited from\n\nHTMLElement.onkeydown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5645\n\n___","ref":"deliveryelement.html#onkeydown"},{"type":"extras","title":"onkeypress - DeliveryElement","doc":"• **onkeypress**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user presses an alphanumeric key.\n\n**`param`** The event.\n\n**`deprecated`**\n\n#### Inherited from\n\nHTMLElement.onkeypress\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5651\n\n___","ref":"deliveryelement.html#onkeypress"},{"type":"extras","title":"onkeyup - DeliveryElement","doc":"• **onkeyup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user releases a key.\n\n**`param`** The keyboard event\n\n#### Inherited from\n\nHTMLElement.onkeyup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5656\n\n___","ref":"deliveryelement.html#onkeyup"},{"type":"extras","title":"onload - DeliveryElement","doc":"• **onload**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires immediately after the browser loads the object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onload\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5661\n\n___","ref":"deliveryelement.html#onload"},{"type":"extras","title":"onloadeddata - DeliveryElement","doc":"• **onloadeddata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when media data is loaded at the current playback position.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadeddata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5666\n\n___","ref":"deliveryelement.html#onloadeddata"},{"type":"extras","title":"onloadedmetadata - DeliveryElement","doc":"• **onloadedmetadata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the duration and dimensions of the media have been determined.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadedmetadata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5671\n\n___","ref":"deliveryelement.html#onloadedmetadata"},{"type":"extras","title":"onloadstart - DeliveryElement","doc":"• **onloadstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when Internet Explorer begins looking for media data.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5676\n\n___","ref":"deliveryelement.html#onloadstart"},{"type":"extras","title":"onlostpointercapture - DeliveryElement","doc":"• **onlostpointercapture**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onlostpointercapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5677\n\n___","ref":"deliveryelement.html#onlostpointercapture"},{"type":"extras","title":"onmousedown - DeliveryElement","doc":"• **onmousedown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the object with either mouse button.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmousedown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5682\n\n___","ref":"deliveryelement.html#onmousedown"},{"type":"extras","title":"onmouseenter - DeliveryElement","doc":"• **onmouseenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onmouseenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5683\n\n___","ref":"deliveryelement.html#onmouseenter"},{"type":"extras","title":"onmouseleave - DeliveryElement","doc":"• **onmouseleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onmouseleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5684\n\n___","ref":"deliveryelement.html#onmouseleave"},{"type":"extras","title":"onmousemove - DeliveryElement","doc":"• **onmousemove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse over the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmousemove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5689\n\n___","ref":"deliveryelement.html#onmousemove"},{"type":"extras","title":"onmouseout - DeliveryElement","doc":"• **onmouseout**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse pointer outside the boundaries of the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseout\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5694\n\n___","ref":"deliveryelement.html#onmouseout"},{"type":"extras","title":"onmouseover - DeliveryElement","doc":"• **onmouseover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse pointer into the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5699\n\n___","ref":"deliveryelement.html#onmouseover"},{"type":"extras","title":"onmouseup - DeliveryElement","doc":"• **onmouseup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user releases a mouse button while the mouse is over the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5704\n\n___","ref":"deliveryelement.html#onmouseup"},{"type":"extras","title":"onpaste - DeliveryElement","doc":"• **onpaste**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpaste\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4626\n\n___","ref":"deliveryelement.html#onpaste"},{"type":"extras","title":"onpause - DeliveryElement","doc":"• **onpause**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback is paused.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onpause\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5709\n\n___","ref":"deliveryelement.html#onpause"},{"type":"extras","title":"onplay - DeliveryElement","doc":"• **onplay**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the play method is requested.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onplay\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5714\n\n___","ref":"deliveryelement.html#onplay"},{"type":"extras","title":"onplaying - DeliveryElement","doc":"• **onplaying**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the audio or video has started playing.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onplaying\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5719\n\n___","ref":"deliveryelement.html#onplaying"},{"type":"extras","title":"onpointercancel - DeliveryElement","doc":"• **onpointercancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointercancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5720\n\n___","ref":"deliveryelement.html#onpointercancel"},{"type":"extras","title":"onpointerdown - DeliveryElement","doc":"• **onpointerdown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerdown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5721\n\n___","ref":"deliveryelement.html#onpointerdown"},{"type":"extras","title":"onpointerenter - DeliveryElement","doc":"• **onpointerenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5722\n\n___","ref":"deliveryelement.html#onpointerenter"},{"type":"extras","title":"onpointerleave - DeliveryElement","doc":"• **onpointerleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5723\n\n___","ref":"deliveryelement.html#onpointerleave"},{"type":"extras","title":"onpointermove - DeliveryElement","doc":"• **onpointermove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointermove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5724\n\n___","ref":"deliveryelement.html#onpointermove"},{"type":"extras","title":"onpointerout - DeliveryElement","doc":"• **onpointerout**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerout\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5725\n\n___","ref":"deliveryelement.html#onpointerout"},{"type":"extras","title":"onpointerover - DeliveryElement","doc":"• **onpointerover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5726\n\n___","ref":"deliveryelement.html#onpointerover"},{"type":"extras","title":"onpointerup - DeliveryElement","doc":"• **onpointerup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5727\n\n___","ref":"deliveryelement.html#onpointerup"},{"type":"extras","title":"onprogress - DeliveryElement","doc":"• **onprogress**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `ProgressEvent`<`EventTarget`\\>) => `any`\n\nOccurs to indicate progress while downloading media data.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onprogress\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5732\n\n___","ref":"deliveryelement.html#onprogress"},{"type":"extras","title":"onratechange - DeliveryElement","doc":"• **onratechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the playback rate is increased or decreased.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onratechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5737\n\n___","ref":"deliveryelement.html#onratechange"},{"type":"extras","title":"onreset - DeliveryElement","doc":"• **onreset**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the user resets a form.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onreset\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5742\n\n___","ref":"deliveryelement.html#onreset"},{"type":"extras","title":"onresize - DeliveryElement","doc":"• **onresize**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `UIEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onresize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5743\n\n___","ref":"deliveryelement.html#onresize"},{"type":"extras","title":"onscroll - DeliveryElement","doc":"• **onscroll**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the user repositions the scroll box in the scroll bar on the object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onscroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5748\n\n___","ref":"deliveryelement.html#onscroll"},{"type":"extras","title":"onsecuritypolicyviolation - DeliveryElement","doc":"• **onsecuritypolicyviolation**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `SecurityPolicyViolationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onsecuritypolicyviolation\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5749\n\n___","ref":"deliveryelement.html#onsecuritypolicyviolation"},{"type":"extras","title":"onseeked - DeliveryElement","doc":"• **onseeked**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the seek operation ends.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onseeked\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5754\n\n___","ref":"deliveryelement.html#onseeked"},{"type":"extras","title":"onseeking - DeliveryElement","doc":"• **onseeking**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the current playback position is moved.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onseeking\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5759\n\n___","ref":"deliveryelement.html#onseeking"},{"type":"extras","title":"onselect - DeliveryElement","doc":"• **onselect**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the current selection changes.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onselect\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5764\n\n___","ref":"deliveryelement.html#onselect"},{"type":"extras","title":"onselectionchange - DeliveryElement","doc":"• **onselectionchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onselectionchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5765\n\n___","ref":"deliveryelement.html#onselectionchange"},{"type":"extras","title":"onselectstart - DeliveryElement","doc":"• **onselectstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onselectstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5766\n\n___","ref":"deliveryelement.html#onselectstart"},{"type":"extras","title":"onslotchange - DeliveryElement","doc":"• **onslotchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onslotchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5767\n\n___","ref":"deliveryelement.html#onslotchange"},{"type":"extras","title":"onstalled - DeliveryElement","doc":"• **onstalled**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the download has stopped.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onstalled\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5772\n\n___","ref":"deliveryelement.html#onstalled"},{"type":"extras","title":"onsubmit - DeliveryElement","doc":"• **onsubmit**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `SubmitEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onsubmit\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5773\n\n___","ref":"deliveryelement.html#onsubmit"},{"type":"extras","title":"onsuspend - DeliveryElement","doc":"• **onsuspend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs if the load operation has been intentionally halted.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onsuspend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5778\n\n___","ref":"deliveryelement.html#onsuspend"},{"type":"extras","title":"ontimeupdate - DeliveryElement","doc":"• **ontimeupdate**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs to indicate the current playback position.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ontimeupdate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5783\n\n___","ref":"deliveryelement.html#ontimeupdate"},{"type":"extras","title":"ontoggle - DeliveryElement","doc":"• **ontoggle**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontoggle\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5784\n\n___","ref":"deliveryelement.html#ontoggle"},{"type":"extras","title":"ontouchcancel - DeliveryElement","doc":"• `Optional` **ontouchcancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchcancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5785\n\n___","ref":"deliveryelement.html#ontouchcancel"},{"type":"extras","title":"ontouchend - DeliveryElement","doc":"• `Optional` **ontouchend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5786\n\n___","ref":"deliveryelement.html#ontouchend"},{"type":"extras","title":"ontouchmove - DeliveryElement","doc":"• `Optional` **ontouchmove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchmove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5787\n\n___","ref":"deliveryelement.html#ontouchmove"},{"type":"extras","title":"ontouchstart - DeliveryElement","doc":"• `Optional` **ontouchstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5788\n\n___","ref":"deliveryelement.html#ontouchstart"},{"type":"extras","title":"ontransitioncancel - DeliveryElement","doc":"• **ontransitioncancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitioncancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5789\n\n___","ref":"deliveryelement.html#ontransitioncancel"},{"type":"extras","title":"ontransitionend - DeliveryElement","doc":"• **ontransitionend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5790\n\n___","ref":"deliveryelement.html#ontransitionend"},{"type":"extras","title":"ontransitionrun - DeliveryElement","doc":"• **ontransitionrun**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionrun\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5791\n\n___","ref":"deliveryelement.html#ontransitionrun"},{"type":"extras","title":"ontransitionstart - DeliveryElement","doc":"• **ontransitionstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5792\n\n___","ref":"deliveryelement.html#ontransitionstart"},{"type":"extras","title":"onvolumechange - DeliveryElement","doc":"• **onvolumechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the volume is changed, or playback is muted or unmuted.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onvolumechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5797\n\n___","ref":"deliveryelement.html#onvolumechange"},{"type":"extras","title":"onwaiting - DeliveryElement","doc":"• **onwaiting**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback stops because the next frame of a video resource is not available.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onwaiting\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5802\n\n___","ref":"deliveryelement.html#onwaiting"},{"type":"extras","title":"onwebkitanimationend - DeliveryElement","doc":"• **onwebkitanimationend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationend`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5804\n\n___","ref":"deliveryelement.html#onwebkitanimationend"},{"type":"extras","title":"onwebkitanimationiteration - DeliveryElement","doc":"• **onwebkitanimationiteration**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationiteration`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationiteration\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5806\n\n___","ref":"deliveryelement.html#onwebkitanimationiteration"},{"type":"extras","title":"onwebkitanimationstart - DeliveryElement","doc":"• **onwebkitanimationstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationstart`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5808\n\n___","ref":"deliveryelement.html#onwebkitanimationstart"},{"type":"extras","title":"onwebkittransitionend - DeliveryElement","doc":"• **onwebkittransitionend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `ontransitionend`.\n\n#### Inherited from\n\nHTMLElement.onwebkittransitionend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5810\n\n___","ref":"deliveryelement.html#onwebkittransitionend"},{"type":"extras","title":"onwheel - DeliveryElement","doc":"• **onwheel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `WheelEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onwheel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5811\n\n___","ref":"deliveryelement.html#onwheel"},{"type":"extras","title":"outerHTML - DeliveryElement","doc":"• **outerHTML**: `string`\n\n#### Inherited from\n\nHTMLElement.outerHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4785\n\n___","ref":"deliveryelement.html#outerhtml"},{"type":"extras","title":"outerText - DeliveryElement","doc":"• **outerText**: `string`\n\n#### Inherited from\n\nHTMLElement.outerText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6236\n\n___","ref":"deliveryelement.html#outertext"},{"type":"extras","title":"ownerDocument - DeliveryElement","doc":"• `Readonly` **ownerDocument**: `Document`\n\n#### Inherited from\n\nHTMLElement.ownerDocument\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4786\n\n___","ref":"deliveryelement.html#ownerdocument"},{"type":"extras","title":"parentElement - DeliveryElement","doc":"• `Readonly` **parentElement**: ``null`` \\| `HTMLElement`\n\nReturns the parent element.\n\n#### Inherited from\n\nHTMLElement.parentElement\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9794\n\n___","ref":"deliveryelement.html#parentelement"},{"type":"extras","title":"parentNode - DeliveryElement","doc":"• `Readonly` **parentNode**: ``null`` \\| `ParentNode`\n\nReturns the parent.\n\n#### Inherited from\n\nHTMLElement.parentNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9796\n\n___","ref":"deliveryelement.html#parentnode"},{"type":"extras","title":"part - DeliveryElement","doc":"• `Readonly` **part**: `DOMTokenList`\n\n#### Inherited from\n\nHTMLElement.part\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4787\n\n___","ref":"deliveryelement.html#part"},{"type":"extras","title":"prefix - DeliveryElement","doc":"• `Readonly` **prefix**: ``null`` \\| `string`\n\nReturns the namespace prefix.\n\n#### Inherited from\n\nHTMLElement.prefix\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4789\n\n___","ref":"deliveryelement.html#prefix"},{"type":"extras","title":"previousElementSibling - DeliveryElement","doc":"• `Readonly` **previousElementSibling**: ``null`` \\| `Element`\n\nReturns the first preceding sibling that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.previousElementSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9944\n\n___","ref":"deliveryelement.html#previouselementsibling"},{"type":"extras","title":"previousSibling - DeliveryElement","doc":"• `Readonly` **previousSibling**: ``null`` \\| `ChildNode`\n\nReturns the previous sibling.\n\n#### Inherited from\n\nHTMLElement.previousSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9798\n\n___","ref":"deliveryelement.html#previoussibling"},{"type":"extras","title":"review - DeliveryElement","doc":"• **review**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:213](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L213)\n\n___","ref":"deliveryelement.html#review"},{"type":"extras","title":"scrollHeight - DeliveryElement","doc":"• `Readonly` **scrollHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4790\n\n___","ref":"deliveryelement.html#scrollheight"},{"type":"extras","title":"scrollLeft - DeliveryElement","doc":"• **scrollLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4791\n\n___","ref":"deliveryelement.html#scrollleft"},{"type":"extras","title":"scrollTop - DeliveryElement","doc":"• **scrollTop**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4792\n\n___","ref":"deliveryelement.html#scrolltop"},{"type":"extras","title":"scrollWidth - DeliveryElement","doc":"• `Readonly` **scrollWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4793\n\n___","ref":"deliveryelement.html#scrollwidth"},{"type":"extras","title":"shadowRoot - DeliveryElement","doc":"• `Readonly` **shadowRoot**: ``null`` \\| `ShadowRoot`\n\nReturns element's shadow root, if any, and if shadow root's mode is \"open\", and null otherwise.\n\n#### Inherited from\n\nHTMLElement.shadowRoot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4795\n\n___","ref":"deliveryelement.html#shadowroot"},{"type":"extras","title":"slot - DeliveryElement","doc":"• **slot**: `string`\n\nReturns the value of element's slot content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.slot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4797\n\n___","ref":"deliveryelement.html#slot"},{"type":"extras","title":"spellcheck - DeliveryElement","doc":"• **spellcheck**: `boolean`\n\n#### Inherited from\n\nHTMLElement.spellcheck\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6237\n\n___","ref":"deliveryelement.html#spellcheck"},{"type":"extras","title":"style - DeliveryElement","doc":"• `Readonly` **style**: `CSSStyleDeclaration`\n\n#### Inherited from\n\nHTMLElement.style\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4883\n\n___","ref":"deliveryelement.html#style"},{"type":"extras","title":"tabIndex - DeliveryElement","doc":"• **tabIndex**: `number`\n\n#### Inherited from\n\nHTMLElement.tabIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7430\n\n___","ref":"deliveryelement.html#tabindex"},{"type":"extras","title":"tagName - DeliveryElement","doc":"• `Readonly` **tagName**: `string`\n\nReturns the HTML-uppercased qualified name.\n\n#### Inherited from\n\nHTMLElement.tagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4799\n\n___","ref":"deliveryelement.html#tagname"},{"type":"extras","title":"textContent - DeliveryElement","doc":"• **textContent**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.textContent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9799\n\n___","ref":"deliveryelement.html#textcontent"},{"type":"extras","title":"title - DeliveryElement","doc":"• **title**: `string`\n\n#### Inherited from\n\nHTMLElement.title\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6238\n\n___","ref":"deliveryelement.html#title"},{"type":"extras","title":"translate - DeliveryElement","doc":"• **translate**: `boolean`\n\n#### Inherited from\n\nHTMLElement.translate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6239","ref":"deliveryelement.html#translate"},{"type":"extras","title":"Accessors - DeliveryElement","doc":"","ref":"deliveryelement.html#accessors"},{"type":"extras","title":"observedAttributes - DeliveryElement","doc":"• `Static` `get` **observedAttributes**(): `string`[]\n\n#### Returns\n\n`string`[]\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:285](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L285)","ref":"deliveryelement.html#observedattributes"},{"type":"extras","title":"Methods - DeliveryElement","doc":"","ref":"deliveryelement.html#methods"},{"type":"extras","title":"addEventListener - DeliveryElement","doc":"▸ **addEventListener**<`K`\\>(`type`, `listener`, `options?`): `void`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementEventMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `K` |\n| `listener` | (`this`: `HTMLElement`, `ev`: `HTMLElementEventMap`[`K`]) => `any` |\n| `options?` | `boolean` \\| `AddEventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.addEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6242\n\n▸ **addEventListener**(`type`, `listener`, `options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `string` |\n| `listener` | `EventListenerOrEventListenerObject` |\n| `options?` | `boolean` \\| `AddEventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.addEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6243\n\n___","ref":"deliveryelement.html#addeventlistener"},{"type":"extras","title":"after - DeliveryElement","doc":"▸ **after**(...`nodes`): `void`\n\nInserts nodes just after node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.after\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3497\n\n___","ref":"deliveryelement.html#after"},{"type":"extras","title":"animate - DeliveryElement","doc":"▸ **animate**(`keyframes`, `options?`): `Animation`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `keyframes` | ``null`` \\| `Keyframe`[] \\| `PropertyIndexedKeyframes` |\n| `options?` | `number` \\| `KeyframeAnimationOptions` |\n\n#### Returns\n\n`Animation`\n\n#### Inherited from\n\nHTMLElement.animate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1978\n\n___","ref":"deliveryelement.html#animate"},{"type":"extras","title":"append - DeliveryElement","doc":"▸ **append**(...`nodes`): `void`\n\nInserts nodes after the last child of node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.append\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10152\n\n___","ref":"deliveryelement.html#append"},{"type":"extras","title":"appendChild - DeliveryElement","doc":"▸ **appendChild**<`T`\\>(`node`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.appendChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9800\n\n___","ref":"deliveryelement.html#appendchild"},{"type":"extras","title":"attachInternals - DeliveryElement","doc":"▸ **attachInternals**(): `ElementInternals`\n\n#### Returns\n\n`ElementInternals`\n\n#### Inherited from\n\nHTMLElement.attachInternals\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6240\n\n___","ref":"deliveryelement.html#attachinternals"},{"type":"extras","title":"attachShadow - DeliveryElement","doc":"▸ **attachShadow**(`init`): `ShadowRoot`\n\nCreates a shadow root for element and returns it.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `init` | `ShadowRootInit` |\n\n#### Returns\n\n`ShadowRoot`\n\n#### Inherited from\n\nHTMLElement.attachShadow\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4801\n\n___","ref":"deliveryelement.html#attachshadow"},{"type":"extras","title":"attributeChangedCallback - DeliveryElement","doc":"▸ **attributeChangedCallback**(`_name`, `_oldValue`, `_newValue`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `_name` | `any` |\n| `_oldValue` | `any` |\n| `_newValue` | `any` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:389](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L389)\n\n___","ref":"deliveryelement.html#attributechangedcallback"},{"type":"extras","title":"before - DeliveryElement","doc":"▸ **before**(...`nodes`): `void`\n\nInserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.before\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3503\n\n___","ref":"deliveryelement.html#before"},{"type":"extras","title":"blur - DeliveryElement","doc":"▸ **blur**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.blur\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7431\n\n___","ref":"deliveryelement.html#blur"},{"type":"extras","title":"click - DeliveryElement","doc":"▸ **click**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.click\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6241\n\n___","ref":"deliveryelement.html#click"},{"type":"extras","title":"cloneNode - DeliveryElement","doc":"▸ **cloneNode**(`deep?`): `Node`\n\nReturns a copy of node. If deep is true, the copy also includes the node's descendants.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `deep?` | `boolean` |\n\n#### Returns\n\n`Node`\n\n#### Inherited from\n\nHTMLElement.cloneNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9802\n\n___","ref":"deliveryelement.html#clonenode"},{"type":"extras","title":"closest - DeliveryElement","doc":"▸ **closest**<`K`\\>(`selector`): ``null`` \\| `HTMLElementTagNameMap`[`K`]\n\nReturns the first (starting at element) inclusive ancestor that matches selectors, and null otherwise.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selector` | `K` |\n\n#### Returns\n\n``null`` \\| `HTMLElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4803\n\n▸ **closest**<`K`\\>(`selector`): ``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selector` | `K` |\n\n#### Returns\n\n``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4804\n\n▸ **closest**<`E`\\>(`selectors`): ``null`` \\| `E`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n``null`` \\| `E`\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4805\n\n___","ref":"deliveryelement.html#closest"},{"type":"extras","title":"compareDocumentPosition - DeliveryElement","doc":"▸ **compareDocumentPosition**(`other`): `number`\n\nReturns a bitmask indicating the position of other relative to node.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `other` | `Node` |\n\n#### Returns\n\n`number`\n\n#### Inherited from\n\nHTMLElement.compareDocumentPosition\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9804\n\n___","ref":"deliveryelement.html#comparedocumentposition"},{"type":"extras","title":"connectedCallback - DeliveryElement","doc":"▸ **connectedCallback**(): `void`\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:380](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L380)\n\n___","ref":"deliveryelement.html#connectedcallback"},{"type":"extras","title":"contains - DeliveryElement","doc":"▸ **contains**(`other`): `boolean`\n\nReturns true if other is an inclusive descendant of node, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `other` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.contains\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9806\n\n___","ref":"deliveryelement.html#contains"},{"type":"extras","title":"details - DeliveryElement","doc":"▸ **details**(`continuation`, `attemptGuid`, `partAttemptGuid`, `payload?`): `Object`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `continuation` | (`result`: `any`, `error`: `any`) => `void` |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `undefined` \\| `string` |\n| `payload?` | `any` |\n\n#### Returns\n\n`Object`\n\n| Name | Type |\n| :------ | :------ |\n| `bubbles` | `boolean` |\n| `detail` | { `attemptGuid`: `string` ; `continuation`: (`result`: `any`, `error`: `any`) => `void` ; `partAttemptGuid`: `undefined` \\| `string` ; `payload`: `any` ; `props`: [`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\> ; `sectionSlug`: `string` = props.context.sectionSlug } |\n| `detail.attemptGuid` | `string` |\n| `detail.continuation` | (`result`: `any`, `error`: `any`) => `void` |\n| `detail.partAttemptGuid` | `undefined` \\| `string` |\n| `detail.payload` | `any` |\n| `detail.props` | [`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\> |\n| `detail.sectionSlug` | `string` |\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:348](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L348)\n\n___","ref":"deliveryelement.html#details"},{"type":"extras","title":"dispatch - DeliveryElement","doc":"▸ **dispatch**(`name`, `attemptGuid`, `partAttemptGuid`, `payload?`): `Promise`<`any`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `name` | `string` |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `undefined` \\| `string` |\n| `payload?` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:289](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L289)\n\n___","ref":"deliveryelement.html#dispatch"},{"type":"extras","title":"dispatchEvent - DeliveryElement","doc":"▸ **dispatchEvent**(`event`): `boolean`\n\nDispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `event` | `Event` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.dispatchEvent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5033\n\n___","ref":"deliveryelement.html#dispatchevent"},{"type":"extras","title":"focus - DeliveryElement","doc":"▸ **focus**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `FocusOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.focus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7432\n\n___","ref":"deliveryelement.html#focus"},{"type":"extras","title":"getAnimations - DeliveryElement","doc":"▸ **getAnimations**(`options?`): `Animation`[]\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `GetAnimationsOptions` |\n\n#### Returns\n\n`Animation`[]\n\n#### Inherited from\n\nHTMLElement.getAnimations\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1979\n\n___","ref":"deliveryelement.html#getanimations"},{"type":"extras","title":"getAttribute - DeliveryElement","doc":"▸ **getAttribute**(`qualifiedName`): ``null`` \\| `string`\n\nReturns element's first attribute whose qualified name is qualifiedName, and null if there is no such attribute otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.getAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4807\n\n___","ref":"deliveryelement.html#getattribute"},{"type":"extras","title":"getAttributeNS - DeliveryElement","doc":"▸ **getAttributeNS**(`namespace`, `localName`): ``null`` \\| `string`\n\nReturns element's attribute whose namespace is namespace and local name is localName, and null if there is no such attribute otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.getAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4809\n\n___","ref":"deliveryelement.html#getattributens"},{"type":"extras","title":"getAttributeNames - DeliveryElement","doc":"▸ **getAttributeNames**(): `string`[]\n\nReturns the qualified names of all element's attributes. Can contain duplicates.\n\n#### Returns\n\n`string`[]\n\n#### Inherited from\n\nHTMLElement.getAttributeNames\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4811\n\n___","ref":"deliveryelement.html#getattributenames"},{"type":"extras","title":"getAttributeNode - DeliveryElement","doc":"▸ **getAttributeNode**(`qualifiedName`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.getAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4812\n\n___","ref":"deliveryelement.html#getattributenode"},{"type":"extras","title":"getAttributeNodeNS - DeliveryElement","doc":"▸ **getAttributeNodeNS**(`namespace`, `localName`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.getAttributeNodeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4813\n\n___","ref":"deliveryelement.html#getattributenodens"},{"type":"extras","title":"getBoundingClientRect - DeliveryElement","doc":"▸ **getBoundingClientRect**(): `DOMRect`\n\n#### Returns\n\n`DOMRect`\n\n#### Inherited from\n\nHTMLElement.getBoundingClientRect\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4814\n\n___","ref":"deliveryelement.html#getboundingclientrect"},{"type":"extras","title":"getClientRects - DeliveryElement","doc":"▸ **getClientRects**(): `DOMRectList`\n\n#### Returns\n\n`DOMRectList`\n\n#### Inherited from\n\nHTMLElement.getClientRects\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4815\n\n___","ref":"deliveryelement.html#getclientrects"},{"type":"extras","title":"getElementsByClassName - DeliveryElement","doc":"▸ **getElementsByClassName**(`classNames`): `HTMLCollectionOf`<`Element`\\>\n\nReturns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `classNames` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByClassName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4817\n\n___","ref":"deliveryelement.html#getelementsbyclassname"},{"type":"extras","title":"getElementsByTagName - DeliveryElement","doc":"▸ **getElementsByTagName**<`K`\\>(`qualifiedName`): `HTMLCollectionOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `K` |\n\n#### Returns\n\n`HTMLCollectionOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4818\n\n▸ **getElementsByTagName**<`K`\\>(`qualifiedName`): `HTMLCollectionOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `K` |\n\n#### Returns\n\n`HTMLCollectionOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4819\n\n▸ **getElementsByTagName**(`qualifiedName`): `HTMLCollectionOf`<`Element`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4820\n\n___","ref":"deliveryelement.html#getelementsbytagname"},{"type":"extras","title":"getElementsByTagNameNS - DeliveryElement","doc":"▸ **getElementsByTagNameNS**(`namespaceURI`, `localName`): `HTMLCollectionOf`<`HTMLElement`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespaceURI` | ``\"http://www.w3.org/1999/xhtml\"`` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`HTMLElement`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4821\n\n▸ **getElementsByTagNameNS**(`namespaceURI`, `localName`): `HTMLCollectionOf`<`SVGElement`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespaceURI` | ``\"http://www.w3.org/2000/svg\"`` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`SVGElement`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4822\n\n▸ **getElementsByTagNameNS**(`namespace`, `localName`): `HTMLCollectionOf`<`Element`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4823\n\n___","ref":"deliveryelement.html#getelementsbytagnamens"},{"type":"extras","title":"getRootNode - DeliveryElement","doc":"▸ **getRootNode**(`options?`): `Node`\n\nReturns node's root.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `GetRootNodeOptions` |\n\n#### Returns\n\n`Node`\n\n#### Inherited from\n\nHTMLElement.getRootNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9808\n\n___","ref":"deliveryelement.html#getrootnode"},{"type":"extras","title":"hasAttribute - DeliveryElement","doc":"▸ **hasAttribute**(`qualifiedName`): `boolean`\n\nReturns true if element has an attribute whose qualified name is qualifiedName, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4825\n\n___","ref":"deliveryelement.html#hasattribute"},{"type":"extras","title":"hasAttributeNS - DeliveryElement","doc":"▸ **hasAttributeNS**(`namespace`, `localName`): `boolean`\n\nReturns true if element has an attribute whose namespace is namespace and local name is localName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4827\n\n___","ref":"deliveryelement.html#hasattributens"},{"type":"extras","title":"hasAttributes - DeliveryElement","doc":"▸ **hasAttributes**(): `boolean`\n\nReturns true if element has attributes, and false otherwise.\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttributes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4829\n\n___","ref":"deliveryelement.html#hasattributes"},{"type":"extras","title":"hasChildNodes - DeliveryElement","doc":"▸ **hasChildNodes**(): `boolean`\n\nReturns whether node has children.\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasChildNodes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9810\n\n___","ref":"deliveryelement.html#haschildnodes"},{"type":"extras","title":"hasPointerCapture - DeliveryElement","doc":"▸ **hasPointerCapture**(`pointerId`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasPointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4830\n\n___","ref":"deliveryelement.html#haspointercapture"},{"type":"extras","title":"insertAdjacentElement - DeliveryElement","doc":"▸ **insertAdjacentElement**(`where`, `element`): ``null`` \\| `Element`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `where` | `InsertPosition` |\n| `element` | `Element` |\n\n#### Returns\n\n``null`` \\| `Element`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentElement\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4831\n\n___","ref":"deliveryelement.html#insertadjacentelement"},{"type":"extras","title":"insertAdjacentHTML - DeliveryElement","doc":"▸ **insertAdjacentHTML**(`position`, `text`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `position` | `InsertPosition` |\n| `text` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4832\n\n___","ref":"deliveryelement.html#insertadjacenthtml"},{"type":"extras","title":"insertAdjacentText - DeliveryElement","doc":"▸ **insertAdjacentText**(`where`, `data`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `where` | `InsertPosition` |\n| `data` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4833\n\n___","ref":"deliveryelement.html#insertadjacenttext"},{"type":"extras","title":"insertBefore - DeliveryElement","doc":"▸ **insertBefore**<`T`\\>(`node`, `child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `T` |\n| `child` | ``null`` \\| `Node` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.insertBefore\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9811\n\n___","ref":"deliveryelement.html#insertbefore"},{"type":"extras","title":"isDefaultNamespace - DeliveryElement","doc":"▸ **isDefaultNamespace**(`namespace`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isDefaultNamespace\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9812\n\n___","ref":"deliveryelement.html#isdefaultnamespace"},{"type":"extras","title":"isEqualNode - DeliveryElement","doc":"▸ **isEqualNode**(`otherNode`): `boolean`\n\nReturns whether node and otherNode have the same properties.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `otherNode` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isEqualNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9814\n\n___","ref":"deliveryelement.html#isequalnode"},{"type":"extras","title":"isSameNode - DeliveryElement","doc":"▸ **isSameNode**(`otherNode`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `otherNode` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isSameNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9815\n\n___","ref":"deliveryelement.html#issamenode"},{"type":"extras","title":"lookupNamespaceURI - DeliveryElement","doc":"▸ **lookupNamespaceURI**(`prefix`): ``null`` \\| `string`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `prefix` | ``null`` \\| `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.lookupNamespaceURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9816\n\n___","ref":"deliveryelement.html#lookupnamespaceuri"},{"type":"extras","title":"lookupPrefix - DeliveryElement","doc":"▸ **lookupPrefix**(`namespace`): ``null`` \\| `string`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.lookupPrefix\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9817\n\n___","ref":"deliveryelement.html#lookupprefix"},{"type":"extras","title":"matches - DeliveryElement","doc":"▸ **matches**(`selectors`): `boolean`\n\nReturns true if matching selectors against element's root yields element, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.matches\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4835\n\n___","ref":"deliveryelement.html#matches"},{"type":"extras","title":"normalize - DeliveryElement","doc":"▸ **normalize**(): `void`\n\nRemoves empty exclusive Text nodes and concatenates the data of remaining contiguous exclusive Text nodes into the first of their nodes.\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.normalize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9819\n\n___","ref":"deliveryelement.html#normalize"},{"type":"extras","title":"notify - DeliveryElement","doc":"▸ **notify**(`eventName`, `payload`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `eventName` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:313](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L313)\n\n___","ref":"deliveryelement.html#notify"},{"type":"extras","title":"prepend - DeliveryElement","doc":"▸ **prepend**(...`nodes`): `void`\n\nInserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.prepend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10158\n\n___","ref":"deliveryelement.html#prepend"},{"type":"extras","title":"props - DeliveryElement","doc":"▸ **props**(): [`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\>\n\n#### Returns\n\n[`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:317](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L317)\n\n___","ref":"deliveryelement.html#props"},{"type":"extras","title":"querySelector - DeliveryElement","doc":"▸ **querySelector**<`K`\\>(`selectors`): ``null`` \\| `HTMLElementTagNameMap`[`K`]\n\nReturns the first element that is a descendant of node that matches selectors.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n``null`` \\| `HTMLElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10160\n\n▸ **querySelector**<`K`\\>(`selectors`): ``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10161\n\n▸ **querySelector**<`E`\\>(`selectors`): ``null`` \\| `E`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n``null`` \\| `E`\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10162\n\n___","ref":"deliveryelement.html#queryselector"},{"type":"extras","title":"querySelectorAll - DeliveryElement","doc":"▸ **querySelectorAll**<`K`\\>(`selectors`): `NodeListOf`<`HTMLElementTagNameMap`[`K`]\\>\n\nReturns all element descendants of node that match selectors.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n`NodeListOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10164\n\n▸ **querySelectorAll**<`K`\\>(`selectors`): `NodeListOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n`NodeListOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10165\n\n▸ **querySelectorAll**<`E`\\>(`selectors`): `NodeListOf`<`E`\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`NodeListOf`<`E`\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10166\n\n___","ref":"deliveryelement.html#queryselectorall"},{"type":"extras","title":"releasePointerCapture - DeliveryElement","doc":"▸ **releasePointerCapture**(`pointerId`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.releasePointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4836\n\n___","ref":"deliveryelement.html#releasepointercapture"},{"type":"extras","title":"remove - DeliveryElement","doc":"▸ **remove**(): `void`\n\nRemoves node.\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.remove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3505\n\n___","ref":"deliveryelement.html#remove"},{"type":"extras","title":"removeAttribute - DeliveryElement","doc":"▸ **removeAttribute**(`qualifiedName`): `void`\n\nRemoves element's first attribute whose qualified name is qualifiedName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4838\n\n___","ref":"deliveryelement.html#removeattribute"},{"type":"extras","title":"removeAttributeNS - DeliveryElement","doc":"▸ **removeAttributeNS**(`namespace`, `localName`): `void`\n\nRemoves element's attribute whose namespace is namespace and local name is localName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4840\n\n___","ref":"deliveryelement.html#removeattributens"},{"type":"extras","title":"removeAttributeNode - DeliveryElement","doc":"▸ **removeAttributeNode**(`attr`): `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n`Attr`\n\n#### Inherited from\n\nHTMLElement.removeAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4841\n\n___","ref":"deliveryelement.html#removeattributenode"},{"type":"extras","title":"removeChild - DeliveryElement","doc":"▸ **removeChild**<`T`\\>(`child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `child` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.removeChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9820\n\n___","ref":"deliveryelement.html#removechild"},{"type":"extras","title":"removeEventListener - DeliveryElement","doc":"▸ **removeEventListener**<`K`\\>(`type`, `listener`, `options?`): `void`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementEventMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `K` |\n| `listener` | (`this`: `HTMLElement`, `ev`: `HTMLElementEventMap`[`K`]) => `any` |\n| `options?` | `boolean` \\| `EventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6244\n\n▸ **removeEventListener**(`type`, `listener`, `options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `string` |\n| `listener` | `EventListenerOrEventListenerObject` |\n| `options?` | `boolean` \\| `EventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6245\n\n___","ref":"deliveryelement.html#removeeventlistener"},{"type":"extras","title":"render - DeliveryElement","doc":"▸ `Abstract` **render**(`mountPoint`, `props`): `void`\n\nImplemented by concrete web component, the `render` method is called\nonce after the web component has been mounted and \"connected\" to the DOM, and\nthen again every time that either the `state` or `model` attributes have\nchanged on the web component.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `mountPoint` | `HTMLDivElement` | a top level div element created by the component that the concrete impl can use to render the rest of the actual UX |\n| `props` | [`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\> | the current set of delivery component properties |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:378](https://github.com/Simon-Initiative/oli-torus/blob/41fb6f0/assets/src/components/activities/DeliveryElement.ts#L378)\n\n___","ref":"deliveryelement.html#render"},{"type":"extras","title":"replaceChild - DeliveryElement","doc":"▸ **replaceChild**<`T`\\>(`node`, `child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `Node` |\n| `child` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.replaceChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9821\n\n___","ref":"deliveryelement.html#replacechild"},{"type":"extras","title":"replaceChildren - DeliveryElement","doc":"▸ **replaceChildren**(...`nodes`): `void`\n\nReplace all children of node with nodes, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.replaceChildren\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10172\n\n___","ref":"deliveryelement.html#replacechildren"},{"type":"extras","title":"replaceWith - DeliveryElement","doc":"▸ **replaceWith**(...`nodes`): `void`\n\nReplaces node with nodes, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.replaceWith\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3511\n\n___","ref":"deliveryelement.html#replacewith"},{"type":"extras","title":"requestFullscreen - DeliveryElement","doc":"▸ **requestFullscreen**(`options?`): `Promise`<`void`\\>\n\nDisplays element fullscreen and resolves promise when done.\n\nWhen supplied, options's navigationUI member indicates whether showing navigation UI while in fullscreen is preferred or not. If set to \"show\", navigation simplicity is preferred over screen space, and if set to \"hide\", more screen space is preferred. User agents are always free to honor user preference over the application's. The default value \"auto\" indicates no application preference.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `FullscreenOptions` |\n\n#### Returns\n\n`Promise`<`void`\\>\n\n#### Inherited from\n\nHTMLElement.requestFullscreen\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4847\n\n___","ref":"deliveryelement.html#requestfullscreen"},{"type":"extras","title":"requestPointerLock - DeliveryElement","doc":"▸ **requestPointerLock**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.requestPointerLock\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4848\n\n___","ref":"deliveryelement.html#requestpointerlock"},{"type":"extras","title":"scroll - DeliveryElement","doc":"▸ **scroll**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4849\n\n▸ **scroll**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4850\n\n___","ref":"deliveryelement.html#scroll"},{"type":"extras","title":"scrollBy - DeliveryElement","doc":"▸ **scrollBy**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollBy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4851\n\n▸ **scrollBy**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollBy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4852\n\n___","ref":"deliveryelement.html#scrollby"},{"type":"extras","title":"scrollIntoView - DeliveryElement","doc":"▸ **scrollIntoView**(`arg?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `arg?` | `boolean` \\| `ScrollIntoViewOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollIntoView\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4853\n\n___","ref":"deliveryelement.html#scrollintoview"},{"type":"extras","title":"scrollTo - DeliveryElement","doc":"▸ **scrollTo**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollTo\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4854\n\n▸ **scrollTo**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollTo\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4855\n\n___","ref":"deliveryelement.html#scrollto"},{"type":"extras","title":"setAttribute - DeliveryElement","doc":"▸ **setAttribute**(`qualifiedName`, `value`): `void`\n\nSets the value of element's first attribute whose qualified name is qualifiedName to value.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n| `value` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4857\n\n___","ref":"deliveryelement.html#setattribute"},{"type":"extras","title":"setAttributeNS - DeliveryElement","doc":"▸ **setAttributeNS**(`namespace`, `qualifiedName`, `value`): `void`\n\nSets the value of element's attribute whose namespace is namespace and local name is localName to value.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `qualifiedName` | `string` |\n| `value` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4859\n\n___","ref":"deliveryelement.html#setattributens"},{"type":"extras","title":"setAttributeNode - DeliveryElement","doc":"▸ **setAttributeNode**(`attr`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.setAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4860\n\n___","ref":"deliveryelement.html#setattributenode"},{"type":"extras","title":"setAttributeNodeNS - DeliveryElement","doc":"▸ **setAttributeNodeNS**(`attr`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.setAttributeNodeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4861\n\n___","ref":"deliveryelement.html#setattributenodens"},{"type":"extras","title":"setPointerCapture - DeliveryElement","doc":"▸ **setPointerCapture**(`pointerId`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setPointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4862\n\n___","ref":"deliveryelement.html#setpointercapture"},{"type":"extras","title":"toggleAttribute - DeliveryElement","doc":"▸ **toggleAttribute**(`qualifiedName`, `force?`): `boolean`\n\nIf force is not given, \"toggles\" qualifiedName, removing it if it is present and adding it if it is not present. If force is true, adds qualifiedName. If force is false, removes qualifiedName.\n\nReturns true if qualifiedName is now present, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n| `force?` | `boolean` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.toggleAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4868\n\n___","ref":"deliveryelement.html#toggleattribute"},{"type":"extras","title":"webkitMatchesSelector - DeliveryElement","doc":"▸ **webkitMatchesSelector**(`selectors`): `boolean`\n\n**`deprecated`** This is a legacy alias of `matches`.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.webkitMatchesSelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4870","ref":"deliveryelement.html#webkitmatchesselector"}],"producer":{"name":"ex_doc","version":[48,46,51,52,46,50]},"content_type":"text/markdown"} \ No newline at end of file +searchData={"items":[{"type":"extras","title":"As a new user","doc":"# As a new user\n\nA managed instance of Torus is available at [https://proton.oli.cmu.edu](https://proton.oli.cmu.edu]) where\none can create an account, create a course project and begin authoring.","ref":"end-user.html"},{"type":"extras","title":"As a developer","doc":"# As a developer\n\nThese instructions will set up a development environment\nwith the Torus server running directly on the host machine.","ref":"developer.html"},{"type":"extras","title":"Mostly Automated Steps - As a developer","doc":"1. Install dependencies:\n\n - [Docker](https://www.docker.com/) and docker-compose\n - [Elixir](https://elixir-lang.org/) (`$ brew install elixir`)\n - [Phoenix](https://www.phoenixframework.org/) (`$ mix archive.install hex phx_new 1.5.9`)\n\n1. Clone this repository `$ git clone https://github.com/Simon-Initiative/oli-torus`\n\n1. Run `$ sh ./devmode.sh`\n\n1. Run `$ mix phx.server`\n\n1. Open your web browser to `https://localhost`.","ref":"developer.html#mostly-automated-steps"},{"type":"extras","title":"Mostly Manual Steps - As a developer","doc":"1. Install dependencies:\n\n - [Docker](https://www.docker.com/) and docker-compose\n - [Elixir](https://elixir-lang.org/) (`$ brew install elixir`)\n - [Phoenix](https://www.phoenixframework.org/) (`$ mix archive.install hex phx_new 1.5.9`)\n\n1. Clone this repository `$ git clone https://github.com/Simon-Initiative/oli-torus`\n\n1. Create configuration env files:\n\n ```\n $ cp oli.example.env oli.env\n $ cp postgres.example.env postgres.env\n ```\n\n1. Configure `oli.env` for running natively:\n\n Make sure `DB_HOST` is set to `localhost` (as opposed to `postgress`).\n\n ```\n DB_HOST=localhost\n ```\n\n1. Start dockerized postgres 12 via the included docker-compose file:\n\n ```\n $ docker-compose up -d postgres\n ```\n\n1. Install server and client dependencies:\n\n ```\n $ mix deps.get\n $ cd assets && yarn\n ```\n\n1. Build frontend assets\n\n ```\n $ yarn deploy\n ```\n\n1. Create database\n\n ```\n $ cd ../ && mix ecto.create\n ```\n\n1. Run migration to create schema\n\n ```\n $ mix ecto.migrate\n ```\n\n1. Seed the database\n\n ```\n $ mix run priv/repo/seeds.exs\n ```\n\n1. Configure bash to properly source environment variable configurations\n\n ```\n $ set -a\n ```\n\n1. Load phoenix app configuration from environment file. This step is necessary anytime you change a configuration variable\n\n ```\n $ source oli.env\n ```\n\n1. Start Phoenix server\n\n ```\n $ mix phx.server\n ```\n\n > **Note**: Use Ctrl+c to stop the Phoenix server\n\n1. Open your web browser to `https://localhost`.","ref":"developer.html#mostly-manual-steps"},{"type":"extras","title":"Notes - As a developer","doc":"> In order to sign in, you must use **https** and accept the self-signed cert browser warning to avoid CSRF issues. If you would like to provide your own cert instead of accepting the included one, simply replace `priv/ssl/localhost.crt` -or- use the localhost tunneling method below to generate a public URL with SSL enabled.\n\n> To access email verification message and activate your locally-created account, visit `http://localhost/dev/sent_emails`.\n\n> Default administrator credentials are defined in `oli.env` as `ADMIN_EMAIL` and `ADMIN_PASSWORD`. These values are only used to seed the database during `mix ecto.setup` / `mix ecto.reset`.\n\n> Docker is not a strict dependency. We use it here to simplify the install and running of Postgres. You can choose to install and run Postgres bare-metal, but you will not be able to use the **Mostly Automated Steps** above (since the `./devmode.sh` script depends on Docker).","ref":"developer.html#notes"},{"type":"extras","title":"Running Tests - As a developer","doc":"> **Note**: If you are running using docker-compose as described in [**Quick Start**](Quick-Start), you can create a bash session to execute any of the following commands using `docker-compose exec app bash`\n\n1. Run JavaScript tests\n\n ```\n $ cd assets && yarn test\n ```\n\n1. Run elixir tests\n\n ```\n $ mix test\n ```\n\n1. Run elixir tests for a specific file, watch for changes and automatically re-run tests\n\n ```\n $ mix test.watch --stale --max-failures 1 --trace --seed 0 lib/some_dir/file_to_watch.ex\n ```\n\n Re-run only failed tests\n\n ```\n $ mix test.watch --failed --trace --seed 0 lib/some_dir/file_to_watch.ex\n ```\n\n Using fswatch, re-run only the test files that have changed as well as the tests that have gone stale due to changes in lib and pause on any failures\n\n ```\n $ fswatch lib test | mix test --listen-on-stdin --stale --seed 0 --trace --max-failures 1\n ```\n\n1. Generate an html coverage report\n\n ```\n $ mix coveralls.html\n ```\n\n1. Occasionally the test database will need to be reset (e.g. if tests were cancelled partway through)\n ```\n $ MIX_ENV=test mix ecto.reset\n ```","ref":"developer.html#running-tests"},{"type":"extras","title":"Tunneling localhost connection for LTI development - As a developer","doc":"When making an LTI connection from an LMS such as Canvas, we need an internet accessible FQDN with SSL to properly configure a connection. The service ngrok offers an easy to use command line tool that does just this.\n\n1. [Download ngrok](https://ngrok.com/) and install using their instructions (Create a free account if required)\n1. Run ngrok locally to tunnel to phoenix app on port 4000\n `ngrok http 4000`\n1. Access your running webapp using the generated https address (shown in console after `Forwarding`). This will be the same address used to configure the LMS LTI connection","ref":"developer.html#tunneling-localhost-connection-for-lti-development"},{"type":"extras","title":"Configuring an LTI 1.3 Connection - As a developer","doc":"Torus supports LTI 1.3 integration and leverages the Learning Management System for course delivery.\n\nTo configure an LTI connection, refer to the [Torus LTI 1.3 Manual Configuration](https://github.com/Simon-Initiative/oli-torus/wiki/Torus-LTI-1.3-Configuration).","ref":"developer.html#configuring-an-lti-1-3-connection"},{"type":"extras","title":"self-hosted","doc":"","ref":"self-hosted.html"},{"type":"extras","title":"With self-hosting - self-hosted","doc":"There are many different ways to structure your own production instance of Torus. This guide will outline a simple, single-app server method for getting a production instance of torus up-and-running on a linux environment of your choice. These instructions are geared specifically for and tested on Amazon Linux 2 machine, but should be easily adaptable to other linux distros such as Debian or Ubuntu.\n\nIf this all seems a bit too technical and you just want to use or try out Torus without maintaining all the infrastructure, check out the Open Learning Initiative's production instance at [proton.oli.cmu.edu](https://proton.oli.cmu.edu) where you can easily get started by creating an authoring account for free.","ref":"self-hosted.html#with-self-hosting"},{"type":"extras","title":"Prerequisites - self-hosted","doc":"Torus requires a few services that are necessary for it to run, the setup of which however is mostly outside the scope of this guide. The following list outlines these prerequisite services and how they should be configured for Torus:\n\n1. VPS (e.g. AWS, Azure, DigitalOcean, Self-hosted) linux server with SSH access\n\n - Torus requires NodeJS 15+ to be installed on the deployment machine. If `node` is not available in the torus path, you can use the `NODE_PATH` environment variable to configure the path.\n - Releases are built using openssl11-devel for erlang which means that OpenSSL 1.1.1 is required to be installed on the deployment target.\n ```\n sudo yum install openssl11\n ```\n\n2. S3-Compliant bucket (e.g. AWS S3, Backblaze B2, Self-hosted MinIO), public read-accessible\n - Torus will need the **Access Key ID** and the **Secret Access Key** for writable access\n - Access: **Public**, Block _all_ public access: **Off**\n - Bucket Policy: (replace ` ` with the name of your bucket)\n ```\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"PublicRead\",\n \"Effect\": \"Allow\",\n \"Principal\": \"*\",\n \"Action\": \"s3:GetObject\",\n \"Resource\": \"arn:aws:s3::: /*\"\n }\n ]\n }\n ```\n - Cross-origin resource sharing (CORS):\n ```\n [\n {\n \"AllowedHeaders\": [\n \"*\"\n ],\n \"AllowedMethods\": [\n \"GET\"\n ],\n \"AllowedOrigins\": [\n \"*\"\n ],\n \"ExposeHeaders\": []\n }\n ]\n ```\n3. Postgres 9 or later, network accessible from the VPS/server\n - Torus will need a database **db_username** and **db_password** to access the database.\n - The configured user must have database create permissions for initial setup. Alternatively, the database can be manually created and use the `Oli.ReleaseTasks.migrate_and_seed()` command instead of `Oli.ReleaseTasks.setup()` in the instructions below.","ref":"self-hosted.html#prerequisites"},{"type":"extras","title":"Initial Setup - self-hosted","doc":"","ref":"self-hosted.html#initial-setup"},{"type":"extras","title":"Torus User and Directory - self-hosted","doc":"Once you have provisioned a linux server, it is recommended you set up a specific user and directory from which to deploy Torus. This guide will assume a user `torus` and a directory `/torus` from where the app will be deployed.","ref":"self-hosted.html#torus-user-and-directory"},{"type":"extras","title":"Configuration - self-hosted","doc":"Get started by opening an SSH session and configuring Torus env.\n\n```\ncd /torus\nvim oli.env\n```\n\nThis file will define the necessary configs for torus to run and can also be used to modify various other aspects of the system. Make sure to replace any values in ` ` below. At a minimum, this file should contain:\n\n```","ref":"self-hosted.html#configuration"},{"type":"extras","title":"default administrator - self-hosted","doc":"ADMIN_EMAIL= \nADMIN_PASSWORD=","ref":"self-hosted.html#default-administrator"},{"type":"extras","title":"public host name - self-hosted","doc":"HOST=","ref":"self-hosted.html#public-host-name"},{"type":"extras","title":"Used to specify which port to expose the http server on, but doesnt affect the public url. - self-hosted","doc":"","ref":"self-hosted.html#used-to-specify-which-port-to-expose-the-http-server-on-but-doesnt-affect-the-public-url"},{"type":"extras","title":"useful for when you are using a proxy and need to run torus on a specific port without changing the - self-hosted","doc":"","ref":"self-hosted.html#useful-for-when-you-are-using-a-proxy-and-need-to-run-torus-on-a-specific-port-without-changing-the"},{"type":"extras","title":"public url - self-hosted","doc":"HTTP_PORT=80","ref":"self-hosted.html#public-url"},{"type":"extras","title":"Database url with credentials - self-hosted","doc":"DATABASE_URL=ecto:// : @postgres/oli","ref":"self-hosted.html#database-url-with-credentials"},{"type":"extras","title":"Email sending - self-hosted","doc":"EMAIL_FROM_NAME=\"OLI Torus\"\nEMAIL_FROM_ADDRESS=\"no-reply@example.edu\"\nEMAIL_REPLY_TO=","ref":"self-hosted.html#email-sending"},{"type":"extras","title":"Amazon AWS S3 and SES email services - self-hosted","doc":"AWS_ACCESS_KEY_ID= \nAWS_SECRET_ACCESS_KEY= \nAWS_REGION=","ref":"self-hosted.html#amazon-aws-s3-and-ses-email-services"},{"type":"extras","title":"S3 storage service config used for storing and serving media - self-hosted","doc":"S3_MEDIA_BUCKET_NAME= \nMEDIA_URL=","ref":"self-hosted.html#s3-storage-service-config-used-for-storing-and-serving-media"},{"type":"extras","title":"Google recaptcha key and secret - self-hosted","doc":"RECAPTCHA_SITE_KEY= \nRECAPTCHA_PRIVATE_KEY=","ref":"self-hosted.html#google-recaptcha-key-and-secret"},{"type":"extras","title":"Secret key base - self-hosted","doc":"","ref":"self-hosted.html#secret-key-base"},{"type":"extras","title":"A random 64 byte string. You can generate one by calling: openssl rand -base64 64 - self-hosted","doc":"SECRET_KEY_BASE=","ref":"self-hosted.html#a-random-64-byte-string-you-can-generate-one-by-calling-openssl-rand-base64-64"},{"type":"extras","title":"Live view salt - self-hosted","doc":"","ref":"self-hosted.html#live-view-salt"},{"type":"extras","title":"A random 64 byte string. You can generate one by calling: openssl rand -base64 64 - self-hosted","doc":"LIVE_VIEW_SALT= \n\n```\n\nFor more configuration variables, see [oli.example.env](https://github.com/Simon-Initiative/oli-torus/blob/master/oli.example.env).","ref":"self-hosted.html#a-random-64-byte-string-you-can-generate-one-by-calling-openssl-rand-base64-64"},{"type":"extras","title":"Deploying a release - self-hosted","doc":"Torus releases are built automatically on each new commit to master. These prebuilt releases are created specifically for Amazon Linux 2, but Torus can also be built for any other platform using the [Building Releases and Production Deployments](Building-Releases-for-Production-Deployments) guide and continuing at Step 2.","ref":"self-hosted.html#deploying-a-release"},{"type":"extras","title":"Using a Prebuilt Release with Amazon Linux 2 (Recommended) - self-hosted","doc":"1. Download a prebuilt release by first identifying the version number and first 7 digits of the release SHA you wish to deploy. These can be found on the [releases page](https://github.com/Simon-Initiative/oli-torus/releases) on the left side of each release (recommended), or alternatively for unstable bleeding-edge builds the [master commit history](https://github.com/Simon-Initiative/oli-torus/commits/master) can be used in combination with whichever version is set in mix.exs for that particular commit.\n\n```\nRELEASE_VERSION=0.18.3\nRELEASE_SHA=c9d615b\n\n# fetch the release package from the official torus builds S3 bucket\ncurl --fail -L https://oli-torus-releases.s3.amazonaws.com/oli-${RELEASE_VERSION}-${RELEASE_SHA}.zip -o\noli-${RELEASE_VERSION}-${RELEASE_SHA}.zip\n\n# unzip release\nunzip oli-*.zip -d oli\nchmod -R +x ./oli\n\n# cleanup release zip\nrm -rf ./oli-*.zip\n```\n\n2. Import configs\n\n```\nset -a; source ./oli.env\n```\n\n3. Initialize the Database\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.setup()\"\n```\n\n4. Start Torus\n\n```\n./oli/bin/oli start\n```","ref":"self-hosted.html#using-a-prebuilt-release-with-amazon-linux-2-recommended"},{"type":"extras","title":"Command Reference - self-hosted","doc":"Start\n\n```\n./oli/bin/oli start\n```\n\nStop\n\n```\n./oli/bin/oli stop\n```\n\nDaemonize\n\n```\n./oli/bin/oli daemon\n```\n\nTo learn more about these and other elixir release commands, see https://hexdocs.pm/mix/Mix.Tasks.Release.html","ref":"self-hosted.html#command-reference"},{"type":"extras","title":"Attach to Remote iex Shell - self-hosted","doc":"This will open a remote iex shell in a running instance\n\n```\n./oli/bin/oli remote\n```\n\nYou can also execute a single command using rpc\n\n```\n./oli/bin/oli rpc \"IO.puts(:hello)\"\n```\n\n**NOTE:** Since all Torus modules are available and any public function can be executed, be sure to take care in which functions you call so that you do not put the system into an unstable state. Try to avoid calls that involve the database but if necessary, be sure the function you are calling utilizes transactions in case of failure.\n\nSee https://hexdocs.pm/mix/Mix.Tasks.Release.html#module-one-off-commands-eval-and-rpc for more information.","ref":"self-hosted.html#attach-to-remote-iex-shell"},{"type":"extras","title":"Useful Release Tasks - self-hosted","doc":"**\\*\\*\\*IMPORTANT - RUN THIS BEFORE RUNNING ANY TASK\\*\\*\\***\n\nAll of the following tasks require environment configs before running:\n\n```\nset -a; source ./oli.env\n```","ref":"self-hosted.html#useful-release-tasks"},{"type":"extras","title":"Initial setup - self-hosted","doc":"Create, migrate, and seed the database before first run\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.setup\"\n```","ref":"self-hosted.html#initial-setup"},{"type":"extras","title":"Seed the database - self-hosted","doc":"After a new release is deployed, it is a good idea to run this task to apply any migrations\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.seed\"\n```","ref":"self-hosted.html#seed-the-database"},{"type":"extras","title":"Migrate the database - self-hosted","doc":"After a new release is deployed, it is a good idea to run this task to apply any migrations\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.migrate\"\n```","ref":"self-hosted.html#migrate-the-database"},{"type":"extras","title":"Rollback a database migration - self-hosted","doc":"After a new release is deployed, it is a good idea to run this task to apply any migrations\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.rollback(:oli, \" \")\"\n```","ref":"self-hosted.html#rollback-a-database-migration"},{"type":"extras","title":"Reset the database - self-hosted","doc":"```\n############################################################################################","ref":"self-hosted.html#reset-the-database"},{"type":"extras","title":"WARNING! The following command will wipe all data in the database. Please use caution! ## - self-hosted","doc":"############################################################################################","ref":"self-hosted.html#warning-the-following-command-will-wipe-all-data-in-the-database-please-use-caution"},{"type":"extras","title":"reset the database (requires interactive confirmation) - self-hosted","doc":"./oli/bin/oli eval \"Oli.ReleaseTasks.reset()\"","ref":"self-hosted.html#reset-the-database-requires-interactive-confirmation"},{"type":"extras","title":"reset the database (no interactive confirmation for scripting purposes, you better know what you are doing) - self-hosted","doc":"./oli/bin/oli eval \"Oli.ReleaseTasks.reset(%{ force: true })\"\n```\n\nOther public functions defined in [lib/oli/release.ex](https://github.com/Simon-Initiative/oli-torus/blob/master/lib/oli/release.ex) are also available as tasks in this way.","ref":"self-hosted.html#reset-the-database-no-interactive-confirmation-for-scripting-purposes-you-better-know-what-you-are-doing"},{"type":"extras","title":"HAProxy Configuration and SSL Certificates - self-hosted","doc":"It is recommended you run torus behind a load balancer or proxy that supports SSL termination and use that to manage SSL certificates. For convenience, a default certificate is provided by torus for development mode only but it is self-signed and therefore will show browser warnings when used.\n\nTorus can either be configured to terminate SSL certificates using `SSL_CERT_PATH ` and `SSL_KEY_PATH ` or can be hosted behind a proxy. The most flexible and straightforward solution is to configure Torus behind a proxy using the `HTTP_PORT` config set to whichever port you intend to point to from your proxy. You can also [setup LetsEncrypt certbot](https://www.digitalocean.com/community/tutorials/how-to-secure-haproxy-with-let-s-encrypt-on-centos-7) to automatically renew SSL certificates before they expire. For example, with `HTTP_PORT=8080` set in `oli.env`, your HAProxy `haproxy.cfg` might look something like this:\n\n```\nglobal\n # SSL options\n ssl-default-bind-ciphers AES256+EECDH:AES256+EDH:!aNULL;\n tune.ssl.default-dh-param 4096\n\ndefaults\n mode http\n timeout connect 5000ms\n timeout client 50000ms\n timeout server 50000ms\n option forwardfor\n\n # never fail on address resolution\n default-server init-addr last,libc,none\n\nfrontend http\n bind *:80\n mode http\n\n # if this is an ACME request to proof the domain owner, then redirect to certbot server\n acl is_acme_challenge path_beg -i /.well-known/acme-challenge/\n\n redirect scheme https code 301 if !is_acme_challenge !{ ssl_fc }\n\n use_backend letsencrypt if is_acme_challenge\n\nfrontend https\n bind *:443 ssl crt /etc/haproxy/certs/ no-sslv3 no-tls-tickets no-tlsv10 no-tlsv11\n http-response set-header Strict-Transport-Security \"max-age=16000000; includeSubDomains; preload;\"\n\n acl no_server nbsrv(www) lt 1\n use_backend maintenance if no_server\n\n default_backend www\n\nbackend letsencrypt\n server letsencrypt 127.0.0.1:54321\n\nbackend www\n server www 127.0.0.1:8080 check\n http-request add-header X-Forwarded-Proto https if { ssl_fc }\n\n```","ref":"self-hosted.html#haproxy-configuration-and-ssl-certificates"},{"type":"extras","title":"Firewall Configuration - self-hosted","doc":"If your server has a firewall, be sure to open the necessary tcp ports. If using HAProxy, these will probably be `80/tcp` and `443/tcp`. If using a load balancer and you have `HTTP_PORT` configured, then that should be the port you expose.","ref":"self-hosted.html#firewall-configuration"},{"type":"extras","title":"Systemd and autostart on reboot - self-hosted","doc":"You may want to configure torus as a systemd service to take full advantage of automatic start on reboot, logging, and other facilities.\n\nHere is an example of `/etc/systemd/system/torus.service` configured as a systemd service\n\n```\n[Unit]\nDescription=torus\n\n[Service]\nExecStart=/app/oli/bin/oli start\nExecStop=/app/oli/bin/oli stop\n\n\n[Install]\nWantedBy=multi-user.target\n```\n\nThis will also require a duplicate of oli.env config file in `/etc/systemd/system/torus.service.d/torusenv.conf` in the format:\n\n```\n[Service]\nEnvironment=\"HOST=mydomain.example.edu\"\nEnvironment=\"PORT=80\"\n\n```","ref":"self-hosted.html#systemd-and-autostart-on-reboot"},{"type":"extras","title":"AppSignal - self-hosted","doc":"APM for Ruby, Elixir & Node.js that includes error, performance, host, dashboards, anomalies and uptime monitoring. By default it is disabled and is not required for application to run. However, you can choose to activate AppSignal by adding the following ENV variables:\n\n```\nAPPSIGNAL_OTP_APP=\"oli\"\nAPPSIGNAL_PUSH_API_KEY=\"your-push-api-key\"\nAPPSIGNAL_APP_NAME=\"Torus\"\nAPPSIGNAL_APP_ENV=\"prod\"\n```","ref":"self-hosted.html#appsignal"},{"type":"extras","title":"Client-side coding standard","doc":"# Client-side coding standard\n\nThis document outlines the rules and guidelines for client-side code development in Torus.\n\nClient-side code here refers to any code written by Torus developers that runs client-side in the browser. This includes complete standalone React applications and small snippets of code that run in the context of a server-rendered page.\n\nEach item here is categorized as either a rule (required) or a guideline (recommended but not absolutely required). Guidelines recognize that there are always unique circumstances where it makes sense to depart from the recommendation. Rules will include words like `must` and `always` and guidelines include words like `should` and `can`.","ref":"client-coding.html"},{"type":"extras","title":"Core language - Client-side coding standard","doc":"All client-side code must be written in Typescript as opposed to being written directly in JavaScript.\n\nAll code must be formatted using [Prettier](https://prettier.io) and pass [ESLint](https://eslint.org/) checks. A GitHub build step will fail for any PR that includes code that triggers an ESLint error.","ref":"client-coding.html#core-language"},{"type":"extras","title":"Types - Client-side coding standard","doc":"Developers should leverage the TypeScript type system to model the domain as much as possible. This includes using type aliases, union and intersection types, discriminated union types, and utility types (`Partial `, `Readonly `, etc).\n\nDevelopers should add TypeScript type annotations to all new code.\n\nDevelopers should use the TypeScript `type` construct over an `interface` for all cases except for when extensibility is needed. For example, a `type` cannot be used in the following:\n\n```javascript\ninterface Identifiable {\n id: string;\n}\n\nexport interface Paragraph extends Identifiable {\n type: \"p\";\n}\n```","ref":"client-coding.html#types"},{"type":"extras","title":"Async code - Client-side coding standard","doc":"Async code should be written using standard ES6 Promise support or async/await features.","ref":"client-coding.html#async-code"},{"type":"extras","title":"Functional programming - Client-side coding standard","doc":"Code should be written in a functional programming style, leveraging first-class functions, programming as transformation, immutability, pure functions, etc.\n\n#### Immutability\n\nCode should be written leveraging immutable data structures and techniques as must as possible, this is particular importance in React-based UI code.\n\nLegacy Echo code that ports existing Immutable.js code can stay as-is, but new code that needs immutable data structures should be written using Immer.js.\n\nDevelopers can use the `Object.assign({}, current, update)` pattern as well.\n\n#### Programming as transformation\n\nFor conciseness and readability, Code should make heavy use of `map` and `reduce` style data transformations instead of imperative loops and similar constructs. For example:\n\n```javascript\nreturn Object.keys(textEntity)\n .filter((attr) => textEntity[attr] === true)\n .map((attr) => supportedMarkTags[attr])\n .filter((mark) => mark)\n .reduce((acc, mark) => `<${mark}>${acc}`, text);\n```","ref":"client-coding.html#functional-programming"},{"type":"extras","title":"UI - Client-side coding standard","doc":"","ref":"client-coding.html#ui"},{"type":"extras","title":"Library/framework - Client-side coding standard","doc":"User interfaces must be built using React.\n\nDevelopers should seek first to implement a React component as a functional stateless component. State, if needed, should be added via `useState` or `useReducer` hooks. Side effects should be incorporated via `useEffect`. For more complicated use cases it is acceptable to fall back to a traditional, class-based React component.","ref":"client-coding.html#library-framework"},{"type":"extras","title":"State management - Client-side coding standard","doc":"Developers should strive to use the simplest approach possible for global state management. The simplest approach being not using any third-party state management library and instead just maintaining all top-level state in a component (via `useReducer` or one or more `useState` hooks) and passing it down through properties. This approach only scales so far, thus for more complicated applications developers should fall back to a third-party library for global state management.\n\nOur team's experience with Redux overall has been positive, but we recognize that there is a substantial amount of boilerplate in a type-safe Redux implementation. Given that Torus client tends to have smaller, more focused apps we are seeking lighter-weight Redux alternatives including `useReducer` and up and coming new libraries such as [https://recoiljs.org/](https://recoiljs.org/)","ref":"client-coding.html#state-management"},{"type":"extras","title":"Styling - Client-side coding standard","doc":"Components should leverage Bootstrap 4 and be written in a way that works with the Torus theming approach. TODO add more details here, but a main takeaway is that any custom CSS should be captured in a `.scss` definition file.","ref":"client-coding.html#styling"},{"type":"extras","title":"Testing - Client-side coding standard","doc":"Code should be unit tested using the existing `jest` based unit testing infrastructure.\n\nUI code should be structured in a way that allows the implementation of the logic to be decoupled from the UI implementation, so that this logic can be easily unit tested.","ref":"client-coding.html#testing"},{"type":"extras","title":"Server-side coding standard","doc":"# Server-side coding standard","ref":"server-coding.html"},{"type":"extras","title":"Code Formatting - Server-side coding standard","doc":"This project uses the default Elixir code formatting rules through running `mix format`. To enable auto-format on save, install the _ElixirLS_ plugin for your code editor and add a configuration option. For Visual Studio Code, you can do this by opening the config file with `cmd+p`, typing `> Open Settings`, and adding this line:\n\n- `\"editor.formatOnSave\": true`","ref":"server-coding.html#code-formatting"},{"type":"extras","title":"UI Code - Server-side coding standard","doc":"User interface code can be implemented using either traditional, stateless controller rendered templated views or with stateful Phoenix LiveView implementations.","ref":"server-coding.html#ui-code"},{"type":"extras","title":"Pull Request Template","doc":"# Pull Request Template\n\n- Fill out the template below as the body of your pull request. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.\n- The pull request must update the test suite to demonstrate the changed functionality.\n- After you create the pull request, all status checks must be pass before a maintainer reviews your contribution.","ref":"pr-template.html"},{"type":"extras","title":"Identify the Issue - Pull Request Template","doc":"Link to the issue describing the bug that you're fixing or the enhancement that you are implemening.\n\nIf there is not yet an issue that your work targets, please open a new issue and then link to that issue in your pull request.\nNote: In some cases, one person's \"bug\" is another person's \"feature.\" If the pull request does not address an existing issue with the \"bug\" label, the maintainers have the final say on whether the current behavior is a bug.","ref":"pr-template.html#identify-the-issue"},{"type":"extras","title":"Description of the Change - Pull Request Template","doc":"We must be able to understand the design of your change from this description. If we can't get a good idea of what the code will be doing from the description here, the pull request may be closed at the maintainers' discretion. Keep in mind that the maintainer reviewing this PR may not be familiar with or have worked with the code here recently, so please walk us through the concepts.","ref":"pr-template.html#description-of-the-change"},{"type":"extras","title":"Alternate Designs - Pull Request Template","doc":"Explain what other alternates were considered and why the proposed version was selected","ref":"pr-template.html#alternate-designs"},{"type":"extras","title":"Possible Drawbacks - Pull Request Template","doc":"What are the possible side-effects or negative impacts of the code change?","ref":"pr-template.html#possible-drawbacks"},{"type":"extras","title":"Verification Process - Pull Request Template","doc":"What process did you follow to verify that the change has not introduced any regressions? Describe the actions you performed (including buttons you clicked, text you typed, commands you ran, etc.), and describe the results you observed.","ref":"pr-template.html#verification-process"},{"type":"extras","title":"PR processes","doc":"# PR processes","ref":"changelog-pr.html"},{"type":"extras","title":"Feature development / bug fixing - PR processes","doc":"1. Developer performs feature work or bug fix on a branch off of `master`.\n2. Developer opens a pull request against `master` once the work is completed.\n3. Reviewer reviews the PR and either requests changes or approves.\n4. After approval, the reviewer **squashes and merges** to master, updating the commit message to summarize the entirety of the work item. This aggregate commit message must be prefixed with the change type, a ticket reference and a description. For example, `[BUG FIX] [MER-1234] A description` or `[FEATURE] [NG23-29] Another description`.","ref":"changelog-pr.html#feature-development-bug-fixing"},{"type":"extras","title":"Valid Change Types - PR processes","doc":"- `[FEATURE]`: New feature for the user\n- `[ENHANCEMENT]`: Small improvements to existing features\n- `[BUG FIX]`: Bug fix for an existing feature\n- `[CHORE]`: Updating of build infrastructure, deployment automation, branch merging, docs, etc.\n- `[PERFORMANCE]`: Changes that target a performance improvement","ref":"changelog-pr.html#valid-change-types"},{"type":"extras","title":"Valid ticket references - PR processes","doc":"- `[MER-xxxx]`: MER board tickets\n- `[NG23-xxxx]`: NG board tickets","ref":"changelog-pr.html#valid-ticket-references"},{"type":"extras","title":"CI/CD and Deployment Process","doc":"# CI/CD and Deployment Process","ref":"deployment.html"},{"type":"extras","title":"Overview - CI/CD and Deployment Process","doc":"Torus uses Github Actions for its CI/CD pipelines. When a PR is opened, a build is automatically started and several checks are run including unit tests and lint checks which must all pass before a PR can be merged. Once a branch is merged into master, the resulting commit is packaged and deployed to the test server ([tokamak.oli.cmu.edu](https://tokamak.oli.cmu.edu)). The test server will always represent the latest from master unless a manual deployment is made. When a release is made (tagged vX.Y.Z), a deployment is kicked off to the production server ([proton.oli.cmu.edu](proton.oli.cmu.edu)). A production deployment will always use a prebuilt artifact identified by the version and commit SHA to ensure that the release tested is the same as the release deployed.\n\n**Test Server:** [tokamak.oli.cmu.edu](tokamak.oli.cmu.edu)\n\n**Production Server:** [proton.oli.cmu.edu](proton.oli.cmu.edu)","ref":"deployment.html#overview"},{"type":"extras","title":"Pull Requests - CI/CD and Deployment Process","doc":"Every pull request is required to pass a set of status checks in both Elixir and Typescript including a successful build, all unit tests passing, and successful lint with no errors (TypeScript). These checks are automatically started when a pull request is created. Other automated checks include Coveralls for unit test coverage and GitGuardian for identifying accidentally leaked secrets, however these checks are only informative and discretion is left to the developer and code reviewer to decide if issues found are blocking.","ref":"deployment.html#pull-requests"},{"type":"extras","title":"Deployments to Test - CI/CD and Deployment Process","doc":"Deployments to the test server are automatically initiated when a pull request is landed to master. This means the test server will usually be up-to-date with the latest changes from the master branch. There are some situations however, when someone may want to manually push a deployment to the test server which can be accomplished with the following:","ref":"deployment.html#deployments-to-test"},{"type":"extras","title":"Release Candidates - CI/CD and Deployment Process","doc":"If a release candidate is created with a tag formatted as `vX.Y.Z-rcN` where X.Y.Z represents a version number and N is the release candidate number, a deployment of the tag's targeted ref will be deployed to the test server.\n\n1. Go to https://github.com/Simon-Initiative/oli-torus/releases and click \"Draft a new release\"\n1. Enter your vX.Y.X-rcN for **Tag version** and **Release Title**\n1. Add the Features and Bug Fixes sections (formatted as markdown) to the description\n1. Check \"This is a pre-release\"\n1. Click \"Publish release\"\n\n### `deploy-test` Tag\n\nA deployment can be initiated by tagging any git ref with the `deploy-test` tag and pushing to remote. For example:\n\n```\ngit tag --delete deploy-test # if the tag previously existed locally\ngit tag deploy-test\ngit push origin deploy-test --force\n```","ref":"deployment.html#release-candidates"},{"type":"extras","title":"Deployments to Production - CI/CD and Deployment Process","doc":"Deployments to the production server will be initiated when a release is created with the tag formatted as `vX.Y.Z` where X.Y.Z represents a version number.\n\n> **Note:** Production deployments assume a previous build has been packaged, and therefore any commit tagged as a release must exist on the `master` branch, a `hotfix|prerelease-*` branch or be packaged by tagging the commit with the `package` tag first.","ref":"deployment.html#deployments-to-production"},{"type":"extras","title":"Hotfixes - CI/CD and Deployment Process","doc":"A hotfix branch can be created using the release tag you wish to branch from. For example:\n\n```\ngit checkout -b hotfix-X.Y.[Z+1] vX.Y.Z\ngit push origin hotfix-X.Y.[Z+1]\n```\n\nOnce the hotfix branch is created, it will essentially act as the master branch to land all bug fixes and enhancements that are intended to be included in the hotfix.\n\nWhen a hotfix branch is ready to be deployed, it can be tagged using the **Release Candidate** and **Deployment Process** outlined above. Hotfix branches that follow the convention `hotfix-` will automatically be packaged when pushed to remote, just like master. Make sure to wait for the package step to complete before creating a release, or else the deployment will fail.\n\n> **Note:** Because hotfix branches are automatically packaged based on the branch name convention, there is no need to manually tag with `package` before deploying.\n\nFinally, make sure the hotfix branch is eventually merged back to master to be included in downstream development. To do this easily, create a new branch from the hotfix branch called `integrate-X.Y.Z` (the name here is not necessarily important, but just serves as an example). Then pull `master` into this integration branch. Once any/all merge conflicts are resolved, open a PR against master.","ref":"deployment.html#hotfixes"},{"type":"extras","title":"Production Deployments","doc":"# Production Deployments","ref":"building.html"},{"type":"extras","title":"Using a Prebuilt Release (Recommended) - Production Deployments","doc":"Torus releases are built automatically with each new commit to master and uploaded to the public S3 bucket `oli-torus-releases`. These prebuilt releases are created specifically for Amazon Linux 2, but Torus can also be built for any other platform using the [Building a Release](#Building-a-Release) guide below. To download a prebuilt release, start by first identifying the version number and first 7 digits of the release SHA you wish to deploy. These can be found on the [releases page](https://github.com/Simon-Initiative/oli-torus/releases) on the left side of each release (recommended), or alternatively for unstable bleeding-edge builds the [master commit history](https://github.com/Simon-Initiative/oli-torus/commits/master) can be used in combination with whichever version is set in mix.exs for that particular commit.\n\n```\nRELEASE_VERSION=0.18.3\nRELEASE_SHA=c9d615b\n\n# fetch the release package from the official torus builds S3 bucket\ncurl --fail -L https://oli-torus-releases.s3.amazonaws.com/oli-${RELEASE_VERSION}-${RELEASE_SHA}.zip -o oli-${RELEASE_VERSION}-${RELEASE_SHA}.zip\n```","ref":"building.html#using-a-prebuilt-release-recommended"},{"type":"extras","title":"Building a Release - Production Deployments","doc":"Torus recommends using [elixir releases](https://hexdocs.pm/mix/Mix.Tasks.Release.html) for production deployments. You will have to have [Elixir installed on your machine](https://elixir-lang.org/install.html) to build Torus.\n\nA release can be created by executing [the following script](https://github.com/Simon-Initiative/oli-torus/blob/master/.github/actions/amazon-linux-builder/entrypoint.sh) in the oli-torus repository with a current git commit SHA set to `RELEASE_SHA`. This will compile a release for the system architecture on which it is executed:\n\n```\n# clone the oli-torus repository\ncd /tmp\ngit clone https://github.com/Simon-Initiative/oli-torus.git\ncd oli-torus\n\n# setup asset build dependencies\nnpm install -g yarn\nyarn --cwd ./assets\n\nRELEASE_SHA=$(git rev-parse --short HEAD)\nsh .github/actions/amazon-linux-builder/entrypoint.sh\n```\n\nYou'll find the newly built release under `_build/prod/rel/oli`. This can be zipped and deployed however you see fit (e.g. sftp, S3 and curl, etc.).\n\n```\ncd _build/prod/rel/oli\nzip -r ../../../../oli-${RELEASE_SHA}.zip *\n```\n\nThe release will contain all the necessary binaries to run Torus including the Erlang RunTime System and the BEAM virtual machine (except for NodeJS, which is expected to be installed on the target and available in the torus user's `PATH`). For more information on setting up a production environment, refer to the [Setting Up a Production Server](https://github.com/Simon-Initiative/oli-torus/wiki/Setting-Up-A-Production-Server) guide.\n\nOnce a release has been created and deployed to the target machine where you intend to run it, you can\nexecute predefined [release commands](Setting-Up-a-Production-Server#command-reference) to start/stop/daemonize the app.\nTo perform any of these though, you must first source the `oli.env` configuration into the current shell to configure the environment.\n\nConfigure Environment (**REQUIRED** before running any eval or iex commands)\n\n```\nset -a; source ./oli.env\n```\n\nStop the server\n\n```\n./oli/bin/oli stop\n```\n\nPrepare the release\n\n```\n# remove old deployment, if one exists\nrm -rf ./oli/\n\nunzip oli-*.zip -d oli\nchmod -R +x ./oli\n\n# cleanup release zip\nrm -rf ./oli-*.zip\n```\n\nMigrate and Seed Database\n\n```\n./oli/bin/oli eval \"Oli.ReleaseTasks.migrate_and_seed\"\n```\n\nRestart the server\n\n```\n./oli/bin/oli daemon\n```","ref":"building.html#building-a-release"},{"type":"extras","title":"NOTES - Production Deployments","doc":"- If you see the following deps build error, you must [install OpenSSL 1.1](https://gist.github.com/fernandoaleman/5459173e24d59b45ae2cfc618e20fe06) in order for AppSignal to compile and work properly.\n\n ```\n ==> appsignal\n Downloading agent release\n AppSignal installation failed: Could not download archive from any of our mirrors.\n Please make sure your network allows access to any of these mirrors.\n Attempted to download the archive from the following urls:\n - URL: https://appsignal-agent-releases.global.ssl.fastly.net/7376537/appsignal-x86_64-linux-all-static.tar.gz\n - Error (hackney response):\n {:error, {:options, {:insufficient_crypto_support, {:\"tlsv1.3\", {:versions, [:\"tlsv1.3\", :\"tlsv1.2\"]}}}}}\n\n - URL: https://d135dj0rjqvssy.cloudfront.net/7376537/appsignal-x86_64-linux-all-static.tar.gz\n - Error (hackney response):\n {:error, {:options, {:insufficient_crypto_support, {:\"tlsv1.3\", {:versions, [:\"tlsv1.3\", :\"tlsv1.2\"]}}}}}\n ```","ref":"building.html#notes"},{"type":"extras","title":"Introduction","doc":"# Introduction\n\nTorus is a learning engineering platform for authoring, delivering and improving online courses.","ref":"introduction.html"},{"type":"extras","title":"Key Features - Introduction","doc":"- **Automated Course Project Lifecyle** Authors can make edits and \"push a button\" to have those edits made available to end users\n- **Tight LMS Integration** Torus is accessible from any LTI 1.3 compliant LMSes, and Torus defers to those LMSes roster management, gradebook and other functionality\n- **Run-time extensibility** The system can have new content types and learning activities added to it at run-time by third party developers\n- **Simon Ecosystem Integration** Torus will enable deep integrations with existing and future Simon Ecosystem projects\n- **Learning Engineering Centric UX** Learning engineering science and best practies embedded in the UI/UX guide users through effective course creation","ref":"introduction.html#key-features"},{"type":"extras","title":"Key Design and Technical Considerations - Introduction","doc":"The following are the key non-functional requirements and considerations that fuel Torus technology and design choices:\n\n- **Usability** Torus must be understandable and approachable by new users, especially those unfamiliar with learning engineering concepts\n- **Extensibility** - Several aspects of the system are designed to be extended. The main focus of\n system extensibility is to support the development of new student-facing learning activities.\n- **Interoperability** - Torus is designed to interoperate seemlessly with external systems such\n as Learning Management Systems, using relevant industry standards\n- **Scalability** Torus must scale to 10x to 100x the user load of the current OLI system, which at peak usage levels sees around 1,000 reqs/min","ref":"introduction.html#key-design-and-technical-considerations"},{"type":"extras","title":"Technology Stack Overview - Introduction","doc":"","ref":"introduction.html#technology-stack-overview"},{"type":"extras","title":"Elixir/Phoenix - Introduction","doc":"All server side code in Torus is implemented in Elixir using the Phoenix web application framework.\n\nTorus also powers client-side UIs with Elixir code via Phoenix LiveView.","ref":"introduction.html#elixir-phoenix"},{"type":"extras","title":"TypeScript/React - Introduction","doc":"The limited amount of pure client-side code in Torus is written in TypeScript and utilises React for UI.","ref":"introduction.html#typescript-react"},{"type":"extras","title":"Postgres - Introduction","doc":"Primary data storage uses Postgres RDBMS.","ref":"introduction.html#postgres"},{"type":"extras","title":"Architectural Overview - Introduction","doc":"Torus is implemented in an\narchitecture that resembles that of a traditional monolithic web-based application. There is a single application server\nthat handles end user requests from web browser clients through a layered set of services that ultimately access\nthe persistence layer.\n\nA diagram of this architecture at a conceptual level is as follows:\n\n![conceptual architecture](assets/conceptual.png \"Conceptual Architecture\")\n\nTorus is designed to take advantage of Phoenix clustering support and Distributed Erlang to meet scalability and performance\nrequirements. The various \"Applications\" that comprise Torus can be replicated across and run on any number of Erlang nodes that\nare part of the cluster. This allows Torus to mimic modern, scalable service based architectures by varying its deployed configuration.","ref":"introduction.html#architectural-overview"},{"type":"extras","title":"High-level design","doc":"# High-level design\n\nThis page outlines fundamental system design choices","ref":"high-level.html"},{"type":"extras","title":"Roles - High-level design","doc":"System roles are divided into two categories. A user can be represented by a single role in each category.","ref":"high-level.html#roles"},{"type":"extras","title":"Authoring - High-level design","doc":"| Role | Description |\n| ----------------- | :---------------------------------------------------------------------------------------------------------------------------------------: |\n| **Author** | Someone who owns and/or contributes to the creation of course content |\n| **Administrator** | Someone who is in charge of administering the entire system. Administrators have complete access to all content and administrative tools. |","ref":"high-level.html#authoring"},{"type":"extras","title":"Delivery - High-level design","doc":"| Role | Description |\n| ----------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |\n| **Student** | Someone who has accessed the system from an LMS as a student. Students have the ability to view course content, complete coursework and earn assignment grades. |\n| **Instructor** | Someone who has accessed the system from an LMS as an instructor. Instructors can create/edit a course section and modify content for that section. |\n| **Administrator** | Someone who has accessed the system from an LMS as an administrator. Administrators have all the same capabilities as instructors as well as the ability change institution-wide settings such as LTI integration or policies. |","ref":"high-level.html#delivery"},{"type":"extras","title":"System Ontology - High-level design","doc":"","ref":"high-level.html#system-ontology"},{"type":"extras","title":"Resource - High-level design","doc":"A resource is an organized collection of content that is versioned and tracks content changes over time. Resources have a globally unique identifier across projects so that even if their content has diverged (different HEAD revision), they have the ability to diff and merge content with the same resource in other projects. Content within the system that is intended to track/diff/merge changes over time and provide rich versioning support is most likely using a resource to do this. Some examples of resource types are Page, Assessment, Activity, Learning Objective, etc...","ref":"high-level.html#resource"},{"type":"extras","title":"Resource Revision - High-level design","doc":"A resource revision represents a resource at a specific moment in it's revision history. A revision points to it's parent revision and therefore links to all of it's previous ancestors. The latest revision for a resource is referred to as the HEAD revision and it is referenced by the resource as it's last revision. If a revision's parent is null, then it is the initial revision of a resource. Revisions also track a resource's slug which is described in another section below.\n\n```\n------------- HEAD INITIAL\n| Resource | -> Revision -> Revision -> Revision -> Revision\n-------------\n```","ref":"high-level.html#resource-revision"},{"type":"extras","title":"Project - High-level design","doc":"A project is an organized container of all the resources that comprise a course and it's curriculum. These resources include pages, assessments, learning objectives, and media.","ref":"high-level.html#project"},{"type":"extras","title":"Publication - High-level design","doc":"A publication is a snapshot of a project at some point in time. Publications serve as an update, version or milestone of a project that an author deems ready for production use. Publications are created when a package is published which then become available for instructors to use for creating or updating a course section.","ref":"high-level.html#publication"},{"type":"extras","title":"Section - High-level design","doc":"A section is an instance of a course publication that is configured by an instructor and delivered to students. A new section will be created for each LMS context or cohort of students intended to access course content. A section tracks learner progress and reports grades back to the connected LMS.","ref":"high-level.html#section"},{"type":"extras","title":"Resource Slug - High-level design","doc":"When a resource is created, a slug will be generated based on some semantic meaning for the resource (e.g. using the resource title). This slug is actually stored at the revision level because it can change over time as the resource changes. For example, if a resource with title \"Introduction to Linear Algebra\" is created, then it's slug might be introduction-linear-algebra-55jl2k. As changes are made to the content, but not the title, this slug may remain the same for each new revision that gets created. If at some point the title is changed to \"Basic Linear Algebra Concepts\", the slug might change to basic-linear-algebra-conc-w8s25t. This slug is now related to the new semantic meaning of it's resource at that revision. It's important to understand however, that even though there are two different slugs for multiple different revisions, they are really just identifiers for the parent resource and both can be used to find a specific resource.\n\nTo summarize, a slug is a resource identifier that is stored at the revision level. Slugs do not have to change across revisions, but they can. Multiple slugs can point to a single resource.","ref":"high-level.html#resource-slug"},{"type":"extras","title":"Publication Model","doc":"# Publication Model","ref":"publication-model.html"},{"type":"extras","title":"Overview - Publication Model","doc":"Torus employs a publication model that is designed to support:\n\n- The ability to allow forward development for an author without interferring with student and instructor visible content\n- The ability to track changes across revisions of a project resource\n- The ability to migrate changes for resources across different projects\n- The ability to allow instructors to preview and opt-in to using newly published content","ref":"publication-model.html#overview"},{"type":"extras","title":"Data Model - Publication Model","doc":"The primary components and their relationships are as follows:\n\n![publication model](assets/pub-er.png \"Publication Model\")\n\nA `Resource` in a course project can be a page (graded or ungraded),\ncontainer (e.g. Unit, Module), an activity, or learning objective. A course\nproject consists of a collection of resources. This relationship is\na many-to-many relationship to allow multiple course projects to share\nthe same resource. That is a key aspect of Torus design to allow families\nof related course projects to exist in which content and changes of a\nshared resource can migrate from course to course within the course project\nfamily.\n\nChanges in the content of any particular resource, over time, are modeled as a collection of `Revisions`, hence the one-to-many relationship from `Resource` to `Revision`.\n\nA course project has a series of `Publications`. A publication is\neither `published` (meaning it is available and visible to instructors to use)\nor it is `unpublished`. Course `Sections` that an instructor teaches reference\nexactly one `Publication` for the course projects that the section is using.\n\nFinally, at the heart of the publication model, the `Published Resource` exists to tie together a specific revision for every resource in a course for a specific publication.","ref":"publication-model.html#data-model"},{"type":"extras","title":"Example Data - Publication Model","doc":"As an example of this publication model, consider the following table of\n`Published Resource` records, all from one course project that consists\nof two resources identified by `R1` and `R2` that have revision records identified by `V1` and `V2`, respectively. Initially the course has one publication identified by `P1` so the published resource records look like:\n\n| Publication | Resource | Revision |\n| ----------- | :------: | :------: |\n| P1 | R1 | V1 |\n| P1 | R2 | V2 |\n\nThe course author makes a change to the `R2` resource and publishes that\nchange as a second publication `P2`. Now the published resource records\nlook like:\n\n| Publication | Resource | Revision |\n| ----------- | :------: | :------: |\n| P1 | R1 | V1 |\n| P1 | R2 | V2 |\n| P2 | R1 | V1 |\n| P2 | R2 | V3 |\n\nIn the above, we see how the original publication is preserved - so any\ncourse sections teaching it will have their content unaffected by the new\npublication. Any course section that opts-in to using the `P2` publication\nwill see the update to the `R2` resource.","ref":"publication-model.html#example-data"},{"type":"extras","title":"Attempt design","doc":"# Attempt design\n\nTorus _attempts_ track student interaction and results for pages, activities and parts of activities.","ref":"attempt.html"},{"type":"extras","title":"Attempt Hierarchy - Attempt design","doc":"Torus models attempts in a hierarchy that mirrors the hierarchical\nstructure of course content. So for every\npage that a student visits in Torus a _page attempt_ record is created.\nFor every activity that exists on a visited page, an _activity\nattempt_ record is created (which points back to the parent page attempt\nrecord). Finally, for every part that an activity defines, a _part attempt_\nrecord is created.\n\nThe entire attempt hierarchy is rooted in a _resource access_ record\nthat tracks, amongst other things, the rolled up student result (aka grade)\nacross all attempts.","ref":"attempt.html#attempt-hierarchy"},{"type":"extras","title":"Attempt History - Attempt design","doc":"The Torus attempt hierarchy supports preservation of\nhistorical attempts. Consider an example where a student takes a graded\nassessment (i.e. a page) that contains two activities (each with one part) twice. The full\nattempt hierarchy, with history, would look like the following:\n\n```\nResource Access\n--Page Attempt 1\n----Activity A, Attempt 1\n------Part 1, Attempt 1\n----Activity B, Attempt 1\n------Part 1, Attempt 1\n--Page Attempt 2\n----Activity A, Attempt 1\n------Part 1, Attempt 1\n----Activity B, Attempt 1\n------Part 1, Attempt 1\n```\n\nAs another example, consider an ungraded page that contains one activity\nthat a student attempts several times:\n\n```\nResource Access\n--Page Attempt 1\n----Activity A, Attempt 1\n------Part 1, Attempt 1\n----Activity A, Attempt 2\n------Part 1, Attempt 1\n----Activity A, Attempt 3\n------Part 1, Attempt 1\n----Activity A, Attempt 4\n------Part 1, Attempt 1\n```","ref":"attempt.html#attempt-history"},{"type":"extras","title":"Attempt States - Attempt design","doc":"Attempts can exist in multiple states. These states are:\n\n- **Non-existent**: The student has yet to access the page, thus no attempt exists.\n- **Active**: A student attempt is \"active\" when they are currently interacting\n with this page or activity therefore the attempt is \"active\".\n- **Submitted**: The student submitted a response for an activity that requires manual\n instructor scoring, thus the attempt enters a \"submitted\" state. The attempt is now\n read-only for the student.\n- **Evaluated**: The student response has been evaluated (whether automatically or manually) and a score has been recorded into the attempt record. The attempt is now read-only for both the instructor and student.","ref":"attempt.html#attempt-states"},{"type":"extras","title":"Attempt handling","doc":"# Attempt handling\n\nWhen the underlying page or activity has a new revision available due to the\ninstructor applying a new course project publication, Torus handles existing page and\nactivity attempts in different ways depending on the attempt state.","ref":"attempt-handling.html"},{"type":"extras","title":"Ungraded Pages - Attempt handling","doc":"Here is how updates to content are applied to attempts in ungraded pages:\n\n- _Evaluated_ or _Submitted_: Evaluated and submitted attempts are affected in no way\n by new revision publication.\n These attempts always maintain a reference to the revision of the page or the activity\n that existed at the time of submission or evaluation. If a student \"Resets\" an evaluated attempt to\n create another attempt, this new attempt will always show the content of the most recentl\n published revision.\n- _Active_: Active activity attempts are left as-is by the system until the time that the\n student accesses the page again. In this\n manner, a student that is in the middle of interacting with a page that contains\n activities will not have this content updated by new revision publication. It is only at the time that a student revisits a page that\n has an active attempt where\n Torus will detect that a new revision of the page or activity is available. There are\n two cases to consider here:\n\n 1. The page itself has a new revision available. In this case, Torus simply creates a\n new page attempt record with all new activity attempt records for the student. The reasoning here\n is that since actual page content itself has changed the system should give all new activity\n attempts to allow the student to see these activities in the context of the latest page content.\n 2. Only activity revisions have changed. In this case, a new activity attempt will be created\n for each of only the changed activities. No new page attempt is created.\n\n- _Non existent_: For pages that a student has never visited, there is of course no attempt\n hierarchy present. At the time of first visit, the student will always encounter the latest published\n revision for the page and activities.","ref":"attempt-handling.html#ungraded-pages"},{"type":"extras","title":"Graded Pages - Attempt handling","doc":"- _Evaluated_ or _Submitted_: Both evaluated and submitted attempts for graded pages are affected in no way by new revision publication.\n Similar to ungraded page attempts, these attempts always maintain a reference to the revision of the page or the activity that existed at the time of finalization.\n- _Active_: Active activity attempts are left as-is by the system. In this\n manner, a student that is in the middle of interacting with a graded page will not have the content\n that they see updated by new revision publication. Even if the student leaves the page, and then\n returns, they will continue to see their attempt that is pinned to the original content. After the student\n submits the entire assessment for evaluation, subsequent attempts will show the newly published content.\n- _Non existent_: For graded pages that a student has never visited, there is of course no attempt\n hierarchy present. At the time of first visit, the student will always encounter the latest published\n revision for the page and activities.","ref":"attempt-handling.html#graded-pages"},{"type":"extras","title":"Document locking","doc":"# Document locking\n\nTorus authoring is designed to support only one user editing a document at a time. To\nenforce this, the system requires than an exclusive write-lock be obtained prior to\nediting a document.\n\nThe Torus authoring framework implementation handles obtaining and releasing the write-lock\nfor a set of documents. This implicit locking approach, as opposed to an explicit approach,\nsimplifies an activity implementation since the activity implementation does not need to concern\nitself with obtaining and releasing locks.\n\nThe following sequence diagram overviews the locking implementation.\n\n![locking](assets/locking.png \"Locking Implementation\")\n\nThe important takeaways from the above diagram are:\n\n- The Torus framework for authoring takes care of obtaining and releasing document locks\n- An activity implementation can strictly rely on the `editMode` property given to it to determine whether it should enable or disable authoring","ref":"locking.html"},{"type":"extras","title":"Page model","doc":"# Page model\n\nPage model is governed by a JSON schema.","ref":"page-model.html"},{"type":"extras","title":"GDPR compliance","doc":"# GDPR compliance","ref":"gdpr.html"},{"type":"extras","title":"Cookie compliance requirements - GDPR compliance","doc":"- Receive users’ consent before you use any cookies except strictly necessary cookies.\n- Provide accurate and specific information about the data each cookie tracks and its purpose in plain language before consent is received.\n- Document and store consent received from users.\n- Allow users to access your service even if they refuse to allow the use of certain cookies\n- Make it as easy for users to withdraw their consent as it was for them to give their consent in the first place.\n\nThe Cookie Law does not require that records of consent be kept but instead, indicates that you should be able to prove that consent occurred — even if that consent has been withdrawn.\n\nTo comply with the requirements, our approach needed to ensure that an opportunity for the user to provide consent is presented even in cases where a user never logins into our system. That consideration, combined with not having to maintain records of consent, meant that an approach that makes use of long-lived cookies to keep track of consent works fine in our use case. The approach works as follows.\n\n- Each page on our site is instrumented with some cookie consent management scripts\n- The scripts run every time any page is loaded on the browser\n- The script first checks to see if a cookie with the name “\\_cky_opt_in” is present and that its value is “true”. This cookie is used to track whether the consent pop-up has been launched in that particular browser before. If not a new one is created with a value “false” and an expiration value of 365 days (Compliant with GDPR).\n- A cookie named “\\_cky_opt_in_dismiss” with a duration of 1hr is also created whenever the cookie above is created. This cookie allows our website to re-prompt the user with the cookie consent pop-up every hour if they simply dismissed the pop-up without providing consent\n- If the user agrees to allow cookies, a cookie named “\\_cky_opt_choices” is created. Its duration is 365 days and the value is the consent preferences agreed to by the user. The value of the cookie “\\_cky_opt_in” is updated to true.\n- Note that after 365 days, our system will prompt the user for a new consent\n- The cookie consent pop-up also presents the user with the option to modifly cookie preferences. The preferences dialog simply updates the values store in the “\\_cky_opt_choices” cookie or creates one if one is not already present.\n- Each page on our site has a footer containing a link that will directly launch the preferences dialog any time the user wishes to adjust their cookie preferences.","ref":"gdpr.html#cookie-compliance-requirements"},{"type":"extras","title":"Miscelleanous","doc":"# Miscelleanous","ref":"misc.html"},{"type":"extras","title":"General Notes - Miscelleanous","doc":"- [bcrypt_elixir](https://github.com/riverrun/bcrypt_elixir) requires >1 CPU core to function. If you have only one core, on say a small VPS, your release will crash without giving a useful error message!! For a single core host, use Pbkdf2 instead of Bcrypt. See here for more on this: https://github.com/riverrun/comeonin/wiki/Deployment\n- Link account using social login will not work out of the box in development mode! This is because you must configure an exact url with the OAuth provider, and therefore a local ngrok tunnel address will not work. If you really need this to work, you can configure your OAuth provider with your temporary ngrok address e.g. `https://163400959f6a.ngrok.io/auth/google/link/callback`. Be sure to also set your HOST in oli.env to your ngrok address as well (e.g. `HOST=https://163400959f6a.ngrok.io`) or else you will be redirected to localhost by default after login and the user session will not be present for linking, because it was stored in the session for the ngrok address. Because of this complexity, it is recommended to simply use an email account to link accounts, which does not experience this issue.","ref":"misc.html#general-notes"},{"type":"extras","title":"Access Generated Emails in Development - Miscelleanous","doc":"When the system generates email in production, generally it will be handed to an email service such as Amazon SES. Any email service supported by Bamboo can be configured in config/prod.exs. Refer to the Bamboo and Pow docs to see a list of all supported email adapters and how to configure them https://hexdocs.pm/pow/configuring_mailer.html#content, https://hexdocs.pm/bamboo/readme.html\n\nIn development mode, the system will use the Bamboo.LocalAdapter mailer, which stores sent mail in memory and is accessible via web browser at `https://localhost/dev/sent_emails`. There is also a specific test adapter configured for unit testing.","ref":"misc.html#access-generated-emails-in-development"},{"type":"extras","title":"Create Registrations from seed - Miscelleanous","doc":"To ease the burden of creating a new registration after every database reset, there is the option to automatically create LTI registrations\nattached to the default institution in dev environment by creating a registrations.json file in the project root.\n\nExample:\n\n```\n[{\n \"issuer\": \"https://canvas.oli.cmu.edu\",\n \"client_id\": \"XXXXXXXXXXXXX\",\n \"key_set_url\": \"https://canvas.oli.cmu.edu/api/lti/security/jwks\",\n \"auth_token_url\": \"https://canvas.oli.cmu.edu/login/oauth2/token\",\n \"auth_login_url\": \"https://canvas.oli.cmu.edu/api/lti/authorize_redirect\",\n \"auth_server\": \"https://canvas.oli.cmu.edu/login/oauth2/token\"\n}]\n```\n\nWith this file, now when you run `mix ecto.seed` or `mix ecto.reset`, a registration with these details will be created for you.","ref":"misc.html#create-registrations-from-seed"},{"type":"extras","title":"Overview","doc":"# Overview","ref":"overview-1.html"},{"type":"extras","title":"Important concepts and terms - Overview","doc":"Torus operates broadly in two different modes:\n\n- _Authoring_: Authoring mode is a set of features used by authors to create, update and publish the\n material within their course project.\n- _Delivery_: Delivery mode is a set of features used by Instructors and Students during the\n delivery of course material to students in a course section.\n\nThe material with course projects is modeled as a collection of `Resources` of different\nsupported resource types. The following lists the various types of resources that exist:\n\n- _Container_: A collection of pages or containers that can correspond to \"Units\" or \"Modules\" within a course.\n- _Page_: A collection of content and activities that offer student instruction and assessment. Pages can be either \"graded\" or \"practice\".\n- _Activity_: A scorable interaction used in both practice or assessment contexts.\n- _Objective_: A learning objective that course content attempts to instruct and that activities offer\n practice and assessment on.\n- _Tag_: A tag is a flexible mechanism that can power a variety of platform functionality such as\n activity bank selection.\n\nActivities have several important concepts:\n\n- _Activity type_: Torus supports a variety of different kinds of student interactive experiences\n such as multiple choice, ordering, and check all that apply.\n- _Activity instance_: An activity instance is created when an author defines (aka \"authors\") a new\n activity of a supported activity type.\n- _Activity reference_: Activity instances are not directly embedded into pages, rather a reference\n to an instance is stored within pages. This mechanism allows activity instances to be shared\n across pages.\n- _Activity bank_: A collection of activity instances that can be randomly selected according to\n a defined set of criteria at delivery time. A page can contain _activity bank selections_ which\n allows the system to select and render different activities for each different student attempt.\n- _Parts_: Activity instances have a collection of one or more _parts_. A part offers a mechanism\n to track student interaction and submission, and ultimately to store a system or instructor\n assign score. Some activity types have a fixed number of parts: for example a multiple choice activity\n has only one part which models which choice the student selected, their received score and any\n received feedback. Other activity types feature multiple parts, and in some cases the number of\n parts is dynamic and determined at the time that the author defines the activity instance. For\n example, an author can create a \"Multi input\" activity that features three \"fill in the blank\"\n text inputs in the middle of the question stem. This activity instance would have three parts, one\n for each of these inputs, and allows each of them to be scored individually.\n- _Grading approach_: Each part within an activity instance can specify its required grading, or scoring, approach. The supported options are `automatic` and `manual`. Automatically scored\n parts require the definition of a collection of `responses` that specify the rules to use\n to allow the sytem to perform automatic scoring. Manually scored parts for activities ultimately\n require the instructor to review the submission for the part and to assign a score and provide\n feedback.","ref":"overview-1.html#important-concepts-and-terms"},{"type":"extras","title":"LTI 1.3","doc":"# LTI 1.3","ref":"implementing.html"},{"type":"extras","title":"LTI 1.3 Launch Overview - LTI 1.3","doc":"This is a summary of the LTI 1.3 handshake outlined in the IMS Security Framework 1.0 Specification ([5.1 Platform-Originating Messages](https://www.imsglobal.org/spec/security/v1p0/#platform-originating-messages)) geared toward elixir developers who wish to implement LTI 1.3 in their apps. This page assumes that both the tool and platform have been registered with each other.\n\nRemember that registering requires a tool and platform to store important details about each other, such as:\n\n**Example tool details** registered with the platform:\n\n```elixir\nclient_id: \"1000000000001\"\nkeyset_url: \"https://tool.example.edu/.well-known/jwks.json\"\noidc_login_url: \"https://tool.example.edu/login\"\nredirect_uris: \"https://tool.example.edu/launch\"\ntarget_link_ui: \"https://tool.example.edu/launch\"\n```\n\n**Example platform details** registered with the tool:\n\n```elixir\nissuer: \"https://platform.example.edu\"\nclient_id: \"1000000000001\"\nkey_set_url: \"https://platform.example.edu/.well-known/jwks.json\"\nauth_token_url: \"https://platform.example.edu/access_tokens\"\nauth_login_url: \"https://platform.example.edu/authorize_redirect\"\n```\n\nThis registration process happens out-of-band before the LTI launch itself can be performed. Typically this information is exchanged between two parties through some external form of communication (e.g. email) or automatic registration and approval process.","ref":"implementing.html#lti-1-3-launch-overview"},{"type":"extras","title":"LTI 1.3 Process - LTI 1.3","doc":"![LTI 1.3 Launch Flow](https://www.imsglobal.org/sites/default/files/specs/images/security/1p0/fig5p2-oidcflowv1.jpg)","ref":"implementing.html#lti-1-3-process"},{"type":"extras","title":"Step 1: Third-party Initiated Login - LTI 1.3","doc":"https://www.imsglobal.org/spec/security/v1p0/#step-1-third-party-initiated-login\n\nAn LTI launch begins with a form submission (GET or POST) from a platform webpage. The **platform** crafts the form using the pre-registered tool configuration and platform details. The form can either target the current window by default or an iframe embedded in the page. For example, this form will target the iframe below it:\n\n_controller.ex_\n\n```elixir\nlaunch_params = %{\n # client_id must match the value registered with the tool\n client_id: \"1000000000001\",\n\n # issuer value associated with the plaform\n iss: \"https://platform.example.edu\",\n\n # tool OIDC login path, the destination this request will be sent to\n oidc_login_url: \"https://tool.example.edu/login\",\n\n # the location of the requested LTI resource\n target_link_uri: \"https://tool.example.edu/launch\",\n\n # unique token used later by the platform to associate the request with this user session\n login_hint: \"ac5cdc6e-1dd2-97f2-e2c8-0d4236e9b092\",\n}\n\nrender(conn, \"lti_launch.html\", launch_params: launch_params)\n```\n\n_lti_launch.html.eex_\n\n```html\n \n \n \n \n \n\n Launch LTI 1.3 Tool \n \n\n \n```\n\nWhen a user clicks the \"Launch LTI 1.3 Tool\" button the form request will be sent to the tool's OIDC login endpoint and the LTI 1.3 handshake will begin.","ref":"implementing.html#step-1-third-party-initiated-login"},{"type":"extras","title":"Step 2: Authentication Request - LTI 1.3","doc":"https://www.imsglobal.org/spec/security/v1p0/#step-2-authentication-request\n\nWhen the request is recieved, the **tool** will validate the issuer and client_id match the registered platform, validate the login_hint param is present and issue a redirect to the platform's OIDC (OpenID Connect) endpoint to authenticate the user.\n\nIf validation is successful, the tool will craft the OIDC request with the following parameters:\n\n```elixir\n%{\n # OIDC and LTI 1.3 required params\n \"scope\" => \"openid\",\n \"response_type\" => \"id_token\",\n \"response_mode\" => \"form_post\",\n \"prompt\" => \"none\",\n\n # client_id that was given by POST params, also associated with the platform registration\n \"client_id\" => \"some-client-id\",\n\n # the tool url to redirect back to after successful login\n \"redirect_uri\" => \"some-redirect_uri\",\n\n # unique token associated with this request and used later to prevent CSRF\n \"state\" => \"some-unique-token\",\n\n # unique identifier cached by the platform to prevent replay attacks\n \"nonce\" => \"some-unique-nonce\",\n\n # opaque string used by the platform to validate the user session associated with the request\n \"login_hint\" => \"some-login-hint\",\n}\n```\n\nFor example, the final request using GET to the platform will look something like:\n`GET /authorize_redirect?scope=openid&response_type=id_token&... etc.`","ref":"implementing.html#step-2-authentication-request"},{"type":"extras","title":"Step 3: Authentication Response - LTI 1.3","doc":"https://www.imsglobal.org/spec/security/v1p0/#step-3-authentication-response\n\nThe **platform** will recieve the authorize_redirect request from the tool and it will validate the required OIDC params are present, validate the login_hint is associated with the current user session, validate the client_id is associated with a registered tool, validate the redirect_url matches one of the registered urls, and finally validate the nonce has not been used before. If valid, the platform will issue one final POST request to the tool's specified redirect_uri with the recieved state token and an id_token JWT containing the LTI 1.3 claims such as user details, context info, and any other LTI specific or custom claims that may be supported by the platform.\n\nHere is an example of the LTI params within the id_token JWT. [Full example resource link request](http://www.imsglobal.org/spec/lti/v1p3/#examplelinkrequest).\n\n```elixir\n%{\n # security claims\n \"iss\" => \"https://platform.example.edu\",\n \"sub\" => \"a6d5c443-1f51-4783-ba1a-7686ffe3b54a\",\n \"aud\" => [\"962fa4d8-bcbf-49a0-94b2-2de05ad274af\"],\n \"exp\" => 1510185728,\n \"iat\" => 1510185228,\n \"azp\" => \"962fa4d8-bcbf-49a0-94b2-2de05ad274af\",\n \"nonce\" => \"fc5fdc6d-5dd6-47f4-b2c9-5d1216e9b771\",\n\n # user details claims\n \"name\" => \"Ms Jane Marie Doe\",\n \"given_name\" => \"Jane\",\n \"family_name\" => \"Doe\",\n \"middle_name\" => \"Marie\",\n \"picture\" => \"https://platform.example.edu/jane.jpg\",\n \"email\" => \"jane@platform.example.edu\",\n \"locale\" => \"en-US\",\n\n # LTI claims\n \"https://purl.imsglobal.org/spec/lti/claim/deployment_id\":\n \"07940580-b309-415e-a37c-914d387c1150\",\n \"https://purl.imsglobal.org/spec/lti/claim/message_type\" => \"LtiResourceLinkRequest\",\n \"https://purl.imsglobal.org/spec/lti/claim/version\" => \"1.3.0\",\n \"https://purl.imsglobal.org/spec/lti/claim/roles\" => [\n \"http://purl.imsglobal.org/vocab/lis/v2/institution/person#Student\",\n \"http://purl.imsglobal.org/vocab/lis/v2/membership#Learner\",\n \"http://purl.imsglobal.org/vocab/lis/v2/membership#Mentor\"\n ],\n \"https://purl.imsglobal.org/spec/lti/claim/role_scope_mentor\" => [\n \"fad5fb29-a91c-770-3c110-1e687120efd9\",\n \"5d7373de-c76c-e2b-01214-69e487e2bd33\",\n \"d779cfd4-bc7b-019-9bf1a-04bf1915d4d0\"\n ],\n \"https://purl.imsglobal.org/spec/lti/claim/context\" => {\n \"id\" => \"c1d887f0-a1a3-4bca-ae25-c375edcc131a\",\n \"label\" => \"ECON 1010\",\n \"title\" => \"Economics as a Social Science\",\n \"type\" => [\"http://purl.imsglobal.org/vocab/lis/v2/course#CourseOffering\"]\n },\n \"https://purl.imsglobal.org/spec/lti/claim/resource_link\" => {\n \"id\" => \"200d101f-2c14-434a-a0f3-57c2a42369fd\",\n \"description\" => \"Assignment to introduce who you are\",\n \"title\" => \"Introduction Assignment\"\n },\n \"https://purl.imsglobal.org/spec/lti/claim/tool_platform\" => {\n \"guid\" => \"ex/48bbb541-ce55-456e-8b7d-ebc59a38d435\",\n \"contact_email\" => \"support@platform.example.edu\",\n \"description\" => \"An Example Tool Platform\",\n \"name\" => \"Example Tool Platform\",\n \"url\" => \"https://platform.example.edu\",\n \"product_family_code\" => \"ExamplePlatformVendor-Product\",\n \"version\" => \"1.0\"\n },\n \"https://purl.imsglobal.org/spec/lti/claim/target_link_uri\":\n \"https://tool.example.com/lti/48320/ruix8782rs\",\n \"https://purl.imsglobal.org/spec/lti/claim/launch_presentation\" => {\n \"document_target\" => \"iframe\",\n \"height\" => 320,\n \"width\" => 240,\n \"return_url\" => \"https://platform.example.edu/terms/201601/courses/7/sections/1/resources/2\"\n },\n \"https://purl.imsglobal.org/spec/lti/claim/lis\" => {\n \"person_sourcedid\" => \"example.edu:71ee7e42-f6d2-414a-80db-b69ac2defd4\",\n \"course_offering_sourcedid\" => \"example.edu:SI182-F16\",\n \"course_section_sourcedid\" => \"example.edu:SI182-001-F16\"\n },\n\n # additional custom claims\n \"https://purl.imsglobal.org/spec/lti/claim/custom\" => {\n \"xstart\" => \"2017-04-21T01:00:00Z\",\n \"request_url\" => \"https://tool.com/link/123\"\n },\n\n # additional extensions claims\n \"http://www.ExamplePlatformVendor.com/session\" => {\n \"id\" => \"89023sj890dju080\"\n }\n}\n```\n\nThese params are encoded and signed as a JWT using RSA256 and the platform's private JWK, which can later be verfied by the tool using the platforms publicly accessible JWK.\n\nThis redirect POST can be accomplished by rendering an html form and (if enabled) using javascript to submit on the user's behalf.\n\n```html\n\n \n \n You are being redirected... \n \n \n You are being redirected... \n \n \n \n\n \n \n \n \n\n \n window.onload = function () {\n document.getElementsByName(\"post_redirect\")[0].style.display = \"none\";\n document.forms[\"post_redirect\"].submit();\n };\n \n \n \n```","ref":"implementing.html#step-3-authentication-response"},{"type":"extras","title":"Step 4: Resource is displayed - LTI 1.3","doc":"https://www.imsglobal.org/spec/security/v1p0/#step-4-resource-is-displayed\n\nFinally, if all validations have passed and the launch was successful, the LTI 1.3 resource will be displayed in the user's browser.","ref":"implementing.html#step-4-resource-is-displayed"},{"type":"extras","title":"References and Useful Links - LTI 1.3","doc":"- Learning Tools Interoperability Core Specification - [http://www.imsglobal.org/spec/lti/v1p3/](http://www.imsglobal.org/spec/lti/v1p3/)\n- IMS Security Framework - [https://www.imsglobal.org/spec/security/v1p0](https://www.imsglobal.org/spec/security/v1p0)\n- Canvas Platform Implementaion (authentication_controller.rb) - [https://github.com/instructure/canvas-lms/blob/master/app/controllers/lti/ims/authentication_controller.rb](https://github.com/instructure/canvas-lms/blob/master/app/controllers/lti/ims/authentication_controller.rb)\n- IMS PHP Tool Library [https://github.com/IMSGlobal/lti-1-3-php-library](https://github.com/IMSGlobal/lti-1-3-php-library)","ref":"implementing.html#references-and-useful-links"},{"type":"extras","title":"LTI 1.3 Configuration","doc":"# LTI 1.3 Configuration\n\nTorus supports LTI 1.3 integration and leverages the Learning Management System (LMS) for course delivery. The philosophy of Torus is to focus and excel at what it is specifically designed for, which is rich course content authoring, delivery and data-driven continuous improvement. Many of the necessary features of course delivery such as roster management, grade book management and scheduling are deferred to the LMS, which is what it is specifically designed for. These aspects of the student and instructor experience are crucial and require tight integration which is enabled by the LTI 1.3 standard.\n\nMany LMSs currently support the LTI 1.3 standard including Canvas, Blackboard, Moodle, Brightspace D2L, and more. Each LMS may have a slightly different method of configuring an external tool like Torus, but in general the process is similar between them and is driven by the [LTI 1.3 Specification](http://www.imsglobal.org/spec/lti/v1p3/).","ref":"config.html"},{"type":"extras","title":"Concepts - LTI 1.3 Configuration","doc":"","ref":"config.html#concepts"},{"type":"extras","title":"Institutions - LTI 1.3 Configuration","doc":"Torus has the concept of an **Institution** which represents an organization whom wishes to use Torus, typically from their own self-hosted LMS or a cloud-hosted one. For example, Carnegie Mellon University would be considered an institution, and so is The Open Learning Initiative (OLI).","ref":"config.html#institutions"},{"type":"extras","title":"Registrations - LTI 1.3 Configuration","doc":"A **Registration** represents a configured LTI connection from an institution in Torus. Typically an institution will have a single registration but there may be certain cases where an institution has multiple registrations could be an institution that has multiple LMSs. Each one of these LMSs may belong to the same **Institution** but will have separate registrations. The combination of `issuer` (typically a URL e.g. https://canvas.oli.cmu.edu) and `client_id` represents a globally unique registration. The issuer represents the LTI Platform, not necessarily the institution. For example, `https://canvas.instructure.com` is the issuer that represents any institution who may be using Instructure's cloud platform and the client id represents the specific registration, and therefore institution.","ref":"config.html#registrations"},{"type":"extras","title":"Deployments - LTI 1.3 Configuration","doc":"A **Deployment** can be thought of as the next tier below registrations. A registration may have many deployments. For example, a **Registration** may have one deployment for every course, or a single deployment shared globally across the entire LMS.\n\nThere is some flexibility to how these concepts could be represented for an organization, but typically an organization will have a single **Institution**, with a single **Registration** for their LMS, and they may have one or many **Deployments** within their LMS depending on if the tool is configure globally or for an individual department/course.\n\nInstitutions, registrations and deployments are currently created and managed by a Torus administrator. In the future, we plan to add more flexibility on how these entities can be registered and approved. For now, please contact OLI if you wish to deliver a Torus course from your organization's LMS. If you are running your own instance of Torus, the steps below outline the process for creating these entities required for LTI 1.3 integration with an LMS.","ref":"config.html#deployments"},{"type":"extras","title":"Connecting to Torus with LTI 1.3 - LTI 1.3 Configuration","doc":"To get connected with Torus, you must first configure your LMS LTI 1.3 connection. This process will vary depending on your institution's LMS, but the basic principles are the same. Refer to the specific instructions for your LMS in the [Configuring LTI 1.3 in LMS](#configuring-lti1.3-in-lms) section below. You will only have to perform this setup process once for your LMS.\n\nAfter your LMS has been configured, you should be able to access Torus from your LMS. The first time you launch into Torus from your LMS, you will be presented with a \"Register Your Institution\" form. Please fill out this form and allow OLI up to 2 business days to review and approve your request.\n\n \n\nIf your are running your own instance of Torus, your Torus admin will need to approve this request under Institutions > Pending Requests.\n\nOnce your request has been approved, you should now be able to access Torus from your LMS which will guide you through course setup.","ref":"config.html#connecting-to-torus-with-lti-1-3"},{"type":"extras","title":"Configuring LTI 1.3 in LMS - LTI 1.3 Configuration","doc":"","ref":"config.html#configuring-lti-1-3-in-lms"},{"type":"extras","title":"Canvas - LTI 1.3 Configuration","doc":"#### Create LTI 1.3 Developer Key\n\nCanvas Docs: https://community.canvaslms.com/t5/Admin-Guide/How-do-I-configure-an-LTI-key-for-an-account/ta-p/140\n\nCanvas requires elevated privileges to configure LTI 1.3 Developer Keys and Apps. Canvas administrators should have the necessary privileges. If you don't see the options mentioned below, you may not have proper privileges or your canvas instance may be an older version which does not support LTI 1.3. In either case, you should check with your LMS administrator.\n\n1. In Canvas using the left main menu, select Admin > [Admin Account Name].\n\n \n\n Then click \"Developer Keys\" link\n\n \n\n1. Under Developer Keys, click \"+ Developer Key\" > \"+ LTI Key\"\n\n \n\n1. You have two options when configuring an LTI 1.3 Developer Key in Canvas:\n\n - **OPTION 1 (Recommended)** - Automatic Configuration using JSON URL\n\n 1. Select **Enter URL** for the method\n\n 1. Configure the following fields with values that correspond to your torus deployment. For example, if you are hosting torus at a specific domain or in a development environment using a service such as ngrok, you will want to replace all instances of `proton.oli.cmu.edu` with your domain or ngrok address e.g. `ba7c432acd17.ngrok.io`.\n\n - **Redirect URIs:** https://proton.oli.cmu.edu/lti/launch\n - **Developer Key JSON URL:** https://proton.oli.cmu.edu/lti/developer_key.json\n\n ![img](https://raw.githubusercontent.com/Simon-Initiative/oli-torus/master/docs/images/developer_key_json_url.png)\n\n Click \"Save\"\n\n - **OPTION 2** - Manual Entry\n\n 1. Configure the following fields with values that correspond to your torus deployment. For example, if you are hosting torus at a specific domain or in a development environment using a service such as ngrok, you will want to replace all instances of `proton.oli.cmu.edu` with your domain or ngrok address e.g. `ba7c432acd17.ngrok.io`.\n\n - **Key Name:** OLI Torus\n - **Owner Email:** admin@proton.oli.cmu.edu\n - **Redirect URIs:** https://proton.oli.cmu.edu/lti/launch\n - **Title:** Torus\n - **Description:** Create, deliver and iteratively improve course content with Torus, through the Open Learning Initiative\n - **Target Link URI:** https://proton.oli.cmu.edu/lti/launch\n - **OpenID Connect Initiation Url:** https://proton.oli.cmu.edu/lti/login\n - **JWK Method:** Public JWK URL\n - **Public JWK URL:** https://proton.oli.cmu.edu/.well-known/jwks.json\n - **Placements:** Configure depending on your needs, or leave defaults\n\n ![img](https://raw.githubusercontent.com/Simon-Initiative/oli-torus/master/docs/images/key_settings.png)\n\n Click \"Save\".\n\n1. Enable the newly created LTI Key by setting it to \"ON\". Your LTI 1.3 key is now configured and ready to use!\n\n \n\n1. Copy the corresponding number under details for future use, (e.g. 10000000000034). This will be our **Client ID**.\n\n \n\n#### Add Torus as an External Tool link in your Canvas course\n\nCanvas Docs: https://community.canvaslms.com/t5/Admin-Guide/How-do-I-configure-an-external-app-for-an-account-using-a-client/ta-p/202\n\n1. Navigate to your course and click \"Settings\" > \"Apps\"\n\n \n\n \n\n1. Select Configuration Type \"By Client ID\" and insert the **Client ID** we kept from the previous steps. Click \"Submit\". When prompted to install the tool, select \"Install\".\n \n\n1. We must configure this specific deployment with torus, as mentioned in the previous section 'Configuring LTI 1.3 in Torus'. To do this, we must get the **Deployment ID** by Selecting the \"gear\" menu > Deployment Id.\n\n \n\n \n\n Copy this entire ID and use it to configure a deployment in Torus as outlined in the previous section 'Configuring LTI 1.3 in Torus'.\n\n1. If you configured your LTI 1.3 Developer Key with placements other than Link, you will see Torus appear in those places. Otherwise, the default placement is a **Link Selection** placement which allows you to add Torus to any module in your course as you normally would by clicking the plus \"+\" button on a module, selecting \"External Tool\" and finally selecting the Torus tool we just added. Click \"Add Item\".\n \n\n1. Navigate to Torus through the placement you configured, and you should be guided through course setup, which is outside the scope of this document. If you see any errors related to your LTI configuration, you may need to revisit the previous section 'Configuring LTI 1.3 in Torus' or your canvas instance may be improperly configured. The error message should give you an indication of the specific issue and provide a link to OLI support for further help if needed.","ref":"config.html#canvas"},{"type":"extras","title":"Blackboard - LTI 1.3 Configuration","doc":"Coming soon...","ref":"config.html#blackboard"},{"type":"extras","title":"Moodle - LTI 1.3 Configuration","doc":"Coming soon...","ref":"config.html#moodle"},{"type":"extras","title":"Manual LTI 1.3 Configuration in Torus (Torus Admin) - LTI 1.3 Configuration","doc":"To manually configure an LTI 1.3 integration in Torus, we need to gather some important LMS details first. These details can usually be supplied by an LMS administrator. For certain values such as Client ID and Deployment ID, you will need to configure Torus in your LMS first before you can get this value. It is recommended you or your LMS administrator follow the steps in the section 'Configuring LTI 1.3 in LMS' below to obtain this.\n\n- **Issuer** (e.g. https://canvas.oli.cmu.edu)\n- **Client ID:** This is obtained by creating an LTI 1.3 Developer Key in the LMS. See specific instructions below depending on your LMS.\n- **Key Set Url** (e.g. https://canvas.oli.cmu.edu/api/lti/security/jwks)\n- **Auth Token Url** (e.g. https://canvas.oli.cmu.edu/login/oauth2/token)\n- **Auth Login Url** (e.g. https://canvas.oli.cmu.edu/api/lti/authorize_redirect)\n- **Auth Server Url** (e.g. https://canvas.oli.cmu.edu/login/oauth2/token)\n- **KID** (e.g. 2018-05-18T22:33:20Z). This can also be obtained by entering the **Key Set URL** in your browser and extracting the first value for `\"kid\":\"2018-05-18T22:33:20Z\"`\n- **Deployment ID** This is obtained by creating an LTI 1.3 Deployment in the LMS. See specific instructions below depending on your LMS.\n\n1. In Torus as an Administrator, select \"Institutions\" from the sidebar on the left of the workspace, then click \"Register New Institution\"\n\n \n\n1. Enter your Institution's details and click \"Save\"\n\n \n\n1. Click the \"Details\" button for the institution you just created\n\n \n\n1. Click \"Add Registration\" and enter registration details, which are outlined above and should be provided by your LMS administrator. You may use a placeholder value for Client ID if you haven't configured an LTI Key in your LMS yet, but it is very important you return and update this value before launching into Torus. When finished, click on the registration labeled by its **[Issuer - Client ID]** to expand it.\n\n ![img](https://raw.githubusercontent.com/Simon-Initiative/oli-torus/master/docs/images/institution_example.png)\n\n1. Click \"Add Deployment\" and enter the Deployment ID saved from the instructions below when you created a deployment in your LMS. Click \"Save\".\n\n1. Once you have a **Registration** and a **Deployment** configured for your **Institution**, you can now return to your LMS and launch into Torus and you will be guided through course setup, which is outside the scope of this document.","ref":"config.html#manual-lti-1-3-configuration-in-torus-torus-admin"},{"type":"extras","title":"Course material ingestion","doc":"# Course material ingestion\n\nTorus supports importing, or ingesting, externally developed course material.","ref":"overview-2.html"},{"type":"extras","title":"Overview - Course material ingestion","doc":"The Torus ingestion feature takes as input a _course digest archive_ and converts that into a course project.\n\nCourse digest archives can be produced from a variety of different sources, either manually or via automated tools.\n\nThere is an automated tool that produces course digest\narchives from the legacy OLI XML course format.\n\nhttps://github.com/Simon-Initiative/course-digest\n\n[[assets/ingest.png]]","ref":"overview-2.html#overview"},{"type":"extras","title":"Course Digest Format - Course material ingestion","doc":"Course digest archives are `zip` files that contain\n`JSON` files corresponding to curriculum resources.\n\nIn a course digest, the following are the minimally\nrequired files:\n\n### `_project.json`\n\nThis file describes high level course meta data.\n\n```json\n{\n \"slug\": \"edx_bio_1\",\n \"title\": \"Introduction to Biology\",\n \"description\": \"An introductory biology course suitable for non-majors\",\n \"type\": \"Manifest\"\n}\n```\n\n### `_hierarchy_.json`\n\nThis file describes the course outline, or hierarchy,\ndefining the units and modules of a course and the\npages that they contain. The following is an excerpt\nof a sample hierarchy file:\n\n```json\n{\n \"type\": \"Hierarchy\",\n \"children\": [\n {\n \"type\": \"container\",\n \"children\": [\n {\n \"type\": \"container\",\n \"children\": [\n {\n \"type\": \"item\",\n \"children\": [],\n \"idref\": \"u-introduction-m-introduction-p-welcome\"\n }\n ],\n \"id\": \"u-introduction-m-introduction\",\n \"title\": \"Introduction\"\n },\n {\n \"type\": \"container\",\n \"children\": [\n {\n \"type\": \"item\",\n```\n\nThe hierarchy file is essential a nested collection of children, that are of either type \"container\" (to represent a unit or module) or of type \"item\" (to\nrepresent a page reference). For \"item\" instances, the\n`idref` attribute is a reference to the `id` attribute\nof resource `JSON` file.\n\n### `_media-manifest_.json`\n\nThis file is a listing of all media assets that this\ncourse has prestaged into Torus S3 storage.\n\n```json\n{\n \"mediaItems\": [\n {\n \"name\": \"1x1.png\",\n \"url\": \"https://torus-media-dev.s3.amazonaws.com/media/nothingatall/1x1.png\",\n \"fileSize\": 95,\n \"mimeType\": \"image/png\",\n \"md5\": \"71a50dbba44c78128b221b7df7bb51f1\"\n },\n {\n \"name\": \"code-variable.png\",\n \"url\": \"https://torus-media-dev.s3.amazonaws.com/media/nothingatall/code-variable.png\",\n \"fileSize\": 3671,\n \"mimeType\": \"image/png\",\n \"md5\": \"0c084906e4502a6e93739b20a4ac119f\"\n },\n```","ref":"overview-2.html#course-digest-format"},{"type":"extras","title":"Resource Files - Course material ingestion","doc":"Beyond the three require metadata files, a course digest\narchive also contains any number of resource specific\nJSON files. These files must be named ` .json` where the `id` is the\nstring identifier used to reference the resource from `idref` attributes\nin the course hierarchy file.\n\nCurrently three types of resource files are supported for ingestion: Page, Activity,\nand Objective. All three follow the same format of requiring `type`, `id`, `title`, `content` and `objectives` attributes to be defined. Samples of each follow:\n\n#### Learning Objective\n\n```json\n{\n \"type\": \"Objective\",\n \"id\": \"u-hardware_and_software-m-hardware_and_software-p-kilobytes_megabytes_and_gigabytes_LO_1\",\n \"title\": \"Solve word problems with arithmetic combinations of kilobytes, megabytes, and gigabytes.\",\n \"content\": {},\n \"objectives\": []\n}\n```\n\n#### Activity\n\n```json\n{\n \"type\": \"Activity\",\n \"id\": \"3550878268\",\n \"title\": \"Image coding activity\",\n \"tags\": [],\n \"content\": {\n \"authoring\": {\n \"parts\": [\n {\n \"id\": \"1\",\n \"responses\": [\n {\n \"id\": \"3713976972\",\n \"score\": 1,\n \"rule\": \"input like {1}\",\n \"feedback\": {\n \"id\": \"2848932877\",\n \"content\": {\n \"id\": \"2564146359\",\n \"model\": [\n {\n \"type\": \"p\",\n \"children\": [\n {\n \"text\": \"Correct\"\n }\n ]\n }\n ]\n```\n\n#### Page\n\n```json\n{\n \"type\": \"Page\",\n \"id\": \"u-security-m-contents_security-p-contents_security\",\n \"originalFile\": \"\",\n \"title\": \"Contents: Security\",\n \"tags\": [],\n \"unresolvedReferences\": [],\n \"content\": {\n \"model\": [\n {\n \"type\": \"content\",\n \"purpose\": \"none\",\n \"id\": \"3177050314\",\n \"children\": [\n {\n \"type\": \"ul\",\n \"children\": [\n {\n \"type\": \"li\",\n \"children\": [\n {\n \"text\": \" \"\n },\n {\n```","ref":"overview-2.html#resource-files"},{"type":"extras","title":"Media assets","doc":"# Media assets\n\nTorus pages and activities can contain multimedia content such as\nimages, audio, and video. Currently, video support in Torus is via YouTube.\nAudio support is via the HTML5 ` ` element, and images are supported via\nHTML ` ` element.","ref":"media.html"},{"type":"extras","title":"External vs Internal Media Asset Storage - Media assets","doc":"For images and audio sources, Torus supports the use of both \"internally\" hosted media assets\nand \"externally\" hosted media assets. This simply means that an author of a course, when inserting\nan image into a page can choose to either upload an image file to Torus to use (thus, \"interally hosted\") or to copy and paste\na URL of a publicly available image to use (thus, \"externally hosted\").\n\nFor internally hosted assets, Torus does several things with that media asset to both ensure correct and efficient delivery\nof a course project and to enable a richer authoring experience:\n\n1. Deduplication: Upload receiving the uplaod of an asset, Torus calculates an MD5 hash and compares it all other assets of that course to prevent duplicate images from being added into the system.\n2. Cached, immutable storage: Once the asset is guaranteed to be unique, Torus stores it in AWS S3 storage, where it can be directly accessible via a URL. At this point, the asset is immutable: it cannot be updated or deleted by a Torus end user. This is necessary to allow proper functioning\n of the Torus publication model. See the `Immutability` section below for a use case that demonstrates this importance. The S3 buckets are\n fronted by an AWS edge caching solution.\n3. Project assocation: Meta-data regarding the asset is associated with the course project, primarily to power the \"Media Library\"\n feature within Torus. An author can then browse their media library within Torus to select the asset for use in other places within\n their course project.\n\nFor externally hosted asset references, Torus does none of the above. It simply allows that external URL to be embedded in the\ncontent of the page and the activity.","ref":"media.html#external-vs-internal-media-asset-storage"},{"type":"extras","title":"Immutability - Media assets","doc":"Immutability of media assets is paramount to correct delivery of a course project as that course project evolves over time.\n\nThe lack of an immutability guarantee for externally hosted assets can cause \"change leakage\" problems. Consider the\nfollowing scenario:\n\n1. An author embeds a reference to an externally hosted image in a page in their course. Perhaps the author has a blog where they have\n images and other assets present.\n2. Course sections are created and students begin to access the course material.\n3. The author then decides to begin editing their course material to prepare for a major revision that they will publish in a few months for the next semester of course sections. The author deems it necessary to update several of the images hosted on their blog to support these course material updates.\n4. While the Torus course material updates will not be visible to students (since the author hasn't \"Published\" those changes yet), as soon as the author changes those images, students working through the active course section see the new, updated images.","ref":"media.html#immutability"},{"type":"extras","title":"Asset Considerations for Course Ingestion - Media assets","doc":"Developers creating course digests to ingest into Torus can choose to take advantage of Torus \"internally hosted\" assets and the media library\nfeature.\n\n1. Asset URL references within pages and activities must use the Torus AWS URL prefixes, so that at runtime these reference resolve to the correct Torus asset location. The format of the URL is `https://d2xvti2irp4c7t.cloudfront.net/media/${project_slug}/${file_name}`, where\n `project_slug` is a unique project identifier (not necessarily the actual project slug that will get generated, more so simply a folder name) and `file_name` of course is the name of the file corresponding to the asset.\n2. Every asset in a course project that is intended to be tracked by Torus in the media library must have an entry in the `_media_manifest.json` file of the course digest.\n3. Before or after a course digest has been ingested, the actual media assets themselves need to be \"staged\" in the Torus AWS S3 instance.\n\nOnce both the digest has been ingested and the assets staged, an author can begin accessing and editing the newly ingested course and be able to view the existing assets in pages. Furthermore, the author is able to browse the library of all asssets via the Media Library capability.","ref":"media.html#asset-considerations-for-course-ingestion"},{"type":"extras","title":"Asset Staging - Media assets","doc":"The OLI Legacy course digest tool (https://github.com/Simon-Initiative/course-digest) contains an asset staging implementation that developers of other digests can reuse. This\nimplemenation takes as input a media manifest file and expects all\nthe assets referenced within it to also be present in the local filesystem. The implementation simply uploads, serially, the files\nin the manifest into the Torus AWS S3 storage.\n\nExternal developers that want to stage assets must work with internal\nTorus engineering to first obtain the `project_slug` identifier to use\nin constructing asset URLs, and the S3 credentials to use to drive the\nupload implementation.","ref":"media.html#asset-staging"},{"type":"extras","title":"Running Upgrade in a Dev Env","doc":"# Running Upgrade in a Dev Env\n\nThese instructions will set up a development environment\nfor the Upgrade A/B testing platform, paired with your local Torus dev env.\n\n1. Clone our fork at https://github.com/Simon-Initiative/UpGrade\n2. In `backend/packages/Upgrade` execute `yarn install`\n3. Create a `.env` in that directory from the contents of `.env.example` from `guides/upgrade/.env.example`\n4. In your Postgres, manually create a new database `upgrade`\n5. Executing `npm run dev` should populate the database. Subsequent executions will fail until you comment out line 83 of `backend/packages/Upgrade/src/loaders/typeormLoader.ts`\n6. From `frontend` directory, run `yarn install`\n7. From `frontend` directtory, run `npm run start`\n\nYou will also need to specify Torus `.env` variables:\n\n```\nUPGRADE_EXPERIMENT_PROVIDER_URL=http://localhost:3030\nUPGRADE_EXPERIMENT_USER_URL=http://localhost:4200\n```","ref":"dev-env.html"},{"type":"extras","title":"modules","doc":"[oli](README.md) / Exports\n\n# oli","ref":"modules.html"},{"type":"extras","title":"Table of contents - modules","doc":"","ref":"modules.html#table-of-contents"},{"type":"extras","title":"Enumerations - modules","doc":"- [GradingApproach](enums/GradingApproach.md)\n- [ScoringStrategy](enums/ScoringStrategy.md)\n- [Transform](enums/Transform.md)","ref":"modules.html#enumerations"},{"type":"extras","title":"Classes - modules","doc":"- [AuthoringElement](classes/AuthoringElement.md)\n- [DeliveryElement](classes/DeliveryElement.md)","ref":"modules.html#classes"},{"type":"extras","title":"Interfaces - modules","doc":"- [ActivityContext](interfaces/ActivityContext.md)\n- [ActivityLevelScoring](interfaces/ActivityLevelScoring.md)\n- [ActivityModelSchema](interfaces/ActivityModelSchema.md)\n- [ActivityState](interfaces/ActivityState.md)\n- [AuthoringElementProps](interfaces/AuthoringElementProps.md)\n- [Choice](interfaces/Choice.md)\n- [CreationContext](interfaces/CreationContext.md)\n- [DeliveryElementProps](interfaces/DeliveryElementProps.md)\n- [EvaluationResponse](interfaces/EvaluationResponse.md)\n- [Explanation](interfaces/Explanation.md)\n- [Feedback](interfaces/Feedback.md)\n- [FeedbackAction](interfaces/FeedbackAction.md)\n- [HasChoices](interfaces/HasChoices.md)\n- [HasContent](interfaces/HasContent.md)\n- [HasParts](interfaces/HasParts.md)\n- [HasPerPartSubmissionOption](interfaces/HasPerPartSubmissionOption.md)\n- [HasPreviewText](interfaces/HasPreviewText.md)\n- [HasStem](interfaces/HasStem.md)\n- [HasTransformations](interfaces/HasTransformations.md)\n- [Hint](interfaces/Hint.md)\n- [IsAction](interfaces/IsAction.md)\n- [NavigationAction](interfaces/NavigationAction.md)\n- [Part](interfaces/Part.md)\n- [PartActivityResponse](interfaces/PartActivityResponse.md)\n- [PartState](interfaces/PartState.md)\n- [RegistrationResult](interfaces/RegistrationResult.md)\n- [RequestHintResponse](interfaces/RequestHintResponse.md)\n- [ResetActivityResponse](interfaces/ResetActivityResponse.md)\n- [Response](interfaces/Response.md)\n- [SectionAuthoringProps](interfaces/SectionAuthoringProps.md)\n- [SpecifiesEditor](interfaces/SpecifiesEditor.md)\n- [SpecifiesTextDirection](interfaces/SpecifiesTextDirection.md)\n- [StateUpdateAction](interfaces/StateUpdateAction.md)\n- [Stem](interfaces/Stem.md)\n- [StudentResponse](interfaces/StudentResponse.md)\n- [SubmissionAction](interfaces/SubmissionAction.md)\n- [Success](interfaces/Success.md)\n- [Transformation](interfaces/Transformation.md)","ref":"modules.html#interfaces"},{"type":"extras","title":"Type aliases - modules","doc":"- [Action](modules.md#action)\n- [ChoiceId](modules.md#choiceid)\n- [ChoiceIdsToResponseId](modules.md#choiceidstoresponseid)\n- [ClientEvaluation](modules.md#clientevaluation)\n- [DeliveryMode](modules.md#deliverymode)\n- [FileMetaData](modules.md#filemetadata)\n- [HasHints](modules.md#hashints)\n- [HasStems](modules.md#hasstems)\n- [Manifest](modules.md#manifest)\n- [MatchStyle](modules.md#matchstyle)\n- [MediaItemRequest](modules.md#mediaitemrequest)\n- [ModeSpecification](modules.md#modespecification)\n- [PartId](modules.md#partid)\n- [PartResponse](modules.md#partresponse)\n- [PostUndoable](modules.md#postundoable)\n- [ResponseId](modules.md#responseid)\n- [RichText](modules.md#richtext)\n- [Undoable](modules.md#undoable)\n- [creationFn](modules.md#creationfn)","ref":"modules.html#type-aliases"},{"type":"extras","title":"Functions - modules","doc":"- [feedbackToString](modules.md#feedbacktostring)\n- [invokeCreationFunc](modules.md#invokecreationfunc)\n- [makeChoice](modules.md#makechoice)\n- [makeContent](modules.md#makecontent)\n- [makeFeedback](modules.md#makefeedback)\n- [makeHint](modules.md#makehint)\n- [makePart](modules.md#makepart)\n- [makePreviewText](modules.md#makepreviewtext)\n- [makeResponse](modules.md#makeresponse)\n- [makeStem](modules.md#makestem)\n- [makeTransformation](modules.md#maketransformation)\n- [makeUndoable](modules.md#makeundoable)\n- [register](modules.md#register)\n- [registerCreationFunc](modules.md#registercreationfunc)","ref":"modules.html#functions"},{"type":"extras","title":"Type aliases - modules","doc":"","ref":"modules.html#type-aliases"},{"type":"extras","title":"Action - modules","doc":"Ƭ **Action**: [`NavigationAction`](interfaces/NavigationAction.md) \\| [`FeedbackAction`](interfaces/FeedbackAction.md) \\| [`StateUpdateAction`](interfaces/StateUpdateAction.md) \\| [`SubmissionAction`](interfaces/SubmissionAction.md)\n\nSupported actions.\n\n#### Defined in\n\n[src/components/activities/types.ts:532](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L532)\n\n___","ref":"modules.html#action"},{"type":"extras","title":"ChoiceId - modules","doc":"Ƭ **ChoiceId**: `ID`\n\nAlias for the identifier of a choice.\n\n#### Defined in\n\n[src/components/activities/types.ts:93](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L93)\n\n___","ref":"modules.html#choiceid"},{"type":"extras","title":"ChoiceIdsToResponseId - modules","doc":"Ƭ **ChoiceIdsToResponseId**: [[`ChoiceId`](modules.md#choiceid)[], [`ResponseId`](modules.md#responseid)]\n\nDefines a mapping of a collection of choices to a response.\n\n#### Defined in\n\n[src/components/activities/types.ts:693](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L693)\n\n___","ref":"modules.html#choiceidstoresponseid"},{"type":"extras","title":"ClientEvaluation - modules","doc":"Ƭ **ClientEvaluation**: `Object`\n\nAllows submission of a client-side evaluation for an activity\nsubmission.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `feedback` | `any` |\n| `outOf` | `number` \\| ``null`` |\n| `response` | `any` |\n| `score` | `number` \\| ``null`` |\n\n#### Defined in\n\n[src/components/activities/types.ts:169](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L169)\n\n___","ref":"modules.html#clientevaluation"},{"type":"extras","title":"DeliveryMode - modules","doc":"Ƭ **DeliveryMode**: ``\"delivery\"`` \\| ``\"review\"`` \\| ``\"preview\"``\n\nThree different modes of activity delivery.\n\n`'delivery'` is the standard mode where a student is interacting\nwith a an activity\n`'review'` mode is when a student is reviewing a previously\nsubmitted activity, in a read only mode\n`'preview'` mode is instructor specific and allows access to\nresponses and hints\n\n#### Defined in\n\n[src/components/activities/types.ts:52](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L52)\n\n___","ref":"modules.html#deliverymode"},{"type":"extras","title":"FileMetaData - modules","doc":"Ƭ **FileMetaData**: `Object`\n\nFile response metadata.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `creationTime` | `number` |\n| `fileSize` | `number` |\n| `url` | `string` |\n\n#### Defined in\n\n[src/components/activities/types.ts:698](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L698)\n\n___","ref":"modules.html#filemetadata"},{"type":"extras","title":"HasHints - modules","doc":"Ƭ **HasHints**: [`HasParts`](interfaces/HasParts.md)\n\nMarker interface for an entity that has hints.\n\n#### Defined in\n\n[src/components/activities/types.ts:392](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L392)\n\n___","ref":"modules.html#hashints"},{"type":"extras","title":"HasStems - modules","doc":"Ƭ **HasStems**: `Object`\n\nMarker interface for an entity that has a collection of stems.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `stems` | [`Stem`](interfaces/Stem.md)[] |\n\n#### Defined in\n\n[src/components/activities/types.ts:380](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L380)\n\n___","ref":"modules.html#hasstems"},{"type":"extras","title":"Manifest - modules","doc":"Ƭ **Manifest**: `Object`\n\nStructure of an activity manifest.\n\nThe `id` field must be unique amongst all activities registered in\na Torus instance. The format for the `id` field is ` _ `\nwhere ` ` is the designated namespace for this family of activities\nand ` ` is a terse description of this specific activity. Examples\ninclude: `oli_multiple_choice`, `example_tf`.\n\nThe `friendlyName` attribute is a short, human readable string that the UX within\nTorus will display to students, instructors and authors in various contexts. Words\nwithin it should be space separated and capitalized. For example: \"Multiple Choice\"\n\nThe `descriptions` attribute is a slightly longer human readable description of the\nactivity. For example, \"A traditional multiple choice question with one correct answer\"\n\n`delivery` and `authoring` attributes specify the element tag names that the activity\nis implemented within.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `authoring` | [`ModeSpecification`](modules.md#modespecification) |\n| `delivery` | [`ModeSpecification`](modules.md#modespecification) |\n| `description` | `string` |\n| `friendlyName` | `string` |\n| `id` | `ID` |\n\n#### Defined in\n\n[src/components/activities/types.ts:196](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L196)\n\n___","ref":"modules.html#manifest"},{"type":"extras","title":"MatchStyle - modules","doc":"Ƭ **MatchStyle**: ``\"any\"`` \\| ``\"all\"`` \\| ``\"none\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:465](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L465)\n\n___","ref":"modules.html#matchstyle"},{"type":"extras","title":"MediaItemRequest - modules","doc":"Ƭ **MediaItemRequest**: `Object`\n\nRequest for a media item from the media library.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `mimeTypes` | `string`[] |\n| `type` | ``\"MediaItemRequest\"`` |\n\n#### Defined in\n\n[src/components/activities/types.ts:57](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L57)\n\n___","ref":"modules.html#mediaitemrequest"},{"type":"extras","title":"ModeSpecification - modules","doc":"Ƭ **ModeSpecification**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `element` | `string` |\n| `entry` | `string` |\n\n#### Defined in\n\n[src/components/activities/types.ts:151](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L151)\n\n___","ref":"modules.html#modespecification"},{"type":"extras","title":"PartId - modules","doc":"Ƭ **PartId**: `ID`\n\nAlias for the identifier of a part.\n\n#### Defined in\n\n[src/components/activities/types.ts:98](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L98)\n\n___","ref":"modules.html#partid"},{"type":"extras","title":"PartResponse - modules","doc":"Ƭ **PartResponse**: `Object`\n\nType type allows the submission of a response for a specific\npart of an activity.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `response` | [`StudentResponse`](interfaces/StudentResponse.md) |\n\n#### Defined in\n\n[src/components/activities/types.ts:160](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L160)\n\n___","ref":"modules.html#partresponse"},{"type":"extras","title":"PostUndoable - modules","doc":"Ƭ **PostUndoable**: (`undoable`: [`Undoable`](modules.md#undoable)) => `void`\n\n#### Type declaration\n\n▸ (`undoable`): `void`\n\nType for the post undo function.\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `undoable` | [`Undoable`](modules.md#undoable) |\n\n##### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/types.ts:40](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L40)\n\n___","ref":"modules.html#postundoable"},{"type":"extras","title":"ResponseId - modules","doc":"Ƭ **ResponseId**: `ID`\n\nAlias for the identifier of a response.\n\n#### Defined in\n\n[src/components/activities/types.ts:103](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L103)\n\n___","ref":"modules.html#responseid"},{"type":"extras","title":"RichText - modules","doc":"Ƭ **RichText**: `ModelElement`[]\n\nRich text definition, an array of `ModelElement` instances.\n\n#### Defined in\n\n[src/components/activities/types.ts:108](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L108)\n\n___","ref":"modules.html#richtext"},{"type":"extras","title":"Undoable - modules","doc":"Ƭ **Undoable**: `Object`\n\nAn Undoable action that an activity defines as a result of some (usually\ndestructive) operation.\n\nFor example, if a choice is deleted via the user interface of an activity,\nthe activity can create and post an `Undoable` that, if invoked by the\npage editor, would result in the choice being restored.\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `description` | `string` |\n| `operations` | `PathOperation`[] |\n| `type` | ``\"Undoable\"`` |\n\n#### Defined in\n\n[src/components/activities/types.ts:70](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L70)\n\n___","ref":"modules.html#undoable"},{"type":"extras","title":"creationFn - modules","doc":"Ƭ **creationFn**: (`context`: [`CreationContext`](interfaces/CreationContext.md)) => `Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n#### Type declaration\n\n▸ (`context`): `Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `context` | [`CreationContext`](interfaces/CreationContext.md) |\n\n##### Returns\n\n`Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n#### Defined in\n\n[src/components/activities/creation.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/creation.ts#L4)","ref":"modules.html#creationfn"},{"type":"extras","title":"Functions - modules","doc":"","ref":"modules.html#functions"},{"type":"extras","title":"feedbackToString - modules","doc":"▸ **feedbackToString**(`feedback`): `string`\n\nConverts a rich text feedback, that may contain inline markup and\nblock-level elements, to text.\n\nThis function should only be used in contexts where there is a\nguarantee that the loss of data via this conversion is not a problem.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `feedback` | [`Feedback`](interfaces/Feedback.md) | rich text capable feedback |\n\n#### Returns\n\n`string`\n\nonly the string text found within the feedback\n\n#### Defined in\n\n[src/components/activities/types.ts:21](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L21)\n\n___","ref":"modules.html#feedbacktostring"},{"type":"extras","title":"invokeCreationFunc - modules","doc":"▸ **invokeCreationFunc**(`id`, `context`): `Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `id` | `string` |\n| `context` | `ResourceContext` |\n\n#### Returns\n\n`Promise`<[`ActivityModelSchema`](interfaces/ActivityModelSchema.md)\\>\n\n#### Defined in\n\n[src/components/activities/creation.ts:26](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/creation.ts#L26)\n\n___","ref":"modules.html#invokecreationfunc"},{"type":"extras","title":"makeChoice - modules","doc":"▸ **makeChoice**(`text`, `id?`): [`Choice`](interfaces/Choice.md)\n\nHelper function to create a choice from simple text.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `text` | `string` |\n| `id?` | `string` |\n\n#### Returns\n\n[`Choice`](interfaces/Choice.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:351](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L351)\n\n___","ref":"modules.html#makechoice"},{"type":"extras","title":"makeContent - modules","doc":"▸ **makeContent**(`text`, `id?`): `Object`\n\nHelper function to create a content object out of a raw string. Returns\nthe string as a single paragraph within rich text, within the content\nobject.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `text` | `string` | text string |\n| `id?` | `string` | optional identifier |\n\n#### Returns\n\n`Object`\n\ncontent\n\n| Name | Type |\n| :------ | :------ |\n| `content` | [`RichText`](modules.md#richtext) |\n| `editor` | `EditorType` |\n| `id` | `string` |\n| `textDirection` | `TextDirection` |\n\n#### Defined in\n\n[src/components/activities/types.ts:129](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L129)\n\n___","ref":"modules.html#makecontent"},{"type":"extras","title":"makeFeedback - modules","doc":"▸ **makeFeedback**(`text`): [`Feedback`](interfaces/Feedback.md)\n\nHelper function to create Feedback from simple text.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `text` | `string` |\n\n#### Returns\n\n[`Feedback`](interfaces/Feedback.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:412](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L412)\n\n___","ref":"modules.html#makefeedback"},{"type":"extras","title":"makeHint - modules","doc":"▸ **makeHint**(`text`): [`Hint`](interfaces/Hint.md)\n\nHelper function to create a hint from simple text.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `text` | `string` |\n\n#### Returns\n\n[`Hint`](interfaces/Hint.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:396](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L396)\n\n___","ref":"modules.html#makehint"},{"type":"extras","title":"makePart - modules","doc":"▸ **makePart**(`responses`, `hints?`, `id?`, `targets?`): [`Part`](interfaces/Part.md)\n\nHelper function to create a part.\n\n#### Parameters\n\n| Name | Type | Default value | Description |\n| :------ | :------ | :------ | :------ |\n| `responses` | [`Response`](interfaces/Response.md)[] | `undefined` | responses to use |\n| `hints` | [`Hint`](interfaces/Hint.md)[] | `undefined` | hints to use |\n| `id?` | `string` | `undefined` | the part id |\n| `targets` | `string`[] | `[]` | - |\n\n#### Returns\n\n[`Part`](interfaces/Part.md)\n\nthe formulated part\n\n#### Defined in\n\n[src/components/activities/types.ts:593](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L593)\n\n___","ref":"modules.html#makepart"},{"type":"extras","title":"makePreviewText - modules","doc":"▸ **makePreviewText**(): `string`\n\nHelper function to create preview text.\n\n#### Returns\n\n`string`\n\n#### Defined in\n\n[src/components/activities/types.ts:688](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L688)\n\n___","ref":"modules.html#makepreviewtext"},{"type":"extras","title":"makeResponse - modules","doc":"▸ **makeResponse**(`rule`, `score`, `text?`, `correct?`): [`Response`](interfaces/Response.md)\n\nHelper function to create a response.\n\n#### Parameters\n\n| Name | Type | Default value | Description |\n| :------ | :------ | :------ | :------ |\n| `rule` | `string` | `undefined` | match rule |\n| `score` | `number` | `undefined` | score to assign |\n| `text` | `string` | `''` | simple text to formulate a Feedback from |\n| `correct?` | `boolean` | `undefined` | - |\n\n#### Returns\n\n[`Response`](interfaces/Response.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:507](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L507)\n\n___","ref":"modules.html#makeresponse"},{"type":"extras","title":"makeStem - modules","doc":"▸ **makeStem**(`text`): [`Stem`](interfaces/Stem.md)\n\nHelper function to create a stem from a simple string.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `text` | `string` |\n\n#### Returns\n\n[`Stem`](interfaces/Stem.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:384](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L384)\n\n___","ref":"modules.html#makestem"},{"type":"extras","title":"makeTransformation - modules","doc":"▸ **makeTransformation**(`path`, `operation`, `firstAttemptOnly`, `partId?`): [`Transformation`](interfaces/Transformation.md)\n\nHelper function to create a transformation.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `path` | `string` | JSON path of the node within the model to transform |\n| `operation` | [`shuffle`](enums/Transform.md#shuffle) | The transformation operation |\n| `firstAttemptOnly` | `boolean` | - |\n| `partId?` | `string` | - |\n\n#### Returns\n\n[`Transformation`](interfaces/Transformation.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:444](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L444)\n\n___","ref":"modules.html#maketransformation"},{"type":"extras","title":"makeUndoable - modules","doc":"▸ **makeUndoable**(`description`, `operations`): [`Undoable`](modules.md#undoable)\n\nHelper function to create an instance of an `Undoable`\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `description` | `string` | Description of the undoable |\n| `operations` | `PathOperation`[] | Collection of path operations on the model that implements the undoable |\n\n#### Returns\n\n[`Undoable`](modules.md#undoable)\n\nan undoable instance\n\n#### Defined in\n\n[src/components/activities/types.ts:82](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L82)\n\n___","ref":"modules.html#makeundoable"},{"type":"extras","title":"register - modules","doc":"▸ **register**(`localFile`, `torusHost`, `token`): `Promise`<[`RegistrationResult`](interfaces/RegistrationResult.md) \\| `ServerError`\\>\n\nHelper function to register an activity from a zip bundle into a\nspecific Torus instance.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `localFile` | `string` | path to the local file that is the activity zip bundle |\n| `torusHost` | `string` | URL specifying protocol, host and port of the Torus instance to register this activity into. Example: `\"https://proton.oli.cmu.edu/\"` |\n| `token` | `string` | encoded API token |\n\n#### Returns\n\n`Promise`<[`RegistrationResult`](interfaces/RegistrationResult.md) \\| `ServerError`\\>\n\n`RegistrationResult` on success\n\n#### Defined in\n\n[src/components/activities/registrar.ts:19](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/registrar.ts#L19)\n\n___","ref":"modules.html#register"},{"type":"extras","title":"registerCreationFunc - modules","doc":"▸ **registerCreationFunc**(`manifest`, `fn`): `void`\n\nRegisters a creation function for an activity type. The creation function\nis what the system will execute to create new instances of this\nactivity type in an authoring context. The most usual implementation\nof a creation function is to simply return (i.e. resolve) a default\nactivity model. But given the async interface here, a creation function\ncan have a more interesting implementation where it makes a network request\nto a third-party server to retrieve data to use in constructing the\nactivity instance.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `manifest` | [`Manifest`](modules.md#manifest) | manifest file JSON |\n| `fn` | [`creationFn`](modules.md#creationfn) | the creation function to use |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/creation.ts:18](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/creation.ts#L18)","ref":"modules.html#registercreationfunc"},{"type":"extras","title":"ActivityContext","doc":"[oli](../README.md) / [Exports](../modules.md) / ActivityContext\n\n# Interface: ActivityContext","ref":"activitycontext.html"},{"type":"extras","title":"Table of contents - ActivityContext","doc":"","ref":"activitycontext.html#table-of-contents"},{"type":"extras","title":"Properties - ActivityContext","doc":"- [bibParams](ActivityContext.md#bibparams)\n- [graded](ActivityContext.md#graded)\n- [groupId](ActivityContext.md#groupid)\n- [isAnnotationLevel](ActivityContext.md#isannotationlevel)\n- [learningLanguage](ActivityContext.md#learninglanguage)\n- [pageAttemptGuid](ActivityContext.md#pageattemptguid)\n- [pageLinkParams](ActivityContext.md#pagelinkparams)\n- [pageState](ActivityContext.md#pagestate)\n- [projectSlug](ActivityContext.md#projectslug)\n- [renderPointMarkers](ActivityContext.md#renderpointmarkers)\n- [resourceId](ActivityContext.md#resourceid)\n- [sectionSlug](ActivityContext.md#sectionslug)\n- [showFeedback](ActivityContext.md#showfeedback)\n- [surveyId](ActivityContext.md#surveyid)\n- [userId](ActivityContext.md#userid)\n- [variables](ActivityContext.md#variables)","ref":"activitycontext.html#properties"},{"type":"extras","title":"Properties - ActivityContext","doc":"","ref":"activitycontext.html#properties"},{"type":"extras","title":"bibParams - ActivityContext","doc":"• **bibParams**: `any`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:59](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L59)\n\n___","ref":"activitycontext.html#bibparams"},{"type":"extras","title":"graded - ActivityContext","doc":"• **graded**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:52](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L52)\n\n___","ref":"activitycontext.html#graded"},{"type":"extras","title":"groupId - ActivityContext","doc":"• **groupId**: ``null`` \\| `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:57](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L57)\n\n___","ref":"activitycontext.html#groupid"},{"type":"extras","title":"isAnnotationLevel - ActivityContext","doc":"• **isAnnotationLevel**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:65](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L65)\n\n___","ref":"activitycontext.html#isannotationlevel"},{"type":"extras","title":"learningLanguage - ActivityContext","doc":"• `Optional` **learningLanguage**: `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:56](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L56)\n\n___","ref":"activitycontext.html#learninglanguage"},{"type":"extras","title":"pageAttemptGuid - ActivityContext","doc":"• **pageAttemptGuid**: `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:60](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L60)\n\n___","ref":"activitycontext.html#pageattemptguid"},{"type":"extras","title":"pageLinkParams - ActivityContext","doc":"• **pageLinkParams**: `any`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:67](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L67)\n\n___","ref":"activitycontext.html#pagelinkparams"},{"type":"extras","title":"pageState - ActivityContext","doc":"• `Optional` **pageState**: `any`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:61](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L61)\n\n___","ref":"activitycontext.html#pagestate"},{"type":"extras","title":"projectSlug - ActivityContext","doc":"• **projectSlug**: `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:54](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L54)\n\n___","ref":"activitycontext.html#projectslug"},{"type":"extras","title":"renderPointMarkers - ActivityContext","doc":"• **renderPointMarkers**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:64](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L64)\n\n___","ref":"activitycontext.html#renderpointmarkers"},{"type":"extras","title":"resourceId - ActivityContext","doc":"• `Optional` **resourceId**: `number`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:63](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L63)\n\n___","ref":"activitycontext.html#resourceid"},{"type":"extras","title":"sectionSlug - ActivityContext","doc":"• **sectionSlug**: `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:53](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L53)\n\n___","ref":"activitycontext.html#sectionslug"},{"type":"extras","title":"showFeedback - ActivityContext","doc":"• **showFeedback**: ``null`` \\| `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:62](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L62)\n\n___","ref":"activitycontext.html#showfeedback"},{"type":"extras","title":"surveyId - ActivityContext","doc":"• **surveyId**: ``null`` \\| `string`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:58](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L58)\n\n___","ref":"activitycontext.html#surveyid"},{"type":"extras","title":"userId - ActivityContext","doc":"• **userId**: `number`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:55](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L55)\n\n___","ref":"activitycontext.html#userid"},{"type":"extras","title":"variables - ActivityContext","doc":"• **variables**: `any`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:66](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L66)","ref":"activitycontext.html#variables"},{"type":"extras","title":"ActivityLevelScoring","doc":"[oli](../README.md) / [Exports](../modules.md) / ActivityLevelScoring\n\n# Interface: ActivityLevelScoring","ref":"activitylevelscoring.html"},{"type":"extras","title":"Table of contents - ActivityLevelScoring","doc":"","ref":"activitylevelscoring.html#table-of-contents"},{"type":"extras","title":"Properties - ActivityLevelScoring","doc":"- [authoring](ActivityLevelScoring.md#authoring)\n- [customScoring](ActivityLevelScoring.md#customscoring)\n- [scoringStrategy](ActivityLevelScoring.md#scoringstrategy)","ref":"activitylevelscoring.html#properties"},{"type":"extras","title":"Properties - ActivityLevelScoring","doc":"","ref":"activitylevelscoring.html#properties"},{"type":"extras","title":"authoring - ActivityLevelScoring","doc":"• **authoring**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `parts` | [`Part`](Part.md)[] |\n\n#### Defined in\n\n[src/components/activities/types.ts:622](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L622)\n\n___","ref":"activitylevelscoring.html#authoring"},{"type":"extras","title":"customScoring - ActivityLevelScoring","doc":"• `Optional` **customScoring**: `boolean`\n\n#### Defined in\n\n[src/components/activities/types.ts:620](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L620)\n\n___","ref":"activitylevelscoring.html#customscoring"},{"type":"extras","title":"scoringStrategy - ActivityLevelScoring","doc":"• `Optional` **scoringStrategy**: [`ScoringStrategy`](../enums/ScoringStrategy.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:621](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L621)","ref":"activitylevelscoring.html#scoringstrategy"},{"type":"extras","title":"ActivityModelSchema","doc":"[oli](../README.md) / [Exports](../modules.md) / ActivityModelSchema\n\n# Interface: ActivityModelSchema\n\nAn extendable activity model schema.","ref":"activitymodelschema.html"},{"type":"extras","title":"Hierarchy - ActivityModelSchema","doc":"- **`ActivityModelSchema`**\n\n ↳ [`HasStem`](HasStem.md)","ref":"activitymodelschema.html#hierarchy"},{"type":"extras","title":"Table of contents - ActivityModelSchema","doc":"","ref":"activitymodelschema.html#table-of-contents"},{"type":"extras","title":"Properties - ActivityModelSchema","doc":"- [activityType](ActivityModelSchema.md#activitytype)\n- [activity\\_id](ActivityModelSchema.md#activity_id)\n- [authoring](ActivityModelSchema.md#authoring)\n- [bibrefs](ActivityModelSchema.md#bibrefs)\n- [content](ActivityModelSchema.md#content)\n- [id](ActivityModelSchema.md#id)\n- [learningLanguage](ActivityModelSchema.md#learninglanguage)\n- [resourceId](ActivityModelSchema.md#resourceid)","ref":"activitymodelschema.html#properties"},{"type":"extras","title":"Properties - ActivityModelSchema","doc":"","ref":"activitymodelschema.html#properties"},{"type":"extras","title":"activityType - ActivityModelSchema","doc":"• `Optional` **activityType**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:212](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L212)\n\n___","ref":"activitymodelschema.html#activitytype"},{"type":"extras","title":"activity\\_id - ActivityModelSchema","doc":"• `Optional` **activity\\_id**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:215](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L215)\n\n___","ref":"activitymodelschema.html#activity-_id"},{"type":"extras","title":"authoring - ActivityModelSchema","doc":"• `Optional` **authoring**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:209](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L209)\n\n___","ref":"activitymodelschema.html#authoring"},{"type":"extras","title":"bibrefs - ActivityModelSchema","doc":"• `Optional` **bibrefs**: `string`[]\n\n#### Defined in\n\n[src/components/activities/types.ts:214](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L214)\n\n___","ref":"activitymodelschema.html#bibrefs"},{"type":"extras","title":"content - ActivityModelSchema","doc":"• `Optional` **content**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:211](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L211)\n\n___","ref":"activitymodelschema.html#content"},{"type":"extras","title":"id - ActivityModelSchema","doc":"• `Optional` **id**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:213](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L213)\n\n___","ref":"activitymodelschema.html#id"},{"type":"extras","title":"learningLanguage - ActivityModelSchema","doc":"• `Optional` **learningLanguage**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:210](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L210)\n\n___","ref":"activitymodelschema.html#learninglanguage"},{"type":"extras","title":"resourceId - ActivityModelSchema","doc":"• `Optional` **resourceId**: `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:208](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L208)","ref":"activitymodelschema.html#resourceid"},{"type":"extras","title":"ActivityState","doc":"[oli](../README.md) / [Exports](../modules.md) / ActivityState\n\n# Interface: ActivityState\n\nDetails the current state of an activity attempt for a student\nand a specific activity instance.","ref":"activitystate.html"},{"type":"extras","title":"Table of contents - ActivityState","doc":"","ref":"activitystate.html#table-of-contents"},{"type":"extras","title":"Properties - ActivityState","doc":"- [activityId](ActivityState.md#activityid)\n- [attemptGuid](ActivityState.md#attemptguid)\n- [attemptNumber](ActivityState.md#attemptnumber)\n- [dateEvaluated](ActivityState.md#dateevaluated)\n- [dateSubmitted](ActivityState.md#datesubmitted)\n- [groupId](ActivityState.md#groupid)\n- [hasMoreAttempts](ActivityState.md#hasmoreattempts)\n- [hasMoreHints](ActivityState.md#hasmorehints)\n- [outOf](ActivityState.md#outof)\n- [parts](ActivityState.md#parts)\n- [score](ActivityState.md#score)\n- [snapshot](ActivityState.md#snapshot)","ref":"activitystate.html#properties"},{"type":"extras","title":"Properties - ActivityState","doc":"","ref":"activitystate.html#properties"},{"type":"extras","title":"activityId - ActivityState","doc":"• `Optional` **activityId**: `number`\n\nResource id of the activity that this attempt pertains to.\n\n#### Defined in\n\n[src/components/activities/types.ts:293](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L293)\n\n___","ref":"activitystate.html#activityid"},{"type":"extras","title":"attemptGuid - ActivityState","doc":"• **attemptGuid**: `string`\n\nUnique identifier of this attempt.\n\n#### Defined in\n\n[src/components/activities/types.ts:297](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L297)\n\n___","ref":"activitystate.html#attemptguid"},{"type":"extras","title":"attemptNumber - ActivityState","doc":"• **attemptNumber**: `number`\n\nThe orindal number of this attempt, relative to other attempts.\n\n#### Defined in\n\n[src/components/activities/types.ts:302](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L302)\n\n___","ref":"activitystate.html#attemptnumber"},{"type":"extras","title":"dateEvaluated - ActivityState","doc":"• **dateEvaluated**: ``null`` \\| `Date`\n\nIf this attempt has been evaluated, the date of the evaluation, null\nif this attempt has not been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:307](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L307)\n\n___","ref":"activitystate.html#dateevaluated"},{"type":"extras","title":"dateSubmitted - ActivityState","doc":"• **dateSubmitted**: ``null`` \\| `Date`\n\nThe date that this attempt was submitted, if it has been submitted, null\nif not.\n\n#### Defined in\n\n[src/components/activities/types.ts:313](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L313)\n\n___","ref":"activitystate.html#datesubmitted"},{"type":"extras","title":"groupId - ActivityState","doc":"• **groupId**: ``null`` \\| `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:338](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L338)\n\n___","ref":"activitystate.html#groupid"},{"type":"extras","title":"hasMoreAttempts - ActivityState","doc":"• **hasMoreAttempts**: `boolean`\n\nWhether or not this attempt has additional attempts.\n\n#### Defined in\n\n[src/components/activities/types.ts:331](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L331)\n\n___","ref":"activitystate.html#hasmoreattempts"},{"type":"extras","title":"hasMoreHints - ActivityState","doc":"• **hasMoreHints**: `boolean`\n\nWhether or not this attempt has additional hints.\n\n#### Defined in\n\n[src/components/activities/types.ts:335](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L335)\n\n___","ref":"activitystate.html#hasmorehints"},{"type":"extras","title":"outOf - ActivityState","doc":"• **outOf**: ``null`` \\| `number`\n\nMaximum point value that could have been received.\n\n#### Defined in\n\n[src/components/activities/types.ts:322](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L322)\n\n___","ref":"activitystate.html#outof"},{"type":"extras","title":"parts - ActivityState","doc":"• **parts**: [`PartState`](PartState.md)[]\n\nCollection of the part attempt states.\n\n#### Defined in\n\n[src/components/activities/types.ts:326](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L326)\n\n___","ref":"activitystate.html#parts"},{"type":"extras","title":"score - ActivityState","doc":"• **score**: ``null`` \\| `number`\n\nScore received. Null if this attempt has not been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:318](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L318)\n\n___","ref":"activitystate.html#score"},{"type":"extras","title":"snapshot - ActivityState","doc":"• `Optional` **snapshot**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:336](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L336)","ref":"activitystate.html#snapshot"},{"type":"extras","title":"AuthoringElementProps","doc":"[oli](../README.md) / [Exports](../modules.md) / AuthoringElementProps\n\n# Interface: AuthoringElementProps","ref":"authoringelementprops.html"},{"type":"extras","title":"Type parameters - AuthoringElementProps","doc":"| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](ActivityModelSchema.md) |","ref":"authoringelementprops.html#type-parameters"},{"type":"extras","title":"Table of contents - AuthoringElementProps","doc":"","ref":"authoringelementprops.html#table-of-contents"},{"type":"extras","title":"Properties - AuthoringElementProps","doc":"- [authoringContext](AuthoringElementProps.md#authoringcontext)\n- [editMode](AuthoringElementProps.md#editmode)\n- [model](AuthoringElementProps.md#model)\n- [notify](AuthoringElementProps.md#notify)\n- [projectSlug](AuthoringElementProps.md#projectslug)","ref":"authoringelementprops.html#properties"},{"type":"extras","title":"Methods - AuthoringElementProps","doc":"- [onCustomEvent](AuthoringElementProps.md#oncustomevent)\n- [onEdit](AuthoringElementProps.md#onedit)\n- [onPostUndoable](AuthoringElementProps.md#onpostundoable)\n- [onRequestMedia](AuthoringElementProps.md#onrequestmedia)","ref":"authoringelementprops.html#methods"},{"type":"extras","title":"Properties - AuthoringElementProps","doc":"","ref":"authoringelementprops.html#properties"},{"type":"extras","title":"authoringContext - AuthoringElementProps","doc":"• `Optional` **authoringContext**: `any`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:19](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L19)\n\n___","ref":"authoringelementprops.html#authoringcontext"},{"type":"extras","title":"editMode - AuthoringElementProps","doc":"• **editMode**: `boolean`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:17](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L17)\n\n___","ref":"authoringelementprops.html#editmode"},{"type":"extras","title":"model - AuthoringElementProps","doc":"• **model**: `T`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:12](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L12)\n\n___","ref":"authoringelementprops.html#model"},{"type":"extras","title":"notify - AuthoringElementProps","doc":"• `Optional` **notify**: `EventEmitter`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:20](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L20)\n\n___","ref":"authoringelementprops.html#notify"},{"type":"extras","title":"projectSlug - AuthoringElementProps","doc":"• **projectSlug**: `string`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:18](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L18)","ref":"authoringelementprops.html#projectslug"},{"type":"extras","title":"Methods - AuthoringElementProps","doc":"","ref":"authoringelementprops.html#methods"},{"type":"extras","title":"onCustomEvent - AuthoringElementProps","doc":"▸ `Optional` **onCustomEvent**(`eventName`, `payload`): `Promise`<`any`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `eventName` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:16](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L16)\n\n___","ref":"authoringelementprops.html#oncustomevent"},{"type":"extras","title":"onEdit - AuthoringElementProps","doc":"▸ **onEdit**(`model`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `model` | `T` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:13](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L13)\n\n___","ref":"authoringelementprops.html#onedit"},{"type":"extras","title":"onPostUndoable - AuthoringElementProps","doc":"▸ **onPostUndoable**(`undoable`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `undoable` | [`Undoable`](../modules.md#undoable) |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:14](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L14)\n\n___","ref":"authoringelementprops.html#onpostundoable"},{"type":"extras","title":"onRequestMedia - AuthoringElementProps","doc":"▸ **onRequestMedia**(`request`): `Promise`<`string` \\| `boolean`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `request` | [`MediaItemRequest`](../modules.md#mediaitemrequest) |\n\n#### Returns\n\n`Promise`<`string` \\| `boolean`\\>\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:15](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L15)","ref":"authoringelementprops.html#onrequestmedia"},{"type":"extras","title":"Choice","doc":"[oli](../README.md) / [Exports](../modules.md) / Choice\n\n# Interface: Choice\n\nDefines an option, or choice, within activities such as a\nmultiple choice activity.","ref":"choice.html"},{"type":"extras","title":"Hierarchy - Choice","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesEditor`](SpecifiesEditor.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Choice`**","ref":"choice.html#hierarchy"},{"type":"extras","title":"Table of contents - Choice","doc":"","ref":"choice.html#table-of-contents"},{"type":"extras","title":"Properties - Choice","doc":"- [content](Choice.md#content)\n- [editor](Choice.md#editor)\n- [frequency](Choice.md#frequency)\n- [id](Choice.md#id)\n- [textDirection](Choice.md#textdirection)","ref":"choice.html#properties"},{"type":"extras","title":"Properties - Choice","doc":"","ref":"choice.html#properties"},{"type":"extras","title":"content - Choice","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L118)\n\n___","ref":"choice.html#content"},{"type":"extras","title":"editor - Choice","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Inherited from\n\n[SpecifiesEditor](SpecifiesEditor.md).[editor](SpecifiesEditor.md#editor)\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L364)\n\n___","ref":"choice.html#editor"},{"type":"extras","title":"frequency - Choice","doc":"• `Optional` **frequency**: `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:346](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L346)\n\n___","ref":"choice.html#frequency"},{"type":"extras","title":"id - Choice","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"choice.html#id"},{"type":"extras","title":"textDirection - Choice","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L360)","ref":"choice.html#textdirection"},{"type":"extras","title":"CreationContext","doc":"[oli](../README.md) / [Exports](../modules.md) / CreationContext\n\n# Interface: CreationContext\n\nContext supplied to a creation function.","ref":"creationcontext.html"},{"type":"extras","title":"Hierarchy - CreationContext","doc":"- `ResourceContext`\n\n ↳ **`CreationContext`**","ref":"creationcontext.html#hierarchy"},{"type":"extras","title":"Table of contents - CreationContext","doc":"","ref":"creationcontext.html#table-of-contents"},{"type":"extras","title":"Properties - CreationContext","doc":"- [activityContexts](CreationContext.md#activitycontexts)\n- [allObjectives](CreationContext.md#allobjectives)\n- [allTags](CreationContext.md#alltags)\n- [authorEmail](CreationContext.md#authoremail)\n- [content](CreationContext.md#content)\n- [graded](CreationContext.md#graded)\n- [hasExperiments](CreationContext.md#hasexperiments)\n- [objectives](CreationContext.md#objectives)\n- [optionalContentTypes](CreationContext.md#optionalcontenttypes)\n- [projectSlug](CreationContext.md#projectslug)\n- [resourceId](CreationContext.md#resourceid)\n- [resourceSlug](CreationContext.md#resourceslug)\n- [title](CreationContext.md#title)","ref":"creationcontext.html#properties"},{"type":"extras","title":"Properties - CreationContext","doc":"","ref":"creationcontext.html#properties"},{"type":"extras","title":"activityContexts - CreationContext","doc":"• **activityContexts**: `ActivityEditContext`[]\n\n#### Inherited from\n\nResourceContext.activityContexts\n\n#### Defined in\n\n[src/data/content/resource.ts:173](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L173)\n\n___","ref":"creationcontext.html#activitycontexts"},{"type":"extras","title":"allObjectives - CreationContext","doc":"• **allObjectives**: `Objective`[]\n\n#### Inherited from\n\nResourceContext.allObjectives\n\n#### Defined in\n\n[src/data/content/resource.ts:171](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L171)\n\n___","ref":"creationcontext.html#allobjectives"},{"type":"extras","title":"allTags - CreationContext","doc":"• **allTags**: `Tag`[]\n\n#### Inherited from\n\nResourceContext.allTags\n\n#### Defined in\n\n[src/data/content/resource.ts:172](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L172)\n\n___","ref":"creationcontext.html#alltags"},{"type":"extras","title":"authorEmail - CreationContext","doc":"• **authorEmail**: `string`\n\n#### Inherited from\n\nResourceContext.authorEmail\n\n#### Defined in\n\n[src/data/content/resource.ts:163](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L163)\n\n___","ref":"creationcontext.html#authoremail"},{"type":"extras","title":"content - CreationContext","doc":"• **content**: `PageContent`\n\n#### Inherited from\n\nResourceContext.content\n\n#### Defined in\n\n[src/data/content/resource.ts:169](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L169)\n\n___","ref":"creationcontext.html#content"},{"type":"extras","title":"graded - CreationContext","doc":"• **graded**: `boolean`\n\n#### Inherited from\n\nResourceContext.graded\n\n#### Defined in\n\n[src/data/content/resource.ts:162](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L162)\n\n___","ref":"creationcontext.html#graded"},{"type":"extras","title":"hasExperiments - CreationContext","doc":"• **hasExperiments**: `boolean`\n\n#### Inherited from\n\nResourceContext.hasExperiments\n\n#### Defined in\n\n[src/data/content/resource.ts:167](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L167)\n\n___","ref":"creationcontext.html#hasexperiments"},{"type":"extras","title":"objectives - CreationContext","doc":"• **objectives**: `AttachedObjectives`\n\n#### Inherited from\n\nResourceContext.objectives\n\n#### Defined in\n\n[src/data/content/resource.ts:170](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L170)\n\n___","ref":"creationcontext.html#objectives"},{"type":"extras","title":"optionalContentTypes - CreationContext","doc":"• **optionalContentTypes**: `OptionalContentTypes`\n\n#### Inherited from\n\nResourceContext.optionalContentTypes\n\n#### Defined in\n\n[src/data/content/resource.ts:174](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L174)\n\n___","ref":"creationcontext.html#optionalcontenttypes"},{"type":"extras","title":"projectSlug - CreationContext","doc":"• **projectSlug**: `string`\n\n#### Inherited from\n\nResourceContext.projectSlug\n\n#### Defined in\n\n[src/data/content/resource.ts:164](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L164)\n\n___","ref":"creationcontext.html#projectslug"},{"type":"extras","title":"resourceId - CreationContext","doc":"• **resourceId**: `number`\n\n#### Inherited from\n\nResourceContext.resourceId\n\n#### Defined in\n\n[src/data/content/resource.ts:166](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L166)\n\n___","ref":"creationcontext.html#resourceid"},{"type":"extras","title":"resourceSlug - CreationContext","doc":"• **resourceSlug**: `string`\n\n#### Inherited from\n\nResourceContext.resourceSlug\n\n#### Defined in\n\n[src/data/content/resource.ts:165](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L165)\n\n___","ref":"creationcontext.html#resourceslug"},{"type":"extras","title":"title - CreationContext","doc":"• **title**: `string`\n\n#### Inherited from\n\nResourceContext.title\n\n#### Defined in\n\n[src/data/content/resource.ts:168](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/resource.ts#L168)","ref":"creationcontext.html#title"},{"type":"extras","title":"DeliveryElementProps","doc":"[oli](../README.md) / [Exports](../modules.md) / DeliveryElementProps\n\n# Interface: DeliveryElementProps \n\nDelivery web component properties made available via the\n`render` method.","ref":"deliveryelementprops.html"},{"type":"extras","title":"Type parameters - DeliveryElementProps","doc":"| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](ActivityModelSchema.md) |","ref":"deliveryelementprops.html#type-parameters"},{"type":"extras","title":"Table of contents - DeliveryElementProps","doc":"","ref":"deliveryelementprops.html#table-of-contents"},{"type":"extras","title":"Properties - DeliveryElementProps","doc":"- [context](DeliveryElementProps.md#context)\n- [mode](DeliveryElementProps.md#mode)\n- [model](DeliveryElementProps.md#model)\n- [mountPoint](DeliveryElementProps.md#mountpoint)\n- [state](DeliveryElementProps.md#state)","ref":"deliveryelementprops.html#properties"},{"type":"extras","title":"Methods - DeliveryElementProps","doc":"- [onReadUserState](DeliveryElementProps.md#onreaduserstate)\n- [onRequestHint](DeliveryElementProps.md#onrequesthint)\n- [onResetActivity](DeliveryElementProps.md#onresetactivity)\n- [onResetPart](DeliveryElementProps.md#onresetpart)\n- [onSaveActivity](DeliveryElementProps.md#onsaveactivity)\n- [onSavePart](DeliveryElementProps.md#onsavepart)\n- [onSubmitActivity](DeliveryElementProps.md#onsubmitactivity)\n- [onSubmitEvaluations](DeliveryElementProps.md#onsubmitevaluations)\n- [onSubmitPart](DeliveryElementProps.md#onsubmitpart)\n- [onWriteUserState](DeliveryElementProps.md#onwriteuserstate)","ref":"deliveryelementprops.html#methods"},{"type":"extras","title":"Properties - DeliveryElementProps","doc":"","ref":"deliveryelementprops.html#properties"},{"type":"extras","title":"context - DeliveryElementProps","doc":"• **context**: [`ActivityContext`](ActivityContext.md)\n\nThe larger context that this activity operates within.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:88](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L88)\n\n___","ref":"deliveryelementprops.html#context"},{"type":"extras","title":"mode - DeliveryElementProps","doc":"• **mode**: [`DeliveryMode`](../modules.md#deliverymode)\n\nThe current delivery mode.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:93](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L93)\n\n___","ref":"deliveryelementprops.html#mode"},{"type":"extras","title":"model - DeliveryElementProps","doc":"• **model**: `T`\n\nThe model of the activity, pruned to remove the authoring specific portion.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:78](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L78)\n\n___","ref":"deliveryelementprops.html#model"},{"type":"extras","title":"mountPoint - DeliveryElementProps","doc":"• `Optional` **mountPoint**: `HTMLElement`\n\nThe HTML div element reference created by the abstract component for use in\nrendering by the concrete implementation.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:104](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L104)\n\n___","ref":"deliveryelementprops.html#mountpoint"},{"type":"extras","title":"state - DeliveryElementProps","doc":"• **state**: [`ActivityState`](ActivityState.md)\n\nThe state of the activity and part attempts.\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:83](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L83)","ref":"deliveryelementprops.html#state"},{"type":"extras","title":"Methods - DeliveryElementProps","doc":"","ref":"deliveryelementprops.html#methods"},{"type":"extras","title":"onReadUserState - DeliveryElementProps","doc":"▸ `Optional` **onReadUserState**(`attemptGuid`, `partAttemptGuid`, `payload`): `Promise`<`any`\\>\n\nAllows read access to the user state.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:109](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L109)\n\n___","ref":"deliveryelementprops.html#onreaduserstate"},{"type":"extras","title":"onRequestHint - DeliveryElementProps","doc":"▸ **onRequestHint**(`attemptGuid`, `partAttemptGuid`): `Promise`<[`RequestHintResponse`](RequestHintResponse.md)\\>\n\nRequests a hint for a specific part.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n\n#### Returns\n\n`Promise`<[`RequestHintResponse`](RequestHintResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:137](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L137)\n\n___","ref":"deliveryelementprops.html#onrequesthint"},{"type":"extras","title":"onResetActivity - DeliveryElementProps","doc":"▸ **onResetActivity**(`attemptGuid`): `Promise`<[`ResetActivityResponse`](ResetActivityResponse.md)\\>\n\nResets this activity attempt to create a new attempt.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n\n#### Returns\n\n`Promise`<[`ResetActivityResponse`](ResetActivityResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:132](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L132)\n\n___","ref":"deliveryelementprops.html#onresetactivity"},{"type":"extras","title":"onResetPart - DeliveryElementProps","doc":"▸ **onResetPart**(`attemptGuid`, `partAttemptGuid`): `Promise`<[`PartActivityResponse`](PartActivityResponse.md)\\>\n\nResets the attempt for one part.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n\n#### Returns\n\n`Promise`<[`PartActivityResponse`](PartActivityResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:160](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L160)\n\n___","ref":"deliveryelementprops.html#onresetpart"},{"type":"extras","title":"onSaveActivity - DeliveryElementProps","doc":"▸ **onSaveActivity**(`attemptGuid`, `partResponses`): `Promise`<[`Success`](Success.md)\\>\n\nInitiates saving of the student response for all parts.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partResponses` | [`PartResponse`](../modules.md#partresponse)[] |\n\n#### Returns\n\n`Promise`<[`Success`](Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:119](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L119)\n\n___","ref":"deliveryelementprops.html#onsaveactivity"},{"type":"extras","title":"onSavePart - DeliveryElementProps","doc":"▸ **onSavePart**(`attemptGuid`, `partAttemptGuid`, `response`): `Promise`<[`Success`](Success.md)\\>\n\nSaves the state of a specific part.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `response` | [`StudentResponse`](StudentResponse.md) |\n\n#### Returns\n\n`Promise`<[`Success`](Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:142](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L142)\n\n___","ref":"deliveryelementprops.html#onsavepart"},{"type":"extras","title":"onSubmitActivity - DeliveryElementProps","doc":"▸ **onSubmitActivity**(`attemptGuid`, `partResponses`): `Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\nSubmits all parts of the attempt for evaluation.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partResponses` | [`PartResponse`](../modules.md#partresponse)[] |\n\n#### Returns\n\n`Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:124](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L124)\n\n___","ref":"deliveryelementprops.html#onsubmitactivity"},{"type":"extras","title":"onSubmitEvaluations - DeliveryElementProps","doc":"▸ **onSubmitEvaluations**(`attemptGuid`, `clientEvaluations`): `Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\nSubmits client-side evaluations.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `clientEvaluations` | [`ClientEvaluation`](../modules.md#clientevaluation)[] |\n\n#### Returns\n\n`Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:165](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L165)\n\n___","ref":"deliveryelementprops.html#onsubmitevaluations"},{"type":"extras","title":"onSubmitPart - DeliveryElementProps","doc":"▸ **onSubmitPart**(`attemptGuid`, `partAttemptGuid`, `response`): `Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\nSubmits for evaluation one part.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `response` | [`StudentResponse`](StudentResponse.md) |\n\n#### Returns\n\n`Promise`<[`EvaluationResponse`](EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:151](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L151)\n\n___","ref":"deliveryelementprops.html#onsubmitpart"},{"type":"extras","title":"onWriteUserState - DeliveryElementProps","doc":"▸ `Optional` **onWriteUserState**(`attemptGuid`, `partAttemptGuid`, `payload`): `Promise`<`any`\\>\n\nAllows writing to the user state.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:114](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L114)","ref":"deliveryelementprops.html#onwriteuserstate"},{"type":"extras","title":"EvaluationResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / EvaluationResponse\n\n# Interface: EvaluationResponse\n\nResponse to a submitted activity evaluation.","ref":"evaluationresponse.html"},{"type":"extras","title":"Hierarchy - EvaluationResponse","doc":"- [`Success`](Success.md)\n\n ↳ **`EvaluationResponse`**","ref":"evaluationresponse.html#hierarchy"},{"type":"extras","title":"Table of contents - EvaluationResponse","doc":"","ref":"evaluationresponse.html#table-of-contents"},{"type":"extras","title":"Properties - EvaluationResponse","doc":"- [actions](EvaluationResponse.md#actions)\n- [type](EvaluationResponse.md#type)","ref":"evaluationresponse.html#properties"},{"type":"extras","title":"Properties - EvaluationResponse","doc":"","ref":"evaluationresponse.html#properties"},{"type":"extras","title":"actions - EvaluationResponse","doc":"• **actions**: [`Action`](../modules.md#action)[]\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:20](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L20)\n\n___","ref":"evaluationresponse.html#actions"},{"type":"extras","title":"type - EvaluationResponse","doc":"• **type**: ``\"success\"``\n\n#### Inherited from\n\n[Success](Success.md).[type](Success.md#type)\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L111)","ref":"evaluationresponse.html#type"},{"type":"extras","title":"Explanation","doc":"[oli](../README.md) / [Exports](../modules.md) / Explanation\n\n# Interface: Explanation\n\nDefines explanation entity.","ref":"explanation.html"},{"type":"extras","title":"Hierarchy - Explanation","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Explanation`**","ref":"explanation.html#hierarchy"},{"type":"extras","title":"Table of contents - Explanation","doc":"","ref":"explanation.html#table-of-contents"},{"type":"extras","title":"Properties - Explanation","doc":"- [content](Explanation.md#content)\n- [id](Explanation.md#id)\n- [textDirection](Explanation.md#textdirection)","ref":"explanation.html#properties"},{"type":"extras","title":"Properties - Explanation","doc":"","ref":"explanation.html#properties"},{"type":"extras","title":"content - Explanation","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L118)\n\n___","ref":"explanation.html#content"},{"type":"extras","title":"id - Explanation","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"explanation.html#id"},{"type":"extras","title":"textDirection - Explanation","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L360)","ref":"explanation.html#textdirection"},{"type":"extras","title":"Feedback","doc":"[oli](../README.md) / [Exports](../modules.md) / Feedback\n\n# Interface: Feedback\n\nDefines feedback entity.","ref":"feedback.html"},{"type":"extras","title":"Hierarchy - Feedback","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesEditor`](SpecifiesEditor.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Feedback`**","ref":"feedback.html#hierarchy"},{"type":"extras","title":"Table of contents - Feedback","doc":"","ref":"feedback.html#table-of-contents"},{"type":"extras","title":"Properties - Feedback","doc":"- [content](Feedback.md#content)\n- [editor](Feedback.md#editor)\n- [id](Feedback.md#id)\n- [textDirection](Feedback.md#textdirection)","ref":"feedback.html#properties"},{"type":"extras","title":"Properties - Feedback","doc":"","ref":"feedback.html#properties"},{"type":"extras","title":"content - Feedback","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L118)\n\n___","ref":"feedback.html#content"},{"type":"extras","title":"editor - Feedback","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Inherited from\n\n[SpecifiesEditor](SpecifiesEditor.md).[editor](SpecifiesEditor.md#editor)\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L364)\n\n___","ref":"feedback.html#editor"},{"type":"extras","title":"id - Feedback","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"feedback.html#id"},{"type":"extras","title":"textDirection - Feedback","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L360)","ref":"feedback.html#textdirection"},{"type":"extras","title":"FeedbackAction","doc":"[oli](../README.md) / [Exports](../modules.md) / FeedbackAction\n\n# Interface: FeedbackAction\n\nAn action indicating that feedback should be displayed.","ref":"feedbackaction.html"},{"type":"extras","title":"Hierarchy - FeedbackAction","doc":"- [`IsAction`](IsAction.md)\n\n ↳ **`FeedbackAction`**","ref":"feedbackaction.html#hierarchy"},{"type":"extras","title":"Table of contents - FeedbackAction","doc":"","ref":"feedbackaction.html#table-of-contents"},{"type":"extras","title":"Properties - FeedbackAction","doc":"- [attempt\\_guid](FeedbackAction.md#attempt_guid)\n- [error](FeedbackAction.md#error)\n- [explanation](FeedbackAction.md#explanation)\n- [feedback](FeedbackAction.md#feedback)\n- [out\\_of](FeedbackAction.md#out_of)\n- [part\\_id](FeedbackAction.md#part_id)\n- [score](FeedbackAction.md#score)\n- [show\\_page](FeedbackAction.md#show_page)\n- [type](FeedbackAction.md#type)","ref":"feedbackaction.html#properties"},{"type":"extras","title":"Properties - FeedbackAction","doc":"","ref":"feedbackaction.html#properties"},{"type":"extras","title":"attempt\\_guid - FeedbackAction","doc":"• **attempt\\_guid**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[attempt_guid](IsAction.md#attempt_guid)\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L524)\n\n___","ref":"feedbackaction.html#attempt-_guid"},{"type":"extras","title":"error - FeedbackAction","doc":"• `Optional` **error**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[error](IsAction.md#error)\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L525)\n\n___","ref":"feedbackaction.html#error"},{"type":"extras","title":"explanation - FeedbackAction","doc":"• **explanation**: ``null`` \\| [`Explanation`](Explanation.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:551](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L551)\n\n___","ref":"feedbackaction.html#explanation"},{"type":"extras","title":"feedback - FeedbackAction","doc":"• **feedback**: [`Feedback`](Feedback.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:550](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L550)\n\n___","ref":"feedbackaction.html#feedback"},{"type":"extras","title":"out\\_of - FeedbackAction","doc":"• **out\\_of**: `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:548](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L548)\n\n___","ref":"feedbackaction.html#out-_of"},{"type":"extras","title":"part\\_id - FeedbackAction","doc":"• **part\\_id**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[part_id](IsAction.md#part_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L526)\n\n___","ref":"feedbackaction.html#part-_id"},{"type":"extras","title":"score - FeedbackAction","doc":"• **score**: `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:549](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L549)\n\n___","ref":"feedbackaction.html#score"},{"type":"extras","title":"show\\_page - FeedbackAction","doc":"• **show\\_page**: ``null`` \\| `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:552](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L552)\n\n___","ref":"feedbackaction.html#show-_page"},{"type":"extras","title":"type - FeedbackAction","doc":"• **type**: ``\"FeedbackAction\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:547](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L547)","ref":"feedbackaction.html#type"},{"type":"extras","title":"HasChoices","doc":"[oli](../README.md) / [Exports](../modules.md) / HasChoices\n\n# Interface: HasChoices\n\nMarker interface for an entity that has choices.","ref":"haschoices.html"},{"type":"extras","title":"Table of contents - HasChoices","doc":"","ref":"haschoices.html#table-of-contents"},{"type":"extras","title":"Properties - HasChoices","doc":"- [choices](HasChoices.md#choices)","ref":"haschoices.html#properties"},{"type":"extras","title":"Properties - HasChoices","doc":"","ref":"haschoices.html#properties"},{"type":"extras","title":"choices - HasChoices","doc":"• **choices**: [`Choice`](Choice.md)[]\n\n#### Defined in\n\n[src/components/activities/types.ts:356](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L356)","ref":"haschoices.html#choices"},{"type":"extras","title":"HasContent","doc":"[oli](../README.md) / [Exports](../modules.md) / HasContent\n\n# Interface: HasContent\n\nMarker interface for items that have rich text content.","ref":"hascontent.html"},{"type":"extras","title":"Hierarchy - HasContent","doc":"- **`HasContent`**\n\n ↳ [`Choice`](Choice.md)\n\n ↳ [`Stem`](Stem.md)\n\n ↳ [`Hint`](Hint.md)\n\n ↳ [`Feedback`](Feedback.md)\n\n ↳ [`Explanation`](Explanation.md)","ref":"hascontent.html#hierarchy"},{"type":"extras","title":"Table of contents - HasContent","doc":"","ref":"hascontent.html#table-of-contents"},{"type":"extras","title":"Properties - HasContent","doc":"- [content](HasContent.md#content)","ref":"hascontent.html#properties"},{"type":"extras","title":"Properties - HasContent","doc":"","ref":"hascontent.html#properties"},{"type":"extras","title":"content - HasContent","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L118)","ref":"hascontent.html#content"},{"type":"extras","title":"HasParts","doc":"[oli](../README.md) / [Exports](../modules.md) / HasParts\n\n# Interface: HasParts\n\nMarker interface for an entity that has parts.","ref":"hasparts.html"},{"type":"extras","title":"Table of contents - HasParts","doc":"","ref":"hasparts.html#table-of-contents"},{"type":"extras","title":"Properties - HasParts","doc":"- [authoring](HasParts.md#authoring)","ref":"hasparts.html#properties"},{"type":"extras","title":"Properties - HasParts","doc":"","ref":"hasparts.html#properties"},{"type":"extras","title":"authoring - HasParts","doc":"• **authoring**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `parts` | [`Part`](Part.md)[] |\n\n#### Defined in\n\n[src/components/activities/types.ts:614](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L614)","ref":"hasparts.html#authoring"},{"type":"extras","title":"HasPerPartSubmissionOption","doc":"[oli](../README.md) / [Exports](../modules.md) / HasPerPartSubmissionOption\n\n# Interface: HasPerPartSubmissionOption","ref":"hasperpartsubmissionoption.html"},{"type":"extras","title":"Table of contents - HasPerPartSubmissionOption","doc":"","ref":"hasperpartsubmissionoption.html#table-of-contents"},{"type":"extras","title":"Properties - HasPerPartSubmissionOption","doc":"- [submitPerPart](HasPerPartSubmissionOption.md#submitperpart)","ref":"hasperpartsubmissionoption.html#properties"},{"type":"extras","title":"Properties - HasPerPartSubmissionOption","doc":"","ref":"hasperpartsubmissionoption.html#properties"},{"type":"extras","title":"submitPerPart - HasPerPartSubmissionOption","doc":"• **submitPerPart**: `boolean`\n\n#### Defined in\n\n[src/components/activities/types.ts:435](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L435)","ref":"hasperpartsubmissionoption.html#submitperpart"},{"type":"extras","title":"HasPreviewText","doc":"[oli](../README.md) / [Exports](../modules.md) / HasPreviewText\n\n# Interface: HasPreviewText\n\nMarker interface for an entity that has preview text.","ref":"haspreviewtext.html"},{"type":"extras","title":"Table of contents - HasPreviewText","doc":"","ref":"haspreviewtext.html#table-of-contents"},{"type":"extras","title":"Properties - HasPreviewText","doc":"- [authoring](HasPreviewText.md#authoring)","ref":"haspreviewtext.html#properties"},{"type":"extras","title":"Properties - HasPreviewText","doc":"","ref":"haspreviewtext.html#properties"},{"type":"extras","title":"authoring - HasPreviewText","doc":"• **authoring**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `previewText` | `string` |\n\n#### Defined in\n\n[src/components/activities/types.ts:680](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L680)","ref":"haspreviewtext.html#authoring"},{"type":"extras","title":"HasStem","doc":"[oli](../README.md) / [Exports](../modules.md) / HasStem\n\n# Interface: HasStem\n\nMarker interface for an entity that has a question stem.","ref":"hasstem.html"},{"type":"extras","title":"Hierarchy - HasStem","doc":"- [`ActivityModelSchema`](ActivityModelSchema.md)\n\n ↳ **`HasStem`**","ref":"hasstem.html#hierarchy"},{"type":"extras","title":"Table of contents - HasStem","doc":"","ref":"hasstem.html#table-of-contents"},{"type":"extras","title":"Properties - HasStem","doc":"- [activityType](HasStem.md#activitytype)\n- [activity\\_id](HasStem.md#activity_id)\n- [authoring](HasStem.md#authoring)\n- [bibrefs](HasStem.md#bibrefs)\n- [content](HasStem.md#content)\n- [id](HasStem.md#id)\n- [learningLanguage](HasStem.md#learninglanguage)\n- [resourceId](HasStem.md#resourceid)\n- [stem](HasStem.md#stem)","ref":"hasstem.html#properties"},{"type":"extras","title":"Properties - HasStem","doc":"","ref":"hasstem.html#properties"},{"type":"extras","title":"activityType - HasStem","doc":"• `Optional` **activityType**: `any`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[activityType](ActivityModelSchema.md#activitytype)\n\n#### Defined in\n\n[src/components/activities/types.ts:212](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L212)\n\n___","ref":"hasstem.html#activitytype"},{"type":"extras","title":"activity\\_id - HasStem","doc":"• `Optional` **activity\\_id**: `string`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[activity_id](ActivityModelSchema.md#activity_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:215](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L215)\n\n___","ref":"hasstem.html#activity-_id"},{"type":"extras","title":"authoring - HasStem","doc":"• `Optional` **authoring**: `any`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[authoring](ActivityModelSchema.md#authoring)\n\n#### Defined in\n\n[src/components/activities/types.ts:209](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L209)\n\n___","ref":"hasstem.html#authoring"},{"type":"extras","title":"bibrefs - HasStem","doc":"• `Optional` **bibrefs**: `string`[]\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[bibrefs](ActivityModelSchema.md#bibrefs)\n\n#### Defined in\n\n[src/components/activities/types.ts:214](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L214)\n\n___","ref":"hasstem.html#bibrefs"},{"type":"extras","title":"content - HasStem","doc":"• `Optional` **content**: `any`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[content](ActivityModelSchema.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:211](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L211)\n\n___","ref":"hasstem.html#content"},{"type":"extras","title":"id - HasStem","doc":"• `Optional` **id**: `string`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[id](ActivityModelSchema.md#id)\n\n#### Defined in\n\n[src/components/activities/types.ts:213](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L213)\n\n___","ref":"hasstem.html#id"},{"type":"extras","title":"learningLanguage - HasStem","doc":"• `Optional` **learningLanguage**: `string`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[learningLanguage](ActivityModelSchema.md#learninglanguage)\n\n#### Defined in\n\n[src/components/activities/types.ts:210](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L210)\n\n___","ref":"hasstem.html#learninglanguage"},{"type":"extras","title":"resourceId - HasStem","doc":"• `Optional` **resourceId**: `number`\n\n#### Inherited from\n\n[ActivityModelSchema](ActivityModelSchema.md).[resourceId](ActivityModelSchema.md#resourceid)\n\n#### Defined in\n\n[src/components/activities/types.ts:208](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L208)\n\n___","ref":"hasstem.html#resourceid"},{"type":"extras","title":"stem - HasStem","doc":"• **stem**: [`Stem`](Stem.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:375](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L375)","ref":"hasstem.html#stem"},{"type":"extras","title":"HasTransformations","doc":"[oli](../README.md) / [Exports](../modules.md) / HasTransformations\n\n# Interface: HasTransformations\n\nMarker interface for an entity that has transformations.","ref":"hastransformations.html"},{"type":"extras","title":"Table of contents - HasTransformations","doc":"","ref":"hastransformations.html#table-of-contents"},{"type":"extras","title":"Properties - HasTransformations","doc":"- [authoring](HasTransformations.md#authoring)","ref":"hastransformations.html#properties"},{"type":"extras","title":"Properties - HasTransformations","doc":"","ref":"hastransformations.html#properties"},{"type":"extras","title":"authoring - HasTransformations","doc":"• **authoring**: `Object`\n\n#### Type declaration\n\n| Name | Type |\n| :------ | :------ |\n| `transformations` | [`Transformation`](Transformation.md)[] |\n\n#### Defined in\n\n[src/components/activities/types.ts:429](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L429)","ref":"hastransformations.html#authoring"},{"type":"extras","title":"Hint","doc":"[oli](../README.md) / [Exports](../modules.md) / Hint\n\n# Interface: Hint\n\nDefines a hint.","ref":"hint.html"},{"type":"extras","title":"Hierarchy - Hint","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesEditor`](SpecifiesEditor.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Hint`**","ref":"hint.html#hierarchy"},{"type":"extras","title":"Table of contents - Hint","doc":"","ref":"hint.html#table-of-contents"},{"type":"extras","title":"Properties - Hint","doc":"- [content](Hint.md#content)\n- [editor](Hint.md#editor)\n- [id](Hint.md#id)\n- [textDirection](Hint.md#textdirection)","ref":"hint.html#properties"},{"type":"extras","title":"Properties - Hint","doc":"","ref":"hint.html#properties"},{"type":"extras","title":"content - Hint","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L118)\n\n___","ref":"hint.html#content"},{"type":"extras","title":"editor - Hint","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Inherited from\n\n[SpecifiesEditor](SpecifiesEditor.md).[editor](SpecifiesEditor.md#editor)\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L364)\n\n___","ref":"hint.html#editor"},{"type":"extras","title":"id - Hint","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"hint.html#id"},{"type":"extras","title":"textDirection - Hint","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L360)","ref":"hint.html#textdirection"},{"type":"extras","title":"IsAction","doc":"[oli](../README.md) / [Exports](../modules.md) / IsAction\n\n# Interface: IsAction\n\nMarker interface for an action.","ref":"isaction.html"},{"type":"extras","title":"Hierarchy - IsAction","doc":"- **`IsAction`**\n\n ↳ [`NavigationAction`](NavigationAction.md)\n\n ↳ [`FeedbackAction`](FeedbackAction.md)\n\n ↳ [`StateUpdateAction`](StateUpdateAction.md)\n\n ↳ [`SubmissionAction`](SubmissionAction.md)","ref":"isaction.html#hierarchy"},{"type":"extras","title":"Table of contents - IsAction","doc":"","ref":"isaction.html#table-of-contents"},{"type":"extras","title":"Properties - IsAction","doc":"- [attempt\\_guid](IsAction.md#attempt_guid)\n- [error](IsAction.md#error)\n- [part\\_id](IsAction.md#part_id)","ref":"isaction.html#properties"},{"type":"extras","title":"Properties - IsAction","doc":"","ref":"isaction.html#properties"},{"type":"extras","title":"attempt\\_guid - IsAction","doc":"• **attempt\\_guid**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L524)\n\n___","ref":"isaction.html#attempt-_guid"},{"type":"extras","title":"error - IsAction","doc":"• `Optional` **error**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L525)\n\n___","ref":"isaction.html#error"},{"type":"extras","title":"part\\_id - IsAction","doc":"• **part\\_id**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L526)","ref":"isaction.html#part-_id"},{"type":"extras","title":"NavigationAction","doc":"[oli](../README.md) / [Exports](../modules.md) / NavigationAction\n\n# Interface: NavigationAction\n\nAn action indicating that the current view should navigate\nto another view. Currently not in use.","ref":"navigationaction.html"},{"type":"extras","title":"Hierarchy - NavigationAction","doc":"- [`IsAction`](IsAction.md)\n\n ↳ **`NavigationAction`**","ref":"navigationaction.html#hierarchy"},{"type":"extras","title":"Table of contents - NavigationAction","doc":"","ref":"navigationaction.html#table-of-contents"},{"type":"extras","title":"Properties - NavigationAction","doc":"- [attempt\\_guid](NavigationAction.md#attempt_guid)\n- [error](NavigationAction.md#error)\n- [part\\_id](NavigationAction.md#part_id)\n- [to](NavigationAction.md#to)\n- [type](NavigationAction.md#type)","ref":"navigationaction.html#properties"},{"type":"extras","title":"Properties - NavigationAction","doc":"","ref":"navigationaction.html#properties"},{"type":"extras","title":"attempt\\_guid - NavigationAction","doc":"• **attempt\\_guid**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[attempt_guid](IsAction.md#attempt_guid)\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L524)\n\n___","ref":"navigationaction.html#attempt-_guid"},{"type":"extras","title":"error - NavigationAction","doc":"• `Optional` **error**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[error](IsAction.md#error)\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L525)\n\n___","ref":"navigationaction.html#error"},{"type":"extras","title":"part\\_id - NavigationAction","doc":"• **part\\_id**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[part_id](IsAction.md#part_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L526)\n\n___","ref":"navigationaction.html#part-_id"},{"type":"extras","title":"to - NavigationAction","doc":"• **to**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:540](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L540)\n\n___","ref":"navigationaction.html#to"},{"type":"extras","title":"type - NavigationAction","doc":"• **type**: ``\"NavigationAction\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:539](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L539)","ref":"navigationaction.html#type"},{"type":"extras","title":"Part","doc":"[oli](../README.md) / [Exports](../modules.md) / Part\n\n# Interface: Part\n\nDefines an activity part.","ref":"part.html"},{"type":"extras","title":"Hierarchy - Part","doc":"- `Identifiable`\n\n ↳ **`Part`**","ref":"part.html#hierarchy"},{"type":"extras","title":"Table of contents - Part","doc":"","ref":"part.html#table-of-contents"},{"type":"extras","title":"Properties - Part","doc":"- [explanation](Part.md#explanation)\n- [gradingApproach](Part.md#gradingapproach)\n- [hints](Part.md#hints)\n- [id](Part.md#id)\n- [incorrectScore](Part.md#incorrectscore)\n- [outOf](Part.md#outof)\n- [responses](Part.md#responses)\n- [scoringStrategy](Part.md#scoringstrategy)\n- [targets](Part.md#targets)","ref":"part.html#properties"},{"type":"extras","title":"Properties - Part","doc":"","ref":"part.html#properties"},{"type":"extras","title":"explanation - Part","doc":"• `Optional` **explanation**: [`Feedback`](Feedback.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:578](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L578)\n\n___","ref":"part.html#explanation"},{"type":"extras","title":"gradingApproach - Part","doc":"• `Optional` **gradingApproach**: [`GradingApproach`](../enums/GradingApproach.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:580](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L580)\n\n___","ref":"part.html#gradingapproach"},{"type":"extras","title":"hints - Part","doc":"• **hints**: [`Hint`](Hint.md)[]\n\n#### Defined in\n\n[src/components/activities/types.ts:577](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L577)\n\n___","ref":"part.html#hints"},{"type":"extras","title":"id - Part","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"part.html#id"},{"type":"extras","title":"incorrectScore - Part","doc":"• `Optional` **incorrectScore**: ``null`` \\| `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:582](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L582)\n\n___","ref":"part.html#incorrectscore"},{"type":"extras","title":"outOf - Part","doc":"• `Optional` **outOf**: ``null`` \\| `number`\n\n#### Defined in\n\n[src/components/activities/types.ts:581](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L581)\n\n___","ref":"part.html#outof"},{"type":"extras","title":"responses - Part","doc":"• **responses**: [`Response`](Response.md)[]\n\n#### Defined in\n\n[src/components/activities/types.ts:576](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L576)\n\n___","ref":"part.html#responses"},{"type":"extras","title":"scoringStrategy - Part","doc":"• **scoringStrategy**: [`ScoringStrategy`](../enums/ScoringStrategy.md)\n\n#### Defined in\n\n[src/components/activities/types.ts:579](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L579)\n\n___","ref":"part.html#scoringstrategy"},{"type":"extras","title":"targets - Part","doc":"• `Optional` **targets**: `string`[]\n\n#### Defined in\n\n[src/components/activities/types.ts:583](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L583)","ref":"part.html#targets"},{"type":"extras","title":"PartActivityResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / PartActivityResponse\n\n# Interface: PartActivityResponse\n\nResponse to reset a specific part attempt.","ref":"partactivityresponse.html"},{"type":"extras","title":"Hierarchy - PartActivityResponse","doc":"- [`Success`](Success.md)\n\n ↳ **`PartActivityResponse`**","ref":"partactivityresponse.html#hierarchy"},{"type":"extras","title":"Table of contents - PartActivityResponse","doc":"","ref":"partactivityresponse.html#table-of-contents"},{"type":"extras","title":"Properties - PartActivityResponse","doc":"- [attemptState](PartActivityResponse.md#attemptstate)\n- [type](PartActivityResponse.md#type)","ref":"partactivityresponse.html#properties"},{"type":"extras","title":"Properties - PartActivityResponse","doc":"","ref":"partactivityresponse.html#properties"},{"type":"extras","title":"attemptState - PartActivityResponse","doc":"• **attemptState**: [`PartState`](PartState.md)\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:48](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L48)\n\n___","ref":"partactivityresponse.html#attemptstate"},{"type":"extras","title":"type - PartActivityResponse","doc":"• **type**: ``\"success\"``\n\n#### Inherited from\n\n[Success](Success.md).[type](Success.md#type)\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L111)","ref":"partactivityresponse.html#type"},{"type":"extras","title":"PartState","doc":"[oli](../README.md) / [Exports](../modules.md) / PartState\n\n# Interface: PartState\n\nRepresentation of a student's current state for a specific part of\nan activity.","ref":"partstate.html"},{"type":"extras","title":"Table of contents - PartState","doc":"","ref":"partstate.html#table-of-contents"},{"type":"extras","title":"Properties - PartState","doc":"- [attemptGuid](PartState.md#attemptguid)\n- [attemptNumber](PartState.md#attemptnumber)\n- [dateEvaluated](PartState.md#dateevaluated)\n- [dateSubmitted](PartState.md#datesubmitted)\n- [error](PartState.md#error)\n- [explanation](PartState.md#explanation)\n- [feedback](PartState.md#feedback)\n- [hasMoreAttempts](PartState.md#hasmoreattempts)\n- [hasMoreHints](PartState.md#hasmorehints)\n- [hints](PartState.md#hints)\n- [outOf](PartState.md#outof)\n- [partId](PartState.md#partid)\n- [response](PartState.md#response)\n- [score](PartState.md#score)","ref":"partstate.html#properties"},{"type":"extras","title":"Properties - PartState","doc":"","ref":"partstate.html#properties"},{"type":"extras","title":"attemptGuid - PartState","doc":"• **attemptGuid**: `string`\n\nThe unique identifier of this part attempt.\n\n#### Defined in\n\n[src/components/activities/types.ts:226](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L226)\n\n___","ref":"partstate.html#attemptguid"},{"type":"extras","title":"attemptNumber - PartState","doc":"• **attemptNumber**: `number`\n\nThe number of this attempt.\n\n#### Defined in\n\n[src/components/activities/types.ts:230](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L230)\n\n___","ref":"partstate.html#attemptnumber"},{"type":"extras","title":"dateEvaluated - PartState","doc":"• **dateEvaluated**: ``null`` \\| `Date`\n\nIf this attempt has been evaluated, the date of the evaluation, null\nif this attempt has not been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:235](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L235)\n\n___","ref":"partstate.html#dateevaluated"},{"type":"extras","title":"dateSubmitted - PartState","doc":"• **dateSubmitted**: ``null`` \\| `Date`\n\nThe date that this attempt was submitted, if it has been submitted, null\nif not.\n\n#### Defined in\n\n[src/components/activities/types.ts:241](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L241)\n\n___","ref":"partstate.html#datesubmitted"},{"type":"extras","title":"error - PartState","doc":"• `Optional` **error**: `string`\n\nAny error associated with this attempt.\n\n#### Defined in\n\n[src/components/activities/types.ts:282](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L282)\n\n___","ref":"partstate.html#error"},{"type":"extras","title":"explanation - PartState","doc":"• **explanation**: ``null`` \\| [`Explanation`](Explanation.md)\n\nFeedback received, if this attempt has been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:262](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L262)\n\n___","ref":"partstate.html#explanation"},{"type":"extras","title":"feedback - PartState","doc":"• **feedback**: ``null`` \\| [`Feedback`](Feedback.md)\n\nFeedback received, if this attempt has been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:258](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L258)\n\n___","ref":"partstate.html#feedback"},{"type":"extras","title":"hasMoreAttempts - PartState","doc":"• **hasMoreAttempts**: `boolean`\n\nWhether or not additional attempts exist.\n\n#### Defined in\n\n[src/components/activities/types.ts:274](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L274)\n\n___","ref":"partstate.html#hasmoreattempts"},{"type":"extras","title":"hasMoreHints - PartState","doc":"• **hasMoreHints**: `boolean`\n\nWhether or not additional hints exist.\n\n#### Defined in\n\n[src/components/activities/types.ts:278](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L278)\n\n___","ref":"partstate.html#hasmorehints"},{"type":"extras","title":"hints - PartState","doc":"• **hints**: []\n\nHints that were requested and received by the student.\n\n#### Defined in\n\n[src/components/activities/types.ts:266](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L266)\n\n___","ref":"partstate.html#hints"},{"type":"extras","title":"outOf - PartState","doc":"• **outOf**: ``null`` \\| `number`\n\nMaximum point value that could have been received.\n\n#### Defined in\n\n[src/components/activities/types.ts:250](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L250)\n\n___","ref":"partstate.html#outof"},{"type":"extras","title":"partId - PartState","doc":"• **partId**: `string` \\| `number`\n\nThe id of the part that this attempt pertains to.\n\n#### Defined in\n\n[src/components/activities/types.ts:270](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L270)\n\n___","ref":"partstate.html#partid"},{"type":"extras","title":"response - PartState","doc":"• **response**: `any`\n\nThe student's response.\n\n#### Defined in\n\n[src/components/activities/types.ts:254](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L254)\n\n___","ref":"partstate.html#response"},{"type":"extras","title":"score - PartState","doc":"• **score**: ``null`` \\| `number`\n\nScore received. Null if this attempt has not been evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:246](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L246)","ref":"partstate.html#score"},{"type":"extras","title":"RegistrationResult","doc":"[oli](../README.md) / [Exports](../modules.md) / RegistrationResult\n\n# Interface: RegistrationResult\n\nResult of a successful activity registration.","ref":"registrationresult.html"},{"type":"extras","title":"Table of contents - RegistrationResult","doc":"","ref":"registrationresult.html#table-of-contents"},{"type":"extras","title":"Properties - RegistrationResult","doc":"- [result](RegistrationResult.md#result)","ref":"registrationresult.html#properties"},{"type":"extras","title":"Properties - RegistrationResult","doc":"","ref":"registrationresult.html#properties"},{"type":"extras","title":"result - RegistrationResult","doc":"• **result**: ``\"success\"``\n\n#### Defined in\n\n[src/components/activities/registrar.ts:7](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/registrar.ts#L7)","ref":"registrationresult.html#result"},{"type":"extras","title":"RequestHintResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / RequestHintResponse\n\n# Interface: RequestHintResponse\n\nResponse to a request for an additional hint.\nNotice that the hint attribute here is optional. If a\nclient requests a hint and there are no more, the platform\nwill return an instance of this interface with hasMoreHints set to false\nand the hint attribute missing.","ref":"requesthintresponse.html"},{"type":"extras","title":"Hierarchy - RequestHintResponse","doc":"- [`Success`](Success.md)\n\n ↳ **`RequestHintResponse`**","ref":"requesthintresponse.html#hierarchy"},{"type":"extras","title":"Table of contents - RequestHintResponse","doc":"","ref":"requesthintresponse.html#table-of-contents"},{"type":"extras","title":"Properties - RequestHintResponse","doc":"- [hasMoreHints](RequestHintResponse.md#hasmorehints)\n- [hint](RequestHintResponse.md#hint)\n- [type](RequestHintResponse.md#type)","ref":"requesthintresponse.html#properties"},{"type":"extras","title":"Properties - RequestHintResponse","doc":"","ref":"requesthintresponse.html#properties"},{"type":"extras","title":"hasMoreHints - RequestHintResponse","doc":"• **hasMoreHints**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:32](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L32)\n\n___","ref":"requesthintresponse.html#hasmorehints"},{"type":"extras","title":"hint - RequestHintResponse","doc":"• `Optional` **hint**: [`Hint`](Hint.md)\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:31](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L31)\n\n___","ref":"requesthintresponse.html#hint"},{"type":"extras","title":"type - RequestHintResponse","doc":"• **type**: ``\"success\"``\n\n#### Inherited from\n\n[Success](Success.md).[type](Success.md#type)\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L111)","ref":"requesthintresponse.html#type"},{"type":"extras","title":"ResetActivityResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / ResetActivityResponse\n\n# Interface: ResetActivityResponse\n\nResponse to a request to reset the activity attempt. Resetting\nan activity attempt simply creates a new activity attempt.","ref":"resetactivityresponse.html"},{"type":"extras","title":"Hierarchy - ResetActivityResponse","doc":"- [`Success`](Success.md)\n\n ↳ **`ResetActivityResponse`**","ref":"resetactivityresponse.html#hierarchy"},{"type":"extras","title":"Table of contents - ResetActivityResponse","doc":"","ref":"resetactivityresponse.html#table-of-contents"},{"type":"extras","title":"Properties - ResetActivityResponse","doc":"- [attemptState](ResetActivityResponse.md#attemptstate)\n- [model](ResetActivityResponse.md#model)\n- [type](ResetActivityResponse.md#type)","ref":"resetactivityresponse.html#properties"},{"type":"extras","title":"Properties - ResetActivityResponse","doc":"","ref":"resetactivityresponse.html#properties"},{"type":"extras","title":"attemptState - ResetActivityResponse","doc":"• **attemptState**: [`ActivityState`](ActivityState.md)\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:40](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L40)\n\n___","ref":"resetactivityresponse.html#attemptstate"},{"type":"extras","title":"model - ResetActivityResponse","doc":"• **model**: [`ActivityModelSchema`](ActivityModelSchema.md)\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:41](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L41)\n\n___","ref":"resetactivityresponse.html#model"},{"type":"extras","title":"type - ResetActivityResponse","doc":"• **type**: ``\"success\"``\n\n#### Inherited from\n\n[Success](Success.md).[type](Success.md#type)\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L111)","ref":"resetactivityresponse.html#type"},{"type":"extras","title":"Response","doc":"[oli](../README.md) / [Exports](../modules.md) / Response\n\n# Interface: Response\n\nDefines a response.","ref":"response.html"},{"type":"extras","title":"Hierarchy - Response","doc":"- `Identifiable`\n\n ↳ **`Response`**","ref":"response.html#hierarchy"},{"type":"extras","title":"Table of contents - Response","doc":"","ref":"response.html#table-of-contents"},{"type":"extras","title":"Properties - Response","doc":"- [correct](Response.md#correct)\n- [feedback](Response.md#feedback)\n- [id](Response.md#id)\n- [matchStyle](Response.md#matchstyle)\n- [rule](Response.md#rule)\n- [score](Response.md#score)\n- [showPage](Response.md#showpage)","ref":"response.html#properties"},{"type":"extras","title":"Properties - Response","doc":"","ref":"response.html#properties"},{"type":"extras","title":"correct - Response","doc":"• `Optional` **correct**: `boolean`\n\nIs this response, the default correct response?\n\n#### Defined in\n\n[src/components/activities/types.ts:487](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L487)\n\n___","ref":"response.html#correct"},{"type":"extras","title":"feedback - Response","doc":"• **feedback**: [`Feedback`](Feedback.md)\n\nFeedback to assign if this response matches.\n\n#### Defined in\n\n[src/components/activities/types.ts:482](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L482)\n\n___","ref":"response.html#feedback"},{"type":"extras","title":"id - Response","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"response.html#id"},{"type":"extras","title":"matchStyle - Response","doc":"• `Optional` **matchStyle**: [`MatchStyle`](../modules.md#matchstyle)\n\n#### Defined in\n\n[src/components/activities/types.ts:497](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L497)\n\n___","ref":"response.html#matchstyle"},{"type":"extras","title":"rule - Response","doc":"• **rule**: `string`\n\nRule based match.\n\n#### Defined in\n\n[src/components/activities/types.ts:474](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L474)\n\n___","ref":"response.html#rule"},{"type":"extras","title":"score - Response","doc":"• **score**: `number`\n\nScore to assign if this response matches.\n\n#### Defined in\n\n[src/components/activities/types.ts:478](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L478)\n\n___","ref":"response.html#score"},{"type":"extras","title":"showPage - Response","doc":"• `Optional` **showPage**: `number`\n\nOptional, show a page by index when this response is evaluated.\n\n#### Defined in\n\n[src/components/activities/types.ts:492](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L492)","ref":"response.html#showpage"},{"type":"extras","title":"SectionAuthoringProps","doc":"[oli](../README.md) / [Exports](../modules.md) / SectionAuthoringProps\n\n# Interface: SectionAuthoringProps","ref":"sectionauthoringprops.html"},{"type":"extras","title":"Table of contents - SectionAuthoringProps","doc":"","ref":"sectionauthoringprops.html#table-of-contents"},{"type":"extras","title":"Properties - SectionAuthoringProps","doc":"- [activityId](SectionAuthoringProps.md#activityid)\n- [sectionSlug](SectionAuthoringProps.md#sectionslug)","ref":"sectionauthoringprops.html#properties"},{"type":"extras","title":"Properties - SectionAuthoringProps","doc":"","ref":"sectionauthoringprops.html#properties"},{"type":"extras","title":"activityId - SectionAuthoringProps","doc":"• `Optional` **activityId**: `number`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:7](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L7)\n\n___","ref":"sectionauthoringprops.html#activityid"},{"type":"extras","title":"sectionSlug - SectionAuthoringProps","doc":"• `Optional` **sectionSlug**: `string`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:8](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L8)","ref":"sectionauthoringprops.html#sectionslug"},{"type":"extras","title":"SpecifiesEditor","doc":"[oli](../README.md) / [Exports](../modules.md) / SpecifiesEditor\n\n# Interface: SpecifiesEditor","ref":"specifieseditor.html"},{"type":"extras","title":"Hierarchy - SpecifiesEditor","doc":"- **`SpecifiesEditor`**\n\n ↳ [`Choice`](Choice.md)\n\n ↳ [`Stem`](Stem.md)\n\n ↳ [`Hint`](Hint.md)\n\n ↳ [`Feedback`](Feedback.md)","ref":"specifieseditor.html#hierarchy"},{"type":"extras","title":"Table of contents - SpecifiesEditor","doc":"","ref":"specifieseditor.html#table-of-contents"},{"type":"extras","title":"Properties - SpecifiesEditor","doc":"- [editor](SpecifiesEditor.md#editor)","ref":"specifieseditor.html#properties"},{"type":"extras","title":"Properties - SpecifiesEditor","doc":"","ref":"specifieseditor.html#properties"},{"type":"extras","title":"editor - SpecifiesEditor","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L364)","ref":"specifieseditor.html#editor"},{"type":"extras","title":"SpecifiesTextDirection","doc":"[oli](../README.md) / [Exports](../modules.md) / SpecifiesTextDirection\n\n# Interface: SpecifiesTextDirection","ref":"specifiestextdirection.html"},{"type":"extras","title":"Hierarchy - SpecifiesTextDirection","doc":"- **`SpecifiesTextDirection`**\n\n ↳ [`Choice`](Choice.md)\n\n ↳ [`Stem`](Stem.md)\n\n ↳ [`Hint`](Hint.md)\n\n ↳ [`Feedback`](Feedback.md)\n\n ↳ [`Explanation`](Explanation.md)","ref":"specifiestextdirection.html#hierarchy"},{"type":"extras","title":"Table of contents - SpecifiesTextDirection","doc":"","ref":"specifiestextdirection.html#table-of-contents"},{"type":"extras","title":"Properties - SpecifiesTextDirection","doc":"- [textDirection](SpecifiesTextDirection.md#textdirection)","ref":"specifiestextdirection.html#properties"},{"type":"extras","title":"Properties - SpecifiesTextDirection","doc":"","ref":"specifiestextdirection.html#properties"},{"type":"extras","title":"textDirection - SpecifiesTextDirection","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L360)","ref":"specifiestextdirection.html#textdirection"},{"type":"extras","title":"StateUpdateAction","doc":"[oli](../README.md) / [Exports](../modules.md) / StateUpdateAction\n\n# Interface: StateUpdateAction\n\nAn action indicating that global user state should be updated.\nCurrently not in use.","ref":"stateupdateaction.html"},{"type":"extras","title":"Hierarchy - StateUpdateAction","doc":"- [`IsAction`](IsAction.md)\n\n ↳ **`StateUpdateAction`**","ref":"stateupdateaction.html#hierarchy"},{"type":"extras","title":"Table of contents - StateUpdateAction","doc":"","ref":"stateupdateaction.html#table-of-contents"},{"type":"extras","title":"Properties - StateUpdateAction","doc":"- [attempt\\_guid](StateUpdateAction.md#attempt_guid)\n- [error](StateUpdateAction.md#error)\n- [part\\_id](StateUpdateAction.md#part_id)\n- [type](StateUpdateAction.md#type)\n- [update](StateUpdateAction.md#update)","ref":"stateupdateaction.html#properties"},{"type":"extras","title":"Properties - StateUpdateAction","doc":"","ref":"stateupdateaction.html#properties"},{"type":"extras","title":"attempt\\_guid - StateUpdateAction","doc":"• **attempt\\_guid**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[attempt_guid](IsAction.md#attempt_guid)\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L524)\n\n___","ref":"stateupdateaction.html#attempt-_guid"},{"type":"extras","title":"error - StateUpdateAction","doc":"• `Optional` **error**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[error](IsAction.md#error)\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L525)\n\n___","ref":"stateupdateaction.html#error"},{"type":"extras","title":"part\\_id - StateUpdateAction","doc":"• **part\\_id**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[part_id](IsAction.md#part_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L526)\n\n___","ref":"stateupdateaction.html#part-_id"},{"type":"extras","title":"type - StateUpdateAction","doc":"• **type**: ``\"StateUpdateAction\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:560](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L560)\n\n___","ref":"stateupdateaction.html#type"},{"type":"extras","title":"update - StateUpdateAction","doc":"• **update**: `Object`\n\n#### Defined in\n\n[src/components/activities/types.ts:562](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L562)","ref":"stateupdateaction.html#update"},{"type":"extras","title":"Stem","doc":"[oli](../README.md) / [Exports](../modules.md) / Stem\n\n# Interface: Stem\n\nDefines a question stem.","ref":"stem.html"},{"type":"extras","title":"Hierarchy - Stem","doc":"- `Identifiable`\n\n- [`HasContent`](HasContent.md)\n\n- [`SpecifiesEditor`](SpecifiesEditor.md)\n\n- [`SpecifiesTextDirection`](SpecifiesTextDirection.md)\n\n ↳ **`Stem`**","ref":"stem.html#hierarchy"},{"type":"extras","title":"Table of contents - Stem","doc":"","ref":"stem.html#table-of-contents"},{"type":"extras","title":"Properties - Stem","doc":"- [content](Stem.md#content)\n- [editor](Stem.md#editor)\n- [id](Stem.md#id)\n- [textDirection](Stem.md#textdirection)","ref":"stem.html#properties"},{"type":"extras","title":"Properties - Stem","doc":"","ref":"stem.html#properties"},{"type":"extras","title":"content - Stem","doc":"• **content**: [`RichText`](../modules.md#richtext)\n\n#### Inherited from\n\n[HasContent](HasContent.md).[content](HasContent.md#content)\n\n#### Defined in\n\n[src/components/activities/types.ts:118](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L118)\n\n___","ref":"stem.html#content"},{"type":"extras","title":"editor - Stem","doc":"• `Optional` **editor**: ``\"slate\"`` \\| ``\"markdown\"``\n\n#### Inherited from\n\n[SpecifiesEditor](SpecifiesEditor.md).[editor](SpecifiesEditor.md#editor)\n\n#### Defined in\n\n[src/components/activities/types.ts:364](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L364)\n\n___","ref":"stem.html#editor"},{"type":"extras","title":"id - Stem","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"stem.html#id"},{"type":"extras","title":"textDirection - Stem","doc":"• `Optional` **textDirection**: `TextDirection`\n\n#### Inherited from\n\n[SpecifiesTextDirection](SpecifiesTextDirection.md).[textDirection](SpecifiesTextDirection.md#textdirection)\n\n#### Defined in\n\n[src/components/activities/types.ts:360](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L360)","ref":"stem.html#textdirection"},{"type":"extras","title":"StudentResponse","doc":"[oli](../README.md) / [Exports](../modules.md) / StudentResponse\n\n# Interface: StudentResponse\n\nA student submission for an activity. The `input` attribute can be\nencoded any way that the activity desires, from a simple string to a\ncomplex JSON tree.","ref":"studentresponse.html"},{"type":"extras","title":"Table of contents - StudentResponse","doc":"","ref":"studentresponse.html#table-of-contents"},{"type":"extras","title":"Properties - StudentResponse","doc":"- [files](StudentResponse.md#files)\n- [input](StudentResponse.md#input)","ref":"studentresponse.html#properties"},{"type":"extras","title":"Properties - StudentResponse","doc":"","ref":"studentresponse.html#properties"},{"type":"extras","title":"files - StudentResponse","doc":"• `Optional` **files**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:148](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L148)\n\n___","ref":"studentresponse.html#files"},{"type":"extras","title":"input - StudentResponse","doc":"• **input**: `any`\n\n#### Defined in\n\n[src/components/activities/types.ts:147](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L147)","ref":"studentresponse.html#input"},{"type":"extras","title":"SubmissionAction","doc":"[oli](../README.md) / [Exports](../modules.md) / SubmissionAction\n\n# Interface: SubmissionAction\n\nAn action indicating that the submission was completed.","ref":"submissionaction.html"},{"type":"extras","title":"Hierarchy - SubmissionAction","doc":"- [`IsAction`](IsAction.md)\n\n ↳ **`SubmissionAction`**","ref":"submissionaction.html#hierarchy"},{"type":"extras","title":"Table of contents - SubmissionAction","doc":"","ref":"submissionaction.html#table-of-contents"},{"type":"extras","title":"Properties - SubmissionAction","doc":"- [attempt\\_guid](SubmissionAction.md#attempt_guid)\n- [error](SubmissionAction.md#error)\n- [part\\_id](SubmissionAction.md#part_id)\n- [type](SubmissionAction.md#type)","ref":"submissionaction.html#properties"},{"type":"extras","title":"Properties - SubmissionAction","doc":"","ref":"submissionaction.html#properties"},{"type":"extras","title":"attempt\\_guid - SubmissionAction","doc":"• **attempt\\_guid**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[attempt_guid](IsAction.md#attempt_guid)\n\n#### Defined in\n\n[src/components/activities/types.ts:524](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L524)\n\n___","ref":"submissionaction.html#attempt-_guid"},{"type":"extras","title":"error - SubmissionAction","doc":"• `Optional` **error**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[error](IsAction.md#error)\n\n#### Defined in\n\n[src/components/activities/types.ts:525](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L525)\n\n___","ref":"submissionaction.html#error"},{"type":"extras","title":"part\\_id - SubmissionAction","doc":"• **part\\_id**: `string`\n\n#### Inherited from\n\n[IsAction](IsAction.md).[part_id](IsAction.md#part_id)\n\n#### Defined in\n\n[src/components/activities/types.ts:526](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L526)\n\n___","ref":"submissionaction.html#part-_id"},{"type":"extras","title":"type - SubmissionAction","doc":"• **type**: ``\"SubmissionAction\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:569](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L569)","ref":"submissionaction.html#type"},{"type":"extras","title":"Success","doc":"[oli](../README.md) / [Exports](../modules.md) / Success\n\n# Interface: Success","ref":"success.html"},{"type":"extras","title":"Hierarchy - Success","doc":"- **`Success`**\n\n ↳ [`EvaluationResponse`](EvaluationResponse.md)\n\n ↳ [`RequestHintResponse`](RequestHintResponse.md)\n\n ↳ [`ResetActivityResponse`](ResetActivityResponse.md)\n\n ↳ [`PartActivityResponse`](PartActivityResponse.md)","ref":"success.html#hierarchy"},{"type":"extras","title":"Table of contents - Success","doc":"","ref":"success.html#table-of-contents"},{"type":"extras","title":"Properties - Success","doc":"- [type](Success.md#type)","ref":"success.html#properties"},{"type":"extras","title":"Properties - Success","doc":"","ref":"success.html#properties"},{"type":"extras","title":"type - Success","doc":"• **type**: ``\"success\"``\n\n#### Defined in\n\n[src/components/activities/types.ts:111](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L111)","ref":"success.html#type"},{"type":"extras","title":"Transformation","doc":"[oli](../README.md) / [Exports](../modules.md) / Transformation\n\n# Interface: Transformation\n\nA transformation is a client-specified mutation of the activity\ncontent model that the server will perform during activity\ninstantiation.","ref":"transformation.html"},{"type":"extras","title":"Hierarchy - Transformation","doc":"- `Identifiable`\n\n ↳ **`Transformation`**","ref":"transformation.html#hierarchy"},{"type":"extras","title":"Table of contents - Transformation","doc":"","ref":"transformation.html#table-of-contents"},{"type":"extras","title":"Properties - Transformation","doc":"- [firstAttemptOnly](Transformation.md#firstattemptonly)\n- [id](Transformation.md#id)\n- [operation](Transformation.md#operation)\n- [partId](Transformation.md#partid)\n- [path](Transformation.md#path)","ref":"transformation.html#properties"},{"type":"extras","title":"Properties - Transformation","doc":"","ref":"transformation.html#properties"},{"type":"extras","title":"firstAttemptOnly - Transformation","doc":"• **firstAttemptOnly**: `boolean`\n\n#### Defined in\n\n[src/components/activities/types.ts:422](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L422)\n\n___","ref":"transformation.html#firstattemptonly"},{"type":"extras","title":"id - Transformation","doc":"• **id**: `string`\n\n#### Inherited from\n\nIdentifiable.id\n\n#### Defined in\n\n[src/data/content/model/other.ts:4](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/data/content/model/other.ts#L4)\n\n___","ref":"transformation.html#id"},{"type":"extras","title":"operation - Transformation","doc":"• **operation**: [`shuffle`](../enums/Transform.md#shuffle)\n\n#### Defined in\n\n[src/components/activities/types.ts:421](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L421)\n\n___","ref":"transformation.html#operation"},{"type":"extras","title":"partId - Transformation","doc":"• `Optional` **partId**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:423](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L423)\n\n___","ref":"transformation.html#partid"},{"type":"extras","title":"path - Transformation","doc":"• **path**: `string`\n\n#### Defined in\n\n[src/components/activities/types.ts:420](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L420)","ref":"transformation.html#path"},{"type":"extras","title":"GradingApproach","doc":"[oli](../README.md) / [Exports](../modules.md) / GradingApproach\n\n# Enumeration: GradingApproach\n\nThe types of grading, or scoring, supported for a part.","ref":"gradingapproach.html"},{"type":"extras","title":"Table of contents - GradingApproach","doc":"","ref":"gradingapproach.html#table-of-contents"},{"type":"extras","title":"Enumeration members - GradingApproach","doc":"- [automatic](GradingApproach.md#automatic)\n- [manual](GradingApproach.md#manual)","ref":"gradingapproach.html#enumeration-members"},{"type":"extras","title":"Enumeration members - GradingApproach","doc":"","ref":"gradingapproach.html#enumeration-members"},{"type":"extras","title":"automatic - GradingApproach","doc":"• **automatic** = `\"automatic\"`\n\nPart will be automatically graded by either the client or server.\n\n#### Defined in\n\n[src/components/activities/types.ts:634](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L634)\n\n___","ref":"gradingapproach.html#automatic"},{"type":"extras","title":"manual - GradingApproach","doc":"• **manual** = `\"manual\"`\n\nPart requires manual grading by an instructor.\n\n#### Defined in\n\n[src/components/activities/types.ts:638](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L638)","ref":"gradingapproach.html#manual"},{"type":"extras","title":"ScoringStrategy","doc":"[oli](../README.md) / [Exports](../modules.md) / ScoringStrategy\n\n# Enumeration: ScoringStrategy\n\nStrategy to use in calculating a score across a collection of\neither parts or attempts.","ref":"scoringstrategy.html"},{"type":"extras","title":"Table of contents - ScoringStrategy","doc":"","ref":"scoringstrategy.html#table-of-contents"},{"type":"extras","title":"Enumeration members - ScoringStrategy","doc":"- [average](ScoringStrategy.md#average)\n- [best](ScoringStrategy.md#best)\n- [most\\_recent](ScoringStrategy.md#most_recent)\n- [total](ScoringStrategy.md#total)","ref":"scoringstrategy.html#enumeration-members"},{"type":"extras","title":"Enumeration members - ScoringStrategy","doc":"","ref":"scoringstrategy.html#enumeration-members"},{"type":"extras","title":"average - ScoringStrategy","doc":"• **average** = `\"average\"`\n\n#### Defined in\n\n[src/components/activities/types.ts:646](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L646)\n\n___","ref":"scoringstrategy.html#average"},{"type":"extras","title":"best - ScoringStrategy","doc":"• **best** = `\"best\"`\n\n#### Defined in\n\n[src/components/activities/types.ts:647](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L647)\n\n___","ref":"scoringstrategy.html#best"},{"type":"extras","title":"most\\_recent - ScoringStrategy","doc":"• **most\\_recent** = `\"most_recent\"`\n\n#### Defined in\n\n[src/components/activities/types.ts:648](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L648)\n\n___","ref":"scoringstrategy.html#most-_recent"},{"type":"extras","title":"total - ScoringStrategy","doc":"• **total** = `\"total\"`\n\n#### Defined in\n\n[src/components/activities/types.ts:649](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L649)","ref":"scoringstrategy.html#total"},{"type":"extras","title":"Transform","doc":"[oli](../README.md) / [Exports](../modules.md) / Transform\n\n# Enumeration: Transform\n\nSupported transforms.","ref":"transform.html"},{"type":"extras","title":"Table of contents - Transform","doc":"","ref":"transform.html#table-of-contents"},{"type":"extras","title":"Enumeration members - Transform","doc":"- [shuffle](Transform.md#shuffle)","ref":"transform.html#enumeration-members"},{"type":"extras","title":"Enumeration members - Transform","doc":"","ref":"transform.html#enumeration-members"},{"type":"extras","title":"shuffle - Transform","doc":"• **shuffle** = `\"shuffle\"`\n\nRandomly shuffles a collection of items.\n\n#### Defined in\n\n[src/components/activities/types.ts:659](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/types.ts#L659)","ref":"transform.html#shuffle"},{"type":"extras","title":"AuthoringElement","doc":"[oli](../README.md) / [Exports](../modules.md) / AuthoringElement\n\n# Class: AuthoringElement \n\nAn abstract authoring web component, designed to delegate rendering\nvia the `render` method. This authoring web component will re-render\nwhen the 'model' attribute of the the web component changes. It also traps onEdit\ncallbacks from the concrete implementation and translates these calls into dispatches of the\n'modelUpdated' CustomEvent. It is this CustomEvent that is handled by\nTorus to process updates from the authoring web component.\n\nWhile the delegated implementation is a React component in the case of natively\nimplemented activities, this does not need to be the case. This `AuthoringElement`\nimplementation is tech-stack agnostic. One can use it to implement the authoring\ncomponent of a Torus activity in Vanilla JS, React, Vue, Angular, etc.\n\n```typescript\n// A typical React delegation\nexport class MultipleChoiceAuthoring extends AuthoringElement {\n\n render(mountPoint: HTMLDivElement, props: AuthoringElementProps ) {\n ReactDOM.render(\n \n \n \n \n ,\n mountPoint,\n );\n }\n}\n```","ref":"authoringelement.html"},{"type":"extras","title":"Type parameters - AuthoringElement","doc":"| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](../interfaces/ActivityModelSchema.md) |","ref":"authoringelement.html#type-parameters"},{"type":"extras","title":"Hierarchy - AuthoringElement","doc":"- `HTMLElement`\n\n ↳ **`AuthoringElement`**","ref":"authoringelement.html#hierarchy"},{"type":"extras","title":"Table of contents - AuthoringElement","doc":"","ref":"authoringelement.html#table-of-contents"},{"type":"extras","title":"Constructors - AuthoringElement","doc":"- [constructor](AuthoringElement.md#constructor)","ref":"authoringelement.html#constructors"},{"type":"extras","title":"Properties - AuthoringElement","doc":"- [ATTRIBUTE\\_NODE](AuthoringElement.md#attribute_node)\n- [CDATA\\_SECTION\\_NODE](AuthoringElement.md#cdata_section_node)\n- [COMMENT\\_NODE](AuthoringElement.md#comment_node)\n- [DOCUMENT\\_FRAGMENT\\_NODE](AuthoringElement.md#document_fragment_node)\n- [DOCUMENT\\_NODE](AuthoringElement.md#document_node)\n- [DOCUMENT\\_POSITION\\_CONTAINED\\_BY](AuthoringElement.md#document_position_contained_by)\n- [DOCUMENT\\_POSITION\\_CONTAINS](AuthoringElement.md#document_position_contains)\n- [DOCUMENT\\_POSITION\\_DISCONNECTED](AuthoringElement.md#document_position_disconnected)\n- [DOCUMENT\\_POSITION\\_FOLLOWING](AuthoringElement.md#document_position_following)\n- [DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC](AuthoringElement.md#document_position_implementation_specific)\n- [DOCUMENT\\_POSITION\\_PRECEDING](AuthoringElement.md#document_position_preceding)\n- [DOCUMENT\\_TYPE\\_NODE](AuthoringElement.md#document_type_node)\n- [ELEMENT\\_NODE](AuthoringElement.md#element_node)\n- [ENTITY\\_NODE](AuthoringElement.md#entity_node)\n- [ENTITY\\_REFERENCE\\_NODE](AuthoringElement.md#entity_reference_node)\n- [NOTATION\\_NODE](AuthoringElement.md#notation_node)\n- [PROCESSING\\_INSTRUCTION\\_NODE](AuthoringElement.md#processing_instruction_node)\n- [TEXT\\_NODE](AuthoringElement.md#text_node)\n- [\\_notify](AuthoringElement.md#_notify)\n- [accessKey](AuthoringElement.md#accesskey)\n- [accessKeyLabel](AuthoringElement.md#accesskeylabel)\n- [ariaAtomic](AuthoringElement.md#ariaatomic)\n- [ariaAutoComplete](AuthoringElement.md#ariaautocomplete)\n- [ariaBusy](AuthoringElement.md#ariabusy)\n- [ariaChecked](AuthoringElement.md#ariachecked)\n- [ariaColCount](AuthoringElement.md#ariacolcount)\n- [ariaColIndex](AuthoringElement.md#ariacolindex)\n- [ariaColSpan](AuthoringElement.md#ariacolspan)\n- [ariaCurrent](AuthoringElement.md#ariacurrent)\n- [ariaDisabled](AuthoringElement.md#ariadisabled)\n- [ariaExpanded](AuthoringElement.md#ariaexpanded)\n- [ariaHasPopup](AuthoringElement.md#ariahaspopup)\n- [ariaHidden](AuthoringElement.md#ariahidden)\n- [ariaKeyShortcuts](AuthoringElement.md#ariakeyshortcuts)\n- [ariaLabel](AuthoringElement.md#arialabel)\n- [ariaLevel](AuthoringElement.md#arialevel)\n- [ariaLive](AuthoringElement.md#arialive)\n- [ariaModal](AuthoringElement.md#ariamodal)\n- [ariaMultiLine](AuthoringElement.md#ariamultiline)\n- [ariaMultiSelectable](AuthoringElement.md#ariamultiselectable)\n- [ariaOrientation](AuthoringElement.md#ariaorientation)\n- [ariaPlaceholder](AuthoringElement.md#ariaplaceholder)\n- [ariaPosInSet](AuthoringElement.md#ariaposinset)\n- [ariaPressed](AuthoringElement.md#ariapressed)\n- [ariaReadOnly](AuthoringElement.md#ariareadonly)\n- [ariaRequired](AuthoringElement.md#ariarequired)\n- [ariaRoleDescription](AuthoringElement.md#ariaroledescription)\n- [ariaRowCount](AuthoringElement.md#ariarowcount)\n- [ariaRowIndex](AuthoringElement.md#ariarowindex)\n- [ariaRowSpan](AuthoringElement.md#ariarowspan)\n- [ariaSelected](AuthoringElement.md#ariaselected)\n- [ariaSetSize](AuthoringElement.md#ariasetsize)\n- [ariaSort](AuthoringElement.md#ariasort)\n- [ariaValueMax](AuthoringElement.md#ariavaluemax)\n- [ariaValueMin](AuthoringElement.md#ariavaluemin)\n- [ariaValueNow](AuthoringElement.md#ariavaluenow)\n- [ariaValueText](AuthoringElement.md#ariavaluetext)\n- [assignedSlot](AuthoringElement.md#assignedslot)\n- [attributes](AuthoringElement.md#attributes)\n- [autocapitalize](AuthoringElement.md#autocapitalize)\n- [autofocus](AuthoringElement.md#autofocus)\n- [baseURI](AuthoringElement.md#baseuri)\n- [childElementCount](AuthoringElement.md#childelementcount)\n- [childNodes](AuthoringElement.md#childnodes)\n- [children](AuthoringElement.md#children)\n- [classList](AuthoringElement.md#classlist)\n- [className](AuthoringElement.md#classname)\n- [clientHeight](AuthoringElement.md#clientheight)\n- [clientLeft](AuthoringElement.md#clientleft)\n- [clientTop](AuthoringElement.md#clienttop)\n- [clientWidth](AuthoringElement.md#clientwidth)\n- [connected](AuthoringElement.md#connected)\n- [contentEditable](AuthoringElement.md#contenteditable)\n- [dataset](AuthoringElement.md#dataset)\n- [dir](AuthoringElement.md#dir)\n- [draggable](AuthoringElement.md#draggable)\n- [enterKeyHint](AuthoringElement.md#enterkeyhint)\n- [firstChild](AuthoringElement.md#firstchild)\n- [firstElementChild](AuthoringElement.md#firstelementchild)\n- [hidden](AuthoringElement.md#hidden)\n- [id](AuthoringElement.md#id)\n- [innerHTML](AuthoringElement.md#innerhtml)\n- [innerText](AuthoringElement.md#innertext)\n- [inputMode](AuthoringElement.md#inputmode)\n- [isConnected](AuthoringElement.md#isconnected)\n- [isContentEditable](AuthoringElement.md#iscontenteditable)\n- [lang](AuthoringElement.md#lang)\n- [lastChild](AuthoringElement.md#lastchild)\n- [lastElementChild](AuthoringElement.md#lastelementchild)\n- [localName](AuthoringElement.md#localname)\n- [mountPoint](AuthoringElement.md#mountpoint)\n- [namespaceURI](AuthoringElement.md#namespaceuri)\n- [nextElementSibling](AuthoringElement.md#nextelementsibling)\n- [nextSibling](AuthoringElement.md#nextsibling)\n- [nodeName](AuthoringElement.md#nodename)\n- [nodeType](AuthoringElement.md#nodetype)\n- [nodeValue](AuthoringElement.md#nodevalue)\n- [nonce](AuthoringElement.md#nonce)\n- [offsetHeight](AuthoringElement.md#offsetheight)\n- [offsetLeft](AuthoringElement.md#offsetleft)\n- [offsetParent](AuthoringElement.md#offsetparent)\n- [offsetTop](AuthoringElement.md#offsettop)\n- [offsetWidth](AuthoringElement.md#offsetwidth)\n- [onabort](AuthoringElement.md#onabort)\n- [onanimationcancel](AuthoringElement.md#onanimationcancel)\n- [onanimationend](AuthoringElement.md#onanimationend)\n- [onanimationiteration](AuthoringElement.md#onanimationiteration)\n- [onanimationstart](AuthoringElement.md#onanimationstart)\n- [onauxclick](AuthoringElement.md#onauxclick)\n- [onblur](AuthoringElement.md#onblur)\n- [oncanplay](AuthoringElement.md#oncanplay)\n- [oncanplaythrough](AuthoringElement.md#oncanplaythrough)\n- [onchange](AuthoringElement.md#onchange)\n- [onclick](AuthoringElement.md#onclick)\n- [onclose](AuthoringElement.md#onclose)\n- [oncontextmenu](AuthoringElement.md#oncontextmenu)\n- [oncopy](AuthoringElement.md#oncopy)\n- [oncuechange](AuthoringElement.md#oncuechange)\n- [oncut](AuthoringElement.md#oncut)\n- [ondblclick](AuthoringElement.md#ondblclick)\n- [ondrag](AuthoringElement.md#ondrag)\n- [ondragend](AuthoringElement.md#ondragend)\n- [ondragenter](AuthoringElement.md#ondragenter)\n- [ondragleave](AuthoringElement.md#ondragleave)\n- [ondragover](AuthoringElement.md#ondragover)\n- [ondragstart](AuthoringElement.md#ondragstart)\n- [ondrop](AuthoringElement.md#ondrop)\n- [ondurationchange](AuthoringElement.md#ondurationchange)\n- [onemptied](AuthoringElement.md#onemptied)\n- [onended](AuthoringElement.md#onended)\n- [onerror](AuthoringElement.md#onerror)\n- [onfocus](AuthoringElement.md#onfocus)\n- [onformdata](AuthoringElement.md#onformdata)\n- [onfullscreenchange](AuthoringElement.md#onfullscreenchange)\n- [onfullscreenerror](AuthoringElement.md#onfullscreenerror)\n- [ongotpointercapture](AuthoringElement.md#ongotpointercapture)\n- [oninput](AuthoringElement.md#oninput)\n- [oninvalid](AuthoringElement.md#oninvalid)\n- [onkeydown](AuthoringElement.md#onkeydown)\n- [onkeypress](AuthoringElement.md#onkeypress)\n- [onkeyup](AuthoringElement.md#onkeyup)\n- [onload](AuthoringElement.md#onload)\n- [onloadeddata](AuthoringElement.md#onloadeddata)\n- [onloadedmetadata](AuthoringElement.md#onloadedmetadata)\n- [onloadstart](AuthoringElement.md#onloadstart)\n- [onlostpointercapture](AuthoringElement.md#onlostpointercapture)\n- [onmousedown](AuthoringElement.md#onmousedown)\n- [onmouseenter](AuthoringElement.md#onmouseenter)\n- [onmouseleave](AuthoringElement.md#onmouseleave)\n- [onmousemove](AuthoringElement.md#onmousemove)\n- [onmouseout](AuthoringElement.md#onmouseout)\n- [onmouseover](AuthoringElement.md#onmouseover)\n- [onmouseup](AuthoringElement.md#onmouseup)\n- [onpaste](AuthoringElement.md#onpaste)\n- [onpause](AuthoringElement.md#onpause)\n- [onplay](AuthoringElement.md#onplay)\n- [onplaying](AuthoringElement.md#onplaying)\n- [onpointercancel](AuthoringElement.md#onpointercancel)\n- [onpointerdown](AuthoringElement.md#onpointerdown)\n- [onpointerenter](AuthoringElement.md#onpointerenter)\n- [onpointerleave](AuthoringElement.md#onpointerleave)\n- [onpointermove](AuthoringElement.md#onpointermove)\n- [onpointerout](AuthoringElement.md#onpointerout)\n- [onpointerover](AuthoringElement.md#onpointerover)\n- [onpointerup](AuthoringElement.md#onpointerup)\n- [onprogress](AuthoringElement.md#onprogress)\n- [onratechange](AuthoringElement.md#onratechange)\n- [onreset](AuthoringElement.md#onreset)\n- [onresize](AuthoringElement.md#onresize)\n- [onscroll](AuthoringElement.md#onscroll)\n- [onsecuritypolicyviolation](AuthoringElement.md#onsecuritypolicyviolation)\n- [onseeked](AuthoringElement.md#onseeked)\n- [onseeking](AuthoringElement.md#onseeking)\n- [onselect](AuthoringElement.md#onselect)\n- [onselectionchange](AuthoringElement.md#onselectionchange)\n- [onselectstart](AuthoringElement.md#onselectstart)\n- [onslotchange](AuthoringElement.md#onslotchange)\n- [onstalled](AuthoringElement.md#onstalled)\n- [onsubmit](AuthoringElement.md#onsubmit)\n- [onsuspend](AuthoringElement.md#onsuspend)\n- [ontimeupdate](AuthoringElement.md#ontimeupdate)\n- [ontoggle](AuthoringElement.md#ontoggle)\n- [ontouchcancel](AuthoringElement.md#ontouchcancel)\n- [ontouchend](AuthoringElement.md#ontouchend)\n- [ontouchmove](AuthoringElement.md#ontouchmove)\n- [ontouchstart](AuthoringElement.md#ontouchstart)\n- [ontransitioncancel](AuthoringElement.md#ontransitioncancel)\n- [ontransitionend](AuthoringElement.md#ontransitionend)\n- [ontransitionrun](AuthoringElement.md#ontransitionrun)\n- [ontransitionstart](AuthoringElement.md#ontransitionstart)\n- [onvolumechange](AuthoringElement.md#onvolumechange)\n- [onwaiting](AuthoringElement.md#onwaiting)\n- [onwebkitanimationend](AuthoringElement.md#onwebkitanimationend)\n- [onwebkitanimationiteration](AuthoringElement.md#onwebkitanimationiteration)\n- [onwebkitanimationstart](AuthoringElement.md#onwebkitanimationstart)\n- [onwebkittransitionend](AuthoringElement.md#onwebkittransitionend)\n- [onwheel](AuthoringElement.md#onwheel)\n- [outerHTML](AuthoringElement.md#outerhtml)\n- [outerText](AuthoringElement.md#outertext)\n- [ownerDocument](AuthoringElement.md#ownerdocument)\n- [parentElement](AuthoringElement.md#parentelement)\n- [parentNode](AuthoringElement.md#parentnode)\n- [part](AuthoringElement.md#part)\n- [prefix](AuthoringElement.md#prefix)\n- [previousElementSibling](AuthoringElement.md#previouselementsibling)\n- [previousSibling](AuthoringElement.md#previoussibling)\n- [scrollHeight](AuthoringElement.md#scrollheight)\n- [scrollLeft](AuthoringElement.md#scrollleft)\n- [scrollTop](AuthoringElement.md#scrolltop)\n- [scrollWidth](AuthoringElement.md#scrollwidth)\n- [shadowRoot](AuthoringElement.md#shadowroot)\n- [slot](AuthoringElement.md#slot)\n- [spellcheck](AuthoringElement.md#spellcheck)\n- [style](AuthoringElement.md#style)\n- [tabIndex](AuthoringElement.md#tabindex)\n- [tagName](AuthoringElement.md#tagname)\n- [textContent](AuthoringElement.md#textcontent)\n- [title](AuthoringElement.md#title)\n- [translate](AuthoringElement.md#translate)\n- [observedAttributes](AuthoringElement.md#observedattributes)","ref":"authoringelement.html#properties"},{"type":"extras","title":"Methods - AuthoringElement","doc":"- [addEventListener](AuthoringElement.md#addeventlistener)\n- [after](AuthoringElement.md#after)\n- [animate](AuthoringElement.md#animate)\n- [append](AuthoringElement.md#append)\n- [appendChild](AuthoringElement.md#appendchild)\n- [attachInternals](AuthoringElement.md#attachinternals)\n- [attachShadow](AuthoringElement.md#attachshadow)\n- [attributeChangedCallback](AuthoringElement.md#attributechangedcallback)\n- [before](AuthoringElement.md#before)\n- [blur](AuthoringElement.md#blur)\n- [click](AuthoringElement.md#click)\n- [cloneNode](AuthoringElement.md#clonenode)\n- [closest](AuthoringElement.md#closest)\n- [compareDocumentPosition](AuthoringElement.md#comparedocumentposition)\n- [connectedCallback](AuthoringElement.md#connectedcallback)\n- [contains](AuthoringElement.md#contains)\n- [details](AuthoringElement.md#details)\n- [dispatch](AuthoringElement.md#dispatch)\n- [dispatchEvent](AuthoringElement.md#dispatchevent)\n- [focus](AuthoringElement.md#focus)\n- [getAnimations](AuthoringElement.md#getanimations)\n- [getAttribute](AuthoringElement.md#getattribute)\n- [getAttributeNS](AuthoringElement.md#getattributens)\n- [getAttributeNames](AuthoringElement.md#getattributenames)\n- [getAttributeNode](AuthoringElement.md#getattributenode)\n- [getAttributeNodeNS](AuthoringElement.md#getattributenodens)\n- [getBoundingClientRect](AuthoringElement.md#getboundingclientrect)\n- [getClientRects](AuthoringElement.md#getclientrects)\n- [getElementsByClassName](AuthoringElement.md#getelementsbyclassname)\n- [getElementsByTagName](AuthoringElement.md#getelementsbytagname)\n- [getElementsByTagNameNS](AuthoringElement.md#getelementsbytagnamens)\n- [getRootNode](AuthoringElement.md#getrootnode)\n- [hasAttribute](AuthoringElement.md#hasattribute)\n- [hasAttributeNS](AuthoringElement.md#hasattributens)\n- [hasAttributes](AuthoringElement.md#hasattributes)\n- [hasChildNodes](AuthoringElement.md#haschildnodes)\n- [hasPointerCapture](AuthoringElement.md#haspointercapture)\n- [insertAdjacentElement](AuthoringElement.md#insertadjacentelement)\n- [insertAdjacentHTML](AuthoringElement.md#insertadjacenthtml)\n- [insertAdjacentText](AuthoringElement.md#insertadjacenttext)\n- [insertBefore](AuthoringElement.md#insertbefore)\n- [isDefaultNamespace](AuthoringElement.md#isdefaultnamespace)\n- [isEqualNode](AuthoringElement.md#isequalnode)\n- [isSameNode](AuthoringElement.md#issamenode)\n- [lookupNamespaceURI](AuthoringElement.md#lookupnamespaceuri)\n- [lookupPrefix](AuthoringElement.md#lookupprefix)\n- [matches](AuthoringElement.md#matches)\n- [migrateModelVersion](AuthoringElement.md#migratemodelversion)\n- [normalize](AuthoringElement.md#normalize)\n- [notify](AuthoringElement.md#notify)\n- [prepend](AuthoringElement.md#prepend)\n- [props](AuthoringElement.md#props)\n- [querySelector](AuthoringElement.md#queryselector)\n- [querySelectorAll](AuthoringElement.md#queryselectorall)\n- [releasePointerCapture](AuthoringElement.md#releasepointercapture)\n- [remove](AuthoringElement.md#remove)\n- [removeAttribute](AuthoringElement.md#removeattribute)\n- [removeAttributeNS](AuthoringElement.md#removeattributens)\n- [removeAttributeNode](AuthoringElement.md#removeattributenode)\n- [removeChild](AuthoringElement.md#removechild)\n- [removeEventListener](AuthoringElement.md#removeeventlistener)\n- [render](AuthoringElement.md#render)\n- [replaceChild](AuthoringElement.md#replacechild)\n- [replaceChildren](AuthoringElement.md#replacechildren)\n- [replaceWith](AuthoringElement.md#replacewith)\n- [requestFullscreen](AuthoringElement.md#requestfullscreen)\n- [requestPointerLock](AuthoringElement.md#requestpointerlock)\n- [scroll](AuthoringElement.md#scroll)\n- [scrollBy](AuthoringElement.md#scrollby)\n- [scrollIntoView](AuthoringElement.md#scrollintoview)\n- [scrollTo](AuthoringElement.md#scrollto)\n- [setAttribute](AuthoringElement.md#setattribute)\n- [setAttributeNS](AuthoringElement.md#setattributens)\n- [setAttributeNode](AuthoringElement.md#setattributenode)\n- [setAttributeNodeNS](AuthoringElement.md#setattributenodens)\n- [setPointerCapture](AuthoringElement.md#setpointercapture)\n- [toggleAttribute](AuthoringElement.md#toggleattribute)\n- [webkitMatchesSelector](AuthoringElement.md#webkitmatchesselector)","ref":"authoringelement.html#methods"},{"type":"extras","title":"Constructors - AuthoringElement","doc":"","ref":"authoringelement.html#constructors"},{"type":"extras","title":"constructor - AuthoringElement","doc":"• **new AuthoringElement**<`T`\\>()\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](../interfaces/ActivityModelSchema.md) |\n\n#### Overrides\n\nHTMLElement.constructor\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:59](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L59)","ref":"authoringelement.html#constructor"},{"type":"extras","title":"Properties - AuthoringElement","doc":"","ref":"authoringelement.html#properties"},{"type":"extras","title":"ATTRIBUTE\\_NODE - AuthoringElement","doc":"• `Readonly` **ATTRIBUTE\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ATTRIBUTE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9822\n\n___","ref":"authoringelement.html#attribute-_node"},{"type":"extras","title":"CDATA\\_SECTION\\_NODE - AuthoringElement","doc":"• `Readonly` **CDATA\\_SECTION\\_NODE**: `number`\n\nnode is a CDATASection node.\n\n#### Inherited from\n\nHTMLElement.CDATA\\_SECTION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9824\n\n___","ref":"authoringelement.html#cdata-_section-_node"},{"type":"extras","title":"COMMENT\\_NODE - AuthoringElement","doc":"• `Readonly` **COMMENT\\_NODE**: `number`\n\nnode is a Comment node.\n\n#### Inherited from\n\nHTMLElement.COMMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9826\n\n___","ref":"authoringelement.html#comment-_node"},{"type":"extras","title":"DOCUMENT\\_FRAGMENT\\_NODE - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_FRAGMENT\\_NODE**: `number`\n\nnode is a DocumentFragment node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_FRAGMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9828\n\n___","ref":"authoringelement.html#document-_fragment-_node"},{"type":"extras","title":"DOCUMENT\\_NODE - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_NODE**: `number`\n\nnode is a document.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9830\n\n___","ref":"authoringelement.html#document-_node"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_CONTAINED\\_BY - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_CONTAINED\\_BY**: `number`\n\nSet when other is a descendant of node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_CONTAINED\\_BY\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9832\n\n___","ref":"authoringelement.html#document-_position-_contained-_by"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_CONTAINS - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_CONTAINS**: `number`\n\nSet when other is an ancestor of node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_CONTAINS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9834\n\n___","ref":"authoringelement.html#document-_position-_contains"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_DISCONNECTED - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_DISCONNECTED**: `number`\n\nSet when node and other are not in the same tree.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_DISCONNECTED\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9836\n\n___","ref":"authoringelement.html#document-_position-_disconnected"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_FOLLOWING - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_FOLLOWING**: `number`\n\nSet when other is following node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_FOLLOWING\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9838\n\n___","ref":"authoringelement.html#document-_position-_following"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC**: `number`\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9839\n\n___","ref":"authoringelement.html#document-_position-_implementation-_specific"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_PRECEDING - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_PRECEDING**: `number`\n\nSet when other is preceding node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_PRECEDING\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9841\n\n___","ref":"authoringelement.html#document-_position-_preceding"},{"type":"extras","title":"DOCUMENT\\_TYPE\\_NODE - AuthoringElement","doc":"• `Readonly` **DOCUMENT\\_TYPE\\_NODE**: `number`\n\nnode is a doctype.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_TYPE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9843\n\n___","ref":"authoringelement.html#document-_type-_node"},{"type":"extras","title":"ELEMENT\\_NODE - AuthoringElement","doc":"• `Readonly` **ELEMENT\\_NODE**: `number`\n\nnode is an element.\n\n#### Inherited from\n\nHTMLElement.ELEMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9845\n\n___","ref":"authoringelement.html#element-_node"},{"type":"extras","title":"ENTITY\\_NODE - AuthoringElement","doc":"• `Readonly` **ENTITY\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ENTITY\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9846\n\n___","ref":"authoringelement.html#entity-_node"},{"type":"extras","title":"ENTITY\\_REFERENCE\\_NODE - AuthoringElement","doc":"• `Readonly` **ENTITY\\_REFERENCE\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ENTITY\\_REFERENCE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9847\n\n___","ref":"authoringelement.html#entity-_reference-_node"},{"type":"extras","title":"NOTATION\\_NODE - AuthoringElement","doc":"• `Readonly` **NOTATION\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.NOTATION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9848\n\n___","ref":"authoringelement.html#notation-_node"},{"type":"extras","title":"PROCESSING\\_INSTRUCTION\\_NODE - AuthoringElement","doc":"• `Readonly` **PROCESSING\\_INSTRUCTION\\_NODE**: `number`\n\nnode is a ProcessingInstruction node.\n\n#### Inherited from\n\nHTMLElement.PROCESSING\\_INSTRUCTION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9850\n\n___","ref":"authoringelement.html#processing-_instruction-_node"},{"type":"extras","title":"TEXT\\_NODE - AuthoringElement","doc":"• `Readonly` **TEXT\\_NODE**: `number`\n\nnode is a Text node.\n\n#### Inherited from\n\nHTMLElement.TEXT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9852\n\n___\n\n### \\_notify\n\n• `Protected` **\\_notify**: `EventEmitter`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:57](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L57)\n\n___","ref":"authoringelement.html#text-_node"},{"type":"extras","title":"accessKey - AuthoringElement","doc":"• **accessKey**: `string`\n\n#### Inherited from\n\nHTMLElement.accessKey\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6223\n\n___","ref":"authoringelement.html#accesskey"},{"type":"extras","title":"accessKeyLabel - AuthoringElement","doc":"• `Readonly` **accessKeyLabel**: `string`\n\n#### Inherited from\n\nHTMLElement.accessKeyLabel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6224\n\n___","ref":"authoringelement.html#accesskeylabel"},{"type":"extras","title":"ariaAtomic - AuthoringElement","doc":"• **ariaAtomic**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaAtomic\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1857\n\n___","ref":"authoringelement.html#ariaatomic"},{"type":"extras","title":"ariaAutoComplete - AuthoringElement","doc":"• **ariaAutoComplete**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaAutoComplete\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1858\n\n___","ref":"authoringelement.html#ariaautocomplete"},{"type":"extras","title":"ariaBusy - AuthoringElement","doc":"• **ariaBusy**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaBusy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1859\n\n___","ref":"authoringelement.html#ariabusy"},{"type":"extras","title":"ariaChecked - AuthoringElement","doc":"• **ariaChecked**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaChecked\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1860\n\n___","ref":"authoringelement.html#ariachecked"},{"type":"extras","title":"ariaColCount - AuthoringElement","doc":"• **ariaColCount**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1861\n\n___","ref":"authoringelement.html#ariacolcount"},{"type":"extras","title":"ariaColIndex - AuthoringElement","doc":"• **ariaColIndex**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1862\n\n___","ref":"authoringelement.html#ariacolindex"},{"type":"extras","title":"ariaColSpan - AuthoringElement","doc":"• **ariaColSpan**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColSpan\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1863\n\n___","ref":"authoringelement.html#ariacolspan"},{"type":"extras","title":"ariaCurrent - AuthoringElement","doc":"• **ariaCurrent**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaCurrent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1864\n\n___","ref":"authoringelement.html#ariacurrent"},{"type":"extras","title":"ariaDisabled - AuthoringElement","doc":"• **ariaDisabled**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaDisabled\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1865\n\n___","ref":"authoringelement.html#ariadisabled"},{"type":"extras","title":"ariaExpanded - AuthoringElement","doc":"• **ariaExpanded**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaExpanded\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1866\n\n___","ref":"authoringelement.html#ariaexpanded"},{"type":"extras","title":"ariaHasPopup - AuthoringElement","doc":"• **ariaHasPopup**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaHasPopup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1867\n\n___","ref":"authoringelement.html#ariahaspopup"},{"type":"extras","title":"ariaHidden - AuthoringElement","doc":"• **ariaHidden**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaHidden\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1868\n\n___","ref":"authoringelement.html#ariahidden"},{"type":"extras","title":"ariaKeyShortcuts - AuthoringElement","doc":"• **ariaKeyShortcuts**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaKeyShortcuts\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1869\n\n___","ref":"authoringelement.html#ariakeyshortcuts"},{"type":"extras","title":"ariaLabel - AuthoringElement","doc":"• **ariaLabel**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLabel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1870\n\n___","ref":"authoringelement.html#arialabel"},{"type":"extras","title":"ariaLevel - AuthoringElement","doc":"• **ariaLevel**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLevel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1871\n\n___","ref":"authoringelement.html#arialevel"},{"type":"extras","title":"ariaLive - AuthoringElement","doc":"• **ariaLive**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLive\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1872\n\n___","ref":"authoringelement.html#arialive"},{"type":"extras","title":"ariaModal - AuthoringElement","doc":"• **ariaModal**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaModal\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1873\n\n___","ref":"authoringelement.html#ariamodal"},{"type":"extras","title":"ariaMultiLine - AuthoringElement","doc":"• **ariaMultiLine**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaMultiLine\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1874\n\n___","ref":"authoringelement.html#ariamultiline"},{"type":"extras","title":"ariaMultiSelectable - AuthoringElement","doc":"• **ariaMultiSelectable**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaMultiSelectable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1875\n\n___","ref":"authoringelement.html#ariamultiselectable"},{"type":"extras","title":"ariaOrientation - AuthoringElement","doc":"• **ariaOrientation**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaOrientation\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1876\n\n___","ref":"authoringelement.html#ariaorientation"},{"type":"extras","title":"ariaPlaceholder - AuthoringElement","doc":"• **ariaPlaceholder**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPlaceholder\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1877\n\n___","ref":"authoringelement.html#ariaplaceholder"},{"type":"extras","title":"ariaPosInSet - AuthoringElement","doc":"• **ariaPosInSet**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPosInSet\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1878\n\n___","ref":"authoringelement.html#ariaposinset"},{"type":"extras","title":"ariaPressed - AuthoringElement","doc":"• **ariaPressed**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPressed\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1879\n\n___","ref":"authoringelement.html#ariapressed"},{"type":"extras","title":"ariaReadOnly - AuthoringElement","doc":"• **ariaReadOnly**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaReadOnly\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1880\n\n___","ref":"authoringelement.html#ariareadonly"},{"type":"extras","title":"ariaRequired - AuthoringElement","doc":"• **ariaRequired**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRequired\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1881\n\n___","ref":"authoringelement.html#ariarequired"},{"type":"extras","title":"ariaRoleDescription - AuthoringElement","doc":"• **ariaRoleDescription**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRoleDescription\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1882\n\n___","ref":"authoringelement.html#ariaroledescription"},{"type":"extras","title":"ariaRowCount - AuthoringElement","doc":"• **ariaRowCount**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1883\n\n___","ref":"authoringelement.html#ariarowcount"},{"type":"extras","title":"ariaRowIndex - AuthoringElement","doc":"• **ariaRowIndex**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1884\n\n___","ref":"authoringelement.html#ariarowindex"},{"type":"extras","title":"ariaRowSpan - AuthoringElement","doc":"• **ariaRowSpan**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowSpan\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1885\n\n___","ref":"authoringelement.html#ariarowspan"},{"type":"extras","title":"ariaSelected - AuthoringElement","doc":"• **ariaSelected**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSelected\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1886\n\n___","ref":"authoringelement.html#ariaselected"},{"type":"extras","title":"ariaSetSize - AuthoringElement","doc":"• **ariaSetSize**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSetSize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1887\n\n___","ref":"authoringelement.html#ariasetsize"},{"type":"extras","title":"ariaSort - AuthoringElement","doc":"• **ariaSort**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSort\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1888\n\n___","ref":"authoringelement.html#ariasort"},{"type":"extras","title":"ariaValueMax - AuthoringElement","doc":"• **ariaValueMax**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueMax\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1889\n\n___","ref":"authoringelement.html#ariavaluemax"},{"type":"extras","title":"ariaValueMin - AuthoringElement","doc":"• **ariaValueMin**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueMin\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1890\n\n___","ref":"authoringelement.html#ariavaluemin"},{"type":"extras","title":"ariaValueNow - AuthoringElement","doc":"• **ariaValueNow**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueNow\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1891\n\n___","ref":"authoringelement.html#ariavaluenow"},{"type":"extras","title":"ariaValueText - AuthoringElement","doc":"• **ariaValueText**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1892\n\n___","ref":"authoringelement.html#ariavaluetext"},{"type":"extras","title":"assignedSlot - AuthoringElement","doc":"• `Readonly` **assignedSlot**: ``null`` \\| `HTMLSlotElement`\n\n#### Inherited from\n\nHTMLElement.assignedSlot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:13242\n\n___","ref":"authoringelement.html#assignedslot"},{"type":"extras","title":"attributes - AuthoringElement","doc":"• `Readonly` **attributes**: `NamedNodeMap`\n\n#### Inherited from\n\nHTMLElement.attributes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4768\n\n___","ref":"authoringelement.html#attributes"},{"type":"extras","title":"autocapitalize - AuthoringElement","doc":"• **autocapitalize**: `string`\n\n#### Inherited from\n\nHTMLElement.autocapitalize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6225\n\n___","ref":"authoringelement.html#autocapitalize"},{"type":"extras","title":"autofocus - AuthoringElement","doc":"• **autofocus**: `boolean`\n\n#### Inherited from\n\nHTMLElement.autofocus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7427\n\n___","ref":"authoringelement.html#autofocus"},{"type":"extras","title":"baseURI - AuthoringElement","doc":"• `Readonly` **baseURI**: `string`\n\nReturns node's node document's document base URL.\n\n#### Inherited from\n\nHTMLElement.baseURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9775\n\n___","ref":"authoringelement.html#baseuri"},{"type":"extras","title":"childElementCount - AuthoringElement","doc":"• `Readonly` **childElementCount**: `number`\n\n#### Inherited from\n\nHTMLElement.childElementCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10140\n\n___","ref":"authoringelement.html#childelementcount"},{"type":"extras","title":"childNodes - AuthoringElement","doc":"• `Readonly` **childNodes**: `NodeListOf`<`ChildNode`\\>\n\nReturns the children.\n\n#### Inherited from\n\nHTMLElement.childNodes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9777\n\n___","ref":"authoringelement.html#childnodes"},{"type":"extras","title":"children - AuthoringElement","doc":"• `Readonly` **children**: `HTMLCollection`\n\nReturns the child elements.\n\n#### Inherited from\n\nHTMLElement.children\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10142\n\n___","ref":"authoringelement.html#children"},{"type":"extras","title":"classList - AuthoringElement","doc":"• `Readonly` **classList**: `DOMTokenList`\n\nAllows for manipulation of element's class content attribute as a set of whitespace-separated tokens through a DOMTokenList object.\n\n#### Inherited from\n\nHTMLElement.classList\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4770\n\n___","ref":"authoringelement.html#classlist"},{"type":"extras","title":"className - AuthoringElement","doc":"• **className**: `string`\n\nReturns the value of element's class content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.className\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4772\n\n___","ref":"authoringelement.html#classname"},{"type":"extras","title":"clientHeight - AuthoringElement","doc":"• `Readonly` **clientHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.clientHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4773\n\n___","ref":"authoringelement.html#clientheight"},{"type":"extras","title":"clientLeft - AuthoringElement","doc":"• `Readonly` **clientLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.clientLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4774\n\n___","ref":"authoringelement.html#clientleft"},{"type":"extras","title":"clientTop - AuthoringElement","doc":"• `Readonly` **clientTop**: `number`\n\n#### Inherited from\n\nHTMLElement.clientTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4775\n\n___","ref":"authoringelement.html#clienttop"},{"type":"extras","title":"clientWidth - AuthoringElement","doc":"• `Readonly` **clientWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.clientWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4776\n\n___","ref":"authoringelement.html#clientwidth"},{"type":"extras","title":"connected - AuthoringElement","doc":"• **connected**: `boolean`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:55](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L55)\n\n___","ref":"authoringelement.html#connected"},{"type":"extras","title":"contentEditable - AuthoringElement","doc":"• **contentEditable**: `string`\n\n#### Inherited from\n\nHTMLElement.contentEditable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4887\n\n___","ref":"authoringelement.html#contenteditable"},{"type":"extras","title":"dataset - AuthoringElement","doc":"• `Readonly` **dataset**: `DOMStringMap`\n\n#### Inherited from\n\nHTMLElement.dataset\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7428\n\n___","ref":"authoringelement.html#dataset"},{"type":"extras","title":"dir - AuthoringElement","doc":"• **dir**: `string`\n\n#### Inherited from\n\nHTMLElement.dir\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6226\n\n___","ref":"authoringelement.html#dir"},{"type":"extras","title":"draggable - AuthoringElement","doc":"• **draggable**: `boolean`\n\n#### Inherited from\n\nHTMLElement.draggable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6227\n\n___","ref":"authoringelement.html#draggable"},{"type":"extras","title":"enterKeyHint - AuthoringElement","doc":"• **enterKeyHint**: `string`\n\n#### Inherited from\n\nHTMLElement.enterKeyHint\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4888\n\n___","ref":"authoringelement.html#enterkeyhint"},{"type":"extras","title":"firstChild - AuthoringElement","doc":"• `Readonly` **firstChild**: ``null`` \\| `ChildNode`\n\nReturns the first child.\n\n#### Inherited from\n\nHTMLElement.firstChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9779\n\n___","ref":"authoringelement.html#firstchild"},{"type":"extras","title":"firstElementChild - AuthoringElement","doc":"• `Readonly` **firstElementChild**: ``null`` \\| `Element`\n\nReturns the first child that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.firstElementChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10144\n\n___","ref":"authoringelement.html#firstelementchild"},{"type":"extras","title":"hidden - AuthoringElement","doc":"• **hidden**: `boolean`\n\n#### Inherited from\n\nHTMLElement.hidden\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6228\n\n___","ref":"authoringelement.html#hidden"},{"type":"extras","title":"id - AuthoringElement","doc":"• **id**: `string`\n\nReturns the value of element's id content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.id\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4778\n\n___","ref":"authoringelement.html#id"},{"type":"extras","title":"innerHTML - AuthoringElement","doc":"• **innerHTML**: `string`\n\n#### Inherited from\n\nHTMLElement.innerHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:8777\n\n___","ref":"authoringelement.html#innerhtml"},{"type":"extras","title":"innerText - AuthoringElement","doc":"• **innerText**: `string`\n\n#### Inherited from\n\nHTMLElement.innerText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6229\n\n___","ref":"authoringelement.html#innertext"},{"type":"extras","title":"inputMode - AuthoringElement","doc":"• **inputMode**: `string`\n\n#### Inherited from\n\nHTMLElement.inputMode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4889\n\n___","ref":"authoringelement.html#inputmode"},{"type":"extras","title":"isConnected - AuthoringElement","doc":"• `Readonly` **isConnected**: `boolean`\n\nReturns true if node is connected and false otherwise.\n\n#### Inherited from\n\nHTMLElement.isConnected\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9781\n\n___","ref":"authoringelement.html#isconnected"},{"type":"extras","title":"isContentEditable - AuthoringElement","doc":"• `Readonly` **isContentEditable**: `boolean`\n\n#### Inherited from\n\nHTMLElement.isContentEditable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4890\n\n___","ref":"authoringelement.html#iscontenteditable"},{"type":"extras","title":"lang - AuthoringElement","doc":"• **lang**: `string`\n\n#### Inherited from\n\nHTMLElement.lang\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6230\n\n___","ref":"authoringelement.html#lang"},{"type":"extras","title":"lastChild - AuthoringElement","doc":"• `Readonly` **lastChild**: ``null`` \\| `ChildNode`\n\nReturns the last child.\n\n#### Inherited from\n\nHTMLElement.lastChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9783\n\n___","ref":"authoringelement.html#lastchild"},{"type":"extras","title":"lastElementChild - AuthoringElement","doc":"• `Readonly` **lastElementChild**: ``null`` \\| `Element`\n\nReturns the last child that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.lastElementChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10146\n\n___","ref":"authoringelement.html#lastelementchild"},{"type":"extras","title":"localName - AuthoringElement","doc":"• `Readonly` **localName**: `string`\n\nReturns the local name.\n\n#### Inherited from\n\nHTMLElement.localName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4780\n\n___","ref":"authoringelement.html#localname"},{"type":"extras","title":"mountPoint - AuthoringElement","doc":"• **mountPoint**: `HTMLDivElement`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:54](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L54)\n\n___","ref":"authoringelement.html#mountpoint"},{"type":"extras","title":"namespaceURI - AuthoringElement","doc":"• `Readonly` **namespaceURI**: ``null`` \\| `string`\n\nReturns the namespace.\n\n#### Inherited from\n\nHTMLElement.namespaceURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4782\n\n___","ref":"authoringelement.html#namespaceuri"},{"type":"extras","title":"nextElementSibling - AuthoringElement","doc":"• `Readonly` **nextElementSibling**: ``null`` \\| `Element`\n\nReturns the first following sibling that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.nextElementSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9942\n\n___","ref":"authoringelement.html#nextelementsibling"},{"type":"extras","title":"nextSibling - AuthoringElement","doc":"• `Readonly` **nextSibling**: ``null`` \\| `ChildNode`\n\nReturns the next sibling.\n\n#### Inherited from\n\nHTMLElement.nextSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9785\n\n___","ref":"authoringelement.html#nextsibling"},{"type":"extras","title":"nodeName - AuthoringElement","doc":"• `Readonly` **nodeName**: `string`\n\nReturns a string appropriate for the type of node.\n\n#### Inherited from\n\nHTMLElement.nodeName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9787\n\n___","ref":"authoringelement.html#nodename"},{"type":"extras","title":"nodeType - AuthoringElement","doc":"• `Readonly` **nodeType**: `number`\n\nReturns the type of node.\n\n#### Inherited from\n\nHTMLElement.nodeType\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9789\n\n___","ref":"authoringelement.html#nodetype"},{"type":"extras","title":"nodeValue - AuthoringElement","doc":"• **nodeValue**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.nodeValue\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9790\n\n___","ref":"authoringelement.html#nodevalue"},{"type":"extras","title":"nonce - AuthoringElement","doc":"• `Optional` **nonce**: `string`\n\n#### Inherited from\n\nHTMLElement.nonce\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7429\n\n___","ref":"authoringelement.html#nonce"},{"type":"extras","title":"offsetHeight - AuthoringElement","doc":"• `Readonly` **offsetHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6231\n\n___","ref":"authoringelement.html#offsetheight"},{"type":"extras","title":"offsetLeft - AuthoringElement","doc":"• `Readonly` **offsetLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6232\n\n___","ref":"authoringelement.html#offsetleft"},{"type":"extras","title":"offsetParent - AuthoringElement","doc":"• `Readonly` **offsetParent**: ``null`` \\| `Element`\n\n#### Inherited from\n\nHTMLElement.offsetParent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6233\n\n___","ref":"authoringelement.html#offsetparent"},{"type":"extras","title":"offsetTop - AuthoringElement","doc":"• `Readonly` **offsetTop**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6234\n\n___","ref":"authoringelement.html#offsettop"},{"type":"extras","title":"offsetWidth - AuthoringElement","doc":"• `Readonly` **offsetWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6235\n\n___","ref":"authoringelement.html#offsetwidth"},{"type":"extras","title":"onabort - AuthoringElement","doc":"• **onabort**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `UIEvent`) => `any`\n\nFires when the user aborts the download.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onabort\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5542\n\n___","ref":"authoringelement.html#onabort"},{"type":"extras","title":"onanimationcancel - AuthoringElement","doc":"• **onanimationcancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationcancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5543\n\n___","ref":"authoringelement.html#onanimationcancel"},{"type":"extras","title":"onanimationend - AuthoringElement","doc":"• **onanimationend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5544\n\n___","ref":"authoringelement.html#onanimationend"},{"type":"extras","title":"onanimationiteration - AuthoringElement","doc":"• **onanimationiteration**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationiteration\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5545\n\n___","ref":"authoringelement.html#onanimationiteration"},{"type":"extras","title":"onanimationstart - AuthoringElement","doc":"• **onanimationstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5546\n\n___","ref":"authoringelement.html#onanimationstart"},{"type":"extras","title":"onauxclick - AuthoringElement","doc":"• **onauxclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onauxclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5547\n\n___","ref":"authoringelement.html#onauxclick"},{"type":"extras","title":"onblur - AuthoringElement","doc":"• **onblur**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FocusEvent`) => `any`\n\nFires when the object loses the input focus.\n\n**`param`** The focus event.\n\n#### Inherited from\n\nHTMLElement.onblur\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5552\n\n___","ref":"authoringelement.html#onblur"},{"type":"extras","title":"oncanplay - AuthoringElement","doc":"• **oncanplay**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback is possible, but would require further buffering.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.oncanplay\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5557\n\n___","ref":"authoringelement.html#oncanplay"},{"type":"extras","title":"oncanplaythrough - AuthoringElement","doc":"• **oncanplaythrough**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncanplaythrough\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5558\n\n___","ref":"authoringelement.html#oncanplaythrough"},{"type":"extras","title":"onchange - AuthoringElement","doc":"• **onchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the contents of the object or selection have changed.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5563\n\n___","ref":"authoringelement.html#onchange"},{"type":"extras","title":"onclick - AuthoringElement","doc":"• **onclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the left mouse button on the object\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5568\n\n___","ref":"authoringelement.html#onclick"},{"type":"extras","title":"onclose - AuthoringElement","doc":"• **onclose**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onclose\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5569\n\n___","ref":"authoringelement.html#onclose"},{"type":"extras","title":"oncontextmenu - AuthoringElement","doc":"• **oncontextmenu**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the right mouse button in the client area, opening the context menu.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.oncontextmenu\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5574\n\n___","ref":"authoringelement.html#oncontextmenu"},{"type":"extras","title":"oncopy - AuthoringElement","doc":"• **oncopy**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncopy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4624\n\n___","ref":"authoringelement.html#oncopy"},{"type":"extras","title":"oncuechange - AuthoringElement","doc":"• **oncuechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncuechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5575\n\n___","ref":"authoringelement.html#oncuechange"},{"type":"extras","title":"oncut - AuthoringElement","doc":"• **oncut**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncut\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4625\n\n___","ref":"authoringelement.html#oncut"},{"type":"extras","title":"ondblclick - AuthoringElement","doc":"• **ondblclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user double-clicks the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.ondblclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5580\n\n___","ref":"authoringelement.html#ondblclick"},{"type":"extras","title":"ondrag - AuthoringElement","doc":"• **ondrag**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object continuously during a drag operation.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondrag\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5585\n\n___","ref":"authoringelement.html#ondrag"},{"type":"extras","title":"ondragend - AuthoringElement","doc":"• **ondragend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object when the user releases the mouse at the close of a drag operation.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5590\n\n___","ref":"authoringelement.html#ondragend"},{"type":"extras","title":"ondragenter - AuthoringElement","doc":"• **ondragenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target element when the user drags the object to a valid drop target.\n\n**`param`** The drag event.\n\n#### Inherited from\n\nHTMLElement.ondragenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5595\n\n___","ref":"authoringelement.html#ondragenter"},{"type":"extras","title":"ondragleave - AuthoringElement","doc":"• **ondragleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target object when the user moves the mouse out of a valid drop target during a drag operation.\n\n**`param`** The drag event.\n\n#### Inherited from\n\nHTMLElement.ondragleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5600\n\n___","ref":"authoringelement.html#ondragleave"},{"type":"extras","title":"ondragover - AuthoringElement","doc":"• **ondragover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target element continuously while the user drags the object over a valid drop target.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5605\n\n___","ref":"authoringelement.html#ondragover"},{"type":"extras","title":"ondragstart - AuthoringElement","doc":"• **ondragstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object when the user starts to drag a text selection or selected object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5610\n\n___","ref":"authoringelement.html#ondragstart"},{"type":"extras","title":"ondrop - AuthoringElement","doc":"• **ondrop**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ondrop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5611\n\n___","ref":"authoringelement.html#ondrop"},{"type":"extras","title":"ondurationchange - AuthoringElement","doc":"• **ondurationchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the duration attribute is updated.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondurationchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5616\n\n___","ref":"authoringelement.html#ondurationchange"},{"type":"extras","title":"onemptied - AuthoringElement","doc":"• **onemptied**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the media element is reset to its initial state.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onemptied\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5621\n\n___","ref":"authoringelement.html#onemptied"},{"type":"extras","title":"onended - AuthoringElement","doc":"• **onended**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the end of playback is reached.\n\n**`param`** The event\n\n#### Inherited from\n\nHTMLElement.onended\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5626\n\n___","ref":"authoringelement.html#onended"},{"type":"extras","title":"onerror - AuthoringElement","doc":"• **onerror**: `OnErrorEventHandler`\n\nFires when an error occurs during object loading.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onerror\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5631\n\n___","ref":"authoringelement.html#onerror"},{"type":"extras","title":"onfocus - AuthoringElement","doc":"• **onfocus**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FocusEvent`) => `any`\n\nFires when the object receives focus.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onfocus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5636\n\n___","ref":"authoringelement.html#onfocus"},{"type":"extras","title":"onformdata - AuthoringElement","doc":"• **onformdata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FormDataEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onformdata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5637\n\n___","ref":"authoringelement.html#onformdata"},{"type":"extras","title":"onfullscreenchange - AuthoringElement","doc":"• **onfullscreenchange**: ``null`` \\| (`this`: `Element`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onfullscreenchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4783\n\n___","ref":"authoringelement.html#onfullscreenchange"},{"type":"extras","title":"onfullscreenerror - AuthoringElement","doc":"• **onfullscreenerror**: ``null`` \\| (`this`: `Element`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onfullscreenerror\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4784\n\n___","ref":"authoringelement.html#onfullscreenerror"},{"type":"extras","title":"ongotpointercapture - AuthoringElement","doc":"• **ongotpointercapture**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ongotpointercapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5638\n\n___","ref":"authoringelement.html#ongotpointercapture"},{"type":"extras","title":"oninput - AuthoringElement","doc":"• **oninput**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oninput\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5639\n\n___","ref":"authoringelement.html#oninput"},{"type":"extras","title":"oninvalid - AuthoringElement","doc":"• **oninvalid**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oninvalid\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5640\n\n___","ref":"authoringelement.html#oninvalid"},{"type":"extras","title":"onkeydown - AuthoringElement","doc":"• **onkeydown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user presses a key.\n\n**`param`** The keyboard event\n\n#### Inherited from\n\nHTMLElement.onkeydown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5645\n\n___","ref":"authoringelement.html#onkeydown"},{"type":"extras","title":"onkeypress - AuthoringElement","doc":"• **onkeypress**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user presses an alphanumeric key.\n\n**`param`** The event.\n\n**`deprecated`**\n\n#### Inherited from\n\nHTMLElement.onkeypress\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5651\n\n___","ref":"authoringelement.html#onkeypress"},{"type":"extras","title":"onkeyup - AuthoringElement","doc":"• **onkeyup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user releases a key.\n\n**`param`** The keyboard event\n\n#### Inherited from\n\nHTMLElement.onkeyup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5656\n\n___","ref":"authoringelement.html#onkeyup"},{"type":"extras","title":"onload - AuthoringElement","doc":"• **onload**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires immediately after the browser loads the object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onload\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5661\n\n___","ref":"authoringelement.html#onload"},{"type":"extras","title":"onloadeddata - AuthoringElement","doc":"• **onloadeddata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when media data is loaded at the current playback position.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadeddata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5666\n\n___","ref":"authoringelement.html#onloadeddata"},{"type":"extras","title":"onloadedmetadata - AuthoringElement","doc":"• **onloadedmetadata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the duration and dimensions of the media have been determined.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadedmetadata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5671\n\n___","ref":"authoringelement.html#onloadedmetadata"},{"type":"extras","title":"onloadstart - AuthoringElement","doc":"• **onloadstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when Internet Explorer begins looking for media data.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5676\n\n___","ref":"authoringelement.html#onloadstart"},{"type":"extras","title":"onlostpointercapture - AuthoringElement","doc":"• **onlostpointercapture**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onlostpointercapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5677\n\n___","ref":"authoringelement.html#onlostpointercapture"},{"type":"extras","title":"onmousedown - AuthoringElement","doc":"• **onmousedown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the object with either mouse button.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmousedown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5682\n\n___","ref":"authoringelement.html#onmousedown"},{"type":"extras","title":"onmouseenter - AuthoringElement","doc":"• **onmouseenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onmouseenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5683\n\n___","ref":"authoringelement.html#onmouseenter"},{"type":"extras","title":"onmouseleave - AuthoringElement","doc":"• **onmouseleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onmouseleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5684\n\n___","ref":"authoringelement.html#onmouseleave"},{"type":"extras","title":"onmousemove - AuthoringElement","doc":"• **onmousemove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse over the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmousemove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5689\n\n___","ref":"authoringelement.html#onmousemove"},{"type":"extras","title":"onmouseout - AuthoringElement","doc":"• **onmouseout**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse pointer outside the boundaries of the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseout\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5694\n\n___","ref":"authoringelement.html#onmouseout"},{"type":"extras","title":"onmouseover - AuthoringElement","doc":"• **onmouseover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse pointer into the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5699\n\n___","ref":"authoringelement.html#onmouseover"},{"type":"extras","title":"onmouseup - AuthoringElement","doc":"• **onmouseup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user releases a mouse button while the mouse is over the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5704\n\n___","ref":"authoringelement.html#onmouseup"},{"type":"extras","title":"onpaste - AuthoringElement","doc":"• **onpaste**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpaste\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4626\n\n___","ref":"authoringelement.html#onpaste"},{"type":"extras","title":"onpause - AuthoringElement","doc":"• **onpause**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback is paused.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onpause\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5709\n\n___","ref":"authoringelement.html#onpause"},{"type":"extras","title":"onplay - AuthoringElement","doc":"• **onplay**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the play method is requested.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onplay\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5714\n\n___","ref":"authoringelement.html#onplay"},{"type":"extras","title":"onplaying - AuthoringElement","doc":"• **onplaying**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the audio or video has started playing.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onplaying\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5719\n\n___","ref":"authoringelement.html#onplaying"},{"type":"extras","title":"onpointercancel - AuthoringElement","doc":"• **onpointercancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointercancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5720\n\n___","ref":"authoringelement.html#onpointercancel"},{"type":"extras","title":"onpointerdown - AuthoringElement","doc":"• **onpointerdown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerdown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5721\n\n___","ref":"authoringelement.html#onpointerdown"},{"type":"extras","title":"onpointerenter - AuthoringElement","doc":"• **onpointerenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5722\n\n___","ref":"authoringelement.html#onpointerenter"},{"type":"extras","title":"onpointerleave - AuthoringElement","doc":"• **onpointerleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5723\n\n___","ref":"authoringelement.html#onpointerleave"},{"type":"extras","title":"onpointermove - AuthoringElement","doc":"• **onpointermove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointermove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5724\n\n___","ref":"authoringelement.html#onpointermove"},{"type":"extras","title":"onpointerout - AuthoringElement","doc":"• **onpointerout**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerout\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5725\n\n___","ref":"authoringelement.html#onpointerout"},{"type":"extras","title":"onpointerover - AuthoringElement","doc":"• **onpointerover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5726\n\n___","ref":"authoringelement.html#onpointerover"},{"type":"extras","title":"onpointerup - AuthoringElement","doc":"• **onpointerup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5727\n\n___","ref":"authoringelement.html#onpointerup"},{"type":"extras","title":"onprogress - AuthoringElement","doc":"• **onprogress**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `ProgressEvent`<`EventTarget`\\>) => `any`\n\nOccurs to indicate progress while downloading media data.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onprogress\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5732\n\n___","ref":"authoringelement.html#onprogress"},{"type":"extras","title":"onratechange - AuthoringElement","doc":"• **onratechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the playback rate is increased or decreased.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onratechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5737\n\n___","ref":"authoringelement.html#onratechange"},{"type":"extras","title":"onreset - AuthoringElement","doc":"• **onreset**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the user resets a form.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onreset\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5742\n\n___","ref":"authoringelement.html#onreset"},{"type":"extras","title":"onresize - AuthoringElement","doc":"• **onresize**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `UIEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onresize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5743\n\n___","ref":"authoringelement.html#onresize"},{"type":"extras","title":"onscroll - AuthoringElement","doc":"• **onscroll**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the user repositions the scroll box in the scroll bar on the object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onscroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5748\n\n___","ref":"authoringelement.html#onscroll"},{"type":"extras","title":"onsecuritypolicyviolation - AuthoringElement","doc":"• **onsecuritypolicyviolation**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `SecurityPolicyViolationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onsecuritypolicyviolation\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5749\n\n___","ref":"authoringelement.html#onsecuritypolicyviolation"},{"type":"extras","title":"onseeked - AuthoringElement","doc":"• **onseeked**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the seek operation ends.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onseeked\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5754\n\n___","ref":"authoringelement.html#onseeked"},{"type":"extras","title":"onseeking - AuthoringElement","doc":"• **onseeking**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the current playback position is moved.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onseeking\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5759\n\n___","ref":"authoringelement.html#onseeking"},{"type":"extras","title":"onselect - AuthoringElement","doc":"• **onselect**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the current selection changes.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onselect\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5764\n\n___","ref":"authoringelement.html#onselect"},{"type":"extras","title":"onselectionchange - AuthoringElement","doc":"• **onselectionchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onselectionchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5765\n\n___","ref":"authoringelement.html#onselectionchange"},{"type":"extras","title":"onselectstart - AuthoringElement","doc":"• **onselectstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onselectstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5766\n\n___","ref":"authoringelement.html#onselectstart"},{"type":"extras","title":"onslotchange - AuthoringElement","doc":"• **onslotchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onslotchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5767\n\n___","ref":"authoringelement.html#onslotchange"},{"type":"extras","title":"onstalled - AuthoringElement","doc":"• **onstalled**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the download has stopped.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onstalled\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5772\n\n___","ref":"authoringelement.html#onstalled"},{"type":"extras","title":"onsubmit - AuthoringElement","doc":"• **onsubmit**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `SubmitEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onsubmit\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5773\n\n___","ref":"authoringelement.html#onsubmit"},{"type":"extras","title":"onsuspend - AuthoringElement","doc":"• **onsuspend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs if the load operation has been intentionally halted.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onsuspend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5778\n\n___","ref":"authoringelement.html#onsuspend"},{"type":"extras","title":"ontimeupdate - AuthoringElement","doc":"• **ontimeupdate**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs to indicate the current playback position.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ontimeupdate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5783\n\n___","ref":"authoringelement.html#ontimeupdate"},{"type":"extras","title":"ontoggle - AuthoringElement","doc":"• **ontoggle**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontoggle\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5784\n\n___","ref":"authoringelement.html#ontoggle"},{"type":"extras","title":"ontouchcancel - AuthoringElement","doc":"• `Optional` **ontouchcancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchcancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5785\n\n___","ref":"authoringelement.html#ontouchcancel"},{"type":"extras","title":"ontouchend - AuthoringElement","doc":"• `Optional` **ontouchend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5786\n\n___","ref":"authoringelement.html#ontouchend"},{"type":"extras","title":"ontouchmove - AuthoringElement","doc":"• `Optional` **ontouchmove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchmove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5787\n\n___","ref":"authoringelement.html#ontouchmove"},{"type":"extras","title":"ontouchstart - AuthoringElement","doc":"• `Optional` **ontouchstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5788\n\n___","ref":"authoringelement.html#ontouchstart"},{"type":"extras","title":"ontransitioncancel - AuthoringElement","doc":"• **ontransitioncancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitioncancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5789\n\n___","ref":"authoringelement.html#ontransitioncancel"},{"type":"extras","title":"ontransitionend - AuthoringElement","doc":"• **ontransitionend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5790\n\n___","ref":"authoringelement.html#ontransitionend"},{"type":"extras","title":"ontransitionrun - AuthoringElement","doc":"• **ontransitionrun**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionrun\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5791\n\n___","ref":"authoringelement.html#ontransitionrun"},{"type":"extras","title":"ontransitionstart - AuthoringElement","doc":"• **ontransitionstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5792\n\n___","ref":"authoringelement.html#ontransitionstart"},{"type":"extras","title":"onvolumechange - AuthoringElement","doc":"• **onvolumechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the volume is changed, or playback is muted or unmuted.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onvolumechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5797\n\n___","ref":"authoringelement.html#onvolumechange"},{"type":"extras","title":"onwaiting - AuthoringElement","doc":"• **onwaiting**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback stops because the next frame of a video resource is not available.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onwaiting\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5802\n\n___","ref":"authoringelement.html#onwaiting"},{"type":"extras","title":"onwebkitanimationend - AuthoringElement","doc":"• **onwebkitanimationend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationend`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5804\n\n___","ref":"authoringelement.html#onwebkitanimationend"},{"type":"extras","title":"onwebkitanimationiteration - AuthoringElement","doc":"• **onwebkitanimationiteration**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationiteration`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationiteration\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5806\n\n___","ref":"authoringelement.html#onwebkitanimationiteration"},{"type":"extras","title":"onwebkitanimationstart - AuthoringElement","doc":"• **onwebkitanimationstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationstart`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5808\n\n___","ref":"authoringelement.html#onwebkitanimationstart"},{"type":"extras","title":"onwebkittransitionend - AuthoringElement","doc":"• **onwebkittransitionend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `ontransitionend`.\n\n#### Inherited from\n\nHTMLElement.onwebkittransitionend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5810\n\n___","ref":"authoringelement.html#onwebkittransitionend"},{"type":"extras","title":"onwheel - AuthoringElement","doc":"• **onwheel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `WheelEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onwheel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5811\n\n___","ref":"authoringelement.html#onwheel"},{"type":"extras","title":"outerHTML - AuthoringElement","doc":"• **outerHTML**: `string`\n\n#### Inherited from\n\nHTMLElement.outerHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4785\n\n___","ref":"authoringelement.html#outerhtml"},{"type":"extras","title":"outerText - AuthoringElement","doc":"• **outerText**: `string`\n\n#### Inherited from\n\nHTMLElement.outerText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6236\n\n___","ref":"authoringelement.html#outertext"},{"type":"extras","title":"ownerDocument - AuthoringElement","doc":"• `Readonly` **ownerDocument**: `Document`\n\n#### Inherited from\n\nHTMLElement.ownerDocument\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4786\n\n___","ref":"authoringelement.html#ownerdocument"},{"type":"extras","title":"parentElement - AuthoringElement","doc":"• `Readonly` **parentElement**: ``null`` \\| `HTMLElement`\n\nReturns the parent element.\n\n#### Inherited from\n\nHTMLElement.parentElement\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9794\n\n___","ref":"authoringelement.html#parentelement"},{"type":"extras","title":"parentNode - AuthoringElement","doc":"• `Readonly` **parentNode**: ``null`` \\| `ParentNode`\n\nReturns the parent.\n\n#### Inherited from\n\nHTMLElement.parentNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9796\n\n___","ref":"authoringelement.html#parentnode"},{"type":"extras","title":"part - AuthoringElement","doc":"• `Readonly` **part**: `DOMTokenList`\n\n#### Inherited from\n\nHTMLElement.part\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4787\n\n___","ref":"authoringelement.html#part"},{"type":"extras","title":"prefix - AuthoringElement","doc":"• `Readonly` **prefix**: ``null`` \\| `string`\n\nReturns the namespace prefix.\n\n#### Inherited from\n\nHTMLElement.prefix\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4789\n\n___","ref":"authoringelement.html#prefix"},{"type":"extras","title":"previousElementSibling - AuthoringElement","doc":"• `Readonly` **previousElementSibling**: ``null`` \\| `Element`\n\nReturns the first preceding sibling that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.previousElementSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9944\n\n___","ref":"authoringelement.html#previouselementsibling"},{"type":"extras","title":"previousSibling - AuthoringElement","doc":"• `Readonly` **previousSibling**: ``null`` \\| `ChildNode`\n\nReturns the previous sibling.\n\n#### Inherited from\n\nHTMLElement.previousSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9798\n\n___","ref":"authoringelement.html#previoussibling"},{"type":"extras","title":"scrollHeight - AuthoringElement","doc":"• `Readonly` **scrollHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4790\n\n___","ref":"authoringelement.html#scrollheight"},{"type":"extras","title":"scrollLeft - AuthoringElement","doc":"• **scrollLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4791\n\n___","ref":"authoringelement.html#scrollleft"},{"type":"extras","title":"scrollTop - AuthoringElement","doc":"• **scrollTop**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4792\n\n___","ref":"authoringelement.html#scrolltop"},{"type":"extras","title":"scrollWidth - AuthoringElement","doc":"• `Readonly` **scrollWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4793\n\n___","ref":"authoringelement.html#scrollwidth"},{"type":"extras","title":"shadowRoot - AuthoringElement","doc":"• `Readonly` **shadowRoot**: ``null`` \\| `ShadowRoot`\n\nReturns element's shadow root, if any, and if shadow root's mode is \"open\", and null otherwise.\n\n#### Inherited from\n\nHTMLElement.shadowRoot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4795\n\n___","ref":"authoringelement.html#shadowroot"},{"type":"extras","title":"slot - AuthoringElement","doc":"• **slot**: `string`\n\nReturns the value of element's slot content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.slot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4797\n\n___","ref":"authoringelement.html#slot"},{"type":"extras","title":"spellcheck - AuthoringElement","doc":"• **spellcheck**: `boolean`\n\n#### Inherited from\n\nHTMLElement.spellcheck\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6237\n\n___","ref":"authoringelement.html#spellcheck"},{"type":"extras","title":"style - AuthoringElement","doc":"• `Readonly` **style**: `CSSStyleDeclaration`\n\n#### Inherited from\n\nHTMLElement.style\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4883\n\n___","ref":"authoringelement.html#style"},{"type":"extras","title":"tabIndex - AuthoringElement","doc":"• **tabIndex**: `number`\n\n#### Inherited from\n\nHTMLElement.tabIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7430\n\n___","ref":"authoringelement.html#tabindex"},{"type":"extras","title":"tagName - AuthoringElement","doc":"• `Readonly` **tagName**: `string`\n\nReturns the HTML-uppercased qualified name.\n\n#### Inherited from\n\nHTMLElement.tagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4799\n\n___","ref":"authoringelement.html#tagname"},{"type":"extras","title":"textContent - AuthoringElement","doc":"• **textContent**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.textContent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9799\n\n___","ref":"authoringelement.html#textcontent"},{"type":"extras","title":"title - AuthoringElement","doc":"• **title**: `string`\n\n#### Inherited from\n\nHTMLElement.title\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6238\n\n___","ref":"authoringelement.html#title"},{"type":"extras","title":"translate - AuthoringElement","doc":"• **translate**: `boolean`\n\n#### Inherited from\n\nHTMLElement.translate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6239\n\n___","ref":"authoringelement.html#translate"},{"type":"extras","title":"observedAttributes - AuthoringElement","doc":"▪ `Static` **observedAttributes**: `string`[]\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:182](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L182)","ref":"authoringelement.html#observedattributes"},{"type":"extras","title":"Methods - AuthoringElement","doc":"","ref":"authoringelement.html#methods"},{"type":"extras","title":"addEventListener - AuthoringElement","doc":"▸ **addEventListener**<`K`\\>(`type`, `listener`, `options?`): `void`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementEventMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `K` |\n| `listener` | (`this`: `HTMLElement`, `ev`: `HTMLElementEventMap`[`K`]) => `any` |\n| `options?` | `boolean` \\| `AddEventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.addEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6242\n\n▸ **addEventListener**(`type`, `listener`, `options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `string` |\n| `listener` | `EventListenerOrEventListenerObject` |\n| `options?` | `boolean` \\| `AddEventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.addEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6243\n\n___","ref":"authoringelement.html#addeventlistener"},{"type":"extras","title":"after - AuthoringElement","doc":"▸ **after**(...`nodes`): `void`\n\nInserts nodes just after node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.after\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3497\n\n___","ref":"authoringelement.html#after"},{"type":"extras","title":"animate - AuthoringElement","doc":"▸ **animate**(`keyframes`, `options?`): `Animation`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `keyframes` | ``null`` \\| `Keyframe`[] \\| `PropertyIndexedKeyframes` |\n| `options?` | `number` \\| `KeyframeAnimationOptions` |\n\n#### Returns\n\n`Animation`\n\n#### Inherited from\n\nHTMLElement.animate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1978\n\n___","ref":"authoringelement.html#animate"},{"type":"extras","title":"append - AuthoringElement","doc":"▸ **append**(...`nodes`): `void`\n\nInserts nodes after the last child of node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.append\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10152\n\n___","ref":"authoringelement.html#append"},{"type":"extras","title":"appendChild - AuthoringElement","doc":"▸ **appendChild**<`T`\\>(`node`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.appendChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9800\n\n___","ref":"authoringelement.html#appendchild"},{"type":"extras","title":"attachInternals - AuthoringElement","doc":"▸ **attachInternals**(): `ElementInternals`\n\n#### Returns\n\n`ElementInternals`\n\n#### Inherited from\n\nHTMLElement.attachInternals\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6240\n\n___","ref":"authoringelement.html#attachinternals"},{"type":"extras","title":"attachShadow - AuthoringElement","doc":"▸ **attachShadow**(`init`): `ShadowRoot`\n\nCreates a shadow root for element and returns it.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `init` | `ShadowRootInit` |\n\n#### Returns\n\n`ShadowRoot`\n\n#### Inherited from\n\nHTMLElement.attachShadow\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4801\n\n___","ref":"authoringelement.html#attachshadow"},{"type":"extras","title":"attributeChangedCallback - AuthoringElement","doc":"▸ **attributeChangedCallback**(`_name`, `_oldValue`, `_newValue`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `_name` | `any` |\n| `_oldValue` | `any` |\n| `_newValue` | `any` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:175](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L175)\n\n___","ref":"authoringelement.html#attributechangedcallback"},{"type":"extras","title":"before - AuthoringElement","doc":"▸ **before**(...`nodes`): `void`\n\nInserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.before\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3503\n\n___","ref":"authoringelement.html#before"},{"type":"extras","title":"blur - AuthoringElement","doc":"▸ **blur**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.blur\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7431\n\n___","ref":"authoringelement.html#blur"},{"type":"extras","title":"click - AuthoringElement","doc":"▸ **click**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.click\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6241\n\n___","ref":"authoringelement.html#click"},{"type":"extras","title":"cloneNode - AuthoringElement","doc":"▸ **cloneNode**(`deep?`): `Node`\n\nReturns a copy of node. If deep is true, the copy also includes the node's descendants.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `deep?` | `boolean` |\n\n#### Returns\n\n`Node`\n\n#### Inherited from\n\nHTMLElement.cloneNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9802\n\n___","ref":"authoringelement.html#clonenode"},{"type":"extras","title":"closest - AuthoringElement","doc":"▸ **closest**<`K`\\>(`selector`): ``null`` \\| `HTMLElementTagNameMap`[`K`]\n\nReturns the first (starting at element) inclusive ancestor that matches selectors, and null otherwise.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selector` | `K` |\n\n#### Returns\n\n``null`` \\| `HTMLElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4803\n\n▸ **closest**<`K`\\>(`selector`): ``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selector` | `K` |\n\n#### Returns\n\n``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4804\n\n▸ **closest**<`E`\\>(`selectors`): ``null`` \\| `E`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n``null`` \\| `E`\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4805\n\n___","ref":"authoringelement.html#closest"},{"type":"extras","title":"compareDocumentPosition - AuthoringElement","doc":"▸ **compareDocumentPosition**(`other`): `number`\n\nReturns a bitmask indicating the position of other relative to node.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `other` | `Node` |\n\n#### Returns\n\n`number`\n\n#### Inherited from\n\nHTMLElement.compareDocumentPosition\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9804\n\n___","ref":"authoringelement.html#comparedocumentposition"},{"type":"extras","title":"connectedCallback - AuthoringElement","doc":"▸ **connectedCallback**(): `void`\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:169](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L169)\n\n___","ref":"authoringelement.html#connectedcallback"},{"type":"extras","title":"contains - AuthoringElement","doc":"▸ **contains**(`other`): `boolean`\n\nReturns true if other is an inclusive descendant of node, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `other` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.contains\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9806\n\n___","ref":"authoringelement.html#contains"},{"type":"extras","title":"details - AuthoringElement","doc":"▸ **details**(`continuation`, `payload?`): `Object`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `continuation` | (`result`: `any`, `error`: `any`) => `void` |\n| `payload?` | `any` |\n\n#### Returns\n\n`Object`\n\n| Name | Type |\n| :------ | :------ |\n| `bubbles` | `boolean` |\n| `composed` | `boolean` |\n| `detail` | { `continuation`: (`result`: `any`, `error`: `any`) => `void` ; `payload`: `any` ; `props`: [`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> & [`SectionAuthoringProps`](../interfaces/SectionAuthoringProps.md) } |\n| `detail.continuation` | (`result`: `any`, `error`: `any`) => `void` |\n| `detail.payload` | `any` |\n| `detail.props` | [`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> & [`SectionAuthoringProps`](../interfaces/SectionAuthoringProps.md) |\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:129](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L129)\n\n___","ref":"authoringelement.html#details"},{"type":"extras","title":"dispatch - AuthoringElement","doc":"▸ **dispatch**(`name`, `payload?`): `Promise`<`any`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `name` | `string` |\n| `payload?` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:141](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L141)\n\n___","ref":"authoringelement.html#dispatch"},{"type":"extras","title":"dispatchEvent - AuthoringElement","doc":"▸ **dispatchEvent**(`event`): `boolean`\n\nDispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `event` | `Event` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.dispatchEvent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5033\n\n___","ref":"authoringelement.html#dispatchevent"},{"type":"extras","title":"focus - AuthoringElement","doc":"▸ **focus**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `FocusOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.focus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7432\n\n___","ref":"authoringelement.html#focus"},{"type":"extras","title":"getAnimations - AuthoringElement","doc":"▸ **getAnimations**(`options?`): `Animation`[]\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `GetAnimationsOptions` |\n\n#### Returns\n\n`Animation`[]\n\n#### Inherited from\n\nHTMLElement.getAnimations\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1979\n\n___","ref":"authoringelement.html#getanimations"},{"type":"extras","title":"getAttribute - AuthoringElement","doc":"▸ **getAttribute**(`qualifiedName`): ``null`` \\| `string`\n\nReturns element's first attribute whose qualified name is qualifiedName, and null if there is no such attribute otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.getAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4807\n\n___","ref":"authoringelement.html#getattribute"},{"type":"extras","title":"getAttributeNS - AuthoringElement","doc":"▸ **getAttributeNS**(`namespace`, `localName`): ``null`` \\| `string`\n\nReturns element's attribute whose namespace is namespace and local name is localName, and null if there is no such attribute otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.getAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4809\n\n___","ref":"authoringelement.html#getattributens"},{"type":"extras","title":"getAttributeNames - AuthoringElement","doc":"▸ **getAttributeNames**(): `string`[]\n\nReturns the qualified names of all element's attributes. Can contain duplicates.\n\n#### Returns\n\n`string`[]\n\n#### Inherited from\n\nHTMLElement.getAttributeNames\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4811\n\n___","ref":"authoringelement.html#getattributenames"},{"type":"extras","title":"getAttributeNode - AuthoringElement","doc":"▸ **getAttributeNode**(`qualifiedName`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.getAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4812\n\n___","ref":"authoringelement.html#getattributenode"},{"type":"extras","title":"getAttributeNodeNS - AuthoringElement","doc":"▸ **getAttributeNodeNS**(`namespace`, `localName`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.getAttributeNodeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4813\n\n___","ref":"authoringelement.html#getattributenodens"},{"type":"extras","title":"getBoundingClientRect - AuthoringElement","doc":"▸ **getBoundingClientRect**(): `DOMRect`\n\n#### Returns\n\n`DOMRect`\n\n#### Inherited from\n\nHTMLElement.getBoundingClientRect\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4814\n\n___","ref":"authoringelement.html#getboundingclientrect"},{"type":"extras","title":"getClientRects - AuthoringElement","doc":"▸ **getClientRects**(): `DOMRectList`\n\n#### Returns\n\n`DOMRectList`\n\n#### Inherited from\n\nHTMLElement.getClientRects\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4815\n\n___","ref":"authoringelement.html#getclientrects"},{"type":"extras","title":"getElementsByClassName - AuthoringElement","doc":"▸ **getElementsByClassName**(`classNames`): `HTMLCollectionOf`<`Element`\\>\n\nReturns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `classNames` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByClassName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4817\n\n___","ref":"authoringelement.html#getelementsbyclassname"},{"type":"extras","title":"getElementsByTagName - AuthoringElement","doc":"▸ **getElementsByTagName**<`K`\\>(`qualifiedName`): `HTMLCollectionOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `K` |\n\n#### Returns\n\n`HTMLCollectionOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4818\n\n▸ **getElementsByTagName**<`K`\\>(`qualifiedName`): `HTMLCollectionOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `K` |\n\n#### Returns\n\n`HTMLCollectionOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4819\n\n▸ **getElementsByTagName**(`qualifiedName`): `HTMLCollectionOf`<`Element`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4820\n\n___","ref":"authoringelement.html#getelementsbytagname"},{"type":"extras","title":"getElementsByTagNameNS - AuthoringElement","doc":"▸ **getElementsByTagNameNS**(`namespaceURI`, `localName`): `HTMLCollectionOf`<`HTMLElement`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespaceURI` | ``\"http://www.w3.org/1999/xhtml\"`` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`HTMLElement`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4821\n\n▸ **getElementsByTagNameNS**(`namespaceURI`, `localName`): `HTMLCollectionOf`<`SVGElement`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespaceURI` | ``\"http://www.w3.org/2000/svg\"`` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`SVGElement`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4822\n\n▸ **getElementsByTagNameNS**(`namespace`, `localName`): `HTMLCollectionOf`<`Element`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4823\n\n___","ref":"authoringelement.html#getelementsbytagnamens"},{"type":"extras","title":"getRootNode - AuthoringElement","doc":"▸ **getRootNode**(`options?`): `Node`\n\nReturns node's root.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `GetRootNodeOptions` |\n\n#### Returns\n\n`Node`\n\n#### Inherited from\n\nHTMLElement.getRootNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9808\n\n___","ref":"authoringelement.html#getrootnode"},{"type":"extras","title":"hasAttribute - AuthoringElement","doc":"▸ **hasAttribute**(`qualifiedName`): `boolean`\n\nReturns true if element has an attribute whose qualified name is qualifiedName, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4825\n\n___","ref":"authoringelement.html#hasattribute"},{"type":"extras","title":"hasAttributeNS - AuthoringElement","doc":"▸ **hasAttributeNS**(`namespace`, `localName`): `boolean`\n\nReturns true if element has an attribute whose namespace is namespace and local name is localName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4827\n\n___","ref":"authoringelement.html#hasattributens"},{"type":"extras","title":"hasAttributes - AuthoringElement","doc":"▸ **hasAttributes**(): `boolean`\n\nReturns true if element has attributes, and false otherwise.\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttributes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4829\n\n___","ref":"authoringelement.html#hasattributes"},{"type":"extras","title":"hasChildNodes - AuthoringElement","doc":"▸ **hasChildNodes**(): `boolean`\n\nReturns whether node has children.\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasChildNodes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9810\n\n___","ref":"authoringelement.html#haschildnodes"},{"type":"extras","title":"hasPointerCapture - AuthoringElement","doc":"▸ **hasPointerCapture**(`pointerId`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasPointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4830\n\n___","ref":"authoringelement.html#haspointercapture"},{"type":"extras","title":"insertAdjacentElement - AuthoringElement","doc":"▸ **insertAdjacentElement**(`where`, `element`): ``null`` \\| `Element`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `where` | `InsertPosition` |\n| `element` | `Element` |\n\n#### Returns\n\n``null`` \\| `Element`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentElement\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4831\n\n___","ref":"authoringelement.html#insertadjacentelement"},{"type":"extras","title":"insertAdjacentHTML - AuthoringElement","doc":"▸ **insertAdjacentHTML**(`position`, `text`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `position` | `InsertPosition` |\n| `text` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4832\n\n___","ref":"authoringelement.html#insertadjacenthtml"},{"type":"extras","title":"insertAdjacentText - AuthoringElement","doc":"▸ **insertAdjacentText**(`where`, `data`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `where` | `InsertPosition` |\n| `data` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4833\n\n___","ref":"authoringelement.html#insertadjacenttext"},{"type":"extras","title":"insertBefore - AuthoringElement","doc":"▸ **insertBefore**<`T`\\>(`node`, `child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `T` |\n| `child` | ``null`` \\| `Node` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.insertBefore\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9811\n\n___","ref":"authoringelement.html#insertbefore"},{"type":"extras","title":"isDefaultNamespace - AuthoringElement","doc":"▸ **isDefaultNamespace**(`namespace`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isDefaultNamespace\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9812\n\n___","ref":"authoringelement.html#isdefaultnamespace"},{"type":"extras","title":"isEqualNode - AuthoringElement","doc":"▸ **isEqualNode**(`otherNode`): `boolean`\n\nReturns whether node and otherNode have the same properties.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `otherNode` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isEqualNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9814\n\n___","ref":"authoringelement.html#isequalnode"},{"type":"extras","title":"isSameNode - AuthoringElement","doc":"▸ **isSameNode**(`otherNode`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `otherNode` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isSameNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9815\n\n___","ref":"authoringelement.html#issamenode"},{"type":"extras","title":"lookupNamespaceURI - AuthoringElement","doc":"▸ **lookupNamespaceURI**(`prefix`): ``null`` \\| `string`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `prefix` | ``null`` \\| `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.lookupNamespaceURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9816\n\n___","ref":"authoringelement.html#lookupnamespaceuri"},{"type":"extras","title":"lookupPrefix - AuthoringElement","doc":"▸ **lookupPrefix**(`namespace`): ``null`` \\| `string`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.lookupPrefix\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9817\n\n___","ref":"authoringelement.html#lookupprefix"},{"type":"extras","title":"matches - AuthoringElement","doc":"▸ **matches**(`selectors`): `boolean`\n\nReturns true if matching selectors against element's root yields element, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.matches\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4835\n\n___","ref":"authoringelement.html#matches"},{"type":"extras","title":"migrateModelVersion - AuthoringElement","doc":"▸ **migrateModelVersion**(`model`): `T`\n\nAllows for an activity to perform an inline, just in time, model migration. As an activity's\nimplementation changes over time, it may become necessary to make structural changes to the\nschema of the activity's model. The activity will need to support the original versions of this\nmodel, however, as there will likely have been many instances of this original model already\ncreated and stored in the Torus database.\n\nThe `migrateModelVersion` function will be called by the component just before each call to `render`.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `model` | `any` | the state of the model of the activity, as deliveredy by Torus to this activity |\n\n#### Returns\n\n`T`\n\na possibly migrated (i.e. upgraded) activity model, or the model as-is if no\nmigration is needed\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:125](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L125)\n\n___","ref":"authoringelement.html#migratemodelversion"},{"type":"extras","title":"normalize - AuthoringElement","doc":"▸ **normalize**(): `void`\n\nRemoves empty exclusive Text nodes and concatenates the data of remaining contiguous exclusive Text nodes into the first of their nodes.\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.normalize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9819\n\n___","ref":"authoringelement.html#normalize"},{"type":"extras","title":"notify - AuthoringElement","doc":"▸ **notify**(`eventName`, `payload`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `eventName` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:154](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L154)\n\n___","ref":"authoringelement.html#notify"},{"type":"extras","title":"prepend - AuthoringElement","doc":"▸ **prepend**(...`nodes`): `void`\n\nInserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.prepend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10158\n\n___","ref":"authoringelement.html#prepend"},{"type":"extras","title":"props - AuthoringElement","doc":"▸ **props**(): [`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> & [`SectionAuthoringProps`](../interfaces/SectionAuthoringProps.md)\n\n#### Returns\n\n[`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> & [`SectionAuthoringProps`](../interfaces/SectionAuthoringProps.md)\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:67](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L67)\n\n___","ref":"authoringelement.html#props"},{"type":"extras","title":"querySelector - AuthoringElement","doc":"▸ **querySelector**<`K`\\>(`selectors`): ``null`` \\| `HTMLElementTagNameMap`[`K`]\n\nReturns the first element that is a descendant of node that matches selectors.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n``null`` \\| `HTMLElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10160\n\n▸ **querySelector**<`K`\\>(`selectors`): ``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10161\n\n▸ **querySelector**<`E`\\>(`selectors`): ``null`` \\| `E`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n``null`` \\| `E`\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10162\n\n___","ref":"authoringelement.html#queryselector"},{"type":"extras","title":"querySelectorAll - AuthoringElement","doc":"▸ **querySelectorAll**<`K`\\>(`selectors`): `NodeListOf`<`HTMLElementTagNameMap`[`K`]\\>\n\nReturns all element descendants of node that match selectors.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n`NodeListOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10164\n\n▸ **querySelectorAll**<`K`\\>(`selectors`): `NodeListOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n`NodeListOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10165\n\n▸ **querySelectorAll**<`E`\\>(`selectors`): `NodeListOf`<`E`\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`NodeListOf`<`E`\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10166\n\n___","ref":"authoringelement.html#queryselectorall"},{"type":"extras","title":"releasePointerCapture - AuthoringElement","doc":"▸ **releasePointerCapture**(`pointerId`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.releasePointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4836\n\n___","ref":"authoringelement.html#releasepointercapture"},{"type":"extras","title":"remove - AuthoringElement","doc":"▸ **remove**(): `void`\n\nRemoves node.\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.remove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3505\n\n___","ref":"authoringelement.html#remove"},{"type":"extras","title":"removeAttribute - AuthoringElement","doc":"▸ **removeAttribute**(`qualifiedName`): `void`\n\nRemoves element's first attribute whose qualified name is qualifiedName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4838\n\n___","ref":"authoringelement.html#removeattribute"},{"type":"extras","title":"removeAttributeNS - AuthoringElement","doc":"▸ **removeAttributeNS**(`namespace`, `localName`): `void`\n\nRemoves element's attribute whose namespace is namespace and local name is localName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4840\n\n___","ref":"authoringelement.html#removeattributens"},{"type":"extras","title":"removeAttributeNode - AuthoringElement","doc":"▸ **removeAttributeNode**(`attr`): `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n`Attr`\n\n#### Inherited from\n\nHTMLElement.removeAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4841\n\n___","ref":"authoringelement.html#removeattributenode"},{"type":"extras","title":"removeChild - AuthoringElement","doc":"▸ **removeChild**<`T`\\>(`child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `child` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.removeChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9820\n\n___","ref":"authoringelement.html#removechild"},{"type":"extras","title":"removeEventListener - AuthoringElement","doc":"▸ **removeEventListener**<`K`\\>(`type`, `listener`, `options?`): `void`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementEventMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `K` |\n| `listener` | (`this`: `HTMLElement`, `ev`: `HTMLElementEventMap`[`K`]) => `any` |\n| `options?` | `boolean` \\| `EventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6244\n\n▸ **removeEventListener**(`type`, `listener`, `options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `string` |\n| `listener` | `EventListenerOrEventListenerObject` |\n| `options?` | `boolean` \\| `EventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6245\n\n___","ref":"authoringelement.html#removeeventlistener"},{"type":"extras","title":"render - AuthoringElement","doc":"▸ `Abstract` **render**(`mountPoint`, `props`): `void`\n\nImplemented by concrete web component, the `render` method is called\nonce after the web component has been mounted and \"connected\" to the DOM, and\nthen again every time that either the `editMode` or `model` attributes have\nchanged on the web component.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `mountPoint` | `HTMLDivElement` | a top level div element created by the component that the concrete impl can use to render the rest of the actual UX |\n| `props` | [`AuthoringElementProps`](../interfaces/AuthoringElementProps.md)<`T`\\> | the current set of authoring component properties |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/AuthoringElement.ts:167](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/AuthoringElement.ts#L167)\n\n___","ref":"authoringelement.html#render"},{"type":"extras","title":"replaceChild - AuthoringElement","doc":"▸ **replaceChild**<`T`\\>(`node`, `child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `Node` |\n| `child` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.replaceChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9821\n\n___","ref":"authoringelement.html#replacechild"},{"type":"extras","title":"replaceChildren - AuthoringElement","doc":"▸ **replaceChildren**(...`nodes`): `void`\n\nReplace all children of node with nodes, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.replaceChildren\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10172\n\n___","ref":"authoringelement.html#replacechildren"},{"type":"extras","title":"replaceWith - AuthoringElement","doc":"▸ **replaceWith**(...`nodes`): `void`\n\nReplaces node with nodes, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.replaceWith\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3511\n\n___","ref":"authoringelement.html#replacewith"},{"type":"extras","title":"requestFullscreen - AuthoringElement","doc":"▸ **requestFullscreen**(`options?`): `Promise`<`void`\\>\n\nDisplays element fullscreen and resolves promise when done.\n\nWhen supplied, options's navigationUI member indicates whether showing navigation UI while in fullscreen is preferred or not. If set to \"show\", navigation simplicity is preferred over screen space, and if set to \"hide\", more screen space is preferred. User agents are always free to honor user preference over the application's. The default value \"auto\" indicates no application preference.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `FullscreenOptions` |\n\n#### Returns\n\n`Promise`<`void`\\>\n\n#### Inherited from\n\nHTMLElement.requestFullscreen\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4847\n\n___","ref":"authoringelement.html#requestfullscreen"},{"type":"extras","title":"requestPointerLock - AuthoringElement","doc":"▸ **requestPointerLock**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.requestPointerLock\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4848\n\n___","ref":"authoringelement.html#requestpointerlock"},{"type":"extras","title":"scroll - AuthoringElement","doc":"▸ **scroll**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4849\n\n▸ **scroll**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4850\n\n___","ref":"authoringelement.html#scroll"},{"type":"extras","title":"scrollBy - AuthoringElement","doc":"▸ **scrollBy**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollBy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4851\n\n▸ **scrollBy**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollBy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4852\n\n___","ref":"authoringelement.html#scrollby"},{"type":"extras","title":"scrollIntoView - AuthoringElement","doc":"▸ **scrollIntoView**(`arg?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `arg?` | `boolean` \\| `ScrollIntoViewOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollIntoView\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4853\n\n___","ref":"authoringelement.html#scrollintoview"},{"type":"extras","title":"scrollTo - AuthoringElement","doc":"▸ **scrollTo**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollTo\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4854\n\n▸ **scrollTo**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollTo\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4855\n\n___","ref":"authoringelement.html#scrollto"},{"type":"extras","title":"setAttribute - AuthoringElement","doc":"▸ **setAttribute**(`qualifiedName`, `value`): `void`\n\nSets the value of element's first attribute whose qualified name is qualifiedName to value.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n| `value` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4857\n\n___","ref":"authoringelement.html#setattribute"},{"type":"extras","title":"setAttributeNS - AuthoringElement","doc":"▸ **setAttributeNS**(`namespace`, `qualifiedName`, `value`): `void`\n\nSets the value of element's attribute whose namespace is namespace and local name is localName to value.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `qualifiedName` | `string` |\n| `value` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4859\n\n___","ref":"authoringelement.html#setattributens"},{"type":"extras","title":"setAttributeNode - AuthoringElement","doc":"▸ **setAttributeNode**(`attr`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.setAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4860\n\n___","ref":"authoringelement.html#setattributenode"},{"type":"extras","title":"setAttributeNodeNS - AuthoringElement","doc":"▸ **setAttributeNodeNS**(`attr`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.setAttributeNodeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4861\n\n___","ref":"authoringelement.html#setattributenodens"},{"type":"extras","title":"setPointerCapture - AuthoringElement","doc":"▸ **setPointerCapture**(`pointerId`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setPointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4862\n\n___","ref":"authoringelement.html#setpointercapture"},{"type":"extras","title":"toggleAttribute - AuthoringElement","doc":"▸ **toggleAttribute**(`qualifiedName`, `force?`): `boolean`\n\nIf force is not given, \"toggles\" qualifiedName, removing it if it is present and adding it if it is not present. If force is true, adds qualifiedName. If force is false, removes qualifiedName.\n\nReturns true if qualifiedName is now present, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n| `force?` | `boolean` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.toggleAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4868\n\n___","ref":"authoringelement.html#toggleattribute"},{"type":"extras","title":"webkitMatchesSelector - AuthoringElement","doc":"▸ **webkitMatchesSelector**(`selectors`): `boolean`\n\n**`deprecated`** This is a legacy alias of `matches`.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.webkitMatchesSelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4870","ref":"authoringelement.html#webkitmatchesselector"},{"type":"extras","title":"DeliveryElement","doc":"[oli](../README.md) / [Exports](../modules.md) / DeliveryElement\n\n# Class: DeliveryElement \n\nAn abstract delivery web component, designed to delegate rendering\nvia the `render` method. This delivery web component will re-render\nwhen the 'model' attribute of the the web component changes. It also provides\nseveral callback function to allow the concrete implementation to initiate\nlifecycle events (e.g. request a hint, reset an attempt, etc).\n\nWhile the delegated implementation is a React component in the case of natively\nimplemented activities, this does not need to be the case. This `DeliveryElement`\nimplementation is tech-stack agnostic. One can use it to implement the authoring\ncomponent of a Torus activity in Vanilla JS, React, Vue, Angular, etc.\n\n```typescript\n// A typical React delegation\nexport class MultipleChoiceDelivery extends DeliveryElement {\n render(mountPoint: HTMLDivElement, props: DeliveryElementProps ) {\n const store = configureStore({}, activityDeliverySlice.reducer);\n ReactDOM.render(\n \n \n \n \n ,\n mountPoint,\n );\n }\n }\n```","ref":"deliveryelement.html"},{"type":"extras","title":"Type parameters - DeliveryElement","doc":"| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](../interfaces/ActivityModelSchema.md) |","ref":"deliveryelement.html#type-parameters"},{"type":"extras","title":"Hierarchy - DeliveryElement","doc":"- `HTMLElement`\n\n ↳ **`DeliveryElement`**","ref":"deliveryelement.html#hierarchy"},{"type":"extras","title":"Table of contents - DeliveryElement","doc":"","ref":"deliveryelement.html#table-of-contents"},{"type":"extras","title":"Constructors - DeliveryElement","doc":"- [constructor](DeliveryElement.md#constructor)","ref":"deliveryelement.html#constructors"},{"type":"extras","title":"Properties - DeliveryElement","doc":"- [ATTRIBUTE\\_NODE](DeliveryElement.md#attribute_node)\n- [CDATA\\_SECTION\\_NODE](DeliveryElement.md#cdata_section_node)\n- [COMMENT\\_NODE](DeliveryElement.md#comment_node)\n- [DOCUMENT\\_FRAGMENT\\_NODE](DeliveryElement.md#document_fragment_node)\n- [DOCUMENT\\_NODE](DeliveryElement.md#document_node)\n- [DOCUMENT\\_POSITION\\_CONTAINED\\_BY](DeliveryElement.md#document_position_contained_by)\n- [DOCUMENT\\_POSITION\\_CONTAINS](DeliveryElement.md#document_position_contains)\n- [DOCUMENT\\_POSITION\\_DISCONNECTED](DeliveryElement.md#document_position_disconnected)\n- [DOCUMENT\\_POSITION\\_FOLLOWING](DeliveryElement.md#document_position_following)\n- [DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC](DeliveryElement.md#document_position_implementation_specific)\n- [DOCUMENT\\_POSITION\\_PRECEDING](DeliveryElement.md#document_position_preceding)\n- [DOCUMENT\\_TYPE\\_NODE](DeliveryElement.md#document_type_node)\n- [ELEMENT\\_NODE](DeliveryElement.md#element_node)\n- [ENTITY\\_NODE](DeliveryElement.md#entity_node)\n- [ENTITY\\_REFERENCE\\_NODE](DeliveryElement.md#entity_reference_node)\n- [NOTATION\\_NODE](DeliveryElement.md#notation_node)\n- [PROCESSING\\_INSTRUCTION\\_NODE](DeliveryElement.md#processing_instruction_node)\n- [TEXT\\_NODE](DeliveryElement.md#text_node)\n- [\\_notify](DeliveryElement.md#_notify)\n- [accessKey](DeliveryElement.md#accesskey)\n- [accessKeyLabel](DeliveryElement.md#accesskeylabel)\n- [ariaAtomic](DeliveryElement.md#ariaatomic)\n- [ariaAutoComplete](DeliveryElement.md#ariaautocomplete)\n- [ariaBusy](DeliveryElement.md#ariabusy)\n- [ariaChecked](DeliveryElement.md#ariachecked)\n- [ariaColCount](DeliveryElement.md#ariacolcount)\n- [ariaColIndex](DeliveryElement.md#ariacolindex)\n- [ariaColSpan](DeliveryElement.md#ariacolspan)\n- [ariaCurrent](DeliveryElement.md#ariacurrent)\n- [ariaDisabled](DeliveryElement.md#ariadisabled)\n- [ariaExpanded](DeliveryElement.md#ariaexpanded)\n- [ariaHasPopup](DeliveryElement.md#ariahaspopup)\n- [ariaHidden](DeliveryElement.md#ariahidden)\n- [ariaKeyShortcuts](DeliveryElement.md#ariakeyshortcuts)\n- [ariaLabel](DeliveryElement.md#arialabel)\n- [ariaLevel](DeliveryElement.md#arialevel)\n- [ariaLive](DeliveryElement.md#arialive)\n- [ariaModal](DeliveryElement.md#ariamodal)\n- [ariaMultiLine](DeliveryElement.md#ariamultiline)\n- [ariaMultiSelectable](DeliveryElement.md#ariamultiselectable)\n- [ariaOrientation](DeliveryElement.md#ariaorientation)\n- [ariaPlaceholder](DeliveryElement.md#ariaplaceholder)\n- [ariaPosInSet](DeliveryElement.md#ariaposinset)\n- [ariaPressed](DeliveryElement.md#ariapressed)\n- [ariaReadOnly](DeliveryElement.md#ariareadonly)\n- [ariaRequired](DeliveryElement.md#ariarequired)\n- [ariaRoleDescription](DeliveryElement.md#ariaroledescription)\n- [ariaRowCount](DeliveryElement.md#ariarowcount)\n- [ariaRowIndex](DeliveryElement.md#ariarowindex)\n- [ariaRowSpan](DeliveryElement.md#ariarowspan)\n- [ariaSelected](DeliveryElement.md#ariaselected)\n- [ariaSetSize](DeliveryElement.md#ariasetsize)\n- [ariaSort](DeliveryElement.md#ariasort)\n- [ariaValueMax](DeliveryElement.md#ariavaluemax)\n- [ariaValueMin](DeliveryElement.md#ariavaluemin)\n- [ariaValueNow](DeliveryElement.md#ariavaluenow)\n- [ariaValueText](DeliveryElement.md#ariavaluetext)\n- [assignedSlot](DeliveryElement.md#assignedslot)\n- [attributes](DeliveryElement.md#attributes)\n- [autocapitalize](DeliveryElement.md#autocapitalize)\n- [autofocus](DeliveryElement.md#autofocus)\n- [baseURI](DeliveryElement.md#baseuri)\n- [childElementCount](DeliveryElement.md#childelementcount)\n- [childNodes](DeliveryElement.md#childnodes)\n- [children](DeliveryElement.md#children)\n- [classList](DeliveryElement.md#classlist)\n- [className](DeliveryElement.md#classname)\n- [clientHeight](DeliveryElement.md#clientheight)\n- [clientLeft](DeliveryElement.md#clientleft)\n- [clientTop](DeliveryElement.md#clienttop)\n- [clientWidth](DeliveryElement.md#clientwidth)\n- [connected](DeliveryElement.md#connected)\n- [contentEditable](DeliveryElement.md#contenteditable)\n- [dataset](DeliveryElement.md#dataset)\n- [dir](DeliveryElement.md#dir)\n- [draggable](DeliveryElement.md#draggable)\n- [enterKeyHint](DeliveryElement.md#enterkeyhint)\n- [firstChild](DeliveryElement.md#firstchild)\n- [firstElementChild](DeliveryElement.md#firstelementchild)\n- [hidden](DeliveryElement.md#hidden)\n- [id](DeliveryElement.md#id)\n- [innerHTML](DeliveryElement.md#innerhtml)\n- [innerText](DeliveryElement.md#innertext)\n- [inputMode](DeliveryElement.md#inputmode)\n- [isConnected](DeliveryElement.md#isconnected)\n- [isContentEditable](DeliveryElement.md#iscontenteditable)\n- [lang](DeliveryElement.md#lang)\n- [lastChild](DeliveryElement.md#lastchild)\n- [lastElementChild](DeliveryElement.md#lastelementchild)\n- [localName](DeliveryElement.md#localname)\n- [mountPoint](DeliveryElement.md#mountpoint)\n- [namespaceURI](DeliveryElement.md#namespaceuri)\n- [nextElementSibling](DeliveryElement.md#nextelementsibling)\n- [nextSibling](DeliveryElement.md#nextsibling)\n- [nodeName](DeliveryElement.md#nodename)\n- [nodeType](DeliveryElement.md#nodetype)\n- [nodeValue](DeliveryElement.md#nodevalue)\n- [nonce](DeliveryElement.md#nonce)\n- [offsetHeight](DeliveryElement.md#offsetheight)\n- [offsetLeft](DeliveryElement.md#offsetleft)\n- [offsetParent](DeliveryElement.md#offsetparent)\n- [offsetTop](DeliveryElement.md#offsettop)\n- [offsetWidth](DeliveryElement.md#offsetwidth)\n- [onGetData](DeliveryElement.md#ongetdata)\n- [onReady](DeliveryElement.md#onready)\n- [onRequestHint](DeliveryElement.md#onrequesthint)\n- [onResetActivity](DeliveryElement.md#onresetactivity)\n- [onResetPart](DeliveryElement.md#onresetpart)\n- [onResize](DeliveryElement.md#onresize)\n- [onSaveActivity](DeliveryElement.md#onsaveactivity)\n- [onSavePart](DeliveryElement.md#onsavepart)\n- [onSetData](DeliveryElement.md#onsetdata)\n- [onSubmitActivity](DeliveryElement.md#onsubmitactivity)\n- [onSubmitEvaluations](DeliveryElement.md#onsubmitevaluations)\n- [onSubmitPart](DeliveryElement.md#onsubmitpart)\n- [onabort](DeliveryElement.md#onabort)\n- [onanimationcancel](DeliveryElement.md#onanimationcancel)\n- [onanimationend](DeliveryElement.md#onanimationend)\n- [onanimationiteration](DeliveryElement.md#onanimationiteration)\n- [onanimationstart](DeliveryElement.md#onanimationstart)\n- [onauxclick](DeliveryElement.md#onauxclick)\n- [onblur](DeliveryElement.md#onblur)\n- [oncanplay](DeliveryElement.md#oncanplay)\n- [oncanplaythrough](DeliveryElement.md#oncanplaythrough)\n- [onchange](DeliveryElement.md#onchange)\n- [onclick](DeliveryElement.md#onclick)\n- [onclose](DeliveryElement.md#onclose)\n- [oncontextmenu](DeliveryElement.md#oncontextmenu)\n- [oncopy](DeliveryElement.md#oncopy)\n- [oncuechange](DeliveryElement.md#oncuechange)\n- [oncut](DeliveryElement.md#oncut)\n- [ondblclick](DeliveryElement.md#ondblclick)\n- [ondrag](DeliveryElement.md#ondrag)\n- [ondragend](DeliveryElement.md#ondragend)\n- [ondragenter](DeliveryElement.md#ondragenter)\n- [ondragleave](DeliveryElement.md#ondragleave)\n- [ondragover](DeliveryElement.md#ondragover)\n- [ondragstart](DeliveryElement.md#ondragstart)\n- [ondrop](DeliveryElement.md#ondrop)\n- [ondurationchange](DeliveryElement.md#ondurationchange)\n- [onemptied](DeliveryElement.md#onemptied)\n- [onended](DeliveryElement.md#onended)\n- [onerror](DeliveryElement.md#onerror)\n- [onfocus](DeliveryElement.md#onfocus)\n- [onformdata](DeliveryElement.md#onformdata)\n- [onfullscreenchange](DeliveryElement.md#onfullscreenchange)\n- [onfullscreenerror](DeliveryElement.md#onfullscreenerror)\n- [ongotpointercapture](DeliveryElement.md#ongotpointercapture)\n- [oninput](DeliveryElement.md#oninput)\n- [oninvalid](DeliveryElement.md#oninvalid)\n- [onkeydown](DeliveryElement.md#onkeydown)\n- [onkeypress](DeliveryElement.md#onkeypress)\n- [onkeyup](DeliveryElement.md#onkeyup)\n- [onload](DeliveryElement.md#onload)\n- [onloadeddata](DeliveryElement.md#onloadeddata)\n- [onloadedmetadata](DeliveryElement.md#onloadedmetadata)\n- [onloadstart](DeliveryElement.md#onloadstart)\n- [onlostpointercapture](DeliveryElement.md#onlostpointercapture)\n- [onmousedown](DeliveryElement.md#onmousedown)\n- [onmouseenter](DeliveryElement.md#onmouseenter)\n- [onmouseleave](DeliveryElement.md#onmouseleave)\n- [onmousemove](DeliveryElement.md#onmousemove)\n- [onmouseout](DeliveryElement.md#onmouseout)\n- [onmouseover](DeliveryElement.md#onmouseover)\n- [onmouseup](DeliveryElement.md#onmouseup)\n- [onpaste](DeliveryElement.md#onpaste)\n- [onpause](DeliveryElement.md#onpause)\n- [onplay](DeliveryElement.md#onplay)\n- [onplaying](DeliveryElement.md#onplaying)\n- [onpointercancel](DeliveryElement.md#onpointercancel)\n- [onpointerdown](DeliveryElement.md#onpointerdown)\n- [onpointerenter](DeliveryElement.md#onpointerenter)\n- [onpointerleave](DeliveryElement.md#onpointerleave)\n- [onpointermove](DeliveryElement.md#onpointermove)\n- [onpointerout](DeliveryElement.md#onpointerout)\n- [onpointerover](DeliveryElement.md#onpointerover)\n- [onpointerup](DeliveryElement.md#onpointerup)\n- [onprogress](DeliveryElement.md#onprogress)\n- [onratechange](DeliveryElement.md#onratechange)\n- [onreset](DeliveryElement.md#onreset)\n- [onresize](DeliveryElement.md#onresize-1)\n- [onscroll](DeliveryElement.md#onscroll)\n- [onsecuritypolicyviolation](DeliveryElement.md#onsecuritypolicyviolation)\n- [onseeked](DeliveryElement.md#onseeked)\n- [onseeking](DeliveryElement.md#onseeking)\n- [onselect](DeliveryElement.md#onselect)\n- [onselectionchange](DeliveryElement.md#onselectionchange)\n- [onselectstart](DeliveryElement.md#onselectstart)\n- [onslotchange](DeliveryElement.md#onslotchange)\n- [onstalled](DeliveryElement.md#onstalled)\n- [onsubmit](DeliveryElement.md#onsubmit)\n- [onsuspend](DeliveryElement.md#onsuspend)\n- [ontimeupdate](DeliveryElement.md#ontimeupdate)\n- [ontoggle](DeliveryElement.md#ontoggle)\n- [ontouchcancel](DeliveryElement.md#ontouchcancel)\n- [ontouchend](DeliveryElement.md#ontouchend)\n- [ontouchmove](DeliveryElement.md#ontouchmove)\n- [ontouchstart](DeliveryElement.md#ontouchstart)\n- [ontransitioncancel](DeliveryElement.md#ontransitioncancel)\n- [ontransitionend](DeliveryElement.md#ontransitionend)\n- [ontransitionrun](DeliveryElement.md#ontransitionrun)\n- [ontransitionstart](DeliveryElement.md#ontransitionstart)\n- [onvolumechange](DeliveryElement.md#onvolumechange)\n- [onwaiting](DeliveryElement.md#onwaiting)\n- [onwebkitanimationend](DeliveryElement.md#onwebkitanimationend)\n- [onwebkitanimationiteration](DeliveryElement.md#onwebkitanimationiteration)\n- [onwebkitanimationstart](DeliveryElement.md#onwebkitanimationstart)\n- [onwebkittransitionend](DeliveryElement.md#onwebkittransitionend)\n- [onwheel](DeliveryElement.md#onwheel)\n- [outerHTML](DeliveryElement.md#outerhtml)\n- [outerText](DeliveryElement.md#outertext)\n- [ownerDocument](DeliveryElement.md#ownerdocument)\n- [parentElement](DeliveryElement.md#parentelement)\n- [parentNode](DeliveryElement.md#parentnode)\n- [part](DeliveryElement.md#part)\n- [prefix](DeliveryElement.md#prefix)\n- [previousElementSibling](DeliveryElement.md#previouselementsibling)\n- [previousSibling](DeliveryElement.md#previoussibling)\n- [review](DeliveryElement.md#review)\n- [scrollHeight](DeliveryElement.md#scrollheight)\n- [scrollLeft](DeliveryElement.md#scrollleft)\n- [scrollTop](DeliveryElement.md#scrolltop)\n- [scrollWidth](DeliveryElement.md#scrollwidth)\n- [shadowRoot](DeliveryElement.md#shadowroot)\n- [slot](DeliveryElement.md#slot)\n- [spellcheck](DeliveryElement.md#spellcheck)\n- [style](DeliveryElement.md#style)\n- [tabIndex](DeliveryElement.md#tabindex)\n- [tagName](DeliveryElement.md#tagname)\n- [textContent](DeliveryElement.md#textcontent)\n- [title](DeliveryElement.md#title)\n- [translate](DeliveryElement.md#translate)","ref":"deliveryelement.html#properties"},{"type":"extras","title":"Accessors - DeliveryElement","doc":"- [observedAttributes](DeliveryElement.md#observedattributes)","ref":"deliveryelement.html#accessors"},{"type":"extras","title":"Methods - DeliveryElement","doc":"- [addEventListener](DeliveryElement.md#addeventlistener)\n- [after](DeliveryElement.md#after)\n- [animate](DeliveryElement.md#animate)\n- [append](DeliveryElement.md#append)\n- [appendChild](DeliveryElement.md#appendchild)\n- [attachInternals](DeliveryElement.md#attachinternals)\n- [attachShadow](DeliveryElement.md#attachshadow)\n- [attributeChangedCallback](DeliveryElement.md#attributechangedcallback)\n- [before](DeliveryElement.md#before)\n- [blur](DeliveryElement.md#blur)\n- [click](DeliveryElement.md#click)\n- [cloneNode](DeliveryElement.md#clonenode)\n- [closest](DeliveryElement.md#closest)\n- [compareDocumentPosition](DeliveryElement.md#comparedocumentposition)\n- [connectedCallback](DeliveryElement.md#connectedcallback)\n- [contains](DeliveryElement.md#contains)\n- [details](DeliveryElement.md#details)\n- [dispatch](DeliveryElement.md#dispatch)\n- [dispatchEvent](DeliveryElement.md#dispatchevent)\n- [focus](DeliveryElement.md#focus)\n- [getAnimations](DeliveryElement.md#getanimations)\n- [getAttribute](DeliveryElement.md#getattribute)\n- [getAttributeNS](DeliveryElement.md#getattributens)\n- [getAttributeNames](DeliveryElement.md#getattributenames)\n- [getAttributeNode](DeliveryElement.md#getattributenode)\n- [getAttributeNodeNS](DeliveryElement.md#getattributenodens)\n- [getBoundingClientRect](DeliveryElement.md#getboundingclientrect)\n- [getClientRects](DeliveryElement.md#getclientrects)\n- [getElementsByClassName](DeliveryElement.md#getelementsbyclassname)\n- [getElementsByTagName](DeliveryElement.md#getelementsbytagname)\n- [getElementsByTagNameNS](DeliveryElement.md#getelementsbytagnamens)\n- [getRootNode](DeliveryElement.md#getrootnode)\n- [hasAttribute](DeliveryElement.md#hasattribute)\n- [hasAttributeNS](DeliveryElement.md#hasattributens)\n- [hasAttributes](DeliveryElement.md#hasattributes)\n- [hasChildNodes](DeliveryElement.md#haschildnodes)\n- [hasPointerCapture](DeliveryElement.md#haspointercapture)\n- [insertAdjacentElement](DeliveryElement.md#insertadjacentelement)\n- [insertAdjacentHTML](DeliveryElement.md#insertadjacenthtml)\n- [insertAdjacentText](DeliveryElement.md#insertadjacenttext)\n- [insertBefore](DeliveryElement.md#insertbefore)\n- [isDefaultNamespace](DeliveryElement.md#isdefaultnamespace)\n- [isEqualNode](DeliveryElement.md#isequalnode)\n- [isSameNode](DeliveryElement.md#issamenode)\n- [lookupNamespaceURI](DeliveryElement.md#lookupnamespaceuri)\n- [lookupPrefix](DeliveryElement.md#lookupprefix)\n- [matches](DeliveryElement.md#matches)\n- [normalize](DeliveryElement.md#normalize)\n- [notify](DeliveryElement.md#notify)\n- [prepend](DeliveryElement.md#prepend)\n- [props](DeliveryElement.md#props)\n- [querySelector](DeliveryElement.md#queryselector)\n- [querySelectorAll](DeliveryElement.md#queryselectorall)\n- [releasePointerCapture](DeliveryElement.md#releasepointercapture)\n- [remove](DeliveryElement.md#remove)\n- [removeAttribute](DeliveryElement.md#removeattribute)\n- [removeAttributeNS](DeliveryElement.md#removeattributens)\n- [removeAttributeNode](DeliveryElement.md#removeattributenode)\n- [removeChild](DeliveryElement.md#removechild)\n- [removeEventListener](DeliveryElement.md#removeeventlistener)\n- [render](DeliveryElement.md#render)\n- [replaceChild](DeliveryElement.md#replacechild)\n- [replaceChildren](DeliveryElement.md#replacechildren)\n- [replaceWith](DeliveryElement.md#replacewith)\n- [requestFullscreen](DeliveryElement.md#requestfullscreen)\n- [requestPointerLock](DeliveryElement.md#requestpointerlock)\n- [scroll](DeliveryElement.md#scroll)\n- [scrollBy](DeliveryElement.md#scrollby)\n- [scrollIntoView](DeliveryElement.md#scrollintoview)\n- [scrollTo](DeliveryElement.md#scrollto)\n- [setAttribute](DeliveryElement.md#setattribute)\n- [setAttributeNS](DeliveryElement.md#setattributens)\n- [setAttributeNode](DeliveryElement.md#setattributenode)\n- [setAttributeNodeNS](DeliveryElement.md#setattributenodens)\n- [setPointerCapture](DeliveryElement.md#setpointercapture)\n- [toggleAttribute](DeliveryElement.md#toggleattribute)\n- [webkitMatchesSelector](DeliveryElement.md#webkitmatchesselector)","ref":"deliveryelement.html#methods"},{"type":"extras","title":"Constructors - DeliveryElement","doc":"","ref":"deliveryelement.html#constructors"},{"type":"extras","title":"constructor - DeliveryElement","doc":"• **new DeliveryElement**<`T`\\>()\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends [`ActivityModelSchema`](../interfaces/ActivityModelSchema.md) |\n\n#### Overrides\n\nHTMLElement.constructor\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:246](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L246)","ref":"deliveryelement.html#constructor"},{"type":"extras","title":"Properties - DeliveryElement","doc":"","ref":"deliveryelement.html#properties"},{"type":"extras","title":"ATTRIBUTE\\_NODE - DeliveryElement","doc":"• `Readonly` **ATTRIBUTE\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ATTRIBUTE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9822\n\n___","ref":"deliveryelement.html#attribute-_node"},{"type":"extras","title":"CDATA\\_SECTION\\_NODE - DeliveryElement","doc":"• `Readonly` **CDATA\\_SECTION\\_NODE**: `number`\n\nnode is a CDATASection node.\n\n#### Inherited from\n\nHTMLElement.CDATA\\_SECTION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9824\n\n___","ref":"deliveryelement.html#cdata-_section-_node"},{"type":"extras","title":"COMMENT\\_NODE - DeliveryElement","doc":"• `Readonly` **COMMENT\\_NODE**: `number`\n\nnode is a Comment node.\n\n#### Inherited from\n\nHTMLElement.COMMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9826\n\n___","ref":"deliveryelement.html#comment-_node"},{"type":"extras","title":"DOCUMENT\\_FRAGMENT\\_NODE - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_FRAGMENT\\_NODE**: `number`\n\nnode is a DocumentFragment node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_FRAGMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9828\n\n___","ref":"deliveryelement.html#document-_fragment-_node"},{"type":"extras","title":"DOCUMENT\\_NODE - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_NODE**: `number`\n\nnode is a document.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9830\n\n___","ref":"deliveryelement.html#document-_node"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_CONTAINED\\_BY - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_CONTAINED\\_BY**: `number`\n\nSet when other is a descendant of node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_CONTAINED\\_BY\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9832\n\n___","ref":"deliveryelement.html#document-_position-_contained-_by"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_CONTAINS - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_CONTAINS**: `number`\n\nSet when other is an ancestor of node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_CONTAINS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9834\n\n___","ref":"deliveryelement.html#document-_position-_contains"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_DISCONNECTED - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_DISCONNECTED**: `number`\n\nSet when node and other are not in the same tree.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_DISCONNECTED\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9836\n\n___","ref":"deliveryelement.html#document-_position-_disconnected"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_FOLLOWING - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_FOLLOWING**: `number`\n\nSet when other is following node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_FOLLOWING\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9838\n\n___","ref":"deliveryelement.html#document-_position-_following"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC**: `number`\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_IMPLEMENTATION\\_SPECIFIC\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9839\n\n___","ref":"deliveryelement.html#document-_position-_implementation-_specific"},{"type":"extras","title":"DOCUMENT\\_POSITION\\_PRECEDING - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_POSITION\\_PRECEDING**: `number`\n\nSet when other is preceding node.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_POSITION\\_PRECEDING\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9841\n\n___","ref":"deliveryelement.html#document-_position-_preceding"},{"type":"extras","title":"DOCUMENT\\_TYPE\\_NODE - DeliveryElement","doc":"• `Readonly` **DOCUMENT\\_TYPE\\_NODE**: `number`\n\nnode is a doctype.\n\n#### Inherited from\n\nHTMLElement.DOCUMENT\\_TYPE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9843\n\n___","ref":"deliveryelement.html#document-_type-_node"},{"type":"extras","title":"ELEMENT\\_NODE - DeliveryElement","doc":"• `Readonly` **ELEMENT\\_NODE**: `number`\n\nnode is an element.\n\n#### Inherited from\n\nHTMLElement.ELEMENT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9845\n\n___","ref":"deliveryelement.html#element-_node"},{"type":"extras","title":"ENTITY\\_NODE - DeliveryElement","doc":"• `Readonly` **ENTITY\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ENTITY\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9846\n\n___","ref":"deliveryelement.html#entity-_node"},{"type":"extras","title":"ENTITY\\_REFERENCE\\_NODE - DeliveryElement","doc":"• `Readonly` **ENTITY\\_REFERENCE\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.ENTITY\\_REFERENCE\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9847\n\n___","ref":"deliveryelement.html#entity-_reference-_node"},{"type":"extras","title":"NOTATION\\_NODE - DeliveryElement","doc":"• `Readonly` **NOTATION\\_NODE**: `number`\n\n#### Inherited from\n\nHTMLElement.NOTATION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9848\n\n___","ref":"deliveryelement.html#notation-_node"},{"type":"extras","title":"PROCESSING\\_INSTRUCTION\\_NODE - DeliveryElement","doc":"• `Readonly` **PROCESSING\\_INSTRUCTION\\_NODE**: `number`\n\nnode is a ProcessingInstruction node.\n\n#### Inherited from\n\nHTMLElement.PROCESSING\\_INSTRUCTION\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9850\n\n___","ref":"deliveryelement.html#processing-_instruction-_node"},{"type":"extras","title":"TEXT\\_NODE - DeliveryElement","doc":"• `Readonly` **TEXT\\_NODE**: `number`\n\nnode is a Text node.\n\n#### Inherited from\n\nHTMLElement.TEXT\\_NODE\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9852\n\n___\n\n### \\_notify\n\n• `Protected` **\\_notify**: `EventEmitter`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:217](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L217)\n\n___","ref":"deliveryelement.html#text-_node"},{"type":"extras","title":"accessKey - DeliveryElement","doc":"• **accessKey**: `string`\n\n#### Inherited from\n\nHTMLElement.accessKey\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6223\n\n___","ref":"deliveryelement.html#accesskey"},{"type":"extras","title":"accessKeyLabel - DeliveryElement","doc":"• `Readonly` **accessKeyLabel**: `string`\n\n#### Inherited from\n\nHTMLElement.accessKeyLabel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6224\n\n___","ref":"deliveryelement.html#accesskeylabel"},{"type":"extras","title":"ariaAtomic - DeliveryElement","doc":"• **ariaAtomic**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaAtomic\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1857\n\n___","ref":"deliveryelement.html#ariaatomic"},{"type":"extras","title":"ariaAutoComplete - DeliveryElement","doc":"• **ariaAutoComplete**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaAutoComplete\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1858\n\n___","ref":"deliveryelement.html#ariaautocomplete"},{"type":"extras","title":"ariaBusy - DeliveryElement","doc":"• **ariaBusy**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaBusy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1859\n\n___","ref":"deliveryelement.html#ariabusy"},{"type":"extras","title":"ariaChecked - DeliveryElement","doc":"• **ariaChecked**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaChecked\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1860\n\n___","ref":"deliveryelement.html#ariachecked"},{"type":"extras","title":"ariaColCount - DeliveryElement","doc":"• **ariaColCount**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1861\n\n___","ref":"deliveryelement.html#ariacolcount"},{"type":"extras","title":"ariaColIndex - DeliveryElement","doc":"• **ariaColIndex**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1862\n\n___","ref":"deliveryelement.html#ariacolindex"},{"type":"extras","title":"ariaColSpan - DeliveryElement","doc":"• **ariaColSpan**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaColSpan\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1863\n\n___","ref":"deliveryelement.html#ariacolspan"},{"type":"extras","title":"ariaCurrent - DeliveryElement","doc":"• **ariaCurrent**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaCurrent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1864\n\n___","ref":"deliveryelement.html#ariacurrent"},{"type":"extras","title":"ariaDisabled - DeliveryElement","doc":"• **ariaDisabled**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaDisabled\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1865\n\n___","ref":"deliveryelement.html#ariadisabled"},{"type":"extras","title":"ariaExpanded - DeliveryElement","doc":"• **ariaExpanded**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaExpanded\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1866\n\n___","ref":"deliveryelement.html#ariaexpanded"},{"type":"extras","title":"ariaHasPopup - DeliveryElement","doc":"• **ariaHasPopup**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaHasPopup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1867\n\n___","ref":"deliveryelement.html#ariahaspopup"},{"type":"extras","title":"ariaHidden - DeliveryElement","doc":"• **ariaHidden**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaHidden\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1868\n\n___","ref":"deliveryelement.html#ariahidden"},{"type":"extras","title":"ariaKeyShortcuts - DeliveryElement","doc":"• **ariaKeyShortcuts**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaKeyShortcuts\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1869\n\n___","ref":"deliveryelement.html#ariakeyshortcuts"},{"type":"extras","title":"ariaLabel - DeliveryElement","doc":"• **ariaLabel**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLabel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1870\n\n___","ref":"deliveryelement.html#arialabel"},{"type":"extras","title":"ariaLevel - DeliveryElement","doc":"• **ariaLevel**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLevel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1871\n\n___","ref":"deliveryelement.html#arialevel"},{"type":"extras","title":"ariaLive - DeliveryElement","doc":"• **ariaLive**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaLive\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1872\n\n___","ref":"deliveryelement.html#arialive"},{"type":"extras","title":"ariaModal - DeliveryElement","doc":"• **ariaModal**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaModal\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1873\n\n___","ref":"deliveryelement.html#ariamodal"},{"type":"extras","title":"ariaMultiLine - DeliveryElement","doc":"• **ariaMultiLine**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaMultiLine\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1874\n\n___","ref":"deliveryelement.html#ariamultiline"},{"type":"extras","title":"ariaMultiSelectable - DeliveryElement","doc":"• **ariaMultiSelectable**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaMultiSelectable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1875\n\n___","ref":"deliveryelement.html#ariamultiselectable"},{"type":"extras","title":"ariaOrientation - DeliveryElement","doc":"• **ariaOrientation**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaOrientation\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1876\n\n___","ref":"deliveryelement.html#ariaorientation"},{"type":"extras","title":"ariaPlaceholder - DeliveryElement","doc":"• **ariaPlaceholder**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPlaceholder\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1877\n\n___","ref":"deliveryelement.html#ariaplaceholder"},{"type":"extras","title":"ariaPosInSet - DeliveryElement","doc":"• **ariaPosInSet**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPosInSet\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1878\n\n___","ref":"deliveryelement.html#ariaposinset"},{"type":"extras","title":"ariaPressed - DeliveryElement","doc":"• **ariaPressed**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaPressed\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1879\n\n___","ref":"deliveryelement.html#ariapressed"},{"type":"extras","title":"ariaReadOnly - DeliveryElement","doc":"• **ariaReadOnly**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaReadOnly\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1880\n\n___","ref":"deliveryelement.html#ariareadonly"},{"type":"extras","title":"ariaRequired - DeliveryElement","doc":"• **ariaRequired**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRequired\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1881\n\n___","ref":"deliveryelement.html#ariarequired"},{"type":"extras","title":"ariaRoleDescription - DeliveryElement","doc":"• **ariaRoleDescription**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRoleDescription\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1882\n\n___","ref":"deliveryelement.html#ariaroledescription"},{"type":"extras","title":"ariaRowCount - DeliveryElement","doc":"• **ariaRowCount**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1883\n\n___","ref":"deliveryelement.html#ariarowcount"},{"type":"extras","title":"ariaRowIndex - DeliveryElement","doc":"• **ariaRowIndex**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1884\n\n___","ref":"deliveryelement.html#ariarowindex"},{"type":"extras","title":"ariaRowSpan - DeliveryElement","doc":"• **ariaRowSpan**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaRowSpan\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1885\n\n___","ref":"deliveryelement.html#ariarowspan"},{"type":"extras","title":"ariaSelected - DeliveryElement","doc":"• **ariaSelected**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSelected\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1886\n\n___","ref":"deliveryelement.html#ariaselected"},{"type":"extras","title":"ariaSetSize - DeliveryElement","doc":"• **ariaSetSize**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSetSize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1887\n\n___","ref":"deliveryelement.html#ariasetsize"},{"type":"extras","title":"ariaSort - DeliveryElement","doc":"• **ariaSort**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaSort\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1888\n\n___","ref":"deliveryelement.html#ariasort"},{"type":"extras","title":"ariaValueMax - DeliveryElement","doc":"• **ariaValueMax**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueMax\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1889\n\n___","ref":"deliveryelement.html#ariavaluemax"},{"type":"extras","title":"ariaValueMin - DeliveryElement","doc":"• **ariaValueMin**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueMin\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1890\n\n___","ref":"deliveryelement.html#ariavaluemin"},{"type":"extras","title":"ariaValueNow - DeliveryElement","doc":"• **ariaValueNow**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueNow\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1891\n\n___","ref":"deliveryelement.html#ariavaluenow"},{"type":"extras","title":"ariaValueText - DeliveryElement","doc":"• **ariaValueText**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.ariaValueText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1892\n\n___","ref":"deliveryelement.html#ariavaluetext"},{"type":"extras","title":"assignedSlot - DeliveryElement","doc":"• `Readonly` **assignedSlot**: ``null`` \\| `HTMLSlotElement`\n\n#### Inherited from\n\nHTMLElement.assignedSlot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:13242\n\n___","ref":"deliveryelement.html#assignedslot"},{"type":"extras","title":"attributes - DeliveryElement","doc":"• `Readonly` **attributes**: `NamedNodeMap`\n\n#### Inherited from\n\nHTMLElement.attributes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4768\n\n___","ref":"deliveryelement.html#attributes"},{"type":"extras","title":"autocapitalize - DeliveryElement","doc":"• **autocapitalize**: `string`\n\n#### Inherited from\n\nHTMLElement.autocapitalize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6225\n\n___","ref":"deliveryelement.html#autocapitalize"},{"type":"extras","title":"autofocus - DeliveryElement","doc":"• **autofocus**: `boolean`\n\n#### Inherited from\n\nHTMLElement.autofocus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7427\n\n___","ref":"deliveryelement.html#autofocus"},{"type":"extras","title":"baseURI - DeliveryElement","doc":"• `Readonly` **baseURI**: `string`\n\nReturns node's node document's document base URL.\n\n#### Inherited from\n\nHTMLElement.baseURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9775\n\n___","ref":"deliveryelement.html#baseuri"},{"type":"extras","title":"childElementCount - DeliveryElement","doc":"• `Readonly` **childElementCount**: `number`\n\n#### Inherited from\n\nHTMLElement.childElementCount\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10140\n\n___","ref":"deliveryelement.html#childelementcount"},{"type":"extras","title":"childNodes - DeliveryElement","doc":"• `Readonly` **childNodes**: `NodeListOf`<`ChildNode`\\>\n\nReturns the children.\n\n#### Inherited from\n\nHTMLElement.childNodes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9777\n\n___","ref":"deliveryelement.html#childnodes"},{"type":"extras","title":"children - DeliveryElement","doc":"• `Readonly` **children**: `HTMLCollection`\n\nReturns the child elements.\n\n#### Inherited from\n\nHTMLElement.children\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10142\n\n___","ref":"deliveryelement.html#children"},{"type":"extras","title":"classList - DeliveryElement","doc":"• `Readonly` **classList**: `DOMTokenList`\n\nAllows for manipulation of element's class content attribute as a set of whitespace-separated tokens through a DOMTokenList object.\n\n#### Inherited from\n\nHTMLElement.classList\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4770\n\n___","ref":"deliveryelement.html#classlist"},{"type":"extras","title":"className - DeliveryElement","doc":"• **className**: `string`\n\nReturns the value of element's class content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.className\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4772\n\n___","ref":"deliveryelement.html#classname"},{"type":"extras","title":"clientHeight - DeliveryElement","doc":"• `Readonly` **clientHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.clientHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4773\n\n___","ref":"deliveryelement.html#clientheight"},{"type":"extras","title":"clientLeft - DeliveryElement","doc":"• `Readonly` **clientLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.clientLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4774\n\n___","ref":"deliveryelement.html#clientleft"},{"type":"extras","title":"clientTop - DeliveryElement","doc":"• `Readonly` **clientTop**: `number`\n\n#### Inherited from\n\nHTMLElement.clientTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4775\n\n___","ref":"deliveryelement.html#clienttop"},{"type":"extras","title":"clientWidth - DeliveryElement","doc":"• `Readonly` **clientWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.clientWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4776\n\n___","ref":"deliveryelement.html#clientwidth"},{"type":"extras","title":"connected - DeliveryElement","doc":"• **connected**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:212](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L212)\n\n___","ref":"deliveryelement.html#connected"},{"type":"extras","title":"contentEditable - DeliveryElement","doc":"• **contentEditable**: `string`\n\n#### Inherited from\n\nHTMLElement.contentEditable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4887\n\n___","ref":"deliveryelement.html#contenteditable"},{"type":"extras","title":"dataset - DeliveryElement","doc":"• `Readonly` **dataset**: `DOMStringMap`\n\n#### Inherited from\n\nHTMLElement.dataset\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7428\n\n___","ref":"deliveryelement.html#dataset"},{"type":"extras","title":"dir - DeliveryElement","doc":"• **dir**: `string`\n\n#### Inherited from\n\nHTMLElement.dir\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6226\n\n___","ref":"deliveryelement.html#dir"},{"type":"extras","title":"draggable - DeliveryElement","doc":"• **draggable**: `boolean`\n\n#### Inherited from\n\nHTMLElement.draggable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6227\n\n___","ref":"deliveryelement.html#draggable"},{"type":"extras","title":"enterKeyHint - DeliveryElement","doc":"• **enterKeyHint**: `string`\n\n#### Inherited from\n\nHTMLElement.enterKeyHint\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4888\n\n___","ref":"deliveryelement.html#enterkeyhint"},{"type":"extras","title":"firstChild - DeliveryElement","doc":"• `Readonly` **firstChild**: ``null`` \\| `ChildNode`\n\nReturns the first child.\n\n#### Inherited from\n\nHTMLElement.firstChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9779\n\n___","ref":"deliveryelement.html#firstchild"},{"type":"extras","title":"firstElementChild - DeliveryElement","doc":"• `Readonly` **firstElementChild**: ``null`` \\| `Element`\n\nReturns the first child that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.firstElementChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10144\n\n___","ref":"deliveryelement.html#firstelementchild"},{"type":"extras","title":"hidden - DeliveryElement","doc":"• **hidden**: `boolean`\n\n#### Inherited from\n\nHTMLElement.hidden\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6228\n\n___","ref":"deliveryelement.html#hidden"},{"type":"extras","title":"id - DeliveryElement","doc":"• **id**: `string`\n\nReturns the value of element's id content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.id\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4778\n\n___","ref":"deliveryelement.html#id"},{"type":"extras","title":"innerHTML - DeliveryElement","doc":"• **innerHTML**: `string`\n\n#### Inherited from\n\nHTMLElement.innerHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:8777\n\n___","ref":"deliveryelement.html#innerhtml"},{"type":"extras","title":"innerText - DeliveryElement","doc":"• **innerText**: `string`\n\n#### Inherited from\n\nHTMLElement.innerText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6229\n\n___","ref":"deliveryelement.html#innertext"},{"type":"extras","title":"inputMode - DeliveryElement","doc":"• **inputMode**: `string`\n\n#### Inherited from\n\nHTMLElement.inputMode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4889\n\n___","ref":"deliveryelement.html#inputmode"},{"type":"extras","title":"isConnected - DeliveryElement","doc":"• `Readonly` **isConnected**: `boolean`\n\nReturns true if node is connected and false otherwise.\n\n#### Inherited from\n\nHTMLElement.isConnected\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9781\n\n___","ref":"deliveryelement.html#isconnected"},{"type":"extras","title":"isContentEditable - DeliveryElement","doc":"• `Readonly` **isContentEditable**: `boolean`\n\n#### Inherited from\n\nHTMLElement.isContentEditable\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4890\n\n___","ref":"deliveryelement.html#iscontenteditable"},{"type":"extras","title":"lang - DeliveryElement","doc":"• **lang**: `string`\n\n#### Inherited from\n\nHTMLElement.lang\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6230\n\n___","ref":"deliveryelement.html#lang"},{"type":"extras","title":"lastChild - DeliveryElement","doc":"• `Readonly` **lastChild**: ``null`` \\| `ChildNode`\n\nReturns the last child.\n\n#### Inherited from\n\nHTMLElement.lastChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9783\n\n___","ref":"deliveryelement.html#lastchild"},{"type":"extras","title":"lastElementChild - DeliveryElement","doc":"• `Readonly` **lastElementChild**: ``null`` \\| `Element`\n\nReturns the last child that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.lastElementChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10146\n\n___","ref":"deliveryelement.html#lastelementchild"},{"type":"extras","title":"localName - DeliveryElement","doc":"• `Readonly` **localName**: `string`\n\nReturns the local name.\n\n#### Inherited from\n\nHTMLElement.localName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4780\n\n___","ref":"deliveryelement.html#localname"},{"type":"extras","title":"mountPoint - DeliveryElement","doc":"• **mountPoint**: `HTMLDivElement`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:211](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L211)\n\n___","ref":"deliveryelement.html#mountpoint"},{"type":"extras","title":"namespaceURI - DeliveryElement","doc":"• `Readonly` **namespaceURI**: ``null`` \\| `string`\n\nReturns the namespace.\n\n#### Inherited from\n\nHTMLElement.namespaceURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4782\n\n___","ref":"deliveryelement.html#namespaceuri"},{"type":"extras","title":"nextElementSibling - DeliveryElement","doc":"• `Readonly` **nextElementSibling**: ``null`` \\| `Element`\n\nReturns the first following sibling that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.nextElementSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9942\n\n___","ref":"deliveryelement.html#nextelementsibling"},{"type":"extras","title":"nextSibling - DeliveryElement","doc":"• `Readonly` **nextSibling**: ``null`` \\| `ChildNode`\n\nReturns the next sibling.\n\n#### Inherited from\n\nHTMLElement.nextSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9785\n\n___","ref":"deliveryelement.html#nextsibling"},{"type":"extras","title":"nodeName - DeliveryElement","doc":"• `Readonly` **nodeName**: `string`\n\nReturns a string appropriate for the type of node.\n\n#### Inherited from\n\nHTMLElement.nodeName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9787\n\n___","ref":"deliveryelement.html#nodename"},{"type":"extras","title":"nodeType - DeliveryElement","doc":"• `Readonly` **nodeType**: `number`\n\nReturns the type of node.\n\n#### Inherited from\n\nHTMLElement.nodeType\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9789\n\n___","ref":"deliveryelement.html#nodetype"},{"type":"extras","title":"nodeValue - DeliveryElement","doc":"• **nodeValue**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.nodeValue\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9790\n\n___","ref":"deliveryelement.html#nodevalue"},{"type":"extras","title":"nonce - DeliveryElement","doc":"• `Optional` **nonce**: `string`\n\n#### Inherited from\n\nHTMLElement.nonce\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7429\n\n___","ref":"deliveryelement.html#nonce"},{"type":"extras","title":"offsetHeight - DeliveryElement","doc":"• `Readonly` **offsetHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6231\n\n___","ref":"deliveryelement.html#offsetheight"},{"type":"extras","title":"offsetLeft - DeliveryElement","doc":"• `Readonly` **offsetLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6232\n\n___","ref":"deliveryelement.html#offsetleft"},{"type":"extras","title":"offsetParent - DeliveryElement","doc":"• `Readonly` **offsetParent**: ``null`` \\| `Element`\n\n#### Inherited from\n\nHTMLElement.offsetParent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6233\n\n___","ref":"deliveryelement.html#offsetparent"},{"type":"extras","title":"offsetTop - DeliveryElement","doc":"• `Readonly` **offsetTop**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6234\n\n___","ref":"deliveryelement.html#offsettop"},{"type":"extras","title":"offsetWidth - DeliveryElement","doc":"• `Readonly` **offsetWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.offsetWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6235\n\n___","ref":"deliveryelement.html#offsetwidth"},{"type":"extras","title":"onGetData - DeliveryElement","doc":"• `Optional` **onGetData**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`, `payload`: `any`) => `Promise`<`any`\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`, `payload`): `Promise`<`any`\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `payload` | `any` |\n\n##### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:214](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L214)\n\n___","ref":"deliveryelement.html#ongetdata"},{"type":"extras","title":"onReady - DeliveryElement","doc":"• **onReady**: (`attemptGuid`: `string`, `response?`: `any`[]) => `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `response?`): `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `response?` | `any`[] |\n\n##### Returns\n\n`Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:243](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L243)\n\n___","ref":"deliveryelement.html#onready"},{"type":"extras","title":"onRequestHint - DeliveryElement","doc":"• **onRequestHint**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`) => `Promise`<[`RequestHintResponse`](../interfaces/RequestHintResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`): `Promise`<[`RequestHintResponse`](../interfaces/RequestHintResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n\n##### Returns\n\n`Promise`<[`RequestHintResponse`](../interfaces/RequestHintResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:219](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L219)\n\n___","ref":"deliveryelement.html#onrequesthint"},{"type":"extras","title":"onResetActivity - DeliveryElement","doc":"• **onResetActivity**: (`attemptGuid`: `string`) => `Promise`<[`ResetActivityResponse`](../interfaces/ResetActivityResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`): `Promise`<[`ResetActivityResponse`](../interfaces/ResetActivityResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n\n##### Returns\n\n`Promise`<[`ResetActivityResponse`](../interfaces/ResetActivityResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:226](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L226)\n\n___","ref":"deliveryelement.html#onresetactivity"},{"type":"extras","title":"onResetPart - DeliveryElement","doc":"• **onResetPart**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`) => `Promise`<[`PartActivityResponse`](../interfaces/PartActivityResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`): `Promise`<[`PartActivityResponse`](../interfaces/PartActivityResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n\n##### Returns\n\n`Promise`<[`PartActivityResponse`](../interfaces/PartActivityResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:238](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L238)\n\n___","ref":"deliveryelement.html#onresetpart"},{"type":"extras","title":"onResize - DeliveryElement","doc":"• **onResize**: (`attemptGuid`: `string`) => `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`): `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n\n##### Returns\n\n`Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:244](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L244)\n\n___","ref":"deliveryelement.html#onresize"},{"type":"extras","title":"onSaveActivity - DeliveryElement","doc":"• **onSaveActivity**: (`attemptGuid`: `string`, `partResponses`: [`PartResponse`](../modules.md#partresponse)[]) => `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partResponses`): `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partResponses` | [`PartResponse`](../modules.md#partresponse)[] |\n\n##### Returns\n\n`Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:221](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L221)\n\n___","ref":"deliveryelement.html#onsaveactivity"},{"type":"extras","title":"onSavePart - DeliveryElement","doc":"• **onSavePart**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`, `response`: [`StudentResponse`](../interfaces/StudentResponse.md)) => `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`, `response`): `Promise`<[`Success`](../interfaces/Success.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `response` | [`StudentResponse`](../interfaces/StudentResponse.md) |\n\n##### Returns\n\n`Promise`<[`Success`](../interfaces/Success.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:228](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L228)\n\n___","ref":"deliveryelement.html#onsavepart"},{"type":"extras","title":"onSetData - DeliveryElement","doc":"• `Optional` **onSetData**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`, `payload`: `any`) => `Promise`<`any`\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`, `payload`): `Promise`<`any`\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `payload` | `any` |\n\n##### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:215](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L215)\n\n___","ref":"deliveryelement.html#onsetdata"},{"type":"extras","title":"onSubmitActivity - DeliveryElement","doc":"• **onSubmitActivity**: (`attemptGuid`: `string`, `partResponses`: [`PartResponse`](../modules.md#partresponse)[]) => `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partResponses`): `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partResponses` | [`PartResponse`](../modules.md#partresponse)[] |\n\n##### Returns\n\n`Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:222](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L222)\n\n___","ref":"deliveryelement.html#onsubmitactivity"},{"type":"extras","title":"onSubmitEvaluations - DeliveryElement","doc":"• **onSubmitEvaluations**: (`attemptGuid`: `string`, `clientEvaluations`: [`ClientEvaluation`](../modules.md#clientevaluation)[]) => `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `clientEvaluations`): `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `clientEvaluations` | [`ClientEvaluation`](../modules.md#clientevaluation)[] |\n\n##### Returns\n\n`Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:239](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L239)\n\n___","ref":"deliveryelement.html#onsubmitevaluations"},{"type":"extras","title":"onSubmitPart - DeliveryElement","doc":"• **onSubmitPart**: (`attemptGuid`: `string`, `partAttemptGuid`: `string`, `response`: [`StudentResponse`](../interfaces/StudentResponse.md)) => `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Type declaration\n\n▸ (`attemptGuid`, `partAttemptGuid`, `response`): `Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n##### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `string` |\n| `response` | [`StudentResponse`](../interfaces/StudentResponse.md) |\n\n##### Returns\n\n`Promise`<[`EvaluationResponse`](../interfaces/EvaluationResponse.md)\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:233](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L233)\n\n___","ref":"deliveryelement.html#onsubmitpart"},{"type":"extras","title":"onabort - DeliveryElement","doc":"• **onabort**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `UIEvent`) => `any`\n\nFires when the user aborts the download.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onabort\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5542\n\n___","ref":"deliveryelement.html#onabort"},{"type":"extras","title":"onanimationcancel - DeliveryElement","doc":"• **onanimationcancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationcancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5543\n\n___","ref":"deliveryelement.html#onanimationcancel"},{"type":"extras","title":"onanimationend - DeliveryElement","doc":"• **onanimationend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5544\n\n___","ref":"deliveryelement.html#onanimationend"},{"type":"extras","title":"onanimationiteration - DeliveryElement","doc":"• **onanimationiteration**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationiteration\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5545\n\n___","ref":"deliveryelement.html#onanimationiteration"},{"type":"extras","title":"onanimationstart - DeliveryElement","doc":"• **onanimationstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `AnimationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onanimationstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5546\n\n___","ref":"deliveryelement.html#onanimationstart"},{"type":"extras","title":"onauxclick - DeliveryElement","doc":"• **onauxclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onauxclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5547\n\n___","ref":"deliveryelement.html#onauxclick"},{"type":"extras","title":"onblur - DeliveryElement","doc":"• **onblur**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FocusEvent`) => `any`\n\nFires when the object loses the input focus.\n\n**`param`** The focus event.\n\n#### Inherited from\n\nHTMLElement.onblur\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5552\n\n___","ref":"deliveryelement.html#onblur"},{"type":"extras","title":"oncanplay - DeliveryElement","doc":"• **oncanplay**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback is possible, but would require further buffering.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.oncanplay\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5557\n\n___","ref":"deliveryelement.html#oncanplay"},{"type":"extras","title":"oncanplaythrough - DeliveryElement","doc":"• **oncanplaythrough**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncanplaythrough\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5558\n\n___","ref":"deliveryelement.html#oncanplaythrough"},{"type":"extras","title":"onchange - DeliveryElement","doc":"• **onchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the contents of the object or selection have changed.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5563\n\n___","ref":"deliveryelement.html#onchange"},{"type":"extras","title":"onclick - DeliveryElement","doc":"• **onclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the left mouse button on the object\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5568\n\n___","ref":"deliveryelement.html#onclick"},{"type":"extras","title":"onclose - DeliveryElement","doc":"• **onclose**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onclose\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5569\n\n___","ref":"deliveryelement.html#onclose"},{"type":"extras","title":"oncontextmenu - DeliveryElement","doc":"• **oncontextmenu**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the right mouse button in the client area, opening the context menu.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.oncontextmenu\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5574\n\n___","ref":"deliveryelement.html#oncontextmenu"},{"type":"extras","title":"oncopy - DeliveryElement","doc":"• **oncopy**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncopy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4624\n\n___","ref":"deliveryelement.html#oncopy"},{"type":"extras","title":"oncuechange - DeliveryElement","doc":"• **oncuechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncuechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5575\n\n___","ref":"deliveryelement.html#oncuechange"},{"type":"extras","title":"oncut - DeliveryElement","doc":"• **oncut**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.oncut\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4625\n\n___","ref":"deliveryelement.html#oncut"},{"type":"extras","title":"ondblclick - DeliveryElement","doc":"• **ondblclick**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user double-clicks the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.ondblclick\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5580\n\n___","ref":"deliveryelement.html#ondblclick"},{"type":"extras","title":"ondrag - DeliveryElement","doc":"• **ondrag**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object continuously during a drag operation.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondrag\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5585\n\n___","ref":"deliveryelement.html#ondrag"},{"type":"extras","title":"ondragend - DeliveryElement","doc":"• **ondragend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object when the user releases the mouse at the close of a drag operation.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5590\n\n___","ref":"deliveryelement.html#ondragend"},{"type":"extras","title":"ondragenter - DeliveryElement","doc":"• **ondragenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target element when the user drags the object to a valid drop target.\n\n**`param`** The drag event.\n\n#### Inherited from\n\nHTMLElement.ondragenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5595\n\n___","ref":"deliveryelement.html#ondragenter"},{"type":"extras","title":"ondragleave - DeliveryElement","doc":"• **ondragleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target object when the user moves the mouse out of a valid drop target during a drag operation.\n\n**`param`** The drag event.\n\n#### Inherited from\n\nHTMLElement.ondragleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5600\n\n___","ref":"deliveryelement.html#ondragleave"},{"type":"extras","title":"ondragover - DeliveryElement","doc":"• **ondragover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the target element continuously while the user drags the object over a valid drop target.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5605\n\n___","ref":"deliveryelement.html#ondragover"},{"type":"extras","title":"ondragstart - DeliveryElement","doc":"• **ondragstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\nFires on the source object when the user starts to drag a text selection or selected object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondragstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5610\n\n___","ref":"deliveryelement.html#ondragstart"},{"type":"extras","title":"ondrop - DeliveryElement","doc":"• **ondrop**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `DragEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ondrop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5611\n\n___","ref":"deliveryelement.html#ondrop"},{"type":"extras","title":"ondurationchange - DeliveryElement","doc":"• **ondurationchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the duration attribute is updated.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ondurationchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5616\n\n___","ref":"deliveryelement.html#ondurationchange"},{"type":"extras","title":"onemptied - DeliveryElement","doc":"• **onemptied**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the media element is reset to its initial state.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onemptied\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5621\n\n___","ref":"deliveryelement.html#onemptied"},{"type":"extras","title":"onended - DeliveryElement","doc":"• **onended**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the end of playback is reached.\n\n**`param`** The event\n\n#### Inherited from\n\nHTMLElement.onended\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5626\n\n___","ref":"deliveryelement.html#onended"},{"type":"extras","title":"onerror - DeliveryElement","doc":"• **onerror**: `OnErrorEventHandler`\n\nFires when an error occurs during object loading.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onerror\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5631\n\n___","ref":"deliveryelement.html#onerror"},{"type":"extras","title":"onfocus - DeliveryElement","doc":"• **onfocus**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FocusEvent`) => `any`\n\nFires when the object receives focus.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onfocus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5636\n\n___","ref":"deliveryelement.html#onfocus"},{"type":"extras","title":"onformdata - DeliveryElement","doc":"• **onformdata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `FormDataEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onformdata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5637\n\n___","ref":"deliveryelement.html#onformdata"},{"type":"extras","title":"onfullscreenchange - DeliveryElement","doc":"• **onfullscreenchange**: ``null`` \\| (`this`: `Element`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onfullscreenchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4783\n\n___","ref":"deliveryelement.html#onfullscreenchange"},{"type":"extras","title":"onfullscreenerror - DeliveryElement","doc":"• **onfullscreenerror**: ``null`` \\| (`this`: `Element`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onfullscreenerror\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4784\n\n___","ref":"deliveryelement.html#onfullscreenerror"},{"type":"extras","title":"ongotpointercapture - DeliveryElement","doc":"• **ongotpointercapture**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ongotpointercapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5638\n\n___","ref":"deliveryelement.html#ongotpointercapture"},{"type":"extras","title":"oninput - DeliveryElement","doc":"• **oninput**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oninput\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5639\n\n___","ref":"deliveryelement.html#oninput"},{"type":"extras","title":"oninvalid - DeliveryElement","doc":"• **oninvalid**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.oninvalid\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5640\n\n___","ref":"deliveryelement.html#oninvalid"},{"type":"extras","title":"onkeydown - DeliveryElement","doc":"• **onkeydown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user presses a key.\n\n**`param`** The keyboard event\n\n#### Inherited from\n\nHTMLElement.onkeydown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5645\n\n___","ref":"deliveryelement.html#onkeydown"},{"type":"extras","title":"onkeypress - DeliveryElement","doc":"• **onkeypress**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user presses an alphanumeric key.\n\n**`param`** The event.\n\n**`deprecated`**\n\n#### Inherited from\n\nHTMLElement.onkeypress\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5651\n\n___","ref":"deliveryelement.html#onkeypress"},{"type":"extras","title":"onkeyup - DeliveryElement","doc":"• **onkeyup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `KeyboardEvent`) => `any`\n\nFires when the user releases a key.\n\n**`param`** The keyboard event\n\n#### Inherited from\n\nHTMLElement.onkeyup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5656\n\n___","ref":"deliveryelement.html#onkeyup"},{"type":"extras","title":"onload - DeliveryElement","doc":"• **onload**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires immediately after the browser loads the object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onload\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5661\n\n___","ref":"deliveryelement.html#onload"},{"type":"extras","title":"onloadeddata - DeliveryElement","doc":"• **onloadeddata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when media data is loaded at the current playback position.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadeddata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5666\n\n___","ref":"deliveryelement.html#onloadeddata"},{"type":"extras","title":"onloadedmetadata - DeliveryElement","doc":"• **onloadedmetadata**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the duration and dimensions of the media have been determined.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadedmetadata\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5671\n\n___","ref":"deliveryelement.html#onloadedmetadata"},{"type":"extras","title":"onloadstart - DeliveryElement","doc":"• **onloadstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when Internet Explorer begins looking for media data.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onloadstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5676\n\n___","ref":"deliveryelement.html#onloadstart"},{"type":"extras","title":"onlostpointercapture - DeliveryElement","doc":"• **onlostpointercapture**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onlostpointercapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5677\n\n___","ref":"deliveryelement.html#onlostpointercapture"},{"type":"extras","title":"onmousedown - DeliveryElement","doc":"• **onmousedown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user clicks the object with either mouse button.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmousedown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5682\n\n___","ref":"deliveryelement.html#onmousedown"},{"type":"extras","title":"onmouseenter - DeliveryElement","doc":"• **onmouseenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onmouseenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5683\n\n___","ref":"deliveryelement.html#onmouseenter"},{"type":"extras","title":"onmouseleave - DeliveryElement","doc":"• **onmouseleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onmouseleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5684\n\n___","ref":"deliveryelement.html#onmouseleave"},{"type":"extras","title":"onmousemove - DeliveryElement","doc":"• **onmousemove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse over the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmousemove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5689\n\n___","ref":"deliveryelement.html#onmousemove"},{"type":"extras","title":"onmouseout - DeliveryElement","doc":"• **onmouseout**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse pointer outside the boundaries of the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseout\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5694\n\n___","ref":"deliveryelement.html#onmouseout"},{"type":"extras","title":"onmouseover - DeliveryElement","doc":"• **onmouseover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user moves the mouse pointer into the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5699\n\n___","ref":"deliveryelement.html#onmouseover"},{"type":"extras","title":"onmouseup - DeliveryElement","doc":"• **onmouseup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `MouseEvent`) => `any`\n\nFires when the user releases a mouse button while the mouse is over the object.\n\n**`param`** The mouse event.\n\n#### Inherited from\n\nHTMLElement.onmouseup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5704\n\n___","ref":"deliveryelement.html#onmouseup"},{"type":"extras","title":"onpaste - DeliveryElement","doc":"• **onpaste**: ``null`` \\| (`this`: `DocumentAndElementEventHandlers`, `ev`: `ClipboardEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpaste\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4626\n\n___","ref":"deliveryelement.html#onpaste"},{"type":"extras","title":"onpause - DeliveryElement","doc":"• **onpause**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback is paused.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onpause\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5709\n\n___","ref":"deliveryelement.html#onpause"},{"type":"extras","title":"onplay - DeliveryElement","doc":"• **onplay**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the play method is requested.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onplay\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5714\n\n___","ref":"deliveryelement.html#onplay"},{"type":"extras","title":"onplaying - DeliveryElement","doc":"• **onplaying**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the audio or video has started playing.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onplaying\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5719\n\n___","ref":"deliveryelement.html#onplaying"},{"type":"extras","title":"onpointercancel - DeliveryElement","doc":"• **onpointercancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointercancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5720\n\n___","ref":"deliveryelement.html#onpointercancel"},{"type":"extras","title":"onpointerdown - DeliveryElement","doc":"• **onpointerdown**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerdown\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5721\n\n___","ref":"deliveryelement.html#onpointerdown"},{"type":"extras","title":"onpointerenter - DeliveryElement","doc":"• **onpointerenter**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerenter\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5722\n\n___","ref":"deliveryelement.html#onpointerenter"},{"type":"extras","title":"onpointerleave - DeliveryElement","doc":"• **onpointerleave**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerleave\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5723\n\n___","ref":"deliveryelement.html#onpointerleave"},{"type":"extras","title":"onpointermove - DeliveryElement","doc":"• **onpointermove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointermove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5724\n\n___","ref":"deliveryelement.html#onpointermove"},{"type":"extras","title":"onpointerout - DeliveryElement","doc":"• **onpointerout**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerout\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5725\n\n___","ref":"deliveryelement.html#onpointerout"},{"type":"extras","title":"onpointerover - DeliveryElement","doc":"• **onpointerover**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerover\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5726\n\n___","ref":"deliveryelement.html#onpointerover"},{"type":"extras","title":"onpointerup - DeliveryElement","doc":"• **onpointerup**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `PointerEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onpointerup\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5727\n\n___","ref":"deliveryelement.html#onpointerup"},{"type":"extras","title":"onprogress - DeliveryElement","doc":"• **onprogress**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `ProgressEvent`<`EventTarget`\\>) => `any`\n\nOccurs to indicate progress while downloading media data.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onprogress\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5732\n\n___","ref":"deliveryelement.html#onprogress"},{"type":"extras","title":"onratechange - DeliveryElement","doc":"• **onratechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the playback rate is increased or decreased.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onratechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5737\n\n___","ref":"deliveryelement.html#onratechange"},{"type":"extras","title":"onreset - DeliveryElement","doc":"• **onreset**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the user resets a form.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onreset\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5742\n\n___","ref":"deliveryelement.html#onreset"},{"type":"extras","title":"onresize - DeliveryElement","doc":"• **onresize**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `UIEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onresize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5743\n\n___","ref":"deliveryelement.html#onresize"},{"type":"extras","title":"onscroll - DeliveryElement","doc":"• **onscroll**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the user repositions the scroll box in the scroll bar on the object.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onscroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5748\n\n___","ref":"deliveryelement.html#onscroll"},{"type":"extras","title":"onsecuritypolicyviolation - DeliveryElement","doc":"• **onsecuritypolicyviolation**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `SecurityPolicyViolationEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onsecuritypolicyviolation\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5749\n\n___","ref":"deliveryelement.html#onsecuritypolicyviolation"},{"type":"extras","title":"onseeked - DeliveryElement","doc":"• **onseeked**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the seek operation ends.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onseeked\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5754\n\n___","ref":"deliveryelement.html#onseeked"},{"type":"extras","title":"onseeking - DeliveryElement","doc":"• **onseeking**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the current playback position is moved.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onseeking\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5759\n\n___","ref":"deliveryelement.html#onseeking"},{"type":"extras","title":"onselect - DeliveryElement","doc":"• **onselect**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nFires when the current selection changes.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onselect\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5764\n\n___","ref":"deliveryelement.html#onselect"},{"type":"extras","title":"onselectionchange - DeliveryElement","doc":"• **onselectionchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onselectionchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5765\n\n___","ref":"deliveryelement.html#onselectionchange"},{"type":"extras","title":"onselectstart - DeliveryElement","doc":"• **onselectstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onselectstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5766\n\n___","ref":"deliveryelement.html#onselectstart"},{"type":"extras","title":"onslotchange - DeliveryElement","doc":"• **onslotchange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.onslotchange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5767\n\n___","ref":"deliveryelement.html#onslotchange"},{"type":"extras","title":"onstalled - DeliveryElement","doc":"• **onstalled**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the download has stopped.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onstalled\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5772\n\n___","ref":"deliveryelement.html#onstalled"},{"type":"extras","title":"onsubmit - DeliveryElement","doc":"• **onsubmit**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `SubmitEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onsubmit\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5773\n\n___","ref":"deliveryelement.html#onsubmit"},{"type":"extras","title":"onsuspend - DeliveryElement","doc":"• **onsuspend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs if the load operation has been intentionally halted.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onsuspend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5778\n\n___","ref":"deliveryelement.html#onsuspend"},{"type":"extras","title":"ontimeupdate - DeliveryElement","doc":"• **ontimeupdate**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs to indicate the current playback position.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.ontimeupdate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5783\n\n___","ref":"deliveryelement.html#ontimeupdate"},{"type":"extras","title":"ontoggle - DeliveryElement","doc":"• **ontoggle**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontoggle\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5784\n\n___","ref":"deliveryelement.html#ontoggle"},{"type":"extras","title":"ontouchcancel - DeliveryElement","doc":"• `Optional` **ontouchcancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchcancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5785\n\n___","ref":"deliveryelement.html#ontouchcancel"},{"type":"extras","title":"ontouchend - DeliveryElement","doc":"• `Optional` **ontouchend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5786\n\n___","ref":"deliveryelement.html#ontouchend"},{"type":"extras","title":"ontouchmove - DeliveryElement","doc":"• `Optional` **ontouchmove**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchmove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5787\n\n___","ref":"deliveryelement.html#ontouchmove"},{"type":"extras","title":"ontouchstart - DeliveryElement","doc":"• `Optional` **ontouchstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TouchEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontouchstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5788\n\n___","ref":"deliveryelement.html#ontouchstart"},{"type":"extras","title":"ontransitioncancel - DeliveryElement","doc":"• **ontransitioncancel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitioncancel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5789\n\n___","ref":"deliveryelement.html#ontransitioncancel"},{"type":"extras","title":"ontransitionend - DeliveryElement","doc":"• **ontransitionend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5790\n\n___","ref":"deliveryelement.html#ontransitionend"},{"type":"extras","title":"ontransitionrun - DeliveryElement","doc":"• **ontransitionrun**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionrun\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5791\n\n___","ref":"deliveryelement.html#ontransitionrun"},{"type":"extras","title":"ontransitionstart - DeliveryElement","doc":"• **ontransitionstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `TransitionEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.ontransitionstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5792\n\n___","ref":"deliveryelement.html#ontransitionstart"},{"type":"extras","title":"onvolumechange - DeliveryElement","doc":"• **onvolumechange**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when the volume is changed, or playback is muted or unmuted.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onvolumechange\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5797\n\n___","ref":"deliveryelement.html#onvolumechange"},{"type":"extras","title":"onwaiting - DeliveryElement","doc":"• **onwaiting**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\nOccurs when playback stops because the next frame of a video resource is not available.\n\n**`param`** The event.\n\n#### Inherited from\n\nHTMLElement.onwaiting\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5802\n\n___","ref":"deliveryelement.html#onwaiting"},{"type":"extras","title":"onwebkitanimationend - DeliveryElement","doc":"• **onwebkitanimationend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationend`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5804\n\n___","ref":"deliveryelement.html#onwebkitanimationend"},{"type":"extras","title":"onwebkitanimationiteration - DeliveryElement","doc":"• **onwebkitanimationiteration**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationiteration`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationiteration\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5806\n\n___","ref":"deliveryelement.html#onwebkitanimationiteration"},{"type":"extras","title":"onwebkitanimationstart - DeliveryElement","doc":"• **onwebkitanimationstart**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `onanimationstart`.\n\n#### Inherited from\n\nHTMLElement.onwebkitanimationstart\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5808\n\n___","ref":"deliveryelement.html#onwebkitanimationstart"},{"type":"extras","title":"onwebkittransitionend - DeliveryElement","doc":"• **onwebkittransitionend**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `Event`) => `any`\n\n**`deprecated`** This is a legacy alias of `ontransitionend`.\n\n#### Inherited from\n\nHTMLElement.onwebkittransitionend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5810\n\n___","ref":"deliveryelement.html#onwebkittransitionend"},{"type":"extras","title":"onwheel - DeliveryElement","doc":"• **onwheel**: ``null`` \\| (`this`: `GlobalEventHandlers`, `ev`: `WheelEvent`) => `any`\n\n#### Inherited from\n\nHTMLElement.onwheel\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5811\n\n___","ref":"deliveryelement.html#onwheel"},{"type":"extras","title":"outerHTML - DeliveryElement","doc":"• **outerHTML**: `string`\n\n#### Inherited from\n\nHTMLElement.outerHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4785\n\n___","ref":"deliveryelement.html#outerhtml"},{"type":"extras","title":"outerText - DeliveryElement","doc":"• **outerText**: `string`\n\n#### Inherited from\n\nHTMLElement.outerText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6236\n\n___","ref":"deliveryelement.html#outertext"},{"type":"extras","title":"ownerDocument - DeliveryElement","doc":"• `Readonly` **ownerDocument**: `Document`\n\n#### Inherited from\n\nHTMLElement.ownerDocument\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4786\n\n___","ref":"deliveryelement.html#ownerdocument"},{"type":"extras","title":"parentElement - DeliveryElement","doc":"• `Readonly` **parentElement**: ``null`` \\| `HTMLElement`\n\nReturns the parent element.\n\n#### Inherited from\n\nHTMLElement.parentElement\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9794\n\n___","ref":"deliveryelement.html#parentelement"},{"type":"extras","title":"parentNode - DeliveryElement","doc":"• `Readonly` **parentNode**: ``null`` \\| `ParentNode`\n\nReturns the parent.\n\n#### Inherited from\n\nHTMLElement.parentNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9796\n\n___","ref":"deliveryelement.html#parentnode"},{"type":"extras","title":"part - DeliveryElement","doc":"• `Readonly` **part**: `DOMTokenList`\n\n#### Inherited from\n\nHTMLElement.part\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4787\n\n___","ref":"deliveryelement.html#part"},{"type":"extras","title":"prefix - DeliveryElement","doc":"• `Readonly` **prefix**: ``null`` \\| `string`\n\nReturns the namespace prefix.\n\n#### Inherited from\n\nHTMLElement.prefix\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4789\n\n___","ref":"deliveryelement.html#prefix"},{"type":"extras","title":"previousElementSibling - DeliveryElement","doc":"• `Readonly` **previousElementSibling**: ``null`` \\| `Element`\n\nReturns the first preceding sibling that is an element, and null otherwise.\n\n#### Inherited from\n\nHTMLElement.previousElementSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9944\n\n___","ref":"deliveryelement.html#previouselementsibling"},{"type":"extras","title":"previousSibling - DeliveryElement","doc":"• `Readonly` **previousSibling**: ``null`` \\| `ChildNode`\n\nReturns the previous sibling.\n\n#### Inherited from\n\nHTMLElement.previousSibling\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9798\n\n___","ref":"deliveryelement.html#previoussibling"},{"type":"extras","title":"review - DeliveryElement","doc":"• **review**: `boolean`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:213](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L213)\n\n___","ref":"deliveryelement.html#review"},{"type":"extras","title":"scrollHeight - DeliveryElement","doc":"• `Readonly` **scrollHeight**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollHeight\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4790\n\n___","ref":"deliveryelement.html#scrollheight"},{"type":"extras","title":"scrollLeft - DeliveryElement","doc":"• **scrollLeft**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollLeft\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4791\n\n___","ref":"deliveryelement.html#scrollleft"},{"type":"extras","title":"scrollTop - DeliveryElement","doc":"• **scrollTop**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollTop\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4792\n\n___","ref":"deliveryelement.html#scrolltop"},{"type":"extras","title":"scrollWidth - DeliveryElement","doc":"• `Readonly` **scrollWidth**: `number`\n\n#### Inherited from\n\nHTMLElement.scrollWidth\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4793\n\n___","ref":"deliveryelement.html#scrollwidth"},{"type":"extras","title":"shadowRoot - DeliveryElement","doc":"• `Readonly` **shadowRoot**: ``null`` \\| `ShadowRoot`\n\nReturns element's shadow root, if any, and if shadow root's mode is \"open\", and null otherwise.\n\n#### Inherited from\n\nHTMLElement.shadowRoot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4795\n\n___","ref":"deliveryelement.html#shadowroot"},{"type":"extras","title":"slot - DeliveryElement","doc":"• **slot**: `string`\n\nReturns the value of element's slot content attribute. Can be set to change it.\n\n#### Inherited from\n\nHTMLElement.slot\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4797\n\n___","ref":"deliveryelement.html#slot"},{"type":"extras","title":"spellcheck - DeliveryElement","doc":"• **spellcheck**: `boolean`\n\n#### Inherited from\n\nHTMLElement.spellcheck\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6237\n\n___","ref":"deliveryelement.html#spellcheck"},{"type":"extras","title":"style - DeliveryElement","doc":"• `Readonly` **style**: `CSSStyleDeclaration`\n\n#### Inherited from\n\nHTMLElement.style\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4883\n\n___","ref":"deliveryelement.html#style"},{"type":"extras","title":"tabIndex - DeliveryElement","doc":"• **tabIndex**: `number`\n\n#### Inherited from\n\nHTMLElement.tabIndex\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7430\n\n___","ref":"deliveryelement.html#tabindex"},{"type":"extras","title":"tagName - DeliveryElement","doc":"• `Readonly` **tagName**: `string`\n\nReturns the HTML-uppercased qualified name.\n\n#### Inherited from\n\nHTMLElement.tagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4799\n\n___","ref":"deliveryelement.html#tagname"},{"type":"extras","title":"textContent - DeliveryElement","doc":"• **textContent**: ``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.textContent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9799\n\n___","ref":"deliveryelement.html#textcontent"},{"type":"extras","title":"title - DeliveryElement","doc":"• **title**: `string`\n\n#### Inherited from\n\nHTMLElement.title\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6238\n\n___","ref":"deliveryelement.html#title"},{"type":"extras","title":"translate - DeliveryElement","doc":"• **translate**: `boolean`\n\n#### Inherited from\n\nHTMLElement.translate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6239","ref":"deliveryelement.html#translate"},{"type":"extras","title":"Accessors - DeliveryElement","doc":"","ref":"deliveryelement.html#accessors"},{"type":"extras","title":"observedAttributes - DeliveryElement","doc":"• `Static` `get` **observedAttributes**(): `string`[]\n\n#### Returns\n\n`string`[]\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:285](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L285)","ref":"deliveryelement.html#observedattributes"},{"type":"extras","title":"Methods - DeliveryElement","doc":"","ref":"deliveryelement.html#methods"},{"type":"extras","title":"addEventListener - DeliveryElement","doc":"▸ **addEventListener**<`K`\\>(`type`, `listener`, `options?`): `void`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementEventMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `K` |\n| `listener` | (`this`: `HTMLElement`, `ev`: `HTMLElementEventMap`[`K`]) => `any` |\n| `options?` | `boolean` \\| `AddEventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.addEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6242\n\n▸ **addEventListener**(`type`, `listener`, `options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `string` |\n| `listener` | `EventListenerOrEventListenerObject` |\n| `options?` | `boolean` \\| `AddEventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.addEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6243\n\n___","ref":"deliveryelement.html#addeventlistener"},{"type":"extras","title":"after - DeliveryElement","doc":"▸ **after**(...`nodes`): `void`\n\nInserts nodes just after node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.after\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3497\n\n___","ref":"deliveryelement.html#after"},{"type":"extras","title":"animate - DeliveryElement","doc":"▸ **animate**(`keyframes`, `options?`): `Animation`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `keyframes` | ``null`` \\| `Keyframe`[] \\| `PropertyIndexedKeyframes` |\n| `options?` | `number` \\| `KeyframeAnimationOptions` |\n\n#### Returns\n\n`Animation`\n\n#### Inherited from\n\nHTMLElement.animate\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1978\n\n___","ref":"deliveryelement.html#animate"},{"type":"extras","title":"append - DeliveryElement","doc":"▸ **append**(...`nodes`): `void`\n\nInserts nodes after the last child of node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.append\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10152\n\n___","ref":"deliveryelement.html#append"},{"type":"extras","title":"appendChild - DeliveryElement","doc":"▸ **appendChild**<`T`\\>(`node`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.appendChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9800\n\n___","ref":"deliveryelement.html#appendchild"},{"type":"extras","title":"attachInternals - DeliveryElement","doc":"▸ **attachInternals**(): `ElementInternals`\n\n#### Returns\n\n`ElementInternals`\n\n#### Inherited from\n\nHTMLElement.attachInternals\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6240\n\n___","ref":"deliveryelement.html#attachinternals"},{"type":"extras","title":"attachShadow - DeliveryElement","doc":"▸ **attachShadow**(`init`): `ShadowRoot`\n\nCreates a shadow root for element and returns it.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `init` | `ShadowRootInit` |\n\n#### Returns\n\n`ShadowRoot`\n\n#### Inherited from\n\nHTMLElement.attachShadow\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4801\n\n___","ref":"deliveryelement.html#attachshadow"},{"type":"extras","title":"attributeChangedCallback - DeliveryElement","doc":"▸ **attributeChangedCallback**(`_name`, `_oldValue`, `_newValue`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `_name` | `any` |\n| `_oldValue` | `any` |\n| `_newValue` | `any` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:389](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L389)\n\n___","ref":"deliveryelement.html#attributechangedcallback"},{"type":"extras","title":"before - DeliveryElement","doc":"▸ **before**(...`nodes`): `void`\n\nInserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.before\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3503\n\n___","ref":"deliveryelement.html#before"},{"type":"extras","title":"blur - DeliveryElement","doc":"▸ **blur**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.blur\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7431\n\n___","ref":"deliveryelement.html#blur"},{"type":"extras","title":"click - DeliveryElement","doc":"▸ **click**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.click\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6241\n\n___","ref":"deliveryelement.html#click"},{"type":"extras","title":"cloneNode - DeliveryElement","doc":"▸ **cloneNode**(`deep?`): `Node`\n\nReturns a copy of node. If deep is true, the copy also includes the node's descendants.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `deep?` | `boolean` |\n\n#### Returns\n\n`Node`\n\n#### Inherited from\n\nHTMLElement.cloneNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9802\n\n___","ref":"deliveryelement.html#clonenode"},{"type":"extras","title":"closest - DeliveryElement","doc":"▸ **closest**<`K`\\>(`selector`): ``null`` \\| `HTMLElementTagNameMap`[`K`]\n\nReturns the first (starting at element) inclusive ancestor that matches selectors, and null otherwise.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selector` | `K` |\n\n#### Returns\n\n``null`` \\| `HTMLElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4803\n\n▸ **closest**<`K`\\>(`selector`): ``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selector` | `K` |\n\n#### Returns\n\n``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4804\n\n▸ **closest**<`E`\\>(`selectors`): ``null`` \\| `E`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n``null`` \\| `E`\n\n#### Inherited from\n\nHTMLElement.closest\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4805\n\n___","ref":"deliveryelement.html#closest"},{"type":"extras","title":"compareDocumentPosition - DeliveryElement","doc":"▸ **compareDocumentPosition**(`other`): `number`\n\nReturns a bitmask indicating the position of other relative to node.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `other` | `Node` |\n\n#### Returns\n\n`number`\n\n#### Inherited from\n\nHTMLElement.compareDocumentPosition\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9804\n\n___","ref":"deliveryelement.html#comparedocumentposition"},{"type":"extras","title":"connectedCallback - DeliveryElement","doc":"▸ **connectedCallback**(): `void`\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:380](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L380)\n\n___","ref":"deliveryelement.html#connectedcallback"},{"type":"extras","title":"contains - DeliveryElement","doc":"▸ **contains**(`other`): `boolean`\n\nReturns true if other is an inclusive descendant of node, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `other` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.contains\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9806\n\n___","ref":"deliveryelement.html#contains"},{"type":"extras","title":"details - DeliveryElement","doc":"▸ **details**(`continuation`, `attemptGuid`, `partAttemptGuid`, `payload?`): `Object`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `continuation` | (`result`: `any`, `error`: `any`) => `void` |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `undefined` \\| `string` |\n| `payload?` | `any` |\n\n#### Returns\n\n`Object`\n\n| Name | Type |\n| :------ | :------ |\n| `bubbles` | `boolean` |\n| `detail` | { `attemptGuid`: `string` ; `continuation`: (`result`: `any`, `error`: `any`) => `void` ; `partAttemptGuid`: `undefined` \\| `string` ; `payload`: `any` ; `props`: [`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\> ; `sectionSlug`: `string` = props.context.sectionSlug } |\n| `detail.attemptGuid` | `string` |\n| `detail.continuation` | (`result`: `any`, `error`: `any`) => `void` |\n| `detail.partAttemptGuid` | `undefined` \\| `string` |\n| `detail.payload` | `any` |\n| `detail.props` | [`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\> |\n| `detail.sectionSlug` | `string` |\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:348](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L348)\n\n___","ref":"deliveryelement.html#details"},{"type":"extras","title":"dispatch - DeliveryElement","doc":"▸ **dispatch**(`name`, `attemptGuid`, `partAttemptGuid`, `payload?`): `Promise`<`any`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `name` | `string` |\n| `attemptGuid` | `string` |\n| `partAttemptGuid` | `undefined` \\| `string` |\n| `payload?` | `any` |\n\n#### Returns\n\n`Promise`<`any`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:289](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L289)\n\n___","ref":"deliveryelement.html#dispatch"},{"type":"extras","title":"dispatchEvent - DeliveryElement","doc":"▸ **dispatchEvent**(`event`): `boolean`\n\nDispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `event` | `Event` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.dispatchEvent\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:5033\n\n___","ref":"deliveryelement.html#dispatchevent"},{"type":"extras","title":"focus - DeliveryElement","doc":"▸ **focus**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `FocusOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.focus\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:7432\n\n___","ref":"deliveryelement.html#focus"},{"type":"extras","title":"getAnimations - DeliveryElement","doc":"▸ **getAnimations**(`options?`): `Animation`[]\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `GetAnimationsOptions` |\n\n#### Returns\n\n`Animation`[]\n\n#### Inherited from\n\nHTMLElement.getAnimations\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:1979\n\n___","ref":"deliveryelement.html#getanimations"},{"type":"extras","title":"getAttribute - DeliveryElement","doc":"▸ **getAttribute**(`qualifiedName`): ``null`` \\| `string`\n\nReturns element's first attribute whose qualified name is qualifiedName, and null if there is no such attribute otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.getAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4807\n\n___","ref":"deliveryelement.html#getattribute"},{"type":"extras","title":"getAttributeNS - DeliveryElement","doc":"▸ **getAttributeNS**(`namespace`, `localName`): ``null`` \\| `string`\n\nReturns element's attribute whose namespace is namespace and local name is localName, and null if there is no such attribute otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.getAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4809\n\n___","ref":"deliveryelement.html#getattributens"},{"type":"extras","title":"getAttributeNames - DeliveryElement","doc":"▸ **getAttributeNames**(): `string`[]\n\nReturns the qualified names of all element's attributes. Can contain duplicates.\n\n#### Returns\n\n`string`[]\n\n#### Inherited from\n\nHTMLElement.getAttributeNames\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4811\n\n___","ref":"deliveryelement.html#getattributenames"},{"type":"extras","title":"getAttributeNode - DeliveryElement","doc":"▸ **getAttributeNode**(`qualifiedName`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.getAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4812\n\n___","ref":"deliveryelement.html#getattributenode"},{"type":"extras","title":"getAttributeNodeNS - DeliveryElement","doc":"▸ **getAttributeNodeNS**(`namespace`, `localName`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.getAttributeNodeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4813\n\n___","ref":"deliveryelement.html#getattributenodens"},{"type":"extras","title":"getBoundingClientRect - DeliveryElement","doc":"▸ **getBoundingClientRect**(): `DOMRect`\n\n#### Returns\n\n`DOMRect`\n\n#### Inherited from\n\nHTMLElement.getBoundingClientRect\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4814\n\n___","ref":"deliveryelement.html#getboundingclientrect"},{"type":"extras","title":"getClientRects - DeliveryElement","doc":"▸ **getClientRects**(): `DOMRectList`\n\n#### Returns\n\n`DOMRectList`\n\n#### Inherited from\n\nHTMLElement.getClientRects\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4815\n\n___","ref":"deliveryelement.html#getclientrects"},{"type":"extras","title":"getElementsByClassName - DeliveryElement","doc":"▸ **getElementsByClassName**(`classNames`): `HTMLCollectionOf`<`Element`\\>\n\nReturns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `classNames` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByClassName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4817\n\n___","ref":"deliveryelement.html#getelementsbyclassname"},{"type":"extras","title":"getElementsByTagName - DeliveryElement","doc":"▸ **getElementsByTagName**<`K`\\>(`qualifiedName`): `HTMLCollectionOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `K` |\n\n#### Returns\n\n`HTMLCollectionOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4818\n\n▸ **getElementsByTagName**<`K`\\>(`qualifiedName`): `HTMLCollectionOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `K` |\n\n#### Returns\n\n`HTMLCollectionOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4819\n\n▸ **getElementsByTagName**(`qualifiedName`): `HTMLCollectionOf`<`Element`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagName\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4820\n\n___","ref":"deliveryelement.html#getelementsbytagname"},{"type":"extras","title":"getElementsByTagNameNS - DeliveryElement","doc":"▸ **getElementsByTagNameNS**(`namespaceURI`, `localName`): `HTMLCollectionOf`<`HTMLElement`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespaceURI` | ``\"http://www.w3.org/1999/xhtml\"`` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`HTMLElement`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4821\n\n▸ **getElementsByTagNameNS**(`namespaceURI`, `localName`): `HTMLCollectionOf`<`SVGElement`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespaceURI` | ``\"http://www.w3.org/2000/svg\"`` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`SVGElement`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4822\n\n▸ **getElementsByTagNameNS**(`namespace`, `localName`): `HTMLCollectionOf`<`Element`\\>\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`HTMLCollectionOf`<`Element`\\>\n\n#### Inherited from\n\nHTMLElement.getElementsByTagNameNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4823\n\n___","ref":"deliveryelement.html#getelementsbytagnamens"},{"type":"extras","title":"getRootNode - DeliveryElement","doc":"▸ **getRootNode**(`options?`): `Node`\n\nReturns node's root.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `GetRootNodeOptions` |\n\n#### Returns\n\n`Node`\n\n#### Inherited from\n\nHTMLElement.getRootNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9808\n\n___","ref":"deliveryelement.html#getrootnode"},{"type":"extras","title":"hasAttribute - DeliveryElement","doc":"▸ **hasAttribute**(`qualifiedName`): `boolean`\n\nReturns true if element has an attribute whose qualified name is qualifiedName, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4825\n\n___","ref":"deliveryelement.html#hasattribute"},{"type":"extras","title":"hasAttributeNS - DeliveryElement","doc":"▸ **hasAttributeNS**(`namespace`, `localName`): `boolean`\n\nReturns true if element has an attribute whose namespace is namespace and local name is localName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4827\n\n___","ref":"deliveryelement.html#hasattributens"},{"type":"extras","title":"hasAttributes - DeliveryElement","doc":"▸ **hasAttributes**(): `boolean`\n\nReturns true if element has attributes, and false otherwise.\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasAttributes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4829\n\n___","ref":"deliveryelement.html#hasattributes"},{"type":"extras","title":"hasChildNodes - DeliveryElement","doc":"▸ **hasChildNodes**(): `boolean`\n\nReturns whether node has children.\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasChildNodes\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9810\n\n___","ref":"deliveryelement.html#haschildnodes"},{"type":"extras","title":"hasPointerCapture - DeliveryElement","doc":"▸ **hasPointerCapture**(`pointerId`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.hasPointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4830\n\n___","ref":"deliveryelement.html#haspointercapture"},{"type":"extras","title":"insertAdjacentElement - DeliveryElement","doc":"▸ **insertAdjacentElement**(`where`, `element`): ``null`` \\| `Element`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `where` | `InsertPosition` |\n| `element` | `Element` |\n\n#### Returns\n\n``null`` \\| `Element`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentElement\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4831\n\n___","ref":"deliveryelement.html#insertadjacentelement"},{"type":"extras","title":"insertAdjacentHTML - DeliveryElement","doc":"▸ **insertAdjacentHTML**(`position`, `text`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `position` | `InsertPosition` |\n| `text` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentHTML\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4832\n\n___","ref":"deliveryelement.html#insertadjacenthtml"},{"type":"extras","title":"insertAdjacentText - DeliveryElement","doc":"▸ **insertAdjacentText**(`where`, `data`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `where` | `InsertPosition` |\n| `data` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.insertAdjacentText\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4833\n\n___","ref":"deliveryelement.html#insertadjacenttext"},{"type":"extras","title":"insertBefore - DeliveryElement","doc":"▸ **insertBefore**<`T`\\>(`node`, `child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `T` |\n| `child` | ``null`` \\| `Node` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.insertBefore\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9811\n\n___","ref":"deliveryelement.html#insertbefore"},{"type":"extras","title":"isDefaultNamespace - DeliveryElement","doc":"▸ **isDefaultNamespace**(`namespace`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isDefaultNamespace\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9812\n\n___","ref":"deliveryelement.html#isdefaultnamespace"},{"type":"extras","title":"isEqualNode - DeliveryElement","doc":"▸ **isEqualNode**(`otherNode`): `boolean`\n\nReturns whether node and otherNode have the same properties.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `otherNode` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isEqualNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9814\n\n___","ref":"deliveryelement.html#isequalnode"},{"type":"extras","title":"isSameNode - DeliveryElement","doc":"▸ **isSameNode**(`otherNode`): `boolean`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `otherNode` | ``null`` \\| `Node` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.isSameNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9815\n\n___","ref":"deliveryelement.html#issamenode"},{"type":"extras","title":"lookupNamespaceURI - DeliveryElement","doc":"▸ **lookupNamespaceURI**(`prefix`): ``null`` \\| `string`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `prefix` | ``null`` \\| `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.lookupNamespaceURI\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9816\n\n___","ref":"deliveryelement.html#lookupnamespaceuri"},{"type":"extras","title":"lookupPrefix - DeliveryElement","doc":"▸ **lookupPrefix**(`namespace`): ``null`` \\| `string`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n\n#### Returns\n\n``null`` \\| `string`\n\n#### Inherited from\n\nHTMLElement.lookupPrefix\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9817\n\n___","ref":"deliveryelement.html#lookupprefix"},{"type":"extras","title":"matches - DeliveryElement","doc":"▸ **matches**(`selectors`): `boolean`\n\nReturns true if matching selectors against element's root yields element, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.matches\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4835\n\n___","ref":"deliveryelement.html#matches"},{"type":"extras","title":"normalize - DeliveryElement","doc":"▸ **normalize**(): `void`\n\nRemoves empty exclusive Text nodes and concatenates the data of remaining contiguous exclusive Text nodes into the first of their nodes.\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.normalize\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9819\n\n___","ref":"deliveryelement.html#normalize"},{"type":"extras","title":"notify - DeliveryElement","doc":"▸ **notify**(`eventName`, `payload`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `eventName` | `string` |\n| `payload` | `any` |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:313](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L313)\n\n___","ref":"deliveryelement.html#notify"},{"type":"extras","title":"prepend - DeliveryElement","doc":"▸ **prepend**(...`nodes`): `void`\n\nInserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.prepend\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10158\n\n___","ref":"deliveryelement.html#prepend"},{"type":"extras","title":"props - DeliveryElement","doc":"▸ **props**(): [`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\>\n\n#### Returns\n\n[`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\>\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:317](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L317)\n\n___","ref":"deliveryelement.html#props"},{"type":"extras","title":"querySelector - DeliveryElement","doc":"▸ **querySelector**<`K`\\>(`selectors`): ``null`` \\| `HTMLElementTagNameMap`[`K`]\n\nReturns the first element that is a descendant of node that matches selectors.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n``null`` \\| `HTMLElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10160\n\n▸ **querySelector**<`K`\\>(`selectors`): ``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n``null`` \\| `SVGElementTagNameMap`[`K`]\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10161\n\n▸ **querySelector**<`E`\\>(`selectors`): ``null`` \\| `E`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n``null`` \\| `E`\n\n#### Inherited from\n\nHTMLElement.querySelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10162\n\n___","ref":"deliveryelement.html#queryselector"},{"type":"extras","title":"querySelectorAll - DeliveryElement","doc":"▸ **querySelectorAll**<`K`\\>(`selectors`): `NodeListOf`<`HTMLElementTagNameMap`[`K`]\\>\n\nReturns all element descendants of node that match selectors.\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n`NodeListOf`<`HTMLElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10164\n\n▸ **querySelectorAll**<`K`\\>(`selectors`): `NodeListOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `SVGElementTagNameMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `K` |\n\n#### Returns\n\n`NodeListOf`<`SVGElementTagNameMap`[`K`]\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10165\n\n▸ **querySelectorAll**<`E`\\>(`selectors`): `NodeListOf`<`E`\\>\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `E` | extends `Element` = `Element` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`NodeListOf`<`E`\\>\n\n#### Inherited from\n\nHTMLElement.querySelectorAll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10166\n\n___","ref":"deliveryelement.html#queryselectorall"},{"type":"extras","title":"releasePointerCapture - DeliveryElement","doc":"▸ **releasePointerCapture**(`pointerId`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.releasePointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4836\n\n___","ref":"deliveryelement.html#releasepointercapture"},{"type":"extras","title":"remove - DeliveryElement","doc":"▸ **remove**(): `void`\n\nRemoves node.\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.remove\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3505\n\n___","ref":"deliveryelement.html#remove"},{"type":"extras","title":"removeAttribute - DeliveryElement","doc":"▸ **removeAttribute**(`qualifiedName`): `void`\n\nRemoves element's first attribute whose qualified name is qualifiedName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4838\n\n___","ref":"deliveryelement.html#removeattribute"},{"type":"extras","title":"removeAttributeNS - DeliveryElement","doc":"▸ **removeAttributeNS**(`namespace`, `localName`): `void`\n\nRemoves element's attribute whose namespace is namespace and local name is localName.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `localName` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4840\n\n___","ref":"deliveryelement.html#removeattributens"},{"type":"extras","title":"removeAttributeNode - DeliveryElement","doc":"▸ **removeAttributeNode**(`attr`): `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n`Attr`\n\n#### Inherited from\n\nHTMLElement.removeAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4841\n\n___","ref":"deliveryelement.html#removeattributenode"},{"type":"extras","title":"removeChild - DeliveryElement","doc":"▸ **removeChild**<`T`\\>(`child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `child` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.removeChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9820\n\n___","ref":"deliveryelement.html#removechild"},{"type":"extras","title":"removeEventListener - DeliveryElement","doc":"▸ **removeEventListener**<`K`\\>(`type`, `listener`, `options?`): `void`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `K` | extends keyof `HTMLElementEventMap` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `K` |\n| `listener` | (`this`: `HTMLElement`, `ev`: `HTMLElementEventMap`[`K`]) => `any` |\n| `options?` | `boolean` \\| `EventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6244\n\n▸ **removeEventListener**(`type`, `listener`, `options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `type` | `string` |\n| `listener` | `EventListenerOrEventListenerObject` |\n| `options?` | `boolean` \\| `EventListenerOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.removeEventListener\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:6245\n\n___","ref":"deliveryelement.html#removeeventlistener"},{"type":"extras","title":"render - DeliveryElement","doc":"▸ `Abstract` **render**(`mountPoint`, `props`): `void`\n\nImplemented by concrete web component, the `render` method is called\nonce after the web component has been mounted and \"connected\" to the DOM, and\nthen again every time that either the `state` or `model` attributes have\nchanged on the web component.\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `mountPoint` | `HTMLDivElement` | a top level div element created by the component that the concrete impl can use to render the rest of the actual UX |\n| `props` | [`DeliveryElementProps`](../interfaces/DeliveryElementProps.md)<`T`\\> | the current set of delivery component properties |\n\n#### Returns\n\n`void`\n\n#### Defined in\n\n[src/components/activities/DeliveryElement.ts:378](https://github.com/Simon-Initiative/oli-torus/blob/3322732/assets/src/components/activities/DeliveryElement.ts#L378)\n\n___","ref":"deliveryelement.html#render"},{"type":"extras","title":"replaceChild - DeliveryElement","doc":"▸ **replaceChild**<`T`\\>(`node`, `child`): `T`\n\n#### Type parameters\n\n| Name | Type |\n| :------ | :------ |\n| `T` | extends `Node` |\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `node` | `Node` |\n| `child` | `T` |\n\n#### Returns\n\n`T`\n\n#### Inherited from\n\nHTMLElement.replaceChild\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:9821\n\n___","ref":"deliveryelement.html#replacechild"},{"type":"extras","title":"replaceChildren - DeliveryElement","doc":"▸ **replaceChildren**(...`nodes`): `void`\n\nReplace all children of node with nodes, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.replaceChildren\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:10172\n\n___","ref":"deliveryelement.html#replacechildren"},{"type":"extras","title":"replaceWith - DeliveryElement","doc":"▸ **replaceWith**(...`nodes`): `void`\n\nReplaces node with nodes, while replacing strings in nodes with equivalent Text nodes.\n\nThrows a \"HierarchyRequestError\" DOMException if the constraints of the node tree are violated.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `...nodes` | (`string` \\| `Node`)[] |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.replaceWith\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:3511\n\n___","ref":"deliveryelement.html#replacewith"},{"type":"extras","title":"requestFullscreen - DeliveryElement","doc":"▸ **requestFullscreen**(`options?`): `Promise`<`void`\\>\n\nDisplays element fullscreen and resolves promise when done.\n\nWhen supplied, options's navigationUI member indicates whether showing navigation UI while in fullscreen is preferred or not. If set to \"show\", navigation simplicity is preferred over screen space, and if set to \"hide\", more screen space is preferred. User agents are always free to honor user preference over the application's. The default value \"auto\" indicates no application preference.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `FullscreenOptions` |\n\n#### Returns\n\n`Promise`<`void`\\>\n\n#### Inherited from\n\nHTMLElement.requestFullscreen\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4847\n\n___","ref":"deliveryelement.html#requestfullscreen"},{"type":"extras","title":"requestPointerLock - DeliveryElement","doc":"▸ **requestPointerLock**(): `void`\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.requestPointerLock\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4848\n\n___","ref":"deliveryelement.html#requestpointerlock"},{"type":"extras","title":"scroll - DeliveryElement","doc":"▸ **scroll**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4849\n\n▸ **scroll**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scroll\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4850\n\n___","ref":"deliveryelement.html#scroll"},{"type":"extras","title":"scrollBy - DeliveryElement","doc":"▸ **scrollBy**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollBy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4851\n\n▸ **scrollBy**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollBy\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4852\n\n___","ref":"deliveryelement.html#scrollby"},{"type":"extras","title":"scrollIntoView - DeliveryElement","doc":"▸ **scrollIntoView**(`arg?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `arg?` | `boolean` \\| `ScrollIntoViewOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollIntoView\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4853\n\n___","ref":"deliveryelement.html#scrollintoview"},{"type":"extras","title":"scrollTo - DeliveryElement","doc":"▸ **scrollTo**(`options?`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `options?` | `ScrollToOptions` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollTo\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4854\n\n▸ **scrollTo**(`x`, `y`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `x` | `number` |\n| `y` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.scrollTo\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4855\n\n___","ref":"deliveryelement.html#scrollto"},{"type":"extras","title":"setAttribute - DeliveryElement","doc":"▸ **setAttribute**(`qualifiedName`, `value`): `void`\n\nSets the value of element's first attribute whose qualified name is qualifiedName to value.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n| `value` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4857\n\n___","ref":"deliveryelement.html#setattribute"},{"type":"extras","title":"setAttributeNS - DeliveryElement","doc":"▸ **setAttributeNS**(`namespace`, `qualifiedName`, `value`): `void`\n\nSets the value of element's attribute whose namespace is namespace and local name is localName to value.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `namespace` | ``null`` \\| `string` |\n| `qualifiedName` | `string` |\n| `value` | `string` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setAttributeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4859\n\n___","ref":"deliveryelement.html#setattributens"},{"type":"extras","title":"setAttributeNode - DeliveryElement","doc":"▸ **setAttributeNode**(`attr`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.setAttributeNode\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4860\n\n___","ref":"deliveryelement.html#setattributenode"},{"type":"extras","title":"setAttributeNodeNS - DeliveryElement","doc":"▸ **setAttributeNodeNS**(`attr`): ``null`` \\| `Attr`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `attr` | `Attr` |\n\n#### Returns\n\n``null`` \\| `Attr`\n\n#### Inherited from\n\nHTMLElement.setAttributeNodeNS\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4861\n\n___","ref":"deliveryelement.html#setattributenodens"},{"type":"extras","title":"setPointerCapture - DeliveryElement","doc":"▸ **setPointerCapture**(`pointerId`): `void`\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `pointerId` | `number` |\n\n#### Returns\n\n`void`\n\n#### Inherited from\n\nHTMLElement.setPointerCapture\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4862\n\n___","ref":"deliveryelement.html#setpointercapture"},{"type":"extras","title":"toggleAttribute - DeliveryElement","doc":"▸ **toggleAttribute**(`qualifiedName`, `force?`): `boolean`\n\nIf force is not given, \"toggles\" qualifiedName, removing it if it is present and adding it if it is not present. If force is true, adds qualifiedName. If force is false, removes qualifiedName.\n\nReturns true if qualifiedName is now present, and false otherwise.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `qualifiedName` | `string` |\n| `force?` | `boolean` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.toggleAttribute\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4868\n\n___","ref":"deliveryelement.html#toggleattribute"},{"type":"extras","title":"webkitMatchesSelector - DeliveryElement","doc":"▸ **webkitMatchesSelector**(`selectors`): `boolean`\n\n**`deprecated`** This is a legacy alias of `matches`.\n\n#### Parameters\n\n| Name | Type |\n| :------ | :------ |\n| `selectors` | `string` |\n\n#### Returns\n\n`boolean`\n\n#### Inherited from\n\nHTMLElement.webkitMatchesSelector\n\n#### Defined in\n\nnode_modules/typescript/lib/lib.dom.d.ts:4870","ref":"deliveryelement.html#webkitmatchesselector"}],"producer":{"name":"ex_doc","version":[48,46,51,52,46,50]},"content_type":"text/markdown"} \ No newline at end of file diff --git a/evaluationresponse.html b/evaluationresponse.html index 05df0f6b18..ffd882ec5e 100644 --- a/evaluationresponse.html +++ b/evaluationresponse.html @@ -145,13 +145,13 @@

actions

-

actions: Action[]

Defined in

src/components/activities/DeliveryElement.ts:20


+

actions: Action[]

Defined in

src/components/activities/DeliveryElement.ts:20


type

-

type: "success"

Inherited from

Success.type

Defined in

src/components/activities/types.ts:111

+

type: "success"

Inherited from

Success.type

Defined in

src/components/activities/types.ts:111

diff --git a/explanation.html b/explanation.html index d36de50ab3..a9c56cff77 100644 --- a/explanation.html +++ b/explanation.html @@ -145,19 +145,19 @@

content

-

content: RichText

Inherited from

HasContent.content

Defined in

src/components/activities/types.ts:118


+

content: RichText

Inherited from

HasContent.content

Defined in

src/components/activities/types.ts:118


id

-

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


+

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


textDirection

-

Optional textDirection: TextDirection

Inherited from

SpecifiesTextDirection.textDirection

Defined in

src/components/activities/types.ts:360

+

Optional textDirection: TextDirection

Inherited from

SpecifiesTextDirection.textDirection

Defined in

src/components/activities/types.ts:360

diff --git a/feedback.html b/feedback.html index 729164fc64..1c5dbe2584 100644 --- a/feedback.html +++ b/feedback.html @@ -145,25 +145,25 @@

content

-

content: RichText

Inherited from

HasContent.content

Defined in

src/components/activities/types.ts:118


+

content: RichText

Inherited from

HasContent.content

Defined in

src/components/activities/types.ts:118


editor

-

Optional editor: "slate" \| "markdown"

Inherited from

SpecifiesEditor.editor

Defined in

src/components/activities/types.ts:364


+

Optional editor: "slate" \| "markdown"

Inherited from

SpecifiesEditor.editor

Defined in

src/components/activities/types.ts:364


id

-

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


+

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


textDirection

-

Optional textDirection: TextDirection

Inherited from

SpecifiesTextDirection.textDirection

Defined in

src/components/activities/types.ts:360

+

Optional textDirection: TextDirection

Inherited from

SpecifiesTextDirection.textDirection

Defined in

src/components/activities/types.ts:360

diff --git a/feedbackaction.html b/feedbackaction.html index d19d40cc39..049e25dc3c 100644 --- a/feedbackaction.html +++ b/feedbackaction.html @@ -145,55 +145,55 @@

attempt_guid

-

attempt_guid: string

Inherited from

IsAction.attempt_guid

Defined in

src/components/activities/types.ts:524


+

attempt_guid: string

Inherited from

IsAction.attempt_guid

Defined in

src/components/activities/types.ts:524


error

-

Optional error: string

Inherited from

IsAction.error

Defined in

src/components/activities/types.ts:525


+

Optional error: string

Inherited from

IsAction.error

Defined in

src/components/activities/types.ts:525


explanation

-

explanation: null \| Explanation

Defined in

src/components/activities/types.ts:551


+

explanation: null \| Explanation

Defined in

src/components/activities/types.ts:551


feedback

-

feedback: Feedback

Defined in

src/components/activities/types.ts:550


+

feedback: Feedback

Defined in

src/components/activities/types.ts:550


out_of

-

out_of: number

Defined in

src/components/activities/types.ts:548


+

out_of: number

Defined in

src/components/activities/types.ts:548


part_id

-

part_id: string

Inherited from

IsAction.part_id

Defined in

src/components/activities/types.ts:526


+

part_id: string

Inherited from

IsAction.part_id

Defined in

src/components/activities/types.ts:526


score

-

score: number

Defined in

src/components/activities/types.ts:549


+

score: number

Defined in

src/components/activities/types.ts:549


show_page

-

show_page: null \| number

Defined in

src/components/activities/types.ts:552


+

show_page: null \| number

Defined in

src/components/activities/types.ts:552


type

-

type: "FeedbackAction"

Defined in

src/components/activities/types.ts:547

+

type: "FeedbackAction"

Defined in

src/components/activities/types.ts:547

diff --git a/gradingapproach.html b/gradingapproach.html index 8a8897383d..5775ad782d 100644 --- a/gradingapproach.html +++ b/gradingapproach.html @@ -139,13 +139,13 @@

automatic

-

automatic = "automatic"

Part will be automatically graded by either the client or server.

Defined in

src/components/activities/types.ts:634


+

automatic = "automatic"

Part will be automatically graded by either the client or server.

Defined in

src/components/activities/types.ts:634


manual

-

manual = "manual"

Part requires manual grading by an instructor.

Defined in

src/components/activities/types.ts:638

+

manual = "manual"

Part requires manual grading by an instructor.

Defined in

src/components/activities/types.ts:638

diff --git a/haschoices.html b/haschoices.html index 42c6a1292a..91356eb355 100644 --- a/haschoices.html +++ b/haschoices.html @@ -139,7 +139,7 @@

choices

-

choices: Choice[]

Defined in

src/components/activities/types.ts:356

+

choices: Choice[]

Defined in

src/components/activities/types.ts:356

diff --git a/hascontent.html b/hascontent.html index 9ddaf632d4..591d3a71b4 100644 --- a/hascontent.html +++ b/hascontent.html @@ -145,7 +145,7 @@

content

-

content: RichText

Defined in

src/components/activities/types.ts:118

+

content: RichText

Defined in

src/components/activities/types.ts:118

diff --git a/hasparts.html b/hasparts.html index d06e7a331f..9741d08c38 100644 --- a/hasparts.html +++ b/hasparts.html @@ -139,7 +139,7 @@

authoring

-

authoring: Object

Type declaration

NameType
partsPart[]

Defined in

src/components/activities/types.ts:614

+

authoring: Object

Type declaration

NameType
partsPart[]

Defined in

src/components/activities/types.ts:614

diff --git a/hasperpartsubmissionoption.html b/hasperpartsubmissionoption.html index 12295ff1a9..4618a42905 100644 --- a/hasperpartsubmissionoption.html +++ b/hasperpartsubmissionoption.html @@ -139,7 +139,7 @@

submitPerPart

-

submitPerPart: boolean

Defined in

src/components/activities/types.ts:435

+

submitPerPart: boolean

Defined in

src/components/activities/types.ts:435

diff --git a/haspreviewtext.html b/haspreviewtext.html index 6151c04e2e..fd3389836c 100644 --- a/haspreviewtext.html +++ b/haspreviewtext.html @@ -139,7 +139,7 @@

authoring

-

authoring: Object

Type declaration

NameType
previewTextstring

Defined in

src/components/activities/types.ts:680

+

authoring: Object

Type declaration

NameType
previewTextstring

Defined in

src/components/activities/types.ts:680

diff --git a/hasstem.html b/hasstem.html index 6298c102c5..de8155b168 100644 --- a/hasstem.html +++ b/hasstem.html @@ -145,55 +145,55 @@

activityType

-

Optional activityType: any

Inherited from

ActivityModelSchema.activityType

Defined in

src/components/activities/types.ts:212


+

Optional activityType: any

Inherited from

ActivityModelSchema.activityType

Defined in

src/components/activities/types.ts:212


activity_id

-

Optional activity_id: string

Inherited from

ActivityModelSchema.activity_id

Defined in

src/components/activities/types.ts:215


+

Optional activity_id: string

Inherited from

ActivityModelSchema.activity_id

Defined in

src/components/activities/types.ts:215


authoring

-

Optional authoring: any

Inherited from

ActivityModelSchema.authoring

Defined in

src/components/activities/types.ts:209


+

Optional authoring: any

Inherited from

ActivityModelSchema.authoring

Defined in

src/components/activities/types.ts:209


bibrefs

-

Optional bibrefs: string[]

Inherited from

ActivityModelSchema.bibrefs

Defined in

src/components/activities/types.ts:214


+

Optional bibrefs: string[]

Inherited from

ActivityModelSchema.bibrefs

Defined in

src/components/activities/types.ts:214


content

-

Optional content: any

Inherited from

ActivityModelSchema.content

Defined in

src/components/activities/types.ts:211


+

Optional content: any

Inherited from

ActivityModelSchema.content

Defined in

src/components/activities/types.ts:211


id

-

Optional id: string

Inherited from

ActivityModelSchema.id

Defined in

src/components/activities/types.ts:213


+

Optional id: string

Inherited from

ActivityModelSchema.id

Defined in

src/components/activities/types.ts:213


learningLanguage

-

Optional learningLanguage: string

Inherited from

ActivityModelSchema.learningLanguage

Defined in

src/components/activities/types.ts:210


+

Optional learningLanguage: string

Inherited from

ActivityModelSchema.learningLanguage

Defined in

src/components/activities/types.ts:210


resourceId

-

Optional resourceId: number

Inherited from

ActivityModelSchema.resourceId

Defined in

src/components/activities/types.ts:208


+

Optional resourceId: number

Inherited from

ActivityModelSchema.resourceId

Defined in

src/components/activities/types.ts:208


stem

-

stem: Stem

Defined in

src/components/activities/types.ts:375

+

stem: Stem

Defined in

src/components/activities/types.ts:375

diff --git a/hastransformations.html b/hastransformations.html index ec5108867f..19eee04645 100644 --- a/hastransformations.html +++ b/hastransformations.html @@ -139,7 +139,7 @@

authoring

-

authoring: Object

Type declaration

NameType
transformationsTransformation[]

Defined in

src/components/activities/types.ts:429

+

authoring: Object

Type declaration

NameType
transformationsTransformation[]

Defined in

src/components/activities/types.ts:429

diff --git a/hint.html b/hint.html index 26bc428f75..b008c70752 100644 --- a/hint.html +++ b/hint.html @@ -145,25 +145,25 @@

content

-

content: RichText

Inherited from

HasContent.content

Defined in

src/components/activities/types.ts:118


+

content: RichText

Inherited from

HasContent.content

Defined in

src/components/activities/types.ts:118


editor

-

Optional editor: "slate" \| "markdown"

Inherited from

SpecifiesEditor.editor

Defined in

src/components/activities/types.ts:364


+

Optional editor: "slate" \| "markdown"

Inherited from

SpecifiesEditor.editor

Defined in

src/components/activities/types.ts:364


id

-

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


+

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


textDirection

-

Optional textDirection: TextDirection

Inherited from

SpecifiesTextDirection.textDirection

Defined in

src/components/activities/types.ts:360

+

Optional textDirection: TextDirection

Inherited from

SpecifiesTextDirection.textDirection

Defined in

src/components/activities/types.ts:360

diff --git a/implementing.html b/implementing.html index 2542d477c1..c2810691bf 100644 --- a/implementing.html +++ b/implementing.html @@ -141,7 +141,7 @@

Step 1: Third-party Initiated Login

-

https://www.imsglobal.org/spec/security/v1p0/#step-1-third-party-initiated-login

An LTI launch begins with a form submission (GET or POST) from a platform webpage. The platform crafts the form using the pre-registered tool configuration and platform details. The form can either target the current window by default or an iframe embedded in the page. For example, this form will target the iframe below it:

controller.ex

launch_params = %{
+

https://www.imsglobal.org/spec/security/v1p0/#step-1-third-party-initiated-login

An LTI launch begins with a form submission (GET or POST) from a platform webpage. The platform crafts the form using the pre-registered tool configuration and platform details. The form can either target the current window by default or an iframe embedded in the page. For example, this form will target the iframe below it:

controller.ex

launch_params = %{
   # client_id must match the value registered with the tool
   client_id: "1000000000001",
 
@@ -156,9 +156,9 @@ 

# unique token used later by the platform to associate the request with this user session login_hint: "ac5cdc6e-1dd2-97f2-e2c8-0d4236e9b092", -} +} -render(conn, "lti_launch.html", launch_params: launch_params)

lti_launch.html.eex

<form
+render(conn, "lti_launch.html", launch_params: launch_params)

lti_launch.html.eex

<form
   action="<%= @launch_params.oidc_login_url %>"
   method="post"
   target="tool_content"
@@ -192,7 +192,7 @@ 

Step 2: Authentication Request

-

https://www.imsglobal.org/spec/security/v1p0/#step-2-authentication-request

When the request is recieved, the tool will validate the issuer and client_id match the registered platform, validate the login_hint param is present and issue a redirect to the platform's OIDC (OpenID Connect) endpoint to authenticate the user.

If validation is successful, the tool will craft the OIDC request with the following parameters:

%{
+

https://www.imsglobal.org/spec/security/v1p0/#step-2-authentication-request

When the request is recieved, the tool will validate the issuer and client_id match the registered platform, validate the login_hint param is present and issue a redirect to the platform's OIDC (OpenID Connect) endpoint to authenticate the user.

If validation is successful, the tool will craft the OIDC request with the following parameters:

%{
   # OIDC and LTI 1.3 required params
   "scope" => "openid",
   "response_type" => "id_token",
@@ -213,18 +213,18 @@ 

# opaque string used by the platform to validate the user session associated with the request "login_hint" => "some-login-hint", -}

For example, the final request using GET to the platform will look something like: +}

For example, the final request using GET to the platform will look something like: GET /authorize_redirect?scope=openid&response_type=id_token&... etc.

Step 3: Authentication Response

-

https://www.imsglobal.org/spec/security/v1p0/#step-3-authentication-response

The platform will recieve the authorize_redirect request from the tool and it will validate the required OIDC params are present, validate the login_hint is associated with the current user session, validate the client_id is associated with a registered tool, validate the redirect_url matches one of the registered urls, and finally validate the nonce has not been used before. If valid, the platform will issue one final POST request to the tool's specified redirect_uri with the recieved state token and an id_token JWT containing the LTI 1.3 claims such as user details, context info, and any other LTI specific or custom claims that may be supported by the platform.

Here is an example of the LTI params within the id_token JWT. Full example resource link request.

%{
+

https://www.imsglobal.org/spec/security/v1p0/#step-3-authentication-response

The platform will recieve the authorize_redirect request from the tool and it will validate the required OIDC params are present, validate the login_hint is associated with the current user session, validate the client_id is associated with a registered tool, validate the redirect_url matches one of the registered urls, and finally validate the nonce has not been used before. If valid, the platform will issue one final POST request to the tool's specified redirect_uri with the recieved state token and an id_token JWT containing the LTI 1.3 claims such as user details, context info, and any other LTI specific or custom claims that may be supported by the platform.

Here is an example of the LTI params within the id_token JWT. Full example resource link request.

%{
   # security claims
   "iss" => "https://platform.example.edu",
   "sub" => "a6d5c443-1f51-4783-ba1a-7686ffe3b54a",
-  "aud" => ["962fa4d8-bcbf-49a0-94b2-2de05ad274af"],
+  "aud" => ["962fa4d8-bcbf-49a0-94b2-2de05ad274af"],
   "exp" => 1510185728,
   "iat" => 1510185228,
   "azp" => "962fa4d8-bcbf-49a0-94b2-2de05ad274af",
@@ -244,28 +244,28 @@ 

"07940580-b309-415e-a37c-914d387c1150", "https://purl.imsglobal.org/spec/lti/claim/message_type" => "LtiResourceLinkRequest", "https://purl.imsglobal.org/spec/lti/claim/version" => "1.3.0", - "https://purl.imsglobal.org/spec/lti/claim/roles" => [ + "https://purl.imsglobal.org/spec/lti/claim/roles" => [ "http://purl.imsglobal.org/vocab/lis/v2/institution/person#Student", "http://purl.imsglobal.org/vocab/lis/v2/membership#Learner", "http://purl.imsglobal.org/vocab/lis/v2/membership#Mentor" - ], - "https://purl.imsglobal.org/spec/lti/claim/role_scope_mentor" => [ + ], + "https://purl.imsglobal.org/spec/lti/claim/role_scope_mentor" => [ "fad5fb29-a91c-770-3c110-1e687120efd9", "5d7373de-c76c-e2b-01214-69e487e2bd33", "d779cfd4-bc7b-019-9bf1a-04bf1915d4d0" - ], - "https://purl.imsglobal.org/spec/lti/claim/context" => { + ], + "https://purl.imsglobal.org/spec/lti/claim/context" => { "id" => "c1d887f0-a1a3-4bca-ae25-c375edcc131a", "label" => "ECON 1010", "title" => "Economics as a Social Science", - "type" => ["http://purl.imsglobal.org/vocab/lis/v2/course#CourseOffering"] - }, - "https://purl.imsglobal.org/spec/lti/claim/resource_link" => { + "type" => ["http://purl.imsglobal.org/vocab/lis/v2/course#CourseOffering"] + }, + "https://purl.imsglobal.org/spec/lti/claim/resource_link" => { "id" => "200d101f-2c14-434a-a0f3-57c2a42369fd", "description" => "Assignment to introduce who you are", "title" => "Introduction Assignment" - }, - "https://purl.imsglobal.org/spec/lti/claim/tool_platform" => { + }, + "https://purl.imsglobal.org/spec/lti/claim/tool_platform" => { "guid" => "ex/48bbb541-ce55-456e-8b7d-ebc59a38d435", "contact_email" => "support@platform.example.edu", "description" => "An Example Tool Platform", @@ -273,32 +273,32 @@

"url" => "https://platform.example.edu", "product_family_code" => "ExamplePlatformVendor-Product", "version" => "1.0" - }, + }, "https://purl.imsglobal.org/spec/lti/claim/target_link_uri": "https://tool.example.com/lti/48320/ruix8782rs", - "https://purl.imsglobal.org/spec/lti/claim/launch_presentation" => { + "https://purl.imsglobal.org/spec/lti/claim/launch_presentation" => { "document_target" => "iframe", "height" => 320, "width" => 240, "return_url" => "https://platform.example.edu/terms/201601/courses/7/sections/1/resources/2" - }, - "https://purl.imsglobal.org/spec/lti/claim/lis" => { + }, + "https://purl.imsglobal.org/spec/lti/claim/lis" => { "person_sourcedid" => "example.edu:71ee7e42-f6d2-414a-80db-b69ac2defd4", "course_offering_sourcedid" => "example.edu:SI182-F16", "course_section_sourcedid" => "example.edu:SI182-001-F16" - }, + }, # additional custom claims - "https://purl.imsglobal.org/spec/lti/claim/custom" => { + "https://purl.imsglobal.org/spec/lti/claim/custom" => { "xstart" => "2017-04-21T01:00:00Z", "request_url" => "https://tool.com/link/123" - }, + }, # additional extensions claims - "http://www.ExamplePlatformVendor.com/session" => { + "http://www.ExamplePlatformVendor.com/session" => { "id" => "89023sj890dju080" - } -}

These params are encoded and signed as a JWT using RSA256 and the platform's private JWK, which can later be verfied by the tool using the platforms publicly accessible JWK.

This redirect POST can be accomplished by rendering an html form and (if enabled) using javascript to submit on the user's behalf.

<!DOCTYPE html>
+  }
+}

These params are encoded and signed as a JWT using RSA256 and the platform's private JWK, which can later be verfied by the tool using the platforms publicly accessible JWK.

This redirect POST can be accomplished by rendering an html form and (if enabled) using javascript to submit on the user's behalf.

<!DOCTYPE html>
 <html lang="en">
   <head>
     <title>You are being redirected...</title>
diff --git a/isaction.html b/isaction.html
index 3c8959c055..8d4431a225 100644
--- a/isaction.html
+++ b/isaction.html
@@ -145,19 +145,19 @@ 

attempt_guid

-

attempt_guid: string

Defined in

src/components/activities/types.ts:524


+

attempt_guid: string

Defined in

src/components/activities/types.ts:524


error

-

Optional error: string

Defined in

src/components/activities/types.ts:525


+

Optional error: string

Defined in

src/components/activities/types.ts:525


part_id

-

part_id: string

Defined in

src/components/activities/types.ts:526

+

part_id: string

Defined in

src/components/activities/types.ts:526

diff --git a/misc.html b/misc.html index 3e4f51b6ea..60bf2b3a7e 100644 --- a/misc.html +++ b/misc.html @@ -134,14 +134,14 @@

Create Registrations from seed

To ease the burden of creating a new registration after every database reset, there is the option to automatically create LTI registrations -attached to the default institution in dev environment by creating a registrations.json file in the project root.

Example:

[{
+attached to the default institution in dev environment by creating a registrations.json file in the project root.

Example:

[{
   "issuer": "https://canvas.oli.cmu.edu",
   "client_id": "XXXXXXXXXXXXX",
   "key_set_url": "https://canvas.oli.cmu.edu/api/lti/security/jwks",
   "auth_token_url": "https://canvas.oli.cmu.edu/login/oauth2/token",
   "auth_login_url": "https://canvas.oli.cmu.edu/api/lti/authorize_redirect",
   "auth_server": "https://canvas.oli.cmu.edu/login/oauth2/token"
-}]

With this file, now when you run mix ecto.seed or mix ecto.reset, a registration with these details will be created for you.

+
}]

With this file, now when you run mix ecto.seed or mix ecto.reset, a registration with these details will be created for you.

diff --git a/modules.html b/modules.html index baeb8e6374..5bbcd9e85a 100644 --- a/modules.html +++ b/modules.html @@ -163,26 +163,26 @@

Action

-

Ƭ Action: NavigationAction \| FeedbackAction \| StateUpdateAction \| SubmissionAction

Supported actions.

Defined in

src/components/activities/types.ts:532


+

Ƭ Action: NavigationAction \| FeedbackAction \| StateUpdateAction \| SubmissionAction

Supported actions.

Defined in

src/components/activities/types.ts:532


ChoiceId

-

Ƭ ChoiceId: ID

Alias for the identifier of a choice.

Defined in

src/components/activities/types.ts:93


+

Ƭ ChoiceId: ID

Alias for the identifier of a choice.

Defined in

src/components/activities/types.ts:93


ChoiceIdsToResponseId

-

Ƭ ChoiceIdsToResponseId: [ChoiceId[], ResponseId]

Defines a mapping of a collection of choices to a response.

Defined in

src/components/activities/types.ts:693


+

Ƭ ChoiceIdsToResponseId: [ChoiceId[], ResponseId]

Defines a mapping of a collection of choices to a response.

Defined in

src/components/activities/types.ts:693


ClientEvaluation

Ƭ ClientEvaluation: Object

Allows submission of a client-side evaluation for an activity -submission.

Type declaration

NameType
attemptGuidstring
feedbackany
outOfnumber | null
responseany
scorenumber | null

Defined in

src/components/activities/types.ts:169


+submission.

Type declaration

NameType
attemptGuidstring
feedbackany
outOfnumber | null
responseany
scorenumber | null

Defined in

src/components/activities/types.ts:169


@@ -193,25 +193,25 @@

'review' mode is when a student is reviewing a previously submitted activity, in a read only mode 'preview' mode is instructor specific and allows access to -responses and hints

Defined in

src/components/activities/types.ts:52


+responses and hints

Defined in

src/components/activities/types.ts:52


FileMetaData

-

Ƭ FileMetaData: Object

File response metadata.

Type declaration

NameType
creationTimenumber
fileSizenumber
urlstring

Defined in

src/components/activities/types.ts:698


+

Ƭ FileMetaData: Object

File response metadata.

Type declaration

NameType
creationTimenumber
fileSizenumber
urlstring

Defined in

src/components/activities/types.ts:698


HasHints

-

Ƭ HasHints: HasParts

Marker interface for an entity that has hints.

Defined in

src/components/activities/types.ts:392


+

Ƭ HasHints: HasParts

Marker interface for an entity that has hints.

Defined in

src/components/activities/types.ts:392


HasStems

-

Ƭ HasStems: Object

Marker interface for an entity that has a collection of stems.

Type declaration

NameType
stemsStem[]

Defined in

src/components/activities/types.ts:380


+

Ƭ HasStems: Object

Marker interface for an entity that has a collection of stems.

Type declaration

NameType
stemsStem[]

Defined in

src/components/activities/types.ts:380


@@ -225,56 +225,56 @@

Torus will display to students, instructors and authors in various contexts. Words within it should be space separated and capitalized. For example: "Multiple Choice"

The descriptions attribute is a slightly longer human readable description of the activity. For example, "A traditional multiple choice question with one correct answer"

delivery and authoring attributes specify the element tag names that the activity -is implemented within.

Type declaration

NameType
authoringModeSpecification
deliveryModeSpecification
descriptionstring
friendlyNamestring
idID

Defined in

src/components/activities/types.ts:196


+is implemented within.

Type declaration

NameType
authoringModeSpecification
deliveryModeSpecification
descriptionstring
friendlyNamestring
idID

Defined in

src/components/activities/types.ts:196


MatchStyle

-

Ƭ MatchStyle: "any" \| "all" \| "none"

Defined in

src/components/activities/types.ts:465


+

Ƭ MatchStyle: "any" \| "all" \| "none"

Defined in

src/components/activities/types.ts:465


MediaItemRequest

-

Ƭ MediaItemRequest: Object

Request for a media item from the media library.

Type declaration

NameType
mimeTypesstring[]
type"MediaItemRequest"

Defined in

src/components/activities/types.ts:57


+

Ƭ MediaItemRequest: Object

Request for a media item from the media library.

Type declaration

NameType
mimeTypesstring[]
type"MediaItemRequest"

Defined in

src/components/activities/types.ts:57


ModeSpecification

-

Ƭ ModeSpecification: Object

Type declaration

NameType
elementstring
entrystring

Defined in

src/components/activities/types.ts:151


+

Ƭ ModeSpecification: Object

Type declaration

NameType
elementstring
entrystring

Defined in

src/components/activities/types.ts:151


PartId

-

Ƭ PartId: ID

Alias for the identifier of a part.

Defined in

src/components/activities/types.ts:98


+

Ƭ PartId: ID

Alias for the identifier of a part.

Defined in

src/components/activities/types.ts:98


PartResponse

Ƭ PartResponse: Object

Type type allows the submission of a response for a specific -part of an activity.

Type declaration

NameType
attemptGuidstring
responseStudentResponse

Defined in

src/components/activities/types.ts:160


+part of an activity.

Type declaration

NameType
attemptGuidstring
responseStudentResponse

Defined in

src/components/activities/types.ts:160


PostUndoable

-

Ƭ PostUndoable: (undoable: Undoable) => void

Type declaration

▸ (undoable): void

Type for the post undo function.

Parameters
NameType
undoableUndoable
Returns

void

Defined in

src/components/activities/types.ts:40


+

Ƭ PostUndoable: (undoable: Undoable) => void

Type declaration

▸ (undoable): void

Type for the post undo function.

Parameters
NameType
undoableUndoable
Returns

void

Defined in

src/components/activities/types.ts:40


ResponseId

-

Ƭ ResponseId: ID

Alias for the identifier of a response.

Defined in

src/components/activities/types.ts:103


+

Ƭ ResponseId: ID

Alias for the identifier of a response.

Defined in

src/components/activities/types.ts:103


RichText

-

Ƭ RichText: ModelElement[]

Rich text definition, an array of ModelElement instances.

Defined in

src/components/activities/types.ts:108


+

Ƭ RichText: ModelElement[]

Rich text definition, an array of ModelElement instances.

Defined in

src/components/activities/types.ts:108


@@ -283,13 +283,13 @@

Ƭ Undoable: Object

An Undoable action that an activity defines as a result of some (usually destructive) operation.

For example, if a choice is deleted via the user interface of an activity, the activity can create and post an Undoable that, if invoked by the -page editor, would result in the choice being restored.

Type declaration

NameType
descriptionstring
operationsPathOperation[]
type"Undoable"

Defined in

src/components/activities/types.ts:70


+page editor, would result in the choice being restored.

Type declaration

NameType
descriptionstring
operationsPathOperation[]
type"Undoable"

Defined in

src/components/activities/types.ts:70


creationFn

-

Ƭ creationFn: (context: CreationContext) => Promise<ActivityModelSchema>

Type declaration

▸ (context): Promise<ActivityModelSchema>

Parameters
NameType
contextCreationContext
Returns

Promise<ActivityModelSchema>

Defined in

src/components/activities/creation.ts:4

+

Ƭ creationFn: (context: CreationContext) => Promise<ActivityModelSchema>

Type declaration

▸ (context): Promise<ActivityModelSchema>

Parameters
NameType
contextCreationContext
Returns

Promise<ActivityModelSchema>

Defined in

src/components/activities/creation.ts:4

@@ -303,19 +303,19 @@

feedbackToString(feedback): string

Converts a rich text feedback, that may contain inline markup and block-level elements, to text.

This function should only be used in contexts where there is a -guarantee that the loss of data via this conversion is not a problem.

Parameters

NameTypeDescription
feedbackFeedbackrich text capable feedback

Returns

string

only the string text found within the feedback

Defined in

src/components/activities/types.ts:21


+guarantee that the loss of data via this conversion is not a problem.

Parameters

NameTypeDescription
feedbackFeedbackrich text capable feedback

Returns

string

only the string text found within the feedback

Defined in

src/components/activities/types.ts:21


invokeCreationFunc

-

invokeCreationFunc(id, context): Promise<ActivityModelSchema>

Parameters

NameType
idstring
contextResourceContext

Returns

Promise<ActivityModelSchema>

Defined in

src/components/activities/creation.ts:26


+

invokeCreationFunc(id, context): Promise<ActivityModelSchema>

Parameters

NameType
idstring
contextResourceContext

Returns

Promise<ActivityModelSchema>

Defined in

src/components/activities/creation.ts:26


makeChoice

-

makeChoice(text, id?): Choice

Helper function to create a choice from simple text.

Parameters

NameType
textstring
id?string

Returns

Choice

Defined in

src/components/activities/types.ts:351


+

makeChoice(text, id?): Choice

Helper function to create a choice from simple text.

Parameters

NameType
textstring
id?string

Returns

Choice

Defined in

src/components/activities/types.ts:351


@@ -323,62 +323,62 @@

makeContent(text, id?): Object

Helper function to create a content object out of a raw string. Returns the string as a single paragraph within rich text, within the content -object.

Parameters

NameTypeDescription
textstringtext string
id?stringoptional identifier

Returns

Object

content

NameType
contentRichText
editorEditorType
idstring
textDirectionTextDirection

Defined in

src/components/activities/types.ts:129


+object.

Parameters

NameTypeDescription
textstringtext string
id?stringoptional identifier

Returns

Object

content

NameType
contentRichText
editorEditorType
idstring
textDirectionTextDirection

Defined in

src/components/activities/types.ts:129


makeFeedback

-

makeFeedback(text): Feedback

Helper function to create Feedback from simple text.

Parameters

NameType
textstring

Returns

Feedback

Defined in

src/components/activities/types.ts:412


+

makeFeedback(text): Feedback

Helper function to create Feedback from simple text.

Parameters

NameType
textstring

Returns

Feedback

Defined in

src/components/activities/types.ts:412


makeHint

-

makeHint(text): Hint

Helper function to create a hint from simple text.

Parameters

NameType
textstring

Returns

Hint

Defined in

src/components/activities/types.ts:396


+

makeHint(text): Hint

Helper function to create a hint from simple text.

Parameters

NameType
textstring

Returns

Hint

Defined in

src/components/activities/types.ts:396


makePart

-

makePart(responses, hints?, id?, targets?): Part

Helper function to create a part.

Parameters

NameTypeDefault valueDescription
responsesResponse[]undefinedresponses to use
hintsHint[]undefinedhints to use
id?stringundefinedthe part id
targetsstring[][]-

Returns

Part

the formulated part

Defined in

src/components/activities/types.ts:593


+

makePart(responses, hints?, id?, targets?): Part

Helper function to create a part.

Parameters

NameTypeDefault valueDescription
responsesResponse[]undefinedresponses to use
hintsHint[]undefinedhints to use
id?stringundefinedthe part id
targetsstring[][]-

Returns

Part

the formulated part

Defined in

src/components/activities/types.ts:593


makePreviewText

-

makePreviewText(): string

Helper function to create preview text.

Returns

string

Defined in

src/components/activities/types.ts:688


+

makePreviewText(): string

Helper function to create preview text.

Returns

string

Defined in

src/components/activities/types.ts:688


makeResponse

-

makeResponse(rule, score, text?, correct?): Response

Helper function to create a response.

Parameters

NameTypeDefault valueDescription
rulestringundefinedmatch rule
scorenumberundefinedscore to assign
textstring''simple text to formulate a Feedback from
correct?booleanundefined-

Returns

Response

Defined in

src/components/activities/types.ts:507


+

makeResponse(rule, score, text?, correct?): Response

Helper function to create a response.

Parameters

NameTypeDefault valueDescription
rulestringundefinedmatch rule
scorenumberundefinedscore to assign
textstring''simple text to formulate a Feedback from
correct?booleanundefined-

Returns

Response

Defined in

src/components/activities/types.ts:507


makeStem

-

makeStem(text): Stem

Helper function to create a stem from a simple string.

Parameters

NameType
textstring

Returns

Stem

Defined in

src/components/activities/types.ts:384


+

makeStem(text): Stem

Helper function to create a stem from a simple string.

Parameters

NameType
textstring

Returns

Stem

Defined in

src/components/activities/types.ts:384


makeTransformation

-

makeTransformation(path, operation, firstAttemptOnly, partId?): Transformation

Helper function to create a transformation.

Parameters

NameTypeDescription
pathstringJSON path of the node within the model to transform
operationshuffleThe transformation operation
firstAttemptOnlyboolean-
partId?string-

Returns

Transformation

Defined in

src/components/activities/types.ts:444


+

makeTransformation(path, operation, firstAttemptOnly, partId?): Transformation

Helper function to create a transformation.

Parameters

NameTypeDescription
pathstringJSON path of the node within the model to transform
operationshuffleThe transformation operation
firstAttemptOnlyboolean-
partId?string-

Returns

Transformation

Defined in

src/components/activities/types.ts:444


makeUndoable

-

makeUndoable(description, operations): Undoable

Helper function to create an instance of an Undoable

Parameters

NameTypeDescription
descriptionstringDescription of the undoable
operationsPathOperation[]Collection of path operations on the model that implements the undoable

Returns

Undoable

an undoable instance

Defined in

src/components/activities/types.ts:82


+

makeUndoable(description, operations): Undoable

Helper function to create an instance of an Undoable

Parameters

NameTypeDescription
descriptionstringDescription of the undoable
operationsPathOperation[]Collection of path operations on the model that implements the undoable

Returns

Undoable

an undoable instance

Defined in

src/components/activities/types.ts:82


register

register(localFile, torusHost, token): Promise<RegistrationResult \| ServerError>

Helper function to register an activity from a zip bundle into a -specific Torus instance.

Parameters

NameTypeDescription
localFilestringpath to the local file that is the activity zip bundle
torusHoststringURL specifying protocol, host and port of the Torus instance to register this activity into. Example: "https://proton.oli.cmu.edu/"
tokenstringencoded API token

Returns

Promise<RegistrationResult \| ServerError>

RegistrationResult on success

Defined in

src/components/activities/registrar.ts:19


+specific Torus instance.

Parameters

NameTypeDescription
localFilestringpath to the local file that is the activity zip bundle
torusHoststringURL specifying protocol, host and port of the Torus instance to register this activity into. Example: "https://proton.oli.cmu.edu/"
tokenstringencoded API token

Returns

Promise<RegistrationResult \| ServerError>

RegistrationResult on success

Defined in

src/components/activities/registrar.ts:19


@@ -391,7 +391,7 @@

activity model. But given the async interface here, a creation function can have a more interesting implementation where it makes a network request to a third-party server to retrieve data to use in constructing the -activity instance.

Parameters

NameTypeDescription
manifestManifestmanifest file JSON
fncreationFnthe creation function to use

Returns

void

Defined in

src/components/activities/creation.ts:18

+activity instance.

Parameters

NameTypeDescription
manifestManifestmanifest file JSON
fncreationFnthe creation function to use

Returns

void

Defined in

src/components/activities/creation.ts:18

diff --git a/navigationaction.html b/navigationaction.html index 0f4eef4491..6ddf623a4e 100644 --- a/navigationaction.html +++ b/navigationaction.html @@ -146,31 +146,31 @@

attempt_guid

-

attempt_guid: string

Inherited from

IsAction.attempt_guid

Defined in

src/components/activities/types.ts:524


+

attempt_guid: string

Inherited from

IsAction.attempt_guid

Defined in

src/components/activities/types.ts:524


error

-

Optional error: string

Inherited from

IsAction.error

Defined in

src/components/activities/types.ts:525


+

Optional error: string

Inherited from

IsAction.error

Defined in

src/components/activities/types.ts:525


part_id

-

part_id: string

Inherited from

IsAction.part_id

Defined in

src/components/activities/types.ts:526


+

part_id: string

Inherited from

IsAction.part_id

Defined in

src/components/activities/types.ts:526


to

-

to: string

Defined in

src/components/activities/types.ts:540


+

to: string

Defined in

src/components/activities/types.ts:540


type

-

type: "NavigationAction"

Defined in

src/components/activities/types.ts:539

+

type: "NavigationAction"

Defined in

src/components/activities/types.ts:539

diff --git a/part.html b/part.html index f1993e1ed5..912fc5540a 100644 --- a/part.html +++ b/part.html @@ -145,55 +145,55 @@

explanation

-

Optional explanation: Feedback

Defined in

src/components/activities/types.ts:578


+

Optional explanation: Feedback

Defined in

src/components/activities/types.ts:578


gradingApproach

-

Optional gradingApproach: GradingApproach

Defined in

src/components/activities/types.ts:580


+

Optional gradingApproach: GradingApproach

Defined in

src/components/activities/types.ts:580


hints

-

hints: Hint[]

Defined in

src/components/activities/types.ts:577


+

hints: Hint[]

Defined in

src/components/activities/types.ts:577


id

-

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


+

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


incorrectScore

-

Optional incorrectScore: null \| number

Defined in

src/components/activities/types.ts:582


+

Optional incorrectScore: null \| number

Defined in

src/components/activities/types.ts:582


outOf

-

Optional outOf: null \| number

Defined in

src/components/activities/types.ts:581


+

Optional outOf: null \| number

Defined in

src/components/activities/types.ts:581


responses

-

responses: Response[]

Defined in

src/components/activities/types.ts:576


+

responses: Response[]

Defined in

src/components/activities/types.ts:576


scoringStrategy

-

scoringStrategy: ScoringStrategy

Defined in

src/components/activities/types.ts:579


+

scoringStrategy: ScoringStrategy

Defined in

src/components/activities/types.ts:579


targets

-

Optional targets: string[]

Defined in

src/components/activities/types.ts:583

+

Optional targets: string[]

Defined in

src/components/activities/types.ts:583

diff --git a/partactivityresponse.html b/partactivityresponse.html index bbdb11556d..f202f3ffdd 100644 --- a/partactivityresponse.html +++ b/partactivityresponse.html @@ -145,13 +145,13 @@

attemptState

-

attemptState: PartState

Defined in

src/components/activities/DeliveryElement.ts:48


+

attemptState: PartState

Defined in

src/components/activities/DeliveryElement.ts:48


type

-

type: "success"

Inherited from

Success.type

Defined in

src/components/activities/types.ts:111

+

type: "success"

Inherited from

Success.type

Defined in

src/components/activities/types.ts:111

diff --git a/partstate.html b/partstate.html index e54c6feded..63a184eeb0 100644 --- a/partstate.html +++ b/partstate.html @@ -140,87 +140,87 @@

attemptGuid

-

attemptGuid: string

The unique identifier of this part attempt.

Defined in

src/components/activities/types.ts:226


+

attemptGuid: string

The unique identifier of this part attempt.

Defined in

src/components/activities/types.ts:226


attemptNumber

-

attemptNumber: number

The number of this attempt.

Defined in

src/components/activities/types.ts:230


+

attemptNumber: number

The number of this attempt.

Defined in

src/components/activities/types.ts:230


dateEvaluated

dateEvaluated: null \| Date

If this attempt has been evaluated, the date of the evaluation, null -if this attempt has not been evaluated.

Defined in

src/components/activities/types.ts:235


+if this attempt has not been evaluated.

Defined in

src/components/activities/types.ts:235


dateSubmitted

dateSubmitted: null \| Date

The date that this attempt was submitted, if it has been submitted, null -if not.

Defined in

src/components/activities/types.ts:241


+if not.

Defined in

src/components/activities/types.ts:241


error

-

Optional error: string

Any error associated with this attempt.

Defined in

src/components/activities/types.ts:282


+

Optional error: string

Any error associated with this attempt.

Defined in

src/components/activities/types.ts:282


explanation

-

explanation: null \| Explanation

Feedback received, if this attempt has been evaluated.

Defined in

src/components/activities/types.ts:262


+

explanation: null \| Explanation

Feedback received, if this attempt has been evaluated.

Defined in

src/components/activities/types.ts:262


feedback

-

feedback: null \| Feedback

Feedback received, if this attempt has been evaluated.

Defined in

src/components/activities/types.ts:258


+

feedback: null \| Feedback

Feedback received, if this attempt has been evaluated.

Defined in

src/components/activities/types.ts:258


hasMoreAttempts

-

hasMoreAttempts: boolean

Whether or not additional attempts exist.

Defined in

src/components/activities/types.ts:274


+

hasMoreAttempts: boolean

Whether or not additional attempts exist.

Defined in

src/components/activities/types.ts:274


hasMoreHints

-

hasMoreHints: boolean

Whether or not additional hints exist.

Defined in

src/components/activities/types.ts:278


+

hasMoreHints: boolean

Whether or not additional hints exist.

Defined in

src/components/activities/types.ts:278


hints

-

hints: []

Hints that were requested and received by the student.

Defined in

src/components/activities/types.ts:266


+

hints: []

Hints that were requested and received by the student.

Defined in

src/components/activities/types.ts:266


outOf

-

outOf: null \| number

Maximum point value that could have been received.

Defined in

src/components/activities/types.ts:250


+

outOf: null \| number

Maximum point value that could have been received.

Defined in

src/components/activities/types.ts:250


partId

-

partId: string \| number

The id of the part that this attempt pertains to.

Defined in

src/components/activities/types.ts:270


+

partId: string \| number

The id of the part that this attempt pertains to.

Defined in

src/components/activities/types.ts:270


response

-

response: any

The student's response.

Defined in

src/components/activities/types.ts:254


+

response: any

The student's response.

Defined in

src/components/activities/types.ts:254


score

-

score: null \| number

Score received. Null if this attempt has not been evaluated.

Defined in

src/components/activities/types.ts:246

+

score: null \| number

Score received. Null if this attempt has not been evaluated.

Defined in

src/components/activities/types.ts:246

diff --git a/registrationresult.html b/registrationresult.html index df937173bf..6bc3dd670e 100644 --- a/registrationresult.html +++ b/registrationresult.html @@ -139,7 +139,7 @@

result

-

result: "success"

Defined in

src/components/activities/registrar.ts:7

+

result: "success"

Defined in

src/components/activities/registrar.ts:7

diff --git a/requesthintresponse.html b/requesthintresponse.html index 16a063af39..f1ed0dcd30 100644 --- a/requesthintresponse.html +++ b/requesthintresponse.html @@ -149,19 +149,19 @@

hasMoreHints

-

hasMoreHints: boolean

Defined in

src/components/activities/DeliveryElement.ts:32


+

hasMoreHints: boolean

Defined in

src/components/activities/DeliveryElement.ts:32


hint

-

Optional hint: Hint

Defined in

src/components/activities/DeliveryElement.ts:31


+

Optional hint: Hint

Defined in

src/components/activities/DeliveryElement.ts:31


type

-

type: "success"

Inherited from

Success.type

Defined in

src/components/activities/types.ts:111

+

type: "success"

Inherited from

Success.type

Defined in

src/components/activities/types.ts:111

diff --git a/resetactivityresponse.html b/resetactivityresponse.html index cfdb7821cf..7850a75161 100644 --- a/resetactivityresponse.html +++ b/resetactivityresponse.html @@ -146,19 +146,19 @@

attemptState

-

attemptState: ActivityState

Defined in

src/components/activities/DeliveryElement.ts:40


+

attemptState: ActivityState

Defined in

src/components/activities/DeliveryElement.ts:40


model

-

model: ActivityModelSchema

Defined in

src/components/activities/DeliveryElement.ts:41


+

model: ActivityModelSchema

Defined in

src/components/activities/DeliveryElement.ts:41


type

-

type: "success"

Inherited from

Success.type

Defined in

src/components/activities/types.ts:111

+

type: "success"

Inherited from

Success.type

Defined in

src/components/activities/types.ts:111

diff --git a/response.html b/response.html index f68eb38707..d47505da59 100644 --- a/response.html +++ b/response.html @@ -145,43 +145,43 @@

correct

-

Optional correct: boolean

Is this response, the default correct response?

Defined in

src/components/activities/types.ts:487


+

Optional correct: boolean

Is this response, the default correct response?

Defined in

src/components/activities/types.ts:487


feedback

-

feedback: Feedback

Feedback to assign if this response matches.

Defined in

src/components/activities/types.ts:482


+

feedback: Feedback

Feedback to assign if this response matches.

Defined in

src/components/activities/types.ts:482


id

-

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


+

id: string

Inherited from

Identifiable.id

Defined in

src/data/content/model/other.ts:4


matchStyle

-

Optional matchStyle: MatchStyle

Defined in

src/components/activities/types.ts:497


+

Optional matchStyle: MatchStyle

Defined in

src/components/activities/types.ts:497


rule

-

rule: string

Rule based match.

Defined in

src/components/activities/types.ts:474


+

rule: string

Rule based match.

Defined in

src/components/activities/types.ts:474


score

-

score: number

Score to assign if this response matches.

Defined in

src/components/activities/types.ts:478


+

score: number

Score to assign if this response matches.

Defined in

src/components/activities/types.ts:478


showPage

-

Optional showPage: number

Optional, show a page by index when this response is evaluated.

Defined in

src/components/activities/types.ts:492

+

Optional showPage: number

Optional, show a page by index when this response is evaluated.

Defined in

src/components/activities/types.ts:492

diff --git a/scoringstrategy.html b/scoringstrategy.html index 2367a6c9b2..2aed3277b9 100644 --- a/scoringstrategy.html +++ b/scoringstrategy.html @@ -140,25 +140,25 @@

average

-

average = "average"

Defined in

src/components/activities/types.ts:646


+

average = "average"

Defined in

src/components/activities/types.ts:646


best

-

best = "best"

Defined in

src/components/activities/types.ts:647


+

best = "best"

Defined in

src/components/activities/types.ts:647


most_recent

-

most_recent = "most_recent"

Defined in

src/components/activities/types.ts:648


+

most_recent = "most_recent"

Defined in

src/components/activities/types.ts:648


total

-

total = "total"

Defined in

src/components/activities/types.ts:649

+

total = "total"

Defined in

src/components/activities/types.ts:649

diff --git a/search.html b/search.html index b11bf5e95c..06af176107 100644 --- a/search.html +++ b/search.html @@ -112,7 +112,7 @@

- +