@carbon/ibmdotcom-web-components 2.32.0 → 2.32.1

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 (52) hide show
  1. package/custom-elements.json +5 -0
  2. package/dist/dotcom-shell.js +4 -4
  3. package/dist/dotcom-shell.min.js +5 -5
  4. package/dist/ibmdotcom-web-components-dotcom-shell.js +4 -4
  5. package/dist/ibmdotcom-web-components-dotcom-shell.min.js +5 -5
  6. package/dist/{index-34e0f247.js → index-64a91ce1.js} +7 -7
  7. package/dist/{index-b074cd59.js → index-efd3176b.js} +7 -7
  8. package/dist/{left-nav-menu-01066f18.js → left-nav-menu-4a217360.js} +5 -5
  9. package/dist/{left-nav-menu-category-heading-cc2abd53.js → left-nav-menu-category-heading-112173ad.js} +5 -5
  10. package/dist/{left-nav-menu-category-heading-0dfb02cf.js → left-nav-menu-category-heading-a31b6705.js} +4 -4
  11. package/dist/{left-nav-menu-bcbc0330.js → left-nav-menu-e63a58e2.js} +4 -4
  12. package/dist/{left-nav-menu-item-e69c103b.js → left-nav-menu-item-173ae9c7.js} +5 -5
  13. package/dist/{left-nav-menu-item-bbc39404.js → left-nav-menu-item-7b766011.js} +4 -4
  14. package/dist/{left-nav-menu-section-6c32295d.js → left-nav-menu-section-5bb6de4a.js} +4 -4
  15. package/dist/{left-nav-menu-section-1aabd4ca.js → left-nav-menu-section-a0783a70.js} +5 -5
  16. package/dist/{left-nav-overlay-f796104e.js → left-nav-overlay-057bd8c9.js} +5 -5
  17. package/dist/{left-nav-overlay-6b0aaea8.js → left-nav-overlay-a92379ea.js} +4 -4
  18. package/dist/{megamenu-category-group-copy-4626f75e.js → megamenu-category-group-copy-08ebfe77.js} +4 -4
  19. package/dist/{megamenu-category-group-copy-d8dcca06.js → megamenu-category-group-copy-d5d0605b.js} +5 -5
  20. package/dist/{megamenu-category-group-973395bb.js → megamenu-category-group-e6569af3.js} +4 -4
  21. package/dist/{megamenu-category-group-c7cdba1b.js → megamenu-category-group-ed57da41.js} +5 -5
  22. package/dist/{megamenu-category-heading-c74bab78.js → megamenu-category-heading-4f3e1124.js} +4 -4
  23. package/dist/{megamenu-category-heading-2aa128db.js → megamenu-category-heading-685e246d.js} +5 -5
  24. package/dist/{megamenu-category-link-4be5ba05.js → megamenu-category-link-3f55de27.js} +9 -9
  25. package/dist/{megamenu-category-link-cb453456.js → megamenu-category-link-7475394c.js} +4 -4
  26. package/dist/{megamenu-category-link-group-fab7d32b.js → megamenu-category-link-group-2c3b766a.js} +4 -4
  27. package/dist/{megamenu-category-link-group-51f207c0.js → megamenu-category-link-group-9438439a.js} +5 -5
  28. package/dist/{megamenu-left-navigation-aa21b272.js → megamenu-left-navigation-50d37e03.js} +4 -4
  29. package/dist/{megamenu-left-navigation-3261efc4.js → megamenu-left-navigation-bae41763.js} +5 -5
  30. package/dist/{megamenu-overlay-b94c501b.js → megamenu-overlay-a46367e4.js} +4 -4
  31. package/dist/{megamenu-overlay-f36f4113.js → megamenu-overlay-aa714843.js} +5 -5
  32. package/dist/{megamenu-tab-6fd6b915.js → megamenu-tab-30de5248.js} +4 -4
  33. package/dist/{megamenu-tab-21e4c36e.js → megamenu-tab-ebc2d45d.js} +5 -5
  34. package/es/components/carousel/carousel.css.js +1 -1
  35. package/es/components/content-block-cards/content-block-cards.d.ts +348 -1
  36. package/es/components/content-block-cards/content-block-cards.js +56 -3
  37. package/es/components/content-block-cards/content-block-cards.js.map +1 -1
  38. package/es/components/cta/video-cta-container.d.ts +2 -1
  39. package/es/components/lightbox-media-viewer/lightbox-video-player-container.d.ts +2 -1
  40. package/es/components/notice-choice/notice-choice.d.ts +1 -0
  41. package/es/components/notice-choice/notice-choice.js +18 -4
  42. package/es/components/notice-choice/notice-choice.js.map +1 -1
  43. package/es/components/notice-choice/utils.d.ts +0 -1
  44. package/es/components/notice-choice/utils.js +0 -42
  45. package/es/components/notice-choice/utils.js.map +1 -1
  46. package/es/components/video-player/video-player-container.d.ts +16 -2
  47. package/es/components/video-player/video-player-container.js +30 -2
  48. package/es/components/video-player/video-player-container.js.map +1 -1
  49. package/es/internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js +2 -2
  50. package/lib/component-mixins/callout/defs.js +16 -16
  51. package/lib/internal/vendor/@carbon/ibmdotcom-utilities/utilities/settings/settings.js +2 -2
  52. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"notice-choice.js","names":["loadContent","loadSettings","checkEmailStatus","html","LitElement","property","pwsValueMap","resetToWorldWideContent","supportedLanguages","settings","StableSelectorMixin","styles","unsafeHTML","carbonElement","customElement","prefix","stablePrefix","c4dPrefix","NoticeChoice","_decorate","_initialize","_StableSelectorMixin","constructor","args","F","d","kind","decorators","type","String","reflect","attribute","key","value","_t","_","Object","Boolean","countryCode","isDisplayed","_t2","_t3","EMAIL","PHONE","NC_HIDDEN_EMAIL","NC_HIDDEN_PHONE","checkBoxStatus","punsStatus","connectedCallback","_superPropGet","_initSettingsAndContent","language","static","updated","changedProps","forEach","oldValue","propName","newValue","hasValue","undefined","_dispatchChange","field","prepareCheckboxes","setDefaultSelections","_this$language","includes","environment","langPart","split","supportedLang","isLoading","countrySettings","preferences","err","console","error","ncData","defaultLoadContent","_this$countrySettings","toLowerCase","countryChanged","enableAllOptIn","JSON","parse","hideErrorMessage","countryBasedLegalNotice","emailRegex","emailValid","test","trim","email","onEmailChange","showCheckBox","oneYearAgo","Date","now","isAnnualPeriodExpired","data","emailStatus","lastUpdated","annualPeriodDate","isValidDate","isNaN","getTime","isExpired","warn","_handleEmailCheckFailure","_onEmailStatusChanged","_objectSpread","responseData","expired","renderCombinedEmailPhoneSection","lang","defaultLang","noticeOnly","defaultLoadSettings","countryChangeAction","_this$country","_this$ncData","country","preventFormSubmission","mandatory","mandatoryCheckbox","_mandatory$countryTra","_mandatory$chinaPIPLt","mrsField","countryTransferText","mrs_field","chinaPIPLtext","_onChange","isMandatoryCheckboxDisplayed","postTextTemplate","OtherPreferences","trialPrivacyText","postText","termsConditionLink","strings","originalValue","matchedValue","match","anrTagHtml","replace","link","reg","RegExp","_t4","_t5","_this$country2","_this$countrySettings2","_this$countrySettings3","checkboxes","countryStatus","phone","newValues","values","keys","isOptOut","hiddenFieldName","prototype","hasOwnProperty","call","defaultValues","changed","some","_buildCheckboxes","_this$ncData2","_this$ncData3","fieldElements","fieldCollections","id","labelText","telephone","questionchoices","indexOf","newCheckboxes","performUpdate","countryPreferencesSettings","checkCombineEmailPhoneBoxChange","$event","checked","target","map","hiddenFieldStatus","valuesForEmailPhone","statusPrechecked","combinedEmailPhonePrechecked","renderCheckbox","preText","checkboxId","_t6","combinedPreTextTemplate","_this$country3","_this$state","_content$state","_content$country","_t7","content","state","annualDefaultText","combinedConsent","annualText","stateConfig","_stateConfig$ca","_stateConfig$state","_content$state2","countryContent","isPermission","_t8","checkBoxLegalChange","event","_target$parentElement","_this$country4","_this$ncData4","_mandatoryCheckbox$co","_mandatoryCheckbox$ch","isChecked","errorEl","parentElement","querySelector","style","display","_this$ncData5","mandatoryCheckboxes","entries","checkbox","legalTextName","errorTemplate","_t9","_t10","text","_this$country5","_this$countrySettings4","countryLower","toLocaleLowerCase","isNoticeOnly","defaultCountryStatus","getPunsStatus","_this$valuesForEmailP","_this$valuesForEmailP2","checkboxStatus","createHiddenInput","_t11","hiddenInputs","_this$values$key$chec","_this$values$key","hiddenValue","hiddenBoxId","length","_t12","Map","dispatchCustomEvent","eventName","eventDetail","bubbles","detail","dispatchEvent","CustomEvent","_this$pwsFieldsMap$ge","_this$pwsFieldsMap","_pwsValueMap","mappedField","pwsFieldsMap","get","mappedValue","render","_t13","_this$ncData6","_this$ncData7","_this$ncData8"],"sources":["components/notice-choice/notice-choice.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 { loadContent, loadSettings, checkEmailStatus } from './services';\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport {\n pwsValueMap,\n resetToWorldWideContent,\n supportedLanguages,\n} from './utils';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport styles from './notice-choice.scss';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\nimport '@carbon/web-components/es/components/skeleton-text/index.js';\n\nconst { prefix, stablePrefix: c4dPrefix } = settings;\n\ninterface MandatoryCheckbox {\n text: string;\n mrs_field: string;\n error: string;\n}\n/**\n * Notice Choice\n *\n * @element c4d-notice-choice\n * @fires c4d-notice-choice-change\n * @fires c4d-notice-choice-email-status-changed\n * The custom event fired when default choice loaded or user change some preferences.\n * The field and value should be taken from the detail object and send it to MRS.\n * @csspart checkbox-wrapper - The checkbox wrapper. Usage `c4d-notice-choice::part(checkbox-wrapper)`\n * @csspart checkbox - An input checkbox. Usage `c4d-notice-choice::part(checkbox)`\n * @csspart checkbox-label - The checkbox label. Usage `c4d-notice-choice::part(checkbox-label)`\n * @csspart checkbox-label-text - The checkbox label text. Usage `c4d-notice-choice::part(checkbox-label-text)`\n * @csspart error - The error message. Usage `c4d-notice-choice::part(error)`\n * @csspart section - A section. Usage `c4d-notice-choice::part(section)`\n * @csspart container - The container. Usage `c4d-notice-choice::part(container)`\n * @csspart tooltip-link - The tooltip link. Usage `c4d-notice-choice::part(tooltip-link)`\n */\n@customElement(`c4d-notice-choice`)\nclass NoticeChoice extends StableSelectorMixin(LitElement) {\n /**\n * properties for passed attributes.\n */\n @property({ type: String, reflect: true, attribute: 'question-choices' })\n questionchoices = '1';\n\n @property({ type: String, attribute: 'email' })\n email = '';\n\n @property({ type: String, attribute: 'country' })\n country = 'US';\n\n @property({ type: String, attribute: 'state' })\n state = '';\n\n @property({ type: String, attribute: 'language' })\n language = 'en';\n\n @property({ type: String, attribute: 'terms-condition-link' })\n termsConditionLink = html``;\n\n @property({ type: String, attribute: 'enable-all-opt-in' })\n enableAllOptIn = 'false';\n\n @property({ type: String, attribute: 'hide-error-message' })\n hideErrorMessage = 'false';\n\n @property({ type: String, attribute: 'environment' })\n environment = 'prod';\n\n /**\n * End properties for passed attributes.\n */\n\n /**\n * properties for local state state management.\n */\n @property({ attribute: 'default-values' })\n defaultValues = {};\n\n @property({ type: Object, attribute: false })\n checkboxes = {};\n\n @property({ type: Object, attribute: false })\n ncData: any;\n\n @property({ type: Boolean, attribute: false })\n changed = false;\n\n @property({ type: String, attribute: false })\n fetchedPref = '';\n\n @property({ type: Object, attribute: false })\n optInContent = {};\n\n @property({ type: Boolean, attribute: false })\n preventFormSubmission = false;\n\n @property({ type: Object, attribute: false })\n isMandatoryCheckboxDisplayed = { countryCode: '', isDisplayed: false };\n\n @property({ type: Object, attribute: false })\n countrySettings: any;\n\n @property({ type: Object, attribute: false })\n noticeOnly: any;\n\n @property({ type: Boolean, attribute: false })\n emailValid = false;\n\n @property({ type: Boolean, attribute: false })\n telephonePrechecked = false;\n\n @property({ type: Boolean, attribute: false })\n combinedEmailPhonePrechecked = false;\n\n @property({ type: Boolean, attribute: false })\n isAnnualPeriodExpired = true;\n\n @property({ type: Boolean, attribute: false })\n showCheckBox = false;\n\n @property({ type: Boolean, attribute: false })\n isLoading = false;\n\n @property({ type: html, attribute: false })\n preText = html``;\n\n @property({ type: html, attribute: false })\n defaultPreText = html``;\n\n @property({ type: Object, attribute: false })\n values = {\n EMAIL: false,\n PHONE: false,\n NC_HIDDEN_EMAIL: 'SUPPRESSION',\n NC_HIDDEN_PHONE: 'SUPPRESSION',\n };\n\n @property({ type: Object, attribute: false })\n valuesForEmailPhone = {\n EMAIL: {\n checkBoxStatus: 'PERMISSION',\n punsStatus: '',\n },\n };\n\n @property({ reflect: true })\n hiddenEmail = '';\n\n @property({ reflect: true })\n hiddenPhone = '';\n\n connectedCallback() {\n super.connectedCallback();\n this._initSettingsAndContent(this.language);\n }\n\n static get stableSelector() {\n return `${c4dPrefix}--notice-choice`;\n }\n static styles = styles;\n\n updated(changedProps: Map<string, unknown>) {\n changedProps.forEach((oldValue, propName) => {\n const newValue = (this as any)[propName];\n const hasValue = newValue !== undefined && newValue !== null;\n this._dispatchChange(propName, newValue, hasValue, oldValue);\n });\n }\n\n private _dispatchChange(\n field: string,\n value: unknown,\n hasValue: boolean,\n oldValue?: unknown\n ) {\n switch (field) {\n case 'questionchoices': {\n this.prepareCheckboxes();\n this.setDefaultSelections();\n break;\n }\n\n case 'language':\n case 'environment': {\n if (['stage', 'prod'].includes(value as string)) {\n this.environment = value as string;\n } else {\n this.language = value as string;\n }\n const langPart = (this.language as string | undefined)?.split(\n /[-_]/\n )[0];\n const supportedLang =\n supportedLanguages(this.language) ||\n supportedLanguages(langPart) ||\n 'en';\n\n this.isLoading = true;\n loadSettings(\n this.environment,\n (settings) => {\n this.countrySettings = settings.preferences;\n },\n (err) => console.error('error loading settings', err)\n );\n\n loadContent(\n supportedLang,\n this.environment,\n (ncData) => {\n this.isLoading = false;\n this.ncData = ncData;\n this.prepareCheckboxes();\n },\n () => this.defaultLoadContent()\n );\n break;\n }\n\n case 'country': {\n if (\n hasValue &&\n typeof value === 'string' &&\n oldValue !== value &&\n this.countrySettings?.[value.toLowerCase()]\n ) {\n this.countryChanged();\n }\n break;\n }\n\n case 'enableAllOptIn': {\n if (oldValue !== value && typeof value === 'string') {\n this.enableAllOptIn = JSON.parse(value);\n this.setDefaultSelections();\n }\n break;\n }\n\n case 'hideErrorMessage': {\n if (oldValue !== value && typeof value === 'string') {\n this.hideErrorMessage = JSON.parse(value);\n this.countryBasedLegalNotice();\n }\n break;\n }\n\n case 'email': {\n const emailRegex = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n this.emailValid = false;\n if (\n hasValue &&\n oldValue !== value &&\n typeof value === 'string' &&\n emailRegex.test(value.trim()) &&\n value.trim() !== ''\n ) {\n this.email = value.trim();\n this.onEmailChange();\n } else {\n this.showCheckBox = false;\n }\n break;\n }\n }\n }\n onEmailChange() {\n const email = this.email;\n const oneYearAgo = new Date(Date.now() - 365 * 24 * 60 * 60 * 1000);\n\n this.isAnnualPeriodExpired = true;\n this.isLoading = true;\n\n checkEmailStatus(\n email,\n this.environment,\n (data) => {\n this.isLoading = false;\n this.emailValid = true;\n const { email: emailStatus, lastUpdated } = data;\n const annualPeriodDate = new Date(lastUpdated);\n\n const isValidDate = !isNaN(annualPeriodDate.getTime());\n const isExpired =\n isValidDate && emailStatus === 'P' && annualPeriodDate < oneYearAgo;\n\n // If bad date, treat as expired\n if (!isValidDate) {\n console.warn('Invalid annualPeriod:', lastUpdated);\n this.isAnnualPeriodExpired = true;\n this._handleEmailCheckFailure(data, true);\n return;\n }\n\n this.isAnnualPeriodExpired = emailStatus !== 'P' || isExpired;\n this.showCheckBox = isExpired || emailStatus !== 'P';\n\n this._onEmailStatusChanged('emailStats', {\n ...data,\n isAnnualPeriodExpired: isExpired,\n });\n },\n (error) => {\n this.emailValid = true;\n this.isLoading = false;\n console.error('checkEmailStatus error:', error);\n this._handleEmailCheckFailure(error, true);\n }\n );\n }\n\n /**\n * Centralized handler for failed or invalid responses.\n */\n private _handleEmailCheckFailure(responseData: any, expired: boolean) {\n this.isAnnualPeriodExpired = expired;\n this.showCheckBox = true;\n this.renderCombinedEmailPhoneSection();\n this._onEmailStatusChanged('emailStats', {\n ...responseData,\n isAnnualPeriodExpired: expired,\n });\n }\n\n private _initSettingsAndContent(language: string) {\n const [lang] = language.split(/[-_]/);\n const defaultLang =\n supportedLanguages(language) || supportedLanguages(lang) || 'en';\n\n loadSettings(\n this.environment,\n (settings) => {\n this.countrySettings = settings.preferences;\n this.noticeOnly = settings.noticeOnly || ['us'];\n },\n () => this.defaultLoadSettings()\n );\n\n loadContent(\n defaultLang,\n this.environment,\n (ncData) => {\n this.ncData = ncData;\n this.prepareCheckboxes();\n this.countryChanged();\n },\n () => this.defaultLoadContent()\n );\n }\n\n countryChangeAction() {\n const countryCode = this.country?.toLowerCase();\n this.preventFormSubmission = false;\n\n const mandatory = this.ncData?.mandatoryCheckbox?.[countryCode];\n this.setDefaultSelections();\n if (mandatory) {\n // determine which field to update\n const mrsField =\n mandatory.countryTransferText?.mrs_field ||\n mandatory.chinaPIPLtext?.mrs_field;\n\n if (mrsField) {\n this._onChange(mrsField, 'countyBasedCheckedNo');\n }\n\n this.isMandatoryCheckboxDisplayed = {\n countryCode,\n isDisplayed: true,\n };\n\n this.preventFormSubmission = true;\n\n this._onChange('preventFormSubmission', 'formSubmissionNo');\n } else {\n this._onChange('preventFormSubmission', 'formSubmissionYes');\n }\n }\n\n postTextTemplate() {\n if (this.ncData) {\n const OtherPreferences = this.ncData.trialPrivacyText;\n let postText = this.ncData.postText;\n\n if (postText) {\n postText = '<p part=\"ncPostText\">' + postText + '</p>';\n }\n\n if (!this.termsConditionLink.strings && this.termsConditionLink) {\n const originalValue = OtherPreferences;\n const matchedValue = originalValue.match(/<tc>.*<\\/tc>/g);\n if (matchedValue) {\n const anrTagHtml = matchedValue[0].replace(/<tc>|<\\/tc>/g, '');\n const link = `<a href='${this.termsConditionLink}' target='_blank' class='ibm-tooltip' part=\"tooltip-link\">${anrTagHtml}</a>`;\n const reg = new RegExp('<tc>' + anrTagHtml + '</tc>', 'g');\n\n postText =\n postText +\n originalValue\n .replace(reg, link)\n .replace(/<p>/g, '<p part=\"nc-trial-text\" id=\"nc-trial-text\">');\n }\n }\n if (postText !== '') {\n postText =\n \"<div part='ncPostTextContainer' id='ncPostTextContainer'>\" +\n postText +\n '</div>';\n }\n return html`${unsafeHTML(postText)}`;\n } else {\n return html``;\n }\n }\n\n countryChanged() {\n resetToWorldWideContent();\n this.countryChangeAction();\n }\n\n setDefaultSelections() {\n if (this.enableAllOptIn || !this.checkboxes) {\n return;\n }\n\n const countryCode = this.country?.toLowerCase();\n const countryStatus = this.countrySettings?.[countryCode] ?? {\n email: 'opt-in',\n phone: 'opt-in',\n };\n\n const newValues = { ...this.values };\n for (const key of Object.keys(this.checkboxes)) {\n const isOptOut = countryStatus[key.toLowerCase()] === 'opt-out';\n newValues[key] = isOptOut;\n\n const hiddenFieldName = `NC_HIDDEN_${key}`;\n newValues[hiddenFieldName] = isOptOut ? 'OPT_OUT' : 'OPT_IN';\n\n if (Object.prototype.hasOwnProperty.call(this.defaultValues, key)) {\n newValues[key] = this.defaultValues[key];\n }\n\n this._onChange(hiddenFieldName, newValues[key] ? 'OPT_IN' : 'OPT_OUT');\n }\n\n const changed = Object.keys(newValues).some(\n (field) => newValues[field] !== this.values[field]\n );\n if (changed) {\n this.values = newValues;\n }\n }\n\n protected _buildCheckboxes() {\n const fieldElements: any = {};\n const fieldCollections = {\n EMAIL: {\n id: 'EMAIL',\n labelText: this.ncData?.email,\n },\n PHONE: {\n id: 'PHONE',\n labelText: this.ncData?.telephone,\n },\n };\n if (this.questionchoices) {\n // by email\n if (this.questionchoices.indexOf('1') > -1) {\n fieldElements.EMAIL = fieldCollections.EMAIL;\n }\n // by Phone\n if (this.questionchoices.indexOf('2') > -1) {\n fieldElements.PHONE = fieldCollections.PHONE;\n }\n }\n return fieldElements;\n }\n\n prepareCheckboxes() {\n if (this.ncData) {\n const newCheckboxes = this._buildCheckboxes();\n this.checkboxes = newCheckboxes;\n this.performUpdate();\n }\n }\n\n defaultLoadContent() {\n loadContent(\n 'en',\n this.environment,\n (ncData) => {\n this.ncData = ncData;\n this.prepareCheckboxes();\n this.countryChanged();\n },\n (error) => {\n this.isLoading = false;\n console.error('error loading content', error);\n }\n );\n }\n\n defaultLoadSettings() {\n loadSettings(\n this.environment,\n (countryPreferencesSettings) => {\n this.countrySettings = countryPreferencesSettings.preferences;\n this.noticeOnly = countryPreferencesSettings.noticeOnly || ['us'];\n },\n (error) => {\n console.error('error loading content', error);\n }\n );\n }\n\n checkCombineEmailPhoneBoxChange($event: any) {\n const checked = $event.target.checked;\n const newValues = {\n ...this.values,\n };\n this.changed = true;\n\n Object.keys(this.checkboxes).map((id) => {\n newValues[id] = !!checked;\n this.values = newValues;\n\n const hiddenFieldName = `NC_HIDDEN_${id}`;\n const hiddenFieldStatus = checked ? 'PERMISSION' : 'SUPPRESSION';\n\n this.valuesForEmailPhone[id]['checkBoxStatus'] = hiddenFieldStatus;\n let statusPrechecked = '';\n switch (id) {\n case 'EMAIL':\n case 'PHONE':\n statusPrechecked =\n this.combinedEmailPhonePrechecked && !checked\n ? 'CU'\n : !this.combinedEmailPhonePrechecked && checked\n ? 'UC'\n : this.combinedEmailPhonePrechecked && checked\n ? 'CC'\n : 'UU';\n\n break;\n }\n this.valuesForEmailPhone[id]['punsStatus'] = statusPrechecked;\n\n this._onChange(hiddenFieldName, hiddenFieldStatus);\n this._onChange(\n `${hiddenFieldName}_VALUE`,\n `NC_HIDDEN_${hiddenFieldStatus}`\n );\n });\n }\n\n renderCheckbox(preText, checked) {\n const checkboxId = 'EMAIL_PHONE_CHECKBOX';\n return html`\n <span part=\"container\">\n <div\n class=\"${prefix}--form-item cds--checkbox-wrapper\"\n part=\"checkbox-wrapper\">\n <input\n type=\"checkbox\"\n class=\"${prefix}--checkbox\"\n part=\"checkbox\"\n id=\"${checkboxId}\"\n name=\"${checkboxId}\"\n ?checked=\"${checked}\"\n @change=\"${this.checkCombineEmailPhoneBoxChange}\" />\n <label\n for=\"${checkboxId}\"\n class=\"${prefix}--checkbox-label ${prefix}--nc__checkbox-${checkboxId}\"\n part=\"checkbox-label\">\n <span\n class=\"${prefix}--checkbox-label-text\"\n part=\"checkbox-label-text\"\n dir=\"auto\">\n ${unsafeHTML(preText)}\n </span>\n </label>\n </div>\n </span>\n `;\n }\n\n combinedPreTextTemplate() {\n if (!this.ncData) {\n return html``;\n }\n\n const content = this.ncData;\n const country = this.country?.toLowerCase() || '';\n const state = this.state?.toLowerCase() || '';\n let preText = '';\n\n // 1. Base text depending on email\n if (!this.emailValid) {\n preText = content.annualDefaultText;\n } else {\n preText = this.showCheckBox\n ? content.combinedConsent\n : content.annualText;\n }\n\n // 2. country+state specific override\n const stateConfig = content.state?.[country];\n if (stateConfig) {\n if ((this.noticeOnly || []).includes(country)) {\n preText =\n state === 'ca' || state === ''\n ? stateConfig['ca']?.noticeOnly || content.noticeOnly\n : content.noticeOnly;\n } else {\n preText =\n stateConfig[state]?.combinedConsent || content.combinedConsent;\n }\n } else if ((this.noticeOnly || []).includes(country)) {\n preText =\n state === 'ca' || state === '' || typeof state === 'undefined'\n ? content.state?.[country]?.['ca']?.noticeOnly || content.noticeOnly\n : content.noticeOnly;\n }\n\n // 3. country content override if exists\n\n const countryContent = content.country?.[country];\n\n if (countryContent) {\n preText = !this.emailValid\n ? content.annualDefaultText\n : this.isAnnualPeriodExpired\n ? countryContent.combinedConsent\n : countryContent.annualText;\n }\n\n // 4. permission/suppression logic\n if (!(this.noticeOnly || []).includes(country)) {\n let isPermission = false;\n\n isPermission = this.values.EMAIL;\n\n const checked = isPermission;\n\n if (this.showCheckBox) {\n return this.renderCheckbox(preText, checked);\n }\n }\n\n return html`${unsafeHTML(preText)}`;\n }\n\n checkBoxLegalChange(event: Event) {\n const target = event.target as HTMLInputElement;\n if (!target) {\n return;\n }\n\n const isChecked = target.checked;\n\n // handle potential missing error element safely\n const errorEl =\n target.parentElement?.querySelector<HTMLSpanElement>('.nc-error');\n if (errorEl) {\n errorEl.style.display = isChecked ? 'none' : '';\n }\n\n const countryCode = this.country?.toLowerCase();\n const mandatoryCheckbox = this.ncData?.mandatoryCheckbox?.[countryCode];\n\n if (!mandatoryCheckbox) {\n console.warn('No mandatoryCheckbox for country:', countryCode);\n return;\n }\n\n const mrsField =\n mandatoryCheckbox.countryTransferText?.mrs_field ||\n mandatoryCheckbox.chinaPIPLtext?.mrs_field;\n\n if (!mrsField) {\n console.warn('No mrs_field found for country mandatory checkbox');\n return;\n }\n\n target.value = isChecked ? '1' : '0';\n this.preventFormSubmission = !isChecked;\n\n this._onChange(\n 'preventFormSubmission',\n isChecked ? 'formSubmissionYes' : 'formSubmissionNo'\n );\n this._onChange(\n mrsField,\n isChecked ? 'countyBasedCheckedYes' : 'countyBasedCheckedNo'\n );\n }\n\n countryBasedLegalNotice() {\n const countryCode = this.country.toLowerCase();\n const mandatoryCheckboxes = this.ncData?.mandatoryCheckbox?.[\n countryCode\n ] as Record<string, MandatoryCheckbox> | undefined;\n\n if (!mandatoryCheckboxes) {\n return [];\n }\n\n return Object.entries(mandatoryCheckboxes).map(([key, checkbox]) => {\n const legalTextName = key.replace(/([A-Z]+)/g, '-$1').toLowerCase();\n\n const errorTemplate =\n !this.hideErrorMessage && this.preventFormSubmission\n ? html`<span\n class=\"nc-error\"\n part=\"error\"\n style=\"color:#da1e28;font-size:.75rem\">\n ${checkbox.error}\n </span>`\n : null;\n\n return html`\n <span>\n <div\n class=\"${prefix}--form-item bx--checkbox-wrapper\"\n part=\"checkbox-wrapper checkbox-wrapper--mandatory\">\n <p part=${legalTextName} class=${legalTextName}>\n <input\n type=\"checkbox\"\n class=\"${prefix}--checkbox\"\n part=\"checkbox checkbox--mandatory\"\n id=\"${checkbox.mrs_field}\"\n name=\"${checkbox.mrs_field}\"\n @change=\"${this.checkBoxLegalChange}\" />\n <label\n for=\"${checkbox.mrs_field}\"\n class=\"${prefix}--checkbox-label ${prefix}--nc__checkbox-${checkbox.mrs_field}\"\n part=\"checkbox-label checkbox-label--mandatory\">\n <span\n class=\"${prefix}--checkbox-label-text\"\n part=\"checkbox-label-text checkbox-label-text--mandatory\"\n dir=\"auto\">\n ${checkbox.text}\n </span>\n </label>\n ${errorTemplate}\n </p>\n </div>\n </span>\n `;\n });\n }\n\n renderCombinedEmailPhoneSection() {\n const countryLower = this.country?.toLocaleLowerCase();\n const isNoticeOnly = (this.noticeOnly || []).includes(countryLower);\n\n const defaultCountryStatus = { email: 'opt-in', phone: 'opt-in' };\n const countryStatus =\n this.countrySettings?.[countryLower] || defaultCountryStatus;\n\n const getPunsStatus = (key: string, checked: boolean) => {\n if (isNoticeOnly) {\n return 'NOTICE_ONLY';\n }\n\n const checkboxStatus = this.valuesForEmailPhone[key]?.checkBoxStatus;\n\n if (checkboxStatus === 'SUPPRESSION') {\n return countryStatus.email === 'opt-out' ? 'CU' : 'UU';\n }\n return (\n this.valuesForEmailPhone[key]?.punsStatus || (checked ? 'CC' : 'UU')\n );\n };\n\n const createHiddenInput = (id: string, value: string) => html`\n <input type=\"hidden\" id=${id} name=${id} value=${value} />\n `;\n\n const hiddenInputs = Object.keys(this.checkboxes).map((key) => {\n const checked = this.values.EMAIL;\n const punsStatus = getPunsStatus(key, checked);\n\n let hiddenValue =\n this.values[key]?.checkBoxStatus ??\n (this.values.EMAIL ? 'PERMISSION' : 'SUPPRESSION');\n\n if (typeof checked !== 'object') {\n this.combinedEmailPhonePrechecked = !!checked;\n }\n\n if (isNoticeOnly) {\n hiddenValue =\n countryStatus.email === 'opt-out' ? 'PERMISSION' : 'SUPPRESSION';\n }\n\n const hiddenBoxId = `NC_HIDDEN_${key}`;\n\n this._onChange(\n `NC_${key === 'PHONE' ? 'TELE' : key}_DETAIL`,\n `${key}_${punsStatus}`\n );\n this._onChange(`${hiddenBoxId}_VALUE`, `NC_HIDDEN_${hiddenValue}`);\n\n if (Object.keys(this.checkboxes).length === 1) {\n this._onChange(`NC_HIDDEN_PHONE_VALUE`, `NC_HIDDEN_PHONE_NONE`);\n }\n\n return createHiddenInput(hiddenBoxId, hiddenValue);\n });\n\n return html`\n <section class=\"${prefix}--nc\" part=\"section\">\n <p part=\"ncHeading\" id=\"ncHeading\" class=\"${c4dPrefix}--nc__pre-text\">\n ${this.countryBasedLegalNotice()} ${this.combinedPreTextTemplate()}\n </p>\n ${hiddenInputs}\n <div part=\"${prefix}--nc__post-text\" class=\"${prefix}--nc__post-text\">\n ${this.postTextTemplate()}\n </div>\n ${createHiddenInput(\n 'preventFormSubmission',\n String(this.preventFormSubmission)\n )}\n </section>\n `;\n }\n\n pwsFieldsMap = new Map<string, string>([\n ['NC_HIDDEN_EMAIL', 'permission_email'],\n ['NC_HIDDEN_PHONE', 'permission_phone'],\n ['preventFormSubmission', 'preventFormSubmission'],\n ['Q_CHINA_PIPL', 'Q_CHINA_PIPL'],\n ['Q_COUNTRY_TRANSFER', 'Q_COUNTRY_TRANSFER'],\n ['NC_HIDDEN_EMAIL_VALUE', 'NC_HIDDEN_EMAIL'],\n ['NC_HIDDEN_PHONE_VALUE', 'NC_HIDDEN_PHONE'],\n ['EMAIL_CU', 'EMAIL_CU'],\n ['EMAIL_CC', 'EMAIL_CC'],\n ['EMAIL_UC', 'EMAIL_UC'],\n ['EMAIL_UU', 'EMAIL_UU'],\n ['PHONE_CU', 'PHONE_CU'],\n ['PHONE_CC', 'PHONE_CC'],\n ['PHONE_UC', 'PHONE_UC'],\n ['PHONE_UU', 'PHONE_UU'],\n ['EMAIL_NOTICE_ONLY', 'EMAIL_NOTICE_ONLY'],\n ['PHONE_NOTICE_ONLY', 'PHONE_NOTICE_ONLY'],\n ['NC_HIDDEN_PHONE_NONE', 'NC_HIDDEN_PHONE_NONE'],\n ]);\n\n /**\n * Dispatch field change event to parent form\n */\n private dispatchCustomEvent(\n eventName: string,\n field: string,\n value: string | null\n ): void {\n try {\n const eventDetail = {\n bubbles: true,\n detail: {\n field,\n value,\n },\n };\n\n this.dispatchEvent(new CustomEvent(eventName, eventDetail));\n } catch (error) {\n console.error(`[${eventName}] dispatch failed:`, error);\n }\n }\n\n _onChange(field: string, value: string | null): void {\n const mappedField = this.pwsFieldsMap?.get(field) ?? field;\n const mappedValue = pwsValueMap?.(value) ?? value;\n\n this.dispatchCustomEvent(\n `${c4dPrefix}-notice-choice-change`,\n mappedField,\n mappedValue\n );\n }\n\n _onEmailStatusChanged(field: string, value: string | null): void {\n this.dispatchCustomEvent(\n `${c4dPrefix}-notice-choice-email-status-changed`,\n field,\n value\n );\n }\n\n render() {\n if (this.isLoading) {\n return html`<div part=\"skeleton-notice-choice\">\n <cds-skeleton-text\n linecount=\"3\"\n width=\"100%\"\n paragraph=\"true\"></cds-skeleton-text>\n </div>`;\n }\n\n if (\n this.isMandatoryCheckboxDisplayed.isDisplayed &&\n this.country.toLocaleLowerCase() !==\n this.isMandatoryCheckboxDisplayed.countryCode\n ) {\n const mrsField = this.ncData?.mandatoryCheckbox[\n this.isMandatoryCheckboxDisplayed.countryCode\n ].countryTransferText\n ? this.ncData?.mandatoryCheckbox[\n this.isMandatoryCheckboxDisplayed.countryCode\n ].countryTransferText.mrs_field\n : this.ncData?.mandatoryCheckbox[\n this.isMandatoryCheckboxDisplayed.countryCode\n ].chinaPIPLtext.mrs_field;\n this._onChange(mrsField, 'countyBasedCheckedNo');\n }\n return this.renderCombinedEmailPhoneSection();\n }\n}\nexport default NoticeChoice;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"notice-choice.js","names":["loadContent","loadSettings","checkEmailStatus","html","LitElement","property","pwsValueMap","resetToWorldWideContent","settings","StableSelectorMixin","styles","unsafeHTML","carbonElement","customElement","prefix","stablePrefix","c4dPrefix","NoticeChoice","_decorate","_initialize","_StableSelectorMixin","constructor","args","F","d","kind","decorators","type","String","reflect","attribute","key","value","_t","_","Object","Boolean","countryCode","isDisplayed","_t2","_t3","EMAIL","PHONE","NC_HIDDEN_EMAIL","NC_HIDDEN_PHONE","checkBoxStatus","punsStatus","connectedCallback","_superPropGet","_initSettingsAndContent","language","static","updated","changedProps","forEach","oldValue","propName","newValue","hasValue","undefined","_dispatchChange","field","prepareCheckboxes","setDefaultSelections","_this$language","_this$language2","includes","environment","langPart","split","supportedLang","supportedLanguages","toLowerCase","isLoading","countrySettings","preferences","noticeOnly","err","console","error","ncData","defaultLoadContent","_this$countrySettings","countryChanged","enableAllOptIn","JSON","parse","hideErrorMessage","countryBasedLegalNotice","emailRegex","emailValid","test","trim","email","onEmailChange","showCheckBox","oneYearAgo","Date","now","isAnnualPeriodExpired","data","emailStatus","lastUpdated","annualPeriodDate","isValidDate","isNaN","getTime","isExpired","warn","_handleEmailCheckFailure","_onEmailStatusChanged","_objectSpread","responseData","expired","renderCombinedEmailPhoneSection","lang","defaultLang","toLocaleLowerCase","defaultLoadSettings","countryChangeAction","_this$country","_this$ncData","country","preventFormSubmission","mandatory","mandatoryCheckbox","_mandatory$countryTra","_mandatory$chinaPIPLt","mrsField","countryTransferText","mrs_field","chinaPIPLtext","_onChange","isMandatoryCheckboxDisplayed","postTextTemplate","OtherPreferences","trialPrivacyText","postText","termsConditionLink","strings","originalValue","matchedValue","match","anrTagHtml","replace","link","reg","RegExp","_t4","_t5","_this$country2","_this$countrySettings2","_this$countrySettings3","checkboxes","countryStatus","phone","newValues","values","keys","isOptOut","hiddenFieldName","prototype","hasOwnProperty","call","defaultValues","changed","some","_buildCheckboxes","_this$ncData2","_this$ncData3","fieldElements","fieldCollections","id","labelText","telephone","questionchoices","indexOf","newCheckboxes","performUpdate","countryPreferencesSettings","checkCombineEmailPhoneBoxChange","$event","checked","target","map","hiddenFieldStatus","valuesForEmailPhone","statusPrechecked","combinedEmailPhonePrechecked","renderCheckbox","preText","checkboxId","_t6","combinedPreTextTemplate","_this$country3","_this$state","_content$state","_content$country","_t7","content","state","annualDefaultText","combinedConsent","annualText","stateConfig","_stateConfig$ca","_stateConfig$state","_content$state2","countryContent","isPermission","_t8","checkBoxLegalChange","event","_target$parentElement","_this$country4","_this$ncData4","_mandatoryCheckbox$co","_mandatoryCheckbox$ch","isChecked","errorEl","parentElement","querySelector","style","display","_this$ncData5","mandatoryCheckboxes","entries","checkbox","legalTextName","errorTemplate","_t9","_t10","text","_this$country5","_this$countrySettings4","countryLower","isNoticeOnly","defaultCountryStatus","getPunsStatus","_this$valuesForEmailP","_this$valuesForEmailP2","checkboxStatus","createHiddenInput","_t11","hiddenInputs","_this$values$key$chec","_this$values$key","hiddenValue","hiddenBoxId","length","_t12","Map","dispatchCustomEvent","eventName","eventDetail","bubbles","detail","dispatchEvent","CustomEvent","_this$pwsFieldsMap$ge","_this$pwsFieldsMap","_pwsValueMap","mappedField","pwsFieldsMap","get","mappedValue","render","_t13","_this$ncData6","_this$ncData7","_this$ncData8"],"sources":["components/notice-choice/notice-choice.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 { loadContent, loadSettings, checkEmailStatus } from './services';\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { pwsValueMap, resetToWorldWideContent } from './utils';\nimport settings from '@carbon/ibmdotcom-utilities/es/utilities/settings/settings.js';\nimport StableSelectorMixin from '../../globals/mixins/stable-selector';\nimport styles from './notice-choice.scss';\nimport { unsafeHTML } from 'lit/directives/unsafe-html.js';\nimport { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';\nimport '@carbon/web-components/es/components/skeleton-text/index.js';\n\nconst { prefix, stablePrefix: c4dPrefix } = settings;\n\ninterface MandatoryCheckbox {\n text: string;\n mrs_field: string;\n error: string;\n}\n/**\n * Notice Choice\n *\n * @element c4d-notice-choice\n * @fires c4d-notice-choice-change\n * @fires c4d-notice-choice-email-status-changed\n * The custom event fired when default choice loaded or user change some preferences.\n * The field and value should be taken from the detail object and send it to MRS.\n * @csspart checkbox-wrapper - The checkbox wrapper. Usage `c4d-notice-choice::part(checkbox-wrapper)`\n * @csspart checkbox - An input checkbox. Usage `c4d-notice-choice::part(checkbox)`\n * @csspart checkbox-label - The checkbox label. Usage `c4d-notice-choice::part(checkbox-label)`\n * @csspart checkbox-label-text - The checkbox label text. Usage `c4d-notice-choice::part(checkbox-label-text)`\n * @csspart error - The error message. Usage `c4d-notice-choice::part(error)`\n * @csspart section - A section. Usage `c4d-notice-choice::part(section)`\n * @csspart container - The container. Usage `c4d-notice-choice::part(container)`\n * @csspart tooltip-link - The tooltip link. Usage `c4d-notice-choice::part(tooltip-link)`\n */\n@customElement(`c4d-notice-choice`)\nclass NoticeChoice extends StableSelectorMixin(LitElement) {\n /**\n * properties for passed attributes.\n */\n @property({ type: String, reflect: true, attribute: 'question-choices' })\n questionchoices = '1';\n\n @property({ type: String, attribute: 'email' })\n email = '';\n\n @property({ type: String, attribute: 'country' })\n country = 'US';\n\n @property({ type: String, attribute: 'state' })\n state = '';\n\n @property({ type: String, attribute: 'language' })\n language = 'en';\n\n @property({ type: String, attribute: 'terms-condition-link' })\n termsConditionLink = html``;\n\n @property({ type: String, attribute: 'enable-all-opt-in' })\n enableAllOptIn = 'false';\n\n @property({ type: String, attribute: 'hide-error-message' })\n hideErrorMessage = 'false';\n\n @property({ type: String, attribute: 'environment' })\n environment = 'prod';\n\n /**\n * End properties for passed attributes.\n */\n\n /**\n * properties for local state state management.\n */\n @property({ attribute: 'default-values' })\n defaultValues = {};\n\n @property({ type: Object, attribute: false })\n checkboxes = {};\n\n @property({ type: Object, attribute: false })\n ncData: any;\n\n @property({ type: Boolean, attribute: false })\n changed = false;\n\n @property({ type: String, attribute: false })\n fetchedPref = '';\n\n @property({ type: Object, attribute: false })\n optInContent = {};\n\n @property({ type: Boolean, attribute: false })\n preventFormSubmission = false;\n\n @property({ type: Object, attribute: false })\n isMandatoryCheckboxDisplayed = { countryCode: '', isDisplayed: false };\n\n @property({ type: Object, attribute: false })\n countrySettings: any;\n\n @property({ type: Object, attribute: false })\n noticeOnly: any;\n\n @property({ type: Boolean, attribute: false })\n emailValid = false;\n\n @property({ type: Boolean, attribute: false })\n telephonePrechecked = false;\n\n @property({ type: Boolean, attribute: false })\n combinedEmailPhonePrechecked = false;\n\n @property({ type: Boolean, attribute: false })\n isAnnualPeriodExpired = true;\n\n @property({ type: Boolean, attribute: false })\n showCheckBox = false;\n\n @property({ type: Boolean, attribute: false })\n isLoading = false;\n\n @property({ type: html, attribute: false })\n preText = html``;\n\n @property({ type: html, attribute: false })\n defaultPreText = html``;\n\n @property({ type: Object, attribute: false })\n values = {\n EMAIL: false,\n PHONE: false,\n NC_HIDDEN_EMAIL: 'SUPPRESSION',\n NC_HIDDEN_PHONE: 'SUPPRESSION',\n };\n\n @property({ type: Object, attribute: false })\n valuesForEmailPhone = {\n EMAIL: {\n checkBoxStatus: 'PERMISSION',\n punsStatus: '',\n },\n };\n\n @property({ reflect: true })\n hiddenEmail = '';\n\n @property({ reflect: true })\n hiddenPhone = '';\n\n @property({ type: Object, attribute: false })\n supportedLanguages = {};\n\n connectedCallback() {\n super.connectedCallback();\n this._initSettingsAndContent(this.language);\n }\n\n static get stableSelector() {\n return `${c4dPrefix}--notice-choice`;\n }\n static styles = styles;\n\n updated(changedProps: Map<string, unknown>) {\n changedProps.forEach((oldValue, propName) => {\n const newValue = (this as any)[propName];\n const hasValue = newValue !== undefined && newValue !== null;\n this._dispatchChange(propName, newValue, hasValue, oldValue);\n });\n }\n\n private _dispatchChange(\n field: string,\n value: unknown,\n hasValue: boolean,\n oldValue?: unknown\n ) {\n switch (field) {\n case 'questionchoices': {\n this.prepareCheckboxes();\n this.setDefaultSelections();\n break;\n }\n\n case 'language':\n case 'environment': {\n if (['stage', 'prod'].includes(value as string)) {\n this.environment = value as string;\n } else {\n this.language = value as string;\n }\n const langPart = (this.language as string | undefined)?.split(\n /[-_]/\n )[0];\n const supportedLang =\n (this.language &&\n this.supportedLanguages[this.language?.toLowerCase()]) ||\n (langPart && this.supportedLanguages[langPart?.toLowerCase()]) ||\n 'en';\n\n this.isLoading = true;\n loadSettings(\n this.environment,\n (settings) => {\n this.countrySettings = settings.preferences;\n this.noticeOnly = settings.noticeOnly || ['us'];\n this.supportedLanguages = settings.supportedLanguages || {};\n },\n (err) => console.error('error loading settings', err)\n );\n\n loadContent(\n supportedLang,\n this.environment,\n (ncData) => {\n this.isLoading = false;\n this.ncData = ncData;\n this.prepareCheckboxes();\n },\n () => this.defaultLoadContent()\n );\n break;\n }\n\n case 'country': {\n if (\n hasValue &&\n typeof value === 'string' &&\n oldValue !== value &&\n this.countrySettings?.[value.toLowerCase()]\n ) {\n this.countryChanged();\n }\n break;\n }\n\n case 'enableAllOptIn': {\n if (oldValue !== value && typeof value === 'string') {\n this.enableAllOptIn = JSON.parse(value);\n this.setDefaultSelections();\n }\n break;\n }\n\n case 'hideErrorMessage': {\n if (oldValue !== value && typeof value === 'string') {\n this.hideErrorMessage = JSON.parse(value);\n this.countryBasedLegalNotice();\n }\n break;\n }\n\n case 'email': {\n const emailRegex = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n this.emailValid = false;\n if (\n hasValue &&\n oldValue !== value &&\n typeof value === 'string' &&\n emailRegex.test(value.trim()) &&\n value.trim() !== ''\n ) {\n this.email = value.trim();\n this.onEmailChange();\n } else {\n this.showCheckBox = false;\n }\n break;\n }\n }\n }\n onEmailChange() {\n const email = this.email;\n const oneYearAgo = new Date(Date.now() - 365 * 24 * 60 * 60 * 1000);\n\n this.isAnnualPeriodExpired = true;\n this.isLoading = true;\n\n checkEmailStatus(\n email,\n this.environment,\n (data) => {\n this.isLoading = false;\n this.emailValid = true;\n const { email: emailStatus, lastUpdated } = data;\n const annualPeriodDate = new Date(lastUpdated);\n\n const isValidDate = !isNaN(annualPeriodDate.getTime());\n const isExpired =\n isValidDate && emailStatus === 'P' && annualPeriodDate < oneYearAgo;\n\n // If bad date, treat as expired\n if (!isValidDate) {\n console.warn('Invalid annualPeriod:', lastUpdated);\n this.isAnnualPeriodExpired = true;\n this._handleEmailCheckFailure(data, true);\n return;\n }\n\n this.isAnnualPeriodExpired = emailStatus !== 'P' || isExpired;\n this.showCheckBox = isExpired || emailStatus !== 'P';\n\n this._onEmailStatusChanged('emailStats', {\n ...data,\n isAnnualPeriodExpired: isExpired,\n });\n },\n (error) => {\n this.emailValid = true;\n this.isLoading = false;\n console.error('checkEmailStatus error:', error);\n this._handleEmailCheckFailure(error, true);\n }\n );\n }\n\n /**\n * Centralized handler for failed or invalid responses.\n */\n private _handleEmailCheckFailure(responseData: any, expired: boolean) {\n this.isAnnualPeriodExpired = expired;\n this.showCheckBox = true;\n this.renderCombinedEmailPhoneSection();\n this._onEmailStatusChanged('emailStats', {\n ...responseData,\n isAnnualPeriodExpired: expired,\n });\n }\n\n private _initSettingsAndContent(language: string) {\n const [lang] = language.split(/[-_]/);\n const defaultLang =\n this.supportedLanguages[language?.toLocaleLowerCase()] ||\n this.supportedLanguages[lang?.toLocaleLowerCase()] ||\n 'en';\n\n loadSettings(\n this.environment,\n (settings) => {\n this.countrySettings = settings.preferences;\n this.noticeOnly = settings.noticeOnly || ['us'];\n this.supportedLanguages = settings.supportedLanguages || {};\n },\n () => this.defaultLoadSettings()\n );\n\n loadContent(\n defaultLang,\n this.environment,\n (ncData) => {\n this.ncData = ncData;\n this.prepareCheckboxes();\n this.countryChanged();\n },\n () => this.defaultLoadContent()\n );\n }\n\n countryChangeAction() {\n const countryCode = this.country?.toLowerCase();\n this.preventFormSubmission = false;\n\n const mandatory = this.ncData?.mandatoryCheckbox?.[countryCode];\n this.setDefaultSelections();\n if (mandatory) {\n // determine which field to update\n const mrsField =\n mandatory.countryTransferText?.mrs_field ||\n mandatory.chinaPIPLtext?.mrs_field;\n\n if (mrsField) {\n this._onChange(mrsField, 'countyBasedCheckedNo');\n }\n\n this.isMandatoryCheckboxDisplayed = {\n countryCode,\n isDisplayed: true,\n };\n\n this.preventFormSubmission = true;\n\n this._onChange('preventFormSubmission', 'formSubmissionNo');\n } else {\n this._onChange('preventFormSubmission', 'formSubmissionYes');\n }\n }\n\n postTextTemplate() {\n if (this.ncData) {\n const OtherPreferences = this.ncData.trialPrivacyText;\n let postText = this.ncData.postText;\n\n if (postText) {\n postText = '<p part=\"ncPostText\">' + postText + '</p>';\n }\n\n if (!this.termsConditionLink.strings && this.termsConditionLink) {\n const originalValue = OtherPreferences;\n const matchedValue = originalValue.match(/<tc>.*<\\/tc>/g);\n if (matchedValue) {\n const anrTagHtml = matchedValue[0].replace(/<tc>|<\\/tc>/g, '');\n const link = `<a href='${this.termsConditionLink}' target='_blank' class='ibm-tooltip' part=\"tooltip-link\">${anrTagHtml}</a>`;\n const reg = new RegExp('<tc>' + anrTagHtml + '</tc>', 'g');\n\n postText =\n postText +\n originalValue\n .replace(reg, link)\n .replace(/<p>/g, '<p part=\"nc-trial-text\" id=\"nc-trial-text\">');\n }\n }\n if (postText !== '') {\n postText =\n \"<div part='ncPostTextContainer' id='ncPostTextContainer'>\" +\n postText +\n '</div>';\n }\n return html`${unsafeHTML(postText)}`;\n } else {\n return html``;\n }\n }\n\n countryChanged() {\n resetToWorldWideContent();\n this.countryChangeAction();\n }\n\n setDefaultSelections() {\n if (this.enableAllOptIn || !this.checkboxes) {\n return;\n }\n\n const countryCode = this.country?.toLowerCase();\n const countryStatus = this.countrySettings?.[countryCode] ?? {\n email: 'opt-in',\n phone: 'opt-in',\n };\n\n const newValues = { ...this.values };\n for (const key of Object.keys(this.checkboxes)) {\n const isOptOut = countryStatus[key.toLowerCase()] === 'opt-out';\n newValues[key] = isOptOut;\n\n const hiddenFieldName = `NC_HIDDEN_${key}`;\n newValues[hiddenFieldName] = isOptOut ? 'OPT_OUT' : 'OPT_IN';\n\n if (Object.prototype.hasOwnProperty.call(this.defaultValues, key)) {\n newValues[key] = this.defaultValues[key];\n }\n\n this._onChange(hiddenFieldName, newValues[key] ? 'OPT_IN' : 'OPT_OUT');\n }\n\n const changed = Object.keys(newValues).some(\n (field) => newValues[field] !== this.values[field]\n );\n if (changed) {\n this.values = newValues;\n }\n }\n\n protected _buildCheckboxes() {\n const fieldElements: any = {};\n const fieldCollections = {\n EMAIL: {\n id: 'EMAIL',\n labelText: this.ncData?.email,\n },\n PHONE: {\n id: 'PHONE',\n labelText: this.ncData?.telephone,\n },\n };\n if (this.questionchoices) {\n // by email\n if (this.questionchoices.indexOf('1') > -1) {\n fieldElements.EMAIL = fieldCollections.EMAIL;\n }\n // by Phone\n if (this.questionchoices.indexOf('2') > -1) {\n fieldElements.PHONE = fieldCollections.PHONE;\n }\n }\n return fieldElements;\n }\n\n prepareCheckboxes() {\n if (this.ncData) {\n const newCheckboxes = this._buildCheckboxes();\n this.checkboxes = newCheckboxes;\n this.performUpdate();\n }\n }\n\n defaultLoadContent() {\n loadContent(\n 'en',\n this.environment,\n (ncData) => {\n this.ncData = ncData;\n this.prepareCheckboxes();\n this.countryChanged();\n },\n (error) => {\n this.isLoading = false;\n console.error('error loading content', error);\n }\n );\n }\n\n defaultLoadSettings() {\n loadSettings(\n this.environment,\n (countryPreferencesSettings) => {\n this.countrySettings = countryPreferencesSettings.preferences;\n this.noticeOnly = countryPreferencesSettings.noticeOnly || ['us'];\n this.supportedLanguages = settings.supportedLanguages || {};\n },\n (error) => {\n console.error('error loading content', error);\n }\n );\n }\n\n checkCombineEmailPhoneBoxChange($event: any) {\n const checked = $event.target.checked;\n const newValues = {\n ...this.values,\n };\n this.changed = true;\n\n Object.keys(this.checkboxes).map((id) => {\n newValues[id] = !!checked;\n this.values = newValues;\n\n const hiddenFieldName = `NC_HIDDEN_${id}`;\n const hiddenFieldStatus = checked ? 'PERMISSION' : 'SUPPRESSION';\n\n this.valuesForEmailPhone[id]['checkBoxStatus'] = hiddenFieldStatus;\n let statusPrechecked = '';\n switch (id) {\n case 'EMAIL':\n case 'PHONE':\n statusPrechecked =\n this.combinedEmailPhonePrechecked && !checked\n ? 'CU'\n : !this.combinedEmailPhonePrechecked && checked\n ? 'UC'\n : this.combinedEmailPhonePrechecked && checked\n ? 'CC'\n : 'UU';\n\n break;\n }\n this.valuesForEmailPhone[id]['punsStatus'] = statusPrechecked;\n\n this._onChange(hiddenFieldName, hiddenFieldStatus);\n this._onChange(\n `${hiddenFieldName}_VALUE`,\n `NC_HIDDEN_${hiddenFieldStatus}`\n );\n });\n }\n\n renderCheckbox(preText, checked) {\n const checkboxId = 'EMAIL_PHONE_CHECKBOX';\n return html`\n <span part=\"container\">\n <div\n class=\"${prefix}--form-item cds--checkbox-wrapper\"\n part=\"checkbox-wrapper\">\n <input\n type=\"checkbox\"\n class=\"${prefix}--checkbox\"\n part=\"checkbox\"\n id=\"${checkboxId}\"\n name=\"${checkboxId}\"\n ?checked=\"${checked}\"\n @change=\"${this.checkCombineEmailPhoneBoxChange}\" />\n <label\n for=\"${checkboxId}\"\n class=\"${prefix}--checkbox-label ${prefix}--nc__checkbox-${checkboxId}\"\n part=\"checkbox-label\">\n <span\n class=\"${prefix}--checkbox-label-text\"\n part=\"checkbox-label-text\"\n dir=\"auto\">\n ${unsafeHTML(preText)}\n </span>\n </label>\n </div>\n </span>\n `;\n }\n\n combinedPreTextTemplate() {\n if (!this.ncData) {\n return html``;\n }\n\n const content = this.ncData;\n const country = this.country?.toLowerCase() || '';\n const state = this.state?.toLowerCase() || '';\n let preText = '';\n\n // 1. Base text depending on email\n if (!this.emailValid) {\n preText = content.annualDefaultText;\n } else {\n preText = this.showCheckBox\n ? content.combinedConsent\n : content.annualText;\n }\n\n // 2. country+state specific override\n const stateConfig = content.state?.[country];\n if (stateConfig) {\n if ((this.noticeOnly || []).includes(country)) {\n preText =\n state === 'ca' || state === ''\n ? stateConfig['ca']?.noticeOnly || content.noticeOnly\n : content.noticeOnly;\n } else {\n preText =\n stateConfig[state]?.combinedConsent || content.combinedConsent;\n }\n } else if ((this.noticeOnly || []).includes(country)) {\n preText =\n state === 'ca' || state === '' || typeof state === 'undefined'\n ? content.state?.[country]?.['ca']?.noticeOnly || content.noticeOnly\n : content.noticeOnly;\n }\n\n // 3. country content override if exists\n\n const countryContent = content.country?.[country];\n\n if (countryContent) {\n preText = !this.emailValid\n ? content.annualDefaultText\n : this.isAnnualPeriodExpired\n ? countryContent.combinedConsent\n : countryContent.annualText;\n }\n\n // 4. permission/suppression logic\n if (!(this.noticeOnly || []).includes(country)) {\n let isPermission = false;\n\n isPermission = this.values.EMAIL;\n\n const checked = isPermission;\n\n if (this.showCheckBox) {\n return this.renderCheckbox(preText, checked);\n }\n }\n\n return html`${unsafeHTML(preText)}`;\n }\n\n checkBoxLegalChange(event: Event) {\n const target = event.target as HTMLInputElement;\n if (!target) {\n return;\n }\n\n const isChecked = target.checked;\n\n // handle potential missing error element safely\n const errorEl =\n target.parentElement?.querySelector<HTMLSpanElement>('.nc-error');\n if (errorEl) {\n errorEl.style.display = isChecked ? 'none' : '';\n }\n\n const countryCode = this.country?.toLowerCase();\n const mandatoryCheckbox = this.ncData?.mandatoryCheckbox?.[countryCode];\n\n if (!mandatoryCheckbox) {\n console.warn('No mandatoryCheckbox for country:', countryCode);\n return;\n }\n\n const mrsField =\n mandatoryCheckbox.countryTransferText?.mrs_field ||\n mandatoryCheckbox.chinaPIPLtext?.mrs_field;\n\n if (!mrsField) {\n console.warn('No mrs_field found for country mandatory checkbox');\n return;\n }\n\n target.value = isChecked ? '1' : '0';\n this.preventFormSubmission = !isChecked;\n\n this._onChange(\n 'preventFormSubmission',\n isChecked ? 'formSubmissionYes' : 'formSubmissionNo'\n );\n this._onChange(\n mrsField,\n isChecked ? 'countyBasedCheckedYes' : 'countyBasedCheckedNo'\n );\n }\n\n countryBasedLegalNotice() {\n const countryCode = this.country.toLowerCase();\n const mandatoryCheckboxes = this.ncData?.mandatoryCheckbox?.[\n countryCode\n ] as Record<string, MandatoryCheckbox> | undefined;\n\n if (!mandatoryCheckboxes) {\n return [];\n }\n\n return Object.entries(mandatoryCheckboxes).map(([key, checkbox]) => {\n const legalTextName = key.replace(/([A-Z]+)/g, '-$1').toLowerCase();\n\n const errorTemplate =\n !this.hideErrorMessage && this.preventFormSubmission\n ? html`<span\n class=\"nc-error\"\n part=\"error\"\n style=\"color:#da1e28;font-size:.75rem\">\n ${checkbox.error}\n </span>`\n : null;\n\n return html`\n <span>\n <div\n class=\"${prefix}--form-item bx--checkbox-wrapper\"\n part=\"checkbox-wrapper checkbox-wrapper--mandatory\">\n <p part=${legalTextName} class=${legalTextName}>\n <input\n type=\"checkbox\"\n class=\"${prefix}--checkbox\"\n part=\"checkbox checkbox--mandatory\"\n id=\"${checkbox.mrs_field}\"\n name=\"${checkbox.mrs_field}\"\n @change=\"${this.checkBoxLegalChange}\" />\n <label\n for=\"${checkbox.mrs_field}\"\n class=\"${prefix}--checkbox-label ${prefix}--nc__checkbox-${checkbox.mrs_field}\"\n part=\"checkbox-label checkbox-label--mandatory\">\n <span\n class=\"${prefix}--checkbox-label-text\"\n part=\"checkbox-label-text checkbox-label-text--mandatory\"\n dir=\"auto\">\n ${checkbox.text}\n </span>\n </label>\n ${errorTemplate}\n </p>\n </div>\n </span>\n `;\n });\n }\n\n renderCombinedEmailPhoneSection() {\n const countryLower = this.country?.toLocaleLowerCase();\n const isNoticeOnly = (this.noticeOnly || []).includes(countryLower);\n\n const defaultCountryStatus = { email: 'opt-in', phone: 'opt-in' };\n const countryStatus =\n this.countrySettings?.[countryLower] || defaultCountryStatus;\n\n const getPunsStatus = (key: string, checked: boolean) => {\n if (isNoticeOnly) {\n return 'NOTICE_ONLY';\n }\n\n const checkboxStatus = this.valuesForEmailPhone[key]?.checkBoxStatus;\n\n if (checkboxStatus === 'SUPPRESSION') {\n return countryStatus.email === 'opt-out' ? 'CU' : 'UU';\n }\n return (\n this.valuesForEmailPhone[key]?.punsStatus || (checked ? 'CC' : 'UU')\n );\n };\n\n const createHiddenInput = (id: string, value: string) => html`\n <input type=\"hidden\" id=${id} name=${id} value=${value} />\n `;\n\n const hiddenInputs = Object.keys(this.checkboxes).map((key) => {\n const checked = this.values.EMAIL;\n const punsStatus = getPunsStatus(key, checked);\n\n let hiddenValue =\n this.values[key]?.checkBoxStatus ??\n (this.values.EMAIL ? 'PERMISSION' : 'SUPPRESSION');\n\n if (typeof checked !== 'object') {\n this.combinedEmailPhonePrechecked = !!checked;\n }\n\n if (isNoticeOnly) {\n hiddenValue =\n countryStatus.email === 'opt-out' ? 'PERMISSION' : 'SUPPRESSION';\n }\n\n const hiddenBoxId = `NC_HIDDEN_${key}`;\n\n this._onChange(\n `NC_${key === 'PHONE' ? 'TELE' : key}_DETAIL`,\n `${key}_${punsStatus}`\n );\n this._onChange(`${hiddenBoxId}_VALUE`, `NC_HIDDEN_${hiddenValue}`);\n\n if (Object.keys(this.checkboxes).length === 1) {\n this._onChange(`NC_HIDDEN_PHONE_VALUE`, `NC_HIDDEN_PHONE_NONE`);\n }\n\n return createHiddenInput(hiddenBoxId, hiddenValue);\n });\n\n return html`\n <section class=\"${prefix}--nc\" part=\"section\">\n <p part=\"ncHeading\" id=\"ncHeading\" class=\"${c4dPrefix}--nc__pre-text\">\n ${this.countryBasedLegalNotice()} ${this.combinedPreTextTemplate()}\n </p>\n ${hiddenInputs}\n <div part=\"${prefix}--nc__post-text\" class=\"${prefix}--nc__post-text\">\n ${this.postTextTemplate()}\n </div>\n ${createHiddenInput(\n 'preventFormSubmission',\n String(this.preventFormSubmission)\n )}\n </section>\n `;\n }\n\n pwsFieldsMap = new Map<string, string>([\n ['NC_HIDDEN_EMAIL', 'permission_email'],\n ['NC_HIDDEN_PHONE', 'permission_phone'],\n ['preventFormSubmission', 'preventFormSubmission'],\n ['Q_CHINA_PIPL', 'Q_CHINA_PIPL'],\n ['Q_COUNTRY_TRANSFER', 'Q_COUNTRY_TRANSFER'],\n ['NC_HIDDEN_EMAIL_VALUE', 'NC_HIDDEN_EMAIL'],\n ['NC_HIDDEN_PHONE_VALUE', 'NC_HIDDEN_PHONE'],\n ['EMAIL_CU', 'EMAIL_CU'],\n ['EMAIL_CC', 'EMAIL_CC'],\n ['EMAIL_UC', 'EMAIL_UC'],\n ['EMAIL_UU', 'EMAIL_UU'],\n ['PHONE_CU', 'PHONE_CU'],\n ['PHONE_CC', 'PHONE_CC'],\n ['PHONE_UC', 'PHONE_UC'],\n ['PHONE_UU', 'PHONE_UU'],\n ['EMAIL_NOTICE_ONLY', 'EMAIL_NOTICE_ONLY'],\n ['PHONE_NOTICE_ONLY', 'PHONE_NOTICE_ONLY'],\n ['NC_HIDDEN_PHONE_NONE', 'NC_HIDDEN_PHONE_NONE'],\n ]);\n\n /**\n * Dispatch field change event to parent form\n */\n private dispatchCustomEvent(\n eventName: string,\n field: string,\n value: string | null\n ): void {\n try {\n const eventDetail = {\n bubbles: true,\n detail: {\n field,\n value,\n },\n };\n\n this.dispatchEvent(new CustomEvent(eventName, eventDetail));\n } catch (error) {\n console.error(`[${eventName}] dispatch failed:`, error);\n }\n }\n\n _onChange(field: string, value: string | null): void {\n const mappedField = this.pwsFieldsMap?.get(field) ?? field;\n const mappedValue = pwsValueMap?.(value) ?? value;\n\n this.dispatchCustomEvent(\n `${c4dPrefix}-notice-choice-change`,\n mappedField,\n mappedValue\n );\n }\n\n _onEmailStatusChanged(field: string, value: string | null): void {\n this.dispatchCustomEvent(\n `${c4dPrefix}-notice-choice-email-status-changed`,\n field,\n value\n );\n }\n\n render() {\n if (this.isLoading) {\n return html`<div part=\"skeleton-notice-choice\">\n <cds-skeleton-text\n linecount=\"3\"\n width=\"100%\"\n paragraph=\"true\"></cds-skeleton-text>\n </div>`;\n }\n\n if (\n this.isMandatoryCheckboxDisplayed.isDisplayed &&\n this.country.toLocaleLowerCase() !==\n this.isMandatoryCheckboxDisplayed.countryCode\n ) {\n const mrsField = this.ncData?.mandatoryCheckbox[\n this.isMandatoryCheckboxDisplayed.countryCode\n ].countryTransferText\n ? this.ncData?.mandatoryCheckbox[\n this.isMandatoryCheckboxDisplayed.countryCode\n ].countryTransferText.mrs_field\n : this.ncData?.mandatoryCheckbox[\n this.isMandatoryCheckboxDisplayed.countryCode\n ].chinaPIPLtext.mrs_field;\n this._onChange(mrsField, 'countyBasedCheckedNo');\n }\n return this.renderCombinedEmailPhoneSection();\n }\n}\nexport default NoticeChoice;\n"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,5 @@ declare global {
12
12
  export declare function getNcContentFromWindow(): any;
13
13
  export declare function resetToWorldWideContent(): void;
14
14
  export declare function pwsValueMap(value: any): any;
15
- export declare function supportedLanguages(language: any): any;
16
15
 
17
16
  //# sourceMappingURL=utils.d.ts.map
@@ -47,46 +47,4 @@ export function pwsValueMap(value) {
47
47
  NC_HIDDEN_PHONE_NONE: 'N'
48
48
  }[value] || null;
49
49
  }
50
- export function supportedLanguages(language) {
51
- const languageMapping = {
52
- en: 'en',
53
- fr: 'fr',
54
- 'zh-cn': 'zh-cn',
55
- zh: 'zh-cn',
56
- de: 'de',
57
- id: 'id',
58
- it: 'it',
59
- ja: 'ja',
60
- ko: 'ko',
61
- pt: 'pt',
62
- 'es-la': 'es-la',
63
- es: 'es',
64
- ar: 'ar',
65
- 'zh-tw': 'zh-tw',
66
- 'es-es': 'es',
67
- el: 'el',
68
- hu: 'hu',
69
- he: 'he',
70
- ms: 'ms',
71
- pl: 'pl',
72
- sl: 'sl',
73
- tr: 'tr',
74
- uk: 'uk',
75
- bg: 'bg',
76
- cs: 'cs',
77
- da: 'da',
78
- et: 'et',
79
- fi: 'fi',
80
- hr: 'hr',
81
- lt: 'lt',
82
- lv: 'lv',
83
- nl: 'nl',
84
- no: 'no',
85
- ro: 'ro',
86
- sk: 'sk',
87
- sr: 'sr',
88
- vi: 'vi'
89
- };
90
- return languageMapping[language.toLocaleLowerCase()];
91
- }
92
50
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["getNcContentFromWindow","content","window","NoticeChoice","Content","e","resetToWorldWideContent","console","log","pwsValueMap","value","OPT_IN","OPT_OUT","PERMISSION","SUPPRESSION","formSubmissionYes","formSubmissionNo","countyBasedCheckedYes","countyBasedCheckedNo","NC_HIDDEN_PERMISSION","NC_HIDDEN_SUPPRESSION","EMAIL_CU","EMAIL_CC","EMAIL_UU","EMAIL_UC","PHONE_CU","PHONE_CC","PHONE_UC","PHONE_UU","EMAIL_NOTICE_ONLY","PHONE_NOTICE_ONLY","NC_HIDDEN_PHONE_NONE","supportedLanguages","language","languageMapping","en","fr","zh","de","id","it","ja","ko","pt","es","ar","el","hu","he","ms","pl","sl","tr","uk","bg","cs","da","et","fi","hr","lt","lv","nl","no","ro","sk","sr","vi","toLocaleLowerCase"],"sources":["components/notice-choice/utils.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2022, 2023\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\ndeclare global {\n interface Window {\n NoticeChoice: any;\n }\n}\n\nexport function getNcContentFromWindow() {\n let content: any;\n try {\n content = window.NoticeChoice.Content;\n } catch (e) {\n content = {};\n }\n return content;\n}\nexport function resetToWorldWideContent() {\n try {\n window.NoticeChoice = window.NoticeChoice || {};\n window.NoticeChoice = window.NoticeChoice || {};\n } catch (e) {\n console.log('unable to set worldWideContent', e);\n }\n}\nexport function pwsValueMap(value) {\n return (\n {\n OPT_IN: 'yes',\n OPT_OUT: 'no',\n PERMISSION: 'yes',\n SUPPRESSION: 'no',\n formSubmissionYes: 'false',\n formSubmissionNo: 'true',\n countyBasedCheckedYes: 'true',\n countyBasedCheckedNo: 'false',\n NC_HIDDEN_PERMISSION: 'PERMISSION',\n NC_HIDDEN_SUPPRESSION: 'SUPPRESSION',\n EMAIL_CU: 'CU',\n EMAIL_CC: 'CC',\n EMAIL_UU: 'UU',\n EMAIL_UC: 'UC',\n PHONE_CU: 'CU',\n PHONE_CC: 'CC',\n PHONE_UC: 'UC',\n PHONE_UU: 'UU',\n EMAIL_NOTICE_ONLY: 'NOTICE_ONLY',\n PHONE_NOTICE_ONLY: 'NOTICE_ONLY',\n NC_HIDDEN_PHONE_NONE: 'N',\n }[value] || null\n );\n}\n\nexport function supportedLanguages(language) {\n const languageMapping = {\n en: 'en',\n fr: 'fr',\n 'zh-cn': 'zh-cn',\n zh: 'zh-cn',\n de: 'de',\n id: 'id',\n it: 'it',\n ja: 'ja',\n ko: 'ko',\n pt: 'pt',\n 'es-la': 'es-la',\n es: 'es',\n ar: 'ar',\n 'zh-tw': 'zh-tw',\n 'es-es': 'es',\n el: 'el',\n hu: 'hu',\n he: 'he',\n ms: 'ms',\n pl: 'pl',\n sl: 'sl',\n tr: 'tr',\n uk: 'uk',\n bg: 'bg',\n cs: 'cs',\n da: 'da',\n et: 'et',\n fi: 'fi',\n hr: 'hr',\n lt: 'lt',\n lv: 'lv',\n nl: 'nl',\n no: 'no',\n ro: 'ro',\n sk: 'sk',\n sr: 'sr',\n vi: 'vi',\n };\n return languageMapping[language.toLocaleLowerCase()];\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;;AAQA,OAAO,SAASA,sBAAsBA,CAAA,EAAG;EACvC,IAAIC,OAAY;EAChB,IAAI;IACFA,OAAO,GAAGC,MAAM,CAACC,YAAY,CAACC,OAAO;EACvC,CAAC,CAAC,OAAOC,CAAC,EAAE;IACVJ,OAAO,GAAG,CAAC,CAAC;EACd;EACA,OAAOA,OAAO;AAChB;AACA,OAAO,SAASK,uBAAuBA,CAAA,EAAG;EACxC,IAAI;IACFJ,MAAM,CAACC,YAAY,GAAGD,MAAM,CAACC,YAAY,IAAI,CAAC,CAAC;IAC/CD,MAAM,CAACC,YAAY,GAAGD,MAAM,CAACC,YAAY,IAAI,CAAC,CAAC;EACjD,CAAC,CAAC,OAAOE,CAAC,EAAE;IACVE,OAAO,CAACC,GAAG,CAAC,gCAAgC,EAAEH,CAAC,CAAC;EAClD;AACF;AACA,OAAO,SAASI,WAAWA,CAACC,KAAK,EAAE;EACjC,OACE;IACEC,MAAM,EAAE,KAAK;IACbC,OAAO,EAAE,IAAI;IACbC,UAAU,EAAE,KAAK;IACjBC,WAAW,EAAE,IAAI;IACjBC,iBAAiB,EAAE,OAAO;IAC1BC,gBAAgB,EAAE,MAAM;IACxBC,qBAAqB,EAAE,MAAM;IAC7BC,oBAAoB,EAAE,OAAO;IAC7BC,oBAAoB,EAAE,YAAY;IAClCC,qBAAqB,EAAE,aAAa;IACpCC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,iBAAiB,EAAE,aAAa;IAChCC,iBAAiB,EAAE,aAAa;IAChCC,oBAAoB,EAAE;EACxB,CAAC,CAACrB,KAAK,CAAC,IAAI,IAAI;AAEpB;AAEA,OAAO,SAASsB,kBAAkBA,CAACC,QAAQ,EAAE;EAC3C,MAAMC,eAAe,GAAG;IACtBC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACR,OAAO,EAAE,OAAO;IAChBC,EAAE,EAAE,OAAO;IACXC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACR,OAAO,EAAE,OAAO;IAChBC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACR,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,IAAI;IACbC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE,IAAI;IACRC,EAAE,EAAE;EACN,CAAC;EACD,OAAOjC,eAAe,CAACD,QAAQ,CAACmC,iBAAiB,CAAC,CAAC,CAAC;AACtD","ignoreList":[]}
1
+ {"version":3,"file":"utils.js","names":["getNcContentFromWindow","content","window","NoticeChoice","Content","e","resetToWorldWideContent","console","log","pwsValueMap","value","OPT_IN","OPT_OUT","PERMISSION","SUPPRESSION","formSubmissionYes","formSubmissionNo","countyBasedCheckedYes","countyBasedCheckedNo","NC_HIDDEN_PERMISSION","NC_HIDDEN_SUPPRESSION","EMAIL_CU","EMAIL_CC","EMAIL_UU","EMAIL_UC","PHONE_CU","PHONE_CC","PHONE_UC","PHONE_UU","EMAIL_NOTICE_ONLY","PHONE_NOTICE_ONLY","NC_HIDDEN_PHONE_NONE"],"sources":["components/notice-choice/utils.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2022, 2023\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\ndeclare global {\n interface Window {\n NoticeChoice: any;\n }\n}\n\nexport function getNcContentFromWindow() {\n let content: any;\n try {\n content = window.NoticeChoice.Content;\n } catch (e) {\n content = {};\n }\n return content;\n}\nexport function resetToWorldWideContent() {\n try {\n window.NoticeChoice = window.NoticeChoice || {};\n window.NoticeChoice = window.NoticeChoice || {};\n } catch (e) {\n console.log('unable to set worldWideContent', e);\n }\n}\nexport function pwsValueMap(value) {\n return (\n {\n OPT_IN: 'yes',\n OPT_OUT: 'no',\n PERMISSION: 'yes',\n SUPPRESSION: 'no',\n formSubmissionYes: 'false',\n formSubmissionNo: 'true',\n countyBasedCheckedYes: 'true',\n countyBasedCheckedNo: 'false',\n NC_HIDDEN_PERMISSION: 'PERMISSION',\n NC_HIDDEN_SUPPRESSION: 'SUPPRESSION',\n EMAIL_CU: 'CU',\n EMAIL_CC: 'CC',\n EMAIL_UU: 'UU',\n EMAIL_UC: 'UC',\n PHONE_CU: 'CU',\n PHONE_CC: 'CC',\n PHONE_UC: 'UC',\n PHONE_UU: 'UU',\n EMAIL_NOTICE_ONLY: 'NOTICE_ONLY',\n PHONE_NOTICE_ONLY: 'NOTICE_ONLY',\n NC_HIDDEN_PHONE_NONE: 'N',\n }[value] || null\n );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;;AAQA,OAAO,SAASA,sBAAsBA,CAAA,EAAG;EACvC,IAAIC,OAAY;EAChB,IAAI;IACFA,OAAO,GAAGC,MAAM,CAACC,YAAY,CAACC,OAAO;EACvC,CAAC,CAAC,OAAOC,CAAC,EAAE;IACVJ,OAAO,GAAG,CAAC,CAAC;EACd;EACA,OAAOA,OAAO;AAChB;AACA,OAAO,SAASK,uBAAuBA,CAAA,EAAG;EACxC,IAAI;IACFJ,MAAM,CAACC,YAAY,GAAGD,MAAM,CAACC,YAAY,IAAI,CAAC,CAAC;IAC/CD,MAAM,CAACC,YAAY,GAAGD,MAAM,CAACC,YAAY,IAAI,CAAC,CAAC;EACjD,CAAC,CAAC,OAAOE,CAAC,EAAE;IACVE,OAAO,CAACC,GAAG,CAAC,gCAAgC,EAAEH,CAAC,CAAC;EAClD;AACF;AACA,OAAO,SAASI,WAAWA,CAACC,KAAK,EAAE;EACjC,OACE;IACEC,MAAM,EAAE,KAAK;IACbC,OAAO,EAAE,IAAI;IACbC,UAAU,EAAE,KAAK;IACjBC,WAAW,EAAE,IAAI;IACjBC,iBAAiB,EAAE,OAAO;IAC1BC,gBAAgB,EAAE,MAAM;IACxBC,qBAAqB,EAAE,MAAM;IAC7BC,oBAAoB,EAAE,OAAO;IAC7BC,oBAAoB,EAAE,YAAY;IAClCC,qBAAqB,EAAE,aAAa;IACpCC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,QAAQ,EAAE,IAAI;IACdC,iBAAiB,EAAE,aAAa;IAChCC,iBAAiB,EAAE,aAAa;IAChCC,oBAAoB,EAAE;EACxB,CAAC,CAACrB,KAAK,CAAC,IAAI,IAAI;AAEpB","ignoreList":[]}
@@ -68,7 +68,14 @@ export declare const C4DVideoPlayerContainerMixin: <T extends Constructor<HTMLEl
68
68
  _requestsEmbedVideo: {
69
69
  [videoId: string]: Promise<any>;
70
70
  };
71
+ /**
72
+ * Custom video name
73
+ */
71
74
  customVideoName: string;
75
+ /**
76
+ * Language code
77
+ */
78
+ lc: string;
72
79
  /**
73
80
  * Sets the state that the API call for embedding the video for the given video ID is in progress.
74
81
  *
@@ -113,7 +120,7 @@ export declare const C4DVideoPlayerContainerMixin: <T extends Constructor<HTMLEl
113
120
  /**
114
121
  * Calls the data-* attribute transpose function to target `c4d-video-player`'s button element.
115
122
  */
116
- firstUpdated(): void;
123
+ firstUpdated(): Promise<void>;
117
124
  prefersAutoplayStorageKey: string;
118
125
  linkNode: any;
119
126
  altAttributes: any;
@@ -807,7 +814,14 @@ declare const C4DVideoPlayerContainer_base: {
807
814
  _requestsEmbedVideo: {
808
815
  [videoId: string]: Promise<any>;
809
816
  };
817
+ /**
818
+ * Custom video name
819
+ */
810
820
  customVideoName: string;
821
+ /**
822
+ * Language code
823
+ */
824
+ lc: string;
811
825
  /**
812
826
  * Sets the state that the API call for embedding the video for the given video ID is in progress.
813
827
  *
@@ -852,7 +866,7 @@ declare const C4DVideoPlayerContainer_base: {
852
866
  /**
853
867
  * Calls the data-* attribute transpose function to target `c4d-video-player`'s button element.
854
868
  */
855
- firstUpdated(): void;
869
+ firstUpdated(): Promise<void>;
856
870
  prefersAutoplayStorageKey: string;
857
871
  linkNode: any;
858
872
  altAttributes: any;
@@ -22,6 +22,7 @@ import ConnectMixin from "../../globals/mixins/connect.js";
22
22
  import StableSelectorMixin from "../../globals/mixins/stable-selector.js";
23
23
  import C4DVideoPlayerComposite from "./video-player-composite.js";
24
24
  import { carbonElement as customElement } from '@carbon/web-components/es/globals/decorators/carbon-element.js';
25
+ import { LocaleAPI } from '@carbon/ibmdotcom-services/es/services/Locale/index';
25
26
  const {
26
27
  stablePrefix: c4dPrefix
27
28
  } = settings;
@@ -94,6 +95,13 @@ export const C4DVideoPlayerContainerMixin = Base => {
94
95
  value() {
95
96
  return '';
96
97
  }
98
+ }, {
99
+ kind: "field",
100
+ decorators: [property()],
101
+ key: "lc",
102
+ value() {
103
+ return '';
104
+ }
97
105
  }, {
98
106
  kind: "method",
99
107
  key: "_setRequestEmbedVideoInProgress",
@@ -113,6 +121,14 @@ export const C4DVideoPlayerContainerMixin = Base => {
113
121
  */
114
122
  // Not using TypeScript `private` due to: microsoft/TypeScript#17744
115
123
 
124
+ /**
125
+ * Custom video name
126
+ */
127
+
128
+ /**
129
+ * Language code
130
+ */
131
+
116
132
  /**
117
133
  * Sets the state that the API call for embedding the video for the given video ID is in progress.
118
134
  *
@@ -203,7 +219,13 @@ export const C4DVideoPlayerContainerMixin = Base => {
203
219
  * <c4d-video-player-container customVideoName="overwritten media title here">...
204
220
  *
205
221
  */
206
- const mediaTitle = (this === null || this === void 0 ? void 0 : this['customVideoName']) || (this === null || this === void 0 ? void 0 : this['caption']);
222
+
223
+ let mediaTitle;
224
+ if (this.lc.toLowerCase() === 'en') {
225
+ mediaTitle = (this === null || this === void 0 ? void 0 : this['customVideoName']) || (this === null || this === void 0 ? void 0 : this['caption']);
226
+ } else {
227
+ mediaTitle = ' ';
228
+ }
207
229
  let playerOptions = {};
208
230
  const autoplayPreference = this._getAutoplayPreference();
209
231
  switch (true) {
@@ -328,7 +350,7 @@ export const C4DVideoPlayerContainerMixin = Base => {
328
350
  /**
329
351
  * Calls the data-* attribute transpose function to target `c4d-video-player`'s button element.
330
352
  */
331
- function firstUpdated() {
353
+ async function firstUpdated() {
332
354
  window.requestAnimationFrame(() => {
333
355
  var _this$querySelector;
334
356
  const button = (_this$querySelector = this.querySelector('c4d-video-player')) === null || _this$querySelector === void 0 || (_this$querySelector = _this$querySelector.shadowRoot) === null || _this$querySelector === void 0 ? void 0 : _this$querySelector.querySelector('button');
@@ -337,6 +359,12 @@ export const C4DVideoPlayerContainerMixin = Base => {
337
359
  }
338
360
  this.transposeAttributes(button, ['href']);
339
361
  });
362
+
363
+ //get LC
364
+ const {
365
+ lc
366
+ } = await LocaleAPI.getLocale();
367
+ this.lc = lc;
340
368
  }
341
369
  }, {
342
370
  kind: "field",