@carbon/ibmdotcom-web-components 2.54.0 → 2.54.2

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.
Files changed (39) hide show
  1. package/dist/dotcom-shell.js +2 -2
  2. package/dist/dotcom-shell.min.js +2 -2
  3. package/dist/ibmdotcom-web-components-dotcom-shell.js +2 -2
  4. package/dist/ibmdotcom-web-components-dotcom-shell.min.js +2 -2
  5. package/dist/{index-cc6fa5f4.js → index-bdb17ed8.js} +325 -325
  6. package/dist/{index-211859d7.js → index-c8ddcb60.js} +489 -111
  7. package/dist/{left-nav-menu-d3a8261d.js → left-nav-menu-176b604c.js} +2 -2
  8. package/dist/{left-nav-menu-a1676975.js → left-nav-menu-9a0606ac.js} +2 -2
  9. package/dist/{left-nav-menu-category-heading-3180761b.js → left-nav-menu-category-heading-23532213.js} +2 -2
  10. package/dist/{left-nav-menu-category-heading-4eb433d1.js → left-nav-menu-category-heading-a357e1cc.js} +2 -2
  11. package/dist/{left-nav-menu-item-15dc12df.js → left-nav-menu-item-9998263b.js} +2 -2
  12. package/dist/{left-nav-menu-item-0aa13b09.js → left-nav-menu-item-c756756f.js} +2 -2
  13. package/dist/{left-nav-menu-section-bcb78866.js → left-nav-menu-section-453e5a41.js} +2 -2
  14. package/dist/{left-nav-menu-section-d02d9946.js → left-nav-menu-section-93da9dad.js} +2 -2
  15. package/dist/{left-nav-overlay-8714a8d1.js → left-nav-overlay-8e27d7f1.js} +2 -2
  16. package/dist/{left-nav-overlay-b164eaf3.js → left-nav-overlay-8f5bcf92.js} +2 -2
  17. package/dist/{megamenu-category-group-c1b819f8.js → megamenu-category-group-6005a5d5.js} +2 -2
  18. package/dist/{megamenu-category-group-copy-bd2b1693.js → megamenu-category-group-copy-5d3d3b46.js} +2 -2
  19. package/dist/{megamenu-category-group-copy-90211953.js → megamenu-category-group-copy-9aa88ab8.js} +2 -2
  20. package/dist/{megamenu-category-group-d967ea13.js → megamenu-category-group-daa7ee4d.js} +2 -2
  21. package/dist/{megamenu-category-heading-3a55642b.js → megamenu-category-heading-0fe0c38e.js} +2 -2
  22. package/dist/{megamenu-category-heading-80214eb4.js → megamenu-category-heading-696dcefb.js} +2 -2
  23. package/dist/{megamenu-category-link-58d60af3.js → megamenu-category-link-4617a58f.js} +2 -2
  24. package/dist/{megamenu-category-link-15ba610e.js → megamenu-category-link-62e40529.js} +2 -2
  25. package/dist/{megamenu-category-link-group-705d5e8c.js → megamenu-category-link-group-ae3da141.js} +2 -2
  26. package/dist/{megamenu-category-link-group-20ba8bd3.js → megamenu-category-link-group-c5d6f6d5.js} +2 -2
  27. package/dist/{megamenu-left-navigation-69859447.js → megamenu-left-navigation-2f8681ba.js} +2 -2
  28. package/dist/{megamenu-left-navigation-31a73000.js → megamenu-left-navigation-b8b23af6.js} +2 -2
  29. package/dist/{megamenu-overlay-0d050917.js → megamenu-overlay-130aa276.js} +2 -2
  30. package/dist/{megamenu-overlay-7a872950.js → megamenu-overlay-a8b95cf1.js} +2 -2
  31. package/dist/{megamenu-tab-13ae3cfb.js → megamenu-tab-3fe0134f.js} +2 -2
  32. package/dist/{megamenu-tab-5fb993a6.js → megamenu-tab-708ee052.js} +2 -2
  33. package/es/components/video-player/video-player-container.js +3 -1
  34. package/es/components/video-player/video-player-container.js.map +1 -1
  35. package/es/components/video-player-v7/video-player-container.js +3 -1
  36. package/es/components/video-player-v7/video-player-container.js.map +1 -1
  37. package/es/internal/vendor/@carbon/ibmdotcom-services/services/KalturaPlayerV7/KalturaPlayer.js +13 -6
  38. package/lib/internal/vendor/@carbon/ibmdotcom-services/services/KalturaPlayerV7/KalturaPlayer.js +13 -6
  39. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"video-player-container.js","names":["bindActionCreators","property","KalturaPlayerAPI","settings","store","loadMediaData","ConnectMixin","StableSelectorMixin","C4DVideoPlayerComposite","carbonElement","customElement","LocaleAPI","stablePrefix","c4dPrefix","mapStateToProps","state","kalturaPlayerAPI","mediaData","mapDispatchToProps","dispatch","_loadVideoData","C4DVideoPlayerContainerMixin","Base","C4DVideoPlayerContainerMixinImpl","_decorate","_initialize","_StableSelectorMixin","constructor","args","F","d","kind","key","value","decorators","type","String","attribute","_setRequestEmbedVideoInProgress","videoId","request","_requestsEmbedVideo","oldRequestsEmbedVideo","_objectSpread","_setErrorRequestEmbedVideo","error","Promise","reject","_setEmbeddedVideo","kalturaPlayer","resolve","embeddedVideos","oldEmbeddedVideos","_setAutoplayPreference","preference","updatedValue","localStorage","setItem","prefersAutoplayStorageKey","_getAutoplayPreference","storedValue","getItem","window","matchMedia","matches","Boolean","parseInt","_getPlayerOptions","backgroundMode","intersectionMode","autoPlay","muted","mediaTitle","lc","toLowerCase","playerOptions","autoplayPreference","playerMode","loop","playerType","_embedVideoImpl","_getElementById","doc","Object","prototype","hasOwnProperty","call","getRootNode","ownerDocument","playerId","Math","random","toString","slice","div","document","createElement","id","className","_videoPlayer","videoPlayer","TypeError","appendChild","embedVideoHandle","embedMedia","width","height","api","style","setProperty","getElementById","dataset","videoEmbed","firstElementChild","focus","requestsEmbedVideo","requestEmbedVideo","promiseEmbedVideo","firstUpdated","requestAnimationFrame","_this$querySelector","button","querySelector","shadowRoot","getAttribute","setAttribute","transposeAttributes","getLocale","C4DVideoPlayerContainer","_initialize2","_ConnectMixin"],"sources":["components/video-player-v7/video-player-container.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n ActionCreatorsMapObject,\n Dispatch,\n Store,\n bindActionCreators,\n} from 'redux';\nimport {} from 'lit';\nimport { property } from 'lit/decorators.js';\nimport KalturaPlayerAPI from '@carbon/ibmdotcom-services/es/services/KalturaPlayerV7/KalturaPlayer.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport store from '../../internal/vendor/@carbon/ibmdotcom-services-store/store.js';\nimport {\n MediaData,\n MediaPlayerAPIState,\n} from '../../internal/vendor/@carbon/ibmdotcom-services-store/types/kalturaPlayerAPIv7';\nimport { loadMediaData } from '../../internal/vendor/@carbon/ibmdotcom-services-store/actions/kalturaPlayerAPIv7.js';\nimport { MediaPlayerAPIActions } from '../../internal/vendor/@carbon/ibmdotcom-services-store/actions/kalturaPlayerAPIv7';\nimport { Constructor } from '../../globals/defs';\nimport ConnectMixin from '../../globals/mixins/connect';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport C4DVideoPlayerComposite from './video-player-composite';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\nimport { LocaleAPI } from '@carbon/ibmdotcom-services/es/services/Locale/index';\n\nconst { stablePrefix: c4dPrefix } = settings;\n\n/**\n * The Redux state used for `<c4d-video-player-container-v7>`.\n */\nexport interface VideoPlayerContainerState {\n /**\n * The Redux state for `KalturaPlayerAPI`.\n */\n kalturaPlayerAPI?: MediaPlayerAPIState;\n}\n\n/**\n * The properties for `<c4d-video-player-container-v7>` from Redux state.\n */\nexport interface VideoPlayerContainerStateProps {\n /**\n * The video data, keyed by the video ID.\n */\n mediaData?: { [videoId: string]: MediaData };\n}\n\nexport type VideoPlayerActions = ReturnType<typeof loadMediaData>;\n\n/**\n * @param state The Redux state for video player.\n * @returns The converted version of the given state, tailored for `<c4d-video-player-container-v7>`.\n */\nexport function mapStateToProps(\n state: VideoPlayerContainerState\n): VideoPlayerContainerStateProps {\n const { kalturaPlayerAPI } = state;\n const { mediaData } = kalturaPlayerAPI ?? {};\n return !mediaData ? {} : { mediaData };\n}\n\n/**\n * @param dispatch The Redux `dispatch()` API.\n * @returns The methods in `<c4d-video-player-container-v7>` to dispatch Redux actions.\n */\nexport function mapDispatchToProps(dispatch: Dispatch<MediaPlayerAPIActions>) {\n return bindActionCreators<\n VideoPlayerActions,\n ActionCreatorsMapObject<VideoPlayerActions>\n >(\n {\n _loadVideoData: loadMediaData,\n },\n dispatch as Dispatch // TS definition of `bindActionCreators()` seems to have no templated `Dispatch`\n );\n}\n\n/**\n * @param Base The base class.\n * @returns A mix-in that implements video embedding API calls.\n */\nexport const C4DVideoPlayerContainerMixin = <\n T extends Constructor<HTMLElement>\n>(\n Base: T\n) => {\n /**\n * A mix-in class that sets up and cleans up event listeners defined by `@HostListener` decorator.\n */\n abstract class C4DVideoPlayerContainerMixinImpl extends StableSelectorMixin(\n Base\n ) {\n /**\n * The video player.\n */\n abstract _videoPlayer?: HTMLElement;\n\n /**\n * The embedded Kaltura player element (that has APIs), keyed by the video ID.\n */\n abstract embeddedVideos?: { [videoId: string]: any };\n\n /**\n * The request for the embedded Kaltura player element (that has APIs), keyed by the video ID.\n *\n * @protected\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n _requestsEmbedVideo: { [videoId: string]: Promise<any> } = {};\n\n /**\n * Custom video name\n */\n @property({ type: String, attribute: 'customvideoname' })\n customVideoName = '';\n\n /**\n * Language code\n */\n @property()\n lc = '';\n\n /**\n * Sets the state that the API call for embedding the video for the given video ID is in progress.\n *\n * @param videoId The video ID.\n * @param request The promise of the API call for embedding the video of the given video ID that is in progress.\n * @private\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n _setRequestEmbedVideoInProgress(videoId: string, request: Promise<any>) {\n const { _requestsEmbedVideo: oldRequestsEmbedVideo } = this;\n this._requestsEmbedVideo = {\n ...oldRequestsEmbedVideo,\n [videoId]: request,\n };\n }\n\n /**\n * Set the state that the API call for embedding the video for the given video ID is failed.\n *\n * @param videoId The video ID.\n * @param error An error from the API call for embedding the video of the given video ID.\n * @private\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n _setErrorRequestEmbedVideo(videoId: string, error: Error) {\n this._setRequestEmbedVideoInProgress(videoId, Promise.reject(error));\n }\n\n /**\n * Sets the given embedded Kaltura player element (that has APIs) for the given video ID.\n *\n * @param videoId The video ID.\n * @param kalturaPlayer The embedded Kaltura player element (that has APIs).\n * @private\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n _setEmbeddedVideo(videoId: string, kalturaPlayer: any) {\n this._setRequestEmbedVideoInProgress(\n videoId,\n Promise.resolve(kalturaPlayer)\n );\n const { embeddedVideos: oldEmbeddedVideos } = this;\n this.embeddedVideos = {\n ...oldEmbeddedVideos,\n [videoId]: kalturaPlayer,\n };\n }\n\n _setAutoplayPreference(preference: boolean) {\n const updatedValue = preference ? '1' : '0';\n localStorage.setItem(`${this.prefersAutoplayStorageKey}`, updatedValue);\n }\n\n _getAutoplayPreference() {\n const storedValue = localStorage.getItem(\n `${this.prefersAutoplayStorageKey}`\n );\n\n if (storedValue === null) {\n return !window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n } else {\n return Boolean(parseInt(storedValue, 10));\n }\n }\n\n _getPlayerOptions() {\n const { backgroundMode, intersectionMode, autoPlay, muted } =\n this as unknown as C4DVideoPlayerComposite;\n /**\n * The overwritten media title.\n *\n * Quick and dirty turn around as C4DVideoPlayerComposite uses caption\n * and C4DLightboxVideoPlayer uses customVideoName and none are\n * part of the same type\n *\n * <c4d-video-player-container-v7 customVideoName=\"overwritten media title here\">...\n *\n */\n\n let mediaTitle: string;\n\n if (this.lc.toLowerCase() === 'en') {\n mediaTitle = this?.['customVideoName'] || this?.['caption'];\n } else {\n mediaTitle = ' ';\n }\n\n let playerOptions: any = {};\n const autoplayPreference = this._getAutoplayPreference();\n\n switch (true) {\n case autoPlay:\n playerOptions = {\n muted,\n autoPlay: autoplayPreference,\n };\n break;\n\n case backgroundMode || intersectionMode:\n playerOptions = {\n playerMode: 'background',\n loop: true,\n muted: true,\n autoPlay: autoplayPreference,\n };\n break;\n\n default:\n playerOptions = {\n muted,\n };\n break;\n }\n\n if (mediaTitle) {\n playerOptions = {\n ...playerOptions,\n mediaTitle,\n };\n }\n\n /**\n * In the video player, the player type\n * will always be video\n */\n playerOptions.playerType = 'VIDEO';\n\n return playerOptions;\n }\n\n /**\n * Sets up and sends the API call for embedding video for the given video ID.\n *\n * @param videoId The video ID.\n * @private\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n async _embedVideoImpl(videoId: string) {\n const doc = Object.prototype.hasOwnProperty.call(this, 'getRootNode')\n ? (this.getRootNode() as Document | ShadowRoot)\n : this.ownerDocument;\n // Given Kaltura replaces the `<div>` here with `<iframe>` with the video player,\n // rendering this `<div>` in `renderLightDOM()` will cause the video player being clobbered\n const playerId = Math.random().toString(36).slice(2);\n const div = document.createElement('div');\n div.id = playerId;\n div.className = `${c4dPrefix}--video-player__video`;\n const { _videoPlayer: videoPlayer } = this;\n if (!videoPlayer) {\n throw new TypeError(\n 'Cannot find the video player component to put the video content into.'\n );\n }\n videoPlayer.appendChild(div);\n\n const embedVideoHandle = await KalturaPlayerAPI.embedMedia(\n videoId,\n playerId,\n this._getPlayerOptions()\n );\n const { width, height } = await KalturaPlayerAPI.api(videoId);\n videoPlayer.style.setProperty('--native-file-width', `${width}px`);\n videoPlayer.style.setProperty('--native-file-height', `${height}px`);\n videoPlayer.style.setProperty(\n '--native-file-aspect-ratio',\n `${width} / ${height}`\n );\n\n doc!.getElementById(playerId)!.dataset.videoId = videoId;\n const videoEmbed = doc!.getElementById(playerId)?.firstElementChild;\n if (videoEmbed) {\n (videoEmbed as HTMLElement).focus();\n }\n return embedVideoHandle;\n }\n\n /**\n * Sends the API call for embedding video for the given video ID, and tracks the progress and the error of the REST call.\n *\n * @param videoId The video ID.\n * @internal\n */\n _embedMedia = async (videoId: string) => {\n const { _requestsEmbedVideo: requestsEmbedVideo } = this;\n const requestEmbedVideo = requestsEmbedVideo[videoId];\n\n if (requestEmbedVideo) {\n return requestEmbedVideo;\n }\n\n const promiseEmbedVideo = this._embedVideoImpl(videoId);\n\n this._setRequestEmbedVideoInProgress(videoId, promiseEmbedVideo);\n try {\n this._setEmbeddedVideo(videoId, await promiseEmbedVideo);\n } catch (error) {\n this._setErrorRequestEmbedVideo(videoId, error as Error);\n }\n return promiseEmbedVideo;\n };\n\n /**\n * Calls the data-* attribute transpose function to target `c4d-video-player`'s button element.\n */\n async firstUpdated() {\n window.requestAnimationFrame(() => {\n const button = this.querySelector(\n 'c4d-video-player-v7'\n )?.shadowRoot?.querySelector('button');\n if (!this.getAttribute('href') && this.getAttribute('video-id')) {\n this.setAttribute(\n 'href',\n `https://mediacenter.ibm.com/id/${this.getAttribute('video-id')}`\n );\n }\n this.transposeAttributes(button, ['href']);\n });\n\n //get LC\n const { lc } = await LocaleAPI.getLocale();\n this.lc = lc;\n }\n\n prefersAutoplayStorageKey = `${c4dPrefix}-background-video-prefers-autoplay`;\n }\n\n return C4DVideoPlayerContainerMixinImpl;\n};\n\n/**\n * Container component for video player.\n *\n * @element c4d-video-player-container-v7\n */\n@customElement(`${c4dPrefix}-video-player-container-v7`)\nclass C4DVideoPlayerContainer extends ConnectMixin<\n VideoPlayerContainerState,\n MediaPlayerAPIActions,\n VideoPlayerContainerStateProps,\n ActionCreatorsMapObject<VideoPlayerActions>\n>(\n store as Store<VideoPlayerContainerState, MediaPlayerAPIActions>,\n mapStateToProps,\n mapDispatchToProps\n)(C4DVideoPlayerContainerMixin(C4DVideoPlayerComposite)) {}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DVideoPlayerContainer;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"video-player-container.js","names":["bindActionCreators","property","KalturaPlayerAPI","settings","store","loadMediaData","ConnectMixin","StableSelectorMixin","C4DVideoPlayerComposite","carbonElement","customElement","LocaleAPI","stablePrefix","c4dPrefix","mapStateToProps","state","kalturaPlayerAPI","mediaData","mapDispatchToProps","dispatch","_loadVideoData","C4DVideoPlayerContainerMixin","Base","C4DVideoPlayerContainerMixinImpl","_decorate","_initialize","_StableSelectorMixin","constructor","args","F","d","kind","key","value","decorators","type","String","attribute","_setRequestEmbedVideoInProgress","videoId","request","_requestsEmbedVideo","oldRequestsEmbedVideo","_objectSpread","_setErrorRequestEmbedVideo","error","Promise","reject","_setEmbeddedVideo","kalturaPlayer","resolve","embeddedVideos","oldEmbeddedVideos","_setAutoplayPreference","preference","updatedValue","localStorage","setItem","prefersAutoplayStorageKey","_getAutoplayPreference","storedValue","getItem","window","matchMedia","matches","Boolean","parseInt","_getPlayerOptions","backgroundMode","intersectionMode","autoPlay","muted","mediaTitle","lc","toLowerCase","playerOptions","autoplayPreference","playerMode","loop","playerType","_embedVideoImpl","_getElementById","doc","Object","prototype","hasOwnProperty","call","getRootNode","ownerDocument","playerId","Math","random","toString","slice","div","document","createElement","id","className","_videoPlayer","videoPlayer","TypeError","appendChild","embedVideoHandle","embedMedia","width","height","api","style","setProperty","getElementById","dataset","videoEmbed","firstElementChild","focus","preventScroll","requestsEmbedVideo","requestEmbedVideo","promiseEmbedVideo","firstUpdated","requestAnimationFrame","_this$querySelector","button","querySelector","shadowRoot","getAttribute","setAttribute","transposeAttributes","getLocale","C4DVideoPlayerContainer","_initialize2","_ConnectMixin"],"sources":["components/video-player-v7/video-player-container.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2025\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n ActionCreatorsMapObject,\n Dispatch,\n Store,\n bindActionCreators,\n} from 'redux';\nimport {} from 'lit';\nimport { property } from 'lit/decorators.js';\nimport KalturaPlayerAPI from '@carbon/ibmdotcom-services/es/services/KalturaPlayerV7/KalturaPlayer.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport store from '../../internal/vendor/@carbon/ibmdotcom-services-store/store.js';\nimport {\n MediaData,\n MediaPlayerAPIState,\n} from '../../internal/vendor/@carbon/ibmdotcom-services-store/types/kalturaPlayerAPIv7';\nimport { loadMediaData } from '../../internal/vendor/@carbon/ibmdotcom-services-store/actions/kalturaPlayerAPIv7.js';\nimport { MediaPlayerAPIActions } from '../../internal/vendor/@carbon/ibmdotcom-services-store/actions/kalturaPlayerAPIv7';\nimport { Constructor } from '../../globals/defs';\nimport ConnectMixin from '../../globals/mixins/connect';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport C4DVideoPlayerComposite from './video-player-composite';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\nimport { LocaleAPI } from '@carbon/ibmdotcom-services/es/services/Locale/index';\n\nconst { stablePrefix: c4dPrefix } = settings;\n\n/**\n * The Redux state used for `<c4d-video-player-container-v7>`.\n */\nexport interface VideoPlayerContainerState {\n /**\n * The Redux state for `KalturaPlayerAPI`.\n */\n kalturaPlayerAPI?: MediaPlayerAPIState;\n}\n\n/**\n * The properties for `<c4d-video-player-container-v7>` from Redux state.\n */\nexport interface VideoPlayerContainerStateProps {\n /**\n * The video data, keyed by the video ID.\n */\n mediaData?: { [videoId: string]: MediaData };\n}\n\nexport type VideoPlayerActions = ReturnType<typeof loadMediaData>;\n\n/**\n * @param state The Redux state for video player.\n * @returns The converted version of the given state, tailored for `<c4d-video-player-container-v7>`.\n */\nexport function mapStateToProps(\n state: VideoPlayerContainerState\n): VideoPlayerContainerStateProps {\n const { kalturaPlayerAPI } = state;\n const { mediaData } = kalturaPlayerAPI ?? {};\n return !mediaData ? {} : { mediaData };\n}\n\n/**\n * @param dispatch The Redux `dispatch()` API.\n * @returns The methods in `<c4d-video-player-container-v7>` to dispatch Redux actions.\n */\nexport function mapDispatchToProps(dispatch: Dispatch<MediaPlayerAPIActions>) {\n return bindActionCreators<\n VideoPlayerActions,\n ActionCreatorsMapObject<VideoPlayerActions>\n >(\n {\n _loadVideoData: loadMediaData,\n },\n dispatch as Dispatch // TS definition of `bindActionCreators()` seems to have no templated `Dispatch`\n );\n}\n\n/**\n * @param Base The base class.\n * @returns A mix-in that implements video embedding API calls.\n */\nexport const C4DVideoPlayerContainerMixin = <\n T extends Constructor<HTMLElement>\n>(\n Base: T\n) => {\n /**\n * A mix-in class that sets up and cleans up event listeners defined by `@HostListener` decorator.\n */\n abstract class C4DVideoPlayerContainerMixinImpl extends StableSelectorMixin(\n Base\n ) {\n /**\n * The video player.\n */\n abstract _videoPlayer?: HTMLElement;\n\n /**\n * The embedded Kaltura player element (that has APIs), keyed by the video ID.\n */\n abstract embeddedVideos?: { [videoId: string]: any };\n\n /**\n * The request for the embedded Kaltura player element (that has APIs), keyed by the video ID.\n *\n * @protected\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n _requestsEmbedVideo: { [videoId: string]: Promise<any> } = {};\n\n /**\n * Custom video name\n */\n @property({ type: String, attribute: 'customvideoname' })\n customVideoName = '';\n\n /**\n * Language code\n */\n @property()\n lc = '';\n\n /**\n * Sets the state that the API call for embedding the video for the given video ID is in progress.\n *\n * @param videoId The video ID.\n * @param request The promise of the API call for embedding the video of the given video ID that is in progress.\n * @private\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n _setRequestEmbedVideoInProgress(videoId: string, request: Promise<any>) {\n const { _requestsEmbedVideo: oldRequestsEmbedVideo } = this;\n this._requestsEmbedVideo = {\n ...oldRequestsEmbedVideo,\n [videoId]: request,\n };\n }\n\n /**\n * Set the state that the API call for embedding the video for the given video ID is failed.\n *\n * @param videoId The video ID.\n * @param error An error from the API call for embedding the video of the given video ID.\n * @private\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n _setErrorRequestEmbedVideo(videoId: string, error: Error) {\n this._setRequestEmbedVideoInProgress(videoId, Promise.reject(error));\n }\n\n /**\n * Sets the given embedded Kaltura player element (that has APIs) for the given video ID.\n *\n * @param videoId The video ID.\n * @param kalturaPlayer The embedded Kaltura player element (that has APIs).\n * @private\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n _setEmbeddedVideo(videoId: string, kalturaPlayer: any) {\n this._setRequestEmbedVideoInProgress(\n videoId,\n Promise.resolve(kalturaPlayer)\n );\n const { embeddedVideos: oldEmbeddedVideos } = this;\n this.embeddedVideos = {\n ...oldEmbeddedVideos,\n [videoId]: kalturaPlayer,\n };\n }\n\n _setAutoplayPreference(preference: boolean) {\n const updatedValue = preference ? '1' : '0';\n localStorage.setItem(`${this.prefersAutoplayStorageKey}`, updatedValue);\n }\n\n _getAutoplayPreference() {\n const storedValue = localStorage.getItem(\n `${this.prefersAutoplayStorageKey}`\n );\n\n if (storedValue === null) {\n return !window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n } else {\n return Boolean(parseInt(storedValue, 10));\n }\n }\n\n _getPlayerOptions() {\n const { backgroundMode, intersectionMode, autoPlay, muted } =\n this as unknown as C4DVideoPlayerComposite;\n /**\n * The overwritten media title.\n *\n * Quick and dirty turn around as C4DVideoPlayerComposite uses caption\n * and C4DLightboxVideoPlayer uses customVideoName and none are\n * part of the same type\n *\n * <c4d-video-player-container-v7 customVideoName=\"overwritten media title here\">...\n *\n */\n\n let mediaTitle: string;\n\n if (this.lc.toLowerCase() === 'en') {\n mediaTitle = this?.['customVideoName'] || this?.['caption'];\n } else {\n mediaTitle = ' ';\n }\n\n let playerOptions: any = {};\n const autoplayPreference = this._getAutoplayPreference();\n\n switch (true) {\n case autoPlay:\n playerOptions = {\n muted,\n autoPlay: autoplayPreference,\n };\n break;\n\n case backgroundMode || intersectionMode:\n playerOptions = {\n playerMode: 'background',\n loop: true,\n muted: true,\n autoPlay: autoplayPreference,\n };\n break;\n\n default:\n playerOptions = {\n muted,\n };\n break;\n }\n\n if (mediaTitle) {\n playerOptions = {\n ...playerOptions,\n mediaTitle,\n };\n }\n\n /**\n * In the video player, the player type\n * will always be video\n */\n playerOptions.playerType = 'VIDEO';\n\n return playerOptions;\n }\n\n /**\n * Sets up and sends the API call for embedding video for the given video ID.\n *\n * @param videoId The video ID.\n * @private\n */\n // Not using TypeScript `private` due to: microsoft/TypeScript#17744\n async _embedVideoImpl(videoId: string) {\n const doc = Object.prototype.hasOwnProperty.call(this, 'getRootNode')\n ? (this.getRootNode() as Document | ShadowRoot)\n : this.ownerDocument;\n // Given Kaltura replaces the `<div>` here with `<iframe>` with the video player,\n // rendering this `<div>` in `renderLightDOM()` will cause the video player being clobbered\n const playerId = Math.random().toString(36).slice(2);\n const div = document.createElement('div');\n div.id = playerId;\n div.className = `${c4dPrefix}--video-player__video`;\n const { _videoPlayer: videoPlayer } = this;\n if (!videoPlayer) {\n throw new TypeError(\n 'Cannot find the video player component to put the video content into.'\n );\n }\n videoPlayer.appendChild(div);\n\n const embedVideoHandle = await KalturaPlayerAPI.embedMedia(\n videoId,\n playerId,\n this._getPlayerOptions()\n );\n const { width, height } = await KalturaPlayerAPI.api(videoId);\n videoPlayer.style.setProperty('--native-file-width', `${width}px`);\n videoPlayer.style.setProperty('--native-file-height', `${height}px`);\n videoPlayer.style.setProperty(\n '--native-file-aspect-ratio',\n `${width} / ${height}`\n );\n\n doc!.getElementById(playerId)!.dataset.videoId = videoId;\n const videoEmbed = doc!.getElementById(playerId)?.firstElementChild;\n if (videoEmbed) {\n (videoEmbed as HTMLElement).focus({ preventScroll: true });\n }\n return embedVideoHandle;\n }\n\n /**\n * Sends the API call for embedding video for the given video ID, and tracks the progress and the error of the REST call.\n *\n * @param videoId The video ID.\n * @internal\n */\n _embedMedia = async (videoId: string) => {\n const { _requestsEmbedVideo: requestsEmbedVideo } = this;\n const requestEmbedVideo = requestsEmbedVideo[videoId];\n\n if (requestEmbedVideo) {\n return requestEmbedVideo;\n }\n\n const promiseEmbedVideo = this._embedVideoImpl(videoId);\n\n this._setRequestEmbedVideoInProgress(videoId, promiseEmbedVideo);\n try {\n this._setEmbeddedVideo(videoId, await promiseEmbedVideo);\n } catch (error) {\n this._setErrorRequestEmbedVideo(videoId, error as Error);\n }\n return promiseEmbedVideo;\n };\n\n /**\n * Calls the data-* attribute transpose function to target `c4d-video-player`'s button element.\n */\n async firstUpdated() {\n window.requestAnimationFrame(() => {\n const button = this.querySelector(\n 'c4d-video-player-v7'\n )?.shadowRoot?.querySelector('button');\n if (!this.getAttribute('href') && this.getAttribute('video-id')) {\n this.setAttribute(\n 'href',\n `https://mediacenter.ibm.com/id/${this.getAttribute('video-id')}`\n );\n }\n this.transposeAttributes(button, ['href']);\n });\n\n //get LC\n const { lc } = await LocaleAPI.getLocale();\n this.lc = lc;\n }\n\n prefersAutoplayStorageKey = `${c4dPrefix}-background-video-prefers-autoplay`;\n }\n\n return C4DVideoPlayerContainerMixinImpl;\n};\n\n/**\n * Container component for video player.\n *\n * @element c4d-video-player-container-v7\n */\n@customElement(`${c4dPrefix}-video-player-container-v7`)\nclass C4DVideoPlayerContainer extends ConnectMixin<\n VideoPlayerContainerState,\n MediaPlayerAPIActions,\n VideoPlayerContainerStateProps,\n ActionCreatorsMapObject<VideoPlayerActions>\n>(\n store as Store<VideoPlayerContainerState, MediaPlayerAPIActions>,\n mapStateToProps,\n mapDispatchToProps\n)(C4DVideoPlayerContainerMixin(C4DVideoPlayerComposite)) {}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DVideoPlayerContainer;\n"],"mappings":"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","ignoreList":[]}
@@ -76,7 +76,7 @@ var _ibmScriptUrl = function _ibmScriptUrl() {
76
76
  */
77
77
  function _loadScript() {
78
78
  var environment = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _ibmEnvironment;
79
- _scriptLoading = true;
79
+ root._ibmKalturaScriptLoading = true;
80
80
  var script = document.createElement('script');
81
81
  script.src = _ibmScriptUrl(environment);
82
82
  script.async = true;
@@ -92,12 +92,19 @@ function _loadScript() {
92
92
  var _timeoutRetries = 50;
93
93
 
94
94
  /**
95
- * Tracks the script status
95
+ * Tracks the script loading status. Stored on `root` (window) so the value
96
+ * persists when this module is executed more than once in the same page
97
+ * (e.g. once as an async page script and again as a deferred Adobe Target
98
+ * Experience Fragment script). Without this, a second execution resets the
99
+ * flag to false and causes _loadScript() to inject loader.js a second time,
100
+ * creating a race condition that leaves embedMedia() pending indefinitely.
96
101
  *
97
- * @type {boolean} _scriptLoading to track the script loading or not
102
+ * @type {boolean}
98
103
  * @private
99
104
  */
100
- var _scriptLoading = false;
105
+ if (root._ibmKalturaScriptLoading === undefined) {
106
+ root._ibmKalturaScriptLoading = false;
107
+ }
101
108
 
102
109
  /**
103
110
  * Serializes concurrent embed calls. The IBM Mediacenter player.embed() does
@@ -126,9 +133,9 @@ function _scriptReady(resolve, reject) {
126
133
  * @param {object} root?.IBM.Mediacenter.player if exists then resolve
127
134
  */
128
135
  if (root !== null && root !== void 0 && (_root$IBM = root.IBM) !== null && _root$IBM !== void 0 && (_root$IBM = _root$IBM.Mediacenter) !== null && _root$IBM !== void 0 && _root$IBM.player) {
129
- _scriptLoading = false;
136
+ root._ibmKalturaScriptLoading = false;
130
137
  resolve();
131
- } else if (_scriptLoading) {
138
+ } else if (root._ibmKalturaScriptLoading) {
132
139
  if (attempt < _timeoutRetries) {
133
140
  setTimeout(function () {
134
141
  _scriptReady(resolve, reject, environment, attempt + 1);
@@ -81,7 +81,7 @@ var _ibmScriptUrl = function _ibmScriptUrl() {
81
81
  */
82
82
  function _loadScript() {
83
83
  var environment = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _ibmEnvironment;
84
- _scriptLoading = true;
84
+ _windowOrGlobal.default._ibmKalturaScriptLoading = true;
85
85
  var script = document.createElement('script');
86
86
  script.src = _ibmScriptUrl(environment);
87
87
  script.async = true;
@@ -97,12 +97,19 @@ function _loadScript() {
97
97
  var _timeoutRetries = 50;
98
98
 
99
99
  /**
100
- * Tracks the script status
100
+ * Tracks the script loading status. Stored on `root` (window) so the value
101
+ * persists when this module is executed more than once in the same page
102
+ * (e.g. once as an async page script and again as a deferred Adobe Target
103
+ * Experience Fragment script). Without this, a second execution resets the
104
+ * flag to false and causes _loadScript() to inject loader.js a second time,
105
+ * creating a race condition that leaves embedMedia() pending indefinitely.
101
106
  *
102
- * @type {boolean} _scriptLoading to track the script loading or not
107
+ * @type {boolean}
103
108
  * @private
104
109
  */
105
- var _scriptLoading = false;
110
+ if (_windowOrGlobal.default._ibmKalturaScriptLoading === undefined) {
111
+ _windowOrGlobal.default._ibmKalturaScriptLoading = false;
112
+ }
106
113
 
107
114
  /**
108
115
  * Serializes concurrent embed calls. The IBM Mediacenter player.embed() does
@@ -131,9 +138,9 @@ function _scriptReady(resolve, reject) {
131
138
  * @param {object} root?.IBM.Mediacenter.player if exists then resolve
132
139
  */
133
140
  if (_windowOrGlobal.default !== null && _windowOrGlobal.default !== void 0 && (_root$IBM = _windowOrGlobal.default.IBM) !== null && _root$IBM !== void 0 && (_root$IBM = _root$IBM.Mediacenter) !== null && _root$IBM !== void 0 && _root$IBM.player) {
134
- _scriptLoading = false;
141
+ _windowOrGlobal.default._ibmKalturaScriptLoading = false;
135
142
  resolve();
136
- } else if (_scriptLoading) {
143
+ } else if (_windowOrGlobal.default._ibmKalturaScriptLoading) {
137
144
  if (attempt < _timeoutRetries) {
138
145
  setTimeout(function () {
139
146
  _scriptReady(resolve, reject, environment, attempt + 1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carbon/ibmdotcom-web-components",
3
- "version": "2.54.0",
3
+ "version": "2.54.2",
4
4
  "description": "Carbon for IBM.com Web Components",
5
5
  "license": "Apache-2.0",
6
6
  "exports": {
@@ -93,9 +93,9 @@
93
93
  "cypress:verify": "cypress verify"
94
94
  },
95
95
  "dependencies": {
96
- "@carbon/ibmdotcom-services": "2.51.0",
97
- "@carbon/ibmdotcom-styles": "2.51.0",
98
- "@carbon/ibmdotcom-utilities": "2.51.0",
96
+ "@carbon/ibmdotcom-services": "2.51.1",
97
+ "@carbon/ibmdotcom-styles": "2.51.1",
98
+ "@carbon/ibmdotcom-utilities": "2.51.1",
99
99
  "@carbon/layout": "11.52.0",
100
100
  "@carbon/motion": "11.45.0",
101
101
  "@carbon/styles": "1.65.0",
@@ -133,7 +133,7 @@
133
133
  "@babel/template": "~7.28.0",
134
134
  "@babel/traverse": "~7.28.0",
135
135
  "@carbon/ibmdotcom-services-store": "1.53.7",
136
- "@carbon/icon-helpers": "10.75.0",
136
+ "@carbon/icon-helpers": "10.76.0",
137
137
  "@carbon/icons": "10.48.6",
138
138
  "@carbon/icons-react": "^11.33.0",
139
139
  "@carbon/pictograms-react": "11.67.1",
@@ -185,7 +185,7 @@
185
185
  "cypress-wait-until": "^1.7.2",
186
186
  "del": "^6.0.0",
187
187
  "doctoc": "^2.0.0",
188
- "dompurify": "3.4.4",
188
+ "dompurify": "3.4.10",
189
189
  "enzyme": "^3.11.0",
190
190
  "file-loader": "^6.2.0",
191
191
  "fs-extra": "^10.0.0",
@@ -244,5 +244,5 @@
244
244
  "web-component-analyzer": "1.2.0-next.0",
245
245
  "webpack": "^4.46.0"
246
246
  },
247
- "gitHead": "5f36a0b2445d0efe35ae46bd0c2cba2617d1a974"
247
+ "gitHead": "9f2b76f8339a12d464099441db042a85e7ef9fd7"
248
248
  }