import { n as __exportAll } from "./chunk-B-1-B7_t.js";
import { computed, createCommentVNode, createElementBlock, defineComponent, normalizeClass, openBlock } from "vue";
//#region src/components/compositions/elements/display/VideoPlayerDisplay.vue?vue&type=script&setup=true&lang.ts
var _hoisted_1 = [
	"src",
	"autoplay",
	"loop",
	"muted"
];
var VideoPlayerDisplay_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
	__name: "VideoPlayerDisplay",
	props: {
		src: {},
		autoplay: { type: Boolean },
		loop: { type: Boolean },
		muted: { type: Boolean },
		classList: {}
	},
	setup(__props) {
		/**
		* Props-driven video display.
		*
		* Renders a native HTML5 `<video controls>` player. Pass `autoplay`,
		* `loop`, and `muted` to enable the corresponding behaviours.
		*/
		const props = __props;
		const rootClass = computed(() => {
			const cl = props.classList;
			if (!cl) return "";
			return Array.isArray(cl) ? cl.join(" ") : cl;
		});
		return (_ctx, _cache) => {
			return openBlock(), createElementBlock("div", {
				class: normalizeClass(["w-full", rootClass.value]),
				"data-testid": "video-display"
			}, [__props.src ? (openBlock(), createElementBlock("video", {
				key: 0,
				controls: "",
				src: __props.src,
				autoplay: __props.autoplay || void 0,
				loop: __props.loop || void 0,
				muted: __props.muted || void 0,
				class: "h-auto w-full rounded border",
				preload: "metadata"
			}, null, 8, _hoisted_1)) : createCommentVNode("", true)], 2);
		};
	}
});
//#endregion
//#region src/components/compositions/elements/display/VideoPlayerDisplay.vue
var VideoPlayerDisplay_exports = /* @__PURE__ */ __exportAll({ default: () => VideoPlayerDisplay_default });
var VideoPlayerDisplay_default = VideoPlayerDisplay_vue_vue_type_script_setup_true_lang_default;
//#endregion
export { VideoPlayerDisplay_exports as n, VideoPlayerDisplay_default as t };

//# sourceMappingURL=VideoPlayerDisplay-l_7ZWBel.js.map