wui-components-v2 1.1.70 → 1.1.71

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 (79) hide show
  1. package/api/feishu.ts +20 -20
  2. package/api/index.ts +4 -4
  3. package/api/login.ts +51 -51
  4. package/api/tree.ts +28 -28
  5. package/components/action-popup/action-popup.vue +116 -116
  6. package/components/add-address-list/add-address-list.vue +187 -187
  7. package/components/add-address-page/config.ts +297 -297
  8. package/components/audio-play/audio-play.vue +220 -220
  9. package/components/batch-upload-file/batch-upload-file.vue +75 -75
  10. package/components/card-botom-buttons/card-botom-buttons.vue +279 -279
  11. package/components/demo-card/demo-card.vue +44 -44
  12. package/components/fold-card/fold-card.vue +2 -2
  13. package/components/global-loading/GlobalLoading.md +366 -366
  14. package/components/global-loading/global-loading.vue +55 -55
  15. package/components/global-message/GlobalMessage.md +570 -570
  16. package/components/global-toast/GlobalToast.md +261 -261
  17. package/components/global-toast/global-toast.vue +56 -56
  18. package/components/label-value/open-value-more.vue +56 -56
  19. package/components/loading/loading.vue +5 -5
  20. package/components/login-form-box/login-form-box.vue +65 -65
  21. package/components/phone-login-form/phone-login-form.vue +204 -204
  22. package/components/privacy-popup/privacy-popup.vue +191 -191
  23. package/components/scan-input/scan-input.vue +406 -406
  24. package/components/select-col-picker/select-col-picker.vue +168 -168
  25. package/components/tab-search/tab-search.vue +73 -73
  26. package/components/tree-select/components/TreeNode.vue +200 -200
  27. package/components/tree-select/components/index.vue +471 -471
  28. package/components/tree-select/components/tree-select.vue +56 -56
  29. package/components/tree-select/index.vue +93 -93
  30. package/components/user-choose/user-choose.vue +169 -151
  31. package/components/video-play/video-play.vue +56 -56
  32. package/components/wui-auto-update-component/wui-auto-update-component.vue +132 -132
  33. package/components/wui-default/wui-default.vue +49 -49
  34. package/components/wui-details-page/wui-details-page.vue +147 -147
  35. package/components/wui-edit-page/wui-edit-page-copy.vue +757 -757
  36. package/components/wui-edit-page/wui-edit-page.vue +793 -793
  37. package/components/wui-login/wui-login.vue +43 -43
  38. package/components/wui-login1/wui-login.vue +41 -41
  39. package/components/wui-menus/wui-menus-top.vue +137 -137
  40. package/components/wui-menus/wui-menus-top1.vue +8 -8
  41. package/components/wui-menus1/components/banner-carousel.vue +320 -320
  42. package/components/wui-menus1/components/quick-panel.vue +55 -55
  43. package/components/wui-menus1/components/search-bar.vue +49 -49
  44. package/components/wui-menus1/components/section-menus.vue +208 -208
  45. package/components/wui-menus1/wui-menus-top.vue +718 -718
  46. package/components/wui-menus1/wui-menus-top1.vue +398 -398
  47. package/components/wui-notify-info/notify-handle.vue +53 -53
  48. package/components/wui-scan-binding-sensor/wui-scan-binding-sensor.vue +75 -75
  49. package/components/wui-search-history-babbar/components/SearchBar.vue +70 -70
  50. package/components/wui-select-popup/wui-select-popup.vue +1 -0
  51. package/components/wui-tree-page/wui-tree-page.vue +297 -297
  52. package/components/wui-update-component/wui-update-component.vue +221 -221
  53. package/composables/types/theme.ts +65 -65
  54. package/composables/types/user.ts +5 -5
  55. package/composables/useColorGenerator.ts +221 -221
  56. package/composables/useEnumes.ts +43 -43
  57. package/composables/useEventBus.ts +37 -37
  58. package/composables/useGlobalLoading.ts +47 -47
  59. package/composables/useGlobalMessage.ts +53 -53
  60. package/composables/useGlobalToast.ts +63 -63
  61. package/composables/useLocale.ts +54 -54
  62. package/composables/useManualTheme.ts +179 -179
  63. package/composables/useSectionMenus.ts +120 -120
  64. package/composables/useTabbar.ts +50 -50
  65. package/composables/useTheme.ts +74 -74
  66. package/composables/useUser.ts +24 -24
  67. package/index.d.ts +90 -90
  68. package/package.json +24 -24
  69. package/store/manualThemeStore.ts +143 -143
  70. package/store/persist.ts +41 -41
  71. package/store/themeStore.ts +74 -74
  72. package/store/userStore.ts +22 -22
  73. package/styles/dark-mode.scss +498 -498
  74. package/type.ts +154 -154
  75. package/utils/control-tree.ts +353 -353
  76. package/utils/eventBus.ts +36 -36
  77. package/utils/idata-scan.ts +99 -99
  78. package/utils/index.ts +979 -979
  79. package/utils/rsaEncrypt.ts +10 -10
@@ -1,43 +1,43 @@
1
- <!-- 纯色风格登录页面 -->
2
- <script setup lang="ts">
3
- import { defineOptions, defineProps } from 'vue'
4
- import loginFormBox from '../login-form-box/login-form-box.vue'
5
- import { useManualTheme } from '../../composables/useManualTheme'
6
- import type { TabbarItem } from '../../composables/useTabbar'
7
-
8
- defineOptions({
9
- name: 'WuiLogin',
10
- })
11
-
12
- const props = defineProps<Props>()
13
- // 定义 Props 类型
14
- interface Props {
15
- tabbarItems: TabbarItem[]
16
- loginlog: any
17
- showRagister?: boolean
18
- gurl?: string// 获取验证码接口
19
- url?: string// 手机号登录接口
20
- }
21
- const {
22
- currentThemeColor,
23
- } = useManualTheme()
24
- </script>
25
-
26
- <template>
27
- <view class="h-[calc(100vh-44px)] flex flex-col" :style="{ backgroundColor: currentThemeColor.primary }">
28
- <!-- <view class="flex flex-col items-center justify-center pa-3 pb-5">
29
- <wd-img :width="100" :height="100" round :src="loginlog" />
30
- <view class="text-center">
31
- <text class="text-2xl dark:text-white">
32
- 欢迎登录
33
- </text>
34
- </view>
35
- </view> -->
36
- <view class="flex items-center justify-center">
37
- <image class="h-250px w-250px" src="./footerImg.png" />
38
- </view>
39
- <view class="flex-1 border-rd-t-2 p-y-2 bg-white dark:bg-[var(--wot-dark-background2)]">
40
- <loginFormBox :tabbar-items="props.tabbarItems" :show-ragister="showRagister" :gurl="props.gurl" :url="props.url" />
41
- </view>
42
- </view>
43
- </template>
1
+ <!-- 纯色风格登录页面 -->
2
+ <script setup lang="ts">
3
+ import { defineOptions, defineProps } from 'vue'
4
+ import loginFormBox from '../login-form-box/login-form-box.vue'
5
+ import { useManualTheme } from '../../composables/useManualTheme'
6
+ import type { TabbarItem } from '../../composables/useTabbar'
7
+
8
+ defineOptions({
9
+ name: 'WuiLogin',
10
+ })
11
+
12
+ const props = defineProps<Props>()
13
+ // 定义 Props 类型
14
+ interface Props {
15
+ tabbarItems: TabbarItem[]
16
+ loginlog: any
17
+ showRagister?: boolean
18
+ gurl?: string// 获取验证码接口
19
+ url?: string// 手机号登录接口
20
+ }
21
+ const {
22
+ currentThemeColor,
23
+ } = useManualTheme()
24
+ </script>
25
+
26
+ <template>
27
+ <view class="h-[calc(100vh-44px)] flex flex-col" :style="{ backgroundColor: currentThemeColor.primary }">
28
+ <!-- <view class="flex flex-col items-center justify-center pa-3 pb-5">
29
+ <wd-img :width="100" :height="100" round :src="loginlog" />
30
+ <view class="text-center">
31
+ <text class="text-2xl dark:text-white">
32
+ 欢迎登录
33
+ </text>
34
+ </view>
35
+ </view> -->
36
+ <view class="flex items-center justify-center">
37
+ <image class="h-250px w-250px" src="./footerImg.png" />
38
+ </view>
39
+ <view class="flex-1 border-rd-t-2 p-y-2 bg-white dark:bg-[var(--wot-dark-background2)]">
40
+ <loginFormBox :tabbar-items="props.tabbarItems" :show-ragister="showRagister" :gurl="props.gurl" :url="props.url" />
41
+ </view>
42
+ </view>
43
+ </template>
@@ -1,41 +1,41 @@
1
- <!-- 自定义背景风格登录页面 -->
2
- <script setup lang="ts">
3
- import { defineOptions, defineProps } from 'vue'
4
- import loginFormBox from '../login-form-box/login-form-box.vue'
5
- import { useManualTheme } from '../../composables/useManualTheme'
6
- import type { TabbarItem } from '../../composables/useTabbar'
7
-
8
- defineOptions({
9
- name: 'Wuilogin1',
10
- })
11
- const props = defineProps<{
12
- loginlog: string
13
- loginBackgroundimg: string
14
- tabbarItems: TabbarItem[]
15
- showRagister?: boolean
16
- gurl?: string// 获取验证码接口
17
- url?: string// 手机号登录接口
18
- }>()
19
- const {
20
- currentThemeColor,
21
- } = useManualTheme()
22
- console.log(currentThemeColor)
23
- </script>
24
-
25
- <template>
26
- <view class="h-[calc(100vh-44px)] flex flex-col">
27
- <view class="position-relative h-390px w-full">
28
- <image class="h-full w-full" :src="props.loginBackgroundimg" />
29
- <view class="position-absolute bottom-40rpx box-border w-full flex justify-center border-rd-t-2 bg-white bg-opacity-20 p-3 backdrop-blur-md dark:bg-[var(--wot-dark-background2)]">
30
- <image class="mr-1.5 h-66px w-66px border-rd-100" :src="props.loginlog" />
31
- <text class="mt-3 font-size-22px c-#171819 font-bold dark:text-white">
32
- 你好,欢迎登录阀门检测
33
- </text>
34
- </view>
35
- </view>
36
-
37
- <view class="flex-1 border-rd-t-2 p-y-2 bg-white dark:bg-[var(--wot-dark-background2)]">
38
- <loginFormBox :tabbar-items="props.tabbarItems" :show-ragister="showRagister" :gurl="props.gurl" :url="props.url" />
39
- </view>
40
- </view>
41
- </template>
1
+ <!-- 自定义背景风格登录页面 -->
2
+ <script setup lang="ts">
3
+ import { defineOptions, defineProps } from 'vue'
4
+ import loginFormBox from '../login-form-box/login-form-box.vue'
5
+ import { useManualTheme } from '../../composables/useManualTheme'
6
+ import type { TabbarItem } from '../../composables/useTabbar'
7
+
8
+ defineOptions({
9
+ name: 'Wuilogin1',
10
+ })
11
+ const props = defineProps<{
12
+ loginlog: string
13
+ loginBackgroundimg: string
14
+ tabbarItems: TabbarItem[]
15
+ showRagister?: boolean
16
+ gurl?: string// 获取验证码接口
17
+ url?: string// 手机号登录接口
18
+ }>()
19
+ const {
20
+ currentThemeColor,
21
+ } = useManualTheme()
22
+ console.log(currentThemeColor)
23
+ </script>
24
+
25
+ <template>
26
+ <view class="h-[calc(100vh-44px)] flex flex-col">
27
+ <view class="position-relative h-390px w-full">
28
+ <image class="h-full w-full" :src="props.loginBackgroundimg" />
29
+ <view class="position-absolute bottom-40rpx box-border w-full flex justify-center border-rd-t-2 bg-white bg-opacity-20 p-3 backdrop-blur-md dark:bg-[var(--wot-dark-background2)]">
30
+ <image class="mr-1.5 h-66px w-66px border-rd-100" :src="props.loginlog" />
31
+ <text class="mt-3 font-size-22px c-#171819 font-bold dark:text-white">
32
+ 你好,欢迎登录阀门检测
33
+ </text>
34
+ </view>
35
+ </view>
36
+
37
+ <view class="flex-1 border-rd-t-2 p-y-2 bg-white dark:bg-[var(--wot-dark-background2)]">
38
+ <loginFormBox :tabbar-items="props.tabbarItems" :show-ragister="showRagister" :gurl="props.gurl" :url="props.url" />
39
+ </view>
40
+ </view>
41
+ </template>
@@ -1,137 +1,137 @@
1
- <script setup lang="ts">
2
- import { defineOptions } from 'vue'
3
- import { useManualTheme } from '../../composables/useManualTheme'
4
- import { useUser } from '../../composables/useUser'
5
- import { formatChineseDate } from '../../utils'
6
-
7
- defineOptions({
8
- name: 'WuiMenusTop',
9
- })
10
-
11
- const user = useUser().getUserInfo()
12
-
13
- const {
14
- currentThemeColor,
15
- } = useManualTheme()
16
- </script>
17
-
18
- <template>
19
- <view class="position-relative">
20
- <view
21
- class="rounded-b-1rem"
22
- style="box-sizing: border-box; padding: 20px; position: absolute;z-index: -1; height: 350rpx;width: 100%; background: linear-gradient( 180deg, #2094FF 0%, rgba(32,148,255,0.3) 100%);"
23
- :style="{ background: currentThemeColor.primary }"
24
- >
25
- <view class="flex items-center gap-2 text-lg color-white">
26
- <image
27
- class="h-10 w-10 border-rd-100%" style="border:2px solid #fff;" src="../../static/hader.png"
28
- mode="scaleToFill"
29
- />
30
- <view>
31
- <view>你好,{{ user.name }}</view>
32
- </view>
33
- </view>
34
- <view style="padding: 20rpx 0;margin-top: 10px;" class="text-xs color-white">
35
- {{ formatChineseDate() }}
36
- </view>
37
- </view>
38
- <!-- <image
39
- class="h-30 w-50"
40
- style="position: absolute;z-index: -1;top: 0; right: -21px;"
41
- src="../../static/home.png"
42
- mode="scaleToFill"
43
- /> -->
44
- <div class="dashboard-header__illustration">
45
- <div class="dec-circle c-1" />
46
- <div class="dec-circle c-2" />
47
- <div class="dec-cube" />
48
- </div>
49
-
50
- <view class="h-3 p-12" />
51
- </view>
52
- </template>
53
-
54
- <style lang="scss" scoped>
55
- .dashboard-header__illustration {
56
- position: absolute;
57
- right: 15px;
58
- top: 15px;
59
- width: 100px;
60
- height: 100px;
61
- opacity: 0.8;
62
- pointer-events: none;
63
- }
64
-
65
- .dec-circle {
66
- position: absolute;
67
- border-radius: 50%;
68
- background: rgba(255, 255, 255, 0.1);
69
- backdrop-filter: blur(4px);
70
- }
71
-
72
- .c-1 {
73
- width: 80px;
74
- height: 80px;
75
- right: 0;
76
- top: 0;
77
- animation: float 6s ease-in-out infinite;
78
- }
79
-
80
- .c-2 {
81
- width: 40px;
82
- height: 40px;
83
- left: 0;
84
- bottom: 0;
85
- background: rgba(255, 255, 255, 0.2);
86
- animation: float 4s ease-in-out infinite reverse;
87
- }
88
-
89
- .dec-cube {
90
- position: absolute;
91
- top: 25px;
92
- left: 25px;
93
- width: 40px;
94
- height: 40px;
95
- background: linear-gradient(135deg, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.1));
96
- border-radius: 8px;
97
- transform: rotate(45deg);
98
- box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
99
- animation: floatCube 8s ease-in-out infinite;
100
- }
101
-
102
- @keyframes fadeIn {
103
- from {
104
- opacity: 0;
105
- transform: translateY(10px);
106
- }
107
-
108
- to {
109
- opacity: 1;
110
- transform: translateY(0);
111
- }
112
- }
113
-
114
- @keyframes float {
115
-
116
- 0%,
117
- 100% {
118
- transform: translateY(0);
119
- }
120
-
121
- 50% {
122
- transform: translateY(-10px);
123
- }
124
- }
125
-
126
- @keyframes floatCube {
127
-
128
- 0%,
129
- 100% {
130
- transform: rotate(45deg) translateY(0);
131
- }
132
-
133
- 50% {
134
- transform: rotate(45deg) translateY(-8px);
135
- }
136
- }
137
- </style>
1
+ <script setup lang="ts">
2
+ import { defineOptions } from 'vue'
3
+ import { useManualTheme } from '../../composables/useManualTheme'
4
+ import { useUser } from '../../composables/useUser'
5
+ import { formatChineseDate } from '../../utils'
6
+
7
+ defineOptions({
8
+ name: 'WuiMenusTop',
9
+ })
10
+
11
+ const user = useUser().getUserInfo()
12
+
13
+ const {
14
+ currentThemeColor,
15
+ } = useManualTheme()
16
+ </script>
17
+
18
+ <template>
19
+ <view class="position-relative">
20
+ <view
21
+ class="rounded-b-1rem"
22
+ style="box-sizing: border-box; padding: 20px; position: absolute;z-index: -1; height: 350rpx;width: 100%; background: linear-gradient( 180deg, #2094FF 0%, rgba(32,148,255,0.3) 100%);"
23
+ :style="{ background: currentThemeColor.primary }"
24
+ >
25
+ <view class="flex items-center gap-2 text-lg color-white">
26
+ <image
27
+ class="h-10 w-10 border-rd-100%" style="border:2px solid #fff;" src="../../static/hader.png"
28
+ mode="scaleToFill"
29
+ />
30
+ <view>
31
+ <view>你好,{{ user.name }}</view>
32
+ </view>
33
+ </view>
34
+ <view style="padding: 20rpx 0;margin-top: 10px;" class="text-xs color-white">
35
+ {{ formatChineseDate() }}
36
+ </view>
37
+ </view>
38
+ <!-- <image
39
+ class="h-30 w-50"
40
+ style="position: absolute;z-index: -1;top: 0; right: -21px;"
41
+ src="../../static/home.png"
42
+ mode="scaleToFill"
43
+ /> -->
44
+ <div class="dashboard-header__illustration">
45
+ <div class="dec-circle c-1" />
46
+ <div class="dec-circle c-2" />
47
+ <div class="dec-cube" />
48
+ </div>
49
+
50
+ <view class="h-3 p-12" />
51
+ </view>
52
+ </template>
53
+
54
+ <style lang="scss" scoped>
55
+ .dashboard-header__illustration {
56
+ position: absolute;
57
+ right: 15px;
58
+ top: 15px;
59
+ width: 100px;
60
+ height: 100px;
61
+ opacity: 0.8;
62
+ pointer-events: none;
63
+ }
64
+
65
+ .dec-circle {
66
+ position: absolute;
67
+ border-radius: 50%;
68
+ background: rgba(255, 255, 255, 0.1);
69
+ backdrop-filter: blur(4px);
70
+ }
71
+
72
+ .c-1 {
73
+ width: 80px;
74
+ height: 80px;
75
+ right: 0;
76
+ top: 0;
77
+ animation: float 6s ease-in-out infinite;
78
+ }
79
+
80
+ .c-2 {
81
+ width: 40px;
82
+ height: 40px;
83
+ left: 0;
84
+ bottom: 0;
85
+ background: rgba(255, 255, 255, 0.2);
86
+ animation: float 4s ease-in-out infinite reverse;
87
+ }
88
+
89
+ .dec-cube {
90
+ position: absolute;
91
+ top: 25px;
92
+ left: 25px;
93
+ width: 40px;
94
+ height: 40px;
95
+ background: linear-gradient(135deg, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.1));
96
+ border-radius: 8px;
97
+ transform: rotate(45deg);
98
+ box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
99
+ animation: floatCube 8s ease-in-out infinite;
100
+ }
101
+
102
+ @keyframes fadeIn {
103
+ from {
104
+ opacity: 0;
105
+ transform: translateY(10px);
106
+ }
107
+
108
+ to {
109
+ opacity: 1;
110
+ transform: translateY(0);
111
+ }
112
+ }
113
+
114
+ @keyframes float {
115
+
116
+ 0%,
117
+ 100% {
118
+ transform: translateY(0);
119
+ }
120
+
121
+ 50% {
122
+ transform: translateY(-10px);
123
+ }
124
+ }
125
+
126
+ @keyframes floatCube {
127
+
128
+ 0%,
129
+ 100% {
130
+ transform: rotate(45deg) translateY(0);
131
+ }
132
+
133
+ 50% {
134
+ transform: rotate(45deg) translateY(-8px);
135
+ }
136
+ }
137
+ </style>
@@ -1,8 +1,8 @@
1
- <template>
2
- <view>
3
- <image
4
- src="../../imgs/homeLog.png"
5
- class="w-830rpx"
6
- />
7
- </view>
8
- </template>
1
+ <template>
2
+ <view>
3
+ <image
4
+ src="../../imgs/homeLog.png"
5
+ class="w-830rpx"
6
+ />
7
+ </view>
8
+ </template>