This commit is contained in:
sajjadtalkhabi
2026-05-13 03:06:59 +03:30
parent d2a577f254
commit b8ced45375
142 changed files with 3706 additions and 905 deletions
@@ -60,10 +60,9 @@
<script setup>
import { computed } from 'vue'
import { STUDENT_COURSE_STATUS } from '@/enums'
import BaseButton from '@/components/BaseButton.vue'
import SvgIcon from '@/components/icons/SvgIcon.vue'
import { STUDENT_COURSE_STATUS } from '@/enums'
import { formatJalaaliDate } from '@/utils/date-utils'
const props = defineProps({
+13 -13
View File
@@ -202,31 +202,31 @@
</template>
<script setup>
import { computed, onBeforeUnmount, onMounted, ref, watch } from 'vue'
import { useRouter } from 'vue-router'
import { toast } from 'vue3-toastify'
import { useRouter } from 'vue-router'
import useYup from '@/composables/useYup'
import { GENDER, MARITAL_STATUS } from '@/enums'
import { useQueryClient } from '@tanstack/vue-query'
import BoxedIconTitleBlock from '@/components/blocks/BoxedIconTitleBlock.vue'
import LineTitleBlock from '@/components/LineTitleBlock.vue'
import BaseButton from '@/components/BaseButton.vue'
import SvgIcon from '@/components/icons/SvgIcon.vue'
import TextField from '@/components/form/TextField.vue'
import SelectField from '@/components/form/SelectField.vue'
import TextareaField from '@/components/form/TextareaField.vue'
import DatePickerField from '@/components/form/DatePickerField.vue'
import PasswordField from '@/components/form/PasswordField.vue'
import LineTitleBlock from '@/components/LineTitleBlock.vue'
import { onBeforeUnmount, onMounted, ref, watch } from 'vue'
import ImageCropper from '@/components/form/ImageCropper.vue'
import SvgIcon from '@/components/icons/SvgIcon.vue'
import useYup from '@/composables/useYup'
import { objectToFormData } from '@/utils/object-to-formdata'
import TextareaField from '@/components/form/TextareaField.vue'
import PasswordField from '@/components/form/PasswordField.vue'
import { studentProfileSchema } from '@/features/student/schema'
import DatePickerField from '@/components/form/DatePickerField.vue'
import BoxedIconTitleBlock from '@/components/blocks/BoxedIconTitleBlock.vue'
import { useGetCitiesOfProvinceQuery, useGetProvincesQuery } from '@/services/query/common'
import {
authKeys,
useGetProfileQuery,
useUpdateProfileMutation,
useUploadTemporaryMutation,
} from '@/services/query/auth'
import { useGetCitiesOfProvinceQuery, useGetProvincesQuery } from '@/services/query/common'
import { GENDER, MARITAL_STATUS } from '@/enums'
import { studentProfileSchema } from '@/features/student/schema'
import { objectToFormData } from '@/utils/object-to-formdata'
const router = useRouter()
const queryClient = useQueryClient()
@@ -82,14 +82,13 @@
<script setup>
import { computed } from 'vue'
import { useRoute } from 'vue-router'
import BoxedIconTitleBlock from '@/components/blocks/BoxedIconTitleBlock.vue'
import SimpleTitleIconBlock from '@/components/blocks/SimpleTitleIconBlock.vue'
import NoItems from '@/components/blocks/NoItems.vue'
import SkeletonLoaderBlock from '@/components/blocks/SkeletonLoaderBlock.vue'
import SvgIcon from '@/components/icons/SvgIcon.vue'
import { useStudentCourseQuery } from '@/services/query/student-courses'
import NoItems from '@/components/blocks/NoItems.vue'
import { formatJalaaliDate } from '@/utils/date-utils'
import { useStudentCourseQuery } from '@/services/query/student-courses'
import BoxedIconTitleBlock from '@/components/blocks/BoxedIconTitleBlock.vue'
import SkeletonLoaderBlock from '@/components/blocks/SkeletonLoaderBlock.vue'
import SimpleTitleIconBlock from '@/components/blocks/SimpleTitleIconBlock.vue'
const route = useRoute()
@@ -45,16 +45,15 @@
<script setup>
import { computed, ref } from 'vue'
import { useRouter } from 'vue-router'
import BoxedIconTitleBlock from '@/components/blocks/BoxedIconTitleBlock.vue'
import NoItems from '@/components/blocks/NoItems.vue'
import SkeletonLoaderBlock from '@/components/blocks/SkeletonLoaderBlock.vue'
import PaginationBlock from '@/components/blocks/PaginationBlock.vue'
import TabsBlock from '@/components/blocks/TabsBlock.vue'
import SvgIcon from '@/components/icons/SvgIcon.vue'
import StudentCourseItem from '@/features/student/components/StudentCourseItem.vue'
import { useStudentCoursesListQuery } from '@/services/query/student-courses'
import NoItems from '@/components/blocks/NoItems.vue'
import TabsBlock from '@/components/blocks/TabsBlock.vue'
import { usePagination } from '@/composables/usePagination'
import PaginationBlock from '@/components/blocks/PaginationBlock.vue'
import BoxedIconTitleBlock from '@/components/blocks/BoxedIconTitleBlock.vue'
import SkeletonLoaderBlock from '@/components/blocks/SkeletonLoaderBlock.vue'
import { useStudentCoursesListQuery } from '@/services/query/student-courses'
import StudentCourseItem from '@/features/student/components/StudentCourseItem.vue'
const router = useRouter()