@xhub-short/sdk 1.0.0-beta.22 → 1.0.0-beta.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1371,6 +1371,21 @@ interface VideoSlotWiredProps extends VideoSlotProps {
1371
1371
  * @default false
1372
1372
  */
1373
1373
  disableSpeedBoost?: boolean;
1374
+ /**
1375
+ * Speed multiplier for speed boost.
1376
+ * @default 2
1377
+ */
1378
+ speedBoostSpeed?: number;
1379
+ /**
1380
+ * Hold delay in ms before speed boost activates.
1381
+ * @default 2000
1382
+ */
1383
+ speedBoostHoldDelay?: number;
1384
+ /**
1385
+ * Pull-down distance in px to trigger speed lock.
1386
+ * @default 50
1387
+ */
1388
+ speedBoostPullDownThreshold?: number;
1374
1389
  }
1375
1390
  /**
1376
1391
  * SDK Player Error - Preserves error metadata from PlayerEngine
@@ -1420,7 +1435,7 @@ declare class SDKPlayerError extends Error {
1420
1435
  * Host app must trigger these manually or wait for future IntersectionObserver
1421
1436
  * implementation in VideoSlotHeadless.
1422
1437
  */
1423
- declare function VideoSlot({ video, index, resourceState: resourceStateOverride, playerState: playerStateOverride, playerControls: playerControlsOverride, className, children, onVisible, onHidden, onTap, onDoubleTap, onLongPress, disableTap, renderError, renderLoading, reportedTitle, reportedMessage, reportedButtonText, style, disableSpeedBoost, }: VideoSlotWiredProps): React.ReactElement;
1438
+ declare function VideoSlot({ video, index, resourceState: resourceStateOverride, playerState: playerStateOverride, playerControls: playerControlsOverride, className, children, onVisible, onHidden, onTap, onDoubleTap, onLongPress, disableTap, renderError, renderLoading, reportedTitle, reportedMessage, reportedButtonText, style, disableSpeedBoost, speedBoostSpeed, speedBoostHoldDelay, speedBoostPullDownThreshold, }: VideoSlotWiredProps): React.ReactElement;
1424
1439
  declare namespace VideoSlot {
1425
1440
  var displayName: string;
1426
1441
  }
@@ -1720,6 +1735,14 @@ interface DefaultVideoSlotProps {
1720
1735
  enableZoom?: boolean;
1721
1736
  zoomMaxScale?: number;
1722
1737
  zoomSnapBackAnimation?: 'none' | 'ease' | 'spring';
1738
+ /** Disable speed boost (default: false) */
1739
+ disableSpeedBoost?: boolean;
1740
+ /** Speed multiplier for speed boost (default: 2) */
1741
+ speedBoostSpeed?: number;
1742
+ /** Hold delay in ms before speed boost activates (default: 2000) */
1743
+ speedBoostHoldDelay?: number;
1744
+ /** Pull-down distance in px to trigger speed lock (default: 50) */
1745
+ speedBoostPullDownThreshold?: number;
1723
1746
  className?: string;
1724
1747
  }
1725
1748
  declare const DefaultVideoSlot: react.NamedExoticComponent<DefaultVideoSlotProps>;
package/dist/index.js CHANGED
@@ -5237,7 +5237,10 @@ function VideoSlot({
5237
5237
  reportedMessage,
5238
5238
  reportedButtonText,
5239
5239
  style,
5240
- disableSpeedBoost
5240
+ disableSpeedBoost,
5241
+ speedBoostSpeed,
5242
+ speedBoostHoldDelay,
5243
+ speedBoostPullDownThreshold
5241
5244
  }) {
5242
5245
  const { playerEngine, uiStore } = useSDK();
5243
5246
  const { shouldShowOverlay, dismissOverlay } = useReportedVideo(video.id);
@@ -5372,6 +5375,9 @@ function VideoSlot({
5372
5375
  onSpeedReset: disableSpeedBoost ? void 0 : handleSpeedReset,
5373
5376
  onSpeedLock: disableSpeedBoost ? void 0 : handleSpeedLock,
5374
5377
  disableSpeedBoost,
5378
+ speedBoostSpeed,
5379
+ speedBoostHoldDelay,
5380
+ speedBoostPullDownThreshold,
5375
5381
  children: [
5376
5382
  children,
5377
5383
  shouldShowOverlay && /* @__PURE__ */ jsx(
@@ -5468,6 +5474,10 @@ function DefaultVideoSlotContent(props) {
5468
5474
  renderError: renderError ?? defaultErrorRenderer,
5469
5475
  className,
5470
5476
  disableTap: enableZoom && isZoomActive,
5477
+ disableSpeedBoost: props.disableSpeedBoost,
5478
+ speedBoostSpeed: props.speedBoostSpeed,
5479
+ speedBoostHoldDelay: props.speedBoostHoldDelay,
5480
+ speedBoostPullDownThreshold: props.speedBoostPullDownThreshold,
5471
5481
  onHidden: () => onContentHidden?.(video.id),
5472
5482
  children: [
5473
5483
  renderPlayer ? renderPlayer({ muted: false }) : /* @__PURE__ */ jsx(VideoPlayer, { muted: false }),
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@xhub-short/sdk",
3
3
  "sideEffects": false,
4
- "version": "1.0.0-beta.22",
4
+ "version": "1.0.0-beta.23",
5
5
  "type": "module",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -21,13 +21,13 @@
21
21
  ],
22
22
  "dependencies": {
23
23
  "zustand": "^5.0.0",
24
- "@xhub-short/adapters": "1.0.0-beta.22",
25
- "@xhub-short/contracts": "1.0.0-beta.22",
26
- "@xhub-short/ui": "1.0.0-beta.22",
27
- "@xhub-short/core": "1.0.0-beta.22"
24
+ "@xhub-short/contracts": "1.0.0-beta.23",
25
+ "@xhub-short/ui": "1.0.0-beta.23",
26
+ "@xhub-short/core": "1.0.0-beta.23",
27
+ "@xhub-short/adapters": "1.0.0-beta.23"
28
28
  },
29
29
  "optionalDependencies": {
30
- "@xhub-short/bridge": "0.1.0-beta.21"
30
+ "@xhub-short/bridge": "0.1.0-beta.22"
31
31
  },
32
32
  "peerDependencies": {
33
33
  "react": "^19.0.0",