Rework frontend

This commit is contained in:
F4ilji
2025-03-23 00:38:16 +05:00
parent 17518ceed2
commit 49072e50c7
438 changed files with 14375 additions and 20015 deletions
@@ -0,0 +1,60 @@
<!-- NavLink.vue -->
<template>
<div>
<h2 :id="generateSlug(title)" class="mb-3 font-medium text-gray-800 dark:text-neutral-200">
{{ title }}
</h2>
<template v-for="education in educations">
<div class="grid grid-cols-1 sm:grid-cols-1 my-4">
<div class="p-4 border border-gray-200 rounded-lg dark:border-neutral-700">
<h3 class="mb-1 text-xs text-gray-600 dark:text-neutral-400">
{{ education.year }}
</h3>
<p class="font-semibold text-sm text-gray-800 dark:text-neutral-200">
{{ education.content }}
</p>
<p class="mt-1 text-sm text-gray-600 dark:text-neutral-400">
{{ education.institution }}
</p>
</div>
</div>
</template>
</div>
</template>
<script>
import slugify from "slugify";
export default {
name: 'EducationBlock',
props: {
educations: {
type: Object,
required: true
},
title: {
type: String,
required: true
}
},
methods: {
generateSlug(text) {
return slugify(text, {
lower: true,
strict: true,
locale: "ru",
});
},
}
}
</script>
<style scoped>
/* Добавьте стили, если это необходимо */
</style>
@@ -0,0 +1,46 @@
<!-- NavLink.vue -->
<template>
<div>
<h2 :id="generateSlug(nameList)" class="mb-3 font-medium text-gray-800 dark:text-neutral-200">
{{ nameList }}
</h2>
<ul class="list-disc ms-6 mt-3 space-y-1.5">
<template v-for="el in list">
<li class="ps-1 text-sm text-gray-600 dark:text-neutral-400">
{{ el.item }}
</li>
</template>
</ul>
</div>
</template>
<script>
import slugify from "slugify";
export default {
name: 'ListBlock',
props: {
list: {
type: String,
required: true
},
nameList: {
type: String,
required: true,
},
},
methods: {
generateSlug(text) {
return slugify(text, {
lower: true,
strict: true,
locale: "ru",
});
},
}
}
</script>
<style scoped>
/* Добавьте стили, если это необходимо */
</style>
@@ -0,0 +1,42 @@
<!-- NavLink.vue -->
<template>
<div>
<h2 :id="generateSlug(nameList)" class="mb-3 font-medium text-gray-800 dark:text-neutral-200">
{{ nameList }}
</h2>
<Builder :blocks="blocks" />
</div>
</template>
<script>
import slugify from "slugify";
import Builder from "@/componentss/shared/builder/pageBuilder/Builder.vue";
export default {
name: 'OtherBlock',
components: {Builder},
props: {
blocks: {
type: String,
required: true
},
nameList: {
type: String,
required: true,
},
},
methods: {
generateSlug(text) {
return slugify(text, {
lower: true,
strict: true,
locale: "ru",
});
},
}
}
</script>
<style scoped>
/* Добавьте стили, если это необходимо */
</style>
@@ -0,0 +1,48 @@
<!-- NavLink.vue -->
<template>
<div>
<template v-for="el in list">
<h2 :id="generateSlug(el.category_publication)" class="my-4 font-medium text-gray-800">{{ el.category_publication }}</h2>
<ul class="list-disc ms-6 mt-3 space-y-1.5">
<template v-for="el in el.publication">
<li class="ps-1 text-sm text-gray-600 dark:text-neutral-400">
{{ el.item }}
</li>
</template>
</ul>
</template>
</div>
</template>
<script>
import slugify from "slugify";
export default {
name: 'PublicationBlock',
props: {
list: {
type: String,
required: true
},
nameList: {
type: String,
required: true,
},
},
methods: {
generateSlug(text) {
return slugify(text, {
lower: true,
strict: true,
locale: "ru",
});
},
}
}
</script>
<style scoped>
/* Добавьте стили, если это необходимо */
</style>
@@ -0,0 +1,49 @@
<!-- NavLink.vue -->
<template>
<h2 :id="generateSlug(title)" class="mb-3 font-medium text-gray-800 dark:text-neutral-200">
{{ title }}
</h2>
<div class="grid grid-cols-1 sm:grid-cols-1 gap-3">
<p class="mt-1 text-sm text-gray-600 dark:text-neutral-400">
Стаж работы: {{ workExpTotal }}
</p>
<p class="mt-1 text-sm text-gray-600 dark:text-neutral-400">
Стаж по специальности: {{ workExpByProf }}
</p>
</div>
</template>
<script>
import slugify from "slugify";
export default {
name: 'WorkExperienceBlock',
props: {
workExpTotal: {
type: String,
required: true
},
workExpByProf: {
type: String,
required: true
},
title: {
type: String,
required: true
},
},
methods: {
generateSlug(text) {
return slugify(text, {
lower: true,
strict: true,
locale: "ru",
});
},
}
}
</script>
<style scoped>
/* Добавьте стили, если это необходимо */
</style>