@vxe-ui/core 1.0.11 → 1.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/LICENSE +21 -21
  2. package/README.en.md +31 -31
  3. package/README.md +31 -31
  4. package/README.zh-TW.md +31 -31
  5. package/es/src/core.js +1 -1
  6. package/es/src/log.js +1 -1
  7. package/lib/index.umd.js +22 -19
  8. package/lib/index.umd.min.js +1 -1
  9. package/lib/src/clipboard.min.js +1 -1
  10. package/lib/src/commands.min.js +1 -1
  11. package/lib/src/core.js +1 -1
  12. package/lib/src/core.min.js +1 -1
  13. package/lib/src/event.min.js +1 -1
  14. package/lib/src/formats.min.js +1 -1
  15. package/lib/src/globalStore.min.js +1 -1
  16. package/lib/src/hooks.min.js +1 -1
  17. package/lib/src/i18n.min.js +1 -1
  18. package/lib/src/i18nStore.min.js +1 -1
  19. package/lib/src/iconStore.min.js +1 -1
  20. package/lib/src/interceptor.min.js +1 -1
  21. package/lib/src/log.js +1 -1
  22. package/lib/src/log.min.js +1 -1
  23. package/lib/src/menus.min.js +1 -1
  24. package/lib/src/permission.min.js +1 -1
  25. package/lib/src/renderer.min.js +1 -1
  26. package/lib/src/resize.min.js +1 -1
  27. package/lib/src/store.min.js +1 -1
  28. package/lib/src/themeStore.min.js +1 -1
  29. package/lib/src/useFns.min.js +1 -1
  30. package/lib/src/validators.min.js +1 -1
  31. package/package.json +78 -78
  32. package/packages/index.ts +4 -4
  33. package/packages/src/clipboard.ts +53 -53
  34. package/packages/src/commands.ts +62 -62
  35. package/packages/src/core.ts +167 -167
  36. package/packages/src/event.ts +113 -113
  37. package/packages/src/formats.ts +62 -62
  38. package/packages/src/globalStore.ts +8 -8
  39. package/packages/src/hooks.ts +5 -5
  40. package/packages/src/i18n.ts +19 -19
  41. package/packages/src/i18nStore.ts +11 -11
  42. package/packages/src/iconStore.ts +3 -3
  43. package/packages/src/interceptor.ts +65 -65
  44. package/packages/src/log.ts +19 -19
  45. package/packages/src/menus.ts +62 -62
  46. package/packages/src/permission.ts +39 -39
  47. package/packages/src/renderer.ts +50 -50
  48. package/packages/src/resize.ts +89 -89
  49. package/packages/src/store.ts +49 -49
  50. package/packages/src/themeStore.ts +7 -7
  51. package/packages/src/useFns.ts +34 -34
  52. package/packages/src/validators.ts +9 -9
  53. package/types/core/clipboard.d.ts +13 -13
  54. package/types/core/commands.d.ts +19 -19
  55. package/types/core/components.d.ts +4 -4
  56. package/types/core/formats.d.ts +19 -19
  57. package/types/core/global-config.d.ts +55 -55
  58. package/types/core/global-event.d.ts +39 -39
  59. package/types/core/global-icon.d.ts +6 -6
  60. package/types/core/global-lang.d.ts +1 -1
  61. package/types/core/global-resize.d.ts +3 -3
  62. package/types/core/global-theme.d.ts +1 -1
  63. package/types/core/hooks.d.ts +14 -14
  64. package/types/core/index.d.ts +224 -224
  65. package/types/core/interceptor.d.ts +22 -22
  66. package/types/core/log.d.ts +8 -8
  67. package/types/core/menus.d.ts +19 -19
  68. package/types/core/permission.d.ts +10 -10
  69. package/types/core/renderer.d.ts +14 -14
  70. package/types/core/useFn.d.ts +27 -27
  71. package/types/core/validators.d.ts +19 -19
  72. package/types/index.d.ts +10 -10
  73. package/types/tool/common.d.ts +99 -99
  74. package/types/tool/index.d.ts +2 -2
  75. package/types/tool/util.d.ts +4 -4
@@ -1,89 +1,89 @@
1
- import XEUtils from 'xe-utils'
2
- import { globalConfigStore } from './globalStore'
3
-
4
- import { VxeGlobalResize } from '../../types'
5
-
6
- /**
7
- * 监听 resize 事件
8
- * 如果项目中已使用了 resize-observer-polyfill,那么只需要将方法定义全局,该组件就会自动使用
9
- */
10
- let resizeTimeout: any
11
- /* eslint-disable no-use-before-define */
12
- const eventStore: XEResizeObserver[] = []
13
- const defaultInterval = 500
14
-
15
- function eventHandle () {
16
- if (eventStore.length) {
17
- eventStore.forEach((item) => {
18
- item.tarList.forEach((observer) => {
19
- const { target, width, heighe } = observer
20
- const clientWidth = target.clientWidth
21
- const clientHeight = target.clientHeight
22
- const rWidth = clientWidth && width !== clientWidth
23
- const rHeight = clientHeight && heighe !== clientHeight
24
- if (rWidth || rHeight) {
25
- observer.width = clientWidth
26
- observer.heighe = clientHeight
27
- setTimeout(item.callback)
28
- }
29
- })
30
- })
31
- /* eslint-disable @typescript-eslint/no-use-before-define */
32
- eventListener()
33
- }
34
- }
35
-
36
- function eventListener () {
37
- clearTimeout(resizeTimeout)
38
- resizeTimeout = setTimeout(eventHandle, globalConfigStore.resizeInterval || defaultInterval)
39
- }
40
-
41
- class XEResizeObserver {
42
- tarList: {
43
- target: Element;
44
- width: number;
45
- heighe: number;
46
- }[] = []
47
-
48
- callback: (...args: any[]) => void
49
-
50
- constructor (callback: (...args: any[]) => void) {
51
- this.callback = callback
52
- }
53
-
54
- observe (target: Element): void {
55
- if (target) {
56
- const { tarList } = this
57
- if (!tarList.some(observer => observer.target === target)) {
58
- tarList.push({
59
- target,
60
- width: target.clientWidth,
61
- heighe: target.clientHeight
62
- })
63
- }
64
- if (!eventStore.length) {
65
- eventListener()
66
- }
67
- if (!eventStore.some((item) => item === this)) {
68
- eventStore.push(this)
69
- }
70
- }
71
- }
72
-
73
- unobserve (target: Element): void {
74
- XEUtils.remove(eventStore, item => item.tarList.some(observer => observer.target === target))
75
- }
76
-
77
- disconnect (): void {
78
- XEUtils.remove(eventStore, item => item === this)
79
- }
80
- }
81
-
82
- export const globalResize: VxeGlobalResize = {
83
- create (callback: (...args: any[]) => void) {
84
- if (window.ResizeObserver) {
85
- return new window.ResizeObserver(callback)
86
- }
87
- return new XEResizeObserver(callback)
88
- }
89
- }
1
+ import XEUtils from 'xe-utils'
2
+ import { globalConfigStore } from './globalStore'
3
+
4
+ import { VxeGlobalResize } from '../../types'
5
+
6
+ /**
7
+ * 监听 resize 事件
8
+ * 如果项目中已使用了 resize-observer-polyfill,那么只需要将方法定义全局,该组件就会自动使用
9
+ */
10
+ let resizeTimeout: any
11
+ /* eslint-disable no-use-before-define */
12
+ const eventStore: XEResizeObserver[] = []
13
+ const defaultInterval = 500
14
+
15
+ function eventHandle () {
16
+ if (eventStore.length) {
17
+ eventStore.forEach((item) => {
18
+ item.tarList.forEach((observer) => {
19
+ const { target, width, heighe } = observer
20
+ const clientWidth = target.clientWidth
21
+ const clientHeight = target.clientHeight
22
+ const rWidth = clientWidth && width !== clientWidth
23
+ const rHeight = clientHeight && heighe !== clientHeight
24
+ if (rWidth || rHeight) {
25
+ observer.width = clientWidth
26
+ observer.heighe = clientHeight
27
+ setTimeout(item.callback)
28
+ }
29
+ })
30
+ })
31
+ /* eslint-disable @typescript-eslint/no-use-before-define */
32
+ eventListener()
33
+ }
34
+ }
35
+
36
+ function eventListener () {
37
+ clearTimeout(resizeTimeout)
38
+ resizeTimeout = setTimeout(eventHandle, globalConfigStore.resizeInterval || defaultInterval)
39
+ }
40
+
41
+ class XEResizeObserver {
42
+ tarList: {
43
+ target: Element;
44
+ width: number;
45
+ heighe: number;
46
+ }[] = []
47
+
48
+ callback: (...args: any[]) => void
49
+
50
+ constructor (callback: (...args: any[]) => void) {
51
+ this.callback = callback
52
+ }
53
+
54
+ observe (target: Element): void {
55
+ if (target) {
56
+ const { tarList } = this
57
+ if (!tarList.some(observer => observer.target === target)) {
58
+ tarList.push({
59
+ target,
60
+ width: target.clientWidth,
61
+ heighe: target.clientHeight
62
+ })
63
+ }
64
+ if (!eventStore.length) {
65
+ eventListener()
66
+ }
67
+ if (!eventStore.some((item) => item === this)) {
68
+ eventStore.push(this)
69
+ }
70
+ }
71
+ }
72
+
73
+ unobserve (target: Element): void {
74
+ XEUtils.remove(eventStore, item => item.tarList.some(observer => observer.target === target))
75
+ }
76
+
77
+ disconnect (): void {
78
+ XEUtils.remove(eventStore, item => item === this)
79
+ }
80
+ }
81
+
82
+ export const globalResize: VxeGlobalResize = {
83
+ create (callback: (...args: any[]) => void) {
84
+ if (window.ResizeObserver) {
85
+ return new window.ResizeObserver(callback)
86
+ }
87
+ return new XEResizeObserver(callback)
88
+ }
89
+ }
@@ -1,49 +1,49 @@
1
- import { log } from './log'
2
- import XEUtils from 'xe-utils'
3
-
4
- /**
5
- * 创建数据仓库
6
- */
7
- export class Store {
8
- private store: any = {}
9
-
10
- mixin (options: any): Store {
11
- XEUtils.each(options, (item, key) => {
12
- this.add(key, item)
13
- })
14
- return this
15
- }
16
-
17
- has (name: string): boolean {
18
- return !!this.get(name)
19
- }
20
-
21
- get (name: string): any {
22
- return this.store[name]
23
- }
24
-
25
- add (name: string, options: any): Store {
26
- const conf = this.store[name]
27
- // 检测是否覆盖
28
- if (process.env.VUE_APP_VXE_ENV === 'development') {
29
- const confKeys = XEUtils.keys(conf)
30
- XEUtils.each(options, (item, key) => {
31
- if (confKeys.includes(key)) {
32
- log.warn('vxe.error.coverProp', [name, key])
33
- }
34
- })
35
- }
36
- this.store[name] = conf ? XEUtils.merge(conf, options) : options
37
- return this
38
- }
39
-
40
- delete (name: string): void {
41
- delete this.store[name]
42
- }
43
-
44
- forEach (callback: any): void {
45
- XEUtils.objectEach(this.store, callback)
46
- }
47
- }
48
-
49
- export default Store
1
+ import { log } from './log'
2
+ import XEUtils from 'xe-utils'
3
+
4
+ /**
5
+ * 创建数据仓库
6
+ */
7
+ export class Store {
8
+ private store: any = {}
9
+
10
+ mixin (options: any): Store {
11
+ XEUtils.each(options, (item, key) => {
12
+ this.add(key, item)
13
+ })
14
+ return this
15
+ }
16
+
17
+ has (name: string): boolean {
18
+ return !!this.get(name)
19
+ }
20
+
21
+ get (name: string): any {
22
+ return this.store[name]
23
+ }
24
+
25
+ add (name: string, options: any): Store {
26
+ const conf = this.store[name]
27
+ // 检测是否覆盖
28
+ if (process.env.VUE_APP_VXE_ENV === 'development') {
29
+ const confKeys = XEUtils.keys(conf)
30
+ XEUtils.each(options, (item, key) => {
31
+ if (confKeys.includes(key)) {
32
+ log.warn('vxe.error.coverProp', [name, key])
33
+ }
34
+ })
35
+ }
36
+ this.store[name] = conf ? XEUtils.merge(conf, options) : options
37
+ return this
38
+ }
39
+
40
+ delete (name: string): void {
41
+ delete this.store[name]
42
+ }
43
+
44
+ forEach (callback: any): void {
45
+ XEUtils.objectEach(this.store, callback)
46
+ }
47
+ }
48
+
49
+ export default Store
@@ -1,7 +1,7 @@
1
- import { VxeGlobalThemeName } from '../../types'
2
-
3
- export const themeConfigStore: {
4
- theme: VxeGlobalThemeName
5
- } = {
6
- theme: ''
7
- }
1
+ import { VxeGlobalThemeName } from '../../types'
2
+
3
+ export const themeConfigStore: {
4
+ theme: VxeGlobalThemeName
5
+ } = {
6
+ theme: ''
7
+ }
@@ -1,34 +1,34 @@
1
- import { computed, inject, provide, ComputedRef } from 'vue'
2
- import { handleCheckInfo } from './permission'
3
-
4
- import type { VxeComponentSizeType, VxeComponentPermissionCodeType, VxeComponentPermissionMethod } from '../../types'
5
-
6
- export function useSize (props: {
7
- size?: VxeComponentSizeType
8
- }) {
9
- // 组件尺寸上下文
10
- const xeSizeInfo = inject('xeSizeInfo', null as ComputedRef<VxeComponentSizeType> | null)
11
- const computeSize = computed(() => {
12
- return props.size || (xeSizeInfo ? xeSizeInfo.value : null)
13
- })
14
- provide('xeSizeInfo', computeSize)
15
-
16
- return { computeSize }
17
- }
18
-
19
- export function usePermission (props: {
20
- permissionCode?: VxeComponentPermissionCodeType
21
- permissionMethod?: VxeComponentPermissionMethod
22
- }) {
23
- const computePermissionInfo = computed(() => {
24
- return handleCheckInfo(props.permissionCode, props.permissionMethod)
25
- })
26
- return {
27
- computePermissionInfo
28
- }
29
- }
30
-
31
- export const useFns = {
32
- useSize,
33
- usePermission
34
- }
1
+ import { computed, inject, provide, ComputedRef } from 'vue'
2
+ import { handleCheckInfo } from './permission'
3
+
4
+ import type { VxeComponentSizeType, VxeComponentPermissionCodeType, VxeComponentPermissionMethod } from '../../types'
5
+
6
+ export function useSize (props: {
7
+ size?: VxeComponentSizeType
8
+ }) {
9
+ // 组件尺寸上下文
10
+ const xeSizeInfo = inject('xeSizeInfo', null as ComputedRef<VxeComponentSizeType> | null)
11
+ const computeSize = computed(() => {
12
+ return props.size || (xeSizeInfo ? xeSizeInfo.value : null)
13
+ })
14
+ provide('xeSizeInfo', computeSize)
15
+
16
+ return { computeSize }
17
+ }
18
+
19
+ export function usePermission (props: {
20
+ permissionCode?: VxeComponentPermissionCodeType
21
+ permissionMethod?: VxeComponentPermissionMethod
22
+ }) {
23
+ const computePermissionInfo = computed(() => {
24
+ return handleCheckInfo(props.permissionCode, props.permissionMethod)
25
+ })
26
+ return {
27
+ computePermissionInfo
28
+ }
29
+ }
30
+
31
+ export const useFns = {
32
+ useSize,
33
+ usePermission
34
+ }
@@ -1,9 +1,9 @@
1
- import VXEStore from './store'
2
-
3
- import { VxeGlobalValidators } from '../../types'
4
-
5
- export const validators = new VXEStore() as VxeGlobalValidators
6
-
7
- if (process.env.VUE_APP_VXE_ENV === 'development') {
8
- Object.assign(validators, { _name: 'Validators' })
9
- }
1
+ import VXEStore from './store'
2
+
3
+ import { VxeGlobalValidators } from '../../types'
4
+
5
+ export const validators = new VXEStore() as VxeGlobalValidators
6
+
7
+ if (process.env.VUE_APP_VXE_ENV === 'development') {
8
+ Object.assign(validators, { _name: 'Validators' })
9
+ }
@@ -1,13 +1,13 @@
1
- export interface VxeGlobalClipboardCopyObj {
2
- text: string
3
- html: string
4
- }
5
-
6
- /**
7
- * 全局剪贴板
8
- */
9
- export interface VxeGlobalClipboard {
10
- getStore(): VxeGlobalClipboardCopyObj
11
- setStore(data: VxeGlobalClipboardCopyObj): void
12
- copy(content: string | number | VxeGlobalClipboardCopyObj): boolean
13
- }
1
+ export interface VxeGlobalClipboardCopyObj {
2
+ text: string
3
+ html: string
4
+ }
5
+
6
+ /**
7
+ * 全局剪贴板
8
+ */
9
+ export interface VxeGlobalClipboard {
10
+ getStore(): VxeGlobalClipboardCopyObj
11
+ setStore(data: VxeGlobalClipboardCopyObj): void
12
+ copy(content: string | number | VxeGlobalClipboardCopyObj): boolean
13
+ }
@@ -1,19 +1,19 @@
1
- /* eslint-disable no-use-before-define */
2
-
3
- export namespace VxeGlobalCommandsHandles {
4
- export interface CommandsOptions {}
5
- }
6
-
7
- /**
8
- * 全局格式化
9
- */
10
- export interface VxeGlobalCommands {
11
- mixin(opts: {
12
- [name: string]: VxeGlobalCommandsHandles.CommandsOptions | ((params: any, ...args: any[]) => void)
13
- }): VxeGlobalCommands
14
- has(name: string): boolean
15
- get(name: string): VxeGlobalCommandsHandles.CommandsOptions
16
- add(name: string, options: VxeGlobalCommandsHandles.CommandsOptions | ((params: any, ...args: any[]) => void)): VxeGlobalCommands
17
- delete(name: string): void
18
- forEach(callback: (options: VxeGlobalCommandsHandles.CommandsOptions, name: string) => void): void
19
- }
1
+ /* eslint-disable no-use-before-define */
2
+
3
+ export namespace VxeGlobalCommandsHandles {
4
+ export interface CommandsOptions {}
5
+ }
6
+
7
+ /**
8
+ * 全局格式化
9
+ */
10
+ export interface VxeGlobalCommands {
11
+ mixin(opts: {
12
+ [name: string]: VxeGlobalCommandsHandles.CommandsOptions | ((params: any, ...args: any[]) => void)
13
+ }): VxeGlobalCommands
14
+ has(name: string): boolean
15
+ get(name: string): VxeGlobalCommandsHandles.CommandsOptions
16
+ add(name: string, options: VxeGlobalCommandsHandles.CommandsOptions | ((params: any, ...args: any[]) => void)): VxeGlobalCommands
17
+ delete(name: string): void
18
+ forEach(callback: (options: VxeGlobalCommandsHandles.CommandsOptions, name: string) => void): void
19
+ }
@@ -1,4 +1,4 @@
1
- export interface VxeGlobalComponents {}
2
-
3
- export type VxeGlobalComponentMethod = (comp: any) => void
4
- export type VxeGlobalGetComponentMethod = <T = any>(name: keyof VxeGlobalComponents) => T
1
+ export interface VxeGlobalComponents {}
2
+
3
+ export type VxeGlobalComponentMethod = (comp: any) => void
4
+ export type VxeGlobalGetComponentMethod = <T = any>(name: keyof VxeGlobalComponents) => T
@@ -1,19 +1,19 @@
1
- /* eslint-disable no-use-before-define */
2
-
3
- export namespace VxeGlobalFormatsHandles {
4
- export interface FormatsOptions {}
5
- }
6
-
7
- /**
8
- * 全局格式化
9
- */
10
- export interface VxeGlobalFormats {
11
- mixin(opts: {
12
- [name: string]: VxeGlobalFormatsHandles.FormatsOptions | ((params: any, ...args: any[]) => string | number)
13
- }): VxeGlobalFormats
14
- has(name: string): boolean
15
- get(name: string): VxeGlobalFormatsHandles.FormatsOptions
16
- add(name: string, options: VxeGlobalFormatsHandles.FormatsOptions | ((params: any, ...args: any[]) => string | number)): VxeGlobalFormats
17
- delete(name: string): void
18
- forEach(callback: (options: VxeGlobalFormatsHandles.FormatsOptions, name: string) => void): void
19
- }
1
+ /* eslint-disable no-use-before-define */
2
+
3
+ export namespace VxeGlobalFormatsHandles {
4
+ export interface FormatsOptions {}
5
+ }
6
+
7
+ /**
8
+ * 全局格式化
9
+ */
10
+ export interface VxeGlobalFormats {
11
+ mixin(opts: {
12
+ [name: string]: VxeGlobalFormatsHandles.FormatsOptions | ((params: any, ...args: any[]) => string | number)
13
+ }): VxeGlobalFormats
14
+ has(name: string): boolean
15
+ get(name: string): VxeGlobalFormatsHandles.FormatsOptions
16
+ add(name: string, options: VxeGlobalFormatsHandles.FormatsOptions | ((params: any, ...args: any[]) => string | number)): VxeGlobalFormats
17
+ delete(name: string): void
18
+ forEach(callback: (options: VxeGlobalFormatsHandles.FormatsOptions, name: string) => void): void
19
+ }
@@ -1,55 +1,55 @@
1
- import { VxeComponentSizeType } from '../tool'
2
-
3
- import { VxeGlobalThemeName, VxeComponentPermissionCodeType, VxeComponentPermissionResult } from '../../types'
4
-
5
- /**
6
- * 全局参数对象
7
- */
8
- export interface VxeGlobalConfig {
9
- /**
10
- * 企业版 - 设置授权 ID
11
- */
12
- authId?: string
13
- /**
14
- * 企业版 - 是否在控制台打印授权信息
15
- */
16
- showAuthLog?: boolean
17
- /**
18
- * 企业版 - 授权状态监听
19
- */
20
- onAuth?(params: {
21
- status: boolean
22
- code: number
23
- msg: string
24
- }): void
25
-
26
- /**
27
- * 权限码全局判断方法
28
- */
29
- permissionMethod?:(params: {
30
- code: VxeComponentPermissionCodeType
31
- }) => VxeComponentPermissionResult
32
- /**
33
- * 全局默认 z-index
34
- */
35
- zIndex?: number
36
- /**
37
- * 全局组件尺寸
38
- */
39
- size?: VxeComponentSizeType
40
- version?: string | number
41
- resizeInterval?: number
42
- /**
43
- * 支持对组件中特定的字段进行翻译
44
- * @param key
45
- * @param args
46
- * @returns
47
- */
48
- translate?:(key: string, args?: any) => string
49
-
50
- /**
51
- * 已废弃,请使用 setTheme('dark')
52
- * @deprecated
53
- */
54
- theme?: VxeGlobalThemeName
55
- }
1
+ import { VxeComponentSizeType } from '../tool'
2
+
3
+ import { VxeGlobalThemeName, VxeComponentPermissionCodeType, VxeComponentPermissionResult } from '../../types'
4
+
5
+ /**
6
+ * 全局参数对象
7
+ */
8
+ export interface VxeGlobalConfig {
9
+ /**
10
+ * 企业版 - 设置授权 ID
11
+ */
12
+ authId?: string
13
+ /**
14
+ * 企业版 - 是否在控制台打印授权信息
15
+ */
16
+ showAuthLog?: boolean
17
+ /**
18
+ * 企业版 - 授权状态监听
19
+ */
20
+ onAuth?(params: {
21
+ status: boolean
22
+ code: number
23
+ msg: string
24
+ }): void
25
+
26
+ /**
27
+ * 权限码全局判断方法
28
+ */
29
+ permissionMethod?:(params: {
30
+ code: VxeComponentPermissionCodeType
31
+ }) => VxeComponentPermissionResult
32
+ /**
33
+ * 全局默认 z-index
34
+ */
35
+ zIndex?: number
36
+ /**
37
+ * 全局组件尺寸
38
+ */
39
+ size?: VxeComponentSizeType
40
+ version?: string | number
41
+ resizeInterval?: number
42
+ /**
43
+ * 支持对组件中特定的字段进行翻译
44
+ * @param key
45
+ * @param args
46
+ * @returns
47
+ */
48
+ translate?:(key: string, args?: any) => string
49
+
50
+ /**
51
+ * 已废弃,请使用 setTheme('dark')
52
+ * @deprecated
53
+ */
54
+ theme?: VxeGlobalThemeName
55
+ }