zartui 3.1.62 → 3.1.63

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.
@@ -1 +1 @@
1
- :root{--zt-checkbox-padding: 12px 0;--zt-checkbox-border-color: var(--zt-gray-a1);--zt-checkbox-duration: var(--zt-duration-fast);--zt-checkbox-round-icon-border: 1px solid var(--zt-gray-a1);--zt-checkbox-round-icon-box-shadow: -1px -1px 2px 0 #ffffff, 0 0 3px 0 var(--zt-gray-a2);--zt-checkbox-round-icon-background: linear-gradient(135deg, #e6ebf0 0%, #ffffff 100%);--zt-checkbox-label-margin: var(--zt-padding-xs);--zt-checkbox-label-color: var(--zt-text-color);--zt-checkbox-checked-icon-color: var(--zt-primary-color);--zt-checkbox-checked-icon-shadow: inset 1px 1px 2px 0 rgba(0, 0, 0, .2);--zt-checkbox-checked-icon-border: 1px solid rgba(255, 255, 255, .5);--zt-checkbox-disabled-icon-shadow: -1px -1px 2px 0 #fff, 0 0 3px 0 var(--zt-gray-a2);--zt-checkbox-disabled-icon-border: 1px solid var(--zt-gray-a08);--zt-checkbox-disabled-label-color: var(--zt-gray-a2);--zt-checkbox-disabled-checked-icon-opacity: var(--zt-disabled-opacity);--zt-checkbox-disabled-icon-background: linear-gradient(134deg, #e1e6eb 0%, #e5edf5 100%)}.zt-checkbox{position:relative;display:flex;align-items:center;overflow:hidden;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:var(--zt-checkbox-padding)}.zt-checkbox--disabled{cursor:not-allowed}.zt-checkbox--label-disabled{cursor:default}.zt-checkbox--horizontal{margin-right:var(--zt-padding-sm)}.zt-checkbox__icon{font-size:var(--zt-font-size-lg);cursor:pointer;box-sizing:border-box}.zt-checkbox__icon .zt-icon{display:flex;justify-content:center;align-items:center;width:1em;height:1em;color:transparent;text-align:center;border:1px solid var(--zt-checkbox-border-color);transition-duration:var(--zt-checkbox-duration);transition-property:color,border-color,background-color}.zt-checkbox__icon--round .zt-icon{border-radius:100%;border:var(--zt-checkbox-round-icon-border);box-shadow:var(--zt-checkbox-round-icon-box-shadow);background:var(--zt-checkbox-round-icon-background)}.zt-checkbox__icon--indeterminate .zt-icon,.zt-checkbox__icon--checked .zt-icon{color:var(--zt-white);background:var(--zt-checkbox-checked-icon-color);box-shadow:var(--zt-checkbox-checked-icon-shadow);border:var(--zt-checkbox-checked-icon-border)}.zt-checkbox__icon--disabled{cursor:not-allowed}.zt-checkbox__icon--disabled .zt-icon{border:var(--zt-checkbox-disabled-icon-border);box-shadow:var(--zt-checkbox-disabled-icon-shadow);background:var(--zt-checkbox-disabled-icon-background)}.zt-checkbox__icon--disabled.zt-checkbox__icon--checked .zt-icon{opacity:var(--zt-checkbox-disabled-checked-icon-opacity);background:var(--zt-checkbox-checked-icon-color);color:var(--zt-white)}.zt-checkbox__label{margin-left:var(--zt-checkbox-label-margin);color:var(--zt-checkbox-label-color);font-size:var(--zt-font-size-md)}.zt-checkbox__label--left{margin:0 var(--zt-checkbox-label-margin) 0 0}.zt-checkbox__label--disabled{color:var(--zt-checkbox-disabled-label-color)}.zt-theme-dark{--zt-checkbox-round-icon-box-shadow: none;--zt-checkbox-disabled-icon-shadow: none;--zt-checkbox-round-icon-background: rgba(255, 255, 255, .04);--zt-checkbox-round-icon-border: 1px solid var(--zt-gray);--zt-checkbox-disabled-icon-background: var(--zt-gray-a2)}
1
+ :root{--zt-checkbox-padding: 12px 0;--zt-checkbox-border-color: var(--zt-gray-a1);--zt-checkbox-duration: var(--zt-duration-fast);--zt-checkbox-round-icon-border: 1px solid var(--zt-gray-a1);--zt-checkbox-round-icon-box-shadow: -1px -1px 2px 0 #ffffff, 0 0 3px 0 var(--zt-gray-a2);--zt-checkbox-round-icon-background: linear-gradient(135deg, #e6ebf0 0%, #ffffff 100%);--zt-checkbox-label-margin: var(--zt-padding-xs);--zt-checkbox-label-color: var(--zt-text-color);--zt-checkbox-checked-icon-color: var(--zt-primary-color);--zt-checkbox-checked-icon-shadow: inset 1px 1px 2px 0 rgba(0, 0, 0, .2);--zt-checkbox-checked-icon-border: 1px solid rgba(255, 255, 255, .5);--zt-checkbox-disabled-icon-shadow: -1px -1px 2px 0 #fff, 0 0 3px 0 var(--zt-gray-a2);--zt-checkbox-disabled-icon-border: 1px solid var(--zt-gray-a08);--zt-checkbox-disabled-label-color: var(--zt-gray-a2);--zt-checkbox-disabled-checked-icon-opacity: var(--zt-disabled-opacity);--zt-checkbox-disabled-icon-background: linear-gradient(134deg, #e1e6eb 0%, #e5edf5 100%)}.zt-checkbox{position:relative;display:flex;align-items:center;overflow:hidden;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:var(--zt-checkbox-padding)}.zt-checkbox--disabled{cursor:not-allowed}.zt-checkbox--label-disabled{cursor:default}.zt-checkbox--horizontal{margin-right:var(--zt-padding-sm)}.zt-checkbox__icon{font-size:var(--zt-font-size-lg);cursor:pointer;box-sizing:border-box}.zt-checkbox__icon .zt-icon{display:flex;justify-content:center;align-items:center;width:1em;height:1em;color:transparent;text-align:center;border:1px solid var(--zt-checkbox-border-color);transition-duration:var(--zt-checkbox-duration);transition-property:color,border-color,background-color;border-radius:4px}.zt-checkbox__icon--round .zt-icon{border-radius:100%;border:var(--zt-checkbox-round-icon-border);box-shadow:var(--zt-checkbox-round-icon-box-shadow);background:var(--zt-checkbox-round-icon-background)}.zt-checkbox__icon--indeterminate .zt-icon,.zt-checkbox__icon--checked .zt-icon{color:var(--zt-white);background:var(--zt-checkbox-checked-icon-color);box-shadow:var(--zt-checkbox-checked-icon-shadow);border:var(--zt-checkbox-checked-icon-border)}.zt-checkbox__icon--disabled{cursor:not-allowed}.zt-checkbox__icon--disabled .zt-icon{border:var(--zt-checkbox-disabled-icon-border);box-shadow:var(--zt-checkbox-disabled-icon-shadow);background:var(--zt-checkbox-disabled-icon-background)}.zt-checkbox__icon--disabled.zt-checkbox__icon--checked .zt-icon{opacity:var(--zt-checkbox-disabled-checked-icon-opacity);background:var(--zt-checkbox-checked-icon-color);color:var(--zt-white)}.zt-checkbox__label{margin-left:var(--zt-checkbox-label-margin);color:var(--zt-checkbox-label-color);font-size:var(--zt-font-size-md)}.zt-checkbox__label--left{margin:0 var(--zt-checkbox-label-margin) 0 0}.zt-checkbox__label--disabled{color:var(--zt-checkbox-disabled-label-color)}.zt-theme-dark{--zt-checkbox-round-icon-box-shadow: none;--zt-checkbox-disabled-icon-shadow: none;--zt-checkbox-round-icon-background: rgba(255, 255, 255, .04);--zt-checkbox-round-icon-border: 1px solid var(--zt-gray);--zt-checkbox-disabled-icon-background: var(--zt-gray-a2)}
package/es/index.d.ts CHANGED
@@ -84,4 +84,4 @@ declare namespace _default {
84
84
  }
85
85
  export default _default;
86
86
  export function install(app: any): void;
87
- export const version: "3.1.62";
87
+ export const version: "3.1.63";
package/es/index.mjs CHANGED
@@ -77,7 +77,7 @@ import { Timeline } from "./timeline/index.mjs";
77
77
  import { Toast } from "./toast/index.mjs";
78
78
  import { Uploader } from "./uploader/index.mjs";
79
79
  import { Video } from "./video/index.mjs";
80
- const version = "3.1.62";
80
+ const version = "3.1.63";
81
81
  function install(app) {
82
82
  const components = [
83
83
  ActionSheet,
@@ -11,6 +11,7 @@ declare const multiplePickerProps: {
11
11
  };
12
12
  cancelButtonText: StringConstructor;
13
13
  confirmButtonText: StringConstructor;
14
+ otherButtonText: StringConstructor;
14
15
  showPicker: BooleanConstructor;
15
16
  allowHtml: {
16
17
  type: BooleanConstructor;
@@ -60,6 +61,7 @@ declare const multiplePickerProps: {
60
61
  type: BooleanConstructor;
61
62
  default: true;
62
63
  };
64
+ showSelectAll: BooleanConstructor;
63
65
  };
64
66
  export type MultiplePickerExpose = {
65
67
  resetOptions: (props: {
@@ -78,6 +80,7 @@ declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
78
80
  };
79
81
  cancelButtonText: StringConstructor;
80
82
  confirmButtonText: StringConstructor;
83
+ otherButtonText: StringConstructor;
81
84
  showPicker: BooleanConstructor;
82
85
  allowHtml: {
83
86
  type: BooleanConstructor;
@@ -127,6 +130,7 @@ declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
127
130
  type: BooleanConstructor;
128
131
  default: true;
129
132
  };
133
+ showSelectAll: BooleanConstructor;
130
134
  }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "change" | "confirm" | "update:showPicker" | "update:selectedIndex" | "update:selectedValue")[], "cancel" | "change" | "confirm" | "update:showPicker" | "update:selectedIndex" | "update:selectedValue", import("vue").PublicProps, Readonly<ExtractPropTypes<{
131
135
  title: StringConstructor;
132
136
  loading: BooleanConstructor;
@@ -137,6 +141,7 @@ declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
137
141
  };
138
142
  cancelButtonText: StringConstructor;
139
143
  confirmButtonText: StringConstructor;
144
+ otherButtonText: StringConstructor;
140
145
  showPicker: BooleanConstructor;
141
146
  allowHtml: {
142
147
  type: BooleanConstructor;
@@ -186,6 +191,7 @@ declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
186
191
  type: BooleanConstructor;
187
192
  default: true;
188
193
  };
194
+ showSelectAll: BooleanConstructor;
189
195
  }>> & Readonly<{
190
196
  onChange?: ((...args: any[]) => any) | undefined;
191
197
  onCancel?: ((...args: any[]) => any) | undefined;
@@ -210,5 +216,6 @@ declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
210
216
  toolbarPosition: string;
211
217
  selectedIndex: number[];
212
218
  selectedValue: Numeric[];
219
+ showSelectAll: boolean;
213
220
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
214
221
  export default _default;
@@ -1,8 +1,9 @@
1
- import { ref, watch, computed, defineComponent, createVNode as _createVNode } from "vue";
1
+ import { ref, watch, computed, defineComponent, createVNode as _createVNode, mergeProps as _mergeProps, createTextVNode as _createTextVNode } from "vue";
2
2
  import { createNamespace, makeArrayProp, makeNumberProp, makeNumericProp, makeStringProp, truthProp } from "../utils/index.mjs";
3
3
  import { unitToPx } from "../utils/format.mjs";
4
4
  import { deepClone } from "../utils/deep-clone.mjs";
5
5
  import Loading from "../loading/index.mjs";
6
+ import Checkbox from "../checkbox/index.mjs";
6
7
  import MultiplePickerOptions from "./MultiplePickerOptions.mjs";
7
8
  import Popup from "../popup/index.mjs";
8
9
  import Button from "../button/index.mjs";
@@ -15,6 +16,7 @@ const multiplePickerProps = {
15
16
  itemHeight: makeNumericProp(0),
16
17
  cancelButtonText: String,
17
18
  confirmButtonText: String,
19
+ otherButtonText: String,
18
20
  showPicker: Boolean,
19
21
  allowHtml: truthProp,
20
22
  closeOnPopstate: truthProp,
@@ -27,7 +29,8 @@ const multiplePickerProps = {
27
29
  columnCounts: makeNumberProp(3),
28
30
  selectedIndex: makeArrayProp([]),
29
31
  selectedValue: makeArrayProp([]),
30
- popup: truthProp
32
+ popup: truthProp,
33
+ showSelectAll: Boolean
31
34
  };
32
35
  var stdin_default = defineComponent({
33
36
  name,
@@ -42,6 +45,12 @@ var stdin_default = defineComponent({
42
45
  const currentSelectedValue = computed(() => props.selectedValue);
43
46
  const confirmIndexes = ref(props.selectedIndex);
44
47
  const confirmValues = ref(props.selectedValue);
48
+ const isIndeterminate = computed(() => {
49
+ return confirmIndexes.value.length > 0 && confirmIndexes.value.length < currentOptions.value.length;
50
+ });
51
+ const isAllSelected = computed(() => {
52
+ return confirmIndexes.value.length > 0 && confirmIndexes.value.length === currentOptions.value.length;
53
+ });
45
54
  const resetOptions = (props2) => {
46
55
  currentOptions.value = props2.options;
47
56
  confirmIndexes.value = props2.selectedIndex;
@@ -140,40 +149,89 @@ var stdin_default = defineComponent({
140
149
  }, [props.title ? props.title : "\u8BF7\u9009\u62E9"]);
141
150
  }
142
151
  };
152
+ const genOther = () => {
153
+ const text = props.otherButtonText || "\u5176\u4ED6";
154
+ return _createVNode(Button, {
155
+ "class": bem("select-other"),
156
+ "size": "medium",
157
+ "style": {
158
+ marginLeft: "12px",
159
+ marginRight: "8px"
160
+ },
161
+ "onClick": onSelectOther
162
+ }, {
163
+ default: () => [slots.selectOther ? slots.selectOther() : text]
164
+ });
165
+ };
143
166
  const genCancel = () => {
144
167
  const text = props.cancelButtonText || "\u53D6\u6D88";
145
- return _createVNode(Button, {
146
- "size": "normal",
147
- "block": true,
168
+ return _createVNode(Button, _mergeProps({
169
+ "class": [props.showSelectAll ? bem("in-select-all") : ""],
170
+ "size": props.showSelectAll ? "medium" : "normal"
171
+ }, props.showSelectAll !== true ? {
172
+ block: true
173
+ } : {}, {
148
174
  "style": {
149
175
  marginRigth: "4px"
150
176
  },
151
177
  "onClick": onCancel
152
- }, {
178
+ }), {
153
179
  default: () => [slots.cancel ? slots.cancel() : text]
154
180
  });
155
181
  };
156
182
  const genConfirm = () => {
157
183
  const text = props.confirmButtonText || "\u786E\u5B9A";
158
- return _createVNode(Button, {
184
+ return _createVNode(Button, _mergeProps({
159
185
  "type": "primary",
160
- "size": "normal",
161
- "block": true,
186
+ "class": [props.showSelectAll ? bem("in-select-all") : ""],
187
+ "size": props.showSelectAll ? "medium" : "normal"
188
+ }, props.showSelectAll !== true ? {
189
+ block: true
190
+ } : {}, {
162
191
  "style": {
163
192
  marginLeft: "8px"
164
193
  },
165
194
  "onClick": confirm
166
- }, {
195
+ }), {
167
196
  default: () => [slots.confirm ? slots.confirm() : text]
168
197
  });
169
198
  };
170
199
  const genToolbar = () => {
171
200
  if (props.showToolbar) {
201
+ const content = props.showSelectAll ? [genSelectAll(), genOther(), genCancel(), genConfirm()] : [genCancel(), genConfirm()];
172
202
  return _createVNode("div", {
173
203
  "class": bem("toolbar")
174
- }, [slots.toolbar ? slots.toolbar() : [genCancel(), genConfirm()]]);
204
+ }, [slots.toolbar ? slots.toolbar() : content]);
175
205
  }
176
206
  };
207
+ const genSelectAll = () => _createVNode("div", {
208
+ "class": bem("toolbar-select-all")
209
+ }, [_createVNode(Checkbox, {
210
+ "class": bem("toolbar-checkbox"),
211
+ "shape": "square",
212
+ "modelValue": isAllSelected.value,
213
+ "onUpdate:modelValue": ($event) => isAllSelected.value = $event,
214
+ "indeterminate": isIndeterminate.value,
215
+ "onClick": handleSelectAll
216
+ }, {
217
+ default: () => [_createTextVNode("\u5168\u9009")]
218
+ }), _createVNode("div", {
219
+ "class": bem("toolbar-divider")
220
+ }, null), _createVNode("span", {
221
+ "class": bem("toolbar-checkbox-text")
222
+ }, [_createTextVNode("\u5DF2\u9009 "), confirmIndexes.value.length])]);
223
+ const handleSelectAll = () => {
224
+ confirmIndexes.value = !isAllSelected.value ? currentOptions.value.map((_, index) => index) : [];
225
+ };
226
+ const onSelectOther = () => {
227
+ const temp = Array();
228
+ currentOptions.value.forEach((_, index) => {
229
+ if (!confirmIndexes.value.includes(index)) {
230
+ temp.push(index);
231
+ }
232
+ });
233
+ confirmIndexes.value = temp;
234
+ };
177
235
  const genOptionItems = computed(() => {
178
236
  let formatOptions = [];
179
237
  if (currentOptions.value && currentOptions.value[0] && typeof currentOptions.value[0] !== "object") {
@@ -1 +1 @@
1
- :root{--zt-multiple-picker-warpper-padding: 12px 16px 4px 16px;--zt-multiple-picker-option-text-color: var(--zt-gray-a6);--zt-multiple-picker-background-color: var(--zt-background-popup);--zt-multiple-picker-toolbar-height: 44px;--zt-multiple-picker-title-text-color: var(--zt-gray-a4);--zt-multiple-picker-title-padding: 12px 0;--zt-multiple-picker-item-padding: 0 4px 8px 0;--zt-multiple-picker-option-disabled-opacity: var(--zt-disabled-opacity);--zt-multiple-picker-option-disabled-background: var(--zt-gray-a04);--zt-multiple-picker-max-height: 84vh;--zt-multiple-picker-loading-icon-color: var(--zt-primary-color);--zt-multiple-picker-loading-mask-color: var(--zt-picker-loading-mask-color);--zt-multiple-picker-toolbar-padding: 8px 16px;--zt-multiple-picker-ellipsis-border: 1px solid var(--zt-gray-a2);--zt-multiple-picker-ellipsis-border-selected: 1px solid var(--zt-blue-a6);--zt-multiple-picker-title-background: var(--zt-background-popup);--zt-multiple-picker-ellipsis-height: 38px}:root[zt-theme-size=large]{--zt-multiple-picker-ellipsis-height: 50px}.zt-multiple-picker{display:flex;flex-direction:column;justify-content:space-between;position:relative;background-color:var(--zt-multiple-picker-background-color);-webkit-user-select:none;-moz-user-select:none;user-select:none;max-height:var(--zt-multiple-picker-max-height)}.zt-multiple-picker__toolbar{display:flex;align-items:center;justify-content:space-between;box-sizing:content-box;flex-shrink:0;background:var(--zt-multiple-picker-title-background);height:var(--zt-multiple-picker-toolbar-height);padding:var(--zt-multiple-picker-toolbar-padding)}.zt-multiple-picker__title{flex-shrink:0;font-weight:var(--zt-multiple-picker-cancel-action-font-weight);font-size:var(--zt-font-size-md);line-height:var(--zt-line-height-md);text-align:center;background:var(--zt-multiple-picker-title-background);color:var(--zt-multiple-picker-title-text-color);padding:var(--zt-multiple-picker-title-padding)}.zt-multiple-picker__options{position:relative;display:flex;cursor:grab;overflow-y:scroll}.zt-multiple-picker__options:after{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;right:0;bottom:0;left:0;border-bottom:1px solid var(--zt-border-color);transform:scaleY(.5)}.zt-multiple-picker__options:before{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;top:0;right:0;left:0;border-top:1px solid var(--zt-border-color);transform:scaleY(.5)}.zt-multiple-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;color:var(--zt-multiple-picker-loading-icon-color);background-color:var(--zt-multiple-picker-loading-mask-color)}.zt-multiple-picker-options{flex:1;overflow-y:scroll;font-size:var(--zt-font-size-md);margin:0;outline:0 none;padding:0}.zt-multiple-picker-options__wrapper{display:flex;flex-wrap:wrap;background-color:var(--zt-multiple-picker-background-color);padding:var(--zt-multiple-picker-warpper-padding)}.zt-multiple-picker-options__item{color:var(--zt-multiple-picker-option-text-color);padding:var(--zt-multiple-picker-item-padding);box-sizing:border-box;text-align:center;font-size:var(--zt-font-size-md)}.zt-multiple-picker-options__item .zt-ellipsis{height:var(--zt-multiple-picker-ellipsis-height);line-height:var(--zt-multiple-picker-ellipsis-height);border-radius:calc(var(--zt-multiple-picker-ellipsis-height) / 2);border:var(--zt-multiple-picker-ellipsis-border);padding:0 var(--zt-padding-md)}.zt-multiple-picker-options__item:active{opacity:var(--zt-active-opacity)}.zt-multiple-picker-options__item--disabled{cursor:not-allowed;color:var(--zt-gray-a2)}.zt-multiple-picker-options__item--disabled .zt-ellipsis{background:var(--zt-multiple-picker-option-disabled-background);border:0}.zt-multiple-picker-options__item--last{padding-right:0}.zt-multiple-picker-options__item--selected{color:var(--zt-primary-color)}.zt-multiple-picker-options__item--selected .zt-ellipsis{background:var(--zt-primary-color-a1);border:var(--zt-multiple-picker-ellipsis-border-selected)}.zt-multiple-picker-options__item--disabled-selected{cursor:not-allowed;color:var(--zt-gray)!important}.zt-multiple-picker-options__item--disabled-selected .zt-ellipsis{background:var(--zt-picker-option-disabled-background)!important;border:0!important}
1
+ :root{--zt-multiple-picker-warpper-padding: 12px 16px 4px 16px;--zt-multiple-picker-option-text-color: var(--zt-gray-a6);--zt-multiple-picker-background-color: var(--zt-background-popup);--zt-multiple-picker-toolbar-height: 44px;--zt-multiple-picker-title-text-color: var(--zt-gray-a4);--zt-multiple-picker-title-padding: 12px 0;--zt-multiple-picker-item-padding: 0 4px 8px 0;--zt-multiple-picker-option-disabled-opacity: var(--zt-disabled-opacity);--zt-multiple-picker-option-disabled-background: var(--zt-gray-a04);--zt-multiple-picker-max-height: 84vh;--zt-multiple-picker-loading-icon-color: var(--zt-primary-color);--zt-multiple-picker-loading-mask-color: var(--zt-picker-loading-mask-color);--zt-multiple-picker-toolbar-padding: 8px 16px;--zt-multiple-picker-ellipsis-border: 1px solid var(--zt-gray-a2);--zt-multiple-picker-ellipsis-border-selected: 1px solid var(--zt-blue-a6);--zt-multiple-picker-title-background: var(--zt-background-popup);--zt-multiple-picker-ellipsis-height: 38px}:root[zt-theme-size=large]{--zt-multiple-picker-ellipsis-height: 50px}.zt-multiple-picker{display:flex;flex-direction:column;justify-content:space-between;position:relative;background-color:var(--zt-multiple-picker-background-color);-webkit-user-select:none;-moz-user-select:none;user-select:none;max-height:var(--zt-multiple-picker-max-height)}.zt-multiple-picker__toolbar{display:flex;align-items:center;justify-content:space-between;box-sizing:content-box;flex-shrink:0;overflow:hidden;background:var(--zt-multiple-picker-title-background);height:var(--zt-multiple-picker-toolbar-height);padding:var(--zt-multiple-picker-toolbar-padding)}.zt-multiple-picker__toolbar-select-all{display:flex;align-items:center;flex:1;max-width:45%}.zt-multiple-picker__toolbar-divider{width:1px;height:14px;background-color:var(--zt-gray-a2);margin-left:7px;margin-right:7px}.zt-multiple-picker__toolbar-checkbox{flex-shrink:0}.zt-multiple-picker__toolbar-checkbox .zt-checkbox__icon{font-size:var(--zt-font-size-xl)}.zt-multiple-picker__toolbar-checkbox .zt-checkbox__label{font-size:var(--zt-font-size-lg);margin-left:var(--zt-padding-base)}.zt-multiple-picker__toolbar-checkbox-text{font-size:var(--zt-font-size-lg);color:var(--zt-text-color);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (max-width: 375px){.zt-multiple-picker__toolbar .zt-multiple-picker__in-select-all{padding:0 14px}}@media (min-width: 376px){.zt-multiple-picker__toolbar .zt-multiple-picker__in-select-all{padding:0 22px}}.zt-multiple-picker__toolbar .zt-multiple-picker__in-select-all .zt-button__text{font-size:var(--zt-font-size-lg)}@media (max-width: 375px){.zt-multiple-picker__toolbar .zt-multiple-picker__select-other{padding:0 10px}}@media (min-width: 376px){.zt-multiple-picker__toolbar .zt-multiple-picker__select-other{padding:0 14px}}.zt-multiple-picker__toolbar .zt-multiple-picker__select-other .zt-button__text{font-size:var(--zt-font-size-lg)}.zt-multiple-picker__title{flex-shrink:0;font-weight:var(--zt-multiple-picker-cancel-action-font-weight);font-size:var(--zt-font-size-md);line-height:var(--zt-line-height-md);text-align:center;background:var(--zt-multiple-picker-title-background);color:var(--zt-multiple-picker-title-text-color);padding:var(--zt-multiple-picker-title-padding)}.zt-multiple-picker__options{position:relative;display:flex;cursor:grab;overflow-y:scroll}.zt-multiple-picker__options:after{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;right:0;bottom:0;left:0;border-bottom:1px solid var(--zt-border-color);transform:scaleY(.5)}.zt-multiple-picker__options:before{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;top:0;right:0;left:0;border-top:1px solid var(--zt-border-color);transform:scaleY(.5)}.zt-multiple-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;color:var(--zt-multiple-picker-loading-icon-color);background-color:var(--zt-multiple-picker-loading-mask-color)}.zt-multiple-picker-options{flex:1;overflow-y:scroll;font-size:var(--zt-font-size-md);margin:0;outline:0 none;padding:0}.zt-multiple-picker-options__wrapper{display:flex;flex-wrap:wrap;background-color:var(--zt-multiple-picker-background-color);padding:var(--zt-multiple-picker-warpper-padding)}.zt-multiple-picker-options__item{color:var(--zt-multiple-picker-option-text-color);padding:var(--zt-multiple-picker-item-padding);box-sizing:border-box;text-align:center;font-size:var(--zt-font-size-md)}.zt-multiple-picker-options__item .zt-ellipsis{height:var(--zt-multiple-picker-ellipsis-height);line-height:var(--zt-multiple-picker-ellipsis-height);border-radius:calc(var(--zt-multiple-picker-ellipsis-height) / 2);border:var(--zt-multiple-picker-ellipsis-border);padding:0 var(--zt-padding-md)}.zt-multiple-picker-options__item:active{opacity:var(--zt-active-opacity)}.zt-multiple-picker-options__item--disabled{cursor:not-allowed;color:var(--zt-gray-a2)}.zt-multiple-picker-options__item--disabled .zt-ellipsis{background:var(--zt-multiple-picker-option-disabled-background);border:0}.zt-multiple-picker-options__item--last{padding-right:0}.zt-multiple-picker-options__item--selected{color:var(--zt-primary-color)}.zt-multiple-picker-options__item--selected .zt-ellipsis{background:var(--zt-primary-color-a1);border:var(--zt-multiple-picker-ellipsis-border-selected)}.zt-multiple-picker-options__item--disabled-selected{cursor:not-allowed;color:var(--zt-gray)!important}.zt-multiple-picker-options__item--disabled-selected .zt-ellipsis{background:var(--zt-picker-option-disabled-background)!important;border:0!important}
@@ -10,6 +10,7 @@ export declare const MultiplePicker: import("../utils").WithInstall<import("vue"
10
10
  };
11
11
  cancelButtonText: StringConstructor;
12
12
  confirmButtonText: StringConstructor;
13
+ otherButtonText: StringConstructor;
13
14
  showPicker: BooleanConstructor;
14
15
  allowHtml: {
15
16
  type: BooleanConstructor;
@@ -59,6 +60,7 @@ export declare const MultiplePicker: import("../utils").WithInstall<import("vue"
59
60
  type: BooleanConstructor;
60
61
  default: true;
61
62
  };
63
+ showSelectAll: BooleanConstructor;
62
64
  }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "change" | "confirm" | "update:showPicker" | "update:selectedIndex" | "update:selectedValue")[], "cancel" | "change" | "confirm" | "update:showPicker" | "update:selectedIndex" | "update:selectedValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
63
65
  title: StringConstructor;
64
66
  loading: BooleanConstructor;
@@ -69,6 +71,7 @@ export declare const MultiplePicker: import("../utils").WithInstall<import("vue"
69
71
  };
70
72
  cancelButtonText: StringConstructor;
71
73
  confirmButtonText: StringConstructor;
74
+ otherButtonText: StringConstructor;
72
75
  showPicker: BooleanConstructor;
73
76
  allowHtml: {
74
77
  type: BooleanConstructor;
@@ -118,6 +121,7 @@ export declare const MultiplePicker: import("../utils").WithInstall<import("vue"
118
121
  type: BooleanConstructor;
119
122
  default: true;
120
123
  };
124
+ showSelectAll: BooleanConstructor;
121
125
  }>> & Readonly<{
122
126
  onChange?: ((...args: any[]) => any) | undefined;
123
127
  onCancel?: ((...args: any[]) => any) | undefined;
@@ -142,6 +146,7 @@ export declare const MultiplePicker: import("../utils").WithInstall<import("vue"
142
146
  toolbarPosition: string;
143
147
  selectedIndex: number[];
144
148
  selectedValue: import("../utils").Numeric[];
149
+ showSelectAll: boolean;
145
150
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
146
151
  export default MultiplePicker;
147
152
  export type { MultiplePickerProps };
@@ -5,4 +5,6 @@ import "../../overlay/index.css";
5
5
  import "../../popup/index.css";
6
6
  import "../../loading/index.css";
7
7
  import "../../button/index.css";
8
+ import "../../checkbox-group/index.css";
9
+ import "../../checkbox/index.css";
8
10
  import "../index.css";
@@ -1 +1 @@
1
- :root{--zt-checkbox-padding: 12px 0;--zt-checkbox-border-color: var(--zt-gray-a1);--zt-checkbox-duration: var(--zt-duration-fast);--zt-checkbox-round-icon-border: 1px solid var(--zt-gray-a1);--zt-checkbox-round-icon-box-shadow: -1px -1px 2px 0 #ffffff, 0 0 3px 0 var(--zt-gray-a2);--zt-checkbox-round-icon-background: linear-gradient(135deg, #e6ebf0 0%, #ffffff 100%);--zt-checkbox-label-margin: var(--zt-padding-xs);--zt-checkbox-label-color: var(--zt-text-color);--zt-checkbox-checked-icon-color: var(--zt-primary-color);--zt-checkbox-checked-icon-shadow: inset 1px 1px 2px 0 rgba(0, 0, 0, .2);--zt-checkbox-checked-icon-border: 1px solid rgba(255, 255, 255, .5);--zt-checkbox-disabled-icon-shadow: -1px -1px 2px 0 #fff, 0 0 3px 0 var(--zt-gray-a2);--zt-checkbox-disabled-icon-border: 1px solid var(--zt-gray-a08);--zt-checkbox-disabled-label-color: var(--zt-gray-a2);--zt-checkbox-disabled-checked-icon-opacity: var(--zt-disabled-opacity);--zt-checkbox-disabled-icon-background: linear-gradient(134deg, #e1e6eb 0%, #e5edf5 100%)}.zt-checkbox{position:relative;display:flex;align-items:center;overflow:hidden;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:var(--zt-checkbox-padding)}.zt-checkbox--disabled{cursor:not-allowed}.zt-checkbox--label-disabled{cursor:default}.zt-checkbox--horizontal{margin-right:var(--zt-padding-sm)}.zt-checkbox__icon{font-size:var(--zt-font-size-lg);cursor:pointer;box-sizing:border-box}.zt-checkbox__icon .zt-icon{display:flex;justify-content:center;align-items:center;width:1em;height:1em;color:transparent;text-align:center;border:1px solid var(--zt-checkbox-border-color);transition-duration:var(--zt-checkbox-duration);transition-property:color,border-color,background-color}.zt-checkbox__icon--round .zt-icon{border-radius:100%;border:var(--zt-checkbox-round-icon-border);box-shadow:var(--zt-checkbox-round-icon-box-shadow);background:var(--zt-checkbox-round-icon-background)}.zt-checkbox__icon--indeterminate .zt-icon,.zt-checkbox__icon--checked .zt-icon{color:var(--zt-white);background:var(--zt-checkbox-checked-icon-color);box-shadow:var(--zt-checkbox-checked-icon-shadow);border:var(--zt-checkbox-checked-icon-border)}.zt-checkbox__icon--disabled{cursor:not-allowed}.zt-checkbox__icon--disabled .zt-icon{border:var(--zt-checkbox-disabled-icon-border);box-shadow:var(--zt-checkbox-disabled-icon-shadow);background:var(--zt-checkbox-disabled-icon-background)}.zt-checkbox__icon--disabled.zt-checkbox__icon--checked .zt-icon{opacity:var(--zt-checkbox-disabled-checked-icon-opacity);background:var(--zt-checkbox-checked-icon-color);color:var(--zt-white)}.zt-checkbox__label{margin-left:var(--zt-checkbox-label-margin);color:var(--zt-checkbox-label-color);font-size:var(--zt-font-size-md)}.zt-checkbox__label--left{margin:0 var(--zt-checkbox-label-margin) 0 0}.zt-checkbox__label--disabled{color:var(--zt-checkbox-disabled-label-color)}.zt-theme-dark{--zt-checkbox-round-icon-box-shadow: none;--zt-checkbox-disabled-icon-shadow: none;--zt-checkbox-round-icon-background: rgba(255, 255, 255, .04);--zt-checkbox-round-icon-border: 1px solid var(--zt-gray);--zt-checkbox-disabled-icon-background: var(--zt-gray-a2)}
1
+ :root{--zt-checkbox-padding: 12px 0;--zt-checkbox-border-color: var(--zt-gray-a1);--zt-checkbox-duration: var(--zt-duration-fast);--zt-checkbox-round-icon-border: 1px solid var(--zt-gray-a1);--zt-checkbox-round-icon-box-shadow: -1px -1px 2px 0 #ffffff, 0 0 3px 0 var(--zt-gray-a2);--zt-checkbox-round-icon-background: linear-gradient(135deg, #e6ebf0 0%, #ffffff 100%);--zt-checkbox-label-margin: var(--zt-padding-xs);--zt-checkbox-label-color: var(--zt-text-color);--zt-checkbox-checked-icon-color: var(--zt-primary-color);--zt-checkbox-checked-icon-shadow: inset 1px 1px 2px 0 rgba(0, 0, 0, .2);--zt-checkbox-checked-icon-border: 1px solid rgba(255, 255, 255, .5);--zt-checkbox-disabled-icon-shadow: -1px -1px 2px 0 #fff, 0 0 3px 0 var(--zt-gray-a2);--zt-checkbox-disabled-icon-border: 1px solid var(--zt-gray-a08);--zt-checkbox-disabled-label-color: var(--zt-gray-a2);--zt-checkbox-disabled-checked-icon-opacity: var(--zt-disabled-opacity);--zt-checkbox-disabled-icon-background: linear-gradient(134deg, #e1e6eb 0%, #e5edf5 100%)}.zt-checkbox{position:relative;display:flex;align-items:center;overflow:hidden;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:var(--zt-checkbox-padding)}.zt-checkbox--disabled{cursor:not-allowed}.zt-checkbox--label-disabled{cursor:default}.zt-checkbox--horizontal{margin-right:var(--zt-padding-sm)}.zt-checkbox__icon{font-size:var(--zt-font-size-lg);cursor:pointer;box-sizing:border-box}.zt-checkbox__icon .zt-icon{display:flex;justify-content:center;align-items:center;width:1em;height:1em;color:transparent;text-align:center;border:1px solid var(--zt-checkbox-border-color);transition-duration:var(--zt-checkbox-duration);transition-property:color,border-color,background-color;border-radius:4px}.zt-checkbox__icon--round .zt-icon{border-radius:100%;border:var(--zt-checkbox-round-icon-border);box-shadow:var(--zt-checkbox-round-icon-box-shadow);background:var(--zt-checkbox-round-icon-background)}.zt-checkbox__icon--indeterminate .zt-icon,.zt-checkbox__icon--checked .zt-icon{color:var(--zt-white);background:var(--zt-checkbox-checked-icon-color);box-shadow:var(--zt-checkbox-checked-icon-shadow);border:var(--zt-checkbox-checked-icon-border)}.zt-checkbox__icon--disabled{cursor:not-allowed}.zt-checkbox__icon--disabled .zt-icon{border:var(--zt-checkbox-disabled-icon-border);box-shadow:var(--zt-checkbox-disabled-icon-shadow);background:var(--zt-checkbox-disabled-icon-background)}.zt-checkbox__icon--disabled.zt-checkbox__icon--checked .zt-icon{opacity:var(--zt-checkbox-disabled-checked-icon-opacity);background:var(--zt-checkbox-checked-icon-color);color:var(--zt-white)}.zt-checkbox__label{margin-left:var(--zt-checkbox-label-margin);color:var(--zt-checkbox-label-color);font-size:var(--zt-font-size-md)}.zt-checkbox__label--left{margin:0 var(--zt-checkbox-label-margin) 0 0}.zt-checkbox__label--disabled{color:var(--zt-checkbox-disabled-label-color)}.zt-theme-dark{--zt-checkbox-round-icon-box-shadow: none;--zt-checkbox-disabled-icon-shadow: none;--zt-checkbox-round-icon-background: rgba(255, 255, 255, .04);--zt-checkbox-round-icon-border: 1px solid var(--zt-gray);--zt-checkbox-disabled-icon-background: var(--zt-gray-a2)}