{"version":3,"sources":["webpack:///./infrastructure/presentation/views/SearchSchools.vue?bef9","webpack:///./infrastructure/presentation/components/application/filters/CourseTrack.vue?d769","webpack:///./infrastructure/presentation/components/application/filters/CourseTrack.vue?2b75","webpack:///./infrastructure/presentation/components/application/filters/CourseTrack.vue","webpack:///./infrastructure/presentation/views/SearchSchools.vue?ca4a","webpack:///./infrastructure/presentation/views/SearchSchools.vue","webpack:///./infrastructure/presentation/components/application/filters/CourseTrack.vue?7f26","webpack:///./infrastructure/presentation/views/SearchSchools.vue?37d4","webpack:///./infrastructure/presentation/components/application/filters/CourseTrack.vue?7a0a"],"names":["_hoisted_1","class","id","render","_ctx","_cache","$props","$setup","$data","$options","_component_course_track","courseTracks","length","key","courseTrack","index","_hoisted_2","_hoisted_3","_component_course","_component_Slide","_component_Navigation","_component_carousel","title","courses","settings","breakpoints","addons","default","course","_","name","components","Carousel","Slide","Navigation","Pagination","props","type","Object","required","setup","store","getters","itemsToShow","snapAlign","wrapAround","320","420","470","560","630","720","820","920","1020","1120","1270","1320","1920","2340","loadCourses","dispatch","message","console","error","__exports__","CourseTrackFilter","entityID","String","Array","loadCourseTracks","schoolID","value","Number"],"mappings":"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","file":"js/chunk-35ce0516.e0d1e798.js","sourcesContent":["import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createBlock as _createBlock, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-337906c4\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = {\n class: \"content view\",\n id: \"teleported\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_course_track = _resolveComponent(\"course-track\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n (_ctx.courseTracks.length)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(_ctx.courseTracks, (courseTrack, index) => {\n return (_openBlock(), _createBlock(_component_course_track, {\n key: 'courseTrack' + index,\n courseTrack: courseTrack,\n class: \"course-track\"\n }, null, 8, [\"courseTrack\"]))\n }), 128))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, resolveComponent as _resolveComponent, createVNode as _createVNode, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-ef57bad6\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"course-track\" }\nconst _hoisted_2 = { class: \"course-track__content\" }\nconst _hoisted_3 = { class: \"course-track__title\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_course = _resolveComponent(\"course\")!\n const _component_Slide = _resolveComponent(\"Slide\")!\n const _component_Navigation = _resolveComponent(\"Navigation\")!\n const _component_carousel = _resolveComponent(\"carousel\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createTextVNode(_toDisplayString(_ctx.courseTrack) + \" \", 1),\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", _hoisted_2, [\n _createElementVNode(\"h3\", _hoisted_3, _toDisplayString(_ctx.courseTrack.id) + \" \" + _toDisplayString(_ctx.courseTrack.title), 1),\n (_ctx.courses.length)\n ? (_openBlock(), _createBlock(_component_carousel, {\n key: 0,\n settings: _ctx.settings,\n breakpoints: _ctx.breakpoints\n }, {\n addons: _withCtx(() => [\n _createVNode(_component_Navigation)\n ]),\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.courses, (course, index) => {\n return (_openBlock(), _createBlock(_component_Slide, {\n key: 'course' + index\n }, {\n default: _withCtx(() => [\n _createVNode(_component_course, { course: course }, null, 8, [\"course\"])\n ]),\n _: 2\n }, 1024))\n }), 128))\n ]),\n _: 1\n }, 8, [\"settings\", \"breakpoints\"]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ], 64))\n}","\r\nimport {computed, ComputedRef, defineComponent, onMounted, PropType} from \"vue\";\r\nimport \"vue3-carousel/dist/carousel.css\";\r\nimport {Carousel, Navigation, Pagination, Slide} from \"vue3-carousel\";\r\nimport {Course, CourseTrack} from \"../../../../../domain/entities/entities\";\r\nimport course from \"../Course.vue\";\r\nimport {dispatchErrorBox} from \"../../mixins\";\r\nimport {RepositoryException} from \"../../../../../domain/exceptions/exceptions\";\r\nimport {useStore} from \"vuex\";\r\n\r\nexport default defineComponent({\r\n name: \"CourseTrackFilter\",\r\n\r\n components: { Carousel, Slide, Navigation, course, Pagination },\r\n\r\n props: {\r\n courseTrack: {\r\n type: Object as PropType,\r\n required: true,\r\n }\r\n },\r\n\r\n setup(props) {\r\n const store = useStore();\r\n const courses: ComputedRef = computed(() => store.getters[\"course_module/coursesByCourseTrack\"])\r\n\r\n /** Todo: document this explaining where and how it's gonna be used. */\r\n const settings = {\r\n itemsToShow: 1,\r\n snapAlign: \"center\",\r\n wrapAround: false\r\n };\r\n\r\n /** Todo: explain what the heck is this. */\r\n const breakpoints = {\r\n 320: {\r\n itemsToShow: 1.25\r\n },\r\n\r\n 420: {\r\n itemsToShow: 1.5\r\n },\r\n 470: {\r\n itemsToShow: 1.75\r\n },\r\n\r\n 560: {\r\n itemsToShow: 2\r\n },\r\n\r\n 630: {\r\n itemsToShow: 3\r\n },\r\n\r\n 720: {\r\n itemsToShow: 3.5\r\n },\r\n\r\n 820: {\r\n itemsToShow: 3\r\n },\r\n\r\n 920: {\r\n itemsToShow: 3.25\r\n },\r\n\r\n 1020: {\r\n itemsToShow: 3.5\r\n },\r\n\r\n 1120: {\r\n itemsToShow: 4\r\n },\r\n\r\n 1270: {\r\n itemsToShow: 5\r\n },\r\n\r\n 1320: {\r\n itemsToShow: 6\r\n },\r\n 1920: {\r\n itemsToShow: 7\r\n },\r\n 2340: {\r\n itemsToShow: 9\r\n }\r\n };\r\n\r\n onMounted(async () => {\r\n await loadCourses(props.courseTrack.id);\r\n });\r\n\r\n async function loadCourses(id: number): Promise {\r\n try {\r\n await store.dispatch(\r\n \"course_module/loadCoursesOfCourseTrack\",\r\n id\r\n );\r\n } catch (e) {\r\n if (e instanceof RepositoryException) {\r\n await dispatchErrorBox(e.message);\r\n } else {\r\n console.error(e);\r\n await dispatchErrorBox(\"Ocorreu um erro inesperado.\");\r\n }\r\n }\r\n }\r\n\r\n return {\r\n courses,\r\n settings,\r\n breakpoints\r\n };\r\n }\r\n});\r\n","import { render } from \"./CourseTrack.vue?vue&type=template&id=ef57bad6&scoped=true&ts=true\"\nimport script from \"./CourseTrack.vue?vue&type=script&lang=ts\"\nexport * from \"./CourseTrack.vue?vue&type=script&lang=ts\"\n\nimport \"./CourseTrack.vue?vue&type=style&index=0&id=ef57bad6&lang=css\"\nimport \"./CourseTrack.vue?vue&type=style&index=1&id=ef57bad6&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\dev\\\\purple__bee\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-ef57bad6\"]])\n\nexport default __exports__","\r\nimport { defineComponent, onBeforeMount, ref } from \"vue\";\r\nimport { RepositoryException } from \"../../../domain/exceptions/exceptions\";\r\nimport { dispatchErrorBox } from \"../components/mixins\";\r\nimport { useStore } from \"vuex\";\r\nimport { CourseTrack } from \"../../../domain/entities/entities\";\r\nimport { Carousel, Navigation, Pagination, Slide } from \"vue3-carousel\";\r\nimport course from \"../components/application/Course.vue\";\r\nimport courseTrack from \"../components/application/CourseTrack.vue\";\r\nimport CourseTrackFilter from \"../components/application/filters/CourseTrack.vue\";\r\nimport { wrapLoading } from \"../utils/wrap_loading\";\r\nimport { dispatchError } from \"../utils/error_handling\";\r\n\r\nexport default defineComponent({\r\n name: \"SearchSchools\",\r\n components: {\r\n Carousel,\r\n Slide,\r\n Navigation,\r\n Pagination,\r\n course,\r\n courseTrack,\r\n CourseTrackFilter\r\n },\r\n props: {\r\n entityID: String\r\n },\r\n setup(props) {\r\n const store = useStore();\r\n\r\n /** Todo: document this explaining where and how it's gonna be used. */\r\n const settings = {\r\n itemsToShow: 1,\r\n snapAlign: \"center\",\r\n wrapAround: false\r\n };\r\n\r\n /** Todo: explain what the heck is this. */\r\n const breakpoints = {\r\n 320: {\r\n itemsToShow: 1.25\r\n },\r\n\r\n 420: {\r\n itemsToShow: 1.5\r\n },\r\n 470: {\r\n itemsToShow: 1.75\r\n },\r\n\r\n 560: {\r\n itemsToShow: 2\r\n },\r\n\r\n 630: {\r\n itemsToShow: 3\r\n },\r\n\r\n 720: {\r\n itemsToShow: 3.5\r\n },\r\n\r\n 820: {\r\n itemsToShow: 3\r\n },\r\n\r\n 920: {\r\n itemsToShow: 3.25\r\n },\r\n\r\n 1020: {\r\n itemsToShow: 3.5\r\n },\r\n\r\n 1120: {\r\n itemsToShow: 4\r\n },\r\n\r\n 1270: {\r\n itemsToShow: 5\r\n },\r\n\r\n 1320: {\r\n itemsToShow: 6\r\n },\r\n 1920: {\r\n itemsToShow: 7\r\n },\r\n 2340: {\r\n itemsToShow: 9\r\n }\r\n };\r\n\r\n const courseTracks = ref(Array());\r\n\r\n onBeforeMount(async () => {\r\n await loadCourseTracks(Number(props.entityID));\r\n });\r\n\r\n async function loadCourseTracks(schoolID: number) {\r\n try {\r\n await wrapLoading(async () => {\r\n courseTracks.value = await store.dispatch(\r\n \"categories_module/loadCourseTracksOfSchool\",\r\n schoolID\r\n );\r\n });\r\n } catch (e) {\r\n await dispatchError(e);\r\n }\r\n }\r\n\r\n return {\r\n breakpoints,\r\n settings,\r\n courseTracks\r\n };\r\n }\r\n});\r\n","import { render } from \"./SearchSchools.vue?vue&type=template&id=337906c4&scoped=true&ts=true\"\nimport script from \"./SearchSchools.vue?vue&type=script&lang=ts\"\nexport * from \"./SearchSchools.vue?vue&type=script&lang=ts\"\n\nimport \"./SearchSchools.vue?vue&type=style&index=0&id=337906c4&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\dev\\\\purple__bee\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-337906c4\"]])\n\nexport default __exports__","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./CourseTrack.vue?vue&type=style&index=1&id=ef57bad6&scoped=true&lang=css\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./SearchSchools.vue?vue&type=style&index=0&id=337906c4&scoped=true&lang=css\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./CourseTrack.vue?vue&type=style&index=0&id=ef57bad6&lang=css\""],"sourceRoot":""}