widget.qw 1.0.83 → 1.0.85

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 (108) hide show
  1. package/.env.development +10 -10
  2. package/.env.production +8 -8
  3. package/README.md +75 -75
  4. package/build/style.css +521 -471
  5. package/build/widget.qw.es.js +253 -84
  6. package/build/widget.qw.umd.js +252 -83
  7. package/index.html +17 -17
  8. package/package.json +47 -47
  9. package/src/App.vue +26 -26
  10. package/src/api/index.js +173 -165
  11. package/src/components/AuditBar.vue +396 -396
  12. package/src/components/BillCard.vue +164 -164
  13. package/src/components/CascaderPicker.vue +132 -132
  14. package/src/components/CascaderPop.vue +375 -371
  15. package/src/components/CheckGroup.vue +113 -113
  16. package/src/components/DatetimeDropdown.vue +62 -0
  17. package/src/components/{DatetimePicker/index.vue → DatetimePicker.vue} +124 -124
  18. package/src/components/DayDropdown.vue +56 -56
  19. package/src/components/FilePicker.vue +169 -169
  20. package/src/components/HeadBar.vue +130 -0
  21. package/src/components/Input.vue +80 -80
  22. package/src/components/MonthDropdown.vue +51 -51
  23. package/src/components/MultiPicker.vue +123 -123
  24. package/src/components/ObjsEditor.vue +334 -334
  25. package/src/components/SecretNotify.js +5 -5
  26. package/src/components/Sheet.vue +92 -92
  27. package/src/components/SingleApiPicker.vue +108 -108
  28. package/src/components/SinglePicker.vue +102 -102
  29. package/src/components/SingleUserSelector.vue +425 -425
  30. package/src/components/Switch.vue +64 -64
  31. package/src/components/TreePicker.vue +113 -113
  32. package/src/components/UserPicker.vue +106 -106
  33. package/src/components/UserProfile.vue +129 -129
  34. package/src/components/UsersPicker.vue +118 -118
  35. package/src/components/YearDropdown.vue +59 -59
  36. package/src/components/data_selector.vue +303 -303
  37. package/src/components/image_picker.vue +123 -123
  38. package/src/components/images_picker.vue +195 -195
  39. package/src/components/index.js +172 -162
  40. package/src/components/mult_list_selector.vue +155 -155
  41. package/src/components/subdepartment_selector.vue +481 -481
  42. package/src/components/user_selector.vue +639 -639
  43. package/src/components/widget/DataPop.vue +95 -95
  44. package/src/components/{DatetimePicker → widget}/DatetimePop.vue +342 -342
  45. package/src/components/widget/TreePop.vue +88 -88
  46. package/src/components/widget/UserPop.vue +347 -347
  47. package/src/main.js +117 -117
  48. package/src/router/index.ts +183 -173
  49. package/src/util/array_util.js +32 -32
  50. package/src/util/auth_util.js +72 -72
  51. package/src/util/bool_util.js +5 -5
  52. package/src/util/bus.js +1 -1
  53. package/src/util/cache_util.js +18 -18
  54. package/src/util/errer_code.js +6 -6
  55. package/src/util/eval_util.js +19 -19
  56. package/src/util/icon_util.js +36 -36
  57. package/src/util/image_util.js +27 -27
  58. package/src/util/index.js +57 -57
  59. package/src/util/num_util.js +70 -70
  60. package/src/util/obj_util.js +28 -28
  61. package/src/util/request.js +73 -73
  62. package/src/util/request_json.js +71 -71
  63. package/src/util/request_json_mute.js +65 -65
  64. package/src/util/request_upload.js +79 -79
  65. package/src/util/route_util.js +31 -31
  66. package/src/util/str_util.js +143 -143
  67. package/src/util/time_util.js +406 -406
  68. package/src/util/toast_util.js +24 -24
  69. package/src/util/tree_util.js +153 -153
  70. package/src/util/uuid_util.js +9 -9
  71. package/src/util/validate.js +182 -182
  72. package/src/util/vue_filter.js +223 -223
  73. package/src/views/auditbar/index.vue +78 -78
  74. package/src/views/billcard/index.vue +48 -48
  75. package/src/views/cascaderpicker/index.vue +0 -0
  76. package/src/views/cascaderpicker/userpicker.vue +183 -0
  77. package/src/views/cascaderpop/index.vue +90 -90
  78. package/src/views/checkgroup/index.vue +35 -35
  79. package/src/views/dataSelector/index.vue +48 -48
  80. package/src/views/datetimedropdown/index.vue +34 -0
  81. package/src/views/datetimepicker/index.vue +34 -34
  82. package/src/views/daydropdown/index.vue +31 -31
  83. package/src/views/filepicker/index.vue +32 -32
  84. package/src/views/headbar/index.vue +28 -0
  85. package/src/views/home/index.vue +0 -0
  86. package/src/views/imagepicker/index.vue +31 -31
  87. package/src/views/imagespicker/index.vue +37 -37
  88. package/src/views/input/index.vue +35 -35
  89. package/src/views/monthdropdown/index.vue +31 -31
  90. package/src/views/multListSelector/index.vue +61 -61
  91. package/src/views/multipicker/index.vue +36 -36
  92. package/src/views/objseditor/index.vue +277 -277
  93. package/src/views/productSelector/index.vue +35 -35
  94. package/src/views/projectpicker/index.vue +41 -41
  95. package/src/views/secretnotify/index.vue +27 -27
  96. package/src/views/sheet/index.vue +45 -45
  97. package/src/views/singlepicker/index.vue +35 -35
  98. package/src/views/subdepartmentSelector/index.vue +40 -40
  99. package/src/views/switch/index.vue +34 -34
  100. package/src/views/treepicker/index.vue +41 -41
  101. package/src/views/userSelector/index.vue +54 -54
  102. package/src/views/userSelectorNew/index.vue +45 -45
  103. package/src/views/userpicker/index.vue +43 -43
  104. package/src/views/userprofile/index.vue +30 -30
  105. package/src/views/userspicker/index.vue +43 -43
  106. package/src/views/yeardropdown/index.vue +32 -32
  107. package/src/vm/index.js +1 -1
  108. package/vite.config.ts +122 -122
@@ -1,162 +1,172 @@
1
- // 引入封装好的组件
2
- import vm from "../vm";
3
- import AuditBar from "./AuditBar.vue";
4
- import Input from "./Input.vue";
5
- import SinglePicker from "./SinglePicker.vue";
6
- import MultiPicker from './MultiPicker.vue'
7
- import CheckGroup from "./CheckGroup.vue";
8
- import DatetimePicker from "./DatetimePicker/index.vue";
9
- import DataSelector from "./data_selector.vue";
10
- import MultListSelector from "./mult_list_selector.vue";
11
- import SubdepartmentSelector from "./subdepartment_selector.vue";
12
- import UserSelector from "./user_selector.vue";
13
- import ImagePicker from "./image_picker.vue";
14
- import ImagesPicker from "./images_picker.vue";
15
- import FilePicker from "./FilePicker.vue";
16
- import SingleUserSelector from "./SingleUserSelector.vue";
17
- import UsersPicker from "./UsersPicker.vue"
18
- import UserPicker from "./UserPicker.vue"
19
- import UserProfile from "./UserProfile.vue"
20
- import BillCard from './BillCard.vue'
21
- import YearDropdown from "./YearDropdown.vue";
22
- import MonthDropdown from "./MonthDropdown.vue";
23
- import DayDropdown from "./DayDropdown.vue";
24
- import Switch from './Switch.vue'
25
- import Sheet from './Sheet.vue'
26
- import TreePicker from './TreePicker.vue'
27
- import CascaderPop from './CascaderPop.vue'
28
- import CascaderPicker from './CascaderPicker.vue'
29
- import SingleApiPicker from "./SingleApiPicker.vue";
30
- import ObjsEditor from './ObjsEditor.vue'
31
-
32
- const components = [
33
- {
34
- name: "WidgetQwAuditBar",
35
- widget: AuditBar,
36
- },
37
- {
38
- name: "WidgetQwInput",
39
- widget: Input,
40
- },
41
- {
42
- name: "WidgetQwSinglePicker",
43
- widget: SinglePicker,
44
- },
45
- {
46
- name: "WidgetQwMultiPicker",
47
- widget: MultiPicker,
48
- },
49
- {
50
- name: "WidgetQwCheckGroup",
51
- widget: CheckGroup,
52
- },
53
- {
54
- name: "WidgetQwDatetimePicker",
55
- widget: DatetimePicker,
56
- },
57
- {
58
- name: "WidgetQwDataSelector",
59
- widget: DataSelector,
60
- },
61
- {
62
- name: "WidgetQwMultListSelector",
63
- widget: MultListSelector,
64
- },
65
- {
66
- name: "WidgetQwSubdepartmentSelector",
67
- widget: SubdepartmentSelector,
68
- },
69
- {
70
- name: "WidgetQwSingleUserSelector",
71
- widget: SingleUserSelector,
72
- },
73
- {
74
- name: "WidgetQwImagePicker",
75
- widget: ImagePicker,
76
- },
77
- {
78
- name: "WidgetQwImagesPicker",
79
- widget: ImagesPicker,
80
- },
81
- {
82
- name: "WidgetQwFilePicker",
83
- widget: FilePicker,
84
- },
85
- {
86
- name: 'WidgetQwBillCard',
87
- widget: BillCard
88
- },
89
- {
90
- name: 'WidgetQwUserSelector',
91
- widget: UserSelector
92
- },
93
- {
94
- name: 'WidgetQwUsersPicker',
95
- widget: UsersPicker
96
- },
97
- {
98
- name: 'WidgetQwUserPicker',
99
- widget: UserPicker
100
- },
101
- {
102
- name: 'WidgetQwUserProfile',
103
- widget: UserProfile
104
- },
105
- {
106
- name: 'WidgetQwYearDropdown',
107
- widget: YearDropdown
108
- },
109
- {
110
- name: 'WidgetQwMonthDropdown',
111
- widget: MonthDropdown
112
- },
113
- {
114
- name: 'WidgetQwDayDropdown',
115
- widget: DayDropdown
116
- },
117
- {
118
- name: 'WidgetQwSwitch',
119
- widget: Switch
120
- },
121
- {
122
- name: 'WidgetQwSheet',
123
- widget: Sheet
124
- },
125
- {
126
- name: 'WidgetQwTreePicker',
127
- widget: TreePicker
128
- },
129
- {
130
- name: 'WidgetQwCascaderPop',
131
- widget: CascaderPop
132
- },
133
- {
134
- name: 'WidgetQwCascaderPicker',
135
- widget: CascaderPicker
136
- },
137
- {
138
- name: 'WidgetQwSingleApiPicker',
139
- widget: SingleApiPicker
140
- },
141
- {
142
- name: "WidgetQwObjsEditor",
143
- widget: ObjsEditor,
144
- },
145
- ];
146
- // 导出组件
147
- export const WidgetQw = {
148
- install(app) {
149
- components.forEach((component) => {
150
- app.component(component.name, component.widget);
151
- });
152
- },
153
- };
154
-
155
- // 导出初始化方法
156
- export function setup(params) {
157
- Object.keys(params).forEach(key => {
158
- vm[key] = params[key]
159
- })
160
- }
161
-
162
- export * from "./SecretNotify";
1
+ // 引入封装好的组件
2
+ import vm from "../vm";
3
+ import HeadBar from "./HeadBar.vue";
4
+ import AuditBar from "./AuditBar.vue";
5
+ import Input from "./Input.vue";
6
+ import SinglePicker from "./SinglePicker.vue";
7
+ import MultiPicker from './MultiPicker.vue'
8
+ import CheckGroup from "./CheckGroup.vue";
9
+ import DatetimePicker from "./DatetimePicker.vue";
10
+ import DatetimeDropdown from "./DatetimeDropdown.vue";
11
+ import DataSelector from "./data_selector.vue";
12
+ import MultListSelector from "./mult_list_selector.vue";
13
+ import SubdepartmentSelector from "./subdepartment_selector.vue";
14
+ import UserSelector from "./user_selector.vue";
15
+ import ImagePicker from "./image_picker.vue";
16
+ import ImagesPicker from "./images_picker.vue";
17
+ import FilePicker from "./FilePicker.vue";
18
+ import SingleUserSelector from "./SingleUserSelector.vue";
19
+ import UsersPicker from "./UsersPicker.vue"
20
+ import UserPicker from "./UserPicker.vue"
21
+ import UserProfile from "./UserProfile.vue"
22
+ import BillCard from './BillCard.vue'
23
+ import YearDropdown from "./YearDropdown.vue";
24
+ import MonthDropdown from "./MonthDropdown.vue";
25
+ import DayDropdown from "./DayDropdown.vue";
26
+ import Switch from './Switch.vue'
27
+ import Sheet from './Sheet.vue'
28
+ import TreePicker from './TreePicker.vue'
29
+ import CascaderPop from './CascaderPop.vue'
30
+ import CascaderPicker from './CascaderPicker.vue'
31
+ import SingleApiPicker from "./SingleApiPicker.vue";
32
+ import ObjsEditor from './ObjsEditor.vue'
33
+
34
+ const components = [
35
+ {
36
+ name: "WidgetQwHeadBar",
37
+ widget: HeadBar,
38
+ },
39
+ {
40
+ name: "WidgetQwAuditBar",
41
+ widget: AuditBar,
42
+ },
43
+ {
44
+ name: "WidgetQwInput",
45
+ widget: Input,
46
+ },
47
+ {
48
+ name: "WidgetQwSinglePicker",
49
+ widget: SinglePicker,
50
+ },
51
+ {
52
+ name: "WidgetQwMultiPicker",
53
+ widget: MultiPicker,
54
+ },
55
+ {
56
+ name: "WidgetQwCheckGroup",
57
+ widget: CheckGroup,
58
+ },
59
+ {
60
+ name: "WidgetQwDatetimePicker",
61
+ widget: DatetimePicker,
62
+ },
63
+ {
64
+ name: "WidgetQwDatetimeDropdown",
65
+ widget: DatetimeDropdown,
66
+ },
67
+ {
68
+ name: "WidgetQwDataSelector",
69
+ widget: DataSelector,
70
+ },
71
+ {
72
+ name: "WidgetQwMultListSelector",
73
+ widget: MultListSelector,
74
+ },
75
+ {
76
+ name: "WidgetQwSubdepartmentSelector",
77
+ widget: SubdepartmentSelector,
78
+ },
79
+ {
80
+ name: "WidgetQwSingleUserSelector",
81
+ widget: SingleUserSelector,
82
+ },
83
+ {
84
+ name: "WidgetQwImagePicker",
85
+ widget: ImagePicker,
86
+ },
87
+ {
88
+ name: "WidgetQwImagesPicker",
89
+ widget: ImagesPicker,
90
+ },
91
+ {
92
+ name: "WidgetQwFilePicker",
93
+ widget: FilePicker,
94
+ },
95
+ {
96
+ name: 'WidgetQwBillCard',
97
+ widget: BillCard
98
+ },
99
+ {
100
+ name: 'WidgetQwUserSelector',
101
+ widget: UserSelector
102
+ },
103
+ {
104
+ name: 'WidgetQwUsersPicker',
105
+ widget: UsersPicker
106
+ },
107
+ {
108
+ name: 'WidgetQwUserPicker',
109
+ widget: UserPicker
110
+ },
111
+ {
112
+ name: 'WidgetQwUserProfile',
113
+ widget: UserProfile
114
+ },
115
+ {
116
+ name: 'WidgetQwYearDropdown',
117
+ widget: YearDropdown
118
+ },
119
+ {
120
+ name: 'WidgetQwMonthDropdown',
121
+ widget: MonthDropdown
122
+ },
123
+ {
124
+ name: 'WidgetQwDayDropdown',
125
+ widget: DayDropdown
126
+ },
127
+ {
128
+ name: 'WidgetQwSwitch',
129
+ widget: Switch
130
+ },
131
+ {
132
+ name: 'WidgetQwSheet',
133
+ widget: Sheet
134
+ },
135
+ {
136
+ name: 'WidgetQwTreePicker',
137
+ widget: TreePicker
138
+ },
139
+ {
140
+ name: 'WidgetQwCascaderPop',
141
+ widget: CascaderPop
142
+ },
143
+ {
144
+ name: 'WidgetQwCascaderPicker',
145
+ widget: CascaderPicker
146
+ },
147
+ {
148
+ name: 'WidgetQwSingleApiPicker',
149
+ widget: SingleApiPicker
150
+ },
151
+ {
152
+ name: "WidgetQwObjsEditor",
153
+ widget: ObjsEditor,
154
+ },
155
+ ];
156
+ // 导出组件
157
+ export const WidgetQw = {
158
+ install(app) {
159
+ components.forEach((component) => {
160
+ app.component(component.name, component.widget);
161
+ });
162
+ },
163
+ };
164
+
165
+ // 导出初始化方法
166
+ export function setup(params) {
167
+ Object.keys(params).forEach(key => {
168
+ vm[key] = params[key]
169
+ })
170
+ }
171
+
172
+ export * from "./SecretNotify";
@@ -1,156 +1,156 @@
1
- <template>
2
- <!-- Tips section with corrected syntax -->
3
- <div class="confirmation-tips" v-if="tips && tips.length > 0">
4
- <van-icon name="info" color="#1989fa" />
5
- <span>{{ tips }}</span>
6
- </div>
7
-
8
- <van-checkbox-group
9
- :model-value="modelValue"
10
- @update:model-value="$emit('update:modelValue', $event)"
11
- class="confirmation-group"
12
- :required="required"
13
- :disabled="props.disabled"
14
- :rules="rules"
15
- >
16
- <div class="confirmation-item" v-for="item in options" :key="item.value">
17
- <van-checkbox
18
- :name="item.value"
19
- shape="square"
20
- icon-size="18px"
21
- class="custom-checkbox"
22
- >
23
- <span class="option-text">{{ item.label }}</span>
24
- </van-checkbox>
25
- </div>
26
- </van-checkbox-group>
27
- </template>
28
-
29
- <script setup>
30
- import { ref, watch, nextTick } from 'vue';
31
- const props = defineProps({
32
- options: {
33
- type: Array,
34
- required: true
35
- },
36
- modelValue: {
37
- type: Array,
38
- default: () => []
39
- },
40
- disabled: {
41
- type: Boolean,
42
- default: false
43
- },
44
- required: {
45
- type: Boolean,
46
- default: true
47
- },
48
- tips: {
49
- type: String,
50
- default: ''
51
- },
52
- rules : {
53
- type: Array,
54
- default: () => []
55
- }
56
- });
57
-
58
- defineEmits(['update:modelValue']);
59
-
60
- // watch(() => props.disabled, (newVal) => {
61
- // console.log('disabled状态变化:', newVal);
62
- // // 强制更新复选框状态
63
- // nextTick(() => {
64
- // const checkboxes = document.querySelectorAll('.van-checkbox');
65
- // checkboxes.forEach(checkbox => {
66
- // checkbox.style.pointerEvents = newVal ? 'none' : 'auto';
67
- // checkbox.style.opacity = newVal ? '0.6' : '1';
68
- // });
69
- // });
70
- // });
71
- </script>
72
-
73
- <style scoped>
74
- /* // 修改 confirmation-group 和 confirmation-item 的样式 */
75
- .confirmation-group {
76
- padding: 0 16px;
77
- --van-checkbox-disabled-icon-color: black;
78
- }
79
-
80
- .confirmation-item {
81
- padding: 12px 16px;
82
- margin: 0 -16px;
83
- border-bottom: 1px solid #f5f5f5;
84
- /* 禁用状态样式 */
85
-
86
- }
87
-
88
- /* // 在下方添加媒体查询适配小屏幕 */
89
- @media (max-width: 320px) {
90
- .confirmation-item {
91
- padding: 12px 8px;
92
- margin: 0 -8px;
93
- }
94
- }
95
-
96
- .confirmation-item:last-child {
97
- border-bottom: none;
98
- }
99
-
100
- /* 新增样式 */
101
- .confirmation-tips {
102
- padding: 12px 16px;
103
- background: #f0faff;
104
- border-radius: 8px;
105
- margin: 10px 16px;
106
- display: flex;
107
- align-items: center;
108
- color: #1989fa;
109
- font-size: 13px;
110
- border: 1px solid #d9efff;
111
- }
112
-
113
- .confirmation-tips .van-icon {
114
- margin-right: 8px;
115
- }
116
-
117
- /* 新增字体继承样式 */
118
- .confirmation-group {
119
- font-size: inherit; /* 继承父级字体大小 */
120
- }
121
-
122
- .option-text {
123
- font-size: 14px; /* 明确指定字体大小 */
124
- line-height: 1.5; /* 保持行高一致 */
125
- /* color:black; */
126
- }
127
-
128
- /* 适配移动端的字体调整 */
129
- @media (max-width: 375px) {
130
- .option-text {
131
- font-size: 13px;
132
- }
133
- }
134
-
135
- /* 新增禁用状态样式 */
136
- .custom-checkbox:disabled :deep(.--van-checkbox__icon) {
137
- background-color: #f5f5f5;
138
- border-color: #ebedf0;
139
- transition: all 0.3s;
140
- }
141
-
142
- .custom-checkbox:disabled :deep(.van-checkbox__icon--checked) {
143
- background-color: #1989fa;
144
- border-color: #1989fa;
145
- opacity: 0.7;
146
- }
147
-
148
- .van-checkbox--disabled :deep(.option-text) {
149
- color: #969799;
150
- }
151
-
152
- .van-checkbox--disabled.van-checkbox--checked :deep(.option-text) {
153
- color: #1989fa;
154
- opacity: 0.8;
155
- }
1
+ <template>
2
+ <!-- Tips section with corrected syntax -->
3
+ <div class="confirmation-tips" v-if="tips && tips.length > 0">
4
+ <van-icon name="info" color="#1989fa" />
5
+ <span>{{ tips }}</span>
6
+ </div>
7
+
8
+ <van-checkbox-group
9
+ :model-value="modelValue"
10
+ @update:model-value="$emit('update:modelValue', $event)"
11
+ class="confirmation-group"
12
+ :required="required"
13
+ :disabled="props.disabled"
14
+ :rules="rules"
15
+ >
16
+ <div class="confirmation-item" v-for="item in options" :key="item.value">
17
+ <van-checkbox
18
+ :name="item.value"
19
+ shape="square"
20
+ icon-size="18px"
21
+ class="custom-checkbox"
22
+ >
23
+ <span class="option-text">{{ item.label }}</span>
24
+ </van-checkbox>
25
+ </div>
26
+ </van-checkbox-group>
27
+ </template>
28
+
29
+ <script setup>
30
+ import { ref, watch, nextTick } from 'vue';
31
+ const props = defineProps({
32
+ options: {
33
+ type: Array,
34
+ required: true
35
+ },
36
+ modelValue: {
37
+ type: Array,
38
+ default: () => []
39
+ },
40
+ disabled: {
41
+ type: Boolean,
42
+ default: false
43
+ },
44
+ required: {
45
+ type: Boolean,
46
+ default: true
47
+ },
48
+ tips: {
49
+ type: String,
50
+ default: ''
51
+ },
52
+ rules : {
53
+ type: Array,
54
+ default: () => []
55
+ }
56
+ });
57
+
58
+ defineEmits(['update:modelValue']);
59
+
60
+ // watch(() => props.disabled, (newVal) => {
61
+ // console.log('disabled状态变化:', newVal);
62
+ // // 强制更新复选框状态
63
+ // nextTick(() => {
64
+ // const checkboxes = document.querySelectorAll('.van-checkbox');
65
+ // checkboxes.forEach(checkbox => {
66
+ // checkbox.style.pointerEvents = newVal ? 'none' : 'auto';
67
+ // checkbox.style.opacity = newVal ? '0.6' : '1';
68
+ // });
69
+ // });
70
+ // });
71
+ </script>
72
+
73
+ <style scoped>
74
+ /* // 修改 confirmation-group 和 confirmation-item 的样式 */
75
+ .confirmation-group {
76
+ padding: 0 16px;
77
+ --van-checkbox-disabled-icon-color: black;
78
+ }
79
+
80
+ .confirmation-item {
81
+ padding: 12px 16px;
82
+ margin: 0 -16px;
83
+ border-bottom: 1px solid #f5f5f5;
84
+ /* 禁用状态样式 */
85
+
86
+ }
87
+
88
+ /* // 在下方添加媒体查询适配小屏幕 */
89
+ @media (max-width: 320px) {
90
+ .confirmation-item {
91
+ padding: 12px 8px;
92
+ margin: 0 -8px;
93
+ }
94
+ }
95
+
96
+ .confirmation-item:last-child {
97
+ border-bottom: none;
98
+ }
99
+
100
+ /* 新增样式 */
101
+ .confirmation-tips {
102
+ padding: 12px 16px;
103
+ background: #f0faff;
104
+ border-radius: 8px;
105
+ margin: 10px 16px;
106
+ display: flex;
107
+ align-items: center;
108
+ color: #1989fa;
109
+ font-size: 13px;
110
+ border: 1px solid #d9efff;
111
+ }
112
+
113
+ .confirmation-tips .van-icon {
114
+ margin-right: 8px;
115
+ }
116
+
117
+ /* 新增字体继承样式 */
118
+ .confirmation-group {
119
+ font-size: inherit; /* 继承父级字体大小 */
120
+ }
121
+
122
+ .option-text {
123
+ font-size: 14px; /* 明确指定字体大小 */
124
+ line-height: 1.5; /* 保持行高一致 */
125
+ /* color:black; */
126
+ }
127
+
128
+ /* 适配移动端的字体调整 */
129
+ @media (max-width: 375px) {
130
+ .option-text {
131
+ font-size: 13px;
132
+ }
133
+ }
134
+
135
+ /* 新增禁用状态样式 */
136
+ .custom-checkbox:disabled :deep(.--van-checkbox__icon) {
137
+ background-color: #f5f5f5;
138
+ border-color: #ebedf0;
139
+ transition: all 0.3s;
140
+ }
141
+
142
+ .custom-checkbox:disabled :deep(.van-checkbox__icon--checked) {
143
+ background-color: #1989fa;
144
+ border-color: #1989fa;
145
+ opacity: 0.7;
146
+ }
147
+
148
+ .van-checkbox--disabled :deep(.option-text) {
149
+ color: #969799;
150
+ }
151
+
152
+ .van-checkbox--disabled.van-checkbox--checked :deep(.option-text) {
153
+ color: #1989fa;
154
+ opacity: 0.8;
155
+ }
156
156
  </style>