@touchvue/ui 1.0.0-beta.51 → 1.0.0-beta.53

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 (146) hide show
  1. package/es/components/form/src/form.vue.d.ts +0 -3
  2. package/es/components/index.d.ts +3 -1
  3. package/es/components/input/src/input.vue.d.ts +1 -10
  4. package/es/components/rate/index.d.ts +4 -0
  5. package/es/components/rate/src/instance.d.ts +2 -0
  6. package/es/components/rate/src/rate.vue.d.ts +77 -0
  7. package/es/components/select/src/select.d.ts +0 -8
  8. package/es/components/select/src/select.vue.d.ts +0 -9
  9. package/es/components/slide/src/slide.vue.d.ts +4 -0
  10. package/es/components/switch/src/switch.vue.d.ts +3 -3
  11. package/es/components/tab/src/tab.d.ts +1 -1
  12. package/es/components/tab/src/tab.vue.d.ts +17 -4
  13. package/es/index.d.mjs +1 -0
  14. package/es/index.d.mjs.map +1 -1
  15. package/es/index.mjs +1 -0
  16. package/es/index.mjs.map +1 -1
  17. package/es/packages/components/cascader/src/cascader.vue2.mjs +1 -1
  18. package/es/packages/components/cascader/src/cascader.vue2.mjs.map +1 -1
  19. package/es/packages/components/checkbox/src/Checkbox.vue2.mjs +1 -1
  20. package/es/packages/components/checkbox/src/Checkbox.vue2.mjs.map +1 -1
  21. package/es/packages/components/checkboxes/src/Checkboxes.vue2.mjs.map +1 -1
  22. package/es/packages/components/datepicker/src/DatePicker.vue2.mjs +2 -3
  23. package/es/packages/components/datepicker/src/DatePicker.vue2.mjs.map +1 -1
  24. package/es/packages/components/daterange/src/date-range.vue2.mjs +18 -6
  25. package/es/packages/components/daterange/src/date-range.vue2.mjs.map +1 -1
  26. package/es/packages/components/form/src/form.vue2.mjs +1 -2
  27. package/es/packages/components/form/src/form.vue2.mjs.map +1 -1
  28. package/es/packages/components/index.d.mjs +1 -0
  29. package/es/packages/components/index.d.mjs.map +1 -1
  30. package/es/packages/components/index.mjs +1 -0
  31. package/es/packages/components/index.mjs.map +1 -1
  32. package/es/packages/components/input/src/input.vue2.mjs +63 -62
  33. package/es/packages/components/input/src/input.vue2.mjs.map +1 -1
  34. package/es/packages/components/page/src/page.vue2.mjs +6 -3
  35. package/es/packages/components/page/src/page.vue2.mjs.map +1 -1
  36. package/es/packages/components/rate/index.d.mjs +2 -0
  37. package/es/packages/components/rate/index.d.mjs.map +1 -0
  38. package/es/packages/components/rate/index.mjs +7 -0
  39. package/es/packages/components/rate/index.mjs.map +1 -0
  40. package/es/packages/components/rate/src/instance.d.mjs +2 -0
  41. package/es/packages/components/rate/src/instance.d.mjs.map +1 -0
  42. package/es/packages/components/rate/src/instance.mjs +2 -0
  43. package/es/packages/components/rate/src/instance.mjs.map +1 -0
  44. package/es/packages/components/rate/src/rate.vue.mjs +7 -0
  45. package/es/packages/components/rate/src/rate.vue.mjs.map +1 -0
  46. package/es/packages/components/rate/src/rate.vue2.mjs +153 -0
  47. package/es/packages/components/rate/src/rate.vue2.mjs.map +1 -0
  48. package/es/packages/components/segment/src/segment.vue.mjs +1 -4
  49. package/es/packages/components/segment/src/segment.vue.mjs.map +1 -1
  50. package/es/packages/components/select/src/hooks/use-select-class-style.mjs +1 -1
  51. package/es/packages/components/select/src/hooks/use-select-class-style.mjs.map +1 -1
  52. package/es/packages/components/select/src/select.mjs +0 -8
  53. package/es/packages/components/select/src/select.mjs.map +1 -1
  54. package/es/packages/components/select/src/select.vue2.mjs +2 -2
  55. package/es/packages/components/select/src/select.vue2.mjs.map +1 -1
  56. package/es/packages/components/slide/src/slide.vue2.mjs +3 -1
  57. package/es/packages/components/slide/src/slide.vue2.mjs.map +1 -1
  58. package/es/packages/components/switch/src/switch.vue2.mjs +4 -4
  59. package/es/packages/components/switch/src/switch.vue2.mjs.map +1 -1
  60. package/es/packages/components/tab/src/tab.vue2.mjs +401 -47
  61. package/es/packages/components/tab/src/tab.vue2.mjs.map +1 -1
  62. package/es/packages/components/transfer/src/transfer.vue2.mjs.map +1 -1
  63. package/es/packages/components/tree/src/tree.vue2.mjs +2 -0
  64. package/es/packages/components/tree/src/tree.vue2.mjs.map +1 -1
  65. package/es/packages/components/upload/src/upload.vue2.mjs +2 -2
  66. package/es/packages/components/upload/src/upload.vue2.mjs.map +1 -1
  67. package/es/packages/utils/disabledArea.mjs +2 -2
  68. package/es/packages/utils/disabledArea.mjs.map +1 -1
  69. package/es/packages/utils/validate.mjs +18 -11
  70. package/es/packages/utils/validate.mjs.map +1 -1
  71. package/global.d.ts +1 -0
  72. package/lib/components/form/src/form.vue.d.ts +0 -3
  73. package/lib/components/index.d.ts +3 -1
  74. package/lib/components/input/src/input.vue.d.ts +1 -10
  75. package/lib/components/rate/index.d.ts +4 -0
  76. package/lib/components/rate/src/instance.d.ts +2 -0
  77. package/lib/components/rate/src/rate.vue.d.ts +77 -0
  78. package/lib/components/select/src/select.d.ts +0 -8
  79. package/lib/components/select/src/select.vue.d.ts +0 -9
  80. package/lib/components/slide/src/slide.vue.d.ts +4 -0
  81. package/lib/components/switch/src/switch.vue.d.ts +3 -3
  82. package/lib/components/tab/src/tab.d.ts +1 -1
  83. package/lib/components/tab/src/tab.vue.d.ts +17 -4
  84. package/lib/index.d.js +8 -6
  85. package/lib/index.d.js.map +1 -1
  86. package/lib/index.js +13 -11
  87. package/lib/index.js.map +1 -1
  88. package/lib/packages/components/cascader/src/cascader.vue2.js +1 -1
  89. package/lib/packages/components/cascader/src/cascader.vue2.js.map +1 -1
  90. package/lib/packages/components/checkbox/src/Checkbox.vue2.js +1 -1
  91. package/lib/packages/components/checkbox/src/Checkbox.vue2.js.map +1 -1
  92. package/lib/packages/components/checkboxes/src/Checkboxes.vue2.js.map +1 -1
  93. package/lib/packages/components/datepicker/src/DatePicker.vue2.js +2 -3
  94. package/lib/packages/components/datepicker/src/DatePicker.vue2.js.map +1 -1
  95. package/lib/packages/components/daterange/src/date-range.vue2.js +18 -6
  96. package/lib/packages/components/daterange/src/date-range.vue2.js.map +1 -1
  97. package/lib/packages/components/form/src/form.vue2.js +1 -2
  98. package/lib/packages/components/form/src/form.vue2.js.map +1 -1
  99. package/lib/packages/components/index.d.js +2 -0
  100. package/lib/packages/components/index.d.js.map +1 -1
  101. package/lib/packages/components/index.js +2 -0
  102. package/lib/packages/components/index.js.map +1 -1
  103. package/lib/packages/components/input/src/input.vue2.js +63 -62
  104. package/lib/packages/components/input/src/input.vue2.js.map +1 -1
  105. package/lib/packages/components/page/src/page.vue2.js +6 -3
  106. package/lib/packages/components/page/src/page.vue2.js.map +1 -1
  107. package/lib/packages/components/rate/index.d.js +3 -0
  108. package/lib/packages/components/rate/index.d.js.map +1 -0
  109. package/lib/packages/components/rate/index.js +9 -0
  110. package/lib/packages/components/rate/index.js.map +1 -0
  111. package/lib/packages/components/rate/src/instance.d.js +3 -0
  112. package/lib/packages/components/rate/src/instance.d.js.map +1 -0
  113. package/lib/packages/components/rate/src/instance.js +3 -0
  114. package/lib/packages/components/rate/src/instance.js.map +1 -0
  115. package/lib/packages/components/rate/src/rate.vue.js +11 -0
  116. package/lib/packages/components/rate/src/rate.vue.js.map +1 -0
  117. package/lib/packages/components/rate/src/rate.vue2.js +157 -0
  118. package/lib/packages/components/rate/src/rate.vue2.js.map +1 -0
  119. package/lib/packages/components/segment/src/segment.vue.js +1 -4
  120. package/lib/packages/components/segment/src/segment.vue.js.map +1 -1
  121. package/lib/packages/components/select/src/hooks/use-select-class-style.js +1 -1
  122. package/lib/packages/components/select/src/hooks/use-select-class-style.js.map +1 -1
  123. package/lib/packages/components/select/src/select.js +0 -8
  124. package/lib/packages/components/select/src/select.js.map +1 -1
  125. package/lib/packages/components/select/src/select.vue2.js +2 -2
  126. package/lib/packages/components/select/src/select.vue2.js.map +1 -1
  127. package/lib/packages/components/slide/src/slide.vue2.js +3 -1
  128. package/lib/packages/components/slide/src/slide.vue2.js.map +1 -1
  129. package/lib/packages/components/switch/src/switch.vue2.js +4 -4
  130. package/lib/packages/components/switch/src/switch.vue2.js.map +1 -1
  131. package/lib/packages/components/tab/src/tab.vue2.js +400 -46
  132. package/lib/packages/components/tab/src/tab.vue2.js.map +1 -1
  133. package/lib/packages/components/transfer/src/transfer.vue2.js.map +1 -1
  134. package/lib/packages/components/tree/src/tree.vue2.js +2 -0
  135. package/lib/packages/components/tree/src/tree.vue2.js.map +1 -1
  136. package/lib/packages/components/upload/src/upload.vue2.js +2 -2
  137. package/lib/packages/components/upload/src/upload.vue2.js.map +1 -1
  138. package/lib/packages/utils/disabledArea.js +2 -2
  139. package/lib/packages/utils/disabledArea.js.map +1 -1
  140. package/lib/packages/utils/validate.js +24 -17
  141. package/lib/packages/utils/validate.js.map +1 -1
  142. package/package.json +1 -1
  143. package/theme/components/index.css +313 -122
  144. package/theme/index.css +313 -122
  145. package/theme/skin/default.css +313 -122
  146. package/types/global.d.ts +1 -0
@@ -49,7 +49,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
49
49
  default: string;
50
50
  };
51
51
  comparable: BooleanConstructor;
52
- readonly: BooleanConstructor;
53
52
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
54
53
  flex: BooleanConstructor;
55
54
  labelWidth: {
@@ -97,11 +96,9 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
97
96
  default: string;
98
97
  };
99
98
  comparable: BooleanConstructor;
100
- readonly: BooleanConstructor;
101
99
  }>> & Readonly<{}>, {
102
100
  mode: string;
103
101
  flex: boolean;
104
- readonly: boolean;
105
102
  type: string;
106
103
  col: string | number;
107
104
  dir: string;
@@ -48,7 +48,8 @@ import { ToTransfer } from './transfer';
48
48
  import { ToUpload } from './upload';
49
49
  import { ToImport } from './import';
50
50
  import { ToExport } from './export';
51
- export { ToButton, ToIcon, ToBox, ToSelect, ToCalendar, ToGap, ToStep, ToForm, ToFormItem, ToGrid, ToGridItem, ToHeader, ToInput, ToDivider, ToMsg, ToPadding, ToPage, ToCheckbox, ToCheckboxes, ToCenterScroll, ToDatePicker, ToDateRange, ToSwitch, ToTab, ToTabItem, ToTable, ToTableHead, ToTableBody, ToTableConfig, ToTag, ToText, ToTip, ToDialog, ToEllipsis, ToFix, ToFloat, ToTooltip, ToSegment, ToPic, ToParam, ToProgress, ToScroll, ToScrollPoint, ToSlide, ToBreadcrumb, ToBreadcrumbItem, ToTree, ToCascader, ToTimeline, ToCollapse, ToCollapseItem, ToRange, ToGuider, ToTransfer, ToUpload, ToImport, ToExport };
51
+ import { ToRate } from './rate';
52
+ export { ToButton, ToIcon, ToBox, ToSelect, ToCalendar, ToGap, ToStep, ToForm, ToFormItem, ToGrid, ToGridItem, ToHeader, ToInput, ToDivider, ToMsg, ToPadding, ToPage, ToCheckbox, ToCheckboxes, ToCenterScroll, ToDatePicker, ToDateRange, ToSwitch, ToTab, ToTabItem, ToTable, ToTableHead, ToTableBody, ToTableConfig, ToTag, ToText, ToTip, ToDialog, ToEllipsis, ToFix, ToFloat, ToTooltip, ToSegment, ToPic, ToParam, ToProgress, ToScroll, ToScrollPoint, ToSlide, ToBreadcrumb, ToBreadcrumbItem, ToTree, ToCascader, ToTimeline, ToCollapse, ToCollapseItem, ToRange, ToGuider, ToTransfer, ToUpload, ToImport, ToExport, ToRate };
52
53
  export * from '@touchvue/directives';
53
54
  export * from './button';
54
55
  export * from './icon';
@@ -97,3 +98,4 @@ export * from './transfer';
97
98
  export * from './upload';
98
99
  export * from './import';
99
100
  export * from './export';
101
+ export * from './rate';
@@ -6,7 +6,7 @@ declare function __VLS_template(): {
6
6
  default?(_: {}): any;
7
7
  default?(_: {}): any;
8
8
  suffix?(_: {}): any;
9
- suffix?(_: {}): any;
9
+ fn?(_: {}): any;
10
10
  };
11
11
  declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
12
12
  flex: BooleanConstructor;
@@ -170,10 +170,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
170
170
  type: (NumberConstructor | StringConstructor)[];
171
171
  default: number;
172
172
  };
173
- readonly: {
174
- type: BooleanConstructor;
175
- default: boolean;
176
- };
177
173
  count: {
178
174
  type: BooleanConstructor;
179
175
  default: boolean;
@@ -363,10 +359,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
363
359
  type: (NumberConstructor | StringConstructor)[];
364
360
  default: number;
365
361
  };
366
- readonly: {
367
- type: BooleanConstructor;
368
- default: boolean;
369
- };
370
362
  count: {
371
363
  type: BooleanConstructor;
372
364
  default: boolean;
@@ -391,7 +383,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
391
383
  color: string;
392
384
  flex: boolean;
393
385
  width: string | number;
394
- readonly: boolean;
395
386
  trim: boolean;
396
387
  link: boolean;
397
388
  type: string;
@@ -0,0 +1,4 @@
1
+ import Rate from './src/rate.vue';
2
+ import { SFCWithInstall } from '@touchvue/utils';
3
+ export declare const ToRate: SFCWithInstall<typeof Rate>;
4
+ export * from './src/instance';
@@ -0,0 +1,2 @@
1
+ import type Rate from './rate.vue';
2
+ export type RateInstance = InstanceType<typeof Rate>;
@@ -0,0 +1,77 @@
1
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ modelValue: {
3
+ type: NumberConstructor;
4
+ default: number;
5
+ };
6
+ max: {
7
+ type: NumberConstructor;
8
+ default: number;
9
+ };
10
+ size: {
11
+ type: NumberConstructor;
12
+ default: number;
13
+ };
14
+ readonly: BooleanConstructor;
15
+ allowHalf: {
16
+ type: BooleanConstructor;
17
+ default: boolean;
18
+ };
19
+ color: {
20
+ type: StringConstructor;
21
+ default: string;
22
+ };
23
+ showScore: {
24
+ type: BooleanConstructor;
25
+ default: boolean;
26
+ };
27
+ clearable: {
28
+ type: BooleanConstructor;
29
+ default: boolean;
30
+ };
31
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
32
+ change: (...args: any[]) => void;
33
+ "update:modelValue": (...args: any[]) => void;
34
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
35
+ modelValue: {
36
+ type: NumberConstructor;
37
+ default: number;
38
+ };
39
+ max: {
40
+ type: NumberConstructor;
41
+ default: number;
42
+ };
43
+ size: {
44
+ type: NumberConstructor;
45
+ default: number;
46
+ };
47
+ readonly: BooleanConstructor;
48
+ allowHalf: {
49
+ type: BooleanConstructor;
50
+ default: boolean;
51
+ };
52
+ color: {
53
+ type: StringConstructor;
54
+ default: string;
55
+ };
56
+ showScore: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
59
+ };
60
+ clearable: {
61
+ type: BooleanConstructor;
62
+ default: boolean;
63
+ };
64
+ }>> & Readonly<{
65
+ onChange?: (...args: any[]) => any;
66
+ "onUpdate:modelValue"?: (...args: any[]) => any;
67
+ }>, {
68
+ size: number;
69
+ color: string;
70
+ readonly: boolean;
71
+ modelValue: number;
72
+ clearable: boolean;
73
+ max: number;
74
+ allowHalf: boolean;
75
+ showScore: boolean;
76
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
77
+ export default _default;
@@ -160,14 +160,6 @@ export declare const selectProps: {
160
160
  type: StringConstructor;
161
161
  default: string;
162
162
  };
163
- /**
164
- * 是否只读
165
- * @deprecated replace by disabled
166
- */
167
- readonly: {
168
- type: BooleanConstructor;
169
- default: boolean;
170
- };
171
163
  disabled: {
172
164
  type: BooleanConstructor;
173
165
  default: boolean;
@@ -86,10 +86,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
86
86
  type: StringConstructor;
87
87
  default: string;
88
88
  };
89
- readonly: {
90
- type: BooleanConstructor;
91
- default: boolean;
92
- };
93
89
  disabled: {
94
90
  type: BooleanConstructor;
95
91
  default: boolean;
@@ -338,10 +334,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
338
334
  type: StringConstructor;
339
335
  default: string;
340
336
  };
341
- readonly: {
342
- type: BooleanConstructor;
343
- default: boolean;
344
- };
345
337
  disabled: {
346
338
  type: BooleanConstructor;
347
339
  default: boolean;
@@ -513,7 +505,6 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
513
505
  flex: boolean;
514
506
  width: string | number;
515
507
  lazy: boolean;
516
- readonly: boolean;
517
508
  trim: boolean;
518
509
  data: string | SelectOptionsData[];
519
510
  required: boolean;
@@ -5,6 +5,8 @@ interface Props {
5
5
  pagerPosition?: string;
6
6
  flex?: boolean;
7
7
  }
8
+ declare function next(): void;
9
+ declare function prev(): void;
8
10
  declare function adjust(): void;
9
11
  declare function reset(): void;
10
12
  declare function __VLS_template(): {
@@ -13,6 +15,8 @@ declare function __VLS_template(): {
13
15
  declare const __VLS_component: import("vue").DefineComponent<Props, {
14
16
  reset: typeof reset;
15
17
  adjust: typeof adjust;
18
+ prev: typeof prev;
19
+ next: typeof next;
16
20
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
17
21
  mode: string;
18
22
  flex: boolean;
@@ -1,6 +1,6 @@
1
1
  declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
2
  flex: BooleanConstructor;
3
- readonly: BooleanConstructor;
3
+ disabled: BooleanConstructor;
4
4
  modelValue: {
5
5
  type: (BooleanConstructor | NumberConstructor | StringConstructor)[];
6
6
  default: boolean;
@@ -67,7 +67,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
67
67
  "update:modelValue": (...args: any[]) => void;
68
68
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
69
69
  flex: BooleanConstructor;
70
- readonly: BooleanConstructor;
70
+ disabled: BooleanConstructor;
71
71
  modelValue: {
72
72
  type: (BooleanConstructor | NumberConstructor | StringConstructor)[];
73
73
  default: boolean;
@@ -132,7 +132,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
132
132
  color: string;
133
133
  flex: boolean;
134
134
  width: string | number;
135
- readonly: boolean;
135
+ disabled: boolean;
136
136
  modelValue: string | number | boolean;
137
137
  comparable: boolean;
138
138
  beforeChange: string | boolean | Function;
@@ -17,4 +17,4 @@ export type ToTabIconPosition = 'left' | 'top';
17
17
  /**
18
18
  * 超出的显示方式
19
19
  */
20
- export type ToTabOver = 'control' | 'avg' | 'float' | 'wrap';
20
+ export type ToTabOver = '' | 'control' | 'float' | 'wrap' | 'avg';
@@ -13,7 +13,7 @@ export interface TabProps {
13
13
  removable?: boolean;
14
14
  position?: 'left' | 'right' | 'bottom' | 'top' | '';
15
15
  itemDir?: 'v' | '';
16
- over?: 'float' | 'wrap' | 'control';
16
+ over?: 'float' | 'wrap' | 'control' | 'avg' | '';
17
17
  event?: string;
18
18
  contentType?: string;
19
19
  title?: string;
@@ -33,10 +33,23 @@ declare function __VLS_template(): {
33
33
  title?(_: {}): any;
34
34
  center?(_: {}): any;
35
35
  item?(_: {
36
- item: any;
36
+ item: {
37
+ [x: string]: any;
38
+ label: string;
39
+ value: string | number;
40
+ };
37
41
  index: number;
38
42
  }): any;
39
- label?(_: any): any;
43
+ label?(_: {
44
+ [x: string]: any;
45
+ label: string;
46
+ value: string | number;
47
+ }): any;
48
+ label?(_: {
49
+ [x: string]: any;
50
+ label: string;
51
+ value: string | number;
52
+ }): any;
40
53
  fn?(_: {}): any;
41
54
  default?(_: {}): any;
42
55
  default?(_: {}): any;
@@ -65,7 +78,7 @@ declare const __VLS_component: import("vue").DefineComponent<TabProps, {}, {}, {
65
78
  beforeChange: () => boolean | Promise<boolean>;
66
79
  itemDir: "v" | "";
67
80
  itemWidth: string | number;
68
- over: "float" | "wrap" | "control";
81
+ over: "float" | "wrap" | "control" | "avg" | "";
69
82
  contentType: string;
70
83
  beforeRemove: () => boolean | Promise<boolean>;
71
84
  changePic: boolean;
package/es/index.d.mjs CHANGED
@@ -67,6 +67,7 @@ export { ToTransfer } from './packages/components/transfer/index.mjs';
67
67
  export { ToUpload } from './packages/components/upload/index.mjs';
68
68
  export { ToImport } from './packages/components/import/index.mjs';
69
69
  export { ToExport } from './packages/components/export/index.mjs';
70
+ export { ToRate } from './packages/components/rate/index.mjs';
70
71
  export { ToStep } from './packages/components/step/index.mjs';
71
72
  export { md5 } from './packages/utils/md5.mjs';
72
73
  export { isArray, isBoolean, isDateObj, isDefined, isFunction, isHtmlElement, isNumber, isNumeric, isObject, isPromise, isString, isUndefined, withInstall, withInstallFunction } from './packages/utils/types.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mjs","sources":["../../packages/ui/index.d.ts"],"sourcesContent":["import type { App } from 'vue';\r\nexport interface TouchVueUIOptions {\r\n ratio?: {\r\n base?: {\r\n pc?: number;\r\n pad?: number;\r\n phone?: number;\r\n };\r\n };\r\n zIndex?: number;\r\n input?: {\r\n spChars?: string;\r\n };\r\n lang?: string;\r\n}\r\nexport declare const defaultOptions: TouchVueUIOptions;\r\nexport declare let globalOptions: {\r\n ratio?: {\r\n base?: {\r\n pc?: number;\r\n pad?: number;\r\n phone?: number;\r\n };\r\n };\r\n zIndex?: number;\r\n input?: {\r\n spChars?: string;\r\n };\r\n lang?: string;\r\n};\r\nexport declare const getGlobalOptions: () => TouchVueUIOptions;\r\ndeclare const install: (app: App, options?: TouchVueUIOptions) => void;\r\nexport default install;\r\nexport * from '@touchvue/components';\r\nexport * from '@touchvue/directives';\r\nexport * from '@touchvue/locale';\r\nexport * from '@touchvue/utils';\r\nexport * from '@touchvue/hooks';\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,gBAAe,OAAA;;;;"}
1
+ {"version":3,"file":"index.d.mjs","sources":["../../packages/ui/index.d.ts"],"sourcesContent":["import type { App } from 'vue';\r\nexport interface TouchVueUIOptions {\r\n ratio?: {\r\n base?: {\r\n pc?: number;\r\n pad?: number;\r\n phone?: number;\r\n };\r\n };\r\n zIndex?: number;\r\n input?: {\r\n spChars?: string;\r\n };\r\n lang?: string;\r\n}\r\nexport declare const defaultOptions: TouchVueUIOptions;\r\nexport declare let globalOptions: {\r\n ratio?: {\r\n base?: {\r\n pc?: number;\r\n pad?: number;\r\n phone?: number;\r\n };\r\n };\r\n zIndex?: number;\r\n input?: {\r\n spChars?: string;\r\n };\r\n lang?: string;\r\n};\r\nexport declare const getGlobalOptions: () => TouchVueUIOptions;\r\ndeclare const install: (app: App, options?: TouchVueUIOptions) => void;\r\nexport default install;\r\nexport * from '@touchvue/components';\r\nexport * from '@touchvue/directives';\r\nexport * from '@touchvue/locale';\r\nexport * from '@touchvue/utils';\r\nexport * from '@touchvue/hooks';\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,gBAAe,OAAA;;;;"}
package/es/index.mjs CHANGED
@@ -74,6 +74,7 @@ export { ToTransfer } from './packages/components/transfer/index.mjs';
74
74
  export { ToUpload } from './packages/components/upload/index.mjs';
75
75
  export { ToImport } from './packages/components/import/index.mjs';
76
76
  export { ToExport } from './packages/components/export/index.mjs';
77
+ export { ToRate } from './packages/components/rate/index.mjs';
77
78
  export { ToStep } from './packages/components/step/index.mjs';
78
79
  export { md5 } from './packages/utils/md5.mjs';
79
80
  export { isArray, isBoolean, isDateObj, isDefined, isFunction, isHtmlElement, isNumber, isNumeric, isObject, isPromise, isString, isUndefined, withInstall, withInstallFunction } from './packages/utils/types.mjs';
package/es/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../packages/ui/index.ts"],"sourcesContent":["import type { App } from 'vue'\r\nimport { setRatio, getEm, setMedia, getMedia } from '@touchvue/utils'\r\nimport * as TouchVueComponents from '@touchvue/components'\r\nimport InstallDirective from '@touchvue/directives'\r\n// 添加语言包导入\r\nimport { use as useTouchvueLocale } from '@touchvue/locale'\r\nimport cnTouchvueLocale from '@touchvue/locale/lang/zh-CN.js'\r\nimport enTouchvueLocale from '@touchvue/locale/lang/en-US.js'\r\n\r\nexport interface TouchVueUIOptions {\r\n\tratio?: {\r\n\t\tbase?: {\r\n\t\t\tpc?: number\r\n\t\t\tpad?: number\r\n\t\t\tphone?: number\r\n\t\t}\r\n\t}\r\n\tzIndex?: number\r\n\tinput?: {\r\n\t\tspChars?: string\r\n\t}\r\n\t// 添加语言配置选项\r\n\tlang?: string\r\n}\r\n\r\n// 全局默认配置\r\nexport const defaultOptions: TouchVueUIOptions = {}\r\n\r\n// 全局配置\r\nexport let globalOptions = { ...defaultOptions }\r\n\r\n// 获取全局配置\r\nexport const getGlobalOptions = (): TouchVueUIOptions => {\r\n\treturn globalOptions\r\n}\r\n\r\nconst install = (app: App, options: TouchVueUIOptions = {}) => {\r\n\t// 合并配置项\r\n\tglobalOptions = {\r\n\t\t...defaultOptions,\r\n\t\t...options\r\n\t}\r\n\r\n\t// 处理国际化配置\r\n\tconst lang = options.lang || 'zh-CN'\r\n\tlet localeModule\r\n\tif (lang === 'en-US') {\r\n\t\tlocaleModule = enTouchvueLocale\r\n\t} else if (lang === 'zh-CN') {\r\n\t\tlocaleModule = cnTouchvueLocale\r\n\t} else {\r\n\t\t// 如果是其他语言,尝试从默认语言包开始,用户可能需要自己提供\r\n\t\tlocaleModule = cnTouchvueLocale\r\n\t}\r\n\t// 设置默认语言\r\n\tuseTouchvueLocale(localeModule)\r\n\r\n\t// 将配置注入到应用实例中,可以通过app.config.globalProperties.$TOUCHVUE_CONFIG访问\r\n\t// 工具\r\n\tapp.config.globalProperties.$getEm = getEm\r\n\tapp.config.globalProperties.$setMedia = setMedia\r\n\tapp.config.globalProperties.$getMedia = getMedia\r\n\r\n\tconst media = getMedia()\r\n\tapp.config.globalProperties.$phone = media === 'phone'\r\n\tapp.config.globalProperties.$pad = media === 'pad'\r\n\tapp.config.globalProperties.$pc = media === 'pc'\r\n\r\n\t// 全局默认配置\r\n\tapp.config.globalProperties.$TouchUI = {\r\n\t\tzIndex: globalOptions.zIndex || 2000, // 全局zIndex基数\r\n\t\tinput: globalOptions.input || {}\r\n\t}\r\n\t;(window as any).$TouchUI = {\r\n\t\tzIndex: 2000\r\n\t}\r\n\t// 初始化\r\n\tsetMedia(options)\r\n\tsetRatio(options)\r\n\r\n\t// 注册所有组件\r\n\tObject.values(TouchVueComponents).forEach(component => {\r\n\t\t// 确保是有效的Vue组件插件\r\n\t\tif (component && typeof component === 'object' && 'install' in component && typeof component.install === 'function') {\r\n\t\t\tapp.use(component as any)\r\n\t\t}\r\n\t})\r\n\r\n\tInstallDirective.install(app)\r\n}\r\n\r\n// export { install };\r\n\r\nexport default install\r\n\r\nexport * from '@touchvue/components'\r\nexport * from '@touchvue/directives'\r\nexport * from '@touchvue/locale'\r\nexport * from '@touchvue/utils'\r\nexport * from '@touchvue/hooks'\r\n"],"names":["useTouchvueLocale","TouchVueComponents"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BO,MAAM,iBAAoC,GAAC;AAGvC,IAAA,aAAA,GAAgB,EAAE,GAAG,cAAe,GAAA;AAGxC,MAAM,mBAAmB,MAAyB;AACxD,EAAO,OAAA,aAAA,CAAA;AACR,EAAA;AAEA,MAAM,OAAU,GAAA,CAAC,GAAU,EAAA,OAAA,GAA6B,EAAO,KAAA;AAE9D,EAAgB,aAAA,GAAA;AAAA,IACf,GAAG,cAAA;AAAA,IACH,GAAG,OAAA;AAAA,GACJ,CAAA;AAGA,EAAM,MAAA,IAAA,GAAO,QAAQ,IAAQ,IAAA,OAAA,CAAA;AAC7B,EAAI,IAAA,YAAA,CAAA;AACJ,EAAA,IAAI,SAAS,OAAS,EAAA;AACrB,IAAe,YAAA,GAAA,gBAAA,CAAA;AAAA,GAChB,MAAA,IAAW,SAAS,OAAS,EAAA;AAC5B,IAAe,YAAA,GAAA,gBAAA,CAAA;AAAA,GACT,MAAA;AAEN,IAAe,YAAA,GAAA,gBAAA,CAAA;AAAA,GAChB;AAEA,EAAAA,GAAA,CAAkB,YAAY,CAAA,CAAA;AAI9B,EAAI,GAAA,CAAA,MAAA,CAAO,iBAAiB,MAAS,GAAA,KAAA,CAAA;AACrC,EAAI,GAAA,CAAA,MAAA,CAAO,iBAAiB,SAAY,GAAA,QAAA,CAAA;AACxC,EAAI,GAAA,CAAA,MAAA,CAAO,iBAAiB,SAAY,GAAA,QAAA,CAAA;AAExC,EAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AACvB,EAAI,GAAA,CAAA,MAAA,CAAO,gBAAiB,CAAA,MAAA,GAAS,KAAU,KAAA,OAAA,CAAA;AAC/C,EAAI,GAAA,CAAA,MAAA,CAAO,gBAAiB,CAAA,IAAA,GAAO,KAAU,KAAA,KAAA,CAAA;AAC7C,EAAI,GAAA,CAAA,MAAA,CAAO,gBAAiB,CAAA,GAAA,GAAM,KAAU,KAAA,IAAA,CAAA;AAG5C,EAAI,GAAA,CAAA,MAAA,CAAO,iBAAiB,QAAW,GAAA;AAAA,IACtC,MAAA,EAAQ,cAAc,MAAU,IAAA,GAAA;AAAA;AAAA,IAChC,KAAA,EAAO,aAAc,CAAA,KAAA,IAAS,EAAC;AAAA,GAChC,CAAA;AACC,EAAC,OAAe,QAAW,GAAA;AAAA,IAC3B,MAAQ,EAAA,GAAA;AAAA,GACT,CAAA;AAEA,EAAA,QAAA,CAAS,OAAO,CAAA,CAAA;AAChB,EAAA,QAAA,CAAS,OAAO,CAAA,CAAA;AAGhB,EAAA,MAAA,CAAO,MAAO,CAAAC,KAAkB,CAAE,CAAA,OAAA,CAAQ,CAAa,SAAA,KAAA;AAEtD,IAAI,IAAA,SAAA,IAAa,OAAO,SAAc,KAAA,QAAA,IAAY,aAAa,SAAa,IAAA,OAAO,SAAU,CAAA,OAAA,KAAY,UAAY,EAAA;AACpH,MAAA,GAAA,CAAI,IAAI,SAAgB,CAAA,CAAA;AAAA,KACzB;AAAA,GACA,CAAA,CAAA;AAED,EAAA,gBAAA,CAAiB,QAAQ,GAAG,CAAA,CAAA;AAC7B;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../packages/ui/index.ts"],"sourcesContent":["import type { App } from 'vue'\r\nimport { setRatio, getEm, setMedia, getMedia } from '@touchvue/utils'\r\nimport * as TouchVueComponents from '@touchvue/components'\r\nimport InstallDirective from '@touchvue/directives'\r\n// 添加语言包导入\r\nimport { use as useTouchvueLocale } from '@touchvue/locale'\r\nimport cnTouchvueLocale from '@touchvue/locale/lang/zh-CN.js'\r\nimport enTouchvueLocale from '@touchvue/locale/lang/en-US.js'\r\n\r\nexport interface TouchVueUIOptions {\r\n\tratio?: {\r\n\t\tbase?: {\r\n\t\t\tpc?: number\r\n\t\t\tpad?: number\r\n\t\t\tphone?: number\r\n\t\t}\r\n\t}\r\n\tzIndex?: number\r\n\tinput?: {\r\n\t\tspChars?: string\r\n\t}\r\n\t// 添加语言配置选项\r\n\tlang?: string\r\n}\r\n\r\n// 全局默认配置\r\nexport const defaultOptions: TouchVueUIOptions = {}\r\n\r\n// 全局配置\r\nexport let globalOptions = { ...defaultOptions }\r\n\r\n// 获取全局配置\r\nexport const getGlobalOptions = (): TouchVueUIOptions => {\r\n\treturn globalOptions\r\n}\r\n\r\nconst install = (app: App, options: TouchVueUIOptions = {}) => {\r\n\t// 合并配置项\r\n\tglobalOptions = {\r\n\t\t...defaultOptions,\r\n\t\t...options\r\n\t}\r\n\r\n\t// 处理国际化配置\r\n\tconst lang = options.lang || 'zh-CN'\r\n\tlet localeModule\r\n\tif (lang === 'en-US') {\r\n\t\tlocaleModule = enTouchvueLocale\r\n\t} else if (lang === 'zh-CN') {\r\n\t\tlocaleModule = cnTouchvueLocale\r\n\t} else {\r\n\t\t// 如果是其他语言,尝试从默认语言包开始,用户可能需要自己提供\r\n\t\tlocaleModule = cnTouchvueLocale\r\n\t}\r\n\t// 设置默认语言\r\n\tuseTouchvueLocale(localeModule)\r\n\r\n\t// 将配置注入到应用实例中,可以通过app.config.globalProperties.$TOUCHVUE_CONFIG访问\r\n\t// 工具\r\n\tapp.config.globalProperties.$getEm = getEm\r\n\tapp.config.globalProperties.$setMedia = setMedia\r\n\tapp.config.globalProperties.$getMedia = getMedia\r\n\r\n\tconst media = getMedia()\r\n\tapp.config.globalProperties.$phone = media === 'phone'\r\n\tapp.config.globalProperties.$pad = media === 'pad'\r\n\tapp.config.globalProperties.$pc = media === 'pc'\r\n\r\n\t// 全局默认配置\r\n\tapp.config.globalProperties.$TouchUI = {\r\n\t\tzIndex: globalOptions.zIndex || 2000, // 全局zIndex基数\r\n\t\tinput: globalOptions.input || {}\r\n\t}\r\n\t;(window as any).$TouchUI = {\r\n\t\tzIndex: 2000\r\n\t}\r\n\t// 初始化\r\n\tsetMedia(options)\r\n\tsetRatio(options)\r\n\r\n\t// 注册所有组件\r\n\tObject.values(TouchVueComponents).forEach(component => {\r\n\t\t// 确保是有效的Vue组件插件\r\n\t\tif (component && typeof component === 'object' && 'install' in component && typeof component.install === 'function') {\r\n\t\t\tapp.use(component as any)\r\n\t\t}\r\n\t})\r\n\r\n\tInstallDirective.install(app)\r\n}\r\n\r\n// export { install };\r\n\r\nexport default install\r\n\r\nexport * from '@touchvue/components'\r\nexport * from '@touchvue/directives'\r\nexport * from '@touchvue/locale'\r\nexport * from '@touchvue/utils'\r\nexport * from '@touchvue/hooks'\r\n"],"names":["useTouchvueLocale","TouchVueComponents"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BO,MAAM,iBAAoC,GAAC;AAGvC,IAAA,aAAA,GAAgB,EAAE,GAAG,cAAe,GAAA;AAGxC,MAAM,mBAAmB,MAAyB;AACxD,EAAO,OAAA,aAAA,CAAA;AACR,EAAA;AAEA,MAAM,OAAU,GAAA,CAAC,GAAU,EAAA,OAAA,GAA6B,EAAO,KAAA;AAE9D,EAAgB,aAAA,GAAA;AAAA,IACf,GAAG,cAAA;AAAA,IACH,GAAG,OAAA;AAAA,GACJ,CAAA;AAGA,EAAM,MAAA,IAAA,GAAO,QAAQ,IAAQ,IAAA,OAAA,CAAA;AAC7B,EAAI,IAAA,YAAA,CAAA;AACJ,EAAA,IAAI,SAAS,OAAS,EAAA;AACrB,IAAe,YAAA,GAAA,gBAAA,CAAA;AAAA,GAChB,MAAA,IAAW,SAAS,OAAS,EAAA;AAC5B,IAAe,YAAA,GAAA,gBAAA,CAAA;AAAA,GACT,MAAA;AAEN,IAAe,YAAA,GAAA,gBAAA,CAAA;AAAA,GAChB;AAEA,EAAAA,GAAA,CAAkB,YAAY,CAAA,CAAA;AAI9B,EAAI,GAAA,CAAA,MAAA,CAAO,iBAAiB,MAAS,GAAA,KAAA,CAAA;AACrC,EAAI,GAAA,CAAA,MAAA,CAAO,iBAAiB,SAAY,GAAA,QAAA,CAAA;AACxC,EAAI,GAAA,CAAA,MAAA,CAAO,iBAAiB,SAAY,GAAA,QAAA,CAAA;AAExC,EAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AACvB,EAAI,GAAA,CAAA,MAAA,CAAO,gBAAiB,CAAA,MAAA,GAAS,KAAU,KAAA,OAAA,CAAA;AAC/C,EAAI,GAAA,CAAA,MAAA,CAAO,gBAAiB,CAAA,IAAA,GAAO,KAAU,KAAA,KAAA,CAAA;AAC7C,EAAI,GAAA,CAAA,MAAA,CAAO,gBAAiB,CAAA,GAAA,GAAM,KAAU,KAAA,IAAA,CAAA;AAG5C,EAAI,GAAA,CAAA,MAAA,CAAO,iBAAiB,QAAW,GAAA;AAAA,IACtC,MAAA,EAAQ,cAAc,MAAU,IAAA,GAAA;AAAA;AAAA,IAChC,KAAA,EAAO,aAAc,CAAA,KAAA,IAAS,EAAC;AAAA,GAChC,CAAA;AACC,EAAC,OAAe,QAAW,GAAA;AAAA,IAC3B,MAAQ,EAAA,GAAA;AAAA,GACT,CAAA;AAEA,EAAA,QAAA,CAAS,OAAO,CAAA,CAAA;AAChB,EAAA,QAAA,CAAS,OAAO,CAAA,CAAA;AAGhB,EAAA,MAAA,CAAO,MAAO,CAAAC,KAAkB,CAAE,CAAA,OAAA,CAAQ,CAAa,SAAA,KAAA;AAEtD,IAAI,IAAA,SAAA,IAAa,OAAO,SAAc,KAAA,QAAA,IAAY,aAAa,SAAa,IAAA,OAAO,SAAU,CAAA,OAAA,KAAY,UAAY,EAAA;AACpH,MAAA,GAAA,CAAI,IAAI,SAAgB,CAAA,CAAA;AAAA,KACzB;AAAA,GACA,CAAA,CAAA;AAED,EAAA,gBAAA,CAAiB,QAAQ,GAAG,CAAA,CAAA;AAC7B;;;;"}
@@ -71,7 +71,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
71
71
  return `${(currentLevel.value + 1) * omit}${unit}`;
72
72
  });
73
73
  const setClass = computed(() => {
74
- const arr = ["to-form-readonly"];
74
+ const arr = ["to-disable-target"];
75
75
  if (errorTip.value) {
76
76
  arr.push("to-cascader-mode-line");
77
77
  arr.push("to-cascader-color-danger");
@@ -1 +1 @@
1
- {"version":3,"file":"cascader.vue2.mjs","sources":["../../../../../../packages/components/cascader/src/cascader.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToCascader'\r\n});\n</script>\n<template>\r\n\t<div ref=\"$el\" :key=\"langKey\" v-tip=\"changed ? t('to.common.originalValue', getLabelPath(valueStore[0], data_)) : ''\" :flex=\"flex ? flex : null\" class=\"to-cascader\" :class=\"setClass\" :style=\"setStyle\">\r\n\t\t<span v-if=\"validateRequired\" v-show=\"false\" class=\"to-validate\" :req=\"validateRequired\" :desc=\"validateDesc\" :value=\"value_ ? 'true' : ''\"></span>\r\n\t\t<span v-if=\"$slots.prefix\" class=\"to-cascader-prefix\">\r\n\t\t\t<slot name=\"prefix\" />\r\n\t\t</span>\r\n\t\t<span v-if=\"props.prefix\" class=\"to-cascader-prefix-text\">\r\n\t\t\t<span>{{ props.prefix }}</span>\r\n\t\t</span>\r\n\t\t<span class=\"to-cascader-content\" @click=\"handleClick\">\r\n\t\t\t<span class=\"to-cascader-value\">\r\n\t\t\t\t<span v-if=\"value_\">{{ valueLabel }}</span>\r\n\t\t\t\t<span v-else class=\"to-cascader-placeholder\">{{ placeholder || t('to.cascader.placeholder') }}</span>\r\n\t\t\t</span>\r\n\t\t</span>\r\n\t\t<span v-if=\"clearable && value_\" class=\"to-cascader-clear\">\r\n\t\t\t<to-icon value=\"close\" @click.stop=\"handleClear\"></to-icon>\r\n\t\t</span>\r\n\t\t<span class=\"to-cascader-arrow\" @click=\"handleClick\">\r\n\t\t\t<to-icon v-if=\"false\" :value=\"iconValue\"></to-icon>\r\n\t\t</span>\r\n\t\t<Teleport to=\"body\">\r\n\t\t\t<div class=\"to-cascader\" :class=\"setClass\">\r\n\t\t\t\t<to-float ref=\"cascaderFloat\" :global=\"false\" class=\"to-cascader-layer\" :width=\"floatWidth\" lazy @closed=\"afterClose\">\r\n\t\t\t\t\t<div v-if=\"!data_.length\" style=\"text-align: center; color: #ccc; padding: 3em 0.3em\">{{ t('to.cascader.noData') }}</div>\r\n\t\t\t\t\t<to-scroll @click.stop>\r\n\t\t\t\t\t\t<to-cascader-item :key=\"String(data_)\" :data=\"data_\"></to-cascader-item>\r\n\t\t\t\t\t</to-scroll>\r\n\t\t\t\t</to-float>\r\n\t\t\t</div>\r\n\t\t</Teleport>\r\n\t\t<span v-if=\"errorTip\" v-color=\"'danger'\" class=\"to-box-tip\">\r\n\t\t\t<template v-if=\"errorType === 'rule'\">\r\n\t\t\t\t{{ t('to.cascader.inputError') }}\r\n\t\t\t\t<to-icon v-tip.danger=\"errorTip\" style=\"height: auto\" value=\"help\" color=\"danger\" mode=\"toast\"></to-icon>\r\n\t\t\t</template>\r\n\t\t\t<template v-else> {{ t('to.cascader.required') }} </template>\r\n\t\t</span>\r\n\t</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { CSSProperties, computed, provide, ref, watch, nextTick, inject } from 'vue'\r\nimport { ToIcon, ToFloat } from '@touchvue/components'\r\nimport ToCascaderItem from './cascader-item.vue'\r\nimport { deepClone } from '@touchvue/utils'\r\nimport { t, langKey } from '@touchvue/locale'\r\n\r\n\r\n\r\nconst ToFormItem = inject<{ required?: boolean; label?: string }>('ToFormItem', {})\r\n\r\nexport type VType = string | unknown[]\r\n\r\nexport interface Item {\r\n\tlabel?: string\r\n\tvalue?: string\r\n\tchildren?: string\r\n\tisSelect?: boolean\r\n\tisLeaf?: boolean\r\n\tlevel?: number\r\n\t[key: string]: any\r\n}\r\n\r\nexport interface Props {\r\n\tmode?: string\r\n\tlazy?: boolean\r\n\tdisabled?: boolean\r\n\tany?: boolean\r\n\tclearable?: boolean\r\n\tmodelValue?: string | []\r\n\twidth?: string | number\r\n\tlabelText?: string\r\n\tvalueText?: string\r\n\tchildrenText?: string\r\n\tplaceholder?: string\r\n\toptionWidth?: string | number\r\n\toptionCol?: string | number\r\n\tdata: []\r\n\tcomparable?: boolean\r\n\trequired?: boolean\r\n\tdesc?: string\r\n\tprefix?: string\r\n\tshowAllLevels?: boolean\r\n\tcheckedDatas?: any[]\r\n\tflex?: boolean\r\n}\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n\tmode: 'default',\r\n\tlazy: false,\r\n\tdisabled: false,\r\n\tany: true,\r\n\tclearable: false,\r\n\tmodelValue: '',\r\n\twidth: '',\r\n\tlabelText: 'label',\r\n\tvalueText: 'value',\r\n\tchildrenText: 'children',\r\n\tplaceholder: '',\r\n\toptionWidth: '16em',\r\n\toptionCol: '',\r\n\tdata: () => [],\r\n\tcomparable: false,\r\n\trequired: false,\r\n\tdesc: '',\r\n\tprefix: '',\r\n\tshowAllLevels: true,\r\n\tcheckedDatas: () => [],\r\n\tflex: false\r\n})\r\n\r\nconst ToForm = inject<{ comparable?: boolean }>('ToForm', {})\r\n\r\nconst iconValue = ref('unfold')\r\nconst value_ = ref<VType>('')\r\nconst valueLabel = ref('')\r\nconst data_ = ref<Item[]>(initData(props.data))\r\nconst cascaderFloat = ref(null)\r\nconst $el = ref(null)\r\nconst currentLevel = ref(0)\r\nconst checkedData = ref<Item[]>([])\r\nconst valueStore = ref<string[]>([])\r\nconst disabled = ref(props.disabled)\r\nconst errorTip = ref('')\r\nconst errorType = ref('rule')\r\n\r\nconst floatWidth = computed(() => {\r\n\tlet unit = 'em'\r\n\tlet sArr = []\r\n\tlet omit = 16\r\n\tif (props.optionWidth) {\r\n\t\tif (isNaN(Number(props.optionWidth))) {\r\n\t\t\tif ((props.optionWidth as string).includes('em')) {\r\n\t\t\t\tunit = 'em'\r\n\t\t\t\tsArr = (props.optionWidth as string).split('em')\r\n\t\t\t} else {\r\n\t\t\t\tunit = 'px'\r\n\t\t\t\tsArr = (props.optionWidth as string).split('px')\r\n\t\t\t}\r\n\t\t\tomit = Number(sArr[0])\r\n\t\t} else {\r\n\t\t\tomit = Number(props.optionWidth)\r\n\t\t}\r\n\t}\r\n\treturn `${(currentLevel.value + 1) * omit}${unit}`\r\n})\r\n\r\nconst setClass = computed(() => {\r\n\tconst arr = ['to-form-readonly']\r\n\tif (errorTip.value) {\r\n\t\tarr.push('to-cascader-mode-line')\r\n\t\tarr.push('to-cascader-color-danger')\r\n\t\tarr.push('to-cascader-tip-show')\r\n\t} else {\r\n\t\tif (props.mode) {\r\n\t\t\tarr.push(`mode-${props.mode}`)\r\n\t\t}\r\n\t\tif ((ToForm && ToForm?.comparable) || props.comparable) {\r\n\t\t\tarr.push('to-compare')\r\n\t\t}\r\n\t\tif (changed.value) {\r\n\t\t\tarr.push('to-cascader-changed')\r\n\t\t}\r\n\t\tif (disabled.value || props.disabled) {\r\n\t\t\tarr.push('is-disabled')\r\n\t\t}\r\n\t}\r\n\treturn arr\r\n})\r\nconst setStyle = computed(() => {\r\n\tlet obj: CSSProperties = {}\r\n\tif (props.width) {\r\n\t\tif (isNaN(Number(props.width))) {\r\n\t\t\tobj.width = props.width\r\n\t\t} else {\r\n\t\t\tobj.width = `${props.width}em`\r\n\t\t}\r\n\t}\r\n\treturn obj\r\n})\r\nconst changed = computed(() => {\r\n\tif ((props.comparable || ToForm?.comparable) && valueStore.value.length > 0 && value_.value !== valueStore.value[0]) {\r\n\t\treturn true\r\n\t} else {\r\n\t\treturn false\r\n\t}\r\n})\r\n\r\nconst validateRequired = computed(() => {\r\n\tif (props.required) {\r\n\t\treturn 'true'\r\n\t} else if (ToFormItem && ToFormItem.required) {\r\n\t\treturn 'true'\r\n\t} else {\r\n\t\treturn 'false'\r\n\t}\r\n})\r\nconst validateDesc = computed(() => {\r\n\tif (props.desc) {\r\n\t\treturn props.desc\r\n\t} else if (ToFormItem && ToFormItem.label) {\r\n\t\treturn ToFormItem.label\r\n\t} else {\r\n\t\treturn ''\r\n\t}\r\n})\r\nexport interface ProvideProps {\r\n\tprops: Props\r\n\tsetLevel: (level: number) => void\r\n\tclose: () => void\r\n\tsetParentCheckedByValue: (value: string, level: number) => void\r\n\tstore: Item[]\r\n\tsetViewData: () => void\r\n}\r\n\r\nprovide<ProvideProps>('pProps', {\r\n\tprops,\r\n\tsetLevel,\r\n\tclose,\r\n\tsetParentCheckedByValue,\r\n\tstore: data_.value,\r\n\tsetViewData\r\n})\r\n\r\nwatch(\r\n\t() => props.modelValue,\r\n\tval => {\r\n\t\tvalue_.value = val\r\n\t\tif (props.data) {\r\n\t\t\tnextTick(() => {\r\n\t\t\t\tsetLabel()\r\n\t\t\t})\r\n\t\t}\r\n\t},\r\n\t{ immediate: true }\r\n)\r\nwatch(\r\n\t() => props.data,\r\n\tval => {\r\n\t\tdata_.value = initData(val)\r\n\t\tcheckedData.value = []\r\n\t\tsetLabel()\r\n\t},\r\n\t{ deep: true }\r\n)\r\n\r\nconst emit = defineEmits(['change', 'update:modelValue', 'update:checkedDatas'])\r\nfunction initData(data: Item[], levels = 0) {\r\n\tlet arr = deepClone(data)\r\n\tlet tem = []\r\n\tlet level = levels\r\n\tarr.forEach((item: Item) => {\r\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\r\n\t\t\ttem.push({\r\n\t\t\t\t...item,\r\n\t\t\t\tlevel,\r\n\t\t\t\tisLeaf: false,\r\n\t\t\t\tisSelect: false,\r\n\t\t\t\t[props.childrenText]: initData(item[props.childrenText], level + 1)\r\n\t\t\t})\r\n\t\t} else {\r\n\t\t\ttem.push({ ...item, level, isSelect: false, isLeaf: true })\r\n\t\t}\r\n\t})\r\n\treturn tem\r\n}\r\nfunction handleClick() {\r\n\terrorTip.value = ''\r\n\tif (!(props.disabled || disabled.value)) {\r\n\t\tcascaderFloat.value.toggle($el.value)\r\n\t\ticonValue.value = iconValue.value === 'unfold' ? 'fold' : 'unfold'\r\n\t}\r\n}\r\nfunction handleClear() {\r\n\tif (!props.disabled) {\r\n\t\tvalueLabel.value = ''\r\n\t\tresetCheckedData(data_.value)\r\n\t\tcheckedData.value = []\r\n\t\tvalue_.value = ''\r\n\t\tchange('')\r\n\t}\r\n}\r\nfunction setLevel(idx: number) {\r\n\tcurrentLevel.value = idx\r\n}\r\nfunction setParentCheckedByValue(value, level) {\r\n\tfixStore(data_.value, value, level)\r\n}\r\nfunction fixStore(arr, value, level) {\r\n\tarr.forEach((item: Item) => {\r\n\t\tif (item.level === level) {\r\n\t\t\tif (item[props.valueText] === value) {\r\n\t\t\t\titem.isSelect = true\r\n\t\t\t\tsetCheckedData(checkedData.value, level, item)\r\n\t\t\t} else {\r\n\t\t\t\titem.isSelect = false\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tif (item[props.childrenText] && item[props.childrenText].length) {\r\n\t\t\t\tfixStore(item[props.childrenText], value, level)\r\n\t\t\t}\r\n\t\t}\r\n\t})\r\n}\r\nfunction setCheckedData(arr: Item[], level, item) {\r\n\tlet idx = arr.findIndex(k => k.level === level)\r\n\tif (arr.length && idx !== -1) {\r\n\t\tif (arr[idx][props.valueText] !== item[props.valueText]) {\r\n\t\t\tlet resetArr = arr.filter(k => k.level > level)\r\n\t\t\tif (resetArr.length) {\r\n\t\t\t\tresetArr.forEach(k => {\r\n\t\t\t\t\tlet i = arr.findIndex(l => l.level === k.level)\r\n\t\t\t\t\tif (i !== -1) {\r\n\t\t\t\t\t\tarr.splice(i, 1)\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (idx !== -1) {\r\n\t\tarr[idx] = { ...item }\r\n\t} else {\r\n\t\tarr.push(deepClone(item))\r\n\t}\r\n}\r\nfunction resetCheckedData(arr: Item[]) {\r\n\tarr.forEach((item: Item) => {\r\n\t\titem.isSelect = false\r\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\r\n\t\t\tresetCheckedData(item[props.childrenText])\r\n\t\t}\r\n\t})\r\n}\r\nfunction setViewData() {\r\n\tlet labelArr = checkedData.value.map(item => item[props.labelText])\r\n\tlet leafArr = checkedData.value.map(item => item.isLeaf)\r\n\tif (props.showAllLevels) {\r\n\t\tvalueLabel.value = labelArr.join(' / ')\r\n\t} else {\r\n\t\tif (leafArr[leafArr.length - 1]) {\r\n\t\t\tvalueLabel.value = labelArr[labelArr.length - 1]\r\n\t\t} else {\r\n\t\t\tvalueLabel.value = ''\r\n\t\t}\r\n\t}\r\n\tlet leafItem = []\r\n\tif (!props.any) {\r\n\t\tleafItem = checkedData.value.filter(item => item.isLeaf)\r\n\t} else {\r\n\t\tleafItem = checkedData.value.length ? [checkedData.value[checkedData.value.length - 1]] : []\r\n\t}\r\n\tif (leafItem.length) {\r\n\t\tvalue_.value = leafItem[0][props.valueText]\r\n\t\tchange(value_.value)\r\n\t}\r\n}\r\nfunction close() {\r\n\tcascaderFloat.value.toggle($el.value)\r\n}\r\nfunction afterClose() {\r\n\tsetLevel(0)\r\n}\r\nfunction change(v) {\r\n\temit('update:modelValue', v)\r\n\temit('change', v, checkedData.value)\r\n}\r\nconst setLabel = () => {\r\n\tif (value_.value) {\r\n\t\tvalueLabel.value = getLabelPath(value_.value, data_.value) || value_.value\r\n\t} else {\r\n\t\tvalueLabel.value = props.placeholder\r\n\t}\r\n}\r\n\r\n// 添加获取标签路径的函数\r\nfunction getLabelPath(value, data, path = [], pData = []) {\r\n\tfor (const item of data) {\r\n\t\tif (item[props.valueText] === value) {\r\n\t\t\tlet tem: any = []\r\n\t\t\tcheckedData.value = [...pData, item]\r\n\t\t\tif (props.showAllLevels) {\r\n\t\t\t\ttem = [...path, item[props.labelText]].join(' / ')\r\n\t\t\t} else {\r\n\t\t\t\tif (item.isLeaf) {\r\n\t\t\t\t\ttem = item[props.labelText]\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttem = ''\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn tem\r\n\t\t}\r\n\r\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\r\n\t\t\tconst result = getLabelPath(value, item[props.childrenText], [...path, item[props.labelText]], [...pData, item])\r\n\t\t\tif (result) {\r\n\t\t\t\treturn result\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn ''\r\n}\r\nfunction compare() {\r\n\tvalueStore.value.unshift(String(value_.value))\r\n}\r\n// 撤销\r\nfunction restore() {\r\n\tvalue_.value = valueStore.value[0]\r\n\tvalueStore.value.splice(0, 1)\r\n}\r\nconst setDisabled = (f: boolean) => {\r\n\tdisabled.value = f\r\n}\r\n\r\nconst getCheckData = () => {\r\n\treturn checkedData.value\r\n}\r\nwatch(\r\n\t() => checkedData.value,\r\n\tval => {\r\n\t\temit('update:checkedDatas', val)\r\n\t}\r\n)\r\n\r\ndefineExpose({\r\n\tcompare,\r\n\trestore,\r\n\tchanged,\r\n\tsetDisabled,\r\n\terrorTip,\r\n\terrorType,\r\n\tgetCheckData\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_unref","_normalizeClass","$slots","_renderSlot","_createElementVNode","_toDisplayString","_openBlock","_createVNode","_createBlock","_Teleport","ToCascaderItem","_Fragment","_createTextVNode"],"mappings":"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"}
1
+ {"version":3,"file":"cascader.vue2.mjs","sources":["../../../../../../packages/components/cascader/src/cascader.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToCascader'\r\n});\n</script>\n<template>\r\n\t<div ref=\"$el\" :key=\"langKey\" v-tip=\"changed ? t('to.common.originalValue', getLabelPath(valueStore[0], data_)) : ''\" :flex=\"flex ? flex : null\" class=\"to-cascader\" :class=\"setClass\" :style=\"setStyle\">\r\n\t\t<span v-if=\"validateRequired\" v-show=\"false\" class=\"to-validate\" :req=\"validateRequired\" :desc=\"validateDesc\" :value=\"value_ ? 'true' : ''\"></span>\r\n\t\t<span v-if=\"$slots.prefix\" class=\"to-cascader-prefix\">\r\n\t\t\t<slot name=\"prefix\" />\r\n\t\t</span>\r\n\t\t<span v-if=\"props.prefix\" class=\"to-cascader-prefix-text\">\r\n\t\t\t<span>{{ props.prefix }}</span>\r\n\t\t</span>\r\n\t\t<span class=\"to-cascader-content\" @click=\"handleClick\">\r\n\t\t\t<span class=\"to-cascader-value\">\r\n\t\t\t\t<span v-if=\"value_\">{{ valueLabel }}</span>\r\n\t\t\t\t<span v-else class=\"to-cascader-placeholder\">{{ placeholder || t('to.cascader.placeholder') }}</span>\r\n\t\t\t</span>\r\n\t\t</span>\r\n\t\t<span v-if=\"clearable && value_\" class=\"to-cascader-clear\">\r\n\t\t\t<to-icon value=\"close\" @click.stop=\"handleClear\"></to-icon>\r\n\t\t</span>\r\n\t\t<span class=\"to-cascader-arrow\" @click=\"handleClick\">\r\n\t\t\t<to-icon v-if=\"false\" :value=\"iconValue\"></to-icon>\r\n\t\t</span>\r\n\t\t<Teleport to=\"body\">\r\n\t\t\t<div class=\"to-cascader\" :class=\"setClass\">\r\n\t\t\t\t<to-float ref=\"cascaderFloat\" :global=\"false\" class=\"to-cascader-layer\" :width=\"floatWidth\" lazy @closed=\"afterClose\">\r\n\t\t\t\t\t<div v-if=\"!data_.length\" style=\"text-align: center; color: #ccc; padding: 3em 0.3em\">{{ t('to.cascader.noData') }}</div>\r\n\t\t\t\t\t<to-scroll @click.stop>\r\n\t\t\t\t\t\t<to-cascader-item :key=\"String(data_)\" :data=\"data_\"></to-cascader-item>\r\n\t\t\t\t\t</to-scroll>\r\n\t\t\t\t</to-float>\r\n\t\t\t</div>\r\n\t\t</Teleport>\r\n\t\t<span v-if=\"errorTip\" v-color=\"'danger'\" class=\"to-box-tip\">\r\n\t\t\t<template v-if=\"errorType === 'rule'\">\r\n\t\t\t\t{{ t('to.cascader.inputError') }}\r\n\t\t\t\t<to-icon v-tip.danger=\"errorTip\" style=\"height: auto\" value=\"help\" color=\"danger\" mode=\"toast\"></to-icon>\r\n\t\t\t</template>\r\n\t\t\t<template v-else> {{ t('to.cascader.required') }} </template>\r\n\t\t</span>\r\n\t</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { CSSProperties, computed, provide, ref, watch, nextTick, inject } from 'vue'\r\nimport { ToIcon, ToFloat } from '@touchvue/components'\r\nimport ToCascaderItem from './cascader-item.vue'\r\nimport { deepClone } from '@touchvue/utils'\r\nimport { t, langKey } from '@touchvue/locale'\r\n\r\n\r\n\r\nconst ToFormItem = inject<{ required?: boolean; label?: string }>('ToFormItem', {})\r\n\r\nexport type VType = string | unknown[]\r\n\r\nexport interface Item {\r\n\tlabel?: string\r\n\tvalue?: string\r\n\tchildren?: string\r\n\tisSelect?: boolean\r\n\tisLeaf?: boolean\r\n\tlevel?: number\r\n\t[key: string]: any\r\n}\r\n\r\nexport interface Props {\r\n\tmode?: string\r\n\tlazy?: boolean\r\n\tdisabled?: boolean\r\n\tany?: boolean\r\n\tclearable?: boolean\r\n\tmodelValue?: string | []\r\n\twidth?: string | number\r\n\tlabelText?: string\r\n\tvalueText?: string\r\n\tchildrenText?: string\r\n\tplaceholder?: string\r\n\toptionWidth?: string | number\r\n\toptionCol?: string | number\r\n\tdata: []\r\n\tcomparable?: boolean\r\n\trequired?: boolean\r\n\tdesc?: string\r\n\tprefix?: string\r\n\tshowAllLevels?: boolean\r\n\tcheckedDatas?: any[]\r\n\tflex?: boolean\r\n}\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n\tmode: 'default',\r\n\tlazy: false,\r\n\tdisabled: false,\r\n\tany: true,\r\n\tclearable: false,\r\n\tmodelValue: '',\r\n\twidth: '',\r\n\tlabelText: 'label',\r\n\tvalueText: 'value',\r\n\tchildrenText: 'children',\r\n\tplaceholder: '',\r\n\toptionWidth: '16em',\r\n\toptionCol: '',\r\n\tdata: () => [],\r\n\tcomparable: false,\r\n\trequired: false,\r\n\tdesc: '',\r\n\tprefix: '',\r\n\tshowAllLevels: true,\r\n\tcheckedDatas: () => [],\r\n\tflex: false\r\n})\r\n\r\nconst ToForm = inject<{ comparable?: boolean }>('ToForm', {})\r\n\r\nconst iconValue = ref('unfold')\r\nconst value_ = ref<VType>('')\r\nconst valueLabel = ref('')\r\nconst data_ = ref<Item[]>(initData(props.data))\r\nconst cascaderFloat = ref(null)\r\nconst $el = ref(null)\r\nconst currentLevel = ref(0)\r\nconst checkedData = ref<Item[]>([])\r\nconst valueStore = ref<string[]>([])\r\nconst disabled = ref(props.disabled)\r\nconst errorTip = ref('')\r\nconst errorType = ref('rule')\r\n\r\nconst floatWidth = computed(() => {\r\n\tlet unit = 'em'\r\n\tlet sArr = []\r\n\tlet omit = 16\r\n\tif (props.optionWidth) {\r\n\t\tif (isNaN(Number(props.optionWidth))) {\r\n\t\t\tif ((props.optionWidth as string).includes('em')) {\r\n\t\t\t\tunit = 'em'\r\n\t\t\t\tsArr = (props.optionWidth as string).split('em')\r\n\t\t\t} else {\r\n\t\t\t\tunit = 'px'\r\n\t\t\t\tsArr = (props.optionWidth as string).split('px')\r\n\t\t\t}\r\n\t\t\tomit = Number(sArr[0])\r\n\t\t} else {\r\n\t\t\tomit = Number(props.optionWidth)\r\n\t\t}\r\n\t}\r\n\treturn `${(currentLevel.value + 1) * omit}${unit}`\r\n})\r\n\r\nconst setClass = computed(() => {\r\n\tconst arr = ['to-disable-target']\r\n\tif (errorTip.value) {\r\n\t\tarr.push('to-cascader-mode-line')\r\n\t\tarr.push('to-cascader-color-danger')\r\n\t\tarr.push('to-cascader-tip-show')\r\n\t} else {\r\n\t\tif (props.mode) {\r\n\t\t\tarr.push(`mode-${props.mode}`)\r\n\t\t}\r\n\t\tif ((ToForm && ToForm?.comparable) || props.comparable) {\r\n\t\t\tarr.push('to-compare')\r\n\t\t}\r\n\t\tif (changed.value) {\r\n\t\t\tarr.push('to-cascader-changed')\r\n\t\t}\r\n\t\tif (disabled.value || props.disabled) {\r\n\t\t\tarr.push('is-disabled')\r\n\t\t}\r\n\t}\r\n\treturn arr\r\n})\r\nconst setStyle = computed(() => {\r\n\tlet obj: CSSProperties = {}\r\n\tif (props.width) {\r\n\t\tif (isNaN(Number(props.width))) {\r\n\t\t\tobj.width = props.width\r\n\t\t} else {\r\n\t\t\tobj.width = `${props.width}em`\r\n\t\t}\r\n\t}\r\n\treturn obj\r\n})\r\nconst changed = computed(() => {\r\n\tif ((props.comparable || ToForm?.comparable) && valueStore.value.length > 0 && value_.value !== valueStore.value[0]) {\r\n\t\treturn true\r\n\t} else {\r\n\t\treturn false\r\n\t}\r\n})\r\n\r\nconst validateRequired = computed(() => {\r\n\tif (props.required) {\r\n\t\treturn 'true'\r\n\t} else if (ToFormItem && ToFormItem.required) {\r\n\t\treturn 'true'\r\n\t} else {\r\n\t\treturn 'false'\r\n\t}\r\n})\r\nconst validateDesc = computed(() => {\r\n\tif (props.desc) {\r\n\t\treturn props.desc\r\n\t} else if (ToFormItem && ToFormItem.label) {\r\n\t\treturn ToFormItem.label\r\n\t} else {\r\n\t\treturn ''\r\n\t}\r\n})\r\nexport interface ProvideProps {\r\n\tprops: Props\r\n\tsetLevel: (level: number) => void\r\n\tclose: () => void\r\n\tsetParentCheckedByValue: (value: string, level: number) => void\r\n\tstore: Item[]\r\n\tsetViewData: () => void\r\n}\r\n\r\nprovide<ProvideProps>('pProps', {\r\n\tprops,\r\n\tsetLevel,\r\n\tclose,\r\n\tsetParentCheckedByValue,\r\n\tstore: data_.value,\r\n\tsetViewData\r\n})\r\n\r\nwatch(\r\n\t() => props.modelValue,\r\n\tval => {\r\n\t\tvalue_.value = val\r\n\t\tif (props.data) {\r\n\t\t\tnextTick(() => {\r\n\t\t\t\tsetLabel()\r\n\t\t\t})\r\n\t\t}\r\n\t},\r\n\t{ immediate: true }\r\n)\r\nwatch(\r\n\t() => props.data,\r\n\tval => {\r\n\t\tdata_.value = initData(val)\r\n\t\tcheckedData.value = []\r\n\t\tsetLabel()\r\n\t},\r\n\t{ deep: true }\r\n)\r\n\r\nconst emit = defineEmits(['change', 'update:modelValue', 'update:checkedDatas'])\r\nfunction initData(data: Item[], levels = 0) {\r\n\tlet arr = deepClone(data)\r\n\tlet tem = []\r\n\tlet level = levels\r\n\tarr.forEach((item: Item) => {\r\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\r\n\t\t\ttem.push({\r\n\t\t\t\t...item,\r\n\t\t\t\tlevel,\r\n\t\t\t\tisLeaf: false,\r\n\t\t\t\tisSelect: false,\r\n\t\t\t\t[props.childrenText]: initData(item[props.childrenText], level + 1)\r\n\t\t\t})\r\n\t\t} else {\r\n\t\t\ttem.push({ ...item, level, isSelect: false, isLeaf: true })\r\n\t\t}\r\n\t})\r\n\treturn tem\r\n}\r\nfunction handleClick() {\r\n\terrorTip.value = ''\r\n\tif (!(props.disabled || disabled.value)) {\r\n\t\tcascaderFloat.value.toggle($el.value)\r\n\t\ticonValue.value = iconValue.value === 'unfold' ? 'fold' : 'unfold'\r\n\t}\r\n}\r\nfunction handleClear() {\r\n\tif (!props.disabled) {\r\n\t\tvalueLabel.value = ''\r\n\t\tresetCheckedData(data_.value)\r\n\t\tcheckedData.value = []\r\n\t\tvalue_.value = ''\r\n\t\tchange('')\r\n\t}\r\n}\r\nfunction setLevel(idx: number) {\r\n\tcurrentLevel.value = idx\r\n}\r\nfunction setParentCheckedByValue(value, level) {\r\n\tfixStore(data_.value, value, level)\r\n}\r\nfunction fixStore(arr, value, level) {\r\n\tarr.forEach((item: Item) => {\r\n\t\tif (item.level === level) {\r\n\t\t\tif (item[props.valueText] === value) {\r\n\t\t\t\titem.isSelect = true\r\n\t\t\t\tsetCheckedData(checkedData.value, level, item)\r\n\t\t\t} else {\r\n\t\t\t\titem.isSelect = false\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tif (item[props.childrenText] && item[props.childrenText].length) {\r\n\t\t\t\tfixStore(item[props.childrenText], value, level)\r\n\t\t\t}\r\n\t\t}\r\n\t})\r\n}\r\nfunction setCheckedData(arr: Item[], level, item) {\r\n\tlet idx = arr.findIndex(k => k.level === level)\r\n\tif (arr.length && idx !== -1) {\r\n\t\tif (arr[idx][props.valueText] !== item[props.valueText]) {\r\n\t\t\tlet resetArr = arr.filter(k => k.level > level)\r\n\t\t\tif (resetArr.length) {\r\n\t\t\t\tresetArr.forEach(k => {\r\n\t\t\t\t\tlet i = arr.findIndex(l => l.level === k.level)\r\n\t\t\t\t\tif (i !== -1) {\r\n\t\t\t\t\t\tarr.splice(i, 1)\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (idx !== -1) {\r\n\t\tarr[idx] = { ...item }\r\n\t} else {\r\n\t\tarr.push(deepClone(item))\r\n\t}\r\n}\r\nfunction resetCheckedData(arr: Item[]) {\r\n\tarr.forEach((item: Item) => {\r\n\t\titem.isSelect = false\r\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\r\n\t\t\tresetCheckedData(item[props.childrenText])\r\n\t\t}\r\n\t})\r\n}\r\nfunction setViewData() {\r\n\tlet labelArr = checkedData.value.map(item => item[props.labelText])\r\n\tlet leafArr = checkedData.value.map(item => item.isLeaf)\r\n\tif (props.showAllLevels) {\r\n\t\tvalueLabel.value = labelArr.join(' / ')\r\n\t} else {\r\n\t\tif (leafArr[leafArr.length - 1]) {\r\n\t\t\tvalueLabel.value = labelArr[labelArr.length - 1]\r\n\t\t} else {\r\n\t\t\tvalueLabel.value = ''\r\n\t\t}\r\n\t}\r\n\tlet leafItem = []\r\n\tif (!props.any) {\r\n\t\tleafItem = checkedData.value.filter(item => item.isLeaf)\r\n\t} else {\r\n\t\tleafItem = checkedData.value.length ? [checkedData.value[checkedData.value.length - 1]] : []\r\n\t}\r\n\tif (leafItem.length) {\r\n\t\tvalue_.value = leafItem[0][props.valueText]\r\n\t\tchange(value_.value)\r\n\t}\r\n}\r\nfunction close() {\r\n\tcascaderFloat.value.toggle($el.value)\r\n}\r\nfunction afterClose() {\r\n\tsetLevel(0)\r\n}\r\nfunction change(v) {\r\n\temit('update:modelValue', v)\r\n\temit('change', v, checkedData.value)\r\n}\r\nconst setLabel = () => {\r\n\tif (value_.value) {\r\n\t\tvalueLabel.value = getLabelPath(value_.value, data_.value) || value_.value\r\n\t} else {\r\n\t\tvalueLabel.value = props.placeholder\r\n\t}\r\n}\r\n\r\n// 添加获取标签路径的函数\r\nfunction getLabelPath(value, data, path = [], pData = []) {\r\n\tfor (const item of data) {\r\n\t\tif (item[props.valueText] === value) {\r\n\t\t\tlet tem: any = []\r\n\t\t\tcheckedData.value = [...pData, item]\r\n\t\t\tif (props.showAllLevels) {\r\n\t\t\t\ttem = [...path, item[props.labelText]].join(' / ')\r\n\t\t\t} else {\r\n\t\t\t\tif (item.isLeaf) {\r\n\t\t\t\t\ttem = item[props.labelText]\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttem = ''\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn tem\r\n\t\t}\r\n\r\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\r\n\t\t\tconst result = getLabelPath(value, item[props.childrenText], [...path, item[props.labelText]], [...pData, item])\r\n\t\t\tif (result) {\r\n\t\t\t\treturn result\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn ''\r\n}\r\nfunction compare() {\r\n\tvalueStore.value.unshift(String(value_.value))\r\n}\r\n// 撤销\r\nfunction restore() {\r\n\tvalue_.value = valueStore.value[0]\r\n\tvalueStore.value.splice(0, 1)\r\n}\r\nconst setDisabled = (f: boolean) => {\r\n\tdisabled.value = f\r\n}\r\n\r\nconst getCheckData = () => {\r\n\treturn checkedData.value\r\n}\r\nwatch(\r\n\t() => checkedData.value,\r\n\tval => {\r\n\t\temit('update:checkedDatas', val)\r\n\t}\r\n)\r\n\r\ndefineExpose({\r\n\tcompare,\r\n\trestore,\r\n\tchanged,\r\n\tsetDisabled,\r\n\terrorTip,\r\n\terrorType,\r\n\tgetCheckData\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_unref","_normalizeClass","$slots","_renderSlot","_createElementVNode","_toDisplayString","_openBlock","_createVNode","_createBlock","_Teleport","ToCascaderItem","_Fragment","_createTextVNode"],"mappings":";;;;;;;AAEA,MAAA,cAA6BA,eAAmB,CAAA;AAAA,EAC/C,IAAM,EAAA,YAAA;AACP,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDD,IAAA,MAAM,UAAa,GAAA,MAAA,CAA+C,YAAc,EAAA,EAAE,CAAA,CAAA;AAsClF,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAwBd,IAAA,MAAM,MAAS,GAAA,MAAA,CAAiC,QAAU,EAAA,EAAE,CAAA,CAAA;AAE5D,IAAM,MAAA,SAAA,GAAY,IAAI,QAAQ,CAAA,CAAA;AAC9B,IAAM,MAAA,MAAA,GAAS,IAAW,EAAE,CAAA,CAAA;AAC5B,IAAM,MAAA,UAAA,GAAa,IAAI,EAAE,CAAA,CAAA;AACzB,IAAA,MAAM,KAAQ,GAAA,GAAA,CAAY,QAAS,CAAA,KAAA,CAAM,IAAI,CAAC,CAAA,CAAA;AAC9C,IAAM,MAAA,aAAA,GAAgB,IAAI,IAAI,CAAA,CAAA;AAC9B,IAAM,MAAA,GAAA,GAAM,IAAI,IAAI,CAAA,CAAA;AACpB,IAAM,MAAA,YAAA,GAAe,IAAI,CAAC,CAAA,CAAA;AAC1B,IAAM,MAAA,WAAA,GAAc,GAAY,CAAA,EAAE,CAAA,CAAA;AAClC,IAAM,MAAA,UAAA,GAAa,GAAc,CAAA,EAAE,CAAA,CAAA;AACnC,IAAM,MAAA,QAAA,GAAW,GAAI,CAAA,KAAA,CAAM,QAAQ,CAAA,CAAA;AACnC,IAAM,MAAA,QAAA,GAAW,IAAI,EAAE,CAAA,CAAA;AACvB,IAAM,MAAA,SAAA,GAAY,IAAI,MAAM,CAAA,CAAA;AAE5B,IAAM,MAAA,UAAA,GAAa,SAAS,MAAM;AACjC,MAAA,IAAI,IAAO,GAAA,IAAA,CAAA;AACX,MAAA,IAAI,OAAO,EAAC,CAAA;AACZ,MAAA,IAAI,IAAO,GAAA,EAAA,CAAA;AACX,MAAA,IAAI,MAAM,WAAa,EAAA;AACtB,QAAA,IAAI,KAAM,CAAA,MAAA,CAAO,KAAM,CAAA,WAAW,CAAC,CAAG,EAAA;AACrC,UAAA,IAAK,KAAM,CAAA,WAAA,CAAuB,QAAS,CAAA,IAAI,CAAG,EAAA;AACjD,YAAO,IAAA,GAAA,IAAA,CAAA;AACP,YAAQ,IAAA,GAAA,KAAA,CAAM,WAAuB,CAAA,KAAA,CAAM,IAAI,CAAA,CAAA;AAAA,WACzC,MAAA;AACN,YAAO,IAAA,GAAA,IAAA,CAAA;AACP,YAAQ,IAAA,GAAA,KAAA,CAAM,WAAuB,CAAA,KAAA,CAAM,IAAI,CAAA,CAAA;AAAA,WAChD;AACA,UAAO,IAAA,GAAA,MAAA,CAAO,IAAK,CAAA,CAAC,CAAC,CAAA,CAAA;AAAA,SACf,MAAA;AACN,UAAO,IAAA,GAAA,MAAA,CAAO,MAAM,WAAW,CAAA,CAAA;AAAA,SAChC;AAAA,OACD;AACA,MAAA,OAAO,CAAI,EAAA,CAAA,YAAA,CAAa,KAAQ,GAAA,CAAA,IAAK,IAAO,CAAA,EAAA,IAAA,CAAA,CAAA,CAAA;AAAA,KAC5C,CAAA,CAAA;AAED,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC/B,MAAM,MAAA,GAAA,GAAM,CAAC,mBAAmB,CAAA,CAAA;AAChC,MAAA,IAAI,SAAS,KAAO,EAAA;AACnB,QAAA,GAAA,CAAI,KAAK,uBAAuB,CAAA,CAAA;AAChC,QAAA,GAAA,CAAI,KAAK,0BAA0B,CAAA,CAAA;AACnC,QAAA,GAAA,CAAI,KAAK,sBAAsB,CAAA,CAAA;AAAA,OACzB,MAAA;AACN,QAAA,IAAI,MAAM,IAAM,EAAA;AACf,UAAI,GAAA,CAAA,IAAA,CAAK,CAAQ,KAAA,EAAA,KAAA,CAAM,IAAM,CAAA,CAAA,CAAA,CAAA;AAAA,SAC9B;AACA,QAAA,IAAK,MAAU,KAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAQ,UAAe,CAAA,IAAA,KAAA,CAAM,UAAY,EAAA;AACvD,UAAA,GAAA,CAAI,KAAK,YAAY,CAAA,CAAA;AAAA,SACtB;AACA,QAAA,IAAI,QAAQ,KAAO,EAAA;AAClB,UAAA,GAAA,CAAI,KAAK,qBAAqB,CAAA,CAAA;AAAA,SAC/B;AACA,QAAI,IAAA,QAAA,CAAS,KAAS,IAAA,KAAA,CAAM,QAAU,EAAA;AACrC,UAAA,GAAA,CAAI,KAAK,aAAa,CAAA,CAAA;AAAA,SACvB;AAAA,OACD;AACA,MAAO,OAAA,GAAA,CAAA;AAAA,KACP,CAAA,CAAA;AACD,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC/B,MAAA,IAAI,MAAqB,EAAC,CAAA;AAC1B,MAAA,IAAI,MAAM,KAAO,EAAA;AAChB,QAAA,IAAI,KAAM,CAAA,MAAA,CAAO,KAAM,CAAA,KAAK,CAAC,CAAG,EAAA;AAC/B,UAAA,GAAA,CAAI,QAAQ,KAAM,CAAA,KAAA,CAAA;AAAA,SACZ,MAAA;AACN,UAAI,GAAA,CAAA,KAAA,GAAQ,GAAG,KAAM,CAAA,KAAA,CAAA,EAAA,CAAA,CAAA;AAAA,SACtB;AAAA,OACD;AACA,MAAO,OAAA,GAAA,CAAA;AAAA,KACP,CAAA,CAAA;AACD,IAAM,MAAA,OAAA,GAAU,SAAS,MAAM;AAC9B,MAAA,IAAA,CAAK,KAAM,CAAA,UAAA,KAAc,MAAQ,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,UAAA,CAAA,KAAe,UAAW,CAAA,KAAA,CAAM,MAAS,GAAA,CAAA,IAAK,MAAO,CAAA,KAAA,KAAU,UAAW,CAAA,KAAA,CAAM,CAAC,CAAG,EAAA;AACpH,QAAO,OAAA,IAAA,CAAA;AAAA,OACD,MAAA;AACN,QAAO,OAAA,KAAA,CAAA;AAAA,OACR;AAAA,KACA,CAAA,CAAA;AAED,IAAM,MAAA,gBAAA,GAAmB,SAAS,MAAM;AACvC,MAAA,IAAI,MAAM,QAAU,EAAA;AACnB,QAAO,OAAA,MAAA,CAAA;AAAA,OACR,MAAA,IAAW,UAAc,IAAA,UAAA,CAAW,QAAU,EAAA;AAC7C,QAAO,OAAA,MAAA,CAAA;AAAA,OACD,MAAA;AACN,QAAO,OAAA,OAAA,CAAA;AAAA,OACR;AAAA,KACA,CAAA,CAAA;AACD,IAAM,MAAA,YAAA,GAAe,SAAS,MAAM;AACnC,MAAA,IAAI,MAAM,IAAM,EAAA;AACf,QAAA,OAAO,KAAM,CAAA,IAAA,CAAA;AAAA,OACd,MAAA,IAAW,UAAc,IAAA,UAAA,CAAW,KAAO,EAAA;AAC1C,QAAA,OAAO,UAAW,CAAA,KAAA,CAAA;AAAA,OACZ,MAAA;AACN,QAAO,OAAA,EAAA,CAAA;AAAA,OACR;AAAA,KACA,CAAA,CAAA;AAUD,IAAA,OAAA,CAAsB,QAAU,EAAA;AAAA,MAC/B,KAAA;AAAA,MACA,QAAA;AAAA,MACA,KAAA;AAAA,MACA,uBAAA;AAAA,MACA,OAAO,KAAM,CAAA,KAAA;AAAA,MACb,WAAA;AAAA,KACA,CAAA,CAAA;AAED,IAAA,KAAA;AAAA,MACC,MAAM,KAAM,CAAA,UAAA;AAAA,MACZ,CAAO,GAAA,KAAA;AACN,QAAA,MAAA,CAAO,KAAQ,GAAA,GAAA,CAAA;AACf,QAAA,IAAI,MAAM,IAAM,EAAA;AACf,UAAA,QAAA,CAAS,MAAM;AACd,YAAS,QAAA,EAAA,CAAA;AAAA,WACT,CAAA,CAAA;AAAA,SACF;AAAA,OACD;AAAA,MACA,EAAE,WAAW,IAAK,EAAA;AAAA,KACnB,CAAA;AACA,IAAA,KAAA;AAAA,MACC,MAAM,KAAM,CAAA,IAAA;AAAA,MACZ,CAAO,GAAA,KAAA;AACN,QAAM,KAAA,CAAA,KAAA,GAAQ,SAAS,GAAG,CAAA,CAAA;AAC1B,QAAA,WAAA,CAAY,QAAQ,EAAC,CAAA;AACrB,QAAS,QAAA,EAAA,CAAA;AAAA,OACV;AAAA,MACA,EAAE,MAAM,IAAK,EAAA;AAAA,KACd,CAAA;AAEA,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAS,SAAA,QAAA,CAAS,IAAc,EAAA,MAAA,GAAS,CAAG,EAAA;AAC3C,MAAI,IAAA,GAAA,GAAM,UAAU,IAAI,CAAA,CAAA;AACxB,MAAA,IAAI,MAAM,EAAC,CAAA;AACX,MAAA,IAAI,KAAQ,GAAA,MAAA,CAAA;AACZ,MAAI,GAAA,CAAA,OAAA,CAAQ,CAAC,IAAe,KAAA;AAC3B,QAAI,IAAA,IAAA,CAAK,MAAM,YAAY,CAAA,IAAK,KAAK,KAAM,CAAA,YAAY,EAAE,MAAQ,EAAA;AAChE,UAAA,GAAA,CAAI,IAAK,CAAA;AAAA,YACR,GAAG,IAAA;AAAA,YACH,KAAA;AAAA,YACA,MAAQ,EAAA,KAAA;AAAA,YACR,QAAU,EAAA,KAAA;AAAA,YACV,CAAC,KAAM,CAAA,YAAY,GAAG,QAAA,CAAS,KAAK,KAAM,CAAA,YAAY,CAAG,EAAA,KAAA,GAAQ,CAAC,CAAA;AAAA,WAClE,CAAA,CAAA;AAAA,SACK,MAAA;AACN,UAAI,GAAA,CAAA,IAAA,CAAK,EAAE,GAAG,IAAA,EAAM,OAAO,QAAU,EAAA,KAAA,EAAO,MAAQ,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,SAC3D;AAAA,OACA,CAAA,CAAA;AACD,MAAO,OAAA,GAAA,CAAA;AAAA,KACR;AACA,IAAA,SAAS,WAAc,GAAA;AACtB,MAAA,QAAA,CAAS,KAAQ,GAAA,EAAA,CAAA;AACjB,MAAA,IAAI,EAAE,KAAA,CAAM,QAAY,IAAA,QAAA,CAAS,KAAQ,CAAA,EAAA;AACxC,QAAc,aAAA,CAAA,KAAA,CAAM,MAAO,CAAA,GAAA,CAAI,KAAK,CAAA,CAAA;AACpC,QAAA,SAAA,CAAU,KAAQ,GAAA,SAAA,CAAU,KAAU,KAAA,QAAA,GAAW,MAAS,GAAA,QAAA,CAAA;AAAA,OAC3D;AAAA,KACD;AACA,IAAA,SAAS,WAAc,GAAA;AACtB,MAAI,IAAA,CAAC,MAAM,QAAU,EAAA;AACpB,QAAA,UAAA,CAAW,KAAQ,GAAA,EAAA,CAAA;AACnB,QAAA,gBAAA,CAAiB,MAAM,KAAK,CAAA,CAAA;AAC5B,QAAA,WAAA,CAAY,QAAQ,EAAC,CAAA;AACrB,QAAA,MAAA,CAAO,KAAQ,GAAA,EAAA,CAAA;AACf,QAAA,MAAA,CAAO,EAAE,CAAA,CAAA;AAAA,OACV;AAAA,KACD;AACA,IAAA,SAAS,SAAS,GAAa,EAAA;AAC9B,MAAA,YAAA,CAAa,KAAQ,GAAA,GAAA,CAAA;AAAA,KACtB;AACA,IAAS,SAAA,uBAAA,CAAwB,OAAO,KAAO,EAAA;AAC9C,MAAS,QAAA,CAAA,KAAA,CAAM,KAAO,EAAA,KAAA,EAAO,KAAK,CAAA,CAAA;AAAA,KACnC;AACA,IAAS,SAAA,QAAA,CAAS,GAAK,EAAA,KAAA,EAAO,KAAO,EAAA;AACpC,MAAI,GAAA,CAAA,OAAA,CAAQ,CAAC,IAAe,KAAA;AAC3B,QAAI,IAAA,IAAA,CAAK,UAAU,KAAO,EAAA;AACzB,UAAA,IAAI,IAAK,CAAA,KAAA,CAAM,SAAS,CAAA,KAAM,KAAO,EAAA;AACpC,YAAA,IAAA,CAAK,QAAW,GAAA,IAAA,CAAA;AAChB,YAAe,cAAA,CAAA,WAAA,CAAY,KAAO,EAAA,KAAA,EAAO,IAAI,CAAA,CAAA;AAAA,WACvC,MAAA;AACN,YAAA,IAAA,CAAK,QAAW,GAAA,KAAA,CAAA;AAAA,WACjB;AAAA,SACM,MAAA;AACN,UAAI,IAAA,IAAA,CAAK,MAAM,YAAY,CAAA,IAAK,KAAK,KAAM,CAAA,YAAY,EAAE,MAAQ,EAAA;AAChE,YAAA,QAAA,CAAS,IAAK,CAAA,KAAA,CAAM,YAAY,CAAA,EAAG,OAAO,KAAK,CAAA,CAAA;AAAA,WAChD;AAAA,SACD;AAAA,OACA,CAAA,CAAA;AAAA,KACF;AACA,IAAS,SAAA,cAAA,CAAe,GAAa,EAAA,KAAA,EAAO,IAAM,EAAA;AACjD,MAAA,IAAI,MAAM,GAAI,CAAA,SAAA,CAAU,CAAK,CAAA,KAAA,CAAA,CAAE,UAAU,KAAK,CAAA,CAAA;AAC9C,MAAI,IAAA,GAAA,CAAI,MAAU,IAAA,GAAA,KAAQ,CAAI,CAAA,EAAA;AAC7B,QAAI,IAAA,GAAA,CAAI,GAAG,CAAE,CAAA,KAAA,CAAM,SAAS,CAAM,KAAA,IAAA,CAAK,KAAM,CAAA,SAAS,CAAG,EAAA;AACxD,UAAA,IAAI,WAAW,GAAI,CAAA,MAAA,CAAO,CAAK,CAAA,KAAA,CAAA,CAAE,QAAQ,KAAK,CAAA,CAAA;AAC9C,UAAA,IAAI,SAAS,MAAQ,EAAA;AACpB,YAAA,QAAA,CAAS,QAAQ,CAAK,CAAA,KAAA;AACrB,cAAA,IAAI,IAAI,GAAI,CAAA,SAAA,CAAU,OAAK,CAAE,CAAA,KAAA,KAAU,EAAE,KAAK,CAAA,CAAA;AAC9C,cAAA,IAAI,MAAM,CAAI,CAAA,EAAA;AACb,gBAAI,GAAA,CAAA,MAAA,CAAO,GAAG,CAAC,CAAA,CAAA;AAAA,eAChB;AAAA,aACA,CAAA,CAAA;AAAA,WACF;AAAA,SACD;AAAA,OACD;AACA,MAAA,IAAI,QAAQ,CAAI,CAAA,EAAA;AACf,QAAA,GAAA,CAAI,GAAG,CAAA,GAAI,EAAE,GAAG,IAAK,EAAA,CAAA;AAAA,OACf,MAAA;AACN,QAAI,GAAA,CAAA,IAAA,CAAK,SAAU,CAAA,IAAI,CAAC,CAAA,CAAA;AAAA,OACzB;AAAA,KACD;AACA,IAAA,SAAS,iBAAiB,GAAa,EAAA;AACtC,MAAI,GAAA,CAAA,OAAA,CAAQ,CAAC,IAAe,KAAA;AAC3B,QAAA,IAAA,CAAK,QAAW,GAAA,KAAA,CAAA;AAChB,QAAI,IAAA,IAAA,CAAK,MAAM,YAAY,CAAA,IAAK,KAAK,KAAM,CAAA,YAAY,EAAE,MAAQ,EAAA;AAChE,UAAiB,gBAAA,CAAA,IAAA,CAAK,KAAM,CAAA,YAAY,CAAC,CAAA,CAAA;AAAA,SAC1C;AAAA,OACA,CAAA,CAAA;AAAA,KACF;AACA,IAAA,SAAS,WAAc,GAAA;AACtB,MAAI,IAAA,QAAA,GAAW,YAAY,KAAM,CAAA,GAAA,CAAI,UAAQ,IAAK,CAAA,KAAA,CAAM,SAAS,CAAC,CAAA,CAAA;AAClE,MAAA,IAAI,UAAU,WAAY,CAAA,KAAA,CAAM,GAAI,CAAA,CAAA,IAAA,KAAQ,KAAK,MAAM,CAAA,CAAA;AACvD,MAAA,IAAI,MAAM,aAAe,EAAA;AACxB,QAAW,UAAA,CAAA,KAAA,GAAQ,QAAS,CAAA,IAAA,CAAK,KAAK,CAAA,CAAA;AAAA,OAChC,MAAA;AACN,QAAA,IAAI,OAAQ,CAAA,OAAA,CAAQ,MAAS,GAAA,CAAC,CAAG,EAAA;AAChC,UAAA,UAAA,CAAW,KAAQ,GAAA,QAAA,CAAS,QAAS,CAAA,MAAA,GAAS,CAAC,CAAA,CAAA;AAAA,SACzC,MAAA;AACN,UAAA,UAAA,CAAW,KAAQ,GAAA,EAAA,CAAA;AAAA,SACpB;AAAA,OACD;AACA,MAAA,IAAI,WAAW,EAAC,CAAA;AAChB,MAAI,IAAA,CAAC,MAAM,GAAK,EAAA;AACf,QAAA,QAAA,GAAW,WAAY,CAAA,KAAA,CAAM,MAAO,CAAA,CAAA,IAAA,KAAQ,KAAK,MAAM,CAAA,CAAA;AAAA,OACjD,MAAA;AACN,QAAA,QAAA,GAAW,WAAY,CAAA,KAAA,CAAM,MAAS,GAAA,CAAC,WAAY,CAAA,KAAA,CAAM,WAAY,CAAA,KAAA,CAAM,MAAS,GAAA,CAAC,CAAC,CAAA,GAAI,EAAC,CAAA;AAAA,OAC5F;AACA,MAAA,IAAI,SAAS,MAAQ,EAAA;AACpB,QAAA,MAAA,CAAO,KAAQ,GAAA,QAAA,CAAS,CAAC,CAAA,CAAE,MAAM,SAAS,CAAA,CAAA;AAC1C,QAAA,MAAA,CAAO,OAAO,KAAK,CAAA,CAAA;AAAA,OACpB;AAAA,KACD;AACA,IAAA,SAAS,KAAQ,GAAA;AAChB,MAAc,aAAA,CAAA,KAAA,CAAM,MAAO,CAAA,GAAA,CAAI,KAAK,CAAA,CAAA;AAAA,KACrC;AACA,IAAA,SAAS,UAAa,GAAA;AACrB,MAAA,QAAA,CAAS,CAAC,CAAA,CAAA;AAAA,KACX;AACA,IAAA,SAAS,OAAO,CAAG,EAAA;AAClB,MAAA,IAAA,CAAK,qBAAqB,CAAC,CAAA,CAAA;AAC3B,MAAK,IAAA,CAAA,QAAA,EAAU,CAAG,EAAA,WAAA,CAAY,KAAK,CAAA,CAAA;AAAA,KACpC;AACA,IAAA,MAAM,WAAW,MAAM;AACtB,MAAA,IAAI,OAAO,KAAO,EAAA;AACjB,QAAA,UAAA,CAAW,QAAQ,YAAa,CAAA,MAAA,CAAO,OAAO,KAAM,CAAA,KAAK,KAAK,MAAO,CAAA,KAAA,CAAA;AAAA,OAC/D,MAAA;AACN,QAAA,UAAA,CAAW,QAAQ,KAAM,CAAA,WAAA,CAAA;AAAA,OAC1B;AAAA,KACD,CAAA;AAGA,IAAS,SAAA,YAAA,CAAa,OAAO,IAAM,EAAA,IAAA,GAAO,EAAI,EAAA,KAAA,GAAQ,EAAI,EAAA;AACzD,MAAA,KAAA,MAAW,QAAQ,IAAM,EAAA;AACxB,QAAA,IAAI,IAAK,CAAA,KAAA,CAAM,SAAS,CAAA,KAAM,KAAO,EAAA;AACpC,UAAA,IAAI,MAAW,EAAC,CAAA;AAChB,UAAA,WAAA,CAAY,KAAQ,GAAA,CAAC,GAAG,KAAA,EAAO,IAAI,CAAA,CAAA;AACnC,UAAA,IAAI,MAAM,aAAe,EAAA;AACxB,YAAM,GAAA,GAAA,CAAC,GAAG,IAAM,EAAA,IAAA,CAAK,MAAM,SAAS,CAAC,CAAE,CAAA,IAAA,CAAK,KAAK,CAAA,CAAA;AAAA,WAC3C,MAAA;AACN,YAAA,IAAI,KAAK,MAAQ,EAAA;AAChB,cAAM,GAAA,GAAA,IAAA,CAAK,MAAM,SAAS,CAAA,CAAA;AAAA,aACpB,MAAA;AACN,cAAM,GAAA,GAAA,EAAA,CAAA;AAAA,aACP;AAAA,WACD;AACA,UAAO,OAAA,GAAA,CAAA;AAAA,SACR;AAEA,QAAI,IAAA,IAAA,CAAK,MAAM,YAAY,CAAA,IAAK,KAAK,KAAM,CAAA,YAAY,EAAE,MAAQ,EAAA;AAChE,UAAA,MAAM,SAAS,YAAa,CAAA,KAAA,EAAO,KAAK,KAAM,CAAA,YAAY,GAAG,CAAC,GAAG,MAAM,IAAK,CAAA,KAAA,CAAM,SAAS,CAAC,CAAA,EAAG,CAAC,GAAG,KAAA,EAAO,IAAI,CAAC,CAAA,CAAA;AAC/G,UAAA,IAAI,MAAQ,EAAA;AACX,YAAO,OAAA,MAAA,CAAA;AAAA,WACR;AAAA,SACD;AAAA,OACD;AACA,MAAO,OAAA,EAAA,CAAA;AAAA,KACR;AACA,IAAA,SAAS,OAAU,GAAA;AAClB,MAAA,UAAA,CAAW,KAAM,CAAA,OAAA,CAAQ,MAAO,CAAA,MAAA,CAAO,KAAK,CAAC,CAAA,CAAA;AAAA,KAC9C;AAEA,IAAA,SAAS,OAAU,GAAA;AAClB,MAAO,MAAA,CAAA,KAAA,GAAQ,UAAW,CAAA,KAAA,CAAM,CAAC,CAAA,CAAA;AACjC,MAAW,UAAA,CAAA,KAAA,CAAM,MAAO,CAAA,CAAA,EAAG,CAAC,CAAA,CAAA;AAAA,KAC7B;AACA,IAAM,MAAA,WAAA,GAAc,CAAC,CAAe,KAAA;AACnC,MAAA,QAAA,CAAS,KAAQ,GAAA,CAAA,CAAA;AAAA,KAClB,CAAA;AAEA,IAAA,MAAM,eAAe,MAAM;AAC1B,MAAA,OAAO,WAAY,CAAA,KAAA,CAAA;AAAA,KACpB,CAAA;AACA,IAAA,KAAA;AAAA,MACC,MAAM,WAAY,CAAA,KAAA;AAAA,MAClB,CAAO,GAAA,KAAA;AACN,QAAA,IAAA,CAAK,uBAAuB,GAAG,CAAA,CAAA;AAAA,OAChC;AAAA,KACD,CAAA;AAEA,IAAa,QAAA,CAAA;AAAA,MACZ,OAAA;AAAA,MACA,OAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAA;AAAA,MACA,QAAA;AAAA,MACA,SAAA;AAAA,MACA,YAAA;AAAA,KACA,CAAA,CAAA;;;;;wCA/aA,EAAAC,kBAAA,CAqCM,KAAA,EAAA;AAAA,eArCG,EAAA,KAAA;AAAA,QAAJ,GAAI,EAAA,GAAA;AAAA,QAAO,GAAA,EAAKC,MAAO,OAAA,CAAA;AAAA,QAA2F,IAAM,EAAA,OAAA,CAAI,IAAG,GAAA,OAAA,CAAI,IAAA,GAAA,IAAA;AAAA,QAAS,OAAKC,cAAA,CAAA,CAAC,aAAsB,EAAA,QAAA,CAAQ,KAAA,CAAA,CAAA;AAAA,QAAG,KAAA,gBAAO,CAAA,QAAA,CAAQ,KAAA,CAAA;AAAA;QAC1L,iBAAgB,qCAA5BF,mBAAmJ,MAAA,EAAA;AAAA;UAAtG,KAAM,EAAA,aAAA;AAAA,UAAe,KAAK,gBAAgB,CAAA,KAAA;AAAA,UAAG,MAAM,YAAY,CAAA,KAAA;AAAA,UAAG,KAAA,EAAO,MAAM,CAAA,KAAA,GAAA,MAAA,GAAA,EAAA;AAAA;kBAAtF,KAAK,CAAA;AAAA;QAC/BG,KAAAA,MAAO,CAAA,MAAA,iBAAnBH,mBAEO,MAAA,EAAA;AAAA;UAFoB,KAAM,EAAA,oBAAA;AAAA;UAChCI,UAAA,CAAsB,IAAA,CAAA,MAAA,EAAA,QAAA,CAAA;AAAA;QAEX,KAAM,CAAA,MAAA,iBAAlBJ,mBAEO,MAAA,EAAA;AAAA;UAFmB,KAAM,EAAA,yBAAA;AAAA;UAC/BK,kBAAA;AAAA,YAA+B,MAAA;AAAA,YAAA,IAAA;AAAA,YAAAC,eAAA,CAAtB,MAAM,MAAM,CAAA;AAAA,YAAA,CAAA;AAAA;AAAA,WAAA;AAAA;QAEtBD,mBAKO,MAAA,EAAA;AAAA,UALD,KAAM,EAAA,qBAAA;AAAA,UAAuB,OAAO,EAAA,WAAA;AAAA;UACzCA,kBAGO,CAAA,MAAA,EAAA,EAHD,KAAA,EAAM,qBAAmB,EAAA;AAAA,YAClB,MAAA,CAAM,KAAlB,IAAAE,SAAA,EAAA,EAAAP,kBAAA;AAAA,cAA2C,MAAA;AAAA;8BAApB,WAAU,KAAA,CAAA;AAAA,cAAA,CAAA;AAAA;AAAA,aAAA,gBACjC,EAAAA,kBAAA;AAAA,cAAqG,MAAA;AAAA,cAAA;AAAA;gBAAxF,KAAM,EAAA,yBAAA;AAAA,eAA6B;AAAA,cAAAM,gBAAA,OAAA,CAAA,WAAA,IAAeL,MAAC,CAAA,CAAA,CAAA,yBAAA,CAAA,CAAA;AAAA,cAAA,CAAA;AAAA;AAAA,aAAA,CAAA;AAAA;;QAGtD,QAAA,SAAa,IAAA,MAAA,CAAM,sBAA/BD,mBAEO,MAAA,EAAA;AAAA;UAF0B,KAAM,EAAA,mBAAA;AAAA;UACtCQ,WAAA,CAA2DP,KAAA,CAAA,MAAA,CAAA,EAAA;AAAA,YAAlD,KAAM,EAAA,OAAA;AAAA,YAAS,uBAAY,WAAW,EAAA,CAAA,MAAA,CAAA,CAAA;AAAA;;QAEhDI,mBAEO,MAAA,EAAA;AAAA,UAFD,KAAM,EAAA,mBAAA;AAAA,UAAqB,OAAO,EAAA,WAAA;AAAA;;;oBAGxC,EAAAI,WAAA,CASWC,UAAA,EATD,EAAA,EAAG,QAAM,EAAA;AAAA,UAClBL,kBAAA;AAAA,YAOM,KAAA;AAAA,YAAA;AAAA,cAPD,OAAKH,cAAA,CAAA,CAAC,aAAsB,EAAA,QAAA,CAAQ,KAAA,CAAA,CAAA;AAAA;;cACxCM,WAAA,CAKWP,KAAA,CAAA,OAAA,CAAA,EAAA;AAAA,uBALG,EAAA,eAAA;AAAA,gBAAJ,GAAI,EAAA,aAAA;AAAA,gBAAiB,MAAQ,EAAA,KAAA;AAAA,gBAAO,KAAM,EAAA,mBAAA;AAAA,gBAAqB,OAAO,UAAU,CAAA,KAAA;AAAA,gBAAE,IAAA,EAAA,EAAA;AAAA,gBAAM,QAAQ,EAAA,UAAA;AAAA;iCAHjG,MAIN;AAAA,kBAAU,CAAA,KAAA,CAAA,KAAM,CAAA,MAAA,eAAlB,EAAAD,kBAAA;AAAA,oBAAyH,KAAA;AAAA,oBAAA;AAAA;sBAA/F,OAAA,EAA2D,YAAA,EAAA,UAAA,OAAA,EAAA,MAAA,EAAA,WAAA,WAAA,EAAA;AAAA;mCAAI,CAAAC,KAAA,CAAC,CAAA,CAAA,CAAA,oBAAA,CAAA,CAAA;AAAA,oBAAA,CAAA;AAAA;AAAA,mBAAA;kBAC1FO,YAEY,oBAAA,EAAA;AAAA,oBAFA,OAAA,gBAAD,MAAW;AAAA,qBAAA,EAAA,CAAA,MAAA,CAAA,CAAA;AAAA;qCACrB,MAAwE;AAAA,kCAAxE,EAAAC,WAAA,CAAwEE,YAAA,EAAA;AAAA,wBAArD,GAAA,EAAK,MAAO,CAAA,KAAA,CAAK,KAAA,CAAA;AAAA,wBAAI,MAAM,KAAK,CAAA,KAAA;AAAA;;;;;;;;;;;;;;QAK3C,SAAQ,qCAApBX,mBAMO,MAAA,EAAA;AAAA;UANkC,KAAM,EAAA,YAAA;AAAA;UAC9B,SAAS,CAAA,KAAA,KAAA,qBAAzB,EAAAA,kBAAA;AAAA,YAGWY,QAAA;AAAA,YAAA,EAAA,KAAA,CAAA,EAAA;AAAA,YAAA;AAAA,cAFPC,eAAA;AAAA,gBAAAP,gBAAAL,KAAA,CAAA,CAAA,4BAA8B,GAAA,GAAA;AAAA,gBACjC,CAAA;AAAA;AAAA,eAAA;AAAA,4BAAA,CAAAO,WAAA;AAAA,gBAAyGP,MAAA,MAAA,CAAA;AAAA,gBAAA;AAAA,kBAAxE,KAAA,EAAA,EAAoB,QAAA,EAAA,MAAA,EAAA;AAAA,kBAAC,KAAM,EAAA,MAAA;AAAA,kBAAO,KAAM,EAAA,QAAA;AAAA,kBAAS,IAAK,EAAA,OAAA;AAAA;;;;;;;kBAAhE,QAAQ,CAAA,KAAA;AAAA;kBAAhB,EAAA,QAAN,IAAuB,EAAA;AAAA;;;;;2BAEjC,EAAAD,kBAAA;AAAA,YAA6DY,QAAA;AAAA,YAAA,EAAA,KAAA,CAAA,EAAA;AAAA,YAAA;AAAA;+BAAxC,CAAAX,KAAA,CAAC,CAAA,CAAA,CAAA,sBAAA,CAAA,CAAA;AAAA,gBAAA,CAAA;AAAA;AAAA,eAAA;AAAA;;;;;6BALQ,QAAQ,CAAA;AAAA;;QA9BH,CAAA,cAAA,EAAA,OAAA,CAAA,KAAU,GAAAA,KAAA,CAAC,CAAA,CAAA,CAAA,yBAAA,EAA4B,YAAa,CAAA,UAAA,CAAA,UAAe,MAAK,KAAA,CAAA,IAAA,EAAA,CAAA;AAAA;;;;;;;"}
@@ -32,7 +32,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
32
32
  const disabled = ref(props.disabled);
33
33
  const parentCheckboxesValue = computed(() => (ToCheckboxes == null ? void 0 : ToCheckboxes.value.value) || "");
34
34
  const setClass = computed(() => {
35
- const arr = ["to-form-readonly"];
35
+ const arr = ["to-disable-target"];
36
36
  if (checked.value) {
37
37
  arr.push("is-checked");
38
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.vue2.mjs","sources":["../../../../../../packages/components/checkbox/src/Checkbox.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToCheckbox'\r\n});\n</script>\n<template>\r\n\t<span v-dis=\"disabled\" class=\"to-checkbox\" :class=\"setClass\" :style=\"setStyle\" @click.stop=\"toggle\">\r\n\t\t<span class=\"to-checkbox-box\"></span>\r\n\t\t<span v-if=\"label\" class=\"to-checkbox-label\">{{ label }}</span>\r\n\t</span>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ProvideType } from '../../checkboxes/src/Checkboxes.vue'\r\nimport { ref, computed, watch, onBeforeUnmount, inject, onMounted } from 'vue'\r\nimport { vDis } from '@touchvue/directives'\r\n// import dis from 'packages/directives/dis'\r\n\r\n\r\n\r\nconst ToCheckboxes = inject<ProvideType | null>('ToCheckboxes', null)\r\n\r\nexport interface ToCheckboxProps {\r\n\tjoinGroup?: boolean\r\n\tonValue?: number | string | boolean\r\n\toffValue?: number | string | boolean\r\n\tlabel?: string\r\n\tvalue?: number | boolean | string\r\n\tmodelValue?: number | boolean | string\r\n\tcolor?: string\r\n\tmode?: string\r\n\twidth?: number | string\r\n\twrap?: boolean\r\n\tobserve?: boolean\r\n\tdisabled?: boolean\r\n}\r\n\r\nconst props = withDefaults(defineProps<ToCheckboxProps>(), {\r\n\tjoinGroup: true,\r\n\tonValue: true,\r\n\toffValue: false,\r\n\tlabel: '',\r\n\tvalue: false,\r\n\tmodelValue: undefined,\r\n\tcolor: 'default',\r\n\tmode: 'default',\r\n\twidth: '',\r\n\twrap: false,\r\n\tobserve: false,\r\n\tdisabled: false\r\n})\r\n\r\nconst emit = defineEmits(['change', 'click', 'update:modelValue'])\r\n\r\n// 响应式数据\r\n// 优先使用modelValue,如果没有则使用value\r\nconst currentValue = computed(() => (props.modelValue !== undefined ? props.modelValue : props.value))\r\nconst checked = ref<boolean>(currentValue.value === props.onValue)\r\nconst valueInGroup = ref<string | number>('')\r\nconst idInGroup = ref<number | null>(null)\r\nconst disabled = ref<boolean>(props.disabled)\r\n\r\nconst parentCheckboxesValue = computed(() => ToCheckboxes?.value.value || '')\r\n\r\n// 计算属性\r\nconst setClass = computed(() => {\r\n\t// let arr = ['to-form-disabled']\r\n\tconst arr = ['to-form-readonly']\r\n\tif (checked.value) {\r\n\t\tarr.push('is-checked')\r\n\t}\r\n\tif (props.wrap) {\r\n\t\tarr.push('is-wrap')\r\n\t}\r\n\tif (props.disabled || disabled.value) {\r\n\t\tarr.push('is-disabled')\r\n\t}\r\n\tif (props.color) {\r\n\t\tarr.push(`color-${props.color}`)\r\n\t}\r\n\tif (props.mode) {\r\n\t\tarr.push(`mode-${props.mode}`)\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst setStyle = computed(() => {\r\n\tconst obj: any = {}\r\n\tif (props.width) {\r\n\t\tif (!isNaN(Number(props.width))) {\r\n\t\t\tobj.width = props.width + 'em'\r\n\t\t} else if (props.width === 'full') {\r\n\t\t\tobj.width = '100%'\r\n\t\t} else {\r\n\t\t\tobj.width = props.width\r\n\t\t}\r\n\t}\r\n\treturn obj\r\n})\r\n\r\n// 监听器\r\nwatch(\r\n\t() => props.disabled,\r\n\tval => {\r\n\t\tdisabled.value = val\r\n\t\tupdateGroup(props.label, props.value)\r\n\t}\r\n)\r\n\r\n// 监听modelValue变化\r\nwatch(\r\n\t() => props.modelValue,\r\n\tval => {\r\n\t\tif (props.modelValue !== undefined) {\r\n\t\t\tif (val === props.onValue) {\r\n\t\t\t\tchecked.value = true\r\n\t\t\t} else if (val === props.offValue) {\r\n\t\t\t\tchecked.value = false\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n)\r\n\r\n// 监听value变化(用于与checkboxes搭配)\r\nwatch(\r\n\t() => props.value,\r\n\t(val, oldVal) => {\r\n\t\tif (!ToCheckboxes) {\r\n\t\t\t// 如果没有modelValue,则使用value\r\n\t\t\tif (props.modelValue === undefined) {\r\n\t\t\t\tif (val === props.onValue) {\r\n\t\t\t\t\tchecked.value = true\r\n\t\t\t\t} else if (val === props.offValue) {\r\n\t\t\t\t\tchecked.value = false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tupdateGroup(props.label, val)\r\n\t\t\t// 解决 unshift 时如果前面有一个勾选的,会自动勾选的问题\r\n\t\t\tToCheckboxes.options.value.map((item: any) => {\r\n\t\t\t\tif (val === item.value) {\r\n\t\t\t\t\tchecked.value = item.checked\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tToCheckboxes.removeItemValue(oldVal as any)\r\n\t\t}\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.label,\r\n\tval => {\r\n\t\tupdateGroup(val, props.value)\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => parentCheckboxesValue.value,\r\n\tval => {\r\n\t\tif (val && ToCheckboxes) {\r\n\t\t\tconst value = val.split(',').indexOf(String(valueInGroup.value)) > -1\r\n\t\t\tchecked.value = value\r\n\t\t\tToCheckboxes.options.value.map((item: any) => {\r\n\t\t\t\tif (item.id === idInGroup.value) {\r\n\t\t\t\t\titem.checked = value\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// 保持 checks 与 options 一致\r\n\t\t\tToCheckboxes.checks.value = ToCheckboxes.options.value.filter((item: any) => item.checked)\r\n\t\t} else {\r\n\t\t\tchecked.value = false\r\n\t\t}\r\n\t},\r\n\t{\r\n\t\timmediate: true\r\n\t}\r\n)\r\n\r\n// 方法\r\nconst toggle = () => {\r\n\tif (ToCheckboxes?.props.beforeChange) {\r\n\t\tconst fn = ToCheckboxes.props.beforeChange()\r\n\t\tif (fn && typeof (fn as any).then === 'function') {\r\n\t\t\t;(fn as Promise<boolean>)\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\ttoggleAction()\r\n\t\t\t\t})\r\n\t\t\t\t.catch(error => {\r\n\t\t\t\t\tconsole.log(error)\r\n\t\t\t\t})\r\n\t\t} else {\r\n\t\t\tif (fn) toggleAction()\r\n\t\t}\r\n\t} else {\r\n\t\ttoggleAction()\r\n\t}\r\n}\r\n\r\nconst toggleAction = () => {\r\n\tif (!(disabled.value || props.disabled)) {\r\n\t\tchecked.value = !checked.value\r\n\t\tconst newValue = checked.value ? props.onValue : props.offValue\r\n\r\n\t\t// 发出事件\r\n\t\temit('change', newValue)\r\n\t\temit('click', newValue)\r\n\r\n\t\t// 如果使用v-model,发出update:modelValue事件\r\n\t\tif (props.modelValue !== undefined) {\r\n\t\t\temit('update:modelValue', newValue)\r\n\t\t}\r\n\r\n\t\tif (ToCheckboxes) {\r\n\t\t\tToCheckboxes.options.value.map((item: any) => {\r\n\t\t\t\tif (item.id === idInGroup.value) {\r\n\t\t\t\t\titem.checked = checked.value\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tToCheckboxes.change(checked.value, props.value as any, props.label || '')\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst updateGroup = (label: string, value: any) => {\r\n\tif (ToCheckboxes) {\r\n\t\tToCheckboxes.options.value.forEach((el: any) => {\r\n\t\t\tif (el.id === idInGroup.value) {\r\n\t\t\t\tel.label = label\r\n\t\t\t\tel.value = value\r\n\t\t\t\tel.checked = false\r\n\t\t\t\tel.disabled = props.disabled\r\n\t\t\t}\r\n\t\t})\r\n\t\tif (value !== undefined && (typeof value === 'string' || typeof value === 'number')) {\r\n\t\t\tvalueInGroup.value = value\r\n\t\t} else if (label) {\r\n\t\t\tvalueInGroup.value = label\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst setDisabled = (f: boolean) => {\r\n\tdisabled.value = f\r\n}\r\n\r\n// 初始化逻辑\r\nif (props.modelValue !== undefined) {\r\n\t// 如果有modelValue,优先使用modelValue\r\n\tchecked.value = props.modelValue === props.onValue\r\n} else if (typeof props.value === 'boolean') {\r\n\t// 否则使用value\r\n\tchecked.value = props.value\r\n}\r\n\r\n// 初始化时注册到父组件\r\n\r\nonMounted(() => {\r\n\t// 通过parent查找ToCheckboxes父组件\r\n\tif (props.joinGroup && ToCheckboxes) {\r\n\t\tif (props.value !== undefined && (typeof props.value === 'string' || typeof props.value === 'number')) {\r\n\t\t\tvalueInGroup.value = props.value\r\n\t\t} else if (props.label) {\r\n\t\t\tvalueInGroup.value = props.label\r\n\t\t}\r\n\t\tToCheckboxes.pushOptions({\r\n\t\t\tid: ToCheckboxes.maxId.value + 1,\r\n\t\t\tvalue: valueInGroup.value,\r\n\t\t\tlabel: props.label,\r\n\t\t\tchecked: checked.value,\r\n\t\t\tdisabled: props.disabled\r\n\t\t})\r\n\t\tToCheckboxes.maxId.value = idInGroup.value = ToCheckboxes.maxId.value + 1\r\n\t\tif (parentCheckboxesValue.value.indexOf(String(valueInGroup.value)) > -1) {\r\n\t\t\tchecked.value = true\r\n\t\t}\r\n\t}\r\n})\r\n\r\n// 清理\r\nonBeforeUnmount(() => {\r\n\tif (ToCheckboxes) {\r\n\t\tToCheckboxes.removeItemValue(props.value as any)\r\n\t}\r\n})\r\n\r\n// 暴露方法\r\ndefineExpose({\r\n\ttoggle,\r\n\tupdateGroup,\r\n\tsetDisabled\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","_createElementVNode"],"mappings":"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"}
1
+ {"version":3,"file":"Checkbox.vue2.mjs","sources":["../../../../../../packages/components/checkbox/src/Checkbox.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToCheckbox'\r\n});\n</script>\n<template>\r\n\t<span v-dis=\"disabled\" class=\"to-checkbox\" :class=\"setClass\" :style=\"setStyle\" @click.stop=\"toggle\">\r\n\t\t<span class=\"to-checkbox-box\"></span>\r\n\t\t<span v-if=\"label\" class=\"to-checkbox-label\">{{ label }}</span>\r\n\t</span>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { ProvideType } from '../../checkboxes/src/Checkboxes.vue'\r\nimport { ref, computed, watch, onBeforeUnmount, inject, onMounted } from 'vue'\r\nimport { vDis } from '@touchvue/directives'\r\n// import dis from 'packages/directives/dis'\r\n\r\n\r\n\r\nconst ToCheckboxes = inject<ProvideType | null>('ToCheckboxes', null)\r\n\r\nexport interface ToCheckboxProps {\r\n\tjoinGroup?: boolean\r\n\tonValue?: number | string | boolean\r\n\toffValue?: number | string | boolean\r\n\tlabel?: string\r\n\tvalue?: number | boolean | string\r\n\tmodelValue?: number | boolean | string\r\n\tcolor?: string\r\n\tmode?: string\r\n\twidth?: number | string\r\n\twrap?: boolean\r\n\tobserve?: boolean\r\n\tdisabled?: boolean\r\n}\r\n\r\nconst props = withDefaults(defineProps<ToCheckboxProps>(), {\r\n\tjoinGroup: true,\r\n\tonValue: true,\r\n\toffValue: false,\r\n\tlabel: '',\r\n\tvalue: false,\r\n\tmodelValue: undefined,\r\n\tcolor: 'default',\r\n\tmode: 'default',\r\n\twidth: '',\r\n\twrap: false,\r\n\tobserve: false,\r\n\tdisabled: false\r\n})\r\n\r\nconst emit = defineEmits(['change', 'click', 'update:modelValue'])\r\n\r\n// 响应式数据\r\n// 优先使用modelValue,如果没有则使用value\r\nconst currentValue = computed(() => (props.modelValue !== undefined ? props.modelValue : props.value))\r\nconst checked = ref<boolean>(currentValue.value === props.onValue)\r\nconst valueInGroup = ref<string | number>('')\r\nconst idInGroup = ref<number | null>(null)\r\nconst disabled = ref<boolean>(props.disabled)\r\n\r\nconst parentCheckboxesValue = computed(() => ToCheckboxes?.value.value || '')\r\n\r\n// 计算属性\r\nconst setClass = computed(() => {\r\n\t// let arr = ['to-form-disabled']\r\n\tconst arr = ['to-disable-target']\r\n\tif (checked.value) {\r\n\t\tarr.push('is-checked')\r\n\t}\r\n\tif (props.wrap) {\r\n\t\tarr.push('is-wrap')\r\n\t}\r\n\tif (props.disabled || disabled.value) {\r\n\t\tarr.push('is-disabled')\r\n\t}\r\n\tif (props.color) {\r\n\t\tarr.push(`color-${props.color}`)\r\n\t}\r\n\tif (props.mode) {\r\n\t\tarr.push(`mode-${props.mode}`)\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst setStyle = computed(() => {\r\n\tconst obj: any = {}\r\n\tif (props.width) {\r\n\t\tif (!isNaN(Number(props.width))) {\r\n\t\t\tobj.width = props.width + 'em'\r\n\t\t} else if (props.width === 'full') {\r\n\t\t\tobj.width = '100%'\r\n\t\t} else {\r\n\t\t\tobj.width = props.width\r\n\t\t}\r\n\t}\r\n\treturn obj\r\n})\r\n\r\n// 监听器\r\nwatch(\r\n\t() => props.disabled,\r\n\tval => {\r\n\t\tdisabled.value = val\r\n\t\tupdateGroup(props.label, props.value)\r\n\t}\r\n)\r\n\r\n// 监听modelValue变化\r\nwatch(\r\n\t() => props.modelValue,\r\n\tval => {\r\n\t\tif (props.modelValue !== undefined) {\r\n\t\t\tif (val === props.onValue) {\r\n\t\t\t\tchecked.value = true\r\n\t\t\t} else if (val === props.offValue) {\r\n\t\t\t\tchecked.value = false\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n)\r\n\r\n// 监听value变化(用于与checkboxes搭配)\r\nwatch(\r\n\t() => props.value,\r\n\t(val, oldVal) => {\r\n\t\tif (!ToCheckboxes) {\r\n\t\t\t// 如果没有modelValue,则使用value\r\n\t\t\tif (props.modelValue === undefined) {\r\n\t\t\t\tif (val === props.onValue) {\r\n\t\t\t\t\tchecked.value = true\r\n\t\t\t\t} else if (val === props.offValue) {\r\n\t\t\t\t\tchecked.value = false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tupdateGroup(props.label, val)\r\n\t\t\t// 解决 unshift 时如果前面有一个勾选的,会自动勾选的问题\r\n\t\t\tToCheckboxes.options.value.map((item: any) => {\r\n\t\t\t\tif (val === item.value) {\r\n\t\t\t\t\tchecked.value = item.checked\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tToCheckboxes.removeItemValue(oldVal as any)\r\n\t\t}\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => props.label,\r\n\tval => {\r\n\t\tupdateGroup(val, props.value)\r\n\t}\r\n)\r\n\r\nwatch(\r\n\t() => parentCheckboxesValue.value,\r\n\tval => {\r\n\t\tif (val && ToCheckboxes) {\r\n\t\t\tconst value = val.split(',').indexOf(String(valueInGroup.value)) > -1\r\n\t\t\tchecked.value = value\r\n\t\t\tToCheckboxes.options.value.map((item: any) => {\r\n\t\t\t\tif (item.id === idInGroup.value) {\r\n\t\t\t\t\titem.checked = value\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// 保持 checks 与 options 一致\r\n\t\t\tToCheckboxes.checks.value = ToCheckboxes.options.value.filter((item: any) => item.checked)\r\n\t\t} else {\r\n\t\t\tchecked.value = false\r\n\t\t}\r\n\t},\r\n\t{\r\n\t\timmediate: true\r\n\t}\r\n)\r\n\r\n// 方法\r\nconst toggle = () => {\r\n\tif (ToCheckboxes?.props.beforeChange) {\r\n\t\tconst fn = ToCheckboxes.props.beforeChange()\r\n\t\tif (fn && typeof (fn as any).then === 'function') {\r\n\t\t\t;(fn as Promise<boolean>)\r\n\t\t\t\t.then(() => {\r\n\t\t\t\t\ttoggleAction()\r\n\t\t\t\t})\r\n\t\t\t\t.catch(error => {\r\n\t\t\t\t\tconsole.log(error)\r\n\t\t\t\t})\r\n\t\t} else {\r\n\t\t\tif (fn) toggleAction()\r\n\t\t}\r\n\t} else {\r\n\t\ttoggleAction()\r\n\t}\r\n}\r\n\r\nconst toggleAction = () => {\r\n\tif (!(disabled.value || props.disabled)) {\r\n\t\tchecked.value = !checked.value\r\n\t\tconst newValue = checked.value ? props.onValue : props.offValue\r\n\r\n\t\t// 发出事件\r\n\t\temit('change', newValue)\r\n\t\temit('click', newValue)\r\n\r\n\t\t// 如果使用v-model,发出update:modelValue事件\r\n\t\tif (props.modelValue !== undefined) {\r\n\t\t\temit('update:modelValue', newValue)\r\n\t\t}\r\n\r\n\t\tif (ToCheckboxes) {\r\n\t\t\tToCheckboxes.options.value.map((item: any) => {\r\n\t\t\t\tif (item.id === idInGroup.value) {\r\n\t\t\t\t\titem.checked = checked.value\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tToCheckboxes.change(checked.value, props.value as any, props.label || '')\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst updateGroup = (label: string, value: any) => {\r\n\tif (ToCheckboxes) {\r\n\t\tToCheckboxes.options.value.forEach((el: any) => {\r\n\t\t\tif (el.id === idInGroup.value) {\r\n\t\t\t\tel.label = label\r\n\t\t\t\tel.value = value\r\n\t\t\t\tel.checked = false\r\n\t\t\t\tel.disabled = props.disabled\r\n\t\t\t}\r\n\t\t})\r\n\t\tif (value !== undefined && (typeof value === 'string' || typeof value === 'number')) {\r\n\t\t\tvalueInGroup.value = value\r\n\t\t} else if (label) {\r\n\t\t\tvalueInGroup.value = label\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst setDisabled = (f: boolean) => {\r\n\tdisabled.value = f\r\n}\r\n\r\n// 初始化逻辑\r\nif (props.modelValue !== undefined) {\r\n\t// 如果有modelValue,优先使用modelValue\r\n\tchecked.value = props.modelValue === props.onValue\r\n} else if (typeof props.value === 'boolean') {\r\n\t// 否则使用value\r\n\tchecked.value = props.value\r\n}\r\n\r\n// 初始化时注册到父组件\r\n\r\nonMounted(() => {\r\n\t// 通过parent查找ToCheckboxes父组件\r\n\tif (props.joinGroup && ToCheckboxes) {\r\n\t\tif (props.value !== undefined && (typeof props.value === 'string' || typeof props.value === 'number')) {\r\n\t\t\tvalueInGroup.value = props.value\r\n\t\t} else if (props.label) {\r\n\t\t\tvalueInGroup.value = props.label\r\n\t\t}\r\n\t\tToCheckboxes.pushOptions({\r\n\t\t\tid: ToCheckboxes.maxId.value + 1,\r\n\t\t\tvalue: valueInGroup.value,\r\n\t\t\tlabel: props.label,\r\n\t\t\tchecked: checked.value,\r\n\t\t\tdisabled: props.disabled\r\n\t\t})\r\n\t\tToCheckboxes.maxId.value = idInGroup.value = ToCheckboxes.maxId.value + 1\r\n\t\tif (parentCheckboxesValue.value.indexOf(String(valueInGroup.value)) > -1) {\r\n\t\t\tchecked.value = true\r\n\t\t}\r\n\t}\r\n})\r\n\r\n// 清理\r\nonBeforeUnmount(() => {\r\n\tif (ToCheckboxes) {\r\n\t\tToCheckboxes.removeItemValue(props.value as any)\r\n\t}\r\n})\r\n\r\n// 暴露方法\r\ndefineExpose({\r\n\ttoggle,\r\n\tupdateGroup,\r\n\tsetDisabled\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","_createElementVNode"],"mappings":"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"}