naive-ui 2.21.5 → 2.22.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 (214) hide show
  1. package/es/_internal/close/src/styles/index.cssr.js +6 -5
  2. package/es/_internal/scrollbar/src/ScrollBar.d.ts +15 -0
  3. package/es/_internal/scrollbar/src/ScrollBar.js +13 -7
  4. package/es/_internal/selection/src/Selection.js +11 -9
  5. package/es/_internal/selection/src/styles/index.cssr.js +6 -2
  6. package/es/alert/src/Alert.d.ts +20 -20
  7. package/es/alert/src/Alert.js +22 -22
  8. package/es/alert/src/styles/index.cssr.js +45 -45
  9. package/es/anchor/src/AnchorAdapter.js +12 -12
  10. package/es/anchor/src/styles/index.cssr.js +41 -41
  11. package/es/avatar/src/Avatar.d.ts +5 -3
  12. package/es/avatar/src/Avatar.js +7 -5
  13. package/es/avatar/src/styles/index.cssr.js +3 -5
  14. package/es/button/src/Button.d.ts +33 -33
  15. package/es/button/src/Button.js +103 -102
  16. package/es/button/src/styles/button.cssr.js +83 -80
  17. package/es/button/styles/light.js +1 -1
  18. package/es/calendar/src/Calendar.d.ts +2 -0
  19. package/es/cascader/src/Cascader.d.ts +135 -0
  20. package/es/cascader/src/Cascader.js +2 -4
  21. package/es/cascader/src/CascaderMenu.d.ts +345 -0
  22. package/es/cascader/src/CascaderMenu.js +6 -5
  23. package/es/cascader/src/CascaderOption.d.ts +18 -0
  24. package/es/cascader/src/CascaderSelectMenu.d.ts +18 -0
  25. package/es/cascader/src/CascaderSubmenu.d.ts +18 -0
  26. package/es/cascader/styles/dark.js +3 -1
  27. package/es/cascader/styles/light.d.ts +13 -0
  28. package/es/cascader/styles/light.js +3 -1
  29. package/es/config-provider/src/ConfigProvider.d.ts +6 -0
  30. package/es/data-table/src/DataTable.js +7 -13
  31. package/es/data-table/src/MainTable.js +2 -3
  32. package/es/data-table/src/TableParts/Body.d.ts +15 -4
  33. package/es/data-table/src/TableParts/Body.js +80 -28
  34. package/es/data-table/src/TableParts/Header.js +1 -1
  35. package/es/data-table/src/interface.d.ts +4 -1
  36. package/es/data-table/src/styles/index.cssr.js +4 -3
  37. package/es/data-table/src/use-check.js +6 -2
  38. package/es/data-table/src/use-scroll.d.ts +2 -0
  39. package/es/data-table/src/use-scroll.js +34 -4
  40. package/es/data-table/src/use-table-data.js +3 -1
  41. package/es/data-table/styles/_common.js +1 -1
  42. package/es/date-picker/src/DatePicker.d.ts +25 -1
  43. package/es/date-picker/src/DatePicker.js +16 -7
  44. package/es/date-picker/src/config.d.ts +1 -1
  45. package/es/date-picker/src/interface.d.ts +2 -1
  46. package/es/date-picker/src/panel/date.d.ts +9 -1
  47. package/es/date-picker/src/panel/date.js +2 -2
  48. package/es/date-picker/src/panel/daterange.d.ts +7 -0
  49. package/es/date-picker/src/panel/daterange.js +2 -2
  50. package/es/date-picker/src/panel/datetime.d.ts +9 -7
  51. package/es/date-picker/src/panel/datetime.js +2 -2
  52. package/es/date-picker/src/panel/datetimerange.d.ts +7 -0
  53. package/es/date-picker/src/panel/datetimerange.js +2 -2
  54. package/es/date-picker/src/panel/month.d.ts +13 -11
  55. package/es/date-picker/src/panel/month.js +23 -12
  56. package/es/date-picker/src/panel/use-calendar.d.ts +11 -34
  57. package/es/date-picker/src/panel/use-calendar.js +35 -18
  58. package/es/date-picker/src/panel/use-dual-calendar.d.ts +7 -31
  59. package/es/date-picker/src/panel/use-dual-calendar.js +23 -8
  60. package/es/date-picker/src/panel/use-panel-common.d.ts +7 -27
  61. package/es/date-picker/src/panel/use-panel-common.js +2 -2
  62. package/es/date-picker/src/utils.d.ts +19 -3
  63. package/es/date-picker/src/utils.js +40 -5
  64. package/es/date-picker/styles/_common.d.ts +2 -0
  65. package/es/date-picker/styles/_common.js +3 -1
  66. package/es/date-picker/styles/light.d.ts +4 -0
  67. package/es/image/src/Image.js +8 -12
  68. package/es/locales/common/deDE.js +2 -0
  69. package/es/locales/common/enUS.d.ts +2 -0
  70. package/es/locales/common/enUS.js +2 -0
  71. package/es/locales/common/frFR.js +3 -0
  72. package/es/locales/common/idID.js +2 -0
  73. package/es/locales/common/jaJP.js +2 -0
  74. package/es/locales/common/nbNO.js +2 -0
  75. package/es/locales/common/ruRU.js +2 -0
  76. package/es/locales/common/ukUA.js +2 -0
  77. package/es/locales/common/zhCN.js +2 -0
  78. package/es/locales/common/zhTW.d.ts +3 -0
  79. package/es/locales/common/zhTW.js +100 -0
  80. package/es/locales/date/zhTW.d.ts +3 -0
  81. package/es/locales/date/zhTW.js +6 -0
  82. package/es/locales/index.d.ts +2 -0
  83. package/es/locales/index.js +2 -0
  84. package/es/page-header/src/PageHeader.js +3 -3
  85. package/es/page-header/src/styles/index.cssr.js +2 -4
  86. package/es/popover/src/Popover.js +4 -1
  87. package/es/popover/src/PopoverBody.js +3 -3
  88. package/es/popselect/src/Popselect.d.ts +2 -11
  89. package/es/popselect/src/Popselect.js +2 -2
  90. package/es/popselect/src/PopselectPanel.d.ts +3 -11
  91. package/es/popselect/src/PopselectPanel.js +17 -11
  92. package/es/radio/src/Radio.js +3 -3
  93. package/es/radio/src/RadioButton.js +4 -5
  94. package/es/radio/src/styles/radio-group.cssr.js +8 -4
  95. package/es/radio/src/styles/radio.cssr.js +8 -4
  96. package/es/radio/src/use-radio.d.ts +0 -3
  97. package/es/radio/src/use-radio.js +1 -26
  98. package/es/tabs/src/styles/index.cssr.js +1 -0
  99. package/es/tag/src/styles/index.cssr.js +1 -1
  100. package/es/tree-select/src/TreeSelect.d.ts +38 -1
  101. package/es/tree-select/src/TreeSelect.js +25 -10
  102. package/es/tree-select/src/styles/index.cssr.js +11 -2
  103. package/es/tree-select/styles/light.d.ts +6 -0
  104. package/es/tree-select/styles/light.js +5 -2
  105. package/es/version.d.ts +1 -1
  106. package/es/version.js +1 -1
  107. package/lib/_internal/close/src/styles/index.cssr.js +6 -5
  108. package/lib/_internal/scrollbar/src/ScrollBar.d.ts +15 -0
  109. package/lib/_internal/scrollbar/src/ScrollBar.js +13 -7
  110. package/lib/_internal/selection/src/Selection.js +11 -9
  111. package/lib/_internal/selection/src/styles/index.cssr.js +6 -2
  112. package/lib/alert/src/Alert.d.ts +20 -20
  113. package/lib/alert/src/Alert.js +22 -22
  114. package/lib/alert/src/styles/index.cssr.js +45 -45
  115. package/lib/anchor/src/AnchorAdapter.js +12 -12
  116. package/lib/anchor/src/styles/index.cssr.js +41 -41
  117. package/lib/avatar/src/Avatar.d.ts +5 -3
  118. package/lib/avatar/src/Avatar.js +7 -5
  119. package/lib/avatar/src/styles/index.cssr.js +3 -5
  120. package/lib/button/src/Button.d.ts +33 -33
  121. package/lib/button/src/Button.js +103 -102
  122. package/lib/button/src/styles/button.cssr.js +83 -80
  123. package/lib/button/styles/light.js +1 -1
  124. package/lib/calendar/src/Calendar.d.ts +2 -0
  125. package/lib/cascader/src/Cascader.d.ts +135 -0
  126. package/lib/cascader/src/Cascader.js +2 -4
  127. package/lib/cascader/src/CascaderMenu.d.ts +345 -0
  128. package/lib/cascader/src/CascaderMenu.js +6 -5
  129. package/lib/cascader/src/CascaderOption.d.ts +18 -0
  130. package/lib/cascader/src/CascaderSelectMenu.d.ts +18 -0
  131. package/lib/cascader/src/CascaderSubmenu.d.ts +18 -0
  132. package/lib/cascader/styles/dark.js +3 -1
  133. package/lib/cascader/styles/light.d.ts +13 -0
  134. package/lib/cascader/styles/light.js +3 -1
  135. package/lib/config-provider/src/ConfigProvider.d.ts +6 -0
  136. package/lib/data-table/src/DataTable.js +6 -12
  137. package/lib/data-table/src/MainTable.js +1 -2
  138. package/lib/data-table/src/TableParts/Body.d.ts +15 -4
  139. package/lib/data-table/src/TableParts/Body.js +78 -26
  140. package/lib/data-table/src/TableParts/Header.js +1 -1
  141. package/lib/data-table/src/interface.d.ts +4 -1
  142. package/lib/data-table/src/styles/index.cssr.js +4 -3
  143. package/lib/data-table/src/use-check.js +6 -2
  144. package/lib/data-table/src/use-scroll.d.ts +2 -0
  145. package/lib/data-table/src/use-scroll.js +34 -4
  146. package/lib/data-table/src/use-table-data.js +3 -1
  147. package/lib/data-table/styles/_common.js +1 -1
  148. package/lib/date-picker/src/DatePicker.d.ts +25 -1
  149. package/lib/date-picker/src/DatePicker.js +16 -7
  150. package/lib/date-picker/src/config.d.ts +1 -1
  151. package/lib/date-picker/src/interface.d.ts +2 -1
  152. package/lib/date-picker/src/panel/date.d.ts +9 -1
  153. package/lib/date-picker/src/panel/date.js +1 -1
  154. package/lib/date-picker/src/panel/daterange.d.ts +7 -0
  155. package/lib/date-picker/src/panel/daterange.js +1 -1
  156. package/lib/date-picker/src/panel/datetime.d.ts +9 -7
  157. package/lib/date-picker/src/panel/datetime.js +1 -1
  158. package/lib/date-picker/src/panel/datetimerange.d.ts +7 -0
  159. package/lib/date-picker/src/panel/datetimerange.js +2 -2
  160. package/lib/date-picker/src/panel/month.d.ts +13 -11
  161. package/lib/date-picker/src/panel/month.js +23 -12
  162. package/lib/date-picker/src/panel/use-calendar.d.ts +11 -34
  163. package/lib/date-picker/src/panel/use-calendar.js +34 -16
  164. package/lib/date-picker/src/panel/use-dual-calendar.d.ts +7 -31
  165. package/lib/date-picker/src/panel/use-dual-calendar.js +22 -6
  166. package/lib/date-picker/src/panel/use-panel-common.d.ts +7 -27
  167. package/lib/date-picker/src/panel/use-panel-common.js +3 -2
  168. package/lib/date-picker/src/utils.d.ts +19 -3
  169. package/lib/date-picker/src/utils.js +41 -4
  170. package/lib/date-picker/styles/_common.d.ts +2 -0
  171. package/lib/date-picker/styles/_common.js +3 -1
  172. package/lib/date-picker/styles/light.d.ts +4 -0
  173. package/lib/image/src/Image.js +7 -11
  174. package/lib/locales/common/deDE.js +2 -0
  175. package/lib/locales/common/enUS.d.ts +2 -0
  176. package/lib/locales/common/enUS.js +2 -0
  177. package/lib/locales/common/frFR.js +3 -0
  178. package/lib/locales/common/idID.js +2 -0
  179. package/lib/locales/common/jaJP.js +2 -0
  180. package/lib/locales/common/nbNO.js +2 -0
  181. package/lib/locales/common/ruRU.js +2 -0
  182. package/lib/locales/common/ukUA.js +2 -0
  183. package/lib/locales/common/zhCN.js +2 -0
  184. package/lib/locales/common/zhTW.d.ts +3 -0
  185. package/lib/locales/common/zhTW.js +102 -0
  186. package/lib/locales/date/zhTW.d.ts +3 -0
  187. package/lib/locales/date/zhTW.js +11 -0
  188. package/lib/locales/index.d.ts +2 -0
  189. package/lib/locales/index.js +5 -1
  190. package/lib/page-header/src/PageHeader.js +3 -3
  191. package/lib/page-header/src/styles/index.cssr.js +2 -4
  192. package/lib/popover/src/Popover.js +4 -1
  193. package/lib/popover/src/PopoverBody.js +3 -3
  194. package/lib/popselect/src/Popselect.d.ts +2 -11
  195. package/lib/popselect/src/Popselect.js +2 -2
  196. package/lib/popselect/src/PopselectPanel.d.ts +3 -11
  197. package/lib/popselect/src/PopselectPanel.js +16 -10
  198. package/lib/radio/src/Radio.js +3 -3
  199. package/lib/radio/src/RadioButton.js +4 -5
  200. package/lib/radio/src/styles/radio-group.cssr.js +8 -4
  201. package/lib/radio/src/styles/radio.cssr.js +8 -4
  202. package/lib/radio/src/use-radio.d.ts +0 -3
  203. package/lib/radio/src/use-radio.js +1 -26
  204. package/lib/tabs/src/styles/index.cssr.js +1 -0
  205. package/lib/tag/src/styles/index.cssr.js +1 -1
  206. package/lib/tree-select/src/TreeSelect.d.ts +38 -1
  207. package/lib/tree-select/src/TreeSelect.js +24 -9
  208. package/lib/tree-select/src/styles/index.cssr.js +11 -2
  209. package/lib/tree-select/styles/light.d.ts +6 -0
  210. package/lib/tree-select/styles/light.js +5 -2
  211. package/lib/version.d.ts +1 -1
  212. package/lib/version.js +1 -1
  213. package/package.json +4 -3
  214. package/web-types.json +25 -7
@@ -8,10 +8,12 @@ import style from './styles/index.cssr';
8
8
  const avatarProps = Object.assign(Object.assign({}, useTheme.props), { size: {
9
9
  type: [String, Number],
10
10
  default: 'medium'
11
- }, src: String, circle: Boolean, color: String, objectFit: {
11
+ }, src: String, circle: Boolean, objectFit: {
12
12
  type: String,
13
13
  default: 'fill'
14
- }, round: Boolean, onError: Function, fallbackSrc: String });
14
+ }, round: Boolean, onError: Function, fallbackSrc: String,
15
+ /** @deprecated */
16
+ color: String });
15
17
  export default defineComponent({
16
18
  name: 'Avatar',
17
19
  props: avatarProps,
@@ -62,7 +64,7 @@ export default defineComponent({
62
64
  mergedClsPrefix: mergedClsPrefixRef,
63
65
  fitTextTransform,
64
66
  cssVars: computed(() => {
65
- const { size } = props;
67
+ const { size, color: propColor } = props;
66
68
  const { self: { borderRadius, fontSize, color }, common: { cubicBezierEaseInOut } } = themeRef.value;
67
69
  let height;
68
70
  if (typeof size === 'number') {
@@ -74,7 +76,7 @@ export default defineComponent({
74
76
  return {
75
77
  '--font-size': fontSize,
76
78
  '--border-radius': mergedRoundRef.value ? '50%' : borderRadius,
77
- '--color': color,
79
+ '--color': propColor || color,
78
80
  '--bezier': cubicBezierEaseInOut,
79
81
  '--merged-size': `var(--avatar-size-override, ${height})`
80
82
  };
@@ -91,7 +93,7 @@ export default defineComponent({
91
93
  }
92
94
  else if (!(!$slots.default && src)) {
93
95
  img = (h(VResizeObserver, { onResize: this.fitTextTransform }, {
94
- default: () => (h("span", { ref: "textRef", class: `${mergedClsPrefix}-avatar__text`, style: { background: this.color } }, $slots))
96
+ default: () => (h("span", { ref: "textRef", class: `${mergedClsPrefix}-avatar__text` }, $slots))
95
97
  }));
96
98
  }
97
99
  else {
@@ -3,7 +3,7 @@ import { c, cE, cB } from '../../../_utils/cssr'; // vars:
3
3
  // --border-radius
4
4
  // --color
5
5
  // --bezier
6
- // --size
6
+ // --merged-size
7
7
 
8
8
  export default cB('avatar', `
9
9
  width: var(--merged-size);
@@ -30,7 +30,5 @@ export default cB('avatar', `
30
30
  top: 50%;
31
31
  `), cB('icon', `
32
32
  vertical-align: bottom;
33
- font-size: var(--size);
34
- `), cE('text', {
35
- lineHeight: 1.25
36
- })]);
33
+ font-size: calc(var(--merged-size) - 6px);
34
+ `), cE('text', 'line-height: 1.25')]);
@@ -1334,42 +1334,42 @@ declare const Button: import("vue").DefineComponent<{
1334
1334
  handleKeyup: (e: KeyboardEvent) => void;
1335
1335
  handleClick: (e: MouseEvent) => void;
1336
1336
  customColorCssVars: import("vue").ComputedRef<{
1337
- '--border-color': string;
1338
- '--border-color-hover': string;
1339
- '--border-color-pressed': string;
1340
- '--border-color-focus': string;
1341
- '--border-color-disabled': string;
1337
+ '--n-border-color': string;
1338
+ '--n-border-color-hover': string;
1339
+ '--n-border-color-pressed': string;
1340
+ '--n-border-color-focus': string;
1341
+ '--n-border-color-disabled': string;
1342
1342
  } | null>;
1343
1343
  cssVars: import("vue").ComputedRef<{
1344
- '--width': string;
1345
- '--height': string;
1346
- '--font-size': string;
1347
- '--padding': string;
1348
- '--icon-size': string;
1349
- '--icon-margin': string;
1350
- '--border-radius': string;
1351
- '--border': string;
1352
- '--border-hover': string;
1353
- '--border-pressed': string;
1354
- '--border-focus': string;
1355
- '--border-disabled': string;
1356
- '--color': string;
1357
- '--color-hover': string;
1358
- '--color-pressed': string;
1359
- '--color-focus': string;
1360
- '--color-disabled': string;
1361
- '--ripple-color': string;
1362
- '--text-color': string;
1363
- '--text-color-hover': string;
1364
- '--text-color-pressed': string;
1365
- '--text-color-focus': string;
1366
- '--text-color-disabled': string;
1344
+ '--n-width': string;
1345
+ '--n-height': string;
1346
+ '--n-font-size': string;
1347
+ '--n-padding': string;
1348
+ '--n-icon-size': string;
1349
+ '--n-icon-margin': string;
1350
+ '--n-border-radius': string;
1351
+ '--n-border': string;
1352
+ '--n-border-hover': string;
1353
+ '--n-border-pressed': string;
1354
+ '--n-border-focus': string;
1355
+ '--n-border-disabled': string;
1356
+ '--n-color': string;
1357
+ '--n-color-hover': string;
1358
+ '--n-color-pressed': string;
1359
+ '--n-color-focus': string;
1360
+ '--n-color-disabled': string;
1361
+ '--n-ripple-color': string;
1362
+ '--n-text-color': string;
1363
+ '--n-text-color-hover': string;
1364
+ '--n-text-color-pressed': string;
1365
+ '--n-text-color-focus': string;
1366
+ '--n-text-color-disabled': string;
1367
1367
  fontWeight: string;
1368
- '--bezier': string;
1369
- '--bezier-ease-out': string;
1370
- '--ripple-duration': string;
1371
- '--opacity-disabled': string;
1372
- '--wave-opacity': string;
1368
+ '--n-bezier': string;
1369
+ '--n-bezier-ease-out': string;
1370
+ '--n-ripple-duration': string;
1371
+ '--n-opacity-disabled': string;
1372
+ '--n-wave-opacity': string;
1373
1373
  }>;
1374
1374
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
1375
1375
  readonly color?: unknown;
@@ -86,7 +86,7 @@ const Button = defineComponent({
86
86
  }
87
87
  };
88
88
  const handleClick = (e) => {
89
- if (!props.disabled) {
89
+ if (!props.disabled && !props.loading) {
90
90
  const { onClick } = props;
91
91
  if (onClick)
92
92
  call(onClick, e);
@@ -112,7 +112,7 @@ const Button = defineComponent({
112
112
  switch (e.code) {
113
113
  case 'Enter':
114
114
  case 'NumpadEnter':
115
- if (!props.keyboard) {
115
+ if (!props.keyboard || props.loading) {
116
116
  e.preventDefault();
117
117
  return;
118
118
  }
@@ -145,11 +145,11 @@ const Button = defineComponent({
145
145
  return null;
146
146
  const hoverColor = createHoverColor(color);
147
147
  return {
148
- '--border-color': color,
149
- '--border-color-hover': hoverColor,
150
- '--border-color-pressed': createPressedColor(color),
151
- '--border-color-focus': hoverColor,
152
- '--border-color-disabled': color
148
+ '--n-border-color': color,
149
+ '--n-border-color-hover': hoverColor,
150
+ '--n-border-color-pressed': createPressedColor(color),
151
+ '--n-border-color-focus': hoverColor,
152
+ '--n-border-color-disabled': color
153
153
  };
154
154
  }),
155
155
  cssVars: computed(() => {
@@ -164,17 +164,17 @@ const Button = defineComponent({
164
164
  };
165
165
  // color
166
166
  let colorProps = {
167
- '--color': 'initial',
168
- '--color-hover': 'initial',
169
- '--color-pressed': 'initial',
170
- '--color-focus': 'initial',
171
- '--color-disabled': 'initial',
172
- '--ripple-color': 'initial',
173
- '--text-color': 'initial',
174
- '--text-color-hover': 'initial',
175
- '--text-color-pressed': 'initial',
176
- '--text-color-focus': 'initial',
177
- '--text-color-disabled': 'initial'
167
+ '--n-color': 'initial',
168
+ '--n-color-hover': 'initial',
169
+ '--n-color-pressed': 'initial',
170
+ '--n-color-focus': 'initial',
171
+ '--n-color-disabled': 'initial',
172
+ '--n-ripple-color': 'initial',
173
+ '--n-text-color': 'initial',
174
+ '--n-text-color-hover': 'initial',
175
+ '--n-text-color-pressed': 'initial',
176
+ '--n-text-color-focus': 'initial',
177
+ '--n-text-color-disabled': 'initial'
178
178
  };
179
179
  const typeIsTertiary = type === 'tertiary';
180
180
  const typeIsDefault = type === 'default';
@@ -183,46 +183,46 @@ const Button = defineComponent({
183
183
  const propTextColor = textColor || color;
184
184
  const mergedTextColor = propTextColor || self[createKey('textColorText', mergedType)];
185
185
  colorProps = {
186
- '--color': '#0000',
187
- '--color-hover': '#0000',
188
- '--color-pressed': '#0000',
189
- '--color-focus': '#0000',
190
- '--color-disabled': '#0000',
191
- '--ripple-color': '#0000',
192
- '--text-color': mergedTextColor,
193
- '--text-color-hover': propTextColor
186
+ '--n-color': '#0000',
187
+ '--n-color-hover': '#0000',
188
+ '--n-color-pressed': '#0000',
189
+ '--n-color-focus': '#0000',
190
+ '--n-color-disabled': '#0000',
191
+ '--n-ripple-color': '#0000',
192
+ '--n-text-color': mergedTextColor,
193
+ '--n-text-color-hover': propTextColor
194
194
  ? createHoverColor(propTextColor)
195
195
  : self[createKey('textColorTextHover', mergedType)],
196
- '--text-color-pressed': propTextColor
196
+ '--n-text-color-pressed': propTextColor
197
197
  ? createPressedColor(propTextColor)
198
198
  : self[createKey('textColorTextPressed', mergedType)],
199
- '--text-color-focus': propTextColor
199
+ '--n-text-color-focus': propTextColor
200
200
  ? createHoverColor(propTextColor)
201
201
  : self[createKey('textColorTextHover', mergedType)],
202
- '--text-color-disabled': propTextColor ||
202
+ '--n-text-color-disabled': propTextColor ||
203
203
  self[createKey('textColorTextDisabled', mergedType)]
204
204
  };
205
205
  }
206
206
  else if (ghost || dashed) {
207
207
  const mergedTextColor = textColor || color;
208
208
  colorProps = {
209
- '--color': '#0000',
210
- '--color-hover': '#0000',
211
- '--color-pressed': '#0000',
212
- '--color-focus': '#0000',
213
- '--color-disabled': '#0000',
214
- '--ripple-color': color || self[createKey('rippleColor', mergedType)],
215
- '--text-color': mergedTextColor || self[createKey('textColorGhost', mergedType)],
216
- '--text-color-hover': mergedTextColor
209
+ '--n-color': '#0000',
210
+ '--n-color-hover': '#0000',
211
+ '--n-color-pressed': '#0000',
212
+ '--n-color-focus': '#0000',
213
+ '--n-color-disabled': '#0000',
214
+ '--n-ripple-color': color || self[createKey('rippleColor', mergedType)],
215
+ '--n-text-color': mergedTextColor || self[createKey('textColorGhost', mergedType)],
216
+ '--n-text-color-hover': mergedTextColor
217
217
  ? createHoverColor(mergedTextColor)
218
218
  : self[createKey('textColorGhostHover', mergedType)],
219
- '--text-color-pressed': mergedTextColor
219
+ '--n-text-color-pressed': mergedTextColor
220
220
  ? createPressedColor(mergedTextColor)
221
221
  : self[createKey('textColorGhostPressed', mergedType)],
222
- '--text-color-focus': mergedTextColor
222
+ '--n-text-color-focus': mergedTextColor
223
223
  ? createHoverColor(mergedTextColor)
224
224
  : self[createKey('textColorGhostHover', mergedType)],
225
- '--text-color-disabled': mergedTextColor ||
225
+ '--n-text-color-disabled': mergedTextColor ||
226
226
  self[createKey('textColorGhostDisabled', mergedType)]
227
227
  };
228
228
  }
@@ -235,33 +235,33 @@ const Button = defineComponent({
235
235
  const mergedTextColor = color || typeTextColor;
236
236
  const isColoredType = type !== 'default' && type !== 'tertiary';
237
237
  colorProps = {
238
- '--color': isColoredType
238
+ '--n-color': isColoredType
239
239
  ? changeColor(mergedTextColor, {
240
240
  alpha: Number(self.colorOpacitySecondary)
241
241
  })
242
242
  : self.colorSecondary,
243
- '--color-hover': isColoredType
243
+ '--n-color-hover': isColoredType
244
244
  ? changeColor(mergedTextColor, {
245
245
  alpha: Number(self.colorOpacitySecondaryHover)
246
246
  })
247
247
  : self.colorSecondaryHover,
248
- '--color-pressed': isColoredType
248
+ '--n-color-pressed': isColoredType
249
249
  ? changeColor(mergedTextColor, {
250
250
  alpha: Number(self.colorOpacitySecondaryPressed)
251
251
  })
252
252
  : self.colorSecondaryPressed,
253
- '--color-focus': isColoredType
253
+ '--n-color-focus': isColoredType
254
254
  ? changeColor(mergedTextColor, {
255
255
  alpha: Number(self.colorOpacitySecondaryHover)
256
256
  })
257
257
  : self.colorSecondaryHover,
258
- '--color-disabled': self.colorSecondary,
259
- '--ripple-color': '#0000',
260
- '--text-color': mergedTextColor,
261
- '--text-color-hover': mergedTextColor,
262
- '--text-color-pressed': mergedTextColor,
263
- '--text-color-focus': mergedTextColor,
264
- '--text-color-disabled': mergedTextColor
258
+ '--n-color-disabled': self.colorSecondary,
259
+ '--n-ripple-color': '#0000',
260
+ '--n-text-color': mergedTextColor,
261
+ '--n-text-color-hover': mergedTextColor,
262
+ '--n-text-color-pressed': mergedTextColor,
263
+ '--n-text-color-focus': mergedTextColor,
264
+ '--n-text-color-disabled': mergedTextColor
265
265
  };
266
266
  }
267
267
  else if (tertiary || quaternary) {
@@ -272,59 +272,59 @@ const Button = defineComponent({
272
272
  : self[createKey('color', mergedType)];
273
273
  const mergedColor = color || typeColor;
274
274
  if (tertiary) {
275
- colorProps['--color'] = self.colorTertiary;
276
- colorProps['--color-hover'] = self.colorTertiaryHover;
277
- colorProps['--color-pressed'] = self.colorTertiaryPressed;
278
- colorProps['--color-focus'] = self.colorSecondaryHover;
279
- colorProps['--color-disabled'] = self.colorTertiary;
275
+ colorProps['--n-color'] = self.colorTertiary;
276
+ colorProps['--n-color-hover'] = self.colorTertiaryHover;
277
+ colorProps['--n-color-pressed'] = self.colorTertiaryPressed;
278
+ colorProps['--n-color-focus'] = self.colorSecondaryHover;
279
+ colorProps['--n-color-disabled'] = self.colorTertiary;
280
280
  }
281
281
  else {
282
- colorProps['--color'] = self.colorQuaternary;
283
- colorProps['--color-hover'] = self.colorQuaternaryHover;
284
- colorProps['--color-pressed'] = self.colorQuaternaryPressed;
285
- colorProps['--color-focus'] = self.colorQuaternaryHover;
286
- colorProps['--color-disabled'] = self.colorQuaternary;
282
+ colorProps['--n-color'] = self.colorQuaternary;
283
+ colorProps['--n-color-hover'] = self.colorQuaternaryHover;
284
+ colorProps['--n-color-pressed'] = self.colorQuaternaryPressed;
285
+ colorProps['--n-color-focus'] = self.colorQuaternaryHover;
286
+ colorProps['--n-color-disabled'] = self.colorQuaternary;
287
287
  }
288
- colorProps['--ripple-color'] = '#0000';
289
- colorProps['--text-color'] = mergedColor;
290
- colorProps['--text-color-hover'] = mergedColor;
291
- colorProps['--text-color-pressed'] = mergedColor;
292
- colorProps['--text-color-focus'] = mergedColor;
293
- colorProps['--text-color-disabled'] = mergedColor;
288
+ colorProps['--n-ripple-color'] = '#0000';
289
+ colorProps['--n-text-color'] = mergedColor;
290
+ colorProps['--n-text-color-hover'] = mergedColor;
291
+ colorProps['--n-text-color-pressed'] = mergedColor;
292
+ colorProps['--n-text-color-focus'] = mergedColor;
293
+ colorProps['--n-text-color-disabled'] = mergedColor;
294
294
  }
295
295
  else {
296
296
  colorProps = {
297
- '--color': color || self[createKey('color', mergedType)],
298
- '--color-hover': color
297
+ '--n-color': color || self[createKey('color', mergedType)],
298
+ '--n-color-hover': color
299
299
  ? createHoverColor(color)
300
300
  : self[createKey('colorHover', mergedType)],
301
- '--color-pressed': color
301
+ '--n-color-pressed': color
302
302
  ? createPressedColor(color)
303
303
  : self[createKey('colorPressed', mergedType)],
304
- '--color-focus': color
304
+ '--n-color-focus': color
305
305
  ? createHoverColor(color)
306
306
  : self[createKey('colorFocus', mergedType)],
307
- '--color-disabled': color || self[createKey('colorDisabled', mergedType)],
308
- '--ripple-color': color || self[createKey('rippleColor', mergedType)],
309
- '--text-color': textColor ||
307
+ '--n-color-disabled': color || self[createKey('colorDisabled', mergedType)],
308
+ '--n-ripple-color': color || self[createKey('rippleColor', mergedType)],
309
+ '--n-text-color': textColor ||
310
310
  (color
311
311
  ? self.textColorPrimary
312
312
  : typeIsTertiary
313
313
  ? self.textColorTertiary
314
314
  : self[createKey('textColor', mergedType)]),
315
- '--text-color-hover': textColor ||
315
+ '--n-text-color-hover': textColor ||
316
316
  (color
317
317
  ? self.textColorHoverPrimary
318
318
  : self[createKey('textColorHover', mergedType)]),
319
- '--text-color-pressed': textColor ||
319
+ '--n-text-color-pressed': textColor ||
320
320
  (color
321
321
  ? self.textColorPressedPrimary
322
322
  : self[createKey('textColorPressed', mergedType)]),
323
- '--text-color-focus': textColor ||
323
+ '--n-text-color-focus': textColor ||
324
324
  (color
325
325
  ? self.textColorFocusPrimary
326
326
  : self[createKey('textColorFocus', mergedType)]),
327
- '--text-color-disabled': textColor ||
327
+ '--n-text-color-disabled': textColor ||
328
328
  (color
329
329
  ? self.textColorDisabledPrimary
330
330
  : self[createKey('textColorDisabled', mergedType)])
@@ -332,52 +332,52 @@ const Button = defineComponent({
332
332
  }
333
333
  // border
334
334
  let borderProps = {
335
- '--border': 'initial',
336
- '--border-hover': 'initial',
337
- '--border-pressed': 'initial',
338
- '--border-focus': 'initial',
339
- '--border-disabled': 'initial'
335
+ '--n-border': 'initial',
336
+ '--n-border-hover': 'initial',
337
+ '--n-border-pressed': 'initial',
338
+ '--n-border-focus': 'initial',
339
+ '--n-border-disabled': 'initial'
340
340
  };
341
341
  if (text) {
342
342
  borderProps = {
343
- '--border': 'none',
344
- '--border-hover': 'none',
345
- '--border-pressed': 'none',
346
- '--border-focus': 'none',
347
- '--border-disabled': 'none'
343
+ '--n-border': 'none',
344
+ '--n-border-hover': 'none',
345
+ '--n-border-pressed': 'none',
346
+ '--n-border-focus': 'none',
347
+ '--n-border-disabled': 'none'
348
348
  };
349
349
  }
350
350
  else {
351
351
  borderProps = {
352
- '--border': self[createKey('border', mergedType)],
353
- '--border-hover': self[createKey('borderHover', mergedType)],
354
- '--border-pressed': self[createKey('borderPressed', mergedType)],
355
- '--border-focus': self[createKey('borderFocus', mergedType)],
356
- '--border-disabled': self[createKey('borderDisabled', mergedType)]
352
+ '--n-border': self[createKey('border', mergedType)],
353
+ '--n-border-hover': self[createKey('borderHover', mergedType)],
354
+ '--n-border-pressed': self[createKey('borderPressed', mergedType)],
355
+ '--n-border-focus': self[createKey('borderFocus', mergedType)],
356
+ '--n-border-disabled': self[createKey('borderDisabled', mergedType)]
357
357
  };
358
358
  }
359
359
  // size
360
360
  const { [createKey('height', size)]: height, [createKey('fontSize', size)]: fontSize, [createKey('padding', size)]: padding, [createKey('paddingRound', size)]: paddingRound, [createKey('iconSize', size)]: iconSize, [createKey('borderRadius', size)]: borderRadius, [createKey('iconMargin', size)]: iconMargin, waveOpacity } = self;
361
361
  const sizeProps = {
362
- '--width': circle && !text ? height : 'initial',
363
- '--height': text ? 'initial' : height,
364
- '--font-size': fontSize,
365
- '--padding': circle
362
+ '--n-width': circle && !text ? height : 'initial',
363
+ '--n-height': text ? 'initial' : height,
364
+ '--n-font-size': fontSize,
365
+ '--n-padding': circle
366
366
  ? 'initial'
367
367
  : text
368
368
  ? 'initial'
369
369
  : round
370
370
  ? paddingRound
371
371
  : padding,
372
- '--icon-size': iconSize,
373
- '--icon-margin': iconMargin,
374
- '--border-radius': text
372
+ '--n-icon-size': iconSize,
373
+ '--n-icon-margin': iconMargin,
374
+ '--n-border-radius': text
375
375
  ? 'initial'
376
376
  : circle || round
377
377
  ? height
378
378
  : borderRadius
379
379
  };
380
- return Object.assign(Object.assign(Object.assign(Object.assign({ '--bezier': cubicBezierEaseInOut, '--bezier-ease-out': cubicBezierEaseOut, '--ripple-duration': rippleDuration, '--opacity-disabled': opacityDisabled, '--wave-opacity': waveOpacity }, fontProps), colorProps), borderProps), sizeProps);
380
+ return Object.assign(Object.assign(Object.assign(Object.assign({ '--n-bezier': cubicBezierEaseInOut, '--n-bezier-ease-out': cubicBezierEaseOut, '--n-ripple-duration': rippleDuration, '--n-opacity-disabled': opacityDisabled, '--n-wave-opacity': waveOpacity }, fontProps), colorProps), borderProps), sizeProps);
381
381
  })
382
382
  };
383
383
  },
@@ -394,9 +394,10 @@ const Button = defineComponent({
394
394
  !this.text && this.dashed && `${mergedClsPrefix}-button--dashed`,
395
395
  this.color && `${mergedClsPrefix}-button--color`,
396
396
  this.secondary && `${mergedClsPrefix}-button--secondary`,
397
+ this.loading && `${mergedClsPrefix}-button--loading`,
397
398
  this.ghost && `${mergedClsPrefix}-button--ghost` // required for button group border collapse
398
399
  ], tabindex: this.mergedFocusable ? 0 : -1, type: this.attrType, style: this.cssVars, disabled: this.disabled, onClick: this.handleClick, onBlur: this.handleBlur, onMousedown: this.handleMousedown, onKeyup: this.handleKeyup, onKeydown: this.handleKeydown },
399
- $slots.default && this.iconPlacement === 'right' ? (h("div", { class: `${mergedClsPrefix}-button__content` }, $slots)) : null,
400
+ $slots.default && this.iconPlacement === 'right' ? (h("span", { class: `${mergedClsPrefix}-button__content` }, $slots)) : null,
400
401
  h(NFadeInExpandTransition, { width: true }, {
401
402
  default: () => $slots.icon || this.loading ? (h("span", { class: `${mergedClsPrefix}-button__icon`, style: {
402
403
  margin: !$slots.default ? 0 : ''