diff --git a/.changeset/ten-trains-sneeze.md b/.changeset/ten-trains-sneeze.md new file mode 100644 index 0000000..6cf3c53 --- /dev/null +++ b/.changeset/ten-trains-sneeze.md @@ -0,0 +1,5 @@ +--- +'svelte-podcast': patch +--- + +fixes exported typings diff --git a/src/lib/components/audio-loader.svelte b/src/lib/components/audio-loader.svelte index b508af8..b4228fa 100644 --- a/src/lib/components/audio-loader.svelte +++ b/src/lib/components/audio-loader.svelte @@ -12,12 +12,12 @@ audio_start_at, } from '$lib/context/audio-internals'; import { user_preferences } from '$lib/context/user-preferences'; - import type { PlayerElement } from '$lib/types/types'; + import type { AudioPlayerElement } from '$lib/types'; import { load_podcast_state } from '$lib/utility/use-state'; import { onMount } from 'svelte'; // readonly values - let element: PlayerElement; + let element: AudioPlayerElement; let current_time = $audio_start_at; let duration = 0; let ended = true; diff --git a/src/lib/context/audio-internals.ts b/src/lib/context/audio-internals.ts index 60ebe79..3310b68 100644 --- a/src/lib/context/audio-internals.ts +++ b/src/lib/context/audio-internals.ts @@ -1,9 +1,9 @@ -import type { PlayerElement } from '$lib/types/types'; +import type { AudioPlayerElement } from '$lib/types'; import { writable } from 'svelte/store'; // readonly - stores will update when bindings change export const audio_current_time = writable(0); -export const audio_element = writable(); +export const audio_element = writable(); export const audio_duration = writable(0); export const audio_ended = writable(false); export const audio_loading = writable(false); diff --git a/src/lib/context/audio-metadata.ts b/src/lib/context/audio-metadata.ts index 344815f..8fd43b1 100644 --- a/src/lib/context/audio-metadata.ts +++ b/src/lib/context/audio-metadata.ts @@ -1,8 +1,4 @@ +import type { AudioMetadata } from '$lib/types'; import { writable } from 'svelte/store'; -export type AudioMetadata = { - title: string; - artwork: string; -}; - export const audio_metadata = writable(null); diff --git a/src/lib/context/audio.ts b/src/lib/context/audio.ts index d041504..6a7f22f 100644 --- a/src/lib/context/audio.ts +++ b/src/lib/context/audio.ts @@ -10,9 +10,10 @@ import { audio_src, audio_start_at, } from '$lib/context/audio-internals'; -import { audio_metadata, type AudioMetadata } from '$lib/context/audio-metadata'; +import { audio_metadata } from '$lib/context/audio-metadata'; import { episode_progress } from '$lib/context/episode-progress'; import { user_preferences } from '$lib/context/user-preferences'; +import type { AudioLoadData, AudioLoadOptions } from '$lib/types'; import { secondsToTimestamp } from '$lib/utility/seconds-to-timestamp'; import { info, warn } from '$pkg/log'; import clamp from 'just-clamp'; @@ -105,13 +106,6 @@ function unmute(type: HandleType = 'set') { } } -export type AudioLoadData = AudioMetadata & { src: string }; - -export type AudioLoadOptions = { - autoplay: boolean; - start_at?: number; -}; - const load = (data: AudioLoadData, opts: AudioLoadOptions) => { episode_progress.stash(); diff --git a/src/lib/context/episode-progress.ts b/src/lib/context/episode-progress.ts index d34fbd5..7bdf2ff 100644 --- a/src/lib/context/episode-progress.ts +++ b/src/lib/context/episode-progress.ts @@ -1,11 +1,8 @@ import { browser } from '$app/environment'; -import { audio, type AudioLoadOptions } from '$lib/context/audio'; +import { audio } from '$lib/context/audio'; +import type { AudioLoadOptions, EpisodeProgress } from '$lib/types'; import { error, info, warn } from '$lib/utility/package/log'; -export type EpisodeProgress = { - current_time: number; -}; - const episode_progress_map = new Map(); function stash_episode() { diff --git a/src/lib/context/user-preferences.ts b/src/lib/context/user-preferences.ts index 21bd6c8..1295a9a 100644 --- a/src/lib/context/user-preferences.ts +++ b/src/lib/context/user-preferences.ts @@ -1,13 +1,9 @@ import { browser } from '$app/environment'; +import type { UserPreferences } from '$lib/types'; import { info, warn } from '$lib/utility/package/log'; import clamp from 'just-clamp'; import { writable } from 'svelte/store'; -export type UserPreferences = { - playback_rate: number; - volume: number; -}; - const default_user_preferences = { playback_rate: 1, volume: 1, diff --git a/src/lib/types.ts b/src/lib/types.ts new file mode 100644 index 0000000..1dfad20 --- /dev/null +++ b/src/lib/types.ts @@ -0,0 +1,24 @@ +export type AudioPlayerElement = HTMLAudioElement | undefined; + +export interface AudioMetadata { + title: string; + artwork: string; +} + +export interface AudioLoadData extends AudioMetadata { + src: string; +} + +export interface AudioLoadOptions { + autoplay: boolean; + start_at?: number; +} + +export interface EpisodeProgress { + current_time: number; +} + +export interface UserPreferences { + playback_rate: number; + volume: number; +} diff --git a/src/lib/types/types.ts b/src/lib/types/types.ts deleted file mode 100644 index d8ee92f..0000000 --- a/src/lib/types/types.ts +++ /dev/null @@ -1 +0,0 @@ -export type PlayerElement = HTMLAudioElement | undefined; diff --git a/src/lib/utility/package/log.ts b/src/lib/utility/package/log.ts index 13d201c..268cc89 100644 --- a/src/lib/utility/package/log.ts +++ b/src/lib/utility/package/log.ts @@ -6,7 +6,7 @@ const useLogger = { warn: console.warn, }; -export type Logger = keyof typeof useLogger; +type Logger = keyof typeof useLogger; export function log(type: Logger, ...content: unknown[]) { const logger = useLogger[type]; diff --git a/src/lib/utility/package/type-guards.ts b/src/lib/utility/package/type-guards.ts index e537435..4f0fc73 100644 --- a/src/lib/utility/package/type-guards.ts +++ b/src/lib/utility/package/type-guards.ts @@ -1,7 +1,7 @@ -export function isBoolean(value: any): value is boolean { +export function isBoolean(value: unknown): value is boolean { return typeof value === 'boolean'; } -export function isNumber(value: any): value is number { +export function isNumber(value: unknown): value is number { return typeof value === 'number' && !isNaN(value); } diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index a2305fa..d659fe4 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -1,11 +1,6 @@