ropav 0.0.9 → 0.0.11

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 (289) hide show
  1. package/README.md +6 -0
  2. package/dist/accordion.css +115 -111
  3. package/dist/accordion.js +60 -16
  4. package/dist/alert.css +110 -108
  5. package/dist/alert.js +48 -26
  6. package/dist/aspect-ratio.css +17 -15
  7. package/dist/aspect-ratio.js +20 -6
  8. package/dist/avatar.css +98 -96
  9. package/dist/avatar.js +27 -16
  10. package/dist/badge.css +95 -93
  11. package/dist/badge.js +29 -16
  12. package/dist/base.css +672 -671
  13. package/dist/button-group.css +39 -37
  14. package/dist/button-group.js +23 -12
  15. package/dist/button-link.css +160 -158
  16. package/dist/button-link.js +43 -24
  17. package/dist/button.css +160 -158
  18. package/dist/button.js +37 -19
  19. package/dist/card.css +109 -107
  20. package/dist/card.js +42 -17
  21. package/dist/checkbox.css +139 -137
  22. package/dist/checkbox.js +79 -28
  23. package/dist/collapse.css +29 -27
  24. package/dist/collapse.js +44 -10
  25. package/dist/color-input.css +137 -107
  26. package/dist/color-input.js +91 -17
  27. package/dist/color-picker.css +309 -303
  28. package/dist/color-picker.js +250 -77
  29. package/dist/color-picker2.js +9 -1
  30. package/dist/color-swatch.css +48 -46
  31. package/dist/color-swatch.js +15 -11
  32. package/dist/color-swatch2.js +4 -0
  33. package/dist/components/accordion/accordion-item.d.ts +16 -4
  34. package/dist/components/accordion/accordion.d.ts +1 -1
  35. package/dist/components/accordion/index.d.ts +5 -4
  36. package/dist/components/accordion/index.js +2 -2
  37. package/dist/components/accordion/types.d.ts +10 -5
  38. package/dist/components/accordion/useAccordion.d.ts +1 -1
  39. package/dist/components/alert/alert.d.ts +3 -3
  40. package/dist/components/alert/index.d.ts +3 -3
  41. package/dist/components/alert/index.js +2 -2
  42. package/dist/components/alert/types.d.ts +5 -2
  43. package/dist/components/alert/useAlertColor.d.ts +1 -1
  44. package/dist/components/aspect-ratio/aspect-ratio.d.ts +1 -1
  45. package/dist/components/aspect-ratio/index.d.ts +3 -2
  46. package/dist/components/aspect-ratio/index.js +2 -2
  47. package/dist/components/aspect-ratio/types.d.ts +4 -1
  48. package/dist/components/avatar/avatar.d.ts +1 -1
  49. package/dist/components/avatar/index.d.ts +3 -3
  50. package/dist/components/avatar/index.js +2 -2
  51. package/dist/components/avatar/types.d.ts +5 -2
  52. package/dist/components/avatar/useAvatarColor.d.ts +1 -1
  53. package/dist/components/badge/badge.d.ts +1 -1
  54. package/dist/components/badge/index.d.ts +3 -3
  55. package/dist/components/badge/index.js +2 -2
  56. package/dist/components/badge/types.d.ts +5 -2
  57. package/dist/components/badge/useBadgeColor.d.ts +1 -1
  58. package/dist/components/button/button.d.ts +1 -1
  59. package/dist/components/button/index.d.ts +3 -2
  60. package/dist/components/button/index.js +2 -2
  61. package/dist/components/button/types.d.ts +5 -2
  62. package/dist/components/button/useButtonColor.d.ts +1 -1
  63. package/dist/components/button-group/button-group.d.ts +1 -1
  64. package/dist/components/button-group/index.d.ts +3 -2
  65. package/dist/components/button-group/index.js +2 -2
  66. package/dist/components/button-group/types.d.ts +4 -1
  67. package/dist/components/button-link/button-link.d.ts +1 -1
  68. package/dist/components/button-link/index.d.ts +3 -2
  69. package/dist/components/button-link/index.js +2 -2
  70. package/dist/components/button-link/types.d.ts +5 -2
  71. package/dist/components/card/card.d.ts +1 -1
  72. package/dist/components/card/index.d.ts +3 -2
  73. package/dist/components/card/index.js +2 -2
  74. package/dist/components/card/types.d.ts +5 -1
  75. package/dist/components/checkbox/checkbox.d.ts +5 -2
  76. package/dist/components/checkbox/index.d.ts +3 -2
  77. package/dist/components/checkbox/index.js +2 -2
  78. package/dist/components/checkbox/types.d.ts +7 -2
  79. package/dist/components/checkbox/useCheckbox.d.ts +4 -2
  80. package/dist/components/collapse/collapse.d.ts +2 -2
  81. package/dist/components/collapse/index.d.ts +4 -3
  82. package/dist/components/collapse/index.js +2 -2
  83. package/dist/components/collapse/types.d.ts +9 -2
  84. package/dist/components/collapse/useCollapse.d.ts +1 -1
  85. package/dist/components/color-input/color-input.d.ts +1 -1
  86. package/dist/components/color-input/index.d.ts +3 -2
  87. package/dist/components/color-input/index.js +2 -2
  88. package/dist/components/color-input/types.d.ts +8 -4
  89. package/dist/components/color-input/useColorInput.d.ts +5 -5
  90. package/dist/components/color-input/useColorInputEyeDropper.d.ts +1 -1
  91. package/dist/components/color-input/useColorInputPopover.d.ts +2 -2
  92. package/dist/components/color-input/useColorInputValue.d.ts +1 -1
  93. package/dist/components/color-picker/color-picker-saturation.d.ts +1 -1
  94. package/dist/components/color-picker/color-picker-slider.d.ts +1 -1
  95. package/dist/components/color-picker/color-picker-utils.d.ts +1 -1
  96. package/dist/components/color-picker/color-picker.d.ts +1 -1
  97. package/dist/components/color-picker/index.d.ts +3 -3
  98. package/dist/components/color-picker/index.js +2 -2
  99. package/dist/components/color-picker/types.d.ts +13 -1
  100. package/dist/components/color-picker/useColorPickerDrag.d.ts +7 -2
  101. package/dist/components/color-picker/useColorPickerSwatches.d.ts +1 -1
  102. package/dist/components/color-picker/useColorPickerValue.d.ts +2 -2
  103. package/dist/components/color-swatch/color-swatch.d.ts +1 -1
  104. package/dist/components/color-swatch/index.d.ts +3 -2
  105. package/dist/components/color-swatch/index.js +2 -1
  106. package/dist/components/color-swatch/types.d.ts +4 -1
  107. package/dist/components/dropdown-menu/dropdown-menu-items.d.ts +15 -6
  108. package/dist/components/dropdown-menu/dropdown-menu-primitives.d.ts +724 -0
  109. package/dist/components/dropdown-menu/dropdown-menu-utils.d.ts +1 -1
  110. package/dist/components/dropdown-menu/dropdown-menu.d.ts +3 -3
  111. package/dist/components/dropdown-menu/index.d.ts +55 -3
  112. package/dist/components/dropdown-menu/index.js +2 -2
  113. package/dist/components/dropdown-menu/types.d.ts +142 -6
  114. package/dist/components/dropdown-menu/useDropdownMenu.d.ts +21 -12
  115. package/dist/components/dropdown-menu/useDropdownMenuDisclosure.d.ts +6 -4
  116. package/dist/components/dropdown-menu/useDropdownMenuDom.d.ts +4 -3
  117. package/dist/components/dropdown-menu/useDropdownMenuHoverIntent.d.ts +2 -2
  118. package/dist/components/dropdown-menu/useDropdownMenuInteractions.d.ts +5 -5
  119. package/dist/components/dropdown-menu/useDropdownMenuNavigation.d.ts +3 -3
  120. package/dist/components/dropdown-menu/useDropdownMenuPortalPosition.d.ts +19 -0
  121. package/dist/components/dropdown-menu/useDropdownMenuRenderItems.d.ts +25 -5
  122. package/dist/components/dropdown-menu/useDropdownSubmenus.d.ts +3 -3
  123. package/dist/components/field/field.d.ts +2 -2
  124. package/dist/components/field/index.d.ts +3 -2
  125. package/dist/components/field/index.js +2 -2
  126. package/dist/components/field/types.d.ts +4 -1
  127. package/dist/components/field/useField.d.ts +1 -1
  128. package/dist/components/floating/index.d.ts +1 -0
  129. package/dist/components/floating/index.js +0 -0
  130. package/dist/components/floating/types.d.ts +31 -0
  131. package/dist/components/floating/useFloatingPosition.d.ts +38 -0
  132. package/dist/components/focus-trap/focus-trap.d.ts +31 -0
  133. package/dist/components/focus-trap/index.d.ts +4 -0
  134. package/dist/components/focus-trap/index.js +3 -0
  135. package/dist/components/focus-trap/types.d.ts +41 -0
  136. package/dist/components/focus-trap/useFocusTrap.d.ts +2 -0
  137. package/dist/components/icon-button/icon-button.d.ts +1 -1
  138. package/dist/components/icon-button/index.d.ts +3 -2
  139. package/dist/components/icon-button/index.js +2 -1
  140. package/dist/components/icon-button/types.d.ts +5 -2
  141. package/dist/components/input/index.d.ts +3 -2
  142. package/dist/components/input/index.js +2 -1
  143. package/dist/components/input/input.d.ts +1 -1
  144. package/dist/components/input/types.d.ts +4 -1
  145. package/dist/components/input/useInput.d.ts +2 -2
  146. package/dist/components/modal/index.d.ts +3 -2
  147. package/dist/components/modal/index.js +2 -2
  148. package/dist/components/modal/modal.d.ts +1 -1
  149. package/dist/components/modal/types.d.ts +9 -2
  150. package/dist/components/modal/useModal.d.ts +1 -1
  151. package/dist/components/number-input/index.d.ts +3 -2
  152. package/dist/components/number-input/index.js +2 -2
  153. package/dist/components/number-input/number-input.d.ts +1 -1
  154. package/dist/components/number-input/types.d.ts +5 -2
  155. package/dist/components/number-input/useNumberInput.d.ts +2 -2
  156. package/dist/components/overlay/index.d.ts +3 -2
  157. package/dist/components/overlay/index.js +2 -1
  158. package/dist/components/overlay/overlay.d.ts +1 -1
  159. package/dist/components/overlay/types.d.ts +4 -1
  160. package/dist/components/overlay/useOverlay.d.ts +1 -1
  161. package/dist/components/popover/index.d.ts +3 -3
  162. package/dist/components/popover/index.js +2 -2
  163. package/dist/components/popover/popover.d.ts +2 -2
  164. package/dist/components/popover/types.d.ts +21 -11
  165. package/dist/components/popover/usePopover.d.ts +11 -2
  166. package/dist/components/progress/index.d.ts +3 -3
  167. package/dist/components/progress/index.js +2 -2
  168. package/dist/components/progress/progress.d.ts +1 -1
  169. package/dist/components/progress/types.d.ts +5 -2
  170. package/dist/components/progress/useProgress.d.ts +2 -2
  171. package/dist/components/radio/index.d.ts +4 -3
  172. package/dist/components/radio/index.js +2 -2
  173. package/dist/components/radio/radio-group.d.ts +1 -1
  174. package/dist/components/radio/radio.d.ts +9 -4
  175. package/dist/components/radio/types.d.ts +21 -4
  176. package/dist/components/radio/useRadio.d.ts +10 -5
  177. package/dist/components/select/index.d.ts +3 -2
  178. package/dist/components/select/index.js +2 -2
  179. package/dist/components/select/select.d.ts +1 -1
  180. package/dist/components/select/types.d.ts +4 -1
  181. package/dist/components/select/useSelect.d.ts +4 -3
  182. package/dist/components/slider/index.d.ts +4 -4
  183. package/dist/components/slider/index.js +2 -2
  184. package/dist/components/slider/range-slider-tooltip.d.ts +37 -0
  185. package/dist/components/slider/range-slider.d.ts +8 -13
  186. package/dist/components/slider/slider.d.ts +5 -2
  187. package/dist/components/slider/sliderCore.d.ts +35 -0
  188. package/dist/components/slider/types.d.ts +14 -7
  189. package/dist/components/slider/useRangeSlider.d.ts +5 -7
  190. package/dist/components/slider/useRangeSliderPointer.d.ts +19 -0
  191. package/dist/components/slider/useRangeSliderTooltipCollision.d.ts +31 -2
  192. package/dist/components/slider/useRangeSliderTooltipState.d.ts +23 -0
  193. package/dist/components/slider/useSlider.d.ts +11 -15
  194. package/dist/components/switch/index.d.ts +3 -2
  195. package/dist/components/switch/index.js +2 -2
  196. package/dist/components/switch/switch.d.ts +5 -2
  197. package/dist/components/switch/types.d.ts +7 -2
  198. package/dist/components/switch/useSwitch.d.ts +4 -2
  199. package/dist/components/tabs/index.d.ts +7 -6
  200. package/dist/components/tabs/index.js +2 -2
  201. package/dist/components/tabs/tabs-content.d.ts +2 -2
  202. package/dist/components/tabs/tabs-list.d.ts +4 -4
  203. package/dist/components/tabs/tabs-trigger.d.ts +5 -5
  204. package/dist/components/tabs/tabs.d.ts +5 -5
  205. package/dist/components/tabs/types.d.ts +13 -4
  206. package/dist/components/tabs/useTabs.d.ts +1 -1
  207. package/dist/components/teleport-provider/index.d.ts +2 -0
  208. package/dist/components/teleport-provider/index.js +2 -0
  209. package/dist/components/teleport-provider/teleport-provider.d.ts +21 -0
  210. package/dist/components/teleport-provider/types.d.ts +4 -0
  211. package/dist/components/teleport-provider/useTeleportTarget.d.ts +5 -0
  212. package/dist/components/textarea/index.d.ts +3 -2
  213. package/dist/components/textarea/index.js +2 -2
  214. package/dist/components/textarea/textarea.d.ts +5 -2
  215. package/dist/components/textarea/types.d.ts +6 -1
  216. package/dist/components/textarea/useTextarea.d.ts +3 -2
  217. package/dist/components/toast/defaults.d.ts +7 -0
  218. package/dist/components/toast/index.d.ts +7 -0
  219. package/dist/components/toast/index.js +2 -0
  220. package/dist/components/toast/toast-provider.d.ts +21 -0
  221. package/dist/components/toast/toast-viewport.d.ts +34 -0
  222. package/dist/components/toast/toast.d.ts +31 -0
  223. package/dist/components/toast/types.d.ts +110 -0
  224. package/dist/components/toast/useToast.d.ts +4 -0
  225. package/dist/components/toast/useToastColor.d.ts +3 -0
  226. package/dist/components/toast/useToastState.d.ts +2 -0
  227. package/dist/components/tooltip/index.d.ts +3 -2
  228. package/dist/components/tooltip/index.js +2 -1
  229. package/dist/components/tooltip/tooltip.d.ts +2 -2
  230. package/dist/components/tooltip/types.d.ts +14 -13
  231. package/dist/components/tooltip/useTooltip.d.ts +15 -3
  232. package/dist/dropdown-menu.css +191 -107
  233. package/dist/dropdown-menu.js +1729 -107
  234. package/dist/field.css +41 -39
  235. package/dist/field.js +40 -16
  236. package/dist/focus-trap.js +80 -0
  237. package/dist/icon-button.css +193 -189
  238. package/dist/icon-button.js +23 -18
  239. package/dist/icon-button2.js +8 -0
  240. package/dist/index.d.ts +35 -30
  241. package/dist/index.js +36 -31
  242. package/dist/input.css +122 -120
  243. package/dist/input.js +47 -34
  244. package/dist/input2.js +9 -0
  245. package/dist/legacy-unlayered.css +5461 -0
  246. package/dist/modal.css +129 -127
  247. package/dist/modal.js +160 -200
  248. package/dist/number-input.css +87 -85
  249. package/dist/number-input.js +61 -17
  250. package/dist/overlay.css +26 -24
  251. package/dist/overlay.js +17 -9
  252. package/dist/overlay2.js +4 -0
  253. package/dist/popover.css +140 -107
  254. package/dist/popover.js +295 -189
  255. package/dist/popover2.js +6 -1
  256. package/dist/progress.css +101 -99
  257. package/dist/progress.js +50 -28
  258. package/dist/radio.css +114 -105
  259. package/dist/radio.js +154 -56
  260. package/dist/select.css +244 -242
  261. package/dist/select.js +92 -47
  262. package/dist/slider.css +1109 -904
  263. package/dist/slider.js +1118 -923
  264. package/dist/styles-api.d.ts +22 -0
  265. package/dist/styles-api.js +49 -0
  266. package/dist/switch.css +120 -108
  267. package/dist/switch.js +89 -33
  268. package/dist/tabs.css +286 -278
  269. package/dist/tabs.js +60 -21
  270. package/dist/teleport-provider.js +15 -0
  271. package/dist/textarea.css +132 -130
  272. package/dist/textarea.js +77 -29
  273. package/dist/toast.css +236 -0
  274. package/dist/toast.js +739 -0
  275. package/dist/tooltip.css +137 -107
  276. package/dist/tooltip.js +182 -223
  277. package/dist/tooltip2.js +8 -0
  278. package/dist/useClickOutside.js +1 -1
  279. package/dist/useFloatingPosition.js +1284 -0
  280. package/dist/useFocusTrap.js +130 -0
  281. package/dist/useTeleportTarget.js +29 -0
  282. package/dist/utils/componentColors.d.ts +60 -0
  283. package/docs/public-styles-api.md +133 -0
  284. package/docs/public-tokens.md +545 -0
  285. package/package.json +44 -12
  286. package/src/styles/_tokens.scss +33 -28
  287. package/src/styles/_utilities.scss +11 -9
  288. package/src/styles/styles-manifest.json +4125 -0
  289. package/dist/components/slider/useRangeSliderTooltipTransition.d.ts +0 -4
package/dist/tabs.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import './tabs.css';
2
2
  import { t as bem } from "./bem.js";
3
+ import { n as useStylesApi, t as presence } from "./styles-api.js";
3
4
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
4
5
  import { t as useRequiredInject } from "./useRequiredInject.js";
5
6
  import { computed, createIf, createSlot, defineVaporComponent, onBeforeUnmount, onMounted, provide, ref, renderEffect, setDynamicProps, setInsertionState, shallowRef, template, unref, useId, watch } from "vue";
@@ -388,11 +389,12 @@ function useTabsContent(props) {
388
389
  }
389
390
  //#endregion
390
391
  //#region src/components/tabs/tabs.vue?vue&type=script&setup=true&vapor=true&lang.ts
391
- var t0$3 = template("<div data-v-32e41419>", 1);
392
+ var t0$3 = template("<div data-v-163486d1>", 1);
392
393
  //#endregion
393
394
  //#region src/components/tabs/tabs.vue
394
395
  var tabs_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
395
396
  name: "RpTabs",
397
+ inheritAttrs: false,
396
398
  __name: "tabs",
397
399
  props: {
398
400
  id: {},
@@ -414,29 +416,37 @@ var tabs_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
414
416
  },
415
417
  ariaLabel: {},
416
418
  describedby: {},
417
- labelledby: {}
419
+ labelledby: {},
420
+ classNames: {},
421
+ styles: {}
418
422
  },
419
423
  emits: ["update:modelValue"],
420
424
  setup(__props, { emit: __emit }) {
421
425
  const props = __props;
422
426
  const emit = __emit;
423
- const { rootProps, slotProps } = useTabs(props, (value) => {
427
+ const { rootProps: internalRootProps, slotProps } = useTabs(props, (value) => {
424
428
  emit("update:modelValue", value);
425
429
  });
430
+ const { getRootAttrs } = useStylesApi(props, "root");
431
+ const rootAttrs = computed(() => getRootAttrs({
432
+ ...internalRootProps.value,
433
+ "data-disabled": presence(props.disabled)
434
+ }));
426
435
  const n1 = t0$3();
427
- renderEffect(() => setDynamicProps(n1, [unref(rootProps)]));
436
+ renderEffect(() => setDynamicProps(n1, [rootAttrs.value]));
428
437
  setInsertionState(n1, null, 0);
429
438
  createSlot("default", { $: [() => unref(slotProps)] }, null, 1);
430
439
  return n1;
431
440
  }
432
- }), [["__scopeId", "data-v-32e41419"]]);
441
+ }), [["__scopeId", "data-v-163486d1"]]);
433
442
  //#endregion
434
443
  //#region src/components/tabs/tabs-content.vue?vue&type=script&setup=true&vapor=true&lang.ts
435
- var t0$2 = template("<section data-v-3ff419c3>", 1);
444
+ var t0$2 = template("<section data-v-7206185c>", 1);
436
445
  //#endregion
437
446
  //#region src/components/tabs/tabs-content.vue
438
447
  var tabs_content_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
439
448
  name: "RpTabsContent",
449
+ inheritAttrs: false,
440
450
  __name: "tabs-content",
441
451
  props: {
442
452
  id: {},
@@ -447,49 +457,64 @@ var tabs_content_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
447
457
  },
448
458
  ariaLabel: {},
449
459
  ariaDescribedby: {},
450
- ariaLabelledby: {}
460
+ ariaLabelledby: {},
461
+ classNames: {},
462
+ styles: {}
451
463
  },
452
464
  setup(__props) {
453
- const { rootProps, slotProps, shouldRenderContent } = useTabsContent(__props);
465
+ const props = __props;
466
+ const { rootProps: internalRootProps, slotProps, shouldRenderContent } = useTabsContent(props);
467
+ const { getRootAttrs } = useStylesApi(props, "root");
468
+ const rootAttrs = computed(() => getRootAttrs(internalRootProps.value));
454
469
  return createIf(() => unref(shouldRenderContent), () => {
455
470
  const n3 = t0$2();
456
- renderEffect(() => setDynamicProps(n3, [unref(rootProps)]));
471
+ renderEffect(() => setDynamicProps(n3, [rootAttrs.value]));
457
472
  setInsertionState(n3, null, 0);
458
473
  createSlot("default", { $: [() => unref(slotProps)] }, null, 1);
459
474
  return n3;
460
475
  });
461
476
  }
462
- }), [["__scopeId", "data-v-3ff419c3"]]);
477
+ }), [["__scopeId", "data-v-7206185c"]]);
463
478
  //#endregion
464
479
  //#region src/components/tabs/tabs-list.vue?vue&type=script&setup=true&vapor=true&lang.ts
465
- var t0$1 = template("<div data-v-7f168d05>", 1);
480
+ var t0$1 = template("<div data-v-5016edc1>", 1);
466
481
  //#endregion
467
482
  //#region src/components/tabs/tabs-list.vue
468
483
  var tabs_list_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
469
484
  name: "RpTabsList",
485
+ inheritAttrs: false,
470
486
  __name: "tabs-list",
471
487
  props: {
472
488
  id: {},
473
489
  ariaLabel: {},
474
490
  ariaDescribedby: {},
475
- ariaLabelledby: {}
491
+ ariaLabelledby: {},
492
+ classNames: {},
493
+ styles: {}
476
494
  },
477
495
  setup(__props) {
478
- const { rootProps, slotProps } = useTabsList(__props);
496
+ const props = __props;
497
+ const { rootProps: internalRootProps, slotProps } = useTabsList(props);
498
+ const { getRootAttrs } = useStylesApi(props, "root");
499
+ const rootAttrs = computed(() => getRootAttrs({
500
+ ...internalRootProps.value,
501
+ "data-disabled": presence(internalRootProps.value["data-disabled"])
502
+ }));
479
503
  const n1 = t0$1();
480
- renderEffect(() => setDynamicProps(n1, [unref(rootProps)]));
504
+ renderEffect(() => setDynamicProps(n1, [rootAttrs.value]));
481
505
  setInsertionState(n1, null, 0);
482
506
  createSlot("default", { $: [() => unref(slotProps)] }, null, 1);
483
507
  return n1;
484
508
  }
485
- }), [["__scopeId", "data-v-7f168d05"]]);
509
+ }), [["__scopeId", "data-v-5016edc1"]]);
486
510
  //#endregion
487
511
  //#region src/components/tabs/tabs-trigger.vue?vue&type=script&setup=true&vapor=true&lang.ts
488
- var t0 = template("<button data-v-4adec360>", 1);
512
+ var t0 = template("<button data-v-6df68725>", 1);
489
513
  //#endregion
490
514
  //#region src/components/tabs/tabs-trigger.vue
491
515
  var tabs_trigger_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
492
516
  name: "RpTabsTrigger",
517
+ inheritAttrs: false,
493
518
  __name: "tabs-trigger",
494
519
  props: {
495
520
  id: {},
@@ -498,16 +523,30 @@ var tabs_trigger_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @_
498
523
  type: Boolean,
499
524
  default: false
500
525
  },
501
- align: {}
526
+ align: {},
527
+ classNames: {},
528
+ styles: {}
502
529
  },
503
530
  setup(__props) {
504
- const { rootProps, slotProps } = useTabsTrigger(__props);
531
+ const props = __props;
532
+ const { rootProps: internalRootProps, slotProps } = useTabsTrigger(props);
533
+ const { getRootAttrs } = useStylesApi(props, "root");
534
+ const rootAttrs = computed(() => getRootAttrs({
535
+ ...internalRootProps.value,
536
+ "data-disabled": presence(internalRootProps.value["data-disabled"])
537
+ }));
505
538
  const n1 = t0();
506
- renderEffect(() => setDynamicProps(n1, [unref(rootProps)]));
539
+ renderEffect(() => setDynamicProps(n1, [rootAttrs.value]));
507
540
  setInsertionState(n1, null, 0);
508
541
  createSlot("default", { $: [() => unref(slotProps)] }, null, 1);
509
542
  return n1;
510
543
  }
511
- }), [["__scopeId", "data-v-4adec360"]]);
544
+ }), [["__scopeId", "data-v-6df68725"]]);
545
+ //#endregion
546
+ //#region src/components/tabs/types.ts
547
+ var tabsParts = ["root"];
548
+ var tabsListParts = ["root"];
549
+ var tabsTriggerParts = ["root"];
550
+ var tabsContentParts = ["root"];
512
551
  //#endregion
513
- export { useTabs as a, useTabsTrigger as c, tabs_default as i, tabs_list_default as n, useTabsContent as o, tabs_content_default as r, useTabsList as s, tabs_trigger_default as t };
552
+ export { tabs_trigger_default as a, tabs_default as c, useTabsList as d, useTabsTrigger as f, tabsTriggerParts as i, useTabs as l, tabsListParts as n, tabs_list_default as o, tabsParts as r, tabs_content_default as s, tabsContentParts as t, useTabsContent as u };
@@ -0,0 +1,15 @@
1
+ import { t as provideTeleportTarget } from "./useTeleportTarget.js";
2
+ import { createSlot, defineVaporComponent } from "vue";
3
+ //#endregion
4
+ //#region src/components/teleport-provider/teleport-provider.vue
5
+ var teleport_provider_default = /* @__PURE__ */ defineVaporComponent({
6
+ name: "RpTeleportProvider",
7
+ __name: "teleport-provider",
8
+ props: { teleportTo: {} },
9
+ setup(__props) {
10
+ provideTeleportTarget(__props);
11
+ return createSlot();
12
+ }
13
+ });
14
+ //#endregion
15
+ export { teleport_provider_default as t };
package/dist/textarea.css CHANGED
@@ -1,131 +1,133 @@
1
- .rp-textarea[data-v-6c62dc31] {
2
- --_rp-textarea-padding-y: 7px;
3
- --_rp-textarea-padding-x: calc(var(--rp-size-control-md) / 3);
4
- --_rp-textarea-font-size: var(--rp-font-size-md);
5
- --_rp-textarea-radius: var(--rp-radius-sm);
6
- --_rp-textarea-valid-border: var(--rp-color-green-outline);
7
- --_rp-textarea-valid-ring: color-mix(in srgb, var(--rp-color-green-filled) 32%, transparent);
8
- --_rp-textarea-invalid-border: var(--rp-color-red-filled);
9
- --_rp-textarea-invalid-ring: color-mix(in srgb, var(--rp-color-red-filled) 32%, transparent);
10
- display: inline-flex;
11
- box-sizing: border-box;
12
- font-family: var(--rp-font-family);
13
- font-weight: var(--rp-font-weight-normal);
14
- background-color: var(--rp-color-control-bg);
15
- border: var(--rp-border-width-thin) solid var(--rp-color-control-border);
16
- cursor: text;
17
- transition: border-color var(--rp-transition-fast), box-shadow var(--rp-transition-fast);
18
- }
19
- .rp-textarea[data-v-6c62dc31]:hover:not(.rp-textarea--disabled):not(.rp-textarea--invalid):not(.rp-textarea--valid) {
20
- border-color: var(--rp-color-control-border-hover);
21
- }
22
- .rp-textarea[data-v-6c62dc31]:focus-within:not(.rp-textarea--disabled):not(.rp-textarea--invalid):not(.rp-textarea--valid) {
23
- border-color: var(--rp-color-control-border-focus);
24
- box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
25
- }
26
- .rp-textarea[data-v-6c62dc31] {
27
- font-size: var(--_rp-textarea-font-size);
28
- border-radius: var(--_rp-textarea-radius);
29
- }
30
- .rp-textarea--size-xs[data-v-6c62dc31] {
31
- --_rp-textarea-padding-y: 4.5px;
32
- --_rp-textarea-padding-x: calc(var(--rp-size-control-xs) / 3);
33
- --_rp-textarea-font-size: var(--rp-font-size-xs);
34
- }
35
- .rp-textarea--size-sm[data-v-6c62dc31] {
36
- --_rp-textarea-padding-y: 5.5px;
37
- --_rp-textarea-padding-x: calc(var(--rp-size-control-sm) / 3);
38
- --_rp-textarea-font-size: var(--rp-font-size-sm);
39
- }
40
- .rp-textarea--size-md[data-v-6c62dc31] {
41
- --_rp-textarea-padding-y: 7px;
42
- --_rp-textarea-padding-x: calc(var(--rp-size-control-md) / 3);
43
- --_rp-textarea-font-size: var(--rp-font-size-md);
44
- }
45
- .rp-textarea--size-lg[data-v-6c62dc31] {
46
- --_rp-textarea-padding-y: 9.5px;
47
- --_rp-textarea-padding-x: calc(var(--rp-size-control-lg) / 3);
48
- --_rp-textarea-font-size: var(--rp-font-size-lg);
49
- }
50
- .rp-textarea--size-xl[data-v-6c62dc31] {
51
- --_rp-textarea-padding-y: 13px;
52
- --_rp-textarea-padding-x: calc(var(--rp-size-control-xl) / 3);
53
- --_rp-textarea-font-size: var(--rp-font-size-xl);
54
- }
55
- .rp-textarea--radius-xs[data-v-6c62dc31] {
56
- --_rp-textarea-radius: var(--rp-radius-xs);
57
- }
58
- .rp-textarea--radius-sm[data-v-6c62dc31] {
59
- --_rp-textarea-radius: var(--rp-radius-sm);
60
- }
61
- .rp-textarea--radius-md[data-v-6c62dc31] {
62
- --_rp-textarea-radius: var(--rp-radius-md);
63
- }
64
- .rp-textarea--radius-lg[data-v-6c62dc31] {
65
- --_rp-textarea-radius: var(--rp-radius-lg);
66
- }
67
- .rp-textarea--radius-xl[data-v-6c62dc31] {
68
- --_rp-textarea-radius: var(--rp-radius-xl);
69
- }
70
- html.dark .rp-textarea[data-v-6c62dc31], [data-rp-color-scheme=dark] .rp-textarea[data-v-6c62dc31] {
71
- --_rp-textarea-valid-border: var(--rp-color-green-light-color);
72
- --_rp-textarea-valid-ring: color-mix(
73
- in srgb,
74
- var(--rp-color-green-light-color) 32%,
75
- transparent
76
- );
77
- --_rp-textarea-invalid-border: var(--rp-color-red-light-color);
78
- --_rp-textarea-invalid-ring: color-mix(
79
- in srgb,
80
- var(--rp-color-red-light-color) 32%,
81
- transparent
82
- );
83
- }
84
- .rp-textarea--disabled[data-v-6c62dc31] {
85
- opacity: var(--rp-opacity-disabled);
86
- cursor: not-allowed;
87
- }
88
- .rp-textarea--valid[data-v-6c62dc31] {
89
- border-color: var(--_rp-textarea-valid-border);
90
- }
91
- .rp-textarea--valid[data-v-6c62dc31]:focus-within:not(.rp-textarea--disabled) {
92
- border-color: var(--_rp-textarea-valid-border);
93
- box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-textarea-valid-ring);
94
- }
95
- .rp-textarea--invalid[data-v-6c62dc31] {
96
- border-color: var(--_rp-textarea-invalid-border);
97
- }
98
- .rp-textarea--invalid[data-v-6c62dc31]:focus-within:not(.rp-textarea--disabled) {
99
- border-color: var(--_rp-textarea-invalid-border);
100
- box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-textarea-invalid-ring);
101
- }
102
- .rp-textarea--readonly[data-v-6c62dc31] {
103
- background-color: var(--rp-color-control-readonly-bg);
104
- }
105
- .rp-textarea--resize-vertical .rp-textarea__native[data-v-6c62dc31] {
106
- resize: vertical;
107
- }
108
- .rp-textarea--resize-both .rp-textarea__native[data-v-6c62dc31] {
109
- resize: both;
110
- }
111
- .rp-textarea__native[data-v-6c62dc31] {
112
- box-sizing: border-box;
113
- flex: 1;
114
- width: 100%;
115
- min-width: 0;
116
- min-height: calc(1lh + var(--_rp-textarea-padding-y) + var(--_rp-textarea-padding-y));
117
- padding: var(--_rp-textarea-padding-y) var(--_rp-textarea-padding-x);
118
- border: none;
119
- outline: none;
120
- resize: none;
121
- background: transparent;
122
- font: inherit;
123
- color: var(--rp-color-control-fg);
124
- line-height: var(--rp-line-height-md);
125
- }
126
- .rp-textarea__native[data-v-6c62dc31]::placeholder {
127
- color: var(--rp-color-control-placeholder);
128
- }
129
- .rp-textarea__native[data-v-6c62dc31]:disabled {
130
- cursor: not-allowed;
1
+ @layer ropav.components {
2
+ .rp-textarea[data-v-1654f805] {
3
+ --_rp-textarea-padding-y: 7px;
4
+ --_rp-textarea-padding-x: calc(var(--rp-size-control-md) / 3);
5
+ --_rp-textarea-font-size: var(--rp-font-size-md);
6
+ --_rp-textarea-radius: var(--rp-radius-sm);
7
+ --_rp-textarea-valid-border: var(--rp-color-green-outline);
8
+ --_rp-textarea-valid-ring: color-mix(in srgb, var(--rp-color-green-filled) 32%, transparent);
9
+ --_rp-textarea-invalid-border: var(--rp-color-red-filled);
10
+ --_rp-textarea-invalid-ring: color-mix(in srgb, var(--rp-color-red-filled) 32%, transparent);
11
+ display: inline-flex;
12
+ box-sizing: border-box;
13
+ font-family: var(--rp-font-family);
14
+ font-weight: var(--rp-font-weight-normal);
15
+ background-color: var(--rp-color-control-bg);
16
+ border: var(--rp-border-width-thin) solid var(--rp-color-control-border);
17
+ cursor: text;
18
+ transition: border-color var(--rp-transition-fast), box-shadow var(--rp-transition-fast);
19
+ }
20
+ .rp-textarea[data-v-1654f805]:hover:not(.rp-textarea--disabled):not(.rp-textarea--invalid):not(.rp-textarea--valid) {
21
+ border-color: var(--rp-color-control-border-hover);
22
+ }
23
+ .rp-textarea[data-v-1654f805]:focus-within:not(.rp-textarea--disabled):not(.rp-textarea--invalid):not(.rp-textarea--valid) {
24
+ border-color: var(--rp-color-control-border-focus);
25
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
26
+ }
27
+ .rp-textarea[data-v-1654f805] {
28
+ font-size: var(--_rp-textarea-font-size);
29
+ border-radius: var(--_rp-textarea-radius);
30
+ }
31
+ .rp-textarea--size-xs[data-v-1654f805] {
32
+ --_rp-textarea-padding-y: 4.5px;
33
+ --_rp-textarea-padding-x: calc(var(--rp-size-control-xs) / 3);
34
+ --_rp-textarea-font-size: var(--rp-font-size-xs);
35
+ }
36
+ .rp-textarea--size-sm[data-v-1654f805] {
37
+ --_rp-textarea-padding-y: 5.5px;
38
+ --_rp-textarea-padding-x: calc(var(--rp-size-control-sm) / 3);
39
+ --_rp-textarea-font-size: var(--rp-font-size-sm);
40
+ }
41
+ .rp-textarea--size-md[data-v-1654f805] {
42
+ --_rp-textarea-padding-y: 7px;
43
+ --_rp-textarea-padding-x: calc(var(--rp-size-control-md) / 3);
44
+ --_rp-textarea-font-size: var(--rp-font-size-md);
45
+ }
46
+ .rp-textarea--size-lg[data-v-1654f805] {
47
+ --_rp-textarea-padding-y: 9.5px;
48
+ --_rp-textarea-padding-x: calc(var(--rp-size-control-lg) / 3);
49
+ --_rp-textarea-font-size: var(--rp-font-size-lg);
50
+ }
51
+ .rp-textarea--size-xl[data-v-1654f805] {
52
+ --_rp-textarea-padding-y: 13px;
53
+ --_rp-textarea-padding-x: calc(var(--rp-size-control-xl) / 3);
54
+ --_rp-textarea-font-size: var(--rp-font-size-xl);
55
+ }
56
+ .rp-textarea--radius-xs[data-v-1654f805] {
57
+ --_rp-textarea-radius: var(--rp-radius-xs);
58
+ }
59
+ .rp-textarea--radius-sm[data-v-1654f805] {
60
+ --_rp-textarea-radius: var(--rp-radius-sm);
61
+ }
62
+ .rp-textarea--radius-md[data-v-1654f805] {
63
+ --_rp-textarea-radius: var(--rp-radius-md);
64
+ }
65
+ .rp-textarea--radius-lg[data-v-1654f805] {
66
+ --_rp-textarea-radius: var(--rp-radius-lg);
67
+ }
68
+ .rp-textarea--radius-xl[data-v-1654f805] {
69
+ --_rp-textarea-radius: var(--rp-radius-xl);
70
+ }
71
+ html.dark .rp-textarea[data-v-1654f805], [data-rp-color-scheme=dark] .rp-textarea[data-v-1654f805] {
72
+ --_rp-textarea-valid-border: var(--rp-color-green-light-color);
73
+ --_rp-textarea-valid-ring: color-mix(
74
+ in srgb,
75
+ var(--rp-color-green-light-color) 32%,
76
+ transparent
77
+ );
78
+ --_rp-textarea-invalid-border: var(--rp-color-red-light-color);
79
+ --_rp-textarea-invalid-ring: color-mix(
80
+ in srgb,
81
+ var(--rp-color-red-light-color) 32%,
82
+ transparent
83
+ );
84
+ }
85
+ .rp-textarea--disabled[data-v-1654f805] {
86
+ opacity: var(--rp-opacity-disabled);
87
+ cursor: not-allowed;
88
+ }
89
+ .rp-textarea--valid[data-v-1654f805] {
90
+ border-color: var(--_rp-textarea-valid-border);
91
+ }
92
+ .rp-textarea--valid[data-v-1654f805]:focus-within:not(.rp-textarea--disabled) {
93
+ border-color: var(--_rp-textarea-valid-border);
94
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-textarea-valid-ring);
95
+ }
96
+ .rp-textarea--invalid[data-v-1654f805] {
97
+ border-color: var(--_rp-textarea-invalid-border);
98
+ }
99
+ .rp-textarea--invalid[data-v-1654f805]:focus-within:not(.rp-textarea--disabled) {
100
+ border-color: var(--_rp-textarea-invalid-border);
101
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-textarea-invalid-ring);
102
+ }
103
+ .rp-textarea--readonly[data-v-1654f805] {
104
+ background-color: var(--rp-color-control-readonly-bg);
105
+ }
106
+ .rp-textarea--resize-vertical .rp-textarea__native[data-v-1654f805] {
107
+ resize: vertical;
108
+ }
109
+ .rp-textarea--resize-both .rp-textarea__native[data-v-1654f805] {
110
+ resize: both;
111
+ }
112
+ .rp-textarea__native[data-v-1654f805] {
113
+ box-sizing: border-box;
114
+ flex: 1;
115
+ width: 100%;
116
+ min-width: 0;
117
+ min-height: calc(1lh + var(--_rp-textarea-padding-y) + var(--_rp-textarea-padding-y));
118
+ padding: var(--_rp-textarea-padding-y) var(--_rp-textarea-padding-x);
119
+ border: none;
120
+ outline: none;
121
+ resize: none;
122
+ background: transparent;
123
+ font: inherit;
124
+ color: var(--rp-color-control-fg);
125
+ line-height: var(--rp-line-height-md);
126
+ }
127
+ .rp-textarea__native[data-v-1654f805]::placeholder {
128
+ color: var(--rp-color-control-placeholder);
129
+ }
130
+ .rp-textarea__native[data-v-1654f805]:disabled {
131
+ cursor: not-allowed;
132
+ }
131
133
  }
package/dist/textarea.js CHANGED
@@ -1,8 +1,9 @@
1
1
  import './textarea.css';
2
2
  import { t as bem } from "./bem.js";
3
+ import { n as useStylesApi, t as presence } from "./styles-api.js";
3
4
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
4
5
  import { t as useControlState } from "./useControlState.js";
5
- import { child, computed, createInvoker, createTemplateRefSetter, defineVaporComponent, delegateEvents, nextTick, onMounted, ref, renderEffect, setAttr, setClass, setProp, setValue, template, unref, watch } from "vue";
6
+ import { child, computed, defineVaporComponent, nextTick, onMounted, ref, renderEffect, setDynamicProps, setStaticTemplateRef, template, unref, watch } from "vue";
6
7
  //#region src/components/textarea/useTextarea.ts
7
8
  var MIN_ROWS = 1;
8
9
  var INTERACTIVE_SELECTOR = [
@@ -58,6 +59,7 @@ function resetTextareaHeight(textarea) {
58
59
  function useTextarea(props, emitUpdate) {
59
60
  const textareaRef = ref(null);
60
61
  const control = useControlState(props);
62
+ let heightSyncPending = false;
61
63
  const autosizeRows = computed(() => {
62
64
  const minRows = normalizeRows(props.minRows, normalizeRows(props.rows, MIN_ROWS)) ?? MIN_ROWS;
63
65
  const maxRows = normalizeRows(props.maxRows);
@@ -100,11 +102,16 @@ function useTextarea(props, emitUpdate) {
100
102
  textarea.style.overflowY = maxHeight !== void 0 && contentHeight > maxHeight ? "auto" : "hidden";
101
103
  }
102
104
  function scheduleTextareaHeightSync() {
103
- nextTick(syncTextareaHeight);
105
+ if (heightSyncPending) return;
106
+ heightSyncPending = true;
107
+ nextTick(() => {
108
+ heightSyncPending = false;
109
+ syncTextareaHeight();
110
+ });
104
111
  }
105
112
  function onInput(e) {
106
113
  emitUpdate(e.target.value);
107
- syncTextareaHeight();
114
+ if (props.autosize) scheduleTextareaHeightSync();
108
115
  }
109
116
  function focusTextarea(e) {
110
117
  if (control.disabled) return;
@@ -112,6 +119,9 @@ function useTextarea(props, emitUpdate) {
112
119
  if (target instanceof Element && isInteractiveElement(target)) return;
113
120
  textareaRef.value?.focus();
114
121
  }
122
+ function focus(options) {
123
+ textareaRef.value?.focus(options);
124
+ }
115
125
  onMounted(scheduleTextareaHeightSync);
116
126
  watch(autosizeWatchSource, scheduleTextareaHeightSync);
117
127
  return {
@@ -120,17 +130,18 @@ function useTextarea(props, emitUpdate) {
120
130
  rootClass,
121
131
  nativeRows,
122
132
  onInput,
123
- focusTextarea
133
+ focusTextarea,
134
+ focus
124
135
  };
125
136
  }
126
137
  //#endregion
127
138
  //#region src/components/textarea/textarea.vue?vue&type=script&setup=true&vapor=true&lang.ts
128
- var t0 = template("<div data-v-6c62dc31><textarea data-v-6c62dc31 class=rp-textarea__native>", 1);
129
- delegateEvents("input", "mousedown");
139
+ var t0 = template("<div data-v-1654f805><textarea data-v-1654f805>", 1);
130
140
  //#endregion
131
141
  //#region src/components/textarea/textarea.vue
132
142
  var textarea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
133
143
  name: "RpTextarea",
144
+ inheritAttrs: false,
134
145
  __name: "textarea",
135
146
  props: {
136
147
  id: {},
@@ -169,41 +180,78 @@ var textarea_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
169
180
  },
170
181
  ariaLabel: {},
171
182
  describedby: {},
172
- labelledby: {}
183
+ labelledby: {},
184
+ inputAttrs: {},
185
+ classNames: {},
186
+ styles: {}
173
187
  },
174
188
  emits: ["update:modelValue"],
175
- setup(__props, { emit: __emit }) {
189
+ setup(__props, { expose: __expose, emit: __emit }) {
176
190
  const props = __props;
177
191
  const emit = __emit;
178
- const { textareaRef, control, rootClass, nativeRows, onInput, focusTextarea } = useTextarea(props, (value) => {
192
+ const { textareaRef, control, rootClass, nativeRows, onInput, focusTextarea, focus } = useTextarea(props, (value) => {
179
193
  emit("update:modelValue", value);
180
194
  });
181
- const _setTemplateRef = createTemplateRefSetter();
195
+ const { getPartAttrs, getRootAttrs } = useStylesApi(props, "root");
196
+ const rootAttrs = computed(() => getRootAttrs({
197
+ class: rootClass.value,
198
+ onMousedown: focusTextarea,
199
+ "data-disabled": presence(control.disabled),
200
+ "data-readonly": presence(props.readonly),
201
+ "data-invalid": presence(control.invalid)
202
+ }));
203
+ const nativeInputAttrs = computed(() => {
204
+ const { class: compatibilityClass, style: compatibilityStyle, onInput: compatibilityOnInput, ...attrs } = props.inputAttrs ?? {};
205
+ return {
206
+ ...attrs,
207
+ ...getPartAttrs("input", {
208
+ class: "rp-textarea__native",
209
+ compatibilityClass,
210
+ compatibilityStyle
211
+ }),
212
+ onInput(event) {
213
+ onInput(event);
214
+ compatibilityOnInput?.(event);
215
+ }
216
+ };
217
+ });
218
+ __expose({
219
+ nativeElement: textareaRef,
220
+ focus
221
+ });
182
222
  const n1 = t0();
183
223
  const n0 = child(n1);
184
- n0.$evtinput = createInvoker((e) => unref(onInput)(e));
185
- _setTemplateRef(n0, textareaRef, null, "textareaRef");
186
- n1.$evtmousedown = createInvoker((e) => unref(focusTextarea)(e));
224
+ setStaticTemplateRef(n0, textareaRef, null, "textareaRef");
187
225
  renderEffect(() => {
188
226
  const _control = unref(control);
227
+ const _readonly = __props.readonly;
228
+ const _presence = unref(presence);
189
229
  const _control_required = _control.required;
190
- setClass(n1, unref(rootClass));
191
- setProp(n0, "id", _control.id);
192
- setProp(n0, "name", __props.name);
193
- setValue(n0, __props.modelValue);
194
- setProp(n0, "placeholder", __props.placeholder);
195
- setProp(n0, "rows", unref(nativeRows));
196
- setProp(n0, "disabled", _control.disabled || void 0);
197
- setProp(n0, "readonly", __props.readonly || void 0);
198
- setProp(n0, "required", _control_required || void 0);
199
- setAttr(n0, "aria-label", __props.ariaLabel || void 0);
200
- setAttr(n0, "aria-labelledby", _control.ariaLabelledby);
201
- setAttr(n0, "aria-describedby", _control.ariaDescribedby);
202
- setAttr(n0, "aria-invalid", _control.invalid || void 0);
203
- setAttr(n0, "aria-required", _control_required || void 0);
230
+ setDynamicProps(n1, [rootAttrs.value]);
231
+ setDynamicProps(n0, [nativeInputAttrs.value, {
232
+ id: _control.id,
233
+ name: __props.name,
234
+ value: __props.modelValue,
235
+ placeholder: __props.placeholder,
236
+ rows: unref(nativeRows),
237
+ disabled: _control.disabled || void 0,
238
+ readonly: _readonly || void 0,
239
+ required: _control_required || void 0,
240
+ "aria-label": __props.ariaLabel || void 0,
241
+ "aria-labelledby": _control.ariaLabelledby,
242
+ "aria-describedby": _control.ariaDescribedby,
243
+ "aria-invalid": _control.invalid || void 0,
244
+ "aria-required": _control_required || void 0,
245
+ "data-disabled": _presence(_control.disabled),
246
+ "data-readonly": _presence(_readonly),
247
+ "data-invalid": _presence(_control.invalid)
248
+ }]);
204
249
  });
205
250
  return n1;
206
251
  }
207
- }), [["__scopeId", "data-v-6c62dc31"]]);
252
+ }), [["__scopeId", "data-v-1654f805"]]);
253
+ //#endregion
254
+ //#region src/components/textarea/types.ts
255
+ var textareaParts = ["root", "input"];
208
256
  //#endregion
209
- export { textarea_default as t };
257
+ export { textarea_default as n, textareaParts as t };