diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6f83bac..864311c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,9 +4,6 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false -patchedDependencies: - '@smallwei/avue': 5ba15ad41b2c301250bf24adf39da2ed526b8375143da2c5a495361b29e862db - importers: .: @@ -31,16 +28,16 @@ importers: version: 1.7.0 '@smallwei/avue': specifier: ~3.9.2 - version: 3.9.2(patch_hash=5ba15ad41b2c301250bf24adf39da2ed526b8375143da2c5a495361b29e862db)(@element-plus/icons-vue@2.3.2(vue@3.5.34))(debug@4.4.3(supports-color@7.2.0))(element-plus@2.14.2(vue@3.5.34))(vue@3.5.34) + version: 3.9.2(@element-plus/icons-vue@2.3.2(vue@3.5.34))(element-plus@2.14.2(vue@3.5.34))(vue@3.5.34) animate.css: specifier: ^4.1.1 version: 4.1.1 avue-plugin-ueditor: specifier: ^1.0.4 - version: 1.0.4(axios@1.16.0(debug@4.4.3(supports-color@7.2.0)))(vue@3.5.34) + version: 1.0.4(axios@1.16.0)(vue@3.5.34) axios: specifier: ^1.13.5 - version: 1.16.0(debug@4.4.3(supports-color@7.2.0)) + version: 1.16.0 codemirror: specifier: ^5.65.21 version: 5.65.21 @@ -128,7 +125,7 @@ importers: version: 5.4.21(sass@1.99.0)(terser@5.46.2) vite-plugin-compression: specifier: ^0.5.1 - version: 0.5.1(supports-color@7.2.0)(vite@5.4.21(sass@1.99.0)(terser@5.46.2)) + version: 0.5.1(vite@5.4.21(sass@1.99.0)(terser@5.46.2)) vite-plugin-vue-setup-extend: specifier: ^0.4.0 version: 0.4.0(vite@5.4.21(sass@1.99.0)(terser@5.46.2)) @@ -407,35 +404,30 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] '@napi-rs/canvas-linux-arm64-musl@1.0.2': resolution: {integrity: sha512-qwROoDIC9upfvDoRLuPn2aNg9CGW1x0Ygr4k2Or+8paA9d0qBLwk87U+g8KQpoOviKoPoiwl97kvBYuYD7qZoA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] '@napi-rs/canvas-linux-riscv64-gnu@1.0.2': resolution: {integrity: sha512-fXRjnPihdnbO6qy1QQOgxAonb68A0TCEG7rj1x7v7rxNElsE8EVIKIEUTvyDtU+sthYSbX+8e7g3oZiLGnOmxw==} engines: {node: '>= 10'} cpu: [riscv64] os: [linux] - libc: [glibc] '@napi-rs/canvas-linux-x64-gnu@1.0.2': resolution: {integrity: sha512-nPR97DXhbWIAy7yazF3jc06kEPMqYMLmPzFOVNlwKPfIoSChnI+x7dc0hTLaihz3jxrjL6j4BbA7earxfx4X3g==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@napi-rs/canvas-linux-x64-musl@1.0.2': resolution: {integrity: sha512-l7zZY5+jL5qnBZtDz7CoBtY6p7EkHu422g/0zWwrOrzIwWyWxZFRfZZORY1UG7YApymPLx+UbOkN206xXn/c1Q==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] '@napi-rs/canvas-win32-arm64-msvc@1.0.2': resolution: {integrity: sha512-yE0koHCFF4PIbMc2o2SEALhnipz7WBISh5glLvQiomtIoCcW0np3H4Lw93ceJAfJttTTeIIWFbwH84F7EVzjMQ==} @@ -511,42 +503,36 @@ packages: engines: {node: '>= 10.0.0'} cpu: [arm] os: [linux] - libc: [glibc] '@parcel/watcher-linux-arm-musl@2.5.6': resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==} engines: {node: '>= 10.0.0'} cpu: [arm] os: [linux] - libc: [musl] '@parcel/watcher-linux-arm64-glibc@2.5.6': resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [linux] - libc: [glibc] '@parcel/watcher-linux-arm64-musl@2.5.6': resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [linux] - libc: [musl] '@parcel/watcher-linux-x64-glibc@2.5.6': resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [linux] - libc: [glibc] '@parcel/watcher-linux-x64-musl@2.5.6': resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [linux] - libc: [musl] '@parcel/watcher-win32-arm64@2.5.6': resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==} @@ -613,79 +599,66 @@ packages: resolution: {integrity: sha512-DV6fJoxEYWJOvaZIsok7KrYl0tPvga5OZ2yvKHNNYyk/2roMLqQAbGhr78EQ5YhHpnhLKJD3S1WFusAkmUuV5g==} cpu: [arm] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm-musleabihf@4.60.3': resolution: {integrity: sha512-mQKoJAzvuOs6F+TZybQO4GOTSMUu7v0WdxEk24krQ/uUxXoPTtHjuaUuPmFhtBcM4K0ons8nrE3JyhTuCFtT/w==} cpu: [arm] os: [linux] - libc: [musl] '@rollup/rollup-linux-arm64-gnu@4.60.3': resolution: {integrity: sha512-Whjj2qoiJ6+OOJMGptTYazaJvjOJm+iKHpXQM1P3LzGjt7Ff++Tp7nH4N8J/BUA7R9IHfDyx4DJIflifwnbmIA==} cpu: [arm64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm64-musl@4.60.3': resolution: {integrity: sha512-4YTNHKqGng5+yiZt3mg77nmyuCfmNfX4fPmyUapBcIk+BdwSwmCWGXOUxhXbBEkFHtoN5boLj/5NON+u5QC9tg==} cpu: [arm64] os: [linux] - libc: [musl] '@rollup/rollup-linux-loong64-gnu@4.60.3': resolution: {integrity: sha512-SU3kNlhkpI4UqlUc2VXPGK9o886ZsSeGfMAX2ba2b8DKmMXq4AL7KUrkSWVbb7koVqx41Yczx6dx5PNargIrEA==} cpu: [loong64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-loong64-musl@4.60.3': resolution: {integrity: sha512-6lDLl5h4TXpB1mTf2rQWnAk/LcXrx9vBfu/DT5TIPhvMhRWaZ5MxkIc8u4lJAmBo6klTe1ywXIUHFjylW505sg==} cpu: [loong64] os: [linux] - libc: [musl] '@rollup/rollup-linux-ppc64-gnu@4.60.3': resolution: {integrity: sha512-BMo8bOw8evlup/8G+cj5xWtPyp93xPdyoSN16Zy90Q2QZ0ZYRhCt6ZJSwbrRzG9HApFabjwj2p25TUPDWrhzqQ==} cpu: [ppc64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-ppc64-musl@4.60.3': resolution: {integrity: sha512-E0L8X1dZN1/Rph+5VPF6Xj2G7JJvMACVXtamTJIDrVI44Y3K+G8gQaMEAavbqCGTa16InptiVrX6eM6pmJ+7qA==} cpu: [ppc64] os: [linux] - libc: [musl] '@rollup/rollup-linux-riscv64-gnu@4.60.3': resolution: {integrity: sha512-oZJ/WHaVfHUiRAtmTAeo3DcevNsVvH8mbvodjZy7D5QKvCefO371SiKRpxoDcCxB3PTRTLayWBkvmDQKTcX/sw==} cpu: [riscv64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-riscv64-musl@4.60.3': resolution: {integrity: sha512-Dhbyh7j9FybM3YaTgaHmVALwA8AkUwTPccyCQ79TG9AJUsMQqgN1DDEZNr4+QUfwiWvLDumW5vdwzoeUF+TNxQ==} cpu: [riscv64] os: [linux] - libc: [musl] '@rollup/rollup-linux-s390x-gnu@4.60.3': resolution: {integrity: sha512-cJd1X5XhHHlltkaypz1UcWLA8AcoIi1aWhsvaWDskD1oz2eKCypnqvTQ8ykMNI0RSmm7NkTdSqSSD7zM0xa6Ig==} cpu: [s390x] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.60.3': resolution: {integrity: sha512-DAZDBHQfG2oQuhY7mc6I3/qB4LU2fQCjRvxbDwd/Jdvb9fypP4IJ4qmtu6lNjes6B531AI8cg1aKC2di97bUxA==} cpu: [x64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-musl@4.60.3': resolution: {integrity: sha512-cRxsE8c13mZOh3vP+wLDxpQBRrOHDIGOWyDL93Sy0Ga8y515fBcC2pjUfFwUe5T7tqvTvWbCpg1URM/AXdWIXA==} cpu: [x64] os: [linux] - libc: [musl] '@rollup/rollup-openbsd-x64@4.60.3': resolution: {integrity: sha512-QaWcIgRxqEdQdhJqW4DJctsH6HCmo5vHxY0krHSX4jMtOqfzC+dqDGuHM87bu4H8JBeibWx7jFz+h6/4C8wA5Q==} @@ -2654,10 +2627,10 @@ snapshots: countup.js: 2.10.0 signature_pad: 5.1.3 - '@smallwei/avue@3.9.2(patch_hash=5ba15ad41b2c301250bf24adf39da2ed526b8375143da2c5a495361b29e862db)(@element-plus/icons-vue@2.3.2(vue@3.5.34))(debug@4.4.3(supports-color@7.2.0))(element-plus@2.14.2(vue@3.5.34))(vue@3.5.34)': + '@smallwei/avue@3.9.2(@element-plus/icons-vue@2.3.2(vue@3.5.34))(element-plus@2.14.2(vue@3.5.34))(vue@3.5.34)': dependencies: '@element-plus/icons-vue': 2.3.2(vue@3.5.34) - axios: 0.21.4(debug@4.4.3(supports-color@7.2.0)) + axios: 0.21.4 countup.js: 1.9.3 dayjs: 1.11.20 element-plus: 2.14.2(vue@3.5.34) @@ -2793,25 +2766,25 @@ snapshots: dependencies: vue: 3.5.34 - '@wangeditor-next/basic-modules@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3)': + '@wangeditor-next/basic-modules@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3)': dependencies: - '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) dom7: 3.0.0 is-url: 1.2.4 lodash.throttle: 4.1.1 - nanoid: 5.1.11 - slate: 0.123.0 + nanoid: 3.3.12 + slate: 0.72.8 snabbdom: 3.6.3 - '@wangeditor-next/code-highlight@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.123.0)(snabbdom@3.6.3)': + '@wangeditor-next/code-highlight@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.123.0)(snabbdom@3.6.3)': dependencies: - '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) dom7: 4.0.6 prismjs: 1.30.0 slate: 0.123.0 snabbdom: 3.6.3 - '@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3)': + '@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3)': dependencies: '@types/event-emitter': 0.3.5 '@uppy/core': 2.3.4 @@ -2827,9 +2800,9 @@ snapshots: lodash.foreach: 4.5.0 lodash.throttle: 4.1.1 lodash.toarray: 4.4.0 - nanoid: 5.1.11 + nanoid: 3.3.12 scroll-into-view-if-needed: 3.1.0 - slate: 0.123.0 + slate: 0.72.8 slate-history: 0.115.0(slate@0.123.0) snabbdom: 3.6.3 @@ -2837,13 +2810,13 @@ snapshots: dependencies: '@uppy/core': 2.3.4 '@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4) - '@wangeditor-next/basic-modules': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) - '@wangeditor-next/code-highlight': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.123.0)(snabbdom@3.6.3) - '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) - '@wangeditor-next/list-module': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.123.0)(snabbdom@3.6.3) - '@wangeditor-next/table-module': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.debounce@4.0.8)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) - '@wangeditor-next/upload-image-module': 2.0.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/basic-modules@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.foreach@4.5.0)(slate@0.123.0)(snabbdom@3.6.3) - '@wangeditor-next/video-module': 2.0.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/basic-modules': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) + '@wangeditor-next/code-highlight': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) + '@wangeditor-next/list-module': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/table-module': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.debounce@4.0.8)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/upload-image-module': 2.0.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/basic-modules@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.foreach@4.5.0)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/video-module': 2.0.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) dom7: 4.0.6 is-hotkey: 0.2.0 lodash.camelcase: 4.3.0 @@ -2856,16 +2829,16 @@ snapshots: slate: 0.123.0 snabbdom: 3.6.3 - '@wangeditor-next/list-module@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.123.0)(snabbdom@3.6.3)': + '@wangeditor-next/list-module@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(slate@0.123.0)(snabbdom@3.6.3)': dependencies: - '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) dom7: 4.0.6 slate: 0.123.0 snabbdom: 3.6.3 - '@wangeditor-next/table-module@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.debounce@4.0.8)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3)': + '@wangeditor-next/table-module@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.debounce@4.0.8)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3)': dependencies: - '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) dom7: 4.0.6 lodash.debounce: 4.0.8 lodash.throttle: 4.1.1 @@ -2873,22 +2846,22 @@ snapshots: slate: 0.123.0 snabbdom: 3.6.3 - '@wangeditor-next/upload-image-module@2.0.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/basic-modules@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.foreach@4.5.0)(slate@0.123.0)(snabbdom@3.6.3)': + '@wangeditor-next/upload-image-module@2.0.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/basic-modules@2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(lodash.foreach@4.5.0)(slate@0.123.0)(snabbdom@3.6.3)': dependencies: '@uppy/core': 2.3.4 '@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4) - '@wangeditor-next/basic-modules': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) - '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/basic-modules': 2.0.0(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@3.0.0)(lodash.throttle@4.1.1)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) + '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) dom7: 4.0.6 lodash.foreach: 4.5.0 slate: 0.123.0 snabbdom: 3.6.3 - '@wangeditor-next/video-module@2.0.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3)': + '@wangeditor-next/video-module@2.0.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(@wangeditor-next/core@1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@4.0.6)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3))(dom7@4.0.6)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3)': dependencies: '@uppy/core': 2.3.4 '@uppy/xhr-upload': 2.1.3(@uppy/core@2.3.4) - '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@5.1.11)(slate@0.123.0)(snabbdom@3.6.3) + '@wangeditor-next/core': 1.8.0(@uppy/core@2.3.4)(@uppy/xhr-upload@2.1.3(@uppy/core@2.3.4))(dom7@3.0.0)(is-hotkey@0.2.0)(lodash.camelcase@4.3.0)(lodash.clonedeep@4.5.0)(lodash.debounce@4.0.8)(lodash.foreach@4.5.0)(lodash.throttle@4.1.1)(lodash.toarray@4.4.0)(nanoid@3.3.12)(slate@0.72.8)(snabbdom@3.6.3) dom7: 4.0.6 nanoid: 5.1.11 slate: 0.123.0 @@ -3065,22 +3038,22 @@ snapshots: asynckit@0.4.0: {} - avue-plugin-ueditor@1.0.4(axios@1.16.0(debug@4.4.3(supports-color@7.2.0)))(vue@3.5.34): + avue-plugin-ueditor@1.0.4(axios@1.16.0)(vue@3.5.34): dependencies: '@wangeditor/editor': 5.1.23 '@wangeditor/editor-for-vue': 5.1.12(@wangeditor/editor@5.1.23)(vue@3.5.34) - axios: 1.16.0(debug@4.4.3(supports-color@7.2.0)) + axios: 1.16.0 vue: 3.5.34 - axios@0.21.4(debug@4.4.3(supports-color@7.2.0)): + axios@0.21.4: dependencies: - follow-redirects: 1.16.0(debug@4.4.3(supports-color@7.2.0)) + follow-redirects: 1.16.0 transitivePeerDependencies: - debug - axios@1.16.0(debug@4.4.3(supports-color@7.2.0)): + axios@1.16.0: dependencies: - follow-redirects: 1.16.0(debug@4.4.3(supports-color@7.2.0)) + follow-redirects: 1.16.0 form-data: 4.0.5 proxy-from-env: 2.1.0 transitivePeerDependencies: @@ -3248,11 +3221,9 @@ snapshots: dayjs@1.11.20: {} - debug@4.4.3(supports-color@7.2.0): + debug@4.4.3: dependencies: ms: 2.1.3 - optionalDependencies: - supports-color: 7.2.0 delayed-stream@1.0.0: {} @@ -3460,9 +3431,7 @@ snapshots: dependencies: to-regex-range: 5.0.1 - follow-redirects@1.16.0(debug@4.4.3(supports-color@7.2.0)): - optionalDependencies: - debug: 4.4.3(supports-color@7.2.0) + follow-redirects@1.16.0: {} form-data@4.0.5: dependencies: @@ -4157,10 +4126,10 @@ snapshots: uuid@8.3.2: {} - vite-plugin-compression@0.5.1(supports-color@7.2.0)(vite@5.4.21(sass@1.99.0)(terser@5.46.2)): + vite-plugin-compression@0.5.1(vite@5.4.21(sass@1.99.0)(terser@5.46.2)): dependencies: chalk: 4.1.2 - debug: 4.4.3(supports-color@7.2.0) + debug: 4.4.3 fs-extra: 10.1.0 vite: 5.4.21(sass@1.99.0)(terser@5.46.2) transitivePeerDependencies: diff --git a/src/components/address-map-picker/main.vue b/src/components/address-map-picker/main.vue index 85fcef8..3f2aa90 100644 --- a/src/components/address-map-picker/main.vue +++ b/src/components/address-map-picker/main.vue @@ -271,7 +271,12 @@ export default { this.runGeocode('address', lnglat) .then(result => { const detailAddress = result.regeocode?.formattedAddress || fallbackAddress; - this.selected = { ...this.selected, address: detailAddress }; + const region = this.resolveRegionFromGeocode(result); + this.selected = { + ...this.selected, + address: detailAddress, + ...region, + }; this.keyword = detailAddress || this.keyword; this.status = detailAddress || '已选点,可确认回填'; }) @@ -285,6 +290,26 @@ export default { this.resolving = false; }); }, + resolveRegionFromGeocode(result = {}) { + const component = result.regeocode?.addressComponent || {}; + const city = Array.isArray(component.city) ? '' : String(component.city || '').trim(); + const province = String(component.province || '').trim(); + const district = String(component.district || '').trim(); + const country = String(component.country || '').trim(); + const adcode = String(component.adcode || '').trim(); + return { + country, + province, + city: city || province, + district, + adcode, + regionCode: adcode, + provinceName: province, + cityName: city || province, + districtName: district, + countryName: country, + }; + }, renderMarker(point) { this.clearMarker(); this.marker = new window.AMap.Marker({ position: point }); @@ -310,6 +335,16 @@ export default { address: this.selected.address, longitude: this.selected.longitude, latitude: this.selected.latitude, + country: this.selected.country || this.selected.countryName || '', + province: this.selected.province || this.selected.provinceName || '', + city: this.selected.city || this.selected.cityName || '', + district: this.selected.district || this.selected.districtName || '', + adcode: this.selected.adcode || this.selected.regionCode || '', + regionCode: this.selected.regionCode || this.selected.adcode || '', + countryName: this.selected.countryName || this.selected.country || '', + provinceName: this.selected.provinceName || this.selected.province || '', + cityName: this.selected.cityName || this.selected.city || '', + districtName: this.selected.districtName || this.selected.district || '', }); this.visible = false; }, diff --git a/src/option/base/common-address.js b/src/option/base/common-address.js index 6860fb7..2b8f6d3 100644 --- a/src/option/base/common-address.js +++ b/src/option/base/common-address.js @@ -305,6 +305,10 @@ export const createOption = () => ({ searchOrder: 3, searchPlaceholder: '请选择', dicData: [], + props: { + label: 'label', + value: 'value', + }, filterable: true, hide: true, display: false, diff --git a/src/option/system/user.js b/src/option/system/user.js index 9cc07c3..786fa5e 100644 --- a/src/option/system/user.js +++ b/src/option/system/user.js @@ -39,6 +39,7 @@ export const userOption = safe => { prop: 'account', search: true, searchOrder: 2, + searchPlaceholder: '支持模糊搜索', display: false, }, { @@ -46,6 +47,7 @@ export const userOption = safe => { prop: 'realName', search: true, searchOrder: 4, + searchPlaceholder: '支持模糊搜索', display: false, }, { @@ -53,6 +55,7 @@ export const userOption = safe => { prop: 'phone', search: true, searchOrder: 3, + searchPlaceholder: '支持模糊搜索', display: false, }, { label: '工号', prop: 'code', display: false }, diff --git a/src/utils/contract.js b/src/utils/contract.js new file mode 100644 index 0000000..302996f --- /dev/null +++ b/src/utils/contract.js @@ -0,0 +1,14 @@ +/** + * 合同下拉/选择展示:合同编号/合同名称 + * + * @param {Object} contract 合同对象 + * @returns {string} + */ +export function formatContractOptionLabel(contract = {}) { + const contractNo = String(contract?.contractNo ?? '').trim(); + const contractName = String(contract?.contractName ?? '').trim(); + if (contractNo && contractName) { + return `${contractNo}/${contractName}`; + } + return contractNo || contractName || ''; +} diff --git a/src/views/base/common-address.vue b/src/views/base/common-address.vue index da340c2..cf00e6f 100644 --- a/src/views/base/common-address.vue +++ b/src/views/base/common-address.vue @@ -344,15 +344,21 @@ export default { getDeptTree(this.userInfo.tenantId).then(res => { this.deptOptions = this.flattenDept(res.data.data || []); const deptColumn = this.findColumn(this.option.column, 'searchDeptId'); - deptColumn.dicData = this.deptOptions; + if (deptColumn) { + deptColumn.dicData = this.deptOptions; + } }); }, flattenDept(tree, level = 0) { const result = []; tree.forEach(item => { + // 雪花 ID 必须保持字符串,避免 JS Number 精度丢失导致筛错组织。 + const id = + item.id === undefined || item.id === null || item.id === '' ? '' : String(item.id); + if (!id) return; result.push({ label: `${' '.repeat(level)}${item.title || item.deptName || item.name}`, - value: item.id, + value: id, rawLabel: item.title || item.deptName || item.name, }); if (item.children && item.children.length) { @@ -361,6 +367,19 @@ export default { }); return result; }, + normalizeListQuery(params = {}) { + // 搜索条件优先于缓存的 query,避免旧组织 ID 覆盖用户新选择的组织。 + const query = { ...this.query, ...params }; + const rawDeptId = query.deptId ?? query.searchDeptId; + delete query.searchDeptId; + if (rawDeptId !== undefined && rawDeptId !== null && String(rawDeptId).trim() !== '') { + query.deptId = String(rawDeptId).split(',')[0].trim(); + } else { + delete query.deptId; + } + query.allDept = this.isAdmin ? 1 : 0; + return query; + }, getRecords(res) { const data = res && res.data && res.data.data; if (Array.isArray(data)) return data; @@ -967,13 +986,15 @@ export default { }, searchReset() { this.query = {}; + this.allDept = this.isAdmin ? 1 : 0; this.page.currentPage = 1; this.onLoad(this.page); }, searchChange(params, done) { - this.query = params; + this.query = this.normalizeListQuery(params); + this.allDept = this.query.allDept; this.page.currentPage = 1; - this.onLoad(this.page, params); + this.onLoad(this.page, this.query); done(); }, selectionChange(list) { @@ -994,7 +1015,10 @@ export default { }, onLoad(page, params = {}) { this.loading = true; - getList(page.currentPage, page.pageSize, { ...params, ...this.query, allDept: this.allDept }) + const query = this.normalizeListQuery(params); + this.query = query; + this.allDept = query.allDept; + getList(page.currentPage, page.pageSize, query) .then(res => { const data = res.data.data; this.page.total = data.total; @@ -1027,8 +1051,7 @@ export default { }, buildExportParams() { return { - ...this.query, - allDept: this.allDept, + ...this.normalizeListQuery(this.query), ids: this.ids, [this.website.tokenHeader]: getToken(), }; diff --git a/src/views/base/port-terminal.vue b/src/views/base/port-terminal.vue index 736c648..162a954 100644 --- a/src/views/base/port-terminal.vue +++ b/src/views/base/port-terminal.vue @@ -264,7 +264,7 @@ import { changeStatus, getPortSelect, } from '@/api/base/port-terminal'; -import { getLazyTree } from '@/api/base/region'; +import { getDetail as getRegionDetail, getLazyTree } from '@/api/base/region'; import { exportBlob } from '@/api/common'; import { mapGetters } from 'vuex'; import { downloadXls } from '@/utils/util'; @@ -841,10 +841,60 @@ export default { }, handleCountryNameChange(value) { const country = this.countryOptions.find(item => item.title === value); - this.setProvinceOptions([]); this.setCityOptions([]); this.setDistrictOptions([]); - this.loadProvinceOptions(country ? country.id : ''); + this.clearSearchCityAndDistrict(); + // 搜索栏为国家 → 城市 → 区县(无省份),选中国家后需直接加载该国下全部城市 + this.loadCityOptionsByCountry(country ? country.id : ''); + }, + clearSearchCityAndDistrict() { + const searchForm = this.$refs.crud && this.$refs.crud.searchForm; + if (searchForm) { + searchForm.city = undefined; + searchForm.districtName = undefined; + } + if (this.query) { + this.query.city = undefined; + this.query.districtName = undefined; + } + }, + loadCityOptionsByCountry(countryCode) { + if (!countryCode) { + this.setCityOptions([]); + return Promise.resolve([]); + } + this.cityLoading = true; + return this.loadProvinceOptions(countryCode) + .then(provinces => + Promise.all((provinces || []).map(province => this.fetchCityOptions(province.id))) + ) + .then(cityGroups => { + const cityMap = new Map(); + cityGroups.flat().forEach(city => { + if (city && city.id && !cityMap.has(city.id)) { + cityMap.set(city.id, city); + } + }); + const cities = Array.from(cityMap.values()); + this.setCityOptions(cities); + return cities; + }) + .finally(() => { + this.cityLoading = false; + }); + }, + fetchCityOptions(provinceCode) { + if (!provinceCode) { + return Promise.resolve([]); + } + if (this.cityOptionCache[provinceCode]) { + return Promise.resolve(this.cityOptionCache[provinceCode]); + } + return getLazyTree(provinceCode).then(res => { + const options = (res.data.data || []).map(this.normalizeRegionOption); + this.cityOptionCache[provinceCode] = options; + return options; + }); }, syncCountryName(countryCode) { const country = this.countryOptions.find(item => item.id === countryCode); @@ -925,10 +975,8 @@ export default { return Promise.resolve(this.cityOptionCache[provinceCode]); } this.cityLoading = true; - return getLazyTree(provinceCode) - .then(res => { - const options = (res.data.data || []).map(this.normalizeRegionOption); - this.cityOptionCache[provinceCode] = options; + return this.fetchCityOptions(provinceCode) + .then(options => { this.setCityOptions(options); return options; }) @@ -1047,6 +1095,13 @@ export default { handleCityNameChange(value) { const city = this.cityOptions.find(item => item.title === value); this.setDistrictOptions([]); + const searchForm = this.$refs.crud && this.$refs.crud.searchForm; + if (searchForm) { + searchForm.districtName = undefined; + } + if (this.query) { + this.query.districtName = undefined; + } this.loadDistrictOptions(city ? city.id : ''); }, handleDistrictChange(value) { @@ -1071,6 +1126,190 @@ export default { if (selection.latitude !== undefined && selection.latitude !== null && selection.latitude !== '') { this.form.latitude = Number(selection.latitude).toFixed(6); } + this.applyMapRegionSelection(selection); + }, + normalizeAmapCityName(city, province) { + if (Array.isArray(city)) { + return String(province || '').trim(); + } + const cityName = String(city || '').trim(); + return cityName || String(province || '').trim(); + }, + buildRegionLookupCodes(adcode) { + const code = String(adcode || '').trim(); + if (!code) { + return []; + } + const codes = [code]; + if (/^\d{6}$/.test(code)) { + if (code.endsWith('00')) { + const cityCode = code.slice(0, 4); + if (cityCode && !codes.includes(cityCode)) { + codes.push(cityCode); + } + } + if (code.endsWith('0000')) { + const provinceCode = code.slice(0, 2); + if (provinceCode && !codes.includes(provinceCode)) { + codes.push(provinceCode); + } + } + } + return codes; + }, + fetchRegionDetailByCodes(codes = []) { + const tryNext = index => { + if (index >= codes.length) { + return Promise.resolve(null); + } + return getRegionDetail(codes[index]) + .then(res => { + const detail = res.data && res.data.data; + if (detail && detail.code) { + return detail; + } + return tryNext(index + 1); + }) + .catch(() => tryNext(index + 1)); + }; + return tryNext(0); + }, + resolveCountryFromRegionDetail(detail = {}) { + const ancestors = String(detail.ancestors || '') + .split(',') + .map(item => String(item || '').trim()) + .filter(Boolean); + for (let index = 0; index < ancestors.length; index += 1) { + const ancestorCode = ancestors[index]; + if (this.countryOptions.some(item => item.id === ancestorCode)) { + return ancestorCode; + } + } + if ( + detail.parentCode && + Number(detail.regionLevel) === 1 && + this.countryOptions.some(item => item.id === String(detail.parentCode)) + ) { + return String(detail.parentCode); + } + if (/^\d{6}$/.test(String(detail.code || ''))) { + return DEFAULT_COUNTRY_CODE; + } + return ''; + }, + applyRegionDetail(detail = {}) { + const countryHint = this.resolveCountryFromRegionDetail(detail); + return this.resolveCountryCode(countryHint || DEFAULT_COUNTRY_CODE) + .then(countryCode => { + this.form.countryCode = countryCode; + this.syncCountryName(countryCode); + return this.loadProvinceOptions(countryCode); + }) + .then(() => { + this.form.provinceCode = + String(detail.provinceCode || '') || this.resolveProvinceCode(detail.provinceName); + const province = this.provinceOptions.find(item => item.id === this.form.provinceCode); + this.form.provinceName = province ? province.title : detail.provinceName || ''; + return this.loadCityOptions(this.form.provinceCode); + }) + .then(() => { + this.form.cityCode = + String(detail.cityCode || '') || + this.resolveCityCode(detail.cityName, detail.districtCode || detail.code); + const city = this.cityOptions.find(item => item.id === this.form.cityCode); + this.form.city = city ? city.title : detail.cityName || ''; + return this.loadDistrictOptions(this.form.cityCode); + }) + .then(() => { + this.form.districtCode = this.resolveDistrictCode( + detail.districtName || detail.name, + detail.districtCode || detail.code + ); + this.handleDistrictChange(this.form.districtCode); + }); + }, + applyMapRegionByNames(selection = {}) { + const provinceName = String(selection.province || selection.provinceName || '').trim(); + const cityName = this.normalizeAmapCityName( + selection.city || selection.cityName, + provinceName + ); + const districtName = String(selection.district || selection.districtName || '').trim(); + const countryName = String(selection.country || selection.countryName || '').trim(); + const adcode = String(selection.adcode || selection.regionCode || '').trim(); + const countryPromise = countryName + ? this.resolveCountryCode(countryName) + : Promise.resolve(/^\d{6}$/.test(adcode) ? DEFAULT_COUNTRY_CODE : ''); + return countryPromise + .then(countryCode => { + if (!countryCode) { + return null; + } + this.form.countryCode = countryCode; + this.syncCountryName(countryCode); + return this.loadProvinceOptions(countryCode); + }) + .then(provinces => { + if (!provinces) { + return null; + } + this.form.provinceCode = this.resolveProvinceCode(provinceName); + const province = this.provinceOptions.find(item => item.id === this.form.provinceCode); + this.form.provinceName = province ? province.title : provinceName; + if (!this.form.provinceCode) { + this.clearCityValue(); + return null; + } + return this.loadCityOptions(this.form.provinceCode); + }) + .then(cities => { + if (!cities) { + return null; + } + this.form.cityCode = this.resolveCityCode(cityName, adcode); + const city = this.cityOptions.find(item => item.id === this.form.cityCode); + this.form.city = city ? city.title : cityName; + if (!this.form.cityCode) { + this.clearDistrictValue(); + return null; + } + return this.loadDistrictOptions(this.form.cityCode); + }) + .then(districts => { + if (!districts) { + return; + } + this.form.districtCode = this.resolveDistrictCode(districtName, adcode); + this.handleDistrictChange(this.form.districtCode); + }); + }, + applyMapRegionSelection(selection = {}) { + if (this.isParentRegionLocked) { + return Promise.resolve(); + } + const adcode = String(selection.adcode || selection.regionCode || '').trim(); + const hasNameHint = Boolean( + selection.country || + selection.countryName || + selection.province || + selection.provinceName || + selection.city || + selection.cityName || + selection.district || + selection.districtName + ); + if (!adcode && !hasNameHint) { + return Promise.resolve(); + } + const lookupCodes = this.buildRegionLookupCodes(adcode); + return this.fetchRegionDetailByCodes(lookupCodes) + .then(detail => { + if (detail) { + return this.applyRegionDetail(detail); + } + return this.applyMapRegionByNames(selection); + }) + .catch(() => this.applyMapRegionByNames(selection)); }, resolveCountryCode(country) { if (!country) { @@ -1443,42 +1682,14 @@ export default { diff --git a/src/views/base/railway-station.vue b/src/views/base/railway-station.vue index 336e5f1..8997fd6 100644 --- a/src/views/base/railway-station.vue +++ b/src/views/base/railway-station.vue @@ -171,7 +171,12 @@ export default { } }; const validateTelegraphCode = (rule, value, callback) => { - if (!/^[A-Z]{3}$/.test(String(value || '').toUpperCase())) { + const telegraphCode = String(value || '').trim(); + if (!telegraphCode) { + callback(); + return; + } + if (!/^[A-Z]{3}$/.test(telegraphCode.toUpperCase())) { callback(new Error('电报略码格式不正确或已存在')); } else { callback(); @@ -273,10 +278,7 @@ export default { prop: 'telegraphCode', minWidth: 100, maxlength: 3, - rules: [ - { required: true, message: '电报略码格式不正确或已存在', trigger: 'blur' }, - { validator: validateTelegraphCode, trigger: 'blur' }, - ], + rules: [{ validator: validateTelegraphCode, trigger: 'blur' }], change: ({ value }) => this.handleTelegraphChange(value), blur: ({ value }) => this.handleTelegraphChange(value), }, @@ -703,6 +705,7 @@ export default { }, normalizeRow(row) { row.code = row.tmisCode ? `TL${row.tmisCode}` : row.code; + row.telegraphCode = String(row.telegraphCode || '').trim() || undefined; row.regionCode = String(row.regionCode || '').trim(); row.regionName = String(row.regionName || '').trim(); row.districtCode = String(row.districtCode || '').trim(); @@ -735,14 +738,15 @@ export default { return records.some(item => item[prop] === row[prop] && String(item.id || '') !== rowId); }); }; - return Promise.all([ - hasDuplicate({ tmisCode: row.tmisCode }, 'tmisCode'), - hasDuplicate({ telegraphCode: row.telegraphCode }, 'telegraphCode'), - ]).then(([tmisExists, telegraphExists]) => { - if (tmisExists) { + const uniqueChecks = [hasDuplicate({ tmisCode: row.tmisCode }, 'tmisCode')]; + if (row.telegraphCode) { + uniqueChecks.push(hasDuplicate({ telegraphCode: row.telegraphCode }, 'telegraphCode')); + } + return Promise.all(uniqueChecks).then(results => { + if (results[0]) { return Promise.reject(new Error('该TMIS编码已存在')); } - if (telegraphExists) { + if (results[1]) { return Promise.reject(new Error('电报略码格式不正确或已存在')); } return Promise.resolve(); diff --git a/src/views/business/common-cargo.vue b/src/views/business/common-cargo.vue index 9ed40a1..ef871c0 100644 --- a/src/views/business/common-cargo.vue +++ b/src/views/business/common-cargo.vue @@ -352,7 +352,8 @@ export default { return result; }, normalizeListQuery(params = {}) { - const query = { ...params, ...this.query }; + // 搜索条件优先于缓存的 query,避免默认组织 ID 覆盖用户新选择的组织。 + const query = { ...this.query, ...params }; const rawDeptId = query.deptId ?? query.searchDeptId; delete query.searchDeptId; if (rawDeptId !== undefined && rawDeptId !== null && String(rawDeptId).trim() !== '') { diff --git a/src/views/business/common-route.vue b/src/views/business/common-route.vue index b1c7b14..99095ac 100644 --- a/src/views/business/common-route.vue +++ b/src/views/business/common-route.vue @@ -415,19 +415,27 @@ export default { }); }, buildDeptTree(tree) { - return tree.map(item => ({ - label: item.title || item.deptName || item.name, - value: item.id, - children: - item.children && item.children.length ? this.buildDeptTree(item.children) : undefined, - })); + return tree.map(item => { + // 雪花 ID 必须保持字符串,避免 JS Number 精度丢失导致筛错组织。 + const id = + item.id === undefined || item.id === null || item.id === '' ? '' : String(item.id); + return { + label: item.title || item.deptName || item.name, + value: id, + children: + item.children && item.children.length ? this.buildDeptTree(item.children) : undefined, + }; + }).filter(item => item.value); }, flattenDept(tree, level = 0) { const result = []; tree.forEach(item => { + const id = + item.id === undefined || item.id === null || item.id === '' ? '' : String(item.id); + if (!id) return; result.push({ label: `${' '.repeat(level)}${item.title || item.deptName || item.name}`, - value: item.id, + value: id, }); if (item.children && item.children.length) { result.push(...this.flattenDept(item.children, level + 1)); @@ -445,7 +453,8 @@ export default { ); }, normalizeListQuery(params = {}) { - const query = { ...params, ...this.query }; + // 搜索条件优先于缓存的 query,避免默认组织 ID 覆盖用户新选择的组织。 + const query = { ...this.query, ...params }; const rawDeptId = query.deptId ?? query.searchDeptId; delete query.searchDeptId; if (rawDeptId !== undefined && rawDeptId !== null && String(rawDeptId).trim() !== '') { diff --git a/src/views/business/components/business-crud-page.vue b/src/views/business/components/business-crud-page.vue index 069a237..67810db 100644 --- a/src/views/business/components/business-crud-page.vue +++ b/src/views/business/components/business-crud-page.vue @@ -215,7 +215,7 @@ @@ -3056,7 +3056,7 @@ @@ -5242,6 +5242,7 @@ import { addressTypeOptions } from '@/option/base/common-address'; import { packageOptions } from '@/option/business/common'; import { formatUpdateUserName } from '@/utils/audit'; import { getToken, isAdministrator } from '@/utils/auth'; +import { formatContractOptionLabel } from '@/utils/contract'; import { openImportDialog } from '@/utils/import-excel'; import { normalizeMapSearchResults, searchAmapPlaceText } from '@/utils/map-search'; import { loadMeasurementUnitOptions } from '@/utils/measurement-unit'; @@ -6590,6 +6591,7 @@ export default { }, }, methods: { + formatContractOptionLabel, initStandaloneFormPage() { if (!this.isStandaloneFormPage) return; const mode = this.$route.query.mode === 'edit' ? 'edit' : 'add'; diff --git a/src/views/business/components/master-order-dispatch.vue b/src/views/business/components/master-order-dispatch.vue index 9f6ad5f..e3040bf 100644 --- a/src/views/business/components/master-order-dispatch.vue +++ b/src/views/business/components/master-order-dispatch.vue @@ -317,6 +317,7 @@