Skip to main content

Interface: Tracker

Defined in: tracker.ts:61

The core Tracker contract. Implementations must be idempotent on terminate() and safe to call from any lifecycle event (unload, visibility change).

Properties​

state​

readonly state: TrackerState

Defined in: tracker.ts:88

Read-only snapshot of the tracker's current understanding of lesson state.

Methods​

complete()​

complete(): Promise<void>

Defined in: tracker.ts:76

Mark the lesson complete — translated per standard (lesson_status, completion_status, etc.).

Returns​

Promise<void>


fail()​

fail(): Promise<void>

Defined in: tracker.ts:82

Terminal-fail.

Returns​

Promise<void>


init()​

init(): Promise<boolean>

Defined in: tracker.ts:63

Establish an LMS connection (or a no-op for unlaunched contexts). Returns true on success.

Returns​

Promise<boolean>


pass()​

pass(): Promise<void>

Defined in: tracker.ts:79

Terminal-pass. complete() is still required separately unless the adapter fuses them.

Returns​

Promise<void>


recordInteraction()​

recordInteraction(interaction): Promise<void>

Defined in: tracker.ts:71

Parameters​

interaction​

InteractionResult

Returns​

Promise<void>


setBookmark()​

setBookmark(bookmark): Promise<void>

Defined in: tracker.ts:69

Opaque resume location. SCORM 1.2 caps this at ~4 KB; the adapter enforces that cap.

Parameters​

bookmark​

string

Returns​

Promise<void>


setProgress()​

setProgress(progress): Promise<void>

Defined in: tracker.ts:66

Progress is a scaled value in [0, 1].

Parameters​

progress​

number

Returns​

Promise<void>


setScore()​

setScore(score): Promise<void>

Defined in: tracker.ts:73

Parameters​

score​

Score

Returns​

Promise<void>


terminate()​

terminate(): Promise<void>

Defined in: tracker.ts:85

Flush buffered state and close the LMS API connection. Idempotent.

Returns​

Promise<void>