@acoustte-digital-services/digitalstore-controls-dev 0.8.1-dev.20260422085209 → 0.8.1-dev.20260422090829

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  HlsPlayer_default
4
- } from "./chunk-LIMBWZ6H.mjs";
4
+ } from "./chunk-NTZ3IUOL.mjs";
5
5
  export {
6
6
  HlsPlayer_default as default
7
7
  };
@@ -109,6 +109,7 @@ var HlsPlayer = React.memo(
109
109
  {
110
110
  ref: videoRef,
111
111
  className: "w-full h-full object-contain",
112
+ poster: fallbackPoster,
112
113
  controls: showControls && (isMobile || isPlaying),
113
114
  muted: playOptions === "autoplay" || playOptions === "playOnHover",
114
115
  autoPlay: playOptions === "autoplay",
@@ -126,6 +127,25 @@ var HlsPlayer = React.memo(
126
127
  ))
127
128
  }
128
129
  ),
130
+ !isMobile && playOptions === "playOnHover" && fallbackPoster && /* @__PURE__ */ jsxs(
131
+ "picture",
132
+ {
133
+ className: `absolute inset-0 transition-opacity ${isHovered ? "opacity-0" : "opacity-100"}`,
134
+ children: [
135
+ posterSources.map(({ media, posterUrl: src }, i) => /* @__PURE__ */ jsx("source", { media, srcSet: src }, i)),
136
+ /* @__PURE__ */ jsx(
137
+ "img",
138
+ {
139
+ src: fallbackPoster,
140
+ width: intrinsicWidth,
141
+ height: intrinsicHeight,
142
+ alt: "poster",
143
+ className: "w-full h-full object-cover"
144
+ }
145
+ )
146
+ ]
147
+ }
148
+ ),
129
149
  !isMobile && !isPlaying && /* @__PURE__ */ jsx(
130
150
  "div",
131
151
  {
package/dist/index.js CHANGED
@@ -386,6 +386,7 @@ var init_HlsPlayer = __esm({
386
386
  {
387
387
  ref: videoRef,
388
388
  className: "w-full h-full object-contain",
389
+ poster: fallbackPoster,
389
390
  controls: showControls && (isMobile || isPlaying),
390
391
  muted: playOptions === "autoplay" || playOptions === "playOnHover",
391
392
  autoPlay: playOptions === "autoplay",
@@ -403,6 +404,25 @@ var init_HlsPlayer = __esm({
403
404
  ))
404
405
  }
405
406
  ),
407
+ !isMobile && playOptions === "playOnHover" && fallbackPoster && /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
408
+ "picture",
409
+ {
410
+ className: `absolute inset-0 transition-opacity ${isHovered ? "opacity-0" : "opacity-100"}`,
411
+ children: [
412
+ posterSources.map(({ media, posterUrl: src }, i) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("source", { media, srcSet: src }, i)),
413
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
414
+ "img",
415
+ {
416
+ src: fallbackPoster,
417
+ width: intrinsicWidth,
418
+ height: intrinsicHeight,
419
+ alt: "poster",
420
+ className: "w-full h-full object-cover"
421
+ }
422
+ )
423
+ ]
424
+ }
425
+ ),
406
426
  !isMobile && !isPlaying && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
407
427
  "div",
408
428
  {
@@ -5157,7 +5177,6 @@ var ImageGalleryNode = (props) => {
5157
5177
  (img) => !resolveImageUrl(img.imageUrl).endsWith(".m3u8")
5158
5178
  );
5159
5179
  const hlsSources = [
5160
- // Constrained sources in breakpoint order (narrowest first).
5161
5180
  ...DEVICE_ORDER.flatMap((deviceKey) => {
5162
5181
  const img = hlsImages.find((i) => i.device === deviceKey);
5163
5182
  if (!img) return [];
@@ -5167,7 +5186,6 @@ var ImageGalleryNode = (props) => {
5167
5186
  const posterUrl = resolvePosterUrl(img.posterUrl);
5168
5187
  return [{ src, ...media ? { media } : {}, ...posterUrl ? { posterUrl } : {} }];
5169
5188
  }),
5170
- // Unconstrained fallback(s) — no media attr, always matches.
5171
5189
  ...hlsImages.filter((img) => !img.device).map((img) => {
5172
5190
  const src = resolveImageUrl(img.imageUrl);
5173
5191
  const posterUrl = resolvePosterUrl(img.posterUrl);
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  HlsPlayer_default
3
- } from "./chunk-LIMBWZ6H.mjs";
3
+ } from "./chunk-NTZ3IUOL.mjs";
4
4
  import {
5
5
  Button_default,
6
6
  ServiceClient_default,
@@ -2638,7 +2638,7 @@ var DeviceAssetSelector_default = DeviceAssetSelector;
2638
2638
 
2639
2639
  // src/components/pageRenderingEngine/nodes/ImageNode.tsx
2640
2640
  import { Fragment as Fragment3, jsx as jsx39 } from "react/jsx-runtime";
2641
- var HlsPlayer = dynamic(() => import("./HlsPlayer-FCDNZAZ4.mjs"), {
2641
+ var HlsPlayer = dynamic(() => import("./HlsPlayer-KOTCX7MY.mjs"), {
2642
2642
  ssr: false
2643
2643
  });
2644
2644
  var getNestedValue = (obj, path) => {
@@ -4107,7 +4107,7 @@ var Pagination_default = Pagination;
4107
4107
  // src/components/pageRenderingEngine/nodes/ImageGalleryNode.tsx
4108
4108
  import dynamic5 from "next/dynamic";
4109
4109
  import { Fragment as Fragment9, jsx as jsx58, jsxs as jsxs33 } from "react/jsx-runtime";
4110
- var HlsPlayer2 = dynamic5(() => import("./HlsPlayer-FCDNZAZ4.mjs"), { ssr: false });
4110
+ var HlsPlayer2 = dynamic5(() => import("./HlsPlayer-KOTCX7MY.mjs"), { ssr: false });
4111
4111
  var deviceToMediaQuery = (device) => {
4112
4112
  switch (device) {
4113
4113
  case "sm":
@@ -4149,7 +4149,6 @@ var ImageGalleryNode = (props) => {
4149
4149
  (img) => !resolveImageUrl(img.imageUrl).endsWith(".m3u8")
4150
4150
  );
4151
4151
  const hlsSources = [
4152
- // Constrained sources in breakpoint order (narrowest first).
4153
4152
  ...DEVICE_ORDER.flatMap((deviceKey) => {
4154
4153
  const img = hlsImages.find((i) => i.device === deviceKey);
4155
4154
  if (!img) return [];
@@ -4159,7 +4158,6 @@ var ImageGalleryNode = (props) => {
4159
4158
  const posterUrl = resolvePosterUrl(img.posterUrl);
4160
4159
  return [{ src, ...media ? { media } : {}, ...posterUrl ? { posterUrl } : {} }];
4161
4160
  }),
4162
- // Unconstrained fallback(s) — no media attr, always matches.
4163
4161
  ...hlsImages.filter((img) => !img.device).map((img) => {
4164
4162
  const src = resolveImageUrl(img.imageUrl);
4165
4163
  const posterUrl = resolvePosterUrl(img.posterUrl);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acoustte-digital-services/digitalstore-controls-dev",
3
- "version": "0.8.1-dev.20260422085209",
3
+ "version": "0.8.1-dev.20260422090829",
4
4
  "description": "Reusable React components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",