react-motion-gallery 2.0.37 → 2.0.39
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/README.md +161 -5
- package/dist/{GridSkeleton-B5wWBN9L.d.mts → GridSkeleton-Dpsi5tXc.d.mts} +1 -1
- package/dist/{MasonrySkeleton-D8aZRUiv.d.mts → MasonrySkeleton-Cs0x-4yL.d.mts} +1 -1
- package/dist/chunk-45TZO7MN.mjs +2 -0
- package/dist/chunk-4URHXPTV.mjs +4 -0
- package/dist/{chunk-7PF7OJT2.mjs → chunk-5HGFS3S2.mjs} +1 -1
- package/dist/{chunk-MFTASEWB.mjs → chunk-AHMXEVKY.mjs} +1 -1
- package/dist/chunk-AOQIL2HW.mjs +1 -0
- package/dist/chunk-AU4O4KU4.mjs +1 -0
- package/dist/chunk-CXH7XALE.mjs +1 -0
- package/dist/chunk-CXV4KHLX.mjs +3 -0
- package/dist/{chunk-J3UHEYNG.mjs → chunk-MJAHN7TG.mjs} +1 -1
- package/dist/chunk-QJ2YFMAT.mjs +2 -0
- package/dist/chunk-S356JN3V.mjs +4 -0
- package/dist/{chunk-3RVITFUD.mjs → chunk-YU2WS3GJ.mjs} +1 -1
- package/dist/core.d.mts +2 -1
- package/dist/entries.d.mts +8 -7
- package/dist/entries.mjs +1 -1
- package/dist/fullscreen-captions.d.mts +2 -1
- package/dist/fullscreen-controls.d.mts +2 -1
- package/dist/fullscreen-crossfade.d.mts +2 -1
- package/dist/fullscreen-lazy-load.d.mts +2 -1
- package/dist/fullscreen-slider.d.mts +2 -1
- package/dist/fullscreen-thumbnails.d.mts +2 -1
- package/dist/fullscreen-video.d.mts +2 -1
- package/dist/fullscreen-zoom-pan.d.mts +2 -1
- package/dist/fullscreen.d.mts +3 -2
- package/dist/grid.d.mts +2 -2
- package/dist/grid.mjs +1 -1
- package/dist/{index-QEgABhod.d.mts → index-C9XZ3Lr3.d.mts} +1 -1
- package/dist/index.d.mts +4 -3
- package/dist/index.mjs +1 -1
- package/dist/{layout-DoYnPD0I.d.mts → layout-BOy4geKv.d.mts} +1 -0
- package/dist/masonry.mjs +1 -1
- package/dist/metafile-esm.json +1 -1
- package/dist/{responsive-BnHorKhC.d.mts → responsive-Cwty6be5.d.mts} +3 -0
- package/dist/responsive.d.mts +2 -1
- package/dist/skeleton-base.d.mts +8 -5
- package/dist/skeleton-base.mjs +1 -1
- package/dist/skeleton-cache-provider.d.mts +7 -0
- package/dist/skeleton-cache-provider.mjs +1 -0
- package/dist/skeleton-cache.d.mts +70 -0
- package/dist/skeleton-cache.mjs +1 -0
- package/dist/skeleton-grid.d.mts +7 -5
- package/dist/skeleton-grid.mjs +1 -1
- package/dist/skeleton-masonry.d.mts +8 -6
- package/dist/skeleton-masonry.mjs +1 -1
- package/dist/skeleton-slider.d.mts +5 -2
- package/dist/skeleton-slider.mjs +7 -7
- package/package.json +9 -1
- package/dist/chunk-4BTS6IIA.mjs +0 -2
- package/dist/chunk-4ZOW533S.mjs +0 -1
- package/dist/chunk-63CVVCOL.mjs +0 -2
- package/dist/chunk-LSHR3FZM.mjs +0 -4
- package/dist/chunk-RGS2QTPJ.mjs +0 -3
- package/dist/chunk-X3W6JPNH.mjs +0 -4
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@ This table reports local gzip measurements for selected runtime surfaces. Type-o
|
|
|
11
11
|
<!-- bundle-size:start -->
|
|
12
12
|
| Surface | JS gzip |
|
|
13
13
|
| --- | --- |
|
|
14
|
-
| `Entries` |
|
|
14
|
+
| `Entries` | 15.7kB |
|
|
15
15
|
| `FullscreenThumbnailSlider` | 20.3kB |
|
|
16
16
|
| `GalleryCore` | 2.6kB |
|
|
17
17
|
| `Grid` | 6.3kB |
|
|
@@ -20,10 +20,10 @@ This table reports local gzip measurements for selected runtime surfaces. Type-o
|
|
|
20
20
|
| `Masonry` | 6.5kB |
|
|
21
21
|
| `masonry/ready` | 323.0B |
|
|
22
22
|
| `masonry/lazy-load` | 3.3kB |
|
|
23
|
-
| `Skeleton base` |
|
|
24
|
-
| `skeleton/slider` |
|
|
25
|
-
| `skeleton/grid` |
|
|
26
|
-
| `skeleton/masonry` |
|
|
23
|
+
| `Skeleton base` | 10.7kB |
|
|
24
|
+
| `skeleton/slider` | 19.3kB |
|
|
25
|
+
| `skeleton/grid` | 13.0kB |
|
|
26
|
+
| `skeleton/masonry` | 21.9kB |
|
|
27
27
|
| `Slider core` | 18.7kB |
|
|
28
28
|
| `slider/ready` | 894.0B |
|
|
29
29
|
| `slider/arrows` | 1.2kB |
|
|
@@ -157,6 +157,8 @@ Subpaths give bundlers a smaller graph than the root. Less JS to transfer, parse
|
|
|
157
157
|
| `react-motion-gallery/skeleton/slider` | `SliderSkeleton` and slider skeleton authoring types |
|
|
158
158
|
| `react-motion-gallery/skeleton/grid` | `GridSkeleton` and grid skeleton authoring types |
|
|
159
159
|
| `react-motion-gallery/skeleton/masonry` | `MasonrySkeleton` and masonry skeleton authoring types |
|
|
160
|
+
| `react-motion-gallery/skeleton/cache` | Server-safe skeleton cookie cache helpers and types |
|
|
161
|
+
| `react-motion-gallery/skeleton/cache/provider` | Client `SkeletonCacheProvider` for SSR snapshots |
|
|
160
162
|
| `react-motion-gallery/fullscreen` | `useFullscreenController` and fullscreen types |
|
|
161
163
|
| `react-motion-gallery/fullscreen/slider` | `fullscreenSlider` |
|
|
162
164
|
| `react-motion-gallery/fullscreen/controls` | `fullscreenControls` |
|
|
@@ -443,6 +445,7 @@ export function LoadingShell({ ready, children }: { ready: boolean; children: Re
|
|
|
443
445
|
| `timing.minVisibleMs` | `number` | `220` | Minimum time the skeleton stays visible before exit can begin. |
|
|
444
446
|
| `shellClassName` / `shellStyle` | `string` / `CSSProperties` | `—` | Wrapper-layer class and style for content+skeleton mode. |
|
|
445
447
|
| `contentClassName` / `contentStyle` | `string` / `CSSProperties` | `—` | Content-layer class and style for wrapper mode. |
|
|
448
|
+
| `cache` | `SkeletonCacheOptions` | `—` | Opts into the cookie snapshot cache. Available on standalone `Skeleton`, `SliderSkeleton`, `GridSkeleton`, `MasonrySkeleton`, and `Entries.loading.cache`. |
|
|
446
449
|
|
|
447
450
|
The wrapper timing model matches the gallery loading layers: content begins fading in as soon as the skeleton exit starts; it does not wait for the skeleton to unmount.
|
|
448
451
|
|
|
@@ -460,6 +463,158 @@ npm run --silent generate:skeleton-text-module -- \
|
|
|
460
463
|
|
|
461
464
|
Use `responsiveBy: "container"` when text wrapping follows the card or cell width more closely than the viewport. For equal-height card sliders, the browser analyzer can also measure all canonical slider items and emit `rowHeightCompensation` so unseen cards cannot surprise the skeleton row height. See [`docs/skeleton-text-authoring.md`](./docs/skeleton-text-authoring.md) for manifest fields, command options, and the Codex-friendly workflow.
|
|
462
465
|
|
|
466
|
+
### Skeleton cookie snapshot cache
|
|
467
|
+
|
|
468
|
+
The skeleton cookie snapshot cache is an opt-in SSR acceleration path for skeletons with expensive responsive text or layout geometry. The first visit uses the normal responsive skeleton CSS. After hydration, and again after debounced resizes, the client measures the active rendered content/skeleton geometry and writes a compact cookie. On a later server render, a valid cookie lets the skeleton render only the active snapshot values instead of the full responsive text CSS table.
|
|
469
|
+
|
|
470
|
+
This exists because very accurate skeletons can require a lot of responsive text CSS, especially when text wrapping affects masonry packing or card heights. Client-only storage such as `sessionStorage` cannot help SSR because the server cannot read it and the browser only gets it after the document starts executing. A cookie is available during SSR, so the server can reserve the correct first-paint geometry before hydration.
|
|
471
|
+
|
|
472
|
+
What the cache stores:
|
|
473
|
+
|
|
474
|
+
- cache version, cache key, scope id, route key, timestamp, viewport width, and active width bucket
|
|
475
|
+
- measured skeleton text records keyed by `textId`: line count, per-line widths, and optional bar metrics
|
|
476
|
+
- masonry-only active geometry: variant key, shell height, and item heights
|
|
477
|
+
- no text strings, no media URLs, and no full CSS text
|
|
478
|
+
|
|
479
|
+
Benefits:
|
|
480
|
+
|
|
481
|
+
- first visit remains unchanged and uses the full responsive skeleton behavior
|
|
482
|
+
- later reloads can parse much less skeleton CSS for the active breakpoint
|
|
483
|
+
- text-heavy masonry, grid, slider, entries, and standalone skeletons can keep layout stability while reducing first-paint CSS work
|
|
484
|
+
- stale, expired, route-mismatched, scope-mismatched, or malformed cookies silently fall back to the normal responsive path
|
|
485
|
+
|
|
486
|
+
Defaults: `ttlMs` is `10 * 60 * 1000`, `debounceMs` is `250`, cookie `path` is `/`, and `sameSite` is `lax`. Use a stable `key` per skeleton surface and a stable `routeKey` when a skeleton only applies to one route.
|
|
487
|
+
|
|
488
|
+
For skeleton text to be measurable, the skeleton `text` node needs a `textId`, and the matching real content text needs `data-skeleton-text-id`. Browser-generated skeleton text modules include `textId` automatically, so existing spreads such as `...skeletonText.body` are cache-ready.
|
|
489
|
+
|
|
490
|
+
```typescript
|
|
491
|
+
const cardBodySkeleton = {
|
|
492
|
+
kind: "text",
|
|
493
|
+
textId: "cardBody",
|
|
494
|
+
barHeight: 14,
|
|
495
|
+
lineHeight: 1.45,
|
|
496
|
+
lines: { 0: 4, 900: 3, 1200: 2 },
|
|
497
|
+
} as const;
|
|
498
|
+
|
|
499
|
+
function CardBody({ children }: { children: React.ReactNode }) {
|
|
500
|
+
return <p data-skeleton-text-id="cardBody">{children}</p>;
|
|
501
|
+
}
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
In SSR frameworks, read cache cookies on the server with the server-safe helper entry, then pass valid snapshots into a client provider. This example parses all React Motion Gallery skeleton cache cookies for the route.
|
|
505
|
+
|
|
506
|
+
```tsx
|
|
507
|
+
// app/gallery/page.tsx
|
|
508
|
+
import { cookies } from "next/headers";
|
|
509
|
+
import {
|
|
510
|
+
parseSkeletonCacheCookie,
|
|
511
|
+
type SkeletonCacheSnapshot,
|
|
512
|
+
} from "react-motion-gallery/skeleton/cache";
|
|
513
|
+
import { GalleryPageClient } from "./GalleryPageClient";
|
|
514
|
+
|
|
515
|
+
function readSkeletonCacheSnapshots(
|
|
516
|
+
cookieStore: Awaited<ReturnType<typeof cookies>>
|
|
517
|
+
) {
|
|
518
|
+
const snapshots: Record<string, SkeletonCacheSnapshot> = {};
|
|
519
|
+
|
|
520
|
+
for (const cookie of cookieStore.getAll()) {
|
|
521
|
+
if (!cookie.name.startsWith("rmg_skel_cache_")) continue;
|
|
522
|
+
|
|
523
|
+
const snapshot = parseSkeletonCacheCookie(cookie.value);
|
|
524
|
+
if (snapshot) snapshots[snapshot.key] = snapshot;
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
return snapshots;
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
export default async function GalleryPage() {
|
|
531
|
+
const snapshotMap = readSkeletonCacheSnapshots(await cookies());
|
|
532
|
+
|
|
533
|
+
return <GalleryPageClient skeletonCacheSnapshots={snapshotMap} />;
|
|
534
|
+
}
|
|
535
|
+
```
|
|
536
|
+
|
|
537
|
+
Wrap the client tree in `SkeletonCacheProvider`, then opt individual skeletons in with `cache={{ key, routeKey }}`. Per-skeleton `cache.snapshot` takes precedence over provider snapshots when you need to pass one directly.
|
|
538
|
+
|
|
539
|
+
```tsx
|
|
540
|
+
// app/gallery/GalleryPageClient.tsx
|
|
541
|
+
"use client";
|
|
542
|
+
|
|
543
|
+
import type { SkeletonCacheSnapshot } from "react-motion-gallery/skeleton/cache";
|
|
544
|
+
import { SkeletonCacheProvider } from "react-motion-gallery/skeleton/cache/provider";
|
|
545
|
+
import { MasonrySkeleton } from "react-motion-gallery/skeleton/masonry";
|
|
546
|
+
import { Masonry } from "react-motion-gallery/masonry";
|
|
547
|
+
import { useMasonryReady } from "react-motion-gallery/masonry/ready";
|
|
548
|
+
|
|
549
|
+
export function GalleryPageClient({
|
|
550
|
+
skeletonCacheSnapshots,
|
|
551
|
+
}: {
|
|
552
|
+
skeletonCacheSnapshots: Record<string, SkeletonCacheSnapshot | null | undefined>;
|
|
553
|
+
}) {
|
|
554
|
+
const { ref, ready } = useMasonryReady();
|
|
555
|
+
|
|
556
|
+
return (
|
|
557
|
+
<SkeletonCacheProvider snapshots={skeletonCacheSnapshots}>
|
|
558
|
+
<MasonrySkeleton
|
|
559
|
+
cache={{
|
|
560
|
+
key: "portfolio-masonry",
|
|
561
|
+
routeKey: "/gallery",
|
|
562
|
+
}}
|
|
563
|
+
layout={portfolioSkeleton}
|
|
564
|
+
ready={ready}
|
|
565
|
+
masonry={{
|
|
566
|
+
count: items.length,
|
|
567
|
+
columns: { 0: 1, 720: 2, 1140: 4 },
|
|
568
|
+
gap: { 0: 12, 1140: 18 },
|
|
569
|
+
}}
|
|
570
|
+
>
|
|
571
|
+
<Masonry ref={ref} columns={{ 0: 1, 720: 2, 1140: 4 }}>
|
|
572
|
+
{items.map((item) => (
|
|
573
|
+
<Masonry.Item key={item.id}>{/* real card */}</Masonry.Item>
|
|
574
|
+
))}
|
|
575
|
+
</Masonry>
|
|
576
|
+
</MasonrySkeleton>
|
|
577
|
+
</SkeletonCacheProvider>
|
|
578
|
+
);
|
|
579
|
+
}
|
|
580
|
+
```
|
|
581
|
+
|
|
582
|
+
Use the same `cache` object on `SliderSkeleton`, `GridSkeleton`, and standalone `Skeleton`. For `Entries`, put it under `entries.loading.cache`.
|
|
583
|
+
|
|
584
|
+
```tsx
|
|
585
|
+
<Entries
|
|
586
|
+
entries={{
|
|
587
|
+
items,
|
|
588
|
+
mediaLayout: "grid",
|
|
589
|
+
loading: {
|
|
590
|
+
cache: {
|
|
591
|
+
key: "editorial-entries",
|
|
592
|
+
routeKey: "/stories",
|
|
593
|
+
},
|
|
594
|
+
skeleton: entrySkeleton,
|
|
595
|
+
},
|
|
596
|
+
}}
|
|
597
|
+
/>
|
|
598
|
+
```
|
|
599
|
+
|
|
600
|
+
Cookie options can be tuned per skeleton:
|
|
601
|
+
|
|
602
|
+
```tsx
|
|
603
|
+
<GridSkeleton
|
|
604
|
+
cache={{
|
|
605
|
+
key: "product-grid",
|
|
606
|
+
routeKey: "/products",
|
|
607
|
+
ttlMs: 5 * 60 * 1000,
|
|
608
|
+
debounceMs: 150,
|
|
609
|
+
cookie: {
|
|
610
|
+
path: "/",
|
|
611
|
+
sameSite: "lax",
|
|
612
|
+
},
|
|
613
|
+
}}
|
|
614
|
+
layout={productGridSkeleton}
|
|
615
|
+
/>
|
|
616
|
+
```
|
|
617
|
+
|
|
463
618
|
## Slider
|
|
464
619
|
|
|
465
620
|
The default `Slider` is the small synchronous core: children, drag, wheel navigation, snapping, grouping, looping, index channels, intro, and the imperative ref API. Heavier behavior is opt-in through first-party plugins, so importing one feature, such as arrows or parallax, does not pull in the rest of the slider feature set. Structured slider skeletons and restore behavior are owned by `SliderSkeleton`, composed with `useSliderReady()`.
|
|
@@ -1378,6 +1533,7 @@ Fullscreen close has a matching entry-aware path. If the user closes fullscreen
|
|
|
1378
1533
|
| `loading.enabled` | `boolean` | `—` | Enables entry loading and decode gating. |
|
|
1379
1534
|
| `loading.force` | `boolean \| { enabled?: boolean; showContent?: boolean; skeletonOpacity?: number }` | `—` | Forces entry skeletons to remain visible. Set `showContent: true` to preview mounted, ready entry content under the skeleton, and tune the loading overlay with `skeletonOpacity`. |
|
|
1380
1535
|
| `loading.skeleton` | `EntrySkeletonSpec \| ((args) => EntrySkeletonSpec \| null \| undefined)` | `—` | Built-in skeleton spec or resolver. |
|
|
1536
|
+
| `loading.cache` | `SkeletonCacheOptions` | `—` | Opts entry skeleton text into the cookie snapshot cache. |
|
|
1381
1537
|
| `loading.minHeight` | `number \| string` | `"260px"` | Minimum reserved height while loading. |
|
|
1382
1538
|
| `loading.nearMargin` | `string` | `"700px 0px"` | Preload margin used before entries enter view. |
|
|
1383
1539
|
| `loading.viewMargin` | `string` | `"0px 0px"` | Margin used for the actual in-view gate. |
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as SkeletonLayoutRoot, S as SkeletonNode$1, d as SkeletonWrapStyle, a as SkeletonLength, b as SkeletonShimmer } from './layout-
|
|
1
|
+
import { c as SkeletonLayoutRoot, S as SkeletonNode$1, d as SkeletonWrapStyle, a as SkeletonLength, b as SkeletonShimmer } from './layout-BOy4geKv.mjs';
|
|
2
2
|
import { R as ResponsiveGridSpan } from './types-Do4Pq-Td.mjs';
|
|
3
3
|
|
|
4
4
|
type GridSkeletonWrapStyle = SkeletonWrapStyle;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as SkeletonLayoutRoot, S as SkeletonNode$1, d as SkeletonWrapStyle, a as SkeletonLength, b as SkeletonShimmer } from './layout-
|
|
1
|
+
import { c as SkeletonLayoutRoot, S as SkeletonNode$1, d as SkeletonWrapStyle, a as SkeletonLength, b as SkeletonShimmer } from './layout-BOy4geKv.mjs';
|
|
2
2
|
import { R as ResponsiveMasonrySpan } from './types-Br27DWP7.mjs';
|
|
3
3
|
|
|
4
4
|
type MasonryPlacement = "balanced" | "roundRobin" | "horizontalOrder";
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import {a as a$1}from'./chunk-HK2DPKES.mjs';import {jsx}from'react/jsx-runtime';var p={skelRect:"ge",skelSquare:"ce",skelCircle:"pe",skelGroup:"he",skelRow:"fe",skelCol:"be",skelStack:"ve",skelText:"B",skelTextLine:"ue",skelTile:"ye",skelCardShimmer:"p",rmgSharedSkeletonShimmer:"h",skelShimmer:"C"};var R="68%",W="__NODE_SEL__",ue="(font: -apple-system-body) and (-webkit-hyphens: none)";function he(e){let n=Math.max(1,Math.trunc(e.lines??1)),t=Math.max(0,e.barHeight*e.lineHeight),o=Math.min(Math.max(0,e.barHeight),t),i=Math.max(t-o,0);return {lines:n,lineBoxHeight:t,barHeight:o,leading:i,paddingBlock:i/2,rowGap:i,totalHeight:t*n}}function L(e){let n=Math.max(e.barHeight,Math.floor(e.lineBoxHeight)),t=Math.max(n-e.barHeight,0);return {...e,lineBoxHeight:n,leading:t,paddingBlock:t/2,rowGap:t,totalHeight:n*e.lines}}function B(e,n=a$1){return !e||typeof e!="object"||Array.isArray(e)?false:Object.keys(e).some(t=>S(t,n)!=null)}function k(e,n){let t=Number.isFinite(e)?Math.trunc(e):n;return Math.max(1,t)}function C(e,n){let t=Number.isFinite(e)?Number(e):n;return Math.max(0,t)}function w(e,n){let t=Number.isFinite(e)?Number(e):n;return Math.max(0,t)}function S(e,n=a$1){let t=n[e];if(Number.isFinite(t))return Math.max(0,t);let o=Number(e);return Number.isFinite(o)?Math.max(0,o):null}function c(e){return typeof e=="number"?`${e}px`:e}function b(e){return Array.isArray(e)?e.map(c):c(e)}function pe(e){let{barWidths:n,lineCount:t,finalBarWidthFallback:o}=e;return t<=0?[o]:n.length>=t?n.slice(0,t):Array.from({length:t},(i,r)=>r<n.length?n[r]:r===t-1?o:"100%")}function O(e){let n=ke(e.lines,1,e.minWidth,e.breakpointMap),t=$(e.barHeight,typeof e.barHeight=="number"?e.barHeight:0,e.minWidth,e.breakpointMap),o=M(e.lineHeight,typeof e.lineHeight=="number"?e.lineHeight:1,e.minWidth,e.breakpointMap),i=Re(e.lastBarWidth,R,e.minWidth,e.breakpointMap),r=be(e.barWidth,"100%",e.minWidth,e.breakpointMap),s=e.barWidth==null?Array.from({length:n},(l,d)=>d===n-1?i:"100%"):Array.isArray(r)?r:Array.from({length:n},()=>r);return {lineCount:n,barWidths:pe({barWidths:s,lineCount:n,finalBarWidthFallback:e.barWidth==null?i:"100%"}),metrics:he({barHeight:t,lineHeight:o,lines:n})}}function me(e,n){return e.lineCount===n.lineCount&&e.metrics.totalHeight===n.metrics.totalHeight&&e.metrics.barHeight===n.metrics.barHeight&&e.metrics.paddingBlock===n.metrics.paddingBlock&&e.metrics.rowGap===n.metrics.rowGap&&e.barWidths.length===n.barWidths.length&&e.barWidths.every((t,o)=>t===n.barWidths[o])}function fe(e,n=a$1){return B(e,n)}function ce(e,n=a$1){return B(e,n)}function ge(e,n=a$1){return B(e,n)}function Se(e,n=a$1){return B(e,n)}function xe(e,n=a$1){return B(e,n)}function D(e,n=1,t=a$1){if(!fe(e,t))return [{minWidth:0,lines:k(typeof e=="number"?e:void 0,n)}];let o=Object.entries(e).map(([i,r])=>{let s=S(i,t);return s==null?null:{minWidth:s,lines:k(typeof r=="number"?r:Number(r),n)}}).filter(i=>!!i).sort((i,r)=>i.minWidth-r.minWidth).reduce((i,r)=>{let s=i[i.length-1];return s&&s.minWidth===r.minWidth?s.lines=r.lines:i.push(r),i},[]);return o.length===0?[{minWidth:0,lines:k(void 0,n)}]:(o[0].minWidth>0&&o.unshift({minWidth:0,lines:k(void 0,n)}),o)}function F(e,n=0,t=a$1){if(!ce(e,t))return [{minWidth:0,barHeight:C(typeof e=="number"?e:void 0,n)}];let o=Object.entries(e).map(([i,r])=>{let s=S(i,t);return s==null?null:{minWidth:s,barHeight:C(typeof r=="number"?r:Number(r),n)}}).filter(i=>!!i).sort((i,r)=>i.minWidth-r.minWidth).reduce((i,r)=>{let s=i[i.length-1];return s&&s.minWidth===r.minWidth?s.barHeight=r.barHeight:i.push(r),i},[]);return o.length===0?[{minWidth:0,barHeight:C(void 0,n)}]:(o[0].minWidth>0&&o.unshift({minWidth:0,barHeight:o[0].barHeight}),o)}function V(e,n=1,t=a$1){if(!ge(e,t))return [{minWidth:0,lineHeight:w(typeof e=="number"?e:void 0,n)}];let o=Object.entries(e).map(([i,r])=>{let s=S(i,t);return s==null?null:{minWidth:s,lineHeight:w(typeof r=="number"?r:Number(r),n)}}).filter(i=>!!i).sort((i,r)=>i.minWidth-r.minWidth).reduce((i,r)=>{let s=i[i.length-1];return s&&s.minWidth===r.minWidth?s.lineHeight=r.lineHeight:i.push(r),i},[]);return o.length===0?[{minWidth:0,lineHeight:w(void 0,n)}]:(o[0].minWidth>0&&o.unshift({minWidth:0,lineHeight:o[0].lineHeight}),o)}function ke(e,n=1,t=0,o=a$1){let i=D(e,n,o),r=i[0]?.lines??k(void 0,n);for(let s of i)t>=s.minWidth&&(r=s.lines);return r}function $(e,n=0,t=0,o=a$1){let i=F(e,n,o),r=i[0]?.barHeight??C(void 0,n);for(let s of i)t>=s.minWidth&&(r=s.barHeight);return r}function M(e,n=1,t=0,o=a$1){let i=V(e,n,o),r=i[0]?.lineHeight??w(void 0,n);for(let s of i)t>=s.minWidth&&(r=s.lineHeight);return r}function be(e,n="100%",t=0,o=a$1){let i=K(e,n,o),r=i[0]?.barWidth??b(n);for(let s of i)t>=s.minWidth&&(r=s.barWidth);return r}function K(e,n="100%",t=a$1){if(!Se(e,t))return [{minWidth:0,barWidth:b(e??n)}];let o=Object.entries(e).map(([i,r])=>{let s=S(i,t);return s==null||r==null?null:{minWidth:s,barWidth:b(r)}}).filter(i=>!!i).sort((i,r)=>i.minWidth-r.minWidth).reduce((i,r)=>{let s=i[i.length-1];return s&&s.minWidth===r.minWidth?s.barWidth=r.barWidth:i.push(r),i},[]);return o.length===0?[{minWidth:0,barWidth:b(n)}]:(o[0].minWidth>0&&o.unshift({minWidth:0,barWidth:b(n)}),o)}function q(e,n=R,t=a$1){if(!xe(e,t))return [{minWidth:0,lastBarWidth:c(e??n)}];let o=Object.entries(e).map(([i,r])=>{let s=S(i,t);return s==null||r==null?null:{minWidth:s,lastBarWidth:c(r)}}).filter(i=>!!i).sort((i,r)=>i.minWidth-r.minWidth).reduce((i,r)=>{let s=i[i.length-1];return s&&s.minWidth===r.minWidth?s.lastBarWidth=r.lastBarWidth:i.push(r),i},[]);return o.length===0?[{minWidth:0,lastBarWidth:c(n)}]:(o[0].minWidth>0&&o.unshift({minWidth:0,lastBarWidth:c(n)}),o)}function Re(e,n=R,t=0,o=a$1){let i=q(e,n,o),r=i[0]?.lastBarWidth??c(n);for(let s of i)t>=s.minWidth&&(r=s.lastBarWidth);return r}function We(e){let n=new Set,t=e.breakpointMap??a$1;for(let i of F(e.barHeight,typeof e.barHeight=="number"?e.barHeight:0,t))n.add(i.minWidth);for(let i of D(e.lines,1,t))n.add(i.minWidth);for(let i of V(e.lineHeight,typeof e.lineHeight=="number"?e.lineHeight:1,t))n.add(i.minWidth);let o=e.barWidth!=null?K(e.barWidth,"100%",t):q(e.lastBarWidth,R,t);for(let i of o)n.add(i.minWidth);return Array.from(n).sort((i,r)=>i-r)}function y(e){let n=e.breakpointMap??a$1,t=e.responsiveBy??"viewport",i=We({barHeight:e.barHeight,barWidth:e.barWidth,lineHeight:e.lineHeight,lines:e.lines,lastBarWidth:e.lastBarWidth,breakpointMap:n}).reduce((l,d)=>{let h=O({barHeight:e.barHeight,barWidth:e.barWidth,lineHeight:e.lineHeight,lines:e.lines,lastBarWidth:e.lastBarWidth,minWidth:d,breakpointMap:n}),m=l[l.length-1];return m&&me(m.state,h)||l.push({minWidth:d,state:h}),l},[]),r=i[0]?.state??O({barHeight:e.barHeight,barWidth:e.barWidth,lineHeight:e.lineHeight,lines:e.lines,lastBarWidth:e.lastBarWidth,minWidth:0,breakpointMap:n}),s=i.reduce((l,d)=>Math.max(l,d.state.lineCount),r.lineCount);return {baseState:r,states:i.length?i:[{minWidth:0,state:r}],maxLines:s,usesResponsiveBarCss:i.length>1,baseLines:r.lineCount,baseLastBarWidth:r.barWidths[r.lineCount-1]??R,metrics:r.metrics,responsiveBy:t}}function X(e){let n="renderState"in e?e.renderState:y({barHeight:e.barHeight,barWidth:e.barWidth,lineHeight:e.lineHeight,lines:e.lines,lastBarWidth:e.lastBarWidth,responsiveBy:e.responsiveBy,breakpointMap:e.breakpointMap});if(!n.usesResponsiveBarCss)return [];let t=e.selectorPlaceholder??W,o=e.fitContent===true;return n.states.map(({minWidth:i,state:r})=>{let s=`${t} [data-rmg-skel-text-line="true"]`,l=`${s}:nth-child(-n+${r.lineCount})`,d=r.lineCount<n.maxLines?`${s}:nth-child(n+${r.lineCount+1})`:null,h=r.barWidths.map((g,H)=>o?`${s}:nth-child(${H+1}){width:${g} !important;max-width:${g} !important;}`:`${s}:nth-child(${H+1}){max-width:${g} !important;}`),m=o?`${l}{display:block !important;max-width:100% !important;}`:`${l}{display:block !important;width:100% !important;max-width:100% !important;}`,x=L(r.metrics);return {minWidth:i,query:n.responsiveBy,css:[`${t}{height:${r.metrics.totalHeight}px !important;padding-block:${r.metrics.paddingBlock}px !important;row-gap:${r.metrics.rowGap}px !important;}`,`@supports ${ue}{${t}{height:${x.totalHeight}px !important;padding-block:${x.paddingBlock}px !important;row-gap:${x.rowGap}px !important;}}`,`${s}{display:none !important;height:${r.metrics.barHeight}px !important;}`,m,...d?[`${d}{display:none !important;}`]:[],...h].join("")}})}function U(e){return !!e&&typeof e=="object"&&!Array.isArray(e)}function Be(e,n=a$1){let t=n[e];if(Number.isFinite(t))return Math.max(0,t);let o=Number(e);return Number.isFinite(o)?Math.max(0,o):null}function v(e,n=a$1){if(!U(e))return {baseStyle:e,rules:[]};let t={},o=new Map;for(let[i,r]of Object.entries(e)){let s=Be(i,n);if(s!=null&&U(r)){o.set(s,{...o.get(s)??{},...r});continue}t[i]=r;}return {baseStyle:Object.keys(t).length?t:void 0,rules:Array.from(o.entries()).sort((i,r)=>i[0]-r[0]).map(([i,r])=>({minWidth:i,style:r}))}}function z(e,n,t=a$1){let{baseStyle:o,rules:i}=v(e,t),r={...o??{}};for(let s of i){if(s.minWidth>n)break;Object.assign(r,s.style);}return Object.keys(r).length?r:void 0}function te(e,n=a$1){let{baseStyle:t,rules:o}=v(e,n);if(!t)return;if(!o.length)return t;let i=new Set;for(let s of o)for(let l of Object.keys(s.style))i.add(l);let r={};for(let[s,l]of Object.entries(t))i.has(s)||(r[s]=l);return Object.keys(r).length?r:void 0}function ie(e,n,t=a$1){let{rules:o}=v(e,t);for(let i of o)i.minWidth>0&&n.add(i.minWidth);}function re(e){let n=e.breakpointMap??a$1,t=e.selector??W,o=[],{rules:i}=v(e.value,n);if(!i.length)return [];let r=new Set([0]);for(let s of i)r.add(s.minWidth);for(let s of Array.from(r).sort((l,d)=>l-d)){let l=z(e.value,s,n),d=l?e.serialize(l):"";d&&o.push({minWidth:s,css:`${t}{${d}}`,raw:true});}return o}function a(e){if(e!=null)return typeof e=="number"?`${e}px`:e}function oe(e){if(!e)return {};let n=a(e.margin),t=a(e.marginTop),o=a(e.marginRight),i=a(e.marginBottom),r=a(e.marginLeft),s={};return n!=null&&(s.margin=n),t!=null&&(s.marginTop=t),o!=null&&(s.marginRight=o),i!=null&&(s.marginBottom=i),r!=null&&(s.marginLeft=r),s}function A(e,n){n&&(n.flex!=null&&(e.flex=n.flex),n.flexGrow!=null&&(e.flexGrow=n.flexGrow),n.flexShrink!=null&&(e.flexShrink=n.flexShrink),n.flexBasis!=null&&(e.flexBasis=a(n.flexBasis)),n.order!=null&&(e.order=n.order),n.alignSelf&&(e.alignSelf=n.alignSelf),n.boxSizing!=null&&(e.boxSizing=n.boxSizing));}function E(e,n){n&&(n.flex!=null&&e.push(`flex:${n.flex};`),n.flexGrow!=null&&e.push(`flex-grow:${n.flexGrow};`),n.flexShrink!=null&&e.push(`flex-shrink:${n.flexShrink};`),n.flexBasis!=null&&e.push(`flex-basis:${a(n.flexBasis)};`),n.order!=null&&e.push(`order:${n.order};`),n.alignSelf&&e.push(`align-self:${n.alignSelf};`),n.boxSizing!=null&&e.push(`box-sizing:${n.boxSizing};`));}function se(e,n){let t={};e?.aspectRatio!=null&&(t.aspectRatio=e.aspectRatio);let o=a(e?.width),i=a(e?.minWidth),r=a(e?.maxWidth),s=a(e?.height),l=a(e?.minHeight),d=a(e?.maxHeight);return o!=null&&(t.inlineSize=o,t.width=o),i!=null&&(t.minInlineSize=i,t.minWidth=i),r!=null&&(t.maxInlineSize=r,t.maxWidth=r),s!=null&&(t.height=s),l!=null&&(t.minHeight=l),d!=null&&(t.maxHeight=d),e?.aspectRatio!=null&&e?.height==null&&(t.height="auto"),e?.aspectRatio!=null&&e?.width==null&&e?.height==null&&(t.inlineSize="100%",t.width="100%",t.height="auto"),e?.backgroundColor&&(t["--rmg-skel-bg"]=e.backgroundColor),e?.borderRadius!=null&&(t["--rmg-skel-radius"]=a(e.borderRadius)),e?.overflow!=null&&(t.overflow=e.overflow),A(t,e),e?.scale!=null&&(t.transform=`scale(${e.scale})`),Object.assign(t,we(n)),t}function G(e,n){let t=a(n?.margin),o=a(n?.marginTop),i=a(n?.marginRight),r=a(n?.marginBottom),s=a(n?.marginLeft);t!=null&&e.push(`margin:${t};`),o!=null&&e.push(`margin-top:${o};`),i!=null&&e.push(`margin-right:${i};`),r!=null&&e.push(`margin-bottom:${r};`),s!=null&&e.push(`margin-left:${s};`);}function ve(e){if(!e)return "";let n=[],t=a(e.width),o=a(e.minWidth),i=a(e.maxWidth),r=a(e.height),s=a(e.minHeight),l=a(e.maxHeight);return e.aspectRatio!=null&&n.push(`aspect-ratio:${String(e.aspectRatio)};`),t!=null&&(n.push(`inline-size:${t};`),n.push(`width:${t};`)),o!=null&&(n.push(`min-inline-size:${o};`),n.push(`min-width:${o};`)),i!=null&&(n.push(`max-inline-size:${i};`),n.push(`max-width:${i};`)),r!=null&&n.push(`height:${r};`),s!=null&&n.push(`min-height:${s};`),l!=null&&n.push(`max-height:${l};`),e.aspectRatio!=null&&e.height==null&&n.push("height:auto;"),e.aspectRatio!=null&&e.width==null&&e.height==null&&(n.push("inline-size:100%;"),n.push("width:100%;"),n.push("height:auto;")),e.backgroundColor&&n.push(`--rmg-skel-bg:${e.backgroundColor};`),e.borderRadius!=null&&n.push(`--rmg-skel-radius:${a(e.borderRadius)};`),e.overflow!=null&&n.push(`overflow:${e.overflow};`),E(n,e),e.scale!=null&&n.push(`transform:scale(${e.scale});`),G(n,e),n.join("")}function Te(e){if(!e)return "";let n=[],t=a(e.width),o=a(e.minWidth),i=a(e.maxWidth);return t!=null&&(n.push(`inline-size:${t};`),n.push(`width:${t};`)),o!=null&&(n.push(`min-inline-size:${o};`),n.push(`min-width:${o};`)),i!=null&&(n.push(`max-inline-size:${i};`),n.push(`max-width:${i};`)),E(n,e),e.scale!=null&&n.push(`transform:scale(${e.scale});`),G(n,e),n.join("")}function Ce(e){if(!e)return "";let n=[];return e.backgroundColor&&n.push(`--rmg-skel-bg:${e.backgroundColor};`),e.borderRadius!=null&&n.push(`--rmg-skel-radius:${a(e.borderRadius)};`),n.join("")}function we(e,n){let t={},o=n?.enabledVarName??"--rmg-skel-shimmer-enabled";return e?.enabled===false&&(t[o]="0"),e?.durationMs!=null&&(t["--rmg-skel-shimmer-duration"]=`${e.durationMs}ms`),e?.angleDeg!=null&&(t["--rmg-skel-shimmer-angle"]=`${e.angleDeg}deg`),e?.opacity!=null&&(t["--rmg-skel-shimmer-opacity"]=String(e.opacity)),e?.blurPx!=null&&(t["--rmg-skel-shimmer-blur"]=`${e.blurPx}px`,t["--rmg-skel-shimmer-filter"]=e.blurPx>0?`blur(${e.blurPx}px)`:"none"),e?.timing&&(t["--rmg-skel-shimmer-timing"]=e.timing),e?.c1&&(t["--rmg-skel-shimmer-c1"]=e.c1),e?.c2&&(t["--rmg-skel-shimmer-c2"]=e.c2),e?.c3&&(t["--rmg-skel-shimmer-c3"]=e.c3),t}function Q(e,n){let t={};n!=null&&(t.height=`${n}px`);let o=a(e?.width),i=a(e?.minWidth),r=a(e?.maxWidth);return o!=null&&(t.inlineSize=o,t.width=o),i!=null&&(t.minInlineSize=i,t.minWidth=i),r!=null&&(t.maxInlineSize=r,t.maxWidth=r),A(t,e),e?.scale!=null&&(t.transform=`scale(${e.scale})`),t}function j(e){return typeof e=="string"&&e.trim()==="max-content"}function ye(e){return !e||typeof e!="object"?false:j(e.width)?true:Object.values(e).some(t=>!!t&&typeof t=="object"&&j(t.width))}function Fe(e){let n=se(e,void 0);return delete n["--rmg-skel-bg"],e?.backgroundColor!=null&&(n.backgroundColor=e.backgroundColor),e?.padding!=null&&(n.padding=a(e.padding)),e?.border!=null&&(n.border=e.border),e?.boxShadow!=null&&(n.boxShadow=e.boxShadow),e?.borderRadius!=null?(n.borderRadius=a(e.borderRadius),n.overflow=e?.overflow??"hidden"):e?.overflow!=null&&(n.overflow=e.overflow),n.boxSizing="border-box",n}function Z(e){let n={};return e&&(e.position!=null&&(n.position=e.position),e.inset!=null&&(n.inset=a(e.inset)),e.insetBlock!=null&&(n.insetBlock=a(e.insetBlock)),e.insetInline!=null&&(n.insetInline=a(e.insetInline)),e.top!=null&&(n.top=a(e.top)),e.right!=null&&(n.right=a(e.right)),e.bottom!=null&&(n.bottom=a(e.bottom)),e.left!=null&&(n.left=a(e.left)),e.zIndex!=null&&(n.zIndex=e.zIndex),e.display!=null&&(n.display=e.display),e.flexDirection!=null&&(n.flexDirection=e.flexDirection),e.gap!=null&&(n.gap=a(e.gap)),e.rowGap!=null&&(n.rowGap=a(e.rowGap)),e.columnGap!=null&&(n.columnGap=a(e.columnGap)),e.padding!=null&&(n.padding=a(e.padding)),(e.align??e.alignItems)&&(n.alignItems=e.alignItems??e.align),e.alignContent!=null&&(n.alignContent=e.alignContent),(e.justify??e.justifyContent)&&(n.justifyContent=e.justifyContent??e.justify),e.aspectRatio!=null&&(n.aspectRatio=e.aspectRatio),e.flexWrap!=null?n.flexWrap=e.flexWrap:e.wrap&&(n.flexWrap="wrap"),e.width!=null&&(n.width=a(e.width)),e.minWidth!=null&&(n.minWidth=a(e.minWidth)),e.maxWidth!=null&&(n.maxWidth=a(e.maxWidth)),e.height!=null&&(n.height=a(e.height)),e.minHeight!=null&&(n.minHeight=a(e.minHeight)),e.maxHeight!=null&&(n.maxHeight=a(e.maxHeight)),e.aspectRatio!=null&&e.height==null&&(n.height="auto"),e.backgroundColor!=null&&(n.backgroundColor=e.backgroundColor),e.borderRadius!=null&&(n.borderRadius=a(e.borderRadius)),e.border!=null&&(n.border=e.border),e.boxShadow!=null&&(n.boxShadow=e.boxShadow),e.margin!=null&&(n.margin=a(e.margin)),e.marginTop!=null&&(n.marginTop=a(e.marginTop)),e.marginRight!=null&&(n.marginRight=a(e.marginRight)),e.marginBottom!=null&&(n.marginBottom=a(e.marginBottom)),e.marginLeft!=null&&(n.marginLeft=a(e.marginLeft)),A(n,e),e.overflow!=null&&(n.overflow=e.overflow),e.transform!=null&&(n.transform=e.transform),e.pointerEvents!=null&&(n.pointerEvents=e.pointerEvents),e.opacity!=null&&(n.opacity=e.opacity)),n}function He(e,n=a$1){return v(e,n).rules.length>0}function Le(e,n=0,t=a$1){return z(e,n,t)}function Ve(e,n=0,t=a$1){return z(e,n,t)}function ae(e,n=a$1){return te(e,n)}function J(e,n=a$1){return te(e,n)}function Ke(e,n,t=a$1){ie(e,n,t);}function Y(e){return e.replace(/"/g,'\\"')}function $e(e){let n=[];return e.position!=null&&n.push(`position:${e.position};`),e.inset!=null&&n.push(`inset:${a(e.inset)};`),e.insetBlock!=null&&n.push(`inset-block:${a(e.insetBlock)};`),e.insetInline!=null&&n.push(`inset-inline:${a(e.insetInline)};`),e.top!=null&&n.push(`top:${a(e.top)};`),e.right!=null&&n.push(`right:${a(e.right)};`),e.bottom!=null&&n.push(`bottom:${a(e.bottom)};`),e.left!=null&&n.push(`left:${a(e.left)};`),e.zIndex!=null&&n.push(`z-index:${e.zIndex};`),e.display!=null&&n.push(`display:${e.display};`),e.flexDirection!=null&&n.push(`flex-direction:${e.flexDirection};`),e.gap!=null&&n.push(`gap:${a(e.gap)};`),e.rowGap!=null&&n.push(`row-gap:${a(e.rowGap)};`),e.columnGap!=null&&n.push(`column-gap:${a(e.columnGap)};`),e.padding!=null&&n.push(`padding:${a(e.padding)};`),(e.align??e.alignItems)&&n.push(`align-items:${e.alignItems??e.align};`),e.alignContent!=null&&n.push(`align-content:${e.alignContent};`),(e.justify??e.justifyContent)&&n.push(`justify-content:${e.justifyContent??e.justify};`),e.aspectRatio!=null&&n.push(`aspect-ratio:${String(e.aspectRatio)};`),e.flexWrap!=null?n.push(`flex-wrap:${e.flexWrap};`):e.wrap&&n.push("flex-wrap:wrap;"),e.width!=null&&n.push(`width:${a(e.width)};`),e.minWidth!=null&&n.push(`min-width:${a(e.minWidth)};`),e.maxWidth!=null&&n.push(`max-width:${a(e.maxWidth)};`),e.height!=null&&n.push(`height:${a(e.height)};`),e.minHeight!=null&&n.push(`min-height:${a(e.minHeight)};`),e.maxHeight!=null&&n.push(`max-height:${a(e.maxHeight)};`),e.aspectRatio!=null&&e.height==null&&n.push("height:auto;"),e.backgroundColor!=null&&n.push(`background-color:${e.backgroundColor};`),e.borderRadius!=null&&n.push(`border-radius:${a(e.borderRadius)};`),e.border!=null&&n.push(`border:${e.border};`),e.boxShadow!=null&&n.push(`box-shadow:${e.boxShadow};`),G(n,e),E(n,e),e.overflow!=null&&n.push(`overflow:${e.overflow};`),e.transform!=null&&n.push(`transform:${e.transform};`),e.pointerEvents!=null&&n.push(`pointer-events:${e.pointerEvents};`),e.opacity!=null&&n.push(`opacity:${e.opacity};`),n.join("")}function N(e){return re({value:e.style,breakpointMap:e.breakpointMap,selector:e.selector,serialize:$e})}function ee(e){return re({value:e.style,breakpointMap:e.breakpointMap,selector:e.selector,serialize:ve})}function Me(e){let n=e.breakpointMap??a$1;if(!He(e.style,n))return [];let t=e.selector??W,o=[],i=new Set([0]);ie(e.style,i,n);for(let r of Array.from(i).sort((s,l)=>s-l)){let s=Le(e.style,r,n),l=Te(s),d=Ce(s),h=[l?`${t}{${l}}`:"",d?`${t} [data-rmg-skel-text-line="true"]{${d}}`:""].filter(Boolean).join("");h&&o.push({minWidth:r,css:h,raw:true});}return o}function Ne(e){if(e.barWidths?.length)return e.barWidths;if(e.lineWidthsPx?.length)return e.lineWidthsPx.map(n=>`${Math.max(0,n)}px`)}function Pe(e){return Math.max(1,Math.min(64,Math.trunc(e)))}function _e(e,n,t){let o=e.textId,i=o?n?.[o]:void 0;if(!i)return e;let r=Pe(i.lines),s=Ne(i),l=typeof i.barHeight=="number"&&Number.isFinite(i.barHeight)?i.barHeight:typeof e.barHeight=="number"?e.barHeight:$(e.barHeight,0,0,t),d=typeof i.lineHeight=="number"&&Number.isFinite(i.lineHeight)?i.lineHeight:typeof e.lineHeight=="number"?e.lineHeight:M(e.lineHeight,1,0,t);return {...e,barHeight:l,lineHeight:d,lines:r,...s?.length?{barWidth:s}:null,lastBarWidth:s?.[Math.min(r,s.length)-1]??e.lastBarWidth,responsiveBy:void 0}}function P(e,n,t,o=a$1){if(!n)return e;if(e.kind===t){let r=e,s=Array.isArray(r.slots)?r.slots.map(l=>({...l,item:l?.item?P(l.item,n,t,o):l?.item})):void 0;return {...r,item:P(r.item,n,t,o),...s?{slots:s}:null}}let i=e;return i.kind==="text"?_e(i,n,o):i.kind==="media"?i:i.kind==="stack"||i.kind==="row"||i.kind==="col"?{...i,children:i.children.map(r=>P(r,n,t,o))}:i}function _(e,n,t=new Set){if(!e)return t;if(e.kind===n){let i=e;_(i.item,n,t);for(let r of i.slots??[])_(r.item,n,t);return t}let o=e;if(o.kind==="text")return o.textId&&t.add(o.textId),t;if(o.kind==="stack"||o.kind==="row"||o.kind==="col")for(let i of o.children)_(i,n,t);return t}function I(e,n,t,o,i=a$1){if(e.kind===o){let r=e,s=N({style:r.style,breakpointMap:i}),l=s.length?n():void 0;l&&s.length&&t.push({nodeId:l,rules:s});let d=I(r.item,n,t,o,i),h=Array.isArray(r.slots)?r.slots.map(m=>({...m,item:m?.item?I(m.item,n,t,o,i):m?.item})):void 0;return {...r,...l?{__rmgNodeId:l}:null,item:d,...h?{slots:h}:null}}switch(e.kind){case "rect":case "square":case "circle":{let r=e,s=ee({style:r.style,breakpointMap:i});if(!s.length)return e;let l=n();return t.push({nodeId:l,rules:s}),{...r,__rmgNodeId:l}}case "text":{let r=e,s=r.__rmgTextRenderState??y({barHeight:r.barHeight,barWidth:r.barWidth,lineHeight:r.lineHeight,lines:r.lines,lastBarWidth:r.lastBarWidth,responsiveBy:r.responsiveBy,breakpointMap:i}),l=[...X({renderState:s,fitContent:ye(r.style)}).map(h=>({...h,raw:true})),...Me({style:r.style,breakpointMap:i})];if(!l.length&&!r.__rmgTextRenderState)return e;let d=l.length?n():void 0;return d&&l.length&&t.push({nodeId:d,rules:l}),{...r,...d?{__rmgNodeId:d}:null,__rmgTextRenderState:s}}case "media":{let r=e,s=[...N({style:r.style,breakpointMap:i}),...ee({style:r.tile?.style,breakpointMap:i,selector:`${W} [data-rmg-skel-media-tile="true"]`})];if(!s.length)return e;let l=n();return t.push({nodeId:l,rules:s}),{...e,__rmgNodeId:l}}case "stack":case "row":case "col":{let r=e,s=N({style:r.style,breakpointMap:i}),l=s.length?n():void 0;l&&s.length&&t.push({nodeId:l,rules:s});let d=r.children.map(h=>I(h,n,t,o,i));return {...r,...l?{__rmgNodeId:l}:null,children:d}}default:return e}}function qe(e){if(!e.rules.length)return "";let n=`[${e.scopeAttr}="${Y(e.scopeId)}"]`,t=[];for(let o of e.rules){let i=`${n} [data-rmg-skel-node="${Y(o.nodeId)}"]`;for(let r of o.rules){let s=r.raw?r.css.split("__NODE_SEL__").join(i):`${i}{${r.css}}`;r.minWidth<=0?t.push(s):r.query==="container"?t.push(`@container (min-width:${r.minWidth}px){${s}}`):t.push(`@media (min-width:${r.minWidth}px){${s}}`);}}return t.join(`
|
|
2
|
+
`)}function le(e,n,t){return se(e,t?void 0:n)}function ne(e){let{kind:n,style:t,shimmer:o,disableShimmer:i,breakpointMap:r,mediaTile:s}=e,l=n==="circle"?p.skelCircle:n==="square"?p.skelSquare:p.skelRect,d=ae(t,r),h=e.__rmgNodeId;return jsx("div",{"data-rmg-skel-node":h,"data-rmg-skel-media-tile":s?"true":void 0,className:[p.skelTile,l,i?null:p.skelShimmer].filter(Boolean).join(" "),style:{...le(d,o,i),...oe(d)}})}function Ie({node:e,disableShimmer:n,breakpointMap:t}){let o=e.__rmgTextRenderState??y({barHeight:e.barHeight,barWidth:e.barWidth,lineHeight:e.lineHeight,lines:e.lines,lastBarWidth:e.lastBarWidth,responsiveBy:e.responsiveBy,breakpointMap:t}),i=ae(e.style,t),r=e.__rmgNodeId,s=o.responsiveBy==="container"&&o.usesResponsiveBarCss,l=L(o.baseState.metrics),d=Q(s?void 0:i,o.baseState.metrics.totalHeight),h=oe(i),m={height:o.baseState.metrics.barHeight,backgroundColor:i?.backgroundColor,borderRadius:i?.borderRadius},x=j(i?.width),g=jsx("div",{"data-rmg-skel-node":r,"data-rmg-skel-text":"true","data-rmg-skel-text-id":e.textId,className:p.skelText,style:{...d,...s?null:h,paddingBlock:`${o.baseState.metrics.paddingBlock}px`,rowGap:`${o.baseState.metrics.rowGap}px`,"--rmg-skel-text-safari-height":`${l.totalHeight}px`,"--rmg-skel-text-safari-padding-block":`${l.paddingBlock}px`,"--rmg-skel-text-safari-row-gap":`${l.rowGap}px`},children:Array.from({length:o.maxLines}).map((H,T)=>jsx("div",{"data-rmg-skel-text-line":"true",className:[p.skelTile,n?null:p.skelShimmer,p.skelTextLine].filter(Boolean).join(" "),style:{...le(m,e.shimmer,n),display:T>=o.baseState.lineCount?"none":void 0,width:x?o.baseState.barWidths[T]??"100%":"100%",maxWidth:o.baseState.barWidths[T]??"100%"}},T))});return s?jsx("div",{"data-rmg-skel-text-container":"true",style:{...Q(i),...h,containerType:"inline-size"},children:g}):g}function je({node:e,disableShimmer:n,breakpointMap:t}){let o=t??a$1;switch(e.kind){case "rect":case "square":case "circle":return jsx(ne,{...e,disableShimmer:n,breakpointMap:o});case "media":{let i=Math.max(0,e.count|0),r=e.direction??"row",s=e.tile?.shape??"rect",l=e.__rmgNodeId,d=Z(J(e.style,o));return jsx("div",{"data-rmg-skel-node":l,className:[p.skelGroup,r==="row"?p.skelRow:p.skelCol].join(" "),style:d,children:Array.from({length:i}).map((h,m)=>jsx(ne,{kind:s,style:e.tile?.style,shimmer:e.tile?.shimmer,disableShimmer:n,breakpointMap:o,mediaTile:true},m))})}case "stack":case "row":case "col":{let i=e.kind==="row"?p.skelRow:e.kind==="col"?p.skelCol:p.skelStack,r=e.__rmgNodeId,s=Z(J(e.style,o));return jsx("div",{"data-rmg-skel-node":r,className:[p.skelGroup,i].join(" "),style:s,children:e.children.map((l,d)=>jsx(je,{node:l,disableShimmer:n,breakpointMap:o},d))})}case "text":return jsx(Ie,{node:e,disableShimmer:n,breakpointMap:o});default:return null}}export{_ as A,I as B,qe as C,je as D,p as a,W as b,ue as c,he as d,L as e,ke as f,$ as g,M as h,We as i,y as j,X as k,a as l,oe as m,we as n,Fe as o,Z as p,Le as q,Ve as r,ae as s,J as t,Ke as u,Y as v,N as w,ee as x,Me as y,P as z};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import {p,t,v as v$1,c as c$1,u,i,B as B$1,C,q as q$1,r,j as j$1,e as e$1,f,g,d,h}from'./chunk-45TZO7MN.mjs';import {a,c,e}from'./chunk-HK2DPKES.mjs';import*as F from'react';import {jsx}from'react/jsx-runtime';var ln=Object.assign(function({children:e}){return F.createElement(F.Fragment,null,e)},{__rmgMasonryItem:true,displayName:"Masonry.Item"});function $e(t,e){let n=e[t];if(typeof n=="number"&&Number.isFinite(n))return n;let r=parseFloat(t);return Number.isNaN(r)?0:r}function Zt(t){if(t==="full")return t;if(!(typeof t!="number"||!Number.isFinite(t)))return Math.max(1,t|0)}function Fe(t){let e=F.Children.toArray(t);return e.length===0?null:e.length===1?e[0]??null:F.createElement(F.Fragment,null,t)}function He(t){return F.isValidElement(t)&&!!t.type?.__rmgMasonryItem}function un(t){if(!He(t))return {node:t};let e={span:t.props.span,className:t.props.className,style:t.props.style};return {node:Fe(t.props.children),layoutMeta:e}}function Be(t){return !!t&&typeof t=="object"&&!Array.isArray(t)}function gt(t,e){if(!Be(t)){let r=Zt(t);return r==null?[]:[{minWidth:0,span:r}]}let n=Object.entries(t).map(([r,i])=>({minWidth:$e(r,e),span:Zt(i)})).filter(r=>r.span!=null).sort((r,i)=>r.minWidth-i.minWidth);return n.length===0?[]:(n[0].minWidth>0?n.unshift({minWidth:0,span:n[0].span}):n[0].minWidth<0&&(n[0]={...n[0],minWidth:0}),n)}function Te(t,e){let n=Math.max(1,e|0);return t==="full"?n:typeof t!="number"||!Number.isFinite(t)?1:Math.max(1,Math.min(n,t|0))}function Gt(t){let{span:e,columnCount:n,width:r,breakpointMap:i}=t,s=gt(e,i);if(!s.length)return 1;let a=s[0].span;for(let o of s)if(r>=o.minWidth)a=o.span;else break;return Te(a,n)}var tt=240,ue=[55,90,130,75];function pe(t){return t!=null&&Number.isFinite(t)?[{minWidth:0,value:t}]:[]}function Ie(t){return t!=null&&Number.isFinite(t)?t:void 0}function Ae(){return {ratios:[...ue],radius:12}}function B(t){return `${Math.max(0,t)}px`}function I(t){return `calc(${t})`}function Yt(t){let e=t.trim();for(;e.startsWith("(")&&e.endsWith(")");){let n=0,r=true;for(let i=0;i<e.length;i++){let s=e[i];if(s==="("&&(n+=1),s===")"&&(n-=1),n===0&&i<e.length-1){r=false;break}if(n<0){r=false;break}}if(!r||n!==0)break;e=e.slice(1,-1).trim();}return e}function ce(t){let e=Yt(t);return e.startsWith("calc(")&&e.endsWith(")")?Yt(e.slice(5,-1).trim()):e}function j(t){return `(${ce(t)})`}function Y(t){let e=ce(t);if(!e)return null;let n=e.match(/^(-?\d*\.?\d+)([a-zA-Z%]+)?$/);if(!n)return null;let r=Number(n[1]);return Number.isFinite(r)?{value:r,unit:n[2]??null}:null}function Ve(t){let e=Y(t);return e!=null&&e.value===0}function mt(t,e,n){return Number.isFinite(t)?t===0&&n?.preferPxForZero?"0px":e?`${t}${e}`:`${t}`:e?`0${e}`:"0"}function b(t){let e=t.filter(Boolean);if(!e.length)return "0px";let n=[],r=0;for(let i of e){let s=Y(i);if(!s){n.push(i);continue}if(s.unit==="px"||s.unit==null&&s.value===0){r+=s.value;continue}n.push(i);}return (r!==0||!n.length&&r===0)&&n.push(mt(r,"px",{preferPxForZero:true})),n.length===1?n[0]:I(n.map(j).join(" + "))}function Nt(t,e){if(Ve(e))return t;let n=Y(t),r=Y(e);return n&&r&&(n.unit===r.unit&&n.unit!=null||n.unit==="px"&&r.unit==null&&r.value===0||r.unit==="px"&&n.unit==null&&n.value===0||n.unit==null&&r.unit==null)?mt(n.value-r.value,n.unit??r.unit,{preferPxForZero:(n.unit??r.unit)==="px"}):I(`${j(t)} - ${j(e)}`)}function v(t,e){if(!Number.isFinite(e))return I(`${j(t)} * ${e}`);if(e===0)return "0px";if(e===1)return t;let n=Y(t);return n?mt(n.value*e,n.unit,{preferPxForZero:n.unit==="px"}):I(`${j(t)} * ${e}`)}function Ut(t,e){if(!Number.isFinite(e)||e===0)return I(`${j(t)} / ${e}`);if(e===1)return t;let n=Y(t);return n?mt(n.value/e,n.unit,{preferPxForZero:n.unit==="px"}):I(`${j(t)} / ${e}`)}function de(t){let e=t.filter(Boolean);return e.length?e.length===1?e[0]:`max(${e.join(", ")})`:"0px"}function Xt(t,e){if(!t)return [];if(typeof t=="number")return [];if(typeof t=="string")return [];if(typeof t!="object")return [];let n=[];for(let[i,s]of Object.entries(t)){let a=Number(s);if(!Number.isFinite(a))continue;if(String(+i)===i){let l=+i;Number.isFinite(l)&&l>=0&&n.push({minWidth:l,value:a});continue}let o=e?.[i];typeof o=="number"&&Number.isFinite(o)&&n.push({minWidth:o,value:a});}n.sort((i,s)=>i.minWidth-s.minWidth);let r=[];for(let i of n){let s=r[r.length-1];s&&s.minWidth===i.minWidth?s.value=i.value:r.push(i);}return r}function Jt(t,e,n){if(t==null)return n;if(typeof t=="number")return t;if(typeof t=="string"){let r=Number(t);return Number.isFinite(r)?r:n}return e.length?e[0].value:n}function Qt(t,e,n){let r=n;for(let i of t)if(i.minWidth<=e)r=i.value;else break;return r}function Oe(t,e){if(!(!t&&!e))return {...t||{},...e||{}}}function L(t,e){if(t==null)return null;if(typeof t=="number")return Number.isFinite(t)?t:null;let n=t.trim();if(!n)return null;if(n.endsWith("%")){let i=Number(n.slice(0,-1));return !Number.isFinite(i)||e==null?null:e*i/100}let r=parseFloat(n);return Number.isFinite(r)?r:null}function T(t,e){if(t==null)return null;if(typeof t=="number")return B(t);let n=t.trim();if(!n)return null;if(n.endsWith("%")){let r=Number(n.slice(0,-1));return !Number.isFinite(r)||!e?null:v(e,r/100)}return n}function me(t){if(t==null)return null;if(typeof t=="number")return Number.isFinite(t)&&t>0?t:null;let e=t.replace(/\s+/g,"");if(!e)return null;if(e.includes("/")){let[r,i]=e.split("/"),s=Number(r),a=Number(i);return Number.isFinite(s)&&Number.isFinite(a)&&s>0&&a>0?s/a:null}let n=parseFloat(e);return Number.isFinite(n)&&n>0?n:null}function et(t,e,n){if(t==null)return 0;let r=t.toString().trim().split(/\s+/).map(i=>L(i,n)).filter(i=>Number.isFinite(i));return r.length?r.length===1?r[0]*2:r.length===2?e==="block"?r[0]*2:r[1]*2:r.length===3?e==="block"?r[0]+r[2]:r[1]*2:e==="block"?r[0]+r[2]:r[1]+r[3]:0}function nt(t,e,n){if(t==null)return null;let r=t.toString().trim().split(/\s+/).map(i=>T(i,n)).filter(Boolean);return r.length?r.length===1?v(r[0],2):r.length===2?v(e==="block"?r[0]:r[1],2):r.length===3?e==="block"?b([r[0],r[2]]):v(r[1],2):b(e==="block"?[r[0],r[2]]:[r[1],r[3]]):null}function he(t){if(typeof t!="string")return 0;let e=t.trim().split(/\s+/)[0],n=L(e);return n!=null?n*2:0}function fe(t){return he(t)}function xe(t){if(typeof t!="string")return null;let e=t.trim().split(/\s+/)[0],n=T(e);return n?v(n,2):null}function _e(t){return xe(t)}function q(t,e){return (L(t?.marginTop,e)??0)+(L(t?.marginBottom,e)??0)}function Z(t,e){let n=T(t?.marginTop,e),r=T(t?.marginBottom,e);return !n&&!r?null:b([n??"0px",r??"0px"])}function te(t,e){return t?q(t,e)+et(t.padding,"block",e)+he(t.border):0}function ee(t,e){return t?b([Z(t,e)??"0px",nt(t.padding,"block",e)??"0px",xe(t.border)??"0px"]):null}function ye(t,e){return t==null?null:Math.max(0,t-et(e?.padding,"inline",t)-fe(e?.border))}function je(t,e){if(!t)return null;let n=nt(e?.padding,"inline",t),r=_e(e?.border);return !n&&!r?t:Nt(t,b([n??"0px",r??"0px"]))}function wt(t,e){return {slope:t.slope*e,intercept:t.intercept*e}}function be(t,e){return {slope:t.slope,intercept:t.intercept-e}}function ge(t,e){if(t==null)return null;if(typeof t=="number")return Number.isFinite(t)?{slope:0,intercept:t}:null;let n=t.trim();if(!n)return null;if(n.endsWith("%")){let i=Number(n.slice(0,-1));return Number.isFinite(i)?wt(e,i/100):null}let r=parseFloat(n);return Number.isFinite(r)?{slope:0,intercept:r}:null}function Me(t,e,n){if(t==null)return {slope:0,intercept:0};let r=t.toString().trim().split(/\s+/).map(a=>ge(a,n));if(!r.length||r.some(a=>a==null))return null;let i=(a,o)=>({slope:a.slope+o.slope,intercept:a.intercept+o.intercept}),s=(a,o)=>wt(a,o);return r.length===1?s(r[0],2):r.length===2?s(r[1],2):r.length===3?s(r[1],2):i(r[1],r[3])}function De(t,e){let n=ge(t?.width,e)??e;return t?.maxWidth==null?n:null}function ze(t,e){let n=Me(e?.padding,"inline",t);return n?be({slope:t.slope-n.slope,intercept:t.intercept-n.intercept},fe(e?.border)):null}function ne(t,e){let n=Me(e?.padding,"inline",t);return n?{slope:t.slope-n.slope,intercept:t.intercept-n.intercept}:null}function pt(t,e){return t==null?null:Math.max(0,t-et(e?.padding,"inline",t))}function re(t,e){if(!t)return null;let n=nt(e?.padding,"inline",t);return n?Nt(t,n):t}function ct(t,e){let n=L(t?.width,e)??e,r=L(t?.maxWidth,e);return r==null?Math.max(0,n):Math.max(0,Math.min(n,r))}function Wt(t,e){let n=T(t?.width,e)??e,r=T(t?.maxWidth,e);return r?de([`min(${n}, ${r})`]):n}function Ce(t){let e=t.node.responsiveBy==="container"&&t.availableWidthPx!=null&&Number.isFinite(t.availableWidthPx)&&t.availableWidthPx>0?t.availableWidthPx:t.responsiveMinWidth,n=q$1(t.node.style,t.responsiveMinWidth,t.breakpointMap);if(t.conservativeContainerText&&t.node.responsiveBy==="container"){let a=t.node.__rmgTextRenderState??j$1({barHeight:t.node.barHeight,barWidth:t.node.barWidth,lineHeight:t.node.lineHeight,lines:t.node.lines,lastBarWidth:t.node.lastBarWidth,responsiveBy:t.node.responsiveBy,breakpointMap:t.breakpointMap}),o=a.states.reduce((l,c)=>c.state.metrics.totalHeight>l.metrics.totalHeight?c.state:l,a.baseState);return {style:n,metrics:t.textMetricsMode==="safari"?e$1(o.metrics):o.metrics}}let r=f(t.node.lines,1,e,t.breakpointMap),i=g(t.node.barHeight,typeof t.node.barHeight=="number"?t.node.barHeight:0,e,t.breakpointMap),s=d({barHeight:i,lineHeight:h(t.node.lineHeight,typeof t.node.lineHeight=="number"?t.node.lineHeight:1,e,t.breakpointMap),lines:r});return {style:n,metrics:t.textMetricsMode==="safari"?e$1(s):s}}function U(t,e,n=a){return r(t,e,n)}function Pt(t,e){let n=e?.responsiveMinWidth??0,r=e?.availableWidthPx??null,i=e?.breakpointMap??a,s=e?.conservativeContainerText===true,a$1=e?.textMetricsMode??"default";if(t.kind==="rect"||t.kind==="square"||t.kind==="circle"){let o=q$1(t.style,n,i),l=L(o?.height,r??void 0);if(l!=null)return l+q(o,r??void 0);let c=ct(o,r??tt);if(t.kind==="square"&&c!=null)return c+q(o,r??void 0);let u=me(o?.aspectRatio);if(u!=null&&c!=null&&c>0)return c/u+q(o,r??void 0);let p=q(o,r??void 0);return p>0?p:null}if(t.kind==="text"){let{style:o,metrics:l}=Ce({node:t,responsiveMinWidth:n,availableWidthPx:r,breakpointMap:i,conservativeContainerText:s,textMetricsMode:a$1});return l.totalHeight+q(o,r??void 0)}if(t.kind==="media"){let o=U(t.style,n,i),l=pt(r,o),c=L(o?.gap,l??void 0)??0,u=et(o?.padding,"block",r??void 0),p=Math.max(0,t.count|0),h={kind:t.tile?.shape??"rect",style:t.tile?.style,shimmer:t.tile?.shimmer},y=(t.direction??"row")==="row"&&p>1&&l!=null?Math.max(0,(l-c*Math.max(0,p-1))/p):l,m=Pt(h,{responsiveMinWidth:n,availableWidthPx:y,breakpointMap:i,conservativeContainerText:s,textMetricsMode:a$1});return m==null?u||null:(t.direction??"row")==="row"||p<=1?m+u:m*p+c*Math.max(0,p-1)+u}if(t.kind==="row"||t.kind==="col"||t.kind==="stack"){let o=U(t.style,n,i),l=pt(r,o),c=L(o?.gap,l??void 0)??0,u=et(o?.padding,"block",r??void 0),p=t.children.map(h=>Pt(h,{responsiveMinWidth:n,availableWidthPx:l,breakpointMap:i,conservativeContainerText:s,textMetricsMode:a$1})).filter(h=>h!=null);return p.length?t.kind==="row"?Math.max(...p)+u:p.reduce((h,y)=>h+y,0)+c*Math.max(0,p.length-1)+u:u||null}return null}function kt(t,e){let n=e?.responsiveMinWidth??0,r=e?.availableWidthExpr??null,i=e?.availableWidthPx??null,s=e?.breakpointMap??a,a$1=e?.conservativeContainerText===true,o=e?.textMetricsMode??"default";if(t.kind==="rect"||t.kind==="square"||t.kind==="circle"){let l=q$1(t.style,n,s),c=T(l?.height,r??void 0);if(c!=null)return b([c,Z(l,r??void 0)??"0px"]);let u=Wt(l,r??B(tt));if(t.kind==="square")return b([u,Z(l,r??void 0)??"0px"]);let p=me(l?.aspectRatio);return p!=null?b([Ut(u,p),Z(l,r??void 0)??"0px"]):Z(l,r??void 0)??null}if(t.kind==="text"){let{style:l,metrics:c}=Ce({node:t,responsiveMinWidth:n,availableWidthPx:i,breakpointMap:s,conservativeContainerText:a$1,textMetricsMode:o});return b([B(c.totalHeight),Z(l,r??void 0)??"0px"])}if(t.kind==="media"){let l=U(t.style,n,s),c=re(r,l),u=pt(i,l),p=T(l?.gap,c??void 0)??"0px",h=L(l?.gap,u??void 0)??0,y=nt(l?.padding,"block",r??void 0)??"0px",m=Math.max(0,t.count|0),f={kind:t.tile?.shape??"rect",style:t.tile?.style,shimmer:t.tile?.shimmer},S=(t.direction??"row")==="row"&&m>1&&c!=null?Ut(Nt(c,v(p,Math.max(0,m-1))),m):c,W=(t.direction??"row")==="row"&&m>1&&u!=null?Math.max(0,(u-h*Math.max(0,m-1))/m):u,M=kt(f,{responsiveMinWidth:n,availableWidthExpr:S,availableWidthPx:W,breakpointMap:s,conservativeContainerText:a$1,textMetricsMode:o});return M==null?y||null:(t.direction??"row")==="row"||m<=1?b([M,y]):b([v(M,m),v(p,Math.max(0,m-1)),y])}if(t.kind==="row"||t.kind==="col"||t.kind==="stack"){let l=U(t.style,n,s),c=re(r,l),u=pt(i,l),p=T(l?.gap,c??void 0)??"0px",h=nt(l?.padding,"block",r??void 0)??"0px",y=t.children.map(m=>kt(m,{responsiveMinWidth:n,availableWidthExpr:c,availableWidthPx:u,breakpointMap:s,conservativeContainerText:a$1,textMetricsMode:o})).filter(m=>!!m);return y.length?t.kind==="row"?b([de(y),h]):b([...y.flatMap((m,f)=>f>0?[p,m]:[m]),h]):h||null}return null}function Ke(t){if(t==null)return null;let e=Number(t);return Number.isFinite(e)?Math.max(25,Math.min(260,e)):null}function qe(t){if(t==null)return null;let e=Number(t);return Number.isFinite(e)&&e>0?e:null}function Rt(t,e){let n=t.slots?.[e];return {item:n?.item??t.item,itemWrapStyle:Oe(t.itemWrapStyle,n?.itemWrapStyle),ratio:Ke(n?.ratio),heightPx:qe(n?.heightPx),span:n?.span}}function Se(t,e,n){let r=gt(t,n);for(let i of r)e.add(i.minWidth);}function Et(t){return Gt({span:t.span,columnCount:t.columnCount,width:t.minWidth,breakpointMap:t.breakpointMap})}function xn(t,e){return We(t,e)?.key??null}function We(t,e){if(!t.length)return null;let n=t[0];for(let r of t)if(e>=r.minWidth)n=r;else break;return n}function Ze(t){let{columnsRules:e,gapRules:n,baseColumns:r,baseGapPx:i,extraMinWidths:s}=t,a=new Set([0]),o=new Set;for(let p of e)a.add(p.minWidth);for(let p of n)a.add(p.minWidth);if(s)for(let p of s){let h=Math.max(0,p|0);a.add(h),o.add(h);}let l=Array.from(a).sort((p,h)=>p-h),c$1=[],u="";for(let p of l){let h=Qt(e,p,r),y=Qt(n,p,i),m=Math.max(1,h|0),f=Math.max(0,c(y,i)),S=`c${m}_g${f}`;S===u&&!o.has(p)||(c$1.push({minWidth:p,columns:m,gapPx:f,key:S===u?`${S}_m${p}`:S}),u=S);}return c$1.length?c$1:[{minWidth:0,columns:r,gapPx:i,key:`c${r}_g${i}`}]}function Ge(t){let e$1=pe(t.layoutWidthPx).filter(r=>r.value>0);if(!e$1.length)return;if(t.viewportWidth!=null){let r=We(t.states,t.viewportWidth),i=Ie(t.layoutWidthPx);return !r||i==null||i<=0?void 0:new Map([[r.key,i]])}let n=new Map;for(let r of t.states){let i=e(e$1,r.minWidth);i!=null&&i>0&&n.set(r.key,i);}return n.size?n:void 0}function Ye(t,e){return e!=null&&Number.isFinite(e)&&e>0?Math.max(e,tt):Math.max(t.minWidth||tt,tt)}function ie(t,e){let n=Ye(t,e);return t.columns>0?(n-t.gapPx*(t.columns-1))/t.columns:n}function ut(t,e,n){if(t){if(t.kind==="masonry"){u(t.style,e,n),ut(t.item,e,n);for(let r of t.slots??[])Se(r.span,e,n),ut(r.item,e,n);return}switch(t.kind){case "rect":case "square":case "circle":u(t.style,e,n);return;case "text":u(t.style,e,n);for(let r of i({barHeight:t.barHeight,barWidth:t.barWidth,lineHeight:t.lineHeight,lines:t.lines,lastBarWidth:t.lastBarWidth,breakpointMap:n}))e.add(r);return;case "media":u(t.style,e,n),u(t.tile?.style,e,n);return;case "stack":case "row":case "col":u(t.style,e,n);for(let r of t.children)ut(r,e,n);return}}}function Ue(t){return Number.isFinite(t)?Math.max(0,Math.round(t*1e3)/1e3):null}function Xe(t,e,n){if(t<=0){n.add(0);return}if(e.slope<=0)return;let r=Ue((t-e.intercept)/e.slope);r!=null&&n.add(r);}function vt(t){let{node:e,availableWidth:n,responsiveMinWidth:r,breakpointMap:i$1,out:s}=t;if(!(!e||!n))switch(e.kind){case "rect":case "square":case "circle":return;case "text":if(e.responsiveBy!=="container")return;for(let a of i({barHeight:e.barHeight,barWidth:e.barWidth,lineHeight:e.lineHeight,lines:e.lines,lastBarWidth:e.lastBarWidth,breakpointMap:i$1}))Xe(a,n,s);return;case "media":{let a=U(e.style,r,i$1),o=ne(n,a);if(!o)return;let l=L(a?.gap,0)??0,c=Math.max(0,e.count|0),u=(e.direction??"row")==="row"&&c>1?wt(be(o,l*Math.max(0,c-1)),1/c):o,p={kind:e.tile?.shape??"rect",style:e.tile?.style,shimmer:e.tile?.shimmer};vt({node:p,availableWidth:u,responsiveMinWidth:r,breakpointMap:i$1,out:s});return}case "stack":case "row":case "col":{let a=U(e.style,r,i$1),o=ne(n,a);if(!o)return;for(let l of e.children)vt({node:l,availableWidth:o,responsiveMinWidth:r,breakpointMap:i$1,out:s});return}}}function Je(t){let{state:e,span:n}=t,r=Math.max(1,e.columns|0),i={slope:1/r,intercept:-(e.gapPx*Math.max(0,r-1))/r};return {slope:i.slope*n,intercept:i.intercept*n+e.gapPx*Math.max(0,n-1)}}function Qe(t){let e=new Set([0]),{state:n,itemCount:r,structuredLayout:i,spans:s,breakpointMap:a}=t;if(!i)return [];for(let o=0;o<r;o++){let l=Rt(i,o),c=Et({span:l?.span??s?.[o],columnCount:n.columns,minWidth:n.minWidth,breakpointMap:a}),u=Je({state:n,span:c}),p=De(l.itemWrapStyle,u),h=p?ze(p,l.itemWrapStyle):null;vt({node:l.item,availableWidth:h,responsiveMinWidth:n.minWidth,breakpointMap:a,out:e});}return Array.from(e).sort((o,l)=>o-l)}function tn(t){if(!t.layout)return {structuredLayout:null,responsiveCss:""};let e=t.breakpointMap??a,n=0,r=()=>`n${++n}`,i=[],s=B$1(t.layout,r,i,"masonry",e),a$1=t.scopeId?C({scopeAttr:"data-rmg-mskel-scope",scopeId:t.scopeId,rules:i}):"";return {structuredLayout:s,responsiveCss:a$1}}function en(t){let e=t?.colsCssVar??"--rmg-cols",n=t?.gapCssVar??"--rmg-gap",r=t?.containerWidthCss??"100cqw";return I(`(${r} - ((var(${e}) - 1) * var(${n}))) / var(${e})`)}function se(t){let{span:e,columnWidthCssExpr:n,gapCssExpr:r="var(--rmg-gap)"}=t;return e<=1?n:b([v(n,e),v(r,Math.max(0,e-1))])}function oe(t){let{columnStart:e,columnWidthCssExpr:n,gapCssExpr:r="var(--rmg-gap)"}=t;return e<=0?"0px":b([v(n,e),v(r,e)])}function ae(t){let{index:e,slot:n,state:r,safeRatios:i,safeHeights:s,itemWidthCssExpr:a,itemWidthPx:o,breakpointMap:l,conservativeContainerText:c,textMetricsMode:u="default"}=t;if(n){let y=Wt(n.itemWrapStyle,a),m=ct(n.itemWrapStyle,o),f=je(y,n.itemWrapStyle),S=ye(m,n.itemWrapStyle),W=kt(n.item,{responsiveMinWidth:r.minWidth,availableWidthExpr:f,availableWidthPx:S,breakpointMap:l,conservativeContainerText:c,textMetricsMode:u});if(W)return b([W,ee(n.itemWrapStyle,y)??"0px"])}let p=Wt(n?.itemWrapStyle,a),h=ee(n?.itemWrapStyle,p)??"0px";return n?.heightPx!=null?b([B(n.heightPx),h]):n?.ratio!=null?b([I(`${p} * ${n.ratio/100}`),h]):s?.length?b([B(s[e%s.length]),h]):i.length?b([I(`${p} * ${i[e%i.length]/100}`),h]):b([p,h])}function le(t){let{index:e,slot:n,state:r,safeRatios:i,safeHeights:s,itemWidthPx:a,breakpointMap:o,conservativeContainerText:l,textMetricsMode:c="default"}=t;if(n){let y=ct(n.itemWrapStyle,a),m=ye(y,n.itemWrapStyle),f=Pt(n.item,{responsiveMinWidth:r.minWidth,availableWidthPx:m,breakpointMap:o,conservativeContainerText:l,textMetricsMode:c});if(f!=null)return Math.ceil(f+te(n.itemWrapStyle,y))}let u=ct(n?.itemWrapStyle,a),p=te(n?.itemWrapStyle,u),h=n?.heightPx!=null?n.heightPx:n?.ratio!=null?Math.round(n.ratio/100*u):s?.length?s[e%s.length]:i.length?Math.round(i[e%i.length]/100*u):u;return Math.ceil(h+p)}function Mt(t,e,n){let r=0;for(let i=e;i<e+n;i++)r=Math.max(r,t[i]??0);return r}function nn(t,e,n){let r=0;for(let i=e;i<e+n;i++)r+=t[i]??0;return r}function rn(t){let e=Math.max(1,t.columnCount-t.span+1);return t.cursor%e}function Ct(t){let{itemCount:e,columnCount:n,placement:r,heights:i,gapPx:s,spans:a}=t,o=Math.max(1,n|0),l=new Array(o).fill(0),c=new Array(o).fill(0),u=[],p=0,h=0,y=0;for(let m=0;m<e;m++){let f=Math.max(1,Math.min(o,Math.round(a?.[m]??1)||1)),S=i[m]??0,W=Math.max(0,o-f),M=0,C=0;if(r==="roundRobin")M=rn({cursor:h,columnCount:o,span:f}),C=Mt(l,M,f),h+=1;else if(r==="horizontalOrder")M=y%o,M+f>o&&(M=0),C=Mt(l,M,f),y=M+f;else {let R=0,N=Number.POSITIVE_INFINITY,X=Number.POSITIVE_INFINITY;for(let d=0;d<=W;d++){let w=Mt(l,d,f),D=nn(c,d,f);(w<N||w===N&&D<X||w===N&&D===X&&d<R)&&(R=d,N=w,X=D);}M=R,C=Number.isFinite(N)?N:0;}let H=C+S+s;for(let R=M;R<M+f;R++)l[R]=H,c[R]=(c[R]??0)+1;p=Math.max(p,C+S),u.push({index:m,span:f,columnStart:M,top:C,height:S});}return {items:u,height:p}}function St(t){if(t.items.length===0)return {itemTopCssExprs:[],itemHeightCssExprs:[],shellHeightCssExpr:"0px",cssVars:{}};let e=Math.max(1,t.columnCount|0),n=new Array(e).fill(0),r=new Array(e).fill(null),i=[],s=[],a={};for(let[u,p]of t.items.entries()){let h=`--rmg-mskel-height-${p.index}`,y=`var(${h})`;a[h]=p.heightCssExpr,s.push(y);let m=0,f=null;for(let C=p.columnStart;C<p.columnStart+p.span;C++){let H=n[C]??0,R=r[C]??null;(H>m||f==null)&&(m=H,f=R);}let S=m<=0||!f?"0px":t.gapPx>0?b([f,B(t.gapPx)]):f,W=b([S,y]);i.push(S);let M=(m>0?m+t.gapPx:0)+p.heightPx;for(let C=p.columnStart;C<p.columnStart+p.span;C++)n[C]=M,r[C]=W;}let l=0,c="0px";for(let u=0;u<e;u++){let p=n[u]??0,h=r[u]??"0px";p>=l&&(l=p,c=h);}return {itemTopCssExprs:i,itemHeightCssExprs:s,shellHeightCssExpr:c,cssVars:a}}function yn(t$1){let e=t$1.spec??Ae(),n={...a,...t$1.breakpoints??{}},r=pe(t$1.layoutWidthPx).filter(d=>d.value>0),i=e.ratios??ue,s=(Array.isArray(t$1.ratios)&&t$1.ratios.length?t$1.ratios:Array.isArray(e.ratios)&&e.ratios.length?e.ratios:i).map(d=>Number(d)).filter(d=>Number.isFinite(d)).map(d=>Math.max(25,Math.min(220,d))),a$1=(Array.isArray(t$1.heightsPx)&&t$1.heightsPx.length?t$1.heightsPx:Array.isArray(e.heightsPx)&&e.heightsPx.length?e.heightsPx:null)?.map(d=>Number(d)).filter(d=>Number.isFinite(d)&&d>0)??null,o=Xt(t$1.columns,n),l=Xt(t$1.gap,n),c$1=Jt(t$1.columns,o,4),u=Jt(t$1.gap,l,8),p$1=Math.max(1,c$1|0),h=Math.max(0,c(u,8)),y=Ze({columnsRules:o,gapRules:l,baseColumns:p$1,baseGapPx:h,extraMinWidths:(()=>{let d=new Set;ut(e.layout,d,n);for(let w of t$1.spans??[])Se(w,d,n);for(let w of r)d.add(w.minWidth);return d})()}),m=Ge({states:y,layoutWidthPx:t$1.layoutWidthPx,viewportWidth:t$1.viewportWidth}),{structuredLayout:f,responsiveCss:S}=tn({layout:e.layout,scopeId:t$1.scopeId,breakpointMap:n}),W=t$1.respectLayoutCount===false?Math.max(0,t$1.count|0):f?.count!=null?Math.max(0,f.count|0):Math.max(0,t$1.count|0),M=t$1.placement??"balanced",C="--rmg-mskel-colw",H=`var(${C})`,R=en(),N="var(--rmg-gap)",X=y.map(d=>{let w=m?.has(d.key)===true,D=!w,Lt=ie(d,m?.get(d.key)),$t=x=>Array.from({length:W},(g,P)=>{let $=f?Rt(f,P):null,A=Et({span:$?.span??t$1.spans?.[P],columnCount:d.columns,minWidth:d.minWidth,breakpointMap:n}),V=Lt*A+d.gapPx*Math.max(0,A-1),k=`--rmg-mskel-width-${P}`,E=se({span:A,columnWidthCssExpr:H,gapCssExpr:N}),O=`var(${k})`,Q=le({index:P,slot:$,state:d,safeRatios:s,safeHeights:a$1,itemWidthPx:V,breakpointMap:n,conservativeContainerText:D,textMetricsMode:x}),ot=ae({index:P,slot:$,state:d,safeRatios:s,safeHeights:a$1,itemWidthCssExpr:O,itemWidthPx:V,breakpointMap:n,conservativeContainerText:D,textMetricsMode:x});return {slot:$,span:A,height:Q,heightCssExpr:ot,itemWidthPx:V,itemWidthVarName:k,itemWidthCssValue:E,itemWidthCssExpr:O}}),J=$t("default"),z=$t("safari"),Ft=Ct({itemCount:W,columnCount:d.columns,placement:M,heights:J.map(x=>x.height),gapPx:d.gapPx,spans:J.map(x=>x.span)}),rt=St({columnCount:d.columns,gapPx:d.gapPx,items:Ft.items.map((x,g)=>({index:g,columnStart:x.columnStart,span:x.span,heightPx:x.height,heightCssExpr:J[g]?.heightCssExpr??B(x.height)}))}),Ht=Ct({itemCount:W,columnCount:d.columns,placement:M,heights:z.map(x=>x.height),gapPx:d.gapPx,spans:z.map(x=>x.span)}),it=St({columnCount:d.columns,gapPx:d.gapPx,items:Ht.items.map((x,g)=>({index:g,columnStart:x.columnStart,span:x.span,heightPx:x.height,heightCssExpr:z[g]?.heightCssExpr??B(x.height)}))}),st={[C]:R};for(let x of J)st[x.itemWidthVarName]=x.itemWidthCssValue;Object.assign(st,rt.cssVars);let Re={...st,...it.cssVars},Bt=x=>!w&&f?Qe({state:d,itemCount:W,structuredLayout:f,spans:t$1.spans,breakpointMap:n}).map(g=>{let P=ie(d,g),$=Array.from({length:W},(k,E)=>{let O=Rt(f,E),Q=Et({span:O?.span??t$1.spans?.[E],columnCount:d.columns,minWidth:d.minWidth,breakpointMap:n}),ot=P*Q+d.gapPx*Math.max(0,Q-1),Ne=`var(${`--rmg-mskel-width-${E}`})`,we=le({index:E,slot:O,state:d,safeRatios:s,safeHeights:a$1,itemWidthPx:ot,breakpointMap:n,conservativeContainerText:false,textMetricsMode:x}),Le=ae({index:E,slot:O,state:d,safeRatios:s,safeHeights:a$1,itemWidthCssExpr:Ne,itemWidthPx:ot,breakpointMap:n,conservativeContainerText:false,textMetricsMode:x});return {slot:O,span:Q,height:we,heightCssExpr:Le}}),A=Ct({itemCount:W,columnCount:d.columns,placement:M,heights:$.map(k=>k.height),gapPx:d.gapPx,spans:$.map(k=>k.span)}),V=St({columnCount:d.columns,gapPx:d.gapPx,items:A.items.map((k,E)=>({index:E,columnStart:k.columnStart,span:k.span,heightPx:k.height,heightCssExpr:$[E]?.heightCssExpr??B(k.height)}))});return {minWidth:g,rootDecls:{height:V.shellHeightCssExpr,...V.cssVars},items:A.items.map((k,E)=>({index:E,topCssExpr:V.itemTopCssExprs[E],leftCssExpr:oe({columnStart:k.columnStart,columnWidthCssExpr:H,gapCssExpr:N}),widthCssExpr:se({span:k.span,columnWidthCssExpr:H,gapCssExpr:N})}))}}):void 0,Ee=Bt("default"),ve=Bt("safari");return {state:d,shellHeightCssExpr:rt.shellHeightCssExpr,positionedCssVars:st,containerCssRules:Ee,safariShellHeightCssExpr:it.shellHeightCssExpr,safariPositionedCssVars:Re,safariContainerCssRules:ve,items:J.map((x,g)=>{let P=Ft.items[g]??{span:x.span,columnStart:0,top:0,height:x.height},$=Ht.items[g]??{span:x.span,columnStart:P.columnStart,top:P.top,height:z[g]?.height??x.height};return {index:g,height:x.height,columnIndex:P.columnStart,columnStart:P.columnStart,span:P.span,top:P.top,topCssExpr:rt.itemTopCssExprs[g],leftPx:P.columnStart*(Lt+d.gapPx),leftCssExpr:oe({columnStart:P.columnStart,columnWidthCssExpr:H,gapCssExpr:N}),widthPx:x.itemWidthPx,widthCssExpr:x.itemWidthCssExpr,slot:x.slot,heightCssExpr:rt.itemHeightCssExprs[g]??x.heightCssExpr,safariHeight:z[g]?.height??x.height,safariTop:$.top,safariTopCssExpr:it.itemTopCssExprs[g],safariHeightCssExpr:it.itemHeightCssExprs[g]??z[g]?.heightCssExpr??x.heightCssExpr}})}});return {itemCount:W,states:y,variants:X,structuredLayout:f,structuredNodeId:f?.__rmgNodeId,plainStructuredStyle:f?p(t(f.style,n)):void 0,responsiveCss:S}}function bn(t,e){if(!t.length)return null;let n=t[0];for(let r of t)if(e>=r.state.minWidth)n=r;else break;return n}function sn(t){return t.items.length?Math.max(0,...t.items.map(e=>e.top+e.height)):0}function G(t,e){return `${t}:${e} !important;`}function dt(t,e="default"){let n=e==="safari"?t.safariShellHeightCssExpr??t.shellHeightCssExpr:t.shellHeightCssExpr,r=e==="safari"?t.safariPositionedCssVars??t.positionedCssVars:t.positionedCssVars,i=[["height",n??`${sn(t)}px`],["--rmg-cols",t.state.columns],["--rmg-gap",`${t.state.gapPx}px`]];for(let[s,a]of Object.entries(r??{}))i.push([s,a]);return i}function Pe(t){return t.map(([e,n])=>e==="height"?["min-height",n]:[e,n])}function gn(t){if(!t.scopeId||!t.prediction.variants.length)return "";let e=`[data-rmg-masonry-layout-seed="${v$1(t.scopeId)}"]`,n=(i,s)=>{let a=`${e}{`+i.map(([l,c])=>G(l,c)).join("")+"}",o=s.map(l=>`${`${e}>[data-rmg-idx="${l.index}"]`}{`+[G("top",l.topCssExpr??"0px"),G("left",l.leftCssExpr),G("width",l.widthCssExpr)].join("")+"}").join("");return `${a}${o}`},r=i=>{let s=dt(i),a=n(s,i.items.map(u=>({index:u.index,topCssExpr:u.topCssExpr??`${u.top}px`,leftCssExpr:u.leftCssExpr,widthCssExpr:u.widthCssExpr}))),o=(i.containerCssRules??[]).map(u=>`@container (min-width:${u.minWidth}px){${n(Object.entries(u.rootDecls),u.items)}}`).join(""),l=n(dt(i,"safari"),i.items.map(u=>({index:u.index,topCssExpr:u.safariTopCssExpr??u.topCssExpr??`${u.safariTop}px`,leftCssExpr:u.leftCssExpr,widthCssExpr:u.widthCssExpr}))),c=(i.safariContainerCssRules??[]).map(u=>`@container (min-width:${u.minWidth}px){${n(Object.entries(u.rootDecls),u.items)}}`).join("");return `${a}${o}@supports ${c$1}{${l}${c}}`};return t.prediction.variants.map(i=>{let s=r(i);return i.state.minWidth<=0?s:`@media (min-width:${i.state.minWidth}px){${s}}`}).join(`
|
|
2
|
+
`)}function Mn(t){if(!t.scopeId||!t.prediction.variants.length)return "";let e=`[data-rmg-masonry-skeleton-shell="${v$1(t.scopeId)}"]`,n=i=>`${e}{`+Pe(i).map(([s,a])=>G(s,a)).join("")+"}",r=i=>{let s=n(dt(i)),a=(i.containerCssRules??[]).map(o=>`@container (min-width:${o.minWidth}px){${n(Object.entries(o.rootDecls))}}`).join("");return `${s}${a}`};return t.prediction.variants.map(i=>{let s=r(i);return i.state.minWidth<=0?s:`@media (min-width:${i.state.minWidth}px){${s}}`}).join(`
|
|
3
|
+
`)}function Cn(t){if(!t.scopeId||!t.prediction.variants.length)return "";let e=`[data-rmg-masonry-skeleton-shell="${v$1(t.scopeId)}"]`,n=i=>`${e}{`+Pe(i).map(([s,a])=>G(s,a)).join("")+"}",r=i=>{let s=n(dt(i,"safari")),a=(i.safariContainerCssRules??[]).map(o=>`@container (min-width:${o.minWidth}px){${n(Object.entries(o.rootDecls))}}`).join("");return `@supports ${c$1}{${s}${a}}`};return t.prediction.variants.map(i=>{let s=r(i);return i.state.minWidth<=0?s:`@media (min-width:${i.state.minWidth}px){${s}}`}).join(`
|
|
4
|
+
`)}var ke=F.createContext(null);function Wn(t){return jsx(ke.Provider,{value:t.value,children:t.children})}function Pn(){return F.useContext(ke)}export{ln as a,un as b,Gt as c,xn as d,en as e,se as f,oe as g,Ct as h,yn as i,bn as j,gn as k,Mn as l,Cn as m,Wn as n,Pn as o};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {a as a$1}from'./chunk-
|
|
1
|
+
import {a as a$1}from'./chunk-MJAHN7TG.mjs';import {b as b$1,a as a$2}from'./chunk-Y7NUGXTR.mjs';import {b}from'./chunk-UML6FCOQ.mjs';import {d}from'./chunk-WMG2LTLR.mjs';import {a}from'./chunk-HK2DPKES.mjs';import*as t from'react';import {jsx}from'react/jsx-runtime';var v=t.forwardRef(function(R,I){let{children:M,breakpoints:l,gridItemBaseClass:G,renderMode:y,...m}=R,n=d(),b$2=b(),C=t.useMemo(()=>n?.effectiveBreakpoints??{...a,...l||{}},[n?.effectiveBreakpoints,l]),i=t.useMemo(()=>({...m}),[m]),E=t.useRef(0),O=t.useCallback(()=>`rmg-${++E.current}`,[]),H=t.useMemo(()=>{let e=t.Children.toArray(M),r=[];for(let o of e){let s=b$1(o);s.node!=null&&r.push({id:O(),node:s.node,layoutMeta:s.layoutMeta});}return r},[]),[L]=t.useState(H);function k(e){return {renderIntro:e?.renderIntro,staggerMs:e?.staggerMs??60,durationMs:e?.durationMs??600,easing:e?.easing??"cubic-bezier(.2,.7,.2,1)"}}let T=t.useMemo(()=>k(i.intro),[i.intro]),a$2=n?.expandableImageRefs??t.useRef([]),h=n?.registerExpandableImage??t.useCallback((e,r)=>{if(!r){a$2.current[e]=null;return}if(r.tagName==="IMG"){a$2.current[e]=r;return}let o=r.querySelector("img");a$2.current[e]=o;},[]),x=e=>e?e instanceof HTMLImageElement?e:e.querySelector("img"):null,B=t.useCallback((e,r)=>{if(!n?.requestFullscreenOpen)return;let o=x(r??null)??a$2.current[e]??null;o&&n.requestFullscreenOpen({source:"grid",index:e,image:o,event:void 0});},[n,a$2]);return jsx(a$1,{ref:I,cells:L,grid:i,breakpoints:C,viewportWidth:b$2,intro:T,enableFullscreen:!!n?.fsEnabled,onOpen:B,registerExpandableImage:h,gridItemBaseClass:G,renderMode:y})}),w=Object.assign(v,{Item:a$2}),j=w;export{j as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import {o,c as c$1,e,h as h$1,f,g}from'./chunk-
|
|
1
|
+
import {o,c as c$1,e,h as h$1,f,g}from'./chunk-4URHXPTV.mjs';import {a}from'./chunk-A6MPGIEJ.mjs';import {b as b$1}from'./chunk-UML6FCOQ.mjs';import {d}from'./chunk-WMG2LTLR.mjs';import {b,a as a$1,h,c}from'./chunk-HK2DPKES.mjs';import*as t from'react';import {jsx,jsxs}from'react/jsx-runtime';var O={masonryRoot:"ar",masonryCol:"tr",masonryItem:"k",masonryShellFrame:"nr",introContainer:"w",introActive:"L"};function le(e){if(e.preferPreviousHeight&&Number.isFinite(e.previousHeight)&&Number(e.previousHeight)>=0)return Number(e.previousHeight);let n=e.initialHeights?.[e.index];return Number.isFinite(n)&&Number(n)>0?Number(n):e.previousHeight??0}function ae(e){let n=e.previousHeights.slice(0,e.itemCount),f=n.length!==e.previousHeights.length;for(let r=0;r<e.itemCount;r++){if(e.measuredIndices.has(r)&&Number.isFinite(n[r]))continue;let h=le({index:r,previousHeight:n[r],initialHeights:e.initialHeights,preferPreviousHeight:e.preferPreviousHeights});n[r]!==h&&(n[r]=h,f=true);}return f?n:e.previousHeights}var ue=({items:e$1,masonrySpans:n,masonryColumns:f$1,masonryGap:r,masonryPlacement:h$2="balanced",masonryInitialHeights:v,masonryClassNames:S,masonryStyle:A,masonryAs:_="div",masonryRootRef:C,breakpoints:R,masonryPlugins:b,responsiveViewportWidth:x,onVisibleIndex:T,onLayoutMeasured:c$2,measurementKey:m,revealedIndicesRef:a,masonryLayoutSeedScopeId:w})=>{let g$1=b$1(),p=x??g$1,E=t.useRef(new Set),V=t.useRef(false),W=t.useRef(m),H=t.useMemo(()=>({...a$1,...R??{}}),[R]),[I,z]=t.useState(()=>ae({itemCount:e$1.length,previousHeights:[],measuredIndices:new Set,initialHeights:v})),N=t.useRef(I);t.useLayoutEffect(()=>{N.current=I;},[I]),t.useLayoutEffect(()=>{let i=N.current,d=W.current!==m;W.current=m;let s=e$1.length>0&&i.length>=e$1.length&&i.slice(0,e$1.length).every(l=>Number.isFinite(l)&&l>=0);if(!V.current){V.current=true,c$2?.(e$1.length===0);return}d&&E.current.clear(),c$2?.(e$1.length===0||s),z(()=>{let l=ae({itemCount:e$1.length,previousHeights:i,measuredIndices:E.current,initialHeights:v,preferPreviousHeights:d&&s});return N.current=l,l});},[e$1.length,v,m,c$2]);let P=t.useMemo(()=>{let i=h(f$1,4,p,H);return Math.max(1,i|0)},[f$1,p,H]),B=t.useMemo(()=>{let i=h(r,8,p,H);return Math.max(0,c(i,8))},[r,p,H]),F=t.useMemo(()=>e$1.map((i,u)=>c$1({span:n?.[u],columnCount:P,width:p,breakpointMap:H})),[e$1,n,P,p,H]),D=t.useMemo(()=>e({containerWidthCss:"100%"}),[]),L=t.useMemo(()=>{let i=h$1({itemCount:e$1.length,columnCount:P,placement:h$2,heights:I,gapPx:B,spans:F});return {height:i.height,items:i.items.map(u=>({...u,leftCssExpr:g({columnStart:u.columnStart,columnWidthCssExpr:D}),widthCssExpr:f({span:u.span,columnWidthCssExpr:D})}))}},[e$1.length,P,h$2,I,B,F,D]),M=t.useCallback(()=>{if(c$2){if(e$1.length===0){c$2(true);return}for(let i=0;i<e$1.length;i++)if(!E.current.has(i)){c$2(false);return}c$2(true);}},[e$1.length,c$2]),U=t.useCallback((i,u)=>{Number.isFinite(u)&&(u>=0&&E.current.add(i),M(),z(d=>{if(d[i]===u)return d;let l=d.slice();return l[i]=u,N.current=l,l}));},[M]);t.useLayoutEffect(()=>{M();},[I,M]);let j=t.useMemo(()=>e$1.map((i,u)=>{let d=L.items[u];return d?jsx(de,{index:u,onHeight:U,className:S?.item,masonryPlugins:b,onVisibleIndex:T,revealedIndicesRef:a,measurementKey:m,top:d.top,left:d.leftCssExpr,width:d.widthCssExpr,children:i},u):null}),[e$1,L.items,U,b,S?.item,T,m,a]);return jsx(_,{ref:C,className:S?.root,"data-rmg-masonry-layout-seed":w,style:{position:"relative",width:"100%",height:`${L.height}px`,"--rmg-cols":P,"--rmg-gap":`${B}px`,...A||{}},children:j})},de=({index:e,onHeight:n,className:f,top:r,left:h,width:v,masonryPlugins:S,onVisibleIndex:A,revealedIndicesRef:_,measurementKey:C,children:R})=>{let b=t.useRef(null),x=t.useRef(new Set),T=_??x,c=t.useMemo(()=>S?.find(a=>a.renderItem),[S]);t.useLayoutEffect(()=>{let a=b.current;if(!a)return;if(n(e,a.getBoundingClientRect().height),typeof ResizeObserver<"u"){let y=new ResizeObserver(k=>{for(let g of k)n(e,g.contentRect.height);});return y.observe(a),()=>y.disconnect()}},[e,n,C]),t.useEffect(()=>{if(!A)return;let a=b.current;if(!a)return;let w=false,y=()=>{w||(w=true,A(e));};if(typeof IntersectionObserver>"u"){y();return}let k=a.closest('[data-rmg-viewport="true"]'),g=new IntersectionObserver(p=>{for(let E of p)if(E.isIntersecting){y(),g.disconnect();break}},{root:k,rootMargin:"200px",threshold:.15});return g.observe(a),()=>g.disconnect()},[R,e,A]);let m={className:f,"data-rmg-idx":e,style:{position:"absolute",top:`${r}px`,left:h,width:v,"--rmg-intro-index":e}};return c?.renderItem?c.renderItem({index:e,itemRef:b,itemProps:m,children:R,revealedIndicesRef:T},c.options):jsx("div",{ref:b,...m,children:R})};function me(e,n){e&&(typeof e=="function"?e(n):e.current=n);}function pe(e){return e?Array.from(e.children).filter(n=>n instanceof HTMLElement&&n.hasAttribute("data-rmg-idx")):[]}function fe(e){return typeof e=="object"&&e!=null&&e.__rmgMasonryPlugin===true}var Le=t.forwardRef(function({items:n,itemSpans:f,masonry:r,breakpoints:h,intro:v,introReady:S=true},A){let _=d(),C=o(),R=t.useRef(null),b$1=t.useRef(null),x=t.useRef(new Set),T=t.useRef(new Set),c=t.useRef(new Set),m=t.useRef(false),a$1=t.useRef(n.length===0),w=t.useRef(n.length),[y,k]=t.useState(b),[g,p]=t.useState(n.length===0),[E,V]=t.useState(false),[W,H]=t.useState(false),[I,z]=t.useState(true);t.useLayoutEffect(()=>{let s=()=>{let l=window.innerWidth??document.documentElement.clientWidth??window.visualViewport?.width??0;l<=0||k($=>$===l?$:l);};return s(),window.addEventListener("resize",s),window.visualViewport?.addEventListener("resize",s),()=>{window.removeEventListener("resize",s),window.visualViewport?.removeEventListener("resize",s);}},[]),t.useLayoutEffect(()=>{z(false);},[]),t.useEffect(()=>{H(true);},[]),t.useEffect(()=>{x.current.clear(),T.current.clear();},[n.length]);let N=t.useMemo(()=>(r.plugins??[]).filter(fe),[r.plugins]),P=t.useMemo(()=>N.some(s=>s.blocksReady),[N]);a(!P,R,V);let F=y>0,L=(P?W&&F:F&&E)&&g,M=t.useCallback(()=>pe(R.current),[]);t.useImperativeHandle(A,()=>({getRootNode:()=>R.current,getItemNodes:M,isReady:()=>m.current,onReady:s=>(c.current.add(s),()=>{c.current.delete(s);})}),[M]),t.useEffect(()=>{if(m.current=L,!L)return;let s=M();c.current.forEach(l=>l(s));},[L,M]);let U=t.useCallback(s=>{x.current.has(s)||(x.current.add(s),_?.notifyBaseVisibleIndex(s));},[_]),j=t.useMemo(()=>JSON.stringify({itemCount:n.length,viewportWidth:y,columns:r.columns??null,gap:r.gap??null,placement:r.placement??"balanced",spans:f??[]}),[n.length,y,r.columns,r.gap,r.placement,f]);t.useEffect(()=>{g&&(a$1.current=true);},[g]),t.useLayoutEffect(()=>{let s=w.current!==n.length;if(w.current=n.length,n.length===0){a$1.current=true,p(true);return}(s||!a$1.current)&&(a$1.current=false,p(false));},[n.length,j]);let i=W&&S,u=[O.masonryRoot,O.introContainer,i?O.introActive:"",r.classNames?.root||""].filter(Boolean).join(" "),d$1=t.useCallback(s=>{R.current=s,me(r.rootRef,s);},[r.rootRef]);return jsx("div",{ref:b$1,className:O.masonryShellFrame,children:jsxs("div",{"data-rmg-masonry-content-ready":L?"true":"false",style:{containerType:"inline-size"},children:[C?.responsiveCss&&I?jsx("style",{dangerouslySetInnerHTML:{__html:C.responsiveCss}}):null,jsx(ue,{items:n,masonrySpans:f,masonryColumns:r.columns,masonryGap:r.gap,masonryPlacement:r.placement??"balanced",masonryClassNames:{root:u,column:[O.masonryCol,r.classNames?.column].filter(Boolean).join(" "),item:[O.masonryItem,r.classNames?.item].filter(Boolean).join(" ")},masonryStyle:{"--rmg-intro-stagger":`${v.staggerMs}ms`,"--rmg-intro-duration":`${v.durationMs}ms`,"--rmg-intro-easing":v.easing},masonryAs:r.as??"div",masonryRootRef:d$1,breakpoints:h,masonryPlugins:N,masonryInitialHeights:C?.initialHeights,responsiveViewportWidth:y,onVisibleIndex:U,onLayoutMeasured:p,measurementKey:j,revealedIndicesRef:T,masonryLayoutSeedScopeId:C?.scopeId})]})})});export{Le as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var N=1,T=6e5,I=250,K="rmg_skel_cache",W=/^(?:0|[1-9]\d{0,4})(?:\.\d{1,3})?(?:px|%)$/;function g(n){return !!n&&typeof n=="object"&&!Array.isArray(n)}function l(n,e){let t=Number(n);return !Number.isFinite(t)||e?.min!=null&&t<e.min||e?.max!=null&&t>e.max?null:e?.integer?Math.trunc(t):t}function f(n){return typeof n=="string"&&n.trim()?n.trim():null}function P(n){let e=f(n);return !e||!W.test(e)?null:e}function b(n,e){if(!Array.isArray(n)||e?.maxLength!=null&&n.length>e.maxLength)return;let t=[];for(let r of n){let i=l(r,{min:e?.min,max:e?.max});if(i==null)return;t.push(Math.round(i*1e3)/1e3);}return t}function E(n){if(Array.isArray(n)){let[s,h,o,c,a,m]=n,w=l(s,{min:1,max:64,integer:true});if(w==null)return null;let y=b(h,{maxLength:64,min:0,max:1e4}),k=o==null?void 0:l(o,{min:0,max:1e3}),S=c==null?void 0:l(c,{min:0,max:10}),C=a==null?void 0:l(a,{min:0,max:1e5}),x=Array.isArray(m)?m.map(P):void 0;return h!=null&&!y||o!=null&&k==null||c!=null&&S==null||a!=null&&C==null||x&&x.some(H=>!H)?null:{lines:w,...y?.length?{lineWidthsPx:y}:null,...k!=null?{barHeight:k}:null,...S!=null?{lineHeight:S}:null,...C!=null?{containerWidthPx:C}:null,...x?.length?{barWidths:x}:null}}if(!g(n))return null;let e=l(n.lines,{min:1,max:64,integer:true});if(e==null)return null;let t=Array.isArray(n.barWidths)?n.barWidths.map(P):void 0;if(t&&t.some(s=>!s))return null;let r=b(n.lineWidthsPx,{maxLength:64,min:0,max:1e4}),i=n.barHeight==null?void 0:l(n.barHeight,{min:0,max:1e3}),u=n.lineHeight==null?void 0:l(n.lineHeight,{min:0,max:10}),d=n.containerWidthPx==null?void 0:l(n.containerWidthPx,{min:0,max:1e5});return n.barHeight!=null&&i==null||n.lineHeight!=null&&u==null||n.containerWidthPx!=null&&d==null?null:{lines:e,...t?.length?{barWidths:t}:null,...r?.length?{lineWidthsPx:r}:null,...i!=null?{barHeight:i}:null,...u!=null?{lineHeight:u}:null,...d!=null?{containerWidthPx:d}:null}}function p(n){if(!g(n))return null;let e={};for(let[t,r]of Object.entries(n)){let i=f(t);if(!i)return null;let u=E(r);if(!u)return null;e[i]=u;}return e}function _(n){if(n==null)return;if(!g(n))return null;let e=f(n.variantKey??n.v);if(!e)return null;let t=(n.shellHeightPx??n.h)==null?void 0:l(n.shellHeightPx??n.h,{min:0,max:1e5}),r=b(n.itemHeightsPx??n.i,{maxLength:500,min:0,max:1e5});return (n.shellHeightPx??n.h)!=null&&t==null||(n.itemHeightsPx??n.i)!=null&&!r?null:{variantKey:e,...t!=null?{shellHeightPx:t}:null,...r?.length?{itemHeightsPx:r}:null}}function A(n){try{return decodeURIComponent(n)}catch{return n}}function M(n){let e=5381;for(let t=0;t<n.length;t++)e=(e<<5)+e^n.charCodeAt(t);return (e>>>0).toString(36)}function O(n){return n.trim().replace(/[^a-zA-Z0-9_-]+/g,"_").replace(/^_+|_+$/g,"").slice(0,48)||"default"}function L(n){if(!g(n)||(n.version??n.v)!==1)return null;let e=f(n.key??n.k),t=f(n.scopeId??n.s),r=n.kind??n.d,i=r==="s"||r==="skeleton"?"skeleton":r==="l"||r==="slider"?"slider":r==="g"||r==="grid"?"grid":r==="m"||r==="masonry"?"masonry":r==="e"||r==="entries"?"entries":null,u=l(n.createdAt??n.t,{min:1}),d=l(n.widthBucketMin??n.b,{min:0,max:1e5}),s=l(n.viewportWidth??n.w,{min:1,max:1e5}),h=n.layoutWidthPx??n.l,o=h==null?void 0:l(h,{min:0,max:1e5}),c=(n.routeKey??n.r)==null?void 0:f(n.routeKey??n.r),a=p(n.text??n.x),m=_(n.masonry??n.m);return !e||!t||!i||u==null||d==null||s==null||h!=null&&o==null||(n.routeKey??n.r)!=null&&!c||!a||m===null?null:{version:1,key:e,scopeId:t,kind:i,...c?{routeKey:c}:null,createdAt:u,widthBucketMin:d,viewportWidth:s,...o!=null?{layoutWidthPx:o}:null,...m?{masonry:m}:null,text:a}}function z(n){let e=typeof n=="string"&&n.trim()?n.trim():"default";return `${K}_${O(e)}_${M(e)}`}function B(n){let e={};for(let[t,r]of Object.entries(n.text)){let i=[r.lines,r.lineWidthsPx?.length?r.lineWidthsPx:void 0,r.barHeight,r.lineHeight,r.containerWidthPx,r.barWidths?.length?r.barWidths:void 0];for(;i.length>1&&i[i.length-1]==null;)i.pop();e[t]=i;}return JSON.stringify({v:1,k:n.key,s:n.scopeId,d:n.kind==="masonry"?"m":n.kind==="slider"?"l":n.kind==="grid"?"g":n.kind==="entries"?"e":"s",...n.routeKey?{r:n.routeKey}:null,t:n.createdAt,b:n.widthBucketMin,w:n.viewportWidth,...n.layoutWidthPx!=null?{l:n.layoutWidthPx}:null,...n.masonry?{m:{v:n.masonry.variantKey,...n.masonry.shellHeightPx!=null?{h:n.masonry.shellHeightPx}:null,...n.masonry.itemHeightsPx?.length?{i:n.masonry.itemHeightsPx}:null}}:null,x:e})}function R(n,e={}){if(!n)return null;let t=typeof e.ttlMs=="number"&&Number.isFinite(e.ttlMs)?Math.max(0,e.ttlMs):6e5,i=(typeof e.now=="number"&&Number.isFinite(e.now)?e.now:Date.now())-n.createdAt;if(t>0&&(i<0||i>t)||e.key!=null&&n.key!==e.key||e.scopeId!=null&&n.scopeId!==e.scopeId||e.kind!=null&&n.kind!==e.kind||e.routeKey!=null&&n.routeKey!==e.routeKey||e.widthBucketMin!=null&&n.widthBucketMin!==e.widthBucketMin)return null;if(e.textIds?.length){for(let u of e.textIds)if(!n.text[u])return null}return e.variantKeys?.length&&n.masonry?.variantKey&&!e.variantKeys.includes(n.masonry.variantKey)||e.itemCount!=null&&n.masonry?.itemHeightsPx&&n.masonry.itemHeightsPx.length!==e.itemCount?null:n}function F(n,e={}){if(!n)return null;let t;try{t=JSON.parse(A(n));}catch{return null}return R(L(t),e)}function $(n=typeof window<"u"?window.location:void 0){return n?`${n.pathname}${n.search}`:""}export{N as a,T as b,I as c,z as d,B as e,R as f,F as g,$ as h};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as t from'react';import {jsx}from'react/jsx-runtime';var a=t.createContext(null);function u({children:n,options:o,snapshot:e,snapshots:l}){let r=t.useMemo(()=>{let s={...l??{}};return e?.key&&(s[e.key]=e),{options:o,snapshots:s}},[o,e,l]);return jsx(a.Provider,{value:r,children:n})}function c(){return t.useContext(a)}function C(n,o){let e=n?.key??o?.options?.key;return e?{...o?.options??{},...n??{key:e},key:e,snapshot:n?.snapshot??o?.snapshots?.[e]??o?.options?.snapshot??null,cookie:{...o?.options?.cookie??{},...n?.cookie??{}}}:null}export{u as a,c as b,C as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import {A,z,C,B,n,l,D}from'./chunk-45TZO7MN.mjs';import {b as b$1,c as c$1}from'./chunk-AU4O4KU4.mjs';import {f,h,e as e$1,d as d$1}from'./chunk-AOQIL2HW.mjs';import {a as a$1,d,e,b,c}from'./chunk-Z34PSRMG.mjs';import {a as a$3}from'./chunk-UUAWLGWO.mjs';import {a}from'./chunk-LVYED5ZM.mjs';import {a as a$2}from'./chunk-HK2DPKES.mjs';import*as m from'react';import {jsx,Fragment,jsxs}from'react/jsx-runtime';var R={shell:"Ue",contentLayer:"y",loadingLayer:"x",contentLayerVisible:"Ve",contentLayerBlocked:"We",loadingLayerOverlay:"er",loadingLayerCompare:"rr",loadingLayerExit:"ir"};function L(e){return Math.round(e*1e3)/1e3}function ye(e){let o=globalThis.CSS;return o?.escape?o.escape(e):e.replace(/["\\]/g,"\\$&")}function le(e,o,t){return e.querySelector(`[${o}="${ye(t)}"]`)}function ge(e){let o=[];for(let t of e){if(t.width<=0||t.height<=0)continue;let n=o.find(i=>Math.abs(i.top-t.top)<=1.5);n?(n.left=Math.min(n.left,t.left),n.right=Math.max(n.right,t.right)):o.push({top:t.top,left:t.left,right:t.right});}return o.sort((t,n)=>t.top-n.top).map(t=>L(Math.max(0,t.right-t.left)))}function Se(e){let t=e.ownerDocument.createRange();t.selectNodeContents(e);try{let n=typeof t.getClientRects=="function"?ge(Array.from(t.getClientRects())):[];if(n.length)return n;let i=e.getBoundingClientRect();return i.width>0?[L(i.width)]:[]}finally{t.detach();}}function ke(e,o,t){let n=e?le(e,"data-rmg-skel-text-id",o):null,s=n?.querySelector('[data-rmg-skel-text-line="true"]')?.getBoundingClientRect().height,r=n?.getBoundingClientRect().height,d=s&&s>0&&r&&r>0?r/Math.max(1,t)/s:void 0;return {...s&&s>0?{barHeight:L(s)}:null,...d&&Number.isFinite(d)?{lineHeight:L(d)}:null}}function fe(e){let o={};for(let t of e.textIds){let n=le(e.contentRoot,"data-skeleton-text-id",t);if(!n)return null;let i=Se(n);if(!i.length)return null;let s=Math.max(1,i.length);o[t]={lines:s,lineWidthsPx:i,...ke(e.skeletonRoot,t,s)};}return o}function Re(e){return e?.querySelector('[data-rmg-skeleton-content-layer="true"]')??e??document}function Ce(e){let o=typeof e.cache.ttlMs=="number"&&Number.isFinite(e.cache.ttlMs)?Math.max(0,e.cache.ttlMs):6e5,t=Math.max(0,Math.ceil(o/1e3)),n=e.cache.cookie??{},i=n.sameSite??"lax",s=n.path??"/",r=n.secure||i==="none",d=e$1(e.snapshot);document.cookie=[`${d$1(e.cache.key)}=${encodeURIComponent(d)}`,`path=${s}`,`max-age=${t}`,`samesite=${i}`,r?"secure":""].filter(Boolean).join("; ");}function ce({cache:e,kind:o,scopeId:t,textIds:n,skeletonRootRef:i,shellRef:s,getGeometrySnapshot:r}){let d=n.join("");m.useEffect(()=>{if(!e?.key||!n.length)return;let y=0,u=0,g=false,S=typeof e.debounceMs=="number"&&Number.isFinite(e.debounceMs)?Math.max(0,e.debounceMs):250,k=()=>{if(g)return;let C=i.current,v=s?.current??null,w=Re(v),f=fe({textIds:n,skeletonRoot:C,contentRoot:w});if(!f)return;let a=r?.()??{widthBucketMin:0};if(!a)return;let l=document.documentElement,p=a.viewportWidth??(window.innerWidth||l.clientWidth||0);!Number.isFinite(p)||p<=0||Ce({cache:e,snapshot:{version:1,key:e.key,scopeId:t,kind:o,routeKey:e.routeKey??h(window.location),createdAt:Date.now(),widthBucketMin:Math.max(0,L(a.widthBucketMin)),viewportWidth:L(p),...a.layoutWidthPx!=null?{layoutWidthPx:L(a.layoutWidthPx)}:null,...a.masonry?{masonry:a.masonry}:null,text:f}});},h$1=C=>{window.clearTimeout(u),y&&window.cancelAnimationFrame(y),u=window.setTimeout(()=>{y=window.requestAnimationFrame(k);},C);};h$1(0);let x=()=>h$1(S);return window.addEventListener("resize",x),()=>{g=true,window.clearTimeout(u),y&&window.cancelAnimationFrame(y),window.removeEventListener("resize",x);}},[e,r,o,t,s,i,n,d]);}function H(...e){return e.filter(Boolean).join(" ")}function Me({skeletonNode:e$1,children:o,ready:t,enabled:n=true,force:i,timing:s,shellClassName:r,shellStyle:d$1,loadingShellStyle:y,contentClassName:u,contentStyle:g,contentOwnsWrapperLayout:S,loadingLayerFirst:k,contentWrapper:h,shellDataAttributes:x,shellRef:C}){let v=o!==void 0,w=a(),f=t===true,a$2=a$1(i),l=v&&n&&(a$2.enabled||!f),p=m.useMemo(()=>d({prefersReducedMotion:w,timing:s}),[w,s]),{showLoadingLayer:M,loadingExiting:T}=e({loadingActive:l,exitMs:p.exitMs,minVisibleMs:p.minVisibleMs}),c$1=m.useMemo(()=>b({loadingActive:l,loadingForced:i,contentReady:f}),[f,i,l]),E=m.useMemo(()=>c({exitMs:p.exitMs,compareMode:c$1.compareMode,loadingLayerOpacity:c$1.loadingLayerOpacity,opacityVarName:"--rmg-standalone-skeleton-opacity"}),[p.exitMs,c$1.compareMode,c$1.loadingLayerOpacity]);if(!v)return jsx(Fragment,{children:e$1});let b$1=n&&M,O=!n||c$1.compareMode||T||!b$1,_=n&&c$1.contentBlocked&&!T&&!S,B=h?h(o):o,P=b$1?jsx("div",{className:H(R.loadingLayer,S&&R.loadingLayerOverlay,c$1.compareMode&&R.loadingLayerCompare,T&&R.loadingLayerExit),style:E,"data-rmg-skeleton-loading-layer":"true",children:e$1}):null;return jsxs("div",{ref:C,className:H(R.shell,r),style:{...b$1?y:null,...d$1},"aria-busy":l?true:void 0,"data-rmg-skeleton-wrapper":"true","data-rmg-skeleton-ready":f?"true":"false","data-rmg-skeleton-compare":c$1.compareMode?"true":"false","data-rmg-skeleton-layout-owner":S?"content":"skeleton",...x,children:[k?P:null,jsx("div",{className:H(R.contentLayer,O&&R.contentLayerVisible,_&&R.contentLayerBlocked,u),style:{"--rmg-loading-fade-duration":`${p.exitMs}ms`,...g},"aria-hidden":O?void 0:true,"data-rmg-skeleton-content-layer":"true",children:B}),k?null:P]})}function Ie({layout:e,children:o,breakpoints:t,className:n$1,style:i,shellClassName:s,shellStyle:r,contentClassName:d,contentStyle:y,backgroundColor:u,radius:g,shimmer:S,disableShimmer:k,ariaLabel:h,ready:x,enabled:C$1,force:v,timing:w,cache:f$1}){let a=m.useMemo(()=>({...a$2,...t??{}}),[t]),l$1=m.useMemo(()=>a$3("skel_",{layout:e,breakpoints:a,backgroundColor:u,radius:g,shimmer:S,disableShimmer:k}),[e,a,u,g,S,k]),p=b$1(),M=c$1(f$1,p),T=m.useMemo(()=>Array.from(A(e,"__standalone__")),[e]),c=f(M?.snapshot,{key:M?.key,scopeId:l$1,kind:"skeleton",routeKey:M?.routeKey,ttlMs:M?.ttlMs,textIds:T}),E=m.useRef(null),b=m.useRef(null);ce({cache:M,kind:"skeleton",scopeId:l$1,textIds:T,skeletonRootRef:E,shellRef:b});let{layout:O,responsiveCss:_}=m.useMemo(()=>{let pe=0,me=()=>`n${++pe}`,A=[],ue=c?z(e,c.text,"__standalone__",a):e;return {layout:B(ue,me,A,"__standalone__",a),responsiveCss:C({scopeAttr:"data-rmg-skeleton-scope",scopeId:l$1,rules:A})}},[e,l$1,a,c]),B$1={...i,...u?{"--rmg-skel-bg":u}:null,...g!=null?{"--rmg-skel-radius":l(g)}:null,...k?null:n(S)};return jsx(Me,{skeletonNode:jsxs("div",{"data-rmg-skeleton-scope":l$1,ref:E,className:n$1,style:B$1,"aria-hidden":h?void 0:true,"aria-label":h,role:h?"status":void 0,"aria-live":h?"polite":void 0,children:[_?jsx("style",{dangerouslySetInnerHTML:{__html:_}}):null,jsx(D,{node:O,disableShimmer:k,breakpointMap:a})]}),ready:x,enabled:C$1,force:v,timing:w,shellClassName:s,shellStyle:r,contentClassName:d,contentStyle:y,shellRef:b,children:o})}export{ce as a,Me as b,Ie as c};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import {i,j,m,l,k,n as n$1,d}from'./chunk-4URHXPTV.mjs';import {a as a$2,b as b$2}from'./chunk-CXH7XALE.mjs';import {A,z,n,l as l$1,a as a$3,m as m$1,D,v,c as c$1,o}from'./chunk-45TZO7MN.mjs';import {b,c}from'./chunk-AU4O4KU4.mjs';import {f}from'./chunk-AOQIL2HW.mjs';import {a as a$1}from'./chunk-UUAWLGWO.mjs';import {a,b as b$1}from'./chunk-HK2DPKES.mjs';import*as h from'react';import {jsx,jsxs}from'react/jsx-runtime';var X={masonrySkeletonRoot:"or",masonrySkeletonCol:"sr",masonrySkeletonItem:"lr",masonrySkeletonLayoutItem:"z",masonrySkeletonLayoutItemInner:"dr"};function Fe(e,s){let r=`[data-rmg-mskel-scope="${v(e)}"]`,i=[];i.push(`${r} [data-rmg-mskel-variant]{display:none !important;}`);let a=s[0];a&&i.push(`${r} [data-rmg-mskel-variant="${a.key}"]{display:block !important;}`);for(let k of s)k.minWidth<=0||i.push(`@media (min-width:${k.minWidth}px){${r} [data-rmg-mskel-variant]{display:none !important;}${r} [data-rmg-mskel-variant="${k.key}"]{display:block !important;}}`);return i.join(`
|
|
2
|
+
`)}function _(e,s){return `${e}:${s} !important;`}function Ke(e,s){let r=`[data-rmg-mskel-scope="${v(e)}"]`,i=[];for(let a of s){let k=a.items.some(M=>M.span>1),v$1=`${r} [data-rmg-mskel-variant="${v(a.state.key)}"]`;for(let M of a.containerCssRules??[]){let d=`${v$1}{`+Object.entries(M.rootDecls).map(([g,W])=>_(g,W)).join("")+"}",w=k?M.items.map(g=>`${`${v$1} > [data-rmg-mskel-index="${g.index}"]`}{`+[_("top",g.topCssExpr??"0px"),_("left",g.leftCssExpr),_("width",g.widthCssExpr)].join("")+"}").join(""):"";i.push(`@container (min-width:${M.minWidth}px){${d}${w}}`);}}return i.join(`
|
|
3
|
+
`)}function De(e,s){let r=`[data-rmg-mskel-scope="${v(e)}"]`,i=[];for(let a of s){let k=a.items.some(l=>l.span>1),v$1=`${r} [data-rmg-mskel-variant="${v(a.state.key)}"]`,M=a.items.length?Math.max(0,...a.items.map(l=>l.safariTop+l.safariHeight)):0,d=[["height",a.safariShellHeightCssExpr??a.shellHeightCssExpr??`${M}px`],["--rmg-cols",a.state.columns],["--rmg-gap",`${a.state.gapPx}px`],...Object.entries(a.safariPositionedCssVars??{})],w=k?d:d.filter(([l])=>l!=="height"),g=`${v$1}{`+w.map(([l,N])=>_(l,N)).join("")+"}",W=a.items.map(l=>{let N=`${v$1} [data-rmg-mskel-index="${l.index}"]`,C=k?[_("height",l.safariHeightCssExpr),_("top",l.safariTopCssExpr??`${l.safariTop}px`)]:[_("height",l.safariHeightCssExpr)];return `${N}{`+C.join("")+"}"}).join(""),f=(a.safariContainerCssRules??[]).map(l=>{let N=Object.entries(l.rootDecls).filter(([L])=>k||L!=="height"),C=`${v$1}{`+N.map(([L,o])=>_(L,o)).join("")+"}",$=k?l.items.map(L=>`${`${v$1} [data-rmg-mskel-index="${L.index}"]`}{`+[_("top",L.topCssExpr??"0px"),_("left",L.leftCssExpr),_("width",L.widthCssExpr)].join("")+"}").join(""):"";return `@container (min-width:${l.minWidth}px){${C}${$}}`}).join("");i.push(`${g}${W}${f}`);}return i.length?`@supports ${c$1}{${i.join("")}}`:""}function He(e){if(!e)return {outerStyle:void 0,innerStyle:void 0};let s=o(e),r={};return s.boxShadow!=null&&(r["--rmg-masonry-skel-wrap-shadow"]=s.boxShadow,delete s.boxShadow),s.borderRadius!=null&&(r["--rmg-masonry-skel-wrap-shadow-radius"]=s.borderRadius),{outerStyle:Object.keys(r).length?r:void 0,innerStyle:s}}function Be(e){let{count:s,columns:r,gap:i$1,breakpoints:a$2,classNames:k,ratios:v,placement:M,spec:d$1,viewportWidth:w,layoutWidthPx:g,disableShimmer:W,cacheSnapshot:f}=e,l=h.useRef(g),N=l.current!==void 0?l.current:g,C=h.useMemo(()=>({...a,...a$2??{}}),[a$2]),$=h.useMemo(()=>a$1("mskel_",{count:s,columns:r,gap:i$1,breakpoints:C,ratios:v,heightsPx:e.heightsPx,spans:e.spans,placement:M,spec:d$1}),[s,r,i$1,C,v,e.heightsPx,e.spans,M,d$1]),L={...d$1?.backgroundColor?{"--rmg-skel-bg":d$1.backgroundColor}:null,...d$1?.radius!=null?{"--rmg-skel-radius":l$1(d$1.radius)}:null,...W?null:n(d$1?.shimmer,{enabledVarName:"--rmg-skel-card-shimmer-enabled"}),...!W&&(d$1?.shimmer?.c2??d$1?.highlightColor)!=null?{"--rmg-skel-shimmer-c2":d$1?.shimmer?.c2??d$1?.highlightColor}:null},o=h.useMemo(()=>{let E=f?.text&&d$1?{...d$1,layout:d$1.layout?z(d$1.layout,f.text,"masonry",C):d$1.layout}:d$1;return i({count:s,columns:r,gap:i$1,breakpoints:C,ratios:v,heightsPx:e.heightsPx,spans:e.spans,placement:M,spec:E,scopeId:$,viewportWidth:w,layoutWidthPx:N})},[f,s,r,i$1,C,v,e.heightsPx,e.spans,M,d$1,$,w,N]),z$1=w!==void 0,m=f?.masonry?.variantKey?o.variants.find(E=>E.state.key===f.masonry?.variantKey&&E.state.minWidth===f.widthBucketMin)??null:null,x=!!m,u=x?m.state.key:z$1?d(o.states,w):null,ne=h.useMemo(()=>x||z$1?null:Fe($,o.states),[x,z$1,$,o.variants]),I=h.useMemo(()=>x?"":Ke($,o.variants),[x,$,o.variants]),Z=h.useMemo(()=>x?"":De($,o.variants),[x,$,o.variants]),H=o.structuredLayout,j=k?.root??X.masonrySkeletonRoot,U=k?.column??X.masonrySkeletonCol,q=k?.item??(H?X.masonrySkeletonLayoutItem:X.masonrySkeletonItem),V=z$1&&N!==void 0&&Number.isFinite(Number(N))&&Number(N)>0,me=h.useMemo(()=>{let E=W?null:a$3.skelCardShimmer;return (m?[m]:o.variants).map(t=>{let T=t.items.some(n=>n.span>1),G=Math.max(0,...t.items.map(n=>n.top+n.height)),c=m?f?.masonry?.shellHeightPx:void 0,b=(n,B)=>{let A=m?f?.masonry?.itemHeightsPx?.[n]:void 0;return typeof A=="number"&&Number.isFinite(A)&&A>=0?A:B};if(!T){let n=Array.from({length:t.state.columns},()=>[]);for(let B of t.items)n[B.columnIndex].push(B);return jsx("div",{"data-rmg-mskel-variant":t.state.key,style:{width:"100%","--rmg-cols":t.state.columns,"--rmg-gap":`${t.state.gapPx}px`,...t.positionedCssVars??{},display:x||z$1?t.state.key===u?"block":"none":t.state.key===o.states[0]?.key?"block":"none"},children:jsx("div",{style:{width:"100%",display:"flex",alignItems:"flex-start",columnGap:`${t.state.gapPx}px`},children:n.map((B,A)=>jsx("div",{className:U,style:{flex:1,minWidth:0,display:"flex",flexDirection:"column"},children:B.map((R,oe)=>{let J=oe===B.length-1?"0px":`${t.state.gapPx}px`;if(!H)return jsx("div",{"data-rmg-mskel-index":R.index,className:[q,E].filter(Boolean).join(" "),style:{height:`${b(R.index,R.height)}px`,marginBottom:J}},`rmg-mskel-${t.state.key}-${R.index}`);let{outerStyle:se,innerStyle:p}=He(R.slot?.itemWrapStyle);return jsx("div",{"data-rmg-mskel-index":R.index,className:q,style:{...R.slot?.itemWrapStyle?m$1(R.slot.itemWrapStyle):null,...se??null,width:"100%",height:m?`${b(R.index,R.height)}px`:R.heightCssExpr,marginBottom:J},children:jsx("div",{className:[X.masonrySkeletonLayoutItemInner,E].filter(Boolean).join(" "),style:p,children:jsx("div",{style:{width:"100%"},children:jsx(D,{node:R.slot?.item??H.item,disableShimmer:true,breakpointMap:C})})})},`rmg-mskel-${t.state.key}-${R.index}`)})},A))})},t.state.key)}return jsx("div",{"data-rmg-mskel-variant":t.state.key,style:{position:"relative",width:"100%",height:c!=null?`${c}px`:H&&!V?t.shellHeightCssExpr??`${G}px`:`${G}px`,display:x||z$1?t.state.key===u?"block":"none":t.state.key===o.states[0]?.key?"block":"none","--rmg-cols":t.state.columns,"--rmg-gap":`${t.state.gapPx}px`,...t.positionedCssVars??{}},children:t.items.map(n=>{if(!H)return jsx("div",{"data-rmg-mskel-index":n.index,className:[q,E].filter(Boolean).join(" "),style:{position:"absolute",top:`${n.top}px`,left:n.leftCssExpr,width:n.widthCssExpr,height:`${b(n.index,n.height)}px`}},`rmg-mskel-${t.state.key}-${n.index}`);let{outerStyle:B,innerStyle:A}=He(n.slot?.itemWrapStyle);return jsx("div",{"data-rmg-mskel-index":n.index,className:q,style:{...n.slot?.itemWrapStyle?m$1(n.slot.itemWrapStyle):null,...B??null,position:"absolute",top:V?`${n.top}px`:n.topCssExpr??`${n.top}px`,left:V?`${n.leftPx}px`:n.leftCssExpr,width:V?`${n.widthPx}px`:n.widthCssExpr,height:m?`${b(n.index,n.height)}px`:V?`${n.height}px`:n.heightCssExpr,minWidth:0},children:jsx("div",{className:[X.masonrySkeletonLayoutItemInner,E].filter(Boolean).join(" "),style:A,children:jsx("div",{style:{width:"100%"},children:jsx(D,{node:n.slot?.item??H.item,disableShimmer:true,breakpointMap:C})})})},`rmg-mskel-${t.state.key}-${n.index}`)})},t.state.key)})},[q,U,o.variants,o.states,H,C,z$1,V,u,W,f,m]);return jsxs("div",{"data-rmg-mskel-scope":$,"data-rmg-skel-node":o.structuredNodeId,className:[j,d$1?.className].filter(Boolean).join(" "),style:{...L,...o.plainStructuredStyle||{},containerType:"inline-size",width:"100%"},children:[ne?jsx("style",{dangerouslySetInnerHTML:{__html:ne}}):null,o.responsiveCss?jsx("style",{dangerouslySetInnerHTML:{__html:o.responsiveCss}}):null,I?jsx("style",{dangerouslySetInnerHTML:{__html:I}}):null,me,Z?jsx("style",{dangerouslySetInnerHTML:{__html:Z}}):null]})}function je(e){return !!e&&typeof e=="object"&&!("kind"in e)&&"layout"in e&&e.layout?.kind==="masonry"}function Ae(e){return !!e&&typeof e=="object"&&"kind"in e&&e.kind==="masonry"}function qe(e){if(je(e))return e;let{className:s,backgroundColor:r,radius:i,shimmer:a,columns:k,gap:v,ratios:M,heightsPx:d,spans:w,placement:g,viewportWidth:W,layoutWidthPx:f,...l}=e;return {className:s,backgroundColor:r,radius:i,shimmer:a,layout:l}}function pe(e){return Math.round(e*1e3)/1e3}function Ge(e){for(let s of Array.from(e)){let r=window.getComputedStyle(s);if(r.display!=="none"&&r.visibility!=="hidden")return s}return null}function Oe(e,s){let r=new Map;return e.querySelectorAll(s).forEach(i=>{let a=Number(i.getAttribute("data-rmg-mskel-index")??i.getAttribute("data-rmg-idx"));!Number.isInteger(a)||a<0||r.set(a,pe(i.getBoundingClientRect().height));}),Array.from(r.entries()).sort((i,a)=>i[0]-a[0]).map(([,i])=>i)}function ht({layout:e,children:s,breakpoints:r,className:i$1,style:a$3,shellClassName:k$1,shellStyle:v,contentClassName:M,contentStyle:d,backgroundColor:w,radius:g,shimmer:W,disableShimmer:f$1,ariaLabel:l$2,ready:N,enabled:C,force:$,timing:L,masonry:o,cache:z$1}){let m$1=h.useMemo(()=>({...a,...r??{}}),[r]),x=h.useMemo(()=>a$1("skel_",{layout:e,breakpoints:m$1,backgroundColor:w,radius:g,shimmer:W,disableShimmer:f$1,masonry:o}),[e,m$1,w,g,W,f$1,o]),u=h.useMemo(()=>Ae(e)||je(e)?qe(e):null,[e]),ne=b(),I=c(z$1,ne),Z=u?.layout?.kind==="masonry"?u.layout:null,H=h.useMemo(()=>u?.layout?Array.from(A(u.layout,"masonry")):[],[u]),j$1=Ae(e)?e:null,U=h.useRef(null),q=h.useRef(null),V=o?.layoutWidthPx??j$1?.layoutWidthPx,[me,E]=h.useState(void 0),ge=V??me;h.useLayoutEffect(()=>{if(V!==void 0){E(P=>P===void 0?P:void 0);return}let p=U.current;if(!p)return;let O=P=>{let F=Number(P);!Number.isFinite(F)||F<=0||E(K=>K!=null&&Math.abs(K-F)<.5?K:F);},y=()=>{O(p.getBoundingClientRect().width);};if(y(),typeof ResizeObserver<"u"){let P=new ResizeObserver(F=>{let K=F[0];O(K?.contentRect.width);});return P.observe(p),()=>P.disconnect()}return window.addEventListener("resize",y),()=>window.removeEventListener("resize",y)},[V]);let t=u?{count:o?.count??(typeof Z?.count=="number"?Math.max(0,Z.count|0):1),columns:o?.columns??j$1?.columns,gap:o?.gap??j$1?.gap,ratios:o?.ratios??j$1?.ratios,heightsPx:o?.heightsPx??j$1?.heightsPx,spans:o?.spans??j$1?.spans,placement:o?.placement??j$1?.placement,viewportWidth:o?.viewportWidth??j$1?.viewportWidth,layoutWidthPx:ge,disableShimmer:f$1}:null,T=h.useMemo(()=>{let p=f(I?.snapshot,{key:I?.key,scopeId:x,kind:"masonry",routeKey:I?.routeKey,ttlMs:I?.ttlMs,textIds:H,itemCount:t?.count});return !p||!u||!t||!i({count:t.count,columns:t.columns,gap:t.gap,breakpoints:m$1,ratios:t.ratios,heightsPx:t.heightsPx,spans:t.spans,placement:t.placement,spec:u,scopeId:"__rmg_cache_validate__",viewportWidth:p.viewportWidth,layoutWidthPx:p.layoutWidthPx}).variants.some(y=>y.state.key===p.masonry?.variantKey&&y.state.minWidth===p.widthBucketMin)?null:p},[m$1,I?.key,I?.routeKey,I?.snapshot,I?.ttlMs,t,u,x,H]),G=h.useMemo(()=>!T?.text||!u?u:{...u,layout:u.layout?z(u.layout,T.text,"masonry",m$1):u.layout},[m$1,u,T]),c$1=h.useMemo(()=>t?T?{...t,viewportWidth:T.viewportWidth,layoutWidthPx:T.layoutWidthPx??t.layoutWidthPx}:t:null,[t,T]),b$3=h.useMemo(()=>{if(!G||!c$1)return null;let p=a$1("mseed_",{scopeId:x,breakpoints:m$1,masonry:c$1,spec:G}),O=i({count:c$1.count,columns:c$1.columns,gap:c$1.gap,breakpoints:m$1,ratios:c$1.ratios,heightsPx:c$1.heightsPx,spans:c$1.spans,placement:c$1.placement,spec:G,scopeId:p,respectLayoutCount:false,viewportWidth:c$1.viewportWidth,layoutWidthPx:c$1.layoutWidthPx}),y=j(O.variants,c$1.viewportWidth??b$1),P=T&&y?{...O,states:[y.state],variants:[y]}:O;return {scopeId:p,prediction:O,initialHeights:y?.items.map(F=>F.height),activeVariantKey:y?.state.key,activeWidthBucketMin:y?.state.minWidth,responsiveCss:k({scopeId:p,prediction:P}),shellReserveCss:l({scopeId:p,prediction:P}),shellReserveSafariCss:m({scopeId:p,prediction:P})}},[m$1,c$1?.columns,c$1?.count,c$1?.disableShimmer,c$1?.gap,c$1?.heightsPx,c$1?.layoutWidthPx,c$1?.placement,c$1?.ratios,c$1?.spans,c$1?.viewportWidth,G,x,T]),n$2=h.useCallback(()=>{let p=window.innerWidth||document.documentElement.clientWidth||b$1,O=b$3?.prediction,y=O?j(O.variants,p):null,P=U.current,F=q.current,K=P?Ge(P.querySelectorAll("[data-rmg-mskel-variant]")):null,ae=F?.querySelector("[data-rmg-masonry-layout-seed]")??null,fe=ae?.getBoundingClientRect()??P?.getBoundingClientRect()??null,ue=K?.getBoundingClientRect().height??ae?.getBoundingClientRect().height??(y?Math.max(0,...y.items.map(re=>re.top+re.height)):void 0),xe=K?Oe(K,"[data-rmg-mskel-index]"):ae?Oe(ae,"[data-rmg-idx]"):y?.items.map(re=>pe(re.height)),be=K?.getAttribute("data-rmg-mskel-variant")??y?.state.key;return !be||!y?null:{widthBucketMin:y.state.minWidth,viewportWidth:p,...fe?.width?{layoutWidthPx:pe(fe.width)}:null,masonry:{variantKey:be,...ue!=null&&Number.isFinite(ue)?{shellHeightPx:pe(ue)}:null,...xe?.length?{itemHeightsPx:xe}:null}}},[b$3]);a$2({cache:I,kind:"masonry",scopeId:x,textIds:H,skeletonRootRef:U,shellRef:q,getGeometrySnapshot:n$2});let B={...a$3,...w?{"--rmg-skel-bg":w}:null,...g!=null?{"--rmg-skel-radius":l$1(g)}:null,...f$1?null:n(W)},A$1=G&&c$1?jsx("div",{"data-rmg-skeleton-scope":x,ref:U,className:i$1,style:B,"aria-hidden":l$2?void 0:true,"aria-label":l$2,role:l$2?"status":void 0,"aria-live":l$2?"polite":void 0,children:jsx(Be,{...c$1,spec:G,breakpoints:m$1,cacheSnapshot:T})}):null,R=h.useCallback(p=>b$3?jsx(n$1,{value:b$3,children:p}):p,[b$3]);if(!A$1)return null;let oe=s!==void 0&&!!b$3?.scopeId,J=oe&&C!==false&&N!==true&&!!b$3?.shellReserveCss,se=jsx(b$2,{skeletonNode:A$1,ready:N,enabled:C,force:$,timing:L,shellClassName:k$1,shellStyle:v,contentClassName:M,contentStyle:d,contentOwnsWrapperLayout:s!==void 0,loadingLayerFirst:s!==void 0,contentWrapper:R,shellDataAttributes:J?{"data-rmg-masonry-skeleton-shell":b$3.scopeId}:void 0,shellRef:q,children:s});return oe?jsxs("div",{style:{containerType:"inline-size",width:"100%"},children:[J?jsx("style",{dangerouslySetInnerHTML:{__html:b$3.shellReserveCss}}):null,se,J&&b$3.shellReserveSafariCss?jsx("style",{dangerouslySetInnerHTML:{__html:b$3.shellReserveSafariCss}}):null]}):se}export{ht as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {c,d as d$1,e,f as f$1}from'./chunk-Y7NUGXTR.mjs';import {a as a$2}from'./chunk-A6MPGIEJ.mjs';import {a}from'./chunk-D3T6HIS2.mjs';import {a as a$5}from'./chunk-AKY343WN.mjs';import {a as a$1}from'./chunk-X4HEGEZV.mjs';import {a as a$3}from'./chunk-UUAWLGWO.mjs';import {d}from'./chunk-WMG2LTLR.mjs';import {a as a$4,h,f,i}from'./chunk-HK2DPKES.mjs';import*as t from'react';import {jsx,jsxs}from'react/jsx-runtime';var k={gridRoot:"Oe",gridItem:"d",gridShell:"Pe",introContainer:"u",introItem:"Qe",introActive:"J"};function ae(o){return o instanceof HTMLImageElement}function ie(o){if(!o)return null;if(ae(o))return o;let i=o.querySelector("img");return ae(i)?i:null}function Ye(o){if(!(o instanceof HTMLElement))return null;let i=o.closest("img");return ae(i)?i:null}function Ze(...o){return i=>{for(let e of o)e&&(typeof e=="function"?e(i):typeof e=="object"&&(e.current=i));}}function q(...o){return o.filter(Boolean).join(" ")}function et(o){return typeof o=="object"&&o!=null&&o.__rmgGridPlugin===true}var He=new Set;function Ne(o,i){typeof process<"u"&&process.env.NODE_ENV==="production"||He.has(o)||(He.add(o),console.warn(i));}function U(o){return !!o&&typeof o=="object"&&!Array.isArray(o)}function xe(o){return !!o&&typeof o=="object"&&!Array.isArray(o)}function tt(o,i){let e=i[o];if(typeof e=="number"&&Number.isFinite(e))return e;let l=parseFloat(o);return Number.isNaN(l)?0:l}function Pe(o){let{templateColumns:i,breakpointMap:e}=o;if(!xe(i))return [];let l=Object.entries(i).map(([a,s])=>({minWidth:tt(a,e),template:typeof s=="string"?s.trim():""})).filter(a=>a.template.length>0).sort((a,s)=>a.minWidth-s.minWidth);return l.length===0?[]:(l[0].minWidth>0?l.unshift({minWidth:0,template:l[0].template}):l[0].minWidth<0&&(l[0]={...l[0],minWidth:0}),l)}function nt(o){let{templateColumns:i,viewportWidth:e,breakpointMap:l}=o;if(typeof i=="string"){let f=i.trim();return f.length>0?f:void 0}let a=Pe({templateColumns:i,breakpointMap:l});if(!a.length)return;let s=f(e),d=a[0]?.template;for(let f of a)s>=f.minWidth&&(d=f.template);return d}function rt(o){let{scopeId:i$1,columns:e,templateColumns:l,gap:a,breakpointMap:s,fallbackGap:d}=o,g=`${`[data-rmg-grid-scope="${i$1}"]`} [data-rmg-grid-node="true"]`,v=[],C=(p,u)=>{if(!u.length)return;let c=`${g}{${u.join("")}}`;if(p<=0){v.push(c);return}v.push(`@media (min-width:${p}px){${c}}`);},h=Pe({templateColumns:l,breakpointMap:s});if(h.length>0)for(let p of h)C(p.minWidth,[`grid-template-columns:${p.template};`]);else if(U(e)){let p=i(e,1,s);for(let u of p)C(u.minWidth,[`grid-template-columns:repeat(${Math.max(1,u.count|0)}, minmax(0, 1fr));`]);}if(U(a)){let p=i(a,d,s);for(let u of p)C(u.minWidth,[`--rmg-grid-gap:${Math.max(0,u.count|0)}px;`]);}return v.join(`
|
|
2
2
|
`)}function ot(o){let{scopeId:i,cells:e$1,breakpointMap:l,allowSpan:a}=o;if(!a)return "";let s=[],d=`[data-rmg-grid-scope="${i}"]`;for(let f of e$1){let g=f.layoutMeta?.span;if(!c(g))continue;let v=`${d} [data-rmg-grid-item-key="${f.id}"]`,C=d$1(g,l);for(let h of C){let p=e(h.span);if(!p)continue;let u=`${v}{grid-column:${p};}`;if(h.minWidth<=0){s.push(u);continue}s.push(`@media (min-width:${h.minWidth}px){${u}}`);}}return s.join(`
|
|
3
3
|
`)}function Le(o){let{originalStyle:i,layoutMeta:e,allowSpan:l,introStyle:a}=o;return {...i||{},...f$1({span:e?.span,allowSpan:l})||{},...e?.style||{},...a}}var yt=t.forwardRef(function({cells:i,grid:e,breakpoints:l,viewportWidth:a$6,intro:s,enableFullscreen:d$1,onOpen:f,registerExpandableImage:g,gridItemBaseClass:v="rmg__grid-item",introReady:C=true,renderMode:h$1},p){let u=d(),c=l??a$4,S=t.useRef(null),P=t.useMemo(()=>a(),[]),[$e,Ae]=t.useState(false),[We,Be]=t.useState(false),W=t.useRef(new Set),se=t.useRef(new Set),J=t.useRef(new Set),le=t.useRef(false),B=t.useMemo(()=>(e.plugins??[]).filter(et),[e.plugins]),w=t.useMemo(()=>B.find(n=>n.renderItem),[B]),me=t.useMemo(()=>B.some(n=>n.blocksReady),[B]);a$1(true,S,()=>Ae(true)),a$2(!me,S,Be);let $=h$1??"wrap",ue=e.fullscreenTrigger??"media",[De,Ke]=t.useState(false);t.useEffect(()=>{Ke(true);},[]);let G=me?De:We,Q=G&&$e&&C,D=t.useCallback(()=>{let n=S.current;return n?Array.from(n.querySelectorAll("[data-rmg-idx]")).filter(r=>r instanceof HTMLElement):[]},[]);t.useImperativeHandle(p,()=>({getRootNode:()=>S.current,getItemNodes:D,isReady:()=>le.current,onReady:n=>(J.current.add(n),()=>{J.current.delete(n);})}),[D]),t.useEffect(()=>{if(le.current=G,!G)return;let n=D();J.current.forEach(r=>r(n));},[G,D]),t.useEffect(()=>{W.current.clear();},[i.length]),t.useEffect(()=>{se.current.clear();},[i.length]),t.useEffect(()=>{let n=S.current;if(!n||!u)return;let r=n.closest('[data-rmg-viewport="true"]'),m=new IntersectionObserver(b=>{for(let M of b){if(!M.isIntersecting)continue;let y=M.target;if(!(y instanceof HTMLElement)){m.unobserve(M.target);continue}let L=y.getAttribute("data-rmg-idx"),R=L!=null?parseInt(L,10):NaN;if(!Number.isFinite(R)){m.unobserve(y);continue}W.current.has(R)||(W.current.add(R),u.notifyBaseVisibleIndex(R)),m.unobserve(y);}},{root:r,rootMargin:"200px",threshold:.15});return Array.from(n.children).filter(b=>b instanceof HTMLElement&&b.hasAttribute("data-rmg-idx")).forEach(b=>{let M=b.getAttribute("data-rmg-idx"),y=M!=null?parseInt(M,10):NaN;!Number.isFinite(y)||W.current.has(y)||m.observe(b);}),()=>m.disconnect()},[i,u,$]);let K=t.useCallback((n,r,m)=>{if(!d$1)return;let I=ue==="media"?Ye(m.target):ie(r);I&&f(n,I);},[d$1,ue,f]),O=t.useCallback(n=>r=>{r.preventDefault(),K(n,r.currentTarget,r);},[K]),V=t.useCallback(n=>r=>{r.key!=="Enter"&&r.key!==" "||(r.preventDefault(),K(n,r.currentTarget,r));},[K]),X=t.useCallback(n=>r=>{g(n,ie(r));},[g]);t.useEffect(()=>()=>{P.destroyAll();},[P]);let ce=typeof e.minColumnWidth=="number"?`${e.minColumnWidth}px`:e.minColumnWidth??"160px",H=typeof e.gap=="number"&&Number.isFinite(e.gap)?e.gap:8,j=U(e.gap),Y=xe(e.templateColumns),F=U(e.columns),N=e.templateColumns!=null||e.columns!=null;e.templateColumns!=null&&(e.columns!=null||e.minColumnWidth!=null)&&Ne("grid-template-columns-precedence","[react-motion-gallery] Grid `templateColumns` overrides `columns` and `minColumnWidth` when they are provided together."),!N&&i.some(n=>n.layoutMeta?.span!=null)&&Ne("grid-span-autofill-ignored","[react-motion-gallery] Grid item `span` is ignored when the grid is using auto-fill `minColumnWidth` mode. Use `columns` or `templateColumns` to enable spans.");let A=t.useMemo(()=>a$3("rmg-grid-",{columns:e.columns,templateColumns:e.templateColumns,gap:e.gap,breakpointMap:c,fallbackGap:H}),[e.columns,e.templateColumns,e.gap,c,H]),Z=t.useMemo(()=>{if(j)return;if(typeof e.gap=="string"&&Number.isNaN(parseFloat(e.gap)))return e.gap;let n=h(e.gap,H,a$6,c);return `${Math.max(0,n|0)}px`},[e.gap,j,a$6,c,H]),ee=t.useMemo(()=>Y?void 0:nt({templateColumns:e.templateColumns,viewportWidth:a$6,breakpointMap:c}),[e.templateColumns,Y,a$6,c]),_=t.useMemo(()=>{if(e.templateColumns!=null||F||e.columns==null)return;let n=h(e.columns,1,a$6,c);return Math.max(1,n|0)},[e.columns,e.templateColumns,F,a$6,c]),de=t.useMemo(()=>rt({scopeId:A,columns:e.templateColumns==null&&F?e.columns:void 0,templateColumns:e.templateColumns,gap:j?e.gap:void 0,breakpointMap:c,fallbackGap:H}),[A,F,Y,j,e.columns,e.templateColumns,e.gap,c,H]),pe=t.useMemo(()=>ot({scopeId:A,cells:i,breakpointMap:c,allowSpan:N}),[A,i,c,N]),fe=t.useMemo(()=>[de,pe].filter(Boolean).join(`
|
|
4
4
|
`),[de,pe]),ge=t.useMemo(()=>{let n={"--rmg-grid-min":ce};return Z!=null&&(n["--rmg-grid-gap"]=Z),ee?n.gridTemplateColumns=ee:_&&_>0&&(n.gridTemplateColumns=`repeat(${_}, minmax(0, 1fr))`),n},[ce,Z,ee,_]),ye=t.useMemo(()=>q(v,k.gridItem,k.introItem,e.itemClassName),[v,e.itemClassName]),Oe=t.useMemo(()=>i.map((n,r)=>{let m=n.node,I=n.layoutMeta,b=jsx(a$5,{value:{normIdx:r,isClone:false,storeBag:P},children:m}),M={"--rmg-intro-index":r},y=q(ye,I?.className),L=Le({layoutMeta:I,allowSpan:N,introStyle:M});if(w?.renderItem){let te=(t.isValidElement(m)?m:null)?.props??{},qe=d$1?T=>{T.defaultPrevented||O(r)(T);}:void 0,Ue=d$1?T=>{te.onKeyDown?.(T),!T.defaultPrevented&&V(r)(T);}:void 0,Je={"data-rmg-idx":r,"data-rmg-grid-item-key":n.id,className:y,style:L,onClick:qe,onKeyDown:Ue,tabIndex:d$1?te.tabIndex??0:void 0,"aria-label":d$1?te["aria-label"]??`View image ${r+1}`:void 0};return w.renderItem({index:r,key:n.id,itemProps:Je,children:b,registerExpandableImage:(T,Qe)=>g(T,Qe),revealedIndicesRef:se},w.options)}if($==="passthrough")return jsx("div",{"data-rmg-idx":r,"data-rmg-grid-item-key":n.id,className:y,style:L,children:b},n.id);if(!t.isValidElement(m)||typeof m.type!="string")return jsx("div",{"data-rmg-idx":r,"data-rmg-grid-item-key":n.id,className:y,style:L,onClick:O(r),onKeyDown:V(r),tabIndex:0,"aria-label":`View image ${r+1}`,ref:X(r),children:b},n.id);let R=m,z=R.props??{},je=R.ref,Fe=E=>{z.onClick?.(E),!E.defaultPrevented&&O(r)(E);},_e=E=>{z.onKeyDown?.(E),!E.defaultPrevented&&V(r)(E);},ze=Ze(je,X(r));return t.cloneElement(R,{key:n.id,ref:ze,"data-rmg-idx":r,"data-rmg-grid-item-key":n.id,className:q(y,z.className),style:Le({originalStyle:z.style,layoutMeta:I,allowSpan:N,introStyle:M}),onClick:Fe,onKeyDown:_e,tabIndex:R.props?.tabIndex??0,"aria-label":R.props?.["aria-label"]??`View image ${r+1}`,children:R.props?.children===void 0?void 0:jsx(a$5,{value:{normIdx:r,isClone:false,storeBag:P},children:R.props.children})})}),[i,w,$,ye,N,d$1,O,V,g,X,P]);t.useLayoutEffect(()=>{if($!=="passthrough"||w?.renderItem)return;let n=S.current;if(n){for(let r=0;r<i.length;r++){let m=n.querySelector(`[data-rmg-idx="${r}"]`);g(r,ie(m));}return ()=>{for(let r=0;r<i.length;r++)g(r,null);}}},[$,w,i.length,g]);let Re=t.useMemo(()=>({className:q(k.gridRoot,k.introContainer,Q&&k.introActive,e.rootClassName),"data-rmg-grid-node":"true",style:{...ge,"--rmg-intro-stagger":`${s.staggerMs}ms`,"--rmg-intro-duration":`${s.durationMs}ms`,"--rmg-intro-easing":s.easing},"aria-busy":G?void 0:true}),[e.rootClassName,ge,s.staggerMs,s.durationMs,s.easing,Q,G,C]),be=jsx("div",{ref:S,...Re,children:Oe}),Ve=s.renderIntro?s.renderIntro({active:Q,containerProps:Re},be):be;return jsxs("div",{className:k.gridShell,"data-rmg-grid-scope":A,children:[fe?jsx("style",{dangerouslySetInnerHTML:{__html:fe}}):null,Ve]})});export{yt as a};
|