naive-ui 2.32.2 → 2.33.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.
Files changed (121) hide show
  1. package/dist/index.js +40930 -2060
  2. package/dist/index.prod.js +2 -2
  3. package/es/_internal/select-menu/src/SelectOption.js +1 -2
  4. package/es/_utils/cssr/index.js +1 -1
  5. package/es/card/src/Card.d.ts +24 -1
  6. package/es/card/src/Card.js +8 -4
  7. package/es/card/src/styles/index.cssr.js +17 -8
  8. package/es/card/styles/dark.js +3 -1
  9. package/es/card/styles/light.d.ts +2 -0
  10. package/es/card/styles/light.js +1 -1
  11. package/es/countdown/src/Countdown.js +0 -5
  12. package/es/data-table/src/use-sorter.js +1 -1
  13. package/es/dialog/index.d.ts +1 -1
  14. package/es/dialog/index.js +1 -1
  15. package/es/dialog/src/DialogEnvironment.d.ts +3 -0
  16. package/es/dialog/src/DialogEnvironment.js +2 -2
  17. package/es/dialog/src/DialogProvider.d.ts +4 -0
  18. package/es/dialog/src/DialogProvider.js +2 -1
  19. package/es/dialog/src/composables.d.ts +4 -0
  20. package/es/dialog/src/composables.js +17 -0
  21. package/es/dialog/src/context.d.ts +2 -1
  22. package/es/dialog/src/context.js +1 -0
  23. package/es/form/src/FormItem.d.ts +1 -0
  24. package/es/form/src/FormItem.js +28 -18
  25. package/es/form/src/styles/form-item.cssr.js +31 -19
  26. package/es/form/src/utils.d.ts +1 -0
  27. package/es/form/src/utils.js +15 -10
  28. package/es/input/src/utils.js +1 -1
  29. package/es/locales/common/frFR.js +8 -11
  30. package/es/menu/src/Menu.d.ts +13 -0
  31. package/es/menu/src/Menu.js +7 -1
  32. package/es/modal/src/BodyWrapper.d.ts +2 -0
  33. package/es/modal/src/Modal.d.ts +18 -0
  34. package/es/modal/src/presetProps.d.ts +1 -1
  35. package/es/modal/styles/light.d.ts +2 -0
  36. package/es/pagination/src/Pagination.js +5 -1
  37. package/es/radio/src/Radio.d.ts +6 -32
  38. package/es/radio/src/Radio.js +5 -5
  39. package/es/radio/src/RadioButton.d.ts +6 -9
  40. package/es/radio/src/RadioButton.js +7 -11
  41. package/es/radio/src/RadioGroup.d.ts +8 -8
  42. package/es/radio/src/RadioGroup.js +2 -2
  43. package/es/radio/src/interface.d.ts +2 -2
  44. package/es/radio/src/use-radio.d.ts +4 -32
  45. package/es/radio/src/use-radio.js +12 -10
  46. package/es/rate/src/Rate.d.ts +23 -14
  47. package/es/rate/src/Rate.js +32 -12
  48. package/es/rate/src/interface.d.ts +2 -0
  49. package/es/rate/src/interface.js +1 -0
  50. package/es/rate/src/styles/index.cssr.js +13 -13
  51. package/es/slider/src/Slider.d.ts +13 -0
  52. package/es/slider/src/Slider.js +6 -3
  53. package/es/theme-editor/src/ThemeEditor.d.ts +4 -0
  54. package/es/theme-editor/src/ThemeEditor.js +25 -10
  55. package/es/tree/src/styles/index.cssr.js +4 -3
  56. package/es/version.d.ts +1 -1
  57. package/es/version.js +1 -1
  58. package/lib/_internal/select-menu/src/SelectOption.js +1 -2
  59. package/lib/_utils/cssr/index.js +2 -5
  60. package/lib/card/src/Card.d.ts +24 -1
  61. package/lib/card/src/Card.js +8 -4
  62. package/lib/card/src/styles/index.cssr.js +17 -8
  63. package/lib/card/styles/dark.js +3 -1
  64. package/lib/card/styles/light.d.ts +2 -0
  65. package/lib/card/styles/light.js +1 -1
  66. package/lib/countdown/src/Countdown.js +0 -5
  67. package/lib/data-table/src/use-sorter.js +1 -1
  68. package/lib/dialog/index.d.ts +1 -1
  69. package/lib/dialog/index.js +4 -3
  70. package/lib/dialog/src/DialogEnvironment.d.ts +3 -0
  71. package/lib/dialog/src/DialogEnvironment.js +2 -2
  72. package/lib/dialog/src/DialogProvider.d.ts +4 -0
  73. package/lib/dialog/src/DialogProvider.js +1 -0
  74. package/lib/dialog/src/composables.d.ts +4 -0
  75. package/lib/dialog/src/{use-dialog.js → composables.js} +9 -1
  76. package/lib/dialog/src/context.d.ts +2 -1
  77. package/lib/dialog/src/context.js +2 -1
  78. package/lib/form/src/FormItem.d.ts +1 -0
  79. package/lib/form/src/FormItem.js +28 -18
  80. package/lib/form/src/styles/form-item.cssr.js +31 -19
  81. package/lib/form/src/utils.d.ts +1 -0
  82. package/lib/form/src/utils.js +15 -10
  83. package/lib/input/src/utils.js +1 -1
  84. package/lib/locales/common/frFR.js +8 -11
  85. package/lib/menu/src/Menu.d.ts +13 -0
  86. package/lib/menu/src/Menu.js +7 -1
  87. package/lib/modal/src/BodyWrapper.d.ts +2 -0
  88. package/lib/modal/src/Modal.d.ts +18 -0
  89. package/lib/modal/src/presetProps.d.ts +1 -1
  90. package/lib/modal/styles/light.d.ts +2 -0
  91. package/lib/pagination/src/Pagination.js +5 -1
  92. package/lib/radio/src/Radio.d.ts +6 -32
  93. package/lib/radio/src/Radio.js +5 -5
  94. package/lib/radio/src/RadioButton.d.ts +6 -9
  95. package/lib/radio/src/RadioButton.js +7 -14
  96. package/lib/radio/src/RadioGroup.d.ts +8 -8
  97. package/lib/radio/src/RadioGroup.js +2 -2
  98. package/lib/radio/src/interface.d.ts +2 -2
  99. package/lib/radio/src/use-radio.d.ts +4 -32
  100. package/lib/radio/src/use-radio.js +11 -9
  101. package/lib/rate/src/Rate.d.ts +23 -14
  102. package/lib/rate/src/Rate.js +32 -12
  103. package/lib/rate/src/interface.d.ts +2 -0
  104. package/lib/rate/src/interface.js +2 -0
  105. package/lib/rate/src/styles/index.cssr.js +13 -13
  106. package/lib/slider/src/Slider.d.ts +13 -0
  107. package/lib/slider/src/Slider.js +6 -3
  108. package/lib/theme-editor/src/ThemeEditor.d.ts +4 -0
  109. package/lib/theme-editor/src/ThemeEditor.js +25 -10
  110. package/lib/tree/src/styles/index.cssr.js +4 -3
  111. package/lib/version.d.ts +1 -1
  112. package/lib/version.js +1 -1
  113. package/package.json +4 -4
  114. package/web-types.json +36 -5
  115. package/es/countdown/src/utils.d.ts +0 -0
  116. package/es/countdown/src/utils.js +0 -1
  117. package/es/dialog/src/use-dialog.d.ts +0 -2
  118. package/es/dialog/src/use-dialog.js +0 -10
  119. package/lib/countdown/src/utils.d.ts +0 -0
  120. package/lib/countdown/src/utils.js +0 -1
  121. package/lib/dialog/src/use-dialog.d.ts +0 -2
@@ -17,6 +17,18 @@ export function formItemSize(props) {
17
17
  // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
18
18
  export function formItemMisc(props) {
19
19
  const NForm = inject(formInjectionKey, null);
20
+ const mergedLabelPlacementRef = computed(() => {
21
+ const { labelPlacement } = props;
22
+ if (labelPlacement !== undefined)
23
+ return labelPlacement;
24
+ if (NForm === null || NForm === void 0 ? void 0 : NForm.props.labelPlacement)
25
+ return NForm.props.labelPlacement;
26
+ return 'top';
27
+ });
28
+ const isAutoLabelWidthRef = computed(() => {
29
+ return (mergedLabelPlacementRef.value === 'left' &&
30
+ (props.labelWidth === 'auto' || (NForm === null || NForm === void 0 ? void 0 : NForm.props.labelWidth) === 'auto'));
31
+ });
20
32
  const mergedLabelWidthRef = computed(() => {
21
33
  if (mergedLabelPlacementRef.value === 'top')
22
34
  return;
@@ -24,7 +36,7 @@ export function formItemMisc(props) {
24
36
  if (labelWidth !== undefined && labelWidth !== 'auto') {
25
37
  return formatLength(labelWidth);
26
38
  }
27
- if (labelWidth === 'auto' || (NForm === null || NForm === void 0 ? void 0 : NForm.props.labelWidth) === 'auto') {
39
+ if (isAutoLabelWidthRef.value) {
28
40
  const autoComputedWidth = NForm === null || NForm === void 0 ? void 0 : NForm.maxChildLabelWidthRef.value;
29
41
  if (autoComputedWidth !== undefined) {
30
42
  return formatLength(autoComputedWidth);
@@ -38,14 +50,6 @@ export function formItemMisc(props) {
38
50
  }
39
51
  return undefined;
40
52
  });
41
- const mergedLabelPlacementRef = computed(() => {
42
- const { labelPlacement } = props;
43
- if (labelPlacement !== undefined)
44
- return labelPlacement;
45
- if (NForm === null || NForm === void 0 ? void 0 : NForm.props.labelPlacement)
46
- return NForm.props.labelPlacement;
47
- return 'top';
48
- });
49
53
  const mergedLabelAlignRef = computed(() => {
50
54
  const { labelAlign } = props;
51
55
  if (labelAlign)
@@ -110,7 +114,8 @@ export function formItemMisc(props) {
110
114
  mergedRequireMarkPlacement: mergedRequireMarkPlacementRef,
111
115
  mergedValidationStatus: mergedValidationStatusRef,
112
116
  mergedShowFeedback: mergedShowFeedbackRef,
113
- mergedShowLabel: mergedShowLabelRef
117
+ mergedShowLabel: mergedShowLabelRef,
118
+ isAutoLabelWidth: isAutoLabelWidthRef
114
119
  };
115
120
  }
116
121
  // eslint-disable-next-line @typescript-eslint/explicit-function-return-type
@@ -14,7 +14,7 @@ export function useCursor(inputElRef) {
14
14
  const selectionRef = ref(null);
15
15
  function recordCursor() {
16
16
  const { value: input } = inputElRef;
17
- if (!input || !input.focus) {
17
+ if (!(input === null || input === void 0 ? void 0 : input.focus)) {
18
18
  reset();
19
19
  return;
20
20
  }
@@ -41,9 +41,8 @@ const frFR = {
41
41
  endDatePlaceholder: 'Date de fin',
42
42
  startDatetimePlaceholder: 'Date et heure de début',
43
43
  endDatetimePlaceholder: 'Date et heure de fin',
44
- // FIXME: translation needed
45
- startMonthPlaceholder: 'Start Month',
46
- endMonthPlaceholder: 'End Month',
44
+ startMonthPlaceholder: 'Mois de début',
45
+ endMonthPlaceholder: 'Mois de fin',
47
46
  monthBeforeYear: true,
48
47
  firstDayOfWeek: 1,
49
48
  today: "Aujourd'hui"
@@ -58,13 +57,12 @@ const frFR = {
58
57
  sourceTitle: 'Source',
59
58
  targetTitle: 'Cible'
60
59
  },
61
- // TODO: translation
62
60
  Transfer: {
63
- selectAll: 'Select all',
64
- unselectAll: 'Unselect all',
65
- clearAll: 'Clear',
66
- total: (num) => `Total ${num} items`,
67
- selected: (num) => `${num} items selected`
61
+ selectAll: 'Sélectionner tout',
62
+ unselectAll: 'Désélectionner tout',
63
+ clearAll: 'Effacer',
64
+ total: (num) => `Total ${num} éléments`,
65
+ selected: (num) => `${num} éléments sélectionnés`
68
66
  },
69
67
  Empty: {
70
68
  description: 'Aucune donnée'
@@ -115,8 +113,7 @@ const frFR = {
115
113
  tipZoomOut: 'Dézoomer',
116
114
  tipZoomIn: 'Zoomer',
117
115
  tipClose: 'Fermer (Échap.)',
118
- // TODO: translation
119
- tipOriginalSize: 'Zoom to original size'
116
+ tipOriginalSize: 'Zoom à la taille originale'
120
117
  }
121
118
  };
122
119
  export default frFR;
@@ -42,6 +42,10 @@ export declare const menuProps: {
42
42
  readonly type: StringConstructor;
43
43
  readonly default: "children";
44
44
  };
45
+ readonly disabledField: {
46
+ readonly type: StringConstructor;
47
+ readonly default: "disabled";
48
+ };
45
49
  readonly defaultExpandAll: BooleanConstructor;
46
50
  readonly defaultExpandedKeys: PropType<Key[]>;
47
51
  readonly expandedKeys: PropType<Key[]>;
@@ -648,6 +652,10 @@ declare const _default: import("vue").DefineComponent<{
648
652
  readonly type: StringConstructor;
649
653
  readonly default: "children";
650
654
  };
655
+ readonly disabledField: {
656
+ readonly type: StringConstructor;
657
+ readonly default: "disabled";
658
+ };
651
659
  readonly defaultExpandAll: BooleanConstructor;
652
660
  readonly defaultExpandedKeys: PropType<Key[]>;
653
661
  readonly expandedKeys: PropType<Key[]>;
@@ -1585,6 +1593,10 @@ declare const _default: import("vue").DefineComponent<{
1585
1593
  readonly type: StringConstructor;
1586
1594
  readonly default: "children";
1587
1595
  };
1596
+ readonly disabledField: {
1597
+ readonly type: StringConstructor;
1598
+ readonly default: "disabled";
1599
+ };
1588
1600
  readonly defaultExpandAll: BooleanConstructor;
1589
1601
  readonly defaultExpandedKeys: PropType<Key[]>;
1590
1602
  readonly expandedKeys: PropType<Key[]>;
@@ -2163,6 +2175,7 @@ declare const _default: import("vue").DefineComponent<{
2163
2175
  readonly defaultExpandAll: boolean;
2164
2176
  readonly indent: number;
2165
2177
  readonly inverted: boolean;
2178
+ readonly disabledField: string;
2166
2179
  readonly accordion: boolean;
2167
2180
  readonly collapsed: boolean | undefined;
2168
2181
  readonly collapsedWidth: number;
@@ -36,6 +36,9 @@ export const menuProps = Object.assign(Object.assign({}, useTheme.props), { opti
36
36
  }, childrenField: {
37
37
  type: String,
38
38
  default: 'children'
39
+ }, disabledField: {
40
+ type: String,
41
+ default: 'disabled'
39
42
  }, defaultExpandAll: Boolean, defaultExpandedKeys: Array, expandedKeys: Array, value: [String, Number], defaultValue: {
40
43
  type: [String, Number],
41
44
  default: null
@@ -78,11 +81,14 @@ export default defineComponent({
78
81
  return false;
79
82
  });
80
83
  const treeMateRef = computed(() => {
81
- const { keyField, childrenField } = props;
84
+ const { keyField, childrenField, disabledField } = props;
82
85
  return createTreeMate(props.items || props.options, {
83
86
  getChildren(node) {
84
87
  return node[childrenField];
85
88
  },
89
+ getDisabled(node) {
90
+ return node[disabledField];
91
+ },
86
92
  getKey(node) {
87
93
  var _a;
88
94
  return (_a = node[keyField]) !== null && _a !== void 0 ? _a : node.name;
@@ -441,6 +441,8 @@ declare const _default: import("vue").DefineComponent<{
441
441
  colorPopover: string;
442
442
  colorTarget: string;
443
443
  colorEmbedded: string;
444
+ colorEmbeddedModal: string;
445
+ colorEmbeddedPopover: string;
444
446
  textColor: string;
445
447
  titleTextColor: string;
446
448
  borderColor: string;
@@ -347,6 +347,8 @@ export declare const modalProps: {
347
347
  colorPopover: string;
348
348
  colorTarget: string;
349
349
  colorEmbedded: string;
350
+ colorEmbeddedModal: string;
351
+ colorEmbeddedPopover: string;
350
352
  textColor: string;
351
353
  titleTextColor: string;
352
354
  borderColor: string;
@@ -629,6 +631,8 @@ export declare const modalProps: {
629
631
  colorPopover: string;
630
632
  colorTarget: string;
631
633
  colorEmbedded: string;
634
+ colorEmbeddedModal: string;
635
+ colorEmbeddedPopover: string;
632
636
  textColor: string;
633
637
  titleTextColor: string;
634
638
  borderColor: string;
@@ -911,6 +915,8 @@ export declare const modalProps: {
911
915
  colorPopover: string;
912
916
  colorTarget: string;
913
917
  colorEmbedded: string;
918
+ colorEmbeddedModal: string;
919
+ colorEmbeddedPopover: string;
914
920
  textColor: string;
915
921
  titleTextColor: string;
916
922
  borderColor: string;
@@ -1289,6 +1295,8 @@ declare const _default: import("vue").DefineComponent<{
1289
1295
  colorPopover: string;
1290
1296
  colorTarget: string;
1291
1297
  colorEmbedded: string;
1298
+ colorEmbeddedModal: string;
1299
+ colorEmbeddedPopover: string;
1292
1300
  textColor: string;
1293
1301
  titleTextColor: string;
1294
1302
  borderColor: string;
@@ -1571,6 +1579,8 @@ declare const _default: import("vue").DefineComponent<{
1571
1579
  colorPopover: string;
1572
1580
  colorTarget: string;
1573
1581
  colorEmbedded: string;
1582
+ colorEmbeddedModal: string;
1583
+ colorEmbeddedPopover: string;
1574
1584
  textColor: string;
1575
1585
  titleTextColor: string;
1576
1586
  borderColor: string;
@@ -1853,6 +1863,8 @@ declare const _default: import("vue").DefineComponent<{
1853
1863
  colorPopover: string;
1854
1864
  colorTarget: string;
1855
1865
  colorEmbedded: string;
1866
+ colorEmbeddedModal: string;
1867
+ colorEmbeddedPopover: string;
1856
1868
  textColor: string;
1857
1869
  titleTextColor: string;
1858
1870
  borderColor: string;
@@ -2251,6 +2263,8 @@ declare const _default: import("vue").DefineComponent<{
2251
2263
  colorPopover: string;
2252
2264
  colorTarget: string;
2253
2265
  colorEmbedded: string;
2266
+ colorEmbeddedModal: string;
2267
+ colorEmbeddedPopover: string;
2254
2268
  textColor: string;
2255
2269
  titleTextColor: string;
2256
2270
  borderColor: string;
@@ -2533,6 +2547,8 @@ declare const _default: import("vue").DefineComponent<{
2533
2547
  colorPopover: string;
2534
2548
  colorTarget: string;
2535
2549
  colorEmbedded: string;
2550
+ colorEmbeddedModal: string;
2551
+ colorEmbeddedPopover: string;
2536
2552
  textColor: string;
2537
2553
  titleTextColor: string;
2538
2554
  borderColor: string;
@@ -2815,6 +2831,8 @@ declare const _default: import("vue").DefineComponent<{
2815
2831
  colorPopover: string;
2816
2832
  colorTarget: string;
2817
2833
  colorEmbedded: string;
2834
+ colorEmbeddedModal: string;
2835
+ colorEmbeddedPopover: string;
2818
2836
  textColor: string;
2819
2837
  titleTextColor: string;
2820
2838
  borderColor: string;
@@ -41,5 +41,5 @@ declare const presetProps: {
41
41
  hoverable: BooleanConstructor;
42
42
  role: StringConstructor;
43
43
  };
44
- declare const presetPropsKeys: ("type" | "content" | "size" | "icon" | "title" | "role" | "action" | "positiveText" | "negativeText" | "loading" | "bordered" | "showIcon" | "closable" | "contentStyle" | "onClose" | "headerStyle" | "footerStyle" | "iconPlacement" | "hoverable" | "headerExtraStyle" | "embedded" | "segmented" | "positiveButtonProps" | "negativeButtonProps" | "onPositiveClick" | "onNegativeClick")[];
44
+ declare const presetPropsKeys: ("type" | "content" | "size" | "icon" | "title" | "role" | "action" | "positiveText" | "negativeText" | "loading" | "bordered" | "showIcon" | "closable" | "contentStyle" | "onClose" | "headerStyle" | "footerStyle" | "iconPlacement" | "hoverable" | "embedded" | "headerExtraStyle" | "segmented" | "positiveButtonProps" | "negativeButtonProps" | "onPositiveClick" | "onNegativeClick")[];
45
45
  export { presetProps, presetPropsKeys };
@@ -258,6 +258,8 @@ declare const modalLight: import("../../_mixins").Theme<"Modal", {
258
258
  colorPopover: string;
259
259
  colorTarget: string;
260
260
  colorEmbedded: string;
261
+ colorEmbeddedModal: string;
262
+ colorEmbeddedPopover: string;
261
263
  textColor: string;
262
264
  titleTextColor: string;
263
265
  borderColor: string;
@@ -92,10 +92,14 @@ export default defineComponent({
92
92
  const showFastForwardMenuRef = ref(false);
93
93
  const showFastBackwardMenuRef = ref(false);
94
94
  const handleFastForwardMouseenter = () => {
95
+ if (props.disabled)
96
+ return;
95
97
  fastForwardActiveRef.value = true;
96
98
  disableTransitionOneTick();
97
99
  };
98
100
  const handleFastForwardMouseleave = () => {
101
+ if (props.disabled)
102
+ return;
99
103
  fastForwardActiveRef.value = false;
100
104
  disableTransitionOneTick();
101
105
  };
@@ -501,7 +505,7 @@ export default defineComponent({
501
505
  ? 'fast-backward'
502
506
  : 'fast-forward'
503
507
  : pageItem.type;
504
- return (h(NPopselect, { key: key, trigger: "hover", virtualScroll: true, style: { width: '60px' }, theme: mergedTheme.peers.Popselect, themeOverrides: mergedTheme.peerOverrides.Popselect, builtinThemeOverrides: {
508
+ return (h(NPopselect, { key: key, disabled: disabled, trigger: "hover", virtualScroll: true, style: { width: '60px' }, theme: mergedTheme.peers.Popselect, themeOverrides: mergedTheme.peerOverrides.Popselect, builtinThemeOverrides: {
505
509
  peers: {
506
510
  InternalSelectMenu: {
507
511
  height: 'calc(var(--n-option-height) * 4.6)'
@@ -1,35 +1,11 @@
1
1
  import type { ExtractPublicPropTypes } from '../../_utils';
2
- import useRadio from './use-radio';
3
- export declare const radioProps: {
4
- readonly name: StringConstructor;
5
- readonly value: {
6
- readonly type: import("vue").PropType<string | number>;
7
- readonly default: "on";
8
- };
9
- readonly checked: {
10
- readonly type: import("vue").PropType<boolean | undefined>;
11
- readonly default: undefined;
12
- };
13
- readonly defaultChecked: BooleanConstructor;
14
- readonly disabled: {
15
- readonly type: import("vue").PropType<boolean | undefined>;
16
- readonly default: undefined;
17
- };
18
- readonly label: StringConstructor;
19
- readonly size: import("vue").PropType<"small" | "medium" | "large">;
20
- readonly onUpdateChecked: import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void> | undefined>;
21
- readonly 'onUpdate:checked': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void> | undefined>;
22
- readonly checkedValue: {
23
- readonly type: import("vue").PropType<boolean | undefined>;
24
- readonly validator: () => boolean;
25
- readonly default: undefined;
26
- };
27
- };
28
- export declare type RadioProps = ExtractPublicPropTypes<typeof useRadio.props>;
2
+ import { radioProps } from './use-radio';
3
+ export { radioProps };
4
+ export declare type RadioProps = ExtractPublicPropTypes<typeof radioProps>;
29
5
  declare const _default: import("vue").DefineComponent<{
30
6
  name: StringConstructor;
31
7
  value: {
32
- readonly type: import("vue").PropType<string | number>;
8
+ readonly type: import("vue").PropType<string | number | boolean>;
33
9
  readonly default: "on";
34
10
  };
35
11
  checked: {
@@ -47,7 +23,6 @@ declare const _default: import("vue").DefineComponent<{
47
23
  'onUpdate:checked': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void> | undefined>;
48
24
  checkedValue: {
49
25
  readonly type: import("vue").PropType<boolean | undefined>;
50
- readonly validator: () => boolean;
51
26
  readonly default: undefined;
52
27
  };
53
28
  theme: import("vue").PropType<import("../../_mixins").Theme<"Radio", {
@@ -186,7 +161,7 @@ declare const _default: import("vue").DefineComponent<{
186
161
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
187
162
  name: StringConstructor;
188
163
  value: {
189
- readonly type: import("vue").PropType<string | number>;
164
+ readonly type: import("vue").PropType<string | number | boolean>;
190
165
  readonly default: "on";
191
166
  };
192
167
  checked: {
@@ -204,7 +179,6 @@ declare const _default: import("vue").DefineComponent<{
204
179
  'onUpdate:checked': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void> | undefined>;
205
180
  checkedValue: {
206
181
  readonly type: import("vue").PropType<boolean | undefined>;
207
- readonly validator: () => boolean;
208
182
  readonly default: undefined;
209
183
  };
210
184
  theme: import("vue").PropType<import("../../_mixins").Theme<"Radio", {
@@ -319,7 +293,7 @@ declare const _default: import("vue").DefineComponent<{
319
293
  labelPadding: string;
320
294
  }, any>>>;
321
295
  }>>, {
322
- value: string | number;
296
+ value: string | number | boolean;
323
297
  disabled: boolean | undefined;
324
298
  checked: boolean | undefined;
325
299
  defaultChecked: boolean;
@@ -1,16 +1,16 @@
1
1
  import { h, defineComponent, computed } from 'vue';
2
+ import { useRtl } from '../../_mixins/use-rtl';
2
3
  import { useConfig, useTheme, useThemeClass } from '../../_mixins';
3
4
  import { createKey, resolveWrappedSlot } from '../../_utils';
4
5
  import { radioLight } from '../styles';
5
- import useRadio from './use-radio';
6
+ import { setup, radioProps } from './use-radio';
6
7
  import style from './styles/radio.cssr';
7
- import { useRtl } from '../../_mixins/use-rtl';
8
- export const radioProps = useRadio.props;
8
+ export { radioProps };
9
9
  export default defineComponent({
10
10
  name: 'Radio',
11
- props: Object.assign(Object.assign({}, useTheme.props), useRadio.props),
11
+ props: Object.assign(Object.assign({}, useTheme.props), radioProps),
12
12
  setup(props) {
13
- const radio = useRadio(props);
13
+ const radio = setup(props);
14
14
  const themeRef = useTheme('Radio', '-radio', style, radioLight, props, radio.mergedClsPrefix);
15
15
  const cssVarsRef = computed(() => {
16
16
  const { mergedSize: { value: size } } = radio;
@@ -1,9 +1,9 @@
1
1
  import { ExtractPublicPropTypes } from '../../_utils';
2
- import useRadio from './use-radio';
2
+ import { radioProps } from './use-radio';
3
3
  export declare const radioButtonProps: {
4
4
  readonly name: StringConstructor;
5
5
  readonly value: {
6
- readonly type: import("vue").PropType<string | number>;
6
+ readonly type: import("vue").PropType<string | number | boolean>;
7
7
  readonly default: "on";
8
8
  };
9
9
  readonly checked: {
@@ -21,15 +21,14 @@ export declare const radioButtonProps: {
21
21
  readonly 'onUpdate:checked': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void> | undefined>;
22
22
  readonly checkedValue: {
23
23
  readonly type: import("vue").PropType<boolean | undefined>;
24
- readonly validator: () => boolean;
25
24
  readonly default: undefined;
26
25
  };
27
26
  };
28
- export declare type RadioButtonProps = ExtractPublicPropTypes<typeof useRadio.props>;
27
+ export declare type RadioButtonProps = ExtractPublicPropTypes<typeof radioProps>;
29
28
  declare const _default: import("vue").DefineComponent<{
30
29
  readonly name: StringConstructor;
31
30
  readonly value: {
32
- readonly type: import("vue").PropType<string | number>;
31
+ readonly type: import("vue").PropType<string | number | boolean>;
33
32
  readonly default: "on";
34
33
  };
35
34
  readonly checked: {
@@ -47,13 +46,12 @@ declare const _default: import("vue").DefineComponent<{
47
46
  readonly 'onUpdate:checked': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void> | undefined>;
48
47
  readonly checkedValue: {
49
48
  readonly type: import("vue").PropType<boolean | undefined>;
50
- readonly validator: () => boolean;
51
49
  readonly default: undefined;
52
50
  };
53
51
  }, import("./use-radio").UseRadio, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
54
52
  readonly name: StringConstructor;
55
53
  readonly value: {
56
- readonly type: import("vue").PropType<string | number>;
54
+ readonly type: import("vue").PropType<string | number | boolean>;
57
55
  readonly default: "on";
58
56
  };
59
57
  readonly checked: {
@@ -71,11 +69,10 @@ declare const _default: import("vue").DefineComponent<{
71
69
  readonly 'onUpdate:checked': import("vue").PropType<import("../../_utils").MaybeArray<(value: boolean) => void> | undefined>;
72
70
  readonly checkedValue: {
73
71
  readonly type: import("vue").PropType<boolean | undefined>;
74
- readonly validator: () => boolean;
75
72
  readonly default: undefined;
76
73
  };
77
74
  }>>, {
78
- readonly value: string | number;
75
+ readonly value: string | number | boolean;
79
76
  readonly disabled: boolean | undefined;
80
77
  readonly checked: boolean | undefined;
81
78
  readonly defaultChecked: boolean;
@@ -1,22 +1,18 @@
1
1
  import { h, defineComponent } from 'vue';
2
2
  import { resolveWrappedSlot } from '../../_utils';
3
- import useRadio from './use-radio';
4
- export const radioButtonProps = useRadio.props;
3
+ import { setup, radioProps } from './use-radio';
4
+ export const radioButtonProps = radioProps;
5
5
  export default defineComponent({
6
6
  name: 'RadioButton',
7
- props: useRadio.props,
8
- setup(props) {
9
- return useRadio(props);
10
- },
7
+ props: radioProps,
8
+ setup,
11
9
  render() {
12
10
  const { mergedClsPrefix } = this;
13
11
  return (h("label", { class: [
14
12
  `${mergedClsPrefix}-radio-button`,
15
- {
16
- [`${mergedClsPrefix}-radio-button--disabled`]: this.mergedDisabled,
17
- [`${mergedClsPrefix}-radio-button--checked`]: this.renderSafeChecked,
18
- [`${mergedClsPrefix}-radio-button--focus`]: this.focus
19
- }
13
+ this.mergedDisabled && `${mergedClsPrefix}-radio-button--disabled`,
14
+ this.renderSafeChecked && `${mergedClsPrefix}-radio-button--checked`,
15
+ this.focus && [`${mergedClsPrefix}-radio-button--focus`]
20
16
  ] },
21
17
  h("input", { ref: "inputRef", type: "radio", class: `${mergedClsPrefix}-radio-input`, value: this.value, name: this.mergedName, checked: this.renderSafeChecked, disabled: this.mergedDisabled, onChange: this.handleRadioInputChange, onFocus: this.handleRadioInputFocus, onBlur: this.handleRadioInputBlur }),
22
18
  h("div", { class: `${mergedClsPrefix}-radio-button__state-border` }),
@@ -3,9 +3,9 @@ import type { ExtractPublicPropTypes, MaybeArray } from '../../_utils';
3
3
  import { OnUpdateValue } from './interface';
4
4
  export declare const radioGroupProps: {
5
5
  readonly name: StringConstructor;
6
- readonly value: PropType<string | number | null>;
6
+ readonly value: PropType<string | number | boolean | null>;
7
7
  readonly defaultValue: {
8
- readonly type: PropType<string | number | null>;
8
+ readonly type: PropType<string | number | boolean | null>;
9
9
  readonly default: null;
10
10
  };
11
11
  readonly size: PropType<"small" | "medium" | "large">;
@@ -130,9 +130,9 @@ export declare const radioGroupProps: {
130
130
  export declare type RadioGroupProps = ExtractPublicPropTypes<typeof radioGroupProps>;
131
131
  declare const _default: import("vue").DefineComponent<{
132
132
  readonly name: StringConstructor;
133
- readonly value: PropType<string | number | null>;
133
+ readonly value: PropType<string | number | boolean | null>;
134
134
  readonly defaultValue: {
135
- readonly type: PropType<string | number | null>;
135
+ readonly type: PropType<string | number | boolean | null>;
136
136
  readonly default: null;
137
137
  };
138
138
  readonly size: PropType<"small" | "medium" | "large">;
@@ -257,7 +257,7 @@ declare const _default: import("vue").DefineComponent<{
257
257
  selfElRef: import("vue").Ref<HTMLDivElement | null>;
258
258
  rtlEnabled: import("vue").Ref<import("../../config-provider/src/internal-interface").RtlItem | undefined> | undefined;
259
259
  mergedClsPrefix: import("vue").ComputedRef<string>;
260
- mergedValue: import("vue").ComputedRef<string | number | null>;
260
+ mergedValue: import("vue").ComputedRef<string | number | boolean | null>;
261
261
  handleFocusout: (e: FocusEvent) => void;
262
262
  handleFocusin: (e: FocusEvent) => void;
263
263
  cssVars: import("vue").ComputedRef<{
@@ -280,9 +280,9 @@ declare const _default: import("vue").DefineComponent<{
280
280
  onRender: (() => void) | undefined;
281
281
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
282
282
  readonly name: StringConstructor;
283
- readonly value: PropType<string | number | null>;
283
+ readonly value: PropType<string | number | boolean | null>;
284
284
  readonly defaultValue: {
285
- readonly type: PropType<string | number | null>;
285
+ readonly type: PropType<string | number | boolean | null>;
286
286
  readonly default: null;
287
287
  };
288
288
  readonly size: PropType<"small" | "medium" | "large">;
@@ -405,6 +405,6 @@ declare const _default: import("vue").DefineComponent<{
405
405
  }, any>>>;
406
406
  }>>, {
407
407
  readonly disabled: boolean | undefined;
408
- readonly defaultValue: string | number | null;
408
+ readonly defaultValue: string | number | boolean | null;
409
409
  }>;
410
410
  export default _default;
@@ -63,8 +63,8 @@ function mapSlot(defaultSlot, value, clsPrefix) {
63
63
  isButtonGroup
64
64
  };
65
65
  }
66
- export const radioGroupProps = Object.assign(Object.assign({}, useTheme.props), { name: String, value: [String, Number], defaultValue: {
67
- type: [String, Number],
66
+ export const radioGroupProps = Object.assign(Object.assign({}, useTheme.props), { name: String, value: [String, Number, Boolean], defaultValue: {
67
+ type: [String, Number, Boolean],
68
68
  default: null
69
69
  }, size: String, disabled: {
70
70
  type: Boolean,
@@ -1,2 +1,2 @@
1
- export declare type OnUpdateValue = (value: string & number) => void;
2
- export declare type OnUpdateValueImpl = (value: string | number) => void;
1
+ export declare type OnUpdateValue = (value: string & number & boolean) => void;
2
+ export declare type OnUpdateValueImpl = (value: string | number | boolean) => void;
@@ -1,10 +1,10 @@
1
1
  import { ExtractPropTypes, PropType, Ref, ComputedRef } from 'vue';
2
2
  import type { MaybeArray } from '../../_utils';
3
3
  import { OnUpdateValue } from './interface';
4
- declare const radioProps: {
4
+ export declare const radioProps: {
5
5
  readonly name: StringConstructor;
6
6
  readonly value: {
7
- readonly type: PropType<string | number>;
7
+ readonly type: PropType<string | number | boolean>;
8
8
  readonly default: "on";
9
9
  };
10
10
  readonly checked: {
@@ -22,14 +22,13 @@ declare const radioProps: {
22
22
  readonly 'onUpdate:checked': PropType<MaybeArray<(value: boolean) => void> | undefined>;
23
23
  readonly checkedValue: {
24
24
  readonly type: PropType<boolean | undefined>;
25
- readonly validator: () => boolean;
26
25
  readonly default: undefined;
27
26
  };
28
27
  };
29
28
  export interface RadioGroupInjection {
30
29
  mergedClsPrefixRef: Ref<string>;
31
30
  nameRef: Ref<string | undefined>;
32
- valueRef: Ref<string | number | null>;
31
+ valueRef: Ref<string | number | boolean | null>;
33
32
  mergedSizeRef: Ref<'small' | 'medium' | 'large'>;
34
33
  disabledRef: Ref<boolean>;
35
34
  doUpdateValue: OnUpdateValue;
@@ -50,32 +49,5 @@ export interface UseRadio {
50
49
  handleRadioInputFocus: () => void;
51
50
  }
52
51
  declare function setup(props: ExtractPropTypes<typeof radioProps>): UseRadio;
53
- declare namespace setup {
54
- var props: {
55
- readonly name: StringConstructor;
56
- readonly value: {
57
- readonly type: PropType<string | number>;
58
- readonly default: "on";
59
- };
60
- readonly checked: {
61
- readonly type: PropType<boolean | undefined>;
62
- readonly default: undefined;
63
- };
64
- readonly defaultChecked: BooleanConstructor;
65
- readonly disabled: {
66
- readonly type: PropType<boolean | undefined>;
67
- readonly default: undefined;
68
- };
69
- readonly label: StringConstructor;
70
- readonly size: PropType<"small" | "medium" | "large">;
71
- readonly onUpdateChecked: PropType<MaybeArray<(value: boolean) => void> | undefined>;
72
- readonly 'onUpdate:checked': PropType<MaybeArray<(value: boolean) => void> | undefined>;
73
- readonly checkedValue: {
74
- readonly type: PropType<boolean | undefined>;
75
- readonly validator: () => boolean;
76
- readonly default: undefined;
77
- };
78
- };
79
- }
80
52
  export declare type RadioProps = ExtractPropTypes<typeof radioProps>;
81
- export default setup;
53
+ export { setup };