@wscsports/blaze-web-sdk 0.3.2 → 0.3.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wscsports/blaze-web-sdk",
3
- "version": "0.3.2",
3
+ "version": "0.3.3",
4
4
  "main": "publish/index",
5
5
  "types": "publish/index",
6
6
  "files": [
@@ -172,7 +172,7 @@ export declare class StoryEvent {
172
172
  'content_duration_viewed': number;
173
173
  'story_page_duration': number;
174
174
  'story_page_duration_viewed_percent': number;
175
- 'gesture_type': string;
175
+ 'gesture_type': StoryGestureType;
176
176
  'labels_expression': string;
177
177
  'story_session_id': string;
178
178
  'story_page_index': number;
@@ -196,6 +196,7 @@ export declare class MomentEvent {
196
196
  'playback_action_method': string;
197
197
  'audio_state': string;
198
198
  'loop_number': string;
199
+ 'gesture_type': MomentGestureType;
199
200
  }
200
201
  export declare class WidgetEvent {
201
202
  'page_view_id': string;
@@ -241,6 +242,7 @@ export declare class AdEvent {
241
242
  'ad_path': string;
242
243
  'ad_unit_id': string;
243
244
  'session_id': string;
245
+ 'gesture_type': MomentGestureType | StoryGestureType;
244
246
  }
245
247
  export declare class ImaAdEvent {
246
248
  'story_id': string;
@@ -256,6 +258,7 @@ export declare class ImaAdEvent {
256
258
  'failure_reason': string;
257
259
  'ad_type': string;
258
260
  'ima_url': string;
261
+ 'player_orientation': ContentAspectRatio;
259
262
  }
260
263
  export declare class InteractionEvent {
261
264
  'interaction_id': string;
@@ -303,7 +306,7 @@ export declare class BlazeDataSourceValidations {
303
306
  static validateFormat(dataSource: BlazeDataSourceType): void;
304
307
  }
305
308
 
306
- export declare function debounce<T extends Event>(func: EventHandler<T>, _delay: number): (event: T) => Promise<void>;
309
+ export declare function debounce<T extends (...args: any[]) => any>(func: T, delay: number): (...args: Parameters<T>) => void;
307
310
 
308
311
  export declare const Platform: {
309
312
  readonly Console: "console";
@@ -335,6 +338,7 @@ declare class DeviceDetector {
335
338
  private detectPlatform;
336
339
  private getScreenOrientation;
337
340
  private handleResize;
341
+ isIOSMobileTabletSafari(): boolean;
338
342
  }
339
343
  export declare const deviceDetector: DeviceDetector;
340
344
 
@@ -536,7 +540,7 @@ export declare class BlazeButton extends BaseWidget {
536
540
  private setWidth;
537
541
  }
538
542
 
539
- type AttributeType = 'hidden-btn' | 'width' | 'height' | 'margin' | 'text' | 'href' | 'icon-url' | 'icon-size' | 'icon-color' | 'arrow-icon-display' | 'arrow-icon-color';
543
+ type AttributeType = 'hidden-btn' | 'width' | 'height' | 'margin' | 'text' | 'href' | 'icon-url' | 'icon-size' | 'icon-color' | 'arrow-icon-display' | 'arrow-icon-color' | 'display-icon';
540
544
  export declare class BlazeCtaButton extends BaseWidget {
541
545
  anchorButtonElement: HTMLAnchorElement;
542
546
  iconButtonElement: BlazeButton;
@@ -1044,7 +1048,6 @@ export declare const externalLinkIconSvg = "data:image/svg+xml;base64,PD94bWwgdm
1044
1048
  export declare const fullscreenIconSvg = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9Im1hc2swXzkxNTFfNTE4OSIgc3R5bGU9Im1hc2stdHlwZTphbHBoYSIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeD0iMCIgeT0iMCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSIjRDlEOUQ5Ii8+CjwvbWFzaz4KPGcgbWFzaz0idXJsKCNtYXNrMF85MTUxXzUxODkpIj4KPHBhdGggZD0iTTUgMjFDNC40NSAyMSAzLjk3OTE3IDIwLjgwNDIgMy41ODc1IDIwLjQxMjVDMy4xOTU4MyAyMC4wMjA4IDMgMTkuNTUgMyAxOVYxNUg1VjE5SDlWMjFINVpNMTUgMjFWMTlIMTlWMTVIMjFWMTlDMjEgMTkuNTUgMjAuODA0MiAyMC4wMjA4IDIwLjQxMjUgMjAuNDEyNUMyMC4wMjA4IDIwLjgwNDIgMTkuNTUgMjEgMTkgMjFIMTVaTTMgOVY1QzMgNC40NSAzLjE5NTgzIDMuOTc5MTcgMy41ODc1IDMuNTg3NUMzLjk3OTE3IDMuMTk1ODMgNC40NSAzIDUgM0g5VjVINVY5SDNaTTE5IDlWNUgxNVYzSDE5QzE5LjU1IDMgMjAuMDIwOCAzLjE5NTgzIDIwLjQxMjUgMy41ODc1QzIwLjgwNDIgMy45NzkxNyAyMSA0LjQ1IDIxIDVWOUgxOVoiIGZpbGw9IiNGMEYwRjAiLz4KPC9nPgo8L3N2Zz4K";
1045
1049
  export declare const arrowDownMomentIconSvg = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuNjY2NjcgMThWNS43MzMzMkwxLjg2NjY3IDEwLjUzMzNMMCA4LjY2NjY2TDggMC42NjY2NTZMMTYgOC42NjY2NkwxNC4xMzMzIDEwLjUzMzNMOS4zMzMzMyA1LjczMzMyVjE4SDYuNjY2NjdaIiBmaWxsPSJ3aGl0ZSIgZmlsbC1vcGFjaXR5PSIwLjkyIi8+Cjwvc3ZnPgo=";
1046
1050
  export declare const arrowUpMomentIconSvg = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgdHJhbnNmb3JtPSJzY2FsZSgxIC0xKSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuNjY2NjcgMThWNS43MzMzMkwxLjg2NjY3IDEwLjUzMzNMMCA4LjY2NjY2TDggMC42NjY2NTZMMTYgOC42NjY2NkwxNC4xMzMzIDEwLjUzMzNMOS4zMzMzMyA1LjczMzMyVjE4SDYuNjY2NjdaIiBmaWxsPSJ3aGl0ZSIgZmlsbC1vcGFjaXR5PSIwLjkyIi8+Cjwvc3ZnPgo=";
1047
- export declare const externalLinkIcon = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+CjxwYXRoIGQ9Im0xMiAwYzYuNiAwIDEyIDUuNCAxMiAxMnMtNS40IDEyLTEyIDEyLTEyLTUuNC0xMi0xMiA1LjQtMTIgMTItMTJ6IiBmaWxsLW9wYWNpdHk9Ii4xIi8+CjxwYXRoIGQ9Im0xMy44IDE0LjYgMC4yIDAuNS0wLjIgMC41LTEuNSAxLjRjLTAuNyAwLjctMS43IDEuMS0yLjcgMS4xYTQgNCAwIDAgMS0yLjctMS4xIDMuOSAzLjkgMCAwIDEtMS4xLTIuNyA0IDQgMCAwIDEgMS4xLTIuN2wxLjUtMS41IDAuNS0wLjEgMC41IDAuMiAwLjIgMC41LTAuMiAwLjUtMS41IDEuNWMtMC41IDAuNS0wLjcgMS4xLTAuNyAxLjdzMC4zIDEuMyAwLjcgMS43YzAuNSAwLjUgMS4xIDAuNyAxLjcgMC43czEuMy0wLjMgMS43LTAuN2wxLjUtMS41YzAuMy0wLjMgMC43LTAuMyAxIDB6bTMuMi03LjZhMy45IDMuOSAwIDAgMC0yLjctMS4xIDQgNCAwIDAgMC0yLjcgMS4xbC0xLjUgMS41LTAuMSAwLjQgMC4yIDAuNSAwLjUgMC4yIDAuNS0wLjIgMS41LTEuNWMwLjUtMC41IDEuMS0wLjcgMS43LTAuN3MxLjMgMC4zIDEuNyAwLjdjMC41IDAuNSAwLjcgMS4xIDAuNyAxLjdzLTAuMyAxLjMtMC43IDEuN2wtMS41IDEuNS0wLjIgMC41IDAuMiAwLjUgMC41IDAuMiAwLjUtMC4yIDEuNS0xLjVjMC43LTAuNyAxLjEtMS43IDEuMS0yLjctMC4xLTEtMC41LTEuOS0xLjItMi42em0tNy45IDcuMiAwLjIgMC41IDAuNSAwLjIgMC41LTAuMiA0LjUtNC41IDAuMi0wLjUtMC4yLTAuNWMtMC4zLTAuMi0wLjgtMC4yLTEgMC4xbC00LjUgNC41eiIvPgo8L3N2Zz4K";
1048
1051
  export declare const newPageIcon = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9Im1hc2swXzk0NDlfOTc2NyIgc3R5bGU9Im1hc2stdHlwZTphbHBoYSIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeD0iMCIgeT0iMCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij4KPHJlY3Qgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSIjRDlEOUQ5Ii8+CjwvbWFzaz4KPGcgbWFzaz0idXJsKCNtYXNrMF85NDQ5Xzk3NjcpIj4KPHBhdGggZD0iTTUgMjFDNC40NSAyMSAzLjk3OTE3IDIwLjgwNDIgMy41ODc1IDIwLjQxMjVDMy4xOTU4MyAyMC4wMjA4IDMgMTkuNTUgMyAxOVY1QzMgNC40NSAzLjE5NTgzIDMuOTc5MTcgMy41ODc1IDMuNTg3NUMzLjk3OTE3IDMuMTk1ODMgNC40NSAzIDUgM0gxMlY1SDVWMTlIMTlWMTJIMjFWMTlDMjEgMTkuNTUgMjAuODA0MiAyMC4wMjA4IDIwLjQxMjUgMjAuNDEyNUMyMC4wMjA4IDIwLjgwNDIgMTkuNTUgMjEgMTkgMjFINVpNOS43IDE1LjdMOC4zIDE0LjNMMTcuNiA1SDE0VjNIMjFWMTBIMTlWNi40TDkuNyAxNS43WiIgZmlsbD0iI0YwRjBGMCIvPgo8L2c+Cjwvc3ZnPgo=";
1049
1052
 
1050
1053
  type CustomNativeTargeting = Record<string, string | string[]>;
@@ -1093,7 +1096,7 @@ export interface IButtonPlayerNavigationConfig {
1093
1096
  export interface IButtonPlayerConfig {
1094
1097
  iconUrl: string;
1095
1098
  eventType: string;
1096
- clickHandler: (event: Event) => void;
1099
+ clickHandler: (event?: Event) => void;
1097
1100
  dataTestId?: string;
1098
1101
  }
1099
1102
 
@@ -1864,6 +1867,26 @@ type BlazeMomentsPlayerButtonStyle = {
1864
1867
  tablet: BlazeMomentsPlayerButtonDeviceStyle;
1865
1868
  desktop: BlazeMomentsPlayerButtonDeviceStyle;
1866
1869
  };
1870
+ export type BlazeMomentsPlayerCtaStyle = {
1871
+ cornerRadius: string;
1872
+ textSize: string;
1873
+ font: string;
1874
+ fontWeight: FontWeightType;
1875
+ width: string;
1876
+ height: string;
1877
+ layoutPositioning: BlazeMomentsPlayerCTAPositioning;
1878
+ horizontalAlignment: BlazeMomentsPlayerCTAHorizontalAlignment;
1879
+ icon: BlazeMomentsPlayerCtaIconStyle;
1880
+ };
1881
+ type BlazeMomentsPlayerCTAPositioning = 'CTA_BELLOW_BOTTOM_BUTTONS_BOX' | 'CTA_NEXT_TO_BOTTOM_BUTTONS_BOX';
1882
+ type BlazeMomentsPlayerCTAHorizontalAlignment = 'START' | 'CENTER' | 'END' | 'FULL_AVAILABLE_WIDTH';
1883
+ type BlazeMomentsPlayerCtaIconStyle = {
1884
+ position: 'START';
1885
+ color: string;
1886
+ url: string;
1887
+ size: string;
1888
+ isVisible: boolean;
1889
+ };
1867
1890
  type BlazeSeekBarStyle = {
1868
1891
  isVisible: boolean;
1869
1892
  isThumbVisible: boolean;
@@ -1889,7 +1912,9 @@ export interface MomentPlayerStyle {
1889
1912
  icons: BlazeMomentIconsStyle;
1890
1913
  iconsButtonOrder: IconButtonType[];
1891
1914
  iconsPosition: IconsPositionType;
1915
+ contentBoxHorizontalSpacing: string;
1892
1916
  seekBar: BlazeMomentsPlayerSeekBarStyle;
1917
+ ctaButton: BlazeMomentsPlayerCtaStyle;
1893
1918
  }
1894
1919
  export interface CtaButtonStyle {
1895
1920
  borderRadius: string;
@@ -2326,6 +2351,9 @@ export type ElementType = WidgetElementType | ComponentsElementType;
2326
2351
 
2327
2352
  export type EnvironmentType = 'prod' | 'uat';
2328
2353
 
2354
+ export type StoryGestureType = 'Swipe Up' | 'CTA Click';
2355
+ export type MomentGestureType = 'CTA Click';
2356
+
2329
2357
  export * from './attribute-parser';
2330
2358
  export * from './button.type';
2331
2359
  export * from './client-platform.type';
@@ -2348,6 +2376,7 @@ export * from './widget.type';
2348
2376
  export * from './chip-status.type';
2349
2377
  export * from './prefetch.type';
2350
2378
  export * from './trigger.type';
2379
+ export * from './gesture.type';
2351
2380
 
2352
2381
  export type EntitiesType = 'playerId' | 'teamId' | 'gameId' | 'roundId';
2353
2382
  export type PerItemStyleOverrides = Partial<Record<EntitiesType, Array<{
@@ -3055,6 +3084,7 @@ export declare class BlazeWidgetVideo extends BlazeWidgetVideoBase {
3055
3084
  connectedCallback(): void;
3056
3085
  disconnectedCallback(): void;
3057
3086
  setData(data: IPage): void;
3087
+ getVideoDuration(): Promise<number>;
3058
3088
  loadPoster(): void;
3059
3089
  display(): void;
3060
3090
  hide(): void;
@@ -3070,6 +3100,7 @@ export declare class BlazeWidgetVideo extends BlazeWidgetVideoBase {
3070
3100
  set currentTime(value: number);
3071
3101
  get currentTime(): number;
3072
3102
  get duration(): number;
3103
+ videoDurationMetrics(): Promise<void>;
3073
3104
  requestFrameCallback(callback: () => void): void;
3074
3105
  mainElement(): CanvasImageSource;
3075
3106
  get paused(): boolean;
@@ -3106,10 +3137,13 @@ export declare class BlazeWidgetAd extends BlazeWidgetVideoBase {
3106
3137
  private onFail?;
3107
3138
  private isAdFailed;
3108
3139
  private isPlaying;
3140
+ private boundMessageEvent;
3141
+ private ctaModal;
3109
3142
  constructor(contentParent: BlazeWidgetStory | BlazeWidgetMoment);
3110
3143
  connectedCallback(): void;
3111
3144
  disconnectedCallback(): void;
3112
3145
  render(): void;
3146
+ handleMessageEvent(event: MessageEvent): void;
3113
3147
  get currentTime(): number;
3114
3148
  set currentTime(value: number);
3115
3149
  get duration(): number;
@@ -3131,6 +3165,7 @@ export declare class BlazeWidgetAd extends BlazeWidgetVideoBase {
3131
3165
  private initStyles;
3132
3166
  isAdContainerConnectedToDOM(): Promise<boolean>;
3133
3167
  private destroyAd;
3168
+ handleCtaSwipeUp(): void;
3134
3169
  }
3135
3170
 
3136
3171
  export declare class BlazeWidgetBannerAd extends HTMLElement {
@@ -3245,6 +3280,7 @@ export declare class BlazeWidgetMomentSeekBar extends HTMLElement {
3245
3280
  static get observedAttributes(): string[];
3246
3281
  attributeChangedCallback(name: string, oldValue: string, _newValue: string): void;
3247
3282
  connectedCallback(): void;
3283
+ private addTransitionStyle;
3248
3284
  onContentPaused(): void;
3249
3285
  onContentResumed(directReset?: boolean): void;
3250
3286
  disconnectedCallback(): void;
@@ -3303,6 +3339,9 @@ export declare class BlazeWidgetMoment extends BlazeWidgetContent {
3303
3339
  topContainer: BlazeDiv;
3304
3340
  bottomContainer: BlazeDiv;
3305
3341
  bottomContentContainer: BlazeDiv;
3342
+ buttonsContainer: BlazeDiv;
3343
+ bottomContainerCtaAndContent: BlazeDiv;
3344
+ bottomContainerCtaContentButtons: BlazeDiv;
3306
3345
  shadowBottomElement: BlazeDiv;
3307
3346
  shadowTopElement: BlazeDiv;
3308
3347
  topButtonsContainer: BlazeDiv;
@@ -3320,6 +3359,7 @@ export declare class BlazeWidgetMoment extends BlazeWidgetContent {
3320
3359
  ctaButtonElement: BlazeCtaButton;
3321
3360
  isInit: boolean;
3322
3361
  isActive: boolean;
3362
+ isMomentPausedByPlayPauseButton: boolean;
3323
3363
  shouldShowImaAdOnStart: boolean;
3324
3364
  imaUrl: string;
3325
3365
  adContext?: IAdContext;
@@ -3341,10 +3381,15 @@ export declare class BlazeWidgetMoment extends BlazeWidgetContent {
3341
3381
  styleTopContainer(): void;
3342
3382
  styleBottomContainer(): void;
3343
3383
  styleHeadBodyContainer(): void;
3344
- styleContent(element: BlazeDiv, textStyle: BlazeMomentsPlayerTextStyle, type: string): void;
3345
- styleLike(): void;
3346
- styleShare(): void;
3347
- styleCta(): void;
3384
+ styleContent(element: BlazeDiv, textStyle: BlazeMomentsPlayerTextStyle, type: 'HEADING_CONTENT' | 'BODY_CONTENT'): void;
3385
+ applyLikeStyle(): void;
3386
+ applyShareStyle(): void;
3387
+ private applyCtaButtonStyles;
3388
+ private setAnchorButtonStyles;
3389
+ private setIconAttributes;
3390
+ private setLayoutPositioning;
3391
+ private setCtaButtonAlignment;
3392
+ setLayoutSpacing(ctaButtonStyle: BlazeMomentsPlayerCtaStyle, horizontalSpacing: string): void;
3348
3393
  initializeElements(): void;
3349
3394
  appendShadowElements(): void;
3350
3395
  createButtonElement(options: ButtonElementOptions, button: BlazeButton): void;
@@ -3354,6 +3399,7 @@ export declare class BlazeWidgetMoment extends BlazeWidgetContent {
3354
3399
  handleMobileSpecificFeatures(): void;
3355
3400
  configureContentBody(): void;
3356
3401
  appendBottomContainer(): void;
3402
+ private updateLayoutPositioning;
3357
3403
  createPlayPauseButton(): void;
3358
3404
  handlePlayPauseButtonClick(): void;
3359
3405
  setModal(modal: BlazeWidgetMomentModal): void;
@@ -3384,13 +3430,13 @@ export declare class BlazeWidgetMoment extends BlazeWidgetContent {
3384
3430
  onCtaClick(event: Event): boolean;
3385
3431
  play(): void;
3386
3432
  handleOnClose(): void;
3387
- handleOnLikeClick(e: Event): void;
3433
+ handleOnLikeClick(): void;
3388
3434
  pause(): void;
3389
3435
  resume(): void;
3390
3436
  resetPosition(): void;
3391
3437
  restartVideo(): void;
3392
3438
  adjustAdView(): void;
3393
- event(action: MomentAction, momentData: Partial<MomentEvent>, label?: string | undefined): void;
3439
+ event(action: MomentAction, momentData: Partial<MomentEvent>, label?: string | undefined): Promise<void>;
3394
3440
  render(): void;
3395
3441
  }
3396
3442
 
@@ -3516,7 +3562,7 @@ export declare class BlazeWidgetStory extends BlazeWidgetContent {
3516
3562
  adjustAdView(): void;
3517
3563
  private setPlayerButtonPosition;
3518
3564
  updatePlayerButtonIcons(): void;
3519
- handleCtaAction(event: Event, gestureType: 'Swipe Up' | 'CTA Click'): boolean;
3565
+ handleCtaAction(event: Event, gestureType: StoryGestureType): boolean;
3520
3566
  playToggle(options?: {
3521
3567
  customIsPlaying?: boolean;
3522
3568
  }): void;
@@ -3539,7 +3585,7 @@ export declare class BlazeWidgetStory extends BlazeWidgetContent {
3539
3585
  load(): void;
3540
3586
  play(): void;
3541
3587
  bannerAdEvent(detail: InternalEventDetails[InternalEvent.BANNER_ANALYTICS]): void;
3542
- event(action: StoryAction, storyData: Partial<StoryEvent>, label?: string | undefined): void;
3588
+ event(action: StoryAction, storyData: Partial<StoryEvent>, label?: string | undefined): Promise<void>;
3543
3589
  updateContainerLayout(): void;
3544
3590
  connectedCallback(): void;
3545
3591
  onShareModalClose(): void;