{"version":3,"file":"useContentLibrary-1a62dpQM.js","sources":["../../../../Coloplast.UI/src/shared/components/contentLibrary/composables/useContentLibrary.js"],"sourcesContent":["import { computed, ref } from 'vue';\r\nimport { useStore } from 'vuex';\r\nimport { extractUrlParameters } from 'shared/services/windowLocationService';\r\n\r\n\r\nconst\r\n\tshowFilters = ref(false),\r\n\tvideoUrl = ref(null),\r\n\tvideoIsPlaying = ref(false),\r\n\tcardLabel = ref(''),\r\n\tslideIndexForReminderToPlace = ref(0),\r\n\tscrollbarWidth = ref(null),\r\n\tdisplaySearchOnHero = ref(false),\r\n\tisListLayout = ref(false),\r\n\tisEventCalendar = ref(false),\r\n\tclearAllFiltersLabel = ref(''),\r\n\tfiltersLabel = ref(''),\r\n\tmonthFiltersLabel = ref(''),\r\n\tresetFiltersLabel = ref(''),\r\n\tsearchBarPlaceholder = ref(''),\r\n\tapplyFiltersLabel = ref('');\r\n\r\nexport default function useContentLibrary(\r\n\tvm,\r\n\tstore,\r\n\tisOnHero\r\n) {\r\n\tstore = store || useStore();\r\n\tconst { commit, dispatch, getters } = store;\r\n\r\n\tif (vm) {\r\n\t\tcardLabel.value = vm.BaseViewModel.GoToItemLabel;\r\n\t\tisListLayout.value = vm.BaseViewModel.LayoutType === 1;\r\n\t\tisEventCalendar.value = vm.BaseViewModel.LayoutType === 2;\r\n\t\tclearAllFiltersLabel.value = vm.BaseViewModel.ClearAllFiltersLabel;\r\n\t\tfiltersLabel.value = vm.BaseViewModel.FiltersLabel;\r\n\t\tmonthFiltersLabel.value = vm.BaseViewModel.MonthFiltersLabel;\r\n\t\tresetFiltersLabel.value = vm.BaseViewModel.ResetFiltersLabel;\r\n\t\tsearchBarPlaceholder.value = vm.BaseViewModel.SearchBarPlaceholder;\r\n\t\tapplyFiltersLabel.value = vm.BaseViewModel.ApplyFiltersLabel ?? '';\r\n\t}\r\n\tdisplaySearchOnHero.value = displaySearchOnHero.value || isOnHero;\r\n\r\n\tconst\r\n\t\tlanguage = computed(() => getters.getCulture),\r\n\t\tcontentFacets = computed(() => getters.getContentSearchFacets),\r\n\t\tcontentFacetGroups = computed(() => getters.getContentFacetGroups),\r\n\t\tsortedContentFacets = computed(\r\n\t\t\t() => getters.getSortedContentSearchFacets\r\n\t\t),\r\n\t\teventCalendarTabs = computed(() => getters.getEventCalendarTabs),\r\n\t\tpaginatedResults = computed(() => getters.getContentPaginatedResults),\r\n\t\ttab = computed(() => getters.getContentTab),\r\n\t\tinitialTab = computed(() => getters.getContentInitialTab),\r\n\t\tpageNumber = computed(() => getters.getContentPageNumber),\r\n\t\tsearchItemsPerPage = computed(() => getters.getContentItemsPerPage),\r\n\t\texpectedResultsNumberOnPage = computed(\r\n\t\t\t() => getters.getContentExpectedResultsNumberOnPage\r\n\t\t),\r\n\t\tsearchPhrase = computed(() => getters.getContentSearchPhrase),\r\n\t\tqueryString = computed(() => getters.getContentQueryString),\r\n\t\tconstantSearchParams = computed(() => getters.getConstantSearchParams),\r\n\t\tisFirstPageLoaded = computed(() => getters.getIsFirstPageLoaded),\r\n\t\tactiveSidebarFiltersType = computed(\r\n\t\t\t() => getters.getActiveSidebarFiltersType\r\n\t\t),\r\n\t\ttotalResultsCount = computed(() => getters.getTotalResultsCount),\r\n\t\tcontentLibraryComposable = computed(\r\n\t\t\t() => getters.getContentLibraryComposable\r\n\t\t),\r\n\t\tpagination = computed(() => getters.getLibraryPagination);\r\n\r\n\tconst\r\n\t\tcurrentTab = computed(() => tab.value || initialTab.value),\r\n\t\tisCurrentTabPastEvents = computed(\r\n\t\t\t() => currentTab.value.term === vm.BaseViewModel.PastEventsLabel\r\n\t\t),\r\n\t\tfiltersAreVisible = computed(\r\n\t\t\t() => contentFacetGroups.value?.length > 0\r\n\t\t),\r\n\t\tcontentFacetFilters = computed(() =>\r\n\t\t\tcontentFacetGroups.value.filter((element) =>\r\n\t\t\t\telement.data.some(\r\n\t\t\t\t\t(subElement) => subElement.subGroupName == null\r\n\t\t\t\t)\r\n\t\t\t)\r\n\t\t),\r\n\t\tcontentFacetMonthFilters = computed(() =>\r\n\t\t\tcontentFacetGroups.value.filter((element) =>\r\n\t\t\t\telement.data.some(\r\n\t\t\t\t\t(subElement) => subElement.subGroupName !== null\r\n\t\t\t\t)\r\n\t\t\t)\r\n\t\t),\r\n\t\tcontentFiltersAreVisible = computed(\r\n\t\t\t() => contentFacetFilters.value?.length > 0\r\n\t\t),\r\n\t\tmonthFiltersAreVisible = computed(\r\n\t\t\t() => contentFacetMonthFilters.value?.length > 0\r\n\t\t),\r\n\t\tbothFiltersTypesApplied = computed(\r\n\t\t\t() => monthFiltersAreVisible.value && contentFiltersAreVisible.value\r\n\t\t),\r\n\t\tresultsCount = computed(() =>\r\n\t\t\tcurrentTab.value?.count\r\n\t\t\t\t? currentTab.value.count\r\n\t\t\t\t: totalResultsCount.value\r\n\t\t),\r\n\t\tformattedApplyFilterLabel = computed(() => {\r\n\t\t\treturn applyFiltersLabel.value\r\n\t\t\t\t.replace('{n}', Math.max(resultsCount.value, 0) || '')\r\n\t\t\t\t.replace(/\\s+/g, ' ');\r\n\t\t}),\r\n\t\tlibraryTabs = computed(() =>\r\n\t\t\t!isEventCalendar.value\r\n\t\t\t\t? sortedContentFacets.value\r\n\t\t\t\t: eventCalendarTabs.value\r\n\t\t),\r\n\t\tgroupedPaginatedResultsLength = computed(() => {\r\n\t\t\tif (isEventCalendar.value) {\r\n\t\t\t\treturn paginatedResults.value\r\n\t\t\t\t\t.map((result) => {\r\n\t\t\t\t\t\treturn result.items;\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.flat().length;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\tfunction calculateScrollbarWidth() {\r\n\t\tscrollbarWidth.value = window.innerWidth - document.body.clientWidth;\r\n\t}\r\n\tfunction formatDisplayName(tabItem) {\r\n\t\tif (tabItem.name) {\r\n\t\t\treturn tabItem.name;\r\n\t\t} else {\r\n\t\t\treturn `${tabItem.displayName} (${tabItem.count})`\r\n\t\t\t\t.replace(/([A-Z])/g, ' $1')\r\n\t\t\t\t.trim();\r\n\t\t}\r\n\t}\r\n\tfunction setSidebarFilters(filtersType) {\r\n\t\tcommit('setActiveSidebarFiltersType', filtersType);\r\n\t\tfiltersToggled();\r\n\t}\r\n\tfunction filtersToggled() {\r\n\t\tshowFilters.value = !showFilters.value;\r\n\t\tcalculateScrollbarWidth();\r\n\r\n\t\tif (showFilters.value) {\r\n\t\t\tdocument.body.style.overflowY = 'hidden';\r\n\t\t\tif (scrollbarWidth.value && scrollbarWidth.value > 0) {\r\n\t\t\t\tdocument.body.style.paddingRight = `${scrollbarWidth.value}px`;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tdocument.body.removeAttribute('style');\r\n\t\t}\r\n\t}\r\n\tasync function search() {\r\n\t\tawait commit('setContentSearchPhrase', searchPhrase.value);\r\n\t\tdispatch('executeSearchWithFilters');\r\n\t}\r\n\tfunction fetchContentCards(tabItem, isInfiniteScroll) {\r\n\t\tlet facet;\r\n\r\n\t\tif (\r\n\t\t\tisEventCalendar.value &&\r\n\t\t\ttabItem.name === vm.BaseViewModel.PastEventsLabel\r\n\t\t) {\r\n\t\t\tcommit('setIsPastEventDisplayed', true);\r\n\t\t} else {\r\n\t\t\tcommit('setIsPastEventDisplayed', false);\r\n\t\t}\r\n\r\n\t\tif (\r\n\t\t\ttabItem &&\r\n\t\t\tinitialTab.value &&\r\n\t\t\ttabItem.term !== initialTab.value.term\r\n\t\t) {\r\n\t\t\tfacet = tabItem.term;\r\n\t\t}\r\n\t\tif (!isInfiniteScroll) {\r\n\t\t\t!isEventCalendar.value\r\n\t\t\t\t? dispatch('fetchContentResults', { fc: facet })\r\n\t\t\t\t: dispatch('fetchContentResults', {\r\n\t\t\t\t\t\tfc: '',\r\n\t\t\t\t\t\tclearParameters: true,\r\n\t\t\t\t });\r\n\t\t} else {\r\n\t\t\tdispatch('fetchContentResults', { searchParams: true });\r\n\t\t}\r\n\t}\r\n\tfunction changeTabAndResetPage(tabItem) {\r\n\t\tif (tabItem.term === currentTab.value.term) {\r\n\t\t\treturn;\r\n\t\t} else {\r\n\t\t\tcommit(\r\n\t\t\t\t'setContentExpectedResultsNumberOnPage',\r\n\t\t\t\tsearchItemsPerPage.value\r\n\t\t\t);\r\n\t\t\tcommit('resetContentPageNumber');\r\n\t\t\tfetchContentCards(tabItem);\r\n\t\t}\r\n\t}\r\n\tfunction showMoreItems() {\r\n\t\tcommit('setContentPageNumber');\r\n\t\tif (\r\n\t\t\t(currentTab.value &&\r\n\t\t\t\t!isEventCalendar.value &&\r\n\t\t\t\tresultsCount.value > paginatedResults.value.length) ||\r\n\t\t\t(currentTab.value &&\r\n\t\t\t\tisEventCalendar.value &&\r\n\t\t\t\tresultsCount.value > groupedPaginatedResultsLength.value)\r\n\t\t) {\r\n\t\t\tcommit(\r\n\t\t\t\t'setContentExpectedResultsNumberOnPage',\r\n\t\t\t\texpectedResultsNumberOnPage.value + searchItemsPerPage.value\r\n\t\t\t);\r\n\t\t\tfetchContentCards(currentTab.value, true);\r\n\t\t}\r\n\t}\r\n\tfunction setVideoUrl(value) {\r\n\t\tvideoUrl.value = value;\r\n\t\tvideoIsPlaying.value = true;\r\n\t}\r\n\tfunction closePopup() {\r\n\t\tvideoUrl.value = null;\r\n\t\tvideoIsPlaying.value = false;\r\n\t}\r\n\tfunction setIndexWhereReminderPlaced() {\r\n\t\tconst screen = window.innerWidth;\r\n\t\tif (screen < 481) {\r\n\t\t\tslideIndexForReminderToPlace.value = 3;\r\n\t\t} else {\r\n\t\t\tslideIndexForReminderToPlace.value = screen < 800 ? 6 : 9;\r\n\t\t}\r\n\t}\r\n\tfunction initContentLibrary() {\r\n\t\tif (isEventCalendar.value) {\r\n\t\t\tcommit('setIsEventCalendarLibrary');\r\n\t\t\tcommit('setEventCalendarTabs', [\r\n\t\t\t\t{\r\n\t\t\t\t\tterm: vm.BaseViewModel.UpcomingEventsLabel,\r\n\t\t\t\t\tname: vm.BaseViewModel.UpcomingEventsLabel,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tterm: vm.BaseViewModel.PastEventsLabel,\r\n\t\t\t\t\tname: vm.BaseViewModel.PastEventsLabel,\r\n\t\t\t\t},\r\n\t\t\t]);\r\n\t\t}\r\n\t\tcommit('setConstantSearchParams', {\r\n\t\t\tFacetConfigId: vm.BaseViewModel.ContentLink,\r\n\t\t\tps: vm.BaseViewModel.SearchItemsPageSize,\r\n\t\t\tct: vm.BaseViewModel.PageTypeFilter,\r\n\t\t\tca: vm.BaseViewModel.ContentAreaCategory[0],\r\n\t\t\tpn: 1,\r\n\t\t\tlanguage: language.value,\r\n\t\t});\r\n\t\tcommit('setContentItemsPerPage', +vm.BaseViewModel.SearchItemsPageSize);\r\n\t\tcommit(\r\n\t\t\t'setContentExpectedResultsNumberOnPage',\r\n\t\t\t+vm.BaseViewModel.SearchItemsPageSize\r\n\t\t);\r\n\t\tlet searchParamsObj = {},\r\n\t\t\tisLoadedWithParams = false;\r\n\t\tif (window.location.search !== '') {\r\n\t\t\tisLoadedWithParams = true;\r\n\t\t\tsearchParamsObj = extractUrlParameters(window.location.search);\r\n\t\t\tcommit('setContentQueryString', searchParamsObj);\r\n\t\t\tif (searchParamsObj.q && searchParamsObj.q !== '') {\r\n\t\t\t\tcommit('setContentSearchPhrase', searchParamsObj.q);\r\n\t\t\t}\r\n\t\t}\r\n\t\tdispatch('fetchContentResults', {\r\n\t\t\tfc: searchParamsObj.fc,\r\n\t\t\tsearchParams: isLoadedWithParams,\r\n\t\t});\r\n\t\tif (!isEventCalendar.value && !isListLayout.value) {\r\n\t\t\tsetIndexWhereReminderPlaced();\r\n\t\t\twindow.addEventListener('resize', setIndexWhereReminderPlaced);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tslideIndexForReminderToPlace.value = 0;\r\n\t\t}\r\n\t}\r\n\r\n\tif (vm) {\r\n\t\tinitContentLibrary();\r\n\t}\r\n\r\n\tfunction paginationClickHandler(pageNumber) {\r\n\t\tdispatch('paginationLibraryClickHandler', pageNumber);\r\n\t\tfetchContentCards(currentTab.value, !!isEventCalendar.value);\r\n }\r\n\r\n\tconst scrollBlockIntoView = () => {\r\n\t\tdocument.getElementById('content-library').scrollIntoView({ behavior: 'instant' });\r\n\t};\r\n\r\n\treturn {\r\n\t\t// data\r\n\t\tshowFilters,\r\n\t\tvideoUrl,\r\n\t\tvideoIsPlaying,\r\n\t\tcardLabel,\r\n\t\tslideIndexForReminderToPlace,\r\n\t\tscrollbarWidth,\r\n\t\tdisplaySearchOnHero,\r\n\t\t// computed\r\n\t\tlanguage,\r\n\t\tcontentFacets,\r\n\t\tcontentFacetGroups,\r\n\t\tsortedContentFacets,\r\n\t\teventCalendarTabs,\r\n\t\tpaginatedResults,\r\n\t\ttab,\r\n\t\tinitialTab,\r\n\t\tpageNumber,\r\n\t\tsearchItemsPerPage,\r\n\t\texpectedResultsNumberOnPage,\r\n\t\tsearchPhrase,\r\n\t\tqueryString,\r\n\t\tconstantSearchParams,\r\n\t\tisFirstPageLoaded,\r\n\t\tactiveSidebarFiltersType,\r\n\t\ttotalResultsCount,\r\n\t\tcontentLibraryComposable,\r\n\t\tcurrentTab,\r\n\t\tisCurrentTabPastEvents,\r\n\t\tfiltersAreVisible,\r\n\t\tcontentFacetFilters,\r\n\t\tcontentFacetMonthFilters,\r\n\t\tcontentFiltersAreVisible,\r\n\t\tmonthFiltersAreVisible,\r\n\t\tbothFiltersTypesApplied,\r\n\t\tisListLayout,\r\n\t\tisEventCalendar,\r\n\t\tresultsCount,\r\n\t\tformattedApplyFilterLabel,\r\n\t\tlibraryTabs,\r\n\t\tgroupedPaginatedResultsLength,\r\n\t\tclearAllFiltersLabel,\r\n\t\tfiltersLabel,\r\n\t\tmonthFiltersLabel,\r\n\t\tresetFiltersLabel,\r\n\t\tsearchBarPlaceholder,\r\n\t\t// methods\r\n\t\tcalculateScrollbarWidth,\r\n\t\tformatDisplayName,\r\n\t\tsetSidebarFilters,\r\n\t\tfiltersToggled,\r\n\t\tsearch,\r\n\t\tfetchContentCards,\r\n\t\tchangeTabAndResetPage,\r\n\t\tshowMoreItems,\r\n\t\tsetVideoUrl,\r\n\t\tclosePopup,\r\n\t\tsetIndexWhereReminderPlaced,\r\n\r\n\t\tpagination,\r\n\t\tpaginationClickHandler,\r\n\t\tscrollBlockIntoView,\r\n\t};\r\n}\r\n"],"names":["showFilters","ref","videoUrl","videoIsPlaying","cardLabel","slideIndexForReminderToPlace","scrollbarWidth","displaySearchOnHero","isListLayout","isEventCalendar","clearAllFiltersLabel","filtersLabel","monthFiltersLabel","resetFiltersLabel","searchBarPlaceholder","applyFiltersLabel","useContentLibrary","vm","store","isOnHero","useStore","commit","dispatch","getters","language","computed","contentFacets","contentFacetGroups","sortedContentFacets","eventCalendarTabs","paginatedResults","tab","initialTab","pageNumber","searchItemsPerPage","expectedResultsNumberOnPage","searchPhrase","queryString","constantSearchParams","isFirstPageLoaded","activeSidebarFiltersType","totalResultsCount","contentLibraryComposable","pagination","currentTab","isCurrentTabPastEvents","filtersAreVisible","_a","contentFacetFilters","element","subElement","contentFacetMonthFilters","contentFiltersAreVisible","monthFiltersAreVisible","bothFiltersTypesApplied","resultsCount","formattedApplyFilterLabel","libraryTabs","groupedPaginatedResultsLength","result","calculateScrollbarWidth","formatDisplayName","tabItem","setSidebarFilters","filtersType","filtersToggled","search","fetchContentCards","isInfiniteScroll","facet","changeTabAndResetPage","showMoreItems","setVideoUrl","value","closePopup","setIndexWhereReminderPlaced","screen","initContentLibrary","searchParamsObj","isLoadedWithParams","extractUrlParameters","paginationClickHandler"],"mappings":"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"}