ct-component-plus 0.0.43 → 0.0.44

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 (96) hide show
  1. package/README.md +3 -3
  2. package/package.json +36 -36
  3. package/packages/components/button/index.js +8 -8
  4. package/packages/components/button/src/button.vue +171 -171
  5. package/packages/components/cascader/index.js +7 -7
  6. package/packages/components/cascader/src/cascader.vue +247 -247
  7. package/packages/components/cascader/src/ct-cascader.vue +260 -260
  8. package/packages/components/cascader/src/index.js +50 -50
  9. package/packages/components/checkbox/index.js +7 -7
  10. package/packages/components/checkbox/src/checkbox.vue +51 -51
  11. package/packages/components/checkbox/src/index.js +12 -12
  12. package/packages/components/date-picker/index.js +8 -8
  13. package/packages/components/date-picker/src/clear-icon.vue +2 -2
  14. package/packages/components/date-picker/src/date-icon.vue +2 -2
  15. package/packages/components/date-picker/src/date-picker.vue +77 -77
  16. package/packages/components/date-picker/src/index.js +33 -33
  17. package/packages/components/dialog/index.js +8 -8
  18. package/packages/components/dialog/src/dialog.vue +103 -103
  19. package/packages/components/empty/index.js +8 -8
  20. package/packages/components/empty/src/empty.vue +97 -97
  21. package/packages/components/index.js +81 -81
  22. package/packages/components/input/index.js +7 -7
  23. package/packages/components/input/src/index.js +13 -13
  24. package/packages/components/input/src/input.vue +106 -106
  25. package/packages/components/input-range/index.js +7 -7
  26. package/packages/components/input-range/src/index.js +29 -29
  27. package/packages/components/input-range/src/input-range.vue +233 -233
  28. package/packages/components/loading/index.js +7 -7
  29. package/packages/components/loading/src/CtLoading.vue +74 -74
  30. package/packages/components/loading/src/beating.vue +71 -71
  31. package/packages/components/loading/src/progress.vue +120 -120
  32. package/packages/components/loading/src/spinner.vue +38 -38
  33. package/packages/components/menu/index.js +7 -7
  34. package/packages/components/menu/src/item.vue +46 -46
  35. package/packages/components/menu/src/link.vue +28 -28
  36. package/packages/components/menu/src/logo.vue +25 -25
  37. package/packages/components/menu/src/menu-item.vue +103 -103
  38. package/packages/components/menu/src/menu.vue +191 -191
  39. package/packages/components/menu/src/utils/index.js +4 -4
  40. package/packages/components/message/icon/ErrorIcon.vue +25 -25
  41. package/packages/components/message/icon/InfoIcon.vue +25 -25
  42. package/packages/components/message/icon/SuccessIcon.vue +25 -25
  43. package/packages/components/message/icon/WarningIcon.vue +25 -25
  44. package/packages/components/message/index.js +8 -8
  45. package/packages/components/message/src/method.js +54 -54
  46. package/packages/components/message-box/index.js +7 -7
  47. package/packages/components/message-box/src/message-box.vue +107 -107
  48. package/packages/components/page/index.js +7 -7
  49. package/packages/components/page/src/modules/DownloadButton.vue +21 -21
  50. package/packages/components/page/src/modules/TableTitle.vue +151 -151
  51. package/packages/components/page/src/page.vue +382 -382
  52. package/packages/components/pagination/index.js +7 -7
  53. package/packages/components/pagination/src/pagination.vue +36 -36
  54. package/packages/components/radio/index.js +7 -7
  55. package/packages/components/radio/src/index.js +12 -12
  56. package/packages/components/radio/src/radio.vue +47 -47
  57. package/packages/components/search-box/index.js +24 -24
  58. package/packages/components/search-box/src/index.js +29 -29
  59. package/packages/components/search-box/src/search-box.vue +250 -250
  60. package/packages/components/search-box/src/slot.vue +4 -4
  61. package/packages/components/select/index.js +7 -7
  62. package/packages/components/select/src/arrow-down.vue +2 -2
  63. package/packages/components/select/src/clear-icon.vue +2 -2
  64. package/packages/components/select/src/empty.vue +13 -13
  65. package/packages/components/select/src/index.js +51 -51
  66. package/packages/components/select/src/select.vue +380 -380
  67. package/packages/components/table/index.js +7 -7
  68. package/packages/components/table/src/TableSort.vue +179 -179
  69. package/packages/components/table/src/index.js +78 -70
  70. package/packages/components/table/src/table.vue +288 -287
  71. package/packages/components/tabs/index.js +7 -7
  72. package/packages/components/tabs/src/tabs.vue +225 -225
  73. package/packages/components/year-select/index.js +7 -7
  74. package/packages/components/year-select/src/index.js +44 -44
  75. package/packages/components/year-select/src/year-select.vue +273 -273
  76. package/packages/constants/aria.ts +17 -17
  77. package/packages/constants/index.ts +1 -1
  78. package/packages/directives/click-outside/index.ts +118 -118
  79. package/packages/echarts/bar/index.js +63 -63
  80. package/packages/echarts/base.js +99 -99
  81. package/packages/echarts/line/index.js +106 -106
  82. package/packages/hooks/index.js +5 -5
  83. package/packages/hooks/use-buried/index.js +46 -46
  84. package/packages/hooks/use-checked-all/index.js +37 -37
  85. package/packages/hooks/use-echarts/index.js +1 -1
  86. package/packages/hooks/use-echarts/use-bar/index.js +72 -72
  87. package/packages/hooks/use-echarts/use-line/index.js +88 -88
  88. package/packages/hooks/use-namespace/index.js +65 -65
  89. package/packages/hooks/use-search-component/index.js +28 -28
  90. package/packages/style/element.less +725 -725
  91. package/packages/style/index.js +2 -2
  92. package/packages/style/init.less +114 -114
  93. package/packages/utils/index.js +1 -1
  94. package/packages/utils/operate.js +77 -77
  95. package/packages/utils/table.js +135 -0
  96. package/packages/utils/types.js +35 -35
@@ -1,261 +1,261 @@
1
- <template>
2
- <el-tooltip
3
- ref="tooltipRef"
4
- :visible="popperVisible"
5
- :teleported="teleported"
6
- :popper-class="[nsCascader.e('dropdown'), popperClass]"
7
- :popper-options="popperOptions"
8
- :fallback-placements="fallbackPlacements"
9
- :stop-popper-mouse-event="false"
10
- :gpu-acceleration="false"
11
- placement="bottom-start"
12
- transition="el-cascader-zoom-in-top"
13
- effect="light"
14
- pure
15
- persistent
16
- @hide="hideSuggestionPanel"
17
- >
18
- <template #default>
19
- <div
20
- v-clickoutside:[contentRef]="() => togglePopperVisible(false)"
21
- :class="cascaderKls"
22
- :style="cascaderStyle"
23
- @click="() => togglePopperVisible(readonly ? undefined : true)"
24
- @keydown="handleKeyDown"
25
- @mouseenter="inputHover = true"
26
- @mouseleave="inputHover = false"
27
- >
28
- <el-input
29
- ref="input"
30
- v-model="inputValue"
31
- :placeholder="currentPlaceholder"
32
- :readonly="readonly"
33
- :disabled="isDisabled"
34
- :validate-event="false"
35
- :class="inputClass"
36
- :tabindex="multiple && filterable && !isDisabled ? -1 : undefined"
37
- @compositionstart="handleComposition"
38
- @compositionupdate="handleComposition"
39
- @compositionend="handleComposition"
40
- @focus="handleFocus"
41
- @blur="handleBlur"
42
- @input="handleInput"
43
- >
44
- </el-input>
45
- </div>
46
- </template>
47
- <template #content>
48
- <el-cascader-panel
49
- v-show="!filtering"
50
- ref="cascaderPanelRef"
51
- v-model="checkedValue"
52
- :options="options"
53
- :props="props.props"
54
- :border="false"
55
- :render-label="$slots.default"
56
- @expand-change="handleExpandChange"
57
- @close="$nextTick(() => togglePopperVisible(false))"
58
- />
59
- </template>
60
- </el-tooltip>
61
- </template>
62
-
63
- <script setup>
64
- import { onMounted, computed, nextTick, ref, useAttrs } from "vue";
65
- import { cascaderEmits, cascaderProps } from "./index";
66
- import { useNamespace, useBuriedParams } from "../../../hooks";
67
- import { ClickOutside as vClickoutside } from "../../../directives";
68
- import { EVENT_CODE } from "../../../constants";
69
- const props = defineProps(cascaderProps);
70
- const emit = defineEmits(cascaderEmits);
71
- const attrs = useAttrs();
72
-
73
- const nsCascader = useNamespace("cascader");
74
-
75
- const inputPlaceholder = computed(() => props.placeholder || "请选择");
76
- const isDisabled = computed(() => props.disabled);
77
- const multiple = computed(() => !!props.props.multiple);
78
- const readonly = computed(() => !props.filterable || multiple.value);
79
- const tooltipRef = ref(null);
80
- const popperVisible = ref(false);
81
- const popperOptions = {
82
- modifiers: [
83
- {
84
- name: "arrowPosition",
85
- enabled: true,
86
- phase: "main",
87
- fn: ({ state }) => {
88
- const { modifiersData, placement } = state;
89
- if (["right", "left", "bottom", "top"].includes(placement)) return;
90
- modifiersData.arrow.x = 35;
91
- },
92
- requires: ["arrow"],
93
- },
94
- ],
95
- };
96
- const fallbackPlacements = [
97
- "bottom-start",
98
- "bottom",
99
- "top-start",
100
- "top",
101
- "right",
102
- "left",
103
- ];
104
-
105
- const isOnComposition = ref(false);
106
- const contentRef = computed(() => {
107
- return tooltipRef.value
108
- ? tooltipRef.value.popperRef
109
- ? tooltipRef.value.popperRef.contentRef
110
- : ""
111
- : "";
112
- });
113
- const cascaderKls = computed(() => {
114
- return [
115
- "el-cascader",
116
- nsCascader.b(),
117
- nsCascader.is("disabled", isDisabled.value),
118
- attrs.class,
119
- ];
120
- });
121
- const cascaderStyle = computed(() => {
122
- return attrs.style;
123
- });
124
- const inputClass = computed(() => {
125
- return nsCascader.is("focus", popperVisible.value);
126
- });
127
- const input = ref(null);
128
- const inputHover = ref(false);
129
- const filtering = ref(false);
130
- const inputValue = ref("");
131
- const currentPlaceholder = computed(() => {
132
- return isOnComposition.value ? "" : inputPlaceholder.value;
133
- });
134
- const checkedNodes = computed(() => cascaderPanelRef.value?.checkedNodes || []);
135
- const cascaderPanelRef = ref(null);
136
- const presentText = computed(() => {
137
- const { showAllLevels, separator } = props;
138
- const nodes = checkedNodes.value;
139
- return nodes.length
140
- ? multiple.value
141
- ? ""
142
- : nodes[0].calcText(showAllLevels, separator)
143
- : "";
144
- });
145
-
146
- const suggestionPanel = ref(null);
147
- const checkedValue = computed({
148
- get() {
149
- return props.modelValue;
150
- },
151
- set(val) {
152
- emit("update:modelValue", val);
153
- emit("change", val);
154
- },
155
- });
156
-
157
- const handleExpandChange = (value) => {
158
- updatePopperPosition();
159
- emit("expandChange", value);
160
- };
161
- const handleFocus = (e) => {
162
- emit("focus", e);
163
- };
164
-
165
- const handleBlur = (e) => {
166
- emit("blur", e);
167
- };
168
- const handleInput = (val, e) => {
169
- !popperVisible.value && togglePopperVisible(true);
170
-
171
- if (e?.isComposing) return;
172
- };
173
- const handleComposition = (event) => {
174
- const text = event.target?.value;
175
- if (event.type === "compositionend") {
176
- isOnComposition.value = false;
177
- nextTick(() => handleInput(text));
178
- } else {
179
- isOnComposition.value = true;
180
- }
181
- };
182
- const handleKeyDown = (e) => {
183
- if (isOnComposition.value) return;
184
-
185
- switch (e.code) {
186
- case EVENT_CODE.enter:
187
- togglePopperVisible();
188
- break;
189
- case EVENT_CODE.down:
190
- togglePopperVisible(true);
191
- nextTick(focusFirstNode);
192
- e.preventDefault();
193
- break;
194
- case EVENT_CODE.esc:
195
- if (popperVisible.value === true) {
196
- e.preventDefault();
197
- e.stopPropagation();
198
- togglePopperVisible(false);
199
- }
200
- break;
201
- case EVENT_CODE.tab:
202
- togglePopperVisible(false);
203
- break;
204
- }
205
- };
206
- const focusFirstNode = () => {
207
- let firstNode = null;
208
-
209
- if (filtering.value && suggestionPanel.value) {
210
- firstNode = suggestionPanel.value.$el.querySelector(
211
- ".el-cascader__suggestion-item"
212
- );
213
- } else {
214
- firstNode = cascaderPanelRef.value?.$el.querySelector(
215
- '.el-cascader-node[tabindex="-1"]'
216
- );
217
- }
218
-
219
- if (firstNode) {
220
- firstNode.focus();
221
- !filtering.value && firstNode.click();
222
- }
223
- };
224
- const togglePopperVisible = (visible) => {
225
- if (isDisabled.value) return;
226
-
227
- visible = visible ?? !popperVisible.value;
228
-
229
- if (visible !== popperVisible.value) {
230
- popperVisible.value = visible;
231
- input.value?.input?.setAttribute("aria-expanded", `${visible}`);
232
-
233
- if (visible) {
234
- updatePopperPosition();
235
- nextTick(cascaderPanelRef.value?.scrollToExpandingNode);
236
- } else if (props.filterable) {
237
- syncPresentTextValue();
238
- }
239
-
240
- emit("visibleChange", visible);
241
- }
242
- };
243
- const syncPresentTextValue = () => {
244
- const { value } = presentText;
245
- inputValue.value = value;
246
- searchInputValue.value = value;
247
- };
248
- const updatePopperPosition = () => {
249
- nextTick(() => {
250
- tooltipRef.value?.updatePopper();
251
- });
252
- };
253
- const hideSuggestionPanel = () => {
254
- filtering.value = false;
255
- };
256
-
257
- useBuriedParams(props, emit);
258
- onMounted(() => {});
259
- </script>
260
- <style lang='less'>
1
+ <template>
2
+ <el-tooltip
3
+ ref="tooltipRef"
4
+ :visible="popperVisible"
5
+ :teleported="teleported"
6
+ :popper-class="[nsCascader.e('dropdown'), popperClass]"
7
+ :popper-options="popperOptions"
8
+ :fallback-placements="fallbackPlacements"
9
+ :stop-popper-mouse-event="false"
10
+ :gpu-acceleration="false"
11
+ placement="bottom-start"
12
+ transition="el-cascader-zoom-in-top"
13
+ effect="light"
14
+ pure
15
+ persistent
16
+ @hide="hideSuggestionPanel"
17
+ >
18
+ <template #default>
19
+ <div
20
+ v-clickoutside:[contentRef]="() => togglePopperVisible(false)"
21
+ :class="cascaderKls"
22
+ :style="cascaderStyle"
23
+ @click="() => togglePopperVisible(readonly ? undefined : true)"
24
+ @keydown="handleKeyDown"
25
+ @mouseenter="inputHover = true"
26
+ @mouseleave="inputHover = false"
27
+ >
28
+ <el-input
29
+ ref="input"
30
+ v-model="inputValue"
31
+ :placeholder="currentPlaceholder"
32
+ :readonly="readonly"
33
+ :disabled="isDisabled"
34
+ :validate-event="false"
35
+ :class="inputClass"
36
+ :tabindex="multiple && filterable && !isDisabled ? -1 : undefined"
37
+ @compositionstart="handleComposition"
38
+ @compositionupdate="handleComposition"
39
+ @compositionend="handleComposition"
40
+ @focus="handleFocus"
41
+ @blur="handleBlur"
42
+ @input="handleInput"
43
+ >
44
+ </el-input>
45
+ </div>
46
+ </template>
47
+ <template #content>
48
+ <el-cascader-panel
49
+ v-show="!filtering"
50
+ ref="cascaderPanelRef"
51
+ v-model="checkedValue"
52
+ :options="options"
53
+ :props="props.props"
54
+ :border="false"
55
+ :render-label="$slots.default"
56
+ @expand-change="handleExpandChange"
57
+ @close="$nextTick(() => togglePopperVisible(false))"
58
+ />
59
+ </template>
60
+ </el-tooltip>
61
+ </template>
62
+
63
+ <script setup>
64
+ import { onMounted, computed, nextTick, ref, useAttrs } from "vue";
65
+ import { cascaderEmits, cascaderProps } from "./index";
66
+ import { useNamespace, useBuriedParams } from "../../../hooks";
67
+ import { ClickOutside as vClickoutside } from "../../../directives";
68
+ import { EVENT_CODE } from "../../../constants";
69
+ const props = defineProps(cascaderProps);
70
+ const emit = defineEmits(cascaderEmits);
71
+ const attrs = useAttrs();
72
+
73
+ const nsCascader = useNamespace("cascader");
74
+
75
+ const inputPlaceholder = computed(() => props.placeholder || "请选择");
76
+ const isDisabled = computed(() => props.disabled);
77
+ const multiple = computed(() => !!props.props.multiple);
78
+ const readonly = computed(() => !props.filterable || multiple.value);
79
+ const tooltipRef = ref(null);
80
+ const popperVisible = ref(false);
81
+ const popperOptions = {
82
+ modifiers: [
83
+ {
84
+ name: "arrowPosition",
85
+ enabled: true,
86
+ phase: "main",
87
+ fn: ({ state }) => {
88
+ const { modifiersData, placement } = state;
89
+ if (["right", "left", "bottom", "top"].includes(placement)) return;
90
+ modifiersData.arrow.x = 35;
91
+ },
92
+ requires: ["arrow"],
93
+ },
94
+ ],
95
+ };
96
+ const fallbackPlacements = [
97
+ "bottom-start",
98
+ "bottom",
99
+ "top-start",
100
+ "top",
101
+ "right",
102
+ "left",
103
+ ];
104
+
105
+ const isOnComposition = ref(false);
106
+ const contentRef = computed(() => {
107
+ return tooltipRef.value
108
+ ? tooltipRef.value.popperRef
109
+ ? tooltipRef.value.popperRef.contentRef
110
+ : ""
111
+ : "";
112
+ });
113
+ const cascaderKls = computed(() => {
114
+ return [
115
+ "el-cascader",
116
+ nsCascader.b(),
117
+ nsCascader.is("disabled", isDisabled.value),
118
+ attrs.class,
119
+ ];
120
+ });
121
+ const cascaderStyle = computed(() => {
122
+ return attrs.style;
123
+ });
124
+ const inputClass = computed(() => {
125
+ return nsCascader.is("focus", popperVisible.value);
126
+ });
127
+ const input = ref(null);
128
+ const inputHover = ref(false);
129
+ const filtering = ref(false);
130
+ const inputValue = ref("");
131
+ const currentPlaceholder = computed(() => {
132
+ return isOnComposition.value ? "" : inputPlaceholder.value;
133
+ });
134
+ const checkedNodes = computed(() => cascaderPanelRef.value?.checkedNodes || []);
135
+ const cascaderPanelRef = ref(null);
136
+ const presentText = computed(() => {
137
+ const { showAllLevels, separator } = props;
138
+ const nodes = checkedNodes.value;
139
+ return nodes.length
140
+ ? multiple.value
141
+ ? ""
142
+ : nodes[0].calcText(showAllLevels, separator)
143
+ : "";
144
+ });
145
+
146
+ const suggestionPanel = ref(null);
147
+ const checkedValue = computed({
148
+ get() {
149
+ return props.modelValue;
150
+ },
151
+ set(val) {
152
+ emit("update:modelValue", val);
153
+ emit("change", val);
154
+ },
155
+ });
156
+
157
+ const handleExpandChange = (value) => {
158
+ updatePopperPosition();
159
+ emit("expandChange", value);
160
+ };
161
+ const handleFocus = (e) => {
162
+ emit("focus", e);
163
+ };
164
+
165
+ const handleBlur = (e) => {
166
+ emit("blur", e);
167
+ };
168
+ const handleInput = (val, e) => {
169
+ !popperVisible.value && togglePopperVisible(true);
170
+
171
+ if (e?.isComposing) return;
172
+ };
173
+ const handleComposition = (event) => {
174
+ const text = event.target?.value;
175
+ if (event.type === "compositionend") {
176
+ isOnComposition.value = false;
177
+ nextTick(() => handleInput(text));
178
+ } else {
179
+ isOnComposition.value = true;
180
+ }
181
+ };
182
+ const handleKeyDown = (e) => {
183
+ if (isOnComposition.value) return;
184
+
185
+ switch (e.code) {
186
+ case EVENT_CODE.enter:
187
+ togglePopperVisible();
188
+ break;
189
+ case EVENT_CODE.down:
190
+ togglePopperVisible(true);
191
+ nextTick(focusFirstNode);
192
+ e.preventDefault();
193
+ break;
194
+ case EVENT_CODE.esc:
195
+ if (popperVisible.value === true) {
196
+ e.preventDefault();
197
+ e.stopPropagation();
198
+ togglePopperVisible(false);
199
+ }
200
+ break;
201
+ case EVENT_CODE.tab:
202
+ togglePopperVisible(false);
203
+ break;
204
+ }
205
+ };
206
+ const focusFirstNode = () => {
207
+ let firstNode = null;
208
+
209
+ if (filtering.value && suggestionPanel.value) {
210
+ firstNode = suggestionPanel.value.$el.querySelector(
211
+ ".el-cascader__suggestion-item"
212
+ );
213
+ } else {
214
+ firstNode = cascaderPanelRef.value?.$el.querySelector(
215
+ '.el-cascader-node[tabindex="-1"]'
216
+ );
217
+ }
218
+
219
+ if (firstNode) {
220
+ firstNode.focus();
221
+ !filtering.value && firstNode.click();
222
+ }
223
+ };
224
+ const togglePopperVisible = (visible) => {
225
+ if (isDisabled.value) return;
226
+
227
+ visible = visible ?? !popperVisible.value;
228
+
229
+ if (visible !== popperVisible.value) {
230
+ popperVisible.value = visible;
231
+ input.value?.input?.setAttribute("aria-expanded", `${visible}`);
232
+
233
+ if (visible) {
234
+ updatePopperPosition();
235
+ nextTick(cascaderPanelRef.value?.scrollToExpandingNode);
236
+ } else if (props.filterable) {
237
+ syncPresentTextValue();
238
+ }
239
+
240
+ emit("visibleChange", visible);
241
+ }
242
+ };
243
+ const syncPresentTextValue = () => {
244
+ const { value } = presentText;
245
+ inputValue.value = value;
246
+ searchInputValue.value = value;
247
+ };
248
+ const updatePopperPosition = () => {
249
+ nextTick(() => {
250
+ tooltipRef.value?.updatePopper();
251
+ });
252
+ };
253
+ const hideSuggestionPanel = () => {
254
+ filtering.value = false;
255
+ };
256
+
257
+ useBuriedParams(props, emit);
258
+ onMounted(() => {});
259
+ </script>
260
+ <style lang='less'>
261
261
  </style>
@@ -1,51 +1,51 @@
1
- import { buriedParamsKey, searchComponentProps } from '../../../hooks';
2
-
3
- export const cascaderEmits = [
4
- "update:modelValue",
5
- buriedParamsKey,
6
- ];
7
- export const cascaderProps = {
8
- ...searchComponentProps,
9
- modelValue: [String, Number, Array],
10
- multiple: Boolean,
11
- options: {
12
- type: Array,
13
- default() {
14
- return []
15
- }
16
- },
17
- props: {
18
- type: Object,
19
- default() {
20
- return {}
21
- }
22
- },
23
- disabled: Boolean,
24
- showAllLevels: {
25
- type: Boolean,
26
- default: false
27
- },
28
- separator: {
29
- type: String,
30
- default: '/',
31
- },
32
- separatorMultiple: {
33
- type: String,
34
- default: '、',
35
- },
36
- filterable: Boolean,
37
- clearable: {
38
- type: Boolean,
39
- default: true
40
- },
41
- popperClass: String,
42
- api: String,
43
- serviceMethod: String,
44
- serviceParams: Object,
45
- mapObj: {
46
- type: Object,
47
- default() {
48
- return {}
49
- }
50
- },
1
+ import { buriedParamsKey, searchComponentProps } from '../../../hooks';
2
+
3
+ export const cascaderEmits = [
4
+ "update:modelValue",
5
+ buriedParamsKey,
6
+ ];
7
+ export const cascaderProps = {
8
+ ...searchComponentProps,
9
+ modelValue: [String, Number, Array],
10
+ multiple: Boolean,
11
+ options: {
12
+ type: Array,
13
+ default() {
14
+ return []
15
+ }
16
+ },
17
+ props: {
18
+ type: Object,
19
+ default() {
20
+ return {}
21
+ }
22
+ },
23
+ disabled: Boolean,
24
+ showAllLevels: {
25
+ type: Boolean,
26
+ default: false
27
+ },
28
+ separator: {
29
+ type: String,
30
+ default: '/',
31
+ },
32
+ separatorMultiple: {
33
+ type: String,
34
+ default: '、',
35
+ },
36
+ filterable: Boolean,
37
+ clearable: {
38
+ type: Boolean,
39
+ default: true
40
+ },
41
+ popperClass: String,
42
+ api: String,
43
+ serviceMethod: String,
44
+ serviceParams: Object,
45
+ mapObj: {
46
+ type: Object,
47
+ default() {
48
+ return {}
49
+ }
50
+ },
51
51
  }
@@ -1,8 +1,8 @@
1
- import CtCheckbox from './src/checkbox.vue';
2
-
3
- /* istanbul ignore next */
4
- CtCheckbox.install = function (Vue) {
5
- Vue.component('CtCheckbox', CtCheckbox);
6
- };
7
-
1
+ import CtCheckbox from './src/checkbox.vue';
2
+
3
+ /* istanbul ignore next */
4
+ CtCheckbox.install = function (Vue) {
5
+ Vue.component('CtCheckbox', CtCheckbox);
6
+ };
7
+
8
8
  export default CtCheckbox;