feat(html): reorganize import paths by use case (#480)

This commit is contained in:
rahim
2026-02-09 20:49:42 +11:00
committed by GitHub
parent 5f5ffb9f0a
commit 870cbb77e4
18 changed files with 178 additions and 84 deletions
@@ -62,6 +62,12 @@ describe('createPlayer', () => {
assertType<string[]>(store.events);
});
it('resolves background features to generic PlayerStore', () => {
const result = createPlayer({ features: features.background });
assertType<CreatePlayerResult<PlayerStore<[]>>>(result);
});
it('resolves extended audio features to generic PlayerStore', () => {
interface AnalyticsState {
events: string[];
@@ -31,4 +31,28 @@ describe('createPlayer', () => {
expect(typeof PlayerElement).toBe('function');
expect(PlayerElement.prototype).toBeDefined();
});
it('creates audio player with expected exports', () => {
const result = createPlayer({ features: features.audio });
expect(result.context).toBeDefined();
expect(result.create).toBeInstanceOf(Function);
expect(result.PlayerController).toBeDefined();
expect(result.PlayerElement).toBeDefined();
expect(result.PlayerMixin).toBeInstanceOf(Function);
expect(result.ProviderMixin).toBeInstanceOf(Function);
expect(result.ContainerMixin).toBeInstanceOf(Function);
});
it('creates background player with expected exports', () => {
const result = createPlayer({ features: features.background });
expect(result.context).toBeDefined();
expect(result.create).toBeInstanceOf(Function);
expect(result.PlayerController).toBeDefined();
expect(result.PlayerElement).toBeDefined();
expect(result.PlayerMixin).toBeInstanceOf(Function);
expect(result.ProviderMixin).toBeInstanceOf(Function);
expect(result.ContainerMixin).toBeInstanceOf(Function);
});
});