@energy8platform/platform-core 0.30.11 → 0.31.0

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 CHANGED
@@ -659,7 +659,7 @@ await removeGameShell();
659
659
  | `theme` | `ThemeConfig?` | `{ scheme?: 'dark' \| 'light', accent? }`. Defaults to dark. `accent` also tints the BUY BONUS button; per-card accents are `BonusOption.accentColor`. |
660
660
  | `language` | `string` | Currently `'en'` is the source language. |
661
661
  | `isSocial` | `boolean?` | Swap built-in text to social-casino vocabulary (bet → play, win → …). Game-supplied strings are untouched. |
662
- | `currency` | `CurrencyConfig` | `{ symbol, position: 'left'\|'right', maxDecimals?, minDecimals?, separator? }`. `maxDecimals` (default 2) / `minDecimals` (default `maxDecimals`): **win & total-win** show up to `maxDecimals`, trimming trailing zeros down to `minDecimals`; **balance / bet / prices** stay fixed at `minDecimals`. |
662
+ | `currency` | `CurrencyConfig` | `{ symbol, position: 'left'\|'right', maxDecimals?, minDecimals?, separator? }`. `maxDecimals` (default 2) / `minDecimals` (default `maxDecimals`): **win & total-win** show up to `maxDecimals`, trimming trailing zeros down to `minDecimals`; **balance / bet / prices** stay fixed at `minDecimals`. `separator` defaults to `{ thousands: ',', decimal: '.' }` → `€1,234.50`. |
663
663
  | `availableBets` | `number[]` | Bet ladder shown in the bet picker. |
664
664
  | `defaultBet` / `currentBet` | `number` / `number \| null` | `currentBet` restores a saved bet; `null` falls back to `defaultBet`. |
665
665
  | `balance` / `win` | `number` | Initial readouts. |
package/dist/index.cjs.js CHANGED
@@ -1473,13 +1473,222 @@ function removeCSSPreloader(_container) {
1473
1473
  });
1474
1474
  }
1475
1475
 
1476
+ let adopted = null;
1477
+ /** Last value pushed, so a repeated milestone cannot walk the bar backwards. */
1478
+ let lastProgress = 0;
1479
+ /** When the overlay was adopted — the origin the minimum display time is measured from. */
1480
+ let adoptedAt = 0;
1481
+ /** How long this overlay is owed on screen; see {@link DEFAULT_EXTERNAL_MIN_DISPLAY_MS}. */
1482
+ let minDisplayMs = 0;
1483
+ /** When the first progress went out, i.e. when their phase crossfade started. 0 = not yet. */
1484
+ let crossfadeStartedAt = 0;
1485
+ /** The one pending timer: the hand-over waiting out the floor below. */
1486
+ let holdTimer = null;
1487
+ let holdResolve = null;
1488
+ /**
1489
+ * How long a game-supplied overlay is guaranteed on screen, measured from
1490
+ * adoption (which is the first thing the boot does, so in practice from the
1491
+ * page's first paint).
1492
+ *
1493
+ * Without a floor the overlay lives exactly as long as the gap it covers, and
1494
+ * that gap is short: a warm local boot handed over at ~500ms and dismissed
1495
+ * their screen at ~840ms. A partner's branding that flashes past in under a
1496
+ * second has not been shown. 1500ms is the user's number, and it is also the
1497
+ * smallest one that fits their two-phase screen whole — a 500ms crossfade into
1498
+ * the branded phase plus time to read it — with room for the 300ms dismissal
1499
+ * fade on top.
1500
+ *
1501
+ * Overridable per game: `loading.externalOverlayMinDisplayTime`.
1502
+ */
1503
+ const DEFAULT_EXTERNAL_MIN_DISPLAY_MS = 1500;
1504
+ /**
1505
+ * Artube's partner→branded crossfade, `transition: opacity 0.5s ease` in the
1506
+ * markup their Vite plugin injects (vendored verbatim in
1507
+ * `@energy8platform/artube-server/vite`). It is triggered by the first
1508
+ * `updateProgress` above zero.
1509
+ *
1510
+ * The floor below is extended to cover it because a crossfade that starts and
1511
+ * then gets cut is worse than one that never starts: the player sees a
1512
+ * half-formed gradient and a bar that never fills — the three-screens-at-once
1513
+ * artefact this integration hit once and rejected (evidence:
1514
+ * `rejected-immediate-progress-01-Lartube_P_C.png`). Extending the floor is
1515
+ * bounded by construction: only the FIRST progress starts it, and every
1516
+ * progress value comes from a boot milestone that precedes the hand-over.
1517
+ */
1518
+ const PHASE_CROSSFADE_MS = 500;
1519
+ /**
1520
+ * Call into the game's overlay without letting it break the boot. A third-party
1521
+ * controller is outside our control (Artube's throws if its markup is missing,
1522
+ * for one), and none of these calls is worth failing a game over — least of all
1523
+ * `hideLoader`, where a throw escaping the teardown path is exactly how an
1524
+ * overlay ends up stranded on screen forever.
1525
+ */
1526
+ function guard(method, fn) {
1527
+ try {
1528
+ fn();
1529
+ }
1530
+ catch (err) {
1531
+ console.warn(`[GameEngine] loading overlay ${method}() threw`, err);
1532
+ }
1533
+ }
1534
+ /** Whether a game-supplied overlay is currently on screen and owned by us. */
1535
+ function hasExternalOverlay() {
1536
+ return adopted !== null;
1537
+ }
1538
+ /**
1539
+ * Take ownership of the game's overlay: from here on the engine is responsible
1540
+ * for taking it down, including when the boot fails.
1541
+ *
1542
+ * Called BEFORE anything in the boot that can throw — notably before the
1543
+ * container selector is resolved. Until the engine has adopted it, nothing can
1544
+ * dismiss it, and Artube's is already on screen from `index.html`.
1545
+ *
1546
+ * `showLoader()` is Artube's "reveal the progress affordance"; it does not
1547
+ * switch their two-phase screen to the branded phase — only progress does, see
1548
+ * {@link advanceExternalOverlay}.
1549
+ *
1550
+ * @param minDisplayMillis how long the overlay is owed on screen before the
1551
+ * hand-over may dismiss it (`loading.externalOverlayMinDisplayTime`); defaults
1552
+ * to {@link DEFAULT_EXTERNAL_MIN_DISPLAY_MS}. Adoption is where the clock
1553
+ * starts, so it is taken here rather than read at the hand-over.
1554
+ */
1555
+ function adoptExternalOverlay(overlay, minDisplayMillis) {
1556
+ if (adopted)
1557
+ return; // idempotent: boot step 0 and step 2 both reach here
1558
+ adopted = overlay;
1559
+ lastProgress = 0;
1560
+ crossfadeStartedAt = 0;
1561
+ minDisplayMs =
1562
+ typeof minDisplayMillis === 'number' && Number.isFinite(minDisplayMillis)
1563
+ ? Math.max(0, minDisplayMillis)
1564
+ : DEFAULT_EXTERNAL_MIN_DISPLAY_MS;
1565
+ adoptedAt = Date.now();
1566
+ guard('showLoader', () => overlay.showLoader());
1567
+ }
1568
+ /**
1569
+ * Report boot progress, as a 0..1 fraction, to a game-supplied overlay.
1570
+ *
1571
+ * NOT the asset-loading progress the built-in preloader shows — that belongs to
1572
+ * the engine's own loading screen, which by then has taken over. This is the
1573
+ * pre-first-frame boot: bundle up, Pixi up, SDK handshake done.
1574
+ *
1575
+ * Sending it is deliberate, not decorative: Artube's loader only crossfades to
1576
+ * its BRANDED phase on the first value above zero, so without progress the
1577
+ * player never sees the half of their screen the integration exists to show.
1578
+ * Values go out as they arrive — the guarantee that the crossfade has room to
1579
+ * finish is the dismissal floor ({@link externalOverlayHold}), not a delay
1580
+ * here. An earlier design held the first value back for 800ms instead; the
1581
+ * floor makes that redundant, and one timer on this overlay is the whole point.
1582
+ *
1583
+ * Values are clamped to 0..1, kept monotonic, and converted to the PERCENTAGE
1584
+ * (0–100) that `ILoaderViewController.updateProgress` documents.
1585
+ */
1586
+ function advanceExternalOverlay(fraction) {
1587
+ const overlay = adopted;
1588
+ if (!overlay)
1589
+ return;
1590
+ const clamped = Number.isFinite(fraction) ? Math.max(0, Math.min(1, fraction)) : 0;
1591
+ if (clamped <= lastProgress)
1592
+ return;
1593
+ lastProgress = clamped;
1594
+ // The first non-zero value is what starts their partner→branded crossfade, so
1595
+ // it is also what the floor has to cover.
1596
+ if (clamped > 0 && crossfadeStartedAt === 0)
1597
+ crossfadeStartedAt = Date.now();
1598
+ guard('updateProgress', () => overlay.updateProgress(clamped * 100));
1599
+ }
1600
+ /**
1601
+ * Milliseconds still owed to the overlay before the hand-over may dismiss it:
1602
+ * the minimum display time, extended when needed so a phase crossfade that has
1603
+ * started can finish. Zero once both are satisfied — and zero when there is no
1604
+ * overlay, so nothing on a normal target ever waits.
1605
+ */
1606
+ function remainingHoldMs() {
1607
+ if (!adopted)
1608
+ return 0;
1609
+ const now = Date.now();
1610
+ const floor = Math.max(adoptedAt + minDisplayMs, crossfadeStartedAt === 0 ? 0 : crossfadeStartedAt + PHASE_CROSSFADE_MS);
1611
+ return Math.max(0, floor - now);
1612
+ }
1613
+ /**
1614
+ * Wait until the overlay has had its guaranteed time on screen. The hand-over
1615
+ * awaits this BEFORE it mounts the engine's own loading screen, so the two
1616
+ * timelines do not overlap: their screen is whole and undisturbed for the whole
1617
+ * window, then ours mounts, paints, and only then takes over.
1618
+ *
1619
+ * Resolves immediately when no overlay is adopted (every non-Artube target) or
1620
+ * when the floor has already passed (any boot slower than it, which is the
1621
+ * normal case in production — this costs nothing there).
1622
+ *
1623
+ * NOT part of the failure path on purpose: {@link releaseExternalOverlay} is
1624
+ * synchronous and immediate, so a boot that throws takes the overlay down at
1625
+ * once instead of stranding the player behind a courtesy delay. A release also
1626
+ * settles a wait already in progress.
1627
+ */
1628
+ function externalOverlayHold() {
1629
+ // Reaching here means the boot is done and the only thing left is the wait, so the bar is
1630
+ // finished too. Without this it freezes at the last boot milestone (0.85 live) and their screen
1631
+ // is taken away with the bar still short — a bar that never fills, which is the same artefact in
1632
+ // a different costume. Only when a bar is actually on screen: if no progress ever went out the
1633
+ // player is still on the first phase, and starting a crossfade at the hand-over is precisely
1634
+ // what must not happen.
1635
+ if (crossfadeStartedAt !== 0)
1636
+ advanceExternalOverlay(1);
1637
+ const remaining = remainingHoldMs();
1638
+ if (remaining <= 0)
1639
+ return Promise.resolve();
1640
+ return new Promise((resolve) => {
1641
+ const finish = () => {
1642
+ if (holdTimer !== null)
1643
+ clearTimeout(holdTimer);
1644
+ holdTimer = null;
1645
+ holdResolve = null;
1646
+ resolve();
1647
+ };
1648
+ holdResolve = finish;
1649
+ holdTimer = setTimeout(finish, remaining);
1650
+ });
1651
+ }
1652
+ /**
1653
+ * Dismiss the overlay and forget it. Idempotent — this is reached both on the
1654
+ * normal hand-over and defensively from the failure paths, and a second
1655
+ * `hideLoader()` must not fire.
1656
+ *
1657
+ * @returns whether this call is the one that dismissed it. Callers that can run
1658
+ * BEFORE adoption (`createSlotGame`'s `fatal`, which refuses some launches
1659
+ * before `GameApplication` exists) use the `false` to fall back to hiding the
1660
+ * game's overlay directly.
1661
+ */
1662
+ function releaseExternalOverlay() {
1663
+ // Settle a hand-over that is still waiting out the floor, even if there is
1664
+ // nothing to release. This is the failure path: a boot that threw must not
1665
+ // leave a timer holding the process open (Node-side tests) or a promise that
1666
+ // resolves into a teardown that already happened.
1667
+ if (holdResolve)
1668
+ holdResolve();
1669
+ const overlay = adopted;
1670
+ if (!overlay)
1671
+ return false;
1672
+ adopted = null;
1673
+ lastProgress = 0;
1674
+ crossfadeStartedAt = 0;
1675
+ guard('hideLoader', () => overlay.hideLoader());
1676
+ return true;
1677
+ }
1678
+
1679
+ exports.DEFAULT_EXTERNAL_MIN_DISPLAY_MS = DEFAULT_EXTERNAL_MIN_DISPLAY_MS;
1476
1680
  exports.DevBridge = DevBridge;
1477
1681
  exports.EventEmitter = EventEmitter;
1478
1682
  exports.LOADER_BAR_MAX_WIDTH = LOADER_BAR_MAX_WIDTH$2;
1479
1683
  exports.PlatformSession = PlatformSession;
1684
+ exports.adoptExternalOverlay = adoptExternalOverlay;
1685
+ exports.advanceExternalOverlay = advanceExternalOverlay;
1480
1686
  exports.buildLogoSVG = buildLogoSVG;
1481
1687
  exports.createCSSPreloader = createCSSPreloader;
1482
1688
  exports.createPlatformSession = createPlatformSession;
1689
+ exports.externalOverlayHold = externalOverlayHold;
1690
+ exports.hasExternalOverlay = hasExternalOverlay;
1691
+ exports.releaseExternalOverlay = releaseExternalOverlay;
1483
1692
  exports.removeCSSPreloader = removeCSSPreloader;
1484
1693
  exports.setCSSPreloaderProgress = setCSSPreloaderProgress;
1485
1694
  exports.waitCSSPreloaderTap = waitCSSPreloaderTap;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../src/dev-bridge/DevBridge.ts","../src/EventEmitter.ts","../src/PlatformSession.ts","../src/loading/logo.ts","../src/loading/variants/energy8.ts","../src/loading/variants/slottech.ts","../src/loading/variants/voidmoon.ts","../src/loading/variants/index.ts","../src/loading/splash.ts","../src/loading/CSSPreloader.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null],"names":["Bridge","CasinoGameSDK","LOADER_BAR_MAX_WIDTH","RECT_ID","TEXT_ID","LOGO_SVG"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../src/dev-bridge/DevBridge.ts","../src/EventEmitter.ts","../src/PlatformSession.ts","../src/loading/logo.ts","../src/loading/variants/energy8.ts","../src/loading/variants/slottech.ts","../src/loading/variants/voidmoon.ts","../src/loading/variants/index.ts","../src/loading/splash.ts","../src/loading/CSSPreloader.ts","../src/loading/ExternalOverlay.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["Bridge","CasinoGameSDK","LOADER_BAR_MAX_WIDTH","RECT_ID","TEXT_ID","LOGO_SVG"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -504,7 +504,61 @@ interface AssetBundle {
504
504
  interface AssetManifest {
505
505
  bundles: AssetBundle[];
506
506
  }
507
+ /**
508
+ * A loading overlay the GAME owns, covering the gap BEFORE the engine's own loading screen exists:
509
+ * from the browser's first paint to the first frame the engine paints. It does not replace the
510
+ * loading screen — see `LoadingScreenConfig.externalOverlay`.
511
+ *
512
+ * Described structurally on purpose. The implementation this exists for is Artube's
513
+ * `LoaderViewController` (vendored at `@energy8platform/artube-bridge/loader`), whose markup their
514
+ * Vite plugin injects into `index.html` so the overlay is painted before our bundle is even
515
+ * fetched. Naming that type here would tie every consumer of platform-core to the Artube packages;
516
+ * the shape is satisfied with no adapter, and nothing in `@energy8platform/platform-core` knows
517
+ * Artube exists.
518
+ *
519
+ * The engine's use of it, in order:
520
+ * - `showLoader()` once, at the very start of boot, before anything that can throw;
521
+ * - `updateProgress(0..100)` at boot milestones (Pixi up, SDK handshake done, subsystems up) —
522
+ * real progress through the gap, not the asset loading that follows;
523
+ * - `hideLoader()` the moment the engine's loading screen has painted its first frame — AND on
524
+ * every failure path, so a boot that throws can never leave the overlay on screen forever.
525
+ */
526
+ interface ExternalLoadingOverlay {
527
+ /** Reveal the overlay / its progress affordance. Called once, at the start of boot. */
528
+ showLoader(): void;
529
+ /** Loading progress as a PERCENTAGE, 0–100 (what `ILoaderViewController` expects — the engine's
530
+ * internal 0..1 fraction is converted at the seam). */
531
+ updateProgress(value: number): void;
532
+ /** Dismiss the overlay. Called once; must tolerate being called after a failed boot. */
533
+ hideLoader(): void;
534
+ }
507
535
  interface LoadingScreenConfig {
536
+ /**
537
+ * A game-supplied loading overlay covering ONLY the gap before the engine's own loading screen
538
+ * paints — Artube's branded loader is the case this exists for. It is not a replacement: once the
539
+ * loading screen has painted its first frame, the overlay is dismissed and the rest of the boot
540
+ * (brand, progress bar, tap-to-start, minimum display time) is exactly what it is on every other
541
+ * target. Every other option in this object therefore still applies.
542
+ *
543
+ * The two never stack visibly: the built-in preloader is mounted only at the hand-over, and it
544
+ * covers the external overlay (z-index) from the frame it appears in, so there is no gap, no
545
+ * flash and no bare background at the seam.
546
+ */
547
+ externalOverlay?: ExternalLoadingOverlay;
548
+ /**
549
+ * How long {@link externalOverlay} is guaranteed on screen, in ms, measured from the boot's very
550
+ * first step. Default 1500.
551
+ *
552
+ * The gap this overlay covers is short — a warm boot hands over in a few hundred milliseconds —
553
+ * and a partner's branding that flashes past in under a second has not been shown. The floor also
554
+ * gives a two-phase overlay (Artube's) room to reach its second phase and settle there instead of
555
+ * being cut mid-crossfade. It costs a slow boot nothing: the hand-over happens later than this
556
+ * anyway.
557
+ *
558
+ * Distinct from {@link minDisplayTime}, which is the minimum for the engine's OWN loading screen
559
+ * and is measured from the hand-over. A game that sets both is asking for the sum.
560
+ */
561
+ externalOverlayMinDisplayTime?: number;
508
562
  /**
509
563
  * Which visual identity the CSS preloader renders. Defaults to `'energy8'`;
510
564
  * an unknown value falls back to the default. Ignored when `cssPreloaderHTML`
@@ -544,6 +598,130 @@ declare function setCSSPreloaderProgress(progress: number): void;
544
598
  declare function waitCSSPreloaderTap(): Promise<void>;
545
599
  declare function removeCSSPreloader(_container: HTMLElement): Promise<void>;
546
600
 
601
+ /**
602
+ * A loading overlay the GAME owns, covering the gap the engine cannot: from the
603
+ * browser's first paint until the engine's own loading screen is on screen.
604
+ *
605
+ * The case this exists for is Artube. Their platform ships a branded loader
606
+ * whose markup a Vite plugin injects into `index.html`, so it is painted before
607
+ * the game bundle has even been fetched — earlier than any engine code can
608
+ * possibly run. That window (bundle download → Pixi init → SDK handshake) is
609
+ * otherwise a blank page.
610
+ *
611
+ * ── Where it stops ──────────────────────────────────────────────────────────
612
+ * It stops once BOTH are true: the engine's own loading screen has painted its
613
+ * first frame, and the overlay has had its guaranteed time on screen
614
+ * ({@link DEFAULT_EXTERNAL_MIN_DISPLAY_MS}, `loading.externalOverlayMinDisplayTime`).
615
+ * The gap alone is often only a few hundred milliseconds, which is not long
616
+ * enough for a partner's branding to register — let alone for their two-phase
617
+ * screen to reach its second phase.
618
+ *
619
+ * From there the player gets the engine's brand, the engine's progress bar and
620
+ * the engine's tap-to-start — exactly as on every other target. The external
621
+ * overlay covers the gap; it does not replace the loading screen, and it has no
622
+ * say in the tap gate: by then the player is looking at OUR screen.
623
+ *
624
+ * (This inverts an earlier design in which the external overlay REPLACED the
625
+ * CSS preloader for the whole boot. Handing over at the first frame keeps the
626
+ * game's own loading identity on every platform and leaves the built-in
627
+ * preloader's code path untouched — `CSSPreloader.ts` knows nothing about any
628
+ * of this, so non-Artube targets cannot be affected by a change here.)
629
+ *
630
+ * ── Structural, not nominal ─────────────────────────────────────────────────
631
+ * Nothing in `@energy8platform` names Artube's controller. The game passes an
632
+ * instance; we describe the shape (`ExternalLoadingOverlay`). Artube's vendored
633
+ * `LoaderViewController` (`@energy8platform/artube-bridge/loader`) satisfies it
634
+ * with no adapter.
635
+ *
636
+ * ── Module-level state ──────────────────────────────────────────────────────
637
+ * Singleton, like the CSS preloader next door, and for the same reason: the
638
+ * three call sites (boot, hand-over, failure path) are in different files and
639
+ * there is exactly one loading screen per page.
640
+ */
641
+
642
+ /**
643
+ * How long a game-supplied overlay is guaranteed on screen, measured from
644
+ * adoption (which is the first thing the boot does, so in practice from the
645
+ * page's first paint).
646
+ *
647
+ * Without a floor the overlay lives exactly as long as the gap it covers, and
648
+ * that gap is short: a warm local boot handed over at ~500ms and dismissed
649
+ * their screen at ~840ms. A partner's branding that flashes past in under a
650
+ * second has not been shown. 1500ms is the user's number, and it is also the
651
+ * smallest one that fits their two-phase screen whole — a 500ms crossfade into
652
+ * the branded phase plus time to read it — with room for the 300ms dismissal
653
+ * fade on top.
654
+ *
655
+ * Overridable per game: `loading.externalOverlayMinDisplayTime`.
656
+ */
657
+ declare const DEFAULT_EXTERNAL_MIN_DISPLAY_MS = 1500;
658
+ /** Whether a game-supplied overlay is currently on screen and owned by us. */
659
+ declare function hasExternalOverlay(): boolean;
660
+ /**
661
+ * Take ownership of the game's overlay: from here on the engine is responsible
662
+ * for taking it down, including when the boot fails.
663
+ *
664
+ * Called BEFORE anything in the boot that can throw — notably before the
665
+ * container selector is resolved. Until the engine has adopted it, nothing can
666
+ * dismiss it, and Artube's is already on screen from `index.html`.
667
+ *
668
+ * `showLoader()` is Artube's "reveal the progress affordance"; it does not
669
+ * switch their two-phase screen to the branded phase — only progress does, see
670
+ * {@link advanceExternalOverlay}.
671
+ *
672
+ * @param minDisplayMillis how long the overlay is owed on screen before the
673
+ * hand-over may dismiss it (`loading.externalOverlayMinDisplayTime`); defaults
674
+ * to {@link DEFAULT_EXTERNAL_MIN_DISPLAY_MS}. Adoption is where the clock
675
+ * starts, so it is taken here rather than read at the hand-over.
676
+ */
677
+ declare function adoptExternalOverlay(overlay: ExternalLoadingOverlay, minDisplayMillis?: number): void;
678
+ /**
679
+ * Report boot progress, as a 0..1 fraction, to a game-supplied overlay.
680
+ *
681
+ * NOT the asset-loading progress the built-in preloader shows — that belongs to
682
+ * the engine's own loading screen, which by then has taken over. This is the
683
+ * pre-first-frame boot: bundle up, Pixi up, SDK handshake done.
684
+ *
685
+ * Sending it is deliberate, not decorative: Artube's loader only crossfades to
686
+ * its BRANDED phase on the first value above zero, so without progress the
687
+ * player never sees the half of their screen the integration exists to show.
688
+ * Values go out as they arrive — the guarantee that the crossfade has room to
689
+ * finish is the dismissal floor ({@link externalOverlayHold}), not a delay
690
+ * here. An earlier design held the first value back for 800ms instead; the
691
+ * floor makes that redundant, and one timer on this overlay is the whole point.
692
+ *
693
+ * Values are clamped to 0..1, kept monotonic, and converted to the PERCENTAGE
694
+ * (0–100) that `ILoaderViewController.updateProgress` documents.
695
+ */
696
+ declare function advanceExternalOverlay(fraction: number): void;
697
+ /**
698
+ * Wait until the overlay has had its guaranteed time on screen. The hand-over
699
+ * awaits this BEFORE it mounts the engine's own loading screen, so the two
700
+ * timelines do not overlap: their screen is whole and undisturbed for the whole
701
+ * window, then ours mounts, paints, and only then takes over.
702
+ *
703
+ * Resolves immediately when no overlay is adopted (every non-Artube target) or
704
+ * when the floor has already passed (any boot slower than it, which is the
705
+ * normal case in production — this costs nothing there).
706
+ *
707
+ * NOT part of the failure path on purpose: {@link releaseExternalOverlay} is
708
+ * synchronous and immediate, so a boot that throws takes the overlay down at
709
+ * once instead of stranding the player behind a courtesy delay. A release also
710
+ * settles a wait already in progress.
711
+ */
712
+ declare function externalOverlayHold(): Promise<void>;
713
+ /**
714
+ * Dismiss the overlay and forget it. Idempotent — this is reached both on the
715
+ * normal hand-over and defensively from the failure paths, and a second
716
+ * `hideLoader()` must not fire.
717
+ *
718
+ * @returns whether this call is the one that dismissed it. Callers that can run
719
+ * BEFORE adoption (`createSlotGame`'s `fatal`, which refuses some launches
720
+ * before `GameApplication` exists) use the `false` to fall back to hiding the
721
+ * game's overlay directly.
722
+ */
723
+ declare function releaseExternalOverlay(): boolean;
724
+
547
725
  /**
548
726
  * Shared Energy8 SVG logo with a loader bar underneath.
549
727
  *
@@ -700,5 +878,5 @@ interface NativeSimulationResult extends SimulationResult {
700
878
  volatilityLabel?: string;
701
879
  }
702
880
 
703
- export { DevBridge, EventEmitter, LOADER_BAR_MAX_WIDTH, PlatformSession, buildLogoSVG, createCSSPreloader, createPlatformSession, removeCSSPreloader, setCSSPreloaderProgress, waitCSSPreloaderTap };
704
- export type { ActionDefinition, AssetBundle, AssetEntry, AssetManifest, BetLevelsConfig, DevBridgeConfig, DistributionBucket, GameDefinition, LoadingScreenConfig, LuaEngineConfig, LuaPlayResult, MaxWinConfig, NativeSimulationConfig, NativeSimulationResult, PersistentStateConfig, PlatformSessionConfig, PlatformSessionEvents, ReplayConfig, ReplayLaunch, SDKOptions, SessionConfig, SimulationConfig, SimulationRawAccumulators, SimulationResult, StageStats, TransitionRule };
881
+ export { DEFAULT_EXTERNAL_MIN_DISPLAY_MS, DevBridge, EventEmitter, LOADER_BAR_MAX_WIDTH, PlatformSession, adoptExternalOverlay, advanceExternalOverlay, buildLogoSVG, createCSSPreloader, createPlatformSession, externalOverlayHold, hasExternalOverlay, releaseExternalOverlay, removeCSSPreloader, setCSSPreloaderProgress, waitCSSPreloaderTap };
882
+ export type { ActionDefinition, AssetBundle, AssetEntry, AssetManifest, BetLevelsConfig, DevBridgeConfig, DistributionBucket, ExternalLoadingOverlay, GameDefinition, LoadingScreenConfig, LuaEngineConfig, LuaPlayResult, MaxWinConfig, NativeSimulationConfig, NativeSimulationResult, PersistentStateConfig, PlatformSessionConfig, PlatformSessionEvents, ReplayConfig, ReplayLaunch, SDKOptions, SessionConfig, SimulationConfig, SimulationRawAccumulators, SimulationResult, StageStats, TransitionRule };