ropav 0.1.5 → 0.1.7

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 (235) hide show
  1. package/README.md +10 -0
  2. package/dist/accordion.css +17 -17
  3. package/dist/accordion.js +125 -154
  4. package/dist/alert.css +18 -18
  5. package/dist/alert.js +20 -20
  6. package/dist/aria.js +14 -0
  7. package/dist/aspect-ratio.js +1 -1
  8. package/dist/attributes.js +9 -0
  9. package/dist/attributes2.js +29 -0
  10. package/dist/avatar.css +19 -19
  11. package/dist/avatar.js +10 -18
  12. package/dist/badge.css +16 -16
  13. package/dist/badge.js +6 -6
  14. package/dist/base.css +18 -13
  15. package/dist/button-group.js +1 -1
  16. package/dist/button-link.js +13 -14
  17. package/dist/button.css +32 -27
  18. package/dist/button.js +13 -14
  19. package/dist/{useButtonColor.js → button.scss_vue_type_style_index_0_src_true_lang.js} +3 -2
  20. package/dist/card.js +1 -1
  21. package/dist/checkbox.css +32 -32
  22. package/dist/checkbox.js +23 -29
  23. package/dist/collapse.css +6 -6
  24. package/dist/collapse.js +8 -7
  25. package/dist/collectionNavigation.js +2 -99
  26. package/dist/color-input.css +19 -19
  27. package/dist/color-input.js +15 -14
  28. package/dist/color-picker.css +40 -40
  29. package/dist/color-picker.js +222 -202
  30. package/dist/color-picker2.js +1 -9
  31. package/dist/color-swatch.css +4 -4
  32. package/dist/color-swatch.js +7 -9
  33. package/dist/color.js +5 -10
  34. package/dist/componentColors.js +165 -84
  35. package/dist/componentRef.js +26 -0
  36. package/dist/components/accordion/accordionContext.d.ts +3 -0
  37. package/dist/components/accordion/accordionModel.d.ts +14 -0
  38. package/dist/components/accordion/index.d.ts +2 -1
  39. package/dist/components/accordion/index.js +1 -1
  40. package/dist/components/accordion/types.d.ts +1 -2
  41. package/dist/components/accordion/useAccordion.d.ts +2 -2
  42. package/dist/components/accordion/useAccordionItem.d.ts +2 -0
  43. package/dist/components/checkbox/useCheckbox.d.ts +2 -3
  44. package/dist/components/color-input/color-input.d.ts +2 -2
  45. package/dist/components/color-input/useColorInput.d.ts +1 -1
  46. package/dist/components/color-picker/index.js +2 -2
  47. package/dist/components/color-picker/types.d.ts +2 -2
  48. package/dist/components/color-picker/useColorPickerSaturation.d.ts +22 -0
  49. package/dist/components/color-picker/useColorPickerSlider.d.ts +20 -0
  50. package/dist/components/color-picker/useColorPickerValue.d.ts +1 -1
  51. package/dist/components/dialog/{dialog-core.d.ts → dialogContext.d.ts} +2 -6
  52. package/dist/components/dialog/useDialogContentInteractions.d.ts +18 -0
  53. package/dist/components/dialog/useDialogRootState.d.ts +19 -0
  54. package/dist/components/dropdown-menu/dropdown-menu-content.d.ts +2 -2
  55. package/dist/components/dropdown-menu/dropdown-menu-item-row.d.ts +1 -1
  56. package/dist/components/dropdown-menu/dropdown-menu-items.d.ts +1 -1
  57. package/dist/components/dropdown-menu/dropdown-menu-model.d.ts +8 -0
  58. package/dist/components/dropdown-menu/dropdown-menu-root.d.ts +2 -2
  59. package/dist/components/dropdown-menu/dropdown-menu-sub-content.d.ts +2 -2
  60. package/dist/components/dropdown-menu/dropdown-menu-sub-trigger.d.ts +1 -1
  61. package/dist/components/dropdown-menu/dropdown-menu-sub.d.ts +1 -1
  62. package/dist/components/dropdown-menu/dropdown-menu.d.ts +3 -3
  63. package/dist/components/dropdown-menu/{dropdown-menu-primitive-core.d.ts → dropdownMenuContext.d.ts} +17 -19
  64. package/dist/components/dropdown-menu/dropdownMenuDataModel.d.ts +20 -0
  65. package/dist/components/dropdown-menu/dropdownMenuInteraction.d.ts +3 -0
  66. package/dist/components/dropdown-menu/dropdownMenuInteractionNavigation.d.ts +24 -0
  67. package/dist/components/dropdown-menu/dropdownMenuInteractionRegistry.d.ts +42 -0
  68. package/dist/components/dropdown-menu/dropdownMenuInteractionTypes.d.ts +85 -0
  69. package/dist/components/dropdown-menu/useDropdownMenu.d.ts +11 -11
  70. package/dist/components/dropdown-menu/useDropdownMenuContextTrigger.d.ts +9 -0
  71. package/dist/components/dropdown-menu/useDropdownMenuDataController.d.ts +34 -0
  72. package/dist/components/dropdown-menu/useDropdownMenuDataRegistration.d.ts +22 -0
  73. package/dist/components/dropdown-menu/useDropdownMenuHoverIntent.d.ts +6 -5
  74. package/dist/components/dropdown-menu/useDropdownMenuInteractionDismissal.d.ts +17 -0
  75. package/dist/components/dropdown-menu/useDropdownMenuInteractionKeyboard.d.ts +19 -0
  76. package/dist/components/dropdown-menu/useDropdownMenuPortalPosition.d.ts +0 -1
  77. package/dist/components/dropdown-menu/useDropdownMenuPresentation.d.ts +29 -0
  78. package/dist/components/dropdown-menu/useDropdownMenuPrimitiveContent.d.ts +2 -2
  79. package/dist/components/dropdown-menu/useDropdownMenuRenderItems.d.ts +1 -1
  80. package/dist/components/dropdown-menu/useDropdownMenuTargetBindings.d.ts +19 -0
  81. package/dist/components/floating/hoverDisclosureInteractionModel.d.ts +42 -0
  82. package/dist/components/floating/index.js +1 -1
  83. package/dist/components/floating/useFloatingPosition.d.ts +0 -1
  84. package/dist/components/floating/useHoverDisclosureInteractions.d.ts +32 -0
  85. package/dist/components/floating/useHoverDisclosureOpenState.d.ts +25 -0
  86. package/dist/components/floating/useHoverDisclosureTargetBinding.d.ts +27 -0
  87. package/dist/components/input/useInput.d.ts +1 -1
  88. package/dist/components/number-input/numberInputModel.d.ts +15 -0
  89. package/dist/components/number-input/useNumberInput.d.ts +4 -18
  90. package/dist/components/pagination/index.d.ts +1 -1
  91. package/dist/components/pagination/index.js +1 -1
  92. package/dist/components/pagination/paginationModel.d.ts +4 -0
  93. package/dist/components/pagination/types.d.ts +15 -0
  94. package/dist/components/pagination/usePagination.d.ts +3 -19
  95. package/dist/components/popover/usePopoverBindings.d.ts +16 -0
  96. package/dist/components/progress/progressModel.d.ts +8 -0
  97. package/dist/components/progress/useProgress.d.ts +1 -7
  98. package/dist/components/radio/useRadio.d.ts +3 -4
  99. package/dist/components/scroll-area/scroll-area.d.ts +1 -1
  100. package/dist/components/scroll-area/scrollAreaModel.d.ts +64 -0
  101. package/dist/components/scroll-area/types.d.ts +4 -0
  102. package/dist/components/scroll-area/useScrollArea.d.ts +70 -52
  103. package/dist/components/scroll-area/{useScrollAreaPresentation.d.ts → useScrollAreaAttributes.d.ts} +37 -14
  104. package/dist/components/scroll-area/useScrollAreaDerivedState.d.ts +8 -0
  105. package/dist/components/scroll-area/useScrollAreaMeasurement.d.ts +35 -0
  106. package/dist/components/scroll-area/useScrollAreaPointer.d.ts +10 -8
  107. package/dist/components/scroll-area/useScrollAreaVisibility.d.ts +15 -20
  108. package/dist/components/select/useSelect.d.ts +2 -1
  109. package/dist/components/select/useSelectNativeValue.d.ts +1 -7
  110. package/dist/components/slider/rangeSliderModel.d.ts +41 -0
  111. package/dist/components/slider/{sliderCore.d.ts → sliderModel.d.ts} +2 -2
  112. package/dist/components/slider/useRangeSlider.d.ts +9 -17
  113. package/dist/components/slider/useRangeSliderValueState.d.ts +40 -0
  114. package/dist/components/slider/useSlider.d.ts +8 -14
  115. package/dist/components/slider/useSliderPointerPreview.d.ts +22 -0
  116. package/dist/components/slider/useSliderTooltipState.d.ts +40 -0
  117. package/dist/components/slider/useSliderValueState.d.ts +33 -0
  118. package/dist/components/switch/useSwitch.d.ts +1 -1
  119. package/dist/components/teleport-provider/index.js +1 -1
  120. package/dist/components/teleport-provider/useTeleportTarget.d.ts +1 -2
  121. package/dist/components/textarea/useTextarea.d.ts +1 -1
  122. package/dist/components/toast/useToastLifecycle.d.ts +19 -0
  123. package/dist/components/tooltip/useTooltip.d.ts +1 -2
  124. package/dist/composables/index.d.ts +2 -0
  125. package/dist/composables/index.js +2 -0
  126. package/dist/composables/useControllableValue.d.ts +14 -0
  127. package/dist/css.js +12 -0
  128. package/dist/dialog.js +227 -216
  129. package/dist/dropdown-menu.js +1493 -1118
  130. package/dist/events.js +59 -0
  131. package/dist/field.css +8 -8
  132. package/dist/field.js +13 -25
  133. package/dist/floating.js +553 -312
  134. package/dist/floatingOffset.js +11 -0
  135. package/dist/focus-trap.js +7 -5
  136. package/dist/focusNavigation.js +37 -0
  137. package/dist/icon-button.css +12 -173
  138. package/dist/icon-button.js +8 -7
  139. package/dist/index.d.ts +5 -4
  140. package/dist/index.js +13 -11
  141. package/dist/input.css +24 -24
  142. package/dist/input.js +20 -32
  143. package/dist/interactive.js +18 -0
  144. package/dist/modal.js +11 -7
  145. package/dist/number-input.css +18 -18
  146. package/dist/number-input.js +15 -13
  147. package/dist/number.js +22 -0
  148. package/dist/overlay.js +3 -2
  149. package/dist/pagination.css +28 -28
  150. package/dist/pagination.js +67 -65
  151. package/dist/pointer.js +9 -0
  152. package/dist/popover.css +34 -34
  153. package/dist/popover.js +93 -91
  154. package/dist/progress.css +29 -21
  155. package/dist/progress.js +25 -21
  156. package/dist/query.js +40 -0
  157. package/dist/radio.css +18 -18
  158. package/dist/radio.js +31 -37
  159. package/dist/rafScheduler.js +34 -0
  160. package/dist/scroll-area.css +35 -26
  161. package/dist/scroll-area.js +553 -500
  162. package/dist/select.css +45 -45
  163. package/dist/select.js +70 -56
  164. package/dist/slider.css +191 -191
  165. package/dist/slider.js +695 -628
  166. package/dist/styles-api.d.ts +0 -1
  167. package/dist/styles-api.js +1 -4
  168. package/dist/switch.css +17 -17
  169. package/dist/switch.js +15 -16
  170. package/dist/tabs.css +46 -46
  171. package/dist/tabs.js +51 -68
  172. package/dist/text.js +17 -0
  173. package/dist/textarea.css +26 -26
  174. package/dist/textarea.js +22 -33
  175. package/dist/toast.css +26 -26
  176. package/dist/toast.js +157 -129
  177. package/dist/tooltip.css +12 -12
  178. package/dist/tooltip.js +46 -47
  179. package/dist/useCollapse.js +19 -17
  180. package/dist/useControlState.js +4 -7
  181. package/dist/useControllableValue.js +8 -2
  182. package/dist/useFloatingPosition.js +122 -1128
  183. package/dist/useFormControl.js +3 -2
  184. package/dist/useOverlayZIndex.js +2 -6
  185. package/dist/useRequiredInject.js +1 -1
  186. package/dist/useTeleportTarget.js +3 -14
  187. package/dist/useTypeahead.js +94 -0
  188. package/dist/utils/aria.d.ts +3 -0
  189. package/dist/utils/attributes.d.ts +2 -0
  190. package/dist/utils/bem.d.ts +3 -0
  191. package/dist/utils/collectionNavigation.d.ts +2 -0
  192. package/dist/utils/color.d.ts +7 -0
  193. package/dist/{components/color-picker/color-picker-utils.d.ts → utils/colorPicker.d.ts} +5 -4
  194. package/dist/utils/componentColors.d.ts +7 -0
  195. package/dist/utils/css.d.ts +3 -0
  196. package/dist/utils/dom/ancestry.d.ts +7 -0
  197. package/dist/utils/dom/attributes.d.ts +16 -0
  198. package/dist/utils/dom/componentRef.d.ts +4 -0
  199. package/dist/utils/dom/events.d.ts +5 -0
  200. package/dist/utils/dom/focusNavigation.d.ts +7 -0
  201. package/dist/utils/dom/interactive.d.ts +2 -0
  202. package/dist/utils/dom/pointer.d.ts +2 -0
  203. package/dist/utils/dom/query.d.ts +4 -0
  204. package/dist/utils/dom/scroll.d.ts +23 -0
  205. package/dist/utils/floatingOffset.d.ts +10 -0
  206. package/dist/utils/geometry.d.ts +14 -0
  207. package/dist/utils/indexPath.d.ts +6 -0
  208. package/dist/utils/number.d.ts +4 -0
  209. package/dist/utils/rafScheduler.d.ts +4 -0
  210. package/dist/utils/text.d.ts +2 -0
  211. package/docs/code-architecture.md +118 -0
  212. package/docs/public-composables-api.md +52 -0
  213. package/docs/public-floating-api.md +6 -5
  214. package/package.json +54 -46
  215. package/src/styles/_mixins.scss +4 -0
  216. package/src/styles/_tokens.scss +12 -12
  217. package/src/styles/_variables.scss +1 -1
  218. package/dist/button-link.css +0 -167
  219. package/dist/components/dropdown-menu/dropdown-menu-outside.d.ts +0 -3
  220. package/dist/components/dropdown-menu/dropdown-menu-utils.d.ts +0 -21
  221. package/dist/components/dropdown-menu/useDropdownMenuDisclosure.d.ts +0 -37
  222. package/dist/components/dropdown-menu/useDropdownMenuDom.d.ts +0 -29
  223. package/dist/components/dropdown-menu/useDropdownMenuInteractions.d.ts +0 -52
  224. package/dist/components/dropdown-menu/useDropdownMenuNavigation.d.ts +0 -17
  225. package/dist/components/dropdown-menu/useDropdownSubmenus.d.ts +0 -18
  226. package/dist/components/scroll-area/scrollAreaCore.d.ts +0 -25
  227. package/dist/components/scroll-area/useScrollAreaControls.d.ts +0 -25
  228. package/dist/components/scroll-area/useScrollAreaMetrics.d.ts +0 -35
  229. /package/dist/components/alert/{useAlertColor.d.ts → alertColor.d.ts} +0 -0
  230. /package/dist/components/avatar/{useAvatarColor.d.ts → avatarColor.d.ts} +0 -0
  231. /package/dist/components/badge/{useBadgeColor.d.ts → badgeColor.d.ts} +0 -0
  232. /package/dist/components/button/{useButtonColor.d.ts → buttonColor.d.ts} +0 -0
  233. /package/dist/components/color-swatch/{useColorSwatchColor.d.ts → colorSwatchColor.d.ts} +0 -0
  234. /package/dist/components/toast/{useToastColor.d.ts → toastColor.d.ts} +0 -0
  235. /package/dist/{composables → internal/composables}/useOverlayLayer.d.ts +0 -0
package/dist/alert.js CHANGED
@@ -1,11 +1,12 @@
1
1
  import './alert.css';
2
- import { t as x_default } from "./x.js";
2
+ import { t as useControllableValue } from "./useControllableValue.js";
3
+ import { t as useStylesApi } from "./styles-api.js";
3
4
  import { t as bem } from "./bem.js";
4
- import { n as useStylesApi } from "./styles-api.js";
5
- import { i as getComponentVariantColorRoles, t as componentColors } from "./componentColors.js";
6
5
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
7
- import { computed, createComponent, createIf, createInvoker, createSlot, defineVaporComponent, delegateEvents, ref, renderEffect, setDynamicProps, setInsertionState, setText, template, toDisplayString, txt, unref, useSlots, watch } from "vue";
8
- //#region src/components/alert/useAlertColor.ts
6
+ import { t as x_default } from "./x.js";
7
+ import { a as getComponentVariantColorRoles, t as componentColors } from "./componentColors.js";
8
+ import { computed, createComponent, createIf, createSlot, defineVaporComponent, on, renderEffect, setDynamicProps, setInsertionState, setText, template, toDisplayString, txt, unref, useSlots } from "vue";
9
+ //#region src/components/alert/alertColor.ts
9
10
  function getAlertColorStyle(color, variant, autoContrast, contrastColor) {
10
11
  if (!color && !variant) return void 0;
11
12
  const resolvedVariant = variant ?? "subtle";
@@ -27,13 +28,12 @@ function getAlertColorStyle(color, variant, autoContrast, contrastColor) {
27
28
  }
28
29
  //#endregion
29
30
  //#region src/components/alert/alert.vue?vue&type=script&setup=true&vapor=true&lang.ts
30
- var t0 = template("<div data-v-433c81a2>");
31
+ var t0 = template("<div data-v-09abef83>");
31
32
  var t1 = template(" ");
32
- var t2 = template("<p data-v-433c81a2> ");
33
- var t3 = template("<div data-v-433c81a2 class=rp-alert__content>");
34
- var t4 = template("<button data-v-433c81a2>");
35
- var t5 = template("<div data-v-433c81a2>", 1);
36
- delegateEvents("click");
33
+ var t2 = template("<p data-v-09abef83> ");
34
+ var t3 = template("<div data-v-09abef83 class=rp-alert__content>");
35
+ var t4 = template("<button data-v-09abef83>");
36
+ var t5 = template("<div data-v-09abef83>", 1);
37
37
  //#endregion
38
38
  //#region src/components/alert/alert.vue
39
39
  var alert_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
@@ -69,11 +69,12 @@ var alert_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
69
69
  const props = __props;
70
70
  const emit = __emit;
71
71
  const slots = useSlots();
72
- const localOpen = ref(props.open ?? true);
73
- watch(() => props.open, (open) => {
74
- if (open !== void 0) localOpen.value = open;
72
+ const controllableOpen = useControllableValue({
73
+ modelValue: () => props.open,
74
+ defaultValue: () => true,
75
+ onChange: (open) => emit("update:open", open)
75
76
  });
76
- const isOpen = computed(() => props.open ?? localOpen.value);
77
+ const isOpen = controllableOpen.value;
77
78
  const hasTitle = computed(() => Boolean(props.title || slots.title));
78
79
  const hasDescription = computed(() => Boolean(props.description));
79
80
  const hasContent = computed(() => Boolean(hasTitle.value || hasDescription.value || slots.default));
@@ -91,11 +92,10 @@ var alert_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
91
92
  role: resolvedRole.value
92
93
  }));
93
94
  function closeAlert() {
94
- localOpen.value = false;
95
- emit("update:open", false);
95
+ controllableOpen.setValue(false);
96
96
  emit("close");
97
97
  }
98
- return createIf(() => isOpen.value, () => {
98
+ return createIf(() => unref(isOpen), () => {
99
99
  const n30 = t5();
100
100
  renderEffect(() => setDynamicProps(n30, [rootAttrs.value]));
101
101
  setInsertionState(n30, null, 0);
@@ -158,13 +158,13 @@ var alert_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
158
158
  }]));
159
159
  setInsertionState(n29, null, 0);
160
160
  createComponent(unref(x_default), { "aria-hidden": "true" });
161
- n29.$evtclick = createInvoker(closeAlert);
161
+ on(n29, "click", closeAlert);
162
162
  return n29;
163
163
  });
164
164
  return n30;
165
165
  });
166
166
  }
167
- }), [["__scopeId", "data-v-433c81a2"]]);
167
+ }), [["__scopeId", "data-v-09abef83"]]);
168
168
  //#endregion
169
169
  //#region src/components/alert/types.ts
170
170
  var alertParts = [
package/dist/aria.js ADDED
@@ -0,0 +1,14 @@
1
+ import { n as hasAttributeToken, r as parseAttributeTokens } from "./attributes2.js";
2
+ //#region src/utils/aria.ts
3
+ function parseAriaIdRefs(value) {
4
+ return parseAttributeTokens(value);
5
+ }
6
+ function hasAriaIdRef(value, id) {
7
+ return hasAttributeToken(value, id);
8
+ }
9
+ function mergeAriaIdRefs(...values) {
10
+ const ids = values.flatMap(parseAriaIdRefs);
11
+ return ids.length > 0 ? Array.from(new Set(ids)).join(" ") : void 0;
12
+ }
13
+ //#endregion
14
+ export { mergeAriaIdRefs as n, parseAriaIdRefs as r, hasAriaIdRef as t };
@@ -1,5 +1,5 @@
1
1
  import './aspect-ratio.css';
2
- import { n as useStylesApi } from "./styles-api.js";
2
+ import { t as useStylesApi } from "./styles-api.js";
3
3
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
4
4
  import { computed, createSlot, defineVaporComponent, renderEffect, setDynamicProps, setInsertionState, template } from "vue";
5
5
  //#region src/components/aspect-ratio/aspect-ratio.vue?vue&type=script&setup=true&vapor=true&lang.ts
@@ -0,0 +1,9 @@
1
+ //#region src/utils/attributes.ts
2
+ function toPresenceAttribute(value) {
3
+ return value ? "" : void 0;
4
+ }
5
+ function toOptionalAttribute(value) {
6
+ return value || void 0;
7
+ }
8
+ //#endregion
9
+ export { toPresenceAttribute as n, toOptionalAttribute as t };
@@ -0,0 +1,29 @@
1
+ //#region src/utils/dom/attributes.ts
2
+ function splitCompatibilityAttributes(attributes) {
3
+ const { class: compatibilityClass, style: compatibilityStyle, ...forwardedAttributes } = attributes;
4
+ return {
5
+ compatibilityClass,
6
+ compatibilityStyle,
7
+ forwardedAttributes
8
+ };
9
+ }
10
+ function composeEventHandlers(...handlers) {
11
+ return (event) => {
12
+ for (const handler of handlers) handler?.(event);
13
+ };
14
+ }
15
+ function parseAttributeTokens(value) {
16
+ return value?.split(/\s+/).filter(Boolean) ?? [];
17
+ }
18
+ function hasAttributeToken(value, token) {
19
+ return parseAttributeTokens(value).includes(token);
20
+ }
21
+ function snapshotAttributes(element, attributes) {
22
+ return new Map(attributes.map((attribute) => [attribute, element.getAttribute(attribute)]));
23
+ }
24
+ function restoreAttributes(element, snapshot) {
25
+ for (const [attribute, value] of snapshot) if (value == null) element.removeAttribute(attribute);
26
+ else element.setAttribute(attribute, value);
27
+ }
28
+ //#endregion
29
+ export { snapshotAttributes as a, restoreAttributes as i, hasAttributeToken as n, splitCompatibilityAttributes as o, parseAttributeTokens as r, composeEventHandlers as t };
package/dist/avatar.css CHANGED
@@ -1,5 +1,5 @@
1
1
  @layer ropav.components {
2
- .rp-avatar[data-v-416c3281] {
2
+ .rp-avatar[data-v-36d66f33] {
3
3
  --_rp-avatar-size: var(--rp-size-control-md);
4
4
  --_rp-avatar-font-size: var(--rp-font-size-md);
5
5
  --_rp-avatar-radius: var(--rp-radius-full);
@@ -27,72 +27,72 @@
27
27
  border-radius: var(--_rp-avatar-radius);
28
28
  user-select: none;
29
29
  }
30
- .rp-avatar--surface[data-v-416c3281], .rp-avatar--outline[data-v-416c3281] {
30
+ .rp-avatar--surface[data-v-36d66f33], .rp-avatar--outline[data-v-36d66f33] {
31
31
  --_rp-avatar-border-width: var(--rp-border-width-thin);
32
32
  }
33
- .rp-avatar--size-xs[data-v-416c3281] {
33
+ .rp-avatar--size-xs[data-v-36d66f33] {
34
34
  --_rp-avatar-size: var(--rp-size-control-xs);
35
35
  --_rp-avatar-font-size: var(--rp-font-size-xs);
36
36
  }
37
- .rp-avatar--size-sm[data-v-416c3281] {
37
+ .rp-avatar--size-sm[data-v-36d66f33] {
38
38
  --_rp-avatar-size: var(--rp-size-control-sm);
39
39
  --_rp-avatar-font-size: var(--rp-font-size-sm);
40
40
  }
41
- .rp-avatar--size-md[data-v-416c3281] {
41
+ .rp-avatar--size-md[data-v-36d66f33] {
42
42
  --_rp-avatar-size: var(--rp-size-control-md);
43
43
  --_rp-avatar-font-size: var(--rp-font-size-md);
44
44
  }
45
- .rp-avatar--size-lg[data-v-416c3281] {
45
+ .rp-avatar--size-lg[data-v-36d66f33] {
46
46
  --_rp-avatar-size: var(--rp-size-control-lg);
47
47
  --_rp-avatar-font-size: var(--rp-font-size-lg);
48
48
  }
49
- .rp-avatar--size-xl[data-v-416c3281] {
49
+ .rp-avatar--size-xl[data-v-36d66f33] {
50
50
  --_rp-avatar-size: var(--rp-size-control-xl);
51
51
  --_rp-avatar-font-size: var(--rp-font-size-xl);
52
52
  }
53
- .rp-avatar--radius-none[data-v-416c3281] {
53
+ .rp-avatar--radius-none[data-v-36d66f33] {
54
54
  --_rp-avatar-radius: var(--rp-radius-none);
55
55
  }
56
- .rp-avatar--radius-xs[data-v-416c3281] {
56
+ .rp-avatar--radius-xs[data-v-36d66f33] {
57
57
  --_rp-avatar-radius: var(--rp-radius-xs);
58
58
  }
59
- .rp-avatar--radius-sm[data-v-416c3281] {
59
+ .rp-avatar--radius-sm[data-v-36d66f33] {
60
60
  --_rp-avatar-radius: var(--rp-radius-sm);
61
61
  }
62
- .rp-avatar--radius-md[data-v-416c3281] {
62
+ .rp-avatar--radius-md[data-v-36d66f33] {
63
63
  --_rp-avatar-radius: var(--rp-radius-md);
64
64
  }
65
- .rp-avatar--radius-lg[data-v-416c3281] {
65
+ .rp-avatar--radius-lg[data-v-36d66f33] {
66
66
  --_rp-avatar-radius: var(--rp-radius-lg);
67
67
  }
68
- .rp-avatar--radius-xl[data-v-416c3281] {
68
+ .rp-avatar--radius-xl[data-v-36d66f33] {
69
69
  --_rp-avatar-radius: var(--rp-radius-xl);
70
70
  }
71
- .rp-avatar--radius-full[data-v-416c3281] {
71
+ .rp-avatar--radius-full[data-v-36d66f33] {
72
72
  --_rp-avatar-radius: var(--rp-radius-full);
73
73
  }
74
- .rp-avatar__image[data-v-416c3281] {
74
+ .rp-avatar__image[data-v-36d66f33] {
75
75
  display: block;
76
76
  width: 100%;
77
77
  height: 100%;
78
78
  object-fit: cover;
79
79
  }
80
- .rp-avatar__fallback[data-v-416c3281] {
80
+ .rp-avatar__fallback[data-v-36d66f33] {
81
81
  display: inline-flex;
82
82
  align-items: center;
83
83
  justify-content: center;
84
84
  width: 100%;
85
85
  height: 100%;
86
86
  }
87
- .rp-avatar__fallback[data-v-416c3281] > svg {
87
+ .rp-avatar__fallback[data-v-36d66f33] > svg {
88
88
  display: block;
89
89
  width: 50%;
90
90
  height: 50%;
91
91
  }
92
- .rp-avatar__initials[data-v-416c3281] {
92
+ .rp-avatar__initials[data-v-36d66f33] {
93
93
  text-transform: uppercase;
94
94
  }
95
- .rp-avatar__icon[data-v-416c3281] {
95
+ .rp-avatar__icon[data-v-36d66f33] {
96
96
  width: 50%;
97
97
  height: 50%;
98
98
  }
package/dist/avatar.js CHANGED
@@ -1,8 +1,9 @@
1
1
  import './avatar.css';
2
+ import { t as useStylesApi } from "./styles-api.js";
2
3
  import { t as bem } from "./bem.js";
3
- import { n as useStylesApi } from "./styles-api.js";
4
- import { i as getComponentVariantColorRoles, t as componentColors } from "./componentColors.js";
5
4
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
5
+ import { a as getComponentVariantColorRoles, t as componentColors } from "./componentColors.js";
6
+ import { t as getNameInitials } from "./text.js";
6
7
  import { computed, createComponent, createIf, createSlot, defineVaporComponent, markRaw, on, ref, renderEffect, setAttr, setClass, setDynamicProps, setInsertionState, setProp, setStyle, setText, template, toDisplayString, txt, unref, watch } from "vue";
7
8
  //#region ~icons/lucide/user
8
9
  var t0$1 = template("<svg viewBox=\"0 0 24 24\"width=1.2em height=1.2em><g fill=none stroke=currentColor stroke-linecap=round stroke-linejoin=round stroke-width=2><path d=\"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2\"></path><circle cx=12 cy=7 r=4>", 3, 1);
@@ -14,7 +15,7 @@ var user_default = markRaw(defineVaporComponent({
14
15
  render
15
16
  }));
16
17
  //#endregion
17
- //#region src/components/avatar/useAvatarColor.ts
18
+ //#region src/components/avatar/avatarColor.ts
18
19
  function getAvatarColorStyle(color, variant, autoContrast, contrastColor) {
19
20
  if (!color && !variant) return void 0;
20
21
  const roles = getComponentVariantColorRoles({
@@ -32,10 +33,10 @@ function getAvatarColorStyle(color, variant, autoContrast, contrastColor) {
32
33
  }
33
34
  //#endregion
34
35
  //#region src/components/avatar/avatar.vue?vue&type=script&setup=true&vapor=true&lang.ts
35
- var t0 = template("<img data-v-416c3281>");
36
- var t1 = template("<span data-v-416c3281 class=rp-avatar__initials> ");
37
- var t2 = template("<span data-v-416c3281>");
38
- var t3 = template("<span data-v-416c3281>", 1);
36
+ var t0 = template("<img data-v-36d66f33>");
37
+ var t1 = template("<span data-v-36d66f33 class=rp-avatar__initials> ");
38
+ var t2 = template("<span data-v-36d66f33>");
39
+ var t3 = template("<span data-v-36d66f33>", 1);
39
40
  //#endregion
40
41
  //#region src/components/avatar/avatar.vue
41
42
  var avatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
@@ -75,7 +76,7 @@ var avatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
75
76
  const rootRole = computed(() => !showsImage.value && accessibleName.value ? "img" : void 0);
76
77
  const rootAriaLabel = computed(() => rootRole.value ? accessibleName.value : void 0);
77
78
  const fallbackAriaHidden = computed(() => isHidden.value || rootAriaLabel.value ? true : void 0);
78
- const initials = computed(() => getInitials(props.name));
79
+ const initials = computed(() => getNameInitials(props.name));
79
80
  const rootClass = computed(() => bem("rp-avatar", {
80
81
  [props.variant ?? ""]: Boolean(props.variant),
81
82
  [`size-${props.size}`]: Boolean(props.size),
@@ -98,15 +99,6 @@ var avatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
98
99
  imageFailed.value = true;
99
100
  emit("error", event);
100
101
  }
101
- function getInitials(name) {
102
- if (!name) return "";
103
- const parts = name.trim().split(/\s+/).filter(Boolean);
104
- const firstPart = parts[0];
105
- if (!firstPart) return "";
106
- if (parts.length === 1) return Array.from(firstPart).slice(0, 2).join("").toLocaleUpperCase();
107
- const lastPart = parts.at(-1) ?? firstPart;
108
- return `${Array.from(firstPart)[0] ?? ""}${Array.from(lastPart)[0] ?? ""}`.toLocaleUpperCase();
109
- }
110
102
  const n13 = t3();
111
103
  renderEffect(() => setDynamicProps(n13, [rootAttrs.value]));
112
104
  setInsertionState(n13, null, 0);
@@ -142,7 +134,7 @@ var avatar_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
142
134
  }, 261);
143
135
  return n13;
144
136
  }
145
- }), [["__scopeId", "data-v-416c3281"]]);
137
+ }), [["__scopeId", "data-v-36d66f33"]]);
146
138
  //#endregion
147
139
  //#region src/components/avatar/types.ts
148
140
  var avatarParts = [
package/dist/badge.css CHANGED
@@ -1,5 +1,5 @@
1
1
  @layer ropav.components {
2
- .rp-badge[data-v-1bf7c45c] {
2
+ .rp-badge[data-v-5da092ee] {
3
3
  --_rp-badge-height: 20px;
4
4
  --_rp-badge-padding-x: 10px;
5
5
  --_rp-badge-font-size: 11px;
@@ -28,65 +28,65 @@
28
28
  border-radius: var(--_rp-badge-radius);
29
29
  transition: background-color var(--rp-transition-fast), color var(--rp-transition-fast), border-color var(--rp-transition-fast);
30
30
  }
31
- .rp-badge--size-xs[data-v-1bf7c45c] {
31
+ .rp-badge--size-xs[data-v-5da092ee] {
32
32
  --_rp-badge-height: 16px;
33
33
  --_rp-badge-padding-x: 6px;
34
34
  --_rp-badge-font-size: 9px;
35
35
  }
36
- .rp-badge--size-sm[data-v-1bf7c45c] {
36
+ .rp-badge--size-sm[data-v-5da092ee] {
37
37
  --_rp-badge-height: 18px;
38
38
  --_rp-badge-padding-x: 8px;
39
39
  --_rp-badge-font-size: 10px;
40
40
  }
41
- .rp-badge--size-md[data-v-1bf7c45c] {
41
+ .rp-badge--size-md[data-v-5da092ee] {
42
42
  --_rp-badge-height: 20px;
43
43
  --_rp-badge-padding-x: 10px;
44
44
  --_rp-badge-font-size: 11px;
45
45
  }
46
- .rp-badge--size-lg[data-v-1bf7c45c] {
46
+ .rp-badge--size-lg[data-v-5da092ee] {
47
47
  --_rp-badge-height: 26px;
48
48
  --_rp-badge-padding-x: 12px;
49
49
  --_rp-badge-font-size: 13px;
50
50
  }
51
- .rp-badge--size-xl[data-v-1bf7c45c] {
51
+ .rp-badge--size-xl[data-v-5da092ee] {
52
52
  --_rp-badge-height: 32px;
53
53
  --_rp-badge-padding-x: 16px;
54
54
  --_rp-badge-font-size: 16px;
55
55
  }
56
- .rp-badge--radius-none[data-v-1bf7c45c] {
56
+ .rp-badge--radius-none[data-v-5da092ee] {
57
57
  --_rp-badge-radius: var(--rp-radius-none);
58
58
  }
59
- .rp-badge--radius-xs[data-v-1bf7c45c] {
59
+ .rp-badge--radius-xs[data-v-5da092ee] {
60
60
  --_rp-badge-radius: var(--rp-radius-xs);
61
61
  }
62
- .rp-badge--radius-sm[data-v-1bf7c45c] {
62
+ .rp-badge--radius-sm[data-v-5da092ee] {
63
63
  --_rp-badge-radius: var(--rp-radius-sm);
64
64
  }
65
- .rp-badge--radius-md[data-v-1bf7c45c] {
65
+ .rp-badge--radius-md[data-v-5da092ee] {
66
66
  --_rp-badge-radius: var(--rp-radius-md);
67
67
  }
68
- .rp-badge--radius-lg[data-v-1bf7c45c] {
68
+ .rp-badge--radius-lg[data-v-5da092ee] {
69
69
  --_rp-badge-radius: var(--rp-radius-lg);
70
70
  }
71
- .rp-badge--radius-xl[data-v-1bf7c45c] {
71
+ .rp-badge--radius-xl[data-v-5da092ee] {
72
72
  --_rp-badge-radius: var(--rp-radius-xl);
73
73
  }
74
- .rp-badge--radius-full[data-v-1bf7c45c] {
74
+ .rp-badge--radius-full[data-v-5da092ee] {
75
75
  --_rp-badge-radius: var(--rp-radius-full);
76
76
  }
77
- .rp-badge__left[data-v-1bf7c45c], .rp-badge__right[data-v-1bf7c45c] {
77
+ .rp-badge__left[data-v-5da092ee], .rp-badge__right[data-v-5da092ee] {
78
78
  display: inline-flex;
79
79
  align-items: center;
80
80
  justify-content: center;
81
81
  flex: 0 0 auto;
82
82
  line-height: 0;
83
83
  }
84
- .rp-badge__left[data-v-1bf7c45c] > svg, .rp-badge__right[data-v-1bf7c45c] > svg {
84
+ .rp-badge__left[data-v-5da092ee] > svg, .rp-badge__right[data-v-5da092ee] > svg {
85
85
  display: block;
86
86
  width: 1em;
87
87
  height: 1em;
88
88
  }
89
- .rp-badge__label[data-v-1bf7c45c] {
89
+ .rp-badge__label[data-v-5da092ee] {
90
90
  display: inline-block;
91
91
  min-width: 0;
92
92
  overflow: hidden;
package/dist/badge.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import './badge.css';
2
+ import { t as useStylesApi } from "./styles-api.js";
2
3
  import { t as bem } from "./bem.js";
3
- import { n as useStylesApi } from "./styles-api.js";
4
- import { i as getComponentVariantColorRoles, t as componentColors } from "./componentColors.js";
5
4
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
5
+ import { a as getComponentVariantColorRoles, t as componentColors } from "./componentColors.js";
6
6
  import { computed, createIf, createSlot, defineVaporComponent, renderEffect, setDynamicProps, setInsertionState, template, unref } from "vue";
7
- //#region src/components/badge/useBadgeColor.ts
7
+ //#region src/components/badge/badgeColor.ts
8
8
  function getBadgeColorStyle(color, variant, autoContrast, contrastColor) {
9
9
  if (!color && !variant) return void 0;
10
10
  const roles = getComponentVariantColorRoles({
@@ -22,8 +22,8 @@ function getBadgeColorStyle(color, variant, autoContrast, contrastColor) {
22
22
  }
23
23
  //#endregion
24
24
  //#region src/components/badge/badge.vue?vue&type=script&setup=true&vapor=true&lang.ts
25
- var t0 = template("<span data-v-1bf7c45c>");
26
- var t1 = template("<span data-v-1bf7c45c>", 1);
25
+ var t0 = template("<span data-v-5da092ee>");
26
+ var t1 = template("<span data-v-5da092ee>", 1);
27
27
  //#endregion
28
28
  //#region src/components/badge/badge.vue
29
29
  var badge_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
@@ -86,7 +86,7 @@ var badge_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__
86
86
  });
87
87
  return n12;
88
88
  }
89
- }), [["__scopeId", "data-v-1bf7c45c"]]);
89
+ }), [["__scopeId", "data-v-5da092ee"]]);
90
90
  //#endregion
91
91
  //#region src/components/badge/types.ts
92
92
  var badgeParts = [
package/dist/base.css CHANGED
@@ -463,7 +463,7 @@
463
463
  --rp-color-red-contrast: var(--rp-color-white);
464
464
  --rp-color-red-light: var(--rp-color-red-1);
465
465
  --rp-color-red-light-hover: var(--rp-color-red-2);
466
- --rp-color-red-light-color: var(--rp-color-red-9);
466
+ --rp-color-red-light-color: color-mix(in srgb, var(--rp-color-red-9) 89%, var(--rp-color-black));
467
467
  --rp-color-red-outline: var(--rp-color-red-6);
468
468
  --rp-color-red-outline-hover: color-mix(in srgb, var(--rp-color-red-6) 5%, transparent);
469
469
  --rp-color-pink-filled: var(--rp-color-pink-7);
@@ -487,7 +487,7 @@
487
487
  --rp-color-violet-contrast: var(--rp-color-white);
488
488
  --rp-color-violet-light: var(--rp-color-violet-1);
489
489
  --rp-color-violet-light-hover: var(--rp-color-violet-2);
490
- --rp-color-violet-light-color: var(--rp-color-violet-9);
490
+ --rp-color-violet-light-color: color-mix(in srgb, var(--rp-color-violet-9) 96%, var(--rp-color-black));
491
491
  --rp-color-violet-outline: var(--rp-color-violet-6);
492
492
  --rp-color-violet-outline-hover: color-mix(in srgb, var(--rp-color-violet-6) 5%, transparent);
493
493
  --rp-color-indigo-filled: var(--rp-color-indigo-7);
@@ -495,7 +495,7 @@
495
495
  --rp-color-indigo-contrast: var(--rp-color-white);
496
496
  --rp-color-indigo-light: var(--rp-color-indigo-1);
497
497
  --rp-color-indigo-light-hover: var(--rp-color-indigo-2);
498
- --rp-color-indigo-light-color: var(--rp-color-indigo-9);
498
+ --rp-color-indigo-light-color: color-mix(in srgb, var(--rp-color-indigo-9) 93%, var(--rp-color-black));
499
499
  --rp-color-indigo-outline: var(--rp-color-indigo-6);
500
500
  --rp-color-indigo-outline-hover: color-mix(in srgb, var(--rp-color-indigo-6) 5%, transparent);
501
501
  --rp-color-blue-filled: var(--rp-color-blue-8);
@@ -503,7 +503,7 @@
503
503
  --rp-color-blue-contrast: var(--rp-color-white);
504
504
  --rp-color-blue-light: var(--rp-color-blue-1);
505
505
  --rp-color-blue-light-hover: var(--rp-color-blue-2);
506
- --rp-color-blue-light-color: var(--rp-color-blue-9);
506
+ --rp-color-blue-light-color: color-mix(in srgb, var(--rp-color-blue-9) 92%, var(--rp-color-black));
507
507
  --rp-color-blue-outline: var(--rp-color-blue-6);
508
508
  --rp-color-blue-outline-hover: color-mix(in srgb, var(--rp-color-blue-6) 5%, transparent);
509
509
  --rp-color-cyan-filled: var(--rp-color-cyan-9);
@@ -511,7 +511,7 @@
511
511
  --rp-color-cyan-contrast: var(--rp-color-white);
512
512
  --rp-color-cyan-light: var(--rp-color-cyan-1);
513
513
  --rp-color-cyan-light-hover: var(--rp-color-cyan-2);
514
- --rp-color-cyan-light-color: var(--rp-color-cyan-9);
514
+ --rp-color-cyan-light-color: color-mix(in srgb, var(--rp-color-cyan-9) 93%, var(--rp-color-black));
515
515
  --rp-color-cyan-outline: var(--rp-color-cyan-6);
516
516
  --rp-color-cyan-outline-hover: color-mix(in srgb, var(--rp-color-cyan-6) 5%, transparent);
517
517
  --rp-color-teal-filled: var(--rp-color-teal-9);
@@ -519,7 +519,7 @@
519
519
  --rp-color-teal-contrast: var(--rp-color-white);
520
520
  --rp-color-teal-light: var(--rp-color-teal-1);
521
521
  --rp-color-teal-light-hover: var(--rp-color-teal-2);
522
- --rp-color-teal-light-color: var(--rp-color-teal-9);
522
+ --rp-color-teal-light-color: color-mix(in srgb, var(--rp-color-teal-9) 89%, var(--rp-color-black));
523
523
  --rp-color-teal-outline: var(--rp-color-teal-6);
524
524
  --rp-color-teal-outline-hover: color-mix(in srgb, var(--rp-color-teal-6) 5%, transparent);
525
525
  --rp-color-green-filled: color-mix(in srgb, var(--rp-color-green-9) 98%, var(--rp-color-black));
@@ -527,7 +527,7 @@
527
527
  --rp-color-green-contrast: var(--rp-color-white);
528
528
  --rp-color-green-light: var(--rp-color-green-1);
529
529
  --rp-color-green-light-hover: var(--rp-color-green-2);
530
- --rp-color-green-light-color: var(--rp-color-green-9);
530
+ --rp-color-green-light-color: color-mix(in srgb, var(--rp-color-green-9) 84%, var(--rp-color-black));
531
531
  --rp-color-green-outline: var(--rp-color-green-6);
532
532
  --rp-color-green-outline-hover: color-mix(in srgb, var(--rp-color-green-6) 5%, transparent);
533
533
  --rp-color-lime-filled: var(--rp-color-lime-6);
@@ -535,7 +535,7 @@
535
535
  --rp-color-lime-contrast: var(--rp-color-lime-6-contrast);
536
536
  --rp-color-lime-light: var(--rp-color-lime-1);
537
537
  --rp-color-lime-light-hover: var(--rp-color-lime-2);
538
- --rp-color-lime-light-color: var(--rp-color-lime-9);
538
+ --rp-color-lime-light-color: color-mix(in srgb, var(--rp-color-lime-9) 79%, var(--rp-color-black));
539
539
  --rp-color-lime-outline: var(--rp-color-lime-6);
540
540
  --rp-color-lime-outline-hover: color-mix(in srgb, var(--rp-color-lime-6) 5%, transparent);
541
541
  --rp-color-yellow-filled: var(--rp-color-yellow-6);
@@ -543,7 +543,7 @@
543
543
  --rp-color-yellow-contrast: var(--rp-color-yellow-6-contrast);
544
544
  --rp-color-yellow-light: var(--rp-color-yellow-1);
545
545
  --rp-color-yellow-light-hover: var(--rp-color-yellow-2);
546
- --rp-color-yellow-light-color: var(--rp-color-yellow-9);
546
+ --rp-color-yellow-light-color: color-mix(in srgb, var(--rp-color-yellow-9) 72%, var(--rp-color-black));
547
547
  --rp-color-yellow-outline: var(--rp-color-yellow-6);
548
548
  --rp-color-yellow-outline-hover: color-mix(in srgb, var(--rp-color-yellow-6) 5%, transparent);
549
549
  --rp-color-orange-filled: color-mix(in srgb, var(--rp-color-orange-9) 97%, var(--rp-color-black));
@@ -551,14 +551,14 @@
551
551
  --rp-color-orange-contrast: var(--rp-color-white);
552
552
  --rp-color-orange-light: var(--rp-color-orange-1);
553
553
  --rp-color-orange-light-hover: var(--rp-color-orange-2);
554
- --rp-color-orange-light-color: var(--rp-color-orange-9);
554
+ --rp-color-orange-light-color: color-mix(in srgb, var(--rp-color-orange-9) 81%, var(--rp-color-black));
555
555
  --rp-color-orange-outline: var(--rp-color-orange-6);
556
556
  --rp-color-orange-outline-hover: color-mix(in srgb, var(--rp-color-orange-6) 5%, transparent);
557
557
  --rp-color-scheme: light;
558
558
  --rp-color-bright: var(--rp-color-black);
559
559
  --rp-color-text: var(--rp-color-black);
560
560
  --rp-color-body: var(--rp-color-white);
561
- --rp-color-placeholder: var(--rp-color-gray-5);
561
+ --rp-color-placeholder: var(--rp-color-gray-7);
562
562
  --rp-color-default: var(--rp-color-white);
563
563
  --rp-color-default-hover: var(--rp-color-gray-1);
564
564
  --rp-color-default-color: var(--rp-color-black);
@@ -637,7 +637,7 @@
637
637
  --rp-size-control-md: 42px;
638
638
  --rp-size-control-lg: 50px;
639
639
  --rp-size-control-xl: 60px;
640
- --rp-opacity-disabled: 0.5;
640
+ --rp-opacity-disabled: 0.65;
641
641
  --rp-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
642
642
  --rp-shadow-base: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
643
643
  --rp-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
@@ -764,7 +764,7 @@
764
764
  --rp-color-bright: var(--rp-color-white);
765
765
  --rp-color-text: var(--rp-color-dark-0);
766
766
  --rp-color-body: var(--rp-color-dark-7);
767
- --rp-color-placeholder: var(--rp-color-dark-3);
767
+ --rp-color-placeholder: var(--rp-color-dark-1);
768
768
  --rp-color-default: var(--rp-color-dark-6);
769
769
  --rp-color-default-hover: var(--rp-color-dark-5);
770
770
  --rp-color-default-color: var(--rp-color-white);
@@ -802,6 +802,11 @@
802
802
  transform-origin: center;
803
803
  animation: rp-spinner-spin 700ms linear infinite;
804
804
  }
805
+ @media (prefers-reduced-motion: reduce) {
806
+ .rp-spinner {
807
+ animation: none;
808
+ }
809
+ }
805
810
  .rp-spinner > svg {
806
811
  display: block;
807
812
  width: 100%;
@@ -1,6 +1,6 @@
1
1
  import './button-group.css';
2
+ import { t as useStylesApi } from "./styles-api.js";
2
3
  import { t as bem } from "./bem.js";
3
- import { n as useStylesApi } from "./styles-api.js";
4
4
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
5
5
  import { computed, createSlot, defineVaporComponent, renderEffect, setDynamicProps, setInsertionState, template } from "vue";
6
6
  //#region src/components/button-group/button-group.vue?vue&type=script&setup=true&vapor=true&lang.ts
@@ -1,15 +1,14 @@
1
- import './button-link.css';
1
+ import { t as useStylesApi } from "./styles-api.js";
2
+ import { n as toPresenceAttribute } from "./attributes.js";
2
3
  import { t as bem } from "./bem.js";
3
- import { n as useStylesApi, t as presence } from "./styles-api.js";
4
- import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
5
- import { n as loader_circle_default, t as getButtonColorStyle } from "./useButtonColor.js";
4
+ import { n as loader_circle_default, t as getButtonColorStyle } from "./button.scss_vue_type_style_index_0_src_true_lang.js";
6
5
  import { child, computed, createComponent, createIf, createSlot, defineVaporComponent, renderEffect, setDynamicProps, setInsertionState, template, unref } from "vue";
7
6
  //#region src/components/button-link/button-link.vue?vue&type=script&setup=true&vapor=true&lang.ts
8
- var t0 = template("<span data-v-dd8ef63e>");
9
- var t1 = template("<a data-v-dd8ef63e><span data-v-dd8ef63e class=rp-button__content><span data-v-dd8ef63e></span>", 1);
7
+ var t0 = template("<span>");
8
+ var t1 = template("<a><span class=rp-button__content><span></span>", 1);
10
9
  //#endregion
11
10
  //#region src/components/button-link/button-link.vue
12
- var button_link_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
11
+ var button_link_default = /* @__PURE__ */ defineVaporComponent({
13
12
  name: "RpButtonLink",
14
13
  inheritAttrs: false,
15
14
  __name: "button-link",
@@ -73,8 +72,8 @@ var button_link_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
73
72
  "aria-disabled": isUnavailable.value || void 0,
74
73
  "aria-busy": props.loading || void 0,
75
74
  tabindex: isUnavailable.value ? -1 : void 0,
76
- "data-disabled": presence(isUnavailable.value),
77
- "data-loading": presence(props.loading),
75
+ "data-disabled": toPresenceAttribute(isUnavailable.value),
76
+ "data-loading": toPresenceAttribute(props.loading),
78
77
  onClickCapture: onDisabledClick
79
78
  }));
80
79
  function onDisabledClick(event) {
@@ -93,7 +92,7 @@ var button_link_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
93
92
  setInsertionState(n5, null, 0);
94
93
  createSlot("loading", null, () => {
95
94
  return createComponent(unref(loader_circle_default), { class: "rp-button__spinner" });
96
- }, 1);
95
+ });
97
96
  return n5;
98
97
  });
99
98
  setInsertionState(n16, 0);
@@ -101,23 +100,23 @@ var button_link_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
101
100
  const n9 = t0();
102
101
  renderEffect(() => setDynamicProps(n9, [unref(getPartAttrs)("left", { class: "rp-button__left" })]));
103
102
  setInsertionState(n9, null, 0);
104
- createSlot("left", null, null, 1);
103
+ createSlot("left");
105
104
  return n9;
106
105
  });
107
106
  renderEffect(() => setDynamicProps(n11, [unref(getPartAttrs)("label", { class: "rp-button__label" })]));
108
107
  setInsertionState(n11, null, 0);
109
- createSlot("default", null, null, 1);
108
+ createSlot();
110
109
  setInsertionState(n16, null, 2);
111
110
  createIf(() => $slots.right, () => {
112
111
  const n15 = t0();
113
112
  renderEffect(() => setDynamicProps(n15, [unref(getPartAttrs)("right", { class: "rp-button__right" })]));
114
113
  setInsertionState(n15, null, 0);
115
- createSlot("right", null, null, 1);
114
+ createSlot("right");
116
115
  return n15;
117
116
  });
118
117
  return n17;
119
118
  }
120
- }), [["__scopeId", "data-v-dd8ef63e"]]);
119
+ });
121
120
  //#endregion
122
121
  //#region src/components/button-link/types.ts
123
122
  var buttonLinkParts = [