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>