{"version":3,"file":"ClubbaseNieuwsOverzicht.vue.bundle.js","sources":["../../../Frontend/vue/views/ClubbaseNieuwsOverzicht/ClubbaseNieuwsOverzicht.ts?vue&type=script&src=true&lang.ts","../../../Frontend/vue/views/ClubbaseNieuwsOverzicht/index.ts"],"sourcesContent":["import Loader from '@/components/Loader/Loader.vue';\r\nimport nieuwsRepository, { NieuwsArtikel, Thema } from '@/repositories/nieuws.repository';\r\nimport Vue from 'vue';\r\nimport Component from 'vue-class-component';\r\n\r\ndeclare var rootNodeId: number;\r\ndeclare var currentNodeId: number;\r\ndeclare var isRegion: boolean;\r\ndeclare var newsRoot: string;\r\ndeclare var featuredItemsTitle: string;\r\ndeclare var regionName: string;\r\ndeclare var regionKnowledgeBaseUrl: string;\r\n\r\n@Component({\r\n name: 'ClubbaseNieuwsOverzicht',\r\n\r\n components: {\r\n Loader\r\n },\r\n filters: {\r\n truncate(text: string, length: number, clamp: string | null) {\r\n clamp = clamp || '...';\r\n var node = document.createElement('div');\r\n node.innerHTML = text;\r\n var content = node.textContent;\r\n return content && content.length > length ? content.slice(0, length) + clamp : content;\r\n }\r\n }\r\n})\r\nexport default class ClubbaseNieuwsOverzicht extends Vue {\r\n\r\n public newsItems: NieuwsArtikel[] = [];\r\n public featuredItems: NieuwsArtikel[] = [];\r\n public paginatedNewsItems: NieuwsArtikel[] = [];\r\n\r\n public popularThemes: Thema[] = [];\r\n public currentTheme: number = -1;\r\n public isRegion: boolean = isRegion;\r\n public newsRoot: string = newsRoot;\r\n public featuredItemsTitle: string = featuredItemsTitle;\r\n public showMoreNumber: number = 5;\r\n public regionName: string = regionName;\r\n public regionKnowledgeBaseUrl: string = regionKnowledgeBaseUrl;\r\n\r\n public pageSize: number = 9;\r\n public currentPage: number = 1;\r\n public totalItems: number = 0;\r\n\r\n public isLoadingNewsItems: boolean = true;\r\n public isLoadingFeaturedItems: boolean = true;\r\n\r\n public created() {\r\n this.getNewsItems();\r\n this.getFeaturedItems();\r\n\r\n if (!isRegion) {\r\n nieuwsRepository.getPopularThemes(currentNodeId).then(response => { this.popularThemes = response; });\r\n }\r\n\r\n }\r\n\r\n public getNewsItems() {\r\n this.isLoadingNewsItems = true;\r\n\r\n nieuwsRepository.getNieuws(rootNodeId, this.currentTheme, this.pageSize, this.currentPage - 1, this.isRegion).then(response => {\r\n this.newsItems = response.Items;\r\n this.totalItems = response.TotalItems;\r\n\r\n this.isLoadingNewsItems = false;\r\n });\r\n }\r\n\r\n public getFeaturedItems() {\r\n this.isLoadingFeaturedItems = true;\r\n\r\n nieuwsRepository.getUitgelichteItems(currentNodeId).then(response => {\r\n this.featuredItems = response.Items;\r\n\r\n this.isLoadingFeaturedItems = false;\r\n });\r\n }\r\n\r\n public showMoreThemes() {\r\n this.showMoreNumber = this.popularThemes.length;\r\n }\r\n\r\n public showLessThemes() {\r\n this.showMoreNumber = 5;\r\n }\r\n\r\n public onPageChanged(page: number) {\r\n this.currentPage = page;\r\n this.isLoadingNewsItems = true;\r\n\r\n // Get Items\r\n this.getNewsItems();\r\n };\r\n\r\n\r\n public toggleTheme(themeId: number) {\r\n if (this.currentTheme == themeId) {\r\n this.currentTheme = -1;\r\n }\r\n else {\r\n this.currentTheme = themeId;\r\n }\r\n\r\n this.currentPage = 1;\r\n this.getNewsItems();\r\n }\r\n}\r\n\r\n\r\n","import Vue from 'vue'\r\nimport { BootstrapVue, IconsPlugin } from 'bootstrap-vue'\r\nimport ClubbaseNieuwsOverzicht from './ClubbaseNieuwsOverzicht.vue'\r\n\r\nVue.use(BootstrapVue)\r\nVue.use(IconsPlugin)\r\nVue.config.productionTip = false\r\n\r\nconst app = new Vue({\r\n name: 'ClubbaseNieuwsOverzicht',\r\n el: '#app',\r\n render: (h) => h(ClubbaseNieuwsOverzicht),\r\n});\r\n"],"names":["ClubbaseNieuwsOverzicht","Vue","__publicField","nieuwsRepository","response","page","themeId","__decorateClass","Component","Loader","text","length","clamp","node","content","BootstrapVue","IconsPlugin","h"],"mappings":"4uBA6BA,IAAqBA,EAArB,cAAqDC,CAAI,CAAzD,kCAEWC,EAAA,iBAA6B,CAAA,GAC7BA,EAAA,qBAAiC,CAAA,GACjCA,EAAA,0BAAsC,CAAA,GAEtCA,EAAA,qBAAyB,CAAA,GACzBA,EAAA,oBAAuB,IACvBA,EAAA,gBAAoB,UACpBA,EAAA,gBAAmB,UACnBA,EAAA,0BAA6B,oBAC7BA,EAAA,sBAAyB,GACzBA,EAAA,kBAAqB,YACrBA,EAAA,8BAAiC,wBAEjCA,EAAA,gBAAmB,GACnBA,EAAA,mBAAsB,GACtBA,EAAA,kBAAqB,GAErBA,EAAA,0BAA8B,IAC9BA,EAAA,8BAAkC,IAElC,SAAU,CACb,KAAK,aAAa,EAClB,KAAK,iBAAiB,EAEjB,UACDC,EAAiB,iBAAiB,aAAa,EAAE,KAAiBC,GAAA,CAAE,KAAK,cAAgBA,CAAA,CAAW,CAG5G,CAEO,cAAe,CAClB,KAAK,mBAAqB,GAE1BD,EAAiB,UAAU,WAAY,KAAK,aAAc,KAAK,SAAU,KAAK,YAAc,EAAG,KAAK,QAAQ,EAAE,KAAiBC,GAAA,CAC3H,KAAK,UAAYA,EAAS,MAC1B,KAAK,WAAaA,EAAS,WAE3B,KAAK,mBAAqB,EAAA,CAC7B,CACL,CAEO,kBAAmB,CACtB,KAAK,uBAAyB,GAE9BD,EAAiB,oBAAoB,aAAa,EAAE,KAAiBC,GAAA,CACjE,KAAK,cAAgBA,EAAS,MAE9B,KAAK,uBAAyB,EAAA,CACjC,CACL,CAEO,gBAAiB,CACf,KAAA,eAAiB,KAAK,cAAc,MAC7C,CAEO,gBAAiB,CACpB,KAAK,eAAiB,CAC1B,CAEO,cAAcC,EAAc,CAC/B,KAAK,YAAcA,EACnB,KAAK,mBAAqB,GAG1B,KAAK,aAAa,CACtB,CAGO,YAAYC,EAAiB,CAC5B,KAAK,cAAgBA,EACrB,KAAK,aAAe,GAGpB,KAAK,aAAeA,EAGxB,KAAK,YAAc,EACnB,KAAK,aAAa,CACtB,CACJ,EAjFqBN,EAArBO,EAAA,CAhBCC,EAAU,CACP,KAAM,0BAEN,WAAY,CACR,OAAAC,CACJ,EACA,QAAS,CACL,SAASC,EAAcC,EAAgBC,EAAsB,CACzDA,EAAQA,GAAS,MACb,IAAAC,EAAO,SAAS,cAAc,KAAK,EACvCA,EAAK,UAAYH,EACjB,IAAII,EAAUD,EAAK,YACZ,OAAAC,GAAWA,EAAQ,OAASH,EAASG,EAAQ,MAAM,EAAGH,CAAM,EAAIC,EAAQE,CACnF,CACJ,CAAA,CACH,CAAA,EACoBd,CAAA,olJCzBrBC,EAAI,IAAIc,CAAY,EACpBd,EAAI,IAAIe,CAAW,EACnBf,EAAI,OAAO,cAAgB,GAEf,IAAIA,EAAI,CAChB,KAAM,0BACN,GAAI,OACJ,OAASgB,GAAMA,EAAEjB,CAAuB,CAC5C,CAAC"}