{"version":3,"file":"column-definition-CE-melBO.js","sources":["../../src/components/search/form/FilterVerbType.vue","../../src/helpers/list.ts","../../src/components/search/list/ListSort.vue","../../src/components/field/PreacherField.vue","../../src/components/field/MediaField.vue","../../src/components/field/DateField.vue","../../src/components/field/SeriesField.vue","../../src/components/field/VerbField.vue","../../src/helpers/list-item.ts","../../src/components/search/list/ListItem.vue","../../src/components/search/list/ResultList.vue","../../src/helpers/column-definition.ts"],"sourcesContent":["\n\n","import type {ColumnDefinition} from '@/types/list';\nimport type {\n LocationQuery,\n LocationQueryRaw,\n RouteLocationNormalizedLoaded,\n RouteLocationAsRelativeGeneric,\n RouteLocationAsPathGeneric,\n} from 'vue-router';\nimport type {Configuration, SortParams} from '@/types/config';\n\nexport function getColumnsByConfig(\n columns: Partial[],\n config: Configuration\n): ColumnDefinition[] {\n const defaultSite = Boolean(config.site.default_site);\n const embedded = Boolean(config.site.embedded_site);\n return columns\n .filter((col: Partial) => {\n if (col.field === 'field_preacher') {\n col.enabled = defaultSite || embedded;\n }\n\n return col.enabled;\n })\n .map((col: Partial) => {\n col.width = {...(defaultSite ? col._width?.default : col._width?.filtered)};\n delete col._width;\n return col as ColumnDefinition;\n });\n}\n\nexport function columnClasses(col: ColumnDefinition): string[] {\n return ['list--header', 'list--header--' + col.field];\n}\n\nexport function arrowClasses(col: ColumnDefinition, order: string, dir: string): string[] {\n let direction = 'asc';\n if (order === col.sort && dir.toUpperCase() === 'DESC') {\n direction = 'desc';\n }\n return ['list--sort-chevron', 'list--sort-chevron--' + direction];\n}\n\nexport function sortLinkWithRoute(\n route: RouteLocationAsRelativeGeneric | RouteLocationAsPathGeneric,\n col: ColumnDefinition,\n currentParams: LocationQuery,\n order: string,\n dir: string\n): RouteLocationAsRelativeGeneric | RouteLocationAsPathGeneric {\n const query: LocationQueryRaw = {\n ...currentParams,\n order: col.sort,\n };\n if (order === col.sort) {\n query.dir = dir === 'ASC' ? 'DESC' : 'ASC';\n } else {\n delete query.dir;\n }\n\n return {\n ...route,\n query,\n };\n}\n\nexport function sortLink(\n col: ColumnDefinition,\n currentParams: LocationQuery,\n order: string,\n dir: string\n): RouteLocationAsRelativeGeneric | RouteLocationAsPathGeneric {\n return sortLinkWithRoute({name: 'search'}, col, currentParams, order, dir);\n}\n\nexport function sortLinkClasses(col: ColumnDefinition, order?: string): string[] {\n const list = ['list--sort-link'];\n if (order === col.sort) {\n list.push('list--sort-link--active');\n }\n return list;\n}\n\nexport function listItemColClasses(col: ColumnDefinition): string[] {\n return ['list--item--col', 'list--item--col--' + col.field];\n}\n\nexport function listItemLabelClasses(col: ColumnDefinition): string[] {\n return ['list--item--label', 'list--item--label--' + col.field];\n}\nexport function listItemValueClasses(col: ColumnDefinition): string[] {\n return ['list--item--value', 'list--item--value--' + col.field];\n}\n\nexport function listItemsValuesClasses(col: ColumnDefinition): string[] {\n return ['list--values', 'list--values--' + col.field];\n}\n\nexport function computeCurrentOrder(route: RouteLocationNormalizedLoaded, sorting: SortParams) {\n return String(route.query?.order ?? sorting.order?.default ?? 'DEFAULT');\n}\n\nexport function computeCurrentDir(route: RouteLocationNormalizedLoaded) {\n return String(route.query?.dir ?? 'ASC');\n}\n","\n\n","\n\n","\n\n","\n\n","\n\n","\n\n","import type {Component} from 'vue';\n\nimport PreacherField from '@/components/field/PreacherField.vue';\nimport MediaField from '@/components/field/MediaField.vue';\nimport DateField from '@/components/field/DateField.vue';\nimport SeriesField from '@/components/field/SeriesField.vue';\nimport VerbField from '@/components/field/VerbField.vue';\nimport TitleField from '@/components/field/TitleField.vue';\n\nexport const fieldComponents: Record = {\n field_preacher: PreacherField,\n // denomination: TermField,\n media: MediaField,\n field_date: DateField,\n field_series: SeriesField,\n field_lesson_reference: VerbField,\n field_main_verb_reference: VerbField,\n title: TitleField,\n preaching_date: DateField,\n};\n\nexport function getComponentForField(name: string): Component | undefined {\n return getComponentForFieldFromItems(name, fieldComponents);\n}\n\nexport function getComponentForFieldFromItems(\n name: string,\n components: Record\n): Component | undefined {\n return components[name];\n}\n","\n\n","\n\n","import type {ColumnDefinition} from '@/types/list';\n\nexport const columnDefinition: Partial[] = [\n {\n label: 'Lelkész',\n enabled: false,\n _width: {\n default: {md: 0},\n filtered: {md: 2},\n },\n field: 'field_preacher',\n sort: 'preacher',\n type: 'term',\n filter: 'preacher',\n },\n {\n label: 'Felekezet',\n enabled: false,\n _width: {\n default: {md: 0},\n filtered: {md: 2},\n },\n field: 'denomination',\n sort: 'denomination',\n type: 'term',\n filter: 'denomination',\n },\n {\n label: 'Cím',\n enabled: true,\n _width: {\n default: {md: 2},\n filtered: {md: 3},\n },\n field: 'title',\n sort: 'title',\n type: 'link-title',\n },\n {\n label: 'Alapige',\n enabled: true,\n _width: {\n default: {md: 2},\n filtered: {md: 2},\n },\n field: 'field_main_verb_reference',\n sort: 'main_verb',\n type: 'verbterm',\n filter: 'verb',\n },\n {\n label: 'Lekció',\n enabled: true,\n _width: {\n default: {md: 2},\n filtered: {md: 2},\n },\n field: 'field_lesson_reference',\n sort: 'lesson',\n type: 'verbterm',\n filter: 'verb',\n },\n {\n label: 'Sorozat',\n enabled: true,\n _width: {\n default: {md: 2},\n filtered: {md: 2},\n },\n field: 'field_series',\n sort: 'series',\n type: 'term',\n filter: 'series',\n },\n {\n label: 'Dátum',\n enabled: true,\n _width: {\n default: {md: 2},\n filtered: {md: 2},\n },\n field: 'preaching_date',\n sort: 'date',\n type: 'date',\n },\n {\n label: 'Média',\n enabled: true,\n _width: {\n default: {md: 1},\n filtered: {md: 1},\n },\n field: 'media',\n sort: 'media',\n type: 'media',\n },\n];\n"],"names":["emit","__emit","lesson","_useModel","__props","inText","lessonChanged","inTextChanged","getColumnsByConfig","columns","config","defaultSite","embedded","col","_a","_b","columnClasses","arrowClasses","order","dir","direction","sortLinkWithRoute","route","currentParams","query","sortLinkClasses","list","listItemColClasses","listItemLabelClasses","listItemValueClasses","listItemsValuesClasses","computeCurrentOrder","sorting","computeCurrentDir","useRoute","props","computed","cols","column","createSortLink","value","field","to","url","display","_d","_c","_f","_e","_g","val","isDetailedDate","formatDetailedDate","formatDate","values","fieldComponents","PreacherField","MediaField","DateField","SeriesField","VerbField","TitleField","getComponentForField","name","getComponentForFieldFromItems","components","startTooltip","useTooltip","onMounted","onUpdated","columnDefinition"],"mappings":"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"}