Skip to content

eo-typewriterjs


eo-typewriterjs / AudioManagerHelper

Class: AudioManagerHelper

Defined in: core/audio/helpers/audio-manager.helper.ts:164

Description

Runtime audio manager for the typing sound system.

Handles sfx pack resolution, sample selection strategies (shuffle-bag, round-robin, random), volume/playback-rate jitter, overlap control, and graceful no-op in non-browser environments.

Create one instance per typewriter and keep it alive for the session. All settings can be mutated at runtime without restarting playback.

Constructors

Constructor

ts
new AudioManagerHelper(options?): AudioManagerHelper;

Defined in: core/audio/helpers/audio-manager.helper.ts:175

Parameters

ParameterTypeDescription
optionsTAudioOptionsInitial audio configuration. Defaults to enabled with master volume 1 and the built-in sfx pack.

Returns

AudioManagerHelper

Description

Create a new AudioManagerHelper

Methods

setOptions()

ts
setOptions(options): void;

Defined in: core/audio/helpers/audio-manager.helper.ts:189

Parameters

ParameterTypeDescription
optionsTAudioOptionsThe new audio options to apply

Returns

void

Description

Replace the full audio configuration. Resets internal channel selection state so the new sfxs and strategy take effect immediately on the next play call.


setEnabled()

ts
setEnabled(enabled): void;

Defined in: core/audio/helpers/audio-manager.helper.ts:203

Parameters

ParameterTypeDescription
enabledbooleanWhether audio should be enabled

Returns

void

Description

Enable or disable audio globally at runtime


setVolume()

ts
setVolume(volume): void;

Defined in: core/audio/helpers/audio-manager.helper.ts:213

Parameters

ParameterTypeDescription
volumenumberNew master volume

Returns

void

Description

Set the master volume. Clamped to [0, 1].


getOptions()

ts
getOptions(): TAudioOptions;

Defined in: core/audio/helpers/audio-manager.helper.ts:223

Returns

TAudioOptions

The current TAudioOptions

Description

Return a snapshot of the current audio options


playTyping()

ts
playTyping(override?): void;

Defined in: core/audio/helpers/audio-manager.helper.ts:235

Parameters

ParameterTypeDescription
override?TAudioCommandOverrideOptional per-command audio override

Returns

void

Description

Play a typing (insert) sound. Pass a per-command override to use a specific sfx or volume for this keystroke. Pass false to silence this specific keystroke regardless of global settings.


playDelete()

ts
playDelete(override?): void;

Defined in: core/audio/helpers/audio-manager.helper.ts:247

Parameters

ParameterTypeDescription
override?TAudioCommandOverrideOptional per-command audio override

Returns

void

Description

Play a delete sound. Falls back to typing sounds when no dedicated delete channel is configured. Pass false to silence this specific deletion regardless of global settings.

Released under the MIT License.