@acoustte-digital-services/digitalstore-controls-dev 0.8.1-dev.20260526122912 → 0.8.1-dev.20260527044956

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.
package/dist/index.js CHANGED
@@ -5248,24 +5248,33 @@ var HlsPlayer3 = (0, import_dynamic7.default)(() => Promise.resolve().then(() =>
5248
5248
  var deviceToMediaQuery = (device) => {
5249
5249
  switch (device) {
5250
5250
  case "sm":
5251
- return "(max-width: 480px)";
5251
+ return "(max-width: 767px)";
5252
5252
  case "md":
5253
- return "(max-width: 768px)";
5253
+ return "(min-width: 768px) and (max-width: 1199px)";
5254
5254
  case "lg":
5255
- return "(min-width: 769px)";
5256
- // case "tv":
5257
- // return "(min-width: 1920px)";
5255
+ return "(min-width: 1200px) and (max-width: 1919px)";
5256
+ case "tv":
5257
+ return "(min-width: 1920px)";
5258
5258
  default:
5259
5259
  return null;
5260
5260
  }
5261
5261
  };
5262
- var DEVICE_ORDER = ["sm", "md", "lg", "tv"];
5263
5262
  var parseMaybeNumber = (value) => {
5264
- if (typeof value === "number") return Number.isFinite(value) ? value : void 0;
5263
+ if (typeof value === "number") {
5264
+ return Number.isFinite(value) ? value : void 0;
5265
+ }
5265
5266
  if (typeof value !== "string") return void 0;
5266
5267
  const n = Number(value);
5267
5268
  return Number.isFinite(n) ? n : void 0;
5268
5269
  };
5270
+ var groupImagesForPicture = (images) => {
5271
+ const sources = images.filter((img) => !!img.device);
5272
+ const fallbacks = images.filter((img) => !img.device);
5273
+ return {
5274
+ sources,
5275
+ fallback: fallbacks[0] ?? sources[0] ?? null
5276
+ };
5277
+ };
5269
5278
  var ImageGalleryNode = (props) => {
5270
5279
  const resolveImageUrl = (imageUrl) => {
5271
5280
  if (!imageUrl) return "";
@@ -5285,51 +5294,62 @@ var ImageGalleryNode = (props) => {
5285
5294
  const staticImages = rawImages.filter(
5286
5295
  (img) => !resolveImageUrl(img.imageUrl).endsWith(".m3u8")
5287
5296
  );
5288
- const hlsSources = [
5289
- ...DEVICE_ORDER.flatMap((deviceKey) => {
5290
- const img = hlsImages.find((i) => i.device === deviceKey);
5291
- if (!img) return [];
5292
- const src = resolveImageUrl(img.imageUrl);
5293
- if (!src) return [];
5294
- const media = deviceToMediaQuery(img.device);
5295
- const posterUrl = resolvePosterUrl(img.posterUrl);
5296
- return [{ src, ...media ? { media } : {}, ...posterUrl ? { posterUrl } : {} }];
5297
- }),
5298
- ...hlsImages.filter((img) => !img.device).map((img) => {
5299
- const src = resolveImageUrl(img.imageUrl);
5300
- const posterUrl = resolvePosterUrl(img.posterUrl);
5301
- return { src, ...posterUrl ? { posterUrl } : {} };
5302
- }).filter((s) => !!s.src)
5303
- ];
5304
- const primaryHls = hlsImages.find((img) => !img.device) ?? hlsImages[0];
5305
- const hlsIntrinsicWidth = primaryHls ? parseMaybeNumber(primaryHls.intrinsicWidth)?.toString() : void 0;
5306
- const hlsIntrinsicHeight = primaryHls ? parseMaybeNumber(primaryHls.intrinsicHeight)?.toString() : void 0;
5307
- const staticSources = staticImages.filter((img) => !!img.device);
5308
- const staticFallback = staticImages.find((img) => !img.device) ?? staticImages[0] ?? null;
5297
+ const { sources: staticSources, fallback: staticFallback } = groupImagesForPicture(staticImages);
5309
5298
  const FormatClass = {
5310
5299
  center: "justify-center",
5311
5300
  left: "justify-start",
5312
5301
  right: "justify-end"
5313
5302
  };
5314
5303
  const formatClasses = FormatClass[props.node.format || ""] || "";
5315
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_jsx_runtime69.Fragment, { children: [
5316
- hlsSources.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_jsx_runtime69.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
5317
- HlsPlayer3,
5318
- {
5319
- sources: hlsSources,
5320
- intrinsicWidth: hlsIntrinsicWidth,
5321
- intrinsicHeight: hlsIntrinsicHeight,
5322
- showControls: primaryHls?.showControls ?? false,
5323
- loop: primaryHls?.loop ?? false,
5324
- playOptions: primaryHls?.playOptions ?? "",
5325
- placementCode: primaryHls?.placementCode ?? "",
5326
- apiBaseUrl: props.apiBaseUrl,
5327
- session: props.session
5328
- }
5329
- ) }),
5330
- staticFallback && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_jsx_runtime69.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("picture", { children: [
5331
- DEVICE_ORDER.map((deviceKey) => {
5332
- const match = staticSources.find((img) => img.device === deviceKey);
5304
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: `flex flex-wrap gap-4 ${formatClasses}`, children: [
5305
+ hlsImages.map((img, idx) => {
5306
+ const assetUrl = resolveImageUrl(img.imageUrl);
5307
+ if (!assetUrl) return null;
5308
+ const posterUrl = resolvePosterUrl(img.posterUrl);
5309
+ const intrinsicWidth = parseMaybeNumber(img.intrinsicWidth);
5310
+ const intrinsicHeight = parseMaybeNumber(img.intrinsicHeight);
5311
+ const mediaQuery = deviceToMediaQuery(img.device);
5312
+ const styles = {};
5313
+ if (img.height) styles.height = img.height;
5314
+ if (img.width) styles.width = img.width;
5315
+ if (img.borderRadius) styles.borderRadius = img.borderRadius;
5316
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
5317
+ "div",
5318
+ {
5319
+ className: "max-w-full",
5320
+ style: {
5321
+ ...mediaQuery ? { "--media-query": mediaQuery } : void 0,
5322
+ ...styles
5323
+ },
5324
+ children: [
5325
+ mediaQuery && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("style", { children: `
5326
+ [data-hls-idx="${idx}"] { display: none; }
5327
+ @media ${mediaQuery} { [data-hls-idx="${idx}"] { display: block; } }
5328
+ ` }),
5329
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { "data-hls-idx": mediaQuery ? idx : void 0, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
5330
+ HlsPlayer3,
5331
+ {
5332
+ assetUrl,
5333
+ posterUrl,
5334
+ intrinsicWidth: intrinsicWidth?.toString(),
5335
+ intrinsicHeight: intrinsicHeight?.toString(),
5336
+ showControls: true,
5337
+ loop: false,
5338
+ playOptions: void 0,
5339
+ apiBaseUrl: props.apiBaseUrl,
5340
+ session: props.session
5341
+ }
5342
+ ) })
5343
+ ]
5344
+ },
5345
+ `hls-${idx}-${img.imageUrl}`
5346
+ );
5347
+ }),
5348
+ staticFallback && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "max-w-full", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("picture", { children: [
5349
+ ["sm", "md", "lg", "tv"].map((deviceKey) => {
5350
+ const match = staticSources.find(
5351
+ (img) => img.device === deviceKey
5352
+ );
5333
5353
  if (!match) return null;
5334
5354
  const srcUrl = resolveImageUrl(match.imageUrl);
5335
5355
  if (!srcUrl) return null;
@@ -5357,7 +5377,7 @@ var ImageGalleryNode = (props) => {
5357
5377
  if (img.width) styles.width = img.width;
5358
5378
  if (img.borderRadius) styles.borderRadius = img.borderRadius;
5359
5379
  return (
5360
- // eslint-disable-next-line @next/next/no-img-element
5380
+ /* eslint-disable-next-line @next/next/no-img-element */
5361
5381
  /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
5362
5382
  "img",
5363
5383
  {
package/dist/index.mjs CHANGED
@@ -3708,29 +3708,38 @@ var Pagination_default = Pagination;
3708
3708
 
3709
3709
  // src/components/pageRenderingEngine/nodes/ImageGalleryNode.tsx
3710
3710
  import dynamic7 from "next/dynamic";
3711
- import { Fragment as Fragment7, jsx as jsx58, jsxs as jsxs31 } from "react/jsx-runtime";
3711
+ import { jsx as jsx58, jsxs as jsxs31 } from "react/jsx-runtime";
3712
3712
  var HlsPlayer2 = dynamic7(() => import("./HlsPlayer-G27NMG7A.mjs"), { ssr: false });
3713
3713
  var deviceToMediaQuery = (device) => {
3714
3714
  switch (device) {
3715
3715
  case "sm":
3716
- return "(max-width: 480px)";
3716
+ return "(max-width: 767px)";
3717
3717
  case "md":
3718
- return "(max-width: 768px)";
3718
+ return "(min-width: 768px) and (max-width: 1199px)";
3719
3719
  case "lg":
3720
- return "(min-width: 769px)";
3721
- // case "tv":
3722
- // return "(min-width: 1920px)";
3720
+ return "(min-width: 1200px) and (max-width: 1919px)";
3721
+ case "tv":
3722
+ return "(min-width: 1920px)";
3723
3723
  default:
3724
3724
  return null;
3725
3725
  }
3726
3726
  };
3727
- var DEVICE_ORDER = ["sm", "md", "lg", "tv"];
3728
3727
  var parseMaybeNumber = (value) => {
3729
- if (typeof value === "number") return Number.isFinite(value) ? value : void 0;
3728
+ if (typeof value === "number") {
3729
+ return Number.isFinite(value) ? value : void 0;
3730
+ }
3730
3731
  if (typeof value !== "string") return void 0;
3731
3732
  const n = Number(value);
3732
3733
  return Number.isFinite(n) ? n : void 0;
3733
3734
  };
3735
+ var groupImagesForPicture = (images) => {
3736
+ const sources = images.filter((img) => !!img.device);
3737
+ const fallbacks = images.filter((img) => !img.device);
3738
+ return {
3739
+ sources,
3740
+ fallback: fallbacks[0] ?? sources[0] ?? null
3741
+ };
3742
+ };
3734
3743
  var ImageGalleryNode = (props) => {
3735
3744
  const resolveImageUrl = (imageUrl) => {
3736
3745
  if (!imageUrl) return "";
@@ -3750,51 +3759,62 @@ var ImageGalleryNode = (props) => {
3750
3759
  const staticImages = rawImages.filter(
3751
3760
  (img) => !resolveImageUrl(img.imageUrl).endsWith(".m3u8")
3752
3761
  );
3753
- const hlsSources = [
3754
- ...DEVICE_ORDER.flatMap((deviceKey) => {
3755
- const img = hlsImages.find((i) => i.device === deviceKey);
3756
- if (!img) return [];
3757
- const src = resolveImageUrl(img.imageUrl);
3758
- if (!src) return [];
3759
- const media = deviceToMediaQuery(img.device);
3760
- const posterUrl = resolvePosterUrl(img.posterUrl);
3761
- return [{ src, ...media ? { media } : {}, ...posterUrl ? { posterUrl } : {} }];
3762
- }),
3763
- ...hlsImages.filter((img) => !img.device).map((img) => {
3764
- const src = resolveImageUrl(img.imageUrl);
3765
- const posterUrl = resolvePosterUrl(img.posterUrl);
3766
- return { src, ...posterUrl ? { posterUrl } : {} };
3767
- }).filter((s) => !!s.src)
3768
- ];
3769
- const primaryHls = hlsImages.find((img) => !img.device) ?? hlsImages[0];
3770
- const hlsIntrinsicWidth = primaryHls ? parseMaybeNumber(primaryHls.intrinsicWidth)?.toString() : void 0;
3771
- const hlsIntrinsicHeight = primaryHls ? parseMaybeNumber(primaryHls.intrinsicHeight)?.toString() : void 0;
3772
- const staticSources = staticImages.filter((img) => !!img.device);
3773
- const staticFallback = staticImages.find((img) => !img.device) ?? staticImages[0] ?? null;
3762
+ const { sources: staticSources, fallback: staticFallback } = groupImagesForPicture(staticImages);
3774
3763
  const FormatClass = {
3775
3764
  center: "justify-center",
3776
3765
  left: "justify-start",
3777
3766
  right: "justify-end"
3778
3767
  };
3779
3768
  const formatClasses = FormatClass[props.node.format || ""] || "";
3780
- return /* @__PURE__ */ jsxs31(Fragment7, { children: [
3781
- hlsSources.length > 0 && /* @__PURE__ */ jsx58(Fragment7, { children: /* @__PURE__ */ jsx58(
3782
- HlsPlayer2,
3783
- {
3784
- sources: hlsSources,
3785
- intrinsicWidth: hlsIntrinsicWidth,
3786
- intrinsicHeight: hlsIntrinsicHeight,
3787
- showControls: primaryHls?.showControls ?? false,
3788
- loop: primaryHls?.loop ?? false,
3789
- playOptions: primaryHls?.playOptions ?? "",
3790
- placementCode: primaryHls?.placementCode ?? "",
3791
- apiBaseUrl: props.apiBaseUrl,
3792
- session: props.session
3793
- }
3794
- ) }),
3795
- staticFallback && /* @__PURE__ */ jsx58(Fragment7, { children: /* @__PURE__ */ jsxs31("picture", { children: [
3796
- DEVICE_ORDER.map((deviceKey) => {
3797
- const match = staticSources.find((img) => img.device === deviceKey);
3769
+ return /* @__PURE__ */ jsxs31("div", { className: `flex flex-wrap gap-4 ${formatClasses}`, children: [
3770
+ hlsImages.map((img, idx) => {
3771
+ const assetUrl = resolveImageUrl(img.imageUrl);
3772
+ if (!assetUrl) return null;
3773
+ const posterUrl = resolvePosterUrl(img.posterUrl);
3774
+ const intrinsicWidth = parseMaybeNumber(img.intrinsicWidth);
3775
+ const intrinsicHeight = parseMaybeNumber(img.intrinsicHeight);
3776
+ const mediaQuery = deviceToMediaQuery(img.device);
3777
+ const styles = {};
3778
+ if (img.height) styles.height = img.height;
3779
+ if (img.width) styles.width = img.width;
3780
+ if (img.borderRadius) styles.borderRadius = img.borderRadius;
3781
+ return /* @__PURE__ */ jsxs31(
3782
+ "div",
3783
+ {
3784
+ className: "max-w-full",
3785
+ style: {
3786
+ ...mediaQuery ? { "--media-query": mediaQuery } : void 0,
3787
+ ...styles
3788
+ },
3789
+ children: [
3790
+ mediaQuery && /* @__PURE__ */ jsx58("style", { children: `
3791
+ [data-hls-idx="${idx}"] { display: none; }
3792
+ @media ${mediaQuery} { [data-hls-idx="${idx}"] { display: block; } }
3793
+ ` }),
3794
+ /* @__PURE__ */ jsx58("div", { "data-hls-idx": mediaQuery ? idx : void 0, children: /* @__PURE__ */ jsx58(
3795
+ HlsPlayer2,
3796
+ {
3797
+ assetUrl,
3798
+ posterUrl,
3799
+ intrinsicWidth: intrinsicWidth?.toString(),
3800
+ intrinsicHeight: intrinsicHeight?.toString(),
3801
+ showControls: true,
3802
+ loop: false,
3803
+ playOptions: void 0,
3804
+ apiBaseUrl: props.apiBaseUrl,
3805
+ session: props.session
3806
+ }
3807
+ ) })
3808
+ ]
3809
+ },
3810
+ `hls-${idx}-${img.imageUrl}`
3811
+ );
3812
+ }),
3813
+ staticFallback && /* @__PURE__ */ jsx58("div", { className: "max-w-full", children: /* @__PURE__ */ jsxs31("picture", { children: [
3814
+ ["sm", "md", "lg", "tv"].map((deviceKey) => {
3815
+ const match = staticSources.find(
3816
+ (img) => img.device === deviceKey
3817
+ );
3798
3818
  if (!match) return null;
3799
3819
  const srcUrl = resolveImageUrl(match.imageUrl);
3800
3820
  if (!srcUrl) return null;
@@ -3822,7 +3842,7 @@ var ImageGalleryNode = (props) => {
3822
3842
  if (img.width) styles.width = img.width;
3823
3843
  if (img.borderRadius) styles.borderRadius = img.borderRadius;
3824
3844
  return (
3825
- // eslint-disable-next-line @next/next/no-img-element
3845
+ /* eslint-disable-next-line @next/next/no-img-element */
3826
3846
  /* @__PURE__ */ jsx58(
3827
3847
  "img",
3828
3848
  {
@@ -4262,7 +4282,7 @@ var PageBodyRenderer_default = PageBodyRenderer;
4262
4282
 
4263
4283
  // src/components/Toast.tsx
4264
4284
  import { useState as useState8 } from "react";
4265
- import { Fragment as Fragment8, jsx as jsx61, jsxs as jsxs33 } from "react/jsx-runtime";
4285
+ import { Fragment as Fragment7, jsx as jsx61, jsxs as jsxs33 } from "react/jsx-runtime";
4266
4286
  var Toast = () => {
4267
4287
  const [showToast, setShowToast] = useState8(false);
4268
4288
  const [message, setMessage] = useState8("");
@@ -4305,7 +4325,7 @@ var Toast = () => {
4305
4325
  const closeToast = () => {
4306
4326
  setShowToast(false);
4307
4327
  };
4308
- return /* @__PURE__ */ jsx61(Fragment8, { children: showToast && /* @__PURE__ */ jsx61("div", { className: "fixed top-2 flex justify-center w-1/2 max-w-xl left-1/2 -translate-x-1/2", style: { zIndex: 1e3 }, children: /* @__PURE__ */ jsxs33("div", { className: `w-full items-center flex justify-between p-3 rounded-md relative shadow border bg-${messageType}-soft`, children: [
4328
+ return /* @__PURE__ */ jsx61(Fragment7, { children: showToast && /* @__PURE__ */ jsx61("div", { className: "fixed top-2 flex justify-center w-1/2 max-w-xl left-1/2 -translate-x-1/2", style: { zIndex: 1e3 }, children: /* @__PURE__ */ jsxs33("div", { className: `w-full items-center flex justify-between p-3 rounded-md relative shadow border bg-${messageType}-soft`, children: [
4309
4329
  /* @__PURE__ */ jsx61(
4310
4330
  "span",
4311
4331
  {
@@ -4425,7 +4445,7 @@ var ContentView = (props) => {
4425
4445
  var ContentView_default = ContentView;
4426
4446
 
4427
4447
  // src/components/dataForm/DataList.tsx
4428
- import { Fragment as Fragment9, jsx as jsx65, jsxs as jsxs35 } from "react/jsx-runtime";
4448
+ import { Fragment as Fragment8, jsx as jsx65, jsxs as jsxs35 } from "react/jsx-runtime";
4429
4449
  var DataList = (props) => {
4430
4450
  console.log(props.dataset, "datasetssssss");
4431
4451
  const router = useRouter();
@@ -4517,7 +4537,7 @@ var DataList = (props) => {
4517
4537
  const showFirstPages = activePageNumber <= 5;
4518
4538
  const showLastPages = activePageNumber > pages - 5;
4519
4539
  if (showFirstPages) {
4520
- return /* @__PURE__ */ jsxs35(Fragment9, { children: [
4540
+ return /* @__PURE__ */ jsxs35(Fragment8, { children: [
4521
4541
  Array.from({ length: 8 }, (_, index) => index + 1).map((page) => /* @__PURE__ */ jsx65(React46.Fragment, { children: activePageNumber !== page ? /* @__PURE__ */ jsx65(
4522
4542
  Hyperlink,
4523
4543
  {
@@ -4565,7 +4585,7 @@ var DataList = (props) => {
4565
4585
  ) })
4566
4586
  ] });
4567
4587
  } else if (showLastPages) {
4568
- return /* @__PURE__ */ jsxs35(Fragment9, { children: [
4588
+ return /* @__PURE__ */ jsxs35(Fragment8, { children: [
4569
4589
  /* @__PURE__ */ jsx65(
4570
4590
  Hyperlink,
4571
4591
  {
@@ -4595,7 +4615,7 @@ var DataList = (props) => {
4595
4615
  )
4596
4616
  ] });
4597
4617
  } else {
4598
- return /* @__PURE__ */ jsxs35(Fragment9, { children: [
4618
+ return /* @__PURE__ */ jsxs35(Fragment8, { children: [
4599
4619
  /* @__PURE__ */ jsx65(
4600
4620
  Hyperlink,
4601
4621
  {
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.20260526122912",
3
+ "version": "0.8.1-dev.20260527044956",
4
4
  "description": "Reusable React components",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",