mirror of
https://github.com/vbenjs/vue-vben-admin.git
synced 2025-08-28 07:41:13 +08:00
fix: 修复循环依赖问题
This commit is contained in:
@@ -2,7 +2,7 @@ import { defineBuildConfig } from 'unbuild';
|
|||||||
|
|
||||||
export default defineBuildConfig({
|
export default defineBuildConfig({
|
||||||
clean: true,
|
clean: true,
|
||||||
entries: ['src/index'],
|
entries: ['src/index', 'src/strict'],
|
||||||
declaration: true,
|
declaration: true,
|
||||||
rollup: {
|
rollup: {
|
||||||
emitCJS: true,
|
emitCJS: true,
|
||||||
|
@@ -17,6 +17,11 @@
|
|||||||
"types": "./dist/index.d.ts",
|
"types": "./dist/index.d.ts",
|
||||||
"import": "./dist/index.mjs",
|
"import": "./dist/index.mjs",
|
||||||
"require": "./dist/index.cjs"
|
"require": "./dist/index.cjs"
|
||||||
|
},
|
||||||
|
"./strict": {
|
||||||
|
"types": "./dist/strict.d.ts",
|
||||||
|
"import": "./dist/strict.mjs",
|
||||||
|
"require": "./dist/strict.cjs"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"main": "./dist/index.cjs",
|
"main": "./dist/index.cjs",
|
||||||
@@ -38,7 +43,6 @@
|
|||||||
"eslint-plugin-import": "^2.27.5",
|
"eslint-plugin-import": "^2.27.5",
|
||||||
"eslint-plugin-prettier": "^4.2.1",
|
"eslint-plugin-prettier": "^4.2.1",
|
||||||
"eslint-plugin-simple-import-sort": "^10.0.0",
|
"eslint-plugin-simple-import-sort": "^10.0.0",
|
||||||
"eslint-plugin-unused-imports": "^2.0.0",
|
|
||||||
"eslint-plugin-vue": "^9.10.0",
|
"eslint-plugin-vue": "^9.10.0",
|
||||||
"vue-eslint-parser": "^9.1.1"
|
"vue-eslint-parser": "^9.1.1"
|
||||||
}
|
}
|
||||||
|
@@ -17,14 +17,7 @@ export default {
|
|||||||
createDefaultProgram: false,
|
createDefaultProgram: false,
|
||||||
extraFileExtensions: ['.vue'],
|
extraFileExtensions: ['.vue'],
|
||||||
},
|
},
|
||||||
plugins: [
|
plugins: ['vue', '@typescript-eslint', 'import'],
|
||||||
'vue',
|
|
||||||
'@typescript-eslint',
|
|
||||||
'import',
|
|
||||||
// TODO: 改造完成后开启
|
|
||||||
// 'unused-imports',
|
|
||||||
// 'simple-import-sort',
|
|
||||||
],
|
|
||||||
extends: [
|
extends: [
|
||||||
'eslint:recommended',
|
'eslint:recommended',
|
||||||
'plugin:vue/vue3-recommended',
|
'plugin:vue/vue3-recommended',
|
||||||
@@ -37,19 +30,10 @@ export default {
|
|||||||
'no-use-before-define': 'off',
|
'no-use-before-define': 'off',
|
||||||
'space-before-function-paren': 'off',
|
'space-before-function-paren': 'off',
|
||||||
|
|
||||||
// TODO: 改造完成后开启
|
|
||||||
// 'simple-import-sort/imports': 'error',
|
|
||||||
// 'simple-import-sort/exports': 'error',
|
|
||||||
|
|
||||||
'import/first': 'error',
|
'import/first': 'error',
|
||||||
'import/newline-after-import': 'error',
|
'import/newline-after-import': 'error',
|
||||||
'import/no-duplicates': 'error',
|
'import/no-duplicates': 'error',
|
||||||
|
|
||||||
// 'unused-imports/no-unused-imports': 'error',
|
|
||||||
// 'unused-imports/no-unused-vars': [
|
|
||||||
// 'warn',
|
|
||||||
// { vars: 'all', varsIgnorePattern: '^_', args: 'after-used', argsIgnorePattern: '^_' },
|
|
||||||
// ],
|
|
||||||
'@typescript-eslint/no-unused-vars': [
|
'@typescript-eslint/no-unused-vars': [
|
||||||
'error',
|
'error',
|
||||||
{
|
{
|
||||||
@@ -58,13 +42,13 @@ export default {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
'@typescript-eslint/ban-ts-ignore': 'off',
|
'@typescript-eslint/ban-ts-ignore': 'off',
|
||||||
|
'@typescript-eslint/ban-ts-comment': 'off',
|
||||||
|
'@typescript-eslint/ban-types': 'off',
|
||||||
'@typescript-eslint/explicit-function-return-type': 'off',
|
'@typescript-eslint/explicit-function-return-type': 'off',
|
||||||
'@typescript-eslint/no-explicit-any': 'off',
|
'@typescript-eslint/no-explicit-any': 'off',
|
||||||
'@typescript-eslint/no-var-requires': 'off',
|
'@typescript-eslint/no-var-requires': 'off',
|
||||||
'@typescript-eslint/no-empty-function': 'off',
|
'@typescript-eslint/no-empty-function': 'off',
|
||||||
'@typescript-eslint/no-use-before-define': 'off',
|
'@typescript-eslint/no-use-before-define': 'off',
|
||||||
'@typescript-eslint/ban-ts-comment': 'off',
|
|
||||||
'@typescript-eslint/ban-types': 'off',
|
|
||||||
'@typescript-eslint/no-non-null-assertion': 'off',
|
'@typescript-eslint/no-non-null-assertion': 'off',
|
||||||
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
||||||
'vue/script-setup-uses-vars': 'error',
|
'vue/script-setup-uses-vars': 'error',
|
||||||
|
18
internal/eslint-config/src/strict.ts
Normal file
18
internal/eslint-config/src/strict.ts
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
import baseLintConfig from './index';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
extends: [baseLintConfig],
|
||||||
|
plugins: ['simple-import-sort'],
|
||||||
|
rules: {
|
||||||
|
'simple-import-sort/imports': 'error',
|
||||||
|
'simple-import-sort/exports': 'error',
|
||||||
|
|
||||||
|
'@typescript-eslint/ban-types': 'error',
|
||||||
|
'@typescript-eslint/ban-ts-ignore': 'error',
|
||||||
|
'@typescript-eslint/ban-ts-comment': 'error',
|
||||||
|
'@typescript-eslint/no-explicit-any': 'error',
|
||||||
|
|
||||||
|
'vue/attributes-order': 'error',
|
||||||
|
'vue/require-default-prop': 'error',
|
||||||
|
},
|
||||||
|
};
|
@@ -71,6 +71,7 @@
|
|||||||
"@logicflow/core": "^1.2.1",
|
"@logicflow/core": "^1.2.1",
|
||||||
"@logicflow/extension": "^1.2.1",
|
"@logicflow/extension": "^1.2.1",
|
||||||
"@vben/hooks": "workspace:*",
|
"@vben/hooks": "workspace:*",
|
||||||
|
"@vue/shared": "^3.2.47",
|
||||||
"@vueuse/core": "^9.13.0",
|
"@vueuse/core": "^9.13.0",
|
||||||
"@vueuse/shared": "^9.13.0",
|
"@vueuse/shared": "^9.13.0",
|
||||||
"@zxcvbn-ts/core": "^2.2.1",
|
"@zxcvbn-ts/core": "^2.2.1",
|
||||||
|
26
pnpm-lock.yaml
generated
26
pnpm-lock.yaml
generated
@@ -19,6 +19,9 @@ importers:
|
|||||||
'@vben/hooks':
|
'@vben/hooks':
|
||||||
specifier: workspace:*
|
specifier: workspace:*
|
||||||
version: link:packages/hooks
|
version: link:packages/hooks
|
||||||
|
'@vue/shared':
|
||||||
|
specifier: ^3.2.47
|
||||||
|
version: 3.2.47
|
||||||
'@vueuse/core':
|
'@vueuse/core':
|
||||||
specifier: ^9.13.0
|
specifier: ^9.13.0
|
||||||
version: 9.13.0(vue@3.2.47)
|
version: 9.13.0(vue@3.2.47)
|
||||||
@@ -321,9 +324,6 @@ importers:
|
|||||||
eslint-plugin-simple-import-sort:
|
eslint-plugin-simple-import-sort:
|
||||||
specifier: ^10.0.0
|
specifier: ^10.0.0
|
||||||
version: 10.0.0(eslint@8.37.0)
|
version: 10.0.0(eslint@8.37.0)
|
||||||
eslint-plugin-unused-imports:
|
|
||||||
specifier: ^2.0.0
|
|
||||||
version: 2.0.0(@typescript-eslint/eslint-plugin@5.57.1)(eslint@8.37.0)
|
|
||||||
eslint-plugin-vue:
|
eslint-plugin-vue:
|
||||||
specifier: ^9.10.0
|
specifier: ^9.10.0
|
||||||
version: 9.10.0(eslint@8.37.0)
|
version: 9.10.0(eslint@8.37.0)
|
||||||
@@ -4483,21 +4483,6 @@ packages:
|
|||||||
eslint: 8.37.0
|
eslint: 8.37.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/eslint-plugin-unused-imports@2.0.0(@typescript-eslint/eslint-plugin@5.57.1)(eslint@8.37.0):
|
|
||||||
resolution: {integrity: sha512-3APeS/tQlTrFa167ThtP0Zm0vctjr4M44HMpeg1P4bK6wItarumq0Ma82xorMKdFsWpphQBlRPzw/pxiVELX1A==}
|
|
||||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
|
||||||
peerDependencies:
|
|
||||||
'@typescript-eslint/eslint-plugin': ^5.0.0
|
|
||||||
eslint: ^8.0.0
|
|
||||||
peerDependenciesMeta:
|
|
||||||
'@typescript-eslint/eslint-plugin':
|
|
||||||
optional: true
|
|
||||||
dependencies:
|
|
||||||
'@typescript-eslint/eslint-plugin': 5.57.1(@typescript-eslint/parser@5.57.1)(eslint@8.37.0)(typescript@5.0.3)
|
|
||||||
eslint: 8.37.0
|
|
||||||
eslint-rule-composer: 0.3.0
|
|
||||||
dev: true
|
|
||||||
|
|
||||||
/eslint-plugin-vue@9.10.0(eslint@8.37.0):
|
/eslint-plugin-vue@9.10.0(eslint@8.37.0):
|
||||||
resolution: {integrity: sha512-2MgP31OBf8YilUvtakdVMc8xVbcMp7z7/iQj8LHVpXrSXHPXSJRUIGSPFI6b6pyCx/buKaFJ45ycqfHvQRiW2g==}
|
resolution: {integrity: sha512-2MgP31OBf8YilUvtakdVMc8xVbcMp7z7/iQj8LHVpXrSXHPXSJRUIGSPFI6b6pyCx/buKaFJ45ycqfHvQRiW2g==}
|
||||||
engines: {node: ^14.17.0 || >=16.0.0}
|
engines: {node: ^14.17.0 || >=16.0.0}
|
||||||
@@ -4516,11 +4501,6 @@ packages:
|
|||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/eslint-rule-composer@0.3.0:
|
|
||||||
resolution: {integrity: sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==}
|
|
||||||
engines: {node: '>=4.0.0'}
|
|
||||||
dev: true
|
|
||||||
|
|
||||||
/eslint-scope@5.1.1:
|
/eslint-scope@5.1.1:
|
||||||
resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
|
resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
|
||||||
engines: {node: '>=8.0.0'}
|
engines: {node: '>=8.0.0'}
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
import type { DropMenu } from '/@/components/Dropdown';
|
import type { DropMenu } from '/@/components/Dropdown';
|
||||||
import { ref, watchEffect, unref, computed } from 'vue';
|
import { ref, watchEffect, unref, computed } from 'vue';
|
||||||
import { Dropdown } from '/@/components/Dropdown';
|
import { Dropdown } from '/@/components/Dropdown';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { useLocale } from '/@/locales/useLocale';
|
import { useLocale } from '/@/locales/useLocale';
|
||||||
import { localeList } from '/@/settings/localeSetting';
|
import { localeList } from '/@/settings/localeSetting';
|
||||||
|
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
defineProps({
|
defineProps({
|
||||||
icon: String,
|
icon: String,
|
||||||
|
@@ -61,7 +61,7 @@
|
|||||||
import { computed, unref, ref, watch, nextTick } from 'vue';
|
import { computed, unref, ref, watch, nextTick } from 'vue';
|
||||||
import { SearchOutlined } from '@ant-design/icons-vue';
|
import { SearchOutlined } from '@ant-design/icons-vue';
|
||||||
import AppSearchFooter from './AppSearchFooter.vue';
|
import AppSearchFooter from './AppSearchFooter.vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
import vClickOutside from '/@/directives/clickOutside';
|
import vClickOutside from '/@/directives/clickOutside';
|
||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { computed } from 'vue';
|
import { computed } from 'vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { Button } from 'ant-design-vue';
|
import { Button } from 'ant-design-vue';
|
||||||
import { computed, unref } from 'vue';
|
import { computed, unref } from 'vue';
|
||||||
import Icon from '/@/components/Icon/src/Icon.vue';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { buttonProps } from './props';
|
import { buttonProps } from './props';
|
||||||
import { useAttrs } from '@vben/hooks';
|
import { useAttrs } from '@vben/hooks';
|
||||||
|
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
import type { ContextMenuItem, ItemContentProps, Axis } from './typing';
|
import type { ContextMenuItem, ItemContentProps, Axis } from './typing';
|
||||||
import type { FunctionalComponent, CSSProperties, PropType } from 'vue';
|
import type { FunctionalComponent, CSSProperties, PropType } from 'vue';
|
||||||
import { defineComponent, nextTick, onMounted, computed, ref, unref, onUnmounted } from 'vue';
|
import { defineComponent, nextTick, onMounted, computed, ref, unref, onUnmounted } from 'vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { Menu, Divider } from 'ant-design-vue';
|
import { Menu, Divider } from 'ant-design-vue';
|
||||||
|
|
||||||
const prefixCls = 'context-menu';
|
const prefixCls = 'context-menu';
|
||||||
|
@@ -45,7 +45,7 @@
|
|||||||
import { useMessage } from '/@/hooks/web/useMessage';
|
import { useMessage } from '/@/hooks/web/useMessage';
|
||||||
import { useI18n } from '/@/hooks/web/useI18n';
|
import { useI18n } from '/@/hooks/web/useI18n';
|
||||||
import type { ButtonProps } from '/@/components/Button';
|
import type { ButtonProps } from '/@/components/Button';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
const props = {
|
const props = {
|
||||||
width: { type: [String, Number], default: '200px' },
|
width: { type: [String, Number], default: '200px' },
|
||||||
|
@@ -37,9 +37,10 @@
|
|||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { computed, PropType } from 'vue';
|
import { computed, PropType } from 'vue';
|
||||||
import type { DropMenu } from './typing';
|
import { type Recordable } from '@vben/types';
|
||||||
|
import { type DropMenu } from './typing';
|
||||||
import { Dropdown, Menu, Popconfirm } from 'ant-design-vue';
|
import { Dropdown, Menu, Popconfirm } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { omit } from 'lodash-es';
|
import { omit } from 'lodash-es';
|
||||||
import { isFunction } from '/@/utils/is';
|
import { isFunction } from '/@/utils/is';
|
||||||
|
|
||||||
@@ -63,7 +64,7 @@
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
dropMenuList: {
|
dropMenuList: {
|
||||||
type: Array as PropType<(DropMenu & Recordable)[]>,
|
type: Array as PropType<(DropMenu & Recordable<any>)[]>,
|
||||||
default: () => [],
|
default: () => [],
|
||||||
},
|
},
|
||||||
selectedKeys: {
|
selectedKeys: {
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
import { defineComponent, ref, onUnmounted, unref, nextTick, watchEffect } from 'vue';
|
import { defineComponent, ref, onUnmounted, unref, nextTick, watchEffect } from 'vue';
|
||||||
import { Divider, Tooltip } from 'ant-design-vue';
|
import { Divider, Tooltip } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { useFlowChartContext } from './useFlowContext';
|
import { useFlowChartContext } from './useFlowContext';
|
||||||
import { ToolbarTypeEnum } from './enum';
|
import { ToolbarTypeEnum } from './enum';
|
||||||
|
@@ -25,7 +25,7 @@
|
|||||||
computed,
|
computed,
|
||||||
CSSProperties,
|
CSSProperties,
|
||||||
} from 'vue';
|
} from 'vue';
|
||||||
import SvgIcon from './SvgIcon.vue';
|
import SvgIcon from './src/SvgIcon.vue';
|
||||||
import Iconify from '@purge-icons/generated';
|
import Iconify from '@purge-icons/generated';
|
||||||
import { isString } from '/@/utils/is';
|
import { isString } from '/@/utils/is';
|
||||||
import { propTypes } from '/@/utils/propTypes';
|
import { propTypes } from '/@/utils/propTypes';
|
||||||
@@ -57,7 +57,7 @@
|
|||||||
const update = async () => {
|
const update = async () => {
|
||||||
if (unref(isSvgIcon)) return;
|
if (unref(isSvgIcon)) return;
|
||||||
|
|
||||||
const el = unref(elRef);
|
const el: any = unref(elRef);
|
||||||
if (!el) return;
|
if (!el) return;
|
||||||
|
|
||||||
await nextTick();
|
await nextTick();
|
@@ -1,5 +1,4 @@
|
|||||||
import Icon from './src/Icon.vue';
|
|
||||||
import SvgIcon from './src/SvgIcon.vue';
|
import SvgIcon from './src/SvgIcon.vue';
|
||||||
import IconPicker from './src/IconPicker.vue';
|
import IconPicker from './src/IconPicker.vue';
|
||||||
|
|
||||||
export { Icon, IconPicker, SvgIcon };
|
export { IconPicker, SvgIcon };
|
||||||
|
@@ -69,7 +69,7 @@
|
|||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
import { ScrollContainer } from '/@/components/Container';
|
import { ScrollContainer } from '/@/components/Container';
|
||||||
import { Input, Popover, Pagination, Empty } from 'ant-design-vue';
|
import { Input, Popover, Pagination, Empty } from 'ant-design-vue';
|
||||||
import Icon from './Icon.vue';
|
import Icon from '../Icon.vue';
|
||||||
import SvgIcon from './SvgIcon.vue';
|
import SvgIcon from './SvgIcon.vue';
|
||||||
|
|
||||||
import iconsData from '../data/icons.data';
|
import iconsData from '../data/icons.data';
|
||||||
@@ -167,7 +167,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleSearchChange(e: ChangeEvent) {
|
function handleSearchChange(e: Event) {
|
||||||
const value = e.target.value;
|
const value = e.target.value;
|
||||||
if (!value) {
|
if (!value) {
|
||||||
setCurrentPage(1);
|
setCurrentPage(1);
|
||||||
|
@@ -6,8 +6,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { computed, defineComponent } from 'vue';
|
import { computed, defineComponent } from 'vue';
|
||||||
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
|
||||||
import { useI18n } from '/@/hooks/web/useI18n';
|
import { useI18n } from '/@/hooks/web/useI18n';
|
||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
import { contentProps } from '../props';
|
import { contentProps } from '../props';
|
||||||
|
@@ -48,7 +48,7 @@
|
|||||||
|
|
||||||
import { defineComponent, computed } from 'vue';
|
import { defineComponent, computed } from 'vue';
|
||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import MenuItem from './components/MenuItem.vue';
|
import MenuItem from './components/MenuItem.vue';
|
||||||
import SubMenu from './components/SubMenuItem.vue';
|
import SubMenu from './components/SubMenuItem.vue';
|
||||||
|
@@ -75,7 +75,7 @@
|
|||||||
import { useMenuItem } from './useMenu';
|
import { useMenuItem } from './useMenu';
|
||||||
import { useSimpleRootMenuContext } from './useSimpleMenuContext';
|
import { useSimpleRootMenuContext } from './useSimpleMenuContext';
|
||||||
import { CollapseTransition } from '/@/components/Transition';
|
import { CollapseTransition } from '/@/components/Transition';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { Popover } from 'ant-design-vue';
|
import { Popover } from 'ant-design-vue';
|
||||||
import { isBoolean, isObject } from '/@/utils/is';
|
import { isBoolean, isObject } from '/@/utils/is';
|
||||||
import { mitt } from '/@/utils/mitt';
|
import { mitt } from '/@/utils/mitt';
|
||||||
|
@@ -34,7 +34,7 @@
|
|||||||
import { defineComponent, PropType, computed, toRaw, unref } from 'vue';
|
import { defineComponent, PropType, computed, toRaw, unref } from 'vue';
|
||||||
import { MoreOutlined } from '@ant-design/icons-vue';
|
import { MoreOutlined } from '@ant-design/icons-vue';
|
||||||
import { Divider, Tooltip, TooltipProps } from 'ant-design-vue';
|
import { Divider, Tooltip, TooltipProps } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { ActionItem, TableActionType } from '/@/components/Table';
|
import { ActionItem, TableActionType } from '/@/components/Table';
|
||||||
import { PopConfirmButton } from '/@/components/Button';
|
import { PopConfirmButton } from '/@/components/Button';
|
||||||
import { Dropdown } from '/@/components/Dropdown';
|
import { Dropdown } from '/@/components/Dropdown';
|
||||||
|
@@ -113,7 +113,7 @@
|
|||||||
import { Tooltip, Popover, Checkbox, Divider } from 'ant-design-vue';
|
import { Tooltip, Popover, Checkbox, Divider } from 'ant-design-vue';
|
||||||
import type { CheckboxChangeEvent } from 'ant-design-vue/lib/checkbox/interface';
|
import type { CheckboxChangeEvent } from 'ant-design-vue/lib/checkbox/interface';
|
||||||
import { SettingOutlined, DragOutlined } from '@ant-design/icons-vue';
|
import { SettingOutlined, DragOutlined } from '@ant-design/icons-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { ScrollContainer } from '/@/components/Container';
|
import { ScrollContainer } from '/@/components/Container';
|
||||||
import { useI18n } from '/@/hooks/web/useI18n';
|
import { useI18n } from '/@/hooks/web/useI18n';
|
||||||
import { useTableContext } from '../../hooks/useTableContext';
|
import { useTableContext } from '../../hooks/useTableContext';
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
import type { VNode, FunctionalComponent } from 'vue';
|
import type { VNode, FunctionalComponent } from 'vue';
|
||||||
import { h } from 'vue';
|
import { h } from 'vue';
|
||||||
import { isString } from 'lodash-es';
|
import { isString } from 'lodash-es';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
export const TreeIcon: FunctionalComponent = ({ icon }: { icon: VNode | string }) => {
|
export const TreeIcon: FunctionalComponent = ({ icon }: { icon: VNode | string }) => {
|
||||||
if (!icon) return null;
|
if (!icon) return null;
|
||||||
|
@@ -33,9 +33,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { computed, ref, watch, useSlots } from 'vue';
|
import { type PropType, computed, ref, watch, useSlots } from 'vue';
|
||||||
import { Dropdown, Menu, MenuItem, MenuDivider, InputSearch } from 'ant-design-vue';
|
import { Dropdown, Menu, MenuItem, MenuDivider, InputSearch } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { BasicTitle } from '/@/components/Basic';
|
import { BasicTitle } from '/@/components/Basic';
|
||||||
import { useI18n } from '/@/hooks/web/useI18n';
|
import { useI18n } from '/@/hooks/web/useI18n';
|
||||||
import { useDebounceFn } from '@vueuse/core';
|
import { useDebounceFn } from '@vueuse/core';
|
||||||
|
@@ -37,7 +37,8 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, ref, watch, unref, computed } from 'vue';
|
import { defineComponent, ref, watch, unref, computed } from 'vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import { Recordable } from '@vben/types';
|
||||||
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { Tooltip, Space } from 'ant-design-vue';
|
import { Tooltip, Space } from 'ant-design-vue';
|
||||||
import { useModal } from '/@/components/Modal';
|
import { useModal } from '/@/components/Modal';
|
||||||
import { uploadContainerProps } from './props';
|
import { uploadContainerProps } from './props';
|
||||||
@@ -96,7 +97,7 @@
|
|||||||
emit('change', fileList.value);
|
emit('change', fileList.value);
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleDelete(record: Recordable) {
|
function handleDelete(record: Recordable<any>) {
|
||||||
emit('delete', record);
|
emit('delete', record);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -21,7 +21,7 @@
|
|||||||
import { defineComponent, ref, watchEffect } from 'vue';
|
import { defineComponent, ref, watchEffect } from 'vue';
|
||||||
|
|
||||||
import { Breadcrumb } from 'ant-design-vue';
|
import { Breadcrumb } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
import { useRootSetting } from '/@/hooks/setting/useRootSetting';
|
import { useRootSetting } from '/@/hooks/setting/useRootSetting';
|
||||||
|
@@ -13,8 +13,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, computed } from 'vue';
|
import { defineComponent, computed } from 'vue';
|
||||||
import { Tooltip, Badge } from 'ant-design-vue';
|
import { Tooltip, Badge } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { useI18n } from '/@/hooks/web/useI18n';
|
import { useI18n } from '/@/hooks/web/useI18n';
|
||||||
import { useErrorLogStore } from '/@/store/modules/errorLog';
|
import { useErrorLogStore } from '/@/store/modules/errorLog';
|
||||||
import { PageEnum } from '/@/enums/pageEnum';
|
import { PageEnum } from '/@/enums/pageEnum';
|
||||||
|
@@ -10,8 +10,8 @@
|
|||||||
import { Menu } from 'ant-design-vue';
|
import { Menu } from 'ant-design-vue';
|
||||||
|
|
||||||
import { computed, defineComponent, getCurrentInstance } from 'vue';
|
import { computed, defineComponent, getCurrentInstance } from 'vue';
|
||||||
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { Icon } from '/@/components/Icon/index';
|
|
||||||
import { propTypes } from '/@/utils/propTypes';
|
import { propTypes } from '/@/utils/propTypes';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import SettingDrawer from './SettingDrawer';
|
import SettingDrawer from './SettingDrawer';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { useDrawer } from '/@/components/Drawer';
|
import { useDrawer } from '/@/components/Drawer';
|
||||||
|
|
||||||
|
@@ -84,7 +84,7 @@
|
|||||||
import type { RouteLocationNormalized } from 'vue-router';
|
import type { RouteLocationNormalized } from 'vue-router';
|
||||||
import { ScrollContainer } from '/@/components/Container';
|
import { ScrollContainer } from '/@/components/Container';
|
||||||
import { SimpleMenu, SimpleMenuTag } from '/@/components/SimpleMenu';
|
import { SimpleMenu, SimpleMenuTag } from '/@/components/SimpleMenu';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { AppLogo } from '/@/components/Application';
|
import { AppLogo } from '/@/components/Application';
|
||||||
import { useMenuSetting } from '/@/hooks/setting/useMenuSetting';
|
import { useMenuSetting } from '/@/hooks/setting/useMenuSetting';
|
||||||
import { usePermissionStore } from '/@/store/modules/permission';
|
import { usePermissionStore } from '/@/store/modules/permission';
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, unref, computed } from 'vue';
|
import { defineComponent, unref, computed } from 'vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
import { useHeaderSetting } from '/@/hooks/setting/useHeaderSetting';
|
import { useHeaderSetting } from '/@/hooks/setting/useHeaderSetting';
|
||||||
|
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
import { defineComponent, computed, unref } from 'vue';
|
import { defineComponent, computed, unref } from 'vue';
|
||||||
import { Dropdown } from '/@/components/Dropdown/index';
|
import { Dropdown } from '/@/components/Dropdown/index';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { TabContentProps } from '../types';
|
import { TabContentProps } from '../types';
|
||||||
|
|
||||||
|
@@ -27,7 +27,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { CountTo } from '/@/components/CountTo/index';
|
import { CountTo } from '/@/components/CountTo/index';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { Tag, Card } from 'ant-design-vue';
|
import { Tag, Card } from 'ant-design-vue';
|
||||||
import { growCardList } from '../data';
|
import { growCardList } from '../data';
|
||||||
|
|
||||||
|
@@ -24,7 +24,7 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { Card, List } from 'ant-design-vue';
|
import { Card, List } from 'ant-design-vue';
|
||||||
import { dynamicInfoItems } from './data';
|
import { dynamicInfoItems } from './data';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
const ListItem = List.Item;
|
const ListItem = List.Item;
|
||||||
const ListItemMeta = List.Item.Meta;
|
const ListItemMeta = List.Item.Meta;
|
||||||
|
@@ -20,7 +20,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import { Card, CardGrid } from 'ant-design-vue';
|
import { Card, CardGrid } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { groupItems } from './data';
|
import { groupItems } from './data';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
@@ -11,5 +11,5 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { Card, CardGrid } from 'ant-design-vue';
|
import { Card, CardGrid } from 'ant-design-vue';
|
||||||
import { navItems } from './data';
|
import { navItems } from './data';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
</script>
|
</script>
|
||||||
|
@@ -64,7 +64,8 @@
|
|||||||
CodepenCircleFilled,
|
CodepenCircleFilled,
|
||||||
} from '@ant-design/icons-vue';
|
} from '@ant-design/icons-vue';
|
||||||
|
|
||||||
import { Icon, IconPicker, SvgIcon } from '/@/components/Icon/index';
|
import { IconPicker, SvgIcon } from '/@/components/Icon/index';
|
||||||
|
import Icon from '/@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { openWindow } from '/@/utils';
|
import { openWindow } from '/@/utils';
|
||||||
import { PageWrapper } from '/@/components/Page';
|
import { PageWrapper } from '/@/components/Page';
|
||||||
|
@@ -30,7 +30,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import { List, Card, Row, Col } from 'ant-design-vue';
|
import { List, Card, Row, Col } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { applicationList } from './data';
|
import { applicationList } from './data';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
@@ -42,7 +42,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import { List, Tag } from 'ant-design-vue';
|
import { List, Tag } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { actions, articleList } from './data';
|
import { actions, articleList } from './data';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
@@ -56,7 +56,7 @@
|
|||||||
import { Tag, Tabs, Row, Col } from 'ant-design-vue';
|
import { Tag, Tabs, Row, Col } from 'ant-design-vue';
|
||||||
import { defineComponent, computed } from 'vue';
|
import { defineComponent, computed } from 'vue';
|
||||||
import { CollapseContainer } from '/@/components/Container/index';
|
import { CollapseContainer } from '/@/components/Container/index';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import Article from './Article.vue';
|
import Article from './Article.vue';
|
||||||
import Application from './Application.vue';
|
import Application from './Application.vue';
|
||||||
import Project from './Project.vue';
|
import Project from './Project.vue';
|
||||||
|
@@ -26,7 +26,7 @@
|
|||||||
import { List } from 'ant-design-vue';
|
import { List } from 'ant-design-vue';
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import { CollapseContainer } from '/@/components/Container/index';
|
import { CollapseContainer } from '/@/components/Container/index';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
import { accountBindList } from './data';
|
import { accountBindList } from './data';
|
||||||
|
|
||||||
|
@@ -53,7 +53,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { Progress, Row, Col, List } from 'ant-design-vue';
|
import { Progress, Row, Col, List } from 'ant-design-vue';
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { cardList } from './data';
|
import { cardList } from './data';
|
||||||
import { PageWrapper } from '/@/components/Page';
|
import { PageWrapper } from '/@/components/Page';
|
||||||
|
|
||||||
|
@@ -34,7 +34,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { cardList } from './data';
|
import { cardList } from './data';
|
||||||
import { PageWrapper } from '/@/components/Page';
|
import { PageWrapper } from '/@/components/Page';
|
||||||
import { Card, Row, Col, List } from 'ant-design-vue';
|
import { Card, Row, Col, List } from 'ant-design-vue';
|
||||||
|
@@ -55,7 +55,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { Tag, List } from 'ant-design-vue';
|
import { Tag, List } from 'ant-design-vue';
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { BasicForm } from '/@/components/Form/index';
|
import { BasicForm } from '/@/components/Form/index';
|
||||||
import { actions, searchList, schemas } from './data';
|
import { actions, searchList, schemas } from './data';
|
||||||
import { PageWrapper } from '/@/components/Page';
|
import { PageWrapper } from '/@/components/Page';
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
import { BasicColumn, FormSchema } from '/@/components/Table';
|
import { BasicColumn, FormSchema } from '/@/components/Table';
|
||||||
import { h } from 'vue';
|
import { h } from 'vue';
|
||||||
import { Tag } from 'ant-design-vue';
|
import { Tag } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
export const columns: BasicColumn[] = [
|
export const columns: BasicColumn[] = [
|
||||||
{
|
{
|
||||||
|
@@ -17,7 +17,7 @@
|
|||||||
import { IVFormComponent } from '../../../typings/v-form-component';
|
import { IVFormComponent } from '../../../typings/v-form-component';
|
||||||
import { remove } from '../../../utils';
|
import { remove } from '../../../utils';
|
||||||
import { useFormDesignState } from '../../../hooks/useFormDesignState';
|
import { useFormDesignState } from '../../../hooks/useFormDesignState';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'FormNodeOperate',
|
name: 'FormNodeOperate',
|
||||||
|
@@ -38,7 +38,7 @@
|
|||||||
import { remove } from '../../../utils';
|
import { remove } from '../../../utils';
|
||||||
import message from '../../../utils/message';
|
import message from '../../../utils/message';
|
||||||
import { Input } from 'ant-design-vue';
|
import { Input } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'FormOptions',
|
name: 'FormOptions',
|
||||||
|
@@ -38,7 +38,7 @@
|
|||||||
import { useFormDesignState } from '../../../hooks/useFormDesignState';
|
import { useFormDesignState } from '../../../hooks/useFormDesignState';
|
||||||
import { isArray } from 'lodash-es';
|
import { isArray } from 'lodash-es';
|
||||||
import { Form, FormItem, AutoComplete, Input } from 'ant-design-vue';
|
import { Form, FormItem, AutoComplete, Input } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: 'RuleProps',
|
name: 'RuleProps',
|
||||||
|
@@ -34,7 +34,7 @@
|
|||||||
import { defineComponent, reactive } from 'vue';
|
import { defineComponent, reactive } from 'vue';
|
||||||
import { IVFormComponent } from '../../../typings/v-form-component';
|
import { IVFormComponent } from '../../../typings/v-form-component';
|
||||||
import draggable from 'vuedraggable';
|
import draggable from 'vuedraggable';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { useDesign } from '/@/hooks/web/useDesign';
|
import { useDesign } from '/@/hooks/web/useDesign';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
@@ -31,7 +31,7 @@
|
|||||||
import { UseRefHistoryReturn } from '@vueuse/core';
|
import { UseRefHistoryReturn } from '@vueuse/core';
|
||||||
import { IFormConfig } from '../../../typings/v-form-component';
|
import { IFormConfig } from '../../../typings/v-form-component';
|
||||||
import { Tooltip, Divider } from 'ant-design-vue';
|
import { Tooltip, Divider } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon/index';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
|
||||||
interface IToolbarsConfig {
|
interface IToolbarsConfig {
|
||||||
type: string;
|
type: string;
|
||||||
|
@@ -48,7 +48,7 @@
|
|||||||
import { handleAsyncOptions } from '../../utils';
|
import { handleAsyncOptions } from '../../utils';
|
||||||
import { omit } from 'lodash-es';
|
import { omit } from 'lodash-es';
|
||||||
import { Tooltip, FormItem, Divider, Col } from 'ant-design-vue';
|
import { Tooltip, FormItem, Divider, Col } from 'ant-design-vue';
|
||||||
import { Icon } from '/@/components/Icon';
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
import { useFormModelState } from '../../hooks/useFormDesignState';
|
import { useFormModelState } from '../../hooks/useFormDesignState';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
Reference in New Issue
Block a user