@gyyxds/zy-ui 0.0.3 → 0.1.0

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,37 +1,13 @@
1
1
  /**
2
- * Zy UI 组件库入口:Element Plus 二次封装,注入本站 UI 风格与微动效交互。
3
- *
4
- * 用法与 Element Plus 一致 —— 全局、按需、单组件注册三种都行:
5
- *
6
- * ```ts
7
- * // 全局
8
- * import ZyUi from '@zy/zy-ui'
9
- * import '@zy/zy-ui/style.css'
10
- * app.use(ZyUi)
11
- *
12
- * // 按需(配合 tree-shaking,只打进来的组件会进包)
13
- * import { ZyButton } from '@zy/zy-ui'
14
- * import '@zy/zy-ui/style.css'
15
- *
16
- * // 单个组件自己注册(对齐 Element 的做法,组件自带 install)
17
- * import { ZyButton } from '@zy/zy-ui'
18
- * app.use(ZyButton)
19
- * ```
20
- *
21
- * 目录约定(同 Element):每个组件一个目录,入口 `index.ts` 负责导出与 install,
22
- * 实现是同目录的 `Zy*.vue`;成族的组件(checkbox / radio)共用一个目录,
23
- * 族内契约(如 radio-context)留在目录里,不进入公共 API。
24
- *
25
- * 依赖:组件内部直接使用 element-plus 的 `El*` 组件,所以 element-plus 是 peerDependency,
26
- * 消费方需要自己装好并引入它的样式(`import 'element-plus/dist/index.css'`)。
27
- * 组件层设计令牌(`--zy-brand` / `--zy-radius` / `--zy-ease-out` …)随本包发布,
28
- * 见 `./styles/tokens.css`,可用同名变量覆盖换肤。
2
+ * Zy UI 入口:Element Plus 二次封装。
3
+ * 接入方式、目录约定与依赖说明见 README / AGENTS.md,不在此重复维护。
29
4
  */
30
5
  import type { App } from 'vue';
31
6
  import { ZyAlert } from './alert';
32
7
  import { ZyBadge } from './badge';
33
8
  import { ZyButton } from './button';
34
9
  import { ZyCard } from './card';
10
+ import { ZyCascader } from './cascader';
35
11
  import { ZyCheckbox, ZyCheckboxGroup } from './checkbox';
36
12
  import { ZyCodeInput } from './code-input';
37
13
  import { ZyDatePicker } from './date-picker';
@@ -46,14 +22,19 @@ import { ZyPanel } from './panel';
46
22
  import { ZyProgress } from './progress';
47
23
  import { ZyRadio, ZyRadioButton, ZyRadioGroup } from './radio';
48
24
  import { ZySelect } from './select';
25
+ import { ZySideMenu } from './side-menu';
49
26
  import { ZySlideVerify } from './slide-verify';
50
27
  import { ZySpace } from './space';
51
28
  import { ZySwitch } from './switch';
52
29
  import { ZyTable } from './table';
30
+ import { ZyTabs } from './tabs';
53
31
  import { ZyTag } from './tag';
54
32
  import { ZyTimePicker } from './time-picker';
55
33
  import { ZyTree } from './tree';
56
- export { ZyAlert, ZyBadge, ZyButton, ZyCard, ZyCheckbox, ZyCheckboxGroup, ZyCodeInput, ZyDatePicker, ZyDialog, ZyDivider, ZyIcon, ZyInput, ZyLoading, ZyMegaMenu, ZyPagination, ZyPanel, ZyProgress, ZyRadio, ZyRadioButton, ZyRadioGroup, ZySelect, ZySlideVerify, ZySpace, ZySwitch, ZyTable, ZyTag, ZyTimePicker, ZyTree, };
34
+ export { ZyAlert, ZyBadge, ZyButton, ZyCard, ZyCascader, ZyCheckbox, ZyCheckboxGroup, ZyCodeInput, ZyDatePicker, ZyDialog, ZyDivider, ZyIcon, ZyInput, ZyLoading, ZyMegaMenu, ZyPagination, ZyPanel, ZyProgress, ZyRadio, ZyRadioButton, ZyRadioGroup, ZySelect, ZySideMenu, ZySlideVerify, ZySpace, ZySwitch, ZyTable, ZyTabs, ZyTag, ZyTimePicker, ZyTree, };
35
+ export type { ZyTreeNode, ZyTreeProps } from './select';
36
+ export type { ZyTabItem } from './tabs';
37
+ export type { SideMenuIcon, SideMenuItem, SideMenuNavigatePayload } from './side-menu';
57
38
  /** 全部组件的具名集合(名称即注册名) */
58
39
  export declare const components: {
59
40
  ZyAlert: import("./utils/withInstall").SFCWithInstall<{
@@ -181,6 +162,7 @@ export declare const components: {
181
162
  icon?: string | import("vue").Component;
182
163
  size?: "large" | "default" | "small";
183
164
  round?: boolean;
165
+ square?: boolean;
184
166
  disabled?: boolean;
185
167
  loading?: boolean;
186
168
  }> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
@@ -189,6 +171,7 @@ export declare const components: {
189
171
  effect: "press" | "sweep" | "fill";
190
172
  icon: string | import("vue").Component;
191
173
  round: boolean;
174
+ square: boolean;
192
175
  disabled: boolean;
193
176
  loading: boolean;
194
177
  }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
@@ -204,6 +187,7 @@ export declare const components: {
204
187
  icon?: string | import("vue").Component;
205
188
  size?: "large" | "default" | "small";
206
189
  round?: boolean;
190
+ square?: boolean;
207
191
  disabled?: boolean;
208
192
  loading?: boolean;
209
193
  }> & Readonly<{}>, {}, {}, {}, {}, {
@@ -212,6 +196,7 @@ export declare const components: {
212
196
  effect: "press" | "sweep" | "fill";
213
197
  icon: string | import("vue").Component;
214
198
  round: boolean;
199
+ square: boolean;
215
200
  disabled: boolean;
216
201
  loading: boolean;
217
202
  }>;
@@ -224,6 +209,7 @@ export declare const components: {
224
209
  icon?: string | import("vue").Component;
225
210
  size?: "large" | "default" | "small";
226
211
  round?: boolean;
212
+ square?: boolean;
227
213
  disabled?: boolean;
228
214
  loading?: boolean;
229
215
  }> & Readonly<{}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
@@ -232,6 +218,7 @@ export declare const components: {
232
218
  effect: "press" | "sweep" | "fill";
233
219
  icon: string | import("vue").Component;
234
220
  round: boolean;
221
+ square: boolean;
235
222
  disabled: boolean;
236
223
  loading: boolean;
237
224
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
@@ -284,6 +271,44 @@ export declare const components: {
284
271
  default?: (props: {}) => any;
285
272
  };
286
273
  })>;
274
+ ZyCascader: import("./utils/withInstall").SFCWithInstall<{
275
+ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
276
+ modelValue?: string | number | (string | number)[] | null | undefined;
277
+ }> & Readonly<{
278
+ onVisibleChange?: ((visible: boolean) => any) | undefined;
279
+ "onUpdate:modelValue"?: ((value: string | number | (string | number)[] | null | undefined) => any) | undefined;
280
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
281
+ visibleChange: (visible: boolean) => any;
282
+ "update:modelValue": (value: string | number | (string | number)[] | null | undefined) => any;
283
+ }, import("vue").PublicProps, {}, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
284
+ P: {};
285
+ B: {};
286
+ D: {};
287
+ C: {};
288
+ M: {};
289
+ Defaults: {};
290
+ }, Readonly<{
291
+ modelValue?: string | number | (string | number)[] | null | undefined;
292
+ }> & Readonly<{
293
+ onVisibleChange?: ((visible: boolean) => any) | undefined;
294
+ "onUpdate:modelValue"?: ((value: string | number | (string | number)[] | null | undefined) => any) | undefined;
295
+ }>, {}, {}, {}, {}, {}>;
296
+ __isFragment?: never;
297
+ __isTeleport?: never;
298
+ __isSuspense?: never;
299
+ } & import("vue").ComponentOptionsBase<Readonly<{
300
+ modelValue?: string | number | (string | number)[] | null | undefined;
301
+ }> & Readonly<{
302
+ onVisibleChange?: ((visible: boolean) => any) | undefined;
303
+ "onUpdate:modelValue"?: ((value: string | number | (string | number)[] | null | undefined) => any) | undefined;
304
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
305
+ visibleChange: (visible: boolean) => any;
306
+ "update:modelValue": (value: string | number | (string | number)[] | null | undefined) => any;
307
+ }, string, {}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
308
+ $slots: {
309
+ [x: string]: ((props: any) => any) | undefined;
310
+ };
311
+ })>;
287
312
  ZyCheckbox: import("./utils/withInstall").SFCWithInstall<{
288
313
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
289
314
  effect?: "" | "checkmark" | "tick";
@@ -569,7 +594,7 @@ export declare const components: {
569
594
  ZyInput: import("./utils/withInstall").SFCWithInstall<{
570
595
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
571
596
  type?: string;
572
- effect?: "focus" | "underline" | "gradient" | "brutalist";
597
+ effect?: "focus" | "underline";
573
598
  label?: string;
574
599
  raised?: boolean;
575
600
  size?: "large" | "default" | "small";
@@ -585,7 +610,7 @@ export declare const components: {
585
610
  }, import("vue").PublicProps, {
586
611
  size: "large" | "default" | "small";
587
612
  type: string;
588
- effect: "focus" | "underline" | "gradient" | "brutalist";
613
+ effect: "focus" | "underline";
589
614
  label: string;
590
615
  disabled: boolean;
591
616
  placeholder: string;
@@ -600,7 +625,7 @@ export declare const components: {
600
625
  Defaults: {};
601
626
  }, Readonly<{
602
627
  type?: string;
603
- effect?: "focus" | "underline" | "gradient" | "brutalist";
628
+ effect?: "focus" | "underline";
604
629
  label?: string;
605
630
  raised?: boolean;
606
631
  size?: "large" | "default" | "small";
@@ -614,7 +639,7 @@ export declare const components: {
614
639
  }>, {}, {}, {}, {}, {
615
640
  size: "large" | "default" | "small";
616
641
  type: string;
617
- effect: "focus" | "underline" | "gradient" | "brutalist";
642
+ effect: "focus" | "underline";
618
643
  label: string;
619
644
  disabled: boolean;
620
645
  placeholder: string;
@@ -626,7 +651,7 @@ export declare const components: {
626
651
  __isSuspense?: never;
627
652
  } & import("vue").ComponentOptionsBase<Readonly<{
628
653
  type?: string;
629
- effect?: "focus" | "underline" | "gradient" | "brutalist";
654
+ effect?: "focus" | "underline";
630
655
  label?: string;
631
656
  raised?: boolean;
632
657
  size?: "large" | "default" | "small";
@@ -642,7 +667,7 @@ export declare const components: {
642
667
  }, string, {
643
668
  size: "large" | "default" | "small";
644
669
  type: string;
645
- effect: "focus" | "underline" | "gradient" | "brutalist";
670
+ effect: "focus" | "underline";
646
671
  label: string;
647
672
  disabled: boolean;
648
673
  placeholder: string;
@@ -1028,12 +1053,20 @@ export declare const components: {
1028
1053
  })>;
1029
1054
  ZySelect: import("./utils/withInstall").SFCWithInstall<{
1030
1055
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
1031
- effect?: "focus" | "underline" | "gradient";
1056
+ effect?: "focus" | "underline";
1032
1057
  raised?: boolean;
1033
1058
  size?: "large" | "default" | "small";
1034
1059
  placeholder?: string;
1035
1060
  clearable?: boolean;
1036
1061
  disabled?: boolean;
1062
+ tree?: boolean;
1063
+ data?: import("./select").ZyTreeNode[];
1064
+ treeProps?: import("./select").ZyTreeProps;
1065
+ nodeKey?: string;
1066
+ showCheckbox?: boolean;
1067
+ checkStrictly?: boolean;
1068
+ defaultExpandAll?: boolean;
1069
+ renderAfterExpand?: boolean;
1037
1070
  } & {
1038
1071
  modelValue?: string | number | undefined | Array<string | number>;
1039
1072
  }> & Readonly<{
@@ -1042,11 +1075,19 @@ export declare const components: {
1042
1075
  "update:modelValue": (value: string | number | (string | number)[] | undefined) => any;
1043
1076
  }, import("vue").PublicProps, {
1044
1077
  size: "large" | "default" | "small";
1045
- effect: "focus" | "underline" | "gradient";
1078
+ effect: "focus" | "underline";
1079
+ data: import("./select").ZyTreeNode[];
1046
1080
  disabled: boolean;
1047
1081
  placeholder: string;
1048
1082
  clearable: boolean;
1049
1083
  raised: boolean;
1084
+ tree: boolean;
1085
+ treeProps: import("./select").ZyTreeProps;
1086
+ nodeKey: string;
1087
+ showCheckbox: boolean;
1088
+ checkStrictly: boolean;
1089
+ defaultExpandAll: boolean;
1090
+ renderAfterExpand: boolean;
1050
1091
  }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
1051
1092
  P: {};
1052
1093
  B: {};
@@ -1055,34 +1096,58 @@ export declare const components: {
1055
1096
  M: {};
1056
1097
  Defaults: {};
1057
1098
  }, Readonly<{
1058
- effect?: "focus" | "underline" | "gradient";
1099
+ effect?: "focus" | "underline";
1059
1100
  raised?: boolean;
1060
1101
  size?: "large" | "default" | "small";
1061
1102
  placeholder?: string;
1062
1103
  clearable?: boolean;
1063
1104
  disabled?: boolean;
1105
+ tree?: boolean;
1106
+ data?: import("./select").ZyTreeNode[];
1107
+ treeProps?: import("./select").ZyTreeProps;
1108
+ nodeKey?: string;
1109
+ showCheckbox?: boolean;
1110
+ checkStrictly?: boolean;
1111
+ defaultExpandAll?: boolean;
1112
+ renderAfterExpand?: boolean;
1064
1113
  } & {
1065
1114
  modelValue?: string | number | undefined | Array<string | number>;
1066
1115
  }> & Readonly<{
1067
1116
  "onUpdate:modelValue"?: ((value: string | number | (string | number)[] | undefined) => any) | undefined;
1068
1117
  }>, {}, {}, {}, {}, {
1069
1118
  size: "large" | "default" | "small";
1070
- effect: "focus" | "underline" | "gradient";
1119
+ effect: "focus" | "underline";
1120
+ data: import("./select").ZyTreeNode[];
1071
1121
  disabled: boolean;
1072
1122
  placeholder: string;
1073
1123
  clearable: boolean;
1074
1124
  raised: boolean;
1125
+ tree: boolean;
1126
+ treeProps: import("./select").ZyTreeProps;
1127
+ nodeKey: string;
1128
+ showCheckbox: boolean;
1129
+ checkStrictly: boolean;
1130
+ defaultExpandAll: boolean;
1131
+ renderAfterExpand: boolean;
1075
1132
  }>;
1076
1133
  __isFragment?: never;
1077
1134
  __isTeleport?: never;
1078
1135
  __isSuspense?: never;
1079
1136
  } & import("vue").ComponentOptionsBase<Readonly<{
1080
- effect?: "focus" | "underline" | "gradient";
1137
+ effect?: "focus" | "underline";
1081
1138
  raised?: boolean;
1082
1139
  size?: "large" | "default" | "small";
1083
1140
  placeholder?: string;
1084
1141
  clearable?: boolean;
1085
1142
  disabled?: boolean;
1143
+ tree?: boolean;
1144
+ data?: import("./select").ZyTreeNode[];
1145
+ treeProps?: import("./select").ZyTreeProps;
1146
+ nodeKey?: string;
1147
+ showCheckbox?: boolean;
1148
+ checkStrictly?: boolean;
1149
+ defaultExpandAll?: boolean;
1150
+ renderAfterExpand?: boolean;
1086
1151
  } & {
1087
1152
  modelValue?: string | number | undefined | Array<string | number>;
1088
1153
  }> & Readonly<{
@@ -1091,18 +1156,109 @@ export declare const components: {
1091
1156
  "update:modelValue": (value: string | number | (string | number)[] | undefined) => any;
1092
1157
  }, string, {
1093
1158
  size: "large" | "default" | "small";
1094
- effect: "focus" | "underline" | "gradient";
1159
+ effect: "focus" | "underline";
1160
+ data: import("./select").ZyTreeNode[];
1095
1161
  disabled: boolean;
1096
1162
  placeholder: string;
1097
1163
  clearable: boolean;
1098
1164
  raised: boolean;
1165
+ tree: boolean;
1166
+ treeProps: import("./select").ZyTreeProps;
1167
+ nodeKey: string;
1168
+ showCheckbox: boolean;
1169
+ checkStrictly: boolean;
1170
+ defaultExpandAll: boolean;
1171
+ renderAfterExpand: boolean;
1099
1172
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
1100
1173
  $slots: {
1101
1174
  [x: string]: ((props: any) => any) | undefined;
1175
+ } & {
1176
+ [x: string]: ((props: any) => any) | undefined;
1102
1177
  } & {
1103
1178
  default?: (props: {}) => any;
1104
1179
  };
1105
1180
  })>;
1181
+ ZySideMenu: {
1182
+ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
1183
+ items?: import("./side-menu").SideMenuItem[];
1184
+ active?: string | null;
1185
+ open?: string[];
1186
+ surface?: "auto" | "brand" | "plain";
1187
+ background?: string;
1188
+ textColor?: string;
1189
+ activeBackground?: string;
1190
+ activeTextColor?: string;
1191
+ label?: string;
1192
+ }> & Readonly<{
1193
+ "onUpdate:open"?: ((value: string[]) => any) | undefined;
1194
+ "onUpdate:active"?: ((value: string) => any) | undefined;
1195
+ onNavigate?: ((payload: import("./side-menu").SideMenuNavigatePayload) => any) | undefined;
1196
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1197
+ "update:open": (value: string[]) => any;
1198
+ "update:active": (value: string) => any;
1199
+ navigate: (payload: import("./side-menu").SideMenuNavigatePayload) => any;
1200
+ }, import("vue").PublicProps, {
1201
+ label: string;
1202
+ items: import("./side-menu").SideMenuItem[];
1203
+ surface: "auto" | "brand" | "plain";
1204
+ }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
1205
+ P: {};
1206
+ B: {};
1207
+ D: {};
1208
+ C: {};
1209
+ M: {};
1210
+ Defaults: {};
1211
+ }, Readonly<{
1212
+ items?: import("./side-menu").SideMenuItem[];
1213
+ active?: string | null;
1214
+ open?: string[];
1215
+ surface?: "auto" | "brand" | "plain";
1216
+ background?: string;
1217
+ textColor?: string;
1218
+ activeBackground?: string;
1219
+ activeTextColor?: string;
1220
+ label?: string;
1221
+ }> & Readonly<{
1222
+ "onUpdate:open"?: ((value: string[]) => any) | undefined;
1223
+ "onUpdate:active"?: ((value: string) => any) | undefined;
1224
+ onNavigate?: ((payload: import("./side-menu").SideMenuNavigatePayload) => any) | undefined;
1225
+ }>, {}, {}, {}, {}, {
1226
+ label: string;
1227
+ items: import("./side-menu").SideMenuItem[];
1228
+ surface: "auto" | "brand" | "plain";
1229
+ }>;
1230
+ __isFragment?: never;
1231
+ __isTeleport?: never;
1232
+ __isSuspense?: never;
1233
+ } & import("vue").ComponentOptionsBase<Readonly<{
1234
+ items?: import("./side-menu").SideMenuItem[];
1235
+ active?: string | null;
1236
+ open?: string[];
1237
+ surface?: "auto" | "brand" | "plain";
1238
+ background?: string;
1239
+ textColor?: string;
1240
+ activeBackground?: string;
1241
+ activeTextColor?: string;
1242
+ label?: string;
1243
+ }> & Readonly<{
1244
+ "onUpdate:open"?: ((value: string[]) => any) | undefined;
1245
+ "onUpdate:active"?: ((value: string) => any) | undefined;
1246
+ onNavigate?: ((payload: import("./side-menu").SideMenuNavigatePayload) => any) | undefined;
1247
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1248
+ "update:open": (value: string[]) => any;
1249
+ "update:active": (value: string) => any;
1250
+ navigate: (payload: import("./side-menu").SideMenuNavigatePayload) => any;
1251
+ }, string, {
1252
+ label: string;
1253
+ items: import("./side-menu").SideMenuItem[];
1254
+ surface: "auto" | "brand" | "plain";
1255
+ }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
1256
+ $slots: {
1257
+ brand?: (props: {}) => any;
1258
+ } & {
1259
+ footer?: (props: {}) => any;
1260
+ };
1261
+ });
1106
1262
  ZySlideVerify: import("./utils/withInstall").SFCWithInstall<import("vue").DefineComponent<{
1107
1263
  gap?: number;
1108
1264
  tolerance?: number;
@@ -1196,6 +1352,8 @@ export declare const components: {
1196
1352
  };
1197
1353
  })>;
1198
1354
  ZySwitch: import("./utils/withInstall").SFCWithInstall<import("vue").DefineComponent<{
1355
+ variant?: "default" | "holographic";
1356
+ size?: "small" | "default" | "large";
1199
1357
  activeText?: string;
1200
1358
  inactiveText?: string;
1201
1359
  disabled?: boolean;
@@ -1205,6 +1363,8 @@ export declare const components: {
1205
1363
  }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1206
1364
  "update:modelValue": (value: boolean) => any;
1207
1365
  }, string, import("vue").PublicProps, Readonly<{
1366
+ variant?: "default" | "holographic";
1367
+ size?: "small" | "default" | "large";
1208
1368
  activeText?: string;
1209
1369
  inactiveText?: string;
1210
1370
  disabled?: boolean;
@@ -1214,8 +1374,10 @@ export declare const components: {
1214
1374
  }> & Readonly<{
1215
1375
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1216
1376
  }>, {
1377
+ size: "small" | "default" | "large";
1217
1378
  label: string;
1218
1379
  disabled: boolean;
1380
+ variant: "default" | "holographic";
1219
1381
  activeText: string;
1220
1382
  inactiveText: string;
1221
1383
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>>;
@@ -1250,6 +1412,85 @@ export declare const components: {
1250
1412
  default?: (props: {}) => any;
1251
1413
  };
1252
1414
  })>;
1415
+ ZyTabs: import("./utils/withInstall").SFCWithInstall<{
1416
+ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
1417
+ items: import("./tabs").ZyTabItem[];
1418
+ ariaLabel?: string;
1419
+ panels?: boolean;
1420
+ stretch?: boolean;
1421
+ } & {
1422
+ modelValue?: string | number;
1423
+ }> & Readonly<{
1424
+ onChange?: ((key: string | number) => any) | undefined;
1425
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
1426
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1427
+ change: (key: string | number) => any;
1428
+ "update:modelValue": (value: string | number) => any;
1429
+ }, import("vue").PublicProps, {
1430
+ ariaLabel: string;
1431
+ stretch: boolean;
1432
+ panels: boolean;
1433
+ }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
1434
+ P: {};
1435
+ B: {};
1436
+ D: {};
1437
+ C: {};
1438
+ M: {};
1439
+ Defaults: {};
1440
+ }, Readonly<{
1441
+ items: import("./tabs").ZyTabItem[];
1442
+ ariaLabel?: string;
1443
+ panels?: boolean;
1444
+ stretch?: boolean;
1445
+ } & {
1446
+ modelValue?: string | number;
1447
+ }> & Readonly<{
1448
+ onChange?: ((key: string | number) => any) | undefined;
1449
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
1450
+ }>, {}, {}, {}, {}, {
1451
+ ariaLabel: string;
1452
+ stretch: boolean;
1453
+ panels: boolean;
1454
+ }>;
1455
+ __isFragment?: never;
1456
+ __isTeleport?: never;
1457
+ __isSuspense?: never;
1458
+ } & import("vue").ComponentOptionsBase<Readonly<{
1459
+ items: import("./tabs").ZyTabItem[];
1460
+ ariaLabel?: string;
1461
+ panels?: boolean;
1462
+ stretch?: boolean;
1463
+ } & {
1464
+ modelValue?: string | number;
1465
+ }> & Readonly<{
1466
+ onChange?: ((key: string | number) => any) | undefined;
1467
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
1468
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1469
+ change: (key: string | number) => any;
1470
+ "update:modelValue": (value: string | number) => any;
1471
+ }, string, {
1472
+ ariaLabel: string;
1473
+ stretch: boolean;
1474
+ panels: boolean;
1475
+ }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
1476
+ $slots: {
1477
+ [x: `panel-${string}`]: ((props: {
1478
+ item: import("./tabs").ZyTabItem | undefined;
1479
+ }) => any) | undefined;
1480
+ [x: `panel-${number}`]: ((props: {
1481
+ item: import("./tabs").ZyTabItem | undefined;
1482
+ }) => any) | undefined;
1483
+ } & {
1484
+ tab?: (props: {
1485
+ item: import("./tabs").ZyTabItem;
1486
+ active: boolean;
1487
+ }) => any;
1488
+ } & {
1489
+ panel?: (props: {
1490
+ item: import("./tabs").ZyTabItem | undefined;
1491
+ }) => any;
1492
+ };
1493
+ })>;
1253
1494
  ZyTag: import("./utils/withInstall").SFCWithInstall<{
1254
1495
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
1255
1496
  type?: "primary" | "success" | "warning" | "danger" | "info";
@@ -1,7 +1,7 @@
1
1
  type __VLS_Props = {
2
2
  type?: string;
3
- /** 承载的动效:focus 聚焦光环 / underline 下划线扫过 / gradient 渐变光晕 / brutalist 粗野硬投影 */
4
- effect?: 'focus' | 'underline' | 'gradient' | 'brutalist';
3
+ /** 承载的动效:focus 聚焦光环 / underline 下划线扫过 */
4
+ effect?: 'focus' | 'underline';
5
5
  /** 浮动标签(配 effect="underline"):逐字错峰上浮并换成强调色,聚焦或有值时留在上方;给了它占位符就交给标签 */
6
6
  label?: string;
7
7
  /** 实色主题下的键帽凸起形态;基础主题不改变外观 */
@@ -27,7 +27,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
27
27
  }>, {
28
28
  size: "large" | "default" | "small";
29
29
  type: string;
30
- effect: "focus" | "underline" | "gradient" | "brutalist";
30
+ effect: "focus" | "underline";
31
31
  label: string;
32
32
  disabled: boolean;
33
33
  placeholder: string;
@@ -1,7 +1,7 @@
1
1
  export declare const ZyInput: import("../utils/withInstall").SFCWithInstall<{
2
2
  new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<{
3
3
  type?: string;
4
- effect?: "focus" | "underline" | "gradient" | "brutalist";
4
+ effect?: "focus" | "underline";
5
5
  label?: string;
6
6
  raised?: boolean;
7
7
  size?: "large" | "default" | "small";
@@ -17,7 +17,7 @@ export declare const ZyInput: import("../utils/withInstall").SFCWithInstall<{
17
17
  }, import("vue").PublicProps, {
18
18
  size: "large" | "default" | "small";
19
19
  type: string;
20
- effect: "focus" | "underline" | "gradient" | "brutalist";
20
+ effect: "focus" | "underline";
21
21
  label: string;
22
22
  disabled: boolean;
23
23
  placeholder: string;
@@ -32,7 +32,7 @@ export declare const ZyInput: import("../utils/withInstall").SFCWithInstall<{
32
32
  Defaults: {};
33
33
  }, Readonly<{
34
34
  type?: string;
35
- effect?: "focus" | "underline" | "gradient" | "brutalist";
35
+ effect?: "focus" | "underline";
36
36
  label?: string;
37
37
  raised?: boolean;
38
38
  size?: "large" | "default" | "small";
@@ -46,7 +46,7 @@ export declare const ZyInput: import("../utils/withInstall").SFCWithInstall<{
46
46
  }>, {}, {}, {}, {}, {
47
47
  size: "large" | "default" | "small";
48
48
  type: string;
49
- effect: "focus" | "underline" | "gradient" | "brutalist";
49
+ effect: "focus" | "underline";
50
50
  label: string;
51
51
  disabled: boolean;
52
52
  placeholder: string;
@@ -58,7 +58,7 @@ export declare const ZyInput: import("../utils/withInstall").SFCWithInstall<{
58
58
  __isSuspense?: never;
59
59
  } & import("vue").ComponentOptionsBase<Readonly<{
60
60
  type?: string;
61
- effect?: "focus" | "underline" | "gradient" | "brutalist";
61
+ effect?: "focus" | "underline";
62
62
  label?: string;
63
63
  raised?: boolean;
64
64
  size?: "large" | "default" | "small";
@@ -74,7 +74,7 @@ export declare const ZyInput: import("../utils/withInstall").SFCWithInstall<{
74
74
  }, string, {
75
75
  size: "large" | "default" | "small";
76
76
  type: string;
77
- effect: "focus" | "underline" | "gradient" | "brutalist";
77
+ effect: "focus" | "underline";
78
78
  label: string;
79
79
  disabled: boolean;
80
80
  placeholder: string;
@@ -1,7 +1,7 @@
1
1
  import type { Component } from 'vue';
2
2
  /** 图标:本库图标名(`src/assets/icons` 的文件名)或任意组件 */
3
3
  export type MegaMenuIcon = string | Component;
4
- /** 面板里的一个大块(两列网格 / 单列列表) */
4
+ /** 面板里的一个大块(自适应列网格 / 单列列表) */
5
5
  export interface MegaMenuLink {
6
6
  title: string;
7
7
  desc?: string;
@@ -33,8 +33,8 @@ export interface MegaMenuCard {
33
33
  /** 面板:三种布局覆盖常见的大菜单 */
34
34
  export interface MegaMenuPanel {
35
35
  /**
36
- * grid = 两列大块(组件目录那类)· list = 单列大块(场景那类)·
37
- * groups = 左引导卡 + 右分组(资源那类)
36
+ * grid = 按子项数量自动 1 / 2 / 3 列的图文网格(1–4 单列,5–12 双列,≥13 三列;无 links 的自定义插槽保留双列)·
37
+ * list = 单列大块(场景那类)· groups = 左引导卡 + 右分组(资源那类)
38
38
  */
39
39
  layout?: 'grid' | 'list' | 'groups';
40
40
  links?: MegaMenuLink[];
@@ -48,7 +48,7 @@ export interface MegaMenuPanel {
48
48
  href?: string;
49
49
  };
50
50
  };
51
- /** 面板宽度(px),缺省按布局 620 / 380 / 600 */
51
+ /** 面板宽度(px);缺省 grid 按列数 360 / 620 / 840,list 380,groups 600 */
52
52
  width?: number;
53
53
  /** 面板相对触发器的左偏移(px),缺省 groups 为 -150、其余 0 */
54
54
  offset?: number;