{"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":""}