ropav 0.1.6 → 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 (208) hide show
  1. package/README.md +6 -0
  2. package/dist/accordion.css +17 -17
  3. package/dist/accordion.js +123 -155
  4. package/dist/alert.css +18 -18
  5. package/dist/alert.js +10 -11
  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 +9 -17
  12. package/dist/badge.css +16 -16
  13. package/dist/badge.js +5 -5
  14. package/dist/button-group.js +1 -1
  15. package/dist/button-link.js +4 -3
  16. package/dist/button.js +4 -3
  17. package/dist/button.scss_vue_type_style_index_0_src_true_lang.js +1 -1
  18. package/dist/card.js +1 -1
  19. package/dist/checkbox.css +32 -32
  20. package/dist/checkbox.js +22 -28
  21. package/dist/collapse.css +6 -6
  22. package/dist/collapse.js +7 -6
  23. package/dist/collectionNavigation.js +2 -99
  24. package/dist/color-input.css +19 -19
  25. package/dist/color-input.js +14 -13
  26. package/dist/color-picker.css +40 -40
  27. package/dist/color-picker.js +221 -200
  28. package/dist/color-picker2.js +1 -9
  29. package/dist/color-swatch.css +4 -4
  30. package/dist/color-swatch.js +6 -8
  31. package/dist/color.js +5 -10
  32. package/dist/componentColors.js +125 -84
  33. package/dist/componentRef.js +26 -0
  34. package/dist/components/accordion/accordionContext.d.ts +3 -0
  35. package/dist/components/accordion/accordionModel.d.ts +14 -0
  36. package/dist/components/accordion/index.d.ts +2 -1
  37. package/dist/components/accordion/index.js +1 -1
  38. package/dist/components/accordion/types.d.ts +1 -2
  39. package/dist/components/accordion/useAccordion.d.ts +2 -2
  40. package/dist/components/accordion/useAccordionItem.d.ts +2 -0
  41. package/dist/components/checkbox/useCheckbox.d.ts +1 -2
  42. package/dist/components/color-picker/index.js +2 -2
  43. package/dist/components/color-picker/types.d.ts +2 -2
  44. package/dist/components/color-picker/useColorPickerSaturation.d.ts +22 -0
  45. package/dist/components/color-picker/useColorPickerSlider.d.ts +20 -0
  46. package/dist/components/color-picker/useColorPickerValue.d.ts +1 -1
  47. package/dist/components/dialog/{dialog-core.d.ts → dialogContext.d.ts} +1 -5
  48. package/dist/components/dialog/useDialogContentInteractions.d.ts +18 -0
  49. package/dist/components/dialog/useDialogRootState.d.ts +19 -0
  50. package/dist/components/dropdown-menu/dropdown-menu-item-row.d.ts +1 -1
  51. package/dist/components/dropdown-menu/dropdown-menu-items.d.ts +1 -1
  52. package/dist/components/dropdown-menu/dropdown-menu-model.d.ts +8 -0
  53. package/dist/components/dropdown-menu/dropdown-menu-root.d.ts +2 -2
  54. package/dist/components/dropdown-menu/dropdown-menu-sub-trigger.d.ts +1 -1
  55. package/dist/components/dropdown-menu/dropdown-menu-sub.d.ts +1 -1
  56. package/dist/components/dropdown-menu/{dropdown-menu-primitive-core.d.ts → dropdownMenuContext.d.ts} +16 -18
  57. package/dist/components/dropdown-menu/dropdownMenuDataModel.d.ts +20 -0
  58. package/dist/components/dropdown-menu/dropdownMenuInteraction.d.ts +3 -0
  59. package/dist/components/dropdown-menu/dropdownMenuInteractionNavigation.d.ts +24 -0
  60. package/dist/components/dropdown-menu/dropdownMenuInteractionRegistry.d.ts +42 -0
  61. package/dist/components/dropdown-menu/dropdownMenuInteractionTypes.d.ts +85 -0
  62. package/dist/components/dropdown-menu/useDropdownMenu.d.ts +11 -11
  63. package/dist/components/dropdown-menu/useDropdownMenuContextTrigger.d.ts +9 -0
  64. package/dist/components/dropdown-menu/useDropdownMenuDataController.d.ts +34 -0
  65. package/dist/components/dropdown-menu/useDropdownMenuDataRegistration.d.ts +22 -0
  66. package/dist/components/dropdown-menu/useDropdownMenuHoverIntent.d.ts +6 -5
  67. package/dist/components/dropdown-menu/useDropdownMenuInteractionDismissal.d.ts +17 -0
  68. package/dist/components/dropdown-menu/useDropdownMenuInteractionKeyboard.d.ts +19 -0
  69. package/dist/components/dropdown-menu/useDropdownMenuPortalPosition.d.ts +0 -1
  70. package/dist/components/dropdown-menu/useDropdownMenuPresentation.d.ts +29 -0
  71. package/dist/components/dropdown-menu/useDropdownMenuPrimitiveContent.d.ts +2 -2
  72. package/dist/components/dropdown-menu/useDropdownMenuRenderItems.d.ts +1 -1
  73. package/dist/components/dropdown-menu/useDropdownMenuTargetBindings.d.ts +19 -0
  74. package/dist/components/floating/hoverDisclosureInteractionModel.d.ts +42 -0
  75. package/dist/components/floating/index.js +1 -1
  76. package/dist/components/floating/useFloatingPosition.d.ts +0 -1
  77. package/dist/components/floating/useHoverDisclosureInteractions.d.ts +32 -0
  78. package/dist/components/floating/useHoverDisclosureOpenState.d.ts +25 -0
  79. package/dist/components/floating/useHoverDisclosureTargetBinding.d.ts +27 -0
  80. package/dist/components/number-input/numberInputModel.d.ts +15 -0
  81. package/dist/components/number-input/useNumberInput.d.ts +3 -17
  82. package/dist/components/pagination/index.d.ts +1 -1
  83. package/dist/components/pagination/index.js +1 -1
  84. package/dist/components/pagination/paginationModel.d.ts +4 -0
  85. package/dist/components/pagination/types.d.ts +15 -0
  86. package/dist/components/pagination/usePagination.d.ts +3 -19
  87. package/dist/components/popover/usePopoverBindings.d.ts +16 -0
  88. package/dist/components/progress/progressModel.d.ts +8 -0
  89. package/dist/components/progress/useProgress.d.ts +0 -6
  90. package/dist/components/radio/useRadio.d.ts +1 -2
  91. package/dist/components/scroll-area/scroll-area.d.ts +1 -1
  92. package/dist/components/scroll-area/scrollAreaModel.d.ts +64 -0
  93. package/dist/components/scroll-area/useScrollArea.d.ts +70 -53
  94. package/dist/components/scroll-area/{useScrollAreaPresentation.d.ts → useScrollAreaAttributes.d.ts} +37 -17
  95. package/dist/components/scroll-area/useScrollAreaDerivedState.d.ts +8 -0
  96. package/dist/components/scroll-area/useScrollAreaMeasurement.d.ts +35 -0
  97. package/dist/components/scroll-area/useScrollAreaPointer.d.ts +10 -8
  98. package/dist/components/scroll-area/useScrollAreaVisibility.d.ts +15 -20
  99. package/dist/components/slider/rangeSliderModel.d.ts +41 -0
  100. package/dist/components/slider/{sliderCore.d.ts → sliderModel.d.ts} +0 -1
  101. package/dist/components/slider/useRangeSlider.d.ts +8 -16
  102. package/dist/components/slider/useRangeSliderValueState.d.ts +40 -0
  103. package/dist/components/slider/useSlider.d.ts +7 -13
  104. package/dist/components/slider/useSliderPointerPreview.d.ts +22 -0
  105. package/dist/components/slider/useSliderTooltipState.d.ts +40 -0
  106. package/dist/components/slider/useSliderValueState.d.ts +33 -0
  107. package/dist/components/teleport-provider/index.js +1 -1
  108. package/dist/components/teleport-provider/useTeleportTarget.d.ts +1 -2
  109. package/dist/components/toast/useToastLifecycle.d.ts +19 -0
  110. package/dist/components/tooltip/useTooltip.d.ts +1 -2
  111. package/dist/css.js +12 -0
  112. package/dist/dialog.js +226 -218
  113. package/dist/dropdown-menu.js +1458 -1097
  114. package/dist/events.js +59 -0
  115. package/dist/field.css +8 -8
  116. package/dist/field.js +13 -25
  117. package/dist/floating.js +548 -319
  118. package/dist/floatingOffset.js +11 -0
  119. package/dist/focus-trap.js +7 -5
  120. package/dist/focusNavigation.js +37 -0
  121. package/dist/icon-button.css +8 -8
  122. package/dist/icon-button.js +7 -6
  123. package/dist/index.js +6 -6
  124. package/dist/input.css +24 -24
  125. package/dist/input.js +19 -31
  126. package/dist/interactive.js +18 -0
  127. package/dist/modal.js +1 -1
  128. package/dist/number-input.css +18 -18
  129. package/dist/number-input.js +14 -12
  130. package/dist/number.js +22 -0
  131. package/dist/overlay.js +3 -2
  132. package/dist/pagination.css +28 -28
  133. package/dist/pagination.js +65 -63
  134. package/dist/pointer.js +9 -0
  135. package/dist/popover.css +34 -34
  136. package/dist/popover.js +85 -86
  137. package/dist/progress.js +10 -13
  138. package/dist/query.js +40 -0
  139. package/dist/radio.css +18 -18
  140. package/dist/radio.js +30 -36
  141. package/dist/rafScheduler.js +34 -0
  142. package/dist/scroll-area.css +28 -28
  143. package/dist/scroll-area.js +512 -516
  144. package/dist/select.css +45 -45
  145. package/dist/select.js +36 -44
  146. package/dist/slider.css +191 -191
  147. package/dist/slider.js +691 -618
  148. package/dist/styles-api.d.ts +0 -1
  149. package/dist/styles-api.js +1 -4
  150. package/dist/switch.css +17 -17
  151. package/dist/switch.js +14 -15
  152. package/dist/tabs.css +43 -43
  153. package/dist/tabs.js +29 -56
  154. package/dist/text.js +17 -0
  155. package/dist/textarea.css +26 -26
  156. package/dist/textarea.js +21 -32
  157. package/dist/toast.css +26 -26
  158. package/dist/toast.js +141 -118
  159. package/dist/tooltip.css +12 -12
  160. package/dist/tooltip.js +36 -40
  161. package/dist/useCollapse.js +8 -11
  162. package/dist/useControlState.js +3 -6
  163. package/dist/useFloatingPosition.js +140 -10
  164. package/dist/useOverlayZIndex.js +1 -5
  165. package/dist/useTeleportTarget.js +3 -14
  166. package/dist/useTypeahead.js +94 -0
  167. package/dist/utils/aria.d.ts +3 -0
  168. package/dist/utils/attributes.d.ts +2 -0
  169. package/dist/utils/bem.d.ts +3 -0
  170. package/dist/utils/collectionNavigation.d.ts +2 -0
  171. package/dist/utils/color.d.ts +7 -0
  172. package/dist/{components/color-picker/color-picker-utils.d.ts → utils/colorPicker.d.ts} +5 -4
  173. package/dist/utils/componentColors.d.ts +7 -0
  174. package/dist/utils/css.d.ts +3 -0
  175. package/dist/utils/dom/ancestry.d.ts +7 -0
  176. package/dist/utils/dom/attributes.d.ts +16 -0
  177. package/dist/utils/dom/componentRef.d.ts +4 -0
  178. package/dist/utils/dom/events.d.ts +5 -0
  179. package/dist/utils/dom/focusNavigation.d.ts +7 -0
  180. package/dist/utils/dom/interactive.d.ts +2 -0
  181. package/dist/utils/dom/pointer.d.ts +2 -0
  182. package/dist/utils/dom/query.d.ts +4 -0
  183. package/dist/utils/dom/scroll.d.ts +23 -0
  184. package/dist/utils/floatingOffset.d.ts +10 -0
  185. package/dist/utils/geometry.d.ts +14 -0
  186. package/dist/utils/indexPath.d.ts +6 -0
  187. package/dist/utils/number.d.ts +4 -0
  188. package/dist/utils/rafScheduler.d.ts +4 -0
  189. package/dist/utils/text.d.ts +2 -0
  190. package/docs/code-architecture.md +118 -0
  191. package/docs/public-floating-api.md +6 -5
  192. package/package.json +13 -12
  193. package/dist/components/dropdown-menu/dropdown-menu-outside.d.ts +0 -3
  194. package/dist/components/dropdown-menu/dropdown-menu-utils.d.ts +0 -21
  195. package/dist/components/dropdown-menu/useDropdownMenuDisclosure.d.ts +0 -36
  196. package/dist/components/dropdown-menu/useDropdownMenuDom.d.ts +0 -29
  197. package/dist/components/dropdown-menu/useDropdownMenuInteractions.d.ts +0 -52
  198. package/dist/components/dropdown-menu/useDropdownMenuNavigation.d.ts +0 -17
  199. package/dist/components/dropdown-menu/useDropdownSubmenus.d.ts +0 -18
  200. package/dist/components/scroll-area/scrollAreaCore.d.ts +0 -30
  201. package/dist/components/scroll-area/useScrollAreaControls.d.ts +0 -25
  202. package/dist/components/scroll-area/useScrollAreaMetrics.d.ts +0 -38
  203. /package/dist/components/alert/{useAlertColor.d.ts → alertColor.d.ts} +0 -0
  204. /package/dist/components/avatar/{useAvatarColor.d.ts → avatarColor.d.ts} +0 -0
  205. /package/dist/components/badge/{useBadgeColor.d.ts → badgeColor.d.ts} +0 -0
  206. /package/dist/components/button/{useButtonColor.d.ts → buttonColor.d.ts} +0 -0
  207. /package/dist/components/color-swatch/{useColorSwatchColor.d.ts → colorSwatchColor.d.ts} +0 -0
  208. /package/dist/components/toast/{useToastColor.d.ts → toastColor.d.ts} +0 -0
package/dist/collapse.css CHANGED
@@ -1,16 +1,16 @@
1
1
  @layer ropav.components {
2
- .rp-collapse[data-v-06c57838] {
2
+ .rp-collapse[data-v-13f319ff] {
3
3
  --_rp-collapse-duration: var(--rp-transition-fast);
4
4
  display: block;
5
5
  min-width: 0;
6
6
  font-family: var(--rp-font-family);
7
7
  color: var(--rp-color-text);
8
8
  }
9
- .rp-collapse--disabled[data-v-06c57838] {
9
+ .rp-collapse--disabled[data-v-13f319ff] {
10
10
  opacity: var(--rp-opacity-disabled);
11
11
  cursor: not-allowed;
12
12
  }
13
- .rp-collapse__content[data-v-06c57838] {
13
+ .rp-collapse__content[data-v-13f319ff] {
14
14
  box-sizing: border-box;
15
15
  display: grid;
16
16
  min-width: 0;
@@ -21,13 +21,13 @@
21
21
  grid-template-rows: 1fr;
22
22
  transition: grid-template-rows var(--_rp-collapse-duration), opacity var(--_rp-collapse-duration);
23
23
  }
24
- .rp-collapse__inner[data-v-06c57838] {
24
+ .rp-collapse__inner[data-v-13f319ff] {
25
25
  min-height: 0;
26
26
  min-width: 0;
27
27
  overflow: hidden;
28
28
  }
29
- .rp-collapse-content-enter-from[data-v-06c57838],
30
- .rp-collapse-content-leave-to[data-v-06c57838] {
29
+ .rp-collapse-content-enter-from[data-v-13f319ff],
30
+ .rp-collapse-content-leave-to[data-v-13f319ff] {
31
31
  opacity: 0;
32
32
  grid-template-rows: 0fr;
33
33
  }
package/dist/collapse.js CHANGED
@@ -1,11 +1,12 @@
1
1
  import './collapse.css';
2
- import { n as useStylesApi, t as presence } from "./styles-api.js";
2
+ import { t as useStylesApi } from "./styles-api.js";
3
+ import { n as toPresenceAttribute } from "./attributes.js";
3
4
  import { t as useCollapse } from "./useCollapse.js";
4
5
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
5
6
  import { VaporTransition, applyVShow, child, computed, createComponent, createIf, createSlot, defineVaporComponent, extend, renderEffect, setDynamicProps, setInsertionState, template, unref } from "vue";
6
7
  //#region src/components/collapse/collapse.vue?vue&type=script&setup=true&vapor=true&lang.ts
7
- var t0 = template("<div data-v-06c57838><div data-v-06c57838 class=rp-collapse__inner>");
8
- var t1 = template("<div data-v-06c57838>", 1);
8
+ var t0 = template("<div data-v-13f319ff><div data-v-13f319ff class=rp-collapse__inner>");
9
+ var t1 = template("<div data-v-13f319ff>", 1);
9
10
  //#endregion
10
11
  //#region src/components/collapse/collapse.vue
11
12
  var collapse_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
@@ -43,7 +44,7 @@ var collapse_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
43
44
  const { getPartAttrs, getRootAttrs } = useStylesApi(props, "root");
44
45
  const rootAttrs = computed(() => getRootAttrs({
45
46
  ...internalRootProps.value,
46
- "data-disabled": presence(isDisabled.value)
47
+ "data-disabled": toPresenceAttribute(isDisabled.value)
47
48
  }));
48
49
  const publicTriggerProps = computed(() => {
49
50
  const partAttrs = getPartAttrs("trigger");
@@ -52,7 +53,7 @@ var collapse_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
52
53
  ...props.classNames?.trigger !== void 0 ? { class: partAttrs.class } : {},
53
54
  ...props.styles?.trigger !== void 0 ? { style: partAttrs.style } : {},
54
55
  "data-state": state.value,
55
- "data-disabled": presence(isDisabled.value)
56
+ "data-disabled": toPresenceAttribute(isDisabled.value)
56
57
  };
57
58
  });
58
59
  const publicTriggerSlotProps = computed(() => ({
@@ -81,7 +82,7 @@ var collapse_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PUR
81
82
  }, { _: 8 }));
82
83
  return n7;
83
84
  }
84
- }), [["__scopeId", "data-v-06c57838"]]);
85
+ }), [["__scopeId", "data-v-13f319ff"]]);
85
86
  //#endregion
86
87
  //#region src/components/collapse/types.ts
87
88
  var collapseParts = [
@@ -1,101 +1,4 @@
1
- import { onBeforeUnmount } from "vue";
2
- //#region src/internal/composables/useTypeahead.ts
3
- var DEFAULT_TYPEAHEAD_TIMEOUT = 1e3;
4
- var COMBINING_MARKS = /\p{M}/gu;
5
- var WHITESPACE = /\s+/g;
6
- function normalizeTypeaheadText(value, locales) {
7
- return value.toLocaleLowerCase(locales).normalize("NFKD").replace(COMBINING_MARKS, "").replace(WHITESPACE, " ").trim();
8
- }
9
- function isRepeatedQuery(query) {
10
- const characters = [...query];
11
- return characters.length > 1 && characters.every((character) => character === characters[0]);
12
- }
13
- function useTypeahead(options) {
14
- let buffer = "";
15
- let timer;
16
- let lastMatch;
17
- let currentScope = options.scopeKey?.();
18
- const isDisabled = options.isDisabled ?? (() => false);
19
- function clearTimer() {
20
- if (timer !== void 0) clearTimeout(timer);
21
- timer = void 0;
22
- }
23
- function reset() {
24
- clearTimer();
25
- buffer = "";
26
- lastMatch = void 0;
27
- currentScope = options.scopeKey?.();
28
- }
29
- function scheduleReset() {
30
- clearTimer();
31
- timer = setTimeout(reset, options.timeout ?? DEFAULT_TYPEAHEAD_TIMEOUT);
32
- }
33
- function hasBuffer() {
34
- return buffer.length > 0;
35
- }
36
- function getMatchIndex(query, startIndex, keepCurrent) {
37
- const items = options.items();
38
- if (items.length === 0) return -1;
39
- function matches(index) {
40
- const item = items[index];
41
- return Boolean(item && !isDisabled(item) && normalizeTypeaheadText(options.getTextValue(item)).startsWith(query));
42
- }
43
- if (keepCurrent && startIndex >= 0 && matches(startIndex)) return startIndex;
44
- for (let offset = 1; offset <= items.length; offset += 1) {
45
- const index = (startIndex + offset + items.length) % items.length;
46
- if (matches(index)) return index;
47
- }
48
- return -1;
49
- }
50
- function getLastMatchIndex(items) {
51
- const match = lastMatch;
52
- if (!match) return -1;
53
- if (Object.is(items[match.index], match.item)) return match.index;
54
- const identityIndex = items.findIndex((item) => Object.is(item, match.item));
55
- if (identityIndex >= 0) return identityIndex;
56
- let keyIndex = -1;
57
- for (let index = 0; index < items.length; index += 1) {
58
- if (!Object.is(options.getKey(items[index]), match.key)) continue;
59
- if (keyIndex >= 0) return -1;
60
- keyIndex = index;
61
- }
62
- return keyIndex;
63
- }
64
- function handleKey(event) {
65
- const nextScope = options.scopeKey?.();
66
- if (!Object.is(currentScope, nextScope)) reset();
67
- currentScope = nextScope;
68
- if (event.ctrlKey || event.metaKey || event.altKey || event.isComposing || [...event.key].length !== 1 || event.key === " " && !hasBuffer()) return false;
69
- event.preventDefault();
70
- buffer += event.key;
71
- scheduleReset();
72
- const normalizedBuffer = normalizeTypeaheadText(buffer);
73
- if (!normalizedBuffer) return true;
74
- const repeated = isRepeatedQuery(normalizedBuffer);
75
- const query = repeated ? [...normalizedBuffer][0] : normalizedBuffer;
76
- const items = options.items();
77
- const lastMatchIndex = getLastMatchIndex(items);
78
- const matchIndex = getMatchIndex(query, lastMatchIndex >= 0 ? lastMatchIndex : options.activeIndex(), !repeated && [...query].length > 1);
79
- if (matchIndex < 0) return true;
80
- const item = items[matchIndex];
81
- if (!item) return true;
82
- lastMatch = {
83
- item,
84
- index: matchIndex,
85
- key: options.getKey(item)
86
- };
87
- options.onMatch(item, matchIndex);
88
- return true;
89
- }
90
- onBeforeUnmount(clearTimer);
91
- return {
92
- handleKey,
93
- hasBuffer,
94
- reset
95
- };
96
- }
97
- //#endregion
98
- //#region src/internal/composables/collectionNavigation.ts
1
+ //#region src/utils/collectionNavigation.ts
99
2
  function getEnabledIndexes(items, isDisabled) {
100
3
  return items.map((item, index) => isDisabled(item) ? -1 : index).filter((index) => index >= 0);
101
4
  }
@@ -117,4 +20,4 @@ function getNextEnabledIndex(items, currentIndex, direction, isDisabled, loop =
117
20
  return direction === 1 ? enabledIndexes[0] : enabledIndexes[enabledIndexes.length - 1];
118
21
  }
119
22
  //#endregion
120
- export { getNextEnabledIndex as n, useTypeahead as r, getEnabledIndexes as t };
23
+ export { getNextEnabledIndex as n, getEnabledIndexes as t };
@@ -1,5 +1,5 @@
1
1
  @layer ropav.components {
2
- .rp-color-input[data-v-19e2ebe7] {
2
+ .rp-color-input[data-v-fe0168d1] {
3
3
  --_rp-color-input-height: var(--rp-size-control-md);
4
4
  --_rp-color-input-preview-size: calc(var(--_rp-color-input-height) / 2);
5
5
  --_rp-color-input-preview-inset: calc(
@@ -18,42 +18,42 @@
18
18
  font-family: var(--rp-font-family);
19
19
  vertical-align: middle;
20
20
  }
21
- .rp-color-input--size-xs[data-v-19e2ebe7] {
21
+ .rp-color-input--size-xs[data-v-fe0168d1] {
22
22
  --_rp-color-input-height: var(--rp-size-control-xs);
23
23
  }
24
- .rp-color-input--size-sm[data-v-19e2ebe7] {
24
+ .rp-color-input--size-sm[data-v-fe0168d1] {
25
25
  --_rp-color-input-height: var(--rp-size-control-sm);
26
26
  }
27
- .rp-color-input--size-md[data-v-19e2ebe7] {
27
+ .rp-color-input--size-md[data-v-fe0168d1] {
28
28
  --_rp-color-input-height: var(--rp-size-control-md);
29
29
  }
30
- .rp-color-input--size-lg[data-v-19e2ebe7] {
30
+ .rp-color-input--size-lg[data-v-fe0168d1] {
31
31
  --_rp-color-input-height: var(--rp-size-control-lg);
32
32
  }
33
- .rp-color-input--size-xl[data-v-19e2ebe7] {
33
+ .rp-color-input--size-xl[data-v-fe0168d1] {
34
34
  --_rp-color-input-height: var(--rp-size-control-xl);
35
35
  }
36
- html.dark .rp-color-input[data-v-19e2ebe7], [data-rp-color-scheme=dark] .rp-color-input[data-v-19e2ebe7] {
36
+ html.dark .rp-color-input[data-v-fe0168d1], [data-rp-color-scheme=dark] .rp-color-input[data-v-fe0168d1] {
37
37
  --_rp-color-input-empty-tile: var(--rp-color-dark-6);
38
38
  --_rp-color-input-empty-tile-alt: var(--rp-color-dark-4);
39
39
  }
40
- .rp-color-input[data-v-19e2ebe7] .rp-input {
40
+ .rp-color-input[data-v-fe0168d1] .rp-input {
41
41
  width: 100%;
42
42
  min-width: 180px;
43
43
  padding-inline-start: calc(var(--_rp-color-input-preview-inset) - var(--rp-border-width-thin));
44
44
  }
45
- .rp-color-input[data-v-19e2ebe7] .rp-popover__content {
45
+ .rp-color-input[data-v-fe0168d1] .rp-popover__content {
46
46
  min-width: auto;
47
47
  padding: var(--rp-spacing-3);
48
48
  padding-inline: calc(var(--_rp-color-input-preview-inset) - var(--rp-border-width-thin));
49
49
  }
50
- .rp-color-input[data-v-19e2ebe7] .rp-color-picker {
50
+ .rp-color-input[data-v-fe0168d1] .rp-color-picker {
51
51
  --_rp-color-picker-size: min(
52
52
  var(--_rp-color-picker-saturation-width),
53
53
  calc(100vw - var(--rp-spacing-12))
54
54
  );
55
55
  }
56
- .rp-color-input__preview[data-v-19e2ebe7] {
56
+ .rp-color-input__preview[data-v-fe0168d1] {
57
57
  --_rp-color-swatch-radius: 50%;
58
58
  width: var(--_rp-color-input-preview-size);
59
59
  height: var(--_rp-color-input-preview-size);
@@ -61,14 +61,14 @@ html.dark .rp-color-input[data-v-19e2ebe7], [data-rp-color-scheme=dark] .rp-colo
61
61
  border-radius: 50%;
62
62
  pointer-events: none;
63
63
  }
64
- .rp-color-input__preview--empty[data-v-19e2ebe7] {
64
+ .rp-color-input__preview--empty[data-v-fe0168d1] {
65
65
  box-sizing: border-box;
66
66
  display: inline-flex;
67
67
  background: var(--_rp-color-input-empty-grid);
68
68
  background-size: calc(var(--_rp-color-input-preview-size) / 2) calc(var(--_rp-color-input-preview-size) / 2);
69
69
  border: var(--rp-border-width-thin) dashed var(--rp-color-control-border);
70
70
  }
71
- .rp-color-input__eye-dropper[data-v-19e2ebe7] {
71
+ .rp-color-input__eye-dropper[data-v-fe0168d1] {
72
72
  padding: 0;
73
73
  font: inherit;
74
74
  background: none;
@@ -81,29 +81,29 @@ html.dark .rp-color-input[data-v-19e2ebe7], [data-rp-color-scheme=dark] .rp-colo
81
81
  color: var(--rp-color-control-icon);
82
82
  transition: color var(--rp-transition-fast), opacity var(--rp-transition-fast);
83
83
  }
84
- .rp-color-input__eye-dropper[data-v-19e2ebe7]:hover:not(:disabled) {
84
+ .rp-color-input__eye-dropper[data-v-fe0168d1]:hover:not(:disabled) {
85
85
  color: var(--rp-color-control-fg);
86
86
  }
87
- .rp-color-input__eye-dropper[data-v-19e2ebe7]:focus-visible {
87
+ .rp-color-input__eye-dropper[data-v-fe0168d1]:focus-visible {
88
88
  outline: var(--rp-border-width-medium) solid var(--rp-color-focus-ring);
89
89
  outline-offset: 2px;
90
90
  }
91
- .rp-color-input__eye-dropper[data-v-19e2ebe7]:disabled {
91
+ .rp-color-input__eye-dropper[data-v-fe0168d1]:disabled {
92
92
  cursor: not-allowed;
93
93
  opacity: var(--rp-opacity-disabled);
94
94
  }
95
- .rp-color-input__eye-dropper-icon[data-v-19e2ebe7] {
95
+ .rp-color-input__eye-dropper-icon[data-v-fe0168d1] {
96
96
  display: inline-flex;
97
97
  align-items: center;
98
98
  width: 1em;
99
99
  height: 1em;
100
100
  flex-shrink: 0;
101
101
  }
102
- .rp-color-input__eye-dropper-icon svg[data-v-19e2ebe7] {
102
+ .rp-color-input__eye-dropper-icon svg[data-v-fe0168d1] {
103
103
  width: 100%;
104
104
  height: 100%;
105
105
  }
106
- .rp-color-input__eye-dropper-icon[data-v-19e2ebe7] > svg {
106
+ .rp-color-input__eye-dropper-icon[data-v-fe0168d1] > svg {
107
107
  width: 100%;
108
108
  height: 100%;
109
109
  }
@@ -1,12 +1,15 @@
1
1
  import './color-input.css';
2
2
  import { t as useControllableValue } from "./useControllableValue.js";
3
- import { n as useStylesApi, t as presence } from "./styles-api.js";
3
+ import { t as useStylesApi } from "./styles-api.js";
4
+ import { n as toPresenceAttribute } from "./attributes.js";
4
5
  import { t as bem } from "./bem.js";
5
6
  import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper.js";
6
7
  import { a as useTextFormControl, n as provideNestedFormControlOwner } from "./useFormControl.js";
8
+ import { r as parseAriaIdRefs, t as hasAriaIdRef } from "./aria.js";
7
9
  import { t as useControlState } from "./useControlState.js";
8
10
  import { t as color_swatch_default } from "./color-swatch.js";
9
- import { n as formatColorPickerValue, r as parseColorPickerValue, t as color_picker_default } from "./color-picker.js";
11
+ import { i as parseColorPickerValue, r as formatColorPickerValue, t as color_picker_default } from "./color-picker.js";
12
+ import { i as isNodeWithinElement } from "./events.js";
10
13
  import { t as input_default } from "./input.js";
11
14
  import { t as popover_default } from "./popover.js";
12
15
  import { child, computed, createComponent, createIf, createSlot, createTemplateRefSetter, defineVaporComponent, extend, markRaw, nextTick, on, onMounted, ref, renderEffect, setDynamicProps, setInsertionState, shallowRef, template, unref, withModifiers } from "vue";
@@ -60,7 +63,7 @@ function onInputKeydown(event, popover) {
60
63
  if (event.key === "Escape") popover.triggerProps.onKeydown(event);
61
64
  }
62
65
  function focusPickerFromTrigger(trigger) {
63
- const contentId = trigger?.getAttribute("aria-controls")?.split(/\s+/).find(Boolean);
66
+ const contentId = parseAriaIdRefs(trigger?.getAttribute("aria-controls"))[0];
64
67
  const picker = contentId ? trigger?.ownerDocument.getElementById(contentId)?.querySelector(".rp-color-picker") : null;
65
68
  if (!picker) return;
66
69
  (Boolean(picker.querySelector(".rp-color-picker__saturation")) ? picker.querySelector("input:not(:disabled), button:not(:disabled), [tabindex=\"0\"]") : picker.querySelector("[role=\"radio\"][aria-checked=\"true\"]") ?? picker.querySelector("[role=\"radio\"][tabindex=\"0\"]"))?.focus({ preventScroll: true });
@@ -70,7 +73,7 @@ function onPickerKeydown(event, popover) {
70
73
  const pickerRoot = event.currentTarget;
71
74
  const content = pickerRoot instanceof Element ? pickerRoot.closest("[role=\"dialog\"]") : null;
72
75
  const contentId = content?.id;
73
- const focusTarget = contentId ? [...content.ownerDocument.querySelectorAll("[aria-controls]")].find((element) => element.getAttribute("aria-controls")?.split(/\s+/).includes(contentId)) : void 0;
76
+ const focusTarget = contentId ? [...content.ownerDocument.querySelectorAll("[aria-controls]")].find((element) => hasAriaIdRef(element.getAttribute("aria-controls"), contentId)) : void 0;
74
77
  event.stopPropagation();
75
78
  focusTarget?.focus({ preventScroll: true });
76
79
  popover.close();
@@ -109,9 +112,7 @@ function useColorInputPopover(getInputAttrs) {
109
112
  closePicker = slotProps.close;
110
113
  }
111
114
  function onFocusOut(event) {
112
- const root = event.currentTarget;
113
- const nextTarget = event.relatedTarget;
114
- if (root instanceof HTMLElement && nextTarget instanceof Node && root.contains(nextTarget)) return;
115
+ if (isNodeWithinElement(event.relatedTarget, event.currentTarget)) return;
115
116
  closePicker?.();
116
117
  }
117
118
  return {
@@ -183,8 +184,8 @@ function useColorInput(props, emit, getValue = () => props.modelValue ?? "") {
183
184
  }
184
185
  //#endregion
185
186
  //#region src/components/color-input/color-input.vue?vue&type=script&setup=true&vapor=true&lang.ts
186
- var t0 = template("<span data-v-19e2ebe7>");
187
- var t1 = template("<button data-v-19e2ebe7><span data-v-19e2ebe7 class=rp-color-input__eye-dropper-icon aria-hidden=true></button>");
187
+ var t0 = template("<span data-v-fe0168d1>");
188
+ var t1 = template("<button data-v-fe0168d1><span data-v-fe0168d1 class=rp-color-input__eye-dropper-icon aria-hidden=true></button>");
188
189
  //#endregion
189
190
  //#region src/components/color-input/color-input.vue
190
191
  var color_input_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
@@ -279,9 +280,9 @@ var color_input_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
279
280
  useTextFormControl(() => inputComponentRef.value?.nativeElement, controllable, () => effectiveValidationMessage.value);
280
281
  const { getPartAttrs, getRootAttrs } = useStylesApi(props, "root");
281
282
  const rootAttrs = computed(() => getRootAttrs({
282
- "data-disabled": presence(control.disabled),
283
- "data-readonly": presence(props.readonly),
284
- "data-invalid": presence(isInvalid.value),
283
+ "data-disabled": toPresenceAttribute(control.disabled),
284
+ "data-readonly": toPresenceAttribute(props.readonly),
285
+ "data-invalid": toPresenceAttribute(isInvalid.value),
285
286
  onFocusout: onFocusOut
286
287
  }));
287
288
  const popoverClassNames = computed(() => ({
@@ -417,7 +418,7 @@ var color_input_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__
417
418
  }
418
419
  }, true);
419
420
  }
420
- }), [["__scopeId", "data-v-19e2ebe7"]]);
421
+ }), [["__scopeId", "data-v-fe0168d1"]]);
421
422
  //#endregion
422
423
  //#region src/components/color-input/types.ts
423
424
  var colorInputParts = [
@@ -1,5 +1,5 @@
1
1
  @layer ropav.components {
2
- .rp-color-picker__saturation[data-v-22669f8e] {
2
+ .rp-color-picker__saturation[data-v-9c7fa05b] {
3
3
  position: relative;
4
4
  box-sizing: border-box;
5
5
  width: var(--_rp-color-picker-control-width);
@@ -10,13 +10,13 @@
10
10
  touch-action: none;
11
11
  cursor: crosshair;
12
12
  }
13
- .rp-color-picker__saturation[data-v-22669f8e]:focus-visible {
13
+ .rp-color-picker__saturation[data-v-9c7fa05b]:focus-visible {
14
14
  outline: none;
15
15
  }
16
- .rp-color-picker__saturation[data-readonly][data-v-22669f8e] {
16
+ .rp-color-picker__saturation[data-readonly][data-v-9c7fa05b] {
17
17
  cursor: default;
18
18
  }
19
- .rp-color-picker__axis-input[data-v-22669f8e] {
19
+ .rp-color-picker__axis-input[data-v-9c7fa05b] {
20
20
  position: absolute;
21
21
  width: 1px;
22
22
  height: 1px;
@@ -28,10 +28,10 @@
28
28
  border-width: 0;
29
29
  pointer-events: none;
30
30
  }
31
- .rp-color-picker__axis-input:focus-visible ~ .rp-color-picker__handle[data-v-22669f8e] {
31
+ .rp-color-picker__axis-input:focus-visible ~ .rp-color-picker__handle[data-v-9c7fa05b] {
32
32
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.6), 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
33
33
  }
34
- .rp-color-picker__surface[data-v-22669f8e] {
34
+ .rp-color-picker__surface[data-v-9c7fa05b] {
35
35
  position: absolute;
36
36
  inset: calc(-1 * var(--_rp-color-picker-thumb-radius));
37
37
  overflow: hidden;
@@ -39,7 +39,7 @@
39
39
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.3);
40
40
  background: linear-gradient(to top, #000 0 var(--_rp-color-picker-thumb-radius), rgba(0, 0, 0, 0) calc(100% - var(--_rp-color-picker-thumb-radius)) 100%), linear-gradient(to right, #fff 0 var(--_rp-color-picker-thumb-radius), rgba(255, 255, 255, 0) calc(100% - var(--_rp-color-picker-thumb-radius)) 100%), hsl(var(--_rp-color-picker-hue), 100%, 50%);
41
41
  }
42
- .rp-color-picker__handle[data-v-22669f8e] {
42
+ .rp-color-picker__handle[data-v-9c7fa05b] {
43
43
  position: absolute;
44
44
  top: var(--_rp-color-picker-saturation-y);
45
45
  left: var(--_rp-color-picker-saturation-x);
@@ -55,7 +55,7 @@
55
55
  transform: translate(-50%, -50%);
56
56
  }
57
57
  }@layer ropav.components {
58
- .rp-color-picker__hue[data-v-0299a505], .rp-color-picker__opacity[data-v-0299a505] {
58
+ .rp-color-picker__hue[data-v-3a0ac9e0], .rp-color-picker__opacity[data-v-3a0ac9e0] {
59
59
  position: relative;
60
60
  box-sizing: border-box;
61
61
  width: var(--_rp-color-picker-control-width);
@@ -65,22 +65,22 @@
65
65
  touch-action: none;
66
66
  cursor: pointer;
67
67
  }
68
- .rp-color-picker__hue[data-v-0299a505]:focus-visible, .rp-color-picker__opacity[data-v-0299a505]:focus-visible {
68
+ .rp-color-picker__hue[data-v-3a0ac9e0]:focus-visible, .rp-color-picker__opacity[data-v-3a0ac9e0]:focus-visible {
69
69
  outline: none;
70
70
  }
71
- .rp-color-picker__hue[data-readonly][data-v-0299a505], .rp-color-picker__opacity[data-readonly][data-v-0299a505] {
71
+ .rp-color-picker__hue[data-readonly][data-v-3a0ac9e0], .rp-color-picker__opacity[data-readonly][data-v-3a0ac9e0] {
72
72
  cursor: default;
73
73
  }
74
- .rp-color-picker__hue:focus-visible .rp-color-picker__slider-handle[data-v-0299a505], .rp-color-picker__opacity:focus-visible .rp-color-picker__slider-handle[data-v-0299a505] {
74
+ .rp-color-picker__hue:focus-visible .rp-color-picker__slider-handle[data-v-3a0ac9e0], .rp-color-picker__opacity:focus-visible .rp-color-picker__slider-handle[data-v-3a0ac9e0] {
75
75
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
76
76
  }
77
- .rp-color-picker__hue[data-v-0299a505] {
77
+ .rp-color-picker__hue[data-v-3a0ac9e0] {
78
78
  margin-block-start: var(--_rp-color-picker-saturation-slider-gap);
79
79
  }
80
- .rp-color-picker__opacity[data-v-0299a505] {
80
+ .rp-color-picker__opacity[data-v-3a0ac9e0] {
81
81
  margin-block-start: var(--_rp-color-picker-slider-gap);
82
82
  }
83
- .rp-color-picker__slider-surface[data-v-0299a505] {
83
+ .rp-color-picker__slider-surface[data-v-3a0ac9e0] {
84
84
  position: absolute;
85
85
  top: 50%;
86
86
  right: calc(-1 * var(--_rp-color-picker-thumb-radius));
@@ -91,20 +91,20 @@
91
91
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.3);
92
92
  transform: translateY(-50%);
93
93
  }
94
- .rp-color-picker__hue-surface[data-v-0299a505] {
94
+ .rp-color-picker__hue-surface[data-v-3a0ac9e0] {
95
95
  background: hsl(0, 100%, 50%);
96
96
  }
97
- .rp-color-picker__hue-surface[data-v-0299a505]::before {
97
+ .rp-color-picker__hue-surface[data-v-3a0ac9e0]::before {
98
98
  position: absolute;
99
99
  inset: 0 var(--_rp-color-picker-thumb-radius);
100
100
  content: "";
101
101
  background: linear-gradient(to right, hsl(0, 100%, 50%), hsl(60, 100%, 50%), hsl(120, 100%, 50%), hsl(180, 100%, 50%), hsl(240, 100%, 50%), hsl(300, 100%, 50%), hsl(0, 100%, 50%));
102
102
  }
103
- .rp-color-picker__opacity-surface[data-v-0299a505] {
103
+ .rp-color-picker__opacity-surface[data-v-3a0ac9e0] {
104
104
  background: linear-gradient(to right, rgba(255, 255, 255, 0), var(--_rp-color-picker-opacity-color)), var(--_rp-color-picker-checkerboard);
105
105
  background-size: auto, var(--_rp-color-picker-checkerboard-size);
106
106
  }
107
- .rp-color-picker__slider-handle[data-v-0299a505] {
107
+ .rp-color-picker__slider-handle[data-v-3a0ac9e0] {
108
108
  position: absolute;
109
109
  top: 50%;
110
110
  left: var(--_rp-color-picker-slider-x);
@@ -118,14 +118,14 @@
118
118
  pointer-events: none;
119
119
  transform: translate(-50%, -50%);
120
120
  }
121
- .rp-color-picker__hue-handle[data-v-0299a505] {
121
+ .rp-color-picker__hue-handle[data-v-3a0ac9e0] {
122
122
  background-color: hsl(var(--_rp-color-picker-hue), 100%, 50%);
123
123
  }
124
- .rp-color-picker__opacity-handle[data-v-0299a505] {
124
+ .rp-color-picker__opacity-handle[data-v-3a0ac9e0] {
125
125
  background-color: var(--_rp-color-picker-opacity-color);
126
126
  }
127
127
  }@layer ropav.components {
128
- .rp-color-picker[data-v-41c4ca07] {
128
+ .rp-color-picker[data-v-7fe38e4e] {
129
129
  --_rp-color-picker-saturation-width: 220px;
130
130
  --_rp-color-picker-saturation-height: 160px;
131
131
  --_rp-color-picker-hue-height: 14px;
@@ -168,14 +168,14 @@
168
168
  user-select: none;
169
169
  vertical-align: top;
170
170
  }
171
- html.dark .rp-color-picker[data-v-41c4ca07], [data-rp-color-scheme=dark] .rp-color-picker[data-v-41c4ca07] {
171
+ html.dark .rp-color-picker[data-v-7fe38e4e], [data-rp-color-scheme=dark] .rp-color-picker[data-v-7fe38e4e] {
172
172
  --_rp-color-picker-checkerboard-tile: var(--rp-color-dark-6);
173
173
  --_rp-color-picker-checkerboard-tile-alt: var(--rp-color-dark-4);
174
174
  }
175
- .rp-color-picker--readonly[data-v-41c4ca07] {
175
+ .rp-color-picker--readonly[data-v-7fe38e4e] {
176
176
  cursor: default;
177
177
  }
178
- .rp-color-picker--size-xs[data-v-41c4ca07] {
178
+ .rp-color-picker--size-xs[data-v-7fe38e4e] {
179
179
  --_rp-color-picker-saturation-width: 160px;
180
180
  --_rp-color-picker-saturation-height: 120px;
181
181
  --_rp-color-picker-hue-height: 10px;
@@ -188,7 +188,7 @@ html.dark .rp-color-picker[data-v-41c4ca07], [data-rp-color-scheme=dark] .rp-col
188
188
  --_rp-color-picker-thumb-size: 10px;
189
189
  --_rp-color-picker-font-size: var(--rp-font-size-xs);
190
190
  }
191
- .rp-color-picker--size-sm[data-v-41c4ca07] {
191
+ .rp-color-picker--size-sm[data-v-7fe38e4e] {
192
192
  --_rp-color-picker-saturation-width: 190px;
193
193
  --_rp-color-picker-saturation-height: 140px;
194
194
  --_rp-color-picker-hue-height: 12px;
@@ -201,7 +201,7 @@ html.dark .rp-color-picker[data-v-41c4ca07], [data-rp-color-scheme=dark] .rp-col
201
201
  --_rp-color-picker-thumb-size: 12px;
202
202
  --_rp-color-picker-font-size: var(--rp-font-size-sm);
203
203
  }
204
- .rp-color-picker--size-md[data-v-41c4ca07] {
204
+ .rp-color-picker--size-md[data-v-7fe38e4e] {
205
205
  --_rp-color-picker-saturation-width: 220px;
206
206
  --_rp-color-picker-saturation-height: 160px;
207
207
  --_rp-color-picker-hue-height: 14px;
@@ -214,7 +214,7 @@ html.dark .rp-color-picker[data-v-41c4ca07], [data-rp-color-scheme=dark] .rp-col
214
214
  --_rp-color-picker-thumb-size: 14px;
215
215
  --_rp-color-picker-font-size: var(--rp-font-size-md);
216
216
  }
217
- .rp-color-picker--size-lg[data-v-41c4ca07] {
217
+ .rp-color-picker--size-lg[data-v-7fe38e4e] {
218
218
  --_rp-color-picker-saturation-width: 260px;
219
219
  --_rp-color-picker-saturation-height: 190px;
220
220
  --_rp-color-picker-hue-height: 18px;
@@ -227,7 +227,7 @@ html.dark .rp-color-picker[data-v-41c4ca07], [data-rp-color-scheme=dark] .rp-col
227
227
  --_rp-color-picker-thumb-size: 18px;
228
228
  --_rp-color-picker-font-size: var(--rp-font-size-lg);
229
229
  }
230
- .rp-color-picker--size-xl[data-v-41c4ca07] {
230
+ .rp-color-picker--size-xl[data-v-7fe38e4e] {
231
231
  --_rp-color-picker-saturation-width: 300px;
232
232
  --_rp-color-picker-saturation-height: 220px;
233
233
  --_rp-color-picker-hue-height: 22px;
@@ -240,7 +240,7 @@ html.dark .rp-color-picker[data-v-41c4ca07], [data-rp-color-scheme=dark] .rp-col
240
240
  --_rp-color-picker-thumb-size: 22px;
241
241
  --_rp-color-picker-font-size: var(--rp-font-size-xl);
242
242
  }
243
- .rp-color-picker__label[data-v-41c4ca07] {
243
+ .rp-color-picker__label[data-v-7fe38e4e] {
244
244
  display: block;
245
245
  overflow: hidden;
246
246
  color: var(--rp-color-text);
@@ -248,24 +248,24 @@ html.dark .rp-color-picker[data-v-41c4ca07], [data-rp-color-scheme=dark] .rp-col
248
248
  text-overflow: ellipsis;
249
249
  white-space: nowrap;
250
250
  }
251
- .rp-color-picker__header[data-v-41c4ca07] {
251
+ .rp-color-picker__header[data-v-7fe38e4e] {
252
252
  margin-block-end: var(--_rp-color-picker-header-gap);
253
253
  }
254
- .rp-color-picker__swatches[data-v-41c4ca07] {
254
+ .rp-color-picker__swatches[data-v-7fe38e4e] {
255
255
  display: flex;
256
256
  flex-wrap: wrap;
257
257
  gap: var(--_rp-color-picker-swatches-gap);
258
258
  }
259
- .rp-color-picker__swatches[data-with-picker=true][data-v-41c4ca07] {
259
+ .rp-color-picker__swatches[data-with-picker=true][data-v-7fe38e4e] {
260
260
  margin-block-start: var(--_rp-color-picker-swatches-margin);
261
261
  }
262
- .rp-color-picker__swatches[data-fill=true][data-v-41c4ca07] {
262
+ .rp-color-picker__swatches[data-fill=true][data-v-7fe38e4e] {
263
263
  display: grid;
264
264
  grid-template-columns: repeat(var(--_rp-color-picker-swatches-per-row), minmax(var(--_rp-color-picker-target-min-size), 1fr));
265
265
  width: 100%;
266
266
  overflow-x: auto;
267
267
  }
268
- .rp-color-picker__swatch[data-v-41c4ca07] {
268
+ .rp-color-picker__swatch[data-v-7fe38e4e] {
269
269
  position: relative;
270
270
  box-sizing: border-box;
271
271
  display: inline-flex;
@@ -283,27 +283,27 @@ html.dark .rp-color-picker[data-v-41c4ca07], [data-rp-color-scheme=dark] .rp-col
283
283
  box-shadow: none;
284
284
  line-height: 0;
285
285
  }
286
- .rp-color-picker__swatch[data-v-41c4ca07]:focus-visible {
286
+ .rp-color-picker__swatch[data-v-7fe38e4e]:focus-visible {
287
287
  outline: none;
288
288
  border-color: var(--rp-color-control-border-focus);
289
289
  box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
290
290
  }
291
- .rp-color-picker__swatch[data-v-41c4ca07]:disabled {
291
+ .rp-color-picker__swatch[data-v-7fe38e4e]:disabled {
292
292
  opacity: var(--rp-opacity-disabled);
293
293
  cursor: not-allowed;
294
294
  cursor: default;
295
295
  }
296
- .rp-color-picker__swatch[data-v-41c4ca07] > .rp-color-swatch {
296
+ .rp-color-picker__swatch[data-v-7fe38e4e] > .rp-color-swatch {
297
297
  pointer-events: none;
298
298
  }
299
- .rp-color-picker__swatch-check[data-v-41c4ca07] {
299
+ .rp-color-picker__swatch-check[data-v-7fe38e4e] {
300
300
  stroke-width: 3;
301
301
  }
302
- .rp-color-picker__swatches[data-fill=true] .rp-color-picker__swatch[data-v-41c4ca07] {
302
+ .rp-color-picker__swatches[data-fill=true] .rp-color-picker__swatch[data-v-7fe38e4e] {
303
303
  width: 100%;
304
304
  aspect-ratio: 1;
305
305
  }
306
- .rp-color-picker__swatches[data-fill=true] .rp-color-picker__swatch[data-v-41c4ca07] > .rp-color-swatch {
306
+ .rp-color-picker__swatches[data-fill=true] .rp-color-picker__swatch[data-v-7fe38e4e] > .rp-color-swatch {
307
307
  width: 100%;
308
308
  height: 100%;
309
309
  }