{"version":3,"sources":["webpack://fxsWidgets/../src/js/widgets/calendar-common/components/CalendarPosts.js","webpack://fxsWidgets/../src/js/widgets/calendar-common/constants/relatedNewsView.js","webpack://fxsWidgets/../src/js/widgets/calendar-common/helpers/formatDate.js","webpack://fxsWidgets/../src/js/widgets/calendar-latestpost/actions/localizationActions.js","webpack://fxsWidgets/../src/js/widgets/calendar-latestpost/store.js","webpack://fxsWidgets/../src/js/widgets/calendar-latestpost/actions/latestPostActions.js","webpack://fxsWidgets/../src/js/widgets/calendar-latestpost/components/LatestPostContainer.js","webpack://fxsWidgets/../src/js/widgets/calendar-latestpost/actions/index.js","webpack://fxsWidgets/../src/js/widgets/calendar-latestpost/index.js"],"names":["CalendarPosts","_Component","props","_callSuper","_inherits","key","value","h","class","id","view","wrapperClass","RelatedNewsTranslation","RELATED_NEWS_VIEW","View_Grid","this","renderItemFetching","View_Half","View_Mobile","ErrorTranslation","IconFileSearch","item","ByAuthorTranslation","culture","dateNow","customClassnameDict","customPostUrl","undefined","replace","Id","className","concat","Image","Url_Small","src","href","Url","title","Title","target","Author","Name","pubdate","datetime","AdaptativeDate","currentDate","PublicationDate","posts","_this","Date","now","renderItem","map","children","_ref","fetchError","isFetching","renderViewWrapper","renderFetching","renderError","renderNews","Component","View_Full","getOrdinalDay","day","translations","fetchLocalizations","store","storeCulture","getState","config","toLowerCase","currentCulture","hasOwnProperty","catch","console","error","default","_x","apply","arguments","INITIAL_STATE","calendarApiUrl","CALENDAR_API_URL","postApiUrl","POST_API_URL","type","hasPosts","page","take","filterType","productFeature","eventId","timezoneOffset","data","convertCulture","input","Object","keys","includes","setState","fetchEventDateDetails","_store$getState$confi2","requested","url","cacheFetch","then","response","ok","json","eventDateDetails","eventTags","_store$getState$confi","values","Values","received","err","fetchPosts","tags","LatestPostContainer","translate","dir","fxs_image","fxs_entryHeadline","fxs_subtitle","connectWithTranslations","CalendarLatestPostWidget","_classCallCheck","createCustomStore","createStore","Provider"],"mappings":"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","file":"calendar-latestpost.4abbba63eb66df77a295.js","sourcesContent":["import { h, Component } from \"preact\";\r\nimport IconFileSearch from \"../../common/components/icons/IconFileSearch\";\r\nimport { RELATED_NEWS_VIEW } from \"../constants/relatedNewsView\";\r\nimport AdaptativeDate from \"../../common/components/AdaptativeDate\";\r\nclass CalendarPosts extends Component {\r\n constructor(props) {\r\n super(props);\r\n }\r\n\r\n renderItemFetching() {\r\n return (\r\n <aside class=\"fxs_entriesList\" id=\"renderItemFetching\">\r\n <ol>\r\n <li>\r\n <div class=\"fxs_squareImage fxs_squareImage_s fxs_c_news_fake_image\"></div>\r\n <article class=\"fxs_entriesList_article_with_image \">\r\n <div class=\"fxs_c_news_fake_line\"></div>\r\n <div class=\"fxs_c_news_fake_line\"></div>\r\n <div class=\"fxs_c_news_fake_meta\"></div>\r\n </article>\r\n </li>\r\n <li>\r\n <div class=\"fxs_squareImage fxs_squareImage_s fxs_c_news_fake_image\"></div>\r\n <article class=\"fxs_entriesList_article_with_image \">\r\n <div class=\"fxs_c_news_fake_line\"></div>\r\n <div class=\"fxs_c_news_fake_line\"></div>\r\n <div class=\"fxs_c_news_fake_meta\"></div>\r\n </article>\r\n </li>\r\n </ol>\r\n </aside>\r\n );\r\n }\r\n\r\n renderFetching(view, wrapperClass, RelatedNewsTranslation) {\r\n return view === RELATED_NEWS_VIEW.View_Grid ? (\r\n <div>\r\n <h3 class=\"fxs_headline_small\">{RelatedNewsTranslation}</h3>\r\n <div class={wrapperClass}>{this.renderItemFetching()}</div>\r\n <div class={wrapperClass}>{this.renderItemFetching()}</div>\r\n </div>\r\n ) : view === RELATED_NEWS_VIEW.View_Half ? (\r\n <div>\r\n <h3 class=\"fxs_headline_small\">{RelatedNewsTranslation}</h3>\r\n {this.renderItemFetching()}\r\n </div>\r\n ) : view === RELATED_NEWS_VIEW.View_Mobile ? (\r\n <div class={wrapperClass}>\r\n <h3 class=\"fxs_headline_small\">{RelatedNewsTranslation}</h3>\r\n {this.renderItemFetching()}\r\n </div>\r\n ) : (\r\n <aside class=\"fxs_entriesList\">\r\n <h3 class=\"fxs_headline_small\">{RelatedNewsTranslation}</h3>\r\n {this.renderItemFetching()}\r\n </aside>\r\n );\r\n }\r\n\r\n renderError(view, ErrorTranslation, wrapperClass, RelatedNewsTranslation) {\r\n return view === RELATED_NEWS_VIEW.View_Grid ? (\r\n <div class={wrapperClass} id=\"renderError\">\r\n <h3 class=\"fxs_headline_small\">{RelatedNewsTranslation}</h3>\r\n <div class=\"fxs_c_news_error_wrapper\">\r\n <IconFileSearch />\r\n <p class=\"fxs_txt_size_nano\">{ErrorTranslation}</p>\r\n </div>\r\n </div>\r\n ) : view === RELATED_NEWS_VIEW.View_Half ? (\r\n <div id=\"renderError\">\r\n <h3 class=\"fxs_headline_small\">{RelatedNewsTranslation}</h3>\r\n <div class=\"fxs_c_news_error_wrapper\">\r\n <IconFileSearch />\r\n <p class=\"fxs_txt_size_nano\">{ErrorTranslation}</p>\r\n </div>\r\n </div>\r\n ) : view === RELATED_NEWS_VIEW.View_Mobile ? (\r\n <div class={wrapperClass} id=\"renderError\">\r\n <h3 class=\"fxs_headline_small\">{RelatedNewsTranslation}</h3>\r\n <div class=\"fxs_c_news_error_wrapper\">\r\n <IconFileSearch />\r\n <p class=\"fxs_txt_size_nano\">{ErrorTranslation}</p>\r\n </div>\r\n </div>\r\n ) : (\r\n <aside class=\"fxs_entriesList\" id=\"renderError\">\r\n <h3 class=\"fxs_headline_small\">{RelatedNewsTranslation}</h3>\r\n <div class=\"fxs_c_news_error_wrapper\">\r\n <IconFileSearch />\r\n <p class=\"fxs_txt_size_nano\">{ErrorTranslation}</p>\r\n </div>\r\n </aside>\r\n );\r\n }\r\n\r\n renderItem(item, ByAuthorTranslation, culture, dateNow, customClassnameDict, customPostUrl) {\r\n customPostUrl = customPostUrl !== undefined ? customPostUrl.replace(\"{postId}\",item.Id): customPostUrl;\r\n return (\r\n item && (\r\n <li>\r\n <div className={`fxs_squareImage ${customClassnameDict['fxs_image'] || ' fxs_squareImage_s'}`}>\r\n <img\r\n class=\"lazyloaded\"\r\n data-src={item.Image.Url_Small}\r\n src={item.Image.Url_Small}\r\n />\r\n </div>\r\n <article class=\"fxs_entriesList_article_with_image \">\r\n <h3 class={`${customClassnameDict['fxs_entryHeadline'] || ' fxs_headline_tiny'}`}>\r\n <a\r\n href={customPostUrl || item.Url}\r\n title={item.Title}\r\n target=\"_blank\"\r\n >\r\n {item.Title}\r\n </a>\r\n </h3>\r\n <address class=\"fxs_entry_metaInfo\">\r\n <span class=\"fxs_article_author\">\r\n <span>{ByAuthorTranslation} </span>\r\n <span> </span>\r\n <span class=\"fxs_txt_dark_4_clr\">\r\n {item.Author.Name}\r\n </span>\r\n </span>\r\n <span> | </span>\r\n <time pubdate=\"\" datetime=\"\">\r\n <AdaptativeDate\r\n currentDate = {item.PublicationDate}\r\n dateNow = {dateNow}\r\n culture = {culture}\r\n ></AdaptativeDate>\r\n </time>\r\n </address>\r\n </article>\r\n </li>\r\n )\r\n );\r\n }\r\n\r\n renderNews(\r\n view,\r\n wrapperClass,\r\n posts,\r\n RelatedNewsTranslation,\r\n ByAuthorTranslation,\r\n culture,\r\n customClassnameDict,\r\n customPostUrl\r\n ) {\r\n customClassnameDict = customClassnameDict || {};\r\n const dateNow = Date.now();\r\n return view === RELATED_NEWS_VIEW.View_Half ? (\r\n <div class={wrapperClass}>\r\n <h3 className={`${customClassnameDict['fxs_subtitle'] || ' fxs_headline_small'}`}>{RelatedNewsTranslation}</h3>\r\n <aside class=\"fxs_entriesList\">\r\n <ol>\r\n {posts &&\r\n this.renderItem(\r\n posts[0],\r\n ByAuthorTranslation,\r\n culture,\r\n dateNow,\r\n customClassnameDict,\r\n customPostUrl\r\n )}\r\n {posts &&\r\n this.renderItem(\r\n posts[1],\r\n ByAuthorTranslation,\r\n culture,\r\n dateNow,\r\n customClassnameDict,\r\n customPostUrl\r\n )}\r\n </ol>\r\n </aside>\r\n </div>\r\n ) : view === RELATED_NEWS_VIEW.View_Grid ? (\r\n <div>\r\n <h3 className={`${customClassnameDict['fxs_subtitle'] || ' fxs_headline_small'}`}>{RelatedNewsTranslation}</h3>\r\n <div>\r\n <div class={wrapperClass}>\r\n <aside class=\"fxs_entriesList\">\r\n <ol>\r\n {posts &&\r\n this.renderItem(\r\n posts[0],\r\n ByAuthorTranslation,\r\n culture,\r\n dateNow,\r\n customClassnameDict,\r\n customPostUrl\r\n )}\r\n {posts &&\r\n this.renderItem(\r\n posts[1],\r\n ByAuthorTranslation,\r\n culture,\r\n dateNow,\r\n customClassnameDict,\r\n customPostUrl\r\n )}\r\n </ol>\r\n </aside>\r\n </div>\r\n <div class={wrapperClass}>\r\n <aside class=\"fxs_entriesList\">\r\n <ol>\r\n {posts &&\r\n this.renderItem(\r\n posts[2],\r\n ByAuthorTranslation,\r\n culture,\r\n dateNow,\r\n customClassnameDict,\r\n customPostUrl\r\n )}\r\n {posts &&\r\n this.renderItem(\r\n posts[3],\r\n ByAuthorTranslation,\r\n culture,\r\n dateNow,\r\n customClassnameDict,\r\n customPostUrl\r\n )}\r\n </ol>\r\n </aside>\r\n </div>\r\n </div>\r\n </div>\r\n ) : view === RELATED_NEWS_VIEW.View_Mobile ? (\r\n <aside class={`fxs_entriesList ${wrapperClass}`}>\r\n <h3 className={`${customClassnameDict['fxs_subtitle'] || ' fxs_headline_small'}`}>{RelatedNewsTranslation}</h3>\r\n <ol>\r\n {posts &&\r\n this.renderItem(\r\n posts[0],\r\n ByAuthorTranslation,\r\n culture,\r\n dateNow,\r\n customClassnameDict,\r\n customPostUrl\r\n )}\r\n {posts &&\r\n this.renderItem(\r\n posts[1],\r\n ByAuthorTranslation,\r\n culture,\r\n dateNow,\r\n customClassnameDict,\r\n customPostUrl\r\n )}\r\n </ol>\r\n </aside>\r\n ) : (\r\n <aside class=\"fxs_entriesList\">\r\n <h3 className={`${customClassnameDict['fxs_subtitle'] || ' fxs_headline_small'}`}>{RelatedNewsTranslation}</h3>\r\n <ol>\r\n {\r\n posts && posts.map(\r\n (item) =>\r\n this.renderItem(item, ByAuthorTranslation, culture, dateNow, customClassnameDict, customPostUrl),\r\n ByAuthorTranslation\r\n )}\r\n </ol>\r\n </aside>\r\n );\r\n }\r\n\r\n renderViewWrapper(view, wrapperClass, children) {\r\n return view === RELATED_NEWS_VIEW.View_Half ? (\r\n <div class={wrapperClass}>{children}</div>\r\n ) : (\r\n children\r\n );\r\n }\r\n\r\n render({\r\n posts,\r\n view,\r\n wrapperClass,\r\n isFetching,\r\n fetchError,\r\n RelatedNewsTranslation,\r\n ByAuthorTranslation,\r\n ErrorTranslation,\r\n culture,\r\n customClassnameDict,\r\n customPostUrl\r\n }) {\r\n return isFetching\r\n ? this.renderViewWrapper(\r\n view,\r\n wrapperClass,\r\n this.renderFetching(\r\n view,\r\n wrapperClass,\r\n RelatedNewsTranslation\r\n )\r\n )\r\n : fetchError\r\n ? this.renderViewWrapper(\r\n view,\r\n wrapperClass,\r\n this.renderError(\r\n view,\r\n ErrorTranslation,\r\n wrapperClass,\r\n RelatedNewsTranslation\r\n )\r\n )\r\n : this.renderNews(\r\n view,\r\n wrapperClass,\r\n posts,\r\n RelatedNewsTranslation,\r\n ByAuthorTranslation,\r\n culture,\r\n customClassnameDict,\r\n customPostUrl\r\n );\r\n }\r\n}\r\nexport default CalendarPosts;\r\n","export const RELATED_NEWS_VIEW = {\r\n View_Half: 0,\r\n View_Grid: 1,\r\n View_Full: 2,\r\n View_Mobile: 3,\r\n};\r\n","export const getPostDateString = (date, culture) => {\r\n if (date === undefined || date === null) {\r\n return \"\";\r\n }\r\n\r\n var locale = culture.split('-')[0];\r\n var month = new Intl.DateTimeFormat(locale, { month: 'long' }).format(date)\r\n \r\n var splittedDate = date.toString().split(\" \");\r\n var splittedHours = splittedDate[4].split(\":\");\r\n var eventDate = month + \" \" + splittedDate[2] + \", \" + splittedHours[0] + \":\" + splittedHours[1] + \" GMT\";\r\n\r\n return eventDate;\r\n};\r\n\r\nexport const getOrdinalDay = (day) => {\r\n switch (day) {\r\n case \"one\":\r\n return \"st\";\r\n case \"two\":\r\n return \"nd\";\r\n case \"few\":\r\n return \"rd\";\r\n default:\r\n return \"th\";\r\n }\r\n};\r\n","export const translations = {\r\n \"ar\": () => import(/*webpackChunkName: 'calendar-latestPost-t-ar'*/\"../translations/ar\"),\r\n \"de\": () => import(/*webpackChunkName: 'calendar-latestPost-t-de'*/\"../translations/de\"),\r\n \"en\": () => import(/*webpackChunkName: 'calendar-latestPost-t-en'*/\"../translations/en\"),\r\n \"es\": () => import(/*webpackChunkName: 'calendar-latestPost-t-es'*/\"../translations/es\"),\r\n \"fr\": () => import(/*webpackChunkName: 'calendar-latestPost-t-fr'*/\"../translations/fr\"),\r\n \"id\": () => import(/*webpackChunkName: 'calendar-latestPost-t-id'*/\"../translations/id\"),\r\n \"ru\": () => import(/*webpackChunkName: 'calendar-latestPost-t-ru'*/\"../translations/ru\"),\r\n \"tr\": () => import(/*webpackChunkName: 'calendar-latestPost-t-tr'*/\"../translations/tr\"),\r\n \"zh-cht\": () => import(/*webpackChunkName: 'calendar-latestPost-t-zh-cht'*/\"../translations/zh-cht\"),\r\n \"zh-cn\": () => import(/*webpackChunkName: 'calendar-latestPost-t-zh-cn'*/\"../translations/zh-cn\"),\r\n \"vi\": () => import(/*webpackChunkName: 'calendar-latestPost-t-vi'*/\"../translations/vi\"),\r\n \"fa\": () => import(/*webpackChunkName: 'calendar-latestPost-t-fa'*/\"../translations/fa\"),\r\n \"pt\": () => import(/*webpackChunkName: 'calendar-latestPost-t-pt'*/\"../translations/pt\"),\r\n \"cs\": () => import(/*webpackChunkName: 'calendar-latestPost-t-cs'*/\"../translations/cs\"),\r\n}\r\n\r\nexport const fetchLocalizations = async (store) => {\r\n const storeCulture = store.getState().config.culture\r\n const culture = storeCulture ? storeCulture.toLowerCase() : 'en'\r\n\r\n const currentCulture = translations.hasOwnProperty(culture) ? culture : 'en'\r\n\r\n const fetchedTranslations = await translations[currentCulture]()\r\n .catch(() => {\r\n console.error('Could not fetch translations')\r\n return null\r\n })\r\n\r\n return { translations: fetchedTranslations.default }\r\n}\r\n","import { createCustomStore } from \"../common/helpers/storeHelpers\";\r\nimport { translations } from \"./actions/localizationActions\";\r\n\r\nconst INITIAL_STATE = {\r\n config: {\r\n culture: \"en\",\r\n calendarApiUrl: CALENDAR_API_URL,\r\n postApiUrl: POST_API_URL,\r\n type: \"title\",\r\n hasPosts: true,\r\n page: 0,\r\n take: 3,\r\n filterType: \"filter\",\r\n productFeature: \"NewsFeed\",\r\n eventId: \"\",\r\n timezoneOffset: 0,\r\n customPostUrl: \"\"\r\n },\r\n isFetching: false,\r\n fetchError: false,\r\n data: null,\r\n};\r\n\r\nconst convertCulture = (input) => {\r\n const result =\r\n input && Object.keys(translations).includes(input.toLowerCase())\r\n ? input.toLowerCase()\r\n : \"en\";\r\n return result;\r\n};\r\n\r\nconst createStore = (props) => {\r\n const result = createCustomStore(props, INITIAL_STATE, {\r\n culture: convertCulture,\r\n });\r\n return result;\r\n};\r\n\r\nexport { createStore };\r\n","import { cacheFetch } from \"../../common/helpers/cacheFetchHelpers\";\r\n\r\nconst requested = (store) => {\r\n store.setState({\r\n isFetching: true,\r\n fetchError: false,\r\n data: null,\r\n });\r\n};\r\n\r\nconst received = (store, response) => {\r\n store.setState({\r\n isFetching: false,\r\n fetchError: false,\r\n data: response.Values,\r\n });\r\n};\r\n\r\nconst error = (store) => {\r\n store.setState({\r\n isFetching: false,\r\n fetchError: true,\r\n data: null,\r\n });\r\n};\r\n\r\nconst fetchPosts = (store, eventTags) => {\r\n if (!eventTags) return;\r\n\r\n const { postApiUrl, culture, filterType, productFeature, page, take } =\r\n store.getState().config;\r\n const url = `${postApiUrl}/v4/${culture}/post/${filterType}/${productFeature}/${eventTags}/${page}/${take}`;\r\n\r\n cacheFetch(url, false)\r\n .then((response) => {\r\n if (response.ok) {\r\n response.json().then((values) => received(store, values));\r\n } else {\r\n error(store);\r\n }\r\n })\r\n .catch((err) => {\r\n console.error(err);\r\n error(store);\r\n });\r\n};\r\n\r\nexport const fetchEventDateDetails = (store) => {\r\n const { calendarApiUrl, culture, eventId } = store.getState().config;\r\n requested(store);\r\n\r\n const config = store.getState().config;\r\n let url = `${calendarApiUrl}/${culture}/api/v1/events/${eventId}`;\r\n\r\n cacheFetch(url, false)\r\n .then((response) => {\r\n if (response.ok) {\r\n response.json().then((eventDateDetails) => {\r\n if (config.hasPosts)\r\n fetchPosts(store, eventDateDetails.tags);\r\n });\r\n } else if (response.status === 404) {\r\n error(store);\r\n } else {\r\n error(store);\r\n }\r\n })\r\n .catch((err) => {\r\n console.error(err);\r\n error(store);\r\n });\r\n};\r\n","import { h, Component } from \"preact\";\r\nimport actions from \"../actions\";\r\nimport { connectWithTranslations } from \"../../common/helpers/translationsHelpers\";\r\nimport CalendarPosts from \"../../calendar-common/components/CalendarPosts\";\r\nclass LatestPostContainer extends Component {\r\n constructor(props) {\r\n super(props);\r\n }\r\n componentDidMount() {\r\n this.props.fetchEventDateDetails();\r\n this.props.fetchLocalizations();\r\n }\r\n\r\n render({ data, isFetching, fetchError, translate, config }) {\r\n let customClassnameDict = {\r\n fxs_image: \"fxs_squareImage_small\",\r\n fxs_entryHeadline: \"fxs_entryHeadline\",\r\n fxs_subtitle: \"fxs_headline_highlight\",\r\n };\r\n return (\r\n data &&\r\n <div\r\n class=\"fxs_widget fxs_latest_post\"\r\n dir={`${!!translate(\"IsRightToLeftOriented\") ? \"rtl\" : \"auto\"}`}\r\n >\r\n <CalendarPosts\r\n wrapperClass=\"fxs_c_detail_half_block\"\r\n posts={data}\r\n isFetching={isFetching}\r\n fetchError={fetchError}\r\n RelatedNewsTranslation={translate(\r\n `HeaderWidget${config.productFeature}`\r\n )}\r\n ByAuthorTranslation={translate(\"ByAuthor\")}\r\n ErrorTranslation={translate(\"ErrorFetchingNews\")}\r\n culture={config.culture}\r\n customClassnameDict={customClassnameDict}\r\n customPostUrl={config.customPostUrl}\r\n ></CalendarPosts>\r\n </div>\r\n );\r\n }\r\n}\r\nexport default connectWithTranslations(\r\n \"config,data,isFetching,fetchError\",\r\n actions\r\n)(LatestPostContainer);\r\n","import { fetchEventDateDetails } from './latestPostActions'\r\nimport { fetchLocalizations } from './localizationActions'\r\n\r\nexport default (store) => ({\r\n fetchEventDateDetails: (state) => fetchEventDateDetails(store),\r\n fetchLocalizations: (state) => fetchLocalizations(store)\r\n})\r\n","import { h, Component } from 'preact'\r\nimport { Provider } from 'unistore/preact'\r\nimport { createStore } from './store'\r\nimport LatestPostContainer from './components/LatestPostContainer'\r\n\r\n\r\nclass CalendarLatestPostWidget extends Component {\r\n constructor(props) {\r\n super(props)\r\n this.store = createStore(props)\r\n }\r\n\r\n render(props) {\r\n return (\r\n <Provider store={this.store}>\r\n <LatestPostContainer/>\r\n </Provider>\r\n )\r\n }\r\n}\r\n\r\nexport default CalendarLatestPostWidget\r\n"],"sourceRoot":""}