{"version":3,"file":"webinar-list.js","sources":["../../../../src/assets/scripts/webinar-list.entry.js"],"sourcesContent":["window.arjoWebinarListModule =\n window.arjoWebinarListModule ||\n (() => {\n const state = {\n isInitialized: false,\n elements: {},\n };\n\n const classNamePrefix = 'arjo-o-webinar-list';\n\n const setUp = () => {\n const elements = [...document.querySelectorAll(`.${classNamePrefix}`)];\n elements.forEach((element) => {\n const id = element.dataset.listId;\n\n let innerState = {\n domNode: element,\n filterByLv1Category: undefined,\n filterByLv2Category: undefined,\n filterByLv1Label: undefined,\n filterByLv2Label: undefined,\n data: [],\n };\n\n const setData = (data) => {\n innerState.data = [...data];\n };\n\n // get webinar url by country\n const getWebinarUrlByCountry = (webinar, country) => {\n if (!webinar.localUrls) {\n return webinar.url;\n }\n\n return (\n webinar.localUrls[`${country}-${country}`] ||\n webinar.localUrls[`${'en'}-${country}`] ||\n webinar.localUrls[`${webinar.languageCodes && webinar.languageCodes.filter((v) => v !== 'en' && v !== country)[0]}-${country}`]\n );\n };\n\n // get webinar url\n const getWebinarUrl = (webinar, element) => {\n if (!webinar.localUrls) {\n return webinar.url;\n }\n\n let language = element.parentElement.querySelector('.arjo-m-dropdown__options-input[name=\"language\"]:checked')?.value;\n let country = element.parentElement.querySelector('.arjo-m-dropdown__options-input[name=\"country\"]:checked')?.value;\n let newUrl;\n\n switch (true) {\n case !!language && !!country:\n newUrl = webinar.localUrls[`${language}-${country}`] || getWebinarUrlByCountry(webinar, country);\n break;\n case !!language && !country:\n newUrl = webinar.countryCodes && webinar.localUrls[`${language}-${webinar.countryCodes[0]}`];\n break;\n case !language && !!country:\n newUrl = getWebinarUrlByCountry(webinar, country);\n break;\n }\n\n return newUrl || webinar.url;\n };\n\n const createCardHtml = (webinar) => {\n /* webinar schemar\n {\n imageUrl: \"https://qbank.arjo.com/webassets/IMG_5487_Story Portrait.jpg\",\n headerText: \"Hygiene Care: Preventing conflict and improving care for people living with dementia\",\n bodyText: \"The steps in the hygiene process can be overwhelming to a patient or resident with dementia often leading to distressing behaviour and moments of conflict with caregivers. \",\n category: [\"Dementia\"],\n date: \"September 21 | 2021\",\n url: \"/int/academy/webinar/sem-scanner-technology-evaluating-economic-outcomes-in-pi-prevention/\",\n isPastWebinar: true,\n badge: \"Past Webinar\",\n \"video\": {\n \"videoId\": \"u279k1286d\",\n \"isPopover\": true,\n \"stillUrl\": \"https://qbank.arjo.com/webassets/IMG_5487_Story%20Portrait.jpg\"\n },\n cta: {\n text: \"Sign up to watch the webinar\",\n icon: \"/assets/images/icons.svg#arjo-ico-caret-outline-circle\",\n },\n };\n */\n const badgeContent = [];\n\n webinar.languageNames && badgeContent.push(...webinar.languageNames);\n\n // calculation url\n const webinarUrl = getWebinarUrl(webinar, element);\n // end calculation url\n\n const headLeftHtml = `
${webinar.badge}
`;\n const badgeHtml = badgeContent.length ? `
${badgeContent.join(' | ')}
` : '';\n const ctaHtml = webinar.cta\n ? `\n ${webinar.cta.text} \n \n \n \n `\n : '';\n const categoryHtml = (() => {\n let result = '';\n webinar.category.forEach((val, idx) => {\n if (idx === 0) {\n result = result.concat(val);\n } else {\n result = result.concat(', ', val);\n }\n });\n return result;\n })();\n\n const wistiaVideoHtml = (() => {\n const video = webinar.video;\n if (!video) return '';\n const className = `\n wistia_embed autoPlay=${video.autoPlay ? 'true' : 'false'} wistia_async_${video.videoId} stillUrl=${\n video.stillUrl ? 'true' : 'false'\n } popover=${video.isPopover ? 'true' : 'false'}\n `;\n\n return `\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n `;\n })();\n\n return `\n
\n
\n ${\n headLeftHtml || badgeHtml\n ? `
\n ${headLeftHtml}\n ${badgeHtml}\n
`\n : ''\n }\n
\n \n
\n
\n
\n ${categoryHtml}\n
\n
\n \n ${webinar.headerText}\n \n
\n
\n \n \n \n\n ${webinar.date}\n
\n
\n ${webinar.bodyText}\n
\n
\n ${ctaHtml}\n
\n
\n ${wistiaVideoHtml}\n
\n
\n `;\n };\n\n const updateDom = () => {\n let dataForRender = [...innerState.data];\n\n const grid = innerState.domNode.querySelector(`.${classNamePrefix}__grid`);\n const cards = grid.querySelectorAll('.arjo-o-webinar-card');\n cards.forEach((card) => {\n card.remove();\n });\n\n dataForRender.forEach((data) => {\n grid.innerHTML += createCardHtml(data);\n });\n };\n\n const setState = (newState) => {\n innerState = { ...innerState, ...newState };\n updateDom();\n };\n\n const getState = () => {\n return {\n filterByLv1Category: innerState.filterByLv1Category,\n filterByLv2Category: innerState.filterByLv2Category,\n filterByLv1Label: innerState.filterByLv1Label,\n filterByLv2Label: innerState.filterByLv2Label,\n dropdowns: innerState.dropdowns,\n data: innerState.data,\n };\n };\n\n state.elements[id] = {\n setData,\n setState,\n get currentState() {\n return getState();\n },\n };\n });\n };\n\n const init = () => {\n if (state.isInitialized) return;\n setUp();\n state.isInitialized = true;\n };\n\n const getElement = (id) => {\n return state.elements[id];\n };\n\n return { init, getElement };\n })();\n\nwindow.addEventListener('load', window.arjoWebinarListModule.init);\n"],"names":["state","classNamePrefix","setUp","element","id","innerState","setData","data","getWebinarUrlByCountry","webinar","country","v","getWebinarUrl","_a","_b","language","newUrl","createCardHtml","badgeContent","webinarUrl","headLeftHtml","badgeHtml","ctaHtml","categoryHtml","result","val","idx","wistiaVideoHtml","video","className","updateDom","dataForRender","grid","card","setState","newState","getState"],"mappings":"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"}