diff --git a/.gitignore b/.gitignore index a74b29aa..77addfc6 100644 --- a/.gitignore +++ b/.gitignore @@ -7,5 +7,3 @@ /.idea /niucloud/runtime /niucloud/vendor -/niucloud/config -config diff --git a/admin/.env.development b/admin/.env.development deleted file mode 100644 index 05f4ee20..00000000 --- a/admin/.env.development +++ /dev/null @@ -1,8 +0,0 @@ -# api请求地址 -VITE_APP_BASE_URL='http://146.56.228.75:20024/adminapi/' -# VITE_APP_BASE_URL='https://zh.hnhbty.cn/adminapi/' -# 图片服务器地址 -VITE_IMG_DOMAIN='' - -# 请求时header中token的参数名 -VITE_REQUEST_HEADER_TOKEN_KEY='token' diff --git a/admin/.env.production b/admin/.env.production deleted file mode 100644 index 5f49894b..00000000 --- a/admin/.env.production +++ /dev/null @@ -1,9 +0,0 @@ -# api请求地址 -VITE_APP_BASE_URL='http://146.56.228.75:20024/adminapi/' -# VITE_APP_BASE_URL='https://zh.hnhbty.cn/adminapi/' - -# 图片服务器地址 -VITE_IMG_DOMAIN='' - -# 请求时header中token的参数名 -VITE_REQUEST_HEADER_TOKEN_KEY='token' diff --git a/admin/.eslintignore b/admin/.eslintignore new file mode 100644 index 00000000..44bfddd6 --- /dev/null +++ b/admin/.eslintignore @@ -0,0 +1,3 @@ +node_modules/ +dist/ +public/ \ No newline at end of file diff --git a/admin/.eslintrc.js b/admin/.eslintrc.js new file mode 100644 index 00000000..d73d1079 --- /dev/null +++ b/admin/.eslintrc.js @@ -0,0 +1,39 @@ +module.exports = { + root: true, + env: { + browser: true, + es2021: true, + node: true, + }, + parser: 'vue-eslint-parser', + parserOptions: { + parser: '@typescript-eslint/parser', + ecmaVersion: 2020, + sourceType: 'module', + ecmaFeatures: { + jsx: false, + }, + project: './tsconfig.json', + tsconfigRootDir: __dirname, + }, + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:vue/vue3-recommended', + 'plugin:prettier/recommended', + ], + rules: { + // Vue 推荐规则 + 'vue/multi-word-component-names': 0, + 'vue/require-default-prop': 0, + + // TypeScript 常用规则 + '@typescript-eslint/no-explicit-any': ['warn'], + '@typescript-eslint/no-unused-vars': ['error'], + + // 缩进设置(可选) + indent: ['error', 2], + quotes: ['error', 'single'], + semi: ['error', 'never'], + }, +} \ No newline at end of file diff --git a/admin/.gitignore b/admin/.gitignore index a547bf36..080363dd 100644 --- a/admin/.gitignore +++ b/admin/.gitignore @@ -22,3 +22,7 @@ dist-ssr *.njsproj *.sln *.sw? +.env.development +.env.production +auto-imports.d.ts +components.d.ts diff --git a/admin/.prettierignore b/admin/.prettierignore new file mode 100644 index 00000000..55701356 --- /dev/null +++ b/admin/.prettierignore @@ -0,0 +1,7 @@ +node_modules +dist +.env +*.md +*.png +*.jpg +*.ico \ No newline at end of file diff --git a/admin/.prettierrc b/admin/.prettierrc new file mode 100644 index 00000000..c97d82c7 --- /dev/null +++ b/admin/.prettierrc @@ -0,0 +1,11 @@ +{ + "printWidth": 80, + "tabWidth": 2, + "useTabs": false, + "semi": false, + "singleQuote": true, + "trailingComma": "es5", + "bracketSpacing": true, + "arrowParens": "always", + "endOfLine": "auto" +} \ No newline at end of file diff --git a/admin/auto-imports.d.ts b/admin/auto-imports.d.ts deleted file mode 100644 index a51b7a66..00000000 --- a/admin/auto-imports.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -// Generated by 'unplugin-auto-import' -export {} -declare global { - const ElNotification: typeof import('element-plus/es')['ElNotification'] -} diff --git a/admin/components.d.ts b/admin/components.d.ts deleted file mode 100644 index 8a544a50..00000000 --- a/admin/components.d.ts +++ /dev/null @@ -1,85 +0,0 @@ -// generated by unplugin-vue-components -// We suggest you to commit this file into source control -// Read more: https://github.com/vuejs/core/pull/3399 -import '@vue/runtime-core' - -export {} - -declare module '@vue/runtime-core' { - export interface GlobalComponents { - Attachment: typeof import('./src/components/upload-attachment/attachment.vue')['default'] - DiyLink: typeof import('./src/components/diy-link/index.vue')['default'] - Editor: typeof import('./src/components/editor/index.vue')['default'] - ElAside: typeof import('element-plus/es')['ElAside'] - ElAvatar: typeof import('element-plus/es')['ElAvatar'] - ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb'] - ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem'] - ElButton: typeof import('element-plus/es')['ElButton'] - ElCard: typeof import('element-plus/es')['ElCard'] - ElCheckbox: typeof import('element-plus/es')['ElCheckbox'] - ElCol: typeof import('element-plus/es')['ElCol'] - ElColorPicker: typeof import('element-plus/es')['ElColorPicker'] - ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider'] - ElContainer: typeof import('element-plus/es')['ElContainer'] - ElDatePicker: typeof import('element-plus/es')['ElDatePicker'] - ElDialog: typeof import('element-plus/es')['ElDialog'] - ElDrawer: typeof import('element-plus/es')['ElDrawer'] - ElDropdown: typeof import('element-plus/es')['ElDropdown'] - ElDropdownItem: typeof import('element-plus/es')['ElDropdownItem'] - ElDropdownMenu: typeof import('element-plus/es')['ElDropdownMenu'] - ElForm: typeof import('element-plus/es')['ElForm'] - ElFormItem: typeof import('element-plus/es')['ElFormItem'] - ElHeader: typeof import('element-plus/es')['ElHeader'] - ElIcon: typeof import('element-plus/es')['ElIcon'] - ElImage: typeof import('element-plus/es')['ElImage'] - ElImageViewer: typeof import('element-plus/es')['ElImageViewer'] - ElInput: typeof import('element-plus/es')['ElInput'] - ElInputNumber: typeof import('element-plus/es')['ElInputNumber'] - ElMain: typeof import('element-plus/es')['ElMain'] - ElMenu: typeof import('element-plus/es')['ElMenu'] - ElMenuItem: typeof import('element-plus/es')['ElMenuItem'] - ElOption: typeof import('element-plus/es')['ElOption'] - ElPageHeader: typeof import('element-plus/es')['ElPageHeader'] - ElPagination: typeof import('element-plus/es')['ElPagination'] - ElPopover: typeof import('element-plus/es')['ElPopover'] - ElRadio: typeof import('element-plus/es')['ElRadio'] - ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup'] - ElRow: typeof import('element-plus/es')['ElRow'] - ElScrollbar: typeof import('element-plus/es')['ElScrollbar'] - ElSelect: typeof import('element-plus/es')['ElSelect'] - ElStep: typeof import('element-plus/es')['ElStep'] - ElSteps: typeof import('element-plus/es')['ElSteps'] - ElSubMenu: typeof import('element-plus/es')['ElSubMenu'] - ElSwitch: typeof import('element-plus/es')['ElSwitch'] - ElTable: typeof import('element-plus/es')['ElTable'] - ElTableColumn: typeof import('element-plus/es')['ElTableColumn'] - ElTabPane: typeof import('element-plus/es')['ElTabPane'] - ElTabs: typeof import('element-plus/es')['ElTabs'] - ElTag: typeof import('element-plus/es')['ElTag'] - ElTooltip: typeof import('element-plus/es')['ElTooltip'] - ElTree: typeof import('element-plus/es')['ElTree'] - ElTreeSelect: typeof import('element-plus/es')['ElTreeSelect'] - ElUpload: typeof import('element-plus/es')['ElUpload'] - ExportSure: typeof import('./src/components/export-sure/index.vue')['default'] - HeatMap: typeof import('./src/components/heat-map/index.vue')['default'] - Icon: typeof import('./src/components/icon/index.vue')['default'] - PopoverInput: typeof import('./src/components/popover-input/index.vue')['default'] - RangeInput: typeof import('./src/components/range-input/index.vue')['default'] - RouterLink: typeof import('vue-router')['RouterLink'] - RouterView: typeof import('vue-router')['RouterView'] - SelectArea: typeof import('./src/components/select-area/index.vue')['default'] - SelectIcon: typeof import('./src/components/select-icon/index.vue')['default'] - UploadAttachment: typeof import('./src/components/upload-attachment/index.vue')['default'] - UploadFile: typeof import('./src/components/upload-file/index.vue')['default'] - UploadImage: typeof import('./src/components/upload-image/index.vue')['default'] - UploadVideo: typeof import('./src/components/upload-video/index.vue')['default'] - Verify: typeof import('./src/components/verifition/Verify.vue')['default'] - VerifyPoints: typeof import('./src/components/verifition/Verify/VerifyPoints.vue')['default'] - VerifySlide: typeof import('./src/components/verifition/Verify/VerifySlide.vue')['default'] - VideoPlayer: typeof import('./src/components/video-player/index.vue')['default'] - WebLink: typeof import('./src/components/web-link/web-link.vue')['default'] - } - export interface ComponentCustomProperties { - vLoading: typeof import('element-plus/es')['ElLoadingDirective'] - } -} diff --git a/admin/src/app/api/aaaaaaaaaaa.ts b/admin/src/app/api/aaaaaaaaaaa.ts new file mode 100644 index 00000000..7aba5702 --- /dev/null +++ b/admin/src/app/api/aaaaaaaaaaa.ts @@ -0,0 +1,52 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- aaaaaaaaaaa +/** + * 获取测试列表 + * @param params + * @returns + */ +export function getAaaaaaaaaaaList(params: Record) { + return request.get(`aaaaaaaaaaa/aaaaaaaaaaa`, {params}) +} + +/** + * 获取测试详情 + * @param id 测试id + * @returns + */ +export function getAaaaaaaaaaaInfo(id: number) { + return request.get(`aaaaaaaaaaa/aaaaaaaaaaa/${id}`); +} + +/** + * 添加测试 + * @param params + * @returns + */ +export function addAaaaaaaaaaa(params: Record) { + return request.post('aaaaaaaaaaa/aaaaaaaaaaa', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑测试 + * @param id + * @param params + * @returns + */ +export function editAaaaaaaaaaa(params: Record) { + return request.put(`aaaaaaaaaaa/aaaaaaaaaaa/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除测试 + * @param id + * @returns + */ +export function deleteAaaaaaaaaaa(id: number) { + return request.delete(`aaaaaaaaaaa/aaaaaaaaaaa/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + + + +// USER_CODE_END -- aaaaaaaaaaa diff --git a/admin/src/app/api/attendance.ts b/admin/src/app/api/attendance.ts new file mode 100644 index 00000000..8223e775 --- /dev/null +++ b/admin/src/app/api/attendance.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- attendance +/** + * 获取考勤列表 + * @param params + * @returns + */ +export function getAttendanceList(params: Record) { + return request.get(`attendance/attendance`, { params }) +} + +/** + * 获取考勤详情 + * @param id 考勤id + * @returns + */ +export function getAttendanceInfo(id: number) { + return request.get(`attendance/attendance/${id}`) +} + +/** + * 添加考勤 + * @param params + * @returns + */ +export function addAttendance(params: Record) { + return request.post('attendance/attendance', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑考勤 + * @param id + * @param params + * @returns + */ +export function editAttendance(params: Record) { + return request.put(`attendance/attendance/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除考勤 + * @param id + * @returns + */ +export function deleteAttendance(id: number) { + return request.delete(`attendance/attendance/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- attendance diff --git a/admin/src/app/api/campus.ts b/admin/src/app/api/campus.ts new file mode 100644 index 00000000..5a1ce656 --- /dev/null +++ b/admin/src/app/api/campus.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- campus +/** + * 获取校区列表 + * @param params + * @returns + */ +export function getCampusList(params: Record) { + return request.get(`campus/campus`, { params }) +} + +/** + * 获取校区详情 + * @param id 校区id + * @returns + */ +export function getCampusInfo(id: number) { + return request.get(`campus/campus/${id}`) +} + +/** + * 添加校区 + * @param params + * @returns + */ +export function addCampus(params: Record) { + return request.post('campus/campus', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑校区 + * @param id + * @param params + * @returns + */ +export function editCampus(params: Record) { + return request.put(`campus/campus/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除校区 + * @param id + * @returns + */ +export function deleteCampus(id: number) { + return request.delete(`campus/campus/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- campus diff --git a/admin/src/app/api/campus_person_role.ts b/admin/src/app/api/campus_person_role.ts new file mode 100644 index 00000000..0c442543 --- /dev/null +++ b/admin/src/app/api/campus_person_role.ts @@ -0,0 +1,73 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- campus_person_role +/** + * 获取角色关系列表 + * @param params + * @returns + */ +export function getCampusPersonRoleList(params: Record) { + return request.get(`campus_person_role/campus_person_role`, { params }) +} + +/** + * 获取角色关系详情 + * @param id 角色关系id + * @returns + */ +export function getCampusPersonRoleInfo(id: number) { + return request.get(`campus_person_role/campus_person_role/${id}`) +} + +/** + * 添加角色关系 + * @param params + * @returns + */ +export function addCampusPersonRole(params: Record) { + return request.post('campus_person_role/campus_person_role', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑角色关系 + * @param id + * @param params + * @returns + */ +export function editCampusPersonRole(params: Record) { + return request.put( + `campus_person_role/campus_person_role/${params.id}`, + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 删除角色关系 + * @param id + * @returns + */ +export function deleteCampusPersonRole(id: number) { + return request.delete(`campus_person_role/campus_person_role/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +export function getWithCampusList(params: Record) { + return request.get('campus_person_role/campus_all', { params }) +} +export function getWithPersonnelList(params: Record) { + return request.get('campus_person_role/personnel_all', { params }) +} +export function getWithSysRoleList(params: Record) { + return request.get('campus_person_role/sys_role_all', { params }) +} +export function getWithDepartmentsList(params: Record) { + return request.get('campus_person_role/departments_all', { params }) +} + +// USER_CODE_END -- campus_person_role diff --git a/admin/src/app/api/classroom.ts b/admin/src/app/api/classroom.ts new file mode 100644 index 00000000..89028d70 --- /dev/null +++ b/admin/src/app/api/classroom.ts @@ -0,0 +1,66 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- class +/** + * 获取场地管理列表 + * @param params + * @returns + */ +export function getClassroomList(params: Record) { + return request.get(`classroom/classroom`, { params }) +} + +/** + * 获取场地管理详情 + * @param id 场地管理id + * @returns + */ +export function getClassroomInfo(id: number) { + return request.get(`classroom/classroom/${id}`) +} + +/** + * 添加场地管理 + * @param params + * @returns + */ +export function addClassroom(params: Record) { + return request.post('classroom/classroom', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑场地管理 + * @param id + * @param params + * @returns + */ +export function editClassroom(params: Record) { + return request.put(`classroom/classroom/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除场地管理 + * @param id + * @returns + */ +export function deleteClassroom(id: number) { + return request.delete(`classroom/classroom/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +export function getWithCampusList(params: Record) { + return request.get('classroom/campus_all', { params }) +} +export function getWithPersonnelList(params: Record) { + return request.get('classroom/personnel_all', { params }) +} + +// USER_CODE_END -- class diff --git a/admin/src/app/api/communication_records.ts b/admin/src/app/api/communication_records.ts new file mode 100644 index 00000000..d0113748 --- /dev/null +++ b/admin/src/app/api/communication_records.ts @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- communication_records +/** + * 获取沟通记录列表 + * @param params + * @returns + */ +export function getCommunicationRecordsList(params: Record) { + return request.get(`communication_records/communication_records`, { params }) +} + +/** + * 获取沟通记录详情 + * @param id 沟通记录id + * @returns + */ +export function getCommunicationRecordsInfo(id: number) { + return request.get(`communication_records/communication_records/${id}`) +} + +/** + * 添加沟通记录 + * @param params + * @returns + */ +export function addCommunicationRecords(params: Record) { + return request.post('communication_records/communication_records', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑沟通记录 + * @param id + * @param params + * @returns + */ +export function editCommunicationRecords(params: Record) { + return request.put( + `communication_records/communication_records/${params.id}`, + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 删除沟通记录 + * @param id + * @returns + */ +export function deleteCommunicationRecords(id: number) { + return request.delete(`communication_records/communication_records/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- communication_records diff --git a/admin/src/app/api/contract.ts b/admin/src/app/api/contract.ts new file mode 100644 index 00000000..f0fe4f80 --- /dev/null +++ b/admin/src/app/api/contract.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- contract +/** + * 获取合同列表 + * @param params + * @returns + */ +export function getContractList(params: Record) { + return request.get(`contract/contract`, { params }) +} + +/** + * 获取合同详情 + * @param id 合同id + * @returns + */ +export function getContractInfo(id: number) { + return request.get(`contract/contract/${id}`) +} + +/** + * 添加合同 + * @param params + * @returns + */ +export function addContract(params: Record) { + return request.post('contract/contract', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑合同 + * @param id + * @param params + * @returns + */ +export function editContract(params: Record) { + return request.put(`contract/contract/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除合同 + * @param id + * @returns + */ +export function deleteContract(id: number) { + return request.delete(`contract/contract/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- contract diff --git a/admin/src/app/api/course.ts b/admin/src/app/api/course.ts new file mode 100644 index 00000000..09938cfd --- /dev/null +++ b/admin/src/app/api/course.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- course +/** + * 获取课程列表 + * @param params + * @returns + */ +export function getCourseList(params: Record) { + return request.get(`course/course`, { params }) +} + +/** + * 获取课程详情 + * @param id 课程id + * @returns + */ +export function getCourseInfo(id: number) { + return request.get(`course/course/${id}`) +} + +/** + * 添加课程 + * @param params + * @returns + */ +export function addCourse(params: Record) { + return request.post('course/course', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑课程 + * @param id + * @param params + * @returns + */ +export function editCourse(params: Record) { + return request.put(`course/course/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除课程 + * @param id + * @returns + */ +export function deleteCourse(id: number) { + return request.delete(`course/course/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- course diff --git a/admin/src/app/api/course_schedule.ts b/admin/src/app/api/course_schedule.ts new file mode 100644 index 00000000..9e2c2772 --- /dev/null +++ b/admin/src/app/api/course_schedule.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- course_schedule +/** + * 获取课程安排列表 + * @param params + * @returns + */ +export function getCourseScheduleList(params: Record) { + return request.get(`course_schedule/course_schedule`, { params }) +} + +/** + * 获取课程安排详情 + * @param id 课程安排id + * @returns + */ +export function getCourseScheduleInfo(id: number) { + return request.get(`course_schedule/course_schedule/${id}`) +} + +/** + * 添加课程安排 + * @param params + * @returns + */ +export function addCourseSchedule(params: Record) { + return request.post('course_schedule/course_schedule', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑课程安排 + * @param id + * @param params + * @returns + */ +export function editCourseSchedule(params: Record) { + return request.put(`course_schedule/course_schedule/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除课程安排 + * @param id + * @returns + */ +export function deleteCourseSchedule(id: number) { + return request.delete(`course_schedule/course_schedule/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- course_schedule diff --git a/admin/src/app/api/customer_resource_changes.ts b/admin/src/app/api/customer_resource_changes.ts new file mode 100644 index 00000000..df222e4c --- /dev/null +++ b/admin/src/app/api/customer_resource_changes.ts @@ -0,0 +1,65 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- customer_resource_changes +/** + * 获取客户资源表变更记录列表 + * @param params + * @returns + */ +export function getCustomerResourceChangesList(params: Record) { + return request.get(`customer_resource_changes/customer_resource_changes`, { + params, + }) +} + +/** + * 获取客户资源表变更记录详情 + * @param id 客户资源表变更记录id + * @returns + */ +export function getCustomerResourceChangesInfo(id: number) { + return request.get( + `customer_resource_changes/customer_resource_changes/${id}` + ) +} + +/** + * 添加客户资源表变更记录 + * @param params + * @returns + */ +export function addCustomerResourceChanges(params: Record) { + return request.post( + 'customer_resource_changes/customer_resource_changes', + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 编辑客户资源表变更记录 + * @param id + * @param params + * @returns + */ +export function editCustomerResourceChanges(params: Record) { + return request.put( + `customer_resource_changes/customer_resource_changes/${params.id}`, + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 删除客户资源表变更记录 + * @param id + * @returns + */ +export function deleteCustomerResourceChanges(id: number) { + return request.delete( + `customer_resource_changes/customer_resource_changes/${id}`, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +// USER_CODE_END -- customer_resource_changes diff --git a/admin/src/app/api/customer_resources.ts b/admin/src/app/api/customer_resources.ts new file mode 100644 index 00000000..54b50473 --- /dev/null +++ b/admin/src/app/api/customer_resources.ts @@ -0,0 +1,60 @@ +import request from '@/utils/request' + + + + + +// USER_CODE_BEGIN -- customer_resources +/** + * 获取客户资源列表 + * @param params + * @returns + */ +export function getCustomerResourcesList(params: Record) { + return request.get(`customer_resources/customer_resources`, {params}) +} + +/** + * 获取客户资源详情 + * @param id 客户资源id + * @returns + */ +export function getCustomerResourcesInfo(id: number) { + return request.get(`customer_resources/customer_resources/${id}`); +} + +/** + * 添加客户资源 + * @param params + * @returns + */ +export function addCustomerResources(params: Record) { + return request.post('customer_resources/customer_resources', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑客户资源 + * @param id + * @param params + * @returns + */ +export function editCustomerResources(params: Record) { + return request.put(`customer_resources/customer_resources/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除客户资源 + * @param id + * @returns + */ +export function deleteCustomerResources(id: number) { + return request.delete(`customer_resources/customer_resources/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + +export function getWithPersonnelList(params: Record){ + return request.get('customer_resources/personnel_all', {params}) +}export function getWithCampusList(params: Record){ + return request.get('customer_resources/campus_all', {params}) +} + +// USER_CODE_END -- customer_resources diff --git a/admin/src/app/api/exam_answers.ts b/admin/src/app/api/exam_answers.ts new file mode 100644 index 00000000..923edcba --- /dev/null +++ b/admin/src/app/api/exam_answers.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- exam_answers +/** + * 获取答题记录列表 + * @param params + * @returns + */ +export function getExamAnswersList(params: Record) { + return request.get(`exam_answers/exam_answers`, { params }) +} + +/** + * 获取答题记录详情 + * @param id 答题记录id + * @returns + */ +export function getExamAnswersInfo(id: number) { + return request.get(`exam_answers/exam_answers/${id}`) +} + +/** + * 添加答题记录 + * @param params + * @returns + */ +export function addExamAnswers(params: Record) { + return request.post('exam_answers/exam_answers', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑答题记录 + * @param id + * @param params + * @returns + */ +export function editExamAnswers(params: Record) { + return request.put(`exam_answers/exam_answers/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除答题记录 + * @param id + * @returns + */ +export function deleteExamAnswers(id: number) { + return request.delete(`exam_answers/exam_answers/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- exam_answers diff --git a/admin/src/app/api/exam_papers.ts b/admin/src/app/api/exam_papers.ts new file mode 100644 index 00000000..61a382dd --- /dev/null +++ b/admin/src/app/api/exam_papers.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- exam_papers +/** + * 获取试卷列表 + * @param params + * @returns + */ +export function getExamPapersList(params: Record) { + return request.get(`exam_papers/exam_papers`, { params }) +} + +/** + * 获取试卷详情 + * @param id 试卷id + * @returns + */ +export function getExamPapersInfo(id: number) { + return request.get(`exam_papers/exam_papers/${id}`) +} + +/** + * 添加试卷 + * @param params + * @returns + */ +export function addExamPapers(params: Record) { + return request.post('exam_papers/exam_papers', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑试卷 + * @param id + * @param params + * @returns + */ +export function editExamPapers(params: Record) { + return request.put(`exam_papers/exam_papers/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除试卷 + * @param id + * @returns + */ +export function deleteExamPapers(id: number) { + return request.delete(`exam_papers/exam_papers/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- exam_papers diff --git a/admin/src/app/api/exam_questions.ts b/admin/src/app/api/exam_questions.ts new file mode 100644 index 00000000..3b3e57c9 --- /dev/null +++ b/admin/src/app/api/exam_questions.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- exam_questions +/** + * 获取试题列表 + * @param params + * @returns + */ +export function getExamQuestionsList(params: Record) { + return request.get(`exam_questions/exam_questions`, { params }) +} + +/** + * 获取试题详情 + * @param id 试题id + * @returns + */ +export function getExamQuestionsInfo(id: number) { + return request.get(`exam_questions/exam_questions/${id}`) +} + +/** + * 添加试题 + * @param params + * @returns + */ +export function addExamQuestions(params: Record) { + return request.post('exam_questions/exam_questions', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑试题 + * @param id + * @param params + * @returns + */ +export function editExamQuestions(params: Record) { + return request.put(`exam_questions/exam_questions/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除试题 + * @param id + * @returns + */ +export function deleteExamQuestions(id: number) { + return request.delete(`exam_questions/exam_questions/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- exam_questions diff --git a/admin/src/app/api/exam_records.ts b/admin/src/app/api/exam_records.ts new file mode 100644 index 00000000..ebff7e88 --- /dev/null +++ b/admin/src/app/api/exam_records.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- exam_records +/** + * 获取考试记录列表 + * @param params + * @returns + */ +export function getExamRecordsList(params: Record) { + return request.get(`exam_records/exam_records`, { params }) +} + +/** + * 获取考试记录详情 + * @param id 考试记录id + * @returns + */ +export function getExamRecordsInfo(id: number) { + return request.get(`exam_records/exam_records/${id}`) +} + +/** + * 添加考试记录 + * @param params + * @returns + */ +export function addExamRecords(params: Record) { + return request.post('exam_records/exam_records', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑考试记录 + * @param id + * @param params + * @returns + */ +export function editExamRecords(params: Record) { + return request.put(`exam_records/exam_records/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除考试记录 + * @param id + * @returns + */ +export function deleteExamRecords(id: number) { + return request.delete(`exam_records/exam_records/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- exam_records diff --git a/admin/src/app/api/market_performance.ts b/admin/src/app/api/market_performance.ts new file mode 100644 index 00000000..583895ce --- /dev/null +++ b/admin/src/app/api/market_performance.ts @@ -0,0 +1,67 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- market_performance +/** + * 获取市场绩效列表 + * @param params + * @returns + */ +export function getMarketPerformanceList(params: Record) { + return request.get(`market_performance/market_performance`, { params }) +} + +/** + * 获取市场绩效详情 + * @param id 市场绩效id + * @returns + */ +export function getMarketPerformanceInfo(id: number) { + return request.get(`market_performance/market_performance/${id}`) +} + +/** + * 添加市场绩效 + * @param params + * @returns + */ +export function addMarketPerformance(params: Record) { + return request.post('market_performance/market_performance', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑市场绩效 + * @param id + * @param params + * @returns + */ +export function editMarketPerformance(params: Record) { + return request.put( + `market_performance/market_performance/${params.id}`, + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 删除市场绩效 + * @param id + * @returns + */ +export function deleteMarketPerformance(id: number) { + return request.delete(`market_performance/market_performance/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +export function getWithPersonnelList(params: Record) { + return request.get('market_performance/personnel_all', { params }) +} +export function getWithCampusList(params: Record) { + return request.get('market_performance/campus_all', { params }) +} + +// USER_CODE_END -- market_performance diff --git a/admin/src/app/api/order_table.ts b/admin/src/app/api/order_table.ts new file mode 100644 index 00000000..dbf4e14f --- /dev/null +++ b/admin/src/app/api/order_table.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- order_table +/** + * 获取订单列表 + * @param params + * @returns + */ +export function getOrderTableList(params: Record) { + return request.get(`order_table/order_table`, { params }) +} + +/** + * 获取订单详情 + * @param id 订单id + * @returns + */ +export function getOrderTableInfo(id: number) { + return request.get(`order_table/order_table/${id}`) +} + +/** + * 添加订单 + * @param params + * @returns + */ +export function addOrderTable(params: Record) { + return request.post('order_table/order_table', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑订单 + * @param id + * @param params + * @returns + */ +export function editOrderTable(params: Record) { + return request.put(`order_table/order_table/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除订单 + * @param id + * @returns + */ +export function deleteOrderTable(id: number) { + return request.delete(`order_table/order_table/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- order_table diff --git a/admin/src/app/api/performance_records.ts b/admin/src/app/api/performance_records.ts new file mode 100644 index 00000000..3af2386a --- /dev/null +++ b/admin/src/app/api/performance_records.ts @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- performance_records +/** + * 获取绩效记录列表 + * @param params + * @returns + */ +export function getPerformanceRecordsList(params: Record) { + return request.get(`performance_records/performance_records`, { params }) +} + +/** + * 获取绩效记录详情 + * @param id 绩效记录id + * @returns + */ +export function getPerformanceRecordsInfo(id: number) { + return request.get(`performance_records/performance_records/${id}`) +} + +/** + * 添加绩效记录 + * @param params + * @returns + */ +export function addPerformanceRecords(params: Record) { + return request.post('performance_records/performance_records', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑绩效记录 + * @param id + * @param params + * @returns + */ +export function editPerformanceRecords(params: Record) { + return request.put( + `performance_records/performance_records/${params.id}`, + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 删除绩效记录 + * @param id + * @returns + */ +export function deletePerformanceRecords(id: number) { + return request.delete(`performance_records/performance_records/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- performance_records diff --git a/admin/src/app/api/person_course_schedule.ts b/admin/src/app/api/person_course_schedule.ts new file mode 100644 index 00000000..5e3b5b6e --- /dev/null +++ b/admin/src/app/api/person_course_schedule.ts @@ -0,0 +1,62 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- person_course_schedule +/** + * 获取人员与课程安排关系列表 + * @param params + * @returns + */ +export function getPersonCourseScheduleList(params: Record) { + return request.get(`person_course_schedule/person_course_schedule`, { + params, + }) +} + +/** + * 获取人员与课程安排关系详情 + * @param id 人员与课程安排关系id + * @returns + */ +export function getPersonCourseScheduleInfo(id: number) { + return request.get(`person_course_schedule/person_course_schedule/${id}`) +} + +/** + * 添加人员与课程安排关系 + * @param params + * @returns + */ +export function addPersonCourseSchedule(params: Record) { + return request.post('person_course_schedule/person_course_schedule', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑人员与课程安排关系 + * @param id + * @param params + * @returns + */ +export function editPersonCourseSchedule(params: Record) { + return request.put( + `person_course_schedule/person_course_schedule/${params.id}`, + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 删除人员与课程安排关系 + * @param id + * @returns + */ +export function deletePersonCourseSchedule(id: number) { + return request.delete(`person_course_schedule/person_course_schedule/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- person_course_schedule diff --git a/admin/src/app/api/personnel.ts b/admin/src/app/api/personnel.ts new file mode 100644 index 00000000..833b73e1 --- /dev/null +++ b/admin/src/app/api/personnel.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- personnel +/** + * 获取人力资源-人员列表 + * @param params + * @returns + */ +export function getPersonnelList(params: Record) { + return request.get(`personnel/personnel`, { params }) +} + +/** + * 获取人力资源-人员详情 + * @param id 人力资源-人员id + * @returns + */ +export function getPersonnelInfo(id: number) { + return request.get(`personnel/personnel/${id}`) +} + +/** + * 添加人力资源-人员 + * @param params + * @returns + */ +export function addPersonnel(params: Record) { + return request.post('personnel/personnel', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑人力资源-人员 + * @param id + * @param params + * @returns + */ +export function editPersonnel(params: Record) { + return request.put(`personnel/personnel/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除人力资源-人员 + * @param id + * @returns + */ +export function deletePersonnel(id: number) { + return request.delete(`personnel/personnel/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- personnel diff --git a/admin/src/app/api/physical_test.ts b/admin/src/app/api/physical_test.ts new file mode 100644 index 00000000..e76fba51 --- /dev/null +++ b/admin/src/app/api/physical_test.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- physical_test +/** + * 获取体测列表 + * @param params + * @returns + */ +export function getPhysicalTestList(params: Record) { + return request.get(`physical_test/physical_test`, { params }) +} + +/** + * 获取体测详情 + * @param id 体测id + * @returns + */ +export function getPhysicalTestInfo(id: number) { + return request.get(`physical_test/physical_test/${id}`) +} + +/** + * 添加体测 + * @param params + * @returns + */ +export function addPhysicalTest(params: Record) { + return request.post('physical_test/physical_test', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑体测 + * @param id + * @param params + * @returns + */ +export function editPhysicalTest(params: Record) { + return request.put(`physical_test/physical_test/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除体测 + * @param id + * @returns + */ +export function deletePhysicalTest(id: number) { + return request.delete(`physical_test/physical_test/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- physical_test diff --git a/admin/src/app/api/reimbursement.ts b/admin/src/app/api/reimbursement.ts new file mode 100644 index 00000000..b39e5216 --- /dev/null +++ b/admin/src/app/api/reimbursement.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- reimbursement +/** + * 获取报销记录列表 + * @param params + * @returns + */ +export function getReimbursementList(params: Record) { + return request.get(`reimbursement/reimbursement`, { params }) +} + +/** + * 获取报销记录详情 + * @param id 报销记录id + * @returns + */ +export function getReimbursementInfo(id: number) { + return request.get(`reimbursement/reimbursement/${id}`) +} + +/** + * 添加报销记录 + * @param params + * @returns + */ +export function addReimbursement(params: Record) { + return request.post('reimbursement/reimbursement', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑报销记录 + * @param id + * @param params + * @returns + */ +export function editReimbursement(params: Record) { + return request.put(`reimbursement/reimbursement/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除报销记录 + * @param id + * @returns + */ +export function deleteReimbursement(id: number) { + return request.delete(`reimbursement/reimbursement/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- reimbursement diff --git a/admin/src/app/api/resource_sharing.ts b/admin/src/app/api/resource_sharing.ts new file mode 100644 index 00000000..85090844 --- /dev/null +++ b/admin/src/app/api/resource_sharing.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- resource_sharing +/** + * 获取资源共享列表 + * @param params + * @returns + */ +export function getResourceSharingList(params: Record) { + return request.get(`resource_sharing/resource_sharing`, { params }) +} + +/** + * 获取资源共享详情 + * @param id 资源共享id + * @returns + */ +export function getResourceSharingInfo(id: number) { + return request.get(`resource_sharing/resource_sharing/${id}`) +} + +/** + * 添加资源共享 + * @param params + * @returns + */ +export function addResourceSharing(params: Record) { + return request.post('resource_sharing/resource_sharing', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑资源共享 + * @param id + * @param params + * @returns + */ +export function editResourceSharing(params: Record) { + return request.put(`resource_sharing/resource_sharing/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除资源共享 + * @param id + * @returns + */ +export function deleteResourceSharing(id: number) { + return request.delete(`resource_sharing/resource_sharing/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- resource_sharing diff --git a/admin/src/app/api/salary.ts b/admin/src/app/api/salary.ts new file mode 100644 index 00000000..832f43ef --- /dev/null +++ b/admin/src/app/api/salary.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- salary +/** + * 获取工资列表 + * @param params + * @returns + */ +export function getSalaryList(params: Record) { + return request.get(`salary/salary`, { params }) +} + +/** + * 获取工资详情 + * @param id 工资id + * @returns + */ +export function getSalaryInfo(id: number) { + return request.get(`salary/salary/${id}`) +} + +/** + * 添加工资 + * @param params + * @returns + */ +export function addSalary(params: Record) { + return request.post('salary/salary', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑工资 + * @param id + * @param params + * @returns + */ +export function editSalary(params: Record) { + return request.put(`salary/salary/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除工资 + * @param id + * @returns + */ +export function deleteSalary(id: number) { + return request.delete(`salary/salary/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- salary diff --git a/admin/src/app/api/service.ts b/admin/src/app/api/service.ts new file mode 100644 index 00000000..9fcbb5e4 --- /dev/null +++ b/admin/src/app/api/service.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- service +/** + * 获取服务列表 + * @param params + * @returns + */ +export function getServiceList(params: Record) { + return request.get(`service/service`, { params }) +} + +/** + * 获取服务详情 + * @param id 服务id + * @returns + */ +export function getServiceInfo(id: number) { + return request.get(`service/service/${id}`) +} + +/** + * 添加服务 + * @param params + * @returns + */ +export function addService(params: Record) { + return request.post('service/service', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑服务 + * @param id + * @param params + * @returns + */ +export function editService(params: Record) { + return request.put(`service/service/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除服务 + * @param id + * @returns + */ +export function deleteService(id: number) { + return request.delete(`service/service/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- service diff --git a/admin/src/app/api/six_speed.ts b/admin/src/app/api/six_speed.ts new file mode 100644 index 00000000..05791561 --- /dev/null +++ b/admin/src/app/api/six_speed.ts @@ -0,0 +1,58 @@ +import request from '@/utils/request' + + + +// USER_CODE_BEGIN -- six_speed +/** + * 获取六一速列表 + * @param params + * @returns + */ +export function getSixSpeedList(params: Record) { + return request.get(`six_speed/six_speed`, {params}) +} + +/** + * 获取六一速详情 + * @param id 六一速id + * @returns + */ +export function getSixSpeedInfo(id: number) { + return request.get(`six_speed/six_speed/${id}`); +} + +/** + * 添加六一速 + * @param params + * @returns + */ +export function addSixSpeed(params: Record) { + return request.post('six_speed/six_speed', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑六一速 + * @param id + * @param params + * @returns + */ +export function editSixSpeed(params: Record) { + return request.put(`six_speed/six_speed/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除六一速 + * @param id + * @returns + */ +export function deleteSixSpeed(id: number) { + return request.delete(`six_speed/six_speed/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + +export function getWithPersonnelList(params: Record){ + return request.get('six_speed/personnel_all', {params}) +}export function getWithCustomerResourcesList(params: Record){ + return request.get('six_speed/customer_resources_all', {params}) +} + +// USER_CODE_END -- six_speed diff --git a/admin/src/app/api/six_speed_modification_log.ts b/admin/src/app/api/six_speed_modification_log.ts new file mode 100644 index 00000000..3069aa5c --- /dev/null +++ b/admin/src/app/api/six_speed_modification_log.ts @@ -0,0 +1,72 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- six_speed_modification_log +/** + * 获取六一速修改记录列表 + * @param params + * @returns + */ +export function getSixSpeedModificationLogList(params: Record) { + return request.get(`six_speed_modification_log/six_speed_modification_log`, { + params, + }) +} + +/** + * 获取六一速修改记录详情 + * @param id 六一速修改记录id + * @returns + */ +export function getSixSpeedModificationLogInfo(id: number) { + return request.get( + `six_speed_modification_log/six_speed_modification_log/${id}` + ) +} + +/** + * 添加六一速修改记录 + * @param params + * @returns + */ +export function addSixSpeedModificationLog(params: Record) { + return request.post( + 'six_speed_modification_log/six_speed_modification_log', + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 编辑六一速修改记录 + * @param id + * @param params + * @returns + */ +export function editSixSpeedModificationLog(params: Record) { + return request.put( + `six_speed_modification_log/six_speed_modification_log/${params.id}`, + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 删除六一速修改记录 + * @param id + * @returns + */ +export function deleteSixSpeedModificationLog(id: number) { + return request.delete( + `six_speed_modification_log/six_speed_modification_log/${id}`, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +export function getWithCampusList(params: Record) { + return request.get('six_speed_modification_log/campus_all', { params }) +} +export function getWithPersonnelList(params: Record) { + return request.get('six_speed_modification_log/personnel_all', { params }) +} + +// USER_CODE_END -- six_speed_modification_log diff --git a/admin/src/app/api/stat_hour.ts b/admin/src/app/api/stat_hour.ts new file mode 100644 index 00000000..d127ee9c --- /dev/null +++ b/admin/src/app/api/stat_hour.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- stat_hour +/** + * 获取小时统计列表 + * @param params + * @returns + */ +export function getStatHourList(params: Record) { + return request.get(`stat_hour/stat_hour`, { params }) +} + +/** + * 获取小时统计详情 + * @param id 小时统计id + * @returns + */ +export function getStatHourInfo(id: number) { + return request.get(`stat_hour/stat_hour/${id}`) +} + +/** + * 添加小时统计 + * @param params + * @returns + */ +export function addStatHour(params: Record) { + return request.post('stat_hour/stat_hour', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑小时统计 + * @param id + * @param params + * @returns + */ +export function editStatHour(params: Record) { + return request.put(`stat_hour/stat_hour/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除小时统计 + * @param id + * @returns + */ +export function deleteStatHour(id: number) { + return request.delete(`stat_hour/stat_hour/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- stat_hour diff --git a/admin/src/app/api/student_course_usage.ts b/admin/src/app/api/student_course_usage.ts new file mode 100644 index 00000000..f93656c4 --- /dev/null +++ b/admin/src/app/api/student_course_usage.ts @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- student_course_usage +/** + * 获取学员课时消费记录列表 + * @param params + * @returns + */ +export function getStudentCourseUsageList(params: Record) { + return request.get(`student_course_usage/student_course_usage`, { params }) +} + +/** + * 获取学员课时消费记录详情 + * @param id 学员课时消费记录id + * @returns + */ +export function getStudentCourseUsageInfo(id: number) { + return request.get(`student_course_usage/student_course_usage/${id}`) +} + +/** + * 添加学员课时消费记录 + * @param params + * @returns + */ +export function addStudentCourseUsage(params: Record) { + return request.post('student_course_usage/student_course_usage', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑学员课时消费记录 + * @param id + * @param params + * @returns + */ +export function editStudentCourseUsage(params: Record) { + return request.put( + `student_course_usage/student_course_usage/${params.id}`, + params, + { showErrorMessage: true, showSuccessMessage: true } + ) +} + +/** + * 删除学员课时消费记录 + * @param id + * @returns + */ +export function deleteStudentCourseUsage(id: number) { + return request.delete(`student_course_usage/student_course_usage/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- student_course_usage diff --git a/admin/src/app/api/student_courses.ts b/admin/src/app/api/student_courses.ts new file mode 100644 index 00000000..3315bc9f --- /dev/null +++ b/admin/src/app/api/student_courses.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- student_courses +/** + * 获取学员课程列表 + * @param params + * @returns + */ +export function getStudentCoursesList(params: Record) { + return request.get(`student_courses/student_courses`, { params }) +} + +/** + * 获取学员课程详情 + * @param id 学员课程id + * @returns + */ +export function getStudentCoursesInfo(id: number) { + return request.get(`student_courses/student_courses/${id}`) +} + +/** + * 添加学员课程 + * @param params + * @returns + */ +export function addStudentCourses(params: Record) { + return request.post('student_courses/student_courses', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑学员课程 + * @param id + * @param params + * @returns + */ +export function editStudentCourses(params: Record) { + return request.put(`student_courses/student_courses/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除学员课程 + * @param id + * @returns + */ +export function deleteStudentCourses(id: number) { + return request.delete(`student_courses/student_courses/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- student_courses diff --git a/admin/src/app/api/sys.ts b/admin/src/app/api/sys.ts index 285cc133..2ae8b5b0 100644 --- a/admin/src/app/api/sys.ts +++ b/admin/src/app/api/sys.ts @@ -720,3 +720,15 @@ export function deleteExport(id: number) { export function getInstallConfig() { return request.get('sys/install/config') } + + + +//业绩配置 + +export function getYjpzConfig() { + return request.get('sys/get_yjpz_config') +} + +export function yjpzConfig(params: Record) { + return request.post(`sys/yjpz_config`, params) +} diff --git a/admin/src/app/api/user_feedback.ts b/admin/src/app/api/user_feedback.ts new file mode 100644 index 00000000..c6a55bfc --- /dev/null +++ b/admin/src/app/api/user_feedback.ts @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +// USER_CODE_BEGIN -- user_feedback +/** + * 获取用户反馈信息列表 + * @param params + * @returns + */ +export function getUserFeedbackList(params: Record) { + return request.get(`user_feedback/user_feedback`, { params }) +} + +/** + * 获取用户反馈信息详情 + * @param id 用户反馈信息id + * @returns + */ +export function getUserFeedbackInfo(id: number) { + return request.get(`user_feedback/user_feedback/${id}`) +} + +/** + * 添加用户反馈信息 + * @param params + * @returns + */ +export function addUserFeedback(params: Record) { + return request.post('user_feedback/user_feedback', params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 编辑用户反馈信息 + * @param id + * @param params + * @returns + */ +export function editUserFeedback(params: Record) { + return request.put(`user_feedback/user_feedback/${params.id}`, params, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +/** + * 删除用户反馈信息 + * @param id + * @returns + */ +export function deleteUserFeedback(id: number) { + return request.delete(`user_feedback/user_feedback/${id}`, { + showErrorMessage: true, + showSuccessMessage: true, + }) +} + +// USER_CODE_END -- user_feedback diff --git a/admin/src/app/api/venue.ts b/admin/src/app/api/venue.ts new file mode 100644 index 00000000..bf28df73 --- /dev/null +++ b/admin/src/app/api/venue.ts @@ -0,0 +1,60 @@ +import request from '@/utils/request' + + + + + + + +// USER_CODE_BEGIN -- venue +/** + * 获取场地列表 + * @param params + * @returns + */ +export function getVenueList(params: Record) { + return request.get(`venue/venue`, {params}) +} + +/** + * 获取场地详情 + * @param id 场地id + * @returns + */ +export function getVenueInfo(id: number) { + return request.get(`venue/venue/${id}`); +} + +/** + * 添加场地 + * @param params + * @returns + */ +export function addVenue(params: Record) { + return request.post('venue/venue', params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 编辑场地 + * @param id + * @param params + * @returns + */ +export function editVenue(params: Record) { + return request.put(`venue/venue/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true }) +} + +/** + * 删除场地 + * @param id + * @returns + */ +export function deleteVenue(id: number) { + return request.delete(`venue/venue/${id}`, { showErrorMessage: true, showSuccessMessage: true }) +} + +export function getWithCampusList(params: Record){ + return request.get('venue/campus_all', {params}) +} + +// USER_CODE_END -- venue diff --git a/admin/src/app/lang/zh-cn/attendance.attendance.json b/admin/src/app/lang/zh-cn/attendance.attendance.json new file mode 100644 index 00000000..66853807 --- /dev/null +++ b/admin/src/app/lang/zh-cn/attendance.attendance.json @@ -0,0 +1,29 @@ +{ + "id": "考勤编号", + "idPlaceholder": "请输入考勤编号", + "campusId": "校区ID", + "campusIdPlaceholder": "请输入校区ID", + "staffId": "人员ID", + "staffIdPlaceholder": "请输入人员ID", + "attendanceDate": "考勤日期", + "attendanceDatePlaceholder": "请输入考勤日期", + "checkInTime": "签到时间", + "checkInTimePlaceholder": "请输入签到时间", + "checkOutTime": "签退时间", + "checkOutTimePlaceholder": "请输入签退时间", + "status": "考勤状态", + "statusPlaceholder": "请输入考勤状态", + "remarks": "备注", + "remarksPlaceholder": "请输入备注", + "createdAt": "创建时间", + "createdAtPlaceholder": "请输入创建时间", + "updatedAt": "修改时间", + "updatedAtPlaceholder": "请输入修改时间", + "coordinate": "坐标", + "coordinatePlaceholder": "请输入坐标", + "addAttendance": "添加考勤", + "updateAttendance": "编辑考勤", + "attendanceDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/campus.campus.json b/admin/src/app/lang/zh-cn/campus.campus.json new file mode 100644 index 00000000..c2a3e6c0 --- /dev/null +++ b/admin/src/app/lang/zh-cn/campus.campus.json @@ -0,0 +1,20 @@ +{ + "campusName": "校区名称", + "campusNamePlaceholder": "请输入校区名称", + "campusAddress": "校区地址", + "campusAddressPlaceholder": "请输入校区地址", + "campusPreviewImage": "校区banner", + "campusPreviewImagePlaceholder": "请选择图片", + "campusCoordinates": "校区位置", + "campusCoordinatesPlaceholder": "请选择校区位置", + "campusIntroduction": "校区介绍", + "campusIntroductionPlaceholder": "请输入校区介绍", + "campusStatus": "校区状态", + "campusStatusPlaceholder": "请输入校区状态", + "createTime": "校区创建时间", + "addCampus": "添加校区", + "updateCampus": "编辑校区", + "campusDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/campus_person_role.campus_person_role.json b/admin/src/app/lang/zh-cn/campus_person_role.campus_person_role.json new file mode 100644 index 00000000..2e9597ed --- /dev/null +++ b/admin/src/app/lang/zh-cn/campus_person_role.campus_person_role.json @@ -0,0 +1,17 @@ +{ + "id": "关系编号", + "idPlaceholder": "请输入关系编号", + "campusId": "校区", + "campusIdPlaceholder": "全部", + "personId": "人员", + "personIdPlaceholder": "全部", + "roleId": "角色", + "roleIdPlaceholder": "全部", + "deptId": "部门表", + "deptIdPlaceholder": "全部", + "addCampusPersonRole": "添加角色关系", + "updateCampusPersonRole": "编辑角色关系", + "campusPersonRoleDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/class.class.json b/admin/src/app/lang/zh-cn/class.class.json new file mode 100644 index 00000000..a13a7093 --- /dev/null +++ b/admin/src/app/lang/zh-cn/class.class.json @@ -0,0 +1,27 @@ +{ + "campusId":"所属校区", + "campusIdPlaceholder":"全部", + "className":"场地名称", + "classNamePlaceholder":"请输入场地名称", + "headCoach":"主教练", + "headCoachPlaceholder":"全部", + "ageGroup":"授课年龄段", + "ageGroupPlaceholder":"请输入授课年龄段", + "classType":"场地类型", + "classTypePlaceholder":"请输入场地类型", + "assistantCoach":"助教", + "assistantCoachPlaceholder":"全部", + "createdAt":"创建时间", + "createdAtPlaceholder":"请输入创建时间", + "status":"班级状态", + "statusPlaceholder":"请输入班级状态", + "sortOrder":"班级排序", + "sortOrderPlaceholder":"请输入班级排序", + "remarks":"班级备注", + "remarksPlaceholder":"请输入班级备注", + "addClass":"添加场地管理", + "updateClass":"编辑场地管理", + "classDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/admin/src/app/lang/zh-cn/classroom.classroom.json b/admin/src/app/lang/zh-cn/classroom.classroom.json new file mode 100644 index 00000000..6216a9aa --- /dev/null +++ b/admin/src/app/lang/zh-cn/classroom.classroom.json @@ -0,0 +1,27 @@ +{ + "campusId":"所属校区", + "campusIdPlaceholder":"全部", + "className":"班级名称", + "classNamePlaceholder":"请输入班级名称", + "headCoach":"主教练", + "headCoachPlaceholder":"全部", + "ageGroup":"授课年龄段", + "ageGroupPlaceholder":"请输入授课年龄段", + "classType":"班级类型", + "classTypePlaceholder":"请输入班级类型", + "assistantCoach":"助教", + "assistantCoachPlaceholder":"全部", + "createdAt":"创建时间", + "createdAtPlaceholder":"请输入创建时间", + "status":"班级状态", + "statusPlaceholder":"请输入班级状态", + "sortOrder":"班级排序", + "sortOrderPlaceholder":"请输入班级排序", + "remarks":"班级备注", + "remarksPlaceholder":"请输入班级备注", + "addClassroom":"添加场地管理", + "updateClassroom":"编辑场地管理", + "classroomDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/admin/src/app/lang/zh-cn/communication_records.communication_records.json b/admin/src/app/lang/zh-cn/communication_records.communication_records.json new file mode 100644 index 00000000..ea85c4fe --- /dev/null +++ b/admin/src/app/lang/zh-cn/communication_records.communication_records.json @@ -0,0 +1,31 @@ +{ + "id": "沟通记录编号", + "idPlaceholder": "请输入沟通记录编号", + "staffId": "员工ID", + "staffIdPlaceholder": "请输入员工ID", + "resourceId": "资源ID", + "resourceIdPlaceholder": "请输入资源ID", + "resourceType": "资源类型(如设备、文件、系统等)", + "resourceTypePlaceholder": "请输入资源类型(如设备、文件、系统等)", + "communicationType": "沟通类型: phone-电话, email-邮件, meeting-会议, other-其他", + "communicationTypePlaceholder": "请输入沟通类型: phone-电话, email-邮件, meeting-会议, other-其他", + "communicationResult": "沟通结果: success-成功, failure-失败, pending-待定", + "communicationResultPlaceholder": "请输入沟通结果: success-成功, failure-失败, pending-待定", + "communicationTime": "沟通时间", + "communicationTimePlaceholder": "请输入沟通时间", + "remarks": "备注", + "remarksPlaceholder": "请输入备注", + "tag": "标签: high-高, medium-中, low-低", + "tagPlaceholder": "请输入标签: high-高, medium-中, low-低", + "businessId": "关联的业务ID", + "businessIdPlaceholder": "请输入关联的业务ID", + "createdAt": "创建时间", + "createdAtPlaceholder": "请输入创建时间", + "updatedAt": "修改时间", + "updatedAtPlaceholder": "请输入修改时间", + "addCommunicationRecords": "添加沟通记录", + "updateCommunicationRecords": "编辑沟通记录", + "communicationRecordsDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/contract.contract.json b/admin/src/app/lang/zh-cn/contract.contract.json new file mode 100644 index 00000000..47ab4bd0 --- /dev/null +++ b/admin/src/app/lang/zh-cn/contract.contract.json @@ -0,0 +1,25 @@ +{ + "id": "合同编号", + "idPlaceholder": "请输入合同编号", + "contractName": "合同名称", + "contractNamePlaceholder": "请输入合同名称", + "contractTemplate": "合同模板", + "contractTemplatePlaceholder": "请输入合同模板", + "contractStatus": "合同状态", + "contractStatusPlaceholder": "请输入合同状态", + "contractType": "合同类型", + "contractTypePlaceholder": "请输入合同类型", + "remarks": "合同备注", + "remarksPlaceholder": "请输入合同备注", + "createdAt": "创建时间", + "createdAtPlaceholder": "请输入创建时间", + "updatedAt": "修改时间", + "updatedAtPlaceholder": "请输入修改时间", + "deletedAt": "逻辑删除时间", + "deletedAtPlaceholder": "请输入逻辑删除时间", + "addContract": "添加合同", + "updateContract": "编辑合同", + "contractDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/course.course.json b/admin/src/app/lang/zh-cn/course.course.json new file mode 100644 index 00000000..87e24f74 --- /dev/null +++ b/admin/src/app/lang/zh-cn/course.course.json @@ -0,0 +1,27 @@ +{ + "id": "课程编号", + "idPlaceholder": "请输入课程编号", + "courseName": "课程名称", + "courseNamePlaceholder": "请输入课程名称", + "courseType": "课程类型", + "courseTypePlaceholder": "请输入课程类型", + "duration": "课程时长", + "durationPlaceholder": "请输入课程时长", + "sessionCount": "课时数量", + "sessionCountPlaceholder": "请输入课时数量", + "singleSessionCount": "单次逍客数量", + "singleSessionCountPlaceholder": "请输入单次逍客数量", + "price": "课程价格", + "pricePlaceholder": "请输入课程价格", + "internalReminder": "内部提醒课时", + "internalReminderPlaceholder": "请输入内部提醒课时", + "customerReminder": "客户提醒课时", + "customerReminderPlaceholder": "请输入客户提醒课时", + "remarks": "课程备注", + "remarksPlaceholder": "请输入课程备注", + "addCourse": "添加课程", + "updateCourse": "编辑课程", + "courseDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/course_schedule.course_schedule.json b/admin/src/app/lang/zh-cn/course_schedule.course_schedule.json new file mode 100644 index 00000000..6b02e8a0 --- /dev/null +++ b/admin/src/app/lang/zh-cn/course_schedule.course_schedule.json @@ -0,0 +1,29 @@ +{ + "id": "课程安排编号", + "idPlaceholder": "请输入课程安排编号", + "campusId": "校区ID", + "campusIdPlaceholder": "请输入校区ID", + "venueId": "场地ID", + "venueIdPlaceholder": "请输入场地ID", + "courseDate": "上课日期", + "courseDatePlaceholder": "请输入上课日期", + "timeSlot": "上课时段", + "timeSlotPlaceholder": "请输入上课时段", + "courseId": "课程ID", + "courseIdPlaceholder": "请输入课程ID", + "coachId": "上课教练ID", + "coachIdPlaceholder": "请输入上课教练ID", + "participants": "参与人员列表", + "participantsPlaceholder": "请输入参与人员列表", + "studentIds": "上课学生列表", + "studentIdsPlaceholder": "请输入上课学生列表", + "availableCapacity": "根据场地容量判断的可安排学员位置数量", + "availableCapacityPlaceholder": "请输入根据场地容量判断的可安排学员位置数量", + "status": "课程状态:", + "statusPlaceholder": "请输入课程状态:", + "addCourseSchedule": "添加课程安排", + "updateCourseSchedule": "编辑课程安排", + "courseScheduleDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/customer_resource_changes.customer_resource_changes.json b/admin/src/app/lang/zh-cn/customer_resource_changes.customer_resource_changes.json new file mode 100644 index 00000000..cc01945e --- /dev/null +++ b/admin/src/app/lang/zh-cn/customer_resource_changes.customer_resource_changes.json @@ -0,0 +1,21 @@ +{ + "id": "修改编号", + "idPlaceholder": "请输入修改编号", + "customerResourceId": "客户资源的ID", + "customerResourceIdPlaceholder": "请输入客户资源的ID", + "operatorId": "操作人的ID", + "operatorIdPlaceholder": "请输入操作人的ID", + "campusId": "操作校区的ID", + "campusIdPlaceholder": "请输入操作校区的ID", + "modifiedFields": "修改的哪些字段", + "modifiedFieldsPlaceholder": "请输入修改的哪些字段", + "oldValues": "修改前的值", + "oldValuesPlaceholder": "请输入修改前的值", + "newValues": "修改后的值", + "newValuesPlaceholder": "请输入修改后的值", + "addCustomerResourceChanges": "添加客户资源表变更记录", + "updateCustomerResourceChanges": "编辑客户资源表变更记录", + "customerResourceChangesDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/customer_resources.customer_resources.json b/admin/src/app/lang/zh-cn/customer_resources.customer_resources.json new file mode 100644 index 00000000..57befe1e --- /dev/null +++ b/admin/src/app/lang/zh-cn/customer_resources.customer_resources.json @@ -0,0 +1,38 @@ +{ + "source":"来源", + "sourcePlaceholder":"请输入来源", + "sourceChannel":"来源渠道", + "sourceChannelPlaceholder":"请输入来源渠道", + "consultant":"顾问", + "name":"姓名", + "namePlaceholder":"请输入姓名", + "age":"年龄", + "agePlaceholder":"请输入年龄", + "gender":"性别", + "genderPlaceholder":"请输入性别", + "phoneNumber":"联系电话", + "phoneNumberPlaceholder":"请输入联系电话", + "demand":"需求", + "demandPlaceholder":"请输入需求", + "purchasingPower":"购买力", + "purchasingPowerPlaceholder":"请输入购买力", + "cognitiveIdea":"认知理念", + "cognitiveIdeaPlaceholder":"请输入认知理念", + "optionalClassTime":"可选上课时间", + "optionalClassTimePlaceholder":"请输入可选上课时间", + "distance":"距离", + "distancePlaceholder":"请输入距离", + "decisionMaker":"决策人", + "decisionMakerPlaceholder":"请输入决策人", + "initialIntent":"客户初步意向度", + "initialIntentPlaceholder":"请输入客户初步意向度", + "campus":"所属校区", + "campusPlaceholder":"请输入所属校区", + "status":"客户状态", + "statusPlaceholder":"请输入客户状态", + "addCustomerResources":"添加客户资源", + "updateCustomerResources":"编辑客户资源", + "customerResourcesDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/admin/src/app/lang/zh-cn/exam_answers.exam_answers.json b/admin/src/app/lang/zh-cn/exam_answers.exam_answers.json new file mode 100644 index 00000000..83e78d05 --- /dev/null +++ b/admin/src/app/lang/zh-cn/exam_answers.exam_answers.json @@ -0,0 +1,19 @@ +{ + "id": "答题记录编号", + "idPlaceholder": "请输入答题记录编号", + "campusId": "校区ID", + "campusIdPlaceholder": "请输入校区ID", + "userId": "人员ID", + "userIdPlaceholder": "请输入人员ID", + "questionId": "试题ID", + "questionIdPlaceholder": "请输入试题ID", + "answer": "用户答案", + "answerPlaceholder": "请输入用户答案", + "isCorrect": "是否正确", + "isCorrectPlaceholder": "请输入是否正确", + "addExamAnswers": "添加答题记录", + "updateExamAnswers": "编辑答题记录", + "examAnswersDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/exam_papers.exam_papers.json b/admin/src/app/lang/zh-cn/exam_papers.exam_papers.json new file mode 100644 index 00000000..59d962da --- /dev/null +++ b/admin/src/app/lang/zh-cn/exam_papers.exam_papers.json @@ -0,0 +1,15 @@ +{ + "id": "试卷编号", + "idPlaceholder": "请输入试卷编号", + "selectionMode": "题目选择模式: random-随机主题, manual-自选题目", + "selectionModePlaceholder": "请输入题目选择模式: random-随机主题, manual-自选题目", + "totalScore": "总分", + "totalScorePlaceholder": "请输入总分", + "passingScore": "合格分数", + "passingScorePlaceholder": "请输入合格分数", + "addExamPapers": "添加试卷", + "updateExamPapers": "编辑试卷", + "examPapersDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/exam_questions.exam_questions.json b/admin/src/app/lang/zh-cn/exam_questions.exam_questions.json new file mode 100644 index 00000000..d34387ea --- /dev/null +++ b/admin/src/app/lang/zh-cn/exam_questions.exam_questions.json @@ -0,0 +1,33 @@ +{ + "id":"试题编号", + "idPlaceholder":"请输入试题编号", + "questionType":"题型: single_choice-单选, multiple_choice-多选, true_false-判断", + "questionTypePlaceholder":"请输入题型: single_choice-单选, multiple_choice-多选, true_false-判断", + "questionContentType":"题干类型: text-文本, image-图片", + "questionContentTypePlaceholder":"请输入题干类型: text-文本, image-图片", + "questionContent":"题干内容(如果是图片则存储URL)", + "questionContentPlaceholder":"请输入题干内容(如果是图片则存储URL)", + "optionAContentType":"选项A类型: text-文本, image-图片", + "optionAContentTypePlaceholder":"请输入选项A类型: text-文本, image-图片", + "optionAContent":"选项A内容(如果是图片则存储URL)", + "optionAContentPlaceholder":"请输入选项A内容(如果是图片则存储URL)", + "optionBContentType":"选项B类型: text-文本, image-图片", + "optionBContentTypePlaceholder":"请输入选项B类型: text-文本, image-图片", + "optionBContent":"选项B内容(如果是图片则存储URL)", + "optionBContentPlaceholder":"请输入选项B内容(如果是图片则存储URL)", + "optionCContentType":"选项C类型: text-文本, image-图片", + "optionCContentTypePlaceholder":"请输入选项C类型: text-文本, image-图片", + "optionCContent":"选项C内容(如果是图片则存储URL)", + "optionCContentPlaceholder":"请输入选项C内容(如果是图片则存储URL)", + "optionDContentType":"选项D类型: text-文本, image-图片", + "optionDContentTypePlaceholder":"请输入选项D类型: text-文本, image-图片", + "optionDContent":"选项D内容(如果是图片则存储URL)", + "optionDContentPlaceholder":"请输入选项D内容(如果是图片则存储URL)", + "correctAnswer":"正确答案(如果是多选,答案格式为如A,B,D)", + "correctAnswerPlaceholder":"请输入正确答案(如果是多选,答案格式为如A,B,D)", + "addExamQuestions":"添加试题", + "updateExamQuestions":"编辑试题", + "examQuestionsDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/admin/src/app/lang/zh-cn/exam_questions.exam_questions_edit.json b/admin/src/app/lang/zh-cn/exam_questions.exam_questions_edit.json new file mode 100644 index 00000000..e4f382af --- /dev/null +++ b/admin/src/app/lang/zh-cn/exam_questions.exam_questions_edit.json @@ -0,0 +1,29 @@ +{ + "questionType":"题型: single_choice-单选, multiple_choice-多选, true_false-判断", + "questionContentType":"题干类型: text-文本, image-图片", + "questionContent":"题干内容(如果是图片则存储URL)", + "optionAContentType":"选项A类型: text-文本, image-图片", + "optionAContent":"选项A内容(如果是图片则存储URL)", + "optionBContentType":"选项B类型: text-文本, image-图片", + "optionBContent":"选项B内容(如果是图片则存储URL)", + "optionCContentType":"选项C类型: text-文本, image-图片", + "optionCContent":"选项C内容(如果是图片则存储URL)", + "optionDContentType":"选项D类型: text-文本, image-图片", + "optionDContent":"选项D内容(如果是图片则存储URL)", + "correctAnswer":"正确答案(如果是多选,答案格式为如A,B,D)", + "questionTypePlaceholder":"请输入题型: single_choice-单选, multiple_choice-多选, true_false-判断", + "questionContentTypePlaceholder":"请输入题干类型: text-文本, image-图片", + "questionContentPlaceholder":"请输入题干内容(如果是图片则存储URL)", + "optionAContentTypePlaceholder":"请输入选项A类型: text-文本, image-图片", + "optionAContentPlaceholder":"请输入选项A内容(如果是图片则存储URL)", + "optionBContentTypePlaceholder":"请输入选项B类型: text-文本, image-图片", + "optionBContentPlaceholder":"请输入选项B内容(如果是图片则存储URL)", + "optionCContentTypePlaceholder":"请输入选项C类型: text-文本, image-图片", + "optionCContentPlaceholder":"请输入选项C内容(如果是图片则存储URL)", + "optionDContentTypePlaceholder":"请输入选项D类型: text-文本, image-图片", + "optionDContentPlaceholder":"请输入选项D内容(如果是图片则存储URL)", + "correctAnswerPlaceholder":"请输入正确答案(如果是多选,答案格式为如"A,B,D")", + "addExamQuestions":"添加试题", + "updateExamQuestions":"编辑试题", + "examQuestionsDeleteTips":"确定要删除该试题吗?" +} \ No newline at end of file diff --git a/admin/src/app/lang/zh-cn/exam_records.exam_records.json b/admin/src/app/lang/zh-cn/exam_records.exam_records.json new file mode 100644 index 00000000..7ead4afd --- /dev/null +++ b/admin/src/app/lang/zh-cn/exam_records.exam_records.json @@ -0,0 +1,23 @@ +{ + "id": "记录编号", + "idPlaceholder": "请输入记录编号", + "campusId": "校区ID", + "campusIdPlaceholder": "请输入校区ID", + "userId": "人员ID", + "userIdPlaceholder": "请输入人员ID", + "paperId": "试卷ID", + "paperIdPlaceholder": "请输入试卷ID", + "score": "得分", + "scorePlaceholder": "请输入得分", + "status": "考试状态: in_progress-进行中, completed-已完成", + "statusPlaceholder": "请输入考试状态: in_progress-进行中, completed-已完成", + "startTime": "考试开始时间", + "startTimePlaceholder": "请输入考试开始时间", + "endTime": "考试结束时间", + "endTimePlaceholder": "请输入考试结束时间", + "addExamRecords": "添加考试记录", + "updateExamRecords": "编辑考试记录", + "examRecordsDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/market_performance.market_performance.json b/admin/src/app/lang/zh-cn/market_performance.market_performance.json new file mode 100644 index 00000000..32ba3daf --- /dev/null +++ b/admin/src/app/lang/zh-cn/market_performance.market_performance.json @@ -0,0 +1,13 @@ +{ + "personnelId": "人员", + "personnelIdPlaceholder": "请输入人员", + "campusId": "校区", + "campusIdPlaceholder": "全部", + "performanceAmount": "绩效金额", + "performanceAmountPlaceholder": "请输入绩效金额", + "addMarketPerformance": "添加市场绩效", + "updateMarketPerformance": "编辑市场绩效", + "marketPerformanceDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/order_table.order_table.json b/admin/src/app/lang/zh-cn/order_table.order_table.json new file mode 100644 index 00000000..7e371d1d --- /dev/null +++ b/admin/src/app/lang/zh-cn/order_table.order_table.json @@ -0,0 +1,35 @@ +{ + "id": "订单编号", + "idPlaceholder": "请输入订单编号", + "paymentId": "支付编号", + "paymentIdPlaceholder": "请输入支付编号", + "orderStatus": "订单状态: pending-待支付, paid-已支付", + "orderStatusPlaceholder": "请输入订单状态: pending-待支付, paid-已支付", + "paymentType": "付款类型: cash-现金支付, scan_code-扫码支付, subscription-订阅支付", + "paymentTypePlaceholder": "请输入付款类型: cash-现金支付, scan_code-扫码支付, subscription-订阅支付", + "orderAmount": "订单金额", + "orderAmountPlaceholder": "请输入订单金额", + "courseId": "课程ID", + "courseIdPlaceholder": "请输入课程ID", + "classId": "班级ID", + "classIdPlaceholder": "请输入班级ID", + "staffId": "人员ID", + "staffIdPlaceholder": "请输入人员ID", + "resourceId": "资源ID", + "resourceIdPlaceholder": "请输入资源ID", + "afterSalesStatus": "售后状态", + "afterSalesStatusPlaceholder": "请输入售后状态", + "afterSalesReason": "售后原因", + "afterSalesReasonPlaceholder": "请输入售后原因", + "afterSalesTime": "售后时间", + "afterSalesTimePlaceholder": "请输入售后时间", + "paymentTime": "支付时间", + "paymentTimePlaceholder": "请输入支付时间", + "subscriptionPaymentTime": "订阅支付生成时间", + "subscriptionPaymentTimePlaceholder": "请输入订阅支付生成时间", + "addOrderTable": "添加订单", + "updateOrderTable": "编辑订单", + "orderTableDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/performance_records.performance_records.json b/admin/src/app/lang/zh-cn/performance_records.performance_records.json new file mode 100644 index 00000000..bfd5c65c --- /dev/null +++ b/admin/src/app/lang/zh-cn/performance_records.performance_records.json @@ -0,0 +1,23 @@ +{ + "id": "绩效编号", + "idPlaceholder": "请输入绩效编号", + "staffId": "员工ID", + "staffIdPlaceholder": "请输入员工ID", + "resourceId": "资源ID", + "resourceIdPlaceholder": "请输入资源ID", + "orderId": "订单ID", + "orderIdPlaceholder": "请输入订单ID", + "orderStatus": "订单状态: pending-待处理, completed-已完成, cancelled-已取消", + "orderStatusPlaceholder": "请输入订单状态: pending-待处理, completed-已完成, cancelled-已取消", + "performanceType": "绩效类型: sales-销售绩效, marketing-市场绩效, other-其他", + "performanceTypePlaceholder": "请输入绩效类型: sales-销售绩效, marketing-市场绩效, other-其他", + "performanceValue": "绩效金额或分值", + "performanceValuePlaceholder": "请输入绩效金额或分值", + "remarks": "备注", + "remarksPlaceholder": "请输入备注", + "addPerformanceRecords": "添加绩效记录", + "updatePerformanceRecords": "编辑绩效记录", + "performanceRecordsDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/person_course_schedule.person_course_schedule.json b/admin/src/app/lang/zh-cn/person_course_schedule.person_course_schedule.json new file mode 100644 index 00000000..58bb5ce7 --- /dev/null +++ b/admin/src/app/lang/zh-cn/person_course_schedule.person_course_schedule.json @@ -0,0 +1,19 @@ +{ + "id": "关系编号", + "idPlaceholder": "请输入关系编号", + "personId": "人员或资源ID", + "personIdPlaceholder": "请输入人员或资源ID", + "personType": "人员类型: student-正式学员, customer_resource-客户资源", + "personTypePlaceholder": "请输入人员类型: student-正式学员, customer_resource-客户资源", + "scheduleId": "课程安排ID", + "scheduleIdPlaceholder": "请输入课程安排ID", + "courseDate": "上课日期", + "courseDatePlaceholder": "请输入上课日期", + "timeSlot": "上课时段", + "timeSlotPlaceholder": "请输入上课时段", + "addPersonCourseSchedule": "添加人员与课程安排关系", + "updatePersonCourseSchedule": "编辑人员与课程安排关系", + "personCourseScheduleDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/personnel.personnel.json b/admin/src/app/lang/zh-cn/personnel.personnel.json new file mode 100644 index 00000000..3c6576f7 --- /dev/null +++ b/admin/src/app/lang/zh-cn/personnel.personnel.json @@ -0,0 +1,35 @@ +{ + "name": "姓名", + "namePlaceholder": "请输入姓名", + "gender": "性别", + "genderPlaceholder": "请输入性别", + "phone": "电话", + "phonePlaceholder": "请输入电话", + "address": "家庭住址", + "addressPlaceholder": "请输入家庭住址", + "nativePlace": "祖籍", + "nativePlacePlaceholder": "请输入祖籍", + "education": "学历", + "educationPlaceholder": "请输入学历", + "profile": "个人简介", + "profilePlaceholder": "请输入个人简介", + "emergencyContactPhone": "应急联系人电话", + "emergencyContactPhonePlaceholder": "请输入应急联系人电话", + "idCardFront": "身份证正面", + "idCardFrontPlaceholder": "请输入身份证正面", + "idCardBack": "身份证反面", + "idCardBackPlaceholder": "请输入身份证反面", + "employeeNumber": "员工编号", + "employeeNumberPlaceholder": "请输入员工编号", + "status": "员工状态", + "statusPlaceholder": "请输入员工状态", + "isSysUser": "是否登录系统", + "isSysUserPlaceholder": "请输入是否登录系统", + "createTime": "创建时间", + "createTimePlaceholder": "请输入创建时间", + "addPersonnel": "添加人员", + "updatePersonnel": "编辑人员", + "personnelDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/physical_test.physical_test.json b/admin/src/app/lang/zh-cn/physical_test.physical_test.json new file mode 100644 index 00000000..e8661df7 --- /dev/null +++ b/admin/src/app/lang/zh-cn/physical_test.physical_test.json @@ -0,0 +1,43 @@ +{ + "id": "体测编号", + "idPlaceholder": "请输入体测编号", + "resourceId": "资源ID", + "resourceIdPlaceholder": "请输入资源ID", + "studentId": "学员ID", + "studentIdPlaceholder": "请输入学员ID", + "height": "身高", + "heightPlaceholder": "请输入身高", + "weight": "体重", + "weightPlaceholder": "请输入体重", + "coachId": "教练ID", + "coachIdPlaceholder": "请输入教练ID", + "createdAt": "创建时间", + "createdAtPlaceholder": "请输入创建时间", + "updatedAt": "修改时间", + "updatedAtPlaceholder": "请输入修改时间", + "seatedForwardBend": "坐位体前屈", + "seatedForwardBendPlaceholder": "请输入坐位体前屈", + "sitUps": "仰卧卷腹", + "sitUpsPlaceholder": "请输入仰卧卷腹", + "pushUps": "九十度仰卧撑", + "pushUpsPlaceholder": "请输入九十度仰卧撑", + "flamingoBalance": "火烈鸟平衡测试", + "flamingoBalancePlaceholder": "请输入火烈鸟平衡测试", + "thirtySecJump": "三十秒双脚连续跳", + "thirtySecJumpPlaceholder": "请输入三十秒双脚连续跳", + "standingLongJump": "立定跳远", + "standingLongJumpPlaceholder": "请输入立定跳远", + "agilityRun": "4乘10m灵敏折返跑", + "agilityRunPlaceholder": "请输入4乘10m灵敏折返跑", + "balanceBeam": "走平衡木", + "balanceBeamPlaceholder": "请输入走平衡木", + "tennisThrow": "网球掷远", + "tennisThrowPlaceholder": "请输入网球掷远", + "tenMeterShuttleRun": "十米往返跑", + "tenMeterShuttleRunPlaceholder": "请输入十米往返跑", + "addPhysicalTest": "添加体测", + "updatePhysicalTest": "编辑体测", + "physicalTestDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/reimbursement.reimbursement.json b/admin/src/app/lang/zh-cn/reimbursement.reimbursement.json new file mode 100644 index 00000000..04005c96 --- /dev/null +++ b/admin/src/app/lang/zh-cn/reimbursement.reimbursement.json @@ -0,0 +1,21 @@ +{ + "id": "报销编号", + "idPlaceholder": "请输入报销编号", + "applicantId": "申请人ID", + "applicantIdPlaceholder": "请输入申请人ID", + "amount": "报销金额", + "amountPlaceholder": "请输入报销金额", + "description": "报销描述", + "descriptionPlaceholder": "请输入报销描述", + "receiptUrl": "发票或收据URL", + "receiptUrlPlaceholder": "请输入发票或收据URL", + "status": "状态", + "statusPlaceholder": "请输入状态", + "processId": "关联的审批流程ID", + "processIdPlaceholder": "请输入关联的审批流程ID", + "addReimbursement": "添加报销记录", + "updateReimbursement": "编辑报销记录", + "reimbursementDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/resource_sharing.resource_sharing.json b/admin/src/app/lang/zh-cn/resource_sharing.resource_sharing.json new file mode 100644 index 00000000..254e4872 --- /dev/null +++ b/admin/src/app/lang/zh-cn/resource_sharing.resource_sharing.json @@ -0,0 +1,19 @@ +{ + "id": "共享记录编号", + "idPlaceholder": "请输入共享记录编号", + "resourceId": "资源ID", + "resourceIdPlaceholder": "请输入资源ID", + "userId": "用户ID(可为空)", + "userIdPlaceholder": "请输入用户ID(可为空)", + "roleId": "角色ID(可为空)", + "roleIdPlaceholder": "请输入角色ID(可为空)", + "sharedBy": "共享人ID", + "sharedByPlaceholder": "请输入共享人ID", + "sharedAt": "共享时间", + "sharedAtPlaceholder": "请输入共享时间", + "addResourceSharing": "添加资源共享", + "updateResourceSharing": "编辑资源共享", + "resourceSharingDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/salary.salary.json b/admin/src/app/lang/zh-cn/salary.salary.json new file mode 100644 index 00000000..731b2352 --- /dev/null +++ b/admin/src/app/lang/zh-cn/salary.salary.json @@ -0,0 +1,33 @@ +{ + "id": "工资编号", + "idPlaceholder": "请输入工资编号", + "staffId": "员工ID", + "staffIdPlaceholder": "请输入员工ID", + "baseSalary": "底薪", + "baseSalaryPlaceholder": "请输入底薪", + "performanceBonus": "绩效", + "performanceBonusPlaceholder": "请输入绩效", + "deductions": "扣款", + "deductionsPlaceholder": "请输入扣款", + "otherSubsidies": "其他补贴", + "otherSubsidiesPlaceholder": "请输入其他补贴", + "netSalary": "实发工资", + "netSalaryPlaceholder": "请输入实发工资", + "paymentStatus": "发放状态", + "paymentStatusPlaceholder": "请输入发放状态", + "paymentMethod": "发放方式", + "paymentMethodPlaceholder": "请输入发放方式", + "remarks": "备注", + "remarksPlaceholder": "请输入备注", + "salaryMonth": "工资月份", + "salaryMonthPlaceholder": "请输入工资月份", + "departmentId": "部门ID", + "departmentIdPlaceholder": "请输入部门ID", + "processId": "关联的审批流程ID", + "processIdPlaceholder": "请输入关联的审批流程ID", + "addSalary": "添加工资", + "updateSalary": "编辑工资", + "salaryDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/service.service.json b/admin/src/app/lang/zh-cn/service.service.json new file mode 100644 index 00000000..ff1a2f8e --- /dev/null +++ b/admin/src/app/lang/zh-cn/service.service.json @@ -0,0 +1,29 @@ +{ + "id": "服务编号", + "idPlaceholder": "请输入服务编号", + "serviceName": "服务名称", + "serviceNamePlaceholder": "请输入服务名称", + "previewImageUrl": "服务预览图URL", + "previewImageUrlPlaceholder": "请输入服务预览图URL", + "description": "服务描述", + "descriptionPlaceholder": "请输入服务描述", + "serviceType": "服务类型", + "serviceTypePlaceholder": "请输入服务类型", + "executionRules": "服务执行规则", + "executionRulesPlaceholder": "请输入服务执行规则", + "staffReminder": "是否员工提醒: 1-是, 0-否", + "staffReminderPlaceholder": "请输入是否员工提醒: 1-是, 0-否", + "customerReminder": "是否客户提醒: 1-是, 0-否", + "customerReminderPlaceholder": "请输入是否客户提醒: 1-是, 0-否", + "customerConfirmation": "是否客户确认: 1-是, 0-否", + "customerConfirmationPlaceholder": "请输入是否客户确认: 1-是, 0-否", + "customerFeedback": "客户反馈内容", + "customerFeedbackPlaceholder": "请输入客户反馈内容", + "status": "状态", + "statusPlaceholder": "请输入状态", + "addService": "添加服务", + "updateService": "编辑服务", + "serviceDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/six_speed.six_speed.json b/admin/src/app/lang/zh-cn/six_speed.six_speed.json new file mode 100644 index 00000000..07515f52 --- /dev/null +++ b/admin/src/app/lang/zh-cn/six_speed.six_speed.json @@ -0,0 +1,29 @@ +{ + "purchasePower":"需求购买力", + "purchasePowerPlaceholder":"请输入需求购买力", + "conceptAwareness":"认知理念", + "conceptAwarenessPlaceholder":"请输入认知理念", + "preferredClassTime":"可选上课时间", + "preferredClassTimePlaceholder":"请输入可选上课时间", + "distance":"距离", + "distancePlaceholder":"请输入距离", + "communication":"沟通备注", + "communicationPlaceholder":"请输入沟通备注", + "promisedVisitTime":"承诺到访时间", + "promisedVisitTimePlaceholder":"请输入承诺到访时间", + "actualVisitTime":"实际到访时间", + "actualVisitTimePlaceholder":"请输入实际到访时间", + "callIntent":"电话后的意向程度", + "callIntentPlaceholder":"请输入电话后的意向程度", + "firstVisitStatus":"一访情况", + "firstVisitStatusPlaceholder":"请输入一访情况", + "secondVisitStatus":"二访情况", + "secondVisitStatusPlaceholder":"请输入二访情况", + "isClosed":"是否关单", + "isClosedPlaceholder":"请输入是否关单", + "addSixSpeed":"添加六一速", + "updateSixSpeed":"编辑六一速", + "sixSpeedDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/admin/src/app/lang/zh-cn/six_speed_modification_log.six_speed_modification_log.json b/admin/src/app/lang/zh-cn/six_speed_modification_log.six_speed_modification_log.json new file mode 100644 index 00000000..0c5d5b72 --- /dev/null +++ b/admin/src/app/lang/zh-cn/six_speed_modification_log.six_speed_modification_log.json @@ -0,0 +1,19 @@ +{ + "id": "编号", + "idPlaceholder": "请输入编号", + "campusId": "校区", + "campusIdPlaceholder": "全部", + "staffId": "人员", + "staffIdPlaceholder": "请输入人员", + "modifiedField": "修改的字段", + "modifiedFieldPlaceholder": "请输入修改的字段", + "oldValue": "修改前的值", + "oldValuePlaceholder": "请输入修改前的值", + "newValue": "修改后的值", + "newValuePlaceholder": "请输入修改后的值", + "addSixSpeedModificationLog": "添加六一速修改记录", + "updateSixSpeedModificationLog": "编辑六一速修改记录", + "sixSpeedModificationLogDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/stat_hour.stat_hour.json b/admin/src/app/lang/zh-cn/stat_hour.stat_hour.json new file mode 100644 index 00000000..e2b65f1d --- /dev/null +++ b/admin/src/app/lang/zh-cn/stat_hour.stat_hour.json @@ -0,0 +1,73 @@ +{ + "id": "", + "idPlaceholder": "请输入", + "addon": "插件", + "addonPlaceholder": "请输入插件", + "field": "统计字段", + "fieldPlaceholder": "请输入统计字段", + "fieldTotal": "总计", + "fieldTotalPlaceholder": "请输入总计", + "year": "年", + "yearPlaceholder": "请输入年", + "month": "月", + "monthPlaceholder": "请输入月", + "day": "天", + "dayPlaceholder": "请输入天", + "startTime": "当日开始时间戳", + "startTimePlaceholder": "请输入当日开始时间戳", + "lastTime": "最后执行时间", + "lastTimePlaceholder": "请输入最后执行时间", + "hour0": "", + "hour0Placeholder": "请输入", + "hour1": "", + "hour1Placeholder": "请输入", + "hour2": "", + "hour2Placeholder": "请输入", + "hour3": "", + "hour3Placeholder": "请输入", + "hour4": "", + "hour4Placeholder": "请输入", + "hour5": "", + "hour5Placeholder": "请输入", + "hour6": "", + "hour6Placeholder": "请输入", + "hour7": "", + "hour7Placeholder": "请输入", + "hour8": "", + "hour8Placeholder": "请输入", + "hour9": "", + "hour9Placeholder": "请输入", + "hour10": "", + "hour10Placeholder": "请输入", + "hour11": "", + "hour11Placeholder": "请输入", + "hour12": "", + "hour12Placeholder": "请输入", + "hour13": "", + "hour13Placeholder": "请输入", + "hour14": "", + "hour14Placeholder": "请输入", + "hour15": "", + "hour15Placeholder": "请输入", + "hour16": "", + "hour16Placeholder": "请输入", + "hour17": "", + "hour17Placeholder": "请输入", + "hour18": "", + "hour18Placeholder": "请输入", + "hour19": "", + "hour19Placeholder": "请输入", + "hour20": "", + "hour20Placeholder": "请输入", + "hour21": "", + "hour21Placeholder": "请输入", + "hour22": "", + "hour22Placeholder": "请输入", + "hour23": "", + "hour23Placeholder": "请输入", + "addStatHour": "添加小时统计", + "updateStatHour": "编辑小时统计", + "statHourDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/student_course_usage.student_course_usage.json b/admin/src/app/lang/zh-cn/student_course_usage.student_course_usage.json new file mode 100644 index 00000000..6054965d --- /dev/null +++ b/admin/src/app/lang/zh-cn/student_course_usage.student_course_usage.json @@ -0,0 +1,15 @@ +{ + "id": "记录编号", + "idPlaceholder": "请输入记录编号", + "studentCourseId": "学员课程ID(关联到student_courses表)", + "studentCourseIdPlaceholder": "请输入学员课程ID(关联到student_courses表)", + "usedHours": "本次使用的课时数", + "usedHoursPlaceholder": "请输入本次使用的课时数", + "usageDate": "课时使用日期", + "usageDatePlaceholder": "请输入课时使用日期", + "addStudentCourseUsage": "添加学员课时消费记录", + "updateStudentCourseUsage": "编辑学员课时消费记录", + "studentCourseUsageDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/student_courses.student_courses.json b/admin/src/app/lang/zh-cn/student_courses.student_courses.json new file mode 100644 index 00000000..04c9f51f --- /dev/null +++ b/admin/src/app/lang/zh-cn/student_courses.student_courses.json @@ -0,0 +1,21 @@ +{ + "id": "记录编号", + "idPlaceholder": "请输入记录编号", + "studentId": "学员ID", + "studentIdPlaceholder": "请输入学员ID", + "courseId": "课程ID", + "courseIdPlaceholder": "请输入课程ID", + "totalHours": "总正式课时数", + "totalHoursPlaceholder": "请输入总正式课时数", + "giftHours": "赠送课时数", + "giftHoursPlaceholder": "请输入赠送课时数", + "startDate": "课程开始日期", + "startDatePlaceholder": "请输入课程开始日期", + "endDate": "课程结束日期", + "endDatePlaceholder": "请输入课程结束日期", + "addStudentCourses": "添加学员课程", + "updateStudentCourses": "编辑学员课程", + "studentCoursesDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/user_feedback.user_feedback.json b/admin/src/app/lang/zh-cn/user_feedback.user_feedback.json new file mode 100644 index 00000000..034d20f5 --- /dev/null +++ b/admin/src/app/lang/zh-cn/user_feedback.user_feedback.json @@ -0,0 +1,15 @@ +{ + "id": "反馈编号", + "idPlaceholder": "请输入反馈编号", + "userId": "用户ID", + "userIdPlaceholder": "请输入用户ID", + "feedbackText": "反馈内容", + "feedbackTextPlaceholder": "请输入反馈内容", + "attachmentUrl": "附件URL(OSS对象存储)", + "attachmentUrlPlaceholder": "请输入附件URL(OSS对象存储)", + "addUserFeedback": "添加用户反馈信息", + "updateUserFeedback": "编辑用户反馈信息", + "userFeedbackDeleteTips": "确定要删除该数据吗?", + "startDate": "请选择开始时间", + "endDate": "请选择结束时间" +} diff --git a/admin/src/app/lang/zh-cn/venue.venue.json b/admin/src/app/lang/zh-cn/venue.venue.json new file mode 100644 index 00000000..a379efef --- /dev/null +++ b/admin/src/app/lang/zh-cn/venue.venue.json @@ -0,0 +1,23 @@ +{ + "campusId":"校区", + "campusIdPlaceholder":"全部", + "venueName":"场地名称", + "venueNamePlaceholder":"请输入场地名称", + "capacity":"场地可容纳人数上限", + "capacityPlaceholder":"请输入场地可容纳人数上限", + "availabilityStatus":"场地可用状态", + "availabilityStatusPlaceholder":"请输入场地可用状态", + "timeRangeType":"时间范围类型", + "timeRangeTypePlaceholder":"请输入场地可用时间范围类型", + "fixedTimeRanges":"时间范围", + "fixedTimeRangesPlaceholder":"请输入时间范围", + "createdAt":"创建时间", + "createdAtPlaceholder":"请输入创建时间", + "updatedAt":"修改时间", + "updatedAtPlaceholder":"请输入修改时间", + "addVenue":"添加场地", + "updateVenue":"编辑场地", + "venueDeleteTips":"确定要删除该数据吗?", + "startDate":"请选择开始时间", + "endDate":"请选择结束时间" +} \ No newline at end of file diff --git a/admin/src/app/views/aaaaaaaaaaa/aaaaaaaaaaa.vue b/admin/src/app/views/aaaaaaaaaaa/aaaaaaaaaaa.vue new file mode 100644 index 00000000..50be455a --- /dev/null +++ b/admin/src/app/views/aaaaaaaaaaa/aaaaaaaaaaa.vue @@ -0,0 +1,165 @@ + + + + + diff --git a/admin/src/app/views/aaaaaaaaaaa/components/aaaaaaaaaaa-edit.vue b/admin/src/app/views/aaaaaaaaaaa/components/aaaaaaaaaaa-edit.vue new file mode 100644 index 00000000..c66a7e6f --- /dev/null +++ b/admin/src/app/views/aaaaaaaaaaa/components/aaaaaaaaaaa-edit.vue @@ -0,0 +1,163 @@ + + + + + + diff --git a/admin/src/app/views/attendance/attendance.vue b/admin/src/app/views/attendance/attendance.vue new file mode 100644 index 00000000..6f59285b --- /dev/null +++ b/admin/src/app/views/attendance/attendance.vue @@ -0,0 +1,318 @@ + + + + + diff --git a/admin/src/app/views/attendance/components/attendance-edit.vue b/admin/src/app/views/attendance/components/attendance-edit.vue new file mode 100644 index 00000000..5e2354af --- /dev/null +++ b/admin/src/app/views/attendance/components/attendance-edit.vue @@ -0,0 +1,296 @@ + + + + + + diff --git a/admin/src/app/views/campus/campus.vue b/admin/src/app/views/campus/campus.vue new file mode 100644 index 00000000..8f9dd59a --- /dev/null +++ b/admin/src/app/views/campus/campus.vue @@ -0,0 +1,253 @@ + + + + + diff --git a/admin/src/app/views/campus/components/campus-edit.vue b/admin/src/app/views/campus/components/campus-edit.vue new file mode 100644 index 00000000..ca00310a --- /dev/null +++ b/admin/src/app/views/campus/components/campus-edit.vue @@ -0,0 +1,270 @@ + + + + + + diff --git a/admin/src/app/views/campus_person_role/campus_person_role.vue b/admin/src/app/views/campus_person_role/campus_person_role.vue new file mode 100644 index 00000000..2ad6f913 --- /dev/null +++ b/admin/src/app/views/campus_person_role/campus_person_role.vue @@ -0,0 +1,306 @@ + + + + + diff --git a/admin/src/app/views/campus_person_role/components/campus-person-role-edit.vue b/admin/src/app/views/campus_person_role/components/campus-person-role-edit.vue new file mode 100644 index 00000000..7d6362de --- /dev/null +++ b/admin/src/app/views/campus_person_role/components/campus-person-role-edit.vue @@ -0,0 +1,268 @@ + + + + + + diff --git a/admin/src/app/views/classroom/classroom.vue b/admin/src/app/views/classroom/classroom.vue new file mode 100644 index 00000000..a1b11ddd --- /dev/null +++ b/admin/src/app/views/classroom/classroom.vue @@ -0,0 +1,280 @@ + + + + + diff --git a/admin/src/app/views/classroom/components/classroom-edit.vue b/admin/src/app/views/classroom/components/classroom-edit.vue new file mode 100644 index 00000000..569d3824 --- /dev/null +++ b/admin/src/app/views/classroom/components/classroom-edit.vue @@ -0,0 +1,287 @@ + + + + + + diff --git a/admin/src/app/views/communication_records/communication_records.vue b/admin/src/app/views/communication_records/communication_records.vue new file mode 100644 index 00000000..18fc2957 --- /dev/null +++ b/admin/src/app/views/communication_records/communication_records.vue @@ -0,0 +1,351 @@ + + + + + diff --git a/admin/src/app/views/communication_records/components/communication-records-edit.vue b/admin/src/app/views/communication_records/components/communication-records-edit.vue new file mode 100644 index 00000000..bc7a21fc --- /dev/null +++ b/admin/src/app/views/communication_records/components/communication-records-edit.vue @@ -0,0 +1,322 @@ + + + + + + diff --git a/admin/src/app/views/contract/components/contract-edit.vue b/admin/src/app/views/contract/components/contract-edit.vue new file mode 100644 index 00000000..69ef4893 --- /dev/null +++ b/admin/src/app/views/contract/components/contract-edit.vue @@ -0,0 +1,274 @@ + + + + + + diff --git a/admin/src/app/views/contract/contract.vue b/admin/src/app/views/contract/contract.vue new file mode 100644 index 00000000..80e81ff7 --- /dev/null +++ b/admin/src/app/views/contract/contract.vue @@ -0,0 +1,290 @@ + + + + + diff --git a/admin/src/app/views/course/components/course-edit.vue b/admin/src/app/views/course/components/course-edit.vue new file mode 100644 index 00000000..b1d3d780 --- /dev/null +++ b/admin/src/app/views/course/components/course-edit.vue @@ -0,0 +1,290 @@ + + + + + + diff --git a/admin/src/app/views/course/course.vue b/admin/src/app/views/course/course.vue new file mode 100644 index 00000000..6ce6185c --- /dev/null +++ b/admin/src/app/views/course/course.vue @@ -0,0 +1,307 @@ + + + + + diff --git a/admin/src/app/views/course_schedule/components/course-schedule-edit.vue b/admin/src/app/views/course_schedule/components/course-schedule-edit.vue new file mode 100644 index 00000000..8c7d63d8 --- /dev/null +++ b/admin/src/app/views/course_schedule/components/course-schedule-edit.vue @@ -0,0 +1,296 @@ + + + + + + diff --git a/admin/src/app/views/course_schedule/course_schedule.vue b/admin/src/app/views/course_schedule/course_schedule.vue new file mode 100644 index 00000000..5fb3dac5 --- /dev/null +++ b/admin/src/app/views/course_schedule/course_schedule.vue @@ -0,0 +1,326 @@ + + + + + diff --git a/admin/src/app/views/customer_resource_changes/components/customer-resource-changes-edit.vue b/admin/src/app/views/customer_resource_changes/components/customer-resource-changes-edit.vue new file mode 100644 index 00000000..1b9e571d --- /dev/null +++ b/admin/src/app/views/customer_resource_changes/components/customer-resource-changes-edit.vue @@ -0,0 +1,253 @@ + + + + + + diff --git a/admin/src/app/views/customer_resource_changes/customer_resource_changes.vue b/admin/src/app/views/customer_resource_changes/customer_resource_changes.vue new file mode 100644 index 00000000..40945c66 --- /dev/null +++ b/admin/src/app/views/customer_resource_changes/customer_resource_changes.vue @@ -0,0 +1,277 @@ + + + + + diff --git a/admin/src/app/views/customer_resources/components/customer-resources-edit.vue b/admin/src/app/views/customer_resources/components/customer-resources-edit.vue new file mode 100644 index 00000000..2b9beb29 --- /dev/null +++ b/admin/src/app/views/customer_resources/components/customer-resources-edit.vue @@ -0,0 +1,574 @@ + + + + + + \ No newline at end of file diff --git a/admin/src/app/views/customer_resources/customer_resources.vue b/admin/src/app/views/customer_resources/customer_resources.vue new file mode 100644 index 00000000..047a83c0 --- /dev/null +++ b/admin/src/app/views/customer_resources/customer_resources.vue @@ -0,0 +1,231 @@ + + + + + diff --git a/admin/src/app/views/exam_answers/components/exam-answers-edit.vue b/admin/src/app/views/exam_answers/components/exam-answers-edit.vue new file mode 100644 index 00000000..70614968 --- /dev/null +++ b/admin/src/app/views/exam_answers/components/exam-answers-edit.vue @@ -0,0 +1,223 @@ + + + + + + diff --git a/admin/src/app/views/exam_answers/exam_answers.vue b/admin/src/app/views/exam_answers/exam_answers.vue new file mode 100644 index 00000000..65817bd8 --- /dev/null +++ b/admin/src/app/views/exam_answers/exam_answers.vue @@ -0,0 +1,248 @@ + + + + + diff --git a/admin/src/app/views/exam_papers/components/exam-papers-edit.vue b/admin/src/app/views/exam_papers/components/exam-papers-edit.vue new file mode 100644 index 00000000..75445ec0 --- /dev/null +++ b/admin/src/app/views/exam_papers/components/exam-papers-edit.vue @@ -0,0 +1,205 @@ + + + + + + diff --git a/admin/src/app/views/exam_papers/exam_papers.vue b/admin/src/app/views/exam_papers/exam_papers.vue new file mode 100644 index 00000000..354fe785 --- /dev/null +++ b/admin/src/app/views/exam_papers/exam_papers.vue @@ -0,0 +1,220 @@ + + + + + diff --git a/admin/src/app/views/exam_questions/exam_questions.vue b/admin/src/app/views/exam_questions/exam_questions.vue new file mode 100644 index 00000000..14104344 --- /dev/null +++ b/admin/src/app/views/exam_questions/exam_questions.vue @@ -0,0 +1,360 @@ + + + + + diff --git a/admin/src/app/views/exam_questions/exam_questions_edit.vue b/admin/src/app/views/exam_questions/exam_questions_edit.vue new file mode 100644 index 00000000..7c4abef6 --- /dev/null +++ b/admin/src/app/views/exam_questions/exam_questions_edit.vue @@ -0,0 +1,349 @@ + + + + + diff --git a/admin/src/app/views/exam_records/components/exam-records-edit.vue b/admin/src/app/views/exam_records/components/exam-records-edit.vue new file mode 100644 index 00000000..185f2332 --- /dev/null +++ b/admin/src/app/views/exam_records/components/exam-records-edit.vue @@ -0,0 +1,249 @@ + + + + + + diff --git a/admin/src/app/views/exam_records/exam_records.vue b/admin/src/app/views/exam_records/exam_records.vue new file mode 100644 index 00000000..e75367ec --- /dev/null +++ b/admin/src/app/views/exam_records/exam_records.vue @@ -0,0 +1,276 @@ + + + + + diff --git a/admin/src/app/views/market_performance/components/market-performance-edit.vue b/admin/src/app/views/market_performance/components/market-performance-edit.vue new file mode 100644 index 00000000..d3936591 --- /dev/null +++ b/admin/src/app/views/market_performance/components/market-performance-edit.vue @@ -0,0 +1,231 @@ + + + + + + diff --git a/admin/src/app/views/market_performance/market_performance.vue b/admin/src/app/views/market_performance/market_performance.vue new file mode 100644 index 00000000..77db6a92 --- /dev/null +++ b/admin/src/app/views/market_performance/market_performance.vue @@ -0,0 +1,240 @@ + + + + + diff --git a/admin/src/app/views/order_table/components/order-table-edit.vue b/admin/src/app/views/order_table/components/order-table-edit.vue new file mode 100644 index 00000000..df702bf9 --- /dev/null +++ b/admin/src/app/views/order_table/components/order-table-edit.vue @@ -0,0 +1,343 @@ + + + + + + diff --git a/admin/src/app/views/order_table/order_table.vue b/admin/src/app/views/order_table/order_table.vue new file mode 100644 index 00000000..f569d1dc --- /dev/null +++ b/admin/src/app/views/order_table/order_table.vue @@ -0,0 +1,369 @@ + + + + + diff --git a/admin/src/app/views/performance_records/components/performance-records-edit.vue b/admin/src/app/views/performance_records/components/performance-records-edit.vue new file mode 100644 index 00000000..36bc6f84 --- /dev/null +++ b/admin/src/app/views/performance_records/components/performance-records-edit.vue @@ -0,0 +1,259 @@ + + + + + + diff --git a/admin/src/app/views/performance_records/performance_records.vue b/admin/src/app/views/performance_records/performance_records.vue new file mode 100644 index 00000000..2cb0fb7e --- /dev/null +++ b/admin/src/app/views/performance_records/performance_records.vue @@ -0,0 +1,284 @@ + + + + + diff --git a/admin/src/app/views/person_course_schedule/components/person-course-schedule-edit.vue b/admin/src/app/views/person_course_schedule/components/person-course-schedule-edit.vue new file mode 100644 index 00000000..d3cd056f --- /dev/null +++ b/admin/src/app/views/person_course_schedule/components/person-course-schedule-edit.vue @@ -0,0 +1,227 @@ + + + + + + diff --git a/admin/src/app/views/person_course_schedule/person_course_schedule.vue b/admin/src/app/views/person_course_schedule/person_course_schedule.vue new file mode 100644 index 00000000..d3608b15 --- /dev/null +++ b/admin/src/app/views/person_course_schedule/person_course_schedule.vue @@ -0,0 +1,256 @@ + + + + + diff --git a/admin/src/app/views/personnel/components/personnel-edit.vue b/admin/src/app/views/personnel/components/personnel-edit.vue new file mode 100644 index 00000000..8af314de --- /dev/null +++ b/admin/src/app/views/personnel/components/personnel-edit.vue @@ -0,0 +1,388 @@ + + + + + + diff --git a/admin/src/app/views/personnel/personnel.vue b/admin/src/app/views/personnel/personnel.vue new file mode 100644 index 00000000..a20dde5e --- /dev/null +++ b/admin/src/app/views/personnel/personnel.vue @@ -0,0 +1,381 @@ + + + + + diff --git a/admin/src/app/views/physical_test/components/physical-test-edit.vue b/admin/src/app/views/physical_test/components/physical-test-edit.vue new file mode 100644 index 00000000..07e37708 --- /dev/null +++ b/admin/src/app/views/physical_test/components/physical-test-edit.vue @@ -0,0 +1,399 @@ + + + + + + diff --git a/admin/src/app/views/physical_test/physical_test.vue b/admin/src/app/views/physical_test/physical_test.vue new file mode 100644 index 00000000..58daec25 --- /dev/null +++ b/admin/src/app/views/physical_test/physical_test.vue @@ -0,0 +1,428 @@ + + + + + diff --git a/admin/src/app/views/reimbursement/components/reimbursement-edit.vue b/admin/src/app/views/reimbursement/components/reimbursement-edit.vue new file mode 100644 index 00000000..f20cdcc4 --- /dev/null +++ b/admin/src/app/views/reimbursement/components/reimbursement-edit.vue @@ -0,0 +1,236 @@ + + + + + + diff --git a/admin/src/app/views/reimbursement/reimbursement.vue b/admin/src/app/views/reimbursement/reimbursement.vue new file mode 100644 index 00000000..1837ae03 --- /dev/null +++ b/admin/src/app/views/reimbursement/reimbursement.vue @@ -0,0 +1,265 @@ + + + + + diff --git a/admin/src/app/views/resource_sharing/components/resource-sharing-edit.vue b/admin/src/app/views/resource_sharing/components/resource-sharing-edit.vue new file mode 100644 index 00000000..73edf4cc --- /dev/null +++ b/admin/src/app/views/resource_sharing/components/resource-sharing-edit.vue @@ -0,0 +1,223 @@ + + + + + + diff --git a/admin/src/app/views/resource_sharing/resource_sharing.vue b/admin/src/app/views/resource_sharing/resource_sharing.vue new file mode 100644 index 00000000..bd322590 --- /dev/null +++ b/admin/src/app/views/resource_sharing/resource_sharing.vue @@ -0,0 +1,256 @@ + + + + + diff --git a/admin/src/app/views/salary/components/salary-edit.vue b/admin/src/app/views/salary/components/salary-edit.vue new file mode 100644 index 00000000..d1c3dccc --- /dev/null +++ b/admin/src/app/views/salary/components/salary-edit.vue @@ -0,0 +1,330 @@ + + + + + + diff --git a/admin/src/app/views/salary/salary.vue b/admin/src/app/views/salary/salary.vue new file mode 100644 index 00000000..947e5823 --- /dev/null +++ b/admin/src/app/views/salary/salary.vue @@ -0,0 +1,346 @@ + + + + + diff --git a/admin/src/app/views/service/components/service-edit.vue b/admin/src/app/views/service/components/service-edit.vue new file mode 100644 index 00000000..b9903723 --- /dev/null +++ b/admin/src/app/views/service/components/service-edit.vue @@ -0,0 +1,311 @@ + + + + + + diff --git a/admin/src/app/views/service/service.vue b/admin/src/app/views/service/service.vue new file mode 100644 index 00000000..a5044402 --- /dev/null +++ b/admin/src/app/views/service/service.vue @@ -0,0 +1,321 @@ + + + + + diff --git a/admin/src/app/views/six_speed/components/six-speed-edit.vue b/admin/src/app/views/six_speed/components/six-speed-edit.vue new file mode 100644 index 00000000..99ec0240 --- /dev/null +++ b/admin/src/app/views/six_speed/components/six-speed-edit.vue @@ -0,0 +1,326 @@ + + + + + + diff --git a/admin/src/app/views/six_speed/six_speed.vue b/admin/src/app/views/six_speed/six_speed.vue new file mode 100644 index 00000000..1ac9bf8c --- /dev/null +++ b/admin/src/app/views/six_speed/six_speed.vue @@ -0,0 +1,214 @@ + + + + + diff --git a/admin/src/app/views/six_speed_modification_log/components/six-speed-modification-log-edit.vue b/admin/src/app/views/six_speed_modification_log/components/six-speed-modification-log-edit.vue new file mode 100644 index 00000000..a9839576 --- /dev/null +++ b/admin/src/app/views/six_speed_modification_log/components/six-speed-modification-log-edit.vue @@ -0,0 +1,261 @@ + + + + + + diff --git a/admin/src/app/views/six_speed_modification_log/six_speed_modification_log.vue b/admin/src/app/views/six_speed_modification_log/six_speed_modification_log.vue new file mode 100644 index 00000000..d2292276 --- /dev/null +++ b/admin/src/app/views/six_speed_modification_log/six_speed_modification_log.vue @@ -0,0 +1,252 @@ + + + + + diff --git a/admin/src/app/views/stat_hour/components/stat-hour-edit.vue b/admin/src/app/views/stat_hour/components/stat-hour-edit.vue new file mode 100644 index 00000000..d028f70e --- /dev/null +++ b/admin/src/app/views/stat_hour/components/stat-hour-edit.vue @@ -0,0 +1,566 @@ + + + + + + diff --git a/admin/src/app/views/stat_hour/stat_hour.vue b/admin/src/app/views/stat_hour/stat_hour.vue new file mode 100644 index 00000000..47f63994 --- /dev/null +++ b/admin/src/app/views/stat_hour/stat_hour.vue @@ -0,0 +1,626 @@ + + + + + diff --git a/admin/src/app/views/student_course_usage/components/student-course-usage-edit.vue b/admin/src/app/views/student_course_usage/components/student-course-usage-edit.vue new file mode 100644 index 00000000..20443edd --- /dev/null +++ b/admin/src/app/views/student_course_usage/components/student-course-usage-edit.vue @@ -0,0 +1,203 @@ + + + + + + diff --git a/admin/src/app/views/student_course_usage/student_course_usage.vue b/admin/src/app/views/student_course_usage/student_course_usage.vue new file mode 100644 index 00000000..98cbf43d --- /dev/null +++ b/admin/src/app/views/student_course_usage/student_course_usage.vue @@ -0,0 +1,228 @@ + + + + + diff --git a/admin/src/app/views/student_courses/components/student-courses-edit.vue b/admin/src/app/views/student_courses/components/student-courses-edit.vue new file mode 100644 index 00000000..4138ba7c --- /dev/null +++ b/admin/src/app/views/student_courses/components/student-courses-edit.vue @@ -0,0 +1,236 @@ + + + + + + diff --git a/admin/src/app/views/student_courses/student_courses.vue b/admin/src/app/views/student_courses/student_courses.vue new file mode 100644 index 00000000..b00d6457 --- /dev/null +++ b/admin/src/app/views/student_courses/student_courses.vue @@ -0,0 +1,267 @@ + + + + + diff --git a/admin/src/app/views/user_feedback/components/user-feedback-edit.vue b/admin/src/app/views/user_feedback/components/user-feedback-edit.vue new file mode 100644 index 00000000..063f268f --- /dev/null +++ b/admin/src/app/views/user_feedback/components/user-feedback-edit.vue @@ -0,0 +1,205 @@ + + + + + + diff --git a/admin/src/app/views/user_feedback/user_feedback.vue b/admin/src/app/views/user_feedback/user_feedback.vue new file mode 100644 index 00000000..33442ab3 --- /dev/null +++ b/admin/src/app/views/user_feedback/user_feedback.vue @@ -0,0 +1,223 @@ + + + + + diff --git a/admin/src/app/views/venue/components/venue-edit.vue b/admin/src/app/views/venue/components/venue-edit.vue new file mode 100644 index 00000000..35c47b61 --- /dev/null +++ b/admin/src/app/views/venue/components/venue-edit.vue @@ -0,0 +1,446 @@ + + + + + + diff --git a/admin/src/app/views/venue/venue.vue b/admin/src/app/views/venue/venue.vue new file mode 100644 index 00000000..9cdc60de --- /dev/null +++ b/admin/src/app/views/venue/venue.vue @@ -0,0 +1,251 @@ + + + + + diff --git a/admin/src/app/views/yjpz_config/yjpz_config.vue b/admin/src/app/views/yjpz_config/yjpz_config.vue new file mode 100644 index 00000000..b722e31e --- /dev/null +++ b/admin/src/app/views/yjpz_config/yjpz_config.vue @@ -0,0 +1,101 @@ + + + + + diff --git a/admin/src/components/TencentMapPicker.vue b/admin/src/components/TencentMapPicker.vue new file mode 100644 index 00000000..3a9654f8 --- /dev/null +++ b/admin/src/components/TencentMapPicker.vue @@ -0,0 +1,530 @@ + + + + + diff --git a/admin/yarn.lock b/admin/yarn.lock new file mode 100644 index 00000000..2edaab95 --- /dev/null +++ b/admin/yarn.lock @@ -0,0 +1,4334 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@antfu/utils@^0.7.2": + version "0.7.10" + resolved "https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.10.tgz#ae829f170158e297a9b6a28f161a8e487d00814d" + integrity sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww== + +"@babel/helper-string-parser@^7.27.1": + version "7.27.1" + resolved "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" + integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== + +"@babel/helper-validator-identifier@^7.27.1": + version "7.27.1" + resolved "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" + integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== + +"@babel/parser@^7.16.4", "@babel/parser@^7.27.2": + version "7.27.2" + resolved "https://registry.npmmirror.com/@babel/parser/-/parser-7.27.2.tgz#577518bedb17a2ce4212afd052e01f7df0941127" + integrity sha512-QYLs8299NA7WM/bZAdp+CviYYkVoYXlDW2rzliy3chxd1PQjej7JORuMJDJXJUb9g0TT+B99EwaVLKmX+sPXWw== + dependencies: + "@babel/types" "^7.27.1" + +"@babel/runtime@7.x": + version "7.27.1" + resolved "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.27.1.tgz#9fce313d12c9a77507f264de74626e87fd0dc541" + integrity sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog== + +"@babel/types@^7.27.1": + version "7.27.1" + resolved "https://registry.npmmirror.com/@babel/types/-/types-7.27.1.tgz#9defc53c16fc899e46941fc6901a9eea1c9d8560" + integrity sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q== + dependencies: + "@babel/helper-string-parser" "^7.27.1" + "@babel/helper-validator-identifier" "^7.27.1" + +"@ctrl/tinycolor@^3.4.1": + version "3.6.1" + resolved "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz#b6c75a56a1947cc916ea058772d666a2c8932f31" + integrity sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA== + +"@element-plus/icons-vue@2.0.10": + version "2.0.10" + resolved "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.0.10.tgz#60808d613c3dbdad025577022be8a972739ade21" + integrity sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ== + +"@element-plus/icons-vue@^2.3.1": + version "2.3.1" + resolved "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz#1f635ad5fdd5c85ed936481525570e82b5a8307a" + integrity sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg== + +"@esbuild/android-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.16.17.tgz#cf91e86df127aa3d141744edafcba0abdc577d23" + integrity sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg== + +"@esbuild/android-arm@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.16.17.tgz#025b6246d3f68b7bbaa97069144fb5fb70f2fff2" + integrity sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw== + +"@esbuild/android-x64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.16.17.tgz#c820e0fef982f99a85c4b8bfdd582835f04cd96e" + integrity sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ== + +"@esbuild/darwin-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.16.17.tgz#edef4487af6b21afabba7be5132c26d22379b220" + integrity sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w== + +"@esbuild/darwin-x64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.16.17.tgz#42829168730071c41ef0d028d8319eea0e2904b4" + integrity sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg== + +"@esbuild/freebsd-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.17.tgz#1f4af488bfc7e9ced04207034d398e793b570a27" + integrity sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw== + +"@esbuild/freebsd-x64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.16.17.tgz#636306f19e9bc981e06aa1d777302dad8fddaf72" + integrity sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug== + +"@esbuild/linux-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.16.17.tgz#a003f7ff237c501e095d4f3a09e58fc7b25a4aca" + integrity sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g== + +"@esbuild/linux-arm@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.16.17.tgz#b591e6a59d9c4fe0eeadd4874b157ab78cf5f196" + integrity sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ== + +"@esbuild/linux-ia32@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.16.17.tgz#24333a11027ef46a18f57019450a5188918e2a54" + integrity sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg== + +"@esbuild/linux-loong64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.16.17.tgz#d5ad459d41ed42bbd4d005256b31882ec52227d8" + integrity sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ== + +"@esbuild/linux-mips64el@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.16.17.tgz#4e5967a665c38360b0a8205594377d4dcf9c3726" + integrity sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw== + +"@esbuild/linux-ppc64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.16.17.tgz#206443a02eb568f9fdf0b438fbd47d26e735afc8" + integrity sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g== + +"@esbuild/linux-riscv64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.16.17.tgz#c351e433d009bf256e798ad048152c8d76da2fc9" + integrity sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw== + +"@esbuild/linux-s390x@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.16.17.tgz#661f271e5d59615b84b6801d1c2123ad13d9bd87" + integrity sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w== + +"@esbuild/linux-x64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.16.17.tgz#e4ba18e8b149a89c982351443a377c723762b85f" + integrity sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw== + +"@esbuild/netbsd-x64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.16.17.tgz#7d4f4041e30c5c07dd24ffa295c73f06038ec775" + integrity sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA== + +"@esbuild/openbsd-x64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.16.17.tgz#970fa7f8470681f3e6b1db0cc421a4af8060ec35" + integrity sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg== + +"@esbuild/sunos-x64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.16.17.tgz#abc60e7c4abf8b89fb7a4fe69a1484132238022c" + integrity sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw== + +"@esbuild/win32-arm64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.16.17.tgz#7b0ff9e8c3265537a7a7b1fd9a24e7bd39fcd87a" + integrity sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw== + +"@esbuild/win32-ia32@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.16.17.tgz#e90fe5267d71a7b7567afdc403dfd198c292eb09" + integrity sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig== + +"@esbuild/win32-x64@0.16.17": + version "0.16.17" + resolved "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.16.17.tgz#c5a1a4bfe1b57f0c3e61b29883525c6da3e5c091" + integrity sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q== + +"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0", "@eslint-community/eslint-utils@^4.7.0": + version "4.7.0" + resolved "https://registry.npmmirror.com/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz#607084630c6c033992a082de6e6fbc1a8b52175a" + integrity sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw== + dependencies: + eslint-visitor-keys "^3.4.3" + +"@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.12.1": + version "4.12.1" + resolved "https://registry.npmmirror.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0" + integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== + +"@eslint/config-array@^0.20.0": + version "0.20.0" + resolved "https://registry.npmmirror.com/@eslint/config-array/-/config-array-0.20.0.tgz#7a1232e82376712d3340012a2f561a2764d1988f" + integrity sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ== + dependencies: + "@eslint/object-schema" "^2.1.6" + debug "^4.3.1" + minimatch "^3.1.2" + +"@eslint/config-helpers@^0.2.1": + version "0.2.2" + resolved "https://registry.npmmirror.com/@eslint/config-helpers/-/config-helpers-0.2.2.tgz#3779f76b894de3a8ec4763b79660e6d54d5b1010" + integrity sha512-+GPzk8PlG0sPpzdU5ZvIRMPidzAnZDl/s9L+y13iodqvb8leL53bTannOrQ/Im7UkpsmFU5Ily5U60LWixnmLg== + +"@eslint/core@^0.13.0": + version "0.13.0" + resolved "https://registry.npmmirror.com/@eslint/core/-/core-0.13.0.tgz#bf02f209846d3bf996f9e8009db62df2739b458c" + integrity sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw== + dependencies: + "@types/json-schema" "^7.0.15" + +"@eslint/eslintrc@^3.3.1": + version "3.3.1" + resolved "https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-3.3.1.tgz#e55f7f1dd400600dd066dbba349c4c0bac916964" + integrity sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ== + dependencies: + ajv "^6.12.4" + debug "^4.3.2" + espree "^10.0.1" + globals "^14.0.0" + ignore "^5.2.0" + import-fresh "^3.2.1" + js-yaml "^4.1.0" + minimatch "^3.1.2" + strip-json-comments "^3.1.1" + +"@eslint/js@9.26.0": + version "9.26.0" + resolved "https://registry.npmmirror.com/@eslint/js/-/js-9.26.0.tgz#1e13126b67a3db15111d2dcc61f69a2acff70bd5" + integrity sha512-I9XlJawFdSMvWjDt6wksMCrgns5ggLNfFwFvnShsleWruvXM514Qxk8V246efTw+eo9JABvVz+u3q2RiAowKxQ== + +"@eslint/object-schema@^2.1.6": + version "2.1.6" + resolved "https://registry.npmmirror.com/@eslint/object-schema/-/object-schema-2.1.6.tgz#58369ab5b5b3ca117880c0f6c0b0f32f6950f24f" + integrity sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA== + +"@eslint/plugin-kit@^0.2.8": + version "0.2.8" + resolved "https://registry.npmmirror.com/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz#47488d8f8171b5d4613e833313f3ce708e3525f8" + integrity sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA== + dependencies: + "@eslint/core" "^0.13.0" + levn "^0.4.1" + +"@floating-ui/core@^1.7.0": + version "1.7.0" + resolved "https://registry.npmmirror.com/@floating-ui/core/-/core-1.7.0.tgz#1aff27a993ea1b254a586318c29c3b16ea0f4d0a" + integrity sha512-FRdBLykrPPA6P76GGGqlex/e7fbe0F1ykgxHYNXQsH/iTEtjMj/f9bpY5oQqbjt5VgZvgz/uKXbGuROijh3VLA== + dependencies: + "@floating-ui/utils" "^0.2.9" + +"@floating-ui/dom@^1.0.1": + version "1.7.0" + resolved "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.7.0.tgz#f9f83ee4fee78ac23ad9e65b128fc11a27857532" + integrity sha512-lGTor4VlXcesUMh1cupTUTDoCxMb0V6bm3CnxHzQcw8Eaf1jQbgQX4i02fYgT0vJ82tb5MZ4CZk1LRGkktJCzg== + dependencies: + "@floating-ui/core" "^1.7.0" + "@floating-ui/utils" "^0.2.9" + +"@floating-ui/utils@^0.2.9": + version "0.2.9" + resolved "https://registry.npmmirror.com/@floating-ui/utils/-/utils-0.2.9.tgz#50dea3616bc8191fb8e112283b49eaff03e78429" + integrity sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg== + +"@highlightjs/vue-plugin@2.1.0": + version "2.1.0" + resolved "https://registry.npmmirror.com/@highlightjs/vue-plugin/-/vue-plugin-2.1.0.tgz#b7c41e3597a46975665b10cad57882cbde1d1594" + integrity sha512-E+bmk4ncca+hBEYRV2a+1aIzIV0VSY/e5ArjpuSN9IO7wBJrzUE2u4ESCwrbQD7sAy+jWQjkV5qCCWgc+pu7CQ== + +"@humanfs/core@^0.19.1": + version "0.19.1" + resolved "https://registry.npmmirror.com/@humanfs/core/-/core-0.19.1.tgz#17c55ca7d426733fe3c561906b8173c336b40a77" + integrity sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA== + +"@humanfs/node@^0.16.6": + version "0.16.6" + resolved "https://registry.npmmirror.com/@humanfs/node/-/node-0.16.6.tgz#ee2a10eaabd1131987bf0488fd9b820174cd765e" + integrity sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw== + dependencies: + "@humanfs/core" "^0.19.1" + "@humanwhocodes/retry" "^0.3.0" + +"@humanwhocodes/module-importer@^1.0.1": + version "1.0.1" + resolved "https://registry.npmmirror.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" + integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== + +"@humanwhocodes/retry@^0.3.0": + version "0.3.1" + resolved "https://registry.npmmirror.com/@humanwhocodes/retry/-/retry-0.3.1.tgz#c72a5c76a9fbaf3488e231b13dc52c0da7bab42a" + integrity sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA== + +"@humanwhocodes/retry@^0.4.2": + version "0.4.3" + resolved "https://registry.npmmirror.com/@humanwhocodes/retry/-/retry-0.4.3.tgz#c2b9d2e374ee62c586d3adbea87199b1d7a7a6ba" + integrity sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ== + +"@intlify/core-base@9.2.2": + version "9.2.2" + resolved "https://registry.npmmirror.com/@intlify/core-base/-/core-base-9.2.2.tgz#5353369b05cc9fe35cab95fe20afeb8a4481f939" + integrity sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA== + dependencies: + "@intlify/devtools-if" "9.2.2" + "@intlify/message-compiler" "9.2.2" + "@intlify/shared" "9.2.2" + "@intlify/vue-devtools" "9.2.2" + +"@intlify/devtools-if@9.2.2": + version "9.2.2" + resolved "https://registry.npmmirror.com/@intlify/devtools-if/-/devtools-if-9.2.2.tgz#b13d9ac4b4e2fe6d2e7daa556517a8061fe8bd39" + integrity sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg== + dependencies: + "@intlify/shared" "9.2.2" + +"@intlify/message-compiler@9.2.2": + version "9.2.2" + resolved "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-9.2.2.tgz#e42ab6939b8ae5b3d21faf6a44045667a18bba1c" + integrity sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA== + dependencies: + "@intlify/shared" "9.2.2" + source-map "0.6.1" + +"@intlify/shared@9.2.2": + version "9.2.2" + resolved "https://registry.npmmirror.com/@intlify/shared/-/shared-9.2.2.tgz#5011be9ca2b4ab86f8660739286e2707f9abb4a5" + integrity sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q== + +"@intlify/vue-devtools@9.2.2": + version "9.2.2" + resolved "https://registry.npmmirror.com/@intlify/vue-devtools/-/vue-devtools-9.2.2.tgz#b95701556daf7ebb3a2d45aa3ae9e6415aed8317" + integrity sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg== + dependencies: + "@intlify/core-base" "9.2.2" + "@intlify/shared" "9.2.2" + +"@jridgewell/sourcemap-codec@^1.4.13", "@jridgewell/sourcemap-codec@^1.5.0": + version "1.5.0" + resolved "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" + integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== + +"@modelcontextprotocol/sdk@^1.8.0": + version "1.11.3" + resolved "https://registry.npmmirror.com/@modelcontextprotocol/sdk/-/sdk-1.11.3.tgz#0bcc7b2d74ac1f749d1a7632ec2d674fd7066543" + integrity sha512-rmOWVRUbUJD7iSvJugjUbFZshTAuJ48MXoZ80Osx1GM0K/H1w7rSEvmw8m6vdWxNASgtaHIhAgre4H/E9GJiYQ== + dependencies: + content-type "^1.0.5" + cors "^2.8.5" + cross-spawn "^7.0.5" + eventsource "^3.0.2" + express "^5.0.1" + express-rate-limit "^7.5.0" + pkce-challenge "^5.0.0" + raw-body "^3.0.0" + zod "^3.23.8" + zod-to-json-schema "^3.24.1" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@nuxt/kit@^3.1.1": + version "3.17.3" + resolved "https://registry.npmmirror.com/@nuxt/kit/-/kit-3.17.3.tgz#58a54b0155b1a3b277f434de024d7d5e738c38e2" + integrity sha512-aw6u6mT3TnM/MmcCRDMv3i9Sbm5/ZMSJgDl+N+WsrWNDIQ2sWmsqdDkjb/HyXF20SNwc2891hRBkaQr3hG2mhA== + dependencies: + c12 "^3.0.3" + consola "^3.4.2" + defu "^6.1.4" + destr "^2.0.5" + errx "^0.1.0" + exsolve "^1.0.5" + ignore "^7.0.4" + jiti "^2.4.2" + klona "^2.0.6" + knitwork "^1.2.0" + mlly "^1.7.4" + ohash "^2.0.11" + pathe "^2.0.3" + pkg-types "^2.1.0" + scule "^1.3.0" + semver "^7.7.1" + std-env "^3.9.0" + tinyglobby "^0.2.13" + ufo "^1.6.1" + unctx "^2.4.1" + unimport "^5.0.1" + untyped "^2.0.0" + +"@popperjs/core@npm:@sxzz/popperjs-es@^2.11.7": + version "2.11.7" + resolved "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz#a7f69e3665d3da9b115f9e71671dae1b97e13671" + integrity sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ== + +"@rollup/pluginutils@^5.0.2": + version "5.1.4" + resolved "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.4.tgz#bb94f1f9eaaac944da237767cdfee6c5b2262d4a" + integrity sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ== + dependencies: + "@types/estree" "^1.0.0" + estree-walker "^2.0.2" + picomatch "^4.0.2" + +"@tailwindcss/line-clamp@0.4.2": + version "0.4.2" + resolved "https://registry.npmmirror.com/@tailwindcss/line-clamp/-/line-clamp-0.4.2.tgz#f353c5a8ab2c939c6267ac5b907f012e5ee130f9" + integrity sha512-HFzAQuqYCjyy/SX9sLGB1lroPzmcnWv1FHkIpmypte10hptf4oPUfucryMKovZh2u0uiS9U5Ty3GghWfEJGwVw== + +"@types/estree@^1.0.0", "@types/estree@^1.0.6": + version "1.0.7" + resolved "https://registry.npmmirror.com/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8" + integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ== + +"@types/json-schema@^7.0.15": + version "7.0.15" + resolved "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== + +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.npmmirror.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== + +"@types/lodash-es@4.17.6": + version "4.17.6" + resolved "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.6.tgz#c2ed4c8320ffa6f11b43eb89e9eaeec65966a0a0" + integrity sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg== + dependencies: + "@types/lodash" "*" + +"@types/lodash-es@^4.17.6": + version "4.17.12" + resolved "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.12.tgz#65f6d1e5f80539aa7cfbfc962de5def0cf4f341b" + integrity sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ== + dependencies: + "@types/lodash" "*" + +"@types/lodash@*", "@types/lodash@^4.14.182": + version "4.17.16" + resolved "https://registry.npmmirror.com/@types/lodash/-/lodash-4.17.16.tgz#94ae78fab4a38d73086e962d0b65c30d816bfb0a" + integrity sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g== + +"@types/node@*": + version "22.15.18" + resolved "https://registry.npmmirror.com/@types/node/-/node-22.15.18.tgz#2f8240f7e932f571c2d45f555ba0b6c3f7a75963" + integrity sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg== + dependencies: + undici-types "~6.21.0" + +"@types/qrcode@1.5.0": + version "1.5.0" + resolved "https://registry.npmmirror.com/@types/qrcode/-/qrcode-1.5.0.tgz#6a98fe9a9a7b2a9a3167b6dde17eff999eabe40b" + integrity sha512-x5ilHXRxUPIMfjtM+1vf/GPTRWZ81nqscursm5gMznJeK9M0YnZ1c3bEvRLQ0zSSgedLx1J6MGL231ObQGGhaA== + dependencies: + "@types/node" "*" + +"@types/sortablejs@1.15.0": + version "1.15.0" + resolved "https://registry.npmmirror.com/@types/sortablejs/-/sortablejs-1.15.0.tgz#695e481752e2a0a311c5e73b51d5f666fc202f93" + integrity sha512-qrhtM7M41EhH4tZQTNw2/RJkxllBx3reiJpTbgWCM2Dx0U1sZ6LwKp9lfNln9uqE26ZMKUaPEYaD4rzvOWYtZw== + +"@types/web-bluetooth@^0.0.16": + version "0.0.16" + resolved "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz#1d12873a8e49567371f2a75fe3e7f7edca6662d8" + integrity sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ== + +"@typescript-eslint/eslint-plugin@^8.32.1": + version "8.32.1" + resolved "https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.32.1.tgz#9185b3eaa3b083d8318910e12d56c68b3c4f45b4" + integrity sha512-6u6Plg9nP/J1GRpe/vcjjabo6Uc5YQPAMxsgQyGC/I0RuukiG1wIe3+Vtg3IrSCVJDmqK3j8adrtzXSENRtFgg== + dependencies: + "@eslint-community/regexpp" "^4.10.0" + "@typescript-eslint/scope-manager" "8.32.1" + "@typescript-eslint/type-utils" "8.32.1" + "@typescript-eslint/utils" "8.32.1" + "@typescript-eslint/visitor-keys" "8.32.1" + graphemer "^1.4.0" + ignore "^7.0.0" + natural-compare "^1.4.0" + ts-api-utils "^2.1.0" + +"@typescript-eslint/parser@^5.0.0": + version "5.62.0" + resolved "https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7" + integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA== + dependencies: + "@typescript-eslint/scope-manager" "5.62.0" + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/typescript-estree" "5.62.0" + debug "^4.3.4" + +"@typescript-eslint/parser@^8.32.1": + version "8.32.1" + resolved "https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-8.32.1.tgz#18b0e53315e0bc22b2619d398ae49a968370935e" + integrity sha512-LKMrmwCPoLhM45Z00O1ulb6jwyVr2kr3XJp+G+tSEZcbauNnScewcQwtJqXDhXeYPDEjZ8C1SjXm015CirEmGg== + dependencies: + "@typescript-eslint/scope-manager" "8.32.1" + "@typescript-eslint/types" "8.32.1" + "@typescript-eslint/typescript-estree" "8.32.1" + "@typescript-eslint/visitor-keys" "8.32.1" + debug "^4.3.4" + +"@typescript-eslint/scope-manager@5.62.0": + version "5.62.0" + resolved "https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c" + integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + +"@typescript-eslint/scope-manager@8.32.1": + version "8.32.1" + resolved "https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-8.32.1.tgz#9a6bf5fb2c5380e14fe9d38ccac6e4bbe17e8afc" + integrity sha512-7IsIaIDeZn7kffk7qXC3o6Z4UblZJKV3UBpkvRNpr5NSyLji7tvTcvmnMNYuYLyh26mN8W723xpo3i4MlD33vA== + dependencies: + "@typescript-eslint/types" "8.32.1" + "@typescript-eslint/visitor-keys" "8.32.1" + +"@typescript-eslint/type-utils@8.32.1": + version "8.32.1" + resolved "https://registry.npmmirror.com/@typescript-eslint/type-utils/-/type-utils-8.32.1.tgz#b9292a45f69ecdb7db74d1696e57d1a89514d21e" + integrity sha512-mv9YpQGA8iIsl5KyUPi+FGLm7+bA4fgXaeRcFKRDRwDMu4iwrSHeDPipwueNXhdIIZltwCJv+NkxftECbIZWfA== + dependencies: + "@typescript-eslint/typescript-estree" "8.32.1" + "@typescript-eslint/utils" "8.32.1" + debug "^4.3.4" + ts-api-utils "^2.1.0" + +"@typescript-eslint/types@5.62.0": + version "5.62.0" + resolved "https://registry.npmmirror.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f" + integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ== + +"@typescript-eslint/types@8.32.1": + version "8.32.1" + resolved "https://registry.npmmirror.com/@typescript-eslint/types/-/types-8.32.1.tgz#b19fe4ac0dc08317bae0ce9ec1168123576c1d4b" + integrity sha512-YmybwXUJcgGqgAp6bEsgpPXEg6dcCyPyCSr0CAAueacR/CCBi25G3V8gGQ2kRzQRBNol7VQknxMs9HvVa9Rvfg== + +"@typescript-eslint/typescript-estree@5.62.0": + version "5.62.0" + resolved "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b" + integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA== + dependencies: + "@typescript-eslint/types" "5.62.0" + "@typescript-eslint/visitor-keys" "5.62.0" + debug "^4.3.4" + globby "^11.1.0" + is-glob "^4.0.3" + semver "^7.3.7" + tsutils "^3.21.0" + +"@typescript-eslint/typescript-estree@8.32.1": + version "8.32.1" + resolved "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.32.1.tgz#9023720ca4ecf4f59c275a05b5fed69b1276face" + integrity sha512-Y3AP9EIfYwBb4kWGb+simvPaqQoT5oJuzzj9m0i6FCY6SPvlomY2Ei4UEMm7+FXtlNJbor80ximyslzaQF6xhg== + dependencies: + "@typescript-eslint/types" "8.32.1" + "@typescript-eslint/visitor-keys" "8.32.1" + debug "^4.3.4" + fast-glob "^3.3.2" + is-glob "^4.0.3" + minimatch "^9.0.4" + semver "^7.6.0" + ts-api-utils "^2.1.0" + +"@typescript-eslint/utils@8.32.1": + version "8.32.1" + resolved "https://registry.npmmirror.com/@typescript-eslint/utils/-/utils-8.32.1.tgz#4d6d5d29b9e519e9a85e9a74e9f7bdb58abe9704" + integrity sha512-DsSFNIgLSrc89gpq1LJB7Hm1YpuhK086DRDJSNrewcGvYloWW1vZLHBTIvarKZDcAORIy/uWNx8Gad+4oMpkSA== + dependencies: + "@eslint-community/eslint-utils" "^4.7.0" + "@typescript-eslint/scope-manager" "8.32.1" + "@typescript-eslint/types" "8.32.1" + "@typescript-eslint/typescript-estree" "8.32.1" + +"@typescript-eslint/visitor-keys@5.62.0": + version "5.62.0" + resolved "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e" + integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw== + dependencies: + "@typescript-eslint/types" "5.62.0" + eslint-visitor-keys "^3.3.0" + +"@typescript-eslint/visitor-keys@8.32.1": + version "8.32.1" + resolved "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.32.1.tgz#4321395cc55c2eb46036cbbb03e101994d11ddca" + integrity sha512-ar0tjQfObzhSaW3C3QNmTc5ofj0hDoNQ5XWrCy6zDyabdr0TWhCkClp+rywGNj/odAFBVzzJrK4tEq5M4Hmu4w== + dependencies: + "@typescript-eslint/types" "8.32.1" + eslint-visitor-keys "^4.2.0" + +"@vitejs/plugin-vue@4.0.0": + version "4.0.0" + resolved "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz#93815beffd23db46288c787352a8ea31a0c03e5e" + integrity sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA== + +"@volar/language-core@1.0.24": + version "1.0.24" + resolved "https://registry.npmmirror.com/@volar/language-core/-/language-core-1.0.24.tgz#5d767571e77728464635e61af1debca944811fe0" + integrity sha512-vTN+alJiWwK0Pax6POqrmevbtFW2dXhjwWiW/MW4f48eDYPLdyURWcr8TixO7EN/nHsUBj2udT7igFKPtjyAKg== + dependencies: + "@volar/source-map" "1.0.24" + muggle-string "^0.1.0" + +"@volar/source-map@1.0.24": + version "1.0.24" + resolved "https://registry.npmmirror.com/@volar/source-map/-/source-map-1.0.24.tgz#ad4c827fea5c26b4bf38a86d983e7deb65b1c61e" + integrity sha512-Qsv/tkplx18pgBr8lKAbM1vcDqgkGKQzbChg6NW+v0CZc3G7FLmK+WrqEPzKlN7Cwdc6XVL559Nod8WKAfKr4A== + dependencies: + muggle-string "^0.1.0" + +"@volar/typescript@1.0.24": + version "1.0.24" + resolved "https://registry.npmmirror.com/@volar/typescript/-/typescript-1.0.24.tgz#f934eda9774b31abdff53efc56782cd2623723d5" + integrity sha512-f8hCSk+PfKR1/RQHxZ79V1NpDImHoivqoizK+mstphm25tn/YJ/JnKNjZHB+o21fuW0yKlI26NV3jkVb2Cc/7A== + dependencies: + "@volar/language-core" "1.0.24" + +"@volar/vue-language-core@1.0.24": + version "1.0.24" + resolved "https://registry.npmmirror.com/@volar/vue-language-core/-/vue-language-core-1.0.24.tgz#81d180a8e09a53cb575e83acb79a31493891a1a4" + integrity sha512-2NTJzSgrwKu6uYwPqLiTMuAzi7fAY3yFy5PJ255bGJc82If0Xr+cW8pC80vpjG0D/aVLmlwAdO4+Ya2BI8GdDg== + dependencies: + "@volar/language-core" "1.0.24" + "@volar/source-map" "1.0.24" + "@vue/compiler-dom" "^3.2.45" + "@vue/compiler-sfc" "^3.2.45" + "@vue/reactivity" "^3.2.45" + "@vue/shared" "^3.2.45" + minimatch "^5.1.1" + vue-template-compiler "^2.7.14" + +"@volar/vue-typescript@1.0.24": + version "1.0.24" + resolved "https://registry.npmmirror.com/@volar/vue-typescript/-/vue-typescript-1.0.24.tgz#bef9b2bfb1b108c0f6cb12ec6fbf449b43fc8257" + integrity sha512-9a25oHDvGaNC0okRS47uqJI6FxY4hUQZUsxeOUFHcqVxZEv8s17LPuP/pMMXyz7jPygrZubB/qXqHY5jEu/akA== + dependencies: + "@volar/typescript" "1.0.24" + "@volar/vue-language-core" "1.0.24" + +"@vue/compiler-core@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz#d9311207d96f6ebd5f4660be129fb99f01ddb41b" + integrity sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A== + dependencies: + "@babel/parser" "^7.16.4" + "@vue/shared" "3.2.45" + estree-walker "^2.0.2" + source-map "^0.6.1" + +"@vue/compiler-core@3.5.14": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.14.tgz#3676685c04c48a5b4a5515b3b2842e98342c555c" + integrity sha512-k7qMHMbKvoCXIxPhquKQVw3Twid3Kg4s7+oYURxLGRd56LiuHJVrvFKI4fm2AM3c8apqODPfVJGoh8nePbXMRA== + dependencies: + "@babel/parser" "^7.27.2" + "@vue/shared" "3.5.14" + entities "^4.5.0" + estree-walker "^2.0.2" + source-map-js "^1.2.1" + +"@vue/compiler-dom@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz#c43cc15e50da62ecc16a42f2622d25dc5fd97dce" + integrity sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw== + dependencies: + "@vue/compiler-core" "3.2.45" + "@vue/shared" "3.2.45" + +"@vue/compiler-dom@3.5.14", "@vue/compiler-dom@^3.2.45": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.5.14.tgz#bbf27421f80f7b8873000edceecd817c4abf438a" + integrity sha512-1aOCSqxGOea5I80U2hQJvXYpPm/aXo95xL/m/mMhgyPUsKe9jhjwWpziNAw7tYRnbz1I61rd9Mld4W9KmmRoug== + dependencies: + "@vue/compiler-core" "3.5.14" + "@vue/shared" "3.5.14" + +"@vue/compiler-sfc@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz#7f7989cc04ec9e7c55acd406827a2c4e96872c70" + integrity sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q== + dependencies: + "@babel/parser" "^7.16.4" + "@vue/compiler-core" "3.2.45" + "@vue/compiler-dom" "3.2.45" + "@vue/compiler-ssr" "3.2.45" + "@vue/reactivity-transform" "3.2.45" + "@vue/shared" "3.2.45" + estree-walker "^2.0.2" + magic-string "^0.25.7" + postcss "^8.1.10" + source-map "^0.6.1" + +"@vue/compiler-sfc@3.5.14", "@vue/compiler-sfc@^3.2.45": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.5.14.tgz#fc3db30a1c744139d41bb57bb451d783415fce4b" + integrity sha512-9T6m/9mMr81Lj58JpzsiSIjBgv2LiVoWjIVa7kuXHICUi8LiDSIotMpPRXYJsXKqyARrzjT24NAwttrMnMaCXA== + dependencies: + "@babel/parser" "^7.27.2" + "@vue/compiler-core" "3.5.14" + "@vue/compiler-dom" "3.5.14" + "@vue/compiler-ssr" "3.5.14" + "@vue/shared" "3.5.14" + estree-walker "^2.0.2" + magic-string "^0.30.17" + postcss "^8.5.3" + source-map-js "^1.2.1" + +"@vue/compiler-ssr@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz#bd20604b6e64ea15344d5b6278c4141191c983b2" + integrity sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ== + dependencies: + "@vue/compiler-dom" "3.2.45" + "@vue/shared" "3.2.45" + +"@vue/compiler-ssr@3.5.14": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.5.14.tgz#013174ee6bbf3ee291a6df247a3feb6eb43d808b" + integrity sha512-Y0G7PcBxr1yllnHuS/NxNCSPWnRGH4Ogrp0tsLA5QemDZuJLs99YjAKQ7KqkHE0vCg4QTKlQzXLKCMF7WPSl7Q== + dependencies: + "@vue/compiler-dom" "3.5.14" + "@vue/shared" "3.5.14" + +"@vue/devtools-api@^6.2.1", "@vue/devtools-api@^6.4.5": + version "6.6.4" + resolved "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz#cbe97fe0162b365edc1dba80e173f90492535343" + integrity sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g== + +"@vue/reactivity-transform@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz#07ac83b8138550c83dfb50db43cde1e0e5e8124d" + integrity sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ== + dependencies: + "@babel/parser" "^7.16.4" + "@vue/compiler-core" "3.2.45" + "@vue/shared" "3.2.45" + estree-walker "^2.0.2" + magic-string "^0.25.7" + +"@vue/reactivity@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.45.tgz#412a45b574de601be5a4a5d9a8cbd4dee4662ff0" + integrity sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A== + dependencies: + "@vue/shared" "3.2.45" + +"@vue/reactivity@3.5.14", "@vue/reactivity@^3.2.45": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.5.14.tgz#814fb4ba84a9560d2752b9982fdd2b76e4a5e5a3" + integrity sha512-7cK1Hp343Fu/SUCCO52vCabjvsYu7ZkOqyYu7bXV9P2yyfjUMUXHZafEbq244sP7gf+EZEz+77QixBTuEqkQQw== + dependencies: + "@vue/shared" "3.5.14" + +"@vue/runtime-core@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz#7ad7ef9b2519d41062a30c6fa001ec43ac549c7f" + integrity sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A== + dependencies: + "@vue/reactivity" "3.2.45" + "@vue/shared" "3.2.45" + +"@vue/runtime-core@3.5.14": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.5.14.tgz#f4084cad032be3452d8f137035fcd93c182f7149" + integrity sha512-w9JWEANwHXNgieAhxPpEpJa+0V5G0hz3NmjAZwlOebtfKyp2hKxKF0+qSh0Xs6/PhfGihuSdqMprMVcQU/E6ag== + dependencies: + "@vue/reactivity" "3.5.14" + "@vue/shared" "3.5.14" + +"@vue/runtime-dom@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz#1a2ef6ee2ad876206fbbe2a884554bba2d0faf59" + integrity sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA== + dependencies: + "@vue/runtime-core" "3.2.45" + "@vue/shared" "3.2.45" + csstype "^2.6.8" + +"@vue/runtime-dom@3.5.14": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.5.14.tgz#59ea4a5fe3ed93fb8f725c1c722a0fe8d8ae16cf" + integrity sha512-lCfR++IakeI35TVR80QgOelsUIdcKjd65rWAMfdSlCYnaEY5t3hYwru7vvcWaqmrK+LpI7ZDDYiGU5V3xjMacw== + dependencies: + "@vue/reactivity" "3.5.14" + "@vue/runtime-core" "3.5.14" + "@vue/shared" "3.5.14" + csstype "^3.1.3" + +"@vue/server-renderer@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz#ca9306a0c12b0530a1a250e44f4a0abac6b81f3f" + integrity sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g== + dependencies: + "@vue/compiler-ssr" "3.2.45" + "@vue/shared" "3.2.45" + +"@vue/server-renderer@3.5.14": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.5.14.tgz#adcaf30ddcf0064a28ce832d29f430bd0db3ef18" + integrity sha512-Rf/ISLqokIvcySIYnv3tNWq40PLpNLDLSJwwVWzG6MNtyIhfbcrAxo5ZL9nARJhqjZyWWa40oRb2IDuejeuv6w== + dependencies: + "@vue/compiler-ssr" "3.5.14" + "@vue/shared" "3.5.14" + +"@vue/shared@3.2.45": + version "3.2.45" + resolved "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.45.tgz#a3fffa7489eafff38d984e23d0236e230c818bc2" + integrity sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg== + +"@vue/shared@3.5.14", "@vue/shared@^3.2.45": + version "3.5.14" + resolved "https://registry.npmmirror.com/@vue/shared/-/shared-3.5.14.tgz#8fcdc6c69661a1163c173cafb6129c3f8ad01122" + integrity sha512-oXTwNxVfc9EtP1zzXAlSlgARLXNC84frFYkS0HHz0h3E4WZSP9sywqjqzGCP9Y34M8ipNmd380pVgmMuwELDyQ== + +"@vueuse/core@9.12.0": + version "9.12.0" + resolved "https://registry.npmmirror.com/@vueuse/core/-/core-9.12.0.tgz#e5b20f901e081c7ae5fe0e5f3af217929034eefe" + integrity sha512-h/Di8Bvf6xRcvS/PvUVheiMYYz3U0tH3X25YxONSaAUBa841ayMwxkuzx/DGUMCW/wHWzD8tRy2zYmOC36r4sg== + dependencies: + "@types/web-bluetooth" "^0.0.16" + "@vueuse/metadata" "9.12.0" + "@vueuse/shared" "9.12.0" + vue-demi "*" + +"@vueuse/core@^9.1.0": + version "9.13.0" + resolved "https://registry.npmmirror.com/@vueuse/core/-/core-9.13.0.tgz#2f69e66d1905c1e4eebc249a01759cf88ea00cf4" + integrity sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw== + dependencies: + "@types/web-bluetooth" "^0.0.16" + "@vueuse/metadata" "9.13.0" + "@vueuse/shared" "9.13.0" + vue-demi "*" + +"@vueuse/metadata@9.12.0": + version "9.12.0" + resolved "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.12.0.tgz#19a0fefcba6a66a2382af10a7a67ebad6eec1f27" + integrity sha512-9oJ9MM9lFLlmvxXUqsR1wLt1uF7EVbP5iYaHJYqk+G2PbMjY6EXvZeTjbdO89HgoF5cI6z49o2zT/jD9SVoNpQ== + +"@vueuse/metadata@9.13.0": + version "9.13.0" + resolved "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.13.0.tgz#bc25a6cdad1b1a93c36ce30191124da6520539ff" + integrity sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ== + +"@vueuse/shared@9.12.0": + version "9.12.0" + resolved "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.12.0.tgz#e6597da80084cba8fc3d6545f4c2fa9817b80428" + integrity sha512-TWuJLACQ0BVithVTRbex4Wf1a1VaRuSpVeyEd4vMUWl54PzlE0ciFUshKCXnlLuD0lxIaLK4Ypj3NXYzZh4+SQ== + dependencies: + vue-demi "*" + +"@vueuse/shared@9.13.0": + version "9.13.0" + resolved "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.13.0.tgz#089ff4cc4e2e7a4015e57a8f32e4b39d096353b9" + integrity sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw== + dependencies: + vue-demi "*" + +accepts@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/accepts/-/accepts-2.0.0.tgz#bbcf4ba5075467f3f2131eab3cffc73c2f5d7895" + integrity sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng== + dependencies: + mime-types "^3.0.0" + negotiator "^1.0.0" + +acorn-jsx@^5.3.2: + version "5.3.2" + resolved "https://registry.npmmirror.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn-node@^1.8.2: + version "1.8.2" + resolved "https://registry.npmmirror.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8" + integrity sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== + dependencies: + acorn "^7.0.0" + acorn-walk "^7.0.0" + xtend "^4.0.2" + +acorn-walk@^7.0.0: + version "7.2.0" + resolved "https://registry.npmmirror.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + +acorn@^7.0.0: + version "7.4.1" + resolved "https://registry.npmmirror.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +acorn@^8.10.0, acorn@^8.14.0, acorn@^8.14.1: + version "8.14.1" + resolved "https://registry.npmmirror.com/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb" + integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg== + +ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +arg@^5.0.2: + version "5.0.2" + resolved "https://registry.npmmirror.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" + integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg== + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" + integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw== + dependencies: + call-bound "^1.0.3" + is-array-buffer "^3.0.5" + +array-includes@^3.1.6: + version "3.1.8" + resolved "https://registry.npmmirror.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d" + integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.4" + is-string "^1.0.7" + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +array.prototype.flat@^1.3.1: + version "1.3.3" + resolved "https://registry.npmmirror.com/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz#534aaf9e6e8dd79fb6b9a9917f839ef1ec63afe5" + integrity sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-shim-unscopables "^1.0.2" + +array.prototype.flatmap@^1.3.1: + version "1.3.3" + resolved "https://registry.npmmirror.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz#712cc792ae70370ae40586264629e33aab5dd38b" + integrity sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-shim-unscopables "^1.0.2" + +arraybuffer.prototype.slice@^1.0.4: + version "1.0.4" + resolved "https://registry.npmmirror.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz#9d760d84dbdd06d0cbf92c8849615a1a7ab3183c" + integrity sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ== + dependencies: + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + is-array-buffer "^3.0.4" + +async-function@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/async-function/-/async-function-1.0.0.tgz#509c9fca60eaf85034c6829838188e4e4c8ffb2b" + integrity sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA== + +async-validator@^4.2.5: + version "4.2.5" + resolved "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz#c96ea3332a521699d0afaaceed510a54656c6339" + integrity sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg== + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== + +autoprefixer@10.4.13: + version "10.4.13" + resolved "https://registry.npmmirror.com/autoprefixer/-/autoprefixer-10.4.13.tgz#b5136b59930209a321e9fa3dca2e7c4d223e83a8" + integrity sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg== + dependencies: + browserslist "^4.21.4" + caniuse-lite "^1.0.30001426" + fraction.js "^4.2.0" + normalize-range "^0.1.2" + picocolors "^1.0.0" + postcss-value-parser "^4.2.0" + +available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.npmmirror.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" + +axios@1.4.0: + version "1.4.0" + resolved "https://registry.npmmirror.com/axios/-/axios-1.4.0.tgz#38a7bf1224cd308de271146038b551d725f0be1f" + integrity sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA== + dependencies: + follow-redirects "^1.15.0" + form-data "^4.0.0" + proxy-from-env "^1.1.0" + +balanced-match@0.1.0: + version "0.1.0" + resolved "https://registry.npmmirror.com/balanced-match/-/balanced-match-0.1.0.tgz#b504bd05869b39259dd0c5efc35d843176dccc4a" + integrity sha512-4xb6XqAEo3Z+5pEDJz33R8BZXI8FRJU+cDNLdKgDpmnz+pKKRVYLpdv+VvUAC7yUhBMj4izmyt19eCGv1QGV7A== + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +binary-extensions@^2.0.0: + version "2.3.0" + resolved "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" + integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== + +body-parser@^2.2.0: + version "2.2.0" + resolved "https://registry.npmmirror.com/body-parser/-/body-parser-2.2.0.tgz#f7a9656de305249a715b549b7b8fd1ab9dfddcfa" + integrity sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg== + dependencies: + bytes "^3.1.2" + content-type "^1.0.5" + debug "^4.4.0" + http-errors "^2.0.0" + iconv-lite "^0.6.3" + on-finished "^2.4.1" + qs "^6.14.0" + raw-body "^3.0.0" + type-is "^2.0.0" + +boolbase@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + +braces@^3.0.3, braces@~3.0.2: + version "3.0.3" + resolved "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== + dependencies: + fill-range "^7.1.1" + +browserslist@^4.21.4: + version "4.24.5" + resolved "https://registry.npmmirror.com/browserslist/-/browserslist-4.24.5.tgz#aa0f5b8560fe81fde84c6dcb38f759bafba0e11b" + integrity sha512-FDToo4Wo82hIdgc1CQ+NQD0hEhmpPjrZ3hiUgwgOG6IuTdlpr8jdjyG24P6cNP1yJpTLzS5OcGgSw0xmDU1/Tw== + dependencies: + caniuse-lite "^1.0.30001716" + electron-to-chromium "^1.5.149" + node-releases "^2.0.19" + update-browserslist-db "^1.1.3" + +builtins@^5.0.1: + version "5.1.0" + resolved "https://registry.npmmirror.com/builtins/-/builtins-5.1.0.tgz#6d85eeb360c4ebc166c3fdef922a15aa7316a5e8" + integrity sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg== + dependencies: + semver "^7.0.0" + +bytes@3.1.2, bytes@^3.1.2: + version "3.1.2" + resolved "https://registry.npmmirror.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + +c12@^3.0.3: + version "3.0.3" + resolved "https://registry.npmmirror.com/c12/-/c12-3.0.3.tgz#4d6d4d35f084606ff616d1bcae60e6676eacd4bd" + integrity sha512-uC3MacKBb0Z15o5QWCHvHWj5Zv34pGQj9P+iXKSpTuSGFS0KKhUWf4t9AJ+gWjYOdmWCPEGpEzm8sS0iqbpo1w== + dependencies: + chokidar "^4.0.3" + confbox "^0.2.2" + defu "^6.1.4" + dotenv "^16.4.7" + exsolve "^1.0.4" + giget "^2.0.0" + jiti "^2.4.2" + ohash "^2.0.11" + pathe "^2.0.3" + perfect-debounce "^1.0.0" + pkg-types "^2.1.0" + rc9 "^2.1.2" + +call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + +call-bind@^1.0.7, call-bind@^1.0.8: + version "1.0.8" + resolved "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" + integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== + dependencies: + call-bind-apply-helpers "^1.0.0" + es-define-property "^1.0.0" + get-intrinsic "^1.2.4" + set-function-length "^1.2.2" + +call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4: + version "1.0.4" + resolved "https://registry.npmmirror.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a" + integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== + dependencies: + call-bind-apply-helpers "^1.0.2" + get-intrinsic "^1.3.0" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase-css@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" + integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== + +camelcase@^5.0.0: + version "5.3.1" + resolved "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +caniuse-lite@^1.0.30001426, caniuse-lite@^1.0.30001716: + version "1.0.30001718" + resolved "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001718.tgz#dae13a9c80d517c30c6197515a96131c194d8f82" + integrity sha512-AflseV1ahcSunK53NfEs9gFWgOEmzr0f+kaMFA4xiLZlr9Hzt7HxcSpIFcnNCUkz6R6dWKa54rUz3HUmI3nVcw== + +chalk@^4.0.0: + version "4.1.2" + resolved "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +"chokidar@>=3.0.0 <4.0.0", chokidar@^3.5.3: + version "3.6.0" + resolved "https://registry.npmmirror.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +chokidar@^4.0.3: + version "4.0.3" + resolved "https://registry.npmmirror.com/chokidar/-/chokidar-4.0.3.tgz#7be37a4c03c9aee1ecfe862a4a23b2c70c205d30" + integrity sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA== + dependencies: + readdirp "^4.0.1" + +citty@^0.1.6: + version "0.1.6" + resolved "https://registry.npmmirror.com/citty/-/citty-0.1.6.tgz#0f7904da1ed4625e1a9ea7e0fa780981aab7c5e4" + integrity sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ== + dependencies: + consola "^3.2.3" + +clipboard@^2.0.4: + version "2.0.11" + resolved "https://registry.npmmirror.com/clipboard/-/clipboard-2.0.11.tgz#62180360b97dd668b6b3a84ec226975762a70be5" + integrity sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw== + dependencies: + good-listener "^1.2.2" + select "^1.1.2" + tiny-emitter "^2.0.0" + +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.npmmirror.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg== + +color-convert@^1.3.0: + version "1.9.3" + resolved "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +color-name@^1.0.0, color-name@^1.1.4, color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +color-string@^0.3.0: + version "0.3.0" + resolved "https://registry.npmmirror.com/color-string/-/color-string-0.3.0.tgz#27d46fb67025c5c2fa25993bfbf579e47841b991" + integrity sha512-sz29j1bmSDfoAxKIEU6zwoIZXN6BrFbAMIhfYCNyiZXBDuU/aiHlN84lp/xDzL2ubyFhLDobHIlU1X70XRrMDA== + dependencies: + color-name "^1.0.0" + +color@^0.11.0: + version "0.11.4" + resolved "https://registry.npmmirror.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764" + integrity sha512-Ajpjd8asqZ6EdxQeqGzU5WBhhTfJ/0cA4Wlbre7e5vXfmDSmda7Ov6jeKoru+b0vHcb1CqvuroTHp5zIWzhVMA== + dependencies: + clone "^1.0.2" + color-convert "^1.3.0" + color-string "^0.3.0" + +combined-stream@^1.0.8: + version "1.0.8" + resolved "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +confbox@^0.1.8: + version "0.1.8" + resolved "https://registry.npmmirror.com/confbox/-/confbox-0.1.8.tgz#820d73d3b3c82d9bd910652c5d4d599ef8ff8b06" + integrity sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w== + +confbox@^0.2.1, confbox@^0.2.2: + version "0.2.2" + resolved "https://registry.npmmirror.com/confbox/-/confbox-0.2.2.tgz#8652f53961c74d9e081784beed78555974a9c110" + integrity sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ== + +consola@^3.2.3, consola@^3.4.0, consola@^3.4.2: + version "3.4.2" + resolved "https://registry.npmmirror.com/consola/-/consola-3.4.2.tgz#5af110145397bb67afdab77013fdc34cae590ea7" + integrity sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA== + +content-disposition@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/content-disposition/-/content-disposition-1.0.0.tgz#844426cb398f934caefcbb172200126bc7ceace2" + integrity sha512-Au9nRL8VNUut/XSzbQA38+M78dzP4D+eqg3gfJHMIHHYa3bg067xj1KxMUWj+VULbiZMowKngFFbKczUrNJ1mg== + dependencies: + safe-buffer "5.2.1" + +content-type@^1.0.5: + version "1.0.5" + resolved "https://registry.npmmirror.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + +cookie-signature@^1.2.1: + version "1.2.2" + resolved "https://registry.npmmirror.com/cookie-signature/-/cookie-signature-1.2.2.tgz#57c7fc3cc293acab9fec54d73e15690ebe4a1793" + integrity sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg== + +cookie@^0.7.1: + version "0.7.2" + resolved "https://registry.npmmirror.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" + integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== + +cors@^2.8.5: + version "2.8.5" + resolved "https://registry.npmmirror.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" + integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== + dependencies: + object-assign "^4" + vary "^1" + +cross-spawn@^7.0.5, cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +crypto-js@4.1.1: + version "4.1.1" + resolved "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.1.1.tgz#9e485bcf03521041bd85844786b83fb7619736cf" + integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw== + +css-color-function@1.3.3: + version "1.3.3" + resolved "https://registry.npmmirror.com/css-color-function/-/css-color-function-1.3.3.tgz#8ed24c2c0205073339fafa004bc8c141fccb282e" + integrity sha512-YD/WhiRZIYgadwFJ48X5QmlOQ/w8Me4yQI6/eSUoiE8spIFp+S/rGpsAH48iyq/0ZWkCDWqVQKUlQmUzn7BQ9w== + dependencies: + balanced-match "0.1.0" + color "^0.11.0" + debug "^3.1.0" + rgb "~0.1.0" + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + +csstype@^2.6.8: + version "2.6.21" + resolved "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz#2efb85b7cc55c80017c66a5ad7cbd931fda3a90e" + integrity sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w== + +csstype@^3.1.3: + version "3.1.3" + resolved "https://registry.npmmirror.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + +data-view-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/data-view-buffer/-/data-view-buffer-1.0.2.tgz#211a03ba95ecaf7798a8c7198d79536211f88570" + integrity sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-length@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz#9e80f7ca52453ce3e93d25a35318767ea7704735" + integrity sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-data-view "^1.0.2" + +data-view-byte-offset@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz#068307f9b71ab76dbbe10291389e020856606191" + integrity sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-data-view "^1.0.1" + +day@^0.0.2: + version "0.0.2" + resolved "https://registry.npmmirror.com/day/-/day-0.0.2.tgz#a133c926ba4125dce2783cd2b99c918b3e52fb03" + integrity sha512-o889G1KUU4sX0+qd5g0JMGJV0MR7Kv89//yDe72ySr8dMdQH+dglY5KqCE3iy8uJs56RRerYv7WqY/AXpoMNzw== + +dayjs@^1.11.13: + version "1.11.13" + resolved "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.13.tgz#92430b0139055c3ebb60150aa13e860a4b5a366c" + integrity sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg== + +de-indent@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" + integrity sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== + +debug@^3.1.0, debug@^3.2.7: + version "3.2.7" + resolved "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.4.0: + version "4.4.1" + resolved "https://registry.npmmirror.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b" + integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== + dependencies: + ms "^2.1.3" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +deep-is@^0.1.3: + version "0.1.4" + resolved "https://registry.npmmirror.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +define-data-property@^1.0.1, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + +define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== + dependencies: + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" + +defined@^1.0.0: + version "1.0.1" + resolved "https://registry.npmmirror.com/defined/-/defined-1.0.1.tgz#c0b9db27bfaffd95d6f61399419b893df0f91ebf" + integrity sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q== + +defu@^6.1.4: + version "6.1.4" + resolved "https://registry.npmmirror.com/defu/-/defu-6.1.4.tgz#4e0c9cf9ff68fe5f3d7f2765cc1a012dfdcb0479" + integrity sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg== + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== + +delegate@^3.1.2: + version "3.2.0" + resolved "https://registry.npmmirror.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" + integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== + +depd@2.0.0, depd@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +destr@^2.0.3, destr@^2.0.5: + version "2.0.5" + resolved "https://registry.npmmirror.com/destr/-/destr-2.0.5.tgz#7d112ff1b925fb8d2079fac5bdb4a90973b51fdb" + integrity sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA== + +detective@^5.2.1: + version "5.2.1" + resolved "https://registry.npmmirror.com/detective/-/detective-5.2.1.tgz#6af01eeda11015acb0e73f933242b70f24f91034" + integrity sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw== + dependencies: + acorn-node "^1.8.2" + defined "^1.0.0" + minimist "^1.2.6" + +didyoumean@^1.2.2: + version "1.2.2" + resolved "https://registry.npmmirror.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" + integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== + +dijkstrajs@^1.0.1: + version "1.0.3" + resolved "https://registry.npmmirror.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz#4c8dbdea1f0f6478bff94d9c49c784d623e4fc23" + integrity sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA== + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +dlv@^1.1.3: + version "1.1.3" + resolved "https://registry.npmmirror.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" + integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +dotenv@^16.4.7: + version "16.5.0" + resolved "https://registry.npmmirror.com/dotenv/-/dotenv-16.5.0.tgz#092b49f25f808f020050051d1ff258e404c78692" + integrity sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg== + +dunder-proto@^1.0.0, dunder-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== + dependencies: + call-bind-apply-helpers "^1.0.1" + es-errors "^1.3.0" + gopd "^1.2.0" + +echarts@5.4.1: + version "5.4.1" + resolved "https://registry.npmmirror.com/echarts/-/echarts-5.4.1.tgz#d7f65a584d78beff62568d878b16151b3381811c" + integrity sha512-9ltS3M2JB0w2EhcYjCdmtrJ+6haZcW6acBolMGIuf01Hql1yrIV01L1aRj7jsaaIULJslEP9Z3vKlEmnJaWJVQ== + dependencies: + tslib "2.3.0" + zrender "5.4.1" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + +electron-to-chromium@^1.5.149: + version "1.5.155" + resolved "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.155.tgz#809dd0ae9ae1db87c358e0c0c17c09a2ffc432d1" + integrity sha512-ps5KcGGmwL8VaeJlvlDlu4fORQpv3+GIcF5I3f9tUKUlJ/wsysh6HU8P5L1XWRYeXfA0oJd4PyM8ds8zTFf6Ng== + +element-plus@^2.7.4: + version "2.9.10" + resolved "https://registry.npmmirror.com/element-plus/-/element-plus-2.9.10.tgz#bde09d18833ffeb68dc5204462c91c640369c988" + integrity sha512-W2v9jWnm1kl/zm4bSvCh8aFCVlxvhG3fmqiDZwyd6WQiWGE595J/mpjcCggEr+49QDgIymhXrpPMOPPSARUbng== + dependencies: + "@ctrl/tinycolor" "^3.4.1" + "@element-plus/icons-vue" "^2.3.1" + "@floating-ui/dom" "^1.0.1" + "@popperjs/core" "npm:@sxzz/popperjs-es@^2.11.7" + "@types/lodash" "^4.14.182" + "@types/lodash-es" "^4.17.6" + "@vueuse/core" "^9.1.0" + async-validator "^4.2.5" + dayjs "^1.11.13" + escape-html "^1.0.3" + lodash "^4.17.21" + lodash-es "^4.17.21" + lodash-unified "^1.0.2" + memoize-one "^6.0.0" + normalize-wheel-es "^1.2.0" + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +encode-utf8@^1.0.3: + version "1.0.3" + resolved "https://registry.npmmirror.com/encode-utf8/-/encode-utf8-1.0.3.tgz#f30fdd31da07fb596f281beb2f6b027851994cda" + integrity sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw== + +encodeurl@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" + integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== + +entities@^4.5.0: + version "4.5.0" + resolved "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== + +errx@^0.1.0: + version "0.1.0" + resolved "https://registry.npmmirror.com/errx/-/errx-0.1.0.tgz#4881e411d90a3b1e1620a07604f50081dd59f3aa" + integrity sha512-fZmsRiDNv07K6s2KkKFTiD2aIvECa7++PKyD5NC32tpRw46qZA3sOz+aM+/V9V0GDHxVTKLziveV4JhzBHDp9Q== + +es-abstract@^1.23.2, es-abstract@^1.23.5, es-abstract@^1.23.9: + version "1.23.9" + resolved "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.23.9.tgz#5b45994b7de78dada5c1bebf1379646b32b9d606" + integrity sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA== + dependencies: + array-buffer-byte-length "^1.0.2" + arraybuffer.prototype.slice "^1.0.4" + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.3" + data-view-buffer "^1.0.2" + data-view-byte-length "^1.0.2" + data-view-byte-offset "^1.0.1" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + es-set-tostringtag "^2.1.0" + es-to-primitive "^1.3.0" + function.prototype.name "^1.1.8" + get-intrinsic "^1.2.7" + get-proto "^1.0.0" + get-symbol-description "^1.1.0" + globalthis "^1.0.4" + gopd "^1.2.0" + has-property-descriptors "^1.0.2" + has-proto "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + internal-slot "^1.1.0" + is-array-buffer "^3.0.5" + is-callable "^1.2.7" + is-data-view "^1.0.2" + is-regex "^1.2.1" + is-shared-array-buffer "^1.0.4" + is-string "^1.1.1" + is-typed-array "^1.1.15" + is-weakref "^1.1.0" + math-intrinsics "^1.1.0" + object-inspect "^1.13.3" + object-keys "^1.1.1" + object.assign "^4.1.7" + own-keys "^1.0.1" + regexp.prototype.flags "^1.5.3" + safe-array-concat "^1.1.3" + safe-push-apply "^1.0.0" + safe-regex-test "^1.1.0" + set-proto "^1.0.0" + string.prototype.trim "^1.2.10" + string.prototype.trimend "^1.0.9" + string.prototype.trimstart "^1.0.8" + typed-array-buffer "^1.0.3" + typed-array-byte-length "^1.0.3" + typed-array-byte-offset "^1.0.4" + typed-array-length "^1.0.7" + unbox-primitive "^1.1.0" + which-typed-array "^1.1.18" + +es-define-property@^1.0.0, es-define-property@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + +es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== + dependencies: + es-errors "^1.3.0" + +es-set-tostringtag@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" + integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== + dependencies: + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +es-shim-unscopables@^1.0.2: + version "1.1.0" + resolved "https://registry.npmmirror.com/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz#438df35520dac5d105f3943d927549ea3b00f4b5" + integrity sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw== + dependencies: + hasown "^2.0.2" + +es-to-primitive@^1.3.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz#96c89c82cc49fd8794a24835ba3e1ff87f214e18" + integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g== + dependencies: + is-callable "^1.2.7" + is-date-object "^1.0.5" + is-symbol "^1.0.4" + +esbuild@^0.16.14: + version "0.16.17" + resolved "https://registry.npmmirror.com/esbuild/-/esbuild-0.16.17.tgz#fc2c3914c57ee750635fee71b89f615f25065259" + integrity sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg== + optionalDependencies: + "@esbuild/android-arm" "0.16.17" + "@esbuild/android-arm64" "0.16.17" + "@esbuild/android-x64" "0.16.17" + "@esbuild/darwin-arm64" "0.16.17" + "@esbuild/darwin-x64" "0.16.17" + "@esbuild/freebsd-arm64" "0.16.17" + "@esbuild/freebsd-x64" "0.16.17" + "@esbuild/linux-arm" "0.16.17" + "@esbuild/linux-arm64" "0.16.17" + "@esbuild/linux-ia32" "0.16.17" + "@esbuild/linux-loong64" "0.16.17" + "@esbuild/linux-mips64el" "0.16.17" + "@esbuild/linux-ppc64" "0.16.17" + "@esbuild/linux-riscv64" "0.16.17" + "@esbuild/linux-s390x" "0.16.17" + "@esbuild/linux-x64" "0.16.17" + "@esbuild/netbsd-x64" "0.16.17" + "@esbuild/openbsd-x64" "0.16.17" + "@esbuild/sunos-x64" "0.16.17" + "@esbuild/win32-arm64" "0.16.17" + "@esbuild/win32-ia32" "0.16.17" + "@esbuild/win32-x64" "0.16.17" + +escalade@^3.2.0: + version "3.2.0" + resolved "https://registry.npmmirror.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + +escape-html@^1.0.3: + version "1.0.3" + resolved "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +escape-string-regexp@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8" + integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw== + +eslint-config-prettier@^10.1.5: + version "10.1.5" + resolved "https://registry.npmmirror.com/eslint-config-prettier/-/eslint-config-prettier-10.1.5.tgz#00c18d7225043b6fbce6a665697377998d453782" + integrity sha512-zc1UmCpNltmVY34vuLRV61r1K27sWuX39E+uyUnY8xS2Bex88VV9cugG+UZbRSRGtGyFboj+D8JODyme1plMpw== + +eslint-config-standard-with-typescript@34.0.0: + version "34.0.0" + resolved "https://registry.npmmirror.com/eslint-config-standard-with-typescript/-/eslint-config-standard-with-typescript-34.0.0.tgz#00378cdfccad580367d9e6f14cf1493fd69bf7b5" + integrity sha512-zhCsI4/A0rJ1ma8sf3RLXYc0gc7yPmdTWRVXMh9dtqeUx3yBQyALH0wosHhk1uQ9QyItynLdNOtcHKNw8G7lQw== + dependencies: + "@typescript-eslint/parser" "^5.0.0" + eslint-config-standard "17.0.0" + +eslint-config-standard@17.0.0: + version "17.0.0" + resolved "https://registry.npmmirror.com/eslint-config-standard/-/eslint-config-standard-17.0.0.tgz#fd5b6cf1dcf6ba8d29f200c461de2e19069888cf" + integrity sha512-/2ks1GKyqSOkH7JFvXJicu0iMpoojkwB+f5Du/1SC0PtBL+s8v30k9njRZ21pm2drKYm2342jFnGWzttxPmZVg== + +eslint-import-resolver-node@^0.3.7: + version "0.3.9" + resolved "https://registry.npmmirror.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac" + integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== + dependencies: + debug "^3.2.7" + is-core-module "^2.13.0" + resolve "^1.22.4" + +eslint-module-utils@^2.7.4: + version "2.12.0" + resolved "https://registry.npmmirror.com/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz#fe4cfb948d61f49203d7b08871982b65b9af0b0b" + integrity sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg== + dependencies: + debug "^3.2.7" + +eslint-plugin-es@^4.1.0: + version "4.1.0" + resolved "https://registry.npmmirror.com/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz#f0822f0c18a535a97c3e714e89f88586a7641ec9" + integrity sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ== + dependencies: + eslint-utils "^2.0.0" + regexpp "^3.0.0" + +eslint-plugin-import@2.27.5: + version "2.27.5" + resolved "https://registry.npmmirror.com/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz#876a6d03f52608a3e5bb439c2550588e51dd6c65" + integrity sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow== + dependencies: + array-includes "^3.1.6" + array.prototype.flat "^1.3.1" + array.prototype.flatmap "^1.3.1" + debug "^3.2.7" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.7" + eslint-module-utils "^2.7.4" + has "^1.0.3" + is-core-module "^2.11.0" + is-glob "^4.0.3" + minimatch "^3.1.2" + object.values "^1.1.6" + resolve "^1.22.1" + semver "^6.3.0" + tsconfig-paths "^3.14.1" + +eslint-plugin-n@15.6.1: + version "15.6.1" + resolved "https://registry.npmmirror.com/eslint-plugin-n/-/eslint-plugin-n-15.6.1.tgz#f7e77f24abb92a550115cf11e29695da122c398c" + integrity sha512-R9xw9OtCRxxaxaszTQmQAlPgM+RdGjaL1akWuY/Fv9fRAi8Wj4CUKc6iYVG8QNRjRuo8/BqVYIpfqberJUEacA== + dependencies: + builtins "^5.0.1" + eslint-plugin-es "^4.1.0" + eslint-utils "^3.0.0" + ignore "^5.1.1" + is-core-module "^2.11.0" + minimatch "^3.1.2" + resolve "^1.22.1" + semver "^7.3.8" + +eslint-plugin-promise@6.1.1: + version "6.1.1" + resolved "https://registry.npmmirror.com/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz#269a3e2772f62875661220631bd4dafcb4083816" + integrity sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig== + +eslint-plugin-vue@^10.1.0: + version "10.1.0" + resolved "https://registry.npmmirror.com/eslint-plugin-vue/-/eslint-plugin-vue-10.1.0.tgz#434cb84eecfa0a69b7cd95bf913f11ded259308e" + integrity sha512-/VTiJ1eSfNLw6lvG9ENySbGmcVvz6wZ9nA7ZqXlLBY2RkaF15iViYKxglWiIch12KiLAj0j1iXPYU6W4wTROFA== + dependencies: + "@eslint-community/eslint-utils" "^4.4.0" + natural-compare "^1.4.0" + nth-check "^2.1.1" + postcss-selector-parser "^6.0.15" + semver "^7.6.3" + xml-name-validator "^4.0.0" + +eslint-scope@^8.2.0, eslint-scope@^8.3.0: + version "8.3.0" + resolved "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-8.3.0.tgz#10cd3a918ffdd722f5f3f7b5b83db9b23c87340d" + integrity sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ== + dependencies: + esrecurse "^4.3.0" + estraverse "^5.2.0" + +eslint-utils@^2.0.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + +eslint-visitor-keys@^1.1.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.3: + version "3.4.3" + resolved "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" + integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== + +eslint-visitor-keys@^4.2.0: + version "4.2.0" + resolved "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz#687bacb2af884fcdda8a6e7d65c606f46a14cd45" + integrity sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw== + +eslint@^9.26.0: + version "9.26.0" + resolved "https://registry.npmmirror.com/eslint/-/eslint-9.26.0.tgz#978fe029adc2aceed28ab437bca876e83461c3b4" + integrity sha512-Hx0MOjPh6uK9oq9nVsATZKE/Wlbai7KFjfCuw9UHaguDW3x+HF0O5nIi3ud39TWgrTjTO5nHxmL3R1eANinWHQ== + dependencies: + "@eslint-community/eslint-utils" "^4.2.0" + "@eslint-community/regexpp" "^4.12.1" + "@eslint/config-array" "^0.20.0" + "@eslint/config-helpers" "^0.2.1" + "@eslint/core" "^0.13.0" + "@eslint/eslintrc" "^3.3.1" + "@eslint/js" "9.26.0" + "@eslint/plugin-kit" "^0.2.8" + "@humanfs/node" "^0.16.6" + "@humanwhocodes/module-importer" "^1.0.1" + "@humanwhocodes/retry" "^0.4.2" + "@modelcontextprotocol/sdk" "^1.8.0" + "@types/estree" "^1.0.6" + "@types/json-schema" "^7.0.15" + ajv "^6.12.4" + chalk "^4.0.0" + cross-spawn "^7.0.6" + debug "^4.3.2" + escape-string-regexp "^4.0.0" + eslint-scope "^8.3.0" + eslint-visitor-keys "^4.2.0" + espree "^10.3.0" + esquery "^1.5.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^8.0.0" + find-up "^5.0.0" + glob-parent "^6.0.2" + ignore "^5.2.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + json-stable-stringify-without-jsonify "^1.0.1" + lodash.merge "^4.6.2" + minimatch "^3.1.2" + natural-compare "^1.4.0" + optionator "^0.9.3" + zod "^3.24.2" + +espree@^10.0.1, espree@^10.3.0: + version "10.3.0" + resolved "https://registry.npmmirror.com/espree/-/espree-10.3.0.tgz#29267cf5b0cb98735b65e64ba07e0ed49d1eed8a" + integrity sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg== + dependencies: + acorn "^8.14.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^4.2.0" + +esquery@^1.5.0, esquery@^1.6.0: + version "1.6.0" + resolved "https://registry.npmmirror.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" + integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.3.0" + resolved "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +estree-walker@^2.0.2: + version "2.0.2" + resolved "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" + integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== + +estree-walker@^3.0.3: + version "3.0.3" + resolved "https://registry.npmmirror.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" + integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== + dependencies: + "@types/estree" "^1.0.0" + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +etag@^1.8.1: + version "1.8.1" + resolved "https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + +eventsource-parser@^3.0.1: + version "3.0.2" + resolved "https://registry.npmmirror.com/eventsource-parser/-/eventsource-parser-3.0.2.tgz#0fea1abd26eca8201099ff5212f6c4e7ca2fd5d3" + integrity sha512-6RxOBZ/cYgd8usLwsEl+EC09Au/9BcmCKYF2/xbml6DNczf7nv0MQb+7BA2F+li6//I+28VNlQR37XfQtcAJuA== + +eventsource@^3.0.2: + version "3.0.7" + resolved "https://registry.npmmirror.com/eventsource/-/eventsource-3.0.7.tgz#1157622e2f5377bb6aef2114372728ba0c156989" + integrity sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA== + dependencies: + eventsource-parser "^3.0.1" + +express-rate-limit@^7.5.0: + version "7.5.0" + resolved "https://registry.npmmirror.com/express-rate-limit/-/express-rate-limit-7.5.0.tgz#6a67990a724b4fbbc69119419feef50c51e8b28f" + integrity sha512-eB5zbQh5h+VenMPM3fh+nw1YExi5nMr6HUCR62ELSP11huvxm/Uir1H1QEyTkk5QX6A58pX6NmaTMceKZ0Eodg== + +express@^5.0.1: + version "5.1.0" + resolved "https://registry.npmmirror.com/express/-/express-5.1.0.tgz#d31beaf715a0016f0d53f47d3b4d7acf28c75cc9" + integrity sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA== + dependencies: + accepts "^2.0.0" + body-parser "^2.2.0" + content-disposition "^1.0.0" + content-type "^1.0.5" + cookie "^0.7.1" + cookie-signature "^1.2.1" + debug "^4.4.0" + encodeurl "^2.0.0" + escape-html "^1.0.3" + etag "^1.8.1" + finalhandler "^2.1.0" + fresh "^2.0.0" + http-errors "^2.0.0" + merge-descriptors "^2.0.0" + mime-types "^3.0.0" + on-finished "^2.4.1" + once "^1.4.0" + parseurl "^1.3.3" + proxy-addr "^2.0.7" + qs "^6.14.0" + range-parser "^1.2.1" + router "^2.2.0" + send "^1.1.0" + serve-static "^2.2.0" + statuses "^2.0.1" + type-is "^2.0.1" + vary "^1.1.2" + +exsolve@^1.0.1, exsolve@^1.0.4, exsolve@^1.0.5: + version "1.0.5" + resolved "https://registry.npmmirror.com/exsolve/-/exsolve-1.0.5.tgz#1f5b6b4fe82ad6b28a173ccb955a635d77859dcf" + integrity sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg== + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-glob@^3.2.12, fast-glob@^3.2.9, fast-glob@^3.3.2: + version "3.3.3" + resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" + integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.8" + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.npmmirror.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== + +fastq@^1.6.0: + version "1.19.1" + resolved "https://registry.npmmirror.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" + integrity sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ== + dependencies: + reusify "^1.0.4" + +fdir@^6.4.4: + version "6.4.4" + resolved "https://registry.npmmirror.com/fdir/-/fdir-6.4.4.tgz#1cfcf86f875a883e19a8fab53622cfe992e8d2f9" + integrity sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg== + +file-entry-cache@^8.0.0: + version "8.0.0" + resolved "https://registry.npmmirror.com/file-entry-cache/-/file-entry-cache-8.0.0.tgz#7787bddcf1131bffb92636c69457bbc0edd6d81f" + integrity sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ== + dependencies: + flat-cache "^4.0.0" + +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== + dependencies: + to-regex-range "^5.0.1" + +finalhandler@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/finalhandler/-/finalhandler-2.1.0.tgz#72306373aa89d05a8242ed569ed86a1bff7c561f" + integrity sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q== + dependencies: + debug "^4.4.0" + encodeurl "^2.0.0" + escape-html "^1.0.3" + on-finished "^2.4.1" + parseurl "^1.3.3" + statuses "^2.0.1" + +find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +flat-cache@^4.0.0: + version "4.0.1" + resolved "https://registry.npmmirror.com/flat-cache/-/flat-cache-4.0.1.tgz#0ece39fcb14ee012f4b0410bd33dd9c1f011127c" + integrity sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw== + dependencies: + flatted "^3.2.9" + keyv "^4.5.4" + +flatted@^3.2.9: + version "3.3.3" + resolved "https://registry.npmmirror.com/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358" + integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg== + +follow-redirects@^1.15.0: + version "1.15.9" + resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1" + integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ== + +for-each@^0.3.3, for-each@^0.3.5: + version "0.3.5" + resolved "https://registry.npmmirror.com/for-each/-/for-each-0.3.5.tgz#d650688027826920feeb0af747ee7b9421a41d47" + integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg== + dependencies: + is-callable "^1.2.7" + +form-data@^4.0.0: + version "4.0.2" + resolved "https://registry.npmmirror.com/form-data/-/form-data-4.0.2.tgz#35cabbdd30c3ce73deb2c42d3c8d3ed9ca51794c" + integrity sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + es-set-tostringtag "^2.1.0" + mime-types "^2.1.12" + +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.npmmirror.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== + +fraction.js@^4.2.0: + version "4.3.7" + resolved "https://registry.npmmirror.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" + integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== + +fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/fresh/-/fresh-2.0.0.tgz#8dd7df6a1b3a1b3a5cf186c05a5dd267622635a4" + integrity sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A== + +fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +function.prototype.name@^1.1.6, function.prototype.name@^1.1.8: + version "1.1.8" + resolved "https://registry.npmmirror.com/function.prototype.name/-/function.prototype.name-1.1.8.tgz#e68e1df7b259a5c949eeef95cdbde53edffabb78" + integrity sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + functions-have-names "^1.2.3" + hasown "^2.0.2" + is-callable "^1.2.7" + +functions-have-names@^1.2.3: + version "1.2.3" + resolved "https://registry.npmmirror.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== + +get-caller-file@^2.0.1: + version "2.0.5" + resolved "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.2.7, get-intrinsic@^1.3.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== + dependencies: + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.1.1" + function-bind "^1.1.2" + get-proto "^1.0.1" + gopd "^1.2.0" + has-symbols "^1.1.0" + hasown "^2.0.2" + math-intrinsics "^1.1.0" + +get-proto@^1.0.0, get-proto@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== + dependencies: + dunder-proto "^1.0.1" + es-object-atoms "^1.0.0" + +get-symbol-description@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/get-symbol-description/-/get-symbol-description-1.1.0.tgz#7bdd54e0befe8ffc9f3b4e203220d9f1e881b6ee" + integrity sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + get-intrinsic "^1.2.6" + +giget@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/giget/-/giget-2.0.0.tgz#395fc934a43f9a7a29a29d55b99f23e30c14f195" + integrity sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA== + dependencies: + citty "^0.1.6" + consola "^3.4.0" + defu "^6.1.4" + node-fetch-native "^1.6.6" + nypm "^0.6.0" + pathe "^2.0.3" + +glob-parent@^5.1.2, glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob-parent@^6.0.2: + version "6.0.2" + resolved "https://registry.npmmirror.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + +globals@^14.0.0: + version "14.0.0" + resolved "https://registry.npmmirror.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e" + integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== + +globalthis@^1.0.4: + version "1.0.4" + resolved "https://registry.npmmirror.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" + integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== + dependencies: + define-properties "^1.2.1" + gopd "^1.0.1" + +globby@^11.1.0: + version "11.1.0" + resolved "https://registry.npmmirror.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.2.9" + ignore "^5.2.0" + merge2 "^1.4.1" + slash "^3.0.0" + +good-listener@^1.2.2: + version "1.2.2" + resolved "https://registry.npmmirror.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" + integrity sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw== + dependencies: + delegate "^3.1.2" + +gopd@^1.0.1, gopd@^1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== + +graphemer@^1.4.0: + version "1.4.0" + resolved "https://registry.npmmirror.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" + integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== + +has-bigints@^1.0.2: + version "1.1.0" + resolved "https://registry.npmmirror.com/has-bigints/-/has-bigints-1.1.0.tgz#28607e965ac967e03cd2a2c70a2636a1edad49fe" + integrity sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-proto@^1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/has-proto/-/has-proto-1.2.0.tgz#5de5a6eabd95fdffd9818b43055e8065e39fe9d5" + integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ== + dependencies: + dunder-proto "^1.0.0" + +has-symbols@^1.0.3, has-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== + +has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" + +has@^1.0.3: + version "1.0.4" + resolved "https://registry.npmmirror.com/has/-/has-1.0.4.tgz#2eb2860e000011dae4f1406a86fe80e530fb2ec6" + integrity sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ== + +hasown@^2.0.2: + version "2.0.2" + resolved "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + +he@^1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +highlight.js@11.0.1: + version "11.0.1" + resolved "https://registry.npmmirror.com/highlight.js/-/highlight.js-11.0.1.tgz#a78bafccd9aa297978799fe5eed9beb7ee1ef887" + integrity sha512-EqYpWyTF2s8nMfttfBA2yLKPNoZCO33pLS4MnbXQ4hECf1TKujCt1Kq7QAdrio7roL4+CqsfjqwYj4tYgq0pJQ== + +hls.js@^1.0.10: + version "1.6.2" + resolved "https://registry.npmmirror.com/hls.js/-/hls.js-1.6.2.tgz#02272bea644b5f61f71741256618d6b629ae7834" + integrity sha512-rx+pETSCJEDThm/JCm8CuadcAC410cVjb1XVXFNDKFuylaayHk1+tFxhkjvnMDAfqsJHxZXDAJ3Uc2d5xQyWlQ== + +http-errors@2.0.0, http-errors@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== + dependencies: + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" + +iconv-lite@0.6.3, iconv-lite@^0.6.3: + version "0.6.3" + resolved "https://registry.npmmirror.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== + dependencies: + safer-buffer ">= 2.1.2 < 3.0.0" + +ignore@^5.1.1, ignore@^5.2.0: + version "5.3.2" + resolved "https://registry.npmmirror.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" + integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== + +ignore@^7.0.0, ignore@^7.0.4: + version "7.0.4" + resolved "https://registry.npmmirror.com/ignore/-/ignore-7.0.4.tgz#a12c70d0f2607c5bf508fb65a40c75f037d7a078" + integrity sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A== + +immutable@^4.0.0: + version "4.3.7" + resolved "https://registry.npmmirror.com/immutable/-/immutable-4.3.7.tgz#c70145fc90d89fb02021e65c84eb0226e4e5a381" + integrity sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw== + +import-fresh@^3.2.1: + version "3.3.1" + resolved "https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf" + integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +inherits@2.0.4: + version "2.0.4" + resolved "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +internal-slot@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/internal-slot/-/internal-slot-1.1.0.tgz#1eac91762947d2f7056bc838d93e13b2e9604961" + integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw== + dependencies: + es-errors "^1.3.0" + hasown "^2.0.2" + side-channel "^1.1.0" + +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.npmmirror.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + +is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: + version "3.0.5" + resolved "https://registry.npmmirror.com/is-array-buffer/-/is-array-buffer-3.0.5.tgz#65742e1e687bd2cc666253068fd8707fe4d44280" + integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + get-intrinsic "^1.2.6" + +is-async-function@^2.0.0: + version "2.1.1" + resolved "https://registry.npmmirror.com/is-async-function/-/is-async-function-2.1.1.tgz#3e69018c8e04e73b738793d020bfe884b9fd3523" + integrity sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ== + dependencies: + async-function "^1.0.0" + call-bound "^1.0.3" + get-proto "^1.0.1" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-bigint@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/is-bigint/-/is-bigint-1.1.0.tgz#dda7a3445df57a42583db4228682eba7c4170672" + integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ== + dependencies: + has-bigints "^1.0.2" + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-boolean-object@^1.2.1: + version "1.2.2" + resolved "https://registry.npmmirror.com/is-boolean-object/-/is-boolean-object-1.2.2.tgz#7067f47709809a393c71ff5bb3e135d8a9215d9e" + integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-callable@^1.2.7: + version "1.2.7" + resolved "https://registry.npmmirror.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== + +is-core-module@^2.11.0, is-core-module@^2.13.0, is-core-module@^2.16.0: + version "2.16.1" + resolved "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" + integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== + dependencies: + hasown "^2.0.2" + +is-data-view@^1.0.1, is-data-view@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/is-data-view/-/is-data-view-1.0.2.tgz#bae0a41b9688986c2188dda6657e56b8f9e63b8e" + integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw== + dependencies: + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + is-typed-array "^1.1.13" + +is-date-object@^1.0.5, is-date-object@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/is-date-object/-/is-date-object-1.1.0.tgz#ad85541996fc7aa8b2729701d27b7319f95d82f7" + integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg== + dependencies: + call-bound "^1.0.2" + has-tostringtag "^1.0.2" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-finalizationregistry@^1.1.0: + version "1.1.1" + resolved "https://registry.npmmirror.com/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz#eefdcdc6c94ddd0674d9c85887bf93f944a97c90" + integrity sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg== + dependencies: + call-bound "^1.0.3" + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-function@^1.0.10: + version "1.1.0" + resolved "https://registry.npmmirror.com/is-generator-function/-/is-generator-function-1.1.0.tgz#bf3eeda931201394f57b5dba2800f91a238309ca" + integrity sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ== + dependencies: + call-bound "^1.0.3" + get-proto "^1.0.0" + has-tostringtag "^1.0.2" + safe-regex-test "^1.1.0" + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-map@^2.0.3: + version "2.0.3" + resolved "https://registry.npmmirror.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" + integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== + +is-number-object@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/is-number-object/-/is-number-object-1.1.1.tgz#144b21e95a1bc148205dcc2814a9134ec41b2541" + integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-promise@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/is-promise/-/is-promise-4.0.0.tgz#42ff9f84206c1991d26debf520dd5c01042dd2f3" + integrity sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ== + +is-regex@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22" + integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g== + dependencies: + call-bound "^1.0.2" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + hasown "^2.0.2" + +is-set@^2.0.3: + version "2.0.3" + resolved "https://registry.npmmirror.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" + integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== + +is-shared-array-buffer@^1.0.4: + version "1.0.4" + resolved "https://registry.npmmirror.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz#9b67844bd9b7f246ba0708c3a93e34269c774f6f" + integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A== + dependencies: + call-bound "^1.0.3" + +is-string@^1.0.7, is-string@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/is-string/-/is-string-1.1.1.tgz#92ea3f3d5c5b6e039ca8677e5ac8d07ea773cbb9" + integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== + dependencies: + call-bound "^1.0.3" + has-tostringtag "^1.0.2" + +is-symbol@^1.0.4, is-symbol@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/is-symbol/-/is-symbol-1.1.1.tgz#f47761279f532e2b05a7024a7506dbbedacd0634" + integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w== + dependencies: + call-bound "^1.0.2" + has-symbols "^1.1.0" + safe-regex-test "^1.1.0" + +is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15: + version "1.1.15" + resolved "https://registry.npmmirror.com/is-typed-array/-/is-typed-array-1.1.15.tgz#4bfb4a45b61cee83a5a46fba778e4e8d59c0ce0b" + integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== + dependencies: + which-typed-array "^1.1.16" + +is-weakmap@^2.0.2: + version "2.0.2" + resolved "https://registry.npmmirror.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" + integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== + +is-weakref@^1.0.2, is-weakref@^1.1.0: + version "1.1.1" + resolved "https://registry.npmmirror.com/is-weakref/-/is-weakref-1.1.1.tgz#eea430182be8d64174bd96bffbc46f21bf3f9293" + integrity sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew== + dependencies: + call-bound "^1.0.3" + +is-weakset@^2.0.3: + version "2.0.4" + resolved "https://registry.npmmirror.com/is-weakset/-/is-weakset-2.0.4.tgz#c9f5deb0bc1906c6d6f1027f284ddf459249daca" + integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ== + dependencies: + call-bound "^1.0.3" + get-intrinsic "^1.2.6" + +isarray@^2.0.5: + version "2.0.5" + resolved "https://registry.npmmirror.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +jiti@^2.4.2: + version "2.4.2" + resolved "https://registry.npmmirror.com/jiti/-/jiti-2.4.2.tgz#d19b7732ebb6116b06e2038da74a55366faef560" + integrity sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A== + +js-tokens@^9.0.1: + version "9.0.1" + resolved "https://registry.npmmirror.com/js-tokens/-/js-tokens-9.0.1.tgz#2ec43964658435296f6761b34e10671c2d9527f4" + integrity sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ== + +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + +json-buffer@3.0.1: + version "3.0.1" + resolved "https://registry.npmmirror.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" + integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== + +json5@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== + dependencies: + minimist "^1.2.0" + +keyv@^4.5.4: + version "4.5.4" + resolved "https://registry.npmmirror.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" + integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== + dependencies: + json-buffer "3.0.1" + +klona@^2.0.6: + version "2.0.6" + resolved "https://registry.npmmirror.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" + integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== + +knitwork@^1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/knitwork/-/knitwork-1.2.0.tgz#3cc92e76249aeb35449cfbed3f31c6df8444db3f" + integrity sha512-xYSH7AvuQ6nXkq42x0v5S8/Iry+cfulBz/DJQzhIyESdLD7425jXsPy4vn5cCXU+HhRN2kVw51Vd1K6/By4BQg== + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +lilconfig@^2.0.5, lilconfig@^2.0.6: + version "2.1.0" + resolved "https://registry.npmmirror.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" + integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== + +local-pkg@^0.4.3: + version "0.4.3" + resolved "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.3.tgz#0ff361ab3ae7f1c19113d9bb97b98b905dbc4963" + integrity sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g== + +local-pkg@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/local-pkg/-/local-pkg-1.1.1.tgz#f5fe74a97a3bd3c165788ee08ca9fbe998dc58dd" + integrity sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg== + dependencies: + mlly "^1.7.4" + pkg-types "^2.0.1" + quansync "^0.2.8" + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.npmmirror.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + +lodash-es@4.17.21, lodash-es@^4.17.21: + version "4.17.21" + resolved "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" + integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== + +lodash-unified@^1.0.2: + version "1.0.3" + resolved "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz#80b1eac10ed2eb02ed189f08614a29c27d07c894" + integrity sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ== + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash@^4.17.21: + version "4.17.21" + resolved "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +magic-string@^0.25.7: + version "0.25.9" + resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" + integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== + dependencies: + sourcemap-codec "^1.4.8" + +magic-string@^0.27.0: + version "0.27.0" + resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz#e4a3413b4bab6d98d2becffd48b4a257effdbbf3" + integrity sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA== + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.13" + +magic-string@^0.30.17: + version "0.30.17" + resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.17.tgz#450a449673d2460e5bbcfba9a61916a1714c7453" + integrity sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA== + dependencies: + "@jridgewell/sourcemap-codec" "^1.5.0" + +math-intrinsics@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== + +media-typer@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/media-typer/-/media-typer-1.1.0.tgz#6ab74b8f2d3320f2064b2a87a38e7931ff3a5561" + integrity sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw== + +memoize-one@^6.0.0: + version "6.0.0" + resolved "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz#b2591b871ed82948aee4727dc6abceeeac8c1045" + integrity sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw== + +merge-descriptors@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/merge-descriptors/-/merge-descriptors-2.0.0.tgz#ea922f660635a2249ee565e0449f951e6b603808" + integrity sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g== + +merge2@^1.3.0, merge2@^1.4.1: + version "1.4.1" + resolved "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +micromatch@^4.0.5, micromatch@^4.0.8: + version "4.0.8" + resolved "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== + dependencies: + braces "^3.0.3" + picomatch "^2.3.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-db@^1.54.0: + version "1.54.0" + resolved "https://registry.npmmirror.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5" + integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ== + +mime-types@^2.1.12: + version "2.1.35" + resolved "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mime-types@^3.0.0, mime-types@^3.0.1: + version "3.0.1" + resolved "https://registry.npmmirror.com/mime-types/-/mime-types-3.0.1.tgz#b1d94d6997a9b32fd69ebaed0db73de8acb519ce" + integrity sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA== + dependencies: + mime-db "^1.54.0" + +minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^5.1.1: + version "5.1.6" + resolved "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^6.1.6: + version "6.2.0" + resolved "https://registry.npmmirror.com/minimatch/-/minimatch-6.2.0.tgz#2b70fd13294178c69c04dfc05aebdb97a4e79e42" + integrity sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^9.0.4: + version "9.0.5" + resolved "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.2.0, minimist@^1.2.6: + version "1.2.8" + resolved "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +mlly@^1.1.0, mlly@^1.7.4: + version "1.7.4" + resolved "https://registry.npmmirror.com/mlly/-/mlly-1.7.4.tgz#3d7295ea2358ec7a271eaa5d000a0f84febe100f" + integrity sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw== + dependencies: + acorn "^8.14.0" + pathe "^2.0.1" + pkg-types "^1.3.0" + ufo "^1.5.4" + +ms@^2.1.1, ms@^2.1.3: + version "2.1.3" + resolved "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +muggle-string@^0.1.0: + version "0.1.0" + resolved "https://registry.npmmirror.com/muggle-string/-/muggle-string-0.1.0.tgz#1fda8a281c8b27bb8b70466dbc9f27586a8baa6c" + integrity sha512-Tr1knR3d2mKvvWthlk7202rywKbiOm4rVFLsfAaSIhJ6dt9o47W4S+JMtWhd/PW9Wrdew2/S2fSvhz3E2gkfEg== + +nanoid@^3.3.4, nanoid@^3.3.8: + version "3.3.11" + resolved "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" + integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +negotiator@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/negotiator/-/negotiator-1.0.0.tgz#b6c91bb47172d69f93cfd7c357bbb529019b5f6a" + integrity sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg== + +node-fetch-native@^1.6.6: + version "1.6.6" + resolved "https://registry.npmmirror.com/node-fetch-native/-/node-fetch-native-1.6.6.tgz#ae1d0e537af35c2c0b0de81cbff37eedd410aa37" + integrity sha512-8Mc2HhqPdlIfedsuZoc3yioPuzp6b+L5jRCRY1QzuWZh2EGJVQrGppC6V6cF0bLdbW0+O2YpqCA25aF/1lvipQ== + +node-releases@^2.0.19: + version "2.0.19" + resolved "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" + integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.npmmirror.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== + +normalize-wheel-es@^1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz#0fa2593d619f7245a541652619105ab076acf09e" + integrity sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw== + +nprogress@0.2.0: + version "0.2.0" + resolved "https://registry.npmmirror.com/nprogress/-/nprogress-0.2.0.tgz#cb8f34c53213d895723fcbab907e9422adbcafb1" + integrity sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA== + +nth-check@^2.1.1: + version "2.1.1" + resolved "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== + dependencies: + boolbase "^1.0.0" + +nypm@^0.6.0: + version "0.6.0" + resolved "https://registry.npmmirror.com/nypm/-/nypm-0.6.0.tgz#3a04623d1c358a93fc4b3cb9cfb6a11af080feca" + integrity sha512-mn8wBFV9G9+UFHIrq+pZ2r2zL4aPau/by3kJb3cM7+5tQHMt6HGQB8FDIeKFYp8o0D2pnH6nVsO88N4AmUxIWg== + dependencies: + citty "^0.1.6" + consola "^3.4.0" + pathe "^2.0.3" + pkg-types "^2.0.0" + tinyexec "^0.3.2" + +object-assign@^4: + version "4.1.1" + resolved "https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +object-hash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9" + integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw== + +object-inspect@^1.13.3: + version "1.13.4" + resolved "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" + integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== + +object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@^4.1.7: + version "4.1.7" + resolved "https://registry.npmmirror.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" + integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + has-symbols "^1.1.0" + object-keys "^1.1.1" + +object.values@^1.1.6: + version "1.2.1" + resolved "https://registry.npmmirror.com/object.values/-/object.values-1.2.1.tgz#deed520a50809ff7f75a7cfd4bc64c7a038c6216" + integrity sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.3" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +ohash@^2.0.11: + version "2.0.11" + resolved "https://registry.npmmirror.com/ohash/-/ohash-2.0.11.tgz#60b11e8cff62ca9dee88d13747a5baa145f5900b" + integrity sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ== + +on-finished@^2.4.1: + version "2.4.1" + resolved "https://registry.npmmirror.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + +once@^1.4.0: + version "1.4.0" + resolved "https://registry.npmmirror.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +optionator@^0.9.3: + version "0.9.4" + resolved "https://registry.npmmirror.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" + integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.5" + +own-keys@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/own-keys/-/own-keys-1.0.1.tgz#e4006910a2bf913585289676eebd6f390cf51358" + integrity sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg== + dependencies: + get-intrinsic "^1.2.6" + object-keys "^1.1.1" + safe-push-apply "^1.0.0" + +p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parseurl@^1.3.3: + version "1.3.3" + resolved "https://registry.npmmirror.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-to-regexp@^8.0.0: + version "8.2.0" + resolved "https://registry.npmmirror.com/path-to-regexp/-/path-to-regexp-8.2.0.tgz#73990cc29e57a3ff2a0d914095156df5db79e8b4" + integrity sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ== + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +pathe@^1.1.0: + version "1.1.2" + resolved "https://registry.npmmirror.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" + integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== + +pathe@^2.0.1, pathe@^2.0.2, pathe@^2.0.3: + version "2.0.3" + resolved "https://registry.npmmirror.com/pathe/-/pathe-2.0.3.tgz#3ecbec55421685b70a9da872b2cff3e1cbed1716" + integrity sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w== + +perfect-debounce@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/perfect-debounce/-/perfect-debounce-1.0.0.tgz#9c2e8bc30b169cc984a58b7d5b28049839591d2a" + integrity sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA== + +picocolors@^1.0.0, picocolors@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +picomatch@^4.0.2: + version "4.0.2" + resolved "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" + integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== + +pify@^2.3.0: + version "2.3.0" + resolved "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== + +pinia@2.0.30: + version "2.0.30" + resolved "https://registry.npmmirror.com/pinia/-/pinia-2.0.30.tgz#b18a581dad6821ed5fbebfaf631229480ea9d2d9" + integrity sha512-q6DUmxWwe/mQgg+55QQjykpKC+aGeGdaJV3niminl19V08dE+LRTvSEuqi6/NLSGCKHI49KGL6tMNEOssFiMyA== + dependencies: + "@vue/devtools-api" "^6.4.5" + vue-demi "*" + +pkce-challenge@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/pkce-challenge/-/pkce-challenge-5.0.0.tgz#c3a405cb49e272094a38e890a2b51da0228c4d97" + integrity sha512-ueGLflrrnvwB3xuo/uGob5pd5FN7l0MsLf0Z87o/UQmRtwjvfylfc9MurIxRAWywCYTgrvpXBcqjV4OfCYGCIQ== + +pkg-types@^1.0.1, pkg-types@^1.3.0: + version "1.3.1" + resolved "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz#bd7cc70881192777eef5326c19deb46e890917df" + integrity sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ== + dependencies: + confbox "^0.1.8" + mlly "^1.7.4" + pathe "^2.0.1" + +pkg-types@^2.0.0, pkg-types@^2.0.1, pkg-types@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/pkg-types/-/pkg-types-2.1.0.tgz#70c9e1b9c74b63fdde749876ee0aa007ea9edead" + integrity sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A== + dependencies: + confbox "^0.2.1" + exsolve "^1.0.1" + pathe "^2.0.3" + +pngjs@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/pngjs/-/pngjs-5.0.0.tgz#e79dd2b215767fd9c04561c01236df960bce7fbb" + integrity sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw== + +possible-typed-array-names@^1.0.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" + integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== + +postcss-import@^14.1.0: + version "14.1.0" + resolved "https://registry.npmmirror.com/postcss-import/-/postcss-import-14.1.0.tgz#a7333ffe32f0b8795303ee9e40215dac922781f0" + integrity sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw== + dependencies: + postcss-value-parser "^4.0.0" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-js@^4.0.0: + version "4.0.1" + resolved "https://registry.npmmirror.com/postcss-js/-/postcss-js-4.0.1.tgz#61598186f3703bab052f1c4f7d805f3991bee9d2" + integrity sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw== + dependencies: + camelcase-css "^2.0.1" + +postcss-load-config@^3.1.4: + version "3.1.4" + resolved "https://registry.npmmirror.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz#1ab2571faf84bb078877e1d07905eabe9ebda855" + integrity sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg== + dependencies: + lilconfig "^2.0.5" + yaml "^1.10.2" + +postcss-nested@6.0.0: + version "6.0.0" + resolved "https://registry.npmmirror.com/postcss-nested/-/postcss-nested-6.0.0.tgz#1572f1984736578f360cffc7eb7dca69e30d1735" + integrity sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w== + dependencies: + postcss-selector-parser "^6.0.10" + +postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.15: + version "6.1.2" + resolved "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz#27ecb41fb0e3b6ba7a1ec84fff347f734c7929de" + integrity sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0: + version "4.2.0" + resolved "https://registry.npmmirror.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== + +postcss@8.4.21: + version "8.4.21" + resolved "https://registry.npmmirror.com/postcss/-/postcss-8.4.21.tgz#c639b719a57efc3187b13a1d765675485f4134f4" + integrity sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg== + dependencies: + nanoid "^3.3.4" + picocolors "^1.0.0" + source-map-js "^1.0.2" + +postcss@^8.1.10, postcss@^8.4.18, postcss@^8.4.21, postcss@^8.5.3: + version "8.5.3" + resolved "https://registry.npmmirror.com/postcss/-/postcss-8.5.3.tgz#1463b6f1c7fb16fe258736cba29a2de35237eafb" + integrity sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A== + dependencies: + nanoid "^3.3.8" + picocolors "^1.1.1" + source-map-js "^1.2.1" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prettier@^3.5.3: + version "3.5.3" + resolved "https://registry.npmmirror.com/prettier/-/prettier-3.5.3.tgz#4fc2ce0d657e7a02e602549f053b239cb7dfe1b5" + integrity sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw== + +proxy-addr@^2.0.7: + version "2.0.7" + resolved "https://registry.npmmirror.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.1" + +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + +punycode@^2.1.0: + version "2.3.1" + resolved "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== + +qrcode@1.5.1: + version "1.5.1" + resolved "https://registry.npmmirror.com/qrcode/-/qrcode-1.5.1.tgz#0103f97317409f7bc91772ef30793a54cd59f0cb" + integrity sha512-nS8NJ1Z3md8uTjKtP+SGGhfqmTCs5flU/xR623oI0JX+Wepz9R8UrRVCTBTJm3qGw3rH6jJ6MUHjkDx15cxSSg== + dependencies: + dijkstrajs "^1.0.1" + encode-utf8 "^1.0.3" + pngjs "^5.0.0" + yargs "^15.3.1" + +qs@^6.14.0: + version "6.14.0" + resolved "https://registry.npmmirror.com/qs/-/qs-6.14.0.tgz#c63fa40680d2c5c941412a0e899c89af60c0a930" + integrity sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w== + dependencies: + side-channel "^1.1.0" + +quansync@^0.2.8: + version "0.2.10" + resolved "https://registry.npmmirror.com/quansync/-/quansync-0.2.10.tgz#32053cf166fa36511aae95fc49796116f2dc20e1" + integrity sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A== + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +quick-lru@^5.1.1: + version "5.1.1" + resolved "https://registry.npmmirror.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" + integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== + +range-parser@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/raw-body/-/raw-body-3.0.0.tgz#25b3476f07a51600619dae3fe82ddc28a36e5e0f" + integrity sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g== + dependencies: + bytes "3.1.2" + http-errors "2.0.0" + iconv-lite "0.6.3" + unpipe "1.0.0" + +rc9@^2.1.2: + version "2.1.2" + resolved "https://registry.npmmirror.com/rc9/-/rc9-2.1.2.tgz#6282ff638a50caa0a91a31d76af4a0b9cbd1080d" + integrity sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg== + dependencies: + defu "^6.1.4" + destr "^2.0.3" + +read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA== + dependencies: + pify "^2.3.0" + +readdirp@^4.0.1: + version "4.1.2" + resolved "https://registry.npmmirror.com/readdirp/-/readdirp-4.1.2.tgz#eb85801435fbf2a7ee58f19e0921b068fc69948d" + integrity sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg== + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9: + version "1.0.10" + resolved "https://registry.npmmirror.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz#c629219e78a3316d8b604c765ef68996964e7bf9" + integrity sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-abstract "^1.23.9" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.7" + get-proto "^1.0.1" + which-builtin-type "^1.2.1" + +regexp.prototype.flags@^1.5.3: + version "1.5.4" + resolved "https://registry.npmmirror.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" + integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA== + dependencies: + call-bind "^1.0.8" + define-properties "^1.2.1" + es-errors "^1.3.0" + get-proto "^1.0.1" + gopd "^1.2.0" + set-function-name "^2.0.2" + +regexpp@^3.0.0: + version "3.2.0" + resolved "https://registry.npmmirror.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve@^1.1.7, resolve@^1.22.1, resolve@^1.22.4: + version "1.22.10" + resolved "https://registry.npmmirror.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" + integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== + dependencies: + is-core-module "^2.16.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +reusify@^1.0.4: + version "1.1.0" + resolved "https://registry.npmmirror.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" + integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== + +rgb@~0.1.0: + version "0.1.0" + resolved "https://registry.npmmirror.com/rgb/-/rgb-0.1.0.tgz#be27b291e8feffeac1bd99729721bfa40fc037b5" + integrity sha512-F49dXX73a92N09uQkfCp2QjwXpmJcn9/i9PvjmwsSIXUGqRLCf/yx5Q9gRxuLQTq248kakqQuc8GX/U/CxSqlA== + +rollup@^3.10.0: + version "3.29.5" + resolved "https://registry.npmmirror.com/rollup/-/rollup-3.29.5.tgz#8a2e477a758b520fb78daf04bca4c522c1da8a54" + integrity sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w== + optionalDependencies: + fsevents "~2.3.2" + +router@^2.2.0: + version "2.2.0" + resolved "https://registry.npmmirror.com/router/-/router-2.2.0.tgz#019be620b711c87641167cc79b99090f00b146ef" + integrity sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ== + dependencies: + debug "^4.4.0" + depd "^2.0.0" + is-promise "^4.0.0" + parseurl "^1.3.3" + path-to-regexp "^8.0.0" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +safe-array-concat@^1.1.3: + version "1.1.3" + resolved "https://registry.npmmirror.com/safe-array-concat/-/safe-array-concat-1.1.3.tgz#c9e54ec4f603b0bbb8e7e5007a5ee7aecd1538c3" + integrity sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + get-intrinsic "^1.2.6" + has-symbols "^1.1.0" + isarray "^2.0.5" + +safe-buffer@5.2.1: + version "5.2.1" + resolved "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-push-apply@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/safe-push-apply/-/safe-push-apply-1.0.0.tgz#01850e981c1602d398c85081f360e4e6d03d27f5" + integrity sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA== + dependencies: + es-errors "^1.3.0" + isarray "^2.0.5" + +safe-regex-test@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/safe-regex-test/-/safe-regex-test-1.1.0.tgz#7f87dfb67a3150782eaaf18583ff5d1711ac10c1" + integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + is-regex "^1.2.1" + +"safer-buffer@>= 2.1.2 < 3.0.0": + version "2.1.2" + resolved "https://registry.npmmirror.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sass@1.58.0: + version "1.58.0" + resolved "https://registry.npmmirror.com/sass/-/sass-1.58.0.tgz#ee8aea3ad5ea5c485c26b3096e2df6087d0bb1cc" + integrity sha512-PiMJcP33DdKtZ/1jSjjqVIKihoDc6yWmYr9K/4r3fVVIEDAluD0q7XZiRKrNJcPK3qkLRF/79DND1H5q1LBjgg== + dependencies: + chokidar ">=3.0.0 <4.0.0" + immutable "^4.0.0" + source-map-js ">=0.6.2 <2.0.0" + +scule@^1.0.0, scule@^1.3.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/scule/-/scule-1.3.0.tgz#6efbd22fd0bb801bdcc585c89266a7d2daa8fbd3" + integrity sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g== + +select@^1.1.2: + version "1.1.2" + resolved "https://registry.npmmirror.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" + integrity sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA== + +semver@^6.3.0: + version "6.3.1" + resolved "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^7.0.0, semver@^7.3.7, semver@^7.3.8, semver@^7.6.0, semver@^7.6.3, semver@^7.7.1: + version "7.7.2" + resolved "https://registry.npmmirror.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" + integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== + +send@^1.1.0, send@^1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/send/-/send-1.2.0.tgz#32a7554fb777b831dfa828370f773a3808d37212" + integrity sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw== + dependencies: + debug "^4.3.5" + encodeurl "^2.0.0" + escape-html "^1.0.3" + etag "^1.8.1" + fresh "^2.0.0" + http-errors "^2.0.0" + mime-types "^3.0.1" + ms "^2.1.3" + on-finished "^2.4.1" + range-parser "^1.2.1" + statuses "^2.0.1" + +serve-static@^2.2.0: + version "2.2.0" + resolved "https://registry.npmmirror.com/serve-static/-/serve-static-2.2.0.tgz#9c02564ee259bdd2251b82d659a2e7e1938d66f9" + integrity sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ== + dependencies: + encodeurl "^2.0.0" + escape-html "^1.0.3" + parseurl "^1.3.3" + send "^1.2.0" + +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== + +set-function-length@^1.2.2: + version "1.2.2" + resolved "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + +set-function-name@^2.0.2: + version "2.0.2" + resolved "https://registry.npmmirror.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + functions-have-names "^1.2.3" + has-property-descriptors "^1.0.2" + +set-proto@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/set-proto/-/set-proto-1.0.0.tgz#0760dbcff30b2d7e801fd6e19983e56da337565e" + integrity sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw== + dependencies: + dunder-proto "^1.0.1" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +side-channel-list@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" + integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + +side-channel-map@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42" + integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + +side-channel-weakmap@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea" + integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== + dependencies: + call-bound "^1.0.2" + es-errors "^1.3.0" + get-intrinsic "^1.2.5" + object-inspect "^1.13.3" + side-channel-map "^1.0.1" + +side-channel@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" + integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== + dependencies: + es-errors "^1.3.0" + object-inspect "^1.13.3" + side-channel-list "^1.0.0" + side-channel-map "^1.0.1" + side-channel-weakmap "^1.0.2" + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +sortablejs@1.15.0: + version "1.15.0" + resolved "https://registry.npmmirror.com/sortablejs/-/sortablejs-1.15.0.tgz#53230b8aa3502bb77a29e2005808ffdb4a5f7e2a" + integrity sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w== + +"source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.2, source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + +source-map@0.6.1, source-map@^0.6.1: + version "0.6.1" + resolved "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +sourcemap-codec@^1.4.8: + version "1.4.8" + resolved "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" + integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== + +statuses@2.0.1, statuses@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== + +std-env@^3.9.0: + version "3.9.0" + resolved "https://registry.npmmirror.com/std-env/-/std-env-3.9.0.tgz#1a6f7243b339dca4c9fd55e1c7504c77ef23e8f1" + integrity sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw== + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.3" + resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string.prototype.trim@^1.2.10: + version "1.2.10" + resolved "https://registry.npmmirror.com/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz#40b2dd5ee94c959b4dcfb1d65ce72e90da480c81" + integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-data-property "^1.1.4" + define-properties "^1.2.1" + es-abstract "^1.23.5" + es-object-atoms "^1.0.0" + has-property-descriptors "^1.0.2" + +string.prototype.trimend@^1.0.9: + version "1.0.9" + resolved "https://registry.npmmirror.com/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz#62e2731272cd285041b36596054e9f66569b6942" + integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== + dependencies: + call-bind "^1.0.8" + call-bound "^1.0.2" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +string.prototype.trimstart@^1.0.8: + version "1.0.8" + resolved "https://registry.npmmirror.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" + integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== + +strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +strip-literal@^1.0.0: + version "1.3.0" + resolved "https://registry.npmmirror.com/strip-literal/-/strip-literal-1.3.0.tgz#db3942c2ec1699e6836ad230090b84bb458e3a07" + integrity sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg== + dependencies: + acorn "^8.10.0" + +strip-literal@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/strip-literal/-/strip-literal-3.0.0.tgz#ce9c452a91a0af2876ed1ae4e583539a353df3fc" + integrity sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA== + dependencies: + js-tokens "^9.0.1" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +tailwindcss@3.2.4: + version "3.2.4" + resolved "https://registry.npmmirror.com/tailwindcss/-/tailwindcss-3.2.4.tgz#afe3477e7a19f3ceafb48e4b083e292ce0dc0250" + integrity sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ== + dependencies: + arg "^5.0.2" + chokidar "^3.5.3" + color-name "^1.1.4" + detective "^5.2.1" + didyoumean "^1.2.2" + dlv "^1.1.3" + fast-glob "^3.2.12" + glob-parent "^6.0.2" + is-glob "^4.0.3" + lilconfig "^2.0.6" + micromatch "^4.0.5" + normalize-path "^3.0.0" + object-hash "^3.0.0" + picocolors "^1.0.0" + postcss "^8.4.18" + postcss-import "^14.1.0" + postcss-js "^4.0.0" + postcss-load-config "^3.1.4" + postcss-nested "6.0.0" + postcss-selector-parser "^6.0.10" + postcss-value-parser "^4.2.0" + quick-lru "^5.1.1" + resolve "^1.22.1" + +throttle-debounce@^3.0.1: + version "3.0.1" + resolved "https://registry.npmmirror.com/throttle-debounce/-/throttle-debounce-3.0.1.tgz#32f94d84dfa894f786c9a1f290e7a645b6a19abb" + integrity sha512-dTEWWNu6JmeVXY0ZYoPuH5cRIwc0MeGbJwah9KUNYSJwommQpCzTySTpEe8Gs1J23aeWEuAobe4Ag7EHVt/LOg== + +tiny-emitter@^2.0.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" + integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== + +tinyexec@^0.3.2: + version "0.3.2" + resolved "https://registry.npmmirror.com/tinyexec/-/tinyexec-0.3.2.tgz#941794e657a85e496577995c6eef66f53f42b3d2" + integrity sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA== + +tinyglobby@^0.2.13: + version "0.2.13" + resolved "https://registry.npmmirror.com/tinyglobby/-/tinyglobby-0.2.13.tgz#a0e46515ce6cbcd65331537e57484af5a7b2ff7e" + integrity sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw== + dependencies: + fdir "^6.4.4" + picomatch "^4.0.2" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + +ts-api-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.npmmirror.com/ts-api-utils/-/ts-api-utils-2.1.0.tgz#595f7094e46eed364c13fd23e75f9513d29baf91" + integrity sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ== + +tsconfig-paths@^3.14.1: + version "3.15.0" + resolved "https://registry.npmmirror.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" + integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.2" + minimist "^1.2.6" + strip-bom "^3.0.0" + +tslib@2.3.0: + version "2.3.0" + resolved "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz#803b8cdab3e12ba581a4ca41c8839bbb0dacb09e" + integrity sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg== + +tslib@^1.8.1: + version "1.14.1" + resolved "https://registry.npmmirror.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.npmmirror.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.npmmirror.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-is@^2.0.0, type-is@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/type-is/-/type-is-2.0.1.tgz#64f6cf03f92fce4015c2b224793f6bdd4b068c97" + integrity sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw== + dependencies: + content-type "^1.0.5" + media-typer "^1.1.0" + mime-types "^3.0.0" + +typed-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.npmmirror.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz#a72395450a4869ec033fd549371b47af3a2ee536" + integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw== + dependencies: + call-bound "^1.0.3" + es-errors "^1.3.0" + is-typed-array "^1.1.14" + +typed-array-byte-length@^1.0.3: + version "1.0.3" + resolved "https://registry.npmmirror.com/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz#8407a04f7d78684f3d252aa1a143d2b77b4160ce" + integrity sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg== + dependencies: + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.14" + +typed-array-byte-offset@^1.0.4: + version "1.0.4" + resolved "https://registry.npmmirror.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz#ae3698b8ec91a8ab945016108aef00d5bff12355" + integrity sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + for-each "^0.3.3" + gopd "^1.2.0" + has-proto "^1.2.0" + is-typed-array "^1.1.15" + reflect.getprototypeof "^1.0.9" + +typed-array-length@^1.0.7: + version "1.0.7" + resolved "https://registry.npmmirror.com/typed-array-length/-/typed-array-length-1.0.7.tgz#ee4deff984b64be1e118b0de8c9c877d5ce73d3d" + integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" + reflect.getprototypeof "^1.0.6" + +typescript@4.9.5: + version "4.9.5" + resolved "https://registry.npmmirror.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== + +ufo@^1.5.4, ufo@^1.6.1: + version "1.6.1" + resolved "https://registry.npmmirror.com/ufo/-/ufo-1.6.1.tgz#ac2db1d54614d1b22c1d603e3aef44a85d8f146b" + integrity sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA== + +unbox-primitive@^1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz#8d9d2c9edeea8460c7f35033a88867944934d1e2" + integrity sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw== + dependencies: + call-bound "^1.0.3" + has-bigints "^1.0.2" + has-symbols "^1.1.0" + which-boxed-primitive "^1.1.1" + +unctx@^2.4.1: + version "2.4.1" + resolved "https://registry.npmmirror.com/unctx/-/unctx-2.4.1.tgz#93346a98d4a38c64cc5861f6098f4ce7c6f8164a" + integrity sha512-AbaYw0Nm4mK4qjhns67C+kgxR2YWiwlDBPzxrN8h8C6VtAdCgditAY5Dezu3IJy4XVqAnbrXt9oQJvsn3fyozg== + dependencies: + acorn "^8.14.0" + estree-walker "^3.0.3" + magic-string "^0.30.17" + unplugin "^2.1.0" + +undici-types@~6.21.0: + version "6.21.0" + resolved "https://registry.npmmirror.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb" + integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== + +unimport@^2.1.0: + version "2.2.4" + resolved "https://registry.npmmirror.com/unimport/-/unimport-2.2.4.tgz#3d0c7fb354e54ba277e58725aac73fbebabee0c7" + integrity sha512-qMgmeEGqqrrmEtm0dqxMG37J6xBtrriqxq9hILvDb+e6l2F0yTnJomLoCCp0eghLR7bYGeBsUU5Y0oyiUYhViw== + dependencies: + "@rollup/pluginutils" "^5.0.2" + escape-string-regexp "^5.0.0" + fast-glob "^3.2.12" + local-pkg "^0.4.3" + magic-string "^0.27.0" + mlly "^1.1.0" + pathe "^1.1.0" + pkg-types "^1.0.1" + scule "^1.0.0" + strip-literal "^1.0.0" + unplugin "^1.0.1" + +unimport@^5.0.1: + version "5.0.1" + resolved "https://registry.npmmirror.com/unimport/-/unimport-5.0.1.tgz#c823ace5819fc810c25435450b22ebc4ab8b11f9" + integrity sha512-1YWzPj6wYhtwHE+9LxRlyqP4DiRrhGfJxdtH475im8ktyZXO3jHj/3PZ97zDdvkYoovFdi0K4SKl3a7l92v3sQ== + dependencies: + acorn "^8.14.1" + escape-string-regexp "^5.0.0" + estree-walker "^3.0.3" + local-pkg "^1.1.1" + magic-string "^0.30.17" + mlly "^1.7.4" + pathe "^2.0.3" + picomatch "^4.0.2" + pkg-types "^2.1.0" + scule "^1.3.0" + strip-literal "^3.0.0" + tinyglobby "^0.2.13" + unplugin "^2.3.2" + unplugin-utils "^0.2.4" + +unpipe@1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== + +unplugin-auto-import@0.13.0: + version "0.13.0" + resolved "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.13.0.tgz#0d0fae74f4a71529faec7ddda9006ec32363e3fb" + integrity sha512-nKMxDbkjM4FRPInFfm7sWrJOKgxfKKwb5yLPP+DEGl/SG0/FtBoW1LnZL4PQfx0FXjertoHO1P/5nDf+RSip2Q== + dependencies: + "@antfu/utils" "^0.7.2" + "@rollup/pluginutils" "^5.0.2" + local-pkg "^0.4.3" + magic-string "^0.27.0" + unimport "^2.1.0" + unplugin "^1.0.1" + +unplugin-utils@^0.2.4: + version "0.2.4" + resolved "https://registry.npmmirror.com/unplugin-utils/-/unplugin-utils-0.2.4.tgz#56e4029a6906645a10644f8befc404b06d5d24d0" + integrity sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA== + dependencies: + pathe "^2.0.2" + picomatch "^4.0.2" + +unplugin-vue-components@0.23.0: + version "0.23.0" + resolved "https://registry.npmmirror.com/unplugin-vue-components/-/unplugin-vue-components-0.23.0.tgz#f4dce2f05672ab7b24e0ba149639d1fa7d12b906" + integrity sha512-JAJ+BGvjHvi9P7lICwOzDx2Av+OcI6ZTzvySmjXDNGCNVPrt2NQQmbcp7cW027CR1mRugIX5G//awm3doHyqkg== + dependencies: + "@antfu/utils" "^0.7.2" + "@nuxt/kit" "^3.1.1" + "@rollup/pluginutils" "^5.0.2" + chokidar "^3.5.3" + debug "^4.3.4" + fast-glob "^3.2.12" + local-pkg "^0.4.3" + magic-string "^0.27.0" + minimatch "^6.1.6" + resolve "^1.22.1" + unplugin "^1.0.1" + +unplugin@^1.0.1: + version "1.16.1" + resolved "https://registry.npmmirror.com/unplugin/-/unplugin-1.16.1.tgz#a844d2e3c3b14a4ac2945c42be80409321b61199" + integrity sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w== + dependencies: + acorn "^8.14.0" + webpack-virtual-modules "^0.6.2" + +unplugin@^2.1.0, unplugin@^2.3.2: + version "2.3.4" + resolved "https://registry.npmmirror.com/unplugin/-/unplugin-2.3.4.tgz#f3cf35f36656404cb9078be59f993941d649d87c" + integrity sha512-m4PjxTurwpWfpMomp8AptjD5yj8qEZN5uQjjGM3TAs9MWWD2tXSSNNj6jGR2FoVGod4293ytyV6SwBbertfyJg== + dependencies: + acorn "^8.14.1" + picomatch "^4.0.2" + webpack-virtual-modules "^0.6.2" + +untyped@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/untyped/-/untyped-2.0.0.tgz#86bc205a4ec4b0137282285866b8278557aeee97" + integrity sha512-nwNCjxJTjNuLCgFr42fEak5OcLuB3ecca+9ksPFNvtfYSLpjf+iJqSIaSnIile6ZPbKYxI5k2AfXqeopGudK/g== + dependencies: + citty "^0.1.6" + defu "^6.1.4" + jiti "^2.4.2" + knitwork "^1.2.0" + scule "^1.3.0" + +update-browserslist-db@^1.1.3: + version "1.1.3" + resolved "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420" + integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== + dependencies: + escalade "^3.2.0" + picocolors "^1.1.1" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +util-deprecate@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +vary@^1, vary@^1.1.2: + version "1.1.2" + resolved "https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + +vite@4.1.0: + version "4.1.0" + resolved "https://registry.npmmirror.com/vite/-/vite-4.1.0.tgz#4f0d3aa0491d313cd8c144e4339171b2a0fb6b54" + integrity sha512-YoUKE/9bbK4C8ZeSYMDDEF8H5aypmWUq4WisftDhntR1gkI2zt2SGT/5Wd2xu6ZoVXkCyO3U4844KWG9e4nFoQ== + dependencies: + esbuild "^0.16.14" + postcss "^8.4.21" + resolve "^1.22.1" + rollup "^3.10.0" + optionalDependencies: + fsevents "~2.3.2" + +vue-demi@*: + version "0.14.10" + resolved "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.10.tgz#afc78de3d6f9e11bf78c55e8510ee12814522f04" + integrity sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg== + +vue-eslint-parser@^10.1.3: + version "10.1.3" + resolved "https://registry.npmmirror.com/vue-eslint-parser/-/vue-eslint-parser-10.1.3.tgz#96457823a5915a62001798cfd9cc15a89067bf81" + integrity sha512-dbCBnd2e02dYWsXoqX5yKUZlOt+ExIpq7hmHKPb5ZqKcjf++Eo0hMseFTZMLKThrUk61m+Uv6A2YSBve6ZvuDQ== + dependencies: + debug "^4.4.0" + eslint-scope "^8.2.0" + eslint-visitor-keys "^4.2.0" + espree "^10.3.0" + esquery "^1.6.0" + lodash "^4.17.21" + semver "^7.6.3" + +vue-i18n@9.2.2: + version "9.2.2" + resolved "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-9.2.2.tgz#aeb49d9424923c77e0d6441e3f21dafcecd0e666" + integrity sha512-yswpwtj89rTBhegUAv9Mu37LNznyu3NpyLQmozF3i1hYOhwpG8RjcjIFIIfnu+2MDZJGSZPXaKWvnQA71Yv9TQ== + dependencies: + "@intlify/core-base" "9.2.2" + "@intlify/shared" "9.2.2" + "@intlify/vue-devtools" "9.2.2" + "@vue/devtools-api" "^6.2.1" + +vue-json-viewer@^3.0.4: + version "3.0.4" + resolved "https://registry.npmmirror.com/vue-json-viewer/-/vue-json-viewer-3.0.4.tgz#c1d65515e57d4036defbbc18fa942d7fd5fb9a8b" + integrity sha512-pnC080rTub6YjccthVSNQod2z9Sl5IUUq46srXtn6rxwhW8QM4rlYn+CTSLFKXWfw+N3xv77Cioxw7B4XUKIbQ== + dependencies: + clipboard "^2.0.4" + +vue-jsonp@2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/vue-jsonp/-/vue-jsonp-2.0.0.tgz#3bfac56bb72941a2511c11e1a123b876f03427f7" + integrity sha512-Mzd9GNeuKP5hHFDWZNMWOsCuMILSkA6jo2l4A02wheFz3qqBzH7aSEFTey1BRCZCLizlaf1EqJ5YUtF392KspA== + +vue-router@4.1.6: + version "4.1.6" + resolved "https://registry.npmmirror.com/vue-router/-/vue-router-4.1.6.tgz#b70303737e12b4814578d21d68d21618469375a1" + integrity sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ== + dependencies: + "@vue/devtools-api" "^6.4.5" + +vue-template-compiler@^2.7.14: + version "2.7.16" + resolved "https://registry.npmmirror.com/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz#c81b2d47753264c77ac03b9966a46637482bb03b" + integrity sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ== + dependencies: + de-indent "^1.0.2" + he "^1.2.0" + +vue-tsc@1.0.24: + version "1.0.24" + resolved "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-1.0.24.tgz#c0b270a7c8422408d3b6694fee61b39a4b9e4740" + integrity sha512-mmU1s5SAqE1nByQAiQnao9oU4vX+mSdsgI8H57SfKH6UVzq/jP9+Dbi2GaV+0b4Cn361d2ln8m6xeU60ApiEXg== + dependencies: + "@volar/vue-language-core" "1.0.24" + "@volar/vue-typescript" "1.0.24" + +vue-ueditor-wrap@^3.0.8: + version "3.0.8" + resolved "https://registry.npmmirror.com/vue-ueditor-wrap/-/vue-ueditor-wrap-3.0.8.tgz#b0c6b9d2fe4f4754c55876e60973b44c85b10a43" + integrity sha512-U1s30pKcz8rr6v2F2ivnomOf1vF1N+n+aNClas4jXfiEf4E5FEtNwkFJBugcyf2VTRFK0UVpx5WspX5nwmImYw== + dependencies: + "@babel/runtime" "7.x" + +vue-web-terminal@3.2.2: + version "3.2.2" + resolved "https://registry.npmmirror.com/vue-web-terminal/-/vue-web-terminal-3.2.2.tgz#398c6397268702753bb8b590606b494798e9d897" + integrity sha512-TaUvqF5F2mfsbvuVw7kCcjd4IXlrPJDU17kDdS1PCuVcsw/qdAfjoDirJhKy3JtzM4A6E4WrgUO7BnXwrKEBeg== + dependencies: + vue "^3.3.4" + vue-json-viewer "^3.0.4" + +vue3-video-play@1.3.1-beta.6: + version "1.3.1-beta.6" + resolved "https://registry.npmmirror.com/vue3-video-play/-/vue3-video-play-1.3.1-beta.6.tgz#bca3f55a11053eaa37053835e4610c04d9cc509e" + integrity sha512-Olrx2/LNAds7fuor/yX9ZKT9sOcwcfTt2g2YbbCrEaAmZ5Tb0hwBr5z+/CoLwELzzRzXCHPmWWoT0Wm5W/Nwpw== + dependencies: + hls.js "^1.0.10" + throttle-debounce "^3.0.1" + vue "^3.2.2" + +vue@3.2.45: + version "3.2.45" + resolved "https://registry.npmmirror.com/vue/-/vue-3.2.45.tgz#94a116784447eb7dbd892167784619fef379b3c8" + integrity sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA== + dependencies: + "@vue/compiler-dom" "3.2.45" + "@vue/compiler-sfc" "3.2.45" + "@vue/runtime-dom" "3.2.45" + "@vue/server-renderer" "3.2.45" + "@vue/shared" "3.2.45" + +vue@^3.2.2, vue@^3.3.4: + version "3.5.14" + resolved "https://registry.npmmirror.com/vue/-/vue-3.5.14.tgz#0ddf16d20cc20adaedfb5e77bca64c488bf5ee27" + integrity sha512-LbOm50/vZFG6Mhy6KscQYXZMQ0LMCC/y40HDJPPvGFQ+i/lUH+PJHR6C3assgOQiXdl6tAfsXHbXYVBZZu65ew== + dependencies: + "@vue/compiler-dom" "3.5.14" + "@vue/compiler-sfc" "3.5.14" + "@vue/runtime-dom" "3.5.14" + "@vue/server-renderer" "3.5.14" + "@vue/shared" "3.5.14" + +webpack-virtual-modules@^0.6.2: + version "0.6.2" + resolved "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz#057faa9065c8acf48f24cb57ac0e77739ab9a7e8" + integrity sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ== + +which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.npmmirror.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz#d76ec27df7fa165f18d5808374a5fe23c29b176e" + integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA== + dependencies: + is-bigint "^1.1.0" + is-boolean-object "^1.2.1" + is-number-object "^1.1.1" + is-string "^1.1.1" + is-symbol "^1.1.1" + +which-builtin-type@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/which-builtin-type/-/which-builtin-type-1.2.1.tgz#89183da1b4907ab089a6b02029cc5d8d6574270e" + integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q== + dependencies: + call-bound "^1.0.2" + function.prototype.name "^1.1.6" + has-tostringtag "^1.0.2" + is-async-function "^2.0.0" + is-date-object "^1.1.0" + is-finalizationregistry "^1.1.0" + is-generator-function "^1.0.10" + is-regex "^1.2.1" + is-weakref "^1.0.2" + isarray "^2.0.5" + which-boxed-primitive "^1.1.0" + which-collection "^1.0.2" + which-typed-array "^1.1.16" + +which-collection@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0" + integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== + dependencies: + is-map "^2.0.3" + is-set "^2.0.3" + is-weakmap "^2.0.2" + is-weakset "^2.0.3" + +which-module@^2.0.0: + version "2.0.1" + resolved "https://registry.npmmirror.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + +which-typed-array@^1.1.16, which-typed-array@^1.1.18: + version "1.1.19" + resolved "https://registry.npmmirror.com/which-typed-array/-/which-typed-array-1.1.19.tgz#df03842e870b6b88e117524a4b364b6fc689f956" + integrity sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" + for-each "^0.3.5" + get-proto "^1.0.1" + gopd "^1.2.0" + has-tostringtag "^1.0.2" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.npmmirror.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +word-wrap@^1.2.5: + version "1.2.5" + resolved "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" + integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== + +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +xml-name-validator@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" + integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== + +xtend@^4.0.2: + version "4.0.2" + resolved "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.npmmirror.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + +yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.npmmirror.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs@^15.3.1: + version "15.4.1" + resolved "https://registry.npmmirror.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + +zod-to-json-schema@^3.24.1: + version "3.24.5" + resolved "https://registry.npmmirror.com/zod-to-json-schema/-/zod-to-json-schema-3.24.5.tgz#d1095440b147fb7c2093812a53c54df8d5df50a3" + integrity sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g== + +zod@^3.23.8, zod@^3.24.2: + version "3.24.4" + resolved "https://registry.npmmirror.com/zod/-/zod-3.24.4.tgz#e2e2cca5faaa012d76e527d0d36622e0a90c315f" + integrity sha512-OdqJE9UDRPwWsrHjLN2F8bPxvwJBK22EHLWtanu0LSYr5YqzsaaW3RMgmjwr8Rypg5k+meEJdSPXJZXE/yqOMg== + +zrender@5.4.1: + version "5.4.1" + resolved "https://registry.npmmirror.com/zrender/-/zrender-5.4.1.tgz#892f864b885c71e1dc25dcb3c7a4ba42678d3f11" + integrity sha512-M4Z05BHWtajY2241EmMPHglDQAJ1UyHQcYsxDNzD9XLSkPDqMq4bB28v9Pb4mvHnVQ0GxyTklZ/69xCFP6RXBA== + dependencies: + tslib "2.3.0" diff --git a/niucloud/app/adminapi/controller/class/Class.php b/niucloud/app/adminapi/controller/classroom/Classroom.php similarity index 62% rename from niucloud/app/adminapi/controller/class/Class.php rename to niucloud/app/adminapi/controller/classroom/Classroom.php index 811efb47..65b139ad 100644 --- a/niucloud/app/adminapi/controller/class/Class.php +++ b/niucloud/app/adminapi/controller/classroom/Classroom.php @@ -9,111 +9,105 @@ // | Author: Niucloud Team // +---------------------------------------------------------------------- -namespace app\adminapi\controller\class; +namespace app\adminapi\controller\classroom; use core\base\BaseAdminController; -use app\service\admin\class\ClassService; +use app\service\admin\classroom\ClassroomService; /** - * 班级控制器 - * Class Class - * @package app\adminapi\controller\class + * 场地管理控制器 + * Class Classroom + * @package app\adminapi\controller\classroom */ -class Class extends BaseAdminController +class Classroom extends BaseAdminController { /** - * 获取班级列表 + * 获取场地管理列表 * @return \think\Response */ public function lists(){ $data = $this->request->params([ ["campus_id",""], - ["campus_name",""], ["class_name",""], ["head_coach",""], - ["age_group",""], ["class_type",""], ["assistant_coach",""], ["created_at",""], - ["updated_at",""], - ["deleted_at",""], - ["status",""], - ["sort_order",""], - ["remarks",""] + ["status",""] ]); - return success((new ClassService())->getPage($data)); + return success((new ClassroomService())->getPage($data)); } /** - * 班级详情 + * 场地管理详情 * @param int $id * @return \think\Response */ public function info(int $id){ - return success((new ClassService())->getInfo($id)); + return success((new ClassroomService())->getInfo($id)); } /** - * 添加班级 + * 添加场地管理 * @return \think\Response */ public function add(){ $data = $this->request->params([ ["campus_id",0], - ["campus_name",""], ["class_name",""], ["head_coach",""], ["age_group",""], ["class_type",""], ["assistant_coach",""], - ["created_at",1747386439], - ["updated_at",1747386439], - ["deleted_at",1747386439], ["status",""], ["sort_order",0], ["remarks",""] ]); - $this->validate($data, 'app\validate\class\Class.add'); - $id = (new ClassService())->add($data); + $this->validate($data, 'app\validate\classroom\Classroom.add'); + $id = (new ClassroomService())->add($data); return success('ADD_SUCCESS', ['id' => $id]); } /** - * 班级编辑 - * @param $id 班级id + * 场地管理编辑 + * @param $id 场地管理id * @return \think\Response */ public function edit(int $id){ $data = $this->request->params([ ["campus_id",0], - ["campus_name",""], ["class_name",""], ["head_coach",""], ["age_group",""], ["class_type",""], ["assistant_coach",""], - ["created_at",1747386439], - ["updated_at",1747386439], - ["deleted_at",1747386439], ["status",""], ["sort_order",0], ["remarks",""] ]); - $this->validate($data, 'app\validate\class\Class.edit'); - (new ClassService())->edit($id, $data); + $this->validate($data, 'app\validate\classroom\Classroom.edit'); + (new ClassroomService())->edit($id, $data); return success('EDIT_SUCCESS'); } /** - * 班级删除 - * @param $id 班级id + * 场地管理删除 + * @param $id 场地管理id * @return \think\Response */ public function del(int $id){ - (new ClassService())->del($id); + (new ClassroomService())->del($id); return success('DELETE_SUCCESS'); } + public function getCampusAll(){ + return success(( new ClassroomService())->getCampusAll()); + } + + public function getPersonnelAll(){ + return success(( new ClassroomService())->getPersonnelAll()); + } + } diff --git a/niucloud/app/adminapi/controller/customer_resources/CustomerResources.php b/niucloud/app/adminapi/controller/customer_resources/CustomerResources.php index 9ec70666..f9152768 100644 --- a/niucloud/app/adminapi/controller/customer_resources/CustomerResources.php +++ b/niucloud/app/adminapi/controller/customer_resources/CustomerResources.php @@ -64,13 +64,23 @@ class CustomerResources extends BaseAdminController ["initial_intent",""], ["campus",""], ["status",""], - ["create_year_month",date("Y-m")], - ["create_date",date("Y-m-d")] - ]); + ["create_year_month",date("Y-m")], + ["create_date",date("Y-m-d")], + ["purchase_power",""], + ["concept_awareness",""], + ["preferred_class_time",""], + ["distance_tow",""], + ["communication",""], + ["promised_visit_time",""], + ["actual_visit_time",""], + ["call_intent",""], + ["first_visit_status",""], + ["second_visit_status",""], + ["is_closed",""] + ]); $this->validate($data, 'app\validate\customer_resources\CustomerResources.add'); - $id = (new CustomerResourcesService())->add($data); - return success('ADD_SUCCESS', ['id' => $id]); + return (new CustomerResourcesService())->add($data); } /** @@ -94,11 +104,27 @@ class CustomerResources extends BaseAdminController ["decision_maker",""], ["initial_intent",""], ["campus",""], - ["status",""] + ["status",""], + ["create_year_month",date("Y-m")], + ["create_date",date("Y-m-d")], + + ["purchase_power",""], + ["concept_awareness",""], + ["preferred_class_time",""], + ["distance_tow",""], + ["communication",""], + ["promised_visit_time",""], + ["actual_visit_time",""], + ["call_intent",""], + ["first_visit_status",""], + ["second_visit_status",""], + ["is_closed",""] + + ]); $this->validate($data, 'app\validate\customer_resources\CustomerResources.edit'); - (new CustomerResourcesService())->edit($id, $data); - return success('EDIT_SUCCESS'); + + return (new CustomerResourcesService())->edit($id, $data); } /** @@ -112,6 +138,10 @@ class CustomerResources extends BaseAdminController } + public function getPersonnelAll(){ + return success(( new CustomerResourcesService())->getPersonnelAll()); + } + public function getCampusAll(){ return success(( new CustomerResourcesService())->getCampusAll()); } diff --git a/niucloud/app/adminapi/controller/six_speed/SixSpeed.php b/niucloud/app/adminapi/controller/six_speed/SixSpeed.php index c034d5b7..6a3164b3 100644 --- a/niucloud/app/adminapi/controller/six_speed/SixSpeed.php +++ b/niucloud/app/adminapi/controller/six_speed/SixSpeed.php @@ -28,19 +28,7 @@ class SixSpeed extends BaseAdminController */ public function lists(){ $data = $this->request->params([ - ["purchase_power",""], - ["concept_awareness",""], - ["preferred_class_time",""], - ["distance",""], - ["communication",""], - ["promised_visit_time",""], - ["actual_visit_time",""], - ["call_intent",""], - ["first_visit_status",""], - ["second_visit_status",""], - ["is_closed",""], - ["staff_id",""], - ["resource_id",""] + ]); return success((new SixSpeedService())->getPage($data)); } @@ -65,14 +53,12 @@ class SixSpeed extends BaseAdminController ["preferred_class_time",""], ["distance",""], ["communication",""], - ["promised_visit_time","2025-05-16 17:57:14"], - ["actual_visit_time","2025-05-16 17:57:14"], + ["promised_visit_time","2025-05-18 16:21:59"], + ["actual_visit_time","2025-05-18 16:21:59"], ["call_intent",""], ["first_visit_status",""], ["second_visit_status",""], ["is_closed",0], - ["staff_id",0], - ["resource_id",0], ]); $this->validate($data, 'app\validate\six_speed\SixSpeed.add'); @@ -92,14 +78,12 @@ class SixSpeed extends BaseAdminController ["preferred_class_time",""], ["distance",""], ["communication",""], - ["promised_visit_time","2025-05-16 17:57:14"], - ["actual_visit_time","2025-05-16 17:57:14"], + ["promised_visit_time","2025-05-18 16:21:59"], + ["actual_visit_time","2025-05-18 16:21:59"], ["call_intent",""], ["first_visit_status",""], ["second_visit_status",""], ["is_closed",0], - ["staff_id",0], - ["resource_id",0], ]); $this->validate($data, 'app\validate\six_speed\SixSpeed.edit'); @@ -118,4 +102,12 @@ class SixSpeed extends BaseAdminController } + public function getPersonnelAll(){ + return success(( new SixSpeedService())->getPersonnelAll()); + } + + public function getCustomerResourcesAll(){ + return success(( new SixSpeedService())->getCustomerResourcesAll()); + } + } diff --git a/niucloud/app/adminapi/controller/venue/Venue.php b/niucloud/app/adminapi/controller/venue/Venue.php index 695807cd..c697b7c8 100644 --- a/niucloud/app/adminapi/controller/venue/Venue.php +++ b/niucloud/app/adminapi/controller/venue/Venue.php @@ -59,7 +59,7 @@ class Venue extends BaseAdminController ["capacity",0], ["availability_status",0], ["time_range_type",""], - ["fixed_time_ranges",""], + ["fixed_time_ranges",[]], ]); $this->validate($data, 'app\validate\venue\Venue.add'); @@ -79,7 +79,7 @@ class Venue extends BaseAdminController ["capacity",0], ["availability_status",0], ["time_range_type",""], - ["fixed_time_ranges",""], + ["fixed_time_ranges",[]], ]); $this->validate($data, 'app\validate\venue\Venue.edit'); diff --git a/niucloud/app/adminapi/route/class.php b/niucloud/app/adminapi/route/class.php index a03b7b55..ef6f0bf4 100644 --- a/niucloud/app/adminapi/route/class.php +++ b/niucloud/app/adminapi/route/class.php @@ -37,3 +37,31 @@ Route::group('campus', function () { AdminLog::class ]); // USER_CODE_END -- campus + +// USER_CODE_BEGIN -- class + +Route::group('class', function () { + + //场地管理列表 + Route::get('class', 'class.Class/lists'); + //场地管理详情 + Route::get('class/:id', 'class.Class/info'); + //添加场地管理 + Route::post('class', 'class.Class/add'); + //编辑场地管理 + Route::put('class/:id', 'class.Class/edit'); + //删除场地管理 + Route::delete('class/:id', 'class.Class/del'); + + Route::get('campus_all','class.Class/getCampusAll'); + + Route::get('personnel_all','class.Class/getPersonnelAll'); + + Route::get('personnel_all','class.Class/getPersonnelAll'); + +})->middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- class diff --git a/niucloud/app/adminapi/route/classroom.php b/niucloud/app/adminapi/route/classroom.php new file mode 100644 index 00000000..ac212d93 --- /dev/null +++ b/niucloud/app/adminapi/route/classroom.php @@ -0,0 +1,43 @@ +middleware([ + AdminCheckToken::class, + AdminCheckRole::class, + AdminLog::class +]); +// USER_CODE_END -- class diff --git a/niucloud/app/adminapi/route/customer_resources.php b/niucloud/app/adminapi/route/customer_resources.php index b612a5b3..7dc8c08a 100644 --- a/niucloud/app/adminapi/route/customer_resources.php +++ b/niucloud/app/adminapi/route/customer_resources.php @@ -18,6 +18,8 @@ use app\adminapi\middleware\AdminLog; + + // USER_CODE_BEGIN -- customer_resources Route::group('customer_resources', function () { @@ -33,6 +35,8 @@ Route::group('customer_resources', function () { //删除客户资源 Route::delete('customer_resources/:id', 'customer_resources.CustomerResources/del'); + Route::get('personnel_all','customer_resources.CustomerResources/getPersonnelAll'); + Route::get('campus_all','customer_resources.CustomerResources/getCampusAll'); })->middleware([ diff --git a/niucloud/app/adminapi/route/departments.php b/niucloud/app/adminapi/route/departments.php index 0937ae7a..2588205d 100644 --- a/niucloud/app/adminapi/route/departments.php +++ b/niucloud/app/adminapi/route/departments.php @@ -38,27 +38,3 @@ Route::group('departments', function () { AdminLog::class ]); // USER_CODE_END -- departments - -// USER_CODE_BEGIN -- departments - -Route::group('departments', function () { - - //部门列表 - Route::get('departments', 'departments.Departments/lists'); - //部门详情 - Route::get('departments/:id', 'departments.Departments/info'); - //添加部门 - Route::post('departments', 'departments.Departments/add'); - //编辑部门 - Route::put('departments/:id', 'departments.Departments/edit'); - //删除部门 - Route::delete('departments/:id', 'departments.Departments/del'); - - Route::get('departments_all','departments.Departments/getDepartmentsAll'); - -})->middleware([ - AdminCheckToken::class, - AdminCheckRole::class, - AdminLog::class -]); -// USER_CODE_END -- departments diff --git a/niucloud/app/adminapi/route/six_speed.php b/niucloud/app/adminapi/route/six_speed.php index 6d721f88..d84effe4 100644 --- a/niucloud/app/adminapi/route/six_speed.php +++ b/niucloud/app/adminapi/route/six_speed.php @@ -14,6 +14,7 @@ use think\facade\Route; use app\adminapi\middleware\AdminCheckRole; use app\adminapi\middleware\AdminCheckToken; use app\adminapi\middleware\AdminLog; + // USER_CODE_BEGIN -- six_speed Route::group('six_speed', function () { @@ -29,6 +30,10 @@ Route::group('six_speed', function () { //删除六一速 Route::delete('six_speed/:id', 'six_speed.SixSpeed/del'); + Route::get('personnel_all','six_speed.SixSpeed/getPersonnelAll'); + + Route::get('customer_resources_all','six_speed.SixSpeed/getCustomerResourcesAll'); + })->middleware([ AdminCheckToken::class, AdminCheckRole::class, diff --git a/niucloud/app/api/controller/apiController/teachingResearch.php b/niucloud/app/api/controller/apiController/TeachingResearch.php similarity index 65% rename from niucloud/app/api/controller/apiController/teachingResearch.php rename to niucloud/app/api/controller/apiController/TeachingResearch.php index a350fa4d..dfddb9ea 100644 --- a/niucloud/app/api/controller/apiController/teachingResearch.php +++ b/niucloud/app/api/controller/apiController/TeachingResearch.php @@ -14,6 +14,7 @@ namespace app\api\controller\apiController; use app\dict\member\MemberLoginTypeDict; use app\Request; use app\service\api\apiService\PersonnelService; +use app\service\api\apiService\TeachingResearchService; use app\service\api\captcha\CaptchaService; use app\service\api\login\ConfigService; use app\service\api\login\LoginService; @@ -26,11 +27,26 @@ use think\Response; * Class Personnel * @package app\api\controller\apiController */ -class teachingResearch extends BaseApiService +class TeachingResearch extends BaseApiService { //教研管理列表 public function list(){ $id = $this->member_id; - dd($id); + $data = $this->request->params([ + ["table_type",0] + ]); + return success((new TeachingResearchService())->list($id,$data['table_type'])); } + + //教研管理文章详情 + public function info($id){ + return success((new TeachingResearchService())->info($id)); + } + + //获取能看的教研管理类型 + public function lookType(){ + $id = $this->member_id; + return success((new TeachingResearchService())->lookType($id)); + } + } diff --git a/niucloud/app/api/route/route.php b/niucloud/app/api/route/route.php index d22776a7..22762213 100644 --- a/niucloud/app/api/route/route.php +++ b/niucloud/app/api/route/route.php @@ -222,7 +222,12 @@ Route::group(function() { - + //教研管理文章列表 + Route::get('teachingResearch/list', 'apiController.teachingResearch/list'); + //教研管理文章详情 + Route::get('teachingResearch/info/:id', 'apiController.teachingResearch/info'); + //获取能看的教研管理类型 + Route::get('teachingResearch/lookType', 'apiController.teachingResearch/lookType'); })->middleware(ApiChannel::class) ->middleware(ApiPersonnelCheckToken::class, true) ->middleware(ApiLog::class); diff --git a/niucloud/app/common.php b/niucloud/app/common.php index 9abd2ef5..dbcc248f 100644 --- a/niucloud/app/common.php +++ b/niucloud/app/common.php @@ -1046,3 +1046,31 @@ function get_campus_where($user_id){ return $where; } + + +function getModifiedFields(array $oldData, array $newData): array +{ + $modifiedFields = []; + $oldValues = []; + $newValues = []; + + foreach ($newData as $key => $newValue) { + + if (!array_key_exists($key, $oldData)) { + continue; + } + + if ($oldData[$key] != $newValue) { + $modifiedFields[] = $key; + $oldValues[$key] = $oldData[$key]; + $newValues[$key] = $newValue; + } + } + + return [ + 'is_save' => !empty($modifiedFields), + 'modified_fields' => json_encode($modifiedFields, JSON_UNESCAPED_UNICODE), + 'old_values' => json_encode($oldValues, JSON_UNESCAPED_UNICODE), + 'new_values' => json_encode($newValues, JSON_UNESCAPED_UNICODE), + ]; +} diff --git a/niucloud/app/model/class/Class.php b/niucloud/app/model/classroom/Classroom.php similarity index 55% rename from niucloud/app/model/class/Class.php rename to niucloud/app/model/classroom/Classroom.php index 4bcc1de5..b30b1cbd 100644 --- a/niucloud/app/model/class/Class.php +++ b/niucloud/app/model/classroom/Classroom.php @@ -9,19 +9,25 @@ // | Author: Niucloud Team // +---------------------------------------------------------------------- -namespace app\model\class; +namespace app\model\classroom; use core\base\BaseModel; use think\model\concern\SoftDelete; use think\model\relation\HasMany; use think\model\relation\HasOne; +use app\model\campus\Campus; + +use app\model\personnel\Personnel; + +use app\model\personnel\Personnel; + /** - * 班级模型 - * Class Class - * @package app\model\class + * 场地管理模型 + * Class Classroom + * @package app\model\classroom */ -class Class extends BaseModel +class Classroom extends BaseModel { use SoftDelete; @@ -51,19 +57,7 @@ class Class extends BaseModel protected $defaultSoftDelete = 0; /** - * 搜索器:班级班级编号 - * @param $value - * @param $data - */ - public function searchIdAttr($query, $value, $data) - { - if ($value) { - $query->where("id", $value); - } - } - - /** - * 搜索器:班级校区ID + * 搜索器:场地管理所属校区 * @param $value * @param $data */ @@ -75,19 +69,7 @@ class Class extends BaseModel } /** - * 搜索器:班级校区名称 - * @param $value - * @param $data - */ - public function searchCampusNameAttr($query, $value, $data) - { - if ($value) { - $query->where("campus_name", $value); - } - } - - /** - * 搜索器:班级班级名称 + * 搜索器:场地管理班级名称 * @param $value * @param $data */ @@ -99,7 +81,7 @@ class Class extends BaseModel } /** - * 搜索器:班级班级主教练 + * 搜索器:场地管理主教练 * @param $value * @param $data */ @@ -111,19 +93,7 @@ class Class extends BaseModel } /** - * 搜索器:班级班级授课年龄段 - * @param $value - * @param $data - */ - public function searchAgeGroupAttr($query, $value, $data) - { - if ($value) { - $query->where("age_group", $value); - } - } - - /** - * 搜索器:班级班级类型 + * 搜索器:场地管理班级类型 * @param $value * @param $data */ @@ -135,7 +105,7 @@ class Class extends BaseModel } /** - * 搜索器:班级班级助教 + * 搜索器:场地管理助教 * @param $value * @param $data */ @@ -147,7 +117,7 @@ class Class extends BaseModel } /** - * 搜索器:班级创建时间 + * 搜索器:场地管理创建时间 * @param $value * @param $data */ @@ -159,31 +129,7 @@ class Class extends BaseModel } /** - * 搜索器:班级修改时间 - * @param $value - * @param $data - */ - public function searchUpdatedAtAttr($query, $value, $data) - { - if ($value) { - $query->where("updated_at", $value); - } - } - - /** - * 搜索器:班级逻辑删除时间 - * @param $value - * @param $data - */ - public function searchDeletedAtAttr($query, $value, $data) - { - if ($value) { - $query->where("deleted_at", $value); - } - } - - /** - * 搜索器:班级班级状态 + * 搜索器:场地管理班级状态 * @param $value * @param $data */ @@ -194,33 +140,21 @@ class Class extends BaseModel } } - /** - * 搜索器:班级班级排序 - * @param $value - * @param $data - */ - public function searchSortOrderAttr($query, $value, $data) - { - if ($value) { - $query->where("sort_order", $value); - } - } - - /** - * 搜索器:班级班级备注 - * @param $value - * @param $data - */ - public function searchRemarksAttr($query, $value, $data) - { - if ($value) { - $query->where("remarks", $value); - } - } - + public function campus(){ + return $this->hasOne(Campus::class, 'id', 'campus_id')->joinType('left')->withField('campus_name,id')->bind(['campus_id_name'=>'campus_name']); + } + + public function personnel(){ + return $this->hasOne(Personnel::class, 'id', 'head_coach')->joinType('left')->withField('name,id')->bind(['head_coach_name'=>'name']); + } + + public function personnel(){ + return $this->hasOne(Personnel::class, 'id', 'assistant_coach')->joinType('left')->withField('name,id')->bind(['assistant_coach_name'=>'name']); + } + } diff --git a/niucloud/app/model/customer_resources/CustomerResources.php b/niucloud/app/model/customer_resources/CustomerResources.php index b173fe90..c9e00e87 100644 --- a/niucloud/app/model/customer_resources/CustomerResources.php +++ b/niucloud/app/model/customer_resources/CustomerResources.php @@ -16,6 +16,8 @@ use think\model\concern\SoftDelete; use think\model\relation\HasMany; use think\model\relation\HasOne; +use app\model\personnel\Personnel; + use app\model\campus\Campus; /** @@ -81,6 +83,10 @@ class CustomerResources extends BaseModel + public function personnel(){ + return $this->hasOne(Personnel::class, 'id', 'consultant')->joinType('left')->withField('name,id')->bind(['consultant_name'=>'name']); + } + public function campus(){ return $this->hasOne(Campus::class, 'id', 'campus')->joinType('left')->withField('campus_name,id')->bind(['campus_name'=>'campus_name']); } diff --git a/niucloud/app/model/six_speed/SixSpeed.php b/niucloud/app/model/six_speed/SixSpeed.php index d6d35c34..8a5c83fe 100644 --- a/niucloud/app/model/six_speed/SixSpeed.php +++ b/niucloud/app/model/six_speed/SixSpeed.php @@ -16,6 +16,10 @@ use think\model\concern\SoftDelete; use think\model\relation\HasMany; use think\model\relation\HasOne; +use app\model\personnel\Personnel; + +use app\model\customer_resources\CustomerResources; + /** * 六一速模型 * Class SixSpeed @@ -50,177 +54,17 @@ class SixSpeed extends BaseModel */ protected $defaultSoftDelete = 0; - /** - * 搜索器:六一速编号 - * @param $value - * @param $data - */ - public function searchIdAttr($query, $value, $data) - { - if ($value) { - $query->where("id", $value); - } - } - - /** - * 搜索器:六一速需求购买力 - * @param $value - * @param $data - */ - public function searchPurchasePowerAttr($query, $value, $data) - { - if ($value) { - $query->where("purchase_power", $value); - } - } - - /** - * 搜索器:六一速认知理念 - * @param $value - * @param $data - */ - public function searchConceptAwarenessAttr($query, $value, $data) - { - if ($value) { - $query->where("concept_awareness", $value); - } - } - - /** - * 搜索器:六一速可选上课时间 - * @param $value - * @param $data - */ - public function searchPreferredClassTimeAttr($query, $value, $data) - { - if ($value) { - $query->where("preferred_class_time", $value); - } - } - - /** - * 搜索器:六一速距离 - * @param $value - * @param $data - */ - public function searchDistanceAttr($query, $value, $data) - { - if ($value) { - $query->where("distance", $value); - } - } - - /** - * 搜索器:六一速沟通备注 - * @param $value - * @param $data - */ - public function searchCommunicationAttr($query, $value, $data) - { - if ($value) { - $query->where("communication", $value); - } - } - - /** - * 搜索器:六一速承诺到访时间 - * @param $value - * @param $data - */ - public function searchPromisedVisitTimeAttr($query, $value, $data) - { - if ($value) { - $query->where("promised_visit_time", $value); - } - } - - /** - * 搜索器:六一速实际到访时间 - * @param $value - * @param $data - */ - public function searchActualVisitTimeAttr($query, $value, $data) - { - if ($value) { - $query->where("actual_visit_time", $value); - } - } - - /** - * 搜索器:六一速电话后的意向程度: low-低, medium-中, high-高 - * @param $value - * @param $data - */ - public function searchCallIntentAttr($query, $value, $data) - { - if ($value) { - $query->where("call_intent", $value); - } - } - - /** - * 搜索器:六一速一访情况 - * @param $value - * @param $data - */ - public function searchFirstVisitStatusAttr($query, $value, $data) - { - if ($value) { - $query->where("first_visit_status", $value); - } - } - - /** - * 搜索器:六一速二访情况 - * @param $value - * @param $data - */ - public function searchSecondVisitStatusAttr($query, $value, $data) - { - if ($value) { - $query->where("second_visit_status", $value); - } - } - - /** - * 搜索器:六一速是否关单: 1-是, 0-否 - * @param $value - * @param $data - */ - public function searchIsClosedAttr($query, $value, $data) - { - if ($value) { - $query->where("is_closed", $value); - } - } - - /** - * 搜索器:六一速人员ID - * @param $value - * @param $data - */ - public function searchStaffIdAttr($query, $value, $data) - { - if ($value) { - $query->where("staff_id", $value); - } - } - - /** - * 搜索器:六一速资源ID - * @param $value - * @param $data - */ - public function searchResourceIdAttr($query, $value, $data) - { - if ($value) { - $query->where("resource_id", $value); - } + + + + + + public function personnel(){ + return $this->hasOne(Personnel::class, 'id', 'staff_id')->joinType('left')->withField('name,id')->bind(['staff_id_name'=>'name']); } - - - + public function customerResources(){ + return $this->hasOne(CustomerResources::class, 'id', 'resource_id')->joinType('left')->withField('name,id')->bind(['resource_id_name'=>'name']); + } - } diff --git a/niucloud/app/service/admin/class/ClassService.php b/niucloud/app/service/admin/classroom/ClassroomService.php similarity index 62% rename from niucloud/app/service/admin/class/ClassService.php rename to niucloud/app/service/admin/classroom/ClassroomService.php index 7117d81e..01185a07 100644 --- a/niucloud/app/service/admin/class/ClassService.php +++ b/niucloud/app/service/admin/classroom/ClassroomService.php @@ -9,28 +9,31 @@ // | Author: Niucloud Team // +---------------------------------------------------------------------- -namespace app\service\admin\class; +namespace app\service\admin\classroom; -use app\model\class\Class; +use app\model\classroom\Classroom; +use app\model\campus\Campus; +use app\model\personnel\Personnel; +use app\model\personnel\Personnel; use core\base\BaseAdminService; /** - * 班级服务层 - * Class ClassService - * @package app\service\admin\class + * 场地管理服务层 + * Class ClassroomService + * @package app\service\admin\classroom */ -class ClassService extends BaseAdminService +class ClassroomService extends BaseAdminService { public function __construct() { parent::__construct(); - $this->model = new Class(); + $this->model = new Classroom(); } /** - * 获取班级列表 + * 获取场地管理列表 * @param array $where * @return array */ @@ -39,13 +42,13 @@ class ClassService extends BaseAdminService $field = 'id,campus_id,campus_name,class_name,head_coach,age_group,class_type,assistant_coach,created_at,updated_at,deleted_at,status,sort_order,remarks'; $order = 'id desc'; - $search_model = $this->model->withSearch(["id","campus_id","campus_name","class_name","head_coach","age_group","class_type","assistant_coach","created_at","updated_at","deleted_at","status","sort_order","remarks"], $where)->field($field)->order($order); + $search_model = $this->model->withSearch(["campus_id","class_name","head_coach","class_type","assistant_coach","created_at","status"], $where)->with(['campus','personnel','personnel'])->field($field)->order($order); $list = $this->pageQuery($search_model); return $list; } /** - * 获取班级信息 + * 获取场地管理信息 * @param int $id * @return array */ @@ -53,12 +56,13 @@ class ClassService extends BaseAdminService { $field = 'id,campus_id,campus_name,class_name,head_coach,age_group,class_type,assistant_coach,created_at,updated_at,deleted_at,status,sort_order,remarks'; - $info = $this->model->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray(); + $info = $this->model->field($field)->where([['id', "=", $id]])->with(['campus','personnel','personnel'])->findOrEmpty()->toArray(); + $info['status'] = strval($info['status']); return $info; } /** - * 添加班级 + * 添加场地管理 * @param array $data * @return mixed */ @@ -70,7 +74,7 @@ class ClassService extends BaseAdminService } /** - * 班级编辑 + * 场地管理编辑 * @param int $id * @param array $data * @return bool @@ -83,7 +87,7 @@ class ClassService extends BaseAdminService } /** - * 删除班级 + * 删除场地管理 * @param int $id * @return bool */ @@ -95,5 +99,20 @@ class ClassService extends BaseAdminService } + public function getCampusAll(){ + $campusModel = new Campus(); + return $campusModel->select()->toArray(); + } + + public function getPersonnelAll(){ + $personnelModel = new Personnel(); + return $personnelModel->select()->toArray(); + } + + public function getPersonnelAll(){ + $personnelModel = new Personnel(); + return $personnelModel->select()->toArray(); + } + } diff --git a/niucloud/app/service/admin/customer_resources/CustomerResourcesService.php b/niucloud/app/service/admin/customer_resources/CustomerResourcesService.php index d66b5c8a..c9ce58b0 100644 --- a/niucloud/app/service/admin/customer_resources/CustomerResourcesService.php +++ b/niucloud/app/service/admin/customer_resources/CustomerResourcesService.php @@ -11,9 +11,13 @@ namespace app\service\admin\customer_resources; +use app\model\customer_resource_changes\CustomerResourceChanges; use app\model\customer_resources\CustomerResources; +use app\model\personnel\Personnel; use app\model\campus\Campus; +use app\model\six_speed\SixSpeed; +use app\model\six_speed_modification_log\SixSpeedModificationLog; use core\base\BaseAdminService; @@ -40,7 +44,7 @@ class CustomerResourcesService extends BaseAdminService $field = 'id,create_year_month,create_date,source,source_channel,consultant,name,age,gender,phone_number,demand,purchasing_power,cognitive_idea,optional_class_time,distance,decision_maker,initial_intent,campus,created_at,updated_at,deleted_at,status'; $order = 'id desc'; - $search_model = $this->model->where(get_campus_where($this->uid))->withSearch(["name","phone_number"], $where)->with(['campus'])->field($field)->order($order); + $search_model = $this->model->withSearch(["name","phone_number"], $where)->with(['personnel'])->field($field)->order($order); $list = $this->pageQuery($search_model); return $list; } @@ -54,7 +58,12 @@ class CustomerResourcesService extends BaseAdminService { $field = 'id,create_year_month,create_date,source,source_channel,consultant,name,age,gender,phone_number,demand,purchasing_power,cognitive_idea,optional_class_time,distance,decision_maker,initial_intent,campus,created_at,updated_at,deleted_at,status'; - $info = $this->model->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray(); + $info = $this->model->field($field)->where([['id', "=", $id]])->with(['personnel'])->findOrEmpty()->toArray(); + + $sixSpeed = new SixSpeed(); + $data = $sixSpeed->where(['resource_id' => $id])->field("*,distance as distance_tow")->findOrEmpty()->toArray(); + $info = $info+$data; + return $info; } @@ -65,9 +74,41 @@ class CustomerResourcesService extends BaseAdminService */ public function add(array $data) { - $data['consultant'] = $this->username; + $personnel = new Personnel(); + $data['consultant'] = $personnel->where(['sys_user_id' => $this->uid])->value("id"); + if(!$data['consultant']){ + return fail("操作失败"); + } + $sixSpeed = new SixSpeed(); + $res = $this->model->create($data); - return $res->id; + + if($data['purchase_power']){ + $six_id = $sixSpeed->where(['resource_id' => $res->id])->value("id"); + $data['staff_id'] = $data['consultant']; + + $field = [ + 'purchase_power' => $data['purchase_power'], + 'concept_awareness' => $data['concept_awareness'], + 'preferred_class_time' => $data['preferred_class_time'], + 'distance' => $data['distance_tow'], + 'communication' => $data['communication'], + 'promised_visit_time' => $data['promised_visit_time'], + 'actual_visit_time' => $data['actual_visit_time'], + 'call_intent' => $data['call_intent'], + 'first_visit_status' => $data['first_visit_status'], + 'second_visit_status' => $data['second_visit_status'], + 'is_closed' => $data['is_closed'], + 'staff_id' => $data['staff_id'], + 'resource_id' => $res->id + ]; + if($six_id){ + $sixSpeed->where(['resource_id' => $res->id])->update($field); + }else{ + $sixSpeed->insert($field); + } + } + return success("操作成功"); } @@ -75,14 +116,101 @@ class CustomerResourcesService extends BaseAdminService * 客户资源编辑 * @param int $id * @param array $data - * @return bool */ public function edit(int $id, array $data) { - - $data['consultant'] = $this->username; - $this->model->where([['id', '=', $id]])->update($data); - return true; + $personnel = new Personnel(); + $data['consultant'] = $personnel->where(['sys_user_id' => $this->uid])->value("id"); + if(!$data['consultant']){ + return fail("操作失败"); + } + +// $data['consultant'] = 1; + $res = $this->model->where([['id', '=', $id]])->findOrEmpty()->toArray(); + + + $this->model->where([['id', '=', $id]])->update([ + 'source' => $data['source'], + 'source_channel' => $data['source_channel'], + 'consultant' => $data['consultant'], + 'name' => $data['name'], + 'age' => $data['age'], + 'gender' => $data['gender'], + 'phone_number' => $data['phone_number'], + 'demand' => $data['demand'], + 'purchasing_power' => $data['purchasing_power'], + 'cognitive_idea' => $data['cognitive_idea'], + 'optional_class_time' => $data['optional_class_time'], + 'distance' => $data['distance'], + 'decision_maker' => $data['decision_maker'], + 'initial_intent' => $data['initial_intent'], + 'campus' => $data['campus'], + 'status' => $data['status'], + 'create_year_month' => $data['create_year_month'], + 'create_date' => $data['create_date'] + ]); + + $resources_save = getModifiedFields($res,$data); + + $customerResourceChanges = new CustomerResourceChanges(); + if($resources_save['is_save']){ + $customerResourceChanges->insert([ + 'customer_resource_id' => $id, + 'operator_id' => $data['consultant'], + 'campus_id' => $data['campus'], + 'modified_fields' => $resources_save['modified_fields'], + 'old_values' => $resources_save['old_values'], + 'new_values' => $resources_save['new_values'] + ]); + } + + + $sixSpeed = new SixSpeed(); + if($data['purchase_power']){ + $sixSpeedModificationLog = new SixSpeedModificationLog(); + $six_id = $sixSpeed->where(['resource_id' => $id])->value("id"); + $data['staff_id'] = $data['consultant']; + + + + $field = [ + 'purchase_power' => $data['purchase_power'], + 'concept_awareness' => $data['concept_awareness'], + 'preferred_class_time' => $data['preferred_class_time'], + 'distance' => $data['distance_tow'], + 'communication' => $data['communication'], + 'promised_visit_time' => $data['promised_visit_time'], + 'actual_visit_time' => $data['actual_visit_time'], + 'call_intent' => $data['call_intent'], + 'first_visit_status' => $data['first_visit_status'], + 'second_visit_status' => $data['second_visit_status'], + 'is_closed' => $data['is_closed'], + 'staff_id' => $data['staff_id'], + 'resource_id' => $id + ]; + if($six_id){ + $six_log = $sixSpeed->where(['resource_id' => $id])->findOrEmpty()->toArray(); + $six_save = getModifiedFields($six_log,$field); + + if($six_save['is_save']){ + + $sixSpeedModificationLog->insert([ + 'customer_resource_id' => $id, + 'operator_id' => $data['consultant'], + 'campus_id' => $data['campus'], + 'modified_field' => $six_save['modified_fields'], + 'old_value' => $six_save['old_values'], + 'new_value' => $six_save['new_values'] + ]); + } + + $sixSpeed->where(['resource_id' => $id])->update($field); + }else{ + $sixSpeed->insert($field); + } + } + + return success("操作成功"); } /** @@ -98,6 +226,11 @@ class CustomerResourcesService extends BaseAdminService } + public function getPersonnelAll(){ + $personnelModel = new Personnel(); + return $personnelModel->select()->toArray(); + } + public function getCampusAll(){ $campusModel = new Campus(); return $campusModel->select()->toArray(); diff --git a/niucloud/app/service/admin/six_speed/SixSpeedService.php b/niucloud/app/service/admin/six_speed/SixSpeedService.php index 3797b679..8e6c224f 100644 --- a/niucloud/app/service/admin/six_speed/SixSpeedService.php +++ b/niucloud/app/service/admin/six_speed/SixSpeedService.php @@ -12,6 +12,8 @@ namespace app\service\admin\six_speed; use app\model\six_speed\SixSpeed; +use app\model\personnel\Personnel; +use app\model\customer_resources\CustomerResources; use core\base\BaseAdminService; @@ -39,7 +41,7 @@ class SixSpeedService extends BaseAdminService $field = 'id,purchase_power,concept_awareness,preferred_class_time,distance,communication,promised_visit_time,actual_visit_time,call_intent,first_visit_status,second_visit_status,is_closed,staff_id,resource_id,created_at,updated_at,deleted_at'; $order = 'id desc'; - $search_model = $this->model->withSearch(["id","purchase_power","concept_awareness","preferred_class_time","distance","communication","promised_visit_time","actual_visit_time","call_intent","first_visit_status","second_visit_status","is_closed","staff_id","resource_id"], $where)->field($field)->order($order); + $search_model = $this->model->withSearch([], $where)->with(['personnel','customerResources'])->field($field)->order($order); $list = $this->pageQuery($search_model); return $list; } @@ -53,7 +55,7 @@ class SixSpeedService extends BaseAdminService { $field = 'id,purchase_power,concept_awareness,preferred_class_time,distance,communication,promised_visit_time,actual_visit_time,call_intent,first_visit_status,second_visit_status,is_closed,staff_id,resource_id,created_at,updated_at,deleted_at'; - $info = $this->model->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray(); + $info = $this->model->field($field)->where([['id', "=", $id]])->with(['personnel','customerResources'])->findOrEmpty()->toArray(); return $info; } @@ -95,5 +97,15 @@ class SixSpeedService extends BaseAdminService } + public function getPersonnelAll(){ + $personnelModel = new Personnel(); + return $personnelModel->select()->toArray(); + } + + public function getCustomerResourcesAll(){ + $customerResourcesModel = new CustomerResources(); + return $customerResourcesModel->select()->toArray(); + } + } diff --git a/niucloud/app/service/admin/venue/VenueService.php b/niucloud/app/service/admin/venue/VenueService.php index c5ee49ac..7817271f 100644 --- a/niucloud/app/service/admin/venue/VenueService.php +++ b/niucloud/app/service/admin/venue/VenueService.php @@ -40,7 +40,7 @@ class VenueService extends BaseAdminService $field = 'id,campus_id,venue_name,capacity,availability_status,time_range_type,time_range_start,time_range_end,fixed_time_ranges,created_at,updated_at,deleted_at'; $order = 'updated_at desc'; - $search_model = $this->model->withSearch(["campus_id","venue_name","capacity","availability_status","time_range_type","created_at","updated_at"], $where)->with(['campus'])->field($field)->order($order); + $search_model = $this->model->withSearch(["campus_id", "venue_name", "capacity", "availability_status", "time_range_type", "created_at", "updated_at"], $where)->with(['campus'])->field($field)->order($order); $list = $this->pageQuery($search_model); return $list; } @@ -55,8 +55,9 @@ class VenueService extends BaseAdminService $field = 'id,campus_id,venue_name,capacity,availability_status,time_range_type,time_range_start,time_range_end,fixed_time_ranges,created_at,updated_at,deleted_at'; $info = $this->model->field($field)->where([['id', "=", $id]])->with(['campus'])->findOrEmpty()->toArray(); - $info['availability_status'] = strval($info['availability_status']); - $info['time_range_type'] = strval($info['time_range_type']); + $info['availability_status'] = strval($info['availability_status']); + $info['time_range_type'] = strval($info['time_range_type']); + $info['fixed_time_ranges'] = json_decode($info['fixed_time_ranges'], true); return $info; } @@ -67,6 +68,10 @@ class VenueService extends BaseAdminService */ public function add(array $data) { + if ($data['time_range_type'] === 'fixed') { + $data['fixed_time_ranges'] = json_encode($data['fixed_time_ranges']); + } + $res = $this->model->create($data); return $res->id; @@ -80,6 +85,9 @@ class VenueService extends BaseAdminService */ public function edit(int $id, array $data) { + if ($data['time_range_type'] === 'fixed') { + $data['fixed_time_ranges'] = json_encode($data['fixed_time_ranges']); + } $this->model->where([['id', '=', $id]])->update($data); return true; @@ -97,10 +105,11 @@ class VenueService extends BaseAdminService return $res; } - - public function getCampusAll(){ - $campusModel = new Campus(); - return $campusModel->select()->toArray(); + + public function getCampusAll() + { + $campusModel = new Campus(); + return $campusModel->select()->toArray(); } diff --git a/niucloud/app/service/api/apiService/TeachingResearchService.php b/niucloud/app/service/api/apiService/TeachingResearchService.php new file mode 100644 index 00000000..2ebfbc18 --- /dev/null +++ b/niucloud/app/service/api/apiService/TeachingResearchService.php @@ -0,0 +1,81 @@ +model = new Personnel(); + } + + //获取教研管理文章列表 + public function list($id,$table_type){ + $field = 'id,title,image,type,content,status,create_time,update_time,delete_time,table_type,user_permission,url'; + $order = 'id desc'; + $LessonCourseTeaching = new LessonCourseTeaching(); + $where = []; + if ($table_type) { + $where[] = ['table_type','=',$table_type]; + } + if ($id !== null && $id !== '') { + $where[] = [Db::raw("FIND_IN_SET($id, user_permission)"), '>', 0]; + } + $search_model = $LessonCourseTeaching->where($where)->field($field)->order($order); + $list = $this->pageQuery($search_model); + return $list; + } + + //获取教研管理文章详情 + public function info($id){ + $field = 'id,title,image,type,content,status,create_time,update_time,delete_time,table_type,user_permission,url'; + $LessonCourseTeaching = new LessonCourseTeaching(); + $info = $LessonCourseTeaching->field($field)->where([['id', "=", $id]])->findOrEmpty()->toArray(); + if (is_array($info) && isset($info['type']) && $info['type'] == 2 && !empty($info['url']) && is_string($info['url'])) { + $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? "https://" : "http://"; + $domain = $_SERVER['HTTP_HOST'] ?? $_SERVER['SERVER_NAME'] ?? 'localhost'; + $info['url'] = $protocol . $domain . '/' . $info['url']; + } + + return $info; + } + + //获取能看的教研管理类型 + public function lookType($id){ + $LessonCourseTeaching = new LessonCourseTeaching(); + $where = []; + if ($id !== null && $id !== '') { + $where[] = [Db::raw("FIND_IN_SET($id, user_permission)"), '>', 0]; + } + $list = $LessonCourseTeaching->where($where)->distinct(true)->column('table_type'); + return $list; + } +} diff --git a/niucloud/app/validate/class/Class.php b/niucloud/app/validate/classroom/Classroom.php similarity index 56% rename from niucloud/app/validate/class/Class.php rename to niucloud/app/validate/classroom/Classroom.php index c35d5110..ce9c19de 100644 --- a/niucloud/app/validate/class/Class.php +++ b/niucloud/app/validate/classroom/Classroom.php @@ -9,43 +9,35 @@ // | Author: Niucloud Team // +---------------------------------------------------------------------- -namespace app\validate\class; +namespace app\validate\classroom; use core\base\BaseValidate; /** - * 班级验证器 - * Class Class - * @package addon\app\validate\class + * 场地管理验证器 + * Class Classroom + * @package addon\app\validate\classroom */ -class Class extends BaseValidate +class Classroom extends BaseValidate { protected $rule = [ 'campus_id' => 'require', - 'campus_name' => 'require', 'class_name' => 'require', 'head_coach' => 'require', - 'age_group' => 'require', 'class_type' => 'require', - 'assistant_coach' => 'require', 'status' => 'require', - 'sort_order' => 'require', ]; protected $message = [ 'campus_id.require' => ['common_validate.require', ['campus_id']], - 'campus_name.require' => ['common_validate.require', ['campus_name']], 'class_name.require' => ['common_validate.require', ['class_name']], 'head_coach.require' => ['common_validate.require', ['head_coach']], - 'age_group.require' => ['common_validate.require', ['age_group']], 'class_type.require' => ['common_validate.require', ['class_type']], - 'assistant_coach.require' => ['common_validate.require', ['assistant_coach']], 'status.require' => ['common_validate.require', ['status']], - 'sort_order.require' => ['common_validate.require', ['sort_order']], ]; protected $scene = [ - "add" => ['campus_id', 'campus_name', 'class_name', 'head_coach', 'age_group', 'class_type', 'assistant_coach', 'created_at', 'updated_at', 'deleted_at', 'status', 'sort_order', 'remarks'], - "edit" => ['campus_id', 'campus_name', 'class_name', 'head_coach', 'age_group', 'class_type', 'assistant_coach', 'created_at', 'updated_at', 'deleted_at', 'status', 'sort_order', 'remarks'] + "add" => ['campus_id', 'class_name', 'head_coach', 'age_group', 'class_type', 'assistant_coach', 'status', 'sort_order', 'remarks'], + "edit" => ['campus_id', 'class_name', 'head_coach', 'age_group', 'class_type', 'assistant_coach', 'status', 'sort_order', 'remarks'] ]; } diff --git a/niucloud/app/validate/personnel/Personnel.php b/niucloud/app/validate/personnel/Personnel.php index 401c40b9..283ceff3 100644 --- a/niucloud/app/validate/personnel/Personnel.php +++ b/niucloud/app/validate/personnel/Personnel.php @@ -28,12 +28,12 @@ class Personnel extends BaseValidate ]; protected $message = [ - 'name.require' => ['common_validate.require', ['name']], - 'phone.require' => ['common_validate.require', ['phone']], - 'phone.mobile' => ['common_validate.mobile', ['phone']], - 'emergency_contact_phone.mobile' => ['common_validate.mobile', ['emergency_contact_phone']], - 'status.require' => ['common_validate.require', ['status']], - 'is_sys_user.require' => ['common_validate.require', ['is_sys_user']], + 'name.require' => ['名称不能为空', ['name']], + 'phone.require' => ['手机号不能为空', ['phone']], + 'phone.mobile' => ['手机号格式错误', ['phone']], + 'emergency_contact_phone.mobile' => ['紧急联系人手机号格式错误', ['emergency_contact_phone']], + 'status.require' => ['状态不能为空', ['status']], + 'is_sys_user.require' => ['是否登录系统不能为空', ['is_sys_user']], ]; protected $scene = [ diff --git a/niucloud/app/validate/six_speed/SixSpeed.php b/niucloud/app/validate/six_speed/SixSpeed.php index 73ae076f..3f636e9b 100644 --- a/niucloud/app/validate/six_speed/SixSpeed.php +++ b/niucloud/app/validate/six_speed/SixSpeed.php @@ -28,8 +28,6 @@ class SixSpeed extends BaseValidate 'promised_visit_time' => 'require', 'call_intent' => 'require', 'is_closed' => 'require', - 'staff_id' => 'require', - 'resource_id' => 'require', ]; protected $message = [ @@ -41,13 +39,11 @@ class SixSpeed extends BaseValidate 'promised_visit_time.require' => ['common_validate.require', ['promised_visit_time']], 'call_intent.require' => ['common_validate.require', ['call_intent']], 'is_closed.require' => ['common_validate.require', ['is_closed']], - 'staff_id.require' => ['common_validate.require', ['staff_id']], - 'resource_id.require' => ['common_validate.require', ['resource_id']], ]; protected $scene = [ - "add" => ['purchase_power', 'concept_awareness', 'preferred_class_time', 'distance', 'communication', 'promised_visit_time', 'actual_visit_time', 'call_intent', 'first_visit_status', 'second_visit_status', 'is_closed', 'staff_id', 'resource_id'], - "edit" => ['purchase_power', 'concept_awareness', 'preferred_class_time', 'distance', 'communication', 'promised_visit_time', 'actual_visit_time', 'call_intent', 'first_visit_status', 'second_visit_status', 'is_closed', 'staff_id', 'resource_id'] + "add" => ['purchase_power', 'concept_awareness', 'preferred_class_time', 'distance', 'communication', 'promised_visit_time', 'actual_visit_time', 'call_intent', 'first_visit_status', 'second_visit_status', 'is_closed'], + "edit" => ['purchase_power', 'concept_awareness', 'preferred_class_time', 'distance', 'communication', 'promised_visit_time', 'actual_visit_time', 'call_intent', 'first_visit_status', 'second_visit_status', 'is_closed'] ]; }