@vxe-ui/core 1.0.13 → 3.0.0

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 (51) hide show
  1. package/README.md +1 -3
  2. package/es/src/core.js +9 -4
  3. package/es/src/i18nStore.js +2 -3
  4. package/es/src/log.js +1 -1
  5. package/es/src/mixins.js +34 -0
  6. package/es/src/permission.js +36 -14
  7. package/lib/index.umd.js +173 -105
  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 +15 -6
  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.js +2 -3
  19. package/lib/src/i18nStore.min.js +1 -1
  20. package/lib/src/iconStore.min.js +1 -1
  21. package/lib/src/interceptor.min.js +1 -1
  22. package/lib/src/log.js +1 -1
  23. package/lib/src/log.min.js +1 -1
  24. package/lib/src/menus.min.js +1 -1
  25. package/lib/src/mixins.js +43 -0
  26. package/lib/src/mixins.min.js +1 -0
  27. package/lib/src/permission.js +37 -15
  28. package/lib/src/permission.min.js +1 -1
  29. package/lib/src/renderer.min.js +1 -1
  30. package/lib/src/resize.min.js +1 -1
  31. package/lib/src/store.min.js +1 -1
  32. package/lib/src/themeStore.min.js +1 -1
  33. package/lib/src/validators.min.js +1 -1
  34. package/package.json +6 -7
  35. package/packages/src/core.ts +10 -3
  36. package/packages/src/i18nStore.ts +2 -4
  37. package/packages/src/mixins.ts +39 -0
  38. package/packages/src/permission.ts +35 -13
  39. package/types/core/global-event.d.ts +4 -3
  40. package/types/core/global-lang.d.ts +14 -1
  41. package/types/core/index.d.ts +20 -6
  42. package/types/core/mixins.d.ts +21 -0
  43. package/types/index.d.ts +3 -0
  44. package/types/tool/common.d.ts +12 -6
  45. package/README.en.md +0 -31
  46. package/README.zh-TW.md +0 -31
  47. package/es/src/useFns.js +0 -23
  48. package/lib/src/useFns.js +0 -33
  49. package/lib/src/useFns.min.js +0 -1
  50. package/packages/src/useFns.ts +0 -34
  51. package/types/core/useFn.d.ts +0 -27
package/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # vxe-core
2
2
 
3
- 简体中文 | [繁體中文](README.zh-TW.md) | [English](README.en.md)
4
-
5
- Vxe UI 核心库.
3
+ Vxe UI v3.x 核心库.
6
4
 
7
5
  ## 使用
8
6
 
package/es/src/core.js CHANGED
@@ -17,7 +17,7 @@ import { clipboard } from './clipboard';
17
17
  import { permission } from './permission';
18
18
  import { log } from './log';
19
19
  import { hooks } from './hooks';
20
- import { useFns } from './useFns';
20
+ import { globalMixins } from './mixins';
21
21
  export function setTheme(name) {
22
22
  const theme = !name || name === 'default' ? 'light' : name;
23
23
  themeConfigStore.theme = theme;
@@ -70,7 +70,7 @@ export function setIcon(options) {
70
70
  export function getIcon(key) {
71
71
  return arguments.length ? XEUtils.get(iconConfigStore, key) : iconConfigStore;
72
72
  }
73
- export const coreVersion = "1.0.13";
73
+ export const coreVersion = "3.0.0";
74
74
  const installedPlugins = [];
75
75
  export function use(Plugin, options) {
76
76
  if (Plugin && Plugin.install) {
@@ -90,8 +90,13 @@ export function component(comp) {
90
90
  components[comp.name] = comp;
91
91
  }
92
92
  }
93
+ export function renderEmptyElement(_vm) {
94
+ const { _e } = _vm;
95
+ return _e();
96
+ }
93
97
  export const VxeUI = {
94
98
  coreVersion,
99
+ renderEmptyElement,
95
100
  setTheme,
96
101
  getTheme,
97
102
  setConfig,
@@ -119,7 +124,7 @@ export const VxeUI = {
119
124
  hooks,
120
125
  component,
121
126
  getComponent,
122
- useFns,
127
+ globalMixins,
123
128
  use
124
129
  };
125
130
  setTheme();
@@ -134,7 +139,7 @@ export * from './commands';
134
139
  export * from './interceptor';
135
140
  export * from './clipboard';
136
141
  export * from './permission';
137
- export * from './useFns';
142
+ export * from './mixins';
138
143
  export * from './log';
139
144
  export * from './hooks';
140
145
  export default VxeUI;
@@ -1,5 +1,4 @@
1
- import { reactive } from 'vue';
2
- export const i18nConfigStore = reactive({
1
+ export const i18nConfigStore = {
3
2
  language: '',
4
3
  langMaps: {}
5
- });
4
+ };
package/es/src/log.js CHANGED
@@ -6,7 +6,7 @@ function createLog(type, name) {
6
6
  return msg;
7
7
  };
8
8
  }
9
- const version = "1.0.13";
9
+ const version = "3.0.0";
10
10
  export const log = {
11
11
  create: createLog,
12
12
  warn: createLog('warn', `v${version}`),
@@ -0,0 +1,34 @@
1
+ import Vue from 'vue';
2
+ import { handleCheckInfo } from './permission';
3
+ export const sizeMixin = Vue.extend({
4
+ inject: {
5
+ $xeSizeInfo: {
6
+ default: null
7
+ }
8
+ },
9
+ provide() {
10
+ return {
11
+ $xeSizeInfo: {
12
+ size: this.computeSize
13
+ }
14
+ };
15
+ },
16
+ computed: {
17
+ computeSize() {
18
+ const { size } = this;
19
+ const $xeSizeInfo = this.$xeSizeInfo;
20
+ return size || ($xeSizeInfo ? $xeSizeInfo.size : null);
21
+ }
22
+ }
23
+ });
24
+ export const permissionMixin = Vue.extend({
25
+ computed: {
26
+ computePermissionInfo() {
27
+ return handleCheckInfo(this.permissionCode, this.permissionMethod);
28
+ }
29
+ }
30
+ });
31
+ export const globalMixins = {
32
+ sizeMixin,
33
+ permissionMixin
34
+ };
@@ -1,23 +1,45 @@
1
1
  import { globalConfigStore } from './globalStore';
2
2
  import XEUtils from 'xe-utils';
3
- export function handleCheckInfo(code, permissionMethod) {
4
- let visible = true;
5
- let disabled = false;
3
+ export function handleCheckInfo(permissionCode, permissionMethod) {
4
+ let checkVisible = true;
5
+ let checkDisabled = false;
6
6
  const checkMethod = permissionMethod || globalConfigStore.permissionMethod;
7
- if (code && checkMethod) {
8
- const rest = checkMethod({ code });
9
- if (XEUtils.isBoolean(rest)) {
10
- visible = rest;
11
- }
12
- else if (rest) {
13
- visible = !!rest.visible;
14
- disabled = !!rest.disabled;
7
+ if (permissionCode && checkMethod) {
8
+ checkVisible = false;
9
+ checkDisabled = true;
10
+ let vDone = false;
11
+ let dDone = false;
12
+ // 使用 | 隔开:任意一个为可视,则可视;任意一个禁用,则禁用
13
+ const codeList = String(permissionCode).split('|');
14
+ for (let i = 0; i < codeList.length; i++) {
15
+ const code = codeList[i];
16
+ let visible = true;
17
+ let disabled = false;
18
+ const rest = checkMethod({ code });
19
+ if (XEUtils.isBoolean(rest)) {
20
+ visible = rest;
21
+ }
22
+ else if (rest) {
23
+ visible = !!rest.visible;
24
+ disabled = !!rest.disabled;
25
+ }
26
+ if (!disabled && !dDone) {
27
+ dDone = true;
28
+ checkDisabled = disabled;
29
+ }
30
+ if (visible && !vDone) {
31
+ vDone = true;
32
+ checkVisible = visible;
33
+ }
34
+ if (vDone && dDone) {
35
+ break;
36
+ }
15
37
  }
16
38
  }
17
39
  const info = {
18
- code,
19
- visible,
20
- disabled
40
+ code: permissionCode,
41
+ visible: checkVisible,
42
+ disabled: checkDisabled
21
43
  };
22
44
  return info;
23
45
  }