@carbon/ibmdotcom-web-components 2.16.1 → 2.16.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 (55) hide show
  1. package/custom-elements.json +20 -0
  2. package/dist/dotcom-shell.js +5 -5
  3. package/dist/dotcom-shell.min.js +4 -4
  4. package/dist/ibmdotcom-web-components-dotcom-shell.js +5 -5
  5. package/dist/ibmdotcom-web-components-dotcom-shell.min.js +4 -4
  6. package/dist/{index-b11b8d66.js → index-c31eba2d.js} +12 -10
  7. package/dist/{index-776b5b51.js → index-f264f467.js} +7 -7
  8. package/dist/{left-nav-menu-e2770796.js → left-nav-menu-09650a4d.js} +4 -4
  9. package/dist/{left-nav-menu-fb6b2844.js → left-nav-menu-a350581d.js} +5 -5
  10. package/dist/{left-nav-menu-category-heading-bc9e2f54.js → left-nav-menu-category-heading-848b835a.js} +5 -5
  11. package/dist/{left-nav-menu-category-heading-7a036c86.js → left-nav-menu-category-heading-d28036c5.js} +4 -4
  12. package/dist/{left-nav-menu-item-bdb22314.js → left-nav-menu-item-57b2019a.js} +5 -5
  13. package/dist/{left-nav-menu-item-0481fe82.js → left-nav-menu-item-a577adc2.js} +4 -4
  14. package/dist/{left-nav-menu-section-403848ea.js → left-nav-menu-section-79f20136.js} +5 -5
  15. package/dist/{left-nav-menu-section-ffb56134.js → left-nav-menu-section-89c52fb4.js} +4 -4
  16. package/dist/{left-nav-overlay-30cd22eb.js → left-nav-overlay-4d66f4ad.js} +4 -4
  17. package/dist/{left-nav-overlay-38070a4f.js → left-nav-overlay-dca31de9.js} +5 -5
  18. package/dist/{megamenu-category-group-copy-6ecebfe0.js → megamenu-category-group-copy-3b86f004.js} +5 -5
  19. package/dist/{megamenu-category-group-copy-51dc4cc1.js → megamenu-category-group-copy-6fd7ca2f.js} +4 -4
  20. package/dist/{megamenu-category-group-84ac8e56.js → megamenu-category-group-ee1ae2b6.js} +5 -5
  21. package/dist/{megamenu-category-group-241b720d.js → megamenu-category-group-fd3a2b7a.js} +4 -4
  22. package/dist/{megamenu-category-heading-9f7b896f.js → megamenu-category-heading-72794dad.js} +5 -5
  23. package/dist/{megamenu-category-heading-3a7bbbb8.js → megamenu-category-heading-80dff2fc.js} +4 -4
  24. package/dist/{megamenu-category-link-fa99b274.js → megamenu-category-link-1c050d50.js} +5 -5
  25. package/dist/{megamenu-category-link-5801d16b.js → megamenu-category-link-839d6f52.js} +8 -8
  26. package/dist/{megamenu-category-link-group-2776f6bc.js → megamenu-category-link-group-7077d29f.js} +5 -5
  27. package/dist/{megamenu-category-link-group-c8fede86.js → megamenu-category-link-group-93dcceed.js} +4 -4
  28. package/dist/{megamenu-left-navigation-eccd672d.js → megamenu-left-navigation-34280704.js} +5 -5
  29. package/dist/{megamenu-left-navigation-e2feec37.js → megamenu-left-navigation-76f28d35.js} +4 -4
  30. package/dist/{megamenu-overlay-caed4511.js → megamenu-overlay-3e0f7727.js} +5 -5
  31. package/dist/{megamenu-overlay-a5314e74.js → megamenu-overlay-61b067b4.js} +4 -4
  32. package/dist/{megamenu-tab-df9b43dd.js → megamenu-tab-03b420bb.js} +4 -4
  33. package/dist/{megamenu-tab-fffc3892.js → megamenu-tab-a4943602.js} +5 -5
  34. package/es/components/back-to-top/__stories__/back-to-top.stories.css.js +1 -1
  35. package/es/components/card/card.d.ts +1 -1
  36. package/es/components/card/card.js +4 -2
  37. package/es/components/card/card.js.map +1 -1
  38. package/es/components/card-group/card-group.css.js +1 -1
  39. package/es/components/content-block/content-block.css.js +1 -1
  40. package/es/components/cta/button-cta.d.ts +4 -0
  41. package/es/components/cta/button-cta.js +10 -0
  42. package/es/components/cta/button-cta.js.map +1 -1
  43. package/es/components/cta/cta.d.ts +1 -0
  44. package/es/components/cta/cta.js +11 -2
  45. package/es/components/cta/cta.js.map +1 -1
  46. package/es/components/cta/video-cta-composite.d.ts +7 -1
  47. package/es/components/cta/video-cta-composite.js +0 -5
  48. package/es/components/cta/video-cta-composite.js.map +1 -1
  49. package/es/components/cta-block/cta-block.css.js +1 -1
  50. package/es/components/table-of-contents/table-of-contents-cdn.css.js +1 -1
  51. package/es/components/table-of-contents/table-of-contents.css.js +1 -1
  52. package/es/internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js +2 -2
  53. package/lib/internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js +2 -2
  54. package/package.json +6 -6
  55. package/scss/components/cta-block/cta-block.scss +1 -0
@@ -716,6 +716,10 @@ declare class C4DButtonCTA extends C4DButtonCTA_base {
716
716
  * The CTA type.
717
717
  */
718
718
  ctaType: CTA_TYPE;
719
+ /**
720
+ * Link `href`.
721
+ */
722
+ href?: string;
719
723
  /**
720
724
  * The formatter for the video caption, composed with the video name and the video duration.
721
725
  * Should be changed upon the locale the UI is rendered with.
@@ -104,6 +104,13 @@ let C4DButtonCTA = _decorate([customElement(`${c4dPrefix}-button-cta`)], functio
104
104
  value() {
105
105
  return CTA_TYPE.REGULAR;
106
106
  }
107
+ }, {
108
+ kind: "field",
109
+ decorators: [property({
110
+ attribute: 'href'
111
+ })],
112
+ key: "href",
113
+ value: void 0
107
114
  }, {
108
115
  kind: "field",
109
116
  decorators: [property({
@@ -149,6 +156,9 @@ let C4DButtonCTA = _decorate([customElement(`${c4dPrefix}-button-cta`)], functio
149
156
  static: true,
150
157
  key: "stableSelector",
151
158
  value:
159
+ /**
160
+ * Link `href`.
161
+ */
152
162
  /**
153
163
  * The formatter for the video caption, composed with the video name and the video duration.
154
164
  * Should be changed upon the locale the UI is rendered with.
@@ -1 +1 @@
1
- {"version":3,"file":"button-cta.js","names":["html","property","query","settings","formatVideoCaption","formatVideoDuration","C4DButtonGroupItem","CTAMixin","VideoCTAMixin","CTA_TYPE","styles","carbonElement","customElement","stablePrefix","c4dPrefix","C4DButtonCTA","_decorate","_initialize","_VideoCTAMixin","constructor","args","F","d","kind","decorators","key","value","_renderContent","ctaType","_hasMainContent","hasMainContent","VIDEO","_t","_","_handleSlotChange","videoDuration","videoName","formatVideoCaptionInEffect","formatVideoDurationInEffect","caption","undefined","duration","name","_t2","_renderInner","_t3","_renderIcon","reflect","attribute","REGULAR","type","Number","static","console","warn"],"sources":["components/cta/button-cta.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\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// @ts-nocheck\n\nimport { html } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport {\n formatVideoCaption,\n formatVideoDuration,\n} from '@carbon/ibmdotcom-utilities/es/utilities/formatVideoCaption/formatVideoCaption.js';\nimport C4DButtonGroupItem from '../button-group/button-group-item';\nimport CTAMixin from '../../component-mixins/cta/cta-v1';\nimport VideoCTAMixin from '../../component-mixins/cta/video';\nimport { CTA_TYPE } from './defs';\nimport styles from './cta.scss';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\n\nexport { CTA_TYPE };\n\nconst { stablePrefix: c4dPrefix } = settings;\n\n/**\n * Button CTA.\n *\n * @element c4d-button-cta\n */\n@customElement(`${c4dPrefix}-button-cta`)\nclass C4DButtonCTA extends VideoCTAMixin(CTAMixin(C4DButtonGroupItem)) {\n /**\n * The button that may work as a link.\n *\n * @private\n */\n @query('[part=\"button\"]')\n _linkNode!: HTMLElement;\n\n /**\n * @returns The main content.\n */\n protected _renderContent() {\n const { ctaType, _hasMainContent: hasMainContent } = this;\n if (ctaType !== CTA_TYPE.VIDEO) {\n return html` <slot @slotchange=\"${this._handleSlotChange}\"></slot> `;\n }\n const {\n videoDuration,\n videoName,\n formatVideoCaption: formatVideoCaptionInEffect,\n formatVideoDuration: formatVideoDurationInEffect,\n } = this;\n const caption = hasMainContent\n ? undefined\n : formatVideoCaptionInEffect({\n duration: formatVideoDurationInEffect({\n duration: !videoDuration ? videoDuration : videoDuration * 1000,\n }),\n name: videoName,\n });\n return html`\n <slot @slotchange=\"${this._handleSlotChange}\"></slot>${caption}\n `;\n }\n\n protected _renderInner() {\n return html` ${this._renderContent()}${this._renderIcon()} `;\n }\n\n /**\n * The CTA type.\n */\n @property({ reflect: true, attribute: 'cta-type' })\n ctaType = CTA_TYPE.REGULAR;\n\n /**\n * The formatter for the video caption, composed with the video name and the video duration.\n * Should be changed upon the locale the UI is rendered with.\n */\n @property({ attribute: false })\n formatVideoCaption = formatVideoCaption;\n\n /**\n * The formatter for the video duration.\n * Should be changed upon the locale the UI is rendered with.\n */\n @property({ attribute: false })\n formatVideoDuration = formatVideoDuration;\n\n /**\n * The video duration.\n */\n @property({ type: Number, attribute: 'video-duration' })\n videoDuration?: number;\n\n /**\n * The video name.\n */\n @property({ attribute: 'video-name' })\n videoName?: string;\n\n /**\n * The video description.\n */\n @property({ attribute: 'video-description' })\n videoDescription?: string;\n\n /**\n * The video thumbnail URL.\n * Button CTA does not support video thumbnail, and this property should never be set.\n */\n videoThumbnailUrl?: never;\n\n static get stableSelector() {\n return `${c4dPrefix}--button-cta`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nconsole.warn(\n `The c4d-buton-cta component has been deprecated. All its features have been absorbed into\n the base c4d-button component. See migration guide for more information.`\n);\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DButtonCTA;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"button-cta.js","names":["html","property","query","settings","formatVideoCaption","formatVideoDuration","C4DButtonGroupItem","CTAMixin","VideoCTAMixin","CTA_TYPE","styles","carbonElement","customElement","stablePrefix","c4dPrefix","C4DButtonCTA","_decorate","_initialize","_VideoCTAMixin","constructor","args","F","d","kind","decorators","key","value","_renderContent","ctaType","_hasMainContent","hasMainContent","VIDEO","_t","_","_handleSlotChange","videoDuration","videoName","formatVideoCaptionInEffect","formatVideoDurationInEffect","caption","undefined","duration","name","_t2","_renderInner","_t3","_renderIcon","reflect","attribute","REGULAR","type","Number","static","console","warn"],"sources":["components/cta/button-cta.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\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// @ts-nocheck\n\nimport { html } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport {\n formatVideoCaption,\n formatVideoDuration,\n} from '@carbon/ibmdotcom-utilities/es/utilities/formatVideoCaption/formatVideoCaption.js';\nimport C4DButtonGroupItem from '../button-group/button-group-item';\nimport CTAMixin from '../../component-mixins/cta/cta-v1';\nimport VideoCTAMixin from '../../component-mixins/cta/video';\nimport { CTA_TYPE } from './defs';\nimport styles from './cta.scss';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\n\nexport { CTA_TYPE };\n\nconst { stablePrefix: c4dPrefix } = settings;\n\n/**\n * Button CTA.\n *\n * @element c4d-button-cta\n */\n@customElement(`${c4dPrefix}-button-cta`)\nclass C4DButtonCTA extends VideoCTAMixin(CTAMixin(C4DButtonGroupItem)) {\n /**\n * The button that may work as a link.\n *\n * @private\n */\n @query('[part=\"button\"]')\n _linkNode!: HTMLElement;\n\n /**\n * @returns The main content.\n */\n protected _renderContent() {\n const { ctaType, _hasMainContent: hasMainContent } = this;\n if (ctaType !== CTA_TYPE.VIDEO) {\n return html` <slot @slotchange=\"${this._handleSlotChange}\"></slot> `;\n }\n const {\n videoDuration,\n videoName,\n formatVideoCaption: formatVideoCaptionInEffect,\n formatVideoDuration: formatVideoDurationInEffect,\n } = this;\n const caption = hasMainContent\n ? undefined\n : formatVideoCaptionInEffect({\n duration: formatVideoDurationInEffect({\n duration: !videoDuration ? videoDuration : videoDuration * 1000,\n }),\n name: videoName,\n });\n return html`\n <slot @slotchange=\"${this._handleSlotChange}\"></slot>${caption}\n `;\n }\n\n protected _renderInner() {\n return html` ${this._renderContent()}${this._renderIcon()} `;\n }\n\n /**\n * The CTA type.\n */\n @property({ reflect: true, attribute: 'cta-type' })\n ctaType = CTA_TYPE.REGULAR;\n\n /**\n * Link `href`.\n */\n @property({ attribute: 'href' })\n href?: string;\n\n /**\n * The formatter for the video caption, composed with the video name and the video duration.\n * Should be changed upon the locale the UI is rendered with.\n */\n @property({ attribute: false })\n formatVideoCaption = formatVideoCaption;\n\n /**\n * The formatter for the video duration.\n * Should be changed upon the locale the UI is rendered with.\n */\n @property({ attribute: false })\n formatVideoDuration = formatVideoDuration;\n\n /**\n * The video duration.\n */\n @property({ type: Number, attribute: 'video-duration' })\n videoDuration?: number;\n\n /**\n * The video name.\n */\n @property({ attribute: 'video-name' })\n videoName?: string;\n\n /**\n * The video description.\n */\n @property({ attribute: 'video-description' })\n videoDescription?: string;\n\n /**\n * The video thumbnail URL.\n * Button CTA does not support video thumbnail, and this property should never be set.\n */\n videoThumbnailUrl?: never;\n\n static get stableSelector() {\n return `${c4dPrefix}--button-cta`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nconsole.warn(\n `The c4d-buton-cta component has been deprecated. All its features have been absorbed into\n the base c4d-button component. See migration guide for more information.`\n);\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DButtonCTA;\n"],"mappings":"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","ignoreList":[]}
@@ -706,6 +706,7 @@ declare class C4DCTAHead extends C4DCTAHead_base {
706
706
  videoDuration: any;
707
707
  videoThumbnailUrl: any;
708
708
  thumbnail: any;
709
+ href?: string;
709
710
  updated(): void;
710
711
  /**
711
712
  * Handles card with video heading and applies the set same height function.
@@ -24,6 +24,7 @@ import styles from "././cta.css.js";
24
24
  import StableSelectorMixin from "../../globals/mixins/stable-selector.js";
25
25
  import { formatVideoCaption, formatVideoDuration } from '@carbon/ibmdotcom-utilities/es/utilities/formatVideoCaption/formatVideoCaption.js';
26
26
  import { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';
27
+ import { CTA_TYPE } from "./defs.js";
27
28
  const {
28
29
  stablePrefix: c4dPrefix
29
30
  } = settings;
@@ -97,6 +98,13 @@ let C4DCTAHead = _decorate([customElement(`${c4dPrefix}-cta`)], function (_initi
97
98
  })],
98
99
  key: "thumbnail",
99
100
  value: void 0
101
+ }, {
102
+ kind: "field",
103
+ decorators: [property({
104
+ attribute: 'href'
105
+ })],
106
+ key: "href",
107
+ value: void 0
100
108
  }, {
101
109
  kind: "method",
102
110
  key: "updated",
@@ -128,13 +136,14 @@ let C4DCTAHead = _decorate([customElement(`${c4dPrefix}-cta`)], function (_initi
128
136
  if (event) {
129
137
  const {
130
138
  videoDuration,
131
- videoName
139
+ videoName,
140
+ videoId
132
141
  } = event.detail;
133
142
  const formattedVideoDuration = formatVideoDuration({
134
143
  duration: !videoDuration ? videoDuration : videoDuration * 1000
135
144
  });
136
145
  this.videoDuration ? null : this.videoDuration = formattedVideoDuration;
137
- if (this.ctaStyle !== 'card' && this.ctaStyle !== 'feature') {
146
+ if (this.ctaStyle !== 'card' && this.ctaStyle !== 'feature' && this.ctaType === CTA_TYPE.VIDEO && this.href === videoId) {
138
147
  const heading = formatVideoCaption({
139
148
  duration: formattedVideoDuration,
140
149
  name: videoName
@@ -1 +1 @@
1
- {"version":3,"file":"cta.js","names":["LitElement","html","property","settings","HostListener","HostListenerMixin","styles","StableSelectorMixin","formatVideoCaption","formatVideoDuration","carbonElement","customElement","stablePrefix","c4dPrefix","C4DCTAHead","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","attribute","key","value","reflect","updated","Array","from","attributes","forEach","e","_this$shadowRoot","shadowRoot","children","setAttribute","name","component","_this$shadowRoot2","append","event","videoDuration","videoName","detail","formattedVideoDuration","duration","ctaStyle","heading","ctaComponent","querySelector","spanElement","textContent","_this$shadowRoot3","footer","_this$shadowRoot4","button","getAttribute","render","_t","_","_t2","_t3","_t4","_t5","_t6","static","console","warn"],"sources":["components/cta/cta.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\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 { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport styles from './cta.scss';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\n\nimport {\n formatVideoCaption,\n formatVideoDuration,\n} from '@carbon/ibmdotcom-utilities/es/utilities/formatVideoCaption/formatVideoCaption.js';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\n\nconst { stablePrefix: c4dPrefix } = settings;\n\n/**\n * CTA component\n *\n * @element c4d-cta\n * @csspart cta - Targets all styles. Usage: `c4d-cta::part(cta)`\n * @csspart cta--feature - Tagets the Feature style. Usage: `c4d-cta::part(cta--feature)`\n * @csspart cta--card - Tagets the Card style. Usage: `c4d-cta::part(cta--card)`\n * @csspart cta--card-link - Tagets the Card-link style. Usage: `c4d-cta::part(cta--card-link)`\n * @csspart cta--text - Tagets the Text style. Usage: `c4d-cta::part(cta--text)`\n * @csspart cta--button - Tagets the buttton style. Usage: `c4d-cta::part(cta--button)`\n */\n@customElement(`${c4dPrefix}-cta`)\nclass C4DCTAHead extends HostListenerMixin(StableSelectorMixin(LitElement)) {\n @property({ attribute: 'cta-style' })\n ctaStyle = 'text';\n\n @property({ attribute: 'cta-type' })\n ctaType;\n\n @property({ attribute: 'custom-video-title', reflect: true })\n customVideoTitle;\n\n @property({ attribute: 'footer-text' })\n @property({ attribute: 'video-duration', reflect: true })\n videoDuration;\n\n @property({ attribute: 'video-thumbnail-url', reflect: true })\n videoThumbnailUrl;\n\n @property({ reflect: true })\n thumbnail;\n\n updated() {\n // transpose attributes from parent cta handler to desired cta style\n Array.from(this.attributes).forEach((e) => {\n this.shadowRoot?.children[0]!.setAttribute(\n (e as any).name,\n (e as any).value\n );\n });\n\n // ensure children components are used within the desired cta style\n Array.from(this.children).forEach((component) => {\n this.shadowRoot?.children[0].append(component);\n });\n }\n\n /**\n * Handles card with video heading and applies the set same height function.\n *\n * @param event The event.\n */\n @HostListener(`document:eventRequestAdditionalVideoData`)\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleVideoTitleUpdate = async (event: FocusEvent) => {\n if (event) {\n const { videoDuration, videoName } = event.detail as any;\n const formattedVideoDuration = formatVideoDuration({\n duration: !videoDuration ? videoDuration : videoDuration * 1000,\n });\n this.videoDuration ? null : (this.videoDuration = formattedVideoDuration);\n\n if (this.ctaStyle !== 'card' && this.ctaStyle !== 'feature') {\n const heading = formatVideoCaption({\n duration: formattedVideoDuration,\n name: videoName,\n });\n\n const ctaComponent = this.shadowRoot!.querySelector(\n `c4d-${this.ctaStyle}-cta`\n );\n const spanElement = ctaComponent?.shadowRoot!.querySelector('span');\n\n spanElement\n ? (spanElement.textContent = heading)\n : (ctaComponent!.textContent = heading);\n } else {\n const footer = this.shadowRoot\n ?.querySelector(`${c4dPrefix}-${this.ctaStyle}-cta`)\n ?.querySelector(`${c4dPrefix}-${this.ctaStyle}-cta-footer`);\n footer?.textContent ? null : (footer!.textContent = this.videoDuration);\n }\n }\n };\n\n /**\n * Handles card with video heading and applies the set same height function.\n *\n * @param event The event.\n */\n @HostListener(`document:eventUpdateButtonGroup`)\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleButtonGroupupdate = async (event: FocusEvent) => {\n if (event) {\n const button = this.shadowRoot?.querySelector(`${c4dPrefix}-button-cta`);\n if (this.ctaStyle === 'button' && button && this.getAttribute('kind')) {\n button.setAttribute('kind', this.getAttribute('kind')!);\n }\n }\n };\n\n render() {\n return html`\n ${this.ctaStyle === 'feature'\n ? html` <c4d-feature-cta part=\"cta cta--feature\"></c4d-feature-cta> `\n : ``}\n ${this.ctaStyle === 'card'\n ? html`\n <c4d-card-cta part=\"cta cta--card\"><slot></slot></c4d-card-cta>\n `\n : ``}\n ${this.ctaStyle === 'card-link'\n ? html`\n <c4d-card-link-cta part=\"cta cta--card-link\"\n ><slot></slot\n ></c4d-card-link-cta>\n `\n : ``}\n ${this.ctaStyle === 'text'\n ? html`\n <c4d-text-cta part=\"cta cta--text\"><slot></slot></c4d-text-cta>\n `\n : ``}\n ${this.ctaStyle === 'button'\n ? html`\n <c4d-button-cta part=\"cta cta--button\"\n ><slot></slot\n ></c4d-button-cta>\n `\n : ``}\n `;\n }\n\n /**\n * The name of the custom event fired when there is a user gesture to run the action.\n */\n static get eventRequestAdditionalVideoData() {\n return `${c4dPrefix}-cta-request-additional-video-data`;\n }\n\n /**\n * The name of the custom event fired when there is a user gesture to run the action.\n */\n static get eventUpdateButtonGroup() {\n return `${c4dPrefix}-button-group-update`;\n }\n\n static get stableSelector() {\n return `${c4dPrefix}-cta`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nconsole.warn(\n `The c4d-cta component has been deprecated in favor of the c4d-card, c4d-feature-card, c4d-link-with-icon,\n and c4d-button-group. See migration guide for more information.`\n);\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DCTAHead;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"cta.js","names":["LitElement","html","property","settings","HostListener","HostListenerMixin","styles","StableSelectorMixin","formatVideoCaption","formatVideoDuration","carbonElement","customElement","CTA_TYPE","stablePrefix","c4dPrefix","C4DCTAHead","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","attribute","key","value","reflect","updated","Array","from","attributes","forEach","e","_this$shadowRoot","shadowRoot","children","setAttribute","name","component","_this$shadowRoot2","append","event","videoDuration","videoName","videoId","detail","formattedVideoDuration","duration","ctaStyle","ctaType","VIDEO","href","heading","ctaComponent","querySelector","spanElement","textContent","_this$shadowRoot3","footer","_this$shadowRoot4","button","getAttribute","render","_t","_","_t2","_t3","_t4","_t5","_t6","static","console","warn"],"sources":["components/cta/cta.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\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 { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport styles from './cta.scss';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\n\nimport {\n formatVideoCaption,\n formatVideoDuration,\n} from '@carbon/ibmdotcom-utilities/es/utilities/formatVideoCaption/formatVideoCaption.js';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\nimport { CTA_TYPE } from './defs';\n\nconst { stablePrefix: c4dPrefix } = settings;\n\n/**\n * CTA component\n *\n * @element c4d-cta\n * @csspart cta - Targets all styles. Usage: `c4d-cta::part(cta)`\n * @csspart cta--feature - Tagets the Feature style. Usage: `c4d-cta::part(cta--feature)`\n * @csspart cta--card - Tagets the Card style. Usage: `c4d-cta::part(cta--card)`\n * @csspart cta--card-link - Tagets the Card-link style. Usage: `c4d-cta::part(cta--card-link)`\n * @csspart cta--text - Tagets the Text style. Usage: `c4d-cta::part(cta--text)`\n * @csspart cta--button - Tagets the buttton style. Usage: `c4d-cta::part(cta--button)`\n */\n@customElement(`${c4dPrefix}-cta`)\nclass C4DCTAHead extends HostListenerMixin(StableSelectorMixin(LitElement)) {\n @property({ attribute: 'cta-style' })\n ctaStyle = 'text';\n\n @property({ attribute: 'cta-type' })\n ctaType;\n\n @property({ attribute: 'custom-video-title', reflect: true })\n customVideoTitle;\n\n @property({ attribute: 'footer-text' })\n @property({ attribute: 'video-duration', reflect: true })\n videoDuration;\n\n @property({ attribute: 'video-thumbnail-url', reflect: true })\n videoThumbnailUrl;\n\n @property({ reflect: true })\n thumbnail;\n\n @property({ attribute: 'href' })\n href?: string;\n\n updated() {\n // transpose attributes from parent cta handler to desired cta style\n Array.from(this.attributes).forEach((e) => {\n this.shadowRoot?.children[0]!.setAttribute(\n (e as any).name,\n (e as any).value\n );\n });\n\n // ensure children components are used within the desired cta style\n Array.from(this.children).forEach((component) => {\n this.shadowRoot?.children[0].append(component);\n });\n }\n\n /**\n * Handles card with video heading and applies the set same height function.\n *\n * @param event The event.\n */\n @HostListener(`document:eventRequestAdditionalVideoData`)\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleVideoTitleUpdate = async (event: FocusEvent) => {\n if (event) {\n const { videoDuration, videoName, videoId } = event.detail as any;\n const formattedVideoDuration = formatVideoDuration({\n duration: !videoDuration ? videoDuration : videoDuration * 1000,\n });\n this.videoDuration ? null : (this.videoDuration = formattedVideoDuration);\n if (\n this.ctaStyle !== 'card' &&\n this.ctaStyle !== 'feature' &&\n this.ctaType === CTA_TYPE.VIDEO &&\n (this as any).href === videoId\n ) {\n const heading = formatVideoCaption({\n duration: formattedVideoDuration,\n name: videoName,\n });\n\n const ctaComponent = this.shadowRoot!.querySelector(\n `c4d-${this.ctaStyle}-cta`\n );\n const spanElement = ctaComponent?.shadowRoot!.querySelector('span');\n\n spanElement\n ? (spanElement.textContent = heading)\n : (ctaComponent!.textContent = heading);\n } else {\n const footer = this.shadowRoot\n ?.querySelector(`${c4dPrefix}-${this.ctaStyle}-cta`)\n ?.querySelector(`${c4dPrefix}-${this.ctaStyle}-cta-footer`);\n footer?.textContent ? null : (footer!.textContent = this.videoDuration);\n }\n }\n };\n\n /**\n * Handles card with video heading and applies the set same height function.\n *\n * @param event The event.\n */\n @HostListener(`document:eventUpdateButtonGroup`)\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleButtonGroupupdate = async (event: FocusEvent) => {\n if (event) {\n const button = this.shadowRoot?.querySelector(`${c4dPrefix}-button-cta`);\n if (this.ctaStyle === 'button' && button && this.getAttribute('kind')) {\n button.setAttribute('kind', this.getAttribute('kind')!);\n }\n }\n };\n\n render() {\n return html`\n ${this.ctaStyle === 'feature'\n ? html` <c4d-feature-cta part=\"cta cta--feature\"></c4d-feature-cta> `\n : ``}\n ${this.ctaStyle === 'card'\n ? html`\n <c4d-card-cta part=\"cta cta--card\"><slot></slot></c4d-card-cta>\n `\n : ``}\n ${this.ctaStyle === 'card-link'\n ? html`\n <c4d-card-link-cta part=\"cta cta--card-link\"\n ><slot></slot\n ></c4d-card-link-cta>\n `\n : ``}\n ${this.ctaStyle === 'text'\n ? html`\n <c4d-text-cta part=\"cta cta--text\"><slot></slot></c4d-text-cta>\n `\n : ``}\n ${this.ctaStyle === 'button'\n ? html`\n <c4d-button-cta part=\"cta cta--button\"\n ><slot></slot\n ></c4d-button-cta>\n `\n : ``}\n `;\n }\n\n /**\n * The name of the custom event fired when there is a user gesture to run the action.\n */\n static get eventRequestAdditionalVideoData() {\n return `${c4dPrefix}-cta-request-additional-video-data`;\n }\n\n /**\n * The name of the custom event fired when there is a user gesture to run the action.\n */\n static get eventUpdateButtonGroup() {\n return `${c4dPrefix}-button-group-update`;\n }\n\n static get stableSelector() {\n return `${c4dPrefix}-cta`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nconsole.warn(\n `The c4d-cta component has been deprecated in favor of the c4d-card, c4d-feature-card, c4d-link-with-icon,\n and c4d-button-group. See migration guide for more information.`\n);\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DCTAHead;\n"],"mappings":"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","ignoreList":[]}
@@ -443,7 +443,13 @@ declare const C4DVideoCTAComposite_base: ((abstract new (...args: any[]) => {
443
443
  removeAttributeNode(attr: Attr): Attr;
444
444
  requestFullscreen(options?: FullscreenOptions): Promise<void>;
445
445
  requestPointerLock(): void;
446
- scroll(options?: ScrollToOptions): void;
446
+ scroll(options
447
+ /**
448
+ * @returns The media viewer lightbox for `type="video"`.
449
+ */
450
+ ? /**
451
+ * @returns The media viewer lightbox for `type="video"`.
452
+ */: ScrollToOptions): void;
447
453
  scroll(x: number, y: number): void;
448
454
  scrollBy(options?: ScrollToOptions): void;
449
455
  scrollBy(x: number, y: number): void;
@@ -47,11 +47,6 @@ let C4DVideoCTAComposite = _decorate([customElement(`${c4dPrefix}-video-cta-comp
47
47
  return {
48
48
  F: C4DVideoCTAComposite,
49
49
  d: [{
50
- kind: "field",
51
- decorators: [state()],
52
- key: "_embedMedia",
53
- value: void 0
54
- }, {
55
50
  kind: "field",
56
51
  decorators: [state()],
57
52
  key: "_activeVideoId",
@@ -1 +1 @@
1
- {"version":3,"file":"video-cta-composite.js","names":["LitElement","html","property","state","on","ifDefined","HostListener","HostListenerMixin","settings","ModalRenderMixin","CTA_TYPE","styles","carbonElement","customElement","stablePrefix","c4dPrefix","C4DVideoCTAComposite","_decorate","_initialize","_ModalRenderMixin","constructor","args","F","d","kind","decorators","key","value","_activeVideoId","undefined","_handleRequestVideoData","event","_this$_loadVideoData","href","videoName","customVideoName","videoDescription","detail","videoData","_loadVideoData","call","id","duration","name","target","videoDuration","videoInfo","CustomEvent","bubbles","cancelable","composed","videoId","dispatchEvent","_handleRunAction","ctaType","VIDEO","_videoName","_videoDescription","_this$modalRenderRoot","_modalRenderRoot","selectorVideoPlayer","selectorLightboxVideoPlayerComposite","lightbox","modalRenderRoot","querySelector","attribute","disconnectedCallback","_hCloseModal","release","_superPropGet","updated","changedProperties","videoPlayerComposite","eventCloseLightbox","_handleCloseVideoPlayer","renderModal","embeddedVideos","mediaData","activeVideoId","_embedMedia","embedMedia","_t","_","Boolean","render","_t2","static"],"sources":["components/cta/video-cta-composite.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\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 { LitElement, html } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport on from '@carbon/web-components/es/globals/mixins/on.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport ModalRenderMixin from '../../globals/mixins/modal-render';\nimport { MediaData } from '../../internal/vendor/@carbon/ibmdotcom-services-store/types/kalturaPlayerAPI';\nimport Handle from '../../globals/internal/handle';\nimport C4DLightboxVideoPlayerComposite from '../lightbox-media-viewer/lightbox-video-player-composite';\n// Above import is interface-only ref and thus code won't be brought into the build\nimport '../lightbox-media-viewer/lightbox-video-player-composite';\nimport { CTA_TYPE } from './defs';\nimport { CTAMixinImpl } from '../../component-mixins/cta/cta';\nimport styles from './video-cta-composite.scss';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\n\nconst { stablePrefix: c4dPrefix } = settings;\n\n/**\n * Component that handles video CTAs in app.\n *\n * @element c4d-video-cta-composite\n */\n@customElement(`${c4dPrefix}-video-cta-composite`)\nclass C4DVideoCTAComposite extends ModalRenderMixin(\n HostListenerMixin(LitElement)\n) {\n /**\n * The placeholder for `_embedMedia()` action that may be mixed in.\n *\n * @internal\n */\n @state()\n _embedMedia?: (videoId: string) => Promise<any>;\n\n /**\n * The placeholder for `_loadVideoData()` Redux action that may be mixed in.\n *\n * @internal\n */\n _loadVideoData?: (videoId: string) => Promise<MediaData>;\n\n /**\n * `true` to show the video player.\n */\n @state()\n private _activeVideoId?: string;\n\n /**\n * The video custom name.\n */\n @state()\n private _videoName?: string;\n\n /**\n * The video custom description.\n */\n @state()\n private _videoDescription?: string;\n\n /**\n * The handle for the listener of `${c4dPrefix}-expressive-modal-closed` event.\n */\n private _hCloseModal: Handle | null = null;\n\n /**\n * Handles the user gesture of closing video player modal.\n */\n private _handleCloseVideoPlayer = () => {\n this._activeVideoId = undefined;\n };\n\n /**\n * Handles `${c4dPrefix}-cta-request-video-data` event.\n *\n * @param event The event.\n */\n @HostListener('eventRequestVideoData')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private async _handleRequestVideoData(event: CustomEvent) {\n const { href, videoName: customVideoName, videoDescription } = event.detail;\n const videoData = await this._loadVideoData?.(href);\n if (videoData && videoData?.id) {\n const { duration, name } = videoData;\n const videoName = customVideoName || name;\n\n if (event.target as CTAMixinImpl) {\n (event.target as CTAMixinImpl).videoName = videoName || customVideoName;\n (event.target as CTAMixinImpl).videoDescription = videoDescription;\n (event.target as CTAMixinImpl).videoDuration = duration;\n }\n\n const videoInfo = new CustomEvent(\n `${c4dPrefix}-cta-request-additional-video-data`,\n {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n videoName,\n videoDuration: duration,\n videoId: href,\n },\n }\n );\n\n this.dispatchEvent(videoInfo);\n }\n }\n\n /**\n * Handles `${c4dPrefix}-cta-run-action` event.\n *\n * @param event The event.\n */\n @HostListener('eventRunAction')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleRunAction(event: CustomEvent) {\n const { ctaType, href, videoName, videoDescription } = event.detail;\n if (ctaType === CTA_TYPE.VIDEO) {\n this._activeVideoId = href;\n this._videoName = videoName;\n this._videoDescription = videoDescription;\n }\n }\n\n /**\n * The video player.\n */\n protected get _videoPlayer() {\n const { selectorVideoPlayer, selectorLightboxVideoPlayerComposite } = this\n .constructor as typeof C4DVideoCTAComposite;\n const lightbox = (this.modalRenderRoot as Element)?.querySelector(\n selectorLightboxVideoPlayerComposite\n );\n return (\n (lightbox as C4DLightboxVideoPlayerComposite)?.modalRenderRoot as Element\n )?.querySelector(selectorVideoPlayer);\n }\n\n /**\n * The embedded Kaltura player element (that has `.sendNotification()`, etc. APIs), keyed by the video ID.\n */\n @property({ attribute: false })\n embeddedVideos?: { [videoId: string]: any };\n\n /**\n * The video data, keyed by the video ID.\n */\n @property({ attribute: false })\n mediaData?: { [videoId: string]: MediaData };\n\n disconnectedCallback() {\n if (this._hCloseModal) {\n this._hCloseModal = this._hCloseModal.release();\n }\n super.disconnectedCallback();\n }\n\n updated(changedProperties) {\n super.updated(changedProperties);\n if (!this._hCloseModal) {\n const { selectorLightboxVideoPlayerComposite } = this\n .constructor as typeof C4DVideoCTAComposite;\n const videoPlayerComposite = (\n this.modalRenderRoot as Element\n ).querySelector(\n selectorLightboxVideoPlayerComposite\n ) as C4DLightboxVideoPlayerComposite;\n // Manually hooks the event listeners on the modal render root to make the event names configurable\n this._hCloseModal = on(\n videoPlayerComposite.modalRenderRoot,\n (this.constructor as typeof C4DVideoCTAComposite).eventCloseLightbox,\n this._handleCloseVideoPlayer as EventListener\n );\n }\n }\n\n /**\n * @returns The media viewer lightbox for `type=\"video\"`.\n */\n renderModal() {\n const {\n embeddedVideos,\n mediaData,\n _videoName: videoName,\n _activeVideoId: activeVideoId,\n _embedMedia: embedMedia,\n _videoDescription: videoDescription,\n } = this;\n return html`\n <c4d-lightbox-video-player-composite\n ?open=\"${Boolean(activeVideoId)}\"\n video-cta-lightbox=\"true\"\n custom-video-name=\"${ifDefined(videoName)}\"\n custom-video-description=\"${ifDefined(videoDescription)}\"\n video-id=\"${ifDefined(activeVideoId)}\"\n .embeddedVideos=\"${ifDefined(embeddedVideos)}\"\n .mediaData=\"${ifDefined(mediaData)}\"\n ._embedMedia=\"${ifDefined(embedMedia)}\">\n </c4d-lightbox-video-player-composite>\n `;\n }\n\n render() {\n return html` <slot></slot> `;\n }\n\n /**\n * A selector selecting the video player component.\n */\n static get selectorVideoPlayer() {\n return `${c4dPrefix}-lightbox-video-player`;\n }\n\n /**\n * A selector selecting the video player composite component.\n */\n static get selectorLightboxVideoPlayerComposite() {\n return `${c4dPrefix}-lightbox-video-player-composite`;\n }\n\n /**\n * The name of the custom event fired after the lightbox is closed upon a user gesture.\n */\n static get eventCloseLightbox() {\n return `${c4dPrefix}-expressive-modal-closed`;\n }\n\n /**\n * The name of the custom event fired when there is a user gesture to run the action.\n */\n static get eventRequestVideoData() {\n return `${c4dPrefix}-cta-request-video-data`;\n }\n\n /**\n * The name of the custom event fired when there is a user gesture to run the action.\n */\n static get eventRunAction() {\n return `${c4dPrefix}-cta-run-action`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DVideoCTAComposite;\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,UAAU,EAAEC,IAAI,QAAQ,KAAK;AACtC,SAASC,QAAQ,EAAEC,KAAK,QAAQ,mBAAmB;AACnD,OAAOC,EAAE,MAAM,gDAAgD;AAC/D,SAASC,SAAS,QAAQ,8BAA8B;AACxD,OAAOC,YAAY,MAAM,+DAA+D;AACxF,OAAOC,iBAAiB,MAAM,2DAA2D;AACzF,OAAOC,QAAQ,MAAM,+DAA+D;AACpF,OAAOC,gBAAgB,MAAM,sCAAmC;AAIhE;AAAA;AACA,OAAO,6DAA0D;AACjE,SAASC,QAAQ,QAAQ,WAAQ;AAEjC,OAAOC,MAAM,MAAM,gCAA4B;AAC/C,SAASC,aAAa,IAAIC,aAAa,QAAQ,gEAAgE;AAE/G,MAAM;EAAEC,YAAY,EAAEC;AAAU,CAAC,GAAGP,QAAQ;;AAE5C;AACA;AACA;AACA;AACA;AAJA,IAMMQ,oBAAoB,GAAAC,SAAA,EADzBJ,aAAa,CAAC,GAAGE,SAAS,sBAAsB,CAAC,aAAAG,WAAA,EAAAC,iBAAA;EAAlD,MACMH,oBAAoB,SAAAG,iBAAA,CAExB;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EA0NF;EAAC;IAAAI,CAAA,EA5NKN,oBAAoB;IAAAO,CAAA;MAAAC,IAAA;MAAAC,UAAA,GAQvBtB,KAAK,CAAC,CAAC;MAAAuB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAaPtB,KAAK,CAAC,CAAC;MAAAuB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAMPtB,KAAK,CAAC,CAAC;MAAAuB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAMPtB,KAAK,CAAC,CAAC;MAAAuB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAE,GAAA;MAAAC,MAAA;QAAA,OAM8B,IAAI;MAAA;IAAA;MAAAH,IAAA;MAAAE,GAAA;MAAAC,MAAA;QAAA,OAKR,MAAM;UACtC,IAAI,CAACC,cAAc,GAAGC,SAAS;QACjC,CAAC;MAAA;IAAA;MAAAL,IAAA;MAAAC,UAAA,GAOAnB,YAAY,CAAC,uBAAuB,CAAC;MAAAoB,GAAA;MAAAC,KAAA;MAlDtC;AACF;AACA;AACA;AACA;;MAIE;AACF;AACA;AACA;AACA;;MAGE;AACF;AACA;;MAIE;AACF;AACA;;MAIE;AACF;AACA;;MAIE;AACF;AACA;;MAGE;AACF;AACA;;MAKE;AACF;AACA;AACA;AACA;MACE,eAEcG,uBAAuBA,CAACC,KAAkB,EAAE;QAAA,IAAAC,oBAAA;QACxD,MAAM;UAAEC,IAAI;UAAEC,SAAS,EAAEC,eAAe;UAAEC;QAAiB,CAAC,GAAGL,KAAK,CAACM,MAAM;QAC3E,MAAMC,SAAS,GAAG,QAAAN,oBAAA,GAAM,IAAI,CAACO,cAAc,cAAAP,oBAAA,uBAAnBA,oBAAA,CAAAQ,IAAA,KAAI,EAAkBP,IAAI,CAAC;QACnD,IAAIK,SAAS,IAAIA,SAAS,aAATA,SAAS,eAATA,SAAS,CAAEG,EAAE,EAAE;UAC9B,MAAM;YAAEC,QAAQ;YAAEC;UAAK,CAAC,GAAGL,SAAS;UACpC,MAAMJ,SAAS,GAAGC,eAAe,IAAIQ,IAAI;UAEzC,IAAIZ,KAAK,CAACa,MAAM,EAAkB;YAC/Bb,KAAK,CAACa,MAAM,CAAkBV,SAAS,GAAGA,SAAS,IAAIC,eAAe;YACtEJ,KAAK,CAACa,MAAM,CAAkBR,gBAAgB,GAAGA,gBAAgB;YACjEL,KAAK,CAACa,MAAM,CAAkBC,aAAa,GAAGH,QAAQ;UACzD;UAEA,MAAMI,SAAS,GAAG,IAAIC,WAAW,CAC/B,GAAGhC,SAAS,oCAAoC,EAChD;YACEiC,OAAO,EAAE,IAAI;YACbC,UAAU,EAAE,IAAI;YAChBC,QAAQ,EAAE,IAAI;YACdb,MAAM,EAAE;cACNH,SAAS;cACTW,aAAa,EAAEH,QAAQ;cACvBS,OAAO,EAAElB;YACX;UACF,CACF,CAAC;UAED,IAAI,CAACmB,aAAa,CAACN,SAAS,CAAC;QAC/B;MACF;;MAEA;AACF;AACA;AACA;AACA;IAJE;MAAAtB,IAAA;MAAAC,UAAA,GAKCnB,YAAY,CAAC,gBAAgB,CAAC;MAAAoB,GAAA;MAAAC,KAAA,EAA/B,SAEQ0B,gBAAgBA,CAACtB,KAAkB,EAAE;QAC3C,MAAM;UAAEuB,OAAO;UAAErB,IAAI;UAAEC,SAAS;UAAEE;QAAiB,CAAC,GAAGL,KAAK,CAACM,MAAM;QACnE,IAAIiB,OAAO,KAAK5C,QAAQ,CAAC6C,KAAK,EAAE;UAC9B,IAAI,CAAC3B,cAAc,GAAGK,IAAI;UAC1B,IAAI,CAACuB,UAAU,GAAGtB,SAAS;UAC3B,IAAI,CAACuB,iBAAiB,GAAGrB,gBAAgB;QAC3C;MACF;;MAEA;AACF;AACA;IAFE;MAAAZ,IAAA;MAAAE,GAAA;MAAAC,KAAA,EAGA,SAAAA,CAAA,EAA6B;QAAA,IAAA+B,qBAAA,EAAAC,gBAAA;QAC3B,MAAM;UAAEC,mBAAmB;UAAEC;QAAqC,CAAC,GAAG,IAAI,CACvEzC,WAA0C;QAC7C,MAAM0C,QAAQ,IAAAJ,qBAAA,GAAI,IAAI,CAACK,eAAe,cAAAL,qBAAA,uBAArBA,qBAAA,CAAmCM,aAAa,CAC/DH,oCACF,CAAC;QACD,OACGC,QAAQ,aAARA,QAAQ,gBAAAH,gBAAA,GAARG,QAAQ,CAAsCC,eAAe,cAAAJ,gBAAA,uBADzDA,gBAAA,CAEJK,aAAa,CAACJ,mBAAmB,CAAC;MACvC;;MAEA;AACF;AACA;IAFE;MAAApC,IAAA;MAAAC,UAAA,GAGCvB,QAAQ,CAAC;QAAE+D,SAAS,EAAE;MAAM,CAAC,CAAC;MAAAvC,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAM9BvB,QAAQ,CAAC;QAAE+D,SAAS,EAAE;MAAM,CAAC,CAAC;MAAAvC,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAE,GAAA;MAAAC,KAAA;MAH/B;AACF;AACA;MAIE,SAAAuC,oBAAoBA,CAAA,EAAG;QACrB,IAAI,IAAI,CAACC,YAAY,EAAE;UACrB,IAAI,CAACA,YAAY,GAAG,IAAI,CAACA,YAAY,CAACC,OAAO,CAAC,CAAC;QACjD;QACAC,aAAA,CApIErD,oBAAoB;MAqIxB;IAAC;MAAAQ,IAAA;MAAAE,GAAA;MAAAC,KAAA,EAED,SAAA2C,OAAOA,CAACC,iBAAiB,EAAE;QACzBF,aAAA,CAxIErD,oBAAoB,uBAwIRuD,iBAAiB;QAC/B,IAAI,CAAC,IAAI,CAACJ,YAAY,EAAE;UACtB,MAAM;YAAEN;UAAqC,CAAC,GAAG,IAAI,CAClDzC,WAA0C;UAC7C,MAAMoD,oBAAoB,GACxB,IAAI,CAACT,eAAe,CACpBC,aAAa,CACbH,oCACF,CAAoC;UACpC;UACA,IAAI,CAACM,YAAY,GAAG/D,EAAE,CACpBoE,oBAAoB,CAACT,eAAe,EACnC,IAAI,CAAC3C,WAAW,CAAiCqD,kBAAkB,EACpE,IAAI,CAACC,uBACP,CAAC;QACH;MACF;;MAEA;AACF;AACA;IAFE;MAAAlD,IAAA;MAAAE,GAAA;MAAAC,KAAA,EAGA,SAAAgD,WAAWA,CAAA,EAAG;QACZ,MAAM;UACJC,cAAc;UACdC,SAAS;UACTrB,UAAU,EAAEtB,SAAS;UACrBN,cAAc,EAAEkD,aAAa;UAC7BC,WAAW,EAAEC,UAAU;UACvBvB,iBAAiB,EAAErB;QACrB,CAAC,GAAG,IAAI;QACR,OAAOnC,IAAI,CAAAgF,EAAA,KAAAA,EAAA,GAAAC,CAAA;AACf;AACA,iBAFe;AACf;AACA,6BAFe;AACf,oCADe;AACf,oBADe;AACf,2BADe;AACf,sBADe;AACf,wBADe;AACf;AACA,KAFe,GAEEC,OAAO,CAACL,aAAa,CAAC,EAEVzE,SAAS,CAAC6B,SAAS,CAAC,EACb7B,SAAS,CAAC+B,gBAAgB,CAAC,EAC3C/B,SAAS,CAACyE,aAAa,CAAC,EACjBzE,SAAS,CAACuE,cAAc,CAAC,EAC9BvE,SAAS,CAACwE,SAAS,CAAC,EAClBxE,SAAS,CAAC2E,UAAU,CAAC;MAG3C;IAAC;MAAAxD,IAAA;MAAAE,GAAA;MAAAC,KAAA,EAED,SAAAyD,MAAMA,CAAA,EAAG;QACP,OAAOnF,IAAI,CAAAoF,GAAA,KAAAA,GAAA,GAAAH,CAAA;MACb;;MAEA;AACF;AACA;IAFE;MAAA1D,IAAA;MAAA8D,MAAA;MAAA5D,GAAA;MAAAC,KAAA,EAGA,SAAAA,CAAA,EAAiC;QAC/B,OAAO,GAAGZ,SAAS,wBAAwB;MAC7C;;MAEA;AACF;AACA;IAFE;MAAAS,IAAA;MAAA8D,MAAA;MAAA5D,GAAA;MAAAC,KAAA,EAGA,SAAAA,CAAA,EAAkD;QAChD,OAAO,GAAGZ,SAAS,kCAAkC;MACvD;;MAEA;AACF;AACA;IAFE;MAAAS,IAAA;MAAA8D,MAAA;MAAA5D,GAAA;MAAAC,KAAA,EAGA,SAAAA,CAAA,EAAgC;QAC9B,OAAO,GAAGZ,SAAS,0BAA0B;MAC/C;;MAEA;AACF;AACA;IAFE;MAAAS,IAAA;MAAA8D,MAAA;MAAA5D,GAAA;MAAAC,KAAA,EAGA,SAAAA,CAAA,EAAmC;QACjC,OAAO,GAAGZ,SAAS,yBAAyB;MAC9C;;MAEA;AACF;AACA;IAFE;MAAAS,IAAA;MAAA8D,MAAA;MAAA5D,GAAA;MAAAC,KAAA,EAGA,SAAAA,CAAA,EAA4B;QAC1B,OAAO,GAAGZ,SAAS,iBAAiB;MACtC;IAAC;MAAAS,IAAA;MAAA8D,MAAA;MAAA5D,GAAA;MAAAC,MAAA;QAAA,OAEehB,MAAM;MAAA;IAAA;EAAA;AAAA,GA3NWF,gBAAgB,CACjDF,iBAAiB,CAACP,UAAU,CAC9B,CAAC;AA4ND;AACA,eAAegB,oBAAoB","ignoreList":[]}
1
+ {"version":3,"file":"video-cta-composite.js","names":["LitElement","html","property","state","on","ifDefined","HostListener","HostListenerMixin","settings","ModalRenderMixin","CTA_TYPE","styles","carbonElement","customElement","stablePrefix","c4dPrefix","C4DVideoCTAComposite","_decorate","_initialize","_ModalRenderMixin","constructor","args","F","d","kind","decorators","key","value","_activeVideoId","undefined","_handleRequestVideoData","event","_this$_loadVideoData","href","videoName","customVideoName","videoDescription","detail","videoData","_loadVideoData","call","id","duration","name","target","videoDuration","videoInfo","CustomEvent","bubbles","cancelable","composed","videoId","dispatchEvent","_handleRunAction","ctaType","VIDEO","_videoName","_videoDescription","_this$modalRenderRoot","_modalRenderRoot","selectorVideoPlayer","selectorLightboxVideoPlayerComposite","lightbox","modalRenderRoot","querySelector","attribute","disconnectedCallback","_hCloseModal","release","_superPropGet","updated","changedProperties","videoPlayerComposite","eventCloseLightbox","_handleCloseVideoPlayer","renderModal","embeddedVideos","mediaData","activeVideoId","_embedMedia","embedMedia","_t","_","Boolean","render","_t2","static"],"sources":["components/cta/video-cta-composite.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2024\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 { LitElement, html } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport on from '@carbon/web-components/es/globals/mixins/on.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport HostListener from '@carbon/web-components/es/globals/decorators/host-listener.js';\nimport HostListenerMixin from '@carbon/web-components/es/globals/mixins/host-listener.js';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport ModalRenderMixin from '../../globals/mixins/modal-render';\nimport { MediaData } from '../../internal/vendor/@carbon/ibmdotcom-services-store/types/kalturaPlayerAPI';\nimport Handle from '../../globals/internal/handle';\nimport C4DLightboxVideoPlayerComposite from '../lightbox-media-viewer/lightbox-video-player-composite';\n// Above import is interface-only ref and thus code won't be brought into the build\nimport '../lightbox-media-viewer/lightbox-video-player-composite';\nimport { CTA_TYPE } from './defs';\nimport { CTAMixinImpl } from '../../component-mixins/cta/cta';\nimport styles from './video-cta-composite.scss';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\n\nconst { stablePrefix: c4dPrefix } = settings;\n\n/**\n * Component that handles video CTAs in app.\n *\n * @element c4d-video-cta-composite\n */\n@customElement(`${c4dPrefix}-video-cta-composite`)\nclass C4DVideoCTAComposite extends ModalRenderMixin(\n HostListenerMixin(LitElement)\n) {\n /**\n * The placeholder for `_embedMedia()` action that may be mixed in.\n *\n * @internal\n */\n _embedMedia?: (videoId: string) => Promise<any>;\n\n /**\n * The placeholder for `_loadVideoData()` Redux action that may be mixed in.\n *\n * @internal\n */\n _loadVideoData?: (videoId: string) => Promise<MediaData>;\n\n /**\n * `true` to show the video player.\n */\n @state()\n private _activeVideoId?: string;\n\n /**\n * The video custom name.\n */\n @state()\n private _videoName?: string;\n\n /**\n * The video custom description.\n */\n @state()\n private _videoDescription?: string;\n\n /**\n * The handle for the listener of `${c4dPrefix}-expressive-modal-closed` event.\n */\n private _hCloseModal: Handle | null = null;\n\n /**\n * Handles the user gesture of closing video player modal.\n */\n private _handleCloseVideoPlayer = () => {\n this._activeVideoId = undefined;\n };\n\n /**\n * Handles `${c4dPrefix}-cta-request-video-data` event.\n *\n * @param event The event.\n */\n @HostListener('eventRequestVideoData')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private async _handleRequestVideoData(event: CustomEvent) {\n const { href, videoName: customVideoName, videoDescription } = event.detail;\n const videoData = await this._loadVideoData?.(href);\n if (videoData && videoData?.id) {\n const { duration, name } = videoData;\n const videoName = customVideoName || name;\n\n if (event.target as CTAMixinImpl) {\n (event.target as CTAMixinImpl).videoName = videoName || customVideoName;\n (event.target as CTAMixinImpl).videoDescription = videoDescription;\n (event.target as CTAMixinImpl).videoDuration = duration;\n }\n\n const videoInfo = new CustomEvent(\n `${c4dPrefix}-cta-request-additional-video-data`,\n {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n videoName,\n videoDuration: duration,\n videoId: href,\n },\n }\n );\n\n this.dispatchEvent(videoInfo);\n }\n }\n\n /**\n * Handles `${c4dPrefix}-cta-run-action` event.\n *\n * @param event The event.\n */\n @HostListener('eventRunAction')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleRunAction(event: CustomEvent) {\n const { ctaType, href, videoName, videoDescription } = event.detail;\n if (ctaType === CTA_TYPE.VIDEO) {\n this._activeVideoId = href;\n this._videoName = videoName;\n this._videoDescription = videoDescription;\n }\n }\n\n /**\n * The video player.\n */\n protected get _videoPlayer() {\n const { selectorVideoPlayer, selectorLightboxVideoPlayerComposite } = this\n .constructor as typeof C4DVideoCTAComposite;\n const lightbox = (this.modalRenderRoot as Element)?.querySelector(\n selectorLightboxVideoPlayerComposite\n );\n return (\n (lightbox as C4DLightboxVideoPlayerComposite)?.modalRenderRoot as Element\n )?.querySelector(selectorVideoPlayer);\n }\n\n /**\n * The embedded Kaltura player element (that has `.sendNotification()`, etc. APIs), keyed by the video ID.\n */\n @property({ attribute: false })\n embeddedVideos?: { [videoId: string]: any };\n\n /**\n * The video data, keyed by the video ID.\n */\n @property({ attribute: false })\n mediaData?: { [videoId: string]: MediaData };\n\n disconnectedCallback() {\n if (this._hCloseModal) {\n this._hCloseModal = this._hCloseModal.release();\n }\n super.disconnectedCallback();\n }\n\n updated(changedProperties) {\n super.updated(changedProperties);\n if (!this._hCloseModal) {\n const { selectorLightboxVideoPlayerComposite } = this\n .constructor as typeof C4DVideoCTAComposite;\n const videoPlayerComposite = (\n this.modalRenderRoot as Element\n ).querySelector(\n selectorLightboxVideoPlayerComposite\n ) as C4DLightboxVideoPlayerComposite;\n // Manually hooks the event listeners on the modal render root to make the event names configurable\n this._hCloseModal = on(\n videoPlayerComposite.modalRenderRoot,\n (this.constructor as typeof C4DVideoCTAComposite).eventCloseLightbox,\n this._handleCloseVideoPlayer as EventListener\n );\n }\n }\n\n /**\n * @returns The media viewer lightbox for `type=\"video\"`.\n */\n renderModal() {\n const {\n embeddedVideos,\n mediaData,\n _videoName: videoName,\n _activeVideoId: activeVideoId,\n _embedMedia: embedMedia,\n _videoDescription: videoDescription,\n } = this;\n return html`\n <c4d-lightbox-video-player-composite\n ?open=\"${Boolean(activeVideoId)}\"\n video-cta-lightbox=\"true\"\n custom-video-name=\"${ifDefined(videoName)}\"\n custom-video-description=\"${ifDefined(videoDescription)}\"\n video-id=\"${ifDefined(activeVideoId)}\"\n .embeddedVideos=\"${ifDefined(embeddedVideos)}\"\n .mediaData=\"${ifDefined(mediaData)}\"\n ._embedMedia=\"${ifDefined(embedMedia)}\">\n </c4d-lightbox-video-player-composite>\n `;\n }\n\n render() {\n return html` <slot></slot> `;\n }\n\n /**\n * A selector selecting the video player component.\n */\n static get selectorVideoPlayer() {\n return `${c4dPrefix}-lightbox-video-player`;\n }\n\n /**\n * A selector selecting the video player composite component.\n */\n static get selectorLightboxVideoPlayerComposite() {\n return `${c4dPrefix}-lightbox-video-player-composite`;\n }\n\n /**\n * The name of the custom event fired after the lightbox is closed upon a user gesture.\n */\n static get eventCloseLightbox() {\n return `${c4dPrefix}-expressive-modal-closed`;\n }\n\n /**\n * The name of the custom event fired when there is a user gesture to run the action.\n */\n static get eventRequestVideoData() {\n return `${c4dPrefix}-cta-request-video-data`;\n }\n\n /**\n * The name of the custom event fired when there is a user gesture to run the action.\n */\n static get eventRunAction() {\n return `${c4dPrefix}-cta-run-action`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\n/* @__GENERATE_REACT_CUSTOM_ELEMENT_TYPE__ */\nexport default C4DVideoCTAComposite;\n"],"mappings":"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","ignoreList":[]}