diff --git a/components.d.ts b/components.d.ts index d8b8a47250bc2d057a5892913ef2bba29a071cd4..d8212c3eadfd4e189cdd75ef2b5f5b6ed12db891 100644 --- a/components.d.ts +++ b/components.d.ts @@ -13,6 +13,7 @@ declare module 'vue' { AppHeader: typeof import('./src/components/AppHeader.vue')['default'] AppIssue: typeof import('./src/components/AppIssue.vue')['default'] AppPull: typeof import('./src/components/AppPull.vue')['default'] + AppVerify: typeof import('./src/components/AppVerify.vue')['default'] DocAnchor: typeof import('./src/components/DocAnchor.vue')['default'] ElCard: typeof import('element-plus/es')['ElCard'] ElCheckbox: typeof import('element-plus/es')['ElCheckbox'] @@ -37,7 +38,6 @@ declare module 'vue' { ElTabPane: typeof import('element-plus/es')['ElTabPane'] ElTabs: typeof import('element-plus/es')['ElTabs'] ElTree: typeof import('element-plus/es')['ElTree'] - HeaderNav: typeof import('./src/components/HeaderNav.vue')['default'] ONav: typeof import('./src/components/ONav.vue')['default'] RouterLink: typeof import('vue-router')['RouterLink'] RouterView: typeof import('vue-router')['RouterView'] diff --git a/package.json b/package.json index 56461011916a53429b94a046a8b044154c12e961..22a981a612225b311bcd230716afb0f2a51bb4e7 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,11 @@ "type": "module", "pnpm": { "overrides": { - "glob-parent": "5.1.2" + "glob-parent": "5.1.2", + "katex": "0.16.10", + "markdown-it": "12.3.2", + "postcss": "8.4.31", + "semver": "6.3.1" } }, "scripts": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 09ecdf195990fd0426dece9077c8c16e84e98aae..bd2bff59421c3039dca6a9d15d5419ab70a9996a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,6 +6,10 @@ settings: overrides: glob-parent: 5.1.2 + katex: 0.16.10 + markdown-it: 12.3.2 + postcss: 8.4.31 + semver: 6.3.1 dependencies: '@kangc/v-md-editor': @@ -159,7 +163,7 @@ packages: debug: 4.3.4 gensync: 1.0.0-beta.2 json5: 2.2.3 - semver: 6.3.0 + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true @@ -192,7 +196,7 @@ packages: '@babel/helper-validator-option': 7.21.0 browserslist: 4.21.5 lru-cache: 5.1.1 - semver: 6.3.0 + semver: 6.3.1 dev: true /@babel/helper-create-class-features-plugin@7.21.8(@babel/core@7.21.8): @@ -210,7 +214,7 @@ packages: '@babel/helper-replace-supers': 7.21.5 '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 '@babel/helper-split-export-declaration': 7.18.6 - semver: 6.3.0 + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true @@ -615,7 +619,7 @@ packages: copy-to-clipboard: 3.3.3 highlight.js: 10.7.3 insert-text-at-cursor: 0.3.0 - katex: 0.13.24 + katex: 0.16.10 markdown-it: 12.3.2 markdown-it-attrs: 4.1.6(markdown-it@12.3.2) markdown-it-container: 3.0.0 @@ -800,7 +804,7 @@ packages: grapheme-splitter: 1.0.4 ignore: 5.2.4 natural-compare-lite: 1.4.0 - semver: 7.5.1 + semver: 6.3.1 tsutils: 3.21.0(typescript@4.9.5) typescript: 4.9.5 transitivePeerDependencies: @@ -874,7 +878,7 @@ packages: debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 - semver: 7.5.1 + semver: 6.3.1 tsutils: 3.21.0(typescript@4.9.5) typescript: 4.9.5 transitivePeerDependencies: @@ -895,7 +899,7 @@ packages: '@typescript-eslint/typescript-estree': 5.59.6(typescript@4.9.5) eslint: 8.41.0 eslint-scope: 5.1.1 - semver: 7.5.1 + semver: 6.3.1 transitivePeerDependencies: - supports-color - typescript @@ -967,7 +971,7 @@ packages: /@volar/typescript-faster@0.40.13: resolution: {integrity: sha512-uy+TlcFkKoNlKEnxA4x5acxdxLyVDIXGSc8cYDNXpPKjBKXrQaetzCzlO3kVBqu1VLMxKNGJMTKn35mo+ILQmw==} dependencies: - semver: 7.5.1 + semver: 6.3.1 dev: true /@volar/vue-language-core@0.40.13: @@ -1036,7 +1040,7 @@ packages: '@vue/shared': 3.3.4 estree-walker: 2.0.2 magic-string: 0.30.0 - postcss: 8.4.23 + postcss: 8.4.31 source-map-js: 1.0.2 /@vue/compiler-ssr@3.3.4: @@ -1139,9 +1143,9 @@ packages: resolution: {integrity: sha512-sXTLjeZzH8SQuAL5AEH0hhsMljjNJbzWbBvzaj5yQCCdf+3sp/dJ0kwnBSnQjFPPnzPg5t3tLKGUYHyW0KiKzA==} dependencies: '@vuepress/shared-utils': 1.9.10 - markdown-it: 8.4.2 - markdown-it-anchor: 5.3.0(markdown-it@8.4.2) - markdown-it-chain: 1.3.0(markdown-it@8.4.2) + markdown-it: 12.3.2 + markdown-it-anchor: 5.3.0(markdown-it@12.3.2) + markdown-it-chain: 1.3.0(markdown-it@12.3.2) markdown-it-emoji: 1.4.0 markdown-it-table-of-contents: 0.4.4 prismjs: 1.29.0 @@ -1158,7 +1162,7 @@ packages: globby: 9.2.0 gray-matter: 4.0.3 hash-sum: 1.0.2 - semver: 6.3.0 + semver: 6.3.1 toml: 3.0.0 upath: 1.2.0 transitivePeerDependencies: @@ -2096,10 +2100,6 @@ packages: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: true - /entities@1.1.2: - resolution: {integrity: sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==} - dev: false - /entities@2.1.0: resolution: {integrity: sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==} dev: false @@ -2378,7 +2378,7 @@ packages: natural-compare: 1.4.0 nth-check: 2.1.1 postcss-selector-parser: 6.0.13 - semver: 7.5.1 + semver: 6.3.1 vue-eslint-parser: 9.3.0(eslint@8.41.0) xml-name-validator: 4.0.0 transitivePeerDependencies: @@ -3178,13 +3178,6 @@ packages: graceful-fs: 4.2.11 dev: false - /katex@0.13.24: - resolution: {integrity: sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==} - hasBin: true - dependencies: - commander: 8.3.0 - dev: false - /katex@0.16.10: resolution: {integrity: sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==} hasBin: true @@ -3241,12 +3234,6 @@ packages: engines: {node: '>=10'} dev: true - /linkify-it@2.2.0: - resolution: {integrity: sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==} - dependencies: - uc.micro: 1.0.6 - dev: false - /linkify-it@3.0.3: resolution: {integrity: sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==} dependencies: @@ -3346,13 +3333,6 @@ packages: yallist: 3.1.1 dev: true - /lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} - dependencies: - yallist: 4.0.0 - dev: true - /magic-string@0.26.7: resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==} engines: {node: '>=12'} @@ -3392,30 +3372,30 @@ packages: object-visit: 1.0.1 dev: false - /markdown-it-anchor@5.3.0(markdown-it@8.4.2): + /markdown-it-anchor@5.3.0(markdown-it@12.3.2): resolution: {integrity: sha512-/V1MnLL/rgJ3jkMWo84UR+K+jF1cxNG1a+KwqeXqTIJ+jtA8aWSHuigx8lTzauiIjBDbwF3NcWQMotd0Dm39jA==} peerDependencies: - markdown-it: '*' + markdown-it: 12.3.2 dependencies: - markdown-it: 8.4.2 + markdown-it: 12.3.2 dev: false /markdown-it-attrs@4.1.6(markdown-it@12.3.2): resolution: {integrity: sha512-O7PDKZlN8RFMyDX13JnctQompwrrILuz2y43pW2GagcwpIIElkAdfeek+erHfxUOlXWPsjFeWmZ8ch1xtRLWpA==} engines: {node: '>=6'} peerDependencies: - markdown-it: '>= 9.0.0' + markdown-it: 12.3.2 dependencies: markdown-it: 12.3.2 dev: false - /markdown-it-chain@1.3.0(markdown-it@8.4.2): + /markdown-it-chain@1.3.0(markdown-it@12.3.2): resolution: {integrity: sha512-XClV8I1TKy8L2qsT9iX3qiV+50ZtcInGXI80CA+DP62sMs7hXlyV/RM3hfwy5O3Ad0sJm9xIwQELgANfESo8mQ==} engines: {node: '>=6.9'} peerDependencies: - markdown-it: '>=5.0.0' + markdown-it: 12.3.2 dependencies: - markdown-it: 8.4.2 + markdown-it: 12.3.2 webpack-chain: 4.12.1 dev: false @@ -3443,17 +3423,6 @@ packages: uc.micro: 1.0.6 dev: false - /markdown-it@8.4.2: - resolution: {integrity: sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==} - hasBin: true - dependencies: - argparse: 1.0.10 - entities: 1.1.2 - linkify-it: 2.2.0 - mdurl: 1.0.1 - uc.micro: 1.0.6 - dev: false - /mdast-util-from-markdown@1.3.1: resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==} dependencies: @@ -4051,8 +4020,8 @@ packages: util-deprecate: 1.0.2 dev: true - /postcss@8.4.23: - resolution: {integrity: sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==} + /postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.6 @@ -4252,18 +4221,10 @@ packages: kind-of: 6.0.3 dev: false - /semver@6.3.0: - resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} + /semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - /semver@7.5.1: - resolution: {integrity: sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: true - /set-value@2.0.1: resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==} engines: {node: '>=0.10.0'} @@ -4872,7 +4833,7 @@ packages: dependencies: '@types/node': 18.16.14 esbuild: 0.15.18 - postcss: 8.4.23 + postcss: 8.4.31 resolve: 1.22.2 rollup: 2.79.1 sass: 1.62.1 @@ -4908,7 +4869,7 @@ packages: espree: 9.5.2 esquery: 1.5.0 lodash: 4.17.21 - semver: 7.5.1 + semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true @@ -5035,10 +4996,6 @@ packages: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} dev: true - /yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - dev: true - /yaml@2.2.2: resolution: {integrity: sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==} engines: {node: '>= 14'} diff --git a/src/api/api-quick-issue.ts b/src/api/api-quick-issue.ts index 801156fb9a237404e0603d4aa046e1a5c2b2a602..90aa0dc7a682b98dd9ccc5d3fa6cf4662e792c07 100644 --- a/src/api/api-quick-issue.ts +++ b/src/api/api-quick-issue.ts @@ -21,9 +21,7 @@ export function getRepoIssue(params: IssueQueryData) { params.issue_state = params.issue_state.join(','); params.milestone = params.milestone.join(','); } - return request - .get(url, { params }) - .then((res: AxiosResponse) => res.data) + return request.get(url, { params }).then((res: AxiosResponse) => res.data); } /** * 获取筛选条件 @@ -33,9 +31,7 @@ export function getRepoIssue(params: IssueQueryData) { export function getIssueSelectOption(type: string, params: object | null) { type === 'exLabels' ? (type = 'labels') : ''; const url = `/api-issues/issues/${type}`; - return request - .get(url, { params }) - .then((res: AxiosResponse) => res.data) + return request.get(url, { params }).then((res: AxiosResponse) => res.data); } /** @@ -61,9 +57,7 @@ export function uploadIssueImage(params: object) { */ export function getReposData(params: object) { const url = `/api-issues/repos/`; - return request - .get(url, { params }) - .then((res: AxiosResponse) => res.data) + return request.get(url, { params }).then((res: AxiosResponse) => res.data); } /** * 创建issue @@ -72,9 +66,7 @@ export function getReposData(params: object) { */ export function createIssue(params: object) { const url = `/api-issues/new-issue/`; - return request - .post(url, params) - .then((res: AxiosResponse) => res.data) + return request.post(url, params).then((res: AxiosResponse) => res.data); } /** @@ -84,9 +76,7 @@ export function createIssue(params: object) { */ export function getLabelColors() { const url = '/api-issues/colors'; - return request - .get(url) - .then((res: AxiosResponse) => res.data) + return request.get(url).then((res: AxiosResponse) => res.data); } /** * 获取pull 数据 @@ -101,9 +91,7 @@ export function getRepoPull(params: any) { params.state = params.state.join(','); params.exclusion = params.exclusion.join(','); } - return request - .get(url, { params }) - .then((res: AxiosResponse) => res.data) + return request.get(url, { params }).then((res: AxiosResponse) => res.data); } /** * 获取筛选条件 @@ -113,9 +101,7 @@ export function getRepoPull(params: any) { export function getPrSelectOption(type: string, params: object | null) { type === 'exLabels' ? (type = 'labels') : ''; const url = `/api-issues/pulls/${type}`; - return request - .get(url, { params }) - .then((res: AxiosResponse) => res.data) + return request.get(url, { params }).then((res: AxiosResponse) => res.data); } /** @@ -129,7 +115,11 @@ export function reqGet() { /** * 滑动或者点选验证 */ -export function reqCheck(data: any) { +export function reqCheck(data: { + captcha_id: number; + challenge: number; + email: string; +}) { const url = '/api-issues/verify/check'; return request.post(url, data).then((res: AxiosResponse) => res.data); } diff --git a/src/assets/category/verify/img1.jpg b/src/assets/category/verify/img1.jpg deleted file mode 100644 index ce43f174e54e20549c4cda2dfde0ed579fc21a7d..0000000000000000000000000000000000000000 Binary files a/src/assets/category/verify/img1.jpg and /dev/null differ diff --git a/src/assets/category/verify/img2.jpg b/src/assets/category/verify/img2.jpg deleted file mode 100644 index 1a3bd6d5b142c0dd951b59773bf84a29c800bd3e..0000000000000000000000000000000000000000 Binary files a/src/assets/category/verify/img2.jpg and /dev/null differ diff --git a/src/assets/category/verify/img3.jpg b/src/assets/category/verify/img3.jpg deleted file mode 100644 index 165d36f3e61db2d563f10d93eb64f13cce06f90a..0000000000000000000000000000000000000000 Binary files a/src/assets/category/verify/img3.jpg and /dev/null differ diff --git a/src/assets/category/verify/img4.jpg b/src/assets/category/verify/img4.jpg deleted file mode 100644 index 2046128c3fb02224eeed15b1066b119e40134144..0000000000000000000000000000000000000000 Binary files a/src/assets/category/verify/img4.jpg and /dev/null differ diff --git a/src/assets/category/verify/img5.jpg b/src/assets/category/verify/img5.jpg deleted file mode 100644 index fb4b61502c326b8c0832a618c4847290cc11d7de..0000000000000000000000000000000000000000 Binary files a/src/assets/category/verify/img5.jpg and /dev/null differ diff --git a/src/assets/category/verify/img6.jpg b/src/assets/category/verify/img6.jpg deleted file mode 100644 index c13bb90e7369abf2d0c9c812bb4b2039cac04d9a..0000000000000000000000000000000000000000 Binary files a/src/assets/category/verify/img6.jpg and /dev/null differ diff --git a/src/assets/svg-icons/icon-resetting.svg b/src/assets/svg-icons/icon-resetting.svg new file mode 100644 index 0000000000000000000000000000000000000000..5810a842113ff64d5dc7a5f61d9755038b734a36 --- /dev/null +++ b/src/assets/svg-icons/icon-resetting.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/components/AppFooter.vue b/src/components/AppFooter.vue index 184061ef2b8418542d0cfa5aa9b5a8343d1b307e..c0a1cb6d79743f47b6a1c64e293b36cf155c3821 100644 --- a/src/components/AppFooter.vue +++ b/src/components/AppFooter.vue @@ -21,7 +21,6 @@ import CodeImgXzs from '@/assets/footer/code-xzs.png'; import CodeImgZgz from '@/assets/footer/code-zgz.png'; const { t } = useI18n(); -const router = useRouter(); const lang = computed(() => { return useLangStore().lang; }); diff --git a/src/components/AppHeader.vue b/src/components/AppHeader.vue index 32184fe7deb340cd77d14909900d549ed334ffed..24169447ba0b3eb87cb5fff7d9f3e96b40a38546 100644 --- a/src/components/AppHeader.vue +++ b/src/components/AppHeader.vue @@ -55,7 +55,7 @@ const handleCommand = (command: Ref): void => { watch( () => { - return locale.value as string; + return locale.value as 'zh' | 'en'; }, (val) => { useLangStore().setLangStore(val); diff --git a/src/components/AppIssue.vue b/src/components/AppIssue.vue index 9cd6b38119214c6b3765bdefec4b7619946512d9..262b43213ce8c07391e49423cf742f16642c1fe8 100644 --- a/src/components/AppIssue.vue +++ b/src/components/AppIssue.vue @@ -226,10 +226,8 @@ const handleSizeChange = (val: number) => { totalPage.value = Math.ceil(total.value / val); }; -const handleCheckAllChange = (val: any) => { - (queryData.issue_state as Array) = val - ? ISSUE_CONFIG.ISSUE_STATE - : []; +const handleCheckAllChange = (val: string[]) => { + queryData.issue_state = val ? ISSUE_CONFIG.ISSUE_STATE : []; isIndeterminate.value = false; }; diff --git a/src/components/AppVerify.vue b/src/components/AppVerify.vue new file mode 100644 index 0000000000000000000000000000000000000000..2fd7c7361f4758d92b300d4b11d284b3dfb85e27 --- /dev/null +++ b/src/components/AppVerify.vue @@ -0,0 +1,110 @@ + + + + diff --git a/src/components/DocAnchor.vue b/src/components/DocAnchor.vue index 7df8643019c470bbd8282354ca28b7be3337717c..3b69cd39416df62cefa32848d36fc11681a5279b 100644 --- a/src/components/DocAnchor.vue +++ b/src/components/DocAnchor.vue @@ -30,9 +30,7 @@ function goAnchor() { const topArr: number[] = []; anchorList.value = Array.from(anchorList.value).filter((item: any) => { - return item.className !== 'for-seo' - ? topArr.push(item.offsetTop + item.clientHeight) - : ''; + return topArr.push(item.offsetTop + item.clientHeight); }); for (let i = 0; i < topArr.length; i++) { if (scrollTop - 100 <= topArr[i]) { diff --git a/src/components/HeaderNav.vue b/src/components/HeaderNav.vue deleted file mode 100644 index 0e24d637655983f58b1e32a958590ab040a37609..0000000000000000000000000000000000000000 --- a/src/components/HeaderNav.vue +++ /dev/null @@ -1,225 +0,0 @@ - - - - - diff --git a/src/config/index.ts b/src/config/index.ts index cbfb4d362171573adeea4e0e4fb064143c2a8f0e..bbff8ccc622550396cb969fd640a2366619cdf84 100644 --- a/src/config/index.ts +++ b/src/config/index.ts @@ -13,8 +13,10 @@ import LogoLinkedin from '@/assets/footer/linkedin@2x.png'; import LogoYoutube from '@/assets/footer/youtube@2x.png'; import LogoTwitter from '@/assets/footer/twitter@2x.png'; + + // 友情链接 -export const linksData: any = { +export const linksData = { zh: [ { path: 'https://my.oschina.net/openeuler', @@ -76,7 +78,7 @@ export const linksData: any = { ], }; // 隐私链接 -export const linksData2: any = { +export const linksData2 = { zh: [ { NAME: '品牌', diff --git a/src/i18n/quick-issue/quick-issue-en.ts b/src/i18n/quick-issue/quick-issue-en.ts index 4c753164ca4dadb69d15f5d7b34ea194aaa9fd3f..293ad5062fe16acb618642c2ebf44400b9781aba 100644 --- a/src/i18n/quick-issue/quick-issue-en.ts +++ b/src/i18n/quick-issue/quick-issue-en.ts @@ -60,8 +60,10 @@ export default { SUCCESS_UPLOAD: 'Attachment uploaded successfully', SUCCESS_UPLOAD1: 'The issue is created but the attachment fails to be uploaded', - SWIPE_RIGHT: 'Swipe right to complete the verification.', - SWIPER: 'Slide for verification', VERIFY_FAIL: 'Verification failed.', VERIFY_SUCCESS: 'Verification succeeds in', + VERIFY_TITLE: 'Please complete the verification code', + VERIFY_PLH: 'Please enter the numbers in the image', + VERIFY_CONFIRM: 'Confirm', + VERIFY_CANCEL: 'Cancel', }; diff --git a/src/i18n/quick-issue/quick-issue-zh.ts b/src/i18n/quick-issue/quick-issue-zh.ts index 7ac48c0645746212962be264359f5b7d55ebf044..806148269bb799e6d6949e18e7473d54adb9b3e8 100644 --- a/src/i18n/quick-issue/quick-issue-zh.ts +++ b/src/i18n/quick-issue/quick-issue-zh.ts @@ -59,8 +59,10 @@ export default { SIZE_LIMIT: '附件不得超过10MB,请重新选择文件。', SUCCESS_UPLOAD: '附件上传成功', SUCCESS_UPLOAD1: 'Issue 创建成功,附件上传失败!', - SWIPE_RIGHT: '向右滑动完成验证', - SWIPER: '请拖动滑块完成人机校验', VERIFY_FAIL: '验证失败', VERIFY_SUCCESS: '验证成功', + VERIFY_TITLE: '请完成验证码', + VERIFY_PLH: '请输入图片中的数字', + VERIFY_CONFIRM: '确定', + VERIFY_CANCEL: '取消', }; diff --git a/src/i18n/sig/sig-en.ts b/src/i18n/sig/sig-en.ts index c25d1211d476ff7dc2d146a3e68b1f8d308a78dd..2163b05b1c238efe00accf570f9ce2bce768f4d9 100644 --- a/src/i18n/sig/sig-en.ts +++ b/src/i18n/sig/sig-en.ts @@ -2,329 +2,9 @@ export default { SIG_LANDSCAPE: [ { CATEGORY_NAME: 'Code Repository Management/Technology Innovation', - SUB_LIST: [ - { - SUB_CATEGORY_NAME: 'Industry Solutions/Applications', - COLOR: '#7f6ffe', - LIST: [ - { - NAME: 'sig-bio', - }, - { - NAME: 'sig-ROS', - }, - { - NAME: 'sig-android-middleware', - }, - { - NAME: 'Application', - }, - { - NAME: 'sig-industrial-control', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'General-Purpose Middleware', - COLOR: '#db7c61', - LIST: [ - { - NAME: 'sig-embedded', - }, - { - NAME: 'sig-OpenResty', - }, - { - NAME: 'sig-cms', - }, - { - NAME: 'DB', - }, - { - NAME: 'sig-Ha', - }, - { - NAME: 'sig-ai-bigdata', - }, - { - NAME: 'sig-compat-winapp', - }, - { - NAME: 'sig-ceph', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Toolchains/Languages/Running', - COLOR: '#505d75', - LIST: [ - { - NAME: 'sig-Rust', - }, - { - NAME: 'sig-perl-modules', - }, - { - NAME: 'sig-python-modules', - }, - { - NAME: 'sig-Java', - }, - { - NAME: 'sig-nodejs', - }, - { - NAME: 'dev-utils', - }, - { - NAME: 'Runtime', - }, - { - NAME: 'sig-libboundscheck', - }, - { - NAME: 'System-tool', - }, - { - NAME: 'sig-golang', - }, - { - NAME: 'sig-ruby', - }, - { - NAME: 'Compiler', - }, - { - NAME: 'Programming-language', - IS_WIDER: 1, - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Architecture/Processor/Core/Driver', - COLOR: '#fec456', - LIST: [ - { - NAME: 'sig-RaspberryPi', - }, - { - NAME: 'sig-RISC-V', - }, - { - NAME: 'sig-aarch32', - }, - { - NAME: 'Kernel', - }, - { - NAME: 'sig-WayCa', - }, - { - NAME: 'sig-DyscheOS', - }, - { - NAME: 'sig-REDF', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Cloud Native Infrastructure', - COLOR: '#4d7dff', - LIST: [ - { - NAME: 'sig-CloudNative', - }, - { - NAME: 'sig-ONL', - }, - { - NAME: 'sig-openstack', - }, - { - NAME: 'sig-OKD', - }, - { - NAME: 'Virt', - }, - { - NAME: 'iSulad', - }, - { - NAME: 'oVirt', - }, - { - NAME: 'sig-KubeSphere', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Desktop/Graphics System', - COLOR: '#8e9aaf', - LIST: [ - { - NAME: 'sig-mate-desktop', - }, - { - NAME: 'sig-desktop-apps', - }, - { - NAME: 'Desktop', - }, - { - NAME: 'GNOME', - }, - { - NAME: 'sig-KDE', - }, - { - NAME: 'xfce', - }, - { - NAME: 'sig-DDE', - }, - { - NAME: 'sig-UKUI', - }, - { - NAME: 'sig-KIRAN-DESKTOP', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Basic Functions/Features/Tools', - COLOR: '#2a9d8f', - LIST: [ - { - NAME: 'A-Tune', - }, - { - NAME: 'Storage', - }, - { - NAME: 'Base-service', - }, - { - NAME: 'Computing', - }, - { - NAME: 'sig-ops', - }, - { - NAME: 'sig-bootstrap', - }, - { - NAME: 'Networking', - }, - { - NAME: 'sig-security-facility', - }, - { - NAME: 'sig-high-performance-network', - IS_WIDER: 1, - }, - { - NAME: 'sig-confidential-computing', - IS_WIDER: 1, - }, - ], - }, - ], }, { CATEGORY_NAME: 'Community Governance and Operations', - SUB_LIST: [ - { - SUB_CATEGORY_NAME: 'Community Ecological Progress', - COLOR: '#8e583d', - LIST: [ - { - NAME: 'Marketing', - }, - { - NAME: 'sig-minzuchess', - }, - { - NAME: 'sig-Compatibility-Infra', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Version Release Related', - COLOR: '#cec79a', - LIST: [ - { - NAME: 'sig-QA', - }, - { - NAME: 'doc', - }, - { - NAME: 'sig-release-management', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Build Systems/Tools/Dependencies', - COLOR: '#19647e', - LIST: [ - { - NAME: 'sig-OS-Builder', - }, - { - NAME: 'sig-Ostree-Assembly', - }, - ], - }, - { - SUB_CATEGORY_NAME: - 'Security Committee/Technical Committee/Community Secretariat', - COLOR: '#73c0de', - LIST: [ - { - NAME: 'TC', - }, - { - NAME: 'sig-Community', - }, - { - NAME: 'security-committee', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Software Package Management', - COLOR: '#4c3e72', - LIST: [ - { - NAME: 'Packaging', - }, - { - NAME: 'sig-recycle', - }, - { - NAME: 'sig-EasyLife', - }, - ], - }, - { - SUB_CATEGORY_NAME: 'Community Infrastructure', - COLOR: '#c44e4e', - LIST: [ - { - NAME: 'Infrastructure', - }, - { - NAME: 'sig-CICD', - }, - { - NAME: 'sig-Gatekeeper', - }, - { - NAME: 'security-committee', - }, - ], - }, - ], }, ], }; diff --git a/src/i18n/sig/sig-zh.ts b/src/i18n/sig/sig-zh.ts index d38ae1155cc31cabe648b048f31b3adb5203f457..312781cfd758f166c4128433a6825785c321585d 100644 --- a/src/i18n/sig/sig-zh.ts +++ b/src/i18n/sig/sig-zh.ts @@ -2,328 +2,9 @@ export default { SIG_LANDSCAPE: [ { CATEGORY_NAME: '代码仓管理/技术创新', - SUB_LIST: [ - { - SUB_CATEGORY_NAME: '行业解决方案/应用', - COLOR: '#7f6ffe', - LIST: [ - { - NAME: 'sig-bio', - }, - { - NAME: 'sig-ROS', - }, - { - NAME: 'sig-android-middleware', - }, - { - NAME: 'Application', - }, - { - NAME: 'sig-industrial-control', - }, - ], - }, - { - SUB_CATEGORY_NAME: '通用中间组件', - COLOR: '#db7c61', - LIST: [ - { - NAME: 'sig-embedded', - }, - { - NAME: 'sig-OpenResty', - }, - { - NAME: 'sig-cms', - }, - { - NAME: 'DB', - }, - { - NAME: 'sig-Ha', - }, - { - NAME: 'sig-ai-bigdata', - }, - { - NAME: 'sig-compat-winapp', - }, - { - NAME: 'sig-ceph', - }, - ], - }, - { - SUB_CATEGORY_NAME: '工具链/语言/运行', - COLOR: '#505d75', - LIST: [ - { - NAME: 'sig-Rust', - }, - { - NAME: 'sig-perl-modules', - }, - { - NAME: 'sig-python-modules', - }, - { - NAME: 'sig-Java', - }, - { - NAME: 'sig-nodejs', - }, - { - NAME: 'dev-utils', - }, - { - NAME: 'Runtime', - }, - { - NAME: 'sig-libboundscheck', - }, - { - NAME: 'System-tool', - }, - { - NAME: 'sig-golang', - }, - { - NAME: 'sig-ruby', - }, - { - NAME: 'Compiler', - }, - { - NAME: 'Programming-language', - IS_WIDER: 1, - }, - ], - }, - { - SUB_CATEGORY_NAME: '架构/处理器/内核/驱动', - COLOR: '#fec456', - LIST: [ - { - NAME: 'sig-RaspberryPi', - }, - { - NAME: 'sig-RISC-V', - }, - { - NAME: 'sig-aarch32', - }, - { - NAME: 'Kernel', - }, - { - NAME: 'sig-WayCa', - }, - { - NAME: 'sig-DyscheOS', - }, - { - NAME: 'sig-REDF', - }, - ], - }, - { - SUB_CATEGORY_NAME: '云原生基础设施', - COLOR: '#4d7dff', - LIST: [ - { - NAME: 'sig-CloudNative', - }, - { - NAME: 'sig-ONL', - }, - { - NAME: 'sig-openstack', - }, - { - NAME: 'sig-OKD', - }, - { - NAME: 'Virt', - }, - { - NAME: 'iSulad', - }, - { - NAME: 'oVirt', - }, - { - NAME: 'sig-KubeSphere', - }, - ], - }, - { - SUB_CATEGORY_NAME: '桌面/图形系统', - COLOR: '#8e9aaf', - LIST: [ - { - NAME: 'sig-mate-desktop', - }, - { - NAME: 'sig-desktop-apps', - }, - { - NAME: 'Desktop', - }, - { - NAME: 'GNOME', - }, - { - NAME: 'sig-KDE', - }, - { - NAME: 'xfce', - }, - { - NAME: 'sig-DDE', - }, - { - NAME: 'sig-UKUI', - }, - { - NAME: 'sig-KIRAN-DESKTOP', - }, - ], - }, - { - SUB_CATEGORY_NAME: '基础功能/特性/工具', - COLOR: '#2a9d8f', - LIST: [ - { - NAME: 'A-Tune', - }, - { - NAME: 'Storage', - }, - { - NAME: 'Base-service', - }, - { - NAME: 'Computing', - }, - { - NAME: 'sig-ops', - }, - { - NAME: 'sig-bootstrap', - }, - { - NAME: 'Networking', - }, - { - NAME: 'sig-security-facility', - }, - { - NAME: 'sig-high-performance-network', - IS_WIDER: 1, - }, - { - NAME: 'sig-confidential-computing', - IS_WIDER: 1, - }, - ], - }, - ], }, { CATEGORY_NAME: '社区治理运营', - SUB_LIST: [ - { - SUB_CATEGORY_NAME: '社区生态进展', - COLOR: '#8e583d', - LIST: [ - { - NAME: 'Marketing', - }, - { - NAME: 'sig-minzuchess', - }, - { - NAME: 'sig-Compatibility-Infra', - }, - ], - }, - { - SUB_CATEGORY_NAME: '版本发行相关', - COLOR: '#cec79a', - LIST: [ - { - NAME: 'sig-QA', - }, - { - NAME: 'doc', - }, - { - NAME: 'sig-release-management', - }, - ], - }, - { - SUB_CATEGORY_NAME: '构建系统/工具/依赖', - COLOR: '#19647e', - LIST: [ - { - NAME: 'sig-OS-Builder', - }, - { - NAME: 'sig-Ostree-Assembly', - }, - ], - }, - { - SUB_CATEGORY_NAME: '安全委员会/技术委员会/社区秘书处', - COLOR: '#73c0de', - LIST: [ - { - NAME: 'TC', - }, - { - NAME: 'sig-Community', - }, - { - NAME: 'security-committee', - }, - ], - }, - { - SUB_CATEGORY_NAME: '软件包管理相关', - COLOR: '#4c3e72', - LIST: [ - { - NAME: 'Packaging', - }, - { - NAME: 'sig-recycle', - }, - { - NAME: 'sig-EasyLife', - }, - ], - }, - { - SUB_CATEGORY_NAME: '社区基础设施', - COLOR: '#c44e4e', - LIST: [ - { - NAME: 'Infrastructure', - }, - { - NAME: 'sig-CICD', - }, - { - NAME: 'sig-Gatekeeper', - }, - { - NAME: 'security-committee', - }, - ], - }, - ], }, ], }; diff --git a/src/shared/@types/type-login.ts b/src/shared/@types/type-login.ts new file mode 100644 index 0000000000000000000000000000000000000000..cb59ffbd33f91436f21c9622fd80074aacdd5a42 --- /dev/null +++ b/src/shared/@types/type-login.ts @@ -0,0 +1,4 @@ +export interface IdentitiesT { + identity: string; + login_name: string; +} diff --git a/src/stores/index.ts b/src/stores/index.ts index 131c8028833528144e3569e37ca68a65b97c04f6..a7aa0a79b82ac25d0f7eb0f290352db7d3fa1a44 100644 --- a/src/stores/index.ts +++ b/src/stores/index.ts @@ -8,11 +8,11 @@ interface LabelColor { export const useLangStore = defineStore('lang', { state: () => { return { - lang: '', + lang: '' as 'zh' | 'en', }; }, actions: { - setLangStore(val: string) { + setLangStore(val: 'zh' | 'en') { this.lang = val; }, }, diff --git a/src/views/TheQuickIssue.vue b/src/views/TheQuickIssue.vue index 98147a4f5c691ea7560b765f19cf540fa4fcb84d..be89d516c90170cb779c34d752d0e2f148d7ff46 100644 --- a/src/views/TheQuickIssue.vue +++ b/src/views/TheQuickIssue.vue @@ -7,6 +7,8 @@ import DocAnchor from '@/components/DocAnchor.vue'; import { useStoreData } from '@/shared/login'; import { ISSUE_TYPE } from '@/shared/issue-type'; +import { IdentitiesT } from '@/shared/@types/type-login'; + import { hiddenMail } from '@/shared/utils'; const { guardAuthClient } = useStoreData(); @@ -19,9 +21,9 @@ const isPersonalShown = computed(() => { ); }); -function getNameList(arr: any) { +function getNameList(arr: [IdentitiesT]) { try { - const giteeName = arr?.filter((item: any) => { + const giteeName = arr?.filter((item: IdentitiesT) => { return item.identity === 'gitee'; })[0]?.login_name; if (giteeName) { diff --git a/src/views/pull-request/PullRequest.vue b/src/views/pull-request/PullRequest.vue index 134bdeaa49d76ab73b95bd8208a4746b58300f4c..014a4ded3596feb0a432a890aab37582dad010d6 100644 --- a/src/views/pull-request/PullRequest.vue +++ b/src/views/pull-request/PullRequest.vue @@ -8,6 +8,8 @@ import DocAnchor from '@/components/DocAnchor.vue'; import { useStoreData } from '@/shared/login'; import { ISSUE_TYPE } from '@/shared/issue-type'; +import { IdentitiesT } from '@/shared/@types/type-login'; + import { hiddenMail } from '@/shared/utils'; const { guardAuthClient } = useStoreData(); @@ -20,9 +22,9 @@ const isPersonalShown = computed(() => { ); }); -function getNameList(arr: any) { +function getNameList(arr: [IdentitiesT]) { try { - const giteeName = arr?.filter((item: any) => { + const giteeName = arr?.filter((item: IdentitiesT) => { return item.identity === 'gitee'; })[0]?.login_name; if (giteeName) { diff --git a/src/views/submit-issue/SubmitIssue.vue b/src/views/submit-issue/SubmitIssue.vue index 608a526e39d1001f7bbc1be0ddaad3b725ecc276..ac43cc1f631f924b5212497c970868485e1e3e28 100644 --- a/src/views/submit-issue/SubmitIssue.vue +++ b/src/views/submit-issue/SubmitIssue.vue @@ -1,7 +1,6 @@