2.0.1 • Published 9 months ago

svelte-typewrite v2.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

Svelte Typewriter

Typewriter component for Svelte that actually "types" one character at a time instead of just moving the caret at linear speed.

npm.io

Installation

npm i svelte-typewrite

Usage

<script>
	import { TypeWriter } from 'svelte-typewrite'
</script>

<TypeWriter texts={['lorem ipsum', 'dolor sit amet']} />

Props

Required

NameTypeDescription
textsstring[]Array of strings to be displayed

Options

NameTypeDefaultDescription
repeatnumber0How many times texts should be looped over (0 for indefinitely)
endStateEndStateundefinedWhat to do after typing the very last textRequired if repeat > 0
typeSpeednumber60Speed at which the text is typed (in ms/char)
deleteSpeednumber40Speed at which the text is deleted (in ms/char)
blinkDurationnumber600Duration of each "blink" of caret (in ms)
blinkCountnumber3Number of blinks after the text is typed
waitBetweenTextsnumber150How long to wait before starting to type the next text (in ms)Will be ignored if blinksBetweenTexts > 0
blinksBetweenTextsnumberundefinedHow many times the caret should blink before starting to type the next text
interface EndState {
	/** Whether to leave the text typed or deleted */
	text: 'typed' | 'deleted'
	/** Whether to leave the caret visible, hidden, or blinking */
	caret: 'visible' | 'hidden' | 'blink'
}

Callbacks

NameTypeDescription
ontypestart(index: number) => voidRuns when typing animation starts.Receives the index of the text being typed
ontypeend(index: number) => voidRuns when typing animation ends.Receives the index of the text that was just typed
ondeletestart(index: number) => voidRuns when deleting animation starts.Receives the index of the text being deleted
ondeleteend(index: number) => voidRuns when deleting animation ends.Receives the index of the text that was just deleted

!TIP Type of index parameter will properly be "narrowed down" if texts is a tuple (i.e. defined with as const).
Useful if you have noUncheckedIndexedAccess set to true in your tsconfig.json.

2.0.1

9 months ago

1.3.2

1 year ago

1.3.1

1 year ago

1.2.2

1 year ago

1.3.0

1 year ago

1.2.1

1 year ago

2.0.0

1 year ago

1.2.0

1 year ago

1.1.2

1 year ago

1.1.1

1 year ago

1.1.0

1 year ago

1.0.0

1 year ago

0.0.1

2 years ago