{"version":3,"file":"js/app.12b2bb44.js","mappings":"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","sources":["webpack://related-content/./src/App.vue?f451","webpack://related-content/./src/components/Card.vue?7f50","webpack://related-content/./src/models/card.model.ts","webpack://related-content/./src/components/Card.vue?9d3e","webpack://related-content/./src/components/Card.vue","webpack://related-content/./src/components/Button.vue?9c1c","webpack://related-content/./src/components/Button.vue?fee7","webpack://related-content/./src/components/Button.vue","webpack://related-content/./src/models/appConfig.model.ts","webpack://related-content/./src/App.vue?847a","webpack://related-content/./src/App.vue","webpack://related-content/./src/main.ts","webpack://related-content/webpack/bootstrap","webpack://related-content/webpack/runtime/amd options","webpack://related-content/webpack/runtime/chunk loaded","webpack://related-content/webpack/runtime/compat get default export","webpack://related-content/webpack/runtime/define property getters","webpack://related-content/webpack/runtime/global","webpack://related-content/webpack/runtime/harmony module decorator","webpack://related-content/webpack/runtime/hasOwnProperty shorthand","webpack://related-content/webpack/runtime/jsonp chunk loading","webpack://related-content/webpack/startup"],"sourcesContent":["import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"py-5\"\n}\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"row mb-3\" }\nconst _hoisted_4 = { class: \"col-md-12\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"row row-flex\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Card = _resolveComponent(\"Card\")!\n const _component_Button = _resolveComponent(\"Button\")!\n\n return (_openBlock(), _createElementBlock(\"div\", null, [\n (!_ctx.loading)\n ? (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"h2\", null, _toDisplayString(_ctx.appconfig.sectionTitle), 1)\n ])\n ]),\n (_ctx.cards.Cards.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_5, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.cards.Cards, (card) => {\n return (_openBlock(), _createBlock(_component_Card, {\n key: card.Url,\n card: card\n }, null, 8, [\"card\"]))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n : _createCommentVNode(\"\", true),\n (!_ctx.loading && _ctx.showButton)\n ? (_openBlock(), _createBlock(_component_Button, {\n key: 1,\n onClicked: _ctx.getCards,\n disabled: _ctx.buttonDisabled\n }, null, 8, [\"onClicked\", \"disabled\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"col-md-4 col-sm-12 col-xs-12 mb-3\" }\nconst _hoisted_2 = [\"href\"]\nconst _hoisted_3 = [\"data-src\"]\nconst _hoisted_4 = { class: \"card-body\" }\nconst _hoisted_5 = { class: \"card-title\" }\nconst _hoisted_6 = { class: \"card-text\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"a\", {\n href: _ctx.card.Url,\n class: \"card\"\n }, [\n _createElementVNode(\"img\", {\n \"data-src\": _ctx.card.ImageUrl,\n src: \"https://static.cityofboise.net/images/citywide/defaultCardImage_350x250.jpg\",\n alt: \"\",\n class: \"card-img-top lazy\"\n }, null, 8, _hoisted_3),\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"h3\", _hoisted_5, _toDisplayString(_ctx.card.Title), 1),\n _createElementVNode(\"address\", _hoisted_6, _toDisplayString(_ctx.card.Description), 1)\n ])\n ], 8, _hoisted_2)\n ]))\n}","import { CardData } from './types';\r\n\r\nexport default class CardConfig implements CardData {\r\n Url: string;\r\n Title: string;\r\n Description: string;\r\n ImageUrl: string;\r\n \r\n constructor(\r\n url: string,\r\n title: string,\r\n description: string,\r\n imageUrl: string \r\n \r\n ) { \r\n //cardcount must be multiples of 3\r\n this.Url = url ? url : '';\r\n this.Title = title ? title : '';\r\n this.Description = description ? description : '';\r\n this.ImageUrl = imageUrl ? imageUrl : '';\r\n\r\n }\r\n}\r\n","\r\nimport { Options, Vue } from \"vue-class-component\";\r\nimport { CardData } from '../models/types';\r\nimport CardConfig from '../models/card.model';\r\n\r\n@Options({\r\n props: {\r\n card:{type: CardConfig,\trequired: true\t}\r\n },\r\n computed: {\r\n imgStyle: function () {\r\n return this.card && this.card.ImageUrl !== null ? \"background-image: url(\" + this.card.ImageUrl + \")\" : \"\";\r\n }\r\n }\r\n})\r\nexport default class Card extends Vue { \r\n card!: CardData;\r\n imgStyle!: string;\r\n\r\n}\r\n","import { render } from \"./Card.vue?vue&type=template&id=eff9e59c&ts=true\"\nimport script from \"./Card.vue?vue&type=script&lang=ts\"\nexport * from \"./Card.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"C:\\\\JSRepositories\\\\related-content\\\\related-content\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { withModifiers as _withModifiers, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"section__action-buttons\" }\nconst _hoisted_2 = { class: \"container\" }\nconst _hoisted_3 = { class: \"row\" }\nconst _hoisted_4 = { class: \"col\" }\nconst _hoisted_5 = { class: \"section__action-buttons__buttons-wrapper\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n return (_openBlock(), _createElementBlock(\"section\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"button\", {\n class: _normalizeClass([\"btn btn-info\", { disabled : _ctx.disabled }]),\n onClick: _cache[0] || (_cache[0] = _withModifiers(($event: any) => (_ctx.clicked()), [\"prevent\"]))\n }, \"Load More\", 2)\n ])\n ])\n ])\n ])\n ]))\n}","\r\nimport { Options, Vue } from \"vue-class-component\";\r\n\r\n@Options({\r\n props: {\r\n disabled:{required: false}\r\n }\r\n})\r\nexport default class Button extends Vue { \r\n imgStyle!: string;\r\n disabled!: boolean;\r\n clicked(){\r\n this.$emit('clicked');\r\n }\r\n\r\n}\r\n","import { render } from \"./Button.vue?vue&type=template&id=9cc32d86&ts=true\"\nimport script from \"./Button.vue?vue&type=script&lang=ts\"\nexport * from \"./Button.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"C:\\\\JSRepositories\\\\related-content\\\\related-content\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { AppData } from './types';\r\n\r\nexport default class AppConfig implements AppData {\r\n cardCount: number;\r\n cardNodes: number[];\r\n topics: number[];\r\n sectionTitle: string;\r\n excludeNews: boolean;\r\n initialApi: string;\r\n loadApi: string;\r\n excludeNode: number;\r\n \r\n constructor(\r\n cardCount: number | null,\r\n cardNodes: number[],\r\n topics: number[],\r\n st: string | null,\r\n noNews: boolean | null,\r\n initialApi: string,\r\n loadApi: string ,\r\n excludeNode: number | null\r\n \r\n ) { \r\n //cardcount must be multiples of 3\r\n this.cardCount = cardCount && cardCount !== 0 && cardCount % 3 == 0 ? cardCount : 3;\r\n this.cardNodes = cardNodes;\r\n this.topics = topics;\r\n this.sectionTitle = st && st != '' ? st : 'Related Content';\r\n this.excludeNews = noNews && noNews != null ? noNews : false; \r\n this.initialApi = initialApi ? initialApi : '';\r\n this.loadApi = loadApi? loadApi : '';\r\n this.excludeNode = excludeNode ? excludeNode : 0;\r\n\r\n }\r\n}\r\n","\n//import { Options, Vue} from \"vue-class-component\";\nimport { inject, defineComponent, onMounted, onUpdated, reactive, ref, toRefs} from 'vue';\nimport Card from \"./components/Card.vue\";\nimport Button from \"./components/Button.vue\";\nimport AppConfig from './models/appConfig.model';\nimport LazyLoad from 'vanilla-lazyload';\nimport { CustomWindow, CardList } from \"./models/types\"; \n \ndeclare let window: CustomWindow;\n\n\nexport default defineComponent ({\n components: { Card, Button },\n props: {\n appconfig: {\n type: AppConfig,\n required: true\n }\n },\n setup(props) {\n const axios: any = inject('axios') // inject axios \n \n let cards: CardList = reactive({Cards:[]});\n let currentPage = 1;\n let pageSize = 10;\n let total = 0;\n let totalPages = 0;\n let loading = ref(true);\n let baseAddress = window.location.origin;\n let buttonDisabled = ref(true);\n let showButton = ref(false);\n let excludedCardIds : number[] = [];\n let axiosConfig = {\n method: 'HEAD',\n mode: 'no-cors',\n headers: {\n 'Access-Control-Allow-Origin': '*',\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n },\n withCredentials: true,\n credentials: 'same-origin',\n crossdomain: true\n }\n \n onUpdated(()=>{\n window.lazyLoadInstance.update(); \n });\n onMounted(() => {\n window.lazyLoadInstance = new LazyLoad({\n elements_selector: \".lazy\"\n });\n //add excluded Node\n excludedCardIds.push(props.appconfig.excludeNode); \n //get cards for initial view\n let api = baseAddress + props.appconfig.initialApi + '?topics=' + props.appconfig.topics \n + '&nodes=' + props.appconfig.cardNodes + '&cardCount='+ props.appconfig.cardCount + \n '&noNews=' + props.appconfig.excludeNews + '&excludes=' + props.appconfig.excludeNode;\n axios.get(api,axiosConfig).then((response) =>{\n cards.Cards = cards.Cards && cards.Cards.length >0 ? cards.Cards.concat(response.data.Cards) : response.data.Cards; \n //add ids to excluded list\n for (var i=0; i < response.data.Cards.length; i++){\n if(response.data.Cards[i] && response.data.Cards[i].Id ){\n excludedCardIds.push(response.data.Cards[i].Id); \n \n loading.value = false; \n }\n if(response.data.Cards[i] && response.data.Total && response.data.Total > props.appconfig.cardCount){ \n buttonDisabled.value = false; \n showButton.value = true; \n }\n }\n })\n });\n\n const getCards = ()=>{ \n if(buttonDisabled.value)return;\n //dynamically add page, size, topics\n let api = baseAddress + props.appconfig.loadApi + '?topics=' + props.appconfig.topics \n + '&excludes=' + excludedCardIds + '&noNews=' + props.appconfig.excludeNews + '&excludes=' + props.appconfig.excludeNode;\n \n axios.get(api,axiosConfig).then((response) =>{\n cards.Cards = cards.Cards && cards.Cards.length >0 ? cards.Cards.concat(response.data.Cards) : response.data.Cards; \n total = response.data.Total;\n totalPages = Math.ceil(total / pageSize);\n if(currentPage >= totalPages){\n buttonDisabled.value = true;\n } \n \n currentPage = currentPage + 1;\n }) \n \n } \n return { getCards, cards, buttonDisabled, loading, showButton } \n } \n \n})\n","import { render } from \"./App.vue?vue&type=template&id=75e4d30a&ts=true\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\n\nimport exportComponent from \"C:\\\\JSRepositories\\\\related-content\\\\related-content\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { createApp } from 'vue';\nimport App from './App.vue';\nimport AppConfig from './models/appConfig.model';\nimport axios from 'axios'\nimport VueAxios from 'vue-axios'\n\nlet appData: AppConfig;\n\n\n// Convert the attributes of the given html element to an object.\n// The values are transformed by applying JSON.parse\n// in order to have correct types (Booleans, Numbers, Arrays, Objects, ...)\nconst attributesToProps = (element) => {\n const props = {appconfig : appData};\n let sectionJSON: AppConfig;\n console.log(element);\n const sectionData = element.getAttribute('data-content-config');\n if (sectionData && sectionData != null && sectionData != '') {\n sectionJSON = JSON.parse(sectionData);\n element.removeAttribute('data-content-config');\n const section = sectionJSON.sectionTitle ? sectionJSON.sectionTitle : 'Related Content';\n\n props.appconfig = new AppConfig(sectionJSON.cardCount, sectionJSON.cardNodes, \n sectionJSON.topics, section, sectionJSON.excludeNews, \n sectionJSON.initialApi, sectionJSON.loadApi, sectionJSON.excludeNode);\n //console.log(sectionData);\n }\n// const topics = element.getAttribute('data-topics');\n// if (topics && topics != null && topics.length > 0) {\n// topicJSON = JSON.parse(topics);\n// props.appconfig = new AppConfig(card, cardJSON, topicJSON, section);\n \n// element.removeAttribute('data-topics');\n// }\n return props;\n};\nconst node = document.getElementById('cob-related-content') as Element;\nconst props = attributesToProps(node);\nconst app = createApp(App, props);\napp.use(VueAxios, axios);\napp.provide('axios', app.config.globalProperties.axios);\napp.mount(node);\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdO = {};","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.hmd = function(module) {\n\tmodule = Object.create(module);\n\tif (!module.children) module.children = [];\n\tObject.defineProperty(module, 'exports', {\n\t\tenumerable: true,\n\t\tset: function() {\n\t\t\tthrow new Error('ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + module.id);\n\t\t}\n\t});\n\treturn module;\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkrelated_content\"] = self[\"webpackChunkrelated_content\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(22); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["_hoisted_1","key","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","render","_ctx","_cache","$props","$setup","$data","$options","_component_Card","_resolveComponent","_component_Button","_openBlock","_createElementBlock","loading","_createCommentVNode","_createElementVNode","_toDisplayString","appconfig","sectionTitle","cards","Cards","length","_Fragment","_renderList","card","_createBlock","Url","showButton","onClicked","getCards","disabled","buttonDisabled","_hoisted_6","href","ImageUrl","src","alt","Title","Description","CardConfig","constructor","url","title","description","imageUrl","this","Card","Vue","Options","props","type","required","computed","imgStyle","__exports__","_normalizeClass","onClick","_withModifiers","$event","clicked","Button","$emit","AppConfig","cardCount","cardNodes","topics","st","noNews","initialApi","loadApi","excludeNode","excludeNews","defineComponent","components","setup","axios","inject","reactive","currentPage","pageSize","total","totalPages","ref","baseAddress","window","location","origin","excludedCardIds","axiosConfig","method","mode","headers","Accept","withCredentials","credentials","crossdomain","onUpdated","lazyLoadInstance","update","onMounted","LazyLoad","elements_selector","push","api","get","then","response","concat","data","i","Id","value","Total","Math","ceil","appData","attributesToProps","element","sectionJSON","console","log","sectionData","getAttribute","JSON","parse","removeAttribute","section","node","document","getElementById","app","createApp","App","use","VueAxios","provide","config","globalProperties","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","id","loaded","__webpack_modules__","call","m","amdO","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","Object","keys","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","g","globalThis","Function","e","hmd","create","children","set","Error","obj","prop","prototype","hasOwnProperty","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","forEach","bind","__webpack_exports__"],"sourceRoot":""}