{"version":3,"sources":["webpack:///./src/components/base/app-event-info.vue?9f3f","webpack:///./src/components/base/app-event-info.vue","webpack:///src/components/base/app-event-info.vue","webpack:///./src/components/base/app-event-info.vue?29f7","webpack:///./src/components/base/app-event-info.vue?3fb4","webpack:///./src/domain/services/event-date-service.js"],"names":["render","_vm","this","_c","_self","staticClass","logoUrl","withExternalLink","externalLink","staticStyle","attrs","ref","_e","messageAlert","typeAlert","_v","_s","event","displayName","technicalName","staticRenderFns","props","type","validator","default","showDate","computed","status","methods","eventStatus","dateService","message","months","eventRegistrationStatus","words","component","MIN_DATE","DateTime","fromSeconds","MAX_DATE","EventDateService","constructor","_event","getData","getMinDate","registrationStartedAt","getMaxDate","registrationEndedAt","EventService","isEventOccasion","eventOccasion","startedAt","endedAt","dateStr","date","fromISO","invalid","locale","start","end","Error","entity","divider","formatDateWithDivider","year","startYear","month","startMonth","day","startDay","endYear","endMonth","endDay","monthToStr","state","formatDate","before","during","after","onGoing","TIME_STATUSES","ENDED","WILL_START"],"mappings":"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","file":"js/change-password~check-email~email-confirmed~events~login~recovery~registration-success~reset-success.0c19ccc0.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/style-resources-loader/lib/index.js??ref--9-oneOf-1-4!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./app-event-info.vue?vue&type=style&index=0&id=55dc4af1&prod&lang=scss&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"event-info-main\"},[(_vm.logoUrl)?_c('div',{staticClass:\"logo-wrapper\"},[(_vm.withExternalLink && _vm.externalLink)?_c('a',{staticClass:\"logo-wrapper__logo\",staticStyle:{\"display\":\"block\"},attrs:{\"href\":_vm.externalLink,\"target\":\"_blank\"}},[_c('img',{ref:\"img\",attrs:{\"src\":_vm.logoUrl,\"alt\":\"logo\"}})]):_c('div',{staticClass:\"logo-wrapper__logo\"},[_c('img',{attrs:{\"src\":_vm.logoUrl,\"alt\":\"logo\"}})])]):_vm._e(),(_vm.messageAlert)?_c('div',{staticClass:\"event-info-main__status\"},[_c('Alert',{attrs:{\"type\":_vm.typeAlert}},[_vm._v(\" \"+_vm._s(_vm.messageAlert)+\" \")])],1):_vm._e(),(_vm.event.displayName || _vm.event.technicalName)?_c('div',{staticClass:\"event-info-main__caption s-subtitle-secondary\"},[_vm._v(\" \"+_vm._s(_vm.event.displayName ? _vm.event.displayName : _vm.event.technicalName)+\" \")]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./app-event-info.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./app-event-info.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./app-event-info.vue?vue&type=template&id=55dc4af1&\"\nimport script from \"./app-event-info.vue?vue&type=script&lang=js&\"\nexport * from \"./app-event-info.vue?vue&type=script&lang=js&\"\nimport style0 from \"./app-event-info.vue?vue&type=style&index=0&id=55dc4af1&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import EventService from '@/domain/services/event-service'\nimport { DateTime } from '@/plugins/luxon'\nimport { monthToStr, formatDate, TIME_STATUSES } from '@/utils'\n\nconst MIN_DATE = DateTime.fromSeconds(0)\nconst MAX_DATE = DateTime.fromSeconds(2177280000) // 2038 12 30\n\nexport default class EventDateService {\n static MIN_DATE = MIN_DATE\n static MAX_DATE = MAX_DATE\n constructor(event) {\n this._event = event\n }\n\n getData() {\n return this._event\n }\n\n /**\n * @returns {DateTime}\n */\n get startRegistrationTime() {\n return EventDateService.getMinDate(this._event.registrationStartedAt)\n }\n\n /**\n * @returns {DateTime}\n */\n get endRegistrationTime() {\n return EventDateService.getMaxDate(this._event.registrationEndedAt)\n }\n\n /**\n * @returns {DateTime}\n */\n get startEventTime() {\n if (!EventService.isEventOccasion(this._event)) {\n return EventDateService.MIN_DATE\n }\n return EventDateService.getMinDate(this._event.eventOccasion.startedAt)\n }\n\n /**\n * @returns {DateTime}\n */\n get endEventTime() {\n if (!EventService.isEventOccasion(this._event)) {\n return EventDateService.MAX_DATE\n }\n return EventDateService.getMaxDate(this._event.eventOccasion.endedAt)\n }\n\n static getMinDate(dateStr) {\n const date = DateTime.fromISO(dateStr)\n if (date.invalid) {\n return EventDateService.MIN_DATE\n }\n return date\n }\n\n static getMaxDate(dateStr) {\n const date = DateTime.fromISO(dateStr)\n if (date.invalid) {\n return EventDateService.MAX_DATE\n }\n return date\n }\n\n /**\n * функция возвращает две даты через символ, отправленный в поле \"locale.divider\" - по умолчанию черточка:\n * @param locale\n * @param start\n * @param end\n */\n static getAlertMessageWithDivider(locale, start, end) {\n if ((!start) instanceof DateTime || (!end) instanceof DateTime) {\n throw new Error(\n 'Неверный тип даты, передаваемый в функцию getEntityStatus!',\n )\n }\n\n const { entity = '', months = [], divider = '-' } = locale\n\n const formatDateWithDivider = (start, end) => {\n const { year: startYear, month: startMonth, day: startDay } = start\n const { year: endYear, month: endMonth, day: endDay } = end\n\n // отбрасываем одинаковые года и месяцы\n if (\n endDay === startDay &&\n startMonth === endMonth &&\n startYear === endYear\n ) {\n return `${startDay} ${monthToStr(startMonth, months)} ${startYear}`\n } else if (startMonth === +endMonth && startYear === endYear) {\n return `${startDay} ${divider} ${endDay} ${monthToStr(\n startMonth,\n months,\n )} ${startYear}`\n } else if (startYear === endYear) {\n return `${startDay} ${monthToStr(\n startMonth,\n months,\n )} ${divider} ${endDay} ${monthToStr(endMonth, months)} ${startYear}`\n }\n return `${startDay} ${monthToStr(\n startMonth,\n months,\n )} ${startYear} ${divider} ${endDay} ${monthToStr(\n endMonth,\n months,\n )} ${endYear}`\n }\n\n return {\n message: `${entity} ${formatDateWithDivider(start, end)}`,\n state: 'info',\n }\n }\n\n static getMessageWithOneDate(locale, date) {\n if (!locale.entity) {\n return formatDate(date, locale.months)\n }\n return `${locale.entity} ${formatDate(date, locale.months)}`\n }\n\n static getEntityStatusAlert = (locale, start, end, status) => {\n if ((!start) instanceof DateTime || (!end) instanceof DateTime) {\n throw new Error(\n 'Неверный тип даты, передаваемый в функцию getEntityStatus!',\n )\n }\n\n const {\n entity = '',\n before = '',\n during = '',\n after = '',\n months = [''],\n onGoing = '',\n } = locale\n\n if (status === TIME_STATUSES.ENDED) {\n return {\n message: `${entity} ${after} ${formatDate(end, months)}`,\n state: 'after',\n }\n }\n\n if (status === TIME_STATUSES.WILL_START) {\n return {\n message: `${entity} ${before} ${formatDate(start, months)}`,\n state: 'before',\n }\n }\n\n if (end === EventDateService.MAX_DATE) {\n // \"Регистрация идет\" (без даты)\n return {\n message: `${entity} ${onGoing}`,\n state: 'during',\n }\n }\n\n return {\n message: `${entity} ${during} ${formatDate(end, months)}`,\n state: 'during',\n }\n }\n}\n"],"sourceRoot":""}