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/input.css CHANGED
@@ -1,121 +1,123 @@
1
- .rp-input[data-v-67d291cf] {
2
- --_rp-input-height: var(--rp-size-control-md);
3
- --_rp-input-padding-x: calc(var(--rp-size-control-md) / 3);
4
- --_rp-input-font-size: var(--rp-font-size-md);
5
- --_rp-input-radius: var(--rp-radius-sm);
6
- --_rp-input-valid-border: var(--rp-color-green-outline);
7
- --_rp-input-valid-ring: color-mix(in srgb, var(--rp-color-green-outline) 32%, transparent);
8
- --_rp-input-invalid-border: var(--rp-color-red-outline);
9
- --_rp-input-invalid-ring: color-mix(in srgb, var(--rp-color-red-outline) 32%, transparent);
10
- display: inline-flex;
11
- align-items: center;
12
- justify-content: center;
13
- box-sizing: border-box;
14
- gap: var(--rp-spacing-2);
15
- font-family: var(--rp-font-family);
16
- font-weight: var(--rp-font-weight-normal);
17
- background-color: var(--rp-color-control-bg);
18
- border: var(--rp-border-width-thin) solid var(--rp-color-control-border);
19
- cursor: text;
20
- transition: border-color var(--rp-transition-fast), box-shadow var(--rp-transition-fast);
21
- }
22
- .rp-input[data-v-67d291cf]:hover:not(.rp-input--disabled):not(.rp-input--invalid):not(.rp-input--valid) {
23
- border-color: var(--rp-color-control-border-hover);
24
- }
25
- .rp-input[data-v-67d291cf]:focus-within:not(.rp-input--disabled):not(.rp-input--invalid):not(.rp-input--valid) {
26
- border-color: var(--rp-color-control-border-focus);
27
- box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
28
- }
29
- .rp-input[data-v-67d291cf] {
30
- height: var(--_rp-input-height);
31
- padding: 0 var(--_rp-input-padding-x);
32
- font-size: var(--_rp-input-font-size);
33
- border-radius: var(--_rp-input-radius);
34
- }
35
- .rp-input--size-xs[data-v-67d291cf] {
36
- --_rp-input-height: var(--rp-size-control-xs);
37
- --_rp-input-padding-x: calc(var(--rp-size-control-xs) / 3);
38
- --_rp-input-font-size: var(--rp-font-size-xs);
39
- }
40
- .rp-input--size-sm[data-v-67d291cf] {
41
- --_rp-input-height: var(--rp-size-control-sm);
42
- --_rp-input-padding-x: calc(var(--rp-size-control-sm) / 3);
43
- --_rp-input-font-size: var(--rp-font-size-sm);
44
- }
45
- .rp-input--size-md[data-v-67d291cf] {
46
- --_rp-input-height: var(--rp-size-control-md);
47
- --_rp-input-padding-x: calc(var(--rp-size-control-md) / 3);
48
- --_rp-input-font-size: var(--rp-font-size-md);
49
- }
50
- .rp-input--size-lg[data-v-67d291cf] {
51
- --_rp-input-height: var(--rp-size-control-lg);
52
- --_rp-input-padding-x: calc(var(--rp-size-control-lg) / 3);
53
- --_rp-input-font-size: var(--rp-font-size-lg);
54
- }
55
- .rp-input--size-xl[data-v-67d291cf] {
56
- --_rp-input-height: var(--rp-size-control-xl);
57
- --_rp-input-padding-x: calc(var(--rp-size-control-xl) / 3);
58
- --_rp-input-font-size: var(--rp-font-size-xl);
59
- }
60
- .rp-input--radius-xs[data-v-67d291cf] {
61
- --_rp-input-radius: var(--rp-radius-xs);
62
- }
63
- .rp-input--radius-sm[data-v-67d291cf] {
64
- --_rp-input-radius: var(--rp-radius-sm);
65
- }
66
- .rp-input--radius-md[data-v-67d291cf] {
67
- --_rp-input-radius: var(--rp-radius-md);
68
- }
69
- .rp-input--radius-lg[data-v-67d291cf] {
70
- --_rp-input-radius: var(--rp-radius-lg);
71
- }
72
- .rp-input--radius-xl[data-v-67d291cf] {
73
- --_rp-input-radius: var(--rp-radius-xl);
74
- }
75
- .rp-input--disabled[data-v-67d291cf] {
76
- opacity: var(--rp-opacity-disabled);
77
- cursor: not-allowed;
78
- }
79
- .rp-input--valid[data-v-67d291cf] {
80
- border-color: var(--_rp-input-valid-border);
81
- }
82
- .rp-input--valid[data-v-67d291cf]:focus-within:not(.rp-input--disabled) {
83
- border-color: var(--_rp-input-valid-border);
84
- box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-input-valid-ring);
85
- }
86
- .rp-input--invalid[data-v-67d291cf] {
87
- border-color: var(--_rp-input-invalid-border);
88
- }
89
- .rp-input--invalid[data-v-67d291cf]:focus-within:not(.rp-input--disabled) {
90
- border-color: var(--_rp-input-invalid-border);
91
- box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-input-invalid-ring);
92
- }
93
- .rp-input--readonly[data-v-67d291cf] {
94
- background-color: var(--rp-color-control-readonly-bg);
95
- }
96
- .rp-input__native[data-v-67d291cf] {
97
- box-sizing: border-box;
98
- flex: 1;
99
- width: 100%;
100
- height: 100%;
101
- min-width: 0;
102
- padding: 0;
103
- border: none;
104
- outline: none;
105
- background: transparent;
106
- font: inherit;
107
- color: var(--rp-color-control-fg);
108
- line-height: 1;
109
- }
110
- .rp-input__native[data-v-67d291cf]::placeholder {
111
- color: var(--rp-color-control-placeholder);
112
- }
113
- .rp-input__native[data-v-67d291cf]:disabled {
114
- cursor: not-allowed;
115
- }
116
- .rp-input__left[data-v-67d291cf], .rp-input__right[data-v-67d291cf] {
117
- display: inline-flex;
118
- align-items: center;
119
- flex-shrink: 0;
120
- color: var(--rp-color-control-icon);
1
+ @layer ropav.components {
2
+ .rp-input[data-v-e51bce91] {
3
+ --_rp-input-height: var(--rp-size-control-md);
4
+ --_rp-input-padding-x: calc(var(--rp-size-control-md) / 3);
5
+ --_rp-input-font-size: var(--rp-font-size-md);
6
+ --_rp-input-radius: var(--rp-radius-sm);
7
+ --_rp-input-valid-border: var(--rp-color-green-outline);
8
+ --_rp-input-valid-ring: color-mix(in srgb, var(--rp-color-green-outline) 32%, transparent);
9
+ --_rp-input-invalid-border: var(--rp-color-red-outline);
10
+ --_rp-input-invalid-ring: color-mix(in srgb, var(--rp-color-red-outline) 32%, transparent);
11
+ display: inline-flex;
12
+ align-items: center;
13
+ justify-content: center;
14
+ box-sizing: border-box;
15
+ gap: var(--rp-spacing-2);
16
+ font-family: var(--rp-font-family);
17
+ font-weight: var(--rp-font-weight-normal);
18
+ background-color: var(--rp-color-control-bg);
19
+ border: var(--rp-border-width-thin) solid var(--rp-color-control-border);
20
+ cursor: text;
21
+ transition: border-color var(--rp-transition-fast), box-shadow var(--rp-transition-fast);
22
+ }
23
+ .rp-input[data-v-e51bce91]:hover:not(.rp-input--disabled):not(.rp-input--invalid):not(.rp-input--valid) {
24
+ border-color: var(--rp-color-control-border-hover);
25
+ }
26
+ .rp-input[data-v-e51bce91]:focus-within:not(.rp-input--disabled):not(.rp-input--invalid):not(.rp-input--valid) {
27
+ border-color: var(--rp-color-control-border-focus);
28
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
29
+ }
30
+ .rp-input[data-v-e51bce91] {
31
+ height: var(--_rp-input-height);
32
+ padding: 0 var(--_rp-input-padding-x);
33
+ font-size: var(--_rp-input-font-size);
34
+ border-radius: var(--_rp-input-radius);
35
+ }
36
+ .rp-input--size-xs[data-v-e51bce91] {
37
+ --_rp-input-height: var(--rp-size-control-xs);
38
+ --_rp-input-padding-x: calc(var(--rp-size-control-xs) / 3);
39
+ --_rp-input-font-size: var(--rp-font-size-xs);
40
+ }
41
+ .rp-input--size-sm[data-v-e51bce91] {
42
+ --_rp-input-height: var(--rp-size-control-sm);
43
+ --_rp-input-padding-x: calc(var(--rp-size-control-sm) / 3);
44
+ --_rp-input-font-size: var(--rp-font-size-sm);
45
+ }
46
+ .rp-input--size-md[data-v-e51bce91] {
47
+ --_rp-input-height: var(--rp-size-control-md);
48
+ --_rp-input-padding-x: calc(var(--rp-size-control-md) / 3);
49
+ --_rp-input-font-size: var(--rp-font-size-md);
50
+ }
51
+ .rp-input--size-lg[data-v-e51bce91] {
52
+ --_rp-input-height: var(--rp-size-control-lg);
53
+ --_rp-input-padding-x: calc(var(--rp-size-control-lg) / 3);
54
+ --_rp-input-font-size: var(--rp-font-size-lg);
55
+ }
56
+ .rp-input--size-xl[data-v-e51bce91] {
57
+ --_rp-input-height: var(--rp-size-control-xl);
58
+ --_rp-input-padding-x: calc(var(--rp-size-control-xl) / 3);
59
+ --_rp-input-font-size: var(--rp-font-size-xl);
60
+ }
61
+ .rp-input--radius-xs[data-v-e51bce91] {
62
+ --_rp-input-radius: var(--rp-radius-xs);
63
+ }
64
+ .rp-input--radius-sm[data-v-e51bce91] {
65
+ --_rp-input-radius: var(--rp-radius-sm);
66
+ }
67
+ .rp-input--radius-md[data-v-e51bce91] {
68
+ --_rp-input-radius: var(--rp-radius-md);
69
+ }
70
+ .rp-input--radius-lg[data-v-e51bce91] {
71
+ --_rp-input-radius: var(--rp-radius-lg);
72
+ }
73
+ .rp-input--radius-xl[data-v-e51bce91] {
74
+ --_rp-input-radius: var(--rp-radius-xl);
75
+ }
76
+ .rp-input--disabled[data-v-e51bce91] {
77
+ opacity: var(--rp-opacity-disabled);
78
+ cursor: not-allowed;
79
+ }
80
+ .rp-input--valid[data-v-e51bce91] {
81
+ border-color: var(--_rp-input-valid-border);
82
+ }
83
+ .rp-input--valid[data-v-e51bce91]:focus-within:not(.rp-input--disabled) {
84
+ border-color: var(--_rp-input-valid-border);
85
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-input-valid-ring);
86
+ }
87
+ .rp-input--invalid[data-v-e51bce91] {
88
+ border-color: var(--_rp-input-invalid-border);
89
+ }
90
+ .rp-input--invalid[data-v-e51bce91]:focus-within:not(.rp-input--disabled) {
91
+ border-color: var(--_rp-input-invalid-border);
92
+ box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-input-invalid-ring);
93
+ }
94
+ .rp-input--readonly[data-v-e51bce91] {
95
+ background-color: var(--rp-color-control-readonly-bg);
96
+ }
97
+ .rp-input__native[data-v-e51bce91] {
98
+ box-sizing: border-box;
99
+ flex: 1;
100
+ width: 100%;
101
+ height: 100%;
102
+ min-width: 0;
103
+ padding: 0;
104
+ border: none;
105
+ outline: none;
106
+ background: transparent;
107
+ font: inherit;
108
+ color: var(--rp-color-control-fg);
109
+ line-height: 1;
110
+ }
111
+ .rp-input__native[data-v-e51bce91]::placeholder {
112
+ color: var(--rp-color-control-placeholder);
113
+ }
114
+ .rp-input__native[data-v-e51bce91]:disabled {
115
+ cursor: not-allowed;
116
+ }
117
+ .rp-input__left[data-v-e51bce91], .rp-input__right[data-v-e51bce91] {
118
+ display: inline-flex;
119
+ align-items: center;
120
+ flex-shrink: 0;
121
+ color: var(--rp-color-control-icon);
122
+ }
121
123
  }
package/dist/input.js CHANGED
@@ -1,8 +1,9 @@
1
1
  import './input.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, createIf, createInvoker, createSlot, createTemplateRefSetter, defineVaporComponent, delegateEvents, ref, renderEffect, setClass, setDynamicProps, setInsertionState, template, unref, watch } from "vue";
6
+ import { child, computed, createIf, createSlot, defineVaporComponent, ref, renderEffect, setDynamicProps, setInsertionState, setStaticTemplateRef, template, unref, watch } from "vue";
6
7
  //#region src/components/input/useInput.ts
7
8
  var INTERACTIVE_SELECTOR = [
8
9
  "button",
@@ -46,14 +47,13 @@ function useInput(props, emitUpdate) {
46
47
  }
47
48
  //#endregion
48
49
  //#region src/components/input/input.vue?vue&type=script&setup=true&vapor=true&lang.ts
49
- var t0 = template("<span data-v-67d291cf class=rp-input__left>");
50
- var t1 = template("<span data-v-67d291cf class=rp-input__right>");
51
- var t2 = template("<label data-v-67d291cf><input data-v-67d291cf>", 1);
52
- delegateEvents("mousedown");
50
+ var t0 = template("<span data-v-e51bce91>");
51
+ var t1 = template("<label data-v-e51bce91><input data-v-e51bce91>", 1);
53
52
  //#endregion
54
53
  //#region src/components/input/input.vue
55
54
  var input_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
56
55
  name: "RpInput",
56
+ inheritAttrs: false,
57
57
  __name: "input",
58
58
  props: {
59
59
  id: {},
@@ -87,7 +87,9 @@ var input_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
87
87
  describedby: {},
88
88
  labelledby: {},
89
89
  inputAttrs: {},
90
- validationMessage: {}
90
+ validationMessage: {},
91
+ classNames: {},
92
+ styles: {}
91
93
  },
92
94
  emits: ["update:modelValue"],
93
95
  setup(__props, { emit: __emit, slots: $slots }) {
@@ -96,10 +98,40 @@ var input_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
96
98
  const { inputRef, control, rootClass, onInput, focusInput } = useInput(props, (value) => {
97
99
  emit("update:modelValue", value);
98
100
  });
101
+ const { getPartAttrs, getRootAttrs } = useStylesApi(props, "root");
102
+ const rootAttrs = computed(() => getRootAttrs({
103
+ class: rootClass.value,
104
+ onMousedown: focusInput,
105
+ "data-disabled": presence(control.disabled),
106
+ "data-readonly": presence(props.readonly),
107
+ "data-invalid": presence(control.invalid)
108
+ }));
99
109
  const nativeInputAttrs = computed(() => {
100
110
  const attrs = props.inputAttrs ?? {};
111
+ const { class: compatibilityClass, style: compatibilityStyle, ...forwardedAttrs } = attrs;
101
112
  return {
102
- ...attrs,
113
+ ...forwardedAttrs,
114
+ ...getPartAttrs("input", {
115
+ class: "rp-input__native",
116
+ compatibilityClass,
117
+ compatibilityStyle
118
+ }),
119
+ id: control.id,
120
+ name: props.name,
121
+ type: props.type,
122
+ value: props.modelValue,
123
+ placeholder: props.placeholder,
124
+ disabled: control.disabled || void 0,
125
+ readonly: props.readonly || void 0,
126
+ required: control.required || void 0,
127
+ "aria-label": props.ariaLabel || void 0,
128
+ "aria-labelledby": control.ariaLabelledby,
129
+ "aria-describedby": control.ariaDescribedby,
130
+ "aria-invalid": control.invalid || void 0,
131
+ "aria-required": control.required || void 0,
132
+ "data-disabled": presence(control.disabled),
133
+ "data-readonly": presence(props.readonly),
134
+ "data-invalid": presence(control.invalid),
103
135
  onInput(event) {
104
136
  onInput(event);
105
137
  attrs.onInput?.(event);
@@ -110,48 +142,29 @@ var input_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
110
142
  flush: "post",
111
143
  immediate: true
112
144
  });
113
- const _setTemplateRef = createTemplateRefSetter();
114
- const n9 = t2();
145
+ const n9 = t1();
115
146
  const n4 = child(n9, 1);
116
- renderEffect(() => setClass(n9, unref(rootClass)));
147
+ renderEffect(() => setDynamicProps(n9, [rootAttrs.value]));
117
148
  setInsertionState(n9, 0, 0);
118
149
  createIf(() => $slots.left, () => {
119
150
  const n3 = t0();
151
+ renderEffect(() => setDynamicProps(n3, [unref(getPartAttrs)("left", { class: "rp-input__left" })]));
120
152
  setInsertionState(n3, null, 0);
121
153
  createSlot("left", null, null, 1);
122
154
  return n3;
123
155
  });
124
- _setTemplateRef(n4, inputRef, null, "inputRef");
125
- renderEffect(() => {
126
- const _control = unref(control);
127
- const _control_required = _control.required;
128
- setDynamicProps(n4, [nativeInputAttrs.value, {
129
- id: _control.id,
130
- name: __props.name,
131
- class: "rp-input__native",
132
- type: __props.type,
133
- value: __props.modelValue,
134
- placeholder: __props.placeholder,
135
- disabled: _control.disabled || void 0,
136
- readonly: __props.readonly || void 0,
137
- required: _control_required || void 0,
138
- "aria-label": __props.ariaLabel || void 0,
139
- "aria-labelledby": _control.ariaLabelledby,
140
- "aria-describedby": _control.ariaDescribedby,
141
- "aria-invalid": _control.invalid || void 0,
142
- "aria-required": _control_required || void 0
143
- }]);
144
- });
156
+ setStaticTemplateRef(n4, inputRef, null, "inputRef");
157
+ renderEffect(() => setDynamicProps(n4, [nativeInputAttrs.value]));
145
158
  setInsertionState(n9, null, 2);
146
159
  createIf(() => $slots.right, () => {
147
- const n8 = t1();
160
+ const n8 = t0();
161
+ renderEffect(() => setDynamicProps(n8, [unref(getPartAttrs)("right", { class: "rp-input__right" })]));
148
162
  setInsertionState(n8, null, 0);
149
163
  createSlot("right", null, null, 1);
150
164
  return n8;
151
165
  });
152
- n9.$evtmousedown = createInvoker((e) => unref(focusInput)(e));
153
166
  return n9;
154
167
  }
155
- }), [["__scopeId", "data-v-67d291cf"]]);
168
+ }), [["__scopeId", "data-v-e51bce91"]]);
156
169
  //#endregion
157
170
  export { input_default as t };
package/dist/input2.js ADDED
@@ -0,0 +1,9 @@
1
+ //#region src/components/input/types.ts
2
+ var inputParts = [
3
+ "root",
4
+ "input",
5
+ "left",
6
+ "right"
7
+ ];
8
+ //#endregion
9
+ export { inputParts as t };