import { playerContext } from "./context.js";
import { createContainerMixin } from "../store/container-mixin.js";
import { createProviderMixin } from "../store/provider-mixin.js";
import { PlayerController } from "./player-controller.js";
import { combine, createStore } from "@videojs/store";

//#region src/player/create-player.ts
function createPlayer(config) {
	const slice = combine(...config.features);
	function create() {
		return createStore()(slice);
	}
	return {
		context: playerContext,
		create,
		PlayerController,
		ProviderMixin: createProviderMixin(playerContext, create),
		ContainerMixin: createContainerMixin(playerContext)
	};
}

//#endregion
export { createPlayer };
//# sourceMappingURL=create-player.js.map